Commit Graph

288 Commits

Author SHA1 Message Date
Ralf Wildenhues
a3be40ca46 * tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/f77demo/cprogram.c,
tests/mdemo2/main.c, tests/pdemo/foo.h: Make declarations available.
2005-04-27 14:15:29 +00:00
Ralf Wildenhues
b0a5dfec5f * tests/defs.m4sh (func_configure): Don't run the whole configure
script with -x.
2005-04-27 11:37:29 +00:00
Gary V. Vaughan
94cc58be06 The FSF are moving offices today. Changed their contact address
in all files from `59 Temple Place, Suite 330, MA 02111-1307' to
`51 Franklin Street, Fifth Floor, MA 02110-1301'.
2005-04-22 10:10:31 +00:00
Ralf Wildenhues
d62ad2b24d * tests/demo-hardcode.test: Fix typo. 2005-04-18 10:19:22 +00:00
Alexandre Oliva
0a89b38e7e Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh: Don't add files with the same base name to an
archive; rename duplicates instead.
(func_extract_an_archive): Remove section to deal with duplicate
base names in an archive.
* tests/functests.at: remove.
* tests/duplicate_members.at: new test.
* tests/testsuite.at: Add new test, remove old.
* Makefile.am: Add new test, remove old.
2005-04-17 14:30:34 +00:00
Ralf Wildenhues
78499bdc92 * tests/demo-hardcode.test [solaris]: Use dumpstabs if available,
to avoid false failure caused by debug section which contains
command line (Solaris cc).
2005-04-17 07:58:12 +00:00
Alexandre Oliva
31327f332d * config/ltmain.m4sh (link mode): Add to tmp_libs paths for libtool dep
libs in reverse order as well.
* Makefile.am, tests/testsuite.at, tests/link-order.at: New test.
2005-04-14 11:59:10 +00:00
Gary V. Vaughan
6c1e70c04a Since the bootstrap process requires that several of the rules for
files generated in doc and tests already lived in
$top_srcdir/Makefile.am, along with proxy rules in sub-Makefiles,
this changeset consolidates almost everything into the top
Makefile.am, simplifying things considerably:

