2007-11-30 Stefan Sperling (tiny change) * doc/libtool.texi (Linking executables): Reorder paragraphs. 2007-11-26 Ralf Wildenhues * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: The IBM XL 8.0 C++ compiler may also be called xlc++*, not only xlC*. Report by Nysal K Jan . 2007-11-24 Ralf Wildenhues * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): New macro. Warn about whitespace in the absolute build tree name. (LT_INIT): Use it. * THANKS: Update. Report by Jim Meyering. * libltdl/config/ltmain.m4sh (func_extract_an_archive) (func_extract_archives): Add some quoting. 2007-11-16 Ralf Wildenhues Use `${top_build_prefix}' for better compatibility with non-GNU make. * libltdl/m4/ltdl.m4 (_LT_BUILD_PREFIX): New macro. If the Autoconf version used is >= 2.62, then expand to `${top_build_prefix}', otherwise to `${top_builddir}/'. (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Use it for defining LIBLTDL. Fixes a build failure with AIX make in a package using convenience libltdl in nonrecursive mode. * doc/libtool.texi (Distributing libltdl): Document requirements to define `top_build_prefix' if Automake is not used. Report by Bob Friesenhahn. 2007-11-12 Ralf Wildenhues Avoid warnings about conftest.dSYM directories on Mac OS X Leopard. * libltdl/m4/libtool.m4 (_LT_LINKER_BOILERPLATE) (_LT_LINKER_OPTION, _LT_CMD_GLOBAL_SYMBOLS): Remove conftest.dSYM directory. Report and analysis by Jeff Squyres and Peter O'Gorman. 2007-11-09 Ralf Wildenhues * libltdl/configure.ac: Drop the broken and long-disabled code to output a banner for the libltdl configure. Avoids the need to ship mkstamp with libltdl. 2007-11-08 Ralf Wildenhues * tests/runpath-in-lalib.at: New test. * Makefile.am: Update. Report by Benoit SIGOURE . 2007-10-16 Eric Blake Speed up bootstrap by improving lt_join. * libltdl/m4/ltsugar.m4 (lt_join, _lt_join): Rewrite to mirror Autoconf 2.62's faster implementation. 2007-10-12 Eric Blake Whitespace cleanup. * libltdl/m4/ltsugar.m4: Avoid space-tab in indents. * libltdl/m4/libtool.m4: Avoid trailing space. Deal with Autoconf 2.62's semantic change in m4_append. * libltdl/m4/ltsugar.m4 (lt_append): Replace broken versions of m4_append. (lt_if_append_uniq): Don't require separator to be overquoted, and avoid broken m4_append. (lt_dict_add): Fix typo. * libltdl/m4/libtool.m4 (_LT_DECL): Don't overquote separator. 2007-10-12 Ralf Wildenhues * libltdl/config/ltmain.m4sh: Also sanitize `LANGUAGE'. (func_mode_execute): Also restore `LANGUAGE', for old glibc. Report by Paul Eggert against Autoconf. 2007-10-11 Eric Blake * libltdl/.cvsignore: Ignore argz.h. 2007-10-11 Ralf Wildenhues * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) : Renamed from lt_prog_compiler_pic_works. : Renamed from lt_prog_compiler_static_works. * NEWS: Update. 2007-10-09 Ralf Wildenhues * libltdl/config/ltmain.m4sh (func_mode_compile): Accept extension `.sx'. * tests/suffix.test: Test it. 2007-09-07 Ralf Wildenhues * libltdl/lt_dlloader.c (loader_callback, lt_dlloader_get): Use NULL, not 0, for the benefit of too picky compilers like PGI. * slist.c (slist_tail): Likewise. Include stddef.h, for NULL. Report by Jeff Squyres. 2007-09-05 Eric Blake * libltdl/ltdl.c (lt_dlcaller_get_data): Work even when no caller has set data. 2007-09-04 Ralf Wildenhues * doc/libtool.texi (User defined module data) : Document that a NULL place matches all modules. * libltdl/lt_dlloader.c (lt_dlloader_remove): Actually iterate over all open modules when looking for modules that use it. If a resident module is found, return but do not set the error string. * libltdl/ltdl.c (lt_dlexit): When removing dlloaders, ignore errors that stem from earlier failed commands. Exposed by the lt_dladvise test. Fixes regression over branch-1-5. Memleak report as Coverity CID 19 via Jeff Squyres. 2007-09-01 Ralf Wildenhues * NEWS: Update. * libltdl/ltdl.c (trim): Fix possible write beyond array bound. * libltdl/ltdl.c (lt_dlopenadvise): Instead of asserting, return FILE_NOT_FOUND if the filename is "". * libltdl/ltdl.c (try_dlopen): Fix computation of extension, avoids subtracting pointer from NULL pointer. * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Do not test array address of sys_dlsearch_path against NULL, rather test for nonempty contents. Coverity reports CID 148 and CID 149 via Jeff Squyres. * libltdl/ltdl.c (tryall_dlopen_module): Fix string length computation: do not allocate more than needed. 2007-08-30 Ralf Wildenhues * libltdl/loaders/preopen.c (vm_close): `module' is unused. Coverity report CID 158 via Jeff Squyres. * libltdl/ltdl.c (parse_dotla_file): If we run out of memory, do not close the .la file twice. Coverity report CID 440 via Jeff Squyres. * libltdl/ltdl.c (has_library_ext): Remove dead code. Coverity report CID 561 against Open MPI via Jeff Squyres. 2007-08-29 Ralf Wildenhues * libltdl/slist.c (slist_remove): When a matching item is found, break out of the loop to return the first match; also fixes possible NULL dereference. * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) (_LT_LANG_CXX_CONFIG) [ linux ]: Add support for IBM XL 8.0 C/C++ (xlc*, xlC*) and IBM XL Fortran 10.1 (xlf*) on GNU/Linux, tested on ppc, pending a $shlibpath_var related fix. (_LT_SYS_HIDDEN_LIBDEPS): Double-quote $output_verbose_link_cmd properly during evaluation, obsoleting $no_glob_subst mangling. * NEWS: Update. 2007-08-18 Ralf Wildenhues * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ] [ k*bsd*-gnu ] : Avoid spurious output in runpath test. 2007-08-16 Ralf Wildenhues * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ mingw, cygwin ] : Do not use -DDLL_EXPORT. Report by Ross Ridge . * Makefile.am (edit): Do not warn against manual editing for the generated files libtool, libtoolize, libltdl/m4/ltversion.m4, tests/defs, as they are still in a preferred source code form as required by GPL. Report by DJ Delorie. 2007-08-15 Dirk Mueller (tiny change) Ralf Wildenhues * libltdl/ltdl.c (parse_dotla_file): Avoid a strlen. When reading .la files, cope with files that are not newline-terminated. 2007-08-05 Tilman Koschnick (tiny change) * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG) [ linux ]: Treat pgcpp as Portland Group C++ compiler as well. 2007-08-05 Ralf Wildenhues * libltdl/ltdl.c (try_dlopen): Use `attempt' rather than `filename', as the former has the needed extension when called by lt_dlopenext. Report by Brian Barrett. 2007-07-27 Peter Rosin * Makefile.am: Pass STRIP through to the testsuite, so that tests that run configure will use the same strip program. 2007-07-24 Ralf Wildenhues * tests/mdemo-exec.test: Also try absolute library names. * tests/mdemo/main.c (test_dl, main): Try lt_dlopenext as well. * THANKS: Update. Report by Brian Barrett. 2007-07-23 Ralf Wildenhues * doc/fdl.texi: Update to GFDL 1.2. * doc/libtool.texi: Adjust. Put License in Appendix. * libltdl/config/ltmain.m4sh (func_mode_link): Remove each intermediate relinked object after use, to avoid quadratic space complexity when linking partially. Report by Isidor Zeuner . 2007-07-23 Eric Blake * libltdl/config/ltmain.m4sh: Whitespace cleanup. * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src) : Avoid compiler warning. 2007-07-22 Peter Rosin * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Add support for Microsoft Visual C. Also, older MinGW versions seem to need stdint.h to find intptr_t. 2007-07-22 Ralf Wildenhues * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: Ignore lines in ld.so.conf starting with 'hwcap '. 2007-07-16 Charles Wilson * tests/cdemo-exec.test: use $EXEEXT where appropriate to correct mingw cross-compile issues. * demo-deplibs.test: Ditto. * demo-exec.test: Ditto. * demo-inst.test: Ditto. * demo-relink.test: Ditto. * depdemo-exec.test: Ditto. * depdemo-inst.test: Ditto. * depdemo-relink.test: Ditto. * f77demo-exec.test: Ditto. * fcdemo-exec.test: Ditto. * mdemo-exec.test: Ditto. * mdemo-inst.test: Ditto. * mdemo2-exec.test: Ditto. * pdemo-exec.test: Ditto. * pdemo-inst.test: Ditto. * tagdemo-exec.test: Ditto. 2007-07-14 Peter Rosin * AUTHORS, THANKS: Peter Ekberg got married, now Peter Rosin. 2007-07-13 Charles Wilson * libltdl/m4/libtool.m4 (func_dirname_and_basename) : New function. (func_dirname_and_basename) : New function. * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname): Call it. Also, take advantage of missed optimization using func_dirname's additional arguments. (func_mode_compile): Call it. (func_mode_install): Call it. (func_mode_link): Call it. 2007-07-12 Peter Rosin * libltdl/config/ltmain.m4sh (func_mode_link): Strip the cwrapper using $STRIP instead of relying on the tools to support -s, which MSVC doesn't. 2007-07-06 Peter O'Gorman * libltdl/config/libtool.m4sh: Don't pass -msg_* through to the linker. Reported by Bob Friesenhahn 2007-07-04 Bob Friesenhahn * libltdl/lt__alloc.c, libltdl/loaders/preopen.c, libltdl/loaders/dyld.c, libltdl/loaders/dlopen.c, libltdl/ltdl.c, libltdl/lt_error.c, libltdl/lt_dlloader.c, libltdl/lt__dirent.c: Include lt__private.h prior to any system headers. * libltdl/lt__alloc.c: Remove redundant inclusion of configuration header. 2007-07-04 Eric Blake * libltdl/ltdl.c (advise_dup): Delete function no longer used after memleak fix three days ago. 2007-07-03 Ralf Wildenhues * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Cater to old Sparc Solaris 7 ld that does not understand `-64'. Report by Vincent Lefevre . 2007-07-01 Ralf Wildenhues * libltdl/m4/lt~obsolete.m4 (LTOBSOLETE_VERSION): New macro, to force-pull in this file by aclocal. * libltdl/m4/libtool.m4 (LT_INIT): Require LTOBSOLETE_VERSION. * tests/libtoolize.at (upgrading verbatim style aclocal.m4): Adjust. Report by H. J. Lu . * libltdl/ltdl.c (tryall_dlopen): Rename argument to have typed alias of `advise' instead of allocating a copy. Fixes memleak. 2007-06-30 Peter Breitenlohner * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Correct a typo ("-dld" instead of "-ldld"). 2007-06-24 Gary V. Vaughan Add a test to simulate a failure visible on systems which need a library prefix like 'lib', such as BeOS. Fix a number of bugs exposed by this test in order for it to pass. Currently the prefix is hardcoded as 'lib', as I am not aware of systems that require a different prefix: * libltdl/loaders/preopen.c (lt_dlpreload_open): Move error condition out of test loop to be sure that each originator is tried, instead of erroring out if the first doesn't match. Support passing NULL as the originator to load all preloaded modules originating in the program itself. * libltdl/lt_dlloader.c (lt_dlloader_dump): New debug function. * libltdl/libltdl/lt_dlloader.h (lt_dlloader_dump): Declare it when LT_DEBUG_LOADERS is defined at compile time. * libltdl/ltdl.c (lt_dlinit): Dump loader list after successful initialisation. (tryall_dlopen): Add a new VTABLE parameter to force use of a specific loader in preference to trying every loader in turn. Adjust all callers. (try_dlopen): Always see whether a module was preloaded for module names with no directory component before searching the filesystem for a match. * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Declare a new global_symbol_to_c_name_address_lib_prefix variable. (global_symbol_to_c_name_address_lib_prefix): The sed expressions to use when a lib prefix is enforced need to be slightly different to work with preloaded modules. * libltdl/config/ltmain.m4sh (func_generate_dlsyms): In order to name preloaded symbols correctly for the lookup algorithm to work when the loaded module file must be prefixed with lib. Use global_symbol_to_c_name_address_lib_prefix when need_lib_prefix is other than no. * tests/need_lib_prefix.at: New test to check for breakage on hosts where need_lib_prefix is unknown. * Makefile.am (TESTSUITE_AT): Add new test. * tests/TODO: Note missing tests that would have caught some of the latent bugs fixed by this patch. * HACKING: Document libltdl keyword. * NEWS: Updated. 2007-06-24 Gary V. Vaughan Reenable compilation of libltdl with C++: * libltdl/ltdl.c (tryall_dlopen): Rename the try variable to attempt, and cast explicitly. (advise_dup): Add explicit cast. 2007-06-22 Peter O'Gorman * libltdl/config/ltmain.m4sh (version-number) [irix]: Don't subtract 1 from major as it may be less than age. 2007-06-21 Noah Misch * tests/f77demo/configure.ac [--with-dist]: New option. Skip most Fortran checks when given. * tests/fcdemo/configure.ac [--with-dist]: Likewise. * Makefile.am (@DIST_MAKEFILE_LIST@): Pass --with-dist. Reported by Benoit Sigoure . 2007-06-19 Charles Wilson * AUTHORS: Add myself. 2007-06-18 Charles Wilson * libltdl/config/ltmain.m4sh: Add new magic variable for use with cwrapper. (func_ltwrapper_script_p): New function. (func_ltwrapper_executable_p): New function. (func_ltwrapper_scriptname): New function. (func_ltwrapper_p): Accomodate both wrapper scripts and wrapper executables. (func_mode_execute): Handle $file that is a wrapper script and $file that is a wrapper executable differently. (func_mode_install) [cygwin|mingw]: If $file is a wrapper executable, use func_ltwrapper_scriptname to determine wrapper script name. Afterwards, always use func_ltwrapper_script_p instead of func_ltwrapper_p. (func_emit_libtool_wrapper_script): Rename to... (func_emit_wrapper): ...this. All callers changed. (func_emit_libtool_cwrapperexe_source): Rename to... (func_emit_cwrapperexe_src): ...this. All callers changed. Embed new magic_exe variable into source. Private transient wrapper script now called foo_ltshwrapperTMP, not foo_ltshwrapper. (func_emit_cwrapperexe_src) [main, mingw]: Use _spawnv and return child's exit code manually rather than rely on broken execv. (func_mode_link) [cygwin|mingw]: Don't call dirname and basename directly; use func_dirname and func_basename when computing cwrapper names. Use cwrapper to generate wrapper script, and use pathname returned by func_ltwrapper_scriptname instead of $output. (func_mode_link) [NOT cygwin|mingw]: move wrapper script generation for non-win32 inside case statement, as default case. (func_mode_uninstall) [$name's extension != .lo|.la]: 'clean' mode must handle $file differently if it is a libtool wrapper script, or if it is a libtool wrapper executable. * tests/destdir.at [Simple DESTDIR install]: $EXEEXT fixups. * tests/destdir.at [DESTDIR with in-package deplibs]: Ditto. 2007-06-17 Noah Misch * AUTHORS: Add myself. 2007-06-17 Peter O'Gorman * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): add quotes to the test -n. 2007-06-17 Charles Wilson * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): ensure stderr is redirected even when getconf does not exist. 2007-06-09 Charles Wilson * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script): Take an argument to specify value assigned to WRAPPER_SCRIPT_BELONGS_IN_OBJDIR in the emitted script. (func_emit_libtool_cwrapperexe_source) [file scope]: define permission flags S_IXGRP and S_IXOTH if not already defined. (func_emit_libtool_cwrapperexe_source) [LTWRAPPER_DEBUGPRINTF]: Use C89-compatible syntax to mimic variadic macros. Adjust all callers. (func_emit_libtool_cwrapperexe_source) [check_executable]: avoid embedded #ifdefs; use S_IXGRP and S_IXOTH unconditionally. (func_emit_libtool_cwrapperexe_source) [make_executable]: ditto. (func_emit_libtool_cwrapperexe_source): don't rewrite WRAPPER_SCRIPT_BELONGS_IN_OBJDIR posthoc; instead pass correct argument when calling func_emit_libtool_wrapper_script. (func_mode_link): pass correct argument when calling func_emit_libtool_wrapper_script. 2007-06-07 Charles Wilson * libltdl/config/ltmain.m4sh (func_emit_libtool_cwrapperexe_source): ensure that generated source follows GCS as nearly as possible. 2007-06-07 Charles Wilson * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script): add code block to handle cases when wrapper script is in $objdir. (func_emit_libtool_cwrapperexe_source): replace DEBUG() macro with namespace-safe LTWRAPPER_DEBUGPRINTF(). Call func_emit_libtool_wrapper_script() with appropriate filters to embed script text in C char* static variable. (f_e_l_c_s: main): add new option --lt-dump-script, parse argv[] for it, and take appropriate action. Call chase_symlinks() on argv[0], in case this.exe was launched via one. Use chased value to determine full absolute pathname of wrapper script, in $objdir. Unconditionally write script out to this pathname and set permission bits. Remove extraneous ';' from debugging loop. (f_e_l_c_s: main) [mingw]: DOS-ize $SHELL before populating newargv[0]; if $TARGETSHELL environment variable is set, use it instead of $SHELL and do not DOS-ize. Ensure newargv[1] (wrapper script absolute path) uses only '/', not '\'. Make sure to call execv() with DOS-ized $SHELL (or un-DOS-ized $TARGETSHELL, if set) (f_e_l_c_s: make_executable): new function (f_e_l_c_s: chase_symlinks): new function (no-op if !S_ISLNK) 2007-06-03 Peter O'Gorman * libltdl/m4/libtool.m4 (old_archive_cmds): Remove old_deplibs. * tests/archive-in-archive.at: Check for archives as members of static archives. Currently XFAILS, above only eliminates one of the two static archives. * Makefile.am: Add test. Reported by Daniel Macks 2007-06-01 Steve Ellcey * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Try using getconf to set lt_cv_sys_max_cmd_len. 2007-05-28 Peter O'Gorman * libltdl/config/ltmain.m4sh (func_mode_link), libltdl/m4/libtool.m4 [darwin]: Only use ${wl} in verstring with xlc. 2007-05-22 Gary V. Vaughan * tests/lt_dladvise.at: Use the lib prefix throughout for better portability - testing whether modules build and load without that prefix is not the domain of this test. Also, only run the test of the global hint with the depend module on hosts that can compile a module without passing -no-undefined in link mode. 2007-05-10 Noah Misch * tests/duplicate_deps.at: Make the XFAIL unconditional, but skip the test if the test link would succeed even without --preserve-dup-deps. * libltdl/config/general.m4sh (func_echo): Use $* instead of ${1+"$@"}. 2007-05-09 Eric Blake * libltdl/libltdl/lt_error.h (LT_ERROR_LEN_MAX): Adjust, to fix buffer overflow in previous patch. 2007-05-09 Gary V. Vaughan * tests/lt_dladvise.at: Commit missing file from below. 2007-05-08 Gary V. Vaughan Without this patch, lt_dlopen always opens modules with symbol visibility set according to the underlying implementation. Here, we add lt_dlopenadvise() to allow callers to request, among other things, local or global symbol visibility from the underlying dlloader: * libltdl/ltdl.c (LT_DLRESIDENT_FLAG): Removed. (LT_DLIS_RESIDENT): Use public is_resident info field. (LT_DLIS_SYMLOCAL, LT_DLIS_SYMGLOBAL): New macros to test for module symbol visibility status. (tryall_dlopen): If vtable->module_open() was able to act on either is_symlocal or is_symglobal hints, store that in the handle flags. (lt_dlopenadvise): New function that works like lt_dlopen(), but accepts an advise type to determine whether to ask dlloaders to change default symbol visibility. (lt_dlopen, lt_dlopenext): Just call lt_dlopenadvise() with the correct parameters. (lt_dladvise_init, lt_dladvise_destroy): New functions to initialize and destroy an advise type hint. (lt_dladvise_ext, lt_dladvise_resident, lt_dladvise_local) (lt_dladvise_global): Set hints on an advise type. (openadvise): Factored out of lt_dlopenadvise. (has_library_ext): Factored out of lt_dlopenadvise. * libltdl/ltdl.h: Declare all of the above. (lt_dlinfo): New fields for advise hints. * libltdl/libltdl/lt_dlloader.h (lt_module_open): Add a new advise parameter. Adjust all callers. (lt_dladvise): New opaque type for advise hints. * libltdl/libltdl/lt__private.h (lt__advise): Declare contents of opaque lt_dladvise type. * libltdl/libltdl/lt_error.h (CONFLICTING_FLAGS): New error for attempts to have local and global symbol visibility at the same time. * libltdl/loaders/dld_link.c, libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Adjust. * libltdl/loaders/dlopen.c (RTLD_LOCAL, RTLD_GLOBAL): Try to define these symbols if the system has equivalents. (vmopen): If unable to act on a caller request to set symbol visibility, then unset the relevant hints in the advise type. * tests/lt_dladvise.at: New tests for the above. * doc/libtool.texi (Libltdl Interface): Updated. * NEWS: Updated. 2007-05-03 Ralf Wildenhues * libltdl/config/ltmain.m4sh (func_mode_link): When adding new_inherited_linker_flags to compiler_flags, remember to translate .ltframework back. Fixes bug introduced 2007-04-23. * THANKS: Update. * tests/inherited_flags.at: Amend test. Report by Christoph Egger. 2007-05-03 Reuben Thomas (tiny change) * doc/libtool.texi (Libltdl interface): Fix typo. 2007-05-01 Ralf Wildenhues * Makefile.am (clean-ltmain-sh): Removed. (libtool, $(srcdir)/$(m4dir)/ltversion.m4) ($(srcdir)/$(auxdir)/ltmain.sh): Updated to not depend on any phony rules. Test `$?' for prerequisites that should always cause us to update the target. Fixes rebuilding rules, at the cost of sometimes updating too much with non-GNU make. 2007-04-27 Noah Misch * tests/ctor.at: New file. * Makefile.am (TESTSUITE_AT): Add tests/ctor.at. 2007-04-27 Charles Wilson * libltdl/libltdl/lt__glibc.h: Use !HAVE_WORKING_ARGZ instead of SYSTEM_ARGZ_IS_BROKEN. * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Ditto. Also, minor stylistic improvements. Report by Bruno Haible . 2007-04-25 Charles Wilson Ralf Wildenhues * libltdl/argz_.h: ensure error_t definition is obtained in same mechanism system argz.h would have. * libltdl/libltdl/lt__glibc.h: also detect if SYSTEM_ARGZ_IS_BROKEN when determining whether to re#def argz* functions. * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's argz facilities are known bad. Err on the side of caution if cross-compiling. 2007-04-25 Ralf Wildenhues * README, README.alpha: Document how to test an arbitrary installed libtool script. 2007-04-24 Ralf Wildenhues * tests/cmdline_wrap.at: Avoid `AT_CAPTURE_FILE' if it not defined (Autoconf < 2.60). * tests/shlibpath.at: Add `libtool' keyword. * tests/indirect_deps.at: New file, with tests to ensure `link_all_deplibs=no' does not break functionality. * Makefile.am: Adjust. 2007-04-23 Ralf Wildenhues * libltdl/config/ltmain.m4sh (func_mode_link): Fix accumulation of `inherited_linker_flags' entries from multiple deplibs, by adding $new_inherited_linker_flags only once, only in link pass. * tests/inherited_flags: Amend test to expose this. * NEWS: Adjust: kill one regression, but add note about the feature new in 1.9b. Report by Jeff Squyres and others. 2007-04-23 Charles Wilson * libltdl/config/ltmain.m4sh (func_mode_link): move wrapper script generation from here... (func_emit_libtool_wrapper_script): to this new function, and write to stdout (func_mode_link): move cwrapper source code generation from here... (func_emit_libtool_cwrapperexe_source): to this new function, and write to stdout (func_mode_link): call the two new functions and redirect output to appropriate file. 2007-04-10 Ralf Wildenhues * libltdl/config/ltmain.m4sh (func_mode_link) <-no-install> [ darwin ]: Treat like `-no-fast-install', as we cannot hardcode. Report by Simon Josefsson. 2007-04-03 Ralf Wildenhues * doc/libtool.texi (Link mode) <-no-install>: Mention that this still generates a wrapper script on systems without hardcoding. * tests/stresstest.at: Test `-no-install'. * THANKS: Update. Report by Simon Josefsson. 2007-03-30 Matthieu Herrb * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [ openbsd ]: Add an explicit check for shared libraries support. 2007-03-29 Ralf Wildenhues * Makefile.am ($(srcdir)/$(m4dir)/ltversion.m4): Fix quoting error. 2007-03-28 Gary V. Vaughan * HACKING (Abstraction layers in libltdl): Rewritten somewhat for (hopefully) better clarity. 2007-03-26 Gary V. Vaughan The stamp-vcl file rules caused non-gnu make programs to rerun parts of the configuration process on each invocation. Instead of relying on a stamp file, we now compare version numbers of generated files with the ChangeLog timestamp manually in the affected make rules to decide whether regenerating is necessary: * Makefile.am (EXTRA_DIST): Remove stamp-vcl. (clean-ltmain-sh): Also remove users' obsolescent stamp-vcl. (rebuild): Keep some common code here for... (libtool, libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh): Rewritten to work without reference to intermediate stamp-vcl file. * configure.ac (CONFIG_STATUS_DEPENDENCIES): Change from stamp-vcl to ChangeLog. * NEWS: Removed entry saying this fix is needed. 2007-03-25 Gary V. Vaughan * HACKING (LGPL with Libtool exception clause): Typo. Reported by Tim Van Holder * HACKING (Licensing Rules): Explain the various license texts used for files distributed with Libtool, and update license text to match. * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO, bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc, libltdl/README, libltdl/argz.c, libltdl/argz_.h, libltdl/config/general.m4sh, libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh, libltdl/config/mkstamp, libltdl/configure.ac, libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c, libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4, libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in, libltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4, libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at, tests/cdemo-conf.test, tests/cdemo-exec.test, tests/cdemo-make.test, tests/cdemo-shared.test, tests/cdemo-static.test, tests/cdemo-undef.test, tests/cdemo/Makefile.am, tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c, tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh, tests/demo-conf.test, tests/demo-deplibs.test, tests/demo-exec.test, tests/demo-hardcode.test, tests/demo-inst.test, tests/demo-make.test, tests/demo-nofast.test, tests/demo-noinst-link.test, tests/demo-nopic.test, tests/demo-pic.test, tests/demo-relink.test, tests/demo-shared.test, tests/demo-static.test, tests/demo-unst.test, tests/demo/Makefile.am, tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c, tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c, tests/demo/hello.c, tests/demo/main.c, tests/depdemo-conf.test, tests/depdemo-exec.test, tests/depdemo-inst.test, tests/depdemo-make.test, tests/depdemo-nofast.test, tests/depdemo-relink.test, tests/depdemo-shared.test, tests/depdemo-static.test, tests/depdemo-unst.test, tests/depdemo/Makefile.am, tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am, tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h, tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c, tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am, tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h, tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c, tests/depdemo/l4/l4.h, tests/depdemo/main.c, tests/depdemo/sysdep.h, tests/deplibs-ident.at, tests/destdir.at, tests/duplicate_conv.at, tests/duplicate_deps.at, tests/duplicate_members.at, tests/early-libtool.at, tests/export.at, tests/f77demo-conf.test, tests/f77demo-exec.test, tests/f77demo-make.test, tests/f77demo-shared.test, tests/f77demo-static.test, tests/f77demo/Makefile.am, tests/f77demo/configure.ac, tests/f77demo/cprogram.c, tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test, tests/fcdemo-make.test, tests/fcdemo-shared.test, tests/fcdemo-static.test, tests/fcdemo/Makefile.am, tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/inherited_flags.at, tests/libtoolize.at, tests/link-2.test, tests/link-order.at, tests/link-order2.at, tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test, tests/mdemo-dryrun.test, tests/mdemo-exec.test, tests/mdemo-inst.test, tests/mdemo-make.test, tests/mdemo-shared.test, tests/mdemo-static.test, tests/mdemo-unst.test, tests/mdemo/Makefile.am, tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c, tests/mdemo/sub.c, tests/mdemo2-conf.test, tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac, tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at, tests/objectlist.test, tests/old-m4-iface.at, tests/pdemo-conf.test, tests/pdemo-exec.test, tests/pdemo-inst.test, tests/pdemo-make.test, tests/pdemo/Makefile.am, tests/pdemo/configure.ac, tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c, tests/pdemo/longer_file_name_foo.c, tests/pdemo/longer_file_name_foo2.c, tests/pdemo/longer_file_name_hell1.c, tests/pdemo/longer_file_name_hell2.c, tests/pdemo/longer_file_name_hello.c, tests/pdemo/longer_file_name_main.c, tests/quote.test, tests/recursive.at, tests/search-path.at, tests/sh.test, tests/shlibpath.at, tests/standalone.at, tests/static.at, tests/stresstest.at, tests/subproject.at, tests/suffix.test, tests/tagdemo-conf.test, tests/tagdemo-exec.test, tests/tagdemo-make.test, tests/tagdemo-shared.test, tests/tagdemo-static.test, tests/tagdemo-undef.test, tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp, tests/tagdemo/baz.h, tests/tagdemo/configure.ac, tests/tagdemo/conv.cpp, tests/tagdemo/conv.h, tests/tagdemo/foo.cpp, tests/tagdemo/foo.h, tests/tagdemo/main.cpp, tests/tagtrace.test, tests/template.at, tests/testsuite.at: Apply correct license text according to the new rules set out in HACKING. 2007-03-19 Gary V. Vaughan * libtoolize.m4sh: Handle argz.m4 specially like ltdl.m4, so that it isn't copied unless libltdl is being used. Copy other macro files according to their tagged serial numbers. * tests/libtoolize.at: Adjust. 2007-03-18 Ralf Wildenhues * tests/mdemo/Makefile.am (libmlib_la_LDFLAGS): Add `-export-symbols-regex ".*"' because the convenience libltdl uses export markers and thus turns off autoexport on w32. Fixes test failures for Cygwin and MinGW. Bug analysis by Charles Wilson. * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS) (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ interix ]: When matching for interix, accept version range [3-9] instead of 3. * NEWS: Update. Report by Martin Koeppe . * libltdl/m4/libtool.m4 (LT_PROG_GCJ): Avoid M4 expansion error that caused `dnl' to be merged to the previous word. * THANKS: Update. Report by Steve Ellcey. 2007-03-09 Gary V. Vaughan * libtoolize.m4sh: Replace literal tab chars in help comment with spaces to align columns in --help output. 2007-03-06 Ralf Wildenhues * libltdl/config/ltmain.m4sh (func_mode_link): Also apply the symbol filtering for w32 and the include_expsyms feature in the case of exceeded command line length. Fixes test failure on MinGW. * tests/stresstest.at: For const data object imported from shared library, define appropriate macros to expand __declspec(dllimport) on w32. Use two different main objects and pick the right one for the link flags we are about to test. Fixes test failure on MinGW. * tests/export.at: For const data object imported from shared library, define appropriate macros to expand __declspec(dllimport) on w32. Fixes test failure on MinGW. 2007-03-05 Gary V. Vaughan * libtoolize.m4sh (func_check_macros): Display m4 quotes correctly in AC_CONFIG_MACRO_DIR diagnostics. * libltdl/config/general.m4sh (M4SH_VERBATIM): New macro to simplify m4sh quote quoting in blocks of raw shell code. * clcommit.m4sh, libtoolize.m4sh, libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh, tests/defs.m4sh: Use it. * HACKING (Editing `.m4sh' Files): Mention M4SH_VERBATIM Macro. 2007-02-27 Ralf Wildenhues * tests/lt_dlexit.at: Allow test to pass on static-only systems and with disable-shared. * NEWS: Rewrite all news since 1.9f and put in categories, update. * libltdl/Makefile.inc: Fix the file description, so that it matches recursive and nonrecursive libltdl setup. * Makefile.am ($(srcdir)/libltdl/Makefile.am): Do not depend upon the exact text of the copyright header, just copy until the marker line. Remove the marker lines in the output, and adjust the description for subpackage setup. 2007-02-26 Gary V. Vaughan * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fix regexp typo. * clcommit.m4sh: Look in the right directory for helper scripts. 2007-02-25 Gary V. Vaughan * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fixup regex to match Copyright notice change below. * HACKING, Makefile.am, Makefile.maint, bootstrap, libltdl/Makefile.am, libltdl/Makefile.inc, libltdl/m4/libtool.m4, ltmain.c, tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/depdemo/l1/Makefile.am, tests/depdemo/l2/Makefile.am, tests/depdemo/l3/Makefile.am, tests/depdemo/l4/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/libtoolize.at, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Update Copyright notice text to include URL for canonical GPL document. 2007-02-25 Ralf Wildenhues * tests/static.at: Forgot to fix PATH for the first func_test_exec invocation. So factor out into new functions func_fix_path and func_restore_path and use those. * README: Document the need for GNU make to build Libtool. Point the user to the doc/notes.txt file. In the examples, use `gmake' throughout to make it more obvious. Explain simpler way to run both testsuites and either one. Referring to individual tests needs the `tests/' prefix. * README.alpha: Likewise. * doc/notes.texi: Likewise, document need for GNU make. Comment out the FreeBSD make issue for now. * tests/static.at: Larger rewrite to make work on w32: Use three different prefixes instead of three libdirs, so the moving of the DLLs works as expected. Adjust all code. Since now $libdirI/../bin is distinct from the directory of the installed program, take care than on w32 PATH contains the needed bindirs, in appropriate order. Report by Charles Wilson. * Makefile.am (INSTALLCHECK_ENVIRONMENT): Point LTDLINCL and LIBLTDL to installed libltdl, so that it is being used by the lt_dlexit test. 2007-02-24 Ralf Wildenhues * doc/libtool.texi (Install mode, libtool script contents): Describe current and system-specific DESTDIR limitations. * tests/destdir.at: XFAIL if `fast_install' is no. * doc/libtool.texi (LT_INIT): Fix typo. * doc/libtool.texi (Libtool test suite): Mention the new testsuite. Point to README rather than INSTALL for testing instructions. (Test descriptions): Fix more file names. Also mention cdemo-undef.test, mdemo2-conf.test, mdemo2-exec.test, mdemo2-make.test, objectlist.test, pdemo-conf.test, pdemo-exec.test, pdemo-inst.test, pdemo-make.test, tagdemo-conf.test, tagdemo-exec.test, tagdemo-make.test, tagdemo-static.test, tagdemo-shared.test, tagdemo-undef.test, f77demo-conf.test, f77demo-exec.test, f77demo-make.test, f77demo-static.test, f77demo-shared.test, fcdemo-conf.test, fcdemo-exec.test, fcdemo-make.test, fcdemo-static.test, fcdemo-shared.test. Describe what they do. (When tests fail, Troubleshooting): Mention how to pass options to the new test suite. * tests/tagdemo/README: Fix description. * bootstrap: Also set GREP, FGREP, EGREP, LN_S, when creating a preliminary ltmain.sh script. * doc/libtool.texi (Test descriptions): Track the grand test suite renaming from 2003-10-14 in the tests documentation. assign.test is merged into sh.test. Fix description of sh.test. * tests/sh.test: Likewise. * doc/libtool.texi (LT_INIT): Fix wording of intro a bit. : Also describe these default LT_INIT options. : Mention deprecated macro names, including the respective LT_INIT replacement. : Document, un-deprecate. Suggest the respective LT_INIT replacement. : Document deprecated aliases. (Distributing libltdl) : Document deprecated aliases. * libltdl/m4/ltoptions.m4 (AM_ENABLE_SHARED, AM_DISABLE_SHARED) (AM_ENABLE_STATIC, AM_DISABLE_STATIC): Make these AU_ALIASes of the respective AC_* macros, so we do not recommend LT_INIT(*) in this case. (AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC) (AC_DISABLE_STATIC): Un-deprecate these. Remove now-superfluous aclocal-1.4 backwards compatibility comments. * tests/link-order2.at: Rewrite completely. Do not use `sin' from the math library, there are too many problems with this. Instead, use a self-written library, install it without the Libtool library file, to emulate a native library in a system directory, and adjust $shlibpat_var. Try overriding its symbol. Further, also try an installed `wrong' binary. Avoid failing test bits on AIX without runtimelinking and on Darwin in some cases, SKIP at the end in this case. Analysis by Peter O'Gorman. * doc/notes.texi: Mention MACOSX_DEPLOYMENT_TARGET issue. * tests/template.at: Only skip those tests failing on Darwin if `-flat_namespace' is used by libtool. In that case, SKIP at the end. Analysis by Peter O'Gorman. 2007-02-23 Ralf Wildenhues Fix -export-symbols and -export-symbols-regex for links that exceed the command line length and use convenience archives. * libltdl/config/ltmain.m4sh (func_mode_link): Avoid grepping a nonexistent file if using reloadable objects. Do not create a linker script nor a linker input file if no objects are passed. Apply export_symbols_regex in case the command line length is exceeded. Report by Bob Friesenhahn. * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) : New tag variable. Default to `no'. (_LT_LINKER_SHLIBS) [ linux ]: Set it to yes for Sun C 5.9. (_LT_LANG_CXX_CONFIG): Also default it to `no'. [ linux ]: Set it to `yes' for Sun C++ 5.9. * libltdl/config/ltmain.m4sh (func_mode_link): If we link no objects but only convenience archives into a library, force expansion if `compiler_needs_object' is yes. For creating a linker input filelist due to long cmdline, extract the first object if `compiler_needs_object' is yes. * doc/libtool.texi (libtool script contents): Document it. Fixes test failures of Sun compilers on GNU/Linux. Report by Terry D. Dontje. * libltdl/config/ltmain.m4sh (func_mode_link): Avoid setting `$libobjs' to a single space; set it to empty in that case. 2007-02-23 Ralf Wildenhues * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [ osf5 ]: On Tru64 5.1, const relocations do not work well. Omit the const here. Fixes failure of demo-make after demo-shared with link editor error `seg_info_ptr: Couldnt find a seg type 2'. * Makefile.am (doc_libtool_TEXINFOS): Renamed from... (libtool_TEXINFOS): ...this, to fix dependencies. Omit from EXTRA_DIST. (check-local): Also depend upon $(bin_SCRIPTS). 2007-02-23 Ralf Menzel (tiny change) * libltdl/config/general.m4sh (sed_double_backslash): Fix hacky sed script to avoid limitations but retain portability to Solaris /bin/sed. Remove old obsolete cruft. 2007-02-22 Ralf Wildenhues * libltdl/config/ltmain.m4sh (func_mode_link): Fix the check for convenience archives when warning about linking against static libraries: test against $deplib rather than empty $lib. 2007-02-19 Ralf Wildenhues * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Fix detection of new enough libltdl by actually checking for the declaration of lt_dlinterface_register in ltdl.h with AC_CHECK_DECL. Remove redundant configure output line. * tests/template.at: Reformat, add M4 quoting. Use $LDFLAGS consistently for link mode. 2007-02-18 Ralf Wildenhues * tests/static.at: Use the right names for the broken libs. 2007-02-17 Ralf Wildenhues * tests/deplibs-ident.at [aix, hppa*-*-hpux*, interix, openbsd]: Do not XFAIL, on these systems we happen to pass. * tests/duplicate_deps.at [aix]: Likewise. * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux | k*bsd*-gnu ]: Fix eval quoting in the DT_RUNPATH test. * HACKING: Update. * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ linux ] : For Sun C/C++ 5.9, do not add /dev/null as dummy object, it fails with GNU ld version 2.16.91.0.7-amd-sles9. Report by Terry D. Dontje. * THANKS: Update. 2007-02-14 Ralf Wildenhues * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ osf4, osf5 ] : Use `${wl}-input' not `-input', for cc. Could use `-input_to_ld'. (_LT_LANG_CXX_CONFIG) [ osf4, osf5 ] : Use `${wl}' instead of `-Wl,', for consistency. 2007-02-12 Ralf Wildenhues Fix spurious testsuite failures on AIX due on NFS mounts due to shared library images that cannot be removed without `slibclean' which needs superuser privileges. * tests/testsuite.at (PREPARE_TESTS): Define $mkdir_p globally. (LT_AT_MVDIR): New macro to emulate `mv dir dest'. * tests/destdir.at: Use LT_AT_MVDIR. * tests/shlibpath.at: Likewise. * tests/static.at: Likewise. 2007-02-12 Ralf Wildenhues * tests/export.at: Exporting is not fully functional with -retain-symbols-file. Do not test for failure to link `broken' in this case. At the end of the test, SKIP if we are not fully functional. * tests/lt_dlexit.at: Add casts and `extern "C"' to let the test pass with a C++ compiler. * libltdl/config/ltmain.m4sh: Remove duplicate marker for generated shell functions. * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): New macro, like LT_AT_EXEC_CHECK but uses `$LIBTOOL --mode=execute' and allows to pass `-dlopen MODULE' arguments. * tests/lt_dlexit.at: Use it. Also, do not test `-dlpreopen', that currently needs library names to begin with `lib'. 2007-02-11 Ralf Wildenhues * tests/export.at: New test: expose -export-symbols failure when the input consists solely of convenience archives, and failure to not export all symbols when the command line length is exceeded. * Makefile.am: Adjust. * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New substituted function `func_lo2o', saving two fork&exec with XSI shells. * libltdl/config/ltmain.m4sh (func_mode_compile) (func_mode_install, func_mode_link): Use it for rewrites of single files. * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New function func_opt_split, for XSI and portable shell. * libltdl/config/ltmain.m4sh: Move the insertion point for the configure-generated shell functions to before the first option parsing loop. Rewrite the separation of the long options to use func_opt_split. 2007-02-11 Ralf Wildenhues Eliminate roughly a third of the script execution time overhead for all modes except for link/relink and uninstall/clean. * libltdl/m4/libtool.m4 (_LT_CONFIG): Remove unused `TEST SUITE MARKER', obsolete since 2005-04-17. * libltdl/config/ltmain.m4sh: Likewise, several instances. (Main): Tear apart, moving individual bits up as early in the script as possible, to help the shell to avoid parsing the rest. 2007-02-11 Ralf Wildenhues * doc/libtool.texi: Update copyright years. 2007-02-11 Ralf Wildenhues * libltdl/config/general.m4sh (sed_double_backslash): Replace POSIX sed script with a hack that treats up to 10 backslashes in the input correctly and is portable to Solaris /bin/sed. 2007-02-08 Ralf Wildenhues * tests/testsuite.at (LT_AT_TAG): Skip also if the compiler variable is set to `no', not only if it is empty. 2007-02-06 Ralf Wildenhues * tests/lt_dlexit.at: Do not compile main object with libtool. * tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir to inner testsuite. * Makefile.am (TESTSUITE_AT): Move destdir.at after search-path.at so the banners fit better. * tests/convenience.at: Use $CPPFLAGS for compilation. * tests/deplibs-ident.at: Likewise. * tests/duplicate_members.at: Likewise. * tests/inherited_flags.at: Likewise. * tests/link-order.at: Likewise. * tests/stresstest.at: Likewise. * tests/early-libtool.at: Likewise. Do not quote $CC. * libltdl/ltdl.c (lt_dlexit): Add casts to fix compilation with C++ compiler again. * tests/destdir.at: Add `libtool' keyword to tests. 2007-02-05 Ralf Wildenhues * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE) (_LT_LINKER_BOILERPLATE, _LT_SYS_MODULE_PATH_AIX) (_LT_COMPILER_C_O): Require _LT_DECL_SED. * THANKS: Update. Report by Maciej W. Rozycki. 2007-01-29 Ralf Wildenhues * tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir, in the new testsuite. 2007-01-29 Samuel Thibault * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ gnu ] : Behave like Linux, so that --version-script is used for Hurd as well. 2007-01-28 Charles Wilson * NEWS: Update for Cygwin changes. 2007-01-28 Brian W. Barrett * libltdl/config/ltmain.m4sh [darwin]: Use otool64 if otool fails. 2007-01-28 Dave Brolley , Ralf Wildenhues * libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL before checking that it is still in the list. * tests/lt_dlexit.at: New test. * Makefile.am (TESTSUITE_AT): Adjust. (check-local): Also depend on libltdl/libltdlc.la. (check-recursive): Removed, unnecessary use of Automake internals. 2007-01-28 Mike Frysinger * libltdl/config/ltmain.m4sh (func_mode_link): Pass through `-p' and `-fprofile-*' for GCC. 2007-01-28 Ralf Wildenhues * libltdl/libltdl/lt_system.h: Adjust copyright years. 2007-01-28 Charles Wilson * libltdl/libltdl/lt__private.h (LT_GLOBAL_DATA) [__CYGWIN__]: Also define on Cygwin. * libltdl/libltdl/lt_system.h (LT_SCOPE) [__CYGWIN__]: Likewise. 2007-01-28 Ralf Wildenhues * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ cygwin, mingw ] : Avoid shell expansion of '/s/.*' through double expansion, in case there is a 'S:' drive. Report by Charles Wilson. 2007-01-28 Ralf Wildenhues Introduce a new test keyword `recursive' for tests that create a modified `libtool' script and run the suite on this script. All tests with the keyword `libtool' are (by definition) suitable to be used here. * tests/cmdline_wrap.at: New test. * Makefile.am: Adjust. * tests/testsuite.at (LT_ESCAPE): New macro: clone of Autoconf AS_ESCAPE that does not escape `$'. (LT_AT_CHECK): New macro: print a command-to-be-run while expanding parameters but nothing else. * tests/stresstest.at: Use LT_AT_CHECK. Create some files to expose erroneous globbing errors with `-export-symbols-regex', similar to those reported by Charles Wilson. Use `eval' and adjusted quoting so the expansion doesn't already happen in the testsuite commands. * HACKING: Update. 2007-01-27 Ralf Wildenhues Assume C89 for included headers, and throughout the testsuite. * NEWS: Update. * libltdl/argz.c: Do not include strings.h nor memory.h, include string.h unconditionally. Patch by Simon Josefsson . * libltdl/libltdl/lt__private.h: Likewise. * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not check for string.h, strings.h, memory.h. * tests/cdemo/configure.ac: Assume presence of math.h. * tests/cdemo/foo.c: Likewise. * tests/demo/configure.ac: Likewise for math.h, string.h. Assume 'const'. Drop obsolete AC_EXEEXT. * tests/demo/dlmain.c: Likewise. * tests/demo/foo.c: Likewise. * tests/depdemo/configure.ac: Likewise. * tests/depdemo/l4/l4.c: Likewise. * tests/f77demo/configure.ac: Likewise. Also drop obsolete AC_OBJEXT. * tests/fcdemo/configure.ac: Likewise. * tests/mdemo/configure.ac: Likewise. * tests/mdemo/foo1.c: Likewise. * tests/mdemo/foo2.c: Likewise. * tests/mdemo2/configure.ac: Likewise. * tests/pdemo/configure.ac: Likewise. * tests/pdemo/longer_file_name_dlmain.c: * tests/pdemo/longer_file_name_foo.c: Likewise. * tests/pdemo/longer_file_name_foo2.c: Likewise. * tests/tagdemo/configure.ac: Likewise. * tests/tagdemo/foo.cpp: Likewise. 2007-01-24 Reuben Thomas (tiny change) * doc/libtool.texi (Inter-library dependencies): Fix typo. 2007-01-21 Ralf Wildenhues * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]: Use `lib -OUT' rather than `lib /OUT' to avoid MSYS path translation mangling. Report by Christopher Hulbert. * THANKS: Update. * libltdl/config/ltmain.m4sh (func_mode_compile): Accept suffixes matching `[fF][09].', for Fortran. * tests/suffix.test: Also test F90, F95, f03, F03. * Makefile.am (EXTRA_DIST): Add ChangeLog.2006. * ChangeLog.2006: New, rotated, from... * ChangeLog: ...here. 2007-01-21 Ralf Wildenhues * doc/libtool.texi: Typo fixes. * TODO: Likewise. Continued in ChangeLog.2006 -- Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. This file is part of GNU Libtool. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without warranty of any kind.