Commit Graph

50 Commits

Author SHA1 Message Date
Gary V. Vaughan
56c08a521e * HACKING (Licensing Rules): Explain the various license texts
used for files distributed with Libtool, and update license text
to match.
* Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
libltdl/README, libltdl/argz.c, libltdl/argz_.h,
libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
libltdl/config/mkstamp, libltdl/configure.ac,
libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h,
libltdl/libltdl/slist.h, 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,
libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
Jlibltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
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/cdemo/Makefile.am, tests/cdemo/configure.ac,
tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
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/demo/Makefile.am, tests/demo/configure.ac,
tests/demo/dlmain.c, tests/demo/foo.c,
tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
tests/demo/hello.c, tests/demo/main.c,
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/depdemo/Makefile.am,
tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
tests/depdemo/l4/l4.h, tests/depdemo/main.c,
tests/depdemo/sysdep.h, tests/deplibs-ident.at,
tests/destdir.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/early-libtool.at, tests/export.at,
tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared.test,
tests/f77demo-static.test, tests/f77demo/Makefile.am,
tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
tests/f77demo/foo.h, tests/f77demo/fooc.c,
tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
tests/fcdemo-make.test, tests/fcdemo-shared.test,
tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
tests/inherited_flags.at, tests/libtoolize.at,
tests/link-2.test, tests/link-order.at, tests/link-order2.at,
tests/link.test, tests/lt_dlexit.at, 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/mdemo/Makefile.am,
tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
tests/mdemo/sub.c, tests/mdemo2-conf.test,
tests/mdemo2-exec.test, tests/mdemo2-make.test,
tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
tests/objectlist.test, tests/old-m4-iface.at,
tests/pdemo-conf.test, tests/pdemo-exec.test,
tests/pdemo-inst.test, tests/pdemo-make.test,
tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
tests/pdemo/longer_file_name_foo.c,
tests/pdemo/longer_file_name_foo2.c,
tests/pdemo/longer_file_name_hell1.c,
tests/pdemo/longer_file_name_hell2.c,
tests/pdemo/longer_file_name_hello.c,
tests/pdemo/longer_file_name_main.c, tests/quote.test,
tests/recursive.at, tests/search-path.at, tests/sh.test,
tests/shlibpath.at, tests/standalone.at, tests/static.at,
tests/stresstest.at, tests/subproject.at, 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/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
tests/tagdemo/main.cpp, tests/tagtrace.test,
tests/template.at, tests/testsuite.at: Apply correct license
text according to the new rules set out in HACKING.
2007-03-25 12:12:44 +00:00
Ralf Wildenhues
206427dd26 Fix spurious testsuite failures on AIX due on NFS mounts due to
shared library images that cannot be removed without `slibclean'
which needs superuser privileges.

* tests/testsuite.at (PREPARE_TESTS): Define $mkdir_p globally.
(LT_AT_MVDIR): New macro to emulate `mv dir dest'.
* tests/destdir.at: Use LT_AT_MVDIR.
* tests/shlibpath.at: Likewise.
* tests/static.at: Likewise.
2007-02-12 22:29:05 +00:00
Ralf Wildenhues
e3aa680f19 * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): New macro, like
LT_AT_EXEC_CHECK but uses `$LIBTOOL --mode=execute' and allows
to pass `-dlopen MODULE' arguments.
* tests/lt_dlexit.at: Use it.  Also, do not test `-dlpreopen',
that currently needs library names to begin with `lib'.
2007-02-12 19:55:02 +00:00
Ralf Wildenhues
2139117724 * tests/testsuite.at (LT_AT_TAG): Skip also if the compiler
variable is set to `no', not only if it is empty.
2007-02-08 18:58:16 +00:00
Ralf Wildenhues
d1d4262854 Introduce a new test keyword `recursive' for tests that create a
modified `libtool' script and run the suite on this script.  All
tests with the keyword `libtool' are (by definition) suitable to
be used here.