* doc/Makefile.am, tests/Makefile.am: Removed.  All rules moved...
* Makefile.am: ...to here and adjusted to run from $top_builddir.
Some reformatting to group rules and declarations by purpose, and
simplify with respect to removing much of the make recursion.
Add `doc/PLATFORMS', `doc/fdl.texi' and `doc/notes.texi'.
`defs.in' and `defs.m4sh' are in directory `tests'.
(uninstall-hook): Don't forget to uninstall libtoolize's libltdl
source tree.
* bootstrap: Simplified dirty makefile management, and bootstrap
file creation in light of having only a single pertinent
Makefile.
* configure.ac (CONF_SUBDIRS): Add tests/ prefix to each subdir to
compensate.
(DIST_MAKEFILE_LIST): Adjust.
(AC_CONFIG_FILES): Remove doc/Makefile and tests/Makefile.
* tests/defs.m4sh (LIBTOOL, scripts): Adjust paths.
* tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/cdemo-undef.test,
tests/demo-conf.test, tests/demo-deplibs.test,
tests/demo-exec.test, tests/demo-hardcode.test,
tests/demo-inst.test, tests/demo-make.test,
tests/demo-nofast.test, tests/demo-noinst-link.test,
tests/demo-nopic.test, tests/demo-pic.test,
tests/demo-relink.test, tests/demo-shared.test,
tests/demo-static.test, tests/demo-unst.test,
tests/depdemo-conf.test, tests/depdemo-exec.test,
tests/depdemo-inst.test, tests/depdemo-make.test,
tests/depdemo-nofast.test, tests/depdemo-relink.test,
tests/depdemo-shared.test, tests/depdemo-static.test,
tests/depdemo-unst.test, tests/f77demo-conf.test,
tests/f77demo-exec.test, tests/f77demo-make.test,
tests/f77demo-shared.test, tests/f77demo-static.test,
tests/link-2.test, tests/link.test, tests/mdemo-conf.test,
tests/mdemo-dryrun.test, tests/mdemo-exec.test,
tests/mdemo-inst.test, tests/mdemo-make.test,
tests/mdemo-shared.test, tests/mdemo-static.test,
tests/mdemo-unst.test, tests/mdemo2-conf.test,
tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
tests/objectlist.test, tests/pdemo-conf.test,
tests/pdemo-exec.test, tests/pdemo-inst.test,
tests/pdemo-make.test, tests/quote.test, tests/sh.test,
tests/suffix.test, tests/tagdemo-conf.test,
tests/tagdemo-exec.test, tests/tagdemo-make.test,
tests/tagdemo-shared.test, tests/tagdemo-static.test,
tests/tagdemo-undef.test, tests/tagtrace.test (func_cd,
func_require): Adjust paths..
2005-04-13 12:24:35 +00:00
Ralf Wildenhues
5fbecdee16 * config/general.m4sh, libtool.m4 (_LT_SETUP), tests/defs.m4sh,
tests/functests.at: Fix definition of $Xsed.
2005-04-12 17:28:48 +00:00
Ralf Wildenhues
8b6f5a929f * tests/testsuite.at (LT_AT_BOOTSTRAP): Temporary fix for testing
in-tree libtoolize.
2005-04-07 06:37:23 +00:00
Ralf Wildenhues
744d7ce726 * tests/Makefile.am: Typo. 2005-04-05 06:52:08 +00:00
Gary V. Vaughan
88e2d82a72 * tests/libtoolize.at: New tests for basic libtoolize functionality
and reporting.
* tests/testsuite.at: Call them.
* tests/Makefile.am: Distribute them.
2005-04-04 17:24:40 +00:00
Gary V. Vaughan
f391861a20 * libtoolize.m4sh (pkgvdatadir): Renamed from this...
(_lt_pkgvdatadir): ...to this.
* tests/testsuite.at (LT_AT_LIBTOOLIZE): The `-I' option is no
longer supported by libtoolize.  Set _lt_pkgvdatadir in the
environment of the invocation instead.
2005-04-04 17:16:48 +00:00
Ralf Wildenhues
1c205030b4 * tests/template.at: New Autotest tests for C++ with templates.
First test provided by Markus Christen <markus@igc.phys.chem.ethz.ch>.
* tests/Makefile.am, tests/testsuite.at: Use and distribute.
2005-04-04 17:09:29 +00:00
Ralf Wildenhues
2803fc9eeb * m4/libtool.m4 (_LT_SETUP, _LT_LANG_CXX_CONFIG, * _LT_LANG_F77_CONFIG):
For matching compiler names: Pick only first word, allow leading white
space..
* tests/sh.test: ..and test for missing `*' at end of patterns.
2005-03-21 17:59:39 +00:00
Ralf Wildenhues
327c658555 Update .cvsignore files. 2005-03-19 20:09:36 +00:00
Ralf Wildenhues
5e8b6a4246 * tests/demo-nopic.test: Enhance status output
noted by Tom Burger <tvburger@few.vu.nl>.
2005-03-19 19:53:49 +00:00
Ralf Wildenhues
bc01d9dafa * config/ltmain.m4sh, tests/defs.m4sh: Typos. 2005-03-18 15:57:17 +00:00
Ralf Wildenhues
7eb2c6a5d4 * tests/Makefile (clean-local): Ignore testsuite cleanup
failures.
2005-03-11 13:31:44 +00:00
Per Bothner
2b78876d4c * tests/Makefile (clean-local): Only run the testsuite cleanup
if the testsuite has been generated.
2005-03-11 11:39:28 +00:00
Ralf Wildenhues
56fc6cee39 * tests/stresstest.at: Remove multiple variable definition. 2005-03-08 13:44:32 +00:00
Peter O'Gorman
6408a706d7 * config/ltmain.m4sh (func_extract_archives) [darwin]: This didn't
actually work on a real fat archive, should do now.
* tests/functests.at [darwin]: remove darwin fat tests which
did not actually work.
2005-02-21 13:47:45 +00:00
Ralf Wildenhues
aa991e9203 * tests/Makefile.am, tests/testsuite.at, tests/stresstest.at:
New test.  Stresses several combinations of link flags and
path specifications.  Uses several data types to test linkage
against symbols in all kinds of (e.g., ELF) sections.
2005-02-04 14:51:53 +00:00
Ralf Wildenhues
e2495da66f * tests/sh.test: Check for preferred function definition layout. 2005-02-02 12:16:45 +00:00
Ralf Wildenhues
fcfc76bd7c * tests/Makefile.am: Add `atconfig' to DISTCLEANFILES. 2005-02-01 15:09:46 +00:00
Ralf Wildenhues
62fae08f57 * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unicos 9 sed rejects
empty parentheses as in 's/x()/1/'.
(_LT_COMPILER_PIC) [unicos*]: wl=-Wl,.
* tests/sh.test: Not all sed's like '/.*n.*/' (Unicos 9 sed
loops endlessly).
2005-01-31 17:30:47 +00:00
Ralf Wildenhues
c9d4e5ec5c * tests/quote.test: Match link quoting against "$wl"', not -Wl,'. 2005-01-31 17:25:22 +00:00
Ralf Wildenhues
50170fa221 * tests/quote.test: Check for `--no-reexec' in $1 to avoid one reexec. 2005-01-31 17:20:47 +00:00
Ralf Wildenhues
f32fdcf4d4 * tests/Makefile.am: also re-export CPP, CXXCPP, and the value of
SHELL as CONFIG_SHELL.
Reported by Heinz Salzmann <heinz.salzmann@micronas.com>.
2005-01-26 17:52:59 +00:00
Ralf Wildenhues
9b193517d1 * tests/defs.m4sh: Extract $build from $LIBTOOL.
(func_configure): Pass --host if $host != $build.
(func_exec): Try executing cross-compiled binaries (e.g. i686 -> i386),
but SKIP rather than FAIL.
* tests/depdemo-relink.test: Do not try to access possibly non-
existent files.  SKIP rather than FAIL or PASS falsely when
cross-compiling.
2005-01-24 07:45:35 +00:00
Peter O'Gorman
92ee209330 * config/ltmain.m4sh (func_mode_link): Fix
inherited_linker_flags so it puts it on the link line when
linking shared libraries as well as when linking executables.
* tests/inherited_flags.at: test inherited_linker_flags.
* tests/Makefile.am: Add test.
* tests/testsuite.at: Add test.
Reported by: Albert Chin-A-Young <china@thewrittenword.com>
2005-01-10 15:44:13 +00:00
Ralf Wildenhues
cb791887dc * tests/sh.test: After set dummy [...]', check for shift'
within the same and following line.
* config/ltmain.m4sh (func_enable_tag, func_mode_install)
(func_mode_link): Sprinkle `shift's all over to conform to this.
2005-01-10 10:59:37 +00:00
Ralf Wildenhues
6d51635bd8 * tests/am-subdir.at tests/testsuite.at (AT_BOOTSTRAP,
AT_LIBTOOLIZE, AT_CHECK_LIBTOOLIZE) Rename to ..
(LT_AT_BOOTSTRAP, LT_AT_LIBTOOLIZE, LT_AT_CHECK_LIBTOOLIZE)
and make use of new names.
2005-01-03 14:06:12 +00:00
Ralf Wildenhues
52ba41bdad * Makefile.am, bootstrap, clcommit.m4sh, libtoolize.m4sh,
config/ltmain.m4sh: Replace `set --' with `set dummy [...]; shift'
for portability.  tests/sh.test: Test for this.
2004-12-28 13:50:23 +00:00
Ralf Wildenhues
6f8f4b5a86 * libtoolize.m4sh, config/ltmain.m4sh (most functions):
New variable $opt_debug is either `:' or `set -x' depending on --debug.
Execute at most function entries to cater for ksh which resets `-x'.
* tests/defs.m4sh: Ditto for VERBOSE=debug.
2004-12-28 13:31:12 +00:00
Ralf Wildenhues
eb276ec7c7 * tests/quote.test: Restart under the correct shell (the one
$ECHO was computed for).
2004-12-28 10:28:21 +00:00
Peter O'Gorman
fc9914a1d1 * config/ltmain.m4sh (func_extract_archives,func_extract_an_archive):
On darwin, uniq can not take the flags -cd together, thanks to Ralf
for the fix, also ar does not accept N, so we use the fact that
ar x libfoo.a foo.o will always extract the first foo.o in the
archive and we then delete foo.o from the archive, which will also
delete only the first foo.o, then rinse and repeat. Also add markers
for the testuite.
* m4/libtool.m4 (_LT_CONFIG): Add a marker so that we can use a sed
expression to find the shell functions in libtool.
* tests/functests.at: Test this feature.
* tests/testsuite.at: Add the test.
* tests/Makefile.am: Add the test.
2004-12-20 15:03:39 +00:00
Ralf Wildenhues
67207187c7 * tests/demo-nopic.test [solaris, sunos]: Skip test. 2004-12-20 07:59:58 +00:00
Gary V. Vaughan
32f1e626b8 Add a search path option to libtoolize so that we can run it from
the testsuite without pulling in the last installed macros and
ltdl sources:

* libtoolize.m4sh:  Add a -I option to change libtoolize's search
path for macro files, and libltdl master sources.
(pkgvdatadir, pkgvmacrodir): Renamed...
(pkgvdatadirs, pkgvmacrodirs): ...as they can now contain a ':'
delimited list of directories.  Adjust all callers.
(func_copy_all_from_path): New function to search a ':' delimited
search path for a directory to copy.
(func_serial_update, func_ltmain_update, func_config_update): New
first parameter is a filename to search for.  srcdir parameter can
now be a ':' delimited search path.  Adjust all callers.
(func_copy_some_files): Ditto.
Put srcfile_spec first in parameter list for consistency with
other functions.  Adjust all callers.
(func_copy_cb): func_copy adapter function to call func_copy
correctly from func_copy_some_files.
(func_filename_path_search): Return the full path to the first
occurence of a named file found in a list of directories.
* tests/testsuite.at (LIBTOOLIZE): Wrap exported LIBTOOLIZE
initialisation in PREPARE_TESTS diversion to stop it being
discarded when testsuite is generated.
(AT_LIBTOOLIZE): Factor out libtoolize calls,
and set search path to find macros and libltdl source files from
the source tree.
(AT_CHECK_LIBTOOLIZE): Test it.
(AT_BOOTSTRAP): Adjust.  Split out call to make.
* tests/am-subdir.at: Call make explicitly.
(Makefile.am): Fix typo in ACLOCAL_AMFLAGS,
2004-11-29 13:50:54 +00:00
Ralf Wildenhues
2400d0ba16 * tests/demo-relink.test, tests/depdemo-relink.test: SKIP, don't
FAIL if no shared libs available in demo/.  Do not try to access
nonexistent files.
2004-11-28 19:48:15 +00:00
Gary V. Vaughan
bce1e676de * Makefile.am: Move Autotest rules from here...
* tests/Makefile.am: ...to here.
* bootstrap: Adjust.  Also, create temporary Makefile from
tests/Makefile.am so that bootstrap can create the Autotest
testsuite.
2004-11-24 14:55:55 +00:00
Gary V. Vaughan
28f3a396d6 If the user's login shell is something crazy like, oooh,
/bin/tcsh, trying to execute bourne shell helper scripts with
the `$SHELL /path/to/helper $helper_flags' idiom incase the
execute bits were lost by say, eeer, cvs, is gonna blow up in
our faces.  This changeset tries to save these people from
their shells^H^H^H^H^H^H^H^H^Hmselves :->

