Commit Graph

125 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
Ralf Wildenhues
8f951c011f * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[ openbsd ]: Set `hardcode_direct_absolute', to prefer rpath
over putting absolute file names in NEEDED entries.
* NEWS: Update.
Reported by Jake Meuser and others.
2006-09-17 19:30:15 +00:00
Ralf Wildenhues
a47ab0fc66 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
[ k*bsd*-gnu ]: Test if ld sets DT_RUNPATH; in that case, set
shlib_overrides_runpath to `yes'.  Fixes test failure of new
test on Gentoo GNU/Linux.
2006-09-17 19:27:14 +00:00
Kurt Roeckx
956f27f44c * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG) [k*bsd*-gnu]: kfreebsd*-gnu and
knetbsd*-gnu behave like linux-gnu.
* libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
* libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK)
[x86_64-*kfreebsd*-gnu]: Add 32/64 bit bi-arch support.
* NEWS: Update.
2006-08-25 15:04:30 +00:00
Ralf Wildenhues
3f7724490d * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ mingw,pw32 ]:
If `file' is present, use `func_win32_libid' rather than
`objdump -f', to facilitate cross-compilation.
Reported by Pierre Ossman <ossman@cendio.se>.
2006-08-25 14:56:35 +00:00
Eric Blake
d8495dfccc * libltdl/m4/ltdl.m4 (LTDL_INIT): Avoid macros marked obsolete in
latest autoconf.
* libltdl/m4/libtool.m4 (_lt_cv_sys_global_symbol_pipe): Work in
spite of -Wmissing-prototypes.
* libltdl/libltdl/lt__dirent.h: Rewrite to accomodate loss of
AC_HEADER_DIRENT.
2006-08-22 17:51:03 +00:00
Eric Blake
4039ebf311 * libltdl/m4/libtool.m4: Avoid space-tab. 2006-08-22 17:30:42 +00:00
Ralf Menzel
f89a71b681 * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix issues
with previous patch. for ... do' line is superflous. Need
_LT_TAGVAR not _LT_AC_TAGVAR, should be for both linux and
solaris with Sun compiler.
2006-08-03 14:06:36 +00:00
Albert Chin
67311504b6 * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
Don't set $postdeps to "-lCstd -lCrun" if
"-library=stlport4" set in CXXFLAGS as stlport4 C++
library incompatible with Cstd C++ library. Use
'-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
2006-08-02 13:35:30 +00:00
Eric Blake
5f5c7b9eb8 * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD, LT_OUTPUT):
s/recognise/recognize/.
2006-07-28 17:01:05 +00:00
Eric Blake
dad710f891 * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD): Search for dlopen without
depending on -ldl, required by cygwin 1.5.20.
2006-07-22 04:08:46 +00:00
Ralf Wildenhues
ccafe7f927 * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
( _LT_LINKER_BOILERPLATE): Rewrite to not use unchecked
`printf', for old systems like SunOS 4.1.
(_LT_COMPILER_OPTION, _LT_LINKER_OPTION)
(_LT_COMPILER_C_O, _LT_LINKER_SHLIBS): Likewise.
(_LT_LANG_C_CONFIG): Adjust: use literal newlines in
`lt_simple_compile_test_code' and `lt_simple_link_test_code'.
(_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
(_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Likewise.
Bug report by Bruce Becker and Mark Andrews.
2006-06-24 04:58:58 +00:00
Charles Wilson
e94e4f2249 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ cygwin ]:
define DLL_EXPORT for PIC objects on cygwin.
2006-06-01 18:39:24 +00:00
Albert Chin
e4f54300ae * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
[ aix4*, aix5*, hpux10*, hpux11* ]: Set hardcode_direct_absolute
for CXX tag too!
2006-05-24 11:54:59 +00:00
Ralf Wildenhues
4ce74c3baf * libltdl/m4/libtool.m4: Bump serial, necessary because of
_LT_CHECK_SHELL_FEATURES changes.
2006-05-18 16:32:21 +00:00
Ralf Wildenhues
5809e5cd3a Fix mode=compile time regression of CVS HEAD over branch-1-5.
* libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Rename to...
(_LT_CHECK_SHELL_FEATURES): ...this.
(_LT_SETUP): Adjust caller.
(_LT_CHECK_XSI_SHELL): New libtool variables `lt_unset',
`SP2NL', `NL2SP', to contain results from tests for unset,
taken from AS_BOURNE_COMPATIBLE, and ASCII vs EBCDIC, taken...
* libltdl/config/general.m4sh: ...from here, and used...
* libltdl/config/ltmain.m4sh: ...here everywhere now.
* (AS_SHELL_SANITIZE): Replace by faster, actually necessary
part of its expansion, taken from current Autoconf CVS.  Do not
save and set all locale variables any more, but only LANG,
LC_ALL, LC_CTYPE, LC_COLLATE, LC_MESSAGES.
(func_mode_execute): Adjust.
* libltdl/m4/libtool.m4 (_LT_CONFIG): No need to unset CDPATH
here any more.
* libtoolize.m4sh: Compute `SP2NL' and `NL2SP' here, too.
2006-05-18 05:43:01 +00:00
Gary V. Vaughan
33f72b2ff5 * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
_LT_LANG_FC_CONFIG), tests/link-order.at
[ aix4*, aix5*, hpux10*, hpux11* ]: rename
hardcode_direct_static to hardcode_direct_absolute.
* doc/libtool.texi (libtool script contents): Adjust.
2006-05-18 00:10:37 +00:00
Ralf Wildenhues
4cd8dffdfe * libltdl/m4/libtool.m4 (_LT_LINKER_OPTION): Require
_LT_DECL_SED.
(_LT_CMD_GLOBAL_SYMBOLS, _LT_LINKER_SHLIBS): Likewise.
* libltdl/m4/ltdl.m4 (LTDL_INIT): Likewise.
(_LT_DECL_SED): Set $Xsed here, using $SED.  Moved from...
(_LT_SETUP): ...here.
Report by Eric Blake.
2006-05-17 20:11:03 +00:00
Gary V. Vaughan
1560781d8a * libltdl/m4/libtool.m4 (LT_AC_PROG_SED): Declarations for
compatibility with old versions of libtool, and old versions
of aclocal.
2006-05-17 17:05:07 +00:00
Albert Chin-A-Young
e73b15356c * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
_LT_LANG_FC_CONFIG) [ aix4*, aix5*, hpux10*, hpux11* ]:
Introduce a new variable, hardcode_direct_static, which
would ignore hardcode_direct=yes if the result would create a
static library dependency. Static library dependencies are
immune to $shlibpath_var.
* tests/link-order.at: Take hardcode_direct and
hardcode_direct_static into consideration when testing
link order.
2006-05-17 14:28:40 +00:00
Ralf Wildenhues
216754e101 Eliminate quadratic scaling in argument parsing loop, for
shells that understand `var+=value', such as Bash-3.1, or Zsh.

* libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Test whether
the shell understands `var+=value'.
(_LT_PROG_XSI_SHELLFNS): Define `func_append' based on this.
* config/ltmain.m4sh (func_mode_link): Use `func_append' for
compile_command, finalize_command, libtool_args, libobjs,
non_pic_objects.
2006-05-17 01:58:40 +00:00
Bruno Haible
a84c618b61 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ linux ]:
Add support for Sun C 5.9, Sun C++ 5.9, and Sun Fortran 8.3 on
GNU/Linux.
* NEWS: Update.
2006-05-15 16:40:43 +00:00
Albert Chin-A-Young
99ad8411ba * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[ aix ]: $hardcode_direct is set twice.
2006-05-14 08:43:58 +00:00
Ralf Wildenhues
22e9ff0862 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]:
Avoid warning when "parsing" `/etc/ld.so.conf' and empty
`/etc/ld.so.conf.d'.
Reported by Orion Poplawski <orion@cora.nwra.com>.
2006-03-28 18:11:28 +00:00
Ralf Wildenhues
dccb94d892 * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Sync with gnulib: If we
define `error_t', also define `__error_t_defined', so argp.h
will not typedef the former.
2006-03-25 11:05:02 +00:00
Ralf Wildenhues
9e38ec274b * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [ freebsd ]
[ dragonfly ]: Set libltdl_cv_sys_dlopen_deplibs to yes.
Fixes excessive lt_dlopen times on these systems.
* NEWS, THANKS: Update.
Bug reported by Peter Jeremy <peterjeremy@optushome.com.au>,
patch by Joerg Sonnenberger <joerg@netbsd.org>.
2006-03-23 22:39:41 +00:00
Ralf Wildenhues
a35265f704 * libltdl/m4/libtool.m4 (AC_PROG_SED): Do not forget to reset
IFS even in case of empty `$PATH'.
2006-03-17 04:20:17 +00:00
Ralf Wildenhues
d465ae7036 * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
[ freebsd, dragonfly ]: Fix 1.5.22 regression caused by too
strict $host_os match that stopped DragonFly from working.
* THANKS: Updated.
Reported by Jeremy C. Reed <reed@reedmedia.net>,
patch by Todd Vierling <tv@duh.org>.
2006-03-16 16:56:34 +00:00
Ralf Wildenhues
bba62bd35b * libltdl/m4/libtool.m4 (AC_PROG_SED): m4_defun this rather
than AC_DEFUN, so that old aclocal does not pick this up.
2006-02-09 16:04:01 +00:00
Ralf Wildenhues
8d0a9a99da * libltdl/m4/libtool.m4 [ solaris ] (_LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG) < whole_archive_flag_spec >:
Fix this once and for all, for both the SUN compiler suite
(cc/CC/f77/f90/f95) and GCC.
Reported by Yuri Pukhalsky <pooh@cryptopro.ru>.
2006-02-03 20:03:54 +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
03d1de542c * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): Fix my forward port
error of last commit.
2006-01-13 10:07:33 +00:00
Leif Ekblad
e425114109 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC): Added support for
RDOS.
* NEWS: Updated.
2006-01-12 22:02:56 +00:00
Ralf Wildenhues
83b8d935cc * libtoolize.m4sh, libltdl/config/general.m4sh,
libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
libltdl/m4/libtool.m4: Bump copyright years.
2006-01-11 17:24:56 +00:00
Kean Johnston
3c3e9801c3 * libltdl/m4/libtool.m4 (LT_PATH_NM): Also look in
/usr/ccs/bin/elf, for SCO.  If we are not cross-compiling, but
$ac_tool_prefix is set, also try an un-prefixed `nm'.
2005-12-18 13:09:45 +00:00
Ralf Wildenhues
cba6430b31 * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
<hardcode_shlibpath_var>: Initialize, to `unsupported'.
2005-12-18 12:56:16 +00:00
Marc Espie
a71c53ae8b * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
[ openbsd ] <sys_lib_dlsearch_path_spec>: Set to `/usr/lib'
only.
2005-12-18 12:06:51 +00:00
Ralf Wildenhues
8f31b780b5 * libltdl/m4/lt~obsolete.m4: Update documentation for aclocal
versions before 1.7.  Change all macros to use AC_DEFUN instead
of AU_DEFUN.
* (_AC_PROG_LIBTOOL, AC_LIBTOOL_SETUP, _LT_AC_CHECK_DLFCN)
(AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_TAGCONFIG)
(AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_CXX, _LT_AC_LANG_F77)
(_LT_AC_LANG_GCJ, AC_LIBTOOL_RC, AC_LIBTOOL_LANG_C_CONFIG)
(_LT_AC_LANG_C_CONFIG, AC_LIBTOOL_LANG_CXX_CONFIG)
(_LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_LANG_F77_CONFIG)
(_LT_AC_LANG_F77_CONFIG, AC_LIBTOOL_LANG_GCJ_CONFIG)
(_LT_AC_LANG_GCJ_CONFIG, AC_LIBTOOL_LANG_RC_CONFIG)
(_LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG)
(_LT_AC_FILE_LTDLL_C): Add new fake macros for these, they
were used at one time in libtool.m4.
2005-12-16 16:02:43 +00:00
Peter O'Gorman
436146c7db * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_LINKER_SHLIBS)
[darwin]: Use $LTCC $LTCFLAGS to check for -single_module.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2005-12-08 04:17:02 +00:00
Peter O'Gorman
8a3f305377 * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4 [darwin]:
Use -single_module by default when linking shared libraries. Can
be overridden by specifying -multi-module or by setting the env
var LT_MULTI_MODULE before configure.
* libltdl/m4/libtool.m4 (archive_expsyms_cmds) [darwin]:
Simplify.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2005-12-07 13:23:14 +00:00
Peter O'Gorman
efbbaaaf16 * libltdl/m4/libtool.m4 [darwin]: Use $LTCC $LTCFLAGS to create
reloadable objects.
2005-11-27 15:18:09 +00:00