* tests/cmdline_wrap.at: New test.
* Makefile.am: Adjust.
* tests/testsuite.at (LT_ESCAPE): New macro: clone of Autoconf
AS_ESCAPE that does not escape `$'.
(LT_AT_CHECK): New macro: print a command-to-be-run while
expanding parameters but nothing else.
* tests/stresstest.at: Use LT_AT_CHECK.  Create some files to
expose erroneous globbing errors with `-export-symbols-regex',
similar to those reported by Charles Wilson.  Use `eval' and
adjusted quoting so the expansion doesn't already happen in the
testsuite commands.
* HACKING: Update.
2007-01-28 12:43:37 +00:00
George Bosilca
8a17ccd68d Make libltdl work when compiled with a C++ compiler.
* libltdl/lt__alloc.c, libltdl/lt_dlloader.c, libltdl/ltdl.c,
libltdl/slist.c, libltdl/libltdl/lt__alloc.h,
libltdl/libltdl/lt_error.h, libltdl/libltdl/slist.h,
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, tests/stresstest.at,
tests/testsuite.at, tests/f77demo/foo.h, tests/fcdemo/foo.h,
tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c,
tests/mdemo/main.c: Allow sources to be compiled by a C++
compiler: Cast appropriately, add C linkage for `get_vtable'
functions, do not use C++ keyword `delete'.
2006-09-04 17:27:27 +00:00
Ralf Wildenhues
eb5e2e11ce * tests/testsuite.at: Test `unset' on a set variable; older
bash versions return 1 if the variable was not set.
2006-09-03 15:19:38 +00:00
Ralf Wildenhues
44383fc00f Drop K&R support from testsuite in favor of C89.
* tests/duplicate_members.at: provide declarations of used
functions.
* tests/testsuite.at: Drop unneeded arguments.
* tests/cdemo/main.c: Assume C89.
* tests/demo/dlmain.c: Likewise.
* tests/demo/main.c: Likewise.
* tests/depdemo/main.c: Likewise.
* tests/depdemo/l1/l1.c: Likewise.
* tests/depdemo/l2/l2.c: Likewise.
* tests/depdemo/l3/l3.c: Likewise.
* tests/depdemo/l4/l4.c: Likewise.
* tests/f77demo/cprogram.c: Likewise.
* tests/fcdemo/cprogram.c: Likewise.
* tests/mdemo/mlib.c: Likewise.
* tests/mdemo2/main.c: Likewise.
* tests/pdemo/longer_file_name_dlmain.c: Likewise.
* tests/pdemo/longer_file_name_main.c: Likewise.
* tests/fcdemo/fooc.c: Reformat.
* tests/mdemo/sub.c: Likewise.
2006-09-01 16:19:56 +00:00
Ralf Wildenhues
8f7eb43a16 Fix several libtoolize-related bugs:
- Do not symlink aclocal.m4, to work around a bug in aclocal
overwriting the linked-to file instead of removing the symlink.
- Have `libtoolize --copy' cause current time stamps, so that
dependents will be rebuilt; for this, install files in order.
- Fix list of distribution files for (non)recursive libltdl.
- Fix some failure cases.

* libtoolize.m4sh (func_copy_cb):
If `$opt_link', still copy `aclocal.m4', so a subsequent
`aclocal' will not overwrite the symlink target.
In `--copy' mode, do `cp -p' and `touch' for each file, so
timestamps are updated but permissions preserved.
(main): Reorder installing of files to match logical order
and timestamp requirements.
(func_fixup_Makefile_inc): Renamed to
(func_fixup_Makefile): this.  Add sed scriptlet to remove
non-existent files from EXTRA_DIST, for either nonrecursive
or recursive mode.
(main): call it to mangle also in recursive mode.
* tests/libtoolize.at (expout): Adjusted.
* tests/testsuite.at (tst_dist): Default to `dist'.
2006-06-12 17:54:15 +00:00
Ralf Wildenhues
3c31380f6f * Makefile.am (check-local): Move `$(TESTS_ENVIRONMENT)' and
`$(BUILDCHECK_ENVIRONMENT)' to be arguments of `testsuite', so
that reruns will remember it; set enviroment variable
`CONFIG_SHELL' so the suite will know which shell it was started
with.
(installcheck-local): Likewise, for `$(TESTS_ENVIRONMENT)' and
`$(INSTALLCHECK_ENVIRONMENT)'.
* tests/testsuite.at (LT_AT_TAG): Do not set the compiler
variable here.
2006-05-15 16:14:24 +00:00
Ralf Wildenhues
bc06662db8 * tests/testsuite.at: Add new keyword `libtoolize' for tests
that exercise the `libtoolize' script that is generated at build
time.
* HACKING: Update testsuite mention, explain keywords.
2006-02-05 17:06:39 +00:00
Ralf Wildenhues
3bdc3192c9 * Makefile.am (TESTSUITE_AT): List testsuite files in the order
in which they are to be expanded in the suite.
(tests/TESTSUITE): Rebuild by passing all $(TESTSUITE_AT) files,
with their path suitably adjusted.  This enables us to..
* tests/testsuite.at: ..get rid of their redundant mention here.
2006-02-01 19:54:34 +00:00
Ralf Wildenhues
08a7e53a0d * tests/testsuite.at (PREPARE_TESTS): Escape `^' for some older
shells.
2006-01-30 20:14:04 +00:00
Ralf Wildenhues
b794bc707a * Makefile.am, bootstrap, clcommit.m4sh,
libltdl/config/getopt.m4sh, libltdl/config/mailnotify.m4sh,
tests/sh.test, tests/testsuite.at: Bump copyright years.
2006-01-23 18:33:57 +00:00
Ralf Wildenhues
1d9ab46f1e * bootstrap: Don't use semicolons inside { } in sed scripts, as
Posix says it's not portable.
* Makefile.am (libltdl/Makefile.am): Likewise.
* libtoolize.m4sh (all over the map): Likewise.
* libltdl/config/getopt.m4sh (func_version, func_usage)
(func_help): Likewise.
* libltdl/config/ltmain.m4sh (func_win32_libid): Likewise.
* libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Likewise.
* clcommit.m4sh, libltdl/config/mailnotify.m4sh: Likewise.
* tests/sh.test, tests/testsuite.at (LT_AT_TAG): Likewise.
Noted by Paul Eggert <eggert@cs.ucla.edu>.
2006-01-21 16:44:41 +00:00
Ralf Wildenhues
a33d6a8916 * tests/testsuite.at (PREPARE_TESTS): New variable `tst_dist',
default to empty.
* tests/nonrecursive.at, tests/recursive.at,
tests/standalone.at, tests/subproject.at: Use it in
LT_AT_BOOTSTRAP or LT_AT_MAKE, so that you can optionally test
redistribution within the tests.
2005-12-16 16:15:32 +00:00
Ralf Wildenhues
4a8cf0e75a * tests/am-subdir.at (Makefile.am): Put automake options here,
in AUTOMAKE_OPTIONS.  Require 1.6 because of the newer
`AC_INIT(pkgname,version) AM_INIT_AUTOMAKE' scheme.
* tests/nonrecursive.at, tests/recursive.at: Require 1.7,
because libltdl rules use `+=' in conditionals.
* tests/testsuite.at (LT_AT_AUTOMAKE): Fix indenting.
(LT_AT_AUTORECONF): also detect too old Automake.
2005-12-16 15:57:22 +00:00
Ralf Wildenhues
1ef097dbf6 * libltdl/config/general.m4sh (func_show_eval):
Rewrite use the failure expression, because the exit status of
the previous command may not be preserved in the next `eval' by
some shells, such as pdksh.
* libltdl/config/ltmain.m4sh (func_extract_an_archive):
Use func_show_eval correctly.
(func_mode_link): Likewise.  Also, do not use `$status'.
* tests/fail.at: New set of tests to ensure libtool fails.
* Makefile.am, tests/testsuite.at: Adjusted.
2005-12-03 08:33:48 +00:00
Ralf Wildenhues
bbfe62c669 Testsuite portability update round.
* tests/inherited_flags: skip when shared libs are disabled.
* tests/deplibs-ident.at [ aix ]: No unexpected failure here.
* tests/libtoolize.at: Fix for distcheck (readonly sources).
* tests/nonrecursive.at, tests/recursive.at, tests/subproject.at
(foo.c): Actually export a symbol, for AIX.
* tests/old-m4-iface.at: Use AC_LIBTOOL_DLOPEN, for AIX.
* tests/nonrecursive.at: Set foo_la_SOURCES, for automake-1.7.
* tests/subproject.at: Require automake-1.9, we use indirect
subdirs.
* tests/am-subdir.at: Move AT_KEYWORDS settings..
* tests/testsuite.at: ..here, in respective macros.
(LT_AT_AUTOMAKE): Skip if we detect failure due to old version.
(PREPARE_TESTS): Set autotool variables to `no' if not present.
(LT_AT_ACLOCAL, LT_AT_AUTOCONF, LT_AT_AUTOMAKE)
(LT_AT_AUTOHEADER, LT_AT_AUTORECONF): Use to XFAIL tests.
Reported by Tim Rice <tim@multitalents.net>.
(LT_AT_MAKE): Do not use `make -e'.
(_LTDL_PROJECT_FILES): Adjust sub-make call.  Work around `make'
which does not set `MAKE' or `SHELL'.  Fix for user-set
`CONFIG_SHELL'.
Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
2005-11-14 22:19:40 +00:00
Gary V. Vaughan
debe288c52 * tests/testsuite.ac (macrodir): Don't set it here...
* Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
...set it here to pick up files from the right place in context.
* tests/libtoolize.at, tests/old-m4-iface.at: Adjust.
* libtoolize.m4sh: Take tst_aclocaldir into account when running
inside the test harness.
2005-11-10 17:51:37 +00:00
Gary V. Vaughan
e6f1cb457f * tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
configure.
* tests/old-m4-iface.at, tests/subproject.at: Use LT_AT_BOOTSTRAP.
2005-11-10 14:57:50 +00:00
Gary V. Vaughan
8e4c3b06e6 * tests/testsuite.at (_LTDL_PROJECT_FILES): Factored out from
common code to build a basic libltdl using project.
* tests/old-m4-iface.at, tests/standalone.at, tests/subproject.at:
Use it.
2005-11-07 15:37:11 +00:00
Gary V. Vaughan
a79954af84 * tests/recursive.at: New tests for libltdl as a subdirectory,
configured and compiled from the toplevel project using a
recursive make..
* tests/testsuite.at: Use it.
* Makefile.am (TESTSUITE_AT): Depend on it.
2005-11-07 14:16:15 +00:00
Gary V. Vaughan
0c25422a6c * tests/nonrecursive.at: New tests for libltdl as a subdirectory,
configured and compiled from the toplevel project.
* tests/testsuite.at: Use it.
(LT_AT_AUTOHEADER): New macro.
* Makefile.am (TESTSUITE_AT): Depend on nonrecursive.at.
2005-11-02 17:43:51 +00:00
Ralf Wildenhues
bb32a2aa50 * tests/testsuite.at (LT_AT_AUTOMAKE): New macro.
* tests/subproject.at: Use it.  Do not call `autoreconf' in
tests, since it will try to reconfigure `sub/ltdl', which
breaks `make check' during `distcheck' because of a readonly
source tree.
2005-10-11 16:51:50 +00:00
Ralf Wildenhues
cefa1b074c * configure.ac (abs_top_builddir, abs_top_srcdir): always
substitute.
* Makefile.am (BUILDCHECK_ENVIRONMENT)
(INSTALLCHECK_ENVIRONMENT): New macros.  Set _lt_pkgdatadir,
LIBTOOL, LIBTOOLIZE accordingly, by using above, and
program_transform_name.
* tests/testsuite.at (TESTS_PREPARE): Do not set them anymore.
Set $unset.
(LT_AT_MAKE): Use to unset LIBTOOL and LIBTOOLIZE.
2005-10-07 08:52:10 +00:00
Gary V. Vaughan
c1b31f316c * tests/subproject.at: New tests for libltdl as a subproject with
its own configuration.
* tests/testsuite.at: Use it.
* Makefile.am (TESTSUITE_AT): Depend on it.
2005-10-05 15:02:54 +00:00
Ralf Wildenhues
9086d5c9fa * Makefile.am (BUILDCHECK_ENVIRONMENT)
(INSTALLCHECK_ENVIRONMENT): New macros.
(check-local, installcheck-local): Use them.
* tests/testsuite.at (PREPARE_TESTS): Extract host_alias, ECHO.
Set configure_options appropriately.
(LT_AT_CONFIGURE, LT_AT_AUTORECONF, LT_AT_MAKE): New macros.
(LT_AT_BOOTSTRAP): Use them.
* tests/am-subdir.at, tests/early-libtool.at,
tests/old-m4-iface.at, tests/standalone.at: Likewise.
* tests/link-order.test: Do not extract ECHO any more.
2005-10-05 08:58:19 +00:00
Ralf Wildenhues
4ca867a96c * tests/deplibs-ident.at: New file with XFAIL test to expose
wrong multiple listing of a deplib on the command line.
* Makefile.am, tests/testsuite.at: Updated.
Reported by Brian Barrett <brbarret@open-mpi.org>.
2005-09-30 16:00:23 +00:00
Gary V. Vaughan
2f89a87c91 * tests/old-m4-iface.at: Start of a new test series for m4
interface backwards compatibility.
* tests/testsuite.at: Use it.
(macrodir): Declare the location of uninstalled libtool m4 macros.
* Makefile.am (TESTSUITE_AT): Depend on it.
2005-09-30 00:46:52 +00:00
Tim Rice
121d473ead * tests/defs.m4sh, tests/testsuite.at (PREPARE_TESTS)
<AUTORECONF>: Allow variable override.
2005-09-27 06:48:22 +00:00
Peter Ekberg
38599480fc * tests/testsuite.at (LT_AT_EXEC_CHECK): Make sure
that the exit status of the tested program is
propagated as the exit status of the expression
fed to AT_CHECK.
2005-09-16 08:33:24 +00:00
Peter Ekberg
ff60e2f202 * tests/testsuite.at (host_os): Pull from `libtool --config'.
* tests/stresstest.at [ cygwin, mingw, pw32 ]: Use it to fix
setting of `-no-undefined'.
2005-09-12 12:48:38 +00:00
Gary V. Vaughan
757d7dc478 Reorganise the libtool tree to create a bootstrapped libltdl for
installation to the libtoolize master tree, so that libltdl is
useable even in the extreme case of when automake and autoconf are
not installed on the developers machine.  Part of this change
requires some duplication of rules between Makefile.am (which
builds libltdl for this distribution) and libltdl/Makefile.am
(which is used by projects that libltoolize --ltdl --copy), so
libtool now really does use a single toplevel Makefile.am, and we
generate libltdl/Makefile.am from that:

