ltmain.in: Use func_warning for all warnings
[libtool.git] / ChangeLog.old
blobbb84e8047d0bb819a3de67b6561894e8100e1df9
2 2010-12-20  Ian Lance Taylor  <iant@google.com>
4         * libltdl/m4/libtool.m4 (LT_LANG): Add Go.
5         (AC_PROG_GO): Provide.
6         (_LT_SYS_HIDDEN_LIBDEPS): Add Go case.
7         (_LT_LANG_GO_CONFIG): Define.
8         (LT_PROG_GO): Define.
9         (AC_PROG_GO): Define if not defined.
10         * libltdl/config/ltmain.m4sh: Match *.go.
11         * doc/libtool.texi (LT_INIT): Mention Go.
12         (Tags): Mention Go.
13         * configure.ac: Enable Go.
14         * NEWS: Update.
16 2010-12-20  Brice De Bruyne  <bricedb@gmail.com>  (tiny change)
18         Also turn off -fuse-linker-plugin for postdep_objects computation.
19         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Add
20         -fno-use-linker-plugin to temporary compile flags if necessary,
21         to fix C++ postdep_objects setting with -flto
22         -fuse-linker-plugin.
23         * NEWS, THANKS: Update.
25 2010-12-20  KO Myung-Hun  <komh@chollian.net>  (tiny change)
27         Set command line length limit for OS/2.
28         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [os2]
29         <lt_cv_sys_max_cmd_len>: Set to 8192 to avoid long test.
31 2010-12-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33         Fix PIC flags with mpif77 using ifort on GNU/Linux.
34         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
35         Match Intel compiler also using $CC -V output, to avoid false
36         negatives with compiler drivers like mpif77.
37         Report by Christian Rössel.
39 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
41         Fix PIC flags with MPI wrappers using Portland on GNU/Linux.
42         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
43         Match Portland compilers also using $CC -V output, to avoid
44         false negatives with MPI compiler drivers.
45         Report by Christian Rössel.
47         * libltdl/m4/libtool.m4 (_LT_SETUP): Fix quoting for
48         PATH_SEPARATOR.
50 2010-12-15  KO Myung-Hun  <komh@chollian.net>  (tiny change)
51             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
53         Fix PATH_SEPARATOR handling for OS/2.
54         * Makefile.am (update_mans): Quote $(PATH_SEPARATOR).
55         * libltdl/m4/libtool.m4 (_LT_SETUP): Add _LT_DECL for
56         PATH_SEPARATOR.
57         * libltdl/config/general.m4sh: Use PATH_SEPARATOR when computing
58         $progpath.
59         * THANKS: Update.
61 2010-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
63         Fix nvcc PIC setting on darwin.
64         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
65         <lt_prog_compiler_pic>: Prepend -Xcompiler to nonempty variable
66         setting rather than hard-coding -Xcompiler -fPIC, for darwin.
67         * NEWS, THANKS: Update.
68         Report by Paweł Daniluk.
70         Honor $AUTOCONF, $AUTOMAKE in --help output.
71         * libltdl/config/getopt.m4sh (func_help): Use $AUTOCONF and
72         $AUTOMAKE if set, for --version outout.
74         docs: Libtool configuration diagram.
75         * doc/libtool.texi (Integrating libtool): Add diagrams
76         explaining the dependencies between Libtool files.
77         Suggestion by Ethan Mallove.
79 2010-11-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
81         Eliminate hardcode_libdir_flag_spec_ld tag variable.
82         * libltdl/config/ltmain.m4sh (func_mode_link): Set $wl to empty
83         if $LD is used for creating shared libraries.  Do not use
84         hardcode_libdir_flag_spec_ld any more.
85         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
86         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG, _LT_SYS_DYNAMIC_LINKER)
87         <hardcode_libdir_flag_spec_ld>: Remove all instances of the tag
88         variable.
89         (_LT_LINKER_SHLIBS) [linux, xlf] <hardcode_libdir_flag_spec>:
90         Set variable, including ${wl}.  Fixes hardcoding in programs
91         created by XL Fortran on GNU/Linux.
92         * NEWS, THANKS: Update.
93         Report by Paul H. Hargrove.
95         Rebuild menus in the manual.
96         * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
97         Thanks to Ian Lance Taylor for the suggestion.
99 2010-11-07  Ollie Wild  <aaw@google.com>
101         Modify --with-pic to support per-package configurations.
102         * libltdl/m4/libtool.m4:  Modify --with-pic to accept a list of
103         package names.  Modelled off --enable-shared.
104         * tests/with-pic.at: New test.
105         * Makefile.am (TESTSUITE_AT): Add tests/with-pic.at.
106         * doc/libtool.texi (LT_INIT): Enhance documentation of
107         --with-pic configure flag.
108         * NEWS (New features): Mention that --with-pic now accepts a
109         comma-separated list of package names.
111 2010-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
113         Fix cwrapper test failure with --disable-static.
114         * tests/cwrapper.at (cwrapper and installed shared libraries):
115         Compile program source without libtool, so we can be sure a
116         non-PIC object will be created.
118 2010-11-01  Peter Rosin  <peda@lysator.liu.se>
120         docs: Windows DLLs and headers.
121         * doc/libtool.texi (Platform quirks): Add new subsection
122         'Windows DLLs'.
124         * doc/libtool.texi (Platform quirks): Fix typo.
126 2010-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
128         docs: mention shell requirement for libtool script.
129         * doc/libtool.texi (Invoking libtool): Document that the shell
130         used to invoke libtool needs to be the same used to configure
131         it.
132         * THANKS: Update.
133         Report by Markus Duft.
135 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
137         libtool: remove redundant unsubstituted shell var defaults.
138         * Makefile.am (libltdl/config/ltmain.sh): Boilerplate code from
139         libltdl/config/general.m4 sets some default shell variables
140         designed to be substituted by `$(configure_edit)'.  Actually,
141         `libtool' uses the language tag values for those variables, and
142         `ltmain.m4sh' is not passed through `$(configure_edit)', so they
143         are just noise.  Edit them out at bootstrap time.
145 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
147         maint: don't leak developer GREP, SED etc into distribution file.
148         * Makefile.am: Having rearranged the file, now apply the actual
149         changes to follow-up.
150         (edit): Split into two parts...
151         (bootstrap_edit): ...substitutions that should happen at bootstrap
152         time...
153         (configure_edit): ...and substitutions that should not happen until
154         configure time.
155         * Makefile.am (libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh)
156         (libtoolize.in, tests/package.m4): Use bootstrap_edit.
157         (libtoolize, tests/defs): Use configure_edit.
158         * HACKING (Release Procedure): Remove the note to workaround the
159         bug fixed by this changeset.
160         * NEWS (Bug fixes): Mention that this bug is now fixed.
161         Reported by Joerg Sonnenberger.
163         maint: rearrange Makefile.am in preparation for a follow-up patch.
164         * Makefile.am (Libtool scripts.): Move this section below the
165         `Bootstrap.' section...
166         (libtoolize.in): ...except this one which is generated at
167         bootstrap time, and was added into the `Bootstrap.' section.
168         (Libltdl.): Move this section below the `Libtool scripts.'
169         section.
171 2010-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
173         Fix linking from only convenience archives with gfortran on Darwin.
174         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Update
175         macro comment header.
176         [darwin, F77, FC] <compiler_needs_object>: Set to yes if
177         whole_archive_flag_spec is nonempty.  Fixes convenience.at test
178         suite failures with gfortran 4.2 on Darwin.
179         * THANKS: Update.
180         Report by Paul Laight.
182         Fix bindir check logic, and relax non-bindir case for AIX.
183         * tests/bindir.at (bindir install tests): Rewrite checks for
184         place of the installed shared library in two separate tests,
185         depending on whether -bindir is supposed to have an effect or
186         not.  In the positive case, make the test stricter so that we
187         reject libraries in $libdir.  In the negative case, do not
188         require a major version number in the $libdir file name, for AIX
189         without runtimelinking.  If tmpdir creation fails, skip the
190         test.  Use fewer bindir directory names for testing, to speed
191         up the test.  Also mention MSVC style DLL name in comment.
192         Report by Peter Rosin.
194         tests: remove unneeded 'bindir compile check' test.
195         * tests/bindir.at (bindir compile check): Remove.
197 2010-10-14  Peter Rosin  <peda@lysator.liu.se>
199         tests: fix $EXEEXT typo.
200         * tests/depdemo-relink.test (func_restore_files): Use $EXEEXT
201         instead of $EXEXT.
203 2010-10-12  Simon Josefsson  <simon@josefsson.org>
204             Matěj Týč <matej.tyc@gmail.com>
205             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
207         docs: improve description of -no-undefined.
208         * doc/libtool.texi (Link mode): Fix -no-undefined description.
209         (Inter-library dependencies): Use Windows not AIX as example
210         system.  Clarify need for symbol resolution at library creation
211         time.
213 2010-10-09  Paolo Bonzini  <bonzini@gnu.org>
215         Add missing sysroot resolution.
216         * libltdl/config/ltmain.m4sh (func_mode_link): Resolve sysroot
217         when fetching the install directory of dependent libraries.
218         Reported by Lionel Landwerlin <llandwerlin@gmail.com>,
219         patch by Khem Raj <raj.khem@gmail.com>.
220         * THANKS: Reorder entries, add Khem and Lionel.
222 2010-10-07  Roumen Petrov  <bugtrack@roumenpetrov.info>
224         Add test case for 69e77671 (cwrapper PATH manipulation order)
225         * tests/cwrapper.at: Add new test 'cwrapper and installed shared
226         libraries.'
228 2010-10-04  Peter Rosin  <peda@lysator.liu.se>
230         cwrapper: split long lines when dumping the wrapper script.
231         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): If
232         the wrapper script contains long lines, split them for
233         readability and to conform with C standards.
234         * tests/cwrapper.at (cwrapper string length): New test, making
235         sure we don't regress.
237         msvc: handle symbols from different files independently.
238         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
239         <dumpbin, lt_cv_sys_global_symbol_pipe>: Make all sections
240         viable for symbol extraction again when the symbols from a new
241         file starts.  Fixes tests/tagdemo-make.test for MSVC 10.
242         * tests/dumpbin-symbols.at: New test, making sure we don't
243         regress.
244         * Makefile.am (TESTSUITE_AT): Update.
246 2010-09-27  Peter Rosin  <peda@lysator.liu.se>
248         tests: check if sys_lib_search_path_spec works on MSVC.
249         * tests/search-path.at (sys_lib_search_path on w32): New test,
250         making sure v2.2.10-207-g09142ea doesn't regress.
252         Skip need_lib_prefix.at on systems without lib prefix on libraries.
253         * tests/need_lib_prefix.at [MSVC, OS/2]: Skip this test on
254         systems that do not have libraries prefixed with lib.
256         tests: clean up importing and exporting on w32.
257         Makes the touched tests pass for MSVC when DLLs are built.
258         * tests/demo/Makefile.am, tests/pdemo/Makefile.am: Define
259         BUILDING_LIBHELLO when building libhello.la.
260         * tests/demo/foo.h, tests/pdemo/foo.h (nothing) <MSVC>: Export
261         variable when building the libhello dll and import when using
262         libhello.  For GCC and non-w32, and when building a static
263         libhello, leave as an ordinary extern.
264         * tests/pdemo/foo.h [Cygwin]: Remove unneeded and "dead" export
265         and import logic (LIBFOO_DLL is always undefined).
266         * tests/pdemo/longer_file_name_foo.c,
267         tests/pdemo/longer_file_name_foo2.c (_LIBFOO_COMPILATION_): Not
268         useful before, even less so now.  Removed.
269         * tests/depdemo/l1/Makefile.am: Define BUILDING_LIBL1 when
270         building libl1.la.
271         * tests/depdemo/l2/Makefile.am: Define BUILDING_LIBL2 when
272         building libl2.la.
273         * tests/depdemo/l3/Makefile.am: Define BUILDING_LIBL3 when
274         building libl3.la.
275         * tests/depdemo/l4/Makefile.am: Define BUILDING_LIBL4 when
276         building libl4.la.
277         * tests/depdemo/l1/l1.h, tests/depdemo/l2/l2.h,
278         tests/depdemo/l3/l3.h, tests/depdemo/l4/l4.h <MSVC>: Export
279         variables when building the associated library dll and import
280         when using the library.  For GCC and non-w32, and when building
281         static libraries, leave as an ordinary extern.
283 2010-09-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
285         docs: do not refer to Libtool version with dlopen functionality.
286         * doc/libtool.texi (Dlopened modules): Remove broken reference
287         to what should have been Libtool 0.9g.
288         Report by Roumen Petrov.
290 2010-09-23  Peter Rosin  <peda@lysator.liu.se>
292         msvc: don't try to export import descriptors.
293         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]
294         [pw32, cegcc] <cl*, exclude_expsyms>: Don't export symbols in
295         import libraries related to describing what dll(s) the import
296         library is importing. Fixes problem in tests/demo-make.test
297         and some other tests.
299 2010-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
301         Fix regression in command-line length computation.
302         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Use `env echo' rather
303         than possibly-undefined func_fallback_echo, to ensure we fork
304         and exec for this test.
305         * NEWS: Update.
306         Regression introduced in v2.2.6-39-g9c3d4d8.
308 2010-09-22  Gary V. Vaughan  <gary@gnu.org>
310         Post-release administrivia.
311         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
312         numbers to 2.4.1a.
313         * NEWS: Add header line for next release.
315         Release 2.4.
316         * libltdl/Makefile.inc (LTDL_VERSION_INFO): We've added the
317         static libprefix interface, so new version-info is C+1:0:R+1.
318         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
319         numbers.
320         * NEWS: Update version number.
322         manual: web-manual index.html clashes with @node Index.
323         * doc/libtool.texi (Index): Renamed to `Combined Index'.
325         tests: ISO C++ forbids declaration of 'v1' with no type.
326         * tests/lt_dlexit.at (lt_dlexit unloading libs): Added an
327         explicit int type to declaration of 'v1' to prevent compilation
328         failure with C++.
330 2010-09-22  Peter Rosin  <peda@lysator.liu.se>
332         tests: reloadable objects do not work on MSVC, SKIP test.
333         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
334         [cygwin, mingw, pw32, cegcc] <cl*, reload_cmds>: Indicate that
335         reloadable objects do not work.
336         * tests/duplicate_conv.at: Skip last test if reloadable
337         objects do not work.
338         * doc/libtool.texi (libtool script contents) <reload_cmds>:
339         Document how to indicate that reloadable objects do not work.
341 2010-09-21  Peter Rosin  <peda@lysator.liu.se>
343         msvc: eliminate spaces in the library search path.
344         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
345         <cl*, sys_lib_search_path_spec>: The LIB path variable telling
346         where MSVC looks for libraries is likely to contain directory
347         names with spaces.  Convert those directory names to the short
348         8.3 DOS form (i.e. without spaces) when storing them in
349         sys_lib_search_path_spec, as that is a space separated variable.
351 2010-09-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
353         Revert to per-language libpath computation on AIX.
354         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Accept
355         tagname argument.  Use global cache variable lt_cv_aix_libpath
356         to override per-language tag variables for the libpath value.
357         Fix the sed script to remove trailing space.
358         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Pass tag argument to
359         _LT_SYS_MODULE_PATH_AIX.
360         Tracked down and reported by Rainer Tammer.
362 2010-09-21  Gary V. Vaughan  <gary@gnu.org>
364         maint: edit-readme-alpha shouldn't try to re-edit during dist.
365         * libltdl/config/edit-readme-alpha: If README is non-writable
366         assume that it is being run from distcheck, and skip the edit
367         with a warning (to help diagnose cases where the heuristic is
368         not correct).  However, if README has already been edited to
369         the alpha text, quietly skip without an error message.
371 2010-09-20  Eric Blake  <eblake@redhat.com>
373         maint: drop autobuild requirement
374         * HACKING: Update.
376         build: ship autobuild.m4, to reduce bootstrap requirement
377         * libltdl/m4/.gitignore: Drop autobuild.m4.
378         * libltdl/m4/autobuild.m4: New file, copied from autobuild.
379         * configure.ac (AB_INIT): Unconditionally call it.
381 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
382             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
384         libltdl: Make sure preloaded symbols are declared extern "C".
385         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Move the
386         declaration of lt__PROGRAM__LTX_preloaded_symbols to global
387         scope and make sure it has "C" linkage.  Makes exceptions.at
388         succeed on MSVC.
390 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
392         tests: __declspec (dll{ex,im}port) in tests/exceptions.at
393         * tests/exceptions.at (common.h, module.h, lib.h) [w32]: Use
394         __declspec (dllimport) and __declspec (dllexport) instead of
395         the less portable __attribute__ ((dllimport)) and
396         __attribute__ ((dllexport)).  Makes the test compile on MSVC.
398 2010-09-19  Peter Rosin  <peda@lysator.liu.se>
400         tests: Import items from liba1 for MSVC.
401         * tests/lt_dlexit.at (b1.c) [MSVC]: Import function f1 and
402         variable v1 from liba1 when using them from modb1.  Makes the
403         test pass on MSVC.
405 2010-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
407         tests: avoid distcheck failure with --disable-ltdl-install.
408         * tests/ltdl-libdir.at (libdir of installed modules): Skip if
409         $LIBLTDL does not exist.
411 2010-09-18  Gary V. Vaughan  <gary@gnu.org>
413         maint: use sed instead of maintaining 2 README files.
414         * README.alpha: Deleted.  It was mostly identical to README.
415         * libltdl/config/edit-readme-alpha: New script to edit the
416         contents of README in the dist tree prior to tarring up.
417         * Makefile.am (dist-hook): Run it before rolling alpha release
418         tarball.
420         maint: improve README's `Obtaining the Latest Sources'.
421         * README (Obtaining the Latest Sources): Add instructions for
422         obtaining stable, alpha and nightly snapshot tarballs.
423         * README.alpha (Obtaining the Latest Sources): Adjust to match.
425         maint: reformat README `The Test Suites' for consistency.
426         * README (The Test Suites): Reformatted for consistency.
427         * README.alpha (The Test Suites): Adjust to match.
429         maint: improve `Reporting Bugs' in README and README.alpha.
430         * README (Reporting Bugs): Rewritten to a more complete and
431         concise guide to providing a good bug report.
432         * README.alpha (Reporting Bugs): Adjust to match.
434         maint: consolidate Introductions of README and README.alpha.
435         * README (Introduction): Rewritten to a more logical order for
436         first time users, incorporating some additional text that was
437         previously only in README.alpha.
438         * README.alpha (Introduction): Adjust to match.
440         maint: copy the Version Numbering section into README.alpha.
441         * README.alpha (Version Numbering): No less useful for users
442         of alpha releases.  Copied from README.
444 2010-09-17  Peter Rosin  <peda@lysator.liu.se>
446         tests: actually detect missing 'test' in 'if "$foo" = ...'.
447         * tests/sh.test: Remove extra backslash in regex.
449         Copy over DLL_EXPORT handling from C to C++ for non-GCC on w32.
450         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [mingw, cygwin, os2]
451         [pw32, cegcc]: Copy over the DLL_EXPORT handling from C to C++.
453 2010-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
455         LTO: consistently accept -fwhopr* and -flto* for GCC.
456         * libltdl/config/ltmain.m4sh (func_mode_link): Accept -fwhopr*.
457         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Also match
458         -flto*.
460 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
462         Fix order of PATH manipulation in cwrapper and shwrapper
463         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main): Call
464         lt_update_exe_path before lt_update_lib_path, to ensure that the
465         temporary rpath values (which include the OBJDIRs of uninstalled
466         libtool libraries) precede installation and final -rpath directories.
467         (func_emit_wrapper): Prepend $dllsearchpath to PATH before prepending
468         $temp_rpath to $shlibpath_var; similar rationale as above.
469         Reported by Jon Turney <jon.turney@dronecode.org.uk>
471 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
473         Document libtool variable to_host_file_cmd.
474         * doc/libtool.texi (libtool script contents:to_host_file_cmd):
475         Document variable.
476         (libtool script contents:to_tool_file_cmd): Prefer `build platform'
477         to `build system'; Ditto `host platform'.
479 2010-09-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
481         Fix sh.test failure introduced in 72064249
482         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid poor
483         syntax.
485 2010-09-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
487         tests: avoid localization failure due to unstable compiler messages.
488         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT):
489         Attempt to normalize temporary file names in error messages.
490         Fixes 'localized compiler messages' test failure on Darwin when
491         creating fat (multi-ABI) libraries.
493 2010-09-13  Peter Rosin  <peda@lysator.liu.se>
495         Prefer $NM @file when the toolchain isn't native to $build.
496         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid calculating
497         the command line length and take the @file branch *if* the file
498         names needs to be converted for the toolchain and the @file
499         branch works.  Fixes problems in stresstest.at when doing a cross
500         from Cygwin to MinGW using MinGW native tools (a.k.a. a "faked"
501         cross), and for the specific case of MSVC on Cygwin it makes the
502         test pass.
504 2010-09-15  Gary V. Vaughan  <gary@gnu.org>
506         maint: improve README instructions for fetching latest version.
507         * README, README-alpha (Obtaining the Latest Sources): New
508         section, describing use of savannah repositories and bootstrap.
509         * README.alpha (Reporting Bugs): Remove git instructions in
510         favour of a reference to the new `Obtaining the Latest Sources'
511         section.
513 2010-09-14  Eric Blake  <eblake@redhat.com>
515         maint: ship .xz, not .lzma
516         * configure.ac (AM_INIT_AUTOMAKE): Prefer better file format.
517         * Makefile.maint (git-release, git-dist, prev-tarball)
518         (new-tarball, diffs): Use correct extension.
519         * HACKING: Update instructions.
520         * .gitignore: Ignore .xz files.
522 2010-09-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
524         doc: avoid long lines in input and output, indexing fixes.
525         * doc/libtool.texi (Linking libraries)
526         (Module loaders for libltdl): Manually line-wrap examples, to
527         avoid long lines.
528         (Libltdl interface, User defined module data)
529         (Module loaders for libltdl): Wrap long @deftypefun input lines
530         using trailing '@'.  Use @deftypefun rather than @deftp where
531         appropriate, and add spaces in @deftypefun lines to fix the
532         index entries generated from these lines.
533         (Cheap tricks): Use @smallexample rather than @example, to avoid
534         long lines.
536         docs: @file and @option markup fixes.
537         * doc/libtool.texi (Creating object files, Linking libraries)
538         (Linking executables, Link mode, Finish mode, Autoconf macros)
539         (Using Automake, Inter-library dependencies, Dlpreopening)
540         (Linking with dlopened modules, Finding the dlname)
541         (Libltdl interface, Test descriptions, Multiple dependencies):
542         Add @option where needed, replace @samp with @file as
543         appropriate.
545 2010-09-12  Peter Rosin  <peda@lysator.liu.se>
547         * .gitignore: Ignore *.obj files for MSVC (and w32 in general).
549         Adjust to moved auxiliary files and add compile.
550         * HACKING (Maintenance Notes): Adjust to moved files.  Add the
551         compile script.
552         * Makefile.maint (fetch): Also fetch the compile script.
554 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
556         tests: avoid empty AT_DATA contents, for zsh.
557         * tests/libtoolize.at (libtoolize macro serial update)
558         (libtoolize config files serial update, LIBTOOLIZE_OPTIONS):
559         Do not create empty files with AT_DATA, the latter is documented
560         to require a final newline.  Fixes testsuite failures with zsh
561         4.3.10.
563 2010-09-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
565         When assigning $linklib value, honor [-all]-static[-libtool-libs]
567         * libltdl/config/ltmain.m4sh (func_mode_link): When prefer_static_libs
568         and static library exists, ensure old_library name is used as $linklib.
569         Fixes failure on mingw when both static and shared libraries are
570         present.
572 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
574         tests: work around zsh use of $options variable.
575         * tests/getopt-m4sh.at: Rename $options to $opts, the former is
576         special for zsh 4.3.10.
578         Fix AC_NO_EXECUTABLES test failure on IRIX 6.5.
579         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix]: Cache result
580         of link check for -Wl,-exported_symbol.
581         * tests/no-executables.at (AC_NO_EXECUTABLES): Set
582         lt_cv_irix_exported_symbol, to avoid link check.
584 2010-09-12  Jürgen Reuter  <juergen.reuter@physik.uni-freiburg.de>  (tiny change)
585             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
587         Initial support for the NAG Fortran compiler on GNU/Linux.
588         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <nagfor>:
589         New set of entries, for NAG Fortran 5.1 and 5.2.
590         * NEWS: Update.
592 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
594         Fix getopt.m4sh to require Autoconf 2.62 or newer.
595         * libltdl/config/getopt.m4sh (m4_version_prereq): Require 2.62,
596         not 2.61.
598 2010-09-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
600         Correct typo: $sharedlib_from_linklib_cmd missing '_cmd'
602         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Fix obvious
603         typo, $sharedlib_from_linklib_cmd missing '_cmd'.
605 2010-09-10  Peter Rosin  <peda@lysator.liu.se>
607         Convert file name to toolchain format when invoking $NM.
608         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
609         (func_win32_libid, func_cygming_gnu_implib_p)
610         (func_cygming_ms_implib_p): When using the name lister to find
611         symbols in files, convert the file names to a format appropriate
612         for the tool. Fixes testsuite issues in mdemo-static-make.test
613         and mdemo-make.test when doing a cross from Cygwin/Wine to MinGW
614         using MinGW native tools (a.k.a. a "faked" cross).
616 2010-09-09  Peter Rosin  <peda@lysator.liu.se>
618         Fix dependency tracking for MSYS/MinGW.
619         * libltdl/config/ltmain.m4sh (func_to_tool_file): Add lazy
620         argument which allows the user to specify conversions that are
621         not desired.
622         (func_mode_compile): Don't convert source files on MSYS, as
623         MSYS does it for us. This fixes a regression introduced by
624         "Use func_to_tool_file instead of fix_srcfile_path".
625         Reported by Charles Wilson.
627 2010-09-08  Peter Rosin  <peda@lysator.liu.se>
629         Mention adjustment of naming of MSVC import libraries in NEWS.
630         * NEWS: Mention the change in import library naming on MSVC.
632 2010-09-07  Peter Rosin  <peda@lysator.liu.se>
634         Adjust naming of MSVC import libraries.
635         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
636         [pw32, cegcc] <cl*, library_names_spec>: Adjust naming of the
637         import library from foo-<major-version>.lib to foo.dll.lib, to
638         avoid clashes with the static library for unversioned libraries.
639         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin, pw32]
640         [cegcc] <cl*, archive_expsym_cmds>: Explicitely name the import
641         library to match the above.
643         Fixup texi typo in previous.
644         * doc/libtool.texi (libtool script content) <postlink_cmds>:
645         Add missing 'code' command.
647         Convert POSIX file names to toolchain format for MSVC
648         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
649         [cygwin, mingw, pw32, cegcc] <cl*, postlink_cmds>: Make
650         sure the -outputresource: file name for the manifest tool is
651         in w32 format.
652         <cl*, archive_expsym_cmds>: Likewise for the MSVC command file
653         containing the exports and the output file name.
654         * libltdl/config/ltmain.m4sh (func_mode_link): Precalculate the
655         toolchain format of the output_objdir file name and store it in
656         the tool_output_objdir variable. Also replace any occurrence of
657         @TOOL_OUTPUT@ in postlink_cmds with the toolchain version of the
658         @OUTPUT@ content.
659         * doc/libtool.texi (libtool script content): Update description
660         of postlink_cmds to mention @TOOL_OUTPUT@.
662 2010-09-06  Peter Rosin  <peda@lysator.liu.se>
664         Use func_to_tool_file instead of fix_srcfile_path.
665         * libltdl/config/ltmain.m4sh (func_mode_compile): Replace the
666         fix_srcfile_path hook with a call to func_to_tool_file.
667         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin,mingw,pw32]
668         [cegcc]: Drop fix_srcfile_path.
669         * doc/libtool.texi (libtool script contents): Likewise.
670         * NEWS: Mention that fix_srcfile_path has been replaced.
672         Convert file names to toolchain format in $NM and $AR @files.
673         * libltdl/config/ltmain.m4sh (func_mode_link): When listing
674         symbols and when creating archives using command files (or
675         response files), make sure that both the name of the command
676         file and the content are made up of file names in a format
677         appropriate for the tool. Fixes stresstest.at on MSYS when
678         run with low command line length.
680         Convert file names to toolchain format when linking.
681         * libltdl/config/ltmain.m4sh (func_mode_link): When exporting
682         symbols and when linking using command files (or response
683         files), make sure that both the name of the command file and
684         the content are made up of file names in a format appropriate
685         for the tool. Fixes problems in stresstest.at on MSYS when run
686         with low command line length.
688         Add file name conversion from $build to toolchain.
689         * configure.ac: Ensure to_tool_file_cmd is available to Makefile.
690         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): Add
691         cache variable lt_cv_to_tool_file_cmd that describes how to
692         convert file names from $build to toolchain format.
693         * libltdl/config/ltmain.m4sh (func_to_tool_file): New function
694         that utilizes the above.
695         * Makefile.am: Ensure to_tool_file_cmd is included in
696         TEST_ENVIRONMENT so that it is passed to (old testsuite) tests.
697         * testsuite.at: Ensure to_tool_file_cmd is passed as a variable
698         setting on the configure line for (new testsuite) tests.
699         * doc/libtool.texi (libtool script content): Update with
700         to_tool_file_cmd description.
701         (Cygwin to MinGW Cross): Update to mention lt_cv_to_tool_file_cmd.
703 2010-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
705         tests: avoid spurious test failure due to library mode on HP-UX.
706         * tests/help.at (debug tracing): Use $lt_INSTALL not cp for
707         install mode, the latter will not overwrite an existing library
708         with mode 555.
710 2010-09-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
712         Path conversion documentation
713         * doc/libtool.texi (Platform quirks): Add new subsections
714         'Cross compiling' and 'File name conversion'.
716 2010-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
718         tests: avoid spurious pic_flag test failure on HP-UX 10.20.
719         * tests/pic_flag.at (override pic_flag at configure time):
720         Match HP-UX 10.20 cc warning about unknown options, to skip
721         the test.
723         tests: fix localization test for GCC on HP-UX 11.00.
724         * tests/localization.at (localized compiler messages): Be sure
725         to switch the locale only for the actual compiler commands, so
726         we don't pick up warnings from helper tools such as diff which
727         may not have the locale installed.
729         Avoid leaking make flags into testsuite results.
730         * tests/defs.m4sh: Unset MFLAGS, MAKEFLAGS, MAKELEVEL, __MKLVL__
731         and MAKE_JOBS_FIFO.
732         * tests/testsuite.at: Likewise.
733         Fixes warnings in test logs when the user uses 'make -jN check'
734         and inner $MAKE invocations can't connect to the job server.
735         Fixes spurious failures of configure-iface.at and of
736         demo-noinst-link tests with BSD and Tru64 make if the user uses
737         'make -k', as the exit status of the latter is not reliable.
739 2010-09-01  Gary V. Vaughan  <gary@gnu.org>
741         Remove announce-gen.m4sh and mailnotify.m4sh.
742         * libltdl/config/announce-gen.m4sh: Removed.  This script has
743         no apparent connection to libtool functionality, and mostly
744         duplicates the better maintained gnulib announce-gen script.
745         * libltdl/config/mailnotify.sh: Removed. This script was used
746         by only clcommit.m4sh and announce-gen.m4sh, both of which are
747         now removed too.
748         * Makefile.maint (announce-gen, libltdl/config/mailnotify):
749         Targets removed.
750         * bootstrap: Remove the mailnotify regeneration warning.
751         * HACKING (Release Procedure): Remove references to
752         announce-gen.
753         (Alpha release note template, Full release note template):
754         Reinstated from before announce-gen was introduced.
756         Remove clcommit.m4sh.
757         * clcommit.m4sh: Removed. This script was written to help keep
758         ChangeLog and commit messages in sync when committing to CVS,
759         and is an anachronism now that Libtool uses git.
760         * Makefile.maint (commit): Target removed.
761         * bootstrap: Don't generate commit.
762         * HACKING (Release Procedure): Adjusted.
764 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
766         archive-in-archive.at passes with Microsoft lib.
767         * tests/archive-in-archive.at: Tighten test to check that the desired
768         object files are indeed part of the archive. Microsoft lib still
769         passes, so remove the expected failure for that case.
771         Dump archiver output to the log when testing @file support.
772         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout to config.log
773         when testing for @file support.
774         Suggested by Ralf Wildenhues.
776         Silence archiver output when testing @file support.
777         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout and stderr
778         to the bit bucket when testing for @file support.
780 2010-08-31  Gary V. Vaughan  <gary@gnu.org>
782         Remove double `Generated from foo.m4sh' lines.
783         We now require a modern Autoconf to bootstrap libtool, which
784         will add the `Generated by ...' boiler-plate automatically,
785         so we can remove the hand-rolled @configure_input@
786         substitutions we had been doing:
787         * clcommit.m4sh, libtoolize.m4sh, tests/defs.sh,
788         libltdl/config/announce-gen.m4sh, libltdl/config/ltmain.m4sh,
789         libltdl/config/mailnotify.m4sh: Remove @configure_input@.
790         * Makefile.am (edit): Remove configure_input substitution.
791         (libtoolize, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
792         (tests/defs): Don't set `$input' shell variable.
793         * Makefile.maint (announce_gen, libltdl/config/mailnotify)
794         (commit): Likewise.
796 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
798         Extract the archive name from the .la file and use $AR (not ar).
799         * Makefile.am: Pass AR through to the testsuite.
800         * tests/archive-in-archive.at: Bump copyright year. Extract archive
801         name from the .la file instead of hardcoding the name, and allow
802         different archivers. Also clarify that the tested functionality is
803         currently broken.
805 2010-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
807         tests: skip -Wall -Werror with Tru64 cc in cwrapper test.
808         * tests/cwrapper.at (cwrapper for uninstalled executables):
809         Use a link test rather than a compile test to flesh out unknown
810         compiler flags starting with -W; Tru64/OSF1 cc will happily
811         accept `-Wall -Werror' as indication to pass flags on to
812         subprocesses.
814         tests: avoid getopt-m4sh failures when autom4te is not available.
815         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP):
816         Check $M4SH --version, skip on failure.
818         tests: mark 'syntax of .la files' as XFAIL, expose failure.
819         * tests/lalib-syntax.at (syntax of .la files): Assert that the
820         string returned by lt_dlerror after a failure is non-NULL, so
821         the failure shows up on systems other than Solaris.  Mark test
822         as expected to fail.
823         Suggested by Bob Friesenhahn.
825 2010-08-30  Eric Blake  <eblake@redhat.com>
827         Simplify recent configure quoting portability workaround.
828         * configure.ac: Simplify setting of timestamp_string.
830 2010-08-30  Charles Wilson  <libtool@cwilson.fastmail.fm>
832         Update path conversion warning messages
833         * libltdl/config/ltmain.m4sh (func_convert_file_check): Update
834         comments and warning message.
835         (func_convert_path_check): Update warning message.
837 2010-08-29  Peter Rosin  <peda@lysator.liu.se>
839         Fix typo when renaming path conversion functions.
840         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
841         variable setting on the configure line for (new testsuite) tests.
843 2010-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
845         Support GCC LTO on GNU/Linux.
846         * libltdl/config/ltmain.m4sh (func_mode_link): Allow through
847         flags matching -O*, -flto*, -fwhopr, -fuse-linker-plugin.
848         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Drop symbols
849         starting with __gnu_lto.
850         (_LT_LINKER_SHLIBS) [linux] <archive_cmds, archive_expsyms_cmds>:
851         Add $pic_flag for GCC.
852         (_LT_LANG_CXX_CONFIG) [linux] <archive_cmds, archive_expsyms_cmds>:
853         Likewise.
854         (_LT_SYS_HIDDEN_LIBDEPS): Ignore files matching *.lto.o.
855         * NEWS: Update.
857         Disable GCC LTO for verbose library extraction.
858         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Temporarily
859         append -fno-lto or -fno-whopr to CFLAGS if CC or CFLAGS (which
860         are substituted with the per-language variables here) contain
861         -flto or match -fwhopr*, respectively.
863         Save and restore CFLAGS properly inside libtool.m4 macros.
864         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Use different
865         temporary variables for saved and restored values of $LIBS,
866         $CFLAGS, to avoid overlap with the *_CONFIG macros.
867         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
868         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Also save and restore
869         $CFLAGS, and override it with per-language flags, so that in
870         case output_verbose_link_cmd uses $CFLAGS, the right flags are
871         used.
873         Work around yet another shell quoting portability issue.
874         * configure.ac: Avoid nonportable quoted alternate variable
875         value in unquoted here document, so Solaris 10 sh and Tru64
876         ksh do not print spurious extra quotes.
878         Silence order-only configure test for AIX make.
879         * configure.ac: Also drop standard output, for AIX 5.1 make.
881 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
883         Minor sysroot fixups.
884         * libltdl/m4/libtool.m4 (_LT_WITH_SYSROOT): Fix typo.
885         * tests/sysroot.at: Search also for crt0.o to accommodate cygwin.
887 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
889         [cygwin|mingw|cross-compile]: Path conversion support.
890         * configure.ac: Ensure to_host_file_cmd is available to Makefile.
891         * TODO: Document QoI issue with file name conversion functions.
892         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): New function
893         sets libtool variable $to_host_file_cmd, and employs cache.
894         (_LT_SETUP): Require it.
895         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
896         variable setting on the configure line for (new testsuite) tests.
897         * Makefile.am (TESTS_ENVIRONMENT): Ensure to_host_file_cmd is
898         included so that it is passed to (old testsuite) tests.
899         * libltdl/config/general.m4sh: Define $lt_sed_naive_backslashify here.
900         * libltdl/config/ltmain.m4sh ($to_host_file_cmd, $to_host_path_cmd):
901         New variables.
902         (func_cygpath): New function.
903         (func_init_to_host_path_cmd): New function.
904         (func_to_host_path): Renamed to...
905         (func_to_host_file): Refactored to... (now uses $to_host_file_cmd).
906         (func_convert_core_file_wine_to_w32): Here. New function.
907         (func_convert_core_msys_to_w32): Here. New function.
908         (func_convert_file_check): Here. New function.
909         (func_convert_file_noop): Here. New function.
910         (func_convert_file_msys_to_w32): Here. New function.
911         (func_convert_file_cygwin_to_w32): Here. New function.
912         (func_convert_file_nix_to_w32): Here. New function.
913         (func_convert_file_msys_to_cygwin): New function.
914         (func_convert_file_nix_to_cygwin): New function.
915         (func_to_host_pathlist): Renamed to...
916         (func_to_host_path): Refactored to... (now uses $to_host_path_cmd
917         and func_init_to_host_path_cmd).
918         (func_convert_path_check): Here. New function.
919         (func_convert_path_front_back_pathsep): Here. New function.
920         (func_convert_core_path_wine_to_w32): Here. New function.
921         (func_convert_path_noop): Here. New function.
922         (func_convert_path_msys_to_w32): Here. New function.
923         (func_convert_path_cygwin_to_w32): Here. New function.
924         (func_convert_path_nix_to_w32): Here. New function.
925         (func_convert_path_msys_to_cygwin): New function.
926         (func_convert_path_nix_to_cygwin): New function.
928 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
930         Fix symlist variable path to use _WIN32 instead of __WINDOWS__.
931         * libltdl/config/ltmain.m4sh, libltdl/libltdl/lt_system.h,
932         libltdl/m4/libtool.m4, tests/demo/foo.h, tests/pdemo/foo.h:
933         Change __WINDOWS__ to _WIN32.
934         Report by Charles Wilson.
936         Add $pic_flag to archive_cmds and archive_expsym_cmds.
937         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
938         <archive_cmds, archive_expsym_cmds>
939         [GNU ld, netbsd]: Add $pic_flag if ELF.
940         [GNU ld, solaris]: Likewise.
941         [GNU ld, default case]: Likewise.
942         [!GNU ld, freebsd, dragonfly]: Add $pic_flag.
943         [!GNU ld, GCC, hpux9]: Add $pic_flag.
944         [!GNU ld, GCC, hpux10]: Replace -fPIC with $pic_flag
945         [!GNU ld, GCC, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
946         [!GNU ld, GCC, irix5, irix6, nonstopux]: Add $pic_flag.
947         [!GNU ld, GCC, osf4, osf5]: Likewise.
948         [!GNU ld, GCC, solaris]: Likewise.
949         (_LT_LANG_CXX_CONFIG) <archive_cmds, archive_expsym_cmds>
950         [hpux9]: Add $pic_flag if $GXX.
951         [hpux10, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
952         [irix5, irix6]: Add $pic_flag if $GXX.
953         [osf4, osf5]: Likewise.
954         [solaris]: Add $pic_flag if $GXX and not GCC 2.7.
956         Uniform const'ness of symlist variable lt_preloaded_symbols.
957         On some systems, lt_preloaded_symbols may not be declared
958         const due to relocation issues.  C99 requires qualification to
959         match for compatible declarations, so ensure we declare
960         const'ness in the same way everywhere; link-time optimization
961         may otherwise rightfully complain about inconsistencies.
962         Since ltdl.h may not depend upon config.h, rely on system
963         defines for choosing const'ness.
964         * NEWS: Update.
965         * doc/libtool.texi (Dlpreopening): Document this issue.
966         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
967         [__WINDOWS__, __CYGWIN__, _WIN32_WCE]: Define LT_DLSYM_CONST
968         according to system defines.  Remove old shell cruft.  Use
969         LT_DLSYM_CONST for lt_${my_prefix}_LTX_preloaded_symbols.
970         * libltdl/libltdl/lt_system.h (LT_DLSYM_CONST): Likewise,
971         define LT_DLSYM_CONST according to system defines.
972         * tests/demo/foo.h (LT_DLSYM_CONST): Likewise.
973         * tests/pdemo/foo.h (LT_DLSYM_CONST): Likewise.
974         * tests/demo/dlmain.c (lt_dlsymlist): Use LT_DLSYM_CONST.
975         * tests/pdemo/longer_file_name_dlmain.c (lt_dlsymlist):
976         Likewise.
977         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise
978         for configure test code.
979         * libltdl/ltdl.c (preloaded_symbols): Use LT_DLSYM_CONST.
980         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Likewise.
982 2010-08-28  Dave Korn  <dave.korn.cygwin@googlemail.com>
984         Ensure cwrapper magic string is not optimized away.
985         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
986         Declare MAGIC_EXE as volatile.
987         Report by Charles Wilson.
989 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
991         Fix quoting in non-XSI func_xform, for IRIX sh.
992         * libltdl/config/ltmain.m4sh (func_xform): Remove spurious extra
993         M4 quotes.
995         Fix response file test for unreliable exit status of IRIX ar.
996         * libltdl/m4/libtool.m4 (_LT_PROG_AR): IRIX ar will not fail
997         over a command-line argument specifying a nonexistent file (such
998         as `@FILE'), so ensure failure with a reponse file containing
999         a nonexistent file.  Also, use lt_* variable prefix for
1000         temporary variables.
1002         Fix AC_LANG_PROGRAM warnings from git Autoconf.
1003         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Fix
1004         underquoted AC_LANG_PROGRAM call.
1005         (LT_PROG_AR): Use AC_LANG_PROGRAM.
1006         (_LT_LINKER_SHLIBS) [irix, GCC]: Use the right source for the
1007         given language.
1008         * NEWS: Update.
1010 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1012         fix AIX testsuite regression
1013         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): Partly
1014         revert v2.2.10-83-gc45a288: Do not absolutize path here, only do
1015         sysroot replacement.
1016         (func_mode_link): Adjust.
1018 2010-08-22  Charles Wilson  <libtool@cwilson.fastmail.fm>
1020         fix --mode=finish
1021         * libltdl/config/ltmain.m4sh (func_mode_finish): Invert then/else
1022         blocks of the "if $opt_dry_run" conditional.
1024 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
1026         improve code for sysroot --mode=finish
1027         * libltdl/config/ltmain.m4sh (func_mode_finish): Change sysroot_regex
1028         and sysroot_cmd delimiter from pipe to slash.  Wrap the entire for
1029         loop with "if $opt_dry_run...fi" and print an explanatory message
1030         for the --dry-run case.
1032 2010-08-12  Paolo Bonzini  <bonzini@gnu.org>
1034         add libtool --mode=finish mode for sysroot
1035         * doc/libtool.texi (Finish mode): Document behavior when *.la files
1036         are passed.
1037         * libltdl/config/ltmain.m4sh (func_mode_finish): Eliminate sysroot
1038         or `=' signs representing it from files in $libs.
1039         * tests/sysroot.at (SYSROOT_TESTS): Test for presence of sysroot
1040         references before running libtool --mode=finish, and for absence
1041         afterwards.
1043         reorganize parsing of --mode=finish arguments
1044         * libltdl/config/ltmain.m4sh (func_mode_finish): Split arguments for
1045         directories and *.la files.
1047         fix sysroot handling for deplibs of preopened libtool libs
1048         * libltdl/config/ltmain.m4sh: Pass $dependency_libs of preopened libtool
1049         through func_resolve_sysroot.
1051         fix sysroot tests to pass on Fedora 13
1052         * tests/sysroot.at: Link $prefix/include into the sysroot as well, as
1053         required by newer GCC.
1055 2010-07-29  Paolo Bonzini  <bonzini@gnu.org>
1057         initial version of the NEWS entry
1058         * NEWS: Document sysroot support.
1060         add sysroot test
1061         * Makefile.am (TESTSUITE_AT): Add tests/sysroot.at.
1062         * tests/sysroot.at: New.
1064         emit sysrooted paths when installing .la files
1065         * libltdl/config/ltmain.m4sh (func_replace_sysroot): New.
1066         (func_mode_link): Prepend paths in $libdir with the sysroot.  Further,
1067         replace the sysroot with = (using func_replace_sysroot) whenever
1068         such a path is written in a .la file.
1070         process postdeps to include sysrooted paths
1071         * libltdl/m4/libtool.m4 (_LT_FUNC_STRIPNAME_CNF): New (from Charles Wilson).
1072         (_LT_SYS_HIDDEN_LIBDEPS): Require it.  Use func_stripname_cnf to convert
1073         sysroot (-L= and -R=) usage in postdeps.  Adjust the code because -L, -R
1074         and -l flags will now always be separated from the rest of the argument.
1076         handle sysrooted paths when reading dependencies to la files
1077         * libltdl/config/ltmain.m4sh (func_mode_execute, func_mode_install,
1078         func_mode_link): Whenever a .la file occurs in another .la file,
1079         expand the sysroot path in it.
1081 2010-07-28  Paolo Bonzini  <bonzini@gnu.org>
1083         teach libtool -L= and -R=
1084         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): New.
1085         (func_mode_link): Always pass result of stripping -L and -R to
1086         func_resolve_sysroot before using it.  Remove absolute path expansion
1087         when func_resolve_sysroot subsumes it.  Expand sysroot in -rpath.
1088         When processing dependent libraries also resolve sysroot paths there.
1090         add --with-sysroot
1091         * libltdl/m4/libtool.m4 (_LT_HOST_NONCANONICAL, _LT_WITH_SYSROOT): New.
1092         (LT_SETUP): Require _LT_WITH_SYSROOT.
1094         handle sysroot flags
1095         * libltdl/config/ltmain.m4sh (func_mode_link): Recognize --sysroot
1096         option.
1098 2010-08-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1100         * NEWS: Only bootstrapping needs new Automake and Autoconf.
1102         check-interactive and check-noninteractive for both testsuites.
1103         * Makefile.am (COMMON_TESTS, TESTS): Split into ...
1104         (NONINTERACTIVE_TESTS, INTERACTIVE_TESTS): ... these new
1105         variables.
1106         (check-interactive-new): Rename from check-interactive.
1107         (check-noninteractive-new): Rename from check-noninteractive.
1108         (check-interactive-old, check-noninteractive-old): New targets.
1109         (check-interactive, check-noninteractive): Depend on the
1110         respective targets for the old and the new test suites.
1111         * doc/libtool.texi (Test descriptions): Simplify description
1112         about check-interactive and check-noninteractive.  Add index
1113         entries.
1115         Adjust docs for renaming and for parallel-tests.
1116         * README: Update example TESTS setting.
1117         * README.alpha: Likewise.
1118         * doc/libtool.texi (Test descriptions): Update for test renaming,
1119         adjust descriptions accordingly.
1121         Update VERBOSE handling for parallel-tests driver.
1122         * tests/defs.m4sh: Default to verbose output, drop now-unneeded
1123         handling of 'VERBOSE=no'.
1124         * README: Update example usage.
1125         * README.alpha: Likewise.
1126         * doc/libtool.texi (Test descriptions, When tests fail): Remove
1127         unneeded VERBOSE recommendations.  Point to per-test log files
1128         and test-suite.log summary file.
1130         Enable parallel-tests test driver for the old testsuite.
1131         * configure.ac: New configure test to find out whether `make'
1132         supports order-only prerequisites; set @ORDER@ accordingly.
1133         (AM_INIT_AUTOMAKE): Enable parallel-tests option.
1134         * tests/defs.m4sh (prefix): Derive install prefix for tests
1135         from the test name, to avoid clashes.
1136         * Makefile.am (CXX_TESTS, F77_TESTS, FC_TESTS, COMMON_TESTS):
1137         Reformat.  Adjust for renamed tests.  Add dependencies between
1138         the respective log files of the tests, to ensure proper ordering.
1139         Use order-only dependencies if possible, between test groups that
1140         use the same directory.
1141         (clean-local-legacy): Remove `_inst-*' directories as well.
1142         Prompted by suggestion from Bob Friesenhahn.
1144         New alias scripts for old tests run more than once.
1145         * tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
1146         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
1147         tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
1148         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
1149         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
1150         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
1151         tests/demo-pic-exec.test, tests/demo-pic-make.test,
1152         tests/demo-shared-exec.test, tests/demo-shared-inst.test,
1153         tests/demo-shared-make.test, tests/demo-shared-unst.test,
1154         tests/demo-static-exec.test, tests/demo-static-inst.test,
1155         tests/demo-static-make.test, tests/demo-static-unst.test,
1156         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
1157         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
1158         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
1159         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
1160         tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
1161         tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
1162         tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
1163         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
1164         tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
1165         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
1166         tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
1167         tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
1168         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
1169         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
1170         tests/tagdemo-shared-exec.test, tests/tagdemo-shared-make.test,
1171         tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
1172         tests/tagdemo-undef-exec.test, tests/tagdemo-undef-make.test:
1173         New files.
1175         Require Automake 1.11.1 for Libtool, enable color-tests.
1176         * configure.ac (AM_INIT_AUTOMAKE): Require 1.11.1.  Enable
1177         color-tests.
1178         (LTDL_SUBDIR_LIBOBJS): Remove now-obsolete conditional and
1179         feature test for Autoconf 2.59 and Automake 1.9.x workaround.
1180         * Makefile.am: Simplify accordingly.
1181         * bootstrap: Remove obsolete WORKING_LIBOBJ_SUPPORT workarounds
1182         for Autoconf 2.59 and Automake 1.9.6.
1184 2010-08-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
1186         Fix syntax for cygwin-cross
1187         libltdl/m4/argz.m4: Add quotes around variable, which
1188         may contain the multiword value 'guessing no'.
1190 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1192         configure: use Autobuild AB_INIT if available.
1193         * configure.ac: Call AB_INIT if it is defined, with
1194         $autobuild_mode as argument, to be set at configure time.
1195         Set AB_VERSION to the Libtool version string.
1196         * HACKING: Update.
1198         Fix getopt tests to skip with Autoconf < 2.61.
1199         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Skip the test
1200         if 'autom4te --language=m4sh' exits 63 because version 2.61 is
1201         required.  Allows the testsuite to complete successfully with
1202         Autoconf 2.59 and Automake 1.9.6.
1204         Tidy and fix clean and distclean rules for old testsuite.
1205         * Makefile.am (clean-local-legacy): Use $(CONF_SUBDIRS) instead
1206         of hard-coding the list of test directories.  Use
1207         $(AM_MAKEFLAGS).
1208         (fake-distclean-legacy): New phony rule, to create fake Makefile
1209         files if needed so that the automake-generated
1210         distclean-recursive rule can work properly.
1211         (distclean_recursive): New helper variable.
1212         (distclean-recursive): Depend on fake-distclean-legacy.
1214 2010-08-22  Paolo Bonzini  <bonzini@gnu.org>
1216         Fix sed_make_literal_regex.
1217         * libltdl/config/general.m4sh (sed_make_literal_regex): Fix
1218         definition.
1220 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
1222         Factor the sed command used to make a regex from a literal.
1223         * libltdl/config/general.m4sh (sed_make_literal_regex): New.
1224         * libltdl/config/ltmain.m4sh
1225         (func_cygming_dll_for_implib_fallback_core): Use it.  Suggested
1226         by Ralf Wildenhues.
1228 2010-08-21  Rainer Tammer <tammer@tammer.net>  (tiny change)
1230         Avoid issues with AIX resident shared libraries in old testsuite.
1231         * tests/defs.m4sh [aix]: Remove file mode permission for others,
1232         so shared libraries are not kept in memory after execution.
1233         Fixes failures of repeated mdemo-inst.test with on AIX 5.3.
1235 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1237         Skip part of versioning test on AIX.
1238         * tests/versioning.at (versioning): The AIX linker always
1239         records the unversioned library name, even with runtimelinking,
1240         so skip the execution test for the incompatibly upgraded
1241         library.
1242         Report by Rainer Tammer.
1244         Remove dead code from versioning test.
1245         * tests/versioning.at (versioning): No need to build unused
1246         prog3.
1248 2010-08-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1250         Don't hide the table of contents in the manual.
1251         * doc/libtool.texi: Move the table of contents to the beginning.
1252         Prompted by patch from Bruno Haible against Automake.
1254         Remove superfluous dependency in Makefile.am.
1255         * Makefile.am (tests/demo-conf.test): Remove dependency on
1256         libtool, this test is a primary source and not generated.
1258         Bump copyright years in manual.
1259         * doc/libtool.texi: Bump copyright years.
1261 2010-08-13  Peter Rosin  <peda@lysator.liu.se>
1263         Allow the use of a listing file if the archiver supports it.
1264         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Move detection
1265         of a suitable archiver...
1266         (_LT_PROG_AR): ...to here. New macro, also detect if the
1267         archiver supports a listing file with the new variable
1268         archiver_list_spec.
1269         * libltdl/config/ltmain.m4sh: If the archiver supports a listing
1270         file, use it when max_cmd_len is exceeded.  This is needed for
1271         tool chains such as MSVC which do not support piece by piece
1272         linking (-r -o).
1273         * doc/libtool.texi (libtool script contents): Update with
1274         archiver_list_spec description.
1276 2010-08-10  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
1278         Make testsuite compatible with Autoconf 2.62 again.
1279         * tests/getopt-m4sh.at (AT_CHECK): Autotest 2.62 chokes on unquoted
1280         '#' in AT_CHECK, so replace all uses with '@%:@' quadrigraph.
1281         Suggested by Eric Blake <eblake@redhat.com>
1282         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1284 2010-08-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1286         Fix more problematic code from "Add func_append_quoted and do..."
1287         * libltdl/config/ltmain.m4sh (func_mode_link): Revert back
1288         func_append instances that as assignments relied on the shell
1289         not performing word splitting on the right hand side of the
1290         assignment.
1292         Fix another typo on "Add func_append_quoted and do..."
1293         * libltdl/config/ltmain.m4sh (func_mode_link): Fix regression in
1294         computation of finalize_rpath introduced in v2.2.10-40-g0da7d80,
1295         fixing several testsuite failures on AIX.
1296         Report by Rainer Tammer.
1298 2010-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1300         Avoid unwanted error message in configure output.
1301         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Try print
1302         in subshell, so eventual `print: not found' is hidden reliably.
1304         Fix compilation of program sources on AIX.
1305         * tests/lt_dlopenext.at (lt_dlopenext error messages): Do not
1306         use $LIBTOOL when compiling plain object, AIX by default does
1307         not enable static archives.
1308         * tests/ltdl-libdir.at (libdir of installed modules): Likewise.
1309         Report by Rainer Tammer.
1311         Do not call toplevel configure in non-VPATH build.
1312         * tests/deplibs-mingw.at (deplibs without file command): Use
1313         LT_AT_CONFIGURE for consistency, update comment about why it
1314         might fail.
1315         * tests/pic_flag.at (override pic_flag at configure time): Skip
1316         test if we are building in-tree.
1317         Report by Rainer Tammer.
1319         Allow running pic_flag test with different shell.
1320         * tests/testsuite.at (LT_AT_CONFIGURE): Accept optional second
1321         argument specifying the configure script to run.
1322         * tests/pic_flag.at (override pic_flag at configure time):
1323         Use LT_AT_CONFIGURE.
1325         Ensure not to reverse preserving of --debug for relinking/finish.
1326         * libltdl/config/ltmain.m4sh (func_check_version_match): Only
1327         preserve '--debug' switch if $opt_debug is not equal to ':'.
1328         * tests/help.at (debug tracing): New test group.
1329         Report by Rainer Tammer.
1331 2010-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1333         Fix AC_NO_EXECUTABLES test failure on AIX.
1334         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Wrap link
1335         test in AC_CACHE_VAL, using cache variable $lt_cv_aix_libpath.
1336         * tests/no-executables.at (AC_NO_EXECUTABLES): Preset it, to
1337         avoid link test.
1338         Bug report by Rainer Tammer.
1340         Fix ltdl-libdir test for C++ compilers.
1341         * tests/ltdl-libdir.at (libdir of installed modules): Declare
1342         module function as extern "C".
1344 2010-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1346         Let `libtool' without arguments point to `--help' again.
1347         * libltdl/config/ltmain.m4sh (func_check_version_match):
1348         Remove duplicate and wrong error check.
1349         * tests/help.at (standard command line options): Extend test.
1350         Report by Rainer Tammer.
1352         Avoid syntax error due to shift of nonexistent parameter.
1353         * libltdl/config/ltmain.m4sh <command-line handling>: Only shift
1354         if there is a positional parameter to shift.  Fixes `libtool
1355         --help' when dash is used.
1356         Report by Rainer Tammer.
1358         Fix testsuite errors due to shell quoted parameter expansion issue.
1359         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Insert space
1360         between double-quoted and unquoted shell parameter, as bash
1361         4.0.28 doesn't add one in its output if the expansion of the
1362         second one starts with a space.
1363         (short option splitting, enhanced shell short option splitting)
1364         (long option splitting, XSI long option splitting): Add space in
1365         expected output.
1366         Fixes testsuite failures on AIX, FreeBSD, etc.
1367         Report by Rainer Tammer.
1369 2010-08-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1371         Fix build failure with AIX sh due to shell quoting error.
1372         * libltdl/config/ltmain.m4sh (func_append_quoted): Document
1373         that this function inserts a separator space.
1374         (func_mode_compile): Do not pass extra space here.
1375         Fixes regression introduced in v2.2.10-49-gc13532a.
1376         Report by Rainer Tammer.
1378 2010-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1380         Fix pic_flag test unportabilities.
1381         * tests/pic_flag.at (override pic_flag at configure time): Skip
1382         test if the compiler produces a warning containing `fpic'.
1383         Do not use nonportable `grep -e', for Solaris.
1384         Report by Charles Wilson.
1386 2010-08-01  Paolo Bonzini  <bonzini@gnu.org>
1388         Fix bug in postdeps computation
1389         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Actually
1390         concatenate $prev and $p.
1392 2010-07-26  Charles Wilson  <libtool@cwilson.fastmail.fm>
1394         Don't always skip XSI tests
1395         * tests/getopt-m4sh.at: Use new signature as implemented by
1396         de8a0992b21b76a13c302cf48588ad5f6042595c, when determining
1397         whether to test Extended-shell functions.
1399 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
1401         * tests/stresstest.at: Link with main.lo when liba is shared
1402         and linking main with -no-install.
1404 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
1406         * tests/stresstest.at [MSVC]: dllimport all imported
1407         variables.
1409 2010-07-17  Peter Rosin  <peda@lysator.liu.se>
1411         dllimport the variable for MSVC in link-order.at
1412         * tests/link-order.at [MSVC]: Makes the test pass by dllimporting
1413         imported variables when working with shared libraries.
1415 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
1416             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1418         Make preloading heed libname_spec.
1419         Fixes testsuite failure for lt_dladvise.at on MSYS/MSVC.
1420         * libltdl/ltdl.c (libprefix): New static variable describing
1421         the prefix of static archives.
1422         (try_dlopen): Use libprefix.
1423         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Export prefix of static
1424         archives to config.h. Also fix assignment of LTDLOPEN to be more
1425         efficient and less error prone while at it.
1427 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
1429         Rename _LT_PROG_XSI_REPLACE macro to _LT_PROG_FUNCTION_REPLACE.
1430         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Rename to
1431         _LT_PROG_REPLACE_SHELLFNS.
1432         (_LT_PROG_XSI_REPLACE): Rename to _LT_PROG_FUNCTION_REPLACE.
1433         (_LT_PROG_FUNCTION_REPLACE): Change decorator comment to use
1434         'Extended shell' rather than 'XSI' on successful replacement.
1435         * libltdl/config/general.m4sh (func_dirname, func_basename)
1436         (func_dirname_and_basename, func_stripname): Change decorator
1437         comment to use 'extended shell' rather than 'XSI' on fallback
1438         implementations.
1439         * libltdl/config/getopt.m4sh (func_split_short_opt)
1440         (func_split_long_opt): Ditto.
1441         * libltdl/config/ltmain.m4sh (func_append, func_append_quoted)
1442         (func_arith, func_len, func_lo2o, func_xform): Ditto.
1443         * tests/getopt-m4sh.at (_LT_AT_XSI_FUNC_EXTRACT): Rename to
1444         _LT_AT_EXTENDED_SHELL_FUNC_EXTRACT.
1445         (_LT_AT_EXTENDED_SHELL_FUNC_EXTRACT): Change regular expression to
1446         match new replacable function decorator comments.
1448 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
1450         Optimize assignment of output_la.
1451         * libltdl/config/ltmain.m4sh (func_mode_link): Save two fork/exec
1452         instances.
1453         Report by Ralf Wildenhues.
1455 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
1457         Fix a cut-n-pasto in "2010-07-07 Charles Wilson" patch.
1458         * libltdl/config/ltmain.m4sh (func_mode_link): Remove spurious
1459         variable dereference.
1461 2010-07-07  Gary V. Vaughan  <gary@gnu.org>
1463         Tidy m4 comment header underline.
1464         * libltdl/m4/libtool.m4 (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): Make
1465         sure hyphens in function name comment header underline line up.
1467 2010-07-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
1469         [cygwin|mingw] fix dlpreopen with --disable-static
1470         * libltdl/config/general.m4sh (func_tr_sh): New function.
1471         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [cygwin|mingw]:
1472         Obtain DLL name corresponding to import library by using value
1473         stored in unique variable libfile_$(transliterated implib name).
1474         If that fails, use $sharedlib_from_linklib_cmd to extract DLL
1475         name from import library directly. Also, properly extract dlsyms
1476         from the import library.
1477         (func_mode_link) [cygwin|mingw]: Prefer to dlpreopen DLLs
1478         over static libs when both are available.  When dlpreopening
1479         DLLs, use linklib (that is, import lib) as dlpreopen file,
1480         rather than DLL. Store name of associated la file in
1481         unique variable libfile_$(transliterated implib name)
1482         for later use.
1483         (func_win32_libid): Accomodate pei-i386 import libs
1484         as well as pe-i386.
1485         (func_cygming_dll_for_implib): New function.
1486         (func_cygming_dll_for_implib_fallback): New function.
1487         (func_cygming_dll_for_implib_fallback_core): New function.
1488         (func_cygming_gnu_implib_p): New function.
1489         (func_cygming_ms_implib_p): New function.
1490         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust sed
1491         expressions for lt_cv_sys_global_symbol_to_c_name_address and
1492         lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
1493         as trailing space after module name is optional.
1494         (_LT_LINKER_SHLIBS) [cygwin|mingw][C++]:
1495         Set exclude_expsyms correctly for $host. Simplify regular
1496         expression in export_symbols_cmds.
1497         (_LT_LINKER_SHLIBS) [cygwin|mingw|pw32][C]: Set exclude_expsyms
1498         correctly for $host. Enable export_symbols_cmds to identify
1499         DATA exports by _nm_ prefix.
1500         (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): New macro sets
1501         sharedlib_from_linklib_cmd variable.
1502         (_LT_DECL_DLLTOOL): New macro ensures DLLTOOL is always set.
1504 2010-07-05  Peter Rosin  <peda@lysator.liu.se>
1506         * tests/export.at [MSVC]: dllimport all imported variables.
1508 2010-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1509             Peter Rosin  <peda@lysator.liu.se>
1511         Support for response files with $NM.
1512         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
1513         <nm_file_list_spec>: New tag variable. Set it to '@' if input
1514         files can be passed to $NM in a file named with the '@' option.
1515         * libltdl/config/ltmain.m4sh (func_mode_link): When
1516         nm_file_list_spec is nonempty, use it to avoid skipped_export.
1517         * doc/libtool.texi (libtool script contents): Document
1518         new variable.
1520 2010-07-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1522         Fix ccache test for MSVC.
1523         * tests/static.at (ccache -all-static): Ignore compiler stderr.
1524         Reported by Peter Rosin.
1526 2010-07-03  Charles Wilson  <libtool@cwilson.fastmail.fm>
1528         Avoid false failures caused by filesystem interaction
1529         * tests/dlloader-api.at (dlloader API): Use uglified names for
1530         pseudo-modules.
1532 2010-07-03  Peter Rosin  <peda@lysator.liu.se>
1534         Fix typo in "Add func_append_quoted and do..."
1535         * libltdl/config/ltmain.m4sh (func_mode_compile): Use
1536         func_append_quoted instead of func_append.
1538 2010-07-02  Peter Rosin  <peda@lysator.liu.se>
1540         Don't trigger file name expansion when embedding manifests.
1541         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
1542         [ cygwin, mingw, cegcc ] <cl*>: Remove all spaces in the
1543         case statement of postlink_cmds to make file name expansion
1544         more unlikely.
1545         (_LT_LANG_CXX_CONFIG): Likewise, but also add the missing |.
1547 2010-07-01  Peter Rosin  <peda@lysator.liu.se>
1549         Fix regression caused by "Add func_append_quoted and do..."
1550         * libltdl/config/ltmain.m4sh (func_mode_link): Remove leftover
1551         "_libs" trash.
1553 2010-06-28  Peter Rosin  <peda@lysator.liu.se>
1555         For MSVC, embed the manifest as a resource in the executable.
1556         Fixes a lot of testsuite failures with MSVC 2003 (v8.0) and
1557         above (and perhaps also MSVC .Net) related to running programs
1558         that have been moved (e.g. installed) without their manifests
1559         also having been moved.
1560         * libltdl/m4/libtool.m4 (_LT_PATH_MANIFEST_TOOL): New macro
1561         that locates the Manifest Tool (mt) and verifies that it is
1562         indeed the manifest tool. The result is stored in the new
1563         variable MANIFEST_TOOL.
1564         (_LT_LINKER_SHLIBS) <postlink_cmds>: New tag variable.
1565         [ cygwin, mingw, cegcc ] <cl*>: Embed the manifest file as a
1566         resource. Make sure the embedding work regardless of if the
1567         @OUTPUT@ file name includes a trailing $EXEEXT.
1568         (_LT_LANG_CXX_CONFIG): Likewise.
1569         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Require the above
1570         _LT_PATH_MANIFEST_TOOL.
1571         * libltdl/config/ltmain.m4sh (func_mode_link): After linking
1572         a program, replace @OUTPUT@ in $postlink_cmds and then execute
1573         the commands.
1574         * doc/libtool.texi (libtool script contents): Document
1575         new postlink_cmds variable.
1576         (LT_INIT): Add that the MANIFEST_TOOL environment variable can
1577         be used to override the manifest tool to use.
1578         * tests/exeext.at: New. Make sure linking with both -o prog
1579         and -o prog$EXEEXT works.
1580         * Makefile.am (TESTSUITE_AT): Update.
1581         (TESTS_ENVIRONMENT): Propagate $(MANIFEST_TOOL) to the
1582         testsuite.
1583         * NEWS: Add note of the new MANIFEST_TOOL environment variable.
1585 2010-06-24  Peter Rosin  <peda@lysator.liu.se>
1587         Add MSVC support.
1588         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
1589         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin]: Add
1590         support for the Microsoft C/C++ Compiler (cl) relying on help
1591         from the compile script in Automake.
1592         * NEWS: Add note of the above.
1594 2010-07-01  Gary V. Vaughan  <gary@gnu.org>
1596         Skip `enhanced shell option appending' test when not available.
1597         * tests/getopt-m4sh.at [enhanced shell option appending]:
1598         _LT_AT_XSI_FUNC_EXTRACT will not be able to find the enhanced
1599         libtool func_append function if the replacement wasn't substituted
1600         by configure, since the decorator comments will be different - in
1601         that case simply skip the test.
1603 2010-06-30  Gary V. Vaughan  <gary@gnu.org>
1605         Add func_append test cases for smart and retarded implementations.
1606         * tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): New
1607         macro to extract a fallback function implementation from
1608         ltmain.m4sh.
1609         [option appending]: Use it for a test of the fallback
1610         implementation of func_append.
1611         [enhanced shell option appending]: And also test the enhanced
1612         implementation.
1613         * libltdl/config/ltmain.m4sh (func_append_quoted): Fix missing \\
1614         to escape a quoted space for eval.
1615         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Fix missing $ in
1616         dereference of func_append inline replacement for retarded
1617         shells.
1619 2010-06-29  Gary V. Vaughan  <gary@gnu.org>
1621         Correct func_split_short_opt comment cut-n-pasto.
1622         * libtool/config/getopt.m4sh (func_split_short_opt): Fix
1623         the function comment.
1625         Use a real XSI compliant func_split_short_opt substitution.
1626         * libtool/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Remove
1627         test ${foo:n:m} substrings, instead adding a ${foo%??} check
1628         to the existing XSI tests.
1629         (_LT_PROG_XSI_SHELLFNS): Remove the ${foo:n:m} based
1630         func_split_short_opt substitution in favour of a properly
1631         XSI compliant substitution.
1632         Suggested by Paolo Bonzini.
1634 2010-06-28  Gary V. Vaughan  <gary@gnu.org>
1636         Add func_append_quoted and do inline func_append substitutions.
1637         * libtool/config/ltmain.m4sh: Replace all occurrences of
1638         `foo="$foo bar"' with func_append. No decorator comment was
1639         added since /func_append [a-zA-Z0-9_]* "/ is already an
1640         excellent match regexp, and additional comments would only
1641         complicate things.
1642         (func_append_quoted): New function that quotes a value with
1643         func_quote_for_eval before appending it.  To avoid quoting the
1644         whitespace in the passed value, a single whitespace is added
1645         automatically.  Changed callers where possible.
1646         * libtool/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Perform a
1647         `+=' implementation substitution for func_append_quoted.  More
1648         importantly, systematically replace matching func_append calls
1649         with inline `+=' when supported (for maximum speed), and
1650         longhand `foo="$foo bar"' otherwise to avoid the function
1651         overhead.
1653         Add an XSI replacement for func_split_short_opt, with test cases.
1654         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Remove 'v' now
1655         that getopt.m4sh doesn't steal that letter for the --version
1656         short option.
1657         * libltdl/config/ltmain.m4sh (M4SH_GETOPTS): We can now use 'v'
1658         as a short option for '--verbose'.
1659         * libltdl/config/getopt.m4sh (m4go_printopts): Add back in the
1660         leading '-' for remaining non-argument short options.
1661         (func_split_short_opt): Use the correct sed script variable.
1662         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also ensure
1663         that XSI substring extraction is supported.
1664         (_LT_PROG_XSI_SHELLFNS): Use XSI substring extraction to split
1665         short options to avoid unnecessary forks if the host shell
1666         supports that.
1667         * tests/getopt-m4sh.at: New tests for getopt.m4sh coverage.
1668         * Makefile.am (TESTSUITE_AT): Add getopt-m4sh.at.
1669         (TESTS_ENVIRONMENT): Pass M4SH and SED for substition into the
1670         m4sh expansion performed in tests/getopt-m4sh.at.
1672 2010-06-27  Gary V. Vaughan  <gary@gnu.org>
1674         Add missing case branch terminators.
1675         * libltdl/config/ltmain.m4sh: Fixed everal case branches with
1676         missing ';;' terminators.
1678         Use TAB-SPACE in preference to SPACE-TAB.
1679         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): Some editors
1680         might optimise away the SPACE in SPACE-TAB sequences, so use
1681         TAB-SPACE just in case.
1682         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1684         Amend a missed opt_mode rename instance in ltmain.m4sh.
1685         * libltdl/config/ltmain.m4sh <mode>: Rename to opt_mode.
1687         Fix portability regressions in today's earlier changeset.
1688         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): `sed -i' is not
1689         portable; use `mv -f ...|| cp -f ...' instead.
1690         Add an initial backslash to sed `c' substitutions with leading
1691         whitespace, so that indentation is not removed by some non-POSIX
1692         compliant sed implementations.
1693         (_LT_PROG_XSI_SHELLFNS): Display a diagnostic warning message if
1694         one or more XSI function replacements failed.
1696         getopt.m4sh generated libtool option parser, and XSI improvements.
1697         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Moved portable
1698         shell versions of various utility functions from here...
1699         * libltdl/config/getopt.m4sh (func_split_long_opt): ...to here...
1700         * libltdl/config/general.m4sh (func_dirname, func_basename)
1701         (func_dirname_and_basename, func_strip_name): ...here...
1702         * libltdl/config/ltmain.m4sh (func_append, func_arith, func_len)
1703         (func_lo2o, func_xform): ...and here.
1704         * libltdl/config/libtool.m4 (_LT_PROG_XSI_REPLACE): New macro that
1705         expands into a sed command for replacing the contents of a
1706         suitably decorated shell function with an alternate XSI
1707         implementation.
1708         (_LT_PROG_XSI_SHELLFNS): Use it to replace the portable shell
1709         versions of the functions above with equivalent XSI
1710         implementations that avoid unnecessary forks if the host shell
1711         supports that.
1712         * libltdl/config/ltmain.m4sh: Replace hand written shell code
1713         with a call to M4SH_GETOPTS. Rename some option variables in
1714         the client code to match the generated option parser settings.
1715         * libltdl/config/general.m4sh (func_echo, func_error)
1716         (func_warning): Use $opt_mode instead of obsoleted $mode in
1717         message leader.
1718         * libltdl/config/getopt.m4sh (m4_version_prereq): This file
1719         requires m4sugar.m4 from Autoconf-2.61 or newer. 
1721 2010-06-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
1723         [cygwin] Refactor C++ exception handling for Win32 correctness
1724         * tests/exception.at (common.h): New file, refactored from
1725         (module.h): Move declaration of modexc to libcommon.
1726         Include common.h. Use explicit import/export markings for
1727         symbols when building on win32 or cygwin.
1728         (common.cpp): New file.
1729         (module.cpp): Ensure correct symbols markings when including
1730         module.h.
1731         (lib.h): Use explicit import/export markings for symbols
1732         when building on win32 or cygwin.
1733         (lib.cpp): Ensure correct symbol markings when including lib.h.
1734         (main.cpp): Include common.h.
1735         (commands): Ensure correct symbol markings when compiling
1736         main.cpp, and lib.cpp, and module.cpp. Add command to compile
1737         common.cpp, and to link libcommon.la.  Add libcommon.la when
1738         linking module.la and main.  Add command to install libcommon.la.
1740 2010-06-21  Gary V. Vaughan  <gary@gnu.org>
1742         Ensure getopts.m4sh is compatible with Autoconf-2.61 and newer.
1743         * libltdl/config/getopt.m4sh (m4_chomp): Ensure this macro is
1744         implemented even if Autoconf's m4sugar.m4 doesn't provide it.
1745         (m4go_expand): New macro based on Autoconf-2.64 m4_expand. Use
1746         it everywhere incase m4sugar.m4 doesn't have an implementation.
1747         (m4_ifnblank): Replace all uses with m4_ifval, which was
1748         available long before m4_ifnblank was introduced.
1750 2010-06-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1752         Fix clean mode for HP-UX 11.31 sh.
1753         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not try
1754         to match a null string in a case pattern, even with surrounding
1755         spaces.  Fixes `lt_dlopenadvise library loading' test.
1757         Add comment for exception handling module unloading issue.
1758         * tests/exceptions.at (C++ exception handling): Add comment
1759         for last patch.
1761         Fix flags test failure when ld is used as linker.
1762         * tests/flags.at (passing CC flags through libtool): When $LD
1763         is used for linking libraries, ensure flags passed with `-Wc,'
1764         are not passed through to $LD, but flags passed with `-Wl,' use
1765         $wl when linking programs.  Fixed testsuite failure on HP-UX
1766         10.20.
1768 2010-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
1770         [cygwin] Fix segfault in C++ exception handling test
1771         * tests/exceptions.at (main.cpp:exceptions_in_module):
1772         Move dlclose outside catch block; otherwise __cxa_end_catch
1773         (part of the cygwin g++ ABI) accesses pointers to data inside
1774         unloaded DLL. This is a platform ABI-specific bug, but is
1775         likely common to many platforms' g++ and/or other C++
1776         compilers.
1778 2010-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1780         Fix srcdir computation for manual runs of old tests.
1781         * tests/defs.m4sh: Strip trailing `/tests' from srcdir, to allow
1782         `$srcdir/tests/FOO.test' to be run from the top build directory.
1784         Clean up @var handling in the manual.
1785         * doc/libtool.texi: Throughout the manual, replace @var with
1786         @samp or @code as appropriate, ensure the argument of remaining
1787         @var uses are lower-case.
1789         Let the bootstrap script fail upon errors.
1790         * bootstrap: Enable errexit.
1792         Fix execute mode test for OSF/1 5.1.
1793         * tests/execute-mode.at (execute mode): Do not use grep -F
1794         with an empty pattern.
1795         * THANKS: Update.
1796         Report by Jay K.
1798         Use config.cache variable for PIC flag, to allow override.
1799         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) <lt_prog_compiler_pic>:
1800         Save result, and allow override, through cache variable
1801         lt_cv_prog_compiler_pic{,_CXX,_F77,_FC}.  The cache variable
1802         needs to contain an eventual -DPIC.
1803         * tests/pic_flag.at (override pic_flag at configure time):
1804         New file, new test.
1805         * Makefile.am (TESTSUITE_AT): Update.
1806         * NEWS, THANKS: Update.
1807         Suggestion by Joakim Tjernlund and Paolo Bonzini.
1809 2010-06-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1811         Optimize func_ltwrapper_scriptname to assume a cwrapper.
1812         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname): Do not
1813         call func_ltwrapper_executable_p again here, this function is
1814         documented to allow being called with wrapper executables.
1816         Fix bootstrap script to cope with changed AC_INIT arguments.
1817         * bootstrap: When extracting PACKAGE and VERSION from AC_INIT
1818         arguments, be sure to remove a 'GNU ' prefix and lowercase the
1819         package name for PACKAGE.  Also set PACKAGE_NAME and PACKAGE_URL
1820         appropriately for GNU software.  Pass these variables to the
1821         make commands creating tests/package.m4 and other files.
1822         * Makefile.am (edit): Fix substitution of PACKAGE_NAME and
1823         PACKAGE_STRING.
1824         * libltdl/config/announce-gen.m4sh: Use @PACKAGE@ not
1825         @PACKAGE_STRING@.
1827 2010-06-15  Peter Rosin  <peda@lysator.liu.se>
1829         On Windows, find potential libs regardless of file name case.
1830         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD),
1831         libltdl/config/ltmain.m4sh (func_mode_link): On Windows,
1832         find potential libs regardless of file name case.
1833         * tests/nocase.at: New test, to check for regressions
1834         of the above.
1835         * Makefile.am: Add above new test.
1836         * doc/libtool.texi (libtool script contents): Document
1837         new variables.
1838         * NEWS: Updated.
1840 2010-06-15  Philip Allison  <philip.allison@smoothwall.net>  (tiny change)
1842         Avoid GCC -Wall compiler warning in dlopen self test.
1843         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Fix unused
1844         variable warning in test program.
1845         * THANKS: Update.
1847 2010-06-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1849         Fix cleaning of uninstalled w32 shell wrapper in subdirs.
1850         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not
1851         override global objdir variable, instead use odir for the
1852         directory of to-be-removed files.  Drop unneeded origobjdir.
1853         Report by Charles Wilson.
1855 2010-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1857         Enable colored Autotest testsuite output if available.
1858         * tests/testsuite.at: Move AT_INIT call down to late in the
1859         file, all prior code can go beforehand.
1860         Call AT_COLOR_TESTS if defined.
1862 2010-06-14  Peter O'Gorman  <peter@pogma.com>
1864         Pass resident test with --disable-shared too.
1865         * tests/resident.at: use LTDL_SET_PRELOADED_SYMBOLS.
1867 2010-06-13  Peter O'Gorman  <peter@pogma.com>
1869         Test with --disable-shared at release time too.
1870         * HACKING: Note it.
1872         Avoid failure for --disable-shared.
1873         * tests/lt_dladvise.at: Hack.
1875         Use LTDL_SET_PRELOADED_SYMBOLS to avoid failure.
1876         * tests/exceptions.at: Use it.
1878 2010-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1880         Print Libtool project URL in program --help output.
1881         * configure.ac (AC_INIT): Set PACKAGE argument to `GNU Libtool',
1882         so Autoconf knows this is GNU software.  For Autoconf < 2.64,
1883         if AC_PACKAGE_URL is not defined, substitute PACKAGE_URL.
1884         * Makefile.am (edit): Substitute PACKAGE_URL.
1885         ($(srcdir)/tests/package.m4): Also depend on Makefile.am.
1886         Define AT_PACKAGE_URL, for `tests/testsuite --help' output.
1887         * libltdl/config/getopt.m4sh (func_help): Also extract comment
1888         lines that mention a home page and general GNU help.
1889         * libltdl/config/ltmain.m4sh: Use @PACKAGE_BUGREPORT@ instead of
1890         hard-coded list address.  Also mention Libtool home page and
1891         general GNU help web page.
1892         * libtoolize.m4sh: Likewise.
1894 2010-06-12  Peter Rosin  <peda@lysator.liu.se>
1895             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1897         Improve libdir usage from within ltdl on MinGW.
1898         * libltdl/ltdl.c (parse_dotla_file) [__WINDOWS__]: Read the
1899         libdir entry in the .la file, but accept it only if it is not
1900         a unix-style absolute name.
1901         * tests/ltdl-libdir.at: New test that checks if ltdl finds an
1902         installed module via the libdir variable in the .la file.  On
1903         MinGW, use a Windows-style libdir name including drive spec.
1904         * Makefile.am: Add above.
1906 2010-06-11  Peter O'Gorman  <peter@pogma.com>
1908         Skip bindir install test if we're not building shared.
1909         * tests/bindir.at: Skip install test if necessary.
1910         * THANKS: Update.
1911         Report by Michael E Faenza.
1913 2010-06-11  Gary V. Vaughan  <gary@gnu.org>
1915         Use getopt.m4sh to generate libtoolize option parser.
1916         * libtoolize.m4sh: Replace hand written shell code with a
1917         call to M4SH_GETOPTS.  Move some premature initialization
1918         from the preamble to the main part of the script.  Exit with
1919         an error on spurious additional non-option arguments.
1920         (envopts): Integrate LIBTOOLIZE_OPTIONS pre-parsing into the
1921         main option parsing loop.
1922         (opt_copy): Use in place of and in the reverse sense of the
1923         old opt_link variable.
1925 2010-06-10  Peter O'Gorman  <peter@pogma.com>
1927         Create reloadable object files with non-pic objects too.
1928         * libltdl/config/ltmain.m4sh: When not building a shared
1929         library, use the non-pic objects to create a reloadable
1930         object, because pic objects do not exist.
1932 2010-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1934         Ensure libltdl is up to date for check-local.
1935         * Makefile.am (LTDL_BOOTSTRAP_DEPS): New variable.
1936         (all-local): Use it to simplify dependencies.
1937         (testsuite_deps_uninstalled): Add $(LTDL_BOOTSTRAP_DEPS).
1938         Report by Peter Rosin.
1940 2010-06-10  Gary V. Vaughan  <gary@gnu.org>
1942         Support shell tracing inside functions even with ksh.
1943         * libltdl/config/getopt.m4sh: Set $opt_debug to be either `:'
1944         or `set -x' depending on whether --debug was parsed to match
1945         usage in libtoolize.m4sh and ltmain.m4sh.
1946         * clcommit.m4sh, libltdl/config/announce-gen.sh: Instead of
1947         `$opt_debug && ...', use `test "$opt_debug" != ":" && ...'.
1948         * clcommit.m4sh, libltdl/config/announce-gen.m4sh,
1949         libltdl/config/getopt.m4sh, libltdl/connfig/mailnotify.m4sh:
1950         Execute at the start of functions to cater to ksh, which
1951         resets `-x' inside shell functions.
1953         Fix a typu in HACKING.
1954         * HACKING (Release Procedure): s/Makeflie/Makefile/.
1956 2010-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1958         Factorize testing gcj installation in the testsuite.
1959         * tests/testsuite.at (LT_AT_TAG): For the GCJ tag, actually
1960         try to compile a .java file when deciding whether to skip.
1961         (LT_AT_EXEC_TAG): New macro, to also ensure runnability.
1962         * tests/convenience.at (Java convenience archives): Use
1963         LT_AT_EXEC_TAG, simplify accordingly.
1964         * tests/flags.at (passing lt_tag flags through libtool): Use
1965         m4_defn for tag so LT_AT_TAG works.
1966         * tests/infer-tag.at (GCJ inferred tag): Simplify.
1967         * THANKS: Update.
1968         Report by Warren Dodge.
1970 2010-06-09  Peter O'Gorman  <peter@pogma.com>
1972         Skip demo-nopic tests if SELinux policy will cause failure.
1973         * tests/demo-nopic.test: Check SELinux policy and skip if
1974         necessary.
1976 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
1978         Set SCM version number to 2.2.11a.
1979         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
1980         number to 2.2.11a.
1981         * NEWS: Updated.
1983         GNU Libtool 2.2.10 was released.
1985         Prepare for next release.
1986         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version number
1987         to 2.2.10.
1988         * NEWS: Update version number.
1990         Fix a quoting bug with ./commit -a 'A U Thor'.
1991         * clcommit.m4sh (func_commit): Use func_show_eval when calling
1992         git, so that the previously func_quote_for_eval()ed $git_flags is
1993         expanded properly.
1995 2009-09-15  Peter Rosin  <peda@lysator.liu.se>
1997         Don't try the MSYS libdir path on MinGW.
1998         * libltdl/ltdl.c (parse_dotla_file) [mingw]: The absolute
1999         libdir path in the .la file is recorded as an MSYS (POSIX
2000         style) path. Make sure it isn't tried when locating the
2001         shared library.
2002         * NEWS: Updated.
2004 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
2006         Simplify license variations, and add missing license texts.
2007         * ChangeLog, ChangeLog.1996, ChangeLog.1997, ChangeLog.1998,
2008         ChangeLog.1999, ChangeLog.2000, ChangeLog.2001, ChangeLog.2002,
2009         ChangeLog.2003, ChangeLog.2004, ChangeLog.2005, ChangeLog.2006,
2010         ChangeLog.2007, ChangeLog.2008, ChangeLog.2009, NEWS: Add
2011         all-permissive license.
2012         * HACKING, README, README.alpha, TODO: Relax license to RMS
2013         encouraged all-permissive terms.
2014         * libltdl/README: Ditto. I added the original license text in
2015         2007, and there's no need for it to be so long for such a trivial
2016         file.
2017         * libltdl/config/getopt.m4sh, libltdl/general.m4sh: Cvs-utils is
2018         dead, and I am the author of these files, so consolidated license
2019         terms to match regular Libtool licensing.
2020         * HACKING (Licensing Rules): Update wording, and list of files for
2021         the all permissive license.
2022         (GPL with CVS-Utils exception clause): Removed.  No files have these 
2023         license any more.
2024         (GPL with Libtool exception clause): Ditto, only libltdl/README
2025         used to be distributed with this variation.
2026         * AUTHORS: Add GPL license text.
2027         
2028         Fix a type in the 2.2.8 release notes.
2029         * NEWS: s/ romoted/ promoted/ in the 2.2.8 release notes.
2031         Don't warn about the blank line inserted into git commit message.
2032         * clcommit.m4sh: When searching for accidental commits of mutliple
2033         changes, ignore the second line of the message, which we inserted
2034         earlier to support "git log --oneline".
2036         Enable correct extraction of multiline copyright from --version.
2037         * libltdl/config/getopt.m4sh: Wrap copyright notice at 76
2038         columns.
2039         (func_version): Don't omit spaces when merging multiline copyright
2040         notices.
2041         * clcommit.m4sh, libtoolize.m4sh: Wrap copyright notice at 76
2042         columns.
2044         * NEWS (2.2.8): BlueGene compiler tests were performed on BG/P
2045         systems, not BG/L.
2046         Reported by Christian Rössel <christian.roessel@gmx.de>
2048 2010-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2050         Fix testsuite helper macros to not hide failure.
2051         * tests/testsuite.at (LT_AT_CONFIGURE, LT_AT_MAKE):
2052         Do not wrap AT_CHECK in a subshell, so that failures are
2053         properly propagated; instead, move environment changes inside
2054         the AT_CHECK code.
2055         Report and analysis by Peter Rosin.
2057         Avoid autom4te warning about unnamed diversion.
2058         * libltdl/config/getopt.m4sh: Use diversion name KILL not -1.
2060 2010-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2062         Make versioning test stricter for w32, enable shared libs.
2063         * tests/versioning.at (versioning): Add -no-undefined to
2064         LDFLAGS.
2065         (test_uninstalled): Also move $bindir out of the way
2066         temporarily.
2068         Fix versioning test for LDFLAGS=-Wl,--as-needed.
2069         * tests/versioning.at (versioning): For the library update
2070         hypotheses, ensure the unchanged library libb isn't accidentally
2071         relinked against the new liba, by not reinstalling libb.
2072         Fixes testsuite failure for the incompatible update case with
2073         LDFLAGS=-Wl,--as-needed.
2074         * THANKS: Update.
2075         Report by Ryan Hill.
2077 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2079         Rewrite manual intro to be gender-neutral.
2080         * doc/libtool.texi (Introduction): Use gender-neutral
2081         formulation when addressing developers.
2083 2010-06-05  Gary V. Vaughan  <gary@gnu.org>
2085         Update and simplify all m4sh scripts to use latest getopt.m4sh.
2086         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Rewrite option
2087         parsing loop over M4SH_GETOPTS macro, and adjust all clients of
2088         option variables to use generated option names.
2090         Add missing quote for literal ? in a shell case statement.
2091         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Quote initial ?
2092         correctly for use in a shell case statement.
2094         Quote command line arguments after --rcfile properly.
2095         * libltdl/config/announce-gen.m4sh (--rcfile): Quote remaining
2096         arguments shell variable expression correctly for eval.
2097         
2098         Shift correctly in numbered option argument collection.
2099         * libltdl/config/getopt.m4sh (_m4go_option): Argument list also
2100         needs to be `shift'ed in the shell option loop after processing a
2101         numbered argument collection.
2103         Fetch from new upstream host for config.guess and config.sub.
2104         * Makefile.maint (WGET_CGIT): Location of newest config.guess and
2105         config.sub upstream.
2106         (fetch): Fetch config.guess and config.sub from WGET_CGIT, rather
2107         than no-longer-updating WGET_SGO location.
2109         Update generated upload directive file format to v1.1.
2110         * Makefile.maint (git-dist, diffs): Update to generate v1.1 format
2111         directive files for ftp://ftp-upload.gnu.org/incoming/ftp.
2113         Fix web manual generation details in release instructions.
2114         * HACKING (Release Procedure): Move the instruction for generating
2115         web manuals for a new release to before the instruction that bumps
2116         the version numbers to the post release values.
2118         Set SCM version number to 2.2.9a.
2119         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
2120         number to 2.2.9a.
2121         * NEWS: Updated.
2123         GNU Libtool 2.2.8 was released.
2125         Prepare for next release.
2126         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
2127         number to 2.2.8.
2128         * NEWS: Update version number.
2129         * INSTALL, libltdl/config/install-sh, libltdl/config/config.guess,
2130         libltdl/config/config.sub, libltdl/config/texinfo.tex: Updated
2131         from canonical source.
2133         Provide an m4sh reimplementation of announce-gen.
2134         * libltdl/config/getopt.m4sh (M4SH_GETOPTS): New macro that takes
2135         a quoted m4 list of command line options to be parsed, and
2136         generates the shell code to parse those options and collect the
2137         results into appropriately named 'opt_xxx' shell variables.  Also,
2138         add some private supporting macros, and improve the comments
2139         radically.
2140         * libltdl/config/announce-gen.m4sh: New file, to generate and
2141         optionally post (an enhancement over the gnulib perl script of the
2142         same name) a release announcement.
2143         * Makefile.maint (announce-gen): Build a new announce-gen script
2144         in the build directory, from the contents of
2145         libltdl/config/announce-gen.m4sh.
2146         * HACKING (Release Procedure): Update the instructions to use
2147         announce-gen.
2148         (Alpha release note template, Full release note template):
2149         Removed.
2151 2010-05-22  Gary V. Vaughan  <gary@gnu.org>
2153         Support "git log --oneline" in generated commit messages.
2154         * clcommit.m4sh (func_check_commit_msg): Insert an empty line
2155         between the ChangeLog entry summary line and the ChangeLog entry
2156         body, so that "git log --oneline" works properly.
2157         Bump copyright and version number.
2158         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2160 2010-05-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2162         * HACKING: Set Reply-To: in announcement emails.
2164 2010-05-21  Gary V. Vaughan  <gary@gnu.org>
2166         Set SCM version number to 2.2.7c.
2167         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
2168         number to 2.2.7c.
2169         * NEWS: Updated.
2171         GNU Libtool 2.2.7b  was released.
2173         Prepare for next release candidate.
2174         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
2175         number to 2.2.7b.
2176         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
2177         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: These files
2178         have been updated without a serial bump since the last release.
2179         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Bump Revision, to
2180         account for bugfixes since the last release.
2181         * libltdl/config/install-sh, libltdl/config/config.guess,
2182         libltdl/config/config.sub, libltdl/config/texinfo.tex,
2183         INSTALL: Updated from canonical source.
2184         * NEWS: Update with missing entries from ChangeLog.
2185         * HACKING: Note workaround for developer tool-path leakage bug.
2187         Skip some tests in --disable-ltdl-install mode.
2188         * tests/dlloader-api.at, tests/exceptions.at,
2189         tests/lalib-syntax.at, tests/loadlibrary.at,
2190         tests/lt_dlopenext.at, tests/resident.at: Detect when these
2191         tests try to link against the not installed libltdl.la, and
2192         skip rather than FAIL.
2194 2010-05-05  Peter Rosin  <peda@lysator.liu.se>
2196         Clarify versioning algorithm documentation.
2197         * doc/libtool.texi (Updating version info): Be explicit
2198         about setting age to zero on interface change.
2199         Reported by Jef Driesen <jefdriesen@hotmail.com>
2201 2010-05-04  Peter O'Gorman  <peter@pogma.com>
2203         Ranlib is required with -force_load and fat archives.
2204         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Run
2205         ranlib.
2206         Reported by Jeremy Huddleston <jeremyhu@apple.com>
2208 2010-04-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2210         Fix incompatible struct declarations.
2211         * doc/libtool.texi (Dlpreopening): Remove broken documentation
2212         of lt_dlsymbol and lt_dlsymlist.  Document typedef lt_dlsymlist
2213         and symbol lt_preloaded_symbols according to the implementation.
2214         * tests/demo/dlmain.c (lt_symlist): Make struct anonymous ...
2215         (lt_dlsymlist): ... and typedef to this name.
2216         (lt_preloaded_symbols, main): Adjust.
2217         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
2219 2010-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2221         Use linker_flags not compiler_flags with $LD.
2222         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]
2223         <archive_cmds, archive_expsym_cmds>: With xlf and bgxlf
2224         compilers, when linking with $LD, use $linker_flags not
2225         $compiler_flags.
2227 2010-03-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2229         Add FAQ, and FAQ entry for flags stripped at library link time.
2230         * doc/libtool.texi (FAQ, Stripped link flags): New nodes.
2231         (Wrapper executables): Replace bug address with macro.
2232         (Compile mode, Link mode): Document `-Wc,' and `-Xcompiler '
2233         semantics better.
2234         * libltdl/config/ltmain.m4sh (func_mode_link): Rewrite comment
2235         for the flags that are passed through.
2236         Prompted by reports from Simon Richter <Simon.Richter@hogyros.de>,
2237         Török Edwin <edwintorok@gmail.com> and
2238         Åke Sandgren <ake.sandgren@hpc2n.umu.se>.
2240 2010-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2242         Fix preloader symbol list declaration in libltdl.
2243         * libltdl/ltdl.c (preloaded_symbols): Fix declaration to include
2244         array brackets.
2245         (lt_dlinit): Do not take address of preloaded_symbols.
2247         Fix typo in libtool --help output.
2248         * libltdl/config/ltmain.m4sh (func_mode_help): Fix typo in help
2249         output.
2251         Fix a couple of documentation errors.
2252         * doc/libtool.texi (Autoconf macros): Improve hyphenation.
2253         (Using libltdl): libltdl uses the Lesser General Public License,
2254         not the Library General Public License.
2256         Do not use @sc nor @acronym in the manual.
2257         * doc/libtool.texi: Remove all usage of @sc.
2259 2010-03-19  Chris Demetriou  <cgd@google.com>
2261         Sort output of 'find' to enable deterministic builds.
2262         * libltdl/config/ltmain.m4sh (func_extract_archives): Sort
2263         output of 'find'.
2264         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Likewise.
2265         * THANKS: Update.
2267 2010-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2269         Unconditionally normalize LC_ALL, LANGUAGE in libtool script.
2270         * libltdl/config/ltmain.m4sh: Unconditionally set LC_ALL and
2271         LANGUAGE to 'C', to avoid semantic differences on MinGW under
2272         Chines locale.  SCO issues with e.g. LANG=C are not known to
2273         be relevant today any more.
2274         Report by Pete Batard <pbatard@gmail.com> and Xiaofan Chen
2275         <xiaofanc@gmail.com>.
2277 2010-03-17  Peter Rosin  <peda@lysator.liu.se>
2279         Preserve the last error when restoring the error mode.
2280         * libltdl/loaders/loadlibrary.c (wm_open): Don't rely on
2281         SetThreadErrorMode (or SetErrorMode) to not clobber the last
2282         error.
2283         Report by Ralf Wildenhues.
2285         Use Get/SetThreadErrorMode if they are available.
2286         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): Replaced...
2287         (wrap_getthreaderrormode): ...by this function that checks
2288         first for GetThreadErrorMode, then GetErrorMode and makes use
2289         of either of those or...
2290         (fallback_getthreaderrormode): ...else falls back to this
2291         replacement function that implements the old workaround, which
2292         was previously implemented in...
2293         (fallback_geterrormode): ...this now renamed function.
2294         (geterrormode): Replaced...
2295         (getthreaderrormode): ...by this function pointer that points
2296         at either of wrap_getthreaderrormode, GetThreadErrorMode,
2297         GetErrorMode or fallback_getthreaderrormode.
2298         (wrap_setthreaderrormode): New function that checks if
2299         SetThreadErrorMode is supported by the system and makes use of
2300         it if it is.
2301         (fallback_setthreaderrormode): New function that is used
2302         otherwise that implements the old version using SetErrorMode.
2303         (setthreaderrormode): New function pointer that points at
2304         either of wrap_setthreaderrormode, SetThreadErrorMode or
2305         fallback_setthreaderrormode.
2306         (vm_open): Adjust to the above.
2308 2010-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2310         Detect Sun compiler suite with 'sun'-prefixed names.
2311         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
2312         (_LT_SYS_HIDDEN_LIBDEPS) [solaris]: Accept compiler names sunCC,
2313         sunf77, sunf90, sunf95 in addition to CC, f77, f90, f95.
2314         * NEWS: Update.
2315         Report by Vadim Zeitlin.
2317 2010-02-28  Pierre Ossman  <ossman@ossman.lkpg.cendio.se>  (tiny change)
2318             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2320         Fix deplibs check fallback for 64-bit Windows and Windows CE.
2321         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Accept file formats
2322         'pe-arm-wince' and 'pe-x86-64'.  Add note about consistency with ...
2323         * libltdl/config/ltmain.m4sh (func_win32_libid): ... the respective
2324         pattern here; sync pattern from the former.
2325         * tests/deplibs-mingw.at (deplibs without file command): New
2326         file, new test.
2327         * Makefile.am (TESTSUITE_AT): Update.
2328         * NEWS: Update.
2330 2010-02-24  Scott McCreary  <scottmc2@gmail.com>  (tiny change)
2332         Update search path on Haiku for legacy system directory.
2333         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [haiku]
2334         <sys_lib_dlsearch_path_spec>: Replace legacy
2335         /boot/beos/system/lib directory with /boot/system/lib.
2336         * THANKS: Update.
2338 2010-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2340         manual: fix detailmenu ordering.
2341         * doc/libtool.texi (Top): Add section for `Linking executables'
2342         in the detailmenu.
2344 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
2346         Guard against strerror()==NULL
2347         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main):
2348         Check return value of strerror() using nonnull().
2349         (func_emit_cwrapperexe_src:find_executable): Ditto.
2350         (func_emit_cwrapperexe_src:chase_symlinks): Ditto.
2352 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
2354         Document wrapper changes.
2355         * NEWS: Indicate new feature and incompatibility.
2356         * doc/libtool.texi [detailmenu]: Add reference to subsection
2357         'Wrapper executables for programs', in Platform Quirks category.
2358         [Linking executables]: Mention wrapper executables, in
2359         addition to wrapper scripts. Add menu referencing subsection
2360         'Wrapper executables for programs'.
2361         [Wrapper executables for programs]: New subsection. Documents
2362         cwrapper rationale and command line options.
2364 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
2366         Add --lt-* options to shell wrapper
2367         * libltdl/config/ltmain.m4sh (func_emit_wrapper): Call
2368         func_parse_lt_options early. Use func_exec_program.
2369         (func_emit_wrapper:func_parse_lt_options): New function.
2370         (func_emit_wrapper:func_lt_dump_args): New function.
2371         (func_emit_wrapper:func_exec_program_core): New function.
2372         (func_emit_wrapper:func_exec_program): New function.
2374 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
2376         Enable runtime cwrapper debugging; add tests
2377         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
2378         Update comments. Initialize program_name. Eliminate _LENGTH
2379         variables for string constants. In debug mode, print a
2380         banner with known content before any other output. Remove
2381         LTWRAPPER_DEBUGPRINTF macro. Add constants and variables
2382         to support new --lt-debug option.
2383         (func_emit_cwrapperexe_src:ltwrapper_debugprintf): Renamed to...
2384         (func_emit_cwrapperexe_src:lt_debugprintf): this. Only print
2385         messages if lt_debug != 0. Ensure appearance of messages
2386         conforms to GCS.
2387         (func_emit_cwrapperexe_src:lt_fatal): Ditto.
2388         (func_emit_cwrapperexe_src:lt_error_core): Ditto.
2389         (func_emit_cwrapperexe_src): Update all callers to lt_fatal.
2390         Update all users of LTWRAPPER_DEBUGPRINTF (()) to call
2391         lt_debugprintf () directly.
2392         (func_emit_cwrapperexe_src:main): Consolidate option parsing.
2393         Ensure first use of lt_debugprintf occurs after option parsing.
2394         Add stanza to parse for --lt-debug and set lt_debug variable.
2395         Use strcmp rather than strncmp, where safe.
2396         * tests/cwrapper.at: Add new tests for --lt-debug and
2397         -DLT_DEBUGWRAPPER.
2399 2010-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2401         Use --email with gendocs.sh.
2402         * Makefile.maint (web-manual): Pass bug reporting address to
2403         gendocs.sh.
2405         Make testsuite code C++ clean again.
2406         * tests/resident.at (resident modules): Fix for C++.
2408 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
2409             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2411         Testsuite exposure for dlloader API.
2412         * tests/dlloader-api.at: New file, new test.
2413         * Makefile.am (TESTSUITE_AT): Update.
2415 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
2417         * tests/loadlibrary.at: Fix C++ issues.
2419 2010-01-20  Peter Rosin  <peda@lysator.liu.se>
2421         Report proper errors from the loadlibrary loader.
2422         * libltdl/loaders/loadlibrary.c (loadlibraryerror): New
2423         helper function that returns the latest Windows error as a
2424         string, or the provided default string on failure to do so.
2425         (LOADLIB_SETERROR): New macro that wraps previous to make it
2426         easy to use.
2427         (vm_open, vm_close, vm_sym): Make use of previous.
2428         (LOCALFREE): New macro to help free the Windows error string.
2429         (vl_exit): Make use of previous.
2430         * tests/loadlibarry.at: New file, new test that makes sure
2431         the loadlibrary loader reports non-standard error messages.
2432         * Makefile.am (TESTSUITE_AT): Add above test.
2434 2010-01-02  Peter Rosin  <peda@lysator.liu.se>
2436         Use GetErrorMode if it is available.
2437         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): New
2438         function that checks if GetErrorMode is supported by the
2439         system and makes use of it if it is.
2440         (fallback_geterrormode): New function that is used otherwise
2441         that implements the old workaround.
2442         (geterrormode): New function pointer that points at either
2443         of the above or directly at GetErrorMode.
2444         (vm_open): Make use of the above.
2446 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2448         Ensure functions from resident modules work in atexit handlers.
2449         * tests/resident.at (resident modules): New file, new test.
2450         * Makefile.am (TESTSUITE_AT): Adjust.
2451         Report by Bob Friesenhahn.
2453         Testsuite exposure for relative output file names and deplibs.
2454         * tests/deplib-in-subdir.at (deplib in subdir): New file, new
2455         test.
2456         * Makefile.am (TESTSUITE_AT): Update.
2457         Prompted by report from Bob Friesenhahn.
2459 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2460             Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2462         Testsuite exposure for C++ exception handling.
2463         * tests/exceptions.at (C++ exception handling): New file, new
2464         test.
2465         * Makefile.am (TESTSUITE_AT): Update.
2466         Report by Bob Friesenhahn.
2468 2010-01-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2470         Bump copyright years.
2471         * ChangeLog.2009: New, rotated from ...
2472         * ChangeLog: ... here.
2473         * Makefile.am (EXTRA_DIST): Add ChangeLog.2009.
2474         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
2475         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
2476         * libtoolize.m4sh: Likewise.
2478 2009-12-30  Peter Rosin  <peda@lysator.liu.se>
2480         * libltdl/ltdl.c (lt_dlerror): Remove meaningless conditional.
2482 2009-12-29  Peter Rosin  <peda@lysator.liu.se>
2484         * libltdl/ltdl.c (file_not_found): Fix typos in code comment.
2486 2009-12-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2488         Replace last __oline__ instance.
2489         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Replace last
2490         __oline__ instance with $LINENO.
2492 2009-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2494         Improve parsing of .la files in libltdl.
2495         * libltdl/ltdl.c (trim): Do not dump core upon missing quote in
2496         module .la file.
2497         * tests/lalib-syntax.at (syntax of .la files): New file, new
2498         test.
2499         * Makefile.am (TESTSUITE_AT): Add tests/lalib-syntax.at.
2500         Report by Bob Friesenhahn.
2502 2009-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2504         Sane fallback initialization of $ECHO from $as_echo.
2505         * libltdl/config/general.m4sh: Use 'printf %s\n' if $as_echo is
2506         unset.
2507         * tests/testsuite.at: Likewise.
2508         * THANKS: Update.
2509         Report by Vadim Zeitlin and Peter Rosin.
2511 2009-12-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2513         lt_dlloader_remove and lt_dlloader_find accept const arguments.
2514         * libltdl/lt_dlloader.c (lt_dlloader_remove, lt_dlloader_find):
2515         Accept `const char *' arguments, as documented.  Cast them to
2516         `void *' for the slist machinery.
2517         * libltdl/libltdl/lt_dlloader.h: Adjust prototypes.
2519         Test and fix slist.c.
2520         * libltdl/libltdl/slist.h: Include stddef.h, for size_t.
2521         (slist_remove): Return pointer to SList, not void.
2522         * libltdl/slist.c: Include stdlib.h, for malloc and free.
2523         (slist_remove): Adjust prototype as above.
2524         (slist_sort): Do not loop forever on one-item list.
2525         * tests/slist.at (SList functionality): New file, new test.
2526         * Makefile.am (TESTSUITE_AT): Add tests/slist.at.
2528 2009-11-30  Peter Rosin  <peda@lysator.liu.se>
2530         Please C++ compilers when calling strrchr.
2531         * libltdl/ltdl.c (has_library_ext): Match the return type of
2532         strrchr with the first argument to please C++ compilers.
2533         Report by Peter O'Gorman.
2535 2009-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2537         Fix bindir and dlopen tests for C++ compilers (CC=g++).
2538         * tests/bindir.at (bindir basic lib test, bindir install tests):
2539         Include stdlib.h rather than declaring abort.
2540         * tests/lt_dlopenext.at (lt_dlopenext error messages): Use
2541         `extern "C"' annotation for dlsym'ed function in C++ mode.
2543 2009-11-25  Peter Rosin  <peda@lysator.liu.se>
2545         Fix cross build issue in execute mode test.
2546         * tests/execute-mode.at: Skip test for cross builds.
2548 2009-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2550         Enable symbol versioning with the GNU gold linker.
2551         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Accept 'GNU gold'
2552         in the version string.
2553         * NEWS, THANKS: Update.
2554         Report by Peter Fritzsche.
2556         Tighten regex for Portland C++ compiler for version 10.
2557         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [linux]:
2558         Match a dot after version 1 through 5, so 10 and up don't match,
2559         and use weak symbols.
2560         * THANKS: Update.
2561         Report by Jeff Squyres and Brent Leback.
2563 2009-11-16  Peter O'Gorman  <peter@pogma.com>
2565         Update libltdl version to match 2.2.6b release.
2566         * libltdl/Makefile.inc: Make version 9:1:2
2568 2009-11-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2570         Don't load module.la from current directory by default.
2571         * libltdl/ltdl.c (try_dlopen): Do not attempt to load an
2572         unqualified module.la file from the current directory (by
2573         default) since doing so is insecure and is not compliant with
2574         the documentation.
2575         * tests/testsuite.at: Qualify access to module.la file in
2576         current directory so that test passes.
2578 2009-11-14  Peter O'Gorman  <peter@pogma.com>
2580         Only use preopen loader to load preopened archives
2581         * libltdl/ltdl.c: Limit checking of .a to preopen loader.
2582         * tests/lt_dlopen_a.at: Add test.
2583         * Makefile.am: Add test.
2585 2009-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2587         Recognize `pgfortran' as Portland compiler.
2588         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS):
2589         Accept `pgfortran*' too.
2590         Report by Jeff Squyres.
2592 2009-11-04  Alexandre Oliva  <aoliva@redhat.com>
2593             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2595         Fix verbose link extraction for multiply reconfigured GCC.
2596         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
2597         <output_verbose_link_cmd>: Drop GCC lines "Configured with" that
2598         may contain unrelated flags.
2600 2009-11-02  Eric Blake  <ebb9@byu.net>
2602         Allow gcc builds with -Wall -Werror.
2603         * libltdl/ltdl.c (try_dlopen): Use strlen rather than LT_STRLEN on
2604         an array that will never be NULL.
2606 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2608         Fix func_normal_abspath sed script for Solaris.
2609         * libltdl/config/general.m4sh (pathcar, pathcdr, removedotparts)
2610         (collapseslashes, finalslash): Use single quotes, for clarity.
2611         (removedotparts): Avoid \{N,M\} after subexpression \(...\), for
2612         Solaris /bin/sed.
2614         Improve versioning algorithm documentation.
2615         * doc/libtool.texi (Updating version info): Repeat the
2616         algorithms in different, hopefully simpler terms.
2617         * THANKS: Update.
2618         Prompted by Richard B. Kreckel.
2620 2009-11-01  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
2622         Support for the Haiku operating system.
2623         * libltdl/config/ltmain.m4sh (func_mode_link): Add cases for
2624         `*-*-haiku*' alongside `*-*-beos*'.
2625         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
2626         (_LT_CHECK_MAGIC_METHOD, LT_LIB_M, _LT_COMPILER_PIC)
2627         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Add cases for
2628         `haiku*'.
2629         * NEWS, THANKS: Update.
2631 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2633         Fix quoting of AS, DLLTOOL, and OBJDUMP for the libtool script.
2634         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Quote values of
2635         $AS, $DLLTOOL, and $OBJDUMP, so they can contain arguments.
2636         * THANKS: Update.
2637         Report by Matthijs Kooijman.
2639 2009-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2641         Initial support for the Cuda Compiler Driver on Linux.
2642         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept source
2643         file extensions `.cu' and `.cup'.
2644         * libltdl/m4/libtool.m4 (_LT_COMPILER_NO_RTTI, _LT_COMPILER_PIC)
2645         (_LT_LINKER_SHLIBS): Support for `nvcc' compiler driver.
2646         * NEWS, THANKS: Update.
2647         Report by Mahesh Narayanamurthi.
2649 2009-09-12  Dave Korn  <dave.korn.cygwin@googlemail.com>
2651         Control where win32 DLLs get installed.
2652         * libltdl/config/general.m4sh (func_normal_abspath): New function.
2653         (func_relative_path): Likewise.
2654         * libltdl/config/ltmain.m4sh (func_mode_help): Document "-bindir".
2655         (func_mode_link): Accept new "-bindir" option and use it, if
2656         supplied, to place Windows DLLs.
2657         * tests/bindir.at: New file for install tests using "-bindir".
2658         * Makefile.am (TESTSUITE_AT): Add bindir.at.
2659         * doc/libtool.texi (Link Mode): Update documentation.
2660         * NEWS, THANKS: Update.
2662 2009-09-11  Akim Demaille  <demaille@gostai.com>
2664         libtool: clean libconftest.a.
2665         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Here.
2667 2009-09-10  Peter Rosin  <peda@lysator.liu.se>
2669         func_win32_libid doesn't work with MS dumpbin
2670         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): The $NM
2671         interface is assumed to be BSD nm in func_win32_libid, so
2672         check for that before using it.
2674 2009-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2676         Allow dlopen self test to work with gcc's -fvisibility=hidden.
2677         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Declare default
2678         visibility for the symbol we are going to test dlopen (NULL)
2679         when a GCC version is used that understands the visibility
2680         attribute, under the assumption that if -fvisibility=hidden
2681         will be used, the user code will be sufficiently annotated
2682         for visibility of needed symbols from the main executable.
2683         * THANKS: Update.
2684         Report by Josh Hursey against OpenMPI.
2686         Fix and split recent testsuite addition for compile/link flags.
2687         * tests/flags.at (passing flags through libtool): Split into ...
2688         (passing CC flags through libtool)
2689         (passing CXX flags through libtool)
2690         (passing F77 flags through libtool)
2691         (passing FC flags through libtool)
2692         (passing GCJ flags through libtool): ... these five tests,
2693         factorized with m4_foreach.  Fix F77 and FC compile and link
2694         commands; add GCJ tag.  Use LT_AT_TAG to correctly skip tags
2695         for which no compiler exists.  Use $EXEEXT where appropriate.
2696         Drop unneeded use of reload_cmds.
2697         Reports by Peter Rosin and Peter O'Gorman.
2699 2009-09-07  Peter O'Gorman  <peter@pogma.com
2701         Fix redirect in test case.
2702         * tests/darwin.at: Fix stderr redirect.
2704         Use darwin's -force_load flag if available for whole_archive_flag_spec
2705         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check for
2706         -force_load and use it if there.
2707         * tests/darwin.at: Add a simple test.
2709 2009-09-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2711         Testsuite keyword 'interactive' and check-* rules.
2712         * Makefile.am (testsuite_deps, testsuite_deps_uninstalled):
2713         New variables.
2714         (check-local, installcheck-local): Use them.
2715         (check-interactive, check-noninteractive): New rules.
2716         * tests/link-order2.at (Link order of deplibs),
2717         tests/static.at (static linking flags for programs): Add keyword
2718         `interactive'.
2719         * doc/libtool.texi (Test descriptions): Document all keywords
2720         used in the Libtool test suite.
2721         * NEWS: Update.
2723         Fix failure test in the presence of --with-pic or -prefer-pic.
2724         * tests/fail.at (Failure tests): Run non-PIC failure test only
2725         if pic_mode is 'default' or 'no', rather than 'default' or 'yes'
2726         and also -prefer-pic has not been passed in $CFLAGS.
2727         * THANKS: Update.
2728         Report by Donn Washburn.
2730         Add testsuite exposure for passing of compiler and linker flags.
2731         * tests/flags.at (passing flags through libtool): New file, new
2732         test, for bug fixed in previous commit.
2733         * Makefile.am (TESTSUITE_AT): Add tests/flags.at.
2735 2009-09-04  Peter Rosin  <peda@lysator.liu.se>
2737         Make -Wc,FLAG behave like -Xcompiler FLAG in link mode.
2738         * libltdl/config/ltmain.m4sh (func_mode_link): Remove "-Wc,"
2739         instead of replacing it with "$wl" when linking programs
2740         through the compiler driver, just as is the case when linking
2741         libraries.
2742         * NEWS: Update.
2744 2009-08-23  Lennart Poettering  <lennart@poettering.net>  (tiny change)
2746         Shut up prototype warnings with recent GCC and -Wstrict-prototypes.
2747         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Use recent
2748         GCC's diagnostic pragma to override a -Wstrict-prototypes
2749         setting for the symbol list code.
2750         * THANKS: Update.
2752 2009-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2754         Remove __oline__ from macros, for less spurious configure diffs.
2755         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
2756         (_LT_COMPILER_C_O, LT_PATH_NM): Replace __oline__ instances with
2757         $LINENO.
2758         * NEWS: Update.
2760 2009-07-24  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
2762         Fixup 'execute mode' test for w32.
2763         * tests/execute-mode.at (execute mode): Add missing $EXEEXT.
2764         (LDFLAGS): Add -no-undefined.
2766 2009-07-01  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
2767             Charles Wilson  <libtool@cwilson.fastmail.fm>
2769         [CXX] Use correct export_dynamic_flag_spec for PE-COFF $hosts
2770         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [cygwin*|mingw*|pw32*|cegcc*]:
2771         Define export_dynamic_flag_spec as -Wl,--export-all-symbols here as well
2772         (see commit 5f2bbb494a2753afb2878c399cfd8316b7403a5b).
2774 2009-06-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
2776         [mingw] Improve sys_lib_search_path_spec detection.
2777         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Fix handling
2778         of dos-style paths when parsing $CC -print-search-dirs output.
2780 2009-06-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
2782         Finish adding alias for obsoleted AC_LIBTOOL_RC macro.
2783         * libltdl/m4/libtool.m4: Add reminder comment concerning
2784         aclocal-1.4 backwards compatibility.
2785         * libltdl/m4/lt~obsolete.m4: Remove unnecessary AC_DEFUN.
2787 2009-06-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
2789         Add alias for obsoleted AC_LIBTOOL_RC macro.
2790         * libltdl/m4/libtool.m4: Add alias for obsoleted
2791         macro AC_LIBTOOL_RC.
2793 2009-06-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
2795         Remove unneeded functions and options from cwrapper
2796         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
2797         [lt_opt_process_env_set]: Remove.
2798         [lt_opt_process_env_prepend]: Remove.
2799         [lt_opt_process_env_append]: Remove.
2800         [lt_split_name_value]: Remove.
2801         [file scope]: Don't declare removed functions. Remove
2802         constants and defines related to eliminated commandline
2803         options.
2804         [main]: Remove code related to eliminated commandline
2805         options --lt-env-set, --lt-env-prepend, --lt-env-append.
2807 2009-06-19  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
2808             Charles Wilson  <libtool@cwilson.fastmail.fm>
2810         Ensure LT_PATH_LD works when called before LT_INIT
2811         * libltdl/m4/libtool.m4 (LT_PATH_LD): AC_REQUIRE _LT_PROG_ECHO_BACKSLASH.
2813 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2815         Add versioning tests.
2816         * tests/versioning.at (versioning): New file, new test.
2817         * Makefile.am (TESTSUITE_AT): Adjust.
2818         Prompted by bug report from Mike Gorchak.
2820 2009-06-14  Mike Gorchak  <mike@malva.ua>  (tiny change)
2821             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2823         Fix versioning computation for QNX.
2824         * libltdl/config/ltmain.m4sh (func_mode_link): Set `$current'
2825         and `$age' properly for version_type `qnx'.
2827 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2829         Avoid spurious localization testsuite failure on HP-UX/ia64.
2830         * tests/localization.at (localized compiler messages): Skip test
2831         if the compiler warning output contains `locale', for HP-UX.
2833 2009-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2835         Fix concurrent extraction of convenience libraries on Darwin.
2836         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): New libtool
2837         variable `lock_old_archive_extraction', set to `yes' on darwin.
2838         * doc/libtool.texi (libtool script contents): Document it.
2839         * libltdl/config/ltmain.m4sh (func_extract_an_archive): Lock
2840         `ar x' invocation if `lock_old_archive_extraction' is yes.
2841         * tests/darwin.at (darwin concurrent library extraction): New
2842         test.
2843         * NEWS: Update.
2844         Report by Akim Demaille.
2846 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2848         Fix testsuite failure of lt_dlopenadvise test on FreeMiNT.
2849         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Do not
2850         build moddepend for systems without shared libraries.
2851         Report by Alan Hourihane.
2853         testsuite: avoid failures due to old Automake.
2854         * tests/configure-iface.at (installable libltdl)
2855         (--with-ltdl-include/lib, --with-included-ltdl):
2856         Speficy libmodule_la_SOURCES in Makefile.am as the default
2857         source file naming scheme changed in Automake 1.8.
2858         * tests/nonrecursive.at (_LT_AT_LTDL_SETUP): Require Automake
2859         1.9.6.
2860         * THANKS: Update.
2861         Report by Robert Garron.
2863         testsuite: add missing @LIBS@ in a link command line.
2864         * tests/old-m4-iface.at (AC_WITH_LTDL): Use @LIBS@ when linking.
2865         Report by Patrice Fromy.
2867         testsuite: cope when some installed libltdl.la has been removed.
2868         * tests/old-m4-iface.at (AC_WITH_LTDL): Pass --with-included-ltdl
2869         to configure, to ensure we do not accidentally link against a
2870         previously installed libltdl.so where the corresponding .la
2871         file has been removed, thus we do not add a run path, and the
2872         runtime linker then fails to find libltdl.so.7.
2873         * tests/configure-iface.at (--with-ltdl-include/lib): Remove -L
2874         flags from LDFLAGS to avoid picking up an installed libltdl
2875         outside of the default locations.
2876         * THANKS: Update.
2877         Prompted by report from Patrice Fromy.
2879 2009-06-07  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
2881         Fix C wrapper invocation for ceGCC hosts (cegcc and mingw32ce).
2882         * libltdl/config/ltmain.m4sh (func_mode_link): do not generate
2883         C wrapper for cegcc and mingw32ce hosts.
2884         (func_emit_cwrapperexe_src): remove useless check on
2885         __MINGW32CE__.
2887 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2889         Don't pick up double-quotes from /etc/ld.so.conf on Ubuntu.
2890         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
2891         <sys_lib_dlsearch_path_spec>: Remove embedded double quotes from
2892         paths picked up from /etc/ld.so.conf.  Fixes libltdl compile
2893         failure on Ubuntu 7.10.
2894         * THANKS: Update.
2895         Report by Camilo La Rota.
2897 2009-06-06  Richard Sandiford  <richards@transitive.com>
2899         Fix GNU nm invocation for AIX.
2900         * libldtl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
2901         <export_symbols_cmds>: Modify the GNU-nm-on-AIX version so that
2902         it adds weak defined symbols to the export list.
2904         Build AIX shared libraries with binutils 2.19.50+.
2905         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
2906         <lt_use_gnu_ld_interface>: New variable to control whether the
2907         GNU ld or native ld interface is used.  Set to "no" for GNU ld
2908         2.19.50+ on AIX, otherwise mirror $with_gnu_ld.  Update the
2909         warning message that is printed when using GNU ld on AIX.
2910         Adjust the whole_archive_flag_spec value for GNU ld on AIX.
2911         * NEWS, THANKS: Update.
2913 2009-05-27  Peter O'Gorman  <peter@pogma.com>
2915         Don't run compiler checks twice.
2916         libltdl/m4/libtool.m4 (_LT_PROG_FC, _LT_PROG_F77,
2917         _LT_PROG_CXX): Remove these macros.
2918         libltdl/m4/lt~obsolete.m4: Add removed macros here.
2919         libltdl/m4/libtool.m4 (_LT_LANG_FC_CONFIG, _LT_LANG_F77_CONFIG,
2920         _LT_LANG_CXX_CONFIG): Remove references to removed macros, and
2921         move functionality here.
2922         NEWS: Update.
2924 2009-05-05  Rainer Emrich  <r.emrich@de.tecosim.com>  (tiny change)
2925             Peter Rosin  <peda@lysator.liu.se>
2926             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2928         Fix cross compilation for HPPA/64 with a BSD file command.
2929         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
2930         [hpux10.20*, hpux11*, !ia64] <lt_cv_deplibs_check_method>:
2931         Match the dot in `PA-RISC 2.0' literally.  Adjust hppa*64*
2932         pattern to also match BSD `file' output, used in cross
2933         compilation setups.
2934         * THANKS: Update.
2935         Report and initial patch by Rainer Emrich, refined by Peter
2936         Rosin.
2938 2009-05-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2940         libtoolize: ignore trailing junk on scriptversion line.
2941         * libtoolize.m4sh (func_install_update): Ignore semi-colon or
2942         comment-sign and all following characters when parsing a
2943         `scriptversion' line in one of the auxiliary scripts; recent
2944         Automake-provided script have a stylized comment to induce
2945         Emacs to use UTC.
2946         Exposed by the `libtoolize config files serial update' test.
2948 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2950         Skip localization test when setlocale is not functional.
2951         * tests/localization.at (localized compiler messages): Skip
2952         test when there is a warning about `LC_ALL'.
2953         * THANKS: Update.
2954         Report by Maciej Helminiak.
2956 2009-05-02  Alan Hourihane  <alanh@fairlite.co.uk>  (tiny change)
2958         Improved support for FreeMiNT.
2959         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [mint]: Hard-code
2960         command line length limit to 8192, to avoid long test.
2961         * NEWS, THANKS: Update.
2963 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2965         Initial port for BlueGene BG/L.
2966         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
2967         (_LT_LANG_CXX_CONFIG) [linux]: Detect bgxl*, bgf*, mpixl*
2968         compilers.
2969         * NEWS, THANKS: Update.
2970         Report, feedback and testing by John R. Cary and Christian
2971         Rössel.
2973         manual: fix grammaros.
2974         * doc/libtool.texi (Dlpreopening): Fix grammaro.
2975         (C header files): Remove duplicate word.
2977         Allow through -tp=* at link time, for pgcc.
2978         * libltdl/config/ltmain.m4sh (func_mode_link): Portlant Group
2979         pgcc uses `-tp=PROCESSOR' for target processor selection; allow
2980         the flag through at link time.
2981         Report by Ethan Mallove.
2983         Fix quoting of eval'ed variable.
2984         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Double-quote
2985         $lt_cv_sys_global_symbol_pipe for eval, like we do in ltmain,
2986         in order to preserve TABs and multiple adjacent whitespace.
2987         Report by Bruno Haible.
2989 2009-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2991         Cope better with missing `makeinfo' in `bootstrap'.
2992         * bootstrap: Update `./doc/notes.txt' last so missing `makeinfo'
2993         does not cause a broken tree.
2994         * THANKS: Update.
2995         Report by Christian Rössel.
2997 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
2998             Charles Wilson  <libtool@cwilson.fastmail.fm>
3000         [cygwin] Improve operation with gcc4
3001         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [cygwin*]:
3002         Add w32api to sys_lib_search_path_spec without overriding gcc's
3003         own search path.
3005 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
3006             Charles Wilson  <libtool@cwilson.fastmail.fm>
3008         Use correct export_dynamic_flag_spec for PE-COFF $hosts
3009         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) 
3010         [cygwin*|mingw*|pw32*|cegcc*]: Define export_dynamic_flag_spec
3011         as -Wl,--export-all-symbols, as required by GNU ld for PE-COFF.
3013 2009-03-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
3015         Improve compatibility with older automake
3016         * libltdl/m4/lt~obsolete.m4: Add AC_DEFUNs for
3017         _LT_PREPARE_SED_QUOTE_VARS and _LT_PROG_ECHO_BACKSLASH.
3018         Report by Yaakov Selkowitz.
3020 2009-03-20  Peter Rosin  <peda@lysator.liu.se>
3022         LT_OUTPUT should always create the libtool script.
3023         * libltdl/m4/libtool.m4 (LT_OUTPUT): Make LT_OUTPUT ignore the
3024         --no-create configure option, and assume that the user wants
3025         to use an up-to-date libtool script if the LT_OUTPUT macro is
3026         present.
3027         * tests/early-libtool.at: Make sure we do not regress.
3029 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
3031         Don't settle for any dumpbin/link program as name lister.
3032         * libltdl/m4/libtool.m4 (LT_PATH_NM): When locating dumpbin or
3033         link -dump, check if they appear to really be capable of name
3034         listing, in order to eliminate e.g. link from coreutils. This
3035         makes the name lister decision fall back on nm as the default if
3036         no acceptable candidate is found, which mainly happens on
3037         (arguably broken) cross compiles.
3038         * NEWS: Update
3039         * THANKS: Update
3040         Reports by Rudolf Leitgeb and Peter Kjellerstedt.
3042 2009-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3044         Document INNER_TESTSUITEFLAGS, drop leading space.
3045         * README: Document INNER_TESTSUITEFLAGS.
3046         * tests/cmdline_wrap.at (Run tests with low max_cmd_len):
3047         When using INNER_TESTSUITEFLAGS on the testsuite invocation,
3048         drop leading space after "-k libtool", so that the user may
3049         further limit the set of tests to be run.
3051 2009-03-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3053         Fix low max_cmd_len template test on UnixWare.
3054         * libltdl/config/ltmain.m4sh (func_mode_link): When expanding
3055         $reload_cmds, always put objects in $reload_objs rather than
3056         adding them to the command line, to allow more general command
3057         lines in reload_cmds.  Ensure $reload_objs contains a leading
3058         space.
3059         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
3060         sco3.2v5*, sco5v6*] <reload_cmds>: For CC, invoke prelinker
3061         before creating reloadable object.
3062         (_LT_CMD_RELOAD) <reload_cmds, reload_flag>: Declare as
3063         _LT_TAGDECL, not _LC_DECL.
3064         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
3065         (_LT_LANG_GCJ_CONFIG) <reload_cmds, reload_flag>: Initialize
3066         from default (C tag) value.
3067         * THANKS: Update.
3068         Report and analysis by Tim Rice and John Wolfe.
3070 2009-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3072         * doc/libtool.texi (Distributing libltdl, Test descriptions):
3073         Add missing parentheses.
3075 2009-02-28  Tim Rice  <tim@multitalents.net>
3077         Fix C++ template handling for old archives on UnixWare 7.1.4.
3078         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
3079         sco3.2v5*, sco5v6*] <old_archive_cmds>: For CC, add template
3080         prelink step before archiving.  Fixes template.at test failures.
3082 2009-02-28  Török Edwin  <edwintorok@gmail.com>  (tiny change)
3083             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3085         Do not add bogus directory arguments to link command lines.
3086         * libltdl/config/ltmain.m4sh (func_mode_link): Ensure $path is
3087         always initialized before it is used.  Reported for zsh, for
3088         which $path contains $PATH entries even after "emulate sh", see
3089         <http://bugs.debian.org/517501>.
3091 2009-02-28  Andreas Schwab  <schwab@suse.de>
3092             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3094         Remove remaining references to CVS.
3095         * bootstrap: Remove references to CVS.
3096         * README.alpha: Likewise.
3097         * clcommit.m4sh: Likewise.
3098         * doc/libtool.texi: Bump copyright years.
3099         (libtool script contents): Describe macro_revision as revision
3100         without reference to CVS.
3102 2009-02-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3104         Do not pass $INSTALL via TESTS_ENVIRONMENT.
3105         * Makefile.am (TESTS_ENVIRONMENT): Set lt_INSTALL, not INSTALL,
3106         so that a bogus relative path to the install-sh script in the
3107         source tree is not propagated to the configure scripts of the
3108         old test suite.
3109         * tests/testsuite.at: Adjust.
3110         * tests/install.at (Install tests): Likewise.
3112 2009-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3113             Kurt Roeckx <kurt@roeckx.be>
3115         New test for lt_dlopenext error message.
3116         * tests/lt_dlopenext.at (lt_dlopenext error messages): New file,
3117         with new test, with sources taken from the Autobook example.
3118         * Makefile.am: Update.
3120 2009-02-03  Kurt Roeckx <kurt@roeckx.be>
3122         lt_dlopenext sets error upon successful library load.
3123         * libltdl/ltdl.c (lt_dlopenadvise): Fix bogus error on
3124         successful loading of library with lt_dlopenext.
3125         Report by Kaiwang Chen in <http://bugs.debian.org/510006>.
3127 2009-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3129         Fix sed script in install.at.
3130         * tests/install.at (Install tests): Fix typo in sed script,
3131         fixes test failure on HP-UX.
3133         Fix $INSTALL in testsuite with relative path to install-sh.
3134         * tests/testsuite.at: If `$INSTALL' points to in-tree
3135         install-sh, override a possibly-relative path to it with an
3136         absolute one.
3138         install mode: do not pass `-m $install_override_mode' to cp.
3139         * libltdl/config/ltmain.m4sh (func_mode_install): New variable
3140         $install_cp, factor test when `cp' is used for installation.
3141         Do not pass mode override to cp.  Fixes `libtool --mode=install
3142         cp ...' on HP-UX; cp should not be used for libraries that might
3143         be needed by programs invoked during the installation process.
3145         Fix sed script portability issue in func_version.
3146         * libltdl/config/getopt.m4sh (func_version): Remove space in
3147         `/\./! {' sed command, to please HP-UX sed.
3149 2009-01-31  Jeff Squyres <jsquyres@cisco.com>
3150             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3152         New test for bogus lt_dlopen error message.
3153         * tests/lt_dlopen.at (lt_dlopen error messages): New file, new
3154         test, marked as XFAIL for now.
3155         * Makefile.am: Adjust.
3156         Report and reproducible test case by Jeff Squyres.
3158 2009-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3160         execute mode: do not transform *.lo or *.la arguments.
3161         * libltdl/config/ltmain.m4sh (func_mode_execute): Do not check
3162         arguments matching *.lo or *.la for script wrappers.
3163         * tests/execute-mode.at (execute mode): Add tests.
3164         * NEWS, THANKS: Update.
3165         Report by Paul Biggar.
3167         Nonexistent `main' does not guarantee link failure.
3168         * tests/fail.at (Failure tests): Use an unresolved symbol,
3169         rather than non-presence of `main', to provoke a link failure
3170         also on QNX.  Only check for failure of the libtool script if
3171         the link without libtool would have failed, too.
3172         Report by Mike Gorchak.
3174         Use AT_CHECK more liberally in duplicate members test.
3175         * tests/duplicate_members.at (duplicate members in archive
3176         tests): Wrap link commands in AT_CHECK, they might fail, as seen
3177         on QNX.
3178         * THANKS: Update.
3179         Report by Mike Gorchak.
3181 2009-01-30  Akim Demaille  <demaille@gostai.com>
3183         Fix cwrapper warnings from MSVC 2005.
3184         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
3185         [file scope]: define _CRT_SECURE_NO_DEPRECATE.
3187 2009-01-29  Akim Demaille  <demaille@gostai.com>
3189         Fix bootstrap with older libtool.m4 in reach of aclocal.
3190         * libltdl/m4/lt~obsolete.m4: Add stub definitions for
3191         _LT_REQUIRED_DARWIN_CHECKS and _LT_AC_PROG_CXXCPP.
3193         Fix func_exec_init.
3194         * tests/defs.m4sh (func_exec_init): Instead of using the undefined
3195         my_dir, call func_dirname_and_basename and use its result.
3196         (func_make): For consistency, don't use the useless local variable
3197         my_dir.
3199 2009-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3201         Document --mode short-hands better, and test them.
3202         * doc/libtool.texi (Invoking libtool): Give examples for using
3203         the `--mode=MODE' short-hand `MODE', or abbreviations thereof.
3204         * libltdl/config/ltmain.m4sh: Mention the short-hand for MODE
3205         in the --help output.
3206         * tests/help.at (mode short-hands): New test group.
3207         Suggestion by Bruno Haible.
3209         func_version copes with multi-line copyright headers.
3210         * libltdl/config/getopt.m4sh (func_version): Slurp in copyright
3211         lines until a period is found.
3212         * libltdl/config/ltmain.m4sh: Multi-line copyright is ok to use
3213         now.
3214         * tests/help.at (standard command line options): New file, new
3215         tests.  Make this test group the first one for libtool tests,
3216         moving the banner ...
3217         * tests/duplicate_members.at: ... from here.
3218         * Makefile.am (TESTSUITE_AT): Add tests/help.at.
3220 2009-01-29  Akim Demaille  <demaille@gostai.com>
3221             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3223         Normalize compiler output due to compiler wrappers.
3224         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT): New
3225         macro, to normalize ccache and distcc output.
3226         * tests/localization.at (localized compiler messages): Use it.
3228 2009-01-29  Peter Rosin  <peda@lysator.liu.se>
3230         Make modified libtool script in cwrapper test executable
3231         * tests/cwrapper.at: Make modified libtool script executable.
3232         Report by Roumen Petrov.
3234 2009-01-28  Akim Demaille  <demaille@gostai.com>
3236         Clean space uses.
3237         * libtoolize.m4sh: Remove trailing spaces.
3238         Use <tab><sp>, as some editors remove "useless" spaces in
3239         <sp><tab>.
3241 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
3243         AWK is required, make sure it is set.
3244         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS: Make sure
3245         AWK is set (automake brings it in, but is not always used).
3246         Fixes old-m4-iface.at on MSYS/MSVC.
3248 2009-01-25  Mike Frysinger  <vapier@gentoo.org>
3250         Fix typo in libtool install mode documentation.
3251         * libltdl/config/ltmain.m4sh (func_mode_help): Change -inst-prefix
3252         to -inst-prefix-dir.
3253         * doc/libtool.texi (Install mode): Likewise.
3255 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
3257         Add -Wall to cwrapper tests.
3258         * tests/cwrapper.at: Add -Wall existing tests. Add additional
3259         round of tests with -Wall alone.
3261 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
3263         [cygwin|mingw] cwrapper cleanups.
3264         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
3265         [file scope]: re-organized includes and portability
3266         macros. Avoid oldnames on MINGW32 and MSVC for
3267         setmode/stat/chmod/getcwd/putenv. Declare _putenv on
3268         MINGW32 when -ansi. Use namespaced macro LT_DEBUGWRAPPER.
3270 2009-01-24  Peter Rosin  <peda@lysator.liu.se>
3272         Expand exit status test in LT_AT_NOINST_EXEC_CHECK correctly
3273         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): STATUS is
3274         argument $3, not $2.
3276 2009-01-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
3278         Add tests for cwrapper with -std=c89 and -std=c99
3279         * tests/cwrapper.at: New file.
3280         * Makefile.am: Add tests/cwrapper.at.
3282 2009-01-22  Peter Rosin  <peda@lysator.liu.se>
3284         Unify line endings in localization test.
3285         * tests/testsuite.at: Update copyright year.
3286         (LT_AT_UNIFY_NL): Add macro that unifies line endings on
3287         platforms that suffer from such confusion.
3288         * tests/localization.at: Use it. Update copyright year. Fixes
3289         the test on MSYS/MSVC.
3291 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
3293         [cygwin|mingw] Fix compile warnings when -std=c89.
3294         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
3295         move contents to...
3296         (func_emit_wrapper_part2): move contents to...
3297         (func_emit_wrapper): here.
3298         (func_emit_cwrapperexe_src) [file scope]: Remove
3299         variables script_text_part1 and script_text_part2.
3300         (func_emit_cwrapperexe_src) [lt_dump_script]: New function.
3301         (func_emit_cwrapperexe_src) [main]: Call it.
3303 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
3305         Minor cygwin cleanup
3306         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Correct
3307         case pattern for cygwin.
3309 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3311         Avoid failure due to Cygwin path detection bug.
3312         * tests/execute-mode.at (execute mode): Ignore noise on stderr;
3313         Cygwin might consider `d\"e' to be a DOS-style path and warn.
3314         Report by Charles Wilson.
3316 2009-01-19  Robert Millan  <rmh@aybabtu.com>
3318         Support GNU/kOpenSolaris.
3319         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
3320         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
3321         (_LT_LANG_CXX_CONFIG) [kopensolaris*-gnu]: Recognize
3322         GNU/kOpenSolaris.
3323         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
3324         * NEWS, THANKS: Update.
3326 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3328         Another LT_AT_EXEC_CHECK fixup.
3329         * tests/shlibpath.at (shlibpath_overrides_runpath): Use
3330         LT_AT_EXEC_CHECK instead of AT_CHECK.
3332 2009-01-19  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
3334         Add missing $EXEEXT to java test.
3335         * tests/convenience.at (Java convenience archives): Add $EXEEXT.
3337 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3339         Bump copyright years.
3340         * ChangeLog.2008: New, rotated from ...
3341         * ChangeLog: ... here.
3342         * Makefile.am (EXTRA_DIST): Add ChangeLog.2008.
3343         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
3344         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
3345         * libtoolize.m4sh: Likewise.
3347 2009-01-14  Peter Rosin  <peda@lysator.liu.se>
3349         Fix flakey mdemo-dryrun test on MSYS (again!)
3350         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
3351         not time, for really fresh files. Add sleep 1 call at yet another
3352         strategic position. Makes the test pass reliably for MSYS/MinGW.
3354 2008-12-19  Akim Demaille  <demaille@gostai.com>
3356         Fix copyright notice.
3357         * libltdl/config/ltmain.m4sh: Add missing comma.
3359 2008-12-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3361         Add cache variables to link tests.
3362         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
3363         (_LT_LINKER_SHLIBS): Add cache variables to tests that
3364         require the linker to work.  For shlibpath_overrides_runpath,
3365         this also changes the semantics to let the result from the C
3366         compiler take precedence.
3367         * tests/no-executables.at (AC_NO_EXECUTABLES): New file.
3368         * Makefile.am: Update.
3369         * NEWS: Update.
3370         Report of shlibpath_overrides_runpath issue by Mike Frysinger,
3371         report of GCC issue by Andreas Schwab.
3373 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
3375         Fix inadvertent commit.
3376         * bootstrap: Revert.
3378 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
3380         Fix manual typo.
3381         * doc/libtool.texi (LT_INIT): Use correct config.status
3382         invocation.  Reported by Akim Demaille.
3384 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
3386         Do not use $ECHO within eval-ed `...`, as %s\\n becomes %s\n.
3387         * HACKING: Document func_echo_all.
3388         * libltdl/m4/libtool.m4: Use it within backticks that appear in
3389         eval-ed variables.  Reported by Akim Demaille.
3391 2008-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3393         Fix func_infer_tag $ECHO usage; some testsuite exposure.
3394         * libltdl/config/ltmain.m4sh (func_infer_tag): Use func_echo_all
3395         rather than $ECHO for possibly multiple arguments.
3396         * tests/infer-tag.at (inferred tag, CXX inferred tag)
3397         (F77 inferred tag, FC inferred tag, GCJ inferred tag): New file,
3398         new tests.
3399         * Makefile.am: Adjust.
3401         * tests/runpath-in-lalib.at (Runpath in libtool library files):
3402         Add $EXEEXT overlooked in patch yesterday.
3404 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3406         Fix expout and experr line ending issues.
3407         * tests/testsuite.at (LT_AT_HOST_DATA): Renamed from..
3408         (_LT_AT_TRANSLATE_TEXT_OUTPUT): ..this.
3409         (LT_AT_EXEC_CHECK, LT_AT_NOINST_EXEC_CHECK): Do not use
3410         _LT_AT_TRANSLATE_TEXT_OUTPUT any more.
3411         * tests/configure-iface.at: Use LT_AT_HOST_DATA instead of
3412         AT_DATA for `expout' files.
3413         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
3414         Likewise.
3415         * tests/need_lib_prefix.at (enforced lib prefix): Likewise.
3416         Report by Roumen Petrov.
3418         Relax link-order2 test for systems with partial wrong order.
3419         * tests/link-order2.at (Link order of deplibs.): On w32 (and
3420         others, e.g., AIX), the wrongly linked executable picks up only
3421         one instance of the bad function instead of two; relax the test
3422         to accept this; we still require the right link order with the
3423         correctly linked executable.
3424         Reported by Roumen Petrov and others.
3426 2008-11-23  Roumen Petrov  <bugtrack@roumenpetrov.info>
3427             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3429         Add $EXEEXT to all linked programs in the new testsuite.
3430         * tests/convenience.at, tests/ctor.at, tests/darwin.at,
3431         tests/deplibs-ident.at, tests/duplicate_conv.at,
3432         tests/duplicate_deps.at, tests/duplicate_members.at,
3433         tests/export.at, tests/fail.at, tests/indirect_deps.at,
3434         tests/inherited_flags.at, tests/link-order.at,
3435         tests/link-order2.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
3436         tests/need_lib_prefix.at, tests/runpath-in-lalib.at,
3437         tests/search-path.at, tests/shlibpath.at, tests/static.at,
3438         tests/stresstest.at, tests/template.at, tests/testsuite.at:
3439         Use $EXEEXT throughout, except in Makefile.am snippets where
3440         automake takes care of it, and in testsuite macros that take
3441         care of the extension.
3442         Reports by Roumen Petrov and Alon Bar-Lev.
3444 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3446         Adjust executable run tests to cwrapper changes.
3447         * tests/testsuite.at (LT_AT_EXEC_CHECK): Accept fifth argument
3448         ARGS-OR-STATUS-ADJUST, for command-line arguments and/or exit
3449         status flattening.  Rewrite to prefer the executable with the
3450         `.exe' prefix over one without.  Test exit status against
3451         expected exit status, not against zero, when determining whether
3452         this may be a cross-compilation-induced result.
3453         (LT_AT_NOINST_EXEC_CHECK): Likewise.
3454         * tests/static.at (static linking flags for programs): Adjust
3455         calls.
3456         Report by Roumen Petrov.
3458         No trailing period in Autotest test group names.
3459         * tests/link-order.at (Link order test): Drop trailing period
3460         from test name.
3461         * tests/link-order2.at (Link order of deplibs): Likewise.
3463 2008-11-23  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
3465         Fix func_emit_cwrapperexe_src for WinCE: no errno support.
3466         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
3467         [__MINGW32CE__]: Do not use errno, do not include errno.h and
3468         remove calls related to errno when using the mingw32ce compiler.
3470 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3472         No libm in WinCE.
3473         * libltdl/m4/libtool.m4 (LT_LIB_M) [cegcc*]: This system has
3474         only a dummy libm, ignore.
3475         Report by Vincent Torri.
3477         Fix import library detection for WinCE.
3478         * libltdl/config/ltmain.m4sh (func_win32_libid): Work for
3479         pe-arm-wince import libraries.
3480         * NEWS: Update.
3481         Report by Vincent Torri.
3483 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3484             Eric Blake  <ebb9@byu.net>
3486         Fix $ECHO test to not influence other _AS_DETECT_SUGGESTED code.
3487         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix test to
3488         not influence further tests registered with _AS_DETECT_SUGGESTED
3489         and do not use a PATH below /tmp, to avoid influence by a third
3490         party.
3492 2008-11-23  Alon Bar-Lev  <alon.barlev@gmail.com>  (tiny change)
3494         Fix func_win32_libid for 64-bit Windows.
3495         * libltdl/config/ltmain.m4sh (func_win32_libid): Accept file
3496         format 'pe-x86-64'.
3497         * NEWS: Update.
3499 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3501         Avoid newlines in some AT_CHECK commands.
3502         * tests/standalone.at (linking libltdl without autotools): Wrap
3503         lines with dnl, to avoid turning off tracing of AT_CHECK.
3504         * tests/subproject.at (linking libltdl without autotools):
3505         Likewise.
3507         Replace uses of $SED $basename.
3508         * libltdl/config/ltmain.m4sh (func_mode_link): Replace instances
3509         of `$ECHO ... | $SED' with calls to func_basename.
3510         * libtoolize.m4sh (func_copy, func_serial)
3511         (func_massage_aclocal_DATA): Likewise, replace with
3512         func_dirname_and_basename.
3513         * tests/defs.m4sh (func_configure_nofail, func_make, func_exec):
3514         Likewise.
3516         No need to prepend $progname with './'.
3517         * libltdl/config/general.m4sh (func_dirname_and_basename): $ECHO
3518         copes with leading hyphens now, so do not mangle $progname any
3519         more.
3521         Revenge of the $ECHO. Kill most uses of Xsed.
3522         * libltdl/config/general.m4sh: Replace all uses of `$ECHO "X..."
3523         | $Xsed' with `$ECHO "..." | $SED', and employ further trivial
3524         simplifications.  Replace $ECHO with echo where appropriate.
3525         (func_echo_all): New function.
3526         * libltdl/config/getopt.m4sh: Likewise simplifications.
3527         * libltdl/config/ltmain.m4sh: Likewise.
3528         * libltdl/m4/libtool.m4: Likewise.
3529         (LT_CMD_MAX_LEN): Use func_fallback_echo, to ensure that the
3530         command line is passed through an exec* function.
3531         * libtoolize.m4sh: Likewise simplifications.  Use func_echo_all
3532         to implement --dry-run.
3533         * tests/defs.m4sh: Likewise simplifications.
3534         * tests/quote.test: Likewise simplifications.
3536         Fix matching of Sun Fortran compiler on Linux.
3537         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: Also
3538         match `Sun Ceres Fortran' compiler; reorder with C compiler
3539         matching.
3540         * THANKS: Update.
3541         Report by Ethan Mallove.
3543 2008-11-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
3545         Fix --verbose option; add new --no-{silent|quiet|verbose} options.
3547         * libltdl/config/ltmain.m4sh (usage): Document
3548         new options --no-silent/--no-quiet and --no-verbose.
3549         (func_enable_tag): Handle new options.
3550         Modified --verbose to actually activate opt_verbose.
3551         New behavior: --silent disables both "normal" output and
3552         func_verbose output.  --verbose enables both "normal"
3553         output and func_verbose output. --no-silent enables
3554         "normal" output, but does not affect func_verbose output.
3555         --no-verbose disables func_verbose output, but does not
3556         affect "normal" output.
3557         * NEWS: announce new options --no-silent/--no-quiet, and
3558         --no-verbose.
3559         * doc/libtool.texi: document new options --no-silent/--no-quiet
3560         and --no-verbose.
3562 2008-11-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3564         Fix match patterns for cegcc*.
3565         * libltdl/config/ltmain.m4sh (func_mode_link): Match '*cegcc*'
3566         instead of '*cegcc' for $host_os.
3567         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Likewise.
3568         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
3569         Likewise.
3570         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Match
3571         '*-*-cegcc*' for $host.
3573         Ensure $ac_aux_dir is initialized for LIBTOOL_DEPS.
3574         * libltdl/m4/libtool.m4 (LT_INIT): Require
3575         AC_CONFIG_AUX_DIR_DEFAULT.
3576         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Amend test to
3577         expose this.
3578         Report, analysis, and test example by Jakub Bogusz.
3580         Check for bogus aclocal.m4 contents in bootstrap and dist-hook.
3581         * Makefile.am (dist-hook): Bail out if shipped aclocal.m4 files
3582         contain LT_INIT, AC_PROG_LIBTOOL, or AM_PROG_LIBTOOL macro
3583         definitions.  These can only come from bogus pull-ins from older
3584         installed Libtool macro files.
3585         * bootstrap: Likewise.
3586         Report by Akim Demaille.
3588 2008-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3590         Fix $ECHO abuse exposed by recent patch.
3591         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
3592         _LT_CHECK_SHELL_FEATURES, for $lt_NL2SP.  Always quote argument
3593         to $ECHO.
3595         Skip sys_lib_search_path on systems without libz.
3596         * tests/search-path.at (sys_lib_search_path): Autotest needs at
3597         least one AT_CHECK executed in a test group.  So if we haven't
3598         found -lz anywhere, as may happen with cross-compilers, skip the
3599         test.
3600         * THANKS: Update.
3601         Report by Alon Bar-Lev.
3603         Fix execute mode test to actually expose cwrapper failures.
3604         * tests/execute-mode.at (execute mode): Actually also test the
3605         cwrapper on the arguments.
3606         Report by Bruno Haible.
3608 2008-11-15  Charles Wilson  <libtool@cwilson.fastmail.fm>
3610         Add func_win32_import_lib_p.
3611         * libltdl/config/ltmain.m4sh (func_win32_import_lib_p):
3612         New function.
3614 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3616         Fix archive_cmds for older cc on HP-UX 11.
3617         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hp-ux11*, !GCC]
3618         [!hppa*64*, !ia64*] <archive_cmds>: Older releases of the HP-UX
3619         11.00 C compiler do not support -b yet; use a link test to
3620         decide whether $LD should be used for library creation.
3621         * THANKS: Update.
3622         Report by Daniel Richard G.
3624 2008-11-12  Paolo Bonzini  <bonzini@gnu.org>
3626         * configure.ac: Bump Autoconf requirement.
3627         * libltdl/config/general.m4sh: Use $as_echo as default $ECHO.
3628         * tests/testsuite.at: Use $as_echo as default $ECHO.
3630         * libltdl/m4/libtool.m4 (LT_INIT): Add _LT_SHELL_INIT to
3631         work around Autoconf <2.64 bug.
3632         (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT): Add func_fallback_echo.
3633         Eliminate lt_ECHO requoting.
3634         (_LT_SHELL_INIT): Use a public M4sh diversion.
3635         (_LT_PROG_ECHO_BACKSLASH): Rewrite.
3636         (LT_CMD_MAX_LEN): Do not use --fallback-echo.
3637         * libltdl/config/ltmain.m4sh: Remove --no-reexec and --fallback-echo
3638         handling.
3639         (func_fallback_echo): New.
3640         (func_emit_wrapper_part1): Quote ECHO.  Remove --no-reexec and
3641         --fallback-echo handling.
3642         (Execute mode): Do not set qecho.
3644 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3646         Use -no-undefined in install tests.
3647         * tests/install.at (Install tests): Use `-no-undefined'.
3649 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3651         Do not use `test ... -a ...'.
3652         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hpux10, hpux11]:
3653         Replace test -a with test && test.
3655 2008-11-11  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
3657         Fix destdir tests in cross compile mode.
3658         * tests/destdir.at (Simple DESTDIR install)
3659         (DESTDIR with in-package deplibs): Use $EXEEXT throughout.
3660         * THANKS: Update.
3662 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3664         Simplify cwrapper handling a bit.
3665         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1)
3666         (func_emit_wrapper_part2, func_to_host_path)
3667         (func_to_host_pathlist, func_emit_wrapper): Simplify using
3668         default argument, func_append.
3670 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
3672         Separate part of _LT_SETUP into other macros, detect ECHO sooner.
3673         * libltdl/m4/libtool.m4 (_LT_PREPARE_SED_QUOTE_VARS): New macro,
3674         extracted from...
3675         (_LT_SETUP): ... here.  Require _LT_PROG_ECHO_BACKSLASH sooner.
3677 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
3679         Fix quoting when config.status generates libtool config.
3680         * libltdl/m4libtool.m4 (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT):
3681         Double quote ECHO-ed variables.
3683 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
3685         Use documented M4sh interfaces.
3686         * clcommit.m4sh: Do not unset CDPATH, use AS_INIT and M4sh diversions.
3687         * libltdl/config/mailnotify.m4sh: Likewise.
3688         * libtoolize.m4sh: Likewise.
3689         * tests/defs.m4sh: Likewise.
3690         * tests/testsuite.at: Move AT_INIT invocation at the top.
3692         * libltdl/m4/libtool.m4 (_LT_INIT_GENERATED): New.
3693         (LT_OUTPUT): Use it.
3695         * libltdl/config/general.m4sh (M4SH_IN_HEADER): New.
3696         (progpath): Move setting before $0 could be clobbered.
3697         * libltdl/config/ltmain.m4sh (M4SH_IN_HEADER): New.
3699 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
3701         Run sh.test on the M4sh source.
3702         * tests/defs.m4sh (scripts): Point to pre-m4 sources.
3704 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
3706         Avoid that autom4te complains about unexpanded macros.
3707         * libtoolize.m4sh: Allow occurrences of "dnl" and use quadrigraphs
3708         to protect other m4 macros.
3710 2008-11-11  Bruno Haible  <bruno@clisp.org>
3711             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3713         Fix cwrapper argument mangling on w32.
3714         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): On
3715         mingw, preprocess the argument vector through prepare_spawn.
3716         * tests/execute-mode.at (execute mode): Output args
3717         newline-separated.  Extend tests by more argument pairs that
3718         contain special characters, where the w32 cwrapper fails.
3719         Also test a real compiled program, linked against an uninstalled
3720         library, to expose cwrapper issues.
3721         * NEWS: Update.
3723 2008-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3725         Update to GFDL 1.3.
3726         * doc/fdl.texi: Update to GFDL 1.3.
3727         * doc/libtool.texi: Adjust.
3728         * NEWS: Update.
3730 2008-11-09  Alexei Sheplyakov  <varg@theor.jinr.ru>  (tiny change)
3732         Fix cross compilation with wine for the case SHELL != bash.
3733         * libltdl/config/ltmain.m4sh (func_to_host_path): Avoid escape
3734         sequence interpretation by 'echo', for w32-style paths.
3735         * THANKS: Update.
3737 2008-10-28  Michael Haubenwallner  <michael.haubenwallner@salomon.at> (tiny change)
3739         Fix checks for unsupported allow_undefined_flag.
3740         * tests/tagdemo-undef.test: Match allow_undefined_flag
3741         correctly, for SKIPping.
3742         * tests/cdemo-undef.test: Likewise.
3744 2008-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3746         * tests/testsuite.at (_LTDL_PROJECT_FILES): Fix dependencies for
3747         parallel make.
3749         * libtoolize.m4sh (func_nonemptydir_p): Fix typo in error
3750         message.
3752 2008-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3754         Fix Autoconf 2.59 incompatibilty.
3755         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): m4_pattern_allow
3756         `LT_LIBEXT'; Autoconf 2.59's AC_DEFINE* macros didn't do this
3757         automatically yet.
3758         * NEWS, THANKS: Update.
3759         Report by Marcel Loose.
3761 2008-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3763         Atomic shared library install permissions on HP-UX.
3764         The HP-UX 11 runtime linker fails to mmap shared libraries
3765         without execute permissions.  Fixing them with postinstall_cmds
3766         may be too late, as ln, sed, and chmod may link against the
3767         library being installed.
3769         * libltdl/m4/libtool.m4 (install_override_mode): New LT_DECL.
3770         (_LT_SYS_DYNAMIC_LINKER) [hpux9*, hpux10*, hpux11*]: Set it.
3771         * libltdl/config/ltmain.m4sh (func_mode_install): Build a second
3772         command line, $install_shared_prog, for the installation of the
3773         shared library.  Override resp. set the permission mode if
3774         install_override_mode is nonempty.
3775         * doc/libtool.texi (libtool script contents): Document it.
3776         * tests/install.at (Install tests): New test.
3777         * Makefile.am (TESTSUITE_AT): Adjust.
3778         (TESTS_ENVIRONMENT): Pass INSTALL.
3779         Report by Bruno Haible.
3781 2008-09-26  Eric Blake  <ebb9@byu.net>
3783         Avoid gcc warning.
3784         * libltdl/loaders/loadlibrary.c (vm_open): Don't check for array
3785         being a NULL pointer.
3787 2008-09-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3789         Man pages for libtoolize and libtool, new command line option
3790         --help-all.
3791         * Makefile.am (dist_man1_MANS, update_mans): New macros.
3792         ($(srcdir)/doc/libtool.1, $(srcdir)/doc/libtoolize.1): New
3793         rules.  Use --help-all for libtool.
3794         (MAINTAINERCLEANFILES): New macro.  Add dist_man1_MANS.
3795         (BUILT_SOURCES): Add libtoolize.
3796         * configure.ac: Check for help2man, set HELP2MAN.
3797         * doc/libtool.texi: Add @direntry for libtool-invocation.
3798         (Invoking libtool): Document -h, --help-all.  Reorder mode
3799         description for consistency.
3800         (Compile mode): Do not document -Wl,FLAG and -XCClinker here.
3801         (Link mode): Document -Wc,FLAG here, reformat a bit.
3802         * libtoolize.m4sh: Reformat --help output a bit, to help
3803         help2man.
3804         * libltdl/config/ltmain.m4sh: Likewise.  Also, set PROGRAM to
3805         `libtool', not `ltmain.sh', so the former is used in the man
3806         page.
3807         New argument `--help-all'.  If given, call func_help and
3808         func_mode_help several times, beating output in shape with sed.
3809         (func_mode_help): Do not exit here.
3810         * libltdl/config/getopt.m4sh (func_usage): Work with different
3811         indentations, but require comment hash in first column, when
3812         grepping for '-h' in usage to end short help.
3813         (func_help): Accept optional argument to not exit.
3814         * NEWS, THANKS: Update.
3815         Suggestion by Karl Berry.
3817 2008-09-08  Gary V. Vaughan  <gary@gnu.org>
3819         Use `-version-info 9:0:2' for one added iface since 2.2.4.
3820         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Make the libltdl
3821         version number match 2.2.6a rerelease.
3823         Add ./commit option for pushing tags back to origin.
3824         * clcommit.m4sh (opt_tags): New --tags push option.
3825         (func_commit): Run `$GIT push --tags' if --tags was passed.
3826         * HACKING (Release Procedure): Note the requirement to pass
3827         --tags to ./commit for new release tag to be push back to
3828         origin.
3830 2008-09-07  Gary V. Vaughan  <gary@gnu.org>
3832         Retire gnu.org news.html in favour of savannah news.
3833         * HACKING (Release Procedure): Add instructions for sending
3834         a web release announcement to http://planet.gnu.org via
3835         the savannah news manager.
3837         Add untested git push conflict testing to commit script.
3838         * clcommit.m4sh (func_check_conflicts): Test return status
3839         of 'git push --dry-run', and display an error on non-zero.
3841         Enable release procedure to work with lzma OLDRELEASE file.
3842         * Makefile.maint (diffs, prev-tarball, new-tarball): If lzma
3843         tarballs are present use them to generate the diffs, otherwise
3844         use gz tarballs if they are present, or else complain if both
3845         are missing.
3847         Set SCM version number to 2.2.7a.
3848         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
3849         number to 2.2.7a.
3850         * NEWS: Updated.
3852         GNU Libtool 2.2.6 was released.
3854         Fix typo in Makefile.maint.
3855         * Makefile.maint (git-news): Renamed to check-news, since it
3856         doesn't actually run git.  Adjust all dependees.
3858         Run `git commit -a' when no files are passed.
3859         * clcommit.m4sh (func_commit): Add -a argument if necessary.
3861         Prepare for next stable release.
3862         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Update.
3863         * libltdl/m4/libtool.m4: Bump serial number to account for
3864         changes since 2.2.4 release.
3865         * INSTALL, config/config.guess, config/texinfo.tex: Updated
3866         from canonical source.
3867         * configure.ac (AM_INIT_AUTOMAKE): Specify dist-lzma, which
3868         was introduced after automake-1.10 was released.
3869         (abs_top_srcdir, abs_top_builddir): No need to substitute these
3870         from configure anymore, since we require automake 1.10.1, which
3871         does perform the substitutions properly.
3872         (TIMESTAMP): Normal releases were displaying the long-form
3873         timestamp.  Fix to show the short release timestamp as per
3874         alpha release numbers.
3875         * NEWS: Update with missing entries from ChangeLog.
3876         * HACKING (Release Procedure): We release lzma tarballs now
3877         but no xdeltas.
3878         * Makefile.maint: Updated to match Release Procedure
3879         instructions in HACKING.
3881         Convert mailnotify headers to git.
3882         * clcommit.m4sh: Improve mailnotify contents.
3884         Make ./commit useful again.
3885         * clcommit.m4sh: Major overhaul and simplification for git.
3887 2008-09-06  Gary V. Vaughan  <gary@gnu.org>
3889         Fix 'DISTCHECK_CONFIGURE_FLAGS=--program-prefix=g' bug.
3890         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Fix test failures
3891         with --program-prefix, where the test case output contains the
3892         transformed name somewhere other than the beginning of a line.
3893         * libtoolize.m4sh (func_check_macros): Be sure to always use
3894         the transformed name in output messages.
3896 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3898         Do not remove .gcno files when linking.
3899         * libltdl/config/ltmain.m4sh (func_mode_link): When removing
3900         potential output files before linking, do not remove *.gcno
3901         profile information GCC outputs next to object files in `.libs'.
3902         Report by Vincent Torri.
3904 2008-09-01  Peter O'Gorman  <peter@pogma.com>
3906         Revert 75142db4f8afc65ba7aae0ed80ea0b35bd9cc382 (AIX libltdl
3907         dlopen(NULL)
3909         * libltdl/m4/ltdl.m4: Remove LTDL_DLOPEN_SELF_WORKS define.
3910         * libltdl/loaders/dlopen.c: Remove LTDL_DLOPEN_SELF_WORKS check.
3911         * libltdl/m4/libtool.m4 [aix]: Set export_dynamic_flag_spec to
3912         -Wl,-bexpall. This is a temporary workaround until a real fix
3913         is implemented.
3914         * NEWS: document it.
3916 2008-08-26  Peter O'Gorman  <peter@pogma.com>
3918         Allow for extensions other than .a for preloaded modules.
3919         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define LT_LIBEXT.
3920         * libltdl/ltdl.c (lt_dladvise_preload): Use it.
3921         Reported by Ralf Wildenhues.
3923 2008-08-26  Peter O'Gorman  <peter@pogma.com>,
3924             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3926         Remove unnecessary global argz functions.
3927         * libltdl/argz.c (argz_add,argz_count): Remove.
3928         * libltdl/argz_.h (argz_add,argz_count): Remove.
3929         * NEWS: Announce it.
3930         * tests/ltdl-api.at: Test so we don't repeat it.
3931         * Makefile.am: Add new test.
3933 2008-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3935         Initial support for Lahey Fortran on GNU/Linux.
3936         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
3937         [linux] <lf95>: Add support for Lahey Fortran 8.1.
3938         * NEWS, THANKS: Update.
3939         Suggested by Craig Tierney.
3941 2008-08-21  Sam Thursfield  <ssssam@gmail.com>  (tiny change)
3943         Avoid leading separator in PATH for DLL search.
3944         * libltdl/config/ltmain.m4sh (func_mode_link) [cygwin, mingw]
3945         [ pw32, os2, cegcc]: Fix dllsearchpath not to contain leading
3946         separator.
3947         * THANKS: Update.
3949 2008-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3951         * libltdl/config/ltmain.m4sh (func_mode_link): Quote $#.
3953         Disallow `-L path', do not misparse it silently.
3954         * libltdl/config/ltmain.m4sh (func_mode_link): Diagnose `-L'
3955         without argument, and `-L path', i.e., with a space.
3956         * tests/fail.at (Failure tests): Test for these failures.
3957         * THANKS: Update.
3958         Report by Olaf Lenz.
3960 2008-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3962         Avoid test failure due to broken dlpreloading of shared library.
3963         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Drop
3964         some newlines in AT_CHECK commands, for better 'testsuite -x'
3965         output.  Only create a static installable libpreload.la, to
3966         avoid exposing the bug libtool currently has with preloading of
3967         shared libraries.  Add a note to revisit this later.
3969 2008-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3971         Parallel make testsuite fixes.
3972         * tests/configure-iface.at (installable libltdl)
3973         (--with-ltdl-include/lib, --with-included-ltdl): Add dlopened
3974         libmodule.la to main_DEPENDENCIES.
3975         * tests/old-m4-iface.at (AC_WITH_LTDL): Likewise, let ltdldemo
3976         depend upon module.la and libltdl/libltdlc.la.
3977         * tests/testsuite.at (LT_AT_MAKE): Invoke each target in turn,
3978         default to 'all'.
3979         * tests/early-libtool.at (config.lt): Define 'all' target.
3981         * HACKING: Update for git, fix some minor nits.
3983 2008-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3985         Remove use of exit in configure test sources.
3986         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Return from main,
3987         to avoid using undeclared exit.
3988         Report against OpenMPI from Coverity via Jeff Squyres.
3990         * tests/configure-iface.at (convenience libltdl): Ignore warning
3991         from parallel make.
3993 2008-08-07  DJ Delorie  <dj@redhat.com>
3995         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [tpf]
3996         <library_names_spec>: Fix typo in variable name.
3998 2008-08-06  Steve Ellcey  <sje@cup.hp.com>
4000         Use -fPIC with GCC on HP-UX/ia64.
4001         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
4002         [ia64-*-hpux*]: Specify -fPIC when using GCC to build shared
4003         libraries.
4005 2008-08-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4007         * NEWS: Minor fixups.
4009 2008-08-01  Gary V. Vaughan  <gary@gnu.org>
4011         Bring NEWS up to date.
4012         * NEWS: Add missing summaries since 2.2.4 release.
4014         Implement lt_dlopening of only preloaded modules.
4015         * libltdl/m4/ltdl.m4 (LTDL_INIT): Check for a libltdl that
4016         provides lt_dladvise_preopen when deciding if installed libltdl
4017         is 'new enough'.
4018         * libltdl/libltdl/lt__private.h (lt__advise): Add a new
4019         is_preload flag.
4020         * libltdl/ltdl.c (lt_dladvise_preload): New api call to set it.
4021         (try_dlopen): If it is set, and the search of preloaded modules
4022         didn't return a match, don't bother searching the filesystem.
4023         * libltdl/ltdl.h (lt_dladvise_preload): Declare it.
4024         * doc/libtool.texi (Libltdl Interface): Document it.
4025         * tests/lt_dladvise.at: Test it (and incidentally add some test
4026         coverage for `libtool -dlpreopen').
4027         * NEWS: Announce it.
4029 2008-08-01  Vincent Torri  <doursse@users.sf.net>
4031         Add cegcc (Windows CE/PocketPC) support.
4032         * libltdl/config/ltmain.m4sh: Add 'cegcc' case where needed.
4033         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, LT_SYS_DLOPEN_SELF)
4034         (_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
4035         (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
4036         (_LT_LANG_CXX_CONFIG): Likewise.
4037         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Likewise.
4038         * NEWS: Update.
4039         * THANKS: Update.
4041 2008-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4043         * libltdl/config/ltmain.m4sh (func_to_host_path): Fix sh.test
4044         failure.
4045         Report by Paolo Bonzini.
4047 2008-07-31  Paolo Bonzini  <bonzini@gnu.org>
4049         * ltmain.m4sh (func_emit_cwrapperexe_src): Factor
4050         multiple closed braces into the next cat command.
4052 2008-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4054         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <icc, icpc>:
4055         Use -fPIC, newer Intel compilers (icc 10, ifort 9) reject -KPIC.
4056         * tests/localization.at: Skip test if the compiler fails merely
4057         due to the locale setting.
4058         * THANKS: Update.
4059         Report by Vincent Lefevre.
4061 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4063         * doc/libtool.texi (Linking executables, Static libraries)
4064         (Modules for libltdl, Distributing libltdl): Remove TABs from
4065         the manual.
4067 2008-06-13  Peter O'Gorman  <peter@pogma.com>
4069         Support ifort on darwin.
4070         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Build
4071         shared libraries with ifort.
4072         Reported by Christopher Hulbert.
4074 2008-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
4076         [mingw] fix cross-compile-with-wine case
4077         * libltdl/config/ltmain.m4sh (func_to_host_path)
4078         [host=mingw, build!=mingw|cygwin]: check that winepath
4079         stdout is non-empty and exit code is 0, instead of checking
4080         stderr.
4081         Reported by: Roumen Petrov
4083 2006-06-01  Stas Maximov  <smaximov@ieee.org>  (tiny change)
4085         Check only regular files, not devices, for lalibs.
4086         * libltdl/config/ltmain.m4sh (functions func_lalib_p)
4087         (func_lalib_unsafe_p): Only read regular files and not device
4088         files.  Avoids blocking libtool executing gdb, when a
4089         pseudo-terminal device /dev/pts/NN is given as one of the
4090         arguments to gdb, as in:
4091         libtool --mode=execute gdb -q -nw -i mi -tty /dev/pts/4 prog
4093 2008-05-31  Peter O'Gorman  <peter@pogma.com>
4095         Skip darwin test if fat link fails.
4096         * tests/darwin.at: Skip if we can not link a fat program.
4097         Reported by Daniel Macks <dmacks@netspace.org>
4099 2008-05-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4101         libtoolize should not remove config.guess, config.sub.
4102         * libtoolize.m4sh (all_pkgconfig_files): Do not list
4103         config.guess nor config.sub.  We don't install them without
4104         --install, and the project may not be using Automake.
4105         Report by Andreas Schwab.
4107         Simplify argument parsing in cwrapper.
4108         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
4109         Use NULL where appropriate.  Do not compute length of arguments
4110         needlessly.
4112 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
4114         [mingw] Add cross-compile support to cwrapper
4115         * libltdl/config/ltmain.m4sh (func_to_host_path) [$host=mingw]:
4116         If present, use winepath to convert from $build to $host
4117         if $build is neither mingw (msys) nor cygwin.  Use unconverted
4118         path as fallback when conversion fails. Also update comments.
4119         (func_to_host_pathlist) [$host=mingw]: Ditto. For fallback case,
4120         use simplistic ':' to ';' path separator translation.
4122 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
4124         Cwrapper should not eat -- arguments
4125         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
4126         [file scope]: Defined all option strings in terms of macro
4127         LTWRAPPER_OPTION_PREFIX. Similarly defined all option string
4128         lengths in terms of macro LTWRAPPER_OPTION_PREFIX_LENGTH.
4129         [main]: Modified option parsing algorithm to pass -- on to
4130         target, and to not stop processing arguments when -- is seen.
4131         Added check for unrecognized options in reserved namespace
4132         defined by LTWRAPPER_OPTION_PREFIX.
4134 2008-05-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4136         Fix ifort settings again.
4137         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
4138         Unlike icc and ecc, not all ifort versions understand `-KPIC',
4139         e.g. version 10.1, so use `-fPIC' instead.
4140         Report by Jeff Squyres.
4142 2008-05-20  Eric Blake  <ebb9@byu.net>
4144         Resynchronize argz whitespace changes from gnulib.
4145         * libltdl/m4/argz.m4: Kill trailing whitespace.
4146         * libltdl/argz.c: Likewise.
4148 2008-05-19  Eric Blake  <ebb9@byu.net>
4150         Fix regression from two days ago.
4151         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ): Don't refer to deleted macro.
4153 2008-05-17  Eric Blake  <ebb9@byu.net>
4155         Speed up bootstrap by improving lt_combine.
4156         * libltdl/m4/ltsugar.m4 (lt_combine): Mirror Autoconf 2.62
4157         improvements.  Includes a semantic change where the separator can
4158         now be empty, and where an empty fourth argument is now treated as
4159         a valid suffix.
4160         * libltdl/m4/libtool.m4 (_lt_decl_varnames_tagged): Adjust to new
4161         semantics of lt_combine.
4162         (lt_decl_varnames_tagged): Fix quoting and optimize.
4164         Kill _LT_LIBSOURCES; it wasn't checking anything useful.
4165         * libltdl/m4/ltdl.m4 (_LT_LIBSOURCES): Delete.
4166         (LTDL_INIT): Ignore arguments to AC_LIBSOURCES during _LTDL_SETUP,
4167         on the assumption that libtoolize correctly installed them.
4169 2008-05-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
4171         [mingw|cygwin] Modify cwrapper to invoke target directly.
4172         * libltdl/config/ltmain.m4sh (func_to_native_path):
4173         New function. If $host is mingw, and $build is mingw
4174         or cygwin, convert path to mingw native format.
4175         (func_to_native_pathlist): New function. Ditto, for
4176         :-separated pathlists.
4177         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
4178         Ensure putenv and setenv are declared. Define HAVE_SETENV.
4179         (func_emit_cwrapperexe_src) [main]: Add new constants to
4180         hold desired PATH settings; initialize and use functions
4181         above to convert to $host format if necessary. Add new
4182         command-line options --lt-env-set, --lt-env-prepend, and
4183         --lt-env-append. No longer emit wrapper script as integral
4184         part of launching child. Remove support for (now) unnecessary
4185         $TARGETSHELL. Exec actual target executable directly.
4186         (func_emit_cwrapperexe_src) [lt_setenv, lt_extend_str]
4187         [lt_split_name_value, lt_opt_process_env_set]
4188         [lt_opt_process_env_prepend, lt_opt_process_env_append]
4189         [lt_update_exe_path, lt_update_lib_path]: New functions.
4191 2008-05-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
4193         Ensure cwrapper compiles without warnings under -std=c99.
4194         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
4195         new function.
4196         (func_emit_wrapper_part2): new function.
4197         (func_emit_wrapper): delegate to new functions.
4198         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
4199         ensure realpath is declared.
4200         (func_emit_cwrapperexe_src): declare two different strings
4201         to each hold part of the wrapper script content. Initialize
4202         using new func_emit_wrapper_partX functions.
4203         (func_emit_cwrapperexe_src) [main]: when emitting wrapper
4204         script content, use both strings.
4205         Reported by Yaakov Selkowitz.
4207 2008-05-06  Charles Wilson  <libtool@cwilson.fastmail.fm>
4209         Ensure $OBJDUMP is defined
4210         * libltdl/m4/libtool.m4 (_LT_DECL_OBJDUMP): new macro ensures
4211         that $OBJDUMP is always defined sanely.
4212         (_LT_SYS_DYNAMIC_LINKER): call it.
4213         (_LT_CHECK_MAGIC_METHOD): call it.
4215 2008-05-05  Gary V. Vaughan  <gary@gnu.org>
4217         Fix libtoolize test failure with aclocal < 1.10.1
4218         * tests/libtoolize.at
4219         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Older aclocal
4220         requires a space between -I and the directory argument.
4221         Reported by Daniel Macks <dmacks@netspace.org>
4223 2008-05-04  Gary V. Vaughan  <gary@gnu.org>
4225         Set SCM version number to 2.2.5a.
4226         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4227         number to 2.2.5a.
4228         * NEWS: Updated.
4230         GNU Libtool 2.2.4 was released.
4232         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4233         number to 2.2.4.
4234         * libltdl/Makefile.inc (LTDL_VERSION_INFO): C:R+1:A because the
4235         interfaces are unchanged, even though we improved the code some
4236         more.
4237         * NEWS: Updated.
4239         Macro file serial updates for next stable release.
4240         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
4241         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: Bump serial
4242         numbers to account for changes since 2.2.2 release.
4244         Make libtoolize tests work with distcheck.
4245         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): When $tst_aclocal
4246         is set, transform paths that use it to generic
4247         /usr/local/share/aclocal in time for AT_CHECK comparisons.
4249 2008-05-03  Gary V. Vaughan  <gary@gnu.org>
4251         Don't trip over outdated acinclude.m4.
4252         * libtoolize.m4sh (all_pkgconfig_files, all_pkgmacro_files)
4253         (all_pkgltdl_files): New variables listing all files ever
4254         maintained by any release of libtoolize.
4255         (func_install_pkgconfig_parent, func_install_pkgltdl_files)
4256         (func_install_pkgconfig_subproject, func_install_pkgmacro_parent)
4257         (func_install_pkgmacro_subproject): Carefully clean up any files
4258         that may have been installed by previous libtoolize releases.
4259         * tests/libtoolize.at: New test for libltdl/acinclude.m4 removal.
4260         Reported by Andreas Schwab <schwab@suse.de>.
4262 2008-05-02  Peter O'Gorman  <peter@pogma.com>
4264         It helps to close quotes.
4265         * libltdl/config/ltmain.m4sh (func_mode_link): Add closing '.
4267 2008-05-01  Peter O'Gorman  <peter@pogma.com>
4269         Use AC_CHECK_TOOL for otool and otool64.
4270         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
4271         * libltdl/config/ltmain.m4sh (func_mode_link): Use.
4272         Reported by Richard Purdie <rpurdie@rpsys.net>
4274 2008-04-30  Eric Blake  <ebb9@byu.net>
4276         Support cygwin 1.7.0 in loadlibrary loader.
4277         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD) <cygwin>: Check for modern
4278         function.
4279         * libltdl/loaders/loadlibrary.c (vm_open): Avoid deprecated
4280         cygwin_conv_to_full_win32_path.
4282 2008-04-29  Gary V. Vaughan  <gary@gnu.org>
4284         New libtoolize --no-warn option and LIBTOOLIZE_OPTIONS parsing.
4285         * libltdl/config/general.m4sh (opt_warning): New option.
4286         (func_warning): Only display a warning message if $opt_warning
4287         is true.
4288         * libtoolize.m4sh: Accept options in LIBTOOLIZE_OPTIONS
4289         environment variable.
4290         (--no-warn): Parse new option.
4291         (func_serial_update_check, func_keyword_update): Use func_warning.
4292         (func_check_macros): Bail out before style issues nags when
4293         $opt_warning is false.
4294         * doc/libtool.texi (Invoking Libtoolize): Document it.
4295         * tests/libtoolize.at: Test it.
4296         * NEWS: Updated.
4298         Fix libtoolize test failure with aclocal-1.10.1.
4299         * tests/libtoolize.at
4300         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Force aclocal to
4301         search the source tree for latest libtool macros.
4303 2008-04-24  Eric Blake  <ebb9@byu.net>
4305         Fix bug in 2008-04-21 type improvements.
4306         * libltdl/ltdl.c (load_deplibs): Fix casting bug.
4308 2008-04-23  Michael Haubenwallner  <michael.haubenwallner@salomon.at>
4310         Use /nonexistent as destination for files not to be installed.
4311         * tests/darwin.at (darwin fat compile): Fix typo.
4312         * tests/inherited_flags.at (inherited_linker_flags): Change
4313         -rpath to /nonexistent.  This helps to avoid accidentally
4314         picking up libraries below /usr/local.
4315         * tests/template.at (simple template test): Likewise.  Fixes
4316         test failure for additional incompatible libstdc++ in
4317         /usr/local.
4318         * tests/testsuite.at (configure_options): Add
4319         --prefix=/nonexistent.
4321 2008-04-23  Gary V. Vaughan  <gary@gnu.org>
4323         * libtoolize.m4sh (rerun_aclocal): Remove unused variable.
4324         Reported by Olly Betts <olly@survex.com>
4326 2008-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4328         * tests/static.at (ccache -all-static): Ignore link warnings.
4329         Report by Gary V. Vaughan.
4331 2008-04-22  Gary V. Vaughan  <gary@gnu.org>
4333         Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
4334         * libtoolize.m4sh (func_check_macros): Always advise use of
4335         AC_CONFIG_MACRO_DIR when not able to copy libtool macros into
4336         the project tree.
4337         * tests/libtoolize.at: New test for correct diagnosis of mismatch
4338         between AC_CONFIG_MACRO_DIR and ACLOCAL_AMFLAGS.
4339         Update expected output of other tests.
4340         * NEWS: Updated.
4342 2008-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4344         Fix regression over 1.5.26 with ccache $CC -all-static.
4345         * libltdl/config/ltmain.m4sh (func_mode_link): Add
4346         $link_static_flag to compile_command and link_command only
4347         later, instead of right after a possible compiler wrapper.
4348         * tests/static.at (ccache -all-static): New test.
4349         * THANKS: Update.
4350         Report by Richard Purdie.
4352 2008-04-22  Andreas Schwab  <schwab@suse.de>
4353             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4355         Fix default argument for AC_LIBLTDL_CONVENIENCE.
4356         * libltdl/m4/ltdl.m4 (AC_LIBLTDL_CONVENIENCE): Default argument
4357         to libltdl.
4358         (AC_LIBLTDL_INSTALLABLE): Likewise.
4359         * tests/configure-iface.at (convenience libltdl): New test.
4361 2008-04-21  Gary V. Vaughan  <gary@gnu.org>
4363         Only complain that files are up-to-date with --force.
4364         As a side effect, this also means that when `aclocal' copies the
4365         libtool macros into `aclocal.m4' libtoolize complains only about
4366         the macro files that are missing or not up-to-date.
4367         * libtoolize.m4sh (func_echo_once): New function that prints
4368         the contents of a named variable only on the first call.
4369         (func_aclocal_update_check): New function that compares serial
4370         numbers of libtool macros in aclocal.m4 and only diagnoses the
4371         missing files.
4372         (func_copy, func_copy_cb, func_copy_some_files, func_serial_update)
4373         (func_keyword_update, func_ltmain_update, func_config_update)
4374         (func_install_update): Accept a new argument naming a variable
4375         containing a header string to print with func_echo_once iff any
4376         body text is output by this function.
4377         (func_install_pkgmacro_subproject, func_install_pkgmacro_parent)
4378         (func_install_pkgltdl_files, func_install_pkgconfig_subproject)
4379         (func_install_pkgconfig_parent: Set and pass a suitable
4380         header string variable for the above functions.
4381         (func_serial_update_check): Don't advise rerunning `libtoolize
4382         --force' when aclocal.m4 is not m4_including libtoolize installed
4383         macro files.
4384         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic
4385         /usr/local/share/aclocal paths to point into the uninstalled
4386         libtool macro directory.
4387         * tests/libtoolize.at: Update tests that were checking for old
4388         behaviour of outputing `file is already up to date' even when
4389         --force was not passed.
4390         * tests/libtoolize.at: New tests to prevent regressions of these
4391         smarter messages.
4392         * NEWS: Updated.
4393         Reported by Olly Betts <olly@survex.com>
4395         Capture lt~obsolete.m4 serial number correctly in libtoolize.
4396         * libltdl/m4/lt~obsolete.m4: Add the filename to the #serial
4397         marker so that libtoolize's serial number checks can find it
4398         in a non-include using aclocal.m4.
4399         * NEWS: Updated.
4400         Reported by Olly Betts <olly@survex.com>
4402         Allow better compile time type checking for lt_dladvise.
4403         * libltdl/lt__private.h (lt__handle, lt__advise): Typedefs
4404         removed in favour of...
4405         * libltdl/ltdl.h (lt_dlhandle),
4406         libltdl/libltdl/lt_dlloader.h (lt_dladvise): ...changing from
4407         void* to forward declarations.
4408         * libltdl/loaders/dlopen.c, libltdl/loaders/loadlibrary.c,
4409         libltdl/lt_dlloader.c, libltdl/ltdl.c: Remove many redundant
4410         type casts.
4411         * NEWS: Updated.
4412         Suggested by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
4414 2008-04-21  Peter O'Gorman  <peter@pogma.com>
4416         basename does not take a list of strings.
4417         * libltdl/config/ltmain.m4sh(func_extract_archives): Use sed
4418         $basename.
4419         * tests/darwin.at: New. Check that we can built fat program,
4420         shared library and convenience library.
4421         * Makefile.am: Add test.
4422         Reported by LiKai Liu <liulk@cs.bu.edu>
4424         Use AC_CHECK_TOOL for lipo too.
4425         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
4426         * libltdl/config/ltmain.m4sh (func_extract_archives): Use.
4428 2008-04-20  Gary V. Vaughan  <gary@gnu.org>
4430         Fix misleading lt_dlopenadvise documentation.
4431         * doc/libtool.texi (lt_dlopenadvise): The last parameter is of
4432         type lt_dladvise, not lt_dladvise*.
4433         (my_dlopenext): Correct the example too.
4434         * NEWS: Updated.
4435         Reported by Gary Kumfert <kumfert@llnl.gov>
4437 2008-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4439         Fix testsuite cleanup warnings on AIX with NFS.
4440         * tests/testsuite.at [ aix ]: Set file mode creation so that
4441         'others' have no permissions.  Shared libraries are kept in
4442         memory on AIX after use if they are world-readable, which means
4443         on NFS mounts cleanup of test group directories will fail later.
4444         * THANKS: Update.
4445         Report and analysis by Michael Haubenwallner.
4447         Fix nonportable use of expr.
4448         * libltdl/config/ltmain.m4sh (func_mode_link) <Transforming
4449         deplibs into only shared deplibs>: Fix expr portability issues,
4450         noted on FreeBSD.  While at it, simplify and avoid forking.
4451         Report by Bob Friesenhahn.
4453         Exploit shell arithmetic expansion and ${#var}.
4454         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also check
4455         for arithmetic expansion, and ${#var}.
4456         (_LT_PROG_XSI_SHELLFNS): Define func_arith and func_len
4457         accordingly, falling back on 'expr'.  Note that the argument to
4458         func_len may not start with a hyphen.  In the pre-Posix
4459         fallback, take care not to rely on the exit status of the
4460         variable assignment (not portable), but set the length to
4461         $max_cmd_len instead.
4462         * libltdl/config/ltmain.m4sh (func_mode_link): Use func_arith
4463         and func_len throughout for integer arithmetic, fixing
4464         quadratical amount of counting for reloadable object and
4465         piecewise archive linking.  Change all comparisons with
4466         max_cmd_len to test for smaller, non-equal length.
4467         * THANKS: Update.
4468         Suggested by Roland Mainz.
4470         * libltdl/config/ltmain.m4sh (func_mode_compile): Avoid
4471         redundant removal of old output files before compilation.
4472         Do not remove $obj until we have successfully grabbed the
4473         lockfile (in case the compiler doesn't grok `-c -o'), because
4474         it might be identical to $output_obj.
4475         At the end of the function, before we remove the lockfile,
4476         update $removelist so that if the trap hits after the lockfile
4477         has been removed, we do not accidentally remove $output_obj that
4478         does not belong to us.
4479         (func_write_libtool_object): Use $MV instead of mv.
4481 2008-04-18  Andreas Schwab  <schwab@suse.de>
4483         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Check optional
4484         argument.
4485         (AC_ENABLE_STATIC): Likewise.
4486         (AC_ENABLE_FAST_INSTALL): Likewise.
4488 2008-04-16  Eric Blake  <ebb9@byu.net>
4490         Make ChangeLog merges easier.
4491         * .gitattributes: New file.
4492         * HACKING: Mention how it helps.
4494 2008-04-15  Peter O'Gorman  <peter@pogma.com>
4496         Allow bootstrap from git repository.
4497         * Makefile.am: Pass srcdir as an argument to mkstamp and expect
4498         only 2 fields in mkstamps output.
4499         * clcommit.m4sh: Ditto.
4500         * configure.ac: Ditto.
4501         * libltdl/config/mkstamp: return a revision and date based on
4502         the number of lines which look like dates in all the ChangeLog*
4503         files in the directory we got as arg 1.
4505 2008-04-11  Eric Blake  <ebb9@byu.net>
4507         Fix usage of setmode without declaration on cygwin.
4508         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Ensure
4509         setmode has prototype for both mingw and cygwin.
4511 2008-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4513         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Move non-XSI
4514         definition of func_dirname_and_basename ...
4515         * libltdl/config/general.m4sh (func_dirname_and_basename):
4516         ... here, to use it for the other scripts that use general.m4sh
4517         (and as portable fallback for libtool).  Add marker for early
4518         insertion of generated shell functions (into libtool, not the
4519         other scripts) here.
4520         Use func_dirname_and_basename to compute progname, progpath.
4521         * libltdl/config/ltmain.m4sh (func_mode_help): Remove marker
4522         for insertion of generated shell functions.
4523         * tests/sh.test: Adjust function definition test to not match
4524         function call.
4526         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS) <func_xform>:
4527         New function.
4528         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it to
4529         avoid two forks with XSI shells.
4530         * tests/suffix.test: Also test a file with multiple dots.
4532 2008-04-10  Peter O'Gorman  <peter@pogma.com>
4534         * libltdl/config/ltmain.m4sh (func_win32_libid,
4535         func_generate_dlsyms, func_extract_an_archive,
4536         func_extract_archives, func_mode_help): move these so they
4537         appear after func_mode_compile.
4538         * tests/nomode.test: Check that --mode=link --help works.
4539         Reported by Josh Triplett <josh@freedesktop.org>
4541 2008-04-07  Gary V. Vaughan  <gary@gnu.arg>
4543         * doc/libtool.texi (Libltdl interface): Add missing
4544         documentation for lt_dlopenavise.
4545         Reported by Anton Erti <anton@mips.complang.tuwien.ac.at>
4547         * configure.ac, libltdl/configure.ac (AM_INIT_AUTOMAKE): Use
4548         gnu rather than gnits standards so that version number 2.2.3a
4549         is not rejected!
4550         Reported by Olly Betts <olly@survex.com>
4552 2008-04-01  Gary V. Vaughan  <gary@gnu.arg>
4554         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4555         number to 2.2.3a.
4557         GNU Libtool 2.2.2 was released.
4559         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4560         number to 2.2.2.
4561         * libltdl/Makefile.in (LTDL_VERSION_INFO): C:R+1:A because the
4562         interfaces are unchanged, even though we improved the code some
4563         more.
4564         * NEWS: Updated.
4566         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
4567         libltdl/m4/ltoptions.m4: Bump serial numbers to account for
4568         changes since 2.2 release.
4570 2008-03-27  Peter O'Gorman  <peter@pogma.com>
4572         * libltdl/m4/libtool.m4 [_LT_REQUIRED_DARWIN_CHECKS]: Fix the
4573         test for -single_module and log it to config.log.
4574         Reported by Torok Edwin and Nigel Home.
4576 2008-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4578         Document that disable-static plus -all-static is not portable.
4579         * doc/libtool.texi (Link mode): -all-static does not go well
4580         with disable-static on most systems.
4581         * tests/static.at (static linking flags for programs) [!aix]:
4582         With --disable-static but nonempty link_static_flag, skip the
4583         m-all-static link.  Do not skip it on AIX, as there the
4584         enable_static is self-inflicted, and thus expected to work.
4585         * THANKS: Update.
4586         Report by Nix.
4588 2008-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4590         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): No need to escape
4591         backticks in argument to AC_MSG_WARN or AC_MSG_ERROR.
4592         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE, LTDL_INIT): Likewise.
4594 2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4596         * libltdl/config/ltmain.m4sh (NLS nuisances): Fix quoting of
4597         localization variables for shell-active characters.
4598         * tests/localization.at (localized compiler messages): Extend
4599         test.
4600         * THANKS: Update.
4601         Report by Mike Frysinger.
4603 2008-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4605         * tests/defs.m4sh (func_get_config): Build egrep regex to speed
4606         up extracting several variables at once.  Use it to extract all
4607         default variables at once.  Also extract build_alias and
4608         host_alias from the libtool script.
4609         (func_configure_nofail): Use build_alias and host_alias for
4610         --build and --host, respectively.  Pass each if nonempty.
4611         * tests/testsuite.at: Pass --build if build_alias is nonemtpy.
4612         * tests/quote.test: Extract ECHO and wl at once.
4614         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_WIN32_DLL): Require
4615         AC_CANONICAL_HOST.
4616         * THANKS: Update.
4617         Report by Jakub Bogusz.
4619 2008-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4621         * NEWS: Update.
4623 2008-03-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
4625         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src) [file
4626         scope]: additional #includes and #defines to support...
4627         (func_emit_cwrapperexe_src) [main]: ensure stdout is set to
4628         binary mode for cygwin|mingw builds. Ensure temporary script
4629         file is written in binary mode for cygwin|mingw builds.
4630         (func_mode_link) [cygwin|mingw]: cross-build support - only
4631         use cwrapper to generate shell wrapper if building native;
4632         otherwise use func_emit_wrapper()
4634 2008-03-12  Henning Nielsen Lund  <hnl_dk@amigaos.dk>
4636         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
4637         (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [amigaos]: Port to
4638         AmigaOS4 shared libraries on powerpc.
4639         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [amigaos]:
4640         Likewise.
4641         * THANKS, NEWS: Update.
4643 2008-03-09  Bruno Haible  <bruno@clisp.org>
4644         and Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4646         Fix compiler output to be in the user locale.
4647         * libltdl/config/general.m4sh (func_show_eval_locale): New
4648         function, for running commands in the user locale.
4649         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it for
4650         compiling.
4651         * tests/localization.at (localized compiler messages): New test.
4652         * Makefile.am: Adjust.
4653         Report by Bruno Haible.
4655 2008-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4657         Fix several test failures on Cygwin and MinGW.
4658         * tests/nonrecursive.at: Use -no-undefined for foo.la.
4659         * tests/recursive.at: Likewise.
4660         * tests/subproject.at: Likewise.
4661         * tests/lt_dladvise.at: For systems where undefined symbols are
4662         not allowed, to not try to load the module libdepend.
4663         [ mingw ]: Add to list of such systems.
4664         * tests/testsuite.at (_LT_AT_TRANSLATE_TEXT_OUTPUT): New macro,
4665         to translate line ending of expout and experr files suitable for
4666         host executables.
4667         (LT_AT_CHECK, LT_AT_NOINST_EXEC_CHECK): Use it.
4668         Report by Bob Friesenhahn.
4670         Fix installcheck dependencies, fix for --program-transform-name.
4671         * Makefile.am (installcheck-local): Depend upon tests/atconfig
4672         and $(srcdir)/$(TESTSUITE).
4673         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): New macro.
4674         (LT_AT_CHECK_LIBTOOLIZE): Use it to transform expout and experr
4675         files suitably.
4676         * HACKING: Update.
4678         Drop usage of obsolete macros AC_EXEEXT and AC_OBJEXT.
4679         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
4680         (_LT_COMPILER_C_O, LT_PATH_NM, _LT_CMD_GLOBAL_SYMBOLS, _LT_SETUP):
4681         Drop usage of obsolete AC_OBJEXT and AC_EXEEXT.
4682         * tests/am-subdir.at (C++ subdir-objects): Likewise.
4684 2008-03-07  Peter O'Gorman  <peter@pogma.com>
4686         * tests/convenience.at (Java convenience archives): Skip test if
4687         gcj cannot compile a working executable from .java files.
4688         Report by Nelson H. F. Beebe.
4690         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Need to set LD.
4691         Reported by Nelson H. F. Beebe.
4693 2008-03-06  Peter O'Gorman  <peter@pogma.com>
4695         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Undo commit - bad idea.
4697         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Report FC=no if the FC
4698         compiler is not a GNU compiler and the CXX compiler is a GNU
4699         compiler.
4700         Reported by Nelson H. F. Beebe.
4702 2008-03-06  Gary V. Vaughan  <gary@gnu.org>
4704         * Makefile.maint (TSDEPS_DIST): Removed.  No longer used.
4705         (TSDEPS): libtool.m4 has long since moved to libltdl.
4706         (cvs-dist): Don't put the suffix dot in twice.
4708 2008-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4710         * tests/convenience.at (Java convenience archives): Skip test if
4711         gcj cannot compile a .java file.
4712         Report by Nelson H. F. Beebe.
4714 2008-03-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4716         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p): redirect
4717         and restore from stdin, not stdout.
4718         * tests/execute-mode.at (execute mode): Adjust test to catch
4719         this.
4720         Report by Roberto Bagnara.
4722 2008-03-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4724         Fix libltdl to not skip dlopen on systems with several loaders,
4725         such as HP-UX, Cygwin.
4726         * libltdl/slist.c (slist_concat): When appending to the tail
4727         of a list, do not drop items off the beginning of the list.
4728         * NEWS: Update.
4730         * libltdl/config/ltmain.m4sh (func_mode_execute): Replace only
4731         arguments we have identified as shell or C wrappers.
4732         (func_emit_wrapper): Output error message on stderr.
4733         * tests/execute-mode.at: New file, with --mode=execute tests.
4734         * Makefile.am: Adjust.
4735         * NEWS: Update.
4736         Fixes 2.2 regression.  Report by Roberto Bagnara.
4738         * libltdl/m4/libtool.m4 (_LT_CONFIG): Drop misleading `GNU'
4739         prefix before the host package name in the "Generated by" line
4740         for the libtool script.
4741         * THANKS: Update.
4742         Reports by Peter Rosin and Roberto Bagnara.
4744         * doc/libtool.texi (Module loaders for libltdl): Fix typo.
4746         * libltdl/loaders/dld_link.c (vl_exit): New function, zero out ...
4747         (vtable): ... this new file static variable split out from ...
4748         (get_vtable): ... here.  Initialize vtable, register vl_exit as
4749         dlloader_exit function.
4750         * libltdl/loaders/dlopen.c: Likewise.
4751         * libltdl/loaders/dyld.c: Likewise.
4752         * libltdl/loaders/load_add_on.c: Likewise.
4753         * libltdl/loaders/loadlibrary.c: Likewise.
4754         * libltdl/loaders/shl_load.c: Likewise.
4755         * libltdl/loaders/preopen.c: Likewise; vl_exit existed here
4756         already.
4757         * tests/lt_dlexit.at (lt_dlexit unloading libs): Update test.
4758         * NEWS: Update.
4759         Report by Andreas Schwab.
4761 2008-03-01  Gary V. Vaughan  <gary@gnu.org>
4763         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4764         number to 2.3a.
4766         GNU Libtool 2.2 was released.
4768         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4769         number to 2.2.
4770         * NEWS: Updated.
4772         * tests/lt_dladvise.at, tests/lt_dlexit.at,
4773         tests/need_lib_prefix.at: Skip these tests when called from
4774         `make distcheck DISTCHECK_CONFIGURE_FLAGS=--disable-ltdl-install'.
4775         The tests try to link against the dummy installed libltdl.la
4776         from .../_inst/lib/libltdl.la, which does not exist when
4777         configured with --disable-ltdl-install.
4779 2008-02-29  Gary V. Vaughan  <gary@gnu.org>
4781         * libltdl/m4/argz.m4 (AC_CHECK_FUNCS): Also use our replacement
4782         argz if the system argz_add or argz_count are missing.
4783         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
4785 2008-02-26  Karl Berry  <karl@freefriends.org>
4787         * libltdl/argz.c (argz_add, argz_count): New functions.
4788         * libltdl/argz_.h: Declare them.
4789         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
4791 2008-02-20  Peter O'Gorman  <peter@pogma.com>
4793         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Do not call the
4794         _LT_SYS_DYNAMIC_LINKER macro here.
4795         Reported by Mike Frysinger <vapier@gentoo.org>
4797 2008-02-15  Peter O'Gorman  <peter@pogma.com>
4799         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix typo.
4801 2008-02-14  Peter Breitenlohner  <peb@mppmu.mpg.de>
4803         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better handling
4804         of predefined values for lt_cv_sys_lib_search_path_spec and
4805         lt_cv_sys_lib_dlsearch_path_spec.
4807 2008-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4809         * libtoolize.m4sh (func_install_pkgconfig_files): Only call
4810         func_install_pkgconfig_parent if $seen_autoconf.
4811         * tests/standalone.at (compiling softlinked libltdl)
4812         (compiling copied libltdl, installable libltdl)
4813         (linking libltdl without autotools): Use checked libtoolize
4814         calls to catch warnings.
4816 2008-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4818         * libltdl/configure.ac: Bump package version.
4819         * HACKING: Reminder to do it next time, too.
4821 2008-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4823         * tests/mdemo/Makefile.am (@LIBLTDL@): Update outdated
4824         dependencies.
4825         ($(top_distdir)/libltdl/libtool): Remove.
4826         Fixes spurious mdemo-dryrun failure with OpenBSD make.
4828 2008-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4830         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
4831         Treat like icc and ecc, for fixed `-Wl,' and `-KPIC' settings.
4833 2008-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4835         * tests/archive-in-archive.at
4836         (static library contains static library): Test also the actual
4837         broken link command, and the following install command, as
4838         UnixWare ar rightly refuses to put an archive into an archive.
4839         Report by Tim Rice.
4841 2008-02-06  Peter O'Gorman  <peter@pogma.com>
4843         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Only set default
4844         LT_INIT values for LT_INIT, not LTDL_INIT.
4845         Reported by Jochem Huhmann <joh@revier.com>
4847 2008-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4849         * tests/testsuite.at (LT_AT_TAG): For the CXX tag, if $CXX is
4850         g++, check that `g++ -v' works; AC_PROG_CXX may have set that
4851         as default value even if it found no C++ compiler.
4852         Report by Andreas Schwab.
4854 2008-02-02  Gary V. Vaughan  <gary@gnu.org>
4856         * libltdl/Makefile.inc (EXTRA_DIST): Now that we're not using
4857         Autoconf's AC_SOURCES macro, Automake can't trace our extra
4858         source files argz, lt__dirent.c and lt__strl.c.  List them
4859         manually here to make sure they are distributed.
4860         * NEWS: Updated.
4861         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
4863 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
4865         * configure.ac (AC_INIT): Bump version number to 2.1c.
4867         GNU Libtool 2.1b was released.
4869         * configure.ac (AC_INIT): Bump version number to 2.1b.
4870         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Increment to account
4871         for new interfaces since the last libltdl update.
4872         * HACKING (Release Procedure): Note that LTDL_VERSION_INFO is now
4873         kept in libltdl/Makefile.inc.
4875 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
4877         * tests/cdemo, tests/depdemo, tests/fcdemo, tests/pdemo,
4878         tests/demo, tests/f77demo, tests/mdemo, tests/tagdemo
4879         (distclean-local): Remove compiler file droppings left by
4880         Autoconf tests that prevent make dist from finishing on
4881         several machines including Mac OS 10.5.
4883 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
4885         Unfortunately, the autoconf implementation of AC_LIBOBJ and
4886         friends requires all libobjs to be in the same directory, as
4887         declared by AC_CONFIG_LIBOBJ_DIR.  That might prevent using
4888         either recursive or nonrecursive libltdl if the parent project
4889         has libobjs of its own, except that this patch tracks libltdl's
4890         libobjs in another namespace:
4892         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ, _LT_LIBSOURCES): Versions of
4893         AC_LIBOBJ and AC_LIBSOURCES that save missing sources in a
4894         ltdl_LIBOBJS automake macro, instead of the global LIBOBJS
4895         automake macro.  Content of the macros inspired by code from
4896         gnulib-tool.
4897         (_LTDL_MODE_DISPATCH): Initialise lt_libobj_prefix in
4898         nonrecursive mode.
4899         (LTDL_INIT): Push and pop the new definitions around potential
4900         sites that call AC_LIBOBJ.  Also, using lt_libobj_prefix,
4901         initialise ltdl_LIBOBJS and ltdl_LTLIBOBJS.
4902         * libtoolize.m4sh (func_fixup_Makefile): Substitute ltdl_LIBOBJS
4903         and ltdl_LTLIBOBJS for LIBOBJS and LTLIBOBJS during copying
4904         either Makefile.am or Makefile.inc, depending on ltdl_mode.
4905         Reported by Eric Blake <ebb9@byu.net>
4907 2008-01-30  Gary V. Vaughan  <gary@gnu.org>
4909         There are 5 distinct batches of files that libtoolize might
4910         install into a project, depending on whether libltdl is
4911         being installed in subproject mode, and in that case whether
4912         the parent project shares the config and macro directories
4913         with the subproject ltdl.  Make a separate function for each
4914         of those 5 batches (4 new functions below, plus the recently
4915         factored func_install_pkgltdl_files), and make a clearer
4916         distinction between when each of them is needed:
4918         * libtoolize.m4sh (func_install_pkgmacro_subproject):
4919         New function for installing and reporting on m4 files copied
4920         to a subproject ltdl directory.
4921         (func_install_pkgmacro_parent): Similar new function for m4
4922         files copied solely for the use of the parent project,
4923         including serial checking.
4924         (func_install_pkgconfig_subproject): New function for
4925         installing and reporting on config helper files copied to a
4926         subproject ltdl directory.
4927         (func_install_pkgconfig_parent): Similar new function for
4928         config helper files copied solely for the use of the parent
4929         project, including serial checking.
4930         (func_install_pkgmacro_files, func_install_pkgconfig_files):
4931         Rewritten in terms of the above functions.
4932         * tests/libtoolize.at: Adjust test expout's to match newly
4933         regularized libtoolize output.
4934         Move parent project pkgconfig files to build-aux directory
4935         so that progress messages show an obvious difference to
4936         pkgconfig files installed to subproject `config' directory.
4937         (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test.
4938         (diagnose missing LT_CONFIG_LTDL_DIR): New test.
4939         (subproject ltdl with non-shared directories): New test.
4940         Reported by Eric Blake <ebb9@byu.net>
4942 2008-01-29  Peter O'Gorman  <peter@pogma.com>
4944         * libltdl/m4/libtool.m4 [darwin]: Changes to glob pattern matching
4945         to be safer.
4947         Search the compiler path too.
4948         * libltdl/m4/libtool.m4 (compiler_lib_search_dirs): New variable.
4949         * libltdl/config/ltmain.m4sh: Use it.
4950         Reported by Maynard Johnson
4952 2008-01-28  Gary V. Vaughan  <gary@gnu.org>
4954         * libtoolize.m4sh (func_check_macros): Correct typo with
4955         '$opt_quiet ||' where '$opt_quiet &&' that was preventing
4956         func_check_macros from running!
4958         * libtoolize.m4sh: Set opt_ltdl whenever seen_ltdl is set
4959         so that libtoolize behaves as though --ltdl was passed even
4960         if it wasn't as long as LTDL_INIT (or equivalent) was seen
4961         in configure.ac.  Adjust redundant '$opt_ltdl || $seen_ltdl'
4962         to simply '$opt_ltdl'.
4963         Reported by Eric Blake <ebb9@byu.net>
4965         * libtoolize.m4sh (func_check_macros): Check opt_quiet
4966         in the function itself to simplify calling it.  Also move
4967         the definition of the function.
4969         * libtoolize.m4sh (func_scan_files): Be sure to set the
4970         default libltdl mode to 'subproject' when libtoolize is
4971         executed before configure.ac has been updated.
4973 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
4975         * libtoolize.m4sh (func_install_pkgconfig_files)
4976         (func_install_pkgmacro_files, func_install_pkgltdl_files):
4977         Factored out from the 'Main' section of the file.
4979         * libtoolize.m4sh (subproject_auxdir, subproject_macrodir):
4980         New variables to hold the default locations for auxfiles
4981         and macrofiles in a subproject libltdl.
4982         (ac_auxdir, ac_macrodir): New variables to hold the values
4983         passed by AC_CONFIG_AUX_DIR and AC_CONFIG_MACRO_DIR resp.
4984         (auxdir, macrodir): Adjust to contain the values to be
4985         used by libtoolize at runtime.
4987         * libtoolize.m4sh (func_fixup_Makefile)
4988         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
4989         (func_massage_pkgconfig_files): Add missing $opt_debug.
4991 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
4993         * libtoolize (func_fixup_Makefile, func_massage_aclocal_DATA)
4994         (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
4995         Add missing $opt_debug.
4997 2008-01-26  Gary V. Vaughan  <gary@gnu.org>
4999         * libtoolize.m4sh (Main): Copy (or link) libltdl sources
5000         into project tree when LTDL_INIT was seen, whether or not
5001         `--ltdl' is passed.
5002         (func_check_macros): Recommend LTDL_INIT instead of
5003         LT_WITH_LTDL when `--ltdl' is used before configure.ac is
5004         upgraded.
5005         * tests/libtoolize.at: Test that it works.
5006         (_LT_AT_LTDL_SETUP): Factor out some common test setup.
5007         Reported by Eric Blake <ebb9@byu.net>
5009 2008-01-24  Peter O'Gorman  <peter@pogma.com>
5011         * doc/notes.texi: Fix errors in previous commit.
5013         * libltdl/m4/libtool.m4 (sys_lib_search_path_spec,
5014         sys_lib_dlsearch_path_spec): Allow for a cache variable
5015         lt_cv_sys_lib_... to set these at configure time.
5016         * doc/notes.texi: Short note about the above change.
5018 2008-01-24  Eric Blake  <ebb9@byu.net>
5020         Add proper quoting to doc examples.
5021         * doc/libtool.texi: Use m4 quotes where appropriate.
5022         (Test descriptions): Fix truncated sentence.
5024 2008-01-18  Gary V. Vaughan  <gary@gnu.org>
5026         * Makefile.am (DISTCLEANFILES): Remove libtool.dvi generated
5027         by 'make dvi'.
5029 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5031         * libtoolize.m4sh (func_scan_files): Avoid matching our own
5032         macro code when scanning configure.ac and aclocal.m4.
5033         Don't produce spurious output if AC_PROG_RANLIB is found.
5034         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Add a (weak) check
5035         that we don't match our own macro code when searching for user
5036         code calling us.
5037         * TODO: Updated.
5039 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5041         New variable LTDLDEPS for use in output_DEPENDENCIES.
5043         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE, _LTDL_INSTALLABLE)
5044         (LTDL_INIT): Set and substitute LTDLDEPS according to chosen
5045         method.
5046         * tests/configure-iface.at (installable libltdl)
5047         (--with-ltdl-include/lib, --with-included-ltdl): Test it.
5048         * doc/libtool.texi (Distributing libltdl): Document LTDLDEPS.
5049         * NEWS: Updated.
5050         Dependency bug exposed by Eric Blake in M4, found by Bob Proulx
5051         build daemon.
5053 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5055         * doc/libtool.texi (Distributing libltdl): Clarify that
5056         `${top_build_prefix}' may be used in place of `${top_builddir}/'.
5058         * doc/libtool.texi (Distributing libltdl): Clarify that
5059         LTDL_INIT goes after LT_INIT; also show the latter in the
5060         respective examples.
5061         * tests/subproject.at: Adjust order.
5063 2008-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5065         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Use AM_CONDITIONAL
5066         only if defined.  Allows to use libltdl without aclocal.
5068 2008-01-16  Peter O'Gorman  <peter@pogma.com>
5070         * libltdl/m4/libtool.m4: Set GCC var for every tag, avoids need
5071         to set withGCC var.
5073 2008-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5075         * configure.ac: Set libltdl nonrecursive option, to avoid
5076         configuring libltdl inside the Libtool package.
5078 2008-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5080         Silence all non-warning output from `libtool --silent'.
5081         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
5082         (func_extract_archives, func_mode_link): Use func_verbose
5083         instead of func_echo for all non-warning output.
5085         * Makefile.maint (fetch): Update to match upstream git sources.
5086         Pull `INSTALL' from gnulib instead of from Autoconf.
5088         * doc/notes.texi: Mention AIX binutils deficiency for C++ code.
5089         Report by Rainer Tammer.
5090         Suggest using bash for configure.
5092         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Fix to use
5093         new _LT_SET_OPTION semantics.
5095 2008-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5097         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define
5098         LTDL_DLOPEN_SELF_WORKS, depending upon lt_cv_dlopen_self.
5099         * libltdl/loaders/dlopen.c (vm_open) [!LTDL_DLOPEN_SELF_WORKS]:
5100         Fail for dlopen(NULL), so that the preopen loader is used.  This
5101         fixes mdemo-exec.test failures on AIX where dlopen(NULL)
5102         succeeds but dlsym resolves no symbol.
5103         * NEWS: Update.
5104         Report by Rainer Tammer.
5106         * tests/am-subdir.at: Drop unused variables.
5107         * tests/configure-iface.at: Likewise.
5108         * tests/ctor.at: Likewise.
5109         * tests/early-libtool.at: Likewise.
5110         * tests/lt_dladvise.at: Likewise.
5111         * tests/old-m4-iface.at: Likewise.
5112         * tests/lt_dlexit.at: Likewise.  Also drop unused functions.
5114         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Also copy needed
5115         lt~obsolete.m4.
5117         * libltdl/config/ltmain.m4sh (func_mode_link): Fix warning
5118         about -l and -L for archives and objects as output, to not
5119         trigger for *.la files.  Non-convenience archives are diagnosed
5120         later on.
5122         * tests/configure-iface.at: Ensure LTDLINCL is expanded
5123         before CPPFLAGS, so that even CPPFLAGS=-I/usr/local/include
5124         won't make the tests prefer an installed ltdl.h over the
5125         in-package one.
5126         * tests/lt_dladvise.at, tests/lt_dlexit.at: Likewise.
5127         * tests/need_lib_prefix.at, tests/old-m4-iface.at: Likewise.
5128         Report by Bob Friesenhahn.
5130 2008-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5132         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) <exclude_expsyms>:
5133         Also exclude `_GLOBAL__F[ID]_.*'.  Also set for the C++ tag.
5134         Fixes esp. demo/helldl build failure with GCC on AIX.
5135         Report by Rainer Tammer.
5137 2008-01-11  Peter O'Gorman  <peter@pogma.com>
5139         * libltdl/m4/libtool.m4 [darwin]: Reorganize darwin support, use
5140         dsymutil if it is available so that debugging is possible, check
5141         for nmedit and dsymutil with AC_CHECK_TOOL, use the linker flag
5142         -exported_symbols_list in preference to nmedit if it is available.
5143         Drop support for xlc, it is probably broken.
5144         * tests/template.at [darwin]: Skip this test, I can not find a way
5145         to make it work on darwin9 with Xcode-3.0.
5146         * NEWS: Note the dropping of xlc support.
5148 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5150         * libltdl/m4/libtool.m4 (LT_INIT): m4_require, not AC_REQUIRE
5151         _LT_CHECK_BUILDDIR, as it's m4_defun'ed, not AC_DEFUN'ed.
5152         Report by Peter O'Gorman.
5154         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE): Restore correct
5155         _LT_BUILD_PREFIX-using code.
5157 2008-01-08  Gary V. Vaughan  <gary@gnu.org>
5159         * tests/recursive.at: Remove bogus --debug option.
5160         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5162         * tests/configure-iface.at: Build libltdl in a subdir so that
5163         it can be easily removed without trying to remove config.log
5164         on windows (which can't delete a file until it is closed).
5165         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5167         * libltdl/m4/ltdl.m4 (LTDL_INSTALLABLE): Use _LT_BUILD_PREFIX
5168         instead of ${top_builddir} for Autoconf-2.62.
5169         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5171         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Correct closing
5172         comment.
5173         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5175         * NEWS: Grammar nit.
5177         * tests/configure-iface.at, tests/nonrecursive.at,
5178         tests/recursive.at, tests/subproject.at (_LTDL_SETUP):
5179         Renamed to _LT_AT_LTDL_SETUP to avoid a nameclash with
5180         libltdl/m4/ltoptions.m4:_LTDL_SETUP from yesterday's patch.
5181         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5183 2008-01-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5185         * tests/runpath-in-lalib.at (Runpath in libtool library files):
5186         Compile program file without libtool.
5187         Report by Rainer Tammer.
5189 2008-01-07  Rainer Tammer  <tammer@tammer.net>  (tiny change)
5190             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5192         Support AIX 6.1.
5193         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
5194         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
5195         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
5196         (_LT_LANG_FC_CONFIG): Adjust case patterns to match AIX 6
5197         through 9 as well.
5198         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
5199         * NEWS: Update.
5200         * THANKS: Update.
5202 2008-01-07  Gary V. Vaughan  <gary@gnu.org>
5204         Move libltdl build mode options from LT_CONFIG_LTDL_DIR to
5205         LTDL_INIT.  Accept (optional) new 'convenience' and 'installable'
5206         options in lieu of LTDL_CONVENIENCE and LTDL_INSTALL macros. And
5207         also, implement --with-included-ltdl, --with-ltdl-lib and
5208         --with-ltdl-include configure-time options:
5210         * libltdl/m4/ltoptions.m4: Associate existing option settings with
5211         LT_INIT.
5212         (LT_OPTION_DEFINE): Associate options 'nonrecursive', 'recursive',
5213         'subproject', 'installable' and 'convenience' with LTDL_INIT.
5214         (_LT_MANGLE_OPTION, _LT_SET_OPTION, _LT_IF_OPTION)
5215         (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Add MACRO-NAME argument to
5216         support options to named macros instead of hardcoding only LT_INIT
5217         options.
5218         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE): Factor common code from
5219         LTDL_CONVENIENCE and LTDL_INIT([convenience]).
5220         (_LTDL_INSTALLABLE): Factor out common code from LTDL_INSTALLABLE
5221         and LTDL_INIT([installable]).
5222         (_LTDL_SETUP): Renamed from LTDL_INIT.  Support new configure-time
5223         options: --with-included-ltdl, --with-ltdl-lib,
5224         --with-ltdl-include.
5225         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
5226         (LT_WITH_LTDL): Removed.
5227         (LTDL_INIT): Parse caller options.
5228         * libltdl/m4/libtool.m4 (LT_INIT): Declare that this macro must be
5229         expanded before LTDL_INIT, and be sure to parse caller options.
5230         * configure.ac: Call directly into internal _LTDL_SETUP macro.
5231         * libtoolize.m4sh (func_scan_files): Ltdl mode argument moved from
5232         LT_CONFIG_LTDL_DIR to LTDL_INIT.
5233         * tests/nonrecursive.at, tests/recursive.at: Use new interfaces.
5234         * tests/configure-iface.at: Test it.
5235         * Makefile.am (TESTSUITE_AT): Add configure-iface.at.
5236         * doc/libtool.texi (Distributing libltdl): Document improved
5237         LTDL_INIT interfaces.
5238         * NEWS: Updated.
5240 2008-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5242         * libltdl/config/ltmain.m4sh (func_mode_link): When creating
5243         reloadable object files, avoid issuing plain `rm -f' without
5244         further arguments, even if the line length limit is ridiculously
5245         low as in the `Run tests with low max_cmd_len' test.  This
5246         failure is exposed on NetBSD.
5247         Report by Patrick Welche.
5249         * Makefile.am (EXTRA_DIST): Add ChangeLog.2007.
5250         * ChangeLog.2007: New, rotated, from...
5251         * ChangeLog: ...here.
5252         * NEWS, README, README.alpha, Makefile.am, libtoolize.m4sh,
5253         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
5254         libltdl/m4/libtool.m4: Bump copyright years.
5256 2007-11-30  Stefan Sperling  <stsp@elego.de>  (tiny change)
5258         * doc/libtool.texi (Linking executables): Reorder paragraphs.
5260 2007-11-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5262         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: The IBM
5263         XL 8.0 C++ compiler may also be called xlc++*, not only xlC*.
5264         Report by Nysal K Jan <jnysal@in.ibm.com>.
5266 2007-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5268         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): New macro.
5269         Warn about whitespace in the absolute build tree name.
5270         (LT_INIT): Use it.
5271         * THANKS: Update.
5272         Report by Jim Meyering.
5274         * libltdl/config/ltmain.m4sh (func_extract_an_archive)
5275         (func_extract_archives): Add some quoting.
5277 2007-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5279         Use `${top_build_prefix}' for better compatibility with non-GNU make.
5280         * libltdl/m4/ltdl.m4 (_LT_BUILD_PREFIX): New macro.
5281         If the Autoconf version used is >= 2.62, then expand to
5282         `${top_build_prefix}', otherwise to `${top_builddir}/'.
5283         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Use it for defining
5284         LIBLTDL.  Fixes a build failure with AIX make in a package
5285         using convenience libltdl in nonrecursive mode.
5286         * doc/libtool.texi (Distributing libltdl): Document requirements
5287         to define `top_build_prefix' if Automake is not used.
5288         Report by Bob Friesenhahn.
5290 2007-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5292         Avoid warnings about conftest.dSYM directories on Mac OS X Leopard.
5293         * libltdl/m4/libtool.m4 (_LT_LINKER_BOILERPLATE)
5294         (_LT_LINKER_OPTION, _LT_CMD_GLOBAL_SYMBOLS): Remove
5295         conftest.dSYM directory.
5296         Report and analysis by Jeff Squyres and Peter O'Gorman.
5298 2007-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5300         * libltdl/configure.ac: Drop the broken and long-disabled code
5301         to output a banner for the libltdl configure.  Avoids the need
5302         to ship mkstamp with libltdl.
5304 2007-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5306         * tests/runpath-in-lalib.at: New test.
5307         * Makefile.am: Update.
5308         Report by Benoit SIGOURE <tsuna@lrde.epita.fr>.
5310 2007-10-16  Eric Blake  <ebb9@byu.net>
5312         Speed up bootstrap by improving lt_join.
5313         * libltdl/m4/ltsugar.m4 (lt_join, _lt_join): Rewrite to mirror
5314         Autoconf 2.62's faster implementation.
5316 2007-10-12  Eric Blake  <ebb9@byu.net>
5318         Whitespace cleanup.
5319         * libltdl/m4/ltsugar.m4: Avoid space-tab in indents.
5320         * libltdl/m4/libtool.m4: Avoid trailing space.
5322         Deal with Autoconf 2.62's semantic change in m4_append.
5323         * libltdl/m4/ltsugar.m4 (lt_append): Replace broken versions of
5324         m4_append.
5325         (lt_if_append_uniq): Don't require separator to be overquoted, and
5326         avoid broken m4_append.
5327         (lt_dict_add): Fix typo.
5328         * libltdl/m4/libtool.m4 (_LT_DECL): Don't overquote separator.
5330 2007-10-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5332         * libltdl/config/ltmain.m4sh: Also sanitize `LANGUAGE'.
5333         (func_mode_execute): Also restore `LANGUAGE', for old glibc.
5334         Report by Paul Eggert against Autoconf.
5336 2007-10-11  Eric Blake  <ebb9@byu.net>
5338         * libltdl/.cvsignore: Ignore argz.h.
5340 2007-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5342         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
5343         <lt_cv_prog_compiler_pic_works>: Renamed from
5344         lt_prog_compiler_pic_works.
5345         <lt_cv_prog_compiler_static_works>: Renamed from
5346         lt_prog_compiler_static_works.
5347         * NEWS: Update.
5349 2007-10-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5351         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
5352         extension `.sx'.
5353         * tests/suffix.test: Test it.
5355 2007-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5357         * libltdl/lt_dlloader.c (loader_callback, lt_dlloader_get): Use
5358         NULL, not 0, for the benefit of too picky compilers like PGI.
5359         * slist.c (slist_tail): Likewise.  Include stddef.h, for NULL.
5360         Report by Jeff Squyres.
5362 2007-09-05  Eric Blake  <ebb9@byu.net>
5364         * libltdl/ltdl.c (lt_dlcaller_get_data): Work even when no caller
5365         has set data.
5367 2007-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5369         * doc/libtool.texi (User defined module data)
5370         <lt_dlinterface_register>: Document that a NULL place matches
5371         all modules.
5372         * libltdl/lt_dlloader.c (lt_dlloader_remove): Actually iterate
5373         over all open modules when looking for modules that use it.
5374         If a resident module is found, return but do not set the error
5375         string.
5376         * libltdl/ltdl.c (lt_dlexit): When removing dlloaders, ignore
5377         errors that stem from earlier failed commands.  Exposed by the
5378         lt_dladvise test.
5379         Fixes regression over branch-1-5.
5380         Memleak report as Coverity CID 19 via Jeff Squyres.
5382 2007-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5384         * NEWS: Update.
5386         * libltdl/ltdl.c (trim): Fix possible write beyond array bound.
5388         * libltdl/ltdl.c (lt_dlopenadvise): Instead of asserting, return
5389         FILE_NOT_FOUND if the filename is "".
5391         * libltdl/ltdl.c (try_dlopen): Fix computation of extension,
5392         avoids subtracting pointer from NULL pointer.
5394         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Do not test
5395         array address of sys_dlsearch_path against NULL, rather test for
5396         nonempty contents.
5397         Coverity reports CID 148 and CID 149 via Jeff Squyres.
5399         * libltdl/ltdl.c (tryall_dlopen_module): Fix string length
5400         computation: do not allocate more than needed.
5402 2007-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5404         * libltdl/loaders/preopen.c (vm_close): `module' is unused.
5405         Coverity report CID 158 via Jeff Squyres.
5407         * libltdl/ltdl.c (parse_dotla_file): If we run out of memory,
5408         do not close the .la file twice.
5409         Coverity report CID 440 via Jeff Squyres.
5411         * libltdl/ltdl.c (has_library_ext): Remove dead code.
5412         Coverity report CID 561 against Open MPI via Jeff Squyres.
5414 2007-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5416         * libltdl/slist.c (slist_remove): When a matching item is found,
5417         break out of the loop to return the first match; also fixes
5418         possible NULL dereference.
5420         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
5421         (_LT_LANG_CXX_CONFIG) [ linux ]: Add support for IBM XL 8.0
5422         C/C++ (xlc*, xlC*) and IBM XL Fortran 10.1 (xlf*) on GNU/Linux,
5423         tested on ppc, pending a $shlibpath_var related fix.
5424         (_LT_SYS_HIDDEN_LIBDEPS): Double-quote $output_verbose_link_cmd
5425         properly during evaluation, obsoleting $no_glob_subst mangling.
5426         * NEWS: Update.
5428 2007-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5430         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
5431         [ k*bsd*-gnu ] <shlibpath_overrides_runpath>: Avoid spurious
5432         output in runpath test.
5434 2007-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5436         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ mingw, cygwin ]
5437         <GCJ>: Do not use -DDLL_EXPORT.
5438         Report by Ross Ridge <rridge@csclub.uwaterloo.ca>.
5440         * Makefile.am (edit): Do not warn against manual editing for the
5441         generated files libtool, libtoolize, libltdl/m4/ltversion.m4,
5442         tests/defs, as they are still in a preferred source code form as
5443         required by GPL.
5444         Report by DJ Delorie.
5446 2007-08-15  Dirk Mueller  <dmueller@suse.de>  (tiny change)
5447             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5449         * libltdl/ltdl.c (parse_dotla_file): Avoid a strlen.  When
5450         reading .la files, cope with files that are not
5451         newline-terminated.
5453 2007-08-05  Tilman Koschnick  <til@subnetz.org>  (tiny change)
5455         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
5456         [ linux ]: Treat pgcpp as Portland Group C++ compiler as well.
5458 2007-08-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5460         * libltdl/ltdl.c (try_dlopen): Use `attempt' rather than
5461         `filename', as the former has the needed extension when called
5462         by lt_dlopenext.
5463         Report by Brian Barrett.
5465 2007-07-27  Peter Rosin  <peda@lysator.liu.se>
5467         * Makefile.am: Pass STRIP through to the testsuite, so that
5468         tests that run configure will use the same strip program.
5470 2007-07-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5472         * tests/mdemo-exec.test: Also try absolute library names.
5473         * tests/mdemo/main.c (test_dl, main): Try lt_dlopenext as well.
5474         * THANKS: Update.
5475         Report by Brian Barrett.
5477 2007-07-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5479         * doc/fdl.texi: Update to GFDL 1.2.
5480         * doc/libtool.texi: Adjust.  Put License in Appendix.
5482         * libltdl/config/ltmain.m4sh (func_mode_link): Remove each
5483         intermediate relinked object after use, to avoid quadratic space
5484         complexity when linking partially.
5485         Report by Isidor Zeuner <eezyy@gmx.net>.
5487 2007-07-23  Eric Blake  <ebb9@byu.net>
5489         * libltdl/config/ltmain.m4sh: Whitespace cleanup.
5491         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
5492         <chase_symlinks>: Avoid compiler warning.
5494 2007-07-22  Peter Rosin  <peda@lysator.liu.se>
5496         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Add
5497         support for Microsoft Visual C. Also, older MinGW versions
5498         seem to need stdint.h to find intptr_t.
5500 2007-07-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5502         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]:
5503         Ignore lines in ld.so.conf starting with 'hwcap '.
5505 2007-07-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
5507         * tests/cdemo-exec.test: use $EXEEXT where appropriate
5508         to correct mingw cross-compile issues.
5509         * demo-deplibs.test: Ditto.
5510         * demo-exec.test: Ditto.
5511         * demo-inst.test: Ditto.
5512         * demo-relink.test: Ditto.
5513         * depdemo-exec.test: Ditto.
5514         * depdemo-inst.test: Ditto.
5515         * depdemo-relink.test: Ditto.
5516         * f77demo-exec.test: Ditto.
5517         * fcdemo-exec.test: Ditto.
5518         * mdemo-exec.test: Ditto.
5519         * mdemo-inst.test: Ditto.
5520         * mdemo2-exec.test: Ditto.
5521         * pdemo-exec.test: Ditto.
5522         * pdemo-inst.test: Ditto.
5523         * tagdemo-exec.test: Ditto.
5525 2007-07-14  Peter Rosin  <peda@lysator.liu.se>
5527         * AUTHORS, THANKS: Peter Ekberg got married, now Peter Rosin.
5529 2007-07-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
5531         * libltdl/m4/libtool.m4 (func_dirname_and_basename) <XSI>:
5532         New function.
5533         (func_dirname_and_basename) <!XSI>: New function.
5534         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname):
5535         Call it.  Also, take advantage of missed optimization using
5536         func_dirname's additional arguments.
5537         (func_mode_compile): Call it.
5538         (func_mode_install): Call it.
5539         (func_mode_link): Call it.
5541 2007-07-12  Peter Rosin  <peda@lysator.liu.se>
5543         * libltdl/config/ltmain.m4sh (func_mode_link): Strip the cwrapper
5544         using $STRIP instead of relying on the tools to support -s, which
5545         MSVC doesn't.
5547 2007-07-06  Peter O'Gorman  <peter@pogma.com>
5549         * libltdl/config/libtool.m4sh: Don't pass -msg_* through to the
5550         linker.
5551         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5553 2007-07-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
5555         * libltdl/lt__alloc.c, libltdl/loaders/preopen.c,
5556         libltdl/loaders/dyld.c, libltdl/loaders/dlopen.c, libltdl/ltdl.c,
5557         libltdl/lt_error.c, libltdl/lt_dlloader.c, libltdl/lt__dirent.c:
5558         Include lt__private.h prior to any system headers.
5559         * libltdl/lt__alloc.c: Remove redundant inclusion of configuration
5560         header.
5562 2007-07-04  Eric Blake  <ebb9@byu.net>
5564         * libltdl/ltdl.c (advise_dup): Delete function no longer used
5565         after memleak fix three days ago.
5567 2007-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5569         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Cater to
5570         old Sparc Solaris 7 ld that does not understand `-64'.
5571         Report by Vincent Lefevre <vincent@vinc17.org>.
5573 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5575         * libltdl/m4/lt~obsolete.m4 (LTOBSOLETE_VERSION): New macro, to
5576         force-pull in this file by aclocal.
5577         * libltdl/m4/libtool.m4 (LT_INIT): Require LTOBSOLETE_VERSION.
5578         * tests/libtoolize.at (upgrading verbatim style aclocal.m4):
5579         Adjust.
5580         Report by H. J. Lu <hjl@lucon.org>.
5582         * libltdl/ltdl.c (tryall_dlopen): Rename argument to have typed
5583         alias of `advise' instead of allocating a copy.  Fixes memleak.
5585 2007-06-30  Peter Breitenlohner  <peb@mppmu.mpg.de>
5587         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Correct a typo
5588         ("-dld" instead of "-ldld").
5590 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
5592         Add a test to simulate a failure visible on systems which
5593         need a library prefix like 'lib', such as BeOS.  Fix a number
5594         of bugs exposed by this test in order for it to pass.
5595         Currently the prefix is hardcoded as 'lib', as I am not aware
5596         of systems that require a different prefix:
5598         * libltdl/loaders/preopen.c (lt_dlpreload_open):  Move error
5599         condition out of test loop to be sure that each originator is
5600         tried, instead of erroring out if the first doesn't match.
5601         Support passing NULL as the originator to load all preloaded
5602         modules originating in the program itself.
5603         * libltdl/lt_dlloader.c (lt_dlloader_dump): New debug function.
5604         * libltdl/libltdl/lt_dlloader.h (lt_dlloader_dump): Declare it
5605         when LT_DEBUG_LOADERS is defined at compile time.
5606         * libltdl/ltdl.c (lt_dlinit): Dump loader list after successful
5607         initialisation.
5608         (tryall_dlopen): Add a new VTABLE parameter to force use of a
5609         specific loader in preference to trying every loader in turn.
5610         Adjust all callers.
5611         (try_dlopen): Always see whether a module was preloaded for
5612         module names with no directory component before searching the
5613         filesystem for a match.
5614         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Declare
5615         a new global_symbol_to_c_name_address_lib_prefix variable.
5616         (global_symbol_to_c_name_address_lib_prefix): The sed
5617         expressions to use when a lib prefix is enforced need to be
5618         slightly different to work with preloaded modules.
5619         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): In order
5620         to name preloaded symbols correctly for the lookup algorithm
5621         to work when the loaded module file must be prefixed with lib.
5622         Use global_symbol_to_c_name_address_lib_prefix when
5623         need_lib_prefix is other than no.
5624         * tests/need_lib_prefix.at: New test to check for breakage on
5625         hosts where need_lib_prefix is unknown.
5626         * Makefile.am (TESTSUITE_AT): Add new test.
5627         * tests/TODO: Note missing tests that would have caught some
5628         of the latent bugs fixed by this patch.
5629         * HACKING: Document libltdl keyword.
5630         * NEWS: Updated.
5632 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
5634         Reenable compilation of libltdl with C++:
5636         * libltdl/ltdl.c (tryall_dlopen): Rename the try variable to
5637         attempt, and cast explicitly.
5638         (advise_dup): Add explicit cast.
5640 2007-06-22  Peter O'Gorman  <peter@pogma.com>
5642         * libltdl/config/ltmain.m4sh (version-number) [irix]: Don't subtract
5643         1 from major as it may be less than age.
5645 2007-06-21  Noah Misch  <noah@cs.caltech.edu>
5647         * tests/f77demo/configure.ac [--with-dist]: New option.  Skip most
5648         Fortran checks when given.
5649         * tests/fcdemo/configure.ac [--with-dist]: Likewise.
5650         * Makefile.am (@DIST_MAKEFILE_LIST@): Pass --with-dist.
5651         Reported by Benoit Sigoure <tsuna@lrde.epita.fr>.
5653 2007-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
5655         * AUTHORS: Add myself.
5657 2007-06-18  Charles Wilson  <libtool@cwilson.fastmail.fm>
5659         * libltdl/config/ltmain.m4sh: Add new magic variable
5660         for use with cwrapper.
5661         (func_ltwrapper_script_p): New function.
5662         (func_ltwrapper_executable_p): New function.
5663         (func_ltwrapper_scriptname): New function.
5664         (func_ltwrapper_p): Accomodate both wrapper scripts and
5665         wrapper executables.
5666         (func_mode_execute): Handle $file that is a wrapper
5667         script and $file that is a wrapper executable differently.
5668         (func_mode_install) [cygwin|mingw]: If $file is a wrapper
5669         executable, use func_ltwrapper_scriptname to determine
5670         wrapper script name. Afterwards, always use
5671         func_ltwrapper_script_p instead of func_ltwrapper_p.
5672         (func_emit_libtool_wrapper_script): Rename to...
5673         (func_emit_wrapper): ...this. All callers changed.
5674         (func_emit_libtool_cwrapperexe_source): Rename to...
5675         (func_emit_cwrapperexe_src): ...this. All callers changed.
5676         Embed new magic_exe variable into source. Private transient
5677         wrapper script now called foo_ltshwrapperTMP, not
5678         foo_ltshwrapper.
5679         (func_emit_cwrapperexe_src) [main, mingw]: Use _spawnv
5680         and return child's exit code manually rather than rely on
5681         broken execv.
5682         (func_mode_link) [cygwin|mingw]: Don't call dirname and
5683         basename directly; use func_dirname and func_basename
5684         when computing cwrapper names.  Use cwrapper to generate
5685         wrapper script, and use pathname returned by
5686         func_ltwrapper_scriptname instead of $output.
5687         (func_mode_link) [NOT cygwin|mingw]: move wrapper script
5688         generation for non-win32 inside case statement, as default
5689         case.
5690         (func_mode_uninstall) [$name's extension != .lo|.la]:
5691         'clean' mode must handle $file differently if it is a libtool
5692         wrapper script, or if it is a libtool wrapper executable.
5693         * tests/destdir.at [Simple DESTDIR install]: $EXEEXT fixups.
5694         * tests/destdir.at [DESTDIR with in-package deplibs]: Ditto.
5696 2007-06-17  Noah Misch  <noah@cs.caltech.edu>
5698         * AUTHORS: Add myself.
5700 2007-06-17  Peter O'Gorman  <peter@pogma.com>
5702         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): add quotes to
5703         the test -n.
5705 2007-06-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
5707         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): ensure stderr
5708         is redirected even when getconf does not exist.
5710 2007-06-09  Charles Wilson  <libtool@cwilson.fastmail.fm>
5712         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
5713         Take an argument to specify value assigned to
5714         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR in the emitted
5715         script.
5716         (func_emit_libtool_cwrapperexe_source) [file scope]:
5717         define permission flags S_IXGRP and S_IXOTH if not
5718         already defined.
5719         (func_emit_libtool_cwrapperexe_source) [LTWRAPPER_DEBUGPRINTF]:
5720         Use C89-compatible syntax to mimic variadic macros.
5721         Adjust all callers.
5722         (func_emit_libtool_cwrapperexe_source) [check_executable]:
5723         avoid embedded #ifdefs; use S_IXGRP and S_IXOTH
5724         unconditionally.
5725         (func_emit_libtool_cwrapperexe_source) [make_executable]:
5726         ditto.
5727         (func_emit_libtool_cwrapperexe_source): don't rewrite
5728         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR posthoc; instead pass
5729         correct argument when calling func_emit_libtool_wrapper_script.
5730         (func_mode_link): pass correct argument when calling
5731         func_emit_libtool_wrapper_script.
5733 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
5735         * libltdl/config/ltmain.m4sh (func_emit_libtool_cwrapperexe_source):
5736         ensure that generated source follows GCS as nearly as
5737         possible.
5739 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
5741         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
5742         add code block to handle cases when wrapper script is in $objdir.
5743         (func_emit_libtool_cwrapperexe_source): replace DEBUG() macro
5744         with namespace-safe LTWRAPPER_DEBUGPRINTF(). Call
5745         func_emit_libtool_wrapper_script() with appropriate filters to
5746         embed script text in C char* static variable.
5747         (f_e_l_c_s: main): add new option --lt-dump-script, parse argv[]
5748         for it, and take appropriate action.  Call chase_symlinks()
5749         on argv[0], in case this.exe was launched via one.  Use chased
5750         value to determine full absolute pathname of wrapper script, in
5751         $objdir. Unconditionally write script out to this pathname and
5752         set permission bits.  Remove extraneous ';' from debugging loop.
5753         (f_e_l_c_s: main) [mingw]: DOS-ize $SHELL before populating
5754         newargv[0]; if $TARGETSHELL environment variable is set, use
5755         it instead of $SHELL and do not DOS-ize.  Ensure newargv[1]
5756         (wrapper script absolute path) uses only '/', not '\'.  Make
5757         sure to call execv() with DOS-ized $SHELL (or un-DOS-ized
5758         $TARGETSHELL, if set)
5759         (f_e_l_c_s: make_executable): new function
5760         (f_e_l_c_s: chase_symlinks): new function (no-op if !S_ISLNK)
5762 2007-06-03  Peter O'Gorman  <peter@pogma.com>
5764         * libltdl/m4/libtool.m4 (old_archive_cmds): Remove
5765         old_deplibs.
5766         * tests/archive-in-archive.at: Check for archives as members
5767         of static archives. Currently XFAILS, above only eliminates
5768         one of the two static archives.
5769         * Makefile.am: Add test.
5770         Reported by Daniel Macks <dmacks@netspace.org>
5772 2007-06-01  Steve Ellcey  <sje@cup.hp.com>
5774         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Try using getconf
5775         to set lt_cv_sys_max_cmd_len.
5777 2007-05-28  Peter O'Gorman  <peter@pogma.com>
5779         * libltdl/config/ltmain.m4sh (func_mode_link),
5780         libltdl/m4/libtool.m4 [darwin]: Only use ${wl} in verstring
5781         with xlc.
5783 2007-05-22  Gary V. Vaughan  <gary@gnu.org>
5785         * tests/lt_dladvise.at:  Use the lib prefix throughout for
5786         better portability - testing whether modules build and load
5787         without that prefix is not the domain of this test.
5788         Also, only run the test of the global hint with the depend
5789         module on hosts that can compile a module without passing
5790         -no-undefined in link mode.
5792 2007-05-10  Noah Misch  <noah@cs.caltech.edu>
5794         * tests/duplicate_deps.at: Make the XFAIL unconditional, but
5795         skip the test if the test link would succeed even without
5796         --preserve-dup-deps.
5798         * libltdl/config/general.m4sh (func_echo): Use $* instead of
5799         ${1+"$@"}.
5801 2007-05-09  Eric Blake  <ebb9@byu.net>
5803         * libltdl/libltdl/lt_error.h (LT_ERROR_LEN_MAX): Adjust, to fix
5804         buffer overflow in previous patch.
5806 2007-05-09  Gary V. Vaughan  <gary@gnu.org>
5808         * tests/lt_dladvise.at: Commit missing file from below.
5810 2007-05-08  Gary V. Vaughan  <gary@gnu.org>
5812         Without this patch, lt_dlopen always opens modules with symbol
5813         visibility set according to the underlying implementation.
5814         Here, we add lt_dlopenadvise() to allow callers to request,
5815         among other things, local or global symbol visibility from the
5816         underlying dlloader:
5818         * libltdl/ltdl.c (LT_DLRESIDENT_FLAG): Removed.
5819         (LT_DLIS_RESIDENT): Use public is_resident info field.
5820         (LT_DLIS_SYMLOCAL, LT_DLIS_SYMGLOBAL): New macros to test for
5821         module symbol visibility status.
5822         (tryall_dlopen): If vtable->module_open() was able to act on
5823         either is_symlocal or is_symglobal hints, store that in
5824         the handle flags.
5825         (lt_dlopenadvise): New function that works like lt_dlopen(),
5826         but accepts an advise type to determine whether to ask
5827         dlloaders to change default symbol visibility.
5828         (lt_dlopen, lt_dlopenext): Just call lt_dlopenadvise() with
5829         the correct parameters.
5830         (lt_dladvise_init, lt_dladvise_destroy): New functions to
5831         initialize and destroy an advise type hint.
5832         (lt_dladvise_ext, lt_dladvise_resident, lt_dladvise_local)
5833         (lt_dladvise_global): Set hints on an advise type.
5834         (openadvise): Factored out of lt_dlopenadvise.
5835         (has_library_ext): Factored out of lt_dlopenadvise.
5836         * libltdl/ltdl.h: Declare all of the above.
5837         (lt_dlinfo): New fields for advise hints.
5838         * libltdl/libltdl/lt_dlloader.h (lt_module_open): Add a new
5839         advise parameter.  Adjust all callers.
5840         (lt_dladvise): New opaque type for advise hints.
5841         * libltdl/libltdl/lt__private.h (lt__advise): Declare
5842         contents of opaque lt_dladvise type.
5843         * libltdl/libltdl/lt_error.h (CONFLICTING_FLAGS): New error
5844         for attempts to have local and global symbol visibility at the
5845         same time.
5846         * libltdl/loaders/dld_link.c, libltdl/loaders/dyld.c,
5847         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
5848         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Adjust.
5849         * libltdl/loaders/dlopen.c (RTLD_LOCAL, RTLD_GLOBAL): Try to
5850         define these symbols if the system has equivalents.
5851         (vmopen): If unable to act on a caller request to set symbol
5852         visibility, then unset the relevant hints in the advise type.
5853         * tests/lt_dladvise.at: New tests for the above.
5854         * doc/libtool.texi (Libltdl Interface): Updated.
5855         * NEWS: Updated.
5857 2007-05-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5859         * libltdl/config/ltmain.m4sh (func_mode_link): When adding
5860         new_inherited_linker_flags to compiler_flags, remember to
5861         translate .ltframework back.  Fixes bug introduced 2007-04-23.
5862         * THANKS: Update.
5863         * tests/inherited_flags.at: Amend test.
5864         Report by Christoph Egger.
5866 2007-05-03  Reuben Thomas  <rrt@sc3d.org>  (tiny change)
5868         * doc/libtool.texi (Libltdl interface): Fix typo.
5870 2007-05-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5872         * Makefile.am (clean-ltmain-sh): Removed.
5873         (libtool, $(srcdir)/$(m4dir)/ltversion.m4)
5874         ($(srcdir)/$(auxdir)/ltmain.sh): Updated to not depend on any
5875         phony rules.  Test `$?' for prerequisites that should always
5876         cause us to update the target.  Fixes rebuilding rules, at the
5877         cost of sometimes updating too much with non-GNU make.
5879 2007-04-27  Noah Misch  <noah@cs.caltech.edu>
5881         * tests/ctor.at: New file.
5882         * Makefile.am (TESTSUITE_AT): Add tests/ctor.at.
5884 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
5886         * libltdl/libltdl/lt__glibc.h: Use !HAVE_WORKING_ARGZ
5887         instead of SYSTEM_ARGZ_IS_BROKEN.
5888         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Ditto.  Also, minor
5889         stylistic improvements.
5890         Report by Bruno Haible <bruno@clisp.org>.
5892 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
5893             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5895         * libltdl/argz_.h: ensure error_t definition is obtained
5896         in same mechanism system argz.h would have.
5897         * libltdl/libltdl/lt__glibc.h: also detect if
5898         SYSTEM_ARGZ_IS_BROKEN when determining whether to re#def
5899         argz* functions.
5900         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): add new test to check
5901         if $host's argz facilities are known bad.  Err on the side
5902         of caution if cross-compiling.
5904 2007-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5906         * README, README.alpha: Document how to test an arbitrary
5907         installed libtool script.
5909 2007-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5911         * tests/cmdline_wrap.at: Avoid `AT_CAPTURE_FILE' if it not
5912         defined (Autoconf < 2.60).
5913         * tests/shlibpath.at: Add `libtool' keyword.
5915         * tests/indirect_deps.at: New file, with tests to ensure
5916         `link_all_deplibs=no' does not break functionality.
5917         * Makefile.am: Adjust.
5919 2007-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5921         * libltdl/config/ltmain.m4sh (func_mode_link): Fix accumulation
5922         of `inherited_linker_flags' entries from multiple deplibs, by
5923         adding $new_inherited_linker_flags only once, only in link pass.
5924         * tests/inherited_flags: Amend test to expose this.
5925         * NEWS: Adjust: kill one regression, but add note about the
5926         feature new in 1.9b.
5927         Report by Jeff Squyres and others.
5929 2007-04-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
5931         * libltdl/config/ltmain.m4sh (func_mode_link): move wrapper
5932         script generation from here...
5933         (func_emit_libtool_wrapper_script): to this new function, and
5934         write to stdout
5935         (func_mode_link): move cwrapper source code generation from
5936         here...
5937         (func_emit_libtool_cwrapperexe_source): to this new function,
5938         and write to stdout
5939         (func_mode_link): call the two new functions and redirect
5940         output to appropriate file.
5942 2007-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5944         * libltdl/config/ltmain.m4sh (func_mode_link) <-no-install>
5945         [ darwin ]: Treat like `-no-fast-install', as we cannot
5946         hardcode.  Report by Simon Josefsson.
5948 2007-04-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5950         * doc/libtool.texi (Link mode) <-no-install>: Mention that this
5951         still generates a wrapper script on systems without hardcoding.
5952         * tests/stresstest.at: Test `-no-install'.
5953         * THANKS: Update.
5954         Report by Simon Josefsson.
5956 2007-03-30   Matthieu Herrb  <matthieu.herrb@laas.fr>
5958         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
5959         [ openbsd ]: Add an explicit check for shared libraries support.
5961 2007-03-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5963         * Makefile.am ($(srcdir)/$(m4dir)/ltversion.m4): Fix quoting
5964         error.
5966 2007-03-28  Gary V. Vaughan  <gary@gnu.org>
5968         * HACKING (Abstraction layers in libltdl): Rewritten somewhat
5969         for (hopefully) better clarity.
5971 2007-03-26  Gary V. Vaughan  <gary@gnu.org>
5973         The stamp-vcl file rules caused non-gnu make programs to rerun
5974         parts of the configuration process on each invocation.  Instead
5975         of relying on a stamp file, we now compare version numbers of
5976         generated files with the ChangeLog timestamp manually in the
5977         affected make rules to decide whether regenerating is necessary:
5979         * Makefile.am (EXTRA_DIST): Remove stamp-vcl.
5980         (clean-ltmain-sh): Also remove users' obsolescent stamp-vcl.
5981         (rebuild): Keep some common code here for...
5982         (libtool, libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh):
5983         Rewritten to work without reference to intermediate stamp-vcl
5984         file.
5985         * configure.ac (CONFIG_STATUS_DEPENDENCIES): Change from
5986         stamp-vcl to ChangeLog.
5987         * NEWS: Removed entry saying this fix is needed.
5989 2007-03-25  Gary V. Vaughan  <gary@gnu.org>
5991         * HACKING (LGPL with Libtool exception clause): Typo.
5992         Reported by Tim Van Holder  <tim.van.holder@telenet.be>
5994         * HACKING (Licensing Rules): Explain the various license texts
5995         used for files distributed with Libtool, and update license text
5996         to match.
5997         * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
5998         bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
5999         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
6000         libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
6001         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
6002         libltdl/config/mkstamp, libltdl/configure.ac,
6003         libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
6004         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
6005         libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
6006         libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h,
6007         libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c,
6008         libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
6009         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
6010         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c,
6011         libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
6012         libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
6013         libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
6014         libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
6015         libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
6016         libltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
6017         libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
6018         tests/cdemo-conf.test, tests/cdemo-exec.test,
6019         tests/cdemo-make.test, tests/cdemo-shared.test,
6020         tests/cdemo-static.test, tests/cdemo-undef.test,
6021         tests/cdemo/Makefile.am, tests/cdemo/configure.ac,
6022         tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
6023         tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
6024         tests/demo-conf.test, tests/demo-deplibs.test,
6025         tests/demo-exec.test, tests/demo-hardcode.test,
6026         tests/demo-inst.test, tests/demo-make.test,
6027         tests/demo-nofast.test, tests/demo-noinst-link.test,
6028         tests/demo-nopic.test, tests/demo-pic.test,
6029         tests/demo-relink.test, tests/demo-shared.test,
6030         tests/demo-static.test, tests/demo-unst.test,
6031         tests/demo/Makefile.am, tests/demo/configure.ac,
6032         tests/demo/dlmain.c, tests/demo/foo.c,
6033         tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
6034         tests/demo/hello.c, tests/demo/main.c,
6035         tests/depdemo-conf.test, tests/depdemo-exec.test,
6036         tests/depdemo-inst.test, tests/depdemo-make.test,
6037         tests/depdemo-nofast.test, tests/depdemo-relink.test,
6038         tests/depdemo-shared.test, tests/depdemo-static.test,
6039         tests/depdemo-unst.test, tests/depdemo/Makefile.am,
6040         tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
6041         tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
6042         tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
6043         tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
6044         tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
6045         tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
6046         tests/depdemo/l4/l4.h, tests/depdemo/main.c,
6047         tests/depdemo/sysdep.h, tests/deplibs-ident.at,
6048         tests/destdir.at, tests/duplicate_conv.at,
6049         tests/duplicate_deps.at, tests/duplicate_members.at,
6050         tests/early-libtool.at, tests/export.at,
6051         tests/f77demo-conf.test, tests/f77demo-exec.test,
6052         tests/f77demo-make.test, tests/f77demo-shared.test,
6053         tests/f77demo-static.test, tests/f77demo/Makefile.am,
6054         tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
6055         tests/f77demo/foo.h, tests/f77demo/fooc.c,
6056         tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
6057         tests/fcdemo-make.test, tests/fcdemo-shared.test,
6058         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
6059         tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
6060         tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
6061         tests/inherited_flags.at, tests/libtoolize.at,
6062         tests/link-2.test, tests/link-order.at, tests/link-order2.at,
6063         tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test,
6064         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
6065         tests/mdemo-inst.test, tests/mdemo-make.test,
6066         tests/mdemo-shared.test, tests/mdemo-static.test,
6067         tests/mdemo-unst.test, tests/mdemo/Makefile.am,
6068         tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
6069         tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
6070         tests/mdemo/sub.c, tests/mdemo2-conf.test,
6071         tests/mdemo2-exec.test, tests/mdemo2-make.test,
6072         tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
6073         tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
6074         tests/objectlist.test, tests/old-m4-iface.at,
6075         tests/pdemo-conf.test, tests/pdemo-exec.test,
6076         tests/pdemo-inst.test, tests/pdemo-make.test,
6077         tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
6078         tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
6079         tests/pdemo/longer_file_name_foo.c,
6080         tests/pdemo/longer_file_name_foo2.c,
6081         tests/pdemo/longer_file_name_hell1.c,
6082         tests/pdemo/longer_file_name_hell2.c,
6083         tests/pdemo/longer_file_name_hello.c,
6084         tests/pdemo/longer_file_name_main.c, tests/quote.test,
6085         tests/recursive.at, tests/search-path.at, tests/sh.test,
6086         tests/shlibpath.at, tests/standalone.at, tests/static.at,
6087         tests/stresstest.at, tests/subproject.at, tests/suffix.test,
6088         tests/tagdemo-conf.test, tests/tagdemo-exec.test,
6089         tests/tagdemo-make.test, tests/tagdemo-shared.test,
6090         tests/tagdemo-static.test, tests/tagdemo-undef.test,
6091         tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
6092         tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
6093         tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
6094         tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
6095         tests/tagdemo/main.cpp, tests/tagtrace.test,
6096         tests/template.at, tests/testsuite.at: Apply correct license
6097         text according to the new rules set out in HACKING.
6099 2007-03-19  Gary V. Vaughan  <gary@gnu.org>
6101         * libtoolize.m4sh: Handle argz.m4 specially like ltdl.m4, so
6102         that it isn't copied unless libltdl is being used.  Copy other
6103         macro files according to their tagged serial numbers.
6104         * tests/libtoolize.at: Adjust.
6106 2007-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6108         * tests/mdemo/Makefile.am (libmlib_la_LDFLAGS): Add
6109         `-export-symbols-regex ".*"' because the convenience libltdl
6110         uses export markers and thus turns off autoexport on w32.  Fixes
6111         test failures for Cygwin and MinGW.
6112         Bug analysis by Charles Wilson.
6114         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
6115         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
6116         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ interix ]: When
6117         matching for interix, accept version range [3-9] instead of 3.
6118         * NEWS: Update.
6119         Report by Martin Koeppe <mkoeppe@gmx.de>.
6121         * libltdl/m4/libtool.m4 (LT_PROG_GCJ): Avoid M4 expansion error
6122         that caused `dnl' to be merged to the previous word.
6123         * THANKS: Update.
6124         Report by Steve Ellcey.
6126 2007-03-09  Gary V. Vaughan  <gary@gnu.org>
6128         * libtoolize.m4sh: Replace literal tab chars in help comment
6129         with spaces to align columns in --help output.
6131 2007-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6133         * libltdl/config/ltmain.m4sh (func_mode_link): Also apply the
6134         symbol filtering for w32 and the include_expsyms feature in the
6135         case of exceeded command line length.  Fixes test failure on
6136         MinGW.
6138         * tests/stresstest.at: For const data object imported from
6139         shared library, define appropriate macros to expand
6140         __declspec(dllimport) on w32.  Use two different main objects
6141         and pick the right one for the link flags we are about to test.
6142         Fixes test failure on MinGW.
6144         * tests/export.at: For const data object imported from shared
6145         library, define appropriate macros to expand
6146         __declspec(dllimport) on w32.  Fixes test failure on MinGW.
6148 2007-03-05  Gary V. Vaughan  <gary@gnu.org>
6150         * libtoolize.m4sh (func_check_macros): Display m4 quotes correctly
6151         in AC_CONFIG_MACRO_DIR diagnostics.
6153         * libltdl/config/general.m4sh (M4SH_VERBATIM): New macro to
6154         simplify m4sh quote quoting in blocks of raw shell code.
6155         * clcommit.m4sh, libtoolize.m4sh, libltdl/config/getopt.m4sh,
6156         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
6157         tests/defs.m4sh: Use it.
6158         * HACKING (Editing `.m4sh' Files): Mention M4SH_VERBATIM Macro.
6160 2007-02-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6162         * tests/lt_dlexit.at: Allow test to pass on static-only systems
6163         and with disable-shared.
6165         * NEWS: Rewrite all news since 1.9f and put in categories,
6166         update.
6168         * libltdl/Makefile.inc: Fix the file description, so that it
6169         matches recursive and nonrecursive libltdl setup.
6170         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Do not depend
6171         upon the exact text of the copyright header, just copy until
6172         the marker line.  Remove the marker lines in the output, and
6173         adjust the description for subpackage setup.
6175 2007-02-26  Gary V. Vaughan  <gary@gnu.org>
6177         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fix regexp typo.
6179         * clcommit.m4sh: Look in the right directory for helper scripts.
6181 2007-02-25  Gary V. Vaughan  <gary@gnu.org>
6183         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fixup regex to
6184         match Copyright notice change below.
6186         * HACKING, Makefile.am, Makefile.maint, bootstrap,
6187         libltdl/Makefile.am, libltdl/Makefile.inc, libltdl/m4/libtool.m4,
6188         ltmain.c, tests/cdemo/Makefile.am, tests/demo/Makefile.am,
6189         tests/depdemo/Makefile.am, tests/depdemo/l1/Makefile.am,
6190         tests/depdemo/l2/Makefile.am, tests/depdemo/l3/Makefile.am,
6191         tests/depdemo/l4/Makefile.am, tests/f77demo/Makefile.am,
6192         tests/fcdemo/Makefile.am, tests/libtoolize.at,
6193         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
6194         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Update
6195         Copyright notice text to include URL for canonical GPL document.
6197 2007-02-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6199         * tests/static.at: Forgot to fix PATH for the first
6200         func_test_exec invocation.  So factor out into new functions
6201         func_fix_path and func_restore_path and use those.
6203         * README: Document the need for GNU make to build Libtool.
6204         Point the user to the doc/notes.txt file.  In the examples, use
6205         `gmake' throughout to make it more obvious.  Explain simpler way
6206         to run both testsuites and either one.  Referring to individual
6207         tests needs the `tests/' prefix.
6208         * README.alpha: Likewise.
6209         * doc/notes.texi: Likewise, document need for GNU make.
6210         Comment out the FreeBSD make issue for now.
6212         * tests/static.at: Larger rewrite to make work on w32: Use three
6213         different prefixes instead of three libdirs, so the moving of
6214         the DLLs works as expected.  Adjust all code.  Since now
6215         $libdirI/../bin is distinct from the directory of the installed
6216         program, take care than on w32 PATH contains the needed bindirs,
6217         in appropriate order.
6218         Report by Charles Wilson.
6220         * Makefile.am (INSTALLCHECK_ENVIRONMENT): Point LTDLINCL and
6221         LIBLTDL to installed libltdl, so that it is being used by
6222         the lt_dlexit test.
6224 2007-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6226         * doc/libtool.texi (Install mode, libtool script contents):
6227         Describe current and system-specific DESTDIR limitations.
6228         * tests/destdir.at: XFAIL if `fast_install' is no.
6230         * doc/libtool.texi (LT_INIT): Fix typo.
6232         * doc/libtool.texi (Libtool test suite): Mention the new
6233         testsuite.  Point to README rather than INSTALL for testing
6234         instructions.
6235         (Test descriptions): Fix more file names.  Also mention
6236         cdemo-undef.test, mdemo2-conf.test, mdemo2-exec.test,
6237         mdemo2-make.test, objectlist.test, pdemo-conf.test,
6238         pdemo-exec.test, pdemo-inst.test, pdemo-make.test,
6239         tagdemo-conf.test, tagdemo-exec.test, tagdemo-make.test,
6240         tagdemo-static.test, tagdemo-shared.test, tagdemo-undef.test,
6241         f77demo-conf.test, f77demo-exec.test, f77demo-make.test,
6242         f77demo-static.test, f77demo-shared.test, fcdemo-conf.test,
6243         fcdemo-exec.test, fcdemo-make.test, fcdemo-static.test,
6244         fcdemo-shared.test.  Describe what they do.
6245         (When tests fail, Troubleshooting): Mention how to pass options
6246         to the new test suite.
6247         * tests/tagdemo/README: Fix description.
6249         * bootstrap: Also set GREP, FGREP, EGREP, LN_S, when creating a
6250         preliminary ltmain.sh script.
6252         * doc/libtool.texi (Test descriptions): Track the grand test
6253         suite renaming from 2003-10-14 in the tests documentation.
6254         assign.test is merged into sh.test.  Fix description of sh.test.
6255         * tests/sh.test: Likewise.
6257         * doc/libtool.texi (LT_INIT): Fix wording of intro a bit.
6258         <shared, static>: Also describe these default LT_INIT options.
6259         <AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL>
6260         <AC_DISABLE_FAST_INSTALL>: Mention deprecated macro names,
6261         including the respective LT_INIT replacement.
6262         <AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_ENABLE_SHARED>
6263         <AC_ENABLE_STATIC>: Document, un-deprecate.  Suggest the
6264         respective LT_INIT replacement.
6265         <AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_ENABLE_SHARED>
6266         <AM_ENABLE_STATIC>: Document deprecated aliases.
6267         (Distributing libltdl) <AC_WITH_LTDL, AC_LIBLTDL_INSTALLABLE>
6268         <AC_LIBLTDL_CONVENIENCE>: Document deprecated aliases.
6269         * libltdl/m4/ltoptions.m4 (AM_ENABLE_SHARED, AM_DISABLE_SHARED)
6270         (AM_ENABLE_STATIC, AM_DISABLE_STATIC): Make these AU_ALIASes of
6271         the respective AC_* macros, so we do not recommend LT_INIT(*) in
6272         this case.
6273         (AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC)
6274         (AC_DISABLE_STATIC): Un-deprecate these.  Remove now-superfluous
6275         aclocal-1.4 backwards compatibility comments.
6277         * tests/link-order2.at: Rewrite completely.  Do not use `sin'
6278         from the math library, there are too many problems with this.
6279         Instead, use a self-written library, install it without the
6280         Libtool library file, to emulate a native library in a system
6281         directory, and adjust $shlibpat_var.  Try overriding its symbol.
6282         Further, also try an installed `wrong' binary.
6283         Avoid failing test bits on AIX without runtimelinking and on
6284         Darwin in some cases, SKIP at the end in this case.
6285         Analysis by Peter O'Gorman.
6287         * doc/notes.texi: Mention MACOSX_DEPLOYMENT_TARGET issue.
6288         * tests/template.at: Only skip those tests failing on Darwin
6289         if `-flat_namespace' is used by libtool.  In that case, SKIP
6290         at the end.  Analysis by Peter O'Gorman.
6292 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6294         Fix -export-symbols and -export-symbols-regex for links that
6295         exceed the command line length and use convenience archives.
6297         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid grepping a
6298         nonexistent file if using reloadable objects.  Do not create a
6299         linker script nor a linker input file if no objects are passed.
6300         Apply export_symbols_regex in case the command line length is
6301         exceeded.
6302         Report by Bob Friesenhahn.
6304         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
6305         <compiler_needs_object>: New tag variable.  Default to `no'.
6306         (_LT_LINKER_SHLIBS) [ linux ]: Set it to yes for Sun C 5.9.
6307         (_LT_LANG_CXX_CONFIG): Also default it to `no'.
6308         [ linux ]: Set it to `yes' for Sun C++ 5.9.
6309         * libltdl/config/ltmain.m4sh (func_mode_link): If we link
6310         no objects but only convenience archives into a library,
6311         force expansion if `compiler_needs_object' is yes.
6312         For creating a linker input filelist due to long cmdline,
6313         extract the first object if `compiler_needs_object' is yes.
6314         * doc/libtool.texi (libtool script contents): Document it.
6315         Fixes test failures of Sun compilers on GNU/Linux.
6316         Report by Terry D. Dontje.
6318         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid setting
6319         `$libobjs' to a single space; set it to empty in that case.
6321 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6323         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [ osf5 ]:
6324         On Tru64 5.1, const relocations do not work well.  Omit the
6325         const here.  Fixes failure of demo-make after demo-shared with
6326         link editor error `seg_info_ptr: Couldnt find a seg type 2'.
6328         * Makefile.am (doc_libtool_TEXINFOS): Renamed from...
6329         (libtool_TEXINFOS): ...this, to fix dependencies.  Omit from
6330         EXTRA_DIST.
6331         (check-local): Also depend upon $(bin_SCRIPTS).
6333 2007-02-23  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>  (tiny change)
6335         * libltdl/config/general.m4sh (sed_double_backslash): Fix
6336         hacky sed script to avoid limitations but retain portability to
6337         Solaris /bin/sed.  Remove old obsolete cruft.
6339 2007-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6341         * libltdl/config/ltmain.m4sh (func_mode_link): Fix the check for
6342         convenience archives when warning about linking against static
6343         libraries: test against $deplib rather than empty $lib.
6345 2007-02-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6347         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Fix detection of new enough
6348         libltdl by actually checking for the declaration of
6349         lt_dlinterface_register in ltdl.h with AC_CHECK_DECL.
6350         Remove redundant configure output line.
6352         * tests/template.at: Reformat, add M4 quoting.  Use $LDFLAGS
6353         consistently for link mode.
6355 2007-02-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6357         * tests/static.at: Use the right names for the broken libs.
6359 2007-02-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6361         * tests/deplibs-ident.at [aix, hppa*-*-hpux*, interix, openbsd]:
6362         Do not XFAIL, on these systems we happen to pass.
6363         * tests/duplicate_deps.at [aix]: Likewise.
6365         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux |
6366         k*bsd*-gnu ]: Fix eval quoting in the DT_RUNPATH test.
6368         * HACKING: Update.
6370         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ linux ]
6371         <whole_archive_flag_spec>: For Sun C/C++ 5.9, do not add
6372         /dev/null as dummy object, it fails with GNU ld version
6373         2.16.91.0.7-amd-sles9.  Report by Terry D. Dontje.
6374         * THANKS: Update.
6376 2007-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6378         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ osf4, osf5 ]
6379         <archive_expsym_cmds>: Use `${wl}-input' not `-input', for
6380         cc.  Could use `-input_to_ld'.
6381         (_LT_LANG_CXX_CONFIG) [ osf4, osf5 ] <archive_expsym_cmds>:
6382         Use `${wl}' instead of `-Wl,', for consistency.
6384 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6386         Fix spurious testsuite failures on AIX due on NFS mounts due to
6387         shared library images that cannot be removed without `slibclean'
6388         which needs superuser privileges.
6390         * tests/testsuite.at (PREPARE_TESTS): Define $mkdir_p globally.
6391         (LT_AT_MVDIR): New macro to emulate `mv dir dest'.
6392         * tests/destdir.at: Use LT_AT_MVDIR.
6393         * tests/shlibpath.at: Likewise.
6394         * tests/static.at: Likewise.
6396 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6398         * tests/export.at: Exporting is not fully functional with
6399         -retain-symbols-file.  Do not test for failure to link `broken'
6400         in this case.  At the end of the test, SKIP if we are not fully
6401         functional.
6403         * tests/lt_dlexit.at: Add casts and `extern "C"' to let the test
6404         pass with a C++ compiler.
6406         * libltdl/config/ltmain.m4sh: Remove duplicate marker for
6407         generated shell functions.
6409         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): New macro, like
6410         LT_AT_EXEC_CHECK but uses `$LIBTOOL --mode=execute' and allows
6411         to pass `-dlopen MODULE' arguments.
6412         * tests/lt_dlexit.at: Use it.  Also, do not test `-dlpreopen',
6413         that currently needs library names to begin with `lib'.
6415 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6417         * tests/export.at: New test: expose -export-symbols failure
6418         when the input consists solely of convenience archives, and
6419         failure to not export all symbols when the command line length
6420         is exceeded.
6421         * Makefile.am: Adjust.
6423         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New substituted
6424         function `func_lo2o', saving two fork&exec with XSI shells.
6425         * libltdl/config/ltmain.m4sh (func_mode_compile)
6426         (func_mode_install, func_mode_link): Use it for rewrites of
6427         single files.
6429         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New function
6430         func_opt_split, for XSI and portable shell.
6431         * libltdl/config/ltmain.m4sh: Move the insertion point for the
6432         configure-generated shell functions to before the first option
6433         parsing loop.  Rewrite the separation of the long options to use
6434         func_opt_split.
6436 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6438         Eliminate roughly a third of the script execution time overhead
6439         for all modes except for link/relink and uninstall/clean.
6441         * libltdl/m4/libtool.m4 (_LT_CONFIG): Remove unused `TEST SUITE
6442         MARKER', obsolete since 2005-04-17.
6443         * libltdl/config/ltmain.m4sh: Likewise, several instances.
6444         (Main): Tear apart, moving individual bits up as early in the
6445         script as possible, to help the shell to avoid parsing the rest.
6447 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6449         * doc/libtool.texi: Update copyright years.
6451 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6453         * libltdl/config/general.m4sh (sed_double_backslash): Replace
6454         POSIX sed script with a hack that treats up to 10 backslashes
6455         in the input correctly and is portable to Solaris /bin/sed.
6457 2007-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6459         * tests/testsuite.at (LT_AT_TAG): Skip also if the compiler
6460         variable is set to `no', not only if it is empty.
6462 2007-02-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6464         * tests/lt_dlexit.at: Do not compile main object with libtool.
6466         * tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir
6467         to inner testsuite.
6469         * Makefile.am (TESTSUITE_AT): Move destdir.at after
6470         search-path.at so the banners fit better.
6472         * tests/convenience.at: Use $CPPFLAGS for compilation.
6473         * tests/deplibs-ident.at: Likewise.
6474         * tests/duplicate_members.at: Likewise.
6475         * tests/inherited_flags.at: Likewise.
6476         * tests/link-order.at: Likewise.
6477         * tests/stresstest.at: Likewise.
6478         * tests/early-libtool.at: Likewise.  Do not quote $CC.
6480         * libltdl/ltdl.c (lt_dlexit): Add casts to fix compilation with
6481         C++ compiler again.
6483         * tests/destdir.at: Add `libtool' keyword to tests.
6485 2007-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6487         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
6488         (_LT_LINKER_BOILERPLATE, _LT_SYS_MODULE_PATH_AIX)
6489         (_LT_COMPILER_C_O): Require _LT_DECL_SED.
6490         * THANKS: Update.
6491         Report by Maciej W. Rozycki.
6493 2007-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6495         * tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir,
6496         in the new testsuite.
6498 2007-01-29  Samuel Thibault <samuel.thibault@ens-lyon.org>
6500         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ gnu ]
6501         <archive_expsym_cmds>: Behave like Linux, so that
6502         --version-script is used for Hurd as well.
6504 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
6506         * NEWS: Update for Cygwin changes.
6508 2007-01-28  Brian W. Barrett <bbarrett@lanl.gov>
6510         * libltdl/config/ltmain.m4sh [darwin]: Use otool64 if otool fails.
6512 2007-01-28  Dave Brolley  <brolley@redhat.com>,
6513             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6515         * libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL
6516         before checking that it is still in the list.
6517         * tests/lt_dlexit.at: New test.
6518         * Makefile.am (TESTSUITE_AT): Adjust.
6519         (check-local): Also depend on libltdl/libltdlc.la.
6520         (check-recursive): Removed, unnecessary use of Automake
6521         internals.
6523 2007-01-28  Mike Frysinger  <vapier@gentoo.org>
6525         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
6526         `-p' and `-fprofile-*' for GCC.
6528 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6530         * libltdl/libltdl/lt_system.h: Adjust copyright years.
6532 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
6534         * libltdl/libltdl/lt__private.h (LT_GLOBAL_DATA) [__CYGWIN__]:
6535         Also define on Cygwin.
6536         * libltdl/libltdl/lt_system.h (LT_SCOPE) [__CYGWIN__]: Likewise.
6538 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6540         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ cygwin, mingw ]
6541         <export_symbols_cmds>: Avoid shell expansion of '/s/.*' through
6542         double expansion, in case there is a 'S:' drive.
6543         Report by Charles Wilson.
6545 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6547         Introduce a new test keyword `recursive' for tests that create a
6548         modified `libtool' script and run the suite on this script.  All
6549         tests with the keyword `libtool' are (by definition) suitable to
6550         be used here.
6552         * tests/cmdline_wrap.at: New test.
6553         * Makefile.am: Adjust.
6554         * tests/testsuite.at (LT_ESCAPE): New macro: clone of Autoconf
6555         AS_ESCAPE that does not escape `$'.
6556         (LT_AT_CHECK): New macro: print a command-to-be-run while
6557         expanding parameters but nothing else.
6558         * tests/stresstest.at: Use LT_AT_CHECK.  Create some files to
6559         expose erroneous globbing errors with `-export-symbols-regex',
6560         similar to those reported by Charles Wilson.  Use `eval' and
6561         adjusted quoting so the expansion doesn't already happen in the
6562         testsuite commands.
6563         * HACKING: Update.
6565 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6567         Assume C89 for included headers, and throughout the testsuite.
6569         * NEWS: Update.
6570         * libltdl/argz.c: Do not include strings.h nor memory.h, include
6571         string.h unconditionally.
6572         Patch by Simon Josefsson <jas@extundo.com>.
6573         * libltdl/libltdl/lt__private.h: Likewise.
6574         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not check for string.h,
6575         strings.h, memory.h.
6576         * tests/cdemo/configure.ac: Assume presence of math.h.
6577         * tests/cdemo/foo.c: Likewise.
6578         * tests/demo/configure.ac: Likewise for math.h, string.h.
6579         Assume 'const'.  Drop obsolete AC_EXEEXT.
6580         * tests/demo/dlmain.c: Likewise.
6581         * tests/demo/foo.c: Likewise.
6582         * tests/depdemo/configure.ac: Likewise.
6583         * tests/depdemo/l4/l4.c: Likewise.
6584         * tests/f77demo/configure.ac: Likewise.  Also drop obsolete
6585         AC_OBJEXT.
6586         * tests/fcdemo/configure.ac: Likewise.
6587         * tests/mdemo/configure.ac: Likewise.
6588         * tests/mdemo/foo1.c: Likewise.
6589         * tests/mdemo/foo2.c: Likewise.
6590         * tests/mdemo2/configure.ac: Likewise.
6591         * tests/pdemo/configure.ac: Likewise.
6592         * tests/pdemo/longer_file_name_dlmain.c:
6593         * tests/pdemo/longer_file_name_foo.c: Likewise.
6594         * tests/pdemo/longer_file_name_foo2.c: Likewise.
6595         * tests/tagdemo/configure.ac: Likewise.
6596         * tests/tagdemo/foo.cpp: Likewise.
6598 2007-01-24  Reuben Thomas <rrt@sc3d.org>  (tiny change)
6600         * doc/libtool.texi (Inter-library dependencies): Fix typo.
6602 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6604         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]:
6605         Use `lib -OUT' rather than `lib /OUT' to avoid MSYS path
6606         translation mangling.  Report by Christopher Hulbert.
6607         * THANKS: Update.
6609         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
6610         suffixes matching `[fF][09].', for Fortran.
6611         * tests/suffix.test: Also test F90, F95, f03, F03.
6613         * Makefile.am (EXTRA_DIST): Add ChangeLog.2006.
6614         * ChangeLog.2006: New, rotated, from...
6615         * ChangeLog: ...here.
6617 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6619         * doc/libtool.texi: Typo fixes.
6620         * TODO: Likewise.
6622 2006-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6624         * tests/link-order2.at: Define our override `sin' function with
6625         C binding even if $CC is a C++ compiler.  Skip the test with g++
6626         as its command line driver reorders `-lm'.
6627         * tests/search-path.at: Declare `inflate' with C binding.
6628         * tests/stresstest.at: Avoid unused variable warnings.
6630 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6632         * tests/link-order2.at: Simplify logic to be a bit more self
6633         documenting.  Suggested by Gary V. Vaughan.
6635 2006-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6637         * tests/link-order2.at: Add missing $bindir setting.  Prevent
6638         compiler optimization of sqrt call.  Fix logic inversion and
6639         add some comments about this stunt.  Add a test with reversed
6640         library link order that should fail if the system has a libm.
6641         Report by Patrick Welche.
6643 2006-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6645         Assume presence of a config header in all files, to provoke
6646         test failures on all systems.
6647         * libltdl/lt__alloc.c: Likewise.
6648         * libltdl/libltdl/lt__dirent.h: Likewise.
6649         * libltdl/libltdl/lt__glibc.h: Likewise.
6650         * libltdl/libltdl/lt__private.h: Likewise.
6651         * libltdl/libltdl/lt__strl.h: Likewise.
6652         * tests/recursive.at: Use AC_CONFIG_HEADERS.
6653         * tests/nonrecursive.at: Likewise.  Invoke autoheader.
6654         * HACKING: Adjust.
6655         Report by Patrick Welche.
6657 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>,
6658             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6660         * doc/libtool.texi (Distributing libltdl): In recursive and
6661         nonrecursive mode, a config header is now required.
6662         * libltdl/argz.c: Remove check for HAVE_CONFIG_H, to conform
6663         to gnulib's policy of including config.h unconditionally.
6665 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6667         * tests/link-order2.at: New test to show one case where ordering
6668         of depdepls on the command line matters.
6669         * Makefile.am: Adjust.
6671         * tests/tagtrace.test: SKIP if `autoconf --trace' exits 63 or 1,
6672         for various possible (valid) error cases.  Also output stderr,
6673         to help with analysis.
6675         * NEWS: Account for recent multilib fix.
6676         * tests/search-path.at: New test, to provide at least a weak
6677         test.
6678         * Makefile.am: Update.
6680         * libtoolize.m4sh (func_fixup_Makefile): Fix missing
6681         substitution for nonrecursive mode.  Remove otherwise-empty
6682         continuation lines in the output file.
6683         Report by Bob Friesenhahn.
6685 2006-10-22  Peter O'Gorman  <peter@pogma.com>
6687         * libltdl/config/ltmain.m4sh: Add -F* to flags that are passed
6688         to the linker.
6689         Reported by SIGOURE Benoit <sigoure.benoit@lrde.epita.fr>
6691 2006-10-19  Peter O'Gorman  <peter@pogma.com>
6693         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Improve
6694         multilib support.
6695         Reported by Kate Minola <kate01123@gmail.com> and others.
6697 2006-10-13  Eric Blake  <ebb9@byu.net>
6699         * libltdl/ltdl.c (load_deplibs): Avoid memory leak on failure.
6700         (unload_deplibs): Avoid memory leak on cleanup.
6702 2006-09-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6704         * libltdl/m4/libtool.m4 (func_mode_compile): Accept files with
6705         extension `.f9?'.
6706         * tests/suffix.test: Test `f95'.
6708         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Use
6709         `func_source' consistently.
6711 2006-09-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6713         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
6714         [k*bsd*-gnu ]: Fix brown paper bag: save and restore `libdir'.
6716 2006-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6718         * tests/duplicate_deps.at: New file.  Test circular depending
6719         convenience archives (currently failing).
6720         * Makefile.am: Update.
6721         Report by Stefan Traby <stefan@hello-penguin.com>.
6723         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
6724         [ openbsd ]: Set `hardcode_direct_absolute', to prefer rpath
6725         over putting absolute file names in NEEDED entries.
6726         * NEWS: Update.
6727         Reported by Jake Meuser and others.
6729         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
6730         [ k*bsd*-gnu ]: Test if ld sets DT_RUNPATH; in that case, set
6731         shlib_overrides_runpath to `yes'.  Fixes test failure of new
6732         test on Gentoo GNU/Linux.
6734         * tests/shlibpath.at: New file, with...
6735         (shlibpath_overrides_runpath): ...new test.
6736         * Makefile.am: Update.
6738 2006-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6740         * tests/destdir.at: New file.
6741         * Makefile.am: Adjust.
6743 2006-09-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6745         * tests/inherited_flags.at: Drop `${parameter}' for `$parameter'
6746         where appropriate, for improved `testsuite -x' output.
6748 2006-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6750         * libltdl/ltdl.c: Move LT__UNUSED before parameter name, for g++
6751         3.2.3 (on MinGW).
6752         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
6753         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
6754         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Likewise.
6756 2006-09-04  George Bosilca <bosilca@cs.utk.edu>
6757         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6759         Make libltdl work when compiled with a C++ compiler.
6761         * libltdl/lt__alloc.c, libltdl/lt_dlloader.c, libltdl/ltdl.c,
6762         libltdl/slist.c, libltdl/libltdl/lt__alloc.h,
6763         libltdl/libltdl/lt_error.h, libltdl/libltdl/slist.h,
6764         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
6765         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
6766         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
6767         libltdl/loaders/shl_load.c, tests/stresstest.at,
6768         tests/testsuite.at, tests/f77demo/foo.h, tests/fcdemo/foo.h,
6769         tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c,
6770         tests/mdemo/main.c: Allow sources to be compiled by a C++
6771         compiler: Cast appropriately, add C linkage for `get_vtable'
6772         functions, do not use C++ keyword `delete'.
6774         * libltdl/config/ltmain.m4sh (func_mode_link): In the dlsym
6775         file, define a type for the symbol list, and declare the list
6776         `extern', so that it is extern even if compiled by a C++
6777         compiler.  The type definition helps avoid a compiler warning
6778         against anonymous extern struct.
6779         * libltdl/libltdl/lt_system.h: Add `extern' to `LT_SCOPE' for
6780         the same reason.
6782         * libltdl/argz_.h: It's __cplusplus, not _cplusplus.
6783         * libltdl/libltdl/slist.h: Likewise.
6785         * libltdl/libltdl/lt__glibc.h: Wrap included argz.h in
6786         `extern "C"', for broken headers on Cygwin.
6788 2006-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6790         * tests/testsuite.at: Test `unset' on a set variable; older
6791         bash versions return 1 if the variable was not set.
6793         * tests/am-subdir.at, tests/early-libtool.at: Fix the LF vs.
6794         CRLF related failures on MinGW by grepping for good output
6795         instead of using AT_CHECK's `expout'.
6797 2006-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6799         Drop K&R support from testsuite in favor of C89.
6801         * tests/duplicate_members.at: provide declarations of used
6802         functions.
6803         * tests/testsuite.at: Drop unneeded arguments.
6804         * tests/cdemo/main.c: Assume C89.
6805         * tests/demo/dlmain.c: Likewise.
6806         * tests/demo/main.c: Likewise.
6807         * tests/depdemo/main.c: Likewise.
6808         * tests/depdemo/l1/l1.c: Likewise.
6809         * tests/depdemo/l2/l2.c: Likewise.
6810         * tests/depdemo/l3/l3.c: Likewise.
6811         * tests/depdemo/l4/l4.c: Likewise.
6812         * tests/f77demo/cprogram.c: Likewise.
6813         * tests/fcdemo/cprogram.c: Likewise.
6814         * tests/mdemo/mlib.c: Likewise.
6815         * tests/mdemo2/main.c: Likewise.
6816         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
6817         * tests/pdemo/longer_file_name_main.c: Likewise.
6818         * tests/fcdemo/fooc.c: Reformat.
6819         * tests/mdemo/sub.c: Likewise.
6821 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6823         * tests/mdemo/main.c: Fix bogus line in last patch.
6825 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6827         Avoid mixing functions and data pointers in callback functions.
6829         * libltdl/ltdl.c (file_worker_func): New type.
6830         (lt_dlforeachfile): Instead of passing a function pointer as a
6831         data pointer, pass a pointer to a file_worker_func pointer.
6832         (foreach_callback_func): Adjust.
6833         * tests/mdemo/main.c: Assume C89. Exercise lt_dlforeachfile.
6834         (callback, try_iterate, my_dirname): New functions.
6835         * tests/mdemo-exec.test: Check for its output.
6837 2006-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6839         * libltdl/libltdl/lt__private.h (__attribute__, LT__UNUSED):
6840         New macros.
6841         * libltdl/loaders/dld_link.c: Use LT__UNUSED where
6842         appropriate.
6843         * libltdl/loaders/dlopen.c, libltdl/loaders/load_add_on.c,
6844         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
6845         libltdl/loaders/shl_load.c: Likewise.
6846         * libltdl/ltdl.c: Likewise.
6847         (find_file_callback): Fix declaration names to match definition.
6848         (load_deplibs) [!LTDL_DLOPEN_DEPLIBS]: Use separate definition
6849         for less preprocessor clutter.
6851         * Makefile.am (check-local, installcheck-local): Use
6852         `TESTSUITEFLAGS' rather than `TESTSUITE_FLAGS', like Autoconf.
6853         * HACKING, README, README.alpha: All uses changed.
6855 2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6857         * libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
6858         sharing with gnulib.  Report by Eric Blake.
6859         * libltdl/lt__alloc.c, libltdl/libltdl/lt__dirent.h,
6860         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
6861         libltdl/libltdl/lt__strl.h: Likewise.
6862         * HACKING: Update.
6864 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6866         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
6867         `--coverage' and `-pg', for GCC.  Report by Rainer Keller
6868         <keller@hlrs.de> and Tor Lillqvist <tml@iki.fi>.
6870 2006-08-25  Kurt Roeckx <kurt@roeckx.be>,
6871             Aurelien Jarno <aurel32@debian.org>
6873         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
6874         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
6875         (_LT_LANG_CXX_CONFIG) [k*bsd*-gnu]: kfreebsd*-gnu and
6876         knetbsd*-gnu behave like linux-gnu.
6877         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
6878         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK)
6879         [x86_64-*kfreebsd*-gnu]: Add 32/64 bit bi-arch support.
6880         * NEWS: Update.
6882 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6884         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ mingw,pw32 ]:
6885         If `file' is present, use `func_win32_libid' rather than
6886         `objdump -f', to facilitate cross-compilation.
6887         Reported by Pierre Ossman <ossman@cendio.se>.
6889 2006-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6891         * libltdl/config/ltmain.m4sh (func_mode_link): In GNU ld script,
6892         do not quote object file names, for Intel icc 9.0 IPO link.
6894 2006-08-22  Eric Blake  <ebb9@byu.net>
6896         * libltdl/m4/ltdl.m4 (LTDL_INIT): Avoid macros marked obsolete in
6897         latest autoconf.
6898         * libltdl/m4/libtool.m4 (_lt_cv_sys_global_symbol_pipe): Work in
6899         spite of -Wmissing-prototypes.
6900         * libltdl/libltdl/lt__dirent.h: Rewrite to accomodate loss of
6901         AC_HEADER_DIRENT.
6903         * libltdl/m4/libtool.m4: Avoid space-tab.
6905 2006-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6907         * libltdl/config/ltmain.m4sh (func_mode_execute): Also search
6908         the directory above `$objdir' for the argument of "-dlopen", as
6909         mentioned in the error message.
6911 2006-08-03  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>
6913         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix issues
6914         with previous patch. for ... do' line is superflous. Need
6915         _LT_TAGVAR not _LT_AC_TAGVAR, should be for both linux and
6916         solaris with Sun compiler.
6918 2006-08-01  Albert Chin <china@thewrittenword.com>
6920         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
6921         Don't set $postdeps to "-lCstd -lCrun" if
6922         "-library=stlport4" set in CXXFLAGS as stlport4 C++
6923         library incompatible with Cstd C++ library. Use
6924         '-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
6926 2006-07-28  Eric Blake  <ebb9@byu.net>
6928         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD, LT_OUTPUT):
6929         s/recognise/recognize/.
6931 2006-07-22  Eric Blake  <ebb9@byu.net>
6933         * libltdl/ltdl.c (loader_init_callback) [HAVE_LIBDLLOADER]:
6934         Protect definition to avoid compiler warnings about unused
6935         function.
6937 2006-07-21  Eric Blake  <ebb9@byu.net>
6939         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD): Search for dlopen without
6940         depending on -ldl, required by cygwin 1.5.20.
6942 2006-06-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6944         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
6945         ( _LT_LINKER_BOILERPLATE): Rewrite to not use unchecked
6946         `printf', for old systems like SunOS 4.1.
6947         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION)
6948         (_LT_COMPILER_C_O, _LT_LINKER_SHLIBS): Likewise.
6949         (_LT_LANG_C_CONFIG): Adjust: use literal newlines in
6950         `lt_simple_compile_test_code' and `lt_simple_link_test_code'.
6951         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
6952         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Likewise.
6953         Bug report by Bruce Becker and Mark Andrews.
6955 2006-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6957         Fix the bugs where libtoolize needs to use `dir/file' instead of
6958         `./dir/file', where ltdldir is `.', so that libtoolize correctly
6959         checks for (and suggests) `config' and `m4' instead of
6960         `./config' and `./m4' as auxiliary resp. macro directories.
6961         The change is necessary for unambiguous naming, the chosen way
6962         plays better with non-GNU make in VPATH builds.
6964         * libtoolize.m4sh (ltdlprefix): New variable, to use as prefix
6965         instead of `$ltdldir/'.
6966         (func_check_macros): Use it.  Bug report by Eric Blake.
6968 2006-06-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6970         Fix several libtoolize-related bugs:
6971         - Do not symlink aclocal.m4, to work around a bug in aclocal
6972         overwriting the linked-to file instead of removing the symlink.
6973         - Have `libtoolize --copy' cause current time stamps, so that
6974         dependents will be rebuilt; for this, install files in order.
6975         - Fix list of distribution files for (non)recursive libltdl.
6976         - Fix some failure cases.
6978         * libtoolize.m4sh (func_copy_cb):
6979         If `$opt_link', still copy `aclocal.m4', so a subsequent
6980         `aclocal' will not overwrite the symlink target.
6981         In `--copy' mode, do `cp -p' and `touch' for each file, so
6982         timestamps are updated but permissions preserved.
6983         (main): Reorder installing of files to match logical order
6984         and timestamp requirements.
6985         (func_fixup_Makefile_inc): Renamed to
6986         (func_fixup_Makefile): this.  Add sed scriptlet to remove
6987         non-existent files from EXTRA_DIST, for either nonrecursive
6988         or recursive mode.
6989         (main): call it to mangle also in recursive mode.
6990         * tests/libtoolize.at (expout): Adjusted.
6991         * tests/testsuite.at (tst_dist): Default to `dist'.
6993 2006-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6995         Fix libltdl to always have all generated files up to date.
6997         * Makefile.am (all-local): Depend on all generated files in
6998         libltdl, namely...
6999         (libltdl/aclocal.m4, libltdl/configure, libltdl/config-h.in):
7000         ...these.  List explicitly, including dependencies and
7001         rebuilding rules, using...
7002         (sub_aclocal_m4_deps, sub_configure_deps): ...these new
7003         variables.
7004         Report by Dan Lacher <Dan.Lacher@Sun.Com>.
7006 2006-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7008         * Makefile.am (install-data-local): Do not use $(INSTALL_DATA)
7009         from another directory: it may use a relative path to
7010         `install-sh'.
7011         Bug report by Dan Lacher <Daniel.Lacher@Sun.COM>.
7013 2006-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7015         * libltdl/config/ltmain.m4sh (func_mode_link): Honor `-threads',
7016         similar to `-mt'.
7017         Report by Eric Paire <eric.paire@st.com>.
7019 2006-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
7021         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ cygwin ]:
7022         define DLL_EXPORT for PIC objects on cygwin.
7024 2006-05-24  Albert Chin  <china@thewrittenword.com>
7026         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
7027         [ aix4*, aix5*, hpux10*, hpux11* ]: Set hardcode_direct_absolute
7028         for CXX tag too!
7030 2006-05-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7032         * libltdl/config/ltmain.m4sh (func_mode_link, shell wrapper):
7033         Do not put `"$@"' in argument to $ECHO.
7035 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7037         * libltdl/m4/libtool.m4: Bump serial, necessary because of
7038         _LT_CHECK_SHELL_FEATURES changes.
7040 2006-05-18  Albert Chin-A-Young <china@thewrittenword.com>
7042         * tests/early-libtool.at: Pass $CPPFLAGS and $CFLAGS to
7043         compiler when compiling for extra flags that might be
7044         needed for ANSI-compliance, 64-bit, etc. The environment
7045         we compile with should match the environment libtool was
7046         compiled with.
7048 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7050         Fix mode=compile time regression of CVS HEAD over branch-1-5.
7052         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Rename to...
7053         (_LT_CHECK_SHELL_FEATURES): ...this.
7054         (_LT_SETUP): Adjust caller.
7055         (_LT_CHECK_XSI_SHELL): New libtool variables `lt_unset',
7056         `SP2NL', `NL2SP', to contain results from tests for unset,
7057         taken from AS_BOURNE_COMPATIBLE, and ASCII vs EBCDIC, taken...
7058         * libltdl/config/general.m4sh: ...from here, and used...
7059         * libltdl/config/ltmain.m4sh: ...here everywhere now.
7060         * (AS_SHELL_SANITIZE): Replace by faster, actually necessary
7061         part of its expansion, taken from current Autoconf CVS.  Do not
7062         save and set all locale variables any more, but only LANG,
7063         LC_ALL, LC_CTYPE, LC_COLLATE, LC_MESSAGES.
7064         (func_mode_execute): Adjust.
7065         * libltdl/m4/libtool.m4 (_LT_CONFIG): No need to unset CDPATH
7066         here any more.
7067         * libtoolize.m4sh: Compute `SP2NL' and `NL2SP' here, too.
7069 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
7071         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
7072         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
7073         _LT_LANG_FC_CONFIG), tests/link-order.at
7074         [ aix4*, aix5*, hpux10*, hpux11* ]: rename
7075         hardcode_direct_static to hardcode_direct_absolute.
7076         * doc/libtool.texi (libtool script contents): Adjust.
7078         * libltdl/ltdl.c (lt_dlhandle_fetch): Arguments to
7079         lt_dlhandle_iterate were in the wrong order.
7081 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7083         * libltdl/m4/libtool.m4 (_LT_LINKER_OPTION): Require
7084         _LT_DECL_SED.
7085         (_LT_CMD_GLOBAL_SYMBOLS, _LT_LINKER_SHLIBS): Likewise.
7086         * libltdl/m4/ltdl.m4 (LTDL_INIT): Likewise.
7087         (_LT_DECL_SED): Set $Xsed here, using $SED.  Moved from...
7088         (_LT_SETUP): ...here.
7089         Report by Eric Blake.
7091 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
7093         * doc/libtool.texi (libtool script contents): Document new
7094         hardcode_direct_static variable.
7096         * tests/link-order.at: Be careful about usage of shrext_cmds.
7098         * libltdl/m4/libtool.m4 (LT_AC_PROG_SED):  Declarations for
7099         compatibility with old versions of libtool, and old versions
7100         of aclocal.
7102 2006-05-17  Albert Chin-A-Young  <china@thewrittenword.com>
7104         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
7105         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
7106         _LT_LANG_FC_CONFIG) [ aix4*, aix5*, hpux10*, hpux11* ]:
7107         Introduce a new variable, hardcode_direct_static, which
7108         would ignore hardcode_direct=yes if the result would create a
7109         static library dependency. Static library dependencies are
7110         immune to $shlibpath_var.
7111         * tests/link-order.at: Take hardcode_direct and
7112         hardcode_direct_static into consideration when testing
7113         link order.
7115 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7117         Eliminate quadratic scaling in argument parsing loop, for
7118         shells that understand `var+=value', such as Bash-3.1, or Zsh.
7120         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Test whether
7121         the shell understands `var+=value'.
7122         (_LT_PROG_XSI_SHELLFNS): Define `func_append' based on this.
7123         * config/ltmain.m4sh (func_mode_link): Use `func_append' for
7124         compile_command, finalize_command, libtool_args, libobjs,
7125         non_pic_objects.
7127 2006-05-15  Bruno Haible  <bruno@clisp.org>,
7128             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7130         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
7131         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ linux ]:
7132         Add support for Sun C 5.9, Sun C++ 5.9, and Sun Fortran 8.3 on
7133         GNU/Linux.
7134         * NEWS: Update.
7136 2006-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7138         * Makefile.am (check-local): Move `$(TESTS_ENVIRONMENT)' and
7139         `$(BUILDCHECK_ENVIRONMENT)' to be arguments of `testsuite', so
7140         that reruns will remember it; set enviroment variable
7141         `CONFIG_SHELL' so the suite will know which shell it was started
7142         with.
7143         (installcheck-local): Likewise, for `$(TESTS_ENVIRONMENT)' and
7144         `$(INSTALLCHECK_ENVIRONMENT)'.
7145         * tests/testsuite.at (LT_AT_TAG): Do not set the compiler
7146         variable here.
7148 2006-05-14  Albert Chin-A-Young  <china@thewrittenword.com>
7150         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
7151         [ aix ]: $hardcode_direct is set twice.
7153 2005-05-14  John Bowler  <jbowler@acm.org>
7155         * libltdl/config/ltmain.m4sh (func_mode_link): For version_type
7156         `none', we still need to set `current', `age', and `revision',
7157         so that our checks don't barf.  The values won't be used later.
7158         Apparently reported by several people, several times, for BeOS.
7159         * NEWS, THANKS: Update.
7161 2006-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7163         * tests/fail.at: Use "test -x" if available, for testing of
7164         executables; code modified from Autoconf's AS_EXECUTABLE_P.
7165         Reported by Albert Chin <china@thewrittenword.com>.
7167 2006-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7169         * libltdl/config/ltmain.m4sh (func_write_libtool_object):
7170         New function, factored out from..
7171         (func_mode_compile): .. here.  Call it to generate the libtool
7172         object file (the `.lo' file) in one step.
7174 2006-04-03  Peter O'Gorman  <peter@pogma.com>
7176         * libltdl/loaders/preopen.c: Don't allow lt_dlopen if the
7177         module has no symbols.
7179 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7181         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]:
7182         Avoid warning when "parsing" `/etc/ld.so.conf' and empty
7183         `/etc/ld.so.conf.d'.
7184         Reported by Orion Poplawski <orion@cora.nwra.com>.
7186 2006-03-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7188         * bootstrap: Actually use the correct version of the last patch.
7190 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7192         * bootstrap: Enable `WORKING_LIBOBJ_SUPPORT' if we detect
7193         Autoconf-2.60+ and Automake-1.10+, or CVS versions.
7195         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Sync with gnulib:  If we
7196         define `error_t', also define `__error_t_defined', so argp.h
7197         will not typedef the former.
7199 2006-03-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7201         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [ freebsd ]
7202         [ dragonfly ]: Set libltdl_cv_sys_dlopen_deplibs to yes.
7203         Fixes excessive lt_dlopen times on these systems.
7204         * NEWS, THANKS: Update.
7205         Bug reported by Peter Jeremy <peterjeremy@optushome.com.au>,
7206         patch by Joerg Sonnenberger <joerg@netbsd.org>.
7208 2006-03-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7210         * tests/static.at: New tests for comprehensive test exposure of
7211         all current and proposed static linking flags for programs.
7212         * Makefile.am: Updated.
7214         * libltdl/config/ltmain.m4sh (func_mode_link)
7215         < -static-libtool-libs >: New option.
7216         * doc/libtool.texi (Link mode, Distributing libltdl):
7217         Document it.
7218         Suggested by Gary Kumfert <kumfert@llnl.gov>.
7220 2006-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7222         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp [ hpux ] <aCC>:
7223         The HPPA C++ compiler has namespace support but provides no
7224         `std' namespace; just provide it with a dummy.
7226         * libltdl/m4/libtool.m4 (AC_PROG_SED): Do not forget to reset
7227         IFS even in case of empty `$PATH'.
7229 2006-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7231         * libltdl/config/ltmain.m4sh (func_mode_link): Comment out the
7232         code to remove uninstalled paths, as it is wrong here.  Change
7233         the wrong shell quoting that kept it from "working" before.
7234         * THANKS: Updated.
7236         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
7237         [ freebsd, dragonfly ]: Fix 1.5.22 regression caused by too
7238         strict $host_os match that stopped DragonFly from working.
7239         * THANKS: Updated.
7240         Reported by Jeremy C. Reed <reed@reedmedia.net>,
7241         patch by Todd Vierling <tv@duh.org>.
7243 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7245         * libltdl/config/ltmain.m4sh (startup): save all locale specific
7246         environment, variables:, LANG, LANGUAGE, LC_ADDRESS, LC_ALL
7247         LC_COLLATE, LC_CTYPE, LC_IDENTIFICATION, LC_MEASUREMENT,
7248         LC_MESSAGES LC_MONETARY, LC_NAME, LC_NUMERIC, LC_PAPER,
7249         LC_TELEPHONE, LC_TIME.
7250         (func_mode_execute): Restore them.
7252 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7254         * doc/libtool.texi (Tags): Mention `FC'.
7255         (libtool script contents) <CC>: Specify more precisely as the
7256         compiler of the current tag.
7257         <LTCC, LTCFLAGS, build, build_alias, build_os, host_alias,
7258         host_os, macro_version, macro_revision, max_cmd_len>:
7259         Document these variables.
7261 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7263         * doc/libtool.texi: Update copyright years.
7265         * libltdl/config/getopt.m4sh (func_help): Substitute `$host'.
7266         * libltdl/config/ltmain.m4sh (help message): Use $host not
7267         @host_triplet@, as the `@..@' substitution is done at bootstrap
7268         time already.
7269         Reported by Julien Lecomte <julien@famille-lecomte.net>.
7271         * doc/libtool.texi (Implementation issues):  Note that both
7272         prefix and suffix of a library may differ.
7273         (Using libtool, Creating object files, Linking libraries):
7274         Remove last documentation traces of the age when `foo.lo' was
7275         the PIC object file and not the `libtool object' text file.
7276         (libtool script contents) <compiler_o_lo>: Remove description
7277         of this variable.  It was removed from libtool in 1.5 times.
7279 2006-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7281         * libltdl/config/ltmain.m4sh (func_mode_link) [ linux ]:
7282         PGI: for `reload_cmds', we not only need to get rid of `$wl',
7283         but also turn comma into space so $LD understands
7284         whole_archive_flag_spec correctly.
7286         * libltdl/config/ltmain.m4sh (func_mode_link) <shell wrapper>:
7287         Add _AS_BOURNE_COMPATIBLE code from Autoconf, to fix issues
7288         with zsh and other shells.
7289         Reported by David Gómez Espinosa <david@pleyades.net>.
7291 2006-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7293         * libltdl/m4/libtool.m4 (AC_PROG_SED): m4_defun this rather
7294         than AC_DEFUN, so that old aclocal does not pick this up.
7296         * Makefile.am ($(TESTSUITE)): Also depend on `Makefile.am'.
7297         Write to temporary file and rename.
7299 2006-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7301         * Makefile.am (EXTRA_DIST): Add `$(srcdir)/' to all generated
7302         files so that non-GNU make programs will use the rebuilding
7303         rules.
7305         * tests/testsuite.at: Add new keyword `libtoolize' for tests
7306         that exercise the `libtoolize' script that is generated at build
7307         time.
7308         * HACKING: Update testsuite mention, explain keywords.
7310         * libltdl/config/ltmain.m4sh (extracted_archives)
7311         (extracted_serial): New globals.
7312         (func_extract_archives): Use them to rename extraction archives
7313         for linking against multiple convenience libraries with the same
7314         name.
7315         * tests/duplicate_conv.at: New tests.
7316         * Makefile.am: Adjusted.
7317         Reported by Carlo Contavalli <ccontavalli@commedia.it>.
7319         * libltdl/config/ltmain.m4sh (func_mode_link) < test_compile >:
7320         Fix a couple of instances where `test .. -ne ..' would possibly
7321         compare non-numbers.  Clean up a bit.
7323         * tests/convenience.at, tests/deplibs-ident.at: Add new keyword
7324         `libtool' for tests that exercise the unmodified `libtool'
7325         script that is generated at build time.
7326         * tests/duplicate_members.at, tests/fail.at: Likewise.
7327         * tests/inherited_flags.at, tests/link-order.at: Likewise.
7328         * tests/stresstest.at, tests/template.at: Likewise.
7330 2006-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7332         * tests/fail.at: Also pass a bogus object file to the linker so
7333         it fails more reliably; AIX and IRIX linkers ignore duplicate
7334         symbol definitions.
7336         * libltdl/m4/libtool.m4 [ solaris ] (_LT_LINKER_SHLIBS)
7337         (_LT_LANG_CXX_CONFIG) < whole_archive_flag_spec >:
7338         Fix this once and for all, for both the SUN compiler suite
7339         (cc/CC/f77/f90/f95) and GCC.
7340         Reported by Yuri Pukhalsky <pooh@cryptopro.ru>.
7342         * tests/cdemo/Makefile.am: Remove broken use of undocumented
7343         Automake variable `$(OBJECTS)'.
7344         * tests/demo/Makefile.am, tests/depdemo/Makefile.am: Likewise.
7345         * tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am: Likewise.
7346         * tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am: Likewise.
7347         * tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Likewise.
7349         * libltdl/config/ltmain.m4sh (func_mode_link): Fix logic for
7350         adding run paths to also add paths for installed libtool
7351         libraries in case `-static' is used.
7353 2006-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7355         * Makefile.am (TESTSUITE_AT): List testsuite files in the order
7356         in which they are to be expanded in the suite.
7357         (tests/TESTSUITE): Rebuild by passing all $(TESTSUITE_AT) files,
7358         with their path suitably adjusted.  This enables us to..
7359         * tests/testsuite.at: ..get rid of their redundant mention here.
7361 2006-01-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7363         * doc/libtool.texi (titlepage): Remove superfluous word.
7365         * libltdl/config/ltmain.m4sh (func_mode_link): Fix matching
7366         duplicate run path entries with the correct separator.
7368         * tests/testsuite.at (PREPARE_TESTS): Escape `^' for some older
7369         shells.
7371         * ChangeLog, HACKING, README, README.alpha,
7372         libltdl/config/ltmain.m4sh:  Add vi(m) modelines, to match emacs
7373         formatting variables.
7375 2006-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7377         * Makefile.am (libltdl/Makefile.am): Fixup sed script.
7378         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
7380 2006-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7382         * Makefile.am, bootstrap, clcommit.m4sh,
7383         libltdl/config/getopt.m4sh, libltdl/config/mailnotify.m4sh,
7384         tests/sh.test, tests/testsuite.at: Bump copyright years.
7386 2006-01-21  Eric Blake  <ebb9@byu.net>
7388         * THANKS: Move myself to contributor.
7390 2006-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7392         * bootstrap: Don't use semicolons inside { } in sed scripts, as
7393         Posix says it's not portable.
7394         * Makefile.am (libltdl/Makefile.am): Likewise.
7395         * libtoolize.m4sh (all over the map): Likewise.
7396         * libltdl/config/getopt.m4sh (func_version, func_usage)
7397         (func_help): Likewise.
7398         * libltdl/config/ltmain.m4sh (func_win32_libid): Likewise.
7399         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Likewise.
7400         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Likewise.
7401         * tests/sh.test, tests/testsuite.at (LT_AT_TAG): Likewise.
7402         Noted by Paul Eggert <eggert@cs.ucla.edu>.
7404         * libltdl/config/ltmain.m4sh (func_mode_compile): Also transform
7405         `.obj' correctly.
7406         Reported by George Bosilca <bosilca@cs.utk.edu>.
7408 2006-01-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7410         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): Fix my forward port
7411         error of last commit.
7413 2006-01-12  Leif Ekblad  <leif@rdos.net>
7415         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
7416         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC): Added support for
7417         RDOS.
7418         * NEWS: Updated.
7420 2006-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7422         * libtoolize.m4sh, libltdl/config/general.m4sh,
7423         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
7424         libltdl/m4/libtool.m4: Bump copyright years.
7426 2006-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7428         * Makefile.am (EXTRA_DIST): Add ChangeLog.2005.
7430         * README, README.alpha: Adjust copyright years.
7431         * ChangeLog.2005: New, rotated, from..
7432         * ChangeLog: ..here.
7434 2005-12-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7436         * Makefile.am (libtoolize): Also depend on `config.status'.
7437         (tests/atconfig): Normalize path, for non-GNU make.
7438         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
7440         * libltdl/config/ltmain.m4sh (func_mode_link) <temp_rpath>:
7441         Fix position of separator for shlibpath_var setting in shell
7442         wrapper.
7444         * libltdl/lt_error.c (error_strings): Remove parentheses around
7445         string literal initializers, uncovered by `tcc'.
7446         Reported by Edward Chernenko <edwardspec@yahoo.com>.
7448 2005-12-21  Gary V. Vaughan  <gary@gnu.org>
7450         * .cvsignore, libltdl/.cvsignore, tests/.cvsignore: Ignore
7451         +build, +dest, +inst, .cvslog-tlasync, .gdb_history, .pc,
7452         libltdl/INSTALL, libltdl/stamp-mk and tests/testsuite.log.
7454 2005-12-20  Eric Blake  <ebb9@byu.net>
7456         * README.alpha: Really commit.
7458 2005-12-19  Eric Blake  <ebb9@byu.net>
7460         * HACKING (release note templates): Update anon cvs location.
7461         * README.alpha (Reporting Bugs): Likewise.
7463 2005-12-18  Jacob Meuser <jakemsr@jakemsr.com>,
7464             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7466         * libltdl/config/ltmain.m4sh (func_mode_link): Move library
7467         search paths that coincide with paths to not yet installed
7468         libraries to the beginning of the library search list.
7470 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7472         * THANKS: Updated.
7474         * HACKING: `./libtool --config' is more helpful than `--help'.
7476         * libltdl/config/ltmain.m4sh <preserve_args, linknames>:
7477         Initialize properly.
7479 2005-12-18  Kean Johnston  <jkj@sco.com>,
7480             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7482         * libltdl/m4/libtool.m4 (LT_PATH_NM): Also look in
7483         /usr/ccs/bin/elf, for SCO.  If we are not cross-compiling, but
7484         $ac_tool_prefix is set, also try an un-prefixed `nm'.
7486 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7488         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
7489         <hardcode_shlibpath_var>: Initialize, to `unsupported'.
7491 2005-12-18  Marc Espie  <espie@nerim.net>
7493         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
7494         [ openbsd ] <sys_lib_dlsearch_path_spec>: Set to `/usr/lib'
7495         only.
7497 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7499         * tests/old-m4-iface.at: Require Autoconf-2.50, so that
7500         Debian's autoconf wrapper will not cause 2.13 to barf over
7501         `--force'.
7502         Reported by Kurt Roeckx <kurt@roeckx.be>.
7504         * README.alpha (Reporting bugs): Suggest to also bootstrap the
7505         libltdl subdirectory -- the Makefile will enforce it anyway.
7506         (The Test Suite): Renamed to..
7507         (The Test Suites): ..this.  Introduce the new Autotest test
7508         suite, how to run each one individually, and what to report.
7509         * README (The Test Suite): Likewise.
7511 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7513         In the subpackage case, we do not install Makefile.inc.  Since
7514         we have to be correct for this case, remove `Makefile.inc' from
7515         EXTRA_DIST.  Recursive mode does not use it either.  Since
7516         nonrecursive mode requires an Automake >= 1.7 anyway, and those
7517         versions automatically distribute included makefile fragments,
7518         we don't need to cater for that one either.
7520         * libltdl/Makefile.inc (EXTRA_DIST): Remove Makefile.inc.
7521         Reorder other entries.
7523 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7525         * Makefile.am (libltdl/Makefile.in): also depend on
7526         libltdl/aclocal.m4, so that we guarantee timestamp consistency.
7527         (libltdl/stamp-mk): New target, to fix `libltdl/Makefile.in'.
7528         (EXTRA_DIST): Distribute `libltdl/stamp-mk' and
7529         `libltdl/m4/lt~obsolete.m4'.
7530         (all-local): Ensure the stamp files is up to date.
7531         (libltdl/aclocal.m4): New target, to ensure timestamp
7532         consistency.  Depend on all m4 files.
7533         * HACKING: Updated.
7535         * tests/testsuite.at (PREPARE_TESTS): New variable `tst_dist',
7536         default to empty.
7537         * tests/nonrecursive.at, tests/recursive.at,
7538         tests/standalone.at, tests/subproject.at: Use it in
7539         LT_AT_BOOTSTRAP or LT_AT_MAKE, so that you can optionally test
7540         redistribution within the tests.
7542         * libltdl/m4/lt~obsolete.m4: Update documentation for aclocal
7543         versions before 1.7.  Change all macros to use AC_DEFUN instead
7544         of AU_DEFUN.
7545         * (_AC_PROG_LIBTOOL, AC_LIBTOOL_SETUP, _LT_AC_CHECK_DLFCN)
7546         (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_TAGCONFIG)
7547         (AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_CXX, _LT_AC_LANG_F77)
7548         (_LT_AC_LANG_GCJ, AC_LIBTOOL_RC, AC_LIBTOOL_LANG_C_CONFIG)
7549         (_LT_AC_LANG_C_CONFIG, AC_LIBTOOL_LANG_CXX_CONFIG)
7550         (_LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_LANG_F77_CONFIG)
7551         (_LT_AC_LANG_F77_CONFIG, AC_LIBTOOL_LANG_GCJ_CONFIG)
7552         (_LT_AC_LANG_GCJ_CONFIG, AC_LIBTOOL_LANG_RC_CONFIG)
7553         (_LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG)
7554         (_LT_AC_FILE_LTDLL_C): Add new fake macros for these, they
7555         were used at one time in libtool.m4.
7557         * tests/am-subdir.at (Makefile.am): Put automake options here,
7558         in AUTOMAKE_OPTIONS.  Require 1.6 because of the newer
7559         `AC_INIT(pkgname,version) AM_INIT_AUTOMAKE' scheme.
7560         * tests/nonrecursive.at, tests/recursive.at: Require 1.7,
7561         because libltdl rules use `+=' in conditionals.
7562         * tests/testsuite.at (LT_AT_AUTOMAKE): Fix indenting.
7563         (LT_AT_AUTORECONF): also detect too old Automake.
7565 2005-12-08  Eric Blake  <ebb9@byu.net>
7567         * libltdl/libltdl/lt__alloc.h (FREE): Cast away constness of
7568         argument to `free' to avoid compiler warning.
7570 2005-12-08  Peter O'Gorman  <peter@pogma.com>
7572         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_LINKER_SHLIBS)
7573         [darwin]: Use $LTCC $LTCFLAGS to check for -single_module.
7574         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7576 2005-12-07  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7578         * bootstrap: always remove Makefile, to avoid triggering the
7579         autotools rebuild rules before autoreconf builds these.
7580         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
7582 2005-12-07  Peter O'Gorman  <peter@pogma.com>
7584         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4 [darwin]:
7585         Use -single_module by default when linking shared libraries. Can
7586         be overridden by specifying -multi-module or by setting the env
7587         var LT_MULTI_MODULE before configure.
7588         * libltdl/m4/libtool.m4 (archive_expsyms_cmds) [darwin]:
7589         Simplify.
7590         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7592 2005-12-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7594         * doc/libtool.texi (References): Do not use `@/' for the benefit
7595         of older `makeinfo', break lines instead.
7597         * Makefile.am (install-data-local): No continuation here.
7598         (dist-hook): Fix copying of README.alpha to README.
7599         * tests/early-libtool.at (configure.ac): Remove
7600         `AM_INIT_AUTOMAKE', we do not use automake in these tests.
7602         * README, README.alpha, libtoolize.m4sh: Typos.
7603         * tests/am-subdir.at, tests/duplicate_members.at: Make all
7604         banners end with a dot, for symmetry.
7606         * libtoolize.m4sh (func_copy_all_files)
7607         (glob_exclude_pkgaux_files): Removed, since unused.
7609         * libtoolize.m4sh (func_copy_cb, func_copy_some_files)
7610         (func_serial_update, func_keyword_update): Fail immediately
7611         if some file we may install does not exist.
7612         Reported by Troy Benjegerdes <hozer@hozed.org>.
7614 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7616         * TODO: A bunch of items fixed. :)
7618         * tests/convenience.at: Updated to expose more corner cases.
7620         * doc/libtool.texi (Invoking libtoolize): Remove mention of
7621         the nonrecursive restriction to name the directory `libltdl'.
7623         * libtoolize.m4sh (func_fixup_Makefile_inc): New function.
7624         (main): Call it in nonrecursive mode to mangle Makefile.inc.
7625         * tests/nonrecursive.at: adjusted to test this.
7627 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7629         Basic support for PIE (position-independent executables).
7631         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
7632         Don't pass PIE flag for compilation of the symbol file object.
7633         (func_mode_compile): Pass PIE flag only for non-PIC objects.
7634         * NEWS: Updated.
7636 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7638         * libltdl/config/general.m4sh (func_show_eval): Rewrite use of
7639         the failure expression, because the exit status of the previous
7640         command may not be preserved in the next `eval' by some shells,
7641         such as pdksh.
7642         * libltdl/config/ltmain.m4sh (func_extract_an_archive):
7643         Use func_show_eval correctly.
7644         (func_mode_link): Likewise.  Also, do not use `$status'.
7645         * tests/fail.at: New set of tests to ensure libtool fails.
7646         * Makefile.am, tests/testsuite.at: Adjusted.
7648 2005-11-26  Peter O'Gorman  <peter@pogma.com>
7650         * libltdl/m4/libtool.m4 [darwin]: Use $LTCC $LTCFLAGS to create
7651         reloadable objects.
7653 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7655         * libltdl/Makefile.inc (libltdl/argz.h): Create libltdl
7656         directory if it does not exist yet.  Take care that munging
7657         of the file will not mess up the build rule.
7658         Reported by Peter O'Gorman <peter@pogma.com>.
7660 2005-11-25  Eric Blake  <ebb9@byu.net>,
7661             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7663         * libltdl/loaders/loadlibrary.c (iface_id): New variable.
7664         (get_vtable): Get an `iface_id' from `lt_dlinterface_register'.
7665         (get_vtable): Rewrite to catch up with lt_dlhandle_iterate
7666         interface change.  Append dot only after w32 path conversion
7667         so it works on cygwin managed mounts.
7669         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlinterface_free): New
7670         function.
7671         * doc/libtool.texi (User defined module data): Document it.
7673 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7675         * libltdl/m4/libtool.m4 [aix] <archive_expsym_cmds>
7676         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Always move -bnoentry
7677         before $compiler_flags, so it can be overridden.
7679         * libltdl/config/ltmain.m4sh (func_mode_link): Allow GCC
7680         response files through.
7682 2005-11-25  Peter O'Gorman  <peter@pogma.com>
7684         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
7685         -isysroot for cross architecture builds on darwin.
7687 2005-11-24  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7689         * libltdl/config/ltmain.m4sh (func_mode_uninstall): In clean
7690         mode, don't remove non-existent libfoo.lai.
7692 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7694         * Makefile.am (aclocalfiles): Also install lt~obsolete.m4.
7695         * libtoolize.m4sh (func_check_macros): Updated.
7696         * tests/libtoolize.at: Adjusted.
7698 2005-11-20  Eric Blake  <ebb9@byu.net>,
7699             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7701         * bootstrap (--help): Provide some help.
7703 2005-11-20  Todd Vierling <tv@netbsd.org>,
7704             Thorsten Glaser <tg@mirbsd.org>
7706         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, _LT_SYS_DYNAMIC_LINKER)
7707         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
7708         (_LT_LANG_CXX_CONFIG) [ interix3 ]: Support for Interix/Microsoft
7709         Services for Unix.
7710         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
7711         * NEWS: Updated.
7713 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7715         * tests/link-order.at [ interix ]: Skip command line grep.
7716         * tests/deplibs-ident.at [ interix ]: Not broken here.
7717         Reported by Thorsten Glaser <tg@66h.42h.de>.
7719 2005-11-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7721         * libtoolize.m4sh (func_copy_all_files)
7722         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
7723         (func_massage_pkgconfig_files): Work around ksh limitation.
7724         Reported by Thorsten Glaser <tg@66h.42h.de>.
7726 2005-11-14  Albert Chin  <china@thewrittenword.com>
7728         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
7729         [ hpux11 ]: Pass +nodefaultrpath when linking on ia64*.
7731 2005-11-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7733         Testsuite portability update round.
7735         * tests/inherited_flags: skip when shared libs are disabled.
7736         * tests/deplibs-ident.at [ aix ]: No unexpected failure here.
7737         * tests/libtoolize.at: Fix for distcheck (readonly sources).
7738         * tests/nonrecursive.at, tests/recursive.at, tests/subproject.at
7739         (foo.c): Actually export a symbol, for AIX.
7740         * tests/old-m4-iface.at: Use AC_LIBTOOL_DLOPEN, for AIX.
7741         * tests/nonrecursive.at: Set foo_la_SOURCES, for automake-1.7.
7742         * tests/subproject.at: Require automake-1.9, we use indirect
7743         subdirs.
7744         * tests/am-subdir.at: Move AT_KEYWORDS settings..
7745         * tests/testsuite.at: ..here, in respective macros.
7746         (LT_AT_AUTOMAKE): Skip if we detect failure due to old version.
7747         (PREPARE_TESTS): Set autotool variables to `no' if not present.
7748         (LT_AT_ACLOCAL, LT_AT_AUTOCONF, LT_AT_AUTOMAKE)
7749         (LT_AT_AUTOHEADER, LT_AT_AUTORECONF): Use to XFAIL tests.
7750         Reported by Tim Rice <tim@multitalents.net>.
7751         (LT_AT_MAKE): Do not use `make -e'.
7752         (_LTDL_PROJECT_FILES): Adjust sub-make call.  Work around `make'
7753         which does not set `MAKE' or `SHELL'.  Fix for user-set
7754         `CONFIG_SHELL'.
7755         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
7757         * libltdl/m4/lt~obsolete.m4 (_LT_CC_BASENAME)
7758         (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
7759         Added because they were added to branch-1-5 AC_DEFUNed.
7760         * HACKING: Add note about lt~obsolete.m4.
7762         * Makefile.am, libltdl/Makefile.inc (INSTALL_LTDL):
7763         For nonrecursive mode, add to include_HEADERS as well.
7764         * doc/libtool.texi (Invoking libtoolize, Distributing libltdl),
7765         tests/nonrecursive.at: Adjusted, and removed TABS from .texi.
7767         * libtoolize.m4sh: Revert use of `$tst_aclocaldir'.
7769 2005-11-13  Eric Blake  <ebb9@byu.net>
7771         * libltdl/ltdl.c (lt_dlhandle_iterate): Fix endless loop.
7772         (lt_dlinterface_register): Fail if lt__strdup did.
7774 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7776         * libltdl/m4/libtool.m4 (_LT_LANG_C_CONFIG):
7777         Removed `lt_prog_cc_shlib' cruft, not needed any more.
7779 2005-11-13  Kean Johnston  <jkj@sco.com>,
7780             Tim Rice  <tim@multitalents.net>
7782         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
7783         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
7784         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG)
7785         [ sco3.2v5, sysv4, sysv4.3, sysv5, sco3.2v5, sco5v6, unixware,
7786         OpenUNIX, sysv4*uw2 ]: Complete overhaul of SCO support.
7787         * THANKS: Updated.
7789 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7791         * tests/quote.test: Do not fail on harmless shell bug present
7792         in some ksh versions.
7793         Reported by Tim Rice <tim@multitalents.net> and others.
7795 2005-11-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7797         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTION): Use m4_warning
7798         instead of m4_warn.
7800         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): `wl' is tagged here.
7802         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF, _LT_COMPILER_PIC):
7803         Make sure `$wl' is properly expanded for tests involving
7804         `export_dynamic_flag_spec', `lt_prog_compiler_static'.
7806         * tests/defs.m4sh (func_configure): Actually pass
7807         options (like --disable-shared) to func_configure_nofail.
7809 2005-11-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7811         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]:
7812         Fix shlibpath_overrides_runpath settings.
7813         Reported by Dave Benson <daveb@idealab.com>.
7815 2005-09-10  Charles Wilson  <cygwin@cwilson.fastmail.fm>
7817         * libltdl/config/ltmain.m4sh (func_win32_libid): use $SED not
7818         sed.
7819         
7820 2005-11-10  Albert Chin-A-Young  <china@thewrittenword.com>
7822         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]
7823         <hppa*64,ia64, aCC,g++>:
7824         Use C++ compiler for linking rather than ld.
7826 2005-11-10  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7828         * libltdl/m4/ltsugar.m4 (lt_join, lt_combine, lt_dict_filter):
7829         Rewrite to eliminate tail recursion; use ..
7830         (lt_unquote): New trivial helper macro.
7831         * libltdl/m4/libtool.m4 (_lt_decl_filter): Document.
7833 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
7835         * tests/testsuite.ac (macrodir): Don't set it here...
7836         * Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
7837         ...set it here to pick up files from the right place in context.
7838         * tests/libtoolize.at, tests/old-m4-iface.at: Adjust.
7839         * libtoolize.m4sh: Take tst_aclocaldir into account when running
7840         inside the test harness.
7842 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
7844         * tests/am-subdir.at: Now that we don't run autoreconf, we have to
7845         explicitly tell aclocal what flags to use.
7847         * tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
7848         configure.
7849         * tests/am-subdir.at, tests/nonrecursive.at, tests/old-m4-iface.at,
7850         tests/subproject.at: Use LT_AT_BOOTSTRAP.
7852 2005-11-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7854         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Also set pic_flag.
7855         (_LT_LANG_CXX_CONFIG): Use $as_unset, not unset.
7856         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG): Remove bogus
7857         ld_shlibs tests.
7859         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Move setting of
7860         `variables_saved_for_relink'..
7861         (_LT_SYS_DYNAMIC_LINKER): here, when both `shlibpath_var'
7862         and `runpath_var' have been set.
7863         Reported by Mike Frysinger <vapier@gentoo.org>.
7865         * libltdl/Makefile.inc (AM_CPPFLAGS): Do not define
7866         HAVE_CONFIG_H.
7867         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not invoke
7868         AC_CONFIG_HEADERS ourselves, we can build with or without now.
7870 2005-11-07  Kean Johnston  <jkj@sco.com>
7872         * libltdl/config/ltmain.m4sh (func_mode_link) [ sysv4*uw2*,
7873         unixware7* ]: Work around linker bug on older SCO systems.
7875 2005-11-07  Albert Chin-A-Young  <china@thewrittenword.com>
7877         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
7878         (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]:
7879         hardcode_libdir_flag_spec and hardcode_minus_L are the same for
7880         hppa*64 and ia64*. Don't set
7881         hardcode_libdir_flag_spec='-L$libdir' on ia64* because if you
7882         specify +b and -L, +b overrides what is set into DT_RPATH.
7884 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
7886         * tests/testsuite.at (_LTDL_PROJECT_FILES): Factored out from
7887         common code to build a basic libltdl using project.
7888         * tests/old-m4-iface.at, tests/standalone.at, tests/subproject.at:
7889         Use it.
7891         * doc/libtool.texi (Distributing libltdl): Document correct use of
7892         LT_CONFIG_LTDL_DIR mode argument with Autoconf and Automake.
7894 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
7896         Support 'recursive' mode for building libltdl: Automake will
7897         recursively descend into the libltdl directory, and use libltdl's
7898         Makefile.am code to build libltdl:
7900         * ltdl.m4 (LT_CONFIG_LTDL_DIR): Don't barf on 'recursive' mode
7901         for 2nd argument.
7902         (_LTDL_MODE_DISPATCH): Handle recursive mode.
7904 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
7906         * tests/recursive.at: New tests for libltdl as a subdirectory,
7907         configured and compiled from the toplevel project using a
7908         recursive make..
7909         * tests/testsuite.at: Use it.
7910         * Makefile.am (TESTSUITE_AT): Depend on it.
7912         * libltdl/m4/ltdl.m4 (LTDL_INIT): Don't force running
7913         AC_CONFIG_HEADERS for subproject ltdl.
7914         * tests/old-m4-iface.at, tests/subproject.at: Remove workaround.
7916         * libltdl/m4/ltdl.m4 (LT_CONFIG_LTDL_DIR): Add LTDL-MODE
7917         argument.
7918         * configure.ac: Use it.
7920 2005-11-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7922         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): lt_unknown is
7923         lt_dlunknown.
7925         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Revert
7926         expansion of `$wl'.
7927         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_GCJ_CONFIG):
7928         Do not require LT_SYS_DLOPEN_SELF.
7929         (_LT_LANG_C_CONFIG): Instead call it at the right time.
7930         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
7931         (_LT_LANG_GCJ_CONFIG): Do not call _LT_CMD_STRIPLIB.
7933         * Makefile.am: `2>&1' as suggested by Albert Chin.
7934         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4:
7935         Two newlines before each macro, fix underlines.
7937 2005-11-05  Kean Johnston  <jkj@sco.com>,
7938             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7940         * libltdl/config/ltmain.m4sh (func_mode_link) [*-*-sco3.2v5*]:
7941         Don't pass through -lc, nor add it to deplibs.
7942         [*-*-sysv5*]: Ditto.
7943         [*-*-openbsd*, *-*-freebsd*, *-*-dragonfly*]: Remove bogus
7944         `$arg'.
7946 2005-11-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7948         * THANKS: Updated.
7950 2005-11-02  Gary V. Vaughan  <gary@gnu.org>
7952         * tests/nonrecursive.at: New tests for libltdl as a subdirectory,
7953         configured and compiled from the toplevel project.
7954         * tests/testsuite.at: Use it.
7955         (LT_AT_AUTOHEADER): New macro.
7956         * Makefile.am (TESTSUITE_AT): Depend on nonrecursive.at.
7958 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7960         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Add `-64'
7961         to $LD if necessary, to permit combining of several convenience
7962         libs without any further objects added.
7963         Reported by Brian Barrett <brbarret@open-mpi.org>.
7965 2005-11-01  Kean Johnston  <jkj@sco.com>,
7966             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7968         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Use
7969         `lt_prog_compile_static', not `link_static_flag'.  Expand `$wl'
7970         so expansion of `export_dynamic_flag_spec' works.
7971         (_LT_TRY_DLOPEN_SELF): Show dlerror() in case of failure.
7972         (_LT_LINKER_SHLIBS) [ aix3 ]: Likewise.
7973         (_LT_COMPILER_PIC) [ hpux* ]: Use `${wl}'.
7975 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7977         * THANKS: Updated.
7979 2005-11-01  Gary V. Vaughan  <gary@gnu.org>
7981         * libltdl/m4/ltdl.m4 (LTDL_INIT): Call _LT_ENABLE_INSTALL directly
7982         instead of m4_requiring it, as it relies on enable_ltdl_install
7983         and enable_ltdl_convenience to have been initialised first.
7985         * libtoolize.m4sh: Use serial tags to locate the correct serial
7986         numbers when deciding whether to update.
7987         (func_serial): Allow for macro_regex argument to be originating
7988         file name.
7989         (func_serial_update): Use NL2SP to flatten list of extracted
7990         m4_include files.
7991         * tests/libtoolize.at: More tests for old-style verbatim copying
7992         of macros into aclocal.m4.
7994         * libltdl/m4/argz.m4, libltdl/m4/ltoptions.m4, libltdl/ltsugar.m4,
7995         libltdl/m4/ltversion.in: Add serial number tags, and bump serial
7996         number.
7998 2005-10-31  Kean Johnston  <jkj@sco.com>
8000         [ sysv5*, sco3.2v5*, sco5v6*, unixware*, OpenUNIX*, sysv4*uw2* ]
8001         Patches for various bug fixes, small improvements and updating
8002         the SCO platform support.
8004         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Set correctly for SCO.
8006         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Set correct
8007         symcode values for the native nm on SCO platforms.
8009         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): All SCO platforms
8010         open dependency libraries when you dlopen a module.
8012 2005-10-31  Albert Chin-A-Young  <china@thewrittenword.com>
8014         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
8015         [ aix ]: Remove duplicate always_export_symbols=yes for AIX.
8017 2005-10-29  Howard Chu  <hyc@highlandsun.com>
8019         * libltdl/config/ltmain.m4sh (func_mode_link):
8020         With `-static', only link statically against uninstalled
8021         libtool libraries.  Fixes 1.5.x regression to match documented
8022         behavior.
8023         * NEWS: Updated.
8025 2005-10-27  Stepan Kasal  <kasal@ucw.cz>
8027         * HACKING: Update note about use of `$#' in m4 macros.
8029 2005-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8031         * tests/tagtrace.test: Allow `$AUTOCONF' to contain arguments.
8032         Skip if the running `autoconf' version is older than the one
8033         used to bootstrap Libtool.
8035 2005-10-26  Eric Blake  <ebb9@byu.net>,
8036             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8038         * Makefile.am (vcl-tmp): Avoid warnings from diff.
8039         * bootstrap: Avoid warnings from find.
8040         (lt_tab): Use to prevent editor whitespace "cleanup".
8042 2005-10-26  Gary V. Vaughan  <gary@gnu.org>
8044         * libtoolize.m4sh: Put back the func_serial_update callback for
8045         func_copy_some_files so that the testsuite passes again.  We'll
8046         have to find a better way of handling serial numbers in libtool
8047         macro files.
8049         * libltdl/Makefile.inc: New file, factored out of Makefile.am for
8050         use in non-recursive libltdl installations.
8051         * bootstrap: Adjust.
8052         * Makefile.am: include it.
8053         (libltdl/Makefile.am): Adjust to build from the new
8054         libltdl/Makefile.inc.
8055         (SUBDIR_LIBOBJS): Renamed from this...
8056         (LTDL_SUBDIR_LIBOBJS): ...to this.
8057         * configure.ac: Adjust.
8058         * doc/libtool.texi (Invoking libtoolize): Document the new modes
8059         and libtoolize option to select them.
8060         * libtoolize.m4sh: Parse new options, --nonrecursive, --recursive
8061         and --subproject.  Install the appropriate files with --ltdl
8062         according to the selected mode.
8063         (func_scan_files): If --subproject, --recursive or --nonrecursive
8064         options were not given, use the value from LT_CONFIG_LTDL_DIR; if
8065         a mode was given, and there is also an argument to
8066         LT_CONFIG_LTDL_DIR, ensure they are the same.
8067         * NEWS: Updated.
8069         * libtoolize.m4sh: Don't use func_serial_update as a copy
8070         function for libtool m4 files with no macro_regex.  If the
8071         files are copied directly into aclocal.m4, because
8072         AC_CONFIG_MACRO_DIR isn't set for example, there is no way
8073         to tell what serial number goes with what source file.
8074         (func_serial_update): For future-proofing, only make the second
8075         serial number check if the destination file wasn't m4_included
8076         into aclocal.m4 (and hence updated automatically by the cat of
8077         copying a new version to the dest directory).
8079         * libtoolize.m4sh: Move the consistency checks...
8080         (func_check_macros): ...into here.  Also suggest LT_WITH_LTDL if
8081         appropriate.
8083         * libtoolize.m4sh: Copying just libtool.m4 for hand maintained
8084         aclocal.m4 doesn't work.  List all required files in that case,
8085         using the files from installed libltdl if available.  Also, list
8086         the additional files required when using libltdl.
8087         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
8089         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_first): Removed.
8090         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_next)
8091         (lt_dlhandle_find, lt_dlforeach): Removed...
8092         (lt_dlhandle_iterate, lt_dlhandle_fetch, lt_dlhandle_map): Similar
8093         functions that are multi-loader safe, and require a registered
8094         interface validator argument.
8095         * doc/libtool.texi: Updated.
8096         * NEWS: Updated.
8098         * libtoolize.m4sh: Always copy pkgconfig_files for --ltdl, incase
8099         ltdl needs additional things not found by automake when looking at
8100         the parent project configury.
8101         * tests/libtoolize.at: Adjust.
8103 2005-10-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8105         * libltdl/config/ltmain.m4sh [darwin]: Don't check for "bundle"
8106         in file path.
8107         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
8109 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
8111         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Don't nest AC_MSG_CHECKING/
8112         AC_MSG_RESULT pairs.
8114 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
8116         * tests/subproject.at: Move 'touch config.h.in' invocation.
8118         * tests/subproject.at (_LTDL_SETUP): Use pushdef/popdef to
8119         simulate file-local scope.  Empty source file compilation is not
8120         portable, so add minimal code to generated foo.c file.
8122 2005-10-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8124         * libltdl/m4/libtool.m4 (LT_PATH_NM): End test source with
8125         newline.
8126         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
8128 2005-10-13  Peter O'Gorman  <peter@pogma.com>
8130         * libltdl/ltdl.c (find_module): Check that dir is set.
8131         (load_deplibs): Don't free the user search paths too early.
8133 2005-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8135         * tests/testsuite.at (LT_AT_AUTOMAKE): New macro.
8136         * tests/subproject.at: Use it.  Do not call `autoreconf' in
8137         tests, since it will try to reconfigure `sub/ltdl', which
8138         breaks `make check' during `distcheck' because of a readonly
8139         source tree.
8141         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Also set INCLTDL.
8143         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE)
8144         (LT_WITH_LTDL): Revert Gary's 2005-10-10 patch.
8146         * tests/stresstest.at: Use `allow_undefined_flag' instead of
8147         host_os setting.
8149 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
8151         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Remove bogus extra
8152         closing brackets.
8154 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
8156         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Remove
8157         AC_SUBST of LIBLTDL, LTDLINCL, and all mention of INCLTDL.
8158         (LT_WITH_LTDL): Due to order constraints between LTDL_CONVENIENCE,
8159         LTDL_INSTALLABLE, LT_WITH_LTDL & LTDL_INIT, we can safely AC_SUBST
8160         LIBLTDL and LTDLINCL here.  Also, remember to synch INCLTDL.
8162 2005-10-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8164         * tests/stresstest.at [ aix3, beos, os2 ]: Always use
8165         `-no-undefined'.
8167 2005-10-09  Christian Biesinger  <cbiesinger@web.de>
8169         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ beos ]:
8170         Initial shared library support for C++.
8172 2005-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8174         * configure.ac (abs_top_builddir, abs_top_srcdir): always
8175         substitute.
8176         * Makefile.am (BUILDCHECK_ENVIRONMENT)
8177         (INSTALLCHECK_ENVIRONMENT): New macros.  Set _lt_pkgdatadir,
8178         LIBTOOL, LIBTOOLIZE accordingly, by using above, and
8179         program_transform_name.
8180         * tests/testsuite.at (TESTS_PREPARE): Do not set them anymore.
8181         Set $unset.
8182         (LT_AT_MAKE): Use to unset LIBTOOL and LIBTOOLIZE.
8184 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
8186         * tests/subproject.at: Commit the right file this time.
8188 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8190         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Fix m4 quoting
8191         for lt_simple_link_test_code.
8192         Reported by Nicolas Joly <njoly@pasteur.fr>.
8194 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
8196         * tests/subproject.at: New tests for libltdl as a subproject with
8197         its own configuration.
8198         * tests/testsuite.at: Use it.
8199         * Makefile.am (TESTSUITE_AT): Depend on it.
8201 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8203         * Makefile.am: Simplify.  Do not use abs_top_srcdir.
8204         Reported by Gary V. Vaughan <gary@gnu.org>.
8206 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
8208         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Spurious './' prefixes
8209         upset BSD pmake, don't set lt_ltdl_dir in this case.
8210         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
8212 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8214         * Makefile.am (BUILDCHECK_ENVIRONMENT)
8215         (INSTALLCHECK_ENVIRONMENT): New macros.
8216         (check-local, installcheck-local): Use them.
8217         * tests/testsuite.at (PREPARE_TESTS): Extract host_alias, ECHO.
8218         Set configure_options appropriately.
8219         (LT_AT_CONFIGURE, LT_AT_AUTORECONF, LT_AT_MAKE): New macros.
8220         (LT_AT_BOOTSTRAP): Use them.
8221         * tests/am-subdir.at, tests/early-libtool.at,
8222         tests/old-m4-iface.at, tests/standalone.at: Likewise.
8223         * tests/link-order.test: Do not extract ECHO any more.
8225         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
8226         AC_CANONICAL_HOST and _LT_DECL_SED.
8228 2005-10-03  Gary V. Vaughan  <gary@gnu.org>
8230         * libltdl/m4/ltdl.m4: Bump serial as we are changing the
8231         interface.
8232         (LT_CONFIG_LTDL_DIR): New macro to centralise setting the
8233         subdirectory used for libltdl.
8234         (LTDL_CONVENIENCE): Continue backwards compatibility support for
8235         declaring the libltdl source subdirectory with an argument, but
8236         defer to LT_CONFIG_LTDL_DIR.
8237         (AC_LIBLTDL_CONVENIENCE): Adjust to upgrade to the new style.
8238         (LTDL_INSTALLABLE, AC_LIBLTDL_INSTALLABLE): Ditto.
8239         (LTDL_INIT): lt_ltdl_dir is set by LT_CONFIG_LTDL_DIR now, and
8240         even `./' needs trailing slashes trimming!  If the user didn't
8241         upgrade their configure.ac yet, call LT_CONFIG_LTDL_DIR for them.
8242         * libtoolize.m4sh (func_scan_files): If --ltdl option is given
8243         without a directory argument, use the value from
8244         LT_CONFIG_LTDL_DIR; if the argument is given, and there is also a
8245         value in LT_CONFIG_LTDL_DIR, ensure they are the same.
8246         * libltdl/configure.ac: Use it.
8247         * NEWS: Updated.
8249 2005-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8251         * tests/old-m4-iface.at (Makefile.in): Do not reconfigure
8252         libltdl directory.
8254 2005-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8256         * tests/deplibs-ident.at: New file with XFAIL test to expose
8257         wrong multiple listing of a deplib on the command line.
8258         * Makefile.am, tests/testsuite.at: Updated.
8259         Reported by Brian Barrett <brbarret@open-mpi.org>.
8261         * tests/old-m4-iface.at: Define top_srcdir, work around current
8262         ltdl.m4 bug.
8264         * libltdl/config/ltmain.m4sh (func_mode_link):
8265         Fix wrong logic introduced in last commit.
8267 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
8269         * tests/libtoolize.at: Add a new test to catch a regression I
8270         almost introduced with respect to copying macro files when
8271         AC_CONFIG_MACRO_DIR is shared with libltdl subproject.
8273 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
8275         * tests/old-m4-iface.at: Start of a new test series for m4
8276         interface backwards compatibility.
8277         * tests/testsuite.at: Use it.
8278         (macrodir): Declare the location of uninstalled libtool m4 macros.
8279         * Makefile.am (TESTSUITE_AT): Depend on it.
8281 2005-09-29  Tim Rice  <tim@multitalents.net>  (tiny change)
8283         * tests/early-libtool.at (Makefile.in): Set $(SHELL).
8285 2005-09-29  Peter Ekberg  <peda@lysator.liu.se>
8287         * libltdl/config/ltmain.m4sh (func_mode_link): Don't modify
8288         user provided symbols file. Adjust removal of temporary files
8289         and also remove temporary files used during symbols file
8290         filtering.
8292 2005-09-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8294         * libtoolize.m4sh (func_included_files): Do not recurse
8295         non-existent files.
8297 2005-09-27  Gary V. Vaughan  <gary@gnu.org>
8299         * libtoolize.m4sh (func_scan_files): Support projects that have
8300         upgraded libtool, but still use an old autoconf.  When the libtool
8301         macros are not copied (because of missing ACLOCAL_AMFLAGS and
8302         AC_CONFIG_MACRO_DIR ), point them at the libtoolize master tree
8303         for files to manually copy into acinclude.m4 or aclocal.m4.
8305         * libltdl/lt_error.c (lt__last_error, lt__error_strings): The lt__
8306         prefix is used to indicate internal symbols that are only exported
8307         for use by other parts of libltdl.  These are now static, so...
8308         (last_error, error_strings): ...renamed to this.  Changed all
8309         callers.
8311         * libltdl/ltdl.h (lt_dlmutex_register, lt_dlmutex_lock)
8312         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror)
8313         (lt_dlmalloc, lt_dlrealloc, lt_dlfree): Remove deprecated APIs.
8314         * doc/libtool.tex: Updated.
8315         * NEWS: Updated.
8317         * libltdl/ltdl.c (lt_dlcaller_register): Renamed to avoid problems
8318         with module visibilty when linked with programs written for the
8319         old API.
8320         (lt_dlinterface_register): New name.
8321         * Makefile.am (VERSION_INFO): Bumped.
8322         * doc/libtool.texi (User defined module data): Updated.
8324 2005-09-27  Tim Rice  <tim@multitalents.net>
8326         * tests/defs.m4sh, tests/testsuite.at (PREPARE_TESTS)
8327         <AUTORECONF>: Allow variable override.
8329 2005-09-26  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8331         * HACKING: Only update libltdl version info before release.
8333 2005-09-26  Tim Rice  <tim@multitalents.net>
8335         * configure.ac <AUTOM4TE>: Allow variable override.
8337 2005-09-25  Alan W. Irwin  <irwin@beluga.phys.uvic.ca>,
8338             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8340         * libltdl/config/ltmain.m4sh (func_win32_libid)
8341         [ cygwin, mingw ]: Robustify sed script to determine
8342         win32_libid_type.
8343         (func_mode_link) [ mingw ]: Ignore `-lm'.
8345 2005-09-25  Peter Ekberg  <peda@lysator.liu.se>
8347         * libltdl/libltdl/lt__private.h, libltdl/lt_error.c:
8348         Don't export the lt__last_error and lt__error_strings
8349         variables. Define lt__error_strings so that no relocations
8350         are needed.
8351         * libltdl/libltdl/lt__private.h (LT__STRERROR, LT__GETERROR)
8352         (LT__SETERRORSTR): Adjust to not use the above variables,
8353         instead use the following functions...
8354         * libltdl/lt_error.c: (lt__error_string, lt__get_last_error)
8355         (lt__set_last_error): Reimplement the functionality in
8356         these functions instead.
8357         * libltdl/libltdl/lt_error.h: Add LT_ERROR_LEN_MAX define for
8358         max error string length.
8359         (lt_dlerror_table): Append explicit nul terminators so that
8360         compilers warn more reliably if the above define is too small.
8362 2005-09-23  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8364         * tests/link-order.at [ aix* ]: skip path syntax grep.
8366 2005-09-23  Peter Ekberg  <peda@lysator.liu.se>
8368         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Fix awk
8369         script to be a single line so that the cache variable isn't
8370         multiline.
8372 2005-09-23  Eric Blake  <ebb9@byu.net>  (tiny change)
8374         * libltdl/loaders/loadlibrary.c (vm_open): Silence gcc warnings.
8375         [__CYGWIN__]: Include <sys/cygwin.h> for prototype.
8377 2005-09-22  Gary V. Vaughan  <gary@gnu.org>
8379         * bootstrap: Don't clobber the working copy metadata in
8380         ./{arch}/libtool during bootstrap.
8382 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
8383             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8385         * libltdl/config/ltmain.m4sh (func_mode_link): Filter
8386         user supplied symfile to tag relevant symbols as data
8387         symbols. Fixes segfault in stresstest.at on Cygwin and
8388         makes the test pass.
8390 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>
8392         * tests/link-order.test: Clean up the uninstalled libraries
8393         before linking the test executables so that they don't pick
8394         up the dlls from the current dir on Cygwin and MinGW.
8396 2005-09-22  Tim Rice  <tim@multitalents.net>
8398         * libltdl/m4/libtool.m4 (LT_PATH_NM, _LT_LINKER_SHLIBS)
8399         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS):
8400         Add missing `;;' after case list.
8402 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
8403             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8405         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC)
8406         (_LT_LINKER_SHLIBS): Require _LT_TAG_COMPILER to make sure that
8407         $compiler is assigned. Fixes crippled configure output.
8409 2005-09-21  Peter Ekberg  <peda@lysator.liu.se>
8411         * libltdl/m4/libtool.m4 (LT_PATH_NM): Fix autodetection of
8412         dumpbin and also check for "link -dump -symbols" as a synonym
8413         for "dumpbin -symbols".
8415         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Clean
8416         up $dlname as well when cleaning a uninstalled libtool
8417         library. Fixes -mode=clean on Cygwin and MinGW to actually
8418         remove the dll when cleaning up an uninstalled library.
8420 2005-09-20  Peter Ekberg  <peda@lysator.liu.se>
8422         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
8423         Split up --out-implib option for linker in separate args so that
8424         the MSYS path translation can do its magic on the provided path
8425         to the import library. Fixes problem in stresstest.at on MinGW.
8427 2005-09-19  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8429         * Makefile.am (ltdldatafiles): Fix installation order to match
8430         dependency order.
8431         (libltdl/Makefile.in): Use $(srcdir) for non-GNU make.
8433 2005-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8435         * libltdl/config/ltmain.m4sh (func_mode_link): Allow some
8436         ARM gcc ABI flags through.
8437         Reported by Andrés Moré <more.andres@gmail.com>.
8439         * Makefile.am (all-local): Rebuild libltdl/Makefile.in.
8441         * libltdl/m4/ltdl.m4 (LTDL_INIT) <CONFIG_H>: Rename to..
8442         <LT_CONFIG_H>: this, to contain the name of the config
8443         header.
8444         * Makefile.am <DEFS>: Use it to define LT_CONFIG_H.
8445         * HACKING, libltdl/argz.c, libltdl/lt__alloc.c,
8446         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
8447         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h:
8448         Adjusted.
8450 2005-09-16  Peter Ekberg  <peda@lysator.liu.se>
8452         * tests/testsuite.at (LT_AT_EXEC_CHECK): Make sure
8453         that the exit status of the tested program is
8454         propagated as the exit status of the expression
8455         fed to AT_CHECK.
8457 2005-09-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8459         * libltdl/argz.c <HAVE_CONFIG_H>: Avoid redefinition warning.
8461         * libltdl/ltdl.c (lt_argz_insert): Work around newlib
8462         argz_insert bug.
8463         * Makefile.am (VERSION_INFO): Bumped revision.
8464         Reported by Eric Blake <ebb9@byu.net>.
8466 2005-09-13  Peter Ekberg  <peda@lysator.liu.se>,
8467             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8469         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
8470         Fix escape expression to actually escape relevant
8471         characters from the following grep. Fix Cygwin and
8472         MinGW to use the filtered symbol list when exporting
8473         from self, and not the symbol filter.
8474         * tests/stresstest.at: Export w8, not w8$
8476 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8478         Make tagdemo work smoothly with both pre- and ISO C++ compilers,
8479         and remove all use of libstdc from other tests.
8481         * tests/tagdemo/configure.ac (HAVE_NAMESPACES, HAVE_IOSTREAM):
8482         New tests for ISO C++ features.  Reimplementation of similar
8483         macros from the autoconf archive.
8484         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp: Adjusted.
8485         * tests/am-subdir.at, tests/template.at: Do not use iostream.
8487 2005-09-12  Peter Ekberg  <peda@axentia.se>,
8488             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8490         * tests/testsuite.at (host_os): Pull from `libtool --config'.
8491         * tests/stresstest.at [ cygwin, mingw, pw32 ]: Use it to fix
8492         setting of `-no-undefined'.
8494 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8496         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL, LTDL_CONVENIENCE)
8497         (LTDL_INSTALLABLE): Use less quoting for expanded LIBLTDL,
8498         LTDLINCL.  Use m4_default instead of m4_if, to work
8499         around AU_ALIAS bug with empty macro arguments.
8500         (LTDL_INIT): Likewise.
8501         * libltdl/m4/ltoptions.m4 (_LT_WITH_PIC): Likewise.
8502         * TODO, HACKING: Updated.
8504 2005-09-10  Gary V. Vaughan  <gary@gnu.org>
8506         * libtoolize.m4sh (TAR): Allow the user to override the tar
8507         command.
8509 2005-09-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8511         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
8512         (_LT_LINKER_BOILERPLATE, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
8513         (_LT_COMPILER_C_O): When comparing expected and actual compiler/
8514         linker output for warnings, weed out both empty lines as well as
8515         lines starting with possibly indented `+', to allow for shell
8516         debugging with `set -x'.
8517         Check the weeded instead of unweeded contents for emptiness.
8519         * libltdl/config/ltmain.m4sh (func_mode_link): Actually provide
8520         a useful error message.  Fixes long-standing shameful user
8521         neglection.
8522         Reported by Martin Paljak <martin.paljak@gmail.com>.
8524 2005-09-08  Peter Ekberg  <peda@axentia.se>
8526         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]:
8527         Symbols in "pick any" sections are not global. Use
8528         awk, not sed, in the global_symbol_pipe so that keeping
8529         track of sections is easier.
8530         * doc/libtool.texi (libtool script contents): Update to hint
8531         at new findings concerning "pick any" sections.
8533 2005-09-08  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8535         * tests/early-libtool.at (config.status): Use EXEEXT
8536         consistently.
8537         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
8539 2005-09-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
8541         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
8542         [ cygwin, mingw, pw32 ]: Use --enable-auto-image-base instead of
8543         a fixed image base address.
8545 2005-09-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8547         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ sysv4*uw2*,
8548         sysv4.2uw2* ]: Fix my last checkin to really match the more special
8549         case before the general case.
8550         Reported by Stepan Kasal <kasal@ucw.cz>.
8552 2005-09-06  Roger Cornelius  <rac@tenzing.org>
8554         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
8555         [ sysv5OpenUNIX8, sysv5UnixWare7, sysv5uw[78], unixware7,
8556         sysv4*uw2* ]: Match special cases before general case.
8558 2005-09-05  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8560         * bootstrap: another AIX sed fix.
8562         * Makefile.am (TESTS_ENVIRONMENT): Export SHELL.
8563         * bootstrap (SHELL): Set to $CONFIG_SHELL or /bin/sh.
8564         Name `make' targets in portable fashion.  Work around `rm'
8565         warnings.  Unconditionally create fake `libtoolize'.
8566         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
8568         * Makefile.am (doc/notes.txt): Use --no-headers instead of
8569         --plaintext for makeinfo.
8570         Reported by Peter O'Gorman <peter@pogma.com>.
8572 2005-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8574         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ aix ]
8575         <export_symbols_cmds>: Work around shell expansion issue in
8576         func_show_eval by separating `$' and field number; drop then
8577         unnecessary m4 quoting.
8579 2005-09-02  Gary V. Vaughan  <gary@gnu.org>
8581         AC_BEFORE only works if declarations are made inside the macro
8582         cited as the first argument:
8584         * libltdl/m4/libtool.m4 (LT_OUTPUT): Move AC_BEFORE decls...
8585         (LT_INIT, LT_LANG): ...to the macro that has to come first.
8587 2005-09-01  Peter O'Gorman  <peter@pogma.com>
8589         * libltdl/m4/libtool.m4 (old_postintall_cmds): chmod 644 before
8590         running ranlib.
8591         Reported by Gerald Pfeifer <gerald@pfeifer.com>
8593 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8595         * libltdl/m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77)
8596         (_LT_PROG_FC): aclocal-1.4 compatibility workaround.
8598         * bootstrap: Do not use nonportable -path.
8599         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
8601 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
8603         * doc/libtool.texi (LT_INIT): Fix a logical error with
8604         documentation of --with-pic vs --without-pic.
8606 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8608         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): m4_defun this..
8609         * libltdl/m4/libtool.m4 (LT_INIT): so it can be m4_require'd
8610         from here with user-supplied options.  Fixes output macro
8611         ordering issue.
8613 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
8615         * libtoolize.m4sh (func_scan_files): When searching for evidence
8616         of Autotools in aclocal.m4, be careful not to trip over requires
8617         and defuns.
8619 2005-08-31  Gary V. Vaughan <gary@gnu.org>,
8620             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8622         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Move option macro
8623         dipatch..
8624         (_LT_SET_OPTION): here.  Do not fail but warn on unknown
8625         options.
8626         (_LT_UNLESS_OPTIONS(win32-dll), LT_OPTION_DEFINE(dlopen)):
8627         Add whitespace.
8628         Reported by Robert Ögren <lists@roboros.com> and
8629         Akim Demaille <akim@lrde.epita.fr>.
8631 2005-08-31  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8633         * libltdl/m4/libtool.m4 [ solaris CC ]: Document issue with C++
8634         standard libraries.
8636 2005-08-30  Gary V. Vaughan  <gary@gnu.org>
8638         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_PIC_MODE): Renamed...
8639         (AC_LIBTOOL_PICMODE): ...this in the backwards compatibility
8640         code.  There never was an AC_LIBTOOL_PIC_MODE macro.
8642         * libltdl/m4/libtool.m4 (_LT_SETUP): Remove duplicate
8643         --enable-libtool-lock declaration.
8645 2005-08-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8647         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
8648         (_LT_PATH_TOOL_PREFIX, _LT_SYS_HIDDEN_LIBDEPS, _LT_DECL_EGREP):
8649         Fix typos.
8651         * Makefile.am: Install libltdl data files in correct order.
8652         Use pre-defined programs for installation; use NORMAL_INSTALL
8653         and NORMAL_UNINSTALL.  Really fix ownership and timestamp
8654         problems.  Fix typo in uninstallation of aclocal files.
8655         Reported by Peter Breitenlohner <peb@mppmu.mpg.de> and
8656         Charles Wilson <cygwin@cwilson.fastmail.fm>.
8658 2005-08-29  Gary V. Vaughan <gary@gnu.org>,
8659             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8661         Allow for portability with Autoconf 2.59, Automake 1.9.6,
8662         which lack AC_CONFIG_LIBOBJ_DIR support.
8664         * bootstrap: Unless environment variable WORKING_LIBOBJS_SUPPORT
8665         is set to true aka `:', symlink ..
8666         * argz.c lt__dirent.c lt__strl.c: .. these from the copies in
8667         libltdl.
8668         * configure.ac (SUBDIR_LIBOBJS): Automake conditional, set if
8669         bootstrap didn't make the extra copies of libobj sources in
8670         top srcdir...
8671         * Makefile.am: Add these to EXTRA_DIST if SUBDIR_OBJS is not set,
8672         as well as the originals in libltdl/, in order to work when
8673         bootstrapped both with old and newer Automake/Autoconf.
8675 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
8677         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE): Fix the comment to not
8678         pretend that LIBLTDL and LTDLINCL are not AC_SUBSTed here.
8680 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
8682         Some macros had relied on accidentally correct ordering in order
8683         for $MV to be defined before use.  Factor out setting of some
8684         common file commands and m4_require it before use:
8686         * libltdl/m4/libtool.m4 (_LT_FILEUTILS_DEFAULTS): Allow user to
8687         override some common file commands at configure time.
8688         (_LT_SETUP, _LT_CONFIG, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
8689         (_LT_COMPILER_C_O, _LT_COMPILER_FILE_LOCKS)
8690         (_LT_SYS_DYNAMIC_LINKER, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
8691         (_LT_SYS_HIDDEN_DEPLIBS): m4_require it to ensure the commands are
8692         defined before they are called.
8694 2005-08-28  Gary V. Vaughan  <gary@gnu.org>
8696         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4: AU_DEFUN doesn't pass
8697         arguments.  Use AU_ALIAS instead!
8699 2005-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
8700             Gary V. Vaughan <gary@gnu.org>
8702         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p) [osf]:
8703         Save file descriptor to original STDIN, and restore after
8704         redirection.  Fixes memory corruption with Tru64 and OSF sh.
8705         Reported by Nicolas Joly <njoly@pasteur.fr>.
8707 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
8708             Peter Ekberg  <peda@lysator.liu.se>
8710         * tests/early-libtool.at: Fix goofed up make rules in
8711         previous commit.
8713         * tests/inherited_flags.at: Weaken for MSVC.
8714         * tests/early-libtool.at, tests/template.at: Fix for compiler
8715         that do not understand '-c -o'.
8717 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8719         * tests/standalone.at, tests/template.at: Do not compare
8720         output because of EOL issues.  Resolve warnings, make cross-
8721         compilation aware.
8722         Reported by Peter Ekberg <peda@axentia.se>.
8724         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
8725         (_LT_LINKER_SHLIBS): Double-quote unsafe tag variable
8726         descriptions: they are literals.
8728 2005-08-25  Peter Ekberg  <peda@lysator.liu.se>,
8729             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8731         * tests/standalone.at: (without autotools): Add
8732         $(CFLAGS) to LTCOMPILE and LTLINK. Separate compiling
8733         and linking. Remove compiling flags from link. Add
8734         --tag. Add -no-undefined flag.
8736 2005-08-24  Bruno Haible  <bruno@clisp.org>
8738         * libltdl/config/ltmain.sh (func_mode_install): Try "ln -s -f"
8739         and "rm -f && ln -s" to make a symlink for a shared library: the
8740         former is needed for libraries `ln' depends on, the latter for
8741         Solaris /bin/ln.
8742         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
8744         * libltdl/config/ltmain.sh (cwrappersource): return 127 if exec
8745         failed.
8747 2005-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8749         * libltdl/m4/libtool.m4 (_LT_COMPILER_C_O): Send chmod warning to log.
8751         * tests/defs.m4sh (m4dir, auxdir, scripts): Fix for source tree
8752         reorganization.
8753         * tests/sh.test: Adjust.  Also barf on sed diagnostics so this
8754         test will not fail again silently.
8756         * libltdl/m4/ltdl.m4 (LT_SYS_SYMBOL_USCORE): Use _LT_EOF, not
8757         EOF.
8759         * tests/fcdemo/Makefile.am (suffix rules): Explicitly add
8760         $(FCFLAGS_f90) so the tests can pass on AIX.
8762 2005-08-24  Peter O'Gorman  <peter@pogma.com>
8764         * libltdl/config/ltmain.m4sh (inherited_linker_flags): Work when
8765         output is an application too.
8766         Reported by Christopher Egger <Christoph_Egger@gmx.de>
8768 2005-08-23  Stepan Kasal  <kasal@ucw.cz>,
8769             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8771         * libltdl/m4/ltdl.m4 (LTDL_INIT): Use AH_HEADER if defined.
8772         Compute CONFIG_H only before creating config.status.
8773         Reported by Peter Ekberg <peda@axentia.se>.
8775 2005-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8777         * Makefile.maint (web-manual): Fix $(LN_S) to use absolute path.
8778         Fix creating the manual for VPATH build.
8780         * bootstrap: Fix missing replace config -> $auxdir.  ltmain.m4sh
8781         is prerequisite to ltmain.sh.  Improve warning message.
8783 2005-08-22  Gary V. Vaughan  <gary@gnu.org>
8785         Reorganise the libtool tree to create a bootstrapped libltdl for
8786         installation to the libtoolize master tree, so that libltdl is
8787         useable even in the extreme case of when automake and autoconf are
8788         not installed on the developers machine.  Part of this change
8789         requires some duplication of rules between Makefile.am (which
8790         builds libltdl for this distribution) and libltdl/Makefile.am
8791         (which is used by projects that libltoolize --ltdl --copy), so
8792         libtool now really does use a single toplevel Makefile.am, and we
8793         generate libltdl/Makefile.am from that:
8795         * m4, config: Moved from here...
8796         * libltdl/m4, libltdl/config: ...to here, to reduce the amount of
8797         kludging needed in bootstrap for autoreconf to run.
8798         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
8799         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
8800         tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
8801         tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
8802         tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Adjust to
8803         compensate.
8804         * tests/cdemo/configure.ac, tests/demo/configure.ac,
8805         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
8806         tests/fcdemo/configure.ac, tests/mdemo/configure.ac,
8807         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
8808         tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto.
8809         * libltdl/m4/ltdl.m4: Increment serial number.
8810         (LTDL_INIT): Accept an optional directory argument to prefix each
8811         of the LD_DLLOADERS locations.  Default to empty for backwards
8812         compatibility.
8813         * Makefile.maint: Adjust to compensate.
8814         * configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR): Adjust.
8815         (AC_CONFIG_LIBOBJ_DIR): Set here so that we can build LTLIBOBJS
8816         from in a subdirectory from the amalgamated Makefile.am.
8817         (AM_PROG_CC_C_O, AM_INIT_AUTOMAKE): Use subdir-objects.
8818         (AC_CONFIG_FILES): Remove libltdl/Makefile.am.
8819         * libltdl/Makefile.am: Removed from repository, and merged into
8820         Makefile.am as we now generate it...
8821         * Makefile.am (libltdl/Makefile.am): ...from here, by extracting
8822         the merged rules, and tweaking paths to accomodate the difference
8823         in directory from Makefile.am to libltdl/Makefile.am.
8824         (nobase_dist_pkgdata_DATA): Automake generated installation rules
8825         change timestamps of installed files, so renamed this...
8826         (configauxfiles): ...to this...
8827         (libtoolize): ...substitute it...
8828         (install-data-local): ...install manually, preserving
8829         timestamps...
8830         (install-data-hook): ...and set execute bit as appropriate.
8831         (uninstall-hook): Not forgetting to remove them at uninstall.
8832         (libltdl/Makefile.in): New rule.  Called from...
8833         * bootstrap: ...here to avoid relying on config.status at
8834         bootstrap time.
8835         (auxdir, m4dir): Extract from configure.ac for ease of future
8836         maintenance.  Adjust all references.
8837         (reconfdirs): Call autoreconf for libltdl too -- even
8838         though we don't use it for the build, libltdl/configure and
8839         friends are installed with `libtoolize --ltdl --copy'.
8840         * libtoolize.m4sh: Add files from the installed config master tree
8841         to libtoolize --ltdl project subdirectory.
8842         Diagnose duplicated files when --ltdl is used in an autotooled
8843         project.
8844         It's perfectly fine to run `libtoolize --ltdl --copy' in a tree
8845         that has no configure.ac or configure.in; we want libltdl to be
8846         useful even to projects that don't use autotools themselves.
8847         (libtoolize_flags): Removed.  Changed all callers.
8848         (func_massage_pkgconfig_files): New function.
8849         * tests/standalone.at: New tests for using libltdl without
8850         supporting configury in the parent project.
8851         * tests/testsuite.at: Run them!
8852         * NEWS: Updated.
8854 2005-08-22  Peter Ekberg  <peda@lysator.liu.se>
8856         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Add
8857         forgotten end bracket.
8859         * doc/libtool.texi: Shorten the lines describing the
8860         output from MS dumpbin, and align the columns.
8862         * m4/libtool.m4: Bump serial number.
8863         (LT_PATH_NM): If nm is not found on the path, look for
8864         dumpbin. Then check if $NM responds as dumpbin would
8865         and if not, assume the name lister is BSD nm compatible.
8866         (_LT_CMD_GLOBAL_SYMBOLS): If the name lister uses the
8867         dumpbin interface, adjust the test to find a working
8868         global_symbol_pipe.
8869         * doc/libtool.texi: Document $NM to possibly be MS
8870         dumpbin compatible, and also document the format of the
8871         relevant output from MS dumpbin.
8873 2005-08-21  Gary V. Vaughan  <gary@gnu.org>
8875         * libltdl/Makefile.am: revert mistaken commit.
8877         * tests/template.at [darwin]: Some of these tests result in
8878         unresolved symbols on darwin, so don't run those test on that
8879         host!
8881 2005-08-18  Gary V. Vaughan  <gary@gnu.org>,
8882             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8884         * m4/libtool.m4 (LT_OUTPUT): New macro to generate
8885         libtool before config.status.
8886         (_LT_CONFIG_COMMANDS): If LT_OUTPUT has been invoked, then
8887         generate code in config.status to call config.lt instead of
8888         generating libtool directly.
8889         * doc/libtool.texi (LT_INIT): Document LT_OUTPUT.
8890         * tests/early-libtool.at: New test.
8891         * Makefile.am (TESTSUITE_AT): Updated.
8892         * tests/testsuite.at: Updated.  Define defaults for $ACLOCAL,
8893         $AUTOCONF.
8895 2005-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8897         * TODO: Actually updated now.
8899         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]: Do not
8900         assume `aout' for modern FreeBSD by absence of deprecated
8901         `objformat'.
8903         * m4/libtool.m4 [sun, CC] (_LT_LANG_CXX_CONFIG): Move postdeps
8904         override ..
8905         (_LT_SYS_HIDDEN_LIBDEPS): ..here.
8906         * TODO: Updated.
8908 2005-08-18  Stepan Kasal  <kasal@ucw.cz>
8910         * config/general.m4sh (SP2NL, NL2SP): Simplify.
8912 2005-08-17  Gary V. Vaughan  <gary@gnu.org>
8914         * m4/ltdl.m4 (LTDL_INIT): Fix mismatched parens.
8916 2005-08-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8918         * tests/inherited_flags.at: Store intermediate libtool output
8919         for better debugging.
8921         * tests/link-order.at: Add -no-undefined to LDFLAGS.
8923         * tests/convenience.at, tests/template.at: Change suffix of C++
8924         files to .cpp, for compatibility with MSVC.
8925         Reported by Peter Ekberg <peda@axentia.se>.
8927 2005-08-12  Jeremie LE HEN  <tataz@sitadelle.com>,
8928             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8930         * doc/libtool.texi (Creating object files, Linking libraries):
8931         Update description of library object (.lo) and libtoo library
8932         (.la) files.
8933         (all over): Replace MODE with --mode=MODE in examples.
8935 2005-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8937         * config/ltmain.m4sh (func_source): New function.
8938         (func_mode_execute, func_mode_install, func_mode_link): Use it.
8939         Do not append a dot to a file name to source, it breaks on
8940         cygwin managed mounts and is not necessary anywhere.
8941         Reported by Eric Blake <ebb9@byu.net>.
8943         * config/ltmain.m4sh (func_execute_cmds): New function.
8944         (func_mode_finish, func_mode_install, func_mode_link)
8945         (func_mode_uninstall): Use it.
8947         * tests/defs.m4sh (func_configure): Rename to ..
8948         (func_configure_nofail): this, call from old.
8949         * tests/fcdemo-conf.test, tests/fcdemo-shared.test,
8950         tests/fcdemo-static.test: Use.  Do not fail gratuitously but
8951         SKIP on compilers that look like they could be Fortran 77-only.
8952         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
8954         * config/ltmain.m4sh (mode): Do not initialize, for nicer error
8955         messages.
8957 2005-08-10  Peter Ekberg  <peda@lysator.liu.se>
8959         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Set ac_ext to cpp, not cc.
8961 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8963         * config/ltmain.m4sh (inherited_linker_flags): Backed out broken
8964         patch.
8966 2005-08-08  Peter O'Gorman  <peter@pogma.com>
8968         * config/ltmain.m4sh (inherited_linker_flags): Work when output
8969         is an application too.
8970         Reported by Christopher Egger <Christoph_Egger@gmx.de>
8972 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8974         * m4/libtool.m4 (_LT_PROG_FC, _LT_LANG_FC_CONFIG): New macros
8975         for modern Fortran.
8976         (LT_LANG, _LT_LANG_DEFAULT_CONFIG, _LT_SYS_DYNAMIC_LINKER,
8977         _LT_SYS_HIDDEN_LIBDEPS): Adjusted.
8978         * tests/fcdemo-conf.test, tests/fcdemo-exec.test,
8979         tests/fcdemo-make.test, tests/fcdemo-shared.test,
8980         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
8981         tests/fcdemo/README, tests/fcdemo/configure.ac,
8982         tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
8983         tests/fcdemo/foof.f90, tests/fcdemo/foof2.f90,
8984         tests/fcdemo/foof3.f90, tests/fcdemo/fprogram.f90: New tests for
8985         Fortran.
8986         * tests/convenience.at: Extended.
8987         * Makefile.am, configure.ac: Adjusted.
8988         * NEWS: Updated.
8990         * AUTHORS, HACKING: Updated.
8992 2005-08-05  Albert Chin-A-Young  <china@thewrittenword.com>
8994         * config/ltmain.m4sh (func_mode_link): Ignore errors from expr
8995         when determining if piece-wise linking should be done.
8997 2005-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8999         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Add
9000         missing bit from Christoph's patch.
9002         * m4/libtool.m4 (_LT_LINKER_HARDCODE_LIBPATH, _LT_LINKER_SHLIBS)
9003         (_LT_LANG_CXX_CONFIG): Comment typos.
9005 2005-08-04  Christoph Egger  <Christoph_Egger@gmx.de>
9007         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Change
9008         basename() to base_name() and have it return a pointer to const,
9009         fix compilation warnings.
9011 2005-07-30  Peter Ekberg  <peda@lysator.liu.se>
9013         * m4/libtool.m4 (_LT_PROG_F77): Set it up so that saying F77=no
9014         to configure disables the fortran tests in the testsuite.
9016 2005-07-29  Richard Moseley  <dickie.moseley@virgin.net>
9018         * m4/ltdl.m4 (LTDL_INIT): Handle in addition the new name for
9019         AC_LIST_HEADERS which is _AC_LIST_TAGS.
9021 2005-07-28  Peter Ekberg  <peda@lysator.liu.se>
9023         * libltdl/Makefile.am: Make the LTDLOPEN define controllable
9024         from the configure script.
9025         * m4/ltdl.m4 (LTDL_INIT): Set the LTDLOPEN define according
9026         to libname_spec.
9028         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
9029         not time, for really fresh files. Add sleep 1 calls at
9030         strategic places. Makes the test pass for MinGW.
9032         * m4/libtool.m4 (_LT_LINKER_OPTION): Fix copy-paste bug, it is
9033         the linker that is tested.
9035         * tests/demo-noinst-link.test: $make is empty on MSYS, replace
9036         with $MAKE. Makes the test pass for MinGW.
9038         * config/ltmain.m4sh (func_generate_dlsyms): Properly remove
9039         the fake symbol line ": @PROGRAM@ " from the list of exported
9040         symbols.
9042         * libltdl/loaders/loadlibrary.c (vm_open): Set the error mode so
9043         that no dialog is popped up in case the file given to
9044         LoadLibrary is not a dll.
9046         * config/ltmain.m4sh (func_mode_link) <lib>: Make sure
9047         skipped_export is set to colon if _some_ cmd of
9048         export_symbols_cmds is too long.
9050         * libltdl/ltdl.c: The linker is confused by having one
9051         definition of lt_libltdlc_LTX_preloaded_symbols tagged with
9052         __declspec(dllexport) in ltdl.c and one definition with an
9053         initial value in libltdlcS.c. So, just say extern in ltdl.c.
9054         Fixes the mdemo-exec.test for MinGW.
9056         * config/ltmain.m4sh (func_mode_link) <lib>: Zap duplicate
9057         message "creating reloadable object files..."
9059 2005-07-23 Peter O'Gorman  <peter@pogma.com>
9061         * m4/libtool.m4 (CXX, archive_cmds) [sun]: Add -lCstd, -lCrun
9062         and -lc for c++ builds with Sun C++ and Centerline C++..
9063         Reported by Albert Chin-A-Young <china@hewrittenword.com>
9065 2005-07-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9067         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Fix bogus merge.
9068         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
9070 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9072         * libltdl/Makefile.am (libltdl_la_DEPENDENCIES): Depend on
9073         $(BUILT_SOURCES) as well, so that argz.h gets created through
9074         `make libltdlc.la'.
9075         Reported by Sven Verdoolaege <skimo@liacs.nl>.
9077 2005-07-08  Peter Breitenlohner  <peb@mppmu.mpg.de>
9079         * Makefile.am (install-data-local): Have root own of installed
9080         files (but do not fail, for user installs).
9082 2005-07-08  Bruno Haible  <bruno@clisp.org>
9084         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <postinstall_cmds>
9085         [cygwin,mingw,pw32]: Make DLL executable after installing it.
9087 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9089         * config/ltmain.m4sh (func_mode_install): Do not assume `-f'
9090         needs an argument if the install program is `cp'.  Cleanup
9091         install mode somewhat.
9092         Reported by Juergen Leising <juergen.leising@gmx.de>.
9094 2005-07-03  Thorsten Glaser  <tg@66h.42h.de>
9096         * m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Quieten configure
9097         output for corner cases on some BSDs.
9098         (LT_CMD_MAX_LEN): Another comment cleanup.
9100         * config/ltmain.m4sh (func_extract_archives, func_mode_install),
9101         m4/libtool.m4 (_LT_SETUP, _LT_SYS_DYNAMIC_LINKER, LT_PATH_LD)
9102         (_LT_PATH_LD_GNU, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
9103         Comment language, indentation, and backquote cleanup.
9104         * THANKS: Updated.
9106 2005-07-02  Peter O'Gorman  <peter@pogma.com>
9108         * tests/inherited_flags.at: Use -no-undefined.
9109         Reported by Chris Oxenreider <oxenreid@state.net>
9111 2005-07-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9113         * config/ltmain.m4sh (func_mode_compile, func_mode_link),
9114         m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH, _LT_ENABLE_LOCK):
9115         Remove some unnecessary quotes.
9117         * tests/convenience.at <GCJ>: Fix java test.
9118         Reported by Eric Blake <ericblake@comcast.net>.
9120 2005-07-01  Derek R. Price  <derek@ximbiot.com>
9122         * config/ltmain.m4sh (func_mode_link) <shell wrapper>: Handle
9123         spaces in paths to executed programs.  Quote path in error message.
9125 2005-06-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9127         * THANKS: Updated.
9129 2005-06-28  Stepan Kasal  <kasal@ucw.cz>
9131         * clcommit.m4sh: "grep|sed" can be replaced by mere "sed".
9132         * m4/libtool.m4 (_LT_LIBTOOL_TAGS): Remove unnnecessary "[]".
9133         * m4/lt~obsolete.m4: Use m4_ifndef.
9135 2005-06-27  Stepan Kasal  <kasal@ucw.cz>
9137         * m4/ltsugar.m4 (lt_combine, _lt_combine): Fix default separator.
9139         * m4/ltoptions.m4 (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Replace
9140         AC_FOREACH by a combination of m4_foreach/m4_split/m4_normalize.
9142 2005-06-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9144         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Remove unnecessary workaround
9145         for CVS Automake bug (fixed).
9146         Reported by Stepan Kasal <kasal@ucw.cz>.
9148 2005-06-21  Peter O'Gorman  <peter@pogma.com>
9150         * conig/ltmain.m4sh [darwin]: Accept -arch flag.
9152 2005-06-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9154         * m4/libtool.m4 (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
9155         New macros: save warnings and boilerplate of simple compile/link
9156         tests.
9157         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
9158         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Call.
9159         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION, _LT_COMPILER_C_O, ):
9160         Fail only if nonempty warnings different from default
9161         compile/link.
9163 2005-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9165         * m4/ltsugar.m4 (lt_car, lt_cdr): New macros, clones of
9166         m4_car/m4_cdr with the fixed semantics of Autoconf-2.59c CVS, in
9167         order to work with 2.59.
9168         (lt_combine): Use it.
9169         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
9171 2005-06-11  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>,
9172             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9174         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Loop options only if
9175         nonempty.
9176         * m4/ltsugar.m4 (lt_combine): Don't test against empty quotes,
9177         test against empty arg.  Fixes infinite m4 loop with CVS
9178         Autoconf.
9180 2005-06-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9182         * m4/libtool.m4 (_LT_COMPILER_OPTION, _LT_LINKER_OPTION): No
9183         need for $ECHO here.  Fix sed script syntax to be portable.
9184         This should now put the pic-flag right after the last $*FLAGS
9185         variable again, if any.  Necessary for Fortran AC_FC_SRCEXT.
9187 2005-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9189         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Remove long lines.
9191 2005-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9193         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
9194         _LT_LANG_CXX_CONFIG): PGI also has pgf95.  PGI static flag is
9195         `-Bstatic'.  Remove harmless extra comma from whole_archive
9196         output.
9198 2005-06-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9200         * config/ltmain.m4sh (func_mode_compile): In order to find out
9201         about forbidden characters in output, check with grep after
9202         checking func_quote_for_eval result.  Also, warn instead of fail.
9203         * config/general.m4sh (func_quote_for_eval)
9204         (func_quote_for_expand): Revert SunOS sh bug workaround patch from
9205         2004-12-28 as it triggers bugs in the Tru64 5.1B shell.
9206         Reported by Albert Chin <libtool@mlists.thewrittenword.com> and
9207         Nicolas Joly <njoly@pasteur.fr>.
9209 2005-06-01  Olly Betts <olly@survex.com>  (tiny change)
9211         * libltdl/argz.c (argz_create_sep): Fix typo.
9213 2005-05-31  Peter O'Gorman  <peter@pogma.com>
9215         * config/ltmain.m4sh: Do not add installed static litool libraries
9216         to convenience, they are not convenience libraries.
9217         Reported by Chen-Mou Cheng <chenmou.cheng@gmail.com>
9219 2005-05-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9221         * THANKS: Updated.
9223 2005-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9225         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [aix]:
9226         Fix wrong $ECHO use overlooked in 2005-04-27.  Simplify slightly.
9228         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
9229         _LT_LANG_CXX_CONFIG) [linux]: PGI:
9230         Add $pic_flag to archive_cmds and archive_expsyms_cmds.
9231         Bug reported against LAM by Troy Telford <ttelford@lnxi.com>.
9233 2005-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9235         * THANKS: Updated.
9237 2005-05-06  Gary V. Vaughan  <gary@gnu.org>
9239         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Propogate ltdl directory.
9241 2005-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9243         * Makefile.am (stamp-vcl): Use `diff' instead of `cmp'.
9245 2005-04-30  Gary V. Vaughan  <gary@gnu.org>
9247         Revert the parallel installation changes from November last year:
9249         * libtoolize.m4sh (pkgdatadir, aclocaldir): Substituted from
9250         configure.
9251         (func_copy_all_from_path): Removed.  No longer used.
9252         (func_copy_some_files): Simplify now that nothing is copied from a
9253         list of possible directories now.
9254         (func_scan_files): Remove directory readability check...
9255         (func_nonemptydir_p): ...in favour of a dedicated sanity check
9256         function called from the main body.
9257         (_lt_pkgvdatadir): Set pkgdatadir and aclocaldir appropriately if
9258         this is in the environment.
9259         * configure.ac: Tests for `ln' removed.
9260         (APIVERSION): Removed.
9261         * Makefile.am (pkgvdatadir, nobase_dist_pkgvdata_DATA)
9262         (nobase_pkgvdata_DATA): Renamed to...
9263         (pkgdatadir, nobase_dist_pkgdata_DATA, aclocalfiles): ...these
9264         respectively.
9265         (edit): Adjust for new variable names.
9266         (install-data-local): Don't bother to remove old macro files that
9267         will be overwritten by the installation, and perform a manual
9268         installation of $(aclocalfiles) to preserve timestamps.
9269         (install-exec-hook): Removed.  No need to make versioned links.
9270         (uninstall-hook): No need to remove versioned links, but now we
9271         need to manually remove the manually installed $(aclocalfiles).
9272         * doc/libtool.texi: Remove bogus notes about setting
9273         ACLOCAL_AMFLAGS for versioned libtool installations.
9274         * NEWS: Remove parallel installation item.
9276 2005-04-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9278         * m4/ltdl.m4 (all over): Quote all arguments to AC_DEFINE and
9279         AC_DEFINE_UNQUOTED consistently.  Reported by
9280         Michael Koch  <konqueror@gmx.de>, Riccardo Mottola <zuse@libero.it>,
9281         and Dalibor Topic <robilad@kaffe.org>.
9283         * HACKING: Updated.
9285 2005-04-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9287         * tests/convenience.at: Actually add.
9289         * tests/convenience.at: New.  Test convenience archives.
9290         * Makefile.am, tests/testsuite.at: Adjust.
9291         * tests/testsuite.at: Reorder tests.  Suspend AT_TESTED.
9292         (PREPARE_TESTS): Define EGREP, host, build, LIBTOOL.
9293         (LT_AT_BOOTSTRAP): Fail if autoreconf fails.
9294         (LT_AT_EXEC_CHECK): New macro for execution of $build binaries.
9295         (LT_AT_TAG): New macro to test tag availability or skip test.
9296         * tests/am-subdir.at, tests/duplicate_members.at,
9297         tests/inherited_flags.at, tests/link-order.at,
9298         tests/stresstest.at, tests/template.at: Adjust.  Use LT_AT_TAG,
9299         LT_AT_EXEC_CHECK, AT_KEYWORDS. Use compiler/linker flags
9300         consistently.
9301         * tests/link-order.at: Fix use of AT_DATA, bogus redirection
9302         inside AT_CHECK.
9303         * tests/stresstest.at: Do not use wildcards/regex in symbol files,
9304         they are not portable.  Use -no-undefined on win32.  Fix to ignore
9305         compile/link warnings.
9307         * tests/f77demo/foo.h, tests/f77demo/fooc.c,
9308         tests/f77demo/cprogram.c, tests/mdemo2/main.c, tests/pdemo/foo.h:
9309         Make declarations available.
9311         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: sed 3.02 does
9312         not understand \t in regex.
9313         Reported by Tim Van Holder <tim.vanholder@gmail.com>.
9315         * tests/defs.m4sh (func_configure): Don't run the whole configure
9316         script with -x.
9318         * config/ltmain.m4sh: Audit use of echo vs $ECHO.
9319         Reported by Robert Ögren <lists@roboros.com> and others.
9321         * TODO: Updated.
9323 2005-04-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
9324             Gary V. Vaughan  <gary@gnu.org>
9326         * HACKING, THANKS: Updated.
9328 2005-04-25  David Edelsohn  <dje@watson.ibm.com>
9330         * m4/libtool.m4 (_LT_LINKER_SHLIBS): _LT_TAGDECL(file_list_spec).
9331         * config/ltmain.m4sh (func_mode_link): Change $filelist to
9332         $output.
9334 2005-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9336         * m4/libtool.m4 (_LT_CC_BASENAME): Ignore `compile'.
9338 2005-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9340         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [solaris]:
9341         Update wl for Sun Studio f77/f90/f95.  Fix whole_archive_flag_spec
9342         for cc and f77/f90/f95 to prevent reordering in case we link with
9343         $CC.
9345         * m4/libtool.m4: Audit use of echo vs $ECHO.
9346         * TODO: Update.
9347         Reported by Robert Ögren <lists@roboros.com> and others.
9349 2005-04-23  Gary Kumfert <kumfert@llnl.gov>
9351         * m4/libtool.m4 (_LT_LANG_F77_CONFIG) [aix4, aix5]:
9352         Adjust logic to match the C case: Only disable static if not
9353         on ia64 nor runtimelinking.
9355 2005-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
9357         * Makefile.am, HACKING: Use lt__cd throughout.
9359 2005-04-22  Gary V. Vaughan  <gary@gnu.org>
9361         The FSF are moving offices today.  Changed their contact address
9362         in all files from `59 Temple Place, Suite 330, MA 02111-1307' to
9363         `51 Franklin Street, Fifth Floor, MA 02110-1301'.
9365 2005-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9367         * libtoolize.m4sh (func_scan_files, func_serial,
9368         func_ltmain_update, func_config_update, func_install_update):
9369         Placate AIX sed.
9371 2005-04-19  David Edelsohn  <dje@watson.ibm.com>
9373         * config/ltmain.m4sh (func_mode_link): If command exceeds
9374         max_cmd_len and file_list_spec exists, write list of input files
9375         to temporary file.
9376         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
9377         [aix4,aix5]: Define file_list_spec.
9379 2005-04-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9381         * tests/demo-hardcode.test: Fix typo.
9383 2005-04-17 Alexandre Oliva  <aoliva@redhat.com>,
9384            Peter O'Gorman  <peter@pogma.com>
9386         * config/ltmain.m4sh: Don't add files with the same base name to
9387         an archive; rename duplicates instead.
9388         (func_extract_an_archive): Remove section to deal with duplicate
9389         base names in an archive.
9390         * tests/functests.at: remove.
9391         * tests/duplicate_members.at: new test.
9392         * tests/testsuite.at: Add new test, remove old.
9393         * Makefile.am: Add new test, remove old.
9395 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9397         * tests/demo-hardcode.test [solaris]:  Use dumpstabs if available,
9398         to avoid false failure caused by debug section which contains
9399         command line (Solaris cc).
9400         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
9402 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
9404         * libtoolize.m4sh (func_copy_cb): Fix syntax typo.
9406 2005-04-15  Maciej W. Rozycki  <macro@linux-mips.org>
9408         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Add old_archive_cmds
9409         definition.
9411 2005-04-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9413         * m4/libtool.m4 (_LT_CC_BASENAME): New macro to figure out
9414         $cc_basename.  Skip ccache, distcc, purify, cmdline options,
9415         `$host_alias-' prefix.
9416         (_LT_SETUP, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
9417         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Use.
9418         * NEWS, TODO: Update.
9420 2005-04-15  Gary V. Vaughan  <gary@gnu.org>
9422         * libltdl/configure.ac (AC_OUTPUT): loaders/Makefile is no longer
9423         used.
9425         * Makefile.am (lt__cd, CD_TESTDIR): New make macros to work around
9426         problems with CDPATH in some shells.
9427         (check-local, installcheck-local, clean-local): Use them.
9429 2005-04-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
9431         * bootstrap: Define srcdir for making `commit'.
9433 2005-04-14  Alexandre Oliva  <aoliva@redhat.com>,
9434             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9436         * config/ltmain.m4sh (link mode): Add to tmp_libs paths for
9437         libtool dep libs in reverse order as well.
9438         * Makefile.am, tests/testsuite.at, tests/link-order.at: New test.
9440 2005-04-13  Gary V. Vaughan  <gary@gnu.org>
9442         Since the bootstrap process requires that several of the rules for
9443         files generated in doc and tests already lived in
9444         $top_srcdir/Makefile.am, along with proxy rules in sub-Makefiles,
9445         this changeset consolidates almost everything into the top
9446         Makefile.am, simplifying things considerably:
9448         * doc/Makefile.am, tests/Makefile.am: Removed.  All rules moved...
9449         * Makefile.am: ...to here and adjusted to run from $top_builddir.
9450         Some reformatting to group rules and declarations by purpose, and
9451         simplify with respect to removing much of the make recursion.
9452         Add `doc/PLATFORMS', `doc/fdl.texi' and `doc/notes.texi'.
9453         `defs.in' and `defs.m4sh' are in directory `tests'.
9454         (uninstall-hook): Don't forget to uninstall libtoolize's libltdl
9455         source tree.
9456         * bootstrap: Simplified dirty makefile management, and bootstrap
9457         file creation in light of having only a single pertinent
9458         Makefile.
9459         * configure.ac (CONF_SUBDIRS): Add tests/ prefix to each subdir to
9460         compensate.
9461         (DIST_MAKEFILE_LIST): Adjust.
9462         (AC_CONFIG_FILES): Remove doc/Makefile and tests/Makefile.
9463         * tests/defs.m4sh (LIBTOOL, scripts): Adjust paths.
9464         * tests/cdemo-conf.test, tests/cdemo-exec.test,
9465         tests/cdemo-make.test, tests/cdemo-shared.test,
9466         tests/cdemo-static.test, tests/cdemo-undef.test,
9467         tests/demo-conf.test, tests/demo-deplibs.test,
9468         tests/demo-exec.test, tests/demo-hardcode.test,
9469         tests/demo-inst.test, tests/demo-make.test,
9470         tests/demo-nofast.test, tests/demo-noinst-link.test,
9471         tests/demo-nopic.test, tests/demo-pic.test,
9472         tests/demo-relink.test, tests/demo-shared.test,
9473         tests/demo-static.test, tests/demo-unst.test,
9474         tests/depdemo-conf.test, tests/depdemo-exec.test,
9475         tests/depdemo-inst.test, tests/depdemo-make.test,
9476         tests/depdemo-nofast.test, tests/depdemo-relink.test,
9477         tests/depdemo-shared.test, tests/depdemo-static.test,
9478         tests/depdemo-unst.test, tests/f77demo-conf.test,
9479         tests/f77demo-exec.test, tests/f77demo-make.test,
9480         tests/f77demo-shared.test, tests/f77demo-static.test,
9481         tests/link-2.test, tests/link.test, tests/mdemo-conf.test,
9482         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
9483         tests/mdemo-inst.test, tests/mdemo-make.test,
9484         tests/mdemo-shared.test, tests/mdemo-static.test,
9485         tests/mdemo-unst.test, tests/mdemo2-conf.test,
9486         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
9487         tests/objectlist.test, tests/pdemo-conf.test,
9488         tests/pdemo-exec.test, tests/pdemo-inst.test,
9489         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
9490         tests/suffix.test, tests/tagdemo-conf.test,
9491         tests/tagdemo-exec.test, tests/tagdemo-make.test,
9492         tests/tagdemo-shared.test, tests/tagdemo-static.test,
9493         tests/tagdemo-undef.test, tests/tagtrace.test (func_cd,
9494         func_require): Adjust paths.
9496 2005-04-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9498         * config/general.m4sh, libtool.m4 (_LT_SETUP), tests/defs.m4sh,
9499         tests/functests.at: Fix definition of $Xsed.
9501 2005-04-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9503         Improved Portland support: prelinking of C++ templates and
9504         whole_archive.
9506         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [linux]:
9507         Reinstate formatted whole_archive_flag_spec for PGI compilers.
9508         * config/ltmain.m4sh (func_mode_link), m4/libtool.m4
9509         (_LT_LINKER_SHLIBS): New tag prelink_cmds, to be executed before
9510         linking a program.
9511         (_LT_LANG_CXX_CONFIG) [linux]: Use for pgCC.
9512         (_LT_COMPILER_C_O): conftest might be nonempty, clean up more
9513         thoroughly.
9515         * tests/testsuite.at (LT_AT_BOOTSTRAP): Temporary fix for testing
9516         in-tree libtoolize.
9518         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Only call sed if
9519         necessary while quoting all libtool variables.
9520         Reported by Robert Ögren <lists@roboros.com>.
9522 2005-04-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9524         * tests/Makefile.am: Typo.
9526 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9528         * notes.texi: Platform-specific configuration notes.
9529         * doc/libtool.texi: Include as section.
9530         * bootstrap, doc/Makefile.am: build also as notes.txt and
9531         distribute.
9533 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
9535         Under certain circumstances, not all of the macro files were
9536         copied into the destination directory.  This changeset fixes
9537         that bug:
9539         * libtoolize.m4sh (func_serial_update):  Renamed local variable
9540         `my_update_p' to `my_serial_update_p', and initialise it correctly
9541         even when the destination file is not yet there.
9542         Reported by Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9544 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
9546         * tests/libtoolize.at: New tests for basic libtoolize
9547         functionality and reporting.
9548         * tests/testsuite.at: Call them.
9549         * tests/Makefile.am: Distribute them.
9551         * libtoolize.m4sh (pkgvdatadir): Renamed from this...
9552         (_lt_pkgvdatadir): ...to this.
9553         * tests/testsuite.at (LT_AT_LIBTOOLIZE): The `-I' option is no
9554         longer supported by libtoolize.  Set _lt_pkgvdatadir in the
9555         environment of the invocation instead.
9557 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9559         * tests/template.at: New Autotest tests for C++ with templates.
9560         First test provided by
9561         Markus Christen <markus@igc.phys.chem.ethz.ch>.
9562         * tests/Makefile.am, tests/testsuite.at: Use and distribute.
9564 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
9566         * libtoolize.m4sh (func_serial_update): Replace missing
9567         destination serial calculation line, presumably lost due to a bad
9568         merge.
9570         * libltdl/loaders/Makefile.am: Removed actually.
9572 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
9574         Getting the value of ltdldatafiles from a submake was not
9575         portable, and had problems with GNU make-3.80 at least.  This
9576         changeset pulls the installation rules for libtoolize's copy of
9577         the libltdl sources out of libltdl/Makefile.am so that
9578         ltdldatafiles is defined in the same Makefile that uses it.  Also,
9579         this makes a start at cleaning up libltdl/Makefile.am so that it
9580         is useful in a package that uses `libtoolize --ltdl':
9582         * libltdl/loaders/Makefile.am: Removed entirely.
9583         * libltdl/Makefile.am (dlopen.la, dld_link.la, dyld.la)
9584         (load_add_on.la, loadlibrary.la, shl_load.la): All built from here
9585         now that the loaders submake has gone.
9586         (show-ltdldatafiles): Removed.  No longer required.
9587         (ltdldatadir, ltdldatafiles, install-local): Moved from here...
9588         * Makefile.am (ltdldatadir, ltdldatafiles, install-local): ..to
9589         here.
9590         (libtoolize): Substitute $(ltdldatafiles) directly without calling
9591         make to get the value from libltdl/Makefile.
9593 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
9595         * Makefile.am (libtoolize): Substitute $(nobase_pkgvdata_DATA).
9596         pkgvmacro_DATA is no longer set in the makefile.
9597         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): Use it and, for
9598         consistency, renamed from this...
9599         (func_massage_nobase_pkgvdata_DATA): ...to this.  Adjust all
9600         callers.
9602 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
9604         Fix problems with serial comparison sed scripts, and factor out
9605         common code from similar serial comparison functions:
9607         * libtoolize.m4sh (func_keyword_update): Common code factored out
9608         of func_ltmain_update and func_config_update.
9609         (func_ltmain_update, func_config_update): Adjust, and fix sed
9610         expressions to not use unportable ? modifier.
9611         (func_install_update): New serial number based file updater keyed
9612         off 'scriptversion' variable in install-sh.  Adjust all callers.
9614 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
9616         Most of the hair introduced ostensibly to enable testing of
9617         uninstalled libtoolize isn't necessary if we allow overriding of
9618         the libtool master copy directory:
9620         * configure.ac (pkvmacrodir): No need to substitute this.
9621         * Makefile.am (edit): No need to substitute pkgvmacrodir.
9622         (dist_pkgvdata_DATA): Use nobase_ prefix so that these files are
9623         installed to $(pkgvdatadir)/config.
9624         (pkgvmacro_DATA): Renamed to...
9625         (nobase_pkgvdata_DATA): ...this, so that files are installed to
9626         $(pkgvdatadir)/m4.
9627         (install-data-hook): Adjust.
9628         * libtoolize.m4sh: Remove -I processing.
9629         (func_filename_path_search): No longer required without -I.
9630         Adjust all callers.
9631         (pkgvltdldirs, pkgvmacrodirs): Deleted.
9632         (pkgvdatadir): Allow overriding from the environment so that we
9633         can write tests for uninstalled libtoolize.
9634         (func_serial_update, func_ltmain_update, func_config_update):
9635         Rename srcdirs parameter to srcdir, and don't call the path_search
9636         function anymore.  Adjust all callers.
9637         (--install): Don't blindly copy all config files.
9639 2005-04-01  Mike Stump  <mrs@apple.com>
9641         * m4/libtool.m4 (LT_CMD_MAX_LEN) [netbsd, freebsd, openbsd
9642         darwin, dragonfly]: Use 3/4 of argmax, instead of 1/4.
9644 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9646         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG):
9647         Set $cc_basename.
9649         * HACKING: echo vs $ECHO.
9651 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
9653         * doc/libtool.texi: Minor formatting cleanups.
9655 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
9657         * libtoolize.m4sh: Propogate --debug flag to sub-libtoolizes.
9659         * libtoolize.m4sh: Fix a typo, s/pkgvltdldirs/pkgvdatadirs/.
9660         When using -I to test an uninstalled libtoolize, we need to add
9661         the config subdirectory to the search path so that ltmain.sh can
9662         be found in the source tree.
9664         * libtoolize.m4sh (func_copy_some_files): IFS needs to be set to
9665         path delimiter for all inner loop iterations.
9666         Once a matching file has been copied, no need to keep searching
9667         the path for another -- move on to the next file!
9669         * libtoolize.m4sh: For verbose mode, explain why macro files are
9670         not installed without an AC_CONFIG_MACRO_DIR declaration.
9672 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
9674         As a prerequisite for being able to test an uninstalled libtoolize
9675         for copying files correctly from the source tree, we must know
9676         exactly which files should be copied by the --ltdl option to avoid
9677         accidentally picking up compilation objects and other noise when
9678         $builddir == $srcdir:
9680         * libltdl/loaders/Makefile.am (ltdldatadir, ltdldatafiles)
9681         (install-data-local): Removed...
9682         * libltdl/Makefile.am (ltdldatafiles): ...and consolidated here.
9683         (show-ltdldatafiles): New rule...
9684         * Makefile.am (ltdldatafiles, libtoolize): ...used to substitute
9685         exactly which files are installed by libtoolize --ltdl.
9686         (edit): Move pkgvmacro_DATA substitution expression...
9687         (libtoolize): ...to here.
9688         * libtoolize.m4sh: Use func_copy_some_files() instead of
9689         func_copy_all_from_path() to copy the --ltdl option installed
9690         files.
9691         (pkgvltdldirs): New path variable to search for files installed by
9692         --ltdl option.
9693         (func_massage_pkgvltdl_files): New function to calculate the list
9694         of ltdl installation files.
9696 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
9698         * m4/libtool.m4, m4/ltdl.m4: Indentation and quoting cleanup.
9700 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9702         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Use ${wlarc}
9703         and set to empty when using $LD for linking.  Fixes regression
9704         introduced in 2004-11-17.
9705         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> and
9706         Пухальский Юрий Андреевич <pooh@cryptopro.ru>.
9708 2005-03-21  Gary V. Vaughan  <gary@gnu.org>,
9709             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9711         * m4/libtool.m4 (_LT_SETUP, _LT_LANG_CXX_CONFIG)
9712         (_LT_LANG_F77_CONFIG): For matching compiler names -- Pick only
9713         first word, allow leading white space.
9714         * tests/sh.test: ..and test for missing `*' at end of patterns.
9716 2005-03-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9718         * TODO: Update.
9720 2005-03-20  Peter Ekberg  <peda@lysator.liu.se>
9722         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix5, irix6, nonstopux]:
9723         Test if it is possible to use the -exports_file linker option on
9724         irix with gcc, as the gcc specs file may include a -hidden_symbol
9725         option that is clashing with the -exports_file option.
9726         See this gcc bugzilla entry for further details:
9727         http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15288
9728         * THANKS: Update.
9730 2005-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9732         * tests/demo-nopic.test: Enhance status output
9733         noted by Tom Burger <tvburger@few.vu.nl>.
9735 2005-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9737         * config/ltmain.m4sh, tests/defs.m4sh: Typos.
9739 2005-03-18  Peter O'Gorman  <peter@pogma.com>,
9740             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9742         * m4/libtool.m4: The compiler can be a program name with args, so
9743         always check cc_basename against compiler name and a wildcard.
9744         Also, drop unnecessary quotes in `case' argument.
9746 2005-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9748         * Makefile.am: tests/defs.in depends on config/general.m4sh.
9750         * config/general.m4sh: unconditionally set IFS, and set it
9751         to the one true right sequence: space, tab, newline.
9752         * m4/libtool.m4: remove IFS setting and as_* namespace
9753         infringement.
9755         * m4/libtool.m4 (_LT_CONFIG): Reset IFS to fix failure with ash.
9757         * configure.ac, libltdl/configure.ac: s/##/dnl/ for comments
9758         that are meaningless in configure.
9759         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
9761 2005-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9763         * libltdl/configure.ac: Update version; require Autoconf >= 2.59.
9765         * bootstrap: Allow to override tools.
9767 2005-03-15  Gary V. Vaughan  <gary@gnu.org>
9769         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): New function
9770         to calculate the macro filenames to be copied by libtoolize.
9771         * Makefile.am (edit): Substitute pkgvmacro_DATA.
9773         * bootstrap: Need to generate tests/package.m4 from Makefile.am
9774         before generating tests/testsuite from tests/Makefile.am, or
9775         else bootstrap of a fresh checkout fails.
9777 2005-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9779         * m4/libtool.m4 (_LT_COPYING): Update Copyright year.
9781         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]: Remove MAIN_
9782         dependency when creating shared libraries with Portland pgf77.
9784 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9786         * configure.ac: stamp-vcl is in $top_srcdir, not $top_builddir.
9788 2005-03-12  Per Bothner <per@bothner.com>,
9789             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9791         Allow special characters in source file names.  Will break unless
9792         `-o target' is also given, which must not contain special
9793         characters. En passant, fix source file quoting broken for
9794         cygwin/MSVC:
9796         * config/ltmain.m4sh (func_mode_compile): Use new variable
9797         qsrcfile for quoted source file name for compile $command.  Fix
9798         missing quotes for _c_o lockfile.
9799         * NEWS: Update.
9801 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9803         * config/ltmain.m4sh (func_mode_link): Reword double negation in
9804         error message.
9805         Reported by Jesper Louis Andersen <jlouis@mongers.org>.
9807         * bootstrap: really remove bogus files Makefile tests/Makefile.
9809         * doc/libtool.texi: Replace wicked whiches by thats or other
9810         better-sounding constructs.
9812 2005-03-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
9814         * tests/Makefile (clean-local): Ignore testsuite cleanup
9815         failures.
9817 2005-03-11  Per Bothner  <per@bothner.com>  (tiny change)
9819         * tests/Makefile (clean-local): Only run the testsuite cleanup
9820         if the testsuite has been generated.
9822 2005-03-10  Gary V. Vaughan  <gary@gnu.org>
9824         * libltdl/Makefile.am (install-data-local): Don't force v7 tar
9825         format with the `o' flag in create mode.
9826         Set the umask to 0 when untarring to avoid copied files taking
9827         their mode from the installer's umask.
9828         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
9829         * libtoolize.m4sh (func_copy_cb): Ditto.
9830         Ignore errors from failed `cd' in the tar processes, since we
9831         may be running in dryrun mode.
9832         Reported by Noah Misch <noah@cs.caltech.edu>,
9833                     Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
9835 2005-03-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9837         * libltdl/Makefile.am: $(builddir) is not defined, replace by
9838         `.'.
9840 2005-03-08  Albert Chin-A-Young  <china@thewrittenword.com>
9842         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
9843         [irix*, osf*]: Output -update_registry information to
9844         ${output_objdir} directory, not ${objdir}. ${output_objdir}
9845         will work when a project has a single Makefile and performs
9846         builds in subdirectories. ${objdir} expects the source in
9847         the current directory, breaking single-Makefile builds.
9849 2005-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9851         * tests/stresstest.at: Remove multiple variable definition.
9853         * TODO: Update.
9855         * THANKS: Update.
9857 2005-03-02  Gary V. Vaughan  <gary@gnu.org>
9859         * libtoolize.m4sh (func_copy_cb): Use tar chof to avoid symlink
9860         attacks.
9861         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
9862         (install-data-local): Ditto.
9864 2005-02-27  Gary V. Vaughan  <gary@gnu.org>
9866         In branch-2-0 (and in time, others) ltversion.m4 has a dot
9867         delimited serial number that didn't used to be processed
9868         correctly by libtoolize.  This changeset fixes that, and
9869         leverages those changes to check versions of ltmain.sh and
9870         config.sub, config.guess before overwriting when --force is
9871         not given:
9873         * libtoolize.m4sh: Don't overwrite pkgaux files with --force
9874         unless --install is given too.
9875         (func_serial): Fix underquoting in regexp.
9876         (func_serial_max): New function to compare serial numbers.
9877         (func_serial_update_check): New function factored out of
9878         func_serial_update().
9879         (func_serial_update): Bail if SRCFILE is missing.
9880         Don't display both 'already up to date' and 'use --force to
9881         update' messages for the same file.
9882         Use func_serial_max to cope with `.' delimited serial numbers.
9883         (func_ltmain_update): Use func_serial_update_check and
9884         func_serial_max to do version checking with $package_revision.
9885         (func_config_update): Ditto with $timestamp.
9887 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
9889         * libltdl/Makefile.am (install-data-local):  cd to $(srcdir)
9890         before tarring up the files for installation to
9891         $(DESTDIR)$(ltdldatadir).  Don't remove the destination directory,
9892         since that interacts badly with the multi-Makefile installation.
9893         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
9895 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
9897         I assume that it is okay to have undefined symbols in convenience
9898         libraries that will be used as modules -- the pic objects are
9899         built normally, and are not expected to resolve all their symbols
9900         until they are linked into a library; convenience libraries are
9901         then rolled using 'ar' and 'ranlib' (or equivalent) which also do
9902         not check whether symbols are resolved.  We now build each of the
9903         loaders as a convenience library module under these assumptions,
9904         and link libltdl.la with selected modules, at which time all of
9905         the symbols *are* resolved:
9907         * TODO: Remove item addressed by this changeset.
9908         * libltdl/Makefile.am (lib_LTLIBRARIES): Remove libdlloader.la.
9909         (libdlloader_la_SOURCES): Declaration removed.  Changed all
9910         clients.  Source files..
9911         (libltdl_la_SOURCES): ...added back in here.
9912         (libdlloader_LDFLAGS, libdlloader_la_LIBADD): Removed.
9913         (libltdl_la_LIBADD): Remove libdlloader.la; add $(LTLIBOBJS).
9914         * libltdl/loaders/Makefile.am: Removed all references to
9915         libdlloader.la.
9917 2005-02-25  Gary V. Vaughan  <gary@gnu.org>
9919         * libtoolize.m4sh (func_copy): Split arguments to func_copy_cb
9920         calls across lines so that quote.test doesn't misdiagnose nested
9921         quotes.
9923         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC):
9924         Fix some typos -- s/_LT_AC_TAGVAR/_LT_TAGVAR/g.
9926 2005-02-24  Peter O'Gorman  <peter@pogma.com>
9928         * m4/libtool.m4 (_LT_LINKER_SHLIBS): The Portland group's
9929         compiler does not pass --whole-archive. Move gnu ld check for
9930         the flag to the top so it can be overridden.
9931         (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC): Unset
9932         whole_archive_flag_spec for the portland group's c++ compiler
9933         too.
9934         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
9936 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
9938         * libltdl/Makefile.am (install-data-local): Don't forget about
9939         $(DESTDIR).
9940         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
9942 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
9944         Preserving the installed timestamps for libltdl sources from
9945         `libtoolize --ltdl --copy' is pointless if they are not preserved
9946         from the libtool source tree at install time:
9948         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
9949         (nobase_ltdldata_DATA): Renamed to...
9950         (ltdldatafiles): ...this.
9951         (install-data-local): New rule to install libltdl tree with tar to
9952         preserve timestamps.
9954 2005-02-23  Christoph Egger  <Christoph_Egger@gmx.de> (tiny change)
9956         * config/ltmain.m4sh (func_mode_link): Add -pthread like flags to
9957         inherited_linker_flags.
9959 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
9961         * libtoolize.m4sh (func_copy_cb): self.leg->shoot_off() :-/
9962         Let's not redirect stdout to null when sending tar output to a
9963         pipe.
9965 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
9967         Using `libtoolize --copy --ltdl' was not preserving timestamps, so
9968         parts of the autoconf bootstrap would be rerun spuriously after
9969         the files had been copied into the source tree:
9971         * libtoolize.m4sh (TAR): New default tar command.
9972         (func_copy_cb): Move the core copying internals to here, using
9973         $TAR to transfer files if possible when --copy was specified.
9974         (func_copy): Adjust to call func_copy_cb.
9975         * TODO: Remember to refactor this fix in due course.
9976         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
9978 2005-02-21  Peter O'Gorman  <peter@pogma.com>
9980         * config/ltmain.m4sh (func_extract_archives) [darwin]: This didn't
9981         actually work on a real fat archive, should do now.
9982         * tests/functests.at [darwin]: remove darwin fat tests which
9983         did not actually work.
9985 2005-02-07  Peter O'Gorman  <peter@pogma.com>
9987         * config/ltmain.m4sh: Add -pthread like flags when linking
9988         executables too.
9989         Reported by Andreas Schwab <schwab@suse.de>
9991 2005-02-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9993         * config/ltmain.m4sh (func_mode_link): Allow five digits in
9994         version-info.
9996         * NEWS: s/Linux/GNU &/.
9998 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10000         * tests/Makefile.am, tests/testsuite.at, tests/stresstest.at:
10001         New test.  Stresses several combinations of link flags and
10002         path specifications.  Uses several data types to test linkage
10003         against symbols in all kinds of (e.g., ELF) sections.
10005 2005-02-03  Reid Spencer  <reid@x10sys.com>,
10006             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10008         * config/ltmain.m4sh (func_generate_dlsyms): Fix broken subdir
10009         path computation, exposed by using `-dlopen self'.  Fix broken
10010         sed script exposed by additionally using `-export-symbols FILE'.
10012 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10014         * THANKS: Update.
10016         * THANKS: Update.
10018 2005-02-03  Peter O'Gorman  <peter@pogma.com>
10020         * config/ltmain.m4sh [darwin]: Don't add installed libs to
10021         temp_rpath when building executables on darwin, or other systems
10022         which use hardcode_automatic. It may break our wrapper scripts.
10024 2005-02-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10026         * config/getopt.m4sh (func_version, func_usage, func_help):
10027         Exit with nonzero status on write failures.
10028         * config/ltmain.m4sh (func_mode_help, func_config, func_features):
10029         Ditto.
10031         * tests/sh.test: Check for preferred function definition layout.
10033 2005-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10035         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
10036         [pw32, freebsd3.[01], freebsdelf3.[01]]:  Fix [] quoting.  Should
10037         fix various spurious failures.
10038         (_LT_LINKER_SHLIBS) [linux with GNU ld < 2.11, aix4.[012]*]:
10039         Ditto.
10040         (_LT_LANG_CXX_CONFIG) [aix4.[012]*, freebsd[12], solaris2.[0-5]]:
10041         Ditto.
10042         (_LT_LANG_GCJ_CONFIG): Ditto.
10044         * tests/Makefile.am: Add `atconfig' to DISTCLEANFILES.
10046         * clcommit.m4sh: Test whether the shell understands `read -r'.
10047         Use as `$read_r' if available, so `\' is preserved in commit
10048         notices.
10050         * HACKING (Editing `.m4sh' Files): Document preferred function
10051         header layout.
10052         * config/ltmain.m4sh (func_win32_libid, func_infer_tag)
10053         (func_generate_dlsyms, func_extract_an_archive)
10054         (func_extract_archives): Adjust to fit.
10056 2005-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10058         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unicos 9 sed rejects
10059         empty parentheses as in 's/x\(\)/\1/'.
10060         (_LT_COMPILER_PIC) [unicos*]: wl=-Wl,.
10061         * tests/sh.test: Not all sed's like '/.*\n.*/' (Unicos 9 sed
10062         loops endlessly).
10064         * tests/quote.test: Match link  quoting against `"$wl"', not
10065         `-Wl,'.
10067         * tests/quote.test: Check for `--no-reexec' in $1 to avoid one
10068         reexec.
10070         * m4/libtool.m4 (_LT_COMPILER_C_O): _LT_TAGDECL(lt_compiler_c_o),
10071         not _LT_DECL, since this is tag-dependent.
10073         * config/ltmain.m4sh, m4/libtool.m4: Change `( cmd ) 2>/dev/null'
10074         to  `{ cmd; } 2>/dev/null', when cmd has no side effects and might
10075         be a builtin.  Note that it is unspecified whether cmd will run
10076         within a subshell (e.g. Bourne shells) or within the current shell
10077         (most modern shells).
10079 2005-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10081         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [linux]:
10082         Update for Intel Compiler icc/icpc/ifort: add -i_dynamic and
10083         -nofor_main, if necessary.  Simplify logic somewhat.
10085 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10087         * tests/Makefile.am: also re-export CPP, CXXCPP, and the value of
10088         SHELL as CONFIG_SHELL.
10089         Reported by Heinz Salzmann <heinz.salzmann@micronas.com>.
10091 2005-01-26  Craig Dooley  <xlnxminusx@gmail.com>,
10092             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10094         * NEWS, m4/libtool.m4, config/ltmain.m4sh [dragonfly]:
10095         Add support for DragonFly.
10097 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10099         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Work around pdksh
10100         positional parameter expansion bug.
10102 2005-01-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10104         * config/ltmain.m4sh: Fix endless loop in cmdline parsing.
10106 2005-01-25  Albert Chin-A-Young  <china@thewrittenword.com>
10108         * config/ltmain.m4sh (func_mode_link) [irix]: Preserve processor
10109         option for SGI Compiler (-r[0-9][0-9]*).
10111 2005-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10113         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Define Bourne and XSI
10114         variants of new function func_stripname for stripping literal
10115         prefixes and suffixes.
10116         * config/ltmain.m4sh (all over): Use func_stripname.
10118         * tests/defs.m4sh: Extract $build from $LIBTOOL.
10119         (func_configure): Pass --host if $host != $build.
10120         (func_exec): Try executing cross-compiled binaries (e.g. i686 ->
10121         i386), but SKIP rather than FAIL.
10122         * tests/depdemo-relink.test: Do not try to access possibly non-
10123         existent files.  SKIP rather than FAIL or PASS falsely when
10124         cross-compiling.
10126         * m4/libtool.m4 (_LT_SETUP) [mingw, cygwin, pw32, os2]:
10127         Add _LT_DECLs for host_os, build_alias, build and build_os.
10128         host_os and build were used in a few occasions in ltmain.m4sh
10129         and affect above-mentioned systems, the others are added for
10130         symmetry and in order to be able to detect cross-compiling.
10132 2005-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10134         * libltdl/Makefile.am: Add $(AM_LDFLAGS) to all per-target
10135         variables *_LDFLAGS as per CVS Automake semantic change.
10137 2005-01-16  Peter O'Gorman  <peter@pogma.com>
10139         * config/ltmain.m4sh (func_mode_link): Don't pass through
10140         compiler-like thread flags when using $LD to do the linking.
10141         Use compiler_flags instead.
10142         Reported by Mark_Andrews@isc.org.
10144         * m4/libtool.m4 (LT_CMD_MAX_LEN) [osf]: On Tru64 there could
10145         be a kernel panic when testing the maximum command line length
10146         if exec_disable_arg_limit=1. Don't do the tests to figure it
10147         out on *-osf*.
10148         Reported by Dr. Hans Ekkehard Plesser
10149         <hans.ekkehard.plesser@umb.no>
10151 2005-01-14  Guido Draheim  <guidod-2003-@gmx.de>  (tiny change)
10153         * m4/libtool.m4 (AC_PROG_SED): Don't break test loop early.
10155 2005-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10157         * TODO: Update.
10159         * libltdl/ltdl.c: Whitespace cleanup.
10161         * config/ltmain.m4sh: New option `--verbose'/`-v' to enable
10162         override of `--silent'.  Verbose is the default behavior.
10163         * doc/libtool.texi (Invoking libtool): Document it.
10165         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: While "parsing"
10166         /etc/ld.so.conf, skip comments.
10167         Reported by Jens Elkner <elkner@linofee.org>.
10169 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10171         * libltdl/libltdl/lt__glibc.h: Move all exported slist
10172         symbols into the lt__* namespace.
10173         * libltdl/libltdl/lt__private.h, libltdl/libltdl/slist.h:
10174         Adjust includes.
10176 2005-01-10  Peter O'Gorman  <peter@pogma.com>
10178         * config/ltmain.m4sh (func_mode_link): Fix
10179         inherited_linker_flags so it puts it on the link line when
10180         linking shared libraries as well as when linking executables.
10181         * tests/inherited_flags.at: test inherited_linker_flags.
10182         * tests/Makefile.am: Add test.
10183         * tests/testsuite.at: Add test.
10184         Reported by: Albert Chin-A-Young <china@thewrittenword.com>
10186 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10188         * tests/sh.test: After `set dummy [...]', check for `shift'
10189         within the same and following line.
10190         * config/ltmain.m4sh (func_enable_tag, func_mode_install)
10191         (func_mode_link): Sprinkle `shift's all over to conform to this.
10193 2005-01-09  Gary V. Vaughan  <gary@gnu.org>
10195         * HACKING (Editing 'ChangeLog'): Follow the GCS with respect to
10196         attributions, and mention how to handle tiny changes.
10197         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
10199         * ChangeLog.2004: Trim 2005 entries.
10200         * ChangeLog: Add missing entries.
10202 2005-01-08  Gary V. Vaughan  <gary@gnu.org>
10204         * ChangeLog: Move 2004 change logs from here...
10205         * ChangeLog.2004: ...to here.
10207         * m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
10208         m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4: RMS says,
10209         'I think the [license of autoconf macro files] should be:
10210         # This file is free software; the Free Software Foundation
10211         # gives unlimited permission to copy and/or distribute it,
10212         # with or without modifications, as long as this notice is
10213         # preserved.'.
10215         * ChangeLog: Reformatting.
10216         * HACKING: Fix section numbering.
10217         (Editing 'ChangeLog'): New notes on ChangeLog entry format.
10219 2005-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10221         * tests/am-subdir.at tests/testsuite.at (AT_BOOTSTRAP,
10222         AT_LIBTOOLIZE, AT_CHECK_LIBTOOLIZE): Rename to ...
10223         (LT_AT_BOOTSTRAP, LT_AT_LIBTOOLIZE, LT_AT_CHECK_LIBTOOLIZE):
10224         ...and make use of new names.
10226 2004-12-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10228         * config/getopt.m4sh (func_version, func_usage, func_help):
10229         Use `$SED -n' instead of `$SED RANGE {..}; d' as AIX sed cannot
10230         handle the latter.
10231         (func_help): start autoconf and automake in subshells to avoid
10232         error messages from ash or Bourne shell if not available.
10234 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10236         * config/general.m4sh (func_quote_for_eval): Move backslash to
10237         beginning of character class, to work around old Bash bug.
10238         (func_quote_for_expand): Also test to avoid unnecessary fork.
10240 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
10241             Gary V. Vaughan <gary@gnu.org>
10243         * Makefile.am, bootstrap, clcommit.m4sh, libtoolize.m4sh,
10244         config/ltmain.m4sh: Replace `set --' with `set dummy [...]; shift'
10245         for portability.
10246         * tests/sh.test: Test for this.
10248 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10250         * libtoolize.m4sh, config/ltmain.m4sh (most functions): New
10251         variable $opt_debug is either `:' or `set -x' depending on
10252         --debug.  Execute at most function entries to cater for ksh which
10253         resets `-x'.
10254         * tests/defs.m4sh: Ditto for VERBOSE=debug.
10256         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
10257         _LT_TAGVAR missing for `fix_srcfile_path'.
10258         [sysv4, sysv5]: _LT_TAGVAR missing for
10259         `export_dynamic_flag_spec'.
10261         * doc/libtool.texi (all over): Use @option and @command.
10262         Some more minor formatting updates, typos.
10264         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix variable quoting;
10265         allows lt_ECHO to match --fallback-echo again.
10267         * config/ltmain.m4sh (func_extract_archives): Not all shells grok
10268         `read -r' (unnecessary in this case).
10269         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
10271         * config/general.m4sh: New variable quote_scanset...
10272         (func_quote_for_eval, func_quote_for_expand): ...use it to work
10273         around SunOS ksh `case' backslash-escaping bug: protect character
10274         class by variable expansion.
10275         Reported by Alexander Kurz <alexander.kurz@qsc.de>.
10277         * tests/quote.test: Restart under the correct shell (the one
10278         $ECHO was computed for).
10280 2004-12-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10282         * libltdl/lt__dirent.c: Include lt__private.h.
10283         * libltdl/libltdl/lt__private.h: Include lt__strl.h.
10285 2004-12-20  Peter O'Gorman  <peter@pogma.com>
10287         * config/ltmain.m4sh (func_extract_archives)
10288         (func_extract_an_archive): On darwin, uniq can not take the flags
10289         -cd together, thanks to Ralf for the fix, also ar does not accept
10290         N, so we use the fact that ar x libfoo.a foo.o will always extract
10291         the first foo.o in the archive and we then delete foo.o from the
10292         archive, which will also delete only the first foo.o, then rinse
10293         and repeat. Also add markers for the testuite.
10294         * m4/libtool.m4 (_LT_CONFIG): Add a marker so that we can use a
10295         sed expression to find the shell functions in libtool.
10296         * tests/functests.at: Test this feature.
10297         * tests/testsuite.at: Add the test.
10298         * tests/Makefile.am: Add the test.
10300 2004-12-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10302         * libtoolize.m4sh: Install `install-sh' as well, needed for
10303         configure.
10304         * Makefile.am, Makefile.maint: Install, update it.
10305         * NEWS, doc/libtool.texi (Distributing): Document it.
10306         Reported by Ross Boylan <ross@biostat.ucsf.edu>.
10308         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Add '${wl}-z
10309         ${wl}text' to archive_cmds and archive_expsyms_cmds.  I.e., do not
10310         allow nopic in shared libraries.
10312         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Change
10313         no_undefined_flag back to ' -z defs'.  Problems with linking
10314         against libgcc.a will have to be resolved differently.
10316         * tests/demo-nopic.test [solaris, sunos]: Skip test.
10318 2004-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10320         * libtool.m4 [linux] (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG):
10321         Match icpc* and ecpc* (ia64 version of icpc) instead of only icpc.
10323         * libltdl/lt__dirent.c (opendir) [mingw]: Fix write of constant
10324         strings past end of buffer.
10325         (opendir, readdir): Fix read past end of buffer.
10327 2004-12-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10329         * HACKING: Update list of non-Libtool-owned files.
10331 2004-12-17  Akim Demaille <akim@epita.fr>
10333         * libtoolize.m4sh (func_copy_all_from_path): Remove spurious eval.
10335 2004-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10337         * libltdl/ltdl.c (trim): Return error rather than do bogus
10338         null pointer arithmetic when parsing a malformed .la file.
10340 2004-12-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
10342         * libltdl/lt__strl.c, libltdl/libltdl/lt__strl.h: New files to
10343         emulate strlcat and strlcpy, which support size-bounded string
10344         copying and concatenation for improved security.
10345         * libltdl/Makefile.am: Optionally build source files
10346         libltdl/lt__strl.c and libltdl/libltdl/lt__strl.h.
10347         * m4/ltdl.m4 (LTDL_INIT): Add checks for strlcat and strlcpy.
10349 2004-12-13  Albert Chin-A-Young  <china@thewrittenword.com>
10351         * libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
10352         Append -G to link command-line on AIX to honor -brtl on
10353         command-line (runtime linking). Already done for IBM C/C++
10354         compilers.
10356 2004-12-12  Patrick Welche <prlw1@newn.cam.ac.uk>
10358         * configure.ac: Fix aclocaldir to use ${datadir}, not ${prefix}.
10359         Necessary for removal of old libtool.m4 files.
10361 2004-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10363         * config/ltmain.m4sh (func_extract_archive): Send stderr of $NM
10364         to /dev/null.
10365         Reported by Martin Waitz <tali@admingilde.org>.
10367 2004-12-09  Albert Chin-A-Young  <china@thewrittenword.com>
10369         * config/ltmain.m4sh: Preserve -model [arg] option, used
10370         with the Tru64 UNIX C++ compiler. This option selects the
10371         layout of C++ classes, name mangling, and exception handling.
10373 2004-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10375         * config/ltmain.m4sh (func_mode_finish) [solaris]: Fix [] escaping
10376         bug.
10378         * config/ltmain.m4sh (all over the map): Make use of func_basename
10379         and func_dirname in most occasions.
10381         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL, _LT_PROG_XSI_SHELLFNS): New
10382         macros to detect at `configure' time whether the shell supports
10383         some XSI extensions and to copy appropriate versions of new shell
10384         functions into `libtool' through `config.status'.  Copied
10385         functions are Bourne and XSI variants of func_basename,
10386         func_dirname (a variant of `dirname' suitable for libtool).
10387         (_LT_SETUP): Require _LT_CHECK_XSI_SHELL.
10388         (_LT_CONFIG):  Use _LT_PROG_XSI_SHELLFNS to insert into `libtool'
10389         at marker.
10391         * config/ltmain.m4sh: Set marker for insertion of shell functions.
10393         * config/general.m4sh (func_quote_for_eval): Only fork if the
10394         substitution matches.
10396 2004-12-03  Gary V. Vaughan  <gary@gnu.org>
10398         * TODO: Paste Peter's summary of the TODO thread starting at
10399         http://lists.gnu.org/archive/html/libtool/2004-11/msg00130.html.
10401 2004-12-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
10403         * config/ltmain.m4sh: Remove code which is no longer needed
10404         now that temp_rpath only contains fully-qualified elements.
10406 2004-11-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10408         * config/general.m4sh: basename sed-subst is anchored and thus
10409         does not need the `g' flag.
10410         (func_quote_for_eval): Return both the possibly double-quoted
10411         backslashified as well as only the backslashified argument.
10412         * config/ltmain.m4sh (func_mode_link): Use both return values,
10413         to save another sed_quote_subst application per cmdline arg.
10415 2004-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10417         * config/ltmain.m4sh (func_lalib_p): Update function
10418         description.
10419         (func_lalib_unsafe_p): New function with same functionality but
10420         written without forks; this function is safe to use for cases
10421         where the argument either does not exist or is required to be a
10422         lalib for correct operation.
10423         * NEWS: Mention the fact that stdin is not to be used.
10424         * config/ltmain.m4sh (func_mode_execute, func_mode_install)
10425         (func_mode_link): Use func_lalib_unsafe_p where appropriate.
10426         (func_mode_execute): For the program wrapper, use
10427         func_ltwrapper_p instead of func_lalib_p.
10429         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Treat linux-dietlibc with
10430         the `diet' compiler wrapper (as opposed to the `diet-dyn' wrapper)
10431         as a static-only platform.
10432         * NEWS: Updated.
10434         * libltdl/ltdl.c (trim): Use memcpy instead of strncpy here, to
10435         avoid problems with non-conforming strncpy.  This is safe here.
10437         * m4/ltdl.m4 (LT_LIB_DLLOAD): Define HAVE_LIBDLLOADER if we
10438         have a dlloader to preload.
10439         * libltdl/ltdl.c (lt_dlinit): Only preload if HAVE_LIBDLLOADER, only
10440         declare preloaded_symbols then.  Fixes libltdl on static platforms.
10441         * NEWS: Updated.
10443 2004-11-29  Gary V. Vaughan  <gary@gnu.org>
10445         Add a search path option to libtoolize so that we can run it from
10446         the testsuite without pulling in the last installed macros and
10447         ltdl sources:
10449         * libtoolize.m4sh:  Add a -I option to change libtoolize's search
10450         path for macro files, and libltdl master sources.
10451         (pkgvdatadir, pkgvmacrodir): Renamed...
10452         (pkgvdatadirs, pkgvmacrodirs): ...as they can now contain a ':'
10453         delimited list of directories.  Adjust all callers.
10454         (func_copy_all_from_path): New function to search a ':' delimited
10455         search path for a directory to copy.
10456         (func_serial_update, func_ltmain_update, func_config_update): New
10457         first parameter is a filename to search for.  srcdir parameter can
10458         now be a ':' delimited search path.  Adjust all callers.
10459         (func_copy_some_files): Ditto.
10460         Put srcfile_spec first in parameter list for consistency with
10461         other functions.  Adjust all callers.
10462         (func_copy_cb): func_copy adapter function to call func_copy
10463         correctly from func_copy_some_files.
10464         (func_filename_path_search): Return the full path to the first
10465         occurence of a named file found in a list of directories.
10466         * tests/testsuite.at (LIBTOOLIZE): Wrap exported LIBTOOLIZE
10467         initialisation in PREPARE_TESTS diversion to stop it being
10468         discarded when testsuite is generated.
10469         (AT_LIBTOOLIZE): Factor out libtoolize calls,
10470         and set search path to find macros and libltdl source files from
10471         the source tree.
10472         (AT_CHECK_LIBTOOLIZE): Test it.
10473         (AT_BOOTSTRAP): Adjust.  Split out call to make.
10474         * tests/am-subdir.at: Call make explicitly.
10475         (Makefile.am): Fix typo in ACLOCAL_AMFLAGS,
10477 2004-11-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10479         * config/ltmain.m4sh (func_mode_link): $dlsymsobj is really
10480         $symfileobj, bug exposed only in the static preloading case
10481         (symfileobj is created, but not linked into output).
10483         * tests/demo-relink.test, tests/depdemo-relink.test: SKIP, don't
10484         FAIL if no shared libs available in demo/.  Do not try to access
10485         nonexistent files.
10487         * libltdl/loaders/loadlibrary.c: Remove unneeded
10488         file-static variable.
10490 2004-11-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
10492         * config/ltmain.m4sh: Add fully-qualified paths to temp_rpath
10493         rather than unqualified paths in order to avoid possible errors
10494         when computing the fully-qualified path later.
10496 2004-11-24  Jeff Squyres  <jsquyres@lam-mpi.org>
10498         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10499         (_LT_LANG_CXX_CONFIG) [linux]: Support for Portland Group (aka
10500         "pgi") compilers.
10501         * NEWS, THANKS: Updated.
10503 2004-11-24  Gary V. Vaughan  <gary@gnu.org>
10505         * Makefile.am: Move Autotest rules from here...
10506         * tests/Makefile.am: ...to here.
10507         * bootstrap: Adjust.  Also, create temporary Makefile from
10508         tests/Makefile.am so that bootstrap can create the Autotest
10509         testsuite.
10511 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
10513         If the user's login shell is something crazy like, oooh,
10514         /bin/tcsh, trying to execute bourne shell helper scripts with
10515         the `$SHELL /path/to/helper $helper_flags' idiom incase the
10516         execute bits were lost by say, eeer, cvs, is gonna blow up in
10517         our faces.  This changeset tries to save these people from
10518         their shells^H^H^H^H^H^H^H^H^Hmselves :->
10520         * tests/defs.m4sh (SHELL): Move definition from here...
10521         * config/general.m4sh (SHELL): ...to here.
10523 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
10525         The ltdl.h header is the published interface to libltdl, and
10526         is thus not installed to $prefix/include/libltdl.  It has always
10527         been used with `#include <ltdl.h>', so move just that one file
10528         back to where it was before:
10530         * libltdl/libltdl/ltdl.h: Moved from here...
10531         * libltdl/ltdl.h: ...to here.
10532         * libltdl/Makefile.am: Adjust.
10534 2004-11-23  Peter O'Gorman  <peter@pogma.com>
10536         Do not require that libtoolize --ltdl=/some/path end in libltdl.
10537         Move most libltdl headers to libltdl/libltdl to allow
10538         `#include <libltdl/ltdl.h>' to always work:
10540         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for includes
10541         in the new location.
10542         * libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
10543         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
10544         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
10545         libltdl/libltdl/lt_system.h, libltdl/libltdl/ltdl.h,
10546         libltdl/libltdl/slist.h: Added files, moved from libtdl/.
10547         * libltdl/lt__alloc.h, libltdl/lt__dirent.h, libltdl/lt__glibc.h,
10548         libltdl/lt__private.h, libltdl/lt_dlloader.h, libltdl/lt_error.h,
10549         libltdl/lt_system.h, libltdl/ltdl.h, libltdl/slist.h: Removed, moved
10550         to libltdl/libltdl.
10552 2004-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10554         * doc/libtool.texi (LT_INIT): s/libtool 1.6/libtool 2.0/.
10555         (Invoking libtoolize): Fix typo.
10557 2004-11-22  Gary V. Vaughan  <gary@gnu.org>
10559         * config/ltmain.m4sh (func_mode_install): Now that func_mktempdir
10560         has been improved, the default directory template is perfectly
10561         fine.
10563         * doc/libtool.texi (Invoking libtoolize): Improve documentation
10564         for use of ACLOCAL_AMFLAGS and AC_CONFIG_MACRO_DIR.
10566 2004-11-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10568         * m4/libtool.m4 (_LT_TAG_COMPILER): Document that with_gcc is
10569         tag-dependent.
10571         * m4/libtool.m4, tests/demo-nopic.test: Undo bogus commit.
10573         * config/ltmain.m4sh (func_mode_link), tests/objectlist.test:
10574         Make sure the argument to `-objectlist' may contain spaces.
10576 2004-11-19  Gary V. Vaughan  <gary@gnu.org>
10578         * config/m4general.m4sh, config/mailnotify.m4sh,
10579         clcommit.m4sh: Updated from cvs-utils--tla--1.0 to allow
10580         parallel commits, and use safer tmpfiles.
10582 2004-11-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10584         * doc/libtool.texi (Libltdl interface): Typos.
10586         * doc/libtool.texi (Libltdl interface): Document public macros
10587         LT_PATHSEP_CHAR, LT_DIRSEP_CHAR, use in path descriptions.
10589 2004-11-18  Daniel Reed  <djr@redhat.com>
10591         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: Interpret
10592         `include' statements in toplevel ld.so.conf file.
10594 2004-11-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10596         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
10597         tag-protect setting of ld_shlibs.
10599 2004-11-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10601         * doc/libtool.texi (Libltdl interface): The path separator
10602         is system-dependent.
10604         * doc/libtool.texi (Linking static libraries): Typo.
10606         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
10607         [aix4/aix5 !ia64]: Set whole_archive_flag_spec to '$convenience'
10608         so convenience libs are really added to the link cmdline.
10610 2004-11-17  Mats Rynge  <rynge@isi.edu>
10612         * libtool.m4 [linux]: Use only the CC basename in case statment
10613         when checking for icc/ecc.  Allows for setting CC to the full path
10614         to the compiler.
10616         * libtool.m4 [solaris]: Added missing 'with linker' flags to
10617         -z allextract ... -z defaultextract flags
10619 2004-11-14  Gary V. Vaughan  <gary@gnu.org>
10621         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Typo: s/--rpath/-rpath/g.
10622         (_LT_LANG_CXX_CONFIG): Ditto.
10624         * configure.ac (APIVERSION): New substituted variable.
10625         (pkgvdatadir): Ditto.  Versioned data directory.
10626         (pkgvmacrodir): Ditto.  Versioned aclocal directory.
10627         (LN): New check for LN command.
10628         * Makefile.am (aclocal_DATA): Replaced with...
10629         (pkgvmacro_DATA): ...this.
10630         (install-data-local): Remove old shared resources.
10631         (install-exec-hook): Make versioned links to executables.
10632         (uninstall-hook): Remove versioned files.
10633         * libltdl/Makefile.am (ltdldatadir): Redefine in terms of
10634         pkgvdatadir.
10635         * libltdl/loaders/Makefile.am (ltdldatadir): Ditto.
10636         * libtoolize.m4sh: Copy macro files from versioned macro directory
10637         instead of shared aclocal directory.
10638         * doc/libtool.texi: Document it.
10639         * NEWS: Updated.
10641 2004-11-10  Gary V. Vaughan  <gary@gnu.org>
10643         From James Henstridge <james@jamesh.id.au>:
10644         * m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4: Added commented out
10645         empty macro definitions to match each AU_DEFUN to help aclocal
10646         from automake-1.4 regexps find the right libtool macro files.
10648 2004-11-10  James E Wilson  <wilson@specifixinc.com>,
10649             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10651         * config/ltmain.m4sh (func_mode_link), tests/Makefile.am,
10652         Fix error message with `-objectlist' file that does not exist.
10653         * tests/objectlist.test:  New test for this.
10655         * Makefile.am: config/ltmain.sh is generated by
10656         config/ltmain.m4sh.
10658 2004-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10660         * doc/libtool.texi (Compile mode, Link mode,
10661         Libltdl interface, Test descriptions, libtool script
10662         contents): Some quote cleanup, more use of texinfo types.
10664         * doc/libtool.texi (libtool script contents):
10665         echo is now ECHO; mention argument restriction.
10667         * doc/libtool.texi (Multiple dependencies): Minor rewording.
10669         * doc/libtool.texi (User defined module data, References):
10670         indentation and word-wrap cleanup.
10672         * doc/libtool.texi (all over): White space cleanup:
10673         two spaces at start of sentence, no TABs.
10675 2004-11-09  Gary V. Vaughan  <gary@gnu.org>,
10676             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10678         * doc/libtool.texi (libtool script contents): Fix description
10679         of need_lib_prefix.
10681 2004-11-08  Peter Ekberg  <spam.protected>
10683         * config/ltmain.m4sh (func_mode_link): forward thread
10684         related flags to dependent applications and libraries
10685         by adding them to `inherited_linker_flags'.
10687 2004-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10689         * m4/ltoptions.m4: Change all references of LT_LIBTOOL_INIT
10690         to LT_INIT.
10692 2004-11-05  Peter Ekberg  <spam.protected>
10694         * ltmain.m4sh (cwrappersource): clean up other warning on MinGW.
10696 2004-11-04  Bernhard Fischer  <spam.protected>,
10697             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10699         * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS), m4/ltoptions.m4
10700         (_LT_SET_OPTIONS), README, README.alpha: Typos.
10702 2004-11-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10704         * libltdl/ltdl.c (parse_dotla_file): Fix memleak.
10706         * ltmain.m4sh (cwrappersource): Cast isalpha arguments correctly.
10708 2004-11-03  Peter Ekberg  <spam.protected>
10710         * ltmain.m4sh (cwrappersource): clean up warnings and
10711         #include errors on MinGW.
10713 2004-11-01  Peter Ekberg  <spam.protected>
10715         * config/ltmain.m4sh (cwrappersource): clean up warnings and
10716         #include errors.
10718 2004-11-01  Peter Ekberg  <spam.protected>
10720         Sometimes, a wrapper script is generated for an executable that,
10721         itself, does not link against an uninstalled library.  It appears
10722         that this can happen if you are building a project where:
10724           (1) there is a library
10725           (2) there is an executable that does not, itself, link against
10726               that library
10728         In this case, notinst_deplibs is empty, and when the wrapper
10729         script is loaded by libtool during ./libtool mode=install, there
10730         is a check for "is notinst_deplibs empty".  In this case, it is,
10731         so libtool reports an error.
10733         I don't think it is wrong to have a wrapper script for an exe that
10734         *technically* doesn't need it.  But instead of checking for
10735         notinst_deplib nonempty as a proxy for "did wrapper script get
10736         sourced into my environment properly" a different var should be
10737         used.
10739         * config/ltmain.m4sh (func_mode_install): set new variable
10740         `generated_by_libtool_version' in wrapper script when using
10741         libtool_install_magic.  When verifying that wrapper script was
10742         properly sourced, check that `generated_by_libtool_version' is
10743         non-empty, instead of using notinst_deplibs.
10745 2004-11-01  Charles Wilson  <spam.protected>,
10746             Peter Ekberg  <spam.protected>
10748         * config/ltmain.m4sh (func_mode_install): On Windows based hosts,
10749         ensure that import libraries don't get stripped.
10750         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): On Windows based hosts,
10751         use postinstall_cmds to strip DLL (not import lib!) when symbol
10752         stripped installation was requested.
10754 2004-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10756         * libltdl/ltdl.c (loader_init_callback): Back out broken cast.
10758         * libltdl/ltdl.c (loader_init_callback, lt_dlexit): Add casts to
10759         target type.
10761         * tests/defs.m4sh (func_exec): `shift'ing when there is nothing
10762         to shift is non-portable.
10764 2004-10-28  Patrick Welche  <prlw1@newn.cam.ac.uk>,
10765             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10767         * Makefile.am, Makefile.maint: Use path for dependencies built
10768         in the source tree, to cater for BSD make.
10770 2004-10-24  Noah Misch  <noah@cs.caltech.edu>
10772         * config/ltmain.m4sh (func_lalib_p, func_ltwrapper_p): New
10773         functions that abstract .la sanity checking.
10774         (func_mode_execute, func_mode_install, func_mode_link)
10775         (func_mode_uninstall): Use them.
10777 2004-10-24  Gary V. Vaughan  <gary@gnu.org>
10779         * config/ltmain.m4sh (opt_silent): Whether --silent was given.
10780         (run, show): Deleted.  All callers converted to opt_dry_run,
10781         opt_silent or calls to func_show_eval.
10782         * tests/mdemo-dryrun.test: Adjust.
10784         * HACKING: Fix a typo in the gpg --verify instructions.
10786         * Makefile.maint (cvs-dist): Generate signatures and directives
10787         for bz2 upload.
10789 2004-10-23  Peter O'Gorman  <peter@pogma.com>
10791         * config/ltmain.m4sh (func_mode_link): Make Gary's new tests
10792         pass. When the output wrapper script is not in the current
10793         directory, we can not use an rpath which is relative to the
10794         current directory. Use an absolute path instead.
10796 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
10798         * clcommit.m4sh: Add --rcfile option.
10800         * clcommit.m4sh: Updated again, to support file list limited
10801         commits to CVS, and to fix another occurence of the bash bug
10802         that was preventing non-tla users from sending a commit mail.
10804 2004-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10806         * TODO, libltdl/lt_error.h, libltdl/ltdl.c, libltdl/ltdl.h:
10807         Undo accidental commit.
10809         * Makefile.maint: Fix typo.
10811 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
10813         * clcommit.m4sh, config/mailnotify.m4sh: Updated from
10814         cvs-utils--tla--1.0 to fix quoting of metachars in patch names.
10816         * HACKING: Updated: `.in' files are now `.m4sh'; document some
10817         more coding standards for these files.
10819         * config/general.m4sh (sed_double_backslash): Undo an
10820         over-optimisation.
10822 2004-10-21  Gary V. Vaughan  <gary@gnu.org>
10824         * AUTHORS: Reformatted to better reflect the current state of
10825         Libtool maintainership.
10826         * THANKS: Reformatted to give maintainers a quick way to look
10827         up who has supplied FSF paperwork.
10829 2004-10-21  Noah Misch  <noah@cs.caltech.edu>,
10830             Gary V. Vaughan  <gary@gnu.org>
10832         * config/general.m4sh (sed_double_backslash): Improve this sed
10833         expression to correct left anchored \$ input to
10834         double_quote_subst, as well as backslash escaped $ preceded by
10835         any odd-numbered amount of \ characters.
10837 2004-10-20  Gary V. Vaughan  <gary@gnu.org>
10839         * config/general.m4sh (sed_double_backslash): New sed expression
10840         to escape \$ properly in combination with double_quote_subst.
10841         (func_quote_for_eval): Four space indent margin for functions!
10842         (func_quote_for_expand): Use $sed_double_backslash.
10843         (func_show_eval): New function that echos an escaped but variable
10844         expanded command, and then evaluates it.
10846 2004-10-20  Noah Misch  <noah@cs.caltech.edu>,
10847             Gary V. Vaughan  <gary@gnu.org>
10849         * m4/libtool.m4 (sed_quote_subst): Remove superfluous backslashes
10850         from the match character set.
10851         (double_quote_subst): Ditto.
10852         * config/general.m4sh (sed_quote_subst): Ditto.
10853         (double_quote_subst): New variable, copied from
10854         m4/libtool.m4. Much the same as sed_quote_subst, but variable
10855         references are not quoted.
10856         (func_quote_for_eval): Given any $foo; $bar and
10857         $foo must be identical after the following commands:
10858             func_quote_for_eval "$foo"
10859             eval "bar=$func_quote_for_eval_result"
10860         (func_quote_for_expand): In a similar vein to to func_quote_for_eval,
10861         except that variable expansions are not protected when quoting the
10862         command for subsequent display.
10863         * config/ltmain.m4sh: Factor away use of $sed_quote_subst now that
10864         it has been subsumed into func_quote_for_eval.
10865         (func_mode_link): Instead of `2004-10-14 Peter O'Gorman' below,
10866         use func_quote_for_expand so that ${wl} is expanded properly in
10867         the $show expression.
10869 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
10871         * config/ltmain.m4sh (func_mode_finish): solaris-2.6 also has
10872         crle(1).
10873         Reported by Albert Chin-A-Young <china@thewrittenword.com>
10875 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
10877         Add some new tests for Libtool's support of Automake
10878         subdir-objects builds.  This marks the beginning of a move to an
10879         Autotest driven test framework, which will eventually allow us to
10880         trim away many of the generated files in the current test demo
10881         subdirectories:
10883         * configure.ac (AC_CONFIG_TESTDIR): Re-enable commented out
10884         Autotest macros.
10885         (AUTOTEST, M4SH): Use --language long hand.
10886         * bootstrap: Generate tests/testsuite, and by implication
10887         tests/package.m4.
10888         * Makefile.am (edit): Add substitutions needed to generate
10889         tests/package.m4 from bootstrap.
10890         (check-recursive): Add tests/testsuite.
10891         (TESTSUITE): The new Autotest testsuite target.
10892         (TESTSUITE_AT): The Autotest sources.
10893         (EXTRA_DIST): Distribute the generated testsuite and sources.
10894         (tests/package.m4): Use $(edit) to propagate package metadata to
10895         the new tests.
10896         (tests/testsuite): Build the testsuite.
10897         (tests/atconfig): How to regenerate the file.
10898         (check-local): Hook Autotest into `make check'.
10899         (installcheck-local): Run the testsuite on the installed tree.
10900         (clean-local): Tidy our file droppings.
10901         * tests/Makefile.am: Remove bitrotted code from Autotest
10902         experiments in Autoconf 2.52 era.  Updated the rest and moved into
10903         Makefile.am.
10904         * tests/testsuite.at: New container for Autotest test groups.
10905         * tests/am-subdir.at: New test group for compatibility with
10906         Automake's subdir-objects builds.  Currently holds two tests, one
10907         for a C project and another similar project in C++.
10908         * TODO: Add an entry to remind us that these new tests expose a
10909         bug in libtool.
10910         * NEWS: Updated.
10912 2004-10-14  Peter O'Gorman  <peter@pogma.com>
10914         * config/ltmain.m4sh: Revert most of my last commit, only eval
10915         \$show \"$cmds\", and only when building a library. I'm a wimp.
10916         Thanks Gary for pointing out errors in previous commit.
10918 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
10920         * config/ltmain.m4sh (func_mode_finish): Mention crle(1) on
10921         solaris 2.7 and higher in the finalisation notes.
10922         Reported by Kurt J. Lidl <lidl@pix.net>
10924         * tests/cdemo-undef.test: New test for hosts that allow shared
10925         libraries with undefined symbols, but have no C++ compiler
10926         installed.
10927         * tests/Makefile.am (COMMON_TESTS): Add it.
10929 2004-10-13  Peter O'Gorman  <peter@pogma.com>
10931         * config/ltmain.m4sh: Make sure that we $show what we will $run,
10932         use eval $show if we do $run eval.
10934 2004-10-13  Charles Wilson  <spam.protected>
10936         * config/ltmain.m4sh: add foo/bin for every foo/lib
10937         in dllsearchpath when creating wrapper script.  Fixes
10938         depdemo-relink test failure.
10940 2004-10-12  Charles Wilson  <spam.protected>
10942         * config/ltmain.m4sh (func_mode_link): don't relink
10943         on cygwin/mingw; no need.  But do ensure that wrappers
10944         are created unless doing a purely static build.
10946 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
10948         * tests/tagdemo-undef.test: New test for hosts that allow shared
10949         libraries with undefined symbols.
10950         * tests/Makefile.am (CXX_TESTS): Add it.
10952 2004-10-11  Charles Wilson  <spam.protected>
10954         * tests/link.test: Fix check for use of libnlsut.a under
10955         Cygwin.
10957 2004-10-11  Noah Misch  <noah@cs.caltech.edu>
10959         * tests/quote.test: Do not look for $preargs in the output,
10960         because libtool may change them.
10962 2004-10-10  Charles Wilson  <spam.protected>
10964         * config/ltmain.m4sh: Really don't require versions of GNU
10965         sed newer than 3.02 for Cygwin and MinGW, and don't break
10966         dryrun mode.
10968 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
10970         * config/getopt.m4sh: Under MinGW, reported paths may include ':'
10971         so ':' should not be used as the sed delimiter.  Use '*' instead
10972         since it is very unlikely to appear in a path.
10974 2004-10-10  Albert Chin-A-Young  <china@thewrittenword.com>
10976         * config/ltmain.m4sh: Don't require versions of GNU sed newer than
10977         3.02 for Cygwin and MinGW.
10979 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
10981         * tests/pdemo-inst.test: Correction for mis-application of
10982         Charles Wilson's earlier patch.
10984 2004-10-09  Gary V. Vaughan  <gary@gnu.org>
10986         * m4/libtool.m4 (_LT_LANG_F77_CONFIG): Make sure the save and
10987         restore code for CC is nested at the same depth.
10988         (_LT_LANG_CXX_CONFIG): Ditto, but for several variables.
10990 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
10992         Update to the latest commit and mailnotify scripts from
10993         gary@gnu.org--2004/cvs-utils--tla--1.0:
10995         * commit, config/mailnotify: Removed.  Now built from...
10996         * clcommit.m4sh, config/mailnotify.m4sh: ...these new sources.
10997         * Makefile.maint (commit, config/mailnotify): How to build them.
10998         * bootstrap: If we have a checked out tree (i.e. clcommit.m4sh
10999         is present), then build them.
11001 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
11003         Fix some issues that mangled the reexecution path to a script,
11004         and thus prevented it from finding itself:
11006         * config/general.m4sh (progname): Don't actually change the name
11007         of the script if it begins with a `-', just prepend `./'.
11008         (progpath): Add a new clause that first searches the execution
11009         PATH, and then finally assumes this script is in the current
11010         working directory if $progname has no directory separators (e.g
11011         when invoked as `$SHELL progname').
11013 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
11015         * config/general.m4sh (func_verbose): Work around a bash bug in
11016         shell functions.
11018 2004-10-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
11020         * tests/pdemo-inst.test: pdemo-inst should depend on pdemo-make.
11021         * config/ltmain.m4sh: Windows and Cygwin reserve the .lnk
11022         extension to represent shortcuts.  Use the extension ".lnkscript"
11023         rather than ".lnk" for the piecewise linking ld script in order to
11024         avoid the conflict.
11026 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11028         * libltdl/ltdl.c (lt_dlexit, lt_dlpath_insertdir): Fix memleaks,
11029         free user_search_path on lt_dlexit.
11031 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11033         * tests/sh.test: Remove tests which fail on AS_SHELL_SANITIZE
11034         from autoconf >= 2.59.
11036         * TODO: Remove item: no need for a libltdl without stdio.
11038 2004-10-07  Gary V. Vaughan  <gary@gnu.org>
11040         * tests/defs.m4sh (scripts): Actually scan the generated ltmain.sh
11041         for shell portability problems.
11043         * m4/libtool.m4 (_LT_FORMAT_COMMENT): Shell meta-characters in
11044         _LT_DECL descriptions were not being escaped before injection into
11045         TAG CONFIG here documents in config.status.
11047 2004-10-06  Peter O'Gorman  <peter@pogma.com>
11049         * m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77): New macros to work
11050         around the deficiencies in AC_PROG_CXX and AC_PROG_F77.
11051         * configure.ac: Cleaned up, having moved the checks for compilers
11052         which do not exist to libtool.m4.
11054 2004-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11056         * libltdl/ltdl.c (try_dlopen): Move .la file parsing
11057         part.. (parse_dotla_file): ..here.  Adjust.
11059         * libltdl/ltdl.c (load_deplibs, try_dlopen): Revert unnecessary casts
11060         to int from my patch from 2004-10-01.
11062         * AUTHORS: Add myself.
11064 2004-10-05  Peter O'Gorman  <peter@pogma.com>
11066         * config/ltmain.m4sh [darwin]: Make the -dylib_file flag work on
11067         older darwins too. Reported by Christoph Egger.
11069 2004-10-05  Gary V. Vaughan  <gary@gnu.org>
11071         * configure.ac: Bumped version to 2.1a.
11073 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
11075         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Don't confuse $ECHO
11076         with $lt_ECHO, or we always get a libtool with ECHO=echo, rather
11077         than testing for a mechanism that quotes \ properly.
11078         * NEWS: Updated.
11080         * config/ltmain.m4sh: Need to include getopt.m4sh earlier so that
11081         progpath is set before it is called to --no-reexec.
11082         * NEWS: Updated.
11084 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
11086         Without this change, the distributed libtool tarball has a
11087         dependency on autom4te.  There was some inconsistency in the
11088         filenames: now we have foo.m4sh -> m4sh -> foo.in -> configure
11089         -> foo[.sh].  Bootstrap runs the m4sh steps and the resulting .in
11090         files are distributed:
11092         * tests/Makefile.am (EXTRA_DIST): Distribute defs.m4sh.
11093         * Makefile.am (EXTRA_DIST): Distribute libtoolize.m4sh.
11094         (libtoolize.in, libtoolize): Split into bootstrap and runtime
11095         stages.
11096         ($(top_srcdir)/tests/defs.in, $(top_srcdir)/tests/defs): Ditto.
11097         ($(top_srcdir)/config/ltmain.sh): Swap ltmain.m4sh and ltmain.in
11098         names.
11099         * bootstrap: Make libtoolize.in and tests/defs.in.
11100         * NEWS: Updated.
11102 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
11104         * README, README.alpha: Update notes regarding available VERBOSE
11105         settings.
11107 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
11109         * config/ltmain.in: Change $XSED to $Xsed to fix hang noticed
11110         under MinGW.
11111         * tests/defs.in: Support VERBOSE=debug to enable shell tracing
11112         while running tests.
11114 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
11116         * NEWS: Updated.
11117         * configure.ac: Bumped version to 1.9e.
11119         GNU libtool 1.9d was released.
11121         * configure.ac: Bumped version to 1.9d.
11122         * NEWS: Updated.
11124         * libltdl/lt__alloc.h (lt__alloc_die): Declare with LT_SCOPE as
11125         per Ralf's original patch.
11126         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
11128         * libltdl/Makefile.am (libltdlc_la_LIBADD): Don't use
11129         libdlloader_la_OBJECTS, an undocumented Automake internal
11130         variable...
11131         (libltdlc_la_SOURCES): ...use libdlloader_la_SOURCES here
11132         instead.
11133         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
11135         * libltdl/argz_.h: Forgot to spell lt_system.h with just one `_'.
11137         * libltdl/argz_.h: Forgot to include lt__system.h for LT_SCOPE
11138         definition.
11140 2004-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
11141             Gary V. Vaughan  <gary@gnu.org>
11143         * libltdl/lt__alloc.h: Declare exported functions with LT_SCOPE
11144         for mingw32.
11145         * libltdl/lt__dirent.h: Ditto.
11146         * libltdl/argz._h: Ditto.  Be careful about not requiring
11147         additional libltdl files when used outside of libltdl.
11148         * libltdl/slist.h: Ditto.
11149         * HACKING: Add a section on libltdl implementation layering.
11151 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
11153         * tests/quote.test: echo is called ECHO now.  Make sure we extract
11154         the value of ECHO from the libtool script.
11155         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
11157 2004-10-02  Gary V. Vaughan  <gary@gnu.org>
11159         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7*]: Revert my
11160         hack from 2004-09-30 now that I've removed /lib/hello.la and the
11161         tests work properly for me again.
11163 2004-10-02  Jim Tison  <jtison@us.ibm.com>
11165         Initial support for s390x-ibm-tpf:
11167         * m4/libtool.m4: Correct obvious spelling errors in remarks.
11168         (_LT_ENABLE_LOCK): Make s390x-ibm-tpf hosts adopt elf64_s390
11169         conventions.
11170         (_LT_SYS_DYNAMIC_LINKER): Set defaults for s390x-ibm-tpf host.
11171         (_LT_CHECK_MAGIC_METHOD): Skip all dependency checks for
11172         s390x-ibm-tpf hosts.
11173         (_LT_LINKER_SHLIBS): Make s390x-ibm-tpf hosts adopt GNU/Linux OS
11174         attributes.
11175         * NEWS: Updated.
11177 2004-10-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11179         * config/ltmain.in (func_mode_install): Need to set $tmpdir before
11180         using it.
11182         * config/ltmain.in (func_mode_link): Fix quoting bug.  Fixes
11183         e.g. the quoting of the -export-symbols-regex argument in .la
11184         files' relink_command.
11186         * libltdl/lt__alloc.c (lt__memdup): Allocation can fail, so we
11187         need to guard against null pointer dereference here.
11188         * libltdl/ltdl.c (lt_dlcaller_register): Ditto.
11190         * libltdl/slist.c (slist_foreach): result was declared as
11191         inner variable, shadowing the actually returned value.
11193         * libltdl/ltdl.c (load_deplibs, try_dlopen): Cast argument
11194         to isspace/isalnum to the correct range.  Also, cast to int to
11195         avoid compiler warnings.
11197 2004-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11199         * libltdl/ltdl.c (try_dlopen): Fix null pointer dereference in
11200         case the name given to lt_dlopen contains no extension.
11202         * libltdl/lt_dlloader.c (lt_dlloader_remove), libltdl/ltdl.c
11203         (tryall_dlopen, lt_dlhandle_next): Show usage of function pointers.
11205         * doc/libtool.texi (LT_INIT, Using libltdl)
11206         (Module loaders for libltdl, Multiple dependencies)
11207         (libtool script contents): Fix several typos (trivial change).
11208         Also, libltdl consists of more than two small files.
11210 2004-09-30  Gary V. Vaughan  <gary@gnu.org>
11212         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7]: My Panther
11213         workstation doesn't hardcode the shared library path, although it
11214         used to, so this is more likely a function of the binutils and/or
11215         gcc I am using at the moment.  The hardcode value setting code for
11216         the configure script sucks at the moment though...
11217         * TODO: ...and needs to do a test compile instead of a table
11218         lookup before 2.0 final.
11220         * m4/libtool.m4 (echo): Use ECHO throughout for consistency with
11221         config/ltmain.in.
11222         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11224         * m4/libtool.m4 (rm): Use RM throughout for consistency with
11225         config/ltmain.in.
11226         Reported by Charles Wilson <cwilson@spam.protected>
11228 2004-09-27  Peter O'Gorman  <peter@pogma.com>
11230         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
11231         output during configure. (Really this time, honest)
11233 2004-09-26  Albert Chin-A-Young  <china@thewrittenword.com>
11235         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [aix]: In archive_expsym_cmds,
11236         move -bnoentry linker option before $compiler_flags to honor any
11237         possible -e entries in LDFLAGS.
11239 2004-09-25  Gary V. Vaughan  <gary@gnu.org>
11241         * config/ltmain.in (func_mode_link): When linking an installed
11242         libtool library on the command line using -lfoo we need to find
11243         the library in the search paths and add it's dependency_libs to
11244         the link in the conv pass so that any libtool libs listed are
11245         correctly expanded in the link pass.
11247 2004-09-24  Charles Wilson  <cwilson@spam.protected>
11249         * libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Revert changeset from
11250         `2004-09-22  Charles Wilson  <cwilson@spam.protected>'.
11252 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
11254         * config/general.m4sh (Xsed): Set a default when not used from
11255         ltmain.in.
11256         (ECHO): Audit for (and correct!) uses of $ECHO with more than one
11257         argument, which breaks when ECHO='printf %s\n', and with possible
11258         `-' as first character of the argument, which breaks `print -r'
11259         and some implementations of `echo'.
11260         * config/ltmain.in, tests/defs.in, libtoolize.in (ECHO): Ditto.
11261         Reported by Albert Chin-A-Young <china@thewrittenword.com>
11263 2004-09-24  Peter O'Gorman  <peter@pogma.com>
11265         * m4/libtool.m4 (_LT_CMD_STRIPLIB) [darwin]: strip archives too.
11267         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
11268         output during configure.
11270 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
11272         * m4/libtool.m4 (_LT_DECL_EGREP): Only the newest CVS autoconf
11273         AC_SUBSTs for GREP.  Do our own here too to cater for release
11274         autoconfen.
11276         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [openbsd3.3]: Set
11277         need_version to yes or no depending on the os release.
11278         Reported by Dalibor Topic <robilad@kaffe.org>
11280 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
11282         * tests/cdemo-conf.test, tests/cdemo-exec.test,
11283         tests/cdemo-make.test, tests/cdemo-shared.test,
11284         tests/cdemo-static.test, tests/demo-conf.test,
11285         tests/demo-deplibs.test, tests/demo-exec.test,
11286         tests/demo-hardcode.test, tests/demo-inst.test,
11287         tests/demo-make.test, tests/demo-nofast.test,
11288         tests/demo-noinst-link.test, tests/demo-nopic.test,
11289         tests/demo-pic.test, tests/demo-relink.test,
11290         tests/demo-shared.test, tests/demo-static.test,
11291         tests/demo-unst.test, tests/depdemo-conf.test,
11292         tests/depdemo-exec.test, tests/depdemo-inst.test,
11293         tests/depdemo-make.test, tests/depdemo-nofast.test,
11294         tests/depdemo-relink.test, tests/depdemo-shared.test,
11295         tests/depdemo-static.test, tests/depdemo-unst.test,
11296         tests/f77demo-conf.test, tests/f77demo-exec.test,
11297         tests/f77demo-make.test, tests/f77demo-shared.test,
11298         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
11299         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
11300         tests/mdemo-exec.test, tests/mdemo-inst.test,
11301         tests/mdemo-make.test, tests/mdemo-shared.test,
11302         tests/mdemo-static.test, tests/mdemo-unst.test,
11303         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
11304         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
11305         tests/pdemo-exec.test, tests/pdemo-inst.test,
11306         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
11307         tests/suffix.test, tests/tagdemo-conf.test,
11308         tests/tagdemo-exec.test, tests/tagdemo-make.test,
11309         tests/tagdemo-shared.test, tests/tagdemo-static.test,
11310         tests/tagtrace.test: POSIX `.' searches only in user's $PATH, so
11311         we must use `. ./defs' to source the common code.
11312         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
11314         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Gah.  Merge error
11315         corrected.
11317 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
11319         Since defs can change (path to grep for example) when it is made
11320         for a different host, it can't be shipped.  That also means that
11321         defs will always be generated in the build tree, so each test case
11322         can have the srcdir discovery factored away into tests/defs.in:
11324         * Makefile.am (EXTRA_DIST): s/defs/defs.in/g
11325         * tests/Makefile.am (defs): New rule to remake defs from the
11326         parent directory's Makefile.
11327         * tests/cdemo-conf.test, tests/cdemo-exec.test,
11328         tests/cdemo-make.test, tests/cdemo-shared.test,
11329         tests/cdemo-static.test, tests/demo-conf.test,
11330         tests/demo-deplibs.test, tests/demo-exec.test,
11331         tests/demo-hardcode.test, tests/demo-inst.test,
11332         tests/demo-make.test, tests/demo-nofast.test,
11333         tests/demo-noinst-link.test, tests/demo-nopic.test,
11334         tests/demo-pic.test, tests/demo-relink.test,
11335         tests/demo-shared.test, tests/demo-static.test,
11336         tests/demo-unst.test, tests/depdemo-conf.test,
11337         tests/depdemo-exec.test, tests/depdemo-inst.test,
11338         tests/depdemo-make.test, tests/depdemo-nofast.test,
11339         tests/depdemo-relink.test, tests/depdemo-shared.test,
11340         tests/depdemo-static.test, tests/depdemo-unst.test,
11341         tests/f77demo-conf.test, tests/f77demo-exec.test,
11342         tests/f77demo-make.test, tests/f77demo-shared.test,
11343         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
11344         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
11345         tests/mdemo-exec.test, tests/mdemo-inst.test,
11346         tests/mdemo-make.test, tests/mdemo-shared.test,
11347         tests/mdemo-static.test, tests/mdemo-unst.test,
11348         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
11349         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
11350         tests/pdemo-exec.test, tests/pdemo-inst.test,
11351         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
11352         tests/suffix.test, tests/tagdemo-conf.test,
11353         tests/tagdemo-exec.test, tests/tagdemo-make.test,
11354         tests/tagdemo-shared.test, tests/tagdemo-static.test,
11355         tests/tagtrace.test: Removed srcdir discovery boilerplate...
11356         * tests/defs.in: ...and put it here.
11358 2004-09-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11360         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): move symcode calculation
11361         to correct place.
11362         * doc/libtool.texi (libtool script contents): update description
11363         of global_symbol_to_cdecl.
11365 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
11367         * configure.ac (M4SH): AC_SUBST m4sh expander.
11368         * config/general.m4sh, config/getopt.m4sh: New files with factored
11369         out functionality from...
11370         * config/ltmain.in, libtoolize.in: ...here.  m4_include the shared
11371         code, and call AS_SHELL_SANITIZE.  Also quote all `[' and `]' to
11372         survive m4 run.
11373         (func_serial): No need to double up m4sh quotes after a `#'.
11374         (func_check_macros): Escape `dnl' to stop m4sh interpreting it as
11375         a macro.
11376         * tests/defs.in: New file expanded into tests/defs by autom4te.
11377         * m4/libtool.m4 (_LT_DECL_EGREP): Also require fgrep for the tests
11378         that use it.
11379         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Now built with
11380         M4SH.
11381         (libtoolize): Ditto.
11382         * bootstrap: Set M4SH for call to make.
11383         * HACKING: No need to sync to AS_SHELL_SANITIZE by hand any more.
11385         * m4/libtool.m4: _LT_DECL uppercase ECHO.
11386         * config/ltmain.in: Use it throughout.
11387         (func_mkdir_p): Now matches the other implementations in
11388         tests/defs and libtoolize.in.
11389         * tests/sh.test: Updated to detect ECHO misuse.
11391 2004-09-22  Gary V. Vaughan  <gary@gnu.org>
11393         * config/ltmain.in (func_mode_link): Propagate a convenience
11394         library's dependency libs correctly when it is being linked into a
11395         libtool library.  Deplibs are now propagated whether libdir is set
11396         or not.
11398 2004-09-22  Andreas Schwab  <schwab@suse.de>
11400         The dlpreopen pass over libraries reverses the elements in the
11401         $deplibs list.  This causes problems when the link pass tries to
11402         find libraries when they are located in non-standard places
11403         denoted by -L options.  Due to the reversed order these -L options
11404         occur after the libraries that need them, and they are not found:
11406         * config/ltmain.in: (Un)Reverse $deplibs list at the start of the
11407         link pass in lib mode.
11409 2004-09-22  Charles Wilson  <cwilson@spam.protected>
11411         * ltmain.in (func_generate_dlsyms) [cygwin, mingw]: when creating
11412         a .exp file for an executable, also create a .def file, and add
11413         that file to the link command via SYMFILES.  This causes binutils
11414         to generate an .edata section, and allows self dlopening to work.
11415         * NEWS: Updated.
11417         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better quoting for
11418         postinstall_cmds and postuninstall_cmds to allow spaces in install
11419         paths.
11421         * config/ltmain.in (func_generate_dlsyms): Addresses in
11422         _preloaded_symbols[] cannot go into .rdata section if symbols are
11423         DATA imported from DLL, on windows, because runtime relocations
11424         must happen.
11425         * m4/libtool.m4 (_LT_LINKER_SHLIBS([TAGNAME])): Build exports for
11426         symbols in .rdata sections.
11428 2004-09-19  Gary V. Vaughan  <gary@gnu.org>
11430         The checks in assign.test are trying to catch case of this ilk:
11431         `foo=bar break', but unfortunately they also choke on `foo=bar;
11432         break' and `foo=bar && break'.  Writing a sophisticated test to
11433         catch just the intended case seems like more trouble than it's
11434         worth, but leaving the test in causes the testsuite to fail on
11435         valid m4sh output:
11437         * tests/assign.test: Removed; chokes on perfectly valid shell
11438         syntax.
11439         * tests/Makefile.am (COMMON_TESTS): Remove assign.test.
11440         * tests/defs.in (scripts): Don't check the m4sh inputs, go back
11441         to checking the generated ltmain.sh script.
11443 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
11445         * config/ltmain.in (func_echo): Except for multi-line warnings and
11446         errors, always use func_echo.  $show is for command output, and
11447         $echo is for internal use in backtick expressions and similar.
11449 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
11451         Missed a couple of MKDIR_P references in ltmain.in in my last
11452         patch; fix them carefully.  Introduce an opt_dry_run to ltmain.in
11453         so that the implementations of func_mkdir_p can converge, and a
11454         func_mktempdir to do a better job of temporary directory creation:
11456         * libtoolize.in (func_mkdir_p): Don't fail if the directory wasn't
11457         created in dry run mode.
11458         * tests/defs (func_mkdir_p): Ditto.  We don't actually have a dry
11459         run mode for the tests, but the function is written carefully to
11460         be kept in synch and work correctly here too.
11461         * config/ltmain.in (func_mkdir_p): Ditto.  This copy of the
11462         function now only differs in its use of $echo over $ECHO.
11463         (func_extract_archive): Removed first redundant mkdir call.
11464         (func_mktempdir): New function that tries to avoid races when
11465         making temporary directories.
11466         (opt_dry_run): Set this if --dry-run is given at the CLI, or if
11467         tests/mdemo-dryrun.test has forced the value of $run.
11468         (func_mode_install): Call $MKDIR directly and error out if the
11469         directory cannot be created.
11470         (func_mode_link): Rather than copying func_mkdir_p into the
11471         wrapper script as a replacement for $MKDIR_P, we know that the
11472         script won't be called my `make -j', so write the current value of
11473         $MKDIR.
11475 2004-09-17  Peter O'Gorman  <peter@pogma.com>
11477         * m4/libtool.m4: remove an extra "]"
11479         * m4/libtool.m4 [darwin] (_LT_LANG_CXX_CONFIG): Changes for 10.4.
11480         * config/libtool.in [darwin]: ditto.
11482 2004-09-16  Gary V. Vaughan  <gary@gnu.org>
11484         My most recent `2004-09-02 Gary V. Vaughan' patch for mkdir_p
11485         below is horrendously broken since it makes the installed libtool
11486         try to run the mkinstalldirs or install-sh helper scripts.  This
11487         patch fixes the `make -j' mkdir race condition internally:
11489         * libtoolize.in (func_mkdir_p): New slice and dice algorithm
11490         to build the directory tree one dir at a time, ignoring errors
11491         until the end incase they are transient due to a concurrent
11492         identical mkdir.
11493         * tests/defs (func_mkdir_p): Ditto.
11494         * config/ltmain.in (func_mkdir_p): Ditto, except that ltmain.in
11495         uses $echo rather than $ECHO, and uses $show and $run to interact
11496         correctly with the command line.
11497         * configure.ac (AM_INIT_AUTOMAKE): 1.8 is sufficient again.
11498         * Makefile.am (edit): Don't substitute automake's $(mkdir_p).
11499         * NEWS: Updated.
11501 2004-09-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
11503         * libltdl/loaders/loadlibrary.c: Compilation fixes (originally
11504         from Gary V. Vaughan) to compile under MinGW.
11505         * config/mkstamp: Translate input data so that it is assured to
11506         use the Unix line terminations. This is necessary under Windows if
11507         the files are checked out with CR/NL line terminations. A
11508         side-effect of this change is that input must always be from
11509         stdin. Previously a filename argument was accepted as well.
11511 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11513         * tests/Makefile.am: Use the same CPP, F77, CXX and CXXFLAGS
11514         for the test suite.
11516 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11518         * m4/libtool.m4 (_LT_ENABLE_LOCK):Replace AC_TRY_LINK with
11519         AC_LINK_IFELSE to get rid of `autoconf -Wobsolete' warning.
11520         * m4/ltdl.m4 (LT_LIB_DLLOAD): Ditto.
11522 2004-09-15  Gary V. Vaughan  <gary@gnu.org>
11524         * config/ltmain.in (func_quote_for_eval): Set a return value to
11525         avoid forking at every call.  Changed all callers.
11526         (func_mode_link): Simplified, and removed the final non-portable
11527         nested escaped double quotes in back quotes usage in the process.
11529 2004-09-14  Gary V. Vaughan  <gary@gnu.org>
11531         * config/ltmain.in (func_quote_for_eval): Factor out the ugly
11532         shell meta-character quoting.  Changed all callers.
11534 2004-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11536         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Simplification:
11537         distinguish between data and code symbols on every system.
11539 2004-09-14  Albert Chin-A-Young  <china@thewrittenword.com>
11541         Unfortunately, libtool has no way of telling if unrecognized
11542         compiler flags need an argument or not, and can disect options and
11543         pass parts through incorrectly.  This changeset reverts both
11544         2004-09-06 Albert Chin-A-Young (topmost) and 2004-09-05 Albert
11545         Chin-A-Young below, and recognises more options explicitly:
11547         * config/ltmain.in (func_mode_link): Pass through options needed
11548         to compile in 64-bit mode with gcc, and the SGI, Sun, HP and IBM
11549         compilers.
11551 2004-09-13  Gary V. Vaughan  <gary@gnu.org>
11553         * m4/libtool.m4 (_LT_CMD_GLOBALS_SYMBOLS): Fix a typo I made when
11554         applying 2004-09-11 Ralf Wildenhues.
11556 2004-09-12  Brad  <brad@comstyle.com>
11558         * libtool.m4: Fixes for the OpenBSD support
11560 2004-09-12  Peter O'Gorman  <peter@pogma.com>
11562         Our fortran tests were not very good. All the libraries created
11563         were convenience libs, so we did not test the creation of shared
11564         libraries on any platform. Also none of the libs used any actual
11565         fortran library calls, adding a call to write(*,*) in each lib
11566         causes the tests to fail on darwin (and presumably other platforms).
11567         These new tests would likely cause many more fortran test failures,
11568         so if there is an error during make it is reported as SKIP.
11570         * tests/f77demo-make.test: Don't fail hard, skip on failure.
11571         * tests/f77demo/foof2.f: New file.
11572         * tests/f77demo/foof3.f: New file.
11573         * tests/f77demo/fprogram.f: Call routine in new lib.
11574         * tests/f77demo/foof.f: Call routine in another new lib.
11575         * tests/f77demo/Makefile.am: Make a couple of new libraries, add
11576         $(FLIBS) to cprogram LDADD.
11578 2004-09-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11580         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): The linker distinguishes
11581         data and code symbols on linux-gnu/ia64.  Fixes multiple testsuite
11582         failures.
11583         * NEWS: Updated.
11585 2004-09-06  Gary V. Vaughan  <gary@gnu.org>
11587         * libltdl/loaders/shl_load.c (get_vtable): Typo.
11589 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
11591         Hopefully, passing unrecognised compiler arguments through
11592         unmolested will prove to be a good plan for the 2.0 release.  If
11593         it goes awry, we can get back to where we were by reverting this
11594         patch and the 2004-09-05 Albert Chin-A-Young patch, aka
11595         gary@gnu.org--2004/libtool--devo--1.0--patch-169,172:
11597         * config/ltmain.in (func_mode_link): Because we now pass through
11598         compiler arguments we doesn't recognize, the code to pass
11599         through GCC's -m* arguments is not needed.
11601 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
11603         * Makefile.am (clean-ltmain-sh): Using '==' to test for equality
11604         in a shell script is not portable. Use '=' instead.
11606 2004-09-05  Andreas Schwab  <schwab@suse.de>
11608         * m4/ltdl.m4 (LT_WITH_LTDL): Remove excess quoting in argument of
11609         AC_CONFIG_SUBDIRS.
11611 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
11613         * config/ltmain.in (func_mode_link): Pass otherwise unrecognised +
11614         and - style switches to the compiler.
11615         * NEWS: Updated.
11617 2004-09-05  Gary V. Vaughan  <gary@gnu.org>
11619         * Makefile.am (libtool): Force libtool to be regenerated if
11620         stamp-vcl has changed.
11622 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
11624         * m4/libtool.m4, config/ltmain.in: When calling $LTCC,
11625         pass default $CFLAGS through with $LTCFLAGS.
11627 2004-09-03  David Edelsohn  <dje@watson.ibm.com>
11629         * config/ltmain.in (func_mode_link): Use $pic_object as
11630         $non_pic_object if $non_pic_object=none.
11631         * NEWS: Updated.
11633 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
11635         * bootstrap: Remember that the ltmain.sh generated by bootstrap
11636         is missing most of its substitution values, so force it to be
11637         rebuilt at make time by touching $(top_srcdir)/config/ltmain.in.
11639         From Martin Quinson <mquinson@ens-lyon.fr>
11640         * m4/libtool.m4 (_LT_SETUP, _LT_ENABLE_LOCK, LT_PATH_LD): Use
11641         AS_HELP_STRING to get rid of autoconf -Wobsolete warning
11642         messages.
11643         * m4/ltdl.m4 (LT_WITH_LTDL, _LT_ENABLE_INSTALL): Ditto.
11644         * m4/ltoptions.m4 (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC)
11645         (_LT_ENABLE_FAST_INSTALL, _LT_WITH_PIC): Ditto.
11646         * TODO: Updated
11648 2004-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11650         * libltdl/slist.c (slist_cons): Don't leak the tail of a list.
11652 2004-09-03  Albert Chin-A-Young  <china@thewrittenword.com>
11654         * m4/libtool.m4 (_LT_ENABLE_LOCK): Reformatted.
11656 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
11658         * HACKING: Explain how to verify detached signatures with gpg in
11659         the release announcement templates.
11661         * AUTHORS: Fix typo in my address.
11663 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
11665         Builds of packages that use libtool and make -j produce "directory
11666         already exists warnings" for .lib directory.  Build on automake
11667         wisdom to support make -j builds where a suitable mkdir is
11668         available:
11670         * configure.ac (AM_INIT_AUTOMAKE): Require 1.9, which goes to some
11671         trouble to find a $(mkdir_p) that doesn't interfere with make -j.
11672         * Makefile.am (edit): Substitute for @mkdir_p@.
11673         * config/ltmain.in (MKDIR_P): Take @mkdir_p@ value.
11674         (mkdir): Removed.
11675         (func_mkdir_p): New function to use $MKDIR_P.  Factor out all
11676         previous mkdir calls to use this function.
11677         (RM, MV): Declared as in libtoolize.in.  Changed all callers.
11678         * libtoolize.in (MKDIR_P): Take @mkdir_p@ value from automake.
11679         (func_mkdir_p): Use it, similarly to new config/ltmain.in.
11680         * tests/defs: Synchronize boiler plate code with ltmain.in.
11681         Adjust all callers.
11682         Add missing copyright preamble.
11683         * tests/demo-static.test: Add missing copyright preamble.
11684         * NEWS: Updated.
11685         Reported by Daniel Reed <n@ml.org>
11687 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
11689         * Makefile.am (clean-ltmain-sh): Quote $(top_builddir) for the
11690         shell, incase it is not set when running maintainer rules with
11691         `make -fMakefile.maint'.
11692         Don't show the shell commands.
11694         * AUTHORS: Fix my email address.
11696 2004-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11698         * libltdl/ltdl.c (try_dlopen): Fix memory leak.
11699         * NEWS: Updated.
11701 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
11702             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11704         * libltdl/slist.c, libltdl/slist.h: Merge in changes from latest
11705         upstream.  Mostly comments, formal item boxing, a sort function,
11706         and const madness reduction.
11707         (slist_new): Removed.
11708         (slist_box, slist_unbox, slist_sort): New.
11709         (SListCompare, SListCallback): Swapped!
11710         (slist_remove, slist_find): Change order of parameters for
11711         orthogonality with slist_foreach.  Changed all callers.
11712         * libltdl/lt_dlloader.c (loader_cmp): Renamed to...
11713         (loader_callback): ...this.  Return boxed item.
11714         (lt_dlloader_remove): Adjust to new loader_callback semantics;
11715         unbox each removed item before returning.
11716         Remove unused variable.
11717         Remove const from name parameter, since the slist API cannot
11718         guarantee userdata const-ancy for its callback functions.
11719         (lt_dlloader_find): Adjust to new loader_callback semantics; need
11720         to return the contents of the boxed item.
11721         Remove const from name parameter, since the slist API cannot
11722         guarantee userdata const-ancy for its callback functions.
11723         * libltdl/lt_dlloader.h (lt_dlloader_find, lt_dlloader_remove):
11724         Adjust to new constless footprint.
11725         * libltdl/ltdl.c (ltdl_exit): The global `loaders' list is changed
11726         by `lt_dlloader_remove' while cleaning up, so the address in local
11727         variable `loader' is invalidated.  Since some loaders may be
11728         resident modules that cannot be unloaded (though we have none
11729         yet), we must save each `next' address before calling
11730         `lt_dlloader_remove'.
11731         * NEWS: Updated.
11732         * THANKS: Added Ralf.
11734 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
11736         * libltdl/lt_dlloader.c (lt_dlloader_add): Handle malloc failure
11737         from slist_new.
11738         * libltdl/ltdl.c (loader_init): Trust lt_dlloader_add(), don't
11739         overwrite its error type, and simplify.
11740         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11742 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11744         * libltdl/slist.c (slist_new): Handle malloc failure gracefully.
11746 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
11748         * libtoolize.in, config/ltmain.in: Add CDPATH protection to
11749         preamble.
11750         * tests/defs: Put a full m4sh.m4 style 'Be Bourne compatible'
11751         preamble in here too.
11752         * HACKING: Note that tests/defs needs synching with m4sh.m4 too.
11753         * TODO: Add new item.
11755         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Use correct cpp
11756         macro name, LT_DLSEARCH_PATH.
11758         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Fix gcc parentheses
11759         warning.
11760         (foreach_dirinpath, try_dlopen, lt_dlpath_insertdir): Fix gcc
11761         signed vs unsigned warning.
11762         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
11764         * m4/libtool.m4 (_LT_PROG_LTMAIN): Simplified in light of
11765         ltmain.sh no longer being in the build tree.
11766         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11768 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11770         * libltdl/loaders/preopen.c: Initialise memory in get_vtable.
11772         * tests/sh.test: Look in the source tree for ltmain.sh.
11774 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
11776         Don't use C99 flexible array types as we want to be C89
11777         compatible.  Instead, revert to the old way of doing things with
11778         an array of symbol name vs. address, and adding the originator as
11779         the first symbol but with a NULL address:
11781         * config/ltmain.in (func_extract_dlsyms): Store originator as a
11782         NULL address symbol.
11783         * libltdl/ltdl.h (lt_dlsymbol): Removed.
11784         (lt_dlsymlist): Remove originator field.
11785         (LTDL_SET_PRELOADED_SYMBOLS): Adjust.
11786         * libltdl/loaders/preopen.c (vm_open, lt_dlpreload_open): Adjust
11787         for new types.
11788         (vm_sym): Skip the new originator symbol when scanning symbol
11789         names.
11790         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust preloaded symbols
11791         test file to match.
11792         * NEWS: Updated.
11793         Reported by Andreas Schwab <schwab@suse.de>
11795 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
11797         Libtool currently assumes that certain characteristics, such as
11798         enable_shared, apply to the host architecture rather than per-
11799         language.  Running the tests over a broken compiler can corrupt
11800         these values, when there is no C++ compiler for example, so we
11801         skip most of the tests in those cases.
11803         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): If caught_CXX_compiler was
11804         set from configure.ac, then don't run all the compiler tests.
11805         (_LT_LANG_F77_CONFIG): Similarly for caught_F77_compiler.
11807 2004-08-31  Gary V. Vaughan  <gary@gnu.org>
11809         * Makefile.am (clean-ltmain-sh): Remove stale config/ltmain.sh
11810         from the build tree that were left behind by previous versions of
11811         libtool.
11812         ($top_srcdir)/stamp-vcl: Since this rule is already called on
11813         every invocation of make, hook clean-ltmain-sh in here too.
11814         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11816 2004-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11818         * bootstrap: Update warning message to reflect having split
11819         libtool.m4 into several files.
11820         Also, add config/ltmain.sh to list of stale files from previous
11821         versions to be removed before bootstrap.
11823         * libltdl/ltdl.c: Replace strdup with lt__strdup.
11825 2004-08-30  Gary V. Vaughan  <gary@gnu.org>
11827         * config/ltmain.in: Double quote even $# for the sake of sh.test.
11828         (exec_cmd): Be careful about "`\"foo\"`" quoting, even in comments
11829         to avoid triggering the tests in sh.test.
11831         * configure.ac:  Because of the way the autoconf C++ testing
11832         works, we need to call the C test first to work in an environment
11833         that has no C++ compiler.
11835         * libltdl/lt_dlloader.c (lt_dlloader_remove): Since the return
11836         value of this function is often passed to free, don't declare it
11837         `const'. Responsibility for this memory is given back to the
11838         caller on return.
11839         * libltdl/lt_dlloader.h (lt_dlloader_remove): Ditto.
11840         * libltdl/ltdl.c (lt_dlexit): Adjust.
11841         * NEWS: Updated.
11843 2004-08-30  Andreas Schwab  <schwab@suse.de>
11845         * libltdl/ltdl.c (lt_dlexit): Remove lvalue cast.
11847         * libltdl/slist.h (SListCallback): Fix missing type.
11849         * config/ltmain.in: Accept --mode=relink.
11851 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
11853         * NEWS: Updated.
11854         * configure.ac: Bumped version to 1.9c.
11856         GNU libtool 1.9b was released.
11858         * configure.ac: Bumped version to 1.9b.
11859         * NEWS: Updated.
11860         * INSTALL, config/config.guess, config/config.sub,
11861         config/texinfo.tex: Updated from canonical source.
11862         * Makefile.maint, HACKING: Update instructions for releasing in a
11863         VPATH build.
11865         * Makefile.am (dist-hook): Only run if README-alpha exists.
11866         * README.alpha: Renamed from README-alpha to stop automake from
11867         automatically adding it to DIST_COMMON.
11869         * NEWS: Merge changes from branch-1-5.
11871         * Makefile.am (dist-hook): Always distribute just a README file,
11872         but take its contents from README-alpha for alpha releases.
11874         * TODO: Reformat.  Removed some items that have been implemented.
11876 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
11878         Add a new `-weak' flag to tell libtool when not to propogate
11879         dependency libraries from dlpreopened modules to libraries:
11881         * config/ltmain.in: Support new -weak link mode option.  Adjust
11882         help message.
11883         * libltdl/Makefile.am (libltdlc_la_LDFLAGS): Use it.
11884         * doc/libtool.texi (Linking with dlopened modules): Document it.
11885         (Link mode): Mention -weak.
11886         * NEWS: Updated.
11888 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
11890         * config/ltmain.in (opt_help): Defer showing help messages until
11891         after a possible following --mode argument has been parsed, so we
11892         can handle `libtool --help --mode=foo'.
11894 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
11896         We have had shell functions in ltmain.in for a few years without
11897         complaint now, and recently a few more have crept in.  Make a
11898         start at refactoring the code with shell functions, and
11899         standardising on option parsing style:
11901         * config/ltmain.in (func_echo, func_verbose, func_error)
11902         (func_fatal_error, func_fatal_help, func_missing_arg)
11903         (func_version, func_usage, func_help): Boiler plate shell
11904         functions mostly copied from libtoolize.in.  Changed *lots* of
11905         shell snippets to call these functions as appropriate, rather than
11906         inlining the same code over and over.
11907         (func_config, func_features, func_enable_tag, func_mode_help):
11908         Factored out from the shared option parsing loop.  Write a new
11909         shared option parser based on the one in libtoolize.in.
11910         (func_check_version_match): Factored out from global scope.
11911         (func_mode_compile, func_mode_execute, func_mode_finish)
11912         (func_mode_install, func_mode_link, func_mode_uninstall): Break
11913         each of the top level mode handlers out into a function.  Adjust
11914         main loop.
11915         (modename, prevopt, prev, optarg, show_help): Removed in the
11916         course of cleaning up the shared option parser.
11917         (opt_duplicate_deps): Use `:' and `false' instead of `yes' and `',
11918         so we can run it directly, rather than calling test.
11920 2004-08-28  Gary V. Vaughan  <gary@gnu.org>
11922         To help users submit better bug reports, improve the general
11923         instructions, and provide additional useful info alongside the bug
11924         reporting address in --help output:
11926         * Makefile.am (edit): Substitute $host_triplet.
11927         * libtoolize.in: Output useful debug info with --help.
11928         * config/ltmain.in: Ditto.
11929         * README: Rewritten.  Added copyright info.
11930         * README-alpha: Rewritten.  Added copyright info.
11931         * HACKING: New file, partly taken from old README-alpha.
11933 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
11935         Two things to stop `make distcheck' from trying to rebuild
11936         distributed files (m4/ltversion.m4 and config/ltmain.in) in the
11937         readonly source tree:
11939         * Makefile.am (stamp-vcl): Keep only one copy of stamp-vcl; in
11940         $(top_srcdir), so that an up-to-date version is rolled into the
11941         dist tarball even from a VPATH build.
11942         ($(top_srcdir)/config/ltmain.sh): Don't depend on Makefile,
11943         otherwise ltmain.sh needs to be rebuilt after every config.status
11944         run, and then configure needs to be rebuilt, and it all goes
11945         horribly wrong :-/  Unfortunately, we can't depend on Makefile.am
11946         either, because that is a circular dependency.  The downside of
11947         this change is that it is now possible to edit Makefile.am to
11948         change the way ltmain.sh is generated, and the dependency
11949         information can't tell that ltmain.sh needs regenerating.
11951 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
11953         * doc/libtool.texi (Cheap tricks): Escape the `@' for texinfo.
11955 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
11957         * doc/libtool.texi (Cheap tricks): Fix the instructions for making
11958         a ltmain.in wrapping libtool in light of recent changes to the
11959         version checking code.
11961 2004-08-26  Peter O'Gorman  <peter@pogma.com>
11963         * config/ltmain.in [darwin]: Use the -dylib_file flag and avoid
11964         linking to so many libraries on darwin.
11966         * m4/libtool.m4 [darwin]: Don't use a libname triplet, a couplet
11967         is perfectly fine.
11969         * m4/ltdl.m4: Don't use the dyld loader on darwin 8 or later.
11971 2004-08-25  Paolo Bonzini  <bonzini@gnu.org>
11973         * config/ltmain.in (piecewise linking): Use a GNU ld script if
11974         possible.
11975         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Add per-tag variable
11976         with_gnu_ld.
11977         (_LT_LANG_CXX_CONFIG): Don't set unused variable with_gnu_ldcxx.
11979 2004-08-22  Gary V. Vaughan  <gary@gnu.org>
11981         The Grand Renaming.  In preparation for libtool-2.0, move all of
11982         the many and varied m4 symbols accumulated by libtool over the
11983         years, considering also that modern autoconf can detect unexpanded
11984         macros even without AC in the macro name:
11986         * bootstrap: Remove libltdl/config.h from previous releases.
11987         * m4/libtool.m4, m4/ltdl.m4, doc/libtool.texi: Basically, run a
11988         giant sed transformation like this:
11989         s,AC_LIB_LTDL,LTDL_INIT,g
11990         s,AC_LIBLTDL_CONVENIENCE,LTDL_CONVENIENCE,g
11991         s,AC_LIBLTDL_INSTALLABLE,LTDL_INSTALLABLE,g
11992         s,AC_WITH_LTDL,LT_WITH_LTDL,g
11993         s,AC_LTDL_ENABLE_INSTALL,_LT_ENABLE_INSTALL,g
11994         s,AC_DEPLIBS_CHECK_METHOD,_LT_CHECK_MAGIC_METHOD,g
11995         s,AC_LIBTOOL_OBJDIR,_LT_CHECK_OBJDIR,g
11996         s,AC_LTDL_OBJDIR,_LT_CHECK_OBJDIR,g
11997         s,AC_LTDL_DLPREOPEN,_LT_CHECK_DLPREOPEN,g
11998         s,AC_LIBTOOL_SYS_MAX_CMD_LEN,LT_CMD_MAX_LEN,g
11999         s,AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,_LT_CMD_GLOBAL_SYMBOLS,g
12000         s,AC_LIBTOOL_SYS_OLD_ARCHIVE,_LT_CMD_OLD_ARCHIVE,g
12001         s,AC_PROG_LD_RELOAD_FLAG,_LT_CMD_RELOAD,g
12002         s,AC_LIBTOOL_SYS_LIB_STRIP,_LT_CMD_STRIPLIB,g
12003         s,AC_CHECK_LIBM,LT_LIB_M,g
12004         s,AC_LTDL_DLLIB,LT_LIB_DLLOAD,g
12005         s,AC_LIBTOOL_COMPILER_OPTION,_LT_COMPILER_OPTION,g
12006         s,AC_LIBTOOL_PROG_CC_C_O,_LT_COMPILER_C_O,g
12007         s,AC_LIBTOOL_PROG_COMPILER_NO_RTTI,_LT_COMPILER_NO_RTTI,g
12008         s,AC_LIBTOOL_PROG_COMPILER_PIC,_LT_COMPILER_PIC,g
12009         s,AC_LIBTOOL_SYS_HARD_LINK_LOCKS,_LT_COMPILER_FILE_LOCKS,g
12010         s,AC_LTDL_DLSYM_USCORE,LT_FUNC_DLSYM_USCORE,g
12011         s,AC_LIBTOOL_LINKER_OPTION,_LT_LINKER_OPTION,g
12012         s,AC_LIBTOOL_PROG_LD_SHLIBS,_LT_LINKER_SHLIBS,g
12013         s,AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH,_LT_LINKER_HARDCODE_LIBPATH,g
12014         s,AC_PATH_MAGIC,_LT_PATH_MAGIC,g
12015         s,AC_PATH_TOOL_PREFIX,_LT_PATH_TOOL_PREFIX,g
12016         s,AC_PROG_LD,LT_PATH_LD,g
12017         s,AC_PROG_LD_GNU,_LT_PATH_LD_GNU,g
12018         s,AC_PROG_NM,LT_PATH_NM,g
12019         s,AC_LTDL_SYS_DLOPEN_DEPLIBS,LT_SYS_DLOPEN_DEPLIBS,g
12020         s,AC_LIBTOOL_DLOPEN_SELF,LT_SYS_DLOPEN_SELF,g
12021         s,AC_LIBTOOL_POSTDEP_PREDEP,_LT_SYS_HIDDEN_LIBDEPS,g
12022         s,AC_LTDL_SYSSEARCHPATH,LT_SYS_DLSEARCH_PATH,g
12023         s,AC_LTDL_SHLIBEXT,LT_SYS_MODULE_EXT,g
12024         s,AC_LTDL_SHLIBPATH,LT_SYS_MODULE_PATH,g
12025         s,AC_LTDL_SYMBOL_USCORE,LT_SYS_SYMBOL_USCORE,g
12026         s,AC_LIBTOOL_SYS_DYNAMIC_LINKER,_LT_SYS_DYNAMIC_LINKER,g
12027         s,_LT_AC_TAGVAR,_LT_TAGVAR,g
12028         s,_LT_AC_SYS_COMPILER,_LT_TAG_COMPILER,g
12029         s,_LT_AC_PROG_ECHO_BACKSLASH,_LT_PROG_ECHO_BACKSLASH,g
12030         s,_LT_AC_SYS_LIBPATH_AIX,_LT_SYS_MODULE_PATH_AIX,g
12031         s,_LT_AC_SHELL_INIT,_LT_SHELL_INIT,g
12032         s,_LT_AC_LOCK,_LT_ENABLE_LOCK,g
12033         s,_LT_AC_CHECK_DLFCN,_LT_HEADER_DLFCN,g
12034         s,_LT_AC_TRY_DLOPEN_SELF,_LT_TRY_DLOPEN_SELF,g
12035         s,LT_AC_PROG_EGREP,_LT_DECL_EGREP,g
12036         s,LT_AC_PROG_SED,_LT_DECL_SED,g
12037         * doc/libtool.texi (Autoconf macros): Document exported macros.
12038         * libtoolize.in: Compare ltdl.m4 serial numbers for LTDL_INIT
12039         instead of newly obsoleted AC_LIB_LTDL.
12040         (func_scan_files): Also set seen_ltdl for LTDL_INIT and
12041         LT_WITH_LTDL.
12043 2004-08-12  Peter O'Gorman  <peter@pogma.com>
12045         * m4/libtool.m4 [GNU/linux] (AC_DEPLIBS_CHECK_METHOD): Cleanup,
12046         thanks to Daniel Reed.
12048 2004-08-11  Daniel Reed  <djr@redhat.com>
12050         * tests/demo-nopic.test: Do not run on x86_64 or s390*
12052 2004-08-06  Gary V. Vaughan  <gary@gnu.org>
12054         * libltdl/ltdl.c (lt_dlforeachfile): LT_SYS_LIBSEARCH_PATH is not
12055         an environment variable, it is an actual path.
12057         * bootstrap: Remove `-f Makefile.am' now that we have an actual
12058         Makefile to build ltmain.sh.
12059         Reported by Noah Mish <noah@cs.caltech.edu>
12061 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
12063         * bootstrap: Run the bootstrap rules from a file named Makefile,
12064         copied from Makefile.am for fresh checkouts.
12066 2004-08-05  Alexandre Duret-Lutz  <adl@gnu.org>
12068         * m4/libtool.m4 (_LT_PROG_LTMAIN): Require ltmain.sh using
12069         using Autoconf's new AC_REQUIRE_AUX_FILE.
12071 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
12073         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Depends on
12074         Makefile.
12075         (timestamp): Factor out timestamp setting and edit it based on the
12076         version number, so that it is empty for release versions.
12077         ($(top_srcdir)/config/ltmain.sh): Use it.
12078         (libtoolize): Ditto.
12080         * Makefile.am (libtool): Depends on ltmain.sh.
12081         (libtoolize): Set and substitute TIMESTAMP.
12083         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Actually run
12084         $(MKSTAMP) before changing directories, or it won't be found.
12085         Forgot to save before my last commit :-(
12087         * Makefile.am ($(top_srcdir)/m4/ltversion.m4): Since we already did
12088         `cd $(top_srcdir)' for this rule, we can't mv ltversion.tmp to the
12089         relative $(top_srcdir) again!  Also, run $(MKSTAMP) before changing
12090         directories, or it won't be found.
12091         ($(top_srcdir)/config/ltmain.sh): Ditto.
12092         (EXTRA_DIST): We should distribute ltversion.m4 too.
12094 2004-08-04  Peter O'Gorman  <peter@pogma.com>
12096         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Since CONFIG_SHELL may
12097         not actually be set, we should use SHELL here, also make darn sure
12098         that SHELL is set to something. Bug from Willem Jan Palenstijn
12099         <wpalenst@math.leidenuniv.nl>.
12101 2004-08-03  Jacob Meuser  <jakemsr@jakemsr.com>
12103         * ltmain.in: Allow some static libraries to be used in generating a
12104         shared library on NetBSD and OpenBSD. match-pattern_regex decides
12105         which are good.
12107 2004-08-02  Geoffrey Keating  <geoffk@apple.com>
12109         * m4/libtool.m4 [darwin]: Don't use -all_load.
12111 2004-08-01  Maciej W. Rozycki  <macro@linux-mips.org>
12113         * m4/libtool.m4 (LT_AC_PROG_SED): Set SED when running from cache as
12114         well.
12116 2004-07-31  Gary V. Vaughan  <gary@gnu.org>
12118         Although libtool is optimised to not need to subconfigure libltdl,
12119         the installed libltdl sources for libtoolize need to put
12120         libltdl/configure.ac in the parent package so that *it* can
12121         subconfigure libltdl.  That way we don't put any constraints on
12122         the build system used by the parent package because the
12123         libtoolized libltdl subtree is a self-contained sub-project:
12125         * libltdl/Makefile.am (EXTRA_DIST): Add configure.ac.
12126         (nobase_ltdldata_DATA): Change back to libltdl's own
12127         configure.ac.
12129 2004-07-30  Gary V. Vaughan  <gary@gnu.org>
12131         My thanks to Alexandre Duret-Lutz <adl@gnu.org> for the insight
12132         required to write this changeset -- especially that ltmain.sh is
12133         the same on any machine for a given release, which I hadn't
12134         noticed for some bizarre reason: It turns out that generating
12135         distributed files from configure causes no end of hassle, as
12136         evidenced by the many patches I've generated over the last few
12137         days to try and get the dist and distcheck make rules to work.
12138         Instead of all that hair, we now simply generate our distributed
12139         files (now including ltmain.sh) with make rules -- and since
12140         automake creates make variables for all AC_SUBSTs, that is really
12141         easy.  The code looks a lot more like automake and autoconf
12142         Makefile.ams now, and doesn't have all the rough edges the earlier
12143         hacky solution suffered from.  We still generate libtool from
12144         config.status, but that is not a distributed file, and doesn't
12145         break the golden rule.  Besides, there is way more going on there
12146         than a bunch of substitutions:
12148         * Makefile.am (edit): New common sed substitutions for files now
12149         generated by make instead of config.status.
12150         (CLEANFILES): Clean new tmp files.
12151         (EXTRA_DIST): Add ltmain.sh.
12152         (vcl-tmp): Reinstated.
12153         (m4/ltversion.m4, config/ltmain.sh): New rules.  Generate from
12154         here instead of config.status.
12155         (libtoolize): Ditto.
12156         (libtool): Call config.status to regenerate if necessary.
12157         (dist-hook): Removed.
12158         * config/ltmain.in: Moved here from top_srcdir.
12159         * README-alpha: Update instructions to check AS_SHELL_SANITIZE is
12160         up to date.
12161         * bootstrap: Rewritten.  Generate m4/ltversion.m4 and
12162         config/ltmain.sh because configure depends on them.
12163         * configure.ac (AC_CONFIG_SRCDIR): Use libtoolize.in now that
12164         ltmain.in has moved.
12165         (AC_CONFIG_FILES): Don't generate distributed files,
12166         config/ltmain.sh and libtoolize from config.status.  We have make
12167         rules to do that now.
12169 2004-07-30  Peter O'Gorman  <peter@pogma.com>
12171         * m4/libtool.m4, ltmain.in: readd the comments that I erased.
12173         * ltmain.in [darwin]: We already had a module var, there can be
12174         only one.
12176         * m4/libtool.m4, ltmain.in: autoconf now says the best thing to do
12177         with CDPATH is to (unset CDPATH) >/dev/null 2>&1 && unset CDPATH,
12178         so do it.
12180 2004-07-29  Gary V. Vaughan  <gary@gnu.org>
12182         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Ugh. More hair to
12183         help `make distcheck'; not only do we have to make a copy of
12184         ltmain.sh available in the source tree, but we have to be really
12185         careful about permission bit twiddling when we copy it across into
12186         the possible read-only $(top_srcdir)/config directory!
12188         * tests/tagtrace.test: Skip this test when running a VPATH build
12189         against a read-only source tree (as in distcheck for example),
12190         since autoconf wants to write temporary files in $top_srcdir
12191         otherwise.
12193         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Automake assumes,
12194         quite rightly for every project except libtool, that there will be
12195         an ltmain.sh in the source tree.
12196         (EXTRA_DIST): As do the dist rules it generates.
12197         (dist-hook): Even though we definitely don't want to distribute
12198         our local ltmain.sh.
12200         * config/config.guess, config/config.sub: Don't check these in,
12201         they cause spurious conflicts on cvs commit and update, and are
12202         added by bootstrap in any case.
12204         * configure.ac (AC_INIT): Revert an accidental commit from my
12205         testing of package_revision.
12207 2004-07-29  Alexandre Duret-Lutz  <adl@gnu.org>
12209         * doc/libtool.texi (Tags): Document CC.
12210         * m4/libtool.m4 (_LT_SETUP): Register CC as supported tag so that
12211         Automake uses it.
12213 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
12215         Fix a long-standing bug where macro_version was always empty in
12216         the generated m4/ltversion.m4.  Except for CVS revisions:
12218         * ltmain.in (package_revision): Don't try to deduce it from
12219         TIMESTAMP, since that is empty for release versions; simply
12220         substitute it...
12221         * configure.ac (package_revision): ...from here, having
12222         precalculated it before resetting TIMESTAMP for release versions.
12223         * bootstrap: Force regeneration of m4/ltversion.m4, but retain
12224         timestamps if there is no change to the content.
12226 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
12228         To take full advantage of this, libtool must be bootstrapped with
12229         CVS autoconf, otherwise pdksh chokes on some nested escaped quotes
12230         from libtool.m4.  Using CVS autoconf protects configure from
12231         non-bourne compatible shells in the same way this changeset
12232         protects libtool and libtoolize:
12234         * libtoolize.in: Include latest CVS autoconf AS_SHELL_SANITIZE
12235         expansion to make various shells fully bourne compatible.
12236         * ltmain.in: Ditto.
12237         * m4/libtool.m4 (AC_PATH_TOOL_PREFIX): Remove spurious quotes, the
12238         RHS of = assignment is not IFS split.
12239         (_LT_LANG_CXX_CONFIG): Ditto.
12240         (AC_LIBTOOL_POSTDEP_PREDEP): Ditto.
12242 2004-07-27  Gary V. Vaughan  <gary@gnu.org>
12244         This change fixes another VPATH build bug, where the vcl.tmp
12245         target forced a rebuild of stamp-vcl in the build tree (and
12246         hence regeneration of m4/ltversion.m4, thus an automake driven
12247         rebootstrap that doesn't know about $fakes) requiring a fresh
12248         ./bootstrap after every cvs/tla update:
12250         * Makefile.am (vcl.tmp): Removed.
12251         (stamp-vcl): Adopt former vcl.tmp target rules.
12253 2004-07-25  Gary V. Vaughan  <gary@gnu.org>
12255         * ltmain.in: Make sure that dependency libraries of -dlpreopened
12256         libraries are propogated properly.
12258 2004-07-23  Joe Orton  <joe@manyfish.co.uk>
12260         * libtool.m4: Treat bsdi5* like bsdi4*.
12262 2004-07-22  Peter O'Gorman  <peter@pogma.com>
12264         * ltmain.in [darwin](func_extract_archives): $SED not sed.
12266         * ltmain.in [darwin](func_extract_archives): Clean up last commit
12267         a little, some suggestions are from Albert Chin, those that are
12268         broken are mine.
12270         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for
12271         included files in the right places.
12273 2004-07-18  Peter O'Gorman  <peter@pogma.com>
12275         * ltmain.in [darwin](func_extract_archives): Because fat archives
12276         on darwin can not be extracted using ar, we need to use lipo to
12277         extract the thin archives and then use lipo again to generate the
12278         individual fat objects. This should allow people to run configure
12279         with CC set to "cc -arch ppc -arch ppc64" or "cc -arch ppc -arch
12280         i386" or whatever to match the toolchain they have available.
12282 2004-07-18  Greg Eisenhauer  <eisen@cc.gatech.edu>
12284         * libltdl/loaders/Makefile.am: Use AM_MAKEFLAGS not MAKEFLAGS.
12286 2004-07-18  Peter O'Gorman  <peter@pogma.com>
12288         * libltdl/Makefile.am: Ensure that lt__dirent.h is part of the dist,
12289         also make failed looking for configure.ac, look for
12290         $(top_srcdir)/configure.ac instead.
12292 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
12294         * libltdl/lt__private.h (lt_dlhandle_struct): Renamed to
12295         lt__handle to better reflect the naming scheme.
12296         * libltdl/ltdl.h (lt_dlhandle): Be truly opaque with a void *.
12297         * libltdl/lt_dlloader.c (lt_dlloader_remove): Party to
12298         lt__private.h, so use internal lt__handle instead of opaque
12299         lt_dlhandle.
12300         * libltdl/ltdl.c (LT_DLGET_FLAG, LT_DLSET_FLAG): Add a cast to
12301         internal lt__handle type.
12302         (try_dlopen, tryall_dlopen, load_deplibs, unload_deplibs): Ditto.
12303         (lt_dlexit, lt_dlclose, lt_dlsym): Use lt__handle to iterate
12304         throught the handle list.
12305         (try_dlopen): Use lt__zalloc instead of MALLOC and memset.
12306         * libltdl/ltdl.h (lt_dlcaller_id): Be truly opaque with a void *.
12307         (lt_dlhandle_interface): New callback type for filtering handles
12308         according to the interface they present.
12309         * libltdl/ltdl.c (lt_dlcaller_register): Take an id and an
12310         interface check callback, and generate a caller_id.
12311         (iterator): New static variable for the use of...
12312         (lt_dlhandle_first): New function.  Set the iterator for
12313         subsequent calls to lt_dlhandle_next.
12314         (lt_dlhandle_next): Either work as before when iterator is unset,
12315         or else skip handles that fail the interface check in iterator set
12316         by lt_dlhandle_first.
12317         * libltdl/ltdl.h (lt_dlhandle_first): Declaration.
12318         * doc/libtool.texi (User defined module data): Document the new
12319         APIs.
12320         * NEWS: Updated.
12322 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
12324         Split lt_dlloader management into a separate file, and factor
12325         `loaders' list management into a new SList ADT.  In the process,
12326         the API for writing loaders is a little cleaner, so all the
12327         existing loaders were tweaked to take advantage of that:
12329         * libltdl/slist.h, libltdl/slist.c: New files implementing a
12330         generic singly linked list container ADT.  The ADT is purely
12331         internal, and none of its API's are visible from an installed
12332         libltdl.
12333         * libltdl/lt_dlloader.h (lt_dlloader): Removed next field again
12334         :-) Renamed to lt_dlvtable for API.  Changed all callers.
12335         (lt_dlloader_get): New function to turn an lt_dlloader into its
12336         associated lt_dlvtable.
12337         (lt_dlloader_add): Removed unused data parameter.  The caller
12338         data belongs to (and is set by) the loader itself, not the
12339         loader's client.  Changed all callers.
12340         (lt_dlloader_name, lt_dlloader_data): Removed.  Use
12341         lt_dlloader_get instead!
12342         * libltdl/lt__private.h: Include slist.h.
12343         (lt__alloc_die_callback): Add missing LT_SCOPE to declaration.
12344         (lt_dlhandle_struct): Use lt_dlvtable instead of opaque
12345         lt_dlloader.
12346         * libltdl/ltdl.c (lt_dlexit): Rewritten for the new loader API.
12347         (loaders, lt_dlloader_add, lt_dlloader_remove, lt_dlloader_next,
12348         lt_dlloader_find): Moved from here...
12349         * libltdl/lt_dlloader.c ((loaders, lt_dlloader_add,
12350         lt_dlloader_remove, lt_dlloader_next, lt_dlloader_find): ...to
12351         here.  And rewritten in terms of new SList interface.
12352         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Rewritten in terms of
12353         new lt_dlloader interface.
12354         * libltdl/Makefile.am (libdlloader_la_SOURCES): Add slist.h and
12355         slist.c.  Move lt_dlloader.h from here...
12356         (pkginclude_HEADERS): ...to here.
12357         (libltdl_la_SOURCES): Add lt_dlloader.c and lt_dlloader.h.
12359 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
12361         Collapse two almost identical structures into one:
12363         * libltdl/lt_dlloader.h (lt_dlloader): Add next field.
12364         * libltdl/ltdl.c (lt_user_dlloader): Remove entirely.  Change all
12365         callers to use lt_dlloader instead.  Add a compatibility macro.
12366         (lt_dlloader_add): Remove copy and allocate stage, just hook
12367         directly into the loaders list.
12369 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
12371         A cleaner way to access the private fields of an lt_dlhandle
12372         than my move of the module field into lt_dlinfo:
12374         * libltdl/ltdl.c (lt_caller_data, lt_dlhandle_struct): Move from
12375         here...
12376         * libltdl/lt__private.h (lt_caller_data, lt_dlhandle_struct):
12377         ...to here.  And put the module field back here...
12378         * libltdl/ltdl.h (lt_dlinfo): ...instead of here.
12379         * libltdl/loaders/loadlibrary.c (vm_open): Adjust.
12381 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
12383         * libltdl/lt__private.h (streq, strneq): New macros to make strcmp
12384         calls as used for simple comparison easier to read.
12385         * libltdl/loaders/dyld.c, libltdl/loaders/preopen.c,
12386         libltdl/ltdl.c: Use them!
12388 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
12390         This pervasive changeset makes two intertwined deep changes to the
12391         operation of libtool (neither would work alone).  First, there is
12392         a new feature that allows libraries to preopen modules.  This
12393         entails a backwards incompatible change to the libltdl API for
12394         separating out the preloaded symbol lists by owner.  Second, in
12395         the tradition of "eating our own dogfood", libltdl now preloads
12396         its own dlloaders.  The internal API for dlloaders has also had to
12397         change in a backwards incompatible way in support of the new
12398         library preloading feature.  If you don't use preloaded libraries,
12399         you needn't change your project sources, though you will need to
12400         recompile against the new libltdl.  The API changes are mostly
12401         confined to dlloaders, so you probably needn't worry about those
12402         (unless you have written a custom loader that you want libltdl to
12403         use):
12405         * configure.ac (AC_CONFIG_FILES): Add libltdl/loaders/Makefile.
12406         * libltdl/configure.ac (AC_CONFIG_FILES): Add loaders/Makefile.
12407         * libltdl/loaders: New directory for module loaders, to simplify
12408         Makefile rules, and to give the loaders themselves names that are
12409         unique in the first few characters.
12410         * libtoolize.in (func_copy_all_files): Copy recursively to pick up
12411         the loaders directory contents.
12412         * libltdl/loaders/Makefile.am: New file.  Move module building
12413         rules to here...
12414         * libltdl/Makefile.am: ...from here.
12415         (VERSION_INFO): Bumped version info to signify interface changes.
12416         (libltdl_la_CPPFLAGS, libltdlc_la_CPPFLAGS): Set LTDLOPEN
12417         appropriately for each library.
12418         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
12419         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
12420         libltdl/loader-loadlibrary.c libltdl/loader-preopen.c,
12421         libltdl/loader-shl_load.c: Moved from here...
12422         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
12423         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
12424         libltdl/loaders/loadlibrary.c libltdl/loaders/preopen.c,
12425         libltdl/loaders/shl_load.c: ...to here.
12426         (get_vtable): New entry function for each.
12427         * libltdl/loaders/preopen.c (lt_dlsymlists_t): Replaced by...
12428         (symlist_chain): ...a new structure which maps lists of preloaded
12429         symbols from the object that loads them.
12430         (lt_dlpreload_open): New function to automatically open all
12431         preloaded modules belonging to a named object (ORIGINATOR).
12432         * libltdl/lt__alloc.c (lt__zalloc): New function to return a block
12433         of zeroed out new memory.
12434         * libltdl/lt__alloc.h (lt__zalloc): Prototype it.
12435         * libltdl/lt__private.h (lt__alloc_die_callback): Add missing
12436         prototype.
12437         (lt__error_strings): Make this opaque to callers.
12438         * libltdl/lt_error.c (lt__error_strings): Move the implementation
12439         to here.
12440         * libltdl/lt_dlloader.h (lt_user_dlloader): Add extra fields to
12441         make originator focused preloading possible.  *BREAKS BACKWARDS
12442         COMPATIBILITY*
12443         (lt_dlloader_add): Take advantage of new fields to simplify
12444         paramater list.
12445         * libltdl/lt_system.h (LT_STR): New ANSI stringification macro.
12446         (LT_CONC): Fix it to work from within macros.
12447         * libltdl/ltdl.c (loader_init, loader_init_callback): Simplify
12448         dlloader loading.
12449         (get_vtable, preloaded_symbols): Point these at the preopen.c
12450         symbols to bootstrap the loader chain.
12451         (lt_dlinit): Load the preopen dlloader manually, and then use it
12452         to load any other preloaded dlloaders.
12453         (lt_dlloader_add): Simplify parameter list. Populate new
12454         fields. Chain new loaders according to priority field.
12455         * libltdl/ltdl.h (lt_dlsymlist): Add a new originator field.
12456         (lt_dlpreload_callback_func): Type of a callback for automatic
12457         lt_dlpreload_open loading.
12458         (LTDL_SET_PRELOADED_SYMBOLS): Adjust to hook into preloaded
12459         symbols from the "@PROGRAM@" originator.
12460         * tests/demo/dlmain.c (main): Use mangled preloaded_symbols symbol.
12461         * tests/pdemo/longer_file_name_dlmain.c (main): Ditto.
12462         * ltmain.in: Don't spew spurious warnings when dlopening and
12463         dlpreopening modules.
12464         (func_generate_dlsyms): Factored out from multiple copies in the
12465         rest of the code. Generate originator keyed symbol lists.
12466         (func_extract_archives): Also factored.  Extract the contents of
12467         convenience archives for linking with dependent libraries when
12468         --whole-archive is not available.
12469         [darwin]: Don't try to link $old_library unless it exists, and
12470         $lib is a bundle.
12471         * m4/ltdl.m4 (AC_LTDL_DLLIB): Check for all possible dynamic
12472         loading libraries/apis rather that stopping when an acceptable one
12473         is discovered.
12474         (LT_DLLOADERS): New variable for holding dlloaders that can be
12475         preloaded.
12476         * doc/libtool.texi: Document interface changes.
12477         * NEWS: Updated.
12479 2004-07-12  Peter O'Gorman  <peter@pogma.com>
12481         * m4/libtool.m4 [darwin]: Set whole_archive_flag_spec to '' for xlc,
12482         or it does not pass it's tests. xlc passes -noall_load (the default)
12483         and when -all_load is also specified Apple's /usr/bin/libtool barfs
12484         and dies.
12486 2004-07-07  Gary V. Vaughan  <gary@gnu.org>
12488         * libltdl/ltdl.h (lt_dlinfo): Move private module field to here...
12489         * libltdl/ltdl.c (lt_dlhandle_struct): ...from here.  Changed all
12490         callers.
12491         * libltdl/loader-loadlibrary.c (sys_wll_open): Use new inteface to
12492         scan loaded handle->info.module fields for previously loaded
12493         modules.
12494         * doc/libtool.texi (User defined module data): Document changes to
12495         the interface.
12496         * NEWS: Updated.
12497         Reported by Chuck Wilson <cwilson@ece.gatech.edu>
12499 2004-07-07  Brad  <brad@comstyle.com>
12501         * m4/libtool.m4: Fixes for the OpenBSD support
12503 2004-06-24  Noah Misch  <noah@cs.caltech.edu>
12505         * ltmain.in: Unset the zsh GLOB_SUBST option, which makes zsh
12506         handle backslash quoting poorly, before doing anything else.
12507         * tests/defs: Likewise.
12509 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
12511         * libtoolize.in (libtoolize_flags): With the --ltdl option, we
12512         libtoolize the libltdl subdirectory automatically.
12513         * m4/ltdl.m4 (AC_WITH_LTDL): Fix overquoted args.
12515 2004-06-21  Peter O'Gorman  <peter@pogma.com>
12517         * ltmain.in (dependency_libs) [darwin]: Remove -framework stuff from
12518         dependency_libs. Instead, invent a new .la var "inherited_linker_flags"
12519         to keep any linker flags which should be used when linking the library,
12520         but are outside the usual -L -l, -R etc that can be used in
12521         dependency_libs. Any unusual flags in dependency_libs cause recent
12522         versions of libtool to die with "cannot find the library `'", so
12523         it is required to move frameworks out of there. :(
12525 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
12527         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>:
12528         * libtoolize.in: Quote $# to make sh.test happy again.
12530         * m4/ltdl.m4 (AC_WITH_LTDL): Remove redundant AC_REQUIRE calls.
12531         Either set variables to allow a client to link with the installed
12532         libltdl, or else compile a local libltdl as a convenience library.
12533         * libtoolize.in (opt_ltdl): Removed in favour of...
12534         (ltdldir): ...this, which is defaulted to "libltdl" or can be set
12535         by the user with an argument to --ltdl.
12536         (Main): Use it!
12537         * doc/libtool.texi (Distributing libltdl): Improved documentation
12538         on libltdl.
12539         (Invoking libtoolize): Document new optional --ltdl target
12540         directory argument.
12542 2004-06-17  Gary V. Vaughan  <gary@gnu.org>
12544         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Fix a typo
12545         in allow_undefined_flag: s,${Wl},${wl},g
12547         * libtoolize.in (func_scan_files): Accept AC_WITH_LTDL as an
12548         indication that libltdl is being used.
12549         (Main): Without AC_CONFIG_MACRO_DIR, don't just dump all the
12550         macro files in `.' since they are never used, and aclocal will
12551         copy them from $aclocaldir into aclocal.m4 anyway.
12552         Reported by Alexandre Duret-Lutz <adl@gnu.org>
12554 2004-06-16  Brad  <brad@comstyle.com>
12556         * m4/libtool.m4: More improvements to OpenBSD support.
12557         * NEWS: Updated.
12559 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
12561         libltdl uses LIBOBJS, which leak out into a parent project if both
12562         share the same configure.ac.  Libtool itself doesn't compile any
12563         code, so it is okay to do it during bootstrap, but other projects
12564         need to treat libltdl as a configurable subproject to keep their
12565         respective LIBOBJS separate:
12567         * libltdl/configure.ac: New file, based on configure.ac.
12568         * libltdl/Makefile.am (AC_LOCAL_AMFLAGS): Use our own m4
12569         directory.
12570         (ltdldata_DATA): List *all* the files that libtoolize --ltdl will
12571         install.
12573 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
12575         Automake 1.9 won't have the AC_PROG_EGREP bug (aclocal used to
12576         pull an old installed libtool.m4 as well as the bootstrap
12577         m4/libtool.m4 if an AC_DEFUN was removed), and we have
12578         lt~obsolete.m4 to work around it in the mean time.  libtoolize
12579         can install macro files from $prefix/share/aclocal perfectly well
12580         without us needing to move to a whole other directory:
12582         * Makefile.am (pkgmacro_DATA): Renamed to aclocal_DATA, so m4
12583         files are installed to $prefix/share/aclocal again.
12584         (install-data-local): Don't remove just installed macros!
12585         * libtoolize.in (pkgmacrodir): Renamed to aclocaldir.
12586         (func_copy_some_files): New function factored out of...
12587         (func_copy_all_files): ...here.  Adjust to use func_copy_some_files.
12588         (re_pkgaux_files): Renamed to glob_pkgaux_files, since it is not
12589         a regular expression.
12590         (re_pkgmagro_files): Replaced with...
12591         (pkgmacro_files): ...a colon delimited list of libtool installed
12592         m4 files from aclocaldir.
12593         (Main): Copy macro files from aclocaldir again.
12594         * NEWS: Updated.
12596 2004-05-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
12598         * ltmain.sh (check_executable): The WIN32 API and MinGW do not support
12599         S_IXOTH and S_IXGRP so use of these modes should be conditional.
12601 2004-05-21  Gary V. Vaughan  <gary@gnu.org>
12603         * tests/tagtrace.test: Forgot to add this file to the repository
12604         for Alexandre's 2004-05-16 patch below.
12606 2004-05-18  Peter O'Gorman  <peter@pogma.com>
12608         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Make this an m4_defun,
12609         test the tags compiler to see if it is GCC, not the CC compiler.
12611 2004-05-16  Alexandre Duret-Lutz  <adl@gnu.org>
12613         * doc/libtool.texi (Invoking libtool): Mention --tag=TAG.
12614         (Tags, Trace interface): New nodes.
12615         * m4/libtool.m4 (LT_SUPPORTED_TAG): New macro.
12616         (_LT_LANG): Call it.
12617         * tests/tagtrace.test: New file.
12618         * tests/Makefile.am
12619         (TESTS): Add tagtrace.test.
12620         * tests/defs: Define AUTOCONF.
12622 2004-05-14  Mike Gorchak  <lestat@i.com.ua>
12624         * ltmain.in: Add new qnx version type support.
12625         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Use it.  Set
12626         ldqnx.so linker type.
12627         (AC_DEPLIBS_CHECK_METHOD): QNX6 uses GNU C++, with deplib
12628         checking, so use pass_all.
12629         (AC_LIBTOOL_PROG_COMPILER_PIC): Use -shared for QNX.
12630         (_LT_LANG_CXX_CONFIG): QNX can make shared libraries.
12631         * m4/ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): QNX opens deplibs on
12632         dlopen.
12633         * NEWS: Updated.
12635 2004-05-05  Peter O'Gorman  <peter@pogma.com>
12637         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Insert space
12638         around = for a test and a comma between runpath_var and $1. Bug
12639         reported by Max Bowsher.
12641 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
12643         * libltdl/argz.h: Moved from here...
12644         * libltdl/argz_.h: ...to here, so as not to shadow system
12645         argz.h when we `#include <argz.h>' for example.
12646         #include stdlib.h and sys/types.h to ensure we get a size_t
12647         definition.
12648         * libltdl/argz.c (HAVE_CONFIG_H): Set it up how ltdl likes it when
12649         used by another client.
12650         * m4/argz.m4: New file.
12651         (gl_FUNC_ARGZ): Try to find an error_t definition, and a system
12652         argz.h.
12653         * m4/ltdl.m4: Use it.
12654         (AC_LTDL_FUNC_ARGZ): Removed.
12655         * libltdl/lt__glibc.h: #include <argz.h> to pick up either the
12656         system argz.h or our libltdl/argz.h if necessary.
12657         * libltdl/Makefile.am (libltdl_la_SOURCES): Move argz.h from
12658         here...
12659         (ltdldata_DATA): ...here. Along with argz.c.
12660         (argz.h): Generate from argz_.h if the system file is missing.
12661         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12663 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
12665         According to Howard Chu <hyc@highlandsun.com>:
12666         Applications should assume that the native dlopen is NOT
12667         thread-safe, and take care of locking themselves. All application
12668         calls into libltdl should thus be protected by the caller.
12670         * libltdl/lt_mutex.c, libltdl/lt_mutex.h: Removed.
12671         * libltdl/Makefile.am (pkginclude_HEADERS): Removed lt_mutex.h.
12672         (libltdl_la_SOURCES): Removed lt_mutex.c and lt_mutex.h.
12673         * libltdl/ltdl.h: Don't include lt_mutex.h.
12674         * libltdl/lt__private.h (LT__MUTEX_GETERROR, LT__MUTEX_SETERROR)
12675         (LT__MUTEX_SETERRORSTR): Renamed to...
12676         (LT__GETERROR, LT__SETERROR, LT__SETERRORSTR): ...this.  Changed
12677         all callers.
12678         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, lt_dlmutex_lock)
12679         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror):
12680         Removed.  Changed all callers.
12681         * doc/libtool.texi (Thread Saftey in libltdl):
12682         * NEWS: Updated.
12684 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
12686         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Detect Intel C++ compiler
12687         version more idiomatically.
12689 2004-04-19  Albert Chin-A-Young  <china@thewrittenword.com>
12691         * m4/libtool.m4: Use cc rather than ld to created
12692         a shared library on HP-UX 11.x. On HP-UX 10.x, the
12693         C compiler doesn't grok -b so we continue to use ld.
12695         * m4/libtool.m4: Use cc rather than ld to create a
12696         shared library on Solaris. When using the Sun
12697         Workshop compiler 5.0 (and I presume any previous
12698         version), revert to ld due to compiler errors.
12700         * m4/libtool.m4: Use cc rather than ld to created
12701         a shared library on Tru64 UNIX.
12703         * m4/libtool.m4: Use cc rather than ld to created
12704         a shared library on IRIX.
12706         * libltdl/loader-shl_load.c: Fix typos during reorg.
12708 2004-04-19  Alexandre Duret-Lutz  <adl@gnu.org>
12710         * doc/libtool.texi (LT_INIT): Properly display options in a table.
12712 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
12714         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Intel C++ compiler 8.0 and
12715         newer adds predep_objects and postdep_objects itself, so don't
12716         duplicate them in $archive_cmds and $archive_expsym_cmds.
12717         * NEWS: Updated.
12718         Reported by Roberto Bagnara <bagnara@cs.unipr.it>
12720 2004-04-17  Peter O'Gorman  <peter@pogma.com>
12722         * libltdl/loader-dyld.c: Fix compilation issues. Set Original author
12723         to me.
12725 2004-04-17  Todd Vierling  <tv@duh.org>,
12726         Peter O'Gorman  <peter@pogma.com>
12728         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use sysctl to get the
12729         max cmd length on BSD* and darwin. Make sure that there is a safety
12730         factor too.
12732 2004-04-15  Scott James Remnant  <scott@netsplit.com>
12734         * m4/libtool.m4 (_LT_LANG_DEFAULT_CONFIG): Remove code to handle 'none'
12735         and 'all' options, this now always assumes automatic mode as that
12736         works so well.
12737         (_LT_LANG_DEFAULT): Remove definition
12738         * m4/ltoptions.m4: Remove 'no-lang', 'auto-lang' and 'all-lang' options.
12739         * configure.ac: Invoke LT_LANG for each desired supported language.
12740         * doc/libtool.texi: Remove documentation for the LT_INIT options,
12741         rewrite LT_LANG documentation.
12743 2004-04-14  Alexandre Duret-Lutz  <adl@gnu.org>
12745         * bootstrap: Delete acinclude.m4.
12747 2004-04-14  Gary V. Vaughan  <gary@gnu.org>
12749         * libtoolize.in (configure_ac): Don't complain about the lack of
12750         aclocal.m4.
12751         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
12753 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
12755         * m4/ltdl.m4 (AC_LIB_LTDL): Remove AC_REPLACE_FUNCS for memmove
12756         and strcpy.
12758         * libltdl/lt__pre89.h, libltdl/memcpy.c, libltdl/memmove.c,
12759         libltdl/strchr.c, libltdl/strcmp.c, libltdl/strrchr.c: Remove
12760         half-assed pre-c89 support entirely.
12761         * libltdl/lt__private.h: Don't refer to lt__pre89.h.
12762         * libltdl/Makefile.am (ltdldata_DATA): Remove references to
12763         deleted files.
12764         * NEWS: Mention it.
12766         * libltdl/lt__pre89.h, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/argz.c,
12767         libltdl/argz.h, libltdl/lt__glibc.h, libltdl/lt_dlloader.h,
12768         libltdl/lt__dirent.c, libltdl/lt__dirent.h, libltdl/lt__private.h,
12769         libltdl/lt__alloc.c, libltdl/lt__alloc.h, libltdl/lt_system.h,
12770         libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
12771         libltdl/loader-dyld.c,  libltdl/loader-loadlibrary.c,
12772         libltdl/loader-shl_load.c, libltdl/lt_error.h, libltdl/lt_mutex.h:
12773         Autoconf either defines to 1 or undefs the discovery macros it
12774         puts in config.h, and many (non-GNU) compilers throw a spurious
12775         warning when testing an #undef macro with #if.  For consistency,
12776         while we are touching all these lines, use defined(MACRO) style
12777         throughout.
12778         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
12780 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
12782         Factor out the individual loaders, in preparation for preloading
12783         them as libtool modules.  Currently loader-preopen.c is linked
12784         unconditionally and other appropriate loaders discovered by
12785         AC_LTDL_DLLIB are built and linked in:
12787         * libltdl/Makefile.am (libltdl_la_SOURCES): Add loader-preopen
12788         module.
12789         * m4/ltdl.m4 (AC_LTDL_DLLIB): Use AC_LIBOBJ to add appropriate
12790         loaders to libltdl.
12791         * libltdl/lt_system.h (LT_SCOPE): Moved to here.
12792         * libltdl/ltdl.h (lt_dlloader, lt_user_data, lt_module)
12793         (lt_module_open, lt_module_close, lt_find_sym, lt_dlloader_exit)
12794         (struct lt_user_dlloader, lt_dlloader_next, lt_dlloader_find)
12795         (lt_dlloader_name, lt_dlloader_data, lt_dlloader_add)
12796         (lt_dlloader_remove): Moved declarations...
12797         * libltdl/lt_loader.h: ...to here.
12798         * libltdl/ltdl.c: Include lt_loader.h.  Move loader implementation
12799         code from here...
12800         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
12801         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
12802         libltdl/loader-loadlibrary.c, libltdl/loader-preopen.c,
12803         libltdl/loader-shl_load.c: ...to here.
12804         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
12805         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
12806         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
12807         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (AM_CPPFLAGS):
12808         Add -I$(top_srcdir)/../.. so that libltdl include files can be
12809         written as #include <libltdl/lt_dlloader.h> and found correctly.
12811 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
12813         Factor out the mutex handling and error handling into their own
12814         modules.  Mutex handling is not currently useful in combination
12815         with posix threads, and should be easier to replace if it is in a
12816         separate module.  Additionally, we can factor out the loaders in
12817         such a way as to depend on only the portability layer and these
12818         new mutex and error modules now:
12820         * libltdl/Makefile.am (pkginclude_HEADERS): Install lt_error.h and
12821         lt_mutex.h to $includedir/libltdl.
12822         (libltdl_la_SOURCES): Build lt_error and lt_mutex objects.
12823         * libltdl/ltdl.h (LT_SCOPE): Moved from here...
12824         * libltdl/lt_system.h (LT_SCOPE): ...to here.
12825         * libltdl/ltdl.c (lt_dlerror_strings, LT_DLSTRERROR): Moved from
12826         here...
12827         * libltdl/lt__private.h (lt__error_strings, LT__STRERROR): ...to
12828         here as additional internal interfaces to lt_error.  Changed all
12829         callers.
12830         * libltdl/ltdl.c (LT_DLMUTEX_LOCK, LT_DLMUTEX_UNLOCK)
12831         (LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR, lt_dlmutex_lock_func)
12832         (lt_dlmutex_unlock_func, lt_dlmutex_geterror_func)
12833         (lt_dllast_error): Moved from here...
12834         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, LT__MUTEX_SETERRORSTR)
12835         (LT__MUTEX_GETERROR, lt__mutex_lock_func, lt__mutex_unlock_func)
12836         (lt__mutex_geterror_func, lt__last_error): ...to here as
12837         additional internal interfaces to lt_mutex.  Changed all callers.
12838         (LT_MUTEX_SETERROR): Take an errorcode rather than a string.
12839         Changed all callers.
12840         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dlmutex_register): Moved from
12841         here...
12842         * libltdl/lt_mutex.c, libltdl/lt_mutex.h (lt_dlmutex_register):
12843         ...to here. New files.
12844         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dladderror, lt_dlseterror)
12845         (lt_dlerror_table):
12846         Moved from here...
12847         * libltdl/lt_error.c, libltdl/lt_error.h (lt_dladderror)
12848         (lt_dlseterror, lt_dlerror_table): ...to here. New files.
12850 2004-04-13  Scott James Remnant  <scott@netsplit.com>
12852         * Makefile.am (XDELTA_OPTIONS): Remove --pristine as that
12853         generates huge xdeltas.
12855 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
12857         * libltdl/ltdl.c (argz_append, argz_create_sep, argz_insert)
12858         (argz_next, argz_stringify): Move from here...
12859         * libltdl/argz.c: New file. ...to here.
12860         * libltdl/lt__glibc.h: New file. Rename global symbols into the
12861         lt__ namespace.
12862         * libltdl/lt__private.h: Include lt__glibc.h.
12863         * libltdl/Makefile.am (libltdl_la_SOURCES): Add new files.
12864         (AM_CPPFLAGS): Add -DLTDL.
12865         * libltdl/argz.h (argz_append, argz_create_sep, argz_insert)
12866         (argz_next, argz_stringify): New file. Declare argz functions
12867         here, including lt__glibc.h when LTDL is defined to rename global
12868         symbols for libltdl.
12869         * m4/ltdl.m4 (AC_LTDL_FUNC_ARGZ): Add argz to AC_LIBOBJ if any of
12870         our argz_* functions are missing from the system libraries.
12872         * libltdl/ltdl.c: Move standard headers and preprocessor guards
12873         from here...
12874         * libltdl/lt__private.h: ...to here.  New file to declare ltdl's
12875         internal interfaces.
12876         * libltdl/ltdl.c: Include lt__private.h.
12877         * m4/ltdl.m4 (AC_LIB_LTDL): Add lt_dirent to AC_LIBOBJ if all of
12878         opendir, readdir and closedir are missing.
12879         (AC_CHECK_HEADERS): Remove assert.h, ctype.h, errno.h, malloc.h,
12880         stdio.h and stdlib.h; these headers are all available in standard
12881         c89 environments and newer.
12882         * libltdl/lt__private.h: Include them here unconditionally.
12883         * libltdl/lt__dirent.c (opendir, readdir, closedir): New file.
12884         Windows dirent emulation functions moved to here...
12885         * libltdl/ltdl.c (opendir, readdir, closedir): ...from here.
12886         * libltdl/lt__dirent.h: New file.  Rename the global symbols from
12887         lt__dirent.c into the lt__ namespace so they don't clash with
12888         other libraries.
12890 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
12892         Factor out the bottom portability layer from ltdl.  Code in this
12893         layer has global symbols renamed by lt__pre89.h, and may not
12894         refer to any symbols except those provided by the system libraries
12895         or other code in the portability layer:
12897         * libltdl/lt__pre89.h: New file.  Rename all the symbols from
12898         LTLIBOBJS into the lt__ namespace so that they don't clash with
12899         other libraries.
12900         * libltdl/ltdl.c (rpl_memcpy, rpl_memmove, rpl_strchr, rpl_strcmp)
12901         (rpl_strrchr): Moved from here...
12902         * libltdl/memcpy.c (memcpy): ...to here, and fixed void *
12903         dereference bug...
12904         * libltdl/memmove.c (memmove): ...to here, and fixed void *
12905         dereference bug...
12906         * libltdl/strchr.c (strchr): ...to here...
12907         * libltdl/strcmp.c (strcmp): ...here...
12908         * libltdl/strrchr.c (strrchr): ...and here.
12909         * libltdl/Makefile.am (libltdl_la_SOURCES): Add lt__pre89.h.
12910         (libltdl_la_LIBADD, libltdlc_la_LIBADD): Add $(LTLIBOBJS).
12911         (ltdldata_DATA): Add replacement sources files.
12912         * m4/ltdl.m4 (AC_LIB_LTDL): Do careful config.h and LTLIBOBJ
12913         setting for missing pre89 functions.
12915 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
12917         * libltdl/ltdl.h (LT_PARAMS): Removed.  Changed all users to
12918         ANSI prototypes.
12919         (lt_ptr): Keep backwards compatibility stub.
12920         * libltdl/ltdl.c, libltdl/ltdl.h: Use ANSI function declarations
12921         throughout.  s/lt_ptr/void */g.
12923 2004-04-08  Fredrik Estreen  <estreen@algonet.se>
12925         * m4/ltdl.m4: Rename shrext to shrext_cmds here too.
12927 2004-04-06  Gary V. Vaughan  <gary@gnu.org>
12929         There was no clean separation of abstraction layers in libltdl.
12930         The first step in fixing this is to factor out the memory
12931         management abstraction, making a start on removing promiscuity
12932         from the underlying portability layer:
12934         * doc/libtool.texi (Libltdl interface): Remove lt_dlmalloc,
12935         lt_dlrealloc and lt_dlfree references.  The memory management
12936         layer used by libltdl is now private.
12937         * libltdl/lt_system.h: New installed header for system portability
12938         abstraction.
12939         * libltdl/ltdl.h: Use it.
12940         * libltdl/lt__alloc.c, libltdl/lt__alloc.h: New module above
12941         system portability layer to abstract ltdl's memory management.
12942         * libltdl/ltdl.c: Use lt__alloc.h.
12943         (closedir): Use free.
12944         (opendir): Use malloc/free.
12945         (lt__xalloc_die_callback): Report memory failures through
12946         lt_dlerror.
12947         (lt_dlinit): Use it to initialise memory management.
12948         (LT_DLMALLOC, LT_DLREALLOC, LT_DLFREE, LT_EMALLOC, LT_EREALLOC)
12949         (rpl_strdup, rpl_realloc, lt_estrdup, lt_emalloc, lt_erealloc):
12950         Removed in favour of...
12951         (lt__strdup, lt__memdup, MALLOC, REALLOC, FREE): ...these calls
12952         from libltdl/lt__alloc.h.  Changed all callers.
12953         (rpl_argz_append, rpl_argz_create_sep, rpl_argz_insert): As part
12954         of the portability layer, these functions no longer use libltdl
12955         memory management API.
12956         (free_vars): Factored out.
12957         (LT_DLMEM_REASSIGN): While redoing memory handling, renamed...
12958         * libltdl/lt__alloc.h (MEMREASSIGN): ...to this.
12959         * libltdl/Makefile.am (AUTOMAKE_OPTIONS): Let automake track
12960         dependencies automatically.
12961         (pkgincludedir): Override from parent package's setting.
12962         (pkginclude_HEADERS): Install lt_system.h.
12963         (libltdl_la_SOURCES): Add new files.
12964         * NEWS: Updated.
12965         Reported by Dalibor Topic <robilad@kaffe.org>
12967 2004-04-01  Peter O'Gorman  <peter@pogma.com>
12969         * ltmain.in: Remove an extra eval concat_cmds that some idiot added.
12970         Fixes double eval on AIX, reported by Albert Chin and Uwe Moeller.
12972         * NEWS: Add a news item about xlc support that I forgot yesterday.
12974 2004-03-31  Peter O'Gorman  <peter@pogma.com>
12976         * m4/libtool.m4, ltmain.in (darwin): Support IBM's xlc and xlc++.
12978 2004-03-31  Gary V. Vaughan  <gary@gnu.org>
12980         * m4/libtool.m4 (_LT_LANG_C_CONFIG): If $compiler is not set, then
12981         don't call the macros that test it.
12982         (_LT_LANG_CXX_CONFIG): Ditto.
12983         (_LT_LANG_F77_CONFIG): Ditto.
12984         (_LT_LANG_GCJ_CONFIG): Ditto.
12985         (_LT_LANG_RC_CONFIG): Ditto.
12987 2004-03-30  Gary V. Vaughan  <gary@gnu.org>
12989         * libtoolize.in (func_scan_files): sed BRE have no alternation, so
12990         break LT_INIT matcher out.
12991         (func_serial): Don't escape literal parens for grep BRE.
12993         * m4/libtool.m4 (LT_INIT): aclocal can't see AC_DEFUN_ONCE, so use
12994         AC_DEFUN and m4_define.
12995         * libtoolize.in (func_serial): No longer accept AC_DEFUN_ONCE...
12996         (func_grep): ...so mere grep is sufficient again...
12997         (EGREP): ...and this is no longer required.
12999 2004-03-29  Gary V. Vaughan  <gary@gnu.org>
13001         * m4/libtool.m4: Use LT_INIT as #serial tag.
13002         * libtoolize.in: Grok LT_INIT!  Pass A[CM]_PROG_LIBTOOL to...
13003         (func_serial_update): ...here, we now take an additional parameter
13004         containing another regex to match ancient serialed files.
13005         (func_serial): Accept AC_DEFUN_ONCE of the #serial tag...
13006         (func_grep): ...which requires egrep...
13007         (EGREP): ...substituted by config.status.
13008         (func_scan_files): Set seen_libtool if LT_INIT goes by.
13010         * Makefile.am (pkgmacro_DATA): Install ltoptions.m4.
13012         * libltdl/Makefile.am (AM_CPPFLAGS): Also check $top_builddir for
13013         config.h.
13014         (ltdl.o): config.h is in $top_builddir.
13016 2004-03-24  Scott James Remnant  <scott@netsplit.com>
13018         * NEWS: Explain more fully why we no longer load libraries
13019         with global symbol resolution.
13020         * doc/libtool.texi (libtool script contents): Add missing
13021         documentation for 'inherit_rpath' variable.
13023         * configure.ac: Catch errors during calls to AC_PROG_CXX,
13024         AC_PROG_CXXCPP and AC_PROG_F77 before LT_INIT.  Only set the
13025         HAVE_CXX and HAVE_F77 conditions to true if an error didn't
13026         occur (AC_PROG_CXX leaves CXX="g++" even if it didn't find one).
13027         Set HAVE_GCJ and HAVE_RC to true correctly as well.
13028         * m4/libtool.m4 (LT_PROG_GCJ): If AC_PROG_GCJ or AM_PROG_GCJ are
13029         defined, expand to the definition of those instead of our own.
13030         Define GCJ to '' instead of 'no' if not found.
13031         (LT_PROG_RC) Define RC to '' instead of 'no' if not found.
13032         (_LT_LANG_GCJ_CONFIG): Require LT_PROG_GCJ to be expanded first.
13033         (_LT_LANG_RC_CONFIG): Require LT_PROG_RC to be expanded first.
13035         * libltdl/ltdl.c (sys_dl_open): Don't load libraries with global
13036         symbol resolution.
13037         * NEWS: Updated.
13039 2004-03-24  Albert Chin-A-Young  <china@thewrittenword.com>
13041         * m4/libtool.m4: Add new variable, inherit_rpath, if the
13042         RPATHs of the libraries being linked are inherited in
13043         the output file. For systems with a linker exhibiting
13044         this feature, programs/libraries must be relinked at
13045         installation time.
13047         * m4/libtool.m4: When linking convenience libraries on Solaris
13048         with the Sun C++ compiler, pass convenience libraries through
13049         to the linker with -Qoption between allextract/defaultextract.
13050         The Sun C++ compiler bundles -Qoption arguments so
13051         convenience libraries are linked with defaultextract
13052         otherwise.
13053         * tagdemo/Makefile.am, tagdemo/main.cpp, tagdemo/conv.h,
13054         tagdemo/conv.cpp: Augment tagdemo test to link a convenience
13055         library with a libtool library.
13057         * ltmain.in: Piecewise linking doesn't work when the output
13058         file is an absolute path, use the basename only instead.
13060         * ltmain.in: When a library is installed, dependent on a
13061         convenience library, and it involves relinking, the object
13062         files extracted from the convenience library are not removed
13063         after the relink. This is a problem if you build as non-root,
13064         install as root, then try to remove the build directory as
13065         non-root; Clean up properly if relink fails; Change
13066         "$realname"U to ${realname}T to be consistent.
13068 2004-03-24  Scott James Remnant  <scott@netsplit.com>
13070         * ltmain.in <prog linkmode>: Always add -L options to
13071         $newlib_search_path instead of just in scan mode to ensure that
13072         non-libtool libraries in user-specified directories can be found.
13074 2004-03-22  Scott James Remnant  <scott@netsplit.com>
13076         * m4/libtool.m4 (_LT_CONFIG): Remove unneeded else condition
13077         code, now the support determination is done in m4.
13078         (_LT_LANG): Correct comment, unexpected leak from keybuk-lt-tag.patch.
13080 2004-03-21  Scott James Remnant  <scott@netsplit.com>
13082         * libltdl/Makefile.am (libltdl_la_LDFLAGS): Increment CURRENT
13083         and AGE of libltdl, warranted by the addition of lt_dlhandle_find()
13084         since 1.5.2.
13086 2004-03-21  Scott James Remnant  <scott@netsplit.com>
13088         Further sweeping changes to the user interface to libtool from
13089         `configure.ac' to allow users to better control the list of
13090         supported languages.  Three LT_INIT options 'no-lang', 'all-lang'
13091         and 'auto-lang' (the default) control the initial list and others
13092         may be added with LT_LANG.
13094         * m4/libtool.m4 (_LT_CONFIG): Renamed AC_LIBTOOL_CONFIG to _LT_CONFIG
13095         which is more consistent with our own namespace and gets us further out
13096         of Autoconf's.
13097         (_LT_LIBTOOL_TAGS): Output available_tags variable based entirely
13098         on the value of _LT_TAGS.
13099         (_LT_COPYING): Call _LT_LIBTOOL_TAGS to output available tags,
13100         always append tag configuration if the tag is available.
13101         (LT_LANG): New macro to enable support for a language that accepts
13102         tag names (eg. "CXX") or human language names (eg. "C++").
13103         (_LT_LANG): Internal support macro for above that appends the
13104         tag to _LT_TAGS and calls the appropriate config macro.
13105         (LT_INIT): Ensure that LT_LANG is not called before LT_INIT.
13106         (AC_LIBTOOL_TAGS): Removed, call LT_LANG for each language now.
13107         (_LT_AC_TAG_CHECK): Removed, _LT_LANG handles duplicate calls.
13108         (_LT_LANG_DEFAULT_CONFIG): Macro to set initial language support
13109         based on options passed to LT_INIT.
13110         (_LT_SETUP): Call _LT_LANG_DEFAULT_CONFIG.
13111         (_LT_AC_TAG_CONFIG): Removed, handled by _LT_LANG_DEFAULT_CONFIG.
13112         (_LT_AC_LANG_CXX, _LT_AC_LANG_F77, _LT_AC_LANG_GCJ): Removed,
13113         automatic language support inclusion now handled by
13114         _LT_LANG_DEFAULT_CONFIG.
13115         (AC_LIBTOOL_CXX): Obsolete macro, update to LT_LANG(C++).
13116         (AC_LIBTOOL_F77): Obsolete macro, update to LT_LANG(Fortran 77).
13117         (AC_LIBTOOL_GCJ): Obsolete macro, update to LT_LANG(Java).
13118         (AC_LIBTOOL_LANG_C_CONFIG_: Removed.
13119         (_LT_AC_LANG_C_CONFIG): Renamed to _LT_LANG_C_CONFIG, call
13120         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
13121         (_LT_SETUP): Replace call to AC_LIBTOOL_LANG_C_CONFIG with call to
13122         new _LT_LANG_C_CONFIG macro.
13123         (AC_LIBTOOL_LANG_CXX_CONFIG): Removed.
13124         (_LT_AC_LANG_CXX_CONFIG): Renamed to _LT_LANG_CXX_CONFIG, call
13125         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
13126         (AC_LIBTOOL_LANG_F77_CONFIG): Removed.
13127         (_LT_AC_LANG_F77_CONFIG): Renamed to _LT_LANG_F77_CONFIG, call
13128         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
13129         (AC_LIBTOOL_LANG_GCJ_CONFIG): Removed.
13130         (_LT_AC_LANG_GCJ_CONFIG): Renamed to _LT_LANG_GCJ_CONFIG, call
13131         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
13132         (AC_LIBTOOL_LANG_RC_CONFIG): Removed.
13133         (_LT_AC_LANG_RC_CONFIG): Renamed to _LT_LANG_RC_CONFIG, call
13134         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
13135         (LT_AC_PROG_GCJ): Renamed to LT_PROG_GCJ.
13136         (LT_AC_PROG_RC): Renamed to LT_PROG_RC.
13137         * m4/ltoptions.m4: Define new 'no-lang', 'auto-lang' and 'all-lang'
13138         options which set the default for _LT_LANG_DEFAULT_CONFIG.
13139         * m4/lt~obsolete.m4: Removed AC_LIBTOOL_CONFIG, _LT_AC_LANG_C_CONFIG,
13140         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG; all of which are no
13141         long referenced in any way.
13142         * configure.ac: Enable all languages.
13143         * tests/cdemo/configure.ac, tests/demo/configure,ac,
13144         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
13145         tests/mdemo/configure.ac, tests/pdemo/configure,ac,
13146         tests/tagdemo/configure.ac: Remove calls to AC_LIBTOOL_TAGS,
13147         the default 'auto-lang' mode now does the right thing.
13148         * doc/libtool.texi (The LT_INIT macro): Add documentation for
13149         new LT_INIT options and the LT_LANG macro, replacing the old
13150         documentation of AC_LIBTOOL_TAGS which is no more.
13151         * NEWS: Updated.
13153 2004-03-17  Scott James Remnant  <scott@netsplit.com>
13155         * m4/libtool.m4: Removed AC_BEFORE references to AC_LIBTOOL_SETUP
13156         which is no more.
13157         * m4/lt~obsolete.m4: As AC_LIBTOOL_SETUP is no longer referenced,
13158         it can be removed from this file.  Remove _AC_PROG_LIBTOOL also.
13160 2004-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13162         * m4/libtool.m4: Remove newlines from lt_ld_extra, so
13163         variable can safely be stored in config.cache.
13165 2004-03-14  Michael Pruett  <michael@68k.org>
13167         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS0 [irix]: Define
13168         archive_expsym_cmds so that --export-symbols will work.
13170 2004-03-11  Peter O'Gorman  <peter@pogma.com>
13172         * ltmain.in (link_all_deplibs,darwin): Link libraries in the
13173         correct order. Bug from Zachary Pincus <zpincus@stanford.edu>.
13175 2004-03-14  Scott James Remnant  <scott@netsplit.com>
13177         * m4/ltmain.in: Only check precious_files_regex if it is not empty.
13179 2004-03-14  Gary V. Vaughan  <gary@gnu.org>
13181         * doc/libtool.texi (Autoconf and LTLIBOBJS): The correct version
13182         of Autoconf is 2.54.
13183         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
13185 2004-03-13  Gary V. Vaughan  <gary@gnu.org>
13187         * doc/libtool.texi (Using Automake): Cite correct Automake version
13188         for -dlopen quoting.
13189         (Autoconf and LTLIBOBJS): Cite correct Autoconf versions
13190         throughout.
13191         (Distributing libltdl): Use AM_CPPFLAGS; INCLUDES is deprecated.
13192         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
13194 2004-03-05  David Edelsohn  <edelsohn@gnu.org>
13196         * m4/libtool.m4: Disable building static libraries if building
13197         shared libraries on AIX 5L.
13199 2004-03-05  Gary V. Vaughan  <gary@gnu.org>
13201         * libtoolize.in: Remove --ltdl-tar.  It doesn't work with the
13202         current implementation, and seems more or less pointless.
13203         * doc/libtool.texi (Invoking libtoolize): Updated.
13204         * NEWS: Updated.
13206         * doc/libtool.texi: This manual has not been maintained properly
13207         for a number of years.  Much of what it said was outdated, or
13208         plain wrong with reference to modern autotools.  This change
13209         represents a first pass edit to clean up the obviously wrong.
13211 2004-03-02  Gary V. Vaughan  <gary@gnu.org>
13213         * bootstrap: Prune out my arch mirror dir before running
13214         amok through the tree with 'rm -rf'!
13216 2004-03-02  Patrick Welche  <prlw1@newn.cam.ac.uk>
13218         * doc/libtool.texi (LT_INIT): Dumb typos fixed.
13220 2004-02-23  Gary V. Vaughan  <gary@gnu.org>
13222         * ltmain.in <install mode>: Add missing --help doc for
13223         -inst-prefix option.
13225         * ltmain.in <link mode>: Add missing --help doc for -shrext
13226         option.
13228         * ltmain.in (IFS): Move '\n' to beginning of IFS so that emacs
13229         doesn't offer to strip trailing ' \t' on every save.
13231         * ltmain.in: Add missing --help doc for --preserve-dup-deps.
13233 2004-02-22  Gary V. Vaughan  <gary@gnu.org>
13235         * Makefile.maint (web-manual): Generate the web manual carefully
13236         so that links will still work when it is uploaded to gnu.org.
13237         * README-alpha: Note that this rule should be used at release
13238         time.
13240 2004-02-20  Gary V. Vaughan  <gary@gnu.org>
13242         Sweeping changes to the user interface to libtool from
13243         `configure.ac' to be more like AC_INIT and accept a space
13244         delimited list of options.  Instead of calling `AC_LIBTOOL_DLOPEN;
13245         AC_PROG_LIBTOOL', we now recommend `LT_INIT([dlopen])':
13247         * m4/libtool.m4 (AC_PROG_LIBTOOL, _AC_PROG_LIBTOOL)
13248         (AC_LIBTOOL_SETUP): Removed.  Added AU_DEFUNs.
13249         (LT_INIT): Replace with an Autoconf like interface which accepts a
13250         version number as a minimum required libtool release at configure
13251         time.
13252         * m4/ltoptions.m4: New file inspired by automake/m4/amoptions.m4,
13253         which additionally flags an error if the configuring libtool
13254         macros are not new enough according to LT_INIT.
13255         (LT_OPTION_DEFINE): New macro to declare option handlers.
13256         (dlopen, win32-dll, shared, disable-shared, static)
13257         (disable-static, fast-install, disable-fast-install, pic-only)
13258         (no-pic): Newly LT_OPTION_DEFINEd option handlers that use...
13259         (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC, _LT_ENABLE_FAST_INSTALL)
13260         (_LT_WITH_PIC, _LT_WIN32_DLL): New macros to handle
13261         LT_LIBTOOL_INIT options...
13262         * m4/libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC)
13263         (AC_ENABLE_FAST_INSTALL, AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL):
13264         ...to replace these user interface macros, now defined as
13265         AU_DEFUNs.
13266         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
13267         Removed.  No longer required with LT_INIT_LIBTOOL interface.
13268         Added AU_DEFUNs.
13269         (AM_ENABLE_SHARED, AM_DISABLE_SHARED, AM_ENABLE_STATIC)
13270         (AM_DISABLE_STATIC): Changed AU_DEFUNs to match new interface.
13271         (_LT_SETUP): Internal to LT_INIT, replaces AC_LIBTOOL_SETUP.
13272         * m4/lt~obsolete.m4 (AC_LIBTOOL_SETUP, _AC_PROG_LIBTOOL)
13273         (_LT_PROG_LTMAIN):  More AC_DEFUNs that have been retracted.
13274         * configure.ac: Use new interface.
13275         * doc/libtool.texi: Document new interface.
13276         * NEWS: Updated.
13278 2004-02-18  Gary V. Vaughan  <gary@gnu.org>
13280         * commit (SHELL): Set it explicitly, incase some madman is using
13281         tcsh as their login shell :-b
13283 2004-02-15  Scott James Remnant  <scott@netsplit.com>
13285         * Makefile.am (m4/ltversion.m4): Generate serial number by
13286         removing initial '1.' from the revision, replace @MACRO_SERIAL@
13287         with this new variable.
13288         * m4/ltversion.in: Use @MACRO_SERIAL@ for the serial number
13289         as some shells don't like a '.' when using test.
13291         * m4/ltversion.in: Add a serial number to this file otherwise
13292         libtoolize will refuse to copy it into $pkgdatadir, where it
13293         is needed by m4/libtool.m4.
13295 2004-02-15  Peter O'Gorman  <peter@pogma.com>
13297         * m4/libtool.m4, ltmain.in: Rename shrext to shrext_cmds.
13299 2004-02-13  Scott James Remnant  <scott@netsplit.com>
13301         * ltmain.in, libtoolize.in, commit, config/mailnotify: Correctly
13302         quote usage of $basename and $dirname to avoid (unlikely) path
13303         expansion.
13305         * tests/sh.test: Test the config/ltmain.sh and libtoolize in the
13306         build directory not the source directory, where they won't exist
13307         during 'make distcheck'.
13308         * ltmain.in: Revert one line of previous intendation clean-up
13309         to enable one of the sh.test checks to pass.
13311         * tests/cdemo/configure.ac: Drop AC_PREREQ back to 2.54, this
13312         was debris from Gary's cvsapply going mad and wasn't backed
13313         out.
13315         * Makefile.am (pkgmacro_DATA): We have to distribute
13316         m4/ltversion.m4 because it can be needed before the Makefile
13317         that generates it exists.
13319 2004-02-13  Gary V. Vaughan  <gary@gnu.org>
13321         * commit (MKSTAMP): Look for mkstamp in the right place.
13323 2004-02-12  Scott James Remnant  <scott@netsplit.com>
13325         * Makefile.maint, Makefile: Move rules intended for Libtool
13326         maintainers only out of the Makefile we distribute and into one
13327         that we only need keep in CVS.
13328         * README-alpha: Add -fMakefile.maint to the instructions where
13329         needed.
13331 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>
13332         Scott James Remnant  <scott@netsplit.com>
13334         * ltmain.in: Fix typo: duplcations -> duplications,
13335         Fix indentation of a handful of badly indented blocks,
13336         Fix last remaining use of 'grep' to $GREP,
13337         Remove unnecessary trailing slash where we break a line on a
13338         command separator.
13339         * m4/libtool.m4: Also remove unnecessary trailing slash where
13340         we break a line on a command separator.
13342 2004-02-12  Scott James Remnant  <scott@netsplit.com>
13344         * m4/ltoptions.m4: This got committed by an over-keen Gary,
13345         but the support for this isn't ready yet and if aclocal decides
13346         to m4_include this (which it will) you'll get a non-functioning
13347         libtool.  Removed.
13349         * ltmain.in: Remove duplicated version checking block.
13351         * bootstrap, m4/libtool.m4: Argh, Gary went crazy after cvsapply
13352         went crazy and backed out more than he should've.  This patch puts
13353         some of it back again.
13355         * ltmain.in, libtoolize.in, commit, config/mailnotify: Remove
13356         $SED from definitions of $dirname and $basename and prefix each
13357         use with it instead.  Some shells (zsh) treat the expansion as
13358         a single command instead of a command with arguments.
13360         * config/mailnotify (func_sendmail): Look for sendmail in a
13361         couple of common non-PATH locations as well.
13363         * ltmain.in: Fix typo: macro's -> macros.
13365         * ltmain.in: Correct definition of basename sed expression to
13366         not include single quotes.
13368 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
13370         * libtoolize.in: Use $progpath as for ltmain.in to work around the
13371         IRIX bug described below.
13372         * commit, config/mailnotify: Ditto. Resynch with cvs-utils HEAD.
13374 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>,
13375             Gary V. Vaughan  <gary@gnu.org>
13377         * ltmain.in (progpath): Work around backward compatibility issue
13378         on IRIX 6.5. On IRIX 6.4+, sh is ksh but when the shell is invoked
13379         as "sh" and the current value of the _XPG environment variable is
13380         not equal to 1 (one), the special positional parameter $0, within
13381         a function call, is the name of the function. So, rather than
13382         using "$0" in functions, we set $progpath in the body and use that
13383         everywhere instead (incase of code refactoring later).
13384         (EXIT_SUCCESS, EXIT_FAILURE, EXIT_MISMATCH): For clarity.
13386 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
13388         * Makefile.am (EXTRA_DIST): Remove config/mailnotify after all; it
13389         is of no use in a distribution tarball.
13391 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
13393         * commit: Fix cut-n-paste error.
13395         * commit: Completely change CVS/Root->name sed script to actually
13396         work when :ext: is not shown.
13398         * commit: Improve CVS/Root->name sed script to work when :ext: is
13399         not shown.
13401 2004-02-11  Albert Chin-A-Young  <china@thewrittenword.com>
13403         * m4/libtool.m4: Fix typo: testring -> teststring.
13405 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
13407         * commit: Mail a nicer commit notification.
13409 2004-02-10  Gary V. Vaughan  <gary@gnu.org>
13411         * NEWS, bootstrap, configure.ac, ltmain.in, m4/libtool.m4:
13412         * m4/lt~obsolete.m4, tests/cdemo/configure.ac: Arghh.  cvsapply just
13413         went crazy and committed a bunch of stuff that shouldn't have been
13414         in the last changeset.  The patch backs it all out.
13416         * config/mailnotify: New file for mailing commit notifications,
13417         imported from cvs-utils.
13418         * commit: Updated from cvs-utils and tweaked for libtool.
13419         * Makefile.am (EXTRA_DIST): Add config/mailnotify.
13421 2004-02-06  Gary V. Vaughan  <gary@gnu.org>
13423         * bootstrap: Remove vcl.tmp, otherwise it can interfere with make.
13424         * Makefile.am (vcl.tmp): Move comment out of multi-line command,
13425         as this rule is called from bootstrap as if it were a Makefile.
13427         * m4/ltversion.in: New file to capture what version number macros
13428         are being used.
13429         * Makefile.am (m4/ltversion.m4): New rule to create it from
13430         m4/ltversion.in.
13431         (nodist_pkgmacro_DATA): Add m4/ltversion.m4.
13432         (EXTRA_DIST): Add m4/ltversion.in.
13433         * m4/libtool.m4 (AC_LIBTOOL_SETUP): AC_REQUIRE LTVERSION_VERSION
13434         from ltversion.m4.
13435         * bootstrap: Call the Makefile.am to create an initial
13436         m4/ltversion.m4.
13437         * ltmain.in: Diagnose version mismatches of various flavours.
13438         * TODO: Remove mismatch item.
13439         * NEWS: Updated.
13441         * Makefile.am ($(top_builddir)/config.status): Removed.
13442         * configure.ac (CONFIG_STATUS_DEPENDENCIES): This substitution is
13443         how automake-1.8 now informs all Makefiles when config.status
13444         needs to be rebuilt.
13445         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
13447         * configure.ac (AC_CONFIG_FILES): Generate libtoolize from here.
13448         * Makefile.am (libtool, libtoolize): These rules are redundant.
13449         Automake generates better rules for remaking these files.
13451         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Catch unexpanded macros with
13452         beginning with LT_ and _LT_.
13453         * configure.ac (LT_MAJOR, LT_MINOR, LT_MICRO, LT_ALPHA): Renamed
13454         to lt_major, lt_minor, lt_micro, lt_alpha to save triggering the
13455         unexpanded macros error.
13457         * m4/libtool.m4 (AC_PROVIDE_IFELSE): Removed.  We now require
13458         Autoconf 2.58, which ships this macro anyway.
13460         * Makefile.am: Comment typo.
13462         * m4/libtool.m4 (LT_PREREQ): Declare the minimum release number
13463         that is required for the calling code.
13464         * doc/libtool.texi (AC_PROG_LIBTOOL): Document it.
13465         * NEWS: Updated.
13467 2004-02-05  Peter O'Gorman  <peter@pogma.com>
13469         * ltmain.in (infer_tag, win32_libid): Style changes. Rename
13470         infer_tag to func_infer_tag and win32_libid to func_win32_libid.
13471         * m4/libtool.m4 (cygwin): rename win32_libid to func_win32_libid.
13473 2004-02-04  Peter O'Gorman  <peter@pogma.com>
13475         * ltmain.in (infer_tag): Move tag inferrence to a shell function.
13476         Also test $base_compile against $CC with escaped arguments. Bug
13477         reported by Geoff Keating <geoffk@apple.com>.
13479 2004-02-03  Scott James Remnant  <scott@netsplit.com>
13481         * Makefile.am (install-data-hook): Manually make config.guess
13482         and config.sub executable after they are installed as _DATA.
13483         We can't use _SCRIPTS because the various program name
13484         transforms may be applied to them.
13485         (dist_pkgdata_DATA): List config.guess and config.sub here
13486         (pkgdata_SCRIPTS): instead of here.
13488 2003-02-03  Scott James Remnant  <scott@netsplit.com>
13490         * ltmain.in: Create temporary directory under a strict umask
13491         rather than running chmod afterwards, preventing a race
13492         condition where the directory could be replaced with a symbolic
13493         link in the time between the two commands.
13495 2004-01-31  Peter O'Gorman  <peter@pogma.com>
13497         * m4/libtool.m4 (_LT_CONFIG_STATUS_DECLARE): Change `echo to
13498         `$echo, causes problems when builtin echo is broken. Reported
13499         by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13501 2004-01-27  Scott James Remnant  <scott@netsplit.com>
13503         This fixes release procedure problems discovered whilst making
13504         the 1.5.2 release.
13506         * Makefile.am (cvs-dist): Because we check whether ChangeLog
13507         has been committed, this rule can't be run with uncommitted
13508         source so we can't run 'commit' and don't need to run
13509         'make dist' a second time.  Fix CVS tag as it should be
13510         "release-X" not "Release-X".
13511         (cvs_commit): New rule for the cvs-release chain that runs
13512         'commit'
13513         (cvs-release): Depend on cvs-commit, depend on deltas instead of
13514         cvs-diff and xdelta.
13515         (cvs-diff): Removed, replaced with delta-diff.
13516         (delta-diff): Unpack and diff the old and new tarballs rather
13517         than using CVS, so we get a genuinely complete diff.
13518         (xdelta): Removed, replaced with delta-xdelta.
13519         (got-xdelta): New rule for improved reading.
13520         (delta-xdiff): Copied and cleaned up version of old xdelta rule.
13521         (deltas): Depends on delta-diff and delta-xdelta (make deltas).
13522         (cvs-news): Don't depend on timestamps, cvs-dist itself does now.
13523         (prev-tarball): This is the only place we need a LASTRELEASE check
13524         so copy the code here and remove the CHECK_RELEASE variable.
13525         (new-tarball): Check there's a new tarball (did cvs-dist work?)
13526         (FETCHFILES): Remove obsolete libltdl mentions.
13527         * README-alpha: Update CVS instructions as everything's changed
13528         on Savannah.
13529         (Release procedure): Update NEWS and ChangeLog after changing
13530         the version number (both times); Run 'make fetch' after running
13531         'configure' (difficult to do it beforehand); Require 'commit'
13532         before 'make cvs-dist' as that checks ChangeLog is committed;
13533         'make deltas' instead of 'cvs-diff' and 'xdelta', pass LASTRELEASE
13534         to make instead of OLDVERSION (and it's mandatory); Clean up
13535         uploading paragraph; Clearer announcement sending instruction;
13536         Removed ftp-upload@gnu.org mail as that's not necessary now;
13537         Make web page updating instructions a bit clearer; Add an instruction
13538         to update the manual for non-alphas.
13539         (Alpha release note template): Add a Subject; update CVS instructions.
13540         (Full release note template): Add a Subject; update CVS instructions.
13541         * configure.ac: Add dist-bzip2 to AM_INIT_AUTOMAKE as we talk
13542         about bz2 files in our release announcements; remove old reference
13543         to OLDVERSION.
13545 2004-01-25  Scott James Remnant  <scott@netsplit.com>
13547         * NEWS: Include 1.5.2 release information.
13549 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
13551         This fixes a bug in the libtoolize ltdl source installation rules,
13552         which were copying Makefile.in from the libtool tree into the
13553         package running libtoolize.  Now we explicitly list the files to
13554         copy to force the package to generate its own Makefile.in:
13556         * libltdl/Makefile.am (libltdl_la_SOURCES, libltdlc_la_SOURCES):
13557         Add ltdl.h.
13558         (ltdldatadir): New variable for installation directory of
13559         libtoolize --ltdl files.
13560         (ltdldata_DATA): Tell automake what files to copy there at install
13561         time (and remove at unistall time!).
13562         (local-install-files): Removed.  This hack is not required
13563         anymore, the automake generated install rules are much more
13564         advanced than this.
13565         * Makefile.am (install-data-hook, uninstall-local): Removed.
13566         Libltdl files for libtoolize are installed by their own Makefile
13567         now.
13569 2004-01-22  Jeff Squyres  <jsquyres@lam-mpi.org>
13571         * m4/libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Some compilers
13572         (e.g. Intel Linux icc compiler) write temporary files to the current
13573         directory. These compilers do support -c and -o simultaneously but
13574         wrongly fail the test due to the failure to create temporary
13575         files. It is incorrect to penalize compilers which write temporary
13576         files to the current directory so the 'chmod -w .' is therefore
13577         removed.
13579 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
13581         * m4/libtool.m4 (LT_AC_PROG_EGREP): Wrapper for AC_PROG_GREP.
13582         AIX has a brain-dead grep that only handles lines < 2048
13583         characters.  Default GREP incase we are not using a future
13584         autoconf that sets it for us :-)  Changed all callers to use $GREP
13585         instead of grep, and to AC_REQUIRE LT_AC_PROG_EGREP.
13586         Declare GREP as a libtool config var.
13587         * ltmain.in: Use it.
13588         * tests/sh.test (scripts): Accept `if $GREP "^foo=bar"' by
13589         tightening the regexp.
13590         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
13592 2004-01-21  Nick Hudson  <skrll@netbsd.org>
13594         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [netbsd*]: Remove
13595         gratuitous ${libname}${release}${shared_ext} from
13596         library_names_spec.
13598 2004-01-21  Peter O'Gorman  <peter@pogma.com>
13600         * m4/libtool.m4 (AC_PROG_LD_RELOAD_FLAG): On darwin change the
13601         reload_cmds to use $CC, otherwise ld will thin out any fat
13602         objects.
13604 2004-01-18  Benjamin Reed  <ranger@befunk.com>
13606         * ltmain.in: Fix handling of frameworks in search paths.  Also
13607         a one-liner fix to eval shrext in the libtool library search.
13609 2004-01-16  Gary V. Vaughan  <gary@gnu.org>
13611         * configure.ac (AM_INIT_AUTOMAKE): Require 1.8 for bootstrap, or
13612         else aclocal.m4 is huge, and m4 directory is not distributed.
13614         * configure.ac (AC_CONFIG_HEADERS): Create config.h in
13615         $top_srcdir.
13616         * m4/ltdl.m4 (AC_LIB_LTDL): Run AC_CONFIG_HEADERS for the user if
13617         necessary. Calculate filename from first argument to
13618         AC_CONFIG_HEADERS, and substitute as CONFIG_H.
13619         * libltdl/Makefile.am (AM_CPPFLAGS): Make sure we are searching in
13620         $top_srcdir for headers.
13621         (DEFS): Override the default HAVE_CONFIG_H with the config.h
13622         filename.
13623         (ltdl.lo): Reference config.h via $(CONFIG_H).
13624         * libltdl/ltdl.c (HAVE_CONFIG_H): Ditto.
13626 2004-01-15  Scott James Remnant  <scott@netsplit.com>
13628         * m4/lt~obsolete.m4: Add a file containing aclocal-fooling
13629         macro definitions which stop the contents of an installed
13630         libtool.m4 ending up in our aclocal.m4 when we bootstrap.
13631         * Makefile.am (pkgmacro_DATA): Note that we don't need to add
13632         lt~obsolete.m4 to this list.
13634 2004-01-12  Gary V. Vaughan  <gary@gnu.org>
13636         * m4/libtool.m4 (_LT_COPYING): Factor out copyright message so it
13637         only needs to be updated in one place.
13638         (AC_LIBTOOL_CONFIG): Refactor to be more readable.  Only add
13639         tags if a compiler was found; ie if you have no gcj compiler,
13640         don't tack the GCJ tag onto the generated libtool script.
13642 2004-01-13  Peter O'Gorman  <peter@pogma.com>
13644         * m4/libtool.m4: Quote shrext as it is evaled in ltmain.
13646 2004-01-11  Scott James Remnant  <scott@netsplit.com>
13648         * ltmain.in: new -precious-files-regex link mode option
13649         to prevent removal of matching files from the temporary
13650         output directory.
13651         (Debian Bug #221420)
13652         * doc/libtool.texi: document the new option.
13653         * NEWS: announce the new option.
13655 2004-01-11  Gary V. Vaughan  <gary@gnu.org>
13657         * libtoolize.in (func_copy_all_files): s/xfunc_copy/Xfunc_copy.
13658         Now the test can actually succeed sometimes.
13660 2004-01-09  Gary V. Vaughan  <gary@gnu.org>
13662         * libtoolize.in: Break out of the command argument parse loop when
13663         -- is encountered.
13665 2004-01-08  Gary V. Vaughan  <gary@gnu.org>
13667         * libtoolize.in (func_copy_all_files): s/test "x/test "X/ to keep
13668         tests/sh.test happy.
13670 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
13672         * Makefile.am (aclocal_macros, aclocal_DATA): Removed.
13673         (EXTRA_DIST): Remove m4 macro files; they are automatically
13674         added by automake.
13675         (pkgmacrodir): Where to install libtool macro files.
13676         (pkgmacro_DATA): List installable libtool macro files.
13677         (install-data-local): Remove previous versions of ltdl.m4 and
13678         libtool.m4 from their old location.
13679         * libtoolize.in: Use new pkgmacrodir installed macros when
13680         libtoolizing a project.  Treat libtool.m4 and ltdl.m4 specially,
13681         and func_serial_update() any other files from pkgmacrodir.
13682         (pkgmacrodir): Where to find installed libtool macro files.
13683         (aclocaldir): Removed.
13684         (func_copy_all_files): Add an optional callback parameter to
13685         control how files are copied.  If the callback is passed, don't
13686         tell it whether it can copy or not.
13687         (func_serial): Exchange parameters and make macro_regex optional,
13688         so that this function can be used to extract serial numbers from
13689         files with the traditional /^# serial [1-9][0-9]*$/ syntax.
13690         Changed all callers.
13691         (func_serial_update): Make macro_regex optional last parameter, so
13692         that this function can be used as a callback for
13693         func_copy_all_files().  Changed all callers.
13694         * m4/ltsugar.m4: Add a serial number.
13696 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
13698         A complete rewrite of the m4 code involved in the generation of
13699         libtool via config.status.  The old way involved manually
13700         synchronising disparate bits of shell code in several macros, to
13701         quote a copy of a shell variable, put that in config.status, maybe
13702         add it to some quotation loops to prevent early expansion, and
13703         then add a block to _LT_CONFIG_COMMANDS to bring it into the
13704         libtool script.  The new way is to mark shell variables for
13705         propogation using _LT_DECL for language independent variables, or
13706         _LT_TAGDECL for those that need to be propogated in several
13707         language flavours.  The marking can be done in the macro that
13708         probes the variables, and this new m4 machinery takes care of
13709         synchronising all the other bits of code at autoconf time:
13711         * m4/ltsugar.m4:  New file.  Macros that are useful outside the
13712         context of libtool.  Initially, contains some generalised list
13713         management macros, and the scaffolding for dictionary type data
13714         storage and retrieval.
13715         * Makefile.am (aclocal_macros): Install ltsugar.m4.
13716         * m4/libtool.m4 (_LT_DECL): Mark a shell variable for export to
13717         the libtool script, along with a comment, and hints for quoting
13718         and renaming.
13719         (_LT_TAGDECL): Similarly mark a tagged shell variable for export
13720         in each tag.
13721         (lt_decl_tag_varnames, lt_decl_quote_varnames)
13722         (lt_decl_dquote_varnames, lt_decl_varnames_tagged)
13723         (lt_decl_all_varnames):  New utility macros for managing lists of
13724         shell variable names from _LT_DECL and _LT_TAGDECL.
13725         (_LT_CONFIG_STATUS_DECLARATIONS, _LT_CONFIG_STATUS_DECLARE):
13726         Expand to correctly quoted variable declarations in config.status
13727         from all marked shell variables.
13728         (_LT_LIBTOOL_DECLARE): Expand to commented and quoted variable
13729         declaration for libtool tag section.
13730         (_LT_LIBTOOL_CONFIG_VARS, _LT_LIBTOOL_TAG_VARS): Pass all marked
13731         variables to _LT_LIBTOOL_DECLARE.
13732         (_LT_CONFIG_COMMANDS): Use _LT_CONFIG_STATUS_DECLARATIONS and
13733         friends to generate all the variable passing shell code for
13734         config.status, to get marked variables from libtool.m4 into
13735         libtool itself eventually.
13736         (AC_LIBTOOL_CONFIG): Generate marked variable code for libtool tag
13737         configuration.  Changed all client macros to mark variables
13738         suitably rather than the hand pasting that was necessary
13739         previously.
13740         (AC_PROG_SED): Renamed from LT_AC_PROG_SED.
13741         (LT_AC_PROG_SED): Wrap AC_PROG_SED, and mark shell variables for
13742         propogation to the libtool script.
13744 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
13746         * libtoolize.in (seen_gettext): Removed unused variable.
13748 2004-01-06  Gary V. Vaughan  <gary@gnu.org>
13750         * libtoolize.in (func_scan_files): Don't assume the existence of
13751         aclocal.m4.  Make the comment more descriptive.
13752         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
13754         * NEWS: Note libtoolize changes.
13756         * ChangeLog.2003: New file, containing all the ChangeLog entries
13757         from 2003.  Trimmed ChangeLog accordingly.
13759         * ltmain.in: Output 2004 in the copyright from libtool --version.
13761 2004-01-03  Stefan Nordhausen  <nordhaus@informatik.hu-berlin.de>
13762         Scott James Remnant  <scott@netsplit.com>
13764         * ltmain.in: Don't use the mkdir -p option when creating a
13765         temporary output directory so a symlink attack can't be used to
13766         arbitrarily chmod other directories on the system if libtool
13767         gets run as root.
13769 2004-01-02  Peter O'Gorman  <peter@pogma.com>
13771         * m4/libtool.m4: Ensure that ${ZSH_VERSION+set} is properly escaped.
13773         * m4/libtool.m4 (CDPATH): Change the CDPATH setting so that it
13774         allows for zsh differences, as noted in the autoconf manual's
13775         Portable Shell - Special Shell Variables section.
13777 2004-01-02  Scott James Remnant  <scott@netsplit.com>
13779         * .cvsignore: Ignore stamp-vcl created by the Makefile.
13781 2004-01-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
13782         Joe Orton  <joe@manyfish.co.uk>
13784         * m4/libtool.m4 (AC_LIBTOOL_CONFIG): Add extra blackslash
13785         in front of all the inner double-quotes as this is removed
13786         on Solaris, IRIX and AIX leading to broken definitions
13787         in config.status.
13789 2004-01-02  Scott James Remnant  <scott@netsplit.com>
13791         * NEWS: Next release will be in 2004.
13793 2003-12-31  Scott James Remnant  <scott@netsplit.com>
13795         * ltmain.sh: Infer tagged configuration for link mode with the
13796         full compiler arguments available rather than only the first.
13798 2003-12-31  Alexandre Duret-Lutz  <adl@gnu.org>
13800         * ltmain.sh: Quote $exec_cmd before it is eval'ed, so that
13801         libtool --mode=execute echo '4 * 5' does not expand the `*'.
13803 2003-11-28  Peter O'Gorman  <peter@pogma.com>
13805         * m4/libtool.m4: Move things around so that "setopt NO_GLOB_SUBST"
13806         to make zsh behave wrt \ escapes happens early in config.status.
13808 2003-11-27  Gary V. Vaughan  <gary@gnu.org>
13810         * libltdl/configure.ac: Removed.
13811         * configure.ac (AC_CONFIG_HEADERS): Merged from
13812         libltdl/configure.ac.
13813         (AC_LIB_LTDL): Ditto.
13814         (AC_CONFIG_FILES): Add libltdl/Makefile.
13815         (AC_CONFIG_SUBDIRS): Removed.
13816         (AC_CONFIG_COMMANDS): Remove generation of libltdl/ltmain.sh.
13817         * libltdl/Makefile.am (libtool): Removed references, since we now
13818         share $(top_builddir)/libtool.
13819         * NEWS: Updated.
13821 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
13823         * Makefile.am (vcl.tmp): Be careful of VPATH builds.
13825         * Makefile.am (EXTRA_DIST): Add stamp-vcl, or we go back to a
13826         double configure run from a distributed tarball :-?
13828 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
13830         Okay, the problem I am trying to solve is that when a change (say,
13831         bumping the version to 1.6 for the next release) is committed, the
13832         timestamp in ChangeLog is updated, but ltmain.sh and libtoolize
13833         inherit the pre-commit build number from config.status.  This
13834         delta notes the change in build number in the unstamped ChangeLog
13835         and forces a rerun of configure etc. to roll a new ltmain.sh with
13836         the correct TIMESTAMP:
13838         * Makefile.am (stamp-vcl): We actually need a new config.status to
13839         force the correct timestamp into libtoolize and ltmain.sh,
13840         rerunning autoconf has no effect at all if configure.ac hasn't
13841         changed.
13843 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
13845         * Makefile.am (stamp-vcl): New rules to force libtool and
13846         libtoolize scripts to update when the TIMESTAMP changes in
13847         ChangeLog, but the file modification time doesn't (e.g in cvs
13848         commit).  Otherwise we'll carry on releasing tarballs with the
13849         wrong version numbers in the tools!
13851         * config/mkstamp: Change output format to ` $rev $date'.
13852         * configure.ac: Make the banner more like suggestions in
13853         http://www.gnu.org/prep/standards_toc.html Section 4.6.
13854         * libtoolize.in: Make --version output conform to the GNU
13855         standard.
13856         * ltmain.in: Ditto. And tweak the generated file headers to
13857         match.
13859 2003-11-25  Gary V. Vaughan  <gary@gnu.org>
13861         * Makefile.am (config.status): Removed.  Rebuilding config.status
13862         isn't enough, because the TIMESTAMP in configure is still out
13863         of date.
13864         (configure): We actually need a new configure to force the
13865         correct timestamp into ltmain.sh.
13867         * Makefile.am (config/ltmain.sh): Removed.  Rebuilding ltmain.sh
13868         isn't enough, because the TIMESTAMP in config.status is still out
13869         of date.
13870         (config.status): We actually need a new config.status to force the
13871         correct timestamp into ltmain.sh.
13873         * Makefile.am (config/ltmain.sh): Note the dependency on the
13874         timestamp in ChangeLog so we don't ship libtools that report the
13875         wrong version number :-/
13877         * bootstrap: Explain automake and autoconf version dependencies
13878         truthfully, and the difference between bootstrap and user
13879         dependencies.
13880         * configure.ac (AM_INIT_AUTOMAKE): List AUTOMAKE_OPTIONS here.
13881         * Makefile.am, doc/Makefile.am, tests/Makefile.am
13882         (AUTOMAKE_OPTIONS): Removed from here.
13884 2003-11-24  Gary V. Vaughan  <gary@gnu.org>
13886         * tests/defs (func_configure): cdemo, demo and mdemo are shows
13887         signs of indeterminacy for some users.  Be more verbose during
13888         failure to help track down the cause.
13890 2003-11-22  Peter O'Gorman  <peter@pogma.com>
13892         * ltmain.in: Check for module_cmds if max_cmd_len is exceeded too.
13894         * ltmain.in: Move eval to after command separation to allow ~ in paths.
13896         * tests/demo-hardcode.test: Call ./libtool not libtool.
13898         * ltmain.in: Test $old_striplib before using it, not $striplib.
13900 2003-11-22  Gary V. Vaughan  <gary@gnu.org>
13902         * configure.ac (LASTRELEASE): Calculate it as best as we can from
13903         AC_PACKAGE_VERSION.
13904         * Makefile.am (distdir): Remove dependency on timestamps so that
13905         it is possible to roll a dist without contacting the cvs server.
13906         Use `make cvs-release' for that.
13907         (cvs-news): Extracted from cvs-dist.
13908         (cvs-dist): Depend on cvs-news.
13909         (CHECK_LASTRELEASE): Check LASTRELEASE has been set.
13910         (prev-tarball): New rule.  Use LASTRELEASE to make sure the
13911         previous release tarball is present.
13912         (cvs-diff): Use CHECK_LASTRELEASE.
13913         (xdelta): Ditto.
13914         (cvs-release): Depend on prev-tarball, timestamps, cvs-news and
13915         fetch. Provided you set LASTRELEASE appropriately, making a full
13916         cvs release is just a matter of `make cvs-release', and submitting
13917         the files to ftp-upload.
13919 2003-11-19  Gary V. Vaughan  <gary@gnu.org>
13921         * m4/libtool.m4 (_LT_PROG_LTMAIN): Ensure config.status has a
13922         value for `ac_aux_dir' when automake is not used.
13923         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13925         * configure.ac (AC_PREREQ): AS_HELP_STRING was introduced after
13926         autoconf-2.57 was released.
13928 2003-11-18  Gary V. Vaughan  <gary@gnu.org>
13930         * libltdl/ltdl.c (lt_dlhandle_find): New function to find a handle
13931         by module name.
13932         * libltdl/ltdl.h (lt_dlhandle_find): Declare it.
13933         * doc/libtool.texi (User defined module data): Document it.
13934         * NEWS: Updated.
13936 2003-11-17  Gary V. Vaughan  <gary@gnu.org>
13938         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Uncomment call to
13939         _LT_CONFIG_COMMANDS.
13940         (_LT_AC_TAG_CONFIG, AC_LIBTOOL_CONFIG): Accumulate tag generation
13941         for `config.status' using _LT_CONFIG_SAVE_COMMANDS.  Remove
13942         AC_MSG_NOTICE noise now that libtool is generated by a single
13943         config.status tag.
13944         * Makefile.am (libtool): Specify CONFIG_COMMANDS properly now that
13945         libtool is generated in one pass.
13947         * configure.ac (CONF_SUBDIRS): Make these relative to
13948         tests/Makefile.am.
13949         (DIST_MAKEFILE_LIST): Adjust to compensate for having removed the
13950         `tests/' part in CONF_SUBDIRS.
13951         * tests/Makefile.am (DIST_SUBDIRS): Distribute these directories.
13952         (SUBDIRS): Set to `.', a NOP, to workaround an automake bug which
13953         ignores DIST_SUBDIRS unless SUBDIRS is also set.
13954         * Makefile.am (DIST_SUBDIRS): Don't try to distribute the tests
13955         subdirectories from here, since the recursive automake dist rule
13956         only works with direct child directories.  Defer to
13957         tests/Makefile.am in this case.
13959 2003-11-15  Scott James Remnant  <scott@netsplit.com>
13961         * ltmain.in: In compile mode, delay parsing of -shared, -static,
13962         -prefer-pic and -prefer-non-pic until after tagged configuration
13963         has been read.  In link mode, read tagged configuration before
13964         parsing any arguments.  These arguments will now work when using
13965         a non-C compiler.
13967 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
13969         * NEWS: Mention AC_LIBTOOL_TAGS.
13971         * Makefile.am (EXTRA_DIST): List ChangeLog files correctly.
13973         * tests/cdemo/configure.ac, tests/demo/configure.ac,
13974         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
13975         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
13976         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Declare just
13977         the tags we need using AC_LIBTOOL_TAGS, reducing the size of the
13978         configure script by 50% in most cases.
13980 2003-11-14  Marius Vollmer  <mvo@zagadka.de>
13982         * doc/libtool.texi (Libltdl interface): libltdl does in fact load
13983         dependency libs for lt_dlopen()ed modules.
13985 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
13987         Run our configure.ac files through Autoconf 2.59's autoupdate, and
13988         then tweak the results by hand:
13990         * m4/libtool.m4 (AC_PROG_LD): In common with all the other
13991         AC_PROG_ macros, AC_SUBST the discovered LD.
13992         (AC_PROG_NM): Similarly for NM.
13993         (LT_AC_PROG_SED): Similarly for SED.
13994         * configure.ac: No need to SUBST NM and LD manually any more.
13995         (AC_PREREQ): Conservatively downgrade from 2.59 to 2.54.
13996         * tests/cdemo/configure.ac, tests/demo/configure.ac,
13997         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
13998         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
13999         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Ditto.
14000         * m4/libtool.m4 (AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
14001         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC,
14002         AM_PROG_LD, AM_PROG_NM): AU_DEFUN these macros so autoupdate can
14003         use the newer definitions.
14005 2003-11-12  Gary V. Vaughan  <gary@gnu.org>
14007         The rules for uploading releases to gnu.org have been updated, and
14008         are in fact now rather complicated.  This delta updates the
14009         release instructions to the describe the new process, and updates
14010         the maintainer rules to help automate many of the steps:
14012         * README-alpha: Updated release instructions.
14013         * Makefile.am (GPG): Name of the program for generating signatures
14014         for files to be uploaded.
14015         (XDELTA, XDELTA_OPTIONS): Invocation of xdelta.
14016         (cvs-dist): Run distcheck before tagging the cvs tree incase
14017         distcheck fails, and then generate the gpg signature files.
14018         (cvs-diff): Generate the gpg signature files for the diff.
14019         (xdelta): New rule for generating the xdelta diffs and associated
14020         gpg signature files.
14021         (cvs-release): New rule to do all of the above, if you don't mind
14022         typing your gpg passphrase over and over again. :-)
14023         (fetch): New rule inspired by automakes similar rule for updating
14024         files maintained outside the project.
14025         * config/config.guess, config/config.sub: Updated with the new
14026         fetch rule.
14028 2003-11-11  Gary V. Vaughan  <gary@gnu.org>
14030         * libltdl/ltdl.c (lt_dlinit): Save a function call for each loader
14031         added to the list, in exchange for appending loaders to the list
14032         with O(N) rather than O(1).  The longest the loader list can ever
14033         get is 4 (on cygwin with dld installed) so it probably constitutes
14034         a small speedup, in addition to making the code much more readable.
14036         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Don't define the value for
14037         ltmain unconditionally.
14038         (_LT_PROG_LTMAIN): New macro to ensure that the
14039         shell variable `ltmain' actually points at a suitable `ltmain.sh'.
14040         (_AC_PROG_LIBTOOL): Require it.
14041         (AC_LIBTOOL_CONFIG, _LT_AC_TAG_CONFIG): Invoke it.
14042         * Makefile.am (libtool): ltmain.sh is in the build tree.
14043         * libltdl/configure.ac: Ditto.
14045 2003-11-10  Scott James Remnant  <scott@netsplit.com>
14047         * ltmain.in: Add -pthread and similar to $deplibs ($compile_deplibs
14048         and $finalize_deplibs for programs) when found on the command line
14049         or in a .la file's dependency_libs (but don't place them there) so
14050         they are honoured when linking both programs and libraries.
14052 2003-11-10  Scott James Remnant  <scott@netsplit.com>
14054         * m4/libtool.m4  (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [linux]: Include
14055         directories found in /etc/ld.so.conf in sys_lib_dlsearch_path_spec.
14057 2003-11-09  Peter O'Gorman  <peter@pogma.com>
14059         * ltmain.in (linkalldeplibs,darwin): Fix a bug reported by Idar
14060         Tollefsen where a dir could be added to the link line with no '-L'
14061         on darwin.
14063 2003-11-07  Gary V. Vaughan  <gary@gnu.org>
14065         * tests/cdemo/configure.ac, tests/demo/configure.ac,
14066         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
14067         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
14068         tests/pdemo/configure.ac, tests/tagdemo/configure.ac:
14069         s/AM_PROG_LIBTOOL/AC_PROG_LIBTOOL/. Marching boldly into the 21th
14070         century :-$
14072         * m4/libtool.m4 (AC_LIBTOOL_TAGS, AC_ENABLE_SHARED,
14073         AC_DISABLE_SHARED, AC_ENABLE_STATIC, AC_DISABLE_STATIC,
14074         AC_ENABLE_FAST_INSTALL, AC_DISABLE_FAST_INSTALL, AM_PROG_LIBTOOL,
14075         AM_ENABLE_SHARED, AM_ENABLE_STATIC, AM_DISABLE_SHARED,
14076         AM_DISABLE_STATIC): These macros must be AC_DEFUNed after all,
14077         otherwise aclocal can't find them when it tries to construct
14078         `aclocal.m4'.
14080         * Makefile.am (install-data-local): Wipe out old installation
14081         pkgdatadir before installing new files.
14082         * NEWS: Updated.
14084         * libtoolize.in (func_scan_files): If libtoolize is run before
14085         automake has created install-sh and configure.ac does not mention
14086         AC_CONFIG_AUX_DIR, fall back to the current directory for auxdir.
14088 2003-11-07  Robert Millan  <zeratul2@wanadoo.es>
14090         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD) [GNU/KNetBSD]: Detect
14091         inter-library dependencies.
14093 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
14095         * m4/libtool.m4 (_LT_AC_FILE_LTDLL_C): Removed; no longer in use.
14097         * m4/libtool.m4: s/ifelse(/m4_if(/g
14098         (_LT_AC_SYS_LIBPATH_AIX, _LT_AC_SHELL_INIT,
14099         _LT_AC_PROG_ECHO_BACKSLASH, AC_LIBTOOL_LINKER_OPTION,
14100         AC_LIBTOOL_TAGS, _LT_AC_TAG_CHECK, _LT_AC_TAG_CONFIG,
14101         AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC,
14102         AC_DISABLE_STATIC, AC_ENABLE_FAST_INSTALL,
14103         AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_C_CONFIG,
14104         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG,
14105         _LT_AC_TAGVAR, AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
14106         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC): Use
14107         m4_define instead of AC_DEFUN for internal macros that do not
14108         AC_PROVIDE or AC_REQUIRE, and documented user macros that cannot
14109         be AC_REQUIREd because they need arguments, or because that would
14110         violate the documented API.
14112         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Add a new
14113         delay_single_quote_subst sed script to quote single quotes in
14114         variables that are copied to `config.status'.
14115         (_LT_CONFIG_STATUS_DECLARE): New macro to apply
14116         delay_single_quote_subst to a named variable.
14117         (AC_LIBTOOL_CONFIG): Use _LT_CONFIG_STATUS_DECLARE to declare all
14118         `configure' variables that are copied to `config.status'.
14119         (AC_LIBTOOL_PROG_COMPILER_PIC): Fix a quoting bug exposed by
14120         _LT_CONFIG_STATUS_DECLARE using the null quadrigraph in the
14121         rvalues of lt_prog_compiler_pic.
14123 2003-11-06  Owen Taylor  <otaylor@redhat.com>
14125         * m4/libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Recognise the
14126         'R' symbol type so read-only symbols can be exported when combining
14127         GCC and Solaris LD.
14129 2003-11-06  James Henstridge  <james@daa.com.au>,
14130         Scott James Remnant  <scott@netsplit.com>
14132         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [Linux]: Fix the
14133         -export-symbols and -export-symbols-regex options.
14135 2003-11-06  Scott James Remnant  <scott@netsplit.com>
14137         * tests/demo-nopic.test: Skip test on hppa, which don't like
14138         non-PIC shared libraries.
14140 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>
14142         * tests/depdemo/configure.ac, tests/mdemo/configure.ac,
14143         tests/mdemo2/configure.ac: process 'libtool --features'
14144         from Makefile, not configure -- because libtool doesn't
14145         exist at configure time.
14147         * ltmain.in (find_executable, check_executable) [cygwin*, mingw*]:
14148         binary wrapper used with uninstalled executables breaks when
14149         invoked via execlp/execvp (that is, via $PATH).  Handle that case.
14150         (fnqualify): Subsumed into find_executable.
14152         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin*, mingw*]:
14153         when extracting symbols from an import lib (occurs if
14154         --enable-shared --disable-static), the output of
14155         $global_symbol_pipe is not the same as  when extracting from a
14156         static library (the default case). Add extra filters to
14157         $export_symbols_cmds to process this sort of output in addition to
14158         'normal' static-lib output.
14159         * NEWS: Updated.
14161 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>,
14162         Gary V. Vaughan  <gary@gnu.org>
14164         * libltdl/ltdl.c (LT_USE_POSIX_DIRENT): Factored out.
14165         (LT_USE_WINDOWS_DIRENT_EMULATION): Move to after include "ltdl.h",
14166         as they are affected by __WINDOWS__ definition.
14167         (LT_READTEXT_MODE): Use textmode to read .la files.
14168         (lt_dlinit): Use LoadLibrary loader as a fallback on cygwin.
14170 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
14172         * libltdl/ltdl.h (__WINDOWS__): Define this if _WIN32 or WIN32 are
14173         defined, unless __CYGWIN__ or __CYGWIN32__ are defined.
14174         (LT_SCOPE): Now set without reference to __CYGWIN__ definition,
14175         since __WINDOWS__ now implies !__CYGWIN__ after canonicalisation.
14176         (LT_PARAMS, lt_ptr): Use canonicalised __WINDOWS__ to determine
14177         which values to set these macros to.
14179 2003-11-05  Gary V. Vaughan  <gary@gnu.org>
14181         * README-alpha: Mention autotools-announce@gnu.org, and update release
14182         note templates.
14184 2003-11-01  Scott James Remnant  <scott@netsplit.com>
14186         * ltmain.in: When relinking, place the -L parameter containing
14187         the installation prefix directory after the intended destination,
14188         so we don't accidentally link against an older installed library.
14190 2003-11-01  Peter O'Gorman  <peter@pogma.com>
14192         * tests/mdemo2/Makefile.am: Let mdemo2 find ltdl.h again.
14194 2003-10-30  Peter O'Gorman  <peter@pogma.com>
14196         * m4/libtool.m4 (Darwin): Fix stupidities for darwin tags support.
14197         Makes it work again if AC_LIBTOOL_TAGS is specified in configure.ac.
14198         Bug reported by Joe Orton and Christian Schaffner.
14200 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
14202         Start to eliminate the double run of configure in a fresh CVS
14203         checkout by generating ltmain.sh, using that to create libtool,
14204         and then adding the tags to that, all from config.status.
14206         * configure.ac (AC_CONFIG_FILES): Make config/ltmain.sh, and copy
14207         it to libltdl.
14208         * Makefile.am ($(srcdir)/config/ltmain.sh): This file is now
14209         created by config.status.  Adjust this rule.
14210         (libtoolize): Set CONFIG_COMMANDS to empty to prevent regenerating
14211         the libtool script as a side effect of running this rule.
14212         * libtool.m4: Bump serial number.  Fix comment typos.
14213         (_LT_CONFIG_LIBTOOL_INIT, _LT_CONFIG_LIBTOOL,
14214         _LT_CONFIG_SAVE_COMMANDS, _LT_CONFIG_COMMANDS: New macros.  They
14215         don't work for some reason - the variable value quoting in the
14216         init section is all wrong.  Not used at the moment.
14217         (AC_LIBTOOL_CONFIG): Generate libtool from config.status.
14218         (_LT_AC_TAG_CONFIG): Add the tags in config.status.
14219         (compiler_DEFAULT): Save the compiler value for the DEFAULT tag,
14220         or it gets overwritten by the other macros.
14221         (EOF): Globally replace with _LT_EOF to avoid namespace pollution.
14222         * tests/demo/configure.ac (STATIC): Check $enable_static instead
14223         of running ./libtool which doesn't exist yet.
14224         (BINARY_HELLDL): Check $lt_cv_sys_global_symbol_pipe with case
14225         instead of grepping ./libtool which doesn't exist yet.
14226         * tests/pdemo/configure.ac (STATIC, BINARY_HELLDL): Ditto.
14227         * doc/libtool.texi (AC_PROG_LIBTOOL): Add some notes about trying
14228         to get config details from `libtool --config'.
14229         * NEWS: Updated.
14231 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
14233         * ChangeLog, ChangeLog.0, ChangeLog.1: Refactored...
14234         * ChangeLog, ChangeLog.2002, ChangeLog.2001, ChangeLog.2000,
14235         ChangeLog.1999, ChangeLog.1998, ChangeLog.1997, ChangeLog.1996:
14236         ...into entries by year for easier copyright confirmation.
14238         * configure.ac, libltdl/configure.ac, tests/cdemo/configure.ac,
14239         tests/demo/configure.ac, tests/depdemo/configure.ac,
14240         tests/f77demo/configure.ac, tests/mdemo/configure.ac,
14241         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
14242         tests/tagdemo/configure.ac (AM_INIT_AUTOMAKE): Remove redundant
14243         arguments.
14244         * libltdl/configure.ac: Use quadrigraphs to escape macronames.
14246         * bootstrap (reconfdirs): Same as yesterday, only with portable
14247         bourne shell syntax.  :-/
14249 2003-10-20  Gary V. Vaughan  <gary@gnu.org>
14251         * bootstrap (reconfdirs): Overridable top dirs for bootstrap, for
14252         those times when you don't want to wait for all of the test
14253         directories to be rebootstrapped!
14255 2003-10-19  Kevin P. Fleming  <kpfleming@backtobasicsmgmt.com>
14256         Charles Wilson <cygwin@cwilson.fastmail.fm>
14258         * ltmain.in: include --tag options, if specified, in the
14259         relink_command in uninstalled .la files.  Also, preserve --silent,
14260         --debug options when libtool re-execs itself.
14261         * NEWS: Updated.
14263 2003-10-19  Charles Wilson  <cygwin@cwilson.fastmail.fm>
14265         * libtoolize.in: protect sed expression against
14266         AC_CONFIG_AUX_DIR_DEFAULT.
14268 2003-10-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
14270         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): For MinGW, reverted DLL
14271         check method back to a working objdump-based test.  This is not as
14272         concrete a test as using the 'file' command, but it does not
14273         require that the 'file' command be available.
14275 2003-10-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
14277         * doc/libtool.texi (AC_LIBTOOL_TAGS): Incorporate documentation
14278         for AC_LIBTOOL_TAGS macro to specifify libtool tags. The now
14279         defunct --with-tags option was never documented.
14281 2003-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
14283         * m4/libtool.m4: Restrict the list of tags that can be created
14284         with a new AC_LIBTOOL_TAGS([tag1 tag2 ...]) macro. Deprecate
14285         --with-tags.
14287 2003-10-15  Gary V. Vaughan  <gary@gnu.org>
14289         * libtoolize.in: Typo when copying config.sub.
14290         From Patrick Welche <prlw1@newn.cam.ac.uk>
14292         * demo/Makefile.am (libhell0_a_SOURCES): Do not name sources
14293         already built with libtool...
14294         (libhell0_a_LIBADD): ...instead name the objects directly.  This
14295         prevents a long standing warning from automake 1.7+.
14296         * pdemo/Makefile.am (libhell0_a_SOURCES, libhell0_a_LIBADD):
14297         Ditto.
14299         * bootstrap: Make the fake files valid shell scripts with a
14300         comment incase they get left around.
14301         (LIBTOOLIZE): Use a dummy script to prevent the installed
14302         `libtoolize' from trashing the distributed libtool.m4,
14303         config.guess and config.sub.
14305         * configure.ac (AC_CONFIG_TESTDIR, AC_CONFIG_TESTFILES): Comment
14306         this out for now, the autotest testsuite rewrite is not ready
14307         yet.
14309         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
14310         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
14311         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
14312         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (top_distdir):
14313         Removed. `autoreconf' needs literals in ACLOCAL_AMFLAGS.
14315 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
14317         * libtoolize.in (func_mkdir_p): Synch with tests/defs; if there
14318         are no more directories in the stack, break out of the loop.
14320         * tests/Makefile.am (COMMON_TESTS): Remove pdemo-unst.test, which
14321         isn't a real test.
14323 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
14325         Refactor all the test case common code into shell functions in
14326         tests/defs, and move the various demo directories out of
14327         $top_srcdir, and into tests too.  The refactoring showed up a
14328         number of inconsistencies and latent bugs, as well as fixing (I
14329         think!!) the long-standing annoyance with some of the tests giving
14330         spurious failures intermittently.  While I was here, emacs kindly
14331         removed a lot of bogus whitespace and added copyright notices for
14332         us:
14334         * cdemo, demo, depdemo, f77demo, mdemo, mdemo2, pdemo, tagdemo:
14335         Moved from here...
14336         * tests/cdemo, tests/demo, tests/depdemo, tests/f77demo,
14337         tests/mdemo, tests/mdemo2, tests/pdemo, tests/tagdemo: ...to
14338         here.
14339         * tests/defs: Factor much common functionality from the test
14340         scripts into shell functions.  Added a copyright notice.
14341         * tests/assign.test, tests/cdemo-conf.test, tests/cdemo-exec.test,
14342         tests/cdemo-make.test, tests/cdemo-shared.test,
14343         tests/cdemo-static.test, tests/demo-conf.test,
14344         tests/demo-deplibs.test, tests/demo-exec.test,
14345         tests/demo-inst.test, tests/demo-make.test,
14346         tests/demo-nofast.test, tests/demo-nopic.test,
14347         tests/demo-pic.test, tests/demo-shared.test,
14348         tests/demo-static.test, tests/demo-unst.test,
14349         tests/depdemo-conf.test, tests/depdemo-exec.test,
14350         tests/depdemo-inst.test, tests/depdemo-make.test,
14351         tests/depdemo-nofast.test, tests/depdemo-shared.test,
14352         tests/depdemo-static.test, tests/depdemo-unst.test,
14353         tests/f77demo-conf.test, tests/f77demo-exec.test,
14354         tests/f77demo-make.test, tests/f77demo-shared.test,
14355         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
14356         tests/mdemo-conf.test, tests/mdemo-exec.test,
14357         tests/mdemo-inst.test, tests/mdemo-make.test,
14358         tests/mdemo-shared.test, tests/mdemo-static.test,
14359         tests/mdemo-unst.test, tests/mdemo2-conf.test,
14360         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
14361         tests/pdemo-conf.test, tests/pdemo-exec.test,
14362         tests/pdemo-inst.test, tests/pdemo-make.test,
14363         tests/pdemo-unst.test, tests/quote.test, tests/sh.test,
14364         tests/suffix.test, tests/tagdemo-conf.test,
14365         tests/tagdemo-exec.test, tests/tagdemo-make.test,
14366         tests/tagdemo-shared.test, tests/tagdemo-static.test: Refactored
14367         to use new functions in tests/defs.  Added a copyright notice.
14368         * tests/hardcode.test, noinst-link.test,
14369         tests/relink.test, tests/relink.test,
14370         tests/mdryrun.test: Ditto.  Moved from here...
14371         * tests/demo-hardcode.test, demo-noinst-link.test,
14372         tests/demo-relink.test, tests/depdemo-relink.test,
14373         tests/mdemo-dryrun.test: ...to here respectively.
14374         * Makefile.am: Added a copyright notice.
14375         * tests/sh.test: Check libtoolize.in for non-portabilities too.
14376         * libtoolize.in: Fix non-portabilities found by tests/sh.test.
14378 2003-10-12  Peter O'Gorman <peter@pogma.com>
14380         * m4/libtool.m4: Speed up max_cmd_len check.
14382 2003-10-08  Gary V. Vaughan  <gary@gnu.org>
14384         * libtoolize.in: AC_CONFIG_M4_DIR has landed in CVS autoconf.
14385         Only it's called AC_CONFIG_MACRO_DIR.  Search and replace.
14386         Grumble. ;-)
14388 2003-10-08  Scott James Remnant  <scott@netsplit.com>
14390         * libltdl/ltdl.c (lt_dlerror): change return value when
14391         no error has occured to NULL to match documentation.
14392         (Debian Bug #157229)
14394 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
14396         * ltmain.in: Don't suppress output of PIC mode compile if
14397         -no-suppress option is given.
14398         * doc/libtool.texi (Invoking libtool): Document it.
14399         * NEWS: Updated.
14401 2003-10-07  Marcus Comstedt  <marcus@mc.pp.se>
14403         * m4/libtool.m4 [amigaos-ppc, amigaos-m68k]: Differentiate between
14404         amigaos on ppc and m68k.
14405         * NEWS: Updated.
14407 2003-10-07  Ralph Schleicher  <rs@nunatak.allgaeu.org>
14409         * ltmain.in: Do not create `.o' objects when `-shared' is
14410         specified in compile mode.
14411         Do not make a static library when `-shared' is specified in link
14412         mode.
14413         * doc/libtool.texi (Compile mode): Document it.
14414         * NEWS: Updated.
14416         * doc/libtool.texi (Compile mode): Be more specific about the
14417         effect of `-static'.
14418         * ltmain.in: Do not create `.lo' objects when `-static' is
14419         specified.
14420         * NEWS: Updated.
14422 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
14424         * doc/libtool.texi (Invoking libtool): Updated.
14425         * ltmain.in: Add missing clean and finish modes to the shorthand
14426         options.
14428         * ltmain.in: Typo in the --mode shorthand.
14430 2003-10-07  Scott James Remnant  <scott@netsplit.com>
14432         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Remove dead code
14433         for platforms that have been using pass_all for some time now.
14435 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
14437         * libtoolize.in: Completely rewritten.
14438         * Makefile.am (AUTOMAKE_OPTIONS): Reduced to 1.7.  The 1.8
14439         requirement just made the distribution much smaller due to
14440         m4_includes.  1.7 will bootstrap libtool just fine.
14441         * NEWS: Updated.
14443 2003-10-05  Peter O'Gorman <peter@pogma.com>,
14444         Gary V. Vaughan  <gary@gnu.org>
14446         * ltmain.in: Remove inferrence of mode, add shorthand for mode
14447         choice.
14449         * ltmain.in: Specifying -allow-undefined is now an error.
14451 2003-09-29  Scott James Remnant  <scott@netsplit.com>
14453         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for linux*
14454         solving many build problems on ARM, and hopefully preventing any
14455         future ones.
14456         (Debian Bug #191133 and #190569)
14458 2003-09-29  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>,
14459         Dalibor Topic <robilad@kaffe.org>
14461         * libltdl/ltdl.c: Only include malloc.h if stdlib.h can not be
14462         found.
14464 2003-09-26  Alfred M. Szmidt  <ams@kemisten.nu>
14466         * mdemo2/Makefile.am (INCLUDES): Include `$(top_srcdir)/../libltdl'
14467         instead of `../libltdl'.
14469 2003-09-24  Gary V. Vaughan  <gary@gnu.org>
14471         * bootstrap: Rewritten to use autoreconf.
14472         * config.guess, config.sub, mkstamp:  Moved from here...
14473         * config/config.guess, config/config.sub, config/mkstamp: ...to
14474         here, respectively.
14475         * libtool.m4, ltdl.m4: Moved from here...
14476         * m4/libtool.m4, m4/ltdl.m4: ...to here, respectively.
14477         * configure.ac: Removed various acinclude.m4 hackery, as these
14478         files are no longer needed with automake 1.8.
14479         * Makefile.am: Removed various acinclude.m4 hackery, as these
14480         files are no longer needed with automake 1.8.
14481         (AUTOMAKE_OPTIONS): Require CVS automake.
14482         (CONF_SUBDIRS, CFLAGS, CPPFLAGS, LDFLAGS, LIBS, FFLAGS, FLIBS):
14483         Automake now makes a Make variable from every AC_SUBST, so these
14484         are NOP.
14485         (aclocal_macros): These files are now in their own m4 subdir.
14486         Changed all clients.
14487         (EXTRA_DIST): mkstamp has moved to the new config subdir.  Changed
14488         all clients.
14489         (pkgdata_SCRIPTS): Ditto wrt config.guess and config.sub.
14490         (pkgdata_DATA): Ditto wrt ltmain.sh.
14491         * f77demo/configure.ac, libltdl/configure.ac (AM_CONFIG_HEADER):
14492         Is deprecated in favour of AC_CONFIG_HEADERS.  Updated to the
14493         latter.
14494         * Makefile.am, cdemo/Makefile.am, demo/Makefile.am,
14495         depdemo/Makefile.am, f77demo/Makefile.am, mdemo/Makefile.am,
14496         mdemo2/Makefile.am, pdemo/Makefile.am, tagdemo/Makefile.am
14497         (EXTRA_DIST): Remove acinclude.m4.
14498         (ACLOCAL_AMFLAGS): Search new `m4' macro directory.
14499         * configure.ac, cdemo/configure.ac, demo/configure.ac,
14500         depdemo/configure.ac, f77demo/configure.ac, mdemo/configure.ac,
14501         mdemo2/configure.ac, pdemo/configure.ac, tagdemo/configure.ac
14502         (AC_CONFIG_AUX_DIR): Declare that config helper scripts are now
14503         kept in the new config subdir.
14504         * libltdl/configure.ac (AC_CONFIG_AUX_DIR): Removed.  Defaults to
14505         `.' anyway.
14507 2003-09-21  Robert Millan  <robertmh@gnu.org>
14509         * libtool.m4: Add GNU/KNetBSD support.
14510         * ltdl.m4: Likewise.
14512 2003-09-13  Scott James Remnant  <scott@netsplit.com>
14514         * libtool.m4: allow STRIP to contain spaces and additional
14515         arguments.  (Debian Bug #183055)
14516         * ltmain.in: include newline in "sensible default" for IFS.
14517         (Debian Bug #98492 and #95447)
14519 2003-09-11  Peter O'Gorman  <peter@pogma.com>
14521         * AUTHORS, THANKS: Added myself to AUTHORS, removed from THANKS.
14523 2003-09-10  Peter O'Gorman  <peter@pogma.com>
14525         * mdemo2/configure.ac: Use AC_LIBTOOL_DLOPEN.
14526         * mdemo2/main.c: Use LTDL_SET_PRELOADED_SYMBOLS().
14527         * mdemo2/Makefile.am: Set INCLUDES properly and add -dlopen force
14528         to make sure the symbols file is included in the link line.
14530         * ltmain.in: Accept -framework for darwin and put it in
14531         dependency_libs. For non-installed .la's try to avoid having
14532         ./.libs/.libs/libfoo.so on the link line.
14534 2003-09-10  Arne Woerner  <woerner@mediabase-gmbh.de>
14536         * libtool.m4 [openbsd]: openbsd 3.x needs versioning information.
14538 2003-08-29  Gary V. Vaughan  <gary@gnu.org>
14540         * bootstrap: Typo.
14542 2003-08-29  Alexandre Duret-Lutz  <adl@gnu.org>
14544         * libtool.m4 (_LT_AC_LANG_C_CONFIG): Fix unquoted call to
14545         _LT_AC_LANG_C_CONFIG.
14546         (AC_PROG_EGREP): Remove, now that Libtool requires Autoconf 2.56.
14547         * bootstrap: Issue an upgrade warning.
14549 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
14551         * libtool.m4 (_LT_AC_CHECK_DLFCN): Use the interrim new
14552         AC_CHECK_HEADER with compiler rather than preprocessor.
14553         (AC_LIBTOOL_SETUP): ...which was introduced in autoconf-2.56, so
14554         we AC_PREREQ that version.
14555         * ltdl.m4 (AC_WITH_LTDL, AC_LIB_LTDL, AC_LTDL_FUNC_ARGZ): Ditto.
14557 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
14559         Work around a bug in AU_ALIAS in CVS Autoconf that inserts a
14560         newline just before AC_FD_CC, by hand updating:
14562         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): s/AC_FD_CC/AS_MESSAGE_LOG_FD/g.
14564 2003-08-05  Jim Pick <jim@kaffe.org>,
14565         Ito Kazumitsu <kaz@maczuka.gcd.org>,
14566         Gary V. Vaughan  <gary@gnu.org>
14568         Much as we have tried not to make it the callers' responsibility
14569         to maintain an lt_dlrealloc function pointer, it is too difficult
14570         to implement realloc as malloc/memcpy/free without knowing the
14571         size of the original block.  rpl_realloc has been deprecated since
14572         2002-10-30, but kaffe has real failures with that so it's time to
14573         bite the bullet.  Caller gets to maintain lt_dlrealloc:
14575         * NEWS (1.5.1): Updated.
14576         * libltdl/ltdl.c (LT_DLREALLOC): Use lt_dlrealloc so the user can
14577         update the function pointer to match lt_dlmalloc.
14578         (lt_emalloc): Use lt_dlrealloc rather than hardcoding realloc.
14579         * doc/libtool.texi (Libltdl interface): Describe lt_dlrealloc now
14580         that it too has become part of the exported interface to libltdl.
14582 2003-08-01  Peter O'Gorman  <peter@pogma.com>
14584         * libtool.m4 (darwin): Use "-undefined dynamic_lookup" if the
14585         user set MACOSX_DEPLOYMENT_TARGET to 10.3 or greater.
14586         * libltdl/ltdl.c (dyld): Save the error from the first lookup
14587         to report in lt_dlerror(). Otherwise the error is always
14588         "Symbol _foo not in /usr/lib/libSystem.dylib".
14589         Thanks to Chris Zubrzycki for reporting this.
14591 2003-08-01  Robert Boehne  <rboehne@gnu.org>
14593         * libltdl/ltdl.h: Tweak the header to support visual studio.
14595 2003-07-31  Greg Eisenhauer  <eisen@cc.gatech.edu>
14597         * ltmain.in: Provide absolute paths for dlopen and dlpreopen
14598         files in generating uninstalled libtool libraries.
14599         * mdemo2/main.c, mdemo2/Makefile.am, mdemo2/README,
14600         mdemo2/configure.ac, mdemo2/.cvsignore, mdemo/mlib.c,
14601         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
14602         tests/mdemo2-make.test: New files for testing above feature.
14603         * configure.ac, bootstrap, tests/Makefile.am: Accomodate new
14604         test directory.
14605         * mdemo/Makefile.am: Build libmlib.la for mdemo2 tests.
14607 2003-07-30  Tony Wyatt <wyattaw@optushome.com.au>
14609         * libtool.m4: Remove parentheses around finish_eval part which
14610         broke on amigaos pdksh.
14612 2003-07-30  Christiaan Welvaart  <cjw@daneel.dyndns.org>
14614         * tests/dryrun.test: Ignore any 'total' line from "ls -l" output.
14616 2003-07-30  Albert Chin-A-Young  <china@thewrittenword.com>
14618         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Correctly remove IRIX C++
14619         template files.
14621 2003-07-24  Robert Millan  <robertmh@gnu.org>
14623         * libtool.m4: More fixes for the new GNU/FreeBSD triplet.
14625 2003-07-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
14627         * config.guess, config.sub: Synchronized from ftp.gnu.org since
14628         Robert Millan's patch requires it.
14630 2003-07-14  Robert Millan  <zeratul2@wanadoo.es>
14632         * libtool.m4: Fixed to use the new GNU/FreeBSD triplet.
14633         * ltdl.m4: Fixed to use the new GNU/FreeBSD triplet.
14634         * ltmain.in: Remove GNU/FreeBSD cases, which are no longer needed.
14636 2003-07-14  Andreas Schwab  <schwab@suse.de>
14638         * libtool.m4 (_LT_AC_LOCK): Also match powerpc64-*linux* in
14639         addition to ppc64-*linux*.  From Markus Meissner
14640         <meissner@bogus.example.com>.
14642 2003-07-14  Dalibor Topic  <robilad@yahoo.com>
14644         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): For AmigaOS with pdksh,
14645         set the maximum command line length to 8K since otherwise the test
14646         takes over an hour to run.
14648 2003-06-25  Alexandre Oliva  <aoliva@redhat.com>, Tim Waugh  <twaugh@redhat.com>
14650         * libtool.m4: Replace mis-uses of path with pathname.
14651         (AC_PROG_LD_GNU): Don't quote $LD when running it.
14652         (_LT_AC_LANG_CXX_CONFIG): Use -nostdlib also when linking with g++
14653         and non-GNU ld.
14655 2003-06-11  Gary V. Vaughan  <gary@gnu.org>
14657         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION): Require LT_AC_PROG_SED to
14658         ensure $SED is set by the time it is used.
14660         * ChangeLog: Restore missing entries from 2003-04-22.
14662         * NEWS: Sychronised from branch-1-5.
14664 2003-06-03  Benjamin Reed  <ranger@befunk.com>
14666         * ltmain.in: search libraries in the order of preference, rather
14667         than picking .la's even if they're in a less preferred directory.
14669 2003-06-03  Robert Millan <rmh@debian.org>
14671         * ltdl.m4: Add support for GNU/FreeBSD.
14672         * ltmain.in: Add support for GNU/FreeBSD.
14674 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
14676         * libtool.m4: No need to use sed to remove leading comma when
14677         appending to $tagnames.
14679 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
14681         * tests/defs, tests/demo-conf.test, tests/demo-nofast.test,
14682         tests/demo-nopic.test, tests/demo-pic.test,
14683         tests/demo-shared.test, tests/demo-static.test,
14684         tests/depdemo-conf.test, tests/depdemo-nofast.test,
14685         tests/depdemo-shared.test, tests/depdemo-static.test:
14686         Pass build system type to tests to support environment
14687         where default system type not equal to build system type
14688         (eg. 64-bit HP-UX).
14690 2003-06-03  Peter O'Gorman  <peter@pogma.com>
14692         * libtool.m4 (darwin): Remove checks for Apple-specific gcc.
14693         * libltdl/ltdl.c (HAVE_MACH_O_DYLD_H): #define
14694         __private_extern__ for fsf gcc.
14695         * ltmain.in (darwin): Only add new paths to newlib_search_path.
14697 2003-06-03  Max Bowsher  <maxb@ukf.net>
14699         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Reorder cygwin's
14700         system library search path.
14702 2003-06-01  Robert Boehne  <rboehne@gnu.org>
14704         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match all qnx-nto
14705         as recent config.guess returns a slightly different string.
14706         * ltmain.in: Replace use of "od" with tr.
14708 2003-05-30  Gary V. Vaughan  <gary@gnu.org>
14710         * libltdl/ltdl.c (argz_insert): Corrected an off by one error when
14711         checking that before is not out of range.
14713 2003-05-29  Gary V. Vaughan  <gary@gnu.org>
14715         * libltdl/ltdl.c (lt_int_dyld_lib_install_name): Removed unused
14716         variable mh1.
14717         (sys_dyld_close): Removed unused variable size.
14719 2003-05-21  Bruno Haible  <bruno@clisp.org>
14721         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Add support for
14722         GNU/FreeBSD.
14724 2003-04-22  Alexandre Oliva  <aoliva@redhat.com>
14726         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
14727         mips*-linux* variants.
14729 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
14731         * libtool.m4 Switch on $CC and add paterns to cases.
14733 2003-04-22  Peter O'Gorman  <peter@pogma.com>
14735         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
14736         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
14737         value of shlibpath_overrides_runpath is used in the HARDCODE
14738         test and is set in the DYNAMIC_LINKER test.
14739         * ltmain.in [darwin]: We never need to relink on darwin.
14741 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
14743         * libtool.m4: Switch on $CC and add patterns to cases.
14745 2003-04-21  Richard Dawe  <rich@phekda.freeserve.co.uk>
14747         * doc/libtool.texi: Use @ifnottex instead of @ifinfo,
14748         to allow production of HTML documentation using makeinfo.
14750 2003-04-14  Robert Boehne  <rboehne@gnu.org>
14752         * NEWS: Updated.
14753         * configure.ac: Bumped version to 1.5a.
14755         GNU libtool 1.5 was released.
14757         * configure.ac: Bumped version to 1.5.
14758         * NEWS: updated.
14759         * README-alpha: Updated upload instructions.
14760         * README: Changed typo in version description.
14761         * config.guess, config.sub, texinfo.tex:  Synchronized from
14762         ftp.gnu.org.
14765 2003-04-10  Alexandre Oliva  <aoliva@redhat.com>
14767         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
14768         mips*-linux* variants.
14770 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
14772         * libtool.m4 Switch on $CC and add paterns to cases.
14774 2003-04-09  Peter O'Gorman  <peter@pogma.com>
14776         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
14777         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
14778         value of shlibpath_overrides_runpath is used in the HARDCODE
14779         test and is set in the DYNAMIC_LINKER test.
14780         * ltmain.in(darwin): We never need to relink on darwin.
14782 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
14784         * libtool.m4 Switch on `basename $CC` not $CC
14786 2003-04-05  Peter O'Gorman  <peter@pogma.com>
14788         * libtool.m4: if ZSH_VERSION is set then setopt NO_GLOB_SUBST so
14789         libtool works. Remove zsh echo test code, don't bother checking
14790         for zsh anymore in the darwin archive_expsym_cmds.
14792 2003-04-05  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
14794         * libtool.m4: Switch on $CC not $cc_basename.
14796 2003-04-02  Robert Boehne  <rboehne@gnu.org>
14798         * tests/defs: Quote $DJGPP to prevent problems with some shells.
14799         Pointed out by Albert Chin <libtool@thewrittenword.com>
14801 2003-04-01  Peter O'Gorman  <peter@pogma.com>
14803         * libtool.m4: Fix the echo test which I broke earlier.
14804         * ltmain.in: Make DESTDIR work on darwin, don't use otool.
14806 2003-03-31  Keith Packard  <keithp@keithp.com>
14808         * ltmain.in: New flag -version-number to be used for maintaining
14809         compatability with a previously non-Libtool versioning scheme.
14810         * doc/libtool.texi: Document it.
14812 2003-03-31  Naofumi Yasufuku  <naofumi@yasufuku.net>
14814         * ltmain.in (win32_libid): Fixed sed expression error in
14815         win32_nmres evaluation.
14817 2003-03-31  Albert Chin  <libtool@thewrittenword.com>
14819         * ltmain.in: Don't pass -R flags found in a .la's dependency_libs
14820         variable directly down to the linker.
14821         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
14823 2003-03-28  Richard Dawe  <rich@phekda.freeserve.co.uk>
14825         * Makefile.am: Define CONF_SUBDIRS.
14826         * tests/defs: Set CONFIG_SITE to /nonexistent, except on DJGPP,
14827         which requires its config.site, to work correctly.
14828         * tests/cdemo-conf.test, tests/cdemo-shared.test,
14829         tests/cdemo-static.test, tests/demo-conf.test,
14830         tests/demo-nofast.test, tests/demo-nopic.test,
14831         tests/demo-pic.test, tests/demo-shared.test,
14832         tests/demo-static.test, tests/depdemo-conf.test,
14833         tests/depdemo-nofast.test, tests/depdemo-shared.test,
14834         tests/depdemo-static.test, tests/f77demo-conf.test,
14835         tests/f77demo-shared.test, tests/f77demo-static.test,
14836         tests/mdemo-conf.test, tests/mdemo-shared.test,
14837         tests/mdemo-static.test, tests/pdemo-conf.test,
14838         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
14839         tests/tagdemo-static.test: Don't set CONFIG_SITE, now that
14840         tests/defs sets it.
14841         * tests/cdemo-exec.test, tests/demo-exec.test,
14842         tests/demo-inst.test, tests/depdemo-exec.test,
14843         tests/depdemo-inst.test, tests/f77demo-exec.test,
14844         tests/mdemo-exec.test, tests/mdemo-inst.test,
14845         tests/pdemo-exec.test, tests/pdemo-inst.test,
14846         tests/tagdemo-exec.test: When checking for the existence
14847         of executables, use the executable file extension from $EXEEXT.
14849 2003-03-28  Peter O'Gorman  <peter@pogma.com>
14851         * libltdl/ltdl.c (dyld): Remove some debug printf's, fix a bug.
14852         * ltmain.in (darwin): Only link against shared libraries when doing
14853         link_all_deplibs.
14855 2003-03-25  Robert Boehne  <rboehne@gnu.org>
14857         * bootstrap: Add f77demo to the directories that AUTOHEADER
14858         is run in.
14860 2003-03-21  Wesley W. Terpstra <terpstra@ito.tu-darmstadt.de>
14862         * ltmain.in: Don't accumulate directory information in clean mode.
14863         Include properly pathed wrapper script.
14865 2003-03-21  Peter O'Gorman  <peter@pogma.com>
14867         * README: Remove "Important" information about patching automake.
14868         * configure.ac: Fix misapplied patch in last commit
14869         * libtool.m4 (darwin): Check compiler is apple gcc, add -single_module
14870         support so that dyloading c++ shared libraries will work.
14871         * libtool.m4 (_LT_AC_TAGCONFIG): Add test -n to the tests so that
14872         it will work outside of libtool.
14873         * doc/PLATFORMS: Add darwin
14874         * f77demo/configure.ac: Add config.h which was misapplied previously.
14876 2003-03-20  Peter O'Gorman  <peter@pogma.com>
14878         * ltmain.in: Always use $echo not echo for consistency.
14879         Changes for darwin building. Warn if linking against libs linked
14880         with -module. Use module_cmds if available and building a module,
14881         move convenience double lib check,
14882         * libltdl/ltdl.c: ltdl support for darwin (first blush)
14883         * libltdl/README: note that darwin is supported
14884         * ltdl.m4: Changes for darwin, and for new shrext
14885         * libtool.m4: Changed the way darwin builds stuff (make check passes)
14886         added module_cmds, module_expsym_cmds and hardcode_automatic and put
14887         them in the libtool script. check for zsh's removal of escapes. Allow
14888         libraries to be stripped on darwin.
14889         * TODO: Remove the todo about zsh's removal of excapes. note that zsh
14890         echo works perfectly well, eval is screwed up. Seems to be fixed in
14891         latest zsh.
14892         * THANKS: added self :)
14893         * f77demo/configure.ac: Use config.h or it doesn't work.
14895 2003-03-19  Robert Boehne  <rboehne@gnu.org>
14897         * libtool.m4 (_LT_AC_TAGCONFIG): Add test around the macro that
14898         adds tags to the libtool script so that they won't run when not
14899         needed.
14900         * configure.ac: Set F77 to no when no Fortran compiler is found.
14902 2003-03-16  Charles Wilson  <cwilson@ece.gatech.edu>
14904         * ltmain.in (win32_libid): use $SED, not head.
14906 2003-03-02  Alexandre Oliva  <aoliva@redhat.com>
14908         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
14909         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
14910         and reset them for a C++ environment.  Use the with_gnu_ld setting
14911         from AC_PROG_LD.
14913 2003-02-28  Ralph Schleicher  <rs@nunatak.allgaeu.org>
14915         * ltmain.in: Only append a dot to the wrapper script when
14916         building on cygwin/MSYS (check for $build, not $host).
14918 2003-02-27  Samuel Meder  <meder@mcs.anl.gov>
14920         * libtool.m4 (ia64): Add support for Intel compiler (ecc) on IA64
14921         Linux.
14923 2003-02-27  Benjamin Reed <ranger@befunk.com>
14925         * THANKS: Added people who have submitted 3 or more patches
14926         to libtool to the THANKS file.
14927         * README: Added notes about the Darwin (MacOSX) support.
14929 2003-02-25  Bob McElrath  <bob+libtool@mcelrath.org>
14931         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Add support for
14932         the Compaq C compiler for Alpha Linux.
14934 2003-02-25  Benjamin Reed  <ranger@befunk.com>
14936         * libtool.m4 (darwin): Disable hardcoding library paths to
14937         make relinking unnecessary.
14939 2003-02-24  Robert Boehne  <rboehne@gnu.org>
14941         * libltdl/configure.ac: Use AC_CONFIG_AUX_DIR([.]) to place
14942         auxilary files in the libltdl directory.
14943         * Makefile.am: Add to the ltmain.sh rule to copy it into the
14944         libltdl subdirectory.
14945         * bootstrap: Explicitly handle ltmain.sh in libltdl, and pass
14946         --copy to automake.
14948 2003-02-24  Ralph Schleicher  <rs@nunatak.allgaeu.org>
14950         * libtool.m4 (AC_LIBTOOL_SETUP): Check for ar.
14952 2003-02-23  Peter O'Gorman  <peter@pogma.com>
14954         * libtool.m4 (darwin): Revamp darwin platform support.
14955         * ltdl.m4 (darwin): Support dlcompat if found.
14956         * ltmain.in: Make sure ranlib is run if needed when piecewise
14957         linking.
14959 2003-02-23  Alexandre Duret-Lutz  <adl@gnu.org>
14961         * ltmain.in (--help): Show mailing-address for bug reports.
14962         (--version): Mention only the most recent copyright year.
14963         * libtoolize.in (--help): Show mailing-address for bug reports.
14964         (--version): Mention only the most recent copyright year.
14966 2003-02-19  Alexandre Oliva  <aoliva@redhat.com>
14968         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
14969         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
14970         and reset them for a C++ environment.  Use the with_gnu_ld setting
14971         from AC_PROG_LD.
14973         * libtool.m4: Replace $linker_flags with $compiler_flags wherever
14974         it is used as argument to $CC.
14976         * libtool.m4: Use linux version_type on IRIX with GNU ld.
14977         Prefix -soname, -set_version and their arguments with ${wl}.  Add
14978         -melf* linker scripts to LD, and use them to determine libsuff,
14979         shlibsuff and libmagic.
14981 2003-02-17  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
14983         * libtool.m4: Intel icc fixups for version 7.0.
14985 2003-02-17  Ralph Schleicher  <rs@nunatak.allgaeu.org>
14987         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Prepend a dot to
14988         the value of the shrext (aka shared_ext) variable and delete it
14989         from the library_names_spec and soname_spec definitions.  That
14990         way the user can omit the shared library suffix by setting it
14991         to the empty string.
14992         (AC_LIBTOOL_LANG_CXX_CONFIG): Strengthen renaming commands for
14993         the KCC compiler.
14994         * doc/libtool.texi (Link mode): Update the manual.
14996 2003-02-17  Charles Wilson  <cwilson@ece.gatech.edu>
14998         * ltmain.in (win32_libid): Rewritten to improve speed.
15000 2003-02-11  Richard Dawe  <rich@phekda.freeserve.co.uk>
15002         * libtoolize.in: Use the program found by AC_PROG_LN_S
15003         to create symlinks.
15005 2003-02-08  Jan Kratochvil  <project-libtool@jankratochvil.net>
15007         * ltmain.in: Handle duplicate object file names when performing
15008         piecewise archive linking by renaming object files when needed.
15010 2003-02-05  Robert Boehne  <rboehne@gnu.org>
15012         * libtool.m4 (AC_CHECK_LIBM): Search for a real symbol in
15013         the math library rather than 'main', it causes problems for
15014         C++ compilers with certain Auto* tools.
15015         (AC_LIBLTDL_INSTALLABLE): ditto.
15017 2003-02-05  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
15019         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG)
15020         (AC_LIBTOOL_PROG_LD_SHLIBS): Rewrite printf commands so
15021         that the format string cannot be mistaken as an option.
15022         Reported by Martin MOKREJS.
15024 2003-02-05  Robert Boehne  <rboehne@gnu.org>
15026         * libtool.m4: Modify the sys_lib_search_path_spec to allow
15027         for either native sed or GNU sed to be used.
15029 2003-02-04  Nick Hudson  <skrll@netbsd.org>
15031         * libtool.m4: don't use -nodefaultlibs in archive_commands
15032         or archive_expsym_commands on NetBSD.
15034 2003-02-04  Albert Chin-A-Young  <china@thewrittenword.com>
15036         * libtool.m4: Change setting of archive_cmds_need_lc
15037         so that it doesn't overwrite the previous setting.
15039 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
15041         * libtool.m4: Allow compiler variable, CC, CXX, etc. to
15042         be a program name with arguments. Original version stripped
15043         arguments for CC.
15045 2003-01-28  Charles Wilson  <cwilson@ece.gatech.edu>
15047         * ltmain.in: add code for a binary wrapper
15048         to use with uninstalled executables on cygwin/mingw.
15049         Make sure that --mode=clean gets shell wrapper and
15050         binary wrapper.  When sourcing the shell wrapper,
15051         invoke using a terminal `.' on cygwin/mingw to
15052         avoid the automatic append-.exe behavior.
15054 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
15056         * libtool.m4: Hardcode library paths into libraries on IRIX.
15058 2003-01-18  Robert Boehne  <rboehne@gnu.org>
15060         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Don't add -DPIC
15061         for languages other than C and C++.
15063 2003-01-13  Albert Chin-A-Young  <china@thewrittenword.com>
15065         * libtool.m4, ltmain.in: Add support for hppa*64* based on
15066         a patch by Ross Alexander <ross.alexander@uk.neceur.com>.
15067         Credit to Ross! Use +b to hardcode library runtime path.
15068         Add new variable, $hardcode_libdir_flag_spec_ld, that
15069         is equivalent to $hardcode_libdir_flag_spec but is used
15070         when ld is used for linking. This works around having to
15071         set wl=''.
15073 2003-01-12  Robert Boehne  <rboehne@gnu.org>
15075         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Revert an
15076         accidental rearranging of dylib and so for darwin.
15078 2003-01-10  Robert Boehne  <rboehne@gnu.org>
15080         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Modify the
15081         "-shrext" option so that is works properly under Darwin.
15082         Modify the processing of 'gcc -print-search-dirs' under
15083         Darwin to make it behave like GNU gcc does.
15084         (AC_LIBTOOL_CONFIG): Single quote $shrext.
15085         * ltimain.in: Expand shared_ext just before it is used
15086         so that it can be conditional on the value of $module.
15088 2002-12-31  Benjamin Reed  <ranger@befunk.com>
15090         * ltmain.in [darwin]: disable lazy linking, needed
15091         to resolve C++ global constructor issues
15093 2002-12-30  Ralph Schleicher  <rs@nunatak.allgaeu.org>
15095         Rework by Robert Boehne <rboehne@gnu.org>
15096         * ltmain.in: New link option -shrext.
15097         * libtool.m4 (AC_LIBTOOL_CONFIG): New libtool variable shrext.
15098         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Replace all hard coded shared
15099         library file name extensions in library_names_spec and
15100         soname_spec with $shrext.
15101         * doc/libtool.texi (Link mode): Document it.
15103 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
15105         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): modify
15106         $archive_expsym_cmds to restore support for using
15107         .def files via the -export-symbols switch.
15108         (AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]): in both the [CXX]
15109         branch and the default branch, improve $export_symbols_cmds
15110         so that DATA symbols are properly  labelled.  In the default
15111         branch, duplicate the _CXX_CONFIG correction for
15112         $archive_expsym_cmds.
15114 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
15116         * libtool.m4 (AC_LIBTOOL_RC): AC_PROG_RC doesn't exist --
15117         but we do AC_DEFUN something called LT_AC_PROG_RC.
15118         Call that instead.
15120 2002-12-30  Robert Boehne  <rboehne@gnu.org>
15122         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Copy the section
15123         for Darwin from AC_LIBTOOL_PROG_LD_SHLIBS so that the CXX
15124         tag doesn't use the g++ defaults for the OS X compiler.
15126 2002-12-30  Albert Chin-A-Young <china@thewrittenword.com>
15128         * libtool.m4: Sync methods used to detect GNU ld.
15130 2002-12-20  Robert Boehne  <rboehne@gnu.org>
15132         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
15133         AC_LIBTOOL_PROG_CC_C_O): Do not escape } or ? in sed argument.
15135 2002-12-19  Robert Boehne  <rboehne@gnu.org>
15137         * ltmain.in: Use the sed program found by LT_AC_PROG_SED
15138         so that relink commands don't get truncated.
15140 2002-12-18  Robert Boehne  <rboehne@gnu.org>
15142         * libtool.m4: Move AC_REQUIRE([LT_AC_PROG_SED]) to AC_PROG_LD
15143         so it is invoked earlier.
15145 2002-12-11  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
15147         * libtool.m4: Add support for Intel icc compiler for Linux.
15149 2002-12-11  Robert Boehne  <rboehne@gnu.org>
15151         * ltmain.in: Revert the version +1 change for IRIX, it could
15152         cause compatibility problems.
15154 2002-11-22  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
15156         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
15157         AC_LIBTOOL_PROG_CC_C_O): Changed method for compilation with
15158         custom flags to be language-independent.  Thereby removed
15159         CFLAGS/GCJFLAGS mixup bug.  Imitate Autoconf-style logging.
15160         Log entries no longer discarded by compilation failures.
15161         (_LT_AC_LANG_C_CONFIG, _LT_AC_LANG_CXX_CONFIG,
15162         _LT_AC_LANG_GCJ_CONFIG): Tuned settings of
15163         lt_simple_compile_test_code and lt_simple_link_test_code
15164         to avoid warnings that could break some option detections.
15165         (AC_LIBTOOL_PROG_COMPILER_NO_RTTI): Removed
15166         redundant "-c conftest.$ac_ext" in the argument to
15167         AC_LIBTOOL_COMPILER_OPTION.
15168         (AC_LIBTOOL_PROG_LD_SHLIBS): Replaced C-specific conftest
15169         source code with $lt_simple_compile_test_code, to support
15170         the "-lc" test with other languages.
15172 2002-11-19  Paul Eggert  <eggert@twinsun.com>
15174         Don't assume that egrep and fgrep exist.  POSIX 1003.1-2001 no
15175         longer requires them; you're supposed to use grep -E and grep -F
15176         instead.  Also, don't assume that "test -a" works, since POSIX
15177         doesn't require it.
15179         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_LANG_C_CONFIG,
15180         _LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,
15181         AC_LIBTOOL_PROG_LD_SHLIBS):
15182         egrep -> grep, when that makes no difference.
15183         * libtoolize.in: Likewise.
15184         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Likewise.
15185         * ltmain.in: Likewise.
15186         * demo/Makefile.am (hc-direct): Likewise.
15187         * pdemo/Makefile.am (hc-direct): Likewise.
15188         * tests/build-relink.test, tests/build-relink2.test,
15189         tests/cdemo-conf.test, tests/cdemo-shared.test,
15190         tests/cdemo-static.test, tests/demo-conf.test,
15191         tests/demo-nofast.test, tests/demo-shared.test,
15192         tests/demo-static.test, tests/depdemo-conf.test,
15193         tests/depdemo-nofast.test, tests/depdemo-shared.test,
15194         tests/depdemo-static.test, tests/hardcode.test,
15195         tests/mdemo-conf.test, tests/mdemo-shared.test,
15196         tests/mdemo-static.test, tests/pdemo-conf.test,
15197         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
15198         tests/tagdemo-static.test: Likewise.
15200         * libtool.m4 (AC_PROG_EGREP):
15201         New macro, defined if Autoconf doesn't define.
15202         (AC_PATH_TOOL_PREFIX, AC_PROG_LD_GNU): Use it.
15203         (AC_PROG_LD, AC_PROG_NM, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE):
15204         Use shell pattern matching rather than egrep.
15205         (AC_LIBTOOL_CONFIG): Set lt_EGREP and EGREP.
15207         * demo/Makefile.am (SET_HARDCODE_FLAGS): Use sed instead of egrep.
15208         * pdemo/Makefile.am (SET_HARDCODE_FLAGS): Likewise.
15210         * tests/defs (EGREP, FGREP): New vars.
15212         * ltmain.in: egrep -> $EGREP
15213         * tests/assign.test, tests/demo-exec.test, tests/demo-inst.test,
15214         tests/pdemo-exec.test, tests/pdemo-inst.test, tests/sh.test:
15215         Likewise.
15217         * tests/hardcode.test: fgrep -> $FGREP
15219         * tests/f77demo-exec.test: test -a -> test &&
15221 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15223         * ltmain.in: When using gcc, pass -mfoo to the linker
15224         via $compiler_flags in order to pass architecture information to
15225         the linker (e.g. 32 vs 64-bit). This may also be accomplished via
15226         -Wl,-mfoo but this is not reliable with gcc because gcc may use
15227         -mfoo to select a different linker, different libraries, etc, while
15228         -Wl,-mfoo simply passes -mfoo to the linker. If there is a better
15229         solution, please let me know what it is.
15231 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15233         * tests/Makefile.am: Conditional assignment of FFLAGS = @FFLAGS@
15234         does not appear to be necessary given that Automake makes this
15235         assignment by default.  The condition is removed since Automake
15236         1.7.1 complains about it.
15238 2002-11-18  Jakub Jelinek  <jakub@redhat.com>
15240         * libtool.m4: Support linking of 64-bit libraries on
15241         sparc{,v[789]}-*linux*, s390*-*linux*, ppc*-*linux*
15242         GNU/Linux systems when the platform default is to build
15243         32-bit libraries.
15245 2002-11-18  Andreas Jaeger  <aj@suse.de>, Bo Thorsen  <bo@suse.de>
15247         * libtool.m4: Support linking of 32-bit libraries with ld
15248         on the x86-64, ppc64, s390x and sparc64 GNU/Linux systems.
15250 2002-11-18  Akim Demaille  <akim@epita.fr>
15252         * ltmain.in: Do not change the PATH in the wrappers: let them
15253         launch the real binary using its path.
15255 2002-11-18  Kevin Ryde  <user42@zip.com.au>
15257         * doc/libtool.texi (Library tips): Note array dimensions.
15259 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15261         * tests/*.test: MinGW's MSYS treats files under /dev
15262         specially. This causes 'test -r /dev/null/config/site' to
15263         improperly report success, causing configure to fail. Change the
15264         CONFIG_SITE definition from "/dev/null/config/site" to
15265         "/nonexistent" to avoid this problem.
15267 2002-11-18  Charles Wilson  <cwilson@ece.gatech.edu>
15269         * libtool.m4 (_LT_AC_LOCK): remove support for ancient
15270         versions of mingw and cygwin.
15271         (AC_LIBTOOL_POSTDEP_PREDEP): new function.
15272         moved the "find hidden library dependencies" code here
15273         from AC_LIBTOOL_LANG_CXX_CONFIG.  Attempted to make it
15274         multi-tag compatible, but currently only CXX calls it.
15275         (AC_LIBTOOL_LANG_CXX_CONFIG): set
15276         enable_shared_with_satic_runtimes to 'no' by default
15277         Set it to 'yes' for cygwin, mingw, pw32. Replace
15278         "find hidden library dependencies" code with a call
15279         to the new function AC_LIBTOOL_POSTDEP_PREDEP.
15280         Consolidate cygwin and mingw/pw32 stanzas.
15281         (AC_LIBTOOL_LANG_F77_CONFIG): set
15282         enable_shared_with_static_runtimes to 'no' by default
15283         (AC_LIBTOOL_CONFIG): add
15284         enable_shared_with_static_runtimes to the list of variables
15285         to write into ltmain.sh; include it in the libtool script
15286         template as allow_libtool_libs_with_static_runtimes.
15287         (AC_LIBTOOL_PROG_LD_SHLIBS): set
15288         enable_shared_with_static_runtimes to 'no' by default
15289         Set it to 'yes' for cygwin, mingw, pw32.
15290         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): only put cr in regexp
15291         if the build_os is mingw, not host_os
15293         * ltmain.in (case deplibs_check_method): for all appropriate
15294         cases, if allow_libtool_libs_with_static_runtimes, then remove
15295         predeps and postdeps from the list of dependencies that must
15296         be checked for "dynamicness".  For the "none" case, the
15297         presence of compiler-generated postdeps and predeps should
15298         not trigger "inter-library dependencies not supported" error.
15299         (initial setup after arg processing): on cygwin/mingw, allow
15300         compiler-generated dependent libs to be duplicated without
15301         elimination.
15302         (initial search loop for deplibs): if the deplib in question
15303         is a libtool lib, then if
15304         allow_libtool_libs_with_static_runtimes then parse the .la file.
15305         If the .la file only has an "old_library", add the deplib
15306         directly to the deplibs list (-lstdc++) and DON'T use the .la
15307         file; this allows the (case deplibs_check_method) change above
15308         to take effect.
15309         * ltmain.in (for pass in $passes loop): remove predeps,
15310         postdeps, and compiler_lib_search_path from dependency_libs.
15312 2002-11-08  Robert Boehne  <rboehne@gnu.org>
15314         * doc/libtool.texi: Add --mode=* to every example using libtool.
15316 2002-11-03  Ossama Othman  <ossama@doc.ece.uci.edu>
15318         * ltmain.in: add support for installing into temporary
15319         staging area (e.g. 'make install DESTDIR=...')
15321 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
15323         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): restore setting
15324         allow_undefined_flag=unsupported for cygwin and mingw.
15325         (AC_LIBTOOL_PROG_LD_SHLIBS): ditto, for both "normal" gcc/ld
15326         and for the (unmaintained?) MSVC case.
15328 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
15330         * doc/libtool.texi (Install mode): document new
15331         -inst-prefix option.
15333 2002-11-02  Robert Boehne  <rboehne@gnu.org>
15335         * ltmain.in: Print a warning if the mode is not specified.
15336         * doc/libtool.texi: Document the change that the mode must be
15337         specified.
15339 2002-10-30  Charles Wilson  <cwilson@ece.gatech.edu>
15341         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): use printf, not
15342         echo. (AC_DEPLIBS_CHECK_METHOD): use new shell function
15343         win32_libid on w32 platforms
15344         * ltmain.in: add new section for shell functions. Add
15345         win32_libid() shell function.
15346         * f77demo/Makefile.am: add -no-undefined flag
15348 2002-10-30  Rob Browning  <rlb@defaultvalue.org>
15350         * ltdl.c (realloc): Remove custom realloc. (#define
15351         rpl_realloc realloc) and comment out later code for custom
15352         realloc. You can't define your own malloc unless you know
15353         enough about the malloc in use to be able to tell how big
15354         the src ptr is. The disabled code incorrectly used the
15355         *destination* ptr to decide how much to copy. This
15356         sometimes results in out-of-bound accesses which cause
15357         segfaults. This is a quick hack for now; we may want
15358         something cleaner later.
15359         (tryall_dlopen_module): check to be sure (dirname_len > 0) before
15360         testing first character against '/'.
15361         (try_dlopen): check for feof(file) in read loop -- otherwise
15362         infinite loop?
15364 2002-10-25  Robert Boehne  <rboehne@gnu.org>
15366         * ltmain.in (-XCClinker): New flag passes a linking option
15367         directly to the compiler driver without appending ${wl}.
15369 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
15371         * README-alpha: Add some release note templates for inspiration
15372         and consistency at release time.
15374         * Makefile.am (cvs-diff): Compress the generated diff file, ready
15375         for upload to ftp.gnu.org.
15377 2002-10-25  Howard Chu  <hyc@highlandsun.com>
15379         * ltmain.in [aix]: Be sure to deal with xlc_r, cc_r and other
15380         compiler variants.
15382 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
15384         * libtool.m4 (_LT_AC_FILE_IMPGEN_C): Removed.  No longer used.
15385         (_LT_AC_FILE_LTDLL_C): Ditto.
15386         (AC_LIBTOOL_CONFIG) [cygwin, mingw, pw32, os2]: Don't call
15387         _LT_AC_FILE_LTDLL_C or _LT_AC_FILE_IMPGEN_C.
15389 2002-10-25  Albert Chin-A-Young  <china@thewrittenword.com>
15391         * libtool.m4: When LDFLAGS="-Wl,-brtl,[other options]", the
15392         -brtl special-case code for AIX never gets triggered because
15393         were are being too specific about how we search for -brtl.
15394         Use case statement to avoid this. Remove extraneous
15395         semicolon.
15396         * ltmain.in: Recognize the IBM xlc compiler.
15398 2002-10-24  Andrew Suffield  <asuffield@debian.org>
15400         * libltdl/ltdl.c (lt_dlopenext): Corrected sense of "file not
15401         found" check.
15403 2002-10-24  Ossama Othman  <ossama@doc.ece.uci.edu>
15405         * ltmain.in: Support compiler names matching g++*
15407 2002-10-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15409         * libtool.m4: Removed old Windows cruft.
15410         * libtool.m4: Adapted pw32 to be like Cygwin/MinGW.
15412 2002-10-23  Robert Boehne  <rboehne@gnu.org>
15414         ltmain.in: Do not add 1 to the version under IRIX, it is
15415         not necessary.
15417 2002-10-15  Charles Wilson  <cwilson@ece.gatech.edu>
15419         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): avoid long delay on
15420          cygwin/Win9x when computing commandline length.
15421         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): fix postinstall_cmds when
15422         sources are in a subdirectory
15423         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): use $PATH_SEPARATOR, not
15424         $ac_path_separator
15425         * configure.ac: move depdemo-specific stuff.  You must configure
15426         libtool before you can try './libtool --features'.
15427         * mdemo-inst.test: set $PATH to include the directory in which
15428         the modules are installed (on cygwin, DLL search path is the
15429         $PATH)
15431 2002-10-15  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15433         * ltmain.in: MinGW works identically to Cygwin.
15434         * libtool.m4: lt_cv_sys_max_cmd_len hard-coded to 8192
15435         *  Model MinGW configuration after Cygwin configuration.
15436         Some portions share implementation.
15438 2002-10-15  Elizabeth Barham <soggytrousers@yahoo.com>
15440         * libtool.m4: Pattern MinGW library naming after that
15441         used by Cygwin except use 'lib' prefix rather than 'cyg'.
15442         * Transfer some configuration from Cygwin with adjustments
15443         for MinGW.
15445 2002-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
15447         * libtool.m4: When a module is built for AIX, the 'lib'
15448         prefix isn't needed, neither is the version. AIX dlopen
15449         will honor the RPATH in a library.
15451 2002-10-11  Christoph Egger  <Christoph_Egger@gmx.de>
15453         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS, darwin): Add
15454         -install_name to the link line only when -dynamiclib is
15455         specified for a module.  Use -bind_at_load when linking C++
15456         shared libraries.
15458 2002-10-04  Elizabeth Barham  <soggytrousers@yahoo.com>
15460         * libtool.m4 (AC_LIBTOOL_SETUP): GCC now checks -shared to
15461         create a dll for Windows targets.
15463 2002-09-24  Robert Boehne  <rboehne@gnu.org>
15465         * ltmain.in: Fixed a few spelling errors.
15467 2002-09-17  Robert Boehne  <rboehne@gnu.org>
15469         * libltdl/ltdl.c: Commented out access() call that checks for a
15470         library file's existence and permissions, as it appears to fail
15471         in every case.
15473 2002-09-09  Albert Chin-A-Young  <china@thewrittenword.com>
15475         * libtool.m4: Custom $symcode for Tru64 UNIX to catch 'Q',
15476         read-only constants.
15478 2002-09-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.de>
15480         * libtool.m4 (osf[345]): Append $major to soname_spec.
15481         Reflect this in library_names_spec.
15482         * ltmain.in (osf): Prefix $major with '.' for use as extension.
15484 2002-08-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15486         * ltdl.m4 & libltdl/ltdl.c: Port fully to native Win32 API.
15488 2002-07-31  Robert Boehne  <rboehne@gnu.org>
15490         * f77demo/.cvsignore: New file, forgotten in the last commit.
15492 2002-07-31  Eric Lindahl  <erik@theophys.kth.se>
15494         * libtool.m4 (AC_PROG_LIBTOOL): Added support for the new F77
15495         Fortran support tag.
15496         (AC_LIBTOOL_PROG_CC_C_O, _LT_AC_TAGCONFIG): Support F77 tag.
15497         (AC_LIBTOOL_F77, _LT_AC_LANG_F77, AC_LIBTOOL_LANG_F77_CONFIG):
15498         New macros for F77 tag Fortran support.
15499         * configure.ac: Add support for creating the new F77 tag.
15500         * bootstrap: Add f77demo directory to the list to be processed.
15501         * Makefile.am: Add support for FFLAGS and FLIBS.
15502         * tests/Makefile.am: Add new Fortran tests.
15503         * tests/f77demo-*.test: New files.
15504         * f77demo/configure.ac, f77demo/cprogram.c, f77demo/fooc.c
15505         * f77demo/foof.f, f77demo/foo.h, f77demo/fprogram.f
15506         * f77demo/Makefile.am, f77demo/README: New files.
15508 2002-07-16  Gary V. Vaughan  <gary@gnu.org>
15510         * libltdl/ltdl.c (tryall_dlopen): We need to catch missing file
15511         errors early so that file_not_found() can detect what happened.
15513 2002-06-26  Bob Friesenhahn  <bfreisen@simple.dallas.tx.us>
15515         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Remove
15516         extraneous '=' character which appears in gcc 3.1
15517         -print-search-dirs output.
15518         Handle both upper and lower case drive letters when testing for
15519         Windows vs POSIX style path output from -print-search-dirs
15520         output.
15522 2002-06-24  Robert Boehne  <rboehne@gnu.org>
15524         * ltmain.in (Piecewise linking): Add a clause to skip creating
15525         the export file until the reloadable object file(s) have been
15526         created, then use them as input for $export_symbols_cmds.
15528 2002-06-23  Albert Chin-A-Young  <china@thewrittenword.com>
15530         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Need to quote [ and ] for
15531         Autoconf.
15533         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): HP/UX needs
15534         libltdl_cv_sys_dlopen_deplibs set to yes.
15536 2002-06-23  Kevin Ryde  <user42@zip.com.au>
15538         * libtool.m4 (AC_LIBTOOL_SETUP, _LT_AC_LOCK): Use
15539         AC_PROVIDE_IFELSE to test AC_LIBTOOL_WIN32_DLL and
15540         AC_LIBTOOL_DLOPEN, necessary for autoconf 2.53.
15542 2002-06-23  Gary V. Vaughan  <gary@gnu.org>
15544         * libltdl/ltdl.c (argz_insert): Actually, BEFORE can be NULL
15545         when *PARGZ_LEN is non-NULL, so the assertion to the contrary was
15546         bogus.
15547         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
15548         and Albert Chin-A-Young <china@thewrittenword.com>
15550 2002-06-21  Gary V. Vaughan  <gary@gnu.org>
15552         * libltdl/ltdl.c (foreach_dirinpath): Ensure that filename is '\0'
15553         terminated by all code paths.
15554         Reported by Lutz Müller <lutz@users.sourceforge.net>
15556 2002-06-20  Gary V. Vaughan  <gary@gnu.org>
15558         From Kevin Ryde  <user42@zip.com.au>:
15559         * doc/libtool.texi (Platform quirks): s/dependan/dependen/
15560         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Ditto.
15561         * TODO: Ditto.
15563 2002-06-13  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
15565         * ltmain.in (irix, nonstopux): Set major before use.
15567 2002-06-11  Daniel Kobras  <kobras@linux.de>
15569         * libltdl/ltdl.c (try_dlopen): Don't return bogus handle to user
15570           if tryall_dlopen() fails.
15572 2002-06-01  Gary V. Vaughan  <gary@gnu.org>
15574         * tests/pdemo-exec.test: Typo.  s/hell-static/hell_static/
15576 2002-05-31  Charles Wilson  <cwilson@ece.gatech.edu>
15578         * NEWS: Updated.
15579         * libtool.m4: use $NM to create the symbol list on cygwin, not
15580         $ltdll_cmds as on mingw.  For all tags, (and host=cygwin) set
15581         allow_undefined_flag="" so that the --auto-import magic
15582         works properly.  For all tags (and host=cygiwn) set
15583         always_export_symbols=no -- it is unnecessary thanks to
15584         binutils' auto-export magic.
15585         * libltdl/ltdl.c: Don't force cygwin to use the LoadLibrary
15586         wrapper; use cygwin's builtin implementatino of dl*.
15587         * cdemo/Makefile.am: the downside of unsetting
15588         'allow_undefined_flag' -- we must include -no-undefined
15589         in the _la_LDFLAGS variable.
15590         * depdemo/l1/Makefile.am: ditto.
15591         * depdemo/l2/Makefile.am: ditto.
15592         * depdemo/l3/Makefile.am: ditto.
15593         * depdemo/l4/Makefile.am: ditto.
15594         * mdemo/Makefile.am: ditto.
15595         * tagdemo/Makefile.am: ditto.
15596         * demo/Makefile.am: ditto.  But also, we must make special
15597         provision to clean up the hell0 wrapper script.
15598         * pdemo/Makefile.am: ditto -no-undefined.  ditto hell0.
15599         And use 'hell_static' instead of 'hell.static'.
15600         * tests/pdemo-inst.test: use 'hell_static' instead
15601         of 'hell.static'.
15602         * tests/pdemo-exec.test: ditto.
15604 2002-05-30  Charles Wilson  <cwilson@ece.gatech.edu>
15606         * tests/build-relink2.test: look for installed libl3.la
15607         in $prefix/lib/ as well as $prefix/lib/extra/.
15609 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
15611         * tests/hardcode.test: Use libtool --config to collect the
15612         variable values for the test, otherwise the tag values interfere
15613         with a straight grep.
15615 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
15617         Finally fix the annoying bug which always adds all tags to the
15618         libtool script built by your project configure.  Now we set the
15619         default tags depending on whether AC_PROG_CXX et. al. are actually
15620         called from configure.ac.
15622         * libtool.m4 (_LT_AC_TAGCONFIG): Don't default the tagnames when
15623         no --with-tags argument is given.
15624         (_LT_AC_SHELL_INIT): Factored out from the AC_DIVERT_PUSH code
15625         in...
15626         (_LT_AC_PROG_ECHO_BACKSLASH): ...which now calls the macro
15627         instead.
15628         (AC_LIBTOOL_CXX): Use _LT_AC_SHELL_INIT to add CXX to the
15629         initialisation sequence for tagnames.
15630         (AC_LIBTOOL_GCJ): Similarly for GCJ tag.
15631         (AC_LIBTOOL_RC): Likewise for RC tag.
15633 2002-05-21  Jon Meredith  <jonm@alchemetrics.co.uk>
15635         * ltmain.in: Fix a problem on SCO OpenServer5 that caused a
15636         failure in three depdemo-make tests. For some reason the linker
15637         tries to find the dependent libraries using the library search
15638         path before it has read the libraries specified with absolute
15639         paths in the full commandline. This patch add -L's for each of
15640         the dependent library directories so that they can be resolved.
15642 2002-05-09  Nick Hudson  <skrll@netbsd.org>
15644         * libtool.m4: Update support for NetBSD
15645         * ltdl.m4: Make sure that libltdl_cv_func_dlopen and
15646         libltdl_cv_lib_dl_dlopen are set and used instead of the
15647         ac_cv_ versions. Also, use lt_cv_sys_global_symbol_pipe
15648         instread of global_symbol_pipe. This fixes the detection of
15649         dlopen on BSD derived plaforms and more importantly fixes
15650         need_uscore detection.
15652 2002-05-06  Paul Eggert  <eggert@twinsun.com>
15654         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): head -1 -> sed 1q to
15655         port to POSIX 1003.1-2001 hosts, like textutils 2.0.21 with
15656         _POSIX2_VERSION=200112.
15658 2002-05-06  Paul Eggert  <eggert@twinsun.com>
15660         * ltmain.in: Don't assume that "sort +2" works, as POSIX
15661         1003.1-2001 says that "sort +2" is supposed to sort the file
15662         named "+2".  An example host that behaves like this is
15663         textutils 2.0.21 with _POSIX2_VERSION=200112.
15665 2002-05-06  Loren James Rittle  <rittle@latour.rsch.comm.mot.com>
15667         * ltmain.in: Detect and handle object name conflicts while
15668         piecewise linking a static library.
15670 2002-05-02  Dave Vasilevsky  <thevas@mac.com>
15672         * ltmain.in: Remove convenience libraries from deplibs for Darwin.
15674 2002-05-02  Fritz Elfert  <felfert@to.com>
15676         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Modify archive_expsym_cmds
15677         to catch properly handle dll alias symbols.
15679 2002-04-24  Kevin Ryde  <user42@zip.com.au>
15681         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use $build_os not $host_os.
15683 2002-04-14  Robert Boehne  <rboehne@gnu.org>
15685         * doc/libtool.texi (C++ libraries): Finally updated to reflect
15686         Libtool's support for C++.
15688 2002-04-14  Jean-Frederic Clere  <jfrederic.clere@fujitsu-siemens.com>
15690         * libtool.m4: Update support for Fujistu-Siemens Computers (FSC).
15691         * ltmain.in: Add support for EBCDIC based systems.
15693 2002-04-07  Robert Boehne  <rboehne@gnu.org>
15695         * libtool.m4 (LT_AC_PROG_SED): Refactor, removing temporary directory
15696         and consistent use of the shell variable namespace "lt_ac_".
15698 2002-04-02  Robert Boehne  <rboehne@gnu.org>
15700         * ltmain.in: Finish the tag matching logic started yesterday and
15701         refactor it a bit.
15703 2002-04-01  Robert Boehne  <rboehne@gnu.org>
15705         * ltmain.in: Handle the case when no tag is explicitly set, and
15706         $base_compile has a space in front of $CC, and revert the setting
15707         of tagname checked in on 2002-3-14.
15709 2002-04-01  Robert Boehne  <rboehne@gnu.org>
15711         * tagdemo/foo.cpp: Use C++ IO to catch problems linking to C++
15712         runtime libraries.
15713         * tagdemo/main.cpp: Ditto.
15715 2002-03-16  Gary V. Vaughan  <gary@gnu.org>
15717         * TODO: Removed obsolete comments about RMS' package system.
15719 2002-03-14  Robert Boehne  <rboehne@gnu.org>
15721         ltmain.in: Touch-up to make testsuite pass, and default tagname
15722         to CC when it isn't explicitly set.
15724 2002-03-14  Anthony Green  <green@redhat.com>
15726         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Albert Chin's gcj fix.
15727         (AC_LIBTOOL_PROG_COMPILER_PIC): Per Bothner's change for not
15728         using -DPIC with gcj.
15730 2002-03-11  Bruce Korb  <bkorb@gnu.org>
15732         * ltmain.in(compile): bring a touch of order to the option processing
15734 2002-02-09  Gary V. Vaughan  <gary@gnu.org>
15736         * NEWS: Updated.
15737         * THANKS: Added Rob Collins and Chuck Wilson for their cygwin
15738         work.
15740         From Robert Collins  <robert.collins@itdomain.com.au>:
15741         * configure.ac (AC_EXEEXT): Needed for DOSish systems.
15742         * libtool.m4 (shlibpath_overrides_runpath) [cygwin]: Set to yes
15743         when compiling with gcc.
15744         (lt_prog_compiler_pic) [cygwin]: No longer needs the -DDLL_EXPORT
15745         hack, so we just say the pic is the default.
15746         (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin]: Extract symbols from a
15747         library normally.
15748         [cygwin]: Declare C++ compiler characterisics for g++, taking into
15749         account the new auto-import support in cygwin ld.
15750         * ltmain.in (specialdeplibs) [cygwin]: Be careful about
15751         eliminating duplicate -lgcc's from the link line.
15752         [cygwin]: Be smarter about .exe suffixes.
15753         * demo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Support
15754         DOSish systems properly.
15755         * depdemo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Ditto.
15756         * demo/Makefile.am (deplibs-check): Allow for .exe suffix.  Use
15757         hell_static instead of hell.static for multi-`.' inhibited OSes.
15758         * tests/demo-exec.test: Ditto.
15759         * tests/demo-inst.test: Ditto.
15760         * demo/foo.h [cygwin]: Sanitize cygwin dll support.
15761         * demo/foo.c (_LIBFOO_COMPILATION_): No longer required.
15762         * demo/hello.c (_LIBFOO_COMPILATION_): Ditto.
15763         * depdemo/Makefile.am (bin_PROGRAMS): Use depdemo_static instead
15764         of depdemo.static for multi-`.' inhibited OSes.
15765         * tests/depdemo-exec.test: Ditto.
15766         * tests/depdemo-inst.test: Ditto.
15767         * mdemo/Makefile.am (bin_PROGRAMS):  Ditto for mdemo.static.
15768         * tests/dryrun.test: Ditto.
15769         * tests/mdemo-exec.test: Ditto.
15770         * tests/mdemo-inst.test: Ditto.
15771         * tests/build-relink.test:  Be careful about possible .exe
15772         suffixes.
15773         * tests/noinst-link.test: Allow for .exe suffix.
15775 2002-02-07  Alexandre Oliva  <aoliva@redhat.com>
15777         Reverted incorrect patch:
15778         2001-10-24  H.J. Lu  <hjl@gnu.org>
15779         * ltmain.sh: Allow link against an archive when building a
15780         shared library.
15781         * libtool.m4 (lt_cv_deplibs_check_method): Always use
15782         file_magic for Linux ELF.
15784 2002-01-30  Robert Boehne  <rboehne@ricardo-us.com>
15786         * libtool.m4 (LT_AC_PROG_SED): Removed a mysterious newline.
15788 2002-01-28  Robert Boehne  <rboehne@ricardo-us.com>
15790         * libtool.m4 (LT_AC_PROG_SED): New macro tests sed for truncation of
15791         output.  AC_REQUIRE the new macro.
15792         * ltmain.in: Use $SED rather than plan old sed, as set by the new
15793         macro LT_AC_PROG_SED.
15795 2002-01-10  Volker Christian  <voc@soft.uni-linz.ac.at>
15797         * libltdl/ltdl.c (find_handle_callback): treat the result of a call
15798         to access(2) correctly when deciding whether a library can be found
15799         in a directory from user_search_path.
15801 2002-01-07  Robert Boehne  <rboehne@ricardo-us.com>
15803         * NEWS: Fixed wrong path for texinfo.tex.
15804         * configure.ac: Bumped version to 1.4e.
15806         GNU libtool 1.4d was released.
15808         * configure.ac: Bumped version to 1.4d.
15809         * NEWS: updated.
15810         * config.guess, config.sub, texinfo.tex:  Synchronised from
15811         ftp.gnu.org.
15813 2001-12-06  Jens Petersen  <petersen@redhat.com>
15815         * ltmain.in: Replace all test "-a"s by "&& test"
15816         for portability.
15818 2001-11-28  Robert Boehne  <rboehne@ricardo-us.com>
15820         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Change the
15821         factor of saftey as 3/4 of the result was not low enough.
15823 2001-11-28  Gary V. Vaughan  <gary@gnu.org>
15825         * libtoolize.in: The test for whether AC_PROG_LIBTOOL is defined
15826         in aclocal.m4 had bitrotted slightly.
15827         Reported by Takahiko Kawasaki <Takahiko_Kawasaki@cii.csk.co.jp>
15829 2001-11-27  Donald D. Anderson  <dda@sleepycat.com>
15831         * ltmain.in: Treat freebsd like openbsd, in that -lc/-lc_r should
15832         not be explicitly used.  ld handles this depending on the presence
15833         of the -pthread option.
15835 2001-11-27  Robert Boehne  <rboehne@ricardo-us.com>
15837         With help from Michael Matz <matz@kde.org>:
15838         * ltmain.in:  Add a new command line argument
15839         --preserve-dup-deps for preserving duplicate
15840         dependent libraries.
15841         * libtool.texi: Document it.
15843 2001-11-27  Kevin Ryde  <user42@zip.com.au>
15845         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Send "test"
15846         warnings to /dev/null, helps FreeBSD and maybe others.
15848 2001-11-15  Albert Chin-A-Young  <china@thewrittenword.com>
15850         * libtool.m4: quote LTCC because autoconf AC_PROG_CC_STDC
15851         macro might add to $CC if options needed by compiler to
15852         grok ANSI.
15854 2001-11-15  Gary V. Vaughan  <gary@gnu.org>
15856         From Joseph S. Myers  <jsm28@cam.ac.uk>:
15857         * ltmain.in: Typo.
15859 2001-11-15   Mo DeJong  <supermo@bayarea.net>
15861         * ltmain.in: Place parens around a generated relink_command
15862         so it is run is a subshell. This avoids an install error
15863         where libtool ended up in the wrong directory after
15864         relinking a .la file.
15866 2001-10-31  Raja R Harinath  <harinath@cs.umn.edu>
15868         * configure.ac (pkgdatadir): Move the invocation of AC_INIT_AUTOMAKE
15869         before the use of $PACKAGE in $pkgdatadir.
15870         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
15872 2001-10-28  Gary V. Vaughan  <gary@gnu.org>
15874         From Tom Bates  <Tom.Bates@compaq.com>:
15875         * libtool.m4 [mips-compaq-nonstopux]: New port.
15876         * ltmain.in [mips-compaq-nonstopux]: Support
15877         $version_type == nonstopux.
15879 2001-10-28  Albert Chin-A-Young  <china@thewrittenword.com>
15881         * libltdl/ltdl.c (foreach_dirinpath): change some types to size_t
15882         from int because strlen() returns size_t. argz_len changed to
15883         size_t because argzize_path() takes 3rd argument as size_t, not
15884         int.
15885         Based on lint run from Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15887 2001-10-27  Gary V. Vaughan  <gary@gnu.org>
15889         * libtool.m4 (_LT_AC_TAGCONFIG): Cray sed does not allow character
15890         sets to contain the separator character.
15891         Reported by Kevin Ryde <user42@zip.com.au>
15893         * ltdl.m4 (AC_WITH_LTDL): New macro to add `--with-included-ltdl'
15894         option to configure, but to find an appropriate ltdl library and
15895         append the right options to link it.
15897 2001-10-24  Kevin Ryde  <user42@zip.com.au>
15899         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Remove a stray ' quote.
15901 2001-10-24  H.J. Lu  <hjl@gnu.org>
15903         * ltmain.sh: Allow link against an archive when building a
15904         shared library.
15905         * libtool.m4 (lt_cv_deplibs_check_method): Always use
15906         file_magic for Linux ELF.
15908 2001-10-12  Guido Draheim  <guidod-2001q3@gmx.de>
15910         * ltdl.m4: Changed "underscode to underscore".
15912 2001-10-06  Gary V. Vaughan  <gary@gnu.org>
15914         * configure.ac: General modernisation and cleanup.
15915         * cdemo/configure.ac: Ditto.
15916         * demo/configure.ac: Ditto.
15917         * depdemo/configrue.ac: Ditto.
15918         * ltdl/configure.ac: Ditto.
15919         * ltdldemo/configure.ac: Ditto.
15920         * mdemo/configure.ac: Ditto.
15921         * pdemo/configure.ac: Ditto.
15922         * tagdemo/configure.ac: Ditto.
15924 2001-10-04  Albert Chin-A-Young <china@thewrittenword.com>
15926         * libltdl/ltdl.c: Match function return type with prototype
15927         (add static initializer to file_not_found).
15929 2001-09-30  Gary V. Vaughan  <gary@gnu.org>
15931         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): s/INCLTDL/LTDLINCL/ for
15932         consistency with gettext's INTLINCL.  Keep the old symbol too for
15933         backwards compatibility.
15934         (AC_LIBLTDL_INSTALLABLE): Ditto.
15935         * doc/libtool.texi (Distributing libltdl):  Adjust documentation.
15937 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
15939         * ltdl.m4 (AC_LTDL_DLLIB): Even though HP-UX 10.20 and 11.00
15940         support shl_load *and* dlopen, dlopen works correctly only
15941         with a patch. Because we want to avoid the situation where we
15942         build on a system with the patch but deploy on a system without,
15943         use shl_load exclusively if found.
15945 2001-09-22  Gary V. Vaughan  <gary@gnu.org>
15947         * libtool.m4 (_LT_AC_FILE_LTDLL_C): Be carefule that the start
15948         marker searched for by sed must start in column 0.
15949         (_LT_AC_FILE_IMPGEN_C): Ditto.
15950         Reported by Tor Lillqvist <tml@iki.fi>
15952 2001-09-22  Tor Lillqvist  <tml@iki.fi>
15954         * libtool.m4 [mingw* cygwin*]: Small improvement for mingw-hosted
15955         tool support (while still running libtool on cygwin). In that case
15956         PATH_SEPARATOR is ':', but gcc -print-search-dirs still prints its
15957         search path with ';' as separator.
15958         (AC_LIBTOOL_RC, AC_LIBTOOL_LANG_RC_CONFIG): Add support for .rc
15959         files (Windows resource files), compiled by the resource compiler
15960         (windres in mingw) to .o files.
15961         (AC_PROG_NM): Minor bug fix for $PATH elements with spaces in
15962         them.
15963         * configure.ac: Use LT_AC_PROG_RC.
15964         * ltmain.in: Check for .rc files.
15965         * NEWS: Updated.
15967         * ltmain.in: Add a space to $base_compile in the case statement,
15968         as the case labels checks for trailing spaces, but there aren't
15969         necessarily in $base_compile.
15971 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
15973         * libtool.m4: When setting archive_cmds for CC, don't
15974         test for $GXX but for $GCC on HP-UX. Indentation fixes.
15976 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
15978         From Tor Lillqvist <tml@iki.fi>:
15979         * ltmain.in [cygwin* mingw*]: Take care of the difference between
15980         wrapper script name and executable name.
15982         * libtool.m4 (archive_cmds) [darwin1.[0-2]]: Darwin uses zsh-3.1.6
15983         for /bin/sh, and that shell does not handle escaped quotes
15984         properly yet.
15985         Reported by Christopher Pfisterer <cp@chrisp.de>
15987 2001-09-21  Albert Chin-A-Young  <china@thewrittenword.com>
15989         * libltdl/ltdl.c: Match function return type with prototype
15990         (add static initializer to some functions) to prevent warnings
15991         from HP-UX cc.
15993 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
15995         * libltdl/ltdl.c: Added support for dmalloc, and uncovered some
15996         memory bugs as a result.
15998 2001-09-21  Albert Chin  <china@thewrittenword.com>
16000         * libtool.m4: Don't include main() when testing for command to
16001         parse $NM output because some C++ compilers don't allow you to
16002         take the address of main (e.g. HP-UX aCC).
16004         * libtool.m4: Some uses of $GXX were unquoted, but GXX is either
16005         NULL or yes.  Use "$GXX".
16007 2001-09-13  Assar Westerlund  <assar@sics.se>
16009         * ltdl.m4 (AC_LTDL_DLLIB): call dlopen with arguments so the test
16010         does not fail due to a prototype in dlfcn.h
16012 2001-09-13  Gary V. Vaughan  <gary@gnu.org>
16014         * ltdl.m4 (AC_CHECK_HEADERS): Check for assert.h.
16015         * libltdl/ltdl.c:  If not, disable assertions manually.
16017 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
16019         * bootstrap: Be robust to having no files that need removing.
16021         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump libltdl version to
16022         1.2.
16023         * libltdl/Makefile.am (libltdl_la_LDFLAGS):  Bump libtool library
16024         version info to 4:0:1.
16026 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
16028         * libtool.m4: No need to undefine([symbols]), proper quotation is
16029         enough.
16031 2001-09-10  Gary V. Vaughan  <gary@gnu.org>
16033         * libtool.m4: CVS Autoconf guarantees a decent default IFS, so
16034         there is no need for us to preset it anymore.
16035         Be careful not to set IFS="${IFS}$PATH_SEPARATOR" for PATH
16036         splitting, otherwise spaces in directory names will be lost.
16037         Use $PATH_SEPARATOR... don't rely on $ac_path_separator, which was
16038         an autoconf internal until just now, when it disappeared!
16039         * ltmain.in: Default IFS once, at the start.
16040         Reported by Akim Demaille <akim@epita.fr>
16042 2001-09-10   Brad  <brad@comstyle.com>
16044         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Missed an instance of
16045         Autoconf square bracket quoting style normalisation.
16047         * ltmain.in (-lc_r): Style improvement.
16049         * doc/libtool.texi: Remove obsolete references to ltconfig.
16050         * tests/quote.test: s/ltconfig/\$0/
16052 2001-09-09  Gary V. Vaughan  <gary@gnu.org>
16054         * libtool.m4: Use Autoconf square bracket quoting style
16055         consistently throughout.
16057 2001-09-08  Gary V. Vaughan  <gary@gnu.org>
16059         * bootstrap: Cleanup `autom4te' and `libtool' so that we don't
16060         get caught by something from a previous build.
16062         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Revert
16063         my 2001-09-06 patch.
16064         (no_undefined_flag)i [solaris*]: Revert Alexandre's 2001-04-11 patch.
16066 2001-09-07  Gary V. Vaughan  <gary@gnu.org>
16068         * libltdl/ltdl.c (foreach_dirinpath): argz_len should be a size_t.
16069         Reported by Albert Chin <china@thewrittenword.com>
16071 2001-09-06  Gary V. Vaughan  <gary@gnu.org>
16073         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [solaris*]: Typo. s/GXX/GCC/.
16075         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Changing
16076         no_undefined_flag from `-z text' to `-z defs' (see entry below at
16077         2001-04-11  Alexandre Oliva  <aoliva@redhat.com>) has a problem.
16078         when linking a shared library with gcc calling /usr/ccs/bin/ld (eg.
16079         the gcc supplied with Solaris 8 companion CD), using the flag
16080         -no-undefined, shared library linking will always fail because of
16081         the unresolved symbols from libgcc.a.  Consequently we have to
16082         provide a path to libgcc.a when linking shared libraries in
16083         conjunction with -no-undefined!
16085         From Michael Pruett <mpruett@engr.sgi.com>:
16086         * libltdl/ltdl.c (find_module): `0' valued arguments to
16087         tryall_dlopen_module() must be explicitly cast to avoid compiler
16088         warnings on some environments.
16090         From Daniel Johnson <danielj7@mac.com>:
16091         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Move from GNU
16092         ld section to non-GNU ld section.
16094 2001-09-05  Robert Boehne  <rboehne@ricardo-us.com>
16096         * pdemo/Makefile.am (helldl):  Automake 1.4 can't find the target
16097         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
16098         Using both targets to the left of the colon seems to work though!
16100 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
16102         * demo/Makefile.am (helldl):  Automake 1.4 can't find the target
16103         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
16104         Using both targets to the left of the colon seems to work though!
16106 2001-09-03  Brad  <brad@comstyle.com>
16108         * ltdl.m4 [AC_LTDL_SYS_DLOPEN_DEPLIBS]: Teach ltdl about the
16109         behavior of OpenBSD's dlopen().
16111 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
16113         From Marius Vollmer <mvo@zagadka.ping.de>:
16114         * libltdl/ltdl.c (tryall_dlopen_module): Don't forget to propogate
16115         errors over recurse levels.
16117 2001-09-03  Brad  <brad@comstyle.com>
16119         * libtool.m4 [openbsd*]: More improvements to the OpenBSD port.
16121 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
16123         From Albert Chin <china@thewrittenword.com>:
16124         * libtool.m4 (_LT_AC_LANG_C_CONFIG) [aix4*]: Be careful with
16125         shared namespaces for static and shared libs.
16126         (AC_LIBTOOL_DLOPEN_SELF): If all else fails, try dld_link from GNU
16127         DLD.
16129 2001-09-02  Christopher Pfisterer <cp@chrisp.de>
16131         * libtool.m4, ltmain.in: Linker flag and version numbering fixes
16132         for darwin.
16134 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
16136         Based on a patch from Marius Vollmer <mvo@zagadka.ping.de>:
16137         * NEWS: updated.
16138         * ltdl.m4 (AC_LIB_LTDL): Check for unistd.h.
16139         * ltdl.c: Include unistd.h if it exists.
16140         (LTDL_SEARCHPATH_VAR): Macro to prevent hardcoding
16141         "LTDL_LIBRARY_PATH".
16142         (LTDL_ARCHIVE_EXT): Macro to prevent hardcoding ".la".
16143         (archive_ext): Have only one copy of ".la" in the readonly
16144         segment of the compiled library.
16145         (find_handle_callback): Don't bother trying to dlopen the file if
16146         it doesn't exist.
16147         (find_handle): Don't bother searching for files if no search_path
16148         was supplied.
16149         (file_not_found): A new function to determine whether the last
16150         error was due to a file not found condition.
16151         (try_dlopen): Renamed from lt_dlopen() and changed to have the
16152         same footprint as tryall_dlopen.  This involved a minor rewrite of
16153         much of the internals of this function.
16154         (lt_dlopen): A new function wrapped arounf try_dlopen().
16155         (lt_dlopenext): If a file already has a suitable extension, don't
16156         bother adding additional extensions and trying to open those.
16157         Tidy up the rest of the code to prevent continued searching with
16158         an eventual FILE_NOT_FOUND when a genuine failure earlier in the
16159         search process could be legitimately reported.
16161         * demo/Makefile.am (helldl$(EXEEXT)): Automake-1.5 made me change
16162         this from just `helldl'.
16164 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
16166         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) Fixed a problem
16167         with export_symbols_cmds not being set for CXX tags, and
16168         not being properly set for any tag under AIX/Power.
16170 2001-08-19  Ossama Othman  <ossama@uci.edu>
16172         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Corrected and improved
16173           error message that is displayed when there was a problem
16174           compiling the C++ test program.  It still mentioned the now
16175           non-existent `ltcf-cxx.sh' file.
16177         * doc/libtool.texi (LTDL_SET_PRELOADED_SYMBOLS): Removed
16178           parentheses at end of starting "defmac" line, as pointed out by
16179           makeinfo.
16181 2001-08-18  Brad  <brad@comstyle.com>
16183         * ltmain.in: Do not remove -lm from deplibs for OpenBSD.
16185 2001-08-16  Gary V. Vaughan  <gary@gnu.org>
16187         * libltdl/ltdl.c (argz_create_sep): Don't forget to include the
16188         terminating '\0' when counting argz_len.
16189         (argz_create_sep): When canonicalizing argz, don't forget to copy
16190         the terminating '\0', incase canonicalization has shortened argz.
16191         (argz_stringify): Don't covert the final '\0' to a separator.
16193 2001-08-15  Gary V. Vaughan  <gary@gnu.org>
16195         * libltdl/ltdl.c (lt_dlhandle_next): Now we can loop through all
16196         loaded module handles as originally intended.
16198         * libltdl/ltdl.c (lt_dlseterror): Oops.  This never worked
16199         either, due to a pair of typos.  Now fixed.
16201         * libltdl/ltdl.c (N_ELEMENTS):  Deleted.  How come nobody noticed
16202         there was no way this could have ever worked?
16203         (lt_dlcaller_set_data): Now that valid caller_ids must be
16204         non-zero, allocate an addition entry in the caller_data vector and
16205         use a zero valued key as the end marker.
16206         (lt_dlcaller_get_data): Iterate up to the end marker in one pass.
16208 2001-08-14  Gary V. Vaughan  <gary@gnu.org>
16210         * libltdl/ltdl.c (lt_dlcaller_register): Caller ids are allocated
16211         starting from value `1', so that clients can use a value of zero
16212         to indicate that libltdl has not yet initialised.
16214         * ltmain.in (exec_cmd): Fix quoting in execute mode so that the
16215         double quotes added by libtool (to prevent lossage with embedded
16216         spaces in filenames etc.) are not interpreted as literals by the
16217         shell.
16219 2001-08-13  Gary V. Vaughan  <gary@gnu.org>
16221         * libltdl/ltdl.c (find_file_callback): Fix a multiple free()
16222         bug.
16223         (tryall_dlopen_module): Remove some unused variables.
16225         * libltdl/ltdl.c (lt_dlinsertsearchdir): Calculate the address
16226         of the end of user_search_path correctly.
16228         * libltdl/ltdl.c (rpl_argz_stringify): New fallback implementation.
16229         * ltdl.m4 (AC_LTDL_FUNC_ARGZ):  Test for argz_stringify in libc.
16230         * libltdl/ltdl.c (lt_argz_insertinorder): Renamed from
16231         lt_argz_insert to make room for...
16232         (lt_argz_insert): Wraps argz_insert with libltdl error handling.
16233         (lt_dlpath_insertdir): Insert new path elements into an
16234         argzized path.
16235         (lt_dlinsertsearchdir): New function to insert new search
16236         directories anywhere into user_search_path using the above.
16237         (lt_dladdsearchdir): Rewritten to use lt_dlpath_insertdir.
16238         * libltdl/ltdl.h (lt_dlinsertsearchdir): Prototype for export.
16239         * doc/libtool.texi (Libltdl interface): Document it.
16240         * NEWS: Updated,
16242 2001-08-07  Gary V. Vaughan  <gary@gnu.org>
16244         From Albert Chin <china@thewrittenword.com>:
16245         * ltmain.in [irix*]: $with_gcc is either "yes" or "" (empty string)
16246         with current autoconf, so we need to be robust to that when testing
16247         it,
16249 2001-08-06  Gary V. Vaughan  <gary@gnu.org>
16251         From Brad <brad@comstyle.com>:
16252         * libtool.m4 (deplibs_check_method) [aix*]: Removed redundant setting
16253         of this variable.
16255 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
16257         * libltdl/ltdl.c (load_deplibs): Insert missing 1st argument to
16258         LT_EMALLOC.
16260 2001-08-05  Tim Van Holder  <tim.van.holder@pandora.be>
16262         * ltdl.m4: Canonicalize descriptive text used with
16263         AC_DEFINE.
16265         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR): Remove.
16266         (_LT_AC_PROG_ECHO_BACKSLASH): Use $ac_path_separator
16267         instead of $PATH_SEPARATOR.
16268         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Ditto.
16269         (_LT_AC_TAGCONFIG): Ditto.
16270         (AC_ENABLE_SHARED): Ditto.
16271         (AC_ENABLE_STATIC): Ditto.
16272         (AC_ENABLE_FAST_INSTALL): Ditto.
16273         (AC_PATH_TOOL_PREFIX): Ditto.
16274         (AC_PATH_MAGIC): Ditto.
16275         (AC_PROG_LD): Ditto.
16276         (AC_PROG_NM): Ditto.
16277         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): Ditto.
16279 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
16281         From Brad <brad@comstyle.com>:
16282         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]:  OpenBSD
16283         can build modules without a `lib' prefix and version number.
16284         Move the deplibs check code from here...
16285         (AC_DEPLIBS_CHECK_METHOD): ...to here.
16287 2001-08-05  Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
16289         * libtool.m4 [osf3*, osf4*, osf5*]: Tru64 *can* build modules
16290         without a `lib' prefix to the module name.
16292 2001-08-05  Gary V. Vuaghan  <gary@gnu.org>
16294         From Guido Draheim <Guido.Draheim@tek.com>:
16295         * ltmain.in: Display better and different error messages when
16296         library linkage fails in various ways.
16298 2001-08-05  Albert Chin-A-Young <china@thewrittenword.com>
16300         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Add newline after
16301         terminating '}' grouping character. Change '[0-9][0-9]'
16302         to '0' as we've already matched it.
16304 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
16306         From Brad <brad@comstyle.com>:
16307         * libtool.m4 (archive_cmds) [darwin, newsos, sysv4]: Replace
16308         1.3 era $linkopts references with $linker_flags.
16310         * libltdl/ltdl.c:  Fixed several careless mistakes in the
16311         foreach_dirinpath support functions.
16312         (foreach_dirinpath): Walk path elements with the argz API.
16314 2001-08-04  Gary V. Vaughan  <gary@gnu.org>
16316         From Sedi Master Albert Chin <china@thewrittenword.com>:
16317         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Replace the awk invocation
16318         with an equivalent bit of sed wizardry.
16320         From Edouard G. Parmelan <egp@free.fr>
16321         * libtool.m4 [darwin, openbsd]: Fix quoting problems with
16322         unquoted [] expressions.
16324 2001-08-03  Gary V. Vaughan  <gary@gnu.org>
16326         * bootstrap:  s/ltdldemo // -- This demo soesn't work properly,
16327         so I haven't committed it yet.
16329 2001-08-01  Ossama Othman  <ossama@doc.ece.uci.edu>
16331         * libtool.m4 (AC_LIBTOOL_SETUP): Require Autoconf-2.50 via the
16332         AC_PREREQ autoconf macro since the new libtool macros utilize
16333         macros from that version of Autoconf.
16335 2001-08-01  Gary V. Vaughan  <gary@gnu.org>
16337         * ltdl.m4: Bump serial number.
16338         General reformat and tify up in line with Autoconf-2.50 support.
16339         (AC_LTDL_FUNC_ARGZ): Test for system implementations of a
16340         handful of argz API calls, the error_t type, and the argz.h
16341         header.
16342         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump version number.
16343         * libltdl/ltdl.c (rpl_argz_append, rpl_argz_create_sep.
16344         rpl_argz_insert, rpl_rgz_next):  Fallback implementations of
16345         the similarly named functions for machines that don;t use glibc.
16346         (lt_dlrealloc):  New memory function pointer that can be set by
16347         the client.  Defaults to rpl_realloc, which in turn uses only
16348         lt_dlmalloc and lt_dlfree.
16349         (LT_EMALLOC, LT_EREALLOC): Set internal out-of-memory error
16350         inside the functions called by these new macros.  Simplified all
16351         callers by removing explicit client error reporting.
16352         (memmove):  Fallback implementation of overlap safe memory copy
16353         function.
16354         (tryall_dlopen):  Factorized common code into...
16355         (tryall_dlopen_module): ...this new helper function.
16356         (canonicalize_path):  Changed function signature to return success
16357         or failure.  Updated all callers.
16358         (foreachfile_callback):  Make use of argz API.
16359         (LT_DLSTRLEN): Moved from here...
16360         * libltdl/ltdl.h (LT_STRLEN): ...to here.  Updated all callers.
16361         (lt_dlrealloc):  Declare new memory management handle.
16363 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
16365         * libtool.m4 (mingw*) Revert the previous change as it was
16366         applied by mistake.
16368 2001-07-31  Guido Draheim  <Guido.Draheim@tek.com>
16370         * libtool.m4 (mingw*) sys_lib_search_path_spec:
16371         Sets the proper path separator for cross-compiling.
16373 2001-07-30  Steve Ellcey  <sje@cup.hp.com>
16375         * libtool.m4 (ia64-*-hpux*) Add support for ia64*-*-hpux* platform.
16377 2001-07-30  Robert Boehne  <rboehne@ricardo-us.com>
16379         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Fixed an
16380         incorrect resetting of lt_prog_compiler_static when using gcc
16381         under AIX Power.
16383 2001-07-31  Gary V. Vaughan  <gary@gnu.org>
16385         * bootstrap: Remove generated files (incase they are links) before
16386         rerunning the autotools to regenerate them.
16388 2001-07-30  Gary V. Vaughan  <gary@gnu.org>
16390         * libtool.m4 (AC_LIBTOOL_SETUP): Use Autoconf-2.50 era
16391         quadrigraphs and AC_HELP_STRING to bring AC_ARG_WITH/ENABLE
16392         macros up to date.
16393         (_LT_AC_LOCK): Ditto.
16394         (_LT_AC_TAGCONFIG): Ditto.
16395         (AC_PROG_LD): Ditto.
16396         (AC_ENABLE_SHARED): Ditto.  And eliminate the last remaining
16397         changequote invocations.
16398         (AC_ENABLE_STATIC): Ditto.  And Ditto.
16399         (AC_ENABLE_FAST_INSTALL):  Ditto.  And Ditto.
16400         * ltdl.m4 (AC_LTDL_ENABLE_INSTALL): Use Autoconf-2.50 era
16401         quadrigraphs and AC_HELP_STRING to bring AC_ARG_ENABLE
16402         macro up to date.
16403         * NEWS: Updated.
16405         * libtool.m4 [UnixWare7, OpenUNIX8]: Initial support for
16406         UnixWare7 and OpenUNIX8.  Accept these identifiers from the
16407         latest config.guess/config.sub as pseudonyms for sysv5uw[78].
16408         * NEWS: Updated.
16409         Reported by Boyd Lynn Gerber <gerberb@zenez.com>
16411 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
16413         * tests/sh.test: Add a new test to enforce X as the fill
16414         character in `test "X...'.
16415         Beef up the `test' tests to also check `test -.' and `test ! -.'
16416         phrases for compliance.
16417         * ltmain.in: Fix quoting problems uncovered by the new tests.
16419 2001-07-29  Andrew C. Feren  <aferen@CetaceanNetworks.com>
16421         * tests/sh.test:  New test to disallow `test $foo', where
16422         `test "$foo"' is much safer.
16423         * ltmain.in: Fix quoting problems uncovered by the new test.
16425 2001-07-29  Steve Ellcey  <sje@cup.hp.com>
16427         * libtool.m4 (lt_cv_sys_global_symbol_to_cdecl):  Change it from
16428         "extern char" to "extern int" so that GCC 3.0 won't complain and
16429         refuse to compile programs containing "extern char main()".
16431 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
16433         From Guido Draheim <Guido.Draheim@tek.com>:
16434         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Support
16435         cross compilation to mingw by allowing `:' or ';' as a path
16436         separator.
16437         * NEWS: Updated.
16439 2001-07-27  NIIBE Yutaka  <gniibe@m17n.org>
16441         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all
16442         for sh*-*-linux* (SuperH) too.
16444 2001-07-25  Ossama Othman  <ossama@debian.org>
16446         From Thomas Poindessous <poinde_t@epita.fr>
16447         * ltmain.in (pic_mode):  Added missing quotes around shell
16448         variable in "if test" conditional.
16450         From Peter Moulder <pmoulder@longford.csse.monash.edu.au>
16451         * ltmain.in (xform): Add support for pre-processed
16452         (e.g. `*.{i,ii}' sources).
16454 2001-07-25  Gary V. Vaughan  <gary@gnu.org>
16456         From Steve Ellcey <sje@cup.hp.com>:
16457         * libltdl/ltdl.c (foreach_dirinpath): Free unassigned pointer
16458         fix for `canonical'.
16460 2001-07-23  Robert Boehne  <rboehne@ricardo-us.com>
16462         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG, AC_LIBTOOL_PROG_LD_SHLIBS)
16463         [aix4*, aix5*]: Fixed a mispelled binder option under AIX.
16464         The option to throw errors for unresolved external references is
16465         -bernotok, not -bnoerok.
16467 2001-07-23  Gary V. Vaughan  <gary@gnu.org>
16469         * Makefile.am (EXTRA_DIST): Don't forget to distribute
16470         ChangeLog.1.
16472         From Erik Lindahl <E.Lindahl@chem.rug.nl>
16473         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Used on aix to discover
16474         the compiler's default library search path so that the MPI
16475         compiler suite is not hosed by the previously hardcoded path.
16476         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [aix4*, aix5*]: Use it.
16478 2001-07-23  Andreas Schwab  <schwab@suse.de>
16480         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
16481         s390*-*-linux* and m68*-*-linux*.
16483 2001-07-19  Robert Boehne  <rboehne@ricardo-us.com>
16485         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix tag support
16486         problems with CXX variables being overwritten by the individual
16487         macros.
16488         (AC_LIBTOOL_PROG_CC_C_O): Ditto.
16489         (AC_LIBTOOL_PROG_COMPILER_PIC): Ditto.
16490         (AC_LIBTOOL_LANG_CXX_CONFIG): Moved call to
16491         AC_LIBTOOL_SYS_HARD_LINK_LOCKS after the call to
16492         AC_LIBTOOL_PROG_CC_C_O as it depends on the result.
16493         (AC_LIBTOOL_LANG_GCJ_CONFIG): Ditto.
16494         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
16495         (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Used the macro
16496         _LT_AC_TAGVAR to ensure the correct variable is being queried.
16497         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Changed the naming of shared
16498         objects under IRIX back to what it was in the MLB.
16500 2001-07-23  Mark Kettenis  <kettenis@gnu.org>
16502         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN) [gnu*]: Remove spurious
16503         "break" and bogus comment
16504         (_LT_AC_LANG_CXX_CONFIG): Add support for the Hurd.
16505         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Add support for the Hurd.
16507 2001-07-16  Robert Boehne  <rboehne@ricardo-us.com>, Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
16509         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): add cases and comments for
16510         more platforms, including AIX, Digital/Tru64 UNIX and IRIX.
16512 2001-07-16  Gary V. Vaughan  <gary@gnu.org>
16514         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix ia64 AIX
16515         run-time-linking when not using gcc.
16516         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
16517         Reported by Dan McNichol <mcnichol@austin.ibm.com>
16519 2001-07-12  Gary V. Vaughan  <gary@gnu.org>
16521         From dda@sleepycat.com (Don Anderson):
16522         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [qnx]: New
16523         supported architecture.
16524         (AC_DEPLIBS_CHECK_METHOD) [qnx]:  Ditto.
16525         * NEWS: Updated.
16527         From Stefan Ondrejicka <ondrej@idata.sk>:
16528         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [cygwin*]: Make
16529         sure that /lib/w32api is searched for system libraries to
16530         match recent versions of cygwin.
16531         * NEWS: Updated.
16533 2001-07-12  Dan McNichol  <mcnichol@austin.ibm.com>
16535         From albert chin <china@thewrittenword.com>
16536         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix AIX
16537         run-time-linking when using gcc.
16538         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
16540 2001-07-11  Gary V. Vaughan  <gary@gnu.org>
16542         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
16543         solaris]: Doh!  the evalled variable shouldn't have been
16544         quoted.
16546         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
16547         solaris]: output_verbose_link_cmd have unquoted `*' in case
16548         statements for these architectures.  Be sure to quote them
16549         with a sed expression before passing to eval.
16550         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
16552 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
16554         * README-alpha:  s/configure.in/configure.ac.
16555         * configure.ac: Bumped version to 1.4c.
16557         GNU libtool 1.4b was released.
16559         * configure.ac: Bumped version to 1.4b.
16560         * NEWS: updated.
16561         * config.guess, config.sub, texinfo.tex:  Synchronised from
16562         ftp.gnu.org.
16564 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
16566         From Michael Elizabeth Chastain <chastain@cygnus.com>:
16567         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
16568         to a maximum of 512Kb, as it seems some HPUX 11.0 systems
16569         have trouble with 1MB.
16571 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
16573         * README-alpha:  Upgrade distribution instructions to include
16574         canonical location of texinfo.tex.
16576 2001-07-09  Timothy Wall  <twall@oculustech.com>
16578         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Don't disable shlibs
16579         on AIX5/IA64 with GNU ld.  Keep gnu defaults if using gnu tools
16580         on AIX5/IA64.
16582 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
16584         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
16585         to -1 on hurd, it has no command line argument limits.
16586         * ltmain.in Handle max_cmd_len=-1 for systems that don't have
16587         command line argument limits.
16589 2001-07-05  Gary V. Vaughan  <gary@gnu.org>
16591         * libtool.m4 (_LT_AC_LANG_C_CONFIG):  Revert to 1.3.x
16592         sematics, and always build static libs when the host machine
16593         cannot build shared libs.  Even if static libs were explicitly
16594         disabled.
16596 2001-07-02  Gary V. Vaughan  <gary@gnu.org>
16598         Cleanup of libltdl:
16599         * ltdl.c (lt_dladderror): Don't use `index' as a variable name,
16600         since it is a function on BSD based boxes.
16601         (lt_dlseterror): Ditto.
16602         (lt_dlexit): Remove unused errormsg declaration.
16603         (foreach_dirinpath):  Make sure filename is initialised.
16604         (find_handle):  Return NULL for a failed search.
16605         (foreachfile_callback): Don't reuse data2 symbol from prototype
16606         in func declaration to prevent symbol shadowing.
16607         * ltdl.h (lt_dlmutex_seterror): Don't use `error' as a parameter
16608         name, since it is a function on glibc boxes.
16610         * libtoolize.in:  Display --version in the same format as
16611         autoconf and automake.
16612         * ltmain.in: Ditto.
16614 2001-06-30  Gary V. Vaughan  <gary@gnu.org>
16616         Merge test improvements from multi-language-branch:
16617         * tests/defs: Find and set the value of CC probed by libtool.m4
16618         * tests/link-2.test: Use a .lo wrapper script, and the value of
16619         CC set by defs instead of hardcoding gcc.
16620         * tests/link.test: Use the value of CC set by defs instead of
16621         hardcoding gcc.
16622         * tests/quote.test: Ditto.
16623         * tests/suffix.test: Ditto.
16625         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Always set
16626         lt_prog_compiler_wl to `-Wl'.
16627         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
16629         * ltdl.m4 (AC_LTDL_DLLIB) [sco3.2*]: When searching for a dlopen
16630         implementation, and adding `-ldl' has failed, try linking a call
16631         to dlopen, #including dlfcn.h, and without -ldl.  On sco3.2 the
16632         header files redefines the interface symbols to point at the
16633         implementation symbols in libc.
16634         Reported by "Golubev I. N." <gin@mo.msk.ru>
16636 2001-06-29  Tim Van Holder  <tim.van.holder@pandora.be>
16638         General cleanup of autoconf-2.50 upgrade:
16639         * configure.ac: Mark as needing autoconf-mode in
16640         emacs.  Pass arguments to AC_INIT.
16641         * cdemo/configure.ac: Ditto.
16642         * demo/configure.ac: Ditto.
16643         * depdemo/configure.ac: Ditto.
16644         * libltdl/configure.ac: Ditto.
16645         * mdemo/configure.ac: Ditto.
16646         * pdemo/configure.ac: Ditto.
16647         * tagdemo/configure.ac: Ditto.
16648         * ltdl.m4: Mark as needing autoconf-mode in
16649         emacs.
16650         * libtool.m4: Mark as needing autoconf-mode in
16651         emacs.  Don't add () to AS_MESSAGE_LOG_FD.
16652         * libltdl/configure.ac: Use config-h.in as
16653         template for config.h.
16654         * tagdemo/configure.ac: Drop the AC_DIAGNOSTIC. Move
16655         AC_LANG([C++]) after the OBJEXT/EXEEXT check.
16657 2001-06-29  Gary V. Vaughan  <gary@gnu.org>
16659         From Tim Van Holder <tim.van.holder@pandora.be>
16660         * tests/suffix.test: Typo in 2nd for loop.
16662         From Tim Van Holder <tim.van.holder@pandora.be>
16663         * libltdl/Makefile.am (OBJECTS):  This was an implicit variable.
16664         instead state the list of object variables explicitly.
16666         From Bruno Haible <haible@ilog.fr>
16667         * libtool.m4:  undefine the m4 builtin `symbols', so that the
16668         string `symbols' can be used in the rest of the code without
16669         causing errors with autoconf-2.13.
16671         From "Golubev I. N." <gin@mo.msk.ru>
16672         * tests/Makefile.am (CPPLAGS): Typo. s/CPPLAGS/CPPFLAGS.
16674         * mdemo/Makefile,am (foo1_la_LIBADD): Add libsub.la, since foo1
16675         does use symbols from libsub.la -- only platforms that allow
16676         undefined symbols in libraries were able to cope with this
16677         previously.
16678         Reported by Robert Collins <robert.collins@itdomain.com.au>
16680         From "Golubev I. N." <gin@mo.msk.ru>
16681         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [sco3.2v5*]: Needs
16682         -wl,-Bexport to make self dlopen work.
16684 2001-06-28  Gary V. Vaughan  <gary@gnu.org>
16686         From  Alexander Bluhm  <Alexander.Bluhm@WiredMinds.de>
16687         * libltdl/ltdl.c (lt_dlopen): Fix bad memory initialisation
16688         assumptions.
16690         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE) [HPUX]: Define
16691         lt_cv_sys_global_symbol_to_c_name_address to be a sed expression
16692         for mangling the output of the symbol pipe into a brace delimited
16693         C declaration of symbol name and address.
16694         * ltmain.in: Use it to generate the fooS.c symbol name
16695         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
16697 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>, Gary V. Vaughan  <gary@gnu.org>
16699         * bootstrap: Use cp instead of ln -s, for systems without
16700         symlinks.  Reorder the statements to avoid repetition outside
16701         the loop.
16703 2001-06-28  Paolo Bonzini  <bonzini@gnu.org>, Gary V. Vaughan  <gary@gnu.org>
16705         Libtool now builds with the help of Autoconf-2.50!
16706         * configure.ac (AC_PREREQ):  Require Autoconf-2.50 or newer.
16707         (AC_PROG_CPP, AC_EXEEXT, AC_OBJEXT):  Removed.  Autoconf-2.50
16708         doesn't have the AC_REQUIRE bug that required these to be called
16709         explicitly from here.  Autoconf-2.50 uses this file instead of...
16710         * configure.in: ...this, which is now deleted.
16711         * cdemo/configure.ac, cdemo/configure.in: Ditto.
16712         * demo/configure.ac, demo/configure.in: Ditto.
16713         * depdemo/configure.ac, depdemo/configure.in: Ditto.
16714         * libltdl/configure.ac, libltdl/configure.in: Ditto.
16715         * mdemo/configure.ac, mdemo/configure.in: Ditto.
16716         * pdemo/configure.ac, pdemo/configure.in: Ditto.
16717         * tagdemo/configure.ac, tagdemo/configure.in: Ditto.
16718         * libltdl/acconfig.h:  Deleted.
16719         * Makefile.am (libtool): libtool now depends on configure.ac.
16720         * libtool.m4 (_LT_AC_LOCK):  Use 2.50's AC_LANG_PUSH/AC_LANG_POP
16721         instead of 2.13's AC_LANG_SAVE/AC_LANG_RESTORE.
16722         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
16723         (AC_LIBTOOL_LANG_CXX_CONFIG): Ditto.
16724         * libtoolize.in:  Use $configure_ac, instead of hardcoding
16725         configure.in.
16727 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>
16729         * pdemo/Makefile.am:  Use '=' instead of '+=' to shut up
16730         automake.
16732 2001-06-27  Gary V. Vaughan  <gary@gnu.org>
16734         From brad@openbsd.org:
16735         * NEWS: Updated.
16736         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]: Improved
16737         support for various openbsd platforms.
16738         (AC_LIBTOOL_PROG_LD_SHLIBS): Ditto.
16739         * ltmain.in: Ditto,
16741 2001-06-26  Gary V. Vaughan  <gary@gnu.org>
16743         * NEWS: Updated.
16744         * libltdl/ltdl,c (LT_DLMUTEX_LOCK): Renamed from MUTEX_LOCK to
16745         avoid potential namespace clash.
16746         (LT_DLMUTEX_UNLOCK, LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR):
16747         Ditto.
16748         (lt_dlmutex_lock_func): Renamed from mutex_lock to avoid a
16749         namespace clash of NCR MP-RAS.
16750         (lt_dlmutex_unlock_func, lt_dlmutex_seterror_func,
16751         lt_dlmutex_geterror_func): Ditto.
16752         Reported by Edouard G. Parmelan <egp@free.fr>
16754         * libltdl/ltdl.c (LT_DLSTRLEN): Call strlen only if the argument
16755         is non-NULL and non-zero in length.  Changed all calls to strlen
16756         appropriately.
16758         * libltdl/ltdl.c: Prototype all static functions.
16760         * ltdl.m4: Bump serial number to 3.
16761         (AC_LIB_LTDL): Require AC_HEADER_DIRENT for ltdl.c.
16762         * libltdl/ltdl.h (lt_dlforeachfile): Prototype for new function.
16763         * libltdl/ltdl.c: Include an appropriate header for the
16764         opendir/dirent api.
16765         (foreach_dirinpath): Visit each file in a list of directories.
16766         (find_file_callback): Factor out the core of find_file() to make
16767         use of foreach_dirinpath().
16768         (find_file): Use it!
16769         (find_handle_callback, find_handle): Ditto.
16770         (lt_dlforeachfile):  New function to find files in a searchpath.,,
16771         (foreachfile_callback): ...using this callback.
16772         * doc/libtool.texi (Libltdl interface): Document new
16773         lt_dlforeachfile api call.
16775 2001-06-25  Gary V. Vaughan  <gary@gnu.org>
16777         * THANKS:  Added Albert Chin-A-Young.
16779         * libtool.m4 (IFS): When IFS is changed to split a string for
16780         examination in a loop, restore it inside the loop as well as
16781         outside incase IFS is needed by commands in that loop.
16782         Reported by Pavel Roskin <proski@gnu.org>
16784 2001-06-25  Albert Chin-A-Young  <china@thewrittenword.com>
16786         * libtool.m4: Prefer shl_load to dlopen on HP-UX because dlopen
16787         won't work properly without a patch.
16789 2001-06-25  Daniel Harvey <daniel@amristar.com.au>
16791         * libtool.m4 (ltdll_cmds): [$]0 doesn't appear to translate through
16792         the script correctly, change to $''0
16794 2001-06-25  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
16796         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
16797         mips-*-linux* and mipsel-*-linux*.
16799 2001-06-24  Andreas Schwab  <schwab@suse.de>
16801         * libtool.m4 (AC_LIBTOOL_SETUP): Remove failed try to
16802         transform linux to linux-gnu in $host.
16803         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match $host_os against
16804         linux*, not linux-gnu*.
16805         (AC_DEPLIBS_CHECK_METHOD): Likewise.
16807 2001-06-24  Gary V. Vaughan  <gary@gnu.org>
16809         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR):  Set
16810         PATH_SEPARATOR appropriately if it is not set already,
16811         (_LT_AC_TAGCONFIG): Use it.
16812         (AC_ENABLE_SHARED): Ditto.
16813         (AC_ENABLE_STATIC): Ditto.
16814         (AC_ENABLE_FAST_INSTALL): Ditto.
16815         (AC_PATH_TOOL_PREFIX): Ditto.
16816         (AC_PATH_MAGIC): Ditto.
16817         (AC_PATH_PROG_NM): Ditto.
16819         From Tim Van Holder  <tim.van.holder@pandora.be>:
16820         * libtool.m4: Use the canonical absolute path test
16821         ([\\/]* | ?:[\\/]) and $PATH_SEPARATOR wherever
16822         appropriate.
16823         (AC_LIBTOOL_PROG_CC_PIC): Properly recognize DJGPP as a
16824         platform that doesn't support shared libraries.
16825         (AC_LIBTOOL_SYS_MAX_CMD_LEN): Avoid this test on DJGPP; use a
16826         fixed value (12K) instead.
16827         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't forget $ac_exeext
16828         when testing for link success.
16830         * configure.in (AM_INIT_AUTOMAKE): Bumped version to 1.4a.
16832         Complete the new configure time tags creation facility based on
16833         the ltcf-*.sh and ltconfig.in files from multi-language-branch:
16834         * libtool.m4:  More refactoring and reformatting.
16835         (_LT_AC_LANG_GCJ_CONFIG): Merged ltcf-gcj.sh from
16836         multi-language-branch.
16837         (_LT_AC_LANG_CXX_CONFIG): Merged ltcf-cxx.sh from
16838         multi-language-branch.
16839         * configure.in (AC_PROG_CXX, LT_AC_PROG_GCJ): Compiler checks must
16840         be done before AC_PROG_LIBTOOL which appends tags based on their
16841         results.
16843 2001-06-12  Robert Boehne  <rboehne@ricardo-us.com>
16845         * docs/libtool.texi: Updated the libltdl interface documentation
16846         to bring it up to date.
16848 2001-06-06  Gary V. Vaughan  <gary@gnu.org>
16850         * demo/Makefile.am (objdir): Use `libtool --config' for
16851         extracting configuration values, since a given value may
16852         be present in each tag.
16853         (hc-libpath): Ditto.
16854         (hc-minusL): Ditto.
16855         * libtool.m4 (_LT_AC_TAGCONFIG): Add tagged configurations from
16856         the --with-tags option.
16857         (_LT_AC_LTCONFIG_HACK): Factored out into separate configuration
16858         macros -- The interdependencies and running order are still
16859         immutable, and need a lot of work to fix.
16860         (AC_LIBTOOL_CONFIG): Taken from the previous incarnation of
16861         _LT_AC_LTCONFIG_HACK -- this macro is used both to create the
16862         primary (C language) libtool configuration from
16863         _LT_AC_LTCONFIG_HACK and also to append tagged configurations from
16864         _LT_AC_TAGCONFIG.
16865         * NEWS:  Merged from multi-language-branch.
16867 2001-06-06  Robert Boehne  <rboehne@ricardo-us.com>
16869         * bootstrap: Added tagdemo and pdemo tests from
16870         multi-language-branch.
16871         * configure.in: Added pdemo and tagdemo to CONF_SUBDIRS
16872         and merged references to CXX and GCJ from multi-language-branch.
16873         * pdemo: Added test directory from multi-language-branch.
16874         * tagdemo: Added test directory from multi-language-branch.
16875         * tests/Makefile.am: Merged additional tests from
16876         multi-language-branch.
16877         * tests/pdemo-*.test: ditto.
16878         * tests/tagdemo-*.test: ditto.
16880 2001-05-30  Gary V. Vaughan  <gary@gnu.org>
16882         * libtool.m4: Merged ltconfig.in from multi-language-branch.
16884 2001-05-28  Gary V. Vaughan  <gary@gnu.org>
16886         * libtool.m4: Reformatting for consistency, and some refactoring
16887         in preparation for ltcf-*.sh merge.
16889 2001-05-27  Gary V. Vaughan  <gary@gnu.org>
16891         * ltmain.in: Merged from multi-language-branch.
16892         * libtool.m4: Merged from multi-language-branch.
16893         * ChangeLog: Started afresh.  Old ChangeLog history moved to...
16894         * ChangeLog.1: ...here.
16896 2000-06-04  Mark Mitchell  <mark@codesourcery.com>
16898         * ltcf-c.sh (archive_cmds, archive_expsym_cmds) [solaris,
16899         with_gcc]: Use `gcc -shared' to build a shared library.
16901 2001-06-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
16903         * ltcf-c.sh (archive_cmd) [hpux, with_gcc]: Use gcc to link shared
16904         archives.
16906 2001-05-28  Simon Patarin <simon.patarin@inria.fr>
16908         * ltcf-cxx.sh (osf3/osf4/osf5): Support creation of C++  shared
16909         libraries when using g++ with native linker.
16911 2001-05-28  Albert Chin  <china@thewrittenword.com>
16913         * ltconfig.in (version_type, soname_spec) [aix4* | aix5*]: Use
16914         linux-style versioning, and remove trailing .o from soname_spec.
16916 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
16918         * ltcf-cxx.sh (allow_undefined_flag, no_undefined_flag)
16919         [aix4*|aix5*]: Prepend blank.
16921 2001-05-20  Alexandre Oliva  <aoliva@redhat.com>
16923         * configure.in: Reverted to 1.4, to avoid confusion with MLB.
16924         Mainline is the release snapshot, except for the ChangeLog version
16925         number, until the multi-language branch is merged into it.
16927         * ltconfig.in: Fix sh.test regression introduced in previous patch.
16929         * ltconfig.in (lt_cv_sys_max_cmd_len): Improve test to work better
16930         in case of non-built-in echo.  Set bounds correctly.
16932         * ltcf-cxx.sh (allow_undefined_flag) [aix4* | aix5*]: Fix quote
16933         error.
16935         * ltmain.in (exec_cmd): New variable.  Don't exec programs within
16936         the big `case'; set the variable instead, and exec the cmd
16937         afterwards, so that the shell gets a chance to clean up here-doc
16938         files.
16939         * NEWS: Update.
16941 2001-05-16  Alan Modra  <amodra@one.net.au>
16943         * libtool.m4 (lt_cv_deplibs_check_method): pass_all for hppa*-linux.
16945 2001-05-03  Andreas Jaeger  <aj@suse.de>, Andreas Schwab  <schwab@suse.de>
16947         * ltmain.in (relink_command): Arrange for wrapper script to save
16948         output to a variable and display it only if relinking fails.
16950 2001-04-25  Gary V. Vaughan  <gary@gnu.org>
16952         * configure.in: bumped version to 1.4a.
16954         GNU libtool 1.4 was released.
16956         * configure.in: Bumped version to 1.4.
16957         * config.sub, config.guess:  Synchronised from ftp.gnu.org.
16958         * NEWS: updated.
16960 2001-04-24  Peter Eisentraut  <peter_e@gmx.net>
16962         * libtool.m4: Support $host_os as /sysv5uw7*/ from newer
16963         config.guess in addition to older /unixware*/.  Use compiler
16964         driver, not linker, for linking shared libraries.
16966 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
16968         * libtool.m4, ltmain.in, libltdl/configure.in,
16969         tests/quote.test:  Remove stale references to ltconfig.
16971         * ltdl.m4 (AC_C_INLINE): No longer required.
16972         * libltdl/ltdl.c (strdup, strcmp, strchr, strrchr, memcpy, trim,
16973         free_vars):  Revoke inline keyword from declarations.  `static
16974         inline' is not very portable, and in addition Unixware 7.1.1's
16975         compiler says you can't access static variables from inline
16976         functions.
16977         Reported by Peter Eisentraut  <peter_e@gmx.net>
16979 2001-04-24 Albert Chin-A-Young <china@thewrittenword.com>
16981         * libtool.m4: Handle case where /bin/nm -p outputs multiple
16982         symbol types (like under HP-UX 11.00).
16984 2001-04-24  Thomas Tanner  <tanner@ffii.org>
16986         * TODO: describe problems with libltdl
16987         * ltmain.in (ILD): tidy up, add comments, remove dead code,
16988           merge duplicate code
16989         * ltmain.in (ILD): don't touch newdependency_libs after scan or
16990           dlopen pass
16991         * ltmain.in (ILD): don't dlpreopen dependency_libs of a dlopened
16992           module (remove absolutely wrong quick hack)
16993         * ltmain.in (ILD): remove wrong comments about duplicate removal
16994         * ltmain.in (ILD): build a static-only module if it has
16995           static libraries in its dependencies (so that libltdl can
16996           safely load dependency_libs)
16997         * ltmain.in (argument parsing): prefix comparsions of -l args with X,
16998           replace -lc with `-framework System' _after_ the ILD passes
16999         * ltmain.in (argument parsing): support dl[pre]open
17000           for both .o and .lo files
17001         * ltmain.in (deplibs_check): use portable test syntax
17002         * ltmain.in (help): document -prefer-[non-]pic flags
17003         * ltmain.in: improve readablity by adding some comments,
17004           rename uninst_* to notinst_* (more adequate name)
17006 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
17008         * doc/PLATFORMS:  More updates from subscribers to
17009         libtool@gnu.org.
17011         From Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
17012         * tests/Makefile.am (TESTS_ENVIRONMENT): Make sure the *.test
17013         scripts get the same make that was used in the top level
17014         directory.
17016 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
17018         * doc/PLATFORMS:  Updated with more platforms successfully
17019         tested by members of libtool@gnu.org.
17021 2001-04-23  Peter Eisentraut  <peter_e@gmx.net>
17023         * doc/PLATFORMS:  With this patch, freebsd4.3 passes the test
17024         suite.
17025         * libltdl/ltdl.c (lt_dlexit): Quit loop if only resident modules
17026         are left.
17028 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
17030         * doc/PLATFORMS:  With this patch, my Solaris boxes now pass the
17031         test suite,  Yay!
17032         From Albert Chin-A-Young <china@thewrittenword.com>
17033         * ltmain.in:  `test -L' is not portable, and infact breaks uninstall
17034         mode on Solaris.  Fallback to `test -h' and finally `test -f',
17035         but be careful not to let the failure status cause libtool to
17036         stop.
17038         From Simon Spero <ses@ibiblio.org>
17039         * ltdl.m4 (AC_LTDL_DLSYM_USCORE):  Add $LIBADD_DL while
17040         checking for dlsym _.
17042         From Simon Spero <ses@ibiblio.org>
17043         * libtool.m4 (lt_cv_deplibs_check_method) [darwin]: Set it!
17045         * TODO: Make a note to undo this later.
17046         From Christoph Pfisterer <cp@chrisp.de>
17047         * libtool.m4: Use $() execution substitution quotation to work
17048         around zsh builtin echo \ escape removal.
17050 2001-04-22  Peter Eisentraut  <peter_e@gmx.net>
17052         * bootstrap: Allow overriding the location aclocal, automake,
17053         autoconf, autoheader from the environment.
17055         * demo/Makefile.am: Automake 1.4e does not allow `+=' assignments
17056         if the variable was not set with `=' earlier.  `+=' was not useful
17057         here anyway.
17059 2001-04-22  Gary V. Vaughan  <gary@gnu.org>
17061         * ltdl.m4 (AC_CHECK_HEADERS): UW7 has sys/dl.h, so we must
17062         check for that here.
17063         * libltdl/ltdl.c (HAVE_SYS_DL_H):  Include it if necessary for
17064         the dlopen loader.
17065         Reported by Matthew Schalit <mschalit@pacbell.net>
17067         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use pass_all for
17068         various releases of UnixWare and OpenServer that support it.
17069         Reported by Matthew Schalit <mschalit@pacbell.net>
17071         * doc/PLATFORMS:  Updated with various platforms successfully
17072         tested by members of libtool@gnu.org.
17074 2001-04-21  Gary V. Vaughan  <gary@gnu.org>
17076         * TODO:  propose pkg-config merge.
17078 2001-04-21  Nick Hudson  <skrll@netbsd.org>
17080         * ltmain.in: Correct an error in yesterday's patch.
17082 2001-04-20  Nick Hudson  <skrll@netbsd.org>
17084         * libtool.m4: Improve NetBSD support.
17085         * ltmain.in: ditto.
17087 2001-04-19  Dan McNichol <mcnichol@austin.ibm.com>
17089         * libtool.m4: Build standard shared libraries on AIX POWER
17090         more like AIX does, with a shared object archived into lib<xxx>.a.
17091         On AIX -bexpall flag does strange things... Don't use it.
17092         Fix quotes around -berok flag.  Add support for AIX 5.
17093         Add support for run time linking on AIX POWER. (should work
17094         on AIX 4.2 and up).  Turn this feature on by adding -brtl flag
17095         to LD_FLAGS.  Add support for AIX on IA64. Note: AIX on IA64
17096         uses a SYSV type linker.  Add a comment telling what to do if the
17097         TOC starts getting too large on AIX.
17098         * NEWS: mention aix5 support.
17100 2001-04-18  Alexandre Oliva  <aoliva@redhat.com>
17102         * TODO: Add -L- flag.
17104 2001-04-11  Alexandre Oliva  <aoliva@redhat.com>
17106         * libtool.m4 (no_undefined_flag) [Solaris ld]: Change to -zdefs.
17108 2001-04-11  Ossama Othman  <ossama@uci.edu>
17110         * AUTHORS: Added myself to the list of maintainers.
17112 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
17114         * libtool.m4 (hardcode_libdir_flag_spec, osf4/osf5): Use ${wl}
17115         to pass -rpath when compiling with gcc.
17116         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
17118         * libltdl/ltdl.c (sys_shl_open): Cache a handle for the `self'
17119         module, since HPUX adds module symbols into the `self' pool if
17120         it is opened later.  Return the cached pointer if the caller
17121         subsequently tries to open `self'.
17122         (sys_shl_sym): Diagnose NULL modules.
17124         From Peter Eisentraut  <peter_e@gmx.net>
17125         * ltmain.in (clean,uninstall): test -e is not portable.  Well,
17126         neither is -L, but I'm hoping that redirecting error messages
17127         to /dev/null and relying on non-zero exit status will work okay
17128         on the few hosts that don't support -L.
17130 2001-04-08  Nick Hudson  <skrll@netbsd.org>
17132         * ltmain.in: Improve check for valid -version-info parameter.
17134 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
17136         From Nick Hudson  <skrll@netbsd.org>
17137         * doc/Makefile.am (libtool_TEXINFOS): Add fdl.texi so that it
17138         is included in the distribution.
17140 2001-04-07  Peter Eisentraut  <peter_e@gmx.net>
17142         * ltmain.in (clean,uninstall): Do not error if the file doesn't
17143         exist and 'rm -f' was used.  Exit with status 1 on error.
17145 2001-04-06  Nick Hudson  <skrll@netbsd.org>
17147         * ltmain.in: Implement a new deplibs_check_method called
17148         match_pattern that does pattern matching on filenames...
17149         * libtool.m4: ...use it with NetBSD
17151 2001-04-05  Gary V. Vaughan  <gary@gnu.org>
17153         * doc/libtool.texi (Multiple dependencies): A note about the
17154         problems I've reintroduced by reverting the my patch of 2001-03-31.
17156         From Edward Lee <tailbert@yahoo.com>
17157         * libtool.m4: Typos.
17159         * tests/Makefile.am (TESTS): Delete references to depdemo-dups.test.
17160         * tests/depdemo-dups.test:  Removed, as part of the patch
17161         reversion below.
17162         * ltmain.in: Revert my change from 2001-03-31.  Although it
17163         was technically correct, it opens a whole can of worms we don't
17164         want to deal with right now.
17166         From Ahmed Masud <masud@googgun.com>
17167         * libltdl/ltdl.c (sys_shl_open):  Return a NULL module handle
17168         for self opening.
17169         (sys_shl_close):  Be careful not to close a NULL module handle.
17170         (sys_shl_sym):  Allow shl_findsym() to open NULL modules, but
17171         discard the modified module address it returns.
17173         * libltdl/ltdl.c (lt_dlopen):  When reading the .la file,
17174         reallocate the line buffer size if the line overflows the
17175         original buffer.
17176         Reported by Nick Hudson <skrll@netbsd.org>
17178         * NEWS (1.3d) Removed bogus ltconfig reference.
17180 2001-04-03  Gary V. Vaughan  <gary@gnu.org>
17182         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Remove the spurious
17183         `dnl' from the help text of --with-pic.
17184         Reported by stefan <stefan@lkcc.org>
17186 2001-04-02  Gary V. Vaughan  <gary@gnu.org>
17188         * configure.in: bumped version to 1.3e.
17190         GNU libtool 1.3d was released.
17192         * NEWS: inserted todays date.
17194 2001-04-01  Christoph Pfisterer  <cp@chrisp.de>
17196         * libtool.m4: Fixed support for Darwin and Rhapsody. Now correctly
17197         hardcodes the library path and adds versioning. Other small
17198         fixes.
17199         * ltmain.in: Fixed special cases for libc and libm on Rhapsody and
17200         Darwin. One of them was misplaced. Added version_type case for
17201         Rhapsody and Darwin, named "darwin".
17203 2001-03-31  Gary V. Vaughan  <gary@gnu.org>
17205         * ltmain.in: Remove the code for stripping duplicate deplibs
17206         from libtool link lines -- duplicates are somtimes necessary
17207         to satisfy inter-library dependencies, and never cause link to
17208         fail even if they are spurious.
17209         * tests/depdemo-dups.test: New file.  Make sure this bug doesn't
17210         creep back in again!
17211         * tests/Makefile.am (TESTS): Use the new test above.
17213 2001-03-29  Edward M. Lee  <tailbert@yahoo.com>
17215         * libtoolize.in: Check configure.ac and prefer configure.ac to
17216         configure.in.
17218         * libtoolize.in: change recommendation from AM_PROG_LIBTOOL to
17219         AC_PROG_LIBTOOL.
17221         * libtool.m4: Generate dll/import libraries for cygwin according
17222         to the following: libFOO.a (static lib), libFOO.dll.a (import
17223         lib), cygFOO-version.dll (dll).  Update postinstall_cmds and
17224         postuninstall_cmds to reflect this.
17225         * ltmain.in: Generate installed .la files with dlnames set to
17226         ../bin/cygFOO-version.dll for normal dlls. dlls for modules
17227         remain with the .la file.
17229         * libltdl/ltdl.c:  Use windows paths while calling LoadLibrary.
17231 2001-03-16  Albert Chin  <china@thewrittenword.com>
17233         * libtool.m4 (save_CPPFLAGS): Fix typo.
17235 2001-03-13  Alexandre Oliva  <aoliva@redhat.com>
17237         * libtool.m4 (lt_cv_compiler_c_o): Cache it.
17238         (lt_cv_compiler_o_lo): Likewise.
17240 2001-03-09  Peter Eisentraut  <peter_e@gmx.net>
17242         * ltmain.in (clean): Automatically remove $objdir (usually '.libs').
17244 2001-03-08  Gary V. Vaughan  <gary@gnu.org>
17246         * ltconfig.in (library_names_spec): Undo latin-1 spaces I pasted
17247         in yesterday by mistake.
17249 2001-03-07  Gary V. Vaughan  <gary@gnu.org>
17251         From Tor Lillqvist <tml@iki.fi>
17252         * libtool.m4 (export_symbols): On Windows, if the export_symbols
17253         file (which has been passed to libtool with the -export-symbols
17254         command line switch) already is a .def file, use it as is.
17256         * libtool.m4 (library_names_spec): Using m4 quotes correctly this
17257         time around!
17259         From Tor Lillqvist <tml@iki.fi>
17260         * libtool.m4 (library_names_spec): Use an appropriate filename
17261         prefix for dlls -- lib for mingw; cyg for cygwin; pw for pw32.
17263 2001-03-06  Alexandre Oliva  <aoliva@redhat.com>
17265         * libtool.m4 (can_build_shared) [AIX 4.[01], GCC]: GCC up to
17266         2.96 can't build shared libraries reliably.  Disable them.
17268         * ltmain.in: When dropping dependencies of a -no-undefined
17269         library, give up on building a shared library.
17271 2001-03-05  Akim Demaille  <akim@epita.fr>
17273         * ltmain.sh: Don't quote the argument of case/esac and
17274         assignments.
17275         * libtool.m4: Likewise.
17277 2001-03-03  Markus F.X.J. Oberhumer <markus@oberhumer.com>,
17278             Alexandre Oliva <oliva@lsd.ic.unicamp.br>
17280         * libtool.m4: Added explicit return type to all C functions.
17282 2001-02-22  Gary Vaughan  <gary@gnu.org>
17284         * NEWS: Updated.
17285         * doc/libtool.texi (Thread Safety in libltdl): New node describing
17286         the  application the new MT API.
17287         * libltdl/ltdl.h: Prototypes.
17288         * libltdl/ltdl.c: Use these functions throughout the rest of
17289         the file to provide thread locking.
17290         (lt_dlmutex_register): New function to set callbacks for
17291         multi-threaded calls into libltdl.
17292         (lt_dl_mutex_lock): Type of a locking callback function.
17293         (lt_dl_mutex_lock): Type of an unlocking callback function.
17294         (lt_dl_mutex_seterror): Type of a callback function to save the
17295         last libltdl error message in thread local storage.
17296         (lt_dl_mutex_geterror): Type of a callback function to retrieve
17297         the last saved error message from thread local storage.
17299 2001-02-20  Gary Vaughan  <gary@gnu.org>
17301         * libltdl/ltdl.c (lt_dlcaller_register): dont set an unsigned
17302         type to a negative number.
17303         Reported by Guenter Millahn <Guenter.Millahn@Informatik.TU-Cottbus.DE>
17305 2001-02-05  Gary V. Vaughan  <gary@gnu.org>
17307         From Nick Hudson <skrll@netbsd.org>
17308         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): netbsd* is able to
17309         automatically load module deplibs without assistance from
17310         libltdl.
17312 2001-02-02  Gary V. Vaughan  <gary@gnu.org>
17314         * libltdl/ltdl.c (load_deplibs): Make sure the depcount is reset,
17315         even when deplibs are not used because of the patch below.
17317         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): If we know that the host
17318         architecture automatically loads deplibs, then...
17319         * libltdl/ltdl.c (load_deplibs): ...don't manually load each one.
17321 2001-01-31  Gary V. Vaughan  <gary@gnu.org>
17323         * TODO:  Updated.
17325         * libltdl/ltdl.c (load_deplibs): If loading a deplib fails,
17326         don't sweat -- it may be a lib that is already statically linked
17327         into the loading application.
17329         * libltdl/ltdl.c: Clean up the shadowing of the global handles
17330         variable.
17331         (LT_DLRESIDENT_FLAGS): Add extra parens to satisfy -Wall.
17332         (load_deplibs):  Cast isspace() argument to an int to satisfy
17333         -Wall.
17335 2001-01-30  Robert Boehne  <rboehne@ricardo-us.com>
17337         * AUTHORS: added myself to the list of maintainers.
17339 2001-01-28  Alexandre Oliva  <aoliva@redhat.com>
17341         * libltdl/Makefile.am (CLEANFILES): Clean conditionally-built
17342         libraries.
17344 2001-01-27  Alexandre Oliva  <aoliva@redhat.com>
17346         * libtool.m4 (ld_shlibs) [aix4*]: Disable on unknown CPU types.
17348 2001-01-07  Gary V. Vaughan  <gary@gnu.org>
17350         * NEWS: Updated.
17351         * doc/libtool.texi (User defined module data): Updated.
17352         * libltdl/ltdl.c (lt_dlhandle_next): New function.
17353         * libltdl/ltdl.h (lt_dlhandle_next): Prototypes.
17355 2001-01-05  Gary V. Vaughan  <gary@gnu.org>
17357         * NEWS: Updated.
17358         * doc/libtool.texi (User defined module data):  Document it all.
17359         * ltdl.m4:  Check for memcpy, or else bcopy.
17360         * ltdl.c (lt_caller_data): New type.
17361         (lt_dl_handle_struct): Add an lt_caller_data field.
17362         (lt_dlcaller_register, lt_dlcaller_set_data,
17363         lt_dlcaller_get_data): New functions.
17364         (rpl_memcpy): A minimal fallback implementation.
17365         (rpl_realloc): A realloc implemented with lt_dlmalloc and
17366         lt_dlfree.
17367         (LT_DLMALLOC, LT_DLFREE, LT_DLREALLOC, LT_DLMEM_REASSIGN):
17368         New memory handling convenience macros.  Use them
17369         appropriately throughout the rest of this file.
17370         * ltdl.h (lt_dlcaller_register, lt_dlcaller_set_data,
17371         lt_dlcaller_get_data): Prototyped.
17373 2001-01-04  Gary V. Vaughan  <gary@gnu.org>
17375         * libltdl/ltdl.h:  formatting change.
17377 2000-12-23  Gary V. Vaughan  <gary@gnu.org>
17379         From vvv@vsu.ru:
17380         * doc/fdl.texi (GNU Free Documentation License): contained @bye
17381         command which prevented part of document to be generated (indices,
17382         etc).
17383         * doc/libtool.texi (Dlpreopening): the @deftypevar did not contain
17384         a space after a type.
17386 2000-12-22  Akim Demaille  <akim@epita.fr>
17388         * libtool.m4: s/[ \t]*$//
17390 2000-12-22  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
17392         * libtool.m4 (OSF/1):  Revert my patch of 2000-12-16.
17394 2000-12-20  Gary V. Vaughan  <gary@gnu.org>
17396         * libltdl/ltdl.c (lt_dlexit): Was checking for residency of the
17397         wrong module.
17398         Reported by Robert Boehne  <rboehne@ricardo-us.com>
17400         * ltmain.in (dlprefiles): Now that `2000-12-15 Utz-Uwe Haus' patch
17401         below can detect preopened library deplibs correctly in libltdl,
17402         we need to ensure that libtool library deplibs are also preloaded
17403         into the binary for that phase to work.
17405 2000-12-16  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
17407         * libtool.m4 (OSF/1): Change the way to pass linker flags through
17408         compiler on a Tru64 machine.
17410 2000-12-16  Gary V. Vaughan  <gary@gnu.org>
17412         * libtool.m4 (sys_lib_search_path_spec): Use test instead of
17413         `['.
17414         (archive_cmds): And another one.
17416         * libtool.m4 (darwin*): Fixed a pair of stupid typos I made in the
17417         last patch.
17419         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  moved rogue settings from
17420         sequent, ncr and newos6 back into here from other macros.
17422 2000-12-16   Wilfredo Sanchez  <wsanchez@apple.com>
17424         * libtool.m4: (dyld/darwin*) Much improved port.
17425         * ltmain.in: (dyld/darwin*) Much improved port.
17427 2000-12-16  Sascha Schumann <sascha@schumann.cx>
17429         * libtool.m4: Accept darwin as an alias for rhapsody.
17430         * ltmain.in: ditto.
17432         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use the HPUX 10.20
17433         methods to check for library dependencies on HPUX 11.
17435 2000-12-16  Nick Hudson  <skrll@netbsd.org>
17437         * libtool.m4 (netbsd*, deplibs_check_method): Enable ILD support
17438         for NetBSD a.out.
17440 2000-12-15  Akim Demaille  <akim@epita.fr>
17442         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Rename
17443         `ac_cv_sys_global_symbol_pipe' as `lt_cv_sys_global_symbol_pipe'.
17444         Similarly with `lt_cv_global_symbol_to_cdecl
17445         (_LT_AC_LTCONFIG_HACK): Similarly with `ac_cv_prog_cc_pic',
17446         `ac_cv_prog_cc_shlib', `ac_cv_prog_cc_wl', `ac_cv_prog_cc_static',
17447         `ac_cv_prog_cc_no_builtin', `ac_cv_prog_cc_can_build_shared',
17448         `ac_cv_prog_cc_static_works', `ac_cv_archive_cmds_need_lc'.
17449         (AC_PATH_TOOL_PREFIX): Similarly with `ac_cv_path_MAGIC_CMD'
17450         (AC_PROG_LD) <ac_cv_path_LD>: Likewise.
17451         (AC_PROG_LD_GNU) <ac_cv_prog_gnu_ld>: Likewise.
17452         (AC_PROG_NM) <ac_cv_path_NM>: Likewise.
17454 2000-12-15  Utz-Uwe Haus  <haus@mail.math.uni-magdeburg.de>
17456         * libltdl/ltdl.c (lt_dlopen): Changed "dl_dependency_libs" keyword
17457         to "dependency_libs".
17459 2000-12-14  Tod Milam  <tmilam@traclabs.com>
17461         * libltdl/ltdl.c (lt_dlexit): Reset the loaders value to zero when
17462         the last module has been unloaded.
17464 2000-12-14  Michael Schmitz  <mschmitz@iname.com>
17466         * libtool.m4: Port to *-sni-sysv4 (Reliant Unix)
17467         * README: added Reliant Unix to hte list of supported platforms
17468         * doc/PLATFORMS: added note on tests on Reliant Unix
17470 2000-12-14  Masahiro Nobori  <nobori@ss.titech.ac.jp>
17472         * README:  Updated.
17473         * NEWS: Updated.
17474         * libtool.m4:  New port to NEWS-OS Release 6.
17476 2000-12-14  Nick Hudson  <skrll@netbsd.org>
17478         * libtool.m4 (hardcode_libdir_flag_spec):  Remove linker
17479         specification for netbsd.
17481 2000-12-14  Akim Demaille  <akim@epita.fr>
17483         * libtool.m4:  Don't depend on Autoconf internals:
17484         s/ac_cv_prog_gcc/GCC/.
17486 2000-12-14  Gary V. Vaughan  <gary@gnu.org>
17488         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't empty
17489         out ac_cv_global_symbol_to_cdecl inside the loop, incase we
17490         need to go around again and try with underscore prefix.
17491         (_LT_AC_TRY_DLOPEN_SELF): On some hosts (cygwin for instance)
17492         self dlclosing unloads the main program and causes a SIGSEGV.  So
17493         don't do it for now.
17495 2000-12-05  Gary V. Vaughan  <gary@gnu.org>
17497         Oh My! Cygwin support has bitrotted while I was looking the other
17498         way.  This should fix it some:
17499         * libtool.m4 (extract_expsyms_cmds): There is a quoting problem
17500         with autoconf-2.13 that prevents [$]0 from expanding.  Use shell
17501         quotes instead to delay eval of $0.
17502         (impgen.c) The '# ' sequence stripped by sed works again.
17504 2000-12-01  Gary V. Vaughan  <gary@gnu.org>
17506         * doc/libtool.texi (Libltdl interface):  Add documentation.
17507         * libltdl/ltdl.h (lt_dlmakeresident, lt_dlisresident):  Add
17508         prototypes.
17509         (LT_DLERROR_CLOSE_RESIDENT_MODULE): New error status.
17510         * libltdl/ltdl.c (lt_dlmakeresident, lt_dlisresident):  Allow
17511         making and testing of resident module status, which prevents a
17512         module from being lt_dlclosed.
17513         (lt_dlopen):  If lt_dlopen()ing self, make the module resident.
17514         (lt_dlclose):  Return an error if the module is resident.
17516         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Move the tests for dlopen
17517         from here...
17518         (AC_LIBTOOL_DLOPEN_SELF): ...to here.
17519         (_LT_AC_CHECK_DLFCN):  Factor out repeated code for dlfcn.h
17520         (_LT_AC_TRY_DLOPEN_SELF): Factor out repeated code for
17521         checking dlopen status.
17522         * ltdl.m4 (AC_LIB_LTDL):  Use _LT_AC_CHECK_DLFCN.
17523         dlopen compile time checking.  Use _LT_AC_CHECK_DLFCN.
17524         (AC_LTDL_DLSYM_USCORE):  Use _LT_AC_TRY_DLOPEN_SELF.
17526 2000-11-29  Gary V. Vaughan  <gary@gnu.org>
17528         * libltdl/ltdl.h (lt_dlhandle): Rename the wrapped structure
17529         to prevent nameclash when used from C++.
17530         * libltdl/ltdl.c: Fixed all references.
17532 2000-11-25  Gary V. Vaughan  <gary@gnu.org>
17534         * libltdl/ltdl.c (lt_dlopen):  Change the default search order
17535         for modules.  If the named module has no directory component,
17536         always start the search with the user_search_path directories,
17537         and then fall back on the current directory only if that fails.
17539 2000-11-20  Gary V. Vaughan  <gary@gnu.org>
17541         * libltdl/Makefile.am (libltdl_la_LDFLAGS): increment the version
17542         number to reflect the breakage of binary compatibility.
17543         * doc/libtool.texi (Libltdl interface):  Document
17544         LT_NON_POSIX_NAMESPACE.
17545         * libltdl/ltdl.h (LT_POSIX_NAMESPACE):  Deleted.  The default is
17546         now to use this namespace, so the cpp macro is no longer
17547         necessary.
17549 2000-11-20  Morten Eriksen  <mortene@sim.no>
17551         * ltdl.m4 (AC_LIB_LTDL, AC_LTDL_SYMBOL_USCORE): Break a circular
17552         dependency between AC_LTDL_SYMBOL_USCORE and AC_LTDL_DLSYM_USCORE.
17554 2000-11-20  Paul Berrevoets  <paul@swi.com>
17556         * ltmain.in: Some versions of expr respond with "0" if a
17557         regexp fails to match.
17559 2000-11-19  Paul Berrevoets  <paul@swi.com>
17561         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote the $ in $#, $2 and
17562         $3 in variable 'archive_expsym_cmds' for cygwin.
17564 2000-11-19  Gary V. Vaughan  <gary@gnu.org>
17566         * ltdl.c: Relegate non-POSIX-compliant symbols (e.g. those
17567         ending in ``_t'') to deprecated #define compatibility macros.
17568         Also ease up on the namespace pollution, so that only ``lt_''
17569         and ``LT_'' prefixes are taken from the global namespace.
17570         * ltdl.h: ditto.
17572 2000-11-17  Gary V. Vaughan  <gary@gnu.org>
17574         * ltdl.c: Reformatted.
17575         * ltdl.h: ditto.
17577 2000-11-11  Gary V. Vaughan  <gary@gnu.org>
17579         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Use $ac_ext for conftest
17580         sourcefile.
17581         * libtool.m4: Use $ac_ext and $ac_objext respectively for conftest
17582         sources and objects.
17583         Reported by Carlo Wood <carlo@alinoe.com>
17585         * doc/fdl.texi: New file.  The license for distributing the
17586         libtool manual.
17587         * doc/libtool.texi: Reference the new license.
17589 2000-10-31  Morten Eriksen  <mortene@sim.no>
17591         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote argument to avoid
17592         error output from cygpath when $srcdir is empty.
17594 2000-10-31  Gary V. Vaughan  <gary@gnu.org>
17596         * bootstrap:  rm Makefiles to prevent infinite loop during
17597         configure when libtool.m4 is newer than Makefile.
17599 2000-10-31  Akim Demaille  <akim@epita.fr>
17601         * libtool.m4: Adjust the copyright notice.
17602         Quote all the macro names when defined.
17603         Some minor formatting changes.
17604         (AM_PROG_LIBTOOL, AM_ENABLE_SHARED, AM_ENABLE_STATIC)
17605         (AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_PROG_LD, AM_PROG_NM):
17606         Don't use indir when useless.  Don't add trailing `dnl' either.
17608 2000-10-30  Gary V. Vaughan  <gary@gnu.org>
17610         * doc/libtool.texi:  Corrected another attack of CRLF line
17611         endings.
17613 2000-10-30  Ossama Othman  <ossama@debian.org>
17615         * libtool.m4 (archive_expsym_cmds): Fix typo where line was broken
17616         in the middle of an expression.
17618 2000-10-30  Aneesh Kumar K.V <kvaneesh@hotmail.com>
17620         * libtool.m4 (archive_expsym_cmds):  Support for -export-symbol
17621         option on Tru64.
17622         (hardcode_libdir_flag_spec): Fixed cxx throwing error while using
17623         libtool.  Done by passing -rpath directlty to the compiler.
17625 2000-10-27  Robert Boehne  <rboehne@ricardo-us.com>
17627         * docs/libtool.texi: Added pointers to documentation
17628         of Hewlett-Packard, Compaq Tru64 and IBM AIX systems.
17630 2000-10-02  Gary V. Vaughan  <gary@gnu.org>
17632         From Bruce Korb <bkorb@cruzio.com>
17633         * ltmain.in (execute_dlfiles): Reduce obfuscation.
17635 2000-09-30  Alexandre Oliva  <aoliva@redhat.com>
17637         * libtool.m4 [netbsd*] (deplibs_check_method, file_magic_cmd,
17638         file_magic_test_file): Removed inappropriate duplicate
17639         definitions; these variables are set in AC_DEPLIBS_CHECK_METHOD.
17641         * libtool.m4 (lt_cv_file_magic_cmd): Don't use '${MAGIC_CMD}' or
17642         '${OBJDUMP}'; Solaris' /bin/sh loses with `}' in cache files.
17643         (ac_cv_path_MAGIC_CMD): Renamed to lt_cv_path_MAGIC_CMD.
17645 2000-09-28  Gary V. Vaughan  <gary@gnu.org>
17647         * libtool.m4 (MAGIC_CMD): Don't use MAGIC, since BSD versions of
17648         the file command use this environment variable to hold the
17649         location of the magic database.
17650         Reported by Marc Espie <Marc.Espie@liafa.jussieu.fr>
17652 2000-09-19  Gary V. Vaughan  <gary@gnu.org>
17654         * doc/PLATFORMS: Updated.
17655         * demo/configure.in:  Revert to the `libtool --features' test.
17656         * Makefile.am (libtool):  This needs to rerun configure now that
17657         libtool is generated entirely by AC_PROG_LIBTOOL again.
17658         (ltconfig): Removed.
17659         (ltmain.sh):  Is now regenerated when ltmain.in changes.
17660         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Now does all of the work for
17661         generating libtool immediately in configure.in, rather than
17662         deferring part of the creation until config.status runs.
17664 2000-09-17  Gary V. Vaughan  <gary@gnu.org>
17666         * bootstrap:  Backed out yesterdays patch which is no longer
17667         necessary.
17668         * Makefile.am (libtool): Reworked rule for regeneration of libtool,
17669         now that it is built entirely withing config.status.
17670         (libtoolize): Tidied for orthogonality with the other generation
17671         rules.
17672         (ltconfig):  This is now generated by AC_PROG_LIBTOOL, called from
17673         make by running config.status --recheck.
17674         (ltmain.sh): Moved primary generation of this file into here...
17675         * configure.in (AC_OUTPUT): ...instead of here.
17676         * libtool.m4 (AC_OUTPUT_COMMANDS):  Write the config to ltconfig
17677         where it can be reused, rather than directly to libtool.
17678         * demo/configure.in:  libtool is no longer present immediately
17679         after AC_LIBTOOL_M4 has completed, so the tests now grep through
17680         ltconfig instead -- which *will* be present.
17682 2000-09-16  Gary V. Vaughan  <gary@gnu.org>
17684         * TODO: Removed the item describing the change below, and added a
17685         similar item to remind us to change the ltdl.m4 macros again when
17686         _LT_AC_LTCONFIG_HACK is divided into proper macros.
17687         * ltdl.m4 (AC_LTDL_SNARF_CONFIG):  Removed.  No longet required
17688         now that ltconfig has migrated to libtool.m4.
17689         (AC_LTDL_SHLIBEXT): Require _LT_AC_LTCONFIG_HACK.
17690         (AC_LTDL_SHLIBPATH): ditto.
17691         (AC_LTDL_SYSSEARCHPATH): ditto.
17693         * ltdl.m4 (AC_LTDL_DLPREOPEN): Require the libtool.m4 symbol_pipe
17694         macro.
17695         (AC_LTDL_SYMBOL_USCORE): ditto.
17696         (AC_LTDL_GLOBAL_SYMBOL_PIPE): Removed, since it is a duplicate
17697         of...
17698         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): ...this new
17699         macro, extracted from _LT_AC_LTCONFIG_HACK.
17701         * ltdl.m4 (changequote): An audit of changequote and m4
17702         quote usage -- all changequotes have been removed, and some
17703         latent unquoted `[' and `]' bugs have been fixed.
17705         * configure.in (AC_OUTPUT): ltmain.sh must be generated in the
17706         source tree since this is where it would be found in a freshly
17707         unrolled tarball.
17709         * configure.in: Replace `dnl' comments with `#' comments for
17710         more conformity with cvs autoconf.
17711         Removed emacs hack-local-variables, since there is now a
17712         proper Autoconf major mode.
17713         Removed a couple of changequote()s.
17715         * bootstrap (ltconfig): When bootstrapping libtool with a
17716         stock automake (i.e. without the README patch applied),
17717         references to ltconfig are manually removed from the generated
17718         Makefile.in files.
17720 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
17722         * doc/libtool.texi: Removes references to ltconfig, and a small
17723         amount of tidying up to compensate.
17725 2000-09-15  Nick Hudson  <skrll@netbsd.org>
17727         * libtool.m4 (netbsd): Improved support.
17729 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
17731         * ltmain.in (version_type): Use "-iface" as the windows
17732         versioning scheme, where iface is the number of the oldest
17733         interface supported.
17735 2000-09-14  Gary V. Vaughan  <gary@gnu.org>
17737         From Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
17738         * libtool.m4 (pw32): Initial support for pw32, assuming that
17739         libtool's behaviour in this environment is identical to under
17740         cygwin.
17741         * ltmain.in (pw32): ditto.
17742         * NEWS: Updated.
17744         * libtool.m4 (changequote): An audit of changequote and m4
17745         quote usage -- all changequotes (except a few with non-nesting
17746         square brackets) have been removed.
17748         * Makefile.am (EXTRA_DIST):  The bootstrap script should be
17749         distributed with libtool.
17751 2000-09-13  Gary V. Vaughan  <gary@gnu.org>
17753         libtool.m4 (_LT_AC_LTCONFIG_HACK): Oh man!  Third time lucky.
17754         I just discovered that '&' needs to be escaped inside
17755         AC_TRY_EVAL.
17757 2000-09-12  Michael Matz  <matz@ifh.de>
17759         * ltmain.in:  Be careful about filenames with multiple `.'s in
17760         them when calculating file extensions.
17761         Reported by Joel Reed <jreed@support.ddiworld.com>
17763 2000-09-12  Gary V. Vaughan  <gary@gnu.org>
17765         libtool.m4 (AC_PROG_LIBTOOL):  Removed, as it was triggering a
17766         bug in Autoconf-2.13 AC_REQUIRE implementation which inserted
17767         some of the expanded tests too early in the generaated configure.
17768         (_AC_PROG_LIBTOOL): renamed to AC_PROG_LIBTOOL, and defines
17769         itself to an empty expansion to prevent multiple expansions.
17770         configure.in (AC_LIBTOOL_SETUP): Replaced by a call to
17771         AC_PROG_LIBTOOL now that the AC_REQUIRE bug has been worked
17772         around.
17774 2000-09-09  Gary V. Vaughan  <gary@gnu.org>
17776         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to escape the
17777         redirections inside AC_TRY_EVAL in the need_lc tests. Doh!
17779         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to redirect the
17780         output of grep to /dev/null in the need_lc tests.
17782         configure.in (AC_PROG_LIBTOOL):  Using this in libtools own
17783         configure.in interacts badly with the AC_PROVIDE calls and
17784         results in several tests being inserted into configure too
17785         early.  Use AC_LIBTOOL_SETUP instead.
17787 2000-09-08  Gary V. Vaughan  <gary@gnu.org>
17789         libtool.m4 (_LT_AC_LTCONFIG_HACK): The ltconfig.in code I
17790         ported from ltconfig.in was incomplete -- this is a backport
17791         of the missing code taken from the multi-language branch.
17793 2000-09-07  Pavel Roskin  <proskin@gnu.org>
17795         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Fixed incorrect use of
17796         changequote
17798 2000-09-07  Gary V. Vaughan  <gary@gnu.org>
17800         * NEWS:  Updated.
17801         * TODO:  Add a reminder to get rid of ltconfig in mlb.
17802         * README: Until things even out, I have added a note and a
17803         patch to make the installed automake cooperate with the new
17804         ltconfig free libtool.
17806         * libtool.m4 (_LT_AC_LTCONFIG_HACK): with_gcc is only useful in
17807         ltmain.sh as it has not yet been set in libtool.m4.  Use
17808         $ac_cv_prog_gcc instead.
17810         * doc/PLATFORMS: Updated.
17812         * configure.in (AC_PROG_AWK): Removed -- no longer required by
17813         the build process.
17814         * lineno: ditto.
17816         * libtoolize.in (files): Don't try to install ltconfig -- it
17817         doesn't exist!!
17818         * bootstrap: Fake an ltconfig incase the installed automake
17819         calls an installed libtoolize (as part of its --add-missing
17820         process) which thinks ltconfig should be there.
17822         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Deleted a vital `;;'
17823         terminator from a case statement by mistake.
17825         * Makefile.am (ltmain.sh):  Make this depend on TSDEPS again
17826         so that the Changelog timestamp is used for ltmain.sh at `make
17827         dist' time.
17829 2000-09-06  Gary V. Vaughan  <gary@gnu.org>
17831         libtool.m4 now contains a version of the code that used to run
17832         from ltconfig, so that ltmain.sh and then libtool are
17833         generated at configure time.
17835         * Makefile.am:  Don't generate ltmain.sh or ltconfig anymore.
17836         * bootstrap: ltconfig is no more!
17837         * configure.in: Call AC_PROG_LIBTOOL directly.
17838         (AC_OUTPUT): Generate tmain.sh.
17839         * libtool.m4: Don't build an argument list for ltconfig.
17840         (_LT_AC_LTCONFIG_HACK):  Refactoring of the former contents of
17841         ltconfig.in to take advantage of the m4 macros from autoconf.
17842         * ltmain.in: Don't do a version check against ltconfig.
17843         * tests/assign.test: Remove reference to ltconfig.
17844         * tests/hardcode.test: ditto.
17845         * tests/sh.test: ditto.
17847 2000-09-05  Alexandre Oliva  <aoliva@redhat.com>
17849         * depdemo/main.c: Support -alt.
17850         * tests/build-relink2.test: Try it.
17852         * ltconfig.in: Removed all references to what used to be
17853         hardcode_into_libs=all.  2000-09-03's patch was wrong.
17854         * ltmain.in: Likewise.
17855         * tests/build-relink.test, tests/build-relink2.test: Adjust.
17856         * mdemo/Makefile.am (lib_LTLIBRARIES): Move libsub.la before
17857         libfoo2.la, so that they're installed in the right order.
17859 2000-09-04  Alexandre Oliva  <aoliva@redhat.com>
17861         * tests/dryrun.test: Build libsub.la along with the object files,
17862         since it is needed by libfoo2.la.
17864         * mdemo/Makefile.am: Mark only libfoo2 as -no-undefined.
17865         Explicitly link it with libsub.la.
17867         * ltconfig.in (need_lc): Preserve allow_undefined_flag.
17869         * tests/*.test (CONFIG_SITE): Ultrix's /bin/sh fails on
17870         `. /dev/null'.  Set CONFIG_SITE to /dev/null/config/site, to make
17871         sure we pick a non-existent file.
17873         * Makefile.am (libtool, clibtool): Pass CONFIG_SHELL along with
17874         ECHO down to ltconfig.
17876         * ltconfig.in (hardcode_libdir_flag_spec, export_dynamic_flag_spec):
17877         Use ${wl}, not ${wlarc}.
17879         * ltmain.in (compile, need_lock): Don't create nor remove lock
17880         files in dry runs.
17882         * libltdl/ltdl.c (load_deplibs): Don't append shlib_ext; use
17883         lt_dlopenext() instead.
17885         * ltmain.in (link -static): Don't add $link_static_flag; only
17886         -all-static should do that.
17887         * mdemo/configure.in: Revert part of the previous delta.
17889         * mdemo/configure.in: Don't use -static on AIX4.1.
17890         * mdemo/Makefile.am: Likewise.
17892 2000-09-03  Alexandre Oliva  <aoliva@redhat.com>
17894         * ltconfig.in: Get rid of hardcode_into_libs=all; use
17895         hardcode_into_libs=yes && shlibpath_overrides_runpath!=yes
17896         instead.
17897         [FreeBSD 3.[01]] (shlibpath_overrides_runpath): Set to no.
17898         * ltmain.in: Likewise.
17899         * tests/build-relink.test, tests/build-relink2.test: Adjust.
17901         * libtool.m4: Fix typo I introduced in yesterday's patch.
17903         * libltdl/ltdl.c (lt_dlopen): Set dlname from library_names if
17904         dlname is empty.
17906         * ltdl.m4 (HAVE_LIBDL): Look for dlopen in -lsvld.
17907         * ltconfig.in: Likewise.
17909         * tests/mdemo-exec.test: Modify failure message.
17911         * ltmain.in (newdlprefiles): Use dlname if it's available and
17912         old_library isn't; use linklib only if dlname is not available.
17914         * ltconfig.in (enable_dlopen): Set to no when lt_cv_dlopen is no.
17916         * libtool.m4: Don't quote CONFIG_SHELL nor ORIGINAL_CONFIG_SHELL.
17917         Quote $@ properly so that the shell expands it, not m4.
17919         * libtool.m4: Don't quote SHELL when `re-exec'ing, so that SHELL
17920         can be `/path/to/shell -x'.
17922         * tests/quote.test: Move the match test out of case statements, to
17923         work around bug in /bin/sh of several OSs.
17925         * ltmain.in (variables_saved_for_relink): Attempt to unset them
17926         instead of setting them to an empty string.
17928 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
17930         * ltconfig.in [with_gnu_ld] (archive_cmds, archive_expsym_cmds)
17931         <solaris*, sysv5*, beos*>: Use compiler_flags instead of linker
17932         flags.
17933         Reported by Alex Hornby <alex@anvil.co.uk>
17935 2000-09-02  Makoto Ishisone  <ishisone@sra.co.jp>
17937         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Fix typo,
17938         add support for compact format library.
17940 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
17942         * ltdl.m4: Oops, I had forgotten to commit this part of Syd Polk's
17943         patch from 2000-06-17.
17945 2000-09-02  Tom Kacvinsky  <tjk@ams.org>, Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
17947         * libtool.m4: Ignore Tru64's nm's complaint.
17949 2000-09-02  Pavel Roskin <proski@gnu.org>
17951         * ltconfig.in: only load $cache_file if it's a regular file
17953 2000-09-02  Assar Westerlund  <assar@sics.se>
17955         * ltconfig.in: Add back ranlib calls for static libraries if there
17956         is a ranlib.
17958 2000-08-31  Gary V. Vaughan  <gary@gnu.org>
17960         Move the echo detection code to a macro in libtool.m4.  The code
17961         at the top ofltconfig.in is ugly, but will go away when the rest
17962         of ltconfig is migrated.
17964         * Makefile.am (libtool):  Pass the value of $ECHO to ltconfig as
17965         an environment variable.
17966         * libtool.m4 (_LT_AC_PROG_ECHO_BACKSLASH): Quote the ECHO value
17967         correctly so that it inserts the correct code into configure.in
17968         suitably quoted for M4 expansion.  This code needs to be near
17969         the top of configure.in as it calls itself recursively, so I
17970         am using AC_DIVERSION_NOTICE (or simply NOTICE on CVS
17971         Autoconf).  The value of ECHO is also substitued into the
17972         Makefile to be used when Make calls ltconfig to generate
17973         libtool, so another layer of quotation is required for the
17974         Makefile.
17975         (AC_LIBTOOL_SETUP):  Use it.
17976         * ltconfig.in: Accept a value for ECHO from the environment, and
17977         carefully substitue for $0 if it is present in the ECHO value.
17978         Because ECHO was quoted for Make, when ltconfig is called by
17979         configure, it is overquoted, and one layer of quotes must be
17980         stripped.
17982 2000-08-27  Gary V. Vaughan  <gary@gnu.org>
17984         * ltconfig.in (with_gcc):  Make the value of this option
17985         available to the generated libtool script.
17986         * ltmain.in (compile_command, finalize_command):  The native C
17987         and C++ compilers on IRIX require the -LANG:std in order to to
17988         compile correctly.   The same options should _not_ be passed
17989         through to gcc on IRIX, or at all on other architectures for
17990         backwards compatibility (among others).
17991         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
17992         Reported by Albert Chin-A-Young <china@thewrittenword.com>
17994 2000-08-26  Gary V. Vaughan  <gary@gnu.org>
17996         * ltconfig.in (old_reload_flag): typo.
17998 2000-08-01  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
18000         * ltmain.in (shtool): Use echo|grep instead of expr, as in the
18001         original patch.
18003 2000-08-01  Alexandre Oliva  <aoliva@redhat.com>
18005         * ltconfig.in (need_lc): Fix test message.
18007 2000-07-24  Mocha  <netbsd_alpha@yahoo.com>
18009         * ltconfig.in (NetBSD, deplibs_check_method): Use file_magic.
18010         (NetBSD, file_magic_cmd, file_magic_test_file): Set.
18012 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, David Kaelbling  <drk@orchietta.hudson.sgi.com>
18014         * ltmain.in (irix, major): Prepend a `.'.
18015         * ltconfig.in (irix, soname_spec, library_names_spec): Adjust.
18017 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, Ralf S. Engelschall  <rse@engelschall.com>
18019         * ltmain.in: Support GNU shtool's install.
18021 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
18023         * ltconfig.in (linkopts): Don't set for test.
18025 2000-07-24  Nick Hudson <skrll@netbsd.org>
18027         * ltconfig.in (linkopts): Replace with linker_flags.
18029         * ltmain.in (ILD): Fix addition of deplibs in relink case.
18031 2000-07-18  H.J. Lu  <hjl@gnu.org>
18033         * ltconfig.in: Check if -lc is necessary for building shared
18034         library. Set build_libtool_need_lc to indicate it.
18035         * ltmain.in: Add -lc when building shared library only if
18036         necessary.
18038 2000-07-10  Mo DeJong  <mdejong@redhat.com>
18040         * libtool.m4 (AC_PROG_NM): Fix macro so that it
18041         finds a cross NM on the PATH.
18043 2000-07-10  Ken Block <block@zk3.dec.com>
18045         * libltdl/ltdl.h: Also check for __cplusplus, __STDC__ is not
18046         by Compaq C++ compiler
18048 2000-07-10  Alexandre Oliva  <aoliva@lsd.ic.unicamp.br>
18050         * ltconfig.in (wlarc, netbsd, aout): Set to empty.
18051         (hardcode_dynamic_flag_spec, export_dynamic_flag_spec): Use it.
18053         * ltconfig.in (dynamic_linker, linux, powerpc): Do not disable
18054         shared libraries just because of MkLinux.
18056         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Do not depend
18057         on $version_type; check for ELF support as in other BSDs.
18059 2000-06-17  Syd Polk  <spolk@redhat.com>
18061         * libtool.m4 (AC_LIBTOOL_SETUP): Do not generate a libtool based
18062         on target; use host instead.
18064 2000-05-30  Gary V. Vaughan  <gary@gnu.org>
18066         * ltconfig.in (ORIGINAL_CONFIG_SHELL): Prevent lossage when
18067         the echo probing code falls into this branch without setting
18068         this variable.
18070         * ltconfig.in (netbsd*): archive_cmds and archive_expsym_cmds
18071         were reversed with respect to definition of __ELF__.
18072         From Keisuke Inoue <keisuke@csl.sony.co.jp>
18074 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
18076         * libtool.m4 (netbsd*): Use -L option to file_magic_cmd as for
18077         freebsd (below).
18078         * libtool.m4 (netbsd ELF): support file_magic.
18079         From Dan Winship <danw@helixcode.com>.
18081 2000-05-29  Steven M. Schultz <sms@moe.2bsd.com>
18083         * libtool.m4 (bsdi4*): Add -L option to bsdi4's file_magic_cmd
18084         command.  Under BSD/OS 4.1 several libraries are now symlinks
18085         rather than regular files.  Adding -L tells the file program
18086         to follow the symlink.
18088 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
18090         * libtool.m4 (i*86-*-freebsd*): Forgot to changequote(,).
18092         * NEWS: Updated.
18093         * libtool.m4 (i*86-*-freebsd*): Support a.out shared libs.
18094         From <suzukis@file.phys.tohoku.ac.jp>
18096 2000-05-29  Fred Fish  <fnf@be.com>
18098         Support AR=mwld AR_FLAGS='-xml -o' for PPC Beos.
18099         * ltconfig (old_AR_FLAGS): Add.
18100         (old_archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
18101         (archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
18102         (AR_FLAGS): Default to "cru" if not set.
18104 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
18106         * ltconfig.in (echo): The following code actually prints the
18107         double quotes -- so I removed them:
18108             echo='printf "%s\n"' /bin/ksh -c '$echo \\t'
18109         From Tuukka Toivonen <tutoivon@mail.student.oulu.fi>
18111         * NEWS: Updated.
18113 2000-05-29  Bernhard Rosenkraenzer <bero@redhat.de>
18115         * libtool.m4: adding ia64 as supported linux platform
18117 2000-05-29  Michael Matz  <matz@ifh.de>
18119         * ltmain.in: fix quoting for $var_value.
18121         * ltconfig.in: check for dlfcn.h: include return value
18122         to make -Wall in CFLAGS work.
18124 2000-05-27  Gary V. Vaughan  <gary@gnu.org>
18126         * README-alpha: note new location of config.(guess|sub).
18128 2000-05-27  Chad Cunningham  <ccunning@math.ohio-state.edu>
18130         * ltconfig.in (rhapsody*): New Port.
18131         * ltmain.in (rhapsody*): ditto.
18133 2000-05-27  Chris Lattner  <sabre@skylab.org>
18135         * ltconfig.in (*-sequent-sysv4): New Port.
18137 2000-05-17  Gary V. Vaughan  <gary@gnu.org>
18139         * ltmain.in: cygwin-1.1.0 and higher no longer grok backslash path
18140         separators.
18142 2000-05-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
18144         * libtool.m4 (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE):
18145         Pick LIBLTLD from top_builddir and INCLTDL from top_srcdir.
18146         * mdemo/configure.in: Remove comments on
18147         AC_LIBLTLD_CONVENIENCE.
18149         * libtool.m4 (_AC_PROG_LIBTOOL): Renamed from...
18150         (AC_PROG_LIBTOOL): Just AC_REQUIRE(_AC_PROG_LIBTOOL), to avoid
18151         effects of multiple runs.
18153 2000-05-11  Thomas Tanner  <tanner@ffii.org>
18155         * NEWS: update
18156         * doc/libtool.texi (libltdl): rename lt_(find|next|add|remove)_dlloader
18157           to lt_dlloader_*
18158         * libltdl/ltdl.c: ditto
18159         * libltdl/ltdl.h: ditto, add declaration of lt_dlloader_(find|remove)
18161 2000-05-06  Pavel Roskin  <pavel_roskin@geocities.com>
18163         * libltdl/ltdl.c: Typo.
18165         * libtool.m4 (AC_LIBTOOL_SETUP): CVS autoconf no longer sets
18166         target to "NONE", but to an empty string.
18168 2000-05-05  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
18170         * ltdl.c: support lt_dlopen(0) for win32
18172 2000-05-03  Thomas Tanner  <tanner@ffii.org>
18174         * doc/libtool.texi (libltdl): fix typos,
18175           INCLTDL starts with top_srcdir, replace NULL with @code{NULL}
18177         * ltmain.in (ILD): search in newlib_search_path, too
18179         * ltmain.in (ILD): fix bugs in conv pass, expand convenience
18180           libs to deplibs and link them later on
18182         * ltmain.in (ILD): don't allow convenience libs to be
18183            -dlopen/preopen'ed
18185         * ltmain.in (ILD): it's not required to link all deplibs
18186           in fast-install mode
18188         * ltmain.in (ILD): if hardcode_into_libs=all, only relink
18189           a library if it is linked against uninstalled libtool libraries,
18190           rename link_against_libtool_libs to uninst_deplibs
18192         * ltmain.in (ILD): tidy up, add some comments
18194 2000-05-03  John Wehle  (john@feith.com)
18196         * libtool.m4 (hpux10.20*): use file_magic for
18197         inter-library dependency tracking.
18199 2000-05-02  Gary V. Vaughan  <gary@gnu.org>
18201         * AUTHORS:  Update my email address.
18202         * commit: ditto.
18204 2000-04-11  Thomas Tanner  <tanner@ffii.org>
18206         * NEWS: update
18207         * libtool.m4: add AC_LIBTOOL_PICMODE
18208         * ltconfig.in: move pic_mode checks to ltmain.in
18209         * ltmain.in: add -prefer-pic and -prefer-non-pic
18211 2000-03-29  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
18213         * ltmain.in (tmpdir): Do not accept an existing directory, and
18214         force its mode to 700, for security reasons.
18215         Reported by Joseph S. Myers <jsm28@cam.ac.uk>
18217 2000-03-27  Thomas Tanner  <tanner@ffii.org>
18219         * NEWS: reformatting
18221         * ltmain.in (ILD): add extra convenience library scanning pass
18223         * ltmain.in (ILD): accept -R flags for libraries, too
18225         * ltmain.in (ILD): correclty merge the dlpreopened libraries
18226           with deplibs
18228         * ltmain.in (install mode): remove directories from filenames
18229           before relinking (reported by Elrond <Elrond@Wunder-Nett.org>)
18231         * doc/libtool.texi (libltdl): rename Library -> Lesser,
18232           clarify exception clause
18233         * libltdl/ltdl.c, libltdl.h (License): ditto
18235 2000-03-21  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
18237         * ltconfig.in (variables_saved_for_relink): Set to `PATH
18238         $shlibpath_var $runpath_var'.  If with_gcc, add gcc-related
18239         environment variables.  Add it to the configuration section.
18240         * ltmain.in (relink_command): Expand those variables.
18242 2000-03-14  Christopher A. Knight  <chriskn@crt.com>
18244         * ltconfig.in: added main() definition in compile
18245         check for header `dlfcn.h' to fix link errors
18246         when built with Sun Workshop Pro CC 4.2 (and perhaps
18247         others).
18249 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
18251         * libltdl/ltdl.c (lt_find_dlhandle): Deleted.  This was B.S.
18252         far cleaner to use lt_dlforeach and lt_dlgetinfo.
18253         * libltdl/ltdl.h:  Prototype deleted.
18254         * doc/libtool.texi: Documentation deleted.
18255         * NEWS: annoncement deleted.
18257 2000-02-23  Thomas Tanner  <tanner@ffii.org>
18259         * ltmain.in: remove duplicates from deplibs, handle
18260           interdependent libraries (e.g. -la -lb -la),
18261           this requires adding deplibs in reverse order
18263         * ltmain.in: link dlpreopened libraries before other libraries
18264           (reported by Pavel Roskin)
18265         * mdemo/Makefile.am: build and link libsub.la
18266         * mdemo/sub.c: new file used by both dlopened modules
18267         * mdemo/foo*: use sub() defined in libsub
18268         * tests/dryrun.test: build libsub.la
18270         * mdemo/Makefile.am: always link mdemo.static with -static
18271         * mdemo/configure.in: ditto
18273         * ltmain.in: fix dlopen/dlpreopening of objects
18275         * ltmain.in (ILD): fix misplaced `continue' in -R* argument handler
18277         * ltmain.in: merge duplicated code of clean and uninstall mode
18279         * libtool.m4: recognize powerpc*linux* (reported by
18280           Dirk A. Mueller <dmuell@gmx.net>)
18282 2000-02-23  Gary V. Vaughan  <gary@gnu.org>
18284         * ltconfig.in (old_MAGIC, old_STRIP, old_reload_flag,
18285         old_deplibs_check_method, old_file_magic_cmd):  New variabes.
18286         Treat these as old_CC etc.
18287         (STRIP, MAGIC): Create and set these variables in the generated
18288         libtool script.
18289         Reported by Pavel Roskin <pavel_rosin@geocities.com>
18291         * configure.in: Due to a bug in autoconf-2.13 implementation of
18292         AC_SUBST, `AC_SUBST(FILE)' can never work.  Use MAGIC as the
18293         holder of the command to run in file_magic_cmd instead.
18294         * ltconfig.in: s/FILE/MAGIC/g.
18295         * libtool.m4 (AC_PROG_LIBTOOL): set MAGIC in the environment when
18296         calling ltconfig.
18297         (AC_PATH_MAGIC):  renamed from AC_PATH_FILE.
18298         (AC_PATH_TOOL_PREFIX):  s/FILE/MAGIC/g.  Also set file_magic_cmd
18299         to '${MAGIC}' so that make can grok it.
18300         * Makefile.am (libtool):
18301         (clibtool): ditto.
18303 2000-02-21  Gary V. Vaughan  <gary@gnu.org>
18305         * libltdl/ltdl.c (lt_find_dlhandle): New function.
18306         (tryall_dlopen): Use it.
18307         * libltdl/ltdl.h:  Prototype it.
18308         * doc/libtool.texi: Document it.
18309         * NEWS: updated.
18311         * libltdl/ltdl.c (lt_dlinit): removed unused variable, `loader'.
18313         * libltdl/ltdl.c (lt_remove_dlloader): typo, s/=/==/g.
18315 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
18317         * libltdl/ltdl.h (lt_dlloader_data_t):  New type for loader
18318         instance data.
18319         (lt_user_dlloader): New lt_dlloader_data_t field.
18320         (lt_module_open_t): Add lt_dlloader_data_t parameter.
18321         (lt_module_close_t): Add lt_dlloader_data_t parameter.
18322         (lt_find_sym_t): Add lt_dlloader_data_t parameter.
18323         (lt_dlloader_exit_t): Add lt_dlloader_data_t parameter.
18324         * libltdl/ltdl.c:  A sprinkling of /*ARGSUSED*/ markers to
18325         reassure lint that the unused arguments are intentional.
18326         (lt_dlloader_t): New lt_dlloader_data_t field.
18327         (lt_dlloader_data): New function to return the contents of the
18328         dlloader_data field.
18329         (sys_dl_open): Take an additional lt_dlloader_data_t argument.
18330         (sys_dl_close): Ditto.
18331         (sys_dl_sym): Ditto.
18332         (sys_dl): Initialise lt_dlloader_data_t field.
18333         (sys_shl_open, sys_shl_close, sys_shl_sym, sys_shl): As above.
18334         (sys_wll_open, sys_wll_close, sys_wll_sym, sys_wll): As above.
18335         (sys_bedl_open, sys_bedl_close, sys_bedl_sym, sys_bedl): As
18336         above.
18337         (sys_dld_open, sys_dld_close, sys_dld_sym, sys_dld): As above.
18338         (presym_init, presym_exit, presym_open, presym_close, presym_sym,
18339         presym): As above.
18340         (lt_dlinit): Call presym_init with additional argument.
18341         (lt_dlexit): Call dlloader_exit method with additional argument.
18342         (tryall_dlopen): Call module_open method with additional argument.
18343         (lt_dlclose): Call module_close method with additional argument.
18344         (lt_dlsym): Call find_sym method with additional argument.
18345         (lt_add_dlloader): Initialise dlloader_data field.
18346         (lt_remove_dlloader): Call dlloader_exit method with additional
18347         argument.
18349         * libltdl/ltdl.c (find_file): Prevent early release of memory
18350         in filename/*pdir.
18351         From Jon Leichter <jon@symas.com>
18353         (sys_wll_init): Deleted.  No longer required.  And this time,
18354         with feeling!
18355         (sys_wll_exit): Ditto.
18357 2000-02-02  Gary V. Vaughan  <gary@gnu.org>
18359         * NEWS: updated.
18360         * doc/libtool.texi (Libltdl interface): Moved user defined module
18361         loader documentation from here...
18362         (Module loaders for libltdl) ...to here, and updated the text and
18363         added examples.
18364         * ltdl.m4 (AC_CHECK_FUNCS): check strcmp for lt_find_dlloader.
18365         * libltdl/ltdl.h: Reformatted and commented for readability.
18366         (struct lt_user_dlloader): New data type for passing
18367         initialisation pointers to lt_add_dlloader.
18368         (LTDL_ERROR_INVALID_LOADER):  New error message when non loader
18369         handles are passed to the user loader API.
18370         (LTDL_ERROR_INIT_LOADER): New error when loader initialisation
18371         fails.
18372         (LTDL_ERROR_REMOVE_LOADER): New error when loader removal fails.
18373         (lt_module_open_t): renamed from lt_lib_open_t.
18374         (lt_module_close_t): renamed from lt_lib_close_t.
18375         (lt_dlloader_exit_t): renamed from lt_dlloader_exit_t.
18376         * libltdl/ltdl.c: Reordered builtin loaders so that the "dld"
18377         loader no longer occurs before "dlopen" on some platforms and
18378         after it on others.
18379         (lt_dlloader_t): Moved here from ltdl.h, added a field,
18380         "loader_name", for identifying the loader, and renamed from
18381         lt_dltype_t.  Renamed type variables to loader IFF of type
18382         lt_dlloader_t.
18383         (lt_module_t): Renamed from lt_syshandle. Renamed handle variables
18384         to module IFF of type lt_module_t.
18385         (LTDL_TYPE_TOP): Deleted.  No longer required.
18386         (sys_dl): Initialised as a struct lt_user_dlloader.
18387         (sys_dl_init): Deleted.  No longer required.
18388         (sys_dl_exit): Ditto.
18389         (sys_shl): Initialised as a struct lt_user_dlloader.
18390         (sys_shl_init): Deleted.  No longer required.
18391         (sys_shl_exit): Ditto.
18392         (sys_wll): Initialised as a struct lt_user_dlloader.
18393         (sys_wll_init): Deleted.  No longer required.
18394         (sys_wll_exit): Ditto.
18395         (sys_bedl): Initialised as a struct lt_user_dlloader.
18396         (sys_bedl_init): Deleted.  No longer required.
18397         (sys_bedl_exit): Ditto.
18398         (sys_dld): Initialised as a struct lt_user_dlloader.
18399         (sys_dld_init): Deleted.  No longer required.
18400         (sys_dld_exit): Ditto.
18401         (sys_presym): Initialised as a struct lt_user_dlloader.
18402         (lt_mod_init_t): Moved to here from ltdl.h.
18403         (lt_dlinit): Add builtin loaders using the user loader API.
18404         (lt_dlexit): Unregister and free all loaders.
18405         (lt_add_dlloader): New function to add a new module loader after the
18406         loader specified in the argument.
18407         (lt_remove_dlloader): New function to remove a module loader.
18408         (lt_next_dlloader): New function for iterating over module loaders.
18409         (lt_dlloader_name): Accessor function for name of dlloader.
18410         (lt_find_dlloader): New function to get a reference to a registered
18411         module loader.
18412         (strcmp): static implementation incase the host has none.
18413         (lt_dlgettypes, lt_dlsettypes): Removed.
18415 2000-02-02  Thomas Tanner  <tanner@ffii.org>
18417         * libltdl/ltdl.c: replace NULL with 0, remove unused system
18418           and app_private pointers from lt_dlhandle_t
18419         * libltdl/ltdl.c (presym_add_list): new preloaded symbols
18420           don't need to be added to the end
18422         * libltdl/ltdl.c (lt_dlgetdata, lt_dlsetdata): removed
18423         * libltdl/ltdl.h: ditto
18424         * doc/libtool.texi (libltdl interface): ditto
18426 2000-02-01  Thomas Tanner  <tanner@ffii.org>
18428         * ltmain.in: support -dlopen/dlpreopen for libraries
18429         * NEWS: updated
18430         * TODO: updated
18431         * ltmain.in: rename dlopen to dlopen_support
18432         * ltconfig.in: ditto
18433         * doc/libtool.texi: ditto
18435         * ltmain.in: check whether libraries are moved out of $libdir,
18436           replace .a and .lib with .$libext, .o and .obj with .$objext
18438 2000-01-31  Gary V. Vaughan  <gary@gnu.org>
18440         * libltdl/ltdl.h (lt_dlrealloc): removed declaration.
18441         * libltdl/ltdl.c (lt_dlrealloc): removed definition.
18442         (lt_dladderror): Instead of calling lt_dlrealloc, use lt_dlmalloc,
18443         and lt_dlfree.
18445 2000-01-30  Ossama Othman  <ossama@debian.org>
18447         * libtool.m4 (lt_cv_cc_needs_belf): Set the test language to C
18448         prior to executing the test that checks if the C compiler needs
18449         "-belf."
18450         Reported by Chris Butler <chrisb@sandy.force9.co.uk>
18452 2000-01-28  Gary V. Vaughan  <gary@gnu.org>
18454         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use changequote to
18455         protect `[' and `]' in deplibs_check_method.
18457         * libltdl/ltdl.h (lt_dlrealloc): Added declaration.
18458         * libltdl/ltdl.c (lt_dlrealloc): Added default definition.
18460         * libltdl/ltdl.c (lt_dlseterror): Catch errorcodes below 0 as
18461         invalid.
18462         * libltdl/ltdl.h (LTDL_ERROR): Added missing '_' in K&R
18463         definition.
18465         * libltdl/ltdl.h (ltdl_error_table): Added missing error code, and
18466         fixed typo in another code.
18467         * doc/libtool.texi (Libltdl interface): Added missing @end
18468         clause.
18470 2000-01-27  Thomas Tanner  <tanner@ffii.org>
18472         * ltconfig.in: Oops, replace the remaining $objdir's
18474         * ltmain.in: merge library linking code of programs and libraries,
18475           some cleanups
18477 2000-01-27  Gary V. Vaughan  <gary@gnu.org>
18479         * NEWS: Updated.
18480         * doc/libtool.texi (Libltdl interface): Document new entry
18481         points.
18482         * libltdl/ltdl.c (lt_dladderror): New function to add a user
18483         defined error message to the tables used by lt_dlerror().
18484         (lt_dlseterror):  New function to allow setting of last_error by
18485         user modules.
18486         (ltdl_error_strings): New preprocessor generated table of internal
18487         error diagnostic strings.
18488         (user_error_strings): New internal list of registered user error
18489         diagnostic strings.
18490         (throughout!): Use error messages from ltdl_error_strings.
18491         * libltdl/ltdl.h (ltdl_error_table): New macro to tabulate
18492         internal diagnostic error strings alongside enum keys.
18494         * NEWS: Updated.
18495         * doc/libtool.texi (Libltdl interface): Document new entry
18496         points.
18497         * libltdl/ltdl.c (lt_dltype_t):  Use new type definitions for
18498         existing fields.
18499         (lt_dladdtype): New function to add a new ltdl dynamic loader
18500         type to the end of the list of valid types..
18501         (lt_dlgettypes): New function to return the complete list of ltdl
18502         dynamic loader types.
18503         (lt_dlsettypes): New function to replace the list of ltdl dynamic
18504         loader types entirely -- e.g. to prepend a new type to the
18505         existing list.
18506         (sys_dl_open, sys_dl_close, sys_dl_sym): Work with lt_syshandle.
18507         (sys_shl_open, sys_shl_close, sys_shl_sym): ditto.
18508         (sys_dld_open, sys_dld_close, sys_dld_sym): ditto.
18509         (sys_wll_open, sys_wll_close, sys_wll_sym): ditto.
18510         (sys_bedl_open, sys_bedl_close, sys_bedl_sym): ditto.
18511         (presym_open, presym_close, presym_sym): ditto.
18512         (tryall_dlopen): Call lt_lib_open_t functions lt_syshandle
18513         compatibly.
18514         (lt_dlclose): Call lt_lib_close_t functions lt_syshandle
18515         compatibly.
18516         (lt_dlsym): Call lt_find_sym_t functions lt_syshandle compatibly.
18517         (lt_dltype_t): moved type declaration from here...
18518         * libltdl/ltdl.h (lt_dltype_t): ...to here.
18519         (lt_syshandle): new type for low level system handles passed by
18520         loader functions
18521         (lt_mod_init_t):  New type for functions implementing the
18522         initialisation for an ltdl dynamic loader.
18523         (lt_mod_exit_t): Type of exit functions for the same.
18524         (lt_lib_open_t): Type of loader functions for the same.
18525         (lt_lib_close_t): Type of unloader functions for the same.
18526         (lt_find_sym_t): Type of symbol resolver functions for the same.
18528         * libltdl/ltdl.c (sys_dl_init, sys_dl_exit, sys_dl_open,
18529         sys_dl_close, sys_dl_sym):  Preprocess these away on cygwin to
18530         avoid spurious error messages.
18532 2000-01-24  Thomas Tanner  <tanner@ffii.org>
18534         fix severe bugs reported by Elrond <Elrond@Wunder-Nett.org>
18536         * ltconfig.in: replace $objdir with $output_objdir
18538         * ltmain.in: change to the builddir before relinking programs
18540         * ltmain.in, ltconfig.in, libtool.m4, ltdl.m4:
18541           remove unnessary spaces from line endings
18543 2000-01-19  Thomas Tanner  <tanner@ffii.org>
18545         * ltmain.in: rewrite of the ILD code, merge linking code for
18546           programs, libraries and objects, allow linking of shared libraries
18547           against static libraries/objects on platforms that support it
18548           but print a warning, fix some typos
18550         * partially revert my previous change and
18551           update only copyright notices of files that were actually modified
18553         * NEWS: update
18555         * libltdl/Makefile.am: version number was wrong
18557         * libltdl/ltdl.c (tryall_dlopen): revert Gary's change
18558           since it breaks dlpreopening
18559         * ltdl.m4: ditto
18561         * libltdl/ltdl.c (sys_search_path): search in the system default
18562           library search path, too
18563         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): extract the path
18565         * libltdl/ltdl.c (find_module): remove bogus file_not_found_error
18567         * libltdl/ltdl.c (load_deplibs): implement loading of dependency
18568           libraries
18569         * libltdl/ltdl.c (unload_deplibs): implement unloading of dependency
18570           libraries
18571         * libltdl/ltdl.c (lt_dlexit): correctly close all modules and
18572           their dependencies
18574         * libltdl/ltdl.c (lt_dlforeach): new function
18575         * libltdl/ltdl.h: ditto
18576         * doc/libtool.texi (using libltdl): document it
18578         * libtool.m4: reformatting, only add -I$topsrc_dir/libltdl to
18579           INCLTDL
18581         * libtoolize.in: reformatting
18582         * ltconfig.in: reformatting
18583         * ltmain.in: reformatting
18585         * mdemo/configure.in: AC_SUBST INCLTDL
18586         * mdemo/Makefile.am: use INCLTDL
18588         * tests/Makefile.am: reexport OBJEXT and EXEEXT
18589         * tests/dryrun.test: use them for building main.obj and mdemo.exe
18591 2000-01-17  Gary V. Vaughan  <gary@gnu.org>
18593         * libltdl/ltdl.c (tryall_dlopen): Abort with
18594         file_not_found_error before trying all lib_open() methods
18595         if the file to be dlopened doesn't exist.
18596         * ltdl.m4 (AC_HAVE_HEADERS): add unistd.h.
18598 2000-01-16  Gary V. Vaughan  <gary@gnu.org>
18600         * libltdl/ltdl.c (find_file): memory error fixed.
18602 2000-01-14  Gary V. Vaughan  <gary@gnu.org>
18604         * ltconfig.in (Usage): Now it matches the code!
18605         Reported by Jon Leichter <jon@symas.com>
18607         * README:  Some notes about libtool release numbers.
18609         * mdemo/README: Explain the deliberate incompleteness of the
18610         Windows port.
18611         * mdemo/configure.in: Use AC_LIBTOOL_WIN32_DLL.
18612         * mdemo/Makefile.am (LDFLAGS):  Add -no-undefined.
18614         * libltdl/ltdl.h (LTDL_STMT_START, LTDL_STMT_END):  Macros for
18615         wrapping other macros to make a portable compound statement from
18616         multiple C statements in the expansion.
18617         (LTDL_SET_PRELOADED_SYMBOLS): Use the above macros to add an
18618         extern declaration for lt_preloaded_symbols, to remove
18619         dependency on undefined symbol from libltdl.dll on cygwin (and
18620         other -no-undefined architectures).
18621         * libltdl/ltdl.c (lt_preloaded_symbols): No longer defined here.
18623         * libtool,m4 (AC_LIBTOOL_SETUP):  The result of lt_cv_need_dllmain
18624         was set to the opposite of what it should be.
18625         * configure.in (AC_LIBTOOL_WIN32_DLL):  Call to this macro is
18626         required for libtool configury to test lt_cv_need_dllmain on
18627         Windows.
18629         * ltconfig.in (opt_cr, mingw*): replace unescaped ? with correctly
18630         escaped and portable \{0,1\} in sed expression.
18631         From Jon Leichter <jon@symas.com>
18633 2000-01-13  Gary V. Vaughan  <gary@gnu.org>
18635         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): Add -I${top_srcdir}/libltdl
18636         to default INCLTDL for VPATH.
18637         (AC_LIBLTDL_INSTALLABLE): ditto.
18638         Reported by Tom Tromey <tromey@cygnus.com>
18640 2000-01-12  Thomas Tanner  <tanner@ffii.org>
18642         * update all copyright notices to 2000
18644         * doc/libtool.texi (using libltdl): document new lt_dlinfo struct,
18645           replace NULL with @code{NULL}, document lt_dlsetdata(),
18646           lt_dlgetdata() and lt_dlgetinfo()
18647         * libltdl/Makefile.am: increment interface version number
18648         * libltdl/configure.in: set version number to 1.1
18649         * libltdl/ltdl.c: make some variables public by moving them
18650           to the info struct, add support for application specific data
18651           within module handles, new lt_dlsetdata(), lt_dlgetdata() and
18652           lt_dlgetinfo() functions,
18653           fix memory leaks, minor cleanups
18654         * libltdl/ltdl.h: ditto
18655         * mdemo/main.c: demonstrate use of lt_dlgetinfo,
18656           improved handling of errors
18658         * ltconfig.in: set hardcode_into_libs = yes for GNU/Hurd, Linux
18659           and Solaris, only hardcode *all* run-paths if hardcode_into_libs
18660           is set to 'all', otherwise hardcode only user-specified rpaths
18661           into libraries
18662         * ltmain.in: minor cleanups, we don't need to add user-specified
18663           rpaths to compile_rpath, finalize_rpath is sufficient
18665         * ltconfig.in: transform linux* -> *linux-gnu* _after_ host_os has
18666           been set! (reported by Bruno Haible <haible@ilog.fr>)
18668         * configure.in: AC_SUBST reload_flag, deplibs_check_method
18669           and file_magic_cmd
18671         * README: use 'libtool --version' instead of 'ltconfig --version'
18672           (suggested by François Pinard <pinard@iro.umontreal.ca>
18674 2000-01-10  Gary V. Vaughan  <gary@gnu.org>
18676         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Leave undefined when
18677         not compiling for a Windows target.
18678         * libltdl/ltdl.c (canonicalize_path): New function to
18679         ensure internal paths use '/' directory separators.
18680         (find_file): use canonicalize_path.  Memory management
18681         changed to cope.
18682         (lt_dlopen): ditto.
18683         (free_vars): Removed `dir' and `name', which are now handled
18684         internally.
18686         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Define to '/' or '\\',
18687         as suitable for the target host.
18688         (LTDL_PATHSEP_CHAR): Similarly with ':' or ';'.
18689         * libltdl/ltdl.c: Use LTDL_DIRSEP_CHAR and LTDL_PATHSEP_CHAR
18690         instead of hardcoding throughout.
18691         Reported by Jon Leichter <jon@symas.com>
18693 1999-12-18  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
18695         * ltmain.in: Oops, `largarg' -> `lastarg'.
18697         * ltmain.in (-Wc, -Xcompiler): Implemented in compile mode.
18699         * ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and
18700         finalize_command.
18701         (-Wc, -Wl): Likewise.
18703         * tests/quote.test: Adjust quoting style of -Wl.
18705         * ltmain.in: Oops, `echo' -> `$echo'.
18707         * ltmain.in (-Wl, -Wc): Make commas argument separators, just like
18708         in gcc.
18710         * ltmain.in (libtool_args): Get all arguments properly enclosed in
18711         quotes and backslash-protected when needed.
18713 1999-12-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
18715         * ltdl.m4: Renamed from...
18716         * libltdl/ltdl.m4: that no longer exists.
18717         * configure.in (ACINCLUDE_M4_LIST): Removed libltdl/acinclude.m4.
18718         * Makefile.am (aclocal_macros): Added ltdl.m4.
18719         (libltdl/acinclude.m4): Concatenate libtool.m4 and ltdl.m4.
18720         * bootstrap: Likewise.
18721         * libltdl/Makefile.am (ACLOCAL): Remove the definition.  Relying
18722         upon -I may lead to duplicates.
18723         * doc/libtool.texi: Suggest appending ltdl.m4 to acinclude.m4.
18724         * libtoolize.in: Check AC_LIB_LTDL version number in aclocal.m4.
18726         * libltdl/configure.in (with_auxdir): Do not use it as the
18727         argument of AC_CONFIG_AUX_DIR, automake requires a literal here.
18728         Use AC_CONFIG_AUX_DIRS/DIR_DEFAULT instead.
18730         * libltdl/Makefile.am (ACLOCAL): Define with `-I .', as in
18731         bootstrap.
18733 1999-12-15  Thomas Tanner  <tanner@ffii.org>
18735         * libltdl/configure.in: path to auxiliary files can be specified
18736           using --with-auxdir (idea by Howard Chu <hyc@highlandsun.com>)
18738         * ltmain.in: don't remove multiple occurences from dependency_libs
18739           of a library, otherwise many dependencies would get lost
18741         * bootstrap: use "aclocal -I ." instead of adding the contents
18742           of ltdl.m4 to acinclude.m4
18744 1999-12-13  Gary V. Vaughan  <gary@gnu.org>
18746         * NEWS: updated.
18747         * libltdl/Makefile.am: Use -no-undefined for dll compliance.
18748         * libltdl/configure.in: Use AC_LIBTOOL_WIN32_DLL for dll
18749         compliance.
18750         * libltdl/ltdl.c: Define and use LTDL_GLOBAL_DATA to correctly
18751         export global data symbols from libltdl.dll.
18752         * libltdl/ltdl.h: Define and use LTDL_SCOPE to declare data
18753         symbols as dllexport, dllimport or plain ornary extern depending
18754         in the context in which it is used.
18756         * doc/libtool.texi (Distributing libltdl): document use of
18757         ltdl.m4.
18758         * libltdl/configure.in: Removed header checks, as they are
18759         automatically performed by AC_LIB_LTDL.
18760         * libltdl/ltdl.m4: Added header checks from configure.in, so that
18761         AC_LIB_LTDL is sufficient to compile ltdl.c.
18762         Reported by Stephan Kulow <coolo@kde.org>.
18764         * ltconfig.in (ltdll_obj): fixed typo: objdir -> $objdir
18766 1999-12-12  Gary V. Vaughan  <gary@gnu.org>
18768         * ltconfig.in (cygwin*, mingw*, export_symbols_cmds): keep any
18769         DATA tags associated with symbols by recent dlltool.
18770         (cygwin*, mingw*, archive_expsym_cmds): Honor any DATA tags
18771         found in the symbol list.
18772         Reported by Jon Leichter <jon@symas.com>.
18774 1999-12-10  Gary V. Vaughan  <gary@gnu.org>
18776         From Stephan Kulow <coolo@kde.org>
18777         * libltdl/ltdl.m4:  Add arg 3 to AC_DEFINE's to save the user
18778         from having to hack acconfig.h.
18780 1999-12-06  Gary V. Vaughan  <gary@gnu.org>
18782         * NEWS: Updated.
18783         * TODO: Note some cleanups that are now needed.
18784         * libltdl/configure.in: Use the new macroised tests.
18785         * libltdl/ltdl.m4: New file, macroised tests formerly in
18786         libltdl/configure.in.
18787         Reported by Stephan Kulow <coolo@kde.org>.
18789         From Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
18790         * ltconfig.in:  split off the osf3 section, so that the osf4 and
18791         osf5 sections can add `-msym' to arguments passed to the linker
18792         for shared libs.
18794 1999-12-03  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
18796         * ltconfig.in (ac_compile): Use $ac_ext instead of .c.
18797         (ac_link): Likewise.
18798         (dlfcn.h, ac_try): Do not add filename, it is already in
18799         ac_compile.
18800         Reported by Stephane Conversy <Stephane.Conversy@lri.fr>
18802         * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
18803         works together with fast_install.
18805         * libtool.m4: Use host when --target is not specified.
18807         * configure.in: AC_SUBST variables that are used by ltconfig to
18808         build libtool.
18810         * ltconfig.in (irix6*): Do not override deplibs_check_method
18811         here.
18813         * libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
18815 1999-11-20  Michael Forster  <email@michael-forster.de>
18817         * ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes.
18819 1999-11-29  Gary V. Vaughan  <gary@gnu.org>
18821         * ltconfig.in:  Be friendlier to C++ compilers when testing
18822         for dlopen support.
18823         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
18825 1999-11-26  Gary V. Vaughan  <gary@gnu.org>
18827         * libtool.m4:  better use of $target instead of $host to support
18828         cross compilation.
18829         Reported by Sam Latinga <slouken@devolution.com>
18831 1999-11-16  Thomas Tanner  <tanner@ffii.org>
18833         * configure.in: generate ltconfig and ltmain.sh before configuring
18834           libltdl
18836 1999-11-04  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
18838         * tests/sh.test: New test to detect uses of quotes within
18839         backticks within quotes.
18840         * ltconfig.in, ltmain.in: Fix detected errors.  Mark false
18841         positives with a comment that disables the detector.
18842         Reported by Akim Demaille <akim@epita.fr>
18844         * configure.in: Move ltconfig and ltmain.sh generation back...
18845         * Makefile.am: here.
18847 1999-11-02  Thomas Tanner  <tanner@ffii.org>
18849         * NEWS: updated
18850         * THANKS: added Olly Betts and Pavel Roskin
18851         * doc/libtool.texi: fix typo
18853         * fix major bugs which rendered libtool virtually
18854           unusable (i.e. not portable):
18855         * ltconfig.in: don't hardcode system dependent variables in ltconfig!!
18856           but set sane defaults
18857         * Makefile.am: pass variables from AC_LIBTOOL_SETUP to ltconfig
18858         * libtool.m4: ditto, fix typo in AC_PROG_LD_RELOAD_FLAG
18860         * ltconfig.in: use old_deplibs for archives, too
18861           remove second occurence of sysv5
18862         * ltmain.in: fix typo, fix the second occurence of -DPIC, too
18864         * libltdl/Makefile.am: increment version number, fix typo
18865         * libltdl/ltdl.c (lt_dlsym): don't report an error if the
18866           libltdl-style symbol name wasn't found
18868 1999-11-02  Wolfgang Rapp <ulris@bn-ulm.de>
18870         * ltconfig.in: add support for Unixware (sysv4.2uw2*)
18872 1999-10-29  Gary V. Vaughan  <gary@gnu.org>
18874         * ltmain.in:  Damnit!  Cygwin cvs committed all the
18875         dos line endings.
18877 1999-10-28  Stephane Conversy  <Stephane.Conversy@lri.fr>
18879         * ltmain.in (-DPIC):  changed the order of pic flags a little to
18880         prevent upsetting the sgi c++ compiler.
18882 1999-10-28  Olly Betts  <olly@muscat.co.uk>
18884         * ltconfig.in (opt_cr):  Handle crlf sequences output by the
18885         mingw toolchain.
18887         * libtool.m4:  Third time lucky, with Tor's patch.
18889 1999-10-19  Tor Lillqvist  <tml@iki.fi>
18891         * libtool.m4:  these was a missing `*' in the -mno-cygwin
18892         match.
18893         * ltconfig.in (cygwin, ltdll_obj): fixed a quoting error.
18894         (export_symbols_cmds): added missing cosmetic newline.
18896 1999-10-18  Tor Lillqvist  <tml@iki.fi>
18898         * libtool.m4: test command used == which should be =.
18899         Support -mno-cygwin flag for building mingw32 dlls.
18900         * ltconfig.in (file_magic_cmd): add missing quotes.
18901         (deplibs_check_method): and here.
18903 1999-10-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
18905         * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
18906         specified library is not just a basename.
18908 1999-10-10  Gary V. Vaughan  <gary@gnu.org>
18910         * libtool.m4 (AC_PATH_FILE): new macro replaces
18911         AC_PATH_TOOL_GREP_OUTPUT.
18912         (AC_PATH_TOOL_PREFIX): new macro replaces
18913         AC_PATH_PROG_GREP_OUTPUT.
18914         (AC_LD_RELOAD_FLAG):  migrated from ltconfig.in.
18915         (AC_DEPLIBS_CHECK_METHOD): ditto.
18916         * ltconfig.in (reload_flag): moved to libtool.m4.
18917         (deplbs_check_method): ditto.
18919 1999-10-07  Gary V. Vaughan  <gary@gnu.org>
18921         * libtool.m4 (AC_PATH_PROG_VERSION_GREP): removed in favour of the
18922         more general AC_PATH_PROG_GREP_OUTPUT.
18923         (AC_PATH_TOOL_VERSION_GREP): removed in favour of the more general
18924         AC_PATH_TOOL_GREP_OUTPUT.
18925         (AC_PROG_LIBTOOL):  Search for a working find program in the
18926         user's PATH using the new macros.
18928 1999-10-06  Gary V. Vaughan  <gary@gnu.org>
18930         * NEWS: updtaed.
18931         * ltconfig.in: Accept osf5.
18932         Reported by Sascha Schumann <sascha@schumann.cx>
18934 1999-10-04  Gary V. Vaughan  <gary@gnu.org>
18936         * ltmain.in (-no-install):  This doesn't work on win32 since
18937         the search path for libraries is not encoded in the binary,
18938         and dlls not in $PATH won't be found.  Fall back to -no-fast-install
18939         instead.
18941         * ltmain.in (-no-fast-install):  Wrapper script used to add the
18942         exeext on again when naming the wrapped executable.
18944 1999-10-03  Gary V. Vaughan  <gary@gnu.org>
18946         * ltconfig.in:  Set $FILE to @FILE@ for substitution with
18947         the value found in libtool.m4 at configure time.
18948         * libtool.m4 (AC_PATH_TOOL_GREP_VERSION):  New macro, combines
18949         AC_PATH_PROG and AC_CHECK_TOOL with a test which greps the
18950         output of $ac_dir/${ac_prefix}<tool> --version for a
18951         given regex.
18952         (AC_PATH_PROG_GREP_VERSION):  New macro used by the above.
18953         (AC_LIBTOOL_SETUP): Use the new macros to search the PATH
18954         [starting at /usr/bin] for a file program which accepts
18955         --version and has "file" in its --version output.
18957 1999-10-03  Thomas Tanner  <tanner@ffii.org>
18959         * NEWS: new -no-install flag
18960         * configure.in: fix typo
18961         * doc/libtool.texi(Link mode): document -no-install flag,
18962           correct -no-fast-install docs
18963         * libtool.m4: check for "file" command
18964         * ltconfig.in: don't hardcode /usr/bin/file, remove second
18965           definition of sysv5, replace linkopts -> linker_flags
18966         * ltmain.in: add new -no-install flag, print help for -no-install
18967           and -no-fast-install flags
18969 1999-10-03  Olly Betts <olly@muscat.co.uk>
18971         * ltmain.in: always create output_objdir
18973 1999-10-03  Pavel Roskin  <pavel_roskin@geocities.com>
18975         * libltdl/Makefile.am: don't preserve file attributes when
18976           installing the libltdl sources
18978 1999-10-01  Gary V. Vaughan  <gary@gnu.org>
18980         * configure.in (AC_OUTPUT_COMMANDS): generate ltmain.sh
18981         * Makefile.am (ltmain.sh ltconfig): removed.  Automake inserts the
18982         rules to automatically call config.status.
18984         * libtool.m4: be sure to AC_SUBST values no longer tested in
18985         ltconfig.in.
18986         * ltconfig.in: replaced several of the simple feature tests with
18987         substitutions from config.status.
18988         * Makefile.am (ltconfig): generate ltconfig with config.status.
18989         * configure.in (AC_OUTPUT): generate ltconfig with config.status.
18991 1999-09-30  Donald Anderson  <dda@world.std.com>
18993         * ltconfig.in (sco3.2v5): use pass_all deplibs_check_method
18994         for SCO3.2.
18996 1999-09-29  Gary V. Vaughan  <gary@gnu.org>
18998         * ltconfig.in (whole-archive-flag-spec):  I had been
18999         wondering why my file system was filling up with empty
19000         files named `71'... seems I forgot to hold in the
19001         shift key when redirecting stderr, 2>&1.  Doh!
19003 1999-09-29  Vadim  <vadim@olly.ru>
19005         * ltconfig.in (sysv):  More UW7 support.
19007 1999-09-28  Albert Cheng  <acheng@ncsa.uiuc.edu>
19009         * ltmain.in (shlibpath_var): ensure the variable is non-empty before
19010         exporting it.
19012 1999-09-27  Manfred Weichel  <weichel@global.nacamar.de>
19014         * ltconfig.in (sysv5): Added support required for shared
19015         library linking on SCO UW7.
19017 1999-09-22  Gary V. Vaughan  <gary@gnu.org>
19019         * ltconfig.in (whole-archive-flag-spec): test whether the
19020         version of GNU ld being used understands --whole-archive
19021         before using it.
19023 1999-09-19  Thomas Tanner  <tanner@ffii.org>
19025         * ltmain.in: don't ignore convenience libraries for objects/archives
19026           (temporary hack)
19028 1999-09-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
19030         * ltconfig.in (CDPATH): Set to `:' instead of empty.
19031         * ltmain.in (CDPATH): Likewise.
19032         Reported by Greg McGary <gkm@eng.ascend.com>
19034 1999-08-24  Gary V. Vaughan  <gary@gnu.org>
19036         * ltconfig.in (ltdll.c, impgen.c): Prevent the shell from
19037         expanding variables & backslash escapes when writing these
19038         files to the libtool script.
19040 1999-08-24  Thomas Tanner  <tanner@ffii.org>
19042         * NEWS: mention fixes
19043         * doc/PLATFORMS: GNU/Hurd update
19044         * depdemo: make use of variables
19045         * ltconfig.in: use CC -E when checking for ELF support
19046           on NetBSD (reported by Todd Vierling <tv@pobox.com>),
19047           replace all occurences of 'linkopts' with 'linker_flags'
19048         * ltmain.in: move ltdll.c and impgen.c to ltconfig.in and
19049           only add them to the libtool script if it's necessary
19051 1999-08-24  Boyd Gerber  <gerberb@zenez.com>
19053         * ltconfig.in: add support for UnixWare 7.X.X
19054         * doc/PLATFORMS: add new platforms
19056 1999-08-24  Pavel Roskin  <pavel_roskin@geocities.com>
19058         * doc/libtool.texi: document use of noinst_LTLIBRARIES for
19059           convenience libraries
19061         * ltconfig.in: check for freebsdelf3, not just freebsd3.
19062         Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1
19064         * ltmain.in: enable workaround for freebsdelf3.0
19066 1999-08-24  Bert Driehuis  <bert_driehuis@nl.compuware.com>
19068         * ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
19070 1999-08-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
19072         * libltdl/COPYING.LIB: Update to version 2.1.
19073         * libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.
19075 1999-08-03  Gary V. Vaughan  <gary@gnu.org>
19077         * libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return
19078         stripping.
19079         * ltconfig.in: ditto.
19080         From Olly Betts <olly@muscat.co.uk>
19082 1999-08-02  Olly Betts  <olly@muscat.co.uk>
19084         * doc/libtool.texi (Compile mode): typo correction.
19085         (Link mode): and another.
19086         (Release numbers):  and another.
19087         (Distributing libltdl): and another.
19088         (Test descriptions): and another.
19089         (libtool script contents): and one more.
19091         * libtool.m4 (AC_PROG_LD): strip carriage returns from the
19092         output of gcc -print-prog-name=ld.
19093         * ltconfig.in: ditto.
19095 1999-07-30  Pavel Roskin  <pavel_roskin@geocities.com>
19097         * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
19098         initialised structures are sometimes emitted in the code section.
19100 1999-07-30  Mumit Khan  <khan@xraylith.wisc.edu>
19102         * ltconfig.in:  Read line at a time to avoid tokenisation by
19103         shell.
19105 1999-07-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
19107         * ltmain.in: Fix creation of relative links to object files in
19108         sub-dirs.
19110 1999-07-29  Olly Betts  <olly@muscat.co.uk>
19112         * ltconfig.in(cygwin mingw32, archive_expsym_cmds): Only compile
19113         and link ltdll.c if the libtool.m4 macros discovered that it is
19114         required.
19116 1999-07-26  Olly Betts  <olly@muscat.co.uk>
19118         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops.  Fix some
19119         typos made by Evil Gary while (mis)applying my patch :-).
19121         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP):  On second
19122         thoughts, only probe for -mdll vs -dll on mingw, and revert to
19123         the old `-Wl,--dll -nostartfiles' on cygwin.
19125 1999-07-24  Erez Zadok  <ezk@cs.columbia.edu>
19127         * doc/PLATFORMS (i*86-*openbsd2.5):  New platform.
19128         Slight reordering of other bsd entries.
19130 1999-07-24  Olly Betts  <olly@muscat.co.uk>
19132         * NEWS: Note new user visible changes.
19133         * libtool.m4 (mingw32, AC_LIBTOOL_SETUP): probe for -mdll vs -dll
19134         under cygwin/mingw.
19135         probe whether the cygwin/mingw library supplies a stub DllMain
19136         (but this information isn't yet used).
19137         * ltconfig.in (mingw32, extract_expsyms_cmds): if HOST_CC is set,
19138         use that to build impgen so we can use it when cross-compiling.
19139         use correct entry points for mingw so static C++ constructors get
19140         called for code in the DLL.
19141         * ltmain.in (impgen.c): define O_BINARY to 0 if it is not in the
19142         system headers.
19144 1999-07-24  Bert Driehuis <bert_driehuis@compuware.com>
19146         * ltconfig.in:  Updated bsdi4 soname specs to be more like
19147         linux as discussed on the bsdi mailing list.
19149 1999-07-20  Gary V. Vaughan  <gary@gnu.org>
19151         * configure.in (AC_PROG_RANLIB):  No longer required as we now use
19152         AC_CHECK_TOOL in AC_LIBTOOL_SETUP.
19153         * libtool.m4 (AC_PROG_LIBTOOL):  Pass the $build variable to
19154         ltconfig.
19155         (AC_PROG_RANLIB): replaced with AC_CHECK_TOOL.
19156         * ltconfig.in (build): new variable to hold the build triplet
19157         which is now checked for unless --no-verify is specified.
19158         (--build): new argument to set the build triplet.
19159         (ranlib): Prefer ${host_alias}-ranlib[.exe] if $build is different
19160         to $host.
19161         * doc/libtool.texi (Invoking ltconfig): Document --build option.
19162         * NEWS: Note --build option.
19164 1999-07-19  Erez Zadok  <ezk@cs.columbia.edu>
19166         * doc/PLATFORMS: Updated mostly *bsd platforms.
19168 1999-07-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
19170         * doc/libtool.texi (Porting inter-library dependencies): Typos
19171         Reported by Petter Reinholdtsen <pere@hungry.com>
19173 1999-07-17  Thomas Tanner  <tanner@ffii.org>
19175         * NEWS, TODO: updated (pic flags)
19176         * libtool.m4 (AC_PROG_LIBTOOL): added --with-pic flag
19177         * ltconfig.in: new pic_mode variable and --prefer[-non]-pic flags,
19178           fixed the strip check (reported by Keith Bostic <bostic@bostic.com>)
19179         * ltmain.in (compile mode): build only PIC/non-PIC code depending
19180           on pic_mode
19181         * libltdl/README: document the supported dlopen interfaces
19182         * doc/libtool.texi (tests): documented new tests
19183         * tests/Makefile.am: added new tests
19184         * tests/demo-pic.test: new test to test --with-pic
19185         * tests/demo-nopic.test: new test to test --without-pic
19186         * tests/build-relink2.test: variant of build-relink.test that
19187           uses depdemo
19189 1999-07-09  Olly Betts  <olly@muscat.co.uk>
19191         * doc/libtool.texi (C++ Libraries):  fixed a typo.
19193 1999-07-06  Gary V. Vaughan  <gary@gnu.org>
19195         * README-alpha:  improved the release instructions to mention
19196         actual list addresses for announcements, and urls for upload
19197         locations.
19199 1999-07-03  Thomas Tanner  <tanner@ffii.org>
19201         * doc/PLATFORMS: 1.3b passes all tests on cygwin
19203 1999-07-03  Pavel Roskin <pavel_roskin@geocities.com>
19205         * ltconfig.in: finish_cmds for FreeBSD removed
19206         * depdemo/l3/Makefile.am: install libl3.la into an extra directory
19208 1999-07-02  Gary V. Vaughan  <gary@gnu.org>
19210         * configure.in: bumped version to 1.3c.
19212         GNU libtool 1.3b was released.
19214         * NEWS: inserted todays date.
19216 1999-07-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
19218         * doc/PLATFORMS: Tested on as many platforms as possible for me.
19220 1999-07-01  Thomas Tanner  <tanner@ffii.org>
19222         * NEWS: updated
19223         * doc/PLATFORMS: updated
19224         * changed my email address
19226 1999-06-30  Thomas Tanner  <tanner@ffii.org>
19228         * demo/foo.h: use LT_PARAMS instead of LTDL_PARAMS (this is not libltdl)
19229         * tests/build-relink.test: also check for hardcode_into_libs = yes,
19230           if set, we need to relink at install-time
19232 1999-06-29  Thomas Tanner  <tanner@ffii.org>
19234         * NEWS: mention -no-fast-install, rename dummy to force
19235         * doc/PLATFORMS: 1.3b passes all tests on GNU/Linux,
19236           FreeBSD (2.2.6 and 3.1)
19237         * doc/libtool.texi: it's possible to link libtool libraries
19238           using -L and -l, better documentation of uninstall and clean mode,
19239           rename dummy to force, documented -no-fast-install,
19240           AC_LIBLTDL_* must be called before AC_PROG_LIBTOOL,
19241           documented hardcode_into_libs and striplib/old_striplib,
19242         * ltconfig.in: search for strip program, added hardcode_into_libs
19243           and striplib/old_striplib variables, set strip commands for GNU strip,
19244           on FreeBSD >= 3.2 set hardcode_into_libs to yes,
19245           fast-install mode doesn't work if hardcode_into_libs = yes
19246         * ltmain.in: reimplemented hardcoding into libraries:
19247           new relink mode, preserve all libtool args, relink libraries
19248           when installing if necessary
19249           added -no-fast-install flag, removed unnecessary `dlname'
19250           initialization, use striplib/old_striplib for stripping libraries,
19251           dlname is always soname or in library_names so we don't need
19252           to handle different file names
19254 1999-06-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
19256         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to yes
19257         up to release 3.1, and to no from 3.2 on.
19258         Reported by Pavel Roskin <pavel_roskin@geocities.com>
19260 1999-06-29  Pavel Roskin <pavel_roskin@geocities.com>, Alexandre Oliva  <oliva@dcc.unicamp.br>
19262         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to
19263         yes; tested on 3.1-ELF by Pavel and on 2.2.6 by Alexandre.
19265 1999-06-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
19267         * ltconfig.in (linux-gnu*, deplibs_check_method): Use pass_all on
19268         alpha, x86 and sparc architectures by now, reverting to file_magic
19269         at least on ARM, where it breaks.
19271 1999-06-23  Thomas Tanner  <tanner@ffii.org>
19273         * NEWS: updated
19274         * README: added GNU Hurd to the supported platforms
19275         * doc/libtool.texi: document `-dlpreopen dummy'
19276           instead of `-dlopen dummy'
19277         * libltdl/ltdl.c (strchr): fixed typo (missing star)
19279 1999-06-23  Stephan Kulow <coolo@itm.mu-luebeck.de>
19281         * libltdl/ltdl.c (strrchr): fixed typo (missing star)
19282         * libltdl/ltdl.c (trim): use `const' to silence -Wwrite-strings
19284 1999-06-23  Olly Betts  <olly@muscat.co.uk>
19286         * ltmain.in (ltdll.c): Support for crosscompiling from linux to
19287         mingw32.
19289 1999-06-23  Gary V. Vaughan  <gary@gnu.org>
19291         * ltconfig.in (cygwin, export_symbols_cmds): If there is already
19292         an extracted and compiled ltdll.c, then don't delete, reextract
19293         and recompile.
19294         (cygwin, archive_expsym_cmds): Make sure the ltdll source has been
19295         extracted and compiled before referencing the object, since there
19296         are paths through the code which run archive_expsym_cmds without
19297         running export_symbols_cmds.
19299 1999-06-20  Gary V. Vaughan  <gary@gnu.org>
19301         * ltconfig.in:  moved the test for NM after the test for
19302         no_builtin_flag.
19304 1999-06-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
19306         * ltconfig.in: Use sed '$q' instead of sed "" for copying ltmain,
19307         just in case some sed does not support an empty command.
19309         * ltconfig.in (link_static_flag, ac_cv_prog_cc_static): Use the
19310         latter in the test.
19312 1999-06-18  Thomas Tanner  <tanner@ffii.org>
19314         * ltconfig.in (bsdi4, deplibs_check_method): use a less restrictive
19315           regex (reported by Chris P. Ross <cross@eng.us.uu.net>)
19316         * ltmain.in: support `-dlopen dummy', define lt_preloaded_symbols
19317           if dlself != no
19318         * doc/libtool.texi (Compile and Link mode): document it,
19319           documented the -Wc, -Wl flags, libtool does also support non C
19320           source code
19322 1999-06-18  Teun Burgers  <burgers@ecn.nl>
19324         * ltconfig.in: CR/LF fix for broken DJGPP bash
19325         * ltmain.in: CR/LF fix for DJGPP
19327 1999-06-18  Gary V. Vaughan  <gary@gnu.org>
19329         * ltmain.in (outputname): When generating the executable wrapper
19330         script, $outputname already has the $exeext suffix, so we needn't
19331         add it again.
19333 1999-06-16  Gary V. Vaughan  <gary@gnu.org>
19335         * libltdl/configure.in (ac_cv_lib_dl_dlopen): missing "x" in test
19336         comparison corrected.
19338         * libltdl/ltdl.c (sys_wll_open): libltdl expects this function to
19339         fail if it is unable to physically load the library.  Sadly,
19340         LoadLibrary will search the loaded libraries for a match and
19341         return one of them if the path search load fails.  Simulate a
19342         failure in this case for compatibility with the other APIs.
19343         Also, LoadLibrary takes the liberty of adding `.dll' to library
19344         names passed without an extension, we now add a trailing `.' to
19345         prevent this from happening.
19347 1999-06-15  Gary V. Vaughan  <gary@gnu.org>
19349         * libltdl/ltdl.c (sys_wll_close): Strangely enough, Microsoft have
19350         decided that LoadLibrary returns `0' for success, yet FreeLibrary
19351         returns `0' for failure!  The FreeLibrary call used to interpret
19352         `0' as success for both functions.
19354 1999-06-14 Thomas Tanner  <tanner@ffii.org>
19356         * ltconfig.in: use eval when setting have_dlfcn_h, reformatting
19358 1999-06-12 Thomas Tanner  <tanner@ffii.org>
19360         * ltmain.in: store old archives in deplibs and old_deplibs,
19361           retain the order of dependency libraries (even old archives),
19362           determining the absolute directory name didn't work due to a typo,
19363           add the library search paths of all dependency libraries when
19364           linking a library (fixes IRIX 5.2 bug)
19366 1999-06-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
19368         * ltconfig.in: Reverted June 6's patch for new GNU ld output, it
19369         is no longer needed, as ld reverted to the original format.
19370         * NEWS: Likewise.
19372         * ltconfig.in: When testing self-dlopening, test whether dlclose
19373         crashes.  On FreeBSD 3.1, it does.  :-(
19374         * libltdl/configure.in: Likewise.
19375         * NEWS: Note work-around.
19376         Reported by Pavel Roskin <pavel_roskin@geocities.com>
19378 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
19380         * ltconfig.in (exeext): autoconf's AC_EXEEXT uses "no" to indicate
19381         no extension, and we must do the same in order to share the cache
19382         value. Also we must ignore conftest.err which HPsUX (at least)
19383         fills with gratuitous warnings.
19384         (objext): for consistency, do the same as above.
19385         Reported by Pavel Roskin <pavel_roskin@geocities.com>
19387 1999-06-09  Pavel Roskin  <pavel_roskin@geocities.com>
19389         * ltconfig.in (exeext): Use quotes in the test, to prevent a
19390         failure in sh.test.
19392 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
19394         * ltconfig.in: Reordered tests to be more like configure.in's
19395         recommended order (programs first, then libraries, etc.).
19396         Performed a manual ``constant folding pass'' (eg: s/eval "test
19397         \"echo '$''{'lt_cv_dlopen'+set}'`\" != set/test
19398         "${lt_cv_dlopen+set}" != set/).
19399         s/test "${foo+set}" = "set"/test "X${foo+set}" = Xset/g
19401         * ltconfig.in (link_static_flag): Accept, in order of decreasing
19402         preference: the cached value; the default value for the current
19403         host.  Also test that the compiler accepts the flag, and cache
19404         that result too.
19406         * ltconfig.in (pic_flag): Accept, in order of decreasing
19407         preference:  the cached value; the default value for the current
19408         host.  Also test that the compiler accepts the flag, and cache
19409         that result too.
19411 1999-06-08  Gary V. Vaughan  <gary@gnu.org>
19413         * ltconfig.in (LN_S): Accept, in order of decreasing preference:
19414         the cached value; an environment setting; ``ln -s'' if it works;
19415         ``ln'' if ``ln -s'' doesn't appear to work.
19417         * ltconfig.in (objext): Accept, in order of decreasing preference:
19418         the cached value; the result of a test object compilation.
19420         * ltconfig.in (RANLIB): Accept, in order of decreasing preference:
19421         the cached value; an environment setting; the first file called
19422         ``ranlib'' in the user's path.
19424         * ltmain.in (exeext): Use $exeext when working out the names of
19425         programs (but not the wrapper script itself due to a stupidity in
19426         win32 which hardwires the .exe extension to the binary loader!).
19427         * ltconfig.in (exeext): Now that the wrapper script tries to move
19428         executables, we need to know whether they have an extension (ala
19429         AC_EXEEXT).  Since we can't rely on AC_EXEEXT having been called
19430         in configure.in, we must be able to check for ourselves, though we
19431         can look for a cached result incase AC_EXEEXT was called.
19433         * ltconfig.in (cygwin, pic_flag):  Force separate compilation of
19434         objects for dlls vs. objects for static archives.  Using a cpp
19435         macro also allows us to decide whether or not we need to use
19436         dllexport/import declarations.
19438         * ltconfig.in (cygwin, need_version): Set to no, otherwise module
19439         dll's end up with mighty long names!
19441 1999-06-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
19443         * ltconfig.in: Support new GNU ld --help output format.
19444         * NEWS:  Likewise.
19445         Reported by Gaël Quéri <gael@baoule.dyndns.org> and
19446         H.J. Lu <hjl@varesearch.com>.
19448 1999-06-05  Mark Kettenis  <kettenis@gnu.org>
19450         * ltconfig.in: Update support for the Hurd.  Make sure that the
19451         soname includes the major version number and create the right
19452         links.  Allow shared objects without the `lib' prefix and without
19453         version information.
19455 1999-06-02 Nick Rasmussen <nick@jive.org>
19457         * ltmain.in (link): use "$nonopt" as the compiler for
19458           compile/finalize_command
19460 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
19462         * TODO: Remove the short list of people interested in C++
19463         constructors; it's not meaningful, since there are so many more
19464         people requesting this feature, and we just can't maintain it
19465         accurate.
19467 1999-05-27  Pavel Roskin  <pavel_roskin@geocities.com>
19469         * ltconfig.in (GNU Hurd, deplibs_check_method): Use pass_all.
19471 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>, Olly Betts  <olly@muscat.co.uk>
19473         * ltmain.in: Expand convenience libraries when creating reloadable
19474         objects.
19475         * NEWS: Ditto.
19477 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
19479         * NEWS: Mention the two bugfixes below.
19481         * ltmain.in: Only create directory into which to extract
19482         convenience libraries when $convenience is not empty.  It would
19483         always be created on systems that did not support
19484         whole_archive_flag_spec.
19486         * ltconfig.in (export_symbols_cmds): Add $convenience.
19487         (cygwin, export_symbols_cmds): Ditto.
19488         * ltmain.in: Generate export symbol list before expanding
19489         convenience libraries, to avoid passing whole_archive_flag_spec to
19490         $NM.
19491         Reported by Godmar Back <gback@cs.utah.edu>
19493 1999-05-27  David Jones  <jones@mosaid.com>
19495         * libltdl/ltdl.c (LTDL_BIND_FLAGS): Remove BIND_VERBOSE, to avoid
19496         printing error messages.
19498 1999-05-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
19500         GNU libtool 1.3.2 was released.
19502 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
19504         * NEWS: List fixed problems.
19505         * doc/PLATFORMS: Tested for 1.3.2.
19507         * config.guess: Synch with GNU common.
19509         * ltmain.in: Revert to stripping .exe on all platforms.
19510         * TODO: Note about this problem.  Demo is fixed on win32.  Support
19511         `empty' convenience libraries.
19513         * ltconfig.in (solaris*, ld_shlibs): Do not enable shared
19514         libraries with GNU ld 2.8.*, it's broken.  Emit a warning
19515         suggesting an upgrade.
19516         Reported by Brian Ford <ford@vss.fsi.com> and Ronald Pijnacker
19517         <Ronald.Pijnacker@best.ms.philips.com>
19519 1999-05-25  Frank Ch. Eigler <fche@cygnus.com>
19521         * ltmain.in: file_magic check would not avoid cyclic links.
19523 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
19525         * depdemo/main.c, depdemo/l1/l1.c, depdemo/l2/l2.c: K&R-ize.
19526         * depdemo/l3/l3.c, depdemo/l4/l4.c: Likewise.
19528         * ltmain.in: Remove object files before writing to them, to avoid
19529         circular links.
19530         Reported by Ron O'Hara <rono@sentuny.com.au>
19532 1999-05-24 Thomas Tanner  <tanner@ffii.org>
19534         * NEWS: support for installing stripped libraries using GNU strip
19535         * ltconfig.in: set deplibs_check_method=pass_all on FreeBSD,
19536           Linux and Solaris since no one can reproduce the famous deplibs
19537           bug
19538         * ltmain.in: preserve $CC (reported by Tom Tromey),
19539           strip libraries using GNU strip if it's available and the
19540           -s flag was passed to "install"
19542 1999-05-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
19544         * doc/PLATFORMS: Release 1.3.1 passes on GNU Hurd/x86.
19545         Reported by Pavel Roskin <pavel_roskin@geocities.com>
19547 1999-05-23 Thomas Tanner  <tanner@ffii.org>
19549         * ltmain.in: strip off the .exe suffix only on *Win
19550           (Reported by Matthew D. Langston <langston@SLAC.Stanford.EDU>)
19552 1999-05-22 Thomas Tanner  <tanner@ffii.org>
19554         * NEWS: updated
19555         * TODO: -Wc, -Wl, implemented
19556         * AUTHORS: changed my email address
19557         * doc/libtool.texi: fix "wierd" typo :)
19558         * ltmain.in: linking against convenience libraries was broken,
19559           implemented the "-Wc," "-Wl," "-Xcompiler" "-Xlinker" flag for
19560           compiler and linker-specific flags,
19561           add -lc before we do the deplibs check
19562         * ltconfig.in: linkopts -> compiler_flags for $CC and linker_flags
19563           for $LD, link_all_deplibs=yes on IRIX
19565 1999-05-22  Gary V. Vaughan  <gary@gnu.org>
19567         * NEWS: insert todays date alongside 1.3.1 release.
19568         * Makefile.in: use gnu not gnits rules
19569         * config.guess: synch with gnu common & apply Takabatake-san's
19570         MIPS *000 patch.
19571         * config.sub: synch with gnu common.
19573 1999-05-22  Doug Evans  <devans@casey.cygnus.com>
19575         * libltdl/configure.in (dlerror): Fix typo in dlopen found in -ldl
19576         test.
19578 1999-05-21  Pavel Roskin  <pavel_roskin@geocities.com>
19580         * Makefile.am (EXTRA_DIST): Don't distribute instutils.
19581         (install-data-hook): use libltdl/Makefile.am's local-install files
19582         rule.
19583         * libltdl/Makefile.am (local-install-files):  New rule to install
19584         libltdl without creating links or mode 777 directories.
19585         * instutil/*: deleted.
19587 1999-05-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
19589         * doc/PLATFORMS: Updated to 1.3.1 for all platforms I've got.
19590         Added sparc-unknown-linux-gnu.
19592 1999-05-21  Gary V. Vaughan  <gary@gnu.org>
19594         * demo/foo.h: s/PARAMS/LTDL_PARAMS/g
19595         * libltdl/ltdl.h: ditto.
19596         * libltdl/ltdl.c: ditto.
19598         * demo/foo.h: s/__P/PARAMS/g
19599         * libltdl/ltdl.h: ditto.
19600         * libltdl/ltdl.c: ditto.
19601         Reported by Akim Demaille <demaille@inf.enst.fr>
19603 1999-05-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
19605         * NEWS: Updated docs.
19606         * TODO: Recommend libtool.m4 to be inserted in acinclude.m4. AIX
19607         4.3.2.0 no longer fails on static dlopening.  GNU DLD no longer
19608         has to support .la files, since libltdl already does.  Convenience
19609         libraries and reloadable objects should be tested in the
19610         testsuite.  We could support some amount of control on the soname
19611         of libraries.
19612         * doc/libtool.texi: Notes about convenience libraries and
19613         automake.  Documented INCLTDL.
19615 1999-05-20 Thomas Tanner  <tanner@gmx.de>
19617         * cdemo/main.c: "Welcome _to_ ..."
19618         * mdemo/main.c: ditto
19619         * libltdl/configure.in: support multiple dlopening mechanisms
19620           at once
19621         * libltdl/ltdl.c: prefix system dependent functions with "sys_"
19622           to avoid symbol conflicts (libdld didn't work)
19623         * libtool.m4 (AC_LIBLTDL_*): set INCLTDL to the path of ltdl.h
19624         * ltconfig.in: check for dlopen with -ldl first
19626 1999-05-19  Gary V. Vaughan  <gary@gnu.org>
19628         * NEWS: Added 1.3.1 news items.
19629         * doc/PLATFORMS: updated the boxes I have access to, to 1.3.1
19630         in preparation for the next release.
19632 1999-05-18  Gary V. Vaughan  <gary@gnu.org>
19634         * ltconfig.in (cygwin*, whole_archive_flag_spec): dlltool chokes
19635         on this, so leave it unset in this case so that the ltmain code
19636         knows it has to unpack convenience archives by itself.
19638 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
19640         * ltmain.in: Do not exit when an unknown library name is passed
19641         passed in, simply warn and continue since some compilers require
19642         -LANG:* like options to work.
19643         Reported by Adam C. Powell, IV <adam.powell@nist.gov>
19645 1999-05-17  Jiro Takabatake  <jiro@din.or.jp>
19647         * ltconfig.in: port to NEC UX/4800.
19648         * NEWS: updated.
19650 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
19652         * ltconfig.in (beos*, deplibs_check_method): set to pass_all.  BeOS
19653         is PIC by default.
19654         Reported by "Shawn T . Amundson" <amundson@gimp.org>
19656         * libltdl/configure.in: Fix test failures on AIX 4.3.2 by checking
19657         for dlopen *with* -ldl first.
19658         Reported by Greg Wooledge <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
19660         * demo/foo.h: Don't set any declspecs until we have full dll
19661         support.
19663 1999-05-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
19665         * ltconfig.in (solaris2.6, whole_archive_flag_spec): Do not use
19666         -Wl for allextract.
19668 1999-05-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
19670         * instutil/chmod: New script to avoid chmod'ing files while
19671         installing libltdl's sources.
19672         * instutil/ln: New script to avoid hard-linking libltdl's sources
19673         in the install tree.
19674         * Makefile.am (EXTRA_DIST): Dist them.
19675         (instal-data-hook): Add srcdir/instutil to the beginning of the
19676         PATH before installing libltdl's sources.
19678 1999-05-09  Gary V. Vaughan  <gary@gnu.org>
19680         * TODO: updated.
19682 1999-05-06  Gary V. Vaughan  <gary@gnu.org>
19684         * Makefile.am (install-data-hook):  make sure the install directory
19685         is not left world writable.
19686         Reported by Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
19688 1999-04-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
19690         * libtool.m4: Use ifelse instead of if.
19691         Reported by David Mazieres <dm@amsterdam.lcs.mit.edu>
19693 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
19695         GNU Libtool 1.3 was released.
19697         * NEWS: Summarize news from 1.2 to 1.3.
19699         * ltmain.in: Save exit status of link_command before removing
19700         symbol table object file.
19702 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
19704         * doc/PLATFORMS: updated my hpux-10.20 and cygwin box entries.
19706 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
19708         * NEWS: Improved support for DU and IRIX too.
19710         * config.sub, config.guess: Updated from GNU common.
19712         * mdemo/configure.in: Move AC_LIBLTDL_CONVENIENCE before
19713         AM_PROG_LIBTOOL, as suggested by autoconf.
19715         * doc/libtool.texi (Distributing libltdl): Document that -static
19716         may cause the same problems on libltdl as -all-static.
19717         * TODO: We might want to fix this in the future.
19719         * doc/libtool.texi: Clear up overfull hbox.
19721         * libltdl/Makefile.am (ltdl.lo): Add dependencies.
19722         * libltdl/configure.in: Clean up some duplicate defines.  Enable
19723         support for multiple dlopening mechanisms.
19724         * libltdl/acconfig.h: New file.  Add #undefs for defines that
19725         would be duplicated.
19727 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
19729         * libtool.m4 (cygwin*|mingw*, DLLTOOL, OBJDUMP, AS): Only expand the
19730         code that makes these configure time checks on hosts that need the
19731         tools *and* if the AC_LIBTOOL_WIN32_DLL macro is used.
19733 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
19735         * ltmain.in (nlist, SYMFILE): Use outputname instead of output for
19736         names within output_objdir.
19738 1999-04-28  Alexandre Oliva  <oliva@dcc.unicamp.br>
19740         * libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC,
19741         AC_ENABLE_FAST_INSTALL): Do not call AC_BEFORE here, they're
19742         AC_REQUIREd by AC_LIBTOOL_SETUP.
19743         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
19744         Call AC_BEFORE here, and now with two arguments, since these do
19745         change the default.
19746         (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE): Fix calls to
19747         AC_BEFORE.
19749 1999-04-28  Gary V. Vaughan  <gary@gnu.org>
19751         * libtool.m4 (ltconfig_enable_win32_dll): pass --enable-win32-dll to
19752         ltconfig if this is set.
19753         (AC_LIBTOOL_WIN32_DLL): New macro required for libtool to attempt
19754         a dll build on win32 hosts.
19755         * ltconfig.in (--enable-win32-dll): new flag for the cli.
19756         (cygwin*|mingw*|os2*, ltconfig_enable_win32_dll): if this is not set
19757         to yes, then do not attempt to build shared libraries.
19758         * doc/libtool.texi: document AC_LIBTOOL_WIN32_DLL.
19759         * NEWS: noted new macro.
19761 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
19763         * libtool.m4 (AC_LIBTOOL_DLOPEN, AC_ENABLE_SHARED,
19764         AC_ENABLE_STATIC, AC_ENABLE_FAST_INSTALL, AC_LIBLTDL_CONVENIENCE,
19765         AC_LIBLTDL_INSTALLABLE): Warn if they appear after
19766         AC_PROG_LIBTOOL.  AC_LIBTOOL_SETUP, actually.
19767         (AC_LIBTOOL_SETUP): Check whether DLOPEN support is to be enabled
19768         at autoconf time, not configure time.  Simplify code and
19769         improve (?) help message about --disable-libtool-lock.
19771 1999-04-27 Thomas Tanner  <tanner@gmx.de>
19773         * NEWS: new clean mode
19774         * THANKS: added Ossama Othman
19775         * doc/libtool.texi: documented the new `clean' mode
19776         * ltconfig.in: set need_version=no on OSF (reported by
19777           Marcus Sundberg <mackan@stacken.kth.se>)
19778         * ltmain.in: allow absolute non-existant -L paths,
19779           always use output_objdir instead of objdir for temporary files,
19780           delete generated temporary symbol lists,
19781           don't add .la twice in the pseudo-library header,
19782           implemented and documented clean mode (deletes libraries,
19783           programs and object files and the files associated with them),
19784           if build_libtool_libs=no and no static library is available,
19785           try to link the program against the shared library,
19786           don't add a statically linked library to the dependency_libs
19787         * ltmain.in (help uninstall): added a missing backslash
19788           after echo (reported by Ossama Othman)
19790 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
19792         * ltmain.in (old_archive_cmds): Iterate on oldobjs to find out
19793         which links to object files we must create.  Do not test for empty
19794         pic_flag to create such links.  Use objext when searching for
19795         object files extracted from convenience library.
19797         * ltconfig.in (compiler_c_o): Make sure the compiler does not
19798         create temporaries in the current directory when output should go
19799         elsewhere.  We must perform locking if it does.
19801 1999-04-27  Gary V. Vaughan  <gary@gnu.org>
19803         * ltmain.in (old_archive_cmds): Ensure that there are always .o
19804         objects available before running old_archive_cmds.
19806 1999-04-26  Erez Zadok  <ezk@cs.columbia.edu>
19808         * doc/PLATFORMS: Updates for netbsd 1.3.3 and 1.4.
19810 1999-04-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
19812         * ltconfig.in (aix4.[01], always_export_symbols): The case pattern
19813         would never match; fixed.
19814         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
19816 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
19818         * libtool.m4 (OBJDUMP): Pass it to ltconfig.
19819         * configure.in: AC_SUBST DLLTOOL, OBJDUMP and AS.
19820         * Makefile.am (libtool, clibtool): Pass them to ltconfig.
19822 1999-04-25  Frank Ch. Eigler  <fche@cygnus.com>
19824         * libtool.m4 (cygwin*): Look for target objdump tool.
19825         * ltconfig.in (cygwin*, file_magic_cmd): Use autoconf-located target
19826         objdump tool.  Track OBJDUMP like DLLTOOL and AS.
19828         * ltconfig.in (cygwin*, deplibs_check_method): Accept
19829         "architecture: i386" as optional suffix, for it is printed on a
19830         separate line sometimes.
19832         * ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C".
19834         * ltmain.in (deplibs_check_method=file_magic): Redirect stderr to
19835         /dev/null, to suppress error messages from target objdump.
19837 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
19839         * ltconfig.in (irix*, soname_spec, library_names_spec): Missing
19840         dots before $versuffix and $major.
19842         * ltconfig.in (solaris*, whole_archive_flag_spec): Use -z
19843         allextract/defaultextract from Solaris 2.6 on.
19844         Reported by Brian Ford <ford@vss.fsi.com>
19846         * ltconfig.in (beos*, allow_undefined_flag): Do not build shared
19847         libraries with undefined symbols.
19849         * ltconfig.in (aix4*, allow_undefined_flag): Set to -berok.
19850         (aix4*, shared_flag): Set to -shared or ${wl}-bM:SRE.
19851         (aix4*, archive_cmds): Use -bexpall.
19852         (aix4*, archive_cmds, archive_expsym_cmds): Use shared_flag and
19853         allow_undefined_flag.
19854         (aix4*, always_export_symbols): Set to yes up to AIX 4.1.*,
19855         because -bexpall is supported from 4.2 on.
19856         Reported by Greg Wooledge
19857         <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
19859         * ltconfig.in (hpux*, hardcode_minus_L): Set to yes.
19860         (hpux*, hardcode_libdir_flag_spec): Do not use +s by default.
19861         (hpux*, shlibpath_overrides_runpath): Set to no.
19863         * ltconfig.in (irix*, osf*, archive_cmds): Write so_locations
19864         within objdir.
19866         * ltconfig.in (irix*, soname_spec): Append $major.
19867         (irix*, library_names_spec): Add new soname.
19868         Reported by David Kaelbling <drk@sgi.com>
19870         * ltconfig.in (irix*, sys_lib_dlsearch_path_spec): /usr/local/lib
19871         is not searched by default.  /usr/lib is searched before /lib.
19872         * ltconfig.in (irix*, sys_lib_search_path_spec): /usr/lib is
19873         searched before /lib.
19875         * ltconfig.in (irix5*, need_lib_prefix, need_version): Set to no,
19876         by unifying with irix6*.
19878         * ltconfig.in (irix*, osf*, deplibs_check_method): Use pass_all.
19880         * ltconfig.in (old_LDFLAGS, old_LIBS): Save and write to comments
19881         in output file.
19883         * ltmain.in (prefer_static_libs): New variable, set to no by
19884         default, but set to yes by -static and -all-static.  Used instead
19885         of build_libtool_libs to decide whether to use a shared or static
19886         version of a library, when both versions are available.
19888 1999-04-25  Boyd Lynn Gerber  <gerberb@zenez.com>
19890         * ltconfig.in (sco3.2v5*): Use LD_RUN_PATH for hard-coding.
19892 1999-04-25  Pavel Roskin  <pavel_roskin@geocities.com>
19894         * Makefile.am (uninstall-local): Remove installed libltdl tree.
19896 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
19898         * demo/Makefile.am (hc-direct, hc-libflag, hc-libpath, hc-minusl):
19899         Added CFLAGS to link commands; SCO OSR needs it for -belf.
19901         * TODO: -Wl and -Wc options.
19903 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
19905         * libltdl/ltdl.c: Remove trivial warnings.
19907 1999-04-22  Frank Ch. Eigler  <fche@cygnus.com>
19909         * ltconfig.in: Correct sed expression that extracts symbols
19910         from cygwin def files.  Ignore demangled C++ names, if any.
19912 1999-04-12  John David Anglin  <dave.anglin@nrc.ca>
19914         * libltdl/ltdl.c (shl_close): shl_t was correct here...
19915         (shl_sym): ... but we have to pass the handle by reference here.
19917 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
19919         * doc/libtool.texi (Invoking ltconfig): Document environment
19920         variables used.
19922         * doc/libtool.texi (Invoking ltconfig): Document --cache-file.
19924         * doc/libtool.texi (Invoking ltconfig): Document
19925         --disable-fast-install, --enable-dlopen, --with-gnu-ld and
19926         --disable-lock.
19928 1999-04-11 Thomas Tanner  <tanner@gmx.de>
19930         * libltdl/configure.in: check for shl_load in libdld
19931         * libltdl/ltdl.c (shl_close, shl_sym): use (shl_t *) instead of shl_t
19932         * ltconfig.in (check for gcc): removed a bogus line,
19933           check for shl_load in libdld
19934         * ltmain.in: added a warning to the header of the .la file
19935           to warn users against deleting the file,
19936           link shared against static libraries if
19937           deplibs_check_method == pass_all
19939 1999-04-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
19941         * libtool.m4 (AC_PROG_LD, AC_PROG_NM): When looking for programs,
19942         try $ac_exeext too, so that they're found on DJGPP/MS-DOS.
19943         * ltconfig.in: Likewise.
19944         Reported by Robert S. Maier <rsm@math.arizona.edu>
19946         * ltconfig.in (Usage): Removed --enable-dlopen-self.
19947         Reported by Pavel Roskin <pavel_roskin@geocities.com>
19949         * ltconfig.in: Moved sysv4 before sysv4.*.
19950         (symcode): Brian's overrider is specific to sysv4, not sysv4*.
19952 1999-04-09 Thomas Tanner  <tanner@gmx.de>
19954         * NEWS, README: Motorola System V 4 support
19955         * doc/PLATFORMS: added mk88-motorola-sysv4
19956         * ltconfig.in: installed patch from Brian Ford <ford@vss.fsi.com>
19957           to support mk88-motorola-sysv4
19959         * doc/libtool.texi: some cleanups in the libltdl documentation
19961 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
19963         * ltconfig.in (--fallback-echo): Do not put an inline document and
19964         an exec in the same if construct; otherwise the inline document
19965         may not be removed.
19966         * ltmain.in (--fallback-echo): Likewise.
19967         Reported by John David Anglin <dave.anglin@nrc.ca>
19969         * dryrun.test: It would still fail at random times, because `cp'
19970         and `mv' are not guaranteed to preserve the timestamps of the
19971         installed files.  Instead of preserving them, just remove them
19972         before the dry uninstall test.  Redirect dry-run output to stderr,
19973         so that it can be easily separated from the regular output.
19975 1999-04-07 Thomas Tanner  <tanner@gmx.de>
19977         * NEWS: support for moved libraries
19978         * libtool.m4: another DJGPP fix
19980 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
19982         * doc/PLATFORMS: Updated to 1.3 for all platforms I've got.  I'll
19983         make sure 1.3 won't be released unless it passes all tests on
19984         those platforms.
19986         * doc/libtool.texi (Compile mode): Document potential problem and
19987         work-around for `-c -o dir/foo.lo'.
19989         * tests/dryrun.test: The constant modifications of libtool would
19990         cause main.o to be updated at the wrong time; the new approach is
19991         to modify the libtool script so that it enables dry run depending
19992         on whether an environment variable is set or not.  I've also moved
19993         `after' and `before' to a directory deep within $objdir, instead
19994         of creating it in ../tests.
19995         * tests/Makefile.am (CLEANFILES): Removed.
19997 1999-04-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
19999         * tests/dryrun.test: We cannot rely on setting LIBTOOL, because
20000         automake may use sub-makes, and the setting will not be propagated
20001         to them on some makes.  Instead, create a dry version of libtool
20002         and switch between it and the original one before and after dry
20003         runs.
20004         * tests/Makefile.am (CLEANFILES): Added libtool-*, created by
20005         dryrun.test.
20007         * tests/dryrun.test: Use cmp instead of diff.
20008         (before, after): Create them within ../tests.
20009         (libtool): Set to `/bin/sh ./libtool' by default, but use LIBTOOL,
20010         SHELL and top_builddir from the environment if available.  For dry
20011         runs, use "$libtool -n".
20012         * tests/Makefile.am (CLEANFILES): Added before and after.
20013         * ltmain.in: Do not create links to object files in dry runs.
20015 1999-04-06 Thomas Tanner  <tanner@gmx.de>
20017         * ltmain.in: added a missing line of the ILD patch
20019         * NEWS: improved DJGPP support
20020         * doc/libtool.texi: removed hardcode_into_libs documentation
20021         * libtool.m4: some DJGPP fixes
20022         * ltconfig.in: ditto, reverted one of my previous patches: we need
20023           to check for NM, removed the hardcode_into_libs support since
20024           no platform seems to support it
20025         * ltmain.in: some DJGPP fixes, removed the hardcode_into_libs support
20027 1999-04-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
20029         * ltconfig.in (netbsd*, GNU ld): Support a.out shared libraries
20031         * Makefile.am (CVS): allow command-line overriding of cvs
20033         * ltconfig.in (exclude_expsyms): Exclude _GLOBAL_OFFSET_TABLE_ by
20034         default, as most a.out platforms use it, and end up in trouble if
20035         we preload it, so it's safer to rule it out by default, and
20036         special case its removal from exclude_expsyms if someone ever
20037         complains.
20039 1999-04-05 Thomas Tanner  <tanner@gmx.de>
20041         * doc/libtool.texi: reorder tests to reflect execution order,
20042           documented dryrun.test and depdemo*
20043         * ltmain.in (lt_preloaded_symbols): dry-run mode bugfix
20044         * tests/dryrun.test: new test to check whether the dry-run
20045           mode works properly
20047         * demo/run.test: removed the unnecessary test
20048         * demo/Makefile.am: ditto
20049         * ltmain.in: set the DLL search path on cygwin,mingw and os2
20051 1999-04-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
20053         * ltconfig.in (sunos4*, GNU ld): -Bstatic is not enough for
20054         deplibs.test to work with GNU ld; -Bshareable is needed here.
20056         * ltconfig.in (ld_shlibs, amigaos*): Disable shared libs with
20057         native ld too.
20059         * ltconfig.in (sunos4*, GNU ld): Reordered.
20061         * ltconfig.in (archive_cmds, sunos4*): Revert to -Bstatic; the
20062         native linker doesn't even support -Bshareable, only GNU ld does.
20063         Do not use `gcc -shared' in archive_cmds, it breaks deplibs.test.
20065         * ltconfig.in: if ld_shlibs=no, set can_build_shared=no too,
20066         otherwise it will just be disregarded.  This would cause
20067         netbsd/m68k with GNU ld a.out, and certainly many other platforms,
20068         to incorrectly believe that shared libraries were supported, while
20069         archive_cmds was empty, causing shared libraries not to be created
20071 1999-04-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
20073         * NEWS: improved support for AIX and HP/UX
20075 1999-04-03 Thomas Tanner  <tanner@gmx.de>
20077         * NEWS: updated
20078         * libtool.m4: check for main in libm instead of cos
20079         * ltmain.in: cosmetic fixes, don't try to link libraries only once
20080           (although it's not necessary on many platforms and looks ugly...),
20082 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
20084         * ltmain.in (convenience): fixed race condition when more than one
20085         library was linked with the same convenience library by
20086         uniquifying the extract directory.  It is now named after the new
20087         library *and* the old one, and lives in the objdir of the new one.
20089         * ltmain.in (-L*): do not abort just because a directory specified
20090         with -L does not exist; just warn and discard it
20092         * depdemo/l1/Makefile.am (AUTOMAKE_OPTIONS): no-dependencies
20093         * depdemo/l2/Makefile.am (AUTOMAKE_OPTIONS): ditto
20094         * depdemo/l3/Makefile.am (AUTOMAKE_OPTIONS): ditto
20095         * depdemo/l4/Makefile.am (AUTOMAKE_OPTIONS): ditto
20097         * ltconfig.in (archive_cmds, sunos4*): where we used -Bstatic, we
20098         should have been using -Bshareable
20100         * demo/Makefile.am (CLEANFILES): clean EXTRA_* from deplibs-check
20102         * libtool.m4 (LDFLAGS, LIBS): pass them to ltconfig, for the tests
20103         that involve linking
20104         * Makefile.am (LDFLAGS, LIBS, libtool, clibtool): ditto
20105         * tests/Makefile.am (CFLAGS, CPPFLAGS, LDFLAGS, LIBS): set
20106         (LDFLAGS, LIBS, TESTS_ENVIRONMENT): pass them down
20108 1999-04-02  Erez Zadok  <ezk@cs.columbia.edu>
20110         * doc/PLATFORMS: 1.2f ok on various versions of hpux cc
20112 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
20114         * ltconfig.in (link_all_deplibs): set to unknown by default
20115         * ltmain.in: test != no, not = yes
20116         * doc/libtool.texi: document unknown
20118 1999-04-01 Thomas Tanner  <tanner@gmx.de>
20120         * doc/libtool.texi: documented deplibs.test
20122         * demo/Makefile.am: moved testsuite specific declarations to the end,
20123           the deplibs check is now optional
20124         * libltdl/configure.in: read libtool --config only once,
20125           merged AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE from libtool.m4
20126         * libtool.m4: AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE were not
20127           used, lt_dlopen and silent may be empty, AC_SYS_LIBTOOL_CYGWIN
20128           no longer necessary
20129         * ltconfig.in: NM is already checked in libtool.m4,
20130         * ltmain.in: always link all static dependency_libs
20131         * tests/Makefile.am: added deplibs.test
20132         * tests/demo-exec.test, demo-inst.test: removed hell0
20133         * tests/deplibs.test: new test to test the deplibs_check_method
20135 1999-03-31 Thomas Tanner  <tanner@gmx.de>
20137         * ltmain.in: always link a library before its dependency libs
20138         * mdemo/Makefile.am: test -export-symbols-regex
20140 1999-03-30 Thomas Tanner  <tanner@gmx.de>
20142         * doc/libtool.texi: fixed a typo
20143         * libtoolize.in: add the libtool scripts to libltdl.tar.gz
20144         * libtool.m4: don't AC_SUBST(USE_SYMBOL_UNDERSCORE),
20145           AC_CHECK_LIBM sets LIBM, AC_LIBLTDL_INSTALLABLE doesn't work
20146           when libltdl is already installed
20147         * *demo/Makefile.am: use LIBM
20148         * *demo/configure.in: AC_SUBST LIBM
20149         * libltdl/configure.in: use ac_cv_sys_symbol_underscore instead of
20150           USE_SYMBOL_UNDERSCORE
20151         * ltconfig.in: added link_all_deplibs variable
20152         * doc/libtool.texi: document it
20153         * ltmain.in: always search for libname.la - don't eval libname_spec,
20154           when linking libraries against static ones just print a warning
20155           and add them to dependency_libs, add -lc before deplibs,
20156           always link all dependencies of a static library or if
20157           link_all_deplibs is yes, hardcode library paths if
20158           hardcode_into_libs is no, don't link against dependency_libs
20159           that already are deplibs
20161 1999-03-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
20163         * ltconfig.in (aix4*, collect2name): make sure collect2 exists
20164         before running string on it, to avoid errors on old gccs
20165         Reported by Erez Zadok <ezk@cs.columbia.edu>
20167         * ltconfig.in (aix4*, hardcode_libdir_flag_spec): unless we're
20168         using gcc with old collect2, use -b libpath to hardcode the
20169         library search path
20171         * ltmain.in, ltconfig.in: reverted most of the quoting changes
20172         from 1999-03-25; Gary's delay_variable_subst patch from 1999-02-19
20173         obviates it.  Keep only quoting of $PATH, for uniformity with
20174         other systems that already did it
20176 1999-03-29  Gary V. Vaughan  <gary@gnu.org>
20178         * libltdl/ltdl.c (lt_dladdsearchdir): Forgot to mallocate the
20179         extra byte of memory for the teminating NUL, and forgot to
20180         strcpy the original path in to the new memory before appending
20181         the new path compononent.
20183 1999-03-27 Thomas Tanner  <tanner@gmx.de>
20185         * NEWS: updated
20186         * README: updated (BeOS support, no longer shared libraries
20187           support for AmigaOS), cleanups, we have now two mailing lists
20188         * REAMDE-alpha: autogen -> bootstrap, we have now two mailing lists
20189         * THANKS: added Xavier Pianet
20190         * doc/PLATFORMS: BeOS works
20191         * doc/libtool.texi: we have now to two mailing lists,
20192           updated -dlopen self documentation, documented libltdl's license,
20193           put each author in a separate line,
20194           inter-library dependencies on uninstalled libtool libraries are
20195           now supported, cleanups and minor corrections
20196         * libltdl/COPYING.LIB: new file
20197         * libltdl/ltdl.[ch]: added special exception to the LGPL license
20198         * libtool.spec: removed, it was outdated
20199         * Makefile.am: removed libtool.spec
20200         * ltmain.in: use TMPDIR when possible, create a subdirectory
20201           in the temporary directory, added -export-symbols-regex to the help,
20203 1999-03-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
20205         * demo/Makefile.am: create a static library, link two libtool
20206         archives with it, then link the program hell0 with both
20207         * demo/hell1.c, demo/hell2.c: dummy files used to create the
20208         libtool archives without introducing symbol conflicts
20209         * tests/demo-exec.test, tests/demo-inst.test: run the new program
20210         * ltconfig.in (irix5*, irix6*, deplibs_check_method): pass_all
20212         * ltmain.in ($PATH): instead of modifying the PATH, better prevent
20213         its expansion the first time *_cmds variables are eval'ed.  Modify
20214         $show within loops that eval them so as to expand variables
20215         * ltconfig.in (*_cmds): quote $ so that they're not expanded by
20216         the first eval
20218 1999-03-25  Gary V. Vaughan  <gary@gnu.org>
20220         * ltmain.in ($PATH):  Expand any tildes in the users path to the
20221         contents of $HOME to avoid problems with *_cmds splitting and
20222         evaluation.
20224 1999-03-24 Thomas Tanner  <tanner@gmx.de>
20226         * TODO: support -dlopen for libraries
20227         * doc/PLATFORMS: Erez Zadok reported that libtool works on bsdi 4.0.1
20228         * doc/libtool.texi (libltdl): libltdl supports BeOS
20229         * libltdl/ltdl.c: shlib_ext was declared even if LTDL_SHLIB_EXT
20230           didn't exist, partially reverted my previous patch: BeOS will
20231           automatically search in ADDON_PATH
20232         * ltmain.in: don't allow relative run-paths, fixed a typo in a warning,
20233           ignore -dlopen self for libraries and objects,
20234           only accept -L paths that exist, minor cleanups,
20235           bugfix: add -lc for normal libraries, not convenicence libraries
20236           removed offensive warnings/comments
20238 1999-03-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
20240         * ltconfig.in (ld_shlibs, amigaos*): disable shared libraries
20242 1999-03-23  Gary V. Vaughan  <gary@gnu.org>
20244         * libltdl/configure.in: the sed expression for finding the shared
20245         library extension used to think the . in [.] for the cygwin
20246         shared_library_names_spec was the start of the extension!!  We now
20247         remove anything in square brackets (assuming that the square
20248         brackets delimit a sed or expr expression which is not part of the
20249         extension) before looking for the extension.
20251         * TODO (cygwin):  food for thought re: mutually dependant dlls.
20253 1999-03-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
20255         * tests/build-relink.test: if we relink and have hardcode_direct,
20256         removing an uninstalled library breaks an uninstalled program
20258         * doc/libtool.texi: documented convenience libraries
20259         * TODO: removed entry about it
20261         * tests/*-unst.test: if directory is not configured, skip it
20262         * tests/demo.test, tests/mdemo.test: unused, removed
20263         * tests/depdemo.test: ditto
20265 1999-03-20 Thomas Tanner  <tanner@gmx.de>
20267         * doc/libtool.texi (link mode): documentation for -module updated
20268         * ltconfig.in: fast-install mode doesn't work for
20269           hardcode_into_libs=yes
20270         * ltmain.in: bugfix: "-dlopen self [-all]-static" wouldn't use
20271           dlopen_self_static, automatically enable -export-dynamic when
20272           using "-dlopen self", always make run-paths absolute,
20273           ignore -lc only on platforms that don't have such a library,
20274           cleanups in the ILD code, find even installed libtool libraries
20275           that were moved, before generating the DLL-import library we need
20276           to set libname, improved hardcoding of shlibpath for libraries,
20277           don't generate an installable pseudo-library for convenience
20278           libraries, bugfix: export_symbols would be removed immediately
20279           before it is used
20281 1999-03-19 Thomas Tanner  <tanner@gmx.de>
20283         * use the same header in all configure.in's and Makefile.am's
20284         * NEWS: improved support for BeOS and Cygwin
20285         * TODO: ILD branch was merged, all internal variables and macros
20286           are now documented
20287         * demo/Makefile.am: use $(LIBS) instead of -lm
20288         * doc/libtool.texi: documented new variable hardcode_into_libs
20289           and thread_safe_flag_spec, renamed all AM_ENABLE/DISABLE_* macros
20290           to AC_*, documented AC_DISABLE_FAST_INSTALL and AC_LIBTOOL_DLOPEN
20291         * libltdl/ltdl.c: added two new error messages (cannot_open_error,
20292           cannot_close_error), use them where approriate,
20293           BeOS support (thanks to Xavier Pianet), on BeOS search modules
20294           additionally in ADDON_PATH
20295         * libtool.m4: rewrote AC_CHECK_LIBM: BeOS and Cygwin don't have
20296           libm and *-ncr-sysv4.3* requires libmw
20297         * ltconfig.in: don't check for LoadLibrary, hardcode dlopen
20298           configuration for BeOS and Cygwin
20299         * ltmain.in: fix sourcing of .la files on Solaris
20300           (patch by Raja R Harinath)
20302 1999-03-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
20304         * ltconfig.in (sunos4*, with_gnu_ld, hardcode_minus_L): remove, we
20305         have -rpath
20306         (aix4*, without_gnu_ld, hardcode_shlibpath_var): unsupported is
20307         default
20308         (hpux9*, hpux10*, hpux11*, archive_cmds): drop +s, unneeded here
20309         (hpux9*, hpux10*, hpux11*, hardcode_libdir_flag_spec): add +s
20310         before +b
20311         (hpux9*, hpux10*, hpux11*, shlibpath_overrides_runpath): since +s
20312         appears before +b, set it to yes
20313         (hardcode_shlibpath_var, hardcode_action): do not use
20314         shlibpath_var to specify the compile-time search path; it loses,
20315         and we may end up linking with pre-installed older versions of
20316         libraries instead of yet-to-be-installed ones
20317         (*, hardcode_direct, hardcode_minus_L): remove entries that set
20318         them to no, that is default
20320         * demo/Makefile.am (hc-direct, hc-libpath, hc-minusL): link with
20321         $$hardcode_libdir_flag_spec, if available, with libdir=$(libdir),
20322         to make sure the hardcode_* variables will produce the expected
20323         results even in the presence of a hardcoding flag; depend on
20324         libhello.la having been installed already
20325         (hc-libflag): link with the installed library, but try to
20326         hard-code the uninstalled one
20327         * doc/libtool.texi: document the changes
20329         * tests/*.test: when a test fails, skip tests that depend on it.
20330         If a certain configuration is not supported, skip all its tests.
20332         * doc/libtool.texi: reorder tests to reflect execution order
20334         * tests/noinst-link.test: new test
20335         * tests/Makefile.am (TESTS): added noinst-link.test
20336         * doc/libtool.texi: document it
20338 1999-03-19  Gary V. Vaughan  <gary@gnu.org>
20340         * ltmain.in (dependency_libs): There is no reason to infer that
20341         the pseudo library is invalid if dependency_libs='' at
20342         install-time, or else libltdl/libltdl.la is invalid!!
20344 1999-03-18  Thomas Tanner  <tanner@gmx.de>
20346         * merged my inter-library dependencies code from the ILD branch:
20347         * NEWS: inter-library dependencies are now supported
20348         * configure.in: add the depdemo subdirectory
20349         * depdemo/*: new demo to demonstrate inter-library dependencies
20350         * tests/depdemo*: new tests for depdemo
20351         * ltconfig.in: added hardcode_into_libs (whether library paths
20352           should be hardcoded into the libraries),
20353           it currently defaults to 'no'
20354         * ltmain.in: new internal 'relink' mode to relink libraries
20355           on platforms with hardcode_into_libs=yes, save command line
20356           arguments in libtool_args, accept relative -L directories,
20357           ignore -lm on BeOS and Cygwin, always ignore -lc,
20358           handle -l, -L and .la arguments later, always make the library
20359           installation directory (-rpath) absolute, in relink mode don't
20360           delete the not-relinked library and exit immediately after relinking,
20361           try to find already-installed libtool libraries that were specified
20362           using -l, support hardcoding of library paths into libraries too,
20363           export shlibpath before linking libraries, and a lot of other
20364           big changes that I don't want to describe here... please read
20365           the source.
20367         * merged Gary's Win32 code from the ILD branch:
20368         * NEWS: Win32 DLLs are now supported
20369         * TODO: removed .a library namespace clash for win32.  It is
20370           now resolved.
20371         * ltconfig.in (cygwin, library_names_spec):  removed $libname.a.
20372           Creating a dll with libtool no longer creates an import library.
20373         * ltconfig.in (extract_expsyms_cmds): Create $objdir if it does
20374           not exist -- i.e. we need to generate import an import library
20375           in a directory which has no libs of its own.
20376         * doc/libtool.texi (old_archive_from_expsyms_cmds,
20377           extract_expsyms_cmds): documented these new variables.
20378         * ltconfig.in (extract_expsyms_cmds): New variable.  Commands to
20379           extract the exported symbol list from a dll.
20380           (old_archive_from_expsyms_cmds): New variable.  Commands to build
20381           an old archive from the extracted expsyms list.
20382         * ltmain.in: run the cmds in extract_expsyms_cmds and
20383           old_archive_from_expsyms_cmds as necessary.
20384         * ltconfig.in (cygwin, old_archive_from_new_cmds): no longer
20385           required.
20386         * ltconfig.in (cygwin, shlibpath_overrides_runpath): I'm not even
20387           sure whether win32 honours the runpath at all when searching for
20388           a dll to load!  Anyway, when set to yes this prevents a gratuitous
20389           warning.
20390         * ltmain.in (deplib): The cygwin environment doesn't actually have
20391           -lm, and although the linker fakes having one, specifiying it to
20392           libtool will break ILD, so we ignore it when generating
20393           dependencies.
20395 1999-03-17  Gary V. Vaughan  <gary@gnu.org>
20397         * doc/PLATFORMS: Thanks to Alexandres changes below, both my
20398         hp boxes pass the entire test suite.
20400 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
20402         * ltconfig.in (hpux*, hardcode_minus_L): should be no, we have +b
20403         (hpux*, hardcode_libdir_separator): set to colon
20405 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
20407         * doc/PLATFORMS: egcs is gcc; updates from Erez Zadok
20409 1999-03-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
20411         * ltmain.in (deplibs, beos*): don't append -lc
20412         Reported by Xavier Pianet <xavier@xingo.com>
20414         * tests/build-relink.test (hardcode_action): when set to relink,
20415         skip the test with lt-hell
20417         * Makefile.am (EXTRA_DIST): add mkstamp
20418         Reported by Xavier Pianet <xavier@xingo.com>
20420         * Makefile.am (EXTRA_DIST): add ChangeLog.0
20422 1999-03-16  Thomas Tanner  <tanner@gmx.de>
20424         * doc/libtool.texi: some minor corrections to the "-dlopen self"
20425           documentation
20426         * tests/Makefile.am: sorted by name, added assign.test
20427         * ChangeLog: started new file
20429         * ltconfig.in: some cosmetical changes
20430         * ltmain.in: ditto
20432 1999-03-15  Alexandre Oliva  <oliva@dcc.unicamp.br>
20434         * configure.in, libtool.spec, NEWS: bump to 1.3a
20435         * Branched for release 1.3 (branch-1-3)
20436         * configure.in, libtool.spec, NEWS: bump to 1.2g
20438         * configure.in, libtool.spec: bump to 1.2f
20439         * doc/PLATFORMS: ditto
20440         * NEWS: libtool 1.2f released
20442         * ltmain.in: silence ``unbug'' :-) detected by sh.test
20444 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
20446         * TODO: we now use full pathnames for `file'
20448 1999-03-14  Thomas Tanner  <tanner@gmx.de>
20450         * TODO: libltdl is now documented
20451         * doc/libltdl.texi (linking with installed libtool libraries):
20452           fixed typo
20453         * doc/libltdl.texi (libltdl): added documentation for building
20454           libtool modules and examples how to embed libltdl
20455         * ltmain.in: don't ignore user-specified run-paths (fixed it
20456           at the right place)
20458 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
20460         * ltmain.in (deplibs_check_method=none): discard -L and -R
20461         switches when testing whether deplibs contains some library
20463 1999-03-14  Erez Zadok  <ezk@cs.columbia.edu>
20465         * config.sub: recognize hppa2.0w, yet to be installed at GNU
20467         * config.guess: minor update for FreeBSD-elf, yet to be installed
20468         at GNU
20470 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
20472         * ltconfig.in (bsdi4*, sys_lib_search_path_spec,
20473         sys_lib_dlsearch_path_spec): fix thinko in variable names; add
20474         standard directories
20476         * ltmain.in (exclude_expsyms): exclude symbols before sorting,
20477         otherwise only the sorted list will have them excluded
20479         * ltconfig.in (file_magic_cmd, file_magic_test_file, freebsd-elf*,
20480         bsdi4*): use full pathnames when possible
20482         * Makefile.am (all-recursive): depend on ACINCLUDE_M4_LIST
20483         (all-local, check-local): remove, unused
20485         * doc/PLATFORMS: updated platforms tested on 1.2f-pre; clean up;
20486         reorder; untabify
20488         * config.guess, config.sub: updated from GNU common
20490         * doc/libtool.texi: notes on thread-safety problems of
20491         libltdl/dlopen on GNU/Linux and FreeBSD
20493         * ltconfig.in (aix3*, aix4*): GNU ld on AIX is very broken: it
20494         cannot create working shared libraries.  Print a warning
20495         suggesting the user not to use it and disable shared libraries.
20497 1999-03-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
20499         * ltconfig.in (global_symbol_to_cdecl): was reset before trying
20500         `symprfx=_', rendering the test with `_' useless
20502         * doc/libtool.texi (AM_PROG_LIBTOOL): eliminate overfull boxes
20504         * doc/libtool.texi: complete dlopening/libltdl documentation
20506         * ltconfig.in (osf3*, osf4*, deplibs_check_method): pass_all does
20507         not really work; use file_magic instead.
20508         (osf3*, osf4*): customize sys_lib_[dl]search_path_spec
20510         * ltconfig.in (file_magic_test_file): new variable; if set, it
20511         will be used as an argument for $file_magic_cmd to test whether
20512         the regex in deplibs_check_method matches its output
20513         (file_magic_cmd): use full pathnames whenever possible
20515         * ltconfig.in (sys_lib_dlsearch_path_spec): new variable, that
20516         lists the system *run-time* search path.  Listed directories are
20517         not implicitly hard-coded into executables.
20518         * ltmain.in: use it, but *never* discard -R flags
20519         * doc/libtool.texi: document it
20520         * NEWS: ditto
20521         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
20523         * tests/sh.test: look for `$Xsed' without `$echo "X...'
20524         * ltconfig.in, ltmain.in: fixed a few such occurrences
20526         * ltmain.in (-static, -all-static): revert March 11's patch, I was
20527         barking up the wrong tree
20529 1999-03-12  Thomas Tanner  <tanner@gmx.de>
20531         * libltdl/ltdl.c: removed FILENAME_MAX since LTDL_FILENAME_MAX
20532           is sufficient and doesn't break HP/UX
20534 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
20536         * ltconfig.in: (global_symbol_pipe) extract symbol tag from the
20537         output of NM too
20538         (global_symbol_to_cdecl): new variable; convert the output of
20539         global_symbol_pipe to valid C declarations; on HP/UX, convert
20540         text symbols to function declarations
20541         * libtool.m4: similar modifications
20542         * doc/libtool.texi: document new variable
20543         * ltmain.in: use global_symbol_to_cdecl to generate lt_dlpreopened
20544         symbols; avoid extracting symbol lists from dlpreopened files
20545         twice; do not filter symbols from dlpreopened libraries
20546         * TODO: fixed HP/UX dlpreopening problem
20548         * ltmain.in (-static, -all-static): set dlopen_self to
20549         $dlopen_self_static regardless of link_static_flag or pic_flag
20551         * ltmain.in: FreeBSD bug that needs symbol table compiled with
20552         -fPIC is fixed in release 3.1; use it only for 2.* and 3.0
20554 1999-03-11  Thomas Tanner  <tanner@gmx.de>
20556         * ltmain.in: when building a library it doesn't make
20557           sense to remove a relinked program ("lt-" prefix)
20559 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
20561         * mdemo/main.c (main, test_dl, test_dlself): propagate error
20562         conditions better, to avoid false positives
20564         * */configure.in: AC_SUBST(LIBTOOL_DEPS)
20565         * */Makefile.am $(OBJECTS): depend on libtool
20566         (libtool): rebuild automatically
20568         * ltconfig.in: set dlopen_* variables to unknown when appropriate
20569         * ltmain.in: only emit warning about lack of AC_LIBTOOL_DLOPEN if
20570         *all* dlopen_* variables are set to unknown
20572 1999-03-11  Thomas Tanner  <tanner@gmx.de>
20574         * ltmain.in: delete the old output files (incl. the relinked binary)
20575           before linking.
20577         * ltconfig.in: replaced `configure' with $progname and all
20578           line numbers with @LINENO@
20580 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
20582         * libltdl/ltdl.c (strdup): cannot return str when it's NULL
20583         because of const correctness
20585 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
20587         * libltdl/ltdl.c (strdup): always use our own, because the
20588         standard strdup won't use lt_dlmalloc
20590         * ltconfig.in (dlfcn.h): function definition may cause warnings;
20591         define variable instead
20593         * ltmain.in: properly create an export file for a program,
20594         avoiding error messages about not finding it
20596         * TODO: need to document AC_LIBLTDL_*; static self dlopening
20597         problem fixed
20599         * libtool.m4 (AC_LIBTOOL_DLOPEN): just set lt_dlopen=yes
20600         (AC_LIBTOOL_SETUP): if lt_dlopen=yes, add --enable-dlopen to
20601         libtool_flags; drop --enable-dlopen-self
20602         * ltconfig.in: perform all the dirty work of testing for dlopening
20603         support, because we need platform-dependent equivalents for
20604         -export-dynamic, for self dlopening, and -static, for static self
20605         dlopening
20606         (dlopen_self_static): new configuration variable that is set to
20607         yes only if static programs can dlopen themselves
20608         * ltmain.in (-static, -all-static): dlopen_self=dlopen_self_static
20610         * libltdl/configure.in (libltdl_cv_need_uscore): do not assume
20611         dlfcn.h and LTDL_LAZY exist; use LTDL_GLOBAL and LTDL_LAZY_OR_NOW.
20612         This test is likely to fail if self-dlopening does not work,
20613         especially because we do not link the program with
20614         -export-dynamic.  Let's just hope that platforms whose symbol
20615         names start with underscores will also accept underscores for
20616         dlopen.  We should probably use libtool to compile and link this
20617         test, so that we can use -export-dynamic.
20619         * mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h
20621         * configure.in: fix AC_OUTPUT_COMMANDS for ltconfig and ltmain.sh
20622         so that they work if srcdir is relative too
20624         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
20625         avoid introducing multiple --enable options when re-running
20626         config.status
20627         * libltdl/configure.in: if enable_ltdl_* is not set, assume no
20628         * configure.in: if enable_ltdl_install is not set, enable it
20630         * libltdl/configure.in: only assume implicit installation if
20631         libltdl was libtoolized.  If not, print a warning message
20632         suggesting the use of --enable-ltdl-install or of one of the
20633         AC_LIBLTDL_* macros.
20635         * libtool.m4 (AC_LIBTOOL_SETUP): new macro, that does all the
20636         configure-work that AC_PROG_LIBTOOL used to do; add
20637         --cache-file=$cache_file to libtool_flags
20638         (AC_PROG_LIBTOOL): call AC_LIBTOOL_SETUP, save the cache, run
20639         ltconfig and reload the cache
20640         * configure.in: run AC_LIBTOOL_SETUP, then set LIBTOOL_FLAGS to
20641         libtool_flags
20642         * ltconfig.in: support --cache-file switch.  If it is used, load
20643         the cache in the beginning and save it just before terminating
20645         * tests/Makefile.am (TESTS): run demo-nofast before demo-shared
20647         * configure.in: create ltconfig and ltmain.sh at the end of
20648         config.status, if they do not exist.  This fixes the bootstrap
20649         problem reported by Erez Zadok <ezk@cs.columbia.edu>
20651 1999-03-10  Thomas Tanner  <tanner@gmx.de>
20653         * NEWS: sorted by importance
20654         * Makefile.am: set LIBTOOL_FLAGS when generating libtool
20655         * configure.in: check for dlopen support and set LIBTOOL_FLAGS
20656           accordingly
20658         * configure.in: fix spacing for --disable-ltdl-install,
20659           always configure libltdl, add libltdl/acinclude.m4 to
20660           ACINCLUDE_M4_LIST, disable installation of libltdl if necessary
20661         * libltdl/Makefile.am: set version info for libltdl.la
20662         * libltdl/configure.in: don't check whether
20663           enable_ltdl_convenience/install was set so that libltdl
20664           can be used as independent package (libltdl.tar.gz) without
20665           the need to use --enable-ltdl*
20666         * libltdl/ltdl.c: minor cleanups, allocate the line cache
20667           dynamically (lt_dlopen)
20669 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
20671         * libltdl/ltdl.c (lt_dlopen): some preprocessors choke if the `#'
20672         of `#define' is not in column 1; let's go back to fortran! :-)
20673         Add #undefs too, to avoid potential warnings or errors.
20675 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
20677         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
20678         renamed convenience libltdl, dropped toinst hack for installable
20679         * libltdl/Makefile.am: ditto
20680         * libltdl/configure.in: ditto; abort if none of the macros is used
20682         * ltmain.in: $output_objdir/$objdir/ -> $output_objdir/lt-
20684 1999-03-09  Thomas Tanner  <tanner@gmx.de>
20686         * libltdl/ltdl.c (lt_dlopen): don't hardcode the length of the
20687           constant strings
20689 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
20691         * Makefile.am (install-data-hook): install libltdl as a directory,
20692         not as a tar-file, so that we do not modify the build tree at make
20693         install time
20694         * libtoolize.in (ltdl, ltdl_tar): update
20696         * configure.in, Makefile.am, NEWS: install libltdl by default
20698         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
20699         new macros
20700         * NEWS: ditto
20701         * libltdl/configure.in: if none of the new macros or configure
20702         arguments are used, warn and build convenience library only
20703         * libltdl/Makefile.am: conditionally build convenience libltdl.la
20704         * mdemo/configure.in: use AC_LIBLTDL_CONVENIENCE
20705         * mdemo/Makefile.am: refer to @LIBLTDL@
20707 1999-03-09  Gary V. Vaughan <gary@gnu.org>
20709         * NEWS: updated.
20711 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
20713         * ltmain.in: extract symbols from program objects to nlist first,
20714         then translate them to the export_symbols format.  Now it works,
20715         but it appears to be needlessly extracting the symbol list from
20716         dlpreopened libraries twice
20718         * ltmain.in: temporarily disable dlopen_self when linking with
20719         -static or -all-static, until we figure out how to test whether it
20720         works at configure time
20722         * TODO: remember to fix this later
20724         * tests/build-relink.test: when hell is expected to fail, run it
20725         within a subshell and redirect stderr to stdout, so that dynamic
20726         linker errors are only printed in verbose mode
20728         * ltmain.in (hardcode_libdir_separator, compile_rpath,
20729         finalize_rpath): only substitute hardcode_libdir_flag_spec if
20730         hardcode_libdirs is non-empty
20732         * libtool.m4 (AC_LIBTOOL_DLOPEN): do not depend on the existence
20733         of dlfcn.h nor on the definition of RTLD_LAZY
20735         * tests/build-relink.test: hellT was renamed to lt-hell
20737         * libltdl/Makefile.am (@TOINST@/libltdl.la): do not hide the
20738         command that creates the TOINST directory; remove `-o $@' from the
20739         LINK command, $(LINK) already contains it.
20741 1999-03-08  Thomas Tanner  <tanner@gmx.de>
20743         * doc/libtool.texi (tests): documented demo-nofast.test and
20744           renamed cdemo* to demo*
20746 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
20748         * libltdl/Makefile.am, libltdl/configure.in, mdemo/Makefile.am:
20749         libltdl must not be renamed; if there's a problem with the install
20750         option, let's fix it, not just work around it by breaking code of
20751         users of the convenience library
20753         * tests/build-relink.test: link broken libhello.la with at least
20754         one libtool object
20756 1999-03-08  Thomas Tanner  <tanner@gmx.de>
20758         * TODO: updated (libltdl build problem fixed)
20759         * doc/libtool.texi (libltdl interface): removed the line which
20760           promised that lt_dlopen will return NULL if it can't resolve all
20761           symbols
20762         * libltdl/Makefile.am, libltdl/configure.in: fixed build problem:
20763           renamed the convenience library to libltdlc.la and the
20764           installed version to libltdl.la
20765         * ltmain.in (wrapper script): replaced the "T" suffix of the program
20766           file name with a "lt-" prefix
20767         * mdemo/Makefile.am: use libltdlc.la
20768         * tests/Makefile.am, tests/demo-nofast.test: added demo to
20769           test --enable-fast-install=no
20771 1999-03-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
20773         * tests/Makefile.am (TESTS): run hardcode before build-relink
20774         trashes libhello.la
20775         * tests/hardcode.test (need_prefix): set to yes so that _inst is
20776         not removed
20778         * ltmain.in (compile_command): append finalize search path to
20779         compile search path
20781         * tests/build-relink.test: new; check shlibpath_overrides_runpath
20782         * tests/Makefile.am (TESTS): add build-relink.test; remove
20783         hardcode.test duplicates
20784         * doc/libtool.texi: document it
20786         * ltmain.in (relink_command): do not prepend cd `pwd` to it, the
20787         scripts already enters the correct directory, and expanding the
20788         pathname would prevent the build tree from moving
20790         * ltconfig.in (enable_fast_install): force it to no only if we
20791         need relink; in the other cases, set it to needless
20792         * ltmain.in (fast_install): if needless, set relink_command empty
20793         * doc/libtool.texi (fast_install, shlibpath_overrides_runpath):
20794         document the new behavior
20796         * ltconfig.in (enable_fast_install): test whether it can be forced
20797         off after shlibpath_overrides_runpath and enable_shared are set
20799 1999-03-07  Thomas Tanner  <tanner@gmx.de>
20801         * TODO: updated
20802         * NEWS: updated
20804         * TODO: scheduled some items for next release/future
20805         * demo/configure.in: use AC_LIBTOOL_DLOPEN
20806         * libtool.m4: added AC_ENABLE/DISABLE_FAST_INSTALL macro
20807         * ltconfig.in: added --disable-fast-install flag
20808         * ltmain.in: partially reverted Alexandre's patch and implemented
20809           on-demand linking in such a way that the old developer-friendly
20810           linking style is optional,
20811           don't hardcode library paths that are in the system search path,
20812           fixed a typo in lib_search_path,
20813           implemented -export-symbols-regex for programs
20815 1999-03-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
20817         * libltdl/ltdl.c (LTDL_LAZY_OR_NOW): renamed from LTDL_NOW; prefer
20818         LAZY loading because it's much faster and NOW is apparently
20819         partially broken on FreeBSD
20820         Reported by Archie Cobbs <archie@whistle.com>
20822         * ltconfig.in (archive_expsym_cmds, solaris, without_gnu_ld):
20823         $lib.exp already starts with $objdir/
20824         Reported by Godmar Back <gback@cs.utah.edu>
20826         * ltmain.in (freebsd): compile symbol table file with pic_flag
20827         only on FreeBSD and when not static linking; it's been causing
20828         trouble on platforms such as OpenBSD.
20830 1999-02-26  Gary V. Vaughan  <gary@gnu.org>
20832         * libtool.m4 (cygwin): s/\\(mingw\\|cygwin\\)32/\\1/g.  Must've
20833         missed this file when I changed to cygnus' new sanction name.
20835         * ltconfig.in (sub_uncdrive): removed.  This won't work with
20836         the next version of cygwin.
20837         (sub_uncdir): removed. We use <drive>:/path/to/executable now.
20838         * libtool.m4 (AC_PROG_LD): removed sub_uncdrive and sub_uncdir.
20840 1999-02-25  Thomas Tanner  <tanner@gmx.de>
20842         * TODO: added items for next alpha release, ILD etc.
20843         * libltdl/ltdl.c: removed unnecessary check from presym_sym,
20844           fixed bug in lt_dlclose, allow lt_dlopenext(NULL),
20845           set deplibs for lt_dlopen(NULL)
20847 1999-02-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
20849         * ltmain.in (file_magic_regex): sed `10q' is faster than `11,$d'
20851 1999-02-22  Thomas Tanner  <tanner@gmx.de>
20853         * ltconfig.in (dlopen, dlopen_self): default is unknown
20854         * ltmain.in: fixed -dlopen self, print a warning
20855           if -dlopen is used without AC_LIBTOOL_DLOPEN
20856         * mdemo/Makefile.am: use -dlopen self
20858 1999-02-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
20860         * ltmain.in: added missing mkdir $progdir for on-demand executable
20862         * ltmain.in: create on-demand executable as $progdir/$$-$program,
20863         and rename it to $progdir/$program only when it's finished, to
20864         avoid race conditions.  We can still get the program linked
20865         multiple times, if multiple instances are started simultaneously
20866         and the program does not exist, but they are very unlikely to
20867         interfere with each other.  There's still a possibility that one
20868         process removes the $program another has just created, and doesn't
20869         replace it before the other tries to run it, in a system whose
20870         `mv' is not atomic, so it will $rm then $mv, but so what? :-)
20871         Locking files have been avoided to prevent dead-locks in case they
20872         are left over after a reboot or crash.
20874         * TODO: removed ILD, soon to be merged, and added convenience
20875         libraries docs
20877         * ltconfig.in (irix5*, irix6*, shlibpath_overides_runpath): yes
20879         * ltmain.in: remove on-demand executable in the proper place, and
20880         just warn if it can't be removed; add wrapper code to test whether
20881         the install-executable is newer than the build-executable, to
20882         relink it when it appears to be out-of-date
20884         * libltdl/configure.in: check for dld.h
20885         * libltdl/ltdl.c: include dld.h
20886         (dld_open) it's spelled memory_error, not no_memory_error
20887         Reported by Stefan Burstroem <f94sbu@efd.lth.se>
20889         * ltmain.in: fix typos in my last change (s/ocmpile/compile/)
20891 1999-02-21  Thomas Tanner  <tanner@gmx.de>
20893         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
20894           when dlopening the executable
20895         * libtool.m4 (AC_LIBTOOL_DLOPEN): removed the redundant "yes: "
20896           prefix for lt_cv_dlopen, renamed lt_cv_dlopen_LIBS
20897           to lt_cv_dlopen_libs (more consistent)
20898         * ltmain.in: implemented -dl[pre]open self, necessary for
20899           lt_dlopen(NULL), generation of exported symbols was broken
20901 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
20903         * ltmain.in: avoid duplication of -L switches, it sometimes breaks
20904         IRIX 5.2's linker
20906         * ltconfig.in (freebsd*, finish_cmds): expand objformat here
20907         Reported by Vladimir Kushnir <kushn@mail.kar.net>
20909 1999-02-20  Vladimir Kushnir <kushn@mail.kar.net>
20911         * ltconfig.in (freebsd-elf*, need_version, need_lib_prefix): no
20912         (freebsd-elf*, library_names_spec): add $libname.so instead of
20913         $libname.so$versuffix; add $libname$release.so
20915 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
20917         * doc/libtool.texi: remove ticks from menu items; it breaks TeX
20918         Reported by Erez Zadok <ezk@cs.columbia.edu>
20920         * ltmain.in: fixes for export-symbols dry-run
20922         * ltconfig.in (shlibpath_overrides_runpath): new variable;
20923         determines whether LD_LIBRARY_PATH or equivalent can be used to
20924         override a hard-coded library search path; default to unknown
20925         (linux-gnu*): set it to no
20926         (solaris*, sunos4*): set it to yes
20927         * ltmain.in (build_libdirs_flags, build_libdirs, build_rpath): if
20928         shlibpath_overrides_runpath is not yes, arrange that wrapper
20929         scripts create, on demand, programs that use uninstalled libraries
20931         * doc/libtool.texi: document it
20933         * libtool.m4 (AC_LIBTOOL_DLOPEN): check for dlopen in libc before
20934         trying in dl.  Add the actual dlopening type to lt_cv_dlopen, and
20935         add any needed libraries to lt_cv_dlopen_LIBS.  Add test for
20936         MS-Windows' LoadLibrary.  Check whether a program can dlopen
20937         itself only if we really have dlopen(), not some equivalent
20938         function, but leave room for testing with other mechanisms.
20939         (AC_PROG_LIBTOOL): assume some form of dlopen, but not
20940         dlopen(NULL), is available if AC_LIBTOOL_DLOPEN is not used, for
20941         backward compatibility.
20943 1999-02-20  Archie Cobbs  <archie@whistle.com>
20945         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
20946         where appropriate, when dlopening a non-libtool library
20948 1999-02-19  Gary V. Vaughan  <gary@gnu.org>
20950         * ltconfig.in (export_symbols_cmds): renamed from
20951         export_symbols_cmd.
20952         (cygwin, mingw): Be sure to compile the ltdll.c object before
20953         extracting the exported symbol list.  Extract only the names
20954         of the exported symbols from the def file [otherwise we might
20955         run into trouble with -export-symbols-regex].
20956         (archive_expsym_cmds): Regenerate the def file from the symbol
20957         export list.
20958         (delay_variable_subst): New sed expression to allow us to delay
20959         evaluation of $foo in a double_quote_subst evaluated variable by
20960         using \$.
20961         * ltmain.in (export_symbols_cmds): evaluate each ~ delimitted cmd
20962         separately.
20963         * doc/libtool.texi (libtool script contents): new paragraph to
20964         explain the difference between _cmd and _cmds suffixes for
20965         variable names.
20966         (export_symbols_cmds): renamed from export_symbols_cmd.
20968 1999-02-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
20970         * ltconfig.in (ld_shlibs): move -soname and similar flags to the
20971         end of archive_cmds and archive_expsym_cmds, so as to prevent
20972         gcc's collect2 from inserting an object file between -soname and
20973         the library name
20975         * ltconfig.in (openbsd*, netbsd*, library_names_spec): append
20976         alternate name without ${release}, otherwise build fails when
20977         -release is used
20979 1999-02-18  Gary V. Vaughan  <gary@gnu.org>
20981         * ltconfig.in (archive{,_sym}_commands): Be careful not to
20982         re-export the dll entry points DllMain@12, _cygwin_dll_entry@12 and
20983         _cygwin_noncygwin_dll_entry@12 to avoid bugs with the wrong entry
20984         function being called with inter-dll dependencies.
20985         Reported by DJ Delorie <dj@delorie.com>
20986         * THANKS: Added DJ Delorie, since his code inspired the impgen.c
20987         program and because he has patiently answered all of the
20988         irritating dll and win32 questions I have fired at him.
20990         * ltmain.in (version_type):  Oops.  Irix versioning implies that
20991         major version numbers are 1 based (not zero based).  Fixed.
20993         * ltmain.in (version_type): Implement irix versioning.
20994         * ltconfig.in (irix{5,6}*): Use new irix shared object versioning.
20995         * TODO: remove irix versioning from TODO list.
20997         * ltmain.in (impgen.c): Added a new embedded C file that can be
20998         used under win32 to extract a def file (symbol export list) from a
20999         dll that has none.  Code to use it might need to wait for the ILD
21000         merge before it will be useful...
21002 1999-02-18  Thomas Tanner  <tanner@gmx.de>
21004         * TODO: updated
21005         * autogen: only libltdl needs autoheader
21006         * doc/libtool.texi (link mode): documented -export-symbols-regex
21007           and updated -export-symbols
21008         * doc/libtool.texi (script contents): documented
21009           always_export_symbols, export_symbols_cmd, exclude_expsyms,
21010           include_expsyms, dlopen and dlopen_self
21011           more detailed description of need_lib_prefix
21012         * ltconfig.in: a "'" was missing in the default value
21013           of export_symbols_cmd
21014         * ltmain.in: implemented -export-symbols-regex
21016 1999-02-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
21018         * ltconfig.in: (freebsd2*, sunos4*, exclude_expsyms): exclude
21019         _GLOBAL_OFFSET_TABLE_
21020         * ltmain.in: implement exclude_expsyms with egrep
21022         * libltdl/ltdl.c (lt_dlmalloc, lt_dlfree): SunOS' cc can't cope
21023         with argument lists, we __P even in the definition
21025 1999-02-15  Thomas Tanner  <tanner@gmx.de>
21027         * cdemo/Makefile.am: renamed *foo1 to *foo, removed $(MATH_LIB)
21028         * cdemo/foo1.c: renamed to foo.c
21029         * libltdl/ltdl.c: eliminated lt_dltype, in presym_open():
21030           search for @PROGRAM@ if filename == 0, in lt_dlopen():
21031           fixed bug for filename == 0
21032         * libltdl/ltdl.h: use __P macro for lt_dlmalloc/free
21033         * libtool.m4: new macro AC_LIBTOOL_DLOPEN: checks for dlopen
21034           and dlopen(NULL) support
21035         * ltconfig.in: added new variables dlopen and dlopen_self,
21036           --enable-dlopen[-self] flags for AC_LIBTOOL_DLOPEN
21037         * ltmain.in: use dlopen[_self], dlpreopen files if there's no
21038           dlopen support, build lt_preloaded_symbols only if
21039           -dl[pre]open was used, include program symbols if -export-dynamic
21040           was specified and there's no dlopen(NULL) support
21041         * mdemo/configure.in: use AC_LIBTOOL_DLOPEN
21042         * mdemo/main.c: demonstrate lt_dlopen(0)
21044 1999-02-15  Gary V. Vaughan  <gary@gnu.org>
21046         * demo/dlmain.c (_WIN32): The lt_symlist structure is now const,
21047         so my original horrible temporary win32 hack no longer worked.
21048         Here is a new horrible temporary hack to prevent helldl from SEGVing
21049         on win32.  I will fix this properly when we figure out how to do
21050         data exports from dlls.
21052 1999-02-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
21054         * libtool.m4 (AC_CHECK_LIBM): do not set MATHLIB or AC_SUBST it,
21055         this has a negative side-effect of causing automake to add MATHLIB
21056         to every single Makefile.  Let's use plain AC_CHECK_LIB, so that
21057         LIBS get set, until we find a better alternative
21058         * *demo/Makefile.am: remove $(MATHLIB)
21060         * libltdl/configure.in: add a DESCRIPTION argument to AC_DEFINEs
21061         where appropriate, so as to get rid of acconfig.h
21062         * libltdl/acconfig.h: removed
21064 1999-02-13  Thomas Tanner  <tanner@gmx.de>
21066         * *demo/Makefile.am: use $(MATHLIB)
21067         * *demo/configure.in: use AC_CHECK_LIBM
21068         * doc/libtool.texi: renamed file_magic_command to file_magic_cmd,
21069           renamed archive_sym_cmds to archive_expsym_cmds
21070         * ltconfig.in: ditto
21071         * ltmain.in: ditto
21072         * libltdl/ltdl.c: use lt_dlmalloc/free
21073         * libltdl/ltdl.h: define lt_dlmalloc/free
21074         * libtool.m4: added AC_CHECK_LIBM macro
21075         * ltconfig.in: renamed archive_sym_cmds to archive_expsym_cmds,
21076           added always_export_symbols, export_symbols_cmd, exclude_expsyms,
21077           include_expsyms, removed archive_cmds for cygwin/mingw and AIX,
21078           on Solaris store the exported symbols list in objdir
21079         * ltmain.in: allow -export-symbols for modules, use thread_safe flag,
21080           add include_expsyms to the exported symbols
21082 1999-02-12  Gary V. Vaughan  <gary@gnu.org>
21084         * libltdl/ltdl.h (_LTDLL_EXTERN): libltdl is no longer linked as a
21085         shared library, so the _declspec's were preventing the linker from
21086         resolving symbols on win32.  They have been removed now.
21088 1999-02-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
21090         * ltmain.in: don't try to read objdir/libname.la before it is
21091         created!
21093         * ltmain.in: create libname.lai at link time, not at install time,
21094         but still create it at install time if it is missing
21095         Reported by Akim Demaille <demaille@inf.enst.fr>
21097         * libltdl/ltdl.c (tryall_dlopen): strcmp filenames was reversed
21099 1999-02-11  Thomas Tanner  <tanner@gmx.de>
21101         * autogen: libltdl needs autoheader
21102         * demo/Makefile.am: renamed hell.debug to hell.static
21103           (we're demonstrating static linking, not debugging)
21104         * tests/demo*: ditto
21105         * doc/libtool.texi (libltdl): documented new lt_dlopen(NULL)
21106           feature
21107         * libltdl/acconfig.h: required for config.h
21108         * libltdl/configure.in: use config.h
21109         * libltdl/ltdl.c: use config.h, support lt_dlopen(NULL)
21110           (returns a handle for the program itself)
21111         * ltconfig.in: minor reformatting
21112         * ltmain.in: in lt_preloaded_symbols always define
21113           the program's symbols first, for -export-dynamic list all
21114           program symbols together, -export-symbols was broken for
21115           programs, minor reformatting
21116         * mdemo/Makefile.am: renamed mdemo.debug to mdemo.static
21117         * tests/mdemo*: ditto, mdemo.test was completely broken
21119 1999-02-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
21121         * ltconfig.in (irix5*, irix6*, osf3*, osf4*): do not use
21122         -set_version in archive_cmds if verstring is empty
21123         (irix6*, shlibpath_var, sys_lib_search_path-spec,
21124         deplibs_check_method): set appropriate values depending on
21125         selected ABI, -32, -n32 or -64, as set in LD by libtool.m4
21126         (uts4*): remove dot between .so and versuffix
21128 1999-02-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
21130         * ltconfig.in (irix5*, irix6*, deplibs_check_method): use
21131         file_magic for inter-library dependency tracking
21133         * ltconfig.in (irix5*, hardcode_libdir_separator): set it to a
21134         colon, because on IRIX 5 only the last -rpath switch prevails, and
21135         it can be a list of colon-separated directories.  This change will
21136         affect irix6 too, but that's not a problem.
21138         * ltconfig.in (irix5*, library_names_spec): add soname_spec,
21139         otherwise we can't dlopen
21141 1999-02-08  Thomas Tanner  <tanner@gmx.de>
21143         * ltconfig.in: according to Marcus Sundberg <mackan@stacken.kth.se>
21144           HP/UX, IRIX, OpenBSD, Digital Unix and SunOS support
21145           need_version=no and need_lib_prefix=no,
21146           fixed a bug in Solaris' archive_sym_cmds
21148 1999-02-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
21150         * libtool.m4 (ac_cv_sys_global_symbol_pipe): accept TAB in
21151         addition to space as separator, and allow more than one space
21152         between the symbol code and the symbol name; HP/UX's nm, for
21153         example, uses two spaces
21154         * ltconfig.in (global_symbol_pipe): ditto
21155         (bsdi4, deplibs_check_method): variable name was misspelled
21156         * libltdl/configure.in (libltdl_cv_preloaded_symbols): rewrite
21157         test, so as not to depend on the way global_symbol_pipe is
21158         initialized; the current test would get false positives, as
21159         global_symbol_pipe was initialized `x=""', not `x='
21161         * libltdl/ltdl.c (find_module): initialize filename if dir is NULL
21162         Reported by Godmar Back <gback@cs.utah.edu>
21164 1999-02-04  Godmar Back  <gback@cs.utah.edu>
21166         * libltdl/ltdl.c (lt_dlopenext): missing space for terminator when
21167         allocating memory for shlib_ext
21169 1999-02-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
21171         * libltdl/ltdl.c (lt_dlopenext): tmp would be trashed if shlib_ext
21172         was longer than 3 characters
21174 1999-02-02  Gary V. Vaughan  <gary@gnu.org>
21176         * ltconfig.in: new config.guess returns *-*-cygwin now instead of
21177         *-*-cygwin32.  sed -e 's%\(cygwin\|mingw\)32%\1%g' ltconfig.in
21178         * ltmain.in:   sed -e 's%\(cygwin\|mingw\)32%\1%g' ltmain.in
21180         * ltconfig.in (hardcode_libdir_flag_spec, allow_undefined_flag,
21181         archive_cmds, archive_sym_cmds, old_archive_from_new_cmds):
21182         removed duplication of config by assuming that `test $with_gcc =
21183         yes' implies gnu ld, otherwise MSVC++ (which I haven't tested
21184         since I inheritted the code from Ian Lance Taylor btw!) is implied.
21186 1999-01-28  Gary V. Vaughan  <gary@gnu.org>
21188         * ltmain.in: Reverted this change of Alexandre's from the
21189         1999-01-25; "don't try to use .o instead of .lo just because
21190         there's no PIC flag.  It loses if --disable-static, and there's
21191         not much point if we're referring to the same file anyway...",
21192         because not all linkers will accept .lo object names.
21193         * ltmain.in: In the case where --disable-static is specified (as
21194         noted in Alexandre's log entry), we just link some .o files to
21195         prevent the original error.
21196         Reported by Andrey Slepuhin <pooh@msu.ru>
21198 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
21200         * libtoolize.in: search for A[MC]_PROG_LIBTOOL, not
21201         AM_PROG_LIBTOOL
21202         Reported by Jeff Garzik <jgarzik@pobox.com>
21204 1999-01-27  Gary V. Vaughan  <gary@gnu.org>
21206         * THANKS: Now that we have a policy, applied it to the existing
21207         list.  This in no way demeans the work of those people removed
21208         from the THANKS file, who are still credited in the ChangeLogs and
21209         without who's work, libtool would not work so well on many
21210         platforms, but serves to highlight the outstanding and continued
21211         contribution the remaining people have made.  And I quote, "We
21212         reserve THANKS for people who have made major contributions, and
21213         leave the credit to the others for the ChangeLog only."
21215         * THANKS: added Sam Vilain.
21216         * ltconfig.in ($echo):  When using printf to replace echo the shell
21217         expands %s\n to %sn.  Changed to use "%s\n" (with quotes).
21218         Reported by Sam Vilain <sam.vilain@nz.unisys.com>
21220 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
21222         * libltdl/ltdl.c (find_file): fix endless loop condition
21223         (find_module): filename allocation was off by 1
21225         * libltdl/Makefile.am (distclean-local): renamed from
21226         distclean-hook, that didn't work
21228         * libltdl/ltdl.c (lt_dlopen, non-.la): find_file now returns 0 on
21229         failure
21231         * Makefile.am (ltconfig, ltmain.sh): some broken makes don't like
21232         macros in targets; replace $(srcdir) with @srcdir@
21233         * configure.in (ACINCLUDE_M4_LIST): same problem; expand $srcdir
21235         * libltdl/Makefile.am (@TOINST@/libltdl.la): if installation is
21236         enabled, create to-be-installed libltdl.la within @TOINST@
21237         directory
21238         (noinst_LTLIBRARIES): even if installation is enabled, build
21239         convenience libltdl.la, otherwise builds of random packages may
21240         fail if the user happens to enable installation
21241         (distclean-hook): wipe out $(TOINST)
21242         * libltdl/configure.in: set TOINST and LIBLIBS as appropriate;
21243         don't set NOINSTLIBS any more
21244         * mdemo/Makefile.am: use libltdl.la
21246         * libltdl/ltdl.c (find_file): oops, filenamesize was miscomputed
21248         * libltdl/ltdl.c (find_file): allocate filename dynamically
21250         * libltdl/configure.in (AC_PROG_LIBTOOL): automake does not
21251         recognize it and fail, better keep using AM_PROG_LIBTOOL until the
21252         next release of automake
21253         * demo/configure.in, cdemo/configure.in: ditto
21254         * depdemo/configure.in, mdemo/configure.in: ditto
21256         * libltdl/ltdl.c: make all global strings char[], not char*; check
21257         that all calls to malloc() are properly cast
21258         (strdup, strchr, strrchr, trim, free_vars): declare as inline
21259         (find_module): allocate filename dynamically; support null dir
21260         (free_vars): free dir and name only if non-null
21261         (lt_dlopen): keep dir as NULL if not given; fix expression that
21262         calculated the size of name; only free and name if non-null
21263         (lt_dlopenext): allocate tmp dynamically
21265         * configure.in (pkgdatadir): expand ${PACKAGE} at configure-time,
21266         just like automake does
21268         * configure.in (pkgdatadir): define pkgdatadir explicitly, and
21269         comment that automake does not need it, but libtoolize does
21271         * Makefile.am (aclocaldir): do not set it explicitly, automake
21272         does already
21274         * configure.in (TIMESTAMP): use mkstamp here too
21276 1999-01-27  Thomas Tanner  <tanner@gmx.de>
21278         * cdemo/configure.in: renamed AM_PROG_LIBTOOL to AC_PROG_LIBTOOL
21279         * demo/configure.in: likewise
21280         * depdemo/configure.in: likewise
21281         * libltdl/configure.in: likewise
21282         * mdemo/configure.in: likewise
21283         * libltdl/ltdl.c: in find_module() check whether libdir is defined,
21284           tryall_dlopen(): move deallocation of an already opened handle
21285           to lt_dlopen(), allocate the directory in lt_dlopen() dynamically,
21286           minor cleanups, fixed memory leak (name)
21287         * libtool.m4: renamed all AM_ macros to AC_ and added aliases for
21288           compatibilty, updated AC_SYS_NM_PARSE (no undefined symbols,
21289           don't count the symbols)
21290         * ltconfig.in: added thread_safe_flag_spec (not used yet),
21291           added generic variable for linker options "linkopts" in
21292           all archive_cmds
21293         * ltmain.in: added -thread-safe flag (unused)
21295 1999-01-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
21297         * ltconfig.in (LTCONFIG_VERSION): damn!, adding TIMESTAMP doesn't
21298         always work, because then different ChangeLog timestamps fail to
21299         pass the version test.  Instead of forcing both ltconfig and
21300         ltmain.sh to be updated every time ChangeLog changes, better
21301         revert it
21303         * ltconfig.in (LTCONFIG_VERSION): add TIMESTAMP, remove
21304         explicit quotes and add it to the list of variables to quote
21306         * ltmain.in: reworded `dropped inter-library dependencies'
21307         message, and added a warning about inter-library dependencies even
21308         for non-module builds
21310 1999-01-26  Gary V. Vaughan  <gary@gnu.org>
21312         * Makefile.am (install-data-hook): Don't show the if expression
21313         that tests for gzip with a conditional error message; just do it
21314         quietly and show the error if it fails, or the next action if it
21315         succeeds.
21317         * configure.in:  It seems Alexandre accidentally removed the
21318         AC_SUBST(pkgdatadir) line recently which breaks libtoolize.
21319         Reverted that small change.
21321 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
21323         * libltdl/ltdl.c (find_module): test old_name and dlname for NULL,
21324         not len==0
21326         * libltdl/configure.in (libltdl_cv_objdir): yes, appending the "/"
21327         in configure.in was much simpler
21328         * libltdl/ltdl.c (objdir): ditto
21330         * libltdl/ltdl.c (objdir): string collation isn't portable; strcat
21331         "/" explicitly.  Or should this be moved to configure.in?
21333 1999-01-25  Thomas Tanner  <tanner@gmx.de>
21335         * libltdl/ltdl.c: allocate the variables in lt_dlopen() dynamically
21337 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
21339         * ltmain.in (file_magic): use egrep instead of expr to support
21340         more general regular expressions
21341         (file_regex): remove it; the name is misleading, it's not used
21342         anywhere, and probably will never be
21343         * ltconfig.in, doc/libtool.texi: ditto
21344         * ltconfig.in (linux-gnu*, deplibs_check_method): extend regex to
21345         support `LSB dynamic lib' in the output of `file'
21346         Reported by Scott D. Heavner <sdh@po.cwru.edu>
21348         * ltmain.in (dependency_libs, xrpath): add -R switches to
21349         dependency_libs only just before creating the .la file; they
21350         should not be passed to the C compiler or linker at
21351         library-creation time, since we don't know whether it is supported
21353         * ltconfig.in (freebsd2.2*, hardcode_minus_L): for FreeBSD 2.2.6,
21354         this must be `no'
21356         * mkstamp: move the sed script to extract revision and date
21357         information into a separate shell-script, so that we can break
21358         lines between commands; FreeBSD's sed doesn't like `;' after `t'
21359         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
21360         * Makefile.am: use mkstamp
21361         * THANKS: added Axel Thimm
21363         * ltmain.in: don't try to use .o instead of .lo just because
21364         there's no PIC flag.  It loses if --disable-static, and there's
21365         not much point if we're referring to the same file anyway...
21367         * ltmain.in (pass_all=none, droppeddeps): set only if deplibs was
21368         non-empty
21370 1999-01-24  Thomas Tanner  <tanner@gmx.de>
21372         * libltdl/ltdl.c: minor bugfixes, append a "/" the search
21373           directory only if necessary
21374         * ltconfig.in: added support for FreeBSD >= 3.0
21375           (patch from Kurt D. Zeilenga)
21376         * THANKS: added Kurt D. Zeilenga
21378 1999-01-24  Thomas Tanner  <tanner@gmx.de>
21380         * doc/libtool.texi (libltdl): list supported dlopen mechanisms,
21381           added function lt_dlopenext(), removed reference to
21382           LTDL_PRELOADED_SYMBOLS in LTDL_SET_PRELOADED_SYMBOLS
21383         * libltdl/ltdl.c: partially reverted Alexandre's dynamic string
21384           allocation change (it was not necessary and the code was unreadable),
21385           cleanups, removed usr_search_path_size, renamed usr_search_path
21386           to user_search_path, in find_module() also check for moved
21387           modules, merged find_file() and find_library(),
21388           added lt_dlopenext(), in lt_dladdsearchdir() no longer reset
21389           the search path if 'search_dir' == NULL and don't use realloc()
21390           (might not be available on all platforms),
21391           removed __P((void)) in the declaration of lt_dlgetsearchpath()
21392         * libltdl/ltdl.h: added lt_dlopenext()
21393         * ltconfig.in: AIX archive commands were broken,
21394           fixed a MAJOR bug in global_symbol_pipe which caused
21395           "demo-shared.test;demo-make.test" to fail (libtool must not extract
21396           undefined symbols of libraries, i.e. symcode must not contain 'U')
21397         * tests/Makefile.am (clean-local): "make distclean" in cdemo, too
21399 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
21401         * Makefile.am (ltconfig, ltmain.sh): add ChangeLog Revision to
21402         TIMESTAMP
21403         * configure.in: get values of PACKAGE and VERSION set by
21404         AM_INIT_AUTOMAKE, and extract only TIMESTAMP from the ChangeLog
21406         * libltdl/ltdl.c (lt_dlopen): if we're reusing a previously opened
21407         handle, don't reset its name nor add it to the list, and free the
21408         name we have allocated
21409         Reported by Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
21411         * Makefile.am (ltconfig, ltmain.sh, TIMESTAMP): let's not assume
21412         anything about the format of the date, just that it does not
21413         contain `$'
21415 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
21417         * configure.in (date): echo the version number during
21418         configuration, and show $date for cvs versions.
21420         * Makefile.am ($(srcdir)/ltconfig): Oops.  cvs co keyword
21421         expansion ate the sed expression! Changed sed separator to '%'
21422         because there are '/' in the date.  Added missing '\(' to search
21423         expression.  Inserted a null string to stop cvs from expanding it
21424         next time =)O|
21425         ($(srcdir)/ltmain.sh): ditto.
21427 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
21429         * Makefile.am (TSDEPS_DIST): dist-time dependencies for timestamps
21430         (timestamps, update-timestamps): check whether TSDEPS_DIST are
21431         up-to-date and update ltconfig and ltmain.sh if needed
21432         (ltconfig, ltmain.sh): depend on TSDEPS; replace @TIMESTAMP@ with
21433         the Date tag in the ChangeLog
21434         (TSDEPS): empty unless overridden by update-timestamps
21435         * ltconfig.in, ltmain.in (TIMESTAMP): append timestamp to most
21436         references to VERSION
21438 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
21440         * ltmain.in (ild): Revert the change which allowed libtool to
21441         link libraries with dependencies on .la libs.
21442         * NEWS: Removed reference to win32, incase 1.3 ships before
21443         ild is ready.
21444         * doc/PLATFORMS: Removed i686-pc-cygwin32, for the same reason.
21445         * doc/libtool.texi: Removed win32 refs, for the same reason.
21447 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
21449         * ltmain.in (Xsed): add 1 to Xsed definition that goes into
21450         temporary wrapper scripts
21451         * libtool.m4: we don't have Xsed here, expand it manually
21452         Reported by Pavel Roskin <pavel_roskin@geocities.com>
21454 1999-01-22  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
21456         * ltmain.in (finalize_hardcode_libdirs, finalize_rpath): in
21457         platforms that use -rpath, programs must be finalized at
21458         installation time, otherwise build-tree programs will
21459         prefer installed libraries over build-tree ones
21461 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
21463         * mdemo/Makefile.am (../libltdl/libtool): if it does not exist,
21464         the sub-make for libltdlc.la will take care of it, but we must at
21465         least provide an empty rule for it, otherwise the sub-make will
21466         never run
21468         * demo/configure.in, demo/Makefile.am (DLPREOPEN): reverted; it
21469         didn't make any difference.
21471 1999-01-21  Gary V. Vaughan  <gary@gnu.org>
21473         * THANKS: Added Chris Laas <golem@MIT.EDU>
21475         From Chris Laas <golem@MIT.EDU>
21476         * ltmain.in (compile):  corrected a typo in compile mode which
21477         caused "gcc: unrecognized option -c-fPIC" errors due to a missing
21478         space.
21480 1999-01-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
21482         * libltdl/configure.in: reintroduce code to detect native library
21483         extension
21484         * libltdl/ltdl.c (lt_dlopen): if a .la file name is given, that's
21485         all.  Otherwise, lt_dlopen now tries to append .la first.  If this
21486         fails, it tries the given filename, and, at last, tries to append
21487         the native library extension to the given filename.
21488         * doc/libtool.texi (lt_dlopen): explain new lookup strategy
21490         * libltdl/ltdl.c: major rewrite to avoid almost all fixed-size
21491         buffers; only `tmp' in lt_dlopen remained.  But the code got ugly
21492         :-(
21494         * ltconfig.in (linux-gnu*, finish_cmds): remove erroneous backslash
21496         * demo/configure.in: set DLPREOPEN to -dlopen if we don't have
21497         shared libraries
21498         * demo/Makefile.am (DLPREOPEN): use instead of -dlpreopen
21499         (STATIC): use $(STATIC), not @STATIC@
21500         * mdemo/Makefile.am (STATIC): ditto
21502         * tests/demo-shared.test, tests/demo-static.test: new tests
21503         * tests/mdemo-shared.test, tests/mdemo-static.test: ditto
21504         * tests/Makefile.am: ditto
21505         * doc/libtool.texi: document them
21506         * demo/Makefile.am, mdemo/Makefile.am (STATIC): do not use
21507         -static unconditionally, it can't work with --disable-static
21508         * demo/configure.in, mdemo/configure.in: check whether libtool was
21509         configured to build static libraries and, if not, set STATIC to an
21510         empty string
21512 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
21514         * ltmain.in (module, droppeddeps): if libtool could not satisfy
21515         all dependencies of a module, it will only build a static version
21516         of it, and display a warning message
21518 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
21520         * ltconfig.in (aix4*, with_gcc, archive_cmds): fix typo in Andrey
21521         Slepuhin's last patch
21523 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
21525         * Makefile.am (@DIST_MAKEFILE_LIST@): work around Ultrix /bin/sh bug
21526         * tests/nomode.test (must specify a MODE): ditto
21527         Reported by Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
21528         * THANKS: Added Rainer Orth
21530 1999-01-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
21532         * ltconfig.in: No known version of Solaris 2 hardcoded -L paths.
21534 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
21536         * ltmain.in: s/n\'t/ not/
21537         * doc/PLATFORMS: updates for sunos4/m68k and aix
21539 1999-01-20  Andrey Slepuhin  <pooh@msu.ru>
21541         * ltconfig.in (aix4*): check for reworked collect2, always pass
21542         -bnoentry option to linker when building a shared library
21544 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
21546         * ltmain.in (file_magic): follow soft-links before running `file'
21547         on the candidate library; try to avoid entering endless loop
21548         Suggested by Nix <nix@esperi.demon.co.uk>
21550         * ltconfig.in (linux*, solaris*, bsdi4*, sys_lib_search_path):
21551         remove expansion of $LD_LIBRARY_PATH
21552         * ltmain.in (lib_search_path): append the expansion of $shlibpath_var
21553         * doc/libtool.texi: document it
21555         * THANKS: Added Steven Schultz
21557 1999-01-20  Steven M. Schultz <sms@wlv.iipo.gtegsc.com>
21559         * ltconfig.in (bsdi4*, check_shared_deplibs_method): file_magic
21560         (bsdi4*, sys_lib_search_path): add /shlib and other dirs
21562 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
21564         * cdemo/main.c (main): use K&R definition syntax
21565         * mdemo/main.c (test_dl, main): ditto
21566         (test_dl): casts return value of lt_dlsym to appropriate types
21568         * ltmain.in (dlsyms): #define const to nothing if not __STDC__
21570         * ltconfig.in (global_symbol_pipe): #define const to nothing if
21571         not __STDC__
21573         * demo/dlmain.c (main): cast s->address to the appropriate pointer
21574         types, otherwise StunOS4's cc refuses to compile it
21576         * ltconfig.in (sunos4*, without_gnu_ld, with_gcc, archive_cmds):
21577         add -fPIC, because libgcc is multilibbed, and we want the PIC
21578         version of it for shared libraries, otherwise ld complains
21580         * demo/dlmain.c (main): add missing const to declaration of name
21582         * libltdl/ltdl.c (find_module): remove the libdir argument, and
21583         try to  open library only as old_name and dir/dlname
21584         (lt_dlopen): use `installed' variable in .la file to decide
21585         whether to use libdir or objdir
21587         * demo/configure.in (AC_C_CONST): added, for portability
21588         * mdemo/configure.in (AC_C_CONST): ditto
21589         * libltdl/configure.in (AC_C_CONST, AC_C_INLINE): ditto
21590         * libltdl/ltdl.c (LTDL_FILENAME_MAX): use FILENAME_MAX if defined
21591         (FILENAME_MAX): replace all explicit uses with LTDL_FILENAME_MAX
21592         (presym_free_symlists, trim): don't return void, for portability
21593         (lt_dlgetsearchpath): replace (void) with __P((void))
21595         * ltmain.in (compile): when compiling both PIC and non-PIC, write
21596         the PIC object to .libs/.lo and only rename it to .lo after
21597         compiling the .o, to avoid fooling make dependencies
21599         * mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove
21601 1999-01-20  Gary V. Vaughan  <gary@gnu.org>
21603         * TODO: Added inter-library deps for ltlibs.
21605         * THANKS: Added Vladimir Kushnir.
21607 1999-01-20  Vladimir Kushnir  <kushn@mail.kar.net>
21609         * ltconfig.in (freebsd3*): Define `deplibs_check_method' and
21610         `file_magic_command' for freebsd-elf.
21612 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
21614         * TODO: should we also build a `static' copy of a convenience
21615         library out of .o files?
21617         * ltconfig.in (bsdi4*, netbsd*, uts4*, library_names_spec,
21618         soname_spec): removed duplicate dot before $major
21619         Reported by Steven M. Schultz <sms@wlv.iipo.gtegsc.com> (bsdi4*)
21621         * THANKS: added Manfred Weichel
21623 1999-01-20  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
21625         * ltconfig.in (sysv5*): same as sysv4.3*
21627 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
21629         * libltdl/ltdl.c (lt_dlopen): properly detect error condition when
21630         full pathname of non-libtool library is provided
21632         * libltdl/configure.in (libltdl_cv_preloaded_symbols,
21633         HAVE_PRELOADED_SYMBOLS): test whether we support -dl*open
21634         * libltdl/ltdl.c (!HAVE_PRELOADED_SYMBOLS, lt_preloaded_symbols):
21635         define it to an empty list if libtool won't generate it, so as to
21636         avoid link errors.  This will cause silent dlopening failures, but
21637         maybe this is better than failing to link the program...
21639         * libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to
21640         declare lt_preloaded_symbols
21641         * doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto
21643         * ltmain.in (dlpredeps): removed, reverting 1999-01-17's change
21645 1999-01-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
21647         * libltdl/Makefile.am (Makefile): depend on libtool
21649         * ltmain.in (lt_preloaded_setup): function added to symbol list
21650         source file to work around FreeBSD problem
21652         * Makefile.am (check-local): depend on libltdl/Makefile
21654         * mdemo/Makefile.am (mdemo_LDFLAGS, mdemo_LDADD): moved -dlopen
21655         flags to LDADD
21656         * doc/libtool.texi (Using Automake): how to add -dlopen to LDADD
21658 1999-01-19  Gary V. Vaughan  <gary@gnu.org>
21660         From Andrey Slepuhin <pooh@msu.ru>
21661         * ltmain.in (hardcode_action) Oops, misapplied the patch!
21663         * ltconfig.in (compile_dependencylbs): removed this
21664         variable and pick up the library dependencies from $deplibs.
21665         * ltmain.in (compile_dependencylibs): removed this
21666         variable, use deplibs to hold these dependencies.
21668         From Andrey Slepuhin <pooh@msu.ru>
21669         * ltmain.in (hardcode_action) make sure deplibs is set to include
21670         all the extra libs added to compile_command.
21672 1999-01-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
21674         * libtool.m4 (LIBTOOL_DEPS): set it
21675         * libltdl/configure.in (LIBTOOL_DEPS): AC_SUBST it
21676         * libltdl/Makefile.am (libtool): use it
21677         * doc/libtool.texi (AM_PROG_LIBTOOL): document it
21679         * Makefile.am (libltdl.tar.gz): don't create it as part of the
21680         build, since it is likely to become stale if we do
21681         (install-data-hook): create and install libltdl.tar.gz, without
21682         depending on GNU tar
21683         Reported by Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
21685 1999-01-17  Thomas Tanner  <tanner@gmx.de>
21687         * Makefile.am: added libltdl.tar.gz to CLEANFILES
21688         * ChangeLog: some reformatting
21689         * TODO: documentation updates
21690         * doc/libtool.texi: added preliminary libltdl documentation,
21691           updated dlopen and -module documentation,
21692           renamed -avoid-versioning to -avoid-version
21693           documented the libtool script variables compiler_c_o,
21694           compiler_o_lo, need_locks, old_postuninstall_cmds,
21695           postuninstall_cmds, sys_lib_search_path_spec,
21696           fix_srcfile_path, objdir, objext, libext,
21697           documented the two new flags (--ltdl[-tar]) of libtoolize
21698         * libltdl/Makefile.am: incremented the version, removed
21699           libtool dependency so that it can be build independently
21700         * libltdl/configure.in: removed LTDL_SHLIB_EXT hack,
21701           set version to 1.0, use AM_MAINTAINER_MODE,
21702           DLPREOPEN is always supported, check for libtool's objdir variable
21703           (LTDL_OBJDIR)
21704         * libltdl/ltdl.c: some cleanups (moved constants to the beginning
21705           of the file and prefixed all of them with LTDL_, minor optimizations
21706           in find_file() and find_module()), renamed lt_dlpreopen* to
21707           lt_dlpreload* for consistency, removed LTDL_SHLIB_EXT hack,
21708           we don't need unistd.h, DLPREOPEN is _always_ supported,
21709           reverted Alexandre's lt_dlpreopen_default_ change,
21710           try to open the not-installed module before the installed one,
21711           replaced lt_dlsearchpath() with lt_dladdsearchdir(),
21712           lt_dlsetsearchpath() and lt_dlgetsearchpath()
21713         * libltdl/ltdl.h: renamed lt_dlpreopen* to lt_dlpreload*
21714           for consistency, removed the declaration of lt_preloaded_symbols
21715           (should be imported by programs),
21716           reverted Alexandre's lt_dlpreopen_default_ change and added
21717           two new macros LTDL_PRELOADED_SYMBOLS and
21718           LTDL_SET_PRELOADED_SYMBOLS(),
21719           added lt_dladdsearchdir(), lt_dlsetsearchpath() and
21720           lt_dlgetsearchpath()
21721         * libtool.m4: some reformatting
21722         * libtoolize.in: implemented --ltdl, bugfix when checking for
21723           the libtool package directory
21724         * ltconfig.in: removed $thread_safe_flags from Andrey Slepuhin's
21725           AIX patch, renamed sys_lib_search_path to sys_lib_search_path_spec,
21726           some reformatting, fixed typo in deplibs_check_method (unkwnon)
21727         * ltmain.in: documented -o for compile mode, some reformatting,
21728           renamed -avoid-versioning to -avoid-version
21729           renamed sys_lib_search_path to sys_lib_search_path_spec
21730         * mdemo/Makefile.am: use -avoid-version
21731         * mdemo/main.c: use LTDL_PRELOADED_SYMBOLS and
21732           LTDL_SET_PRELOADED_SYMBOLS()
21734 1999-01-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
21736         * ltconfig.in (wlarc): set to either '${wl}' or an empty string,
21737         depending on whether archive_cmds runs CC or LD
21738         (gnu_ld=yes, whole_archive_flag_spec): "$wlarc" instead of '${wl}'
21740         * mdemo/Makefile.am (../libltdl/libltdlc.la): depend on
21741         ../libtool, because ../libltdl/libtool depends on it
21742         (mdemo_debug_*): copy from mdemo_*, adding -static to LDFLAGS
21744         * ltmain.in (dlpredeps): append dependencies from dlopened modules
21745         (but not dlpreopened ones) after all explicitly linked libraries
21747         * ltconfig.in (need_lib_prefix, need_version,
21748         deplibs_check_method): default to unknown, so that we're
21749         remembered that this needs porting; unknown is interpreted as yes,
21750         yes and none, respectively
21751         (freebsd2*, freebsd3*, sunos4*, need_version): set to yes
21752         (freebsd2*, freebsd3*, library_names_spec): libraries without a
21753         version number are not used by `ld'; add $versuffix;
21754         Reported by Ben Jackson <ben@ben.com>
21755         * ltmain.in (deplibs_check_method): alias unknown to none
21756         (need_version): if vinfo was not provided and release info was,
21757         zero out versuffix only if we don't need_version.
21758         * doc/libtool.texi: document what `unknown' means
21760         * libltdl/ltdl.h (lt_dlpreopen_default): reverted to a macro
21761         without arguments, that calls lt_dlpreopen_default_ with
21762         lt_dlpreloaded_symbols
21763         * libltdl/ltdl.c (lt_dlpreopen_default_): renamed from
21764         lt_dlpreopen_default
21765         (find_module) tryall_dlopen old_name first, so that we don't
21766         override statically linked symbols with dlopened ones
21768 1999-01-15  Gary V. Vaughan  <gary@gnu.org>
21770         From Andrey Slepuhin <pooh@msu.ru>
21771         * libtoolize.in (cd $pkgdatadir): Make sure we return the the
21772         working directory when this is done.
21774         From Andrey Slepuhin <pooh@msu.ru>
21775         * ltconfig.in (aix): Use shared library support correctly on
21776         aix4*, and tweak the config for aix3.
21777         * NEWS: added aix3 and aix4 to list of hosts with improved
21778         support.
21779         * THANKS: added Andrey Slepuhin <pooh@msu.ru>.
21781 1999-01-15  Thomas Tanner  <tanner@gmx.de>
21783         * Makefile.am (@DIST_MAKEFILE_LIST@): added a second '$'
21784           before abs_scrdir, removed ltconfig and ltmain.sh from
21785           EXTRA_DIST (automake distributes them by default)
21787 1999-01-14  Thomas Tanner  <tanner@gmx.de>
21789         * autogen: moved faking of the libtool scripts before
21790           the call of automake, so that ltconfig and ltmain.sh
21791           are included in the distribution
21792         * ltconfig.in: when checking whether PIC is supported assume
21793           only on HP/UX that warnings during compilation mean that
21794           PIC is not supported (Thanks to Ron O'Hara)
21795         * THANKS: added Ron O'Hara
21797 1999-01-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
21799         * Makefile.am: Moved ltconfig and ltmain.sh back into srcdir, and
21800         add them to the distribution.  Added work-around if `mv -f' fails.
21801         fix @AINCLUDE_M4_LIST@ and @DIST_MAKEFILE_LIST@ for relative and
21802         absolute specifications of srcdir
21804 1999-01-14  Thomas Tanner  <tanner@gmx.de>
21806         * libltdl/ltdl.c: added variable symbol prefix, added user-defined
21807           library search path (can be set using lt_dlsearchpath()),
21808           added default_preloaded_symbols which are independent of
21809           lt_dlinit/exit
21810         * libltdl/ltdl.h: added lt_dlsearchpath() and
21811           lt_dlpreopen_default()
21812         * mdemo/Makefile.am: use -export-dynamic until libtool
21813           and libltdl are able to handle module dependencies
21815 1999-01-14  Gary V. Vaughan  <gary@gnu.org>
21817         * THANKS: added Mark Elbrecht.
21818         * ltconfig.in (PATH_SEPARATOR): new variable to hold valid $PATH
21819         separator characters for the build host, to support DJGPP
21820         environment.
21821         * ltconfig.in: Use PATH_SEPARATOR instead of hardcoded `:'.
21822         Reported by Mark Elbrecht <snowball3@usa.net>
21824         * cdemo/README: typo: mdemo->cdemo
21826 1999-01-14  Thomas Tanner  <tanner@gmx.de>
21828         * autogen: fake the libtool scripts to help fixing
21829           the bootstrapping problem
21830         * Makefile.am: always configure libltdl, however after building
21831           the libtool scripts,
21832           build the libtool scripts in builddir, not srcdir
21833           (unfortunately this breaks building when srcdir!=objdir,
21834            but it was just plain wrong - needs to be fixed),
21835           build and install libltdl.tar.gz,
21836           copy acinclude.m4 instead of linking them, so that we
21837           can 'make dist' in libltdl,
21838           fixed configuring of subdirectories
21839         * configure.in: removed --enable-ltdl-install - libltdl is supposed
21840           to be installed by packages, not by libtool itself
21841         * libtoolize.in: new flags --ltdl and --ltdl-tar to install libltdl
21842           in packages (--ltdl doesn't work yet),
21843           install only the necessary libtool scripts, not just all
21844           files in pkgdatadir
21845         * mdemo/Makefile.am: removed the rule for libltdl configuration
21847 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
21849         * mdemo/Makefile.am (../libltdl/libtool): mkdir and configure
21850         ../libltdl
21852 1999-01-13  Thomas Tanner  <tanner@gmx.de>
21854         * demo/dlmain.c, libltdl/ltdl.c, ltconfig.in, ltmain.in,
21855           doc/libtool.texi: renamed dld_preloaded_symbols to
21856           lt_preloaded_symbols, symbol lists are 'const'
21857         * cdemo/configure.in: don't check for string.h
21858         * demo/dlmain.c: renamed dld_symlist to lt_symlist,
21859           preloaded symbols are 'const', use lt_ptr_t instead of void*
21860         * demo/foo.h: define lt_ptr_t
21861         * doc/libtool.texi: document lt_preloaded_symbols correctly
21862         * libltdl/Makefile.am, mdemo/Makefile.am: renamed libtest to libltdlc
21863         * libltdl/ltdl.c: fixed some minor typos, renamed dldpre to presym,
21864           bugfix: search in search_path only if we have no directory
21865           and a search_path, in lt_dlsym() check whether symbol != 0
21866         * libltdl/ltdl.h: removed lt_dlpreopen_default()
21867         * ltconfig.in (dlpreopen): removed dld_preloaded_symbol_count
21868         * ltmain.in: added help for -avoid-versioning, -export-symbols,
21869           -module, add @SYMFILE@ if one of -export-dynamic, -dlopen or
21870           -dlpreopen is used
21871         * mail/deplibs.html: added Gordon Matzigkeit's inter-library
21872           dependencies article
21873         * mdemo/Makefile.am: removed -export-dynamic from LDFLAGS
21874           (no longer necessary, since libtool defines lt_preloaded_symbols
21875           when -dlopen is used), initialize with lt_preloaded_symbols
21877 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
21879         * doc/libtool.texi (Test descriptions): cdemo-static works, thanks
21880         to Edouard Parmelan!
21882         * THANKS: added Sebastian Wilhelmi
21884         * ltconfig.in (solaris): define `need_version' to no
21886 1999-01-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
21888         * ltconfig.in (solaris): Define `deplibs_check_method',
21889         `file_magic_command', `need_lib_prefix' and `sys_lib_search_path'
21890         * ltmain.in (file_magic_regex): Add space before matching pattern,
21891         such that it works on solaris (solaris has a tab between the
21892         library name (including the colon) and the `ELF' and such the
21893         `ELF' will never be matched).
21895 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
21897         * ltconfig.in (NM): PATH search was not updated like in
21898         libtool.m4, in last Alexandre Oliva's change to it
21899         (sysv4*, ncr): pass all library dependencies
21900         * ltmain.in (dependency_libs, -R): use `deplib' instead of `arg' to
21901         iterate, otherwise we'd overwrite `arg'
21902         (convenience, old_libs): if --disable-shared, convenience
21903         libraries are just old archives, as .lo's are of no use
21904         * tests/cdemo-static.test: print --disable-shared here
21906 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
21908         * libltdl/configure.in (libltdl_cv_shlibext, LTDL_SHLIB_EXT):
21909         system-dependent extension of shared libraries
21910         (libltdl_cv_shlibpath_var, LTDL_SHLIBPATH_VAR): system-dependent
21911         run-time shared library search path
21912         * libltdl/ltdl.c (dldpre_init, dldpre_exit): unrelate init/exit
21913         from add/remove symlists, so one may add dld_preloaded_symbols
21914         from main(), when only a library will call dldpre_init
21915         (lt_dlopen): use LTDL_SHLIBPATH_VAR, if defined, as secondary
21916         search path.  Also, if a requested .la file cannot be found, try
21917         with the LTDL_SHLIB_EXTension instead.
21919         * ltmain.in (old_archives, oldobjs): use find to SYMDEF here too
21921         * Makefile.am (@DIST_MAKEFILE_LIST@): `$' must be doubled
21923         * configure.in (AC_CONFIG_DIRS): configure only libltdl, and then,
21924         only if --enable-ltdl-install
21925         (CONF_SUBDIRS): list directories that are configured on demand,
21926         but that must be included in the distribution
21927         (ACINCLUDE_M4_LIST, DIST_MAKEFILE_LIST): generated from CONF_SUBDIRS
21928         * Makefile.am (AUTOMAKE_OPTIONS): added version 1.3e and
21929         readme-alpha, to handle README-alpha automatically
21930         (EXTRA_DIST): removed README-alpha
21931         (BUILD_SUBDIRS): subdirectories that are always built
21932         (SUBDIRS): BUILD_SUBDIRS plus BUILD_LTDL
21933         (DIST_SUBDIRS): BUILD_SUBDIRS plus CONF_SUBDIRS, from configure
21934         (all-local, check-local): depend on $(ACINCLUDE_M4_LIST), from
21935         configure, and libtool, so that it is built before subdirs
21936         (configure-subdirs): new target
21937         (configure-subdirs, distdir): depend on $(DIST_MAKEFILE_LIST),
21938         from configure
21939         (@DIST_MAKEFILE_LIST@): create subdir if needed, then run
21940         configure.
21941         On-demand configuration of subdirs at distribution time was
21942         suggested by Gary V. Vaughan <gary@gnu.org>
21944         * libtool.m4, ltconfig.in (NM): search for NM in PATH before
21945         /usr/ccs/bin, /usr/ucb and /bin.  However, if the found one isn't
21946         BSD-compat keep searching.  If no BSD-compat is found, use the
21947         first we found.
21949         * THANKS: added Raffaele Sena
21951 1999-01-13  Raffaele Sena  <raff@aromatic.com>
21953         * libltdl/ltdl.c: replaced RTDL with RTLD
21955 1999-01-13  Manish Singh  <yosh@gimp.org>
21957         * ltconfig.in (osf3*, osf4*, irix6*): include
21958         ${libname}{release}.so for library_names_spec
21960 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
21962         * configure.in (AC_CONFIG_SUBDIRS): added cdemo
21963         * Makefile.am (DIST_SUBDIRS): ditto
21964         (ACINCLUDE_M4_LIST): ditto
21965         * tests/Makefile.am (TESTS): added cdemo-shared.test
21966         * tests/cdemo-static.test: disable shared libraries here
21967         * tests/cdemo-shared.test: disable static libraries here
21968         * doc/libtool.texi (Test descriptions): added cdemo tests
21969         * THANKS: added Edouard G. Parmelan
21971 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
21973         * ltmain.in: fix convenience libraries when static libraries
21974         are disables.
21975         * cdemo/README, cdemo/Makefile.am, cdemo/configure.in, cdemo/foo.h,
21976         cdemo/foo1.c, cdemo/main.c, cdemo/.cvsignore, test/cdemo-conf.test,
21977         test/cdemo-make.test, test/cdemo-exec.test, test/cdemo-static.test:
21978         new tests for convenience libraries.
21979         * autogen, Makefile.am, test/Makefile.am: ditto.
21981         * ltconfig.in, doc/PLATFORMS: Added support for NCR MP-RAS
21982         (i586-ncr-sysv4.3*) with native compiler.
21983         * README, doc/libtool.texi: Added note for NCR MP-RAS compiler.
21985 1999-01-12  Thomas Tanner  <tanner@gmx.de>
21987         * ltmain.in: before using LN_S remove the symlink
21988         * libltdl/ltdl.c: support multiple symbol lists, moved library-
21989           and file searching to separate functions, renamed "preload_libs"
21990           to "dl_dependency_libs", set the LT_SYMBOL_OVERHEAD to the correct
21991           value (7), fix to support lt_dlsym() for not-libtool modules again,
21992           check for invalid handles, when using strdup() check whether
21993           it fails
21994         * libltdl/ltdl.h: declare the lt_dlsymlist type for lt_dlpreopen()
21995         * mdemo/README: rewritten
21996         * mdemo/configure.in: check only for math.h (string.h is no longer
21997           necessary)
21999 1999-01-12  Gary V. Vaughan  <gary@gnu.org>
22001         * configure.in (ltdl-install): Fixed up the indentation so that
22002         `configure --help' is pretty again.
22004 1999-01-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
22006         * ltmain.in, NEWS, doc/libtool.texi: Added support for -R flag
22007         * ltmain.in, doc/libtool.texi: documented that -rpath is the same
22008         as -R for programs
22009         * ltmain.in: softened the instructions for linking with installed
22010         libraries, and noted that libtool can be used to link with them;
22011         documented that -rpath is not required for convenience libraries
22013         * ltconfig.in (symxfrm): don't print $pipe_works twice, once for
22014         each $ac_symprfx
22015         Reported by Godmar Back <gback@cs.utah.edu>
22017         * ltmain.in (convenience, libobjs): get only .o and .lo files from
22018         the files extract from the convenience library.  Some systems,
22019         such as FreeBSD2, will add a SYMDEF file, that is not an object
22020         file, and therefore should not be fed to the linker
22022         * libtool.m4 (AM_SYS_NM_PARSE): while we are at it, we may well
22023         cache the value of ac_cv_sys_symbol_underscore
22025         * libtool.m4 (AM_SYS_NM_PARSE): need for underscore prefix is now
22026         auto-detected, by trying first without, then with it.
22028         * ltconfig.in: ditto
22030 1999-01-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
22032         * configure.in (AC_CONFIG_SUBDIRS): add libltdl, demo, mdemo and
22033         depdemo commented out, so that `dist' works before `check'
22034         (BUILD_LTDL): will contain libltdl if --enable-ltdl-install
22035         * Makefile.am (DIST_SUBDIRS): expand SUBDIRS and add depdemo,
22036         commented out
22037         (SUBDIRS): add $(BUILT_LTDL)
22038         * libltdl/Makefile.am (EXTRA_LTLIBRARIES): add libtest.la, the
22039         same as libltdl but always a convenience library.  Not built by
22040         default.  Both libraries now depend on the libtool script, that
22041         depends on ../libtool and is rebuilt when needed
22042         * mdemo/Makefile.am (mdemo, mdemo.debug): depend on and link with
22043         ../libltdl/libtest.la, that is rebuilt if needed
22044         (mdemo_LDADD): removed $(LIBADD_M), to avoid silent failures
22045         (foo1.la): renamed from libfoo1.la; test removing the lib prefix
22046         * mdemo/foo1.c: renamed libfoo1_LTX symbols to foo1_LTX
22047         * mdemo/main.c: don't include string.h nor math.h, nor refer to
22048         sin nor cos
22049         * tests/mdemo-exec.test: renamed libfoo1.la to foo1.la
22050         * tests/mdemo-inst.test: ditto
22052         * libltdl/ltdl.c (FILENAME_MAX): use it instead of MAX_FILENAME,
22053         and don't redefine it if already defined; default to 1024, as on
22054         most systems
22055         (LT_SYMBOL_LENGTH): renamed from MAX_SYMBOL_LENGTH
22056         (LT_SYMBOL_OVERHEAD): new macro, that accounts for the size of
22057         the _LTX_ separator and the initial underscore
22058         (lt_dlsym): sym now points to a stack buffer (lsym) if possible,
22059         or is dynamically allocated.  If allocation fails, a
22060         buffer_overflow_error is returned.
22062 1999-01-10  Thomas Tanner  <tanner@gmx.de>
22064         * ltmain.in: define dld_preloaded_symbols if at least one of
22065           -export-dynamic, -dlopen or -dlpreopen was specified,
22066           do not include program objects in the symbol list
22067           if -export-dynamic was not enabled
22068         * libltdl/ltdl.c: limit symbols to max. 256 bytes
22069         * mdemo/Makefile.am: build libltdl in a subdirectory,
22070           do not use -export-dynamic for mdemo and mdemo.debug
22071         * tests/mdemo-conf.test,tests/mdemo-make.test,tests/mdemo-inst.test:
22072           do not check for libltdl
22074 1999-01-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
22076         * libltdl/ltdl.c (lt_dlopen): missing strlen in bound test
22078 1999-01-09  Thomas Tanner  <tanner@gmx.de>
22080         * NEWS: support for BSD/OS 4.x was not documented
22081         * demo/Makefile.am: link against libm only if available
22082         * mdemo/Makefile.am: likewise, use -avoid-versioning flag
22083           instead of -avoid-version (typo)
22084         * demo/configure.in: check for libm, string.h and math.h
22085         * mdemo/configure.in: likewise
22086         * depdemo/configure.in: check for libm and math.h
22087         * libltdl/configure.in: check for dlerror
22088         * libltdl/ltdl.c: check for buffer overflows, implemented
22089           dlerror, fixed a severe bug which occured when opening
22090           non-libtool modules, dlopen with the flags GLOBAL and NOW
22091         * mdemo/main.c: report the error using lt_dlerror()
22093 1999-01-08  Gary V. Vaughan  <gary@gnu.org>
22095         * doc/libtool.texi (old_archive_from_new_commands): Documented
22096         this ltcofig variable.
22098 1999-01-07  Gary V. Vaughan  <gary@gnu.org>
22100         * ltmain.sh (cygwin, allow_undefined): Unfortunately, there are
22101         problems with this variable when trying to make a dll which has
22102         undefined symbols, in which case not even a static library is
22103         built.  For now, we need to specify -no-undefined on the libtool
22104         link line when we can be certain that all symbols are satisfied,
22105         otherwise we get a static library.
22107 1999-01-06  Thomas Tanner  <tanner@gmx.de>
22109         * ChangeLog: merged in tests/ChangeLog
22110         * tests/ChangeLog: deleted
22111         * libltdl/ltdl.c: assigned copyright to the FSF
22112         * libltdl/ltdl.h, mdemo/foo*,main.c: likewise
22114 1999-01-06  Gary V. Vaughan  <gary@gnu.org>
22116         * ltmain.in (dllsearchpath): add absolute directory paths to
22117         dllsearchpath so that the wrapper scripts can be called from any
22118         directory (e.g. tests) on cygwin.
22120         * ltconfig.in (cygwin, library_names_spec): revert Alexandre's
22121         change from yesterday to use `-dll.a' suffix.  That change caused
22122         $libname-dll.a to be a symlink to $soname, which isn't even an
22123         `ar' archive.  Before the import library suffix can be changed, we
22124         need to figure out how to handle building objects differently for
22125         linking with an import library versus an equivalent static library.
22127         * TODO: Added details of a Linux wrapper script bug.
22128         Reported by Jeff Garzik <jgarzik@pobox.com>.
22130 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
22132         * ltmain.in (libobjs_save, oldobjs): when building an
22133         old-fashioned archive, use a copy of libobjs saved before
22134         convenience libraries are appended
22136         * libltdl/ltdl.h (_LTDLL_EXPORT, _LTDLL_IMPORT): use cygwin or
22137         unix library import/export primitives; this may be convenient for
22138         people willing to create DLLs
22139         (_LTDLL_EXTERN): select _LTDLL_EXPORT or _LTDLL_IMPORT depending
22140         on _LTDL_COMPILE_
22141         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlpreopen): new function,
22142         that replaces the current preloaded_symbols list with its
22143         argument, and returns the old value, initially NULL
22144         (dldpre_init): don't refer to dld_preloaded_symbols any more
22145         (dldpre_open, dldpre_sym): search preloaded_symbols
22146         (lt_dlpreopen_default): call lt_dlpreopen with
22147         dld_preloaded_symbols, that is declared as extern; it should be
22148         called from the main program or from some static library without
22149         -no-undefined
22150         (lt_dlerror): new function, that returns the error message for the
22151         last error occurred; the error message is kept in the static
22152         variable last_error
22153         * libltdl/configure.in (enable-ltdl-install): moved back from
22154         enable-install; other packages might use enable-install already,
22155         better have fine grained control over this.
22156         * libltdl/Makefile.am (libltdls.la): discarded
22158 1999-01-05  Thomas Tanner  <tanner@gmx.de>
22160         * configure.in: do not configure libltdl by default
22161         * Makefile.am: do not build libltdl by default
22162         * libltdl/Makefile.am: ltdls.lo depends on libtool
22163         * tests/Makefile.am: before starting the tests
22164           make sure that libtool was build
22165         * tests/mdemo-conf.test: configure libltdl
22166         * tests/mdemo-make.test: build libltdl
22168 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
22170         * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
22171         would lose for files with embedded blanks.
22173         * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
22174         ltdll.c into ltmain.in, to avoid its duplication, and added a sed
22175         script to extract it.  Also, create def and base files in $objdir,
22176         and don't remove them after the compilation.
22177         (cygwin, library_names_spec): Create static part of the dll with
22178         suffix -dll.a, to avoid conflicts with actual static libraries.
22179         * ltmain.in: Added ltdll.c, as commented out text
22181 1999-01-01  Thomas Tanner  <tanner@gmx.de>
22183         * NEWS: new BeOS support
22184         * THANKS: added Joseph Beckenbach
22185         * libltdl/ltdl.h: use dllimport/export on Win32
22187 1998-12-31  Joseph Beckenbach III <jrb3@best.com>
22189         * ltconfig.in: added support for BeOS
22190         * ltmain.in (shlibpath_var): added a workaround for
22191           an odd bug in the BeOS R4 sed
22193 1998-12-31  Thomas Tanner  <tanner@gmx.de>
22195         * verified all copyright notices
22196           and updated them to 1999
22197         * TODO: added some things that need to documented
22198         * doc/libtool.texi: -export-symbols is not
22199           supported on all platforms
22200         * doc/PLATFORMS: added a few new platforms
22202 1998-12-30  Thomas Tanner  <tanner@gmx.de>
22204         * NEWS: updated
22205         * THANKS: added Todd Vierling <tv@pobox.com>
22207 1998-12-30  Todd Vierling  <tv@pobox.com>
22209         * ltconfig.in: improved shared object handling on both
22210           a.out and ELF platforms for NetBSD
22212 1998-12-29  Thomas Tanner  <tanner@gmx.de>
22214         * ltconfig.in: do not rely on a leading space when concatenating
22215           variables as suggested by Erez Zadok
22216         * ltmain.in: likewise
22217         * doc/PLATFORMS: updated and reformatted
22218           (thanks to Erez Zadok for the testing)
22220 1998-12-27  Thomas Tanner  <tanner@gmx.de>
22222         * THANKS: added Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
22224 1998-12-26  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
22226         * ltconfig.in: support i486-ncr-sysv4.3.03
22227         shared libraries.
22229         * ltmain.in: before every ln -s, remove the link name
22231 1998-12-25  Thomas Tanner  <tanner@gmx.de>
22233         * depdemo/configure.in: removed last relics of demo
22234         * depdemo/sysdep.h: ditto
22235         * mdemo/Makefile.am: ditto
22236         * libltdl/Makefile.am: fixed the version number, build libltdls if
22237           -enable-install and -enable-dlpreopen are enabled
22238         * libltdl/configure.in: libltdl is version 0.1, not 1.0,
22239           renamed -enable-ltdl-install to -enable-install,
22240           conditionals for libltdls, check for strchr and index,
22241           replaced NULL with 0
22242         * libltdl/ltdl.c: replaced NULL with 0, dlpreopen only if
22243           USE_DLPREOPEN was defined, integrated shl_load code from GModule
22244           (still untested)
22246 1998-12-24  Gary V. Vaughan  <gary@gnu.org>
22248         * libltdl/configure.in: fixup spacing in --enable-ltdl-install
22249         help string so that it lines up nicely for configure --help.
22251         * ltmain.in (dllsearchpath): keep track of what the dll search path
22252         will need to be in the wrapper scripts as deplibs are calculated.
22253         Make sure the wrapper script doesn't end in `.exr', which makes
22254         win32 try to execute it as a binary!
22255         Add the contents of dllsearchpath to $PATH in the wrapper script.
22256         Use the relative path to the wrapped program so that the dll
22257         search path is calculated properly by win32 OSes.
22258         * TODO: removed the item for making wrapper scripts work on win32.
22260         * TODO: removed the reference to making libltdl and demo work on
22261         win32.  They *do* work now that wrapper scripts are functioning.
22263         * ltmain.in (file_magic_command): It turns out that if the
22264         file_magic_command generates huge output (e.g. running `objdump
22265         -f' over a large import lib [say libX11.a]) the expr to check it
22266         against the file_magic_regex blows up.  There is now an optimistic
22267         heuristic, to save only the first 10 lines of running
22268         file_magic_command which (at risk of sounding like Bill) should be
22269         enough for anyone =)O|.
22271         * ltmain.in: Set the compile_dependencylibs and dllsearchpath for
22272         non-libtool libs, or else libdeps only works between ltlibs for
22273         cygwin32.
22275 1998-12-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
22277         * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
22278         long lines to sed
22279         * doc/libtool.texi (sed): very long lines are no longer a problem
22281         * libltdl/Makefile.am: install libltdl conditionally...
22282         * libltdl/configure.in: ... if --enable-ltdl-install is issued
22283         * libltdl/ltdl.c: removed #ifdef DEBUG
22284         * mdemo/Makefile.am (mdemo_debug_LDADD, mdemo_debug_DEPENDENCIES):
22285         use libltdl.la
22287 1998-12-23  Gary V. Vaughan  <gary@gnu.org>
22289         * doc/PLATFORMS: added my cygwin32 box (i686-pc-cygwin32).
22291         * TODO: remind myself of the win32 tasks remaining.
22293         * ltconfig.in (archive_cmds, archive_sym_cmds,
22294         old_archive_from_new_cmds): Fixed a bug which left an a.exe in the
22295         build directory.  Fixed a bug where $soname-def was never deleted.
22297         * ltconfig.in (file_magic_command): new variable holds the command
22298         (including any args) to run to generate the string to match
22299         against the regex in $file_magic.  Use the variable where
22300         necessary. Added to libtool header output.
22301         (deplibs_check_method): use file_magic for win32, but compare the
22302         output of `objdump -f' with the regex (see below).
22303         (archive_cmds, archive_sym_cmds): use compile_dependencylibs for
22304         each $CC invokation (see below).
22306         * ltmain.in: Set allow_undefined to `no' for win32 variants by
22307         default, otherwise it is impossible to link a dll without forcing
22308         the makefile maintainer to figure out whether to pass
22309         --no-undefined at every libtool invokation.
22310         (compile_dependencylibs): save the list of dependency library
22311         flags needed for a deplib build on win32.
22312         (link_against_libtool_libs): commented out the check for this;  if
22313         it is left in, then ltlibs (i.e. *.la files) cannot be deplibs for
22314         subsequent links.
22315         Don't add -lc to the deplibs line for win32 platforms (which don't
22316         have a libc as such).
22317         (file_magic_command): use this to get some output to compare with
22318         the file_magic regex (instead of hardcoding `file' which doesn't
22319         exist on win32.
22320         * doc/libtool.texi (Porting inter-library dependencies): Updated
22321         to document the changes above.
22323         * ltconfig.in (deplibs_check_method): Changed the file_magic regex
22324         to match more linux variants.  This is less lenient than Thomas
22325         Tanner's commit to fix the same problem below.
22326         Reported by Joel Klecker <espy@debian.org>
22327         * THANKS: added Joel Klecker <espy@debian.org>
22329 1998-12-23  Thomas Tanner  <tanner@gmx.de>
22331         * ltconfig.in: fixed file-magic for Linux shared libraries
22332         * ltmain.in: removed the unused -force-static flag
22333         * libltdl/ltdl.c: added strchr, search modules in LTDL_LIBRARY_PATH,
22334           check whether actual module was already dlopened,
22335           read in preload_libs rather than dependency_libs
22337 1998-12-23  Thomas Tanner  <tanner@gmx.de>
22339         * libltdl/Makefile.am: build two versions of libltdl:
22340           libltdl (support native dlopen if available, otherwise dlpreopen),
22341           libltdls (like libltdl, but always support for dlpreopen)
22342         * libltdl/ltdl.c: ditto
22343         * libltdl/configure.in: warn if dlopen is not supported
22344         * mdemo/Makefile.am (mdemo.debug): use libltdls
22346 1998-12-22  Gary V. Vaughan  <gary@gnu.org>
22348         * ltconfig.in: revert Thomas Tanners change to create all
22349         libraries without the `lib' prefix on win32, otherwise `gcc foo.c
22350         -lbar' can't find libbar.a.
22352 1998-12-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
22354         * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
22355         dependency hack
22357 1998-12-21  Thomas Tanner  <tanner@gmx.de>
22359         * ltconfig.in: indentation is now 8 character wide tabs
22360         * ltmain.in: ditto
22361         * ChangeLog: ditto
22362         * ltmain.in: renamed check_shared_deplibs_method to
22363           deplibs_check_method (we_dont_want_too_long_variable_names :)
22364         * doc/libtool.texi (Porting inter-library dependencies): ditto
22365         * depdemo/.cvsignore: renamed hell* to depdemo*, added *.lo,*.la
22366         * mdemo/.cvsignore: ditto
22368 1998-12-21  Gary V. Vaughan  <gary@gnu.org>
22370         * libtool.m4 (AM_SYS_NM_PARSE): apparently  __ptr_t is predefined
22371         on some systems - use lt_ptr_t instead.
22372         * ltconfig.in: ditto.
22373         * ltmain.in: ditto.
22375         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): use an AC_SUBST to pass
22376         the result of this into the compile rather than AC_DEFINE which
22377         breaks when building with older versions of autoconf.
22378         * ltconfig.in (symxfrm): Don't put the leading underscore back
22379         with the global_symbol_pipe.
22380         * demo/dlmain.c (main): No need to specialcase underscores in
22381         dld_preloaded_symbols - it is fixed by symxfrm above!
22382         * libltdl/configure.in: use AM_SYS_SYMBOL_UNDERSCORE from
22383         libtool.m4 rather than reinvent the wheel here =)O|
22385         * ltmain.in:  Fix deplibs methods to not rely on a.out (cygwin
22386         uses a.exe!).
22388         * libltdl/configure.in: Cleanups - fix header comment and emacs
22389         local-vars.
22391         * demo/dlmain.c (win32_force_data_import_address): a nasty hack
22392         to force the address of imported data symbols into
22393         dld_preloaded_symbols on win32, which does data imports
22394         differently to function imports (sheesh!).  This functionality
22395         needs to be moved into the dld_preloaded_symbols generation code.
22396         demo/helldl with static linking is broken on win32 by this change,
22397         probably until after libtool-1.3 =(O|
22398         * demo/foo.h: make sure __CYGWIN32__ is always defined on cygwin32
22399         systems.  Use the correct __declspec macro for lib exports/imports
22400         on cygwin32.
22401         * demo/foo.c, demo/hello.c: Make sure we tell foo.h that these
22402         sources are inside libfoo, and want to export symbols.
22404 1998-12-20  Thomas Tanner  <tanner@gmx.de>
22406         * autogen: configure demo, depdemo, libltdl and mdemo
22407         * tests/mdemo-exec.test: renamed hell* to mdemo*
22408         * tests/mdemo-inst.test: ditto
22410 1998-12-19  Thomas Tanner  <tanner@gmx.de>
22412         * libltdl/Makefile.am: build a normal libtool library
22413         * libltdl/ltdl.c: get LTDL_LIBRARY_PATH but don't make use of it yet,
22414           some reformatting
22415         * ltmain.in: fixed a bug which listed symbols in
22416           dld_preloaded_symbols twice
22417         * TODO: removed symbol export lists and deplibs
22419 1998-12-18  Thomas Tanner  <tanner@gmx.de>
22421         * ltconfig.in: added need_lib_prefix and need_version,
22422           which determine whether we must prefix modules with 'lib'
22423           and whether versioning is required for libraries.
22424         * ltmain.in: allow modules names without 'lib' prefix,
22425           new -avoid-versioning option
22426         * doc/libtool.texi (link flags): updated documentation for -module,
22427           added -avoid-versioning
22428         * doc/libtool.texi (libtool script contents):
22429           documented the two new flags and archive_sym_cmds
22430         * doc/libtool.texi (tests):
22431           added (partially very short) documentation for assign.test,
22432           nomode.test, quote.test, sh.test
22433         * libltdl/ltdl.c: canonicalize module names,
22434           some cleanups and bugfixes,  __ptr_t is predefined on
22435           some systems - use lt_ptr_t instead
22436         * mdemo/: renamed hell* to mdemo* (hell is already used in
22437           demo), updated the documentation, import sin and cos in main
22438           program rather than linking libfoo1 statically
22440 1998-12-17  Gary V. Vaughan  <gary@gnu.org>
22442         * libtool.m4 (AM_PROG_LIBTOOL): Added AC_PREREQ(2.12) to prevent
22443         people using libtool with old autoconfs that don't provide the
22444         features we need.
22446 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
22448         * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
22450         * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
22452         * Makefile.am (cvs-dist): our release tags are in lower case
22453         (cvs-diff): ditto
22454         (EXTRA_DIST): added README-alpha
22455         * README-alpha: minor adaptations
22456         * demo/Makefile.am, mdemo/Makefile.am, depdemo/Makefile.am:
22457         removed comment about special needs for distribution
22458         * depdemo/Makefile.am: don't generate dependencies
22459         * depdemo/configure.in: modified version number
22461         * ltmain.in (-force-static, force_static): removed
22462         * libltdl/Makefile.am (CFLAGS): ditto
22463         * libltdl/configure.in: check for memory.h, rindex() and
22464         dlpreopening.  Fixed NEED_USCORE caching policy.
22465         * libltdl/ltdl.h (lt_dlsym): make the name argument const
22466         * libltdl/ltdl.c (types): new variable: head of list of available
22467         dlopening mechanisms
22468         (lt_dltype_t): interface of a dlopening mechanism, with pointers
22469         to functions for init, exit, open, close and sym
22470         (lt_dlhandle_t): added pointer to interface type
22471         (strdup): don't name it strdup; it can be troublesome
22472         (strrchr): ditto; use rindex if available
22473         (LIBTOOL_STATIC): check HAVE_DLPREOPEN instead, and move to the
22474         end of the file, so that it becomes the header of the list
22475         (all): renamed all interface-implementation functions, to avoid
22476         name clashes, and created lt_dltype_t nodes for all of them
22477         (lt_dlinit): initialize all available interfaces; remove those
22478         that fail from the list.  Return failure only if no interfaces
22479         could be initialized.
22480         (lt_dlexit): return number of failures
22481         (tryall_dlopen): try to open the library with all available
22482         interfaces
22483         (lt_dlopen): use tryall_dlopen; increased size of fixed buffers.
22484         We should probably make these bound-checked or dynamically
22485         allocated for the final release!  Fix bug when filename did not
22486         contain slashes; should we check for `\\' too?  Try old_library if
22487         everything else fails.
22488         (lt_dlclose): use the interface type for closing
22489         (lt_dlsym): make `symbol' const, use interface type for looking up
22490         * mdemo/Makefile.am: moved mdemo/modules/* back into mdemo
22491         (SUBDIRS): removed
22492         (libfoo2_la_LDFLAGS): added -static; nice test.  However, since it
22493         causes -lm to linked into hell*, it causes tests that should fail
22494         to pass
22495         (noinst_HEADERS): no need to install foo.h
22496         * mdemo/configure.in: remove modules/Makefile
22497         tests/mdemo-exec.test: updated accordingly
22499         * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
22500         maintainers.  Detailed expected failures of libltdl+mdemo.  Listed
22501         recent ports.  Added full URL for the home page.  Note that
22502         libtool C program is unusable.
22504 1998-12-16  Bruno Haible  <haible@ilog.fr>
22506         * doc/libtool.texi (Tested platforms): broken `sed' programs
22508 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
22510         * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
22511         Tanner, now that they're AUTHORS
22513 1998-12-16  Stephan Kulow  <coolo@kde.org>
22515         * ltmain.in (freebsd-aout, freebsd-elf): added missing dot to
22516         versuffix
22518 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
22520         * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
22521         (libtool): automatically update
22523         * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
22524         * libltdl/ltdl.c: include them
22526         * demo/configure.in (BINARY_HELLDL): test whether dlopen is
22527         supported at configure time
22528         * demo/Makefile.am (helldl): use automake conditionals to build
22529         helldl as a script or as a binary program
22531         * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
22532         (clean-local): don't clean libltdl any more
22533         * tests/ltdl-conf.test: removed
22534         * tests/ltdl-inst.test: ditto
22535         * tests/ltdl-make.test: ditto
22536         * tests/ltdl-unst.test: ditto
22537         * tests/mdemo-make.test: updated accordingly
22538         * tests/mdemo-inst.test: ditto
22539         * tests/mdemo-unst.test: ditto
22540         * doc/libtool.texi: ditto
22542         * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
22543         only for -force-static; it should be removed soon, before people
22544         start to use it
22546         * configure.in (AC_CONFIG_SUBDIRS): added libltdl
22547         * Makefile.am (SUBDIRS): build libltdl by default
22548         (DIST_SUBDIRS): simplify distribution of demo and mdemo
22549         (libtool, clibtool, libtoolize, ltconfig, ltmain.sh): add
22550         srcdir where appropriate
22551         (ACINCLUDE_M4_LIST): new rule for maintaining links from
22552         acinclude.m4 to libtool.m4
22553         (*demo/Makefile.in): don't update autoconf/automake files any
22554         more; make check is needed
22556 1998-12-14  Gary V. Vaughan  <gary@gnu.org>
22558         * ltconfig.in (archive_cmds): tweaked for cygwin b18->b20.1
22559         compatibility and fixed a bug with generating the export
22560         definitions file.  This is only tested on b20.1, but should
22561         work back to b18 at least.
22563 1998-12-11  Thomas Tanner  <tanner@gmx.de>
22565         * ltmain.in: -module implies now -export-dynamic,
22566           dlpreopen files if we're linking statically
22567         * doc/libtool.texi (link flags): added documentation for -module
22568           and the tests for mdemo and libltdl
22569         * mdemo/Makefile.am: replaced -dlpreopen with -dlopen
22571 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
22573         * PORTING: removed the text Akim Demaille converted to .texi
22575 1998-12-09  Akim Demaille  <demaille@inf.enst.fr>
22577         * doc/libtool.texi: converted inter-library dependencies
22578         instructions from PORTING
22580 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
22582         * ltmain.in (convenience, deplibs): propagate dependencies
22583         * libltdl/Makefile.am (noinst_HEADERS): don't install ltdl.h yet
22584         (noinst_LTLIBRARIES): ditto for libltdl.la
22586 1998-12-08  Gary V. Vaughan  <gary@gnu.org>
22588         * README-alpha: adapted the release procedure from
22589           automake/HACKING.
22590         * Makefile.am: adapted the cvs-dist and cvs-diff rules from
22591           automake/Makefile.am.  I guess this is probably safe to use
22592           already, but I didn't test it as it tags the CVS tree.  If
22593           it needs tweaking, we'll find out come 1.2d.
22595 1998-12-08  Thomas Tanner  <tanner@gmx.de>
22597         * ltconfig.in: fixed some typos in archive_sym_cmds
22598         * ltmain.in: replaced basename with a sed expression
22600 1998-12-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
22602         * configure.in: we no longer use PRCS
22604         * doc/libtool.texi (author): listed all the AUTHORS
22605         (Dlopen issues): added reference to libltdl, still undocumented
22606         (C++ libraries): it's not *that* simple, after all :-(
22607         (Inter-library dependencies): they're back!
22609 1998-12-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
22611         * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
22612         work, use `test a = b' instead
22614         * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
22616         * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
22617         not available
22619 1998-12-04  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
22621         * ltconfig.in: Port to SCO UnixWare 7.x.
22623 1998-12-03  Thomas Tanner  <tanner@gmx.de>
22625         * ChangeLog: converted CR/LF back to CR format
22626         * ltconfig.in: new variable sys_lib_search_path for searching
22627         of installed libraries, export archive_sym_cmds and
22628         sys_lib_search_path
22629         * ltmain.in: use sys_lib_search_path, removed extradeplibs
22630         (they're not portable)
22632 1998-12-02  Gary V. Vaughan  <gary@gnu.org>
22634         * libltdl/configure.in: look for string.h or else strings.h, and
22635         also check for ANSI strrchr() function.  Fix `undescore before
22636         symbols' macro to not rely on a.out (cygwin uses a.exe!).  Fix
22637         `underscore for dlsym' to set cache variable properly, not just in
22638         environment of AC_DEFINE(NEED_USCORE).
22639         * libltdl/ltdl.h (__ptr_t): for K&R compatibility using char*.
22640         * libltdl/ltdl.c (strrchr): fallback function incase none is
22641         defined in libc.
22642         (trim, ltdlopen): replace rindex with ANSI strrchr.
22643         Add static function declarations so that we get type checking with
22644         ANSI compilers.  Use __ptr_t instead of void*.
22646 1998-12-01  Thomas Tanner  <tanner@gmx.de>
22648         * ltconfig.in: added -export-symbols support for GNU ld and
22649         Solaris (untested), archive_sym_cmds for -export-symbols
22650         * doc/libtool.texi, ltmain.in: -export-symbols is now
22651         independent from -export-dynamic and does not work for modules
22652         anymore
22653         * ltmain.in: added some checks for -export-symbols
22654         * mdemo/modules/Makefile.am: replaced -export-symbols with
22655         -export-dynamic since it doesn't work for modules
22657 1998-12-01  Gary V. Vaughan  <gary@gnu.org>
22659         * README: Updated homepage pointer to gnu libtool page.
22661         * ltconfig.in (ltdll.c): update the ltdll.c file for cygwinb20.
22662         Based on code from Mumit Khan <khan@xraylith.wisc.edu>.
22663         (archive_cmds): correct typo libtool.c->ltdll.c.  Update shell
22664         commands for cygwin32.
22666         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): New macro; find out
22667         whether compiled symbols have an extra leading underscore.
22668         (AM_SYS_NM_PARSE): New macro (converted to m4 from ltconfig.in);
22669         find a sed expression to parse global symbols from the output of
22670         $NM.
22671         (AM_PROG_LIBTOOL): require AM_SYS_NM_PARSE and
22672         AM_SYS_SYMBOL_UNDERSCORE.
22673         * demo/dlmain.c (main): Remove a single leading underscore from
22674         compiled symbol names if necessary.
22676 1998-12-01  Alexandre Oliva  <oliva@dcc.unicamp.br>
22678         * config.guess, config.sub: imported from autoconf pre-2.13
22680 1998-11-27  Gary V. Vaughan  <gary@gnu.org>
22682         * libtool (AM_PROG_LD): Oops... we need to know the host_os for
22683         the changes below.  I'm not sure whether mingw32 and os2 support
22684         UNC paths, if they did we wouldn't need the check, we could use
22685         UNC paths on all three; or if the bug with $LD not being
22686         shell-meta escaped was fixed, we could use '\\' separators on all
22687         three. AC_REQUIRE'ed AC_CANONICAL_HOST.
22689         * libtool.m4 (AM_PROG_LD): Cannonicalize the absolute path for the
22690         ld program;  The order is funny to provide canonicalization to
22691         paths with '\\' separators as well as '/'.
22692         * ltconfig.in: ditto.
22694         * AUTHORS: Added myself as a co-maintainer.
22696         * ltconfig.in (archive_cmds): The `;\' in a compound statement is
22697         expanded wrongly for cygwin32, mingw32, aix3 and aix4. Changed to
22698         `;'.
22700 1998-11-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
22702         * libtool.spec (URL): point to www.gnu.org
22703         (Source): point to ftp.gnu.org
22705         * Makefile.am (EXTRA_DIST): removed libtool.prj
22706         Reported by Akim Demaille <demaille@inf.enst.fr>
22708 1998-11-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
22710         * ltconfig.in (echo): avoid shell error messages when we're
22711         testing for large command line support
22712         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
22714         * doc/PLATFORMS: updated last-tested release for platforms I've
22715         got access to
22717         * THANKS: added Chris P. Ross
22719 1998-11-24  Chris P. Ross  <cross@eng.us.uu.net>
22721         * ltconfig.in: added recognition of the dynamic linker on BSD/OS 4.x
22722         * README: added BSD/OS 4.x to the list of supported platforms
22723         * doc/PLATFORMS: added BSD/OS 4.x support for various host id's
22725 1998-11-24  David Heine  <dlheine@truffle.Stanford.EDU>
22727         * ltmain.in (pass_all): actively pass the flags
22729 1998-11-24  Thomas Tanner  <tanner@gmx.de>
22731         * depdemo: added inter-library dependencies demo (doesn't work yet!)
22732         * AUTHORS: added myself to the list of maintainers
22734 1998-11-22  Thomas Tanner  <tanner@gmx.de>
22736         * libltdl: added support for .la files, LGPL license,
22737         K&R compatibility, some API changes and bugfixes
22738         * ltmain.in: renamed -module flag (for compiling) to -force-static,
22739         define -DSTATIC when compiling static .o files,
22740         do not include directories in dld_preloaded_symbols
22741         * mdemo: modified mdemo to work with the new libltdl
22742         * tests/mdemo-exec.test, tests/mdemo-inst.test: use .la files
22744 1998-11-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
22746         * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
22747         header files defining it.
22749         * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
22750         libraries with gcc -shared if using gcc without GNU ld.
22752         * ltconfig.in: replaced occurrences of solaris2 with solaris, to
22753         prepare for Solaris 7
22755 1998-11-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
22757         * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen -> -dlopen
22758         (hell_LDFLAGS): added -export-dynamic and -dlopen
22759         (SUBDIRS, INCLUDES): added modules directory
22760         (foo1.c, foo2.c, foo.h, libfoo1.sym, libfoo2.sym): moved to modules
22761         * Makefile.am: ditto
22762         * tests/mdemo-exec.test, tests/mdemo-inst.test: libraries moved
22763         * mdemo/modules/Makefile.am: new file
22765         * */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies
22767         * ltmain.in: missing `test' between `&&' and `"$module"'
22769         * ltconfig.in (echo_test_string): the whole ltconfig script was
22770         too much for DU4.0's ksh, but the first 50 lines will be enough.
22772         * ltmain.in (installed): new variable defined within a .la file,
22773         so that libtool can now link already-installed libraries into a
22774         program.
22775         * NEWS: ditto
22776         * doc/libtool.texi (Linking executables): document it
22778         * ltmain.in (output_objdir): compute it from $output, not $arg
22780         * tests/mdemo-inst.test (libltdl): install it
22781         * tests/mdemo-unst.test (libltdl): uninstall it
22782         * tests/Makefile.am (TESTS): list ltdl-unst.test before mdemo-conf.test
22784 1998-11-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
22786         * NEWS: -module and libltdl
22787         * mdemo/Makefile.am: ../libltdl is within $(srcdir)
22789 1998-11-18  Thomas Tanner  <tanner@gmx.de>
22791         * libltdl, Makefile.am: added libltdl (a system independent
22792         dlopen wrapper library extracted from mdemo)
22793         * ltmain.in: added -module flag for compiling and linking of
22794         modules. If enabled it compiles always both .o (with -DLT_RENAME)
22795         and .lo files
22796         * mdemo: modified mdemo to work with libltdl
22797         * tests/ltdl*: added tests for libltdl
22799 1998-11-16  Steve Price  <sprice@hiwaay.net>
22801         * ltconfig.in: when $host_os is freebsd[23]* determine whether
22802         the current linker format is a.out or ELF
22803         * ltmain.in: add two new $version_type's, freebsd-aout and
22804         freebsd-elf, to support above change
22806 1998-11-16  Stephan Kulow  <coolo@kde.org>
22808         * ltconfig.in: extent no_builtin_flag to contain -fno-rtti and
22809         -fno-exceptions in case we compile with a gcc, that supports
22810         this options (egcs and gcc >= 2.8)
22812 1998-11-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
22814         * ltmain.in (C_compiler): copy $CC before it is overwritten with
22815         command-line compiler, so that we can use it to compile C sources
22816         generated during the build.  This fixes the problem that showed up
22817         with -export-dynamic of C++ programs in egcs 1.1.
22818         * NEWS: ditto
22820 1998-11-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
22822         * PORTING: Porting instructions are in the libtool manual already
22824         * NEWS: Mention -export-symbols and new dlpreopen
22826 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
22828         * ltmain.in (IFS): revert Gary's patch when parsing version
22829         information; we still use `:' here :-)
22831         * NEWS: updated
22832         * PORTING: new file, with general instructions and inter-library
22833         dependencies tips
22835 1998-11-11  Gary V. Vaughan  <gary@gnu.org>
22837         * ltconfig.in: make use of '~' field separator in reload_cmds,
22838         old_archive_from_new_cmds, old_archive_cmds, archive_cmds,
22839         old_postinstall_cmds, postinstall_cmds, old_postuninstall_cmds,
22840         postuninstall_cmds and finish_cmds, so that the semi-colons inside
22841         if/then/else/fi and for/do/done etc. do not break the eval loop in
22842         ltmain.in (below).
22843         * ltmain.in: changed all of the eval loops to use an IFS of `~',
22844         to allow differentiation between the end-of-statement-;
22845         (now `~' is used) and end-of-substatement-; (still `;').  This
22846         fixes AIX and win32 at least.
22848 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
22850         * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
22851         prepended by the compiler
22853 1998-11-10  Toshio Kuratomi  <badger@prtr-13.ucsc.edu>
22855         * ltconfig.in: re-enable deplibs
22856         * ltmain.in: support deplibs, at least for GNU/Linux/x86
22857         Updated to current libtool by Thomas Tanner  <tanner@gmx.de>
22859 1998-11-10  Gordon Matzigkeit  <gord@trick.fig.org>
22861         * ltmain.in (link): Make the relink warning less harsh.
22863 1998-11-07  William M. Perry  <wmperry@aventail.com>
22865         * ltconfig.in (aix3, aix4): uniquify symbol names in archive_cmds
22867 1998-11-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
22869         * ltconfig.in: add --falback-echo, to be used if everything else
22870         fails.  The tests now check the behavior of $echo for very large
22871         strings, because some echo commands would just core dump (e.g.,
22872         Solaris' printf).  If too large strings fail, smaller ones are
22873         tested.
22874         (ltecho): arrange that, if the --fallback-echo method is selected,
22875         echo will be defined in the libtool script so as to re-run itself,
22876         not ltconfig
22877         * ltmain.in: add --fallback-echo
22878         (qecho) ensure that, if --falback-echo is being used, qecho is
22879         defined with the full pathname of the libtool script
22881         * tests/sh.test (test X): ensure that the double-quote supposed to be
22882         reported is really reported
22884 1998-11-07  Thomas Tanner  <tanner@gmx.de>
22886         * mdemo/main.c: removed hardcoded library names; link against -lm
22887         * tests/mdemo-exec, tests/mdemo-inst: pass the library names
22888         to the program
22890 1998-11-07  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
22892         * README: Added DG/UX
22893         * doc/PLATFORMS: ditto
22895 1998-11-04  Michael Tiemann  <tiemann@cygnus.com>
22897         * ltconfig.in (irix6): it's a little bit different from irix5
22899 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
22901         * THANKS: Added Thomas Tanner and Gary V. Vaughan
22903         * ltconfig.in, ltmain.in: updated and fixed the patches below
22905 1998-11-04  Thomas Tanner  <tanner@gmx.de>
22907         * mdemo/*: added new demo to demonstrate building of dlopenend
22908         modules
22909         * tests/Makefile.am, tests/mdemo*: added some tests for mdemo
22911 1998-11-04  Gary V. Vaughan  <gary@gnu.org>
22913         * demo/configure.in: added AC_EXEEXT macro so that the tests can
22914         work on cywin32/mingw32 hosts.  This requires the current CVS
22915         autoconf
22917 1998-11-04  Thomas Tanner  <tanner@gmx.de>
22919         * ltmain.in: New flag -export-symbols; new dlpreopen system
22920         * demo/dlmain.c: removed dld_preloaded_symbol_count
22922 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
22924         * ltmain.in: On installation, don't get confused if the same name
22925         appears more than once in the list of library names.
22927 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
22929         * ltconfig.in: Add objext and libext variables.  Check for object
22930         suffix.  Check for mingw32* as well as cygwin32*.  Use objext when
22931         testing compiler.  Add support for Visual C++ on cygwin32 when not
22932         using gcc.  Add objext, libext, and fix_srcfile_path to generated
22933         libtool script.
22934         * ltmain.in: Use .${objext} rather than .o.  Use fix_srcfile_path
22935         if it is set.  Check for .obj as well as for .o, and for .lib as
22936         well as for .a.  Use .${libext} rather than .a when creating old
22937         libraries.
22938         * libtoolize.in: Change initial /bin/sh to @SHELL@.
22939         * libtool.m4 (AM_PROG_LIBTOOL): Add AC_REQUIRE for
22940         AC_CANONICAL_BUILD, so that autoconf doesn't get mixed up by the
22941         AC_REQUIRE in AC_CHECK_TOOL.
22943 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
22945         * ltconfig.in: Look in the right directory for libtool.c in
22946         archive_cmds for cygwin32.
22948 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
22950         * ltconfig.in: Fix cygwin32 support to avoid using a double
22951         extension, to delete the def file, to set version_type to windows,
22952         and to include versuffix in the DLL name.
22953         * ltmain.in: Add support for a version_type of windows.
22955 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
22957         * ltconfig.in: Add cygwin32 support.
22958         * libtool.m4 (AM_PROG_LIBTOOL): Call AM_SYS_LIBTOOL_CYGWIN32 on a
22959         cygwin32 host.  Pass DLLTOOL and AS to ltconfig.
22960         (AM_SYS_LIBTOOL_CYGWIN32): New macro.
22962 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
22964         * libtool.m4 (sco): fix typo
22966 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
22968         * ltconfig.in: On AIX, don't treat GNU ld specially.
22970 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
22972         * ltconfig.in (hardcode_minus_L): Revert Ian's patch for
22973         ltconfig.in.  Although -L hardcoding is not used with GNU ld, it
22974         does happen, so hardcode_minus_L must be set to yes.
22976         * ltconfig.in (compiler_o_lo): check whether we can write directly
22977         to a .lo
22979         * ltmain.in (compiler_o_lo): if not, write to .o and rename it
22981 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
22983         * ltconfig.in: For sunos4 using GNU ld, set hardcode_minus_L to
22984         no.
22985         * ltmain.in: Add some hacks to make SunOS --enable-shared work
22986         when using GNU ld.
22988 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
22990         * THANKS: Added Marc J. Fraioli
22992 1998-11-04  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
22994         * ltconfig.in (dgux): new supported platforms
22996 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
22998         * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
22999         available, fallback to not so safe mechanism, by setting
23000         need_locks to warn
23001         * ltmain.in (need_locks): when need_locks is set to warn, use the
23002         lockfile to try to fail in case of incorrect concurrent builds
23004         * THANKS: Added Eric Estievenart
23006 1998-11-04  Eric Estievenart  <eric@via.ecp.fr>
23008         * doc/libtool.texi (Compile mode): Document that -o is fully
23009         supported.
23011         * libtool.m4 (libtool-lock): new ARG_ENABLE; sets (need_locks)
23012         * ltconfig.in (disable-lock): control need_locks
23013         (hard_links): check whether hard-links can be used for locking
23014         * ltmain.in (need_locks): use $output_obj.lock for locking
23016 1998-11-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
23018         * ltmain.in: correctly create libraries and programs with
23019         directory components in their names
23021 1998-11-03  Eric Estievenart <eric@via.ecp.fr>
23023         * ltmain.in (output_obj): typo
23025 1998-11-02  Ian Lance Taylor  <ian@cygnus.com>
23027         * ltconfig.in: For sunos4, add ${libname}.so$versuffix to
23028         library_names_spec.
23029         * ltmain.in: For version_type of sunos, set versuffix even if
23030         -version-info was not used.
23032 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
23034         * ltmain.in (libobj): default value must not contain directory
23035         components
23037 1998-11-02  Eric Estievenart <eric@via.ecp.fr>
23039         * ltconfig.in (compiler): detect if the compiler supports
23040         -c and -o flags, create a variable compiler_c_o. Also issue
23041         a big warning if it is not supported
23043         * ltmain.in (compile): enable the -o option as input for libtool.
23044         The objects are not moved if the compiler supports -o with -c.
23045         Sources and objects can contain relative directories.
23046         (link): enable the linking of executables into relative directories
23048 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
23050         * AUTHORS: added myself as a co-maintainer
23051         * THANKS: and removed my name from here
23053         * autogen: new script; run it to bootstrap libtool after checking
23054         it out from CVS
23056         * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
23057         suggested by Robert Lipe <robertl@dgii.com>
23059 1998-10-31  Gordon Matzigkeit  <gord@trick.fig.org>
23061         * demo/Makefile.am (hc-libpath): Use parameters from the libtool
23062         in the top build directory, since the one in the demo directory is
23063         not guaranteed to exist.
23065 1998-10-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
23067         * demo/Makefile.am (objdir): there are no longer quotes around
23068         objdir in the libtool script
23070 1998-10-27  Gordon Matzigkeit  <gord@trick.fig.org>
23072         * ltconfig.in (dynamic_linker): Echo the result to fd 6, so that
23073         --silent works correctly.  From William M. Perry.
23075 1998-09-24  Gordon Matzigkeit  <gord@trick.fig.org>
23077         * ltmain.in (link): Fix problems when building only static
23078         libraries.  From Owen Taylor.
23080 1998-08-20  Gordon Matzigkeit  <gord@trick.fig.org>
23082         * ltmain.in (install): When library_names_spec has redundancies,
23083         avoid deleting the main library when installing symlinks.  From
23084         Jeff Dairiki.
23085         (link): Get rid of backticks in a here doc comment.
23086         This causes segfaults on Solaris 2.  From Aleksandar Bakic.
23087         (finish): Don't display messages
23089         * ltconfig.in (archive_cmds): On HP-UX 9, make sure we don't try
23090         to move a file to itself.  From Jeff Dairiki.
23092 1998-08-19  Gordon Matzigkeit  <gord@trick.fig.org>
23094         * ltconfig.in: Make changes to accomodate ltmain.c.
23096         * Makefile.am (clibtool): New target for the C version of libtool.
23098         * ltmain.c: Experimental C version of libtool.
23100 1998-07-10  Ian Lance Taylor  <ian@cygnus.com>
23102         * ltmain.in (install): Test against both $SHELL and /bin/sh.
23104 1998-06-30  Gordon Matzigkeit  <gord@trick.fig.org>
23106         * ltmain.in: Convenience archive support.  From Ulrich Drepper.
23108         * ltconfig.in (postinstall_commands): Change libraries to be
23109         executable on Solaris in order to prevent ldd from moaning.  From
23110         Julian Gosnell.
23111         (whole_archive_flag_spec): New variable to shortcut convenience
23112         archive expansion.  From Ulrich Drepper.
23114 1998-06-11  Gordon Matzigkeit  <gord@profitpress.com>
23116         * ltconfig.in, ltmain.in: Change globs to accept forward slashes
23117         in absolute directory names used on DOS-like systems.  From Robert
23118         S. Maier.
23120 Thu May 28 18:59:08 1998  Ian Lance Taylor  <ian@cygnus.com>
23122         * ltconfig.in: Use $SHELL when invoking shell scripts.
23124 1998-05-21  Gordon Matzigkeit  <gord@profitpress.com>
23126         * ltmain.in (compile): Don't have `-static' turn off libtool
23127         libraries, so that people can use it just to guarantee that `.o'
23128         files exist.  Suggested by David Mosberger-Tang.
23130 1998-05-18  Gordon Matzigkeit  <gord@profitpress.com>
23132         * ltmain.in (link): Possibly reexec the shell from within the
23133         wrapper script.
23134         Allow `-version-info' and `-release' to coexist again.  If people
23135         want to shoot themselves in the foot, I'd better let them do so,
23136         so that people who are smart enough not to can squeeze out another
23137         ounce of functionality.  From Tim Janik.
23138         (version_vars): Delete dead variable.
23140         * ltconfig.in (hardcode_minus_L): FreeBSD 3.0 doesn't hardcode, at
23141         last.  Reported by Jason Nordwick.
23143         * libtoolize.in, ltconfig.in, ltmain.in: Change a bunch of `if
23144         test ...; then : ; else ...' constructs to `if test ! ...; then
23145         ...', for clarity.
23147 1998-05-17  Gordon Matzigkeit  <gord@profitpress.com>
23149         * ltmain.in (LC_ALL, LANG): Save these values and restore them
23150         during execute mode.  From Pavel Kankovsky.
23151         (mode): Accept strace and truss as programs that throw us into
23152         execute mode.  From Pavel Kankovsky.
23154 1998-05-07  Ian Lance Taylor  <ian@cygnus.com>
23156         * ltconfig.in: Don't use .$versuffix or .$major.  Instead, assume
23157         the variable will include any required prefix.
23158         * ltmain.in: If no -version-info option was used, produce empty
23159         version strings rather than 0.0.0.  When making library symlinks,
23160         avoid making a symlink if the name would be the same.
23162 1998-04-27  Gordon Matzigkeit  <gord@profitpress.com>
23164         * ltmain.in (link): Support `unsupported' as a hardcode_action.
23165         Reported by Lars Hecking.
23166         (lib_linked): Do some sanity checking to make sure that we
23167         actually do link libtool libraries into the program to prevent the
23168         above problem from happening again.
23170 1998-04-20  Gordon Matzigkeit  <gord@profitpress.com>
23172         * ltmain.in: Maybe reexec under $SHELL, if $echo doesn't work.
23173         Reported by Lars Hecking.
23175 1998-04-19  Gordon Matzigkeit  <gord@profitpress.com>
23177         * Makefile.am (maintainer-rekey): New rule to force us to change
23178         Project-Version after we make a release.  This keeps all version
23179         numbers in sync, rather than branching just before the release.
23180         (maintainer-release, maintainer-checkin): Use maintainer-rekey.
23182         * ltmain.in (finish): Notice when a finish command fails, so that
23183         we can add it to the list of recommendations.
23185 1998-04-17  Gordon Matzigkeit  <gord@profitpress.com>
23187         * libtool.m4 (AM_PROG_LIBTOOL): Append file descriptor 5 to
23188         config.log, so that configure doesn't clobber the messages that
23189         ltconfig put there.  From David Taylor.
23191 1998-04-15  Gordon Matzigkeit  <gord@profitpress.com>
23193         * ltconfig.in (archive_cmds): Try using `$CC -shared' when
23194         configuring for GCC under irix5 and irix6.  From Wolfram Gloger.
23195         (ofile): Add `--output' flag to change the name of the generated
23196         libtool.  Suggested by Wolfram Gloger.
23198 1998-04-14  Gordon Matzigkeit  <gord@profitpress.com>
23200         * ltmain.in: Remove all hardcoded references to ltmain.in in
23201         favour of $PACKAGE and $PROGRAM.
23202         (install): Compute the installation name for programs, in case we
23203         install a relinked file which has a different name.  Reported by
23204         Pieter Schoenmakers.
23206         * ltconfig.in (echo): Try using the ksh(1) `print -r' builtin
23207         command, before reverting to printf(1).
23209         * Makefile.am (libtool): Use $(SHELL) when invoking ltconfig.
23211         * ltconfig.in (echo): Rewrite the test for a working echo so that
23212         we win on Solaris by avoiding printf(1), if possible.
23214         * tests/quote.test (echo): Update the echo test from ../ltconfig.in.
23216 1998-04-13  Ian Lance Taylor  <ian@cygnus.com>
23218         * libtool.m4 (AM_PROG_NM): Don't override NM in the environment.
23220 1998-04-13  Gordon Matzigkeit  <gord@profitpress.com>
23222         * ltmain.in: New `--config' flag to print out all configured
23223         variables.
23225         * libtool.m4: Pass ltconfig the undocumented --no-reexec flag,
23226         since we call it explicitly using CONFIG_SHELL.
23228         * ltconfig.in: Restart the script under a different shell if
23229         CONFIG_SHELL is not /bin/sh.  This way, people can use Bash if
23230         they don't have a working echo program.
23232         * ltmain.in, ltconfig.in: Use $SHELL instead of /bin/sh when
23233         generating executable scripts.
23235         * libtoolize.in, ltconfig.in, ltmain.in: Implement the `--debug'
23236         flag to begin shell tracing.
23238         * ltconfig.in (archive_cmds): Don't use `gcc -shared', even if we
23239         have GNU ld.  Reported by Robert S. Maier.
23241 1998-04-06  Gordon Matzigkeit  <gord@profitpress.com>
23243         * ltconfig.in (pic_flag): Create more than just a null C file, so
23244         that the SunPRO 4.2 cc doesn't complain.  From Bob Friesenhahn.
23245         (gnu_ld_acts_native): Delete this variable.  There is just too
23246         much version skew to try to pretend GNU ld is the same as the
23247         system ld.  Reported by Ian Lance Taylor.
23248         (hardcode_action): Don't bother relinking or aborting on systems
23249         that are too dynamic to have a consistent hardcode method.
23250         Reported by Doug Winterburn.
23252 1998-03-24  Gordon Matzigkeit  <gord@profitpress.com>
23254         * doc/libtool.texi: A little proofreading.  From Albert
23255         Chin-A-Young.
23257 1998-03-23  Gordon Matzigkeit  <gord@profitpress.com>
23259         * ltconfig.in: Treat HP-UX 11 just like HP-UX 10.  From Jeff Law.
23261 1998-03-21  Gordon Matzigkeit  <gord@profitpress.com>
23263         * ltconfig.in (reload_flag): Correct a tiny bug where `--silent'
23264         would still print out the reload flag.  From Stephan Kulow.
23266 1998-03-20  Ian Lance Taylor  <ian@cygnus.com>
23268         * libtool.m4: Use changequote to avoid problems with square
23269         bracket patterns.
23271 1998-03-20  Gordon Matzigkeit  <gord@profitpress.com>
23273         * Release 1.2.
23275 1998-03-18  Gordon Matzigkeit  <gord@profitpress.com>
23277         * ltmain.in: Rearrange some of the echos to make them more
23278         consistent.
23280 1998-03-14  Gordon Matzigkeit  <gord@profitpress.com>
23282         * ltmain.in: Break up an echo command that causes Solaris printf
23283         to dump core.  Apparently the Solaris people hardcoded a 2110-byte
23284         buffer into their printf(1).  Feh.  From John Judge.
23286 1998-03-11  Gordon Matzigkeit  <gord@profitpress.com>
23288         * ltconfig.in: Change the test for the PIC compiler flag so that
23289         we assume it doesn't work if there are any warning messages.  This
23290         fixes a bug using old GCC's on HP-UX.  Reported by Akim Demaille.
23292 1998-03-10  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
23294         * Makefile.am ($(srcdir)/ltconfig): Remove bogus command to create
23295         a file ltconfig in the build directory.
23297 1998-03-09  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
23299         * ltmain.in: Avoid unnecessary use of command substitution,
23300         replacing foo=`eval \\$echo \"$mumble\"` by eval foo=\"$mumble\".
23302         (link): Use ${1+"$@"} in wrapper scripts in order to pass
23303         arguments safely to a program.
23305         * ltconfig.in: Use -fpic instead of -fPIC if $host_cpu matches
23306         m68*.
23308 1998-03-08  Gordon Matzigkeit  <gord@profitpress.com>
23310         * Release 1.1.
23312         * ltmain.in: <sigh> I like `here documents' a lot, but apparently
23313         they are so badly handled by old and buggy /bin/sh's, that
23314         replacing `cat <<EOF ... EOF' by `$echo "..."' improves libtool's
23315         speed by a factor of 5.  So, I've eliminated here docs from the
23316         all-important ltmain.in.  From Tom Lane.
23318         * tests/tlibtool: Eliminate from distribution.
23320         * tests/defs (libtool): Don't use tlibtool anymore, since we can now use
23321         the generated libtool directly.
23323 1998-03-07  Gordon Matzigkeit  <gord@profitpress.com>
23325         * ltconfig.in: Copy the contents of ltmain.sh into the generated
23326         libtool.  This should more than halve the execution times on old
23327         or buggy /bin/sh systems, such as HP-UX 9 and SunOS 4.1.4.  From
23328         Tom Lane.
23330 1998-03-05  Gordon Matzigkeit  <gord@profitpress.com>
23332         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): Add support for
23333         the `default' package, so that people can control unnamed
23334         packages.
23335         (LD): Only add an ABI flag under IRIX 6.x, since IRIX 5.x doesn't
23336         support them.  From Alexandre Oliva.
23338 1998-03-01  Gordon Matzigkeit  <gord@profitpress.com>
23340         * ltconfig.in: Port to UnixWare 2.x.  From Christopher Olsen.
23342 1998-02-25  Gordon Matzigkeit  <gord@profitpress.com>
23344         * ltmain.in (compile): For consistency, honour the `-static' flag
23345         during compilation.
23347 1998-02-23  Brendan Kehoe  <brendan@cygnus.com>
23349         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): For
23350         --enable-shared, heed the value of $PACKAGE from AM_INIT_AUTOMAKE
23351         if given as the argument for the library to be built shared.
23353 1998-02-20  Gordon Matzigkeit  <gord@profitpress.com>
23355         * libtool.m4, ltconfig.in (NM): Fix up a typo confusion between
23356         $ac_dir and $dir.  Reported by Akim Demaille.
23358         * ltmain.in (link): Don't allow both `-version-info' and
23359         `-release'.  Reported by Danny Backx.
23361 1998-02-18  Gordon Matzigkeit  <gord@profitpress.com>
23363         * Makefile.am (noinst_SCRIPTS): Remove lineno from distribution.
23365         * lineno: Remove from distribution, as it is no longer needed.
23367         * Makefile.am ($(srcdir)/ltconfig.in, $(srcdir)/ltmain.sh):
23368         Rewrite these rules not to use config.status or lineno.  This
23369         makes things simpler, and reduces dependencies, so that the
23370         scripts are rebuilt and installed in srcdir only when necessary.
23371         Reported by Stephan Kulow.
23373         * tests/sh.test (scripts): Remove the lineno script, since it is no
23374         longer distributed.
23376         * tests/assign.test, if.test, test-e.test: Even though 15 tests looks
23377         impressive, these are now redundant.  Remove them from the
23378         distribution.
23380         * tests/sh.test: Do what assign.test, if.test, and test-e.test used to
23381         do.
23383 1998-02-16  Gordon Matzigkeit  <gord@profitpress.com>
23385         * libtool.m4, ltmain.in, ltconfig.in: Correctly identify absolute
23386         directory names on MS-DOS.  Suggested by Bob Friesenhahn.
23388         * ltconfig.in, ltmain.in, libtool.m4: Change a bunch of `sed N!d'
23389         commands to `sed Nq', for efficiency.
23391         * ltmain.in: Only egrep the first few lines of files in order to
23392         determine if they were libtool-generated.  This prevents egrep(1)
23393         from taking forever to look at a 10MB binary on Solaris.  From
23394         Stephan Kulow.
23396         * tests/defs: Correctly identify absolute directory names on MS-DOS.
23397         Suggested by Bob Friesenhahn.
23399 1998-02-11  Gordon Matzigkeit  <gord@profitpress.com>
23401         * ltconfig.in (no_undefined_flag): Add a flag to declare under
23402         Solaris that the library should not have any undefined
23403         references.  Suggested by Bob Friesenhahn.
23405         * ltmain.in (mkdir): Fix one more mkdir race.  From H.J. Lu.
23407 1998-02-08  Gordon Matzigkeit  <gord@profitpress.com>
23409         * ltconfig.in, ltmain.in (striplib, old_striplib): Ditto.
23411         * ltconfig.in (profile_flag_pattern): Get rid of dead code.
23413 1998-02-07  Gordon Matzigkeit  <gord@profitpress.com>
23415         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): New macros to
23416         modify the `--enable-shared' and `--enable-static' defaults in the
23417         configure script.  This works a lot better than the old
23418         `enable_shared' and `enable_static' variables did.  Reported by
23419         Bob Friesenhahn.
23421         * tests/suffix.test (extensions): Added GNAT (GNU Ada Translator)
23422         suffices, `.ada', `.ads', `.adb'.  From Samuel Tardieu.
23424 1998-02-07  Samuel Tardieu  <sam@inf.enst.fr>
23426         * ltmain.in: Recognize .ada, .ads and .adb as known suffixes (they
23427         are used by GNAT, the GNU Ada compiler).
23429 1998-02-06  Gordon Matzigkeit  <gord@profitpress.com>
23431         * ltconfig.in: Turn on IRIX shared libraries again!
23433         * libtool.m4 (LD): Use file(1) to discover which ABI we're using
23434         on IRIX, and propagate the correct linker flag.  From Jim Wilson.
23436         * ltconfig.in, ltmain.in (Xsed): `arg=-n; echo "$arg" | sed ...'
23437         gives problems, because the `-n' is interpreted as an option to
23438         echo(1).  So, use `echo "X$arg" | sed -e 's/^X//' ...' everywhere,
23439         via the $Xsed convenience variable.  Suggested by H.J. Lu.
23441 1998-02-02  Gordon Matzigkeit  <gord@profitpress.com>
23443         * ltconfig.in: Turn off IRIX shared library support until 32-bit
23444         and 64-bit ABI differences can be resolved.
23446 1998-01-28  Gordon Matzigkeit  <gord@profitpress.com>
23448         * libtool.m4 (LD): Reverse yesterday's change because `-old_ld'
23449         isn't accepted by GCC.
23451 1998-01-27  Gordon Matzigkeit  <gord@profitpress.com>
23453         * ltconfig.in (soname_spec): Add in user-specified release numbers
23454         for every host system that supports an soname that differs from
23455         the linkname.
23457         * libtool.m4 (LD): Add `-old_ld' to the list of flags that need to
23458         be passed through on SGI.  Reported by Chris Lee.
23460         * ltmain.in (release): Prepend a hyphen to the release number, and
23461         fix a typo because `-version-info' takes only 3 args.  From
23462         H.J. Lu.
23464 1998-01-25  Gordon Matzigkeit  <gord@profitpress.com>
23466         * ltconfig.in (library_names_spec): On Linux, use the
23467         user-specified release.
23469         * ltmain.in (link): Allow the user to specify a release number for
23470         the library using the `-release' flag.  Suggested by H.J. Lu and
23471         Ian Lance Taylor.
23473 1998-01-23  Gordon Matzigkeit  <gord@profitpress.com>
23475         * tests/Makefile.am (TESTS_ENVIRONMENT): Export some important
23476         environment variables.  Reported by Ian Haggard.
23478 1998-01-19  Gordon Matzigkeit  <gord@profitpress.com>
23480         * ltconfig.in (old_postuninstall_cmds): Reorder so that chmod
23481         happens after ranlib.  From Markus F.X.J. Oberhumer.
23483         * ltmain.in (mode): Added `gcc*' and `*-gcc*' to the patterns that
23484         recognize compilers.  From Pieter Schoenmakers.
23485         (link): Recognize `.a' files again.  Suggested by Pieter
23486         Schoenmakers.
23488 1998-01-18  Gordon Matzigkeit  <gord@profitpress.com>
23490         * ltmain.in (compile): Recognize `.asm' extension, for use with
23491         the nasm assembler.  From Markus F.X.J. Oberhumer.
23493         * tests/suffix.test (extensions): Recognize `.asm'.  From Markus
23494         F.X.J. Oberhumer.
23496 1998-01-12  Gordon Matzigkeit  <gord@profitpress.com>
23498         * ltconfig.in (runpath_var): Use instead of
23499         `hardcode_runpath_var'.
23501 1998-01-11  Gordon Matzigkeit  <gord@profitpress.com>
23503         * ltmain.in (finish): Add a better --finish message.  Suggested by
23504         Kenneth Albanowski.
23506         * ltconfig.in, ltmain.in: Fix a few typos.
23508 1998-01-03  Gordon Matzigkeit  <gord@profitpress.com>
23510         * ltmain.in (link): Quote the definition of $echo in the wrapper
23511         script.
23513         * ltconfig.in (export_dynamic_flag_spec): Use `--export-dynamic'
23514         instead of `-export-dynamic', which is not accepted by all GNU
23515         ld's.  From Eiichi Takamori.
23517         * ltmain.in (install): Don't print silly `library stripping'
23518         warnings.  Reported by François Pinard.
23520 1997-12-19  Gordon Matzigkeit  <gord@profitpress.com>
23522         * ltmain.in: Don't forget to quote the CDPATH substitution.  From
23523         Tor Lillqvist.
23525 1997-12-18  Gordon Matzigkeit  <gord@profitpress.com>
23527         * ltconfig.in, ltmain.in (CDPATH): Unset this environment variable
23528         so that HP-UX shells, at least, don't print out the directory name
23529         after a `cd' command.  From Tor Lillqvist.
23531 1997-12-10  Gordon Matzigkeit  <gord@gnu.org>
23533         * demo/Makefile.am (hardcode): Change a bunch of references to
23534         `$(LIBS)' to `-lm', since we no longer put -lm in LIBS.
23536         * demo/configure.in: Delete the test for libm, since it is
23537         standard on every system.
23539         * demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm,
23540         in accordance with new inter-library dependency code.
23542         * ltmain.in (dependency_libs): Added to help people link programs
23543         without having to explicitly specify inter-library dependencies.
23545         * ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3
23546         restriction to the generated libtool script.  Reported by Stefan
23547         Westerfeld.
23549 1997-12-05  Gordon Matzigkeit  <gord@gnu.org>
23551         * ltconfig.in (thisdir): Quote $echo in the generated libtool
23552         script for HP-UX.  From Markus F.X.J. Oberhumer.
23554         * ltmain.in (link): Recognize the `.s' suffix.  From Markus
23555         F.X.J. Oberhumer.
23557         * ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX
23558         because link_static_flag is never evaled.  From Eric Backus.
23560         * tests/suffix.test (extensions): Recognize `.s'.  From Markus
23561         F.X.J. Oberhumer.
23563 1997-12-01  Gordon Matzigkeit  <gord@gnu.org>
23565         * demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our
23566         dependencies so that parallel builds work correctly.  From Jim
23567         Meyering.
23569         * Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite
23570         these rules so that they are parallelizable.  Reported by Jim
23571         Meyering.
23573         * ltconfig.in (ltecho): We need special handling to quote the
23574         `echo' variable itself.  From Alexandre Oliva.
23576 1997-11-29  Gordon Matzigkeit  <gord@gnu.org>
23578         * ltconfig.in (COLLECT_NAMES): Enable this workaround for a broken
23579         collect2 only on AIX 3.  This avoids problems on other AIX
23580         versions.  Reported by Stefan Westerfeld.
23582         * ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds,
23583         except it is a single command which is evaled, and not shown.
23585         * ltconfig.in: Port to AmigaOS.  From Joop van de Wege.
23587         * ltmain.in (echo): Delete preamble to check for a working echo,
23588         since we just use the one included in the generated libtool.
23590         * ltconfig.in (echo): Include this definition in the generated
23591         libtool script.
23593 1997-11-28  Gordon Matzigkeit  <gord@gnu.org>
23595         * ltconfig.in, libtool.m4 (NM): Add /usr/ccs/bin to the PATH
23596         before checking.  From Kaveh R. Ghazi.
23597         (NM): Delete an extraneous egrep from ltconfig.
23599         * ltconfig.in (finish_cmds): Change back to using `ldconfig -n'.
23600         This makes Linux behave like other systems, which is more in line
23601         with what libtool needs.
23603 1997-11-27  Gordon Matzigkeit  <gord@gnu.org>
23605         * ltmain.in: Change a whole bunch of `progname' variables to
23606         `modename'.  This is for clarity, and to fix a tiny typo in finish
23607         mode.
23609         * libtool.spec (Name, Version): Ditto.
23611         * configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate
23612         the proper package name and version number.
23614         * ltconfig.in (gnu_ld_acts_native): Treat GNU ld like the native
23615         linker on SunOS 4.x.  Suggested by Alexandre Oliva.
23616         (deplibs): Change the defaults all over, since most systems cannot
23617         handle inter-library dependencies.
23619         * libtool.m4, ltconfig.in (NM): Only look at the first line of the
23620         output from NM when determining whether it supports a command line
23621         option.  This prevents false positives on OSes which ignore
23622         invalid flags, like HP-UX, which prints `nm: unknown option "B"
23623         ignored'.  Reported by Kaveh R. Ghazi.
23625         * ltconfig.in (finish_cmds): On Linux, update ld.so.cache by
23626         removing the `-n' flag from ldconfig.  Suggested by Kenneth
23627         Albanowski.
23629         * Makefile.am (maintainer-checkin, maintainer-release): New
23630         commands to reap the full benefit of using PRCS to maintain
23631         libtool version numbers.
23633         * ltconfig.in, ltmain.in (global_symbol_pipe): Explicitly cast all
23634         addresses to __ptr_t.  This fixes a bug due to a strict IRIX
23635         compiler.  Suggested by Kaveh R. Ghazi.
23637 1997-11-23  Gordon Matzigkeit  <gord@gnu.org>
23639         * ltmain.in (echo): For aesthetics, avoid using `$echo' when
23640         `echo' will do *exactly* the same thing.  This prevents ugly
23641         `printf %s\n timestamp > some.lo' commands from appearing in the
23642         libtool output.
23643         (link): Delete the `-allow-undefined' flag because it is now the
23644         default.  Make `-no-undefined' in order for people to declare that
23645         a library is entirely self-contained.  This prevents maintainers
23646         from accidentally creating shared libraries that won't work on
23647         AIX.  Reported by Stefan Westerfeld and Danny Backx.
23649         * ltconfig.in (echo): Use an echo variable, just as in ltmain.in,
23650         because we need it for quoting substitutions.  For most of the
23651         script, though, use the default echo, just like Autoconf does.
23652         Without this patch, character \001 ends up in global_symbol_pipe.
23653         Reported by Lars Hecking and Jürgen Fluk.
23655         * ltmain.in (echo): Set default to `echo=echo'.  Ooops.  That's
23656         what you get for testing obscure code paths and forgetting to
23657         revert to the original version.  Reported by Danny Backx.
23659 1997-11-14  Gordon Matzigkeit  <gord@gnu.org>
23661         * ltconfig.in (hardcode_libdir_flag_spec): Set to `-R' for FreeBSD
23662         2.2.  From Sean Kelly.
23663         (postuninstall_cmds, old_postuninstall_cmds): Commands to run
23664         after uninstall mode deletes the libraries.  Suggested by Joop van
23665         de Wege.
23666         (export_dynamic_flag_spec): On HP-UX, add the `${wl}-E'
23667         export_dynamic_flag_spec.  Reported by Matthias Hoelzer.
23669 1997-11-11  Gordon Matzigkeit  <gord@gnu.org>
23671         * ltconfig.in, ltmain.in (sed_quote_subst): Oops.  We forgot to
23672         quote backticks.  Reported by Joop van de Wege.
23674         * tests/quote.test: Add backticks to the backslashify test.
23676 1997-11-09  Gordon Matzigkeit  <gord@gnu.org>
23678         * ltconfig.in (symcode): On IRIX, don't extract undefined
23679         symbols.  When a function is inlined by G++, references to it are
23680         still marked as undefined in the object file.  This means that our
23681         symbol file causes undefined references, because there are
23682         actually no matching global symbols.  Reported by Paul Kendall.
23684 1997-11-08  Gordon Matzigkeit  <gord@gnu.org>
23686         * ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool
23687         script fragment to the generated libtool, rather than to stdout.
23689 1997-11-07  Gordon Matzigkeit  <gord@gnu.org>
23691         * libtool.m4 (LD): Add a more sophisticated test to determine the
23692         ABI flag on IRIX 6.  Suggested by Lars Hecking and Ian Lance
23693         Taylor.
23695         * ltconfig.in, ltmain.in (COLLECT_NAMES): Only export this
23696         variable if we are running under AIX.  Otherwise, we tickle a g++
23697         bug under IRIX.  From Paul Kendall.
23699         * Change bug reporting address to <bug-libtool@gnu.org>.
23701         * ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a
23702         wildcard argument to `-expect_unresolved'.  From Stephan Kulow.
23704 1997-11-06  Gordon Matzigkeit  <gord@gnu.org>
23706         * ltmain.in (link): Use libname_spec.
23708         * ltconfig.in (pic_flag): Somehow, the HP-UX pic_flag (`+Z') was
23709         dropped between libtool-1.0 and now.  Add it back in.  Reported by
23710         Akim Demaille.
23711         Integrated more patches for OS/2.  From Jeff Freedman.
23712         (libname_spec): New variable for OSes that don't require their
23713         libraries to look like `libNAME.a'.
23715         * ltmain.in (link): Only use global_symbol_pipe if it has been
23716         defined.  From Stephan Kulow.
23718         * ltconfig.in (global_symbol_pipe): Protect C fragment under C++
23719         compilers.  From Stephan Kulow.
23721         * Makefile.am ($(srcdir)/acinclude.m4,
23722         $(srcdir)/demo/acinclude.m4): Change rules to use LN_S so that
23723         they can be run on any system.
23725         * ltconfig.in (archive_cmds): For NetBSD, don't include deplibs.
23726         From Dieter Baron.
23728         * ltmain.in (mkdir): Check that the directory doesn't exist before
23729         we exit with error, so that we don't get races during parallel
23730         builds.  From H.J. Lu.
23731         (fbsd_hideous_sh_bug): Apparently, some FreeBSD /bin/sh's have a
23732         bug that will empty base_compile unless we do this dummy
23733         assignment.  From Marc van Kempen.
23735 1997-10-22  Gordon Matzigkeit  <gord@gnu.org>
23737         * libtool.m4 (libtool_shared, libtool_static): Fixed logic error
23738         to reenable override of libtool's defaults by setting
23739         enable_shared or enable_static in configure.in.  Reported by Tom
23740         Tromey and Stephan Kulow.
23742         * ltmain.in (link): Add explicit support for compiler options that
23743         begin with `+'.  Reported by Aubert Pierre.
23745 1997-10-20  Gordon Matzigkeit  <gord@gnu.org>
23747         * ltmain.in: Silly me.  Change a bunch of occurances of "* $dir *"
23748         into *" $dir "*.
23750         * ltconfig.in (pic_flag): PIC is the default for AIX.  From Mark
23751         Kettenis.  It is also the default for OSF/1.
23753         * demo/Makefile.am (objdir): Quote double-quotes.  From Mark
23754         Kettenis.
23756         * ltconfig.in (global_symbol_pipe): This variable is not
23757         double-evaled, so it should not be double quoted.  From Mark
23758         Kettenis.
23760 1997-10-19  Gordon Matzigkeit  <gord@gnu.org>
23762         * ltconfig.in (LD): Same as below.
23764         * libtool.m4 (LD): Set LD if we discover an absolute path to GNU
23765         ld.  This prevents breakage when `$CC -print-prog-name=ld' returns
23766         an absolute directory name.  Reported by Ulrich Drepper.
23768         * ltconfig.in: Port to OS/2 using EMX.  From Jeff Freedman.
23770         * ltmain.in (link): Use old_archive_from_new_cmds.
23772         * ltconfig.in (old_archive_from_new_cmds): New variable to
23773         support DLL libraries.
23775         * ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is
23776         not empty.  Reported by Stephan Kulow.
23778 1997-10-18  Gordon Matzigkeit  <gord@gnu.org>
23780         * ltconfig.in (objdir): Use the .libs directory on all systems for
23781         which that name is valid, and _libs on the others (like MS-DOS).
23782         Suggested by Juergen Erhard.
23784 1997-10-14  Gordon Matzigkeit  <gord@gnu.org>
23786         * ltmain.in (link): Added a bit more inter-language support to the
23787         symbol file generation process.
23788         Instead of complaining about unrecognized argument suffices, pass
23789         them to the linker.  This prevents libtool from barfing on
23790         mandatory arguments to linker flags.  Reported by Michael
23791         Tiemann.
23793 1997-10-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23795         * ltmain.in (link): Change the wrapper script to follow symlinks
23796         in order to find thisdir.  This should put the final nail in the
23797         coffin for problems with wrapper scripts.  From Ian Lance Taylor.
23799 1997-10-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23801         * ltmain.in: Change a few `$echo' commands into `$show' to make
23802         --silent mode behave as advertised.
23804         * ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use
23805         `-expect_unresolved \*'.  From Christian Mondrup.
23807         * ltmain.in (install): Change install mode to allow a specified
23808         /bin/sh argument at the beginning of the install_prog.  Also,
23809         specify the shell to run when invoking libtool recursively for
23810         finish mode.  From Chris Provenzano.
23812         * libtool.m4 (LIBTOOL): Change definition to include $(SHELL).
23813         From Chris Provenzano.
23815         * ltconfig.in: Port to UTS 4.x.  From Alistair Crooks.
23817         * demo/Makefile.am (hc-libflag): Add rules to make this binary for
23818         hardcode.test.
23820         * tests/hardcode.test (hardcode_libdir_flag_spec): Check the hardcoding
23821         properties of the flag_spec, too.
23823 1997-09-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23825         * ltconfig.in (LD): As with libtool.m4, don't override LD.
23826         Do a whole bunch of ac_t quoting.
23828 1997-09-24  Ian Lance Taylor  <ian@cygnus.com>
23830         * libtool.m4 (AM_PROG_LD): Don't override LD in the environment.
23832 1997-09-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23834         * libtool.m4, ltconfig.in (NM): Arguments to the for loop must be
23835         whitespace separated.  This fixes a bug under FreeBSD's /bin/sh.
23836         From George Scott.
23838         * tests/defs, tests/Makefile.am (clean-local): Change =inst to
23839         _inst to fix portability on MS-DOS.  From Robert Hoehne.
23841 1997-09-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23843         * ltmain.in (deplibs): When building shared libraries, always add
23844         -lc to deplibs.  Reported by Andreas Jellinghaus.
23846 1997-09-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23848         * ltconfig.in, ltmain.in (COLLECT_NAMES): If the COLLECT_NAMES
23849         environment variable has not been set, set it to empty.  This
23850         apparently fixes the AIX bug with GCC's collect2.  Reported by
23851         Mark Kettenis.
23853         * demo/Makefile.am, ltmain.in, tests/hardcode.test (objdir):
23854         Changed objdir variable .libs to _libs.  This is another MS-DOS
23855         portability fix.  Suggested by Robert Hoehne.
23857         * tests/hardcode.test (objdir): New variable to simplify change from
23858         .libs to _libs (MS-DOS portability fix).
23860 1997-09-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23862         * ltconfig.in, ltmain.in (hardcode_minusL): Fix typo by renaming
23863         hardcode_minusL to hardcode_minus_L.  Also add FreeBSD
23864         hardcode_libdir_flag_spec. From Paul Traina.
23866         * ltmain.in (link): Honour multiple `-rpath' flags when linking
23867         programs.  Suggested by Bengt Martensson.
23868         Quote appearances of $echo in the wrapper script.  From Alexandre
23869         Oliva.
23871         * Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead
23872         of ltmain.sh.in.
23874         * ltmain.in: Rename ltmain.sh.in to ltmain.in.  This fixes a
23875         portability problem (on MS-DOS, of all places!).  From Robert
23876         Hoehne.
23878 1997-09-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23880         * ltmain.sh.in (link): Do not transform libtool objects to regular
23881         objects if we did not build old libs.  Reported by Tomas Hiller.
23883 1997-09-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23885         * demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to
23886         hell.debug in order to reflect the new static linking semantics.
23888         * ltmain.sh.in (link): Add new `-all-static' flag to prevent all
23889         dynamic linking.  The old `-static' flag just prevents dynamic
23890         linking against libtool libraries.  Suggested by Bengt
23891         Martensson.
23893         * ltconfig.in (with_gnu_ld): Add a test to make sure that we are
23894         actually using GNU ld.  This fixes an inconsistency when running
23895         ltconfig without using libtool.m4.  Reported by Ulrich Drepper.
23896         (global_symbol_pipe): Delete symbols that are not valid C
23897         identifiers.  Reported by Johan Danielsson and Bengt Martensson.
23899         * tests/demo-exec.test, tests/demo-inst.test: Change references from
23900         hell.static to hell.debug.
23902         * tests/quote.test (echo): Add the same Digital Unix echo test fixes as
23903         the ones to ltmain.sh.in from Todd Kover.
23905         * tests/if.test, tests/test-e.test (scripts): Add ../lineno to
23906         the scripts we check.
23907         * tests/if.test: Check for accidental use of test X$something rather
23908         than test "X$something".
23910 1997-09-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23912         * ltmain.sh.in (echo): Quote all the uses of `echo' in all eval
23913         statements.  Reported by Bengt Martensson and Alexandre Oliva.
23914         (echo): Need to surround test args with double quotes, or the echo
23915         test fails on Digital Unix 4.0.  From Todd Kover.
23917 1997-08-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23919         * ltmain.sh.in (echo): Change test to one that uses printf.
23920         This works on AIX, which has the same problems that Solaris does,
23921         but no working echo program.
23923         * tests/quote.test (echo): Change test to version that uses printf.
23924         Be less strict about return results.
23926 1997-08-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23928         * ltmain.sh.in (link): Make sure that compile_command and
23929         finalize_command are always evaled.  Quote any unknown linker
23930         flags we need to pass through.
23931         (compile): Use quoting for flags we pass.
23932         (echo): I hate Sun!  The /usr/bin/echo on Solaris handles
23933         backslash sequences, which makes it impossible to do backslash
23934         quoting using echo and sed.  So, we search for an echo that obeys
23935         the `echo '\t'` = '\t' equality.  Then we use `$echo' everywhere
23936         in ltmain.sh.
23937         Put tabs back into the ${IFS=   } sequences.  Emacs untabify is
23938         libtool bane.
23940         * ltconfig.in: Quote all variable values that may contain
23941         metacharacters creating the libtool script.  This provides
23942         complete protection, so that even single-quotes may appear inside
23943         a libtool variable value.
23945         * ltmain.sh.in (link): Quote finalize_command before putting it in
23946         the wrapper script.
23948         * tests/quote.test (echo): Add the test for a non-backslash-mangling
23949         echo.
23951 1997-08-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23953         * ltmain.sh.in (sed_quote_subst): Change the quoting procedure
23954         again.  I think that the new one is robust for *all* characters,
23955         including whitespace and metacharacters.
23957         * tests/quote.test: New torture test for libtool metacharacter quoting.
23959 1997-08-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23961         * ltmain.sh.in: Change quoting procedure because some shells
23962         cannot handle `]' in scan sets.  From Ian Dall.
23964 1997-08-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23966         * ltmain.sh.in (execute): Added -dlopen flag handling.  Suggested
23967         by Alexandre Oliva.
23969 1997-08-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23971         * ltmain.sh.in (link): Change executable wrapper to fix up value
23972         of thisdir, as well as progdir, if the $0 path doesn't work.  This
23973         guarantees that shlibpath_var is set correctly.  Add support for
23974         execute mode.
23976         * ltmain.sh.in (execute): New mode to automatically set
23977         shlibpath_var, which allows easy debugging of uninstalled
23978         executables and libraries.  Suggested by Kenneth Albanowski.
23980 1997-08-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23982         * Makefile.am ($(srcdir)/ltconfig): Use lineno.
23984         * configure.in: Add AM_PROG_AWK for lineno.
23986         * lineno: New program to automatically put line numbers in
23987         ltconfig.
23989         * libtool.m4, ltconfig.in (AM_PROG_LD): Yet Another Rewrite, which
23990         incorporates the results of `gcc -print-program-name=ld'.
23991         Suggested by Alexandre Oliva.
23993 1997-08-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
23995         * ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off
23996         command echoing.  From Juergen A. Erhard.
23998         (compile): Recognize the Objective C `.m' extension.  From Juergen
23999         A. Erhard.
24001         (compile): Suppress error output from the second compilation (if
24002         any) so that we don't get those frustrating duplicate error
24003         messages.
24005         * tests/suffix.test (extensions): Added Objective C extension, `.m'.
24007 1997-08-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24009         * ltconfig.in: Added messages to config.log to describe what sort
24010         of test we are running.
24011         (pic_flag): Added a sanity check for pic_flag.  This should fix
24012         bugs reported using the cc bundled with HP-UX 10.  Suggested by
24013         Bruno Haible and Akim Demaille.
24015 1997-08-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24017         * ltmain.sh.in (link): Add -dlopen and -dlpreopen support for
24018         libtool objects.  This means that dlopened modules no longer need
24019         to be shared libraries.
24021         * ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC.
24022         Reported by Ian Lance Taylor.
24024         * libtool.m4 (LD): Always add `-n32' to the linker if we are using
24025         GCC on IRIX 6.  Reported by Ian Lance Taylor.
24027 1997-07-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24029         * libtool.m4 (AM_PROG_LIBTOOL): Explicitly check enable_shared and
24030         enable_static rather than just enableval.  This allows
24031         configure.in scripts to set their own defaults.  Suggested by
24032         Tommy Reilly.
24034 1997-07-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24036         * ltmain.sh.in: Add NLS environment variable handling copied from
24037         ltconfig.in.  Reported by Akim Demaille.
24038         (link): If allow_undefined_flag is not supported, then turn on old
24039         libraries.  Reported by Akim Demaille.
24041         * demo/dlmain.c (main): Use dld_preloaded_symbol_count to display
24042         a message about the sortedness of the symbol table.
24044         * ltconfig.in (nlist): Use an nlist convenience variable, so that
24045         code can be shared directly with ltmain.sh.in.
24047         * ltconfig.in, ltmain.sh.in (dld_preloaded_symbol_count): Count up
24048         the number of symbols in the dld_preloaded_symbols.  Set to `-1'
24049         if the list wasn't both sorted and counted.  This allows
24050         applications to do a quick binary search, if they are so inclined.
24052 1997-07-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24054         * ltmain.sh.in (link): Remove code for `-version-file', since it
24055         has been long-deprecated.
24057         Disable static linking if hardcode_direct is unsupported and there
24058         is no working link_static_flag.  This provides correct behaviour
24059         for all cases on AIX 3, regardless of whether collect2 is broken
24060         or not.  Reported by Mark Kettenis.
24062         * ltconfig.in: Fix typo in test polarity.  From Mark Kettenis.
24064 1997-07-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24066         * ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses
24067         a broken collect2.  Adapted out of test results from Mark
24068         Kettenis.
24069         (link_static_flag): Make sure the link_static_flag actually works
24070         with a trivial binary.
24072         * ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed
24073         from export_dynamic_flag because we eval it in ltmain.sh.
24075         * ltmain.sh.in (link_static): Don't eval link_static_flag.
24077         * demo/dlmain.c (main): Change function prototype to be KNR
24078         compatible.  From Kaveh R. Ghazi.
24080         * ltmain.sh.in (link): Use no_builtin_flag.  This works around
24081         conflicting definitions of builtin functions with at least GCC.
24082         Reported by Kazuhiro Sasayama.
24084         * ltconfig.in (no_builtin_flag): New flag to turn off builtin
24085         functions when compiling an object file.
24086         (pipe_works): Use it.
24088         * tests/demo-exec.test (status): Use status variables so that we try to
24089         execute all the programs.
24091 1997-07-23  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24093         * ltconfig.in (pic_flag): According to the libg++ 2.7.2 configure
24094         script, DEC alpha CPUs are PIC-only, as well.  Reported by Kevin
24095         Jacobs.
24097 1997-07-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24099         * ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X;
24100         Y'" with "sed -e 'X' -e 'Y'".
24102         * ltmain.sh.in (link): Finish full integration for `-dlopen' and
24103         `-dlpreopen'.
24105         Fix two silly typos where I used a compile_command in place of a
24106         finalize_command, and vice versa.
24108         Change the wrapper script to check a hardcoded path only if the
24109         argv[0] method fails.  This is a compromise for the previous two
24110         patches, and should solve the majority of problems with wrapper
24111         scripts.  From Kenneth Albanowski.
24113         (link): Change a reference to hardcode_libdir_colon_separated to
24114         use the new hardcode_libdir_separator variable.
24116         * demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and
24117         `-dlpreopen' for building helldl.
24119         * demo/dlmain.c (main): Succeed, even if none of the libhello
24120         symbols have been preloaded.
24122 1997-07-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24124         * ltconfig.in (global_symbol_pipe): Add `U' to the accepted global
24125         symbol types.  This means that we will get duplicate symbols, but
24126         we'll also be sure to get all global symbols used by the program.
24128         * ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make
24129         symbol output unique.
24131 1997-07-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24133         * ltconfig.in (pipe_works): Check to make sure our guessed
24134         global_symbol_pipe actually works.
24136         * ltmain.sh.in (link): Revert change from Kenneth Albanowski.  The
24137         wrapper scripts are more reliable when they just use the argv[0]
24138         value.  Generally, when the argv[0] method doesn't work, the user
24139         is trying to do something weird with an uninstalled binary, and
24140         should try a different approach.
24142         * ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of
24143         `$cc'.  This fixes a FreeBSD bug.  Reported by Chuck Robey, and
24144         others.
24146 1997-07-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24148         * ltmain.sh.in (link): In wrapper scripts, hardcode the current
24149         directory to prevent phony argv[0] values from screwing up our
24150         program.  From Kenneth Albanowski.
24152 1997-07-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24154         * Makefile.am (demo_distfiles): Add demo/dlmain.c to the
24155         distribution.
24157 1997-07-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24159         * demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate
24160         `-dlopen' usage.
24162         * demo/dlmain.c: New file to demonstrate preloaded modules.
24164         * ltmain.sh.in (link): Add `-dlopen' flag to preload dynamic
24165         modules, even on static platforms.  Use `$NM' and
24166         `$global_symbol_cmd' to extract symbols from required files.
24167         (dlname): Delete dlname mode entirely.  It is rendered obsolete
24168         because the `.la' file format is now a public interface.
24170         * ltconfig.in (NM): New variable for BSD-compatible nm program.
24171         (global_symbol_cmd): Pipeline to extract global symbols from the
24172         nm output.
24174         * ltmain.sh.in: The .la file header should depend on `ltmain.sh',
24175         not `$PROGRAM'.
24176         (link): Make sure $export_dynamic_flag is eval'ed before it is
24177         used.
24179         * tests/demo-exec.test, tests/demo-inst.test: Check the new
24180         helldl program, too.
24182 1997-07-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24184         * libtool.spec: New Red Hat Package Manager specification file in
24185         order to help people prepare distributions of libtool for Linux.
24187         * ltmain.sh.in: Eliminate two accidental uses of the NONE magic
24188         value.  These were breaking libtool's behaviour when no mode is
24189         specified.
24191         * tests/nomode.test: New test to make sure there is correct behaviour
24192         when we don't specify a mode.
24194 1997-07-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24196         * Release 1.0.
24198         * ltconfig.in: On SunOS, append /usr/etc to the PATH before
24199         running ldconfig; on *BSD, append /sbin.  This was done in line
24200         with the Linux change suggested by Kenneth Albanowski.
24202         * demo/Makefile.am (hardcode_tests): Aesthetic change to
24203         alphabetize order of compiling the hardcode tests.
24205         * Makefile.am (EXTRA_DIST): Delete README-automake.
24207         * README-automake: Remove from distribution.
24209 1997-07-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24211         * ltmain.sh.in (link): In the executable wrapper, strip trailing
24212         colons from the shlibpath_var because some ld.so's, notably
24213         OpenBSD 2.0's (!), don't parse colon-terminated values correctly.
24214         From Tim Pierce.
24216 1997-07-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24218         * ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic
24219         variable value.  Use an empty variable instead.
24221         * ltconfig.in (with_gcc, with_gnu_ld): Do the tests for the C
24222         compiler and linker if the variables are unset, or if they are not
24223         GNU C and ld.
24224         (RANLIB): Eliminate redundant `if' statement.
24226         * configure.in: Use AM_PROG_LD.
24228         * libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU
24229         ld.
24230         (AM_PROG_LD): Rename AM_PATH_PROG_LD to AM_PROG_LD.  Parameterize
24231         so that the user can specify `--with-gnu-ld' or `--without-gnu-ld'
24232         to indicate his preference.
24233         (AM_PROG_LIBTOOL): Use it.
24235 1997-06-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24237         * ltconfig.in: Append /sbin to the path before running ldconfig on
24238         Linux.  This helps superusers who haven't set their PATH
24239         correctly.  Suggested by Kenneth Albanowski.
24241         * tests/if.test: New test to make sure that we haven't forgotten to
24242         follow an `if' statement with a `test' command.  This should avoid
24243         the majority of hard-to-track bugs.
24245 1997-06-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24247         * ltmain.sh.in: Change all the `eval "$run ..."' sequences to
24248         `$run "eval ..."'.
24250         Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'.
24251         This is the sequence recommended by the Autoconf manual, and
24252         should avoid any problems on older machines.  Eliminate all uses
24253         of `cp -p'.  Reported by Akim Demaille.
24255         (install): Use `test $# -gt 0' instead of `test -n "$1"'.
24257         * ltconfig.in (LN_S): Add test to see if `ln -s' works.
24259         * libtool.m4: Increment serial number, and require AC_PROG_LN_S.
24261 1997-06-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24263         * ltmain.sh.in (link): Add missing `test' statement.  Reported by
24264         Akim Demaille.
24266 1997-06-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24268         * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of
24269         am_cv_path_ld.  From Tim Pierce.
24271 1997-06-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24273         * ltmain.sh.in: Redo two robustness fixes.  Alexandre had the
24274         correct approach, but I botched them.
24276         * ltconfig.in (dynamic_linker): Disable shared libraries on
24277         MkLinux unless GNU libc is in use.  Reported by Akim Demaille.
24279 1997-06-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24281         * ltmain.sh.in (install): Add a missing `test' command.  Reported
24282         by Joel Weber.
24283         Miscellaneous fixes to improve robustness.  From Alexandre Oliva.
24285         * tests/demo-conf.test (CONFIG_SITE): Set to /dev/null, so that the
24286         config.site file doesn't mess up our prefix.  Reported by Joel
24287         Weber.
24289         * tests/demo-inst.test: Always run both hell.static and hell.
24291         * tests/demo-conf.test: Always remove the local config.cache, but run
24292         `make distclean' only if the Makefile exists.  Otherwise, the demo
24293         directory is not cleaned up if a user uses their own config.cache.
24294         Reported by Joel Weber.
24296 1997-06-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24298         * ltmain.sh.in (link): Create invalid libtool objects when partial
24299         linking if we don't have PIC.  From Jeff Dairiki.
24300         (install): Fix bug if libtool object is installed to a file name
24301         without directory components.  From Jeff Dairiki.
24303 1997-06-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24305         * Makefile.am (demo/configure): Fix up rules to run autoconf.
24306         (aclocal.m4): Now we depend on our own libtool.m4.
24308         * configure.in (AM_PATH_PROG_LD): Use it.
24310         * libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used
24311         by the C compiler.
24312         (AM_PROG_LIBTOOL): Use it.
24314         * ltmain.sh.in (install, uninstall): Support installing and
24315         uninstalling `.lo' files.  From Jeff Dairiki.
24317 1997-06-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24319         * Makefile.am (ltconfig, ltmain.sh): Only move if $(srcdir) is not
24320         the current directory.  Don't regenerate every time the package is
24321         reconfigured.  Reported by Tom Tromey.
24322         (MAINTAINERCLEANFILES): Added ltconfig, ltmain.sh, so that
24323         $(srcdir) is not messed with during a regular clean.
24325 1997-06-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24327         * Makefile.am (ltconfig, ltmain.sh): Be sure to move these files
24328         into $(srcdir) once they are created.
24330         * ltmain.sh.in (link): Disable building static libraries.
24331         People should use their favourite AR and RANLIB commands.
24332         Disable building old-style objects if `--disable-static' is
24333         given.  Suggested by Tom Lees and Stephan Kulow.
24335 1997-06-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24337         * ltconfig.in (host_cpu, host_vendor, host_os): Patch up
24338         definitions, to allow for the fact that the host_os may contain
24339         hyphens (as in linux-gnu).  From Scott Goehring.
24341         * ltmain.sh.in (link): Move the `dlname' setting closer to the top
24342         of the file.  Suggested by David Mosberger-Tang.
24343         Symlink the libtool archive into the `.libs' directory so that it
24344         can be found by programs that want to find a library's dlname by
24345         searching LD_LIBRARY_PATH.  Reported by David Mosberger-Tang.
24347 1997-06-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24349         * Tell people to report bugs to the new libtool mailing list,
24350         <bug-libtool@gnu.ai.mit.edu>.
24352 1997-06-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24354         * ltconfig.in (allow_undefined_flag): New variable that implements
24355         `-allow-undefined'.
24356         (archive_cmds): Enable C++ constructors for FreeBSD 2.2.  From
24357         David Nugent.
24359         * ltmain.sh.in (link): Accept new `-allow-undefined' flag when
24360         building libtool libraries.  This tells libtool to allow
24361         unresolved symbols to exist in shared libraries.  Basically, this
24362         turns off shared libraries on AIX.  Suggested by Ian Lance Taylor.
24364 1997-05-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24366         * libtool.m4 (LD): On at least IRIX, many different flags need to
24367         be propagated to the linker if they are part of the compiler
24368         command line.  Reported by Anthony Green.
24370 1997-05-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24372         * ltconfig.in: Trivial port to FreeBSD 3.  From David Nugent.
24374 1997-04-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24376         * ltmain.sh.in (link): Remove all traces of `-whole-archive',
24377         `-no-whole-archive', and libtool convenience libraries.  They were
24378         more trouble than they're worth.  If these are ever reimplemented,
24379         they need more careful attention to make portable.
24381         * libtool.m4, ltconfig.in: Added a `--disable-static' flag to turn
24382         off static library creation.  From Tom Lees (who finally convinced
24383         me that it was the Right Thing to do).
24385 1997-04-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24387         * ltmain.sh.in (hardcode_runpath_var, runpath_var): Use them, if
24388         the linker has no -rpath flag.
24389         Quote the values we use to set runpath_var and shlibpath_var.
24390         (link): Use libobjlibs for libtool convenience libraries.
24392         * ltconfig.in (hardcode_runpath_var, runpath_var): Add new
24393         variables to describe linkers that honour `LD_RUN_PATH'.
24394         (host_cpu, host_os): Use these more specific variables, rather
24395         than the full canonical host system name.
24397         * ltmain.sh.in (dlname): Distinguish between missing
24398         `-export-dynamic' and when the library is only statically linked.
24400 1997-04-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24402         * ltconfig.in: Trivial port to OpenBSD by making it an alias for
24403         NetBSD.  From Tim Pierce.
24405 1997-04-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24407         * ltconfig.in: Temporary measures to check for a broken collect2
24408         program.  Right now, we just see if we're using GCC on AIX 3.
24410         * tests/hardcode.test: AIX also has arbitrary limits on the line length
24411         of input to fgrep(1), so we need to translate NUL characters to
24412         newlines in order to properly detect embedded `.libs'.  From Bruno
24413         Haible.
24414         Also redirect stderr to /dev/null, so that AIX users don't get
24415         worried by `fgrep: Maximum line length of 2048 exceeded.'.
24417 1997-04-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24419         * ltmain.sh.in (mode): Use `egrep -e' when inferring the operation
24420         mode.
24422 1997-04-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24424         * ltconfig.in (linker): Some GNU ld's don't accept `--version',
24425         but do accept `-v'.  From Jukka Honkela.
24426         (ld_shlibs): AIX lossage may be settling down.  AIX 3.2.5 ld does
24427         *not* hardcode direct libraries, but AIX 4.1.[45] ld does.
24429 1997-04-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24431         * ltconfig.in (hardcode_action): Fix silly logic error.  From
24432         Bruno Haible.
24434 1997-04-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24436         * ltmain.sh.in (install): Relink if hardcode_action is `relink',
24437         rather than using complex conditionals based on the other
24438         hardcode variables.
24440         * ltconfig.in (hardcode_action): Set to `relink', not `immediate',
24441         if we can only hardcode existing directories.  Rearrange
24442         conditionals to make the intent clearer, otherwise this can be one
24443         hellish piece of code for the already-dizzy libtool maintainer.
24445 1997-04-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24447         * replfunc.m4: Delete from the distribution.  Documentation now
24448         describes how to set LTALLOCA and LTLIBOBJS in your own
24449         configure.in.
24451         * ltmain.sh.in (link): Make sure a libtool library only counts as
24452         a shared library if its library_names are non-null.
24453         Use timestamps for .lo's when PIC is turned off, rather than
24454         symlinking to the real object.  This helps invalid mixtures of PIC
24455         and non-PIC to fail.
24457 1997-04-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24459         * Makefile.am (EXTRA_DIST): Distribute libtool.prj.
24461         * Shameless plug: Changed source code management system from CVS
24462         to PRCS.
24464         * libtool.scm: Initial Guile implementation of libtool.
24466         * ltmain.sh.in: An unexpected inconsistency in my whole approach
24467         to shared libraries has proven that libtool needs to be completely
24468         rewritten if I'm going to give full shared library support for
24469         platforms that don't use the GNU C library version 2 (which to my
24470         knowledge currently only works on GNU Hurd and Linux/GNU systems).
24471         Porting the GNU C library should not be difficult, though.
24473         Platforms that don't have the dlopen(3) family of functions will
24474         need to install GNU DLD version 4 in order to build any kind of
24475         libraries at all.  Unfortunately, DLD 4 won't be released for a
24476         while, because I maintain it, and I'm too busy working on libtool.
24478         I'll keep the old ltconfig/ltmain.sh implementation around for as
24479         long as I can, and continue applying bug fixes, so that I'll have
24480         a reasonable starting point for this new libtool implementation.
24482         It looks like this implementation will be even more complex than
24483         the original (pre-0.7) libtool.  Initial estimates show that it
24484         may be up to 3 times slower, and 5 times larger than libtool-0.9.
24485         I'll probably have to rewrite it in Guile to get reasonable
24486         performance, which will severely limit its portability for a
24487         while.
24489         That will also introduce a bootstrapping issue, since the next
24490         release of Guile will use libtool to build shared libraries.  So,
24491         if users want to have shared Guile libraries, they will have to
24492         configure Guile with `--disable-shared', compile it, install it,
24493         then reconfigure Guile with `--enable-shared' and repeat.
24495         I was hoping to get libtool 1.0 out the door by early April, but
24496         now it looks like it will take at least another year before it'll
24497         be usable by the public at large.  April fools.  libtool.scm
24498         doesn't exist yet, either.
24500         * ltconfig.in (verify_host): Remove redundant `Transform *-*-linux*
24501         to *-*-linux-gnu*'.  From Bruno Haible.
24503         * tests/hardcode.test: AIX 3 doesn't have strings(1) so we need to do a
24504         funny tr and pipe the output to fgrep.  From Bruno Haible.
24506 1997-03-31  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24508         * Makefile.am: Use the new AUTOMAKE and ACLOCAL variables.
24510         * ltmain.sh.in (link): Only fail if a convenience library doesn't
24511         exist, and the user specified -whole-archive.
24512         Fix shell quoting that was breaking @OUTPUT@ substitution.
24514 1997-03-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24516         * ltmain.sh.in (link): Use the hardcode_libdir_separator.
24517         Convenience libraries are libtool objects if we're not building
24518         libtool libs.
24520         * ltconfig.in (hardcode_libdir_separator): Added in case the
24521         linker only honours the last of the -rpath flags (but it can
24522         contain multiple colon-separated directories), such as on OSF/1.
24523         Reported by Carl D. Roth.
24525         * ltmain.sh.in (link): Set the dlname if -export-dynamic is given.
24526         (install, uninstall): Handle the dlname file separately.
24528         * ltconfig.in (export_dynamic_flag): Added to allow programs to
24529         use reflexive dlopens.
24531         * ltmain.sh.in: Include the mode name in any help messages.
24532         (dlname): New mode to give the name to be used with dlopen(3).
24534         * ltconfig.in (AR): Allow AR to be set by the user, and export it
24535         to ltmain.sh.
24537         * ltmain.sh.in: Remove broken profiled library support.
24538         Added `-whole-archive' and `-no-whole-archive' to manipulate
24539         convenience libraries.
24541 1997-03-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24543         * ltmain.sh.in (link): Allow the creation of static convenience
24544         libraries made of libtool objects.  Suggested by David
24545         Mosberger-Tang.
24547 1997-03-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24549         * ltconfig.in: On AIX, libtool also needs to look for `B' symbols
24550         in nm output.  These are global variable definitions.
24552         * ltmain.sh.in: Linking with -static should link against the
24553         linklib if old_library is empty (like it is on AIX).
24555         * ltconfig.in: Change the order of OS detection, so that
24556         linux-gnu* is detected before gnu*.
24558         * Makefile.am (libtool): Use the correct CC, RANLIB, LD, when
24559         generating libtool.  From Carl D. Roth.
24561         * configure.in: Find out the user-supplied CC, LD, RANLIB.  From
24562         Carl D. Roth.
24564 1997-03-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24566         * ltmain.sh.in: Linking with -static should link against the old
24567         library, not linklib.
24569         * README-automake: Updated to point to Automake 1.1m.
24571 1997-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24573         * demo/main.c: Use it.
24575         * demo/foo.h: Declare it.
24577         * demo/foo.c: Added definition of `nothing' so that we have an
24578         global variable definition, as well as functions.
24580 1997-03-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24582         * ltconfig.in: Make sure either enable_shared or enable_static is
24583         configured.  Reported by Tom Tromey.
24585         * ltmain.sh.in: Bomb out if no library types are configured.
24587 1997-02-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24589         * ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed
24590         from `hardcode_libdir_flag'.
24591         (library_names_spec): Renamed from `lib_names'.
24593         * ltconfig.in, ltmain.sh.in (hardcode_action): Change value from
24594         `rpath' to `immediate'.
24596         * replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and
24597         AM_STRUCT_ST_BLOCKS.
24599 1997-02-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24601         * ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support
24602         old-style config.guess scripts.
24604 1997-02-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24606         * ltmain.sh.in: Create objdir *before* linking a program into it.
24608 1997-02-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24610         * ltconfig.in: Any ld --version that returns GNU is probably a GNU
24611         ld.  From Marcus Daniels.
24613         * libtool.m4: Added AM_REPLACE_FUNCS.
24615 1997-02-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24617         * ltconfig.in: Trivial port to *-*-osf4.  From Bruno Haible.
24619 1997-02-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24621         * ltconfig.in: AIX 3 and 4 ld only hardcodes LIBPATH if -L is not
24622         specified.  This behaviour is the same with both xlc and gcc.
24624 1997-02-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24626         * doc/platforms.texi: Yaay!  We found a workaround for HP-UX
24627         /bin/sh buffer overflows.  From Eric Backus.
24629 1997-02-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24631         * Release 0.9.
24633         * PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am:
24634         Move PLATFORMS to doc/platforms.texi.
24636         * ltmain.sh.in (link): Use hardcode_libdir_flag to get a library
24637         directory into the resulting binary.
24638         Use hardcode_action, and make many simplifying changes to have
24639         compilation and finalization be consistent with each other.
24641         * ltconfig.in: Not so amazing!  It's AIX cc that hardcodes direct
24642         libraries... gcc doesn't, though.
24643         (link_rpath_flag): Change link_rpath_flag to be
24644         hardcode_libdir_flag.
24645         (hardcode_action): New variable to simplify ltmain.sh.
24647         * tests/Makefile.am (TESTS): Do the full make sequence with
24648         --disable-shared, then without.
24650         * tests/demo-sttc.test: Configure the demo directory with
24651         --disable-shared.
24653 1997-01-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24655         * ltmain.sh.in: Change to take advantage of linkers that don't
24656         hardcode direct libraries.
24658         * ltconfig.in: Amazing!  AIX 3 linker doesn't hardcode direct
24659         libraries, which makes it less buggy than AIX 4.  Reported by Mark
24660         Kettenis.
24662         * demo/configure.in: Check for the math library.
24664         * demo/foo.c (foo): Change to use the `cos' function, so that we
24665         need to link against another library.
24667         * tests/hardcode.test: Rewrite to use fgrep on output from ``strings
24668         -a'' if using fgrep directly on the binary files fails.  From Mark
24669         Kettenis.
24671 1997-01-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24673         * ltmain.sh.in (link): Export the PATH variable in order to find
24674         the program, rather than giving a full path.  This helps give the
24675         program a less confusing value for argv[0].
24677         * tests/hardcode.test: Make sure that ../demo/libhello.la really is a
24678         shared library before running hardcoding tests.
24680 1997-01-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24682         * Release 0.8.
24684 1997-01-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24686         * Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the
24687         distribution.
24689 1997-01-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24691         * libtool.m4: For IRIX 6, ld needs -n32 if cc uses it.  Reported
24692         by Bruno Haible.
24694         * ltconfig.in: IRIX ld does not hardcode direct libraries.
24695         Reported by Bruno Haible.
24697 1997-01-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24699         * ltconfig.in, ltmain.sh.in (hardcode_shlibpath_var): Allow new
24700         value, `unsupported', since most linkers do not allow you to use
24701         shlibpath_var for initial linking.
24703         * ltconfig.in: Lots of bug fixes from Bruno Haible.  Set wl on
24704         OSF/1, fix definitions of hardcode_* variables.
24705         (archive_cmds): Fix not to use +h on HP-UX 9.x.  Reported by Bruno
24706         Haible.
24708         * tests/demo-conf.test: Use the CONFIG_SHELL environment variable when
24709         running configure in the demo directory.  From Bruno Haible.
24711         * tests/Makefile.am (clean-local): Make distclean in the demo directory,
24712         so that ``make clean; env CC=cc make check'' works as one would
24713         expect.
24715         * tests/demo-make.test: Fix typo (use $make instead of make).  Reported
24716         by Akim Demaille.
24718 1997-01-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24720         * libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings.
24721         Suggested by Akim Demaille.
24723         * libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is
24724         specified.  Reported by Bruno Haible.
24726 1997-01-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24728         * demo/Makefile.am (hc-direct): Do better searching for the proper
24729         name to do a direct link.
24730         (hc-libpath): Make allowances if shlibpath_var cannot be used
24731         to find libraries at link time, such as on AIX.
24733         * Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c.
24735         * demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to
24736         KNR form, for better portability, and less ansi2knr hair.
24738         * demo/configure.in: Remove AM_FUNC_PROTOTYPES.
24740         * demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS.
24742         * demo/ansi2knr.1, demo/ansi2knr.c: Removed these files.
24744         * ltmain.sh.in: Use 1>&2 consistently to direct errors and
24745         warnings to stderr.
24746         (compile): Fix missing single quote.
24748         * ltconfig.in (hardcode_direct): On Solaris at least, using
24749         DIR/libNAME.so does not hardcode DIR, so introduce a new hardcode
24750         variable to reflect that.
24752         * ltmain.sh.in (link): If linking with $link_static_flag fails,
24753         then retry without it, but still use the .a versions of
24754         uninstalled libtool archives.
24756         * tests/tlibtool: Rewrote to grab all the settings from the generated
24757         libtool script.
24759         * tests/hardcode.test: Make allowances if shlibpath_var cannot be used
24760         to find libraries at link time, such as on AIX.
24762 1997-01-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24764         * ltmain.sh.in (link): Eval $link_static_flag.  Reported by Bruno
24765         Haible.
24767         * PLATFORMS: Add to distribution.  Suggested by Bruno Haible.
24769 1997-01-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24771         * tests/demo-conf.test, tests/demo-inst.test, tests/demo-unst.test,
24772         tests/hardcode.test:
24773         Use $make instead of make.
24775         * tests/defs (make): Add definition of $make that uses the $MAKE
24776         environment variable, if set.  Suggested by Bruno Haible.
24778         * tests/demo-unst.test (leftovers): Change the find command to ignore
24779         files beginning with a dot, as egrep -v doesn't seem to do the
24780         trick.  Reported by Bruno Haible.
24782 1997-01-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24784         * ltconfig.in: Add support for SCO OpenServer 5.x.  From
24785         Christopher Olsen.
24787         (can_build_shared): Initialize at the top of the file, so that
24788         shared libraries aren't built on platforms that don't support
24789         them.
24791         * tests/hardcode.test: Added a test to make sure that libtool's idea of
24792         hardcoding system linkers is correct.
24794 1997-01-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24796         * ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi:
24797         Update the copyright completion years.
24799 1997-01-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24801         * ltconfig.in: Port to IRIX 5.3, 6.2.
24803 1997-01-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24805         * ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the
24806         port is trivial.
24808         * libtoolize.in: Add --dry-run option, -n for short.
24810 1997-01-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24812         * ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't
24813         understand "export something=val".  From Bruno Haible.
24815         * tests/Makefile.am (distclean-local): Remove all files that the tests
24816         may have created.  Reported by Bruno Haible.
24818         * For all tests, discover srcdir when running from the command
24819         line.
24821         * tests/demo-unst.test: Don't fail if make uninstall doesn't delete
24822         files beginning with a dot, since spurious .nfsXXX files may be
24823         present when running NFS.  Reported by Bruno Haible.
24825 1997-01-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24827         * ltmain.sh.in (compile): Recognize valid source file suffixes for
24828         Fortran and C++.
24830         * tests/suffix.test: New test to guarantee that libtool compile
24831         recognizes valid source file suffices.
24833 1996-12-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24835         * ltmain.sh.in (link): Don't allow *._o and *.l_o to be valid
24836         object type suffixes, in spite of Automake's current ansi2knr
24837         implementation.  Not all compilers allow non-`.o' suffixes.
24839 1996-12-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24841         * ltmain.sh.in (link): Delete the `libtool' version type.
24843 1996-12-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24845         * ltconfig.in: Use the full autoconf syntax when checking for GNU
24846         C.  Delete library stripping program, until we have a correct
24847         test.
24849 1996-12-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24851         * ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm.  From Mark
24852         Kettenis.
24854 1996-12-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24856         Reported by Charles Kerr:
24857         * doc/libtool.texi (Creating Object Files): Doc fix independant ->
24858         independent.
24860         * ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library
24861         dependencies.
24863 1996-12-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24865         * Release 0.7.
24867         * Makefile.am (EXTRA_DIST): Add README-automake to the
24868         distribution.
24870         * ltmain.sh.in (link): When linking libtool libraries, use
24871         standard objects if they are PIC.  This prevents spurious warnings
24872         about invalid suffixes on AIX.
24874         * demo/Makefile.am: Rename libhell to libhello, so that we're not
24875         quite as offensive.
24877         * ltconfig.in: Remove unnecessary host validity checking.
24879         * ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la
24880         is good enough (for consistency with *.a handling).
24882         * tests/demo.test: Break up into demo-conf.test, demo-make.test,
24883         demo-exec.test, demo-inst.test, and demo-unst.test, so that passes
24884         and failures are reported more quickly.
24886         * tests/link-2.test: Test to make sure that .lo files don't get built
24887         directly into programs.
24889 1996-12-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24891         * ltmain.sh.in (link): Accept files ending in .a as standard
24892         object files.  Reported by Ulrich Drepper.
24893         Remove support for creating profiled libraries (for now).
24894         Transform all library objects into standard objects when linking a
24895         program.
24897         * ltconfig.in (thisdir): How embarrassing!  An error in the regexp
24898         for finding the directory component of the script path.
24900         * tests/tlibtool: A typically-configured libtool script, that uses
24901         ../ltmain.sh.in for its backend.
24903         * tests/link.test: Make sure that it is legal to link against .a files.
24905 1996-12-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24907         * ltmain.sh.in (compile): Support `.S' (preprocessed assembler)
24908         files.  Reported by Anthony Green.
24910         * libtoolize.in: Give clearer instrutions for how to update
24911         aclocal.m4.
24913         * ltconfig.in, ltmain.sh.in (link): Add support for creating
24914         reloadable objects.
24916 1996-12-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24918         * ltmain.sh.in (install): Fix passing -n flag to `libtool
24919         --finish'.
24920         (compile): Compile `.lo' and `.o' objects at the same time so that
24921         non-PIC objects (if they are available) can be used for linking
24922         into programs and creating static archives.  Suggested by Ulrich
24923         Drepper.
24925 1996-12-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24927         * ltmain.sh.in (link): Give the full path to the libtool library
24928         when sourcing it.
24930         * ltconfig.in (old_striplib): Do a configuration test to determine
24931         if old-style libraries actually can be stripped or not.
24933 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24935         * tests/demo.test: Try compiling the ../demo subdirectory, with no
24936         special options.
24938         * test-e.test: Check that we haven't used `test -e' anywhere in
24939         our portable shell scripts.
24941 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24943         * ltconfig.in: Delete reference to ABOUT-LIBS.
24945         * tests: Added new subdirectory.
24947         * doc/libtool.texi: Doc fixes, and finished up the Configuring
24948         chapter.
24950         * ltmain.sh.in (link): Allow *._o and *.l_o to be valid object
24951         file suffixes, for Automake's ansi2knr implementation.
24952         New option -version-info replaces -version-file.
24954         [help]: Give a pointer to mode-specific help when appropriate.
24956         * ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC.
24958         * demo: Also test Automake's ansi2knr support.
24960 1996-11-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24962         * ltconfig.in: Bug fixes for AIX 4, and for static platforms.
24964         * ltmain.sh.in (install): Fix for loops over arguments.
24965         Need to quote ${IFS= } -> "${IFS= }".
24966         (link): Fix soname_spec bug.  Create objdir whether or not we have
24967         shared libraries.
24969         * ltconfig.in: Check for library stripping program.
24970         Use test -f instead of test -e.
24972 1996-11-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24974         * ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't
24975         set.
24976         Be verbose about the environment variables we were configured
24977         with.
24979         * ltmain.sh.in (objdir): change to .libs.
24981 1996-11-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24983         * ltmain.sh.in (install): Just plunge ahead with the
24984         installation... don't try to enforce dependencies.
24986 1996-11-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24988         * ltmain.sh.in: Fix up $libdir to be $dest in install mode.
24990 1996-11-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
24992         * ltmain.sh: Finished rewrite of compile, link, and install
24993         modes.
24995         * New ChangeLog file for libtool-0.7, since I've totally rewritten
24996         libtool.
24998 1996-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
25000         * For historical reasons: this is when I started writing libtool.
25001 -- 
25002   Copyright (C) 1996-2010 Free Software Foundation, Inc.
25004   This file is part of GNU Libtool.
25006 Copying and distribution of this file, with or without modification,
25007 are permitted in any medium without royalty provided the copyright
25008 notice and this notice are preserved.  This file is offered as-is,
25009 without warranty of any kind.