2000-05-06 Pavel Roskin * libltdl/ltdl.c: Typo. * libtool.m4 (AC_LIBTOOL_SETUP): CVS autoconf no longer sets target to "NONE", but to an empty string. 2000-05-05 Paul Sokolovsky * ltdl.c: support lt_dlopen(0) for win32 2000-05-03 Thomas Tanner * doc/libtool.texi (libltdl): fix typos, INCLTDL starts with top_srcdir, replace NULL with @code{NULL} * ltmain.in (ILD): search in newlib_search_path, too * ltmain.in (ILD): fix bugs in conv pass, expand convenience libs to deplibs and link them later on * ltmain.in (ILD): don't allow convenience libs to be -dlopen/preopen'ed * ltmain.in (ILD): it's not required to link all deplibs in fast-install mode * ltmain.in (ILD): if hardcode_into_libs=all, only relink a library if it is linked against uninstalled libtool libraries, rename link_against_libtool_libs to uninst_deplibs * ltmain.in (ILD): tidy up, add some comments 2000-05-03 John Wehle (john@feith.com) * libtool.m4 (hpux10.20*): use file_magic for inter-library dependency tracking. 2000-05-02 Gary V. Vaughan * AUTHORS: Update my email address. * commit: ditto. 2000-04-11 Thomas Tanner * NEWS: update * libtool.m4: add AC_LIBTOOL_PICMODE * ltconfig.in: move pic_mode checks to ltmain.in * ltmain.in: add -prefer-pic and -prefer-non-pic 2000-03-29 Alexandre Oliva * ltmain.in (tmpdir): Do not accept an existing directory, and force its mode to 700, for security reasons. Reported by Joseph S. Myers 2000-03-27 Thomas Tanner * NEWS: reformatting * ltmain.in (ILD): add extra convenience library scanning pass * ltmain.in (ILD): accept -R flags for libraries, too * ltmain.in (ILD): correclty merge the dlpreopened libraries with deplibs * ltmain.in (install mode): remove directories from filenames before relinking (reported by Elrond ) * doc/libtool.texi (libltdl): rename Library -> Lesser, clarify exception clause * libltdl/ltdl.c, libltdl.h (License): ditto 2000-03-21 Alexandre Oliva * ltconfig.in (variables_saved_for_relink): Set to `PATH $shlibpath_var $runpath_var'. If with_gcc, add gcc-related environment variables. Add it to the configuration section. * ltmain.in (relink_command): Expand those variables. 2000-03-14 Christopher A. Knight * ltconfig.in: added main() definition in compile check for header `dlfcn.h' to fix link errors when built with Sun Workshop Pro CC 4.2 (and perhaps others). 2000-02-03 Gary V. Vaughan * libltdl/ltdl.c (lt_find_dlhandle): Deleted. This was B.S. far cleaner to use lt_dlforeach and lt_dlgetinfo. * libltdl/ltdl.h: Prototype deleted. * doc/libtool.texi: Documentation deleted. * NEWS: annoncement deleted. 2000-02-23 Thomas Tanner * ltmain.in: remove duplicates from deplibs, handle interdependent libraries (e.g. -la -lb -la), this requires adding deplibs in reverse order * ltmain.in: link dlpreopened libraries before other libraries (reported by Pavel Roskin) * mdemo/Makefile.am: build and link libsub.la * mdemo/sub.c: new file used by both dlopened modules * mdemo/foo*: use sub() defined in libsub * tests/dryrun.test: build libsub.la * mdemo/Makefile.am: always link mdemo.static with -static * mdemo/configure.in: ditto * ltmain.in: fix dlopen/dlpreopening of objects * ltmain.in (ILD): fix misplaced `continue' in -R* argument handler * ltmain.in: merge duplicated code of clean and uninstall mode * libtool.m4: recognize powerpc*linux* (reported by Dirk A. Mueller ) 2000-02-23 Gary V. Vaughan * ltconfig.in (old_MAGIC, old_STRIP, old_reload_flag, old_deplibs_check_method, old_file_magic_cmd): New variabes. Treat these as old_CC etc. (STRIP, MAGIC): Create and set these variables in the generated libtool script. Reported by Pavel Roskin * configure.in: Due to a bug in autoconf-2.13 implementation of AC_SUBST, `AC_SUBST(FILE)' can never work. Use MAGIC as the holder of the command to run in file_magic_cmd instead. * ltconfig.in: s/FILE/MAGIC/g. * libtool.m4 (AC_PROG_LIBTOOL): set MAGIC in the environment when calling ltconfig. (AC_PATH_MAGIC): renamed from AC_PATH_FILE. (AC_PATH_TOOL_PREFIX): s/FILE/MAGIC/g. Also set file_magic_cmd to '${MAGIC}' so that make can grok it. * Makefile.am (libtool): (clibtool): ditto. 2000-02-21 Gary V. Vaughan * libltdl/ltdl.c (lt_find_dlhandle): New function. (tryall_dlopen): Use it. * libltdl/ltdl.h: Prototype it. * doc/libtool.texi: Document it. * NEWS: updated. * libltdl/ltdl.c (lt_dlinit): removed unused variable, `loader'. * libltdl/ltdl.c (lt_remove_dlloader): typo, s/=/==/g. 2000-02-03 Gary V. Vaughan * libltdl/ltdl.h (lt_dlloader_data_t): New type for loader instance data. (lt_user_dlloader): New lt_dlloader_data_t field. (lt_module_open_t): Add lt_dlloader_data_t parameter. (lt_module_close_t): Add lt_dlloader_data_t parameter. (lt_find_sym_t): Add lt_dlloader_data_t parameter. (lt_dlloader_exit_t): Add lt_dlloader_data_t parameter. * libltdl/ltdl.c: A sprinkling of /*ARGSUSED*/ markers to reassure lint that the unused arguments are intentional. (lt_dlloader_t): New lt_dlloader_data_t field. (lt_dlloader_data): New function to return the contents of the dlloader_data field. (sys_dl_open): Take an additional lt_dlloader_data_t argument. (sys_dl_close): Ditto. (sys_dl_sym): Ditto. (sys_dl): Initialise lt_dlloader_data_t field. (sys_shl_open, sys_shl_close, sys_shl_sym, sys_shl): As above. (sys_wll_open, sys_wll_close, sys_wll_sym, sys_wll): As above. (sys_bedl_open, sys_bedl_close, sys_bedl_sym, sys_bedl): As above. (sys_dld_open, sys_dld_close, sys_dld_sym, sys_dld): As above. (presym_init, presym_exit, presym_open, presym_close, presym_sym, presym): As above. (lt_dlinit): Call presym_init with additional argument. (lt_dlexit): Call dlloader_exit method with additional argument. (tryall_dlopen): Call module_open method with additional argument. (lt_dlclose): Call module_close method with additional argument. (lt_dlsym): Call find_sym method with additional argument. (lt_add_dlloader): Initialise dlloader_data field. (lt_remove_dlloader): Call dlloader_exit method with additional argument. * libltdl/ltdl.c (find_file): Prevent early release of memory in filename/*pdir. From Jon Leichter (sys_wll_init): Deleted. No longer required. And this time, with feeling! (sys_wll_exit): Ditto. 2000-02-02 Gary V. Vaughan * NEWS: updated. * doc/libtool.texi (Libltdl interface): Moved user defined module loader documentation from here... (Module loaders for libltdl) ...to here, and updated the text and added examples. * ltdl.m4 (AC_CHECK_FUNCS): check strcmp for lt_find_dlloader. * libltdl/ltdl.h: Reformatted and commented for readability. (struct lt_user_dlloader): New data type for passing initialisation pointers to lt_add_dlloader. (LTDL_ERROR_INVALID_LOADER): New error message when non loader handles are passed to the user loader API. (LTDL_ERROR_INIT_LOADER): New error when loader initialisation fails. (LTDL_ERROR_REMOVE_LOADER): New error when loader removal fails. (lt_module_open_t): renamed from lt_lib_open_t. (lt_module_close_t): renamed from lt_lib_close_t. (lt_dlloader_exit_t): renamed from lt_dlloader_exit_t. * libltdl/ltdl.c: Reordered builtin loaders so that the "dld" loader no longer occurs before "dlopen" on some platforms and after it on others. (lt_dlloader_t): Moved here from ltdl.h, added a field, "loader_name", for identifying the loader, and renamed from lt_dltype_t. Renamed type variables to loader IFF of type lt_dlloader_t. (lt_module_t): Renamed from lt_syshandle. Renamed handle variables to module IFF of type lt_module_t. (LTDL_TYPE_TOP): Deleted. No longer required. (sys_dl): Initialised as a struct lt_user_dlloader. (sys_dl_init): Deleted. No longer required. (sys_dl_exit): Ditto. (sys_shl): Initialised as a struct lt_user_dlloader. (sys_shl_init): Deleted. No longer required. (sys_shl_exit): Ditto. (sys_wll): Initialised as a struct lt_user_dlloader. (sys_wll_init): Deleted. No longer required. (sys_wll_exit): Ditto. (sys_bedl): Initialised as a struct lt_user_dlloader. (sys_bedl_init): Deleted. No longer required. (sys_bedl_exit): Ditto. (sys_dld): Initialised as a struct lt_user_dlloader. (sys_dld_init): Deleted. No longer required. (sys_dld_exit): Ditto. (sys_presym): Initialised as a struct lt_user_dlloader. (lt_mod_init_t): Moved to here from ltdl.h. (lt_dlinit): Add builtin loaders using the user loader API. (lt_dlexit): Unregister and free all loaders. (lt_add_dlloader): New function to add a new module loader after the loader specified in the argument. (lt_remove_dlloader): New function to remove a module loader. (lt_next_dlloader): New function for iterating over module loaders. (lt_dlloader_name): Accessor function for name of dlloader. (lt_find_dlloader): New function to get a reference to a registered module loader. (strcmp): static implementation incase the host has none. (lt_dlgettypes, lt_dlsettypes): Removed. 2000-02-02 Thomas Tanner * libltdl/ltdl.c: replace NULL with 0, remove unused system and app_private pointers from lt_dlhandle_t * libltdl/ltdl.c (presym_add_list): new preloaded symbols don't need to be added to the end * libltdl/ltdl.c (lt_dlgetdata, lt_dlsetdata): removed * libltdl/ltdl.h: ditto * doc/libtool.texi (libltdl interface): ditto 2000-02-01 Thomas Tanner * ltmain.in: support -dlopen/dlpreopen for libraries * NEWS: updated * TODO: updated * ltmain.in: rename dlopen to dlopen_support * ltconfig.in: ditto * doc/libtool.texi: ditto * ltmain.in: check whether libraries are moved out of $libdir, replace .a and .lib with .$libext, .o and .obj with .$objext 2000-01-31 Gary V. Vaughan * libltdl/ltdl.h (lt_dlrealloc): removed declaration. * libltdl/ltdl.c (lt_dlrealloc): removed definition. (lt_dladderror): Instead of calling lt_dlrealloc, use lt_dlmalloc, and lt_dlfree. 2000-01-30 Ossama Othman * libtool.m4 (lt_cv_cc_needs_belf): Set the test language to C prior to executing the test that checks if the C compiler needs "-belf." Reported by Chris Butler 2000-01-28 Gary V. Vaughan * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use changequote to protect `[' and `]' in deplibs_check_method. * libltdl/ltdl.h (lt_dlrealloc): Added declaration. * libltdl/ltdl.c (lt_dlrealloc): Added default definition. * libltdl/ltdl.c (lt_dlseterror): Catch errorcodes below 0 as invalid. * libltdl/ltdl.h (LTDL_ERROR): Added missing '_' in K&R definition. * libltdl/ltdl.h (ltdl_error_table): Added missing error code, and fixed typo in another code. * doc/libtool.texi (Libltdl interface): Added missing @end clause. 2000-01-27 Thomas Tanner * ltconfig.in: Oops, replace the remaining $objdir's * ltmain.in: merge library linking code of programs and libraries, some cleanups 2000-01-27 Gary V. Vaughan * NEWS: Updated. * doc/libtool.texi (Libltdl interface): Document new entry points. * libltdl/ltdl.c (lt_dladderror): New function to add a user defined error message to the tables used by lt_dlerror(). (lt_dlseterror): New function to allow setting of last_error by user modules. (ltdl_error_strings): New preprocessor generated table of internal error diagnostic strings. (user_error_strings): New internal list of registered user error diagnostic strings. (throughout!): Use error messages from ltdl_error_strings. * libltdl/ltdl.h (ltdl_error_table): New macro to tabulate internal diagnostic error strings alongside enum keys. * NEWS: Updated. * doc/libtool.texi (Libltdl interface): Document new entry points. * libltdl/ltdl.c (lt_dltype_t): Use new type definitions for existing fields. (lt_dladdtype): New function to add a new ltdl dynamic loader type to the end of the list of valid types.. (lt_dlgettypes): New function to return the complete list of ltdl dynamic loader types. (lt_dlsettypes): New function to replace the list of ltdl dynamic loader types entirely -- e.g. to prepend a new type to the existing list. (sys_dl_open, sys_dl_close, sys_dl_sym): Work with lt_syshandle. (sys_shl_open, sys_shl_close, sys_shl_sym): ditto. (sys_dld_open, sys_dld_close, sys_dld_sym): ditto. (sys_wll_open, sys_wll_close, sys_wll_sym): ditto. (sys_bedl_open, sys_bedl_close, sys_bedl_sym): ditto. (presym_open, presym_close, presym_sym): ditto. (tryall_dlopen): Call lt_lib_open_t functions lt_syshandle compatibly. (lt_dlclose): Call lt_lib_close_t functions lt_syshandle compatibly. (lt_dlsym): Call lt_find_sym_t functions lt_syshandle compatibly. (lt_dltype_t): moved type declaration from here... * libltdl/ltdl.h (lt_dltype_t): ...to here. (lt_syshandle): new type for low level system handles passed by loader functions (lt_mod_init_t): New type for functions implementing the initialisation for an ltdl dynamic loader. (lt_mod_exit_t): Type of exit functions for the same. (lt_lib_open_t): Type of loader functions for the same. (lt_lib_close_t): Type of unloader functions for the same. (lt_find_sym_t): Type of symbol resolver functions for the same. * libltdl/ltdl.c (sys_dl_init, sys_dl_exit, sys_dl_open, sys_dl_close, sys_dl_sym): Preprocess these away on cygwin to avoid spurious error messages. 2000-01-24 Thomas Tanner fix severe bugs reported by Elrond * ltconfig.in: replace $objdir with $output_objdir * ltmain.in: change to the builddir before relinking programs * ltmain.in, ltconfig.in, libtool.m4, ltdl.m4: remove unnessary spaces from line endings 2000-01-19 Thomas Tanner * ltmain.in: rewrite of the ILD code, merge linking code for programs, libraries and objects, allow linking of shared libraries against static libraries/objects on platforms that support it but print a warning, fix some typos * partially revert my previous change and update only copyright notices of files that were actually modified * NEWS: update * libltdl/Makefile.am: version number was wrong * libltdl/ltdl.c (tryall_dlopen): revert Gary's change since it breaks dlpreopening * ltdl.m4: ditto * libltdl/ltdl.c (sys_search_path): search in the system default library search path, too * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): extract the path * libltdl/ltdl.c (find_module): remove bogus file_not_found_error * libltdl/ltdl.c (load_deplibs): implement loading of dependency libraries * libltdl/ltdl.c (unload_deplibs): implement unloading of dependency libraries * libltdl/ltdl.c (lt_dlexit): correctly close all modules and their dependencies * libltdl/ltdl.c (lt_dlforeach): new function * libltdl/ltdl.h: ditto * doc/libtool.texi (using libltdl): document it * libtool.m4: reformatting, only add -I$topsrc_dir/libltdl to INCLTDL * libtoolize.in: reformatting * ltconfig.in: reformatting * ltmain.in: reformatting * mdemo/configure.in: AC_SUBST INCLTDL * mdemo/Makefile.am: use INCLTDL * tests/Makefile.am: reexport OBJEXT and EXEEXT * tests/dryrun.test: use them for building main.obj and mdemo.exe 2000-01-17 Gary V. Vaughan * libltdl/ltdl.c (tryall_dlopen): Abort with file_not_found_error before trying all lib_open() methods if the file to be dlopened doesn't exist. * ltdl.m4 (AC_HAVE_HEADERS): add unistd.h. 2000-01-16 Gary V. Vaughan * libltdl/ltdl.c (find_file): memory error fixed. 2000-01-14 Gary V. Vaughan * ltconfig.in (Usage): Now it matches the code! Reported by Jon Leichter * README: Some notes about libtool release numbers. * mdemo/README: Explain the deliberate incompleteness of the Windows port. * mdemo/configure.in: Use AC_LIBTOOL_WIN32_DLL. * mdemo/Makefile.am (LDFLAGS): Add -no-undefined. * libltdl/ltdl.h (LTDL_STMT_START, LTDL_STMT_END): Macros for wrapping other macros to make a portable compound statement from multiple C statements in the expansion. (LTDL_SET_PRELOADED_SYMBOLS): Use the above macros to add an extern declaration for lt_preloaded_symbols, to remove dependency on undefined symbol from libltdl.dll on cygwin (and other -no-undefined architectures). * libltdl/ltdl.c (lt_preloaded_symbols): No longer defined here. * libtool,m4 (AC_LIBTOOL_SETUP): The result of lt_cv_need_dllmain was set to the opposite of what it should be. * configure.in (AC_LIBTOOL_WIN32_DLL): Call to this macro is required for libtool configury to test lt_cv_need_dllmain on Windows. * ltconfig.in (opt_cr, mingw*): replace unescaped ? with correctly escaped and portable \{0,1\} in sed expression. From Jon Leichter 2000-01-13 Gary V. Vaughan * libtool.m4 (AC_LIBLTDL_CONVENIENCE): Add -I${top_srcdir}/libltdl to default INCLTDL for VPATH. (AC_LIBLTDL_INSTALLABLE): ditto. Reported by Tom Tromey 2000-01-12 Thomas Tanner * update all copyright notices to 2000 * doc/libtool.texi (using libltdl): document new lt_dlinfo struct, replace NULL with @code{NULL}, document lt_dlsetdata(), lt_dlgetdata() and lt_dlgetinfo() * libltdl/Makefile.am: increment interface version number * libltdl/configure.in: set version number to 1.1 * libltdl/ltdl.c: make some variables public by moving them to the info struct, add support for application specific data within module handles, new lt_dlsetdata(), lt_dlgetdata() and lt_dlgetinfo() functions, fix memory leaks, minor cleanups * libltdl/ltdl.h: ditto * mdemo/main.c: demonstrate use of lt_dlgetinfo, improved handling of errors * ltconfig.in: set hardcode_into_libs = yes for GNU/Hurd, Linux and Solaris, only hardcode *all* run-paths if hardcode_into_libs is set to 'all', otherwise hardcode only user-specified rpaths into libraries * ltmain.in: minor cleanups, we don't need to add user-specified rpaths to compile_rpath, finalize_rpath is sufficient * ltconfig.in: transform linux* -> *linux-gnu* _after_ host_os has been set! (reported by Bruno Haible ) * configure.in: AC_SUBST reload_flag, deplibs_check_method and file_magic_cmd * README: use 'libtool --version' instead of 'ltconfig --version' (suggested by Francios Pinard 2000-01-10 Gary V. Vaughan * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Leave undefined when not compiling for a Windows target. * libltdl/ltdl.c (canonicalize_path): New function to ensure internal paths use '/' directory separators. (find_file): use canonicalize_path. Memory management changed to cope. (lt_dlopen): ditto. (free_vars): Removed `dir' and `name', which are now handled internally. * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Define to '/' or '\\', as suitable for the target host. (LTDL_PATHSEP_CHAR): Similarly with ':' or ';'. * libltdl/ltdl.c: Use LTDL_DIRSEP_CHAR and LTDL_PATHSEP_CHAR instead of hardcoding throughout. Reported by Jon Leichter 1999-12-18 Alexandre Oliva * ltmain.in: Oops, `largarg' -> `lastarg'. * ltmain.in (-Wc, -Xcompiler): Implemented in compile mode. * ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and finalize_command. (-Wc, -Wl): Likewise. * tests/quote.test: Adjust quoting style of -Wl. * ltmain.in: Oops, `echo' -> `$echo'. * ltmain.in (-Wl, -Wc): Make commas argument separators, just like in gcc. * ltmain.in (libtool_args): Get all arguments properly enclosed in quotes and backslash-protected when needed. 1999-12-16 Alexandre Oliva * ltdl.m4: Renamed from... * libltdl/ltdl.m4: that no longer exists. * configure.in (ACINCLUDE_M4_LIST): Removed libltdl/acinclude.m4. * Makefile.am (aclocal_macros): Added ltdl.m4. (libltdl/acinclude.m4): Concatenate libtool.m4 and ltdl.m4. * bootstrap: Likewise. * libltdl/Makefile.am (ACLOCAL): Remove the definition. Relying upon -I may lead to duplicates. * doc/libtool.texi: Suggest appending ltdl.m4 to acinclude.m4. * libtoolize.in: Check AC_LIB_LTDL version number in aclocal.m4. * libltdl/configure.in (with_auxdir): Do not use it as the argument of AC_CONFIG_AUX_DIR, automake requires a literal here. Use AC_CONFIG_AUX_DIRS/DIR_DEFAULT instead. * libltdl/Makefile.am (ACLOCAL): Define with `-I .', as in bootstrap. 1999-12-15 Thomas Tanner * libltdl/configure.in: path to auxiliary files can be specified using --with-auxdir (idea by Howard Chu ) * ltmain.in: don't remove multiple occurences from dependency_libs of a library, otherwise many dependencies would get lost * bootstrap: use "aclocal -I ." instead of adding the contents of ltdl.m4 to acinclude.m4 1999-12-13 Gary V. Vaughan * NEWS: updated. * libltdl/Makefile.am: Use -no-undefined for dll compliance. * libltdl/configure.in: Use AC_LIBTOOL_WIN32_DLL for dll compliance. * libltdl/ltdl.c: Define and use LTDL_GLOBAL_DATA to correctly export global data symbols from libtldl.dll. * libltdl/ltdl.h: Define and use LTDL_SCOPE to declare data symbols as dllexport, dllimport or plain ornary extern depending in the context in which it is used. * doc/libtool.texi (Distributing libltdl): document use of ltdl.m4. * libltdl/configure.in: Removed header checks, as they are automatically performed by AC_LIB_LTDL. * libltdl/ltdl.m4: Added header checks from configure.in, so that AC_LIB_LTDL is sufficient to compile ltdl.c. Reported by Stephan Kulow . * ltconfig.in (ltdll_obj): fixed typo: objdir -> $objdir 1999-12-12 Gary V. Vaughan * ltconfig.in (cygwin*, mingw*, export_symbols_cmds): keep any DATA tags associated with symbols by recent dlltool. (cygwin*, mingw*, archive_expsym_cmds): Honor any DATA tags found in the symbol list. Reported by Jon Leichter . 1999-12-10 Gary V. Vaughan From Stephan Kulow * libltdl/ltdl.m4: Add arg 3 to AC_DEFINE's to save the user from having to hack acconfig.h. 1999-12-06 Gary V. Vaughan * NEWS: Updated. * TODO: Note some cleanups that are now needed. * libltdl/configure.in: Use the new macroised tests. * libltdl/ltdl.m4: New file, macroised tests formerly in libltdl/configure.in. Reported by Stephan Kulow . From Tim Mooney * ltconfig.in: split off the osf3 section, so that the osf4 and osf5 sections can add `-msym' to arguments passed to the linker for shared libs. 1999-12-03 Alexandre Oliva * ltconfig.in (ac_compile): Use $ac_ext instead of .c. (ac_link): Likewise. (dlfcn.h, ac_try): Do not add filename, it is already in ac_compile. Reported by Stephane Conversy * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it works together with fast_install. * libtool.m4: Use host when --target is not specified. * configure.in: AC_SUBST variables that are used by ltconfig to build libtool. * ltconfig.in (irix6*): Do not override deplibs_check_method here. * libtool.m4: Do not AC_SUBST anything other than LIBTOOL. 1999-11-20 Michael Forster * ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes. 1999-11-29 Gary V. Vaughan * ltconfig.in: Be friendlier to C++ compilers when testing for dlopen support. Reported by Stephan Kulow 1999-11-26 Gary V. Vaughan * libtool.m4: better use of $target instead of $host to support cross compilation. Reported by Sam Latinga 1999-11-16 Thomas Tanner * configure.in: generate ltconfig and ltmain.sh before configuring libltdl 1999-11-04 Alexandre Oliva * tests/sh.test: New test to detect uses of quotes within backticks within quotes. * ltconfig.in, ltmain.in: Fix detected errors. Mark false positives with a comment that disables the detector. Reported by Akim Demaille * configure.in: Move ltconfig and ltmain.sh generation back... * Makefile.am: here. 1999-11-02 Thomas Tanner * NEWS: updated * THANKS: added Olly Betts and Pavel Roskin * doc/libtool.texi: fix typo * fix major bugs which rendered libtool virtually unusable (i.e. not portable): * ltconfig.in: don't hardcode system dependent variables in ltconfig!! but set sane defaults * Makefile.am: pass variables from AC_LIBTOOL_SETUP to ltconfig * libtool.m4: ditto, fix typo in AC_PROG_LD_RELOAD_FLAG * ltconfig.in: use old_deplibs for archives, too remove second occurence of sysv5 * ltmain.in: fix typo, fix the second occurence of -DPIC, too * libltdl/Makefile.am: increment version number, fix typo * libltdl/ltdl.c (lt_dlsym): don't report an error if the libltdl-style symbol name wasn't found 1999-11-02 Wolfgang Rapp * ltconfig.in: add support for Unixware (sysv4.2uw2*) 1999-10-29 Gary V. Vaughan * ltmain.in: Damnit! Cygwin cvs committed all the dos line endings. 1999-10-28 Stephane Conversy * ltmain.in (-DPIC): changed the order of pic flags a little to prevent upsetting the sgi c++ compiler. 1999-10-28 Olly Betts * ltconfig.in (opt_cr): Handle crlf sequences output by the mingw toolchain. * libtool.m4: Third time lucky, with Tor's patch. 1999-10-19 Tor Lillqvist * libtool.m4: these was a missing `*' in the -mno-cygwin match. * ltconfig.in (cygwin, ltdll_obj): fixed a quoting error. (export_symbols_cmds): added missing cosmetic newline. 1999-10-18 Tor Lillqvist * libtool.m4: test command used == which should be =. Support -mno-cygwin flag for building mingw32 dlls. * ltconfig.in (file_magic_cmd): add missing quotes. (deplibs_check_method): and here. 1999-10-16 Alexandre Oliva * libltdl/ltdl.c (lt_dlopen): Do not search paths when the specified library is not just a basename. 1999-10-10 Gary V. Vaughan * libtool.m4 (AC_PATH_FILE): new macro replaces AC_PATH_TOOL_GREP_OUTPUT. (AC_PATH_TOOL_PREFIX): new macro replaces AC_PATH_PROG_GREP_OUTPUT. (AC_LD_RELOAD_FLAG): migrated from ltconfig.in. (AC_DEPLIBS_CHECK_METHOD): ditto. * ltconfig.in (reload_flag): moved to libtool.m4. (deplbs_check_method): ditto. 1999-10-07 Gary V. Vaughan * libtool.m4 (AC_PATH_PROG_VERSION_GREP): removed in favour of the more general AC_PATH_PROG_GREP_OUTPUT. (AC_PATH_TOOL_VERSION_GREP): removed in favour of the more general AC_PATH_TOOL_GREP_OUTPUT. (AC_PROG_LIBTOOL): Search for a working find program in the user's PATH using the new macros. 1999-10-06 Gary V. Vaughan * NEWS: updtaed. * ltconfig.in: Accept osf5. Reported by Sascha Schumann 1999-10-04 Gary V. Vaughan * ltmain.in (-no-install): This doesn't work on win32 since the search path for libraries is not encoded in the binary, and dlls not in $PATH won't be found. Fall back to -no-fast-install instead. * ltmain.in (-no-fast-install): Wrapper script used to add the exeext on again when naming the wrapped executable. 1999-10-03 Gary V. Vaughan * ltconfig.in: Set $FILE to @FILE@ for substitution with the value found in libtool.m4 at configure time. * libtool.m4 (AC_PATH_TOOL_GREP_VERSION): New macro, combines AC_PATH_PROG and AC_CHECK_TOOL with a test which greps the output of $ac_dir/${ac_prefix} --version for a given regex. (AC_PATH_PROG_GREP_VERSION): New macro used by the above. (AC_LIBTOOL_SETUP): Use the new macros to search the PATH [starting at /usr/bin] for a file program which accepts --version and has "file" in its --version output. 1999-10-03 Thomas Tanner * NEWS: new -no-install flag * configure.in: fix typo * doc/libtool.texi(Link mode): document -no-install flag, correct -no-fast-install docs * libtool.m4: check for "file" command * ltconfig.in: don't hardcode /usr/bin/file, remove second definition of sysv5, replace linkopts -> linker_flags * ltmain.in: add new -no-install flag, print help for -no-install and -no-fast-install flags 1999-10-03 Olly Betts * ltmain.in: always create output_objdir 1999-10-03 Pavel Roskin * libltdl/Makefile.am: don't preserve file attributes when installing the libltdl sources 1999-10-01 Gary V. Vaughan * configure.in (AC_OUTPUT_COMMANDS): generate ltmain.sh * Makefile.am (ltmain.sh ltconfig): removed. Automake inserts the rules to automatically call config.status. * libtool.m4: be sure to AC_SUBST values no longer tested in ltconfig.in. * ltconfig.in: replaced several of the simple feature tests with substitutions from config.status. * Makefile.am (ltconfig): generate ltconfig with config.status. * configure.in (AC_OUTPUT): generate ltconfig with config.status. 1999-09-30 Donald Anderson * ltconfig.in (sco3.2v5): use pass_all deplibs_check_method for SCO3.2. 1999-09-29 Gary V. Vaughan * ltconfig.in (whole-archive-flag-spec): I had been wondering why my file system was filling up with empty files named `71'... seems I forgot to hold in the shift key when redirecting stderr, 2>&1. Doh! 1999-09-29 Vadim * ltconfig.in (sysv): More UW7 support. 1999-09-28 Albert Cheng * ltmain.in (shlibpath_var): ensure the variable is non-empty before exporting it. 1999-09-27 Manfred Weichel * ltconfig.in (sysv5): Added support required for shared library linking on SCO UW7. 1999-09-22 Gary V. Vaughan * ltconfig.in (whole-archive-flag-spec): test whether the version of GNU ld being used understands --whole-archive before using it. 1999-09-19 Thomas Tanner * ltmain.in: don't ignore convenience libraries for objects/archives (temporary hack) 1999-09-14 Alexandre Oliva * ltconfig.in (CDPATH): Set to `:' instead of empty. * ltmain.in (CDPATH): Likewise. Reported by Greg McGary 1999-08-24 Gary V. Vaughan * ltconfig.in (ltdll.c, impgen.c): Prevent the shell from expanding variables & backslash escapes when writing these files to the libtool script. 1999-08-24 Thomas Tanner * NEWS: mention fixes * doc/PLATFORMS: GNU/Hurd update * depdemo: make use of variables * ltconfig.in: use CC -E when checking for ELF support on NetBSD (reported by Todd Vierling ), replace all occurences of 'linkopts' with 'linker_flags' * ltmain.in: move ltdll.c and impgen.c to ltconfig.in and only add them to the libtool script if it's necessary 1999-08-24 Boyd Gerber * ltconfig.in: add support for UnixWare 7.X.X * doc/PLATFORMS: add new platforms 1999-08-24 Pavel Roskin * doc/libtool.texi: document use of noinst_LTLIBRARIES for convenience libraries * ltconfig.in: check for freebsdelf3, not just freebsd3. Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1 * ltmain.in: enable workaround for freebsdelf3.0 1999-08-24 Bert Driehuis * ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS 1999-08-07 Alexandre Oliva * libltdl/COPYING.LIB: Update to version 2.1. * libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address. 1999-08-03 Gary V. Vaughan * libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return stripping. * ltconfig.in: ditto. From Olly Betts 1999-08-02 Olly Betts * doc/libtool.texi (Compile mode): typo correction. (Link mode): and another. (Release numbers): and another. (Distributing libltdl): and another. (Test descriptions): and another. (libtool script contents): and one more. * libtool.m4 (AC_PROG_LD): strip carriage returns from the output of gcc -print-prog-name=ld. * ltconfig.in: ditto. 1999-07-30 Pavel Roskin * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else initialised structures are sometimes emitted in the code section. 1999-07-30 Mumit Khan * ltconfig.in: Read line at a time to avoid tokenisation by shell. 1999-07-29 Alexandre Oliva * ltmain.in: Fix creation of relative links to object files in sub-dirs. 1999-07-29 Olly Betts * ltconfig.in(cygwin mingw32, archive_expsym_cmds): Only compile and link ltdll.c if the libtool.m4 macros discovered that it is required. 1999-07-26 Olly Betts * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops. Fix some typos made by Evil Gary while (mis)applying my patch :-). * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): On second thoughts, only probe for -mdll vs -dll on mingw, and revert to the old `-Wl,--dll -nostartfiles' on cygwin. 1999-07-24 Erez Zadok * doc/PLATFORMS (i*86-*openbsd2.5): New platform. Slight reordering of other bsd entries. 1999-07-24 Olly Betts * NEWS: Note new user visible changes. * libtool.m4 (mingw32, AC_LIBTOOL_SETUP): probe for -mdll vs -dll under cygwin/mingw. probe whether the cygwin/mingw library supplies a stub DllMain (but this information isn't yet used). * ltconfig.in (mingw32, extract_expsyms_cmds): if HOST_CC is set, use that to build impgen so we can use it when cross-compiling. use correct entry points for mingw so static C++ constructors get called for code in the DLL. * ltmain.in (impgen.c): define O_BINARY to 0 if it is not in the system headers. 1999-07-24 Bert Driehuis * ltconfig.in: Updated bsdi4 soname specs to be more like linux as discussed on the bsdi mailing list. 1999-07-20 Gary V. Vaughan * configure.in (AC_PROG_RANLIB): No longer required as we now use AC_CHECK_TOOL in AC_LIBTOOL_SETUP. * libtool.m4 (AC_PROG_LIBTOOL): Pass the $build variable to ltconfig. (AC_PROG_RANLIB): replaced with AC_CHECK_TOOL. * ltconfig.in (build): new variable to hold the build triplet which is now checked for unless --no-verify is specified. (--build): new argument to set the build triplet. (ranlib): Prefer ${host_alias}-ranlib[.exe] if $build is different to $host. * doc/libtool.texi (Invoking ltconfig): Document --build option. * NEWS: Note --build option. 1999-07-19 Erez Zadok * doc/PLATFORMS: Updated mostly *bsd platforms. 1999-07-19 Alexandre Oliva * doc/libtool.texi (Porting inter-library dependencies): Typos Reported by Petter Reinholdtsen 1999-07-17 Thomas Tanner * NEWS, TODO: updated (pic flags) * libtool.m4 (AC_PROG_LIBTOOL): added --with-pic flag * ltconfig.in: new pic_mode variable and --prefer[-non]-pic flags, fixed the strip check (reported by Keith Bostic ) * ltmain.in (compile mode): build only PIC/non-PIC code depending on pic_mode * libltdl/README: document the supported dlopen interfaces * doc/libtool.texi (tests): documented new tests * tests/Makefile.am: added new tests * tests/demo-pic.test: new test to test --with-pic * tests/demo-nopic.test: new test to test --without-pic * tests/build-relink2.test: variant of build-relink.test that uses depdemo 1999-07-09 Olly Betts * doc/libtool.texi (C++ Libraries): fixed a typo. 1999-07-06 Gary V. Vaughan * README-alpha: improved the release instructions to mention actual list addresses for announcements, and urls for upload locations. 1999-07-03 Thomas Tanner * doc/PLATFORMS: 1.3b passes all tests on cygwin 1999-07-03 Pavel Roskin * ltconfig.in: finish_cmds for FreeBSD removed * depdemo/l3/Makefile.am: install libl3.la into an extra directory 1999-07-02 Gary V. Vaughan * configure.in: bumped version to 1.3c. GNU libtool 1.3b was released. * NEWS: inserted todays date. 1999-07-02 Alexandre Oliva * doc/PLATFORMS: Tested on as many platforms as possible for me. 1999-07-01 Thomas Tanner * NEWS: updated * doc/PLATFORMS: updated * changed my email address 1999-06-30 Thomas Tanner * demo/foo.h: use LT_PARAMS instead of LTDL_PARAMS (this is not libltdl) * tests/build-relink.test: also check for hardcode_into_libs = yes, if set, we need to relink at install-time 1999-06-29 Thomas Tanner * NEWS: mention -no-fast-install, rename dummy to force * doc/PLATFORMS: 1.3b passes all tests on GNU/Linux, FreeBSD (2.2.6 and 3.1) * doc/libtool.texi: it's possible to link libtool libraries using -L and -l, better documentation of uninstall and clean mode, rename dummy to force, documented -no-fast-install, AC_LIBLTDL_* must be called before AC_PROG_LIBTOOL, documented hardcode_into_libs and striplib/old_striplib, * ltconfig.in: search for strip program, added hardcode_into_libs and striplib/old_striplib variables, set strip commands for GNU strip, on FreeBSD >= 3.2 set hardcode_into_libs to yes, fast-install mode doesn't work if hardcode_into_libs = yes * ltmain.in: reimplemented hardcoding into libraries: new relink mode, preserve all libtool args, relink libraries when installing if necessary added -no-fast-install flag, removed unnecessary `dlname' initialization, use striplib/old_striplib for stripping libraries, dlname is always soname or in library_names so we don't need to handle different file names 1999-06-29 Alexandre Oliva * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to yes up to release 3.1, and to no from 3.2 on. Reported by Pavel Roskin 1999-06-29 Pavel Roskin , Alexandre Oliva * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to yes; tested on 3.1-ELF by Pavel and on 2.2.6 by Alexandre. 1999-06-25 Alexandre Oliva * ltconfig.in (linux-gnu*, deplibs_check_method): Use pass_all on alpha, x86 and sparc architectures by now, reverting to file_magic at least on ARM, where it breaks. 1999-06-23 Thomas Tanner * NEWS: updated * README: added GNU Hurd to the supported platforms * doc/libtool.texi: document `-dlpreopen dummy' instead of `-dlopen dummy' * libltdl/ltdl.c (strchr): fixed typo (missing star) 1999-06-23 Stephan Kulow * libltdl/ltdl.c (strrchr): fixed typo (missing star) * libltdl/ltdl.c (trim): use `const' to silence -Wwrite-strings 1999-06-23 Olly Betts * ltmain.in (ltdll.c): Support for crosscompiling from linux to mingw32. 1999-06-23 Gary V. Vaughan * ltconfig.in (cygwin, export_symbols_cmds): If there is already an extracted and compiled ltdll.c, then don't delete, reextract and recompile. (cygwin, archive_expsym_cmds): Make sure the ltdll source has been extracted and compiled before referencing the object, since there are paths through the code which run archive_expsym_cmds without running export_symbols_cmds. 1999-06-20 Gary V. Vaughan * ltconfig.in: moved the test for NM after the test for no_builtin_flag. 1999-06-20 Alexandre Oliva * ltconfig.in: Use sed '$q' instead of sed "" for copying ltmain, just in case some sed does not support an empty command. * ltconfig.in (link_static_flag, ac_cv_prog_cc_static): Use the latter in the test. 1999-06-18 Thomas Tanner * ltconfig.in (bsdi4, deplibs_check_method): use a less restrictive regex (reported by Chris P. Ross ) * ltmain.in: support `-dlopen dummy', define lt_preloaded_symbols if dlself != no * doc/libtool.texi (Compile and Link mode): document it, documented the -Wc, -Wl flags, libtool does also support non C source code 1999-06-18 Teun Burgers * ltconfig.in: CR/LF fix for broken DJGPP bash * ltmain.in: CR/LF fix for DJGPP 1999-06-18 Gary V. Vaughan * ltmain.in (outputname): When generating the executable wrapper script, $outputname already has the $exeext suffix, so we needn't add it again. 1999-06-16 Gary V. Vaughan * libltdl/configure.in (ac_cv_lib_dl_dlopen): missing "x" in test comparison corrected. * libltdl/ltdl.c (sys_wll_open): libltdl expects this function to fail if it is unable to physically load the library. Sadly, LoadLibrary will search the loaded libraries for a match and return one of them if the path search load fails. Simulate a failure in this case for compatibility with the other APIs. Also, LoadLibrary takes the liberty of adding `.dll' to library names passed without an extension, we now add a trailing `.' to prevent this from happening. 1999-06-15 Gary V. Vaughan * libltdl/ltdl.c (sys_wll_close): Strangely enough, Microsoft have decided that LoadLibrary returns `0' for success, yet FreeLibrary returns `0' for failure! The FreeLibrary call used to interpret `0' as success for both functions. 1999-06-14 Thomas Tanner * ltconfig.in: use eval when setting have_dlfcn_h, reformatting 1999-06-12 Thomas Tanner * ltmain.in: store old archives in deplibs and old_deplibs, retain the order of dependency libraries (even old archives), determining the absolute directory name didn't work due to a typo, add the library search paths of all dependency libraries when linking a library (fixes IRIX 5.2 bug) 1999-06-10 Alexandre Oliva * ltconfig.in: Reverted June 6's patch for new GNU ld output, it is no longer needed, as ld reverted to the original format. * NEWS: Likewise. * ltconfig.in: When testing self-dlopening, test whether dlclose crashes. On FreeBSD 3.1, it does. :-( * libltdl/configure.in: Likewise. * NEWS: Note work-around. Reported by Pavel Roskin 1999-06-09 Gary V. Vaughan * ltconfig.in (exeext): autoconf's AC_EXEEXT uses "no" to indicate no extension, and we must do the same in order to share the cache value. Also we must ignore conftest.err which HPsUX (at least) fills with gratuitous warnings. (objext): for consistency, do the same as above. Reported by Pavel Roskin 1999-06-09 Pavel Roskin * ltconfig.in (exeext): Use quotes in the test, to prevent a failure in sh.test. 1999-06-09 Gary V. Vaughan * ltconfig.in: Reordered tests to be more like configure.in's recommended order (programs first, then libraries, etc.). Performed a manual ``constant folding pass'' (eg: s/eval "test \"echo '$''{'lt_cv_dlopen'+set}'`\" != set/test "${lt_cv_dlopen+set}" != set/). s/test "${foo+set}" = "set"/test "X${foo+set}" = Xset/g * ltconfig.in (link_static_flag): Accept, in order of decreasing preference: the cached value; the default value for the current host. Also test that the compiler accepts the flag, and cache that result too. * ltconfig.in (pic_flag): Accept, in order of decreasing preference: the cached value; the default value for the current host. Also test that the compiler accepts the flag, and cache that result too. 1999-06-08 Gary V. Vaughan * ltconfig.in (LN_S): Accept, in order of decreasing preference: the cached value; an environment setting; ``ln -s'' if it works; ``ln'' if ``ln -s'' doesn't appear to work. * ltconfig.in (objext): Accept, in order of decreasing preference: the cached value; the result of a test object compilation. * ltconfig.in (RANLIB): Accept, in order of decreasing preference: the cached value; an environment setting; the first file called ``ranlib'' in the user's path. * ltmain.in (exeext): Use $exeext when working out the names of programs (but not the wrapper script itself due to a stupidity in win32 which hardwires the .exe extension to the binary loader!). * ltconfig.in (exeext): Now that the wrapper script tries to move executables, we need to know whether they have an extension (ala AC_EXEEXT). Since we can't rely on AC_EXEEXT having been called in configure.in, we must be able to check for ourselves, though we can look for a cached result incase AC_EXEEXT was called. * ltconfig.in (cygwin, pic_flag): Force separate compilation of objects for dlls vs. objects for static archives. Using a cpp macro also allows us to decide whether or not we need to use dllexport/import declarations. * ltconfig.in (cygwin, need_version): Set to no, otherwise module dll's end up with mighty long names! 1999-06-06 Alexandre Oliva * ltconfig.in: Support new GNU ld --help output format. * NEWS: Likewise. Reported by Gaël Quéri and H.J. Lu . 1999-06-05 Mark Kettenis * ltconfig.in: Update support for the Hurd. Make sure that the soname includes the major version number and create the right links. Allow shared objects without the `lib' prefix and without version information. 1999-06-02 Nick Rasmussen * ltmain.in (link): use "$nonopt" as the compiler for compile/finalize_command 1999-05-27 Alexandre Oliva * TODO: Remove the short list of people interested in C++ constructors; it's not meaningful, since there are so many more people requesting this feature, and we just can't maintain it accurate. 1999-05-27 Pavel Roskin * ltconfig.in (GNU Hurd, deplibs_check_method): Use pass_all. 1999-05-27 Alexandre Oliva , Olly Betts * ltmain.in: Expand convenience libraries when creating reloadable objects. * NEWS: Ditto. 1999-05-27 Alexandre Oliva * NEWS: Mention the two bugfixes below. * ltmain.in: Only create directory into which to extract convenience libraries when $convenience is not empty. It would always be created on systems that did not support whole_archive_flag_spec. * ltconfig.in (export_symbols_cmds): Add $convenience. (cygwin, export_symbols_cmds): Ditto. * ltmain.in: Generate export symbol list before expanding convenience libraries, to avoid passing whole_archive_flag_spec to $NM. Reported by Godmar Back 1999-05-27 David Jones * libltdl/ltdl.c (LTDL_BIND_FLAGS): Remove BIND_VERBOSE, to avoid printing error messages. 1999-05-26 Alexandre Oliva GNU libtool 1.3.2 was released. 1999-05-25 Alexandre Oliva * NEWS: List fixed problems. * doc/PLATFORMS: Tested for 1.3.2. * config.guess: Synch with GNU common. * ltmain.in: Revert to stripping .exe on all platforms. * TODO: Note about this problem. Demo is fixed on win32. Support `empty' convenience libraries. * ltconfig.in (solaris*, ld_shlibs): Do not enable shared libraries with GNU ld 2.8.*, it's broken. Emit a warning suggesting an upgrade. Reported by Brian Ford and Ronald Pijnacker 1999-05-25 Frank Ch. Eigler * ltmain.in: file_magic check would not avoid cyclic links. 1999-05-25 Alexandre Oliva * depdemo/main.c, depdemo/l1/l1.c, depdemo/l2/l2.c: K&R-ize. * depdemo/l3/l3.c, depdemo/l4/l4.c: Likewise. * ltmain.in: Remove object files before writing to them, to avoid circular links. Reported by Ron O'Hara 1999-05-24 Thomas Tanner * NEWS: support for installing stripped libraries using GNU strip * ltconfig.in: set deplibs_check_method=pass_all on FreeBSD, Linux and Solaris since no one can reproduce the famous deplibs bug * ltmain.in: preserve $CC (reported by Tom Tromey), strip libraries using GNU strip if it's available and the -s flag was passed to "install" 1999-05-23 Alexandre Oliva * doc/PLATFORMS: Release 1.3.1 passes on GNU Hurd/x86. Reported by Pavel Roskin 1999-05-23 Thomas Tanner * ltmain.in: strip off the .exe suffix only on *Win (Reported by Matthew D. Langston ) 1999-05-22 Thomas Tanner * NEWS: updated * TODO: -Wc, -Wl, implemented * AUTHORS: changed my email address * doc/libtool.texi: fix "wierd" typo :) * ltmain.in: linking against convenience libraries was broken, implemented the "-Wc," "-Wl," "-Xcompiler" "-Xlinker" flag for compiler and linker-specific flags, add -lc before we do the deplibs check * ltconfig.in: linkopts -> compiler_flags for $CC and linker_flags for $LD, link_all_deplibs=yes on IRIX 1999-05-22 Gary V. Vaughan * NEWS: insert todays date alongside 1.3.1 release. * Makefile.in: use gnu not gnits rules * config.guess: synch with gnu common & apply Takabatake-san's MIPS *000 patch. * config.sub: synch with gnu common. 1999-05-22 Doug Evans * libltdl/configure.in (dlerror): Fix typo in dlopen found in -ldl test. 1999-05-21 Pavel Roskin * Makefile.am (EXTRA_DIST): Don't distribute instutils. (install-data-hook): use libltdl/Makefile.am's local-install files rule. * libltdl/Makefile.am (local-install-files): New rule to install libltdl without creating links or mode 777 directories. * instutil/*: deleted. 1999-05-21 Alexandre Oliva * doc/PLATFORMS: Updated to 1.3.1 for all platforms I've got. Added sparc-unknown-linux-gnu. 1999-05-21 Gary V. Vaughan * demo/foo.h: s/PARAMS/LTDL_PARAMS/g * libltdl/ltdl.h: ditto. * libltdl/ltdl.c: ditto. * demo/foo.h: s/__P/PARAMS/g * libltdl/ltdl.h: ditto. * libltdl/ltdl.c: ditto. Reported by Akim Demaille 1999-05-20 Alexandre Oliva * NEWS: Updated docs. * TODO: Recommend libtool.m4 to be inserted in acinclude.m4. AIX 4.3.2.0 no longer fails on static dlopening. GNU DLD no longer has to support .la files, since libltdl already does. Convenience libraries and reloadable objects should be tested in the testsuite. We could support some amount of control on the soname of libraries. * doc/libtool.texi: Notes about convenience libraries and automake. Documented INCLTDL. 1999-05-20 Thomas Tanner * cdemo/main.c: "Welcome _to_ ..." * mdemo/main.c: ditto * libltdl/configure.in: support multiple dlopening mechanisms at once * libltdl/ltdl.c: prefix system dependent functions with "sys_" to avoid symbol conflicts (libdld didn't work) * libtool.m4 (AC_LIBLTDL_*): set INCLTDL to the path of ltdl.h * ltconfig.in: check for dlopen with -ldl first 1999-05-19 Gary V. Vaughan * NEWS: Added 1.3.1 news items. * doc/PLATFORMS: updated the boxes I have access to, to 1.3.1 in preparation for the next release. 1999-05-18 Gary V. Vaughan * ltconfig.in (cygwin*, whole_archive_flag_spec): dlltool chokes on this, so leave it unset in this case so that the ltmain code knows it has to unpack convenience archives by itself. 1999-05-17 Gary V. Vaughan * ltmain.in: Do not exit when an unknown library name is passed passed in, simply warn and continue since some compilers require -LANG:* like options to work. Reported by Adam C. Powell, IV 1999-05-17 Jiro Takabatake * ltconfig.in: port to NEC UX/4800. * NEWS: updated. 1999-05-17 Gary V. Vaughan * ltconfig.in (beos*, deplibs_check_method): set to pass_all. BeOS is PIC by default. Reported by "Shawn T . Amundson" * libltdl/configure.in: Fix test failures on AIX 4.3.2 by checking for dlopen *with* -ldl first. Reported by Greg Wooledge * demo/foo.h: Don't set any declspecs until we have full dll support. 1999-05-16 Alexandre Oliva * ltconfig.in (solaris2.6, whole_archive_flag_spec): Do not use -Wl for allextract. 1999-05-14 Alexandre Oliva * instutil/chmod: New script to avoid chmod'ing files while installing libltdl's sources. * instutil/ln: New script to avoid hard-linking libltdl's sources in the install tree. * Makefile.am (EXTRA_DIST): Dist them. (instal-data-hook): Add srcdir/instutil to the beginning of the PATH before installing libltdl's sources. 1999-05-09 Gary V. Vaughan * TODO: updated. 1999-05-06 Gary V. Vaughan * Makefile.am (install-data-hook): make sure the install directory is not left world writable. Reported by Andreas Schwab 1999-04-30 Alexandre Oliva * libtool.m4: Use ifelse instead of if. Reported by David Mazieres 1999-04-29 Alexandre Oliva GNU Libtool 1.3 was released. * NEWS: Summarize news from 1.2 to 1.3. * ltmain.in: Save exit status of link_command before removing symbol table object file. 1999-04-29 Gary V. Vaughan * doc/PLATFORMS: updated my hpux-10.20 and cygwin box entries. 1999-04-29 Alexandre Oliva * NEWS: Improved support for DU and IRIX too. * config.sub, config.guess: Updated from GNU common. * mdemo/configure.in: Move AC_LIBLTDL_CONVENIENCE before AM_PROG_LIBTOOL, as suggested by autoconf. * doc/libtool.texi (Distributing libltdl): Document that -static may cause the same problems on libltdl as -all-static. * TODO: We might want to fix this in the future. * doc/libtool.texi: Clear up overfull hbox. * libltdl/Makefile.am (ltdl.lo): Add dependencies. * libltdl/configure.in: Clean up some duplicate defines. Enable support for multiple dlopening mechanisms. * libltdl/acconfig.h: New file. Add #undefs for defines that would be duplicated. 1999-04-29 Gary V. Vaughan * libtool.m4 (cygwin*|mingw*, DLLTOOL, OBJDUMP, AS): Only expand the code that makes these configure time checks on hosts that need the tools *and* if the AC_LIBTOOL_WIN32_DLL macro is used. 1999-04-29 Alexandre Oliva * ltmain.in (nlist, SYMFILE): Use outputname instead of output for names within output_objdir. 1999-04-28 Alexandre Oliva * libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC, AC_ENABLE_FAST_INSTALL): Do not call AC_BEFORE here, they're AC_REQUIREd by AC_LIBTOOL_SETUP. (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL): Call AC_BEFORE here, and now with two arguments, since these do change the default. (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE): Fix calls to AC_BEFORE. 1999-04-28 Gary V. Vaughan * libtool.m4 (ltconfig_enable_win32_dll): pass --enable-win32-dll to ltconfig if this is set. (AC_LIBTOOL_WIN32_DLL): New macro required for libtool to attempt a dll build on win32 hosts. * ltconfig.in (--enable-win32-dll): new flag for the cli. (cygwin*|mingw*|os2*, ltconfig_enable_win32_dll): if this is not set to yes, then do not attempt to build shared libraries. * doc/libtool.texi: document AC_LIBTOOL_WIN32_DLL. * NEWS: noted new macro. 1999-04-27 Alexandre Oliva * libtool.m4 (AC_LIBTOOL_DLOPEN, AC_ENABLE_SHARED, AC_ENABLE_STATIC, AC_ENABLE_FAST_INSTALL, AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE): Warn if they appear after AC_PROG_LIBTOOL. AC_LIBTOOL_SETUP, actually. (AC_LIBTOOL_SETUP): Check whether DLOPEN support is to be enabled at autoconf time, not configure time. Simplify code and improve (?) help message about --disable-libtool-lock. 1999-04-27 Thomas Tanner * NEWS: new clean mode * THANKS: added Ossama Othman * doc/libtool.texi: documented the new `clean' mode * ltconfig.in: set need_version=no on OSF (reported by Marcus Sundberg ) * ltmain.in: allow absolute non-existant -L paths, always use output_objdir instead of objdir for temporary files, delete generated temporary symbol lists, don't add .la twice in the pseudo-library header, implemented and documented clean mode (deletes libraries, programs and object files and the files associated with them), if build_libtool_libs=no and no static library is available, try to link the program against the shared library, don't add a statically linked library to the dependency_libs * ltmain.in (help uninstall): added a missing backslash after echo (reported by Ossama Othman) 1999-04-27 Alexandre Oliva * ltmain.in (old_archive_cmds): Iterate on oldobjs to find out which links to object files we must create. Do not test for empty pic_flag to create such links. Use objext when searching for object files extracted from convenience library. * ltconfig.in (compiler_c_o): Make sure the compiler does not create temporaries in the current directory when output should go elsewhere. We must perform locking if it does. 1999-04-27 Gary V. Vaughan * ltmain.in (old_archive_cmds): Ensure that there are always .o objects available before running old_archive_cmds. 1999-04-26 Erez Zadok * doc/PLATFORMS: Updates for netbsd 1.3.3 and 1.4. 1999-04-26 Alexandre Oliva * ltconfig.in (aix4.[01], always_export_symbols): The case pattern would never match; fixed. Reported by Stephan Kulow 1999-04-25 Alexandre Oliva * libtool.m4 (OBJDUMP): Pass it to ltconfig. * configure.in: AC_SUBST DLLTOOL, OBJDUMP and AS. * Makefile.am (libtool, clibtool): Pass them to ltconfig. 1999-04-25 Frank Ch. Eigler * libtool.m4 (cygwin*): Look for target objdump tool. * ltconfig.in (cygwin*, file_magic_cmd): Use autoconf-located target objdump tool. Track OBJDUMP like DLLTOOL and AS. * ltconfig.in (cygwin*, deplibs_check_method): Accept "architecture: i386" as optional suffix, for it is printed on a separate line sometimes. * ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C". * ltmain.in (deplibs_check_method=file_magic): Redirect stderr to /dev/null, to suppress error messages from target objdump. 1999-04-25 Alexandre Oliva * ltconfig.in (irix*, soname_spec, library_names_spec): Missing dots before $versuffix and $major. * ltconfig.in (solaris*, whole_archive_flag_spec): Use -z allextract/defaultextract from Solaris 2.6 on. Reported by Brian Ford * ltconfig.in (beos*, allow_undefined_flag): Do not build shared libraries with undefined symbols. * ltconfig.in (aix4*, allow_undefined_flag): Set to -berok. (aix4*, shared_flag): Set to -shared or ${wl}-bM:SRE. (aix4*, archive_cmds): Use -bexpall. (aix4*, archive_cmds, archive_expsym_cmds): Use shared_flag and allow_undefined_flag. (aix4*, always_export_symbols): Set to yes up to AIX 4.1.*, because -bexpall is supported from 4.2 on. Reported by Greg Wooledge * ltconfig.in (hpux*, hardcode_minus_L): Set to yes. (hpux*, hardcode_libdir_flag_spec): Do not use +s by default. (hpux*, shlibpath_overrides_runpath): Set to no. * ltconfig.in (irix*, osf*, archive_cmds): Write so_locations within objdir. * ltconfig.in (irix*, soname_spec): Append $major. (irix*, library_names_spec): Add new soname. Reported by David Kaelbling * ltconfig.in (irix*, sys_lib_dlsearch_path_spec): /usr/local/lib is not searched by default. /usr/lib is searched before /lib. * ltconfig.in (irix*, sys_lib_search_path_spec): /usr/lib is searched before /lib. * ltconfig.in (irix5*, need_lib_prefix, need_version): Set to no, by unifying with irix6*. * ltconfig.in (irix*, osf*, deplibs_check_method): Use pass_all. * ltconfig.in (old_LDFLAGS, old_LIBS): Save and write to comments in output file. * ltmain.in (prefer_static_libs): New variable, set to no by default, but set to yes by -static and -all-static. Used instead of build_libtool_libs to decide whether to use a shared or static version of a library, when both versions are available. 1999-04-25 Boyd Lynn Gerber * ltconfig.in (sco3.2v5*): Use LD_RUN_PATH for hard-coding. 1999-04-25 Pavel Roskin * Makefile.am (uninstall-local): Remove installed libltdl tree. 1999-04-25 Alexandre Oliva * demo/Makefile.am (hc-direct, hc-libflag, hc-libpath, hc-minusl): Added CFLAGS to link commands; SCO OSR needs it for -belf. * TODO: -Wl and -Wc options. 1999-04-12 Alexandre Oliva * libltdl/ltdl.c: Remove trivial warnings. 1999-04-22 Frank Ch. Eigler * ltconfig.in: Correct sed expression that extracts symbols from cygwin def files. Ignore demangled C++ names, if any. 1999-04-12 John David Anglin * libltdl/ltdl.c (shl_close): shl_t was correct here... (shl_sym): ... but we have to pass the handle by reference here. 1999-04-12 Alexandre Oliva * doc/libtool.texi (Invoking ltconfig): Document environment variables used. * doc/libtool.texi (Invoking ltconfig): Document --cache-file. * doc/libtool.texi (Invoking ltconfig): Document --disable-fast-install, --enable-dlopen, --with-gnu-ld and --disable-lock. 1999-04-11 Thomas Tanner * libltdl/configure.in: check for shl_load in libdld * libltdl/ltdl.c (shl_close, shl_sym): use (shl_t *) instead of shl_t * ltconfig.in (check for gcc): removed a bogus line, check for shl_load in libdld * ltmain.in: added a warning to the header of the .la file to warn users against deleting the file, link shared against static libraries if deplibs_check_method == pass_all 1999-04-10 Alexandre Oliva * libtool.m4 (AC_PROG_LD, AC_PROG_NM): When looking for programs, try $ac_exeext too, so that they're found on DJGPP/MS-DOS. * ltconfig.in: Likewise. Reported by Robert S. Maier * ltconfig.in (Usage): Removed --enable-dlopen-self. Reported by Pavel Roskin * ltconfig.in: Moved sysv4 before sysv4.*. (symcode): Brian's overrider is specific to sysv4, not sysv4*. 1999-04-09 Thomas Tanner * NEWS, README: Motorola System V 4 support * doc/PLATFORMS: added mk88-motorola-sysv4 * ltconfig.in: installed patch from Brian Ford to support mk88-motorola-sysv4 * doc/libtool.texi: some cleanups in the libltdl documentation 1999-04-07 Alexandre Oliva * ltconfig.in (--fallback-echo): Do not put an inline document and an exec in the same if construct; otherwise the inline document may not be removed. * ltmain.in (--fallback-echo): Likewise. Reported by John David Anglin * dryrun.test: It would still fail at random times, because `cp' and `mv' are not guaranteed to preserve the timestamps of the installed files. Instead of preserving them, just remove them before the dry uninstall test. Redirect dry-run output to stderr, so that it can be easily separated from the regular output. 1999-04-07 Thomas Tanner * NEWS: support for moved libraries * libtool.m4: another DJGPP fix 1999-04-07 Alexandre Oliva * doc/PLATFORMS: Updated to 1.3 for all platforms I've got. I'll make sure 1.3 won't be released unless it passes all tests on those platforms. * doc/libtool.texi (Compile mode): Document potential problem and work-around for `-c -o dir/foo.lo'. * tests/dryrun.test: The constant modifications of libtool would cause main.o to be updated at the wrong time; the new approach is to modify the libtool script so that it enables dry run depending on whether an environment variable is set or not. I've also moved `after' and `before' to a directory deep within $objdir, instead of creating it in ../tests. * tests/Makefile.am (CLEANFILES): Removed. 1999-04-06 Alexandre Oliva * tests/dryrun.test: We cannot rely on setting LIBTOOL, because automake may use sub-makes, and the setting will not be propagated to them on some makes. Instead, create a dry version of libtool and switch between it and the original one before and after dry runs. * tests/Makefile.am (CLEANFILES): Added libtool-*, created by dryrun.test. * tests/dryrun.test: Use cmp instead of diff. (before, after): Create them within ../tests. (libtool): Set to `/bin/sh ./libtool' by default, but use LIBTOOL, SHELL and top_builddir from the environment if available. For dry runs, use "$libtool -n". * tests/Makefile.am (CLEANFILES): Added before and after. * ltmain.in: Do not create links to object files in dry runs. 1999-04-06 Thomas Tanner * ltmain.in: added a missing line of the ILD patch * NEWS: improved DJGPP support * doc/libtool.texi: removed hardcode_into_libs documentation * libtool.m4: some DJGPP fixes * ltconfig.in: ditto, reverted one of my previous patches: we need to check for NM, removed the hardcode_into_libs support since no platform seems to support it * ltmain.in: some DJGPP fixes, removed the hardcode_into_libs support 1999-04-05 Alexandre Oliva * ltconfig.in (netbsd*, GNU ld): Support a.out shared libraries * Makefile.am (CVS): allow command-line overriding of cvs * ltconfig.in (exclude_expsyms): Exclude _GLOBAL_OFFSET_TABLE_ by default, as most a.out platforms use it, and end up in trouble if we preload it, so it's safer to rule it out by default, and special case its removal from exclude_expsyms if someone ever complains. 1999-04-05 Thomas Tanner * doc/libtool.texi: reorder tests to reflect execution order, documented dryrun.test and depdemo* * ltmain.in (lt_preloaded_symbols): dry-run mode bugfix * tests/dryrun.test: new test to check whether the dry-run mode works properly * demo/run.test: removed the unnecessary test * demo/Makefile.am: ditto * ltmain.in: set the DLL search path on cygwin,mingw and os2 1999-04-04 Alexandre Oliva * ltconfig.in (sunos4*, GNU ld): -Bstatic is not enough for deplibs.test to work with GNU ld; -Bshareable is needed here. * ltconfig.in (ld_shlibs, amigaos*): Disable shared libs with native ld too. * ltconfig.in (sunos4*, GNU ld): Reordered. * ltconfig.in (archive_cmds, sunos4*): Revert to -Bstatic; the native linker doesn't even support -Bshareable, only GNU ld does. Do not use `gcc -shared' in archive_cmds, it breaks deplibs.test. * ltconfig.in: if ld_shlibs=no, set can_build_shared=no too, otherwise it will just be disregarded. This would cause netbsd/m68k with GNU ld a.out, and certainly many other platforms, to incorrectly believe that shared libraries were supported, while archive_cmds was empty, causing shared libraries not to be created 1999-04-03 Alexandre Oliva * NEWS: improved support for AIX and HP/UX 1999-04-03 Thomas Tanner * NEWS: updated * libtool.m4: check for main in libm instead of cos * ltmain.in: cosmetic fixes, don't try to link libraries only once (although it's not necessary on many platforms and looks ugly...), 1999-04-02 Alexandre Oliva * ltmain.in (convenience): fixed race condition when more than one library was linked with the same convenience library by uniquifying the extract directory. It is now named after the new library *and* the old one, and lives in the objdir of the new one. * ltmain.in (-L*): do not abort just because a directory specified with -L does not exist; just warn and discard it * depdemo/l1/Makefile.am (AUTOMAKE_OPTIONS): no-dependencies * depdemo/l2/Makefile.am (AUTOMAKE_OPTIONS): ditto * depdemo/l3/Makefile.am (AUTOMAKE_OPTIONS): ditto * depdemo/l4/Makefile.am (AUTOMAKE_OPTIONS): ditto * ltconfig.in (archive_cmds, sunos4*): where we used -Bstatic, we should have been using -Bshareable * demo/Makefile.am (CLEANFILES): clean EXTRA_* from deplibs-check * libtool.m4 (LDFLAGS, LIBS): pass them to ltconfig, for the tests that involve linking * Makefile.am (LDFLAGS, LIBS, libtool, clibtool): ditto * tests/Makefile.am (CFLAGS, CPPFLAGS, LDFLAGS, LIBS): set (LDFLAGS, LIBS, TESTS_ENVIRONMENT): pass them down 1999-04-02 Erez Zadok * doc/PLATFORMS: 1.2f ok on various versions of hpux cc 1999-04-02 Alexandre Oliva * ltconfig.in (link_all_deplibs): set to unknown by default * ltmain.in: test != no, not = yes * doc/libtool.texi: document unknown 1999-04-01 Thomas Tanner * doc/libtool.texi: documented deplibs.test * demo/Makefile.am: moved testsuite specific declarations to the end, the deplibs check is now optional * libltdl/configure.in: read libtool --config only once, merged AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE from libtool.m4 * libtool.m4: AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE were not used, lt_dlopen and silent may be empty, AC_SYS_LIBTOOL_CYGWIN no longer necessary * ltconfig.in: NM is already checked in libtool.m4, * ltmain.in: always link all static dependency_libs * tests/Makefile.am: added deplibs.test * tests/demo-exec.test, demo-inst.test: removed hell0 * tests/deplibs.test: new test to test the deplibs_check_method 1999-03-31 Thomas Tanner * ltmain.in: always link a library before its dependency libs * mdemo/Makefile.am: test -export-symbols-regex 1999-03-30 Thomas Tanner * doc/libtool.texi: fixed a typo * libtoolize.in: add the libtool scripts to libltdl.tar.gz * libtool.m4: don't AC_SUBST(USE_SYMBOL_UNDERSCORE), AC_CHECK_LIBM sets LIBM, AC_LIBLTDL_INSTALLABLE doesn't work when libltdl is already installed * *demo/Makefile.am: use LIBM * *demo/configure.in: AC_SUBST LIBM * libltdl/configure.in: use ac_cv_sys_symbol_underscore instead of USE_SYMBOL_UNDERSCORE * ltconfig.in: added link_all_deplibs variable * doc/libtool.texi: document it * ltmain.in: always search for libname.la - don't eval libname_spec, when linking libraries against static ones just print a warning and add them to dependency_libs, add -lc before deplibs, always link all dependencies of a static library or if link_all_deplibs is yes, hardcode library paths if hardcode_into_libs is no, don't link against dependency_libs that already are deplibs 1999-03-30 Alexandre Oliva * ltconfig.in (aix4*, collect2name): make sure collect2 exists before running string on it, to avoid errors on old gccs Reported by Erez Zadok * ltconfig.in (aix4*, hardcode_libdir_flag_spec): unless we're using gcc with old collect2, use -b libpath to hardcode the library search path * ltmain.in, ltconfig.in: reverted most of the quoting changes from 1999-03-25; Gary's delay_variable_subst patch from 1999-02-19 obviates it. Keep only quoting of $PATH, for uniformity with other systems that already did it 1999-03-29 Gary V. Vaughan * libltdl/ltdl.c (lt_dladdsearchdir): Forgot to mallocate the extra byte of memory for the teminating NUL, and forgot to strcpy the original path in to the new memory before appending the new path compononent. 1999-03-27 Thomas Tanner * NEWS: updated * README: updated (BeOS support, no longer shared libraries support for AmigaOS), cleanups, we have now two mailing lists * REAMDE-alpha: autogen -> bootstrap, we have now two mailing lists * THANKS: added Xavier Pianet * doc/PLATFORMS: BeOS works * doc/libtool.texi: we have now to two mailing lists, updated -dlopen self documentation, documented libltdl's license, put each author in a separate line, inter-library dependencies on uninstalled libtool libraries are now supported, cleanups and minor corrections * libltdl/COPYING.LIB: new file * libltdl/ltdl.[ch]: added special exception to the LGPL license * libtool.spec: removed, it was outdated * Makefile.am: removed libtool.spec * ltmain.in: use TMPDIR when possible, create a subdirectory in the temporary directory, added -export-symbols-regex to the help, 1999-03-25 Alexandre Oliva * demo/Makefile.am: create a static library, link two libtool archives with it, then link the program hell0 with both * demo/hell1.c, demo/hell2.c: dummy files used to create the libtool archives without introducing symbol conflicts * tests/demo-exec.test, tests/demo-inst.test: run the new program * ltconfig.in (irix5*, irix6*, deplibs_check_method): pass_all * ltmain.in ($PATH): instead of modifying the PATH, better prevent its expansion the first time *_cmds variables are eval'ed. Modify $show within loops that eval them so as to expand variables * ltconfig.in (*_cmds): quote $ so that they're not expanded by the first eval 1999-03-25 Gary V. Vaughan * ltmain.in ($PATH): Expand any tildes in the users path to the contents of $HOME to avoid problems with *_cmds splitting and evaluation. 1999-03-24 Thomas Tanner * TODO: support -dlopen for libraries * doc/PLATFORMS: Erez Zadok reported that libtool works on bsdi 4.0.1 * doc/libtool.texi (libltdl): libltdl supports BeOS * libltdl/ltdl.c: shlib_ext was declared even if LTDL_SHLIB_EXT didn't exist, partially reverted my previous patch: BeOS will automatically search in ADDON_PATH * ltmain.in: don't allow relative run-paths, fixed a typo in a warning, ignore -dlopen self for libraries and objects, only accept -L paths that exist, minor cleanups, bugfix: add -lc for normal libraries, not convenicence libraries removed offensive warnings/comments 1999-03-24 Alexandre Oliva * ltconfig.in (ld_shlibs, amigaos*): disable shared libraries 1999-03-23 Gary V. Vaughan * libltdl/configure.in: the sed expression for finding the shared library extension used to think the . in [.] for the cygwin shared_library_names_spec was the start of the extension!! We now remove anything in square brackets (assuming that the square brackets delimit a sed or expr expression which is not part of the extension) before looking for the extension. * TODO (cygwin): food for thought re: mutually dependant dlls. 1999-03-21 Alexandre Oliva * tests/build-relink.test: if we relink and have hardcode_direct, removing an uninstalled library breaks an uninstalled program * doc/libtool.texi: documented convenience libraries * TODO: removed entry about it * tests/*-unst.test: if directory is not configured, skip it * tests/demo.test, tests/mdemo.test: unused, removed * tests/depdemo.test: ditto 1999-03-20 Thomas Tanner * doc/libtool.texi (link mode): documentation for -module updated * ltconfig.in: fast-install mode doesn't work for hardcode_into_libs=yes * ltmain.in: bugfix: "-dlopen self [-all]-static" wouldn't use dlopen_self_static, automatically enable -export-dynamic when using "-dlopen self", always make run-paths absolute, ignore -lc only on platforms that don't have such a library, cleanups in the ILD code, find even installed libtool libraries that were moved, before generating the DLL-import library we need to set libname, improved hardcoding of shlibpath for libraries, don't generate an installable pseudo-library for convenience libraries, bugfix: export_symbols would be removed immediately before it is used 1999-03-19 Thomas Tanner * use the same header in all configure.in's and Makefile.am's * NEWS: improved support for BeOS and Cygwin * TODO: ILD branch was merged, all internal variables and macros are now documented * demo/Makefile.am: use $(LIBS) instead of -lm * doc/libtool.texi: documented new variable hardcode_into_libs and thread_safe_flag_spec, renamed all AM_ENABLE/DISABLE_* macros to AC_*, documented AC_DISABLE_FAST_INSTALL and AC_LIBTOOL_DLOPEN * libltdl/ltdl.c: added two new error messages (cannot_open_error, cannot_close_error), use them where approriate, BeOS support (thanks to Xavier Pianet), on BeOS search modules additionally in ADDON_PATH * libtool.m4: rewrote AC_CHECK_LIBM: BeOS and Cygwin don't have libm and *-ncr-sysv4.3* requires libmw * ltconfig.in: don't check for LoadLibrary, hardcode dlopen configuration for BeOS and Cygwin * ltmain.in: fix sourcing of .la files on Solaris (patch by Raja R Harinath) 1999-03-19 Alexandre Oliva * ltconfig.in (sunos4*, with_gnu_ld, hardcode_minus_L): remove, we have -rpath (aix4*, without_gnu_ld, hardcode_shlibpath_var): unsupported is default (hpux9*, hpux10*, hpux11*, archive_cmds): drop +s, unneeded here (hpux9*, hpux10*, hpux11*, hardcode_libdir_flag_spec): add +s before +b (hpux9*, hpux10*, hpux11*, shlibpath_overrides_runpath): since +s appears before +b, set it to yes (hardcode_shlibpath_var, hardcode_action): do not use shlibpath_var to specify the compile-time search path; it loses, and we may end up linking with pre-installed older versions of libraries instead of yet-to-be-installed ones (*, hardcode_direct, hardcode_minus_L): remove entries that set them to no, that is default * demo/Makefile.am (hc-direct, hc-libpath, hc-minusL): link with $$hardcode_libdir_flag_spec, if available, with libdir=$(libdir), to make sure the hardcode_* variables will produce the expected results even in the presence of a hardcoding flag; depend on libhello.la having been installed already (hc-libflag): link with the installed library, but try to hard-code the uninstalled one * doc/libtool.texi: document the changes * tests/*.test: when a test fails, skip tests that depend on it. If a certain configuration is not supported, skip all its tests. * doc/libtool.texi: reorder tests to reflect execution order * tests/noinst-link.test: new test * tests/Makefile.am (TESTS): added noinst-link.test * doc/libtool.texi: document it 1999-03-19 Gary V. Vaughan * ltmain.in (dependency_libs): There is no reason to infer that the pseudo library is invalid if dependency_libs='' at install-time, or else libltdl/libltdl.la is invalid!! 1999-03-18 Thomas Tanner * merged my inter-library dependencies code from the ILD branch: * NEWS: inter-library dependencies are now supported * configure.in: add the depdemo subdirectory * depdemo/*: new demo to demonstrate inter-library dependencies * tests/depdemo*: new tests for depdemo * ltconfig.in: added hardcode_into_libs (whether library paths should be hardcoded into the libraries), it currently defaults to 'no' * ltmain.in: new internal 'relink' mode to relink libraries on platforms with hardcode_into_libs=yes, save command line arguments in libtool_args, accept relative -L directories, ignore -lm on BeOS and Cygwin, always ignore -lc, handle -l, -L and .la arguments later, always make the library installation directory (-rpath) absolute, in relink mode don't delete the not-relinked library and exit immediately after relinking, try to find already-installed libtool libraries that were specified using -l, support hardcoding of library paths into libraries too, export shlibpath before linking libraries, and a lot of other big changes that I don't want to describe here... please read the source. * merged Gary's Win32 code from the ILD branch: * NEWS: Win32 DLLs are now supported * TODO: removed .a library namespace clash for win32. It is now resolved. * ltconfig.in (cygwin, library_names_spec): removed $libname.a. Creating a dll with libtool no longer creates an import library. * ltconfig.in (extract_expsyms_cmds): Create $objdir if it does not exist -- i.e. we need to generate import an import library in a directory which has no libs of its own. * doc/libtool.texi (old_archive_from_expsyms_cmds, extract_expsyms_cmds): documented these new variables. * ltconfig.in (extract_expsyms_cmds): New variable. Commands to extract the exported symbol list from a dll. (old_archive_from_expsyms_cmds): New variable. Commands to build an old archive from the extracted expsyms list. * ltmain.in: run the cmds in extract_expsyms_cmds and old_archive_from_expsyms_cmds as necessary. * ltconfig.in (cygwin, old_archive_from_new_cmds): no longer required. * ltconfig.in (cygwin, shlibpath_overrides_runpath): I'm not even sure whether win32 honours the runpath at all when searching for a dll to load! Anyway, when set to yes this prevents a gratuitous warning. * ltmain.in (deplib): The cygwin environment doesn't actually have -lm, and although the linker fakes having one, specifiying it to libtool will break ILD, so we ignore it when generating dependencies. 1999-03-17 Gary V. Vaughan * doc/PLATFORMS: Thanks to Alexandres changes below, both my hp boxes pass the entire test suite. 1999-03-17 Alexandre Oliva * ltconfig.in (hpux*, hardcode_minus_L): should be no, we have +b (hpux*, hardcode_libdir_separator): set to colon 1999-03-17 Alexandre Oliva * doc/PLATFORMS: egcs is gcc; updates from Erez Zadok 1999-03-16 Alexandre Oliva * ltmain.in (deplibs, beos*): don't append -lc Reported by Xavier Pianet * tests/build-relink.test (hardcode_action): when set to relink, skip the test with lt-hell * Makefile.am (EXTRA_DIST): add mkstamp Reported by Xavier Pianet * Makefile.am (EXTRA_DIST): add ChangeLog.0 1999-03-16 Thomas Tanner * doc/libtool.texi: some minor corrections to the "-dlopen self" documentation * tests/Makefile.am: sorted by name, added assign.test * ChangeLog: started new file * ltconfig.in: some cosmetical changes * ltmain.in: ditto Continued in ChangeLog.0 $Revision$ $Date$