* tests/defs.m4sh (SHELL): Move definition from here...
* config/general.m4sh (SHELL): ...to here.
2004-11-24 14:04:15 +00:00
Ralf Wildenhues
e2984dc45e * m4/libtool.m4, tests/demo-nopic.test: Undo bogus commit. 2004-11-22 15:48:32 +00:00
Ralf Wildenhues
3e437f3043 * config/ltmain.m4sh (func_mode_link), tests/objectlist.test:
Make sure the argument to `-objectlist' may contain spaces.
2004-11-22 15:43:44 +00:00
James E Wilson
95b4514791 * config/ltmain.m4sh (func_mode_link), tests/Makefile.am,
Fix error message with `-objectlist' file that does not exist.
tests/objectlist.test:  New test for this.
2004-11-10 10:14:12 +00:00
Ralf Wildenhues
8024c55497 * tests/defs.m4sh (func_exec): `shift'ing when there is nothing
to shift is non-portable.
2004-11-01 11:09:41 +00:00
Gary V. Vaughan
17e61a7564 * config/ltmain.m4sh (opt_silent): Whether --silent was given.
(run, show): Deleted.  All callers converted to opt_dry_run,
opt_silent or calls to func_show_eval.
* tests/mdemo-dryrun.test: Adjust.
2004-10-24 15:17:23 +00:00
Gary V. Vaughan
fd13e4f5ca Add some new tests for Libtool's support of Automake
subdir-objects builds.  This marks the beginning of a move to an
Autotest driven test framework, which will eventually allow us to
trim away many of the generated files in the current test demo
subdirectories:

* configure.ac (AC_CONFIG_TESTDIR): Re-enable commented out
Autotest macros.
(AUTOTEST, M4SH): Use --language long hand.
* bootstrap: Generate tests/testsuite, and by implication
tests/package.m4.
* Makefile.am (edit): Add substitutions needed to generate
tests/package.m4 from bootstrap.
(check-recursive): Add tests/testsuite.
(TESTSUITE): The new Autotest testsuite target.
(TESTSUITE_AT): The Autotest sources.
(EXTRA_DIST): Distribute the generated testsuite and sources.
(tests/package.m4): Use $(edit) to propagate package metadata to
the new tests.
(tests/testsuite): Build the testsuite.
(tests/atconfig): How to regenerate the file.
(check-local): Hook Autotest into `make check'.
(installcheck-local): Run the testsuite on the installed tree.
(clean-local): Tidy our file droppings.
* tests/Makefile.am: Remove bitrotted code from Autotest
experiments in Autoconf 2.52 era.  Updated the rest and moved into
Makefile.am.
* tests/testsuite.at: New container for Autotest test groups.
* tests/am-subdir.at: New test group for compatibility with
Automake's subdir-objects builds.  Currently holds two tests, one
for a C project and another similar project in C++.
* TODO: Add an entry to remind us that these new tests expose a
bug in libtool.
* NEWS: Updated.
2004-10-16 14:43:48 +00:00
Gary V. Vaughan
0af561f564 * tests/cdemo-undef.test: New test for hosts that allow shared
libraries with undefined symbols, but have no C++ compiler
installed.
* tests/Makefile.am (COMMON_TESTS): Add it.
2004-10-13 16:01:01 +00:00
Gary V. Vaughan
2a68cdb140 * tests/tagdemo-undef.test: New test for hosts that allow shared
libraries with undefined symbols.
* tests/Makefile.am (CXX_TESTS): Add it.
2004-10-13 07:15:02 +00:00
Charles Wilson
8a28ed97bf * tests/link.test: Fix check for use of libnlsut.a under
Cygwin.


* tests/quote.test: Do not look for $preargs in the output,
because libtool may change them.
2004-10-11 15:15:00 +00:00
Bob Friesenhahn
cf835b450f * tests/pdemo-inst.test: Correction for mis-application of
Charles Wilson's earlier patch.
2004-10-10 15:18:24 +00:00
Charles Wilson
56295ae2e9 * tests/pdemo-inst.test: pdemo-inst should depend on pdemo-make.
* config/ltmain.m4sh: Windows and Cygwin reserve the .lnk
extension to represent shortcuts.  Use the extension ".lnkscript"
rather than ".lnk" for the piecewise linking ld script in order to
avoid the conflict.
2004-10-08 16:16:10 +00:00
Ralf Wildenhues
bce1dbff48 * tests/sh.test: Remove tests which fail on AS_SHELL_SANITIZE
from autoconf >= 2.59.
2004-10-07 13:01:36 +00:00
Gary V. Vaughan
1152908b90 * tests/defs.m4sh (scripts): Actually scan the generated ltmain.sh
for shell portability problems.
2004-10-07 03:07:13 +00:00
Gary V. Vaughan
e5d70992b8 * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Don't confuse $ECHO
with $lt_ECHO, or we always get a libtool with ECHO=echo, rather
than testing for a mechanism that quotes  properly.
* NEWS: Updated.

* config/ltmain.m4sh: Need to include getopt.m4sh earlier so that
progpath is set before it is called to --no-reexec.
* NEWS: Updated.

Without this change, the distributed libtool tarball has a
dependency on autom4te.  There was some inconsistency in the
filenames: now we have foo.m4sh -> m4sh -> foo.in -> configure
-> foo[.sh].  Bootstrap runs the m4sh steps and the resulting .in
files are distributed:

