Commit Graph

2814 Commits

Author SHA1 Message Date
Ralf Wildenhues
703011cac4 * bootstrap: Also set GREP, FGREP, EGREP, LN_S, when creating a
preliminary ltmain.sh script.
2007-02-24 14:56:18 +00:00
Ralf Wildenhues
bb04acdad8 * doc/libtool.texi (Test descriptions): Track the grand test
suite renaming from 2003-10-14 in the tests documentation.
assign.test is merged into sh.test.  Fix description of sh.test.
* tests/sh.test: Likewise.
2007-02-24 14:49:53 +00:00
Ralf Wildenhues
a0cd232cc1 * doc/libtool.texi (LT_INIT): Fix wording of intro a bit.
<shared, static>: Also describe these default LT_INIT options.
<AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL>
<AC_DISABLE_FAST_INSTALL>: Mention deprecated macro names,
including the respective LT_INIT replacement.
<AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_ENABLE_SHARED>
<AC_ENABLE_STATIC>: Document, un-deprecate.  Suggest the
respective LT_INIT replacement.
<AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_ENABLE_SHARED>
<AM_ENABLE_STATIC>: Document deprecated aliases.
(Distributing libltdl) <AC_WITH_LTDL, AC_LIBLTDL_INSTALLABLE>
<AC_LIBLTDL_CONVENIENCE>: Document deprecated aliases.
* libltdl/m4/ltoptions.m4 (AM_ENABLE_SHARED, AM_DISABLE_SHARED)
(AM_ENABLE_STATIC, AM_DISABLE_STATIC): Make these AU_ALIASes of
the respective AC_* macros, so we do not recommend LT_INIT(*) in
this case.
(AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC)
(AC_DISABLE_STATIC): Un-deprecate these.  Remove now-superfluous
aclocal-1.4 backwards compatibility comments.
2007-02-24 08:52:13 +00:00
Ralf Wildenhues
a4957af572 * tests/link-order2.at: Rewrite completely. Do not use `sin'
from the math library, there are too many problems with this.
Instead, use a self-written library, install it without the
Libtool library file, to emulate a native library in a system
directory, and adjust $shlibpat_var.  Try overriding its symbol.
Further, also try an installed `wrong' binary.
Avoid failing test bits on AIX without runtimelinking and on
Darwin in some cases, SKIP at the end in this case.
Analysis by Peter O'Gorman.
2007-02-24 08:49:24 +00:00
Ralf Wildenhues
40c41e79e6 * doc/notes.texi: Mention MACOSX_DEPLOYMENT_TARGET issue.
* tests/template.at: Only skip those tests failing on Darwin
if `-flat_namespace' is used by libtool.  In that case, SKIP
at the end.  Analysis by Peter O'Gorman.
2007-02-24 08:46:19 +00:00
Ralf Wildenhues
265432e423 Fix -export-symbols and -export-symbols-regex for links that
exceed the command line length and use convenience archives.

* libltdl/config/ltmain.m4sh (func_mode_link): Avoid grepping a
nonexistent file if using reloadable objects.  Do not create a
linker script nor a linker input file if no objects are passed.
Apply export_symbols_regex in case the command line length is
exceeded.
2007-02-23 21:52:50 +00:00
Ralf Wildenhues
b3709c2f9d * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
<compiler_needs_object>: New tag variable.  Default to `no'.
(_LT_LINKER_SHLIBS) [ linux ]: Set it to yes for Sun C 5.9.
(_LT_LANG_CXX_CONFIG): Also default it to `no'.
[ linux ]: Set it to `yes' for Sun C++ 5.9.
* libltdl/config/ltmain.m4sh (func_mode_link): If we link
no objects but only convenience archives into a library,
force expansion if `compiler_needs_object' is yes.
For creating a linker input filelist due to long cmdline,
extract the first object if `compiler_needs_object' is yes.
* doc/libtool.texi (libtool script contents): Document it.
Fixes test failures of Sun compilers on GNU/Linux.
Report by Terry D. Dontje.
2007-02-23 21:11:25 +00:00
Ralf Wildenhues
8ef9778c39 * libltdl/config/ltmain.m4sh (func_mode_link): Avoid setting
`$libobjs' to a single space; set it to empty in that case.
2007-02-23 20:43:50 +00:00
Ralf Wildenhues
c4028959cf * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [ osf5 ]:
On Tru64 5.1, const relocations do not work well.  Omit the
const here.  Fixes failure of demo-make after demo-shared with
link editor error `seg_info_ptr: Couldnt find a seg type 2'.
2007-02-23 19:45:42 +00:00
Ralf Wildenhues
60ed7162c9 * Makefile.am (doc_libtool_TEXINFOS): Renamed from...
(libtool_TEXINFOS): ...this, to fix dependencies.  Omit from
EXTRA_DIST.
(check-local): Also depend upon $(bin_SCRIPTS).
2007-02-23 18:27:34 +00:00
Ralf Menzel
3fa76ea860 * libltdl/config/general.m4sh (sed_double_backslash): Fix
hacky sed script to avoid limitations but retain portability to
Solaris /bin/sed.  Remove old obsolete cruft.
2007-02-23 18:18:34 +00:00
Ralf Wildenhues
14e51abfa8 * libltdl/config/ltmain.m4sh (func_mode_link): Fix the check for
convenience archives when warning about linking against static
libraries: test against $deplib rather than empty $lib.
2007-02-22 19:53:14 +00:00
Ralf Wildenhues
82b619a320 * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Fix detection of new enough
libltdl by actually checking for the declaration of
lt_dlinterface_register in ltdl.h with AC_CHECK_DECL.
Remove redundant configure output line.
2007-02-19 09:10:32 +00:00
Ralf Wildenhues
4cda6b5b78 * tests/template.at: Reformat, add M4 quoting. Use $LDFLAGS
consistently for link mode.
2007-02-19 08:57:07 +00:00
Ralf Wildenhues
8cebf63060 * tests/static.at: Use the right names for the broken libs. 2007-02-18 15:07:41 +00:00
Ralf Wildenhues
42850eea47 * tests/deplibs-ident.at [aix, hppa*-*-hpux*, interix, openbsd]:
Do not XFAIL, on these systems we happen to pass.
* tests/duplicate_deps.at [aix]: Likewise.
2007-02-17 15:21:36 +00:00
Ralf Wildenhues
1fb049828e * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux |
k*bsd*-gnu ]: Fix eval quoting in the DT_RUNPATH test.
2007-02-17 15:15:23 +00:00
Ralf Wildenhues
d4bb0fbc14 * HACKING: Update. 2007-02-17 09:59:05 +00:00
Ralf Wildenhues
d747b79187 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ linux ]
<whole_archive_flag_spec>: For Sun C/C++ 5.9, do not add
/dev/null as dummy object, it fails with GNU ld version
2.16.91.0.7-amd-sles9.  Report by Terry D. Dontje.
* THANKS: Update.
2007-02-17 08:22:59 +00:00
Ralf Wildenhues
79e33032b4 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ osf4, osf5 ]
<archive_expsym_cmds>: Use `${wl}-input' not `-input', for
cc.  Could use `-input_to_ld'.
(_LT_LANG_CXX_CONFIG) [ osf4, osf5 ] <archive_expsym_cmds>:
Use `${wl}' instead of `-Wl,', for consistency.
2007-02-14 18:55:24 +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
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