Gary V. Vaughan [Tue, 11 Sep 2001 01:26:44 +0000 (01:26 +0000)]
* libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump libltdl version to
1.2.
* libltdl/Makefile.am (libltdl_la_LDFLAGS): Bump libtool library
version info to 4:0:1.
Gary V. Vaughan [Mon, 10 Sep 2001 23:33:26 +0000 (23:33 +0000)]
* libtool.m4: CVS Autoconf guarantees a decent default IFS, so
there is no need for us to preset it anymore.
Be careful not to set IFS="${IFS}$PATH_SEPARATOR" for PATH
splitting, otherwise spaces in directory names will be lost.
Use $PATH_SEPARATOR... don't rely on $ac_path_separator, which was
an autoconf internal until just now, when it disappeared!
* ltmain.in: Default IFS once, at the start.
Reported by Akim Demaille <akim@epita.fr>
Gary V. Vaughan [Thu, 6 Sep 2001 21:54:16 +0000 (21:54 +0000)]
* libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Changing
no_undefined_flag from `-z text' to `-z defs' (see entry below at
2001-04-11 Alexandre Oliva <aoliva@redhat.com>) has a problem.
when linking a shared library with gcc calling /usr/ccs/bin/ld (eg.
the gcc supplied with Solaris 8 companion CD), using the flag
-no-undefined, shared library linking will always fail because of
the unresolved symbols from libgcc.a. Consequently we have to
provide a path to libgcc.a when linking shared libraries in
conjunction with -no-undefined!
Gary V. Vaughan [Thu, 6 Sep 2001 21:23:59 +0000 (21:23 +0000)]
From Michael Pruett <mpruett@engr.sgi.com>:
* libltdl/ltdl.c (find_module): `0' valued arguments to
tryall_dlopen_module() must be explicitly cast to avoid compiler
warnings on some environments.
Robert Boehne [Wed, 5 Sep 2001 19:52:17 +0000 (19:52 +0000)]
* pdemo/Makefile.am (helldl): Automake 1.4 can't find the target
if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
Using both targets to the left of the colon seems to work though!
Gary V. Vaughan [Mon, 3 Sep 2001 22:11:02 +0000 (22:11 +0000)]
* demo/Makefile.am (helldl): Automake 1.4 can't find the target
if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
Using both targets to the left of the colon seems to work though!
Gary V. Vaughan [Sun, 2 Sep 2001 23:00:44 +0000 (23:00 +0000)]
From Albert Chin <china@thewrittenword.com>:
* libtool.m4 (_LT_AC_LANG_C_CONFIG) [aix4*]: Be careful with
shared namespaces for static and shared libs.
(AC_LIBTOOL_DLOPEN_SELF): If all else fails, try dld_link from GNU
DLD.
Gary V. Vaughan [Sun, 2 Sep 2001 17:38:55 +0000 (17:38 +0000)]
Based on a patch from Marius Vollmer <mvo@zagadka.ping.de>:
* NEWS: updated.
* ltdl.m4 (AC_LIB_LTDL): Check for unistd.h.
* ltdl.c: Include unistd.h if it exists.
(LTDL_SEARCHPATH_VAR): Macro to prevent hardcoding
"LTDL_LIBRARY_PATH".
(LTDL_ARCHIVE_EXT): Macro to prevent hardcoding ".la".
(archive_ext): Have only one copy of ".la" in the readonly
segment of the compiled library.
(find_handle_callback): Don't bother trying to dlopen the file if
it doesn't exist.
(find_handle): Don't bother searching for files if no search_path
was supplied.
(file_not_found): A new function to determine whether the last
error was due to a file not found condition.
(try_dlopen): Renamed from lt_dlopen() and changed to have the
same footprint as tryall_dlopen. This involved a minor rewrite of
much of the internals of this function.
(lt_dlopen): A new function wrapped arounf try_dlopen().
(lt_dlopenext): If a file already has a suitable extension, don't
bother adding additional extensions and trying to open those.
Tidy up the rest of the code to prevent continued searching with
an eventual FILE_NOT_FOUND when a genuine failure earlier in the
search process could be legitimately reported.
Robert Boehne [Fri, 31 Aug 2001 16:59:56 +0000 (16:59 +0000)]
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) Fixed a problem
with export_symbols_cmds not being set for CXX tags, and
not being properly set for any tag under AIX/Power.
Ossama Othman [Sun, 19 Aug 2001 20:20:25 +0000 (20:20 +0000)]
* libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Corrected and improved
error message that is displayed when there was a problem
compiling the C++ test program. It still mentioned the now
non-existent `ltcf-cxx.sh' file.
* doc/libtool.texi (LTDL_SET_PRELOADED_SYMBOLS): Removed
parentheses at end of starting "defmac" line, as pointed out by
makeinfo.
Gary V. Vaughan [Thu, 16 Aug 2001 00:48:52 +0000 (00:48 +0000)]
* libltdl/ltdl.c (argz_create_sep): Don't forget to include the
terminating '0' when counting argz_len.
(argz_create_sep): When canonicalizing argz, don't forget to copy
the terminating '0', incase canonicalization has shortened argz.
(argz_stringify): Don't covert the final '0' to a separator.
Gary V. Vaughan [Tue, 14 Aug 2001 23:28:40 +0000 (23:28 +0000)]
* libltdl/ltdl.c (N_ELEMENTS): Deleted. How come nobody noticed
there was no way this could have ever worked?
(lt_dlcaller_set_data): Now that valid caller_ids must be
non-zero, allocate an addition entry in the caller_data vector and
use a zero valued key as the end marker.
(lt_dlcaller_get_data): Iterate up to the end marker in one pass.
Gary V. Vaughan [Tue, 14 Aug 2001 22:45:21 +0000 (22:45 +0000)]
* libltdl/ltdl.c (lt_dlcaller_register): Caller ids are allocated
starting from value `1', so that clients can use a value of zero
to indicate that libltdl has not yet initialised.
Gary V. Vaughan [Mon, 13 Aug 2001 23:11:48 +0000 (23:11 +0000)]
* ltmain.in (exec_cmd): Fix quoting in execute mode so that the
double quotes added by libtool (to prevent lossage with embedded
spaces in filenames etc.) are not interpreted as literals by the
shell.
Gary V. Vaughan [Mon, 13 Aug 2001 17:25:49 +0000 (17:25 +0000)]
* libltdl/ltdl.c (rpl_argz_stringify): New fallback implementation.
* ltdl.m4 (AC_LTDL_FUNC_ARGZ): Test for argz_stringify in libc.
* libltdl/ltdl.c (lt_argz_insertinorder): Renamed from
lt_argz_insert to make room for...
(lt_argz_insert): Wraps argz_insert with libltdl error handling.
(lt_dlpath_insertdir): Insert new path elements into an
argzized path.
(lt_dlinsertsearchdir): New function to insert new search
directories anywhere into user_search_path using the above.
(lt_dladdsearchdir): Rewritten to use lt_dlpath_insertdir.
* libltdl/ltdl.h (lt_dlinsertsearchdir): Prototype for export.
* doc/libtool.texi (Libltdl interface): Document it.
* NEWS: Updated,
Gary V. Vaughan [Sun, 5 Aug 2001 12:03:06 +0000 (12:03 +0000)]
From Brad <brad@comstyle.com>:
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]: OpenBSD
can build modules without a `lib' prefix and version number.
Move the deplibs check code from here...
(AC_DEPLIBS_CHECK_METHOD): ...to here.
Gary V. Vaughan [Sun, 5 Aug 2001 10:57:03 +0000 (10:57 +0000)]
* libltdl/ltdl.c: Fixed several careless mistakes in the
foreach_dirinpath support functions.
(foreach_dirinpath): Walk path elements with the argz API.
Gary V. Vaughan [Sat, 4 Aug 2001 19:57:09 +0000 (19:57 +0000)]
From Sedi Master Albert Chin <china@thewrittenword.com>:
* libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Replace the awk invocation
with an equivalent bit of sed wizardry.
Ossama Othman [Fri, 3 Aug 2001 18:30:09 +0000 (18:30 +0000)]
* libtool.m4 (AC_LIBTOOL_SETUP): Require Autoconf-2.50 via the
AC_PREREQ autoconf macro since the new libtool macros utilize
macros from that version of Autoconf.
Gary V. Vaughan [Wed, 1 Aug 2001 06:50:16 +0000 (06:50 +0000)]
* ltdl.m4: Bump serial number.
General reformat and tify up in line with Autoconf-2.50 support.
(AC_LTDL_FUNC_ARGZ): Test for system implementations of a
handful of argz API calls, the error_t type, and the argz.h
header.
* libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump version number.
* libltdl/ltdl.c (rpl_argz_append, rpl_argz_create_sep.
rpl_argz_insert, rpl_rgz_next): Fallback implementations of
the similarly named functions for machines that don;t use glibc.
(lt_dlrealloc): New memory function pointer that can be set by
the client. Defaults to rpl_realloc, which in turn uses only
lt_dlmalloc and lt_dlfree.
(LT_EMALLOC, LT_EREALLOC): Set internal out-of-memory error
inside the functions called by these new macros. Simplified all
callers by removing explicit client error reporting.
(memmove): Fallback implementation of overlap safe memory copy
function.
(tryall_dlopen): Factorized common code into...
(tryall_dlopen_module): ...this new helper function.
(canonicalize_path): Changed function signature to return success
or failure. Updated all callers.
(foreachfile_callback): Make use of argz API.
(LT_DLSTRLEN): Moved from here...
* libltdl/ltdl.h (LT_STRLEN): ...to here. Updated all callers.
(lt_dlrealloc): Declare new memory management handle.
Gary V. Vaughan [Mon, 30 Jul 2001 19:10:36 +0000 (19:10 +0000)]
* libtool.m4 (AC_LIBTOOL_SETUP): Use Autoconf-2.50 era
quadrigraphs and AC_HELP_STRING to bring AC_ARG_WITH/ENABLE
macros up to date.
(_LT_AC_LOCK): Ditto.
(_LT_AC_TAGCONFIG): Ditto.
(AC_PROG_LD): Ditto.
(AC_ENABLE_SHARED): Ditto. And eliminate the last remaining
changequote invocations.
(AC_ENABLE_STATIC): Ditto. And Ditto.
(AC_ENABLE_FAST_INSTALL): Ditto. And Ditto.
* ltdl.m4 (AC_LTDL_ENABLE_INSTALL): Use Autoconf-2.50 era
quadrigraphs and AC_HELP_STRING to bring AC_ARG_ENABLE
macro up to date.
* NEWS: Updated.
Gary V. Vaughan [Mon, 30 Jul 2001 01:39:33 +0000 (01:39 +0000)]
* libtool.m4 [UnixWare7, OpenUNIX8]: Initial support for
UnixWare7 and OpenUNIX8. Accept these identifiers from the
latest config.guess/config.sub as pseudonyms for sysv5uw[78].
* NEWS: Updated.
Reported by Boyd Lynn Gerber <gerberb@zenez.com>
Gary V. Vaughan [Sun, 29 Jul 2001 16:35:50 +0000 (16:35 +0000)]
* tests/sh.test: Add a new test to enforce X as the fill
character in `test "X...'.
Beef up the `test' tests to also check `test -.' and `test ! -.'
phrases for compliance.
* ltmain.in: Fix quoting problems uncovered by the new tests.
Steve Ellcey [Sun, 29 Jul 2001 14:09:03 +0000 (14:09 +0000)]
* libtool.m4 (lt_cv_sys_global_symbol_to_cdecl): Change it from
"extern char" to "extern int" so that GCC 3.0 won't complain and
refuse to compile programs containing "extern char main()".
Gary V. Vaughan [Sun, 29 Jul 2001 12:13:48 +0000 (12:13 +0000)]
From Guido Draheim <Guido.Draheim@tek.com>:
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Support
cross compilation to mingw by allowing `:' or ';' as a path
separator.
* NEWS: Updated.
Robert Boehne [Mon, 23 Jul 2001 21:22:03 +0000 (21:22 +0000)]
* libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG, AC_LIBTOOL_PROG_LD_SHLIBS)
[aix4*, aix5*]: Fixed a mispelled binder option under AIX.
The option to throw errors for unresolved external references is
-bernotok, not -bnoerok.
Gary V. Vaughan [Mon, 23 Jul 2001 21:04:29 +0000 (21:04 +0000)]
From Erik Lindahl <E.Lindahl@chem.rug.nl>
* libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Used on aix to discover
the compiler's default library search path so that the MPI
compiler suite is not hosed by the previously hardcoded path.
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [aix4*, aix5*]: Use it.
Robert Boehne [Mon, 23 Jul 2001 16:41:49 +0000 (16:41 +0000)]
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix tag support
problems with CXX variables being overwritten by the individual
macros.
(AC_LIBTOOL_PROG_CC_C_O): Ditto.
(AC_LIBTOOL_PROG_COMPILER_PIC): Ditto.
(AC_LIBTOOL_LANG_CXX_CONFIG): Moved call to
AC_LIBTOOL_SYS_HARD_LINK_LOCKS after the call to
AC_LIBTOOL_PROG_CC_C_O as it depends on the result.
(AC_LIBTOOL_LANG_GCJ_CONFIG): Ditto.
(AC_LIBTOOL_LANG_C_CONFIG): Ditto.
(AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Used the macro
_LT_AC_TAGVAR to ensure the correct variable is being queried.
(AC_LIBTOOL_SYS_DYNAMIC_LINKER): Changed the naming of shared
objects under IRIX back to what it was in the MLB.
Mark Kettenis [Mon, 23 Jul 2001 00:30:00 +0000 (00:30 +0000)]
* libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN) [gnu*]: Remove spurious
"break" and bogus comment
(_LT_AC_LANG_CXX_CONFIG): Add support for the Hurd.
* ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Add support for the Hurd.
Gary V. Vaughan [Mon, 16 Jul 2001 19:11:34 +0000 (19:11 +0000)]
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix ia64 AIX
run-time-linking when not using gcc.
(AC_LIBTOOL_LANG_CXX_CONFIG): Ditto.
Reported by Dan McNichol <mcnichol@austin.ibm.com>
Gary V. Vaughan [Thu, 12 Jul 2001 19:48:49 +0000 (19:48 +0000)]
From Stefan Ondrejicka <ondrej@idata.sk>:
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [cygwin*]: Make
sure that /lib/w32api is searched for system libraries to
match recent versions of cygwin.
* NEWS: Updated.
Dan McNichol [Thu, 12 Jul 2001 18:20:28 +0000 (18:20 +0000)]
From albert chin <china@thewrittenword.com>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix AIX
run-time-linking when using gcc.
(AC_LIBTOOL_LANG_CXX_CONFIG): Ditto.
Gary V. Vaughan [Wed, 11 Jul 2001 22:27:31 +0000 (22:27 +0000)]
* libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
solaris]: output_verbose_link_cmd have unquoted `*' in case
statements for these architectures. Be sure to quote them
with a sed expression before passing to eval.
Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
Robert Boehne [Mon, 9 Jul 2001 21:36:00 +0000 (21:36 +0000)]
From Michael Elizabeth Chastain <chastain@cygnus.com>:
* libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Set max_cmd_len
to a maximum of 512Kb, as it seems some HPUX 11.0 systems
have trouble with 1MB.
Robert Boehne [Mon, 9 Jul 2001 19:11:26 +0000 (19:11 +0000)]
* libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Set max_cmd_len
to -1 on hurd, it has no command line argument limits.
* ltmain.in Handle max_cmd_len=-1 for systems that don't have
command line argument limits.
Gary V. Vaughan [Fri, 6 Jul 2001 01:08:58 +0000 (01:08 +0000)]
* libtool.m4 (_LT_AC_LANG_C_CONFIG): Revert to 1.3.x
sematics, and always build static libs when the host machine
cannot build shared libs. Even if static libs were explicitly
disabled.
Gary V. Vaughan [Mon, 2 Jul 2001 01:21:30 +0000 (01:21 +0000)]
Cleanup of libltdl:
* ltdl.c (lt_dladderror): Don't use `index' as a variable name,
since it is a function on BSD based boxes.
(lt_dlseterror): Ditto.
(lt_dlexit): Remove unused errormsg declaration.
(foreach_dirinpath): Make sure filename is initialised.
(find_handle): Return NULL for a failed search.
(foreachfile_callback): Don't reuse data2 symbol from prototype
in func declaration to prevent symbol shadowing.
* ltdl.h (lt_dlmutex_seterror): Don't use `error' as a parameter
name, since it is a function on glibc boxes.
Gary V. Vaughan [Sat, 30 Jun 2001 20:31:34 +0000 (20:31 +0000)]
Merge test improvements from multi-language-branch:
* tests/defs: Find and set the value of CC probed by libtool.m4
* tests/link-2.test: Use a .lo wrapper script, and the value of
CC set by defs instead of hardcoding gcc.
* tests/link.test: Use the value of CC set by defs instead of
hardcoding gcc.
* tests/quote.test: Ditto.
* tests/suffix.test: Ditto.
Gary V. Vaughan [Sat, 30 Jun 2001 02:39:18 +0000 (02:39 +0000)]
* libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Always set
lt_prog_compiler_wl to `-Wl'.
Reported by Albert Chin-A-Young <china@thewrittenword.com>
Gary V. Vaughan [Sat, 30 Jun 2001 00:40:38 +0000 (00:40 +0000)]
* ltdl.m4 (AC_LTDL_DLLIB) [sco3.2*]: When searching for a dlopen
implementation, and adding `-ldl' has failed, try linking a call
to dlopen, #including dlfcn.h, and without -ldl. On sco3.2 the
header files redefines the interface symbols to point at the
implementation symbols in libc.
Reported by "Golubev I. N." <gin@mo.msk.ru>
Tim Van Holder [Fri, 29 Jun 2001 22:56:50 +0000 (22:56 +0000)]
General cleanup of autoconf-2.50 upgrade:
* configure.ac: Mark as needing autoconf-mode in
emacs. Pass arguments to AC_INIT.
* cdemo/configure.ac: Ditto.
* demo/configure.ac: Ditto.
* depdemo/configure.ac: Ditto.
* libtldl/configure.ac: Ditto.
* mdemo/configure.ac: Ditto.
* pdemo/configure.ac: Ditto.
* tagdemo/configure.ac: Ditto.
* ltdl.m4: Mark as needing autoconf-mode in
emacs.
* libtool.m4: Mark as needing autoconf-mode in
emacs. Don't add () to AS_MESSAGE_LOG_FD.
* libltdl/configure.ac: Use config-h.in as
template for config.h.
* tagdemo/configure.ac: Drop the AC_DIAGNOSTIC. Move
AC_LANG([C++]) after the OBJEXT/EXEEXT check.
Gary V. Vaughan [Fri, 29 Jun 2001 22:25:17 +0000 (22:25 +0000)]
From Tim Van Holder <tim.van.holder@pandora.be>
* libltdl/Makefile.am (OBJECTS): This was an implicit variable.
instead state the list of object variables explicitly.
Gary V. Vaughan [Fri, 29 Jun 2001 17:12:39 +0000 (17:12 +0000)]
From Bruno Haible <haible@ilog.fr>
* libtool.m4: undefine the m4 builtin `symbols', so that the
string `symbols' can be used in the rest of the code without
causing errors with autoconf-2.13.
Gary V. Vaughan [Fri, 29 Jun 2001 02:35:56 +0000 (02:35 +0000)]
* mdemo/Makefile,am (foo1_la_LIBADD): Add libsub.la, since foo1
does use symbols from libsub.la -- only platforms that allow
undefined symbols in libraries were able to cope with this
previously.
Reported by Robert Collins <robert.collins@itdomain.com.au>