* m4, config: Moved from here...
* libltdl/m4, libltdl/config: ...to here, to reduce the amount of
kludging needed in bootstrap for autoreconf to run.
* tests/cdemo/Makefile.am, tests/demo/Makefile.am,
tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Adjust to
compensate.
* tests/cdemo/configure.ac, tests/demo/configure.ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/fcdemo/configure.ac, tests/mdemo/configure.ac,
tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto.
* libltdl/m4/ltdl.m4: Increment serial number.
(LTDL_INIT): Accept an optional directory argument to prefix each
of the LD_DLLOADERS locations.  Default to empty for backwards
compatibility.
* Makefile.maint: Adjust to compensate.
* configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR): Adjust.
(AC_CONFIG_LIBOBJ_DIR): Set here so that we can build LTLIBOBJS
from in a subdirectory from the amalgamated Makefile.am.
(AM_PROG_CC_C_O, AM_INIT_AUTOMAKE): Use subdir-objects.
(AC_CONFIG_FILES): Remove libltdl/Makefile.am.
* libltdl/Makefile.am: Removed from repository, and merged into
Makefile.am as we now generate it...
* Makefile.am (libltdl/Makefile.am): ...from here, by extracting
the merged rules, and tweaking paths to accomodate the difference
in directory from Makefile.am to libltdl/Makefile.am.
(nobase_dist_pkgdata_DATA): Automake generated installation rules
change timestamps of installed files, so renamed this...
(configauxfiles): ...to this...
(libtoolize): ...substitute it...
(install-data-local): ...install manually, preserving
timestamps...
(install-data-hook): ...and set execute bit as appropriate.
(uninstall-hook): Not forgetting to remove them at uninstall.
(libltdl/Makefile.in): New rule.  Called from...
* bootstrap: ...here to avoid relying on config.status at
bootstrap time.
(auxdir, m4dir): Extract from configure.ac for ease of future
maintenance.  Adjust all references.
(reconfdirs): Call autoreconf for libltdl too -- even
though we don't use it for the build, libltdl/configure and
friends are installed with `libtoolize --ltdl --copy'.
* libtoolize.m4sh: Add files from the installed config master tree
to libtoolize --ltdl project subdirectory.
Diagnose duplicated files when --ltdl is used in an autotooled
project.
It's perfectly fine to run `libtoolize --ltdl --copy' in a tree
that has no configure.ac or configure.in; we want libltdl to be
useful even to projects that don't use autotools themselves.
(libtoolize_flags): Removed.  Changed all callers.
(func_massage_pkgconfig_files): New function.
* tests/standalone.at: New tests for using libltdl without
supporting configury in the parent project.
* tests/testsuite.at: Run them!
* NEWS: Updated.
2005-08-23 01:49:37 +00:00
Ralf Wildenhues
2222a9d9aa * m4/libtool.m4 (LT_OUTPUT): New macro to generate
libtool before config.status.
(_LT_CONFIG_COMMANDS): If LT_OUTPUT has been invoked, then
generate code in config.status to call config.lt instead of
generating libtool directly.
* doc/libtool.texi (LT_INIT): Document LT_OUTPUT.
* tests/early-libtool.at: New test.
* Makefile.am (TESTSUITE_AT): Updated.
* tests/testsuite.at: Updated.  Define defaults for $ACLOCAL,
$AUTOCONF.
2005-08-18 17:07:17 +00:00
Gary V. Vaughan
ef4442da9b Revert the parallel installation changes from November last year:
* libtoolize.m4sh (pkgdatadir, aclocaldir): Substituted from
configure.
(func_copy_all_from_path): Removed.  No longer used.
(func_copy_some_files): Simplify now that nothing is copied from a
list of possible directories now.
(func_scan_files): Remove directory readability check...
(func_nonemptydir_p): ...in favour of a dedicated sanity check
function called from the main body.
(_lt_pkgvdatadir): Set pkgdatadir and aclocaldir appropriately if
this is in the environment.
* configure.ac: Tests for `ln' removed.
(APIVERSION): Removed.
* Makefile.am (pkgvdatadir, nobase_dist_pkgvdata_DATA)
(nobase_pkgvdata_DATA): Renamed to...
(pkgdatadir, nobase_dist_pkgdata_DATA, aclocalfiles): ...these
respectively.
(edit): Adjust for new variable names.
(install-data-local): Don't bother to remove old macro files that
will be overwritten by the installation, and perform a manual
installation of $(aclocalfiles) to preserve timestamps.
(install-exec-hook): Removed.  No need to make versioned links.
(uninstall-hook): No need to remove versioned links, but now we
need to manually remove the manually installed $(aclocalfiles).
* doc/libtool.texi: Remove bogus notes about setting
ACLOCAL_AMFLAGS for versioned libtool installations.
* NEWS: Remove parallel installation item.
2005-04-30 09:30:14 +00:00
Ralf Wildenhues
1e579accc0 * tests/convenience.at: New. Test convenience archives.
* Makefile.am, tests/testsuite.at: Adjust.
* tests/testsuite.at: Reorder tests.  Suspend AT_TESTED.
(PREPARE_TESTS): Define EGREP, host, build, LIBTOOL.
(LT_AT_BOOTSTRAP): Fail if autoreconf fails.
(LT_AT_EXEC_CHECK): New macro for execution of $build binaries.
(LT_AT_TAG): New macro to test tag availability or skip test.
* tests/am-subdir.at, tests/duplicate_members.at, tests/inherited_flags.at,
tests/link-order.at, tests/stresstest.at, tests/template.at:
Adjust.  Use LT_AT_TAG, LT_AT_EXEC_CHECK, AT_KEYWORDS.
Use compiler/linker flags consistently.
* tests/link-order.at: Fix use of AT_DATA, bogus redirection
inside AT_CHECK.
* tests/stresstest.at: Do not use wildcards/regex in symbol files,
they are not portable.  Use -no-undefined on win32.  Fix to ignore
compile/link warnings.
2005-04-27 18:18:10 +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
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
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
Ralf Wildenhues
8b6f5a929f * tests/testsuite.at (LT_AT_BOOTSTRAP): Temporary fix for testing
in-tree libtoolize.
2005-04-07 06:37:23 +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
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
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
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
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
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
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