From c23e0a74dbafcadaba8e403209ffbbda6ebcab0f Mon Sep 17 00:00:00 2001 From: Thomas Tanner Date: Thu, 3 Dec 1998 20:49:31 +0000 Subject: [PATCH] *** empty log message *** --- ChangeLog | 4377 ++++++++++++++++++++++++++------------------------- ltconfig.in | 18 +- ltmain.in | 339 ++-- 3 files changed, 2365 insertions(+), 2369 deletions(-) diff --git a/ChangeLog b/ChangeLog index 038a33187..51fc75de6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,2184 +1,2193 @@ -1998-12-02 Gary V. Vaughan - - * libltdl/configure.in: look for string.h or else strings.h, and - also check for ANSI strrchr() function. Fix `undescore before - symbols' macro to not rely on a.out (cygwin uses a.exe!). Fix - `underscore for dlsym' to set cache variable properly, not just in - environment of AC_DEFINE(NEED_USCORE). - * libltdl/ltdl.h (__ptr_t): for K&R compatibility using char*. - * libltdl/ltdl.c (strrchr): fallback function incase none is - defined in libc. - (trim, ltdlopen): replace rindex with ANSI strrchr. - Add static function declarations so that we get type checking with - ANSI compilers. Use __ptr_t instead of void*. - -1998-12-01 Thomas Tanner - - * ltconfig.in: added -export-symbols support for GNU ld and - Solaris (untested), archive_sym_cmds for -export-symbols - * doc/libtool.texi, ltmain.in: -export-symbols is now - independent from -export-dynamic and does not work for modules - anymore - * ltmain.in: added some checks for -export-symbols - * mdemo/modules/Makefile.am: replaced -export-symbols with - -export-dynamic since it doesn't work for modules - -1998-12-01 Gary V. Vaughan - - * README: Updated homepage pointer to gnu libtool page. - - * ltconfig.in (ltdll.c): update the ltdll.c file for cygwinb20. - Based on code from Mumit Khan . - (archive_cmds): correct typo libtool.c->ltdll.c. Update shell - commands for cygwin32. - - * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): New macro; find out - whether compiled symbols have an extra leading underscore. - (AM_SYS_NM_PARSE): New macro (converted to m4 from ltconfig.in); - find a sed expression to parse global symbols from the output of - $NM. - (AM_PROG_LIBTOOL): require AM_SYS_NM_PARSE and - AM_SYS_SYMBOL_UNDERSCORE. - * demo/dlmain.c (main): Remove a single leading underscore from - compiled symbol names if necessary. - -1998-12-01 Alexandre Oliva - - * config.guess, config.sub: imported from autoconf pre-2.13 - -1998-11-27 Gary V. Vaughan - - * libtool (AM_PROG_LD): Oops... we need to know the host_os for - the changes below. I'm not sure whether mingw32 and os2 support - UNC paths, if they did we wouldn't need the check, we could use - UNC paths on all three; or if the bug with $LD not being - shell-meta escaped was fixed, we could use '\\' separators on all - three. AC_REQUIRE'ed AC_CANONICAL_HOST. - - * libtool.m4 (AM_PROG_LD): Cannonicalize the absolute path for the - ld program; The order is funny to provide canonicalization to - paths with '\\' separators as well as '/'. - * ltconfig.in: ditto. - - * AUTHORS: Added myself as a co-maintainer. - - * ltconfig.in (archive_cmds): The `;\' in a compound statement is - expanded wrongly for cygwin32, mingw32, aix3 and aix4. Changed to - `;'. - -1998-11-25 Alexandre Oliva - - * libtool.spec (URL): point to www.gnu.org - (Source): point to ftp.gnu.org - - * Makefile.am (EXTRA_DIST): removed libtool.prj - Reported by Akim Demaille - -1998-11-24 Alexandre Oliva - - * ltconfig.in (echo): avoid shell error messages when we're - testing for large command line support - Reported by Axel Thimm - - * doc/PLATFORMS: updated last-tested release for platforms I've - got access to - - * THANKS: added Chris P. Ross - -1998-11-24 Chris P. Ross - - * ltconfig.in: added recognition of the dynamic linker on BSD/OS 4.x - * README: added BSD/OS 4.x to the list of supported platforms - * doc/PLATFORMS: added BSD/OS 4.x support for various host id's - -1998-11-24 David Heine - - * ltmain.in (pass_all): actively pass the flags - -1998-11-24 Thomas Tanner - - * depdemo: added inter-library dependencies demo (doesn't work yet!) - * AUTHORS: added myself to the list of maintainers - -1998-11-22 Thomas Tanner - - * libltdl: added support for .la files, LGPL license, - K&R compatibility, some API changes and bugfixes - * ltmain.in: renamed -module flag (for compiling) to -force-static, - define -DSTATIC when compiling static .o files, - do not include directories in dld_preloaded_symbols - * mdemo: modified mdemo to work with the new libltdl - * tests/mdemo-exec.test, tests/mdemo-inst.test: use .la files - -1998-11-21 Alexandre Oliva - - * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on - header files defining it. - - * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create - libraries with gcc -shared if using gcc without GNU ld. - - * ltconfig.in: replaced occurrences of solaris2 with solaris, to - prepare for Solaris 7 - -1998-11-19 Alexandre Oliva - - * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen -> -dlopen - (hell_LDFLAGS): added -export-dynamic and -dlopen - (SUBDIRS, INCLUDES): added modules directory - (foo1.c, foo2.c, foo.h, libfoo1.sym, libfoo2.sym): moved to modules - * Makefile.am: ditto - * tests/mdemo-exec.test, tests/mdemo-inst.test: libraries moved - * mdemo/modules/Makefile.am: new file - - * */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies - - * ltmain.in: missing `test' between `&&' and `"$module"' - - * ltconfig.in (echo_test_string): the whole ltconfig script was - too much for DU4.0's ksh, but the first 50 lines will be enough. - - * ltmain.in (installed): new variable defined within a .la file, - so that libtool can now link already-installed libraries into a - program. - * NEWS: ditto - * doc/libtool.texi (Linking executables): document it - - * ltmain.in (output_objdir): compute it from $output, not $arg - -1998-11-18 Alexandre Oliva - - * NEWS: -module and libtldl - * mdemo/Makefile.am: ../libltdl is within $(srcdir) - -1998-11-18 Thomas Tanner - - * libltdl, Makefile.am: added libltdl (a system independent - dlopen wrapper library extracted from mdemo) - * ltmain.in: added -module flag for compiling and linking of - modules. If enabled it compiles always both .o (with -DLT_RENAME) - and .lo files - * mdemo: modified mdemo to work with libltdl - * tests/ltdl*: added tests for libltdl - -1998-11-16 Steve Price - - * ltconfig.in: when $host_os is freebsd[23]* determine whether - the current linker format is a.out or ELF - * ltmain.in: add two new $version_type's, freebsd-aout and - freebsd-elf, to support above change - -1998-11-16 Stephan Kulow - - * ltconfig.in: extent no_builtin_flag to contain -fno-rtti and - -fno-exceptions in case we compile with a gcc, that supports - this options (egcs and gcc >= 2.8) - -1998-11-16 Alexandre Oliva - - * ltmain.in (C_compiler): copy $CC before it is overwritten with - command-line compiler, so that we can use it to compile C sources - generated during the build. This fixes the problem that showed up - with -export-dynamic of C++ programs in egcs 1.1. - * NEWS: ditto - -1998-11-12 Alexandre Oliva - - * PORTING: Porting instructions are in the libtool manual already - - * NEWS: Mention -export-symbols and new dlpreopen - -1998-11-11 Alexandre Oliva - - * ltmain.in (IFS): revert Gary's patch when parsing version - information; we still use `:' here :-) - - * NEWS: updated - * PORTING: new file, with general instructions and inter-library - dependencies tips - -1998-11-11 Gary V. Vaughan - - * ltconfig.in: make use of '~' field separator in reload_cmds, - old_archive_from_new_cmds, old_archive_cmds, archive_cmds, - old_postinstall_cmds, postinstall_cmds, old_postuninstall_cmds, - postuninstall_cmds and finish_cmds, so that the semi-colons inside - if/then/else/fi and for/do/done etc. do not break the eval loop in - ltmain.in (below). - * ltmain.in: changed all of the eval loops to use an IFS of `~', - to allow differentiation between the end-of-statement-; - (now `~' is used) and end-of-substatement-; (still `;'). This - fixes AIX and win32 at least. - -1998-11-11 Alexandre Oliva - - * ltconfig.in (sunos*, sympat, symxfrm): remove underscore - prepended by the compiler - -1998-11-10 Toshio Kuratomi - - * ltconfig.in: re-enable deplibs - * ltmain.in: support deplibs, at least for GNU/Linux/x86 - Updated to current libtool by Thomas Tanner - -1998-11-10 Gordon Matzigkeit - - * ltmain.in (link): Make the relink warning less harsh. - -1998-11-07 William M. Perry - - * ltconfig.in (aix3, aix4): uniquify symbol names in archive_cmds - -1998-11-07 Alexandre Oliva - - * ltconfig.in: add --falback-echo, to be used if everything else - fails. The tests now check the behavior of $echo for very large - strings, because some echo commands would just core dump (e.g., - Solaris' printf). If too large strings fail, smaller ones are - tested. - (ltecho): arrange that, if the --fallback-echo method is selected, - echo will be defined in the libtool script so as to re-run itself, - not ltconfig - * ltmain.in: add --fallback-echo - (qecho) ensure that, if --falback-echo is being used, qecho is - defined with the full pathname of the libtool script - -1998-11-07 Thomas Tanner - - * mdemo/main.c: removed hardcoded library names; link against -lm - * tests/mdemo-exec, tests/mdemo-inst: pass the library names - to the program - -1998-11-07 Marc J. Fraioli - - * README: Added DG/UX - * doc/PLATFORMS: ditto - -1998-11-04 Michael Tiemann - - * ltconfig.in (irix6): it's a little bit different from irix5 - -1998-11-04 Alexandre Oliva - - * THANKS: Added Thomas Tanner and Gary V. Vaughan - - * ltconfig.in, ltmain.in: updated and fixed the patches below - -1998-11-04 Thomas Tanner - - * mdemo/*: added new demo to demonstrate building of dlopenend - modules - * tests/Makefile.am, tests/mdemo*: added some tests for mdemo - -1998-11-04 Gary V. Vaughan - - * demo/configure.in: added AC_EXEEXT macro so that the tests can - work on cywin32/mingw32 hosts. This requires the current CVS - autoconf - -1998-11-04 Thomas Tanner - - * ltmain.in: New flag -export-symbols; new dlpreopen system - * demo/dlmain.c: removed dld_preloaded_symbol_count - -1998-11-04 Ian Lance Taylor - - * ltmain.in: On installation, don't get confused if the same name - appears more than once in the list of library names. - -1998-11-04 Ian Lance Taylor - - * ltconfig.in: Add objext and libext variables. Check for object - suffix. Check for mingw32* as well as cygwin32*. Use objext when - testing compiler. Add support for Visual C++ on cygwin32 when not - using gcc. Add objext, libext, and fix_srcfile_path to generated - libtool script. - * ltmain.in: Use .${objext} rather than .o. Use fix_srcfile_path - if it is set. Check for .obj as well as for .o, and for .lib as - well as for .a. Use .${libext} rather than .a when creating old - libraries. - * libtoolize.in: Change initial /bin/sh to @SHELL@. - * libtool.m4 (AM_PROG_LIBTOOL): Add AC_REQUIRE for - AC_CANONICAL_BUILD, so that autoconf doesn't get mixed up by the - AC_REQUIRE in AC_CHECK_TOOL. - -1998-11-04 Ian Lance Taylor - - * ltconfig.in: Look in the right directory for libtool.c in - archive_cmds for cygwin32. - -1998-11-04 Ian Lance Taylor - - * ltconfig.in: Fix cygwin32 support to avoid using a double - extension, to delete the def file, to set version_type to windows, - and to include versuffix in the DLL name. - * ltmain.in: Add support for a version_type of windows. - -1998-11-04 Ian Lance Taylor - - * ltconfig.in: Add cygwin32 support. - * libtool.m4 (AM_PROG_LIBTOOL): Call AM_SYS_LIBTOOL_CYGWIN32 on a - cygwin32 host. Pass DLLTOOL and AS to ltconfig. - (AM_SYS_LIBTOOL_CYGWIN32): New macro. - -1998-11-04 Alexandre Oliva - - * libtool.m4 (sco): fix typo - -1998-11-04 Ian Lance Taylor - - * ltconfig.in: On AIX, don't treat GNU ld specially. - -1998-11-04 Alexandre Oliva - - * ltconfig.in (hardcode_minus_L): Revert Ian's patch for - ltconfig.in. Although -L hardcoding is not used with GNU ld, it - does happen, so hardcode_minus_L must be set to yes. - - * ltconfig.in (compiler_o_lo): check whether we can write directly - to a .lo - - * ltmain.in (compiler_o_lo): if not, write to .o and rename it - -1998-11-04 Ian Lance Taylor - - * ltconfig.in: For sunos4 using GNU ld, set hardcode_minus_L to - no. - * ltmain.in: Add some hacks to make SunOS --enable-shared work - when using GNU ld. - -1998-11-04 Alexandre Oliva - - * THANKS: Added Marc J. Fraioli - -1998-11-04 Marc J. Fraioli - - * ltconfig.in (dgux): new supported platforms - -1998-11-04 Alexandre Oliva - - * ltconfig.in (need_locks): if neither `-c -o' nor hard links are - available, fallback to not so safe mechanism, by setting - need_locks to warn - * ltmain.in (need_locks): when need_locks is set to warn, use the - lockfile to try to fail in case of incorrect concurrent builds - - * THANKS: Added Eric Estievenart - -1998-11-04 Eric Estievenart - - * doc/libtool.texi (Compile mode): Document that -o is fully - supported. - - * libtool.m4 (libtool-lock): new ARG_ENABLE; sets (need_locks) - * ltconfig.in (disable-lock): control need_locks - (hard_links): check whether hard-links can be used for locking - * ltmain.in (need_locks): use $output_obj.lock for locking - -1998-11-03 Alexandre Oliva - - * ltmain.in: correctly create libraries and programs with - directory components in their names - -1998-11-03 Eric Estievenart - - * ltmain.in (output_obj): typo - -1998-11-02 Ian Lance Taylor - - * ltconfig.in: For sunos4, add ${libname}.so$versuffix to - library_names_spec. - * ltmain.in: For version_type of sunos, set versuffix even if - -version-info was not used. - -1998-11-02 Alexandre Oliva - - * ltmain.in (libobj): default value must not contain directory - components - -1998-11-02 Eric Estievenart - - * ltconfig.in (compiler): detect if the compiler supports - -c and -o flags, create a variable compiler_c_o. Also issue - a big warning if it is not supported - - * ltmain.in (compile): enable the -o option as input for libtool. - The objects are not moved if the compiler supports -o with -c. - Sources and objects can contain relative directories. - (link): enable the linking of executables into relative directories - -1998-11-02 Alexandre Oliva - - * AUTHORS: added myself as a co-maintainer - * THANKS: and removed my name from here - - * autogen: new script; run it to bootstrap libtool after checking - it out from CVS - - * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as - suggested by Robert Lipe - -1998-10-31 Gordon Matzigkeit - - * demo/Makefile.am (hc-libpath): Use parameters from the libtool - in the top build directory, since the one in the demo directory is - not guaranteed to exist. - -1998-10-27 Alexandre Oliva - - * demo/Makefile.am (objdir): there are no longer quotes around - objdir in the libtool script - -1998-10-27 Gordon Matzigkeit - - * ltconfig.in (dynamic_linker): Echo the result to fd 6, so that - --silent works correctly. From William M. Perry. - -1998-09-24 Gordon Matzigkeit - - * ltmain.in (link): Fix problems when building only static - libraries. From Owen Taylor. - -1998-08-20 Gordon Matzigkeit - - * ltmain.in (install): When library_names_spec has redundancies, - avoid deleting the main library when installing symlinks. From - Jeff Dairiki. - (link): Get rid of backticks in a here doc comment. - This causes segfaults on Solaris 2. From Aleksandar Bakic. - (finish): Don't display messages - - * ltconfig.in (archive_cmds): On HP-UX 9, make sure we don't try - to move a file to itself. From Jeff Dairiki. - -1998-08-19 Gordon Matzigkeit - - * ltconfig.in: Make changes to accomodate ltmain.c. - - * Makefile.am (clibtool): New target for the C version of libtool. - - * ltmain.c: Experimental C version of libtool. - -1998-07-10 Ian Lance Taylor - - * ltmain.in (install): Test against both $SHELL and /bin/sh. - -1998-06-30 Gordon Matzigkeit - - * ltmain.in: Convenience archive support. From Ulrich Drepper. - - * ltconfig.in (postinstall_commands): Change libraries to be - executable on Solaris in order to prevent ldd from moaning. From - Julian Gosnell. - (whole_archive_flag_spec): New variable to shortcut convenience - archive expansion. From Ulrich Drepper. - -1998-06-11 Gordon Matzigkeit - - * ltconfig.in, ltmain.in: Change globs to accept forward slashes - in absolute directory names used on DOS-like systems. From Robert - S. Maier. - -Thu May 28 18:59:08 1998 Ian Lance Taylor - - * ltconfig.in: Use $SHELL when invoking shell scripts. - -1998-05-21 Gordon Matzigkeit - - * ltmain.in (compile): Don't have `-static' turn off libtool - libraries, so that people can use it just to guarantee that `.o' - files exist. Suggested by David Mosberger-Tang. - -1998-05-18 Gordon Matzigkeit - - * ltmain.in (link): Possibly reexec the shell from within the - wrapper script. - Allow `-version-info' and `-release' to coexist again. If people - want to shoot themselves in the foot, I'd better let them do so, - so that people who are smart enough not to can squeeze out another - ounce of functionality. From Tim Janik. - (version_vars): Delete dead variable. - - * ltconfig.in (hardcode_minus_L): FreeBSD 3.0 doesn't hardcode, at - last. Reported by Jason Nordwick. - - * libtoolize.in, ltconfig.in, ltmain.in: Change a bunch of `if - test ...; then : ; else ...' constructs to `if test ! ...; then - ...', for clarity. - -1998-05-17 Gordon Matzigkeit - - * ltmain.in (LC_ALL, LANG): Save these values and restore them - during execute mode. From Pavel Kankovsky. - (mode): Accept strace and truss as programs that throw us into - execute mode. From Pavel Kankovsky. - -1998-05-07 Ian Lance Taylor - - * ltconfig.in: Don't use .$versuffix or .$major. Instead, assume - the variable will include any required prefix. - * ltmain.in: If no -version-info option was used, produce empty - version strings rather than 0.0.0. When making library symlinks, - avoid making a symlink if the name would be the same. - -1998-04-27 Gordon Matzigkeit - - * ltmain.in (link): Support `unsupported' as a hardcode_action. - Reported by Lars Hecking. - (lib_linked): Do some sanity checking to make sure that we - actually do link libtool libraries into the program to prevent the - above problem from happening again. - -1998-04-20 Gordon Matzigkeit - - * ltmain.in: Maybe reexec under $SHELL, if $echo doesn't work. - Reported by Lars Hecking. - -1998-04-19 Gordon Matzigkeit - - * Makefile.am (maintainer-rekey): New rule to force us to change - Project-Version after we make a release. This keeps all version - numbers in sync, rather than branching just before the release. - (maintainer-release, maintainer-checkin): Use maintainer-rekey. - - * ltmain.in (finish): Notice when a finish command fails, so that - we can add it to the list of recommendations. - -1998-04-17 Gordon Matzigkeit - - * libtool.m4 (AM_PROG_LIBTOOL): Append file descriptor 5 to - config.log, so that configure doesn't clobber the messages that - ltconfig put there. From David Taylor. - -1998-04-15 Gordon Matzigkeit - - * ltconfig.in (archive_cmds): Try using `$CC -shared' when - configuring for GCC under irix5 and irix6. From Wolfram Gloger. - (ofile): Add `--output' flag to change the name of the generated - libtool. Suggested by Wolfram Gloger. - -1998-04-14 Gordon Matzigkeit - - * ltmain.in: Remove all hardcoded references to ltmain.in in - favour of $PACKAGE and $PROGRAM. - (install): Compute the installation name for programs, in case we - install a relinked file which has a different name. Reported by - Pieter Schoenmakers. - - * ltconfig.in (echo): Try using the ksh(1) `print -r' builtin - command, before reverting to printf(1). - - * Makefile.am (libtool): Use $(SHELL) when invoking ltconfig. - - * ltconfig.in (echo): Rewrite the test for a working echo so that - we win on Solaris by avoiding printf(1), if possible. - -1998-04-13 Ian Lance Taylor - - * libtool.m4 (AM_PROG_NM): Don't override NM in the environment. - -1998-04-13 Gordon Matzigkeit - - * ltmain.in: New `--config' flag to print out all configured - variables. - - * libtool.m4: Pass ltconfig the undocumented --no-reexec flag, - since we call it explicitly using CONFIG_SHELL. - - * ltconfig.in: Restart the script under a different shell if - CONFIG_SHELL is not /bin/sh. This way, people can use Bash if - they don't have a working echo program. - - * ltmain.in, ltconfig.in: Use $SHELL instead of /bin/sh when - generating executable scripts. - - * libtoolize.in, ltconfig.in, ltmain.in: Implement the `--debug' - flag to begin shell tracing. - - * ltconfig.in (archive_cmds): Don't use `gcc -shared', even if we - have GNU ld. Reported by Robert S. Maier. - -1998-04-06 Gordon Matzigkeit - - * ltconfig.in (pic_flag): Create more than just a null C file, so - that the SunPRO 4.2 cc doesn't complain. From Bob Friesenhahn. - (gnu_ld_acts_native): Delete this variable. There is just too - much version skew to try to pretend GNU ld is the same as the - system ld. Reported by Ian Lance Taylor. - (hardcode_action): Don't bother relinking or aborting on systems - that are too dynamic to have a consistent hardcode method. - Reported by Doug Winterburn. - -1998-03-24 Gordon Matzigkeit - - * doc/libtool.texi: A little proofreading. From Albert - Chin-A-Young. - -1998-03-23 Gordon Matzigkeit - - * ltconfig.in: Treat HP-UX 11 just like HP-UX 10. From Jeff Law. - -1998-03-21 Gordon Matzigkeit - - * ltconfig.in (reload_flag): Correct a tiny bug where `--silent' - would still print out the reload flag. From Stephan Kulow. - -1998-03-20 Ian Lance Taylor - - * libtool.m4: Use changequote to avoid problems with square - bracket patterns. - -1998-03-20 Gordon Matzigkeit - - * Release 1.2. - -1998-03-18 Gordon Matzigkeit - - * ltmain.in: Rearrange some of the echos to make them more - consistent. - -1998-03-14 Gordon Matzigkeit - - * ltmain.in: Break up an echo command that causes Solaris printf - to dump core. Apparently the Solaris people hardcoded a 2110-byte - buffer into their printf(1). Feh. From John Judge. - -1998-03-11 Gordon Matzigkeit - - * ltconfig.in: Change the test for the PIC compiler flag so that - we assume it doesn't work if there are any warning messages. This - fixes a bug using old GCC's on HP-UX. Reported by Akim Demaille. - -1998-03-10 Andreas Schwab - - * Makefile.am ($(srcdir)/ltconfig): Remove bogus command to create - a file ltconfig in the build directory. - -1998-03-09 Andreas Schwab - - * ltmain.in: Avoid unnecessary use of command substitution, - replacing foo=`eval \\$echo \"$mumble\"` by eval foo=\"$mumble\". - - (link): Use ${1+"$@"} in wrapper scripts in order to pass - arguments safely to a program. - - * ltconfig.in: Use -fpic instead of -fPIC if $host_cpu matches - m68*. - -1998-03-08 Gordon Matzigkeit - - * Release 1.1. - - * ltmain.in: I like `here documents' a lot, but apparently - they are so badly handled by old and buggy /bin/sh's, that - replacing `cat < - - * ltconfig.in: Copy the contents of ltmain.sh into the generated - libtool. This should more than halve the execution times on old - or buggy /bin/sh systems, such as HP-UX 9 and SunOS 4.1.4. From - Tom Lane. - -1998-03-05 Gordon Matzigkeit - - * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): Add support for - the `default' package, so that people can control unnamed - packages. - (LD): Only add an ABI flag under IRIX 6.x, since IRIX 5.x doesn't - support them. From Alexandre Oliva. - -1998-03-01 Gordon Matzigkeit - - * ltconfig.in: Port to UnixWare 2.x. From Christopher Olsen. - -1998-02-25 Gordon Matzigkeit - - * ltmain.in (compile): For consistency, honour the `-static' flag - during compilation. - -1998-02-23 Brendan Kehoe - - * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): For - --enable-shared, heed the value of $PACKAGE from AM_INIT_AUTOMAKE - if given as the argument for the library to be built shared. - -1998-02-20 Gordon Matzigkeit - - * libtool.m4, ltconfig.in (NM): Fix up a typo confusion between - $ac_dir and $dir. Reported by Akim Demaille. - - * ltmain.in (link): Don't allow both `-version-info' and - `-release'. Reported by Danny Backx. - -1998-02-18 Gordon Matzigkeit - - * Makefile.am (noinst_SCRIPTS): Remove lineno from distribution. - - * lineno: Remove from distribution, as it is no longer needed. - - * Makefile.am ($(srcdir)/ltconfig.in, $(srcdir)/ltmain.sh): - Rewrite these rules not to use config.status or lineno. This - makes things simpler, and reduces dependencies, so that the - scripts are rebuilt and installed in srcdir only when necessary. - Reported by Stephan Kulow. - -1998-02-16 Gordon Matzigkeit - - * libtool.m4, ltmain.in, ltconfig.in: Correctly identify absolute - directory names on MS-DOS. Suggested by Bob Friesenhahn. - - * ltconfig.in, ltmain.in, libtool.m4: Change a bunch of `sed N!d' - commands to `sed Nq', for efficiency. - - * ltmain.in: Only egrep the first few lines of files in order to - determine if they were libtool-generated. This prevents egrep(1) - from taking forever to look at a 10MB binary on Solaris. From - Stephan Kulow. - -1998-02-11 Gordon Matzigkeit - - * ltconfig.in (no_undefined_flag): Add a flag to declare under - Solaris that the library should not have any undefined - references. Suggested by Bob Friesenhahn. - - * ltmain.in (mkdir): Fix one more mkdir race. From H.J. Lu. - -1998-02-08 Gordon Matzigkeit - - * ltconfig.in, ltmain.in (striplib, old_striplib): Ditto. - - * ltconfig.in (profile_flag_pattern): Get rid of dead code. - -1998-02-07 Gordon Matzigkeit - - * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): New macros to - modify the `--enable-shared' and `--enable-static' defaults in the - configure script. This works a lot better than the old - `enable_shared' and `enable_static' variables did. Reported by - Bob Friesenhahn. - -1998-02-07 Samuel Tardieu - - * ltmain.in: Recognize .ada, .ads and .adb as known suffixes (they - are used by GNAT, the GNU Ada compiler). - -1998-02-06 Gordon Matzigkeit - - * ltconfig.in: Turn on IRIX shared libraries again! - - * libtool.m4 (LD): Use file(1) to discover which ABI we're using - on IRIX, and propagate the correct linker flag. From Jim Wilson. - - * ltconfig.in, ltmain.in (Xsed): `arg=-n; echo "$arg" | sed ...' - gives problems, because the `-n' is interpreted as an option to - echo(1). So, use `echo "X$arg" | sed -e 's/^X//' ...' everywhere, - via the $Xsed convenience variable. Suggested by H.J. Lu. - -1998-02-02 Gordon Matzigkeit - - * ltconfig.in: Turn off IRIX shared library support until 32-bit - and 64-bit ABI differences can be resolved. - -1998-01-28 Gordon Matzigkeit - - * libtool.m4 (LD): Reverse yesterday's change because `-old_ld' - isn't accepted by GCC. - -1998-01-27 Gordon Matzigkeit - - * ltconfig.in (soname_spec): Add in user-specified release numbers - for every host system that supports an soname that differs from - the linkname. - - * libtool.m4 (LD): Add `-old_ld' to the list of flags that need to - be passed through on SGI. Reported by Chris Lee. - - * ltmain.in (release): Prepend a hyphen to the release number, and - fix a typo because `-version-info' takes only 3 args. From - H.J. Lu. - -1998-01-25 Gordon Matzigkeit - - * ltconfig.in (library_names_spec): On Linux, use the - user-specified release. - - * ltmain.in (link): Allow the user to specify a release number for - the library using the `-release' flag. Suggested by H.J. Lu and - Ian Lance Taylor. - -1998-01-19 Gordon Matzigkeit - - * ltconfig.in (old_postuninstall_cmds): Reorder so that chmod - happens after ranlib. From Markus F.X.J. Oberhumer. - - * ltmain.in (mode): Added `gcc*' and `*-gcc*' to the patterns that - recognize compilers. From Pieter Schoenmakers. - (link): Recognize `.a' files again. Suggested by Pieter - Schoenmakers. - -1998-01-18 Gordon Matzigkeit - - * ltmain.in (compile): Recognize `.asm' extension, for use with - the nasm assembler. From Markus F.X.J. Oberhumer. - -1998-01-12 Gordon Matzigkeit - - * ltconfig.in (runpath_var): Use instead of - `hardcode_runpath_var'. - -1998-01-11 Gordon Matzigkeit - - * ltmain.in (finish): Add a better --finish message. Suggested by - Kenneth Albanowski. - - * ltconfig.in, ltmain.in: Fix a few typos. - -1998-01-03 Gordon Matzigkeit - - * ltmain.in (link): Quote the definition of $echo in the wrapper - script. - - * ltconfig.in (export_dynamic_flag_spec): Use `--export-dynamic' - instead of `-export-dynamic', which is not accepted by all GNU - ld's. From Eiichi Takamori. - - * ltmain.in (install): Don't print silly `library stripping' - warnings. Reported by François Pinard. - -1997-12-19 Gordon Matzigkeit - - * ltmain.in: Don't forget to quote the CDPATH substitution. From - Tor Lillqvist. - -1997-12-18 Gordon Matzigkeit - - * ltconfig.in, ltmain.in (CDPATH): Unset this environment variable - so that HP-UX shells, at least, don't print out the directory name - after a `cd' command. From Tor Lillqvist. - -1997-12-10 Gordon Matzigkeit - - * demo/Makefile.am (hardcode): Change a bunch of references to - `$(LIBS)' to `-lm', since we no longer put -lm in LIBS. - - * demo/configure.in: Delete the test for libm, since it is - standard on every system. - - * demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm, - in accordance with new inter-library dependency code. - - * ltmain.in (dependency_libs): Added to help people link programs - without having to explicitly specify inter-library dependencies. - - * ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3 - restriction to the generated libtool script. Reported by Stefan - Westerfeld. - -1997-12-05 Gordon Matzigkeit - - * ltconfig.in (thisdir): Quote $echo in the generated libtool - script for HP-UX. From Markus F.X.J. Oberhumer. - - * ltmain.in (link): Recognize the `.s' suffix. From Markus - F.X.J. Oberhumer. - - * ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX - because link_static_flag is never evaled. From Eric Backus. - -1997-12-01 Gordon Matzigkeit - - * demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our - dependencies so that parallel builds work correctly. From Jim - Meyering. - - * Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite - these rules so that they are parallelizable. Reported by Jim - Meyering. - - * ltconfig.in (ltecho): We need special handling to quote the - `echo' variable itself. From Alexandre Oliva. - -1997-11-29 Gordon Matzigkeit - - * ltconfig.in (COLLECT_NAMES): Enable this workaround for a broken - collect2 only on AIX 3. This avoids problems on other AIX - versions. Reported by Stefan Westerfeld. - - * ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds, - except it is a single command which is evaled, and not shown. - - * ltconfig.in: Port to AmigaOS. From Joop van de Wege. - - * ltmain.in (echo): Delete preamble to check for a working echo, - since we just use the one included in the generated libtool. - - * ltconfig.in (echo): Include this definition in the generated - libtool script. - -1997-11-28 Gordon Matzigkeit - - * ltconfig.in, libtool.m4 (NM): Add /usr/ccs/bin to the PATH - before checking. From Kaveh R. Ghazi. - (NM): Delete an extraneous egrep from ltconfig. - - * ltconfig.in (finish_cmds): Change back to using `ldconfig -n'. - This makes Linux behave like other systems, which is more in line - with what libtool needs. - -1997-11-27 Gordon Matzigkeit - - * ltmain.in: Change a whole bunch of `progname' variables to - `modename'. This is for clarity, and to fix a tiny typo in finish - mode. - - * libtool.spec (Name, Version): Ditto. - - * configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate - the proper package name and version number. - - * ltconfig.in (gnu_ld_acts_native): Treat GNU ld like the native - linker on SunOS 4.x. Suggested by Alexandre Oliva. - (deplibs): Change the defaults all over, since most systems cannot - handle inter-library dependencies. - - * libtool.m4, ltconfig.in (NM): Only look at the first line of the - output from NM when determining whether it supports a command line - option. This prevents false positives on OSes which ignore - invalid flags, like HP-UX, which prints `nm: unknown option "B" - ignored'. Reported by Kaveh R. Ghazi. - - * ltconfig.in (finish_cmds): On Linux, update ld.so.cache by - removing the `-n' flag from ldconfig. Suggested by Kenneth - Albanowski. - - * Makefile.am (maintainer-checkin, maintainer-release): New - commands to reap the full benefit of using PRCS to maintain - libtool version numbers. - - * ltconfig.in, ltmain.in (global_symbol_pipe): Explicitly cast all - addresses to __ptr_t. This fixes a bug due to a strict IRIX - compiler. Suggested by Kaveh R. Ghazi. - -1997-11-23 Gordon Matzigkeit - - * ltmain.in (echo): For aesthetics, avoid using `$echo' when - `echo' will do *exactly* the same thing. This prevents ugly - `printf %s\n timestamp > some.lo' commands from appearing in the - libtool output. - (link): Delete the `-allow-undefined' flag because it is now the - default. Make `-no-undefined' in order for people to declare that - a library is entirely self-contained. This prevents maintainers - from accidentally creating shared libraries that won't work on - AIX. Reported by Stefan Westerfeld and Danny Backx. - - * ltconfig.in (echo): Use an echo variable, just as in ltmain.in, - because we need it for quoting substitutions. For most of the - script, though, use the default echo, just like Autoconf does. - Without this patch, character \001 ends up in global_symbol_pipe. - Reported by Lars Hecking and Jürgen Fluk. - - * ltmain.in (echo): Set default to `echo=echo'. Ooops. That's - what you get for testing obscure code paths and forgetting to - revert to the original version. Reported by Danny Backx. - -1997-11-14 Gordon Matzigkeit - - * ltconfig.in (hardcode_libdir_flag_spec): Set to `-R' for FreeBSD - 2.2. From Sean Kelly. - (postuninstall_cmds, old_postuninstall_cmds): Commands to run - after uninstall mode deletes the libraries. Suggested by Joop van - de Wege. - (export_dynamic_flag_spec): On HP-UX, add the `${wl}-E' - export_dynamic_flag_spec. Reported by Matthias Hoelzer. - -1997-11-11 Gordon Matzigkeit - - * ltconfig.in, ltmain.in (sed_quote_subst): Oops. We forgot to - quote backticks. Reported by Joop van de Wege. - -1997-11-09 Gordon Matzigkeit - - * ltconfig.in (symcode): On IRIX, don't extract undefined - symbols. When a function is inlined by G++, references to it are - still marked as undefined in the object file. This means that our - symbol file causes undefined references, because there are - actually no matching global symbols. Reported by Paul Kendall. - -1997-11-08 Gordon Matzigkeit - - * ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool - script fragment to the generated libtool, rather than to stdout. - -1997-11-07 Gordon Matzigkeit - - * libtool.m4 (LD): Add a more sophisticated test to determine the - ABI flag on IRIX 6. Suggested by Lars Hecking and Ian Lance - Taylor. - - * ltconfig.in, ltmain.in (COLLECT_NAMES): Only export this - variable if we are running under AIX. Otherwise, we tickle a g++ - bug under IRIX. From Paul Kendall. - - * Change bug reporting address to . - - * ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a - wildcard argument to `-expect_unresolved'. From Stephan Kulow. - -1997-11-06 Gordon Matzigkeit - - * ltmain.in (link): Use libname_spec. - - * ltconfig.in (pic_flag): Somehow, the HP-UX pic_flag (`+Z') was - dropped between libtool-1.0 and now. Add it back in. Reported by - Akim Demaille. - Integrated more patches for OS/2. From Jeff Freedman. - (libname_spec): New variable for OSes that don't require their - libraries to look like `libNAME.a'. - - * ltmain.in (link): Only use global_symbol_pipe if it has been - defined. From Stephan Kulow. - - * ltconfig.in (global_symbol_pipe): Protect C fragment under C++ - compilers. From Stephan Kulow. - - * Makefile.am ($(srcdir)/acinclude.m4, - $(srcdir)/demo/acinclude.m4): Change rules to use LN_S so that - they can be run on any system. - - * ltconfig.in (archive_cmds): For NetBSD, don't include deplibs. - From Dieter Baron. - - * ltmain.in (mkdir): Check that the directory doesn't exist before - we exit with error, so that we don't get races during parallel - builds. From H.J. Lu. - (fbsd_hideous_sh_bug): Apparently, some FreeBSD /bin/sh's have a - bug that will empty base_compile unless we do this dummy - assignment. From Marc van Kempen. - -1997-10-22 Gordon Matzigkeit - - * libtool.m4 (libtool_shared, libtool_static): Fixed logic error - to reenable override of libtool's defaults by setting - enable_shared or enable_static in configure.in. Reported by Tom - Tromey and Stephan Kulow. - - * ltmain.in (link): Add explicit support for compiler options that - begin with `+'. Reported by Aubert Pierre. - -1997-10-20 Gordon Matzigkeit - - * ltmain.in: Silly me. Change a bunch of occurances of "* $dir *" - into *" $dir "*. - - * ltconfig.in (pic_flag): PIC is the default for AIX. From Mark - Kettenis. It is also the default for OSF/1. - - * demo/Makefile.am (objdir): Quote double-quotes. From Mark - Kettenis. - - * ltconfig.in (global_symbol_pipe): This variable is not - double-evaled, so it should not be double quoted. From Mark - Kettenis. - -1997-10-19 Gordon Matzigkeit - - * ltconfig.in (LD): Same as below. - - * libtool.m4 (LD): Set LD if we discover an absolute path to GNU - ld. This prevents breakage when `$CC -print-prog-name=ld' returns - an absolute directory name. Reported by Ulrich Drepper. - - * ltconfig.in: Port to OS/2 using EMX. From Jeff Freedman. - - * ltmain.in (link): Use old_archive_from_new_cmds. - - * ltconfig.in (old_archive_from_new_cmds): New variable to - support DLL libraries. - - * ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is - not empty. Reported by Stephan Kulow. - -1997-10-18 Gordon Matzigkeit - - * ltconfig.in (objdir): Use the .libs directory on all systems for - which that name is valid, and _libs on the others (like MS-DOS). - Suggested by Juergen Erhard. - -1997-10-14 Gordon Matzigkeit - - * ltmain.in (link): Added a bit more inter-language support to the - symbol file generation process. - Instead of complaining about unrecognized argument suffices, pass - them to the linker. This prevents libtool from barfing on - mandatory arguments to linker flags. Reported by Michael - Tiemann. - -1997-10-09 Gordon Matzigkeit - - * ltmain.in (link): Change the wrapper script to follow symlinks - in order to find thisdir. This should put the final nail in the - coffin for problems with wrapper scripts. From Ian Lance Taylor. - -1997-10-07 Gordon Matzigkeit - - * ltmain.in: Change a few `$echo' commands into `$show' to make - --silent mode behave as advertised. - - * ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use - `-expect_unresolved \*'. From Christian Mondrup. - - * ltmain.in (install): Change install mode to allow a specified - /bin/sh argument at the beginning of the install_prog. Also, - specify the shell to run when invoking libtool recursively for - finish mode. From Chris Provenzano. - - * libtool.m4 (LIBTOOL): Change definition to include $(SHELL). - From Chris Provenzano. - - * ltconfig.in: Port to UTS 4.x. From Alistair Crooks. - - * demo/Makefile.am (hc-libflag): Add rules to make this binary for - hardcode.test. - -1997-09-24 Gordon Matzigkeit - - * ltconfig.in (LD): As with libtool.m4, don't override LD. - Do a whole bunch of ac_t quoting. - -1997-09-24 Ian Lance Taylor - - * libtool.m4 (AM_PROG_LD): Don't override LD in the environment. - -1997-09-21 Gordon Matzigkeit - - * libtool.m4, ltconfig.in (NM): Arguments to the for loop must be - whitespace separated. This fixes a bug under FreeBSD's /bin/sh. - From George Scott. - -1997-09-20 Gordon Matzigkeit - - * ltmain.in (deplibs): When building shared libraries, always add - -lc to deplibs. Reported by Andreas Jellinghaus. - -1997-09-15 Gordon Matzigkeit - - * ltconfig.in, ltmain.in (COLLECT_NAMES): If the COLLECT_NAMES - environment variable has not been set, set it to empty. This - apparently fixes the AIX bug with GCC's collect2. Reported by - Mark Kettenis. - - * demo/Makefile.am, ltmain.in, tests/hardcode.test (objdir): - Changed objdir variable .libs to _libs. This is another MS-DOS - portability fix. Suggested by Robert Hoehne. - -1997-09-13 Gordon Matzigkeit - - * ltconfig.in, ltmain.in (hardcode_minusL): Fix typo by renaming - hardcode_minusL to hardcode_minus_L. Also add FreeBSD - hardcode_libdir_flag_spec. From Paul Traina. - - * ltmain.in (link): Honour multiple `-rpath' flags when linking - programs. Suggested by Bengt Martensson. - Quote appearances of $echo in the wrapper script. From Alexandre - Oliva. - - * Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead - of ltmain.sh.in. - - * ltmain.in: Rename ltmain.sh.in to ltmain.in. This fixes a - portability problem (on MS-DOS, of all places!). From Robert - Hoehne. - -1997-09-11 Gordon Matzigkeit - - * ltmain.sh.in (link): Do not transform libtool objects to regular - objects if we did not build old libs. Reported by Tomas Hiller. - -1997-09-05 Gordon Matzigkeit - - * demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to - hell.debug in order to reflect the new static linking semantics. - - * ltmain.sh.in (link): Add new `-all-static' flag to prevent all - dynamic linking. The old `-static' flag just prevents dynamic - linking against libtool libraries. Suggested by Bengt - Martensson. - - * ltconfig.in (with_gnu_ld): Add a test to make sure that we are - actually using GNU ld. This fixes an inconsistency when running - ltconfig without using libtool.m4. Reported by Ulrich Drepper. - (global_symbol_pipe): Delete symbols that are not valid C - identifiers. Reported by Johan Danielsson and Bengt Martensson. - -1997-09-04 Gordon Matzigkeit - - * ltmain.sh.in (echo): Quote all the uses of `echo' in all eval - statements. Reported by Bengt Martensson and Alexandre Oliva. - (echo): Need to surround test args with double quotes, or the echo - test fails on Digital Unix 4.0. From Todd Kover. - -1997-08-28 Gordon Matzigkeit - - * ltmain.sh.in (echo): Change test to one that uses printf. - This works on AIX, which has the same problems that Solaris does, - but no working echo program. - -1997-08-27 Gordon Matzigkeit - - * ltmain.sh.in (link): Make sure that compile_command and - finalize_command are always evaled. Quote any unknown linker - flags we need to pass through. - (compile): Use quoting for flags we pass. - (echo): I hate Sun! The /usr/bin/echo on Solaris handles - backslash sequences, which makes it impossible to do backslash - quoting using echo and sed. So, we search for an echo that obeys - the `echo '\t'` = '\t' equality. Then we use `$echo' everywhere - in ltmain.sh. - Put tabs back into the ${IFS= } sequences. Emacs untabify is - libtool bane. - - * ltconfig.in: Quote all variable values that may contain - metacharacters creating the libtool script. This provides - complete protection, so that even single-quotes may appear inside - a libtool variable value. - - * ltmain.sh.in (link): Quote finalize_command before putting it in - the wrapper script. - -1997-08-26 Gordon Matzigkeit - - * ltmain.sh.in (sed_quote_subst): Change the quoting procedure - again. I think that the new one is robust for *all* characters, - including whitespace and metacharacters. - -1997-08-25 Gordon Matzigkeit - - * ltmain.sh.in: Change quoting procedure because some shells - cannot handle `]' in scan sets. From Ian Dall. - -1997-08-22 Gordon Matzigkeit - - * ltmain.sh.in (execute): Added -dlopen flag handling. Suggested - by Alexandre Oliva. - -1997-08-21 Gordon Matzigkeit - - * ltmain.sh.in (link): Change executable wrapper to fix up value - of thisdir, as well as progdir, if the $0 path doesn't work. This - guarantees that shlibpath_var is set correctly. Add support for - execute mode. - - * ltmain.sh.in (execute): New mode to automatically set - shlibpath_var, which allows easy debugging of uninstalled - executables and libraries. Suggested by Kenneth Albanowski. - -1997-08-20 Gordon Matzigkeit - - * Makefile.am ($(srcdir)/ltconfig): Use lineno. - - * configure.in: Add AM_PROG_AWK for lineno. - - * lineno: New program to automatically put line numbers in - ltconfig. - - * libtool.m4, ltconfig.in (AM_PROG_LD): Yet Another Rewrite, which - incorporates the results of `gcc -print-program-name=ld'. - Suggested by Alexandre Oliva. - -1997-08-14 Gordon Matzigkeit - - * ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off - command echoing. From Juergen A. Erhard. - - (compile): Recognize the Objective C `.m' extension. From Juergen - A. Erhard. - - (compile): Suppress error output from the second compilation (if - any) so that we don't get those frustrating duplicate error - messages. - -1997-08-12 Gordon Matzigkeit - - * ltconfig.in: Added messages to config.log to describe what sort - of test we are running. - (pic_flag): Added a sanity check for pic_flag. This should fix - bugs reported using the cc bundled with HP-UX 10. Suggested by - Bruno Haible and Akim Demaille. - -1997-08-01 Gordon Matzigkeit - - * ltmain.sh.in (link): Add -dlopen and -dlpreopen support for - libtool objects. This means that dlopened modules no longer need - to be shared libraries. - - * ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC. - Reported by Ian Lance Taylor. - - * libtool.m4 (LD): Always add `-n32' to the linker if we are using - GCC on IRIX 6. Reported by Ian Lance Taylor. - -1997-07-30 Gordon Matzigkeit - - * libtool.m4 (AM_PROG_LIBTOOL): Explicitly check enable_shared and - enable_static rather than just enableval. This allows - configure.in scripts to set their own defaults. Suggested by - Tommy Reilly. - -1997-07-29 Gordon Matzigkeit - - * ltmain.sh.in: Add NLS environment variable handling copied from - ltconfig.in. Reported by Akim Demaille. - (link): If allow_undefined_flag is not supported, then turn on old - libraries. Reported by Akim Demaille. - - * demo/dlmain.c (main): Use dld_preloaded_symbol_count to display - a message about the sortedness of the symbol table. - - * ltconfig.in (nlist): Use an nlist convenience variable, so that - code can be shared directly with ltmain.sh.in. - - * ltconfig.in, ltmain.sh.in (dld_preloaded_symbol_count): Count up - the number of symbols in the dld_preloaded_symbols. Set to `-1' - if the list wasn't both sorted and counted. This allows - applications to do a quick binary search, if they are so inclined. - -1997-07-25 Gordon Matzigkeit - - * ltmain.sh.in (link): Remove code for `-version-file', since it - has been long-deprecated. - - Disable static linking if hardcode_direct is unsupported and there - is no working link_static_flag. This provides correct behaviour - for all cases on AIX 3, regardless of whether collect2 is broken - or not. Reported by Mark Kettenis. - - * ltconfig.in: Fix typo in test polarity. From Mark Kettenis. - -1997-07-24 Gordon Matzigkeit - - * ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses - a broken collect2. Adapted out of test results from Mark - Kettenis. - (link_static_flag): Make sure the link_static_flag actually works - with a trivial binary. - - * ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed - from export_dynamic_flag because we eval it in ltmain.sh. - - * ltmain.sh.in (link_static): Don't eval link_static_flag. - - * demo/dlmain.c (main): Change function prototype to be KNR - compatible. From Kaveh R. Ghazi. - - * ltmain.sh.in (link): Use no_builtin_flag. This works around - conflicting definitions of builtin functions with at least GCC. - Reported by Kazuhiro Sasayama. - - * ltconfig.in (no_builtin_flag): New flag to turn off builtin - functions when compiling an object file. - (pipe_works): Use it. - -1997-07-23 Gordon Matzigkeit - - * ltconfig.in (pic_flag): According to the libg++ 2.7.2 configure - script, DEC alpha CPUs are PIC-only, as well. Reported by Kevin - Jacobs. - -1997-07-21 Gordon Matzigkeit - - * ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X; - Y'" with "sed -e 'X' -e 'Y'". - - * ltmain.sh.in (link): Finish full integration for `-dlopen' and - `-dlpreopen'. - - Fix two silly typos where I used a compile_command in place of a - finalize_command, and vice versa. - - Change the wrapper script to check a hardcoded path only if the - argv[0] method fails. This is a compromise for the previous two - patches, and should solve the majority of problems with wrapper - scripts. From Kenneth Albanowski. - - (link): Change a reference to hardcode_libdir_colon_separated to - use the new hardcode_libdir_separator variable. - - * demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and - `-dlpreopen' for building helldl. - - * demo/dlmain.c (main): Succeed, even if none of the libhello - symbols have been preloaded. - -1997-07-20 Gordon Matzigkeit - - * ltconfig.in (global_symbol_pipe): Add `U' to the accepted global - symbol types. This means that we will get duplicate symbols, but - we'll also be sure to get all global symbols used by the program. - - * ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make - symbol output unique. - -1997-07-19 Gordon Matzigkeit - - * ltconfig.in (pipe_works): Check to make sure our guessed - global_symbol_pipe actually works. - - * ltmain.sh.in (link): Revert change from Kenneth Albanowski. The - wrapper scripts are more reliable when they just use the argv[0] - value. Generally, when the argv[0] method doesn't work, the user - is trying to do something weird with an uninstalled binary, and - should try a different approach. - - * ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of - `$cc'. This fixes a FreeBSD bug. Reported by Chuck Robey, and - others. - -1997-07-14 Gordon Matzigkeit - - * ltmain.sh.in (link): In wrapper scripts, hardcode the current - directory to prevent phony argv[0] values from screwing up our - program. From Kenneth Albanowski. - -1997-07-13 Gordon Matzigkeit - - * Makefile.am (demo_distfiles): Add demo/dlmain.c to the - distribution. - -1997-07-12 Gordon Matzigkeit - - * demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate - `-dlopen' usage. - - * demo/dlmain.c: New file to demonstrate preloaded modules. - - * ltmain.sh.in (link): Add `-dlopen' flag to preload dynamic - modules, even on static platforms. Use `$NM' and - `$global_symbol_cmd' to extract symbols from required files. - (dlname): Delete dlname mode entirely. It is rendered obsolete - because the `.la' file format is now a public interface. - - * ltconfig.in (NM): New variable for BSD-compatible nm program. - (global_symbol_cmd): Pipeline to extract global symbols from the - nm output. - - * ltmain.sh.in: The .la file header should depend on `ltmain.sh', - not `$PROGRAM'. - (link): Make sure $export_dynamic_flag is eval'ed before it is - used. - -1997-07-11 Gordon Matzigkeit - - * libtool.spec: New Red Hat Package Manager specification file in - order to help people prepare distributions of libtool for Linux. - - * ltmain.sh.in: Eliminate two accidental uses of the NONE magic - value. These were breaking libtool's behaviour when no mode is - specified. - -1997-07-08 Gordon Matzigkeit - - * Release 1.0. - - * ltconfig.in: On SunOS, append /usr/etc to the PATH before - running ldconfig; on *BSD, append /sbin. This was done in line - with the Linux change suggested by Kenneth Albanowski. - - * demo/Makefile.am (hardcode_tests): Aesthetic change to - alphabetize order of compiling the hardcode tests. - - * Makefile.am (EXTRA_DIST): Delete README-automake. - - * README-automake: Remove from distribution. - -1997-07-02 Gordon Matzigkeit - - * ltmain.sh.in (link): In the executable wrapper, strip trailing - colons from the shlibpath_var because some ld.so's, notably - OpenBSD 2.0's (!), don't parse colon-terminated values correctly. - From Tim Pierce. - -1997-07-01 Gordon Matzigkeit - - * ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic - variable value. Use an empty variable instead. - - * ltconfig.in (with_gcc, with_gnu_ld): Do the tests for the C - compiler and linker if the variables are unset, or if they are not - GNU C and ld. - (RANLIB): Eliminate redundant `if' statement. - - * configure.in: Use AM_PROG_LD. - - * libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU - ld. - (AM_PROG_LD): Rename AM_PATH_PROG_LD to AM_PROG_LD. Parameterize - so that the user can specify `--with-gnu-ld' or `--without-gnu-ld' - to indicate his preference. - (AM_PROG_LIBTOOL): Use it. - -1997-06-30 Gordon Matzigkeit - - * ltconfig.in: Append /sbin to the path before running ldconfig on - Linux. This helps superusers who haven't set their PATH - correctly. Suggested by Kenneth Albanowski. - -1997-06-29 Gordon Matzigkeit - - * ltmain.sh.in: Change all the `eval "$run ..."' sequences to - `$run "eval ..."'. - - Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'. - This is the sequence recommended by the Autoconf manual, and - should avoid any problems on older machines. Eliminate all uses - of `cp -p'. Reported by Akim Demaille. - - (install): Use `test $# -gt 0' instead of `test -n "$1"'. - - * ltconfig.in (LN_S): Add test to see if `ln -s' works. - - * libtool.m4: Increment serial number, and require AC_PROG_LN_S. - -1997-06-26 Gordon Matzigkeit - - * ltmain.sh.in (link): Add missing `test' statement. Reported by - Akim Demaille. - -1997-06-24 Gordon Matzigkeit - - * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of - am_cv_path_ld. From Tim Pierce. - -1997-06-20 Gordon Matzigkeit - - * ltmain.sh.in: Redo two robustness fixes. Alexandre had the - correct approach, but I botched them. - - * ltconfig.in (dynamic_linker): Disable shared libraries on - MkLinux unless GNU libc is in use. Reported by Akim Demaille. - -1997-06-19 Gordon Matzigkeit - - * ltmain.sh.in (install): Add a missing `test' command. Reported - by Joel Weber. - Miscellaneous fixes to improve robustness. From Alexandre Oliva. - -1997-06-14 Gordon Matzigkeit - - * ltmain.sh.in (link): Create invalid libtool objects when partial - linking if we don't have PIC. From Jeff Dairiki. - (install): Fix bug if libtool object is installed to a file name - without directory components. From Jeff Dairiki. - -1997-06-13 Gordon Matzigkeit - - * Makefile.am (demo/configure): Fix up rules to run autoconf. - (aclocal.m4): Now we depend on our own libtool.m4. - - * configure.in (AM_PATH_PROG_LD): Use it. - - * libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used - by the C compiler. - (AM_PROG_LIBTOOL): Use it. - - * ltmain.sh.in (install, uninstall): Support installing and - uninstalling `.lo' files. From Jeff Dairiki. - -1997-06-11 Gordon Matzigkeit - - * Makefile.am (ltconfig, ltmain.sh): Only move if $(srcdir) is not - the current directory. Don't regenerate every time the package is - reconfigured. Reported by Tom Tromey. - (MAINTAINERCLEANFILES): Added ltconfig, ltmain.sh, so that - $(srcdir) is not messed with during a regular clean. - -1997-06-10 Gordon Matzigkeit - - * Makefile.am (ltconfig, ltmain.sh): Be sure to move these files - into $(srcdir) once they are created. - - * ltmain.sh.in (link): Disable building static libraries. - People should use their favourite AR and RANLIB commands. - Disable building old-style objects if `--disable-static' is - given. Suggested by Tom Lees and Stephan Kulow. - -1997-06-08 Gordon Matzigkeit - - * ltconfig.in (host_cpu, host_vendor, host_os): Patch up - definitions, to allow for the fact that the host_os may contain - hyphens (as in linux-gnu). From Scott Goehring. - - * ltmain.sh.in (link): Move the `dlname' setting closer to the top - of the file. Suggested by David Mosberger-Tang. - Symlink the libtool archive into the `.libs' directory so that it - can be found by programs that want to find a library's dlname by - searching LD_LIBRARY_PATH. Reported by David Mosberger-Tang. - -1997-06-06 Gordon Matzigkeit - - * Tell people to report bugs to the new libtool mailing list, - . - -1997-06-05 Gordon Matzigkeit - - * ltconfig.in (allow_undefined_flag): New variable that implements - `-allow-undefined'. - (archive_cmds): Enable C++ constructors for FreeBSD 2.2. From - David Nugent. - - * ltmain.sh.in (link): Accept new `-allow-undefined' flag when - building libtool libraries. This tells libtool to allow - unresolved symbols to exist in shared libraries. Basically, this - turns off shared libraries on AIX. Suggested by Ian Lance Taylor. - -1997-05-26 Gordon Matzigkeit - - * libtool.m4 (LD): On at least IRIX, many different flags need to - be propagated to the linker if they are part of the compiler - command line. Reported by Anthony Green. - -1997-05-10 Gordon Matzigkeit - - * ltconfig.in: Trivial port to FreeBSD 3. From David Nugent. - -1997-04-25 Gordon Matzigkeit - - * ltmain.sh.in (link): Remove all traces of `-whole-archive', - `-no-whole-archive', and libtool convenience libraries. They were - more trouble than they're worth. If these are ever reimplemented, - they need more careful attention to make portable. - - * libtool.m4, ltconfig.in: Added a `--disable-static' flag to turn - off static library creation. From Tom Lees (who finally convinced - me that it was the Right Thing to do). - -1997-04-22 Gordon Matzigkeit - - * ltmain.sh.in (hardcode_runpath_var, runpath_var): Use them, if - the linker has no -rpath flag. - Quote the values we use to set runpath_var and shlibpath_var. - (link): Use libobjlibs for libtool convenience libraries. - - * ltconfig.in (hardcode_runpath_var, runpath_var): Add new - variables to describe linkers that honour `LD_RUN_PATH'. - (host_cpu, host_os): Use these more specific variables, rather - than the full canonical host system name. - - * ltmain.sh.in (dlname): Distinguish between missing - `-export-dynamic' and when the library is only statically linked. - -1997-04-21 Gordon Matzigkeit - - * ltconfig.in: Trivial port to OpenBSD by making it an alias for - NetBSD. From Tim Pierce. - -1997-04-16 Gordon Matzigkeit - - * ltconfig.in: Temporary measures to check for a broken collect2 - program. Right now, we just see if we're using GCC on AIX 3. - -1997-04-13 Gordon Matzigkeit - - * ltmain.sh.in (mode): Use `egrep -e' when inferring the operation - mode. - -1997-04-12 Gordon Matzigkeit - - * ltconfig.in (linker): Some GNU ld's don't accept `--version', - but do accept `-v'. From Jukka Honkela. - (ld_shlibs): AIX lossage may be settling down. AIX 3.2.5 ld does - *not* hardcode direct libraries, but AIX 4.1.[45] ld does. - -1997-04-07 Gordon Matzigkeit - - * ltconfig.in (hardcode_action): Fix silly logic error. From - Bruno Haible. - -1997-04-05 Gordon Matzigkeit - - * ltmain.sh.in (install): Relink if hardcode_action is `relink', - rather than using complex conditionals based on the other - hardcode variables. - - * ltconfig.in (hardcode_action): Set to `relink', not `immediate', - if we can only hardcode existing directories. Rearrange - conditionals to make the intent clearer, otherwise this can be one - hellish piece of code for the already-dizzy libtool maintainer. - -1997-04-02 Gordon Matzigkeit - - * replfunc.m4: Delete from the distribution. Documentation now - describes how to set LTALLOCA and LTLIBOBJS in your own - configure.in. - - * ltmain.sh.in (link): Make sure a libtool library only counts as - a shared library if its library_names are non-null. - Use timestamps for .lo's when PIC is turned off, rather than - symlinking to the real object. This helps invalid mixtures of PIC - and non-PIC to fail. - -1997-04-01 Gordon Matzigkeit - - * Makefile.am (EXTRA_DIST): Distribute libtool.prj. - - * Shameless plug: Changed source code management system from CVS - to PRCS. - - * libtool.scm: Initial Guile implementation of libtool. - - * ltmain.sh.in: An unexpected inconsistency in my whole approach - to shared libraries has proven that libtool needs to be completely - rewritten if I'm going to give full shared library support for - platforms that don't use the GNU C library version 2 (which to my - knowledge currently only works on GNU Hurd and Linux/GNU systems). - Porting the GNU C library should not be difficult, though. - - Platforms that don't have the dlopen(3) family of functions will - need to install GNU DLD version 4 in order to build any kind of - libraries at all. Unfortunately, DLD 4 won't be released for a - while, because I maintain it, and I'm too busy working on libtool. - - I'll keep the old ltconfig/ltmain.sh implementation around for as - long as I can, and continue applying bug fixes, so that I'll have - a reasonable starting point for this new libtool implementation. - - It looks like this implementation will be even more complex than - the original (pre-0.7) libtool. Initial estimates show that it - may be up to 3 times slower, and 5 times larger than libtool-0.9. - I'll probably have to rewrite it in Guile to get reasonable - performance, which will severely limit its portability for a - while. - - That will also introduce a bootstrapping issue, since the next - release of Guile will use libtool to build shared libraries. So, - if users want to have shared Guile libraries, they will have to - configure Guile with `--disable-shared', compile it, install it, - then reconfigure Guile with `--enable-shared' and repeat. - - I was hoping to get libtool 1.0 out the door by early April, but - now it looks like it will take at least another year before it'll - be usable by the public at large. April fools. libtool.scm - doesn't exist yet, either. - - * ltconfig.in (verify_host): Remove redundant `Transform *-*-linux* - to *-*-linux-gnu*'. From Bruno Haible. - -1997-03-31 Gordon Matzigkeit - - * Makefile.am: Use the new AUTOMAKE and ACLOCAL variables. - - * ltmain.sh.in (link): Only fail if a convenience library doesn't - exist, and the user specified -whole-archive. - Fix shell quoting that was breaking @OUTPUT@ substitution. - -1997-03-28 Gordon Matzigkeit - - * ltmain.sh.in (link): Use the hardcode_libdir_separator. - Convenience libraries are libtool objects if we're not building - libtool libs. - - * ltconfig.in (hardcode_libdir_separator): Added in case the - linker only honours the last of the -rpath flags (but it can - contain multiple colon-separated directories), such as on OSF/1. - Reported by Carl D. Roth. - - * ltmain.sh.in (link): Set the dlname if -export-dynamic is given. - (install, uninstall): Handle the dlname file separately. - - * ltconfig.in (export_dynamic_flag): Added to allow programs to - use reflexive dlopens. - - * ltmain.sh.in: Include the mode name in any help messages. - (dlname): New mode to give the name to be used with dlopen(3). - - * ltconfig.in (AR): Allow AR to be set by the user, and export it - to ltmain.sh. - - * ltmain.sh.in: Remove broken profiled library support. - Added `-whole-archive' and `-no-whole-archive' to manipulate - convenience libraries. - -1997-03-27 Gordon Matzigkeit - - * ltmain.sh.in (link): Allow the creation of static convenience - libraries made of libtool objects. Suggested by David - Mosberger-Tang. - -1997-03-25 Gordon Matzigkeit - - * ltconfig.in: On AIX, libtool also needs to look for `B' symbols - in nm output. These are global variable definitions. - - * ltmain.sh.in: Linking with -static should link against the - linklib if old_library is empty (like it is on AIX). - - * ltconfig.in: Change the order of OS detection, so that - linux-gnu* is detected before gnu*. - - * Makefile.am (libtool): Use the correct CC, RANLIB, LD, when - generating libtool. From Carl D. Roth. - - * configure.in: Find out the user-supplied CC, LD, RANLIB. From - Carl D. Roth. - -1997-03-24 Gordon Matzigkeit - - * ltmain.sh.in: Linking with -static should link against the old - library, not linklib. - - * README-automake: Updated to point to Automake 1.1m. - -1997-03-15 Gordon Matzigkeit - - * demo/main.c: Use it. - - * demo/foo.h: Declare it. - - * demo/foo.c: Added definition of `nothing' so that we have an - global variable definition, as well as functions. - -1997-03-12 Gordon Matzigkeit - - * ltconfig.in: Make sure either enable_shared or enable_static is - configured. Reported by Tom Tromey. - - * ltmain.sh.in: Bomb out if no library types are configured. - -1997-02-22 Gordon Matzigkeit - - * ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed - from `hardcode_libdir_flag'. - (library_names_spec): Renamed from `lib_names'. - - * ltconfig.in, ltmain.sh.in (hardcode_action): Change value from - `rpath' to `immediate'. - - * replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and - AM_STRUCT_ST_BLOCKS. - -1997-02-18 Gordon Matzigkeit - - * ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support - old-style config.guess scripts. - -1997-02-17 Gordon Matzigkeit - - * ltmain.sh.in: Create objdir *before* linking a program into it. - -1997-02-12 Gordon Matzigkeit - - * ltconfig.in: Any ld --version that returns GNU is probably a GNU - ld. From Marcus Daniels. - - * libtool.m4: Added AM_REPLACE_FUNCS. - -1997-02-11 Gordon Matzigkeit - - * ltconfig.in: Trivial port to *-*-osf4. From Bruno Haible. - -1997-02-10 Gordon Matzigkeit - - * ltconfig.in: AIX 3 and 4 ld only hardcodes LIBPATH if -L is not - specified. This behaviour is the same with both xlc and gcc. - -1997-02-07 Gordon Matzigkeit - - * doc/platforms.texi: Yaay! We found a workaround for HP-UX - /bin/sh buffer overflows. From Eric Backus. - -1997-02-03 Gordon Matzigkeit - - * Release 0.9. - - * PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am: - Move PLATFORMS to doc/platforms.texi. - - * ltmain.sh.in (link): Use hardcode_libdir_flag to get a library - directory into the resulting binary. - Use hardcode_action, and make many simplifying changes to have - compilation and finalization be consistent with each other. - - * ltconfig.in: Not so amazing! It's AIX cc that hardcodes direct - libraries... gcc doesn't, though. - (link_rpath_flag): Change link_rpath_flag to be - hardcode_libdir_flag. - (hardcode_action): New variable to simplify ltmain.sh. - -1997-01-29 Gordon Matzigkeit - - * ltmain.sh.in: Change to take advantage of linkers that don't - hardcode direct libraries. - - * ltconfig.in: Amazing! AIX 3 linker doesn't hardcode direct - libraries, which makes it less buggy than AIX 4. Reported by Mark - Kettenis. - - * demo/configure.in: Check for the math library. - - * demo/foo.c (foo): Change to use the `cos' function, so that we - need to link against another library. - -1997-01-28 Gordon Matzigkeit - - * ltmain.sh.in (link): Export the PATH variable in order to find - the program, rather than giving a full path. This helps give the - program a less confusing value for argv[0]. - -1997-01-26 Gordon Matzigkeit - - * Release 0.8. - -1997-01-24 Gordon Matzigkeit - - * Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the - distribution. - -1997-01-22 Gordon Matzigkeit - - * libtool.m4: For IRIX 6, ld needs -n32 if cc uses it. Reported - by Bruno Haible. - - * ltconfig.in: IRIX ld does not hardcode direct libraries. - Reported by Bruno Haible. - -1997-01-18 Gordon Matzigkeit - - * ltconfig.in, ltmain.sh.in (hardcode_shlibpath_var): Allow new - value, `unsupported', since most linkers do not allow you to use - shlibpath_var for initial linking. - - * ltconfig.in: Lots of bug fixes from Bruno Haible. Set wl on - OSF/1, fix definitions of hardcode_* variables. - (archive_cmds): Fix not to use +h on HP-UX 9.x. Reported by Bruno - Haible. - -1997-01-17 Gordon Matzigkeit - - * libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings. - Suggested by Akim Demaille. - - * libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is - specified. Reported by Bruno Haible. - -1997-01-16 Gordon Matzigkeit - - * demo/Makefile.am (hc-direct): Do better searching for the proper - name to do a direct link. - (hc-libpath): Make allowances if shlibpath_var cannot be used - to find libraries at link time, such as on AIX. - - * Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c. - - * demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to - KNR form, for better portability, and less ansi2knr hair. - - * demo/configure.in: Remove AM_FUNC_PROTOTYPES. - - * demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS. - - * demo/ansi2knr.1, demo/ansi2knr.c: Removed these files. - - * ltmain.sh.in: Use 1>&2 consistently to direct errors and - warnings to stderr. - (compile): Fix missing single quote. - - * ltconfig.in (hardcode_direct): On Solaris at least, using - DIR/libNAME.so does not hardcode DIR, so introduce a new hardcode - variable to reflect that. - - * ltmain.sh.in (link): If linking with $link_static_flag fails, - then retry without it, but still use the .a versions of - uninstalled libtool archives. - -1997-01-15 Gordon Matzigkeit - - * ltmain.sh.in (link): Eval $link_static_flag. Reported by Bruno - Haible. - - * PLATFORMS: Add to distribution. Suggested by Bruno Haible. - -1997-01-13 Gordon Matzigkeit - - * ltconfig.in: Add support for SCO OpenServer 5.x. From - Christopher Olsen. - - (can_build_shared): Initialize at the top of the file, so that - shared libraries aren't built on platforms that don't support - them. - -1997-01-11 Gordon Matzigkeit - - * ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi: - Update the copyright completion years. - -1997-01-08 Gordon Matzigkeit - - * ltconfig.in: Port to IRIX 5.3, 6.2. - -1997-01-06 Gordon Matzigkeit - - * ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the - port is trivial. - - * libtoolize.in: Add --dry-run option, -n for short. - -1997-01-03 Gordon Matzigkeit - - * ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't - understand "export something=val". From Bruno Haible. - -1997-01-02 Gordon Matzigkeit - - * ltmain.sh.in (compile): Recognize valid source file suffixes for - Fortran and C++. - -1996-12-17 Gordon Matzigkeit - - * ltmain.sh.in (link): Don't allow *._o and *.l_o to be valid - object type suffixes, in spite of Automake's current ansi2knr - implementation. Not all compilers allow non-`.o' suffixes. - -1996-12-16 Gordon Matzigkeit - - * ltmain.sh.in (link): Delete the `libtool' version type. - -1996-12-12 Gordon Matzigkeit - - * ltconfig.in: Use the full autoconf syntax when checking for GNU - C. Delete library stripping program, until we have a correct - test. - -1996-12-11 Gordon Matzigkeit - - * ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm. From Mark - Kettenis. - -1996-12-09 Gordon Matzigkeit - - Reported by Charles Kerr: - * doc/libtool.texi (Creating Object Files): Doc fix independant -> - independent. - - * ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library - dependencies. - -1996-12-08 Gordon Matzigkeit - - * Release 0.7. - - * Makefile.am (EXTRA_DIST): Add README-automake to the - distribution. - - * ltmain.sh.in (link): When linking libtool libraries, use - standard objects if they are PIC. This prevents spurious warnings - about invalid suffixes on AIX. - - * demo/Makefile.am: Rename libhell to libhello, so that we're not - quite as offensive. - - * ltconfig.in: Remove unnecessary host validity checking. - - * ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la - is good enough (for consistency with *.a handling). - -1996-12-07 Gordon Matzigkeit - - * ltmain.sh.in (link): Accept files ending in .a as standard - object files. Reported by Ulrich Drepper. - Remove support for creating profiled libraries (for now). - Transform all library objects into standard objects when linking a - program. - - * ltconfig.in (thisdir): How embarrassing! An error in the regexp - for finding the directory component of the script path. - -1996-12-05 Gordon Matzigkeit - - * ltmain.sh.in (compile): Support `.S' (preprocessed assembler) - files. Reported by Anthony Green. - - * libtoolize.in: Give clearer instrutions for how to update - aclocal.m4. - - * ltconfig.in, ltmain.sh.in (link): Add support for creating - reloadable objects. - -1996-12-04 Gordon Matzigkeit - - * ltmain.sh.in (install): Fix passing -n flag to `libtool - --finish'. - (compile): Compile `.lo' and `.o' objects at the same time so that - non-PIC objects (if they are available) can be used for linking - into programs and creating static archives. Suggested by Ulrich - Drepper. - -1996-12-03 Gordon Matzigkeit - - * ltmain.sh.in (link): Give the full path to the libtool library - when sourcing it. - - * ltconfig.in (old_striplib): Do a configuration test to determine - if old-style libraries actually can be stripped or not. - -1996-12-02 Gordon Matzigkeit - - * ltconfig.in: Delete reference to ABOUT-LIBS. - - * tests: Added new subdirectory. - - * doc/libtool.texi: Doc fixes, and finished up the Configuring - chapter. - - * ltmain.sh.in (link): Allow *._o and *.l_o to be valid object - file suffixes, for Automake's ansi2knr implementation. - New option -version-info replaces -version-file. - - [help]: Give a pointer to mode-specific help when appropriate. - - * ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC. - - * demo: Also test Automake's ansi2knr support. - -1996-11-19 Gordon Matzigkeit - - * ltconfig.in: Bug fixes for AIX 4, and for static platforms. - - * ltmain.sh.in (install): Fix for loops over arguments. - Need to quote ${IFS= } -> "${IFS= }". - (link): Fix soname_spec bug. Create objdir whether or not we have - shared libraries. - - * ltconfig.in: Check for library stripping program. - Use test -f instead of test -e. - -1996-11-18 Gordon Matzigkeit - - * ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't - set. - Be verbose about the environment variables we were configured - with. - - * ltmain.sh.in (objdir): change to .libs. - -1996-11-16 Gordon Matzigkeit - - * ltmain.sh.in (install): Just plunge ahead with the - installation... don't try to enforce dependencies. - -1996-11-15 Gordon Matzigkeit - - * ltmain.sh.in: Fix up $libdir to be $dest in install mode. - -1996-11-10 Gordon Matzigkeit - - * ltmain.sh: Finished rewrite of compile, link, and install - modes. - - * New ChangeLog file for libtool-0.7, since I've totally rewritten - libtool. - -1996-03-15 Gordon Matzigkeit - - * For historical reasons: this is when I started writing libtool. +1998-12-03 Thomas Tanner + + * ChangeLog: converted CR/LF back to CR format + * ltconfig.in: new variable sys_lib_search_path for searching + of installed libraries, export archive_sym_cmds and + sys_lib_search_path + * ltmain.in: use sys_lib_search_path, removed extradeplibs + (they're not portable) + +1998-12-02 Gary V. Vaughan + + * libltdl/configure.in: look for string.h or else strings.h, and + also check for ANSI strrchr() function. Fix `undescore before + symbols' macro to not rely on a.out (cygwin uses a.exe!). Fix + `underscore for dlsym' to set cache variable properly, not just in + environment of AC_DEFINE(NEED_USCORE). + * libltdl/ltdl.h (__ptr_t): for K&R compatibility using char*. + * libltdl/ltdl.c (strrchr): fallback function incase none is + defined in libc. + (trim, ltdlopen): replace rindex with ANSI strrchr. + Add static function declarations so that we get type checking with + ANSI compilers. Use __ptr_t instead of void*. + +1998-12-01 Thomas Tanner + + * ltconfig.in: added -export-symbols support for GNU ld and + Solaris (untested), archive_sym_cmds for -export-symbols + * doc/libtool.texi, ltmain.in: -export-symbols is now + independent from -export-dynamic and does not work for modules + anymore + * ltmain.in: added some checks for -export-symbols + * mdemo/modules/Makefile.am: replaced -export-symbols with + -export-dynamic since it doesn't work for modules + +1998-12-01 Gary V. Vaughan + + * README: Updated homepage pointer to gnu libtool page. + + * ltconfig.in (ltdll.c): update the ltdll.c file for cygwinb20. + Based on code from Mumit Khan . + (archive_cmds): correct typo libtool.c->ltdll.c. Update shell + commands for cygwin32. + + * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): New macro; find out + whether compiled symbols have an extra leading underscore. + (AM_SYS_NM_PARSE): New macro (converted to m4 from ltconfig.in); + find a sed expression to parse global symbols from the output of + $NM. + (AM_PROG_LIBTOOL): require AM_SYS_NM_PARSE and + AM_SYS_SYMBOL_UNDERSCORE. + * demo/dlmain.c (main): Remove a single leading underscore from + compiled symbol names if necessary. + +1998-12-01 Alexandre Oliva + + * config.guess, config.sub: imported from autoconf pre-2.13 + +1998-11-27 Gary V. Vaughan + + * libtool (AM_PROG_LD): Oops... we need to know the host_os for + the changes below. I'm not sure whether mingw32 and os2 support + UNC paths, if they did we wouldn't need the check, we could use + UNC paths on all three; or if the bug with $LD not being + shell-meta escaped was fixed, we could use '\\' separators on all + three. AC_REQUIRE'ed AC_CANONICAL_HOST. + + * libtool.m4 (AM_PROG_LD): Cannonicalize the absolute path for the + ld program; The order is funny to provide canonicalization to + paths with '\\' separators as well as '/'. + * ltconfig.in: ditto. + + * AUTHORS: Added myself as a co-maintainer. + + * ltconfig.in (archive_cmds): The `;\' in a compound statement is + expanded wrongly for cygwin32, mingw32, aix3 and aix4. Changed to + `;'. + +1998-11-25 Alexandre Oliva + + * libtool.spec (URL): point to www.gnu.org + (Source): point to ftp.gnu.org + + * Makefile.am (EXTRA_DIST): removed libtool.prj + Reported by Akim Demaille + +1998-11-24 Alexandre Oliva + + * ltconfig.in (echo): avoid shell error messages when we're + testing for large command line support + Reported by Axel Thimm + + * doc/PLATFORMS: updated last-tested release for platforms I've + got access to + + * THANKS: added Chris P. Ross + +1998-11-24 Chris P. Ross + + * ltconfig.in: added recognition of the dynamic linker on BSD/OS 4.x + * README: added BSD/OS 4.x to the list of supported platforms + * doc/PLATFORMS: added BSD/OS 4.x support for various host id's + +1998-11-24 David Heine + + * ltmain.in (pass_all): actively pass the flags + +1998-11-24 Thomas Tanner + + * depdemo: added inter-library dependencies demo (doesn't work yet!) + * AUTHORS: added myself to the list of maintainers + +1998-11-22 Thomas Tanner + + * libltdl: added support for .la files, LGPL license, + K&R compatibility, some API changes and bugfixes + * ltmain.in: renamed -module flag (for compiling) to -force-static, + define -DSTATIC when compiling static .o files, + do not include directories in dld_preloaded_symbols + * mdemo: modified mdemo to work with the new libltdl + * tests/mdemo-exec.test, tests/mdemo-inst.test: use .la files + +1998-11-21 Alexandre Oliva + + * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on + header files defining it. + + * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create + libraries with gcc -shared if using gcc without GNU ld. + + * ltconfig.in: replaced occurrences of solaris2 with solaris, to + prepare for Solaris 7 + +1998-11-19 Alexandre Oliva + + * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen -> -dlopen + (hell_LDFLAGS): added -export-dynamic and -dlopen + (SUBDIRS, INCLUDES): added modules directory + (foo1.c, foo2.c, foo.h, libfoo1.sym, libfoo2.sym): moved to modules + * Makefile.am: ditto + * tests/mdemo-exec.test, tests/mdemo-inst.test: libraries moved + * mdemo/modules/Makefile.am: new file + + * */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies + + * ltmain.in: missing `test' between `&&' and `"$module"' + + * ltconfig.in (echo_test_string): the whole ltconfig script was + too much for DU4.0's ksh, but the first 50 lines will be enough. + + * ltmain.in (installed): new variable defined within a .la file, + so that libtool can now link already-installed libraries into a + program. + * NEWS: ditto + * doc/libtool.texi (Linking executables): document it + + * ltmain.in (output_objdir): compute it from $output, not $arg + +1998-11-18 Alexandre Oliva + + * NEWS: -module and libtldl + * mdemo/Makefile.am: ../libltdl is within $(srcdir) + +1998-11-18 Thomas Tanner + + * libltdl, Makefile.am: added libltdl (a system independent + dlopen wrapper library extracted from mdemo) + * ltmain.in: added -module flag for compiling and linking of + modules. If enabled it compiles always both .o (with -DLT_RENAME) + and .lo files + * mdemo: modified mdemo to work with libltdl + * tests/ltdl*: added tests for libltdl + +1998-11-16 Steve Price + + * ltconfig.in: when $host_os is freebsd[23]* determine whether + the current linker format is a.out or ELF + * ltmain.in: add two new $version_type's, freebsd-aout and + freebsd-elf, to support above change + +1998-11-16 Stephan Kulow + + * ltconfig.in: extent no_builtin_flag to contain -fno-rtti and + -fno-exceptions in case we compile with a gcc, that supports + this options (egcs and gcc >= 2.8) + +1998-11-16 Alexandre Oliva + + * ltmain.in (C_compiler): copy $CC before it is overwritten with + command-line compiler, so that we can use it to compile C sources + generated during the build. This fixes the problem that showed up + with -export-dynamic of C++ programs in egcs 1.1. + * NEWS: ditto + +1998-11-12 Alexandre Oliva + + * PORTING: Porting instructions are in the libtool manual already + + * NEWS: Mention -export-symbols and new dlpreopen + +1998-11-11 Alexandre Oliva + + * ltmain.in (IFS): revert Gary's patch when parsing version + information; we still use `:' here :-) + + * NEWS: updated + * PORTING: new file, with general instructions and inter-library + dependencies tips + +1998-11-11 Gary V. Vaughan + + * ltconfig.in: make use of '~' field separator in reload_cmds, + old_archive_from_new_cmds, old_archive_cmds, archive_cmds, + old_postinstall_cmds, postinstall_cmds, old_postuninstall_cmds, + postuninstall_cmds and finish_cmds, so that the semi-colons inside + if/then/else/fi and for/do/done etc. do not break the eval loop in + ltmain.in (below). + * ltmain.in: changed all of the eval loops to use an IFS of `~', + to allow differentiation between the end-of-statement-; + (now `~' is used) and end-of-substatement-; (still `;'). This + fixes AIX and win32 at least. + +1998-11-11 Alexandre Oliva + + * ltconfig.in (sunos*, sympat, symxfrm): remove underscore + prepended by the compiler + +1998-11-10 Toshio Kuratomi + + * ltconfig.in: re-enable deplibs + * ltmain.in: support deplibs, at least for GNU/Linux/x86 + Updated to current libtool by Thomas Tanner + +1998-11-10 Gordon Matzigkeit + + * ltmain.in (link): Make the relink warning less harsh. + +1998-11-07 William M. Perry + + * ltconfig.in (aix3, aix4): uniquify symbol names in archive_cmds + +1998-11-07 Alexandre Oliva + + * ltconfig.in: add --falback-echo, to be used if everything else + fails. The tests now check the behavior of $echo for very large + strings, because some echo commands would just core dump (e.g., + Solaris' printf). If too large strings fail, smaller ones are + tested. + (ltecho): arrange that, if the --fallback-echo method is selected, + echo will be defined in the libtool script so as to re-run itself, + not ltconfig + * ltmain.in: add --fallback-echo + (qecho) ensure that, if --falback-echo is being used, qecho is + defined with the full pathname of the libtool script + +1998-11-07 Thomas Tanner + + * mdemo/main.c: removed hardcoded library names; link against -lm + * tests/mdemo-exec, tests/mdemo-inst: pass the library names + to the program + +1998-11-07 Marc J. Fraioli + + * README: Added DG/UX + * doc/PLATFORMS: ditto + +1998-11-04 Michael Tiemann + + * ltconfig.in (irix6): it's a little bit different from irix5 + +1998-11-04 Alexandre Oliva + + * THANKS: Added Thomas Tanner and Gary V. Vaughan + + * ltconfig.in, ltmain.in: updated and fixed the patches below + +1998-11-04 Thomas Tanner + + * mdemo/*: added new demo to demonstrate building of dlopenend + modules + * tests/Makefile.am, tests/mdemo*: added some tests for mdemo + +1998-11-04 Gary V. Vaughan + + * demo/configure.in: added AC_EXEEXT macro so that the tests can + work on cywin32/mingw32 hosts. This requires the current CVS + autoconf + +1998-11-04 Thomas Tanner + + * ltmain.in: New flag -export-symbols; new dlpreopen system + * demo/dlmain.c: removed dld_preloaded_symbol_count + +1998-11-04 Ian Lance Taylor + + * ltmain.in: On installation, don't get confused if the same name + appears more than once in the list of library names. + +1998-11-04 Ian Lance Taylor + + * ltconfig.in: Add objext and libext variables. Check for object + suffix. Check for mingw32* as well as cygwin32*. Use objext when + testing compiler. Add support for Visual C++ on cygwin32 when not + using gcc. Add objext, libext, and fix_srcfile_path to generated + libtool script. + * ltmain.in: Use .${objext} rather than .o. Use fix_srcfile_path + if it is set. Check for .obj as well as for .o, and for .lib as + well as for .a. Use .${libext} rather than .a when creating old + libraries. + * libtoolize.in: Change initial /bin/sh to @SHELL@. + * libtool.m4 (AM_PROG_LIBTOOL): Add AC_REQUIRE for + AC_CANONICAL_BUILD, so that autoconf doesn't get mixed up by the + AC_REQUIRE in AC_CHECK_TOOL. + +1998-11-04 Ian Lance Taylor + + * ltconfig.in: Look in the right directory for libtool.c in + archive_cmds for cygwin32. + +1998-11-04 Ian Lance Taylor + + * ltconfig.in: Fix cygwin32 support to avoid using a double + extension, to delete the def file, to set version_type to windows, + and to include versuffix in the DLL name. + * ltmain.in: Add support for a version_type of windows. + +1998-11-04 Ian Lance Taylor + + * ltconfig.in: Add cygwin32 support. + * libtool.m4 (AM_PROG_LIBTOOL): Call AM_SYS_LIBTOOL_CYGWIN32 on a + cygwin32 host. Pass DLLTOOL and AS to ltconfig. + (AM_SYS_LIBTOOL_CYGWIN32): New macro. + +1998-11-04 Alexandre Oliva + + * libtool.m4 (sco): fix typo + +1998-11-04 Ian Lance Taylor + + * ltconfig.in: On AIX, don't treat GNU ld specially. + +1998-11-04 Alexandre Oliva + + * ltconfig.in (hardcode_minus_L): Revert Ian's patch for + ltconfig.in. Although -L hardcoding is not used with GNU ld, it + does happen, so hardcode_minus_L must be set to yes. + + * ltconfig.in (compiler_o_lo): check whether we can write directly + to a .lo + + * ltmain.in (compiler_o_lo): if not, write to .o and rename it + +1998-11-04 Ian Lance Taylor + + * ltconfig.in: For sunos4 using GNU ld, set hardcode_minus_L to + no. + * ltmain.in: Add some hacks to make SunOS --enable-shared work + when using GNU ld. + +1998-11-04 Alexandre Oliva + + * THANKS: Added Marc J. Fraioli + +1998-11-04 Marc J. Fraioli + + * ltconfig.in (dgux): new supported platforms + +1998-11-04 Alexandre Oliva + + * ltconfig.in (need_locks): if neither `-c -o' nor hard links are + available, fallback to not so safe mechanism, by setting + need_locks to warn + * ltmain.in (need_locks): when need_locks is set to warn, use the + lockfile to try to fail in case of incorrect concurrent builds + + * THANKS: Added Eric Estievenart + +1998-11-04 Eric Estievenart + + * doc/libtool.texi (Compile mode): Document that -o is fully + supported. + + * libtool.m4 (libtool-lock): new ARG_ENABLE; sets (need_locks) + * ltconfig.in (disable-lock): control need_locks + (hard_links): check whether hard-links can be used for locking + * ltmain.in (need_locks): use $output_obj.lock for locking + +1998-11-03 Alexandre Oliva + + * ltmain.in: correctly create libraries and programs with + directory components in their names + +1998-11-03 Eric Estievenart + + * ltmain.in (output_obj): typo + +1998-11-02 Ian Lance Taylor + + * ltconfig.in: For sunos4, add ${libname}.so$versuffix to + library_names_spec. + * ltmain.in: For version_type of sunos, set versuffix even if + -version-info was not used. + +1998-11-02 Alexandre Oliva + + * ltmain.in (libobj): default value must not contain directory + components + +1998-11-02 Eric Estievenart + + * ltconfig.in (compiler): detect if the compiler supports + -c and -o flags, create a variable compiler_c_o. Also issue + a big warning if it is not supported + + * ltmain.in (compile): enable the -o option as input for libtool. + The objects are not moved if the compiler supports -o with -c. + Sources and objects can contain relative directories. + (link): enable the linking of executables into relative directories + +1998-11-02 Alexandre Oliva + + * AUTHORS: added myself as a co-maintainer + * THANKS: and removed my name from here + + * autogen: new script; run it to bootstrap libtool after checking + it out from CVS + + * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as + suggested by Robert Lipe + +1998-10-31 Gordon Matzigkeit + + * demo/Makefile.am (hc-libpath): Use parameters from the libtool + in the top build directory, since the one in the demo directory is + not guaranteed to exist. + +1998-10-27 Alexandre Oliva + + * demo/Makefile.am (objdir): there are no longer quotes around + objdir in the libtool script + +1998-10-27 Gordon Matzigkeit + + * ltconfig.in (dynamic_linker): Echo the result to fd 6, so that + --silent works correctly. From William M. Perry. + +1998-09-24 Gordon Matzigkeit + + * ltmain.in (link): Fix problems when building only static + libraries. From Owen Taylor. + +1998-08-20 Gordon Matzigkeit + + * ltmain.in (install): When library_names_spec has redundancies, + avoid deleting the main library when installing symlinks. From + Jeff Dairiki. + (link): Get rid of backticks in a here doc comment. + This causes segfaults on Solaris 2. From Aleksandar Bakic. + (finish): Don't display messages + + * ltconfig.in (archive_cmds): On HP-UX 9, make sure we don't try + to move a file to itself. From Jeff Dairiki. + +1998-08-19 Gordon Matzigkeit + + * ltconfig.in: Make changes to accomodate ltmain.c. + + * Makefile.am (clibtool): New target for the C version of libtool. + + * ltmain.c: Experimental C version of libtool. + +1998-07-10 Ian Lance Taylor + + * ltmain.in (install): Test against both $SHELL and /bin/sh. + +1998-06-30 Gordon Matzigkeit + + * ltmain.in: Convenience archive support. From Ulrich Drepper. + + * ltconfig.in (postinstall_commands): Change libraries to be + executable on Solaris in order to prevent ldd from moaning. From + Julian Gosnell. + (whole_archive_flag_spec): New variable to shortcut convenience + archive expansion. From Ulrich Drepper. + +1998-06-11 Gordon Matzigkeit + + * ltconfig.in, ltmain.in: Change globs to accept forward slashes + in absolute directory names used on DOS-like systems. From Robert + S. Maier. + +Thu May 28 18:59:08 1998 Ian Lance Taylor + + * ltconfig.in: Use $SHELL when invoking shell scripts. + +1998-05-21 Gordon Matzigkeit + + * ltmain.in (compile): Don't have `-static' turn off libtool + libraries, so that people can use it just to guarantee that `.o' + files exist. Suggested by David Mosberger-Tang. + +1998-05-18 Gordon Matzigkeit + + * ltmain.in (link): Possibly reexec the shell from within the + wrapper script. + Allow `-version-info' and `-release' to coexist again. If people + want to shoot themselves in the foot, I'd better let them do so, + so that people who are smart enough not to can squeeze out another + ounce of functionality. From Tim Janik. + (version_vars): Delete dead variable. + + * ltconfig.in (hardcode_minus_L): FreeBSD 3.0 doesn't hardcode, at + last. Reported by Jason Nordwick. + + * libtoolize.in, ltconfig.in, ltmain.in: Change a bunch of `if + test ...; then : ; else ...' constructs to `if test ! ...; then + ...', for clarity. + +1998-05-17 Gordon Matzigkeit + + * ltmain.in (LC_ALL, LANG): Save these values and restore them + during execute mode. From Pavel Kankovsky. + (mode): Accept strace and truss as programs that throw us into + execute mode. From Pavel Kankovsky. + +1998-05-07 Ian Lance Taylor + + * ltconfig.in: Don't use .$versuffix or .$major. Instead, assume + the variable will include any required prefix. + * ltmain.in: If no -version-info option was used, produce empty + version strings rather than 0.0.0. When making library symlinks, + avoid making a symlink if the name would be the same. + +1998-04-27 Gordon Matzigkeit + + * ltmain.in (link): Support `unsupported' as a hardcode_action. + Reported by Lars Hecking. + (lib_linked): Do some sanity checking to make sure that we + actually do link libtool libraries into the program to prevent the + above problem from happening again. + +1998-04-20 Gordon Matzigkeit + + * ltmain.in: Maybe reexec under $SHELL, if $echo doesn't work. + Reported by Lars Hecking. + +1998-04-19 Gordon Matzigkeit + + * Makefile.am (maintainer-rekey): New rule to force us to change + Project-Version after we make a release. This keeps all version + numbers in sync, rather than branching just before the release. + (maintainer-release, maintainer-checkin): Use maintainer-rekey. + + * ltmain.in (finish): Notice when a finish command fails, so that + we can add it to the list of recommendations. + +1998-04-17 Gordon Matzigkeit + + * libtool.m4 (AM_PROG_LIBTOOL): Append file descriptor 5 to + config.log, so that configure doesn't clobber the messages that + ltconfig put there. From David Taylor. + +1998-04-15 Gordon Matzigkeit + + * ltconfig.in (archive_cmds): Try using `$CC -shared' when + configuring for GCC under irix5 and irix6. From Wolfram Gloger. + (ofile): Add `--output' flag to change the name of the generated + libtool. Suggested by Wolfram Gloger. + +1998-04-14 Gordon Matzigkeit + + * ltmain.in: Remove all hardcoded references to ltmain.in in + favour of $PACKAGE and $PROGRAM. + (install): Compute the installation name for programs, in case we + install a relinked file which has a different name. Reported by + Pieter Schoenmakers. + + * ltconfig.in (echo): Try using the ksh(1) `print -r' builtin + command, before reverting to printf(1). + + * Makefile.am (libtool): Use $(SHELL) when invoking ltconfig. + + * ltconfig.in (echo): Rewrite the test for a working echo so that + we win on Solaris by avoiding printf(1), if possible. + +1998-04-13 Ian Lance Taylor + + * libtool.m4 (AM_PROG_NM): Don't override NM in the environment. + +1998-04-13 Gordon Matzigkeit + + * ltmain.in: New `--config' flag to print out all configured + variables. + + * libtool.m4: Pass ltconfig the undocumented --no-reexec flag, + since we call it explicitly using CONFIG_SHELL. + + * ltconfig.in: Restart the script under a different shell if + CONFIG_SHELL is not /bin/sh. This way, people can use Bash if + they don't have a working echo program. + + * ltmain.in, ltconfig.in: Use $SHELL instead of /bin/sh when + generating executable scripts. + + * libtoolize.in, ltconfig.in, ltmain.in: Implement the `--debug' + flag to begin shell tracing. + + * ltconfig.in (archive_cmds): Don't use `gcc -shared', even if we + have GNU ld. Reported by Robert S. Maier. + +1998-04-06 Gordon Matzigkeit + + * ltconfig.in (pic_flag): Create more than just a null C file, so + that the SunPRO 4.2 cc doesn't complain. From Bob Friesenhahn. + (gnu_ld_acts_native): Delete this variable. There is just too + much version skew to try to pretend GNU ld is the same as the + system ld. Reported by Ian Lance Taylor. + (hardcode_action): Don't bother relinking or aborting on systems + that are too dynamic to have a consistent hardcode method. + Reported by Doug Winterburn. + +1998-03-24 Gordon Matzigkeit + + * doc/libtool.texi: A little proofreading. From Albert + Chin-A-Young. + +1998-03-23 Gordon Matzigkeit + + * ltconfig.in: Treat HP-UX 11 just like HP-UX 10. From Jeff Law. + +1998-03-21 Gordon Matzigkeit + + * ltconfig.in (reload_flag): Correct a tiny bug where `--silent' + would still print out the reload flag. From Stephan Kulow. + +1998-03-20 Ian Lance Taylor + + * libtool.m4: Use changequote to avoid problems with square + bracket patterns. + +1998-03-20 Gordon Matzigkeit + + * Release 1.2. + +1998-03-18 Gordon Matzigkeit + + * ltmain.in: Rearrange some of the echos to make them more + consistent. + +1998-03-14 Gordon Matzigkeit + + * ltmain.in: Break up an echo command that causes Solaris printf + to dump core. Apparently the Solaris people hardcoded a 2110-byte + buffer into their printf(1). Feh. From John Judge. + +1998-03-11 Gordon Matzigkeit + + * ltconfig.in: Change the test for the PIC compiler flag so that + we assume it doesn't work if there are any warning messages. This + fixes a bug using old GCC's on HP-UX. Reported by Akim Demaille. + +1998-03-10 Andreas Schwab + + * Makefile.am ($(srcdir)/ltconfig): Remove bogus command to create + a file ltconfig in the build directory. + +1998-03-09 Andreas Schwab + + * ltmain.in: Avoid unnecessary use of command substitution, + replacing foo=`eval \\$echo \"$mumble\"` by eval foo=\"$mumble\". + + (link): Use ${1+"$@"} in wrapper scripts in order to pass + arguments safely to a program. + + * ltconfig.in: Use -fpic instead of -fPIC if $host_cpu matches + m68*. + +1998-03-08 Gordon Matzigkeit + + * Release 1.1. + + * ltmain.in: I like `here documents' a lot, but apparently + they are so badly handled by old and buggy /bin/sh's, that + replacing `cat < + + * ltconfig.in: Copy the contents of ltmain.sh into the generated + libtool. This should more than halve the execution times on old + or buggy /bin/sh systems, such as HP-UX 9 and SunOS 4.1.4. From + Tom Lane. + +1998-03-05 Gordon Matzigkeit + + * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): Add support for + the `default' package, so that people can control unnamed + packages. + (LD): Only add an ABI flag under IRIX 6.x, since IRIX 5.x doesn't + support them. From Alexandre Oliva. + +1998-03-01 Gordon Matzigkeit + + * ltconfig.in: Port to UnixWare 2.x. From Christopher Olsen. + +1998-02-25 Gordon Matzigkeit + + * ltmain.in (compile): For consistency, honour the `-static' flag + during compilation. + +1998-02-23 Brendan Kehoe + + * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): For + --enable-shared, heed the value of $PACKAGE from AM_INIT_AUTOMAKE + if given as the argument for the library to be built shared. + +1998-02-20 Gordon Matzigkeit + + * libtool.m4, ltconfig.in (NM): Fix up a typo confusion between + $ac_dir and $dir. Reported by Akim Demaille. + + * ltmain.in (link): Don't allow both `-version-info' and + `-release'. Reported by Danny Backx. + +1998-02-18 Gordon Matzigkeit + + * Makefile.am (noinst_SCRIPTS): Remove lineno from distribution. + + * lineno: Remove from distribution, as it is no longer needed. + + * Makefile.am ($(srcdir)/ltconfig.in, $(srcdir)/ltmain.sh): + Rewrite these rules not to use config.status or lineno. This + makes things simpler, and reduces dependencies, so that the + scripts are rebuilt and installed in srcdir only when necessary. + Reported by Stephan Kulow. + +1998-02-16 Gordon Matzigkeit + + * libtool.m4, ltmain.in, ltconfig.in: Correctly identify absolute + directory names on MS-DOS. Suggested by Bob Friesenhahn. + + * ltconfig.in, ltmain.in, libtool.m4: Change a bunch of `sed N!d' + commands to `sed Nq', for efficiency. + + * ltmain.in: Only egrep the first few lines of files in order to + determine if they were libtool-generated. This prevents egrep(1) + from taking forever to look at a 10MB binary on Solaris. From + Stephan Kulow. + +1998-02-11 Gordon Matzigkeit + + * ltconfig.in (no_undefined_flag): Add a flag to declare under + Solaris that the library should not have any undefined + references. Suggested by Bob Friesenhahn. + + * ltmain.in (mkdir): Fix one more mkdir race. From H.J. Lu. + +1998-02-08 Gordon Matzigkeit + + * ltconfig.in, ltmain.in (striplib, old_striplib): Ditto. + + * ltconfig.in (profile_flag_pattern): Get rid of dead code. + +1998-02-07 Gordon Matzigkeit + + * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): New macros to + modify the `--enable-shared' and `--enable-static' defaults in the + configure script. This works a lot better than the old + `enable_shared' and `enable_static' variables did. Reported by + Bob Friesenhahn. + +1998-02-07 Samuel Tardieu + + * ltmain.in: Recognize .ada, .ads and .adb as known suffixes (they + are used by GNAT, the GNU Ada compiler). + +1998-02-06 Gordon Matzigkeit + + * ltconfig.in: Turn on IRIX shared libraries again! + + * libtool.m4 (LD): Use file(1) to discover which ABI we're using + on IRIX, and propagate the correct linker flag. From Jim Wilson. + + * ltconfig.in, ltmain.in (Xsed): `arg=-n; echo "$arg" | sed ...' + gives problems, because the `-n' is interpreted as an option to + echo(1). So, use `echo "X$arg" | sed -e 's/^X//' ...' everywhere, + via the $Xsed convenience variable. Suggested by H.J. Lu. + +1998-02-02 Gordon Matzigkeit + + * ltconfig.in: Turn off IRIX shared library support until 32-bit + and 64-bit ABI differences can be resolved. + +1998-01-28 Gordon Matzigkeit + + * libtool.m4 (LD): Reverse yesterday's change because `-old_ld' + isn't accepted by GCC. + +1998-01-27 Gordon Matzigkeit + + * ltconfig.in (soname_spec): Add in user-specified release numbers + for every host system that supports an soname that differs from + the linkname. + + * libtool.m4 (LD): Add `-old_ld' to the list of flags that need to + be passed through on SGI. Reported by Chris Lee. + + * ltmain.in (release): Prepend a hyphen to the release number, and + fix a typo because `-version-info' takes only 3 args. From + H.J. Lu. + +1998-01-25 Gordon Matzigkeit + + * ltconfig.in (library_names_spec): On Linux, use the + user-specified release. + + * ltmain.in (link): Allow the user to specify a release number for + the library using the `-release' flag. Suggested by H.J. Lu and + Ian Lance Taylor. + +1998-01-19 Gordon Matzigkeit + + * ltconfig.in (old_postuninstall_cmds): Reorder so that chmod + happens after ranlib. From Markus F.X.J. Oberhumer. + + * ltmain.in (mode): Added `gcc*' and `*-gcc*' to the patterns that + recognize compilers. From Pieter Schoenmakers. + (link): Recognize `.a' files again. Suggested by Pieter + Schoenmakers. + +1998-01-18 Gordon Matzigkeit + + * ltmain.in (compile): Recognize `.asm' extension, for use with + the nasm assembler. From Markus F.X.J. Oberhumer. + +1998-01-12 Gordon Matzigkeit + + * ltconfig.in (runpath_var): Use instead of + `hardcode_runpath_var'. + +1998-01-11 Gordon Matzigkeit + + * ltmain.in (finish): Add a better --finish message. Suggested by + Kenneth Albanowski. + + * ltconfig.in, ltmain.in: Fix a few typos. + +1998-01-03 Gordon Matzigkeit + + * ltmain.in (link): Quote the definition of $echo in the wrapper + script. + + * ltconfig.in (export_dynamic_flag_spec): Use `--export-dynamic' + instead of `-export-dynamic', which is not accepted by all GNU + ld's. From Eiichi Takamori. + + * ltmain.in (install): Don't print silly `library stripping' + warnings. Reported by François Pinard. + +1997-12-19 Gordon Matzigkeit + + * ltmain.in: Don't forget to quote the CDPATH substitution. From + Tor Lillqvist. + +1997-12-18 Gordon Matzigkeit + + * ltconfig.in, ltmain.in (CDPATH): Unset this environment variable + so that HP-UX shells, at least, don't print out the directory name + after a `cd' command. From Tor Lillqvist. + +1997-12-10 Gordon Matzigkeit + + * demo/Makefile.am (hardcode): Change a bunch of references to + `$(LIBS)' to `-lm', since we no longer put -lm in LIBS. + + * demo/configure.in: Delete the test for libm, since it is + standard on every system. + + * demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm, + in accordance with new inter-library dependency code. + + * ltmain.in (dependency_libs): Added to help people link programs + without having to explicitly specify inter-library dependencies. + + * ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3 + restriction to the generated libtool script. Reported by Stefan + Westerfeld. + +1997-12-05 Gordon Matzigkeit + + * ltconfig.in (thisdir): Quote $echo in the generated libtool + script for HP-UX. From Markus F.X.J. Oberhumer. + + * ltmain.in (link): Recognize the `.s' suffix. From Markus + F.X.J. Oberhumer. + + * ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX + because link_static_flag is never evaled. From Eric Backus. + +1997-12-01 Gordon Matzigkeit + + * demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our + dependencies so that parallel builds work correctly. From Jim + Meyering. + + * Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite + these rules so that they are parallelizable. Reported by Jim + Meyering. + + * ltconfig.in (ltecho): We need special handling to quote the + `echo' variable itself. From Alexandre Oliva. + +1997-11-29 Gordon Matzigkeit + + * ltconfig.in (COLLECT_NAMES): Enable this workaround for a broken + collect2 only on AIX 3. This avoids problems on other AIX + versions. Reported by Stefan Westerfeld. + + * ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds, + except it is a single command which is evaled, and not shown. + + * ltconfig.in: Port to AmigaOS. From Joop van de Wege. + + * ltmain.in (echo): Delete preamble to check for a working echo, + since we just use the one included in the generated libtool. + + * ltconfig.in (echo): Include this definition in the generated + libtool script. + +1997-11-28 Gordon Matzigkeit + + * ltconfig.in, libtool.m4 (NM): Add /usr/ccs/bin to the PATH + before checking. From Kaveh R. Ghazi. + (NM): Delete an extraneous egrep from ltconfig. + + * ltconfig.in (finish_cmds): Change back to using `ldconfig -n'. + This makes Linux behave like other systems, which is more in line + with what libtool needs. + +1997-11-27 Gordon Matzigkeit + + * ltmain.in: Change a whole bunch of `progname' variables to + `modename'. This is for clarity, and to fix a tiny typo in finish + mode. + + * libtool.spec (Name, Version): Ditto. + + * configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate + the proper package name and version number. + + * ltconfig.in (gnu_ld_acts_native): Treat GNU ld like the native + linker on SunOS 4.x. Suggested by Alexandre Oliva. + (deplibs): Change the defaults all over, since most systems cannot + handle inter-library dependencies. + + * libtool.m4, ltconfig.in (NM): Only look at the first line of the + output from NM when determining whether it supports a command line + option. This prevents false positives on OSes which ignore + invalid flags, like HP-UX, which prints `nm: unknown option "B" + ignored'. Reported by Kaveh R. Ghazi. + + * ltconfig.in (finish_cmds): On Linux, update ld.so.cache by + removing the `-n' flag from ldconfig. Suggested by Kenneth + Albanowski. + + * Makefile.am (maintainer-checkin, maintainer-release): New + commands to reap the full benefit of using PRCS to maintain + libtool version numbers. + + * ltconfig.in, ltmain.in (global_symbol_pipe): Explicitly cast all + addresses to __ptr_t. This fixes a bug due to a strict IRIX + compiler. Suggested by Kaveh R. Ghazi. + +1997-11-23 Gordon Matzigkeit + + * ltmain.in (echo): For aesthetics, avoid using `$echo' when + `echo' will do *exactly* the same thing. This prevents ugly + `printf %s\n timestamp > some.lo' commands from appearing in the + libtool output. + (link): Delete the `-allow-undefined' flag because it is now the + default. Make `-no-undefined' in order for people to declare that + a library is entirely self-contained. This prevents maintainers + from accidentally creating shared libraries that won't work on + AIX. Reported by Stefan Westerfeld and Danny Backx. + + * ltconfig.in (echo): Use an echo variable, just as in ltmain.in, + because we need it for quoting substitutions. For most of the + script, though, use the default echo, just like Autoconf does. + Without this patch, character \001 ends up in global_symbol_pipe. + Reported by Lars Hecking and Jürgen Fluk. + + * ltmain.in (echo): Set default to `echo=echo'. Ooops. That's + what you get for testing obscure code paths and forgetting to + revert to the original version. Reported by Danny Backx. + +1997-11-14 Gordon Matzigkeit + + * ltconfig.in (hardcode_libdir_flag_spec): Set to `-R' for FreeBSD + 2.2. From Sean Kelly. + (postuninstall_cmds, old_postuninstall_cmds): Commands to run + after uninstall mode deletes the libraries. Suggested by Joop van + de Wege. + (export_dynamic_flag_spec): On HP-UX, add the `${wl}-E' + export_dynamic_flag_spec. Reported by Matthias Hoelzer. + +1997-11-11 Gordon Matzigkeit + + * ltconfig.in, ltmain.in (sed_quote_subst): Oops. We forgot to + quote backticks. Reported by Joop van de Wege. + +1997-11-09 Gordon Matzigkeit + + * ltconfig.in (symcode): On IRIX, don't extract undefined + symbols. When a function is inlined by G++, references to it are + still marked as undefined in the object file. This means that our + symbol file causes undefined references, because there are + actually no matching global symbols. Reported by Paul Kendall. + +1997-11-08 Gordon Matzigkeit + + * ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool + script fragment to the generated libtool, rather than to stdout. + +1997-11-07 Gordon Matzigkeit + + * libtool.m4 (LD): Add a more sophisticated test to determine the + ABI flag on IRIX 6. Suggested by Lars Hecking and Ian Lance + Taylor. + + * ltconfig.in, ltmain.in (COLLECT_NAMES): Only export this + variable if we are running under AIX. Otherwise, we tickle a g++ + bug under IRIX. From Paul Kendall. + + * Change bug reporting address to . + + * ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a + wildcard argument to `-expect_unresolved'. From Stephan Kulow. + +1997-11-06 Gordon Matzigkeit + + * ltmain.in (link): Use libname_spec. + + * ltconfig.in (pic_flag): Somehow, the HP-UX pic_flag (`+Z') was + dropped between libtool-1.0 and now. Add it back in. Reported by + Akim Demaille. + Integrated more patches for OS/2. From Jeff Freedman. + (libname_spec): New variable for OSes that don't require their + libraries to look like `libNAME.a'. + + * ltmain.in (link): Only use global_symbol_pipe if it has been + defined. From Stephan Kulow. + + * ltconfig.in (global_symbol_pipe): Protect C fragment under C++ + compilers. From Stephan Kulow. + + * Makefile.am ($(srcdir)/acinclude.m4, + $(srcdir)/demo/acinclude.m4): Change rules to use LN_S so that + they can be run on any system. + + * ltconfig.in (archive_cmds): For NetBSD, don't include deplibs. + From Dieter Baron. + + * ltmain.in (mkdir): Check that the directory doesn't exist before + we exit with error, so that we don't get races during parallel + builds. From H.J. Lu. + (fbsd_hideous_sh_bug): Apparently, some FreeBSD /bin/sh's have a + bug that will empty base_compile unless we do this dummy + assignment. From Marc van Kempen. + +1997-10-22 Gordon Matzigkeit + + * libtool.m4 (libtool_shared, libtool_static): Fixed logic error + to reenable override of libtool's defaults by setting + enable_shared or enable_static in configure.in. Reported by Tom + Tromey and Stephan Kulow. + + * ltmain.in (link): Add explicit support for compiler options that + begin with `+'. Reported by Aubert Pierre. + +1997-10-20 Gordon Matzigkeit + + * ltmain.in: Silly me. Change a bunch of occurances of "* $dir *" + into *" $dir "*. + + * ltconfig.in (pic_flag): PIC is the default for AIX. From Mark + Kettenis. It is also the default for OSF/1. + + * demo/Makefile.am (objdir): Quote double-quotes. From Mark + Kettenis. + + * ltconfig.in (global_symbol_pipe): This variable is not + double-evaled, so it should not be double quoted. From Mark + Kettenis. + +1997-10-19 Gordon Matzigkeit + + * ltconfig.in (LD): Same as below. + + * libtool.m4 (LD): Set LD if we discover an absolute path to GNU + ld. This prevents breakage when `$CC -print-prog-name=ld' returns + an absolute directory name. Reported by Ulrich Drepper. + + * ltconfig.in: Port to OS/2 using EMX. From Jeff Freedman. + + * ltmain.in (link): Use old_archive_from_new_cmds. + + * ltconfig.in (old_archive_from_new_cmds): New variable to + support DLL libraries. + + * ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is + not empty. Reported by Stephan Kulow. + +1997-10-18 Gordon Matzigkeit + + * ltconfig.in (objdir): Use the .libs directory on all systems for + which that name is valid, and _libs on the others (like MS-DOS). + Suggested by Juergen Erhard. + +1997-10-14 Gordon Matzigkeit + + * ltmain.in (link): Added a bit more inter-language support to the + symbol file generation process. + Instead of complaining about unrecognized argument suffices, pass + them to the linker. This prevents libtool from barfing on + mandatory arguments to linker flags. Reported by Michael + Tiemann. + +1997-10-09 Gordon Matzigkeit + + * ltmain.in (link): Change the wrapper script to follow symlinks + in order to find thisdir. This should put the final nail in the + coffin for problems with wrapper scripts. From Ian Lance Taylor. + +1997-10-07 Gordon Matzigkeit + + * ltmain.in: Change a few `$echo' commands into `$show' to make + --silent mode behave as advertised. + + * ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use + `-expect_unresolved \*'. From Christian Mondrup. + + * ltmain.in (install): Change install mode to allow a specified + /bin/sh argument at the beginning of the install_prog. Also, + specify the shell to run when invoking libtool recursively for + finish mode. From Chris Provenzano. + + * libtool.m4 (LIBTOOL): Change definition to include $(SHELL). + From Chris Provenzano. + + * ltconfig.in: Port to UTS 4.x. From Alistair Crooks. + + * demo/Makefile.am (hc-libflag): Add rules to make this binary for + hardcode.test. + +1997-09-24 Gordon Matzigkeit + + * ltconfig.in (LD): As with libtool.m4, don't override LD. + Do a whole bunch of ac_t quoting. + +1997-09-24 Ian Lance Taylor + + * libtool.m4 (AM_PROG_LD): Don't override LD in the environment. + +1997-09-21 Gordon Matzigkeit + + * libtool.m4, ltconfig.in (NM): Arguments to the for loop must be + whitespace separated. This fixes a bug under FreeBSD's /bin/sh. + From George Scott. + +1997-09-20 Gordon Matzigkeit + + * ltmain.in (deplibs): When building shared libraries, always add + -lc to deplibs. Reported by Andreas Jellinghaus. + +1997-09-15 Gordon Matzigkeit + + * ltconfig.in, ltmain.in (COLLECT_NAMES): If the COLLECT_NAMES + environment variable has not been set, set it to empty. This + apparently fixes the AIX bug with GCC's collect2. Reported by + Mark Kettenis. + + * demo/Makefile.am, ltmain.in, tests/hardcode.test (objdir): + Changed objdir variable .libs to _libs. This is another MS-DOS + portability fix. Suggested by Robert Hoehne. + +1997-09-13 Gordon Matzigkeit + + * ltconfig.in, ltmain.in (hardcode_minusL): Fix typo by renaming + hardcode_minusL to hardcode_minus_L. Also add FreeBSD + hardcode_libdir_flag_spec. From Paul Traina. + + * ltmain.in (link): Honour multiple `-rpath' flags when linking + programs. Suggested by Bengt Martensson. + Quote appearances of $echo in the wrapper script. From Alexandre + Oliva. + + * Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead + of ltmain.sh.in. + + * ltmain.in: Rename ltmain.sh.in to ltmain.in. This fixes a + portability problem (on MS-DOS, of all places!). From Robert + Hoehne. + +1997-09-11 Gordon Matzigkeit + + * ltmain.sh.in (link): Do not transform libtool objects to regular + objects if we did not build old libs. Reported by Tomas Hiller. + +1997-09-05 Gordon Matzigkeit + + * demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to + hell.debug in order to reflect the new static linking semantics. + + * ltmain.sh.in (link): Add new `-all-static' flag to prevent all + dynamic linking. The old `-static' flag just prevents dynamic + linking against libtool libraries. Suggested by Bengt + Martensson. + + * ltconfig.in (with_gnu_ld): Add a test to make sure that we are + actually using GNU ld. This fixes an inconsistency when running + ltconfig without using libtool.m4. Reported by Ulrich Drepper. + (global_symbol_pipe): Delete symbols that are not valid C + identifiers. Reported by Johan Danielsson and Bengt Martensson. + +1997-09-04 Gordon Matzigkeit + + * ltmain.sh.in (echo): Quote all the uses of `echo' in all eval + statements. Reported by Bengt Martensson and Alexandre Oliva. + (echo): Need to surround test args with double quotes, or the echo + test fails on Digital Unix 4.0. From Todd Kover. + +1997-08-28 Gordon Matzigkeit + + * ltmain.sh.in (echo): Change test to one that uses printf. + This works on AIX, which has the same problems that Solaris does, + but no working echo program. + +1997-08-27 Gordon Matzigkeit + + * ltmain.sh.in (link): Make sure that compile_command and + finalize_command are always evaled. Quote any unknown linker + flags we need to pass through. + (compile): Use quoting for flags we pass. + (echo): I hate Sun! The /usr/bin/echo on Solaris handles + backslash sequences, which makes it impossible to do backslash + quoting using echo and sed. So, we search for an echo that obeys + the `echo '\t'` = '\t' equality. Then we use `$echo' everywhere + in ltmain.sh. + Put tabs back into the ${IFS= } sequences. Emacs untabify is + libtool bane. + + * ltconfig.in: Quote all variable values that may contain + metacharacters creating the libtool script. This provides + complete protection, so that even single-quotes may appear inside + a libtool variable value. + + * ltmain.sh.in (link): Quote finalize_command before putting it in + the wrapper script. + +1997-08-26 Gordon Matzigkeit + + * ltmain.sh.in (sed_quote_subst): Change the quoting procedure + again. I think that the new one is robust for *all* characters, + including whitespace and metacharacters. + +1997-08-25 Gordon Matzigkeit + + * ltmain.sh.in: Change quoting procedure because some shells + cannot handle `]' in scan sets. From Ian Dall. + +1997-08-22 Gordon Matzigkeit + + * ltmain.sh.in (execute): Added -dlopen flag handling. Suggested + by Alexandre Oliva. + +1997-08-21 Gordon Matzigkeit + + * ltmain.sh.in (link): Change executable wrapper to fix up value + of thisdir, as well as progdir, if the $0 path doesn't work. This + guarantees that shlibpath_var is set correctly. Add support for + execute mode. + + * ltmain.sh.in (execute): New mode to automatically set + shlibpath_var, which allows easy debugging of uninstalled + executables and libraries. Suggested by Kenneth Albanowski. + +1997-08-20 Gordon Matzigkeit + + * Makefile.am ($(srcdir)/ltconfig): Use lineno. + + * configure.in: Add AM_PROG_AWK for lineno. + + * lineno: New program to automatically put line numbers in + ltconfig. + + * libtool.m4, ltconfig.in (AM_PROG_LD): Yet Another Rewrite, which + incorporates the results of `gcc -print-program-name=ld'. + Suggested by Alexandre Oliva. + +1997-08-14 Gordon Matzigkeit + + * ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off + command echoing. From Juergen A. Erhard. + + (compile): Recognize the Objective C `.m' extension. From Juergen + A. Erhard. + + (compile): Suppress error output from the second compilation (if + any) so that we don't get those frustrating duplicate error + messages. + +1997-08-12 Gordon Matzigkeit + + * ltconfig.in: Added messages to config.log to describe what sort + of test we are running. + (pic_flag): Added a sanity check for pic_flag. This should fix + bugs reported using the cc bundled with HP-UX 10. Suggested by + Bruno Haible and Akim Demaille. + +1997-08-01 Gordon Matzigkeit + + * ltmain.sh.in (link): Add -dlopen and -dlpreopen support for + libtool objects. This means that dlopened modules no longer need + to be shared libraries. + + * ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC. + Reported by Ian Lance Taylor. + + * libtool.m4 (LD): Always add `-n32' to the linker if we are using + GCC on IRIX 6. Reported by Ian Lance Taylor. + +1997-07-30 Gordon Matzigkeit + + * libtool.m4 (AM_PROG_LIBTOOL): Explicitly check enable_shared and + enable_static rather than just enableval. This allows + configure.in scripts to set their own defaults. Suggested by + Tommy Reilly. + +1997-07-29 Gordon Matzigkeit + + * ltmain.sh.in: Add NLS environment variable handling copied from + ltconfig.in. Reported by Akim Demaille. + (link): If allow_undefined_flag is not supported, then turn on old + libraries. Reported by Akim Demaille. + + * demo/dlmain.c (main): Use dld_preloaded_symbol_count to display + a message about the sortedness of the symbol table. + + * ltconfig.in (nlist): Use an nlist convenience variable, so that + code can be shared directly with ltmain.sh.in. + + * ltconfig.in, ltmain.sh.in (dld_preloaded_symbol_count): Count up + the number of symbols in the dld_preloaded_symbols. Set to `-1' + if the list wasn't both sorted and counted. This allows + applications to do a quick binary search, if they are so inclined. + +1997-07-25 Gordon Matzigkeit + + * ltmain.sh.in (link): Remove code for `-version-file', since it + has been long-deprecated. + + Disable static linking if hardcode_direct is unsupported and there + is no working link_static_flag. This provides correct behaviour + for all cases on AIX 3, regardless of whether collect2 is broken + or not. Reported by Mark Kettenis. + + * ltconfig.in: Fix typo in test polarity. From Mark Kettenis. + +1997-07-24 Gordon Matzigkeit + + * ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses + a broken collect2. Adapted out of test results from Mark + Kettenis. + (link_static_flag): Make sure the link_static_flag actually works + with a trivial binary. + + * ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed + from export_dynamic_flag because we eval it in ltmain.sh. + + * ltmain.sh.in (link_static): Don't eval link_static_flag. + + * demo/dlmain.c (main): Change function prototype to be KNR + compatible. From Kaveh R. Ghazi. + + * ltmain.sh.in (link): Use no_builtin_flag. This works around + conflicting definitions of builtin functions with at least GCC. + Reported by Kazuhiro Sasayama. + + * ltconfig.in (no_builtin_flag): New flag to turn off builtin + functions when compiling an object file. + (pipe_works): Use it. + +1997-07-23 Gordon Matzigkeit + + * ltconfig.in (pic_flag): According to the libg++ 2.7.2 configure + script, DEC alpha CPUs are PIC-only, as well. Reported by Kevin + Jacobs. + +1997-07-21 Gordon Matzigkeit + + * ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X; + Y'" with "sed -e 'X' -e 'Y'". + + * ltmain.sh.in (link): Finish full integration for `-dlopen' and + `-dlpreopen'. + + Fix two silly typos where I used a compile_command in place of a + finalize_command, and vice versa. + + Change the wrapper script to check a hardcoded path only if the + argv[0] method fails. This is a compromise for the previous two + patches, and should solve the majority of problems with wrapper + scripts. From Kenneth Albanowski. + + (link): Change a reference to hardcode_libdir_colon_separated to + use the new hardcode_libdir_separator variable. + + * demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and + `-dlpreopen' for building helldl. + + * demo/dlmain.c (main): Succeed, even if none of the libhello + symbols have been preloaded. + +1997-07-20 Gordon Matzigkeit + + * ltconfig.in (global_symbol_pipe): Add `U' to the accepted global + symbol types. This means that we will get duplicate symbols, but + we'll also be sure to get all global symbols used by the program. + + * ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make + symbol output unique. + +1997-07-19 Gordon Matzigkeit + + * ltconfig.in (pipe_works): Check to make sure our guessed + global_symbol_pipe actually works. + + * ltmain.sh.in (link): Revert change from Kenneth Albanowski. The + wrapper scripts are more reliable when they just use the argv[0] + value. Generally, when the argv[0] method doesn't work, the user + is trying to do something weird with an uninstalled binary, and + should try a different approach. + + * ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of + `$cc'. This fixes a FreeBSD bug. Reported by Chuck Robey, and + others. + +1997-07-14 Gordon Matzigkeit + + * ltmain.sh.in (link): In wrapper scripts, hardcode the current + directory to prevent phony argv[0] values from screwing up our + program. From Kenneth Albanowski. + +1997-07-13 Gordon Matzigkeit + + * Makefile.am (demo_distfiles): Add demo/dlmain.c to the + distribution. + +1997-07-12 Gordon Matzigkeit + + * demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate + `-dlopen' usage. + + * demo/dlmain.c: New file to demonstrate preloaded modules. + + * ltmain.sh.in (link): Add `-dlopen' flag to preload dynamic + modules, even on static platforms. Use `$NM' and + `$global_symbol_cmd' to extract symbols from required files. + (dlname): Delete dlname mode entirely. It is rendered obsolete + because the `.la' file format is now a public interface. + + * ltconfig.in (NM): New variable for BSD-compatible nm program. + (global_symbol_cmd): Pipeline to extract global symbols from the + nm output. + + * ltmain.sh.in: The .la file header should depend on `ltmain.sh', + not `$PROGRAM'. + (link): Make sure $export_dynamic_flag is eval'ed before it is + used. + +1997-07-11 Gordon Matzigkeit + + * libtool.spec: New Red Hat Package Manager specification file in + order to help people prepare distributions of libtool for Linux. + + * ltmain.sh.in: Eliminate two accidental uses of the NONE magic + value. These were breaking libtool's behaviour when no mode is + specified. + +1997-07-08 Gordon Matzigkeit + + * Release 1.0. + + * ltconfig.in: On SunOS, append /usr/etc to the PATH before + running ldconfig; on *BSD, append /sbin. This was done in line + with the Linux change suggested by Kenneth Albanowski. + + * demo/Makefile.am (hardcode_tests): Aesthetic change to + alphabetize order of compiling the hardcode tests. + + * Makefile.am (EXTRA_DIST): Delete README-automake. + + * README-automake: Remove from distribution. + +1997-07-02 Gordon Matzigkeit + + * ltmain.sh.in (link): In the executable wrapper, strip trailing + colons from the shlibpath_var because some ld.so's, notably + OpenBSD 2.0's (!), don't parse colon-terminated values correctly. + From Tim Pierce. + +1997-07-01 Gordon Matzigkeit + + * ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic + variable value. Use an empty variable instead. + + * ltconfig.in (with_gcc, with_gnu_ld): Do the tests for the C + compiler and linker if the variables are unset, or if they are not + GNU C and ld. + (RANLIB): Eliminate redundant `if' statement. + + * configure.in: Use AM_PROG_LD. + + * libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU + ld. + (AM_PROG_LD): Rename AM_PATH_PROG_LD to AM_PROG_LD. Parameterize + so that the user can specify `--with-gnu-ld' or `--without-gnu-ld' + to indicate his preference. + (AM_PROG_LIBTOOL): Use it. + +1997-06-30 Gordon Matzigkeit + + * ltconfig.in: Append /sbin to the path before running ldconfig on + Linux. This helps superusers who haven't set their PATH + correctly. Suggested by Kenneth Albanowski. + +1997-06-29 Gordon Matzigkeit + + * ltmain.sh.in: Change all the `eval "$run ..."' sequences to + `$run "eval ..."'. + + Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'. + This is the sequence recommended by the Autoconf manual, and + should avoid any problems on older machines. Eliminate all uses + of `cp -p'. Reported by Akim Demaille. + + (install): Use `test $# -gt 0' instead of `test -n "$1"'. + + * ltconfig.in (LN_S): Add test to see if `ln -s' works. + + * libtool.m4: Increment serial number, and require AC_PROG_LN_S. + +1997-06-26 Gordon Matzigkeit + + * ltmain.sh.in (link): Add missing `test' statement. Reported by + Akim Demaille. + +1997-06-24 Gordon Matzigkeit + + * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of + am_cv_path_ld. From Tim Pierce. + +1997-06-20 Gordon Matzigkeit + + * ltmain.sh.in: Redo two robustness fixes. Alexandre had the + correct approach, but I botched them. + + * ltconfig.in (dynamic_linker): Disable shared libraries on + MkLinux unless GNU libc is in use. Reported by Akim Demaille. + +1997-06-19 Gordon Matzigkeit + + * ltmain.sh.in (install): Add a missing `test' command. Reported + by Joel Weber. + Miscellaneous fixes to improve robustness. From Alexandre Oliva. + +1997-06-14 Gordon Matzigkeit + + * ltmain.sh.in (link): Create invalid libtool objects when partial + linking if we don't have PIC. From Jeff Dairiki. + (install): Fix bug if libtool object is installed to a file name + without directory components. From Jeff Dairiki. + +1997-06-13 Gordon Matzigkeit + + * Makefile.am (demo/configure): Fix up rules to run autoconf. + (aclocal.m4): Now we depend on our own libtool.m4. + + * configure.in (AM_PATH_PROG_LD): Use it. + + * libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used + by the C compiler. + (AM_PROG_LIBTOOL): Use it. + + * ltmain.sh.in (install, uninstall): Support installing and + uninstalling `.lo' files. From Jeff Dairiki. + +1997-06-11 Gordon Matzigkeit + + * Makefile.am (ltconfig, ltmain.sh): Only move if $(srcdir) is not + the current directory. Don't regenerate every time the package is + reconfigured. Reported by Tom Tromey. + (MAINTAINERCLEANFILES): Added ltconfig, ltmain.sh, so that + $(srcdir) is not messed with during a regular clean. + +1997-06-10 Gordon Matzigkeit + + * Makefile.am (ltconfig, ltmain.sh): Be sure to move these files + into $(srcdir) once they are created. + + * ltmain.sh.in (link): Disable building static libraries. + People should use their favourite AR and RANLIB commands. + Disable building old-style objects if `--disable-static' is + given. Suggested by Tom Lees and Stephan Kulow. + +1997-06-08 Gordon Matzigkeit + + * ltconfig.in (host_cpu, host_vendor, host_os): Patch up + definitions, to allow for the fact that the host_os may contain + hyphens (as in linux-gnu). From Scott Goehring. + + * ltmain.sh.in (link): Move the `dlname' setting closer to the top + of the file. Suggested by David Mosberger-Tang. + Symlink the libtool archive into the `.libs' directory so that it + can be found by programs that want to find a library's dlname by + searching LD_LIBRARY_PATH. Reported by David Mosberger-Tang. + +1997-06-06 Gordon Matzigkeit + + * Tell people to report bugs to the new libtool mailing list, + . + +1997-06-05 Gordon Matzigkeit + + * ltconfig.in (allow_undefined_flag): New variable that implements + `-allow-undefined'. + (archive_cmds): Enable C++ constructors for FreeBSD 2.2. From + David Nugent. + + * ltmain.sh.in (link): Accept new `-allow-undefined' flag when + building libtool libraries. This tells libtool to allow + unresolved symbols to exist in shared libraries. Basically, this + turns off shared libraries on AIX. Suggested by Ian Lance Taylor. + +1997-05-26 Gordon Matzigkeit + + * libtool.m4 (LD): On at least IRIX, many different flags need to + be propagated to the linker if they are part of the compiler + command line. Reported by Anthony Green. + +1997-05-10 Gordon Matzigkeit + + * ltconfig.in: Trivial port to FreeBSD 3. From David Nugent. + +1997-04-25 Gordon Matzigkeit + + * ltmain.sh.in (link): Remove all traces of `-whole-archive', + `-no-whole-archive', and libtool convenience libraries. They were + more trouble than they're worth. If these are ever reimplemented, + they need more careful attention to make portable. + + * libtool.m4, ltconfig.in: Added a `--disable-static' flag to turn + off static library creation. From Tom Lees (who finally convinced + me that it was the Right Thing to do). + +1997-04-22 Gordon Matzigkeit + + * ltmain.sh.in (hardcode_runpath_var, runpath_var): Use them, if + the linker has no -rpath flag. + Quote the values we use to set runpath_var and shlibpath_var. + (link): Use libobjlibs for libtool convenience libraries. + + * ltconfig.in (hardcode_runpath_var, runpath_var): Add new + variables to describe linkers that honour `LD_RUN_PATH'. + (host_cpu, host_os): Use these more specific variables, rather + than the full canonical host system name. + + * ltmain.sh.in (dlname): Distinguish between missing + `-export-dynamic' and when the library is only statically linked. + +1997-04-21 Gordon Matzigkeit + + * ltconfig.in: Trivial port to OpenBSD by making it an alias for + NetBSD. From Tim Pierce. + +1997-04-16 Gordon Matzigkeit + + * ltconfig.in: Temporary measures to check for a broken collect2 + program. Right now, we just see if we're using GCC on AIX 3. + +1997-04-13 Gordon Matzigkeit + + * ltmain.sh.in (mode): Use `egrep -e' when inferring the operation + mode. + +1997-04-12 Gordon Matzigkeit + + * ltconfig.in (linker): Some GNU ld's don't accept `--version', + but do accept `-v'. From Jukka Honkela. + (ld_shlibs): AIX lossage may be settling down. AIX 3.2.5 ld does + *not* hardcode direct libraries, but AIX 4.1.[45] ld does. + +1997-04-07 Gordon Matzigkeit + + * ltconfig.in (hardcode_action): Fix silly logic error. From + Bruno Haible. + +1997-04-05 Gordon Matzigkeit + + * ltmain.sh.in (install): Relink if hardcode_action is `relink', + rather than using complex conditionals based on the other + hardcode variables. + + * ltconfig.in (hardcode_action): Set to `relink', not `immediate', + if we can only hardcode existing directories. Rearrange + conditionals to make the intent clearer, otherwise this can be one + hellish piece of code for the already-dizzy libtool maintainer. + +1997-04-02 Gordon Matzigkeit + + * replfunc.m4: Delete from the distribution. Documentation now + describes how to set LTALLOCA and LTLIBOBJS in your own + configure.in. + + * ltmain.sh.in (link): Make sure a libtool library only counts as + a shared library if its library_names are non-null. + Use timestamps for .lo's when PIC is turned off, rather than + symlinking to the real object. This helps invalid mixtures of PIC + and non-PIC to fail. + +1997-04-01 Gordon Matzigkeit + + * Makefile.am (EXTRA_DIST): Distribute libtool.prj. + + * Shameless plug: Changed source code management system from CVS + to PRCS. + + * libtool.scm: Initial Guile implementation of libtool. + + * ltmain.sh.in: An unexpected inconsistency in my whole approach + to shared libraries has proven that libtool needs to be completely + rewritten if I'm going to give full shared library support for + platforms that don't use the GNU C library version 2 (which to my + knowledge currently only works on GNU Hurd and Linux/GNU systems). + Porting the GNU C library should not be difficult, though. + + Platforms that don't have the dlopen(3) family of functions will + need to install GNU DLD version 4 in order to build any kind of + libraries at all. Unfortunately, DLD 4 won't be released for a + while, because I maintain it, and I'm too busy working on libtool. + + I'll keep the old ltconfig/ltmain.sh implementation around for as + long as I can, and continue applying bug fixes, so that I'll have + a reasonable starting point for this new libtool implementation. + + It looks like this implementation will be even more complex than + the original (pre-0.7) libtool. Initial estimates show that it + may be up to 3 times slower, and 5 times larger than libtool-0.9. + I'll probably have to rewrite it in Guile to get reasonable + performance, which will severely limit its portability for a + while. + + That will also introduce a bootstrapping issue, since the next + release of Guile will use libtool to build shared libraries. So, + if users want to have shared Guile libraries, they will have to + configure Guile with `--disable-shared', compile it, install it, + then reconfigure Guile with `--enable-shared' and repeat. + + I was hoping to get libtool 1.0 out the door by early April, but + now it looks like it will take at least another year before it'll + be usable by the public at large. April fools. libtool.scm + doesn't exist yet, either. + + * ltconfig.in (verify_host): Remove redundant `Transform *-*-linux* + to *-*-linux-gnu*'. From Bruno Haible. + +1997-03-31 Gordon Matzigkeit + + * Makefile.am: Use the new AUTOMAKE and ACLOCAL variables. + + * ltmain.sh.in (link): Only fail if a convenience library doesn't + exist, and the user specified -whole-archive. + Fix shell quoting that was breaking @OUTPUT@ substitution. + +1997-03-28 Gordon Matzigkeit + + * ltmain.sh.in (link): Use the hardcode_libdir_separator. + Convenience libraries are libtool objects if we're not building + libtool libs. + + * ltconfig.in (hardcode_libdir_separator): Added in case the + linker only honours the last of the -rpath flags (but it can + contain multiple colon-separated directories), such as on OSF/1. + Reported by Carl D. Roth. + + * ltmain.sh.in (link): Set the dlname if -export-dynamic is given. + (install, uninstall): Handle the dlname file separately. + + * ltconfig.in (export_dynamic_flag): Added to allow programs to + use reflexive dlopens. + + * ltmain.sh.in: Include the mode name in any help messages. + (dlname): New mode to give the name to be used with dlopen(3). + + * ltconfig.in (AR): Allow AR to be set by the user, and export it + to ltmain.sh. + + * ltmain.sh.in: Remove broken profiled library support. + Added `-whole-archive' and `-no-whole-archive' to manipulate + convenience libraries. + +1997-03-27 Gordon Matzigkeit + + * ltmain.sh.in (link): Allow the creation of static convenience + libraries made of libtool objects. Suggested by David + Mosberger-Tang. + +1997-03-25 Gordon Matzigkeit + + * ltconfig.in: On AIX, libtool also needs to look for `B' symbols + in nm output. These are global variable definitions. + + * ltmain.sh.in: Linking with -static should link against the + linklib if old_library is empty (like it is on AIX). + + * ltconfig.in: Change the order of OS detection, so that + linux-gnu* is detected before gnu*. + + * Makefile.am (libtool): Use the correct CC, RANLIB, LD, when + generating libtool. From Carl D. Roth. + + * configure.in: Find out the user-supplied CC, LD, RANLIB. From + Carl D. Roth. + +1997-03-24 Gordon Matzigkeit + + * ltmain.sh.in: Linking with -static should link against the old + library, not linklib. + + * README-automake: Updated to point to Automake 1.1m. + +1997-03-15 Gordon Matzigkeit + + * demo/main.c: Use it. + + * demo/foo.h: Declare it. + + * demo/foo.c: Added definition of `nothing' so that we have an + global variable definition, as well as functions. + +1997-03-12 Gordon Matzigkeit + + * ltconfig.in: Make sure either enable_shared or enable_static is + configured. Reported by Tom Tromey. + + * ltmain.sh.in: Bomb out if no library types are configured. + +1997-02-22 Gordon Matzigkeit + + * ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed + from `hardcode_libdir_flag'. + (library_names_spec): Renamed from `lib_names'. + + * ltconfig.in, ltmain.sh.in (hardcode_action): Change value from + `rpath' to `immediate'. + + * replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and + AM_STRUCT_ST_BLOCKS. + +1997-02-18 Gordon Matzigkeit + + * ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support + old-style config.guess scripts. + +1997-02-17 Gordon Matzigkeit + + * ltmain.sh.in: Create objdir *before* linking a program into it. + +1997-02-12 Gordon Matzigkeit + + * ltconfig.in: Any ld --version that returns GNU is probably a GNU + ld. From Marcus Daniels. + + * libtool.m4: Added AM_REPLACE_FUNCS. + +1997-02-11 Gordon Matzigkeit + + * ltconfig.in: Trivial port to *-*-osf4. From Bruno Haible. + +1997-02-10 Gordon Matzigkeit + + * ltconfig.in: AIX 3 and 4 ld only hardcodes LIBPATH if -L is not + specified. This behaviour is the same with both xlc and gcc. + +1997-02-07 Gordon Matzigkeit + + * doc/platforms.texi: Yaay! We found a workaround for HP-UX + /bin/sh buffer overflows. From Eric Backus. + +1997-02-03 Gordon Matzigkeit + + * Release 0.9. + + * PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am: + Move PLATFORMS to doc/platforms.texi. + + * ltmain.sh.in (link): Use hardcode_libdir_flag to get a library + directory into the resulting binary. + Use hardcode_action, and make many simplifying changes to have + compilation and finalization be consistent with each other. + + * ltconfig.in: Not so amazing! It's AIX cc that hardcodes direct + libraries... gcc doesn't, though. + (link_rpath_flag): Change link_rpath_flag to be + hardcode_libdir_flag. + (hardcode_action): New variable to simplify ltmain.sh. + +1997-01-29 Gordon Matzigkeit + + * ltmain.sh.in: Change to take advantage of linkers that don't + hardcode direct libraries. + + * ltconfig.in: Amazing! AIX 3 linker doesn't hardcode direct + libraries, which makes it less buggy than AIX 4. Reported by Mark + Kettenis. + + * demo/configure.in: Check for the math library. + + * demo/foo.c (foo): Change to use the `cos' function, so that we + need to link against another library. + +1997-01-28 Gordon Matzigkeit + + * ltmain.sh.in (link): Export the PATH variable in order to find + the program, rather than giving a full path. This helps give the + program a less confusing value for argv[0]. + +1997-01-26 Gordon Matzigkeit + + * Release 0.8. + +1997-01-24 Gordon Matzigkeit + + * Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the + distribution. + +1997-01-22 Gordon Matzigkeit + + * libtool.m4: For IRIX 6, ld needs -n32 if cc uses it. Reported + by Bruno Haible. + + * ltconfig.in: IRIX ld does not hardcode direct libraries. + Reported by Bruno Haible. + +1997-01-18 Gordon Matzigkeit + + * ltconfig.in, ltmain.sh.in (hardcode_shlibpath_var): Allow new + value, `unsupported', since most linkers do not allow you to use + shlibpath_var for initial linking. + + * ltconfig.in: Lots of bug fixes from Bruno Haible. Set wl on + OSF/1, fix definitions of hardcode_* variables. + (archive_cmds): Fix not to use +h on HP-UX 9.x. Reported by Bruno + Haible. + +1997-01-17 Gordon Matzigkeit + + * libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings. + Suggested by Akim Demaille. + + * libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is + specified. Reported by Bruno Haible. + +1997-01-16 Gordon Matzigkeit + + * demo/Makefile.am (hc-direct): Do better searching for the proper + name to do a direct link. + (hc-libpath): Make allowances if shlibpath_var cannot be used + to find libraries at link time, such as on AIX. + + * Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c. + + * demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to + KNR form, for better portability, and less ansi2knr hair. + + * demo/configure.in: Remove AM_FUNC_PROTOTYPES. + + * demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS. + + * demo/ansi2knr.1, demo/ansi2knr.c: Removed these files. + + * ltmain.sh.in: Use 1>&2 consistently to direct errors and + warnings to stderr. + (compile): Fix missing single quote. + + * ltconfig.in (hardcode_direct): On Solaris at least, using + DIR/libNAME.so does not hardcode DIR, so introduce a new hardcode + variable to reflect that. + + * ltmain.sh.in (link): If linking with $link_static_flag fails, + then retry without it, but still use the .a versions of + uninstalled libtool archives. + +1997-01-15 Gordon Matzigkeit + + * ltmain.sh.in (link): Eval $link_static_flag. Reported by Bruno + Haible. + + * PLATFORMS: Add to distribution. Suggested by Bruno Haible. + +1997-01-13 Gordon Matzigkeit + + * ltconfig.in: Add support for SCO OpenServer 5.x. From + Christopher Olsen. + + (can_build_shared): Initialize at the top of the file, so that + shared libraries aren't built on platforms that don't support + them. + +1997-01-11 Gordon Matzigkeit + + * ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi: + Update the copyright completion years. + +1997-01-08 Gordon Matzigkeit + + * ltconfig.in: Port to IRIX 5.3, 6.2. + +1997-01-06 Gordon Matzigkeit + + * ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the + port is trivial. + + * libtoolize.in: Add --dry-run option, -n for short. + +1997-01-03 Gordon Matzigkeit + + * ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't + understand "export something=val". From Bruno Haible. + +1997-01-02 Gordon Matzigkeit + + * ltmain.sh.in (compile): Recognize valid source file suffixes for + Fortran and C++. + +1996-12-17 Gordon Matzigkeit + + * ltmain.sh.in (link): Don't allow *._o and *.l_o to be valid + object type suffixes, in spite of Automake's current ansi2knr + implementation. Not all compilers allow non-`.o' suffixes. + +1996-12-16 Gordon Matzigkeit + + * ltmain.sh.in (link): Delete the `libtool' version type. + +1996-12-12 Gordon Matzigkeit + + * ltconfig.in: Use the full autoconf syntax when checking for GNU + C. Delete library stripping program, until we have a correct + test. + +1996-12-11 Gordon Matzigkeit + + * ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm. From Mark + Kettenis. + +1996-12-09 Gordon Matzigkeit + + Reported by Charles Kerr: + * doc/libtool.texi (Creating Object Files): Doc fix independant -> + independent. + + * ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library + dependencies. + +1996-12-08 Gordon Matzigkeit + + * Release 0.7. + + * Makefile.am (EXTRA_DIST): Add README-automake to the + distribution. + + * ltmain.sh.in (link): When linking libtool libraries, use + standard objects if they are PIC. This prevents spurious warnings + about invalid suffixes on AIX. + + * demo/Makefile.am: Rename libhell to libhello, so that we're not + quite as offensive. + + * ltconfig.in: Remove unnecessary host validity checking. + + * ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la + is good enough (for consistency with *.a handling). + +1996-12-07 Gordon Matzigkeit + + * ltmain.sh.in (link): Accept files ending in .a as standard + object files. Reported by Ulrich Drepper. + Remove support for creating profiled libraries (for now). + Transform all library objects into standard objects when linking a + program. + + * ltconfig.in (thisdir): How embarrassing! An error in the regexp + for finding the directory component of the script path. + +1996-12-05 Gordon Matzigkeit + + * ltmain.sh.in (compile): Support `.S' (preprocessed assembler) + files. Reported by Anthony Green. + + * libtoolize.in: Give clearer instrutions for how to update + aclocal.m4. + + * ltconfig.in, ltmain.sh.in (link): Add support for creating + reloadable objects. + +1996-12-04 Gordon Matzigkeit + + * ltmain.sh.in (install): Fix passing -n flag to `libtool + --finish'. + (compile): Compile `.lo' and `.o' objects at the same time so that + non-PIC objects (if they are available) can be used for linking + into programs and creating static archives. Suggested by Ulrich + Drepper. + +1996-12-03 Gordon Matzigkeit + + * ltmain.sh.in (link): Give the full path to the libtool library + when sourcing it. + + * ltconfig.in (old_striplib): Do a configuration test to determine + if old-style libraries actually can be stripped or not. + +1996-12-02 Gordon Matzigkeit + + * ltconfig.in: Delete reference to ABOUT-LIBS. + + * tests: Added new subdirectory. + + * doc/libtool.texi: Doc fixes, and finished up the Configuring + chapter. + + * ltmain.sh.in (link): Allow *._o and *.l_o to be valid object + file suffixes, for Automake's ansi2knr implementation. + New option -version-info replaces -version-file. + + [help]: Give a pointer to mode-specific help when appropriate. + + * ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC. + + * demo: Also test Automake's ansi2knr support. + +1996-11-19 Gordon Matzigkeit + + * ltconfig.in: Bug fixes for AIX 4, and for static platforms. + + * ltmain.sh.in (install): Fix for loops over arguments. + Need to quote ${IFS= } -> "${IFS= }". + (link): Fix soname_spec bug. Create objdir whether or not we have + shared libraries. + + * ltconfig.in: Check for library stripping program. + Use test -f instead of test -e. + +1996-11-18 Gordon Matzigkeit + + * ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't + set. + Be verbose about the environment variables we were configured + with. + + * ltmain.sh.in (objdir): change to .libs. + +1996-11-16 Gordon Matzigkeit + + * ltmain.sh.in (install): Just plunge ahead with the + installation... don't try to enforce dependencies. + +1996-11-15 Gordon Matzigkeit + + * ltmain.sh.in: Fix up $libdir to be $dest in install mode. + +1996-11-10 Gordon Matzigkeit + + * ltmain.sh: Finished rewrite of compile, link, and install + modes. + + * New ChangeLog file for libtool-0.7, since I've totally rewritten + libtool. + +1996-03-15 Gordon Matzigkeit + + * For historical reasons: this is when I started writing libtool. diff --git a/ltconfig.in b/ltconfig.in index 22583653e..9f35a8e92 100755 --- a/ltconfig.in +++ b/ltconfig.in @@ -1558,10 +1558,11 @@ finish_eval= shlibpath_var= version_type=none dynamic_linker="$host_os ld.so" +sys_lib_search_path="/lib /usr/lib /usr/local/lib" check_shared_deplibs_method='none' # Need to set the preceding variable on all platforms that support # interlibrary dependencies. -# 'none' -- dependencies disabled. +# 'none' -- dependencies not supported. # 'pass_all' -- all dependencies passed with no checks. # 'test_compile' -- check by making test program. # 'file_regex' -- check by looking for filenames that look like the shared @@ -1662,6 +1663,7 @@ linux-gnu*) finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH check_shared_deplibs_method='file_magic ELF 32-bit LSB shared object' + sys_lib_search_path="/lib /usr/lib /usr/local/lib `echo $LD_LIBRARY_PATH | sed -e 's/:/ /g'`" if test -f /lib/ld.so.1; then dynamic_linker='GNU ld.so' @@ -1802,16 +1804,18 @@ case "$ltmain" in pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ whole_archive_flag_spec libname_spec library_names_spec soname_spec \ RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ - old_postuninstall_cmds archive_cmds postinstall_cmds postuninstall_cmds \ + old_postuninstall_cmds archive_cmds archive_sym_cmds postinstall_cmds postuninstall_cmds \ check_shared_deplibs_method allow_undefined_flag no_undefined_flag \ finish_cmds finish_eval global_symbol_pipe \ - hardcode_libdir_flag_spec hardcode_libdir_separator \ + hardcode_libdir_flag_spec hardcode_libdir_separator sys_lib_search_path \ compiler_c_o compiler_o_lo need_locks; do case "$var" in reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ - old_postinstall_cmds | old_postuninstall_cmds | archive_cmds | \ - postinstall_cmds | postuninstall_cmds | finish_cmds) + old_postinstall_cmds | old_postuninstall_cmds | \ + archive_cmds | archive_sym_cmds | \ + postinstall_cmds | postuninstall_cmds | \ + finish_cmds | sys_lib_search_path) # Double-quote double-evaled strings. eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\"\`\\\"" ;; @@ -2006,6 +2010,7 @@ old_archive_from_new_cmds=$old_archive_from_new_cmds # Commands used to build and install a shared archive. archive_cmds=$archive_cmds +archive_sym_cmds=$archive_sym_cmds postinstall_cmds=$postinstall_cmds postuninstall_cmds=$postuninstall_cmds @@ -2055,6 +2060,9 @@ hardcode_minus_L=$hardcode_minus_L # the resulting binary. hardcode_shlibpath_var=$hardcode_shlibpath_var +# System search path for libraries +sys_lib_search_path=$sys_lib_search_path + # Fix the shell variable \$srcfile for the compiler. fix_srcfile_path="$fix_srcfile_path" EOF diff --git a/ltmain.in b/ltmain.in index 3d54261a1..d60301a9a 100644 --- a/ltmain.in +++ b/ltmain.in @@ -575,8 +575,7 @@ compiler." convenience= old_convenience= deplibs= - extradeplibs= - lib_search_path="/lib /usr/lib" + eval lib_search_path=\"$sys_lib_search_path\" dlfiles= dlprefiles= @@ -729,12 +728,10 @@ compiler." ;; esac deplibs="$deplibs $arg" - extradeplibs="$extradeplibs $arg" lib_search_path="$lib_search_path `expr $arg : '-L\(.*\)'`" ;; -l*) deplibs="$deplibs $arg" ;; - -El*) extradeplibs="$extradeplibs -`expr $arg : '-E\(.*\)'`" ;; -module) module=yes @@ -1333,185 +1330,167 @@ compiler." fi if test "$build_libtool_libs" = yes; then - # Transform deplibs into only deplibs that can be linked in shared. - ## Gordon: Do you check for the existence of the libraries in deplibs - ## on the system? That should maybe be merged in here someplace.... - ## Actually: I think test_compile and file_magic do this... file_regex - ## sorta does this. Only pas_all needs to be changed. -Toshio - name_save=$name - libname_save=$libname - release_save=$release - versuffix_save=$versuffix - major_save=$major - # I'm not sure if I'm treating the release correctly. I think - # release should show up in the -l (ie -lgmp5) so we don't want to - # add it in twice. Is that correct? - release="" - versuffix="" - major="" - newdeplibs= - case "$check_shared_deplibs_method" in - pass_all) - newdeplibs=$deplibs - ;; # Don't check for shared/static. Everything works. - # This might be a little naive. We might want to check - # whether the library exists or not. But this is on - # osf3 & osf4 and I'm not really sure... Just - # implementing what was already the behaviour. - test_compile) - # This code stresses the "libraries are programs" paradigm to its - # limits. Maybe even breaks it. We compile a program, linking it - # against the deplibs as a proxy for the library. Then we can check - # whether they linked in statically or dynamically with ldd. - $rm conftest.c - cat > conftest.c < conftest.c </dev/null` - for potent_lib in $potential_libs; do - file_output=`file $potent_lib` - if test `expr "$file_output" : ".*$file_magic_regex"` -ne 0 ; then - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - break 2 - fi - done - done - ;; - file_regex) - deplib_matches=`eval \\$echo \"$library_names_spec\"` - set dummy $deplib_matches - deplib_match=$2 - for i in $lib_search_path; do - potential_libs=`ls $i/$deplib_match* 2>/dev/null` - if test "$potential_libs" != "" ; then - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - break - fi - done - ;; - esac - if test "$a_deplib" != "" ; then - echo - echo "*** Warning: This library needs some functionality provided by $a_deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - fi - else - # Add a -L argument. - newdeplibs="$newdeplibs $a_deplib" - fi - done # Gone through all deplibs. - ;; - none | *) deplibs="" ;; - esac - versuffix=$versuffix_save - major=$major_save - release=$release_save - libname=$libname_save - name=$name_save - deplibs=$newdeplibs + if test "$name" != "" ; then + $rm a.out + $C_compiler conftest.c $i + # Did it work? + if test $? -eq 0 ; then + ldd_output=`ldd a.out` + libname=`eval \\$echo \"$libname_spec\"` + deplib_matches=`eval \\$echo \"$library_names_spec\"` + set dummy $deplib_matches + deplib_match=$2 + if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then + newdeplibs="$newdeplibs $i" + else + echo + echo "*** Warning: This library needs some functionality provided by $i." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + fi + else + echo + echo "*** Warning! Library $i is needed by this library but I was not able to" + echo "*** make it link in! You will probably need to install it or some" + echo "*** library that it depends on before this library will be fully" + echo "*** functional. Installing it before continuing would be even better." + fi + else + newdeplibs="$newdeplibs $i" + fi + done + fi + deplibs=$newdeplibs + ;; + file_magic* | file_regex) + set dummy $check_shared_deplibs_method + file_magic_regex="`expr \"$check_shared_deplibs_method\" : \"$2\(.*\)\"`" + for a_deplib in $deplibs; do + name="`expr $a_deplib : '-l\(.*\)'`" + # If $name is empty we are operating on a -L argument. + if test "$name" != "" ; then + libname=`eval \\$echo \"$libname_spec\"` + case "$check_shared_deplibs_method" in + file_magic*) + for i in $lib_search_path; do + # This needs to be more general than file_regex in order to + # catch things like glibc on linux. Maybe file_regex + # should be more general as well, but maybe not. Since + # library names are supposed to conform to + # library_name_spec, I think file_regex should remain + # strict. What do you think Gordon? + potential_libs=`ls $i/$libname[.-]* 2>/dev/null` + for potent_lib in $potential_libs; do + file_output=`file $potent_lib` + if test `expr "$file_output" : ".*$file_magic_regex"` -ne 0 ; then + newdeplibs="$newdeplibs $a_deplib" + a_deplib="" + break 2 + fi + done + done + ;; + file_regex) + deplib_matches=`eval \\$echo \"$library_names_spec\"` + set dummy $deplib_matches + deplib_match=$2 + for i in $lib_search_path; do + potential_libs=`ls $i/$deplib_match* 2>/dev/null` + if test "$potential_libs" != "" ; then + newdeplibs="$newdeplibs $a_deplib" + a_deplib="" + break + fi + done + ;; + esac + if test "$a_deplib" != "" ; then + echo + echo "*** Warning: This library needs some functionality provided by $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + fi + else + # Add a -L argument. + newdeplibs="$newdeplibs $a_deplib" + fi + done # Gone through all deplibs. + ;; + none | *) deplibs="" ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + deplibs=$newdeplibs # Done checking deplibs! # Get the real and link names of the library. -- 2.47.2