Commit Graph

2844 Commits

Author SHA1 Message Date
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
d09625f73a * tests/export.at: Exporting is not fully functional with
-retain-symbols-file.  Do not test for failure to link `broken'
in this case.  At the end of the test, SKIP if we are not fully
functional.
2007-02-12 20:50:36 +00:00
Ralf Wildenhues
604750237c * tests/lt_dlexit.at: Add casts and `extern "C"' to let the test
pass with a C++ compiler.
2007-02-12 20:10:00 +00:00
Ralf Wildenhues
19f9aabf89 * libltdl/config/ltmain.m4sh: Remove duplicate marker for
generated shell functions.
2007-02-12 19:57:24 +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
90b9e52da6 * tests/export.at: New test: expose -export-symbols failure
when the input consists solely of convenience archives, and
failure to not export all symbols when the command line length
is exceeded.
* Makefile.am: Adjust.
2007-02-11 16:47:53 +00:00
Ralf Wildenhues
0891f8ccc9 * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New substituted
function `func_lo2o', saving two fork&exec with XSI shells.
* libltdl/config/ltmain.m4sh (func_mode_compile)
(func_mode_install, func_mode_link): Use it for rewrites of
single files.
2007-02-11 16:22:42 +00:00
Ralf Wildenhues
9ebe7b436b * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New function
func_opt_split, for XSI and portable shell.
* libltdl/config/ltmain.m4sh: Move the insertion point for the
configure-generated shell functions to before the first option
parsing loop.  Rewrite the separation of the long options to use
func_opt_split.
2007-02-11 16:19:09 +00:00
Ralf Wildenhues
f3186c9c01 Eliminate roughly a third of the script execution time overhead
for all modes except for link/relink and uninstall/clean.

* libltdl/m4/libtool.m4 (_LT_CONFIG): Remove unused `TEST SUITE
MARKER', obsolete since 2005-04-17.
* libltdl/config/ltmain.m4sh: Likewise, several instances.
(Main): Tear apart, moving individual bits up as early in the
script as possible, to help the shell to avoid parsing the rest.
2007-02-11 16:16:38 +00:00
Ralf Wildenhues
b3b2bcfb74 * doc/libtool.texi: Update copyright years. 2007-02-11 11:11:05 +00:00
Ralf Wildenhues
8faf59a421 * libltdl/config/general.m4sh (sed_double_backslash): Replace
POSIX sed script with a hack that treats up to 10 backslashes
in the input correctly and is portable to Solaris /bin/sed.
2007-02-11 11:07:08 +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
921ef22f1a * tests/lt_dlexit.at: Do not compile main object with libtool. 2007-02-06 23:27:09 +00:00
Ralf Wildenhues
2a05c52174 * tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir
to inner testsuite.
2007-02-06 19:21:29 +00:00
Ralf Wildenhues
ce26488125 * Makefile.am (TESTSUITE_AT): Move destdir.at after
search-path.at so the banners fit better.
2007-02-06 19:19:45 +00:00
Ralf Wildenhues
b9c8379cf9 * tests/convenience.at: Use $CPPFLAGS for compilation.
* tests/deplibs-ident.at: Likewise.
* tests/duplicate_members.at: Likewise.
* tests/inherited_flags.at: Likewise.
* tests/link-order.at: Likewise.
* tests/stresstest.at: Likewise.
* tests/early-libtool.at: Likewise.  Do not quote $CC.
2007-02-06 19:02:27 +00:00
Ralf Wildenhues
713a03c4de * libltdl/ltdl.c (lt_dlexit): Add casts to fix compilation with
C++ compiler again.
2007-02-06 19:00:50 +00:00
Ralf Wildenhues
dd744836ce * tests/destdir.at: Add `libtool' keyword to tests. 2007-02-06 18:56:57 +00:00
Ralf Wildenhues
afd4429046 * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
(_LT_LINKER_BOILERPLATE, _LT_SYS_MODULE_PATH_AIX)
(_LT_COMPILER_C_O): Require _LT_DECL_SED.
* THANKS: Update.
Report by Maciej W. Rozycki.
2007-02-05 19:40:18 +00:00
Ralf Wildenhues
663842ed39 * tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir,
in the new testsuite.
2007-01-29 21:59:58 +00:00
Samuel Thibault
f219156ee1 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ gnu ]
<archive_expsym_cmds>: Behave like Linux, so that
--version-script is used for Hurd as well.
2007-01-29 19:51:19 +00:00
Charles Wilson
51e40f80fd * NEWS: Update for Cygwin changes. 2007-01-28 20:23:57 +00:00
Brian W. Barrett
95e4b2aef7 * libltdl/config/ltmain.m4sh [darwin]: Use otool64 if otool fails. 2007-01-28 15:13:25 +00:00
Dave Brolley
afa7deb340 * libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL
before checking that it is still in the list.
* tests/lt_dlexit.at: New test.
* Makefile.am (TESTSUITE_AT): Adjust.
(check-local): Also depend on libltdl/libltdlc.la.
(check-recursive): Removed, unnecessary use of Automake
internals.
2007-01-28 14:55:01 +00:00
Mike Frysinger
b7a0f78052 * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
`-p' and `-fprofile-*' for GCC.
2007-01-28 14:18:59 +00:00
Ralf Wildenhues
bb9ec35b3c * libltdl/libltdl/lt_system.h: Adjust copyright years. 2007-01-28 13:40:25 +00:00
Charles Wilson
a08ebfdf40 * libltdl/libltdl/lt__private.h (LT_GLOBAL_DATA) [__CYGWIN__]:
Also define on Cygwin.
* libltdl/libltdl/lt_system.h (LT_SCOPE) [__CYGWIN__]: Likewise.
2007-01-28 13:33:27 +00:00
Ralf Wildenhues
f8bc8895c4 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ cygwin, mingw ]
<export_symbols_cmds>: Avoid shell expansion of '/s/.*' through
double expansion, in case there is a 'S:' drive.
Report by Charles Wilson.
2007-01-28 13:03:47 +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
Ralf Wildenhues
baf8599e6f Assume C89 for included headers, and throughout the testsuite.
* NEWS: Update.
* libltdl/argz.c: Do not include strings.h nor memory.h, include
string.h unconditionally.
Patch by Simon Josefsson <jas@extundo.com>.
* libltdl/libltdl/lt__private.h: Likewise.
* libltdl/m4/ltdl.m4 (LTDL_INIT): Do not check for string.h,
strings.h, memory.h.
* tests/cdemo/configure.ac: Assume presence of math.h.
* tests/cdemo/foo.c: Likewise.
* tests/demo/configure.ac: Likewise for math.h, string.h.
Assume 'const'.  Drop obsolete AC_EXEEXT.
* tests/demo/dlmain.c: Likewise.
* tests/demo/foo.c: Likewise.
* tests/depdemo/configure.ac: Likewise.
* tests/depdemo/l4/l4.c: Likewise.
* tests/f77demo/configure.ac: Likewise.  Also drop obsolete
AC_OBJEXT.
* tests/fcdemo/configure.ac: Likewise.
* tests/mdemo/configure.ac: Likewise.
* tests/mdemo/foo1.c: Likewise.
* tests/mdemo/foo2.c: Likewise.
* tests/mdemo2/configure.ac: Likewise.
* tests/pdemo/configure.ac: Likewise.
* tests/pdemo/longer_file_name_dlmain.c:
* tests/pdemo/longer_file_name_foo.c: Likewise.
* tests/pdemo/longer_file_name_foo2.c: Likewise.
* tests/tagdemo/configure.ac: Likewise.
* tests/tagdemo/foo.cpp: Likewise.
2007-01-27 16:45:40 +00:00
Reuben Thomas
a4e7c8d41b * doc/libtool.texi (Inter-library dependencies): Fix typo. 2007-01-23 23:48:55 +00:00
Ralf Wildenhues
af00446d40 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]:
Use `lib -OUT' rather than `lib /OUT' to avoid MSYS path
translation mangling.  Report by Christopher Hulbert.
* THANKS: Update.
2007-01-21 16:15:36 +00:00
Ralf Wildenhues
4d8e7a3784 * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
suffixes matching `[fF][09].', for Fortran.
* tests/suffix.test: Also test F90, F95, f03, F03.
2007-01-21 14:57:58 +00:00
Ralf Wildenhues
d4bb0e52ea * Makefile.am (EXTRA_DIST): Add ChangeLog.2006.
* ChangeLog.2006: New, rotated, from..
* ChangeLog: ..here.
2007-01-21 14:42:58 +00:00
Ralf Wildenhues
0a6649d9e1 * doc/libtool.texi: Typo fixes.
* TODO: Likewise.
2007-01-21 14:34:01 +00:00
Ralf Wildenhues
490d8a6e4f * tests/link-order2.at: Define our override `sin' function with
C binding even if $CC is a C++ compiler.  Skip the test with g++
as its command line driver reorders `-lm'.
* tests/search-path.at: Declare `inflate' with C binding.
* tests/stresstest.at: Avoid unused variable warnings.
2006-12-14 20:59:26 +00:00
Ralf Wildenhues
a22d0bd7ff * tests/link-order2.at: Simplify logic to be a bit more self
documenting.  Suggested by Gary V. Vaughan.
2006-11-07 17:53:22 +00:00
Ralf Wildenhues
84748dd914 * tests/link-order2.at: Add missing $bindir setting. Prevent
compiler optimization of sqrt call.  Fix logic inversion and
add some comments about this stunt.  Add a test with reversed
library link order that should fail if the system has a libm.
Report by Patrick Welche.
2006-10-27 22:57:00 +00:00
Ralf Wildenhues
8b77562fee Assume presence of a config header in all files, to provoke
test failures on all systems.
* libltdl/lt__alloc.c: Likewise.
* libltdl/libltdl/lt__dirent.h: Likewise.
* libltdl/libltdl/lt__glibc.h: Likewise.
* libltdl/libltdl/lt__private.h: Likewise.
* libltdl/libltdl/lt__strl.h: Likewise.
* tests/recursive.at: Use AC_CONFIG_HEADERS.
* tests/nonrecursive.at: Likewise.  Invoke autoheader.
* HACKING: Adjust.
Report by Patrick Welche.
2006-10-26 20:39:04 +00:00
Paul Eggert
a68608ef1f * doc/libtool.texi (Distributing libltdl): In recursive and
nonrecursive mode, a config header is now required.
* libltdl/argz.c: Remove check for HAVE_CONFIG_H, to conform
to gnulib's policy of including config.h unconditionally.
2006-10-24 20:33:38 +00:00
Ralf Wildenhues
aa546b46c0 * tests/link-order2.at: New test to show one case where ordering
of depdepls on the command line matters.
* Makefile.am: Adjust.
2006-10-24 20:30:05 +00:00
Ralf Wildenhues
33755ffbf5 * tests/tagtrace.test: SKIP if `autoconf --trace' exits 63 or 1,
for various possible (valid) error cases.  Also output stderr,
to help with analysis.
2006-10-24 20:25:36 +00:00
Ralf Wildenhues
148027b94c * NEWS: Account for recent multilib fix.
* tests/search-path.at: New test, to provide at least a weak
test.
* Makefile.am: Update.
2006-10-24 20:17:38 +00:00
Ralf Wildenhues
cdf3665cb0 * libtoolize.m4sh (func_fixup_Makefile): Fix missing
substitution for nonrecursive mode.  Remove otherwise-empty
continuation lines in the output file.
Report by Bob Friesenhahn.
2006-10-24 20:07:35 +00:00
Peter O'Gorman
bd9ae5e61b * libltdl/config/ltmain.m4sh: Add -F* to flags that are passed
to the linker.
Reported by SIGOURE Benoit <sigoure.benoit@lrde.epita.fr>
2006-10-22 14:10:33 +00:00
Peter O'Gorman
a3440cbca2 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Improve
multilib support.
Reported by Kate Minola <kate01123@gmail.com> and others.
2006-10-19 05:06:14 +00:00
Eric Blake
65e173f8cb * libltdl/ltdl.c (load_deplibs): Avoid memory leak on failure.
(unload_deplibs): Avoid memory leak on cleanup.
2006-10-13 14:11:18 +00:00
Ralf Wildenhues
997601f675 * libltdl/m4/libtool.m4 (func_mode_compile): Accept files with
extension `.f9?'.
* tests/suffix.test: Test `f95'.
2006-09-20 19:08:22 +00:00
Ralf Wildenhues
e6b8918f7e * libltdl/config/ltmain.m4sh (func_mode_uninstall): Use
`func_source' consistently.
2006-09-20 18:15:06 +00:00
Ralf Wildenhues
786ef35a4e * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
[k*bsd*-gnu ]: Fix brown paper bag: save and restore `libdir'.
2006-09-18 05:49:39 +00:00