* tests/Makefile.am (EXTRA_DIST): Distribute defs.m4sh.
* Makefile.am (EXTRA_DIST): Distribute libtoolize.m4sh.
(libtoolize.in, libtoolize): Split into bootstrap and runtime
stages.
($(top_srcdir)/tests/defs.in, $(top_srcdir)/tests/defs): Ditto.
($(top_srcdir)/config/ltmain.sh): Swap ltmain.m4sh and ltmain.in
names.
* bootstrap: Make libtoolize.in and tests/defs.in.
* NEWS: Updated.
2004-10-04 18:32:45 +00:00
Bob Friesenhahn
623d66623e * config/ltmain.in: Change $XSED to $Xsed to fix hang noticed
under MinGW.
* tests/defs.in: Support VERBOSE=debug to enable shell tracing
while running tests.
2004-10-03 20:47:05 +00:00
Gary V. Vaughan
ff1cda1ec4 * tests/quote.test: echo is called ECHO now. Make sure we extract
the value of ECHO from the libtool script.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2004-10-03 11:20:53 +00:00
Gary V. Vaughan
fc4e513ee0 * config/general.m4sh (Xsed): Set a default when not used from
ltmain.in.
(ECHO): Audit for (and correct!) uses of $ECHO with more than one
argument, which breaks when ECHO='printf %sn', and with possible
`-' as first character of the argument, which breaks `print -r'
and some implementations of `echo'.
* config/ltmain.in, tests/defs.in, libtoolize.in (ECHO): Ditto.
Reported by Albert Chin-A-Young <china@thewrittenword.com>
2004-09-24 16:08:33 +00:00
Gary V. Vaughan
cd11b6995f * tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/demo-conf.test,
tests/demo-deplibs.test, tests/demo-exec.test,
tests/demo-hardcode.test, tests/demo-inst.test,
tests/demo-make.test, tests/demo-nofast.test,
tests/demo-noinst-link.test, tests/demo-nopic.test,
tests/demo-pic.test, tests/demo-relink.test,
tests/demo-shared.test, tests/demo-static.test,
tests/demo-unst.test, tests/depdemo-conf.test,
tests/depdemo-exec.test, tests/depdemo-inst.test,
tests/depdemo-make.test, tests/depdemo-nofast.test,
tests/depdemo-relink.test, tests/depdemo-shared.test,
tests/depdemo-static.test, tests/depdemo-unst.test,
tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared.test,
tests/f77demo-static.test, tests/link-2.test, tests/link.test,
tests/mdemo-conf.test, tests/mdemo-dryrun.test,
tests/mdemo-exec.test, tests/mdemo-inst.test,
tests/mdemo-make.test, tests/mdemo-shared.test,
tests/mdemo-static.test, tests/mdemo-unst.test,
tests/mdemo2-conf.test, tests/mdemo2-exec.test,
tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
tests/pdemo-exec.test, tests/pdemo-inst.test,
tests/pdemo-make.test, tests/quote.test, tests/sh.test,
tests/suffix.test, tests/tagdemo-conf.test,
tests/tagdemo-exec.test, tests/tagdemo-make.test,
tests/tagdemo-shared.test, tests/tagdemo-static.test,
tests/tagtrace.test: POSIX `.' searches only in user's $PATH, so
we must use `. ./defs' to source the common code.
Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
2004-09-23 14:50:36 +00:00
Gary V. Vaughan
e9b2b3f264 Since defs can change (path to grep for example) when it is made
for a different host, it can't be shipped.  That also means that
defs will always be generated in the build tree, so each test case
can have the srcdir discovery factored away into tests/defs.in:

* Makefile.am (EXTRA_DIST): s/defs/defs.in/g
* tests/Makefile.am (defs): New rule to remake defs from the
parent directory's Makefile.
* tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/demo-conf.test,
tests/demo-deplibs.test, tests/demo-exec.test,
tests/demo-hardcode.test, tests/demo-inst.test,
tests/demo-make.test, tests/demo-nofast.test,
tests/demo-noinst-link.test, tests/demo-nopic.test,
tests/demo-pic.test, tests/demo-relink.test,
tests/demo-shared.test, tests/demo-static.test,
tests/demo-unst.test, tests/depdemo-conf.test,
tests/depdemo-exec.test, tests/depdemo-inst.test,
tests/depdemo-make.test, tests/depdemo-nofast.test,
tests/depdemo-relink.test, tests/depdemo-shared.test,
tests/depdemo-static.test, tests/depdemo-unst.test,
tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared.test,
tests/f77demo-static.test, tests/link-2.test, tests/link.test,
tests/mdemo-conf.test, tests/mdemo-dryrun.test,
tests/mdemo-exec.test, tests/mdemo-inst.test,
tests/mdemo-make.test, tests/mdemo-shared.test,
tests/mdemo-static.test, tests/mdemo-unst.test,
tests/mdemo2-conf.test, tests/mdemo2-exec.test,
tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
tests/pdemo-exec.test, tests/pdemo-inst.test,
tests/pdemo-make.test, tests/quote.test, tests/sh.test,
tests/suffix.test, tests/tagdemo-conf.test,
tests/tagdemo-exec.test, tests/tagdemo-make.test,
tests/tagdemo-shared.test, tests/tagdemo-static.test,
tests/tagtrace.test: Removed srcdir discovery boilerplate...
* tests/defs.in: ...and put it here.
2004-09-23 13:07:15 +00:00
Gary V. Vaughan
bfce27f524 * configure.ac (M4SH): AC_SUBST m4sh expander.
* config/general.m4sh, config/getopt.m4sh: New files with factored
out functionality from...
* config/ltmain.in, libtoolize.in: ...here.  m4_include the shared
code, and call AS_SHELL_SANITIZE.  Also quote all `[' and `]' to
survive m4 run.
(func_serial): No need to double up m4sh quotes after a `#'.
(func_check_macros): Escape `dnl' to stop m4sh interpreting it as
a macro.
* tests/defs.in: New file expanded into tests/defs by autom4te.
* m4/libtool.m4 (_LT_DECL_EGREP): Also require fgrep for the tests
that use it.
* Makefile.am ($(top_srcdir)/config/ltmain.sh): Now built with
M4SH.
(libtoolize): Ditto.
* bootstrap: Set M4SH for call to make.
* HACKING: No need to sync to AS_SHELL_SANITIZE by hand any more.
2004-09-23 01:16:41 +00:00
Gary V. Vaughan
a453acdc32 * m4/libtool.m4: _LT_DECL uppercase ECHO.
* config/ltmain.in: Use it throughout.
(func_mkdir_p): Now matches the other implementations in
tests/defs and libtoolize.in.
* tests/sh.test: Updated to detect ECHO misuse.
2004-09-23 00:13:02 +00:00
Gary V. Vaughan
97e1a8755a The checks in assign.test are trying to catch case of this ilk:
`foo=bar break', but unfortunately they also choke on `foo=bar;
break' and `foo=bar && break'.  Writing a sophisticated test to
catch just the intended case seems like more trouble than it's
worth, but leaving the test in causes the testsuite to fail on
valid m4sh output:

* tests/assign.test: Removed; chokes on perfectly valid shell
syntax.
* tests/Makefile.am (COMMON_TESTS): Remove assign.test.
* tests/defs.in (scripts): Don't check the m4sh inputs, go back
to checking the generated ltmain.sh script.
2004-09-19 23:21:45 +00:00
Gary V. Vaughan
4bf4433f70 Missed a couple of MKDIR_P references in ltmain.in in my last
patch; fix them carefully.  Introduce an opt_dry_run to ltmain.in
so that the implementations of func_mkdir_p can converge, and a
func_mktempdir to do a better job of temporary directory creation:

* libtoolize.in (func_mkdir_p): Don't fail if the directory wasn't
created in dry run mode.
* tests/defs (func_mkdir_p): Ditto.  We don't actually have a dry
run mode for the tests, but the function is written carefully to
be kept in synch and work correctly here too.
* config/ltmain.in (func_mkdir_p): Ditto.  This copy of the
function now only differs in its use of $echo over $ECHO.
(func_extract_archive): Removed first redundant mkdir call.
(func_mktempdir): New function that tries to avoid races when
making temporary directories.
(opt_dry_run): Set this if --dry-run is given at the CLI, or if
tests/mdemo-dryrun.test has forced the value of $run.
(func_mode_install): Call $MKDIR directly and error out if the
directory cannot be created.
(func_mode_link): Rather than copying func_mkdir_p into the
wrapper script as a replacement for $MKDIR_P, we know that the
script won't be called my `make -j', so write the current value of
$MKDIR.
2004-09-17 14:13:04 +00:00
Gary V. Vaughan
0e0104aa45 My most recent `2004-09-02 Gary V. Vaughan' patch for mkdir_p
below is horrendously broken since it makes the installed libtool
try to run the mkinstalldirs or install-sh helper scripts.  This
patch fixes the `make -j' mkdir race condition internally:

* libtoolize.in (func_mkdir_p): New slice and dice algorithm
to build the directory tree one dir at a time, ignoring errors
until the end incase they are transient due to a concurrent
identical mkdir.
* tests/defs (func_mkdir_p): Ditto.
* config/ltmain.in (func_mkdir_p): Ditto, except that ltmain.in
uses $echo rather than $ECHO, and uses $show and $run to interact
correctly with the command line.
* configure.ac (AM_INIT_AUTOMAKE): 1.8 is sufficient again.
* Makefile.am (edit): Don't substitute automake's $(mkdir_p).
* NEWS: Updated.
2004-09-16 14:57:02 +00:00
Ralf Wildenhues
7dd218b183 * tests/Makefile.am: Use the same CPP, F77, CXX and CXXFLAGS
for the test suite.
2004-09-15 13:04:24 +00:00
Peter O'Gorman
f0cb3767cf Our fortran tests were not very good. All the libraries created
were convenience libs, so we did not test the creation of shared
libraries on any platform. Also none of the libs used any actual
fortran library calls, adding a call to write(*,*) in each lib
causes the tests to fail on darwin (and presumably other platforms).
These new tests would likely cause many more fortran test failures,
so if there is an error during make it is reported as SKIP.

* tests/f77demo-make.test: Don't fail hard, skip on failure.
* tests/f77demo/foof2.f: New file.
* tests/f77demo/foof3.f: New file.
* tests/f77demo/fprogram.f: Call routine in new lib.
* tests/f77demo/foof.f: Call routine in another new lib.
* tests/f77demo/Makefile.am: Make a couple of new libraries, add
$(FLIBS) to cprogram LDADD.
2004-09-12 13:36:17 +00:00
Gary V. Vaughan
ba6daa7408 Builds of packages that use libtool and make -j produce "directory
already exists warnings" for .lib directory.  Build on automake
wisdom to support make -j builds where a suitable mkdir is
available:

* configure.ac (AM_INIT_AUTOMAKE): Require 1.9, which goes to some
trouble to find a $(mkdir_p) that doesn't interfere with make -j.
* Makefile.am (edit): Substitute for @mkdir_p@.
* config/ltmain.in (MKDIR_P): Take @mkdir_p@ value.
(mkdir): Removed.
(func_mkdir_p): New function to use $MKDIR_P.  Factor out all
previous mkdir calls to use this function.
(RM, MV): Declared as in libtoolize.in.  Changed all callers.
* libtoolize.in (MKDIR_P): Take @mkdir_p@ value from automake.
(func_mkdir_p): Use it, similarly to new config/ltmain.in.
* tests/defs: Synchronize boiler plate code with ltmain.in.
Adjust all callers.
Add missing copyright preamble.
* tests/demo-static.test: Add missing copyright preamble.
Reported by Daniel Reed <n@ml.org>
2004-09-03 00:26:37 +00:00
Gary V. Vaughan
2d9235e58c * libtoolize.in, config/ltmain.in: Add CDPATH protection to
preamble.
* tests/defs: Put a full m4sh.m4 style 'Be Bourne compatible'
preamble in here too.
* HACKING: Note that tests/defs needs synching with m4sh.m4 too.
* TODO: Add new item.
2004-09-01 09:48:25 +00:00
Ralf Wildenhues
6693e743d9 * tests/sh.test: Look in the source tree for ltmain.sh. 2004-09-01 01:33:04 +00:00
Gary V. Vaughan
388b7626dc The Grand Renaming. In preparation for libtool-2.0, move all of
the many and varied m4 symbols accumulated by libtool over the
years, considering also that modern autoconf can detect unexpanded
macros even without AC in the macro name:

* bootstrap: Remove libltdl/config.h from previous releases.
* m4/libtool.m4, m4/ltdl.m4, doc/libtool.texi: Basically, run a
giant sed transformation like this:
s,AC_LIB_LTDL,LTDL_INIT,g
s,AC_LIBLTDL_CONVENIENCE,LTDL_CONVENIENCE,g
s,AC_LIBLTDL_INSTALLABLE,LTDL_INSTALLABLE,g
s,AC_WITH_LTDL,LT_WITH_LTDL,g
s,AC_LTDL_ENABLE_INSTALL,_LT_ENABLE_INSTALL,g
s,AC_DEPLIBS_CHECK_METHOD,_LT_CHECK_MAGIC_METHOD,g
s,AC_LIBTOOL_OBJDIR,_LT_CHECK_OBJDIR,g
s,AC_LTDL_OBJDIR,_LT_CHECK_OBJDIR,g
s,AC_LTDL_DLPREOPEN,_LT_CHECK_DLPREOPEN,g
s,AC_LIBTOOL_SYS_MAX_CMD_LEN,LT_CMD_MAX_LEN,g
s,AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,_LT_CMD_GLOBAL_SYMBOLS,g
s,AC_LIBTOOL_SYS_OLD_ARCHIVE,_LT_CMD_OLD_ARCHIVE,g
s,AC_PROG_LD_RELOAD_FLAG,_LT_CMD_RELOAD,g
s,AC_LIBTOOL_SYS_LIB_STRIP,_LT_CMD_STRIPLIB,g
s,AC_CHECK_LIBM,LT_LIB_M,g
s,AC_LTDL_DLLIB,LT_LIB_DLLOAD,g
s,AC_LIBTOOL_COMPILER_OPTION,_LT_COMPILER_OPTION,g
s,AC_LIBTOOL_PROG_CC_C_O,_LT_COMPILER_C_O,g
s,AC_LIBTOOL_PROG_COMPILER_NO_RTTI,_LT_COMPILER_NO_RTTI,g
s,AC_LIBTOOL_PROG_COMPILER_PIC,_LT_COMPILER_PIC,g
s,AC_LIBTOOL_SYS_HARD_LINK_LOCKS,_LT_COMPILER_FILE_LOCKS,g
s,AC_LTDL_DLSYM_USCORE,LT_FUNC_DLSYM_USCORE,g
s,AC_LIBTOOL_LINKER_OPTION,_LT_LINKER_OPTION,g
s,AC_LIBTOOL_PROG_LD_SHLIBS,_LT_LINKER_SHLIBS,g
s,AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH,_LT_LINKER_HARDCODE_LIBPATH,g
s,AC_PATH_MAGIC,_LT_PATH_MAGIC,g
s,AC_PATH_TOOL_PREFIX,_LT_PATH_TOOL_PREFIX,g
s,AC_PROG_LD,LT_PATH_LD,g
s,AC_PROG_LD_GNU,_LT_PATH_LD_GNU,g
s,AC_PROG_NM,LT_PATH_NM,g
s,AC_LTDL_SYS_DLOPEN_DEPLIBS,LT_SYS_DLOPEN_DEPLIBS,g
s,AC_LIBTOOL_DLOPEN_SELF,LT_SYS_DLOPEN_SELF,g
s,AC_LIBTOOL_POSTDEP_PREDEP,_LT_SYS_HIDDEN_LIBDEPS,g
s,AC_LTDL_SYSSEARCHPATH,LT_SYS_DLSEARCH_PATH,g
s,AC_LTDL_SHLIBEXT,LT_SYS_MODULE_EXT,g
s,AC_LTDL_SHLIBPATH,LT_SYS_MODULE_PATH,g
s,AC_LTDL_SYMBOL_USCORE,LT_SYS_SYMBOL_USCORE,g
s,AC_LIBTOOL_SYS_DYNAMIC_LINKER,_LT_SYS_DYNAMIC_LINKER,g
s,_LT_AC_TAGVAR,_LT_TAGVAR,g
s,_LT_AC_SYS_COMPILER,_LT_TAG_COMPILER,g
s,_LT_AC_PROG_ECHO_BACKSLASH,_LT_PROG_ECHO_BACKSLASH,g
s,_LT_AC_SYS_LIBPATH_AIX,_LT_SYS_MODULE_PATH_AIX,g
s,_LT_AC_SHELL_INIT,_LT_SHELL_INIT,g
s,_LT_AC_LOCK,_LT_ENABLE_LOCK,g
s,_LT_AC_CHECK_DLFCN,_LT_HEADER_DLFCN,g
s,_LT_AC_TRY_DLOPEN_SELF,_LT_TRY_DLOPEN_SELF,g
s,LT_AC_PROG_EGREP,_LT_DECL_EGREP,g
s,LT_AC_PROG_SED,_LT_DECL_SED,g
* doc/libtool.texi (Autoconf macros): Document exported macros.
* libtoolize.in: Compare ltdl.m4 serial numbers for LTDL_INIT
instead of newly obsoleted AC_LIB_LTDL.
(func_scan_files): Also set seen_ltdl for LTDL_INIT and
LT_WITH_LTDL.


* libltdl/ltdl.c (lt_dlforeachfile): LT_SYS_LIBSEARCH_PATH is not
an environment variable, it is an actual path.
Reported by Noah Mish <noah@cs.caltech.edu>
2004-08-22 22:02:07 +00:00
Daniel Reed
1a3f08204f * tests/demo-nopic.test: Do not run on x86_64 or s390* 2004-08-12 03:36:30 +00:00
Gary V. Vaughan
7eddfb6fbb * tests/tagtrace.test: Skip this test when running a VPATH build
against a read-only source tree (as in distcheck for example),
since autoconf wants to write temporary files in $top_srcdir
otherwise.
2004-07-29 18:13:37 +00:00
Gary V. Vaughan
706e672811 This pervasive changeset makes two intertwined deep changes to the
operation of libtool (neither would work alone).  First, there is
a new feature that allows libraries to preopen modules.  This
entails a backwards incompatible change to the libltdl API for
separating out the preloaded symbol lists by owner.  Second, in
the tradition of "eating our own dogfood", libltdl now preloads
its own dlloaders.  The internal API for dlloaders has also had to
change in a backwards incompatible way in support of the new
library preloading feature.  If you don't use preloaded libraries,
you needn't change your project sources, though you will need to
recompile against the new libltdl.  The API changes are mostly
confined to dlloaders, so you probably needn't worry about those
(unless you have written a custom loader that you want libltdl to
use):

* configure.ac (AC_CONFIG_FILES): Add libltdl/loaders/Makefile.
* libltdl/configure.ac (AC_CONFIG_FILES): Add loaders/Makefile.
* libltdl/loaders: New directory for module loaders, to simplify
Makefile rules, and to give the loaders themselves names that are
unique in the first few characters.
* libtoolize.in (func_copy_all_files): Copy recursively to pick up
the loaders directory contents.
* libltdl/loaders/Makefile.am: New file.  Move module building
rules to here...
* libltdl/Makefile.am: ...from here.
(VERSION_INFO): Bumped version info to signify interface changes.
(libltdl_la_CPPFLAGS, libltdlc_la_CPPFLAGS): Set LTDLOPEN
appropriately for each library.
* libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
libltdl/loader-loadlibrary.c libltdl/loader-preopen.c,
libltdl/loader-shl_load.c: Moved from here...
* libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
libltdl/loaders/loadlibrary.c libltdl/loaders/preopen.c,
libltdl/loaders/shl_load.c: ...to here.
(get_vtable): New entry function for each.
* libltdl/loaders/preopen.c (lt_dlsymlists_t): Replaced by...
(symlist_chain): ...a new structure which maps lists of preloaded
symbols from the object that loads them.
(lt_dlpreload_open): New function to automatically open all
preloaded modules belonging to a named object (ORIGINATOR).
* libltdl/lt__alloc.c (lt__zalloc): New function to return a block
of zeroed out new memory.
* libltdl/lt__alloc.h (lt__zalloc): Prototype it.
* libltdl/lt__private.h (lt__alloc_die_callback): Add missing
prototype.
(lt__error_strings): Make this opaque to callers.
* libltdl/lt_error.c (lt__error_strings): Move the implementation
to here.
* libltdl/lt_dlloader.h (lt_user_dlloader): Add extra fields to
make originator focused preloading possible.  *BREAKS BACKWARDS
COMPATIBILITY*
(lt_dlloader_add): Take advantage of new fields to simplify
paramater list.
* libltdl/lt_system.h (LT_STR): New ANSI stringification macro.
(LT_CONC): Fix it to work from within macros.
* libltdl/ltdl.c (loader_init, loader_init_callback): Simplify
dlloader loading.
(get_vtable, preloaded_symbols): Point these at the preopen.c
symbols to bootstrap the loader chain.
(lt_dlinit): Load the preopen dlloader manually, and then use it
to load any other preloaded dlloaders.
(lt_dlloader_add): Simplify parameter list. Populate new
fields. Chain new loaders according to priority field.
* libltdl/ltdl.h (lt_dlsymlist): Add a new originator field.
(lt_dlpreload_callback_func): Type of a callback for automatic
lt_dlpreload_open loading.
(LTDL_SET_PRELOADED_SYMBOLS): Adjust to hook into preloaded
symbols from the "@PROGRAM@" originator.
* tests/demo/dlmain.c (main): Use mangled preloaded_symbols symbol.
* tests/pdemo/longer_file_name_dlmain.c (main): Ditto.
* ltmain.in: Don't spew spurious warnings when dlopening and
dlpreopening modules.
(func_generate_dlsyms): Factored out from multiple copies in the
rest of the code. Generate originator keyed symbol lists.
(func_extract_archives): Also factored.  Extract the contents of
convenience archives for linking with dependent libraries when
--whole-archive is not available.
[darwin]: Don't try to link $old_library unless it exists, and
$lib is a bundle.
* m4/ltdl.m4 (AC_LTDL_DLLIB): Check for all possible dynamic
loading libraries/apis rather that stopping when an acceptable one
is discovered.
(LT_DLLOADERS): New variable for holding dlloaders that can be
preloaded.
* doc/libtool.texi: Document interface changes.
* NEWS: Updated.
2004-07-15 12:14:48 +00:00
Noah Misch
269f719460 * ltmain.in: Unset the zsh GLOB_SUBST option, which makes zsh
handle backslash quoting poorly, before doing anything else.
* tests/defs: Likewise.
2004-06-24 12:21:41 +00:00
Gary V. Vaughan
bcaed0820d * tests/tagtrace.test: Forgot to add this file to the repository
for Alexandre's 2004-05-16 patch below.
2004-05-21 20:18:20 +00:00
Alexandre Duret-Lutz
639afd859e * doc/libtool.texi (Invoking libtool): Mention --tag=TAG.
(Tags, Trace interface): New nodes.
* m4/libtool.m4 (LT_SUPPORTED_TAG): New macro.
(_LT_LANG): Call it.
* tests/tagtrace.test: New file.
* tests/Makefile.am
(TESTS): Add tagtrace.test.
* tests/defs: Define AUTOCONF.
2004-05-17 17:42:44 +00:00
Gary V. Vaughan
5dfb0ce7e2 Factor out the individual loaders, in preparation for preloading
them as libtool modules.  Currently loader-preopen.c is linked
unconditionally and other appropriate loaders discovered by
AC_LTDL_DLLIB are built and linked in:

* libltdl/Makefile.am (libltdl_la_SOURCES): Add loader-preopen
module.
* m4/ltdl.m4 (AC_LTDL_DLLIB): Use AC_LIBOBJ to add appropriate
loaders to libltdl.
* libltdl/lt_system.h (LT_SCOPE): Moved to here.
* libltdl/ltdl.h (lt_dlloader, lt_user_data, lt_module)
(lt_module_open, lt_module_close, lt_find_sym, lt_dlloader_exit)
(struct lt_user_dlloader, lt_dlloader_next, lt_dlloader_find)
(lt_dlloader_name, lt_dlloader_data, lt_dlloader_add)
(lt_dlloader_remove): Moved declarations...
* libltdl/lt_loader.h: ...to here.
* libltdl/ltdl.c: Include lt_loader.h.  Move loader implementation
code from here...
* libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
libltdl/loader-loadlibrary.c, libltdl/loader-preopen.c,
libltdl/loader-shl_load.c: ...to here.
* tests/cdemo/Makefile.am, tests/demo/Makefile.am,
tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (AM_CPPFLAGS):
Add -I$(top_srcdir)/../.. so that libltdl include files can be
written as #include <libltdl/lt_dlloader.h> and found correctly.
2004-04-13 14:31:05 +00:00
Albert Chin-A-Young
735c575781 * libtool.m4: When linking convenience libraries on Solaris
with the Sun C++ compiler, pass convenience libraries through
to the linker with -Qoption between allextract/defaultextract.
The Sun C++ compiler bundles -Qoption arguments so
convenience libraries are linked with defaultextract
otherwise.
* tagdemo/Makefile.am, tagdemo/main.cpp, tagdemo/conv.h,
tagdemo/conv.cpp: Augment tagdemo test to link a convenience
library with a libtool library.
2004-03-24 03:06:48 +00:00
Scott James Remnant
0550115589 Further sweeping changes to the user interface to libtool from
`configure.ac' to allow users to better control the list of
supported languages.  Three LT_INIT options 'no-lang', 'all-lang'
and 'auto-lang' (the default) control the initial list and others
may be added with LT_LANG.

* m4/libtool.m4 (_LT_CONFIG): Renamed AC_LIBTOOL_CONFIG to _LT_CONFIG
which is more consistent with our own namespace and gets us further out
of Autoconf's.
(_LT_LIBTOOL_TAGS): Output available_tags variable based entirely
on the value of _LT_TAGS.
(_LT_COPYING): Call _LT_LIBTOOL_TAGS to output available tags,
always append tag configuration if the tag is available.
(LT_LANG): New macro to enable support for a language that accepts
tag names (eg. "CXX") or human language names (eg. "C++").
(_LT_LANG): Internal support macro for above that appends the
tag to _LT_TAGS and calls the appropriate config macro.
(LT_INIT): Ensure that LT_LANG is not called before LT_INIT.
(AC_LIBTOOL_TAGS): Removed, call LT_LANG for each language now.
(_LT_AC_TAG_CHECK): Removed, _LT_LANG handles duplicate calls.
(_LT_LANG_DEFAULT_CONFIG): Macro to set initial language support
based on options passed to LT_INIT.
(_LT_SETUP): Call _LT_LANG_DEFAULT_CONFIG.
(_LT_AC_TAG_CONFIG): Removed, handled by _LT_LANG_DEFAULT_CONFIG.
(_LT_AC_LANG_CXX, _LT_AC_LANG_F77, _LT_AC_LANG_GCJ): Removed,
automatic language support inclusion now handled by
_LT_LANG_DEFAULT_CONFIG.
(AC_LIBTOOL_CXX): Obsolete macro, update to LT_LANG(C++).
(AC_LIBTOOL_F77): Obsolete macro, update to LT_LANG(Fortran 77).
(AC_LIBTOOL_GCJ): Obsolete macro, update to LT_LANG(Java).
(AC_LIBTOOL_LANG_C_CONFIG_: Removed.
(_LT_AC_LANG_C_CONFIG): Renamed to _LT_LANG_C_CONFIG, call
_LT_CONFIG instead of AC_LIBTOOL_CONFIG.
(_LT_SETUP): Replace call to AC_LIBTOOL_LANG_C_CONFIG with call to
new _LT_LANG_C_CONFIG macro.
(AC_LIBTOOL_LANG_CXX_CONFIG): Removed.
(_LT_AC_LANG_CXX_CONFIG): Renamed to _LT_LANG_CXX_CONFIG, call
_LT_CONFIG instead of AC_LIBTOOL_CONFIG.
(AC_LIBTOOL_LANG_F77_CONFIG): Removed.
(_LT_AC_LANG_F77_CONFIG): Renamed to _LT_LANG_F77_CONFIG, call
_LT_CONFIG instead of AC_LIBTOOL_CONFIG.
(AC_LIBTOOL_LANG_GCJ_CONFIG): Removed.
(_LT_AC_LANG_GCJ_CONFIG): Renamed to _LT_LANG_GCJ_CONFIG, call
_LT_CONFIG instead of AC_LIBTOOL_CONFIG.
(AC_LIBTOOL_LANG_RC_CONFIG): Removed.
(_LT_AC_LANG_RC_CONFIG): Renamed to _LT_LANG_RC_CONFIG, call
_LT_CONFIG instead of AC_LIBTOOL_CONFIG.
(LT_AC_PROG_GCJ): Renamed to LT_PROG_GCJ.
(LT_AC_PROG_RC): Renamed to LT_PROG_RC.
* m4/ltoptions.m4: Define new 'no-lang', 'auto-lang' and 'all-lang'
options which set the default for _LT_LANG_DEFAULT_CONFIG.
* m4/lt~obsolete.m4: Removed AC_LIBTOOL_CONFIG, _LT_AC_LANG_C_CONFIG,
_LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG; all of which are no
long referenced in any way.
* configure.ac: Enable all languages.
* tests/cdemo/configure.ac, tests/demo/configure,ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/mdemo/configure.ac, tests/pdemo/configure,ac,
tests/tagdemo/configure.ac: Remove calls to AC_LIBTOOL_TAGS,
the default 'auto-lang' mode now does the right thing.
* doc/libtool.texi (The LT_INIT macro): Add documentation for
new LT_INIT options and the LT_LANG macro, replacing the old
documentation of AC_LIBTOOL_TAGS which is no more.
* NEWS: Updated.
2004-03-21 16:05:28 +00:00
Gary V. Vaughan
f7356d2f61 Sweeping changes to the user interface to libtool from
`configure.ac' to be more like AC_INIT and accept a space
delimited list of options.  Instead of calling `AC_LIBTOOL_DLOPEN;
AC_PROG_LIBTOOL', we now recommend `LT_INIT([dlopen])':

* m4/libtool.m4	(AC_PROG_LIBTOOL, _AC_PROG_LIBTOOL)
(AC_LIBTOOL_SETUP): Removed.  Added AU_DEFUNs.
(LT_INIT): Replace with an Autoconf like interface which accepts a
version number as a minimum required libtool release at configure
time.
* m4/ltoptions.m4: New file inspired by automake/m4/amoptions.m4,
which additionally flags an error if the configuring libtool
macros are not new enough according to LT_INIT.
(LT_OPTION_DEFINE): New macro to declare option handlers.
(dlopen, win32-dll, shared, disable-shared, static)
(disable-static, fast-install, disable-fast-install, pic-only)
(no-pic): Newly LT_OPTION_DEFINEd option handlers that use...
(_LT_ENABLE_SHARED, _LT_ENABLE_STATIC, _LT_ENABLE_FAST_INSTALL)
(_LT_WITH_PIC, _LT_WIN32_DLL): New macros to handle
LT_LIBTOOL_INIT options...
* m4/libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC)
(AC_ENABLE_FAST_INSTALL, AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL):
...to replace these user interface macros, now defined as
AU_DEFUNs.
(AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
Removed.  No longer required with LT_INIT_LIBTOOL interface.
Added AU_DEFUNs.
(AM_ENABLE_SHARED, AM_DISABLE_SHARED, AM_ENABLE_STATIC)
(AM_DISABLE_STATIC): Changed AU_DEFUNs to match new interface.
(_LT_SETUP): Internal to LT_INIT, replaces AC_LIBTOOL_SETUP.
* m4/lt~obsolete.m4 (AC_LIBTOOL_SETUP, _AC_PROG_LIBTOOL)
(_LT_PROG_LTMAIN):  More AC_DEFUNs that have been retracted.
* configure.ac: Use new interface.
* doc/libtool.texi: Document new interface.
* NEWS: Updated.
2004-02-22 11:13:45 +00:00
Scott James Remnant
d9e97e3854 * tests/sh.test: Test the config/ltmain.sh and libtoolize in the
build directory not the source directory, where they won't exist
during 'make distcheck'.
* ltmain.in: Revert one line of previous intendation clean-up
to enable one of the sh.test checks to pass.
2004-02-13 01:57:52 +00:00
Scott James Remnant
6039b9636b * tests/cdemo/configure.ac: Drop AC_PREREQ back to 2.54, this
was debris from Gary's cvsapply going mad and wasn't backed
out.
2004-02-13 00:57:30 +00:00
Gary V. Vaughan
c695fe18f5 * NEWS, bootstrap, configure.ac, ltmain.in, m4/libtool.m4:
* m4/lt~obsolete.m4, tests/cdemo/configure.ac: Arghh.  cvsapply just
went crazy and committed a bunch of stuff that shouldn't have been
in the last changeset.  The patch backs it all out.
2004-02-10 20:45:41 +00:00
Gary V. Vaughan
c72336465d * config/mailnotify: New file for mailing commit notifications,
imported from cvs-utils.
* commit: Updated from cvs-utils and tweaked for libtool.
* Makefile.am (EXTRA_DIST): Add config/mailnotify.
2004-02-10 19:47:00 +00:00
Gary V. Vaughan
a9d07029d6 * m4/libtool.m4 (LT_AC_PROG_EGREP): Wrapper for AC_PROG_GREP.
AIX has a brain-dead grep that only handles lines < 2048
characters.  Default GREP incase we are not using a future
autoconf that sets it for us :-)  Changed all callers to use $GREP
instead of grep, and to AC_REQUIRE LT_AC_PROG_EGREP.
Declare GREP as a libtool config var.
* ltmain.in: Use it.
* tests/sh.test (scripts): Accept `if $GREP "^foo=bar"' by
tightening the regexp.
Reported by Albert Chin-A-Young  <china@thewrittenword.com>
2004-01-22 15:27:25 +00:00
Stefan Nordhausen
a8f3df622a Roll back copyright changes. 2004-01-04 20:45:24 +00:00
Scott James Remnant
dff2249409 Updated all copyright notices to include 2004.
* NEWS: Next release will be in 2004.
2004-01-02 01:59:11 +00:00
Gary V. Vaughan
d30b465a54 * bootstrap: Explain automake and autoconf version dependencies
truthfully, and the difference between bootstrap and user
dependencies.
* configure.ac (AM_INIT_AUTOMAKE): List AUTOMAKE_OPTIONS here.
* Makefile.am, doc/Makefile.am, tests/Makefile.am
(AUTOMAKE_OPTIONS): Removed from here.
2003-11-25 15:48:23 +00:00
Gary V. Vaughan
c2b6ce4412 * tests/defs (func_configure): cdemo, demo and mdemo are shows
signs of indeterminacy for some users.  Be more verbose during
failure to help track down the cause.
2003-11-24 15:26:56 +00:00
Peter O'Gorman
96172f9e02 * tests/demo-hardcode.test: Call ./libtool not libtool. 2003-11-22 14:09:14 +00:00
Gary V. Vaughan
50503c94d7 * configure.ac (CONF_SUBDIRS): Make these relative to
tests/Makefile.am.
(DIST_MAKEFILE_LIST): Adjust to compensate for having removed the
`tests/' part in CONF_SUBDIRS.
* tests/Makefile.am (DIST_SUBDIRS): Distribute these directories.
(SUBDIRS): Set to `.', a NOP, to workaround an automake bug which
ignores DIST_SUBDIRS unless SUBDIRS is also set.
* Makefile.am (DIST_SUBDIRS): Don't try to distribute the tests
subdirectories from here, since the recursive automake dist rule
only works with direct child directories.  Defer to
tests/Makefile.am in this case.
2003-11-17 15:49:06 +00:00
Gary V. Vaughan
c114abf5e4 * tests/cdemo/configure.ac, tests/demo/configure.ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Declare just
the tags we need using AC_LIBTOOL_TAGS, reducing the size of the
configure script by 50% in most cases.
2003-11-14 17:28:29 +00:00
Gary V. Vaughan
a69688b769 Run our configure.ac files through Autoconf 2.59's autoupdate, and
then tweak the results by hand:

* m4/libtool.m4 (AC_PROG_LD): In common with all the other
AC_PROG_ macros, AC_SUBST the discovered LD.
(AC_PROG_NM): Similarly for NM.
(LT_AC_PROG_SED): Similarly for SED.
* configure.ac: No need to SUBST NM and LD manually any more.
(AC_PREREQ): Conservatively downgrade from 2.59 to 2.54.
* tests/cdemo/configure.ac, tests/demo/configure.ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Ditto.
* m4/libtool.m4 (AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC,
AM_PROG_LD, AM_PROG_NM): AU_DEFUN these macros so autoupdate can
use the newer definitions.
2003-11-14 11:12:22 +00:00
Gary V. Vaughan
2512e6ad67 * tests/cdemo/configure.ac, tests/demo/configure.ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/pdemo/configure.ac, tests/tagdemo/configure.ac:
s/AM_PROG_LIBTOOL/AC_PROG_LIBTOOL/. Marching boldly into the 21th
century :-$
2003-11-07 16:25:57 +00:00
Scott James Remnant
5c05f55cde * tests/demo-nopic.test: Skip test on hppa, which don't like
non-PIC shared libraries.
2003-11-06 17:26:24 +00:00
Charles Wilson
24ed9eea92 * tests/depdemo/configure.ac, tests/mdemo/configure.ac,
tests/mdemo2/configure.ac: process 'libtool --features'
from Makefile, not configure -- because libtool doesn't
exist at configure time.
2003-11-06 14:42:46 +00:00
Peter O'Gorman
30f1b71195 * tests/mdemo2/Makefile.am: Let mdemo2 find ltdl.h again. 2003-11-01 14:26:33 +00:00
Gary V. Vaughan
b28de94488 Start to eliminate the double run of configure in a fresh CVS
checkout by generating ltmain.sh, using that to create libtool,
and then adding the tags to that, all from config.status.

* configure.ac (AC_CONFIG_FILES): Make config/ltmain.sh, and copy
it to libltdl.
* Makefile.am ($(srcdir)/config/ltmain.sh): This file is now
created by config.status.  Adjust this rule.
(libtoolize): Set CONFIG_COMMANDS to empty to prevent regenerating
the libtool script as a side effect of running this rule.
* libtool.m4: Bump serial number.  Fix comment typos.
(_LT_CONFIG_LIBTOOL_INIT, _LT_CONFIG_LIBTOOL,
_LT_CONFIG_SAVE_COMMANDS, _LT_CONFIG_COMMANDS: New macros.  They
don't work for some reason - the variable value quoting in the
init section is all wrong.  Not used at the moment.
(AC_LIBTOOL_CONFIG): Generate libtool from config.status.
(_LT_AC_TAG_CONFIG): Add the tags in config.status.
(compiler_DEFAULT): Save the compiler value for the DEFAULT tag,
or it gets overwritten by the other macros.
(EOF): Globally replace with _LT_EOF to avoid namespace pollution.
* tests/demo/configure.ac (STATIC): Check $enable_static instead
of running ./libtool which doesn't exist yet.
(BINARY_HELLDL): Check $lt_cv_sys_global_symbol_pipe with case
instead of grepping ./libtool which doesn't exist yet.
* tests/pdemo/configure.ac (STATIC, BINARY_HELLDL): Ditto.
* doc/libtool.texi (AC_PROG_LIBTOOL): Add some notes about trying
to get config details from `libtool --config'.
* NEWS: Updated.
2003-10-21 15:03:57 +00:00