Imported Upstream version 2.4.3
[platform/upstream/libtool.git] / ChangeLog
1 2014-10-27  Gary V. Vaughan  <gary@gnu.org>
2
3         version 2.4.3
4         * NEWS: Record release date.
5
6         bootstrap: sync with upstream.
7         * gl/build-aux/bootstrap.in, gl/build-aux/funclib.sh: Sync with
8         upstream.
9         * bootstrap: Regenerate.
10
11         testsuite: fixes required for `make distcheck CC=g++`.
12         * tests/demo.at (Pdemo conf): Overide _LT_DEMO_SETUP foo.h to
13         declare foo2.
14         * tests/mdemo.at (_LT_SETUP): Don't wrap `sub` dectlaration in
15         C++ guards, because sub.c is also compiled with g++ in this test.
16         * tests/old-ltdl-iface.at (old.c): Add a return type to main
17         declaration as required by C++.
18
19         maint: fix a typo in THANKS.
20         * THANKS: s/macports\.com/macports.org/
21
22         syntax-check: use strlcpy instead of strncpy.
23         * libltdl/loaders/dyld.c (vm_sym): Use strlcpy to pacify syntax
24         checks.
25         * libltdl/ltdl.c (try_dlopen): Likewise.
26
27 2014-10-25  Gary V. Vaughan  <gary@gnu.org>
28
29         libtool: fix GCC linking with -fstack-protector.
30         * build-aux/ltmain.in (func_mode_link): Pass -fstack-protector*
31         to the linker as it is required at link time to resolve libssp symbols.
32         From Yaakov Selkowitz
33
34         libtool: support Mac OS 10.10 and newer.
35         The current template mistakenly treats a MACOSX_DEPLOYMENT_TARGET
36         value of "10.10" as "10.1" followed by junk. Thinking that the
37         build is targeting 10.1 Puma instead of 10.10 Yosemite, it tells
38         the linker to ignore undefined symbols instead of dynamically
39         resolving them. This can cause runtime crashes* and will affect
40         subsequent versions of OS X.
41         * libtool.mk (_LT_REQUIRED_DARWIN_CHECKS): Improve case match so
42         as to reject 10.10.x on the 10.1 and 10.2 branch.
43         * THANKS: Add Lawrence Velázquez.
44         From Lawrence Velázquez
45
46         bootstrap: commit latest to avoid regeneration at build time.
47         * bootstrap: Regenerate.
48
49         gnulib: sync with upstream.
50         * gnulib: Sync with upstream.
51
52 2014-05-13  Peter Rosin  <peda@lysator.liu.se>
53
54         libtool: delay expansion of $ECHO until the wrapper script runs
55         Expanding $ECHO too early leads to unquoted \n when ECHO='printf %s\n'.
56
57         Fixes bug#17478. Reported by Egmont Koblinger.
58
59         * build-aux/ltmain.in (func_emit_wrapper) [fast_install]: Quote the
60         $ECHO, and delay the expansion.
61
62 2014-05-06  Peter Rosin  <peda@lysator.liu.se>
63
64         libtool: fix nm test for MSYS/MinGW
65         The check for the -B option of nm does not work as intended on MSYS/MinGW.
66         MSYS converts /dev/null to the DOW/Windows "equivanent" special file NUL,
67         but the MinGW nm treats this file as any empty file. This means that
68         you might end up with some fallback nm instead of the desired nm. This
69         is not normally a problem, but if one nm is built without lto support, it
70         starts to matter.
71
72         Fixes sr #108558, reported by LRN.
73
74         * m4/libtool.m4 (LT_PATH_NM) [MSYS]: Use a non-existant file instead of
75         /dev/null when checking if nm supports -B.
76
77 2014-05-05  Peter Rosin  <peda@lysator.liu.se>
78
79         libtool: speed up ltwrapper_script detection in execute mode
80         Execute mode is slow and might even DOS the computer in extreme
81         cases when a parameter is a big binary file without newlines.
82         Work around this with different truncation if a suitable dd
83         utility is found.
84
85         Fixes bug#13472 and bug#16662.
86
87         Reported by Pavel Raiskup and Nick Bowler.
88
89         * m4/libtool.m4 (_LT_PATH_DD): New macro, for finding a dd utility
90         that works for the below purpose.
91         (_LT_CMD_TRUNCATE): New macro, for finding out how to truncate binary
92         pipes (fallback to the old sed truncation if no suitable dd is found
93         in _LT_PATH_DD).
94         (_LT_SETUP): Require _LT_CMD_TRUNCATE.
95         (LT_INIT): Require Autoconf 2.62, as needed by _LT_PATH_DD.
96         * build_aux/ltmain.in (func_lalib_p): Factor out the actual "generated
97         by libtool" test into...
98         (func_generated_by_libtool_p): ...this new function...
99         (func_ltwrapper_script_p): ...so that it can be reused here, when
100         truncating the pipe according to _LT_CMD_TRUNCATE.
101         * THANKS: Update.
102
103 2014-05-02  Peter Rosin  <peda@lysator.liu.se>
104
105         libtool: prevent lto from stripping the magic cookie from the cwrapper
106         Whole program optimization may remove unused symbols unless told they
107         are really needed. Fixes sr #108559 reported by LRN.
108
109         * build-aux/ltmain.in (func_emit_cwrapperexe_src:MAGIC_EXE): Try to ensure
110         that the magic cookie is preserved.
111
112 2014-02-12  Peter Rosin  <peda@lysator.liu.se>
113
114         tests: sprinkle -no-undefined when linking libraries
115         * tests/duplicate_conv.at, tests/f77demo.at, tests/fcdemo.at: Here.
116
117 2014-02-12  Peter Rosin  <peda@lysator.liu.se>
118
119         libtool: actually strip -Wl when relinking with $LD
120         Fixes the regression from commit v2.4.2.444 which is causing a
121         testsuite failure in duplicate_conv.at (seen on Cygwin).
122
123         * build-aux/ltmain.in (func_mode_link): $reload_cmds typically
124         starts with "$LD$reload_flag ..." when $LD is used to relink.
125         Make the case expression match that when checking if $LD is in
126         fact used to relink.
127
128 2014-02-10  Peter Rosin  <peda@lysator.liu.se>
129
130         bootstrap: fix description of func_sort_ver to match recent sort change
131         gl/build-aux/funclib.sh: Update comment to match reality.
132         bootstrap: Regenerate.
133
134 2014-02-05  Gary V. Vaughan  <gary@gnu.org>
135
136         doc: remove redundant "in order to" phrase where possible.
137         * doc/libtool.texi: Remove many occurrences of the redundant
138         phrase "in order to", where ever "to" is as clear or clearer.
139         * THANKS: Add attribution.
140         Reported by Dave Yost
141
142 2014-02-03  Bruce Korb  <bkorb@gnu.org>  (tiny change)
143
144         bootstrap: check for git tree with .git/. in case of soft links.
145         * gl/build-aux/bootstrap.in (func_require_git): Use
146         `test -d .git/.` to defeat soft-links versus non-GNU test.
147         * bootstrap: Regenerate.
148         * THANKS: Remove duplicate Bruce Korb entry.
149
150 2014-01-27  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
151
152         bootstrap: use `-d .git` to check whether we are in a git tree.
153         * gl/build-aux/bootstrap.in (func_require_git): .git is not a
154         regular file, use -d to check its existence.
155         * bootstrap: Regenerate.
156         * THANKS: Add Bruce Korb.
157         Reported by Bruce Korb
158
159 2014-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
160
161         libtool: opt_duplicate_compiler_generated_deps is harmful on Solaris
162         Fix for http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452.
163         * build-aux/ltmain.in (libtool_validate_options): disable the
164         opt_duplicate_compiler_generated_deps optimization for Solaris2 so
165         that gcc-4.9+ compiled C++ code with -Wl,-Bdirect on 64-bit Solaris
166         x86 can avoid unwinding failures caused by accidental mixing of the
167         libc and libgcc_s unwinders in a single executable.
168
169 2014-01-15  Gary V. Vaughan  <gary@gnu.org>
170
171         bootstrap: check for git checkout correctly.
172         * gl/bulid-aux/bootstrap.in (func_require_git): Use .git instead
173         of .gitignore to recognise a git checkout.
174         * bootstrap: Regenerate.
175
176 2014-01-11  Todd C. Miller  <Todd.Miller@courtesan.com>  (tiny change)
177
178         libtoolize: don't remove install-sh.
179         If you are not using automake, libtoolize would remove install-sh.
180         It needs the same treatment as config.guess and config.sub.
181         * libtoolize.in (func_require_seen_libtool): Remove install-sh
182         from $all_pkgaux_files, the list of files removed by
183         `libtoolize --force`.
184         * THANKS: Add Todd C. Miller.
185         * NEWS: Update.
186
187 2014-01-07  Gary V. Vaughan  <gary@gnu.org>
188
189         options-parser: --version works with 'DO NOT EDIT' preamble again.
190         * gl/build-aux/options-parser (func_version): Don't quit on first
191         leading '##' line, otherwise DO NOT edit warnings prevent version
192         information from being extracted correctly.
193         * bootstrap: Regenerate.
194
195         bootstrap: specify particular version in buildreq with =x.y.
196         * gl/build-aux/bootstrap.in (func_check_versions): If the version
197         number begins with '=' then it must match the installed version of
198         the named tool exactly.
199         * gl/doc/bootstrap.texi (buildreq): Document the '=vernum' feature.
200         * bootstrap: Regenerate.
201
202 2014-01-05  Gary V. Vaughan  <gary@gnu.org>
203
204         bootstrap: remove conftest.sed file droppings.
205         * gl/build-aux/funclib.sh: Remove conftest.sed when no longer
206         needed.
207         * bootstrap: Regenerate.
208
209 2014-01-04  Gary V. Vaughan  <gary@gnu.org>
210
211         bootstrap: replace spurious hyphen in some section comments.
212         * gl/build-aux/bootstrap.in: replace spurious hypen in same
213         section header comments with a space.
214         * gl/build-aux/extract-trace, gl/build-aux/options-parser:
215         Likewise.
216         * bootstrap: Regenerate.
217
218 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
219
220         inline-source: DO NOT EDIT warning only for top-level file.
221         * gl/build-aux/inline-source (func_include): When recursing, pass
222         through the value of `magic` so that only the very first #! magic
223         number has a DO NOT EDIT warning injected.
224         * bootstrap: Regenerate.
225
226         inline-source: gawk doesn't have boolean constants.
227         I've been writing a lot of Lua lately, but still a silly mistake:(
228         * gl/build-aux/inline-source (func_include): Use `magic` variable
229         to count #! lines found, and only output the DO NOT EDIT warning
230         after the first one.
231
232         edit-readme-alpha: adjust for recent README edits.
233         * build-aux/edit-readme-alpha: Adjust regexps for recent README
234         improvements.
235         * README.md: Fix a SPACE-TAB sanity check failure.
236
237         bootstrap: fix test-dollar sanity check failure.
238         * gl/build-aux/bootstrap.in (func_ensure_README): quote argument.
239         * bootstrap: Regenerate.
240
241         libtool: rearrange header comments for correct version/help extraction.
242         * m4/libtool.m4 (_LT_COPYING): Rearrange the comments output to
243         the generated libtool script so that --version and --help behave
244         the same as pre-funclib.sh revisions.
245         (_LT_CONFIG_SAVE_COMMANDS): Likewise.
246
247         README: Tweak into markdown format and fix some bitrot.
248         * README: Moved from here...
249         * README.md: ...to here.  Make some changes to be valid markdown
250         format, and fix some inaccuracies in text that is out of date.
251         * .gitignore: Add README.
252
253         bootstrap: support automake README requirement.
254         * gl/build-aux/bootstrap.in (func_ensure_README): New function.
255         Link missing README to existing alternative naming.
256         (require_automake_options): New functions. Fetch AM_INIT_AUTOMAKE
257         options from configure.ac.
258         (func_reconfigure): If we're using automake, and it's not in
259         foreign mode, link a README file if possible.
260         * bootstrap: Regenerate.
261
262         configury: use bootstrap ChangeLog management feature.
263         * gl/build-aux/bootstrap.in (func_autoreconf): Accept an optional
264         directory argument to pass to $AUTORECONF.
265         Update doc-comment.
266         * bootstrap.conf (func_reconfigure): Remove. Don't completely
267         overwrite bootstrap's func_reconfigure, shadowing auto-ChangeLog
268         management.
269         (func_autopoint, func_libtoolize): Overwrite these un-needed
270         calls instead.
271         (libtool_autoreconf_libltdl): New hook function to run second
272         autoreconf in libltdl directory.
273         (libtool_force_changelog): Remove.  This is all handled by
274         bootstrap's func_reconfigure again.
275         * bootstrap: Regenerate.
276
277         bootstrap: force remove file droppings from previous run.
278         Now that we generate bootstrap.new with no write permission,
279         we have to force remove it before writing now content to the file.
280         * bootstrap.in (require_bootstrap_uptodate): Remove old
281         bootstrap.new output.
282         * bootstrap: Regenerate.
283
284         inline-source: add a DO NOT EDIT notice to generated files.
285         * gl/build-aux/inline-source (func_include): Add a DO NOT EDIT
286         notice below the #! magic number of generated files.
287         * gl/build-aux/bootstrap.in (func_require_bootstrap_uptodate):
288         Remove write bit from regenerated bootstrap.new if it differs
289         from incumbent bootstrap.
290         Change the update instructions to recommend `mv -f` to cope with
291         no write permission on old bootstrap script.
292
293         bootstrap: move included files below DO NOT EDIT comment.
294         * gl/build-aux/bootstrap.in: Reorder sections to load external
295         libraries as late as possible, leaving DO NOT EDIT comment
296         visible near the top of the generated bootstrap script.
297
298         maint: use before-save-hook in Emacs footers.
299         Updating to Emacs 24 now gives me warnings about write-file-hooks
300         being obsolete.
301         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
302         gl/build-aux/funclib.sh, gl/build-aux/inline-source,
303         gl/build-aux/options-parser: Set before-save-hook in Emacs file
304         footers instead of obsolete write-file-hooks.
305
306         libtoolize: use printf '%s\n' unconditionally.
307         It's been a year since the as_echo probes were removed in Autoconf,
308         so we can follow suit and remove our equivalent bs_echo probing
309         now.  Retain $ECHO in case users need to override default printf
310         calls in museum piece environments.
311         * gl/build-aux/funclib.sh (ECHO): Default to 'printf %s\n'.
312         (bs_echo): Remove.
313         Adjust all bs_echo callers to use $ECHO instead.
314         * bootstrap: Regenerate.
315         * NEWS: Update.
316
317 2014-01-02  Gary V. Vaughan  <gary@gnu.org>
318
319         bootstrap: push Peter's version sort fix back into funclib.sh.
320         Peter's a7462c5 fix was applied to the generated bootstrap script
321         instead of the funclib.sh source, and had have been overwritten
322         the next time bootstrap was regenerated.
323         * gl/build-aux/funclib.sh (func_sort_ver): Sort numerically on the
324         non-primary keys as well.
325         * bootstrap: Regenerate, with the change applied.
326
327 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
328
329         maint: change history.
330         * NEWS: Remove alpha release header.
331         * cfg.mk (old_NEWS_hash): Update.
332
333         libtool: only strip -Wl when linking with $LD.
334         * build-aux/ltmain.in (func_mode_link): Don't strip -Wl from the
335         linker flags, except when linking with $LD, otherwise compiler
336         drivers that don't recognize and pass linker flags through will
337         choke on unrecognized options.
338
339         bootstrap: fix gitlog-to-changelog detection.
340         * gl/build-aux/bootstrap.in (func_ifcontains): Use a for loop
341         that relies on $IFS for element splitting instead of a one-shot
342         case glob that is not tolerant to \n in $gnulib_modules.
343         * THANKS: Add Reuben Thomas.
344         Reported by Reuben Thomas
345
346         maint: update copyright notices to include 2014.
347         * .x-update-copyright: New file. Exclude files not owned by this
348         project from update-copyright rules.
349         * doc/libtool.texi: Replace m-dash with n-dash in texinfo
350         copyright notice so that update-copyright matches correctly.
351         Undo bogus copyright updates to example output from gdb session.
352         Bump copyright year.
353         * Changelog.old: Revert bogus updates from previous years
354         without .x-update-copyright.
355         AUTHORS, HACKING, Makefile.am, NEWS, README, THANKS, TODO,
356         bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
357         build-aux/git-hooks/commit-msg, build-aux/ltmain.in, cfg.mk,
358         configure.ac, gl/build-aux/bootstrap.in,
359         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
360         gl/build-aux/inline-source, gl/build-aux/options-parser,
361         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
362         libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
363         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
364         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
365         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
366         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
367         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
368         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
369         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
370         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
371         libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
372         libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
373         libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
374         m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
375         m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
376         tests/am-subdir.at, tests/archive-in-archive.at,
377         tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
378         tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
379         tests/cwrapper.at, tests/darwin.at, tests/demo.at,
380         tests/depdemo.at, tests/deplib-in-subdir.at,
381         tests/deplibs-ident.at, tests/deplibs-mingw.at,
382         tests/destdir.at, tests/dlloader-api.at,
383         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
384         tests/duplicate_deps.at, tests/duplicate_members.at,
385         tests/early-libtool.at, tests/exceptions.at,
386         tests/execute-mode.at, tests/exeext.at, tests/export-def.at,
387         tests/export.at, tests/f77demo.at, tests/fail.at,
388         tests/fcdemo.at, tests/flags.at, tests/help.at,
389         tests/indirect_deps.at, tests/infer-tag.at,
390         tests/inherited_flags.at, tests/install.at,
391         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
392         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
393         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
394         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
395         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
396         tests/need_lib_prefix.at, tests/no-executables.at,
397         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
398         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
399         tests/resident.at, tests/runpath-in-lalib.at,
400         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
401         tests/standalone.at, tests/static.at, tests/stresstest.at,
402         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
403         tests/template.at, tests/testsuite.at, tests/versioning.at,
404         tests/with-pic.at: Bump copyright year.
405
406         gnulib: update to latest upstream revision.
407         * gnulib: Update.
408
409         tests: gcj cannot reliably compile directly to .o from .java
410         Some 4.3.x and 4.4.x releases of gcj insert a spurious 'dummy'
411         symbol into every object file when compiling directly from .java
412         to .o:
413         * tests/convenience.at (GCJ): make .class files from .java
414         sources first, and then compile those to native objects. This
415         works around http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42143
416
417 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
418
419         testsuite: with SunStudio12.x f77, don't fail on system symbols
420         Modern SunStudio f77 is just a wrapper for f90, which
421         explains why current master fails these test groups with:
422
423          Undefined      first referenced
424           symbol            in file
425          __f90_slw_ch      .libs/foof2.o
426          __f90_sslw        .libs/foof2.o
427          __f90_eslw        .libs/foof2.o
428          ld: fatal: symbol referencing errors. No output written to
429         .libs/libfoo2.so.0.0.0
430
431         So we allow some undefined symbols in the libraries, which are
432         resolved by the $(FLIBS) added to the final binaries in the tests.
433         This seems like the simpler, and less error inducing solution to
434         me (compared to adding $(FLIBS) to every library LDFLAGS line).
435         * tests/f77demo.at (libfoo_la_LDFLAGS, libfoo2_la_LDFLAGS)
436         (libfoo3_la_LDFLAGS, libmix_la_LDFLAGS): Remove -no-undefined
437         flag.
438         * tests/fcdemo.at: Likewise.
439
440 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
441
442         maint: use $SED and $GREP, not sed and grep in all scripts.
443         Choosing between hardcoding a tool's name, or using the shell
444         variable with a path to the user's prefered implementation or
445         configure's idea of the best available is a premature
446         optimisation.
447         * build-aux/ltmain.in, gl/build-aux/bootstrap.in,
448         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
449         libtoolize.in: Use $SED and $GREP consistently throughout,
450         instead of hardcoding sed and grep.
451         * bootstrap: Regenerate.
452
453         tests: use TESTS_ENVIRONMENT for EGREP and FGREP.
454         Be consistent about passing commands to the testsuite, and use
455         TESTS_ENVIRONMENT consistent.
456         * Makefile.am (TESTS_ENVIRONMENT): Add EGREP and FGREP.
457         * tests/testsuite.at: Remove EGREP and FGREP extractions from
458         generated libtool script.
459
460         tests: use $GREP throughout.
461         Trust the user, and use $GREP from TESTS_EVVIRONMENT uniformly.
462         * Makefile.am (TESTS_ENVIRONMENT): Add GREP setting.
463         * tests/am-subdir.at, tests/archive-in-archive.at, tests/bindir.at,
464         tests/configure-iface.at, tests/cwrapper.at, tests/darwin.at,
465         tests/demo.at, tests/destdir.at, tests/dumpbin-symbols.at,
466         tests/early-libtool.at, tests/execute-mode.at, tests/export-def.at,
467         tests/export.at, tests/f77demo.at, tests/fcdemo.at, tests/flags.at,
468         tests/help.at, tests/inherited_flags.at, tests/install.at,
469         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
470         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlopen.at,
471         tests/lt_dlopenext.at, tests/ltdl-api.at, tests/ltdl-libdir.at,
472         tests/mdemo.at, tests/old-m4-iface.at, tests/pic_flag.at,
473         tests/resident.at, tests/runpath-in-lalib.at, tests/search-path.at,
474         tests/static.at, tests/sysroot.at, tests/template.at,
475         tests/testsuite.at, tests/versioning.at: Replace all hardcoded grep
476         invocations with $GREP.
477
478         tests: use $SED throughout.
479         Trust the user, and use $SED from TESTS_ENVIRONMENT uniformly.
480         Hardcoding 'sed' for "simple" edits is a premature optimisation.
481         * tests/cdemo.at, tests/cmdline_wrap.at, tests/cwrapper.at,
482         tests/darwin.at, tests/demo.at, tests/duplicate_conv.at,
483         tests/duplicate_members.at, tests/execute-mode.at, tests/export.at,
484         tests/inherited_flags.at, tests/install.at, tests/libtoolize.at,
485         tests/mdemo.at, tests/need_lib_prefix.at, tests/old-m4-iface.at,
486         tests/sysroot.at, tests/tagdemo.at, tests/testsuite.at: Replace all
487         hardcoded sed invocations with $SED.
488
489         tests: run cmdline_wrap last, or not at all if anything else failed.
490         * Makefile.am (TESTSUITE_AT): Move stresstest.at and cmdline_wrap.at
491         to the end of the list.
492         * tests/cmdline_wrap.at: If previous tests have failed, then we
493         already know that rerunning them will fail too, so save time by
494         skipping in that case.
495
496         configury: remove spurious g modifier in sed expression.
497         * Makefile.am (rebuild): Remove useless g modifier from sed
498         expression.
499
500         configury: use $(SED) where input does not end in newline.
501         On Solaris machines the system sed does not process the last
502         line of input unless it ends with a newline, which means it
503         cannot be used to massage the output of git-version-gen, because
504         it deliberately omits the terminating newline.
505         * Makefile.am (rebuild): Use the sed command found by configure,
506         which has a better chance of working properly than the first sed
507         on PATH.
508
509         tests: skip fcdemo checks when $FC cannot compile fortran90.
510         Avoid spurious fcdemo failures when Autoconf picks f77 or
511         similar for a fortran90 compiler.
512         * tests/testsuite.at (LT_AT_TAG): Using FC and FCFLAGS from make
513         TESTS_ENVIRONMENT, check that we really can compile fortran90
514         or else skip.
515
516         funclib.sh: improve comments.
517         * gl/build-aux/funclib.sh: Add a comment explaining the need for
518         extra SED and GREP searches.
519
520 2013-12-09  Peter Rosin  <peda@lysator.liu.se>
521
522         maint: fix out-of-tree autoreconf w/o manual rebootstrap
523         build-aux/ltmain.in: Look for funclib.sh and options-parser in
524         the same location ltmain.in is found.
525
526 2013-11-19  Peter Rosin  <peda@lysator.liu.se>
527
528         bootstrap: fix version sort
529         Reported by Ozkan Sezer who suffered from makeinfo 4.13 being detected
530         as lesser than the required makeinfo 4.8.
531
532         * bootstrap (func_sort_ver): Sort numerically on the non-primary keys
533         as well.
534
535 2013-11-08  Peter Rosin  <peda@lysator.liu.se>
536
537         tests: Use a basic grep that matches the basic regexp style.
538         Fixes a testsuite failure on Cygwin.
539
540         * tests/tagdemo.at: Use grep instead of egrep.
541
542 2013-10-29  Gary V. Vaughan  <gary@gnu.org>
543
544         bootstrap: fix a quoting error.
545         * gl/build-aux/bootstrap.in (func_require_buildreq_autoconf): Quote
546         the extracted version number correctly so that it is displayed in
547         verbose mode.
548
549 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
550
551         funclib.sh: simplify version comparison functions.
552         * gl/build-aux/funclib.sh (func_sort_ver): Much simplified.
553         (func_lt_ver): New function, return true if arguments are in
554         ascending order.
555         * gl/build-aux/bootstrap.in: Simplify with func_lt_ver.
556         * gl/build-aux/do-release-commit-and-tag.diff: Likewise.
557         * bootstrap: Regenerate.
558
559         Co-Authored-by: Paul Eggert <eggert@cs.ucla.edu>
560
561 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
562
563         bootstrap: show found GREP and SED in verbose mode.
564         * gl/build-aux/bootstrap.in (EGREP, FGREP, GREP, SED): Remove.
565         These are already set by funclib.sh.
566         (func_prep): After --verbose has been processed, show the paths
567         to GREP and SED found by funclib.sh.
568         * bootstrap: Regenerate.
569
570         refactor: simplify program path searching in funclib.sh.
571         * gl/build-aux/funclib.sh (func_path_progs): New function. Factor
572         out common code from GREP and SED searches.
573         (func_check_prog_sed, func_check_prog_grep): New functions, for
574         non-common code.
575         (scriptversion): Update.
576         * bootstrap: Regenerate.
577
578         bootstrap: search for a non-truncating grep binary.
579         On at least Unixware 7.1.4, the first grep binary on PATH is
580         unable to process the extract-trace scripts.
581         * gl/build-aux/funclib.sh (GRUP): Search PATH for a grep binary
582         that doesn't truncate its own output if available, and set GREP
583         accordingly.
584         * Makefile.am (SCRIPT_ENV): Add setting for GREP.
585         * bootstrap: Regenerate.
586         Reported by Tim Rice.
587
588         bootstrap: search for a non-truncating sed binary.
589         On at least Unixware 7.1.4, the first sed binary on PATH is
590         unable to process the extract-trace scripts.
591         * gl/build-aux/funclib.sh (PATH_SEPARATOR): Set to : or ;
592         according to a feature test.
593         (func_executable_p): New function.
594         (SED): Search PATH for a sed binary that doesn't truncate its
595         own output if available, and set SED accordingly.
596         (scriptversion): Update.
597         * Makefile.am (SCRIPT_ENV): New macro, for propagating configured
598         variables.
599         (ltdl_ac_aux_dir, $(ltmain_sh), install-data-local): Use it.
600         * bootstrap: Regenerate.
601         Reported by Tim Rice.
602
603 2013-10-27  Gary V. Vaughan  <gary@gnu.org>
604
605         tests: use autotest as_unset rather than rerolling $unset locally.
606         On at least Unixware 7.1.4, the shell variable 'unset' gets set
607         to 'no' during the testsuite run, breaking several test cases.
608         We should have been using Autotest $as_unset anyway.
609         * tests/testsuite.at (unset): Remove test and variable setting.
610         (LT_AT_MAKE): Use $as_unset as provided by autotest boilerplate
611         instead of our own $unset.
612         * tests/demo.at (uninstalled libraries ave priority): Likewise.
613         Reported by Tim Rice.
614
615         maint: post-release administrivia
616         * NEWS: Add header line for next release.
617         * .prev-version: Record previous version.
618         * cfg.mk (old_NEWS_hash): Auto-update.
619
620 2013-10-26  Gary V. Vaughan  <gary@gnu.org>
621
622         version 2.4.2.418
623         * NEWS: Record release date.
624
625         gnulib: update to latest upstream revision.
626         * gnulib: Update.
627
628         gnulib: use func_sort_ver instead of GNU sort -V in do-release-commit-and-tag.
629         * gl/build-aux/do-release-commit-and-tag: Source funclib.sh and
630         then use portable func_sort_ver rather than force installation of
631         all GNU coreutils just for sort -V support.
632
633         refactor: move func_sort_ver from bootstrap.in to funclib.sh.
634         * gl/build-aux/bootstrap.in (func_sort_ver): Move from here...
635         * gl/build-aux/funclib.sh (func_sort_ver): ...to here.
636         * bootstrap: Regenerate.
637
638         tests: use K&R main() syntax for old-ltdl-iface.at.
639         At least Mac OS 10.8.5 clang chokes on the previous
640         'const void *argv[]' parameter, but since we don't use it
641         anyway, keep to the theme of old api support and use K&R
642         syntax.
643         * tests/old-ltdl-iface.at (old.c): Use 'main ()' instead of
644         unportable 'int main (int argc, const void *argv[])'.
645
646         libltdl: bump -version-info revision by 1.
647         The only changes to libltdl sources since v2.4.2 have been
648         cosmetic and stylistic.
649         * libltdl/ltdl.mk (LTDL_VERSION_INFO): For a release with no
650         interface changes C:R:A becomes C:R+1:A.
651
652         maint: Update README-release for Makefile.inc -> ltdl.mk rename.
653         * gl/top/README-release.diff: s/Makefile.inc/ltdl.mk/g
654
655         maint: bump serials on m4 sources changed since v2.4.2.
656         * m4/argz.m4: Bump serial to 6.
657         * m4/libtool.m4: Bump serial to 58.
658         * m4/ltdl.m4: Bump serial to 19.
659         * m4/ltoptions.m4: Bump serial to 8.
660
661         maint: fix a syntax-check violation from commit 12641bd.
662         * build-aux/ltmain.in (func_mode_link): Reverse test operands to
663         forestall misinterpretation of contests of shell variable as
664         operand 1.
665
666 2013-10-10  Vadim Zeitlin  <vz-libtool@zeitlins.org>  (tiny change)
667
668         libtool: Don't fall back to static libraries if building them was disabled
669         If -no-undefined was not specified but the platform didn't
670         support shared libraries with undefined symbols (e.g. Cygwin/
671         MinGW), static libraries were built instead of shared ones,
672         even if building them was explicitly disabled with --disable-
673         static configure option.
674
675         Fix this by stopping with a fatal error if a shared library
676         can't be built in this case instead of unexpectedly building a
677         static library instead.
678
679         * libltdl/config/ltmain.m4sh (func_mode_link()): Stop with
680         fatal error when trying to build a shared library without -no-
681         undefined on a platform not supporting undefined symbols in
682         shared libraries.
683
684 2013-10-10  Brooks Moses  <bmoses@google.com>
685
686         libtool: Remove unneeded quotes in assignment.
687         The quotes in this assignment cause "make syntax-check" to
688         fail.  Thus, this patch removes them.
689
690 2013-10-09  Fabian Groffen  <grobian@gentoo.org>  (tiny change)
691
692         libtool: Fix x86_64-pc-solaris2.* GNU ld breakage
693         Since commit [1] libtool tries to set a 64-bits target for GNU
694         ld.  However, it does so wrongly for x86_64-pc-solaris2.*
695         targets, causing libtool to believe the linker is called
696         ld_sol2.  There is no such thing, and it obviously breaks
697         things further down.  Some people wrongly assume there is
698         supposed to be an ld_sol2 on their systems, e.g. [2].
699
700         I think the original change is fragile, because it assumes it
701         has all CHOSTs matched, then appends _sol2.  In the wild,
702         people have used amd64-pc-solaris2* too, so perhaps it would
703         be safer if the code only appended _sol2 if there is actually
704         an explicit target set.
705
706         Anyhow, since the 64-bits sparc target is called sparc64-* or
707         sparcv9-*, the sparc case is already correctly handled, so in
708         the attached patch, I just added an x86_64-* case, although I
709         could imagine relaxing the i?86 case to *86*-pc-solaris2* too.
710
711         In any case, defaulting to a linker called ld_sol2 is wrong.
712
713         [1] http://lists.gnu.org/archive/html/libtool-commit/2011-02/
714         msg00000.html
715         [2] http://osdyson.org/issues/8
716
717 2013-10-09  Olivier Blin  <olivier.blin@softathome.com>  (tiny change)
718
719         libtool: Fix detection of ld version with parentheses.
720         ld from crosstool-NG reports a version string with an extra
721         version number in a parenthetical note:
722         GNU ld (crosstool-NG 1.13.0) 2.21.1
723
724         This made libtool assume that the ld version was the
725         crosstool-NG version (1.13.0) instead of the real ld version
726         (2.21.1).
727
728         To fix the ld version string, this patch filters out any string
729         between parentheses that is followed by a space.
730
731         Because of this bug, filtering of exported symbols was not
732         taking place with crosstool-NG toolchains.
733
734         This issue has bee noticed when building pango, which exported
735         harfbuzz symbols that should have remained hidden.
736
737 2013-10-09  Brooks Moses  <bmoses@google.com>
738
739         libtool: Fix comment indentation
740         This trivial patch fixes indentation on a comment to match
741         the style used elsewhere in m4/libtool.m4.
742
743 2013-10-09  DJ Delorie  <dj@redhat.com>
744
745         libtool: Add TPF settings for LT_SYS_DLOPEN_SELF
746         * m4/libtool.m4: Since we know that all TPF builds are cross-
747         builds, do not attempt to run linker tests during config. Use
748         known constants instead, since we know how dlopen() is
749         implemented.
750
751 2013-10-09  Vincent Lefevre  <vincent@vinc17.net>  (tiny change)
752
753         libtool: Fix $wl setting for tcc on GNU systems
754         (This addresses http://bugs.debian.org/663945.  See there for
755         more-detailed discussion.)
756
757         tcc gained support for "-Wl,-rpath -Wl,<directory>" in its
758         commit 7fb0482a ("Support linker options passed in several -Wl
759         param", 2012-03-14) but libtool doesn't know to use it.  Teach
760         it.
761
762         Without this change, running "make check" on MPFR when it has
763         been built with tcc and shared libraries doesn't work because
764         libtool generates a -rpath option, which tcc doesn't support.
765
766 2013-10-09  Peter Johansson  <trojkan@gmail.com>
767
768         libtool: use AS_HELP_STRING in LT_WITH_SYSROOT help message.
769         This patch fixes so help output is formatted similar with
770         other macros using AS_HELP_STRING. Also it outputs '[=DIR]'
771         as I suspect intended rather than '=DIR'.
772
773 2013-10-09  Joseph Prostko  <joe.prostko@gmail.com>  (tiny change)
774
775         libtool: Haiku change for shlibpath_overrides_runpath
776         Pretty much all changes to Haiku for Libtool have been
777         upstreamed, however we currently have an incorrect value for
778         shlibpath_overrides_runpath.  It should be "no" instead of
779         "yes".
780
781         Previously Scott McCreary had submitted patches for us, but I
782         told him I would work to get this committed, as he is quite
783         busy lately.
784
785         Here is a commit he made to our Haiku Ports site though, that
786         shows the exact change I am proposing done against Libtool
787         2.4.2.
788
789         http://ports.haiku-files.org/browser/haikuports/sys-devel/
790         libtool/patches/libtool-2.4.2.patch
791
792 2013-10-09  Brooks Moses  <bmoses@google.com>  (tiny change)
793             Johannes Obermayr  <johannesobermayr@gmx.de>
794
795         libtool: Discard "-mllvm $arg" options when linking.
796         Clang accepts options of the form "-mllvm $arg", and passes the
797         argument as an option to LLVM.  These options caused problems
798         for Libtool when linking; in some cases, the -mllvm option is
799         passed through but the corresponding argument is dropped.  (See
800         for example http://llvm.org/bugs/show_bug.cgi?id=14716.)
801
802         This patch resolves the issue by explicitly matching -mllvm and
803         taking an argument.  Since Clang never uses LLVM for linking,
804         the matched "-mllvm $arg" option is irrelevant for the link
805         step, and we can simply discard it once we've recognized it.
806
807 2013-10-09  Ondřej Bílka  <neleai@seznam.cz>
808
809         maint: Fix various comment and documentation typos.
810         Ondřej writes: "Hi, this is upstream version of patch that I
811         sent to gcc.  I generated this patch with tool that I am
812         writing: https://github.com/neleai/stylepp"
813
814         (Note: The generated patch was adjusted to retain the non-US
815         but correct spelling of 'rigourous' before commit.  --Brooks)
816
817 2013-10-08  David 'Digit' Turner  <digit@google.com>
818
819         libtool: Add Android/Linux support.
820         This patch adds proper Android support to libtool. The main
821         issues are the following:
822
823           - Versioned libraries are not supported by the platform and
824             its build/packaging tools.
825
826           - The dynamic linker is not GNU ld, there is no support for
827             DT_RUNPATH.
828
829           - Similarly, there is no ldconfig.
830
831 2013-09-17  Peter Rosin  <peda@lysator.liu.se>
832
833         libtool: trust -print-search-dirs from recent GCC
834         Alan Modra hints in [1] that -print-search-dirs was fixed in
835         GCC 4.2(?), so that it nowadays automatically appends
836         -print-multi-os-directory for the applicable directories. I.e.
837         it should no longer be necessary for libtool to append a second
838         ../lib64 when GCC has already done so. Also, the multi-os
839         appending loop seems to have been added specifically for early
840         (arguably broken) bi-arch enabled GCCs that printed -m32
841         directories even though -m64 was the default [2]. So, my
842         conclusion is that we want any libtool magic to affect
843         -print-search-dirs output from contemporary GCCs as little as
844         possible, while continuing to append the
845         -print-multi-os-directory for the legacy case.
846
847         Fixes bug#15321 reported by Ozkan Sezer.
848
849         [1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20425
850         [2] http://lists.gnu.org/archive/html/bug-libtool/2006-09/msg00019.html
851
852         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): If any of the
853         directories printed by -print-search-dirs ends with the
854         content of -print-multi-os-directory, then assume that
855         GCC adds the multi-os-directory where appropriate all by
856         itself and hence don't try to second guess when to add
857         it manually.
858         * THANKS: Update.
859
860 2013-09-16  Gary V. Vaughan  <gary@gnu.org>
861
862         bootstrap: clean up spurious 'gnulib-cache.m4 missing' error.
863         * gl/build-aux/bootstrap.in (func_reconfigure): Don't show an
864         error when running without gnulib-cache.m4.
865         * bootstrap: Regenerate.
866
867 2013-09-15  Gary V. Vaughan  <gary@gnu.org>
868
869         bootstrap: make ensure_changelog work for update mode projects.
870         * gl/build-aux/bootstrap.in (func_bootstrap): Move
871         func_changelog_ensure invocation from here...
872         (func_reconfigure): ...to here. If gnulib_modules is empty, then
873         grep gnulib-cache.m4 for gitlog-to-changelog before invoking
874         func_changelog_ensure.
875         * bootstrap: Regenerate.
876
877         bootstrap: fetch defaults from gnulib-cache.m4 for non-imported projects.
878         Recent changes uncovered some bugs in handling of gnulib-tool
879         options for projects that check in gnulib-cache.m4 rather than
880         keep a separate list of modules and options in bootstrap.conf.
881         * gl/build-aux/bootstrap.in (func_require_doc_base)
882         (func_require_gnulib_name, func_require_local_gl_dir): New
883         functions to set defaults from gnulib-cache.m4 in projects that
884         use gnulib-tool in --update mode.
885         (func_require_gnulib_tool_base_options): Use them to fetch
886         defaults.
887         (func_require_gnulib_copy_cmd): New function to calculate the
888         options required for gnlib-tool copy command.
889         (func_gnulib_tool_copy_file): Simplify accordingly.
890         (scriptversion): Bump.
891
892 2013-09-05  Gary V. Vaughan  <gary@gnu.org>
893
894         maint: normalise formatting of recent commit log entry.
895         * build-aux/git-log-fix: Add a summary line to ChangeLog entry of
896         most recent commit.
897
898 2013-09-05  Brooks Moses  <bmoses@google.com>
899
900         maint: add Brooks Moses to AUTHORS file.
901         * AUTHORS: Add myself to committers list.
902
903 2013-08-29  Gary V. Vaughan  <gary@gnu.org>
904
905         bootstrap: gnulib_tool=true means no gnulib submodule.
906         * gl/build-aux/bootstrap.in (func_require_gnulib_tool): No
907         sneaking off and cloning gnulib when the user already specified
908         gnulib_tool=true in their bootstrap.conf!
909         * bootstrap: Regenerate.
910
911 2013-08-23  Alan Modra  <amodra@bigpond.net.au>
912
913         bootstrap: make first char of IFS a space.
914         Putting tab first in IFS breaks func_echo_all usage of $*,
915         resulting in failure of func_infer_tag to match a command line
916         using a $CC with trailing spaces. The trailing spaces were
917         stripped out of CC_expanded but words in $CC were separated by
918         tabs. This didn't match the makefile expansion of $CC using the
919         standard IFS with a first char of space.
920         * gl/build-aux/funclib.sh (IFS): Make first char a space.
921         * bootstrap: Regenerate.
922
923 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
924
925         bootstrap: support --no-git and --no-po options.
926         * gl/build-aux/bootstrap.in (bootstrap_parse_options): Accept
927         --no-git as an alias for --skip-git for compatibility with gnulib
928         bootstrap, and --no-po for symmetry.
929         Reported by Mike Miller.
930
931         bootstrap: support gnulib gnulib_tool_option_extras settings.
932         * gl/build-aux/bootstrap.in (func_gnulib_tool): Even though we
933         don't need it, support gnulib_tool_option_extras for bootstrap.conf
934         ported from gnulib bootstrap.
935         * bootstrap: Regenerate.
936         Reported by Mike Miller.
937
938         bootstrap: support sha1 binary on OpenBSD.
939         * gl/build-aux/bootstrap.in (func_update_po_files): Remove the
940         use of --status in a way that will suppress all error messages,
941         but since this is only used to minimize updates, it shouldn't
942         cause an issue.
943         Look for a sha1 binary if the other SHA1SUM settings are not
944         found.
945         Also exit early if there is a problem updating the po file
946         checksums.
947         * bootstrap: Regenerate.
948         Ported from a gnulib patch by Padraig Brady.
949
950         bootstrap: support tools that don't accept '--version' in buildreq.
951         * gl/build-aux/bootstrap.in (func_check_tool): Check whether there
952         is an executable as given or on the command PATH.
953         (func_check_version): Use func_check_tool to avoid invoking --version
954         when buildreq specifies '-' for the version number.
955         * bootstrap: Regenerate.
956         Reported by Mike Miller.
957
958         bootstrap: diagnose bad $buildreq formatting.
959         Particularly when porting from gnulib bootstrap to libtool
960         bootstrap, it's easy to forget the extra URL column used for
961         error reporting.
962         * gl/build-aux/bootstrap.in (func_check_versions): A non-URL
963         pattern in the 3rd column of buildreq triggers a fatal error.
964         * bootstrap: Regenerate.
965         Reported by Mike Miller.
966
967 2013-08-23  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
968
969         bootstrap: support OpenBSD sed.
970         * gl/build-aux/bootstrap.in (func_insert_if_absent): Work around
971         the problem of OpenBSD sed not supporting '-' as a notation for
972         standard input.
973         * bootstrap: Regenerate.
974         * THANKS: Add Mike Miller.
975         Reported by Mike Miller.
976
977 2013-08-23  Steve Ellcey  <sellcey@mips.com>
978             Gary V. Vaughan  <gary@gnu.org>
979
980         libtool: set correct linker ABI flags on mips64 linux.
981         m4/libtool.m4 (_LT_ENABLE_LOCK): Select the n32 or n64 ABI when
982         linking to match the ABI produced with the user's compiler flags.
983
984 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
985
986         maint: correct many abuses of the word "which".
987         * HACKING, NEWS, TODO, bootstrap, bootstrap.conf,
988         build-aux/ltmain.in, cfg.mk, configure.ac, doc/libtool.texi,
989         doc/notes.texi, gl/build-aux/bootstrap.in,
990         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
991         gl/doc/bootstrap.texi, libltdl/libltdl/lt_system.h,
992         libltdl/loaders/loadlibrary.c, libltdl/lt__strl.c,
993         libltdl/lt_dlloader.c, libltdl/ltdl.c, libtoolize.in,
994         m4/libtool.m4, m4/ltdl.m4, m4/ltsugar.m4, m4/lt~obsolete.m4,
995         tests/exceptions.at, tests/need_lib_prefix.at, tests/static.at:
996         Use "which" correctly, or replace with "that", "where" or "what"
997         as appropriate.
998
999 2013-08-23  Brook Moses  <bmoses@google.com>
1000
1001         libtool: improve comments for _LT_ENABLE_LOCK implementation.
1002         * m4/libtool.m4 (_LT_ENABLE_LOCK): enhance comments to explain
1003         why the code looks odd with 32bit flags in the 64bit section and
1004         vice versa.
1005
1006 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
1007
1008         libtool: fix refixed unmangled powerpc*le-linux support patch
1009         * m4/libtool.m4: fix refixed badly unmangled hunks from earlier
1010         powerpc*le changeset.
1011         Reported by Peter Rosin.
1012
1013         libtool: refix unmangled powerpc*le-linux support patch
1014         * m4/libtool.m4: refix badly unmangled hunks from earlier
1015         powerpc*le changeset.
1016         Reported by Peter Rosin.
1017
1018 2013-08-22  Gary V. Vaughan  <gary@gnu.org>
1019
1020         libltdl: don't trip subdir-objects warning from Automake >= 1.14.
1021         Latest Automake releases now warn when subdir-objects is not
1022         specified in preparation for Automake 2.0.  The option has been
1023         in Automake for more than a decade, so there's minimal risk of
1024         someone using the next release of Libtool alongside an ancient
1025         release of Automake when bootstrapping libltdl client projects.
1026         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Add subdir-objects.
1027
1028         libtool: refactor powerpc*le-linux case branch expressions.
1029         libtool (_LT_ENABLE_LOCK): make inner case branch expressions
1030         consistent with outer case expression.
1031         Reported by Peter Rosin.
1032
1033 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
1034
1035         libtool: fix mangled powerpc*le-linux support patch
1036         * m4/libtool.m4: unmangled badly pasted hunks from previous
1037         changeset.
1038
1039         libtool: initial powerpc*le-linux support
1040         * m4/libtool.m4 (ld -m flags): Remove non-canonical ppc host match.
1041         Support little-endian powerpc linux host.
1042
1043 2013-06-17  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
1044
1045         libtool: fix conversion warnings in cwrapper
1046         build-aux/ltmain.in (func_emit_cwrapperexe_src:main): XMALLOC wants a
1047         size_t. Also use int instead of intptr_t for the return value (which
1048         is fine since the _spawnv call is synchronous).
1049         (func_emit_cwrapper_src) [MSVC]: Remove the intptr_t helper define.
1050         (func_emit_cwrapperexe_src:find_executable): Use size_t for variables
1051         involved in strlen computations.
1052         (func_emit_cwrapperexe_src:lt_setenv): Likewise.
1053         (func_emit_cwrapperexe_src:lt_extend_str): Likewise.
1054         (func_emit_cwrapperexe_src:lt_update_exe_path): Likewise.
1055         THANKS: Update.
1056
1057 2013-04-28  Peter Rosin  <peda@lysator.liu.se>
1058
1059         libtool: break all the way out when a good nm is found
1060         The current code tries to locate a compatible nm tool.  It starts with
1061         a prefixed nm tool (great!) and includes a plain nm too (that's fine).
1062         The problem is that the code searches for the prefixed nm before the
1063         plain nm (normally fine), but doesn't break once it has found a valid
1064         match, and the plain nm ends up the winner.
1065
1066         Report and analysis by Mike Frysinger.
1067
1068         * m4/libtool.m4 (LT_PATH_NM): Break all the way out on a good match.
1069
1070 2013-01-28  Peter Rosin  <peda@lysator.liu.se>
1071
1072         maint: update email address...
1073         * THANKS: ...of Jan Engelhardt.
1074
1075 2013-01-28  Jan Engelhardt  <jengelh@inai.de>
1076
1077         doc: fix an orthographic error
1078         * doc/libtool.texi (Install mode): Ensure, not insure.
1079
1080 2013-01-27  Gary V. Vaughan  <gary@gnu.org>
1081
1082         bootstrap: fix func_insert_if_absent bugs.
1083         * gl/build-aux/bootstrap.in (func_insert_if_absent): Print verbose
1084         message when there is a new entry to add.
1085         Also, make sure to update the .gitignore file when changed.
1086         * bootstrap: Regenerate.
1087         * THANKS: Add Pádraig Brady.
1088         Reported by Pádraig Brady.
1089
1090         bootstrap: factor out gnulib-tool option calculations.
1091         * gl/build-aux/bootstrap.in (func_gnulib_tool): Factor base option
1092         settings out...
1093         (require_gnulib_tool_base_options): ...to here.
1094         * bootstrap: Regenerate.
1095
1096         syntax-check: fix a quoted_test_operand violation.
1097         * gl/build-aux/bootstrap.in (func_insert_if_absent): Make sure
1098         test operands are quoted correctly.
1099         * bootstrap: Regenerate.
1100
1101         syntax-check: fix new SPACE-TAB violations.
1102         * build-aux/ltmain.in (func_dll_def_p): Replace SPACE-TAB by
1103         TAB-SPACE.
1104         * m4/libtool.m4 (_LT_DLL_DEF_P): Likewise.
1105
1106 2013-01-26  Bernhard Voelker  <mail@bernhard-voelker.de>
1107             Gary V. Vaughan  <gary@gnu.org>
1108
1109         bootstrap: always auto-add .gitignore files at the top.
1110         * gl/build-aux/bootstrap.in (func_gitignore_entries): New function.
1111         Strip comments and blank lines.
1112         (func_insert_sorted_if_absent): Renamed...
1113         (func_insert_if_absent): ...to this. Adjust all callers.
1114         Instead of comparing the sorted new file with the original,
1115         compare the line count, being careful to diagnose duplicate
1116         entries which would otherwise skew the count.
1117
1118 2013-01-26  Gary V. Vaughan  <gary@gnu.org>
1119
1120         maint: patch gitlog-to-changelog to reduce bogus warnings.
1121         Rather than trying to find a new useful warning among the 55
1122         expected warnings from vanilla gitlog-to-changelog, patch it to
1123         elide the bogus warnings from duplicate log entries.
1124         * gl/bulid-aux/gitlog-to-changelog.diff: Omit-from-ChangeLog is
1125         a new log entry tag to skip legitimate log duplicates.
1126         * build-aux/git-log-fix: Instead of deleting all content of
1127         duplicates and generating a warning, append the new
1128         Omit-from-ChangeLog tag to elide silently.
1129         * Makefile.am *($(changelog)): Remove the 'expect 55 warnings'
1130         echo.
1131
1132 2013-01-22  Peter Rosin  <peda@lysator.liu.se>
1133
1134         libtool: factor out the dll .def file test and improve it
1135         Resolves bug#13414. Problem reported by Erik van Pienbroek
1136         and Martin Doucha.
1137
1138         build-aux/ltmain.in (func_mode_link): Factor out the test if a
1139         given symbol file is a module-definition (.def) file into...
1140         (func_dll_def_p): ...this function, which also improves the check.
1141         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
1142         <cygwin, mingw, pw32, cegcc>: Similarly, factor out the test if
1143         a given symbol file is a module-definition (.def) file into...
1144         (_LT_DLL_DEF_P): ...this macro, which also improves the check.
1145         tests/export-def.at: New test.
1146         Makefile.am (TESTSUITE_AT): Add above test.
1147         NEWS: Update.
1148         THANKS: Update.
1149
1150 2013-01-21  Peter Rosin  <peda@lysator.liu.se>
1151
1152         libtool: allow tabs in *_cmds variables
1153         This is in preparation for the next patch, which needs to have literal
1154         tab characters survive the evaluation of the *_cmds variables.
1155
1156         build-aux/ltmain.in (func_execute_cmds, func_mode_link): Don't collapse
1157         tabs and surrounding whitespace into a single space when executing a
1158         tilde-separated cmds construct, instead keep any tabs intact.
1159
1160 2013-01-19  Peter Rosin  <peda@lysator.liu.se>
1161
1162         libtool: avoid tabs in all *_cmds variables.
1163         This is in preparation for the next change, which will preserve
1164         tabs when the *_cmds variables are evaluated. Removing tabs first
1165         ensures that the libtool output stays the same when tabs are not
1166         collapsed with surrounding whitespace.
1167
1168         m4/libtool.m4: Convert indenting tabs to spaces for all *_cmds
1169         variables.
1170
1171 2013-01-16  Peter Rosin  <peda@lysator.liu.se>
1172
1173         libtool: align archive_cmds with archive_expsym_cmds for MSVC
1174         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1175         <archive_cmds>: Specify the import library name, aligning with
1176         archive_expsym_cmds.
1177
1178         libtool: feed .def files verbatim to the MSVC linker
1179         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1180         <archive_expsym_cmds>: When the symbol list isn't really a symbol list,
1181         but instead a .def file, copy it to a file with .def extension so that
1182         MSVC recognizes it as a module-definition file and feed it verbatim.
1183         NEWS: Update
1184
1185 2013-01-15  Peter Rosin  <peda@lysator.liu.se>
1186
1187         Revert "libtool: use false or : for $always_export_symbols, and simplify"
1188         This reverts commit 5ed7430fcb48c862c9d76ef497b73485d580338e, which is
1189         totally bogus as the variable is also set in libtool.m4. Sorry for the
1190         noise.
1191
1192         libtool: use false or : for $always_export_symbols, and simplify
1193         * build-aux/ltmain.in (func_mode_link): Save a string comparison
1194         by setting $lways_export_symbols to false or : and using it directly
1195         as the first argument to if. Make sure that it is always initialized
1196         while at it.
1197
1198 2013-01-09  Peter Rosin  <peda@lysator.liu.se>
1199
1200         tests: fix nits in path handling
1201         tests/bindir.at: func_save_and_prepend_path is already checking
1202         $bindirneeded internally, so remove checks from call sites. Add
1203         proper quoting while at it.
1204         (func_save_and_prepend_path): Use $PATH_SEPARATOR instead of a literal
1205         colon (in both instances).
1206
1207 2013-01-08  Peter Rosin  <peda@lysator.liu.se>
1208
1209         libtool: simplify quoting and code for symbols exporting sed programs
1210         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1211         <archive_expsym_cmds>: Make the sed programs easier to read (and
1212         recover some backslashes for later in the process).
1213
1214 2013-01-03  Peter Rosin  <peda@lysator.liu.se>
1215
1216         tests: don't feed -no-undefined to the linker during configure.
1217         * tests/deplibs-mingw.at: Restore LDFLAGS for the configure run so that
1218         the linker does not see -no-undefined. Makes the test pass instead of
1219         skip on MinGW.
1220
1221 2013-01-03  Gary V. Vaughan  <gary@gnu.org>
1222
1223         maint: note warnings during ChangeLog generation are normal.
1224         * Makefile.am ($(changelog)): Output a note that 55 empty commit
1225         log warning messages during ChangeLog generation are expected.
1226
1227         git: ignore .serial file.
1228         * .gitignore: ignore .serial file.
1229
1230         maint: fix recent badly formatted ChangeLog entry.
1231         * build-aux/git-log-fix: No empty lines in a single commit.
1232
1233         syntax-check: fix a useless_quotes_in_assignment violation.
1234         * gl/build-aux/inline-source (func_require_AWK): Remove useless
1235         quotes.
1236
1237         syntax-check: fix prohibit_strcmp syntax-check violation.
1238         * build-aux/ltmain.in (func_generate_dlsyms): Add a definition for
1239         STREQ, and then use it in place of !strcmp.
1240
1241         docs: update copyright dates in libtool.texi.
1242         It seems `make update-copyright' missed the texinfo copyright
1243         notice.
1244         * doc/libtool.texi: Update copyright dates for 2013.
1245
1246 2013-01-03  Brad Smith  <brad@comstyle.com>
1247
1248         libtool: add bitrig support.
1249         * build-aux/ltmain.in (func_mode_link): Add bitrig support.
1250         * m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE, LT_CMD_MAX_LEN)
1251         (_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
1252         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Ditto.
1253         * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Ditto.
1254         * tests/deplibs-ident.at(build tree relpaths): Ditto.
1255         * NEWS: Updated.
1256
1257 2013-01-01  Peter Rosin  <peda@lysator.liu.se>
1258
1259         maint: check if git works before relying on it
1260         Makefile.am (m4/ltversion.m4): Take the opportunity to regenerate
1261         $(srcdir)/.serial whenever git is actually working.
1262         (git_version_gen): Provide a fallback version for the git-version-gen
1263         script to use when .tarball-version does not exist and git is not
1264         working.
1265
1266         maint: really do update to latest upstream gnulib
1267         Commit 9a7071e668d044c1c47c855d2f0bc7cadb235071 "maint: update
1268         copyright notices to include 2013." states that this was done, but
1269         it actually was not.
1270         gnulib/: Update to latest upstream.
1271
1272 2013-01-01  Gary V. Vaughan  <gary@gnu.org>
1273
1274         maint: remove unsupported Tested-by: tag.
1275         * build-aux/git-log-fix: Tested-by: line should not appear in the
1276         ChangeLog.
1277
1278 2013-01-01  Peter Rosin  <peda@lysator.liu.se>
1279
1280         bootstrap: update README-release patch
1281         gl/top/README-release.diff: Update to match latest gnulib changes.
1282
1283 2013-01-01  Gary V. Vaughan  <gary@gnu.org>
1284
1285         maint: update copyright notices to include 2013.
1286         * gnulib/: Update to latest upstream.
1287         * AUTHORS, ChangeLog.old, HACKING, Makefile.am, NEWS, README,
1288         THANKS, TODO, bootstrap, bootstrap.conf,
1289         build-aux/edit-readme-alpha, build-aux/ltmain.in, cfg.mk,
1290         configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
1291         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1292         gl/build-aux/inline-source, gl/build-aux/options-parser,
1293         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
1294         libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
1295         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
1296         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
1297         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
1298         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
1299         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
1300         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
1301         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
1302         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
1303         libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
1304         libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
1305         libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
1306         m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
1307         m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
1308         tests/am-subdir.at, tests/archive-in-archive.at,
1309         tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
1310         tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
1311         tests/cwrapper.at, tests/darwin.at, tests/demo.at,
1312         tests/depdemo.at, tests/deplib-in-subdir.at,
1313         tests/deplibs-ident.at, tests/deplibs-mingw.at,
1314         tests/destdir.at, tests/dlloader-api.at,
1315         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
1316         tests/duplicate_deps.at, tests/duplicate_members.at,
1317         tests/early-libtool.at, tests/exceptions.at,
1318         tests/execute-mode.at, tests/exeext.at, tests/export.at,
1319         tests/f77demo.at, tests/fail.at, tests/fcdemo.at,
1320         tests/flags.at, tests/help.at, tests/indirect_deps.at,
1321         tests/infer-tag.at, tests/inherited_flags.at, tests/install.at,
1322         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
1323         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
1324         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
1325         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
1326         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
1327         tests/need_lib_prefix.at, tests/no-executables.at,
1328         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
1329         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
1330         tests/resident.at, tests/runpath-in-lalib.at,
1331         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
1332         tests/standalone.at, tests/static.at, tests/stresstest.at,
1333         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
1334         tests/template.at, tests/testsuite.at, tests/versioning.at,
1335         tests/with-pic.at: Bump copyright year.
1336
1337 2012-12-19  Peter Rosin  <peda@lysator.liu.se>
1338
1339         libtool: Drop $LDFLAGS when invoking the toolchain
1340         m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [Solaris] <archive_cmds>: Drop
1341         $LDFLAGS as it is a user variable that is usually used when invoking
1342         libtool. As such, it should not be used by libtool when it invokes the
1343         toolchain as it contains options intended for libtool, not the
1344         toolchain. Fixes export.at and other tests that add -no-undefined to
1345         LDFLAGS.
1346
1347 2012-12-19  Richard Palo  <richard.palo@baou.fr>  (tiny change)
1348
1349         libtool: Add SONAME to the so when exporting explicit symbols on Solaris
1350         m4/libtool.m (_LT_LANG_CXX_CONFIG) [Solaris] <archive_expsym_cmds>: Feed
1351         -h $soname to the linker just as is done in archive_cmds.
1352         THANKS: Update.
1353
1354 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
1355
1356         libtool: add @INIT@ to the preloader, for data imports on Windows
1357         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Adjust
1358         lt_cv_sys_global_symbol_to_cdecl so that it declares imported
1359         data symbols as __declspec(dllimport). Adjust
1360         lt_cv_sys_global_symbol_to_c_name_address and
1361         lt_cv_sys_global_symbol_to_c_name_address_lib_prefix so that they
1362         fill in "(void*) 0" for imported data symbols. Add new
1363         lt_cv_sys_global_symbol_to_import which finds imported data
1364         symbols if non-empty and export this variable to the libtool script
1365         in the global_symbol_to_import variable. Adjust
1366         lt_cv_sys_global_symbol_pipe so that data imports can be located.
1367         * build-aux/ltmain.in (func_generate_dlsyms): When data imports
1368         are present, as indicated by global_symbol_to_import, generate
1369         a relocation function lt_syminit that fills in the addresses
1370         of data imports at runtime and point to the new function with a
1371         new virtual @INIT@ entry in the symbol list.
1372         * libltdl/loaders/preopen.c (add_symlist): Look for the virtual
1373         @INIT@ symbol (i.e. lt_syminit) and call it.
1374         (vm_sym): Step past the @INIT@ symbol, if present.
1375         * tests/demo.at (dlmain.c): Call the @INIT@ symbol, if present.
1376         * NEWS: Update.
1377
1378 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
1379
1380         libtool: unify the global symbol transformations
1381         Since it is safe for $lt_cv_sys_global_symbol_to_cdecl to match
1382         with a simple /^T .* .*$/ type expression, it is ok for the other
1383         transformations as well.  At least if you require at least one
1384         $symcode at the start of the line, so that the just generated output
1385         doesn't match the next sed expression.
1386
1387         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unify the matching expressions
1388         in the sed programs that transform the extracted symbol lines.
1389
1390 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
1391
1392         libtool: break up long lines
1393         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Break up long lines when
1394         assigning the sed scripts that transform the extracted symbol lines.
1395
1396 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
1397
1398         bootstrap: use a decent awk if /bin/awk is hopeless.
1399         Bootstrap used to fail without an explicit AWK environment
1400         setting on machines with both nawk and awk, but where awk is a
1401         museum piece.
1402         * gl/build-aux/inline-source (AWK): Remove initial setting.
1403         (require_awk): Search PATH for a gawk, mawk or nawk before
1404         settling on awk, just like configure does.
1405         (func_include): Use it.
1406
1407         bootstrap: be sure to register gnulib submodule.
1408         * gl/build-aux/bootstrap.in (require_gnulib_submodule): Register
1409         the gnulib submodule before updating it, even with a shallow
1410         clone of gnulib.
1411         * bootstrap: Regenerate.
1412         Reported by Robert Boehne.
1413
1414         bootstrap: fix a typo in a find invocation.
1415         * gl/build-aux/bootstrap.in (require_buildreq_patch): Fix a typo.
1416         * bootstrap: Regenerate.
1417
1418         bootstrap: bash versions 3.00.x do not have += functionality.
1419         * gl/build-aux/funclib.sh: Fix a typo in fork minimisation for
1420         bash versions 3.00.x.
1421         * bootstrap: Regenerate.
1422
1423         maint: fix missing command error in make dist.
1424         * Makefile.am ($(readme)): Don't forget the 'test'!
1425
1426         tests: fixup experr for addition whitespace in error prefix.
1427         Fix spurious test failures due to unmatched experr output.
1428         * tests/libtoolize.at, tests/old-ltdl-iface.at: Add the addition
1429         2 spaces now used to justify error prefixes.
1430
1431         bootstrap: use of ';' in sed scripts is not portable.
1432         * gl/build-aux/bootstrap.in (require_buildreq_automake)
1433         (require_dotgitmodules_parameters, require_package)
1434         (func_update_po_files): Use '\n' or -e to separate sed commands,
1435         instead of ';'.
1436         * gl/build-aux/extract-trace (func_autoconf_configure)
1437         (func_extract_trace_first): Likewise.
1438         * gl/funclib.sh: Likewise.
1439         (func_tr_sh): Likewise.
1440         * gl/build-aux/options-parser (func_usage_message): Likewise.
1441         * bootstrap: Regenerate.
1442         Reported by Robert Boehne.
1443
1444         bootstrap: don't $tc_standout spaces, it's ugly!
1445         * gl/build-aux/funclib.sh (func_error): Move the prefix indent
1446         before $tc_standout to avoid bright red inverse spaces.
1447         * bootstrap: Regenerate.
1448
1449         bootstrap: fix rectangle select induced trailing spaces.
1450         * gl/build-aux/funclib.sh (require_term_colors): Delete trailing
1451         whitespace.
1452         * bootstrap: Regenerate.
1453
1454         bootstrap: display prerequisite program environment vars.
1455         Be more helpful when a prerequisite program from $buildreq
1456         cannot be located, by showing what variable to export if it
1457         is already installed but not in PATH.
1458         * gl/build-aux/bootstrap.in (func_check_versions): Display
1459         associated environment variables for not found prerequisite
1460         programs.
1461         * bootstrap: Regenerate.
1462
1463         bootstrap: honor COLORTERM and USE_ANSI_COLORS.
1464         Plenty of machines use a terminfo database that doesn't have
1465         entries for color escape sequences, even though the terminal
1466         itself most likely supports ANSI color escapes.
1467         * gl/build-aux/funclib.sh (require_term_colors): If COLORTERM
1468         or USE_ANSI_COLORS are set, then ignore what terminfo says,
1469         and use standard ANSI color escape sequences.
1470         * bootstrap: Regenerate.
1471
1472         bootstrap: make error messages prettier.
1473         * gl/build-aux/funclib.sh (func_error): Indent 'error' prefix by
1474         two additional spaces to line up nicely with 'warning' and
1475         'running'.
1476         * bootstrap: Regenerate.
1477
1478 2012-10-24  Gary V. Vaughan  <gary@gnu.org>
1479
1480         bootstrap: emphasize command executions with terminal bold.
1481         * bootstrap.in (func_show_eval): Use $require_term_colors to
1482         embolden the command about to be executed in output.
1483         * bootstrap: Regenerate.
1484         * bootstrap.conf (libtool_build_prerequisites): Use the standard
1485         (colorful!) bootstrap func_show_eval here too.
1486
1487         bootstrap: show output from 'make bootstrap-deps'.
1488         * bootstrap.conf (libtool_build_prerequisites): Add support for
1489         AM_V_GEN and AM_V_at to the temporary pre-configure Makefile.
1490         Instead of eliding non-error output from bootstrap-deps, show
1491         the results, with verbosity set according to $opt_verbose.
1492         * Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh, libtool)
1493         (README): Fix the display rules to correctly fall-back to
1494         AM_DEFAULT_VERBOSITY when V=1 is not passed to make invocation.
1495
1496 2012-10-22  Gary V. Vaughan  <gary@gnu.org>
1497
1498         maint: fixup badly formatted ChangeLog entries.
1499         * build-aux/git-log-fix: Mostly missing category tags and refilling
1500         to 64 columns, but also deleting duplicate entries from merging the
1501         gary/reredo-test-operand-order branch.
1502         * g/build-aux/gitlog-to-changelog.diff: Local patch to prevent
1503         printing unqualified header lines for deleted duplicate patches.
1504         * THANKS: Put email address for Paul Seidler here...
1505         * build-aux/git-log-fix: ...and remove from ChangeLog here.
1506
1507         bootstrap: regenerate to propagate Bob's func_split_equals fix.
1508         * bootstrap: regenerate.
1509
1510 2012-10-22  Mikhail Zabaluev  <mikhail.zabaluev@gmail.com>  (tiny change)
1511
1512         configury: make LT_INIT options pic-only and no-pic work.
1513         * m4/ltoptions.m4 (_LT_WITH_PIC): Set pic_mode at m4 time.
1514
1515 2012-10-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
1516
1517         options-parser: fix regexp quoting error.
1518         * gl/build-aux/options-parser (func_split_equals): Fixed expr
1519         regexp quoting syntax error encountered with non-XSI shells.
1520         Problem was noticed under Solaris 10.
1521
1522 2012-10-21  Gary V. Vaughan  <gary@gnu.org>
1523
1524         syntax-check: fix violations and implement sc_old_style_quoting.
1525         Modern GNU ASCII quoting in output and comments is done
1526         'like this'.
1527         * cfg.mk (sc_old_style_quoting): Try to catch most instances
1528         of `old style quoting' so that it is not accidentally re-
1529         introduced to the code.
1530         * HACKING, Makefile.am, NEWS, PORTING, README, TODO, bootstrap,
1531         bootstrap.conf, build-aux/edit-readme-alpha,
1532         build-aux/git-hooks/commit-msg, build-aux/ltmain.in,
1533         doc/libtool.texi, gl/build-aux/bootstrap.in,
1534         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1535         gl/build-aux/inline-source, gl/build-aux/options-parser,
1536         libltdl/libltdl/slist.h, libltdl/loaders/loadlibrary.c,
1537         libltdl/ltdl.c, libltdl/slist.c, libtoolize.in, m4/argz.m4,
1538         m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4, m4/ltsugar.m4,
1539         tests/cmdline_wrap.at, tests/configure-iface.at, tests/demo.at,
1540         tests/depdemo.at, tests/deplib-in-subdir.at,
1541         tests/deplibs-mingw.at, tests/destdir.at, tests/execute-mode.at,
1542         tests/f77demo.at, tests/fail.at, tests/inherited_flags.at,
1543         tests/libtool.at, tests/libtoolize.at, tests/lt_dladvise.at,
1544         tests/lt_dlexit.at, tests/mdemo.at, tests/need_lib_prefix.at,
1545         tests/old-ltdl-iface.at, tests/old-m4-iface.at, tests/static.at,
1546         tests/stresstest.at, tests/testsuite.at, tests/versioning.at:
1547         Convert to upright quotes.
1548
1549         tests: remove spurious shell variable braces.
1550         * tests/testsuite.at: Allow the shell braces syntax check to pass
1551         again.
1552
1553         bootstrap: add missing bootstrap override module file.
1554         * gl/modules/bootstrap: Forgot to add this file in a previous
1555         commit.
1556
1557         bootstrap: allow bootstrap.texi to pass syntax-check.
1558         * cfg.mk (sc_require_function_nl_brace): Skip texi files.
1559         * gl/doc/bootstrap.texi: Fix assorted syntax-check violations.
1560
1561         bootstrap: move into local gl overrides directory.
1562         In order to work as if it were already adopted by upstream
1563         gnulib, put bootstrap and supporting scripts into the local
1564         gnulib overrides directory.
1565         * bootstrap, build-aux/extract-trace, build-aux/funclib.sh,
1566         build-aux/inline-source, build-aux/options-parser: Move from
1567         here...
1568         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
1569         gl/build-aux/funclib.sh, gl/build-aux/inline-source,
1570         gl/build-aux/options-parser: ...to here.
1571         * gl/build-aux/options-parser (func_version): Show only the
1572         first copyright notice on files generated with inline-source.
1573         * gl/doc/bootstrap.texi: Developer documentation for bootstrap.
1574         * gl/modules/extract-trace, gl/modules/funclib.sh,
1575         gl/modules/inline-source, gl/modules/options-parser: Describe
1576         dependencies for gnulib-tool.
1577         * bootstrap.conf (gnulib_modules): Add extract-trace,
1578         inline-source and options-parser modules.
1579         * bootstrap: Regenerated from gnulib overrides as a mono-
1580         lithic script file using gl/build-aux/inline-source.
1581
1582 2012-10-20  Gary V. Vaughan  <gary@gnu.org>
1583
1584         tests: make sure AC_CONFIG_MACRO_DIR is still supported.
1585         * tests/old-m4-iface.at (AC_CONFIG_MACRO_DIR support): New test.
1586         Make sure we continue to support AC_CONFIG_MACRO_DIR using
1587         projects.
1588
1589         libtoolize: select the first directory from AC_CONFIG_MACRO_DIRS.
1590         * tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIRS directories):
1591         New test to ensure multiple directory arguments mork correctly.
1592         * libtoolize.in (func_require_ac_macro_dir): Use expr to discard
1593         any additional space delimited entries in the first
1594         AC_CONFIG_MACRO_DIRS argument.
1595         * bootstrap (func_require_macro_dir): Likewise.
1596
1597         libtoolize: migrate to new AC_CONFIG_MACRO_DIRS api.
1598         * libtoolize.in (func_install_pkgmacro_files): Uee
1599         AC_CONFIG_MACRO_DIRS.
1600         (func_check_macros): Advise using AC_CONFIG_MACRO_DIRS.
1601         (require_ac_macro_dir): Give priority to AC_CONFIG_MACRO_DIRS.
1602         (require_macro_dir): Likewise.
1603         * bootstrap: Give priority to AC_CONFIG_MACRO_DIRS.
1604         * configure.ac: Define dummy AC_CONFIG_MACRO_DIRS for older
1605         Autotools, that is allow bootstrap with current release versions.
1606         Use AC_CONFIG_MACRO_DIRS instead of AC_CONFIG_MACRO_DIR.
1607         * tests/testsuite.at: Source build-aux/extract-trace for access
1608         to func_extract_trace.
1609         (LT_AT_ACLOCAL): Use it to get the AC_CONFIG_MACRO_DIRS argument
1610         to pass manually to aclocal for compatibility with old Automake.
1611         Add a fallback AC_CONFIG_MACRO_DIRS definition to acinclude.m4
1612         in the test directory.
1613         (LT_AT_AUTORECONF): Likewise.
1614         * tests/cdemo.at, tests/configure-iface.at, tests/darwin.at,
1615         tests/demo.at, tests/depdemo.at, tests/early-libtool.at,
1616         tests/libtoolize.at, tests/mdemo.at, tests/no-executables.at,
1617         tests/nonrecursive.at, tests/old-ltdl-iface.at,
1618         tests/recursive.at, tests/subproject.at, tests/tagdemo.at,
1619         tests/template.at: Likewise.
1620         * doc/libtool.texi: Update.
1621         * NEWS: Update.
1622
1623 2012-10-19  Peter Rosin  <peda@lysator.liu.se>
1624
1625         libtool: parse "dumpbin -headers" to get symbols exported from implibs
1626         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Extract symbols
1627         imported from DLLs by import libraries in the Microsoft dumpbin
1628         wrapper.
1629         (LT_PATH_NM): Add -headers option if dumpbin is the located name
1630         lister to feed the above new code.
1631         * NEWS: Update.
1632
1633         libtool: make func_win32_libid work when the name lister is MS dumpbin
1634         * m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [MSVC]: Use
1635         func_win32_libid as file_magic_cmd when the name lister
1636         is MS dumpbin.
1637         (_LT_CMD_GLOBAL_SYMBOLS): Export the new veriable nm_interface
1638         to the libtool script.
1639         * build-aux/ltmain.in (func_cygming_gnu_implib_p)
1640         (func_cygming_ms_implib_p): Move up to before...
1641         (func_win32_libid): ...which now uses them to determine if
1642         the object is an import library when the nm_interface is
1643         "MS dumpbin".
1644         * NEWS: Update.
1645
1646 2012-10-19  Gary V. Vaughan  <gary@gnu.org>
1647
1648         bootstrap: always extract only the first AC_CONFIG_MACRO_DIR arg.
1649         Previous versions of bootstrap concatenated all the arguments to
1650         multiple invocations of AC_CONFIG_MACRO_DIR when extracting the
1651         macro_dir directory name.  This change enforces correct and
1652         consistent behaviour.
1653         * libtoolize.in (func_require_macro_dir): Use the new
1654         func_extract_trace_first function to make sure the first argument
1655         is always used.
1656         (func_require_aux_dir, func_require_gnulib_mk)
1657         (func_require_source_base): Future proof these functions against
1658         multiple invocations or additional arguments to the macros they
1659         trace.
1660
1661         bootstrap: extract *first* ACLOCAL_AMFLAGS -I argument.
1662         * bootstrap (func_require_macro_dir): .* is greedy, so _G_sed_scan
1663         as it was will always return the last -I argument, which is wrong.
1664         Move to a shell loop to ensure we always get the first -I argument
1665         if any.  (code from libtoolize.in).
1666
1667         bootstrap: use short gnu.org urls consistently.
1668         * bootstrap.conf (buildreq): Use gnu.org/s/ style urls to match
1669         the ones added automatically by the main bootstrap script.
1670
1671         libtoolize: fix a misspelled variable name.
1672         * libtoolize.in (func_require_am_macro_dir): The loop uses _G_arg
1673         not _G_opt.  Now spelled correctly.
1674
1675         tests: always extract only the first AC_CONFIG_MACRO_DIR arg.
1676         Previous releases of libtoolize used the final invocation when
1677         there were several, and after the rewrite over extract-trace,
1678         all the invocation directories were concatenated.  This change
1679         enforces correct and consistent behaviour.
1680         * tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIR invocation):
1681         New test.
1682         * build-aux/extract-trace (func_extract_trace_first): New function
1683         for clients that source this file, which returns only the first
1684         argument to the first invocation of the named macros.
1685         * libtoolize.in (func_require_ac_macro_dir): Use it to make sure
1686         the first argument is always used.
1687         (func_require_ac_aux_dir, func_require_ac_ltdl_dir)
1688         (func_require_ac_ltdl_options): Future proof these functions against
1689         multiple invocations or additional arguments to the macros they
1690         trace.
1691         * News (Important incompatible changes): Note change in semantics.
1692         Reported by Eric Blake.
1693
1694         tests: always extract only the first ACLOCAL_AMFLAGS include arg.
1695         * tests/libtoolize.at (libtoolize ACLOCAL_AMFLAGS extraction):
1696         New test.
1697         * libtoolize.in (func_check_macros): Display the correct advice
1698         when ACLOCAL_AMFLAGS specifies a macrodir, but AC_CONFIG_MACRO_DIR
1699         does not.
1700
1701         doc: add a missing period following @xref.
1702         * doc/libtool.texi: Silence a warning by adding back a missing
1703         period.
1704
1705 2012-10-19  Peter Rosin  <peda@lysator.liu.se>
1706
1707         libtool: avoid non-underscore symbols in the "dumpbin -symbols" wrapper
1708         If an object has a symbol lacking an expected leading underscore,
1709         the symbol name is not printed, but the symbol type is, leading
1710         to output such as:
1711             T _normal _normal
1712             T T _another _another
1713         when the expected output would have been something like:
1714             T _normal _normal
1715             T no_underscore no_underscore
1716             T _another _another
1717         However, symbols lacking an expected leading underscore are
1718         not "real" symbols, they are internal symbols which we don't
1719         care about, therefore drop them instead.
1720         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Output the whole
1721         symbol line in one go.
1722         * NEWS: Update.
1723
1724 2012-10-18  Peter Rosin  <peda@lysator.liu.se>
1725
1726         libtool: unbreak Windows path quoting
1727         The lt_sed_naive_backslashify variable lost its lt_ prefix
1728         when m4sh was dropped. But not everywhere.
1729         * build-aux/ltmain.in (func_convert_core_file_wine_to_w32)
1730         (func_convert_core_msys_to_w32): Drop the lt_ prefix from
1731         the lt_sed_naive_backslashify variable.
1732
1733         libtool: kill leftover m4 quoting
1734         * build-aux/ltmain.in (func_mode_compile): Use literal ] and [.
1735
1736 2012-10-18  Gary V. Vaughan  <gary@gnu.org>
1737
1738         syntax-check: exclude false positive nested quote test.
1739         * build-aux/funclib.sh (func_echo_infix_1): These quotes are not
1740         actually nested, so add an exclude marker for the syntax-check.
1741
1742         libtool: don't set auxscriptsdir at bootstrap time.
1743         * build-aux/ltmain.in: Declare relative paths to aux scripts from
1744         source commands, for early inlining during bootstrap.
1745         * Makefile.am (bootstrap_edit): Move auxscriptsdir
1746         substitution from here....
1747         (configure_edit): ...to here.
1748         ($(ltmain_sh)): Feed ltmain.in through inline-source as ltmain.sh
1749         is generated to remove relative paths to aux scripts.
1750         (install-data-local): Simplify. No need for special treatment for
1751         ltmain.sh during installation, since aux scripts have already
1752         been inlined.
1753         Reported by Peter Rosin.
1754
1755         extract-trace: only source funclib.sh when $progname is extract-trace.
1756         * build-aux/extract-trace: $usage is too generic, and can cause
1757         sourced extract-trace to re-source options-parser.  We already
1758         require that funclib.sh be sourced before sourcing options-parser,
1759         so it's safer to check that $progname is correct before sourcing
1760         options-parser again from here.
1761
1762 2012-10-18  Peter Rosin  <peda@lysator.liu.se>
1763
1764         libtool: fix spelling nit
1765         * build-aux/ltmain.in (func_generate_dlsyms): Fix spelling nit.
1766         * libltdl/libltdl/lt_system.h: Likewise.
1767         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise.
1768
1769 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
1770
1771         maint: remove m4sh support.
1772         Now that the code base has coalesced around a single option
1773         parser, there's no need for the unused getopt.m4sh and support.
1774         * build-aux/getopt.m4sh, build-aux/general.m4sh,
1775         tests/getopt-m4sh.at: Remove.
1776         * Makefile.am (m4sh_dir, LT_M4SH, general_m4sh, getopt_m4sh)
1777         (sh_files): Remove.
1778         (TESTSUITE_AT): Remove tests/getopt-m4sh.at.
1779         (TESTS_ENVIRONMENT): Remove M4SH.
1780         * bootstrap.conf (libtool_build_prerequisites): Remove M4SH.
1781         * configure.ac (M4SH): Remove.
1782         * HACKING (Editing `.m4sh' Files): Remove and renumber following
1783         sections.
1784
1785         libtool: rewritten over funclib.sh instead of general.m4sh.
1786         * Makefile.am (ltmain_m4sh, ltmain_sh_edit): Remove.
1787         (ltmain_in): Path to ltmain.in.
1788         (ltmain_sh): Generate ltmain.sh from ltmain.in using
1789         $(bootstrap_edit).
1790         * build-aux/ltmain.m4sh: Remove.
1791         * build-aux/ltmain.in: Rewritten as a client of funclib.sh.
1792
1793         libtoolize: inline sourced helper scripts during install.
1794         * build-aux/inline-source: New file.
1795         * Makefile.am (inline_source): Path to inline-source script.
1796         (EXTRA_DIST): Distribute inline-source too.
1797         (helper_scripts): Remove.
1798         (install-data-local): Inline sourced helper scripts during
1799         installation.
1800         Don't install helper_scripts.
1801         (uninstall-hook): Don't uninstall helper_scripts.
1802
1803         libtoolize: rewritten over funclib.sh instead of general.m4sh.
1804         * Makefile.am (libtoolize_m4sh): Remove.
1805         (EXTRA_DIST): Delete libtoolize_m4sh.
1806         (libtoolize_in): Remove rule.
1807         (libtoolize): Apply bootstrap_edit to libtoolize.in too.
1808         * configure.ac (AC_CONFIG_SRCDIR): Refer to libtoolize.in.
1809         * libtoolize.m4sh: Remove.
1810         * libtoolize.in: Rewrite as a client of options-parser and the
1811         new funclib.sh, avoiding the m4sh expansion step.
1812         * tests/libtoolize.at, tests/old-ltdl-iface.at (experr): adjust
1813         to match funclib.sh error output.
1814
1815         options-parser: correctly quote shell meta-characters in arguments.
1816         When any argument contains a shell meta-character, it needs to be
1817         quoted when passed around.  We already pass parameter lists as
1818         space delimited strings of arguments, and pass the string through
1819         eval to turn it back into a list before re-assigning using `set'.
1820         To prevent the shell from interpreting any meta-characters during
1821         an `eval set dummy $argumentlist', they must be quoted again
1822         inside the quoted argument list.
1823         * build-aux/funclib.sh (func_quote_for_eval): Be careful to keep
1824         a separate tally of quoted and unquoted argument lists, to
1825         conform to the API of the single argument func_quote_for_eval
1826         implementation in build-aux/general.m4sh.
1827         * bulid-aux/options-parser (func_run_hooks): To account for the
1828         doubly quoted meta-character argument lists, we must eval the
1829         parameter reassignment `set' call separately from evaluating the
1830         dynamically named hook results variable.
1831
1832         maint: factor common shell code into build-aux/funclib.sh.
1833         Moving potentially reusable code into a common file that can
1834         be sourced by clients, and adjusting for impedance mismatch
1835         or necessary renames during integration.
1836         * build-aux/funclib.sh: New file.
1837         * build-aux/options-parser (Shell normalisation)
1838         (User overrideable command paths, Global variables, func_append)
1839         (require_term_colors, func_echo, func_echo_infix_1, func_warn)
1840         (func_error, func_fatal_error, func_quote_for_eval, func_verbose):
1841         Move from here...
1842         * build-aux/funclib.sh (Shell normalisation, User overrideable
1843         command paths, Global variables, func_append)
1844         (require_term_colors, func_echo, func_echo_infix_1)
1845         (func_warn_and_continue, func_error, func_fatal_error)
1846         (func_quote_for_eval, func_verbose): ...to here.
1847         * build-aux/general.m4sh (func_arith, func_basename)
1848         (func_dirname, func_dirname_and_basename, func_echo_all)
1849         (func_grep, func_len, func_mkdir_p, func_mktempdir)
1850         (func_normal_abspath, func_relative_path, func_quote_for_expand)
1851         (func_stripname, func_show_eval, func_tr_sh): Move from here...
1852         * build-aux/funclib.sh(func_arith, func_basename)
1853         (func_dirname, func_dirname_and_basename, func_echo_all)
1854         (func_grep, func_len, func_mkdir_p, func_mktempdir)
1855         (func_normal_abspath, func_relative_path, func_quote_for_expand)
1856         (func_stripname, func_show_eval, func_tr_sh): ...to here.
1857         * bootstrap (usage message): Document `-no-warn' option.
1858         (func_append_u, func_warning): Move from here...
1859         * build-aux/funclib.sh (func_append_uniq, func_warning): ...to
1860         here.
1861         * bootstrap, build-aux/extract-trace: Source build-aux/funclib.sh
1862         before build-aux/options-parser.
1863         * build-aux/options-parser (usage, long_help_message): Set
1864         default values to match what is parsed by the unmodified parser.
1865         * build-aux/extract-trace (usage, long_help_message): Only set
1866         from func_main, so that clients sourcing this file can still use
1867         the correct defaults from build-aux/options-parser.
1868         * bootstrap (bootstrap_options_prep, bootstrap_parse_options):
1869         Move warning option parsing from here...
1870         * build-aux/option-parser (func_options_prep)
1871         (func_parse_options): ...to here, where all clients can benefit.
1872         * Makefile.am (funclib_sh): New macro; path to funclib.sh.
1873         (EXTRA_DIST): Add $(funclib_sh).
1874
1875         libtoolize: source extract-trace rather than fork and execute each call.
1876         Rather than forking and executing a full $SHELL for each macro
1877         extraction, source the script and its dependencies into our
1878         execution space and use the provided func_extract_trace API.
1879         * libtoolize.m4sh: Source extract-trace from an appropriate
1880         directory determined presently by make.
1881         (func_extract_trace): Remove this wrapper.
1882         * Makefile.am (abs_aux_dir): Absolute path to extract-trace
1883         directory.
1884         (configure_edit): Inject abs_aux_dir into uninstalled libtoolize.
1885         (bin_SCRIPTS): Remove libtoolize.
1886         (uninstall-hook): Manually uninstall libtoolize.
1887         (install-data-local): Inject pkgauxdir into installed libtoolize
1888         during installation.
1889
1890         options-parser: employ fork minimisation.
1891         * build-aux/options-parser (_G_HAVE_XSI_OPS): Environment
1892         overrideable defaults for bash and zsh, which are known to
1893         support XSI extensions.
1894         (_G_HAVE_PLUSEQ_OP): Similarly for new enough versions of bash,
1895         which are known to have += support.
1896         (func_append): Only perform the shell += probe when state of
1897         support is unknown.
1898         (func_split_equals, func_split_short_opt): Similarly for XSI
1899         probe to select fastest working implementation.
1900
1901         options-parser: keep non-option arguments separate!
1902         * build-aux/options-parser (func_parse_options): When there is
1903         more than one non-option argument, "$*" forces all of them into
1904         a single string.  Use ${1+"$@"} to set arguments correctly.
1905
1906         options-parser: prefix usage message with "Usage: ".
1907         * build-aux/options-parser (func_usage_message): Prefix usage
1908         message with "Usage: ".
1909
1910         bootstrap: work when using fallback shallow gnulib clone.
1911         Bootstrapping without --gnulib-srcdir creates a shallow gnulib
1912         clone to run gnulib-tool out of, except that the parent package
1913         is almost certainly using a revision of gnulib before just tha
1914         most recent 2 gnulib revisions.
1915         * bootstrap (func_require_gnulib_submodule): Pull the most
1916         recent 365 revisions, which ought to be enough for a well-
1917         maintained parent package.
1918         Don't forget to run 'git submodule update' to select the correct
1919         gnulib revision.
1920
1921         bootstrap: require GNU make to bootstrap.
1922         Make is not installed by default in some environments, such as
1923         cygwin... which is slow enough already without having to wait
1924         for gnulib-tool, bootstrap and half of configure to complete
1925         before getting an error.
1926         * bootstrap.conf (buildreq): Add recent GNU make to bootstrap
1927         requirements.  Now missing make is diagnosed in the earliest
1928         part of bootstrap.
1929
1930         maint: simplify "Local variables:" footer with time-stamp-pattern.
1931         * bootstrap, build-aux/extract-trace, build-aux/options-parser
1932         (Local variables): Use time-stamp-pattern to set number of
1933         searched lines to 10, and to replace time-stamp-start,
1934         time-stamp-end and time-stamp-format.
1935
1936 2012-10-08  Peter Rosin  <peda@lysator.liu.se>
1937
1938         tests: skip the with-pic test only if DLL_EXPORT is defined
1939         For some systems with PIC as default, the test was inadvertently
1940         skipped. Issue introduced in commit 4440d65.
1941         * tests/with-pic.at: Skip the test for systems that define
1942         DLL_EXPORT.
1943         Reported by Roumen Petrov.
1944
1945         tests: rerefix line ending problems on MinGW.
1946         The previous commit broke Linux->MinGW cross-compiling.
1947         * tests/mdemo.at: Normalize line endings after $EGREP.
1948         Reported by Roumen Petrov.
1949
1950 2012-10-06  Peter Rosin  <peda@lysator.liu.se>
1951
1952         tests: refix line ending problems on MinGW.
1953         In commit 22f5750, one of the hunks actually introduced
1954         line ending problems. Revert that hunk.
1955         * tests/mdemo.at: Use AT_DATA for expected output when the
1956         output from compiled programs is fed through $EGREP.
1957
1958         tests: use dry runs in both parts of 'check link mode operation'
1959         MSVC exits with status 2 instead of the expected 1 when a
1960         real link is attempted.
1961         * tests/libtool.at (check link mode operation): Use a dry run and
1962         expect a clean exit status instead of expecting a fail.
1963
1964 2012-10-06  Gary V. Vaughan  <gary@gnu.org>
1965
1966         tests: sanitise the libtool quote checking Autotests.
1967         Carefully comment the maze of quoting and escaping needed to
1968         pass through M4, $SHELL, and grep before regexp matching.
1969         * tests/libtool.at (quote shell meta-characters in filenames):
1970         Split backslash into a separate test group, because it needs
1971         additional escaping.
1972         Use grep consistently for the entire test group.
1973         Use AT_CHECK rather than LT_AT_CHECK to avoid problems with
1974         escaping literal $ correctly with LT_ESCAPE.
1975         Use the correct number of backslashes for each sub-group.
1976         Escape double-quote literals portably.
1977         Reported by Peter Rosin.
1978
1979         tests: ensure mdemo.at doesn't rely on installed libltdl.
1980         * tests/mdemo.at (configuer.ac): Build an included convenience
1981         libltdl.
1982         (Makefile.am): Add subdir-objects.
1983         Remove override rules from legacy mdemo tests to reuse parent
1984         libltdlc.la.
1985         (LT_AT_CHECK_CONFIG): Add --with-included-ltdl to configure
1986         arguments so that test cases always use the subproject libltdl
1987         in preference to any installed libltdl.
1988         Reported by Peter Rosin.
1989
1990         tests: allow for unstable fortran output ordering.
1991         Due to differences in line-endings between C stdout and Fortran
1992         stdout, as well as unpredictable output ordering between
1993         platforms and runtimes, weaken success criteria to not require
1994         the entire output of fortran programs to match a test case.
1995         * itests/fcdemo.at, tests/f77demo.at (_LT_CHECK_EXECUTE):
1996         Improve comments, and weaken test case to grep for a known line
1997         in the f77 runtime output.
1998
1999 2012-10-05  Peter Rosin  <peda@lysator.liu.se>
2000
2001         tests: make LT_AT_HOST_DATA retain whitespace on MinGW
2002         Fixes issues with depdemo.at, f77demo.at and fcdemo.at.
2003         * tests/testsuite.at (LT_AT_HOST_DATA) [MinGW]: Keep leading
2004         and trailing spaces and tabs when converting line endings.
2005
2006         tests: fix line ending problems on MinGW
2007         * tests/cdemo.at: Use LT_AT_HOST_DATA for expected output from
2008         compiled programs.
2009         * tests/demo.at: Likewise.
2010         * tests/depdemo.at: Likewise.
2011         * tests/f77demo.at: Likewise.
2012         * tests/fcdemo.at: Likewise.
2013         * tests/mdemo.at: Likewise.
2014         * tests/tagdemo.at: Likewise.
2015
2016 2012-10-05  Gary V. Vaughan  <gary@gnu.org>
2017
2018         tests: remove last vestiges of the legacy test harness.
2019         All legacy tests have been fully migrated to Autotest, so
2020         no need to cling to the legacy scaffolding any more.
2021         * tests/defs.m4sh: Delete file.
2022         * configure.ac (AM_INIT_AUTOMAKE): Remove unused color-tests and
2023         parallel-tests options.
2024         * Makefile.am (defs_m4sh, defs_in, defs, TESTS): Remove.
2025         Adjust all dependencies.
2026
2027         tests: migrate legacy tagtrace.test to Autotest.
2028         * tests/tagtrace.test: Delete file.
2029         * tests/libtool.at (test LT_SUPPORTED_TAG interface): Add
2030         Autotest equivalent.
2031         * Makefile.am (TESTS): Remove tests/tagtrace.test.
2032
2033         tests: migrate legacy objectlist.test to Autotest.
2034         * tests/objectlist.test: Delete file.
2035         * tests/libtool.at (check objectlist file operation): Add
2036         Autotest equivalent.
2037         * Makefile.am (TESTS): Remove tests/objectlist.test.
2038
2039         tests: migrate legacy link.test and link-2.test to Autotest.
2040         * tests/link.test, tests/link-2.test: Delete files.
2041         * tests/libtool.at (Check link operation): Add Autotest
2042         equivalent.
2043         * Makefile.am (TESTS): Remove tests/link.test and
2044         tests/link-2.test.
2045
2046         tests: migrate legacy nomode.test to Autotest.
2047         * tests/nomode.test: Delete file.
2048         * test/libtool.at (Check help output, No mode diagnostic): Add
2049         equivalent tests in Autotest.
2050         * Makefile.am (TESTS): Remove tests/nomode.test.
2051
2052         tests: migrate legacy suffix.test to Autotest.
2053         * tests/suffix.test: Delete file.
2054         * tests/libtool.at (Transform source suffices): Add Autotest
2055         equivalent.
2056         * Makefile.am (TESTS): Remove tests/suffix.test.
2057
2058         tests: migrate legacy quote.test to Autotest.
2059         * tests/quote.test: Moved from here...
2060         * tests/libtool.at: ...to here, and updated to Autotest.
2061         * Makefile.am (TESTS): Remove tests/quote.test.
2062         (TESTSUITE_AT): Add tests/libtool.at.
2063
2064 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
2065
2066         maint: add missing 2012 copyright to newly pushed old files.
2067         * tests/cdemo.at, tests/demo.at, tests/depdemo.at,
2068         tests/f77demo.at, tests/fcdemo.at, tests/mdemo.at,
2069         tests/tagdemo.at (Copyright): Update with missing 2012.
2070
2071         syntax-check: remove test/demo directories from exemption regexps.
2072         * cfg.mk (exclude_file_name_regex--sc_bindtextdomain)
2073         (exclude_file_name_regexp--sc_program_name): Remove. The excluded
2074         directories no longer exist.
2075         (exclude_file_name_regexp--sc_prohibit_strcmp): Remove subexpression
2076         for matching removed demo directories.
2077
2078         configure: remove unused conditionals and support for order only rules.
2079         Clean up some more unused cruft.
2080         * configure.ac (HAVE_CXX, HAVE_F77, HAVE_FC, HAVE_GCJ, HAVE_RC):
2081         Remove.  These were only used by the recently removed legacy
2082         tests.
2083         [order-only prerequisites]: Ditto.
2084
2085         bootstrap: remove support for `-r' and `reconf_dirs'.
2086         With all those extra demo directories out of the way, we can
2087         revert to a more canonical bootstrap process, and jettison the
2088         cruft that was only there to work around the pain of
2089         needing to autoreconf 11 directories.  Bootstrap is now an order
2090         of magnitude faster.
2091         * bootstrap.conf (require_ltdl_dir): New function. Factored out
2092         of `libtool_build_prerequisites'.
2093         (libtool_build_prerequisites): Adjust.
2094         (func_reconfigure): Use `require_ltdl_dir' to determine the name
2095         of the other directory we need to autoreconf during bootstrap.
2096         (libtool_options_prep, libtool_parse_options)
2097         (libtool_validate_options): Remove.
2098
2099         tests: let pic_flag and with-pic Autotests work on non-VPATH builds.
2100         * tests/pic_flag.at: Use _LT_DEMO_SETUP to generate a demo style
2101         project, rather than relying on $abs_top_srcdir/configure.
2102         * tests/with-pic.at: Likewise.
2103         * Makefile.am (TESTSUITE_AT): Move tests/pic_flag.at and
2104         tests/with-pic.at so that they run immediately following
2105         tests/demo.at.
2106
2107         tests: migrate legacy tests/fcdemo tests to Autotest.
2108         Along with the demise of the last demo directory, so all the
2109         cruft for re-autotooling and distributing the additional
2110         directories is no longer necessary.
2111         * tests/fcdemo.at: New autotest groups, based on...
2112         * tests/fcdemo-conf.test, tests/fcdemo-exec.test,
2113         tests/fcdemo-make.test, tests/fcdemo-shared-exec.test,
2114         tests/fcdemo-shared-make.test, tests/fcdemo-shared.test,
2115         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
2116         tests/fcdemo-static.test: ...these legacy tests, now removed.
2117         * tests/fcdemo/Makefile.am, tests/fcdemo/README,
2118         tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
2119         tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/fcdemo/foof.f90,
2120         tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
2121         tests/fcdemo/fprogram.f90: Remove.
2122         * configure.ac (CONF_SUBDIRS, DIST_MAKEFILE_LIST): Remove.
2123         * Makefile.am (DIST_SUBDIRS, FC_TESTS, clean-local-legacy)
2124         (configure-subdirs, distclean-recursive, distdir)
2125         (fake-distclean-legacy, $(DIST_MAKEFILE_LIST)): Remove.
2126         (COMMON_TESTS): Rename from this...
2127         (TESTS): ...to this.
2128
2129         tests: migrate legacy tests/f77demo tests to Autotest.
2130         * tests/f77demo.at: New autotest groups, based on...
2131         * tests/f77demo-conf.test, tests/f77demo-exec.test,
2132         tests/f77demo-make.test, tests/f77demo-shared-exec.test,
2133         tests/f77demo-shared-make.test, tests/f77demo-shared.test,
2134         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
2135         tests/f77demo-static.test: ...these legacy tests, now removed.
2136         * tests/f77demo/Makefile.am, tests/f77demo/README,
2137         tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
2138         tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/f77demo/foof.f,
2139         tests/f77demo/foof2.f, tests/f77demo/foof3.f,
2140         tests/f77demo/fprogram.f: Remove.
2141         * configure.ac (CONF_SUBDIRS): Remove tests/f77demo.
2142
2143         tests: migrate legacy tests/mdemo2 tests to Autotest.
2144         This test was just a small non-ltdl aware library to load a
2145         library from the legacy mdemo test, which in turn used ltdl to
2146         call functions from modules. No need to create a whole other
2147         test group with copies of everything from mdemo setup - just
2148         tack the additional test on the end of the mdemo group.
2149         * tests/mdemo.at (link with library that loads ltdl modules):
2150         New test, based on...
2151         * tests/mdemo2-conf.test, tests/mdemo-exec.test,
2152         tests/mdemo-make.test: ...these legacy tests, now removed.
2153         * tests/mdemo2/Makefile.am, tests/mdemo2/README,
2154         tests/mdemo2/configure.ac, tests/mdemo2/main.c: Remove.
2155         * configure.ac (CONF_SUBDIRS): Remove tests/mdemo2.
2156         * Makefile.am: Adjust.
2157
2158         tests: migrate legacy tests/mdemo tests to Autotest.
2159         * tests/mdemo.at: New autotest groups, based on...
2160         * tests/mdemo-conf.test, tests/mdemo-dryrun.test,
2161         tests/mdemo-exec.test, tests/mdemo-inst.test,
2162         tests/mdemo-make.test, tests/mdemo-shared-exec.test,
2163         tests/mdemo-shared-inst.test, tests/mdemo-shared-make.test,
2164         tests/mdemo-shared-unst.test, tests/mdemo-shared.test,
2165         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
2166         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
2167         tests/mdemo-static.test, tests/mdemo-unst.test: ...these legacy
2168         tests, now removed.
2169         * tests/mdemo/Makefile.am, tests/mdemo/README,
2170         tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
2171         tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
2172         tests/mdemo/sub.c: Remove.
2173         * configure.ac (CONF_SUBDIRS): Remove tests/mdemo.
2174         * Makefile.am: Adjust.
2175
2176         tests: migrate legacy tests/pdemo tests to Autotest.
2177         This test was a thinly veiled copy of the basic legacy
2178         demo-conf.test series, with the addition of long file names that
2179         are not unique in the first 17 characters of their name, mashed
2180         up with the cmdline_wrap.at max_cmd_len limits.  Migrating to
2181         Autotest means that this test will be automatically rerun with
2182         max_cmd_len=24 as cmdline_wrap.at recurses through the whole
2183         testsuite, so the migrated pdemo test is now simply another test
2184         case in demo.at with longer file names.
2185         * test/demo.at (linking with long file names): New test, based
2186         on...
2187         * tests/pdemo-conf.test, tests/pdemo-exec.test,
2188         tests/pdemo-inst.test, tests/pdemo-make.test: ...these legacy
2189         tests, now removed.
2190         * tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
2191         tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
2192         tests/pdemo/longer_file_name_foo.c,
2193         tests/pdemo/longer_file_name_foo2.c,
2194         tests/pdemo/longer_file_name_hell1.c,
2195         tests/pdemo/longer_file_name_hell2.c,
2196         tests/pdemo/longer_file_name_hello.c,
2197         tests/pdemo/longer_file_name_main.c: Remove.
2198         * configure.ac (CONF_SUBDIRS): Remove tests/pdemo.
2199         * Makefile.am: Adjust.
2200
2201         tests: migrate legacy tests/tagdemo tests to Autotest.
2202         * tests/tagdemo.at: New autotest groups, based on...
2203         tests/tagdemo-conf.test, tests/tagdemo-exec.test,
2204         tests/tagdemo-make.test, tests/tagdemo-shared-exec.test,
2205         tests/tagdemo-shared-make.test, tests/tagdemo-shared.test,
2206         tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
2207         tests/tagdemo-static.test, tests/tagdemo-undef-exec.test,
2208         tests/tagdemo-undef-make.test, tests/tagdemo-undef.test:
2209         ...these legacy tests, now removed.
2210         * tests/tagdemo/.gitignore, tests/tagdemo/Makefile.am,
2211         tests/tagdemo/README, tests/tagdemo/baz.cpp,
2212         tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
2213         tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
2214         tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
2215         tests/tagdemo/main.cpp: Remove.
2216         * configure.ac (CONF_SUBDIRS): Remove tests/tagdemo.
2217         * Makefile.am: Adjust.
2218
2219         tests: migrate legacy tests/depdemo tests to Autotest.
2220         * tests/depdemo.at: New autotest groups, based on...
2221         * tests/depdemo-conf.test, tests/depdemo-exec.test,
2222         tests/depdemo-inst.test, tests/depdemo-make.test,
2223         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
2224         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
2225         tests/depdemo-nofast.test, tests/depdemo-relink.test,
2226         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
2227         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
2228         tests/depdemo-shared.test, tests/depdemo-static-exec.test,
2229         tests/depdemo-static-inst.test, tests/depdemo-static-make.test,
2230         tests/depdemo-static-unst.test, tests/depdemo-static.test,
2231         tests/depdemo-unst.test: ...these legacy test cases, now
2232         removed.
2233         * tests/depdemo/Makefile.am, tests/depdemo/README,
2234         tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
2235         tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
2236         tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
2237         tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
2238         tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
2239         tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
2240         tests/depdemo/l4/l4.h, tests/depdemo/main.c,
2241         tests/depdemo/sysdep.h: Remove.
2242         * configure.ac (CONF_SUBDIRS): Remove tests/depdemo.
2243         * Makefile.am: Adjust.
2244
2245         tests: migrate legacy tests/demo tests to Autotest.
2246         * tests/demo.at: New autotest groups, based on...
2247         * tests/demo-conf.test, tests/demo-deplibs.test,
2248         tests/demo-exec.test, tests/demo-hardcode.test,
2249         tests/demo-inst.test, tests/demo-make.test,
2250         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
2251         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
2252         tests/demo-nofast.test, tests/demo-noinst-link.test,
2253         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
2254         tests/demo-nopic.test, tests/demo-pic-exec.test,
2255         tests/demo-pic-make.test, tests/demo-pic.test,
2256         tests/demo-relink.test, tests/demo-shared-exec.test,
2257         tests/demo-shared-inst.test, tests/demo-shared-make.test,
2258         tests/demo-shared-unst.test, tests/demo-shared.test,
2259         tests/demo-static-exec.test, tests/demo-static-inst.test,
2260         tests/demo-static-make.test, tests/demo-static-unst.test,
2261         tests/demo-static.test, tests/demo-unst.test: ...these legacy
2262         test cases, now removed.
2263         * tests/demo/Makefile.am, tests/demo/README,
2264         tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c,
2265         tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
2266         tests/demo/hello.c, tests/demo/main.c: Remove.
2267         * configure.ac (CONF_SUBDIRS): Remove tests/demo.
2268         * Makefile.am: Adjust.
2269
2270         tests: migrate legacy tests/cdemo tests to Autotest.
2271         * tests/cdemo.at: New Autotest groups, based on...
2272         * tests/cdemo-conf.test, tests/cdemo-exec.test,
2273         tests/cdemo-make.test, tests/cdemo-shared-exec.test,
2274         tests/cdemo-shared-make.test, tests/cdemo-shared.test,
2275         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
2276         tests/cdemo-static.test, tests/cdemo-undef-exec.test,
2277         tests/cdemo-undef-make.test, tests/cdemo-undef.test: ...these
2278         legacy test cases, now removed.
2279         tests/cdemo/Makefile.am, tests/cdemo/README,
2280         tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h,
2281         tests/cdemo/main.c: Remove.
2282         * configure.ac (CONF_SUBDIRS): Remove tests/cdemo.
2283         * Makefile.am: Adjust.
2284
2285         maint: distribute a single ChangeLog file.
2286         * ChangeLog.1996, ChangeLog.1997, ChangeLog.1998, ChangeLog.1999,
2287         ChangeLog.2000, ChangeLog.2001, ChangeLog.2002, ChangeLog.2003,
2288         ChangeLog.2004, ChangeLog.2005, ChangeLog.2006, ChangeLog.2007,
2289         ChangeLog.2008, ChangeLog.2009, ChangeLog.2010: Remove.  Content
2290         moved from here...
2291         * ChangeLog.old: ...to here.
2292         * Makefile.am (EXTRA_DIST): Update list of ChangeLog files.
2293         (changelog_old): New variable to hold path to ChangeLog.old file.
2294         ($(changelog)): Update to concatenate non-distributed
2295         ChangeLog.old file to distributed ChangeLog after git log entries.
2296
2297         syntax-check: fix violations and implement sc_prohibit_space_semicolon.
2298         No need for a spurious space before a command ending semi-colon.
2299         * cfg.mk (sc_prohibit_space_semicolon): New test to catch
2300         accidental reintroduction of spurious spaces removed by this
2301         changeset.
2302         * bootstrap, build-aux/general.m4sh, build-aux/ltmain.m4sh,
2303         libltdl/lt__strl.c, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at:
2304         Remove spurious spaces.
2305
2306 2012-10-03  Gary V. Vaughan  <gary@gnu.org>
2307
2308         Merge branch 'gary/reredo-test-operand-order'
2309         The original manually applied changeset 962aa91 contained several
2310         errors (some corrected by subsequent patches on master, others not)
2311         and many unrelated (although in this case, correct) changes were also
2312         committed in the same changeset.
2313         The merged branch gary/reredo-test-operand-order factors the
2314         unrelated changes out into separate commits, and performs the work
2315         that should have been in 962aa91 with a script, the results of which
2316         were then painstakingly inspected for errors.
2317         This merge moves the corrections for errors made in the original
2318         manual patch from the branch onto master.  Please inspect the many
2319         separate changesets on the branch rather than the original patch
2320         when you bisect or otherwise find your way to an error caused by
2321         962aa91.
2322
2323 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
2324
2325         tests: simplify some shell code.
2326         * tests/fail.at: Simplify.
2327         * tests/static.at: Likewise.
2328
2329         libtool: unroll complex nested compound statements
2330         * build-aux/ltmain.m4sh: Use an if statement instead of ugified
2331         compound statements.
2332
2333         libtool: unroll nested if into a single case statement.
2334         * build-aux/ltmain.m4sh (func_mode_link): Unroll a hard to
2335         understad nested if statement into a more readable single case
2336         statement.
2337
2338         libtool: simplify $skipped_export blocks
2339         * build-aux/ltmain.m4sh (func_mode_link): Save an if statement
2340         with '$skipped_export && { block; }' instead of 'if $skipped_export;
2341         then block; fi'.
2342
2343         libtool: simplify an if statement
2344         * build-aux/ltmain.m4sh (func_mode_link): Reverse the branch
2345         order for an if statement for readability.
2346         * m4/libtool.m4: Likewise.
2347
2348         libtool: save an if statement, with a compound statement.
2349         * build-aux/ltmain.m4sh (func_mode_link): Simplify.
2350
2351         libtool: simplify multiple string tests
2352         * build-aux/ltmain.m4sh (func_mode_link): Save test invocations
2353         by using 'test x,y = "$a,$b"' instead of 'test x = "$a" && test y
2354         = "$b"'.
2355         * m4/libtool.m4: Likewise.
2356
2357         libtool: fold if into a compound OR statement when more readable
2358         * build-aux/ltmain.m4sh (func_mode_link): For readability, use
2359         'test string = "$var" || { stuff; }' in preference to
2360         'if test string != "$var"; then stuff; fi'.
2361
2362         libtool: use false or : for $rmforce, and simplify
2363         * build-aux/ltmain.m4sh (func_mode_uninstall): Save a string
2364         comparison by setting $rmforce to false or : and using it
2365         directly as the first argument to if.
2366
2367         libtool: use false or : for $wrappers_required, and simplify
2368         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2369         comparison by setting $wrappers_required to false or : and using
2370         it directly with a ored block rather than an if statement.
2371
2372         libtool: use false or : for $linkalldeplibs, and simplify
2373         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2374         comparison by setting $linkalldeplibs to false or : and using it
2375         directly as the first argument to if.
2376
2377         libtool: use false or : for $valid_a_lib, and simplify
2378         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2379         comparison by setting $valid_a_lib to false or : and using it
2380         directly as the first argument to if.
2381
2382         libtool: use false or : for $found, and simplify
2383         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2384         comparison by setting $found to false or : and using it directly
2385         as the first argument to if.
2386
2387         libtool: use false or : for $alldeplibs, and simplify
2388         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2389         comparison by setting $alldeplibs to false or : and using it
2390         directly as the first argument to if.
2391
2392         libtool: use false or : for $preload, and simplify
2393         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2394         comparison by setting $preload to false or : and using it directly
2395         instead of if statements.
2396
2397         libtool: use false or : for $my_pic_p, and simplify
2398         * build-aux/ltmain.m4sh (func_generate_dlsyms): Save a string
2399         comparison by setting $my_pic_p to false or : and using it directly
2400         instead of calling if.
2401         Adjust all callers.
2402
2403         libtool: use false or : for $finalize, and simplify
2404         * build-aux/ltmain.m4sh (func_mode_install): Save a string
2405         comparison by setting $finalize to false or : and using it
2406         directly as the first argument to if.
2407
2408         libtool: use false or : for $isdir, and simplify
2409         * build-aux/ltmain.m4sh (func_mode_install): Save a string
2410         comparison by setting $isdir to false or : and using it directly
2411         as the first argument to if.
2412
2413         syntax-check: [REDO] fix violations and implement
2414          sc_prohibit_test_const_follows_var.
2415         To safely use a non-literal fist argument to 'test', you must
2416         always prepend a literal non-'-' character, but often the second
2417         operand is a constant that doesn't begin with a '-' already, so
2418         always use 'test a = "$b"' instead of the noisy 'test "X$b" = Xa'.
2419         * cf.mk (sc_prohibit_test_const_follws_var): New syntax-check
2420         rule to ensure we don't reintroduce noisy test operands.
2421         bootstrap, build-aux/extract-trace, build-aux/general.m4sh,
2422         build-aux/ltmain.m4sh, configure.ac, doc/libtool.texi, libtoolize.m4sh,
2423         m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at, tests/defs.m4sh,
2424         tests/demo-relink.test, tests/demo/configure.ac,
2425         tests/depdemo-relink.test, tests/destdir.at, tests/duplicate_conv.at,
2426         tests/fail.at, tests/getopt-m4sh.at, tests/help.at, tests/libtoolize.at,
2427         tests/link-2.test, tests/link-order2.at, tests/lt_dlopenext.at,
2428         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
2429         tests/need_lib_prefix.at, tests/nocase.at, tests/pdemo/configure.ac,
2430         tests/pic_flag.at, tests/search-path.at, tests/shlibpath.at,
2431         tests/static.at, tests/sysroot.at, tests/tagtrace.test,
2432         tests/testsuite.at, tests/with-pic.at: Swap operands to avoid useless
2433         noise.
2434
2435 2012-09-19  Peter Rosin  <peda@lysator.liu.se>
2436
2437         tests: skip with-pic test when no "real" pic flag is used.
2438         * tests/with-pic.at: Windows uses "-DDLL_EXPORT -DPIC" as the pic
2439         "flag", but never applies it to static libraries. Cater for this
2440         and skip if no "real" pic flag is in use.
2441
2442 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
2443
2444         syntax-check: fix texinfo formatting flagged by
2445          prohibit_undesirable_word_seq.
2446         * doc/libtool.text: Fix several misuses of @xref and @pxref so that
2447         the prohibit_undesirable_word_seq syntax check passes again.
2448
2449         syntax-check: remove useless_braces_in_variable_derefs.
2450         * build-aux/general.m4sh: Remove spurious braces around
2451         ${ZSH_VERSION} dereference.
2452         * build-aux/ltmain.m4sh (func_mode_link): Likewise for ${wl}.
2453
2454         syntax-check: skip prohibit_strncpy.
2455         * cfg.mk (local-checks-to-skip): sc_prohibit_strncpy.
2456
2457         syntax-check: skip prohibit_always_true_header_tests rule.
2458         * cfg.mk (local-checks-to-skip): Add
2459         sc_prohibit_always_true_header_tests.
2460
2461         maint: Revert "bootstrap: delete unneeded README-release patch"
2462         This reverts commit 11cd425e7d47111956381dba28f8c1b34e14653f.
2463         These instructions are hard to find for new maintainers, so it's
2464         good to keep them to hand with the release notes.
2465         And the additional distchecks are important prior to a release.
2466
2467         maint: remove unused cvsu script.
2468         * build-aux/cvsu: Remove. This script is not useful now that
2469         Libtool's repository is hosted in git.
2470         * Makefile.am (build_scripts): Remove cvsu reference.
2471
2472         maint: run update-copyright for missing 2011 and 2012 years.
2473         See maintain.texi (Copyright Notices) for rules for maintaining
2474         the years in copyright notices.
2475         * All Files (Copyright): Updated with missing 2011 and 2012.
2476
2477         bootstrap: use gnulib update-copyright script.
2478         See maintain.texi (Copyright Notices) for rules for maintaining
2479         the years in copyright notices.
2480         * bootstrap.conf (gnulib_modules): Add update-copyright.
2481         * cfg.mk (update-copyright-env): Set environment variables for
2482         update-copyright script.
2483
2484         bootstrap: update bootstrap script to latest upstream.
2485         * bootstrap, build-aux/options-parser: apply upstream fixes and
2486         enhancements.
2487
2488         git: don't complain about new parallel tests driver and file droppings.
2489         * build-aux/.gitignore: Ignore parallel `test-driver' script.
2490         * tests/.gitignore: Ignore `test-driver' .trs file droppings.
2491
2492         gnulib: update local gnulib patches.
2493         * gl/build-aux/announce-gen.diff: Remove hunks adopted upstream.
2494         * gl/build-aux/do-release-commit-and-tag.diff: Refresh this patch
2495         to match current gnulib.
2496
2497         gnulib: update gnulib submodule.
2498
2499         bootstrap: ensure there is a ChangeLog before running automake.
2500         Automake refuses to run in GNU-mode unless there is a ChangeLog file
2501         in the top-level directory.
2502         * bootstrap.conf (libtool_force_changelog): Create a dummy ChangeLog.
2503
2504         libtoolize: improve verbose mode output.
2505         * libtoolize (func_require_seen_ltdl)
2506         (func_require_seen_libtool): Output success message in verbose
2507         mode.
2508
2509 2012-08-22  Peter O'Gorman  <peter@pogma.com>
2510
2511         libtool: Add the 'n' to then.
2512         * m4/libtool.m4: fix typo.
2513         Reported by Brad Smith.
2514
2515 2012-08-22  Andreas Schwab  <schwab@linux-m68k.org>
2516
2517         libtool: Pass through -g* so that debugging information is not dropped
2518         * ltmain.m4sh (func_mode_link): Pass through -g*.
2519
2520 2012-08-22  David Edelsohn  <dje.gcc@gmail.com>
2521
2522         libtool: AIX PIC shared library support
2523         * m4/libtool.m4 (_LT_COMPILER_PIC): Add -fPIC to GCC and GXX for AIX.
2524
2525 2012-08-22  Brad Smith  <brad@comstyle.com>
2526
2527         libtool: Update/simplify OpenBSD support
2528         * m4/libtool.m4: Forget about 11 year old releases.
2529
2530 2012-08-19  Peter Rosin  <peda@lysator.liu.se>
2531
2532         libtool: quote progpath properly
2533         Attempt to handle spaces in paths better.
2534         * build-aux/ltmain.m4sh (func_mode_install, func_mode_link): Quote
2535         $progpath.
2536         * THANKS: Update.
2537
2538 2012-04-19  Mike Frysinger  <vapier@gentoo.org>
2539
2540         libtool: Handle getconf returning "undefined".
2541         * m4/libtool.m4: Check for "undefined" from `getconf`.
2542
2543 2012-03-17  Peter Rosin  <peda@lysator.liu.se>
2544
2545         bootstrap: delete unneeded README-release patch
2546         * gl/top/README-release.diff: Delete.
2547
2548 2012-03-16  Peter O'Gorman  <peter@pogma.com>
2549
2550         libtool: Fix typo that caused sys_lib_search_path_spec to be wrong.
2551         * m4/libtool.m4: s/lt_fooi/lt_foo/.
2552         Reported by Paul Seidler.
2553
2554 2012-02-21  Samuel Thibault  <samuel.thibault@gnu.org>
2555
2556         libtool: Improve GNU/Hurd support.
2557         * m4/libtool.m4: Add gnu* match where it was missing.
2558
2559 2012-02-19  Titus von Boxberg  <titus@v9g.de>
2560
2561         libtool: Accept clang's -stdlib linker flag.
2562         build-aux/ltmain.m4sh: Don't drop the -stdlib= flag.
2563
2564 2012-02-19  Juergen Reuter  <reuter@t00pcx17094.desy.de>
2565
2566         libtool: Enable nagfor fortran compiler support
2567         * build-aux/ltmain.m4sh: nagfor compatible version string.
2568         * m4/libtool.m4: nagfor support.
2569
2570 2012-02-19  Juergen Reuter  <reuter@theoc01.desy.de>
2571
2572         libtool: Fixing -shared error message for nagfor compiler.
2573         * m4/libtool.m4: Fix -shared.
2574
2575 2012-02-19  Pavel (Pasha) Shamis  <shamisp@ornl.gov>
2576
2577         ltdl: Improve debug error reporting in ltdl.
2578         * libltdl/ltdl.c: Print the error message if loading fails.
2579
2580 2012-02-19  Peter O'Gorman  <peter@pogma.com>
2581
2582         maint: Deleted unneeded gitlog-to-changelog patch
2583         * gl/build-aux/gitlog-to-changelog.diff: Delete.
2584
2585 2012-02-02  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
2586
2587         fixup: restore EXPORTS test
2588         Commit v2.4.2-120-g962aa91
2589         syntax-check: fix violations and implement sc_prohibit_test_const_follows_var
2590         inadvertedly reversed the meaning of the comparison.
2591
2592         * build-aux/ltmain.m4sh (func_mode_link) [cygwin|mingw|cegcc]: Restore
2593         the EXPORTS test.  We need to look at the symbols when it's _not_
2594         already a .def file (in which case we trust the user input blindly).
2595
2596 2012-01-30  Peter Rosin  <peda@lysator.liu.se>
2597
2598         cwrapper: avoid surplus strlen calculations.
2599         * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src:lt_update_exe_path):
2600         Avoid surplus strlen calculations.
2601
2602 2011-12-24  Gary V. Vaughan  <gary@gnu.org>
2603
2604         bootstrap: fix Autoconf version typo.
2605         * build-aux/options-parser: s/2\.62/2.68/
2606
2607         gnulib: update gnulib submodule.
2608         Among others, this fixes the reference to a local commit.
2609         * gnulib: Updated to todays master HEAD revision.
2610         * gl/top/README-release.diff: Update to account for changes to
2611         gnulib/top/README-release since the last gnulib update.
2612
2613 2011-12-18  Gary V. Vaughan  <gary@gnu.org>
2614
2615         libtool: make fork minimisation compatible with dash and zsh.
2616         * build-aub/general.m4sh (lt_HAVE_PLUSEQ_OP): Instead of using
2617         $((..)) arithmetic, which causes an error on dash, use a case
2618         based bash version check.
2619         (lt_HAVE_ARITH_OP, lt_HAVE_XSI_OPS): Also short circuit the
2620         feature probing forks and set these automatically when zsh is
2621         detected.
2622         Reported by Stefano Lattarini.
2623
2624         bootstrap: adopt autoconf echo normalization code.
2625         Dash shipped with Ubutu-11.10 as /bin/sh, among others, still
2626         has a crippled echo builtin that mis-handles backslashes.
2627         * build-aux/options-parser (bs_echo): Adopt the autoconf echo
2628         normalization code to find a suitable replacement for buggy echo
2629         commands.
2630         Adjust all uses of echo to $bs_echo.
2631         * build-aux/extract-trace (func_extract_trace, func_main):
2632         Likewise.
2633         * bootstrap: To retain some execution speed on platforms with
2634         buggy builtin echo, replace most occurrences of `echo' with
2635         `$bs_echo' - except where its arguments will obviously never
2636         contain backslashes or be overly long.
2637         Reported by Reuben Thomas.
2638
2639         libtool: minimise forks per invocation under bash.
2640         * build-aux/general.m4sh (lt_HAVE_PLUSEQ_OP, lt_HAVE_ARITH_OP)
2641         (lt_HAVE_XSI_OPS): Set these without forking a test script when
2642         running under bash, to avoid a few unnecessary forks.
2643
2644 2011-12-13  H.J. Lu  <hongjiu.lu@intel.com>
2645
2646         libtool: Support x32.
2647         * m4/libtool.m4 (_LT_ENABLE_LOCK): Support x32.
2648
2649 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
2650
2651         maint: disable prohibit_always-defined_macros syntax check.
2652         Aside from Apple grep silently failing to run this test and
2653         report violations, libtool still uses non-gnulib versions of
2654         dirent.h and argz.h which use the same macros, but are not
2655         always-defined.
2656         * cfg.mk (local-checks-to-fix): Move
2657         sc_prohibit_always-defined_macros from here...
2658         (local-checks-to-skip): ...to here.
2659         Reported by Peter O'Gorman.
2660
2661         tests: s/snippit/snippet/.
2662         * tests/demo/foo.h, tests/pdemo/foo.h: Spell `snippet' correctly.
2663         Reported by Stefano Lattarini.
2664
2665         tests: make sure file restore traps are called correctly on AIX.
2666         * tests/demo-noinst-link.test (func_save_files): set the restore
2667         trap outside a function, otherwise AIX 5.3 /bin/sh will run the
2668         trap at the end of the function, instead of when the script
2669         exits.
2670         * tests/demo-relink.test (func_save_files): Ditto.
2671         * tests/depdemo-relink.test (func_save_files): Ditto.
2672         Reported by Stefano Lattarini.
2673
2674         maint: eliminate some more spurious leading Xs.
2675         * m4/libtool.m4: Reverse argument order to eliminate spurious
2676         leading X's.
2677
2678         bootstrap: put back missing spaces before parens.
2679         * bootstrap (func_require_buildreq_autobuild)
2680         (func_require_buildreq_automake): Vi's delete word command is
2681         too greedy and also eats trailing whitespace before following
2682         non-word-chars. Put back the spaces it ate so that
2683         syntax-checks pass once again.
2684
2685         libtoolize: refactor copying filter creation.
2686         Prevent the various require_filter functions from becoming too
2687         long by factoring common code into new functions.
2688         * libtoolize (func_make_relative_dir_filter)
2689         (func_make_relative_ltdl_filter): New functions. Generalize and
2690         consolidate the various similar snippets for concatenating
2691         together the sed scripts for func_copy filtering.
2692         (require_filter_Makefile_am, require_filter_aclocal_m4)
2693         (require_filter_configure_ac): Simplify.
2694         (require_ltdl_relative_aux_dir): Remove.
2695         (require_ltdl_relative_macro_dir): Ditto.
2696
2697         maint: pick XSI funcs at runtime, not configure time.
2698         Determine, on a function by function basis, what XSI features
2699         are available in the shell that is actually running the script,
2700         rather than the one that was picked at configure time by the
2701         re-execution engine.
2702         * m4/libtool.m4 (_LT_PROG_FUNCTION_REPLACE)
2703         (_LT_PROG_REPLACE_SHELLFNS): Remove.
2704         (_LT_CHECK_SHELL_FEATURES): Remove tests for XSI and += support.
2705         * build-aux/general.m4sh (func_append, func_append_quoted)
2706         (func_arith, func_len, func_basename, func_dirname)
2707         (func_dirname_and_basename, func_stripname): List both enhanced
2708         and fallback implementations, and choose one based on whether
2709         the enhanced features required by the fastest version are
2710         available.
2711         * build-aux/getopt.m4sh (func_split_short_opt)
2712         (func_split_long_opt): Ditto.
2713         * build-aux/ltmain.m4sh (func_lo2o, func_xform): Ditto.
2714         * tests/getopt-m4sh.at: Add tests for enhanced and fallback
2715         implementations of func_arith, func_len, func_stripname and
2716         func_dirname_and_basename.
2717         * NEWS: Updated.
2718
2719         maint: share useful functions from general.m4sh.
2720         * build-aux/ltmain.m4sh (func_append, func_append_quoted)
2721         (func_arith, func_len): Removed from here...
2722         * build-aux/general.m4sh (func_append, func_append_quoted)
2723         (func_arith, func_len): ...and added to here.
2724         (func_dirname, func_dirname_and_basename, func_normal_abspath)
2725         (func_relative_path): Use func_append.
2726         * tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): Removed.
2727         Fallback functions are now in any m4sh generated file
2728         automatically.
2729
2730         libtoolize: reorder function definitions to keep func_filter_* together.
2731         * libtoolize: Restore asciibetical order, so that all the
2732         filter function definitions are together.
2733
2734         libtoolize: use _filter as a prefix for better ordering.
2735         * libtoolize.m4sh (require_Makefile_am_filter)
2736         (require_ltdl_mk_filter, require_aclocal_m4_filter)
2737         (require_configure_ac_filter): Rename these functions from this...
2738         (require_filter_Makefile_am, require_filter_ltdl_mk)
2739         (require_filter_aclocal_m4, require_filter_configure_ac): ...to
2740         this, respectively.  Adjust all callers.
2741         (Makefile_am_filter, ltdl_mk_filter, aclocal_m4_filter)
2742         (configure_ac_filter): Rename these global variables from this...
2743         (filter_Makefile_am, filter_ltdl_mk, filter_aclocal_m4)
2744         (filter_configure_ac): ...to this, respectively.
2745
2746         libtoolize: rename ltdl.mk filter function.
2747         * libtoolize.m4sh (require_Makefile_inc_filter): Rename from
2748         this...
2749         (require_ltdl_mk_filter): ...to this. Adjust all callers.
2750
2751         bootstrap: escape quotes properly in generated functions.
2752         * bootstrap: Although not a real bug, for consistency, be sure
2753         to correctly escape single quotes inside a single quoted
2754         function generator.
2755
2756         bootstrap: reorder function definitions to keep func_buildreq_* together.
2757         * bootstrap: Restore asciibetical order, so that all the
2758         buildreq function definitions are together.
2759
2760         bootstrap: use _buildreq as a prefix for better ordering.
2761         * bootstrap (require_autobuild_buildreq)
2762         (require_autoconf_buildreq, require_automake_buildreq)
2763         (require_autopoint_buildreq, require_libtoolize_buildreq)
2764         (require_patch_buildreq): Rename from these...
2765         (require_buildreq_autobuild, require_buildreq_autoconf)
2766         (require_buildreq_automake, require_buildreq_autopoint)
2767         (require_buildreq_libtoolize, require_buildreq_patch): ...to
2768         these, respectively.  Adjust all callers.
2769
2770         bootstrap: ensure consistent function header comments.
2771         * bootstrap (require_bootstrap_uptodate)
2772         (require_buildtools_uptodate): Use `require_...' in header
2773         comment for these functions to be consistent with the rest,
2774         rather than `func_require_...'.
2775
2776         bootstrap: make sure patch is available to bootstrap if necessary.
2777         Make sure we're not lacking any functionality provided by the
2778         incumbent gnulib bootstrap script, and where it's easy to do so
2779         (like it is here), provide better functionality!
2780         * bootstrap (require_patch): Make sure that PATCH expands to the
2781         best `patch' command available on the system, honouring
2782         overrides in the users environment.
2783         (require_patch_buildreq): Automatically add a requirement for a
2784         patch command to buildreq when there are diff files in
2785         $local_gl_dir.
2786         (func_require_buildtools_uptodate): Call require_patch_buildreq
2787         before testing build tool versions.
2788         (func_gnulib_tool_copy_file): Make sure PATCH is set before using
2789         gnulib-tool to copy files.
2790
2791 2011-11-26  Gary V. Vaughan  <gary@gnu.org>
2792
2793         m4: fix logic error leading to -fno-rtti being added wrongly.
2794         * m4/libtool.m4 (_LT_COMPILER_OPTION): Negate comparison so that
2795         compiler flags are added correctly.
2796
2797         maint: Fix generated ChangeLog typos.
2798         * build-aux/git-log-fix: Spell Stefano Lattarini's name
2799         correctly.
2800         Don't use my home email address for GNU commits.
2801
2802 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
2803
2804         syntax-check: fix violations and implement sc_useless_braces_in_variable_derefs.
2805         Until now, libtool sources have used braced variable names
2806         seemingly at random! Almost always the braces are just noise, so
2807         remove all the unnecessary ones.
2808         * cfg.mk (sc_useless_braces_in_variable_derefs): New syntax
2809         check rule to ensure we only reintroduce braced variable
2810         dereferences if they are followed by a valid variable name
2811         character.
2812         build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
2813         build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
2814         libltdl/configure.ac, m4/libtool.m4, m4/ltdl.m4,
2815         m4/ltoptions.m4, tests/defs.m4sh, tests/demo-nopic.test,
2816         tests/depdemo/configure.ac, tests/flags.at, tests/link.test,
2817         tests/objectlist.test, tests/quote.test, tests/static.at: Remove
2818         spurious braces.
2819
2820         syntax-check: fix violations and implement sc_prohibit_sed_s_comma.
2821         I like to name temporary directories that I will remove shortly
2822         with two leading commas so that they sort lexicographically at
2823         the top of `ls' output.  Now, `./configure
2824         --prefix=`pwd`/,,inst' works again, for the first time in
2825         several years.
2826         * cfg.mk (sc_prohibit_sed_s_comma): Comma is too common a
2827         character to use routinely as the separator for sed
2828         substitutions on file paths and other variables determined by
2829         the user, causing bugs like the one I describe above.  Make sure
2830         we don't accidentally reintroduce any comma separators in
2831         future.
2832         * Makefile.am, bootstrap, bootstrap.conf, build-aux/extract-trace,
2833         build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
2834         build-aux/git-log-fix, build-aux/ltmain.m4sh, libtoolize.m4sh,
2835         m4/libtool.m4, m4/ltdl.m4, tests/cdemo-undef.test,
2836         tests/cmdline_wrap.at, tests/darwin.at, tests/defs.m4sh,
2837         tests/getopt-m4sh.at, tests/install.at, tests/libtoolize.at,
2838         tests/mdemo/Makefile.am, tests/need_lib_prefix.at,
2839         tests/sysroot.at, tests/tagdemo-undef.test, tests/testsuite.at:
2840         Try to use `|' as the default separator wherever possible,
2841         otherwise something else that doesn't occur in the substitution
2842         expression.
2843         * NEWS: Updated.
2844
2845         syntax-check: fix violations and implement sc_prohibit_bare_basename.
2846         * cfg.mk (sc_prohibit_bare_basename, sc_prohibit_basename_with_sed):
2847         Make sure not to go back to using occasional `|$basename' or
2848         `|$dirname' syntax.
2849         * build-aux/git-hooks/commit-msg, build-aux/ltmain.m4sh,
2850         * build-aux/options-parser, tests/fcdemo-conf.test,
2851         * tests/fcdemo-shared.test, tests/fcdemo-static.test,
2852         * tests/libtoolize.at: Fix violations.
2853
2854         tests: migrate tests/sh.test checks to syntax-checks.
2855         Some modernization of the legacy testsuite.
2856         * tests/sh.test: Remove.
2857         * Makefile.am (COMMON_TESTS): Adjust.
2858         * cfg.mk (sc_libtool_m4_cc_basename, sc_prohibit_bracket_as_test)
2859         (sc_prohibit_nested_quotes, sc_prohibit_set_dummy_without_shift)
2860         (sc_prohibit_set_minus_minus, sc_prohibit_test_binary_operators)
2861         (sc_prohibit_test_dollar, sc_prohibit_test_minus_e)
2862         (sc_prohibit_test_unary_operators, sc_prohibit_test_X)
2863         (sc_prohibit_Xsed_withou_X, sc_require_function_nl_brace):
2864         Functionally identical tests to what used to be performed by
2865         sh.test, only with coverage of all files.
2866         * bootstrap, build-aux/edit-readme-alpha,
2867         build-aux/extract-trace, build-aux/getopt.m4sh,
2868         build-aux/ltmain.m4sh, configure.ac, m4/libtool.m4, m4/ltdl.m4,
2869         tests/bindir.at, tests/configure-iface.at, tests/cwrapper.at,
2870         tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
2871         tests/dlloader-api.at, tests/exceptions.at,
2872         tests/getopt-m4sh.at, tests/lalib-syntax.at, tests/link-2.test,
2873         tests/link-order2.at, tests/loadlibrary.at,
2874         tests/lt_dladvise.at, tests/lt_dlexit.at, tests/lt_dlopen_a.at,
2875         tests/lt_dlopenext.at, tests/need_lib_prefix.at,
2876         tests/nonrecursive.at, tests/recursive.at, tests/resident.at,
2877         tests/standalone.at, tests/static.at, tests/stresstest.at,
2878         tests/subproject.at, tests/sysroot.at, tests/tagtrace.test,
2879         tests/testsuite.at: Fix violations of the new syntax checks.
2880
2881         syntax-check: fix violations and implement sc_useless_quotes_in_assignment.
2882         Contrary to popular belief, Bourne shell does not resplit RHS of
2883         assignments after expansion, so if there are no unquoted shell
2884         metacharacters or whitespace, the quotes are useless.
2885         * cfg.mk (_sc_search_regexp_or_exclude): A variation of gnulib's
2886         _sc_search_regexp that also allows individual exclusions at the
2887         site of what would otherwise match by adding a comment.
2888         (sc_useless_quotes_in_assignment): New syntax-check rule to
2889         ensure we don't reintroduce useless quoted assignments.
2890         * bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
2891         build-aux/general.m4sh, build-aux/getopt.m4sh,
2892         build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
2893         doc/libtool.texi, libtoolize.m4sh, m4/libtool.m4, m4/ltdl.m4,
2894         m4/ltoptions.m4, tests/cwrapper.at, tests/defs.m4sh,
2895         tests/lalib-syntax.at, tests/libtoolize.at,
2896         tests/lt_dlopenext.at, tests/mdemo/configure.ac,
2897         tests/mdemo2/configure.ac, tests/need_lib_prefix.at,
2898         tests/no-executables.at, tests/quote.test, tests/suffix.test:
2899         Remove spurious quotes.
2900
2901         syntax-check: fix violations and implement sc_useless_quotes_in_case.
2902         Contrary to popular belief, Bourne shell does not resplit case
2903         expressions after expansion, so if there are no unquoted shell
2904         metacharacters or whitespace, the quotes are useless.
2905         * cfg.mk (sc_useless_quotes_in_case): New syntax-check rule to
2906         ensure we don't reintroduce useless quoted case expressions.
2907         * build-aux/ltmain.m4sh, m4/libtool.m4, tests/bindir.at,
2908         tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
2909         tests/demo-nopic.test, tests/link-2.test, tests/quote.test,
2910         tests/sysroot.at: Remove spurious quotes.
2911
2912         maint: quote $file correctly in bootstrap.
2913         * bootstrap (func_insert_sorted_if_absent): Don't forget the
2914         double quotes, since we can't control the content of $file.
2915         Reported by Stefano Lattarini.
2916
2917         build: fix a quoting bug when regenerating with bootstrap_edit.
2918         * Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh): The
2919         bootstrap_edit make macro already contains double quotes, so
2920         when echoing it, don't surround it with more double quotes since
2921         it is not escaped.
2922
2923 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
2924
2925         dist: hook syntax-check into `make distcheck'.
2926         To make sure we don't accidentally release anything with
2927         failing syntax-checks, have `make distcheck' run the
2928         syntax-checks automatically.
2929         * Makefile.am (distcheck-hook): New rule depending on
2930         syntax-check.
2931
2932         syntax-check: enable sc_prohibit_always_true_header_tests.
2933         * cfg.mk (local-checks-to-fix): Remove
2934         sc_prohibit_always_true_header_tests from list of disabled
2935         checks, because it no longer flags any violations.
2936
2937         syntax-check: enable sc_program_name.
2938         * cfg.mk (local-checks-to-skip): Remove sc_program_name
2939         list of disabled checks.
2940         (exclude_file_name_regexp--sc_program_name): Don't check demo
2941         programs for use of set_program_name.
2942
2943         syntax-check: enable sc_bindtextdomain.
2944         * cfg.mk (local-checks-to-skip): Remove sc_bindtextdomain
2945         list of disabled checks.
2946         (exclude_file_name_regexp--sc_bindtextdomain): Don't check demo
2947         programs for use of bindtextdomain.
2948
2949         syntax-check: fix violations and implement sc_trailing_blank-non-rfc3676.
2950         * cfg.mk (local-checks-to-fix): Move sc_trailing_blank from
2951         here...
2952         (local-checks-to-skip): ...to here, because otherwise it flags
2953         valid RFC3676 signature blocks.
2954         (sc_trailing_blank-non-rfc3676): An improved sc_trailing_blank
2955         implementation that doesn't flag signature blocks as violations.
2956         * Makefile.am, bootstrap.conf, doc/PLATFORMS,
2957         libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4,
2958         libltdl/m4/lt~obsolete.m4, tests/archive-in-archive.at,
2959         tests/convenience.at, tests/darwin.at, tests/depdemo/l1/l1.c,
2960         tests/depdemo/l2/l2.c, tests/depdemo/l3/l3.c,
2961         tests/depdemo/l4/l4.c, tests/f77demo/README,
2962         tests/f77demo/cprogram.c, tests/f77demo/foof.f,
2963         tests/f77demo/foof2.f, tests/f77demo/foof3.f,
2964         tests/f77demo/fprogram.f, tests/fcdemo/README,
2965         tests/fcdemo/cprogram.c, tests/fcdemo/foof.f90,
2966         tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
2967         tests/fcdemo/fprogram.f90, tests/mdemo/README,
2968         tests/mdemo/main.c, tests/mdemo/mlib.c, tests/objectlist.test,
2969         tests/static.at, tests/template.at, tests/testsuite.at: Remove
2970         trailing blanks.
2971
2972         syntax-check: fix violations and re-enable sc_useless_cpp_parens.
2973         * cfg.mk (local-checks-to-fix): Remove sc_useless_cpp_parens
2974         from list of disabled checks.
2975         * doc/libtool.texi, libltdl/argz.c, libltdl/argz_.h,
2976         build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
2977         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
2978         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
2979         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
2980         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
2981         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
2982         libltdl/loaders/dyld.c, libltdl/loaders/loadlibrary.c,
2983         libltdl/loaders/shl_load.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
2984         libltdl/ltdl.c, libltdl/ltdl.h, libltdl/m4/libtool.m4, tests/demo/foo.h,
2985         tests/depdemo/sysdep.h, tests/exceptions.at, tests/export.at,
2986         tests/pdemo/foo.h, tests/stresstest.at: Remove useless parens in cpp
2987         `#if defined(foo)' statements.
2988
2989         syntax-check: fix violations and re-enable sc_space_tab.
2990         * cfg.mk (local-checks-to-fix): Remove sc_space_tab from list of
2991         disabled checks.
2992         (exclude_file_name_regexp--sc_space_tab): Don't flag space-tab
2993         sequences in diff files as an error.
2994         * Makefile.am, build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
2995         build-aux/ltmain.m4sh, libltdl/loaders/dyld.c,
2996         libltdl/loaders/shl_load.c, libltdl/ltdl.h, libltdl/ltdl.mk,
2997         libltdl/slist.c, libtoolize.m4sh, m4/ltoptions.m4, tests/demo/dlmain.c,
2998         tests/depdemo/main.c, tests/libtoolize.at, tests/lt_dladvise.at,
2999         tests/pdemo/longer_file_name_dlmain.c, tests/sh.test, tests/static.at,
3000         tests/stresstest.at, tests/template.at: Fix space-tab sequences by
3001         reversing them in regexps, and deleting leading spaces in indentation.
3002
3003         syntax-check: fix violations and re-enable sc_prohibit_undesirable_word_seq.
3004         * cfg.mk (local-checks-to-fix): Remove
3005         sc_prohibit_undesirable_word_seq from list of disabled checks.
3006         * doc/libtool.texi, build-aux/ltmain.m4sh,
3007         libltdl/m4/libtool.m4, libtoolize.m4sh: Replace all uses of "can
3008         not" with "cannot".
3009
3010         syntax-check: fix violations and re-enable sc_probibit_test_minus_ao.
3011         * cfg.mk (local-checks-to-fix): Remove
3012         sc_probhibit_test_minus_ao from list of disabled checks.
3013         (exclude_file_name_regexp--sc_prohibit_tests_minus_ao): The
3014         matches from this syntax-check in libtool.m4 are all bogus.
3015
3016         syntax-check: fix violations and re-enable sc_prohibit_strcmp.
3017         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_strcmp
3018         from list of disabled checks.
3019         (exclude_file_name_regexp--sc_prohibit_strcmp): Ignore
3020         violations in libtool.texi and any demo C files.
3021         * libltdl/libltdl/lt__private.h (strneq, streq): Renamed from
3022         this...
3023         (STRNEQ, STREQ): ..to this.  Adjust all callers.
3024         * tests/slist.at: Add STREQ definition. Change all !strcmp calls
3025         to STREQ.
3026         * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src): Add and use
3027         STREQ definition.
3028
3029         syntax-check: fix violations and re-enable sc_prohibit_stddef_without_use.
3030         * cfg.mk (local-checks-to-fix): Remove
3031         sc_prohibit_stddef_without_use from list of disabled checks.
3032         * libltdl/argz.c, libltdl/lt__dirent.c, libltdl/slist.c: Remove
3033         spurious stddef.h #include lines.
3034
3035         syntax-check: fix violations and re-enable sc_prohibit_magic_number_exit.
3036         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_magic_number_exit
3037         from list of disabled checks.
3038         * ltmain.c: Removed unused file.
3039
3040         syntax-check: fix violations and re-enable sc_prohibit_have_config_h.
3041         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_have_config_h
3042         from list of disabled checks.
3043         * tests/f77demo/foo.h, tests/fcdemo/foo.h: Remove spurious
3044         HAVE_CONFIG_H guards for #include <config.h>.
3045
3046         syntax-check: fix violations and re-enable sc_prohibit_empty_lines_at_EOF.
3047         * cfg.mk (local-checks-to-fix): Remove
3048         sc_prohibit_empty_lines_at_EOF from list of disabled checks.
3049         * THANKS, libltdl/argz.c, libltdl/config/getopt.m4sh,
3050         tests/f77demo/README, tests/f77demo/cprogram.c,
3051         tests/f77demo/fprogram.f, tests/fcdemo/README,
3052         tests/fcdemo/cprogram.c, tests/libtoolize.at,
3053         tests/mdemo/README, tests/mdemo2/README, tests/pdemo-inst.test:
3054         Remove spurious empty lines from the end of these files.
3055
3056         syntax-check: fix violations and re-enable sc_prohibit_doubled_word.
3057         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_doubled_word
3058         from list of disabled checks.
3059         * build-aux/general.m4sh (func_quote_for_eval): Remove one of a
3060          pair of "and"s in a comment.
3061         * tests/lt_dladvise.at (hint_global): Remove one of a pair of
3062         consecutive "to"s split across lines in a comment.
3063
3064         syntax-check: fix violations and re-enable sc_prohibit_cvs_keyword.
3065         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_cvs_keyword
3066         from list of disabled checks.
3067         * tests/tagdemo/README: Remove spurious CVS keyword.
3068
3069         syntax-check: fix violations and re-enable sc_makefile_at_at_check.
3070         At some point we were supporting some undetermined `broken
3071         make', as evidenced by having carried the following code since
3072         2003:
3073           ## use @LIBLTDL@ because some broken makes do not accept
3074           ## macros in targets, we can only do this because our LIBLTDL
3075           ## does not contain $(top_builddir).
3076           @LIBLTDL@: $(top_distdir)/libtool \
3077           ...
3078         However, we've also had *many* cases of macros in targets for
3079         just as long, so most likely we never fully supported makes
3080         allegedly broken in this way.  As of this release, we explicitly
3081         no longer support make implementations that do not accept macros
3082         in targets.
3083         * cfg.mk (local-checks-to-fix): Remove sc_makefile_at_at_check
3084         from list of disabled checks.
3085         * configure.ac (order-only prerequisites): Test with the
3086         order-only pipe symbol in a macro.
3087         * Makefile.am, tests/mdemo/Makefile.am: Convert all @FOO@ to
3088         $(FOO).
3089
3090         syntax-check: fix violations and re-enable sc_makefile_TAB_only_indentation.
3091         * cfg.mk (local-checks-to-fix): Remove
3092         sc_makefile_TAB_only_indentation from list of disabled checks.
3093         * Makefile.am (libltdl/Makefile.am): Replace leading spaces with
3094         TABs.
3095         * libltdl/Makefile.am (libltdl_libltdl_la_SOURCES): Ditto.
3096
3097         syntax-check: fix violations and re-enable sc_m4_quote_check.
3098         * cfg.mk (local-checks-to-fix): Remove sc_m4_quote_check from
3099         list of disabled checks.
3100         * libltdl/m4/libtool.m4 (_LT_CHECK_OBJDIR): Quote LT_OBJDIR
3101         correctly.
3102
3103         syntax-check: fix violations and re-enable sc_file_system.
3104         * cfg.mk (local-checks-to-fix): Remove sc_file_system from list
3105         of disabled checks.
3106         (VC_LIST_ALWAYS_EXCLUDE_REGEX): Match mail directory correctly
3107         to avoid running its contents through syntax-check.
3108         * build-aux/ltmain.m4sh (func_mode_link): Use correct spelling
3109         for "file system".
3110         * libltdl/ltdl.c (try_dlopen): Ditto.
3111         * tests/dlloader-api.at: Ditto.
3112
3113         syntax-check: fix violations and re-enable sc_error_message_uppercase.
3114         * cfg.mk (local-checks-to-fix): Remove
3115         sc_error_message_uppercase from list of disabled checks.
3116         (exclude_file_name_regexp--sc_error_message_uppercase): Don't
3117         match cvsu, which is not our file to edit.
3118         * doc/libtool.texi: Use lowercase error message in example.
3119
3120         syntax-check: rationale for disabling sc_cast_of_x_alloc_return_value.
3121         * cfg.mk: Note that we support C++ compilation of libltdl, which
3122         in turn requires that *alloc return values be cast correctly.
3123
3124         syntax-check: fix violations and re-enable sc_cast_of_argument_to_free.
3125         * cfg.mk (local-checks-to-fix): Remove
3126         sc_cast_of_argument_to_free from list of disabled checks.
3127         * build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
3128         libltdl/lt__dirent.c: Casting argument to free is never
3129         necessary.
3130
3131         syntax-check: fix violations and re-enable sc_avoid_if_before_free.
3132         * cfg.mk (local-checks-to-fix): Remove sc_avoid_if_before_free
3133         from list of disabled checks.
3134         According to gnulib/doc/free.texi: "On old platforms such as
3135         SunOS4, @code{free (NULL)} fails.  However, since all such
3136         systems are so old as to no longer be considered ``reasonable
3137         portability targets,'' this module is no longer useful."
3138         * libltdl/libltdl/lt__alloc.h (FREE, MEMREASSIGN): Don't protect
3139         against freeing NULL bug on SunOS4.
3140
3141         syntax-check: skip sc_unmarked_diagnostics.
3142         * cfg.mk (local-checks-to-fix): Move sc_unmarked_diagnostics
3143         from here...
3144         (local-checks-to-skip): ...to here.
3145
3146         libtoolize: rename `libltdl/config' directory to standard `build-aux'.
3147         In addition to moving the autoconf auxiliary script directory
3148         into the place expected by GNU developers ($top_srcdir/build-aux)
3149         we also simplify libtoolize somewhat by having libltdl use
3150         whatever directory was specified by the parent project.  This is
3151         much more flexible, allows libltdl client projects to also use a
3152         single canonical `$top_srcdir/build-aux' auxiliary script
3153         directory, and maintains backward compatibility with existing
3154         projects that wish to continue using $ltdl_dir/config.
3155         * libltdl/config: Moved whole directory from here...
3156         * build-aux: ...to here.
3157         * libtoolize.m4sh (func_install_pkgaux_subproject): Remove.
3158         (func_install_pkgaux_parent): Remove.
3159         (func_install_pkgaux_files): Considerably simplified now that we
3160         have only a single auxiliary directory to worry about.
3161         (subproject_aux_dir): Remove.
3162         * bootstrap.conf (libtool_readme_release_package_substitutions):
3163         No need to substitute our old unusual aux_dir location into
3164         README-release any more.
3165         * cfg.mk (_build-aux): Now that we use the standard location for
3166         this directory, no need to set this variable either.
3167         * configure.ac (AC_INIT): git-version-gen has moved.
3168         (AC_CONFIG_AUX_DIR): Adjust.
3169         * Makefile.am (stamp-mk, auxexefiles, auxfiles)
3170         (install-data-local): Use build-aux instead of config.
3171         (libltdl/stamp-mk): Ditto.
3172         * libltdl/configure.ac, tests/cdemo/configure.ac,
3173         tests/demo/configure.ac, tests/depdemo/configure.ac,
3174         tests/f77demo/configure.ac, tests/fcdemo/configure.ac,
3175         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
3176         tests/pdemo/configure.ac, tests/tagdemo/configure.ac
3177         (AC_CONFIG_AUX_DIR): Ditto.
3178         * tests/defs.m4sh (aux_dir): Ditto.
3179         * tests/configure-iface.at, tests/getopt-m4sh.at,
3180         tests/libtoolize.at, tests/subproject.at, tests/testsuite.at:
3181         Ditto.
3182         * Makefile.am (ltdl_ac_aux_dir): Extract at build-time...
3183         * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that
3184         libtoolize can access it at runtime without requiring GNU M4 via
3185         the extract-trace script.
3186         (require_Makefile_am_filter): Use it to determine whether the
3187         aux_dir declared in the current (parent) project configure is
3188         compatible with the declarations in installed ltdl autotools
3189         source files.
3190         (require_configure_ac_filter): New function to perform similar
3191         checks and rewrite configure.ac during installation if necessary.
3192         * NEWS: Updated.
3193
3194         libtoolize: aux scripts go in ltdl dir when parent has no configure.
3195         When using libtoolize to install subproject libltdl into a
3196         parent project that does not use autotools, set the default
3197         directory for auxiliary scripts inside libltdl rather than
3198         littering the parent project with files it doesn't use.
3199         * libtoolize.m4sh (func_require_ac_aux_dir): In verbose mode,
3200         report results like other require_ funcs.
3201         (func_require_aux_dir): Put subproject auxiliary files into ltdl
3202         directory where libltdl/configure will be able to find
3203         `install-sh' and others.
3204
3205         libtoolize: simplify runtime by substituting pkgauxdir.
3206         * Makefile.am (configure_edit): Substitute pkgauxdir.
3207         * libtoolize.m4sh (func_install_pkgaux_subproject)
3208         (func_install_pkgaux_parent, extract_trace): Use it.
3209
3210         libtoolize: generate require_ltdl_relative_aux_dir definition.
3211         * libtoolize.m4sh (require_ltdl_relative_macro_dir): Change to
3212         be generated function...
3213         (require_ltdl_relative_aux_dir): ...so that we can easily
3214         generate this very similar function from the same code.
3215
3216         libtoolize: rename `libltdl/m4' directory to standard `m4'.
3217         In addition to moving the autoconf macro directory into the
3218         place expected by GNU developers ($top_srcdir/m4), we also
3219         simplify libtoolize somewhat by having libltdl use whatever
3220         directory was specified by the parent project.  This is much
3221         more flexible, allows libltdl client projects to also use a
3222         single canonical `$top_srcdir/m4' macro directory, and maintains
3223         backward compatibility with existing projects that wish to
3224         continue using $ltdl_dir/m4.
3225         * libltdl/m4: Moved to it's parent directory.
3226         * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT)
3227         (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust.
3228         * configure.ac (AC_CONFIG_MACRO_DIR): Adjust.
3229         * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The
3230         libtoolize script can pick up the project macro directory from
3231         ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing
3232         to regenerate configure for the sake of a different macro
3233         directory declared in the libltdl using client project.
3234         * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove.
3235         (func_install_pkgmacro_parent): Remove.
3236         (subproject_macro_dir): Remove.
3237         (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags)
3238         (require_ltdl_am_macro_dir): New functions, generated at runtime
3239         by adding libltdl/Makefile.am to the generation loop.
3240         (func_install_pkgmacro_files): Considerably simplified now that
3241         we have only a single macro directory to worry about.
3242         (require_ltdl_relative_macro_dir): New function. Calculate the
3243         relative path from $ltdl_dir to the parent project macro_dir.
3244         (require_Makefile_am_filter): Depending on $ltdl_mode, edit
3245         Makefile.am ACLOCAL_AMFLAGS to use the parent project macro
3246         directory if necessary.
3247         (require_aclocal_m4_filter): Make sure m4_includes point to the
3248         correct macro directory by editing the file as it is copied
3249         into the parent project.
3250         (func_install_pkgltdl_files): Use the filters.
3251         (func_check_macros): Remove various advice that no longer
3252         applies with an always shared macro directory.
3253         (func_require_ltdl_dir): Don't default ltdl_dir to subproject
3254         when `--ltdl' was not given.
3255         (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is
3256         not set.
3257         (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject
3258         mode with no other directory implied by AC_CONFIG_MACRO_DIR or
3259         ACLOCAL_AMFLAGS, otherwise m4 as before.
3260         * tests/libtoolize.at: Match new "creating file `Makefile.am'"
3261         messages correctly.
3262         (subproject ltdl with non-shared directories): This test no
3263         longer makes sense, so repurposed...
3264         (subproject ltdl with non-canonical macro dir): ...this, to
3265         ensure subproject ltdl continues to automatically share the
3266         parent macro directory.
3267         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
3268         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
3269         tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
3270         tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
3271         tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location
3272         of macro_dir.
3273         * NEWS: Updated.
3274
3275         libtoolize: rename `Makefile.inc' to standard `ltdl.mk'.
3276         * libltdl/Makefile.inc: Moved from here...
3277         * libltdl/ltdl.mk: ...to here.
3278         * Makefile.am, bootstrap.conf, tests/libtoolize.at,
3279         tests/nonrecursive.at: Adjust.
3280         * libtoolize.m4sh (func_install_pkgltdl_files): Set the
3281         destination file to `Makefile.inc' if grep finds an include for
3282         that name in a top-level Makefile.am.
3283         (func_check_macros): Print a deprecation warning if use of the
3284         old `Makefile.inc' convention is found.
3285         * tests/old-ltdl-iface.at: New test for renaming and warning
3286         correctly when `Makefile.inc' convention is still in use.
3287         * NEWS: Updated.
3288
3289         libtoolize: refactor ACLOCAL_AMFLAGS extraction.
3290         Another simple refactor to simplify following changesets.
3291         * libtoolize.m4sh (require_Makefile_am, require_aclocal_amflags)
3292         (require_am_macro_dir): Generate these functions at runtime.
3293
3294         libtoolize: rename require_makefile_am to require_Makefile_am.
3295         A simple refactoring to keep the next change self-contained.
3296         * libtoolize.m4sh (require_makefile_am): Renamed from this...
3297         (require_Makefile_am): ...to this.
3298
3299         libtoolize: simplify copying of files that are edited during install.
3300         * libltdl/Makefile.inc (EXTRA_DIST): Don't list autotools files
3301         that Automake automatically adds to a (subproject)
3302         distribution...
3303         * Makefile.am (EXTRA_DIST): ...although, our layout is a bit odd
3304         because we reuse libltdl/Makefile.inc in non-recursive mode in
3305         our own tree, so we do need to add those very same files here...
3306         * libtoolize.m4sh (require_Makefile_am_filter)
3307         (require_Makefile_inc_filter): ...all of which means we no
3308         longer need to manually remove those files at libtoolize time.
3309         These two new functions are factored out of...
3310         (func_fixup_Makefile): ...this old function, now removed.
3311         (func_copy): Add support for an optional sed script as the last
3312         argument to filter the content of a file as it is copied.
3313         (func_install_pkgltdl_files): Much simplified by $require_<foo>
3314         the relevant filter scripts and passing them to func_copy.
3315
3316         libtoolize: simplify file-copying and -linking call-graph.
3317         * libtoolize.m4sh (TAR): Remove.
3318         (func_copy_some_files, func_copy_cb): Remove.
3319         (func_copy): Refactor from all of the above, and simplify. No
3320         need to use $TAR to preserve timestamps when copying, since
3321         we've been running touch right afterwards anyway. Adjust all
3322         callers to use the new argument footprint.
3323         (func_serial_update, func_keyword_update): Delete any pre-
3324         existing destination file when used with `--force' before
3325         calling func_copy, now that the hardcoded special cases are not
3326         in there any more.
3327         (func_install_pkgmacro_subproject)
3328         (func_install_pkgaux_subproject): Use our own file loop -
3329         func_copy subsumes all the checks previously in
3330         func_copy_some_files, but operates on only one file at a time.
3331         (func_install_pkgltdl_files): Similarly, handle aclocal.m4 and
3332         configure special cases here, before calling func_copy.
3333         * tests/libtoolize.at: Make sure we match corrected "copying
3334         `configure.ac'" output.
3335
3336         maint: generate full and correct ChangeLog.
3337         * gnulib: Updated to pick up gitlog-to-changelog multi-author
3338         support.
3339         * gl/build-aux/gitlog-to-changelog.diff: Use gnulib-rejected
3340         patch for '(tiny change)' support.
3341         * Makefile.am (ChangeLog): Use gitlog-to-changelog --amend=F
3342         option.
3343         * libltdl/config/git-hooks/commit-msg: New commit message hook
3344         for git.
3345         * libltdl/config/git-log-fix: New file, with ChangeLog fixes.
3346         * HACKING (Using git): Update.
3347
3348 2011-11-16  Gary V. Vaughan  <gary@gnu.org>
3349
3350         options-parser: provide a saner pluggable API.
3351         It's much too easy to forget that the functions you hook into
3352         the option parser need to return unconsumed options in the
3353         variable `func_run_hooks_result'; better to follow the
3354         convention used in the rest of bootstrap and return results in a
3355         variable named after the function with `_result' appended.
3356         * libltdl/config/options-parser (func_run_hooks): implement this
3357         new API.
3358         (Option parsing): Update the example in the header comment for
3359         this section to reflect the changes.
3360         * bootstrap (bootstrap_options_prep, bootstrap_parse_options)
3361         (bootstrap_validate_options): Adjust.
3362         * bootstrap.conf (libtool_options_prep, libtool_parse_options)
3363         (libtool_validate_options): Ditto.
3364
3365         bootstrap: display accurate usage message.
3366         After splitting bootstrap up, we also lost bootstrap's usage
3367         message, and were incorrectly displaying a partial extract-trace
3368         message.
3369         * bootstrap (usage): Set appropriately.
3370
3371         bootstrap: accept --gnulib-srcdir=/path/to/gnulib again.
3372         During the split of bootstrap into options-parser and
3373         extract-trace, the generic long-option splitting code got lost.
3374         * libltdl/config/options-parser (func_parse_options): Add the
3375         code to split any long option separated by an equals from its
3376         optarg back in.
3377         Reported by Roumen Petrov.
3378
3379 2011-11-15  Gary V. Vaughan  <gary@gnu.org>
3380
3381         gnulib: update gnulib submodule.
3382         Among others, this fixes a bug in _build-aux expansion so that
3383         `make syntax-check' works again.
3384         * gnulib: Updated to today's master HEAD revision.
3385         * gl/top/maint.mk.diff: Remove. This patch has been applied
3386         upstream already.
3387
3388         libtoolize: remove NL2SP and initialisation.
3389         There's only a single use of NL2SP, and that is redundant.
3390         * libtoolize.m4sh (func_serial_update): Factor away use of
3391         NL2SP.
3392         (NL2SP, SP2NL): Remove initialisation.
3393
3394         bootstrap: remove consumed options from the list to be processed.
3395         Fix a bug where processed bootstrap options were not removed
3396         from the queue, and eventually flagged as unknown in the
3397         pluggable option parser driver.
3398         * bootstrap (bootstrap_parse_options)
3399         (bootstrap_validate_options): Follow the pluggable option parser
3400         API correctly, and set func_run_hooks_result to the list of
3401         remaining unconsumed options.
3402         Reported by Roumen Petrov.
3403
3404 2011-11-14  Gary V. Vaughan  <gary@gnu.org>
3405
3406         libtoolize: refactor $opt_quiet, func_echo and func_echo_once.
3407         Instead of long sequences checking for setting of $opt_quiet,
3408         followed by one or more func_echo variations, add and use a new
3409         function func_whisper - the complement of func_verbose.
3410         * libtoolize.m4sh (func_whisper): New function. Adjust all
3411         callers previously using `$opt_quiet || func_echo ...'.
3412         (func_whisper_once): Ditto, for `$opt_quiet || func_echo_once
3413         ...'.
3414         (func_whisper_hdr): New function, adjust all callers previously
3415         using `func_whisper_once ...; func_whisper ...'.
3416         (func_whisper_error_header): Ditto, but calling func_error.
3417         (func_echo_once): Remove.
3418
3419         libtoolize: update a bit-rotted comment.
3420         * libtoolize (func_copy_cb): Since this comment was written, the
3421         function has been changed to timestamp files as it copies.
3422         Update the comment to reflect that.
3423
3424         general.m4sh: relative path to the same directory is `.'.
3425         * general.m4sh (func_relative_path): We sometimes want to use
3426         the result of this function directly, rather than purely as a
3427         prefix, so we need to return `.' when both directories end up at
3428         the same location.
3429
3430         ltmain.sh: append relative path trailing slashes explicitly.
3431         In addition to being more idiomatic, and hence minimising
3432         suprises, seeing the slash written explicity when appending to
3433         the result of a relative path calculation is a lot more
3434         readable.
3435         * libltdl/config/general.m4sh (func_relative_path): Don't append
3436         an implicit trailing slash...
3437         * libltdl/config/ltmain.m4sh (func_mode_link): ...write it
3438         explicitly at the time of use.
3439
3440 2011-11-09  Gary V. Vaughan  <gary@gnu.org>
3441
3442         build: use pkgauxdir for local install and uninstall rules.
3443         * Makefile.am (pkgauxdir): Set it correctly.
3444         (uninstall-hook): Use it for pkgaux_scripts and
3445         pkgaux_data_files.
3446         (install-data-local): Ditto.
3447         Remove `config/' prefix from extract-trace and option-parser
3448         items.
3449
3450 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
3451
3452         install: correct a typo in pkgaux_files location.
3453         * Makefile.am (install-data-local): Install pkgaux_files
3454         directly from $(aux_dir) [./libltdl/config at the moment].
3455
3456         libtoolize: order pkgltdl_files to avoid reconfiguration.
3457         * Makefile.am (pkgltdl_files): aclocal.m4 depends on
3458         configure.ac, and will cause spurious reconfiguration of freshly
3459         `libtoolize --ltdl' tree if we don't ensure configure.ac is the
3460         older of these two files.
3461         * tests/libtoolize.at: Adjust expout order to match.
3462
3463         build: remove an over-exuberant $(srcdir) prefix.
3464         * Makefile.am (git_version_gen): No need for an extra $(srcdir)
3465         in the path when we always use after `cd $(srcdir).
3466
3467         libtoolize: massage installed auxiliary script list at make time.
3468         * Makefile.am (configure_edit): Rename pkgconfig_files
3469         substitution to pkgaux_files, and add pkgaux_install_files and
3470         pkgaux_parent_files substitutions for atlocal.
3471         (pkgauxdir): Where to install pkgaux_files.
3472         (auxfiles): Removed, and replaced by...
3473         (pkgaux_parent_files, pkgaux_install_files, pkgaux_data_files):
3474         ...these, which separate the files lists more logically for
3475         easier installation, and use by libtoolize.m4sh.
3476         (uninstall-hook): Adjust.
3477         (tests/atlocal): Adjust.
3478         * bootstrap.conf (libtool_link_libltdl_subdirs): Adjust.
3479         * libtoolize.m4sh (func_install_pkgconfig_files)
3480         (func_install_pkgconfig_subproject)
3481         (func_install_pkgconfig_parent, func_install_pkgconfig_files)
3482         (all_pkgconfig_files): Renamed to...
3483         (func_install_pkgaux_files, unc_install_pkgaux_subproject)
3484         (func_install_pkgaux_parent, func_install_pkgaux_files)
3485         (all_pkgaux_files): ...these, resp. Adjust all callers.
3486         (func_massage_pkgconfig_files): Removed.
3487         (pkgaux_files): List of all auxiliary scripts substituted from
3488         Makefile.
3489
3490         libtoolize: massage installed libltdl file list at make time.
3491         * libtoolize.m4sh (pkgltdldir, pkgdatadir): Put installable
3492         libltdl files in pkgdatadir. When testing, and _lt_pkgdatadir
3493         is set, adjust to look in libltdl subdirectory.
3494         (func_massage_pkgltdl_files): Removed function and only caller,
3495         because...
3496         (pkgltdl_files): ...we substitute the pre-massaged files
3497         directly...
3498         (func_install_pkgltdl_files): ...from here.
3499         Adjust installation of specially handled additional files.
3500         * Makefile.am (ltdldir): Location of libltdl files in source
3501         tree.
3502         (ltdldest, ltdldatafiles): Removed.
3503         (pkgltdl_files): New pre-massaged list of libltdl sources.
3504         (install-data-local, uninstall-hook): Use it.
3505         * tests/libtoolize.at: Reorder expected output to match actual
3506         libtoolize output.
3507
3508         libtoolize: massage installed macro list at make time.
3509         * libtoolize.m4sh (func_massage_aclocal_DATA): Removed function
3510         and only caller, because...
3511         (pkgmacro_files): ...we substitute the pre-massaged files
3512         directly...
3513         (func_install_pkgmacro_files): ...from here.
3514         * Makefile.am (pkgmacro_files): New pre-massaged list of aclocal
3515         macros used by func_install_pkgmacro_files.
3516         (configure_edit): Substitute pkgmacro_files instead of
3517         aclocalfiles.
3518
3519         libtoolize: use only space delimited file lists.
3520         We don't install any files with whitespace in their file name,
3521         so using colon delimited lists to make that possible was a
3522         premature optimisation and an unneeded complication.
3523         * libtoolize.m4sh (func_copy_some_files): Remove IFS twiddling,
3524         and just pull space delimited files in a for loop idiomatically.
3525         (func_massage_aclocal_DATA, func_install_pkgmacro_subproject)
3526         (func_install_pkgmacro_parent, func_install_pkgmacro_files)
3527         (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
3528         Append to file lists with space delimiter.
3529
3530         libtoolize: remove sed based configure scanning.
3531         * libtoolize (func_scan_files): Removed function and callers.
3532         (require_seen_ltdl, require_seen_libtool): Factor out remaining
3533         functionality of former sed based scanning.
3534         (func_check_macros): Adjust.
3535         * NEWS: Updated.
3536
3537         libtoolize: refactor ltdl_mode discovery.
3538         * libtoolize.m4sh (require_ac_ltdl_mode)
3539         (require_ac_ltdl_options, require_ltdl_mode): New functions
3540         factored out of func_scan_files for scanning and setting
3541         ltdl_mode and friends.
3542         (func_scan_files): Remove the factored out code.
3543         (func_install_pkgmacro_files, func_install_pkgltdl_files)
3544         (func_install_pkgconfig_files, func_check_macros): Adjust.
3545
3546         libtoolize: refactor ltdl_dir discovery.
3547         * libtoolize.m4sh (require_ac_ltdl_dir, require_ltdl_dir):
3548         New functions factored out of func_scan_files for scanning and
3549         setting ac_ltdl_dir and ltdl_dir resp.
3550         (func_scan_files): Remove the factored out code.
3551         (func_fixup_Makefile, func_serial_update_check)
3552         (func_install_pkgltdl_files, func_install_pkgconfig_subproject)
3553         (func_check_macros): Adjust.
3554
3555         libtoolize: refactor aux_dir discovery.
3556         * libtoolize.m4sh (require_ac_aux_dir, require_aux_dir): New
3557         functions factored out of func_scan_files for scanning and
3558         setting aux_dir and friends.
3559         (func_scan_files): Remove the factored out code to scan
3560         configure.ac with sed, and then set macro_dir appropriately.
3561         (func_install_pkgconfig_subproject, func_install_pkgconfig_parent)
3562         (func_install_pkgmacro_files, func_check_macros): Adjust.
3563
3564         libtoolize: install autoconf macros only if there is a $configure_ac.
3565         * libtoolize.m4sh (func_install_pkgmacro_files): If there is no
3566         $configure_ac in the parent project directory, and libtoolize is
3567         in subproject mode, then the parent project has no use for
3568         autoconf macros, so don't install them.
3569         * NEWS: Updated.
3570
3571         libtoolize: display aux files output header for non-autoconf parents.
3572         * libtoolize.m4sh (func_install_pkgconfig_subproject): When the
3573         parent project does not use Autoconf, be sure to display an
3574         output header before copying auxiliary files despite not being
3575         able to scan for AC_CONFIG_AUX_DIR arguments.
3576         * NEWS: Updated.
3577
3578         libtoolize: refactor macro_dir discovery around extract-trace script.
3579         * libtoolize.m4sh (func_extract_trace): Function to call
3580         $aux_dir/extract-trace.  The name and footprint are the same as
3581         the core function in the extract-trace script file so that we
3582         can choose to source that file when the option processing
3583         becomes compatible with ours.
3584         (require_ac_macro_dir, require_aclocal_amflags)
3585         (require_am_macro_dir, require_macro_dir, require_makefile_am):
3586         New functions factored out of func_scan_files for scanning and
3587         setting macro_dir and friends.
3588         (func_scan_files): Remove the factored out code to scan
3589         configure.ac with sed, and then set macro_dir appropriately.
3590         (func_serial_update_check, func_install_pkgmacro_subproject)
3591         (func_install_pkgmacro_parent, func_install_pkgmacro_files)
3592         (func_check_macros): Adjust.
3593         * tests/libtoolize.at (Subproject ltdl without GNU M4): New test
3594         to ensure `libtoolize --subproject' continues to work without a
3595         GNU M4 dependency.
3596         * NEWS: Updated.
3597
3598         libtoolize: refactor configure_ac discovery.
3599         Make a start on decomposing some of the giant functions at the
3600         heart of libtoolize into the much more flexible and manageable
3601         (albeit somewhat more verbose) model of self-organising
3602         $require_<foo> function pointers.
3603         * libtoolize.m4sh (require_configure_ac): New function factored
3604         out of func_scan_files for setting $configure_ac appropriately,
3605         implementation taken from extract-trace script.
3606         (func_autoconf_configure): And similarly for ensuring that a
3607         filename which matches something Autoconf would read also has
3608         content that appears to be destined for Autoconf processing.
3609         (func_scan_files): Simplified the factored out code to a single
3610         require_configure_ac call.
3611         (func_install_pkgconfig_files, func_check_macros): Ditto.
3612         (seen_autoconf): Removed.
3613
3614         bootstrap: split into reusable parts.
3615         * bootstrap: Bourne shell has no scoping, so be extremely
3616         careful with namespaces, functions in `^func_' and `^require_';
3617         private variables in `^_G_', and public variables all well
3618         documented by comments.
3619         * libltdl/config/extract-trace: New file, containing the minimum
3620         of code previously in bootstrap plus a little glue to make the
3621         GNU M4 based autotools tracing function (as opposed to the
3622         kludgy sed extraction currently used everywhere else) a
3623         standalone script that can be executed or sourced.
3624         * libltdl/config/options-parser: New file, containing the
3625         pluggable options parser code shared between the other two.
3626         * bootstrap.conf: Adjust.
3627         * Makefile.am (EXTRA_DIST): Be sure to distribute the new
3628         extract-trace and options-parser scripts.
3629         (install-data-local): And install them where libtoolize can find
3630         them.
3631
3632         tests: prefix absolute directory variables with 'abs_'.
3633         Avoid any possible confusion about the contests of thes
3634         variables compared to $aux_dir, $macro_dir and $src_dir in
3635         configure.ac, Makefile.am, libtoolize.m4sh and others.
3636         * tests/defs.m4sh (aux_dir, macro_dir, srcdir): Rename these...
3637         (abs_aux_dir, abs_macro_dir, abs_srcdir): ...to these resp.
3638         * tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
3639         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
3640         tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
3641         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
3642         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
3643         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
3644         tests/demo-pic-exec.test, tests/demo-pic-make.test,
3645         tests/demo-shared-exec.test, tests/demo-shared-inst.test,
3646         tests/demo-shared-make.test, tests/demo-shared-unst.test,
3647         tests/demo-static-exec.test, tests/demo-static-inst.test,
3648         tests/demo-static-make.test, tests/demo-static-unst.test,
3649         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
3650         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
3651         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
3652         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
3653         tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
3654         tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
3655         tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
3656         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
3657         tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
3658         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
3659         tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
3660         tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
3661         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
3662         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
3663         tests/sh.test, tests/tagdemo-shared-exec.test,
3664         tests/tagdemo-shared-make.test, tests/tagdemo-static-exec.test,
3665         tests/tagdemo-static-make.test, tests/tagdemo-undef-exec.test,
3666         tests/tagdemo-undef-make.test, tests/tagtrace.test: Adjust.
3667
3668         maint: calculate required mkinstalldirs calls during `make install'.
3669         * Makefile.am (install-data-local): Make sure all destination
3670         directories are in place before copying files there, without
3671         hardcoding them.
3672
3673         maint: substitute static directory names.
3674         By substituting just the directory name as passed to the macro,
3675         aux_dir can be used with or without $srcdir prefix, which is
3676         more flexible, and always means the same thing in each file,
3677         rather than sometimes being a directory name, sometimes relative
3678         to $top_srcdir.
3679         * configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR)
3680         (LT_CONFIG_LTDL_DIR): Don't force config.status substitutions
3681         with unexpanded shell variables.
3682         * Makefile.am, tests/defs.m4sh: Adjust.
3683
3684 2011-11-07  Peter Rosin  <peda@lysator.liu.se>
3685
3686         libtoolize: fix spelling nit.
3687         * libtoolize (M4SH_GETOPTS): Fix spelling nit.
3688
3689 2011-11-07  Gary V. Vaughan  <gary@gnu.org>
3690
3691         tests: fix parsing of configure output by pic_flag.at.
3692         Close http://debbugs.gnu.org/9962.
3693         * tests/pic_flag.at (LT_AT_CONFIGURE): Make sure to configure
3694         with --disable-silent-rules so that the full output parsed by
3695         the rest of the test is available.
3696         Reported by Roumen Petrov.
3697
3698         libtoolize: rename `--subproject' option, and make it work.
3699         * libtoolize (M4SH_GETOPTS): Remove `--standalone', which never
3700         worked, and add `--subproject' which sets ltdl_mode correctly.
3701
3702 2011-11-05  Gary V. Vaughan  <gary@gnu.org>
3703
3704         libtoolize: fix a scoping bug in func_aclocal_update_check.
3705         libtoolize.m4sh (func_aclocal_update_check): This body of this
3706         function used a global variable set by the outer loop of the
3707         caller. Fix to Use the function argument correctly.
3708
3709         maint: rename the debug shell command variable to `debug_cmd'.
3710         Not only does it make more sense, it also matches bootstrap and
3711         others.
3712         * libtoolize.m4sh, libltdl/config/ltmain.m4sh,
3713         libltdl/config/getopt.m4sh, tests/defs.m4sh (opt_debug): Rename
3714         to debug_cmd.
3715
3716         maint: dynamically strip unused scripts from libltdl Makefile.
3717         * configure.ac (pkgaux_scripts): Centrally maintain the complete
3718         list of aux scripts required to build libltdl, and which need to
3719         be installed by libtoolize --ltdl, and consequently need to be
3720         placed in $pkgdatadir by make install.
3721         * Makefile.am (libltdl/stamp.mk): Improved to strip the unused
3722         scripts not listed in pkgaux_scripts without the need for manual
3723         synchronisation.
3724         (auxexefiles): Removed. Replaced by new pkgaux_scripts
3725         substitution.
3726         (install-data-local): Adjust.
3727
3728         build: substitute paths into defs.m4sh instead of recalculating.
3729         * Makefile.am (configure_edit): Add substitutions for aux_dir,
3730         macro_dir and srcdir.
3731         * tests/defs.m4sh: Don't recalculate srcdir.
3732         (aux_dir, macro_dir, srcdir): Convert to absolute paths.
3733
3734         build: support AM_SILENT_RULES
3735         * configure.ac: Add AM_SILENT_RULES.
3736         * libltdl/configure.ac: Ditto, but only if defined.
3737         * Makefile.am (.version, ChangeLog, README, doc/notes.txt)
3738         (libtool, libtoolize, libtoolize.in, libltdl/Makefile.am)
3739         (libltdl/stamp-mk, m4/ltversion.m4, tests/atconfig, tests/defs)
3740         (tests/defs.in, tests/package.m4): Output an AM_SILENT_RULES-like
3741         GEN when V==0.
3742         * libltdl/Makfile.inc (libltdl/argz.h): Ditto.
3743
3744 2011-10-31  Gary V. Vaughan  <gary@gnu.org>
3745
3746         maint: add autobuild prerequisite only if autobuild.m4 is absent.
3747         * bootstrap (func_require_autobuild_buildreq): Skip if autobuild.m4
3748         is already present.
3749         * bootstrap.conf (require_autobuild_bulidreq): No need to set this
3750         specially any more.
3751
3752         maint: ensure bootstrap runs from dist tarball.
3753         * bootstrap (func_gnulib_tool_copy_file): When gnulib-tool is
3754         not available, check that there is a copy of the file from a
3755         previous run available before bailing out with a diagnostic.
3756         (func_install_gnulib_non_module_files): Don't diagnose missing
3757         files explicitly - func_gnulib_tool_copy_file takes care of it
3758         now.
3759         (func_require_checkout_only_file): In the diagnostic for
3760         not being in a source-controlled tree, note that `--force' must
3761         be used to rebootstrap.
3762         (func_require_gnulib_files_already_present): Removed.  All the
3763         necessary checks are correctly performed in
3764         func_gnulib_tool_copy_file withot resorting to heuristics.
3765         (func_require_gnulib_mk): Don't continue to try to access
3766         gnulib-cache.m4 after discovering we're running from a dist
3767         tarball.
3768         (func_require_dotgitmodules_parameters): Skip if .gitmodules
3769         file is missing and git binary is not available.
3770         * bootstrap.conf (checkout_only_file): Set to HACKING, which is
3771         a non-distributed file.
3772         (libtool_cleanup_empty_dirs): Don't print spurious errors when
3773         trying to delete gnulib-tool droppings, in case gnulib-tool is
3774         not available on this run.
3775
3776         tests: add a keyword `expensive' to very long running tests.
3777         * tests/cmdline_wrap.at, tests/stresstest.at (AT_KEYWORDS): Add
3778         `expensive'.
3779         * NEWS: Updated.
3780
3781         libtoolize: fix some long-standing sed substitution bugs
3782         * libtoolize.m4sh (func_fixup_Makefile): `\\\\\$' in a " quoted
3783         script that is evaluated twice before execution becomes a `\$',
3784         which sed interprets as a literal $.  The script will then delete
3785         any lines with a first non-whitespace character of `$'. Instead
3786         use `\\\\$' in single quotes, which sed eventually receives as
3787         `\\$' and correctly interprets as part of an instruction to
3788         delete otherwise empty lines ending with a `\'.
3789         Additionally the rest of the same sed script is no longer
3790         applied to comment lines to avoid munging the copyright header
3791         among others.
3792         * NEWS: Updated.
3793
3794 2011-10-27  Gary V. Vaughan  <gary@gnu.org>
3795
3796         maint: use gnulib's gitlog-to-changelog instead of a ChangeLog file.
3797         * ChangeLog: Removed.
3798         * HACKING (Editing 'ChangeLog'): Removed. Renumbered other sections to
3799         compensate.
3800         * bootstrap.conf (gnulib_modules): Add gitlog-to-changelog.
3801         * Makefile.am (ChangeLog): Generate the ChangeLog for 2011...
3802         (dist-hook): ...from the output of `git log' before rolling a
3803         distribution tarball.
3804
3805         maint: use gnulib's git-version-gen instead of mkstamp.
3806         * libltdl/config/mkstamp: File removed.
3807         * bootstrap.conf (gnulib_modules): Add git-version-gen.
3808         * configure.ac (AC_INIT, package_revision): Use git-version-gen to
3809         calculate version number.
3810         (TIMESTAMP): Removed.
3811         * libtoolize.m4sh, libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
3812         (TIMESTAMP): Ditto.
3813         * Makefile.am (TIMESTAMP): Ditto.
3814         (MKSTAMP): Renamed from this...
3815         (git_version_gen): ...to this. Set revision here.  An alpha is now a
3816         release with an odd micro relase number.
3817         (rebuild): Don't reset revision here.
3818         (build_scripts): Remove mkstamp, add git-version-gen.
3819         (EXTRA_DIST, BUILT_SOURCES): Add .version.
3820         (libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4, tests/package.m4):
3821         Don't depend on configure.ac or ChangeLog to determine when the
3822         version number has reved, use .version directly.
3823         (.version): Flush most recent configure calculated VERSION to disk.
3824         (dist-hook): Flush current VERSION to disk at dist time.
3825         (dotserial): Distributed file to cache the serial number for
3826         when git is not available to recalculate it when building from a
3827         release tarball.
3828         (dist-hook): Make sure .serial is created.
3829         (libltdl/config/ltversion.m4): Use .serial when it is present
3830         (in a dist tarball) or calculate with git otherwise (in a git
3831         working directory).
3832         (EXTRA_DIST): Add .serial file.
3833
3834         maint: use gnulib's maint.mk and support scripts release procedure.
3835         * Makefile.maint: Removed.
3836         * configure.ac (LASTRELEASE, lt_major, lt_minor, lt_micro, lt_alpha):
3837         All removed. Makefile.maint was the only client.
3838         * HACKING (Release Procedure): Removed.
3839         * bootstrap.conf (gnulib_modules): Add announce-gen,
3840         do-release-commit-and-tag, gendocs, gnu-web-doc-update, gnupload and
3841         readme-release.
3842         * cfg.mk (manual_title): Set it for web-manual rule.
3843         (announcement_Cc_): Release announcement email addresses.
3844         * Makefile.am (build_scripts): Add to EXTRA_DIST additional files
3845         imported from gnulib for maint.mk release procedure.
3846         * NEWS: Updated.
3847
3848 2011-10-24  Gary V. Vaughan  <gary@gnu.org>
3849
3850         tests: ensure VPATH autom4te search path can find autotests.
3851         * Makefile.am (tests/testsuite): Passing only $(srcdir) include path
3852         to autom4te is unable to find tests/package.m4, and passing only
3853         $(srcdir)/tests breaks VPATH build searches for TESTSUITE_AT files,
3854         which are relative to $(srcdir)... so we pass both!
3855         * NEWS: Updated.
3856         Reported by Bob Friesenhahn.
3857
3858 2011-10-24  Karl Berry  <karl@gnu.org>
3859
3860         doc: modernize libtool.texi.
3861         * libtool.texi (@copying): Use this instead of @ifnottex; format for
3862         Texinfo; eliminate obsolete paragraph about TeX; use @insertcopying
3863         instead of duplicating text.
3864         (@syncodeindex): Move all to the Texinfo header, where they belong.
3865         (@dircategory): Use "Software development" instead of "GNU programming
3866         tools", for consistency; and align individual entries to avoid
3867         multiple lines; and move to after the copyright message.
3868
3869 2011-10-24  Gary V. Vaughan  <gary@gnu.org>
3870
3871         maint: don't make autobuild a hard bootstrap requirement.
3872         * bootstrap.conf (require_autobuild_buildreq): Reset this to ':' so
3873         that bootstrap doesn't auto-add autobuild to $buildreq.
3874
3875 2011-10-23  Gary V. Vaughan  <gary@gnu.org>
3876
3877         maint: use gnulib's maintainer-makefile module.
3878         * bootstrap.conf (gnulib_modules): Add maintainer-makefile.
3879         (gnulib_tool_options): Add --avoid=dummy now that we have a real
3880         module to import.
3881         * cfg.mk: New file. Customize maint.mk for Libtool.
3882         * Makefile.am (EXTRA_DIST): Add GNUmakefile, cfg.mk and maint.mk.
3883
3884         maint: use gnulib's canonical fdl.texi.
3885         * doc/fdl.texi: Removed.
3886         * bootstrap.conf (gnulib_non_module_files): Add fdl.texi.
3887
3888         maint: use gnulib's canonical COPYING files.
3889         * COPYING, libltdl/COPYING.LIB: Removed.
3890         * bootstrap.conf (gnulib_non_module_files): Add COPYING.
3891         (libtool_add_libltdl_copying): New func_gnulib_tool hook
3892         function to copy the canonical LGPL2 COPYING file from gnulib at
3893         bootstrap.
3894
3895         maint: use gnulib's (pending saner) bootstrap script.
3896         * bootstrap: Replaced with gnulib script.
3897         * bootstrap.conf: New file with Libtool specific bootstrap
3898         configuration.
3899         * Makefile.am (EXTRA_DIST): Add bootstrap.conf.
3900
3901         maint: add gnulib submodule.
3902         * configure.ac (GL_INIT, GL_EARLY): Initialise gnulib, and expand
3903         its configure time checks.
3904         * .gitmodules (gnulib): New file with configuration for our
3905         gnulib git submodule.
3906
3907 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
3908
3909         maint: tidy, sort and consolidate .gitignore files.
3910         The `gnulib-tool' and gnulib `bootstrap' scripts  maintain
3911         `.gitignore' files in asciibetical order, so reorder them now
3912         to avoid spurious patches later.
3913
3914         Take advantage of putting recursive file ignore matches into
3915         `$top_srcdir/.gitignore' and remove repetitions from other
3916         `.gitignore' files.
3917
3918 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
3919
3920         maint: don't run help2man on programs not-yet-built.
3921         * Makefile.am (doc/libtool.1, doc/libtoolize.1): Added a
3922         comment about why the dependencies here have to be a mite
3923         bizarre.
3924
3925         tests: remove unused `aux_dir' variable from `getopt-m4sh.test'.
3926         * tests/getopt-m4sh.at (aux_dir): Remove unused variable.
3927
3928         tests: DRYing out `tests/sh.test'.
3929         * Makefile.am (libtool_m4): Canonical location of libtool.m4 file.
3930         (lt_aclocal_m4_deps): Use it.
3931
3932         maint: pass directory declarations in configure.ac into Makefile.
3933         * configure.ac (AC_CONFIG_AUX_DIR, LT_CONFIG_LTDL_DIR)
3934         (AC_CONFIG_MACRO_DIR): Append code to these functions to
3935         capture and propagate their directory arguments to Makefile.
3936         * Makefile.am (aux_dir, ltdl_dir, macro_dir): Remove declarations.
3937         * bootstrap (my_sed_trace): Also capture LT_CONFIG_LTDL_DIR into
3938         `$ltdl_dir'.
3939         <Makefile>: Output the extracted values of `aux_dir', `ltdl_dir'
3940         and `macro_dir' at the top of the quick'n'dirty bootstrap
3941         Makefile.
3942
3943         maint: factor out ltmain.sh variable deletion.
3944         * Makefile.am (ltmain_sh_edit): Expand upon bootstrap edit by
3945         adding the extra line to delete boilerplate variable settings
3946         from libltdl/config/general.m4sh that don't apply here.
3947         (libltdl/config/ltmain.sh): Use it.
3948
3949         maint: DRYing out `Makefile.am' file paths.
3950         * Makefile.am (aux_dir, macro_dir): Include `$(srcdir)' in
3951         declaration. Adjust all references.
3952         (doc_dir, ltdl_dir, m4sh_dir, tests_dir): New single location
3953         to hold directory paths, all including `$(srcdir)', to reduce
3954         typing.
3955         (LT_M4SH): Use `$m4sh_dir' as include directory.
3956         (defs): This one is for a file in the build-tree, so no
3957         leading `$(srcdir)'.
3958
3959         CLEANUP: fix error from pushing too far up the branch.
3960         * Makefile.am (install-data-local): Undo character transposition
3961         from too early push of untested v2.4-17-gaf74d58.
3962         * ChangeLog (2010-09-16): Remove spurious entry.
3963
3964         maint: use macro_dir consistently in all files.
3965         * Makefile.am: Replace all uses of m4dir with macrodir to
3966         match AC_CONFIG_MACRO_DIR.
3967         * libltdl/config/libtoolize.m4sh: Replace all uses of macrodir
3968         with macro_dir.
3969         * tests/defs.m4sh, tests/sh.test: Likewise.
3970
3971         maint: use aux_dir consistently in all files.
3972         * Makefile.am, Makefile.maint: Replace all uses of auxdir
3973         with aux_dir to match AC_CONFIG_AUX_DIR.
3974         * libltdl/config/libtoolize.m4sh: Likewise.
3975         * tests/defs.m4sh, tests/getopt-m4sh.at: Likewise.
3976
3977         Makefile: try to be robust against shell meta-chars in filenames.
3978         * Makefile.am: In each rule body, unless a make variable needs
3979         to be seen as multiple words by the shell (for word-splitting
3980         loops, or because it contains several commands), quote it. Use
3981         single quotes unless the shell needs to perform variable inter-
3982         polation, in which case use double quotes.
3983
3984 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
3985
3986         maint: let make employ user's `SED' setting.
3987         * Makefile.am: Replace hard-coded `sed' with `$(SED)' through-
3988         out.
3989
3990         maint: simplify and improve safety of bootstrap process.
3991         * Makefile.am (bootstrap_files): List files that need to be
3992         generated at bootstrap time before `./configure && make' can
3993         work.  It turns out that this is considerably fewer files than we
3994         had thought necessary previously.
3995         (bootstrap-deps-prep): Ensure minimum set of required substitution
3996         variables are non-empty.
3997         (bootstrap-deps): Depend on `bootstrap' files.
3998         * bootstrap (Generate bootstrap dependencies): Now that
3999         `Makefile.am' is entirely responsible for rebuilding files at
4000         bootstrap time, we need only specify the new `bootstrap-deps'
4001         target, and supply values for the substitutions checked by
4002         `bootstrap-deps-prep'.
4003         * configure.ac (AC_CONFIG_SRCDIR): `libtoolize.in' is not here yet
4004         right after running `bootstrap'.  So rely on the presence of
4005         `libltdl/config/libtoolize.m4sh', which is always there.
4006
4007         build: eliminate superfluous temporary files from `Makefile.am'.
4008         * Makefile.am (CLEANFILES): Remove temporary file entries.
4009         (libtoolize.in, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
4010         (tests/defs, tests/testsuite): Factor away temporary files.
4011
4012         build: eliminate `ltmain.in' and `libtoolize.in' intermediate files.
4013         * Makefile.am (libltdl/config/ltmain.sh, libtoolize.in): Pipe
4014         the output of `$(LT_M4SH)' directly into `$(bootstrap_edit)' to
4015         avoid use of superfluous intermediate file.
4016
4017         build: don't hardcode repeated long paths in Makefile rules.
4018         According to the DRY principle, scattering several copies of
4019         something across a file or project leads to pain.  Let's not
4020         do that!
4021         * Makefile.am (Makefile_in, Makefile_inc, defs_in, defs_m4sh),
4022         (libtoolize_in, ltmain_m4sh, ltversion_in): New variables to
4023         hold the location of important files and targets.
4024         (EXTRA_DIST): Add the distributed ones by variable.
4025         (libtoolize, libltdl/Makefile.am, libltdl/m4/ltversion.m4)
4026         (libltdl/config/ltmain.sh, libltdl/stamp-mk, tests/defs)
4027         (tests/defs.in): Use the new variables to reduce noise and
4028         repetition.
4029
4030         build: make better use of automatic variables in `Makefile.am'.
4031         * Makefile.am (libtoolize, libtoolize.in, libltdl/Makefile.am)
4032         (libltdl/config/mkstamp, libltdl/config/ltmain.m4sh)
4033         (libltdl/m4/ltversion.m4, tests/testsuite, tests/defs.in):
4034         Make better use of automatic variables.
4035
4036         build: name temporary files in `Makefile.am' consistently.
4037         Sadly, we still have to jump through hoops for MICROS~1's very
4038         old, very broken 8.3 naming convention, so we have to be careful
4039         to be unique in the first 8 letters, and not to use two periods
4040         in a filename, otherwise we could use the much more elegent
4041         `temporary files use "$@T"' idiom:
4042         * Makefile.am (libltdl/m4/ltversion.m4): Rename temporary file
4043         to `ltversion.tmp'.
4044         (libltdl/config/ltmain.sh): Rename temporary file to
4045         `libltdl/config/ltmain.tmp'.
4046         (libtoolize): Rename temporary file to `libtoolize.tmp'.
4047         (tests/defs): Rename temporary file to `tests/defs.tmp'
4048         (tests/testsuite): Rename temporary file to `tests/testsuite.tmp'.
4049         (CLEANFILES): Append temporary files as we create rules that
4050         use them.
4051
4052         build: factor Makefile.am `m4sh' invocations to LT_M4SH.
4053         * Makefile.am (LT_M4SH): Now that all directories are listed as
4054         fully qualified paths, the search path argument to M4SH is always
4055         the same, so factor it out into a variable.  Adjust all callers.
4056
4057         build: avoid unnecessary directory changes in Makefile rules.
4058         * Makefile.am (doc/notes.txt, libltdl/m4/ltversion.m4,
4059         (libltdl/config/ltmain.m4sh, libtoolize.in, libltdl/Makefile.am)
4060         (libltdl/config/mkstamp, tests/testsuite, tests/defs.in): Avoid
4061         unnecessary `cd' commands by using fully qualified paths to files
4062         outside of current directory.
4063
4064         build: compare `revision' rather than `correctver' in Makefile.am.
4065         * Makefile.am (rebuild): Set the shell variable `revision' rather
4066         than `correctver' for clarity of purpose.
4067         (bootstrap_edit, libltdl/config/ltmain.sh): Adjust.
4068         (libltdl/m4/ltversion.m4): Likewise, and alse, instead of munging
4069         the serial number comment line with set, extract `macro_version'
4070         from this file, and compare it directly with `revision'.
4071         (libtool): Likewise for `package_revision'.
4072
4073         build: avoid spurious bootstrap_edit call.
4074         * Makefile.am (tests/package.m4): @FOO@ substitutions have already
4075         been made by the time Makefile.am has been transformed into Makefile,
4076         so don't try to rerun the substitutions manually with
4077         $(bootstrap_edit) after the fact.
4078
4079 2011-10-18  Gary V. Vaughan  <gary@gnu.org>
4080
4081         Post-release administrivia.
4082         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4083         numbers.
4084         * NEWS: Add header line for next release.
4085
4086         Release 2.4.2.
4087         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4088         numbers.
4089         * NEWS: Update version number.
4090
4091 2011-10-17  Gary V. Vaughan  <gary@gnu.org>
4092
4093         Replace leading spaces with tabs.
4094         * libltdl/m4/libtool.m4, libltdl/config/ltmain.m4sh: Replace leading
4095         spaces in source code with tabs to match surrounding code.
4096         Reported by Peter Rosin.
4097
4098         Make a note to use gnu/linux for version_type.
4099         * libltdl/m4/libtool.m4 (version_type): Add a comment to change
4100         version_type setting from 'linux' to 'gnu/linux' during the next
4101         destabilising code refactoring.
4102         * libltdl/config/ltmain.m4sh: ditto.
4103         Requested by Richard Stallman.
4104
4105 2011-10-04  Bart Van Assche  <bvanassche@acm.org>
4106
4107         Typo fix - change func_apped into func_append
4108         * libltdl/config/ltmain.m4sh: Fix typo.
4109
4110 2011-10-02  Xin LI  <d@delphij.net>
4111
4112         Avoid problems when FreeBSD goes to version 10.
4113         * libltdl/m4/libtool.m4: Remove mentions of freebsd1. Use dots
4114         for FreeBSD 2 and 3 detection to avoid future problems
4115         * libltdl/m4/ltmain.m4sh: ditto.
4116
4117 2011-09-25  Cristophe Jarry  <christophe.jarry@ouvaton.org>
4118
4119         Avoid mentioning "Linux", use "GNU/Linux", if appropriate.
4120         * TODO: Don't use bare "Linux".
4121         * doc/libtool.texi: ditto.
4122         * doc/notes.texi: ditto.
4123         * libltdl/README: ditto.
4124         * libltdl/m4/libtool.m4: ditto.
4125
4126 2011-09-02  Peter O'Gorman  <peter@pogma.com>
4127
4128         Add flag to inhibit warnings.
4129         * libltdl/config/ltmain.m4sh: Add --no-warn, --no-warning flags.
4130         Reported by John David Anglin.
4131
4132 2011-04-10  Kurt Roeckx  <kurt@roeckx.be>
4133
4134         tagdemo: do not rely on picking up symbols from indirect deps.
4135         * tests/tagdemo/Makefile.am: Link to all libraries that the
4136         demo application uses.
4137
4138 2011-04-10  Svante Signell  <srs@kth.se>  (tiny change)
4139
4140         Set shlibpath_overrides_runpath for the Hurd.
4141         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [gnu]
4142         <shlibpath_overrides_runpath>: Set to no.
4143         * THANKS: Update.
4144
4145 2011-03-22  Justin Lecher  <jlec@gentoo.org>  (tiny change)
4146             Rhys Ulerich  <rhys.ulerich@gmail.com>
4147
4148         Don't filter OPENMP flags (-openmp & -fopenmp) from linker lines.
4149         If -fopenmp if passed to gcc during linking, it will take care to
4150         add all necessary libs to link correctly for openmp support.
4151         Currently libtool filters those flags, similar as it was the
4152         case with the threading flags. This change handles the situation
4153         for the openmp support similar as before the thread support
4154         was fixed.
4155           http://lists.gnu.org/archive/html/bug-libtool/2010-12/msg00009.html
4156           http://lists.gnu.org/archive/html/bug-libtool/2011-03/msg00014.html
4157         * libltdl/config/ltmain.m4sh (func_mode_link): Treat OpenMP
4158         flags like pthreads flags.
4159
4160 2011-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4161
4162         libtoolize: detect -I<dir> (without space) in ACLOCAL_AMFLAGS.
4163         * libtoolize.m4sh (func_scan_files): Also accept -I<dir>
4164         (without intervening space) in ACLOCAL_AMFLAGS.
4165         * THANKS: Update.
4166         Report from Jan Engelhardt.
4167
4168 2011-03-05  Peter O'Gorman  <peter@pogma.com>
4169
4170         On Mac OS X try .dylib as well as .so with lt_dlopenext
4171         * libltdl/m4/ltdl.m4: Define extra extension if module extension
4172         differs from shared lib extension.
4173         * libltdl/ltdl.c: Use it.
4174         * tests/darwin.at: Test it.
4175         * NEWS: Announce it.
4176         Reported by Hans Aberg, Michael Ellis, and others.
4177
4178 2011-02-14  Peter O'Gorman  <peter@pogma.com>
4179
4180         Install ltmain.sh without execute bit set.
4181         * Makefile.am: change install rule for ltmain.sh
4182         Reported by Křištof Želechovski.
4183
4184 2011-02-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4185
4186         docs: fix copyright years in PDF version of the manual.
4187         * doc/libtool.texi: Fix copyright years.
4188
4189 2011-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4190
4191         fix typo in ChangeLog
4192
4193 2011-02-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4194
4195         Fix LD setting for 64-bit Solaris 2/x86.
4196         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [*-*-solaris*):
4197         Determine GNU ld options for 64-bit Solaris 2/x86.  Detect gld
4198         2.21 _sol2 emulations.
4199
4200 2011-01-27  Peter O'Gorman  <peter@pogma.com>
4201
4202         Don't loop through wrapper script arguments unnecessarily.
4203         * libltdl/m4/ltmain.m4sh: Check that argv contains " --lt-"
4204         before looping to remove wrapper script targetted arguments.
4205         Performance regression reported by Dan McGee.
4206
4207 2011-01-20  Gerald Pfeifer  <gerald@pfeifer.com>  (tiny change)
4208
4209         Remove support for FreeBSD 1.x.
4210         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
4211         (_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which
4212         soon would incorrectly match FreeBSD 10.0.
4213         * NEWS, THANKS: Update.
4214
4215 2011-01-19  Peter O'Gorman  <peter@pogma.com>
4216
4217         Don't let verbose linker messages influence test results.
4218         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Ignore
4219         stderr during tests for -flag unless it contains "flag".
4220         * tests/darwin.at: Add test.
4221         Reported by Jeremy Huddleston and also by David Fang.
4222
4223 2011-01-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>  (tiny change)
4224
4225         Fix relink mode to use absolute path if hardcode_minus_L.
4226         * libltdl/config/ltmain.m4sh (func_mode_link): Use absolute path
4227         when hardcoding with -L.
4228
4229 2011-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4230
4231         Fix $wl setting for Solaris Studio 12.2 f90 on GNU/Linux.
4232         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]
4233         <lt_prog_compiler_wl>: Set to '-Qoption ld ' if we
4234         detect Sun Fortran version 8.4 or newer.
4235         Report by Terry Dontje.
4236
4237 2011-01-07  Peter Rosin  <peda@lysator.liu.se>
4238
4239         Convert file name to toolchain format when blessing archives.
4240         * libltdl/config/ltmain.m4sh (func_mode_install): When executing
4241         old_postinstall_cmds and old_archive_cmds, convert $oldlib to a
4242         format appropriate for the tool and provide that in $tool_oldlib.
4243         Also use $tool_oldlib when stripping old libraries.
4244         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Use $tool_oldlib
4245         as argument to $RANLIB.
4246         * THANKS: Update.
4247         Report by Dan McMahill.
4248
4249 2011-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4250
4251         Bump copyright years.
4252         * ChangeLog.2010: New, rotated from ...
4253         * ChangeLog: ... here.
4254         * Makefile.am (EXTRA_DIST): Add ChangeLog.2010.
4255         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
4256         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
4257         * libtoolize.m4sh: Likewise.
4258         * doc/libtool.texi: Likewise.
4259
4260 2010-12-20  Ian Lance Taylor  <iant@google.com>
4261
4262         * libltdl/m4/libtool.m4 (LT_LANG): Add Go.
4263         (AC_PROG_GO): Provide.
4264         (_LT_SYS_HIDDEN_LIBDEPS): Add Go case.
4265         (_LT_LANG_GO_CONFIG): Define.
4266         (LT_PROG_GO): Define.
4267         (AC_PROG_GO): Define if not defined.
4268         * libltdl/config/ltmain.m4sh: Match *.go.
4269         * doc/libtool.texi (LT_INIT): Mention Go.
4270         (Tags): Mention Go.
4271         * configure.ac: Enable Go.
4272         * NEWS: Update.
4273
4274 2010-12-20  Brice De Bruyne  <bricedb@gmail.com>  (tiny change)
4275
4276         Also turn off -fuse-linker-plugin for postdep_objects computation.
4277         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Add
4278         -fno-use-linker-plugin to temporary compile flags if necessary,
4279         to fix C++ postdep_objects setting with -flto
4280         -fuse-linker-plugin.
4281         * NEWS, THANKS: Update.
4282
4283 2010-12-20  KO Myung-Hun  <komh@chollian.net>  (tiny change)
4284
4285         Set command line length limit for OS/2.
4286         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [os2]
4287         <lt_cv_sys_max_cmd_len>: Set to 8192 to avoid long test.
4288
4289 2010-12-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4290
4291         Fix PIC flags with mpif77 using ifort on GNU/Linux.
4292         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
4293         Match Intel compiler also using $CC -V output, to avoid false
4294         negatives with compiler drivers like mpif77.
4295         Report by Christian Rössel.
4296
4297 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4298
4299         Fix PIC flags with MPI wrappers using Portland on GNU/Linux.
4300         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
4301         Match Portland compilers also using $CC -V output, to avoid
4302         false negatives with MPI compiler drivers.
4303         Report by Christian Rössel.
4304
4305         * libltdl/m4/libtool.m4 (_LT_SETUP): Fix quoting for
4306         PATH_SEPARATOR.
4307
4308 2010-12-15  KO Myung-Hun  <komh@chollian.net>  (tiny change)
4309             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4310
4311         Fix PATH_SEPARATOR handling for OS/2.
4312         * Makefile.am (update_mans): Quote $(PATH_SEPARATOR).
4313         * libltdl/m4/libtool.m4 (_LT_SETUP): Add _LT_DECL for
4314         PATH_SEPARATOR.
4315         * libltdl/config/general.m4sh: Use PATH_SEPARATOR when computing
4316         $progpath.
4317         * THANKS: Update.
4318
4319 2010-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4320
4321         Fix nvcc PIC setting on darwin.
4322         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
4323         <lt_prog_compiler_pic>: Prepend -Xcompiler to nonempty variable
4324         setting rather than hard-coding -Xcompiler -fPIC, for darwin.
4325         * NEWS, THANKS: Update.
4326         Report by Paweł Daniluk.
4327
4328         Honor $AUTOCONF, $AUTOMAKE in --help output.
4329         * libltdl/config/getopt.m4sh (func_help): Use $AUTOCONF and
4330         $AUTOMAKE if set, for --version outout.
4331
4332         docs: Libtool configuration diagram.
4333         * doc/libtool.texi (Integrating libtool): Add diagrams
4334         explaining the dependencies between Libtool files.
4335         Suggestion by Ethan Mallove.
4336
4337 2010-11-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4338
4339         Eliminate hardcode_libdir_flag_spec_ld tag variable.
4340         * libltdl/config/ltmain.m4sh (func_mode_link): Set $wl to empty
4341         if $LD is used for creating shared libraries.  Do not use
4342         hardcode_libdir_flag_spec_ld any more.
4343         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
4344         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG, _LT_SYS_DYNAMIC_LINKER)
4345         <hardcode_libdir_flag_spec_ld>: Remove all instances of the tag
4346         variable.
4347         (_LT_LINKER_SHLIBS) [linux, xlf] <hardcode_libdir_flag_spec>:
4348         Set variable, including ${wl}.  Fixes hardcoding in programs
4349         created by XL Fortran on GNU/Linux.
4350         * NEWS, THANKS: Update.
4351         Report by Paul H. Hargrove.
4352
4353         Rebuild menus in the manual.
4354         * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
4355         Thanks to Ian Lance Taylor for the suggestion.
4356
4357 2010-11-07  Ollie Wild  <aaw@google.com>
4358
4359         Modify --with-pic to support per-package configurations.
4360         * libltdl/m4/libtool.m4:  Modify --with-pic to accept a list of
4361         package names.  Modelled off --enable-shared.
4362         * tests/with-pic.at: New test.
4363         * Makefile.am (TESTSUITE_AT): Add tests/with-pic.at.
4364         * doc/libtool.texi (LT_INIT): Enhance documentation of
4365         --with-pic configure flag.
4366         * NEWS (New features): Mention that --with-pic now accepts a
4367         comma-separated list of package names.
4368
4369 2010-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4370
4371         Fix cwrapper test failure with --disable-static.
4372         * tests/cwrapper.at (cwrapper and installed shared libraries):
4373         Compile program source without libtool, so we can be sure a
4374         non-PIC object will be created.
4375
4376 2010-11-01  Peter Rosin  <peda@lysator.liu.se>
4377
4378         docs: Windows DLLs and headers.
4379         * doc/libtool.texi (Platform quirks): Add new subsection
4380         'Windows DLLs'.
4381
4382         * doc/libtool.texi (Platform quirks): Fix typo.
4383
4384 2010-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4385
4386         docs: mention shell requirement for libtool script.
4387         * doc/libtool.texi (Invoking libtool): Document that the shell
4388         used to invoke libtool needs to be the same used to configure
4389         it.
4390         * THANKS: Update.
4391         Report by Markus Duft.
4392
4393 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
4394
4395         libtool: remove redundant unsubstituted shell var defaults.
4396         * Makefile.am (libltdl/config/ltmain.sh): Boilerplate code from
4397         libltdl/config/general.m4 sets some default shell variables
4398         designed to be substituted by `$(configure_edit)'.  Actually,
4399         `libtool' uses the language tag values for those variables, and
4400         `ltmain.m4sh' is not passed through `$(configure_edit)', so they
4401         are just noise.  Edit them out at bootstrap time.
4402
4403 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
4404
4405         maint: don't leak developer GREP, SED etc into distribution file.
4406         * Makefile.am: Having rearranged the file, now apply the actual
4407         changes to follow-up.
4408         (edit): Split into two parts...
4409         (bootstrap_edit): ...substitutions that should happen at bootstrap
4410         time...
4411         (configure_edit): ...and substitutions that should not happen until
4412         configure time.
4413         * Makefile.am (libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh)
4414         (libtoolize.in, tests/package.m4): Use bootstrap_edit.
4415         (libtoolize, tests/defs): Use configure_edit.
4416         * HACKING (Release Procedure): Remove the note to workaround the
4417         bug fixed by this changeset.
4418         * NEWS (Bug fixes): Mention that this bug is now fixed.
4419         Reported by Joerg Sonnenberger.
4420
4421         maint: rearrange Makefile.am in preparation for a follow-up patch.
4422         * Makefile.am (Libtool scripts.): Move this section below the
4423         `Bootstrap.' section...
4424         (libtoolize.in): ...except this one which is generated at
4425         bootstrap time, and was added into the `Bootstrap.' section.
4426         (Libltdl.): Move this section below the `Libtool scripts.'
4427         section.
4428
4429 2010-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4430
4431         Fix linking from only convenience archives with gfortran on Darwin.
4432         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Update
4433         macro comment header.
4434         [darwin, F77, FC] <compiler_needs_object>: Set to yes if
4435         whole_archive_flag_spec is nonempty.  Fixes convenience.at test
4436         suite failures with gfortran 4.2 on Darwin.
4437         * THANKS: Update.
4438         Report by Paul Laight.
4439
4440         Fix bindir check logic, and relax non-bindir case for AIX.
4441         * tests/bindir.at (bindir install tests): Rewrite checks for
4442         place of the installed shared library in two separate tests,
4443         depending on whether -bindir is supposed to have an effect or
4444         not.  In the positive case, make the test stricter so that we
4445         reject libraries in $libdir.  In the negative case, do not
4446         require a major version number in the $libdir file name, for AIX
4447         without runtimelinking.  If tmpdir creation fails, skip the
4448         test.  Use fewer bindir directory names for testing, to speed
4449         up the test.  Also mention MSVC style DLL name in comment.
4450         Report by Peter Rosin.
4451
4452         tests: remove unneeded 'bindir compile check' test.
4453         * tests/bindir.at (bindir compile check): Remove.
4454
4455 2010-10-14  Peter Rosin  <peda@lysator.liu.se>
4456
4457         tests: fix $EXEEXT typo.
4458         * tests/depdemo-relink.test (func_restore_files): Use $EXEEXT
4459         instead of $EXEXT.
4460
4461 2010-10-12  Simon Josefsson  <simon@josefsson.org>
4462             Matěj Týč <matej.tyc@gmail.com>
4463             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4464
4465         docs: improve description of -no-undefined.
4466         * doc/libtool.texi (Link mode): Fix -no-undefined description.
4467         (Inter-library dependencies): Use Windows not AIX as example
4468         system.  Clarify need for symbol resolution at library creation
4469         time.
4470
4471 2010-10-09  Paolo Bonzini  <bonzini@gnu.org>
4472
4473         Add missing sysroot resolution.
4474         * libltdl/config/ltmain.m4sh (func_mode_link): Resolve sysroot
4475         when fetching the install directory of dependent libraries.
4476         Reported by Lionel Landwerlin <llandwerlin@gmail.com>,
4477         patch by Khem Raj <raj.khem@gmail.com>.
4478         * THANKS: Reorder entries, add Khem and Lionel.
4479
4480 2010-10-07  Roumen Petrov  <bugtrack@roumenpetrov.info>
4481
4482         Add test case for 69e77671 (cwrapper PATH manipulation order)
4483         * tests/cwrapper.at: Add new test 'cwrapper and installed shared
4484         libraries.'
4485
4486 2010-10-04  Peter Rosin  <peda@lysator.liu.se>
4487
4488         cwrapper: split long lines when dumping the wrapper script.
4489         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): If
4490         the wrapper script contains long lines, split them for
4491         readability and to conform with C standards.
4492         * tests/cwrapper.at (cwrapper string length): New test, making
4493         sure we don't regress.
4494
4495         msvc: handle symbols from different files independently.
4496         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
4497         <dumpbin, lt_cv_sys_global_symbol_pipe>: Make all sections
4498         viable for symbol extraction again when the symbols from a new
4499         file starts.  Fixes tests/tagdemo-make.test for MSVC 10.
4500         * tests/dumpbin-symbols.at: New test, making sure we don't
4501         regress.
4502         * Makefile.am (TESTSUITE_AT): Update.
4503
4504 2010-09-27  Peter Rosin  <peda@lysator.liu.se>
4505
4506         tests: check if sys_lib_search_path_spec works on MSVC.
4507         * tests/search-path.at (sys_lib_search_path on w32): New test,
4508         making sure v2.2.10-207-g09142ea doesn't regress.
4509
4510         Skip need_lib_prefix.at on systems without lib prefix on libraries.
4511         * tests/need_lib_prefix.at [MSVC, OS/2]: Skip this test on
4512         systems that do not have libraries prefixed with lib.
4513
4514         tests: clean up importing and exporting on w32.
4515         Makes the touched tests pass for MSVC when DLLs are built.
4516         * tests/demo/Makefile.am, tests/pdemo/Makefile.am: Define
4517         BUILDING_LIBHELLO when building libhello.la.
4518         * tests/demo/foo.h, tests/pdemo/foo.h (nothing) <MSVC>: Export
4519         variable when building the libhello dll and import when using
4520         libhello.  For GCC and non-w32, and when building a static
4521         libhello, leave as an ordinary extern.
4522         * tests/pdemo/foo.h [Cygwin]: Remove unneeded and "dead" export
4523         and import logic (LIBFOO_DLL is always undefined).
4524         * tests/pdemo/longer_file_name_foo.c,
4525         tests/pdemo/longer_file_name_foo2.c (_LIBFOO_COMPILATION_): Not
4526         useful before, even less so now.  Removed.
4527         * tests/depdemo/l1/Makefile.am: Define BUILDING_LIBL1 when
4528         building libl1.la.
4529         * tests/depdemo/l2/Makefile.am: Define BUILDING_LIBL2 when
4530         building libl2.la.
4531         * tests/depdemo/l3/Makefile.am: Define BUILDING_LIBL3 when
4532         building libl3.la.
4533         * tests/depdemo/l4/Makefile.am: Define BUILDING_LIBL4 when
4534         building libl4.la.
4535         * tests/depdemo/l1/l1.h, tests/depdemo/l2/l2.h,
4536         tests/depdemo/l3/l3.h, tests/depdemo/l4/l4.h <MSVC>: Export
4537         variables when building the associated library dll and import
4538         when using the library.  For GCC and non-w32, and when building
4539         static libraries, leave as an ordinary extern.
4540
4541 2010-09-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4542
4543         docs: do not refer to Libtool version with dlopen functionality.
4544         * doc/libtool.texi (Dlopened modules): Remove broken reference
4545         to what should have been Libtool 0.9g.
4546         Report by Roumen Petrov.
4547
4548 2010-09-23  Peter Rosin  <peda@lysator.liu.se>
4549
4550         msvc: don't try to export import descriptors.
4551         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]
4552         [pw32, cegcc] <cl*, exclude_expsyms>: Don't export symbols in
4553         import libraries related to describing what dll(s) the import
4554         library is importing. Fixes problem in tests/demo-make.test
4555         and some other tests.
4556
4557 2010-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4558
4559         Fix regression in command-line length computation.
4560         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Use `env echo' rather
4561         than possibly-undefined func_fallback_echo, to ensure we fork
4562         and exec for this test.
4563         * NEWS: Update.
4564         Regression introduced in v2.2.6-39-g9c3d4d8.
4565
4566 2010-09-22  Gary V. Vaughan  <gary@gnu.org>
4567
4568         Post-release administrivia.
4569         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4570         numbers to 2.4.1a.
4571         * NEWS: Add header line for next release.
4572
4573         Release 2.4.
4574         * libltdl/Makefile.inc (LTDL_VERSION_INFO): We've added the
4575         static libprefix interface, so new version-info is C+1:0:R+1.
4576         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4577         numbers.
4578         * NEWS: Update version number.
4579
4580         manual: web-manual index.html clashes with @node Index.
4581         * doc/libtool.texi (Index): Renamed to `Combined Index'.
4582
4583         tests: ISO C++ forbids declaration of 'v1' with no type.
4584         * tests/lt_dlexit.at (lt_dlexit unloading libs): Added an
4585         explicit int type to declaration of 'v1' to prevent compilation
4586         failure with C++.
4587
4588 2010-09-22  Peter Rosin  <peda@lysator.liu.se>
4589
4590         tests: reloadable objects do not work on MSVC, SKIP test.
4591         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
4592         [cygwin, mingw, pw32, cegcc] <cl*, reload_cmds>: Indicate that
4593         reloadable objects do not work.
4594         * tests/duplicate_conv.at: Skip last test if reloadable
4595         objects do not work.
4596         * doc/libtool.texi (libtool script contents) <reload_cmds>:
4597         Document how to indicate that reloadable objects do not work.
4598
4599 2010-09-21  Peter Rosin  <peda@lysator.liu.se>
4600
4601         msvc: eliminate spaces in the library search path.
4602         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
4603         <cl*, sys_lib_search_path_spec>: The LIB path variable telling
4604         where MSVC looks for libraries is likely to contain directory
4605         names with spaces.  Convert those directory names to the short
4606         8.3 DOS form (i.e. without spaces) when storing them in
4607         sys_lib_search_path_spec, as that is a space separated variable.
4608
4609 2010-09-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4610
4611         Revert to per-language libpath computation on AIX.
4612         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Accept
4613         tagname argument.  Use global cache variable lt_cv_aix_libpath
4614         to override per-language tag variables for the libpath value.
4615         Fix the sed script to remove trailing space.
4616         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Pass tag argument to
4617         _LT_SYS_MODULE_PATH_AIX.
4618         Tracked down and reported by Rainer Tammer.
4619
4620 2010-09-21  Gary V. Vaughan  <gary@gnu.org>
4621
4622         maint: edit-readme-alpha shouldn't try to re-edit during dist.
4623         * libltdl/config/edit-readme-alpha: If README is non-writable
4624         assume that it is being run from distcheck, and skip the edit
4625         with a warning (to help diagnose cases where the heuristic is
4626         not correct).  However, if README has already been edited to
4627         the alpha text, quietly skip without an error message.
4628
4629 2010-09-20  Eric Blake  <eblake@redhat.com>
4630
4631         maint: drop autobuild requirement
4632         * HACKING: Update.
4633
4634         build: ship autobuild.m4, to reduce bootstrap requirement
4635         * libltdl/m4/.gitignore: Drop autobuild.m4.
4636         * libltdl/m4/autobuild.m4: New file, copied from autobuild.
4637         * configure.ac (AB_INIT): Unconditionally call it.
4638
4639 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
4640             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4641
4642         libltdl: Make sure preloaded symbols are declared extern "C".
4643         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Move the
4644         declaration of lt__PROGRAM__LTX_preloaded_symbols to global
4645         scope and make sure it has "C" linkage.  Makes exceptions.at
4646         succeed on MSVC.
4647
4648 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
4649
4650         tests: __declspec (dll{ex,im}port) in tests/exceptions.at
4651         * tests/exceptions.at (common.h, module.h, lib.h) [w32]: Use
4652         __declspec (dllimport) and __declspec (dllexport) instead of
4653         the less portable __attribute__ ((dllimport)) and
4654         __attribute__ ((dllexport)).  Makes the test compile on MSVC.
4655
4656 2010-09-19  Peter Rosin  <peda@lysator.liu.se>
4657
4658         tests: Import items from liba1 for MSVC.
4659         * tests/lt_dlexit.at (b1.c) [MSVC]: Import function f1 and
4660         variable v1 from liba1 when using them from modb1.  Makes the
4661         test pass on MSVC.
4662
4663 2010-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4664
4665         tests: avoid distcheck failure with --disable-ltdl-install.
4666         * tests/ltdl-libdir.at (libdir of installed modules): Skip if
4667         $LIBLTDL does not exist.
4668
4669 2010-09-18  Gary V. Vaughan  <gary@gnu.org>
4670
4671         maint: use sed instead of maintaining 2 README files.
4672         * README.alpha: Deleted.  It was mostly identical to README.
4673         * libltdl/config/edit-readme-alpha: New script to edit the
4674         contents of README in the dist tree prior to tarring up.
4675         * Makefile.am (dist-hook): Run it before rolling alpha release
4676         tarball.
4677
4678         maint: improve README's `Obtaining the Latest Sources'.
4679         * README (Obtaining the Latest Sources): Add instructions for
4680         obtaining stable, alpha and nightly snapshot tarballs.
4681         * README.alpha (Obtaining the Latest Sources): Adjust to match.
4682
4683         maint: reformat README `The Test Suites' for consistency.
4684         * README (The Test Suites): Reformatted for consistency.
4685         * README.alpha (The Test Suites): Adjust to match.
4686
4687         maint: improve `Reporting Bugs' in README and README.alpha.
4688         * README (Reporting Bugs): Rewritten to a more complete and
4689         concise guide to providing a good bug report.
4690         * README.alpha (Reporting Bugs): Adjust to match.
4691
4692         maint: consolidate Introductions of README and README.alpha.
4693         * README (Introduction): Rewritten to a more logical order for
4694         first time users, incorporating some additional text that was
4695         previously only in README.alpha.
4696         * README.alpha (Introduction): Adjust to match.
4697
4698         maint: copy the Version Numbering section into README.alpha.
4699         * README.alpha (Version Numbering): No less useful for users
4700         of alpha releases.  Copied from README.
4701
4702 2010-09-17  Peter Rosin  <peda@lysator.liu.se>
4703
4704         tests: actually detect missing 'test' in 'if "$foo" = ...'.
4705         * tests/sh.test: Remove extra backslash in regex.
4706
4707         Copy over DLL_EXPORT handling from C to C++ for non-GCC on w32.
4708         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [mingw, cygwin, os2]
4709         [pw32, cegcc]: Copy over the DLL_EXPORT handling from C to C++.
4710
4711 2010-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4712
4713         LTO: consistently accept -fwhopr* and -flto* for GCC.
4714         * libltdl/config/ltmain.m4sh (func_mode_link): Accept -fwhopr*.
4715         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Also match
4716         -flto*.
4717
4718 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
4719
4720         Fix order of PATH manipulation in cwrapper and shwrapper
4721         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main): Call
4722         lt_update_exe_path before lt_update_lib_path, to ensure that the
4723         temporary rpath values (which include the OBJDIRs of uninstalled
4724         libtool libraries) precede installation and final -rpath directories.
4725         (func_emit_wrapper): Prepend $dllsearchpath to PATH before prepending
4726         $temp_rpath to $shlibpath_var; similar rationale as above.
4727         Reported by Jon Turney <jon.turney@dronecode.org.uk>
4728
4729 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
4730
4731         Document libtool variable to_host_file_cmd.
4732         * doc/libtool.texi (libtool script contents:to_host_file_cmd):
4733         Document variable.
4734         (libtool script contents:to_tool_file_cmd): Prefer `build platform'
4735         to `build system'; Ditto `host platform'.
4736
4737 2010-09-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
4738
4739         Fix sh.test failure introduced in 72064249
4740         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid poor
4741         syntax.
4742
4743 2010-09-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4744
4745         tests: avoid localization failure due to unstable compiler messages.
4746         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT):
4747         Attempt to normalize temporary file names in error messages.
4748         Fixes 'localized compiler messages' test failure on Darwin when
4749         creating fat (multi-ABI) libraries.
4750
4751 2010-09-13  Peter Rosin  <peda@lysator.liu.se>
4752
4753         Prefer $NM @file when the toolchain isn't native to $build.
4754         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid calculating
4755         the command line length and take the @file branch *if* the file
4756         names needs to be converted for the toolchain and the @file
4757         branch works.  Fixes problems in stresstest.at when doing a cross
4758         from Cygwin to MinGW using MinGW native tools (a.k.a. a "faked"
4759         cross), and for the specific case of MSVC on Cygwin it makes the
4760         test pass.
4761
4762 2010-09-15  Gary V. Vaughan  <gary@gnu.org>
4763
4764         maint: improve README instructions for fetching latest version.
4765         * README, README-alpha (Obtaining the Latest Sources): New
4766         section, describing use of savannah repositories and bootstrap.
4767         * README.alpha (Reporting Bugs): Remove git instructions in
4768         favour of a reference to the new `Obtaining the Latest Sources'
4769         section.
4770
4771 2010-09-14  Eric Blake  <eblake@redhat.com>
4772
4773         maint: ship .xz, not .lzma
4774         * configure.ac (AM_INIT_AUTOMAKE): Prefer better file format.
4775         * Makefile.maint (git-release, git-dist, prev-tarball)
4776         (new-tarball, diffs): Use correct extension.
4777         * HACKING: Update instructions.
4778         * .gitignore: Ignore .xz files.
4779
4780 2010-09-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4781
4782         doc: avoid long lines in input and output, indexing fixes.
4783         * doc/libtool.texi (Linking libraries)
4784         (Module loaders for libltdl): Manually line-wrap examples, to
4785         avoid long lines.
4786         (Libltdl interface, User defined module data)
4787         (Module loaders for libltdl): Wrap long @deftypefun input lines
4788         using trailing '@'.  Use @deftypefun rather than @deftp where
4789         appropriate, and add spaces in @deftypefun lines to fix the
4790         index entries generated from these lines.
4791         (Cheap tricks): Use @smallexample rather than @example, to avoid
4792         long lines.
4793
4794         docs: @file and @option markup fixes.
4795         * doc/libtool.texi (Creating object files, Linking libraries)
4796         (Linking executables, Link mode, Finish mode, Autoconf macros)
4797         (Using Automake, Inter-library dependencies, Dlpreopening)
4798         (Linking with dlopened modules, Finding the dlname)
4799         (Libltdl interface, Test descriptions, Multiple dependencies):
4800         Add @option where needed, replace @samp with @file as
4801         appropriate.
4802
4803 2010-09-12  Peter Rosin  <peda@lysator.liu.se>
4804
4805         * .gitignore: Ignore *.obj files for MSVC (and w32 in general).
4806
4807         Adjust to moved auxiliary files and add compile.
4808         * HACKING (Maintenance Notes): Adjust to moved files.  Add the
4809         compile script.
4810         * Makefile.maint (fetch): Also fetch the compile script.
4811
4812 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4813
4814         tests: avoid empty AT_DATA contents, for zsh.
4815         * tests/libtoolize.at (libtoolize macro serial update)
4816         (libtoolize config files serial update, LIBTOOLIZE_OPTIONS):
4817         Do not create empty files with AT_DATA, the latter is documented
4818         to require a final newline.  Fixes testsuite failures with zsh
4819         4.3.10.
4820
4821 2010-09-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
4822
4823         When assigning $linklib value, honor [-all]-static[-libtool-libs]
4824
4825         * libltdl/config/ltmain.m4sh (func_mode_link): When prefer_static_libs
4826         and static library exists, ensure old_library name is used as $linklib.
4827         Fixes failure on mingw when both static and shared libraries are
4828         present.
4829
4830 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4831
4832         tests: work around zsh use of $options variable.
4833         * tests/getopt-m4sh.at: Rename $options to $opts, the former is
4834         special for zsh 4.3.10.
4835
4836         Fix AC_NO_EXECUTABLES test failure on IRIX 6.5.
4837         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix]: Cache result
4838         of link check for -Wl,-exported_symbol.
4839         * tests/no-executables.at (AC_NO_EXECUTABLES): Set
4840         lt_cv_irix_exported_symbol, to avoid link check.
4841
4842 2010-09-12  Jürgen Reuter  <juergen.reuter@physik.uni-freiburg.de>  (tiny change)
4843             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4844
4845         Initial support for the NAG Fortran compiler on GNU/Linux.
4846         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <nagfor>:
4847         New set of entries, for NAG Fortran 5.1 and 5.2.
4848         * NEWS: Update.
4849
4850 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4851
4852         Fix getopt.m4sh to require Autoconf 2.62 or newer.
4853         * libltdl/config/getopt.m4sh (m4_version_prereq): Require 2.62,
4854         not 2.61.
4855
4856 2010-09-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
4857
4858         Correct typo: $sharedlib_from_linklib_cmd missing '_cmd'
4859
4860         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Fix obvious
4861         typo, $sharedlib_from_linklib_cmd missing '_cmd'.
4862
4863 2010-09-10  Peter Rosin  <peda@lysator.liu.se>
4864
4865         Convert file name to toolchain format when invoking $NM.
4866         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
4867         (func_win32_libid, func_cygming_gnu_implib_p)
4868         (func_cygming_ms_implib_p): When using the name lister to find
4869         symbols in files, convert the file names to a format appropriate
4870         for the tool. Fixes testsuite issues in mdemo-static-make.test
4871         and mdemo-make.test when doing a cross from Cygwin/Wine to MinGW
4872         using MinGW native tools (a.k.a. a "faked" cross).
4873
4874 2010-09-09  Peter Rosin  <peda@lysator.liu.se>
4875
4876         Fix dependency tracking for MSYS/MinGW.
4877         * libltdl/config/ltmain.m4sh (func_to_tool_file): Add lazy
4878         argument which allows the user to specify conversions that are
4879         not desired.
4880         (func_mode_compile): Don't convert source files on MSYS, as
4881         MSYS does it for us. This fixes a regression introduced by
4882         "Use func_to_tool_file instead of fix_srcfile_path".
4883         Reported by Charles Wilson.
4884
4885 2010-09-08  Peter Rosin  <peda@lysator.liu.se>
4886
4887         Mention adjustment of naming of MSVC import libraries in NEWS.
4888         * NEWS: Mention the change in import library naming on MSVC.
4889
4890 2010-09-07  Peter Rosin  <peda@lysator.liu.se>
4891
4892         Adjust naming of MSVC import libraries.
4893         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
4894         [pw32, cegcc] <cl*, library_names_spec>: Adjust naming of the
4895         import library from foo-<major-version>.lib to foo.dll.lib, to
4896         avoid clashes with the static library for unversioned libraries.
4897         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin, pw32]
4898         [cegcc] <cl*, archive_expsym_cmds>: Explicitely name the import
4899         library to match the above.
4900
4901         Fixup texi typo in previous.
4902         * doc/libtool.texi (libtool script content) <postlink_cmds>:
4903         Add missing 'code' command.
4904
4905         Convert POSIX file names to toolchain format for MSVC
4906         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
4907         [cygwin, mingw, pw32, cegcc] <cl*, postlink_cmds>: Make
4908         sure the -outputresource: file name for the manifest tool is
4909         in w32 format.
4910         <cl*, archive_expsym_cmds>: Likewise for the MSVC command file
4911         containing the exports and the output file name.
4912         * libltdl/config/ltmain.m4sh (func_mode_link): Precalculate the
4913         toolchain format of the output_objdir file name and store it in
4914         the tool_output_objdir variable. Also replace any occurrence of
4915         @TOOL_OUTPUT@ in postlink_cmds with the toolchain version of the
4916         @OUTPUT@ content.
4917         * doc/libtool.texi (libtool script content): Update description
4918         of postlink_cmds to mention @TOOL_OUTPUT@.
4919
4920 2010-09-06  Peter Rosin  <peda@lysator.liu.se>
4921
4922         Use func_to_tool_file instead of fix_srcfile_path.
4923         * libltdl/config/ltmain.m4sh (func_mode_compile): Replace the
4924         fix_srcfile_path hook with a call to func_to_tool_file.
4925         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin,mingw,pw32]
4926         [cegcc]: Drop fix_srcfile_path.
4927         * doc/libtool.texi (libtool script contents): Likewise.
4928         * NEWS: Mention that fix_srcfile_path has been replaced.
4929
4930         Convert file names to toolchain format in $NM and $AR @files.
4931         * libltdl/config/ltmain.m4sh (func_mode_link): When listing
4932         symbols and when creating archives using command files (or
4933         response files), make sure that both the name of the command
4934         file and the content are made up of file names in a format
4935         appropriate for the tool. Fixes stresstest.at on MSYS when
4936         run with low command line length.
4937
4938         Convert file names to toolchain format when linking.
4939         * libltdl/config/ltmain.m4sh (func_mode_link): When exporting
4940         symbols and when linking using command files (or response
4941         files), make sure that both the name of the command file and
4942         the content are made up of file names in a format appropriate
4943         for the tool. Fixes problems in stresstest.at on MSYS when run
4944         with low command line length.
4945
4946         Add file name conversion from $build to toolchain.
4947         * configure.ac: Ensure to_tool_file_cmd is available to Makefile.
4948         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): Add
4949         cache variable lt_cv_to_tool_file_cmd that describes how to
4950         convert file names from $build to toolchain format.
4951         * libltdl/config/ltmain.m4sh (func_to_tool_file): New function
4952         that utilizes the above.
4953         * Makefile.am: Ensure to_tool_file_cmd is included in
4954         TEST_ENVIRONMENT so that it is passed to (old testsuite) tests.
4955         * testsuite.at: Ensure to_tool_file_cmd is passed as a variable
4956         setting on the configure line for (new testsuite) tests.
4957         * doc/libtool.texi (libtool script content): Update with
4958         to_tool_file_cmd description.
4959         (Cygwin to MinGW Cross): Update to mention lt_cv_to_tool_file_cmd.
4960
4961 2010-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4962
4963         tests: avoid spurious test failure due to library mode on HP-UX.
4964         * tests/help.at (debug tracing): Use $lt_INSTALL not cp for
4965         install mode, the latter will not overwrite an existing library
4966         with mode 555.
4967
4968 2010-09-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
4969
4970         Path conversion documentation
4971         * doc/libtool.texi (Platform quirks): Add new subsections
4972         'Cross compiling' and 'File name conversion'.
4973
4974 2010-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4975
4976         tests: avoid spurious pic_flag test failure on HP-UX 10.20.
4977         * tests/pic_flag.at (override pic_flag at configure time):
4978         Match HP-UX 10.20 cc warning about unknown options, to skip
4979         the test.
4980
4981         tests: fix localization test for GCC on HP-UX 11.00.
4982         * tests/localization.at (localized compiler messages): Be sure
4983         to switch the locale only for the actual compiler commands, so
4984         we don't pick up warnings from helper tools such as diff which
4985         may not have the locale installed.
4986
4987         Avoid leaking make flags into testsuite results.
4988         * tests/defs.m4sh: Unset MFLAGS, MAKEFLAGS, MAKELEVEL, __MKLVL__
4989         and MAKE_JOBS_FIFO.
4990         * tests/testsuite.at: Likewise.
4991         Fixes warnings in test logs when the user uses 'make -jN check'
4992         and inner $MAKE invocations can't connect to the job server.
4993         Fixes spurious failures of configure-iface.at and of
4994         demo-noinst-link tests with BSD and Tru64 make if the user uses
4995         'make -k', as the exit status of the latter is not reliable.
4996
4997 2010-09-01  Gary V. Vaughan  <gary@gnu.org>
4998
4999         Remove announce-gen.m4sh and mailnotify.m4sh.
5000         * libltdl/config/announce-gen.m4sh: Removed.  This script has
5001         no apparent connection to libtool functionality, and mostly
5002         duplicates the better maintained gnulib announce-gen script.
5003         * libltdl/config/mailnotify.sh: Removed. This script was used
5004         by only clcommit.m4sh and announce-gen.m4sh, both of which are
5005         now removed too.
5006         * Makefile.maint (announce-gen, libltdl/config/mailnotify):
5007         Targets removed.
5008         * bootstrap: Remove the mailnotify regeneration warning.
5009         * HACKING (Release Procedure): Remove references to
5010         announce-gen.
5011         (Alpha release note template, Full release note template):
5012         Reinstated from before announce-gen was introduced.
5013
5014         Remove clcommit.m4sh.
5015         * clcommit.m4sh: Removed. This script was written to help keep
5016         ChangeLog and commit messages in sync when committing to CVS,
5017         and is an anachronism now that Libtool uses git.
5018         * Makefile.maint (commit): Target removed.
5019         * bootstrap: Don't generate commit.
5020         * HACKING (Release Procedure): Adjusted.
5021
5022 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
5023
5024         archive-in-archive.at passes with Microsoft lib.
5025         * tests/archive-in-archive.at: Tighten test to check that the desired
5026         object files are indeed part of the archive. Microsoft lib still
5027         passes, so remove the expected failure for that case.
5028
5029         Dump archiver output to the log when testing @file support.
5030         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout to config.log
5031         when testing for @file support.
5032         Suggested by Ralf Wildenhues.
5033
5034         Silence archiver output when testing @file support.
5035         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout and stderr
5036         to the bit bucket when testing for @file support.
5037
5038 2010-08-31  Gary V. Vaughan  <gary@gnu.org>
5039
5040         Remove double `Generated from foo.m4sh' lines.
5041         We now require a modern Autoconf to bootstrap libtool, which
5042         will add the `Generated by ...' boiler-plate automatically,
5043         so we can remove the hand-rolled @configure_input@
5044         substitutions we had been doing:
5045         * clcommit.m4sh, libtoolize.m4sh, tests/defs.sh,
5046         libltdl/config/announce-gen.m4sh, libltdl/config/ltmain.m4sh,
5047         libltdl/config/mailnotify.m4sh: Remove @configure_input@.
5048         * Makefile.am (edit): Remove configure_input substitution.
5049         (libtoolize, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
5050         (tests/defs): Don't set `$input' shell variable.
5051         * Makefile.maint (announce_gen, libltdl/config/mailnotify)
5052         (commit): Likewise.
5053
5054 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
5055
5056         Extract the archive name from the .la file and use $AR (not ar).
5057         * Makefile.am: Pass AR through to the testsuite.
5058         * tests/archive-in-archive.at: Bump copyright year. Extract archive
5059         name from the .la file instead of hardcoding the name, and allow
5060         different archivers. Also clarify that the tested functionality is
5061         currently broken.
5062
5063 2010-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5064
5065         tests: skip -Wall -Werror with Tru64 cc in cwrapper test.
5066         * tests/cwrapper.at (cwrapper for uninstalled executables):
5067         Use a link test rather than a compile test to flesh out unknown
5068         compiler flags starting with -W; Tru64/OSF1 cc will happily
5069         accept `-Wall -Werror' as indication to pass flags on to
5070         subprocesses.
5071
5072         tests: avoid getopt-m4sh failures when autom4te is not available.
5073         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP):
5074         Check $M4SH --version, skip on failure.
5075
5076         tests: mark 'syntax of .la files' as XFAIL, expose failure.
5077         * tests/lalib-syntax.at (syntax of .la files): Assert that the
5078         string returned by lt_dlerror after a failure is non-NULL, so
5079         the failure shows up on systems other than Solaris.  Mark test
5080         as expected to fail.
5081         Suggested by Bob Friesenhahn.
5082
5083 2010-08-30  Eric Blake  <eblake@redhat.com>
5084
5085         Simplify recent configure quoting portability workaround.
5086         * configure.ac: Simplify setting of timestamp_string.
5087
5088 2010-08-30  Charles Wilson  <libtool@cwilson.fastmail.fm>
5089
5090         Update path conversion warning messages
5091         * libltdl/config/ltmain.m4sh (func_convert_file_check): Update
5092         comments and warning message.
5093         (func_convert_path_check): Update warning message.
5094
5095 2010-08-29  Peter Rosin  <peda@lysator.liu.se>
5096
5097         Fix typo when renaming path conversion functions.
5098         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
5099         variable setting on the configure line for (new testsuite) tests.
5100
5101 2010-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5102
5103         Support GCC LTO on GNU/Linux.
5104         * libltdl/config/ltmain.m4sh (func_mode_link): Allow through
5105         flags matching -O*, -flto*, -fwhopr, -fuse-linker-plugin.
5106         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Drop symbols
5107         starting with __gnu_lto.
5108         (_LT_LINKER_SHLIBS) [linux] <archive_cmds, archive_expsyms_cmds>:
5109         Add $pic_flag for GCC.
5110         (_LT_LANG_CXX_CONFIG) [linux] <archive_cmds, archive_expsyms_cmds>:
5111         Likewise.
5112         (_LT_SYS_HIDDEN_LIBDEPS): Ignore files matching *.lto.o.
5113         * NEWS: Update.
5114
5115         Disable GCC LTO for verbose library extraction.
5116         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Temporarily
5117         append -fno-lto or -fno-whopr to CFLAGS if CC or CFLAGS (which
5118         are substituted with the per-language variables here) contain
5119         -flto or match -fwhopr*, respectively.
5120
5121         Save and restore CFLAGS properly inside libtool.m4 macros.
5122         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Use different
5123         temporary variables for saved and restored values of $LIBS,
5124         $CFLAGS, to avoid overlap with the *_CONFIG macros.
5125         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
5126         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Also save and restore
5127         $CFLAGS, and override it with per-language flags, so that in
5128         case output_verbose_link_cmd uses $CFLAGS, the right flags are
5129         used.
5130
5131         Work around yet another shell quoting portability issue.
5132         * configure.ac: Avoid nonportable quoted alternate variable
5133         value in unquoted here document, so Solaris 10 sh and Tru64
5134         ksh do not print spurious extra quotes.
5135
5136         Silence order-only configure test for AIX make.
5137         * configure.ac: Also drop standard output, for AIX 5.1 make.
5138
5139 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
5140
5141         Minor sysroot fixups.
5142         * libltdl/m4/libtool.m4 (_LT_WITH_SYSROOT): Fix typo.
5143         * tests/sysroot.at: Search also for crt0.o to accommodate cygwin.
5144
5145 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
5146
5147         [cygwin|mingw|cross-compile]: Path conversion support.
5148         * configure.ac: Ensure to_host_file_cmd is available to Makefile.
5149         * TODO: Document QoI issue with file name conversion functions.
5150         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): New function
5151         sets libtool variable $to_host_file_cmd, and employs cache.
5152         (_LT_SETUP): Require it.
5153         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
5154         variable setting on the configure line for (new testsuite) tests.
5155         * Makefile.am (TESTS_ENVIRONMENT): Ensure to_host_file_cmd is
5156         included so that it is passed to (old testsuite) tests.
5157         * libltdl/config/general.m4sh: Define $lt_sed_naive_backslashify here.
5158         * libltdl/config/ltmain.m4sh ($to_host_file_cmd, $to_host_path_cmd):
5159         New variables.
5160         (func_cygpath): New function.
5161         (func_init_to_host_path_cmd): New function.
5162         (func_to_host_path): Renamed to...
5163         (func_to_host_file): Refactored to... (now uses $to_host_file_cmd).
5164         (func_convert_core_file_wine_to_w32): Here. New function.
5165         (func_convert_core_msys_to_w32): Here. New function.
5166         (func_convert_file_check): Here. New function.
5167         (func_convert_file_noop): Here. New function.
5168         (func_convert_file_msys_to_w32): Here. New function.
5169         (func_convert_file_cygwin_to_w32): Here. New function.
5170         (func_convert_file_nix_to_w32): Here. New function.
5171         (func_convert_file_msys_to_cygwin): New function.
5172         (func_convert_file_nix_to_cygwin): New function.
5173         (func_to_host_pathlist): Renamed to...
5174         (func_to_host_path): Refactored to... (now uses $to_host_path_cmd
5175         and func_init_to_host_path_cmd).
5176         (func_convert_path_check): Here. New function.
5177         (func_convert_path_front_back_pathsep): Here. New function.
5178         (func_convert_core_path_wine_to_w32): Here. New function.
5179         (func_convert_path_noop): Here. New function.
5180         (func_convert_path_msys_to_w32): Here. New function.
5181         (func_convert_path_cygwin_to_w32): Here. New function.
5182         (func_convert_path_nix_to_w32): Here. New function.
5183         (func_convert_path_msys_to_cygwin): New function.
5184         (func_convert_path_nix_to_cygwin): New function.
5185
5186 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5187
5188         Fix symlist variable path to use _WIN32 instead of __WINDOWS__.
5189         * libltdl/config/ltmain.m4sh, libltdl/libltdl/lt_system.h,
5190         libltdl/m4/libtool.m4, tests/demo/foo.h, tests/pdemo/foo.h:
5191         Change __WINDOWS__ to _WIN32.
5192         Report by Charles Wilson.
5193
5194         Add $pic_flag to archive_cmds and archive_expsym_cmds.
5195         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
5196         <archive_cmds, archive_expsym_cmds>
5197         [GNU ld, netbsd]: Add $pic_flag if ELF.
5198         [GNU ld, solaris]: Likewise.
5199         [GNU ld, default case]: Likewise.
5200         [!GNU ld, freebsd, dragonfly]: Add $pic_flag.
5201         [!GNU ld, GCC, hpux9]: Add $pic_flag.
5202         [!GNU ld, GCC, hpux10]: Replace -fPIC with $pic_flag
5203         [!GNU ld, GCC, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
5204         [!GNU ld, GCC, irix5, irix6, nonstopux]: Add $pic_flag.
5205         [!GNU ld, GCC, osf4, osf5]: Likewise.
5206         [!GNU ld, GCC, solaris]: Likewise.
5207         (_LT_LANG_CXX_CONFIG) <archive_cmds, archive_expsym_cmds>
5208         [hpux9]: Add $pic_flag if $GXX.
5209         [hpux10, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
5210         [irix5, irix6]: Add $pic_flag if $GXX.
5211         [osf4, osf5]: Likewise.
5212         [solaris]: Add $pic_flag if $GXX and not GCC 2.7.
5213
5214         Uniform const'ness of symlist variable lt_preloaded_symbols.
5215         On some systems, lt_preloaded_symbols may not be declared
5216         const due to relocation issues.  C99 requires qualification to
5217         match for compatible declarations, so ensure we declare
5218         const'ness in the same way everywhere; link-time optimization
5219         may otherwise rightfully complain about inconsistencies.
5220         Since ltdl.h may not depend upon config.h, rely on system
5221         defines for choosing const'ness.
5222         * NEWS: Update.
5223         * doc/libtool.texi (Dlpreopening): Document this issue.
5224         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
5225         [__WINDOWS__, __CYGWIN__, _WIN32_WCE]: Define LT_DLSYM_CONST
5226         according to system defines.  Remove old shell cruft.  Use
5227         LT_DLSYM_CONST for lt_${my_prefix}_LTX_preloaded_symbols.
5228         * libltdl/libltdl/lt_system.h (LT_DLSYM_CONST): Likewise,
5229         define LT_DLSYM_CONST according to system defines.
5230         * tests/demo/foo.h (LT_DLSYM_CONST): Likewise.
5231         * tests/pdemo/foo.h (LT_DLSYM_CONST): Likewise.
5232         * tests/demo/dlmain.c (lt_dlsymlist): Use LT_DLSYM_CONST.
5233         * tests/pdemo/longer_file_name_dlmain.c (lt_dlsymlist):
5234         Likewise.
5235         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise
5236         for configure test code.
5237         * libltdl/ltdl.c (preloaded_symbols): Use LT_DLSYM_CONST.
5238         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Likewise.
5239
5240 2010-08-28  Dave Korn  <dave.korn.cygwin@googlemail.com>
5241
5242         Ensure cwrapper magic string is not optimized away.
5243         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
5244         Declare MAGIC_EXE as volatile.
5245         Report by Charles Wilson.
5246
5247 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5248
5249         Fix quoting in non-XSI func_xform, for IRIX sh.
5250         * libltdl/config/ltmain.m4sh (func_xform): Remove spurious extra
5251         M4 quotes.
5252
5253         Fix response file test for unreliable exit status of IRIX ar.
5254         * libltdl/m4/libtool.m4 (_LT_PROG_AR): IRIX ar will not fail
5255         over a command-line argument specifying a nonexistent file (such
5256         as `@FILE'), so ensure failure with a reponse file containing
5257         a nonexistent file.  Also, use lt_* variable prefix for
5258         temporary variables.
5259
5260         Fix AC_LANG_PROGRAM warnings from git Autoconf.
5261         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Fix
5262         underquoted AC_LANG_PROGRAM call.
5263         (LT_PROG_AR): Use AC_LANG_PROGRAM.
5264         (_LT_LINKER_SHLIBS) [irix, GCC]: Use the right source for the
5265         given language.
5266         * NEWS: Update.
5267
5268 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5269
5270         fix AIX testsuite regression
5271         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): Partly
5272         revert v2.2.10-83-gc45a288: Do not absolutize path here, only do
5273         sysroot replacement.
5274         (func_mode_link): Adjust.
5275
5276 2010-08-22  Charles Wilson  <libtool@cwilson.fastmail.fm>
5277
5278         fix --mode=finish
5279         * libltdl/config/ltmain.m4sh (func_mode_finish): Invert then/else
5280         blocks of the "if $opt_dry_run" conditional.
5281
5282 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
5283
5284         improve code for sysroot --mode=finish
5285         * libltdl/config/ltmain.m4sh (func_mode_finish): Change sysroot_regex
5286         and sysroot_cmd delimiter from pipe to slash.  Wrap the entire for
5287         loop with "if $opt_dry_run...fi" and print an explanatory message
5288         for the --dry-run case.
5289
5290 2010-08-12  Paolo Bonzini  <bonzini@gnu.org>
5291
5292         add libtool --mode=finish mode for sysroot
5293         * doc/libtool.texi (Finish mode): Document behavior when *.la files
5294         are passed.
5295         * libltdl/config/ltmain.m4sh (func_mode_finish): Eliminate sysroot
5296         or `=' signs representing it from files in $libs.
5297         * tests/sysroot.at (SYSROOT_TESTS): Test for presence of sysroot
5298         references before running libtool --mode=finish, and for absence
5299         afterwards.
5300
5301         reorganize parsing of --mode=finish arguments
5302         * libltdl/config/ltmain.m4sh (func_mode_finish): Split arguments for
5303         directories and *.la files.
5304
5305         fix sysroot handling for deplibs of preopened libtool libs
5306         * libltdl/config/ltmain.m4sh: Pass $dependency_libs of preopened libtool
5307         through func_resolve_sysroot.
5308
5309         fix sysroot tests to pass on Fedora 13
5310         * tests/sysroot.at: Link $prefix/include into the sysroot as well, as
5311         required by newer GCC.
5312
5313 2010-07-29  Paolo Bonzini  <bonzini@gnu.org>
5314
5315         initial version of the NEWS entry
5316         * NEWS: Document sysroot support.
5317
5318         add sysroot test
5319         * Makefile.am (TESTSUITE_AT): Add tests/sysroot.at.
5320         * tests/sysroot.at: New.
5321
5322         emit sysrooted paths when installing .la files
5323         * libltdl/config/ltmain.m4sh (func_replace_sysroot): New.
5324         (func_mode_link): Prepend paths in $libdir with the sysroot.  Further,
5325         replace the sysroot with = (using func_replace_sysroot) whenever
5326         such a path is written in a .la file.
5327
5328         process postdeps to include sysrooted paths
5329         * libltdl/m4/libtool.m4 (_LT_FUNC_STRIPNAME_CNF): New (from Charles Wilson).
5330         (_LT_SYS_HIDDEN_LIBDEPS): Require it.  Use func_stripname_cnf to convert
5331         sysroot (-L= and -R=) usage in postdeps.  Adjust the code because -L, -R
5332         and -l flags will now always be separated from the rest of the argument.
5333
5334         handle sysrooted paths when reading dependencies to la files
5335         * libltdl/config/ltmain.m4sh (func_mode_execute, func_mode_install,
5336         func_mode_link): Whenever a .la file occurs in another .la file,
5337         expand the sysroot path in it.
5338
5339 2010-07-28  Paolo Bonzini  <bonzini@gnu.org>
5340
5341         teach libtool -L= and -R=
5342         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): New.
5343         (func_mode_link): Always pass result of stripping -L and -R to
5344         func_resolve_sysroot before using it.  Remove absolute path expansion
5345         when func_resolve_sysroot subsumes it.  Expand sysroot in -rpath.
5346         When processing dependent libraries also resolve sysroot paths there.
5347
5348         add --with-sysroot
5349         * libltdl/m4/libtool.m4 (_LT_HOST_NONCANONICAL, _LT_WITH_SYSROOT): New.
5350         (LT_SETUP): Require _LT_WITH_SYSROOT.
5351
5352         handle sysroot flags
5353         * libltdl/config/ltmain.m4sh (func_mode_link): Recognize --sysroot
5354         option.
5355
5356 2010-08-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5357
5358         * NEWS: Only bootstrapping needs new Automake and Autoconf.
5359
5360         check-interactive and check-noninteractive for both testsuites.
5361         * Makefile.am (COMMON_TESTS, TESTS): Split into ...
5362         (NONINTERACTIVE_TESTS, INTERACTIVE_TESTS): ... these new
5363         variables.
5364         (check-interactive-new): Rename from check-interactive.
5365         (check-noninteractive-new): Rename from check-noninteractive.
5366         (check-interactive-old, check-noninteractive-old): New targets.
5367         (check-interactive, check-noninteractive): Depend on the
5368         respective targets for the old and the new test suites.
5369         * doc/libtool.texi (Test descriptions): Simplify description
5370         about check-interactive and check-noninteractive.  Add index
5371         entries.
5372
5373         Adjust docs for renaming and for parallel-tests.
5374         * README: Update example TESTS setting.
5375         * README.alpha: Likewise.
5376         * doc/libtool.texi (Test descriptions): Update for test renaming,
5377         adjust descriptions accordingly.
5378
5379         Update VERBOSE handling for parallel-tests driver.
5380         * tests/defs.m4sh: Default to verbose output, drop now-unneeded
5381         handling of 'VERBOSE=no'.
5382         * README: Update example usage.
5383         * README.alpha: Likewise.
5384         * doc/libtool.texi (Test descriptions, When tests fail): Remove
5385         unneeded VERBOSE recommendations.  Point to per-test log files
5386         and test-suite.log summary file.
5387
5388         Enable parallel-tests test driver for the old testsuite.
5389         * configure.ac: New configure test to find out whether `make'
5390         supports order-only prerequisites; set @ORDER@ accordingly.
5391         (AM_INIT_AUTOMAKE): Enable parallel-tests option.
5392         * tests/defs.m4sh (prefix): Derive install prefix for tests
5393         from the test name, to avoid clashes.
5394         * Makefile.am (CXX_TESTS, F77_TESTS, FC_TESTS, COMMON_TESTS):
5395         Reformat.  Adjust for renamed tests.  Add dependencies between
5396         the respective log files of the tests, to ensure proper ordering.
5397         Use order-only dependencies if possible, between test groups that
5398         use the same directory.
5399         (clean-local-legacy): Remove `_inst-*' directories as well.
5400         Prompted by suggestion from Bob Friesenhahn.
5401
5402         New alias scripts for old tests run more than once.
5403         * tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
5404         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
5405         tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
5406         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
5407         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
5408         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
5409         tests/demo-pic-exec.test, tests/demo-pic-make.test,
5410         tests/demo-shared-exec.test, tests/demo-shared-inst.test,
5411         tests/demo-shared-make.test, tests/demo-shared-unst.test,
5412         tests/demo-static-exec.test, tests/demo-static-inst.test,
5413         tests/demo-static-make.test, tests/demo-static-unst.test,
5414         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
5415         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
5416         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
5417         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
5418         tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
5419         tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
5420         tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
5421         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
5422         tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
5423         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
5424         tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
5425         tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
5426         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
5427         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
5428         tests/tagdemo-shared-exec.test, tests/tagdemo-shared-make.test,
5429         tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
5430         tests/tagdemo-undef-exec.test, tests/tagdemo-undef-make.test:
5431         New files.
5432
5433         Require Automake 1.11.1 for Libtool, enable color-tests.
5434         * configure.ac (AM_INIT_AUTOMAKE): Require 1.11.1.  Enable
5435         color-tests.
5436         (LTDL_SUBDIR_LIBOBJS): Remove now-obsolete conditional and
5437         feature test for Autoconf 2.59 and Automake 1.9.x workaround.
5438         * Makefile.am: Simplify accordingly.
5439         * bootstrap: Remove obsolete WORKING_LIBOBJ_SUPPORT workarounds
5440         for Autoconf 2.59 and Automake 1.9.6.
5441
5442 2010-08-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
5443
5444         Fix syntax for cygwin-cross
5445         libltdl/m4/argz.m4: Add quotes around variable, which
5446         may contain the multiword value 'guessing no'.
5447
5448 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5449
5450         configure: use Autobuild AB_INIT if available.
5451         * configure.ac: Call AB_INIT if it is defined, with
5452         $autobuild_mode as argument, to be set at configure time.
5453         Set AB_VERSION to the Libtool version string.
5454         * HACKING: Update.
5455
5456         Fix getopt tests to skip with Autoconf < 2.61.
5457         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Skip the test
5458         if 'autom4te --language=m4sh' exits 63 because version 2.61 is
5459         required.  Allows the testsuite to complete successfully with
5460         Autoconf 2.59 and Automake 1.9.6.
5461
5462         Tidy and fix clean and distclean rules for old testsuite.
5463         * Makefile.am (clean-local-legacy): Use $(CONF_SUBDIRS) instead
5464         of hard-coding the list of test directories.  Use
5465         $(AM_MAKEFLAGS).
5466         (fake-distclean-legacy): New phony rule, to create fake Makefile
5467         files if needed so that the automake-generated
5468         distclean-recursive rule can work properly.
5469         (distclean_recursive): New helper variable.
5470         (distclean-recursive): Depend on fake-distclean-legacy.
5471
5472 2010-08-22  Paolo Bonzini  <bonzini@gnu.org>
5473
5474         Fix sed_make_literal_regex.
5475         * libltdl/config/general.m4sh (sed_make_literal_regex): Fix
5476         definition.
5477
5478 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
5479
5480         Factor the sed command used to make a regex from a literal.
5481         * libltdl/config/general.m4sh (sed_make_literal_regex): New.
5482         * libltdl/config/ltmain.m4sh
5483         (func_cygming_dll_for_implib_fallback_core): Use it.  Suggested
5484         by Ralf Wildenhues.
5485
5486 2010-08-21  Rainer Tammer <tammer@tammer.net>  (tiny change)
5487
5488         Avoid issues with AIX resident shared libraries in old testsuite.
5489         * tests/defs.m4sh [aix]: Remove file mode permission for others,
5490         so shared libraries are not kept in memory after execution.
5491         Fixes failures of repeated mdemo-inst.test with on AIX 5.3.
5492
5493 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5494
5495         Skip part of versioning test on AIX.
5496         * tests/versioning.at (versioning): The AIX linker always
5497         records the unversioned library name, even with runtimelinking,
5498         so skip the execution test for the incompatibly upgraded
5499         library.
5500         Report by Rainer Tammer.
5501
5502         Remove dead code from versioning test.
5503         * tests/versioning.at (versioning): No need to build unused
5504         prog3.
5505
5506 2010-08-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5507
5508         Don't hide the table of contents in the manual.
5509         * doc/libtool.texi: Move the table of contents to the beginning.
5510         Prompted by patch from Bruno Haible against Automake.
5511
5512         Remove superfluous dependency in Makefile.am.
5513         * Makefile.am (tests/demo-conf.test): Remove dependency on
5514         libtool, this test is a primary source and not generated.
5515
5516         Bump copyright years in manual.
5517         * doc/libtool.texi: Bump copyright years.
5518
5519 2010-08-13  Peter Rosin  <peda@lysator.liu.se>
5520
5521         Allow the use of a listing file if the archiver supports it.
5522         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Move detection
5523         of a suitable archiver...
5524         (_LT_PROG_AR): ...to here. New macro, also detect if the
5525         archiver supports a listing file with the new variable
5526         archiver_list_spec.
5527         * libltdl/config/ltmain.m4sh: If the archiver supports a listing
5528         file, use it when max_cmd_len is exceeded.  This is needed for
5529         tool chains such as MSVC which do not support piece by piece
5530         linking (-r -o).
5531         * doc/libtool.texi (libtool script contents): Update with
5532         archiver_list_spec description.
5533
5534 2010-08-10  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
5535
5536         Make testsuite compatible with Autoconf 2.62 again.
5537         * tests/getopt-m4sh.at (AT_CHECK): Autotest 2.62 chokes on unquoted
5538         '#' in AT_CHECK, so replace all uses with '@%:@' quadrigraph.
5539         Suggested by Eric Blake <eblake@redhat.com>
5540         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5541
5542 2010-08-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5543
5544         Fix more problematic code from "Add func_append_quoted and do..."
5545         * libltdl/config/ltmain.m4sh (func_mode_link): Revert back
5546         func_append instances that as assignments relied on the shell
5547         not performing word splitting on the right hand side of the
5548         assignment.
5549
5550         Fix another typo on "Add func_append_quoted and do..."
5551         * libltdl/config/ltmain.m4sh (func_mode_link): Fix regression in
5552         computation of finalize_rpath introduced in v2.2.10-40-g0da7d80,
5553         fixing several testsuite failures on AIX.
5554         Report by Rainer Tammer.
5555
5556 2010-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5557
5558         Avoid unwanted error message in configure output.
5559         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Try print
5560         in subshell, so eventual `print: not found' is hidden reliably.
5561
5562         Fix compilation of program sources on AIX.
5563         * tests/lt_dlopenext.at (lt_dlopenext error messages): Do not
5564         use $LIBTOOL when compiling plain object, AIX by default does
5565         not enable static archives.
5566         * tests/ltdl-libdir.at (libdir of installed modules): Likewise.
5567         Report by Rainer Tammer.
5568
5569         Do not call toplevel configure in non-VPATH build.
5570         * tests/deplibs-mingw.at (deplibs without file command): Use
5571         LT_AT_CONFIGURE for consistency, update comment about why it
5572         might fail.
5573         * tests/pic_flag.at (override pic_flag at configure time): Skip
5574         test if we are building in-tree.
5575         Report by Rainer Tammer.
5576
5577         Allow running pic_flag test with different shell.
5578         * tests/testsuite.at (LT_AT_CONFIGURE): Accept optional second
5579         argument specifying the configure script to run.
5580         * tests/pic_flag.at (override pic_flag at configure time):
5581         Use LT_AT_CONFIGURE.
5582
5583         Ensure not to reverse preserving of --debug for relinking/finish.
5584         * libltdl/config/ltmain.m4sh (func_check_version_match): Only
5585         preserve '--debug' switch if $opt_debug is not equal to ':'.
5586         * tests/help.at (debug tracing): New test group.
5587         Report by Rainer Tammer.
5588
5589 2010-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5590
5591         Fix AC_NO_EXECUTABLES test failure on AIX.
5592         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Wrap link
5593         test in AC_CACHE_VAL, using cache variable $lt_cv_aix_libpath.
5594         * tests/no-executables.at (AC_NO_EXECUTABLES): Preset it, to
5595         avoid link test.
5596         Bug report by Rainer Tammer.
5597
5598         Fix ltdl-libdir test for C++ compilers.
5599         * tests/ltdl-libdir.at (libdir of installed modules): Declare
5600         module function as extern "C".
5601
5602 2010-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5603
5604         Let `libtool' without arguments point to `--help' again.
5605         * libltdl/config/ltmain.m4sh (func_check_version_match):
5606         Remove duplicate and wrong error check.
5607         * tests/help.at (standard command line options): Extend test.
5608         Report by Rainer Tammer.
5609
5610         Avoid syntax error due to shift of nonexistent parameter.
5611         * libltdl/config/ltmain.m4sh <command-line handling>: Only shift
5612         if there is a positional parameter to shift.  Fixes `libtool
5613         --help' when dash is used.
5614         Report by Rainer Tammer.
5615
5616         Fix testsuite errors due to shell quoted parameter expansion issue.
5617         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Insert space
5618         between double-quoted and unquoted shell parameter, as bash
5619         4.0.28 doesn't add one in its output if the expansion of the
5620         second one starts with a space.
5621         (short option splitting, enhanced shell short option splitting)
5622         (long option splitting, XSI long option splitting): Add space in
5623         expected output.
5624         Fixes testsuite failures on AIX, FreeBSD, etc.
5625         Report by Rainer Tammer.
5626
5627 2010-08-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5628
5629         Fix build failure with AIX sh due to shell quoting error.
5630         * libltdl/config/ltmain.m4sh (func_append_quoted): Document
5631         that this function inserts a separator space.
5632         (func_mode_compile): Do not pass extra space here.
5633         Fixes regression introduced in v2.2.10-49-gc13532a.
5634         Report by Rainer Tammer.
5635
5636 2010-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5637
5638         Fix pic_flag test unportabilities.
5639         * tests/pic_flag.at (override pic_flag at configure time): Skip
5640         test if the compiler produces a warning containing `fpic'.
5641         Do not use nonportable `grep -e', for Solaris.
5642         Report by Charles Wilson.
5643
5644 2010-08-01  Paolo Bonzini  <bonzini@gnu.org>
5645
5646         Fix bug in postdeps computation
5647         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Actually
5648         concatenate $prev and $p.
5649
5650 2010-07-26  Charles Wilson  <libtool@cwilson.fastmail.fm>
5651
5652         Don't always skip XSI tests
5653         * tests/getopt-m4sh.at: Use new signature as implemented by
5654         de8a0992b21b76a13c302cf48588ad5f6042595c, when determining
5655         whether to test Extended-shell functions.
5656
5657 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
5658
5659         * tests/stresstest.at: Link with main.lo when liba is shared
5660         and linking main with -no-install.
5661
5662 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
5663
5664         * tests/stresstest.at [MSVC]: dllimport all imported
5665         variables.
5666
5667 2010-07-17  Peter Rosin  <peda@lysator.liu.se>
5668
5669         dllimport the variable for MSVC in link-order.at
5670         * tests/link-order.at [MSVC]: Makes the test pass by dllimporting
5671         imported variables when working with shared libraries.
5672
5673 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
5674             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5675
5676         Make preloading heed libname_spec.
5677         Fixes testsuite failure for lt_dladvise.at on MSYS/MSVC.
5678         * libltdl/ltdl.c (libprefix): New static variable describing
5679         the prefix of static archives.
5680         (try_dlopen): Use libprefix.
5681         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Export prefix of static
5682         archives to config.h. Also fix assignment of LTDLOPEN to be more
5683         efficient and less error prone while at it.
5684
5685 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
5686
5687         Rename _LT_PROG_XSI_REPLACE macro to _LT_PROG_FUNCTION_REPLACE.
5688         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Rename to
5689         _LT_PROG_REPLACE_SHELLFNS.
5690         (_LT_PROG_XSI_REPLACE): Rename to _LT_PROG_FUNCTION_REPLACE.
5691         (_LT_PROG_FUNCTION_REPLACE): Change decorator comment to use
5692         'Extended shell' rather than 'XSI' on successful replacement.
5693         * libltdl/config/general.m4sh (func_dirname, func_basename)
5694         (func_dirname_and_basename, func_stripname): Change decorator
5695         comment to use 'extended shell' rather than 'XSI' on fallback
5696         implementations.
5697         * libltdl/config/getopt.m4sh (func_split_short_opt)
5698         (func_split_long_opt): Ditto.
5699         * libltdl/config/ltmain.m4sh (func_append, func_append_quoted)
5700         (func_arith, func_len, func_lo2o, func_xform): Ditto.
5701         * tests/getopt-m4sh.at (_LT_AT_XSI_FUNC_EXTRACT): Rename to
5702         _LT_AT_EXTENDED_SHELL_FUNC_EXTRACT.
5703         (_LT_AT_EXTENDED_SHELL_FUNC_EXTRACT): Change regular expression to
5704         match new replacable function decorator comments.
5705
5706 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
5707
5708         Optimize assignment of output_la.
5709         * libltdl/config/ltmain.m4sh (func_mode_link): Save two fork/exec
5710         instances.
5711         Report by Ralf Wildenhues.
5712
5713 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
5714
5715         Fix a cut-n-pasto in "2010-07-07 Charles Wilson" patch.
5716         * libltdl/config/ltmain.m4sh (func_mode_link): Remove spurious
5717         variable dereference.
5718
5719 2010-07-07  Gary V. Vaughan  <gary@gnu.org>
5720
5721         Tidy m4 comment header underline.
5722         * libltdl/m4/libtool.m4 (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): Make
5723         sure hyphens in function name comment header underline line up.
5724
5725 2010-07-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
5726
5727         [cygwin|mingw] fix dlpreopen with --disable-static
5728         * libltdl/config/general.m4sh (func_tr_sh): New function.
5729         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [cygwin|mingw]:
5730         Obtain DLL name corresponding to import library by using value
5731         stored in unique variable libfile_$(transliterated implib name).
5732         If that fails, use $sharedlib_from_linklib_cmd to extract DLL
5733         name from import library directly. Also, properly extract dlsyms
5734         from the import library.
5735         (func_mode_link) [cygwin|mingw]: Prefer to dlpreopen DLLs
5736         over static libs when both are available.  When dlpreopening
5737         DLLs, use linklib (that is, import lib) as dlpreopen file,
5738         rather than DLL. Store name of associated la file in
5739         unique variable libfile_$(transliterated implib name)
5740         for later use.
5741         (func_win32_libid): Accomodate pei-i386 import libs
5742         as well as pe-i386.
5743         (func_cygming_dll_for_implib): New function.
5744         (func_cygming_dll_for_implib_fallback): New function.
5745         (func_cygming_dll_for_implib_fallback_core): New function.
5746         (func_cygming_gnu_implib_p): New function.
5747         (func_cygming_ms_implib_p): New function.
5748         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust sed
5749         expressions for lt_cv_sys_global_symbol_to_c_name_address and
5750         lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
5751         as trailing space after module name is optional.
5752         (_LT_LINKER_SHLIBS) [cygwin|mingw][C++]:
5753         Set exclude_expsyms correctly for $host. Simplify regular
5754         expression in export_symbols_cmds.
5755         (_LT_LINKER_SHLIBS) [cygwin|mingw|pw32][C]: Set exclude_expsyms
5756         correctly for $host. Enable export_symbols_cmds to identify
5757         DATA exports by _nm_ prefix.
5758         (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): New macro sets
5759         sharedlib_from_linklib_cmd variable.
5760         (_LT_DECL_DLLTOOL): New macro ensures DLLTOOL is always set.
5761
5762 2010-07-05  Peter Rosin  <peda@lysator.liu.se>
5763
5764         * tests/export.at [MSVC]: dllimport all imported variables.
5765
5766 2010-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5767             Peter Rosin  <peda@lysator.liu.se>
5768
5769         Support for response files with $NM.
5770         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
5771         <nm_file_list_spec>: New tag variable. Set it to '@' if input
5772         files can be passed to $NM in a file named with the '@' option.
5773         * libltdl/config/ltmain.m4sh (func_mode_link): When
5774         nm_file_list_spec is nonempty, use it to avoid skipped_export.
5775         * doc/libtool.texi (libtool script contents): Document
5776         new variable.
5777
5778 2010-07-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5779
5780         Fix ccache test for MSVC.
5781         * tests/static.at (ccache -all-static): Ignore compiler stderr.
5782         Reported by Peter Rosin.
5783
5784 2010-07-03  Charles Wilson  <libtool@cwilson.fastmail.fm>
5785
5786         Avoid false failures caused by filesystem interaction
5787         * tests/dlloader-api.at (dlloader API): Use uglified names for
5788         pseudo-modules.
5789
5790 2010-07-03  Peter Rosin  <peda@lysator.liu.se>
5791
5792         Fix typo in "Add func_append_quoted and do..."
5793         * libltdl/config/ltmain.m4sh (func_mode_compile): Use
5794         func_append_quoted instead of func_append.
5795
5796 2010-07-02  Peter Rosin  <peda@lysator.liu.se>
5797
5798         Don't trigger file name expansion when embedding manifests.
5799         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
5800         [ cygwin, mingw, cegcc ] <cl*>: Remove all spaces in the
5801         case statement of postlink_cmds to make file name expansion
5802         more unlikely.
5803         (_LT_LANG_CXX_CONFIG): Likewise, but also add the missing |.
5804
5805 2010-07-01  Peter Rosin  <peda@lysator.liu.se>
5806
5807         Fix regression caused by "Add func_append_quoted and do..."
5808         * libltdl/config/ltmain.m4sh (func_mode_link): Remove leftover
5809         "_libs" trash.
5810
5811 2010-06-28  Peter Rosin  <peda@lysator.liu.se>
5812
5813         For MSVC, embed the manifest as a resource in the executable.
5814         Fixes a lot of testsuite failures with MSVC 2003 (v8.0) and
5815         above (and perhaps also MSVC .Net) related to running programs
5816         that have been moved (e.g. installed) without their manifests
5817         also having been moved.
5818         * libltdl/m4/libtool.m4 (_LT_PATH_MANIFEST_TOOL): New macro
5819         that locates the Manifest Tool (mt) and verifies that it is
5820         indeed the manifest tool. The result is stored in the new
5821         variable MANIFEST_TOOL.
5822         (_LT_LINKER_SHLIBS) <postlink_cmds>: New tag variable.
5823         [ cygwin, mingw, cegcc ] <cl*>: Embed the manifest file as a
5824         resource. Make sure the embedding work regardless of if the
5825         @OUTPUT@ file name includes a trailing $EXEEXT.
5826         (_LT_LANG_CXX_CONFIG): Likewise.
5827         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Require the above
5828         _LT_PATH_MANIFEST_TOOL.
5829         * libltdl/config/ltmain.m4sh (func_mode_link): After linking
5830         a program, replace @OUTPUT@ in $postlink_cmds and then execute
5831         the commands.
5832         * doc/libtool.texi (libtool script contents): Document
5833         new postlink_cmds variable.
5834         (LT_INIT): Add that the MANIFEST_TOOL environment variable can
5835         be used to override the manifest tool to use.
5836         * tests/exeext.at: New. Make sure linking with both -o prog
5837         and -o prog$EXEEXT works.
5838         * Makefile.am (TESTSUITE_AT): Update.
5839         (TESTS_ENVIRONMENT): Propagate $(MANIFEST_TOOL) to the
5840         testsuite.
5841         * NEWS: Add note of the new MANIFEST_TOOL environment variable.
5842
5843 2010-06-24  Peter Rosin  <peda@lysator.liu.se>
5844
5845         Add MSVC support.
5846         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
5847         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin]: Add
5848         support for the Microsoft C/C++ Compiler (cl) relying on help
5849         from the compile script in Automake.
5850         * NEWS: Add note of the above.
5851
5852 2010-07-01  Gary V. Vaughan  <gary@gnu.org>
5853
5854         Skip `enhanced shell option appending' test when not available.
5855         * tests/getopt-m4sh.at [enhanced shell option appending]:
5856         _LT_AT_XSI_FUNC_EXTRACT will not be able to find the enhanced
5857         libtool func_append function if the replacement wasn't substituted
5858         by configure, since the decorator comments will be different - in
5859         that case simply skip the test.
5860
5861 2010-06-30  Gary V. Vaughan  <gary@gnu.org>
5862
5863         Add func_append test cases for smart and retarded implementations.
5864         * tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): New
5865         macro to extract a fallback function implementation from
5866         ltmain.m4sh.
5867         [option appending]: Use it for a test of the fallback
5868         implementation of func_append.
5869         [enhanced shell option appending]: And also test the enhanced
5870         implementation.
5871         * libltdl/config/ltmain.m4sh (func_append_quoted): Fix missing \\
5872         to escape a quoted space for eval.
5873         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Fix missing $ in
5874         dereference of func_append inline replacement for retarded
5875         shells.
5876
5877 2010-06-29  Gary V. Vaughan  <gary@gnu.org>
5878
5879         Correct func_split_short_opt comment cut-n-pasto.
5880         * libtool/config/getopt.m4sh (func_split_short_opt): Fix
5881         the function comment.
5882
5883         Use a real XSI compliant func_split_short_opt substitution.
5884         * libtool/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Remove
5885         test ${foo:n:m} substrings, instead adding a ${foo%??} check
5886         to the existing XSI tests.
5887         (_LT_PROG_XSI_SHELLFNS): Remove the ${foo:n:m} based
5888         func_split_short_opt substitution in favour of a properly
5889         XSI compliant substitution.
5890         Suggested by Paolo Bonzini.
5891
5892 2010-06-28  Gary V. Vaughan  <gary@gnu.org>
5893
5894         Add func_append_quoted and do inline func_append substitutions.
5895         * libtool/config/ltmain.m4sh: Replace all occurrences of
5896         `foo="$foo bar"' with func_append. No decorator comment was
5897         added since /func_append [a-zA-Z0-9_]* "/ is already an
5898         excellent match regexp, and additional comments would only
5899         complicate things.
5900         (func_append_quoted): New function that quotes a value with
5901         func_quote_for_eval before appending it.  To avoid quoting the
5902         whitespace in the passed value, a single whitespace is added
5903         automatically.  Changed callers where possible.
5904         * libtool/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Perform a
5905         `+=' implementation substitution for func_append_quoted.  More
5906         importantly, systematically replace matching func_append calls
5907         with inline `+=' when supported (for maximum speed), and
5908         longhand `foo="$foo bar"' otherwise to avoid the function
5909         overhead.
5910
5911         Add an XSI replacement for func_split_short_opt, with test cases.
5912         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Remove 'v' now
5913         that getopt.m4sh doesn't steal that letter for the --version
5914         short option.
5915         * libltdl/config/ltmain.m4sh (M4SH_GETOPTS): We can now use 'v'
5916         as a short option for '--verbose'.
5917         * libltdl/config/getopt.m4sh (m4go_printopts): Add back in the
5918         leading '-' for remaining non-argument short options.
5919         (func_split_short_opt): Use the correct sed script variable.
5920         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also ensure
5921         that XSI substring extraction is supported.
5922         (_LT_PROG_XSI_SHELLFNS): Use XSI substring extraction to split
5923         short options to avoid unnecessary forks if the host shell
5924         supports that.
5925         * tests/getopt-m4sh.at: New tests for getopt.m4sh coverage.
5926         * Makefile.am (TESTSUITE_AT): Add getopt-m4sh.at.
5927         (TESTS_ENVIRONMENT): Pass M4SH and SED for substition into the
5928         m4sh expansion performed in tests/getopt-m4sh.at.
5929
5930 2010-06-27  Gary V. Vaughan  <gary@gnu.org>
5931
5932         Add missing case branch terminators.
5933         * libltdl/config/ltmain.m4sh: Fixed everal case branches with
5934         missing ';;' terminators.
5935
5936         Use TAB-SPACE in preference to SPACE-TAB.
5937         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): Some editors
5938         might optimise away the SPACE in SPACE-TAB sequences, so use
5939         TAB-SPACE just in case.
5940         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5941
5942         Amend a missed opt_mode rename instance in ltmain.m4sh.
5943         * libltdl/config/ltmain.m4sh <mode>: Rename to opt_mode.
5944
5945         Fix portability regressions in today's earlier changeset.
5946         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): `sed -i' is not
5947         portable; use `mv -f ...|| cp -f ...' instead.
5948         Add an initial backslash to sed `c' substitutions with leading
5949         whitespace, so that indentation is not removed by some non-POSIX
5950         compliant sed implementations.
5951         (_LT_PROG_XSI_SHELLFNS): Display a diagnostic warning message if
5952         one or more XSI function replacements failed.
5953
5954         getopt.m4sh generated libtool option parser, and XSI improvements.
5955         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Moved portable
5956         shell versions of various utility functions from here...
5957         * libltdl/config/getopt.m4sh (func_split_long_opt): ...to here...
5958         * libltdl/config/general.m4sh (func_dirname, func_basename)
5959         (func_dirname_and_basename, func_strip_name): ...here...
5960         * libltdl/config/ltmain.m4sh (func_append, func_arith, func_len)
5961         (func_lo2o, func_xform): ...and here.
5962         * libltdl/config/libtool.m4 (_LT_PROG_XSI_REPLACE): New macro that
5963         expands into a sed command for replacing the contents of a
5964         suitably decorated shell function with an alternate XSI
5965         implementation.
5966         (_LT_PROG_XSI_SHELLFNS): Use it to replace the portable shell
5967         versions of the functions above with equivalent XSI
5968         implementations that avoid unnecessary forks if the host shell
5969         supports that.
5970         * libltdl/config/ltmain.m4sh: Replace hand written shell code
5971         with a call to M4SH_GETOPTS. Rename some option variables in
5972         the client code to match the generated option parser settings.
5973         * libltdl/config/general.m4sh (func_echo, func_error)
5974         (func_warning): Use $opt_mode instead of obsoleted $mode in
5975         message leader.
5976         * libltdl/config/getopt.m4sh (m4_version_prereq): This file
5977         requires m4sugar.m4 from Autoconf-2.61 or newer. 
5978
5979 2010-06-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
5980
5981         [cygwin] Refactor C++ exception handling for Win32 correctness
5982         * tests/exception.at (common.h): New file, refactored from
5983         (module.h): Move declaration of modexc to libcommon.
5984         Include common.h. Use explicit import/export markings for
5985         symbols when building on win32 or cygwin.
5986         (common.cpp): New file.
5987         (module.cpp): Ensure correct symbols markings when including
5988         module.h.
5989         (lib.h): Use explicit import/export markings for symbols
5990         when building on win32 or cygwin.
5991         (lib.cpp): Ensure correct symbol markings when including lib.h.
5992         (main.cpp): Include common.h.
5993         (commands): Ensure correct symbol markings when compiling
5994         main.cpp, and lib.cpp, and module.cpp. Add command to compile
5995         common.cpp, and to link libcommon.la.  Add libcommon.la when
5996         linking module.la and main.  Add command to install libcommon.la.
5997
5998 2010-06-21  Gary V. Vaughan  <gary@gnu.org>
5999
6000         Ensure getopts.m4sh is compatible with Autoconf-2.61 and newer.
6001         * libltdl/config/getopt.m4sh (m4_chomp): Ensure this macro is
6002         implemented even if Autoconf's m4sugar.m4 doesn't provide it.
6003         (m4go_expand): New macro based on Autoconf-2.64 m4_expand. Use
6004         it everywhere incase m4sugar.m4 doesn't have an implementation.
6005         (m4_ifnblank): Replace all uses with m4_ifval, which was
6006         available long before m4_ifnblank was introduced.
6007
6008 2010-06-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6009
6010         Fix clean mode for HP-UX 11.31 sh.
6011         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not try
6012         to match a null string in a case pattern, even with surrounding
6013         spaces.  Fixes `lt_dlopenadvise library loading' test.
6014
6015         Add comment for exception handling module unloading issue.
6016         * tests/exceptions.at (C++ exception handling): Add comment
6017         for last patch.
6018
6019         Fix flags test failure when ld is used as linker.
6020         * tests/flags.at (passing CC flags through libtool): When $LD
6021         is used for linking libraries, ensure flags passed with `-Wc,'
6022         are not passed through to $LD, but flags passed with `-Wl,' use
6023         $wl when linking programs.  Fixed testsuite failure on HP-UX
6024         10.20.
6025
6026 2010-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
6027
6028         [cygwin] Fix segfault in C++ exception handling test
6029         * tests/exceptions.at (main.cpp:exceptions_in_module):
6030         Move dlclose outside catch block; otherwise __cxa_end_catch
6031         (part of the cygwin g++ ABI) accesses pointers to data inside
6032         unloaded DLL. This is a platform ABI-specific bug, but is
6033         likely common to many platforms' g++ and/or other C++
6034         compilers.
6035
6036 2010-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6037
6038         Fix srcdir computation for manual runs of old tests.
6039         * tests/defs.m4sh: Strip trailing `/tests' from srcdir, to allow
6040         `$srcdir/tests/FOO.test' to be run from the top build directory.
6041
6042         Clean up @var handling in the manual.
6043         * doc/libtool.texi: Throughout the manual, replace @var with
6044         @samp or @code as appropriate, ensure the argument of remaining
6045         @var uses are lower-case.
6046
6047         Let the bootstrap script fail upon errors.
6048         * bootstrap: Enable errexit.
6049
6050         Fix execute mode test for OSF/1 5.1.
6051         * tests/execute-mode.at (execute mode): Do not use grep -F
6052         with an empty pattern.
6053         * THANKS: Update.
6054         Report by Jay K.
6055
6056         Use config.cache variable for PIC flag, to allow override.
6057         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) <lt_prog_compiler_pic>:
6058         Save result, and allow override, through cache variable
6059         lt_cv_prog_compiler_pic{,_CXX,_F77,_FC}.  The cache variable
6060         needs to contain an eventual -DPIC.
6061         * tests/pic_flag.at (override pic_flag at configure time):
6062         New file, new test.
6063         * Makefile.am (TESTSUITE_AT): Update.
6064         * NEWS, THANKS: Update.
6065         Suggestion by Joakim Tjernlund and Paolo Bonzini.
6066
6067 2010-06-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6068
6069         Optimize func_ltwrapper_scriptname to assume a cwrapper.
6070         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname): Do not
6071         call func_ltwrapper_executable_p again here, this function is
6072         documented to allow being called with wrapper executables.
6073
6074         Fix bootstrap script to cope with changed AC_INIT arguments.
6075         * bootstrap: When extracting PACKAGE and VERSION from AC_INIT
6076         arguments, be sure to remove a 'GNU ' prefix and lowercase the
6077         package name for PACKAGE.  Also set PACKAGE_NAME and PACKAGE_URL
6078         appropriately for GNU software.  Pass these variables to the
6079         make commands creating tests/package.m4 and other files.
6080         * Makefile.am (edit): Fix substitution of PACKAGE_NAME and
6081         PACKAGE_STRING.
6082         * libltdl/config/announce-gen.m4sh: Use @PACKAGE@ not
6083         @PACKAGE_STRING@.
6084
6085 2010-06-15  Peter Rosin  <peda@lysator.liu.se>
6086
6087         On Windows, find potential libs regardless of file name case.
6088         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD),
6089         libltdl/config/ltmain.m4sh (func_mode_link): On Windows,
6090         find potential libs regardless of file name case.
6091         * tests/nocase.at: New test, to check for regressions
6092         of the above.
6093         * Makefile.am: Add above new test.
6094         * doc/libtool.texi (libtool script contents): Document
6095         new variables.
6096         * NEWS: Updated.
6097
6098 2010-06-15  Philip Allison  <philip.allison@smoothwall.net>  (tiny change)
6099
6100         Avoid GCC -Wall compiler warning in dlopen self test.
6101         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Fix unused
6102         variable warning in test program.
6103         * THANKS: Update.
6104
6105 2010-06-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6106
6107         Fix cleaning of uninstalled w32 shell wrapper in subdirs.
6108         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not
6109         override global objdir variable, instead use odir for the
6110         directory of to-be-removed files.  Drop unneeded origobjdir.
6111         Report by Charles Wilson.
6112
6113 2010-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6114
6115         Enable colored Autotest testsuite output if available.
6116         * tests/testsuite.at: Move AT_INIT call down to late in the
6117         file, all prior code can go beforehand.
6118         Call AT_COLOR_TESTS if defined.
6119
6120 2010-06-14  Peter O'Gorman  <peter@pogma.com>
6121
6122         Pass resident test with --disable-shared too.
6123         * tests/resident.at: use LTDL_SET_PRELOADED_SYMBOLS.
6124
6125 2010-06-13  Peter O'Gorman  <peter@pogma.com>
6126
6127         Test with --disable-shared at release time too.
6128         * HACKING: Note it.
6129
6130         Avoid failure for --disable-shared.
6131         * tests/lt_dladvise.at: Hack.
6132
6133         Use LTDL_SET_PRELOADED_SYMBOLS to avoid failure.
6134         * tests/exceptions.at: Use it.
6135
6136 2010-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6137
6138         Print Libtool project URL in program --help output.
6139         * configure.ac (AC_INIT): Set PACKAGE argument to `GNU Libtool',
6140         so Autoconf knows this is GNU software.  For Autoconf < 2.64,
6141         if AC_PACKAGE_URL is not defined, substitute PACKAGE_URL.
6142         * Makefile.am (edit): Substitute PACKAGE_URL.
6143         ($(srcdir)/tests/package.m4): Also depend on Makefile.am.
6144         Define AT_PACKAGE_URL, for `tests/testsuite --help' output.
6145         * libltdl/config/getopt.m4sh (func_help): Also extract comment
6146         lines that mention a home page and general GNU help.
6147         * libltdl/config/ltmain.m4sh: Use @PACKAGE_BUGREPORT@ instead of
6148         hard-coded list address.  Also mention Libtool home page and
6149         general GNU help web page.
6150         * libtoolize.m4sh: Likewise.
6151
6152 2010-06-12  Peter Rosin  <peda@lysator.liu.se>
6153             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6154
6155         Improve libdir usage from within ltdl on MinGW.
6156         * libltdl/ltdl.c (parse_dotla_file) [__WINDOWS__]: Read the
6157         libdir entry in the .la file, but accept it only if it is not
6158         a unix-style absolute name.
6159         * tests/ltdl-libdir.at: New test that checks if ltdl finds an
6160         installed module via the libdir variable in the .la file.  On
6161         MinGW, use a Windows-style libdir name including drive spec.
6162         * Makefile.am: Add above.
6163
6164 2010-06-11  Peter O'Gorman  <peter@pogma.com>
6165
6166         Skip bindir install test if we're not building shared.
6167         * tests/bindir.at: Skip install test if necessary.
6168         * THANKS: Update.
6169         Report by Michael E Faenza.
6170
6171 2010-06-11  Gary V. Vaughan  <gary@gnu.org>
6172
6173         Use getopt.m4sh to generate libtoolize option parser.
6174         * libtoolize.m4sh: Replace hand written shell code with a
6175         call to M4SH_GETOPTS.  Move some premature initialization
6176         from the preamble to the main part of the script.  Exit with
6177         an error on spurious additional non-option arguments.
6178         (envopts): Integrate LIBTOOLIZE_OPTIONS pre-parsing into the
6179         main option parsing loop.
6180         (opt_copy): Use in place of and in the reverse sense of the
6181         old opt_link variable.
6182
6183 2010-06-10  Peter O'Gorman  <peter@pogma.com>
6184
6185         Create reloadable object files with non-pic objects too.
6186         * libltdl/config/ltmain.m4sh: When not building a shared
6187         library, use the non-pic objects to create a reloadable
6188         object, because pic objects do not exist.
6189
6190 2010-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6191
6192         Ensure libltdl is up to date for check-local.
6193         * Makefile.am (LTDL_BOOTSTRAP_DEPS): New variable.
6194         (all-local): Use it to simplify dependencies.
6195         (testsuite_deps_uninstalled): Add $(LTDL_BOOTSTRAP_DEPS).
6196         Report by Peter Rosin.
6197
6198 2010-06-10  Gary V. Vaughan  <gary@gnu.org>
6199
6200         Support shell tracing inside functions even with ksh.
6201         * libltdl/config/getopt.m4sh: Set $opt_debug to be either `:'
6202         or `set -x' depending on whether --debug was parsed to match
6203         usage in libtoolize.m4sh and ltmain.m4sh.
6204         * clcommit.m4sh, libltdl/config/announce-gen.sh: Instead of
6205         `$opt_debug && ...', use `test "$opt_debug" != ":" && ...'.
6206         * clcommit.m4sh, libltdl/config/announce-gen.m4sh,
6207         libltdl/config/getopt.m4sh, libltdl/connfig/mailnotify.m4sh:
6208         Execute at the start of functions to cater to ksh, which
6209         resets `-x' inside shell functions.
6210
6211         Fix a typu in HACKING.
6212         * HACKING (Release Procedure): s/Makeflie/Makefile/.
6213
6214 2010-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6215
6216         Factorize testing gcj installation in the testsuite.
6217         * tests/testsuite.at (LT_AT_TAG): For the GCJ tag, actually
6218         try to compile a .java file when deciding whether to skip.
6219         (LT_AT_EXEC_TAG): New macro, to also ensure runnability.
6220         * tests/convenience.at (Java convenience archives): Use
6221         LT_AT_EXEC_TAG, simplify accordingly.
6222         * tests/flags.at (passing lt_tag flags through libtool): Use
6223         m4_defn for tag so LT_AT_TAG works.
6224         * tests/infer-tag.at (GCJ inferred tag): Simplify.
6225         * THANKS: Update.
6226         Report by Warren Dodge.
6227
6228 2010-06-09  Peter O'Gorman  <peter@pogma.com>
6229
6230         Skip demo-nopic tests if SELinux policy will cause failure.
6231         * tests/demo-nopic.test: Check SELinux policy and skip if
6232         necessary.
6233
6234 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
6235
6236         Set SCM version number to 2.2.11a.
6237         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6238         number to 2.2.11a.
6239         * NEWS: Updated.
6240
6241         GNU Libtool 2.2.10 was released.
6242
6243         Prepare for next release.
6244         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version number
6245         to 2.2.10.
6246         * NEWS: Update version number.
6247
6248         Fix a quoting bug with ./commit -a 'A U Thor'.
6249         * clcommit.m4sh (func_commit): Use func_show_eval when calling
6250         git, so that the previously func_quote_for_eval()ed $git_flags is
6251         expanded properly.
6252
6253 2009-09-15  Peter Rosin  <peda@lysator.liu.se>
6254
6255         Don't try the MSYS libdir path on MinGW.
6256         * libltdl/ltdl.c (parse_dotla_file) [mingw]: The absolute
6257         libdir path in the .la file is recorded as an MSYS (POSIX
6258         style) path. Make sure it isn't tried when locating the
6259         shared library.
6260         * NEWS: Updated.
6261
6262 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
6263
6264         Simplify license variations, and add missing license texts.
6265         * ChangeLog, ChangeLog.1996, ChangeLog.1997, ChangeLog.1998,
6266         ChangeLog.1999, ChangeLog.2000, ChangeLog.2001, ChangeLog.2002,
6267         ChangeLog.2003, ChangeLog.2004, ChangeLog.2005, ChangeLog.2006,
6268         ChangeLog.2007, ChangeLog.2008, ChangeLog.2009, NEWS: Add
6269         all-permissive license.
6270         * HACKING, README, README.alpha, TODO: Relax license to RMS
6271         encouraged all-permissive terms.
6272         * libltdl/README: Ditto. I added the original license text in
6273         2007, and there's no need for it to be so long for such a trivial
6274         file.
6275         * libltdl/config/getopt.m4sh, libltdl/general.m4sh: Cvs-utils is
6276         dead, and I am the author of these files, so consolidated license
6277         terms to match regular Libtool licensing.
6278         * HACKING (Licensing Rules): Update wording, and list of files for
6279         the all permissive license.
6280         (GPL with CVS-Utils exception clause): Removed.  No files have these 
6281         license any more.
6282         (GPL with Libtool exception clause): Ditto, only libltdl/README
6283         used to be distributed with this variation.
6284         * AUTHORS: Add GPL license text.
6285         
6286         Fix a type in the 2.2.8 release notes.
6287         * NEWS: s/ romoted/ promoted/ in the 2.2.8 release notes.
6288
6289         Don't warn about the blank line inserted into git commit message.
6290         * clcommit.m4sh: When searching for accidental commits of mutliple
6291         changes, ignore the second line of the message, which we inserted
6292         earlier to support "git log --oneline".
6293
6294         Enable correct extraction of multiline copyright from --version.
6295         * libltdl/config/getopt.m4sh: Wrap copyright notice at 76
6296         columns.
6297         (func_version): Don't omit spaces when merging multiline copyright
6298         notices.
6299         * clcommit.m4sh, libtoolize.m4sh: Wrap copyright notice at 76
6300         columns.
6301
6302         * NEWS (2.2.8): BlueGene compiler tests were performed on BG/P
6303         systems, not BG/L.
6304         Reported by Christian Rössel <christian.roessel@gmx.de>
6305
6306 2010-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6307
6308         Fix testsuite helper macros to not hide failure.
6309         * tests/testsuite.at (LT_AT_CONFIGURE, LT_AT_MAKE):
6310         Do not wrap AT_CHECK in a subshell, so that failures are
6311         properly propagated; instead, move environment changes inside
6312         the AT_CHECK code.
6313         Report and analysis by Peter Rosin.
6314
6315         Avoid autom4te warning about unnamed diversion.
6316         * libltdl/config/getopt.m4sh: Use diversion name KILL not -1.
6317
6318 2010-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6319
6320         Make versioning test stricter for w32, enable shared libs.
6321         * tests/versioning.at (versioning): Add -no-undefined to
6322         LDFLAGS.
6323         (test_uninstalled): Also move $bindir out of the way
6324         temporarily.
6325
6326         Fix versioning test for LDFLAGS=-Wl,--as-needed.
6327         * tests/versioning.at (versioning): For the library update
6328         hypotheses, ensure the unchanged library libb isn't accidentally
6329         relinked against the new liba, by not reinstalling libb.
6330         Fixes testsuite failure for the incompatible update case with
6331         LDFLAGS=-Wl,--as-needed.
6332         * THANKS: Update.
6333         Report by Ryan Hill.
6334
6335 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6336
6337         Rewrite manual intro to be gender-neutral.
6338         * doc/libtool.texi (Introduction): Use gender-neutral
6339         formulation when addressing developers.
6340
6341 2010-06-05  Gary V. Vaughan  <gary@gnu.org>
6342
6343         Update and simplify all m4sh scripts to use latest getopt.m4sh.
6344         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Rewrite option
6345         parsing loop over M4SH_GETOPTS macro, and adjust all clients of
6346         option variables to use generated option names.
6347
6348         Add missing quote for literal ? in a shell case statement.
6349         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Quote initial ?
6350         correctly for use in a shell case statement.
6351
6352         Quote command line arguments after --rcfile properly.
6353         * libltdl/config/announce-gen.m4sh (--rcfile): Quote remaining
6354         arguments shell variable expression correctly for eval.
6355         
6356         Shift correctly in numbered option argument collection.
6357         * libltdl/config/getopt.m4sh (_m4go_option): Argument list also
6358         needs to be `shift'ed in the shell option loop after processing a
6359         numbered argument collection.
6360
6361         Fetch from new upstream host for config.guess and config.sub.
6362         * Makefile.maint (WGET_CGIT): Location of newest config.guess and
6363         config.sub upstream.
6364         (fetch): Fetch config.guess and config.sub from WGET_CGIT, rather
6365         than no-longer-updating WGET_SGO location.
6366
6367         Update generated upload directive file format to v1.1.
6368         * Makefile.maint (git-dist, diffs): Update to generate v1.1 format
6369         directive files for ftp://ftp-upload.gnu.org/incoming/ftp.
6370
6371         Fix web manual generation details in release instructions.
6372         * HACKING (Release Procedure): Move the instruction for generating
6373         web manuals for a new release to before the instruction that bumps
6374         the version numbers to the post release values.
6375
6376         Set SCM version number to 2.2.9a.
6377         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6378         number to 2.2.9a.
6379         * NEWS: Updated.
6380
6381         GNU Libtool 2.2.8 was released.
6382
6383         Prepare for next release.
6384         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6385         number to 2.2.8.
6386         * NEWS: Update version number.
6387         * INSTALL, libltdl/config/install-sh, libltdl/config/config.guess,
6388         libltdl/config/config.sub, libltdl/config/texinfo.tex: Updated
6389         from canonical source.
6390
6391         Provide an m4sh reimplementation of announce-gen.
6392         * libltdl/config/getopt.m4sh (M4SH_GETOPTS): New macro that takes
6393         a quoted m4 list of command line options to be parsed, and
6394         generates the shell code to parse those options and collect the
6395         results into appropriately named 'opt_xxx' shell variables.  Also,
6396         add some private supporting macros, and improve the comments
6397         radically.
6398         * libltdl/config/announce-gen.m4sh: New file, to generate and
6399         optionally post (an enhancement over the gnulib perl script of the
6400         same name) a release announcement.
6401         * Makefile.maint (announce-gen): Build a new announce-gen script
6402         in the build directory, from the contents of
6403         libltdl/config/announce-gen.m4sh.
6404         * HACKING (Release Procedure): Update the instructions to use
6405         announce-gen.
6406         (Alpha release note template, Full release note template):
6407         Removed.
6408
6409 2010-05-22  Gary V. Vaughan  <gary@gnu.org>
6410
6411         Support "git log --oneline" in generated commit messages.
6412         * clcommit.m4sh (func_check_commit_msg): Insert an empty line
6413         between the ChangeLog entry summary line and the ChangeLog entry
6414         body, so that "git log --oneline" works properly.
6415         Bump copyright and version number.
6416         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6417
6418 2010-05-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6419
6420         * HACKING: Set Reply-To: in announcement emails.
6421
6422 2010-05-21  Gary V. Vaughan  <gary@gnu.org>
6423
6424         Set SCM version number to 2.2.7c.
6425         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6426         number to 2.2.7c.
6427         * NEWS: Updated.
6428
6429         GNU Libtool 2.2.7b  was released.
6430
6431         Prepare for next release candidate.
6432         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6433         number to 2.2.7b.
6434         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
6435         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: These files
6436         have been updated without a serial bump since the last release.
6437         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Bump Revision, to
6438         account for bugfixes since the last release.
6439         * libltdl/config/install-sh, libltdl/config/config.guess,
6440         libltdl/config/config.sub, libltdl/config/texinfo.tex,
6441         INSTALL: Updated from canonical source.
6442         * NEWS: Update with missing entries from ChangeLog.
6443         * HACKING: Note workaround for developer tool-path leakage bug.
6444
6445         Skip some tests in --disable-ltdl-install mode.
6446         * tests/dlloader-api.at, tests/exceptions.at,
6447         tests/lalib-syntax.at, tests/loadlibrary.at,
6448         tests/lt_dlopenext.at, tests/resident.at: Detect when these
6449         tests try to link against the not installed libltdl.la, and
6450         skip rather than FAIL.
6451
6452 2010-05-05  Peter Rosin  <peda@lysator.liu.se>
6453
6454         Clarify versioning algorithm documentation.
6455         * doc/libtool.texi (Updating version info): Be explicit
6456         about setting age to zero on interface change.
6457         Reported by Jef Driesen <jefdriesen@hotmail.com>
6458
6459 2010-05-04  Peter O'Gorman  <peter@pogma.com>
6460
6461         Ranlib is required with -force_load and fat archives.
6462         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Run
6463         ranlib.
6464         Reported by Jeremy Huddleston <jeremyhu@apple.com>
6465
6466 2010-04-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6467
6468         Fix incompatible struct declarations.
6469         * doc/libtool.texi (Dlpreopening): Remove broken documentation
6470         of lt_dlsymbol and lt_dlsymlist.  Document typedef lt_dlsymlist
6471         and symbol lt_preloaded_symbols according to the implementation.
6472         * tests/demo/dlmain.c (lt_symlist): Make struct anonymous ...
6473         (lt_dlsymlist): ... and typedef to this name.
6474         (lt_preloaded_symbols, main): Adjust.
6475         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
6476
6477 2010-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6478
6479         Use linker_flags not compiler_flags with $LD.
6480         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]
6481         <archive_cmds, archive_expsym_cmds>: With xlf and bgxlf
6482         compilers, when linking with $LD, use $linker_flags not
6483         $compiler_flags.
6484
6485 2010-03-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6486
6487         Add FAQ, and FAQ entry for flags stripped at library link time.
6488         * doc/libtool.texi (FAQ, Stripped link flags): New nodes.
6489         (Wrapper executables): Replace bug address with macro.
6490         (Compile mode, Link mode): Document `-Wc,' and `-Xcompiler '
6491         semantics better.
6492         * libltdl/config/ltmain.m4sh (func_mode_link): Rewrite comment
6493         for the flags that are passed through.
6494         Prompted by reports from Simon Richter <Simon.Richter@hogyros.de>,
6495         Török Edwin <edwintorok@gmail.com> and
6496         Åke Sandgren <ake.sandgren@hpc2n.umu.se>.
6497
6498 2010-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6499
6500         Fix preloader symbol list declaration in libltdl.
6501         * libltdl/ltdl.c (preloaded_symbols): Fix declaration to include
6502         array brackets.
6503         (lt_dlinit): Do not take address of preloaded_symbols.
6504
6505         Fix typo in libtool --help output.
6506         * libltdl/config/ltmain.m4sh (func_mode_help): Fix typo in help
6507         output.
6508
6509         Fix a couple of documentation errors.
6510         * doc/libtool.texi (Autoconf macros): Improve hyphenation.
6511         (Using libltdl): libltdl uses the Lesser General Public License,
6512         not the Library General Public License.
6513
6514         Do not use @sc nor @acronym in the manual.
6515         * doc/libtool.texi: Remove all usage of @sc.
6516
6517 2010-03-19  Chris Demetriou  <cgd@google.com>
6518
6519         Sort output of 'find' to enable deterministic builds.
6520         * libltdl/config/ltmain.m4sh (func_extract_archives): Sort
6521         output of 'find'.
6522         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Likewise.
6523         * THANKS: Update.
6524
6525 2010-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6526
6527         Unconditionally normalize LC_ALL, LANGUAGE in libtool script.
6528         * libltdl/config/ltmain.m4sh: Unconditionally set LC_ALL and
6529         LANGUAGE to 'C', to avoid semantic differences on MinGW under
6530         Chines locale.  SCO issues with e.g. LANG=C are not known to
6531         be relevant today any more.
6532         Report by Pete Batard <pbatard@gmail.com> and Xiaofan Chen
6533         <xiaofanc@gmail.com>.
6534
6535 2010-03-17  Peter Rosin  <peda@lysator.liu.se>
6536
6537         Preserve the last error when restoring the error mode.
6538         * libltdl/loaders/loadlibrary.c (wm_open): Don't rely on
6539         SetThreadErrorMode (or SetErrorMode) to not clobber the last
6540         error.
6541         Report by Ralf Wildenhues.
6542
6543         Use Get/SetThreadErrorMode if they are available.
6544         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): Replaced...
6545         (wrap_getthreaderrormode): ...by this function that checks
6546         first for GetThreadErrorMode, then GetErrorMode and makes use
6547         of either of those or...
6548         (fallback_getthreaderrormode): ...else falls back to this
6549         replacement function that implements the old workaround, which
6550         was previously implemented in...
6551         (fallback_geterrormode): ...this now renamed function.
6552         (geterrormode): Replaced...
6553         (getthreaderrormode): ...by this function pointer that points
6554         at either of wrap_getthreaderrormode, GetThreadErrorMode,
6555         GetErrorMode or fallback_getthreaderrormode.
6556         (wrap_setthreaderrormode): New function that checks if
6557         SetThreadErrorMode is supported by the system and makes use of
6558         it if it is.
6559         (fallback_setthreaderrormode): New function that is used
6560         otherwise that implements the old version using SetErrorMode.
6561         (setthreaderrormode): New function pointer that points at
6562         either of wrap_setthreaderrormode, SetThreadErrorMode or
6563         fallback_setthreaderrormode.
6564         (vm_open): Adjust to the above.
6565
6566 2010-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6567
6568         Detect Sun compiler suite with 'sun'-prefixed names.
6569         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
6570         (_LT_SYS_HIDDEN_LIBDEPS) [solaris]: Accept compiler names sunCC,
6571         sunf77, sunf90, sunf95 in addition to CC, f77, f90, f95.
6572         * NEWS: Update.
6573         Report by Vadim Zeitlin.
6574
6575 2010-02-28  Pierre Ossman  <ossman@ossman.lkpg.cendio.se>  (tiny change)
6576             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6577
6578         Fix deplibs check fallback for 64-bit Windows and Windows CE.
6579         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Accept file formats
6580         'pe-arm-wince' and 'pe-x86-64'.  Add note about consistency with ...
6581         * libltdl/config/ltmain.m4sh (func_win32_libid): ... the respective
6582         pattern here; sync pattern from the former.
6583         * tests/deplibs-mingw.at (deplibs without file command): New
6584         file, new test.
6585         * Makefile.am (TESTSUITE_AT): Update.
6586         * NEWS: Update.
6587
6588 2010-02-24  Scott McCreary  <scottmc2@gmail.com>  (tiny change)
6589
6590         Update search path on Haiku for legacy system directory.
6591         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [haiku]
6592         <sys_lib_dlsearch_path_spec>: Replace legacy
6593         /boot/beos/system/lib directory with /boot/system/lib.
6594         * THANKS: Update.
6595
6596 2010-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6597
6598         manual: fix detailmenu ordering.
6599         * doc/libtool.texi (Top): Add section for `Linking executables'
6600         in the detailmenu.
6601
6602 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
6603
6604         Guard against strerror()==NULL
6605         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main):
6606         Check return value of strerror() using nonnull().
6607         (func_emit_cwrapperexe_src:find_executable): Ditto.
6608         (func_emit_cwrapperexe_src:chase_symlinks): Ditto.
6609
6610 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
6611
6612         Document wrapper changes.
6613         * NEWS: Indicate new feature and incompatibility.
6614         * doc/libtool.texi [detailmenu]: Add reference to subsection
6615         'Wrapper executables for programs', in Platform Quirks category.
6616         [Linking executables]: Mention wrapper executables, in
6617         addition to wrapper scripts. Add menu referencing subsection
6618         'Wrapper executables for programs'.
6619         [Wrapper executables for programs]: New subsection. Documents
6620         cwrapper rationale and command line options.
6621
6622 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
6623
6624         Add --lt-* options to shell wrapper
6625         * libltdl/config/ltmain.m4sh (func_emit_wrapper): Call
6626         func_parse_lt_options early. Use func_exec_program.
6627         (func_emit_wrapper:func_parse_lt_options): New function.
6628         (func_emit_wrapper:func_lt_dump_args): New function.
6629         (func_emit_wrapper:func_exec_program_core): New function.
6630         (func_emit_wrapper:func_exec_program): New function.
6631
6632 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
6633
6634         Enable runtime cwrapper debugging; add tests
6635         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
6636         Update comments. Initialize program_name. Eliminate _LENGTH
6637         variables for string constants. In debug mode, print a
6638         banner with known content before any other output. Remove
6639         LTWRAPPER_DEBUGPRINTF macro. Add constants and variables
6640         to support new --lt-debug option.
6641         (func_emit_cwrapperexe_src:ltwrapper_debugprintf): Renamed to...
6642         (func_emit_cwrapperexe_src:lt_debugprintf): this. Only print
6643         messages if lt_debug != 0. Ensure appearance of messages
6644         conforms to GCS.
6645         (func_emit_cwrapperexe_src:lt_fatal): Ditto.
6646         (func_emit_cwrapperexe_src:lt_error_core): Ditto.
6647         (func_emit_cwrapperexe_src): Update all callers to lt_fatal.
6648         Update all users of LTWRAPPER_DEBUGPRINTF (()) to call
6649         lt_debugprintf () directly.
6650         (func_emit_cwrapperexe_src:main): Consolidate option parsing.
6651         Ensure first use of lt_debugprintf occurs after option parsing.
6652         Add stanza to parse for --lt-debug and set lt_debug variable.
6653         Use strcmp rather than strncmp, where safe.
6654         * tests/cwrapper.at: Add new tests for --lt-debug and
6655         -DLT_DEBUGWRAPPER.
6656
6657 2010-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6658
6659         Use --email with gendocs.sh.
6660         * Makefile.maint (web-manual): Pass bug reporting address to
6661         gendocs.sh.
6662
6663         Make testsuite code C++ clean again.
6664         * tests/resident.at (resident modules): Fix for C++.
6665
6666 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
6667             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6668
6669         Testsuite exposure for dlloader API.
6670         * tests/dlloader-api.at: New file, new test.
6671         * Makefile.am (TESTSUITE_AT): Update.
6672
6673 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
6674
6675         * tests/loadlibrary.at: Fix C++ issues.
6676
6677 2010-01-20  Peter Rosin  <peda@lysator.liu.se>
6678
6679         Report proper errors from the loadlibrary loader.
6680         * libltdl/loaders/loadlibrary.c (loadlibraryerror): New
6681         helper function that returns the latest Windows error as a
6682         string, or the provided default string on failure to do so.
6683         (LOADLIB_SETERROR): New macro that wraps previous to make it
6684         easy to use.
6685         (vm_open, vm_close, vm_sym): Make use of previous.
6686         (LOCALFREE): New macro to help free the Windows error string.
6687         (vl_exit): Make use of previous.
6688         * tests/loadlibarry.at: New file, new test that makes sure
6689         the loadlibrary loader reports non-standard error messages.
6690         * Makefile.am (TESTSUITE_AT): Add above test.
6691
6692 2010-01-02  Peter Rosin  <peda@lysator.liu.se>
6693
6694         Use GetErrorMode if it is available.
6695         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): New
6696         function that checks if GetErrorMode is supported by the
6697         system and makes use of it if it is.
6698         (fallback_geterrormode): New function that is used otherwise
6699         that implements the old workaround.
6700         (geterrormode): New function pointer that points at either
6701         of the above or directly at GetErrorMode.
6702         (vm_open): Make use of the above.
6703
6704 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6705
6706         Ensure functions from resident modules work in atexit handlers.
6707         * tests/resident.at (resident modules): New file, new test.
6708         * Makefile.am (TESTSUITE_AT): Adjust.
6709         Report by Bob Friesenhahn.
6710
6711         Testsuite exposure for relative output file names and deplibs.
6712         * tests/deplib-in-subdir.at (deplib in subdir): New file, new
6713         test.
6714         * Makefile.am (TESTSUITE_AT): Update.
6715         Prompted by report from Bob Friesenhahn.
6716
6717 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6718             Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6719
6720         Testsuite exposure for C++ exception handling.
6721         * tests/exceptions.at (C++ exception handling): New file, new
6722         test.
6723         * Makefile.am (TESTSUITE_AT): Update.
6724         Report by Bob Friesenhahn.
6725
6726 2010-01-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6727
6728         Bump copyright years.
6729         * ChangeLog.2009: New, rotated from ...
6730         * ChangeLog: ... here.
6731         * Makefile.am (EXTRA_DIST): Add ChangeLog.2009.
6732         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
6733         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
6734         * libtoolize.m4sh: Likewise.
6735
6736 2009-12-30  Peter Rosin  <peda@lysator.liu.se>
6737
6738         * libltdl/ltdl.c (lt_dlerror): Remove meaningless conditional.
6739
6740 2009-12-29  Peter Rosin  <peda@lysator.liu.se>
6741
6742         * libltdl/ltdl.c (file_not_found): Fix typos in code comment.
6743
6744 2009-12-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6745
6746         Replace last __oline__ instance.
6747         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Replace last
6748         __oline__ instance with $LINENO.
6749
6750 2009-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6751
6752         Improve parsing of .la files in libltdl.
6753         * libltdl/ltdl.c (trim): Do not dump core upon missing quote in
6754         module .la file.
6755         * tests/lalib-syntax.at (syntax of .la files): New file, new
6756         test.
6757         * Makefile.am (TESTSUITE_AT): Add tests/lalib-syntax.at.
6758         Report by Bob Friesenhahn.
6759
6760 2009-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6761
6762         Sane fallback initialization of $ECHO from $as_echo.
6763         * libltdl/config/general.m4sh: Use 'printf %s\n' if $as_echo is
6764         unset.
6765         * tests/testsuite.at: Likewise.
6766         * THANKS: Update.
6767         Report by Vadim Zeitlin and Peter Rosin.
6768
6769 2009-12-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6770
6771         lt_dlloader_remove and lt_dlloader_find accept const arguments.
6772         * libltdl/lt_dlloader.c (lt_dlloader_remove, lt_dlloader_find):
6773         Accept `const char *' arguments, as documented.  Cast them to
6774         `void *' for the slist machinery.
6775         * libltdl/libltdl/lt_dlloader.h: Adjust prototypes.
6776
6777         Test and fix slist.c.
6778         * libltdl/libltdl/slist.h: Include stddef.h, for size_t.
6779         (slist_remove): Return pointer to SList, not void.
6780         * libltdl/slist.c: Include stdlib.h, for malloc and free.
6781         (slist_remove): Adjust prototype as above.
6782         (slist_sort): Do not loop forever on one-item list.
6783         * tests/slist.at (SList functionality): New file, new test.
6784         * Makefile.am (TESTSUITE_AT): Add tests/slist.at.
6785
6786 2009-11-30  Peter Rosin  <peda@lysator.liu.se>
6787
6788         Please C++ compilers when calling strrchr.
6789         * libltdl/ltdl.c (has_library_ext): Match the return type of
6790         strrchr with the first argument to please C++ compilers.
6791         Report by Peter O'Gorman.
6792
6793 2009-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6794
6795         Fix bindir and dlopen tests for C++ compilers (CC=g++).
6796         * tests/bindir.at (bindir basic lib test, bindir install tests):
6797         Include stdlib.h rather than declaring abort.
6798         * tests/lt_dlopenext.at (lt_dlopenext error messages): Use
6799         `extern "C"' annotation for dlsym'ed function in C++ mode.
6800
6801 2009-11-25  Peter Rosin  <peda@lysator.liu.se>
6802
6803         Fix cross build issue in execute mode test.
6804         * tests/execute-mode.at: Skip test for cross builds.
6805
6806 2009-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6807
6808         Enable symbol versioning with the GNU gold linker.
6809         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Accept 'GNU gold'
6810         in the version string.
6811         * NEWS, THANKS: Update.
6812         Report by Peter Fritzsche.
6813
6814         Tighten regex for Portland C++ compiler for version 10.
6815         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [linux]:
6816         Match a dot after version 1 through 5, so 10 and up don't match,
6817         and use weak symbols.
6818         * THANKS: Update.
6819         Report by Jeff Squyres and Brent Leback.
6820
6821 2009-11-16  Peter O'Gorman  <peter@pogma.com>
6822
6823         Update libltdl version to match 2.2.6b release.
6824         * libltdl/Makefile.inc: Make version 9:1:2
6825
6826 2009-11-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
6827
6828         Don't load module.la from current directory by default.
6829         * libltdl/ltdl.c (try_dlopen): Do not attempt to load an
6830         unqualified module.la file from the current directory (by
6831         default) since doing so is insecure and is not compliant with
6832         the documentation.
6833         * tests/testsuite.at: Qualify access to module.la file in
6834         current directory so that test passes.
6835
6836 2009-11-14  Peter O'Gorman  <peter@pogma.com>
6837
6838         Only use preopen loader to load preopened archives
6839         * libltdl/ltdl.c: Limit checking of .a to preopen loader.
6840         * tests/lt_dlopen_a.at: Add test.
6841         * Makefile.am: Add test.
6842
6843 2009-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6844
6845         Recognize `pgfortran' as Portland compiler.
6846         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS):
6847         Accept `pgfortran*' too.
6848         Report by Jeff Squyres.
6849
6850 2009-11-04  Alexandre Oliva  <aoliva@redhat.com>
6851             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6852
6853         Fix verbose link extraction for multiply reconfigured GCC.
6854         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
6855         <output_verbose_link_cmd>: Drop GCC lines "Configured with" that
6856         may contain unrelated flags.
6857
6858 2009-11-02  Eric Blake  <ebb9@byu.net>
6859
6860         Allow gcc builds with -Wall -Werror.
6861         * libltdl/ltdl.c (try_dlopen): Use strlen rather than LT_STRLEN on
6862         an array that will never be NULL.
6863
6864 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6865
6866         Fix func_normal_abspath sed script for Solaris.
6867         * libltdl/config/general.m4sh (pathcar, pathcdr, removedotparts)
6868         (collapseslashes, finalslash): Use single quotes, for clarity.
6869         (removedotparts): Avoid \{N,M\} after subexpression \(...\), for
6870         Solaris /bin/sed.
6871
6872         Improve versioning algorithm documentation.
6873         * doc/libtool.texi (Updating version info): Repeat the
6874         algorithms in different, hopefully simpler terms.
6875         * THANKS: Update.
6876         Prompted by Richard B. Kreckel.
6877
6878 2009-11-01  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
6879
6880         Support for the Haiku operating system.
6881         * libltdl/config/ltmain.m4sh (func_mode_link): Add cases for
6882         `*-*-haiku*' alongside `*-*-beos*'.
6883         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
6884         (_LT_CHECK_MAGIC_METHOD, LT_LIB_M, _LT_COMPILER_PIC)
6885         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Add cases for
6886         `haiku*'.
6887         * NEWS, THANKS: Update.
6888
6889 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6890
6891         Fix quoting of AS, DLLTOOL, and OBJDUMP for the libtool script.
6892         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Quote values of
6893         $AS, $DLLTOOL, and $OBJDUMP, so they can contain arguments.
6894         * THANKS: Update.
6895         Report by Matthijs Kooijman.
6896
6897 2009-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6898
6899         Initial support for the Cuda Compiler Driver on Linux.
6900         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept source
6901         file extensions `.cu' and `.cup'.
6902         * libltdl/m4/libtool.m4 (_LT_COMPILER_NO_RTTI, _LT_COMPILER_PIC)
6903         (_LT_LINKER_SHLIBS): Support for `nvcc' compiler driver.
6904         * NEWS, THANKS: Update.
6905         Report by Mahesh Narayanamurthi.
6906
6907 2009-09-12  Dave Korn  <dave.korn.cygwin@googlemail.com>
6908
6909         Control where win32 DLLs get installed.
6910         * libltdl/config/general.m4sh (func_normal_abspath): New function.
6911         (func_relative_path): Likewise.
6912         * libltdl/config/ltmain.m4sh (func_mode_help): Document "-bindir".
6913         (func_mode_link): Accept new "-bindir" option and use it, if
6914         supplied, to place Windows DLLs.
6915         * tests/bindir.at: New file for install tests using "-bindir".
6916         * Makefile.am (TESTSUITE_AT): Add bindir.at.
6917         * doc/libtool.texi (Link Mode): Update documentation.
6918         * NEWS, THANKS: Update.
6919
6920 2009-09-11  Akim Demaille  <demaille@gostai.com>
6921
6922         libtool: clean libconftest.a.
6923         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Here.
6924
6925 2009-09-10  Peter Rosin  <peda@lysator.liu.se>
6926
6927         func_win32_libid doesn't work with MS dumpbin
6928         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): The $NM
6929         interface is assumed to be BSD nm in func_win32_libid, so
6930         check for that before using it.
6931
6932 2009-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6933
6934         Allow dlopen self test to work with gcc's -fvisibility=hidden.
6935         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Declare default
6936         visibility for the symbol we are going to test dlopen (NULL)
6937         when a GCC version is used that understands the visibility
6938         attribute, under the assumption that if -fvisibility=hidden
6939         will be used, the user code will be sufficiently annotated
6940         for visibility of needed symbols from the main executable.
6941         * THANKS: Update.
6942         Report by Josh Hursey against OpenMPI.
6943
6944         Fix and split recent testsuite addition for compile/link flags.
6945         * tests/flags.at (passing flags through libtool): Split into ...
6946         (passing CC flags through libtool)
6947         (passing CXX flags through libtool)
6948         (passing F77 flags through libtool)
6949         (passing FC flags through libtool)
6950         (passing GCJ flags through libtool): ... these five tests,
6951         factorized with m4_foreach.  Fix F77 and FC compile and link
6952         commands; add GCJ tag.  Use LT_AT_TAG to correctly skip tags
6953         for which no compiler exists.  Use $EXEEXT where appropriate.
6954         Drop unneeded use of reload_cmds.
6955         Reports by Peter Rosin and Peter O'Gorman.
6956
6957 2009-09-07  Peter O'Gorman  <peter@pogma.com
6958
6959         Fix redirect in test case.
6960         * tests/darwin.at: Fix stderr redirect.
6961
6962         Use darwin's -force_load flag if available for whole_archive_flag_spec
6963         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check for
6964         -force_load and use it if there.
6965         * tests/darwin.at: Add a simple test.
6966
6967 2009-09-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6968
6969         Testsuite keyword 'interactive' and check-* rules.
6970         * Makefile.am (testsuite_deps, testsuite_deps_uninstalled):
6971         New variables.
6972         (check-local, installcheck-local): Use them.
6973         (check-interactive, check-noninteractive): New rules.
6974         * tests/link-order2.at (Link order of deplibs),
6975         tests/static.at (static linking flags for programs): Add keyword
6976         `interactive'.
6977         * doc/libtool.texi (Test descriptions): Document all keywords
6978         used in the Libtool test suite.
6979         * NEWS: Update.
6980
6981         Fix failure test in the presence of --with-pic or -prefer-pic.
6982         * tests/fail.at (Failure tests): Run non-PIC failure test only
6983         if pic_mode is 'default' or 'no', rather than 'default' or 'yes'
6984         and also -prefer-pic has not been passed in $CFLAGS.
6985         * THANKS: Update.
6986         Report by Donn Washburn.
6987
6988         Add testsuite exposure for passing of compiler and linker flags.
6989         * tests/flags.at (passing flags through libtool): New file, new
6990         test, for bug fixed in previous commit.
6991         * Makefile.am (TESTSUITE_AT): Add tests/flags.at.
6992
6993 2009-09-04  Peter Rosin  <peda@lysator.liu.se>
6994
6995         Make -Wc,FLAG behave like -Xcompiler FLAG in link mode.
6996         * libltdl/config/ltmain.m4sh (func_mode_link): Remove "-Wc,"
6997         instead of replacing it with "$wl" when linking programs
6998         through the compiler driver, just as is the case when linking
6999         libraries.
7000         * NEWS: Update.
7001
7002 2009-08-23  Lennart Poettering  <lennart@poettering.net>  (tiny change)
7003
7004         Shut up prototype warnings with recent GCC and -Wstrict-prototypes.
7005         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Use recent
7006         GCC's diagnostic pragma to override a -Wstrict-prototypes
7007         setting for the symbol list code.
7008         * THANKS: Update.
7009
7010 2009-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7011
7012         Remove __oline__ from macros, for less spurious configure diffs.
7013         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
7014         (_LT_COMPILER_C_O, LT_PATH_NM): Replace __oline__ instances with
7015         $LINENO.
7016         * NEWS: Update.
7017
7018 2009-07-24  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
7019
7020         Fixup 'execute mode' test for w32.
7021         * tests/execute-mode.at (execute mode): Add missing $EXEEXT.
7022         (LDFLAGS): Add -no-undefined.
7023
7024 2009-07-01  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
7025             Charles Wilson  <libtool@cwilson.fastmail.fm>
7026
7027         [CXX] Use correct export_dynamic_flag_spec for PE-COFF $hosts
7028         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [cygwin*|mingw*|pw32*|cegcc*]:
7029         Define export_dynamic_flag_spec as -Wl,--export-all-symbols here as well
7030         (see commit 5f2bbb494a2753afb2878c399cfd8316b7403a5b).
7031
7032 2009-06-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
7033
7034         [mingw] Improve sys_lib_search_path_spec detection.
7035         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Fix handling
7036         of dos-style paths when parsing $CC -print-search-dirs output.
7037
7038 2009-06-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
7039
7040         Finish adding alias for obsoleted AC_LIBTOOL_RC macro.
7041         * libltdl/m4/libtool.m4: Add reminder comment concerning
7042         aclocal-1.4 backwards compatibility.
7043         * libltdl/m4/lt~obsolete.m4: Remove unnecessary AC_DEFUN.
7044
7045 2009-06-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
7046
7047         Add alias for obsoleted AC_LIBTOOL_RC macro.
7048         * libltdl/m4/libtool.m4: Add alias for obsoleted
7049         macro AC_LIBTOOL_RC.
7050
7051 2009-06-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
7052
7053         Remove unneeded functions and options from cwrapper
7054         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
7055         [lt_opt_process_env_set]: Remove.
7056         [lt_opt_process_env_prepend]: Remove.
7057         [lt_opt_process_env_append]: Remove.
7058         [lt_split_name_value]: Remove.
7059         [file scope]: Don't declare removed functions. Remove
7060         constants and defines related to eliminated commandline
7061         options.
7062         [main]: Remove code related to eliminated commandline
7063         options --lt-env-set, --lt-env-prepend, --lt-env-append.
7064
7065 2009-06-19  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
7066             Charles Wilson  <libtool@cwilson.fastmail.fm>
7067
7068         Ensure LT_PATH_LD works when called before LT_INIT
7069         * libltdl/m4/libtool.m4 (LT_PATH_LD): AC_REQUIRE _LT_PROG_ECHO_BACKSLASH.
7070
7071 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7072
7073         Add versioning tests.
7074         * tests/versioning.at (versioning): New file, new test.
7075         * Makefile.am (TESTSUITE_AT): Adjust.
7076         Prompted by bug report from Mike Gorchak.
7077
7078 2009-06-14  Mike Gorchak  <mike@malva.ua>  (tiny change)
7079             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7080
7081         Fix versioning computation for QNX.
7082         * libltdl/config/ltmain.m4sh (func_mode_link): Set `$current'
7083         and `$age' properly for version_type `qnx'.
7084
7085 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7086
7087         Avoid spurious localization testsuite failure on HP-UX/ia64.
7088         * tests/localization.at (localized compiler messages): Skip test
7089         if the compiler warning output contains `locale', for HP-UX.
7090
7091 2009-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7092
7093         Fix concurrent extraction of convenience libraries on Darwin.
7094         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): New libtool
7095         variable `lock_old_archive_extraction', set to `yes' on darwin.
7096         * doc/libtool.texi (libtool script contents): Document it.
7097         * libltdl/config/ltmain.m4sh (func_extract_an_archive): Lock
7098         `ar x' invocation if `lock_old_archive_extraction' is yes.
7099         * tests/darwin.at (darwin concurrent library extraction): New
7100         test.
7101         * NEWS: Update.
7102         Report by Akim Demaille.
7103
7104 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7105
7106         Fix testsuite failure of lt_dlopenadvise test on FreeMiNT.
7107         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Do not
7108         build moddepend for systems without shared libraries.
7109         Report by Alan Hourihane.
7110
7111         testsuite: avoid failures due to old Automake.
7112         * tests/configure-iface.at (installable libltdl)
7113         (--with-ltdl-include/lib, --with-included-ltdl):
7114         Speficy libmodule_la_SOURCES in Makefile.am as the default
7115         source file naming scheme changed in Automake 1.8.
7116         * tests/nonrecursive.at (_LT_AT_LTDL_SETUP): Require Automake
7117         1.9.6.
7118         * THANKS: Update.
7119         Report by Robert Garron.
7120
7121         testsuite: add missing @LIBS@ in a link command line.
7122         * tests/old-m4-iface.at (AC_WITH_LTDL): Use @LIBS@ when linking.
7123         Report by Patrice Fromy.
7124
7125         testsuite: cope when some installed libltdl.la has been removed.
7126         * tests/old-m4-iface.at (AC_WITH_LTDL): Pass --with-included-ltdl
7127         to configure, to ensure we do not accidentally link against a
7128         previously installed libltdl.so where the corresponding .la
7129         file has been removed, thus we do not add a run path, and the
7130         runtime linker then fails to find libltdl.so.7.
7131         * tests/configure-iface.at (--with-ltdl-include/lib): Remove -L
7132         flags from LDFLAGS to avoid picking up an installed libltdl
7133         outside of the default locations.
7134         * THANKS: Update.
7135         Prompted by report from Patrice Fromy.
7136
7137 2009-06-07  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
7138
7139         Fix C wrapper invocation for ceGCC hosts (cegcc and mingw32ce).
7140         * libltdl/config/ltmain.m4sh (func_mode_link): do not generate
7141         C wrapper for cegcc and mingw32ce hosts.
7142         (func_emit_cwrapperexe_src): remove useless check on
7143         __MINGW32CE__.
7144
7145 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7146
7147         Don't pick up double-quotes from /etc/ld.so.conf on Ubuntu.
7148         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
7149         <sys_lib_dlsearch_path_spec>: Remove embedded double quotes from
7150         paths picked up from /etc/ld.so.conf.  Fixes libltdl compile
7151         failure on Ubuntu 7.10.
7152         * THANKS: Update.
7153         Report by Camilo La Rota.
7154
7155 2009-06-06  Richard Sandiford  <richards@transitive.com>
7156
7157         Fix GNU nm invocation for AIX.
7158         * libldtl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
7159         <export_symbols_cmds>: Modify the GNU-nm-on-AIX version so that
7160         it adds weak defined symbols to the export list.
7161
7162         Build AIX shared libraries with binutils 2.19.50+.
7163         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
7164         <lt_use_gnu_ld_interface>: New variable to control whether the
7165         GNU ld or native ld interface is used.  Set to "no" for GNU ld
7166         2.19.50+ on AIX, otherwise mirror $with_gnu_ld.  Update the
7167         warning message that is printed when using GNU ld on AIX.
7168         Adjust the whole_archive_flag_spec value for GNU ld on AIX.
7169         * NEWS, THANKS: Update.
7170
7171 2009-05-27  Peter O'Gorman  <peter@pogma.com>
7172
7173         Don't run compiler checks twice.
7174         libltdl/m4/libtool.m4 (_LT_PROG_FC, _LT_PROG_F77,
7175         _LT_PROG_CXX): Remove these macros.
7176         libltdl/m4/lt~obsolete.m4: Add removed macros here.
7177         libltdl/m4/libtool.m4 (_LT_LANG_FC_CONFIG, _LT_LANG_F77_CONFIG,
7178         _LT_LANG_CXX_CONFIG): Remove references to removed macros, and
7179         move functionality here.
7180         NEWS: Update.
7181
7182 2009-05-05  Rainer Emrich  <r.emrich@de.tecosim.com>  (tiny change)
7183             Peter Rosin  <peda@lysator.liu.se>
7184             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7185
7186         Fix cross compilation for HPPA/64 with a BSD file command.
7187         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
7188         [hpux10.20*, hpux11*, !ia64] <lt_cv_deplibs_check_method>:
7189         Match the dot in `PA-RISC 2.0' literally.  Adjust hppa*64*
7190         pattern to also match BSD `file' output, used in cross
7191         compilation setups.
7192         * THANKS: Update.
7193         Report and initial patch by Rainer Emrich, refined by Peter
7194         Rosin.
7195
7196 2009-05-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7197
7198         libtoolize: ignore trailing junk on scriptversion line.
7199         * libtoolize.m4sh (func_install_update): Ignore semi-colon or
7200         comment-sign and all following characters when parsing a
7201         `scriptversion' line in one of the auxiliary scripts; recent
7202         Automake-provided script have a stylized comment to induce
7203         Emacs to use UTC.
7204         Exposed by the `libtoolize config files serial update' test.
7205
7206 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7207
7208         Skip localization test when setlocale is not functional.
7209         * tests/localization.at (localized compiler messages): Skip
7210         test when there is a warning about `LC_ALL'.
7211         * THANKS: Update.
7212         Report by Maciej Helminiak.
7213
7214 2009-05-02  Alan Hourihane  <alanh@fairlite.co.uk>  (tiny change)
7215
7216         Improved support for FreeMiNT.
7217         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [mint]: Hard-code
7218         command line length limit to 8192, to avoid long test.
7219         * NEWS, THANKS: Update.
7220
7221 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7222
7223         Initial port for BlueGene BG/L.
7224         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
7225         (_LT_LANG_CXX_CONFIG) [linux]: Detect bgxl*, bgf*, mpixl*
7226         compilers.
7227         * NEWS, THANKS: Update.
7228         Report, feedback and testing by John R. Cary and Christian
7229         Rössel.
7230
7231         manual: fix grammaros.
7232         * doc/libtool.texi (Dlpreopening): Fix grammaro.
7233         (C header files): Remove duplicate word.
7234
7235         Allow through -tp=* at link time, for pgcc.
7236         * libltdl/config/ltmain.m4sh (func_mode_link): Portlant Group
7237         pgcc uses `-tp=PROCESSOR' for target processor selection; allow
7238         the flag through at link time.
7239         Report by Ethan Mallove.
7240
7241         Fix quoting of eval'ed variable.
7242         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Double-quote
7243         $lt_cv_sys_global_symbol_pipe for eval, like we do in ltmain,
7244         in order to preserve TABs and multiple adjacent whitespace.
7245         Report by Bruno Haible.
7246
7247 2009-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7248
7249         Cope better with missing `makeinfo' in `bootstrap'.
7250         * bootstrap: Update `./doc/notes.txt' last so missing `makeinfo'
7251         does not cause a broken tree.
7252         * THANKS: Update.
7253         Report by Christian Rössel.
7254
7255 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
7256             Charles Wilson  <libtool@cwilson.fastmail.fm>
7257
7258         [cygwin] Improve operation with gcc4
7259         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [cygwin*]:
7260         Add w32api to sys_lib_search_path_spec without overriding gcc's
7261         own search path.
7262
7263 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
7264             Charles Wilson  <libtool@cwilson.fastmail.fm>
7265
7266         Use correct export_dynamic_flag_spec for PE-COFF $hosts
7267         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) 
7268         [cygwin*|mingw*|pw32*|cegcc*]: Define export_dynamic_flag_spec
7269         as -Wl,--export-all-symbols, as required by GNU ld for PE-COFF.
7270
7271 2009-03-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
7272
7273         Improve compatibility with older automake
7274         * libltdl/m4/lt~obsolete.m4: Add AC_DEFUNs for
7275         _LT_PREPARE_SED_QUOTE_VARS and _LT_PROG_ECHO_BACKSLASH.
7276         Report by Yaakov Selkowitz.
7277
7278 2009-03-20  Peter Rosin  <peda@lysator.liu.se>
7279
7280         LT_OUTPUT should always create the libtool script.
7281         * libltdl/m4/libtool.m4 (LT_OUTPUT): Make LT_OUTPUT ignore the
7282         --no-create configure option, and assume that the user wants
7283         to use an up-to-date libtool script if the LT_OUTPUT macro is
7284         present.
7285         * tests/early-libtool.at: Make sure we do not regress.
7286
7287 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
7288
7289         Don't settle for any dumpbin/link program as name lister.
7290         * libltdl/m4/libtool.m4 (LT_PATH_NM): When locating dumpbin or
7291         link -dump, check if they appear to really be capable of name
7292         listing, in order to eliminate e.g. link from coreutils. This
7293         makes the name lister decision fall back on nm as the default if
7294         no acceptable candidate is found, which mainly happens on
7295         (arguably broken) cross compiles.
7296         * NEWS: Update
7297         * THANKS: Update
7298         Reports by Rudolf Leitgeb and Peter Kjellerstedt.
7299
7300 2009-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7301
7302         Document INNER_TESTSUITEFLAGS, drop leading space.
7303         * README: Document INNER_TESTSUITEFLAGS.
7304         * tests/cmdline_wrap.at (Run tests with low max_cmd_len):
7305         When using INNER_TESTSUITEFLAGS on the testsuite invocation,
7306         drop leading space after "-k libtool", so that the user may
7307         further limit the set of tests to be run.
7308
7309 2009-03-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7310
7311         Fix low max_cmd_len template test on UnixWare.
7312         * libltdl/config/ltmain.m4sh (func_mode_link): When expanding
7313         $reload_cmds, always put objects in $reload_objs rather than
7314         adding them to the command line, to allow more general command
7315         lines in reload_cmds.  Ensure $reload_objs contains a leading
7316         space.
7317         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
7318         sco3.2v5*, sco5v6*] <reload_cmds>: For CC, invoke prelinker
7319         before creating reloadable object.
7320         (_LT_CMD_RELOAD) <reload_cmds, reload_flag>: Declare as
7321         _LT_TAGDECL, not _LC_DECL.
7322         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
7323         (_LT_LANG_GCJ_CONFIG) <reload_cmds, reload_flag>: Initialize
7324         from default (C tag) value.
7325         * THANKS: Update.
7326         Report and analysis by Tim Rice and John Wolfe.
7327
7328 2009-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7329
7330         * doc/libtool.texi (Distributing libltdl, Test descriptions):
7331         Add missing parentheses.
7332
7333 2009-02-28  Tim Rice  <tim@multitalents.net>
7334
7335         Fix C++ template handling for old archives on UnixWare 7.1.4.
7336         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
7337         sco3.2v5*, sco5v6*] <old_archive_cmds>: For CC, add template
7338         prelink step before archiving.  Fixes template.at test failures.
7339
7340 2009-02-28  Török Edwin  <edwintorok@gmail.com>  (tiny change)
7341             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7342
7343         Do not add bogus directory arguments to link command lines.
7344         * libltdl/config/ltmain.m4sh (func_mode_link): Ensure $path is
7345         always initialized before it is used.  Reported for zsh, for
7346         which $path contains $PATH entries even after "emulate sh", see
7347         <http://bugs.debian.org/517501>.
7348
7349 2009-02-28  Andreas Schwab  <schwab@suse.de>
7350             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7351
7352         Remove remaining references to CVS.
7353         * bootstrap: Remove references to CVS.
7354         * README.alpha: Likewise.
7355         * clcommit.m4sh: Likewise.
7356         * doc/libtool.texi: Bump copyright years.
7357         (libtool script contents): Describe macro_revision as revision
7358         without reference to CVS.
7359
7360 2009-02-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7361
7362         Do not pass $INSTALL via TESTS_ENVIRONMENT.
7363         * Makefile.am (TESTS_ENVIRONMENT): Set lt_INSTALL, not INSTALL,
7364         so that a bogus relative path to the install-sh script in the
7365         source tree is not propagated to the configure scripts of the
7366         old test suite.
7367         * tests/testsuite.at: Adjust.
7368         * tests/install.at (Install tests): Likewise.
7369
7370 2009-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7371             Kurt Roeckx <kurt@roeckx.be>
7372
7373         New test for lt_dlopenext error message.
7374         * tests/lt_dlopenext.at (lt_dlopenext error messages): New file,
7375         with new test, with sources taken from the Autobook example.
7376         * Makefile.am: Update.
7377
7378 2009-02-03  Kurt Roeckx <kurt@roeckx.be>
7379
7380         lt_dlopenext sets error upon successful library load.
7381         * libltdl/ltdl.c (lt_dlopenadvise): Fix bogus error on
7382         successful loading of library with lt_dlopenext.
7383         Report by Kaiwang Chen in <http://bugs.debian.org/510006>.
7384
7385 2009-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7386
7387         Fix sed script in install.at.
7388         * tests/install.at (Install tests): Fix typo in sed script,
7389         fixes test failure on HP-UX.
7390
7391         Fix $INSTALL in testsuite with relative path to install-sh.
7392         * tests/testsuite.at: If `$INSTALL' points to in-tree
7393         install-sh, override a possibly-relative path to it with an
7394         absolute one.
7395
7396         install mode: do not pass `-m $install_override_mode' to cp.
7397         * libltdl/config/ltmain.m4sh (func_mode_install): New variable
7398         $install_cp, factor test when `cp' is used for installation.
7399         Do not pass mode override to cp.  Fixes `libtool --mode=install
7400         cp ...' on HP-UX; cp should not be used for libraries that might
7401         be needed by programs invoked during the installation process.
7402
7403         Fix sed script portability issue in func_version.
7404         * libltdl/config/getopt.m4sh (func_version): Remove space in
7405         `/\./! {' sed command, to please HP-UX sed.
7406
7407 2009-01-31  Jeff Squyres <jsquyres@cisco.com>
7408             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7409
7410         New test for bogus lt_dlopen error message.
7411         * tests/lt_dlopen.at (lt_dlopen error messages): New file, new
7412         test, marked as XFAIL for now.
7413         * Makefile.am: Adjust.
7414         Report and reproducible test case by Jeff Squyres.
7415
7416 2009-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7417
7418         execute mode: do not transform *.lo or *.la arguments.
7419         * libltdl/config/ltmain.m4sh (func_mode_execute): Do not check
7420         arguments matching *.lo or *.la for script wrappers.
7421         * tests/execute-mode.at (execute mode): Add tests.
7422         * NEWS, THANKS: Update.
7423         Report by Paul Biggar.
7424
7425         Nonexistent `main' does not guarantee link failure.
7426         * tests/fail.at (Failure tests): Use an unresolved symbol,
7427         rather than non-presence of `main', to provoke a link failure
7428         also on QNX.  Only check for failure of the libtool script if
7429         the link without libtool would have failed, too.
7430         Report by Mike Gorchak.
7431
7432         Use AT_CHECK more liberally in duplicate members test.
7433         * tests/duplicate_members.at (duplicate members in archive
7434         tests): Wrap link commands in AT_CHECK, they might fail, as seen
7435         on QNX.
7436         * THANKS: Update.
7437         Report by Mike Gorchak.
7438
7439 2009-01-30  Akim Demaille  <demaille@gostai.com>
7440
7441         Fix cwrapper warnings from MSVC 2005.
7442         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
7443         [file scope]: define _CRT_SECURE_NO_DEPRECATE.
7444
7445 2009-01-29  Akim Demaille  <demaille@gostai.com>
7446
7447         Fix bootstrap with older libtool.m4 in reach of aclocal.
7448         * libltdl/m4/lt~obsolete.m4: Add stub definitions for
7449         _LT_REQUIRED_DARWIN_CHECKS and _LT_AC_PROG_CXXCPP.
7450
7451         Fix func_exec_init.
7452         * tests/defs.m4sh (func_exec_init): Instead of using the undefined
7453         my_dir, call func_dirname_and_basename and use its result.
7454         (func_make): For consistency, don't use the useless local variable
7455         my_dir.
7456
7457 2009-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7458
7459         Document --mode short-hands better, and test them.
7460         * doc/libtool.texi (Invoking libtool): Give examples for using
7461         the `--mode=MODE' short-hand `MODE', or abbreviations thereof.
7462         * libltdl/config/ltmain.m4sh: Mention the short-hand for MODE
7463         in the --help output.
7464         * tests/help.at (mode short-hands): New test group.
7465         Suggestion by Bruno Haible.
7466
7467         func_version copes with multi-line copyright headers.
7468         * libltdl/config/getopt.m4sh (func_version): Slurp in copyright
7469         lines until a period is found.
7470         * libltdl/config/ltmain.m4sh: Multi-line copyright is ok to use
7471         now.
7472         * tests/help.at (standard command line options): New file, new
7473         tests.  Make this test group the first one for libtool tests,
7474         moving the banner ...
7475         * tests/duplicate_members.at: ... from here.
7476         * Makefile.am (TESTSUITE_AT): Add tests/help.at.
7477
7478 2009-01-29  Akim Demaille  <demaille@gostai.com>
7479             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7480
7481         Normalize compiler output due to compiler wrappers.
7482         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT): New
7483         macro, to normalize ccache and distcc output.
7484         * tests/localization.at (localized compiler messages): Use it.
7485
7486 2009-01-29  Peter Rosin  <peda@lysator.liu.se>
7487
7488         Make modified libtool script in cwrapper test executable
7489         * tests/cwrapper.at: Make modified libtool script executable.
7490         Report by Roumen Petrov.
7491
7492 2009-01-28  Akim Demaille  <demaille@gostai.com>
7493
7494         Clean space uses.
7495         * libtoolize.m4sh: Remove trailing spaces.
7496         Use <tab><sp>, as some editors remove "useless" spaces in
7497         <sp><tab>.
7498
7499 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
7500
7501         AWK is required, make sure it is set.
7502         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS: Make sure
7503         AWK is set (automake brings it in, but is not always used).
7504         Fixes old-m4-iface.at on MSYS/MSVC.
7505
7506 2009-01-25  Mike Frysinger  <vapier@gentoo.org>
7507
7508         Fix typo in libtool install mode documentation.
7509         * libltdl/config/ltmain.m4sh (func_mode_help): Change -inst-prefix
7510         to -inst-prefix-dir.
7511         * doc/libtool.texi (Install mode): Likewise.
7512
7513 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
7514
7515         Add -Wall to cwrapper tests.
7516         * tests/cwrapper.at: Add -Wall existing tests. Add additional
7517         round of tests with -Wall alone.
7518
7519 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
7520
7521         [cygwin|mingw] cwrapper cleanups.
7522         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
7523         [file scope]: re-organized includes and portability
7524         macros. Avoid oldnames on MINGW32 and MSVC for
7525         setmode/stat/chmod/getcwd/putenv. Declare _putenv on
7526         MINGW32 when -ansi. Use namespaced macro LT_DEBUGWRAPPER.
7527
7528 2009-01-24  Peter Rosin  <peda@lysator.liu.se>
7529
7530         Expand exit status test in LT_AT_NOINST_EXEC_CHECK correctly
7531         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): STATUS is
7532         argument $3, not $2.
7533
7534 2009-01-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
7535
7536         Add tests for cwrapper with -std=c89 and -std=c99
7537         * tests/cwrapper.at: New file.
7538         * Makefile.am: Add tests/cwrapper.at.
7539
7540 2009-01-22  Peter Rosin  <peda@lysator.liu.se>
7541
7542         Unify line endings in localization test.
7543         * tests/testsuite.at: Update copyright year.
7544         (LT_AT_UNIFY_NL): Add macro that unifies line endings on
7545         platforms that suffer from such confusion.
7546         * tests/localization.at: Use it. Update copyright year. Fixes
7547         the test on MSYS/MSVC.
7548
7549 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
7550
7551         [cygwin|mingw] Fix compile warnings when -std=c89.
7552         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
7553         move contents to...
7554         (func_emit_wrapper_part2): move contents to...
7555         (func_emit_wrapper): here.
7556         (func_emit_cwrapperexe_src) [file scope]: Remove
7557         variables script_text_part1 and script_text_part2.
7558         (func_emit_cwrapperexe_src) [lt_dump_script]: New function.
7559         (func_emit_cwrapperexe_src) [main]: Call it.
7560
7561 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
7562
7563         Minor cygwin cleanup
7564         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Correct
7565         case pattern for cygwin.
7566
7567 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7568
7569         Avoid failure due to Cygwin path detection bug.
7570         * tests/execute-mode.at (execute mode): Ignore noise on stderr;
7571         Cygwin might consider `d\"e' to be a DOS-style path and warn.
7572         Report by Charles Wilson.
7573
7574 2009-01-19  Robert Millan  <rmh@aybabtu.com>
7575
7576         Support GNU/kOpenSolaris.
7577         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
7578         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
7579         (_LT_LANG_CXX_CONFIG) [kopensolaris*-gnu]: Recognize
7580         GNU/kOpenSolaris.
7581         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
7582         * NEWS, THANKS: Update.
7583
7584 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7585
7586         Another LT_AT_EXEC_CHECK fixup.
7587         * tests/shlibpath.at (shlibpath_overrides_runpath): Use
7588         LT_AT_EXEC_CHECK instead of AT_CHECK.
7589
7590 2009-01-19  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
7591
7592         Add missing $EXEEXT to java test.
7593         * tests/convenience.at (Java convenience archives): Add $EXEEXT.
7594
7595 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7596
7597         Bump copyright years.
7598         * ChangeLog.2008: New, rotated from ...
7599         * ChangeLog: ... here.
7600         * Makefile.am (EXTRA_DIST): Add ChangeLog.2008.
7601         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
7602         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
7603         * libtoolize.m4sh: Likewise.
7604
7605 2009-01-14  Peter Rosin  <peda@lysator.liu.se>
7606
7607         Fix flakey mdemo-dryrun test on MSYS (again!)
7608         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
7609         not time, for really fresh files. Add sleep 1 call at yet another
7610         strategic position. Makes the test pass reliably for MSYS/MinGW.
7611
7612 2008-12-19  Akim Demaille  <demaille@gostai.com>
7613
7614         Fix copyright notice.
7615         * libltdl/config/ltmain.m4sh: Add missing comma.
7616
7617 2008-12-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7618
7619         Add cache variables to link tests.
7620         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
7621         (_LT_LINKER_SHLIBS): Add cache variables to tests that
7622         require the linker to work.  For shlibpath_overrides_runpath,
7623         this also changes the semantics to let the result from the C
7624         compiler take precedence.
7625         * tests/no-executables.at (AC_NO_EXECUTABLES): New file.
7626         * Makefile.am: Update.
7627         * NEWS: Update.
7628         Report of shlibpath_overrides_runpath issue by Mike Frysinger,
7629         report of GCC issue by Andreas Schwab.
7630
7631 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
7632
7633         Fix inadvertent commit.
7634         * bootstrap: Revert.
7635
7636 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
7637
7638         Fix manual typo.
7639         * doc/libtool.texi (LT_INIT): Use correct config.status
7640         invocation.  Reported by Akim Demaille.
7641
7642 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
7643
7644         Do not use $ECHO within eval-ed `...`, as %s\\n becomes %s\n.
7645         * HACKING: Document func_echo_all.
7646         * libltdl/m4/libtool.m4: Use it within backticks that appear in
7647         eval-ed variables.  Reported by Akim Demaille.
7648
7649 2008-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7650
7651         Fix func_infer_tag $ECHO usage; some testsuite exposure.
7652         * libltdl/config/ltmain.m4sh (func_infer_tag): Use func_echo_all
7653         rather than $ECHO for possibly multiple arguments.
7654         * tests/infer-tag.at (inferred tag, CXX inferred tag)
7655         (F77 inferred tag, FC inferred tag, GCJ inferred tag): New file,
7656         new tests.
7657         * Makefile.am: Adjust.
7658
7659         * tests/runpath-in-lalib.at (Runpath in libtool library files):
7660         Add $EXEEXT overlooked in patch yesterday.
7661
7662 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7663
7664         Fix expout and experr line ending issues.
7665         * tests/testsuite.at (LT_AT_HOST_DATA): Renamed from..
7666         (_LT_AT_TRANSLATE_TEXT_OUTPUT): ..this.
7667         (LT_AT_EXEC_CHECK, LT_AT_NOINST_EXEC_CHECK): Do not use
7668         _LT_AT_TRANSLATE_TEXT_OUTPUT any more.
7669         * tests/configure-iface.at: Use LT_AT_HOST_DATA instead of
7670         AT_DATA for `expout' files.
7671         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
7672         Likewise.
7673         * tests/need_lib_prefix.at (enforced lib prefix): Likewise.
7674         Report by Roumen Petrov.
7675
7676         Relax link-order2 test for systems with partial wrong order.
7677         * tests/link-order2.at (Link order of deplibs.): On w32 (and
7678         others, e.g., AIX), the wrongly linked executable picks up only
7679         one instance of the bad function instead of two; relax the test
7680         to accept this; we still require the right link order with the
7681         correctly linked executable.
7682         Reported by Roumen Petrov and others.
7683
7684 2008-11-23  Roumen Petrov  <bugtrack@roumenpetrov.info>
7685             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7686
7687         Add $EXEEXT to all linked programs in the new testsuite.
7688         * tests/convenience.at, tests/ctor.at, tests/darwin.at,
7689         tests/deplibs-ident.at, tests/duplicate_conv.at,
7690         tests/duplicate_deps.at, tests/duplicate_members.at,
7691         tests/export.at, tests/fail.at, tests/indirect_deps.at,
7692         tests/inherited_flags.at, tests/link-order.at,
7693         tests/link-order2.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
7694         tests/need_lib_prefix.at, tests/runpath-in-lalib.at,
7695         tests/search-path.at, tests/shlibpath.at, tests/static.at,
7696         tests/stresstest.at, tests/template.at, tests/testsuite.at:
7697         Use $EXEEXT throughout, except in Makefile.am snippets where
7698         automake takes care of it, and in testsuite macros that take
7699         care of the extension.
7700         Reports by Roumen Petrov and Alon Bar-Lev.
7701
7702 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7703
7704         Adjust executable run tests to cwrapper changes.
7705         * tests/testsuite.at (LT_AT_EXEC_CHECK): Accept fifth argument
7706         ARGS-OR-STATUS-ADJUST, for command-line arguments and/or exit
7707         status flattening.  Rewrite to prefer the executable with the
7708         `.exe' prefix over one without.  Test exit status against
7709         expected exit status, not against zero, when determining whether
7710         this may be a cross-compilation-induced result.
7711         (LT_AT_NOINST_EXEC_CHECK): Likewise.
7712         * tests/static.at (static linking flags for programs): Adjust
7713         calls.
7714         Report by Roumen Petrov.
7715
7716         No trailing period in Autotest test group names.
7717         * tests/link-order.at (Link order test): Drop trailing period
7718         from test name.
7719         * tests/link-order2.at (Link order of deplibs): Likewise.
7720
7721 2008-11-23  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
7722
7723         Fix func_emit_cwrapperexe_src for WinCE: no errno support.
7724         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
7725         [__MINGW32CE__]: Do not use errno, do not include errno.h and
7726         remove calls related to errno when using the mingw32ce compiler.
7727
7728 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7729
7730         No libm in WinCE.
7731         * libltdl/m4/libtool.m4 (LT_LIB_M) [cegcc*]: This system has
7732         only a dummy libm, ignore.
7733         Report by Vincent Torri.
7734
7735         Fix import library detection for WinCE.
7736         * libltdl/config/ltmain.m4sh (func_win32_libid): Work for
7737         pe-arm-wince import libraries.
7738         * NEWS: Update.
7739         Report by Vincent Torri.
7740
7741 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7742             Eric Blake  <ebb9@byu.net>
7743
7744         Fix $ECHO test to not influence other _AS_DETECT_SUGGESTED code.
7745         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix test to
7746         not influence further tests registered with _AS_DETECT_SUGGESTED
7747         and do not use a PATH below /tmp, to avoid influence by a third
7748         party.
7749
7750 2008-11-23  Alon Bar-Lev  <alon.barlev@gmail.com>  (tiny change)
7751
7752         Fix func_win32_libid for 64-bit Windows.
7753         * libltdl/config/ltmain.m4sh (func_win32_libid): Accept file
7754         format 'pe-x86-64'.
7755         * NEWS: Update.
7756
7757 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7758
7759         Avoid newlines in some AT_CHECK commands.
7760         * tests/standalone.at (linking libltdl without autotools): Wrap
7761         lines with dnl, to avoid turning off tracing of AT_CHECK.
7762         * tests/subproject.at (linking libltdl without autotools):
7763         Likewise.
7764
7765         Replace uses of $SED $basename.
7766         * libltdl/config/ltmain.m4sh (func_mode_link): Replace instances
7767         of `$ECHO ... | $SED' with calls to func_basename.
7768         * libtoolize.m4sh (func_copy, func_serial)
7769         (func_massage_aclocal_DATA): Likewise, replace with
7770         func_dirname_and_basename.
7771         * tests/defs.m4sh (func_configure_nofail, func_make, func_exec):
7772         Likewise.
7773
7774         No need to prepend $progname with './'.
7775         * libltdl/config/general.m4sh (func_dirname_and_basename): $ECHO
7776         copes with leading hyphens now, so do not mangle $progname any
7777         more.
7778
7779         Revenge of the $ECHO. Kill most uses of Xsed.
7780         * libltdl/config/general.m4sh: Replace all uses of `$ECHO "X..."
7781         | $Xsed' with `$ECHO "..." | $SED', and employ further trivial
7782         simplifications.  Replace $ECHO with echo where appropriate.
7783         (func_echo_all): New function.
7784         * libltdl/config/getopt.m4sh: Likewise simplifications.
7785         * libltdl/config/ltmain.m4sh: Likewise.
7786         * libltdl/m4/libtool.m4: Likewise.
7787         (LT_CMD_MAX_LEN): Use func_fallback_echo, to ensure that the
7788         command line is passed through an exec* function.
7789         * libtoolize.m4sh: Likewise simplifications.  Use func_echo_all
7790         to implement --dry-run.
7791         * tests/defs.m4sh: Likewise simplifications.
7792         * tests/quote.test: Likewise simplifications.
7793
7794         Fix matching of Sun Fortran compiler on Linux.
7795         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: Also
7796         match `Sun Ceres Fortran' compiler; reorder with C compiler
7797         matching.
7798         * THANKS: Update.
7799         Report by Ethan Mallove.
7800
7801 2008-11-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
7802
7803         Fix --verbose option; add new --no-{silent|quiet|verbose} options.
7804
7805         * libltdl/config/ltmain.m4sh (usage): Document
7806         new options --no-silent/--no-quiet and --no-verbose.
7807         (func_enable_tag): Handle new options.
7808         Modified --verbose to actually activate opt_verbose.
7809         New behavior: --silent disables both "normal" output and
7810         func_verbose output.  --verbose enables both "normal"
7811         output and func_verbose output. --no-silent enables
7812         "normal" output, but does not affect func_verbose output.
7813         --no-verbose disables func_verbose output, but does not
7814         affect "normal" output.
7815         * NEWS: announce new options --no-silent/--no-quiet, and
7816         --no-verbose.
7817         * doc/libtool.texi: document new options --no-silent/--no-quiet
7818         and --no-verbose.
7819
7820 2008-11-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7821
7822         Fix match patterns for cegcc*.
7823         * libltdl/config/ltmain.m4sh (func_mode_link): Match '*cegcc*'
7824         instead of '*cegcc' for $host_os.
7825         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Likewise.
7826         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
7827         Likewise.
7828         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Match
7829         '*-*-cegcc*' for $host.
7830
7831         Ensure $ac_aux_dir is initialized for LIBTOOL_DEPS.
7832         * libltdl/m4/libtool.m4 (LT_INIT): Require
7833         AC_CONFIG_AUX_DIR_DEFAULT.
7834         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Amend test to
7835         expose this.
7836         Report, analysis, and test example by Jakub Bogusz.
7837
7838         Check for bogus aclocal.m4 contents in bootstrap and dist-hook.
7839         * Makefile.am (dist-hook): Bail out if shipped aclocal.m4 files
7840         contain LT_INIT, AC_PROG_LIBTOOL, or AM_PROG_LIBTOOL macro
7841         definitions.  These can only come from bogus pull-ins from older
7842         installed Libtool macro files.
7843         * bootstrap: Likewise.
7844         Report by Akim Demaille.
7845
7846 2008-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7847
7848         Fix $ECHO abuse exposed by recent patch.
7849         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
7850         _LT_CHECK_SHELL_FEATURES, for $lt_NL2SP.  Always quote argument
7851         to $ECHO.
7852
7853         Skip sys_lib_search_path on systems without libz.
7854         * tests/search-path.at (sys_lib_search_path): Autotest needs at
7855         least one AT_CHECK executed in a test group.  So if we haven't
7856         found -lz anywhere, as may happen with cross-compilers, skip the
7857         test.
7858         * THANKS: Update.
7859         Report by Alon Bar-Lev.
7860
7861         Fix execute mode test to actually expose cwrapper failures.
7862         * tests/execute-mode.at (execute mode): Actually also test the
7863         cwrapper on the arguments.
7864         Report by Bruno Haible.
7865
7866 2008-11-15  Charles Wilson  <libtool@cwilson.fastmail.fm>
7867
7868         Add func_win32_import_lib_p.
7869         * libltdl/config/ltmain.m4sh (func_win32_import_lib_p):
7870         New function.
7871
7872 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7873
7874         Fix archive_cmds for older cc on HP-UX 11.
7875         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hp-ux11*, !GCC]
7876         [!hppa*64*, !ia64*] <archive_cmds>: Older releases of the HP-UX
7877         11.00 C compiler do not support -b yet; use a link test to
7878         decide whether $LD should be used for library creation.
7879         * THANKS: Update.
7880         Report by Daniel Richard G.
7881
7882 2008-11-12  Paolo Bonzini  <bonzini@gnu.org>
7883
7884         * configure.ac: Bump Autoconf requirement.
7885         * libltdl/config/general.m4sh: Use $as_echo as default $ECHO.
7886         * tests/testsuite.at: Use $as_echo as default $ECHO.
7887
7888         * libltdl/m4/libtool.m4 (LT_INIT): Add _LT_SHELL_INIT to
7889         work around Autoconf <2.64 bug.
7890         (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT): Add func_fallback_echo.
7891         Eliminate lt_ECHO requoting.
7892         (_LT_SHELL_INIT): Use a public M4sh diversion.
7893         (_LT_PROG_ECHO_BACKSLASH): Rewrite.
7894         (LT_CMD_MAX_LEN): Do not use --fallback-echo.
7895         * libltdl/config/ltmain.m4sh: Remove --no-reexec and --fallback-echo
7896         handling.
7897         (func_fallback_echo): New.
7898         (func_emit_wrapper_part1): Quote ECHO.  Remove --no-reexec and
7899         --fallback-echo handling.
7900         (Execute mode): Do not set qecho.
7901
7902 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7903
7904         Use -no-undefined in install tests.
7905         * tests/install.at (Install tests): Use `-no-undefined'.
7906
7907 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7908
7909         Do not use `test ... -a ...'.
7910         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hpux10, hpux11]:
7911         Replace test -a with test && test.
7912
7913 2008-11-11  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
7914
7915         Fix destdir tests in cross compile mode.
7916         * tests/destdir.at (Simple DESTDIR install)
7917         (DESTDIR with in-package deplibs): Use $EXEEXT throughout.
7918         * THANKS: Update.
7919
7920 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7921
7922         Simplify cwrapper handling a bit.
7923         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1)
7924         (func_emit_wrapper_part2, func_to_host_path)
7925         (func_to_host_pathlist, func_emit_wrapper): Simplify using
7926         default argument, func_append.
7927
7928 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
7929
7930         Separate part of _LT_SETUP into other macros, detect ECHO sooner.
7931         * libltdl/m4/libtool.m4 (_LT_PREPARE_SED_QUOTE_VARS): New macro,
7932         extracted from...
7933         (_LT_SETUP): ... here.  Require _LT_PROG_ECHO_BACKSLASH sooner.
7934
7935 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
7936
7937         Fix quoting when config.status generates libtool config.
7938         * libltdl/m4libtool.m4 (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT):
7939         Double quote ECHO-ed variables.
7940
7941 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
7942
7943         Use documented M4sh interfaces.
7944         * clcommit.m4sh: Do not unset CDPATH, use AS_INIT and M4sh diversions.
7945         * libltdl/config/mailnotify.m4sh: Likewise.
7946         * libtoolize.m4sh: Likewise.
7947         * tests/defs.m4sh: Likewise.
7948         * tests/testsuite.at: Move AT_INIT invocation at the top.
7949
7950         * libltdl/m4/libtool.m4 (_LT_INIT_GENERATED): New.
7951         (LT_OUTPUT): Use it.
7952
7953         * libltdl/config/general.m4sh (M4SH_IN_HEADER): New.
7954         (progpath): Move setting before $0 could be clobbered.
7955         * libltdl/config/ltmain.m4sh (M4SH_IN_HEADER): New.
7956
7957 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
7958
7959         Run sh.test on the M4sh source.
7960         * tests/defs.m4sh (scripts): Point to pre-m4 sources.
7961
7962 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
7963
7964         Avoid that autom4te complains about unexpanded macros.
7965         * libtoolize.m4sh: Allow occurrences of "dnl" and use quadrigraphs
7966         to protect other m4 macros.
7967
7968 2008-11-11  Bruno Haible  <bruno@clisp.org>
7969             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7970
7971         Fix cwrapper argument mangling on w32.
7972         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): On
7973         mingw, preprocess the argument vector through prepare_spawn.
7974         * tests/execute-mode.at (execute mode): Output args
7975         newline-separated.  Extend tests by more argument pairs that
7976         contain special characters, where the w32 cwrapper fails.
7977         Also test a real compiled program, linked against an uninstalled
7978         library, to expose cwrapper issues.
7979         * NEWS: Update.
7980
7981 2008-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7982
7983         Update to GFDL 1.3.
7984         * doc/fdl.texi: Update to GFDL 1.3.
7985         * doc/libtool.texi: Adjust.
7986         * NEWS: Update.
7987
7988 2008-11-09  Alexei Sheplyakov  <varg@theor.jinr.ru>  (tiny change)
7989
7990         Fix cross compilation with wine for the case SHELL != bash.
7991         * libltdl/config/ltmain.m4sh (func_to_host_path): Avoid escape
7992         sequence interpretation by 'echo', for w32-style paths.
7993         * THANKS: Update.
7994
7995 2008-10-28  Michael Haubenwallner  <michael.haubenwallner@salomon.at> (tiny change)
7996
7997         Fix checks for unsupported allow_undefined_flag.
7998         * tests/tagdemo-undef.test: Match allow_undefined_flag
7999         correctly, for SKIPping.
8000         * tests/cdemo-undef.test: Likewise.
8001
8002 2008-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8003
8004         * tests/testsuite.at (_LTDL_PROJECT_FILES): Fix dependencies for
8005         parallel make.
8006
8007         * libtoolize.m4sh (func_nonemptydir_p): Fix typo in error
8008         message.
8009
8010 2008-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8011
8012         Fix Autoconf 2.59 incompatibilty.
8013         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): m4_pattern_allow
8014         `LT_LIBEXT'; Autoconf 2.59's AC_DEFINE* macros didn't do this
8015         automatically yet.
8016         * NEWS, THANKS: Update.
8017         Report by Marcel Loose.
8018
8019 2008-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8020
8021         Atomic shared library install permissions on HP-UX.
8022         The HP-UX 11 runtime linker fails to mmap shared libraries
8023         without execute permissions.  Fixing them with postinstall_cmds
8024         may be too late, as ln, sed, and chmod may link against the
8025         library being installed.
8026
8027         * libltdl/m4/libtool.m4 (install_override_mode): New LT_DECL.
8028         (_LT_SYS_DYNAMIC_LINKER) [hpux9*, hpux10*, hpux11*]: Set it.
8029         * libltdl/config/ltmain.m4sh (func_mode_install): Build a second
8030         command line, $install_shared_prog, for the installation of the
8031         shared library.  Override resp. set the permission mode if
8032         install_override_mode is nonempty.
8033         * doc/libtool.texi (libtool script contents): Document it.
8034         * tests/install.at (Install tests): New test.
8035         * Makefile.am (TESTSUITE_AT): Adjust.
8036         (TESTS_ENVIRONMENT): Pass INSTALL.
8037         Report by Bruno Haible.
8038
8039 2008-09-26  Eric Blake  <ebb9@byu.net>
8040
8041         Avoid gcc warning.
8042         * libltdl/loaders/loadlibrary.c (vm_open): Don't check for array
8043         being a NULL pointer.
8044
8045 2008-09-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8046
8047         Man pages for libtoolize and libtool, new command line option
8048         --help-all.
8049         * Makefile.am (dist_man1_MANS, update_mans): New macros.
8050         ($(srcdir)/doc/libtool.1, $(srcdir)/doc/libtoolize.1): New
8051         rules.  Use --help-all for libtool.
8052         (MAINTAINERCLEANFILES): New macro.  Add dist_man1_MANS.
8053         (BUILT_SOURCES): Add libtoolize.
8054         * configure.ac: Check for help2man, set HELP2MAN.
8055         * doc/libtool.texi: Add @direntry for libtool-invocation.
8056         (Invoking libtool): Document -h, --help-all.  Reorder mode
8057         description for consistency.
8058         (Compile mode): Do not document -Wl,FLAG and -XCClinker here.
8059         (Link mode): Document -Wc,FLAG here, reformat a bit.
8060         * libtoolize.m4sh: Reformat --help output a bit, to help
8061         help2man.
8062         * libltdl/config/ltmain.m4sh: Likewise.  Also, set PROGRAM to
8063         `libtool', not `ltmain.sh', so the former is used in the man
8064         page.
8065         New argument `--help-all'.  If given, call func_help and
8066         func_mode_help several times, beating output in shape with sed.
8067         (func_mode_help): Do not exit here.
8068         * libltdl/config/getopt.m4sh (func_usage): Work with different
8069         indentations, but require comment hash in first column, when
8070         grepping for '-h' in usage to end short help.
8071         (func_help): Accept optional argument to not exit.
8072         * NEWS, THANKS: Update.
8073         Suggestion by Karl Berry.
8074
8075 2008-09-08  Gary V. Vaughan  <gary@gnu.org>
8076
8077         Use `-version-info 9:0:2' for one added iface since 2.2.4.
8078         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Make the libltdl
8079         version number match 2.2.6a rerelease.
8080
8081         Add ./commit option for pushing tags back to origin.
8082         * clcommit.m4sh (opt_tags): New --tags push option.
8083         (func_commit): Run `$GIT push --tags' if --tags was passed.
8084         * HACKING (Release Procedure): Note the requirement to pass
8085         --tags to ./commit for new release tag to be push back to
8086         origin.
8087
8088 2008-09-07  Gary V. Vaughan  <gary@gnu.org>
8089
8090         Retire gnu.org news.html in favour of savannah news.
8091         * HACKING (Release Procedure): Add instructions for sending
8092         a web release announcement to http://planet.gnu.org via
8093         the savannah news manager.
8094
8095         Add untested git push conflict testing to commit script.
8096         * clcommit.m4sh (func_check_conflicts): Test return status
8097         of 'git push --dry-run', and display an error on non-zero.
8098
8099         Enable release procedure to work with lzma OLDRELEASE file.
8100         * Makefile.maint (diffs, prev-tarball, new-tarball): If lzma
8101         tarballs are present use them to generate the diffs, otherwise
8102         use gz tarballs if they are present, or else complain if both
8103         are missing.
8104
8105         Set SCM version number to 2.2.7a.
8106         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8107         number to 2.2.7a.
8108         * NEWS: Updated.
8109
8110         GNU Libtool 2.2.6 was released.
8111
8112         Fix typo in Makefile.maint.
8113         * Makefile.maint (git-news): Renamed to check-news, since it
8114         doesn't actually run git.  Adjust all dependees.
8115
8116         Run `git commit -a' when no files are passed.
8117         * clcommit.m4sh (func_commit): Add -a argument if necessary.
8118
8119         Prepare for next stable release.
8120         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Update.
8121         * libltdl/m4/libtool.m4: Bump serial number to account for
8122         changes since 2.2.4 release.
8123         * INSTALL, config/config.guess, config/texinfo.tex: Updated
8124         from canonical source.
8125         * configure.ac (AM_INIT_AUTOMAKE): Specify dist-lzma, which
8126         was introduced after automake-1.10 was released.
8127         (abs_top_srcdir, abs_top_builddir): No need to substitute these
8128         from configure anymore, since we require automake 1.10.1, which
8129         does perform the substitutions properly.
8130         (TIMESTAMP): Normal releases were displaying the long-form
8131         timestamp.  Fix to show the short release timestamp as per
8132         alpha release numbers.
8133         * NEWS: Update with missing entries from ChangeLog.
8134         * HACKING (Release Procedure): We release lzma tarballs now
8135         but no xdeltas.
8136         * Makefile.maint: Updated to match Release Procedure
8137         instructions in HACKING.
8138
8139         Convert mailnotify headers to git.
8140         * clcommit.m4sh: Improve mailnotify contents.
8141
8142         Make ./commit useful again.
8143         * clcommit.m4sh: Major overhaul and simplification for git.
8144
8145 2008-09-06  Gary V. Vaughan  <gary@gnu.org>
8146
8147         Fix 'DISTCHECK_CONFIGURE_FLAGS=--program-prefix=g' bug.
8148         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Fix test failures
8149         with --program-prefix, where the test case output contains the
8150         transformed name somewhere other than the beginning of a line.
8151         * libtoolize.m4sh (func_check_macros): Be sure to always use
8152         the transformed name in output messages.
8153
8154 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8155
8156         Do not remove .gcno files when linking.
8157         * libltdl/config/ltmain.m4sh (func_mode_link): When removing
8158         potential output files before linking, do not remove *.gcno
8159         profile information GCC outputs next to object files in `.libs'.
8160         Report by Vincent Torri.
8161
8162 2008-09-01  Peter O'Gorman  <peter@pogma.com>
8163
8164         Revert 75142db4f8afc65ba7aae0ed80ea0b35bd9cc382 (AIX libltdl
8165         dlopen(NULL)
8166
8167         * libltdl/m4/ltdl.m4: Remove LTDL_DLOPEN_SELF_WORKS define.
8168         * libltdl/loaders/dlopen.c: Remove LTDL_DLOPEN_SELF_WORKS check.
8169         * libltdl/m4/libtool.m4 [aix]: Set export_dynamic_flag_spec to
8170         -Wl,-bexpall. This is a temporary workaround until a real fix
8171         is implemented.
8172         * NEWS: document it.
8173
8174 2008-08-26  Peter O'Gorman  <peter@pogma.com>
8175
8176         Allow for extensions other than .a for preloaded modules.
8177         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define LT_LIBEXT.
8178         * libltdl/ltdl.c (lt_dladvise_preload): Use it.
8179         Reported by Ralf Wildenhues.
8180
8181 2008-08-26  Peter O'Gorman  <peter@pogma.com>,
8182             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8183
8184         Remove unnecessary global argz functions.
8185         * libltdl/argz.c (argz_add,argz_count): Remove.
8186         * libltdl/argz_.h (argz_add,argz_count): Remove.
8187         * NEWS: Announce it.
8188         * tests/ltdl-api.at: Test so we don't repeat it.
8189         * Makefile.am: Add new test.
8190
8191 2008-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8192
8193         Initial support for Lahey Fortran on GNU/Linux.
8194         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8195         [linux] <lf95>: Add support for Lahey Fortran 8.1.
8196         * NEWS, THANKS: Update.
8197         Suggested by Craig Tierney.
8198
8199 2008-08-21  Sam Thursfield  <ssssam@gmail.com>  (tiny change)
8200
8201         Avoid leading separator in PATH for DLL search.
8202         * libltdl/config/ltmain.m4sh (func_mode_link) [cygwin, mingw]
8203         [ pw32, os2, cegcc]: Fix dllsearchpath not to contain leading
8204         separator.
8205         * THANKS: Update.
8206
8207 2008-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8208
8209         * libltdl/config/ltmain.m4sh (func_mode_link): Quote $#.
8210
8211         Disallow `-L path', do not misparse it silently.
8212         * libltdl/config/ltmain.m4sh (func_mode_link): Diagnose `-L'
8213         without argument, and `-L path', i.e., with a space.
8214         * tests/fail.at (Failure tests): Test for these failures.
8215         * THANKS: Update.
8216         Report by Olaf Lenz.
8217
8218 2008-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8219
8220         Avoid test failure due to broken dlpreloading of shared library.
8221         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Drop
8222         some newlines in AT_CHECK commands, for better 'testsuite -x'
8223         output.  Only create a static installable libpreload.la, to
8224         avoid exposing the bug libtool currently has with preloading of
8225         shared libraries.  Add a note to revisit this later.
8226
8227 2008-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8228
8229         Parallel make testsuite fixes.
8230         * tests/configure-iface.at (installable libltdl)
8231         (--with-ltdl-include/lib, --with-included-ltdl): Add dlopened
8232         libmodule.la to main_DEPENDENCIES.
8233         * tests/old-m4-iface.at (AC_WITH_LTDL): Likewise, let ltdldemo
8234         depend upon module.la and libltdl/libltdlc.la.
8235         * tests/testsuite.at (LT_AT_MAKE): Invoke each target in turn,
8236         default to 'all'.
8237         * tests/early-libtool.at (config.lt): Define 'all' target.
8238
8239         * HACKING: Update for git, fix some minor nits.
8240
8241 2008-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8242
8243         Remove use of exit in configure test sources.
8244         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Return from main,
8245         to avoid using undeclared exit.
8246         Report against OpenMPI from Coverity via Jeff Squyres.
8247
8248         * tests/configure-iface.at (convenience libltdl): Ignore warning
8249         from parallel make.
8250
8251 2008-08-07  DJ Delorie  <dj@redhat.com>
8252
8253         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [tpf]
8254         <library_names_spec>: Fix typo in variable name.
8255
8256 2008-08-06  Steve Ellcey  <sje@cup.hp.com>
8257
8258         Use -fPIC with GCC on HP-UX/ia64.
8259         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8260         [ia64-*-hpux*]: Specify -fPIC when using GCC to build shared
8261         libraries.
8262
8263 2008-08-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8264
8265         * NEWS: Minor fixups.
8266
8267 2008-08-01  Gary V. Vaughan  <gary@gnu.org>
8268
8269         Bring NEWS up to date.
8270         * NEWS: Add missing summaries since 2.2.4 release.
8271
8272         Implement lt_dlopening of only preloaded modules.
8273         * libltdl/m4/ltdl.m4 (LTDL_INIT): Check for a libltdl that
8274         provides lt_dladvise_preopen when deciding if installed libltdl
8275         is 'new enough'.
8276         * libltdl/libltdl/lt__private.h (lt__advise): Add a new
8277         is_preload flag.
8278         * libltdl/ltdl.c (lt_dladvise_preload): New api call to set it.
8279         (try_dlopen): If it is set, and the search of preloaded modules
8280         didn't return a match, don't bother searching the filesystem.
8281         * libltdl/ltdl.h (lt_dladvise_preload): Declare it.
8282         * doc/libtool.texi (Libltdl Interface): Document it.
8283         * tests/lt_dladvise.at: Test it (and incidentally add some test
8284         coverage for `libtool -dlpreopen').
8285         * NEWS: Announce it.
8286
8287 2008-08-01  Vincent Torri  <doursse@users.sf.net>
8288
8289         Add cegcc (Windows CE/PocketPC) support.
8290         * libltdl/config/ltmain.m4sh: Add 'cegcc' case where needed.
8291         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, LT_SYS_DLOPEN_SELF)
8292         (_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
8293         (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8294         (_LT_LANG_CXX_CONFIG): Likewise.
8295         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Likewise.
8296         * NEWS: Update.
8297         * THANKS: Update.
8298
8299 2008-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8300
8301         * libltdl/config/ltmain.m4sh (func_to_host_path): Fix sh.test
8302         failure.
8303         Report by Paolo Bonzini.
8304
8305 2008-07-31  Paolo Bonzini  <bonzini@gnu.org>
8306
8307         * ltmain.m4sh (func_emit_cwrapperexe_src): Factor
8308         multiple closed braces into the next cat command.
8309
8310 2008-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8311
8312         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <icc, icpc>:
8313         Use -fPIC, newer Intel compilers (icc 10, ifort 9) reject -KPIC.
8314         * tests/localization.at: Skip test if the compiler fails merely
8315         due to the locale setting.
8316         * THANKS: Update.
8317         Report by Vincent Lefevre.
8318
8319 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8320
8321         * doc/libtool.texi (Linking executables, Static libraries)
8322         (Modules for libltdl, Distributing libltdl): Remove TABs from
8323         the manual.
8324
8325 2008-06-13  Peter O'Gorman  <peter@pogma.com>
8326
8327         Support ifort on darwin.
8328         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Build
8329         shared libraries with ifort.
8330         Reported by Christopher Hulbert.
8331
8332 2008-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
8333
8334         [mingw] fix cross-compile-with-wine case
8335         * libltdl/config/ltmain.m4sh (func_to_host_path)
8336         [host=mingw, build!=mingw|cygwin]: check that winepath
8337         stdout is non-empty and exit code is 0, instead of checking
8338         stderr.
8339         Reported by: Roumen Petrov
8340
8341 2006-06-01  Stas Maximov  <smaximov@ieee.org>  (tiny change)
8342
8343         Check only regular files, not devices, for lalibs.
8344         * libltdl/config/ltmain.m4sh (functions func_lalib_p)
8345         (func_lalib_unsafe_p): Only read regular files and not device
8346         files.  Avoids blocking libtool executing gdb, when a
8347         pseudo-terminal device /dev/pts/NN is given as one of the
8348         arguments to gdb, as in:
8349         libtool --mode=execute gdb -q -nw -i mi -tty /dev/pts/4 prog
8350
8351 2008-05-31  Peter O'Gorman  <peter@pogma.com>
8352
8353         Skip darwin test if fat link fails.
8354         * tests/darwin.at: Skip if we can not link a fat program.
8355         Reported by Daniel Macks <dmacks@netspace.org>
8356
8357 2008-05-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8358
8359         libtoolize should not remove config.guess, config.sub.
8360         * libtoolize.m4sh (all_pkgconfig_files): Do not list
8361         config.guess nor config.sub.  We don't install them without
8362         --install, and the project may not be using Automake.
8363         Report by Andreas Schwab.
8364
8365         Simplify argument parsing in cwrapper.
8366         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
8367         Use NULL where appropriate.  Do not compute length of arguments
8368         needlessly.
8369
8370 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
8371
8372         [mingw] Add cross-compile support to cwrapper
8373         * libltdl/config/ltmain.m4sh (func_to_host_path) [$host=mingw]:
8374         If present, use winepath to convert from $build to $host
8375         if $build is neither mingw (msys) nor cygwin.  Use unconverted
8376         path as fallback when conversion fails. Also update comments.
8377         (func_to_host_pathlist) [$host=mingw]: Ditto. For fallback case,
8378         use simplistic ':' to ';' path separator translation.
8379
8380 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
8381
8382         Cwrapper should not eat -- arguments
8383         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
8384         [file scope]: Defined all option strings in terms of macro
8385         LTWRAPPER_OPTION_PREFIX. Similarly defined all option string
8386         lengths in terms of macro LTWRAPPER_OPTION_PREFIX_LENGTH.
8387         [main]: Modified option parsing algorithm to pass -- on to
8388         target, and to not stop processing arguments when -- is seen.
8389         Added check for unrecognized options in reserved namespace
8390         defined by LTWRAPPER_OPTION_PREFIX.
8391
8392 2008-05-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8393
8394         Fix ifort settings again.
8395         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
8396         Unlike icc and ecc, not all ifort versions understand `-KPIC',
8397         e.g. version 10.1, so use `-fPIC' instead.
8398         Report by Jeff Squyres.
8399
8400 2008-05-20  Eric Blake  <ebb9@byu.net>
8401
8402         Resynchronize argz whitespace changes from gnulib.
8403         * libltdl/m4/argz.m4: Kill trailing whitespace.
8404         * libltdl/argz.c: Likewise.
8405
8406 2008-05-19  Eric Blake  <ebb9@byu.net>
8407
8408         Fix regression from two days ago.
8409         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ): Don't refer to deleted macro.
8410
8411 2008-05-17  Eric Blake  <ebb9@byu.net>
8412
8413         Speed up bootstrap by improving lt_combine.
8414         * libltdl/m4/ltsugar.m4 (lt_combine): Mirror Autoconf 2.62
8415         improvements.  Includes a semantic change where the separator can
8416         now be empty, and where an empty fourth argument is now treated as
8417         a valid suffix.
8418         * libltdl/m4/libtool.m4 (_lt_decl_varnames_tagged): Adjust to new
8419         semantics of lt_combine.
8420         (lt_decl_varnames_tagged): Fix quoting and optimize.
8421
8422         Kill _LT_LIBSOURCES; it wasn't checking anything useful.
8423         * libltdl/m4/ltdl.m4 (_LT_LIBSOURCES): Delete.
8424         (LTDL_INIT): Ignore arguments to AC_LIBSOURCES during _LTDL_SETUP,
8425         on the assumption that libtoolize correctly installed them.
8426
8427 2008-05-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
8428
8429         [mingw|cygwin] Modify cwrapper to invoke target directly.
8430         * libltdl/config/ltmain.m4sh (func_to_native_path):
8431         New function. If $host is mingw, and $build is mingw
8432         or cygwin, convert path to mingw native format.
8433         (func_to_native_pathlist): New function. Ditto, for
8434         :-separated pathlists.
8435         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
8436         Ensure putenv and setenv are declared. Define HAVE_SETENV.
8437         (func_emit_cwrapperexe_src) [main]: Add new constants to
8438         hold desired PATH settings; initialize and use functions
8439         above to convert to $host format if necessary. Add new
8440         command-line options --lt-env-set, --lt-env-prepend, and
8441         --lt-env-append. No longer emit wrapper script as integral
8442         part of launching child. Remove support for (now) unnecessary
8443         $TARGETSHELL. Exec actual target executable directly.
8444         (func_emit_cwrapperexe_src) [lt_setenv, lt_extend_str]
8445         [lt_split_name_value, lt_opt_process_env_set]
8446         [lt_opt_process_env_prepend, lt_opt_process_env_append]
8447         [lt_update_exe_path, lt_update_lib_path]: New functions.
8448
8449 2008-05-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
8450
8451         Ensure cwrapper compiles without warnings under -std=c99.
8452         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
8453         new function.
8454         (func_emit_wrapper_part2): new function.
8455         (func_emit_wrapper): delegate to new functions.
8456         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
8457         ensure realpath is declared.
8458         (func_emit_cwrapperexe_src): declare two different strings
8459         to each hold part of the wrapper script content. Initialize
8460         using new func_emit_wrapper_partX functions.
8461         (func_emit_cwrapperexe_src) [main]: when emitting wrapper
8462         script content, use both strings.
8463         Reported by Yaakov Selkowitz.
8464
8465 2008-05-06  Charles Wilson  <libtool@cwilson.fastmail.fm>
8466
8467         Ensure $OBJDUMP is defined
8468         * libltdl/m4/libtool.m4 (_LT_DECL_OBJDUMP): new macro ensures
8469         that $OBJDUMP is always defined sanely.
8470         (_LT_SYS_DYNAMIC_LINKER): call it.
8471         (_LT_CHECK_MAGIC_METHOD): call it.
8472
8473 2008-05-05  Gary V. Vaughan  <gary@gnu.org>
8474
8475         Fix libtoolize test failure with aclocal < 1.10.1
8476         * tests/libtoolize.at
8477         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Older aclocal
8478         requires a space between -I and the directory argument.
8479         Reported by Daniel Macks <dmacks@netspace.org>
8480
8481 2008-05-04  Gary V. Vaughan  <gary@gnu.org>
8482
8483         Set SCM version number to 2.2.5a.
8484         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8485         number to 2.2.5a.
8486         * NEWS: Updated.
8487
8488         GNU Libtool 2.2.4 was released.
8489
8490         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8491         number to 2.2.4.
8492         * libltdl/Makefile.inc (LTDL_VERSION_INFO): C:R+1:A because the
8493         interfaces are unchanged, even though we improved the code some
8494         more.
8495         * NEWS: Updated.
8496
8497         Macro file serial updates for next stable release.
8498         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
8499         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: Bump serial
8500         numbers to account for changes since 2.2.2 release.
8501
8502         Make libtoolize tests work with distcheck.
8503         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): When $tst_aclocal
8504         is set, transform paths that use it to generic
8505         /usr/local/share/aclocal in time for AT_CHECK comparisons.
8506
8507 2008-05-03  Gary V. Vaughan  <gary@gnu.org>
8508
8509         Don't trip over outdated acinclude.m4.
8510         * libtoolize.m4sh (all_pkgconfig_files, all_pkgmacro_files)
8511         (all_pkgltdl_files): New variables listing all files ever
8512         maintained by any release of libtoolize.
8513         (func_install_pkgconfig_parent, func_install_pkgltdl_files)
8514         (func_install_pkgconfig_subproject, func_install_pkgmacro_parent)
8515         (func_install_pkgmacro_subproject): Carefully clean up any files
8516         that may have been installed by previous libtoolize releases.
8517         * tests/libtoolize.at: New test for libltdl/acinclude.m4 removal.
8518         Reported by Andreas Schwab <schwab@suse.de>.
8519
8520 2008-05-02  Peter O'Gorman  <peter@pogma.com>
8521
8522         It helps to close quotes.
8523         * libltdl/config/ltmain.m4sh (func_mode_link): Add closing '.
8524
8525 2008-05-01  Peter O'Gorman  <peter@pogma.com>
8526
8527         Use AC_CHECK_TOOL for otool and otool64.
8528         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
8529         * libltdl/config/ltmain.m4sh (func_mode_link): Use.
8530         Reported by Richard Purdie <rpurdie@rpsys.net>
8531
8532 2008-04-30  Eric Blake  <ebb9@byu.net>
8533
8534         Support cygwin 1.7.0 in loadlibrary loader.
8535         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD) <cygwin>: Check for modern
8536         function.
8537         * libltdl/loaders/loadlibrary.c (vm_open): Avoid deprecated
8538         cygwin_conv_to_full_win32_path.
8539
8540 2008-04-29  Gary V. Vaughan  <gary@gnu.org>
8541
8542         New libtoolize --no-warn option and LIBTOOLIZE_OPTIONS parsing.
8543         * libltdl/config/general.m4sh (opt_warning): New option.
8544         (func_warning): Only display a warning message if $opt_warning
8545         is true.
8546         * libtoolize.m4sh: Accept options in LIBTOOLIZE_OPTIONS
8547         environment variable.
8548         (--no-warn): Parse new option.
8549         (func_serial_update_check, func_keyword_update): Use func_warning.
8550         (func_check_macros): Bail out before style issues nags when
8551         $opt_warning is false.
8552         * doc/libtool.texi (Invoking Libtoolize): Document it.
8553         * tests/libtoolize.at: Test it.
8554         * NEWS: Updated.
8555
8556         Fix libtoolize test failure with aclocal-1.10.1.
8557         * tests/libtoolize.at
8558         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Force aclocal to
8559         search the source tree for latest libtool macros.
8560
8561 2008-04-24  Eric Blake  <ebb9@byu.net>
8562
8563         Fix bug in 2008-04-21 type improvements.
8564         * libltdl/ltdl.c (load_deplibs): Fix casting bug.
8565
8566 2008-04-23  Michael Haubenwallner  <michael.haubenwallner@salomon.at>
8567
8568         Use /nonexistent as destination for files not to be installed.
8569         * tests/darwin.at (darwin fat compile): Fix typo.
8570         * tests/inherited_flags.at (inherited_linker_flags): Change
8571         -rpath to /nonexistent.  This helps to avoid accidentally
8572         picking up libraries below /usr/local.
8573         * tests/template.at (simple template test): Likewise.  Fixes
8574         test failure for additional incompatible libstdc++ in
8575         /usr/local.
8576         * tests/testsuite.at (configure_options): Add
8577         --prefix=/nonexistent.
8578
8579 2008-04-23  Gary V. Vaughan  <gary@gnu.org>
8580
8581         * libtoolize.m4sh (rerun_aclocal): Remove unused variable.
8582         Reported by Olly Betts <olly@survex.com>
8583
8584 2008-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8585
8586         * tests/static.at (ccache -all-static): Ignore link warnings.
8587         Report by Gary V. Vaughan.
8588
8589 2008-04-22  Gary V. Vaughan  <gary@gnu.org>
8590
8591         Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
8592         * libtoolize.m4sh (func_check_macros): Always advise use of
8593         AC_CONFIG_MACRO_DIR when not able to copy libtool macros into
8594         the project tree.
8595         * tests/libtoolize.at: New test for correct diagnosis of mismatch
8596         between AC_CONFIG_MACRO_DIR and ACLOCAL_AMFLAGS.
8597         Update expected output of other tests.
8598         * NEWS: Updated.
8599
8600 2008-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8601
8602         Fix regression over 1.5.26 with ccache $CC -all-static.
8603         * libltdl/config/ltmain.m4sh (func_mode_link): Add
8604         $link_static_flag to compile_command and link_command only
8605         later, instead of right after a possible compiler wrapper.
8606         * tests/static.at (ccache -all-static): New test.
8607         * THANKS: Update.
8608         Report by Richard Purdie.
8609
8610 2008-04-22  Andreas Schwab  <schwab@suse.de>
8611             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8612
8613         Fix default argument for AC_LIBLTDL_CONVENIENCE.
8614         * libltdl/m4/ltdl.m4 (AC_LIBLTDL_CONVENIENCE): Default argument
8615         to libltdl.
8616         (AC_LIBLTDL_INSTALLABLE): Likewise.
8617         * tests/configure-iface.at (convenience libltdl): New test.
8618
8619 2008-04-21  Gary V. Vaughan  <gary@gnu.org>
8620
8621         Only complain that files are up-to-date with --force.
8622         As a side effect, this also means that when `aclocal' copies the
8623         libtool macros into `aclocal.m4' libtoolize complains only about
8624         the macro files that are missing or not up-to-date.
8625         * libtoolize.m4sh (func_echo_once): New function that prints
8626         the contents of a named variable only on the first call.
8627         (func_aclocal_update_check): New function that compares serial
8628         numbers of libtool macros in aclocal.m4 and only diagnoses the
8629         missing files.
8630         (func_copy, func_copy_cb, func_copy_some_files, func_serial_update)
8631         (func_keyword_update, func_ltmain_update, func_config_update)
8632         (func_install_update): Accept a new argument naming a variable
8633         containing a header string to print with func_echo_once iff any
8634         body text is output by this function.
8635         (func_install_pkgmacro_subproject, func_install_pkgmacro_parent)
8636         (func_install_pkgltdl_files, func_install_pkgconfig_subproject)
8637         (func_install_pkgconfig_parent: Set and pass a suitable
8638         header string variable for the above functions.
8639         (func_serial_update_check): Don't advise rerunning `libtoolize
8640         --force' when aclocal.m4 is not m4_including libtoolize installed
8641         macro files.
8642         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic
8643         /usr/local/share/aclocal paths to point into the uninstalled
8644         libtool macro directory.
8645         * tests/libtoolize.at: Update tests that were checking for old
8646         behaviour of outputing `file is already up to date' even when
8647         --force was not passed.
8648         * tests/libtoolize.at: New tests to prevent regressions of these
8649         smarter messages.
8650         * NEWS: Updated.
8651         Reported by Olly Betts <olly@survex.com>
8652
8653         Capture lt~obsolete.m4 serial number correctly in libtoolize.
8654         * libltdl/m4/lt~obsolete.m4: Add the filename to the #serial
8655         marker so that libtoolize's serial number checks can find it
8656         in a non-include using aclocal.m4.
8657         * NEWS: Updated.
8658         Reported by Olly Betts <olly@survex.com>
8659
8660         Allow better compile time type checking for lt_dladvise.
8661         * libltdl/lt__private.h (lt__handle, lt__advise): Typedefs
8662         removed in favour of...
8663         * libltdl/ltdl.h (lt_dlhandle),
8664         libltdl/libltdl/lt_dlloader.h (lt_dladvise): ...changing from
8665         void* to forward declarations.
8666         * libltdl/loaders/dlopen.c, libltdl/loaders/loadlibrary.c,
8667         libltdl/lt_dlloader.c, libltdl/ltdl.c: Remove many redundant
8668         type casts.
8669         * NEWS: Updated.
8670         Suggested by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
8671
8672 2008-04-21  Peter O'Gorman  <peter@pogma.com>
8673
8674         basename does not take a list of strings.
8675         * libltdl/config/ltmain.m4sh(func_extract_archives): Use sed
8676         $basename.
8677         * tests/darwin.at: New. Check that we can built fat program,
8678         shared library and convenience library.
8679         * Makefile.am: Add test.
8680         Reported by LiKai Liu <liulk@cs.bu.edu>
8681
8682         Use AC_CHECK_TOOL for lipo too.
8683         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
8684         * libltdl/config/ltmain.m4sh (func_extract_archives): Use.
8685
8686 2008-04-20  Gary V. Vaughan  <gary@gnu.org>
8687
8688         Fix misleading lt_dlopenadvise documentation.
8689         * doc/libtool.texi (lt_dlopenadvise): The last parameter is of
8690         type lt_dladvise, not lt_dladvise*.
8691         (my_dlopenext): Correct the example too.
8692         * NEWS: Updated.
8693         Reported by Gary Kumfert <kumfert@llnl.gov>
8694
8695 2008-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8696
8697         Fix testsuite cleanup warnings on AIX with NFS.
8698         * tests/testsuite.at [ aix ]: Set file mode creation so that
8699         'others' have no permissions.  Shared libraries are kept in
8700         memory on AIX after use if they are world-readable, which means
8701         on NFS mounts cleanup of test group directories will fail later.
8702         * THANKS: Update.
8703         Report and analysis by Michael Haubenwallner.
8704
8705         Fix nonportable use of expr.
8706         * libltdl/config/ltmain.m4sh (func_mode_link) <Transforming
8707         deplibs into only shared deplibs>: Fix expr portability issues,
8708         noted on FreeBSD.  While at it, simplify and avoid forking.
8709         Report by Bob Friesenhahn.
8710
8711         Exploit shell arithmetic expansion and ${#var}.
8712         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also check
8713         for arithmetic expansion, and ${#var}.
8714         (_LT_PROG_XSI_SHELLFNS): Define func_arith and func_len
8715         accordingly, falling back on 'expr'.  Note that the argument to
8716         func_len may not start with a hyphen.  In the pre-Posix
8717         fallback, take care not to rely on the exit status of the
8718         variable assignment (not portable), but set the length to
8719         $max_cmd_len instead.
8720         * libltdl/config/ltmain.m4sh (func_mode_link): Use func_arith
8721         and func_len throughout for integer arithmetic, fixing
8722         quadratical amount of counting for reloadable object and
8723         piecewise archive linking.  Change all comparisons with
8724         max_cmd_len to test for smaller, non-equal length.
8725         * THANKS: Update.
8726         Suggested by Roland Mainz.
8727
8728         * libltdl/config/ltmain.m4sh (func_mode_compile): Avoid
8729         redundant removal of old output files before compilation.
8730         Do not remove $obj until we have successfully grabbed the
8731         lockfile (in case the compiler doesn't grok `-c -o'), because
8732         it might be identical to $output_obj.
8733         At the end of the function, before we remove the lockfile,
8734         update $removelist so that if the trap hits after the lockfile
8735         has been removed, we do not accidentally remove $output_obj that
8736         does not belong to us.
8737         (func_write_libtool_object): Use $MV instead of mv.
8738
8739 2008-04-18  Andreas Schwab  <schwab@suse.de>
8740
8741         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Check optional
8742         argument.
8743         (AC_ENABLE_STATIC): Likewise.
8744         (AC_ENABLE_FAST_INSTALL): Likewise.
8745
8746 2008-04-16  Eric Blake  <ebb9@byu.net>
8747
8748         Make ChangeLog merges easier.
8749         * .gitattributes: New file.
8750         * HACKING: Mention how it helps.
8751
8752 2008-04-15  Peter O'Gorman  <peter@pogma.com>
8753
8754         Allow bootstrap from git repository.
8755         * Makefile.am: Pass srcdir as an argument to mkstamp and expect
8756         only 2 fields in mkstamps output.
8757         * clcommit.m4sh: Ditto.
8758         * configure.ac: Ditto.
8759         * libltdl/config/mkstamp: return a revision and date based on
8760         the number of lines which look like dates in all the ChangeLog*
8761         files in the directory we got as arg 1.
8762
8763 2008-04-11  Eric Blake  <ebb9@byu.net>
8764
8765         Fix usage of setmode without declaration on cygwin.
8766         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Ensure
8767         setmode has prototype for both mingw and cygwin.
8768
8769 2008-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8770
8771         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Move non-XSI
8772         definition of func_dirname_and_basename ...
8773         * libltdl/config/general.m4sh (func_dirname_and_basename):
8774         ... here, to use it for the other scripts that use general.m4sh
8775         (and as portable fallback for libtool).  Add marker for early
8776         insertion of generated shell functions (into libtool, not the
8777         other scripts) here.
8778         Use func_dirname_and_basename to compute progname, progpath.
8779         * libltdl/config/ltmain.m4sh (func_mode_help): Remove marker
8780         for insertion of generated shell functions.
8781         * tests/sh.test: Adjust function definition test to not match
8782         function call.
8783
8784         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS) <func_xform>:
8785         New function.
8786         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it to
8787         avoid two forks with XSI shells.
8788         * tests/suffix.test: Also test a file with multiple dots.
8789
8790 2008-04-10  Peter O'Gorman  <peter@pogma.com>
8791
8792         * libltdl/config/ltmain.m4sh (func_win32_libid,
8793         func_generate_dlsyms, func_extract_an_archive,
8794         func_extract_archives, func_mode_help): move these so they
8795         appear after func_mode_compile.
8796         * tests/nomode.test: Check that --mode=link --help works.
8797         Reported by Josh Triplett <josh@freedesktop.org>
8798
8799 2008-04-07  Gary V. Vaughan  <gary@gnu.arg>
8800
8801         * doc/libtool.texi (Libltdl interface): Add missing
8802         documentation for lt_dlopenavise.
8803         Reported by Anton Erti <anton@mips.complang.tuwien.ac.at>
8804
8805         * configure.ac, libltdl/configure.ac (AM_INIT_AUTOMAKE): Use
8806         gnu rather than gnits standards so that version number 2.2.3a
8807         is not rejected!
8808         Reported by Olly Betts <olly@survex.com>
8809
8810 2008-04-01  Gary V. Vaughan  <gary@gnu.arg>
8811
8812         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8813         number to 2.2.3a.
8814
8815         GNU Libtool 2.2.2 was released.
8816
8817         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8818         number to 2.2.2.
8819         * libltdl/Makefile.in (LTDL_VERSION_INFO): C:R+1:A because the
8820         interfaces are unchanged, even though we improved the code some
8821         more.
8822         * NEWS: Updated.
8823
8824         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
8825         libltdl/m4/ltoptions.m4: Bump serial numbers to account for
8826         changes since 2.2 release.
8827
8828 2008-03-27  Peter O'Gorman  <peter@pogma.com>
8829
8830         * libltdl/m4/libtool.m4 [_LT_REQUIRED_DARWIN_CHECKS]: Fix the
8831         test for -single_module and log it to config.log.
8832         Reported by Torok Edwin and Nigel Home.
8833
8834 2008-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8835
8836         Document that disable-static plus -all-static is not portable.
8837         * doc/libtool.texi (Link mode): -all-static does not go well
8838         with disable-static on most systems.
8839         * tests/static.at (static linking flags for programs) [!aix]:
8840         With --disable-static but nonempty link_static_flag, skip the
8841         m-all-static link.  Do not skip it on AIX, as there the
8842         enable_static is self-inflicted, and thus expected to work.
8843         * THANKS: Update.
8844         Report by Nix.
8845
8846 2008-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8847
8848         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): No need to escape
8849         backticks in argument to AC_MSG_WARN or AC_MSG_ERROR.
8850         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE, LTDL_INIT): Likewise.
8851
8852 2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8853
8854         * libltdl/config/ltmain.m4sh (NLS nuisances): Fix quoting of
8855         localization variables for shell-active characters.
8856         * tests/localization.at (localized compiler messages): Extend
8857         test.
8858         * THANKS: Update.
8859         Report by Mike Frysinger.
8860
8861 2008-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8862
8863         * tests/defs.m4sh (func_get_config): Build egrep regex to speed
8864         up extracting several variables at once.  Use it to extract all
8865         default variables at once.  Also extract build_alias and
8866         host_alias from the libtool script.
8867         (func_configure_nofail): Use build_alias and host_alias for
8868         --build and --host, respectively.  Pass each if nonempty.
8869         * tests/testsuite.at: Pass --build if build_alias is nonemtpy.
8870         * tests/quote.test: Extract ECHO and wl at once.
8871
8872         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_WIN32_DLL): Require
8873         AC_CANONICAL_HOST.
8874         * THANKS: Update.
8875         Report by Jakub Bogusz.
8876
8877 2008-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8878
8879         * NEWS: Update.
8880
8881 2008-03-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
8882
8883         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src) [file
8884         scope]: additional #includes and #defines to support...
8885         (func_emit_cwrapperexe_src) [main]: ensure stdout is set to
8886         binary mode for cygwin|mingw builds. Ensure temporary script
8887         file is written in binary mode for cygwin|mingw builds.
8888         (func_mode_link) [cygwin|mingw]: cross-build support - only
8889         use cwrapper to generate shell wrapper if building native;
8890         otherwise use func_emit_wrapper()
8891
8892 2008-03-12  Henning Nielsen Lund  <hnl_dk@amigaos.dk>
8893
8894         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
8895         (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [amigaos]: Port to
8896         AmigaOS4 shared libraries on powerpc.
8897         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [amigaos]:
8898         Likewise.
8899         * THANKS, NEWS: Update.
8900
8901 2008-03-09  Bruno Haible  <bruno@clisp.org>
8902         and Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8903
8904         Fix compiler output to be in the user locale.
8905         * libltdl/config/general.m4sh (func_show_eval_locale): New
8906         function, for running commands in the user locale.
8907         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it for
8908         compiling.
8909         * tests/localization.at (localized compiler messages): New test.
8910         * Makefile.am: Adjust.
8911         Report by Bruno Haible.
8912
8913 2008-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8914
8915         Fix several test failures on Cygwin and MinGW.
8916         * tests/nonrecursive.at: Use -no-undefined for foo.la.
8917         * tests/recursive.at: Likewise.
8918         * tests/subproject.at: Likewise.
8919         * tests/lt_dladvise.at: For systems where undefined symbols are
8920         not allowed, to not try to load the module libdepend.
8921         [ mingw ]: Add to list of such systems.
8922         * tests/testsuite.at (_LT_AT_TRANSLATE_TEXT_OUTPUT): New macro,
8923         to translate line ending of expout and experr files suitable for
8924         host executables.
8925         (LT_AT_CHECK, LT_AT_NOINST_EXEC_CHECK): Use it.
8926         Report by Bob Friesenhahn.
8927
8928         Fix installcheck dependencies, fix for --program-transform-name.
8929         * Makefile.am (installcheck-local): Depend upon tests/atconfig
8930         and $(srcdir)/$(TESTSUITE).
8931         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): New macro.
8932         (LT_AT_CHECK_LIBTOOLIZE): Use it to transform expout and experr
8933         files suitably.
8934         * HACKING: Update.
8935
8936         Drop usage of obsolete macros AC_EXEEXT and AC_OBJEXT.
8937         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
8938         (_LT_COMPILER_C_O, LT_PATH_NM, _LT_CMD_GLOBAL_SYMBOLS, _LT_SETUP):
8939         Drop usage of obsolete AC_OBJEXT and AC_EXEEXT.
8940         * tests/am-subdir.at (C++ subdir-objects): Likewise.
8941
8942 2008-03-07  Peter O'Gorman  <peter@pogma.com>
8943
8944         * tests/convenience.at (Java convenience archives): Skip test if
8945         gcj cannot compile a working executable from .java files.
8946         Report by Nelson H. F. Beebe.
8947
8948         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Need to set LD.
8949         Reported by Nelson H. F. Beebe.
8950
8951 2008-03-06  Peter O'Gorman  <peter@pogma.com>
8952
8953         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Undo commit - bad idea.
8954
8955         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Report FC=no if the FC
8956         compiler is not a GNU compiler and the CXX compiler is a GNU
8957         compiler.
8958         Reported by Nelson H. F. Beebe.
8959
8960 2008-03-06  Gary V. Vaughan  <gary@gnu.org>
8961
8962         * Makefile.maint (TSDEPS_DIST): Removed.  No longer used.
8963         (TSDEPS): libtool.m4 has long since moved to libltdl.
8964         (cvs-dist): Don't put the suffix dot in twice.
8965
8966 2008-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8967
8968         * tests/convenience.at (Java convenience archives): Skip test if
8969         gcj cannot compile a .java file.
8970         Report by Nelson H. F. Beebe.
8971
8972 2008-03-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8973
8974         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p): redirect
8975         and restore from stdin, not stdout.
8976         * tests/execute-mode.at (execute mode): Adjust test to catch
8977         this.
8978         Report by Roberto Bagnara.
8979
8980 2008-03-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8981
8982         Fix libltdl to not skip dlopen on systems with several loaders,
8983         such as HP-UX, Cygwin.
8984         * libltdl/slist.c (slist_concat): When appending to the tail
8985         of a list, do not drop items off the beginning of the list.
8986         * NEWS: Update.
8987
8988         * libltdl/config/ltmain.m4sh (func_mode_execute): Replace only
8989         arguments we have identified as shell or C wrappers.
8990         (func_emit_wrapper): Output error message on stderr.
8991         * tests/execute-mode.at: New file, with --mode=execute tests.
8992         * Makefile.am: Adjust.
8993         * NEWS: Update.
8994         Fixes 2.2 regression.  Report by Roberto Bagnara.
8995
8996         * libltdl/m4/libtool.m4 (_LT_CONFIG): Drop misleading `GNU'
8997         prefix before the host package name in the "Generated by" line
8998         for the libtool script.
8999         * THANKS: Update.
9000         Reports by Peter Rosin and Roberto Bagnara.
9001
9002         * doc/libtool.texi (Module loaders for libltdl): Fix typo.
9003
9004         * libltdl/loaders/dld_link.c (vl_exit): New function, zero out ...
9005         (vtable): ... this new file static variable split out from ...
9006         (get_vtable): ... here.  Initialize vtable, register vl_exit as
9007         dlloader_exit function.
9008         * libltdl/loaders/dlopen.c: Likewise.
9009         * libltdl/loaders/dyld.c: Likewise.
9010         * libltdl/loaders/load_add_on.c: Likewise.
9011         * libltdl/loaders/loadlibrary.c: Likewise.
9012         * libltdl/loaders/shl_load.c: Likewise.
9013         * libltdl/loaders/preopen.c: Likewise; vl_exit existed here
9014         already.
9015         * tests/lt_dlexit.at (lt_dlexit unloading libs): Update test.
9016         * NEWS: Update.
9017         Report by Andreas Schwab.
9018
9019 2008-03-01  Gary V. Vaughan  <gary@gnu.org>
9020
9021         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9022         number to 2.3a.
9023
9024         GNU Libtool 2.2 was released.
9025
9026         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9027         number to 2.2.
9028         * NEWS: Updated.
9029
9030         * tests/lt_dladvise.at, tests/lt_dlexit.at,
9031         tests/need_lib_prefix.at: Skip these tests when called from
9032         `make distcheck DISTCHECK_CONFIGURE_FLAGS=--disable-ltdl-install'.
9033         The tests try to link against the dummy installed libltdl.la
9034         from .../_inst/lib/libltdl.la, which does not exist when
9035         configured with --disable-ltdl-install.
9036
9037 2008-02-29  Gary V. Vaughan  <gary@gnu.org>
9038
9039         * libltdl/m4/argz.m4 (AC_CHECK_FUNCS): Also use our replacement
9040         argz if the system argz_add or argz_count are missing.
9041         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
9042
9043 2008-02-26  Karl Berry  <karl@freefriends.org>
9044
9045         * libltdl/argz.c (argz_add, argz_count): New functions.
9046         * libltdl/argz_.h: Declare them.
9047         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
9048
9049 2008-02-20  Peter O'Gorman  <peter@pogma.com>
9050
9051         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Do not call the
9052         _LT_SYS_DYNAMIC_LINKER macro here.
9053         Reported by Mike Frysinger <vapier@gentoo.org>
9054
9055 2008-02-15  Peter O'Gorman  <peter@pogma.com>
9056
9057         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix typo.
9058
9059 2008-02-14  Peter Breitenlohner  <peb@mppmu.mpg.de>
9060
9061         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better handling
9062         of predefined values for lt_cv_sys_lib_search_path_spec and
9063         lt_cv_sys_lib_dlsearch_path_spec.
9064
9065 2008-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9066
9067         * libtoolize.m4sh (func_install_pkgconfig_files): Only call
9068         func_install_pkgconfig_parent if $seen_autoconf.
9069         * tests/standalone.at (compiling softlinked libltdl)
9070         (compiling copied libltdl, installable libltdl)
9071         (linking libltdl without autotools): Use checked libtoolize
9072         calls to catch warnings.
9073
9074 2008-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9075
9076         * libltdl/configure.ac: Bump package version.
9077         * HACKING: Reminder to do it next time, too.
9078
9079 2008-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9080
9081         * tests/mdemo/Makefile.am (@LIBLTDL@): Update outdated
9082         dependencies.
9083         ($(top_distdir)/libltdl/libtool): Remove.
9084         Fixes spurious mdemo-dryrun failure with OpenBSD make.
9085
9086 2008-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9087
9088         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
9089         Treat like icc and ecc, for fixed `-Wl,' and `-KPIC' settings.
9090
9091 2008-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9092
9093         * tests/archive-in-archive.at
9094         (static library contains static library): Test also the actual
9095         broken link command, and the following install command, as
9096         UnixWare ar rightly refuses to put an archive into an archive.
9097         Report by Tim Rice.
9098
9099 2008-02-06  Peter O'Gorman  <peter@pogma.com>
9100
9101         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Only set default
9102         LT_INIT values for LT_INIT, not LTDL_INIT.
9103         Reported by Jochem Huhmann <joh@revier.com>
9104
9105 2008-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9106
9107         * tests/testsuite.at (LT_AT_TAG): For the CXX tag, if $CXX is
9108         g++, check that `g++ -v' works; AC_PROG_CXX may have set that
9109         as default value even if it found no C++ compiler.
9110         Report by Andreas Schwab.
9111
9112 2008-02-02  Gary V. Vaughan  <gary@gnu.org>
9113
9114         * libltdl/Makefile.inc (EXTRA_DIST): Now that we're not using
9115         Autoconf's AC_SOURCES macro, Automake can't trace our extra
9116         source files argz, lt__dirent.c and lt__strl.c.  List them
9117         manually here to make sure they are distributed.
9118         * NEWS: Updated.
9119         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
9120
9121 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9122
9123         * configure.ac (AC_INIT): Bump version number to 2.1c.
9124
9125         GNU Libtool 2.1b was released.
9126
9127         * configure.ac (AC_INIT): Bump version number to 2.1b.
9128         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Increment to account
9129         for new interfaces since the last libltdl update.
9130         * HACKING (Release Procedure): Note that LTDL_VERSION_INFO is now
9131         kept in libltdl/Makefile.inc.
9132
9133 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9134
9135         * tests/cdemo, tests/depdemo, tests/fcdemo, tests/pdemo,
9136         tests/demo, tests/f77demo, tests/mdemo, tests/tagdemo
9137         (distclean-local): Remove compiler file droppings left by
9138         Autoconf tests that prevent make dist from finishing on
9139         several machines including Mac OS 10.5.
9140
9141 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9142
9143         Unfortunately, the autoconf implementation of AC_LIBOBJ and
9144         friends requires all libobjs to be in the same directory, as
9145         declared by AC_CONFIG_LIBOBJ_DIR.  That might prevent using
9146         either recursive or nonrecursive libltdl if the parent project
9147         has libobjs of its own, except that this patch tracks libltdl's
9148         libobjs in another namespace:
9149
9150         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ, _LT_LIBSOURCES): Versions of
9151         AC_LIBOBJ and AC_LIBSOURCES that save missing sources in a
9152         ltdl_LIBOBJS automake macro, instead of the global LIBOBJS
9153         automake macro.  Content of the macros inspired by code from
9154         gnulib-tool.
9155         (_LTDL_MODE_DISPATCH): Initialise lt_libobj_prefix in
9156         nonrecursive mode.
9157         (LTDL_INIT): Push and pop the new definitions around potential
9158         sites that call AC_LIBOBJ.  Also, using lt_libobj_prefix,
9159         initialise ltdl_LIBOBJS and ltdl_LTLIBOBJS.
9160         * libtoolize.m4sh (func_fixup_Makefile): Substitute ltdl_LIBOBJS
9161         and ltdl_LTLIBOBJS for LIBOBJS and LTLIBOBJS during copying
9162         either Makefile.am or Makefile.inc, depending on ltdl_mode.
9163         Reported by Eric Blake <ebb9@byu.net>
9164
9165 2008-01-30  Gary V. Vaughan  <gary@gnu.org>
9166
9167         There are 5 distinct batches of files that libtoolize might
9168         install into a project, depending on whether libltdl is
9169         being installed in subproject mode, and in that case whether
9170         the parent project shares the config and macro directories
9171         with the subproject ltdl.  Make a separate function for each
9172         of those 5 batches (4 new functions below, plus the recently
9173         factored func_install_pkgltdl_files), and make a clearer
9174         distinction between when each of them is needed:
9175
9176         * libtoolize.m4sh (func_install_pkgmacro_subproject):
9177         New function for installing and reporting on m4 files copied
9178         to a subproject ltdl directory.
9179         (func_install_pkgmacro_parent): Similar new function for m4
9180         files copied solely for the use of the parent project,
9181         including serial checking.
9182         (func_install_pkgconfig_subproject): New function for
9183         installing and reporting on config helper files copied to a
9184         subproject ltdl directory.
9185         (func_install_pkgconfig_parent): Similar new function for
9186         config helper files copied solely for the use of the parent
9187         project, including serial checking.
9188         (func_install_pkgmacro_files, func_install_pkgconfig_files):
9189         Rewritten in terms of the above functions.
9190         * tests/libtoolize.at: Adjust test expout's to match newly
9191         regularized libtoolize output.
9192         Move parent project pkgconfig files to build-aux directory
9193         so that progress messages show an obvious difference to
9194         pkgconfig files installed to subproject `config' directory.
9195         (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test.
9196         (diagnose missing LT_CONFIG_LTDL_DIR): New test.
9197         (subproject ltdl with non-shared directories): New test.
9198         Reported by Eric Blake <ebb9@byu.net>
9199
9200 2008-01-29  Peter O'Gorman  <peter@pogma.com>
9201
9202         * libltdl/m4/libtool.m4 [darwin]: Changes to glob pattern matching
9203         to be safer.
9204
9205         Search the compiler path too.
9206         * libltdl/m4/libtool.m4 (compiler_lib_search_dirs): New variable.
9207         * libltdl/config/ltmain.m4sh: Use it.
9208         Reported by Maynard Johnson
9209
9210 2008-01-28  Gary V. Vaughan  <gary@gnu.org>
9211
9212         * libtoolize.m4sh (func_check_macros): Correct typo with
9213         '$opt_quiet ||' where '$opt_quiet &&' that was preventing
9214         func_check_macros from running!
9215
9216         * libtoolize.m4sh: Set opt_ltdl whenever seen_ltdl is set
9217         so that libtoolize behaves as though --ltdl was passed even
9218         if it wasn't as long as LTDL_INIT (or equivalent) was seen
9219         in configure.ac.  Adjust redundant '$opt_ltdl || $seen_ltdl'
9220         to simply '$opt_ltdl'.
9221         Reported by Eric Blake <ebb9@byu.net>
9222
9223         * libtoolize.m4sh (func_check_macros): Check opt_quiet
9224         in the function itself to simplify calling it.  Also move
9225         the definition of the function.
9226
9227         * libtoolize.m4sh (func_scan_files): Be sure to set the
9228         default libltdl mode to 'subproject' when libtoolize is
9229         executed before configure.ac has been updated.
9230
9231 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
9232
9233         * libtoolize.m4sh (func_install_pkgconfig_files)
9234         (func_install_pkgmacro_files, func_install_pkgltdl_files):
9235         Factored out from the 'Main' section of the file.
9236
9237         * libtoolize.m4sh (subproject_auxdir, subproject_macrodir):
9238         New variables to hold the default locations for auxfiles
9239         and macrofiles in a subproject libltdl.
9240         (ac_auxdir, ac_macrodir): New variables to hold the values
9241         passed by AC_CONFIG_AUX_DIR and AC_CONFIG_MACRO_DIR resp.
9242         (auxdir, macrodir): Adjust to contain the values to be
9243         used by libtoolize at runtime.
9244
9245         * libtoolize.m4sh (func_fixup_Makefile)
9246         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
9247         (func_massage_pkgconfig_files): Add missing $opt_debug.
9248
9249 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
9250
9251         * libtoolize (func_fixup_Makefile, func_massage_aclocal_DATA)
9252         (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
9253         Add missing $opt_debug.
9254
9255 2008-01-26  Gary V. Vaughan  <gary@gnu.org>
9256
9257         * libtoolize.m4sh (Main): Copy (or link) libltdl sources
9258         into project tree when LTDL_INIT was seen, whether or not
9259         `--ltdl' is passed.
9260         (func_check_macros): Recommend LTDL_INIT instead of
9261         LT_WITH_LTDL when `--ltdl' is used before configure.ac is
9262         upgraded.
9263         * tests/libtoolize.at: Test that it works.
9264         (_LT_AT_LTDL_SETUP): Factor out some common test setup.
9265         Reported by Eric Blake <ebb9@byu.net>
9266
9267 2008-01-24  Peter O'Gorman  <peter@pogma.com>
9268
9269         * doc/notes.texi: Fix errors in previous commit.
9270
9271         * libltdl/m4/libtool.m4 (sys_lib_search_path_spec,
9272         sys_lib_dlsearch_path_spec): Allow for a cache variable
9273         lt_cv_sys_lib_... to set these at configure time.
9274         * doc/notes.texi: Short note about the above change.
9275
9276 2008-01-24  Eric Blake  <ebb9@byu.net>
9277
9278         Add proper quoting to doc examples.
9279         * doc/libtool.texi: Use m4 quotes where appropriate.
9280         (Test descriptions): Fix truncated sentence.
9281
9282 2008-01-18  Gary V. Vaughan  <gary@gnu.org>
9283
9284         * Makefile.am (DISTCLEANFILES): Remove libtool.dvi generated
9285         by 'make dvi'.
9286
9287 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9288
9289         * libtoolize.m4sh (func_scan_files): Avoid matching our own
9290         macro code when scanning configure.ac and aclocal.m4.
9291         Don't produce spurious output if AC_PROG_RANLIB is found.
9292         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Add a (weak) check
9293         that we don't match our own macro code when searching for user
9294         code calling us.
9295         * TODO: Updated.
9296
9297 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9298
9299         New variable LTDLDEPS for use in output_DEPENDENCIES.
9300
9301         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE, _LTDL_INSTALLABLE)
9302         (LTDL_INIT): Set and substitute LTDLDEPS according to chosen
9303         method.
9304         * tests/configure-iface.at (installable libltdl)
9305         (--with-ltdl-include/lib, --with-included-ltdl): Test it.
9306         * doc/libtool.texi (Distributing libltdl): Document LTDLDEPS.
9307         * NEWS: Updated.
9308         Dependency bug exposed by Eric Blake in M4, found by Bob Proulx
9309         build daemon.
9310
9311 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9312
9313         * doc/libtool.texi (Distributing libltdl): Clarify that
9314         `${top_build_prefix}' may be used in place of `${top_builddir}/'.
9315
9316         * doc/libtool.texi (Distributing libltdl): Clarify that
9317         LTDL_INIT goes after LT_INIT; also show the latter in the
9318         respective examples.
9319         * tests/subproject.at: Adjust order.
9320
9321 2008-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9322
9323         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Use AM_CONDITIONAL
9324         only if defined.  Allows to use libltdl without aclocal.
9325
9326 2008-01-16  Peter O'Gorman  <peter@pogma.com>
9327
9328         * libltdl/m4/libtool.m4: Set GCC var for every tag, avoids need
9329         to set withGCC var.
9330
9331 2008-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9332
9333         * configure.ac: Set libltdl nonrecursive option, to avoid
9334         configuring libltdl inside the Libtool package.
9335
9336 2008-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9337
9338         Silence all non-warning output from `libtool --silent'.
9339         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
9340         (func_extract_archives, func_mode_link): Use func_verbose
9341         instead of func_echo for all non-warning output.
9342
9343         * Makefile.maint (fetch): Update to match upstream git sources.
9344         Pull `INSTALL' from gnulib instead of from Autoconf.
9345
9346         * doc/notes.texi: Mention AIX binutils deficiency for C++ code.
9347         Report by Rainer Tammer.
9348         Suggest using bash for configure.
9349
9350         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Fix to use
9351         new _LT_SET_OPTION semantics.
9352
9353 2008-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9354
9355         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define
9356         LTDL_DLOPEN_SELF_WORKS, depending upon lt_cv_dlopen_self.
9357         * libltdl/loaders/dlopen.c (vm_open) [!LTDL_DLOPEN_SELF_WORKS]:
9358         Fail for dlopen(NULL), so that the preopen loader is used.  This
9359         fixes mdemo-exec.test failures on AIX where dlopen(NULL)
9360         succeeds but dlsym resolves no symbol.
9361         * NEWS: Update.
9362         Report by Rainer Tammer.
9363
9364         * tests/am-subdir.at: Drop unused variables.
9365         * tests/configure-iface.at: Likewise.
9366         * tests/ctor.at: Likewise.
9367         * tests/early-libtool.at: Likewise.
9368         * tests/lt_dladvise.at: Likewise.
9369         * tests/old-m4-iface.at: Likewise.
9370         * tests/lt_dlexit.at: Likewise.  Also drop unused functions.
9371
9372         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Also copy needed
9373         lt~obsolete.m4.
9374
9375         * libltdl/config/ltmain.m4sh (func_mode_link): Fix warning
9376         about -l and -L for archives and objects as output, to not
9377         trigger for *.la files.  Non-convenience archives are diagnosed
9378         later on.
9379
9380         * tests/configure-iface.at: Ensure LTDLINCL is expanded
9381         before CPPFLAGS, so that even CPPFLAGS=-I/usr/local/include
9382         won't make the tests prefer an installed ltdl.h over the
9383         in-package one.
9384         * tests/lt_dladvise.at, tests/lt_dlexit.at: Likewise.
9385         * tests/need_lib_prefix.at, tests/old-m4-iface.at: Likewise.
9386         Report by Bob Friesenhahn.
9387
9388 2008-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9389
9390         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) <exclude_expsyms>:
9391         Also exclude `_GLOBAL__F[ID]_.*'.  Also set for the C++ tag.
9392         Fixes esp. demo/helldl build failure with GCC on AIX.
9393         Report by Rainer Tammer.
9394
9395 2008-01-11  Peter O'Gorman  <peter@pogma.com>
9396
9397         * libltdl/m4/libtool.m4 [darwin]: Reorganize darwin support, use
9398         dsymutil if it is available so that debugging is possible, check
9399         for nmedit and dsymutil with AC_CHECK_TOOL, use the linker flag
9400         -exported_symbols_list in preference to nmedit if it is available.
9401         Drop support for xlc, it is probably broken.
9402         * tests/template.at [darwin]: Skip this test, I can not find a way
9403         to make it work on darwin9 with Xcode-3.0.
9404         * NEWS: Note the dropping of xlc support.
9405
9406 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9407
9408         * libltdl/m4/libtool.m4 (LT_INIT): m4_require, not AC_REQUIRE
9409         _LT_CHECK_BUILDDIR, as it's m4_defun'ed, not AC_DEFUN'ed.
9410         Report by Peter O'Gorman.
9411
9412         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE): Restore correct
9413         _LT_BUILD_PREFIX-using code.
9414
9415 2008-01-08  Gary V. Vaughan  <gary@gnu.org>
9416
9417         * tests/recursive.at: Remove bogus --debug option.
9418         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9419
9420         * tests/configure-iface.at: Build libltdl in a subdir so that
9421         it can be easily removed without trying to remove config.log
9422         on windows (which can't delete a file until it is closed).
9423         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9424
9425         * libltdl/m4/ltdl.m4 (LTDL_INSTALLABLE): Use _LT_BUILD_PREFIX
9426         instead of ${top_builddir} for Autoconf-2.62.
9427         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9428
9429         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Correct closing
9430         comment.
9431         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9432
9433         * NEWS: Grammar nit.
9434
9435         * tests/configure-iface.at, tests/nonrecursive.at,
9436         tests/recursive.at, tests/subproject.at (_LTDL_SETUP):
9437         Renamed to _LT_AT_LTDL_SETUP to avoid a nameclash with
9438         libltdl/m4/ltoptions.m4:_LTDL_SETUP from yesterday's patch.
9439         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9440
9441 2008-01-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9442
9443         * tests/runpath-in-lalib.at (Runpath in libtool library files):
9444         Compile program file without libtool.
9445         Report by Rainer Tammer.
9446
9447 2008-01-07  Rainer Tammer  <tammer@tammer.net>  (tiny change)
9448             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9449
9450         Support AIX 6.1.
9451         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
9452         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
9453         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
9454         (_LT_LANG_FC_CONFIG): Adjust case patterns to match AIX 6
9455         through 9 as well.
9456         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
9457         * NEWS: Update.
9458         * THANKS: Update.
9459
9460 2008-01-07  Gary V. Vaughan  <gary@gnu.org>
9461
9462         Move libltdl build mode options from LT_CONFIG_LTDL_DIR to
9463         LTDL_INIT.  Accept (optional) new 'convenience' and 'installable'
9464         options in lieu of LTDL_CONVENIENCE and LTDL_INSTALL macros. And
9465         also, implement --with-included-ltdl, --with-ltdl-lib and
9466         --with-ltdl-include configure-time options:
9467
9468         * libltdl/m4/ltoptions.m4: Associate existing option settings with
9469         LT_INIT.
9470         (LT_OPTION_DEFINE): Associate options 'nonrecursive', 'recursive',
9471         'subproject', 'installable' and 'convenience' with LTDL_INIT.
9472         (_LT_MANGLE_OPTION, _LT_SET_OPTION, _LT_IF_OPTION)
9473         (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Add MACRO-NAME argument to
9474         support options to named macros instead of hardcoding only LT_INIT
9475         options.
9476         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE): Factor common code from
9477         LTDL_CONVENIENCE and LTDL_INIT([convenience]).
9478         (_LTDL_INSTALLABLE): Factor out common code from LTDL_INSTALLABLE
9479         and LTDL_INIT([installable]).
9480         (_LTDL_SETUP): Renamed from LTDL_INIT.  Support new configure-time
9481         options: --with-included-ltdl, --with-ltdl-lib,
9482         --with-ltdl-include.
9483         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
9484         (LT_WITH_LTDL): Removed.
9485         (LTDL_INIT): Parse caller options.
9486         * libltdl/m4/libtool.m4 (LT_INIT): Declare that this macro must be
9487         expanded before LTDL_INIT, and be sure to parse caller options.
9488         * configure.ac: Call directly into internal _LTDL_SETUP macro.
9489         * libtoolize.m4sh (func_scan_files): Ltdl mode argument moved from
9490         LT_CONFIG_LTDL_DIR to LTDL_INIT.
9491         * tests/nonrecursive.at, tests/recursive.at: Use new interfaces.
9492         * tests/configure-iface.at: Test it.
9493         * Makefile.am (TESTSUITE_AT): Add configure-iface.at.
9494         * doc/libtool.texi (Distributing libltdl): Document improved
9495         LTDL_INIT interfaces.
9496         * NEWS: Updated.
9497
9498 2008-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9499
9500         * libltdl/config/ltmain.m4sh (func_mode_link): When creating
9501         reloadable object files, avoid issuing plain `rm -f' without
9502         further arguments, even if the line length limit is ridiculously
9503         low as in the `Run tests with low max_cmd_len' test.  This
9504         failure is exposed on NetBSD.
9505         Report by Patrick Welche.
9506
9507         * Makefile.am (EXTRA_DIST): Add ChangeLog.2007.
9508         * ChangeLog.2007: New, rotated, from...
9509         * ChangeLog: ...here.
9510         * NEWS, README, README.alpha, Makefile.am, libtoolize.m4sh,
9511         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
9512         libltdl/m4/libtool.m4: Bump copyright years.
9513
9514 2007-11-30  Stefan Sperling  <stsp@elego.de>  (tiny change)
9515
9516         * doc/libtool.texi (Linking executables): Reorder paragraphs.
9517
9518 2007-11-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9519
9520         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: The IBM
9521         XL 8.0 C++ compiler may also be called xlc++*, not only xlC*.
9522         Report by Nysal K Jan <jnysal@in.ibm.com>.
9523
9524 2007-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9525
9526         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): New macro.
9527         Warn about whitespace in the absolute build tree name.
9528         (LT_INIT): Use it.
9529         * THANKS: Update.
9530         Report by Jim Meyering.
9531
9532         * libltdl/config/ltmain.m4sh (func_extract_an_archive)
9533         (func_extract_archives): Add some quoting.
9534
9535 2007-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9536
9537         Use `${top_build_prefix}' for better compatibility with non-GNU make.
9538         * libltdl/m4/ltdl.m4 (_LT_BUILD_PREFIX): New macro.
9539         If the Autoconf version used is >= 2.62, then expand to
9540         `${top_build_prefix}', otherwise to `${top_builddir}/'.
9541         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Use it for defining
9542         LIBLTDL.  Fixes a build failure with AIX make in a package
9543         using convenience libltdl in nonrecursive mode.
9544         * doc/libtool.texi (Distributing libltdl): Document requirements
9545         to define `top_build_prefix' if Automake is not used.
9546         Report by Bob Friesenhahn.
9547
9548 2007-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9549
9550         Avoid warnings about conftest.dSYM directories on Mac OS X Leopard.
9551         * libltdl/m4/libtool.m4 (_LT_LINKER_BOILERPLATE)
9552         (_LT_LINKER_OPTION, _LT_CMD_GLOBAL_SYMBOLS): Remove
9553         conftest.dSYM directory.
9554         Report and analysis by Jeff Squyres and Peter O'Gorman.
9555
9556 2007-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9557
9558         * libltdl/configure.ac: Drop the broken and long-disabled code
9559         to output a banner for the libltdl configure.  Avoids the need
9560         to ship mkstamp with libltdl.
9561
9562 2007-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9563
9564         * tests/runpath-in-lalib.at: New test.
9565         * Makefile.am: Update.
9566         Report by Benoit SIGOURE <tsuna@lrde.epita.fr>.
9567
9568 2007-10-16  Eric Blake  <ebb9@byu.net>
9569
9570         Speed up bootstrap by improving lt_join.
9571         * libltdl/m4/ltsugar.m4 (lt_join, _lt_join): Rewrite to mirror
9572         Autoconf 2.62's faster implementation.
9573
9574 2007-10-12  Eric Blake  <ebb9@byu.net>
9575
9576         Whitespace cleanup.
9577         * libltdl/m4/ltsugar.m4: Avoid space-tab in indents.
9578         * libltdl/m4/libtool.m4: Avoid trailing space.
9579
9580         Deal with Autoconf 2.62's semantic change in m4_append.
9581         * libltdl/m4/ltsugar.m4 (lt_append): Replace broken versions of
9582         m4_append.
9583         (lt_if_append_uniq): Don't require separator to be overquoted, and
9584         avoid broken m4_append.
9585         (lt_dict_add): Fix typo.
9586         * libltdl/m4/libtool.m4 (_LT_DECL): Don't overquote separator.
9587
9588 2007-10-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9589
9590         * libltdl/config/ltmain.m4sh: Also sanitize `LANGUAGE'.
9591         (func_mode_execute): Also restore `LANGUAGE', for old glibc.
9592         Report by Paul Eggert against Autoconf.
9593
9594 2007-10-11  Eric Blake  <ebb9@byu.net>
9595
9596         * libltdl/.cvsignore: Ignore argz.h.
9597
9598 2007-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9599
9600         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
9601         <lt_cv_prog_compiler_pic_works>: Renamed from
9602         lt_prog_compiler_pic_works.
9603         <lt_cv_prog_compiler_static_works>: Renamed from
9604         lt_prog_compiler_static_works.
9605         * NEWS: Update.
9606
9607 2007-10-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9608
9609         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
9610         extension `.sx'.
9611         * tests/suffix.test: Test it.
9612
9613 2007-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9614
9615         * libltdl/lt_dlloader.c (loader_callback, lt_dlloader_get): Use
9616         NULL, not 0, for the benefit of too picky compilers like PGI.
9617         * slist.c (slist_tail): Likewise.  Include stddef.h, for NULL.
9618         Report by Jeff Squyres.
9619
9620 2007-09-05  Eric Blake  <ebb9@byu.net>
9621
9622         * libltdl/ltdl.c (lt_dlcaller_get_data): Work even when no caller
9623         has set data.
9624
9625 2007-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9626
9627         * doc/libtool.texi (User defined module data)
9628         <lt_dlinterface_register>: Document that a NULL place matches
9629         all modules.
9630         * libltdl/lt_dlloader.c (lt_dlloader_remove): Actually iterate
9631         over all open modules when looking for modules that use it.
9632         If a resident module is found, return but do not set the error
9633         string.
9634         * libltdl/ltdl.c (lt_dlexit): When removing dlloaders, ignore
9635         errors that stem from earlier failed commands.  Exposed by the
9636         lt_dladvise test.
9637         Fixes regression over branch-1-5.
9638         Memleak report as Coverity CID 19 via Jeff Squyres.
9639
9640 2007-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9641
9642         * NEWS: Update.
9643
9644         * libltdl/ltdl.c (trim): Fix possible write beyond array bound.
9645
9646         * libltdl/ltdl.c (lt_dlopenadvise): Instead of asserting, return
9647         FILE_NOT_FOUND if the filename is "".
9648
9649         * libltdl/ltdl.c (try_dlopen): Fix computation of extension,
9650         avoids subtracting pointer from NULL pointer.
9651
9652         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Do not test
9653         array address of sys_dlsearch_path against NULL, rather test for
9654         nonempty contents.
9655         Coverity reports CID 148 and CID 149 via Jeff Squyres.
9656
9657         * libltdl/ltdl.c (tryall_dlopen_module): Fix string length
9658         computation: do not allocate more than needed.
9659
9660 2007-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9661
9662         * libltdl/loaders/preopen.c (vm_close): `module' is unused.
9663         Coverity report CID 158 via Jeff Squyres.
9664
9665         * libltdl/ltdl.c (parse_dotla_file): If we run out of memory,
9666         do not close the .la file twice.
9667         Coverity report CID 440 via Jeff Squyres.
9668
9669         * libltdl/ltdl.c (has_library_ext): Remove dead code.
9670         Coverity report CID 561 against Open MPI via Jeff Squyres.
9671
9672 2007-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9673
9674         * libltdl/slist.c (slist_remove): When a matching item is found,
9675         break out of the loop to return the first match; also fixes
9676         possible NULL dereference.
9677
9678         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
9679         (_LT_LANG_CXX_CONFIG) [ linux ]: Add support for IBM XL 8.0
9680         C/C++ (xlc*, xlC*) and IBM XL Fortran 10.1 (xlf*) on GNU/Linux,
9681         tested on ppc, pending a $shlibpath_var related fix.
9682         (_LT_SYS_HIDDEN_LIBDEPS): Double-quote $output_verbose_link_cmd
9683         properly during evaluation, obsoleting $no_glob_subst mangling.
9684         * NEWS: Update.
9685
9686 2007-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9687
9688         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
9689         [ k*bsd*-gnu ] <shlibpath_overrides_runpath>: Avoid spurious
9690         output in runpath test.
9691
9692 2007-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9693
9694         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ mingw, cygwin ]
9695         <GCJ>: Do not use -DDLL_EXPORT.
9696         Report by Ross Ridge <rridge@csclub.uwaterloo.ca>.
9697
9698         * Makefile.am (edit): Do not warn against manual editing for the
9699         generated files libtool, libtoolize, libltdl/m4/ltversion.m4,
9700         tests/defs, as they are still in a preferred source code form as
9701         required by GPL.
9702         Report by DJ Delorie.
9703
9704 2007-08-15  Dirk Mueller  <dmueller@suse.de>  (tiny change)
9705             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9706
9707         * libltdl/ltdl.c (parse_dotla_file): Avoid a strlen.  When
9708         reading .la files, cope with files that are not
9709         newline-terminated.
9710
9711 2007-08-05  Tilman Koschnick  <til@subnetz.org>  (tiny change)
9712
9713         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
9714         [ linux ]: Treat pgcpp as Portland Group C++ compiler as well.
9715
9716 2007-08-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9717
9718         * libltdl/ltdl.c (try_dlopen): Use `attempt' rather than
9719         `filename', as the former has the needed extension when called
9720         by lt_dlopenext.
9721         Report by Brian Barrett.
9722
9723 2007-07-27  Peter Rosin  <peda@lysator.liu.se>
9724
9725         * Makefile.am: Pass STRIP through to the testsuite, so that
9726         tests that run configure will use the same strip program.
9727
9728 2007-07-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9729
9730         * tests/mdemo-exec.test: Also try absolute library names.
9731         * tests/mdemo/main.c (test_dl, main): Try lt_dlopenext as well.
9732         * THANKS: Update.
9733         Report by Brian Barrett.
9734
9735 2007-07-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9736
9737         * doc/fdl.texi: Update to GFDL 1.2.
9738         * doc/libtool.texi: Adjust.  Put License in Appendix.
9739
9740         * libltdl/config/ltmain.m4sh (func_mode_link): Remove each
9741         intermediate relinked object after use, to avoid quadratic space
9742         complexity when linking partially.
9743         Report by Isidor Zeuner <eezyy@gmx.net>.
9744
9745 2007-07-23  Eric Blake  <ebb9@byu.net>
9746
9747         * libltdl/config/ltmain.m4sh: Whitespace cleanup.
9748
9749         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
9750         <chase_symlinks>: Avoid compiler warning.
9751
9752 2007-07-22  Peter Rosin  <peda@lysator.liu.se>
9753
9754         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Add
9755         support for Microsoft Visual C. Also, older MinGW versions
9756         seem to need stdint.h to find intptr_t.
9757
9758 2007-07-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9759
9760         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]:
9761         Ignore lines in ld.so.conf starting with 'hwcap '.
9762
9763 2007-07-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
9764
9765         * tests/cdemo-exec.test: use $EXEEXT where appropriate
9766         to correct mingw cross-compile issues.
9767         * demo-deplibs.test: Ditto.
9768         * demo-exec.test: Ditto.
9769         * demo-inst.test: Ditto.
9770         * demo-relink.test: Ditto.
9771         * depdemo-exec.test: Ditto.
9772         * depdemo-inst.test: Ditto.
9773         * depdemo-relink.test: Ditto.
9774         * f77demo-exec.test: Ditto.
9775         * fcdemo-exec.test: Ditto.
9776         * mdemo-exec.test: Ditto.
9777         * mdemo-inst.test: Ditto.
9778         * mdemo2-exec.test: Ditto.
9779         * pdemo-exec.test: Ditto.
9780         * pdemo-inst.test: Ditto.
9781         * tagdemo-exec.test: Ditto.
9782
9783 2007-07-14  Peter Rosin  <peda@lysator.liu.se>
9784
9785         * AUTHORS, THANKS: Peter Ekberg got married, now Peter Rosin.
9786
9787 2007-07-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
9788
9789         * libltdl/m4/libtool.m4 (func_dirname_and_basename) <XSI>:
9790         New function.
9791         (func_dirname_and_basename) <!XSI>: New function.
9792         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname):
9793         Call it.  Also, take advantage of missed optimization using
9794         func_dirname's additional arguments.
9795         (func_mode_compile): Call it.
9796         (func_mode_install): Call it.
9797         (func_mode_link): Call it.
9798
9799 2007-07-12  Peter Rosin  <peda@lysator.liu.se>
9800
9801         * libltdl/config/ltmain.m4sh (func_mode_link): Strip the cwrapper
9802         using $STRIP instead of relying on the tools to support -s, which
9803         MSVC doesn't.
9804
9805 2007-07-06  Peter O'Gorman  <peter@pogma.com>
9806
9807         * libltdl/config/libtool.m4sh: Don't pass -msg_* through to the
9808         linker.
9809         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
9810
9811 2007-07-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
9812
9813         * libltdl/lt__alloc.c, libltdl/loaders/preopen.c,
9814         libltdl/loaders/dyld.c, libltdl/loaders/dlopen.c, libltdl/ltdl.c,
9815         libltdl/lt_error.c, libltdl/lt_dlloader.c, libltdl/lt__dirent.c:
9816         Include lt__private.h prior to any system headers.
9817         * libltdl/lt__alloc.c: Remove redundant inclusion of configuration
9818         header.
9819
9820 2007-07-04  Eric Blake  <ebb9@byu.net>
9821
9822         * libltdl/ltdl.c (advise_dup): Delete function no longer used
9823         after memleak fix three days ago.
9824
9825 2007-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9826
9827         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Cater to
9828         old Sparc Solaris 7 ld that does not understand `-64'.
9829         Report by Vincent Lefevre <vincent@vinc17.org>.
9830
9831 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9832
9833         * libltdl/m4/lt~obsolete.m4 (LTOBSOLETE_VERSION): New macro, to
9834         force-pull in this file by aclocal.
9835         * libltdl/m4/libtool.m4 (LT_INIT): Require LTOBSOLETE_VERSION.
9836         * tests/libtoolize.at (upgrading verbatim style aclocal.m4):
9837         Adjust.
9838         Report by H. J. Lu <hjl@lucon.org>.
9839
9840         * libltdl/ltdl.c (tryall_dlopen): Rename argument to have typed
9841         alias of `advise' instead of allocating a copy.  Fixes memleak.
9842
9843 2007-06-30  Peter Breitenlohner  <peb@mppmu.mpg.de>
9844
9845         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Correct a typo
9846         ("-dld" instead of "-ldld").
9847
9848 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
9849
9850         Add a test to simulate a failure visible on systems which
9851         need a library prefix like 'lib', such as BeOS.  Fix a number
9852         of bugs exposed by this test in order for it to pass.
9853         Currently the prefix is hardcoded as 'lib', as I am not aware
9854         of systems that require a different prefix:
9855
9856         * libltdl/loaders/preopen.c (lt_dlpreload_open):  Move error
9857         condition out of test loop to be sure that each originator is
9858         tried, instead of erroring out if the first doesn't match.
9859         Support passing NULL as the originator to load all preloaded
9860         modules originating in the program itself.
9861         * libltdl/lt_dlloader.c (lt_dlloader_dump): New debug function.
9862         * libltdl/libltdl/lt_dlloader.h (lt_dlloader_dump): Declare it
9863         when LT_DEBUG_LOADERS is defined at compile time.
9864         * libltdl/ltdl.c (lt_dlinit): Dump loader list after successful
9865         initialisation.
9866         (tryall_dlopen): Add a new VTABLE parameter to force use of a
9867         specific loader in preference to trying every loader in turn.
9868         Adjust all callers.
9869         (try_dlopen): Always see whether a module was preloaded for
9870         module names with no directory component before searching the
9871         filesystem for a match.
9872         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Declare
9873         a new global_symbol_to_c_name_address_lib_prefix variable.
9874         (global_symbol_to_c_name_address_lib_prefix): The sed
9875         expressions to use when a lib prefix is enforced need to be
9876         slightly different to work with preloaded modules.
9877         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): In order
9878         to name preloaded symbols correctly for the lookup algorithm
9879         to work when the loaded module file must be prefixed with lib.
9880         Use global_symbol_to_c_name_address_lib_prefix when
9881         need_lib_prefix is other than no.
9882         * tests/need_lib_prefix.at: New test to check for breakage on
9883         hosts where need_lib_prefix is unknown.
9884         * Makefile.am (TESTSUITE_AT): Add new test.
9885         * tests/TODO: Note missing tests that would have caught some
9886         of the latent bugs fixed by this patch.
9887         * HACKING: Document libltdl keyword.
9888         * NEWS: Updated.
9889
9890 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
9891
9892         Reenable compilation of libltdl with C++:
9893
9894         * libltdl/ltdl.c (tryall_dlopen): Rename the try variable to
9895         attempt, and cast explicitly.
9896         (advise_dup): Add explicit cast.
9897
9898 2007-06-22  Peter O'Gorman  <peter@pogma.com>
9899
9900         * libltdl/config/ltmain.m4sh (version-number) [irix]: Don't subtract
9901         1 from major as it may be less than age.
9902
9903 2007-06-21  Noah Misch  <noah@cs.caltech.edu>
9904
9905         * tests/f77demo/configure.ac [--with-dist]: New option.  Skip most
9906         Fortran checks when given.
9907         * tests/fcdemo/configure.ac [--with-dist]: Likewise.
9908         * Makefile.am (@DIST_MAKEFILE_LIST@): Pass --with-dist.
9909         Reported by Benoit Sigoure <tsuna@lrde.epita.fr>.
9910
9911 2007-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
9912
9913         * AUTHORS: Add myself.
9914
9915 2007-06-18  Charles Wilson  <libtool@cwilson.fastmail.fm>
9916
9917         * libltdl/config/ltmain.m4sh: Add new magic variable
9918         for use with cwrapper.
9919         (func_ltwrapper_script_p): New function.
9920         (func_ltwrapper_executable_p): New function.
9921         (func_ltwrapper_scriptname): New function.
9922         (func_ltwrapper_p): Accomodate both wrapper scripts and
9923         wrapper executables.
9924         (func_mode_execute): Handle $file that is a wrapper
9925         script and $file that is a wrapper executable differently.
9926         (func_mode_install) [cygwin|mingw]: If $file is a wrapper
9927         executable, use func_ltwrapper_scriptname to determine
9928         wrapper script name. Afterwards, always use
9929         func_ltwrapper_script_p instead of func_ltwrapper_p.
9930         (func_emit_libtool_wrapper_script): Rename to...
9931         (func_emit_wrapper): ...this. All callers changed.
9932         (func_emit_libtool_cwrapperexe_source): Rename to...
9933         (func_emit_cwrapperexe_src): ...this. All callers changed.
9934         Embed new magic_exe variable into source. Private transient
9935         wrapper script now called foo_ltshwrapperTMP, not
9936         foo_ltshwrapper.
9937         (func_emit_cwrapperexe_src) [main, mingw]: Use _spawnv
9938         and return child's exit code manually rather than rely on
9939         broken execv.
9940         (func_mode_link) [cygwin|mingw]: Don't call dirname and
9941         basename directly; use func_dirname and func_basename
9942         when computing cwrapper names.  Use cwrapper to generate
9943         wrapper script, and use pathname returned by
9944         func_ltwrapper_scriptname instead of $output.
9945         (func_mode_link) [NOT cygwin|mingw]: move wrapper script
9946         generation for non-win32 inside case statement, as default
9947         case.
9948         (func_mode_uninstall) [$name's extension != .lo|.la]:
9949         'clean' mode must handle $file differently if it is a libtool
9950         wrapper script, or if it is a libtool wrapper executable.
9951         * tests/destdir.at [Simple DESTDIR install]: $EXEEXT fixups.
9952         * tests/destdir.at [DESTDIR with in-package deplibs]: Ditto.
9953
9954 2007-06-17  Noah Misch  <noah@cs.caltech.edu>
9955
9956         * AUTHORS: Add myself.
9957
9958 2007-06-17  Peter O'Gorman  <peter@pogma.com>
9959
9960         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): add quotes to
9961         the test -n.
9962
9963 2007-06-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
9964
9965         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): ensure stderr
9966         is redirected even when getconf does not exist.
9967
9968 2007-06-09  Charles Wilson  <libtool@cwilson.fastmail.fm>
9969
9970         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
9971         Take an argument to specify value assigned to
9972         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR in the emitted
9973         script.
9974         (func_emit_libtool_cwrapperexe_source) [file scope]:
9975         define permission flags S_IXGRP and S_IXOTH if not
9976         already defined.
9977         (func_emit_libtool_cwrapperexe_source) [LTWRAPPER_DEBUGPRINTF]:
9978         Use C89-compatible syntax to mimic variadic macros.
9979         Adjust all callers.
9980         (func_emit_libtool_cwrapperexe_source) [check_executable]:
9981         avoid embedded #ifdefs; use S_IXGRP and S_IXOTH
9982         unconditionally.
9983         (func_emit_libtool_cwrapperexe_source) [make_executable]:
9984         ditto.
9985         (func_emit_libtool_cwrapperexe_source): don't rewrite
9986         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR posthoc; instead pass
9987         correct argument when calling func_emit_libtool_wrapper_script.
9988         (func_mode_link): pass correct argument when calling
9989         func_emit_libtool_wrapper_script.
9990
9991 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
9992
9993         * libltdl/config/ltmain.m4sh (func_emit_libtool_cwrapperexe_source):
9994         ensure that generated source follows GCS as nearly as
9995         possible.
9996
9997 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
9998
9999         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
10000         add code block to handle cases when wrapper script is in $objdir.
10001         (func_emit_libtool_cwrapperexe_source): replace DEBUG() macro
10002         with namespace-safe LTWRAPPER_DEBUGPRINTF(). Call
10003         func_emit_libtool_wrapper_script() with appropriate filters to
10004         embed script text in C char* static variable.
10005         (f_e_l_c_s: main): add new option --lt-dump-script, parse argv[]
10006         for it, and take appropriate action.  Call chase_symlinks()
10007         on argv[0], in case this.exe was launched via one.  Use chased
10008         value to determine full absolute pathname of wrapper script, in
10009         $objdir. Unconditionally write script out to this pathname and
10010         set permission bits.  Remove extraneous ';' from debugging loop.
10011         (f_e_l_c_s: main) [mingw]: DOS-ize $SHELL before populating
10012         newargv[0]; if $TARGETSHELL environment variable is set, use
10013         it instead of $SHELL and do not DOS-ize.  Ensure newargv[1]
10014         (wrapper script absolute path) uses only '/', not '\'.  Make
10015         sure to call execv() with DOS-ized $SHELL (or un-DOS-ized
10016         $TARGETSHELL, if set)
10017         (f_e_l_c_s: make_executable): new function
10018         (f_e_l_c_s: chase_symlinks): new function (no-op if !S_ISLNK)
10019
10020 2007-06-03  Peter O'Gorman  <peter@pogma.com>
10021
10022         * libltdl/m4/libtool.m4 (old_archive_cmds): Remove
10023         old_deplibs.
10024         * tests/archive-in-archive.at: Check for archives as members
10025         of static archives. Currently XFAILS, above only eliminates
10026         one of the two static archives.
10027         * Makefile.am: Add test.
10028         Reported by Daniel Macks <dmacks@netspace.org>
10029
10030 2007-06-01  Steve Ellcey  <sje@cup.hp.com>
10031
10032         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Try using getconf
10033         to set lt_cv_sys_max_cmd_len.
10034
10035 2007-05-28  Peter O'Gorman  <peter@pogma.com>
10036
10037         * libltdl/config/ltmain.m4sh (func_mode_link),
10038         libltdl/m4/libtool.m4 [darwin]: Only use ${wl} in verstring
10039         with xlc.
10040
10041 2007-05-22  Gary V. Vaughan  <gary@gnu.org>
10042
10043         * tests/lt_dladvise.at:  Use the lib prefix throughout for
10044         better portability - testing whether modules build and load
10045         without that prefix is not the domain of this test.
10046         Also, only run the test of the global hint with the depend
10047         module on hosts that can compile a module without passing
10048         -no-undefined in link mode.
10049
10050 2007-05-10  Noah Misch  <noah@cs.caltech.edu>
10051
10052         * tests/duplicate_deps.at: Make the XFAIL unconditional, but
10053         skip the test if the test link would succeed even without
10054         --preserve-dup-deps.
10055
10056         * libltdl/config/general.m4sh (func_echo): Use $* instead of
10057         ${1+"$@"}.
10058
10059 2007-05-09  Eric Blake  <ebb9@byu.net>
10060
10061         * libltdl/libltdl/lt_error.h (LT_ERROR_LEN_MAX): Adjust, to fix
10062         buffer overflow in previous patch.
10063
10064 2007-05-09  Gary V. Vaughan  <gary@gnu.org>
10065
10066         * tests/lt_dladvise.at: Commit missing file from below.
10067
10068 2007-05-08  Gary V. Vaughan  <gary@gnu.org>
10069
10070         Without this patch, lt_dlopen always opens modules with symbol
10071         visibility set according to the underlying implementation.
10072         Here, we add lt_dlopenadvise() to allow callers to request,
10073         among other things, local or global symbol visibility from the
10074         underlying dlloader:
10075
10076         * libltdl/ltdl.c (LT_DLRESIDENT_FLAG): Removed.
10077         (LT_DLIS_RESIDENT): Use public is_resident info field.
10078         (LT_DLIS_SYMLOCAL, LT_DLIS_SYMGLOBAL): New macros to test for
10079         module symbol visibility status.
10080         (tryall_dlopen): If vtable->module_open() was able to act on
10081         either is_symlocal or is_symglobal hints, store that in
10082         the handle flags.
10083         (lt_dlopenadvise): New function that works like lt_dlopen(),
10084         but accepts an advise type to determine whether to ask
10085         dlloaders to change default symbol visibility.
10086         (lt_dlopen, lt_dlopenext): Just call lt_dlopenadvise() with
10087         the correct parameters.
10088         (lt_dladvise_init, lt_dladvise_destroy): New functions to
10089         initialize and destroy an advise type hint.
10090         (lt_dladvise_ext, lt_dladvise_resident, lt_dladvise_local)
10091         (lt_dladvise_global): Set hints on an advise type.
10092         (openadvise): Factored out of lt_dlopenadvise.
10093         (has_library_ext): Factored out of lt_dlopenadvise.
10094         * libltdl/ltdl.h: Declare all of the above.
10095         (lt_dlinfo): New fields for advise hints.
10096         * libltdl/libltdl/lt_dlloader.h (lt_module_open): Add a new
10097         advise parameter.  Adjust all callers.
10098         (lt_dladvise): New opaque type for advise hints.
10099         * libltdl/libltdl/lt__private.h (lt__advise): Declare
10100         contents of opaque lt_dladvise type.
10101         * libltdl/libltdl/lt_error.h (CONFLICTING_FLAGS): New error
10102         for attempts to have local and global symbol visibility at the
10103         same time.
10104         * libltdl/loaders/dld_link.c, libltdl/loaders/dyld.c,
10105         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
10106         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Adjust.
10107         * libltdl/loaders/dlopen.c (RTLD_LOCAL, RTLD_GLOBAL): Try to
10108         define these symbols if the system has equivalents.
10109         (vmopen): If unable to act on a caller request to set symbol
10110         visibility, then unset the relevant hints in the advise type.
10111         * tests/lt_dladvise.at: New tests for the above.
10112         * doc/libtool.texi (Libltdl Interface): Updated.
10113         * NEWS: Updated.
10114
10115 2007-05-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10116
10117         * libltdl/config/ltmain.m4sh (func_mode_link): When adding
10118         new_inherited_linker_flags to compiler_flags, remember to
10119         translate .ltframework back.  Fixes bug introduced 2007-04-23.
10120         * THANKS: Update.
10121         * tests/inherited_flags.at: Amend test.
10122         Report by Christoph Egger.
10123
10124 2007-05-03  Reuben Thomas  <rrt@sc3d.org>  (tiny change)
10125
10126         * doc/libtool.texi (Libltdl interface): Fix typo.
10127
10128 2007-05-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10129
10130         * Makefile.am (clean-ltmain-sh): Removed.
10131         (libtool, $(srcdir)/$(m4dir)/ltversion.m4)
10132         ($(srcdir)/$(auxdir)/ltmain.sh): Updated to not depend on any
10133         phony rules.  Test `$?' for prerequisites that should always
10134         cause us to update the target.  Fixes rebuilding rules, at the
10135         cost of sometimes updating too much with non-GNU make.
10136
10137 2007-04-27  Noah Misch  <noah@cs.caltech.edu>
10138
10139         * tests/ctor.at: New file.
10140         * Makefile.am (TESTSUITE_AT): Add tests/ctor.at.
10141
10142 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
10143
10144         * libltdl/libltdl/lt__glibc.h: Use !HAVE_WORKING_ARGZ
10145         instead of SYSTEM_ARGZ_IS_BROKEN.
10146         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Ditto.  Also, minor
10147         stylistic improvements.
10148         Report by Bruno Haible <bruno@clisp.org>.
10149
10150 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
10151             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10152
10153         * libltdl/argz_.h: ensure error_t definition is obtained
10154         in same mechanism system argz.h would have.
10155         * libltdl/libltdl/lt__glibc.h: also detect if
10156         SYSTEM_ARGZ_IS_BROKEN when determining whether to re#def
10157         argz* functions.
10158         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): add new test to check
10159         if $host's argz facilities are known bad.  Err on the side
10160         of caution if cross-compiling.
10161
10162 2007-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10163
10164         * README, README.alpha: Document how to test an arbitrary
10165         installed libtool script.
10166
10167 2007-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10168
10169         * tests/cmdline_wrap.at: Avoid `AT_CAPTURE_FILE' if it not
10170         defined (Autoconf < 2.60).
10171         * tests/shlibpath.at: Add `libtool' keyword.
10172
10173         * tests/indirect_deps.at: New file, with tests to ensure
10174         `link_all_deplibs=no' does not break functionality.
10175         * Makefile.am: Adjust.
10176
10177 2007-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10178
10179         * libltdl/config/ltmain.m4sh (func_mode_link): Fix accumulation
10180         of `inherited_linker_flags' entries from multiple deplibs, by
10181         adding $new_inherited_linker_flags only once, only in link pass.
10182         * tests/inherited_flags: Amend test to expose this.
10183         * NEWS: Adjust: kill one regression, but add note about the
10184         feature new in 1.9b.
10185         Report by Jeff Squyres and others.
10186
10187 2007-04-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
10188
10189         * libltdl/config/ltmain.m4sh (func_mode_link): move wrapper
10190         script generation from here...
10191         (func_emit_libtool_wrapper_script): to this new function, and
10192         write to stdout
10193         (func_mode_link): move cwrapper source code generation from
10194         here...
10195         (func_emit_libtool_cwrapperexe_source): to this new function,
10196         and write to stdout
10197         (func_mode_link): call the two new functions and redirect
10198         output to appropriate file.
10199
10200 2007-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10201
10202         * libltdl/config/ltmain.m4sh (func_mode_link) <-no-install>
10203         [ darwin ]: Treat like `-no-fast-install', as we cannot
10204         hardcode.  Report by Simon Josefsson.
10205
10206 2007-04-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10207
10208         * doc/libtool.texi (Link mode) <-no-install>: Mention that this
10209         still generates a wrapper script on systems without hardcoding.
10210         * tests/stresstest.at: Test `-no-install'.
10211         * THANKS: Update.
10212         Report by Simon Josefsson.
10213
10214 2007-03-30   Matthieu Herrb  <matthieu.herrb@laas.fr>
10215
10216         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
10217         [ openbsd ]: Add an explicit check for shared libraries support.
10218
10219 2007-03-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10220
10221         * Makefile.am ($(srcdir)/$(m4dir)/ltversion.m4): Fix quoting
10222         error.
10223
10224 2007-03-28  Gary V. Vaughan  <gary@gnu.org>
10225
10226         * HACKING (Abstraction layers in libltdl): Rewritten somewhat
10227         for (hopefully) better clarity.
10228
10229 2007-03-26  Gary V. Vaughan  <gary@gnu.org>
10230
10231         The stamp-vcl file rules caused non-gnu make programs to rerun
10232         parts of the configuration process on each invocation.  Instead
10233         of relying on a stamp file, we now compare version numbers of
10234         generated files with the ChangeLog timestamp manually in the
10235         affected make rules to decide whether regenerating is necessary:
10236
10237         * Makefile.am (EXTRA_DIST): Remove stamp-vcl.
10238         (clean-ltmain-sh): Also remove users' obsolescent stamp-vcl.
10239         (rebuild): Keep some common code here for...
10240         (libtool, libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh):
10241         Rewritten to work without reference to intermediate stamp-vcl
10242         file.
10243         * configure.ac (CONFIG_STATUS_DEPENDENCIES): Change from
10244         stamp-vcl to ChangeLog.
10245         * NEWS: Removed entry saying this fix is needed.
10246
10247 2007-03-25  Gary V. Vaughan  <gary@gnu.org>
10248
10249         * HACKING (LGPL with Libtool exception clause): Typo.
10250         Reported by Tim Van Holder  <tim.van.holder@telenet.be>
10251
10252         * HACKING (Licensing Rules): Explain the various license texts
10253         used for files distributed with Libtool, and update license text
10254         to match.
10255         * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
10256         bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
10257         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
10258         libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
10259         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
10260         libltdl/config/mkstamp, libltdl/configure.ac,
10261         libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
10262         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
10263         libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
10264         libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h,
10265         libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c,
10266         libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
10267         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
10268         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c,
10269         libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
10270         libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
10271         libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
10272         libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
10273         libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
10274         libltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
10275         libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
10276         tests/cdemo-conf.test, tests/cdemo-exec.test,
10277         tests/cdemo-make.test, tests/cdemo-shared.test,
10278         tests/cdemo-static.test, tests/cdemo-undef.test,
10279         tests/cdemo/Makefile.am, tests/cdemo/configure.ac,
10280         tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
10281         tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
10282         tests/demo-conf.test, tests/demo-deplibs.test,
10283         tests/demo-exec.test, tests/demo-hardcode.test,
10284         tests/demo-inst.test, tests/demo-make.test,
10285         tests/demo-nofast.test, tests/demo-noinst-link.test,
10286         tests/demo-nopic.test, tests/demo-pic.test,
10287         tests/demo-relink.test, tests/demo-shared.test,
10288         tests/demo-static.test, tests/demo-unst.test,
10289         tests/demo/Makefile.am, tests/demo/configure.ac,
10290         tests/demo/dlmain.c, tests/demo/foo.c,
10291         tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
10292         tests/demo/hello.c, tests/demo/main.c,
10293         tests/depdemo-conf.test, tests/depdemo-exec.test,
10294         tests/depdemo-inst.test, tests/depdemo-make.test,
10295         tests/depdemo-nofast.test, tests/depdemo-relink.test,
10296         tests/depdemo-shared.test, tests/depdemo-static.test,
10297         tests/depdemo-unst.test, tests/depdemo/Makefile.am,
10298         tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
10299         tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
10300         tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
10301         tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
10302         tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
10303         tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
10304         tests/depdemo/l4/l4.h, tests/depdemo/main.c,
10305         tests/depdemo/sysdep.h, tests/deplibs-ident.at,
10306         tests/destdir.at, tests/duplicate_conv.at,
10307         tests/duplicate_deps.at, tests/duplicate_members.at,
10308         tests/early-libtool.at, tests/export.at,
10309         tests/f77demo-conf.test, tests/f77demo-exec.test,
10310         tests/f77demo-make.test, tests/f77demo-shared.test,
10311         tests/f77demo-static.test, tests/f77demo/Makefile.am,
10312         tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
10313         tests/f77demo/foo.h, tests/f77demo/fooc.c,
10314         tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
10315         tests/fcdemo-make.test, tests/fcdemo-shared.test,
10316         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
10317         tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
10318         tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
10319         tests/inherited_flags.at, tests/libtoolize.at,
10320         tests/link-2.test, tests/link-order.at, tests/link-order2.at,
10321         tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test,
10322         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
10323         tests/mdemo-inst.test, tests/mdemo-make.test,
10324         tests/mdemo-shared.test, tests/mdemo-static.test,
10325         tests/mdemo-unst.test, tests/mdemo/Makefile.am,
10326         tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
10327         tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
10328         tests/mdemo/sub.c, tests/mdemo2-conf.test,
10329         tests/mdemo2-exec.test, tests/mdemo2-make.test,
10330         tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
10331         tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
10332         tests/objectlist.test, tests/old-m4-iface.at,
10333         tests/pdemo-conf.test, tests/pdemo-exec.test,
10334         tests/pdemo-inst.test, tests/pdemo-make.test,
10335         tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
10336         tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
10337         tests/pdemo/longer_file_name_foo.c,
10338         tests/pdemo/longer_file_name_foo2.c,
10339         tests/pdemo/longer_file_name_hell1.c,
10340         tests/pdemo/longer_file_name_hell2.c,
10341         tests/pdemo/longer_file_name_hello.c,
10342         tests/pdemo/longer_file_name_main.c, tests/quote.test,
10343         tests/recursive.at, tests/search-path.at, tests/sh.test,
10344         tests/shlibpath.at, tests/standalone.at, tests/static.at,
10345         tests/stresstest.at, tests/subproject.at, tests/suffix.test,
10346         tests/tagdemo-conf.test, tests/tagdemo-exec.test,
10347         tests/tagdemo-make.test, tests/tagdemo-shared.test,
10348         tests/tagdemo-static.test, tests/tagdemo-undef.test,
10349         tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
10350         tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
10351         tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
10352         tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
10353         tests/tagdemo/main.cpp, tests/tagtrace.test,
10354         tests/template.at, tests/testsuite.at: Apply correct license
10355         text according to the new rules set out in HACKING.
10356
10357 2007-03-19  Gary V. Vaughan  <gary@gnu.org>
10358
10359         * libtoolize.m4sh: Handle argz.m4 specially like ltdl.m4, so
10360         that it isn't copied unless libltdl is being used.  Copy other
10361         macro files according to their tagged serial numbers.
10362         * tests/libtoolize.at: Adjust.
10363
10364 2007-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10365
10366         * tests/mdemo/Makefile.am (libmlib_la_LDFLAGS): Add
10367         `-export-symbols-regex ".*"' because the convenience libltdl
10368         uses export markers and thus turns off autoexport on w32.  Fixes
10369         test failures for Cygwin and MinGW.
10370         Bug analysis by Charles Wilson.
10371
10372         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
10373         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10374         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ interix ]: When
10375         matching for interix, accept version range [3-9] instead of 3.
10376         * NEWS: Update.
10377         Report by Martin Koeppe <mkoeppe@gmx.de>.
10378
10379         * libltdl/m4/libtool.m4 (LT_PROG_GCJ): Avoid M4 expansion error
10380         that caused `dnl' to be merged to the previous word.
10381         * THANKS: Update.
10382         Report by Steve Ellcey.
10383
10384 2007-03-09  Gary V. Vaughan  <gary@gnu.org>
10385
10386         * libtoolize.m4sh: Replace literal tab chars in help comment
10387         with spaces to align columns in --help output.
10388
10389 2007-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10390
10391         * libltdl/config/ltmain.m4sh (func_mode_link): Also apply the
10392         symbol filtering for w32 and the include_expsyms feature in the
10393         case of exceeded command line length.  Fixes test failure on
10394         MinGW.
10395
10396         * tests/stresstest.at: For const data object imported from
10397         shared library, define appropriate macros to expand
10398         __declspec(dllimport) on w32.  Use two different main objects
10399         and pick the right one for the link flags we are about to test.
10400         Fixes test failure on MinGW.
10401
10402         * tests/export.at: For const data object imported from shared
10403         library, define appropriate macros to expand
10404         __declspec(dllimport) on w32.  Fixes test failure on MinGW.
10405
10406 2007-03-05  Gary V. Vaughan  <gary@gnu.org>
10407
10408         * libtoolize.m4sh (func_check_macros): Display m4 quotes correctly
10409         in AC_CONFIG_MACRO_DIR diagnostics.
10410
10411         * libltdl/config/general.m4sh (M4SH_VERBATIM): New macro to
10412         simplify m4sh quote quoting in blocks of raw shell code.
10413         * clcommit.m4sh, libtoolize.m4sh, libltdl/config/getopt.m4sh,
10414         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
10415         tests/defs.m4sh: Use it.
10416         * HACKING (Editing `.m4sh' Files): Mention M4SH_VERBATIM Macro.
10417
10418 2007-02-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10419
10420         * tests/lt_dlexit.at: Allow test to pass on static-only systems
10421         and with disable-shared.
10422
10423         * NEWS: Rewrite all news since 1.9f and put in categories,
10424         update.
10425
10426         * libltdl/Makefile.inc: Fix the file description, so that it
10427         matches recursive and nonrecursive libltdl setup.
10428         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Do not depend
10429         upon the exact text of the copyright header, just copy until
10430         the marker line.  Remove the marker lines in the output, and
10431         adjust the description for subpackage setup.
10432
10433 2007-02-26  Gary V. Vaughan  <gary@gnu.org>
10434
10435         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fix regexp typo.
10436
10437         * clcommit.m4sh: Look in the right directory for helper scripts.
10438
10439 2007-02-25  Gary V. Vaughan  <gary@gnu.org>
10440
10441         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fixup regex to
10442         match Copyright notice change below.
10443
10444         * HACKING, Makefile.am, Makefile.maint, bootstrap,
10445         libltdl/Makefile.am, libltdl/Makefile.inc, libltdl/m4/libtool.m4,
10446         ltmain.c, tests/cdemo/Makefile.am, tests/demo/Makefile.am,
10447         tests/depdemo/Makefile.am, tests/depdemo/l1/Makefile.am,
10448         tests/depdemo/l2/Makefile.am, tests/depdemo/l3/Makefile.am,
10449         tests/depdemo/l4/Makefile.am, tests/f77demo/Makefile.am,
10450         tests/fcdemo/Makefile.am, tests/libtoolize.at,
10451         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
10452         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Update
10453         Copyright notice text to include URL for canonical GPL document.
10454
10455 2007-02-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10456
10457         * tests/static.at: Forgot to fix PATH for the first
10458         func_test_exec invocation.  So factor out into new functions
10459         func_fix_path and func_restore_path and use those.
10460
10461         * README: Document the need for GNU make to build Libtool.
10462         Point the user to the doc/notes.txt file.  In the examples, use
10463         `gmake' throughout to make it more obvious.  Explain simpler way
10464         to run both testsuites and either one.  Referring to individual
10465         tests needs the `tests/' prefix.
10466         * README.alpha: Likewise.
10467         * doc/notes.texi: Likewise, document need for GNU make.
10468         Comment out the FreeBSD make issue for now.
10469
10470         * tests/static.at: Larger rewrite to make work on w32: Use three
10471         different prefixes instead of three libdirs, so the moving of
10472         the DLLs works as expected.  Adjust all code.  Since now
10473         $libdirI/../bin is distinct from the directory of the installed
10474         program, take care than on w32 PATH contains the needed bindirs,
10475         in appropriate order.
10476         Report by Charles Wilson.
10477
10478         * Makefile.am (INSTALLCHECK_ENVIRONMENT): Point LTDLINCL and
10479         LIBLTDL to installed libltdl, so that it is being used by
10480         the lt_dlexit test.
10481
10482 2007-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10483
10484         * doc/libtool.texi (Install mode, libtool script contents):
10485         Describe current and system-specific DESTDIR limitations.
10486         * tests/destdir.at: XFAIL if `fast_install' is no.
10487
10488         * doc/libtool.texi (LT_INIT): Fix typo.
10489
10490         * doc/libtool.texi (Libtool test suite): Mention the new
10491         testsuite.  Point to README rather than INSTALL for testing
10492         instructions.
10493         (Test descriptions): Fix more file names.  Also mention
10494         cdemo-undef.test, mdemo2-conf.test, mdemo2-exec.test,
10495         mdemo2-make.test, objectlist.test, pdemo-conf.test,
10496         pdemo-exec.test, pdemo-inst.test, pdemo-make.test,
10497         tagdemo-conf.test, tagdemo-exec.test, tagdemo-make.test,
10498         tagdemo-static.test, tagdemo-shared.test, tagdemo-undef.test,
10499         f77demo-conf.test, f77demo-exec.test, f77demo-make.test,
10500         f77demo-static.test, f77demo-shared.test, fcdemo-conf.test,
10501         fcdemo-exec.test, fcdemo-make.test, fcdemo-static.test,
10502         fcdemo-shared.test.  Describe what they do.
10503         (When tests fail, Troubleshooting): Mention how to pass options
10504         to the new test suite.
10505         * tests/tagdemo/README: Fix description.
10506
10507         * bootstrap: Also set GREP, FGREP, EGREP, LN_S, when creating a
10508         preliminary ltmain.sh script.
10509
10510         * doc/libtool.texi (Test descriptions): Track the grand test
10511         suite renaming from 2003-10-14 in the tests documentation.
10512         assign.test is merged into sh.test.  Fix description of sh.test.
10513         * tests/sh.test: Likewise.
10514
10515         * doc/libtool.texi (LT_INIT): Fix wording of intro a bit.
10516         <shared, static>: Also describe these default LT_INIT options.
10517         <AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL>
10518         <AC_DISABLE_FAST_INSTALL>: Mention deprecated macro names,
10519         including the respective LT_INIT replacement.
10520         <AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_ENABLE_SHARED>
10521         <AC_ENABLE_STATIC>: Document, un-deprecate.  Suggest the
10522         respective LT_INIT replacement.
10523         <AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_ENABLE_SHARED>
10524         <AM_ENABLE_STATIC>: Document deprecated aliases.
10525         (Distributing libltdl) <AC_WITH_LTDL, AC_LIBLTDL_INSTALLABLE>
10526         <AC_LIBLTDL_CONVENIENCE>: Document deprecated aliases.
10527         * libltdl/m4/ltoptions.m4 (AM_ENABLE_SHARED, AM_DISABLE_SHARED)
10528         (AM_ENABLE_STATIC, AM_DISABLE_STATIC): Make these AU_ALIASes of
10529         the respective AC_* macros, so we do not recommend LT_INIT(*) in
10530         this case.
10531         (AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC)
10532         (AC_DISABLE_STATIC): Un-deprecate these.  Remove now-superfluous
10533         aclocal-1.4 backwards compatibility comments.
10534
10535         * tests/link-order2.at: Rewrite completely.  Do not use `sin'
10536         from the math library, there are too many problems with this.
10537         Instead, use a self-written library, install it without the
10538         Libtool library file, to emulate a native library in a system
10539         directory, and adjust $shlibpat_var.  Try overriding its symbol.
10540         Further, also try an installed `wrong' binary.
10541         Avoid failing test bits on AIX without runtimelinking and on
10542         Darwin in some cases, SKIP at the end in this case.
10543         Analysis by Peter O'Gorman.
10544
10545         * doc/notes.texi: Mention MACOSX_DEPLOYMENT_TARGET issue.
10546         * tests/template.at: Only skip those tests failing on Darwin
10547         if `-flat_namespace' is used by libtool.  In that case, SKIP
10548         at the end.  Analysis by Peter O'Gorman.
10549
10550 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10551
10552         Fix -export-symbols and -export-symbols-regex for links that
10553         exceed the command line length and use convenience archives.
10554
10555         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid grepping a
10556         nonexistent file if using reloadable objects.  Do not create a
10557         linker script nor a linker input file if no objects are passed.
10558         Apply export_symbols_regex in case the command line length is
10559         exceeded.
10560         Report by Bob Friesenhahn.
10561
10562         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
10563         <compiler_needs_object>: New tag variable.  Default to `no'.
10564         (_LT_LINKER_SHLIBS) [ linux ]: Set it to yes for Sun C 5.9.
10565         (_LT_LANG_CXX_CONFIG): Also default it to `no'.
10566         [ linux ]: Set it to `yes' for Sun C++ 5.9.
10567         * libltdl/config/ltmain.m4sh (func_mode_link): If we link
10568         no objects but only convenience archives into a library,
10569         force expansion if `compiler_needs_object' is yes.
10570         For creating a linker input filelist due to long cmdline,
10571         extract the first object if `compiler_needs_object' is yes.
10572         * doc/libtool.texi (libtool script contents): Document it.
10573         Fixes test failures of Sun compilers on GNU/Linux.
10574         Report by Terry D. Dontje.
10575
10576         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid setting
10577         `$libobjs' to a single space; set it to empty in that case.
10578
10579 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10580
10581         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [ osf5 ]:
10582         On Tru64 5.1, const relocations do not work well.  Omit the
10583         const here.  Fixes failure of demo-make after demo-shared with
10584         link editor error `seg_info_ptr: Couldnt find a seg type 2'.
10585
10586         * Makefile.am (doc_libtool_TEXINFOS): Renamed from...
10587         (libtool_TEXINFOS): ...this, to fix dependencies.  Omit from
10588         EXTRA_DIST.
10589         (check-local): Also depend upon $(bin_SCRIPTS).
10590
10591 2007-02-23  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>  (tiny change)
10592
10593         * libltdl/config/general.m4sh (sed_double_backslash): Fix
10594         hacky sed script to avoid limitations but retain portability to
10595         Solaris /bin/sed.  Remove old obsolete cruft.
10596
10597 2007-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10598
10599         * libltdl/config/ltmain.m4sh (func_mode_link): Fix the check for
10600         convenience archives when warning about linking against static
10601         libraries: test against $deplib rather than empty $lib.
10602
10603 2007-02-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10604
10605         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Fix detection of new enough
10606         libltdl by actually checking for the declaration of
10607         lt_dlinterface_register in ltdl.h with AC_CHECK_DECL.
10608         Remove redundant configure output line.
10609
10610         * tests/template.at: Reformat, add M4 quoting.  Use $LDFLAGS
10611         consistently for link mode.
10612
10613 2007-02-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10614
10615         * tests/static.at: Use the right names for the broken libs.
10616
10617 2007-02-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10618
10619         * tests/deplibs-ident.at [aix, hppa*-*-hpux*, interix, openbsd]:
10620         Do not XFAIL, on these systems we happen to pass.
10621         * tests/duplicate_deps.at [aix]: Likewise.
10622
10623         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux |
10624         k*bsd*-gnu ]: Fix eval quoting in the DT_RUNPATH test.
10625
10626         * HACKING: Update.
10627
10628         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ linux ]
10629         <whole_archive_flag_spec>: For Sun C/C++ 5.9, do not add
10630         /dev/null as dummy object, it fails with GNU ld version
10631         2.16.91.0.7-amd-sles9.  Report by Terry D. Dontje.
10632         * THANKS: Update.
10633
10634 2007-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10635
10636         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ osf4, osf5 ]
10637         <archive_expsym_cmds>: Use `${wl}-input' not `-input', for
10638         cc.  Could use `-input_to_ld'.
10639         (_LT_LANG_CXX_CONFIG) [ osf4, osf5 ] <archive_expsym_cmds>:
10640         Use `${wl}' instead of `-Wl,', for consistency.
10641
10642 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10643
10644         Fix spurious testsuite failures on AIX due on NFS mounts due to
10645         shared library images that cannot be removed without `slibclean'
10646         which needs superuser privileges.
10647
10648         * tests/testsuite.at (PREPARE_TESTS): Define $mkdir_p globally.
10649         (LT_AT_MVDIR): New macro to emulate `mv dir dest'.
10650         * tests/destdir.at: Use LT_AT_MVDIR.
10651         * tests/shlibpath.at: Likewise.
10652         * tests/static.at: Likewise.
10653
10654 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10655
10656         * tests/export.at: Exporting is not fully functional with
10657         -retain-symbols-file.  Do not test for failure to link `broken'
10658         in this case.  At the end of the test, SKIP if we are not fully
10659         functional.
10660
10661         * tests/lt_dlexit.at: Add casts and `extern "C"' to let the test
10662         pass with a C++ compiler.
10663
10664         * libltdl/config/ltmain.m4sh: Remove duplicate marker for
10665         generated shell functions.
10666
10667         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): New macro, like
10668         LT_AT_EXEC_CHECK but uses `$LIBTOOL --mode=execute' and allows
10669         to pass `-dlopen MODULE' arguments.
10670         * tests/lt_dlexit.at: Use it.  Also, do not test `-dlpreopen',
10671         that currently needs library names to begin with `lib'.
10672
10673 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10674
10675         * tests/export.at: New test: expose -export-symbols failure
10676         when the input consists solely of convenience archives, and
10677         failure to not export all symbols when the command line length
10678         is exceeded.
10679         * Makefile.am: Adjust.
10680
10681         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New substituted
10682         function `func_lo2o', saving two fork&exec with XSI shells.
10683         * libltdl/config/ltmain.m4sh (func_mode_compile)
10684         (func_mode_install, func_mode_link): Use it for rewrites of
10685         single files.
10686
10687         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New function
10688         func_opt_split, for XSI and portable shell.
10689         * libltdl/config/ltmain.m4sh: Move the insertion point for the
10690         configure-generated shell functions to before the first option
10691         parsing loop.  Rewrite the separation of the long options to use
10692         func_opt_split.
10693
10694 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10695
10696         Eliminate roughly a third of the script execution time overhead
10697         for all modes except for link/relink and uninstall/clean.
10698
10699         * libltdl/m4/libtool.m4 (_LT_CONFIG): Remove unused `TEST SUITE
10700         MARKER', obsolete since 2005-04-17.
10701         * libltdl/config/ltmain.m4sh: Likewise, several instances.
10702         (Main): Tear apart, moving individual bits up as early in the
10703         script as possible, to help the shell to avoid parsing the rest.
10704
10705 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10706
10707         * doc/libtool.texi: Update copyright years.
10708
10709 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10710
10711         * libltdl/config/general.m4sh (sed_double_backslash): Replace
10712         POSIX sed script with a hack that treats up to 10 backslashes
10713         in the input correctly and is portable to Solaris /bin/sed.
10714
10715 2007-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10716
10717         * tests/testsuite.at (LT_AT_TAG): Skip also if the compiler
10718         variable is set to `no', not only if it is empty.
10719
10720 2007-02-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10721
10722         * tests/lt_dlexit.at: Do not compile main object with libtool.
10723
10724         * tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir
10725         to inner testsuite.
10726
10727         * Makefile.am (TESTSUITE_AT): Move destdir.at after
10728         search-path.at so the banners fit better.
10729
10730         * tests/convenience.at: Use $CPPFLAGS for compilation.
10731         * tests/deplibs-ident.at: Likewise.
10732         * tests/duplicate_members.at: Likewise.
10733         * tests/inherited_flags.at: Likewise.
10734         * tests/link-order.at: Likewise.
10735         * tests/stresstest.at: Likewise.
10736         * tests/early-libtool.at: Likewise.  Do not quote $CC.
10737
10738         * libltdl/ltdl.c (lt_dlexit): Add casts to fix compilation with
10739         C++ compiler again.
10740
10741         * tests/destdir.at: Add `libtool' keyword to tests.
10742
10743 2007-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10744
10745         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
10746         (_LT_LINKER_BOILERPLATE, _LT_SYS_MODULE_PATH_AIX)
10747         (_LT_COMPILER_C_O): Require _LT_DECL_SED.
10748         * THANKS: Update.
10749         Report by Maciej W. Rozycki.
10750
10751 2007-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10752
10753         * tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir,
10754         in the new testsuite.
10755
10756 2007-01-29  Samuel Thibault <samuel.thibault@ens-lyon.org>
10757
10758         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ gnu ]
10759         <archive_expsym_cmds>: Behave like Linux, so that
10760         --version-script is used for Hurd as well.
10761
10762 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
10763
10764         * NEWS: Update for Cygwin changes.
10765
10766 2007-01-28  Brian W. Barrett <bbarrett@lanl.gov>
10767
10768         * libltdl/config/ltmain.m4sh [darwin]: Use otool64 if otool fails.
10769
10770 2007-01-28  Dave Brolley  <brolley@redhat.com>,
10771             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10772
10773         * libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL
10774         before checking that it is still in the list.
10775         * tests/lt_dlexit.at: New test.
10776         * Makefile.am (TESTSUITE_AT): Adjust.
10777         (check-local): Also depend on libltdl/libltdlc.la.
10778         (check-recursive): Removed, unnecessary use of Automake
10779         internals.
10780
10781 2007-01-28  Mike Frysinger  <vapier@gentoo.org>
10782
10783         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
10784         `-p' and `-fprofile-*' for GCC.
10785
10786 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10787
10788         * libltdl/libltdl/lt_system.h: Adjust copyright years.
10789
10790 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
10791
10792         * libltdl/libltdl/lt__private.h (LT_GLOBAL_DATA) [__CYGWIN__]:
10793         Also define on Cygwin.
10794         * libltdl/libltdl/lt_system.h (LT_SCOPE) [__CYGWIN__]: Likewise.
10795
10796 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10797
10798         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ cygwin, mingw ]
10799         <export_symbols_cmds>: Avoid shell expansion of '/s/.*' through
10800         double expansion, in case there is a 'S:' drive.
10801         Report by Charles Wilson.
10802
10803 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10804
10805         Introduce a new test keyword `recursive' for tests that create a
10806         modified `libtool' script and run the suite on this script.  All
10807         tests with the keyword `libtool' are (by definition) suitable to
10808         be used here.
10809
10810         * tests/cmdline_wrap.at: New test.
10811         * Makefile.am: Adjust.
10812         * tests/testsuite.at (LT_ESCAPE): New macro: clone of Autoconf
10813         AS_ESCAPE that does not escape `$'.
10814         (LT_AT_CHECK): New macro: print a command-to-be-run while
10815         expanding parameters but nothing else.
10816         * tests/stresstest.at: Use LT_AT_CHECK.  Create some files to
10817         expose erroneous globbing errors with `-export-symbols-regex',
10818         similar to those reported by Charles Wilson.  Use `eval' and
10819         adjusted quoting so the expansion doesn't already happen in the
10820         testsuite commands.
10821         * HACKING: Update.
10822
10823 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10824
10825         Assume C89 for included headers, and throughout the testsuite.
10826
10827         * NEWS: Update.
10828         * libltdl/argz.c: Do not include strings.h nor memory.h, include
10829         string.h unconditionally.
10830         Patch by Simon Josefsson <jas@extundo.com>.
10831         * libltdl/libltdl/lt__private.h: Likewise.
10832         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not check for string.h,
10833         strings.h, memory.h.
10834         * tests/cdemo/configure.ac: Assume presence of math.h.
10835         * tests/cdemo/foo.c: Likewise.
10836         * tests/demo/configure.ac: Likewise for math.h, string.h.
10837         Assume 'const'.  Drop obsolete AC_EXEEXT.
10838         * tests/demo/dlmain.c: Likewise.
10839         * tests/demo/foo.c: Likewise.
10840         * tests/depdemo/configure.ac: Likewise.
10841         * tests/depdemo/l4/l4.c: Likewise.
10842         * tests/f77demo/configure.ac: Likewise.  Also drop obsolete
10843         AC_OBJEXT.
10844         * tests/fcdemo/configure.ac: Likewise.
10845         * tests/mdemo/configure.ac: Likewise.
10846         * tests/mdemo/foo1.c: Likewise.
10847         * tests/mdemo/foo2.c: Likewise.
10848         * tests/mdemo2/configure.ac: Likewise.
10849         * tests/pdemo/configure.ac: Likewise.
10850         * tests/pdemo/longer_file_name_dlmain.c:
10851         * tests/pdemo/longer_file_name_foo.c: Likewise.
10852         * tests/pdemo/longer_file_name_foo2.c: Likewise.
10853         * tests/tagdemo/configure.ac: Likewise.
10854         * tests/tagdemo/foo.cpp: Likewise.
10855
10856 2007-01-24  Reuben Thomas <rrt@sc3d.org>  (tiny change)
10857
10858         * doc/libtool.texi (Inter-library dependencies): Fix typo.
10859
10860 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10861
10862         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]:
10863         Use `lib -OUT' rather than `lib /OUT' to avoid MSYS path
10864         translation mangling.  Report by Christopher Hulbert.
10865         * THANKS: Update.
10866
10867         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
10868         suffixes matching `[fF][09].', for Fortran.
10869         * tests/suffix.test: Also test F90, F95, f03, F03.
10870
10871         * Makefile.am (EXTRA_DIST): Add ChangeLog.2006.
10872         * ChangeLog.2006: New, rotated, from...
10873         * ChangeLog: ...here.
10874
10875 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10876
10877         * doc/libtool.texi: Typo fixes.
10878         * TODO: Likewise.
10879
10880 2006-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10881
10882         * tests/link-order2.at: Define our override `sin' function with
10883         C binding even if $CC is a C++ compiler.  Skip the test with g++
10884         as its command line driver reorders `-lm'.
10885         * tests/search-path.at: Declare `inflate' with C binding.
10886         * tests/stresstest.at: Avoid unused variable warnings.
10887
10888 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10889
10890         * tests/link-order2.at: Simplify logic to be a bit more self
10891         documenting.  Suggested by Gary V. Vaughan.
10892
10893 2006-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10894
10895         * tests/link-order2.at: Add missing $bindir setting.  Prevent
10896         compiler optimization of sqrt call.  Fix logic inversion and
10897         add some comments about this stunt.  Add a test with reversed
10898         library link order that should fail if the system has a libm.
10899         Report by Patrick Welche.
10900
10901 2006-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10902
10903         Assume presence of a config header in all files, to provoke
10904         test failures on all systems.
10905         * libltdl/lt__alloc.c: Likewise.
10906         * libltdl/libltdl/lt__dirent.h: Likewise.
10907         * libltdl/libltdl/lt__glibc.h: Likewise.
10908         * libltdl/libltdl/lt__private.h: Likewise.
10909         * libltdl/libltdl/lt__strl.h: Likewise.
10910         * tests/recursive.at: Use AC_CONFIG_HEADERS.
10911         * tests/nonrecursive.at: Likewise.  Invoke autoheader.
10912         * HACKING: Adjust.
10913         Report by Patrick Welche.
10914
10915 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>,
10916             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10917
10918         * doc/libtool.texi (Distributing libltdl): In recursive and
10919         nonrecursive mode, a config header is now required.
10920         * libltdl/argz.c: Remove check for HAVE_CONFIG_H, to conform
10921         to gnulib's policy of including config.h unconditionally.
10922
10923 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10924
10925         * tests/link-order2.at: New test to show one case where ordering
10926         of depdepls on the command line matters.
10927         * Makefile.am: Adjust.
10928
10929         * tests/tagtrace.test: SKIP if `autoconf --trace' exits 63 or 1,
10930         for various possible (valid) error cases.  Also output stderr,
10931         to help with analysis.
10932
10933         * NEWS: Account for recent multilib fix.
10934         * tests/search-path.at: New test, to provide at least a weak
10935         test.
10936         * Makefile.am: Update.
10937
10938         * libtoolize.m4sh (func_fixup_Makefile): Fix missing
10939         substitution for nonrecursive mode.  Remove otherwise-empty
10940         continuation lines in the output file.
10941         Report by Bob Friesenhahn.
10942
10943 2006-10-22  Peter O'Gorman  <peter@pogma.com>
10944
10945         * libltdl/config/ltmain.m4sh: Add -F* to flags that are passed
10946         to the linker.
10947         Reported by SIGOURE Benoit <sigoure.benoit@lrde.epita.fr>
10948
10949 2006-10-19  Peter O'Gorman  <peter@pogma.com>
10950
10951         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Improve
10952         multilib support.
10953         Reported by Kate Minola <kate01123@gmail.com> and others.
10954
10955 2006-10-13  Eric Blake  <ebb9@byu.net>
10956
10957         * libltdl/ltdl.c (load_deplibs): Avoid memory leak on failure.
10958         (unload_deplibs): Avoid memory leak on cleanup.
10959
10960 2006-09-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10961
10962         * libltdl/m4/libtool.m4 (func_mode_compile): Accept files with
10963         extension `.f9?'.
10964         * tests/suffix.test: Test `f95'.
10965
10966         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Use
10967         `func_source' consistently.
10968
10969 2006-09-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10970
10971         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
10972         [k*bsd*-gnu ]: Fix brown paper bag: save and restore `libdir'.
10973
10974 2006-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10975
10976         * tests/duplicate_deps.at: New file.  Test circular depending
10977         convenience archives (currently failing).
10978         * Makefile.am: Update.
10979         Report by Stefan Traby <stefan@hello-penguin.com>.
10980
10981         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
10982         [ openbsd ]: Set `hardcode_direct_absolute', to prefer rpath
10983         over putting absolute file names in NEEDED entries.
10984         * NEWS: Update.
10985         Reported by Jake Meuser and others.
10986
10987         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
10988         [ k*bsd*-gnu ]: Test if ld sets DT_RUNPATH; in that case, set
10989         shlib_overrides_runpath to `yes'.  Fixes test failure of new
10990         test on Gentoo GNU/Linux.
10991
10992         * tests/shlibpath.at: New file, with...
10993         (shlibpath_overrides_runpath): ...new test.
10994         * Makefile.am: Update.
10995
10996 2006-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10997
10998         * tests/destdir.at: New file.
10999         * Makefile.am: Adjust.
11000
11001 2006-09-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11002
11003         * tests/inherited_flags.at: Drop `${parameter}' for `$parameter'
11004         where appropriate, for improved `testsuite -x' output.
11005
11006 2006-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11007
11008         * libltdl/ltdl.c: Move LT__UNUSED before parameter name, for g++
11009         3.2.3 (on MinGW).
11010         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
11011         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
11012         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Likewise.
11013
11014 2006-09-04  George Bosilca <bosilca@cs.utk.edu>
11015         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11016
11017         Make libltdl work when compiled with a C++ compiler.
11018
11019         * libltdl/lt__alloc.c, libltdl/lt_dlloader.c, libltdl/ltdl.c,
11020         libltdl/slist.c, libltdl/libltdl/lt__alloc.h,
11021         libltdl/libltdl/lt_error.h, libltdl/libltdl/slist.h,
11022         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
11023         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
11024         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
11025         libltdl/loaders/shl_load.c, tests/stresstest.at,
11026         tests/testsuite.at, tests/f77demo/foo.h, tests/fcdemo/foo.h,
11027         tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c,
11028         tests/mdemo/main.c: Allow sources to be compiled by a C++
11029         compiler: Cast appropriately, add C linkage for `get_vtable'
11030         functions, do not use C++ keyword `delete'.
11031
11032         * libltdl/config/ltmain.m4sh (func_mode_link): In the dlsym
11033         file, define a type for the symbol list, and declare the list
11034         `extern', so that it is extern even if compiled by a C++
11035         compiler.  The type definition helps avoid a compiler warning
11036         against anonymous extern struct.
11037         * libltdl/libltdl/lt_system.h: Add `extern' to `LT_SCOPE' for
11038         the same reason.
11039
11040         * libltdl/argz_.h: It's __cplusplus, not _cplusplus.
11041         * libltdl/libltdl/slist.h: Likewise.
11042
11043         * libltdl/libltdl/lt__glibc.h: Wrap included argz.h in
11044         `extern "C"', for broken headers on Cygwin.
11045
11046 2006-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11047
11048         * tests/testsuite.at: Test `unset' on a set variable; older
11049         bash versions return 1 if the variable was not set.
11050
11051         * tests/am-subdir.at, tests/early-libtool.at: Fix the LF vs.
11052         CRLF related failures on MinGW by grepping for good output
11053         instead of using AT_CHECK's `expout'.
11054
11055 2006-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11056
11057         Drop K&R support from testsuite in favor of C89.
11058
11059         * tests/duplicate_members.at: provide declarations of used
11060         functions.
11061         * tests/testsuite.at: Drop unneeded arguments.
11062         * tests/cdemo/main.c: Assume C89.
11063         * tests/demo/dlmain.c: Likewise.
11064         * tests/demo/main.c: Likewise.
11065         * tests/depdemo/main.c: Likewise.
11066         * tests/depdemo/l1/l1.c: Likewise.
11067         * tests/depdemo/l2/l2.c: Likewise.
11068         * tests/depdemo/l3/l3.c: Likewise.
11069         * tests/depdemo/l4/l4.c: Likewise.
11070         * tests/f77demo/cprogram.c: Likewise.
11071         * tests/fcdemo/cprogram.c: Likewise.
11072         * tests/mdemo/mlib.c: Likewise.
11073         * tests/mdemo2/main.c: Likewise.
11074         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
11075         * tests/pdemo/longer_file_name_main.c: Likewise.
11076         * tests/fcdemo/fooc.c: Reformat.
11077         * tests/mdemo/sub.c: Likewise.
11078
11079 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11080
11081         * tests/mdemo/main.c: Fix bogus line in last patch.
11082
11083 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11084
11085         Avoid mixing functions and data pointers in callback functions.
11086
11087         * libltdl/ltdl.c (file_worker_func): New type.
11088         (lt_dlforeachfile): Instead of passing a function pointer as a
11089         data pointer, pass a pointer to a file_worker_func pointer.
11090         (foreach_callback_func): Adjust.
11091         * tests/mdemo/main.c: Assume C89. Exercise lt_dlforeachfile.
11092         (callback, try_iterate, my_dirname): New functions.
11093         * tests/mdemo-exec.test: Check for its output.
11094
11095 2006-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11096
11097         * libltdl/libltdl/lt__private.h (__attribute__, LT__UNUSED):
11098         New macros.
11099         * libltdl/loaders/dld_link.c: Use LT__UNUSED where
11100         appropriate.
11101         * libltdl/loaders/dlopen.c, libltdl/loaders/load_add_on.c,
11102         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
11103         libltdl/loaders/shl_load.c: Likewise.
11104         * libltdl/ltdl.c: Likewise.
11105         (find_file_callback): Fix declaration names to match definition.
11106         (load_deplibs) [!LTDL_DLOPEN_DEPLIBS]: Use separate definition
11107         for less preprocessor clutter.
11108
11109         * Makefile.am (check-local, installcheck-local): Use
11110         `TESTSUITEFLAGS' rather than `TESTSUITE_FLAGS', like Autoconf.
11111         * HACKING, README, README.alpha: All uses changed.
11112
11113 2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11114
11115         * libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
11116         sharing with gnulib.  Report by Eric Blake.
11117         * libltdl/lt__alloc.c, libltdl/libltdl/lt__dirent.h,
11118         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
11119         libltdl/libltdl/lt__strl.h: Likewise.
11120         * HACKING: Update.
11121
11122 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11123
11124         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
11125         `--coverage' and `-pg', for GCC.  Report by Rainer Keller
11126         <keller@hlrs.de> and Tor Lillqvist <tml@iki.fi>.
11127
11128 2006-08-25  Kurt Roeckx <kurt@roeckx.be>,
11129             Aurelien Jarno <aurel32@debian.org>
11130
11131         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
11132         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
11133         (_LT_LANG_CXX_CONFIG) [k*bsd*-gnu]: kfreebsd*-gnu and
11134         knetbsd*-gnu behave like linux-gnu.
11135         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
11136         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK)
11137         [x86_64-*kfreebsd*-gnu]: Add 32/64 bit bi-arch support.
11138         * NEWS: Update.
11139
11140 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11141
11142         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ mingw,pw32 ]:
11143         If `file' is present, use `func_win32_libid' rather than
11144         `objdump -f', to facilitate cross-compilation.
11145         Reported by Pierre Ossman <ossman@cendio.se>.
11146
11147 2006-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11148
11149         * libltdl/config/ltmain.m4sh (func_mode_link): In GNU ld script,
11150         do not quote object file names, for Intel icc 9.0 IPO link.
11151
11152 2006-08-22  Eric Blake  <ebb9@byu.net>
11153
11154         * libltdl/m4/ltdl.m4 (LTDL_INIT): Avoid macros marked obsolete in
11155         latest autoconf.
11156         * libltdl/m4/libtool.m4 (_lt_cv_sys_global_symbol_pipe): Work in
11157         spite of -Wmissing-prototypes.
11158         * libltdl/libltdl/lt__dirent.h: Rewrite to accomodate loss of
11159         AC_HEADER_DIRENT.
11160
11161         * libltdl/m4/libtool.m4: Avoid space-tab.
11162
11163 2006-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11164
11165         * libltdl/config/ltmain.m4sh (func_mode_execute): Also search
11166         the directory above `$objdir' for the argument of "-dlopen", as
11167         mentioned in the error message.
11168
11169 2006-08-03  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>
11170
11171         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix issues
11172         with previous patch. for ... do' line is superflous. Need
11173         _LT_TAGVAR not _LT_AC_TAGVAR, should be for both linux and
11174         solaris with Sun compiler.
11175
11176 2006-08-01  Albert Chin <china@thewrittenword.com>
11177
11178         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
11179         Don't set $postdeps to "-lCstd -lCrun" if
11180         "-library=stlport4" set in CXXFLAGS as stlport4 C++
11181         library incompatible with Cstd C++ library. Use
11182         '-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
11183
11184 2006-07-28  Eric Blake  <ebb9@byu.net>
11185
11186         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD, LT_OUTPUT):
11187         s/recognise/recognize/.
11188
11189 2006-07-22  Eric Blake  <ebb9@byu.net>
11190
11191         * libltdl/ltdl.c (loader_init_callback) [HAVE_LIBDLLOADER]:
11192         Protect definition to avoid compiler warnings about unused
11193         function.
11194
11195 2006-07-21  Eric Blake  <ebb9@byu.net>
11196
11197         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD): Search for dlopen without
11198         depending on -ldl, required by cygwin 1.5.20.
11199
11200 2006-06-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11201
11202         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
11203         ( _LT_LINKER_BOILERPLATE): Rewrite to not use unchecked
11204         `printf', for old systems like SunOS 4.1.
11205         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION)
11206         (_LT_COMPILER_C_O, _LT_LINKER_SHLIBS): Likewise.
11207         (_LT_LANG_C_CONFIG): Adjust: use literal newlines in
11208         `lt_simple_compile_test_code' and `lt_simple_link_test_code'.
11209         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
11210         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Likewise.
11211         Bug report by Bruce Becker and Mark Andrews.
11212
11213 2006-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11214
11215         Fix the bugs where libtoolize needs to use `dir/file' instead of
11216         `./dir/file', where ltdldir is `.', so that libtoolize correctly
11217         checks for (and suggests) `config' and `m4' instead of
11218         `./config' and `./m4' as auxiliary resp. macro directories.
11219         The change is necessary for unambiguous naming, the chosen way
11220         plays better with non-GNU make in VPATH builds.
11221
11222         * libtoolize.m4sh (ltdlprefix): New variable, to use as prefix
11223         instead of `$ltdldir/'.
11224         (func_check_macros): Use it.  Bug report by Eric Blake.
11225
11226 2006-06-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11227
11228         Fix several libtoolize-related bugs:
11229         - Do not symlink aclocal.m4, to work around a bug in aclocal
11230         overwriting the linked-to file instead of removing the symlink.
11231         - Have `libtoolize --copy' cause current time stamps, so that
11232         dependents will be rebuilt; for this, install files in order.
11233         - Fix list of distribution files for (non)recursive libltdl.
11234         - Fix some failure cases.
11235
11236         * libtoolize.m4sh (func_copy_cb):
11237         If `$opt_link', still copy `aclocal.m4', so a subsequent
11238         `aclocal' will not overwrite the symlink target.
11239         In `--copy' mode, do `cp -p' and `touch' for each file, so
11240         timestamps are updated but permissions preserved.
11241         (main): Reorder installing of files to match logical order
11242         and timestamp requirements.
11243         (func_fixup_Makefile_inc): Renamed to
11244         (func_fixup_Makefile): this.  Add sed scriptlet to remove
11245         non-existent files from EXTRA_DIST, for either nonrecursive
11246         or recursive mode.
11247         (main): call it to mangle also in recursive mode.
11248         * tests/libtoolize.at (expout): Adjusted.
11249         * tests/testsuite.at (tst_dist): Default to `dist'.
11250
11251 2006-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11252
11253         Fix libltdl to always have all generated files up to date.
11254
11255         * Makefile.am (all-local): Depend on all generated files in
11256         libltdl, namely...
11257         (libltdl/aclocal.m4, libltdl/configure, libltdl/config-h.in):
11258         ...these.  List explicitly, including dependencies and
11259         rebuilding rules, using...
11260         (sub_aclocal_m4_deps, sub_configure_deps): ...these new
11261         variables.
11262         Report by Dan Lacher <Dan.Lacher@Sun.Com>.
11263
11264 2006-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11265
11266         * Makefile.am (install-data-local): Do not use $(INSTALL_DATA)
11267         from another directory: it may use a relative path to
11268         `install-sh'.
11269         Bug report by Dan Lacher <Daniel.Lacher@Sun.COM>.
11270
11271 2006-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11272
11273         * libltdl/config/ltmain.m4sh (func_mode_link): Honor `-threads',
11274         similar to `-mt'.
11275         Report by Eric Paire <eric.paire@st.com>.
11276
11277 2006-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
11278
11279         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ cygwin ]:
11280         define DLL_EXPORT for PIC objects on cygwin.
11281
11282 2006-05-24  Albert Chin  <china@thewrittenword.com>
11283
11284         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
11285         [ aix4*, aix5*, hpux10*, hpux11* ]: Set hardcode_direct_absolute
11286         for CXX tag too!
11287
11288 2006-05-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11289
11290         * libltdl/config/ltmain.m4sh (func_mode_link, shell wrapper):
11291         Do not put `"$@"' in argument to $ECHO.
11292
11293 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11294
11295         * libltdl/m4/libtool.m4: Bump serial, necessary because of
11296         _LT_CHECK_SHELL_FEATURES changes.
11297
11298 2006-05-18  Albert Chin-A-Young <china@thewrittenword.com>
11299
11300         * tests/early-libtool.at: Pass $CPPFLAGS and $CFLAGS to
11301         compiler when compiling for extra flags that might be
11302         needed for ANSI-compliance, 64-bit, etc. The environment
11303         we compile with should match the environment libtool was
11304         compiled with.
11305
11306 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11307
11308         Fix mode=compile time regression of CVS HEAD over branch-1-5.
11309
11310         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Rename to...
11311         (_LT_CHECK_SHELL_FEATURES): ...this.
11312         (_LT_SETUP): Adjust caller.
11313         (_LT_CHECK_XSI_SHELL): New libtool variables `lt_unset',
11314         `SP2NL', `NL2SP', to contain results from tests for unset,
11315         taken from AS_BOURNE_COMPATIBLE, and ASCII vs EBCDIC, taken...
11316         * libltdl/config/general.m4sh: ...from here, and used...
11317         * libltdl/config/ltmain.m4sh: ...here everywhere now.
11318         * (AS_SHELL_SANITIZE): Replace by faster, actually necessary
11319         part of its expansion, taken from current Autoconf CVS.  Do not
11320         save and set all locale variables any more, but only LANG,
11321         LC_ALL, LC_CTYPE, LC_COLLATE, LC_MESSAGES.
11322         (func_mode_execute): Adjust.
11323         * libltdl/m4/libtool.m4 (_LT_CONFIG): No need to unset CDPATH
11324         here any more.
11325         * libtoolize.m4sh: Compute `SP2NL' and `NL2SP' here, too.
11326
11327 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
11328
11329         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
11330         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
11331         _LT_LANG_FC_CONFIG), tests/link-order.at
11332         [ aix4*, aix5*, hpux10*, hpux11* ]: rename
11333         hardcode_direct_static to hardcode_direct_absolute.
11334         * doc/libtool.texi (libtool script contents): Adjust.
11335
11336         * libltdl/ltdl.c (lt_dlhandle_fetch): Arguments to
11337         lt_dlhandle_iterate were in the wrong order.
11338
11339 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11340
11341         * libltdl/m4/libtool.m4 (_LT_LINKER_OPTION): Require
11342         _LT_DECL_SED.
11343         (_LT_CMD_GLOBAL_SYMBOLS, _LT_LINKER_SHLIBS): Likewise.
11344         * libltdl/m4/ltdl.m4 (LTDL_INIT): Likewise.
11345         (_LT_DECL_SED): Set $Xsed here, using $SED.  Moved from...
11346         (_LT_SETUP): ...here.
11347         Report by Eric Blake.
11348
11349 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
11350
11351         * doc/libtool.texi (libtool script contents): Document new
11352         hardcode_direct_static variable.
11353
11354         * tests/link-order.at: Be careful about usage of shrext_cmds.
11355
11356         * libltdl/m4/libtool.m4 (LT_AC_PROG_SED):  Declarations for
11357         compatibility with old versions of libtool, and old versions
11358         of aclocal.
11359
11360 2006-05-17  Albert Chin-A-Young  <china@thewrittenword.com>
11361
11362         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
11363         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
11364         _LT_LANG_FC_CONFIG) [ aix4*, aix5*, hpux10*, hpux11* ]:
11365         Introduce a new variable, hardcode_direct_static, which
11366         would ignore hardcode_direct=yes if the result would create a
11367         static library dependency. Static library dependencies are
11368         immune to $shlibpath_var.
11369         * tests/link-order.at: Take hardcode_direct and
11370         hardcode_direct_static into consideration when testing
11371         link order.
11372
11373 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11374
11375         Eliminate quadratic scaling in argument parsing loop, for
11376         shells that understand `var+=value', such as Bash-3.1, or Zsh.
11377
11378         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Test whether
11379         the shell understands `var+=value'.
11380         (_LT_PROG_XSI_SHELLFNS): Define `func_append' based on this.
11381         * config/ltmain.m4sh (func_mode_link): Use `func_append' for
11382         compile_command, finalize_command, libtool_args, libobjs,
11383         non_pic_objects.
11384
11385 2006-05-15  Bruno Haible  <bruno@clisp.org>,
11386             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11387
11388         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
11389         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ linux ]:
11390         Add support for Sun C 5.9, Sun C++ 5.9, and Sun Fortran 8.3 on
11391         GNU/Linux.
11392         * NEWS: Update.
11393
11394 2006-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11395
11396         * Makefile.am (check-local): Move `$(TESTS_ENVIRONMENT)' and
11397         `$(BUILDCHECK_ENVIRONMENT)' to be arguments of `testsuite', so
11398         that reruns will remember it; set enviroment variable
11399         `CONFIG_SHELL' so the suite will know which shell it was started
11400         with.
11401         (installcheck-local): Likewise, for `$(TESTS_ENVIRONMENT)' and
11402         `$(INSTALLCHECK_ENVIRONMENT)'.
11403         * tests/testsuite.at (LT_AT_TAG): Do not set the compiler
11404         variable here.
11405
11406 2006-05-14  Albert Chin-A-Young  <china@thewrittenword.com>
11407
11408         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
11409         [ aix ]: $hardcode_direct is set twice.
11410
11411 2005-05-14  John Bowler  <jbowler@acm.org>
11412
11413         * libltdl/config/ltmain.m4sh (func_mode_link): For version_type
11414         `none', we still need to set `current', `age', and `revision',
11415         so that our checks don't barf.  The values won't be used later.
11416         Apparently reported by several people, several times, for BeOS.
11417         * NEWS, THANKS: Update.
11418
11419 2006-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11420
11421         * tests/fail.at: Use "test -x" if available, for testing of
11422         executables; code modified from Autoconf's AS_EXECUTABLE_P.
11423         Reported by Albert Chin <china@thewrittenword.com>.
11424
11425 2006-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11426
11427         * libltdl/config/ltmain.m4sh (func_write_libtool_object):
11428         New function, factored out from..
11429         (func_mode_compile): .. here.  Call it to generate the libtool
11430         object file (the `.lo' file) in one step.
11431
11432 2006-04-03  Peter O'Gorman  <peter@pogma.com>
11433
11434         * libltdl/loaders/preopen.c: Don't allow lt_dlopen if the
11435         module has no symbols.
11436
11437 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11438
11439         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]:
11440         Avoid warning when "parsing" `/etc/ld.so.conf' and empty
11441         `/etc/ld.so.conf.d'.
11442         Reported by Orion Poplawski <orion@cora.nwra.com>.
11443
11444 2006-03-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11445
11446         * bootstrap: Actually use the correct version of the last patch.
11447
11448 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11449
11450         * bootstrap: Enable `WORKING_LIBOBJ_SUPPORT' if we detect
11451         Autoconf-2.60+ and Automake-1.10+, or CVS versions.
11452
11453         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Sync with gnulib:  If we
11454         define `error_t', also define `__error_t_defined', so argp.h
11455         will not typedef the former.
11456
11457 2006-03-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11458
11459         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [ freebsd ]
11460         [ dragonfly ]: Set libltdl_cv_sys_dlopen_deplibs to yes.
11461         Fixes excessive lt_dlopen times on these systems.
11462         * NEWS, THANKS: Update.
11463         Bug reported by Peter Jeremy <peterjeremy@optushome.com.au>,
11464         patch by Joerg Sonnenberger <joerg@netbsd.org>.
11465
11466 2006-03-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11467
11468         * tests/static.at: New tests for comprehensive test exposure of
11469         all current and proposed static linking flags for programs.
11470         * Makefile.am: Updated.
11471
11472         * libltdl/config/ltmain.m4sh (func_mode_link)
11473         < -static-libtool-libs >: New option.
11474         * doc/libtool.texi (Link mode, Distributing libltdl):
11475         Document it.
11476         Suggested by Gary Kumfert <kumfert@llnl.gov>.
11477
11478 2006-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11479
11480         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp [ hpux ] <aCC>:
11481         The HPPA C++ compiler has namespace support but provides no
11482         `std' namespace; just provide it with a dummy.
11483
11484         * libltdl/m4/libtool.m4 (AC_PROG_SED): Do not forget to reset
11485         IFS even in case of empty `$PATH'.
11486
11487 2006-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11488
11489         * libltdl/config/ltmain.m4sh (func_mode_link): Comment out the
11490         code to remove uninstalled paths, as it is wrong here.  Change
11491         the wrong shell quoting that kept it from "working" before.
11492         * THANKS: Updated.
11493
11494         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
11495         [ freebsd, dragonfly ]: Fix 1.5.22 regression caused by too
11496         strict $host_os match that stopped DragonFly from working.
11497         * THANKS: Updated.
11498         Reported by Jeremy C. Reed <reed@reedmedia.net>,
11499         patch by Todd Vierling <tv@duh.org>.
11500
11501 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11502
11503         * libltdl/config/ltmain.m4sh (startup): save all locale specific
11504         environment, variables:, LANG, LANGUAGE, LC_ADDRESS, LC_ALL
11505         LC_COLLATE, LC_CTYPE, LC_IDENTIFICATION, LC_MEASUREMENT,
11506         LC_MESSAGES LC_MONETARY, LC_NAME, LC_NUMERIC, LC_PAPER,
11507         LC_TELEPHONE, LC_TIME.
11508         (func_mode_execute): Restore them.
11509
11510 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11511
11512         * doc/libtool.texi (Tags): Mention `FC'.
11513         (libtool script contents) <CC>: Specify more precisely as the
11514         compiler of the current tag.
11515         <LTCC, LTCFLAGS, build, build_alias, build_os, host_alias,
11516         host_os, macro_version, macro_revision, max_cmd_len>:
11517         Document these variables.
11518
11519 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11520
11521         * doc/libtool.texi: Update copyright years.
11522
11523         * libltdl/config/getopt.m4sh (func_help): Substitute `$host'.
11524         * libltdl/config/ltmain.m4sh (help message): Use $host not
11525         @host_triplet@, as the `@..@' substitution is done at bootstrap
11526         time already.
11527         Reported by Julien Lecomte <julien@famille-lecomte.net>.
11528
11529         * doc/libtool.texi (Implementation issues):  Note that both
11530         prefix and suffix of a library may differ.
11531         (Using libtool, Creating object files, Linking libraries):
11532         Remove last documentation traces of the age when `foo.lo' was
11533         the PIC object file and not the `libtool object' text file.
11534         (libtool script contents) <compiler_o_lo>: Remove description
11535         of this variable.  It was removed from libtool in 1.5 times.
11536
11537 2006-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11538
11539         * libltdl/config/ltmain.m4sh (func_mode_link) [ linux ]:
11540         PGI: for `reload_cmds', we not only need to get rid of `$wl',
11541         but also turn comma into space so $LD understands
11542         whole_archive_flag_spec correctly.
11543
11544         * libltdl/config/ltmain.m4sh (func_mode_link) <shell wrapper>:
11545         Add _AS_BOURNE_COMPATIBLE code from Autoconf, to fix issues
11546         with zsh and other shells.
11547         Reported by David Gómez Espinosa <david@pleyades.net>.
11548
11549 2006-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11550
11551         * libltdl/m4/libtool.m4 (AC_PROG_SED): m4_defun this rather
11552         than AC_DEFUN, so that old aclocal does not pick this up.
11553
11554         * Makefile.am ($(TESTSUITE)): Also depend on `Makefile.am'.
11555         Write to temporary file and rename.
11556
11557 2006-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11558
11559         * Makefile.am (EXTRA_DIST): Add `$(srcdir)/' to all generated
11560         files so that non-GNU make programs will use the rebuilding
11561         rules.
11562
11563         * tests/testsuite.at: Add new keyword `libtoolize' for tests
11564         that exercise the `libtoolize' script that is generated at build
11565         time.
11566         * HACKING: Update testsuite mention, explain keywords.
11567
11568         * libltdl/config/ltmain.m4sh (extracted_archives)
11569         (extracted_serial): New globals.
11570         (func_extract_archives): Use them to rename extraction archives
11571         for linking against multiple convenience libraries with the same
11572         name.
11573         * tests/duplicate_conv.at: New tests.
11574         * Makefile.am: Adjusted.
11575         Reported by Carlo Contavalli <ccontavalli@commedia.it>.
11576
11577         * libltdl/config/ltmain.m4sh (func_mode_link) < test_compile >:
11578         Fix a couple of instances where `test .. -ne ..' would possibly
11579         compare non-numbers.  Clean up a bit.
11580
11581         * tests/convenience.at, tests/deplibs-ident.at: Add new keyword
11582         `libtool' for tests that exercise the unmodified `libtool'
11583         script that is generated at build time.
11584         * tests/duplicate_members.at, tests/fail.at: Likewise.
11585         * tests/inherited_flags.at, tests/link-order.at: Likewise.
11586         * tests/stresstest.at, tests/template.at: Likewise.
11587
11588 2006-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11589
11590         * tests/fail.at: Also pass a bogus object file to the linker so
11591         it fails more reliably; AIX and IRIX linkers ignore duplicate
11592         symbol definitions.
11593
11594         * libltdl/m4/libtool.m4 [ solaris ] (_LT_LINKER_SHLIBS)
11595         (_LT_LANG_CXX_CONFIG) < whole_archive_flag_spec >:
11596         Fix this once and for all, for both the SUN compiler suite
11597         (cc/CC/f77/f90/f95) and GCC.
11598         Reported by Yuri Pukhalsky <pooh@cryptopro.ru>.
11599
11600         * tests/cdemo/Makefile.am: Remove broken use of undocumented
11601         Automake variable `$(OBJECTS)'.
11602         * tests/demo/Makefile.am, tests/depdemo/Makefile.am: Likewise.
11603         * tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am: Likewise.
11604         * tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am: Likewise.
11605         * tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Likewise.
11606
11607         * libltdl/config/ltmain.m4sh (func_mode_link): Fix logic for
11608         adding run paths to also add paths for installed libtool
11609         libraries in case `-static' is used.
11610
11611 2006-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11612
11613         * Makefile.am (TESTSUITE_AT): List testsuite files in the order
11614         in which they are to be expanded in the suite.
11615         (tests/TESTSUITE): Rebuild by passing all $(TESTSUITE_AT) files,
11616         with their path suitably adjusted.  This enables us to..
11617         * tests/testsuite.at: ..get rid of their redundant mention here.
11618
11619 2006-01-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11620
11621         * doc/libtool.texi (titlepage): Remove superfluous word.
11622
11623         * libltdl/config/ltmain.m4sh (func_mode_link): Fix matching
11624         duplicate run path entries with the correct separator.
11625
11626         * tests/testsuite.at (PREPARE_TESTS): Escape `^' for some older
11627         shells.
11628
11629         * ChangeLog, HACKING, README, README.alpha,
11630         libltdl/config/ltmain.m4sh:  Add vi(m) modelines, to match emacs
11631         formatting variables.
11632
11633 2006-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11634
11635         * Makefile.am (libltdl/Makefile.am): Fixup sed script.
11636         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
11637
11638 2006-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11639
11640         * Makefile.am, bootstrap, clcommit.m4sh,
11641         libltdl/config/getopt.m4sh, libltdl/config/mailnotify.m4sh,
11642         tests/sh.test, tests/testsuite.at: Bump copyright years.
11643
11644 2006-01-21  Eric Blake  <ebb9@byu.net>
11645
11646         * THANKS: Move myself to contributor.
11647
11648 2006-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11649
11650         * bootstrap: Don't use semicolons inside { } in sed scripts, as
11651         Posix says it's not portable.
11652         * Makefile.am (libltdl/Makefile.am): Likewise.
11653         * libtoolize.m4sh (all over the map): Likewise.
11654         * libltdl/config/getopt.m4sh (func_version, func_usage)
11655         (func_help): Likewise.
11656         * libltdl/config/ltmain.m4sh (func_win32_libid): Likewise.
11657         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Likewise.
11658         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Likewise.
11659         * tests/sh.test, tests/testsuite.at (LT_AT_TAG): Likewise.
11660         Noted by Paul Eggert <eggert@cs.ucla.edu>.
11661
11662         * libltdl/config/ltmain.m4sh (func_mode_compile): Also transform
11663         `.obj' correctly.
11664         Reported by George Bosilca <bosilca@cs.utk.edu>.
11665
11666 2006-01-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11667
11668         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): Fix my forward port
11669         error of last commit.
11670
11671 2006-01-12  Leif Ekblad  <leif@rdos.net>
11672
11673         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
11674         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC): Added support for
11675         RDOS.
11676         * NEWS: Updated.
11677
11678 2006-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11679
11680         * libtoolize.m4sh, libltdl/config/general.m4sh,
11681         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
11682         libltdl/m4/libtool.m4: Bump copyright years.
11683
11684 2006-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11685
11686         * Makefile.am (EXTRA_DIST): Add ChangeLog.2005.
11687
11688         * README, README.alpha: Adjust copyright years.
11689         * ChangeLog.2005: New, rotated, from..
11690         * ChangeLog: ..here.
11691
11692 2005-12-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11693
11694         * Makefile.am (libtoolize): Also depend on `config.status'.
11695         (tests/atconfig): Normalize path, for non-GNU make.
11696         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
11697
11698         * libltdl/config/ltmain.m4sh (func_mode_link) <temp_rpath>:
11699         Fix position of separator for shlibpath_var setting in shell
11700         wrapper.
11701
11702         * libltdl/lt_error.c (error_strings): Remove parentheses around
11703         string literal initializers, uncovered by `tcc'.
11704         Reported by Edward Chernenko <edwardspec@yahoo.com>.
11705
11706 2005-12-21  Gary V. Vaughan  <gary@gnu.org>
11707
11708         * .cvsignore, libltdl/.cvsignore, tests/.cvsignore: Ignore
11709         +build, +dest, +inst, .cvslog-tlasync, .gdb_history, .pc,
11710         libltdl/INSTALL, libltdl/stamp-mk and tests/testsuite.log.
11711
11712 2005-12-20  Eric Blake  <ebb9@byu.net>
11713
11714         * README.alpha: Really commit.
11715
11716 2005-12-19  Eric Blake  <ebb9@byu.net>
11717
11718         * HACKING (release note templates): Update anon cvs location.
11719         * README.alpha (Reporting Bugs): Likewise.
11720
11721 2005-12-18  Jacob Meuser <jakemsr@jakemsr.com>,
11722             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11723
11724         * libltdl/config/ltmain.m4sh (func_mode_link): Move library
11725         search paths that coincide with paths to not yet installed
11726         libraries to the beginning of the library search list.
11727
11728 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11729
11730         * THANKS: Updated.
11731
11732         * HACKING: `./libtool --config' is more helpful than `--help'.
11733
11734         * libltdl/config/ltmain.m4sh <preserve_args, linknames>:
11735         Initialize properly.
11736
11737 2005-12-18  Kean Johnston  <jkj@sco.com>,
11738             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11739
11740         * libltdl/m4/libtool.m4 (LT_PATH_NM): Also look in
11741         /usr/ccs/bin/elf, for SCO.  If we are not cross-compiling, but
11742         $ac_tool_prefix is set, also try an un-prefixed `nm'.
11743
11744 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11745
11746         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
11747         <hardcode_shlibpath_var>: Initialize, to `unsupported'.
11748
11749 2005-12-18  Marc Espie  <espie@nerim.net>
11750
11751         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
11752         [ openbsd ] <sys_lib_dlsearch_path_spec>: Set to `/usr/lib'
11753         only.
11754
11755 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11756
11757         * tests/old-m4-iface.at: Require Autoconf-2.50, so that
11758         Debian's autoconf wrapper will not cause 2.13 to barf over
11759         `--force'.
11760         Reported by Kurt Roeckx <kurt@roeckx.be>.
11761
11762         * README.alpha (Reporting bugs): Suggest to also bootstrap the
11763         libltdl subdirectory -- the Makefile will enforce it anyway.
11764         (The Test Suite): Renamed to..
11765         (The Test Suites): ..this.  Introduce the new Autotest test
11766         suite, how to run each one individually, and what to report.
11767         * README (The Test Suite): Likewise.
11768
11769 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11770
11771         In the subpackage case, we do not install Makefile.inc.  Since
11772         we have to be correct for this case, remove `Makefile.inc' from
11773         EXTRA_DIST.  Recursive mode does not use it either.  Since
11774         nonrecursive mode requires an Automake >= 1.7 anyway, and those
11775         versions automatically distribute included makefile fragments,
11776         we don't need to cater for that one either.
11777
11778         * libltdl/Makefile.inc (EXTRA_DIST): Remove Makefile.inc.
11779         Reorder other entries.
11780
11781 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11782
11783         * Makefile.am (libltdl/Makefile.in): also depend on
11784         libltdl/aclocal.m4, so that we guarantee timestamp consistency.
11785         (libltdl/stamp-mk): New target, to fix `libltdl/Makefile.in'.
11786         (EXTRA_DIST): Distribute `libltdl/stamp-mk' and
11787         `libltdl/m4/lt~obsolete.m4'.
11788         (all-local): Ensure the stamp files is up to date.
11789         (libltdl/aclocal.m4): New target, to ensure timestamp
11790         consistency.  Depend on all m4 files.
11791         * HACKING: Updated.
11792
11793         * tests/testsuite.at (PREPARE_TESTS): New variable `tst_dist',
11794         default to empty.
11795         * tests/nonrecursive.at, tests/recursive.at,
11796         tests/standalone.at, tests/subproject.at: Use it in
11797         LT_AT_BOOTSTRAP or LT_AT_MAKE, so that you can optionally test
11798         redistribution within the tests.
11799
11800         * libltdl/m4/lt~obsolete.m4: Update documentation for aclocal
11801         versions before 1.7.  Change all macros to use AC_DEFUN instead
11802         of AU_DEFUN.
11803         * (_AC_PROG_LIBTOOL, AC_LIBTOOL_SETUP, _LT_AC_CHECK_DLFCN)
11804         (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_TAGCONFIG)
11805         (AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_CXX, _LT_AC_LANG_F77)
11806         (_LT_AC_LANG_GCJ, AC_LIBTOOL_RC, AC_LIBTOOL_LANG_C_CONFIG)
11807         (_LT_AC_LANG_C_CONFIG, AC_LIBTOOL_LANG_CXX_CONFIG)
11808         (_LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_LANG_F77_CONFIG)
11809         (_LT_AC_LANG_F77_CONFIG, AC_LIBTOOL_LANG_GCJ_CONFIG)
11810         (_LT_AC_LANG_GCJ_CONFIG, AC_LIBTOOL_LANG_RC_CONFIG)
11811         (_LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG)
11812         (_LT_AC_FILE_LTDLL_C): Add new fake macros for these, they
11813         were used at one time in libtool.m4.
11814
11815         * tests/am-subdir.at (Makefile.am): Put automake options here,
11816         in AUTOMAKE_OPTIONS.  Require 1.6 because of the newer
11817         `AC_INIT(pkgname,version) AM_INIT_AUTOMAKE' scheme.
11818         * tests/nonrecursive.at, tests/recursive.at: Require 1.7,
11819         because libltdl rules use `+=' in conditionals.
11820         * tests/testsuite.at (LT_AT_AUTOMAKE): Fix indenting.
11821         (LT_AT_AUTORECONF): also detect too old Automake.
11822
11823 2005-12-08  Eric Blake  <ebb9@byu.net>
11824
11825         * libltdl/libltdl/lt__alloc.h (FREE): Cast away constness of
11826         argument to `free' to avoid compiler warning.
11827
11828 2005-12-08  Peter O'Gorman  <peter@pogma.com>
11829
11830         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_LINKER_SHLIBS)
11831         [darwin]: Use $LTCC $LTCFLAGS to check for -single_module.
11832         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11833
11834 2005-12-07  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11835
11836         * bootstrap: always remove Makefile, to avoid triggering the
11837         autotools rebuild rules before autoreconf builds these.
11838         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
11839
11840 2005-12-07  Peter O'Gorman  <peter@pogma.com>
11841
11842         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4 [darwin]:
11843         Use -single_module by default when linking shared libraries. Can
11844         be overridden by specifying -multi-module or by setting the env
11845         var LT_MULTI_MODULE before configure.
11846         * libltdl/m4/libtool.m4 (archive_expsyms_cmds) [darwin]:
11847         Simplify.
11848         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11849
11850 2005-12-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11851
11852         * doc/libtool.texi (References): Do not use `@/' for the benefit
11853         of older `makeinfo', break lines instead.
11854
11855         * Makefile.am (install-data-local): No continuation here.
11856         (dist-hook): Fix copying of README.alpha to README.
11857         * tests/early-libtool.at (configure.ac): Remove
11858         `AM_INIT_AUTOMAKE', we do not use automake in these tests.
11859
11860         * README, README.alpha, libtoolize.m4sh: Typos.
11861         * tests/am-subdir.at, tests/duplicate_members.at: Make all
11862         banners end with a dot, for symmetry.
11863
11864         * libtoolize.m4sh (func_copy_all_files)
11865         (glob_exclude_pkgaux_files): Removed, since unused.
11866
11867         * libtoolize.m4sh (func_copy_cb, func_copy_some_files)
11868         (func_serial_update, func_keyword_update): Fail immediately
11869         if some file we may install does not exist.
11870         Reported by Troy Benjegerdes <hozer@hozed.org>.
11871
11872 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11873
11874         * TODO: A bunch of items fixed. :)
11875
11876         * tests/convenience.at: Updated to expose more corner cases.
11877
11878         * doc/libtool.texi (Invoking libtoolize): Remove mention of
11879         the nonrecursive restriction to name the directory `libltdl'.
11880
11881         * libtoolize.m4sh (func_fixup_Makefile_inc): New function.
11882         (main): Call it in nonrecursive mode to mangle Makefile.inc.
11883         * tests/nonrecursive.at: adjusted to test this.
11884
11885 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11886
11887         Basic support for PIE (position-independent executables).
11888
11889         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
11890         Don't pass PIE flag for compilation of the symbol file object.
11891         (func_mode_compile): Pass PIE flag only for non-PIC objects.
11892         * NEWS: Updated.
11893
11894 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11895
11896         * libltdl/config/general.m4sh (func_show_eval): Rewrite use of
11897         the failure expression, because the exit status of the previous
11898         command may not be preserved in the next `eval' by some shells,
11899         such as pdksh.
11900         * libltdl/config/ltmain.m4sh (func_extract_an_archive):
11901         Use func_show_eval correctly.
11902         (func_mode_link): Likewise.  Also, do not use `$status'.
11903         * tests/fail.at: New set of tests to ensure libtool fails.
11904         * Makefile.am, tests/testsuite.at: Adjusted.
11905
11906 2005-11-26  Peter O'Gorman  <peter@pogma.com>
11907
11908         * libltdl/m4/libtool.m4 [darwin]: Use $LTCC $LTCFLAGS to create
11909         reloadable objects.
11910
11911 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11912
11913         * libltdl/Makefile.inc (libltdl/argz.h): Create libltdl
11914         directory if it does not exist yet.  Take care that munging
11915         of the file will not mess up the build rule.
11916         Reported by Peter O'Gorman <peter@pogma.com>.
11917
11918 2005-11-25  Eric Blake  <ebb9@byu.net>,
11919             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11920
11921         * libltdl/loaders/loadlibrary.c (iface_id): New variable.
11922         (get_vtable): Get an `iface_id' from `lt_dlinterface_register'.
11923         (get_vtable): Rewrite to catch up with lt_dlhandle_iterate
11924         interface change.  Append dot only after w32 path conversion
11925         so it works on cygwin managed mounts.
11926
11927         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlinterface_free): New
11928         function.
11929         * doc/libtool.texi (User defined module data): Document it.
11930
11931 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11932
11933         * libltdl/m4/libtool.m4 [aix] <archive_expsym_cmds>
11934         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Always move -bnoentry
11935         before $compiler_flags, so it can be overridden.
11936
11937         * libltdl/config/ltmain.m4sh (func_mode_link): Allow GCC
11938         response files through.
11939
11940 2005-11-25  Peter O'Gorman  <peter@pogma.com>
11941
11942         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
11943         -isysroot for cross architecture builds on darwin.
11944
11945 2005-11-24  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11946
11947         * libltdl/config/ltmain.m4sh (func_mode_uninstall): In clean
11948         mode, don't remove non-existent libfoo.lai.
11949
11950 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11951
11952         * Makefile.am (aclocalfiles): Also install lt~obsolete.m4.
11953         * libtoolize.m4sh (func_check_macros): Updated.
11954         * tests/libtoolize.at: Adjusted.
11955
11956 2005-11-20  Eric Blake  <ebb9@byu.net>,
11957             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11958
11959         * bootstrap (--help): Provide some help.
11960
11961 2005-11-20  Todd Vierling <tv@netbsd.org>,
11962             Thorsten Glaser <tg@mirbsd.org>
11963
11964         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, _LT_SYS_DYNAMIC_LINKER)
11965         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
11966         (_LT_LANG_CXX_CONFIG) [ interix3 ]: Support for Interix/Microsoft
11967         Services for Unix.
11968         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
11969         * NEWS: Updated.
11970
11971 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11972
11973         * tests/link-order.at [ interix ]: Skip command line grep.
11974         * tests/deplibs-ident.at [ interix ]: Not broken here.
11975         Reported by Thorsten Glaser <tg@66h.42h.de>.
11976
11977 2005-11-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11978
11979         * libtoolize.m4sh (func_copy_all_files)
11980         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
11981         (func_massage_pkgconfig_files): Work around ksh limitation.
11982         Reported by Thorsten Glaser <tg@66h.42h.de>.
11983
11984 2005-11-14  Albert Chin  <china@thewrittenword.com>
11985
11986         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
11987         [ hpux11 ]: Pass +nodefaultrpath when linking on ia64*.
11988
11989 2005-11-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11990
11991         Testsuite portability update round.
11992
11993         * tests/inherited_flags: skip when shared libs are disabled.
11994         * tests/deplibs-ident.at [ aix ]: No unexpected failure here.
11995         * tests/libtoolize.at: Fix for distcheck (readonly sources).
11996         * tests/nonrecursive.at, tests/recursive.at, tests/subproject.at
11997         (foo.c): Actually export a symbol, for AIX.
11998         * tests/old-m4-iface.at: Use AC_LIBTOOL_DLOPEN, for AIX.
11999         * tests/nonrecursive.at: Set foo_la_SOURCES, for automake-1.7.
12000         * tests/subproject.at: Require automake-1.9, we use indirect
12001         subdirs.
12002         * tests/am-subdir.at: Move AT_KEYWORDS settings..
12003         * tests/testsuite.at: ..here, in respective macros.
12004         (LT_AT_AUTOMAKE): Skip if we detect failure due to old version.
12005         (PREPARE_TESTS): Set autotool variables to `no' if not present.
12006         (LT_AT_ACLOCAL, LT_AT_AUTOCONF, LT_AT_AUTOMAKE)
12007         (LT_AT_AUTOHEADER, LT_AT_AUTORECONF): Use to XFAIL tests.
12008         Reported by Tim Rice <tim@multitalents.net>.
12009         (LT_AT_MAKE): Do not use `make -e'.
12010         (_LTDL_PROJECT_FILES): Adjust sub-make call.  Work around `make'
12011         which does not set `MAKE' or `SHELL'.  Fix for user-set
12012         `CONFIG_SHELL'.
12013         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
12014
12015         * libltdl/m4/lt~obsolete.m4 (_LT_CC_BASENAME)
12016         (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
12017         Added because they were added to branch-1-5 AC_DEFUNed.
12018         * HACKING: Add note about lt~obsolete.m4.
12019
12020         * Makefile.am, libltdl/Makefile.inc (INSTALL_LTDL):
12021         For nonrecursive mode, add to include_HEADERS as well.
12022         * doc/libtool.texi (Invoking libtoolize, Distributing libltdl),
12023         tests/nonrecursive.at: Adjusted, and removed TABS from .texi.
12024
12025         * libtoolize.m4sh: Revert use of `$tst_aclocaldir'.
12026
12027 2005-11-13  Eric Blake  <ebb9@byu.net>
12028
12029         * libltdl/ltdl.c (lt_dlhandle_iterate): Fix endless loop.
12030         (lt_dlinterface_register): Fail if lt__strdup did.
12031
12032 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12033
12034         * libltdl/m4/libtool.m4 (_LT_LANG_C_CONFIG):
12035         Removed `lt_prog_cc_shlib' cruft, not needed any more.
12036
12037 2005-11-13  Kean Johnston  <jkj@sco.com>,
12038             Tim Rice  <tim@multitalents.net>
12039
12040         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12041         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
12042         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG)
12043         [ sco3.2v5, sysv4, sysv4.3, sysv5, sco3.2v5, sco5v6, unixware,
12044         OpenUNIX, sysv4*uw2 ]: Complete overhaul of SCO support.
12045         * THANKS: Updated.
12046
12047 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12048
12049         * tests/quote.test: Do not fail on harmless shell bug present
12050         in some ksh versions.
12051         Reported by Tim Rice <tim@multitalents.net> and others.
12052
12053 2005-11-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12054
12055         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTION): Use m4_warning
12056         instead of m4_warn.
12057
12058         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): `wl' is tagged here.
12059
12060         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF, _LT_COMPILER_PIC):
12061         Make sure `$wl' is properly expanded for tests involving
12062         `export_dynamic_flag_spec', `lt_prog_compiler_static'.
12063
12064         * tests/defs.m4sh (func_configure): Actually pass
12065         options (like --disable-shared) to func_configure_nofail.
12066
12067 2005-11-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12068
12069         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]:
12070         Fix shlibpath_overrides_runpath settings.
12071         Reported by Dave Benson <daveb@idealab.com>.
12072
12073 2005-09-10  Charles Wilson  <cygwin@cwilson.fastmail.fm>
12074
12075         * libltdl/config/ltmain.m4sh (func_win32_libid): use $SED not
12076         sed.
12077         
12078 2005-11-10  Albert Chin-A-Young  <china@thewrittenword.com>
12079
12080         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]
12081         <hppa*64,ia64, aCC,g++>:
12082         Use C++ compiler for linking rather than ld.
12083
12084 2005-11-10  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12085
12086         * libltdl/m4/ltsugar.m4 (lt_join, lt_combine, lt_dict_filter):
12087         Rewrite to eliminate tail recursion; use ..
12088         (lt_unquote): New trivial helper macro.
12089         * libltdl/m4/libtool.m4 (_lt_decl_filter): Document.
12090
12091 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
12092
12093         * tests/testsuite.ac (macrodir): Don't set it here...
12094         * Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
12095         ...set it here to pick up files from the right place in context.
12096         * tests/libtoolize.at, tests/old-m4-iface.at: Adjust.
12097         * libtoolize.m4sh: Take tst_aclocaldir into account when running
12098         inside the test harness.
12099
12100 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
12101
12102         * tests/am-subdir.at: Now that we don't run autoreconf, we have to
12103         explicitly tell aclocal what flags to use.
12104
12105         * tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
12106         configure.
12107         * tests/am-subdir.at, tests/nonrecursive.at, tests/old-m4-iface.at,
12108         tests/subproject.at: Use LT_AT_BOOTSTRAP.
12109
12110 2005-11-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12111
12112         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Also set pic_flag.
12113         (_LT_LANG_CXX_CONFIG): Use $as_unset, not unset.
12114         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG): Remove bogus
12115         ld_shlibs tests.
12116
12117         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Move setting of
12118         `variables_saved_for_relink'..
12119         (_LT_SYS_DYNAMIC_LINKER): here, when both `shlibpath_var'
12120         and `runpath_var' have been set.
12121         Reported by Mike Frysinger <vapier@gentoo.org>.
12122
12123         * libltdl/Makefile.inc (AM_CPPFLAGS): Do not define
12124         HAVE_CONFIG_H.
12125         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not invoke
12126         AC_CONFIG_HEADERS ourselves, we can build with or without now.
12127
12128 2005-11-07  Kean Johnston  <jkj@sco.com>
12129
12130         * libltdl/config/ltmain.m4sh (func_mode_link) [ sysv4*uw2*,
12131         unixware7* ]: Work around linker bug on older SCO systems.
12132
12133 2005-11-07  Albert Chin-A-Young  <china@thewrittenword.com>
12134
12135         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
12136         (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]:
12137         hardcode_libdir_flag_spec and hardcode_minus_L are the same for
12138         hppa*64 and ia64*. Don't set
12139         hardcode_libdir_flag_spec='-L$libdir' on ia64* because if you
12140         specify +b and -L, +b overrides what is set into DT_RPATH.
12141
12142 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12143
12144         * tests/testsuite.at (_LTDL_PROJECT_FILES): Factored out from
12145         common code to build a basic libltdl using project.
12146         * tests/old-m4-iface.at, tests/standalone.at, tests/subproject.at:
12147         Use it.
12148
12149         * doc/libtool.texi (Distributing libltdl): Document correct use of
12150         LT_CONFIG_LTDL_DIR mode argument with Autoconf and Automake.
12151
12152 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12153
12154         Support 'recursive' mode for building libltdl: Automake will
12155         recursively descend into the libltdl directory, and use libltdl's
12156         Makefile.am code to build libltdl:
12157
12158         * ltdl.m4 (LT_CONFIG_LTDL_DIR): Don't barf on 'recursive' mode
12159         for 2nd argument.
12160         (_LTDL_MODE_DISPATCH): Handle recursive mode.
12161
12162 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12163
12164         * tests/recursive.at: New tests for libltdl as a subdirectory,
12165         configured and compiled from the toplevel project using a
12166         recursive make..
12167         * tests/testsuite.at: Use it.
12168         * Makefile.am (TESTSUITE_AT): Depend on it.
12169
12170         * libltdl/m4/ltdl.m4 (LTDL_INIT): Don't force running
12171         AC_CONFIG_HEADERS for subproject ltdl.
12172         * tests/old-m4-iface.at, tests/subproject.at: Remove workaround.
12173
12174         * libltdl/m4/ltdl.m4 (LT_CONFIG_LTDL_DIR): Add LTDL-MODE
12175         argument.
12176         * configure.ac: Use it.
12177
12178 2005-11-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12179
12180         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): lt_unknown is
12181         lt_dlunknown.
12182
12183         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Revert
12184         expansion of `$wl'.
12185         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_GCJ_CONFIG):
12186         Do not require LT_SYS_DLOPEN_SELF.
12187         (_LT_LANG_C_CONFIG): Instead call it at the right time.
12188         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
12189         (_LT_LANG_GCJ_CONFIG): Do not call _LT_CMD_STRIPLIB.
12190
12191         * Makefile.am: `2>&1' as suggested by Albert Chin.
12192         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4:
12193         Two newlines before each macro, fix underlines.
12194
12195 2005-11-05  Kean Johnston  <jkj@sco.com>,
12196             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12197
12198         * libltdl/config/ltmain.m4sh (func_mode_link) [*-*-sco3.2v5*]:
12199         Don't pass through -lc, nor add it to deplibs.
12200         [*-*-sysv5*]: Ditto.
12201         [*-*-openbsd*, *-*-freebsd*, *-*-dragonfly*]: Remove bogus
12202         `$arg'.
12203
12204 2005-11-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12205
12206         * THANKS: Updated.
12207
12208 2005-11-02  Gary V. Vaughan  <gary@gnu.org>
12209
12210         * tests/nonrecursive.at: New tests for libltdl as a subdirectory,
12211         configured and compiled from the toplevel project.
12212         * tests/testsuite.at: Use it.
12213         (LT_AT_AUTOHEADER): New macro.
12214         * Makefile.am (TESTSUITE_AT): Depend on nonrecursive.at.
12215
12216 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12217
12218         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Add `-64'
12219         to $LD if necessary, to permit combining of several convenience
12220         libs without any further objects added.
12221         Reported by Brian Barrett <brbarret@open-mpi.org>.
12222
12223 2005-11-01  Kean Johnston  <jkj@sco.com>,
12224             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12225
12226         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Use
12227         `lt_prog_compile_static', not `link_static_flag'.  Expand `$wl'
12228         so expansion of `export_dynamic_flag_spec' works.
12229         (_LT_TRY_DLOPEN_SELF): Show dlerror() in case of failure.
12230         (_LT_LINKER_SHLIBS) [ aix3 ]: Likewise.
12231         (_LT_COMPILER_PIC) [ hpux* ]: Use `${wl}'.
12232
12233 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12234
12235         * THANKS: Updated.
12236
12237 2005-11-01  Gary V. Vaughan  <gary@gnu.org>
12238
12239         * libltdl/m4/ltdl.m4 (LTDL_INIT): Call _LT_ENABLE_INSTALL directly
12240         instead of m4_requiring it, as it relies on enable_ltdl_install
12241         and enable_ltdl_convenience to have been initialised first.
12242
12243         * libtoolize.m4sh: Use serial tags to locate the correct serial
12244         numbers when deciding whether to update.
12245         (func_serial): Allow for macro_regex argument to be originating
12246         file name.
12247         (func_serial_update): Use NL2SP to flatten list of extracted
12248         m4_include files.
12249         * tests/libtoolize.at: More tests for old-style verbatim copying
12250         of macros into aclocal.m4.
12251
12252         * libltdl/m4/argz.m4, libltdl/m4/ltoptions.m4, libltdl/ltsugar.m4,
12253         libltdl/m4/ltversion.in: Add serial number tags, and bump serial
12254         number.
12255
12256 2005-10-31  Kean Johnston  <jkj@sco.com>
12257
12258         [ sysv5*, sco3.2v5*, sco5v6*, unixware*, OpenUNIX*, sysv4*uw2* ]
12259         Patches for various bug fixes, small improvements and updating
12260         the SCO platform support.
12261
12262         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Set correctly for SCO.
12263
12264         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Set correct
12265         symcode values for the native nm on SCO platforms.
12266
12267         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): All SCO platforms
12268         open dependency libraries when you dlopen a module.
12269
12270 2005-10-31  Albert Chin-A-Young  <china@thewrittenword.com>
12271
12272         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12273         [ aix ]: Remove duplicate always_export_symbols=yes for AIX.
12274
12275 2005-10-29  Howard Chu  <hyc@highlandsun.com>
12276
12277         * libltdl/config/ltmain.m4sh (func_mode_link):
12278         With `-static', only link statically against uninstalled
12279         libtool libraries.  Fixes 1.5.x regression to match documented
12280         behavior.
12281         * NEWS: Updated.
12282
12283 2005-10-27  Stepan Kasal  <kasal@ucw.cz>
12284
12285         * HACKING: Update note about use of `$#' in m4 macros.
12286
12287 2005-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12288
12289         * tests/tagtrace.test: Allow `$AUTOCONF' to contain arguments.
12290         Skip if the running `autoconf' version is older than the one
12291         used to bootstrap Libtool.
12292
12293 2005-10-26  Eric Blake  <ebb9@byu.net>,
12294             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12295
12296         * Makefile.am (vcl-tmp): Avoid warnings from diff.
12297         * bootstrap: Avoid warnings from find.
12298         (lt_tab): Use to prevent editor whitespace "cleanup".
12299
12300 2005-10-26  Gary V. Vaughan  <gary@gnu.org>
12301
12302         * libtoolize.m4sh: Put back the func_serial_update callback for
12303         func_copy_some_files so that the testsuite passes again.  We'll
12304         have to find a better way of handling serial numbers in libtool
12305         macro files.
12306
12307         * libltdl/Makefile.inc: New file, factored out of Makefile.am for
12308         use in non-recursive libltdl installations.
12309         * bootstrap: Adjust.
12310         * Makefile.am: include it.
12311         (libltdl/Makefile.am): Adjust to build from the new
12312         libltdl/Makefile.inc.
12313         (SUBDIR_LIBOBJS): Renamed from this...
12314         (LTDL_SUBDIR_LIBOBJS): ...to this.
12315         * configure.ac: Adjust.
12316         * doc/libtool.texi (Invoking libtoolize): Document the new modes
12317         and libtoolize option to select them.
12318         * libtoolize.m4sh: Parse new options, --nonrecursive, --recursive
12319         and --subproject.  Install the appropriate files with --ltdl
12320         according to the selected mode.
12321         (func_scan_files): If --subproject, --recursive or --nonrecursive
12322         options were not given, use the value from LT_CONFIG_LTDL_DIR; if
12323         a mode was given, and there is also an argument to
12324         LT_CONFIG_LTDL_DIR, ensure they are the same.
12325         * NEWS: Updated.
12326
12327         * libtoolize.m4sh: Don't use func_serial_update as a copy
12328         function for libtool m4 files with no macro_regex.  If the
12329         files are copied directly into aclocal.m4, because
12330         AC_CONFIG_MACRO_DIR isn't set for example, there is no way
12331         to tell what serial number goes with what source file.
12332         (func_serial_update): For future-proofing, only make the second
12333         serial number check if the destination file wasn't m4_included
12334         into aclocal.m4 (and hence updated automatically by the cat of
12335         copying a new version to the dest directory).
12336
12337         * libtoolize.m4sh: Move the consistency checks...
12338         (func_check_macros): ...into here.  Also suggest LT_WITH_LTDL if
12339         appropriate.
12340
12341         * libtoolize.m4sh: Copying just libtool.m4 for hand maintained
12342         aclocal.m4 doesn't work.  List all required files in that case,
12343         using the files from installed libltdl if available.  Also, list
12344         the additional files required when using libltdl.
12345         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
12346
12347         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_first): Removed.
12348         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_next)
12349         (lt_dlhandle_find, lt_dlforeach): Removed...
12350         (lt_dlhandle_iterate, lt_dlhandle_fetch, lt_dlhandle_map): Similar
12351         functions that are multi-loader safe, and require a registered
12352         interface validator argument.
12353         * doc/libtool.texi: Updated.
12354         * NEWS: Updated.
12355
12356         * libtoolize.m4sh: Always copy pkgconfig_files for --ltdl, incase
12357         ltdl needs additional things not found by automake when looking at
12358         the parent project configury.
12359         * tests/libtoolize.at: Adjust.
12360
12361 2005-10-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12362
12363         * libltdl/config/ltmain.m4sh [darwin]: Don't check for "bundle"
12364         in file path.
12365         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
12366
12367 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
12368
12369         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Don't nest AC_MSG_CHECKING/
12370         AC_MSG_RESULT pairs.
12371
12372 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
12373
12374         * tests/subproject.at: Move 'touch config.h.in' invocation.
12375
12376         * tests/subproject.at (_LTDL_SETUP): Use pushdef/popdef to
12377         simulate file-local scope.  Empty source file compilation is not
12378         portable, so add minimal code to generated foo.c file.
12379
12380 2005-10-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12381
12382         * libltdl/m4/libtool.m4 (LT_PATH_NM): End test source with
12383         newline.
12384         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
12385
12386 2005-10-13  Peter O'Gorman  <peter@pogma.com>
12387
12388         * libltdl/ltdl.c (find_module): Check that dir is set.
12389         (load_deplibs): Don't free the user search paths too early.
12390
12391 2005-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12392
12393         * tests/testsuite.at (LT_AT_AUTOMAKE): New macro.
12394         * tests/subproject.at: Use it.  Do not call `autoreconf' in
12395         tests, since it will try to reconfigure `sub/ltdl', which
12396         breaks `make check' during `distcheck' because of a readonly
12397         source tree.
12398
12399         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Also set INCLTDL.
12400
12401         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE)
12402         (LT_WITH_LTDL): Revert Gary's 2005-10-10 patch.
12403
12404         * tests/stresstest.at: Use `allow_undefined_flag' instead of
12405         host_os setting.
12406
12407 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
12408
12409         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Remove bogus extra
12410         closing brackets.
12411
12412 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
12413
12414         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Remove
12415         AC_SUBST of LIBLTDL, LTDLINCL, and all mention of INCLTDL.
12416         (LT_WITH_LTDL): Due to order constraints between LTDL_CONVENIENCE,
12417         LTDL_INSTALLABLE, LT_WITH_LTDL & LTDL_INIT, we can safely AC_SUBST
12418         LIBLTDL and LTDLINCL here.  Also, remember to synch INCLTDL.
12419
12420 2005-10-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12421
12422         * tests/stresstest.at [ aix3, beos, os2 ]: Always use
12423         `-no-undefined'.
12424
12425 2005-10-09  Christian Biesinger  <cbiesinger@web.de>
12426
12427         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ beos ]:
12428         Initial shared library support for C++.
12429
12430 2005-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12431
12432         * configure.ac (abs_top_builddir, abs_top_srcdir): always
12433         substitute.
12434         * Makefile.am (BUILDCHECK_ENVIRONMENT)
12435         (INSTALLCHECK_ENVIRONMENT): New macros.  Set _lt_pkgdatadir,
12436         LIBTOOL, LIBTOOLIZE accordingly, by using above, and
12437         program_transform_name.
12438         * tests/testsuite.at (TESTS_PREPARE): Do not set them anymore.
12439         Set $unset.
12440         (LT_AT_MAKE): Use to unset LIBTOOL and LIBTOOLIZE.
12441
12442 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
12443
12444         * tests/subproject.at: Commit the right file this time.
12445
12446 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12447
12448         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Fix m4 quoting
12449         for lt_simple_link_test_code.
12450         Reported by Nicolas Joly <njoly@pasteur.fr>.
12451
12452 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
12453
12454         * tests/subproject.at: New tests for libltdl as a subproject with
12455         its own configuration.
12456         * tests/testsuite.at: Use it.
12457         * Makefile.am (TESTSUITE_AT): Depend on it.
12458
12459 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12460
12461         * Makefile.am: Simplify.  Do not use abs_top_srcdir.
12462         Reported by Gary V. Vaughan <gary@gnu.org>.
12463
12464 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
12465
12466         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Spurious './' prefixes
12467         upset BSD pmake, don't set lt_ltdl_dir in this case.
12468         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
12469
12470 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12471
12472         * Makefile.am (BUILDCHECK_ENVIRONMENT)
12473         (INSTALLCHECK_ENVIRONMENT): New macros.
12474         (check-local, installcheck-local): Use them.
12475         * tests/testsuite.at (PREPARE_TESTS): Extract host_alias, ECHO.
12476         Set configure_options appropriately.
12477         (LT_AT_CONFIGURE, LT_AT_AUTORECONF, LT_AT_MAKE): New macros.
12478         (LT_AT_BOOTSTRAP): Use them.
12479         * tests/am-subdir.at, tests/early-libtool.at,
12480         tests/old-m4-iface.at, tests/standalone.at: Likewise.
12481         * tests/link-order.test: Do not extract ECHO any more.
12482
12483         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
12484         AC_CANONICAL_HOST and _LT_DECL_SED.
12485
12486 2005-10-03  Gary V. Vaughan  <gary@gnu.org>
12487
12488         * libltdl/m4/ltdl.m4: Bump serial as we are changing the
12489         interface.
12490         (LT_CONFIG_LTDL_DIR): New macro to centralise setting the
12491         subdirectory used for libltdl.
12492         (LTDL_CONVENIENCE): Continue backwards compatibility support for
12493         declaring the libltdl source subdirectory with an argument, but
12494         defer to LT_CONFIG_LTDL_DIR.
12495         (AC_LIBLTDL_CONVENIENCE): Adjust to upgrade to the new style.
12496         (LTDL_INSTALLABLE, AC_LIBLTDL_INSTALLABLE): Ditto.
12497         (LTDL_INIT): lt_ltdl_dir is set by LT_CONFIG_LTDL_DIR now, and
12498         even `./' needs trailing slashes trimming!  If the user didn't
12499         upgrade their configure.ac yet, call LT_CONFIG_LTDL_DIR for them.
12500         * libtoolize.m4sh (func_scan_files): If --ltdl option is given
12501         without a directory argument, use the value from
12502         LT_CONFIG_LTDL_DIR; if the argument is given, and there is also a
12503         value in LT_CONFIG_LTDL_DIR, ensure they are the same.
12504         * libltdl/configure.ac: Use it.
12505         * NEWS: Updated.
12506
12507 2005-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12508
12509         * tests/old-m4-iface.at (Makefile.in): Do not reconfigure
12510         libltdl directory.
12511
12512 2005-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12513
12514         * tests/deplibs-ident.at: New file with XFAIL test to expose
12515         wrong multiple listing of a deplib on the command line.
12516         * Makefile.am, tests/testsuite.at: Updated.
12517         Reported by Brian Barrett <brbarret@open-mpi.org>.
12518
12519         * tests/old-m4-iface.at: Define top_srcdir, work around current
12520         ltdl.m4 bug.
12521
12522         * libltdl/config/ltmain.m4sh (func_mode_link):
12523         Fix wrong logic introduced in last commit.
12524
12525 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
12526
12527         * tests/libtoolize.at: Add a new test to catch a regression I
12528         almost introduced with respect to copying macro files when
12529         AC_CONFIG_MACRO_DIR is shared with libltdl subproject.
12530
12531 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
12532
12533         * tests/old-m4-iface.at: Start of a new test series for m4
12534         interface backwards compatibility.
12535         * tests/testsuite.at: Use it.
12536         (macrodir): Declare the location of uninstalled libtool m4 macros.
12537         * Makefile.am (TESTSUITE_AT): Depend on it.
12538
12539 2005-09-29  Tim Rice  <tim@multitalents.net>  (tiny change)
12540
12541         * tests/early-libtool.at (Makefile.in): Set $(SHELL).
12542
12543 2005-09-29  Peter Ekberg  <peda@lysator.liu.se>
12544
12545         * libltdl/config/ltmain.m4sh (func_mode_link): Don't modify
12546         user provided symbols file. Adjust removal of temporary files
12547         and also remove temporary files used during symbols file
12548         filtering.
12549
12550 2005-09-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12551
12552         * libtoolize.m4sh (func_included_files): Do not recurse
12553         non-existent files.
12554
12555 2005-09-27  Gary V. Vaughan  <gary@gnu.org>
12556
12557         * libtoolize.m4sh (func_scan_files): Support projects that have
12558         upgraded libtool, but still use an old autoconf.  When the libtool
12559         macros are not copied (because of missing ACLOCAL_AMFLAGS and
12560         AC_CONFIG_MACRO_DIR ), point them at the libtoolize master tree
12561         for files to manually copy into acinclude.m4 or aclocal.m4.
12562
12563         * libltdl/lt_error.c (lt__last_error, lt__error_strings): The lt__
12564         prefix is used to indicate internal symbols that are only exported
12565         for use by other parts of libltdl.  These are now static, so...
12566         (last_error, error_strings): ...renamed to this.  Changed all
12567         callers.
12568
12569         * libltdl/ltdl.h (lt_dlmutex_register, lt_dlmutex_lock)
12570         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror)
12571         (lt_dlmalloc, lt_dlrealloc, lt_dlfree): Remove deprecated APIs.
12572         * doc/libtool.tex: Updated.
12573         * NEWS: Updated.
12574
12575         * libltdl/ltdl.c (lt_dlcaller_register): Renamed to avoid problems
12576         with module visibilty when linked with programs written for the
12577         old API.
12578         (lt_dlinterface_register): New name.
12579         * Makefile.am (VERSION_INFO): Bumped.
12580         * doc/libtool.texi (User defined module data): Updated.
12581
12582 2005-09-27  Tim Rice  <tim@multitalents.net>
12583
12584         * tests/defs.m4sh, tests/testsuite.at (PREPARE_TESTS)
12585         <AUTORECONF>: Allow variable override.
12586
12587 2005-09-26  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12588
12589         * HACKING: Only update libltdl version info before release.
12590
12591 2005-09-26  Tim Rice  <tim@multitalents.net>
12592
12593         * configure.ac <AUTOM4TE>: Allow variable override.
12594
12595 2005-09-25  Alan W. Irwin  <irwin@beluga.phys.uvic.ca>,
12596             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12597
12598         * libltdl/config/ltmain.m4sh (func_win32_libid)
12599         [ cygwin, mingw ]: Robustify sed script to determine
12600         win32_libid_type.
12601         (func_mode_link) [ mingw ]: Ignore `-lm'.
12602
12603 2005-09-25  Peter Ekberg  <peda@lysator.liu.se>
12604
12605         * libltdl/libltdl/lt__private.h, libltdl/lt_error.c:
12606         Don't export the lt__last_error and lt__error_strings
12607         variables. Define lt__error_strings so that no relocations
12608         are needed.
12609         * libltdl/libltdl/lt__private.h (LT__STRERROR, LT__GETERROR)
12610         (LT__SETERRORSTR): Adjust to not use the above variables,
12611         instead use the following functions...
12612         * libltdl/lt_error.c: (lt__error_string, lt__get_last_error)
12613         (lt__set_last_error): Reimplement the functionality in
12614         these functions instead.
12615         * libltdl/libltdl/lt_error.h: Add LT_ERROR_LEN_MAX define for
12616         max error string length.
12617         (lt_dlerror_table): Append explicit nul terminators so that
12618         compilers warn more reliably if the above define is too small.
12619
12620 2005-09-23  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12621
12622         * tests/link-order.at [ aix* ]: skip path syntax grep.
12623
12624 2005-09-23  Peter Ekberg  <peda@lysator.liu.se>
12625
12626         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Fix awk
12627         script to be a single line so that the cache variable isn't
12628         multiline.
12629
12630 2005-09-23  Eric Blake  <ebb9@byu.net>  (tiny change)
12631
12632         * libltdl/loaders/loadlibrary.c (vm_open): Silence gcc warnings.
12633         [__CYGWIN__]: Include <sys/cygwin.h> for prototype.
12634
12635 2005-09-22  Gary V. Vaughan  <gary@gnu.org>
12636
12637         * bootstrap: Don't clobber the working copy metadata in
12638         ./{arch}/libtool during bootstrap.
12639
12640 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
12641             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12642
12643         * libltdl/config/ltmain.m4sh (func_mode_link): Filter
12644         user supplied symfile to tag relevant symbols as data
12645         symbols. Fixes segfault in stresstest.at on Cygwin and
12646         makes the test pass.
12647
12648 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>
12649
12650         * tests/link-order.test: Clean up the uninstalled libraries
12651         before linking the test executables so that they don't pick
12652         up the dlls from the current dir on Cygwin and MinGW.
12653
12654 2005-09-22  Tim Rice  <tim@multitalents.net>
12655
12656         * libltdl/m4/libtool.m4 (LT_PATH_NM, _LT_LINKER_SHLIBS)
12657         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS):
12658         Add missing `;;' after case list.
12659
12660 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
12661             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12662
12663         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC)
12664         (_LT_LINKER_SHLIBS): Require _LT_TAG_COMPILER to make sure that
12665         $compiler is assigned. Fixes crippled configure output.
12666
12667 2005-09-21  Peter Ekberg  <peda@lysator.liu.se>
12668
12669         * libltdl/m4/libtool.m4 (LT_PATH_NM): Fix autodetection of
12670         dumpbin and also check for "link -dump -symbols" as a synonym
12671         for "dumpbin -symbols".
12672
12673         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Clean
12674         up $dlname as well when cleaning a uninstalled libtool
12675         library. Fixes -mode=clean on Cygwin and MinGW to actually
12676         remove the dll when cleaning up an uninstalled library.
12677
12678 2005-09-20  Peter Ekberg  <peda@lysator.liu.se>
12679
12680         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
12681         Split up --out-implib option for linker in separate args so that
12682         the MSYS path translation can do its magic on the provided path
12683         to the import library. Fixes problem in stresstest.at on MinGW.
12684
12685 2005-09-19  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12686
12687         * Makefile.am (ltdldatafiles): Fix installation order to match
12688         dependency order.
12689         (libltdl/Makefile.in): Use $(srcdir) for non-GNU make.
12690
12691 2005-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12692
12693         * libltdl/config/ltmain.m4sh (func_mode_link): Allow some
12694         ARM gcc ABI flags through.
12695         Reported by Andrés Moré <more.andres@gmail.com>.
12696
12697         * Makefile.am (all-local): Rebuild libltdl/Makefile.in.
12698
12699         * libltdl/m4/ltdl.m4 (LTDL_INIT) <CONFIG_H>: Rename to..
12700         <LT_CONFIG_H>: this, to contain the name of the config
12701         header.
12702         * Makefile.am <DEFS>: Use it to define LT_CONFIG_H.
12703         * HACKING, libltdl/argz.c, libltdl/lt__alloc.c,
12704         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
12705         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h:
12706         Adjusted.
12707
12708 2005-09-16  Peter Ekberg  <peda@lysator.liu.se>
12709
12710         * tests/testsuite.at (LT_AT_EXEC_CHECK): Make sure
12711         that the exit status of the tested program is
12712         propagated as the exit status of the expression
12713         fed to AT_CHECK.
12714
12715 2005-09-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12716
12717         * libltdl/argz.c <HAVE_CONFIG_H>: Avoid redefinition warning.
12718
12719         * libltdl/ltdl.c (lt_argz_insert): Work around newlib
12720         argz_insert bug.
12721         * Makefile.am (VERSION_INFO): Bumped revision.
12722         Reported by Eric Blake <ebb9@byu.net>.
12723
12724 2005-09-13  Peter Ekberg  <peda@lysator.liu.se>,
12725             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12726
12727         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
12728         Fix escape expression to actually escape relevant
12729         characters from the following grep. Fix Cygwin and
12730         MinGW to use the filtered symbol list when exporting
12731         from self, and not the symbol filter.
12732         * tests/stresstest.at: Export w8, not w8$
12733
12734 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12735
12736         Make tagdemo work smoothly with both pre- and ISO C++ compilers,
12737         and remove all use of libstdc from other tests.
12738
12739         * tests/tagdemo/configure.ac (HAVE_NAMESPACES, HAVE_IOSTREAM):
12740         New tests for ISO C++ features.  Reimplementation of similar
12741         macros from the autoconf archive.
12742         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp: Adjusted.
12743         * tests/am-subdir.at, tests/template.at: Do not use iostream.
12744
12745 2005-09-12  Peter Ekberg  <peda@axentia.se>,
12746             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12747
12748         * tests/testsuite.at (host_os): Pull from `libtool --config'.
12749         * tests/stresstest.at [ cygwin, mingw, pw32 ]: Use it to fix
12750         setting of `-no-undefined'.
12751
12752 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12753
12754         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL, LTDL_CONVENIENCE)
12755         (LTDL_INSTALLABLE): Use less quoting for expanded LIBLTDL,
12756         LTDLINCL.  Use m4_default instead of m4_if, to work
12757         around AU_ALIAS bug with empty macro arguments.
12758         (LTDL_INIT): Likewise.
12759         * libltdl/m4/ltoptions.m4 (_LT_WITH_PIC): Likewise.
12760         * TODO, HACKING: Updated.
12761
12762 2005-09-10  Gary V. Vaughan  <gary@gnu.org>
12763
12764         * libtoolize.m4sh (TAR): Allow the user to override the tar
12765         command.
12766
12767 2005-09-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12768
12769         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
12770         (_LT_LINKER_BOILERPLATE, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
12771         (_LT_COMPILER_C_O): When comparing expected and actual compiler/
12772         linker output for warnings, weed out both empty lines as well as
12773         lines starting with possibly indented `+', to allow for shell
12774         debugging with `set -x'.
12775         Check the weeded instead of unweeded contents for emptiness.
12776
12777         * libltdl/config/ltmain.m4sh (func_mode_link): Actually provide
12778         a useful error message.  Fixes long-standing shameful user
12779         neglection.
12780         Reported by Martin Paljak <martin.paljak@gmail.com>.
12781
12782 2005-09-08  Peter Ekberg  <peda@axentia.se>
12783
12784         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]:
12785         Symbols in "pick any" sections are not global. Use
12786         awk, not sed, in the global_symbol_pipe so that keeping
12787         track of sections is easier.
12788         * doc/libtool.texi (libtool script contents): Update to hint
12789         at new findings concerning "pick any" sections.
12790
12791 2005-09-08  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12792
12793         * tests/early-libtool.at (config.status): Use EXEEXT
12794         consistently.
12795         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
12796
12797 2005-09-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
12798
12799         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12800         [ cygwin, mingw, pw32 ]: Use --enable-auto-image-base instead of
12801         a fixed image base address.
12802
12803 2005-09-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12804
12805         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ sysv4*uw2*,
12806         sysv4.2uw2* ]: Fix my last checkin to really match the more special
12807         case before the general case.
12808         Reported by Stepan Kasal <kasal@ucw.cz>.
12809
12810 2005-09-06  Roger Cornelius  <rac@tenzing.org>
12811
12812         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
12813         [ sysv5OpenUNIX8, sysv5UnixWare7, sysv5uw[78], unixware7,
12814         sysv4*uw2* ]: Match special cases before general case.
12815
12816 2005-09-05  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12817
12818         * bootstrap: another AIX sed fix.
12819
12820         * Makefile.am (TESTS_ENVIRONMENT): Export SHELL.
12821         * bootstrap (SHELL): Set to $CONFIG_SHELL or /bin/sh.
12822         Name `make' targets in portable fashion.  Work around `rm'
12823         warnings.  Unconditionally create fake `libtoolize'.
12824         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
12825
12826         * Makefile.am (doc/notes.txt): Use --no-headers instead of
12827         --plaintext for makeinfo.
12828         Reported by Peter O'Gorman <peter@pogma.com>.
12829
12830 2005-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12831
12832         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ aix ]
12833         <export_symbols_cmds>: Work around shell expansion issue in
12834         func_show_eval by separating `$' and field number; drop then
12835         unnecessary m4 quoting.
12836
12837 2005-09-02  Gary V. Vaughan  <gary@gnu.org>
12838
12839         AC_BEFORE only works if declarations are made inside the macro
12840         cited as the first argument:
12841
12842         * libltdl/m4/libtool.m4 (LT_OUTPUT): Move AC_BEFORE decls...
12843         (LT_INIT, LT_LANG): ...to the macro that has to come first.
12844
12845 2005-09-01  Peter O'Gorman  <peter@pogma.com>
12846
12847         * libltdl/m4/libtool.m4 (old_postintall_cmds): chmod 644 before
12848         running ranlib.
12849         Reported by Gerald Pfeifer <gerald@pfeifer.com>
12850
12851 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12852
12853         * libltdl/m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77)
12854         (_LT_PROG_FC): aclocal-1.4 compatibility workaround.
12855
12856         * bootstrap: Do not use nonportable -path.
12857         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
12858
12859 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
12860
12861         * doc/libtool.texi (LT_INIT): Fix a logical error with
12862         documentation of --with-pic vs --without-pic.
12863
12864 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12865
12866         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): m4_defun this..
12867         * libltdl/m4/libtool.m4 (LT_INIT): so it can be m4_require'd
12868         from here with user-supplied options.  Fixes output macro
12869         ordering issue.
12870
12871 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
12872
12873         * libtoolize.m4sh (func_scan_files): When searching for evidence
12874         of Autotools in aclocal.m4, be careful not to trip over requires
12875         and defuns.
12876
12877 2005-08-31  Gary V. Vaughan <gary@gnu.org>,
12878             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12879
12880         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Move option macro
12881         dipatch..
12882         (_LT_SET_OPTION): here.  Do not fail but warn on unknown
12883         options.
12884         (_LT_UNLESS_OPTIONS(win32-dll), LT_OPTION_DEFINE(dlopen)):
12885         Add whitespace.
12886         Reported by Robert Ögren <lists@roboros.com> and
12887         Akim Demaille <akim@lrde.epita.fr>.
12888
12889 2005-08-31  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12890
12891         * libltdl/m4/libtool.m4 [ solaris CC ]: Document issue with C++
12892         standard libraries.
12893
12894 2005-08-30  Gary V. Vaughan  <gary@gnu.org>
12895
12896         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_PIC_MODE): Renamed...
12897         (AC_LIBTOOL_PICMODE): ...this in the backwards compatibility
12898         code.  There never was an AC_LIBTOOL_PIC_MODE macro.
12899
12900         * libltdl/m4/libtool.m4 (_LT_SETUP): Remove duplicate
12901         --enable-libtool-lock declaration.
12902
12903 2005-08-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12904
12905         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12906         (_LT_PATH_TOOL_PREFIX, _LT_SYS_HIDDEN_LIBDEPS, _LT_DECL_EGREP):
12907         Fix typos.
12908
12909         * Makefile.am: Install libltdl data files in correct order.
12910         Use pre-defined programs for installation; use NORMAL_INSTALL
12911         and NORMAL_UNINSTALL.  Really fix ownership and timestamp
12912         problems.  Fix typo in uninstallation of aclocal files.
12913         Reported by Peter Breitenlohner <peb@mppmu.mpg.de> and
12914         Charles Wilson <cygwin@cwilson.fastmail.fm>.
12915
12916 2005-08-29  Gary V. Vaughan <gary@gnu.org>,
12917             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12918
12919         Allow for portability with Autoconf 2.59, Automake 1.9.6,
12920         which lack AC_CONFIG_LIBOBJ_DIR support.
12921
12922         * bootstrap: Unless environment variable WORKING_LIBOBJS_SUPPORT
12923         is set to true aka `:', symlink ..
12924         * argz.c lt__dirent.c lt__strl.c: .. these from the copies in
12925         libltdl.
12926         * configure.ac (SUBDIR_LIBOBJS): Automake conditional, set if
12927         bootstrap didn't make the extra copies of libobj sources in
12928         top srcdir...
12929         * Makefile.am: Add these to EXTRA_DIST if SUBDIR_OBJS is not set,
12930         as well as the originals in libltdl/, in order to work when
12931         bootstrapped both with old and newer Automake/Autoconf.
12932
12933 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
12934
12935         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE): Fix the comment to not
12936         pretend that LIBLTDL and LTDLINCL are not AC_SUBSTed here.
12937
12938 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
12939
12940         Some macros had relied on accidentally correct ordering in order
12941         for $MV to be defined before use.  Factor out setting of some
12942         common file commands and m4_require it before use:
12943
12944         * libltdl/m4/libtool.m4 (_LT_FILEUTILS_DEFAULTS): Allow user to
12945         override some common file commands at configure time.
12946         (_LT_SETUP, _LT_CONFIG, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
12947         (_LT_COMPILER_C_O, _LT_COMPILER_FILE_LOCKS)
12948         (_LT_SYS_DYNAMIC_LINKER, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12949         (_LT_SYS_HIDDEN_DEPLIBS): m4_require it to ensure the commands are
12950         defined before they are called.
12951
12952 2005-08-28  Gary V. Vaughan  <gary@gnu.org>
12953
12954         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4: AU_DEFUN doesn't pass
12955         arguments.  Use AU_ALIAS instead!
12956
12957 2005-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
12958             Gary V. Vaughan <gary@gnu.org>
12959
12960         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p) [osf]:
12961         Save file descriptor to original STDIN, and restore after
12962         redirection.  Fixes memory corruption with Tru64 and OSF sh.
12963         Reported by Nicolas Joly <njoly@pasteur.fr>.
12964
12965 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
12966             Peter Ekberg  <peda@lysator.liu.se>
12967
12968         * tests/early-libtool.at: Fix goofed up make rules in
12969         previous commit.
12970
12971         * tests/inherited_flags.at: Weaken for MSVC.
12972         * tests/early-libtool.at, tests/template.at: Fix for compiler
12973         that do not understand '-c -o'.
12974
12975 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12976
12977         * tests/standalone.at, tests/template.at: Do not compare
12978         output because of EOL issues.  Resolve warnings, make cross-
12979         compilation aware.
12980         Reported by Peter Ekberg <peda@axentia.se>.
12981
12982         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12983         (_LT_LINKER_SHLIBS): Double-quote unsafe tag variable
12984         descriptions: they are literals.
12985
12986 2005-08-25  Peter Ekberg  <peda@lysator.liu.se>,
12987             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12988
12989         * tests/standalone.at: (without autotools): Add
12990         $(CFLAGS) to LTCOMPILE and LTLINK. Separate compiling
12991         and linking. Remove compiling flags from link. Add
12992         --tag. Add -no-undefined flag.
12993
12994 2005-08-24  Bruno Haible  <bruno@clisp.org>
12995
12996         * libltdl/config/ltmain.sh (func_mode_install): Try "ln -s -f"
12997         and "rm -f && ln -s" to make a symlink for a shared library: the
12998         former is needed for libraries `ln' depends on, the latter for
12999         Solaris /bin/ln.
13000         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
13001
13002         * libltdl/config/ltmain.sh (cwrappersource): return 127 if exec
13003         failed.
13004
13005 2005-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13006
13007         * libltdl/m4/libtool.m4 (_LT_COMPILER_C_O): Send chmod warning to log.
13008
13009         * tests/defs.m4sh (m4dir, auxdir, scripts): Fix for source tree
13010         reorganization.
13011         * tests/sh.test: Adjust.  Also barf on sed diagnostics so this
13012         test will not fail again silently.
13013
13014         * libltdl/m4/ltdl.m4 (LT_SYS_SYMBOL_USCORE): Use _LT_EOF, not
13015         EOF.
13016
13017         * tests/fcdemo/Makefile.am (suffix rules): Explicitly add
13018         $(FCFLAGS_f90) so the tests can pass on AIX.
13019
13020 2005-08-24  Peter O'Gorman  <peter@pogma.com>
13021
13022         * libltdl/config/ltmain.m4sh (inherited_linker_flags): Work when
13023         output is an application too.
13024         Reported by Christopher Egger <Christoph_Egger@gmx.de>
13025
13026 2005-08-23  Stepan Kasal  <kasal@ucw.cz>,
13027             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13028
13029         * libltdl/m4/ltdl.m4 (LTDL_INIT): Use AH_HEADER if defined.
13030         Compute CONFIG_H only before creating config.status.
13031         Reported by Peter Ekberg <peda@axentia.se>.
13032
13033 2005-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13034
13035         * Makefile.maint (web-manual): Fix $(LN_S) to use absolute path.
13036         Fix creating the manual for VPATH build.
13037
13038         * bootstrap: Fix missing replace config -> $auxdir.  ltmain.m4sh
13039         is prerequisite to ltmain.sh.  Improve warning message.
13040
13041 2005-08-22  Gary V. Vaughan  <gary@gnu.org>
13042
13043         Reorganise the libtool tree to create a bootstrapped libltdl for
13044         installation to the libtoolize master tree, so that libltdl is
13045         useable even in the extreme case of when automake and autoconf are
13046         not installed on the developers machine.  Part of this change
13047         requires some duplication of rules between Makefile.am (which
13048         builds libltdl for this distribution) and libltdl/Makefile.am
13049         (which is used by projects that libltoolize --ltdl --copy), so
13050         libtool now really does use a single toplevel Makefile.am, and we
13051         generate libltdl/Makefile.am from that:
13052
13053         * m4, config: Moved from here...
13054         * libltdl/m4, libltdl/config: ...to here, to reduce the amount of
13055         kludging needed in bootstrap for autoreconf to run.
13056         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
13057         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
13058         tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
13059         tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
13060         tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Adjust to
13061         compensate.
13062         * tests/cdemo/configure.ac, tests/demo/configure.ac,
13063         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
13064         tests/fcdemo/configure.ac, tests/mdemo/configure.ac,
13065         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
13066         tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto.
13067         * libltdl/m4/ltdl.m4: Increment serial number.
13068         (LTDL_INIT): Accept an optional directory argument to prefix each
13069         of the LD_DLLOADERS locations.  Default to empty for backwards
13070         compatibility.
13071         * Makefile.maint: Adjust to compensate.
13072         * configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR): Adjust.
13073         (AC_CONFIG_LIBOBJ_DIR): Set here so that we can build LTLIBOBJS
13074         from in a subdirectory from the amalgamated Makefile.am.
13075         (AM_PROG_CC_C_O, AM_INIT_AUTOMAKE): Use subdir-objects.
13076         (AC_CONFIG_FILES): Remove libltdl/Makefile.am.
13077         * libltdl/Makefile.am: Removed from repository, and merged into
13078         Makefile.am as we now generate it...
13079         * Makefile.am (libltdl/Makefile.am): ...from here, by extracting
13080         the merged rules, and tweaking paths to accomodate the difference
13081         in directory from Makefile.am to libltdl/Makefile.am.
13082         (nobase_dist_pkgdata_DATA): Automake generated installation rules
13083         change timestamps of installed files, so renamed this...
13084         (configauxfiles): ...to this...
13085         (libtoolize): ...substitute it...
13086         (install-data-local): ...install manually, preserving
13087         timestamps...
13088         (install-data-hook): ...and set execute bit as appropriate.
13089         (uninstall-hook): Not forgetting to remove them at uninstall.
13090         (libltdl/Makefile.in): New rule.  Called from...
13091         * bootstrap: ...here to avoid relying on config.status at
13092         bootstrap time.
13093         (auxdir, m4dir): Extract from configure.ac for ease of future
13094         maintenance.  Adjust all references.
13095         (reconfdirs): Call autoreconf for libltdl too -- even
13096         though we don't use it for the build, libltdl/configure and
13097         friends are installed with `libtoolize --ltdl --copy'.
13098         * libtoolize.m4sh: Add files from the installed config master tree
13099         to libtoolize --ltdl project subdirectory.
13100         Diagnose duplicated files when --ltdl is used in an autotooled
13101         project.
13102         It's perfectly fine to run `libtoolize --ltdl --copy' in a tree
13103         that has no configure.ac or configure.in; we want libltdl to be
13104         useful even to projects that don't use autotools themselves.
13105         (libtoolize_flags): Removed.  Changed all callers.
13106         (func_massage_pkgconfig_files): New function.
13107         * tests/standalone.at: New tests for using libltdl without
13108         supporting configury in the parent project.
13109         * tests/testsuite.at: Run them!
13110         * NEWS: Updated.
13111
13112 2005-08-22  Peter Ekberg  <peda@lysator.liu.se>
13113
13114         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Add
13115         forgotten end bracket.
13116
13117         * doc/libtool.texi: Shorten the lines describing the
13118         output from MS dumpbin, and align the columns.
13119
13120         * m4/libtool.m4: Bump serial number.
13121         (LT_PATH_NM): If nm is not found on the path, look for
13122         dumpbin. Then check if $NM responds as dumpbin would
13123         and if not, assume the name lister is BSD nm compatible.
13124         (_LT_CMD_GLOBAL_SYMBOLS): If the name lister uses the
13125         dumpbin interface, adjust the test to find a working
13126         global_symbol_pipe.
13127         * doc/libtool.texi: Document $NM to possibly be MS
13128         dumpbin compatible, and also document the format of the
13129         relevant output from MS dumpbin.
13130
13131 2005-08-21  Gary V. Vaughan  <gary@gnu.org>
13132
13133         * libltdl/Makefile.am: revert mistaken commit.
13134
13135         * tests/template.at [darwin]: Some of these tests result in
13136         unresolved symbols on darwin, so don't run those test on that
13137         host!
13138
13139 2005-08-18  Gary V. Vaughan  <gary@gnu.org>,
13140             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13141
13142         * m4/libtool.m4 (LT_OUTPUT): New macro to generate
13143         libtool before config.status.
13144         (_LT_CONFIG_COMMANDS): If LT_OUTPUT has been invoked, then
13145         generate code in config.status to call config.lt instead of
13146         generating libtool directly.
13147         * doc/libtool.texi (LT_INIT): Document LT_OUTPUT.
13148         * tests/early-libtool.at: New test.
13149         * Makefile.am (TESTSUITE_AT): Updated.
13150         * tests/testsuite.at: Updated.  Define defaults for $ACLOCAL,
13151         $AUTOCONF.
13152
13153 2005-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13154
13155         * TODO: Actually updated now.
13156
13157         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]: Do not
13158         assume `aout' for modern FreeBSD by absence of deprecated
13159         `objformat'.
13160
13161         * m4/libtool.m4 [sun, CC] (_LT_LANG_CXX_CONFIG): Move postdeps
13162         override ..
13163         (_LT_SYS_HIDDEN_LIBDEPS): ..here.
13164         * TODO: Updated.
13165
13166 2005-08-18  Stepan Kasal  <kasal@ucw.cz>
13167
13168         * config/general.m4sh (SP2NL, NL2SP): Simplify.
13169
13170 2005-08-17  Gary V. Vaughan  <gary@gnu.org>
13171
13172         * m4/ltdl.m4 (LTDL_INIT): Fix mismatched parens.
13173
13174 2005-08-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13175
13176         * tests/inherited_flags.at: Store intermediate libtool output
13177         for better debugging.
13178
13179         * tests/link-order.at: Add -no-undefined to LDFLAGS.
13180
13181         * tests/convenience.at, tests/template.at: Change suffix of C++
13182         files to .cpp, for compatibility with MSVC.
13183         Reported by Peter Ekberg <peda@axentia.se>.
13184
13185 2005-08-12  Jeremie LE HEN  <tataz@sitadelle.com>,
13186             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13187
13188         * doc/libtool.texi (Creating object files, Linking libraries):
13189         Update description of library object (.lo) and libtoo library
13190         (.la) files.
13191         (all over): Replace MODE with --mode=MODE in examples.
13192
13193 2005-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13194
13195         * config/ltmain.m4sh (func_source): New function.
13196         (func_mode_execute, func_mode_install, func_mode_link): Use it.
13197         Do not append a dot to a file name to source, it breaks on
13198         cygwin managed mounts and is not necessary anywhere.
13199         Reported by Eric Blake <ebb9@byu.net>.
13200
13201         * config/ltmain.m4sh (func_execute_cmds): New function.
13202         (func_mode_finish, func_mode_install, func_mode_link)
13203         (func_mode_uninstall): Use it.
13204
13205         * tests/defs.m4sh (func_configure): Rename to ..
13206         (func_configure_nofail): this, call from old.
13207         * tests/fcdemo-conf.test, tests/fcdemo-shared.test,
13208         tests/fcdemo-static.test: Use.  Do not fail gratuitously but
13209         SKIP on compilers that look like they could be Fortran 77-only.
13210         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13211
13212         * config/ltmain.m4sh (mode): Do not initialize, for nicer error
13213         messages.
13214
13215 2005-08-10  Peter Ekberg  <peda@lysator.liu.se>
13216
13217         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Set ac_ext to cpp, not cc.
13218
13219 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13220
13221         * config/ltmain.m4sh (inherited_linker_flags): Backed out broken
13222         patch.
13223
13224 2005-08-08  Peter O'Gorman  <peter@pogma.com>
13225
13226         * config/ltmain.m4sh (inherited_linker_flags): Work when output
13227         is an application too.
13228         Reported by Christopher Egger <Christoph_Egger@gmx.de>
13229
13230 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13231
13232         * m4/libtool.m4 (_LT_PROG_FC, _LT_LANG_FC_CONFIG): New macros
13233         for modern Fortran.
13234         (LT_LANG, _LT_LANG_DEFAULT_CONFIG, _LT_SYS_DYNAMIC_LINKER,
13235         _LT_SYS_HIDDEN_LIBDEPS): Adjusted.
13236         * tests/fcdemo-conf.test, tests/fcdemo-exec.test,
13237         tests/fcdemo-make.test, tests/fcdemo-shared.test,
13238         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
13239         tests/fcdemo/README, tests/fcdemo/configure.ac,
13240         tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
13241         tests/fcdemo/foof.f90, tests/fcdemo/foof2.f90,
13242         tests/fcdemo/foof3.f90, tests/fcdemo/fprogram.f90: New tests for
13243         Fortran.
13244         * tests/convenience.at: Extended.
13245         * Makefile.am, configure.ac: Adjusted.
13246         * NEWS: Updated.
13247
13248         * AUTHORS, HACKING: Updated.
13249
13250 2005-08-05  Albert Chin-A-Young  <china@thewrittenword.com>
13251
13252         * config/ltmain.m4sh (func_mode_link): Ignore errors from expr
13253         when determining if piece-wise linking should be done.
13254
13255 2005-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13256
13257         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Add
13258         missing bit from Christoph's patch.
13259
13260         * m4/libtool.m4 (_LT_LINKER_HARDCODE_LIBPATH, _LT_LINKER_SHLIBS)
13261         (_LT_LANG_CXX_CONFIG): Comment typos.
13262
13263 2005-08-04  Christoph Egger  <Christoph_Egger@gmx.de>
13264
13265         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Change
13266         basename() to base_name() and have it return a pointer to const,
13267         fix compilation warnings.
13268
13269 2005-07-30  Peter Ekberg  <peda@lysator.liu.se>
13270
13271         * m4/libtool.m4 (_LT_PROG_F77): Set it up so that saying F77=no
13272         to configure disables the fortran tests in the testsuite.
13273
13274 2005-07-29  Richard Moseley  <dickie.moseley@virgin.net>
13275
13276         * m4/ltdl.m4 (LTDL_INIT): Handle in addition the new name for
13277         AC_LIST_HEADERS which is _AC_LIST_TAGS.
13278
13279 2005-07-28  Peter Ekberg  <peda@lysator.liu.se>
13280
13281         * libltdl/Makefile.am: Make the LTDLOPEN define controllable
13282         from the configure script.
13283         * m4/ltdl.m4 (LTDL_INIT): Set the LTDLOPEN define according
13284         to libname_spec.
13285
13286         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
13287         not time, for really fresh files. Add sleep 1 calls at
13288         strategic places. Makes the test pass for MinGW.
13289
13290         * m4/libtool.m4 (_LT_LINKER_OPTION): Fix copy-paste bug, it is
13291         the linker that is tested.
13292
13293         * tests/demo-noinst-link.test: $make is empty on MSYS, replace
13294         with $MAKE. Makes the test pass for MinGW.
13295
13296         * config/ltmain.m4sh (func_generate_dlsyms): Properly remove
13297         the fake symbol line ": @PROGRAM@ " from the list of exported
13298         symbols.
13299
13300         * libltdl/loaders/loadlibrary.c (vm_open): Set the error mode so
13301         that no dialog is popped up in case the file given to
13302         LoadLibrary is not a dll.
13303
13304         * config/ltmain.m4sh (func_mode_link) <lib>: Make sure
13305         skipped_export is set to colon if _some_ cmd of
13306         export_symbols_cmds is too long.
13307
13308         * libltdl/ltdl.c: The linker is confused by having one
13309         definition of lt_libltdlc_LTX_preloaded_symbols tagged with
13310         __declspec(dllexport) in ltdl.c and one definition with an
13311         initial value in libltdlcS.c. So, just say extern in ltdl.c.
13312         Fixes the mdemo-exec.test for MinGW.
13313
13314         * config/ltmain.m4sh (func_mode_link) <lib>: Zap duplicate
13315         message "creating reloadable object files..."
13316
13317 2005-07-23 Peter O'Gorman  <peter@pogma.com>
13318
13319         * m4/libtool.m4 (CXX, archive_cmds) [sun]: Add -lCstd, -lCrun
13320         and -lc for c++ builds with Sun C++ and Centerline C++..
13321         Reported by Albert Chin-A-Young <china@hewrittenword.com>
13322
13323 2005-07-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13324
13325         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Fix bogus merge.
13326         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13327
13328 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13329
13330         * libltdl/Makefile.am (libltdl_la_DEPENDENCIES): Depend on
13331         $(BUILT_SOURCES) as well, so that argz.h gets created through
13332         `make libltdlc.la'.
13333         Reported by Sven Verdoolaege <skimo@liacs.nl>.
13334
13335 2005-07-08  Peter Breitenlohner  <peb@mppmu.mpg.de>
13336
13337         * Makefile.am (install-data-local): Have root own of installed
13338         files (but do not fail, for user installs).
13339
13340 2005-07-08  Bruno Haible  <bruno@clisp.org>
13341
13342         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <postinstall_cmds>
13343         [cygwin,mingw,pw32]: Make DLL executable after installing it.
13344
13345 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13346
13347         * config/ltmain.m4sh (func_mode_install): Do not assume `-f'
13348         needs an argument if the install program is `cp'.  Cleanup
13349         install mode somewhat.
13350         Reported by Juergen Leising <juergen.leising@gmx.de>.
13351
13352 2005-07-03  Thorsten Glaser  <tg@66h.42h.de>
13353
13354         * m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Quieten configure
13355         output for corner cases on some BSDs.
13356         (LT_CMD_MAX_LEN): Another comment cleanup.
13357
13358         * config/ltmain.m4sh (func_extract_archives, func_mode_install),
13359         m4/libtool.m4 (_LT_SETUP, _LT_SYS_DYNAMIC_LINKER, LT_PATH_LD)
13360         (_LT_PATH_LD_GNU, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
13361         Comment language, indentation, and backquote cleanup.
13362         * THANKS: Updated.
13363
13364 2005-07-02  Peter O'Gorman  <peter@pogma.com>
13365
13366         * tests/inherited_flags.at: Use -no-undefined.
13367         Reported by Chris Oxenreider <oxenreid@state.net>
13368
13369 2005-07-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13370
13371         * config/ltmain.m4sh (func_mode_compile, func_mode_link),
13372         m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH, _LT_ENABLE_LOCK):
13373         Remove some unnecessary quotes.
13374
13375         * tests/convenience.at <GCJ>: Fix java test.
13376         Reported by Eric Blake <ericblake@comcast.net>.
13377
13378 2005-07-01  Derek R. Price  <derek@ximbiot.com>
13379
13380         * config/ltmain.m4sh (func_mode_link) <shell wrapper>: Handle
13381         spaces in paths to executed programs.  Quote path in error message.
13382
13383 2005-06-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13384
13385         * THANKS: Updated.
13386
13387 2005-06-28  Stepan Kasal  <kasal@ucw.cz>
13388
13389         * clcommit.m4sh: "grep|sed" can be replaced by mere "sed".
13390         * m4/libtool.m4 (_LT_LIBTOOL_TAGS): Remove unnnecessary "[]".
13391         * m4/lt~obsolete.m4: Use m4_ifndef.
13392
13393 2005-06-27  Stepan Kasal  <kasal@ucw.cz>
13394
13395         * m4/ltsugar.m4 (lt_combine, _lt_combine): Fix default separator.
13396
13397         * m4/ltoptions.m4 (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Replace
13398         AC_FOREACH by a combination of m4_foreach/m4_split/m4_normalize.
13399
13400 2005-06-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13401
13402         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Remove unnecessary workaround
13403         for CVS Automake bug (fixed).
13404         Reported by Stepan Kasal <kasal@ucw.cz>.
13405
13406 2005-06-21  Peter O'Gorman  <peter@pogma.com>
13407
13408         * conig/ltmain.m4sh [darwin]: Accept -arch flag.
13409
13410 2005-06-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13411
13412         * m4/libtool.m4 (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
13413         New macros: save warnings and boilerplate of simple compile/link
13414         tests.
13415         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
13416         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Call.
13417         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION, _LT_COMPILER_C_O, ):
13418         Fail only if nonempty warnings different from default
13419         compile/link.
13420
13421 2005-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13422
13423         * m4/ltsugar.m4 (lt_car, lt_cdr): New macros, clones of
13424         m4_car/m4_cdr with the fixed semantics of Autoconf-2.59c CVS, in
13425         order to work with 2.59.
13426         (lt_combine): Use it.
13427         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
13428
13429 2005-06-11  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>,
13430             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13431
13432         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Loop options only if
13433         nonempty.
13434         * m4/ltsugar.m4 (lt_combine): Don't test against empty quotes,
13435         test against empty arg.  Fixes infinite m4 loop with CVS
13436         Autoconf.
13437
13438 2005-06-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13439
13440         * m4/libtool.m4 (_LT_COMPILER_OPTION, _LT_LINKER_OPTION): No
13441         need for $ECHO here.  Fix sed script syntax to be portable.
13442         This should now put the pic-flag right after the last $*FLAGS
13443         variable again, if any.  Necessary for Fortran AC_FC_SRCEXT.
13444
13445 2005-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13446
13447         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Remove long lines.
13448
13449 2005-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13450
13451         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
13452         _LT_LANG_CXX_CONFIG): PGI also has pgf95.  PGI static flag is
13453         `-Bstatic'.  Remove harmless extra comma from whole_archive
13454         output.
13455
13456 2005-06-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13457
13458         * config/ltmain.m4sh (func_mode_compile): In order to find out
13459         about forbidden characters in output, check with grep after
13460         checking func_quote_for_eval result.  Also, warn instead of fail.
13461         * config/general.m4sh (func_quote_for_eval)
13462         (func_quote_for_expand): Revert SunOS sh bug workaround patch from
13463         2004-12-28 as it triggers bugs in the Tru64 5.1B shell.
13464         Reported by Albert Chin <libtool@mlists.thewrittenword.com> and
13465         Nicolas Joly <njoly@pasteur.fr>.
13466
13467 2005-06-01  Olly Betts <olly@survex.com>  (tiny change)
13468
13469         * libltdl/argz.c (argz_create_sep): Fix typo.
13470
13471 2005-05-31  Peter O'Gorman  <peter@pogma.com>
13472
13473         * config/ltmain.m4sh: Do not add installed static litool libraries
13474         to convenience, they are not convenience libraries.
13475         Reported by Chen-Mou Cheng <chenmou.cheng@gmail.com>
13476
13477 2005-05-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13478
13479         * THANKS: Updated.
13480
13481 2005-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13482
13483         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [aix]:
13484         Fix wrong $ECHO use overlooked in 2005-04-27.  Simplify slightly.
13485
13486         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
13487         _LT_LANG_CXX_CONFIG) [linux]: PGI:
13488         Add $pic_flag to archive_cmds and archive_expsyms_cmds.
13489         Bug reported against LAM by Troy Telford <ttelford@lnxi.com>.
13490
13491 2005-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13492
13493         * THANKS: Updated.
13494
13495 2005-05-06  Gary V. Vaughan  <gary@gnu.org>
13496
13497         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Propogate ltdl directory.
13498
13499 2005-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13500
13501         * Makefile.am (stamp-vcl): Use `diff' instead of `cmp'.
13502
13503 2005-04-30  Gary V. Vaughan  <gary@gnu.org>
13504
13505         Revert the parallel installation changes from November last year:
13506
13507         * libtoolize.m4sh (pkgdatadir, aclocaldir): Substituted from
13508         configure.
13509         (func_copy_all_from_path): Removed.  No longer used.
13510         (func_copy_some_files): Simplify now that nothing is copied from a
13511         list of possible directories now.
13512         (func_scan_files): Remove directory readability check...
13513         (func_nonemptydir_p): ...in favour of a dedicated sanity check
13514         function called from the main body.
13515         (_lt_pkgvdatadir): Set pkgdatadir and aclocaldir appropriately if
13516         this is in the environment.
13517         * configure.ac: Tests for `ln' removed.
13518         (APIVERSION): Removed.
13519         * Makefile.am (pkgvdatadir, nobase_dist_pkgvdata_DATA)
13520         (nobase_pkgvdata_DATA): Renamed to...
13521         (pkgdatadir, nobase_dist_pkgdata_DATA, aclocalfiles): ...these
13522         respectively.
13523         (edit): Adjust for new variable names.
13524         (install-data-local): Don't bother to remove old macro files that
13525         will be overwritten by the installation, and perform a manual
13526         installation of $(aclocalfiles) to preserve timestamps.
13527         (install-exec-hook): Removed.  No need to make versioned links.
13528         (uninstall-hook): No need to remove versioned links, but now we
13529         need to manually remove the manually installed $(aclocalfiles).
13530         * doc/libtool.texi: Remove bogus notes about setting
13531         ACLOCAL_AMFLAGS for versioned libtool installations.
13532         * NEWS: Remove parallel installation item.
13533
13534 2005-04-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13535
13536         * m4/ltdl.m4 (all over): Quote all arguments to AC_DEFINE and
13537         AC_DEFINE_UNQUOTED consistently.  Reported by
13538         Michael Koch  <konqueror@gmx.de>, Riccardo Mottola <zuse@libero.it>,
13539         and Dalibor Topic <robilad@kaffe.org>.
13540
13541         * HACKING: Updated.
13542
13543 2005-04-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13544
13545         * tests/convenience.at: Actually add.
13546
13547         * tests/convenience.at: New.  Test convenience archives.
13548         * Makefile.am, tests/testsuite.at: Adjust.
13549         * tests/testsuite.at: Reorder tests.  Suspend AT_TESTED.
13550         (PREPARE_TESTS): Define EGREP, host, build, LIBTOOL.
13551         (LT_AT_BOOTSTRAP): Fail if autoreconf fails.
13552         (LT_AT_EXEC_CHECK): New macro for execution of $build binaries.
13553         (LT_AT_TAG): New macro to test tag availability or skip test.
13554         * tests/am-subdir.at, tests/duplicate_members.at,
13555         tests/inherited_flags.at, tests/link-order.at,
13556         tests/stresstest.at, tests/template.at: Adjust.  Use LT_AT_TAG,
13557         LT_AT_EXEC_CHECK, AT_KEYWORDS. Use compiler/linker flags
13558         consistently.
13559         * tests/link-order.at: Fix use of AT_DATA, bogus redirection
13560         inside AT_CHECK.
13561         * tests/stresstest.at: Do not use wildcards/regex in symbol files,
13562         they are not portable.  Use -no-undefined on win32.  Fix to ignore
13563         compile/link warnings.
13564
13565         * tests/f77demo/foo.h, tests/f77demo/fooc.c,
13566         tests/f77demo/cprogram.c, tests/mdemo2/main.c, tests/pdemo/foo.h:
13567         Make declarations available.
13568
13569         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: sed 3.02 does
13570         not understand \t in regex.
13571         Reported by Tim Van Holder <tim.vanholder@gmail.com>.
13572
13573         * tests/defs.m4sh (func_configure): Don't run the whole configure
13574         script with -x.
13575
13576         * config/ltmain.m4sh: Audit use of echo vs $ECHO.
13577         Reported by Robert Ögren <lists@roboros.com> and others.
13578
13579         * TODO: Updated.
13580
13581 2005-04-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
13582             Gary V. Vaughan  <gary@gnu.org>
13583
13584         * HACKING, THANKS: Updated.
13585
13586 2005-04-25  David Edelsohn  <dje@watson.ibm.com>
13587
13588         * m4/libtool.m4 (_LT_LINKER_SHLIBS): _LT_TAGDECL(file_list_spec).
13589         * config/ltmain.m4sh (func_mode_link): Change $filelist to
13590         $output.
13591
13592 2005-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13593
13594         * m4/libtool.m4 (_LT_CC_BASENAME): Ignore `compile'.
13595
13596 2005-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13597
13598         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [solaris]:
13599         Update wl for Sun Studio f77/f90/f95.  Fix whole_archive_flag_spec
13600         for cc and f77/f90/f95 to prevent reordering in case we link with
13601         $CC.
13602
13603         * m4/libtool.m4: Audit use of echo vs $ECHO.
13604         * TODO: Update.
13605         Reported by Robert Ögren <lists@roboros.com> and others.
13606
13607 2005-04-23  Gary Kumfert <kumfert@llnl.gov>
13608
13609         * m4/libtool.m4 (_LT_LANG_F77_CONFIG) [aix4, aix5]:
13610         Adjust logic to match the C case: Only disable static if not
13611         on ia64 nor runtimelinking.
13612
13613 2005-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
13614
13615         * Makefile.am, HACKING: Use lt__cd throughout.
13616
13617 2005-04-22  Gary V. Vaughan  <gary@gnu.org>
13618
13619         The FSF are moving offices today.  Changed their contact address
13620         in all files from `59 Temple Place, Suite 330, MA 02111-1307' to
13621         `51 Franklin Street, Fifth Floor, MA 02110-1301'.
13622
13623 2005-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13624
13625         * libtoolize.m4sh (func_scan_files, func_serial,
13626         func_ltmain_update, func_config_update, func_install_update):
13627         Placate AIX sed.
13628
13629 2005-04-19  David Edelsohn  <dje@watson.ibm.com>
13630
13631         * config/ltmain.m4sh (func_mode_link): If command exceeds
13632         max_cmd_len and file_list_spec exists, write list of input files
13633         to temporary file.
13634         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
13635         [aix4,aix5]: Define file_list_spec.
13636
13637 2005-04-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13638
13639         * tests/demo-hardcode.test: Fix typo.
13640
13641 2005-04-17 Alexandre Oliva  <aoliva@redhat.com>,
13642            Peter O'Gorman  <peter@pogma.com>
13643
13644         * config/ltmain.m4sh: Don't add files with the same base name to
13645         an archive; rename duplicates instead.
13646         (func_extract_an_archive): Remove section to deal with duplicate
13647         base names in an archive.
13648         * tests/functests.at: remove.
13649         * tests/duplicate_members.at: new test.
13650         * tests/testsuite.at: Add new test, remove old.
13651         * Makefile.am: Add new test, remove old.
13652
13653 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13654
13655         * tests/demo-hardcode.test [solaris]:  Use dumpstabs if available,
13656         to avoid false failure caused by debug section which contains
13657         command line (Solaris cc).
13658         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
13659
13660 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
13661
13662         * libtoolize.m4sh (func_copy_cb): Fix syntax typo.
13663
13664 2005-04-15  Maciej W. Rozycki  <macro@linux-mips.org>
13665
13666         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Add old_archive_cmds
13667         definition.
13668
13669 2005-04-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13670
13671         * m4/libtool.m4 (_LT_CC_BASENAME): New macro to figure out
13672         $cc_basename.  Skip ccache, distcc, purify, cmdline options,
13673         `$host_alias-' prefix.
13674         (_LT_SETUP, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
13675         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Use.
13676         * NEWS, TODO: Update.
13677
13678 2005-04-15  Gary V. Vaughan  <gary@gnu.org>
13679
13680         * libltdl/configure.ac (AC_OUTPUT): loaders/Makefile is no longer
13681         used.
13682
13683         * Makefile.am (lt__cd, CD_TESTDIR): New make macros to work around
13684         problems with CDPATH in some shells.
13685         (check-local, installcheck-local, clean-local): Use them.
13686
13687 2005-04-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
13688
13689         * bootstrap: Define srcdir for making `commit'.
13690
13691 2005-04-14  Alexandre Oliva  <aoliva@redhat.com>,
13692             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13693
13694         * config/ltmain.m4sh (link mode): Add to tmp_libs paths for
13695         libtool dep libs in reverse order as well.
13696         * Makefile.am, tests/testsuite.at, tests/link-order.at: New test.
13697
13698 2005-04-13  Gary V. Vaughan  <gary@gnu.org>
13699
13700         Since the bootstrap process requires that several of the rules for
13701         files generated in doc and tests already lived in
13702         $top_srcdir/Makefile.am, along with proxy rules in sub-Makefiles,
13703         this changeset consolidates almost everything into the top
13704         Makefile.am, simplifying things considerably:
13705
13706         * doc/Makefile.am, tests/Makefile.am: Removed.  All rules moved...
13707         * Makefile.am: ...to here and adjusted to run from $top_builddir.
13708         Some reformatting to group rules and declarations by purpose, and
13709         simplify with respect to removing much of the make recursion.
13710         Add `doc/PLATFORMS', `doc/fdl.texi' and `doc/notes.texi'.
13711         `defs.in' and `defs.m4sh' are in directory `tests'.
13712         (uninstall-hook): Don't forget to uninstall libtoolize's libltdl
13713         source tree.
13714         * bootstrap: Simplified dirty makefile management, and bootstrap
13715         file creation in light of having only a single pertinent
13716         Makefile.
13717         * configure.ac (CONF_SUBDIRS): Add tests/ prefix to each subdir to
13718         compensate.
13719         (DIST_MAKEFILE_LIST): Adjust.
13720         (AC_CONFIG_FILES): Remove doc/Makefile and tests/Makefile.
13721         * tests/defs.m4sh (LIBTOOL, scripts): Adjust paths.
13722         * tests/cdemo-conf.test, tests/cdemo-exec.test,
13723         tests/cdemo-make.test, tests/cdemo-shared.test,
13724         tests/cdemo-static.test, tests/cdemo-undef.test,
13725         tests/demo-conf.test, tests/demo-deplibs.test,
13726         tests/demo-exec.test, tests/demo-hardcode.test,
13727         tests/demo-inst.test, tests/demo-make.test,
13728         tests/demo-nofast.test, tests/demo-noinst-link.test,
13729         tests/demo-nopic.test, tests/demo-pic.test,
13730         tests/demo-relink.test, tests/demo-shared.test,
13731         tests/demo-static.test, tests/demo-unst.test,
13732         tests/depdemo-conf.test, tests/depdemo-exec.test,
13733         tests/depdemo-inst.test, tests/depdemo-make.test,
13734         tests/depdemo-nofast.test, tests/depdemo-relink.test,
13735         tests/depdemo-shared.test, tests/depdemo-static.test,
13736         tests/depdemo-unst.test, tests/f77demo-conf.test,
13737         tests/f77demo-exec.test, tests/f77demo-make.test,
13738         tests/f77demo-shared.test, tests/f77demo-static.test,
13739         tests/link-2.test, tests/link.test, tests/mdemo-conf.test,
13740         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
13741         tests/mdemo-inst.test, tests/mdemo-make.test,
13742         tests/mdemo-shared.test, tests/mdemo-static.test,
13743         tests/mdemo-unst.test, tests/mdemo2-conf.test,
13744         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
13745         tests/objectlist.test, tests/pdemo-conf.test,
13746         tests/pdemo-exec.test, tests/pdemo-inst.test,
13747         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
13748         tests/suffix.test, tests/tagdemo-conf.test,
13749         tests/tagdemo-exec.test, tests/tagdemo-make.test,
13750         tests/tagdemo-shared.test, tests/tagdemo-static.test,
13751         tests/tagdemo-undef.test, tests/tagtrace.test (func_cd,
13752         func_require): Adjust paths.
13753
13754 2005-04-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13755
13756         * config/general.m4sh, libtool.m4 (_LT_SETUP), tests/defs.m4sh,
13757         tests/functests.at: Fix definition of $Xsed.
13758
13759 2005-04-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13760
13761         Improved Portland support: prelinking of C++ templates and
13762         whole_archive.
13763
13764         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [linux]:
13765         Reinstate formatted whole_archive_flag_spec for PGI compilers.
13766         * config/ltmain.m4sh (func_mode_link), m4/libtool.m4
13767         (_LT_LINKER_SHLIBS): New tag prelink_cmds, to be executed before
13768         linking a program.
13769         (_LT_LANG_CXX_CONFIG) [linux]: Use for pgCC.
13770         (_LT_COMPILER_C_O): conftest might be nonempty, clean up more
13771         thoroughly.
13772
13773         * tests/testsuite.at (LT_AT_BOOTSTRAP): Temporary fix for testing
13774         in-tree libtoolize.
13775
13776         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Only call sed if
13777         necessary while quoting all libtool variables.
13778         Reported by Robert Ögren <lists@roboros.com>.
13779
13780 2005-04-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13781
13782         * tests/Makefile.am: Typo.
13783
13784 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13785
13786         * notes.texi: Platform-specific configuration notes.
13787         * doc/libtool.texi: Include as section.
13788         * bootstrap, doc/Makefile.am: build also as notes.txt and
13789         distribute.
13790
13791 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
13792
13793         Under certain circumstances, not all of the macro files were
13794         copied into the destination directory.  This changeset fixes
13795         that bug:
13796
13797         * libtoolize.m4sh (func_serial_update):  Renamed local variable
13798         `my_update_p' to `my_serial_update_p', and initialise it correctly
13799         even when the destination file is not yet there.
13800         Reported by Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13801
13802 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
13803
13804         * tests/libtoolize.at: New tests for basic libtoolize
13805         functionality and reporting.
13806         * tests/testsuite.at: Call them.
13807         * tests/Makefile.am: Distribute them.
13808
13809         * libtoolize.m4sh (pkgvdatadir): Renamed from this...
13810         (_lt_pkgvdatadir): ...to this.
13811         * tests/testsuite.at (LT_AT_LIBTOOLIZE): The `-I' option is no
13812         longer supported by libtoolize.  Set _lt_pkgvdatadir in the
13813         environment of the invocation instead.
13814
13815 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13816
13817         * tests/template.at: New Autotest tests for C++ with templates.
13818         First test provided by
13819         Markus Christen <markus@igc.phys.chem.ethz.ch>.
13820         * tests/Makefile.am, tests/testsuite.at: Use and distribute.
13821
13822 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
13823
13824         * libtoolize.m4sh (func_serial_update): Replace missing
13825         destination serial calculation line, presumably lost due to a bad
13826         merge.
13827
13828         * libltdl/loaders/Makefile.am: Removed actually.
13829
13830 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
13831
13832         Getting the value of ltdldatafiles from a submake was not
13833         portable, and had problems with GNU make-3.80 at least.  This
13834         changeset pulls the installation rules for libtoolize's copy of
13835         the libltdl sources out of libltdl/Makefile.am so that
13836         ltdldatafiles is defined in the same Makefile that uses it.  Also,
13837         this makes a start at cleaning up libltdl/Makefile.am so that it
13838         is useful in a package that uses `libtoolize --ltdl':
13839
13840         * libltdl/loaders/Makefile.am: Removed entirely.
13841         * libltdl/Makefile.am (dlopen.la, dld_link.la, dyld.la)
13842         (load_add_on.la, loadlibrary.la, shl_load.la): All built from here
13843         now that the loaders submake has gone.
13844         (show-ltdldatafiles): Removed.  No longer required.
13845         (ltdldatadir, ltdldatafiles, install-local): Moved from here...
13846         * Makefile.am (ltdldatadir, ltdldatafiles, install-local): ..to
13847         here.
13848         (libtoolize): Substitute $(ltdldatafiles) directly without calling
13849         make to get the value from libltdl/Makefile.
13850
13851 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
13852
13853         * Makefile.am (libtoolize): Substitute $(nobase_pkgvdata_DATA).
13854         pkgvmacro_DATA is no longer set in the makefile.
13855         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): Use it and, for
13856         consistency, renamed from this...
13857         (func_massage_nobase_pkgvdata_DATA): ...to this.  Adjust all
13858         callers.
13859
13860 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
13861
13862         Fix problems with serial comparison sed scripts, and factor out
13863         common code from similar serial comparison functions:
13864
13865         * libtoolize.m4sh (func_keyword_update): Common code factored out
13866         of func_ltmain_update and func_config_update.
13867         (func_ltmain_update, func_config_update): Adjust, and fix sed
13868         expressions to not use unportable ? modifier.
13869         (func_install_update): New serial number based file updater keyed
13870         off 'scriptversion' variable in install-sh.  Adjust all callers.
13871
13872 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
13873
13874         Most of the hair introduced ostensibly to enable testing of
13875         uninstalled libtoolize isn't necessary if we allow overriding of
13876         the libtool master copy directory:
13877
13878         * configure.ac (pkvmacrodir): No need to substitute this.
13879         * Makefile.am (edit): No need to substitute pkgvmacrodir.
13880         (dist_pkgvdata_DATA): Use nobase_ prefix so that these files are
13881         installed to $(pkgvdatadir)/config.
13882         (pkgvmacro_DATA): Renamed to...
13883         (nobase_pkgvdata_DATA): ...this, so that files are installed to
13884         $(pkgvdatadir)/m4.
13885         (install-data-hook): Adjust.
13886         * libtoolize.m4sh: Remove -I processing.
13887         (func_filename_path_search): No longer required without -I.
13888         Adjust all callers.
13889         (pkgvltdldirs, pkgvmacrodirs): Deleted.
13890         (pkgvdatadir): Allow overriding from the environment so that we
13891         can write tests for uninstalled libtoolize.
13892         (func_serial_update, func_ltmain_update, func_config_update):
13893         Rename srcdirs parameter to srcdir, and don't call the path_search
13894         function anymore.  Adjust all callers.
13895         (--install): Don't blindly copy all config files.
13896
13897 2005-04-01  Mike Stump  <mrs@apple.com>
13898
13899         * m4/libtool.m4 (LT_CMD_MAX_LEN) [netbsd, freebsd, openbsd
13900         darwin, dragonfly]: Use 3/4 of argmax, instead of 1/4.
13901
13902 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13903
13904         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG):
13905         Set $cc_basename.
13906
13907         * HACKING: echo vs $ECHO.
13908
13909 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
13910
13911         * doc/libtool.texi: Minor formatting cleanups.
13912
13913 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
13914
13915         * libtoolize.m4sh: Propogate --debug flag to sub-libtoolizes.
13916
13917         * libtoolize.m4sh: Fix a typo, s/pkgvltdldirs/pkgvdatadirs/.
13918         When using -I to test an uninstalled libtoolize, we need to add
13919         the config subdirectory to the search path so that ltmain.sh can
13920         be found in the source tree.
13921
13922         * libtoolize.m4sh (func_copy_some_files): IFS needs to be set to
13923         path delimiter for all inner loop iterations.
13924         Once a matching file has been copied, no need to keep searching
13925         the path for another -- move on to the next file!
13926
13927         * libtoolize.m4sh: For verbose mode, explain why macro files are
13928         not installed without an AC_CONFIG_MACRO_DIR declaration.
13929
13930 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
13931
13932         As a prerequisite for being able to test an uninstalled libtoolize
13933         for copying files correctly from the source tree, we must know
13934         exactly which files should be copied by the --ltdl option to avoid
13935         accidentally picking up compilation objects and other noise when
13936         $builddir == $srcdir:
13937
13938         * libltdl/loaders/Makefile.am (ltdldatadir, ltdldatafiles)
13939         (install-data-local): Removed...
13940         * libltdl/Makefile.am (ltdldatafiles): ...and consolidated here.
13941         (show-ltdldatafiles): New rule...
13942         * Makefile.am (ltdldatafiles, libtoolize): ...used to substitute
13943         exactly which files are installed by libtoolize --ltdl.
13944         (edit): Move pkgvmacro_DATA substitution expression...
13945         (libtoolize): ...to here.
13946         * libtoolize.m4sh: Use func_copy_some_files() instead of
13947         func_copy_all_from_path() to copy the --ltdl option installed
13948         files.
13949         (pkgvltdldirs): New path variable to search for files installed by
13950         --ltdl option.
13951         (func_massage_pkgvltdl_files): New function to calculate the list
13952         of ltdl installation files.
13953
13954 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
13955
13956         * m4/libtool.m4, m4/ltdl.m4: Indentation and quoting cleanup.
13957
13958 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13959
13960         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Use ${wlarc}
13961         and set to empty when using $LD for linking.  Fixes regression
13962         introduced in 2004-11-17.
13963         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> and
13964         Пухальский Юрий Андреевич <pooh@cryptopro.ru>.
13965
13966 2005-03-21  Gary V. Vaughan  <gary@gnu.org>,
13967             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13968
13969         * m4/libtool.m4 (_LT_SETUP, _LT_LANG_CXX_CONFIG)
13970         (_LT_LANG_F77_CONFIG): For matching compiler names -- Pick only
13971         first word, allow leading white space.
13972         * tests/sh.test: ..and test for missing `*' at end of patterns.
13973
13974 2005-03-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13975
13976         * TODO: Update.
13977
13978 2005-03-20  Peter Ekberg  <peda@lysator.liu.se>
13979
13980         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix5, irix6, nonstopux]:
13981         Test if it is possible to use the -exports_file linker option on
13982         irix with gcc, as the gcc specs file may include a -hidden_symbol
13983         option that is clashing with the -exports_file option.
13984         See this gcc bugzilla entry for further details:
13985         http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15288
13986         * THANKS: Update.
13987
13988 2005-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13989
13990         * tests/demo-nopic.test: Enhance status output
13991         noted by Tom Burger <tvburger@few.vu.nl>.
13992
13993 2005-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13994
13995         * config/ltmain.m4sh, tests/defs.m4sh: Typos.
13996
13997 2005-03-18  Peter O'Gorman  <peter@pogma.com>,
13998             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13999
14000         * m4/libtool.m4: The compiler can be a program name with args, so
14001         always check cc_basename against compiler name and a wildcard.
14002         Also, drop unnecessary quotes in `case' argument.
14003
14004 2005-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14005
14006         * Makefile.am: tests/defs.in depends on config/general.m4sh.
14007
14008         * config/general.m4sh: unconditionally set IFS, and set it
14009         to the one true right sequence: space, tab, newline.
14010         * m4/libtool.m4: remove IFS setting and as_* namespace
14011         infringement.
14012
14013         * m4/libtool.m4 (_LT_CONFIG): Reset IFS to fix failure with ash.
14014
14015         * configure.ac, libltdl/configure.ac: s/##/dnl/ for comments
14016         that are meaningless in configure.
14017         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
14018
14019 2005-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14020
14021         * libltdl/configure.ac: Update version; require Autoconf >= 2.59.
14022
14023         * bootstrap: Allow to override tools.
14024
14025 2005-03-15  Gary V. Vaughan  <gary@gnu.org>
14026
14027         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): New function
14028         to calculate the macro filenames to be copied by libtoolize.
14029         * Makefile.am (edit): Substitute pkgvmacro_DATA.
14030
14031         * bootstrap: Need to generate tests/package.m4 from Makefile.am
14032         before generating tests/testsuite from tests/Makefile.am, or
14033         else bootstrap of a fresh checkout fails.
14034
14035 2005-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14036
14037         * m4/libtool.m4 (_LT_COPYING): Update Copyright year.
14038
14039         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]: Remove MAIN_
14040         dependency when creating shared libraries with Portland pgf77.
14041
14042 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14043
14044         * configure.ac: stamp-vcl is in $top_srcdir, not $top_builddir.
14045
14046 2005-03-12  Per Bothner <per@bothner.com>,
14047             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14048
14049         Allow special characters in source file names.  Will break unless
14050         `-o target' is also given, which must not contain special
14051         characters. En passant, fix source file quoting broken for
14052         cygwin/MSVC:
14053
14054         * config/ltmain.m4sh (func_mode_compile): Use new variable
14055         qsrcfile for quoted source file name for compile $command.  Fix
14056         missing quotes for _c_o lockfile.
14057         * NEWS: Update.
14058
14059 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14060
14061         * config/ltmain.m4sh (func_mode_link): Reword double negation in
14062         error message.
14063         Reported by Jesper Louis Andersen <jlouis@mongers.org>.
14064
14065         * bootstrap: really remove bogus files Makefile tests/Makefile.
14066
14067         * doc/libtool.texi: Replace wicked whiches by thats or other
14068         better-sounding constructs.
14069
14070 2005-03-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14071
14072         * tests/Makefile (clean-local): Ignore testsuite cleanup
14073         failures.
14074
14075 2005-03-11  Per Bothner  <per@bothner.com>  (tiny change)
14076
14077         * tests/Makefile (clean-local): Only run the testsuite cleanup
14078         if the testsuite has been generated.
14079
14080 2005-03-10  Gary V. Vaughan  <gary@gnu.org>
14081
14082         * libltdl/Makefile.am (install-data-local): Don't force v7 tar
14083         format with the `o' flag in create mode.
14084         Set the umask to 0 when untarring to avoid copied files taking
14085         their mode from the installer's umask.
14086         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14087         * libtoolize.m4sh (func_copy_cb): Ditto.
14088         Ignore errors from failed `cd' in the tar processes, since we
14089         may be running in dryrun mode.
14090         Reported by Noah Misch <noah@cs.caltech.edu>,
14091                     Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
14092
14093 2005-03-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14094
14095         * libltdl/Makefile.am: $(builddir) is not defined, replace by
14096         `.'.
14097
14098 2005-03-08  Albert Chin-A-Young  <china@thewrittenword.com>
14099
14100         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
14101         [irix*, osf*]: Output -update_registry information to
14102         ${output_objdir} directory, not ${objdir}. ${output_objdir}
14103         will work when a project has a single Makefile and performs
14104         builds in subdirectories. ${objdir} expects the source in
14105         the current directory, breaking single-Makefile builds.
14106
14107 2005-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14108
14109         * tests/stresstest.at: Remove multiple variable definition.
14110
14111         * TODO: Update.
14112
14113         * THANKS: Update.
14114
14115 2005-03-02  Gary V. Vaughan  <gary@gnu.org>
14116
14117         * libtoolize.m4sh (func_copy_cb): Use tar chof to avoid symlink
14118         attacks.
14119         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
14120         (install-data-local): Ditto.
14121
14122 2005-02-27  Gary V. Vaughan  <gary@gnu.org>
14123
14124         In branch-2-0 (and in time, others) ltversion.m4 has a dot
14125         delimited serial number that didn't used to be processed
14126         correctly by libtoolize.  This changeset fixes that, and
14127         leverages those changes to check versions of ltmain.sh and
14128         config.sub, config.guess before overwriting when --force is
14129         not given:
14130
14131         * libtoolize.m4sh: Don't overwrite pkgaux files with --force
14132         unless --install is given too.
14133         (func_serial): Fix underquoting in regexp.
14134         (func_serial_max): New function to compare serial numbers.
14135         (func_serial_update_check): New function factored out of
14136         func_serial_update().
14137         (func_serial_update): Bail if SRCFILE is missing.
14138         Don't display both 'already up to date' and 'use --force to
14139         update' messages for the same file.
14140         Use func_serial_max to cope with `.' delimited serial numbers.
14141         (func_ltmain_update): Use func_serial_update_check and
14142         func_serial_max to do version checking with $package_revision.
14143         (func_config_update): Ditto with $timestamp.
14144
14145 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
14146
14147         * libltdl/Makefile.am (install-data-local):  cd to $(srcdir)
14148         before tarring up the files for installation to
14149         $(DESTDIR)$(ltdldatadir).  Don't remove the destination directory,
14150         since that interacts badly with the multi-Makefile installation.
14151         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14152
14153 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
14154
14155         I assume that it is okay to have undefined symbols in convenience
14156         libraries that will be used as modules -- the pic objects are
14157         built normally, and are not expected to resolve all their symbols
14158         until they are linked into a library; convenience libraries are
14159         then rolled using 'ar' and 'ranlib' (or equivalent) which also do
14160         not check whether symbols are resolved.  We now build each of the
14161         loaders as a convenience library module under these assumptions,
14162         and link libltdl.la with selected modules, at which time all of
14163         the symbols *are* resolved:
14164
14165         * TODO: Remove item addressed by this changeset.
14166         * libltdl/Makefile.am (lib_LTLIBRARIES): Remove libdlloader.la.
14167         (libdlloader_la_SOURCES): Declaration removed.  Changed all
14168         clients.  Source files..
14169         (libltdl_la_SOURCES): ...added back in here.
14170         (libdlloader_LDFLAGS, libdlloader_la_LIBADD): Removed.
14171         (libltdl_la_LIBADD): Remove libdlloader.la; add $(LTLIBOBJS).
14172         * libltdl/loaders/Makefile.am: Removed all references to
14173         libdlloader.la.
14174
14175 2005-02-25  Gary V. Vaughan  <gary@gnu.org>
14176
14177         * libtoolize.m4sh (func_copy): Split arguments to func_copy_cb
14178         calls across lines so that quote.test doesn't misdiagnose nested
14179         quotes.
14180
14181         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC):
14182         Fix some typos -- s/_LT_AC_TAGVAR/_LT_TAGVAR/g.
14183
14184 2005-02-24  Peter O'Gorman  <peter@pogma.com>
14185
14186         * m4/libtool.m4 (_LT_LINKER_SHLIBS): The Portland group's
14187         compiler does not pass --whole-archive. Move gnu ld check for
14188         the flag to the top so it can be overridden.
14189         (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC): Unset
14190         whole_archive_flag_spec for the portland group's c++ compiler
14191         too.
14192         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
14193
14194 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
14195
14196         * libltdl/Makefile.am (install-data-local): Don't forget about
14197         $(DESTDIR).
14198         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14199
14200 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
14201
14202         Preserving the installed timestamps for libltdl sources from
14203         `libtoolize --ltdl --copy' is pointless if they are not preserved
14204         from the libtool source tree at install time:
14205
14206         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
14207         (nobase_ltdldata_DATA): Renamed to...
14208         (ltdldatafiles): ...this.
14209         (install-data-local): New rule to install libltdl tree with tar to
14210         preserve timestamps.
14211
14212 2005-02-23  Christoph Egger  <Christoph_Egger@gmx.de> (tiny change)
14213
14214         * config/ltmain.m4sh (func_mode_link): Add -pthread like flags to
14215         inherited_linker_flags.
14216
14217 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
14218
14219         * libtoolize.m4sh (func_copy_cb): self.leg->shoot_off() :-/
14220         Let's not redirect stdout to null when sending tar output to a
14221         pipe.
14222
14223 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
14224
14225         Using `libtoolize --copy --ltdl' was not preserving timestamps, so
14226         parts of the autoconf bootstrap would be rerun spuriously after
14227         the files had been copied into the source tree:
14228
14229         * libtoolize.m4sh (TAR): New default tar command.
14230         (func_copy_cb): Move the core copying internals to here, using
14231         $TAR to transfer files if possible when --copy was specified.
14232         (func_copy): Adjust to call func_copy_cb.
14233         * TODO: Remember to refactor this fix in due course.
14234         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
14235
14236 2005-02-21  Peter O'Gorman  <peter@pogma.com>
14237
14238         * config/ltmain.m4sh (func_extract_archives) [darwin]: This didn't
14239         actually work on a real fat archive, should do now.
14240         * tests/functests.at [darwin]: remove darwin fat tests which
14241         did not actually work.
14242
14243 2005-02-07  Peter O'Gorman  <peter@pogma.com>
14244
14245         * config/ltmain.m4sh: Add -pthread like flags when linking
14246         executables too.
14247         Reported by Andreas Schwab <schwab@suse.de>
14248
14249 2005-02-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14250
14251         * config/ltmain.m4sh (func_mode_link): Allow five digits in
14252         version-info.
14253
14254         * NEWS: s/Linux/GNU &/.
14255
14256 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14257
14258         * tests/Makefile.am, tests/testsuite.at, tests/stresstest.at:
14259         New test.  Stresses several combinations of link flags and
14260         path specifications.  Uses several data types to test linkage
14261         against symbols in all kinds of (e.g., ELF) sections.
14262
14263 2005-02-03  Reid Spencer  <reid@x10sys.com>,
14264             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14265
14266         * config/ltmain.m4sh (func_generate_dlsyms): Fix broken subdir
14267         path computation, exposed by using `-dlopen self'.  Fix broken
14268         sed script exposed by additionally using `-export-symbols FILE'.
14269
14270 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14271
14272         * THANKS: Update.
14273
14274         * THANKS: Update.
14275
14276 2005-02-03  Peter O'Gorman  <peter@pogma.com>
14277
14278         * config/ltmain.m4sh [darwin]: Don't add installed libs to
14279         temp_rpath when building executables on darwin, or other systems
14280         which use hardcode_automatic. It may break our wrapper scripts.
14281
14282 2005-02-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14283
14284         * config/getopt.m4sh (func_version, func_usage, func_help):
14285         Exit with nonzero status on write failures.
14286         * config/ltmain.m4sh (func_mode_help, func_config, func_features):
14287         Ditto.
14288
14289         * tests/sh.test: Check for preferred function definition layout.
14290
14291 2005-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14292
14293         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
14294         [pw32, freebsd3.[01], freebsdelf3.[01]]:  Fix [] quoting.  Should
14295         fix various spurious failures.
14296         (_LT_LINKER_SHLIBS) [linux with GNU ld < 2.11, aix4.[012]*]:
14297         Ditto.
14298         (_LT_LANG_CXX_CONFIG) [aix4.[012]*, freebsd[12], solaris2.[0-5]]:
14299         Ditto.
14300         (_LT_LANG_GCJ_CONFIG): Ditto.
14301
14302         * tests/Makefile.am: Add `atconfig' to DISTCLEANFILES.
14303
14304         * clcommit.m4sh: Test whether the shell understands `read -r'.
14305         Use as `$read_r' if available, so `\' is preserved in commit
14306         notices.
14307
14308         * HACKING (Editing `.m4sh' Files): Document preferred function
14309         header layout.
14310         * config/ltmain.m4sh (func_win32_libid, func_infer_tag)
14311         (func_generate_dlsyms, func_extract_an_archive)
14312         (func_extract_archives): Adjust to fit.
14313
14314 2005-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14315
14316         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unicos 9 sed rejects
14317         empty parentheses as in 's/x\(\)/\1/'.
14318         (_LT_COMPILER_PIC) [unicos*]: wl=-Wl,.
14319         * tests/sh.test: Not all sed's like '/.*\n.*/' (Unicos 9 sed
14320         loops endlessly).
14321
14322         * tests/quote.test: Match link  quoting against `"$wl"', not
14323         `-Wl,'.
14324
14325         * tests/quote.test: Check for `--no-reexec' in $1 to avoid one
14326         reexec.
14327
14328         * m4/libtool.m4 (_LT_COMPILER_C_O): _LT_TAGDECL(lt_compiler_c_o),
14329         not _LT_DECL, since this is tag-dependent.
14330
14331         * config/ltmain.m4sh, m4/libtool.m4: Change `( cmd ) 2>/dev/null'
14332         to  `{ cmd; } 2>/dev/null', when cmd has no side effects and might
14333         be a builtin.  Note that it is unspecified whether cmd will run
14334         within a subshell (e.g. Bourne shells) or within the current shell
14335         (most modern shells).
14336
14337 2005-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14338
14339         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [linux]:
14340         Update for Intel Compiler icc/icpc/ifort: add -i_dynamic and
14341         -nofor_main, if necessary.  Simplify logic somewhat.
14342
14343 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14344
14345         * tests/Makefile.am: also re-export CPP, CXXCPP, and the value of
14346         SHELL as CONFIG_SHELL.
14347         Reported by Heinz Salzmann <heinz.salzmann@micronas.com>.
14348
14349 2005-01-26  Craig Dooley  <xlnxminusx@gmail.com>,
14350             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14351
14352         * NEWS, m4/libtool.m4, config/ltmain.m4sh [dragonfly]:
14353         Add support for DragonFly.
14354
14355 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14356
14357         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Work around pdksh
14358         positional parameter expansion bug.
14359
14360 2005-01-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14361
14362         * config/ltmain.m4sh: Fix endless loop in cmdline parsing.
14363
14364 2005-01-25  Albert Chin-A-Young  <china@thewrittenword.com>
14365
14366         * config/ltmain.m4sh (func_mode_link) [irix]: Preserve processor
14367         option for SGI Compiler (-r[0-9][0-9]*).
14368
14369 2005-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14370
14371         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Define Bourne and XSI
14372         variants of new function func_stripname for stripping literal
14373         prefixes and suffixes.
14374         * config/ltmain.m4sh (all over): Use func_stripname.
14375
14376         * tests/defs.m4sh: Extract $build from $LIBTOOL.
14377         (func_configure): Pass --host if $host != $build.
14378         (func_exec): Try executing cross-compiled binaries (e.g. i686 ->
14379         i386), but SKIP rather than FAIL.
14380         * tests/depdemo-relink.test: Do not try to access possibly non-
14381         existent files.  SKIP rather than FAIL or PASS falsely when
14382         cross-compiling.
14383
14384         * m4/libtool.m4 (_LT_SETUP) [mingw, cygwin, pw32, os2]:
14385         Add _LT_DECLs for host_os, build_alias, build and build_os.
14386         host_os and build were used in a few occasions in ltmain.m4sh
14387         and affect above-mentioned systems, the others are added for
14388         symmetry and in order to be able to detect cross-compiling.
14389
14390 2005-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14391
14392         * libltdl/Makefile.am: Add $(AM_LDFLAGS) to all per-target
14393         variables *_LDFLAGS as per CVS Automake semantic change.
14394
14395 2005-01-16  Peter O'Gorman  <peter@pogma.com>
14396
14397         * config/ltmain.m4sh (func_mode_link): Don't pass through
14398         compiler-like thread flags when using $LD to do the linking.
14399         Use compiler_flags instead.
14400         Reported by Mark_Andrews@isc.org.
14401
14402         * m4/libtool.m4 (LT_CMD_MAX_LEN) [osf]: On Tru64 there could
14403         be a kernel panic when testing the maximum command line length
14404         if exec_disable_arg_limit=1. Don't do the tests to figure it
14405         out on *-osf*.
14406         Reported by Dr. Hans Ekkehard Plesser
14407         <hans.ekkehard.plesser@umb.no>
14408
14409 2005-01-14  Guido Draheim  <guidod-2003-@gmx.de>  (tiny change)
14410
14411         * m4/libtool.m4 (AC_PROG_SED): Don't break test loop early.
14412
14413 2005-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14414
14415         * TODO: Update.
14416
14417         * libltdl/ltdl.c: Whitespace cleanup.
14418
14419         * config/ltmain.m4sh: New option `--verbose'/`-v' to enable
14420         override of `--silent'.  Verbose is the default behavior.
14421         * doc/libtool.texi (Invoking libtool): Document it.
14422
14423         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: While "parsing"
14424         /etc/ld.so.conf, skip comments.
14425         Reported by Jens Elkner <elkner@linofee.org>.
14426
14427 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14428
14429         * libltdl/libltdl/lt__glibc.h: Move all exported slist
14430         symbols into the lt__* namespace.
14431         * libltdl/libltdl/lt__private.h, libltdl/libltdl/slist.h:
14432         Adjust includes.
14433
14434 2005-01-10  Peter O'Gorman  <peter@pogma.com>
14435
14436         * config/ltmain.m4sh (func_mode_link): Fix
14437         inherited_linker_flags so it puts it on the link line when
14438         linking shared libraries as well as when linking executables.
14439         * tests/inherited_flags.at: test inherited_linker_flags.
14440         * tests/Makefile.am: Add test.
14441         * tests/testsuite.at: Add test.
14442         Reported by: Albert Chin-A-Young <china@thewrittenword.com>
14443
14444 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14445
14446         * tests/sh.test: After `set dummy [...]', check for `shift'
14447         within the same and following line.
14448         * config/ltmain.m4sh (func_enable_tag, func_mode_install)
14449         (func_mode_link): Sprinkle `shift's all over to conform to this.
14450
14451 2005-01-09  Gary V. Vaughan  <gary@gnu.org>
14452
14453         * HACKING (Editing 'ChangeLog'): Follow the GCS with respect to
14454         attributions, and mention how to handle tiny changes.
14455         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
14456
14457         * ChangeLog.2004: Trim 2005 entries.
14458         * ChangeLog: Add missing entries.
14459
14460 2005-01-08  Gary V. Vaughan  <gary@gnu.org>
14461
14462         * ChangeLog: Move 2004 change logs from here...
14463         * ChangeLog.2004: ...to here.
14464
14465         * m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
14466         m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4: RMS says,
14467         'I think the [license of autoconf macro files] should be:
14468         # This file is free software; the Free Software Foundation
14469         # gives unlimited permission to copy and/or distribute it,
14470         # with or without modifications, as long as this notice is
14471         # preserved.'.
14472
14473         * ChangeLog: Reformatting.
14474         * HACKING: Fix section numbering.
14475         (Editing 'ChangeLog'): New notes on ChangeLog entry format.
14476
14477 2005-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14478
14479         * tests/am-subdir.at tests/testsuite.at (AT_BOOTSTRAP,
14480         AT_LIBTOOLIZE, AT_CHECK_LIBTOOLIZE): Rename to ...
14481         (LT_AT_BOOTSTRAP, LT_AT_LIBTOOLIZE, LT_AT_CHECK_LIBTOOLIZE):
14482         ...and make use of new names.
14483
14484 2004-12-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14485
14486         * config/getopt.m4sh (func_version, func_usage, func_help):
14487         Use `$SED -n' instead of `$SED RANGE {..}; d' as AIX sed cannot
14488         handle the latter.
14489         (func_help): start autoconf and automake in subshells to avoid
14490         error messages from ash or Bourne shell if not available.
14491
14492 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14493
14494         * config/general.m4sh (func_quote_for_eval): Move backslash to
14495         beginning of character class, to work around old Bash bug.
14496         (func_quote_for_expand): Also test to avoid unnecessary fork.
14497
14498 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
14499             Gary V. Vaughan <gary@gnu.org>
14500
14501         * Makefile.am, bootstrap, clcommit.m4sh, libtoolize.m4sh,
14502         config/ltmain.m4sh: Replace `set --' with `set dummy [...]; shift'
14503         for portability.
14504         * tests/sh.test: Test for this.
14505
14506 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14507
14508         * libtoolize.m4sh, config/ltmain.m4sh (most functions): New
14509         variable $opt_debug is either `:' or `set -x' depending on
14510         --debug.  Execute at most function entries to cater for ksh which
14511         resets `-x'.
14512         * tests/defs.m4sh: Ditto for VERBOSE=debug.
14513
14514         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
14515         _LT_TAGVAR missing for `fix_srcfile_path'.
14516         [sysv4, sysv5]: _LT_TAGVAR missing for
14517         `export_dynamic_flag_spec'.
14518
14519         * doc/libtool.texi (all over): Use @option and @command.
14520         Some more minor formatting updates, typos.
14521
14522         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix variable quoting;
14523         allows lt_ECHO to match --fallback-echo again.
14524
14525         * config/ltmain.m4sh (func_extract_archives): Not all shells grok
14526         `read -r' (unnecessary in this case).
14527         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
14528
14529         * config/general.m4sh: New variable quote_scanset...
14530         (func_quote_for_eval, func_quote_for_expand): ...use it to work
14531         around SunOS ksh `case' backslash-escaping bug: protect character
14532         class by variable expansion.
14533         Reported by Alexander Kurz <alexander.kurz@qsc.de>.
14534
14535         * tests/quote.test: Restart under the correct shell (the one
14536         $ECHO was computed for).
14537
14538 2004-12-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14539
14540         * libltdl/lt__dirent.c: Include lt__private.h.
14541         * libltdl/libltdl/lt__private.h: Include lt__strl.h.
14542
14543 2004-12-20  Peter O'Gorman  <peter@pogma.com>
14544
14545         * config/ltmain.m4sh (func_extract_archives)
14546         (func_extract_an_archive): On darwin, uniq can not take the flags
14547         -cd together, thanks to Ralf for the fix, also ar does not accept
14548         N, so we use the fact that ar x libfoo.a foo.o will always extract
14549         the first foo.o in the archive and we then delete foo.o from the
14550         archive, which will also delete only the first foo.o, then rinse
14551         and repeat. Also add markers for the testuite.
14552         * m4/libtool.m4 (_LT_CONFIG): Add a marker so that we can use a
14553         sed expression to find the shell functions in libtool.
14554         * tests/functests.at: Test this feature.
14555         * tests/testsuite.at: Add the test.
14556         * tests/Makefile.am: Add the test.
14557
14558 2004-12-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14559
14560         * libtoolize.m4sh: Install `install-sh' as well, needed for
14561         configure.
14562         * Makefile.am, Makefile.maint: Install, update it.
14563         * NEWS, doc/libtool.texi (Distributing): Document it.
14564         Reported by Ross Boylan <ross@biostat.ucsf.edu>.
14565
14566         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Add '${wl}-z
14567         ${wl}text' to archive_cmds and archive_expsyms_cmds.  I.e., do not
14568         allow nopic in shared libraries.
14569
14570         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Change
14571         no_undefined_flag back to ' -z defs'.  Problems with linking
14572         against libgcc.a will have to be resolved differently.
14573
14574         * tests/demo-nopic.test [solaris, sunos]: Skip test.
14575
14576 2004-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14577
14578         * libtool.m4 [linux] (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG):
14579         Match icpc* and ecpc* (ia64 version of icpc) instead of only icpc.
14580
14581         * libltdl/lt__dirent.c (opendir) [mingw]: Fix write of constant
14582         strings past end of buffer.
14583         (opendir, readdir): Fix read past end of buffer.
14584
14585 2004-12-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14586
14587         * HACKING: Update list of non-Libtool-owned files.
14588
14589 2004-12-17  Akim Demaille <akim@epita.fr>
14590
14591         * libtoolize.m4sh (func_copy_all_from_path): Remove spurious eval.
14592
14593 2004-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14594
14595         * libltdl/ltdl.c (trim): Return error rather than do bogus
14596         null pointer arithmetic when parsing a malformed .la file.
14597
14598 2004-12-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
14599
14600         * libltdl/lt__strl.c, libltdl/libltdl/lt__strl.h: New files to
14601         emulate strlcat and strlcpy, which support size-bounded string
14602         copying and concatenation for improved security.
14603         * libltdl/Makefile.am: Optionally build source files
14604         libltdl/lt__strl.c and libltdl/libltdl/lt__strl.h.
14605         * m4/ltdl.m4 (LTDL_INIT): Add checks for strlcat and strlcpy.
14606
14607 2004-12-13  Albert Chin-A-Young  <china@thewrittenword.com>
14608
14609         * libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
14610         Append -G to link command-line on AIX to honor -brtl on
14611         command-line (runtime linking). Already done for IBM C/C++
14612         compilers.
14613
14614 2004-12-12  Patrick Welche <prlw1@newn.cam.ac.uk>
14615
14616         * configure.ac: Fix aclocaldir to use ${datadir}, not ${prefix}.
14617         Necessary for removal of old libtool.m4 files.
14618
14619 2004-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14620
14621         * config/ltmain.m4sh (func_extract_archive): Send stderr of $NM
14622         to /dev/null.
14623         Reported by Martin Waitz <tali@admingilde.org>.
14624
14625 2004-12-09  Albert Chin-A-Young  <china@thewrittenword.com>
14626
14627         * config/ltmain.m4sh: Preserve -model [arg] option, used
14628         with the Tru64 UNIX C++ compiler. This option selects the
14629         layout of C++ classes, name mangling, and exception handling.
14630
14631 2004-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14632
14633         * config/ltmain.m4sh (func_mode_finish) [solaris]: Fix [] escaping
14634         bug.
14635
14636         * config/ltmain.m4sh (all over the map): Make use of func_basename
14637         and func_dirname in most occasions.
14638
14639         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL, _LT_PROG_XSI_SHELLFNS): New
14640         macros to detect at `configure' time whether the shell supports
14641         some XSI extensions and to copy appropriate versions of new shell
14642         functions into `libtool' through `config.status'.  Copied
14643         functions are Bourne and XSI variants of func_basename,
14644         func_dirname (a variant of `dirname' suitable for libtool).
14645         (_LT_SETUP): Require _LT_CHECK_XSI_SHELL.
14646         (_LT_CONFIG):  Use _LT_PROG_XSI_SHELLFNS to insert into `libtool'
14647         at marker.
14648
14649         * config/ltmain.m4sh: Set marker for insertion of shell functions.
14650
14651         * config/general.m4sh (func_quote_for_eval): Only fork if the
14652         substitution matches.
14653
14654 2004-12-03  Gary V. Vaughan  <gary@gnu.org>
14655
14656         * TODO: Paste Peter's summary of the TODO thread starting at
14657         http://lists.gnu.org/archive/html/libtool/2004-11/msg00130.html.
14658
14659 2004-12-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
14660
14661         * config/ltmain.m4sh: Remove code which is no longer needed
14662         now that temp_rpath only contains fully-qualified elements.
14663
14664 2004-11-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14665
14666         * config/general.m4sh: basename sed-subst is anchored and thus
14667         does not need the `g' flag.
14668         (func_quote_for_eval): Return both the possibly double-quoted
14669         backslashified as well as only the backslashified argument.
14670         * config/ltmain.m4sh (func_mode_link): Use both return values,
14671         to save another sed_quote_subst application per cmdline arg.
14672
14673 2004-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14674
14675         * config/ltmain.m4sh (func_lalib_p): Update function
14676         description.
14677         (func_lalib_unsafe_p): New function with same functionality but
14678         written without forks; this function is safe to use for cases
14679         where the argument either does not exist or is required to be a
14680         lalib for correct operation.
14681         * NEWS: Mention the fact that stdin is not to be used.
14682         * config/ltmain.m4sh (func_mode_execute, func_mode_install)
14683         (func_mode_link): Use func_lalib_unsafe_p where appropriate.
14684         (func_mode_execute): For the program wrapper, use
14685         func_ltwrapper_p instead of func_lalib_p.
14686
14687         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Treat linux-dietlibc with
14688         the `diet' compiler wrapper (as opposed to the `diet-dyn' wrapper)
14689         as a static-only platform.
14690         * NEWS: Updated.
14691
14692         * libltdl/ltdl.c (trim): Use memcpy instead of strncpy here, to
14693         avoid problems with non-conforming strncpy.  This is safe here.
14694
14695         * m4/ltdl.m4 (LT_LIB_DLLOAD): Define HAVE_LIBDLLOADER if we
14696         have a dlloader to preload.
14697         * libltdl/ltdl.c (lt_dlinit): Only preload if HAVE_LIBDLLOADER, only
14698         declare preloaded_symbols then.  Fixes libltdl on static platforms.
14699         * NEWS: Updated.
14700
14701 2004-11-29  Gary V. Vaughan  <gary@gnu.org>
14702
14703         Add a search path option to libtoolize so that we can run it from
14704         the testsuite without pulling in the last installed macros and
14705         ltdl sources:
14706
14707         * libtoolize.m4sh:  Add a -I option to change libtoolize's search
14708         path for macro files, and libltdl master sources.
14709         (pkgvdatadir, pkgvmacrodir): Renamed...
14710         (pkgvdatadirs, pkgvmacrodirs): ...as they can now contain a ':'
14711         delimited list of directories.  Adjust all callers.
14712         (func_copy_all_from_path): New function to search a ':' delimited
14713         search path for a directory to copy.
14714         (func_serial_update, func_ltmain_update, func_config_update): New
14715         first parameter is a filename to search for.  srcdir parameter can
14716         now be a ':' delimited search path.  Adjust all callers.
14717         (func_copy_some_files): Ditto.
14718         Put srcfile_spec first in parameter list for consistency with
14719         other functions.  Adjust all callers.
14720         (func_copy_cb): func_copy adapter function to call func_copy
14721         correctly from func_copy_some_files.
14722         (func_filename_path_search): Return the full path to the first
14723         occurence of a named file found in a list of directories.
14724         * tests/testsuite.at (LIBTOOLIZE): Wrap exported LIBTOOLIZE
14725         initialisation in PREPARE_TESTS diversion to stop it being
14726         discarded when testsuite is generated.
14727         (AT_LIBTOOLIZE): Factor out libtoolize calls,
14728         and set search path to find macros and libltdl source files from
14729         the source tree.
14730         (AT_CHECK_LIBTOOLIZE): Test it.
14731         (AT_BOOTSTRAP): Adjust.  Split out call to make.
14732         * tests/am-subdir.at: Call make explicitly.
14733         (Makefile.am): Fix typo in ACLOCAL_AMFLAGS,
14734
14735 2004-11-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14736
14737         * config/ltmain.m4sh (func_mode_link): $dlsymsobj is really
14738         $symfileobj, bug exposed only in the static preloading case
14739         (symfileobj is created, but not linked into output).
14740
14741         * tests/demo-relink.test, tests/depdemo-relink.test: SKIP, don't
14742         FAIL if no shared libs available in demo/.  Do not try to access
14743         nonexistent files.
14744
14745         * libltdl/loaders/loadlibrary.c: Remove unneeded
14746         file-static variable.
14747
14748 2004-11-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
14749
14750         * config/ltmain.m4sh: Add fully-qualified paths to temp_rpath
14751         rather than unqualified paths in order to avoid possible errors
14752         when computing the fully-qualified path later.
14753
14754 2004-11-24  Jeff Squyres  <jsquyres@lam-mpi.org>
14755
14756         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
14757         (_LT_LANG_CXX_CONFIG) [linux]: Support for Portland Group (aka
14758         "pgi") compilers.
14759         * NEWS, THANKS: Updated.
14760
14761 2004-11-24  Gary V. Vaughan  <gary@gnu.org>
14762
14763         * Makefile.am: Move Autotest rules from here...
14764         * tests/Makefile.am: ...to here.
14765         * bootstrap: Adjust.  Also, create temporary Makefile from
14766         tests/Makefile.am so that bootstrap can create the Autotest
14767         testsuite.
14768
14769 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
14770
14771         If the user's login shell is something crazy like, oooh,
14772         /bin/tcsh, trying to execute bourne shell helper scripts with
14773         the `$SHELL /path/to/helper $helper_flags' idiom incase the
14774         execute bits were lost by say, eeer, cvs, is gonna blow up in
14775         our faces.  This changeset tries to save these people from
14776         their shells^H^H^H^H^H^H^H^H^Hmselves :->
14777
14778         * tests/defs.m4sh (SHELL): Move definition from here...
14779         * config/general.m4sh (SHELL): ...to here.
14780
14781 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
14782
14783         The ltdl.h header is the published interface to libltdl, and
14784         is thus not installed to $prefix/include/libltdl.  It has always
14785         been used with `#include <ltdl.h>', so move just that one file
14786         back to where it was before:
14787
14788         * libltdl/libltdl/ltdl.h: Moved from here...
14789         * libltdl/ltdl.h: ...to here.
14790         * libltdl/Makefile.am: Adjust.
14791
14792 2004-11-23  Peter O'Gorman  <peter@pogma.com>
14793
14794         Do not require that libtoolize --ltdl=/some/path end in libltdl.
14795         Move most libltdl headers to libltdl/libltdl to allow
14796         `#include <libltdl/ltdl.h>' to always work:
14797
14798         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for includes
14799         in the new location.
14800         * libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
14801         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
14802         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
14803         libltdl/libltdl/lt_system.h, libltdl/libltdl/ltdl.h,
14804         libltdl/libltdl/slist.h: Added files, moved from libtdl/.
14805         * libltdl/lt__alloc.h, libltdl/lt__dirent.h, libltdl/lt__glibc.h,
14806         libltdl/lt__private.h, libltdl/lt_dlloader.h, libltdl/lt_error.h,
14807         libltdl/lt_system.h, libltdl/ltdl.h, libltdl/slist.h: Removed, moved
14808         to libltdl/libltdl.
14809
14810 2004-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14811
14812         * doc/libtool.texi (LT_INIT): s/libtool 1.6/libtool 2.0/.
14813         (Invoking libtoolize): Fix typo.
14814
14815 2004-11-22  Gary V. Vaughan  <gary@gnu.org>
14816
14817         * config/ltmain.m4sh (func_mode_install): Now that func_mktempdir
14818         has been improved, the default directory template is perfectly
14819         fine.
14820
14821         * doc/libtool.texi (Invoking libtoolize): Improve documentation
14822         for use of ACLOCAL_AMFLAGS and AC_CONFIG_MACRO_DIR.
14823
14824 2004-11-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14825
14826         * m4/libtool.m4 (_LT_TAG_COMPILER): Document that with_gcc is
14827         tag-dependent.
14828
14829         * m4/libtool.m4, tests/demo-nopic.test: Undo bogus commit.
14830
14831         * config/ltmain.m4sh (func_mode_link), tests/objectlist.test:
14832         Make sure the argument to `-objectlist' may contain spaces.
14833
14834 2004-11-19  Gary V. Vaughan  <gary@gnu.org>
14835
14836         * config/m4general.m4sh, config/mailnotify.m4sh,
14837         clcommit.m4sh: Updated from cvs-utils--tla--1.0 to allow
14838         parallel commits, and use safer tmpfiles.
14839
14840 2004-11-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14841
14842         * doc/libtool.texi (Libltdl interface): Typos.
14843
14844         * doc/libtool.texi (Libltdl interface): Document public macros
14845         LT_PATHSEP_CHAR, LT_DIRSEP_CHAR, use in path descriptions.
14846
14847 2004-11-18  Daniel Reed  <djr@redhat.com>
14848
14849         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: Interpret
14850         `include' statements in toplevel ld.so.conf file.
14851
14852 2004-11-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14853
14854         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
14855         tag-protect setting of ld_shlibs.
14856
14857 2004-11-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14858
14859         * doc/libtool.texi (Libltdl interface): The path separator
14860         is system-dependent.
14861
14862         * doc/libtool.texi (Linking static libraries): Typo.
14863
14864         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
14865         [aix4/aix5 !ia64]: Set whole_archive_flag_spec to '$convenience'
14866         so convenience libs are really added to the link cmdline.
14867
14868 2004-11-17  Mats Rynge  <rynge@isi.edu>
14869
14870         * libtool.m4 [linux]: Use only the CC basename in case statment
14871         when checking for icc/ecc.  Allows for setting CC to the full path
14872         to the compiler.
14873
14874         * libtool.m4 [solaris]: Added missing 'with linker' flags to
14875         -z allextract ... -z defaultextract flags
14876
14877 2004-11-14  Gary V. Vaughan  <gary@gnu.org>
14878
14879         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Typo: s/--rpath/-rpath/g.
14880         (_LT_LANG_CXX_CONFIG): Ditto.
14881
14882         * configure.ac (APIVERSION): New substituted variable.
14883         (pkgvdatadir): Ditto.  Versioned data directory.
14884         (pkgvmacrodir): Ditto.  Versioned aclocal directory.
14885         (LN): New check for LN command.
14886         * Makefile.am (aclocal_DATA): Replaced with...
14887         (pkgvmacro_DATA): ...this.
14888         (install-data-local): Remove old shared resources.
14889         (install-exec-hook): Make versioned links to executables.
14890         (uninstall-hook): Remove versioned files.
14891         * libltdl/Makefile.am (ltdldatadir): Redefine in terms of
14892         pkgvdatadir.
14893         * libltdl/loaders/Makefile.am (ltdldatadir): Ditto.
14894         * libtoolize.m4sh: Copy macro files from versioned macro directory
14895         instead of shared aclocal directory.
14896         * doc/libtool.texi: Document it.
14897         * NEWS: Updated.
14898
14899 2004-11-10  Gary V. Vaughan  <gary@gnu.org>
14900
14901         From James Henstridge <james@jamesh.id.au>:
14902         * m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4: Added commented out
14903         empty macro definitions to match each AU_DEFUN to help aclocal
14904         from automake-1.4 regexps find the right libtool macro files.
14905
14906 2004-11-10  James E Wilson  <wilson@specifixinc.com>,
14907             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14908
14909         * config/ltmain.m4sh (func_mode_link), tests/Makefile.am,
14910         Fix error message with `-objectlist' file that does not exist.
14911         * tests/objectlist.test:  New test for this.
14912
14913         * Makefile.am: config/ltmain.sh is generated by
14914         config/ltmain.m4sh.
14915
14916 2004-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14917
14918         * doc/libtool.texi (Compile mode, Link mode,
14919         Libltdl interface, Test descriptions, libtool script
14920         contents): Some quote cleanup, more use of texinfo types.
14921
14922         * doc/libtool.texi (libtool script contents):
14923         echo is now ECHO; mention argument restriction.
14924
14925         * doc/libtool.texi (Multiple dependencies): Minor rewording.
14926
14927         * doc/libtool.texi (User defined module data, References):
14928         indentation and word-wrap cleanup.
14929
14930         * doc/libtool.texi (all over): White space cleanup:
14931         two spaces at start of sentence, no TABs.
14932
14933 2004-11-09  Gary V. Vaughan  <gary@gnu.org>,
14934             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14935
14936         * doc/libtool.texi (libtool script contents): Fix description
14937         of need_lib_prefix.
14938
14939 2004-11-08  Peter Ekberg  <spam.protected>
14940
14941         * config/ltmain.m4sh (func_mode_link): forward thread
14942         related flags to dependent applications and libraries
14943         by adding them to `inherited_linker_flags'.
14944
14945 2004-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14946
14947         * m4/ltoptions.m4: Change all references of LT_LIBTOOL_INIT
14948         to LT_INIT.
14949
14950 2004-11-05  Peter Ekberg  <spam.protected>
14951
14952         * ltmain.m4sh (cwrappersource): clean up other warning on MinGW.
14953
14954 2004-11-04  Bernhard Fischer  <spam.protected>,
14955             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14956
14957         * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS), m4/ltoptions.m4
14958         (_LT_SET_OPTIONS), README, README.alpha: Typos.
14959
14960 2004-11-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14961
14962         * libltdl/ltdl.c (parse_dotla_file): Fix memleak.
14963
14964         * ltmain.m4sh (cwrappersource): Cast isalpha arguments correctly.
14965
14966 2004-11-03  Peter Ekberg  <spam.protected>
14967
14968         * ltmain.m4sh (cwrappersource): clean up warnings and
14969         #include errors on MinGW.
14970
14971 2004-11-01  Peter Ekberg  <spam.protected>
14972
14973         * config/ltmain.m4sh (cwrappersource): clean up warnings and
14974         #include errors.
14975
14976 2004-11-01  Peter Ekberg  <spam.protected>
14977
14978         Sometimes, a wrapper script is generated for an executable that,
14979         itself, does not link against an uninstalled library.  It appears
14980         that this can happen if you are building a project where:
14981
14982           (1) there is a library
14983           (2) there is an executable that does not, itself, link against
14984               that library
14985
14986         In this case, notinst_deplibs is empty, and when the wrapper
14987         script is loaded by libtool during ./libtool mode=install, there
14988         is a check for "is notinst_deplibs empty".  In this case, it is,
14989         so libtool reports an error.
14990
14991         I don't think it is wrong to have a wrapper script for an exe that
14992         *technically* doesn't need it.  But instead of checking for
14993         notinst_deplib nonempty as a proxy for "did wrapper script get
14994         sourced into my environment properly" a different var should be
14995         used.
14996
14997         * config/ltmain.m4sh (func_mode_install): set new variable
14998         `generated_by_libtool_version' in wrapper script when using
14999         libtool_install_magic.  When verifying that wrapper script was
15000         properly sourced, check that `generated_by_libtool_version' is
15001         non-empty, instead of using notinst_deplibs.
15002
15003 2004-11-01  Charles Wilson  <spam.protected>,
15004             Peter Ekberg  <spam.protected>
15005
15006         * config/ltmain.m4sh (func_mode_install): On Windows based hosts,
15007         ensure that import libraries don't get stripped.
15008         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): On Windows based hosts,
15009         use postinstall_cmds to strip DLL (not import lib!) when symbol
15010         stripped installation was requested.
15011
15012 2004-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15013
15014         * libltdl/ltdl.c (loader_init_callback): Back out broken cast.
15015
15016         * libltdl/ltdl.c (loader_init_callback, lt_dlexit): Add casts to
15017         target type.
15018
15019         * tests/defs.m4sh (func_exec): `shift'ing when there is nothing
15020         to shift is non-portable.
15021
15022 2004-10-28  Patrick Welche  <prlw1@newn.cam.ac.uk>,
15023             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15024
15025         * Makefile.am, Makefile.maint: Use path for dependencies built
15026         in the source tree, to cater for BSD make.
15027
15028 2004-10-24  Noah Misch  <noah@cs.caltech.edu>
15029
15030         * config/ltmain.m4sh (func_lalib_p, func_ltwrapper_p): New
15031         functions that abstract .la sanity checking.
15032         (func_mode_execute, func_mode_install, func_mode_link)
15033         (func_mode_uninstall): Use them.
15034
15035 2004-10-24  Gary V. Vaughan  <gary@gnu.org>
15036
15037         * config/ltmain.m4sh (opt_silent): Whether --silent was given.
15038         (run, show): Deleted.  All callers converted to opt_dry_run,
15039         opt_silent or calls to func_show_eval.
15040         * tests/mdemo-dryrun.test: Adjust.
15041
15042         * HACKING: Fix a typo in the gpg --verify instructions.
15043
15044         * Makefile.maint (cvs-dist): Generate signatures and directives
15045         for bz2 upload.
15046
15047 2004-10-23  Peter O'Gorman  <peter@pogma.com>
15048
15049         * config/ltmain.m4sh (func_mode_link): Make Gary's new tests
15050         pass. When the output wrapper script is not in the current
15051         directory, we can not use an rpath which is relative to the
15052         current directory. Use an absolute path instead.
15053
15054 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
15055
15056         * clcommit.m4sh: Add --rcfile option.
15057
15058         * clcommit.m4sh: Updated again, to support file list limited
15059         commits to CVS, and to fix another occurence of the bash bug
15060         that was preventing non-tla users from sending a commit mail.
15061
15062 2004-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15063
15064         * TODO, libltdl/lt_error.h, libltdl/ltdl.c, libltdl/ltdl.h:
15065         Undo accidental commit.
15066
15067         * Makefile.maint: Fix typo.
15068
15069 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
15070
15071         * clcommit.m4sh, config/mailnotify.m4sh: Updated from
15072         cvs-utils--tla--1.0 to fix quoting of metachars in patch names.
15073
15074         * HACKING: Updated: `.in' files are now `.m4sh'; document some
15075         more coding standards for these files.
15076
15077         * config/general.m4sh (sed_double_backslash): Undo an
15078         over-optimisation.
15079
15080 2004-10-21  Gary V. Vaughan  <gary@gnu.org>
15081
15082         * AUTHORS: Reformatted to better reflect the current state of
15083         Libtool maintainership.
15084         * THANKS: Reformatted to give maintainers a quick way to look
15085         up who has supplied FSF paperwork.
15086
15087 2004-10-21  Noah Misch  <noah@cs.caltech.edu>,
15088             Gary V. Vaughan  <gary@gnu.org>
15089
15090         * config/general.m4sh (sed_double_backslash): Improve this sed
15091         expression to correct left anchored \$ input to
15092         double_quote_subst, as well as backslash escaped $ preceded by
15093         any odd-numbered amount of \ characters.
15094
15095 2004-10-20  Gary V. Vaughan  <gary@gnu.org>
15096
15097         * config/general.m4sh (sed_double_backslash): New sed expression
15098         to escape \$ properly in combination with double_quote_subst.
15099         (func_quote_for_eval): Four space indent margin for functions!
15100         (func_quote_for_expand): Use $sed_double_backslash.
15101         (func_show_eval): New function that echos an escaped but variable
15102         expanded command, and then evaluates it.
15103
15104 2004-10-20  Noah Misch  <noah@cs.caltech.edu>,
15105             Gary V. Vaughan  <gary@gnu.org>
15106
15107         * m4/libtool.m4 (sed_quote_subst): Remove superfluous backslashes
15108         from the match character set.
15109         (double_quote_subst): Ditto.
15110         * config/general.m4sh (sed_quote_subst): Ditto.
15111         (double_quote_subst): New variable, copied from
15112         m4/libtool.m4. Much the same as sed_quote_subst, but variable
15113         references are not quoted.
15114         (func_quote_for_eval): Given any $foo; $bar and
15115         $foo must be identical after the following commands:
15116             func_quote_for_eval "$foo"
15117             eval "bar=$func_quote_for_eval_result"
15118         (func_quote_for_expand): In a similar vein to to func_quote_for_eval,
15119         except that variable expansions are not protected when quoting the
15120         command for subsequent display.
15121         * config/ltmain.m4sh: Factor away use of $sed_quote_subst now that
15122         it has been subsumed into func_quote_for_eval.
15123         (func_mode_link): Instead of `2004-10-14 Peter O'Gorman' below,
15124         use func_quote_for_expand so that ${wl} is expanded properly in
15125         the $show expression.
15126
15127 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
15128
15129         * config/ltmain.m4sh (func_mode_finish): solaris-2.6 also has
15130         crle(1).
15131         Reported by Albert Chin-A-Young <china@thewrittenword.com>
15132
15133 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
15134
15135         Add some new tests for Libtool's support of Automake
15136         subdir-objects builds.  This marks the beginning of a move to an
15137         Autotest driven test framework, which will eventually allow us to
15138         trim away many of the generated files in the current test demo
15139         subdirectories:
15140
15141         * configure.ac (AC_CONFIG_TESTDIR): Re-enable commented out
15142         Autotest macros.
15143         (AUTOTEST, M4SH): Use --language long hand.
15144         * bootstrap: Generate tests/testsuite, and by implication
15145         tests/package.m4.
15146         * Makefile.am (edit): Add substitutions needed to generate
15147         tests/package.m4 from bootstrap.
15148         (check-recursive): Add tests/testsuite.
15149         (TESTSUITE): The new Autotest testsuite target.
15150         (TESTSUITE_AT): The Autotest sources.
15151         (EXTRA_DIST): Distribute the generated testsuite and sources.
15152         (tests/package.m4): Use $(edit) to propagate package metadata to
15153         the new tests.
15154         (tests/testsuite): Build the testsuite.
15155         (tests/atconfig): How to regenerate the file.
15156         (check-local): Hook Autotest into `make check'.
15157         (installcheck-local): Run the testsuite on the installed tree.
15158         (clean-local): Tidy our file droppings.
15159         * tests/Makefile.am: Remove bitrotted code from Autotest
15160         experiments in Autoconf 2.52 era.  Updated the rest and moved into
15161         Makefile.am.
15162         * tests/testsuite.at: New container for Autotest test groups.
15163         * tests/am-subdir.at: New test group for compatibility with
15164         Automake's subdir-objects builds.  Currently holds two tests, one
15165         for a C project and another similar project in C++.
15166         * TODO: Add an entry to remind us that these new tests expose a
15167         bug in libtool.
15168         * NEWS: Updated.
15169
15170 2004-10-14  Peter O'Gorman  <peter@pogma.com>
15171
15172         * config/ltmain.m4sh: Revert most of my last commit, only eval
15173         \$show \"$cmds\", and only when building a library. I'm a wimp.
15174         Thanks Gary for pointing out errors in previous commit.
15175
15176 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
15177
15178         * config/ltmain.m4sh (func_mode_finish): Mention crle(1) on
15179         solaris 2.7 and higher in the finalisation notes.
15180         Reported by Kurt J. Lidl <lidl@pix.net>
15181
15182         * tests/cdemo-undef.test: New test for hosts that allow shared
15183         libraries with undefined symbols, but have no C++ compiler
15184         installed.
15185         * tests/Makefile.am (COMMON_TESTS): Add it.
15186
15187 2004-10-13  Peter O'Gorman  <peter@pogma.com>
15188
15189         * config/ltmain.m4sh: Make sure that we $show what we will $run,
15190         use eval $show if we do $run eval.
15191
15192 2004-10-13  Charles Wilson  <spam.protected>
15193
15194         * config/ltmain.m4sh: add foo/bin for every foo/lib
15195         in dllsearchpath when creating wrapper script.  Fixes
15196         depdemo-relink test failure.
15197
15198 2004-10-12  Charles Wilson  <spam.protected>
15199
15200         * config/ltmain.m4sh (func_mode_link): don't relink
15201         on cygwin/mingw; no need.  But do ensure that wrappers
15202         are created unless doing a purely static build.
15203
15204 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
15205
15206         * tests/tagdemo-undef.test: New test for hosts that allow shared
15207         libraries with undefined symbols.
15208         * tests/Makefile.am (CXX_TESTS): Add it.
15209
15210 2004-10-11  Charles Wilson  <spam.protected>
15211
15212         * tests/link.test: Fix check for use of libnlsut.a under
15213         Cygwin.
15214
15215 2004-10-11  Noah Misch  <noah@cs.caltech.edu>
15216
15217         * tests/quote.test: Do not look for $preargs in the output,
15218         because libtool may change them.
15219
15220 2004-10-10  Charles Wilson  <spam.protected>
15221
15222         * config/ltmain.m4sh: Really don't require versions of GNU
15223         sed newer than 3.02 for Cygwin and MinGW, and don't break
15224         dryrun mode.
15225
15226 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15227
15228         * config/getopt.m4sh: Under MinGW, reported paths may include ':'
15229         so ':' should not be used as the sed delimiter.  Use '*' instead
15230         since it is very unlikely to appear in a path.
15231
15232 2004-10-10  Albert Chin-A-Young  <china@thewrittenword.com>
15233
15234         * config/ltmain.m4sh: Don't require versions of GNU sed newer than
15235         3.02 for Cygwin and MinGW.
15236
15237 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15238
15239         * tests/pdemo-inst.test: Correction for mis-application of
15240         Charles Wilson's earlier patch.
15241
15242 2004-10-09  Gary V. Vaughan  <gary@gnu.org>
15243
15244         * m4/libtool.m4 (_LT_LANG_F77_CONFIG): Make sure the save and
15245         restore code for CC is nested at the same depth.
15246         (_LT_LANG_CXX_CONFIG): Ditto, but for several variables.
15247
15248 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15249
15250         Update to the latest commit and mailnotify scripts from
15251         gary@gnu.org--2004/cvs-utils--tla--1.0:
15252
15253         * commit, config/mailnotify: Removed.  Now built from...
15254         * clcommit.m4sh, config/mailnotify.m4sh: ...these new sources.
15255         * Makefile.maint (commit, config/mailnotify): How to build them.
15256         * bootstrap: If we have a checked out tree (i.e. clcommit.m4sh
15257         is present), then build them.
15258
15259 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15260
15261         Fix some issues that mangled the reexecution path to a script,
15262         and thus prevented it from finding itself:
15263
15264         * config/general.m4sh (progname): Don't actually change the name
15265         of the script if it begins with a `-', just prepend `./'.
15266         (progpath): Add a new clause that first searches the execution
15267         PATH, and then finally assumes this script is in the current
15268         working directory if $progname has no directory separators (e.g
15269         when invoked as `$SHELL progname').
15270
15271 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15272
15273         * config/general.m4sh (func_verbose): Work around a bash bug in
15274         shell functions.
15275
15276 2004-10-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
15277
15278         * tests/pdemo-inst.test: pdemo-inst should depend on pdemo-make.
15279         * config/ltmain.m4sh: Windows and Cygwin reserve the .lnk
15280         extension to represent shortcuts.  Use the extension ".lnkscript"
15281         rather than ".lnk" for the piecewise linking ld script in order to
15282         avoid the conflict.
15283
15284 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15285
15286         * libltdl/ltdl.c (lt_dlexit, lt_dlpath_insertdir): Fix memleaks,
15287         free user_search_path on lt_dlexit.
15288
15289 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15290
15291         * tests/sh.test: Remove tests which fail on AS_SHELL_SANITIZE
15292         from autoconf >= 2.59.
15293
15294         * TODO: Remove item: no need for a libltdl without stdio.
15295
15296 2004-10-07  Gary V. Vaughan  <gary@gnu.org>
15297
15298         * tests/defs.m4sh (scripts): Actually scan the generated ltmain.sh
15299         for shell portability problems.
15300
15301         * m4/libtool.m4 (_LT_FORMAT_COMMENT): Shell meta-characters in
15302         _LT_DECL descriptions were not being escaped before injection into
15303         TAG CONFIG here documents in config.status.
15304
15305 2004-10-06  Peter O'Gorman  <peter@pogma.com>
15306
15307         * m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77): New macros to work
15308         around the deficiencies in AC_PROG_CXX and AC_PROG_F77.
15309         * configure.ac: Cleaned up, having moved the checks for compilers
15310         which do not exist to libtool.m4.
15311
15312 2004-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15313
15314         * libltdl/ltdl.c (try_dlopen): Move .la file parsing
15315         part.. (parse_dotla_file): ..here.  Adjust.
15316
15317         * libltdl/ltdl.c (load_deplibs, try_dlopen): Revert unnecessary casts
15318         to int from my patch from 2004-10-01.
15319
15320         * AUTHORS: Add myself.
15321
15322 2004-10-05  Peter O'Gorman  <peter@pogma.com>
15323
15324         * config/ltmain.m4sh [darwin]: Make the -dylib_file flag work on
15325         older darwins too. Reported by Christoph Egger.
15326
15327 2004-10-05  Gary V. Vaughan  <gary@gnu.org>
15328
15329         * configure.ac: Bumped version to 2.1a.
15330
15331 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
15332
15333         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Don't confuse $ECHO
15334         with $lt_ECHO, or we always get a libtool with ECHO=echo, rather
15335         than testing for a mechanism that quotes \ properly.
15336         * NEWS: Updated.
15337
15338         * config/ltmain.m4sh: Need to include getopt.m4sh earlier so that
15339         progpath is set before it is called to --no-reexec.
15340         * NEWS: Updated.
15341
15342 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
15343
15344         Without this change, the distributed libtool tarball has a
15345         dependency on autom4te.  There was some inconsistency in the
15346         filenames: now we have foo.m4sh -> m4sh -> foo.in -> configure
15347         -> foo[.sh].  Bootstrap runs the m4sh steps and the resulting .in
15348         files are distributed:
15349
15350         * tests/Makefile.am (EXTRA_DIST): Distribute defs.m4sh.
15351         * Makefile.am (EXTRA_DIST): Distribute libtoolize.m4sh.
15352         (libtoolize.in, libtoolize): Split into bootstrap and runtime
15353         stages.
15354         ($(top_srcdir)/tests/defs.in, $(top_srcdir)/tests/defs): Ditto.
15355         ($(top_srcdir)/config/ltmain.sh): Swap ltmain.m4sh and ltmain.in
15356         names.
15357         * bootstrap: Make libtoolize.in and tests/defs.in.
15358         * NEWS: Updated.
15359
15360 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15361
15362         * README, README.alpha: Update notes regarding available VERBOSE
15363         settings.
15364
15365 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15366
15367         * config/ltmain.in: Change $XSED to $Xsed to fix hang noticed
15368         under MinGW.
15369         * tests/defs.in: Support VERBOSE=debug to enable shell tracing
15370         while running tests.
15371
15372 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
15373
15374         * NEWS: Updated.
15375         * configure.ac: Bumped version to 1.9e.
15376
15377         GNU libtool 1.9d was released.
15378
15379         * configure.ac: Bumped version to 1.9d.
15380         * NEWS: Updated.
15381
15382         * libltdl/lt__alloc.h (lt__alloc_die): Declare with LT_SCOPE as
15383         per Ralf's original patch.
15384         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15385
15386         * libltdl/Makefile.am (libltdlc_la_LIBADD): Don't use
15387         libdlloader_la_OBJECTS, an undocumented Automake internal
15388         variable...
15389         (libltdlc_la_SOURCES): ...use libdlloader_la_SOURCES here
15390         instead.
15391         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15392
15393         * libltdl/argz_.h: Forgot to spell lt_system.h with just one `_'.
15394
15395         * libltdl/argz_.h: Forgot to include lt__system.h for LT_SCOPE
15396         definition.
15397
15398 2004-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
15399             Gary V. Vaughan  <gary@gnu.org>
15400
15401         * libltdl/lt__alloc.h: Declare exported functions with LT_SCOPE
15402         for mingw32.
15403         * libltdl/lt__dirent.h: Ditto.
15404         * libltdl/argz._h: Ditto.  Be careful about not requiring
15405         additional libltdl files when used outside of libltdl.
15406         * libltdl/slist.h: Ditto.
15407         * HACKING: Add a section on libltdl implementation layering.
15408
15409 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
15410
15411         * tests/quote.test: echo is called ECHO now.  Make sure we extract
15412         the value of ECHO from the libtool script.
15413         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15414
15415 2004-10-02  Gary V. Vaughan  <gary@gnu.org>
15416
15417         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7*]: Revert my
15418         hack from 2004-09-30 now that I've removed /lib/hello.la and the
15419         tests work properly for me again.
15420
15421 2004-10-02  Jim Tison  <jtison@us.ibm.com>
15422
15423         Initial support for s390x-ibm-tpf:
15424
15425         * m4/libtool.m4: Correct obvious spelling errors in remarks.
15426         (_LT_ENABLE_LOCK): Make s390x-ibm-tpf hosts adopt elf64_s390
15427         conventions.
15428         (_LT_SYS_DYNAMIC_LINKER): Set defaults for s390x-ibm-tpf host.
15429         (_LT_CHECK_MAGIC_METHOD): Skip all dependency checks for
15430         s390x-ibm-tpf hosts.
15431         (_LT_LINKER_SHLIBS): Make s390x-ibm-tpf hosts adopt GNU/Linux OS
15432         attributes.
15433         * NEWS: Updated.
15434
15435 2004-10-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15436
15437         * config/ltmain.in (func_mode_install): Need to set $tmpdir before
15438         using it.
15439
15440         * config/ltmain.in (func_mode_link): Fix quoting bug.  Fixes
15441         e.g. the quoting of the -export-symbols-regex argument in .la
15442         files' relink_command.
15443
15444         * libltdl/lt__alloc.c (lt__memdup): Allocation can fail, so we
15445         need to guard against null pointer dereference here.
15446         * libltdl/ltdl.c (lt_dlcaller_register): Ditto.
15447
15448         * libltdl/slist.c (slist_foreach): result was declared as
15449         inner variable, shadowing the actually returned value.
15450
15451         * libltdl/ltdl.c (load_deplibs, try_dlopen): Cast argument
15452         to isspace/isalnum to the correct range.  Also, cast to int to
15453         avoid compiler warnings.
15454
15455 2004-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15456
15457         * libltdl/ltdl.c (try_dlopen): Fix null pointer dereference in
15458         case the name given to lt_dlopen contains no extension.
15459
15460         * libltdl/lt_dlloader.c (lt_dlloader_remove), libltdl/ltdl.c
15461         (tryall_dlopen, lt_dlhandle_next): Show usage of function pointers.
15462
15463         * doc/libtool.texi (LT_INIT, Using libltdl)
15464         (Module loaders for libltdl, Multiple dependencies)
15465         (libtool script contents): Fix several typos (trivial change).
15466         Also, libltdl consists of more than two small files.
15467
15468 2004-09-30  Gary V. Vaughan  <gary@gnu.org>
15469
15470         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7]: My Panther
15471         workstation doesn't hardcode the shared library path, although it
15472         used to, so this is more likely a function of the binutils and/or
15473         gcc I am using at the moment.  The hardcode value setting code for
15474         the configure script sucks at the moment though...
15475         * TODO: ...and needs to do a test compile instead of a table
15476         lookup before 2.0 final.
15477
15478         * m4/libtool.m4 (echo): Use ECHO throughout for consistency with
15479         config/ltmain.in.
15480         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15481
15482         * m4/libtool.m4 (rm): Use RM throughout for consistency with
15483         config/ltmain.in.
15484         Reported by Charles Wilson <cwilson@spam.protected>
15485
15486 2004-09-27  Peter O'Gorman  <peter@pogma.com>
15487
15488         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
15489         output during configure. (Really this time, honest)
15490
15491 2004-09-26  Albert Chin-A-Young  <china@thewrittenword.com>
15492
15493         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [aix]: In archive_expsym_cmds,
15494         move -bnoentry linker option before $compiler_flags to honor any
15495         possible -e entries in LDFLAGS.
15496
15497 2004-09-25  Gary V. Vaughan  <gary@gnu.org>
15498
15499         * config/ltmain.in (func_mode_link): When linking an installed
15500         libtool library on the command line using -lfoo we need to find
15501         the library in the search paths and add it's dependency_libs to
15502         the link in the conv pass so that any libtool libs listed are
15503         correctly expanded in the link pass.
15504
15505 2004-09-24  Charles Wilson  <cwilson@spam.protected>
15506
15507         * libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Revert changeset from
15508         `2004-09-22  Charles Wilson  <cwilson@spam.protected>'.
15509
15510 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
15511
15512         * config/general.m4sh (Xsed): Set a default when not used from
15513         ltmain.in.
15514         (ECHO): Audit for (and correct!) uses of $ECHO with more than one
15515         argument, which breaks when ECHO='printf %s\n', and with possible
15516         `-' as first character of the argument, which breaks `print -r'
15517         and some implementations of `echo'.
15518         * config/ltmain.in, tests/defs.in, libtoolize.in (ECHO): Ditto.
15519         Reported by Albert Chin-A-Young <china@thewrittenword.com>
15520
15521 2004-09-24  Peter O'Gorman  <peter@pogma.com>
15522
15523         * m4/libtool.m4 (_LT_CMD_STRIPLIB) [darwin]: strip archives too.
15524
15525         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
15526         output during configure.
15527
15528 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
15529
15530         * m4/libtool.m4 (_LT_DECL_EGREP): Only the newest CVS autoconf
15531         AC_SUBSTs for GREP.  Do our own here too to cater for release
15532         autoconfen.
15533
15534         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [openbsd3.3]: Set
15535         need_version to yes or no depending on the os release.
15536         Reported by Dalibor Topic <robilad@kaffe.org>
15537
15538 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
15539
15540         * tests/cdemo-conf.test, tests/cdemo-exec.test,
15541         tests/cdemo-make.test, tests/cdemo-shared.test,
15542         tests/cdemo-static.test, tests/demo-conf.test,
15543         tests/demo-deplibs.test, tests/demo-exec.test,
15544         tests/demo-hardcode.test, tests/demo-inst.test,
15545         tests/demo-make.test, tests/demo-nofast.test,
15546         tests/demo-noinst-link.test, tests/demo-nopic.test,
15547         tests/demo-pic.test, tests/demo-relink.test,
15548         tests/demo-shared.test, tests/demo-static.test,
15549         tests/demo-unst.test, tests/depdemo-conf.test,
15550         tests/depdemo-exec.test, tests/depdemo-inst.test,
15551         tests/depdemo-make.test, tests/depdemo-nofast.test,
15552         tests/depdemo-relink.test, tests/depdemo-shared.test,
15553         tests/depdemo-static.test, tests/depdemo-unst.test,
15554         tests/f77demo-conf.test, tests/f77demo-exec.test,
15555         tests/f77demo-make.test, tests/f77demo-shared.test,
15556         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
15557         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
15558         tests/mdemo-exec.test, tests/mdemo-inst.test,
15559         tests/mdemo-make.test, tests/mdemo-shared.test,
15560         tests/mdemo-static.test, tests/mdemo-unst.test,
15561         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
15562         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
15563         tests/pdemo-exec.test, tests/pdemo-inst.test,
15564         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
15565         tests/suffix.test, tests/tagdemo-conf.test,
15566         tests/tagdemo-exec.test, tests/tagdemo-make.test,
15567         tests/tagdemo-shared.test, tests/tagdemo-static.test,
15568         tests/tagtrace.test: POSIX `.' searches only in user's $PATH, so
15569         we must use `. ./defs' to source the common code.
15570         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
15571
15572         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Gah.  Merge error
15573         corrected.
15574
15575 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
15576
15577         Since defs can change (path to grep for example) when it is made
15578         for a different host, it can't be shipped.  That also means that
15579         defs will always be generated in the build tree, so each test case
15580         can have the srcdir discovery factored away into tests/defs.in:
15581
15582         * Makefile.am (EXTRA_DIST): s/defs/defs.in/g
15583         * tests/Makefile.am (defs): New rule to remake defs from the
15584         parent directory's Makefile.
15585         * tests/cdemo-conf.test, tests/cdemo-exec.test,
15586         tests/cdemo-make.test, tests/cdemo-shared.test,
15587         tests/cdemo-static.test, tests/demo-conf.test,
15588         tests/demo-deplibs.test, tests/demo-exec.test,
15589         tests/demo-hardcode.test, tests/demo-inst.test,
15590         tests/demo-make.test, tests/demo-nofast.test,
15591         tests/demo-noinst-link.test, tests/demo-nopic.test,
15592         tests/demo-pic.test, tests/demo-relink.test,
15593         tests/demo-shared.test, tests/demo-static.test,
15594         tests/demo-unst.test, tests/depdemo-conf.test,
15595         tests/depdemo-exec.test, tests/depdemo-inst.test,
15596         tests/depdemo-make.test, tests/depdemo-nofast.test,
15597         tests/depdemo-relink.test, tests/depdemo-shared.test,
15598         tests/depdemo-static.test, tests/depdemo-unst.test,
15599         tests/f77demo-conf.test, tests/f77demo-exec.test,
15600         tests/f77demo-make.test, tests/f77demo-shared.test,
15601         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
15602         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
15603         tests/mdemo-exec.test, tests/mdemo-inst.test,
15604         tests/mdemo-make.test, tests/mdemo-shared.test,
15605         tests/mdemo-static.test, tests/mdemo-unst.test,
15606         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
15607         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
15608         tests/pdemo-exec.test, tests/pdemo-inst.test,
15609         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
15610         tests/suffix.test, tests/tagdemo-conf.test,
15611         tests/tagdemo-exec.test, tests/tagdemo-make.test,
15612         tests/tagdemo-shared.test, tests/tagdemo-static.test,
15613         tests/tagtrace.test: Removed srcdir discovery boilerplate...
15614         * tests/defs.in: ...and put it here.
15615
15616 2004-09-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15617
15618         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): move symcode calculation
15619         to correct place.
15620         * doc/libtool.texi (libtool script contents): update description
15621         of global_symbol_to_cdecl.
15622
15623 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
15624
15625         * configure.ac (M4SH): AC_SUBST m4sh expander.
15626         * config/general.m4sh, config/getopt.m4sh: New files with factored
15627         out functionality from...
15628         * config/ltmain.in, libtoolize.in: ...here.  m4_include the shared
15629         code, and call AS_SHELL_SANITIZE.  Also quote all `[' and `]' to
15630         survive m4 run.
15631         (func_serial): No need to double up m4sh quotes after a `#'.
15632         (func_check_macros): Escape `dnl' to stop m4sh interpreting it as
15633         a macro.
15634         * tests/defs.in: New file expanded into tests/defs by autom4te.
15635         * m4/libtool.m4 (_LT_DECL_EGREP): Also require fgrep for the tests
15636         that use it.
15637         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Now built with
15638         M4SH.
15639         (libtoolize): Ditto.
15640         * bootstrap: Set M4SH for call to make.
15641         * HACKING: No need to sync to AS_SHELL_SANITIZE by hand any more.
15642
15643         * m4/libtool.m4: _LT_DECL uppercase ECHO.
15644         * config/ltmain.in: Use it throughout.
15645         (func_mkdir_p): Now matches the other implementations in
15646         tests/defs and libtoolize.in.
15647         * tests/sh.test: Updated to detect ECHO misuse.
15648
15649 2004-09-22  Gary V. Vaughan  <gary@gnu.org>
15650
15651         * config/ltmain.in (func_mode_link): Propagate a convenience
15652         library's dependency libs correctly when it is being linked into a
15653         libtool library.  Deplibs are now propagated whether libdir is set
15654         or not.
15655
15656 2004-09-22  Andreas Schwab  <schwab@suse.de>
15657
15658         The dlpreopen pass over libraries reverses the elements in the
15659         $deplibs list.  This causes problems when the link pass tries to
15660         find libraries when they are located in non-standard places
15661         denoted by -L options.  Due to the reversed order these -L options
15662         occur after the libraries that need them, and they are not found:
15663
15664         * config/ltmain.in: (Un)Reverse $deplibs list at the start of the
15665         link pass in lib mode.
15666
15667 2004-09-22  Charles Wilson  <cwilson@spam.protected>
15668
15669         * ltmain.in (func_generate_dlsyms) [cygwin, mingw]: when creating
15670         a .exp file for an executable, also create a .def file, and add
15671         that file to the link command via SYMFILES.  This causes binutils
15672         to generate an .edata section, and allows self dlopening to work.
15673         * NEWS: Updated.
15674
15675         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better quoting for
15676         postinstall_cmds and postuninstall_cmds to allow spaces in install
15677         paths.
15678
15679         * config/ltmain.in (func_generate_dlsyms): Addresses in
15680         _preloaded_symbols[] cannot go into .rdata section if symbols are
15681         DATA imported from DLL, on windows, because runtime relocations
15682         must happen.
15683         * m4/libtool.m4 (_LT_LINKER_SHLIBS([TAGNAME])): Build exports for
15684         symbols in .rdata sections.
15685
15686 2004-09-19  Gary V. Vaughan  <gary@gnu.org>
15687
15688         The checks in assign.test are trying to catch case of this ilk:
15689         `foo=bar break', but unfortunately they also choke on `foo=bar;
15690         break' and `foo=bar && break'.  Writing a sophisticated test to
15691         catch just the intended case seems like more trouble than it's
15692         worth, but leaving the test in causes the testsuite to fail on
15693         valid m4sh output:
15694
15695         * tests/assign.test: Removed; chokes on perfectly valid shell
15696         syntax.
15697         * tests/Makefile.am (COMMON_TESTS): Remove assign.test.
15698         * tests/defs.in (scripts): Don't check the m4sh inputs, go back
15699         to checking the generated ltmain.sh script.
15700
15701 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
15702
15703         * config/ltmain.in (func_echo): Except for multi-line warnings and
15704         errors, always use func_echo.  $show is for command output, and
15705         $echo is for internal use in backtick expressions and similar.
15706
15707 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
15708
15709         Missed a couple of MKDIR_P references in ltmain.in in my last
15710         patch; fix them carefully.  Introduce an opt_dry_run to ltmain.in
15711         so that the implementations of func_mkdir_p can converge, and a
15712         func_mktempdir to do a better job of temporary directory creation:
15713
15714         * libtoolize.in (func_mkdir_p): Don't fail if the directory wasn't
15715         created in dry run mode.
15716         * tests/defs (func_mkdir_p): Ditto.  We don't actually have a dry
15717         run mode for the tests, but the function is written carefully to
15718         be kept in synch and work correctly here too.
15719         * config/ltmain.in (func_mkdir_p): Ditto.  This copy of the
15720         function now only differs in its use of $echo over $ECHO.
15721         (func_extract_archive): Removed first redundant mkdir call.
15722         (func_mktempdir): New function that tries to avoid races when
15723         making temporary directories.
15724         (opt_dry_run): Set this if --dry-run is given at the CLI, or if
15725         tests/mdemo-dryrun.test has forced the value of $run.
15726         (func_mode_install): Call $MKDIR directly and error out if the
15727         directory cannot be created.
15728         (func_mode_link): Rather than copying func_mkdir_p into the
15729         wrapper script as a replacement for $MKDIR_P, we know that the
15730         script won't be called my `make -j', so write the current value of
15731         $MKDIR.
15732
15733 2004-09-17  Peter O'Gorman  <peter@pogma.com>
15734
15735         * m4/libtool.m4: remove an extra "]"
15736
15737         * m4/libtool.m4 [darwin] (_LT_LANG_CXX_CONFIG): Changes for 10.4.
15738         * config/libtool.in [darwin]: ditto.
15739
15740 2004-09-16  Gary V. Vaughan  <gary@gnu.org>
15741
15742         My most recent `2004-09-02 Gary V. Vaughan' patch for mkdir_p
15743         below is horrendously broken since it makes the installed libtool
15744         try to run the mkinstalldirs or install-sh helper scripts.  This
15745         patch fixes the `make -j' mkdir race condition internally:
15746
15747         * libtoolize.in (func_mkdir_p): New slice and dice algorithm
15748         to build the directory tree one dir at a time, ignoring errors
15749         until the end incase they are transient due to a concurrent
15750         identical mkdir.
15751         * tests/defs (func_mkdir_p): Ditto.
15752         * config/ltmain.in (func_mkdir_p): Ditto, except that ltmain.in
15753         uses $echo rather than $ECHO, and uses $show and $run to interact
15754         correctly with the command line.
15755         * configure.ac (AM_INIT_AUTOMAKE): 1.8 is sufficient again.
15756         * Makefile.am (edit): Don't substitute automake's $(mkdir_p).
15757         * NEWS: Updated.
15758
15759 2004-09-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15760
15761         * libltdl/loaders/loadlibrary.c: Compilation fixes (originally
15762         from Gary V. Vaughan) to compile under MinGW.
15763         * config/mkstamp: Translate input data so that it is assured to
15764         use the Unix line terminations. This is necessary under Windows if
15765         the files are checked out with CR/NL line terminations. A
15766         side-effect of this change is that input must always be from
15767         stdin. Previously a filename argument was accepted as well.
15768
15769 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15770
15771         * tests/Makefile.am: Use the same CPP, F77, CXX and CXXFLAGS
15772         for the test suite.
15773
15774 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15775
15776         * m4/libtool.m4 (_LT_ENABLE_LOCK):Replace AC_TRY_LINK with
15777         AC_LINK_IFELSE to get rid of `autoconf -Wobsolete' warning.
15778         * m4/ltdl.m4 (LT_LIB_DLLOAD): Ditto.
15779
15780 2004-09-15  Gary V. Vaughan  <gary@gnu.org>
15781
15782         * config/ltmain.in (func_quote_for_eval): Set a return value to
15783         avoid forking at every call.  Changed all callers.
15784         (func_mode_link): Simplified, and removed the final non-portable
15785         nested escaped double quotes in back quotes usage in the process.
15786
15787 2004-09-14  Gary V. Vaughan  <gary@gnu.org>
15788
15789         * config/ltmain.in (func_quote_for_eval): Factor out the ugly
15790         shell meta-character quoting.  Changed all callers.
15791
15792 2004-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15793
15794         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Simplification:
15795         distinguish between data and code symbols on every system.
15796
15797 2004-09-14  Albert Chin-A-Young  <china@thewrittenword.com>
15798
15799         Unfortunately, libtool has no way of telling if unrecognized
15800         compiler flags need an argument or not, and can disect options and
15801         pass parts through incorrectly.  This changeset reverts both
15802         2004-09-06 Albert Chin-A-Young (topmost) and 2004-09-05 Albert
15803         Chin-A-Young below, and recognises more options explicitly:
15804
15805         * config/ltmain.in (func_mode_link): Pass through options needed
15806         to compile in 64-bit mode with gcc, and the SGI, Sun, HP and IBM
15807         compilers.
15808
15809 2004-09-13  Gary V. Vaughan  <gary@gnu.org>
15810
15811         * m4/libtool.m4 (_LT_CMD_GLOBALS_SYMBOLS): Fix a typo I made when
15812         applying 2004-09-11 Ralf Wildenhues.
15813
15814 2004-09-12  Brad  <brad@comstyle.com>
15815
15816         * libtool.m4: Fixes for the OpenBSD support
15817
15818 2004-09-12  Peter O'Gorman  <peter@pogma.com>
15819
15820         Our fortran tests were not very good. All the libraries created
15821         were convenience libs, so we did not test the creation of shared
15822         libraries on any platform. Also none of the libs used any actual
15823         fortran library calls, adding a call to write(*,*) in each lib
15824         causes the tests to fail on darwin (and presumably other platforms).
15825         These new tests would likely cause many more fortran test failures,
15826         so if there is an error during make it is reported as SKIP.
15827
15828         * tests/f77demo-make.test: Don't fail hard, skip on failure.
15829         * tests/f77demo/foof2.f: New file.
15830         * tests/f77demo/foof3.f: New file.
15831         * tests/f77demo/fprogram.f: Call routine in new lib.
15832         * tests/f77demo/foof.f: Call routine in another new lib.
15833         * tests/f77demo/Makefile.am: Make a couple of new libraries, add
15834         $(FLIBS) to cprogram LDADD.
15835
15836 2004-09-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15837
15838         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): The linker distinguishes
15839         data and code symbols on linux-gnu/ia64.  Fixes multiple testsuite
15840         failures.
15841         * NEWS: Updated.
15842
15843 2004-09-06  Gary V. Vaughan  <gary@gnu.org>
15844
15845         * libltdl/loaders/shl_load.c (get_vtable): Typo.
15846
15847 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
15848
15849         Hopefully, passing unrecognised compiler arguments through
15850         unmolested will prove to be a good plan for the 2.0 release.  If
15851         it goes awry, we can get back to where we were by reverting this
15852         patch and the 2004-09-05 Albert Chin-A-Young patch, aka
15853         gary@gnu.org--2004/libtool--devo--1.0--patch-169,172:
15854
15855         * config/ltmain.in (func_mode_link): Because we now pass through
15856         compiler arguments we doesn't recognize, the code to pass
15857         through GCC's -m* arguments is not needed.
15858
15859 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
15860
15861         * Makefile.am (clean-ltmain-sh): Using '==' to test for equality
15862         in a shell script is not portable. Use '=' instead.
15863
15864 2004-09-05  Andreas Schwab  <schwab@suse.de>
15865
15866         * m4/ltdl.m4 (LT_WITH_LTDL): Remove excess quoting in argument of
15867         AC_CONFIG_SUBDIRS.
15868
15869 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
15870
15871         * config/ltmain.in (func_mode_link): Pass otherwise unrecognised +
15872         and - style switches to the compiler.
15873         * NEWS: Updated.
15874
15875 2004-09-05  Gary V. Vaughan  <gary@gnu.org>
15876
15877         * Makefile.am (libtool): Force libtool to be regenerated if
15878         stamp-vcl has changed.
15879
15880 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
15881
15882         * m4/libtool.m4, config/ltmain.in: When calling $LTCC,
15883         pass default $CFLAGS through with $LTCFLAGS.
15884
15885 2004-09-03  David Edelsohn  <dje@watson.ibm.com>
15886
15887         * config/ltmain.in (func_mode_link): Use $pic_object as
15888         $non_pic_object if $non_pic_object=none.
15889         * NEWS: Updated.
15890
15891 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
15892
15893         * bootstrap: Remember that the ltmain.sh generated by bootstrap
15894         is missing most of its substitution values, so force it to be
15895         rebuilt at make time by touching $(top_srcdir)/config/ltmain.in.
15896
15897         From Martin Quinson <mquinson@ens-lyon.fr>
15898         * m4/libtool.m4 (_LT_SETUP, _LT_ENABLE_LOCK, LT_PATH_LD): Use
15899         AS_HELP_STRING to get rid of autoconf -Wobsolete warning
15900         messages.
15901         * m4/ltdl.m4 (LT_WITH_LTDL, _LT_ENABLE_INSTALL): Ditto.
15902         * m4/ltoptions.m4 (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC)
15903         (_LT_ENABLE_FAST_INSTALL, _LT_WITH_PIC): Ditto.
15904         * TODO: Updated
15905
15906 2004-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15907
15908         * libltdl/slist.c (slist_cons): Don't leak the tail of a list.
15909
15910 2004-09-03  Albert Chin-A-Young  <china@thewrittenword.com>
15911
15912         * m4/libtool.m4 (_LT_ENABLE_LOCK): Reformatted.
15913
15914 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
15915
15916         * HACKING: Explain how to verify detached signatures with gpg in
15917         the release announcement templates.
15918
15919         * AUTHORS: Fix typo in my address.
15920
15921 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
15922
15923         Builds of packages that use libtool and make -j produce "directory
15924         already exists warnings" for .lib directory.  Build on automake
15925         wisdom to support make -j builds where a suitable mkdir is
15926         available:
15927
15928         * configure.ac (AM_INIT_AUTOMAKE): Require 1.9, which goes to some
15929         trouble to find a $(mkdir_p) that doesn't interfere with make -j.
15930         * Makefile.am (edit): Substitute for @mkdir_p@.
15931         * config/ltmain.in (MKDIR_P): Take @mkdir_p@ value.
15932         (mkdir): Removed.
15933         (func_mkdir_p): New function to use $MKDIR_P.  Factor out all
15934         previous mkdir calls to use this function.
15935         (RM, MV): Declared as in libtoolize.in.  Changed all callers.
15936         * libtoolize.in (MKDIR_P): Take @mkdir_p@ value from automake.
15937         (func_mkdir_p): Use it, similarly to new config/ltmain.in.
15938         * tests/defs: Synchronize boiler plate code with ltmain.in.
15939         Adjust all callers.
15940         Add missing copyright preamble.
15941         * tests/demo-static.test: Add missing copyright preamble.
15942         * NEWS: Updated.
15943         Reported by Daniel Reed <n@ml.org>
15944
15945 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
15946
15947         * Makefile.am (clean-ltmain-sh): Quote $(top_builddir) for the
15948         shell, incase it is not set when running maintainer rules with
15949         `make -fMakefile.maint'.
15950         Don't show the shell commands.
15951
15952         * AUTHORS: Fix my email address.
15953
15954 2004-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15955
15956         * libltdl/ltdl.c (try_dlopen): Fix memory leak.
15957         * NEWS: Updated.
15958
15959 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
15960             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15961
15962         * libltdl/slist.c, libltdl/slist.h: Merge in changes from latest
15963         upstream.  Mostly comments, formal item boxing, a sort function,
15964         and const madness reduction.
15965         (slist_new): Removed.
15966         (slist_box, slist_unbox, slist_sort): New.
15967         (SListCompare, SListCallback): Swapped!
15968         (slist_remove, slist_find): Change order of parameters for
15969         orthogonality with slist_foreach.  Changed all callers.
15970         * libltdl/lt_dlloader.c (loader_cmp): Renamed to...
15971         (loader_callback): ...this.  Return boxed item.
15972         (lt_dlloader_remove): Adjust to new loader_callback semantics;
15973         unbox each removed item before returning.
15974         Remove unused variable.
15975         Remove const from name parameter, since the slist API cannot
15976         guarantee userdata const-ancy for its callback functions.
15977         (lt_dlloader_find): Adjust to new loader_callback semantics; need
15978         to return the contents of the boxed item.
15979         Remove const from name parameter, since the slist API cannot
15980         guarantee userdata const-ancy for its callback functions.
15981         * libltdl/lt_dlloader.h (lt_dlloader_find, lt_dlloader_remove):
15982         Adjust to new constless footprint.
15983         * libltdl/ltdl.c (ltdl_exit): The global `loaders' list is changed
15984         by `lt_dlloader_remove' while cleaning up, so the address in local
15985         variable `loader' is invalidated.  Since some loaders may be
15986         resident modules that cannot be unloaded (though we have none
15987         yet), we must save each `next' address before calling
15988         `lt_dlloader_remove'.
15989         * NEWS: Updated.
15990         * THANKS: Added Ralf.
15991
15992 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
15993
15994         * libltdl/lt_dlloader.c (lt_dlloader_add): Handle malloc failure
15995         from slist_new.
15996         * libltdl/ltdl.c (loader_init): Trust lt_dlloader_add(), don't
15997         overwrite its error type, and simplify.
15998         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15999
16000 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16001
16002         * libltdl/slist.c (slist_new): Handle malloc failure gracefully.
16003
16004 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16005
16006         * libtoolize.in, config/ltmain.in: Add CDPATH protection to
16007         preamble.
16008         * tests/defs: Put a full m4sh.m4 style 'Be Bourne compatible'
16009         preamble in here too.
16010         * HACKING: Note that tests/defs needs synching with m4sh.m4 too.
16011         * TODO: Add new item.
16012
16013         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Use correct cpp
16014         macro name, LT_DLSEARCH_PATH.
16015
16016         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Fix gcc parentheses
16017         warning.
16018         (foreach_dirinpath, try_dlopen, lt_dlpath_insertdir): Fix gcc
16019         signed vs unsigned warning.
16020         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
16021
16022         * m4/libtool.m4 (_LT_PROG_LTMAIN): Simplified in light of
16023         ltmain.sh no longer being in the build tree.
16024         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16025
16026 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16027
16028         * libltdl/loaders/preopen.c: Initialise memory in get_vtable.
16029
16030         * tests/sh.test: Look in the source tree for ltmain.sh.
16031
16032 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16033
16034         Don't use C99 flexible array types as we want to be C89
16035         compatible.  Instead, revert to the old way of doing things with
16036         an array of symbol name vs. address, and adding the originator as
16037         the first symbol but with a NULL address:
16038
16039         * config/ltmain.in (func_extract_dlsyms): Store originator as a
16040         NULL address symbol.
16041         * libltdl/ltdl.h (lt_dlsymbol): Removed.
16042         (lt_dlsymlist): Remove originator field.
16043         (LTDL_SET_PRELOADED_SYMBOLS): Adjust.
16044         * libltdl/loaders/preopen.c (vm_open, lt_dlpreload_open): Adjust
16045         for new types.
16046         (vm_sym): Skip the new originator symbol when scanning symbol
16047         names.
16048         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust preloaded symbols
16049         test file to match.
16050         * NEWS: Updated.
16051         Reported by Andreas Schwab <schwab@suse.de>
16052
16053 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16054
16055         Libtool currently assumes that certain characteristics, such as
16056         enable_shared, apply to the host architecture rather than per-
16057         language.  Running the tests over a broken compiler can corrupt
16058         these values, when there is no C++ compiler for example, so we
16059         skip most of the tests in those cases.
16060
16061         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): If caught_CXX_compiler was
16062         set from configure.ac, then don't run all the compiler tests.
16063         (_LT_LANG_F77_CONFIG): Similarly for caught_F77_compiler.
16064
16065 2004-08-31  Gary V. Vaughan  <gary@gnu.org>
16066
16067         * Makefile.am (clean-ltmain-sh): Remove stale config/ltmain.sh
16068         from the build tree that were left behind by previous versions of
16069         libtool.
16070         ($top_srcdir)/stamp-vcl: Since this rule is already called on
16071         every invocation of make, hook clean-ltmain-sh in here too.
16072         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16073
16074 2004-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16075
16076         * bootstrap: Update warning message to reflect having split
16077         libtool.m4 into several files.
16078         Also, add config/ltmain.sh to list of stale files from previous
16079         versions to be removed before bootstrap.
16080
16081         * libltdl/ltdl.c: Replace strdup with lt__strdup.
16082
16083 2004-08-30  Gary V. Vaughan  <gary@gnu.org>
16084
16085         * config/ltmain.in: Double quote even $# for the sake of sh.test.
16086         (exec_cmd): Be careful about "`\"foo\"`" quoting, even in comments
16087         to avoid triggering the tests in sh.test.
16088
16089         * configure.ac:  Because of the way the autoconf C++ testing
16090         works, we need to call the C test first to work in an environment
16091         that has no C++ compiler.
16092
16093         * libltdl/lt_dlloader.c (lt_dlloader_remove): Since the return
16094         value of this function is often passed to free, don't declare it
16095         `const'. Responsibility for this memory is given back to the
16096         caller on return.
16097         * libltdl/lt_dlloader.h (lt_dlloader_remove): Ditto.
16098         * libltdl/ltdl.c (lt_dlexit): Adjust.
16099         * NEWS: Updated.
16100
16101 2004-08-30  Andreas Schwab  <schwab@suse.de>
16102
16103         * libltdl/ltdl.c (lt_dlexit): Remove lvalue cast.
16104
16105         * libltdl/slist.h (SListCallback): Fix missing type.
16106
16107         * config/ltmain.in: Accept --mode=relink.
16108
16109 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16110
16111         * NEWS: Updated.
16112         * configure.ac: Bumped version to 1.9c.
16113
16114         GNU libtool 1.9b was released.
16115
16116         * configure.ac: Bumped version to 1.9b.
16117         * NEWS: Updated.
16118         * INSTALL, config/config.guess, config/config.sub,
16119         config/texinfo.tex: Updated from canonical source.
16120         * Makefile.maint, HACKING: Update instructions for releasing in a
16121         VPATH build.
16122
16123         * Makefile.am (dist-hook): Only run if README-alpha exists.
16124         * README.alpha: Renamed from README-alpha to stop automake from
16125         automatically adding it to DIST_COMMON.
16126
16127         * NEWS: Merge changes from branch-1-5.
16128
16129         * Makefile.am (dist-hook): Always distribute just a README file,
16130         but take its contents from README-alpha for alpha releases.
16131
16132         * TODO: Reformat.  Removed some items that have been implemented.
16133
16134 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16135
16136         Add a new `-weak' flag to tell libtool when not to propogate
16137         dependency libraries from dlpreopened modules to libraries:
16138
16139         * config/ltmain.in: Support new -weak link mode option.  Adjust
16140         help message.
16141         * libltdl/Makefile.am (libltdlc_la_LDFLAGS): Use it.
16142         * doc/libtool.texi (Linking with dlopened modules): Document it.
16143         (Link mode): Mention -weak.
16144         * NEWS: Updated.
16145
16146 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16147
16148         * config/ltmain.in (opt_help): Defer showing help messages until
16149         after a possible following --mode argument has been parsed, so we
16150         can handle `libtool --help --mode=foo'.
16151
16152 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16153
16154         We have had shell functions in ltmain.in for a few years without
16155         complaint now, and recently a few more have crept in.  Make a
16156         start at refactoring the code with shell functions, and
16157         standardising on option parsing style:
16158
16159         * config/ltmain.in (func_echo, func_verbose, func_error)
16160         (func_fatal_error, func_fatal_help, func_missing_arg)
16161         (func_version, func_usage, func_help): Boiler plate shell
16162         functions mostly copied from libtoolize.in.  Changed *lots* of
16163         shell snippets to call these functions as appropriate, rather than
16164         inlining the same code over and over.
16165         (func_config, func_features, func_enable_tag, func_mode_help):
16166         Factored out from the shared option parsing loop.  Write a new
16167         shared option parser based on the one in libtoolize.in.
16168         (func_check_version_match): Factored out from global scope.
16169         (func_mode_compile, func_mode_execute, func_mode_finish)
16170         (func_mode_install, func_mode_link, func_mode_uninstall): Break
16171         each of the top level mode handlers out into a function.  Adjust
16172         main loop.
16173         (modename, prevopt, prev, optarg, show_help): Removed in the
16174         course of cleaning up the shared option parser.
16175         (opt_duplicate_deps): Use `:' and `false' instead of `yes' and `',
16176         so we can run it directly, rather than calling test.
16177
16178 2004-08-28  Gary V. Vaughan  <gary@gnu.org>
16179
16180         To help users submit better bug reports, improve the general
16181         instructions, and provide additional useful info alongside the bug
16182         reporting address in --help output:
16183
16184         * Makefile.am (edit): Substitute $host_triplet.
16185         * libtoolize.in: Output useful debug info with --help.
16186         * config/ltmain.in: Ditto.
16187         * README: Rewritten.  Added copyright info.
16188         * README-alpha: Rewritten.  Added copyright info.
16189         * HACKING: New file, partly taken from old README-alpha.
16190
16191 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16192
16193         Two things to stop `make distcheck' from trying to rebuild
16194         distributed files (m4/ltversion.m4 and config/ltmain.in) in the
16195         readonly source tree:
16196
16197         * Makefile.am (stamp-vcl): Keep only one copy of stamp-vcl; in
16198         $(top_srcdir), so that an up-to-date version is rolled into the
16199         dist tarball even from a VPATH build.
16200         ($(top_srcdir)/config/ltmain.sh): Don't depend on Makefile,
16201         otherwise ltmain.sh needs to be rebuilt after every config.status
16202         run, and then configure needs to be rebuilt, and it all goes
16203         horribly wrong :-/  Unfortunately, we can't depend on Makefile.am
16204         either, because that is a circular dependency.  The downside of
16205         this change is that it is now possible to edit Makefile.am to
16206         change the way ltmain.sh is generated, and the dependency
16207         information can't tell that ltmain.sh needs regenerating.
16208
16209 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16210
16211         * doc/libtool.texi (Cheap tricks): Escape the `@' for texinfo.
16212
16213 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16214
16215         * doc/libtool.texi (Cheap tricks): Fix the instructions for making
16216         a ltmain.in wrapping libtool in light of recent changes to the
16217         version checking code.
16218
16219 2004-08-26  Peter O'Gorman  <peter@pogma.com>
16220
16221         * config/ltmain.in [darwin]: Use the -dylib_file flag and avoid
16222         linking to so many libraries on darwin.
16223
16224         * m4/libtool.m4 [darwin]: Don't use a libname triplet, a couplet
16225         is perfectly fine.
16226
16227         * m4/ltdl.m4: Don't use the dyld loader on darwin 8 or later.
16228
16229 2004-08-25  Paolo Bonzini  <bonzini@gnu.org>
16230
16231         * config/ltmain.in (piecewise linking): Use a GNU ld script if
16232         possible.
16233         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Add per-tag variable
16234         with_gnu_ld.
16235         (_LT_LANG_CXX_CONFIG): Don't set unused variable with_gnu_ldcxx.
16236
16237 2004-08-22  Gary V. Vaughan  <gary@gnu.org>
16238
16239         The Grand Renaming.  In preparation for libtool-2.0, move all of
16240         the many and varied m4 symbols accumulated by libtool over the
16241         years, considering also that modern autoconf can detect unexpanded
16242         macros even without AC in the macro name:
16243
16244         * bootstrap: Remove libltdl/config.h from previous releases.
16245         * m4/libtool.m4, m4/ltdl.m4, doc/libtool.texi: Basically, run a
16246         giant sed transformation like this:
16247         s,AC_LIB_LTDL,LTDL_INIT,g
16248         s,AC_LIBLTDL_CONVENIENCE,LTDL_CONVENIENCE,g
16249         s,AC_LIBLTDL_INSTALLABLE,LTDL_INSTALLABLE,g
16250         s,AC_WITH_LTDL,LT_WITH_LTDL,g
16251         s,AC_LTDL_ENABLE_INSTALL,_LT_ENABLE_INSTALL,g
16252         s,AC_DEPLIBS_CHECK_METHOD,_LT_CHECK_MAGIC_METHOD,g
16253         s,AC_LIBTOOL_OBJDIR,_LT_CHECK_OBJDIR,g
16254         s,AC_LTDL_OBJDIR,_LT_CHECK_OBJDIR,g
16255         s,AC_LTDL_DLPREOPEN,_LT_CHECK_DLPREOPEN,g
16256         s,AC_LIBTOOL_SYS_MAX_CMD_LEN,LT_CMD_MAX_LEN,g
16257         s,AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,_LT_CMD_GLOBAL_SYMBOLS,g
16258         s,AC_LIBTOOL_SYS_OLD_ARCHIVE,_LT_CMD_OLD_ARCHIVE,g
16259         s,AC_PROG_LD_RELOAD_FLAG,_LT_CMD_RELOAD,g
16260         s,AC_LIBTOOL_SYS_LIB_STRIP,_LT_CMD_STRIPLIB,g
16261         s,AC_CHECK_LIBM,LT_LIB_M,g
16262         s,AC_LTDL_DLLIB,LT_LIB_DLLOAD,g
16263         s,AC_LIBTOOL_COMPILER_OPTION,_LT_COMPILER_OPTION,g
16264         s,AC_LIBTOOL_PROG_CC_C_O,_LT_COMPILER_C_O,g
16265         s,AC_LIBTOOL_PROG_COMPILER_NO_RTTI,_LT_COMPILER_NO_RTTI,g
16266         s,AC_LIBTOOL_PROG_COMPILER_PIC,_LT_COMPILER_PIC,g
16267         s,AC_LIBTOOL_SYS_HARD_LINK_LOCKS,_LT_COMPILER_FILE_LOCKS,g
16268         s,AC_LTDL_DLSYM_USCORE,LT_FUNC_DLSYM_USCORE,g
16269         s,AC_LIBTOOL_LINKER_OPTION,_LT_LINKER_OPTION,g
16270         s,AC_LIBTOOL_PROG_LD_SHLIBS,_LT_LINKER_SHLIBS,g
16271         s,AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH,_LT_LINKER_HARDCODE_LIBPATH,g
16272         s,AC_PATH_MAGIC,_LT_PATH_MAGIC,g
16273         s,AC_PATH_TOOL_PREFIX,_LT_PATH_TOOL_PREFIX,g
16274         s,AC_PROG_LD,LT_PATH_LD,g
16275         s,AC_PROG_LD_GNU,_LT_PATH_LD_GNU,g
16276         s,AC_PROG_NM,LT_PATH_NM,g
16277         s,AC_LTDL_SYS_DLOPEN_DEPLIBS,LT_SYS_DLOPEN_DEPLIBS,g
16278         s,AC_LIBTOOL_DLOPEN_SELF,LT_SYS_DLOPEN_SELF,g
16279         s,AC_LIBTOOL_POSTDEP_PREDEP,_LT_SYS_HIDDEN_LIBDEPS,g
16280         s,AC_LTDL_SYSSEARCHPATH,LT_SYS_DLSEARCH_PATH,g
16281         s,AC_LTDL_SHLIBEXT,LT_SYS_MODULE_EXT,g
16282         s,AC_LTDL_SHLIBPATH,LT_SYS_MODULE_PATH,g
16283         s,AC_LTDL_SYMBOL_USCORE,LT_SYS_SYMBOL_USCORE,g
16284         s,AC_LIBTOOL_SYS_DYNAMIC_LINKER,_LT_SYS_DYNAMIC_LINKER,g
16285         s,_LT_AC_TAGVAR,_LT_TAGVAR,g
16286         s,_LT_AC_SYS_COMPILER,_LT_TAG_COMPILER,g
16287         s,_LT_AC_PROG_ECHO_BACKSLASH,_LT_PROG_ECHO_BACKSLASH,g
16288         s,_LT_AC_SYS_LIBPATH_AIX,_LT_SYS_MODULE_PATH_AIX,g
16289         s,_LT_AC_SHELL_INIT,_LT_SHELL_INIT,g
16290         s,_LT_AC_LOCK,_LT_ENABLE_LOCK,g
16291         s,_LT_AC_CHECK_DLFCN,_LT_HEADER_DLFCN,g
16292         s,_LT_AC_TRY_DLOPEN_SELF,_LT_TRY_DLOPEN_SELF,g
16293         s,LT_AC_PROG_EGREP,_LT_DECL_EGREP,g
16294         s,LT_AC_PROG_SED,_LT_DECL_SED,g
16295         * doc/libtool.texi (Autoconf macros): Document exported macros.
16296         * libtoolize.in: Compare ltdl.m4 serial numbers for LTDL_INIT
16297         instead of newly obsoleted AC_LIB_LTDL.
16298         (func_scan_files): Also set seen_ltdl for LTDL_INIT and
16299         LT_WITH_LTDL.
16300
16301 2004-08-12  Peter O'Gorman  <peter@pogma.com>
16302
16303         * m4/libtool.m4 [GNU/linux] (AC_DEPLIBS_CHECK_METHOD): Cleanup,
16304         thanks to Daniel Reed.
16305
16306 2004-08-11  Daniel Reed  <djr@redhat.com>
16307
16308         * tests/demo-nopic.test: Do not run on x86_64 or s390*
16309
16310 2004-08-06  Gary V. Vaughan  <gary@gnu.org>
16311
16312         * libltdl/ltdl.c (lt_dlforeachfile): LT_SYS_LIBSEARCH_PATH is not
16313         an environment variable, it is an actual path.
16314
16315         * bootstrap: Remove `-f Makefile.am' now that we have an actual
16316         Makefile to build ltmain.sh.
16317         Reported by Noah Mish <noah@cs.caltech.edu>
16318
16319 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
16320
16321         * bootstrap: Run the bootstrap rules from a file named Makefile,
16322         copied from Makefile.am for fresh checkouts.
16323
16324 2004-08-05  Alexandre Duret-Lutz  <adl@gnu.org>
16325
16326         * m4/libtool.m4 (_LT_PROG_LTMAIN): Require ltmain.sh using
16327         using Autoconf's new AC_REQUIRE_AUX_FILE.
16328
16329 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
16330
16331         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Depends on
16332         Makefile.
16333         (timestamp): Factor out timestamp setting and edit it based on the
16334         version number, so that it is empty for release versions.
16335         ($(top_srcdir)/config/ltmain.sh): Use it.
16336         (libtoolize): Ditto.
16337
16338         * Makefile.am (libtool): Depends on ltmain.sh.
16339         (libtoolize): Set and substitute TIMESTAMP.
16340
16341         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Actually run
16342         $(MKSTAMP) before changing directories, or it won't be found.
16343         Forgot to save before my last commit :-(
16344
16345         * Makefile.am ($(top_srcdir)/m4/ltversion.m4): Since we already did
16346         `cd $(top_srcdir)' for this rule, we can't mv ltversion.tmp to the
16347         relative $(top_srcdir) again!  Also, run $(MKSTAMP) before changing
16348         directories, or it won't be found.
16349         ($(top_srcdir)/config/ltmain.sh): Ditto.
16350         (EXTRA_DIST): We should distribute ltversion.m4 too.
16351
16352 2004-08-04  Peter O'Gorman  <peter@pogma.com>
16353
16354         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Since CONFIG_SHELL may
16355         not actually be set, we should use SHELL here, also make darn sure
16356         that SHELL is set to something. Bug from Willem Jan Palenstijn
16357         <wpalenst@math.leidenuniv.nl>.
16358
16359 2004-08-03  Jacob Meuser  <jakemsr@jakemsr.com>
16360
16361         * ltmain.in: Allow some static libraries to be used in generating a
16362         shared library on NetBSD and OpenBSD. match-pattern_regex decides
16363         which are good.
16364
16365 2004-08-02  Geoffrey Keating  <geoffk@apple.com>
16366
16367         * m4/libtool.m4 [darwin]: Don't use -all_load.
16368
16369 2004-08-01  Maciej W. Rozycki  <macro@linux-mips.org>
16370
16371         * m4/libtool.m4 (LT_AC_PROG_SED): Set SED when running from cache as
16372         well.
16373
16374 2004-07-31  Gary V. Vaughan  <gary@gnu.org>
16375
16376         Although libtool is optimised to not need to subconfigure libltdl,
16377         the installed libltdl sources for libtoolize need to put
16378         libltdl/configure.ac in the parent package so that *it* can
16379         subconfigure libltdl.  That way we don't put any constraints on
16380         the build system used by the parent package because the
16381         libtoolized libltdl subtree is a self-contained sub-project:
16382
16383         * libltdl/Makefile.am (EXTRA_DIST): Add configure.ac.
16384         (nobase_ltdldata_DATA): Change back to libltdl's own
16385         configure.ac.
16386
16387 2004-07-30  Gary V. Vaughan  <gary@gnu.org>
16388
16389         My thanks to Alexandre Duret-Lutz <adl@gnu.org> for the insight
16390         required to write this changeset -- especially that ltmain.sh is
16391         the same on any machine for a given release, which I hadn't
16392         noticed for some bizarre reason: It turns out that generating
16393         distributed files from configure causes no end of hassle, as
16394         evidenced by the many patches I've generated over the last few
16395         days to try and get the dist and distcheck make rules to work.
16396         Instead of all that hair, we now simply generate our distributed
16397         files (now including ltmain.sh) with make rules -- and since
16398         automake creates make variables for all AC_SUBSTs, that is really
16399         easy.  The code looks a lot more like automake and autoconf
16400         Makefile.ams now, and doesn't have all the rough edges the earlier
16401         hacky solution suffered from.  We still generate libtool from
16402         config.status, but that is not a distributed file, and doesn't
16403         break the golden rule.  Besides, there is way more going on there
16404         than a bunch of substitutions:
16405
16406         * Makefile.am (edit): New common sed substitutions for files now
16407         generated by make instead of config.status.
16408         (CLEANFILES): Clean new tmp files.
16409         (EXTRA_DIST): Add ltmain.sh.
16410         (vcl-tmp): Reinstated.
16411         (m4/ltversion.m4, config/ltmain.sh): New rules.  Generate from
16412         here instead of config.status.
16413         (libtoolize): Ditto.
16414         (libtool): Call config.status to regenerate if necessary.
16415         (dist-hook): Removed.
16416         * config/ltmain.in: Moved here from top_srcdir.
16417         * README-alpha: Update instructions to check AS_SHELL_SANITIZE is
16418         up to date.
16419         * bootstrap: Rewritten.  Generate m4/ltversion.m4 and
16420         config/ltmain.sh because configure depends on them.
16421         * configure.ac (AC_CONFIG_SRCDIR): Use libtoolize.in now that
16422         ltmain.in has moved.
16423         (AC_CONFIG_FILES): Don't generate distributed files,
16424         config/ltmain.sh and libtoolize from config.status.  We have make
16425         rules to do that now.
16426
16427 2004-07-30  Peter O'Gorman  <peter@pogma.com>
16428
16429         * m4/libtool.m4, ltmain.in: readd the comments that I erased.
16430
16431         * ltmain.in [darwin]: We already had a module var, there can be
16432         only one.
16433
16434         * m4/libtool.m4, ltmain.in: autoconf now says the best thing to do
16435         with CDPATH is to (unset CDPATH) >/dev/null 2>&1 && unset CDPATH,
16436         so do it.
16437
16438 2004-07-29  Gary V. Vaughan  <gary@gnu.org>
16439
16440         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Ugh. More hair to
16441         help `make distcheck'; not only do we have to make a copy of
16442         ltmain.sh available in the source tree, but we have to be really
16443         careful about permission bit twiddling when we copy it across into
16444         the possible read-only $(top_srcdir)/config directory!
16445
16446         * tests/tagtrace.test: Skip this test when running a VPATH build
16447         against a read-only source tree (as in distcheck for example),
16448         since autoconf wants to write temporary files in $top_srcdir
16449         otherwise.
16450
16451         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Automake assumes,
16452         quite rightly for every project except libtool, that there will be
16453         an ltmain.sh in the source tree.
16454         (EXTRA_DIST): As do the dist rules it generates.
16455         (dist-hook): Even though we definitely don't want to distribute
16456         our local ltmain.sh.
16457
16458         * config/config.guess, config/config.sub: Don't check these in,
16459         they cause spurious conflicts on cvs commit and update, and are
16460         added by bootstrap in any case.
16461
16462         * configure.ac (AC_INIT): Revert an accidental commit from my
16463         testing of package_revision.
16464
16465 2004-07-29  Alexandre Duret-Lutz  <adl@gnu.org>
16466
16467         * doc/libtool.texi (Tags): Document CC.
16468         * m4/libtool.m4 (_LT_SETUP): Register CC as supported tag so that
16469         Automake uses it.
16470
16471 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
16472
16473         Fix a long-standing bug where macro_version was always empty in
16474         the generated m4/ltversion.m4.  Except for CVS revisions:
16475
16476         * ltmain.in (package_revision): Don't try to deduce it from
16477         TIMESTAMP, since that is empty for release versions; simply
16478         substitute it...
16479         * configure.ac (package_revision): ...from here, having
16480         precalculated it before resetting TIMESTAMP for release versions.
16481         * bootstrap: Force regeneration of m4/ltversion.m4, but retain
16482         timestamps if there is no change to the content.
16483
16484 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
16485
16486         To take full advantage of this, libtool must be bootstrapped with
16487         CVS autoconf, otherwise pdksh chokes on some nested escaped quotes
16488         from libtool.m4.  Using CVS autoconf protects configure from
16489         non-bourne compatible shells in the same way this changeset
16490         protects libtool and libtoolize:
16491
16492         * libtoolize.in: Include latest CVS autoconf AS_SHELL_SANITIZE
16493         expansion to make various shells fully bourne compatible.
16494         * ltmain.in: Ditto.
16495         * m4/libtool.m4 (AC_PATH_TOOL_PREFIX): Remove spurious quotes, the
16496         RHS of = assignment is not IFS split.
16497         (_LT_LANG_CXX_CONFIG): Ditto.
16498         (AC_LIBTOOL_POSTDEP_PREDEP): Ditto.
16499
16500 2004-07-27  Gary V. Vaughan  <gary@gnu.org>
16501
16502         This change fixes another VPATH build bug, where the vcl.tmp
16503         target forced a rebuild of stamp-vcl in the build tree (and
16504         hence regeneration of m4/ltversion.m4, thus an automake driven
16505         rebootstrap that doesn't know about $fakes) requiring a fresh
16506         ./bootstrap after every cvs/tla update:
16507
16508         * Makefile.am (vcl.tmp): Removed.
16509         (stamp-vcl): Adopt former vcl.tmp target rules.
16510
16511 2004-07-25  Gary V. Vaughan  <gary@gnu.org>
16512
16513         * ltmain.in: Make sure that dependency libraries of -dlpreopened
16514         libraries are propogated properly.
16515
16516 2004-07-23  Joe Orton  <joe@manyfish.co.uk>
16517
16518         * libtool.m4: Treat bsdi5* like bsdi4*.
16519
16520 2004-07-22  Peter O'Gorman  <peter@pogma.com>
16521
16522         * ltmain.in [darwin](func_extract_archives): $SED not sed.
16523
16524         * ltmain.in [darwin](func_extract_archives): Clean up last commit
16525         a little, some suggestions are from Albert Chin, those that are
16526         broken are mine.
16527
16528         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for
16529         included files in the right places.
16530
16531 2004-07-18  Peter O'Gorman  <peter@pogma.com>
16532
16533         * ltmain.in [darwin](func_extract_archives): Because fat archives
16534         on darwin can not be extracted using ar, we need to use lipo to
16535         extract the thin archives and then use lipo again to generate the
16536         individual fat objects. This should allow people to run configure
16537         with CC set to "cc -arch ppc -arch ppc64" or "cc -arch ppc -arch
16538         i386" or whatever to match the toolchain they have available.
16539
16540 2004-07-18  Greg Eisenhauer  <eisen@cc.gatech.edu>
16541
16542         * libltdl/loaders/Makefile.am: Use AM_MAKEFLAGS not MAKEFLAGS.
16543
16544 2004-07-18  Peter O'Gorman  <peter@pogma.com>
16545
16546         * libltdl/Makefile.am: Ensure that lt__dirent.h is part of the dist,
16547         also make failed looking for configure.ac, look for
16548         $(top_srcdir)/configure.ac instead.
16549
16550 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16551
16552         * libltdl/lt__private.h (lt_dlhandle_struct): Renamed to
16553         lt__handle to better reflect the naming scheme.
16554         * libltdl/ltdl.h (lt_dlhandle): Be truly opaque with a void *.
16555         * libltdl/lt_dlloader.c (lt_dlloader_remove): Party to
16556         lt__private.h, so use internal lt__handle instead of opaque
16557         lt_dlhandle.
16558         * libltdl/ltdl.c (LT_DLGET_FLAG, LT_DLSET_FLAG): Add a cast to
16559         internal lt__handle type.
16560         (try_dlopen, tryall_dlopen, load_deplibs, unload_deplibs): Ditto.
16561         (lt_dlexit, lt_dlclose, lt_dlsym): Use lt__handle to iterate
16562         throught the handle list.
16563         (try_dlopen): Use lt__zalloc instead of MALLOC and memset.
16564         * libltdl/ltdl.h (lt_dlcaller_id): Be truly opaque with a void *.
16565         (lt_dlhandle_interface): New callback type for filtering handles
16566         according to the interface they present.
16567         * libltdl/ltdl.c (lt_dlcaller_register): Take an id and an
16568         interface check callback, and generate a caller_id.
16569         (iterator): New static variable for the use of...
16570         (lt_dlhandle_first): New function.  Set the iterator for
16571         subsequent calls to lt_dlhandle_next.
16572         (lt_dlhandle_next): Either work as before when iterator is unset,
16573         or else skip handles that fail the interface check in iterator set
16574         by lt_dlhandle_first.
16575         * libltdl/ltdl.h (lt_dlhandle_first): Declaration.
16576         * doc/libtool.texi (User defined module data): Document the new
16577         APIs.
16578         * NEWS: Updated.
16579
16580 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16581
16582         Split lt_dlloader management into a separate file, and factor
16583         `loaders' list management into a new SList ADT.  In the process,
16584         the API for writing loaders is a little cleaner, so all the
16585         existing loaders were tweaked to take advantage of that:
16586
16587         * libltdl/slist.h, libltdl/slist.c: New files implementing a
16588         generic singly linked list container ADT.  The ADT is purely
16589         internal, and none of its API's are visible from an installed
16590         libltdl.
16591         * libltdl/lt_dlloader.h (lt_dlloader): Removed next field again
16592         :-) Renamed to lt_dlvtable for API.  Changed all callers.
16593         (lt_dlloader_get): New function to turn an lt_dlloader into its
16594         associated lt_dlvtable.
16595         (lt_dlloader_add): Removed unused data parameter.  The caller
16596         data belongs to (and is set by) the loader itself, not the
16597         loader's client.  Changed all callers.
16598         (lt_dlloader_name, lt_dlloader_data): Removed.  Use
16599         lt_dlloader_get instead!
16600         * libltdl/lt__private.h: Include slist.h.
16601         (lt__alloc_die_callback): Add missing LT_SCOPE to declaration.
16602         (lt_dlhandle_struct): Use lt_dlvtable instead of opaque
16603         lt_dlloader.
16604         * libltdl/ltdl.c (lt_dlexit): Rewritten for the new loader API.
16605         (loaders, lt_dlloader_add, lt_dlloader_remove, lt_dlloader_next,
16606         lt_dlloader_find): Moved from here...
16607         * libltdl/lt_dlloader.c ((loaders, lt_dlloader_add,
16608         lt_dlloader_remove, lt_dlloader_next, lt_dlloader_find): ...to
16609         here.  And rewritten in terms of new SList interface.
16610         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Rewritten in terms of
16611         new lt_dlloader interface.
16612         * libltdl/Makefile.am (libdlloader_la_SOURCES): Add slist.h and
16613         slist.c.  Move lt_dlloader.h from here...
16614         (pkginclude_HEADERS): ...to here.
16615         (libltdl_la_SOURCES): Add lt_dlloader.c and lt_dlloader.h.
16616
16617 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16618
16619         Collapse two almost identical structures into one:
16620
16621         * libltdl/lt_dlloader.h (lt_dlloader): Add next field.
16622         * libltdl/ltdl.c (lt_user_dlloader): Remove entirely.  Change all
16623         callers to use lt_dlloader instead.  Add a compatibility macro.
16624         (lt_dlloader_add): Remove copy and allocate stage, just hook
16625         directly into the loaders list.
16626
16627 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16628
16629         A cleaner way to access the private fields of an lt_dlhandle
16630         than my move of the module field into lt_dlinfo:
16631
16632         * libltdl/ltdl.c (lt_caller_data, lt_dlhandle_struct): Move from
16633         here...
16634         * libltdl/lt__private.h (lt_caller_data, lt_dlhandle_struct):
16635         ...to here.  And put the module field back here...
16636         * libltdl/ltdl.h (lt_dlinfo): ...instead of here.
16637         * libltdl/loaders/loadlibrary.c (vm_open): Adjust.
16638
16639 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16640
16641         * libltdl/lt__private.h (streq, strneq): New macros to make strcmp
16642         calls as used for simple comparison easier to read.
16643         * libltdl/loaders/dyld.c, libltdl/loaders/preopen.c,
16644         libltdl/ltdl.c: Use them!
16645
16646 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16647
16648         This pervasive changeset makes two intertwined deep changes to the
16649         operation of libtool (neither would work alone).  First, there is
16650         a new feature that allows libraries to preopen modules.  This
16651         entails a backwards incompatible change to the libltdl API for
16652         separating out the preloaded symbol lists by owner.  Second, in
16653         the tradition of "eating our own dogfood", libltdl now preloads
16654         its own dlloaders.  The internal API for dlloaders has also had to
16655         change in a backwards incompatible way in support of the new
16656         library preloading feature.  If you don't use preloaded libraries,
16657         you needn't change your project sources, though you will need to
16658         recompile against the new libltdl.  The API changes are mostly
16659         confined to dlloaders, so you probably needn't worry about those
16660         (unless you have written a custom loader that you want libltdl to
16661         use):
16662
16663         * configure.ac (AC_CONFIG_FILES): Add libltdl/loaders/Makefile.
16664         * libltdl/configure.ac (AC_CONFIG_FILES): Add loaders/Makefile.
16665         * libltdl/loaders: New directory for module loaders, to simplify
16666         Makefile rules, and to give the loaders themselves names that are
16667         unique in the first few characters.
16668         * libtoolize.in (func_copy_all_files): Copy recursively to pick up
16669         the loaders directory contents.
16670         * libltdl/loaders/Makefile.am: New file.  Move module building
16671         rules to here...
16672         * libltdl/Makefile.am: ...from here.
16673         (VERSION_INFO): Bumped version info to signify interface changes.
16674         (libltdl_la_CPPFLAGS, libltdlc_la_CPPFLAGS): Set LTDLOPEN
16675         appropriately for each library.
16676         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
16677         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
16678         libltdl/loader-loadlibrary.c libltdl/loader-preopen.c,
16679         libltdl/loader-shl_load.c: Moved from here...
16680         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
16681         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
16682         libltdl/loaders/loadlibrary.c libltdl/loaders/preopen.c,
16683         libltdl/loaders/shl_load.c: ...to here.
16684         (get_vtable): New entry function for each.
16685         * libltdl/loaders/preopen.c (lt_dlsymlists_t): Replaced by...
16686         (symlist_chain): ...a new structure which maps lists of preloaded
16687         symbols from the object that loads them.
16688         (lt_dlpreload_open): New function to automatically open all
16689         preloaded modules belonging to a named object (ORIGINATOR).
16690         * libltdl/lt__alloc.c (lt__zalloc): New function to return a block
16691         of zeroed out new memory.
16692         * libltdl/lt__alloc.h (lt__zalloc): Prototype it.
16693         * libltdl/lt__private.h (lt__alloc_die_callback): Add missing
16694         prototype.
16695         (lt__error_strings): Make this opaque to callers.
16696         * libltdl/lt_error.c (lt__error_strings): Move the implementation
16697         to here.
16698         * libltdl/lt_dlloader.h (lt_user_dlloader): Add extra fields to
16699         make originator focused preloading possible.  *BREAKS BACKWARDS
16700         COMPATIBILITY*
16701         (lt_dlloader_add): Take advantage of new fields to simplify
16702         paramater list.
16703         * libltdl/lt_system.h (LT_STR): New ANSI stringification macro.
16704         (LT_CONC): Fix it to work from within macros.
16705         * libltdl/ltdl.c (loader_init, loader_init_callback): Simplify
16706         dlloader loading.
16707         (get_vtable, preloaded_symbols): Point these at the preopen.c
16708         symbols to bootstrap the loader chain.
16709         (lt_dlinit): Load the preopen dlloader manually, and then use it
16710         to load any other preloaded dlloaders.
16711         (lt_dlloader_add): Simplify parameter list. Populate new
16712         fields. Chain new loaders according to priority field.
16713         * libltdl/ltdl.h (lt_dlsymlist): Add a new originator field.
16714         (lt_dlpreload_callback_func): Type of a callback for automatic
16715         lt_dlpreload_open loading.
16716         (LTDL_SET_PRELOADED_SYMBOLS): Adjust to hook into preloaded
16717         symbols from the "@PROGRAM@" originator.
16718         * tests/demo/dlmain.c (main): Use mangled preloaded_symbols symbol.
16719         * tests/pdemo/longer_file_name_dlmain.c (main): Ditto.
16720         * ltmain.in: Don't spew spurious warnings when dlopening and
16721         dlpreopening modules.
16722         (func_generate_dlsyms): Factored out from multiple copies in the
16723         rest of the code. Generate originator keyed symbol lists.
16724         (func_extract_archives): Also factored.  Extract the contents of
16725         convenience archives for linking with dependent libraries when
16726         --whole-archive is not available.
16727         [darwin]: Don't try to link $old_library unless it exists, and
16728         $lib is a bundle.
16729         * m4/ltdl.m4 (AC_LTDL_DLLIB): Check for all possible dynamic
16730         loading libraries/apis rather that stopping when an acceptable one
16731         is discovered.
16732         (LT_DLLOADERS): New variable for holding dlloaders that can be
16733         preloaded.
16734         * doc/libtool.texi: Document interface changes.
16735         * NEWS: Updated.
16736
16737 2004-07-12  Peter O'Gorman  <peter@pogma.com>
16738
16739         * m4/libtool.m4 [darwin]: Set whole_archive_flag_spec to '' for xlc,
16740         or it does not pass it's tests. xlc passes -noall_load (the default)
16741         and when -all_load is also specified Apple's /usr/bin/libtool barfs
16742         and dies.
16743
16744 2004-07-07  Gary V. Vaughan  <gary@gnu.org>
16745
16746         * libltdl/ltdl.h (lt_dlinfo): Move private module field to here...
16747         * libltdl/ltdl.c (lt_dlhandle_struct): ...from here.  Changed all
16748         callers.
16749         * libltdl/loader-loadlibrary.c (sys_wll_open): Use new inteface to
16750         scan loaded handle->info.module fields for previously loaded
16751         modules.
16752         * doc/libtool.texi (User defined module data): Document changes to
16753         the interface.
16754         * NEWS: Updated.
16755         Reported by Chuck Wilson <cwilson@ece.gatech.edu>
16756
16757 2004-07-07  Brad  <brad@comstyle.com>
16758
16759         * m4/libtool.m4: Fixes for the OpenBSD support
16760
16761 2004-06-24  Noah Misch  <noah@cs.caltech.edu>
16762
16763         * ltmain.in: Unset the zsh GLOB_SUBST option, which makes zsh
16764         handle backslash quoting poorly, before doing anything else.
16765         * tests/defs: Likewise.
16766
16767 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
16768
16769         * libtoolize.in (libtoolize_flags): With the --ltdl option, we
16770         libtoolize the libltdl subdirectory automatically.
16771         * m4/ltdl.m4 (AC_WITH_LTDL): Fix overquoted args.
16772
16773 2004-06-21  Peter O'Gorman  <peter@pogma.com>
16774
16775         * ltmain.in (dependency_libs) [darwin]: Remove -framework stuff from
16776         dependency_libs. Instead, invent a new .la var "inherited_linker_flags"
16777         to keep any linker flags which should be used when linking the library,
16778         but are outside the usual -L -l, -R etc that can be used in
16779         dependency_libs. Any unusual flags in dependency_libs cause recent
16780         versions of libtool to die with "cannot find the library `'", so
16781         it is required to move frameworks out of there. :(
16782
16783 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
16784
16785         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>:
16786         * libtoolize.in: Quote $# to make sh.test happy again.
16787
16788         * m4/ltdl.m4 (AC_WITH_LTDL): Remove redundant AC_REQUIRE calls.
16789         Either set variables to allow a client to link with the installed
16790         libltdl, or else compile a local libltdl as a convenience library.
16791         * libtoolize.in (opt_ltdl): Removed in favour of...
16792         (ltdldir): ...this, which is defaulted to "libltdl" or can be set
16793         by the user with an argument to --ltdl.
16794         (Main): Use it!
16795         * doc/libtool.texi (Distributing libltdl): Improved documentation
16796         on libltdl.
16797         (Invoking libtoolize): Document new optional --ltdl target
16798         directory argument.
16799
16800 2004-06-17  Gary V. Vaughan  <gary@gnu.org>
16801
16802         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Fix a typo
16803         in allow_undefined_flag: s,${Wl},${wl},g
16804
16805         * libtoolize.in (func_scan_files): Accept AC_WITH_LTDL as an
16806         indication that libltdl is being used.
16807         (Main): Without AC_CONFIG_MACRO_DIR, don't just dump all the
16808         macro files in `.' since they are never used, and aclocal will
16809         copy them from $aclocaldir into aclocal.m4 anyway.
16810         Reported by Alexandre Duret-Lutz <adl@gnu.org>
16811
16812 2004-06-16  Brad  <brad@comstyle.com>
16813
16814         * m4/libtool.m4: More improvements to OpenBSD support.
16815         * NEWS: Updated.
16816
16817 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
16818
16819         libltdl uses LIBOBJS, which leak out into a parent project if both
16820         share the same configure.ac.  Libtool itself doesn't compile any
16821         code, so it is okay to do it during bootstrap, but other projects
16822         need to treat libltdl as a configurable subproject to keep their
16823         respective LIBOBJS separate:
16824
16825         * libltdl/configure.ac: New file, based on configure.ac.
16826         * libltdl/Makefile.am (AC_LOCAL_AMFLAGS): Use our own m4
16827         directory.
16828         (ltdldata_DATA): List *all* the files that libtoolize --ltdl will
16829         install.
16830
16831 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
16832
16833         Automake 1.9 won't have the AC_PROG_EGREP bug (aclocal used to
16834         pull an old installed libtool.m4 as well as the bootstrap
16835         m4/libtool.m4 if an AC_DEFUN was removed), and we have
16836         lt~obsolete.m4 to work around it in the mean time.  libtoolize
16837         can install macro files from $prefix/share/aclocal perfectly well
16838         without us needing to move to a whole other directory:
16839
16840         * Makefile.am (pkgmacro_DATA): Renamed to aclocal_DATA, so m4
16841         files are installed to $prefix/share/aclocal again.
16842         (install-data-local): Don't remove just installed macros!
16843         * libtoolize.in (pkgmacrodir): Renamed to aclocaldir.
16844         (func_copy_some_files): New function factored out of...
16845         (func_copy_all_files): ...here.  Adjust to use func_copy_some_files.
16846         (re_pkgaux_files): Renamed to glob_pkgaux_files, since it is not
16847         a regular expression.
16848         (re_pkgmagro_files): Replaced with...
16849         (pkgmacro_files): ...a colon delimited list of libtool installed
16850         m4 files from aclocaldir.
16851         (Main): Copy macro files from aclocaldir again.
16852         * NEWS: Updated.
16853
16854 2004-05-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
16855
16856         * ltmain.sh (check_executable): The WIN32 API and MinGW do not support
16857         S_IXOTH and S_IXGRP so use of these modes should be conditional.
16858
16859 2004-05-21  Gary V. Vaughan  <gary@gnu.org>
16860
16861         * tests/tagtrace.test: Forgot to add this file to the repository
16862         for Alexandre's 2004-05-16 patch below.
16863
16864 2004-05-18  Peter O'Gorman  <peter@pogma.com>
16865
16866         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Make this an m4_defun,
16867         test the tags compiler to see if it is GCC, not the CC compiler.
16868
16869 2004-05-16  Alexandre Duret-Lutz  <adl@gnu.org>
16870
16871         * doc/libtool.texi (Invoking libtool): Mention --tag=TAG.
16872         (Tags, Trace interface): New nodes.
16873         * m4/libtool.m4 (LT_SUPPORTED_TAG): New macro.
16874         (_LT_LANG): Call it.
16875         * tests/tagtrace.test: New file.
16876         * tests/Makefile.am
16877         (TESTS): Add tagtrace.test.
16878         * tests/defs: Define AUTOCONF.
16879
16880 2004-05-14  Mike Gorchak  <lestat@i.com.ua>
16881
16882         * ltmain.in: Add new qnx version type support.
16883         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Use it.  Set
16884         ldqnx.so linker type.
16885         (AC_DEPLIBS_CHECK_METHOD): QNX6 uses GNU C++, with deplib
16886         checking, so use pass_all.
16887         (AC_LIBTOOL_PROG_COMPILER_PIC): Use -shared for QNX.
16888         (_LT_LANG_CXX_CONFIG): QNX can make shared libraries.
16889         * m4/ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): QNX opens deplibs on
16890         dlopen.
16891         * NEWS: Updated.
16892
16893 2004-05-05  Peter O'Gorman  <peter@pogma.com>
16894
16895         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Insert space
16896         around = for a test and a comma between runpath_var and $1. Bug
16897         reported by Max Bowsher.
16898
16899 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
16900
16901         * libltdl/argz.h: Moved from here...
16902         * libltdl/argz_.h: ...to here, so as not to shadow system
16903         argz.h when we `#include <argz.h>' for example.
16904         #include stdlib.h and sys/types.h to ensure we get a size_t
16905         definition.
16906         * libltdl/argz.c (HAVE_CONFIG_H): Set it up how ltdl likes it when
16907         used by another client.
16908         * m4/argz.m4: New file.
16909         (gl_FUNC_ARGZ): Try to find an error_t definition, and a system
16910         argz.h.
16911         * m4/ltdl.m4: Use it.
16912         (AC_LTDL_FUNC_ARGZ): Removed.
16913         * libltdl/lt__glibc.h: #include <argz.h> to pick up either the
16914         system argz.h or our libltdl/argz.h if necessary.
16915         * libltdl/Makefile.am (libltdl_la_SOURCES): Move argz.h from
16916         here...
16917         (ltdldata_DATA): ...here. Along with argz.c.
16918         (argz.h): Generate from argz_.h if the system file is missing.
16919         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16920
16921 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
16922
16923         According to Howard Chu <hyc@highlandsun.com>:
16924         Applications should assume that the native dlopen is NOT
16925         thread-safe, and take care of locking themselves. All application
16926         calls into libltdl should thus be protected by the caller.
16927
16928         * libltdl/lt_mutex.c, libltdl/lt_mutex.h: Removed.
16929         * libltdl/Makefile.am (pkginclude_HEADERS): Removed lt_mutex.h.
16930         (libltdl_la_SOURCES): Removed lt_mutex.c and lt_mutex.h.
16931         * libltdl/ltdl.h: Don't include lt_mutex.h.
16932         * libltdl/lt__private.h (LT__MUTEX_GETERROR, LT__MUTEX_SETERROR)
16933         (LT__MUTEX_SETERRORSTR): Renamed to...
16934         (LT__GETERROR, LT__SETERROR, LT__SETERRORSTR): ...this.  Changed
16935         all callers.
16936         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, lt_dlmutex_lock)
16937         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror):
16938         Removed.  Changed all callers.
16939         * doc/libtool.texi (Thread Saftey in libltdl):
16940         * NEWS: Updated.
16941
16942 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
16943
16944         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Detect Intel C++ compiler
16945         version more idiomatically.
16946
16947 2004-04-19  Albert Chin-A-Young  <china@thewrittenword.com>
16948
16949         * m4/libtool.m4: Use cc rather than ld to created
16950         a shared library on HP-UX 11.x. On HP-UX 10.x, the
16951         C compiler doesn't grok -b so we continue to use ld.
16952
16953         * m4/libtool.m4: Use cc rather than ld to create a
16954         shared library on Solaris. When using the Sun
16955         Workshop compiler 5.0 (and I presume any previous
16956         version), revert to ld due to compiler errors.
16957
16958         * m4/libtool.m4: Use cc rather than ld to created
16959         a shared library on Tru64 UNIX.
16960
16961         * m4/libtool.m4: Use cc rather than ld to created
16962         a shared library on IRIX.
16963
16964         * libltdl/loader-shl_load.c: Fix typos during reorg.
16965
16966 2004-04-19  Alexandre Duret-Lutz  <adl@gnu.org>
16967
16968         * doc/libtool.texi (LT_INIT): Properly display options in a table.
16969
16970 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
16971
16972         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Intel C++ compiler 8.0 and
16973         newer adds predep_objects and postdep_objects itself, so don't
16974         duplicate them in $archive_cmds and $archive_expsym_cmds.
16975         * NEWS: Updated.
16976         Reported by Roberto Bagnara <bagnara@cs.unipr.it>
16977
16978 2004-04-17  Peter O'Gorman  <peter@pogma.com>
16979
16980         * libltdl/loader-dyld.c: Fix compilation issues. Set Original author
16981         to me.
16982
16983 2004-04-17  Todd Vierling  <tv@duh.org>,
16984         Peter O'Gorman  <peter@pogma.com>
16985
16986         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use sysctl to get the
16987         max cmd length on BSD* and darwin. Make sure that there is a safety
16988         factor too.
16989
16990 2004-04-15  Scott James Remnant  <scott@netsplit.com>
16991
16992         * m4/libtool.m4 (_LT_LANG_DEFAULT_CONFIG): Remove code to handle 'none'
16993         and 'all' options, this now always assumes automatic mode as that
16994         works so well.
16995         (_LT_LANG_DEFAULT): Remove definition
16996         * m4/ltoptions.m4: Remove 'no-lang', 'auto-lang' and 'all-lang' options.
16997         * configure.ac: Invoke LT_LANG for each desired supported language.
16998         * doc/libtool.texi: Remove documentation for the LT_INIT options,
16999         rewrite LT_LANG documentation.
17000
17001 2004-04-14  Alexandre Duret-Lutz  <adl@gnu.org>
17002
17003         * bootstrap: Delete acinclude.m4.
17004
17005 2004-04-14  Gary V. Vaughan  <gary@gnu.org>
17006
17007         * libtoolize.in (configure_ac): Don't complain about the lack of
17008         aclocal.m4.
17009         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
17010
17011 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17012
17013         * m4/ltdl.m4 (AC_LIB_LTDL): Remove AC_REPLACE_FUNCS for memmove
17014         and strcpy.
17015
17016         * libltdl/lt__pre89.h, libltdl/memcpy.c, libltdl/memmove.c,
17017         libltdl/strchr.c, libltdl/strcmp.c, libltdl/strrchr.c: Remove
17018         half-assed pre-c89 support entirely.
17019         * libltdl/lt__private.h: Don't refer to lt__pre89.h.
17020         * libltdl/Makefile.am (ltdldata_DATA): Remove references to
17021         deleted files.
17022         * NEWS: Mention it.
17023
17024         * libltdl/lt__pre89.h, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/argz.c,
17025         libltdl/argz.h, libltdl/lt__glibc.h, libltdl/lt_dlloader.h,
17026         libltdl/lt__dirent.c, libltdl/lt__dirent.h, libltdl/lt__private.h,
17027         libltdl/lt__alloc.c, libltdl/lt__alloc.h, libltdl/lt_system.h,
17028         libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
17029         libltdl/loader-dyld.c,  libltdl/loader-loadlibrary.c,
17030         libltdl/loader-shl_load.c, libltdl/lt_error.h, libltdl/lt_mutex.h:
17031         Autoconf either defines to 1 or undefs the discovery macros it
17032         puts in config.h, and many (non-GNU) compilers throw a spurious
17033         warning when testing an #undef macro with #if.  For consistency,
17034         while we are touching all these lines, use defined(MACRO) style
17035         throughout.
17036         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17037
17038 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17039
17040         Factor out the individual loaders, in preparation for preloading
17041         them as libtool modules.  Currently loader-preopen.c is linked
17042         unconditionally and other appropriate loaders discovered by
17043         AC_LTDL_DLLIB are built and linked in:
17044
17045         * libltdl/Makefile.am (libltdl_la_SOURCES): Add loader-preopen
17046         module.
17047         * m4/ltdl.m4 (AC_LTDL_DLLIB): Use AC_LIBOBJ to add appropriate
17048         loaders to libltdl.
17049         * libltdl/lt_system.h (LT_SCOPE): Moved to here.
17050         * libltdl/ltdl.h (lt_dlloader, lt_user_data, lt_module)
17051         (lt_module_open, lt_module_close, lt_find_sym, lt_dlloader_exit)
17052         (struct lt_user_dlloader, lt_dlloader_next, lt_dlloader_find)
17053         (lt_dlloader_name, lt_dlloader_data, lt_dlloader_add)
17054         (lt_dlloader_remove): Moved declarations...
17055         * libltdl/lt_loader.h: ...to here.
17056         * libltdl/ltdl.c: Include lt_loader.h.  Move loader implementation
17057         code from here...
17058         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
17059         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
17060         libltdl/loader-loadlibrary.c, libltdl/loader-preopen.c,
17061         libltdl/loader-shl_load.c: ...to here.
17062         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
17063         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
17064         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
17065         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (AM_CPPFLAGS):
17066         Add -I$(top_srcdir)/../.. so that libltdl include files can be
17067         written as #include <libltdl/lt_dlloader.h> and found correctly.
17068
17069 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17070
17071         Factor out the mutex handling and error handling into their own
17072         modules.  Mutex handling is not currently useful in combination
17073         with posix threads, and should be easier to replace if it is in a
17074         separate module.  Additionally, we can factor out the loaders in
17075         such a way as to depend on only the portability layer and these
17076         new mutex and error modules now:
17077
17078         * libltdl/Makefile.am (pkginclude_HEADERS): Install lt_error.h and
17079         lt_mutex.h to $includedir/libltdl.
17080         (libltdl_la_SOURCES): Build lt_error and lt_mutex objects.
17081         * libltdl/ltdl.h (LT_SCOPE): Moved from here...
17082         * libltdl/lt_system.h (LT_SCOPE): ...to here.
17083         * libltdl/ltdl.c (lt_dlerror_strings, LT_DLSTRERROR): Moved from
17084         here...
17085         * libltdl/lt__private.h (lt__error_strings, LT__STRERROR): ...to
17086         here as additional internal interfaces to lt_error.  Changed all
17087         callers.
17088         * libltdl/ltdl.c (LT_DLMUTEX_LOCK, LT_DLMUTEX_UNLOCK)
17089         (LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR, lt_dlmutex_lock_func)
17090         (lt_dlmutex_unlock_func, lt_dlmutex_geterror_func)
17091         (lt_dllast_error): Moved from here...
17092         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, LT__MUTEX_SETERRORSTR)
17093         (LT__MUTEX_GETERROR, lt__mutex_lock_func, lt__mutex_unlock_func)
17094         (lt__mutex_geterror_func, lt__last_error): ...to here as
17095         additional internal interfaces to lt_mutex.  Changed all callers.
17096         (LT_MUTEX_SETERROR): Take an errorcode rather than a string.
17097         Changed all callers.
17098         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dlmutex_register): Moved from
17099         here...
17100         * libltdl/lt_mutex.c, libltdl/lt_mutex.h (lt_dlmutex_register):
17101         ...to here. New files.
17102         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dladderror, lt_dlseterror)
17103         (lt_dlerror_table):
17104         Moved from here...
17105         * libltdl/lt_error.c, libltdl/lt_error.h (lt_dladderror)
17106         (lt_dlseterror, lt_dlerror_table): ...to here. New files.
17107
17108 2004-04-13  Scott James Remnant  <scott@netsplit.com>
17109
17110         * Makefile.am (XDELTA_OPTIONS): Remove --pristine as that
17111         generates huge xdeltas.
17112
17113 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17114
17115         * libltdl/ltdl.c (argz_append, argz_create_sep, argz_insert)
17116         (argz_next, argz_stringify): Move from here...
17117         * libltdl/argz.c: New file. ...to here.
17118         * libltdl/lt__glibc.h: New file. Rename global symbols into the
17119         lt__ namespace.
17120         * libltdl/lt__private.h: Include lt__glibc.h.
17121         * libltdl/Makefile.am (libltdl_la_SOURCES): Add new files.
17122         (AM_CPPFLAGS): Add -DLTDL.
17123         * libltdl/argz.h (argz_append, argz_create_sep, argz_insert)
17124         (argz_next, argz_stringify): New file. Declare argz functions
17125         here, including lt__glibc.h when LTDL is defined to rename global
17126         symbols for libltdl.
17127         * m4/ltdl.m4 (AC_LTDL_FUNC_ARGZ): Add argz to AC_LIBOBJ if any of
17128         our argz_* functions are missing from the system libraries.
17129
17130         * libltdl/ltdl.c: Move standard headers and preprocessor guards
17131         from here...
17132         * libltdl/lt__private.h: ...to here.  New file to declare ltdl's
17133         internal interfaces.
17134         * libltdl/ltdl.c: Include lt__private.h.
17135         * m4/ltdl.m4 (AC_LIB_LTDL): Add lt_dirent to AC_LIBOBJ if all of
17136         opendir, readdir and closedir are missing.
17137         (AC_CHECK_HEADERS): Remove assert.h, ctype.h, errno.h, malloc.h,
17138         stdio.h and stdlib.h; these headers are all available in standard
17139         c89 environments and newer.
17140         * libltdl/lt__private.h: Include them here unconditionally.
17141         * libltdl/lt__dirent.c (opendir, readdir, closedir): New file.
17142         Windows dirent emulation functions moved to here...
17143         * libltdl/ltdl.c (opendir, readdir, closedir): ...from here.
17144         * libltdl/lt__dirent.h: New file.  Rename the global symbols from
17145         lt__dirent.c into the lt__ namespace so they don't clash with
17146         other libraries.
17147
17148 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17149
17150         Factor out the bottom portability layer from ltdl.  Code in this
17151         layer has global symbols renamed by lt__pre89.h, and may not
17152         refer to any symbols except those provided by the system libraries
17153         or other code in the portability layer:
17154
17155         * libltdl/lt__pre89.h: New file.  Rename all the symbols from
17156         LTLIBOBJS into the lt__ namespace so that they don't clash with
17157         other libraries.
17158         * libltdl/ltdl.c (rpl_memcpy, rpl_memmove, rpl_strchr, rpl_strcmp)
17159         (rpl_strrchr): Moved from here...
17160         * libltdl/memcpy.c (memcpy): ...to here, and fixed void *
17161         dereference bug...
17162         * libltdl/memmove.c (memmove): ...to here, and fixed void *
17163         dereference bug...
17164         * libltdl/strchr.c (strchr): ...to here...
17165         * libltdl/strcmp.c (strcmp): ...here...
17166         * libltdl/strrchr.c (strrchr): ...and here.
17167         * libltdl/Makefile.am (libltdl_la_SOURCES): Add lt__pre89.h.
17168         (libltdl_la_LIBADD, libltdlc_la_LIBADD): Add $(LTLIBOBJS).
17169         (ltdldata_DATA): Add replacement sources files.
17170         * m4/ltdl.m4 (AC_LIB_LTDL): Do careful config.h and LTLIBOBJ
17171         setting for missing pre89 functions.
17172
17173 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17174
17175         * libltdl/ltdl.h (LT_PARAMS): Removed.  Changed all users to
17176         ANSI prototypes.
17177         (lt_ptr): Keep backwards compatibility stub.
17178         * libltdl/ltdl.c, libltdl/ltdl.h: Use ANSI function declarations
17179         throughout.  s/lt_ptr/void */g.
17180
17181 2004-04-08  Fredrik Estreen  <estreen@algonet.se>
17182
17183         * m4/ltdl.m4: Rename shrext to shrext_cmds here too.
17184
17185 2004-04-06  Gary V. Vaughan  <gary@gnu.org>
17186
17187         There was no clean separation of abstraction layers in libltdl.
17188         The first step in fixing this is to factor out the memory
17189         management abstraction, making a start on removing promiscuity
17190         from the underlying portability layer:
17191
17192         * doc/libtool.texi (Libltdl interface): Remove lt_dlmalloc,
17193         lt_dlrealloc and lt_dlfree references.  The memory management
17194         layer used by libltdl is now private.
17195         * libltdl/lt_system.h: New installed header for system portability
17196         abstraction.
17197         * libltdl/ltdl.h: Use it.
17198         * libltdl/lt__alloc.c, libltdl/lt__alloc.h: New module above
17199         system portability layer to abstract ltdl's memory management.
17200         * libltdl/ltdl.c: Use lt__alloc.h.
17201         (closedir): Use free.
17202         (opendir): Use malloc/free.
17203         (lt__xalloc_die_callback): Report memory failures through
17204         lt_dlerror.
17205         (lt_dlinit): Use it to initialise memory management.
17206         (LT_DLMALLOC, LT_DLREALLOC, LT_DLFREE, LT_EMALLOC, LT_EREALLOC)
17207         (rpl_strdup, rpl_realloc, lt_estrdup, lt_emalloc, lt_erealloc):
17208         Removed in favour of...
17209         (lt__strdup, lt__memdup, MALLOC, REALLOC, FREE): ...these calls
17210         from libltdl/lt__alloc.h.  Changed all callers.
17211         (rpl_argz_append, rpl_argz_create_sep, rpl_argz_insert): As part
17212         of the portability layer, these functions no longer use libltdl
17213         memory management API.
17214         (free_vars): Factored out.
17215         (LT_DLMEM_REASSIGN): While redoing memory handling, renamed...
17216         * libltdl/lt__alloc.h (MEMREASSIGN): ...to this.
17217         * libltdl/Makefile.am (AUTOMAKE_OPTIONS): Let automake track
17218         dependencies automatically.
17219         (pkgincludedir): Override from parent package's setting.
17220         (pkginclude_HEADERS): Install lt_system.h.
17221         (libltdl_la_SOURCES): Add new files.
17222         * NEWS: Updated.
17223         Reported by Dalibor Topic <robilad@kaffe.org>
17224
17225 2004-04-01  Peter O'Gorman  <peter@pogma.com>
17226
17227         * ltmain.in: Remove an extra eval concat_cmds that some idiot added.
17228         Fixes double eval on AIX, reported by Albert Chin and Uwe Moeller.
17229
17230         * NEWS: Add a news item about xlc support that I forgot yesterday.
17231
17232 2004-03-31  Peter O'Gorman  <peter@pogma.com>
17233
17234         * m4/libtool.m4, ltmain.in (darwin): Support IBM's xlc and xlc++.
17235
17236 2004-03-31  Gary V. Vaughan  <gary@gnu.org>
17237
17238         * m4/libtool.m4 (_LT_LANG_C_CONFIG): If $compiler is not set, then
17239         don't call the macros that test it.
17240         (_LT_LANG_CXX_CONFIG): Ditto.
17241         (_LT_LANG_F77_CONFIG): Ditto.
17242         (_LT_LANG_GCJ_CONFIG): Ditto.
17243         (_LT_LANG_RC_CONFIG): Ditto.
17244
17245 2004-03-30  Gary V. Vaughan  <gary@gnu.org>
17246
17247         * libtoolize.in (func_scan_files): sed BRE have no alternation, so
17248         break LT_INIT matcher out.
17249         (func_serial): Don't escape literal parens for grep BRE.
17250
17251         * m4/libtool.m4 (LT_INIT): aclocal can't see AC_DEFUN_ONCE, so use
17252         AC_DEFUN and m4_define.
17253         * libtoolize.in (func_serial): No longer accept AC_DEFUN_ONCE...
17254         (func_grep): ...so mere grep is sufficient again...
17255         (EGREP): ...and this is no longer required.
17256
17257 2004-03-29  Gary V. Vaughan  <gary@gnu.org>
17258
17259         * m4/libtool.m4: Use LT_INIT as #serial tag.
17260         * libtoolize.in: Grok LT_INIT!  Pass A[CM]_PROG_LIBTOOL to...
17261         (func_serial_update): ...here, we now take an additional parameter
17262         containing another regex to match ancient serialed files.
17263         (func_serial): Accept AC_DEFUN_ONCE of the #serial tag...
17264         (func_grep): ...which requires egrep...
17265         (EGREP): ...substituted by config.status.
17266         (func_scan_files): Set seen_libtool if LT_INIT goes by.
17267
17268         * Makefile.am (pkgmacro_DATA): Install ltoptions.m4.
17269
17270         * libltdl/Makefile.am (AM_CPPFLAGS): Also check $top_builddir for
17271         config.h.
17272         (ltdl.o): config.h is in $top_builddir.
17273
17274 2004-03-24  Scott James Remnant  <scott@netsplit.com>
17275
17276         * NEWS: Explain more fully why we no longer load libraries
17277         with global symbol resolution.
17278         * doc/libtool.texi (libtool script contents): Add missing
17279         documentation for 'inherit_rpath' variable.
17280
17281         * configure.ac: Catch errors during calls to AC_PROG_CXX,
17282         AC_PROG_CXXCPP and AC_PROG_F77 before LT_INIT.  Only set the
17283         HAVE_CXX and HAVE_F77 conditions to true if an error didn't
17284         occur (AC_PROG_CXX leaves CXX="g++" even if it didn't find one).
17285         Set HAVE_GCJ and HAVE_RC to true correctly as well.
17286         * m4/libtool.m4 (LT_PROG_GCJ): If AC_PROG_GCJ or AM_PROG_GCJ are
17287         defined, expand to the definition of those instead of our own.
17288         Define GCJ to '' instead of 'no' if not found.
17289         (LT_PROG_RC) Define RC to '' instead of 'no' if not found.
17290         (_LT_LANG_GCJ_CONFIG): Require LT_PROG_GCJ to be expanded first.
17291         (_LT_LANG_RC_CONFIG): Require LT_PROG_RC to be expanded first.
17292
17293         * libltdl/ltdl.c (sys_dl_open): Don't load libraries with global
17294         symbol resolution.
17295         * NEWS: Updated.
17296
17297 2004-03-24  Albert Chin-A-Young  <china@thewrittenword.com>
17298
17299         * m4/libtool.m4: Add new variable, inherit_rpath, if the
17300         RPATHs of the libraries being linked are inherited in
17301         the output file. For systems with a linker exhibiting
17302         this feature, programs/libraries must be relinked at
17303         installation time.
17304
17305         * m4/libtool.m4: When linking convenience libraries on Solaris
17306         with the Sun C++ compiler, pass convenience libraries through
17307         to the linker with -Qoption between allextract/defaultextract.
17308         The Sun C++ compiler bundles -Qoption arguments so
17309         convenience libraries are linked with defaultextract
17310         otherwise.
17311         * tagdemo/Makefile.am, tagdemo/main.cpp, tagdemo/conv.h,
17312         tagdemo/conv.cpp: Augment tagdemo test to link a convenience
17313         library with a libtool library.
17314
17315         * ltmain.in: Piecewise linking doesn't work when the output
17316         file is an absolute path, use the basename only instead.
17317
17318         * ltmain.in: When a library is installed, dependent on a
17319         convenience library, and it involves relinking, the object
17320         files extracted from the convenience library are not removed
17321         after the relink. This is a problem if you build as non-root,
17322         install as root, then try to remove the build directory as
17323         non-root; Clean up properly if relink fails; Change
17324         "$realname"U to ${realname}T to be consistent.
17325
17326 2004-03-24  Scott James Remnant  <scott@netsplit.com>
17327
17328         * ltmain.in <prog linkmode>: Always add -L options to
17329         $newlib_search_path instead of just in scan mode to ensure that
17330         non-libtool libraries in user-specified directories can be found.
17331
17332 2004-03-22  Scott James Remnant  <scott@netsplit.com>
17333
17334         * m4/libtool.m4 (_LT_CONFIG): Remove unneeded else condition
17335         code, now the support determination is done in m4.
17336         (_LT_LANG): Correct comment, unexpected leak from keybuk-lt-tag.patch.
17337
17338 2004-03-21  Scott James Remnant  <scott@netsplit.com>
17339
17340         * libltdl/Makefile.am (libltdl_la_LDFLAGS): Increment CURRENT
17341         and AGE of libltdl, warranted by the addition of lt_dlhandle_find()
17342         since 1.5.2.
17343
17344 2004-03-21  Scott James Remnant  <scott@netsplit.com>
17345
17346         Further sweeping changes to the user interface to libtool from
17347         `configure.ac' to allow users to better control the list of
17348         supported languages.  Three LT_INIT options 'no-lang', 'all-lang'
17349         and 'auto-lang' (the default) control the initial list and others
17350         may be added with LT_LANG.
17351
17352         * m4/libtool.m4 (_LT_CONFIG): Renamed AC_LIBTOOL_CONFIG to _LT_CONFIG
17353         which is more consistent with our own namespace and gets us further out
17354         of Autoconf's.
17355         (_LT_LIBTOOL_TAGS): Output available_tags variable based entirely
17356         on the value of _LT_TAGS.
17357         (_LT_COPYING): Call _LT_LIBTOOL_TAGS to output available tags,
17358         always append tag configuration if the tag is available.
17359         (LT_LANG): New macro to enable support for a language that accepts
17360         tag names (eg. "CXX") or human language names (eg. "C++").
17361         (_LT_LANG): Internal support macro for above that appends the
17362         tag to _LT_TAGS and calls the appropriate config macro.
17363         (LT_INIT): Ensure that LT_LANG is not called before LT_INIT.
17364         (AC_LIBTOOL_TAGS): Removed, call LT_LANG for each language now.
17365         (_LT_AC_TAG_CHECK): Removed, _LT_LANG handles duplicate calls.
17366         (_LT_LANG_DEFAULT_CONFIG): Macro to set initial language support
17367         based on options passed to LT_INIT.
17368         (_LT_SETUP): Call _LT_LANG_DEFAULT_CONFIG.
17369         (_LT_AC_TAG_CONFIG): Removed, handled by _LT_LANG_DEFAULT_CONFIG.
17370         (_LT_AC_LANG_CXX, _LT_AC_LANG_F77, _LT_AC_LANG_GCJ): Removed,
17371         automatic language support inclusion now handled by
17372         _LT_LANG_DEFAULT_CONFIG.
17373         (AC_LIBTOOL_CXX): Obsolete macro, update to LT_LANG(C++).
17374         (AC_LIBTOOL_F77): Obsolete macro, update to LT_LANG(Fortran 77).
17375         (AC_LIBTOOL_GCJ): Obsolete macro, update to LT_LANG(Java).
17376         (AC_LIBTOOL_LANG_C_CONFIG_: Removed.
17377         (_LT_AC_LANG_C_CONFIG): Renamed to _LT_LANG_C_CONFIG, call
17378         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17379         (_LT_SETUP): Replace call to AC_LIBTOOL_LANG_C_CONFIG with call to
17380         new _LT_LANG_C_CONFIG macro.
17381         (AC_LIBTOOL_LANG_CXX_CONFIG): Removed.
17382         (_LT_AC_LANG_CXX_CONFIG): Renamed to _LT_LANG_CXX_CONFIG, call
17383         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17384         (AC_LIBTOOL_LANG_F77_CONFIG): Removed.
17385         (_LT_AC_LANG_F77_CONFIG): Renamed to _LT_LANG_F77_CONFIG, call
17386         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17387         (AC_LIBTOOL_LANG_GCJ_CONFIG): Removed.
17388         (_LT_AC_LANG_GCJ_CONFIG): Renamed to _LT_LANG_GCJ_CONFIG, call
17389         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17390         (AC_LIBTOOL_LANG_RC_CONFIG): Removed.
17391         (_LT_AC_LANG_RC_CONFIG): Renamed to _LT_LANG_RC_CONFIG, call
17392         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17393         (LT_AC_PROG_GCJ): Renamed to LT_PROG_GCJ.
17394         (LT_AC_PROG_RC): Renamed to LT_PROG_RC.
17395         * m4/ltoptions.m4: Define new 'no-lang', 'auto-lang' and 'all-lang'
17396         options which set the default for _LT_LANG_DEFAULT_CONFIG.
17397         * m4/lt~obsolete.m4: Removed AC_LIBTOOL_CONFIG, _LT_AC_LANG_C_CONFIG,
17398         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG; all of which are no
17399         long referenced in any way.
17400         * configure.ac: Enable all languages.
17401         * tests/cdemo/configure.ac, tests/demo/configure,ac,
17402         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
17403         tests/mdemo/configure.ac, tests/pdemo/configure,ac,
17404         tests/tagdemo/configure.ac: Remove calls to AC_LIBTOOL_TAGS,
17405         the default 'auto-lang' mode now does the right thing.
17406         * doc/libtool.texi (The LT_INIT macro): Add documentation for
17407         new LT_INIT options and the LT_LANG macro, replacing the old
17408         documentation of AC_LIBTOOL_TAGS which is no more.
17409         * NEWS: Updated.
17410
17411 2004-03-17  Scott James Remnant  <scott@netsplit.com>
17412
17413         * m4/libtool.m4: Removed AC_BEFORE references to AC_LIBTOOL_SETUP
17414         which is no more.
17415         * m4/lt~obsolete.m4: As AC_LIBTOOL_SETUP is no longer referenced,
17416         it can be removed from this file.  Remove _AC_PROG_LIBTOOL also.
17417
17418 2004-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17419
17420         * m4/libtool.m4: Remove newlines from lt_ld_extra, so
17421         variable can safely be stored in config.cache.
17422
17423 2004-03-14  Michael Pruett  <michael@68k.org>
17424
17425         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS0 [irix]: Define
17426         archive_expsym_cmds so that --export-symbols will work.
17427
17428 2004-03-11  Peter O'Gorman  <peter@pogma.com>
17429
17430         * ltmain.in (link_all_deplibs,darwin): Link libraries in the
17431         correct order. Bug from Zachary Pincus <zpincus@stanford.edu>.
17432
17433 2004-03-14  Scott James Remnant  <scott@netsplit.com>
17434
17435         * m4/ltmain.in: Only check precious_files_regex if it is not empty.
17436
17437 2004-03-14  Gary V. Vaughan  <gary@gnu.org>
17438
17439         * doc/libtool.texi (Autoconf and LTLIBOBJS): The correct version
17440         of Autoconf is 2.54.
17441         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
17442
17443 2004-03-13  Gary V. Vaughan  <gary@gnu.org>
17444
17445         * doc/libtool.texi (Using Automake): Cite correct Automake version
17446         for -dlopen quoting.
17447         (Autoconf and LTLIBOBJS): Cite correct Autoconf versions
17448         throughout.
17449         (Distributing libltdl): Use AM_CPPFLAGS; INCLUDES is deprecated.
17450         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
17451
17452 2004-03-05  David Edelsohn  <edelsohn@gnu.org>
17453
17454         * m4/libtool.m4: Disable building static libraries if building
17455         shared libraries on AIX 5L.
17456
17457 2004-03-05  Gary V. Vaughan  <gary@gnu.org>
17458
17459         * libtoolize.in: Remove --ltdl-tar.  It doesn't work with the
17460         current implementation, and seems more or less pointless.
17461         * doc/libtool.texi (Invoking libtoolize): Updated.
17462         * NEWS: Updated.
17463
17464         * doc/libtool.texi: This manual has not been maintained properly
17465         for a number of years.  Much of what it said was outdated, or
17466         plain wrong with reference to modern autotools.  This change
17467         represents a first pass edit to clean up the obviously wrong.
17468
17469 2004-03-02  Gary V. Vaughan  <gary@gnu.org>
17470
17471         * bootstrap: Prune out my arch mirror dir before running
17472         amok through the tree with 'rm -rf'!
17473
17474 2004-03-02  Patrick Welche  <prlw1@newn.cam.ac.uk>
17475
17476         * doc/libtool.texi (LT_INIT): Dumb typos fixed.
17477
17478 2004-02-23  Gary V. Vaughan  <gary@gnu.org>
17479
17480         * ltmain.in <install mode>: Add missing --help doc for
17481         -inst-prefix option.
17482
17483         * ltmain.in <link mode>: Add missing --help doc for -shrext
17484         option.
17485
17486         * ltmain.in (IFS): Move '\n' to beginning of IFS so that emacs
17487         doesn't offer to strip trailing ' \t' on every save.
17488
17489         * ltmain.in: Add missing --help doc for --preserve-dup-deps.
17490
17491 2004-02-22  Gary V. Vaughan  <gary@gnu.org>
17492
17493         * Makefile.maint (web-manual): Generate the web manual carefully
17494         so that links will still work when it is uploaded to gnu.org.
17495         * README-alpha: Note that this rule should be used at release
17496         time.
17497
17498 2004-02-20  Gary V. Vaughan  <gary@gnu.org>
17499
17500         Sweeping changes to the user interface to libtool from
17501         `configure.ac' to be more like AC_INIT and accept a space
17502         delimited list of options.  Instead of calling `AC_LIBTOOL_DLOPEN;
17503         AC_PROG_LIBTOOL', we now recommend `LT_INIT([dlopen])':
17504
17505         * m4/libtool.m4 (AC_PROG_LIBTOOL, _AC_PROG_LIBTOOL)
17506         (AC_LIBTOOL_SETUP): Removed.  Added AU_DEFUNs.
17507         (LT_INIT): Replace with an Autoconf like interface which accepts a
17508         version number as a minimum required libtool release at configure
17509         time.
17510         * m4/ltoptions.m4: New file inspired by automake/m4/amoptions.m4,
17511         which additionally flags an error if the configuring libtool
17512         macros are not new enough according to LT_INIT.
17513         (LT_OPTION_DEFINE): New macro to declare option handlers.
17514         (dlopen, win32-dll, shared, disable-shared, static)
17515         (disable-static, fast-install, disable-fast-install, pic-only)
17516         (no-pic): Newly LT_OPTION_DEFINEd option handlers that use...
17517         (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC, _LT_ENABLE_FAST_INSTALL)
17518         (_LT_WITH_PIC, _LT_WIN32_DLL): New macros to handle
17519         LT_LIBTOOL_INIT options...
17520         * m4/libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC)
17521         (AC_ENABLE_FAST_INSTALL, AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL):
17522         ...to replace these user interface macros, now defined as
17523         AU_DEFUNs.
17524         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
17525         Removed.  No longer required with LT_INIT_LIBTOOL interface.
17526         Added AU_DEFUNs.
17527         (AM_ENABLE_SHARED, AM_DISABLE_SHARED, AM_ENABLE_STATIC)
17528         (AM_DISABLE_STATIC): Changed AU_DEFUNs to match new interface.
17529         (_LT_SETUP): Internal to LT_INIT, replaces AC_LIBTOOL_SETUP.
17530         * m4/lt~obsolete.m4 (AC_LIBTOOL_SETUP, _AC_PROG_LIBTOOL)
17531         (_LT_PROG_LTMAIN):  More AC_DEFUNs that have been retracted.
17532         * configure.ac: Use new interface.
17533         * doc/libtool.texi: Document new interface.
17534         * NEWS: Updated.
17535
17536 2004-02-18  Gary V. Vaughan  <gary@gnu.org>
17537
17538         * commit (SHELL): Set it explicitly, incase some madman is using
17539         tcsh as their login shell :-b
17540
17541 2004-02-15  Scott James Remnant  <scott@netsplit.com>
17542
17543         * Makefile.am (m4/ltversion.m4): Generate serial number by
17544         removing initial '1.' from the revision, replace @MACRO_SERIAL@
17545         with this new variable.
17546         * m4/ltversion.in: Use @MACRO_SERIAL@ for the serial number
17547         as some shells don't like a '.' when using test.
17548
17549         * m4/ltversion.in: Add a serial number to this file otherwise
17550         libtoolize will refuse to copy it into $pkgdatadir, where it
17551         is needed by m4/libtool.m4.
17552
17553 2004-02-15  Peter O'Gorman  <peter@pogma.com>
17554
17555         * m4/libtool.m4, ltmain.in: Rename shrext to shrext_cmds.
17556
17557 2004-02-13  Scott James Remnant  <scott@netsplit.com>
17558
17559         * ltmain.in, libtoolize.in, commit, config/mailnotify: Correctly
17560         quote usage of $basename and $dirname to avoid (unlikely) path
17561         expansion.
17562
17563         * tests/sh.test: Test the config/ltmain.sh and libtoolize in the
17564         build directory not the source directory, where they won't exist
17565         during 'make distcheck'.
17566         * ltmain.in: Revert one line of previous intendation clean-up
17567         to enable one of the sh.test checks to pass.
17568
17569         * tests/cdemo/configure.ac: Drop AC_PREREQ back to 2.54, this
17570         was debris from Gary's cvsapply going mad and wasn't backed
17571         out.
17572
17573         * Makefile.am (pkgmacro_DATA): We have to distribute
17574         m4/ltversion.m4 because it can be needed before the Makefile
17575         that generates it exists.
17576
17577 2004-02-13  Gary V. Vaughan  <gary@gnu.org>
17578
17579         * commit (MKSTAMP): Look for mkstamp in the right place.
17580
17581 2004-02-12  Scott James Remnant  <scott@netsplit.com>
17582
17583         * Makefile.maint, Makefile: Move rules intended for Libtool
17584         maintainers only out of the Makefile we distribute and into one
17585         that we only need keep in CVS.
17586         * README-alpha: Add -fMakefile.maint to the instructions where
17587         needed.
17588
17589 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>
17590         Scott James Remnant  <scott@netsplit.com>
17591
17592         * ltmain.in: Fix typo: duplcations -> duplications,
17593         Fix indentation of a handful of badly indented blocks,
17594         Fix last remaining use of 'grep' to $GREP,
17595         Remove unnecessary trailing slash where we break a line on a
17596         command separator.
17597         * m4/libtool.m4: Also remove unnecessary trailing slash where
17598         we break a line on a command separator.
17599
17600 2004-02-12  Scott James Remnant  <scott@netsplit.com>
17601
17602         * m4/ltoptions.m4: This got committed by an over-keen Gary,
17603         but the support for this isn't ready yet and if aclocal decides
17604         to m4_include this (which it will) you'll get a non-functioning
17605         libtool.  Removed.
17606
17607         * ltmain.in: Remove duplicated version checking block.
17608
17609         * bootstrap, m4/libtool.m4: Argh, Gary went crazy after cvsapply
17610         went crazy and backed out more than he should've.  This patch puts
17611         some of it back again.
17612
17613         * ltmain.in, libtoolize.in, commit, config/mailnotify: Remove
17614         $SED from definitions of $dirname and $basename and prefix each
17615         use with it instead.  Some shells (zsh) treat the expansion as
17616         a single command instead of a command with arguments.
17617
17618         * config/mailnotify (func_sendmail): Look for sendmail in a
17619         couple of common non-PATH locations as well.
17620
17621         * ltmain.in: Fix typo: macro's -> macros.
17622
17623         * ltmain.in: Correct definition of basename sed expression to
17624         not include single quotes.
17625
17626 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
17627
17628         * libtoolize.in: Use $progpath as for ltmain.in to work around the
17629         IRIX bug described below.
17630         * commit, config/mailnotify: Ditto. Resynch with cvs-utils HEAD.
17631
17632 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>,
17633             Gary V. Vaughan  <gary@gnu.org>
17634
17635         * ltmain.in (progpath): Work around backward compatibility issue
17636         on IRIX 6.5. On IRIX 6.4+, sh is ksh but when the shell is invoked
17637         as "sh" and the current value of the _XPG environment variable is
17638         not equal to 1 (one), the special positional parameter $0, within
17639         a function call, is the name of the function. So, rather than
17640         using "$0" in functions, we set $progpath in the body and use that
17641         everywhere instead (incase of code refactoring later).
17642         (EXIT_SUCCESS, EXIT_FAILURE, EXIT_MISMATCH): For clarity.
17643
17644 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
17645
17646         * Makefile.am (EXTRA_DIST): Remove config/mailnotify after all; it
17647         is of no use in a distribution tarball.
17648
17649 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
17650
17651         * commit: Fix cut-n-paste error.
17652
17653         * commit: Completely change CVS/Root->name sed script to actually
17654         work when :ext: is not shown.
17655
17656         * commit: Improve CVS/Root->name sed script to work when :ext: is
17657         not shown.
17658
17659 2004-02-11  Albert Chin-A-Young  <china@thewrittenword.com>
17660
17661         * m4/libtool.m4: Fix typo: testring -> teststring.
17662
17663 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
17664
17665         * commit: Mail a nicer commit notification.
17666
17667 2004-02-10  Gary V. Vaughan  <gary@gnu.org>
17668
17669         * NEWS, bootstrap, configure.ac, ltmain.in, m4/libtool.m4:
17670         * m4/lt~obsolete.m4, tests/cdemo/configure.ac: Arghh.  cvsapply just
17671         went crazy and committed a bunch of stuff that shouldn't have been
17672         in the last changeset.  The patch backs it all out.
17673
17674         * config/mailnotify: New file for mailing commit notifications,
17675         imported from cvs-utils.
17676         * commit: Updated from cvs-utils and tweaked for libtool.
17677         * Makefile.am (EXTRA_DIST): Add config/mailnotify.
17678
17679 2004-02-06  Gary V. Vaughan  <gary@gnu.org>
17680
17681         * bootstrap: Remove vcl.tmp, otherwise it can interfere with make.
17682         * Makefile.am (vcl.tmp): Move comment out of multi-line command,
17683         as this rule is called from bootstrap as if it were a Makefile.
17684
17685         * m4/ltversion.in: New file to capture what version number macros
17686         are being used.
17687         * Makefile.am (m4/ltversion.m4): New rule to create it from
17688         m4/ltversion.in.
17689         (nodist_pkgmacro_DATA): Add m4/ltversion.m4.
17690         (EXTRA_DIST): Add m4/ltversion.in.
17691         * m4/libtool.m4 (AC_LIBTOOL_SETUP): AC_REQUIRE LTVERSION_VERSION
17692         from ltversion.m4.
17693         * bootstrap: Call the Makefile.am to create an initial
17694         m4/ltversion.m4.
17695         * ltmain.in: Diagnose version mismatches of various flavours.
17696         * TODO: Remove mismatch item.
17697         * NEWS: Updated.
17698
17699         * Makefile.am ($(top_builddir)/config.status): Removed.
17700         * configure.ac (CONFIG_STATUS_DEPENDENCIES): This substitution is
17701         how automake-1.8 now informs all Makefiles when config.status
17702         needs to be rebuilt.
17703         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
17704
17705         * configure.ac (AC_CONFIG_FILES): Generate libtoolize from here.
17706         * Makefile.am (libtool, libtoolize): These rules are redundant.
17707         Automake generates better rules for remaking these files.
17708
17709         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Catch unexpanded macros with
17710         beginning with LT_ and _LT_.
17711         * configure.ac (LT_MAJOR, LT_MINOR, LT_MICRO, LT_ALPHA): Renamed
17712         to lt_major, lt_minor, lt_micro, lt_alpha to save triggering the
17713         unexpanded macros error.
17714
17715         * m4/libtool.m4 (AC_PROVIDE_IFELSE): Removed.  We now require
17716         Autoconf 2.58, which ships this macro anyway.
17717
17718         * Makefile.am: Comment typo.
17719
17720         * m4/libtool.m4 (LT_PREREQ): Declare the minimum release number
17721         that is required for the calling code.
17722         * doc/libtool.texi (AC_PROG_LIBTOOL): Document it.
17723         * NEWS: Updated.
17724
17725 2004-02-05  Peter O'Gorman  <peter@pogma.com>
17726
17727         * ltmain.in (infer_tag, win32_libid): Style changes. Rename
17728         infer_tag to func_infer_tag and win32_libid to func_win32_libid.
17729         * m4/libtool.m4 (cygwin): rename win32_libid to func_win32_libid.
17730
17731 2004-02-04  Peter O'Gorman  <peter@pogma.com>
17732
17733         * ltmain.in (infer_tag): Move tag inferrence to a shell function.
17734         Also test $base_compile against $CC with escaped arguments. Bug
17735         reported by Geoff Keating <geoffk@apple.com>.
17736
17737 2004-02-03  Scott James Remnant  <scott@netsplit.com>
17738
17739         * Makefile.am (install-data-hook): Manually make config.guess
17740         and config.sub executable after they are installed as _DATA.
17741         We can't use _SCRIPTS because the various program name
17742         transforms may be applied to them.
17743         (dist_pkgdata_DATA): List config.guess and config.sub here
17744         (pkgdata_SCRIPTS): instead of here.
17745
17746 2003-02-03  Scott James Remnant  <scott@netsplit.com>
17747
17748         * ltmain.in: Create temporary directory under a strict umask
17749         rather than running chmod afterwards, preventing a race
17750         condition where the directory could be replaced with a symbolic
17751         link in the time between the two commands.
17752
17753 2004-01-31  Peter O'Gorman  <peter@pogma.com>
17754
17755         * m4/libtool.m4 (_LT_CONFIG_STATUS_DECLARE): Change `echo to
17756         `$echo, causes problems when builtin echo is broken. Reported
17757         by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17758
17759 2004-01-27  Scott James Remnant  <scott@netsplit.com>
17760
17761         This fixes release procedure problems discovered whilst making
17762         the 1.5.2 release.
17763
17764         * Makefile.am (cvs-dist): Because we check whether ChangeLog
17765         has been committed, this rule can't be run with uncommitted
17766         source so we can't run 'commit' and don't need to run
17767         'make dist' a second time.  Fix CVS tag as it should be
17768         "release-X" not "Release-X".
17769         (cvs_commit): New rule for the cvs-release chain that runs
17770         'commit'
17771         (cvs-release): Depend on cvs-commit, depend on deltas instead of
17772         cvs-diff and xdelta.
17773         (cvs-diff): Removed, replaced with delta-diff.
17774         (delta-diff): Unpack and diff the old and new tarballs rather
17775         than using CVS, so we get a genuinely complete diff.
17776         (xdelta): Removed, replaced with delta-xdelta.
17777         (got-xdelta): New rule for improved reading.
17778         (delta-xdiff): Copied and cleaned up version of old xdelta rule.
17779         (deltas): Depends on delta-diff and delta-xdelta (make deltas).
17780         (cvs-news): Don't depend on timestamps, cvs-dist itself does now.
17781         (prev-tarball): This is the only place we need a LASTRELEASE check
17782         so copy the code here and remove the CHECK_RELEASE variable.
17783         (new-tarball): Check there's a new tarball (did cvs-dist work?)
17784         (FETCHFILES): Remove obsolete libltdl mentions.
17785         * README-alpha: Update CVS instructions as everything's changed
17786         on Savannah.
17787         (Release procedure): Update NEWS and ChangeLog after changing
17788         the version number (both times); Run 'make fetch' after running
17789         'configure' (difficult to do it beforehand); Require 'commit'
17790         before 'make cvs-dist' as that checks ChangeLog is committed;
17791         'make deltas' instead of 'cvs-diff' and 'xdelta', pass LASTRELEASE
17792         to make instead of OLDVERSION (and it's mandatory); Clean up
17793         uploading paragraph; Clearer announcement sending instruction;
17794         Removed ftp-upload@gnu.org mail as that's not necessary now;
17795         Make web page updating instructions a bit clearer; Add an instruction
17796         to update the manual for non-alphas.
17797         (Alpha release note template): Add a Subject; update CVS instructions.
17798         (Full release note template): Add a Subject; update CVS instructions.
17799         * configure.ac: Add dist-bzip2 to AM_INIT_AUTOMAKE as we talk
17800         about bz2 files in our release announcements; remove old reference
17801         to OLDVERSION.
17802
17803 2004-01-25  Scott James Remnant  <scott@netsplit.com>
17804
17805         * NEWS: Include 1.5.2 release information.
17806
17807 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
17808
17809         This fixes a bug in the libtoolize ltdl source installation rules,
17810         which were copying Makefile.in from the libtool tree into the
17811         package running libtoolize.  Now we explicitly list the files to
17812         copy to force the package to generate its own Makefile.in:
17813
17814         * libltdl/Makefile.am (libltdl_la_SOURCES, libltdlc_la_SOURCES):
17815         Add ltdl.h.
17816         (ltdldatadir): New variable for installation directory of
17817         libtoolize --ltdl files.
17818         (ltdldata_DATA): Tell automake what files to copy there at install
17819         time (and remove at unistall time!).
17820         (local-install-files): Removed.  This hack is not required
17821         anymore, the automake generated install rules are much more
17822         advanced than this.
17823         * Makefile.am (install-data-hook, uninstall-local): Removed.
17824         Libltdl files for libtoolize are installed by their own Makefile
17825         now.
17826
17827 2004-01-22  Jeff Squyres  <jsquyres@lam-mpi.org>
17828
17829         * m4/libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Some compilers
17830         (e.g. Intel Linux icc compiler) write temporary files to the current
17831         directory. These compilers do support -c and -o simultaneously but
17832         wrongly fail the test due to the failure to create temporary
17833         files. It is incorrect to penalize compilers which write temporary
17834         files to the current directory so the 'chmod -w .' is therefore
17835         removed.
17836
17837 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
17838
17839         * m4/libtool.m4 (LT_AC_PROG_EGREP): Wrapper for AC_PROG_GREP.
17840         AIX has a brain-dead grep that only handles lines < 2048
17841         characters.  Default GREP incase we are not using a future
17842         autoconf that sets it for us :-)  Changed all callers to use $GREP
17843         instead of grep, and to AC_REQUIRE LT_AC_PROG_EGREP.
17844         Declare GREP as a libtool config var.
17845         * ltmain.in: Use it.
17846         * tests/sh.test (scripts): Accept `if $GREP "^foo=bar"' by
17847         tightening the regexp.
17848         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
17849
17850 2004-01-21  Nick Hudson  <skrll@netbsd.org>
17851
17852         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [netbsd*]: Remove
17853         gratuitous ${libname}${release}${shared_ext} from
17854         library_names_spec.
17855
17856 2004-01-21  Peter O'Gorman  <peter@pogma.com>
17857
17858         * m4/libtool.m4 (AC_PROG_LD_RELOAD_FLAG): On darwin change the
17859         reload_cmds to use $CC, otherwise ld will thin out any fat
17860         objects.
17861
17862 2004-01-18  Benjamin Reed  <ranger@befunk.com>
17863
17864         * ltmain.in: Fix handling of frameworks in search paths.  Also
17865         a one-liner fix to eval shrext in the libtool library search.
17866
17867 2004-01-16  Gary V. Vaughan  <gary@gnu.org>
17868
17869         * configure.ac (AM_INIT_AUTOMAKE): Require 1.8 for bootstrap, or
17870         else aclocal.m4 is huge, and m4 directory is not distributed.
17871
17872         * configure.ac (AC_CONFIG_HEADERS): Create config.h in
17873         $top_srcdir.
17874         * m4/ltdl.m4 (AC_LIB_LTDL): Run AC_CONFIG_HEADERS for the user if
17875         necessary. Calculate filename from first argument to
17876         AC_CONFIG_HEADERS, and substitute as CONFIG_H.
17877         * libltdl/Makefile.am (AM_CPPFLAGS): Make sure we are searching in
17878         $top_srcdir for headers.
17879         (DEFS): Override the default HAVE_CONFIG_H with the config.h
17880         filename.
17881         (ltdl.lo): Reference config.h via $(CONFIG_H).
17882         * libltdl/ltdl.c (HAVE_CONFIG_H): Ditto.
17883
17884 2004-01-15  Scott James Remnant  <scott@netsplit.com>
17885
17886         * m4/lt~obsolete.m4: Add a file containing aclocal-fooling
17887         macro definitions which stop the contents of an installed
17888         libtool.m4 ending up in our aclocal.m4 when we bootstrap.
17889         * Makefile.am (pkgmacro_DATA): Note that we don't need to add
17890         lt~obsolete.m4 to this list.
17891
17892 2004-01-12  Gary V. Vaughan  <gary@gnu.org>
17893
17894         * m4/libtool.m4 (_LT_COPYING): Factor out copyright message so it
17895         only needs to be updated in one place.
17896         (AC_LIBTOOL_CONFIG): Refactor to be more readable.  Only add
17897         tags if a compiler was found; ie if you have no gcj compiler,
17898         don't tack the GCJ tag onto the generated libtool script.
17899
17900 2004-01-13  Peter O'Gorman  <peter@pogma.com>
17901
17902         * m4/libtool.m4: Quote shrext as it is evaled in ltmain.
17903
17904 2004-01-11  Scott James Remnant  <scott@netsplit.com>
17905
17906         * ltmain.in: new -precious-files-regex link mode option
17907         to prevent removal of matching files from the temporary
17908         output directory.
17909         (Debian Bug #221420)
17910         * doc/libtool.texi: document the new option.
17911         * NEWS: announce the new option.
17912
17913 2004-01-11  Gary V. Vaughan  <gary@gnu.org>
17914
17915         * libtoolize.in (func_copy_all_files): s/xfunc_copy/Xfunc_copy.
17916         Now the test can actually succeed sometimes.
17917
17918 2004-01-09  Gary V. Vaughan  <gary@gnu.org>
17919
17920         * libtoolize.in: Break out of the command argument parse loop when
17921         -- is encountered.
17922
17923 2004-01-08  Gary V. Vaughan  <gary@gnu.org>
17924
17925         * libtoolize.in (func_copy_all_files): s/test "x/test "X/ to keep
17926         tests/sh.test happy.
17927
17928 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
17929
17930         * Makefile.am (aclocal_macros, aclocal_DATA): Removed.
17931         (EXTRA_DIST): Remove m4 macro files; they are automatically
17932         added by automake.
17933         (pkgmacrodir): Where to install libtool macro files.
17934         (pkgmacro_DATA): List installable libtool macro files.
17935         (install-data-local): Remove previous versions of ltdl.m4 and
17936         libtool.m4 from their old location.
17937         * libtoolize.in: Use new pkgmacrodir installed macros when
17938         libtoolizing a project.  Treat libtool.m4 and ltdl.m4 specially,
17939         and func_serial_update() any other files from pkgmacrodir.
17940         (pkgmacrodir): Where to find installed libtool macro files.
17941         (aclocaldir): Removed.
17942         (func_copy_all_files): Add an optional callback parameter to
17943         control how files are copied.  If the callback is passed, don't
17944         tell it whether it can copy or not.
17945         (func_serial): Exchange parameters and make macro_regex optional,
17946         so that this function can be used to extract serial numbers from
17947         files with the traditional /^# serial [1-9][0-9]*$/ syntax.
17948         Changed all callers.
17949         (func_serial_update): Make macro_regex optional last parameter, so
17950         that this function can be used as a callback for
17951         func_copy_all_files().  Changed all callers.
17952         * m4/ltsugar.m4: Add a serial number.
17953
17954 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
17955
17956         A complete rewrite of the m4 code involved in the generation of
17957         libtool via config.status.  The old way involved manually
17958         synchronising disparate bits of shell code in several macros, to
17959         quote a copy of a shell variable, put that in config.status, maybe
17960         add it to some quotation loops to prevent early expansion, and
17961         then add a block to _LT_CONFIG_COMMANDS to bring it into the
17962         libtool script.  The new way is to mark shell variables for
17963         propogation using _LT_DECL for language independent variables, or
17964         _LT_TAGDECL for those that need to be propogated in several
17965         language flavours.  The marking can be done in the macro that
17966         probes the variables, and this new m4 machinery takes care of
17967         synchronising all the other bits of code at autoconf time:
17968
17969         * m4/ltsugar.m4:  New file.  Macros that are useful outside the
17970         context of libtool.  Initially, contains some generalised list
17971         management macros, and the scaffolding for dictionary type data
17972         storage and retrieval.
17973         * Makefile.am (aclocal_macros): Install ltsugar.m4.
17974         * m4/libtool.m4 (_LT_DECL): Mark a shell variable for export to
17975         the libtool script, along with a comment, and hints for quoting
17976         and renaming.
17977         (_LT_TAGDECL): Similarly mark a tagged shell variable for export
17978         in each tag.
17979         (lt_decl_tag_varnames, lt_decl_quote_varnames)
17980         (lt_decl_dquote_varnames, lt_decl_varnames_tagged)
17981         (lt_decl_all_varnames):  New utility macros for managing lists of
17982         shell variable names from _LT_DECL and _LT_TAGDECL.
17983         (_LT_CONFIG_STATUS_DECLARATIONS, _LT_CONFIG_STATUS_DECLARE):
17984         Expand to correctly quoted variable declarations in config.status
17985         from all marked shell variables.
17986         (_LT_LIBTOOL_DECLARE): Expand to commented and quoted variable
17987         declaration for libtool tag section.
17988         (_LT_LIBTOOL_CONFIG_VARS, _LT_LIBTOOL_TAG_VARS): Pass all marked
17989         variables to _LT_LIBTOOL_DECLARE.
17990         (_LT_CONFIG_COMMANDS): Use _LT_CONFIG_STATUS_DECLARATIONS and
17991         friends to generate all the variable passing shell code for
17992         config.status, to get marked variables from libtool.m4 into
17993         libtool itself eventually.
17994         (AC_LIBTOOL_CONFIG): Generate marked variable code for libtool tag
17995         configuration.  Changed all client macros to mark variables
17996         suitably rather than the hand pasting that was necessary
17997         previously.
17998         (AC_PROG_SED): Renamed from LT_AC_PROG_SED.
17999         (LT_AC_PROG_SED): Wrap AC_PROG_SED, and mark shell variables for
18000         propogation to the libtool script.
18001
18002 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
18003
18004         * libtoolize.in (seen_gettext): Removed unused variable.
18005
18006 2004-01-06  Gary V. Vaughan  <gary@gnu.org>
18007
18008         * libtoolize.in (func_scan_files): Don't assume the existence of
18009         aclocal.m4.  Make the comment more descriptive.
18010         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
18011
18012         * NEWS: Note libtoolize changes.
18013
18014         * ChangeLog.2003: New file, containing all the ChangeLog entries
18015         from 2003.  Trimmed ChangeLog accordingly.
18016
18017         * ltmain.in: Output 2004 in the copyright from libtool --version.
18018
18019 2004-01-03  Stefan Nordhausen  <nordhaus@informatik.hu-berlin.de>
18020         Scott James Remnant  <scott@netsplit.com>
18021
18022         * ltmain.in: Don't use the mkdir -p option when creating a
18023         temporary output directory so a symlink attack can't be used to
18024         arbitrarily chmod other directories on the system if libtool
18025         gets run as root.
18026
18027 2004-01-02  Peter O'Gorman  <peter@pogma.com>
18028
18029         * m4/libtool.m4: Ensure that ${ZSH_VERSION+set} is properly escaped.
18030
18031         * m4/libtool.m4 (CDPATH): Change the CDPATH setting so that it
18032         allows for zsh differences, as noted in the autoconf manual's
18033         Portable Shell - Special Shell Variables section.
18034
18035 2004-01-02  Scott James Remnant  <scott@netsplit.com>
18036
18037         * .cvsignore: Ignore stamp-vcl created by the Makefile.
18038
18039 2004-01-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
18040         Joe Orton  <joe@manyfish.co.uk>
18041
18042         * m4/libtool.m4 (AC_LIBTOOL_CONFIG): Add extra blackslash
18043         in front of all the inner double-quotes as this is removed
18044         on Solaris, IRIX and AIX leading to broken definitions
18045         in config.status.
18046
18047 2004-01-02  Scott James Remnant  <scott@netsplit.com>
18048
18049         * NEWS: Next release will be in 2004.
18050
18051 2003-12-31  Scott James Remnant  <scott@netsplit.com>
18052
18053         * ltmain.sh: Infer tagged configuration for link mode with the
18054         full compiler arguments available rather than only the first.
18055
18056 2003-12-31  Alexandre Duret-Lutz  <adl@gnu.org>
18057
18058         * ltmain.sh: Quote $exec_cmd before it is eval'ed, so that
18059         libtool --mode=execute echo '4 * 5' does not expand the `*'.
18060
18061 2003-11-28  Peter O'Gorman  <peter@pogma.com>
18062
18063         * m4/libtool.m4: Move things around so that "setopt NO_GLOB_SUBST"
18064         to make zsh behave wrt \ escapes happens early in config.status.
18065
18066 2003-11-27  Gary V. Vaughan  <gary@gnu.org>
18067
18068         * libltdl/configure.ac: Removed.
18069         * configure.ac (AC_CONFIG_HEADERS): Merged from
18070         libltdl/configure.ac.
18071         (AC_LIB_LTDL): Ditto.
18072         (AC_CONFIG_FILES): Add libltdl/Makefile.
18073         (AC_CONFIG_SUBDIRS): Removed.
18074         (AC_CONFIG_COMMANDS): Remove generation of libltdl/ltmain.sh.
18075         * libltdl/Makefile.am (libtool): Removed references, since we now
18076         share $(top_builddir)/libtool.
18077         * NEWS: Updated.
18078
18079 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18080
18081         * Makefile.am (vcl.tmp): Be careful of VPATH builds.
18082
18083         * Makefile.am (EXTRA_DIST): Add stamp-vcl, or we go back to a
18084         double configure run from a distributed tarball :-?
18085
18086 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18087
18088         Okay, the problem I am trying to solve is that when a change (say,
18089         bumping the version to 1.6 for the next release) is committed, the
18090         timestamp in ChangeLog is updated, but ltmain.sh and libtoolize
18091         inherit the pre-commit build number from config.status.  This
18092         delta notes the change in build number in the unstamped ChangeLog
18093         and forces a rerun of configure etc. to roll a new ltmain.sh with
18094         the correct TIMESTAMP:
18095
18096         * Makefile.am (stamp-vcl): We actually need a new config.status to
18097         force the correct timestamp into libtoolize and ltmain.sh,
18098         rerunning autoconf has no effect at all if configure.ac hasn't
18099         changed.
18100
18101 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18102
18103         * Makefile.am (stamp-vcl): New rules to force libtool and
18104         libtoolize scripts to update when the TIMESTAMP changes in
18105         ChangeLog, but the file modification time doesn't (e.g in cvs
18106         commit).  Otherwise we'll carry on releasing tarballs with the
18107         wrong version numbers in the tools!
18108
18109         * config/mkstamp: Change output format to ` $rev $date'.
18110         * configure.ac: Make the banner more like suggestions in
18111         http://www.gnu.org/prep/standards_toc.html Section 4.6.
18112         * libtoolize.in: Make --version output conform to the GNU
18113         standard.
18114         * ltmain.in: Ditto. And tweak the generated file headers to
18115         match.
18116
18117 2003-11-25  Gary V. Vaughan  <gary@gnu.org>
18118
18119         * Makefile.am (config.status): Removed.  Rebuilding config.status
18120         isn't enough, because the TIMESTAMP in configure is still out
18121         of date.
18122         (configure): We actually need a new configure to force the
18123         correct timestamp into ltmain.sh.
18124
18125         * Makefile.am (config/ltmain.sh): Removed.  Rebuilding ltmain.sh
18126         isn't enough, because the TIMESTAMP in config.status is still out
18127         of date.
18128         (config.status): We actually need a new config.status to force the
18129         correct timestamp into ltmain.sh.
18130
18131         * Makefile.am (config/ltmain.sh): Note the dependency on the
18132         timestamp in ChangeLog so we don't ship libtools that report the
18133         wrong version number :-/
18134
18135         * bootstrap: Explain automake and autoconf version dependencies
18136         truthfully, and the difference between bootstrap and user
18137         dependencies.
18138         * configure.ac (AM_INIT_AUTOMAKE): List AUTOMAKE_OPTIONS here.
18139         * Makefile.am, doc/Makefile.am, tests/Makefile.am
18140         (AUTOMAKE_OPTIONS): Removed from here.
18141
18142 2003-11-24  Gary V. Vaughan  <gary@gnu.org>
18143
18144         * tests/defs (func_configure): cdemo, demo and mdemo are shows
18145         signs of indeterminacy for some users.  Be more verbose during
18146         failure to help track down the cause.
18147
18148 2003-11-22  Peter O'Gorman  <peter@pogma.com>
18149
18150         * ltmain.in: Check for module_cmds if max_cmd_len is exceeded too.
18151
18152         * ltmain.in: Move eval to after command separation to allow ~ in paths.
18153
18154         * tests/demo-hardcode.test: Call ./libtool not libtool.
18155
18156         * ltmain.in: Test $old_striplib before using it, not $striplib.
18157
18158 2003-11-22  Gary V. Vaughan  <gary@gnu.org>
18159
18160         * configure.ac (LASTRELEASE): Calculate it as best as we can from
18161         AC_PACKAGE_VERSION.
18162         * Makefile.am (distdir): Remove dependency on timestamps so that
18163         it is possible to roll a dist without contacting the cvs server.
18164         Use `make cvs-release' for that.
18165         (cvs-news): Extracted from cvs-dist.
18166         (cvs-dist): Depend on cvs-news.
18167         (CHECK_LASTRELEASE): Check LASTRELEASE has been set.
18168         (prev-tarball): New rule.  Use LASTRELEASE to make sure the
18169         previous release tarball is present.
18170         (cvs-diff): Use CHECK_LASTRELEASE.
18171         (xdelta): Ditto.
18172         (cvs-release): Depend on prev-tarball, timestamps, cvs-news and
18173         fetch. Provided you set LASTRELEASE appropriately, making a full
18174         cvs release is just a matter of `make cvs-release', and submitting
18175         the files to ftp-upload.
18176
18177 2003-11-19  Gary V. Vaughan  <gary@gnu.org>
18178
18179         * m4/libtool.m4 (_LT_PROG_LTMAIN): Ensure config.status has a
18180         value for `ac_aux_dir' when automake is not used.
18181         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
18182
18183         * configure.ac (AC_PREREQ): AS_HELP_STRING was introduced after
18184         autoconf-2.57 was released.
18185
18186 2003-11-18  Gary V. Vaughan  <gary@gnu.org>
18187
18188         * libltdl/ltdl.c (lt_dlhandle_find): New function to find a handle
18189         by module name.
18190         * libltdl/ltdl.h (lt_dlhandle_find): Declare it.
18191         * doc/libtool.texi (User defined module data): Document it.
18192         * NEWS: Updated.
18193
18194 2003-11-17  Gary V. Vaughan  <gary@gnu.org>
18195
18196         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Uncomment call to
18197         _LT_CONFIG_COMMANDS.
18198         (_LT_AC_TAG_CONFIG, AC_LIBTOOL_CONFIG): Accumulate tag generation
18199         for `config.status' using _LT_CONFIG_SAVE_COMMANDS.  Remove
18200         AC_MSG_NOTICE noise now that libtool is generated by a single
18201         config.status tag.
18202         * Makefile.am (libtool): Specify CONFIG_COMMANDS properly now that
18203         libtool is generated in one pass.
18204
18205         * configure.ac (CONF_SUBDIRS): Make these relative to
18206         tests/Makefile.am.
18207         (DIST_MAKEFILE_LIST): Adjust to compensate for having removed the
18208         `tests/' part in CONF_SUBDIRS.
18209         * tests/Makefile.am (DIST_SUBDIRS): Distribute these directories.
18210         (SUBDIRS): Set to `.', a NOP, to workaround an automake bug which
18211         ignores DIST_SUBDIRS unless SUBDIRS is also set.
18212         * Makefile.am (DIST_SUBDIRS): Don't try to distribute the tests
18213         subdirectories from here, since the recursive automake dist rule
18214         only works with direct child directories.  Defer to
18215         tests/Makefile.am in this case.
18216
18217 2003-11-15  Scott James Remnant  <scott@netsplit.com>
18218
18219         * ltmain.in: In compile mode, delay parsing of -shared, -static,
18220         -prefer-pic and -prefer-non-pic until after tagged configuration
18221         has been read.  In link mode, read tagged configuration before
18222         parsing any arguments.  These arguments will now work when using
18223         a non-C compiler.
18224
18225 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
18226
18227         * NEWS: Mention AC_LIBTOOL_TAGS.
18228
18229         * Makefile.am (EXTRA_DIST): List ChangeLog files correctly.
18230
18231         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18232         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18233         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18234         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Declare just
18235         the tags we need using AC_LIBTOOL_TAGS, reducing the size of the
18236         configure script by 50% in most cases.
18237
18238 2003-11-14  Marius Vollmer  <mvo@zagadka.de>
18239
18240         * doc/libtool.texi (Libltdl interface): libltdl does in fact load
18241         dependency libs for lt_dlopen()ed modules.
18242
18243 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
18244
18245         Run our configure.ac files through Autoconf 2.59's autoupdate, and
18246         then tweak the results by hand:
18247
18248         * m4/libtool.m4 (AC_PROG_LD): In common with all the other
18249         AC_PROG_ macros, AC_SUBST the discovered LD.
18250         (AC_PROG_NM): Similarly for NM.
18251         (LT_AC_PROG_SED): Similarly for SED.
18252         * configure.ac: No need to SUBST NM and LD manually any more.
18253         (AC_PREREQ): Conservatively downgrade from 2.59 to 2.54.
18254         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18255         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18256         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18257         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Ditto.
18258         * m4/libtool.m4 (AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
18259         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC,
18260         AM_PROG_LD, AM_PROG_NM): AU_DEFUN these macros so autoupdate can
18261         use the newer definitions.
18262
18263 2003-11-12  Gary V. Vaughan  <gary@gnu.org>
18264
18265         The rules for uploading releases to gnu.org have been updated, and
18266         are in fact now rather complicated.  This delta updates the
18267         release instructions to the describe the new process, and updates
18268         the maintainer rules to help automate many of the steps:
18269
18270         * README-alpha: Updated release instructions.
18271         * Makefile.am (GPG): Name of the program for generating signatures
18272         for files to be uploaded.
18273         (XDELTA, XDELTA_OPTIONS): Invocation of xdelta.
18274         (cvs-dist): Run distcheck before tagging the cvs tree incase
18275         distcheck fails, and then generate the gpg signature files.
18276         (cvs-diff): Generate the gpg signature files for the diff.
18277         (xdelta): New rule for generating the xdelta diffs and associated
18278         gpg signature files.
18279         (cvs-release): New rule to do all of the above, if you don't mind
18280         typing your gpg passphrase over and over again. :-)
18281         (fetch): New rule inspired by automakes similar rule for updating
18282         files maintained outside the project.
18283         * config/config.guess, config/config.sub: Updated with the new
18284         fetch rule.
18285
18286 2003-11-11  Gary V. Vaughan  <gary@gnu.org>
18287
18288         * libltdl/ltdl.c (lt_dlinit): Save a function call for each loader
18289         added to the list, in exchange for appending loaders to the list
18290         with O(N) rather than O(1).  The longest the loader list can ever
18291         get is 4 (on cygwin with dld installed) so it probably constitutes
18292         a small speedup, in addition to making the code much more readable.
18293
18294         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Don't define the value for
18295         ltmain unconditionally.
18296         (_LT_PROG_LTMAIN): New macro to ensure that the
18297         shell variable `ltmain' actually points at a suitable `ltmain.sh'.
18298         (_AC_PROG_LIBTOOL): Require it.
18299         (AC_LIBTOOL_CONFIG, _LT_AC_TAG_CONFIG): Invoke it.
18300         * Makefile.am (libtool): ltmain.sh is in the build tree.
18301         * libltdl/configure.ac: Ditto.
18302
18303 2003-11-10  Scott James Remnant  <scott@netsplit.com>
18304
18305         * ltmain.in: Add -pthread and similar to $deplibs ($compile_deplibs
18306         and $finalize_deplibs for programs) when found on the command line
18307         or in a .la file's dependency_libs (but don't place them there) so
18308         they are honoured when linking both programs and libraries.
18309
18310 2003-11-10  Scott James Remnant  <scott@netsplit.com>
18311
18312         * m4/libtool.m4  (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [linux]: Include
18313         directories found in /etc/ld.so.conf in sys_lib_dlsearch_path_spec.
18314
18315 2003-11-09  Peter O'Gorman  <peter@pogma.com>
18316
18317         * ltmain.in (linkalldeplibs,darwin): Fix a bug reported by Idar
18318         Tollefsen where a dir could be added to the link line with no '-L'
18319         on darwin.
18320
18321 2003-11-07  Gary V. Vaughan  <gary@gnu.org>
18322
18323         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18324         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18325         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18326         tests/pdemo/configure.ac, tests/tagdemo/configure.ac:
18327         s/AM_PROG_LIBTOOL/AC_PROG_LIBTOOL/. Marching boldly into the 21th
18328         century :-$
18329
18330         * m4/libtool.m4 (AC_LIBTOOL_TAGS, AC_ENABLE_SHARED,
18331         AC_DISABLE_SHARED, AC_ENABLE_STATIC, AC_DISABLE_STATIC,
18332         AC_ENABLE_FAST_INSTALL, AC_DISABLE_FAST_INSTALL, AM_PROG_LIBTOOL,
18333         AM_ENABLE_SHARED, AM_ENABLE_STATIC, AM_DISABLE_SHARED,
18334         AM_DISABLE_STATIC): These macros must be AC_DEFUNed after all,
18335         otherwise aclocal can't find them when it tries to construct
18336         `aclocal.m4'.
18337
18338         * Makefile.am (install-data-local): Wipe out old installation
18339         pkgdatadir before installing new files.
18340         * NEWS: Updated.
18341
18342         * libtoolize.in (func_scan_files): If libtoolize is run before
18343         automake has created install-sh and configure.ac does not mention
18344         AC_CONFIG_AUX_DIR, fall back to the current directory for auxdir.
18345
18346 2003-11-07  Robert Millan  <zeratul2@wanadoo.es>
18347
18348         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD) [GNU/KNetBSD]: Detect
18349         inter-library dependencies.
18350
18351 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
18352
18353         * m4/libtool.m4 (_LT_AC_FILE_LTDLL_C): Removed; no longer in use.
18354
18355         * m4/libtool.m4: s/ifelse(/m4_if(/g
18356         (_LT_AC_SYS_LIBPATH_AIX, _LT_AC_SHELL_INIT,
18357         _LT_AC_PROG_ECHO_BACKSLASH, AC_LIBTOOL_LINKER_OPTION,
18358         AC_LIBTOOL_TAGS, _LT_AC_TAG_CHECK, _LT_AC_TAG_CONFIG,
18359         AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC,
18360         AC_DISABLE_STATIC, AC_ENABLE_FAST_INSTALL,
18361         AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_C_CONFIG,
18362         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG,
18363         _LT_AC_TAGVAR, AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
18364         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC): Use
18365         m4_define instead of AC_DEFUN for internal macros that do not
18366         AC_PROVIDE or AC_REQUIRE, and documented user macros that cannot
18367         be AC_REQUIREd because they need arguments, or because that would
18368         violate the documented API.
18369
18370         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Add a new
18371         delay_single_quote_subst sed script to quote single quotes in
18372         variables that are copied to `config.status'.
18373         (_LT_CONFIG_STATUS_DECLARE): New macro to apply
18374         delay_single_quote_subst to a named variable.
18375         (AC_LIBTOOL_CONFIG): Use _LT_CONFIG_STATUS_DECLARE to declare all
18376         `configure' variables that are copied to `config.status'.
18377         (AC_LIBTOOL_PROG_COMPILER_PIC): Fix a quoting bug exposed by
18378         _LT_CONFIG_STATUS_DECLARE using the null quadrigraph in the
18379         rvalues of lt_prog_compiler_pic.
18380
18381 2003-11-06  Owen Taylor  <otaylor@redhat.com>
18382
18383         * m4/libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Recognise the
18384         'R' symbol type so read-only symbols can be exported when combining
18385         GCC and Solaris LD.
18386
18387 2003-11-06  James Henstridge  <james@daa.com.au>,
18388         Scott James Remnant  <scott@netsplit.com>
18389
18390         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [Linux]: Fix the
18391         -export-symbols and -export-symbols-regex options.
18392
18393 2003-11-06  Scott James Remnant  <scott@netsplit.com>
18394
18395         * tests/demo-nopic.test: Skip test on hppa, which don't like
18396         non-PIC shared libraries.
18397
18398 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>
18399
18400         * tests/depdemo/configure.ac, tests/mdemo/configure.ac,
18401         tests/mdemo2/configure.ac: process 'libtool --features'
18402         from Makefile, not configure -- because libtool doesn't
18403         exist at configure time.
18404
18405         * ltmain.in (find_executable, check_executable) [cygwin*, mingw*]:
18406         binary wrapper used with uninstalled executables breaks when
18407         invoked via execlp/execvp (that is, via $PATH).  Handle that case.
18408         (fnqualify): Subsumed into find_executable.
18409
18410         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin*, mingw*]:
18411         when extracting symbols from an import lib (occurs if
18412         --enable-shared --disable-static), the output of
18413         $global_symbol_pipe is not the same as  when extracting from a
18414         static library (the default case). Add extra filters to
18415         $export_symbols_cmds to process this sort of output in addition to
18416         'normal' static-lib output.
18417         * NEWS: Updated.
18418
18419 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>,
18420         Gary V. Vaughan  <gary@gnu.org>
18421
18422         * libltdl/ltdl.c (LT_USE_POSIX_DIRENT): Factored out.
18423         (LT_USE_WINDOWS_DIRENT_EMULATION): Move to after include "ltdl.h",
18424         as they are affected by __WINDOWS__ definition.
18425         (LT_READTEXT_MODE): Use textmode to read .la files.
18426         (lt_dlinit): Use LoadLibrary loader as a fallback on cygwin.
18427
18428 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
18429
18430         * libltdl/ltdl.h (__WINDOWS__): Define this if _WIN32 or WIN32 are
18431         defined, unless __CYGWIN__ or __CYGWIN32__ are defined.
18432         (LT_SCOPE): Now set without reference to __CYGWIN__ definition,
18433         since __WINDOWS__ now implies !__CYGWIN__ after canonicalisation.
18434         (LT_PARAMS, lt_ptr): Use canonicalised __WINDOWS__ to determine
18435         which values to set these macros to.
18436
18437 2003-11-05  Gary V. Vaughan  <gary@gnu.org>
18438
18439         * README-alpha: Mention autotools-announce@gnu.org, and update release
18440         note templates.
18441
18442 2003-11-01  Scott James Remnant  <scott@netsplit.com>
18443
18444         * ltmain.in: When relinking, place the -L parameter containing
18445         the installation prefix directory after the intended destination,
18446         so we don't accidentally link against an older installed library.
18447
18448 2003-11-01  Peter O'Gorman  <peter@pogma.com>
18449
18450         * tests/mdemo2/Makefile.am: Let mdemo2 find ltdl.h again.
18451
18452 2003-10-30  Peter O'Gorman  <peter@pogma.com>
18453
18454         * m4/libtool.m4 (Darwin): Fix stupidities for darwin tags support.
18455         Makes it work again if AC_LIBTOOL_TAGS is specified in configure.ac.
18456         Bug reported by Joe Orton and Christian Schaffner.
18457
18458 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
18459
18460         Start to eliminate the double run of configure in a fresh CVS
18461         checkout by generating ltmain.sh, using that to create libtool,
18462         and then adding the tags to that, all from config.status.
18463
18464         * configure.ac (AC_CONFIG_FILES): Make config/ltmain.sh, and copy
18465         it to libltdl.
18466         * Makefile.am ($(srcdir)/config/ltmain.sh): This file is now
18467         created by config.status.  Adjust this rule.
18468         (libtoolize): Set CONFIG_COMMANDS to empty to prevent regenerating
18469         the libtool script as a side effect of running this rule.
18470         * libtool.m4: Bump serial number.  Fix comment typos.
18471         (_LT_CONFIG_LIBTOOL_INIT, _LT_CONFIG_LIBTOOL,
18472         _LT_CONFIG_SAVE_COMMANDS, _LT_CONFIG_COMMANDS: New macros.  They
18473         don't work for some reason - the variable value quoting in the
18474         init section is all wrong.  Not used at the moment.
18475         (AC_LIBTOOL_CONFIG): Generate libtool from config.status.
18476         (_LT_AC_TAG_CONFIG): Add the tags in config.status.
18477         (compiler_DEFAULT): Save the compiler value for the DEFAULT tag,
18478         or it gets overwritten by the other macros.
18479         (EOF): Globally replace with _LT_EOF to avoid namespace pollution.
18480         * tests/demo/configure.ac (STATIC): Check $enable_static instead
18481         of running ./libtool which doesn't exist yet.
18482         (BINARY_HELLDL): Check $lt_cv_sys_global_symbol_pipe with case
18483         instead of grepping ./libtool which doesn't exist yet.
18484         * tests/pdemo/configure.ac (STATIC, BINARY_HELLDL): Ditto.
18485         * doc/libtool.texi (AC_PROG_LIBTOOL): Add some notes about trying
18486         to get config details from `libtool --config'.
18487         * NEWS: Updated.
18488
18489 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
18490
18491         * ChangeLog, ChangeLog.0, ChangeLog.1: Refactored...
18492         * ChangeLog, ChangeLog.2002, ChangeLog.2001, ChangeLog.2000,
18493         ChangeLog.1999, ChangeLog.1998, ChangeLog.1997, ChangeLog.1996:
18494         ...into entries by year for easier copyright confirmation.
18495
18496         * configure.ac, libltdl/configure.ac, tests/cdemo/configure.ac,
18497         tests/demo/configure.ac, tests/depdemo/configure.ac,
18498         tests/f77demo/configure.ac, tests/mdemo/configure.ac,
18499         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
18500         tests/tagdemo/configure.ac (AM_INIT_AUTOMAKE): Remove redundant
18501         arguments.
18502         * libltdl/configure.ac: Use quadrigraphs to escape macronames.
18503
18504         * bootstrap (reconfdirs): Same as yesterday, only with portable
18505         bourne shell syntax.  :-/
18506
18507 2003-10-20  Gary V. Vaughan  <gary@gnu.org>
18508
18509         * bootstrap (reconfdirs): Overridable top dirs for bootstrap, for
18510         those times when you don't want to wait for all of the test
18511         directories to be rebootstrapped!
18512
18513 2003-10-19  Kevin P. Fleming  <kpfleming@backtobasicsmgmt.com>
18514         Charles Wilson <cygwin@cwilson.fastmail.fm>
18515
18516         * ltmain.in: include --tag options, if specified, in the
18517         relink_command in uninstalled .la files.  Also, preserve --silent,
18518         --debug options when libtool re-execs itself.
18519         * NEWS: Updated.
18520
18521 2003-10-19  Charles Wilson  <cygwin@cwilson.fastmail.fm>
18522
18523         * libtoolize.in: protect sed expression against
18524         AC_CONFIG_AUX_DIR_DEFAULT.
18525
18526 2003-10-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
18527
18528         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): For MinGW, reverted DLL
18529         check method back to a working objdump-based test.  This is not as
18530         concrete a test as using the 'file' command, but it does not
18531         require that the 'file' command be available.
18532
18533 2003-10-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
18534
18535         * doc/libtool.texi (AC_LIBTOOL_TAGS): Incorporate documentation
18536         for AC_LIBTOOL_TAGS macro to specifify libtool tags. The now
18537         defunct --with-tags option was never documented.
18538
18539 2003-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
18540
18541         * m4/libtool.m4: Restrict the list of tags that can be created
18542         with a new AC_LIBTOOL_TAGS([tag1 tag2 ...]) macro. Deprecate
18543         --with-tags.
18544
18545 2003-10-15  Gary V. Vaughan  <gary@gnu.org>
18546
18547         * libtoolize.in: Typo when copying config.sub.
18548         From Patrick Welche <prlw1@newn.cam.ac.uk>
18549
18550         * demo/Makefile.am (libhell0_a_SOURCES): Do not name sources
18551         already built with libtool...
18552         (libhell0_a_LIBADD): ...instead name the objects directly.  This
18553         prevents a long standing warning from automake 1.7+.
18554         * pdemo/Makefile.am (libhell0_a_SOURCES, libhell0_a_LIBADD):
18555         Ditto.
18556
18557         * bootstrap: Make the fake files valid shell scripts with a
18558         comment incase they get left around.
18559         (LIBTOOLIZE): Use a dummy script to prevent the installed
18560         `libtoolize' from trashing the distributed libtool.m4,
18561         config.guess and config.sub.
18562
18563         * configure.ac (AC_CONFIG_TESTDIR, AC_CONFIG_TESTFILES): Comment
18564         this out for now, the autotest testsuite rewrite is not ready
18565         yet.
18566
18567         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
18568         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
18569         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
18570         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (top_distdir):
18571         Removed. `autoreconf' needs literals in ACLOCAL_AMFLAGS.
18572
18573 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
18574
18575         * libtoolize.in (func_mkdir_p): Synch with tests/defs; if there
18576         are no more directories in the stack, break out of the loop.
18577
18578         * tests/Makefile.am (COMMON_TESTS): Remove pdemo-unst.test, which
18579         isn't a real test.
18580
18581 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
18582
18583         Refactor all the test case common code into shell functions in
18584         tests/defs, and move the various demo directories out of
18585         $top_srcdir, and into tests too.  The refactoring showed up a
18586         number of inconsistencies and latent bugs, as well as fixing (I
18587         think!!) the long-standing annoyance with some of the tests giving
18588         spurious failures intermittently.  While I was here, emacs kindly
18589         removed a lot of bogus whitespace and added copyright notices for
18590         us:
18591
18592         * cdemo, demo, depdemo, f77demo, mdemo, mdemo2, pdemo, tagdemo:
18593         Moved from here...
18594         * tests/cdemo, tests/demo, tests/depdemo, tests/f77demo,
18595         tests/mdemo, tests/mdemo2, tests/pdemo, tests/tagdemo: ...to
18596         here.
18597         * tests/defs: Factor much common functionality from the test
18598         scripts into shell functions.  Added a copyright notice.
18599         * tests/assign.test, tests/cdemo-conf.test, tests/cdemo-exec.test,
18600         tests/cdemo-make.test, tests/cdemo-shared.test,
18601         tests/cdemo-static.test, tests/demo-conf.test,
18602         tests/demo-deplibs.test, tests/demo-exec.test,
18603         tests/demo-inst.test, tests/demo-make.test,
18604         tests/demo-nofast.test, tests/demo-nopic.test,
18605         tests/demo-pic.test, tests/demo-shared.test,
18606         tests/demo-static.test, tests/demo-unst.test,
18607         tests/depdemo-conf.test, tests/depdemo-exec.test,
18608         tests/depdemo-inst.test, tests/depdemo-make.test,
18609         tests/depdemo-nofast.test, tests/depdemo-shared.test,
18610         tests/depdemo-static.test, tests/depdemo-unst.test,
18611         tests/f77demo-conf.test, tests/f77demo-exec.test,
18612         tests/f77demo-make.test, tests/f77demo-shared.test,
18613         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
18614         tests/mdemo-conf.test, tests/mdemo-exec.test,
18615         tests/mdemo-inst.test, tests/mdemo-make.test,
18616         tests/mdemo-shared.test, tests/mdemo-static.test,
18617         tests/mdemo-unst.test, tests/mdemo2-conf.test,
18618         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
18619         tests/pdemo-conf.test, tests/pdemo-exec.test,
18620         tests/pdemo-inst.test, tests/pdemo-make.test,
18621         tests/pdemo-unst.test, tests/quote.test, tests/sh.test,
18622         tests/suffix.test, tests/tagdemo-conf.test,
18623         tests/tagdemo-exec.test, tests/tagdemo-make.test,
18624         tests/tagdemo-shared.test, tests/tagdemo-static.test: Refactored
18625         to use new functions in tests/defs.  Added a copyright notice.
18626         * tests/hardcode.test, noinst-link.test,
18627         tests/relink.test, tests/relink.test,
18628         tests/mdryrun.test: Ditto.  Moved from here...
18629         * tests/demo-hardcode.test, demo-noinst-link.test,
18630         tests/demo-relink.test, tests/depdemo-relink.test,
18631         tests/mdemo-dryrun.test: ...to here respectively.
18632         * Makefile.am: Added a copyright notice.
18633         * tests/sh.test: Check libtoolize.in for non-portabilities too.
18634         * libtoolize.in: Fix non-portabilities found by tests/sh.test.
18635
18636 2003-10-12  Peter O'Gorman <peter@pogma.com>
18637
18638         * m4/libtool.m4: Speed up max_cmd_len check.
18639
18640 2003-10-08  Gary V. Vaughan  <gary@gnu.org>
18641
18642         * libtoolize.in: AC_CONFIG_M4_DIR has landed in CVS autoconf.
18643         Only it's called AC_CONFIG_MACRO_DIR.  Search and replace.
18644         Grumble. ;-)
18645
18646 2003-10-08  Scott James Remnant  <scott@netsplit.com>
18647
18648         * libltdl/ltdl.c (lt_dlerror): change return value when
18649         no error has occured to NULL to match documentation.
18650         (Debian Bug #157229)
18651
18652 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
18653
18654         * ltmain.in: Don't suppress output of PIC mode compile if
18655         -no-suppress option is given.
18656         * doc/libtool.texi (Invoking libtool): Document it.
18657         * NEWS: Updated.
18658
18659 2003-10-07  Marcus Comstedt  <marcus@mc.pp.se>
18660
18661         * m4/libtool.m4 [amigaos-ppc, amigaos-m68k]: Differentiate between
18662         amigaos on ppc and m68k.
18663         * NEWS: Updated.
18664
18665 2003-10-07  Ralph Schleicher  <rs@nunatak.allgaeu.org>
18666
18667         * ltmain.in: Do not create `.o' objects when `-shared' is
18668         specified in compile mode.
18669         Do not make a static library when `-shared' is specified in link
18670         mode.
18671         * doc/libtool.texi (Compile mode): Document it.
18672         * NEWS: Updated.
18673
18674         * doc/libtool.texi (Compile mode): Be more specific about the
18675         effect of `-static'.
18676         * ltmain.in: Do not create `.lo' objects when `-static' is
18677         specified.
18678         * NEWS: Updated.
18679
18680 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
18681
18682         * doc/libtool.texi (Invoking libtool): Updated.
18683         * ltmain.in: Add missing clean and finish modes to the shorthand
18684         options.
18685
18686         * ltmain.in: Typo in the --mode shorthand.
18687
18688 2003-10-07  Scott James Remnant  <scott@netsplit.com>
18689
18690         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Remove dead code
18691         for platforms that have been using pass_all for some time now.
18692
18693 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
18694
18695         * libtoolize.in: Completely rewritten.
18696         * Makefile.am (AUTOMAKE_OPTIONS): Reduced to 1.7.  The 1.8
18697         requirement just made the distribution much smaller due to
18698         m4_includes.  1.7 will bootstrap libtool just fine.
18699         * NEWS: Updated.
18700
18701 2003-10-05  Peter O'Gorman <peter@pogma.com>,
18702         Gary V. Vaughan  <gary@gnu.org>
18703
18704         * ltmain.in: Remove inferrence of mode, add shorthand for mode
18705         choice.
18706
18707         * ltmain.in: Specifying -allow-undefined is now an error.
18708
18709 2003-09-29  Scott James Remnant  <scott@netsplit.com>
18710
18711         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for linux*
18712         solving many build problems on ARM, and hopefully preventing any
18713         future ones.
18714         (Debian Bug #191133 and #190569)
18715
18716 2003-09-29  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>,
18717         Dalibor Topic <robilad@kaffe.org>
18718
18719         * libltdl/ltdl.c: Only include malloc.h if stdlib.h can not be
18720         found.
18721
18722 2003-09-26  Alfred M. Szmidt  <ams@kemisten.nu>
18723
18724         * mdemo2/Makefile.am (INCLUDES): Include `$(top_srcdir)/../libltdl'
18725         instead of `../libltdl'.
18726
18727 2003-09-24  Gary V. Vaughan  <gary@gnu.org>
18728
18729         * bootstrap: Rewritten to use autoreconf.
18730         * config.guess, config.sub, mkstamp:  Moved from here...
18731         * config/config.guess, config/config.sub, config/mkstamp: ...to
18732         here, respectively.
18733         * libtool.m4, ltdl.m4: Moved from here...
18734         * m4/libtool.m4, m4/ltdl.m4: ...to here, respectively.
18735         * configure.ac: Removed various acinclude.m4 hackery, as these
18736         files are no longer needed with automake 1.8.
18737         * Makefile.am: Removed various acinclude.m4 hackery, as these
18738         files are no longer needed with automake 1.8.
18739         (AUTOMAKE_OPTIONS): Require CVS automake.
18740         (CONF_SUBDIRS, CFLAGS, CPPFLAGS, LDFLAGS, LIBS, FFLAGS, FLIBS):
18741         Automake now makes a Make variable from every AC_SUBST, so these
18742         are NOP.
18743         (aclocal_macros): These files are now in their own m4 subdir.
18744         Changed all clients.
18745         (EXTRA_DIST): mkstamp has moved to the new config subdir.  Changed
18746         all clients.
18747         (pkgdata_SCRIPTS): Ditto wrt config.guess and config.sub.
18748         (pkgdata_DATA): Ditto wrt ltmain.sh.
18749         * f77demo/configure.ac, libltdl/configure.ac (AM_CONFIG_HEADER):
18750         Is deprecated in favour of AC_CONFIG_HEADERS.  Updated to the
18751         latter.
18752         * Makefile.am, cdemo/Makefile.am, demo/Makefile.am,
18753         depdemo/Makefile.am, f77demo/Makefile.am, mdemo/Makefile.am,
18754         mdemo2/Makefile.am, pdemo/Makefile.am, tagdemo/Makefile.am
18755         (EXTRA_DIST): Remove acinclude.m4.
18756         (ACLOCAL_AMFLAGS): Search new `m4' macro directory.
18757         * configure.ac, cdemo/configure.ac, demo/configure.ac,
18758         depdemo/configure.ac, f77demo/configure.ac, mdemo/configure.ac,
18759         mdemo2/configure.ac, pdemo/configure.ac, tagdemo/configure.ac
18760         (AC_CONFIG_AUX_DIR): Declare that config helper scripts are now
18761         kept in the new config subdir.
18762         * libltdl/configure.ac (AC_CONFIG_AUX_DIR): Removed.  Defaults to
18763         `.' anyway.
18764
18765 2003-09-21  Robert Millan  <robertmh@gnu.org>
18766
18767         * libtool.m4: Add GNU/KNetBSD support.
18768         * ltdl.m4: Likewise.
18769
18770 2003-09-13  Scott James Remnant  <scott@netsplit.com>
18771
18772         * libtool.m4: allow STRIP to contain spaces and additional
18773         arguments.  (Debian Bug #183055)
18774         * ltmain.in: include newline in "sensible default" for IFS.
18775         (Debian Bug #98492 and #95447)
18776
18777 2003-09-11  Peter O'Gorman  <peter@pogma.com>
18778
18779         * AUTHORS, THANKS: Added myself to AUTHORS, removed from THANKS.
18780
18781 2003-09-10  Peter O'Gorman  <peter@pogma.com>
18782
18783         * mdemo2/configure.ac: Use AC_LIBTOOL_DLOPEN.
18784         * mdemo2/main.c: Use LTDL_SET_PRELOADED_SYMBOLS().
18785         * mdemo2/Makefile.am: Set INCLUDES properly and add -dlopen force
18786         to make sure the symbols file is included in the link line.
18787
18788         * ltmain.in: Accept -framework for darwin and put it in
18789         dependency_libs. For non-installed .la's try to avoid having
18790         ./.libs/.libs/libfoo.so on the link line.
18791
18792 2003-09-10  Arne Woerner  <woerner@mediabase-gmbh.de>
18793
18794         * libtool.m4 [openbsd]: openbsd 3.x needs versioning information.
18795
18796 2003-08-29  Gary V. Vaughan  <gary@gnu.org>
18797
18798         * bootstrap: Typo.
18799
18800 2003-08-29  Alexandre Duret-Lutz  <adl@gnu.org>
18801
18802         * libtool.m4 (_LT_AC_LANG_C_CONFIG): Fix unquoted call to
18803         _LT_AC_LANG_C_CONFIG.
18804         (AC_PROG_EGREP): Remove, now that Libtool requires Autoconf 2.56.
18805         * bootstrap: Issue an upgrade warning.
18806
18807 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
18808
18809         * libtool.m4 (_LT_AC_CHECK_DLFCN): Use the interrim new
18810         AC_CHECK_HEADER with compiler rather than preprocessor.
18811         (AC_LIBTOOL_SETUP): ...which was introduced in autoconf-2.56, so
18812         we AC_PREREQ that version.
18813         * ltdl.m4 (AC_WITH_LTDL, AC_LIB_LTDL, AC_LTDL_FUNC_ARGZ): Ditto.
18814
18815 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
18816
18817         Work around a bug in AU_ALIAS in CVS Autoconf that inserts a
18818         newline just before AC_FD_CC, by hand updating:
18819
18820         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): s/AC_FD_CC/AS_MESSAGE_LOG_FD/g.
18821
18822 2003-08-05  Jim Pick <jim@kaffe.org>,
18823         Ito Kazumitsu <kaz@maczuka.gcd.org>,
18824         Gary V. Vaughan  <gary@gnu.org>
18825
18826         Much as we have tried not to make it the callers' responsibility
18827         to maintain an lt_dlrealloc function pointer, it is too difficult
18828         to implement realloc as malloc/memcpy/free without knowing the
18829         size of the original block.  rpl_realloc has been deprecated since
18830         2002-10-30, but kaffe has real failures with that so it's time to
18831         bite the bullet.  Caller gets to maintain lt_dlrealloc:
18832
18833         * NEWS (1.5.1): Updated.
18834         * libltdl/ltdl.c (LT_DLREALLOC): Use lt_dlrealloc so the user can
18835         update the function pointer to match lt_dlmalloc.
18836         (lt_emalloc): Use lt_dlrealloc rather than hardcoding realloc.
18837         * doc/libtool.texi (Libltdl interface): Describe lt_dlrealloc now
18838         that it too has become part of the exported interface to libltdl.
18839
18840 2003-08-01  Peter O'Gorman  <peter@pogma.com>
18841
18842         * libtool.m4 (darwin): Use "-undefined dynamic_lookup" if the
18843         user set MACOSX_DEPLOYMENT_TARGET to 10.3 or greater.
18844         * libltdl/ltdl.c (dyld): Save the error from the first lookup
18845         to report in lt_dlerror(). Otherwise the error is always
18846         "Symbol _foo not in /usr/lib/libSystem.dylib".
18847         Thanks to Chris Zubrzycki for reporting this.
18848
18849 2003-08-01  Robert Boehne  <rboehne@gnu.org>
18850
18851         * libltdl/ltdl.h: Tweak the header to support visual studio.
18852
18853 2003-07-31  Greg Eisenhauer  <eisen@cc.gatech.edu>
18854
18855         * ltmain.in: Provide absolute paths for dlopen and dlpreopen
18856         files in generating uninstalled libtool libraries.
18857         * mdemo2/main.c, mdemo2/Makefile.am, mdemo2/README,
18858         mdemo2/configure.ac, mdemo2/.cvsignore, mdemo/mlib.c,
18859         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
18860         tests/mdemo2-make.test: New files for testing above feature.
18861         * configure.ac, bootstrap, tests/Makefile.am: Accomodate new
18862         test directory.
18863         * mdemo/Makefile.am: Build libmlib.la for mdemo2 tests.
18864
18865 2003-07-30  Tony Wyatt <wyattaw@optushome.com.au>
18866
18867         * libtool.m4: Remove parentheses around finish_eval part which
18868         broke on amigaos pdksh.
18869
18870 2003-07-30  Christiaan Welvaart  <cjw@daneel.dyndns.org>
18871
18872         * tests/dryrun.test: Ignore any 'total' line from "ls -l" output.
18873
18874 2003-07-30  Albert Chin-A-Young  <china@thewrittenword.com>
18875
18876         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Correctly remove IRIX C++
18877         template files.
18878
18879 2003-07-24  Robert Millan  <robertmh@gnu.org>
18880
18881         * libtool.m4: More fixes for the new GNU/FreeBSD triplet.
18882
18883 2003-07-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
18884
18885         * config.guess, config.sub: Synchronized from ftp.gnu.org since
18886         Robert Millan's patch requires it.
18887
18888 2003-07-14  Robert Millan  <zeratul2@wanadoo.es>
18889
18890         * libtool.m4: Fixed to use the new GNU/FreeBSD triplet.
18891         * ltdl.m4: Fixed to use the new GNU/FreeBSD triplet.
18892         * ltmain.in: Remove GNU/FreeBSD cases, which are no longer needed.
18893
18894 2003-07-14  Andreas Schwab  <schwab@suse.de>
18895
18896         * libtool.m4 (_LT_AC_LOCK): Also match powerpc64-*linux* in
18897         addition to ppc64-*linux*.  From Markus Meissner
18898         <meissner@bogus.example.com>.
18899
18900 2003-07-14  Dalibor Topic  <robilad@yahoo.com>
18901
18902         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): For AmigaOS with pdksh,
18903         set the maximum command line length to 8K since otherwise the test
18904         takes over an hour to run.
18905
18906 2003-06-25  Alexandre Oliva  <aoliva@redhat.com>, Tim Waugh  <twaugh@redhat.com>
18907
18908         * libtool.m4: Replace mis-uses of path with pathname.
18909         (AC_PROG_LD_GNU): Don't quote $LD when running it.
18910         (_LT_AC_LANG_CXX_CONFIG): Use -nostdlib also when linking with g++
18911         and non-GNU ld.
18912
18913 2003-06-11  Gary V. Vaughan  <gary@gnu.org>
18914
18915         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION): Require LT_AC_PROG_SED to
18916         ensure $SED is set by the time it is used.
18917
18918         * ChangeLog: Restore missing entries from 2003-04-22.
18919
18920         * NEWS: Sychronised from branch-1-5.
18921
18922 2003-06-03  Benjamin Reed  <ranger@befunk.com>
18923
18924         * ltmain.in: search libraries in the order of preference, rather
18925         than picking .la's even if they're in a less preferred directory.
18926
18927 2003-06-03  Robert Millan <rmh@debian.org>
18928
18929         * ltdl.m4: Add support for GNU/FreeBSD.
18930         * ltmain.in: Add support for GNU/FreeBSD.
18931
18932 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
18933
18934         * libtool.m4: No need to use sed to remove leading comma when
18935         appending to $tagnames.
18936
18937 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
18938
18939         * tests/defs, tests/demo-conf.test, tests/demo-nofast.test,
18940         tests/demo-nopic.test, tests/demo-pic.test,
18941         tests/demo-shared.test, tests/demo-static.test,
18942         tests/depdemo-conf.test, tests/depdemo-nofast.test,
18943         tests/depdemo-shared.test, tests/depdemo-static.test:
18944         Pass build system type to tests to support environment
18945         where default system type not equal to build system type
18946         (eg. 64-bit HP-UX).
18947
18948 2003-06-03  Peter O'Gorman  <peter@pogma.com>
18949
18950         * libtool.m4 (darwin): Remove checks for Apple-specific gcc.
18951         * libltdl/ltdl.c (HAVE_MACH_O_DYLD_H): #define
18952         __private_extern__ for fsf gcc.
18953         * ltmain.in (darwin): Only add new paths to newlib_search_path.
18954
18955 2003-06-03  Max Bowsher  <maxb@ukf.net>
18956
18957         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Reorder cygwin's
18958         system library search path.
18959
18960 2003-06-01  Robert Boehne  <rboehne@gnu.org>
18961
18962         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match all qnx-nto
18963         as recent config.guess returns a slightly different string.
18964         * ltmain.in: Replace use of "od" with tr.
18965
18966 2003-05-30  Gary V. Vaughan  <gary@gnu.org>
18967
18968         * libltdl/ltdl.c (argz_insert): Corrected an off by one error when
18969         checking that before is not out of range.
18970
18971 2003-05-29  Gary V. Vaughan  <gary@gnu.org>
18972
18973         * libltdl/ltdl.c (lt_int_dyld_lib_install_name): Removed unused
18974         variable mh1.
18975         (sys_dyld_close): Removed unused variable size.
18976
18977 2003-05-21  Bruno Haible  <bruno@clisp.org>
18978
18979         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Add support for
18980         GNU/FreeBSD.
18981
18982 2003-04-22  Alexandre Oliva  <aoliva@redhat.com>
18983
18984         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
18985         mips*-linux* variants.
18986
18987 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
18988
18989         * libtool.m4 Switch on $CC and add paterns to cases.
18990
18991 2003-04-22  Peter O'Gorman  <peter@pogma.com>
18992
18993         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
18994         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
18995         value of shlibpath_overrides_runpath is used in the HARDCODE
18996         test and is set in the DYNAMIC_LINKER test.
18997         * ltmain.in [darwin]: We never need to relink on darwin.
18998
18999 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
19000
19001         * libtool.m4: Switch on $CC and add patterns to cases.
19002
19003 2003-04-21  Richard Dawe  <rich@phekda.freeserve.co.uk>
19004
19005         * doc/libtool.texi: Use @ifnottex instead of @ifinfo,
19006         to allow production of HTML documentation using makeinfo.
19007
19008 2003-04-14  Robert Boehne  <rboehne@gnu.org>
19009
19010         * NEWS: Updated.
19011         * configure.ac: Bumped version to 1.5a.
19012
19013         GNU libtool 1.5 was released.
19014
19015         * configure.ac: Bumped version to 1.5.
19016         * NEWS: updated.
19017         * README-alpha: Updated upload instructions.
19018         * README: Changed typo in version description.
19019         * config.guess, config.sub, texinfo.tex:  Synchronized from
19020         ftp.gnu.org.
19021
19022
19023 2003-04-10  Alexandre Oliva  <aoliva@redhat.com>
19024
19025         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
19026         mips*-linux* variants.
19027
19028 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
19029
19030         * libtool.m4 Switch on $CC and add paterns to cases.
19031
19032 2003-04-09  Peter O'Gorman  <peter@pogma.com>
19033
19034         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
19035         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
19036         value of shlibpath_overrides_runpath is used in the HARDCODE
19037         test and is set in the DYNAMIC_LINKER test.
19038         * ltmain.in(darwin): We never need to relink on darwin.
19039
19040 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
19041
19042         * libtool.m4 Switch on `basename $CC` not $CC
19043
19044 2003-04-05  Peter O'Gorman  <peter@pogma.com>
19045
19046         * libtool.m4: if ZSH_VERSION is set then setopt NO_GLOB_SUBST so
19047         libtool works. Remove zsh echo test code, don't bother checking
19048         for zsh anymore in the darwin archive_expsym_cmds.
19049
19050 2003-04-05  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
19051
19052         * libtool.m4: Switch on $CC not $cc_basename.
19053
19054 2003-04-02  Robert Boehne  <rboehne@gnu.org>
19055
19056         * tests/defs: Quote $DJGPP to prevent problems with some shells.
19057         Pointed out by Albert Chin <libtool@thewrittenword.com>
19058
19059 2003-04-01  Peter O'Gorman  <peter@pogma.com>
19060
19061         * libtool.m4: Fix the echo test which I broke earlier.
19062         * ltmain.in: Make DESTDIR work on darwin, don't use otool.
19063
19064 2003-03-31  Keith Packard  <keithp@keithp.com>
19065
19066         * ltmain.in: New flag -version-number to be used for maintaining
19067         compatability with a previously non-Libtool versioning scheme.
19068         * doc/libtool.texi: Document it.
19069
19070 2003-03-31  Naofumi Yasufuku  <naofumi@yasufuku.net>
19071
19072         * ltmain.in (win32_libid): Fixed sed expression error in
19073         win32_nmres evaluation.
19074
19075 2003-03-31  Albert Chin  <libtool@thewrittenword.com>
19076
19077         * ltmain.in: Don't pass -R flags found in a .la's dependency_libs
19078         variable directly down to the linker.
19079         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
19080
19081 2003-03-28  Richard Dawe  <rich@phekda.freeserve.co.uk>
19082
19083         * Makefile.am: Define CONF_SUBDIRS.
19084         * tests/defs: Set CONFIG_SITE to /nonexistent, except on DJGPP,
19085         which requires its config.site, to work correctly.
19086         * tests/cdemo-conf.test, tests/cdemo-shared.test,
19087         tests/cdemo-static.test, tests/demo-conf.test,
19088         tests/demo-nofast.test, tests/demo-nopic.test,
19089         tests/demo-pic.test, tests/demo-shared.test,
19090         tests/demo-static.test, tests/depdemo-conf.test,
19091         tests/depdemo-nofast.test, tests/depdemo-shared.test,
19092         tests/depdemo-static.test, tests/f77demo-conf.test,
19093         tests/f77demo-shared.test, tests/f77demo-static.test,
19094         tests/mdemo-conf.test, tests/mdemo-shared.test,
19095         tests/mdemo-static.test, tests/pdemo-conf.test,
19096         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
19097         tests/tagdemo-static.test: Don't set CONFIG_SITE, now that
19098         tests/defs sets it.
19099         * tests/cdemo-exec.test, tests/demo-exec.test,
19100         tests/demo-inst.test, tests/depdemo-exec.test,
19101         tests/depdemo-inst.test, tests/f77demo-exec.test,
19102         tests/mdemo-exec.test, tests/mdemo-inst.test,
19103         tests/pdemo-exec.test, tests/pdemo-inst.test,
19104         tests/tagdemo-exec.test: When checking for the existence
19105         of executables, use the executable file extension from $EXEEXT.
19106
19107 2003-03-28  Peter O'Gorman  <peter@pogma.com>
19108
19109         * libltdl/ltdl.c (dyld): Remove some debug printf's, fix a bug.
19110         * ltmain.in (darwin): Only link against shared libraries when doing
19111         link_all_deplibs.
19112
19113 2003-03-25  Robert Boehne  <rboehne@gnu.org>
19114
19115         * bootstrap: Add f77demo to the directories that AUTOHEADER
19116         is run in.
19117
19118 2003-03-21  Wesley W. Terpstra <terpstra@ito.tu-darmstadt.de>
19119
19120         * ltmain.in: Don't accumulate directory information in clean mode.
19121         Include properly pathed wrapper script.
19122
19123 2003-03-21  Peter O'Gorman  <peter@pogma.com>
19124
19125         * README: Remove "Important" information about patching automake.
19126         * configure.ac: Fix misapplied patch in last commit
19127         * libtool.m4 (darwin): Check compiler is apple gcc, add -single_module
19128         support so that dyloading c++ shared libraries will work.
19129         * libtool.m4 (_LT_AC_TAGCONFIG): Add test -n to the tests so that
19130         it will work outside of libtool.
19131         * doc/PLATFORMS: Add darwin
19132         * f77demo/configure.ac: Add config.h which was misapplied previously.
19133
19134 2003-03-20  Peter O'Gorman  <peter@pogma.com>
19135
19136         * ltmain.in: Always use $echo not echo for consistency.
19137         Changes for darwin building. Warn if linking against libs linked
19138         with -module. Use module_cmds if available and building a module,
19139         move convenience double lib check,
19140         * libltdl/ltdl.c: ltdl support for darwin (first blush)
19141         * libltdl/README: note that darwin is supported
19142         * ltdl.m4: Changes for darwin, and for new shrext
19143         * libtool.m4: Changed the way darwin builds stuff (make check passes)
19144         added module_cmds, module_expsym_cmds and hardcode_automatic and put
19145         them in the libtool script. check for zsh's removal of escapes. Allow
19146         libraries to be stripped on darwin.
19147         * TODO: Remove the todo about zsh's removal of excapes. note that zsh
19148         echo works perfectly well, eval is screwed up. Seems to be fixed in
19149         latest zsh.
19150         * THANKS: added self :)
19151         * f77demo/configure.ac: Use config.h or it doesn't work.
19152
19153 2003-03-19  Robert Boehne  <rboehne@gnu.org>
19154
19155         * libtool.m4 (_LT_AC_TAGCONFIG): Add test around the macro that
19156         adds tags to the libtool script so that they won't run when not
19157         needed.
19158         * configure.ac: Set F77 to no when no Fortran compiler is found.
19159
19160 2003-03-16  Charles Wilson  <cwilson@ece.gatech.edu>
19161
19162         * ltmain.in (win32_libid): use $SED, not head.
19163
19164 2003-03-02  Alexandre Oliva  <aoliva@redhat.com>
19165
19166         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
19167         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
19168         and reset them for a C++ environment.  Use the with_gnu_ld setting
19169         from AC_PROG_LD.
19170
19171 2003-02-28  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19172
19173         * ltmain.in: Only append a dot to the wrapper script when
19174         building on cygwin/MSYS (check for $build, not $host).
19175
19176 2003-02-27  Samuel Meder  <meder@mcs.anl.gov>
19177
19178         * libtool.m4 (ia64): Add support for Intel compiler (ecc) on IA64
19179         Linux.
19180
19181 2003-02-27  Benjamin Reed <ranger@befunk.com>
19182
19183         * THANKS: Added people who have submitted 3 or more patches
19184         to libtool to the THANKS file.
19185         * README: Added notes about the Darwin (MacOSX) support.
19186
19187 2003-02-25  Bob McElrath  <bob+libtool@mcelrath.org>
19188
19189         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Add support for
19190         the Compaq C compiler for Alpha Linux.
19191
19192 2003-02-25  Benjamin Reed  <ranger@befunk.com>
19193
19194         * libtool.m4 (darwin): Disable hardcoding library paths to
19195         make relinking unnecessary.
19196
19197 2003-02-24  Robert Boehne  <rboehne@gnu.org>
19198
19199         * libltdl/configure.ac: Use AC_CONFIG_AUX_DIR([.]) to place
19200         auxilary files in the libltdl directory.
19201         * Makefile.am: Add to the ltmain.sh rule to copy it into the
19202         libltdl subdirectory.
19203         * bootstrap: Explicitly handle ltmain.sh in libltdl, and pass
19204         --copy to automake.
19205
19206 2003-02-24  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19207
19208         * libtool.m4 (AC_LIBTOOL_SETUP): Check for ar.
19209
19210 2003-02-23  Peter O'Gorman  <peter@pogma.com>
19211
19212         * libtool.m4 (darwin): Revamp darwin platform support.
19213         * ltdl.m4 (darwin): Support dlcompat if found.
19214         * ltmain.in: Make sure ranlib is run if needed when piecewise
19215         linking.
19216
19217 2003-02-23  Alexandre Duret-Lutz  <adl@gnu.org>
19218
19219         * ltmain.in (--help): Show mailing-address for bug reports.
19220         (--version): Mention only the most recent copyright year.
19221         * libtoolize.in (--help): Show mailing-address for bug reports.
19222         (--version): Mention only the most recent copyright year.
19223
19224 2003-02-19  Alexandre Oliva  <aoliva@redhat.com>
19225
19226         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
19227         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
19228         and reset them for a C++ environment.  Use the with_gnu_ld setting
19229         from AC_PROG_LD.
19230
19231         * libtool.m4: Replace $linker_flags with $compiler_flags wherever
19232         it is used as argument to $CC.
19233
19234         * libtool.m4: Use linux version_type on IRIX with GNU ld.
19235         Prefix -soname, -set_version and their arguments with ${wl}.  Add
19236         -melf* linker scripts to LD, and use them to determine libsuff,
19237         shlibsuff and libmagic.
19238
19239 2003-02-17  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
19240
19241         * libtool.m4: Intel icc fixups for version 7.0.
19242
19243 2003-02-17  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19244
19245         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Prepend a dot to
19246         the value of the shrext (aka shared_ext) variable and delete it
19247         from the library_names_spec and soname_spec definitions.  That
19248         way the user can omit the shared library suffix by setting it
19249         to the empty string.
19250         (AC_LIBTOOL_LANG_CXX_CONFIG): Strengthen renaming commands for
19251         the KCC compiler.
19252         * doc/libtool.texi (Link mode): Update the manual.
19253
19254 2003-02-17  Charles Wilson  <cwilson@ece.gatech.edu>
19255
19256         * ltmain.in (win32_libid): Rewritten to improve speed.
19257
19258 2003-02-11  Richard Dawe  <rich@phekda.freeserve.co.uk>
19259
19260         * libtoolize.in: Use the program found by AC_PROG_LN_S
19261         to create symlinks.
19262
19263 2003-02-08  Jan Kratochvil  <project-libtool@jankratochvil.net>
19264
19265         * ltmain.in: Handle duplicate object file names when performing
19266         piecewise archive linking by renaming object files when needed.
19267
19268 2003-02-05  Robert Boehne  <rboehne@gnu.org>
19269
19270         * libtool.m4 (AC_CHECK_LIBM): Search for a real symbol in
19271         the math library rather than 'main', it causes problems for
19272         C++ compilers with certain Auto* tools.
19273         (AC_LIBLTDL_INSTALLABLE): ditto.
19274
19275 2003-02-05  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
19276
19277         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG)
19278         (AC_LIBTOOL_PROG_LD_SHLIBS): Rewrite printf commands so
19279         that the format string cannot be mistaken as an option.
19280         Reported by Martin MOKREJS.
19281
19282 2003-02-05  Robert Boehne  <rboehne@gnu.org>
19283
19284         * libtool.m4: Modify the sys_lib_search_path_spec to allow
19285         for either native sed or GNU sed to be used.
19286
19287 2003-02-04  Nick Hudson  <skrll@netbsd.org>
19288
19289         * libtool.m4: don't use -nodefaultlibs in archive_commands
19290         or archive_expsym_commands on NetBSD.
19291
19292 2003-02-04  Albert Chin-A-Young  <china@thewrittenword.com>
19293
19294         * libtool.m4: Change setting of archive_cmds_need_lc
19295         so that it doesn't overwrite the previous setting.
19296
19297 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
19298
19299         * libtool.m4: Allow compiler variable, CC, CXX, etc. to
19300         be a program name with arguments. Original version stripped
19301         arguments for CC.
19302
19303 2003-01-28  Charles Wilson  <cwilson@ece.gatech.edu>
19304
19305         * ltmain.in: add code for a binary wrapper
19306         to use with uninstalled executables on cygwin/mingw.
19307         Make sure that --mode=clean gets shell wrapper and
19308         binary wrapper.  When sourcing the shell wrapper,
19309         invoke using a terminal `.' on cygwin/mingw to
19310         avoid the automatic append-.exe behavior.
19311
19312 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
19313
19314         * libtool.m4: Hardcode library paths into libraries on IRIX.
19315
19316 2003-01-18  Robert Boehne  <rboehne@gnu.org>
19317
19318         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Don't add -DPIC
19319         for languages other than C and C++.
19320
19321 2003-01-13  Albert Chin-A-Young  <china@thewrittenword.com>
19322
19323         * libtool.m4, ltmain.in: Add support for hppa*64* based on
19324         a patch by Ross Alexander <ross.alexander@uk.neceur.com>.
19325         Credit to Ross! Use +b to hardcode library runtime path.
19326         Add new variable, $hardcode_libdir_flag_spec_ld, that
19327         is equivalent to $hardcode_libdir_flag_spec but is used
19328         when ld is used for linking. This works around having to
19329         set wl=''.
19330
19331 2003-01-12  Robert Boehne  <rboehne@gnu.org>
19332
19333         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Revert an
19334         accidental rearranging of dylib and so for darwin.
19335
19336 2003-01-10  Robert Boehne  <rboehne@gnu.org>
19337
19338         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Modify the
19339         "-shrext" option so that is works properly under Darwin.
19340         Modify the processing of 'gcc -print-search-dirs' under
19341         Darwin to make it behave like GNU gcc does.
19342         (AC_LIBTOOL_CONFIG): Single quote $shrext.
19343         * ltimain.in: Expand shared_ext just before it is used
19344         so that it can be conditional on the value of $module.
19345
19346 2002-12-31  Benjamin Reed  <ranger@befunk.com>
19347
19348         * ltmain.in [darwin]: disable lazy linking, needed
19349         to resolve C++ global constructor issues
19350
19351 2002-12-30  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19352
19353         Rework by Robert Boehne <rboehne@gnu.org>
19354         * ltmain.in: New link option -shrext.
19355         * libtool.m4 (AC_LIBTOOL_CONFIG): New libtool variable shrext.
19356         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Replace all hard coded shared
19357         library file name extensions in library_names_spec and
19358         soname_spec with $shrext.
19359         * doc/libtool.texi (Link mode): Document it.
19360
19361 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
19362
19363         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): modify
19364         $archive_expsym_cmds to restore support for using
19365         .def files via the -export-symbols switch.
19366         (AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]): in both the [CXX]
19367         branch and the default branch, improve $export_symbols_cmds
19368         so that DATA symbols are properly  labelled.  In the default
19369         branch, duplicate the _CXX_CONFIG correction for
19370         $archive_expsym_cmds.
19371
19372 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
19373
19374         * libtool.m4 (AC_LIBTOOL_RC): AC_PROG_RC doesn't exist --
19375         but we do AC_DEFUN something called LT_AC_PROG_RC.
19376         Call that instead.
19377
19378 2002-12-30  Robert Boehne  <rboehne@gnu.org>
19379
19380         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Copy the section
19381         for Darwin from AC_LIBTOOL_PROG_LD_SHLIBS so that the CXX
19382         tag doesn't use the g++ defaults for the OS X compiler.
19383
19384 2002-12-30  Albert Chin-A-Young <china@thewrittenword.com>
19385
19386         * libtool.m4: Sync methods used to detect GNU ld.
19387
19388 2002-12-20  Robert Boehne  <rboehne@gnu.org>
19389
19390         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
19391         AC_LIBTOOL_PROG_CC_C_O): Do not escape } or ? in sed argument.
19392
19393 2002-12-19  Robert Boehne  <rboehne@gnu.org>
19394
19395         * ltmain.in: Use the sed program found by LT_AC_PROG_SED
19396         so that relink commands don't get truncated.
19397
19398 2002-12-18  Robert Boehne  <rboehne@gnu.org>
19399
19400         * libtool.m4: Move AC_REQUIRE([LT_AC_PROG_SED]) to AC_PROG_LD
19401         so it is invoked earlier.
19402
19403 2002-12-11  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
19404
19405         * libtool.m4: Add support for Intel icc compiler for Linux.
19406
19407 2002-12-11  Robert Boehne  <rboehne@gnu.org>
19408
19409         * ltmain.in: Revert the version +1 change for IRIX, it could
19410         cause compatibility problems.
19411
19412 2002-11-22  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
19413
19414         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
19415         AC_LIBTOOL_PROG_CC_C_O): Changed method for compilation with
19416         custom flags to be language-independent.  Thereby removed
19417         CFLAGS/GCJFLAGS mixup bug.  Imitate Autoconf-style logging.
19418         Log entries no longer discarded by compilation failures.
19419         (_LT_AC_LANG_C_CONFIG, _LT_AC_LANG_CXX_CONFIG,
19420         _LT_AC_LANG_GCJ_CONFIG): Tuned settings of
19421         lt_simple_compile_test_code and lt_simple_link_test_code
19422         to avoid warnings that could break some option detections.
19423         (AC_LIBTOOL_PROG_COMPILER_NO_RTTI): Removed
19424         redundant "-c conftest.$ac_ext" in the argument to
19425         AC_LIBTOOL_COMPILER_OPTION.
19426         (AC_LIBTOOL_PROG_LD_SHLIBS): Replaced C-specific conftest
19427         source code with $lt_simple_compile_test_code, to support
19428         the "-lc" test with other languages.
19429
19430 2002-11-19  Paul Eggert  <eggert@twinsun.com>
19431
19432         Don't assume that egrep and fgrep exist.  POSIX 1003.1-2001 no
19433         longer requires them; you're supposed to use grep -E and grep -F
19434         instead.  Also, don't assume that "test -a" works, since POSIX
19435         doesn't require it.
19436
19437         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_LANG_C_CONFIG,
19438         _LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,
19439         AC_LIBTOOL_PROG_LD_SHLIBS):
19440         egrep -> grep, when that makes no difference.
19441         * libtoolize.in: Likewise.
19442         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Likewise.
19443         * ltmain.in: Likewise.
19444         * demo/Makefile.am (hc-direct): Likewise.
19445         * pdemo/Makefile.am (hc-direct): Likewise.
19446         * tests/build-relink.test, tests/build-relink2.test,
19447         tests/cdemo-conf.test, tests/cdemo-shared.test,
19448         tests/cdemo-static.test, tests/demo-conf.test,
19449         tests/demo-nofast.test, tests/demo-shared.test,
19450         tests/demo-static.test, tests/depdemo-conf.test,
19451         tests/depdemo-nofast.test, tests/depdemo-shared.test,
19452         tests/depdemo-static.test, tests/hardcode.test,
19453         tests/mdemo-conf.test, tests/mdemo-shared.test,
19454         tests/mdemo-static.test, tests/pdemo-conf.test,
19455         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
19456         tests/tagdemo-static.test: Likewise.
19457
19458         * libtool.m4 (AC_PROG_EGREP):
19459         New macro, defined if Autoconf doesn't define.
19460         (AC_PATH_TOOL_PREFIX, AC_PROG_LD_GNU): Use it.
19461         (AC_PROG_LD, AC_PROG_NM, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE):
19462         Use shell pattern matching rather than egrep.
19463         (AC_LIBTOOL_CONFIG): Set lt_EGREP and EGREP.
19464
19465         * demo/Makefile.am (SET_HARDCODE_FLAGS): Use sed instead of egrep.
19466         * pdemo/Makefile.am (SET_HARDCODE_FLAGS): Likewise.
19467
19468         * tests/defs (EGREP, FGREP): New vars.
19469
19470         * ltmain.in: egrep -> $EGREP
19471         * tests/assign.test, tests/demo-exec.test, tests/demo-inst.test,
19472         tests/pdemo-exec.test, tests/pdemo-inst.test, tests/sh.test:
19473         Likewise.
19474
19475         * tests/hardcode.test: fgrep -> $FGREP
19476
19477         * tests/f77demo-exec.test: test -a -> test &&
19478
19479 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19480
19481         * ltmain.in: When using gcc, pass -mfoo to the linker
19482         via $compiler_flags in order to pass architecture information to
19483         the linker (e.g. 32 vs 64-bit). This may also be accomplished via
19484         -Wl,-mfoo but this is not reliable with gcc because gcc may use
19485         -mfoo to select a different linker, different libraries, etc, while
19486         -Wl,-mfoo simply passes -mfoo to the linker. If there is a better
19487         solution, please let me know what it is.
19488
19489 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19490
19491         * tests/Makefile.am: Conditional assignment of FFLAGS = @FFLAGS@
19492         does not appear to be necessary given that Automake makes this
19493         assignment by default.  The condition is removed since Automake
19494         1.7.1 complains about it.
19495
19496 2002-11-18  Jakub Jelinek  <jakub@redhat.com>
19497
19498         * libtool.m4: Support linking of 64-bit libraries on
19499         sparc{,v[789]}-*linux*, s390*-*linux*, ppc*-*linux*
19500         GNU/Linux systems when the platform default is to build
19501         32-bit libraries.
19502
19503 2002-11-18  Andreas Jaeger  <aj@suse.de>, Bo Thorsen  <bo@suse.de>
19504
19505         * libtool.m4: Support linking of 32-bit libraries with ld
19506         on the x86-64, ppc64, s390x and sparc64 GNU/Linux systems.
19507
19508 2002-11-18  Akim Demaille  <akim@epita.fr>
19509
19510         * ltmain.in: Do not change the PATH in the wrappers: let them
19511         launch the real binary using its path.
19512
19513 2002-11-18  Kevin Ryde  <user42@zip.com.au>
19514
19515         * doc/libtool.texi (Library tips): Note array dimensions.
19516
19517 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19518
19519         * tests/*.test: MinGW's MSYS treats files under /dev
19520         specially. This causes 'test -r /dev/null/config/site' to
19521         improperly report success, causing configure to fail. Change the
19522         CONFIG_SITE definition from "/dev/null/config/site" to
19523         "/nonexistent" to avoid this problem.
19524
19525 2002-11-18  Charles Wilson  <cwilson@ece.gatech.edu>
19526
19527         * libtool.m4 (_LT_AC_LOCK): remove support for ancient
19528         versions of mingw and cygwin.
19529         (AC_LIBTOOL_POSTDEP_PREDEP): new function.
19530         moved the "find hidden library dependencies" code here
19531         from AC_LIBTOOL_LANG_CXX_CONFIG.  Attempted to make it
19532         multi-tag compatible, but currently only CXX calls it.
19533         (AC_LIBTOOL_LANG_CXX_CONFIG): set
19534         enable_shared_with_satic_runtimes to 'no' by default
19535         Set it to 'yes' for cygwin, mingw, pw32. Replace
19536         "find hidden library dependencies" code with a call
19537         to the new function AC_LIBTOOL_POSTDEP_PREDEP.
19538         Consolidate cygwin and mingw/pw32 stanzas.
19539         (AC_LIBTOOL_LANG_F77_CONFIG): set
19540         enable_shared_with_static_runtimes to 'no' by default
19541         (AC_LIBTOOL_CONFIG): add
19542         enable_shared_with_static_runtimes to the list of variables
19543         to write into ltmain.sh; include it in the libtool script
19544         template as allow_libtool_libs_with_static_runtimes.
19545         (AC_LIBTOOL_PROG_LD_SHLIBS): set
19546         enable_shared_with_static_runtimes to 'no' by default
19547         Set it to 'yes' for cygwin, mingw, pw32.
19548         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): only put cr in regexp
19549         if the build_os is mingw, not host_os
19550
19551         * ltmain.in (case deplibs_check_method): for all appropriate
19552         cases, if allow_libtool_libs_with_static_runtimes, then remove
19553         predeps and postdeps from the list of dependencies that must
19554         be checked for "dynamicness".  For the "none" case, the
19555         presence of compiler-generated postdeps and predeps should
19556         not trigger "inter-library dependencies not supported" error.
19557         (initial setup after arg processing): on cygwin/mingw, allow
19558         compiler-generated dependent libs to be duplicated without
19559         elimination.
19560         (initial search loop for deplibs): if the deplib in question
19561         is a libtool lib, then if
19562         allow_libtool_libs_with_static_runtimes then parse the .la file.
19563         If the .la file only has an "old_library", add the deplib
19564         directly to the deplibs list (-lstdc++) and DON'T use the .la
19565         file; this allows the (case deplibs_check_method) change above
19566         to take effect.
19567         * ltmain.in (for pass in $passes loop): remove predeps,
19568         postdeps, and compiler_lib_search_path from dependency_libs.
19569
19570 2002-11-08  Robert Boehne  <rboehne@gnu.org>
19571
19572         * doc/libtool.texi: Add --mode=* to every example using libtool.
19573
19574 2002-11-03  Ossama Othman  <ossama@doc.ece.uci.edu>
19575
19576         * ltmain.in: add support for installing into temporary
19577         staging area (e.g. 'make install DESTDIR=...')
19578
19579 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
19580
19581         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): restore setting
19582         allow_undefined_flag=unsupported for cygwin and mingw.
19583         (AC_LIBTOOL_PROG_LD_SHLIBS): ditto, for both "normal" gcc/ld
19584         and for the (unmaintained?) MSVC case.
19585
19586 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
19587
19588         * doc/libtool.texi (Install mode): document new
19589         -inst-prefix option.
19590
19591 2002-11-02  Robert Boehne  <rboehne@gnu.org>
19592
19593         * ltmain.in: Print a warning if the mode is not specified.
19594         * doc/libtool.texi: Document the change that the mode must be
19595         specified.
19596
19597 2002-10-30  Charles Wilson  <cwilson@ece.gatech.edu>
19598
19599         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): use printf, not
19600         echo. (AC_DEPLIBS_CHECK_METHOD): use new shell function
19601         win32_libid on w32 platforms
19602         * ltmain.in: add new section for shell functions. Add
19603         win32_libid() shell function.
19604         * f77demo/Makefile.am: add -no-undefined flag
19605
19606 2002-10-30  Rob Browning  <rlb@defaultvalue.org>
19607
19608         * ltdl.c (realloc): Remove custom realloc. (#define
19609         rpl_realloc realloc) and comment out later code for custom
19610         realloc. You can't define your own malloc unless you know
19611         enough about the malloc in use to be able to tell how big
19612         the src ptr is. The disabled code incorrectly used the
19613         *destination* ptr to decide how much to copy. This
19614         sometimes results in out-of-bound accesses which cause
19615         segfaults. This is a quick hack for now; we may want
19616         something cleaner later.
19617         (tryall_dlopen_module): check to be sure (dirname_len > 0) before
19618         testing first character against '/'.
19619         (try_dlopen): check for feof(file) in read loop -- otherwise
19620         infinite loop?
19621
19622 2002-10-25  Robert Boehne  <rboehne@gnu.org>
19623
19624         * ltmain.in (-XCClinker): New flag passes a linking option
19625         directly to the compiler driver without appending ${wl}.
19626
19627 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
19628
19629         * README-alpha: Add some release note templates for inspiration
19630         and consistency at release time.
19631
19632         * Makefile.am (cvs-diff): Compress the generated diff file, ready
19633         for upload to ftp.gnu.org.
19634
19635 2002-10-25  Howard Chu  <hyc@highlandsun.com>
19636
19637         * ltmain.in [aix]: Be sure to deal with xlc_r, cc_r and other
19638         compiler variants.
19639
19640 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
19641
19642         * libtool.m4 (_LT_AC_FILE_IMPGEN_C): Removed.  No longer used.
19643         (_LT_AC_FILE_LTDLL_C): Ditto.
19644         (AC_LIBTOOL_CONFIG) [cygwin, mingw, pw32, os2]: Don't call
19645         _LT_AC_FILE_LTDLL_C or _LT_AC_FILE_IMPGEN_C.
19646
19647 2002-10-25  Albert Chin-A-Young  <china@thewrittenword.com>
19648
19649         * libtool.m4: When LDFLAGS="-Wl,-brtl,[other options]", the
19650         -brtl special-case code for AIX never gets triggered because
19651         were are being too specific about how we search for -brtl.
19652         Use case statement to avoid this. Remove extraneous
19653         semicolon.
19654         * ltmain.in: Recognize the IBM xlc compiler.
19655
19656 2002-10-24  Andrew Suffield  <asuffield@debian.org>
19657
19658         * libltdl/ltdl.c (lt_dlopenext): Corrected sense of "file not
19659         found" check.
19660
19661 2002-10-24  Ossama Othman  <ossama@doc.ece.uci.edu>
19662
19663         * ltmain.in: Support compiler names matching g++*
19664
19665 2002-10-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19666
19667         * libtool.m4: Removed old Windows cruft.
19668         * libtool.m4: Adapted pw32 to be like Cygwin/MinGW.
19669
19670 2002-10-23  Robert Boehne  <rboehne@gnu.org>
19671
19672         ltmain.in: Do not add 1 to the version under IRIX, it is
19673         not necessary.
19674
19675 2002-10-15  Charles Wilson  <cwilson@ece.gatech.edu>
19676
19677         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): avoid long delay on
19678          cygwin/Win9x when computing commandline length.
19679         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): fix postinstall_cmds when
19680         sources are in a subdirectory
19681         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): use $PATH_SEPARATOR, not
19682         $ac_path_separator
19683         * configure.ac: move depdemo-specific stuff.  You must configure
19684         libtool before you can try './libtool --features'.
19685         * mdemo-inst.test: set $PATH to include the directory in which
19686         the modules are installed (on cygwin, DLL search path is the
19687         $PATH)
19688
19689 2002-10-15  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
19690
19691         * ltmain.in: MinGW works identically to Cygwin.
19692         * libtool.m4: lt_cv_sys_max_cmd_len hard-coded to 8192
19693         *  Model MinGW configuration after Cygwin configuration.
19694         Some portions share implementation.
19695
19696 2002-10-15  Elizabeth Barham <soggytrousers@yahoo.com>
19697
19698         * libtool.m4: Pattern MinGW library naming after that
19699         used by Cygwin except use 'lib' prefix rather than 'cyg'.
19700         * Transfer some configuration from Cygwin with adjustments
19701         for MinGW.
19702
19703 2002-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
19704
19705         * libtool.m4: When a module is built for AIX, the 'lib'
19706         prefix isn't needed, neither is the version. AIX dlopen
19707         will honor the RPATH in a library.
19708
19709 2002-10-11  Christoph Egger  <Christoph_Egger@gmx.de>
19710
19711         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS, darwin): Add
19712         -install_name to the link line only when -dynamiclib is
19713         specified for a module.  Use -bind_at_load when linking C++
19714         shared libraries.
19715
19716 2002-10-04  Elizabeth Barham  <soggytrousers@yahoo.com>
19717
19718         * libtool.m4 (AC_LIBTOOL_SETUP): GCC now checks -shared to
19719         create a dll for Windows targets.
19720
19721 2002-09-24  Robert Boehne  <rboehne@gnu.org>
19722
19723         * ltmain.in: Fixed a few spelling errors.
19724
19725 2002-09-17  Robert Boehne  <rboehne@gnu.org>
19726
19727         * libltdl/ltdl.c: Commented out access() call that checks for a
19728         library file's existence and permissions, as it appears to fail
19729         in every case.
19730
19731 2002-09-09  Albert Chin-A-Young  <china@thewrittenword.com>
19732
19733         * libtool.m4: Custom $symcode for Tru64 UNIX to catch 'Q',
19734         read-only constants.
19735
19736 2002-09-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.de>
19737
19738         * libtool.m4 (osf[345]): Append $major to soname_spec.
19739         Reflect this in library_names_spec.
19740         * ltmain.in (osf): Prefix $major with '.' for use as extension.
19741
19742 2002-08-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19743
19744         * ltdl.m4 & libltdl/ltdl.c: Port fully to native Win32 API.
19745
19746 2002-07-31  Robert Boehne  <rboehne@gnu.org>
19747
19748         * f77demo/.cvsignore: New file, forgotten in the last commit.
19749
19750 2002-07-31  Eric Lindahl  <erik@theophys.kth.se>
19751
19752         * libtool.m4 (AC_PROG_LIBTOOL): Added support for the new F77
19753         Fortran support tag.
19754         (AC_LIBTOOL_PROG_CC_C_O, _LT_AC_TAGCONFIG): Support F77 tag.
19755         (AC_LIBTOOL_F77, _LT_AC_LANG_F77, AC_LIBTOOL_LANG_F77_CONFIG):
19756         New macros for F77 tag Fortran support.
19757         * configure.ac: Add support for creating the new F77 tag.
19758         * bootstrap: Add f77demo directory to the list to be processed.
19759         * Makefile.am: Add support for FFLAGS and FLIBS.
19760         * tests/Makefile.am: Add new Fortran tests.
19761         * tests/f77demo-*.test: New files.
19762         * f77demo/configure.ac, f77demo/cprogram.c, f77demo/fooc.c
19763         * f77demo/foof.f, f77demo/foo.h, f77demo/fprogram.f
19764         * f77demo/Makefile.am, f77demo/README: New files.
19765
19766 2002-07-16  Gary V. Vaughan  <gary@gnu.org>
19767
19768         * libltdl/ltdl.c (tryall_dlopen): We need to catch missing file
19769         errors early so that file_not_found() can detect what happened.
19770
19771 2002-06-26  Bob Friesenhahn  <bfreisen@simple.dallas.tx.us>
19772
19773         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Remove
19774         extraneous '=' character which appears in gcc 3.1
19775         -print-search-dirs output.
19776         Handle both upper and lower case drive letters when testing for
19777         Windows vs POSIX style path output from -print-search-dirs
19778         output.
19779
19780 2002-06-24  Robert Boehne  <rboehne@gnu.org>
19781
19782         * ltmain.in (Piecewise linking): Add a clause to skip creating
19783         the export file until the reloadable object file(s) have been
19784         created, then use them as input for $export_symbols_cmds.
19785
19786 2002-06-23  Albert Chin-A-Young  <china@thewrittenword.com>
19787
19788         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Need to quote [ and ] for
19789         Autoconf.
19790
19791         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): HP/UX needs
19792         libltdl_cv_sys_dlopen_deplibs set to yes.
19793
19794 2002-06-23  Kevin Ryde  <user42@zip.com.au>
19795
19796         * libtool.m4 (AC_LIBTOOL_SETUP, _LT_AC_LOCK): Use
19797         AC_PROVIDE_IFELSE to test AC_LIBTOOL_WIN32_DLL and
19798         AC_LIBTOOL_DLOPEN, necessary for autoconf 2.53.
19799
19800 2002-06-23  Gary V. Vaughan  <gary@gnu.org>
19801
19802         * libltdl/ltdl.c (argz_insert): Actually, BEFORE can be NULL
19803         when *PARGZ_LEN is non-NULL, so the assertion to the contrary was
19804         bogus.
19805         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
19806         and Albert Chin-A-Young <china@thewrittenword.com>
19807
19808 2002-06-21  Gary V. Vaughan  <gary@gnu.org>
19809
19810         * libltdl/ltdl.c (foreach_dirinpath): Ensure that filename is '\0'
19811         terminated by all code paths.
19812         Reported by Lutz Müller <lutz@users.sourceforge.net>
19813
19814 2002-06-20  Gary V. Vaughan  <gary@gnu.org>
19815
19816         From Kevin Ryde  <user42@zip.com.au>:
19817         * doc/libtool.texi (Platform quirks): s/dependan/dependen/
19818         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Ditto.
19819         * TODO: Ditto.
19820
19821 2002-06-13  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
19822
19823         * ltmain.in (irix, nonstopux): Set major before use.
19824
19825 2002-06-11  Daniel Kobras  <kobras@linux.de>
19826
19827         * libltdl/ltdl.c (try_dlopen): Don't return bogus handle to user
19828           if tryall_dlopen() fails.
19829
19830 2002-06-01  Gary V. Vaughan  <gary@gnu.org>
19831
19832         * tests/pdemo-exec.test: Typo.  s/hell-static/hell_static/
19833
19834 2002-05-31  Charles Wilson  <cwilson@ece.gatech.edu>
19835
19836         * NEWS: Updated.
19837         * libtool.m4: use $NM to create the symbol list on cygwin, not
19838         $ltdll_cmds as on mingw.  For all tags, (and host=cygwin) set
19839         allow_undefined_flag="" so that the --auto-import magic
19840         works properly.  For all tags (and host=cygiwn) set
19841         always_export_symbols=no -- it is unnecessary thanks to
19842         binutils' auto-export magic.
19843         * libltdl/ltdl.c: Don't force cygwin to use the LoadLibrary
19844         wrapper; use cygwin's builtin implementatino of dl*.
19845         * cdemo/Makefile.am: the downside of unsetting
19846         'allow_undefined_flag' -- we must include -no-undefined
19847         in the _la_LDFLAGS variable.
19848         * depdemo/l1/Makefile.am: ditto.
19849         * depdemo/l2/Makefile.am: ditto.
19850         * depdemo/l3/Makefile.am: ditto.
19851         * depdemo/l4/Makefile.am: ditto.
19852         * mdemo/Makefile.am: ditto.
19853         * tagdemo/Makefile.am: ditto.
19854         * demo/Makefile.am: ditto.  But also, we must make special
19855         provision to clean up the hell0 wrapper script.
19856         * pdemo/Makefile.am: ditto -no-undefined.  ditto hell0.
19857         And use 'hell_static' instead of 'hell.static'.
19858         * tests/pdemo-inst.test: use 'hell_static' instead
19859         of 'hell.static'.
19860         * tests/pdemo-exec.test: ditto.
19861
19862 2002-05-30  Charles Wilson  <cwilson@ece.gatech.edu>
19863
19864         * tests/build-relink2.test: look for installed libl3.la
19865         in $prefix/lib/ as well as $prefix/lib/extra/.
19866
19867 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
19868
19869         * tests/hardcode.test: Use libtool --config to collect the
19870         variable values for the test, otherwise the tag values interfere
19871         with a straight grep.
19872
19873 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
19874
19875         Finally fix the annoying bug which always adds all tags to the
19876         libtool script built by your project configure.  Now we set the
19877         default tags depending on whether AC_PROG_CXX et. al. are actually
19878         called from configure.ac.
19879
19880         * libtool.m4 (_LT_AC_TAGCONFIG): Don't default the tagnames when
19881         no --with-tags argument is given.
19882         (_LT_AC_SHELL_INIT): Factored out from the AC_DIVERT_PUSH code
19883         in...
19884         (_LT_AC_PROG_ECHO_BACKSLASH): ...which now calls the macro
19885         instead.
19886         (AC_LIBTOOL_CXX): Use _LT_AC_SHELL_INIT to add CXX to the
19887         initialisation sequence for tagnames.
19888         (AC_LIBTOOL_GCJ): Similarly for GCJ tag.
19889         (AC_LIBTOOL_RC): Likewise for RC tag.
19890
19891 2002-05-21  Jon Meredith  <jonm@alchemetrics.co.uk>
19892
19893         * ltmain.in: Fix a problem on SCO OpenServer5 that caused a
19894         failure in three depdemo-make tests. For some reason the linker
19895         tries to find the dependent libraries using the library search
19896         path before it has read the libraries specified with absolute
19897         paths in the full commandline. This patch add -L's for each of
19898         the dependent library directories so that they can be resolved.
19899
19900 2002-05-09  Nick Hudson  <skrll@netbsd.org>
19901
19902         * libtool.m4: Update support for NetBSD
19903         * ltdl.m4: Make sure that libltdl_cv_func_dlopen and
19904         libltdl_cv_lib_dl_dlopen are set and used instead of the
19905         ac_cv_ versions. Also, use lt_cv_sys_global_symbol_pipe
19906         instread of global_symbol_pipe. This fixes the detection of
19907         dlopen on BSD derived plaforms and more importantly fixes
19908         need_uscore detection.
19909
19910 2002-05-06  Paul Eggert  <eggert@twinsun.com>
19911
19912         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): head -1 -> sed 1q to
19913         port to POSIX 1003.1-2001 hosts, like textutils 2.0.21 with
19914         _POSIX2_VERSION=200112.
19915
19916 2002-05-06  Paul Eggert  <eggert@twinsun.com>
19917
19918         * ltmain.in: Don't assume that "sort +2" works, as POSIX
19919         1003.1-2001 says that "sort +2" is supposed to sort the file
19920         named "+2".  An example host that behaves like this is
19921         textutils 2.0.21 with _POSIX2_VERSION=200112.
19922
19923 2002-05-06  Loren James Rittle  <rittle@latour.rsch.comm.mot.com>
19924
19925         * ltmain.in: Detect and handle object name conflicts while
19926         piecewise linking a static library.
19927
19928 2002-05-02  Dave Vasilevsky  <thevas@mac.com>
19929
19930         * ltmain.in: Remove convenience libraries from deplibs for Darwin.
19931
19932 2002-05-02  Fritz Elfert  <felfert@to.com>
19933
19934         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Modify archive_expsym_cmds
19935         to catch properly handle dll alias symbols.
19936
19937 2002-04-24  Kevin Ryde  <user42@zip.com.au>
19938
19939         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use $build_os not $host_os.
19940
19941 2002-04-14  Robert Boehne  <rboehne@gnu.org>
19942
19943         * doc/libtool.texi (C++ libraries): Finally updated to reflect
19944         Libtool's support for C++.
19945
19946 2002-04-14  Jean-Frederic Clere  <jfrederic.clere@fujitsu-siemens.com>
19947
19948         * libtool.m4: Update support for Fujistu-Siemens Computers (FSC).
19949         * ltmain.in: Add support for EBCDIC based systems.
19950
19951 2002-04-07  Robert Boehne  <rboehne@gnu.org>
19952
19953         * libtool.m4 (LT_AC_PROG_SED): Refactor, removing temporary directory
19954         and consistent use of the shell variable namespace "lt_ac_".
19955
19956 2002-04-02  Robert Boehne  <rboehne@gnu.org>
19957
19958         * ltmain.in: Finish the tag matching logic started yesterday and
19959         refactor it a bit.
19960
19961 2002-04-01  Robert Boehne  <rboehne@gnu.org>
19962
19963         * ltmain.in: Handle the case when no tag is explicitly set, and
19964         $base_compile has a space in front of $CC, and revert the setting
19965         of tagname checked in on 2002-3-14.
19966
19967 2002-04-01  Robert Boehne  <rboehne@gnu.org>
19968
19969         * tagdemo/foo.cpp: Use C++ IO to catch problems linking to C++
19970         runtime libraries.
19971         * tagdemo/main.cpp: Ditto.
19972
19973 2002-03-16  Gary V. Vaughan  <gary@gnu.org>
19974
19975         * TODO: Removed obsolete comments about RMS' package system.
19976
19977 2002-03-14  Robert Boehne  <rboehne@gnu.org>
19978
19979         ltmain.in: Touch-up to make testsuite pass, and default tagname
19980         to CC when it isn't explicitly set.
19981
19982 2002-03-14  Anthony Green  <green@redhat.com>
19983
19984         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Albert Chin's gcj fix.
19985         (AC_LIBTOOL_PROG_COMPILER_PIC): Per Bothner's change for not
19986         using -DPIC with gcj.
19987
19988 2002-03-11  Bruce Korb  <bkorb@gnu.org>
19989
19990         * ltmain.in(compile): bring a touch of order to the option processing
19991
19992 2002-02-09  Gary V. Vaughan  <gary@gnu.org>
19993
19994         * NEWS: Updated.
19995         * THANKS: Added Rob Collins and Chuck Wilson for their cygwin
19996         work.
19997
19998         From Robert Collins  <robert.collins@itdomain.com.au>:
19999         * configure.ac (AC_EXEEXT): Needed for DOSish systems.
20000         * libtool.m4 (shlibpath_overrides_runpath) [cygwin]: Set to yes
20001         when compiling with gcc.
20002         (lt_prog_compiler_pic) [cygwin]: No longer needs the -DDLL_EXPORT
20003         hack, so we just say the pic is the default.
20004         (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin]: Extract symbols from a
20005         library normally.
20006         [cygwin]: Declare C++ compiler characterisics for g++, taking into
20007         account the new auto-import support in cygwin ld.
20008         * ltmain.in (specialdeplibs) [cygwin]: Be careful about
20009         eliminating duplicate -lgcc's from the link line.
20010         [cygwin]: Be smarter about .exe suffixes.
20011         * demo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Support
20012         DOSish systems properly.
20013         * depdemo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Ditto.
20014         * demo/Makefile.am (deplibs-check): Allow for .exe suffix.  Use
20015         hell_static instead of hell.static for multi-`.' inhibited OSes.
20016         * tests/demo-exec.test: Ditto.
20017         * tests/demo-inst.test: Ditto.
20018         * demo/foo.h [cygwin]: Sanitize cygwin dll support.
20019         * demo/foo.c (_LIBFOO_COMPILATION_): No longer required.
20020         * demo/hello.c (_LIBFOO_COMPILATION_): Ditto.
20021         * depdemo/Makefile.am (bin_PROGRAMS): Use depdemo_static instead
20022         of depdemo.static for multi-`.' inhibited OSes.
20023         * tests/depdemo-exec.test: Ditto.
20024         * tests/depdemo-inst.test: Ditto.
20025         * mdemo/Makefile.am (bin_PROGRAMS):  Ditto for mdemo.static.
20026         * tests/dryrun.test: Ditto.
20027         * tests/mdemo-exec.test: Ditto.
20028         * tests/mdemo-inst.test: Ditto.
20029         * tests/build-relink.test:  Be careful about possible .exe
20030         suffixes.
20031         * tests/noinst-link.test: Allow for .exe suffix.
20032
20033 2002-02-07  Alexandre Oliva  <aoliva@redhat.com>
20034
20035         Reverted incorrect patch:
20036         2001-10-24  H.J. Lu  <hjl@gnu.org>
20037         * ltmain.sh: Allow link against an archive when building a
20038         shared library.
20039         * libtool.m4 (lt_cv_deplibs_check_method): Always use
20040         file_magic for Linux ELF.
20041
20042 2002-01-30  Robert Boehne  <rboehne@ricardo-us.com>
20043
20044         * libtool.m4 (LT_AC_PROG_SED): Removed a mysterious newline.
20045
20046 2002-01-28  Robert Boehne  <rboehne@ricardo-us.com>
20047
20048         * libtool.m4 (LT_AC_PROG_SED): New macro tests sed for truncation of
20049         output.  AC_REQUIRE the new macro.
20050         * ltmain.in: Use $SED rather than plan old sed, as set by the new
20051         macro LT_AC_PROG_SED.
20052
20053 2002-01-10  Volker Christian  <voc@soft.uni-linz.ac.at>
20054
20055         * libltdl/ltdl.c (find_handle_callback): treat the result of a call
20056         to access(2) correctly when deciding whether a library can be found
20057         in a directory from user_search_path.
20058
20059 2002-01-07  Robert Boehne  <rboehne@ricardo-us.com>
20060
20061         * NEWS: Fixed wrong path for texinfo.tex.
20062         * configure.ac: Bumped version to 1.4e.
20063
20064         GNU libtool 1.4d was released.
20065
20066         * configure.ac: Bumped version to 1.4d.
20067         * NEWS: updated.
20068         * config.guess, config.sub, texinfo.tex:  Synchronised from
20069         ftp.gnu.org.
20070
20071 2001-12-06  Jens Petersen  <petersen@redhat.com>
20072
20073         * ltmain.in: Replace all test "-a"s by "&& test"
20074         for portability.
20075
20076 2001-11-28  Robert Boehne  <rboehne@ricardo-us.com>
20077
20078         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Change the
20079         factor of saftey as 3/4 of the result was not low enough.
20080
20081 2001-11-28  Gary V. Vaughan  <gary@gnu.org>
20082
20083         * libtoolize.in: The test for whether AC_PROG_LIBTOOL is defined
20084         in aclocal.m4 had bitrotted slightly.
20085         Reported by Takahiko Kawasaki <Takahiko_Kawasaki@cii.csk.co.jp>
20086
20087 2001-11-27  Donald D. Anderson  <dda@sleepycat.com>
20088
20089         * ltmain.in: Treat freebsd like openbsd, in that -lc/-lc_r should
20090         not be explicitly used.  ld handles this depending on the presence
20091         of the -pthread option.
20092
20093 2001-11-27  Robert Boehne  <rboehne@ricardo-us.com>
20094
20095         With help from Michael Matz <matz@kde.org>:
20096         * ltmain.in:  Add a new command line argument
20097         --preserve-dup-deps for preserving duplicate
20098         dependent libraries.
20099         * libtool.texi: Document it.
20100
20101 2001-11-27  Kevin Ryde  <user42@zip.com.au>
20102
20103         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Send "test"
20104         warnings to /dev/null, helps FreeBSD and maybe others.
20105
20106 2001-11-15  Albert Chin-A-Young  <china@thewrittenword.com>
20107
20108         * libtool.m4: quote LTCC because autoconf AC_PROG_CC_STDC
20109         macro might add to $CC if options needed by compiler to
20110         grok ANSI.
20111
20112 2001-11-15  Gary V. Vaughan  <gary@gnu.org>
20113
20114         From Joseph S. Myers  <jsm28@cam.ac.uk>:
20115         * ltmain.in: Typo.
20116
20117 2001-11-15   Mo DeJong  <supermo@bayarea.net>
20118
20119         * ltmain.in: Place parens around a generated relink_command
20120         so it is run is a subshell. This avoids an install error
20121         where libtool ended up in the wrong directory after
20122         relinking a .la file.
20123
20124 2001-10-31  Raja R Harinath  <harinath@cs.umn.edu>
20125
20126         * configure.ac (pkgdatadir): Move the invocation of AC_INIT_AUTOMAKE
20127         before the use of $PACKAGE in $pkgdatadir.
20128         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
20129
20130 2001-10-28  Gary V. Vaughan  <gary@gnu.org>
20131
20132         From Tom Bates  <Tom.Bates@compaq.com>:
20133         * libtool.m4 [mips-compaq-nonstopux]: New port.
20134         * ltmain.in [mips-compaq-nonstopux]: Support
20135         $version_type == nonstopux.
20136
20137 2001-10-28  Albert Chin-A-Young  <china@thewrittenword.com>
20138
20139         * libltdl/ltdl.c (foreach_dirinpath): change some types to size_t
20140         from int because strlen() returns size_t. argz_len changed to
20141         size_t because argzize_path() takes 3rd argument as size_t, not
20142         int.
20143         Based on lint run from Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
20144
20145 2001-10-27  Gary V. Vaughan  <gary@gnu.org>
20146
20147         * libtool.m4 (_LT_AC_TAGCONFIG): Cray sed does not allow character
20148         sets to contain the separator character.
20149         Reported by Kevin Ryde <user42@zip.com.au>
20150
20151         * ltdl.m4 (AC_WITH_LTDL): New macro to add `--with-included-ltdl'
20152         option to configure, but to find an appropriate ltdl library and
20153         append the right options to link it.
20154
20155 2001-10-24  Kevin Ryde  <user42@zip.com.au>
20156
20157         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Remove a stray ' quote.
20158
20159 2001-10-24  H.J. Lu  <hjl@gnu.org>
20160
20161         * ltmain.sh: Allow link against an archive when building a
20162         shared library.
20163         * libtool.m4 (lt_cv_deplibs_check_method): Always use
20164         file_magic for Linux ELF.
20165
20166 2001-10-12  Guido Draheim  <guidod-2001q3@gmx.de>
20167
20168         * ltdl.m4: Changed "underscode to underscore".
20169
20170 2001-10-06  Gary V. Vaughan  <gary@gnu.org>
20171
20172         * configure.ac: General modernisation and cleanup.
20173         * cdemo/configure.ac: Ditto.
20174         * demo/configure.ac: Ditto.
20175         * depdemo/configrue.ac: Ditto.
20176         * ltdl/configure.ac: Ditto.
20177         * ltdldemo/configure.ac: Ditto.
20178         * mdemo/configure.ac: Ditto.
20179         * pdemo/configure.ac: Ditto.
20180         * tagdemo/configure.ac: Ditto.
20181
20182 2001-10-04  Albert Chin-A-Young <china@thewrittenword.com>
20183
20184         * libltdl/ltdl.c: Match function return type with prototype
20185         (add static initializer to file_not_found).
20186
20187 2001-09-30  Gary V. Vaughan  <gary@gnu.org>
20188
20189         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): s/INCLTDL/LTDLINCL/ for
20190         consistency with gettext's INTLINCL.  Keep the old symbol too for
20191         backwards compatibility.
20192         (AC_LIBLTDL_INSTALLABLE): Ditto.
20193         * doc/libtool.texi (Distributing libltdl):  Adjust documentation.
20194
20195 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
20196
20197         * ltdl.m4 (AC_LTDL_DLLIB): Even though HP-UX 10.20 and 11.00
20198         support shl_load *and* dlopen, dlopen works correctly only
20199         with a patch. Because we want to avoid the situation where we
20200         build on a system with the patch but deploy on a system without,
20201         use shl_load exclusively if found.
20202
20203 2001-09-22  Gary V. Vaughan  <gary@gnu.org>
20204
20205         * libtool.m4 (_LT_AC_FILE_LTDLL_C): Be carefule that the start
20206         marker searched for by sed must start in column 0.
20207         (_LT_AC_FILE_IMPGEN_C): Ditto.
20208         Reported by Tor Lillqvist <tml@iki.fi>
20209
20210 2001-09-22  Tor Lillqvist  <tml@iki.fi>
20211
20212         * libtool.m4 [mingw* cygwin*]: Small improvement for mingw-hosted
20213         tool support (while still running libtool on cygwin). In that case
20214         PATH_SEPARATOR is ':', but gcc -print-search-dirs still prints its
20215         search path with ';' as separator.
20216         (AC_LIBTOOL_RC, AC_LIBTOOL_LANG_RC_CONFIG): Add support for .rc
20217         files (Windows resource files), compiled by the resource compiler
20218         (windres in mingw) to .o files.
20219         (AC_PROG_NM): Minor bug fix for $PATH elements with spaces in
20220         them.
20221         * configure.ac: Use LT_AC_PROG_RC.
20222         * ltmain.in: Check for .rc files.
20223         * NEWS: Updated.
20224
20225         * ltmain.in: Add a space to $base_compile in the case statement,
20226         as the case labels checks for trailing spaces, but there aren't
20227         necessarily in $base_compile.
20228
20229 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
20230
20231         * libtool.m4: When setting archive_cmds for CC, don't
20232         test for $GXX but for $GCC on HP-UX. Indentation fixes.
20233
20234 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
20235
20236         From Tor Lillqvist <tml@iki.fi>:
20237         * ltmain.in [cygwin* mingw*]: Take care of the difference between
20238         wrapper script name and executable name.
20239
20240         * libtool.m4 (archive_cmds) [darwin1.[0-2]]: Darwin uses zsh-3.1.6
20241         for /bin/sh, and that shell does not handle escaped quotes
20242         properly yet.
20243         Reported by Christopher Pfisterer <cp@chrisp.de>
20244
20245 2001-09-21  Albert Chin-A-Young  <china@thewrittenword.com>
20246
20247         * libltdl/ltdl.c: Match function return type with prototype
20248         (add static initializer to some functions) to prevent warnings
20249         from HP-UX cc.
20250
20251 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
20252
20253         * libltdl/ltdl.c: Added support for dmalloc, and uncovered some
20254         memory bugs as a result.
20255
20256 2001-09-21  Albert Chin  <china@thewrittenword.com>
20257
20258         * libtool.m4: Don't include main() when testing for command to
20259         parse $NM output because some C++ compilers don't allow you to
20260         take the address of main (e.g. HP-UX aCC).
20261
20262         * libtool.m4: Some uses of $GXX were unquoted, but GXX is either
20263         NULL or yes.  Use "$GXX".
20264
20265 2001-09-13  Assar Westerlund  <assar@sics.se>
20266
20267         * ltdl.m4 (AC_LTDL_DLLIB): call dlopen with arguments so the test
20268         does not fail due to a prototype in dlfcn.h
20269
20270 2001-09-13  Gary V. Vaughan  <gary@gnu.org>
20271
20272         * ltdl.m4 (AC_CHECK_HEADERS): Check for assert.h.
20273         * libltdl/ltdl.c:  If not, disable assertions manually.
20274
20275 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
20276
20277         * bootstrap: Be robust to having no files that need removing.
20278
20279         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump libltdl version to
20280         1.2.
20281         * libltdl/Makefile.am (libltdl_la_LDFLAGS):  Bump libtool library
20282         version info to 4:0:1.
20283
20284 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
20285
20286         * libtool.m4: No need to undefine([symbols]), proper quotation is
20287         enough.
20288
20289 2001-09-10  Gary V. Vaughan  <gary@gnu.org>
20290
20291         * libtool.m4: CVS Autoconf guarantees a decent default IFS, so
20292         there is no need for us to preset it anymore.
20293         Be careful not to set IFS="${IFS}$PATH_SEPARATOR" for PATH
20294         splitting, otherwise spaces in directory names will be lost.
20295         Use $PATH_SEPARATOR... don't rely on $ac_path_separator, which was
20296         an autoconf internal until just now, when it disappeared!
20297         * ltmain.in: Default IFS once, at the start.
20298         Reported by Akim Demaille <akim@epita.fr>
20299
20300 2001-09-10   Brad  <brad@comstyle.com>
20301
20302         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Missed an instance of
20303         Autoconf square bracket quoting style normalisation.
20304
20305         * ltmain.in (-lc_r): Style improvement.
20306
20307         * doc/libtool.texi: Remove obsolete references to ltconfig.
20308         * tests/quote.test: s/ltconfig/\$0/
20309
20310 2001-09-09  Gary V. Vaughan  <gary@gnu.org>
20311
20312         * libtool.m4: Use Autoconf square bracket quoting style
20313         consistently throughout.
20314
20315 2001-09-08  Gary V. Vaughan  <gary@gnu.org>
20316
20317         * bootstrap: Cleanup `autom4te' and `libtool' so that we don't
20318         get caught by something from a previous build.
20319
20320         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Revert
20321         my 2001-09-06 patch.
20322         (no_undefined_flag)i [solaris*]: Revert Alexandre's 2001-04-11 patch.
20323
20324 2001-09-07  Gary V. Vaughan  <gary@gnu.org>
20325
20326         * libltdl/ltdl.c (foreach_dirinpath): argz_len should be a size_t.
20327         Reported by Albert Chin <china@thewrittenword.com>
20328
20329 2001-09-06  Gary V. Vaughan  <gary@gnu.org>
20330
20331         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [solaris*]: Typo. s/GXX/GCC/.
20332
20333         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Changing
20334         no_undefined_flag from `-z text' to `-z defs' (see entry below at
20335         2001-04-11  Alexandre Oliva  <aoliva@redhat.com>) has a problem.
20336         when linking a shared library with gcc calling /usr/ccs/bin/ld (eg.
20337         the gcc supplied with Solaris 8 companion CD), using the flag
20338         -no-undefined, shared library linking will always fail because of
20339         the unresolved symbols from libgcc.a.  Consequently we have to
20340         provide a path to libgcc.a when linking shared libraries in
20341         conjunction with -no-undefined!
20342
20343         From Michael Pruett <mpruett@engr.sgi.com>:
20344         * libltdl/ltdl.c (find_module): `0' valued arguments to
20345         tryall_dlopen_module() must be explicitly cast to avoid compiler
20346         warnings on some environments.
20347
20348         From Daniel Johnson <danielj7@mac.com>:
20349         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Move from GNU
20350         ld section to non-GNU ld section.
20351
20352 2001-09-05  Robert Boehne  <rboehne@ricardo-us.com>
20353
20354         * pdemo/Makefile.am (helldl):  Automake 1.4 can't find the target
20355         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
20356         Using both targets to the left of the colon seems to work though!
20357
20358 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
20359
20360         * demo/Makefile.am (helldl):  Automake 1.4 can't find the target
20361         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
20362         Using both targets to the left of the colon seems to work though!
20363
20364 2001-09-03  Brad  <brad@comstyle.com>
20365
20366         * ltdl.m4 [AC_LTDL_SYS_DLOPEN_DEPLIBS]: Teach ltdl about the
20367         behavior of OpenBSD's dlopen().
20368
20369 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
20370
20371         From Marius Vollmer <mvo@zagadka.ping.de>:
20372         * libltdl/ltdl.c (tryall_dlopen_module): Don't forget to propogate
20373         errors over recurse levels.
20374
20375 2001-09-03  Brad  <brad@comstyle.com>
20376
20377         * libtool.m4 [openbsd*]: More improvements to the OpenBSD port.
20378
20379 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
20380
20381         From Albert Chin <china@thewrittenword.com>:
20382         * libtool.m4 (_LT_AC_LANG_C_CONFIG) [aix4*]: Be careful with
20383         shared namespaces for static and shared libs.
20384         (AC_LIBTOOL_DLOPEN_SELF): If all else fails, try dld_link from GNU
20385         DLD.
20386
20387 2001-09-02  Christopher Pfisterer <cp@chrisp.de>
20388
20389         * libtool.m4, ltmain.in: Linker flag and version numbering fixes
20390         for darwin.
20391
20392 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
20393
20394         Based on a patch from Marius Vollmer <mvo@zagadka.ping.de>:
20395         * NEWS: updated.
20396         * ltdl.m4 (AC_LIB_LTDL): Check for unistd.h.
20397         * ltdl.c: Include unistd.h if it exists.
20398         (LTDL_SEARCHPATH_VAR): Macro to prevent hardcoding
20399         "LTDL_LIBRARY_PATH".
20400         (LTDL_ARCHIVE_EXT): Macro to prevent hardcoding ".la".
20401         (archive_ext): Have only one copy of ".la" in the readonly
20402         segment of the compiled library.
20403         (find_handle_callback): Don't bother trying to dlopen the file if
20404         it doesn't exist.
20405         (find_handle): Don't bother searching for files if no search_path
20406         was supplied.
20407         (file_not_found): A new function to determine whether the last
20408         error was due to a file not found condition.
20409         (try_dlopen): Renamed from lt_dlopen() and changed to have the
20410         same footprint as tryall_dlopen.  This involved a minor rewrite of
20411         much of the internals of this function.
20412         (lt_dlopen): A new function wrapped arounf try_dlopen().
20413         (lt_dlopenext): If a file already has a suitable extension, don't
20414         bother adding additional extensions and trying to open those.
20415         Tidy up the rest of the code to prevent continued searching with
20416         an eventual FILE_NOT_FOUND when a genuine failure earlier in the
20417         search process could be legitimately reported.
20418
20419         * demo/Makefile.am (helldl$(EXEEXT)): Automake-1.5 made me change
20420         this from just `helldl'.
20421
20422 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
20423
20424         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) Fixed a problem
20425         with export_symbols_cmds not being set for CXX tags, and
20426         not being properly set for any tag under AIX/Power.
20427
20428 2001-08-19  Ossama Othman  <ossama@uci.edu>
20429
20430         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Corrected and improved
20431           error message that is displayed when there was a problem
20432           compiling the C++ test program.  It still mentioned the now
20433           non-existent `ltcf-cxx.sh' file.
20434
20435         * doc/libtool.texi (LTDL_SET_PRELOADED_SYMBOLS): Removed
20436           parentheses at end of starting "defmac" line, as pointed out by
20437           makeinfo.
20438
20439 2001-08-18  Brad  <brad@comstyle.com>
20440
20441         * ltmain.in: Do not remove -lm from deplibs for OpenBSD.
20442
20443 2001-08-16  Gary V. Vaughan  <gary@gnu.org>
20444
20445         * libltdl/ltdl.c (argz_create_sep): Don't forget to include the
20446         terminating '\0' when counting argz_len.
20447         (argz_create_sep): When canonicalizing argz, don't forget to copy
20448         the terminating '\0', incase canonicalization has shortened argz.
20449         (argz_stringify): Don't covert the final '\0' to a separator.
20450
20451 2001-08-15  Gary V. Vaughan  <gary@gnu.org>
20452
20453         * libltdl/ltdl.c (lt_dlhandle_next): Now we can loop through all
20454         loaded module handles as originally intended.
20455
20456         * libltdl/ltdl.c (lt_dlseterror): Oops.  This never worked
20457         either, due to a pair of typos.  Now fixed.
20458
20459         * libltdl/ltdl.c (N_ELEMENTS):  Deleted.  How come nobody noticed
20460         there was no way this could have ever worked?
20461         (lt_dlcaller_set_data): Now that valid caller_ids must be
20462         non-zero, allocate an addition entry in the caller_data vector and
20463         use a zero valued key as the end marker.
20464         (lt_dlcaller_get_data): Iterate up to the end marker in one pass.
20465
20466 2001-08-14  Gary V. Vaughan  <gary@gnu.org>
20467
20468         * libltdl/ltdl.c (lt_dlcaller_register): Caller ids are allocated
20469         starting from value `1', so that clients can use a value of zero
20470         to indicate that libltdl has not yet initialised.
20471
20472         * ltmain.in (exec_cmd): Fix quoting in execute mode so that the
20473         double quotes added by libtool (to prevent lossage with embedded
20474         spaces in filenames etc.) are not interpreted as literals by the
20475         shell.
20476
20477 2001-08-13  Gary V. Vaughan  <gary@gnu.org>
20478
20479         * libltdl/ltdl.c (find_file_callback): Fix a multiple free()
20480         bug.
20481         (tryall_dlopen_module): Remove some unused variables.
20482
20483         * libltdl/ltdl.c (lt_dlinsertsearchdir): Calculate the address
20484         of the end of user_search_path correctly.
20485
20486         * libltdl/ltdl.c (rpl_argz_stringify): New fallback implementation.
20487         * ltdl.m4 (AC_LTDL_FUNC_ARGZ):  Test for argz_stringify in libc.
20488         * libltdl/ltdl.c (lt_argz_insertinorder): Renamed from
20489         lt_argz_insert to make room for...
20490         (lt_argz_insert): Wraps argz_insert with libltdl error handling.
20491         (lt_dlpath_insertdir): Insert new path elements into an
20492         argzized path.
20493         (lt_dlinsertsearchdir): New function to insert new search
20494         directories anywhere into user_search_path using the above.
20495         (lt_dladdsearchdir): Rewritten to use lt_dlpath_insertdir.
20496         * libltdl/ltdl.h (lt_dlinsertsearchdir): Prototype for export.
20497         * doc/libtool.texi (Libltdl interface): Document it.
20498         * NEWS: Updated,
20499
20500 2001-08-07  Gary V. Vaughan  <gary@gnu.org>
20501
20502         From Albert Chin <china@thewrittenword.com>:
20503         * ltmain.in [irix*]: $with_gcc is either "yes" or "" (empty string)
20504         with current autoconf, so we need to be robust to that when testing
20505         it,
20506
20507 2001-08-06  Gary V. Vaughan  <gary@gnu.org>
20508
20509         From Brad <brad@comstyle.com>:
20510         * libtool.m4 (deplibs_check_method) [aix*]: Removed redundant setting
20511         of this variable.
20512
20513 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
20514
20515         * libltdl/ltdl.c (load_deplibs): Insert missing 1st argument to
20516         LT_EMALLOC.
20517
20518 2001-08-05  Tim Van Holder  <tim.van.holder@pandora.be>
20519
20520         * ltdl.m4: Canonicalize descriptive text used with
20521         AC_DEFINE.
20522
20523         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR): Remove.
20524         (_LT_AC_PROG_ECHO_BACKSLASH): Use $ac_path_separator
20525         instead of $PATH_SEPARATOR.
20526         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Ditto.
20527         (_LT_AC_TAGCONFIG): Ditto.
20528         (AC_ENABLE_SHARED): Ditto.
20529         (AC_ENABLE_STATIC): Ditto.
20530         (AC_ENABLE_FAST_INSTALL): Ditto.
20531         (AC_PATH_TOOL_PREFIX): Ditto.
20532         (AC_PATH_MAGIC): Ditto.
20533         (AC_PROG_LD): Ditto.
20534         (AC_PROG_NM): Ditto.
20535         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): Ditto.
20536
20537 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
20538
20539         From Brad <brad@comstyle.com>:
20540         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]:  OpenBSD
20541         can build modules without a `lib' prefix and version number.
20542         Move the deplibs check code from here...
20543         (AC_DEPLIBS_CHECK_METHOD): ...to here.
20544
20545 2001-08-05  Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
20546
20547         * libtool.m4 [osf3*, osf4*, osf5*]: Tru64 *can* build modules
20548         without a `lib' prefix to the module name.
20549
20550 2001-08-05  Gary V. Vuaghan  <gary@gnu.org>
20551
20552         From Guido Draheim <Guido.Draheim@tek.com>:
20553         * ltmain.in: Display better and different error messages when
20554         library linkage fails in various ways.
20555
20556 2001-08-05  Albert Chin-A-Young <china@thewrittenword.com>
20557
20558         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Add newline after
20559         terminating '}' grouping character. Change '[0-9][0-9]'
20560         to '0' as we've already matched it.
20561
20562 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
20563
20564         From Brad <brad@comstyle.com>:
20565         * libtool.m4 (archive_cmds) [darwin, newsos, sysv4]: Replace
20566         1.3 era $linkopts references with $linker_flags.
20567
20568         * libltdl/ltdl.c:  Fixed several careless mistakes in the
20569         foreach_dirinpath support functions.
20570         (foreach_dirinpath): Walk path elements with the argz API.
20571
20572 2001-08-04  Gary V. Vaughan  <gary@gnu.org>
20573
20574         From Sedi Master Albert Chin <china@thewrittenword.com>:
20575         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Replace the awk invocation
20576         with an equivalent bit of sed wizardry.
20577
20578         From Edouard G. Parmelan <egp@free.fr>
20579         * libtool.m4 [darwin, openbsd]: Fix quoting problems with
20580         unquoted [] expressions.
20581
20582 2001-08-03  Gary V. Vaughan  <gary@gnu.org>
20583
20584         * bootstrap:  s/ltdldemo // -- This demo soesn't work properly,
20585         so I haven't committed it yet.
20586
20587 2001-08-01  Ossama Othman  <ossama@doc.ece.uci.edu>
20588
20589         * libtool.m4 (AC_LIBTOOL_SETUP): Require Autoconf-2.50 via the
20590         AC_PREREQ autoconf macro since the new libtool macros utilize
20591         macros from that version of Autoconf.
20592
20593 2001-08-01  Gary V. Vaughan  <gary@gnu.org>
20594
20595         * ltdl.m4: Bump serial number.
20596         General reformat and tify up in line with Autoconf-2.50 support.
20597         (AC_LTDL_FUNC_ARGZ): Test for system implementations of a
20598         handful of argz API calls, the error_t type, and the argz.h
20599         header.
20600         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump version number.
20601         * libltdl/ltdl.c (rpl_argz_append, rpl_argz_create_sep.
20602         rpl_argz_insert, rpl_rgz_next):  Fallback implementations of
20603         the similarly named functions for machines that don;t use glibc.
20604         (lt_dlrealloc):  New memory function pointer that can be set by
20605         the client.  Defaults to rpl_realloc, which in turn uses only
20606         lt_dlmalloc and lt_dlfree.
20607         (LT_EMALLOC, LT_EREALLOC): Set internal out-of-memory error
20608         inside the functions called by these new macros.  Simplified all
20609         callers by removing explicit client error reporting.
20610         (memmove):  Fallback implementation of overlap safe memory copy
20611         function.
20612         (tryall_dlopen):  Factorized common code into...
20613         (tryall_dlopen_module): ...this new helper function.
20614         (canonicalize_path):  Changed function signature to return success
20615         or failure.  Updated all callers.
20616         (foreachfile_callback):  Make use of argz API.
20617         (LT_DLSTRLEN): Moved from here...
20618         * libltdl/ltdl.h (LT_STRLEN): ...to here.  Updated all callers.
20619         (lt_dlrealloc):  Declare new memory management handle.
20620
20621 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
20622
20623         * libtool.m4 (mingw*) Revert the previous change as it was
20624         applied by mistake.
20625
20626 2001-07-31  Guido Draheim  <Guido.Draheim@tek.com>
20627
20628         * libtool.m4 (mingw*) sys_lib_search_path_spec:
20629         Sets the proper path separator for cross-compiling.
20630
20631 2001-07-30  Steve Ellcey  <sje@cup.hp.com>
20632
20633         * libtool.m4 (ia64-*-hpux*) Add support for ia64*-*-hpux* platform.
20634
20635 2001-07-30  Robert Boehne  <rboehne@ricardo-us.com>
20636
20637         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Fixed an
20638         incorrect resetting of lt_prog_compiler_static when using gcc
20639         under AIX Power.
20640
20641 2001-07-31  Gary V. Vaughan  <gary@gnu.org>
20642
20643         * bootstrap: Remove generated files (incase they are links) before
20644         rerunning the autotools to regenerate them.
20645
20646 2001-07-30  Gary V. Vaughan  <gary@gnu.org>
20647
20648         * libtool.m4 (AC_LIBTOOL_SETUP): Use Autoconf-2.50 era
20649         quadrigraphs and AC_HELP_STRING to bring AC_ARG_WITH/ENABLE
20650         macros up to date.
20651         (_LT_AC_LOCK): Ditto.
20652         (_LT_AC_TAGCONFIG): Ditto.
20653         (AC_PROG_LD): Ditto.
20654         (AC_ENABLE_SHARED): Ditto.  And eliminate the last remaining
20655         changequote invocations.
20656         (AC_ENABLE_STATIC): Ditto.  And Ditto.
20657         (AC_ENABLE_FAST_INSTALL):  Ditto.  And Ditto.
20658         * ltdl.m4 (AC_LTDL_ENABLE_INSTALL): Use Autoconf-2.50 era
20659         quadrigraphs and AC_HELP_STRING to bring AC_ARG_ENABLE
20660         macro up to date.
20661         * NEWS: Updated.
20662
20663         * libtool.m4 [UnixWare7, OpenUNIX8]: Initial support for
20664         UnixWare7 and OpenUNIX8.  Accept these identifiers from the
20665         latest config.guess/config.sub as pseudonyms for sysv5uw[78].
20666         * NEWS: Updated.
20667         Reported by Boyd Lynn Gerber <gerberb@zenez.com>
20668
20669 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
20670
20671         * tests/sh.test: Add a new test to enforce X as the fill
20672         character in `test "X...'.
20673         Beef up the `test' tests to also check `test -.' and `test ! -.'
20674         phrases for compliance.
20675         * ltmain.in: Fix quoting problems uncovered by the new tests.
20676
20677 2001-07-29  Andrew C. Feren  <aferen@CetaceanNetworks.com>
20678
20679         * tests/sh.test:  New test to disallow `test $foo', where
20680         `test "$foo"' is much safer.
20681         * ltmain.in: Fix quoting problems uncovered by the new test.
20682
20683 2001-07-29  Steve Ellcey  <sje@cup.hp.com>
20684
20685         * libtool.m4 (lt_cv_sys_global_symbol_to_cdecl):  Change it from
20686         "extern char" to "extern int" so that GCC 3.0 won't complain and
20687         refuse to compile programs containing "extern char main()".
20688
20689 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
20690
20691         From Guido Draheim <Guido.Draheim@tek.com>:
20692         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Support
20693         cross compilation to mingw by allowing `:' or ';' as a path
20694         separator.
20695         * NEWS: Updated.
20696
20697 2001-07-27  NIIBE Yutaka  <gniibe@m17n.org>
20698
20699         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all
20700         for sh*-*-linux* (SuperH) too.
20701
20702 2001-07-25  Ossama Othman  <ossama@debian.org>
20703
20704         From Thomas Poindessous <poinde_t@epita.fr>
20705         * ltmain.in (pic_mode):  Added missing quotes around shell
20706         variable in "if test" conditional.
20707
20708         From Peter Moulder <pmoulder@longford.csse.monash.edu.au>
20709         * ltmain.in (xform): Add support for pre-processed
20710         (e.g. `*.{i,ii}' sources).
20711
20712 2001-07-25  Gary V. Vaughan  <gary@gnu.org>
20713
20714         From Steve Ellcey <sje@cup.hp.com>:
20715         * libltdl/ltdl.c (foreach_dirinpath): Free unassigned pointer
20716         fix for `canonical'.
20717
20718 2001-07-23  Robert Boehne  <rboehne@ricardo-us.com>
20719
20720         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG, AC_LIBTOOL_PROG_LD_SHLIBS)
20721         [aix4*, aix5*]: Fixed a mispelled binder option under AIX.
20722         The option to throw errors for unresolved external references is
20723         -bernotok, not -bnoerok.
20724
20725 2001-07-23  Gary V. Vaughan  <gary@gnu.org>
20726
20727         * Makefile.am (EXTRA_DIST): Don't forget to distribute
20728         ChangeLog.1.
20729
20730         From Erik Lindahl <E.Lindahl@chem.rug.nl>
20731         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Used on aix to discover
20732         the compiler's default library search path so that the MPI
20733         compiler suite is not hosed by the previously hardcoded path.
20734         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [aix4*, aix5*]: Use it.
20735
20736 2001-07-23  Andreas Schwab  <schwab@suse.de>
20737
20738         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
20739         s390*-*-linux* and m68*-*-linux*.
20740
20741 2001-07-19  Robert Boehne  <rboehne@ricardo-us.com>
20742
20743         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix tag support
20744         problems with CXX variables being overwritten by the individual
20745         macros.
20746         (AC_LIBTOOL_PROG_CC_C_O): Ditto.
20747         (AC_LIBTOOL_PROG_COMPILER_PIC): Ditto.
20748         (AC_LIBTOOL_LANG_CXX_CONFIG): Moved call to
20749         AC_LIBTOOL_SYS_HARD_LINK_LOCKS after the call to
20750         AC_LIBTOOL_PROG_CC_C_O as it depends on the result.
20751         (AC_LIBTOOL_LANG_GCJ_CONFIG): Ditto.
20752         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
20753         (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Used the macro
20754         _LT_AC_TAGVAR to ensure the correct variable is being queried.
20755         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Changed the naming of shared
20756         objects under IRIX back to what it was in the MLB.
20757
20758 2001-07-23  Mark Kettenis  <kettenis@gnu.org>
20759
20760         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN) [gnu*]: Remove spurious
20761         "break" and bogus comment
20762         (_LT_AC_LANG_CXX_CONFIG): Add support for the Hurd.
20763         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Add support for the Hurd.
20764
20765 2001-07-16  Robert Boehne  <rboehne@ricardo-us.com>, Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
20766
20767         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): add cases and comments for
20768         more platforms, including AIX, Digital/Tru64 UNIX and IRIX.
20769
20770 2001-07-16  Gary V. Vaughan  <gary@gnu.org>
20771
20772         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix ia64 AIX
20773         run-time-linking when not using gcc.
20774         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
20775         Reported by Dan McNichol <mcnichol@austin.ibm.com>
20776
20777 2001-07-12  Gary V. Vaughan  <gary@gnu.org>
20778
20779         From dda@sleepycat.com (Don Anderson):
20780         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [qnx]: New
20781         supported architecture.
20782         (AC_DEPLIBS_CHECK_METHOD) [qnx]:  Ditto.
20783         * NEWS: Updated.
20784
20785         From Stefan Ondrejicka <ondrej@idata.sk>:
20786         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [cygwin*]: Make
20787         sure that /lib/w32api is searched for system libraries to
20788         match recent versions of cygwin.
20789         * NEWS: Updated.
20790
20791 2001-07-12  Dan McNichol  <mcnichol@austin.ibm.com>
20792
20793         From albert chin <china@thewrittenword.com>
20794         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix AIX
20795         run-time-linking when using gcc.
20796         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
20797
20798 2001-07-11  Gary V. Vaughan  <gary@gnu.org>
20799
20800         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
20801         solaris]: Doh!  the evalled variable shouldn't have been
20802         quoted.
20803
20804         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
20805         solaris]: output_verbose_link_cmd have unquoted `*' in case
20806         statements for these architectures.  Be sure to quote them
20807         with a sed expression before passing to eval.
20808         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
20809
20810 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
20811
20812         * README-alpha:  s/configure.in/configure.ac.
20813         * configure.ac: Bumped version to 1.4c.
20814
20815         GNU libtool 1.4b was released.
20816
20817         * configure.ac: Bumped version to 1.4b.
20818         * NEWS: updated.
20819         * config.guess, config.sub, texinfo.tex:  Synchronised from
20820         ftp.gnu.org.
20821
20822 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
20823
20824         From Michael Elizabeth Chastain <chastain@cygnus.com>:
20825         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
20826         to a maximum of 512Kb, as it seems some HPUX 11.0 systems
20827         have trouble with 1MB.
20828
20829 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
20830
20831         * README-alpha:  Upgrade distribution instructions to include
20832         canonical location of texinfo.tex.
20833
20834 2001-07-09  Timothy Wall  <twall@oculustech.com>
20835
20836         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Don't disable shlibs
20837         on AIX5/IA64 with GNU ld.  Keep gnu defaults if using gnu tools
20838         on AIX5/IA64.
20839
20840 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
20841
20842         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
20843         to -1 on hurd, it has no command line argument limits.
20844         * ltmain.in Handle max_cmd_len=-1 for systems that don't have
20845         command line argument limits.
20846
20847 2001-07-05  Gary V. Vaughan  <gary@gnu.org>
20848
20849         * libtool.m4 (_LT_AC_LANG_C_CONFIG):  Revert to 1.3.x
20850         sematics, and always build static libs when the host machine
20851         cannot build shared libs.  Even if static libs were explicitly
20852         disabled.
20853
20854 2001-07-02  Gary V. Vaughan  <gary@gnu.org>
20855
20856         Cleanup of libltdl:
20857         * ltdl.c (lt_dladderror): Don't use `index' as a variable name,
20858         since it is a function on BSD based boxes.
20859         (lt_dlseterror): Ditto.
20860         (lt_dlexit): Remove unused errormsg declaration.
20861         (foreach_dirinpath):  Make sure filename is initialised.
20862         (find_handle):  Return NULL for a failed search.
20863         (foreachfile_callback): Don't reuse data2 symbol from prototype
20864         in func declaration to prevent symbol shadowing.
20865         * ltdl.h (lt_dlmutex_seterror): Don't use `error' as a parameter
20866         name, since it is a function on glibc boxes.
20867
20868         * libtoolize.in:  Display --version in the same format as
20869         autoconf and automake.
20870         * ltmain.in: Ditto.
20871
20872 2001-06-30  Gary V. Vaughan  <gary@gnu.org>
20873
20874         Merge test improvements from multi-language-branch:
20875         * tests/defs: Find and set the value of CC probed by libtool.m4
20876         * tests/link-2.test: Use a .lo wrapper script, and the value of
20877         CC set by defs instead of hardcoding gcc.
20878         * tests/link.test: Use the value of CC set by defs instead of
20879         hardcoding gcc.
20880         * tests/quote.test: Ditto.
20881         * tests/suffix.test: Ditto.
20882
20883         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Always set
20884         lt_prog_compiler_wl to `-Wl'.
20885         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
20886
20887         * ltdl.m4 (AC_LTDL_DLLIB) [sco3.2*]: When searching for a dlopen
20888         implementation, and adding `-ldl' has failed, try linking a call
20889         to dlopen, #including dlfcn.h, and without -ldl.  On sco3.2 the
20890         header files redefines the interface symbols to point at the
20891         implementation symbols in libc.
20892         Reported by "Golubev I. N." <gin@mo.msk.ru>
20893
20894 2001-06-29  Tim Van Holder  <tim.van.holder@pandora.be>
20895
20896         General cleanup of autoconf-2.50 upgrade:
20897         * configure.ac: Mark as needing autoconf-mode in
20898         emacs.  Pass arguments to AC_INIT.
20899         * cdemo/configure.ac: Ditto.
20900         * demo/configure.ac: Ditto.
20901         * depdemo/configure.ac: Ditto.
20902         * libltdl/configure.ac: Ditto.
20903         * mdemo/configure.ac: Ditto.
20904         * pdemo/configure.ac: Ditto.
20905         * tagdemo/configure.ac: Ditto.
20906         * ltdl.m4: Mark as needing autoconf-mode in
20907         emacs.
20908         * libtool.m4: Mark as needing autoconf-mode in
20909         emacs.  Don't add () to AS_MESSAGE_LOG_FD.
20910         * libltdl/configure.ac: Use config-h.in as
20911         template for config.h.
20912         * tagdemo/configure.ac: Drop the AC_DIAGNOSTIC. Move
20913         AC_LANG([C++]) after the OBJEXT/EXEEXT check.
20914
20915 2001-06-29  Gary V. Vaughan  <gary@gnu.org>
20916
20917         From Tim Van Holder <tim.van.holder@pandora.be>
20918         * tests/suffix.test: Typo in 2nd for loop.
20919
20920         From Tim Van Holder <tim.van.holder@pandora.be>
20921         * libltdl/Makefile.am (OBJECTS):  This was an implicit variable.
20922         instead state the list of object variables explicitly.
20923
20924         From Bruno Haible <haible@ilog.fr>
20925         * libtool.m4:  undefine the m4 builtin `symbols', so that the
20926         string `symbols' can be used in the rest of the code without
20927         causing errors with autoconf-2.13.
20928
20929         From "Golubev I. N." <gin@mo.msk.ru>
20930         * tests/Makefile.am (CPPLAGS): Typo. s/CPPLAGS/CPPFLAGS.
20931
20932         * mdemo/Makefile,am (foo1_la_LIBADD): Add libsub.la, since foo1
20933         does use symbols from libsub.la -- only platforms that allow
20934         undefined symbols in libraries were able to cope with this
20935         previously.
20936         Reported by Robert Collins <robert.collins@itdomain.com.au>
20937
20938         From "Golubev I. N." <gin@mo.msk.ru>
20939         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [sco3.2v5*]: Needs
20940         -wl,-Bexport to make self dlopen work.
20941
20942 2001-06-28  Gary V. Vaughan  <gary@gnu.org>
20943
20944         From  Alexander Bluhm  <Alexander.Bluhm@WiredMinds.de>
20945         * libltdl/ltdl.c (lt_dlopen): Fix bad memory initialisation
20946         assumptions.
20947
20948         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE) [HPUX]: Define
20949         lt_cv_sys_global_symbol_to_c_name_address to be a sed expression
20950         for mangling the output of the symbol pipe into a brace delimited
20951         C declaration of symbol name and address.
20952         * ltmain.in: Use it to generate the fooS.c symbol name
20953         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
20954
20955 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>, Gary V. Vaughan  <gary@gnu.org>
20956
20957         * bootstrap: Use cp instead of ln -s, for systems without
20958         symlinks.  Reorder the statements to avoid repetition outside
20959         the loop.
20960
20961 2001-06-28  Paolo Bonzini  <bonzini@gnu.org>, Gary V. Vaughan  <gary@gnu.org>
20962
20963         Libtool now builds with the help of Autoconf-2.50!
20964         * configure.ac (AC_PREREQ):  Require Autoconf-2.50 or newer.
20965         (AC_PROG_CPP, AC_EXEEXT, AC_OBJEXT):  Removed.  Autoconf-2.50
20966         doesn't have the AC_REQUIRE bug that required these to be called
20967         explicitly from here.  Autoconf-2.50 uses this file instead of...
20968         * configure.in: ...this, which is now deleted.
20969         * cdemo/configure.ac, cdemo/configure.in: Ditto.
20970         * demo/configure.ac, demo/configure.in: Ditto.
20971         * depdemo/configure.ac, depdemo/configure.in: Ditto.
20972         * libltdl/configure.ac, libltdl/configure.in: Ditto.
20973         * mdemo/configure.ac, mdemo/configure.in: Ditto.
20974         * pdemo/configure.ac, pdemo/configure.in: Ditto.
20975         * tagdemo/configure.ac, tagdemo/configure.in: Ditto.
20976         * libltdl/acconfig.h:  Deleted.
20977         * Makefile.am (libtool): libtool now depends on configure.ac.
20978         * libtool.m4 (_LT_AC_LOCK):  Use 2.50's AC_LANG_PUSH/AC_LANG_POP
20979         instead of 2.13's AC_LANG_SAVE/AC_LANG_RESTORE.
20980         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
20981         (AC_LIBTOOL_LANG_CXX_CONFIG): Ditto.
20982         * libtoolize.in:  Use $configure_ac, instead of hardcoding
20983         configure.in.
20984
20985 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>
20986
20987         * pdemo/Makefile.am:  Use '=' instead of '+=' to shut up
20988         automake.
20989
20990 2001-06-27  Gary V. Vaughan  <gary@gnu.org>
20991
20992         From brad@openbsd.org:
20993         * NEWS: Updated.
20994         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]: Improved
20995         support for various openbsd platforms.
20996         (AC_LIBTOOL_PROG_LD_SHLIBS): Ditto.
20997         * ltmain.in: Ditto,
20998
20999 2001-06-26  Gary V. Vaughan  <gary@gnu.org>
21000
21001         * NEWS: Updated.
21002         * libltdl/ltdl,c (LT_DLMUTEX_LOCK): Renamed from MUTEX_LOCK to
21003         avoid potential namespace clash.
21004         (LT_DLMUTEX_UNLOCK, LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR):
21005         Ditto.
21006         (lt_dlmutex_lock_func): Renamed from mutex_lock to avoid a
21007         namespace clash of NCR MP-RAS.
21008         (lt_dlmutex_unlock_func, lt_dlmutex_seterror_func,
21009         lt_dlmutex_geterror_func): Ditto.
21010         Reported by Edouard G. Parmelan <egp@free.fr>
21011
21012         * libltdl/ltdl.c (LT_DLSTRLEN): Call strlen only if the argument
21013         is non-NULL and non-zero in length.  Changed all calls to strlen
21014         appropriately.
21015
21016         * libltdl/ltdl.c: Prototype all static functions.
21017
21018         * ltdl.m4: Bump serial number to 3.
21019         (AC_LIB_LTDL): Require AC_HEADER_DIRENT for ltdl.c.
21020         * libltdl/ltdl.h (lt_dlforeachfile): Prototype for new function.
21021         * libltdl/ltdl.c: Include an appropriate header for the
21022         opendir/dirent api.
21023         (foreach_dirinpath): Visit each file in a list of directories.
21024         (find_file_callback): Factor out the core of find_file() to make
21025         use of foreach_dirinpath().
21026         (find_file): Use it!
21027         (find_handle_callback, find_handle): Ditto.
21028         (lt_dlforeachfile):  New function to find files in a searchpath.,,
21029         (foreachfile_callback): ...using this callback.
21030         * doc/libtool.texi (Libltdl interface): Document new
21031         lt_dlforeachfile api call.
21032
21033 2001-06-25  Gary V. Vaughan  <gary@gnu.org>
21034
21035         * THANKS:  Added Albert Chin-A-Young.
21036
21037         * libtool.m4 (IFS): When IFS is changed to split a string for
21038         examination in a loop, restore it inside the loop as well as
21039         outside incase IFS is needed by commands in that loop.
21040         Reported by Pavel Roskin <proski@gnu.org>
21041
21042 2001-06-25  Albert Chin-A-Young  <china@thewrittenword.com>
21043
21044         * libtool.m4: Prefer shl_load to dlopen on HP-UX because dlopen
21045         won't work properly without a patch.
21046
21047 2001-06-25  Daniel Harvey <daniel@amristar.com.au>
21048
21049         * libtool.m4 (ltdll_cmds): [$]0 doesn't appear to translate through
21050         the script correctly, change to $''0
21051
21052 2001-06-25  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
21053
21054         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
21055         mips-*-linux* and mipsel-*-linux*.
21056
21057 2001-06-24  Andreas Schwab  <schwab@suse.de>
21058
21059         * libtool.m4 (AC_LIBTOOL_SETUP): Remove failed try to
21060         transform linux to linux-gnu in $host.
21061         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match $host_os against
21062         linux*, not linux-gnu*.
21063         (AC_DEPLIBS_CHECK_METHOD): Likewise.
21064
21065 2001-06-24  Gary V. Vaughan  <gary@gnu.org>
21066
21067         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR):  Set
21068         PATH_SEPARATOR appropriately if it is not set already,
21069         (_LT_AC_TAGCONFIG): Use it.
21070         (AC_ENABLE_SHARED): Ditto.
21071         (AC_ENABLE_STATIC): Ditto.
21072         (AC_ENABLE_FAST_INSTALL): Ditto.
21073         (AC_PATH_TOOL_PREFIX): Ditto.
21074         (AC_PATH_MAGIC): Ditto.
21075         (AC_PATH_PROG_NM): Ditto.
21076
21077         From Tim Van Holder  <tim.van.holder@pandora.be>:
21078         * libtool.m4: Use the canonical absolute path test
21079         ([\\/]* | ?:[\\/]) and $PATH_SEPARATOR wherever
21080         appropriate.
21081         (AC_LIBTOOL_PROG_CC_PIC): Properly recognize DJGPP as a
21082         platform that doesn't support shared libraries.
21083         (AC_LIBTOOL_SYS_MAX_CMD_LEN): Avoid this test on DJGPP; use a
21084         fixed value (12K) instead.
21085         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't forget $ac_exeext
21086         when testing for link success.
21087
21088         * configure.in (AM_INIT_AUTOMAKE): Bumped version to 1.4a.
21089
21090         Complete the new configure time tags creation facility based on
21091         the ltcf-*.sh and ltconfig.in files from multi-language-branch:
21092         * libtool.m4:  More refactoring and reformatting.
21093         (_LT_AC_LANG_GCJ_CONFIG): Merged ltcf-gcj.sh from
21094         multi-language-branch.
21095         (_LT_AC_LANG_CXX_CONFIG): Merged ltcf-cxx.sh from
21096         multi-language-branch.
21097         * configure.in (AC_PROG_CXX, LT_AC_PROG_GCJ): Compiler checks must
21098         be done before AC_PROG_LIBTOOL which appends tags based on their
21099         results.
21100
21101 2001-06-12  Robert Boehne  <rboehne@ricardo-us.com>
21102
21103         * docs/libtool.texi: Updated the libltdl interface documentation
21104         to bring it up to date.
21105
21106 2001-06-06  Gary V. Vaughan  <gary@gnu.org>
21107
21108         * demo/Makefile.am (objdir): Use `libtool --config' for
21109         extracting configuration values, since a given value may
21110         be present in each tag.
21111         (hc-libpath): Ditto.
21112         (hc-minusL): Ditto.
21113         * libtool.m4 (_LT_AC_TAGCONFIG): Add tagged configurations from
21114         the --with-tags option.
21115         (_LT_AC_LTCONFIG_HACK): Factored out into separate configuration
21116         macros -- The interdependencies and running order are still
21117         immutable, and need a lot of work to fix.
21118         (AC_LIBTOOL_CONFIG): Taken from the previous incarnation of
21119         _LT_AC_LTCONFIG_HACK -- this macro is used both to create the
21120         primary (C language) libtool configuration from
21121         _LT_AC_LTCONFIG_HACK and also to append tagged configurations from
21122         _LT_AC_TAGCONFIG.
21123         * NEWS:  Merged from multi-language-branch.
21124
21125 2001-06-06  Robert Boehne  <rboehne@ricardo-us.com>
21126
21127         * bootstrap: Added tagdemo and pdemo tests from
21128         multi-language-branch.
21129         * configure.in: Added pdemo and tagdemo to CONF_SUBDIRS
21130         and merged references to CXX and GCJ from multi-language-branch.
21131         * pdemo: Added test directory from multi-language-branch.
21132         * tagdemo: Added test directory from multi-language-branch.
21133         * tests/Makefile.am: Merged additional tests from
21134         multi-language-branch.
21135         * tests/pdemo-*.test: ditto.
21136         * tests/tagdemo-*.test: ditto.
21137
21138 2001-05-30  Gary V. Vaughan  <gary@gnu.org>
21139
21140         * libtool.m4: Merged ltconfig.in from multi-language-branch.
21141
21142 2001-05-28  Gary V. Vaughan  <gary@gnu.org>
21143
21144         * libtool.m4: Reformatting for consistency, and some refactoring
21145         in preparation for ltcf-*.sh merge.
21146
21147 2001-05-27  Gary V. Vaughan  <gary@gnu.org>
21148
21149         * ltmain.in: Merged from multi-language-branch.
21150         * libtool.m4: Merged from multi-language-branch.
21151         * ChangeLog: Started afresh.  Old ChangeLog history moved to...
21152         * ChangeLog.1: ...here.
21153
21154 2000-06-04  Mark Mitchell  <mark@codesourcery.com>
21155
21156         * ltcf-c.sh (archive_cmds, archive_expsym_cmds) [solaris,
21157         with_gcc]: Use `gcc -shared' to build a shared library.
21158
21159 2001-06-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
21160
21161         * ltcf-c.sh (archive_cmd) [hpux, with_gcc]: Use gcc to link shared
21162         archives.
21163
21164 2001-05-28  Simon Patarin <simon.patarin@inria.fr>
21165
21166         * ltcf-cxx.sh (osf3/osf4/osf5): Support creation of C++  shared
21167         libraries when using g++ with native linker.
21168
21169 2001-05-28  Albert Chin  <china@thewrittenword.com>
21170
21171         * ltconfig.in (version_type, soname_spec) [aix4* | aix5*]: Use
21172         linux-style versioning, and remove trailing .o from soname_spec.
21173
21174 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
21175
21176         * ltcf-cxx.sh (allow_undefined_flag, no_undefined_flag)
21177         [aix4*|aix5*]: Prepend blank.
21178
21179 2001-05-20  Alexandre Oliva  <aoliva@redhat.com>
21180
21181         * configure.in: Reverted to 1.4, to avoid confusion with MLB.
21182         Mainline is the release snapshot, except for the ChangeLog version
21183         number, until the multi-language branch is merged into it.
21184
21185         * ltconfig.in: Fix sh.test regression introduced in previous patch.
21186
21187         * ltconfig.in (lt_cv_sys_max_cmd_len): Improve test to work better
21188         in case of non-built-in echo.  Set bounds correctly.
21189
21190         * ltcf-cxx.sh (allow_undefined_flag) [aix4* | aix5*]: Fix quote
21191         error.
21192
21193         * ltmain.in (exec_cmd): New variable.  Don't exec programs within
21194         the big `case'; set the variable instead, and exec the cmd
21195         afterwards, so that the shell gets a chance to clean up here-doc
21196         files.
21197         * NEWS: Update.
21198
21199 2001-05-16  Alan Modra  <amodra@one.net.au>
21200
21201         * libtool.m4 (lt_cv_deplibs_check_method): pass_all for hppa*-linux.
21202
21203 2001-05-03  Andreas Jaeger  <aj@suse.de>, Andreas Schwab  <schwab@suse.de>
21204
21205         * ltmain.in (relink_command): Arrange for wrapper script to save
21206         output to a variable and display it only if relinking fails.
21207
21208 2001-04-25  Gary V. Vaughan  <gary@gnu.org>
21209
21210         * configure.in: bumped version to 1.4a.
21211
21212         GNU libtool 1.4 was released.
21213
21214         * configure.in: Bumped version to 1.4.
21215         * config.sub, config.guess:  Synchronised from ftp.gnu.org.
21216         * NEWS: updated.
21217
21218 2001-04-24  Peter Eisentraut  <peter_e@gmx.net>
21219
21220         * libtool.m4: Support $host_os as /sysv5uw7*/ from newer
21221         config.guess in addition to older /unixware*/.  Use compiler
21222         driver, not linker, for linking shared libraries.
21223
21224 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
21225
21226         * libtool.m4, ltmain.in, libltdl/configure.in,
21227         tests/quote.test:  Remove stale references to ltconfig.
21228
21229         * ltdl.m4 (AC_C_INLINE): No longer required.
21230         * libltdl/ltdl.c (strdup, strcmp, strchr, strrchr, memcpy, trim,
21231         free_vars):  Revoke inline keyword from declarations.  `static
21232         inline' is not very portable, and in addition Unixware 7.1.1's
21233         compiler says you can't access static variables from inline
21234         functions.
21235         Reported by Peter Eisentraut  <peter_e@gmx.net>
21236
21237 2001-04-24 Albert Chin-A-Young <china@thewrittenword.com>
21238
21239         * libtool.m4: Handle case where /bin/nm -p outputs multiple
21240         symbol types (like under HP-UX 11.00).
21241
21242 2001-04-24  Thomas Tanner  <tanner@ffii.org>
21243
21244         * TODO: describe problems with libltdl
21245         * ltmain.in (ILD): tidy up, add comments, remove dead code,
21246           merge duplicate code
21247         * ltmain.in (ILD): don't touch newdependency_libs after scan or
21248           dlopen pass
21249         * ltmain.in (ILD): don't dlpreopen dependency_libs of a dlopened
21250           module (remove absolutely wrong quick hack)
21251         * ltmain.in (ILD): remove wrong comments about duplicate removal
21252         * ltmain.in (ILD): build a static-only module if it has
21253           static libraries in its dependencies (so that libltdl can
21254           safely load dependency_libs)
21255         * ltmain.in (argument parsing): prefix comparsions of -l args with X,
21256           replace -lc with `-framework System' _after_ the ILD passes
21257         * ltmain.in (argument parsing): support dl[pre]open
21258           for both .o and .lo files
21259         * ltmain.in (deplibs_check): use portable test syntax
21260         * ltmain.in (help): document -prefer-[non-]pic flags
21261         * ltmain.in: improve readablity by adding some comments,
21262           rename uninst_* to notinst_* (more adequate name)
21263
21264 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
21265
21266         * doc/PLATFORMS:  More updates from subscribers to
21267         libtool@gnu.org.
21268
21269         From Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21270         * tests/Makefile.am (TESTS_ENVIRONMENT): Make sure the *.test
21271         scripts get the same make that was used in the top level
21272         directory.
21273
21274 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
21275
21276         * doc/PLATFORMS:  Updated with more platforms successfully
21277         tested by members of libtool@gnu.org.
21278
21279 2001-04-23  Peter Eisentraut  <peter_e@gmx.net>
21280
21281         * doc/PLATFORMS:  With this patch, freebsd4.3 passes the test
21282         suite.
21283         * libltdl/ltdl.c (lt_dlexit): Quit loop if only resident modules
21284         are left.
21285
21286 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
21287
21288         * doc/PLATFORMS:  With this patch, my Solaris boxes now pass the
21289         test suite,  Yay!
21290         From Albert Chin-A-Young <china@thewrittenword.com>
21291         * ltmain.in:  `test -L' is not portable, and infact breaks uninstall
21292         mode on Solaris.  Fallback to `test -h' and finally `test -f',
21293         but be careful not to let the failure status cause libtool to
21294         stop.
21295
21296         From Simon Spero <ses@ibiblio.org>
21297         * ltdl.m4 (AC_LTDL_DLSYM_USCORE):  Add $LIBADD_DL while
21298         checking for dlsym _.
21299
21300         From Simon Spero <ses@ibiblio.org>
21301         * libtool.m4 (lt_cv_deplibs_check_method) [darwin]: Set it!
21302
21303         * TODO: Make a note to undo this later.
21304         From Christoph Pfisterer <cp@chrisp.de>
21305         * libtool.m4: Use $() execution substitution quotation to work
21306         around zsh builtin echo \ escape removal.
21307
21308 2001-04-22  Peter Eisentraut  <peter_e@gmx.net>
21309
21310         * bootstrap: Allow overriding the location aclocal, automake,
21311         autoconf, autoheader from the environment.
21312
21313         * demo/Makefile.am: Automake 1.4e does not allow `+=' assignments
21314         if the variable was not set with `=' earlier.  `+=' was not useful
21315         here anyway.
21316
21317 2001-04-22  Gary V. Vaughan  <gary@gnu.org>
21318
21319         * ltdl.m4 (AC_CHECK_HEADERS): UW7 has sys/dl.h, so we must
21320         check for that here.
21321         * libltdl/ltdl.c (HAVE_SYS_DL_H):  Include it if necessary for
21322         the dlopen loader.
21323         Reported by Matthew Schalit <mschalit@pacbell.net>
21324
21325         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use pass_all for
21326         various releases of UnixWare and OpenServer that support it.
21327         Reported by Matthew Schalit <mschalit@pacbell.net>
21328
21329         * doc/PLATFORMS:  Updated with various platforms successfully
21330         tested by members of libtool@gnu.org.
21331
21332 2001-04-21  Gary V. Vaughan  <gary@gnu.org>
21333
21334         * TODO:  propose pkg-config merge.
21335
21336 2001-04-21  Nick Hudson  <skrll@netbsd.org>
21337
21338         * ltmain.in: Correct an error in yesterday's patch.
21339
21340 2001-04-20  Nick Hudson  <skrll@netbsd.org>
21341
21342         * libtool.m4: Improve NetBSD support.
21343         * ltmain.in: ditto.
21344
21345 2001-04-19  Dan McNichol <mcnichol@austin.ibm.com>
21346
21347         * libtool.m4: Build standard shared libraries on AIX POWER
21348         more like AIX does, with a shared object archived into lib<xxx>.a.
21349         On AIX -bexpall flag does strange things... Don't use it.
21350         Fix quotes around -berok flag.  Add support for AIX 5.
21351         Add support for run time linking on AIX POWER. (should work
21352         on AIX 4.2 and up).  Turn this feature on by adding -brtl flag
21353         to LD_FLAGS.  Add support for AIX on IA64. Note: AIX on IA64
21354         uses a SYSV type linker.  Add a comment telling what to do if the
21355         TOC starts getting too large on AIX.
21356         * NEWS: mention aix5 support.
21357
21358 2001-04-18  Alexandre Oliva  <aoliva@redhat.com>
21359
21360         * TODO: Add -L- flag.
21361
21362 2001-04-11  Alexandre Oliva  <aoliva@redhat.com>
21363
21364         * libtool.m4 (no_undefined_flag) [Solaris ld]: Change to -zdefs.
21365
21366 2001-04-11  Ossama Othman  <ossama@uci.edu>
21367
21368         * AUTHORS: Added myself to the list of maintainers.
21369
21370 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
21371
21372         * libtool.m4 (hardcode_libdir_flag_spec, osf4/osf5): Use ${wl}
21373         to pass -rpath when compiling with gcc.
21374         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21375
21376         * libltdl/ltdl.c (sys_shl_open): Cache a handle for the `self'
21377         module, since HPUX adds module symbols into the `self' pool if
21378         it is opened later.  Return the cached pointer if the caller
21379         subsequently tries to open `self'.
21380         (sys_shl_sym): Diagnose NULL modules.
21381
21382         From Peter Eisentraut  <peter_e@gmx.net>
21383         * ltmain.in (clean,uninstall): test -e is not portable.  Well,
21384         neither is -L, but I'm hoping that redirecting error messages
21385         to /dev/null and relying on non-zero exit status will work okay
21386         on the few hosts that don't support -L.
21387
21388 2001-04-08  Nick Hudson  <skrll@netbsd.org>
21389
21390         * ltmain.in: Improve check for valid -version-info parameter.
21391
21392 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
21393
21394         From Nick Hudson  <skrll@netbsd.org>
21395         * doc/Makefile.am (libtool_TEXINFOS): Add fdl.texi so that it
21396         is included in the distribution.
21397
21398 2001-04-07  Peter Eisentraut  <peter_e@gmx.net>
21399
21400         * ltmain.in (clean,uninstall): Do not error if the file doesn't
21401         exist and 'rm -f' was used.  Exit with status 1 on error.
21402
21403 2001-04-06  Nick Hudson  <skrll@netbsd.org>
21404
21405         * ltmain.in: Implement a new deplibs_check_method called
21406         match_pattern that does pattern matching on filenames...
21407         * libtool.m4: ...use it with NetBSD
21408
21409 2001-04-05  Gary V. Vaughan  <gary@gnu.org>
21410
21411         * doc/libtool.texi (Multiple dependencies): A note about the
21412         problems I've reintroduced by reverting the my patch of 2001-03-31.
21413
21414         From Edward Lee <tailbert@yahoo.com>
21415         * libtool.m4: Typos.
21416
21417         * tests/Makefile.am (TESTS): Delete references to depdemo-dups.test.
21418         * tests/depdemo-dups.test:  Removed, as part of the patch
21419         reversion below.
21420         * ltmain.in: Revert my change from 2001-03-31.  Although it
21421         was technically correct, it opens a whole can of worms we don't
21422         want to deal with right now.
21423
21424         From Ahmed Masud <masud@googgun.com>
21425         * libltdl/ltdl.c (sys_shl_open):  Return a NULL module handle
21426         for self opening.
21427         (sys_shl_close):  Be careful not to close a NULL module handle.
21428         (sys_shl_sym):  Allow shl_findsym() to open NULL modules, but
21429         discard the modified module address it returns.
21430
21431         * libltdl/ltdl.c (lt_dlopen):  When reading the .la file,
21432         reallocate the line buffer size if the line overflows the
21433         original buffer.
21434         Reported by Nick Hudson <skrll@netbsd.org>
21435
21436         * NEWS (1.3d) Removed bogus ltconfig reference.
21437
21438 2001-04-03  Gary V. Vaughan  <gary@gnu.org>
21439
21440         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Remove the spurious
21441         `dnl' from the help text of --with-pic.
21442         Reported by stefan <stefan@lkcc.org>
21443
21444 2001-04-02  Gary V. Vaughan  <gary@gnu.org>
21445
21446         * configure.in: bumped version to 1.3e.
21447
21448         GNU libtool 1.3d was released.
21449
21450         * NEWS: inserted todays date.
21451
21452 2001-04-01  Christoph Pfisterer  <cp@chrisp.de>
21453
21454         * libtool.m4: Fixed support for Darwin and Rhapsody. Now correctly
21455         hardcodes the library path and adds versioning. Other small
21456         fixes.
21457         * ltmain.in: Fixed special cases for libc and libm on Rhapsody and
21458         Darwin. One of them was misplaced. Added version_type case for
21459         Rhapsody and Darwin, named "darwin".
21460
21461 2001-03-31  Gary V. Vaughan  <gary@gnu.org>
21462
21463         * ltmain.in: Remove the code for stripping duplicate deplibs
21464         from libtool link lines -- duplicates are somtimes necessary
21465         to satisfy inter-library dependencies, and never cause link to
21466         fail even if they are spurious.
21467         * tests/depdemo-dups.test: New file.  Make sure this bug doesn't
21468         creep back in again!
21469         * tests/Makefile.am (TESTS): Use the new test above.
21470
21471 2001-03-29  Edward M. Lee  <tailbert@yahoo.com>
21472
21473         * libtoolize.in: Check configure.ac and prefer configure.ac to
21474         configure.in.
21475
21476         * libtoolize.in: change recommendation from AM_PROG_LIBTOOL to
21477         AC_PROG_LIBTOOL.
21478
21479         * libtool.m4: Generate dll/import libraries for cygwin according
21480         to the following: libFOO.a (static lib), libFOO.dll.a (import
21481         lib), cygFOO-version.dll (dll).  Update postinstall_cmds and
21482         postuninstall_cmds to reflect this.
21483         * ltmain.in: Generate installed .la files with dlnames set to
21484         ../bin/cygFOO-version.dll for normal dlls. dlls for modules
21485         remain with the .la file.
21486
21487         * libltdl/ltdl.c:  Use windows paths while calling LoadLibrary.
21488
21489 2001-03-16  Albert Chin  <china@thewrittenword.com>
21490
21491         * libtool.m4 (save_CPPFLAGS): Fix typo.
21492
21493 2001-03-13  Alexandre Oliva  <aoliva@redhat.com>
21494
21495         * libtool.m4 (lt_cv_compiler_c_o): Cache it.
21496         (lt_cv_compiler_o_lo): Likewise.
21497
21498 2001-03-09  Peter Eisentraut  <peter_e@gmx.net>
21499
21500         * ltmain.in (clean): Automatically remove $objdir (usually '.libs').
21501
21502 2001-03-08  Gary V. Vaughan  <gary@gnu.org>
21503
21504         * ltconfig.in (library_names_spec): Undo latin-1 spaces I pasted
21505         in yesterday by mistake.
21506
21507 2001-03-07  Gary V. Vaughan  <gary@gnu.org>
21508
21509         From Tor Lillqvist <tml@iki.fi>
21510         * libtool.m4 (export_symbols): On Windows, if the export_symbols
21511         file (which has been passed to libtool with the -export-symbols
21512         command line switch) already is a .def file, use it as is.
21513
21514         * libtool.m4 (library_names_spec): Using m4 quotes correctly this
21515         time around!
21516
21517         From Tor Lillqvist <tml@iki.fi>
21518         * libtool.m4 (library_names_spec): Use an appropriate filename
21519         prefix for dlls -- lib for mingw; cyg for cygwin; pw for pw32.
21520
21521 2001-03-06  Alexandre Oliva  <aoliva@redhat.com>
21522
21523         * libtool.m4 (can_build_shared) [AIX 4.[01], GCC]: GCC up to
21524         2.96 can't build shared libraries reliably.  Disable them.
21525
21526         * ltmain.in: When dropping dependencies of a -no-undefined
21527         library, give up on building a shared library.
21528
21529 2001-03-05  Akim Demaille  <akim@epita.fr>
21530
21531         * ltmain.sh: Don't quote the argument of case/esac and
21532         assignments.
21533         * libtool.m4: Likewise.
21534
21535 2001-03-03  Markus F.X.J. Oberhumer <markus@oberhumer.com>,
21536             Alexandre Oliva <oliva@lsd.ic.unicamp.br>
21537
21538         * libtool.m4: Added explicit return type to all C functions.
21539
21540 2001-02-22  Gary Vaughan  <gary@gnu.org>
21541
21542         * NEWS: Updated.
21543         * doc/libtool.texi (Thread Safety in libltdl): New node describing
21544         the  application the new MT API.
21545         * libltdl/ltdl.h: Prototypes.
21546         * libltdl/ltdl.c: Use these functions throughout the rest of
21547         the file to provide thread locking.
21548         (lt_dlmutex_register): New function to set callbacks for
21549         multi-threaded calls into libltdl.
21550         (lt_dl_mutex_lock): Type of a locking callback function.
21551         (lt_dl_mutex_lock): Type of an unlocking callback function.
21552         (lt_dl_mutex_seterror): Type of a callback function to save the
21553         last libltdl error message in thread local storage.
21554         (lt_dl_mutex_geterror): Type of a callback function to retrieve
21555         the last saved error message from thread local storage.
21556
21557 2001-02-20  Gary Vaughan  <gary@gnu.org>
21558
21559         * libltdl/ltdl.c (lt_dlcaller_register): dont set an unsigned
21560         type to a negative number.
21561         Reported by Guenter Millahn <Guenter.Millahn@Informatik.TU-Cottbus.DE>
21562
21563 2001-02-05  Gary V. Vaughan  <gary@gnu.org>
21564
21565         From Nick Hudson <skrll@netbsd.org>
21566         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): netbsd* is able to
21567         automatically load module deplibs without assistance from
21568         libltdl.
21569
21570 2001-02-02  Gary V. Vaughan  <gary@gnu.org>
21571
21572         * libltdl/ltdl.c (load_deplibs): Make sure the depcount is reset,
21573         even when deplibs are not used because of the patch below.
21574
21575         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): If we know that the host
21576         architecture automatically loads deplibs, then...
21577         * libltdl/ltdl.c (load_deplibs): ...don't manually load each one.
21578
21579 2001-01-31  Gary V. Vaughan  <gary@gnu.org>
21580
21581         * TODO:  Updated.
21582
21583         * libltdl/ltdl.c (load_deplibs): If loading a deplib fails,
21584         don't sweat -- it may be a lib that is already statically linked
21585         into the loading application.
21586
21587         * libltdl/ltdl.c: Clean up the shadowing of the global handles
21588         variable.
21589         (LT_DLRESIDENT_FLAGS): Add extra parens to satisfy -Wall.
21590         (load_deplibs):  Cast isspace() argument to an int to satisfy
21591         -Wall.
21592
21593 2001-01-30  Robert Boehne  <rboehne@ricardo-us.com>
21594
21595         * AUTHORS: added myself to the list of maintainers.
21596
21597 2001-01-28  Alexandre Oliva  <aoliva@redhat.com>
21598
21599         * libltdl/Makefile.am (CLEANFILES): Clean conditionally-built
21600         libraries.
21601
21602 2001-01-27  Alexandre Oliva  <aoliva@redhat.com>
21603
21604         * libtool.m4 (ld_shlibs) [aix4*]: Disable on unknown CPU types.
21605
21606 2001-01-07  Gary V. Vaughan  <gary@gnu.org>
21607
21608         * NEWS: Updated.
21609         * doc/libtool.texi (User defined module data): Updated.
21610         * libltdl/ltdl.c (lt_dlhandle_next): New function.
21611         * libltdl/ltdl.h (lt_dlhandle_next): Prototypes.
21612
21613 2001-01-05  Gary V. Vaughan  <gary@gnu.org>
21614
21615         * NEWS: Updated.
21616         * doc/libtool.texi (User defined module data):  Document it all.
21617         * ltdl.m4:  Check for memcpy, or else bcopy.
21618         * ltdl.c (lt_caller_data): New type.
21619         (lt_dl_handle_struct): Add an lt_caller_data field.
21620         (lt_dlcaller_register, lt_dlcaller_set_data,
21621         lt_dlcaller_get_data): New functions.
21622         (rpl_memcpy): A minimal fallback implementation.
21623         (rpl_realloc): A realloc implemented with lt_dlmalloc and
21624         lt_dlfree.
21625         (LT_DLMALLOC, LT_DLFREE, LT_DLREALLOC, LT_DLMEM_REASSIGN):
21626         New memory handling convenience macros.  Use them
21627         appropriately throughout the rest of this file.
21628         * ltdl.h (lt_dlcaller_register, lt_dlcaller_set_data,
21629         lt_dlcaller_get_data): Prototyped.
21630
21631 2001-01-04  Gary V. Vaughan  <gary@gnu.org>
21632
21633         * libltdl/ltdl.h:  formatting change.
21634
21635 2000-12-23  Gary V. Vaughan  <gary@gnu.org>
21636
21637         From vvv@vsu.ru:
21638         * doc/fdl.texi (GNU Free Documentation License): contained @bye
21639         command which prevented part of document to be generated (indices,
21640         etc).
21641         * doc/libtool.texi (Dlpreopening): the @deftypevar did not contain
21642         a space after a type.
21643
21644 2000-12-22  Akim Demaille  <akim@epita.fr>
21645
21646         * libtool.m4: s/[ \t]*$//
21647
21648 2000-12-22  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
21649
21650         * libtool.m4 (OSF/1):  Revert my patch of 2000-12-16.
21651
21652 2000-12-20  Gary V. Vaughan  <gary@gnu.org>
21653
21654         * libltdl/ltdl.c (lt_dlexit): Was checking for residency of the
21655         wrong module.
21656         Reported by Robert Boehne  <rboehne@ricardo-us.com>
21657
21658         * ltmain.in (dlprefiles): Now that `2000-12-15 Utz-Uwe Haus' patch
21659         below can detect preopened library deplibs correctly in libltdl,
21660         we need to ensure that libtool library deplibs are also preloaded
21661         into the binary for that phase to work.
21662
21663 2000-12-16  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
21664
21665         * libtool.m4 (OSF/1): Change the way to pass linker flags through
21666         compiler on a Tru64 machine.
21667
21668 2000-12-16  Gary V. Vaughan  <gary@gnu.org>
21669
21670         * libtool.m4 (sys_lib_search_path_spec): Use test instead of
21671         `['.
21672         (archive_cmds): And another one.
21673
21674         * libtool.m4 (darwin*): Fixed a pair of stupid typos I made in the
21675         last patch.
21676
21677         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  moved rogue settings from
21678         sequent, ncr and newos6 back into here from other macros.
21679
21680 2000-12-16   Wilfredo Sanchez  <wsanchez@apple.com>
21681
21682         * libtool.m4: (dyld/darwin*) Much improved port.
21683         * ltmain.in: (dyld/darwin*) Much improved port.
21684
21685 2000-12-16  Sascha Schumann <sascha@schumann.cx>
21686
21687         * libtool.m4: Accept darwin as an alias for rhapsody.
21688         * ltmain.in: ditto.
21689
21690         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use the HPUX 10.20
21691         methods to check for library dependencies on HPUX 11.
21692
21693 2000-12-16  Nick Hudson  <skrll@netbsd.org>
21694
21695         * libtool.m4 (netbsd*, deplibs_check_method): Enable ILD support
21696         for NetBSD a.out.
21697
21698 2000-12-15  Akim Demaille  <akim@epita.fr>
21699
21700         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Rename
21701         `ac_cv_sys_global_symbol_pipe' as `lt_cv_sys_global_symbol_pipe'.
21702         Similarly with `lt_cv_global_symbol_to_cdecl
21703         (_LT_AC_LTCONFIG_HACK): Similarly with `ac_cv_prog_cc_pic',
21704         `ac_cv_prog_cc_shlib', `ac_cv_prog_cc_wl', `ac_cv_prog_cc_static',
21705         `ac_cv_prog_cc_no_builtin', `ac_cv_prog_cc_can_build_shared',
21706         `ac_cv_prog_cc_static_works', `ac_cv_archive_cmds_need_lc'.
21707         (AC_PATH_TOOL_PREFIX): Similarly with `ac_cv_path_MAGIC_CMD'
21708         (AC_PROG_LD) <ac_cv_path_LD>: Likewise.
21709         (AC_PROG_LD_GNU) <ac_cv_prog_gnu_ld>: Likewise.
21710         (AC_PROG_NM) <ac_cv_path_NM>: Likewise.
21711
21712 2000-12-15  Utz-Uwe Haus  <haus@mail.math.uni-magdeburg.de>
21713
21714         * libltdl/ltdl.c (lt_dlopen): Changed "dl_dependency_libs" keyword
21715         to "dependency_libs".
21716
21717 2000-12-14  Tod Milam  <tmilam@traclabs.com>
21718
21719         * libltdl/ltdl.c (lt_dlexit): Reset the loaders value to zero when
21720         the last module has been unloaded.
21721
21722 2000-12-14  Michael Schmitz  <mschmitz@iname.com>
21723
21724         * libtool.m4: Port to *-sni-sysv4 (Reliant Unix)
21725         * README: added Reliant Unix to hte list of supported platforms
21726         * doc/PLATFORMS: added note on tests on Reliant Unix
21727
21728 2000-12-14  Masahiro Nobori  <nobori@ss.titech.ac.jp>
21729
21730         * README:  Updated.
21731         * NEWS: Updated.
21732         * libtool.m4:  New port to NEWS-OS Release 6.
21733
21734 2000-12-14  Nick Hudson  <skrll@netbsd.org>
21735
21736         * libtool.m4 (hardcode_libdir_flag_spec):  Remove linker
21737         specification for netbsd.
21738
21739 2000-12-14  Akim Demaille  <akim@epita.fr>
21740
21741         * libtool.m4:  Don't depend on Autoconf internals:
21742         s/ac_cv_prog_gcc/GCC/.
21743
21744 2000-12-14  Gary V. Vaughan  <gary@gnu.org>
21745
21746         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't empty
21747         out ac_cv_global_symbol_to_cdecl inside the loop, incase we
21748         need to go around again and try with underscore prefix.
21749         (_LT_AC_TRY_DLOPEN_SELF): On some hosts (cygwin for instance)
21750         self dlclosing unloads the main program and causes a SIGSEGV.  So
21751         don't do it for now.
21752
21753 2000-12-05  Gary V. Vaughan  <gary@gnu.org>
21754
21755         Oh My! Cygwin support has bitrotted while I was looking the other
21756         way.  This should fix it some:
21757         * libtool.m4 (extract_expsyms_cmds): There is a quoting problem
21758         with autoconf-2.13 that prevents [$]0 from expanding.  Use shell
21759         quotes instead to delay eval of $0.
21760         (impgen.c) The '# ' sequence stripped by sed works again.
21761
21762 2000-12-01  Gary V. Vaughan  <gary@gnu.org>
21763
21764         * doc/libtool.texi (Libltdl interface):  Add documentation.
21765         * libltdl/ltdl.h (lt_dlmakeresident, lt_dlisresident):  Add
21766         prototypes.
21767         (LT_DLERROR_CLOSE_RESIDENT_MODULE): New error status.
21768         * libltdl/ltdl.c (lt_dlmakeresident, lt_dlisresident):  Allow
21769         making and testing of resident module status, which prevents a
21770         module from being lt_dlclosed.
21771         (lt_dlopen):  If lt_dlopen()ing self, make the module resident.
21772         (lt_dlclose):  Return an error if the module is resident.
21773
21774         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Move the tests for dlopen
21775         from here...
21776         (AC_LIBTOOL_DLOPEN_SELF): ...to here.
21777         (_LT_AC_CHECK_DLFCN):  Factor out repeated code for dlfcn.h
21778         (_LT_AC_TRY_DLOPEN_SELF): Factor out repeated code for
21779         checking dlopen status.
21780         * ltdl.m4 (AC_LIB_LTDL):  Use _LT_AC_CHECK_DLFCN.
21781         dlopen compile time checking.  Use _LT_AC_CHECK_DLFCN.
21782         (AC_LTDL_DLSYM_USCORE):  Use _LT_AC_TRY_DLOPEN_SELF.
21783
21784 2000-11-29  Gary V. Vaughan  <gary@gnu.org>
21785
21786         * libltdl/ltdl.h (lt_dlhandle): Rename the wrapped structure
21787         to prevent nameclash when used from C++.
21788         * libltdl/ltdl.c: Fixed all references.
21789
21790 2000-11-25  Gary V. Vaughan  <gary@gnu.org>
21791
21792         * libltdl/ltdl.c (lt_dlopen):  Change the default search order
21793         for modules.  If the named module has no directory component,
21794         always start the search with the user_search_path directories,
21795         and then fall back on the current directory only if that fails.
21796
21797 2000-11-20  Gary V. Vaughan  <gary@gnu.org>
21798
21799         * libltdl/Makefile.am (libltdl_la_LDFLAGS): increment the version
21800         number to reflect the breakage of binary compatibility.
21801         * doc/libtool.texi (Libltdl interface):  Document
21802         LT_NON_POSIX_NAMESPACE.
21803         * libltdl/ltdl.h (LT_POSIX_NAMESPACE):  Deleted.  The default is
21804         now to use this namespace, so the cpp macro is no longer
21805         necessary.
21806
21807 2000-11-20  Morten Eriksen  <mortene@sim.no>
21808
21809         * ltdl.m4 (AC_LIB_LTDL, AC_LTDL_SYMBOL_USCORE): Break a circular
21810         dependency between AC_LTDL_SYMBOL_USCORE and AC_LTDL_DLSYM_USCORE.
21811
21812 2000-11-20  Paul Berrevoets  <paul@swi.com>
21813
21814         * ltmain.in: Some versions of expr respond with "0" if a
21815         regexp fails to match.
21816
21817 2000-11-19  Paul Berrevoets  <paul@swi.com>
21818
21819         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote the $ in $#, $2 and
21820         $3 in variable 'archive_expsym_cmds' for cygwin.
21821
21822 2000-11-19  Gary V. Vaughan  <gary@gnu.org>
21823
21824         * ltdl.c: Relegate non-POSIX-compliant symbols (e.g. those
21825         ending in ``_t'') to deprecated #define compatibility macros.
21826         Also ease up on the namespace pollution, so that only ``lt_''
21827         and ``LT_'' prefixes are taken from the global namespace.
21828         * ltdl.h: ditto.
21829
21830 2000-11-17  Gary V. Vaughan  <gary@gnu.org>
21831
21832         * ltdl.c: Reformatted.
21833         * ltdl.h: ditto.
21834
21835 2000-11-11  Gary V. Vaughan  <gary@gnu.org>
21836
21837         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Use $ac_ext for conftest
21838         sourcefile.
21839         * libtool.m4: Use $ac_ext and $ac_objext respectively for conftest
21840         sources and objects.
21841         Reported by Carlo Wood <carlo@alinoe.com>
21842
21843         * doc/fdl.texi: New file.  The license for distributing the
21844         libtool manual.
21845         * doc/libtool.texi: Reference the new license.
21846
21847 2000-10-31  Morten Eriksen  <mortene@sim.no>
21848
21849         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote argument to avoid
21850         error output from cygpath when $srcdir is empty.
21851
21852 2000-10-31  Gary V. Vaughan  <gary@gnu.org>
21853
21854         * bootstrap:  rm Makefiles to prevent infinite loop during
21855         configure when libtool.m4 is newer than Makefile.
21856
21857 2000-10-31  Akim Demaille  <akim@epita.fr>
21858
21859         * libtool.m4: Adjust the copyright notice.
21860         Quote all the macro names when defined.
21861         Some minor formatting changes.
21862         (AM_PROG_LIBTOOL, AM_ENABLE_SHARED, AM_ENABLE_STATIC)
21863         (AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_PROG_LD, AM_PROG_NM):
21864         Don't use indir when useless.  Don't add trailing `dnl' either.
21865
21866 2000-10-30  Gary V. Vaughan  <gary@gnu.org>
21867
21868         * doc/libtool.texi:  Corrected another attack of CRLF line
21869         endings.
21870
21871 2000-10-30  Ossama Othman  <ossama@debian.org>
21872
21873         * libtool.m4 (archive_expsym_cmds): Fix typo where line was broken
21874         in the middle of an expression.
21875
21876 2000-10-30  Aneesh Kumar K.V <kvaneesh@hotmail.com>
21877
21878         * libtool.m4 (archive_expsym_cmds):  Support for -export-symbol
21879         option on Tru64.
21880         (hardcode_libdir_flag_spec): Fixed cxx throwing error while using
21881         libtool.  Done by passing -rpath directlty to the compiler.
21882
21883 2000-10-27  Robert Boehne  <rboehne@ricardo-us.com>
21884
21885         * docs/libtool.texi: Added pointers to documentation
21886         of Hewlett-Packard, Compaq Tru64 and IBM AIX systems.
21887
21888 2000-10-02  Gary V. Vaughan  <gary@gnu.org>
21889
21890         From Bruce Korb <bkorb@cruzio.com>
21891         * ltmain.in (execute_dlfiles): Reduce obfuscation.
21892
21893 2000-09-30  Alexandre Oliva  <aoliva@redhat.com>
21894
21895         * libtool.m4 [netbsd*] (deplibs_check_method, file_magic_cmd,
21896         file_magic_test_file): Removed inappropriate duplicate
21897         definitions; these variables are set in AC_DEPLIBS_CHECK_METHOD.
21898
21899         * libtool.m4 (lt_cv_file_magic_cmd): Don't use '${MAGIC_CMD}' or
21900         '${OBJDUMP}'; Solaris' /bin/sh loses with `}' in cache files.
21901         (ac_cv_path_MAGIC_CMD): Renamed to lt_cv_path_MAGIC_CMD.
21902
21903 2000-09-28  Gary V. Vaughan  <gary@gnu.org>
21904
21905         * libtool.m4 (MAGIC_CMD): Don't use MAGIC, since BSD versions of
21906         the file command use this environment variable to hold the
21907         location of the magic database.
21908         Reported by Marc Espie <Marc.Espie@liafa.jussieu.fr>
21909
21910 2000-09-19  Gary V. Vaughan  <gary@gnu.org>
21911
21912         * doc/PLATFORMS: Updated.
21913         * demo/configure.in:  Revert to the `libtool --features' test.
21914         * Makefile.am (libtool):  This needs to rerun configure now that
21915         libtool is generated entirely by AC_PROG_LIBTOOL again.
21916         (ltconfig): Removed.
21917         (ltmain.sh):  Is now regenerated when ltmain.in changes.
21918         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Now does all of the work for
21919         generating libtool immediately in configure.in, rather than
21920         deferring part of the creation until config.status runs.
21921
21922 2000-09-17  Gary V. Vaughan  <gary@gnu.org>
21923
21924         * bootstrap:  Backed out yesterdays patch which is no longer
21925         necessary.
21926         * Makefile.am (libtool): Reworked rule for regeneration of libtool,
21927         now that it is built entirely withing config.status.
21928         (libtoolize): Tidied for orthogonality with the other generation
21929         rules.
21930         (ltconfig):  This is now generated by AC_PROG_LIBTOOL, called from
21931         make by running config.status --recheck.
21932         (ltmain.sh): Moved primary generation of this file into here...
21933         * configure.in (AC_OUTPUT): ...instead of here.
21934         * libtool.m4 (AC_OUTPUT_COMMANDS):  Write the config to ltconfig
21935         where it can be reused, rather than directly to libtool.
21936         * demo/configure.in:  libtool is no longer present immediately
21937         after AC_LIBTOOL_M4 has completed, so the tests now grep through
21938         ltconfig instead -- which *will* be present.
21939
21940 2000-09-16  Gary V. Vaughan  <gary@gnu.org>
21941
21942         * TODO: Removed the item describing the change below, and added a
21943         similar item to remind us to change the ltdl.m4 macros again when
21944         _LT_AC_LTCONFIG_HACK is divided into proper macros.
21945         * ltdl.m4 (AC_LTDL_SNARF_CONFIG):  Removed.  No longet required
21946         now that ltconfig has migrated to libtool.m4.
21947         (AC_LTDL_SHLIBEXT): Require _LT_AC_LTCONFIG_HACK.
21948         (AC_LTDL_SHLIBPATH): ditto.
21949         (AC_LTDL_SYSSEARCHPATH): ditto.
21950
21951         * ltdl.m4 (AC_LTDL_DLPREOPEN): Require the libtool.m4 symbol_pipe
21952         macro.
21953         (AC_LTDL_SYMBOL_USCORE): ditto.
21954         (AC_LTDL_GLOBAL_SYMBOL_PIPE): Removed, since it is a duplicate
21955         of...
21956         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): ...this new
21957         macro, extracted from _LT_AC_LTCONFIG_HACK.
21958
21959         * ltdl.m4 (changequote): An audit of changequote and m4
21960         quote usage -- all changequotes have been removed, and some
21961         latent unquoted `[' and `]' bugs have been fixed.
21962
21963         * configure.in (AC_OUTPUT): ltmain.sh must be generated in the
21964         source tree since this is where it would be found in a freshly
21965         unrolled tarball.
21966
21967         * configure.in: Replace `dnl' comments with `#' comments for
21968         more conformity with cvs autoconf.
21969         Removed emacs hack-local-variables, since there is now a
21970         proper Autoconf major mode.
21971         Removed a couple of changequote()s.
21972
21973         * bootstrap (ltconfig): When bootstrapping libtool with a
21974         stock automake (i.e. without the README patch applied),
21975         references to ltconfig are manually removed from the generated
21976         Makefile.in files.
21977
21978 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
21979
21980         * doc/libtool.texi: Removes references to ltconfig, and a small
21981         amount of tidying up to compensate.
21982
21983 2000-09-15  Nick Hudson  <skrll@netbsd.org>
21984
21985         * libtool.m4 (netbsd): Improved support.
21986
21987 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
21988
21989         * ltmain.in (version_type): Use "-iface" as the windows
21990         versioning scheme, where iface is the number of the oldest
21991         interface supported.
21992
21993 2000-09-14  Gary V. Vaughan  <gary@gnu.org>
21994
21995         From Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
21996         * libtool.m4 (pw32): Initial support for pw32, assuming that
21997         libtool's behaviour in this environment is identical to under
21998         cygwin.
21999         * ltmain.in (pw32): ditto.
22000         * NEWS: Updated.
22001
22002         * libtool.m4 (changequote): An audit of changequote and m4
22003         quote usage -- all changequotes (except a few with non-nesting
22004         square brackets) have been removed.
22005
22006         * Makefile.am (EXTRA_DIST):  The bootstrap script should be
22007         distributed with libtool.
22008
22009 2000-09-13  Gary V. Vaughan  <gary@gnu.org>
22010
22011         libtool.m4 (_LT_AC_LTCONFIG_HACK): Oh man!  Third time lucky.
22012         I just discovered that '&' needs to be escaped inside
22013         AC_TRY_EVAL.
22014
22015 2000-09-12  Michael Matz  <matz@ifh.de>
22016
22017         * ltmain.in:  Be careful about filenames with multiple `.'s in
22018         them when calculating file extensions.
22019         Reported by Joel Reed <jreed@support.ddiworld.com>
22020
22021 2000-09-12  Gary V. Vaughan  <gary@gnu.org>
22022
22023         libtool.m4 (AC_PROG_LIBTOOL):  Removed, as it was triggering a
22024         bug in Autoconf-2.13 AC_REQUIRE implementation which inserted
22025         some of the expanded tests too early in the generaated configure.
22026         (_AC_PROG_LIBTOOL): renamed to AC_PROG_LIBTOOL, and defines
22027         itself to an empty expansion to prevent multiple expansions.
22028         configure.in (AC_LIBTOOL_SETUP): Replaced by a call to
22029         AC_PROG_LIBTOOL now that the AC_REQUIRE bug has been worked
22030         around.
22031
22032 2000-09-09  Gary V. Vaughan  <gary@gnu.org>
22033
22034         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to escape the
22035         redirections inside AC_TRY_EVAL in the need_lc tests. Doh!
22036
22037         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to redirect the
22038         output of grep to /dev/null in the need_lc tests.
22039
22040         configure.in (AC_PROG_LIBTOOL):  Using this in libtools own
22041         configure.in interacts badly with the AC_PROVIDE calls and
22042         results in several tests being inserted into configure too
22043         early.  Use AC_LIBTOOL_SETUP instead.
22044
22045 2000-09-08  Gary V. Vaughan  <gary@gnu.org>
22046
22047         libtool.m4 (_LT_AC_LTCONFIG_HACK): The ltconfig.in code I
22048         ported from ltconfig.in was incomplete -- this is a backport
22049         of the missing code taken from the multi-language branch.
22050
22051 2000-09-07  Pavel Roskin  <proskin@gnu.org>
22052
22053         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Fixed incorrect use of
22054         changequote
22055
22056 2000-09-07  Gary V. Vaughan  <gary@gnu.org>
22057
22058         * NEWS:  Updated.
22059         * TODO:  Add a reminder to get rid of ltconfig in mlb.
22060         * README: Until things even out, I have added a note and a
22061         patch to make the installed automake cooperate with the new
22062         ltconfig free libtool.
22063
22064         * libtool.m4 (_LT_AC_LTCONFIG_HACK): with_gcc is only useful in
22065         ltmain.sh as it has not yet been set in libtool.m4.  Use
22066         $ac_cv_prog_gcc instead.
22067
22068         * doc/PLATFORMS: Updated.
22069
22070         * configure.in (AC_PROG_AWK): Removed -- no longer required by
22071         the build process.
22072         * lineno: ditto.
22073
22074         * libtoolize.in (files): Don't try to install ltconfig -- it
22075         doesn't exist!!
22076         * bootstrap: Fake an ltconfig incase the installed automake
22077         calls an installed libtoolize (as part of its --add-missing
22078         process) which thinks ltconfig should be there.
22079
22080         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Deleted a vital `;;'
22081         terminator from a case statement by mistake.
22082
22083         * Makefile.am (ltmain.sh):  Make this depend on TSDEPS again
22084         so that the Changelog timestamp is used for ltmain.sh at `make
22085         dist' time.
22086
22087 2000-09-06  Gary V. Vaughan  <gary@gnu.org>
22088
22089         libtool.m4 now contains a version of the code that used to run
22090         from ltconfig, so that ltmain.sh and then libtool are
22091         generated at configure time.
22092
22093         * Makefile.am:  Don't generate ltmain.sh or ltconfig anymore.
22094         * bootstrap: ltconfig is no more!
22095         * configure.in: Call AC_PROG_LIBTOOL directly.
22096         (AC_OUTPUT): Generate tmain.sh.
22097         * libtool.m4: Don't build an argument list for ltconfig.
22098         (_LT_AC_LTCONFIG_HACK):  Refactoring of the former contents of
22099         ltconfig.in to take advantage of the m4 macros from autoconf.
22100         * ltmain.in: Don't do a version check against ltconfig.
22101         * tests/assign.test: Remove reference to ltconfig.
22102         * tests/hardcode.test: ditto.
22103         * tests/sh.test: ditto.
22104
22105 2000-09-05  Alexandre Oliva  <aoliva@redhat.com>
22106
22107         * depdemo/main.c: Support -alt.
22108         * tests/build-relink2.test: Try it.
22109
22110         * ltconfig.in: Removed all references to what used to be
22111         hardcode_into_libs=all.  2000-09-03's patch was wrong.
22112         * ltmain.in: Likewise.
22113         * tests/build-relink.test, tests/build-relink2.test: Adjust.
22114         * mdemo/Makefile.am (lib_LTLIBRARIES): Move libsub.la before
22115         libfoo2.la, so that they're installed in the right order.
22116
22117 2000-09-04  Alexandre Oliva  <aoliva@redhat.com>
22118
22119         * tests/dryrun.test: Build libsub.la along with the object files,
22120         since it is needed by libfoo2.la.
22121
22122         * mdemo/Makefile.am: Mark only libfoo2 as -no-undefined.
22123         Explicitly link it with libsub.la.
22124
22125         * ltconfig.in (need_lc): Preserve allow_undefined_flag.
22126
22127         * tests/*.test (CONFIG_SITE): Ultrix's /bin/sh fails on
22128         `. /dev/null'.  Set CONFIG_SITE to /dev/null/config/site, to make
22129         sure we pick a non-existent file.
22130
22131         * Makefile.am (libtool, clibtool): Pass CONFIG_SHELL along with
22132         ECHO down to ltconfig.
22133
22134         * ltconfig.in (hardcode_libdir_flag_spec, export_dynamic_flag_spec):
22135         Use ${wl}, not ${wlarc}.
22136
22137         * ltmain.in (compile, need_lock): Don't create nor remove lock
22138         files in dry runs.
22139
22140         * libltdl/ltdl.c (load_deplibs): Don't append shlib_ext; use
22141         lt_dlopenext() instead.
22142
22143         * ltmain.in (link -static): Don't add $link_static_flag; only
22144         -all-static should do that.
22145         * mdemo/configure.in: Revert part of the previous delta.
22146
22147         * mdemo/configure.in: Don't use -static on AIX4.1.
22148         * mdemo/Makefile.am: Likewise.
22149
22150 2000-09-03  Alexandre Oliva  <aoliva@redhat.com>
22151
22152         * ltconfig.in: Get rid of hardcode_into_libs=all; use
22153         hardcode_into_libs=yes && shlibpath_overrides_runpath!=yes
22154         instead.
22155         [FreeBSD 3.[01]] (shlibpath_overrides_runpath): Set to no.
22156         * ltmain.in: Likewise.
22157         * tests/build-relink.test, tests/build-relink2.test: Adjust.
22158
22159         * libtool.m4: Fix typo I introduced in yesterday's patch.
22160
22161         * libltdl/ltdl.c (lt_dlopen): Set dlname from library_names if
22162         dlname is empty.
22163
22164         * ltdl.m4 (HAVE_LIBDL): Look for dlopen in -lsvld.
22165         * ltconfig.in: Likewise.
22166
22167         * tests/mdemo-exec.test: Modify failure message.
22168
22169         * ltmain.in (newdlprefiles): Use dlname if it's available and
22170         old_library isn't; use linklib only if dlname is not available.
22171
22172         * ltconfig.in (enable_dlopen): Set to no when lt_cv_dlopen is no.
22173
22174         * libtool.m4: Don't quote CONFIG_SHELL nor ORIGINAL_CONFIG_SHELL.
22175         Quote $@ properly so that the shell expands it, not m4.
22176
22177         * libtool.m4: Don't quote SHELL when `re-exec'ing, so that SHELL
22178         can be `/path/to/shell -x'.
22179
22180         * tests/quote.test: Move the match test out of case statements, to
22181         work around bug in /bin/sh of several OSs.
22182
22183         * ltmain.in (variables_saved_for_relink): Attempt to unset them
22184         instead of setting them to an empty string.
22185
22186 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
22187
22188         * ltconfig.in [with_gnu_ld] (archive_cmds, archive_expsym_cmds)
22189         <solaris*, sysv5*, beos*>: Use compiler_flags instead of linker
22190         flags.
22191         Reported by Alex Hornby <alex@anvil.co.uk>
22192
22193 2000-09-02  Makoto Ishisone  <ishisone@sra.co.jp>
22194
22195         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Fix typo,
22196         add support for compact format library.
22197
22198 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
22199
22200         * ltdl.m4: Oops, I had forgotten to commit this part of Syd Polk's
22201         patch from 2000-06-17.
22202
22203 2000-09-02  Tom Kacvinsky  <tjk@ams.org>, Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
22204
22205         * libtool.m4: Ignore Tru64's nm's complaint.
22206
22207 2000-09-02  Pavel Roskin <proski@gnu.org>
22208
22209         * ltconfig.in: only load $cache_file if it's a regular file
22210
22211 2000-09-02  Assar Westerlund  <assar@sics.se>
22212
22213         * ltconfig.in: Add back ranlib calls for static libraries if there
22214         is a ranlib.
22215
22216 2000-08-31  Gary V. Vaughan  <gary@gnu.org>
22217
22218         Move the echo detection code to a macro in libtool.m4.  The code
22219         at the top ofltconfig.in is ugly, but will go away when the rest
22220         of ltconfig is migrated.
22221
22222         * Makefile.am (libtool):  Pass the value of $ECHO to ltconfig as
22223         an environment variable.
22224         * libtool.m4 (_LT_AC_PROG_ECHO_BACKSLASH): Quote the ECHO value
22225         correctly so that it inserts the correct code into configure.in
22226         suitably quoted for M4 expansion.  This code needs to be near
22227         the top of configure.in as it calls itself recursively, so I
22228         am using AC_DIVERSION_NOTICE (or simply NOTICE on CVS
22229         Autoconf).  The value of ECHO is also substitued into the
22230         Makefile to be used when Make calls ltconfig to generate
22231         libtool, so another layer of quotation is required for the
22232         Makefile.
22233         (AC_LIBTOOL_SETUP):  Use it.
22234         * ltconfig.in: Accept a value for ECHO from the environment, and
22235         carefully substitue for $0 if it is present in the ECHO value.
22236         Because ECHO was quoted for Make, when ltconfig is called by
22237         configure, it is overquoted, and one layer of quotes must be
22238         stripped.
22239
22240 2000-08-27  Gary V. Vaughan  <gary@gnu.org>
22241
22242         * ltconfig.in (with_gcc):  Make the value of this option
22243         available to the generated libtool script.
22244         * ltmain.in (compile_command, finalize_command):  The native C
22245         and C++ compilers on IRIX require the -LANG:std in order to to
22246         compile correctly.   The same options should _not_ be passed
22247         through to gcc on IRIX, or at all on other architectures for
22248         backwards compatibility (among others).
22249         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
22250         Reported by Albert Chin-A-Young <china@thewrittenword.com>
22251
22252 2000-08-26  Gary V. Vaughan  <gary@gnu.org>
22253
22254         * ltconfig.in (old_reload_flag): typo.
22255
22256 2000-08-01  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22257
22258         * ltmain.in (shtool): Use echo|grep instead of expr, as in the
22259         original patch.
22260
22261 2000-08-01  Alexandre Oliva  <aoliva@redhat.com>
22262
22263         * ltconfig.in (need_lc): Fix test message.
22264
22265 2000-07-24  Mocha  <netbsd_alpha@yahoo.com>
22266
22267         * ltconfig.in (NetBSD, deplibs_check_method): Use file_magic.
22268         (NetBSD, file_magic_cmd, file_magic_test_file): Set.
22269
22270 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, David Kaelbling  <drk@orchietta.hudson.sgi.com>
22271
22272         * ltmain.in (irix, major): Prepend a `.'.
22273         * ltconfig.in (irix, soname_spec, library_names_spec): Adjust.
22274
22275 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, Ralf S. Engelschall  <rse@engelschall.com>
22276
22277         * ltmain.in: Support GNU shtool's install.
22278
22279 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22280
22281         * ltconfig.in (linkopts): Don't set for test.
22282
22283 2000-07-24  Nick Hudson <skrll@netbsd.org>
22284
22285         * ltconfig.in (linkopts): Replace with linker_flags.
22286
22287         * ltmain.in (ILD): Fix addition of deplibs in relink case.
22288
22289 2000-07-18  H.J. Lu  <hjl@gnu.org>
22290
22291         * ltconfig.in: Check if -lc is necessary for building shared
22292         library. Set build_libtool_need_lc to indicate it.
22293         * ltmain.in: Add -lc when building shared library only if
22294         necessary.
22295
22296 2000-07-10  Mo DeJong  <mdejong@redhat.com>
22297
22298         * libtool.m4 (AC_PROG_NM): Fix macro so that it
22299         finds a cross NM on the PATH.
22300
22301 2000-07-10  Ken Block <block@zk3.dec.com>
22302
22303         * libltdl/ltdl.h: Also check for __cplusplus, __STDC__ is not
22304         by Compaq C++ compiler
22305
22306 2000-07-10  Alexandre Oliva  <aoliva@lsd.ic.unicamp.br>
22307
22308         * ltconfig.in (wlarc, netbsd, aout): Set to empty.
22309         (hardcode_dynamic_flag_spec, export_dynamic_flag_spec): Use it.
22310
22311         * ltconfig.in (dynamic_linker, linux, powerpc): Do not disable
22312         shared libraries just because of MkLinux.
22313
22314         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Do not depend
22315         on $version_type; check for ELF support as in other BSDs.
22316
22317 2000-06-17  Syd Polk  <spolk@redhat.com>
22318
22319         * libtool.m4 (AC_LIBTOOL_SETUP): Do not generate a libtool based
22320         on target; use host instead.
22321
22322 2000-05-30  Gary V. Vaughan  <gary@gnu.org>
22323
22324         * ltconfig.in (ORIGINAL_CONFIG_SHELL): Prevent lossage when
22325         the echo probing code falls into this branch without setting
22326         this variable.
22327
22328         * ltconfig.in (netbsd*): archive_cmds and archive_expsym_cmds
22329         were reversed with respect to definition of __ELF__.
22330         From Keisuke Inoue <keisuke@csl.sony.co.jp>
22331
22332 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
22333
22334         * libtool.m4 (netbsd*): Use -L option to file_magic_cmd as for
22335         freebsd (below).
22336         * libtool.m4 (netbsd ELF): support file_magic.
22337         From Dan Winship <danw@helixcode.com>.
22338
22339 2000-05-29  Steven M. Schultz <sms@moe.2bsd.com>
22340
22341         * libtool.m4 (bsdi4*): Add -L option to bsdi4's file_magic_cmd
22342         command.  Under BSD/OS 4.1 several libraries are now symlinks
22343         rather than regular files.  Adding -L tells the file program
22344         to follow the symlink.
22345
22346 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
22347
22348         * libtool.m4 (i*86-*-freebsd*): Forgot to changequote(,).
22349
22350         * NEWS: Updated.
22351         * libtool.m4 (i*86-*-freebsd*): Support a.out shared libs.
22352         From <suzukis@file.phys.tohoku.ac.jp>
22353
22354 2000-05-29  Fred Fish  <fnf@be.com>
22355
22356         Support AR=mwld AR_FLAGS='-xml -o' for PPC Beos.
22357         * ltconfig (old_AR_FLAGS): Add.
22358         (old_archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
22359         (archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
22360         (AR_FLAGS): Default to "cru" if not set.
22361
22362 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
22363
22364         * ltconfig.in (echo): The following code actually prints the
22365         double quotes -- so I removed them:
22366             echo='printf "%s\n"' /bin/ksh -c '$echo \\t'
22367         From Tuukka Toivonen <tutoivon@mail.student.oulu.fi>
22368
22369         * NEWS: Updated.
22370
22371 2000-05-29  Bernhard Rosenkraenzer <bero@redhat.de>
22372
22373         * libtool.m4: adding ia64 as supported linux platform
22374
22375 2000-05-29  Michael Matz  <matz@ifh.de>
22376
22377         * ltmain.in: fix quoting for $var_value.
22378
22379         * ltconfig.in: check for dlfcn.h: include return value
22380         to make -Wall in CFLAGS work.
22381
22382 2000-05-27  Gary V. Vaughan  <gary@gnu.org>
22383
22384         * README-alpha: note new location of config.(guess|sub).
22385
22386 2000-05-27  Chad Cunningham  <ccunning@math.ohio-state.edu>
22387
22388         * ltconfig.in (rhapsody*): New Port.
22389         * ltmain.in (rhapsody*): ditto.
22390
22391 2000-05-27  Chris Lattner  <sabre@skylab.org>
22392
22393         * ltconfig.in (*-sequent-sysv4): New Port.
22394
22395 2000-05-17  Gary V. Vaughan  <gary@gnu.org>
22396
22397         * ltmain.in: cygwin-1.1.0 and higher no longer grok backslash path
22398         separators.
22399
22400 2000-05-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22401
22402         * libtool.m4 (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE):
22403         Pick LIBLTLD from top_builddir and INCLTDL from top_srcdir.
22404         * mdemo/configure.in: Remove comments on
22405         AC_LIBLTLD_CONVENIENCE.
22406
22407         * libtool.m4 (_AC_PROG_LIBTOOL): Renamed from...
22408         (AC_PROG_LIBTOOL): Just AC_REQUIRE(_AC_PROG_LIBTOOL), to avoid
22409         effects of multiple runs.
22410
22411 2000-05-11  Thomas Tanner  <tanner@ffii.org>
22412
22413         * NEWS: update
22414         * doc/libtool.texi (libltdl): rename lt_(find|next|add|remove)_dlloader
22415           to lt_dlloader_*
22416         * libltdl/ltdl.c: ditto
22417         * libltdl/ltdl.h: ditto, add declaration of lt_dlloader_(find|remove)
22418
22419 2000-05-06  Pavel Roskin  <pavel_roskin@geocities.com>
22420
22421         * libltdl/ltdl.c: Typo.
22422
22423         * libtool.m4 (AC_LIBTOOL_SETUP): CVS autoconf no longer sets
22424         target to "NONE", but to an empty string.
22425
22426 2000-05-05  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
22427
22428         * ltdl.c: support lt_dlopen(0) for win32
22429
22430 2000-05-03  Thomas Tanner  <tanner@ffii.org>
22431
22432         * doc/libtool.texi (libltdl): fix typos,
22433           INCLTDL starts with top_srcdir, replace NULL with @code{NULL}
22434
22435         * ltmain.in (ILD): search in newlib_search_path, too
22436
22437         * ltmain.in (ILD): fix bugs in conv pass, expand convenience
22438           libs to deplibs and link them later on
22439
22440         * ltmain.in (ILD): don't allow convenience libs to be
22441            -dlopen/preopen'ed
22442
22443         * ltmain.in (ILD): it's not required to link all deplibs
22444           in fast-install mode
22445
22446         * ltmain.in (ILD): if hardcode_into_libs=all, only relink
22447           a library if it is linked against uninstalled libtool libraries,
22448           rename link_against_libtool_libs to uninst_deplibs
22449
22450         * ltmain.in (ILD): tidy up, add some comments
22451
22452 2000-05-03  John Wehle  (john@feith.com)
22453
22454         * libtool.m4 (hpux10.20*): use file_magic for
22455         inter-library dependency tracking.
22456
22457 2000-05-02  Gary V. Vaughan  <gary@gnu.org>
22458
22459         * AUTHORS:  Update my email address.
22460         * commit: ditto.
22461
22462 2000-04-11  Thomas Tanner  <tanner@ffii.org>
22463
22464         * NEWS: update
22465         * libtool.m4: add AC_LIBTOOL_PICMODE
22466         * ltconfig.in: move pic_mode checks to ltmain.in
22467         * ltmain.in: add -prefer-pic and -prefer-non-pic
22468
22469 2000-03-29  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22470
22471         * ltmain.in (tmpdir): Do not accept an existing directory, and
22472         force its mode to 700, for security reasons.
22473         Reported by Joseph S. Myers <jsm28@cam.ac.uk>
22474
22475 2000-03-27  Thomas Tanner  <tanner@ffii.org>
22476
22477         * NEWS: reformatting
22478
22479         * ltmain.in (ILD): add extra convenience library scanning pass
22480
22481         * ltmain.in (ILD): accept -R flags for libraries, too
22482
22483         * ltmain.in (ILD): correclty merge the dlpreopened libraries
22484           with deplibs
22485
22486         * ltmain.in (install mode): remove directories from filenames
22487           before relinking (reported by Elrond <Elrond@Wunder-Nett.org>)
22488
22489         * doc/libtool.texi (libltdl): rename Library -> Lesser,
22490           clarify exception clause
22491         * libltdl/ltdl.c, libltdl.h (License): ditto
22492
22493 2000-03-21  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22494
22495         * ltconfig.in (variables_saved_for_relink): Set to `PATH
22496         $shlibpath_var $runpath_var'.  If with_gcc, add gcc-related
22497         environment variables.  Add it to the configuration section.
22498         * ltmain.in (relink_command): Expand those variables.
22499
22500 2000-03-14  Christopher A. Knight  <chriskn@crt.com>
22501
22502         * ltconfig.in: added main() definition in compile
22503         check for header `dlfcn.h' to fix link errors
22504         when built with Sun Workshop Pro CC 4.2 (and perhaps
22505         others).
22506
22507 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
22508
22509         * libltdl/ltdl.c (lt_find_dlhandle): Deleted.  This was B.S.
22510         far cleaner to use lt_dlforeach and lt_dlgetinfo.
22511         * libltdl/ltdl.h:  Prototype deleted.
22512         * doc/libtool.texi: Documentation deleted.
22513         * NEWS: annoncement deleted.
22514
22515 2000-02-23  Thomas Tanner  <tanner@ffii.org>
22516
22517         * ltmain.in: remove duplicates from deplibs, handle
22518           interdependent libraries (e.g. -la -lb -la),
22519           this requires adding deplibs in reverse order
22520
22521         * ltmain.in: link dlpreopened libraries before other libraries
22522           (reported by Pavel Roskin)
22523         * mdemo/Makefile.am: build and link libsub.la
22524         * mdemo/sub.c: new file used by both dlopened modules
22525         * mdemo/foo*: use sub() defined in libsub
22526         * tests/dryrun.test: build libsub.la
22527
22528         * mdemo/Makefile.am: always link mdemo.static with -static
22529         * mdemo/configure.in: ditto
22530
22531         * ltmain.in: fix dlopen/dlpreopening of objects
22532
22533         * ltmain.in (ILD): fix misplaced `continue' in -R* argument handler
22534
22535         * ltmain.in: merge duplicated code of clean and uninstall mode
22536
22537         * libtool.m4: recognize powerpc*linux* (reported by
22538           Dirk A. Mueller <dmuell@gmx.net>)
22539
22540 2000-02-23  Gary V. Vaughan  <gary@gnu.org>
22541
22542         * ltconfig.in (old_MAGIC, old_STRIP, old_reload_flag,
22543         old_deplibs_check_method, old_file_magic_cmd):  New variabes.
22544         Treat these as old_CC etc.
22545         (STRIP, MAGIC): Create and set these variables in the generated
22546         libtool script.
22547         Reported by Pavel Roskin <pavel_rosin@geocities.com>
22548
22549         * configure.in: Due to a bug in autoconf-2.13 implementation of
22550         AC_SUBST, `AC_SUBST(FILE)' can never work.  Use MAGIC as the
22551         holder of the command to run in file_magic_cmd instead.
22552         * ltconfig.in: s/FILE/MAGIC/g.
22553         * libtool.m4 (AC_PROG_LIBTOOL): set MAGIC in the environment when
22554         calling ltconfig.
22555         (AC_PATH_MAGIC):  renamed from AC_PATH_FILE.
22556         (AC_PATH_TOOL_PREFIX):  s/FILE/MAGIC/g.  Also set file_magic_cmd
22557         to '${MAGIC}' so that make can grok it.
22558         * Makefile.am (libtool):
22559         (clibtool): ditto.
22560
22561 2000-02-21  Gary V. Vaughan  <gary@gnu.org>
22562
22563         * libltdl/ltdl.c (lt_find_dlhandle): New function.
22564         (tryall_dlopen): Use it.
22565         * libltdl/ltdl.h:  Prototype it.
22566         * doc/libtool.texi: Document it.
22567         * NEWS: updated.
22568
22569         * libltdl/ltdl.c (lt_dlinit): removed unused variable, `loader'.
22570
22571         * libltdl/ltdl.c (lt_remove_dlloader): typo, s/=/==/g.
22572
22573 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
22574
22575         * libltdl/ltdl.h (lt_dlloader_data_t):  New type for loader
22576         instance data.
22577         (lt_user_dlloader): New lt_dlloader_data_t field.
22578         (lt_module_open_t): Add lt_dlloader_data_t parameter.
22579         (lt_module_close_t): Add lt_dlloader_data_t parameter.
22580         (lt_find_sym_t): Add lt_dlloader_data_t parameter.
22581         (lt_dlloader_exit_t): Add lt_dlloader_data_t parameter.
22582         * libltdl/ltdl.c:  A sprinkling of /*ARGSUSED*/ markers to
22583         reassure lint that the unused arguments are intentional.
22584         (lt_dlloader_t): New lt_dlloader_data_t field.
22585         (lt_dlloader_data): New function to return the contents of the
22586         dlloader_data field.
22587         (sys_dl_open): Take an additional lt_dlloader_data_t argument.
22588         (sys_dl_close): Ditto.
22589         (sys_dl_sym): Ditto.
22590         (sys_dl): Initialise lt_dlloader_data_t field.
22591         (sys_shl_open, sys_shl_close, sys_shl_sym, sys_shl): As above.
22592         (sys_wll_open, sys_wll_close, sys_wll_sym, sys_wll): As above.
22593         (sys_bedl_open, sys_bedl_close, sys_bedl_sym, sys_bedl): As
22594         above.
22595         (sys_dld_open, sys_dld_close, sys_dld_sym, sys_dld): As above.
22596         (presym_init, presym_exit, presym_open, presym_close, presym_sym,
22597         presym): As above.
22598         (lt_dlinit): Call presym_init with additional argument.
22599         (lt_dlexit): Call dlloader_exit method with additional argument.
22600         (tryall_dlopen): Call module_open method with additional argument.
22601         (lt_dlclose): Call module_close method with additional argument.
22602         (lt_dlsym): Call find_sym method with additional argument.
22603         (lt_add_dlloader): Initialise dlloader_data field.
22604         (lt_remove_dlloader): Call dlloader_exit method with additional
22605         argument.
22606
22607         * libltdl/ltdl.c (find_file): Prevent early release of memory
22608         in filename/*pdir.
22609         From Jon Leichter <jon@symas.com>
22610
22611         (sys_wll_init): Deleted.  No longer required.  And this time,
22612         with feeling!
22613         (sys_wll_exit): Ditto.
22614
22615 2000-02-02  Gary V. Vaughan  <gary@gnu.org>
22616
22617         * NEWS: updated.
22618         * doc/libtool.texi (Libltdl interface): Moved user defined module
22619         loader documentation from here...
22620         (Module loaders for libltdl) ...to here, and updated the text and
22621         added examples.
22622         * ltdl.m4 (AC_CHECK_FUNCS): check strcmp for lt_find_dlloader.
22623         * libltdl/ltdl.h: Reformatted and commented for readability.
22624         (struct lt_user_dlloader): New data type for passing
22625         initialisation pointers to lt_add_dlloader.
22626         (LTDL_ERROR_INVALID_LOADER):  New error message when non loader
22627         handles are passed to the user loader API.
22628         (LTDL_ERROR_INIT_LOADER): New error when loader initialisation
22629         fails.
22630         (LTDL_ERROR_REMOVE_LOADER): New error when loader removal fails.
22631         (lt_module_open_t): renamed from lt_lib_open_t.
22632         (lt_module_close_t): renamed from lt_lib_close_t.
22633         (lt_dlloader_exit_t): renamed from lt_dlloader_exit_t.
22634         * libltdl/ltdl.c: Reordered builtin loaders so that the "dld"
22635         loader no longer occurs before "dlopen" on some platforms and
22636         after it on others.
22637         (lt_dlloader_t): Moved here from ltdl.h, added a field,
22638         "loader_name", for identifying the loader, and renamed from
22639         lt_dltype_t.  Renamed type variables to loader IFF of type
22640         lt_dlloader_t.
22641         (lt_module_t): Renamed from lt_syshandle. Renamed handle variables
22642         to module IFF of type lt_module_t.
22643         (LTDL_TYPE_TOP): Deleted.  No longer required.
22644         (sys_dl): Initialised as a struct lt_user_dlloader.
22645         (sys_dl_init): Deleted.  No longer required.
22646         (sys_dl_exit): Ditto.
22647         (sys_shl): Initialised as a struct lt_user_dlloader.
22648         (sys_shl_init): Deleted.  No longer required.
22649         (sys_shl_exit): Ditto.
22650         (sys_wll): Initialised as a struct lt_user_dlloader.
22651         (sys_wll_init): Deleted.  No longer required.
22652         (sys_wll_exit): Ditto.
22653         (sys_bedl): Initialised as a struct lt_user_dlloader.
22654         (sys_bedl_init): Deleted.  No longer required.
22655         (sys_bedl_exit): Ditto.
22656         (sys_dld): Initialised as a struct lt_user_dlloader.
22657         (sys_dld_init): Deleted.  No longer required.
22658         (sys_dld_exit): Ditto.
22659         (sys_presym): Initialised as a struct lt_user_dlloader.
22660         (lt_mod_init_t): Moved to here from ltdl.h.
22661         (lt_dlinit): Add builtin loaders using the user loader API.
22662         (lt_dlexit): Unregister and free all loaders.
22663         (lt_add_dlloader): New function to add a new module loader after the
22664         loader specified in the argument.
22665         (lt_remove_dlloader): New function to remove a module loader.
22666         (lt_next_dlloader): New function for iterating over module loaders.
22667         (lt_dlloader_name): Accessor function for name of dlloader.
22668         (lt_find_dlloader): New function to get a reference to a registered
22669         module loader.
22670         (strcmp): static implementation incase the host has none.
22671         (lt_dlgettypes, lt_dlsettypes): Removed.
22672
22673 2000-02-02  Thomas Tanner  <tanner@ffii.org>
22674
22675         * libltdl/ltdl.c: replace NULL with 0, remove unused system
22676           and app_private pointers from lt_dlhandle_t
22677         * libltdl/ltdl.c (presym_add_list): new preloaded symbols
22678           don't need to be added to the end
22679
22680         * libltdl/ltdl.c (lt_dlgetdata, lt_dlsetdata): removed
22681         * libltdl/ltdl.h: ditto
22682         * doc/libtool.texi (libltdl interface): ditto
22683
22684 2000-02-01  Thomas Tanner  <tanner@ffii.org>
22685
22686         * ltmain.in: support -dlopen/dlpreopen for libraries
22687         * NEWS: updated
22688         * TODO: updated
22689         * ltmain.in: rename dlopen to dlopen_support
22690         * ltconfig.in: ditto
22691         * doc/libtool.texi: ditto
22692
22693         * ltmain.in: check whether libraries are moved out of $libdir,
22694           replace .a and .lib with .$libext, .o and .obj with .$objext
22695
22696 2000-01-31  Gary V. Vaughan  <gary@gnu.org>
22697
22698         * libltdl/ltdl.h (lt_dlrealloc): removed declaration.
22699         * libltdl/ltdl.c (lt_dlrealloc): removed definition.
22700         (lt_dladderror): Instead of calling lt_dlrealloc, use lt_dlmalloc,
22701         and lt_dlfree.
22702
22703 2000-01-30  Ossama Othman  <ossama@debian.org>
22704
22705         * libtool.m4 (lt_cv_cc_needs_belf): Set the test language to C
22706         prior to executing the test that checks if the C compiler needs
22707         "-belf."
22708         Reported by Chris Butler <chrisb@sandy.force9.co.uk>
22709
22710 2000-01-28  Gary V. Vaughan  <gary@gnu.org>
22711
22712         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use changequote to
22713         protect `[' and `]' in deplibs_check_method.
22714
22715         * libltdl/ltdl.h (lt_dlrealloc): Added declaration.
22716         * libltdl/ltdl.c (lt_dlrealloc): Added default definition.
22717
22718         * libltdl/ltdl.c (lt_dlseterror): Catch errorcodes below 0 as
22719         invalid.
22720         * libltdl/ltdl.h (LTDL_ERROR): Added missing '_' in K&R
22721         definition.
22722
22723         * libltdl/ltdl.h (ltdl_error_table): Added missing error code, and
22724         fixed typo in another code.
22725         * doc/libtool.texi (Libltdl interface): Added missing @end
22726         clause.
22727
22728 2000-01-27  Thomas Tanner  <tanner@ffii.org>
22729
22730         * ltconfig.in: Oops, replace the remaining $objdir's
22731
22732         * ltmain.in: merge library linking code of programs and libraries,
22733           some cleanups
22734
22735 2000-01-27  Gary V. Vaughan  <gary@gnu.org>
22736
22737         * NEWS: Updated.
22738         * doc/libtool.texi (Libltdl interface): Document new entry
22739         points.
22740         * libltdl/ltdl.c (lt_dladderror): New function to add a user
22741         defined error message to the tables used by lt_dlerror().
22742         (lt_dlseterror):  New function to allow setting of last_error by
22743         user modules.
22744         (ltdl_error_strings): New preprocessor generated table of internal
22745         error diagnostic strings.
22746         (user_error_strings): New internal list of registered user error
22747         diagnostic strings.
22748         (throughout!): Use error messages from ltdl_error_strings.
22749         * libltdl/ltdl.h (ltdl_error_table): New macro to tabulate
22750         internal diagnostic error strings alongside enum keys.
22751
22752         * NEWS: Updated.
22753         * doc/libtool.texi (Libltdl interface): Document new entry
22754         points.
22755         * libltdl/ltdl.c (lt_dltype_t):  Use new type definitions for
22756         existing fields.
22757         (lt_dladdtype): New function to add a new ltdl dynamic loader
22758         type to the end of the list of valid types..
22759         (lt_dlgettypes): New function to return the complete list of ltdl
22760         dynamic loader types.
22761         (lt_dlsettypes): New function to replace the list of ltdl dynamic
22762         loader types entirely -- e.g. to prepend a new type to the
22763         existing list.
22764         (sys_dl_open, sys_dl_close, sys_dl_sym): Work with lt_syshandle.
22765         (sys_shl_open, sys_shl_close, sys_shl_sym): ditto.
22766         (sys_dld_open, sys_dld_close, sys_dld_sym): ditto.
22767         (sys_wll_open, sys_wll_close, sys_wll_sym): ditto.
22768         (sys_bedl_open, sys_bedl_close, sys_bedl_sym): ditto.
22769         (presym_open, presym_close, presym_sym): ditto.
22770         (tryall_dlopen): Call lt_lib_open_t functions lt_syshandle
22771         compatibly.
22772         (lt_dlclose): Call lt_lib_close_t functions lt_syshandle
22773         compatibly.
22774         (lt_dlsym): Call lt_find_sym_t functions lt_syshandle compatibly.
22775         (lt_dltype_t): moved type declaration from here...
22776         * libltdl/ltdl.h (lt_dltype_t): ...to here.
22777         (lt_syshandle): new type for low level system handles passed by
22778         loader functions
22779         (lt_mod_init_t):  New type for functions implementing the
22780         initialisation for an ltdl dynamic loader.
22781         (lt_mod_exit_t): Type of exit functions for the same.
22782         (lt_lib_open_t): Type of loader functions for the same.
22783         (lt_lib_close_t): Type of unloader functions for the same.
22784         (lt_find_sym_t): Type of symbol resolver functions for the same.
22785
22786         * libltdl/ltdl.c (sys_dl_init, sys_dl_exit, sys_dl_open,
22787         sys_dl_close, sys_dl_sym):  Preprocess these away on cygwin to
22788         avoid spurious error messages.
22789
22790 2000-01-24  Thomas Tanner  <tanner@ffii.org>
22791
22792         fix severe bugs reported by Elrond <Elrond@Wunder-Nett.org>
22793
22794         * ltconfig.in: replace $objdir with $output_objdir
22795
22796         * ltmain.in: change to the builddir before relinking programs
22797
22798         * ltmain.in, ltconfig.in, libtool.m4, ltdl.m4:
22799           remove unnessary spaces from line endings
22800
22801 2000-01-19  Thomas Tanner  <tanner@ffii.org>
22802
22803         * ltmain.in: rewrite of the ILD code, merge linking code for
22804           programs, libraries and objects, allow linking of shared libraries
22805           against static libraries/objects on platforms that support it
22806           but print a warning, fix some typos
22807
22808         * partially revert my previous change and
22809           update only copyright notices of files that were actually modified
22810
22811         * NEWS: update
22812
22813         * libltdl/Makefile.am: version number was wrong
22814
22815         * libltdl/ltdl.c (tryall_dlopen): revert Gary's change
22816           since it breaks dlpreopening
22817         * ltdl.m4: ditto
22818
22819         * libltdl/ltdl.c (sys_search_path): search in the system default
22820           library search path, too
22821         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): extract the path
22822
22823         * libltdl/ltdl.c (find_module): remove bogus file_not_found_error
22824
22825         * libltdl/ltdl.c (load_deplibs): implement loading of dependency
22826           libraries
22827         * libltdl/ltdl.c (unload_deplibs): implement unloading of dependency
22828           libraries
22829         * libltdl/ltdl.c (lt_dlexit): correctly close all modules and
22830           their dependencies
22831
22832         * libltdl/ltdl.c (lt_dlforeach): new function
22833         * libltdl/ltdl.h: ditto
22834         * doc/libtool.texi (using libltdl): document it
22835
22836         * libtool.m4: reformatting, only add -I$topsrc_dir/libltdl to
22837           INCLTDL
22838
22839         * libtoolize.in: reformatting
22840         * ltconfig.in: reformatting
22841         * ltmain.in: reformatting
22842
22843         * mdemo/configure.in: AC_SUBST INCLTDL
22844         * mdemo/Makefile.am: use INCLTDL
22845
22846         * tests/Makefile.am: reexport OBJEXT and EXEEXT
22847         * tests/dryrun.test: use them for building main.obj and mdemo.exe
22848
22849 2000-01-17  Gary V. Vaughan  <gary@gnu.org>
22850
22851         * libltdl/ltdl.c (tryall_dlopen): Abort with
22852         file_not_found_error before trying all lib_open() methods
22853         if the file to be dlopened doesn't exist.
22854         * ltdl.m4 (AC_HAVE_HEADERS): add unistd.h.
22855
22856 2000-01-16  Gary V. Vaughan  <gary@gnu.org>
22857
22858         * libltdl/ltdl.c (find_file): memory error fixed.
22859
22860 2000-01-14  Gary V. Vaughan  <gary@gnu.org>
22861
22862         * ltconfig.in (Usage): Now it matches the code!
22863         Reported by Jon Leichter <jon@symas.com>
22864
22865         * README:  Some notes about libtool release numbers.
22866
22867         * mdemo/README: Explain the deliberate incompleteness of the
22868         Windows port.
22869         * mdemo/configure.in: Use AC_LIBTOOL_WIN32_DLL.
22870         * mdemo/Makefile.am (LDFLAGS):  Add -no-undefined.
22871
22872         * libltdl/ltdl.h (LTDL_STMT_START, LTDL_STMT_END):  Macros for
22873         wrapping other macros to make a portable compound statement from
22874         multiple C statements in the expansion.
22875         (LTDL_SET_PRELOADED_SYMBOLS): Use the above macros to add an
22876         extern declaration for lt_preloaded_symbols, to remove
22877         dependency on undefined symbol from libltdl.dll on cygwin (and
22878         other -no-undefined architectures).
22879         * libltdl/ltdl.c (lt_preloaded_symbols): No longer defined here.
22880
22881         * libtool,m4 (AC_LIBTOOL_SETUP):  The result of lt_cv_need_dllmain
22882         was set to the opposite of what it should be.
22883         * configure.in (AC_LIBTOOL_WIN32_DLL):  Call to this macro is
22884         required for libtool configury to test lt_cv_need_dllmain on
22885         Windows.
22886
22887         * ltconfig.in (opt_cr, mingw*): replace unescaped ? with correctly
22888         escaped and portable \{0,1\} in sed expression.
22889         From Jon Leichter <jon@symas.com>
22890
22891 2000-01-13  Gary V. Vaughan  <gary@gnu.org>
22892
22893         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): Add -I${top_srcdir}/libltdl
22894         to default INCLTDL for VPATH.
22895         (AC_LIBLTDL_INSTALLABLE): ditto.
22896         Reported by Tom Tromey <tromey@cygnus.com>
22897
22898 2000-01-12  Thomas Tanner  <tanner@ffii.org>
22899
22900         * update all copyright notices to 2000
22901
22902         * doc/libtool.texi (using libltdl): document new lt_dlinfo struct,
22903           replace NULL with @code{NULL}, document lt_dlsetdata(),
22904           lt_dlgetdata() and lt_dlgetinfo()
22905         * libltdl/Makefile.am: increment interface version number
22906         * libltdl/configure.in: set version number to 1.1
22907         * libltdl/ltdl.c: make some variables public by moving them
22908           to the info struct, add support for application specific data
22909           within module handles, new lt_dlsetdata(), lt_dlgetdata() and
22910           lt_dlgetinfo() functions,
22911           fix memory leaks, minor cleanups
22912         * libltdl/ltdl.h: ditto
22913         * mdemo/main.c: demonstrate use of lt_dlgetinfo,
22914           improved handling of errors
22915
22916         * ltconfig.in: set hardcode_into_libs = yes for GNU/Hurd, Linux
22917           and Solaris, only hardcode *all* run-paths if hardcode_into_libs
22918           is set to 'all', otherwise hardcode only user-specified rpaths
22919           into libraries
22920         * ltmain.in: minor cleanups, we don't need to add user-specified
22921           rpaths to compile_rpath, finalize_rpath is sufficient
22922
22923         * ltconfig.in: transform linux* -> *linux-gnu* _after_ host_os has
22924           been set! (reported by Bruno Haible <haible@ilog.fr>)
22925
22926         * configure.in: AC_SUBST reload_flag, deplibs_check_method
22927           and file_magic_cmd
22928
22929         * README: use 'libtool --version' instead of 'ltconfig --version'
22930           (suggested by Francios Pinard <pinard@iro.umontreal.ca>
22931
22932 2000-01-10  Gary V. Vaughan  <gary@gnu.org>
22933
22934         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Leave undefined when
22935         not compiling for a Windows target.
22936         * libltdl/ltdl.c (canonicalize_path): New function to
22937         ensure internal paths use '/' directory separators.
22938         (find_file): use canonicalize_path.  Memory management
22939         changed to cope.
22940         (lt_dlopen): ditto.
22941         (free_vars): Removed `dir' and `name', which are now handled
22942         internally.
22943
22944         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Define to '/' or '\\',
22945         as suitable for the target host.
22946         (LTDL_PATHSEP_CHAR): Similarly with ':' or ';'.
22947         * libltdl/ltdl.c: Use LTDL_DIRSEP_CHAR and LTDL_PATHSEP_CHAR
22948         instead of hardcoding throughout.
22949         Reported by Jon Leichter <jon@symas.com>
22950
22951 1999-12-18  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22952
22953         * ltmain.in: Oops, `largarg' -> `lastarg'.
22954
22955         * ltmain.in (-Wc, -Xcompiler): Implemented in compile mode.
22956
22957         * ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and
22958         finalize_command.
22959         (-Wc, -Wl): Likewise.
22960
22961         * tests/quote.test: Adjust quoting style of -Wl.
22962
22963         * ltmain.in: Oops, `echo' -> `$echo'.
22964
22965         * ltmain.in (-Wl, -Wc): Make commas argument separators, just like
22966         in gcc.
22967
22968         * ltmain.in (libtool_args): Get all arguments properly enclosed in
22969         quotes and backslash-protected when needed.
22970
22971 1999-12-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22972
22973         * ltdl.m4: Renamed from...
22974         * libltdl/ltdl.m4: that no longer exists.
22975         * configure.in (ACINCLUDE_M4_LIST): Removed libltdl/acinclude.m4.
22976         * Makefile.am (aclocal_macros): Added ltdl.m4.
22977         (libltdl/acinclude.m4): Concatenate libtool.m4 and ltdl.m4.
22978         * bootstrap: Likewise.
22979         * libltdl/Makefile.am (ACLOCAL): Remove the definition.  Relying
22980         upon -I may lead to duplicates.
22981         * doc/libtool.texi: Suggest appending ltdl.m4 to acinclude.m4.
22982         * libtoolize.in: Check AC_LIB_LTDL version number in aclocal.m4.
22983
22984         * libltdl/configure.in (with_auxdir): Do not use it as the
22985         argument of AC_CONFIG_AUX_DIR, automake requires a literal here.
22986         Use AC_CONFIG_AUX_DIRS/DIR_DEFAULT instead.
22987
22988         * libltdl/Makefile.am (ACLOCAL): Define with `-I .', as in
22989         bootstrap.
22990
22991 1999-12-15  Thomas Tanner  <tanner@ffii.org>
22992
22993         * libltdl/configure.in: path to auxiliary files can be specified
22994           using --with-auxdir (idea by Howard Chu <hyc@highlandsun.com>)
22995
22996         * ltmain.in: don't remove multiple occurences from dependency_libs
22997           of a library, otherwise many dependencies would get lost
22998
22999         * bootstrap: use "aclocal -I ." instead of adding the contents
23000           of ltdl.m4 to acinclude.m4
23001
23002 1999-12-13  Gary V. Vaughan  <gary@gnu.org>
23003
23004         * NEWS: updated.
23005         * libltdl/Makefile.am: Use -no-undefined for dll compliance.
23006         * libltdl/configure.in: Use AC_LIBTOOL_WIN32_DLL for dll
23007         compliance.
23008         * libltdl/ltdl.c: Define and use LTDL_GLOBAL_DATA to correctly
23009         export global data symbols from libltdl.dll.
23010         * libltdl/ltdl.h: Define and use LTDL_SCOPE to declare data
23011         symbols as dllexport, dllimport or plain ornary extern depending
23012         in the context in which it is used.
23013
23014         * doc/libtool.texi (Distributing libltdl): document use of
23015         ltdl.m4.
23016         * libltdl/configure.in: Removed header checks, as they are
23017         automatically performed by AC_LIB_LTDL.
23018         * libltdl/ltdl.m4: Added header checks from configure.in, so that
23019         AC_LIB_LTDL is sufficient to compile ltdl.c.
23020         Reported by Stephan Kulow <coolo@kde.org>.
23021
23022         * ltconfig.in (ltdll_obj): fixed typo: objdir -> $objdir
23023
23024 1999-12-12  Gary V. Vaughan  <gary@gnu.org>
23025
23026         * ltconfig.in (cygwin*, mingw*, export_symbols_cmds): keep any
23027         DATA tags associated with symbols by recent dlltool.
23028         (cygwin*, mingw*, archive_expsym_cmds): Honor any DATA tags
23029         found in the symbol list.
23030         Reported by Jon Leichter <jon@symas.com>.
23031
23032 1999-12-10  Gary V. Vaughan  <gary@gnu.org>
23033
23034         From Stephan Kulow <coolo@kde.org>
23035         * libltdl/ltdl.m4:  Add arg 3 to AC_DEFINE's to save the user
23036         from having to hack acconfig.h.
23037
23038 1999-12-06  Gary V. Vaughan  <gary@gnu.org>
23039
23040         * NEWS: Updated.
23041         * TODO: Note some cleanups that are now needed.
23042         * libltdl/configure.in: Use the new macroised tests.
23043         * libltdl/ltdl.m4: New file, macroised tests formerly in
23044         libltdl/configure.in.
23045         Reported by Stephan Kulow <coolo@kde.org>.
23046
23047         From Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
23048         * ltconfig.in:  split off the osf3 section, so that the osf4 and
23049         osf5 sections can add `-msym' to arguments passed to the linker
23050         for shared libs.
23051
23052 1999-12-03  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23053
23054         * ltconfig.in (ac_compile): Use $ac_ext instead of .c.
23055         (ac_link): Likewise.
23056         (dlfcn.h, ac_try): Do not add filename, it is already in
23057         ac_compile.
23058         Reported by Stephane Conversy <Stephane.Conversy@lri.fr>
23059
23060         * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
23061         works together with fast_install.
23062
23063         * libtool.m4: Use host when --target is not specified.
23064
23065         * configure.in: AC_SUBST variables that are used by ltconfig to
23066         build libtool.
23067
23068         * ltconfig.in (irix6*): Do not override deplibs_check_method
23069         here.
23070
23071         * libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
23072
23073 1999-11-20  Michael Forster  <email@michael-forster.de>
23074
23075         * ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes.
23076
23077 1999-11-29  Gary V. Vaughan  <gary@gnu.org>
23078
23079         * ltconfig.in:  Be friendlier to C++ compilers when testing
23080         for dlopen support.
23081         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
23082
23083 1999-11-26  Gary V. Vaughan  <gary@gnu.org>
23084
23085         * libtool.m4:  better use of $target instead of $host to support
23086         cross compilation.
23087         Reported by Sam Latinga <slouken@devolution.com>
23088
23089 1999-11-16  Thomas Tanner  <tanner@ffii.org>
23090
23091         * configure.in: generate ltconfig and ltmain.sh before configuring
23092           libltdl
23093
23094 1999-11-04  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23095
23096         * tests/sh.test: New test to detect uses of quotes within
23097         backticks within quotes.
23098         * ltconfig.in, ltmain.in: Fix detected errors.  Mark false
23099         positives with a comment that disables the detector.
23100         Reported by Akim Demaille <akim@epita.fr>
23101
23102         * configure.in: Move ltconfig and ltmain.sh generation back...
23103         * Makefile.am: here.
23104
23105 1999-11-02  Thomas Tanner  <tanner@ffii.org>
23106
23107         * NEWS: updated
23108         * THANKS: added Olly Betts and Pavel Roskin
23109         * doc/libtool.texi: fix typo
23110
23111         * fix major bugs which rendered libtool virtually
23112           unusable (i.e. not portable):
23113         * ltconfig.in: don't hardcode system dependent variables in ltconfig!!
23114           but set sane defaults
23115         * Makefile.am: pass variables from AC_LIBTOOL_SETUP to ltconfig
23116         * libtool.m4: ditto, fix typo in AC_PROG_LD_RELOAD_FLAG
23117
23118         * ltconfig.in: use old_deplibs for archives, too
23119           remove second occurence of sysv5
23120         * ltmain.in: fix typo, fix the second occurence of -DPIC, too
23121
23122         * libltdl/Makefile.am: increment version number, fix typo
23123         * libltdl/ltdl.c (lt_dlsym): don't report an error if the
23124           libltdl-style symbol name wasn't found
23125
23126 1999-11-02  Wolfgang Rapp <ulris@bn-ulm.de>
23127
23128         * ltconfig.in: add support for Unixware (sysv4.2uw2*)
23129
23130 1999-10-29  Gary V. Vaughan  <gary@gnu.org>
23131
23132         * ltmain.in:  Damnit!  Cygwin cvs committed all the
23133         dos line endings.
23134
23135 1999-10-28  Stephane Conversy  <Stephane.Conversy@lri.fr>
23136
23137         * ltmain.in (-DPIC):  changed the order of pic flags a little to
23138         prevent upsetting the sgi c++ compiler.
23139
23140 1999-10-28  Olly Betts  <olly@muscat.co.uk>
23141
23142         * ltconfig.in (opt_cr):  Handle crlf sequences output by the
23143         mingw toolchain.
23144
23145         * libtool.m4:  Third time lucky, with Tor's patch.
23146
23147 1999-10-19  Tor Lillqvist  <tml@iki.fi>
23148
23149         * libtool.m4:  these was a missing `*' in the -mno-cygwin
23150         match.
23151         * ltconfig.in (cygwin, ltdll_obj): fixed a quoting error.
23152         (export_symbols_cmds): added missing cosmetic newline.
23153
23154 1999-10-18  Tor Lillqvist  <tml@iki.fi>
23155
23156         * libtool.m4: test command used == which should be =.
23157         Support -mno-cygwin flag for building mingw32 dlls.
23158         * ltconfig.in (file_magic_cmd): add missing quotes.
23159         (deplibs_check_method): and here.
23160
23161 1999-10-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23162
23163         * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
23164         specified library is not just a basename.
23165
23166 1999-10-10  Gary V. Vaughan  <gary@gnu.org>
23167
23168         * libtool.m4 (AC_PATH_FILE): new macro replaces
23169         AC_PATH_TOOL_GREP_OUTPUT.
23170         (AC_PATH_TOOL_PREFIX): new macro replaces
23171         AC_PATH_PROG_GREP_OUTPUT.
23172         (AC_LD_RELOAD_FLAG):  migrated from ltconfig.in.
23173         (AC_DEPLIBS_CHECK_METHOD): ditto.
23174         * ltconfig.in (reload_flag): moved to libtool.m4.
23175         (deplbs_check_method): ditto.
23176
23177 1999-10-07  Gary V. Vaughan  <gary@gnu.org>
23178
23179         * libtool.m4 (AC_PATH_PROG_VERSION_GREP): removed in favour of the
23180         more general AC_PATH_PROG_GREP_OUTPUT.
23181         (AC_PATH_TOOL_VERSION_GREP): removed in favour of the more general
23182         AC_PATH_TOOL_GREP_OUTPUT.
23183         (AC_PROG_LIBTOOL):  Search for a working find program in the
23184         user's PATH using the new macros.
23185
23186 1999-10-06  Gary V. Vaughan  <gary@gnu.org>
23187
23188         * NEWS: updtaed.
23189         * ltconfig.in: Accept osf5.
23190         Reported by Sascha Schumann <sascha@schumann.cx>
23191
23192 1999-10-04  Gary V. Vaughan  <gary@gnu.org>
23193
23194         * ltmain.in (-no-install):  This doesn't work on win32 since
23195         the search path for libraries is not encoded in the binary,
23196         and dlls not in $PATH won't be found.  Fall back to -no-fast-install
23197         instead.
23198
23199         * ltmain.in (-no-fast-install):  Wrapper script used to add the
23200         exeext on again when naming the wrapped executable.
23201
23202 1999-10-03  Gary V. Vaughan  <gary@gnu.org>
23203
23204         * ltconfig.in:  Set $FILE to @FILE@ for substitution with
23205         the value found in libtool.m4 at configure time.
23206         * libtool.m4 (AC_PATH_TOOL_GREP_VERSION):  New macro, combines
23207         AC_PATH_PROG and AC_CHECK_TOOL with a test which greps the
23208         output of $ac_dir/${ac_prefix}<tool> --version for a
23209         given regex.
23210         (AC_PATH_PROG_GREP_VERSION):  New macro used by the above.
23211         (AC_LIBTOOL_SETUP): Use the new macros to search the PATH
23212         [starting at /usr/bin] for a file program which accepts
23213         --version and has "file" in its --version output.
23214
23215 1999-10-03  Thomas Tanner  <tanner@ffii.org>
23216
23217         * NEWS: new -no-install flag
23218         * configure.in: fix typo
23219         * doc/libtool.texi(Link mode): document -no-install flag,
23220           correct -no-fast-install docs
23221         * libtool.m4: check for "file" command
23222         * ltconfig.in: don't hardcode /usr/bin/file, remove second
23223           definition of sysv5, replace linkopts -> linker_flags
23224         * ltmain.in: add new -no-install flag, print help for -no-install
23225           and -no-fast-install flags
23226
23227 1999-10-03  Olly Betts <olly@muscat.co.uk>
23228
23229         * ltmain.in: always create output_objdir
23230
23231 1999-10-03  Pavel Roskin  <pavel_roskin@geocities.com>
23232
23233         * libltdl/Makefile.am: don't preserve file attributes when
23234           installing the libltdl sources
23235
23236 1999-10-01  Gary V. Vaughan  <gary@gnu.org>
23237
23238         * configure.in (AC_OUTPUT_COMMANDS): generate ltmain.sh
23239         * Makefile.am (ltmain.sh ltconfig): removed.  Automake inserts the
23240         rules to automatically call config.status.
23241
23242         * libtool.m4: be sure to AC_SUBST values no longer tested in
23243         ltconfig.in.
23244         * ltconfig.in: replaced several of the simple feature tests with
23245         substitutions from config.status.
23246         * Makefile.am (ltconfig): generate ltconfig with config.status.
23247         * configure.in (AC_OUTPUT): generate ltconfig with config.status.
23248
23249 1999-09-30  Donald Anderson  <dda@world.std.com>
23250
23251         * ltconfig.in (sco3.2v5): use pass_all deplibs_check_method
23252         for SCO3.2.
23253
23254 1999-09-29  Gary V. Vaughan  <gary@gnu.org>
23255
23256         * ltconfig.in (whole-archive-flag-spec):  I had been
23257         wondering why my file system was filling up with empty
23258         files named `71'... seems I forgot to hold in the
23259         shift key when redirecting stderr, 2>&1.  Doh!
23260
23261 1999-09-29  Vadim  <vadim@olly.ru>
23262
23263         * ltconfig.in (sysv):  More UW7 support.
23264
23265 1999-09-28  Albert Cheng  <acheng@ncsa.uiuc.edu>
23266
23267         * ltmain.in (shlibpath_var): ensure the variable is non-empty before
23268         exporting it.
23269
23270 1999-09-27  Manfred Weichel  <weichel@global.nacamar.de>
23271
23272         * ltconfig.in (sysv5): Added support required for shared
23273         library linking on SCO UW7.
23274
23275 1999-09-22  Gary V. Vaughan  <gary@gnu.org>
23276
23277         * ltconfig.in (whole-archive-flag-spec): test whether the
23278         version of GNU ld being used understands --whole-archive
23279         before using it.
23280
23281 1999-09-19  Thomas Tanner  <tanner@ffii.org>
23282
23283         * ltmain.in: don't ignore convenience libraries for objects/archives
23284           (temporary hack)
23285
23286 1999-09-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23287
23288         * ltconfig.in (CDPATH): Set to `:' instead of empty.
23289         * ltmain.in (CDPATH): Likewise.
23290         Reported by Greg McGary <gkm@eng.ascend.com>
23291
23292 1999-08-24  Gary V. Vaughan  <gary@gnu.org>
23293
23294         * ltconfig.in (ltdll.c, impgen.c): Prevent the shell from
23295         expanding variables & backslash escapes when writing these
23296         files to the libtool script.
23297
23298 1999-08-24  Thomas Tanner  <tanner@ffii.org>
23299
23300         * NEWS: mention fixes
23301         * doc/PLATFORMS: GNU/Hurd update
23302         * depdemo: make use of variables
23303         * ltconfig.in: use CC -E when checking for ELF support
23304           on NetBSD (reported by Todd Vierling <tv@pobox.com>),
23305           replace all occurences of 'linkopts' with 'linker_flags'
23306         * ltmain.in: move ltdll.c and impgen.c to ltconfig.in and
23307           only add them to the libtool script if it's necessary
23308
23309 1999-08-24  Boyd Gerber  <gerberb@zenez.com>
23310
23311         * ltconfig.in: add support for UnixWare 7.X.X
23312         * doc/PLATFORMS: add new platforms
23313
23314 1999-08-24  Pavel Roskin  <pavel_roskin@geocities.com>
23315
23316         * doc/libtool.texi: document use of noinst_LTLIBRARIES for
23317           convenience libraries
23318
23319         * ltconfig.in: check for freebsdelf3, not just freebsd3.
23320         Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1
23321
23322         * ltmain.in: enable workaround for freebsdelf3.0
23323
23324 1999-08-24  Bert Driehuis  <bert_driehuis@nl.compuware.com>
23325
23326         * ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
23327
23328 1999-08-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
23329
23330         * libltdl/COPYING.LIB: Update to version 2.1.
23331         * libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.
23332
23333 1999-08-03  Gary V. Vaughan  <gary@gnu.org>
23334
23335         * libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return
23336         stripping.
23337         * ltconfig.in: ditto.
23338         From Olly Betts <olly@muscat.co.uk>
23339
23340 1999-08-02  Olly Betts  <olly@muscat.co.uk>
23341
23342         * doc/libtool.texi (Compile mode): typo correction.
23343         (Link mode): and another.
23344         (Release numbers):  and another.
23345         (Distributing libltdl): and another.
23346         (Test descriptions): and another.
23347         (libtool script contents): and one more.
23348
23349         * libtool.m4 (AC_PROG_LD): strip carriage returns from the
23350         output of gcc -print-prog-name=ld.
23351         * ltconfig.in: ditto.
23352
23353 1999-07-30  Pavel Roskin  <pavel_roskin@geocities.com>
23354
23355         * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
23356         initialised structures are sometimes emitted in the code section.
23357
23358 1999-07-30  Mumit Khan  <khan@xraylith.wisc.edu>
23359
23360         * ltconfig.in:  Read line at a time to avoid tokenisation by
23361         shell.
23362
23363 1999-07-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
23364
23365         * ltmain.in: Fix creation of relative links to object files in
23366         sub-dirs.
23367
23368 1999-07-29  Olly Betts  <olly@muscat.co.uk>
23369
23370         * ltconfig.in(cygwin mingw32, archive_expsym_cmds): Only compile
23371         and link ltdll.c if the libtool.m4 macros discovered that it is
23372         required.
23373
23374 1999-07-26  Olly Betts  <olly@muscat.co.uk>
23375
23376         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops.  Fix some
23377         typos made by Evil Gary while (mis)applying my patch :-).
23378
23379         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP):  On second
23380         thoughts, only probe for -mdll vs -dll on mingw, and revert to
23381         the old `-Wl,--dll -nostartfiles' on cygwin.
23382
23383 1999-07-24  Erez Zadok  <ezk@cs.columbia.edu>
23384
23385         * doc/PLATFORMS (i*86-*openbsd2.5):  New platform.
23386         Slight reordering of other bsd entries.
23387
23388 1999-07-24  Olly Betts  <olly@muscat.co.uk>
23389
23390         * NEWS: Note new user visible changes.
23391         * libtool.m4 (mingw32, AC_LIBTOOL_SETUP): probe for -mdll vs -dll
23392         under cygwin/mingw.
23393         probe whether the cygwin/mingw library supplies a stub DllMain
23394         (but this information isn't yet used).
23395         * ltconfig.in (mingw32, extract_expsyms_cmds): if HOST_CC is set,
23396         use that to build impgen so we can use it when cross-compiling.
23397         use correct entry points for mingw so static C++ constructors get
23398         called for code in the DLL.
23399         * ltmain.in (impgen.c): define O_BINARY to 0 if it is not in the
23400         system headers.
23401
23402 1999-07-24  Bert Driehuis <bert_driehuis@compuware.com>
23403
23404         * ltconfig.in:  Updated bsdi4 soname specs to be more like
23405         linux as discussed on the bsdi mailing list.
23406
23407 1999-07-20  Gary V. Vaughan  <gary@gnu.org>
23408
23409         * configure.in (AC_PROG_RANLIB):  No longer required as we now use
23410         AC_CHECK_TOOL in AC_LIBTOOL_SETUP.
23411         * libtool.m4 (AC_PROG_LIBTOOL):  Pass the $build variable to
23412         ltconfig.
23413         (AC_PROG_RANLIB): replaced with AC_CHECK_TOOL.
23414         * ltconfig.in (build): new variable to hold the build triplet
23415         which is now checked for unless --no-verify is specified.
23416         (--build): new argument to set the build triplet.
23417         (ranlib): Prefer ${host_alias}-ranlib[.exe] if $build is different
23418         to $host.
23419         * doc/libtool.texi (Invoking ltconfig): Document --build option.
23420         * NEWS: Note --build option.
23421
23422 1999-07-19  Erez Zadok  <ezk@cs.columbia.edu>
23423
23424         * doc/PLATFORMS: Updated mostly *bsd platforms.
23425
23426 1999-07-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
23427
23428         * doc/libtool.texi (Porting inter-library dependencies): Typos
23429         Reported by Petter Reinholdtsen <pere@hungry.com>
23430
23431 1999-07-17  Thomas Tanner  <tanner@ffii.org>
23432
23433         * NEWS, TODO: updated (pic flags)
23434         * libtool.m4 (AC_PROG_LIBTOOL): added --with-pic flag
23435         * ltconfig.in: new pic_mode variable and --prefer[-non]-pic flags,
23436           fixed the strip check (reported by Keith Bostic <bostic@bostic.com>)
23437         * ltmain.in (compile mode): build only PIC/non-PIC code depending
23438           on pic_mode
23439         * libltdl/README: document the supported dlopen interfaces
23440         * doc/libtool.texi (tests): documented new tests
23441         * tests/Makefile.am: added new tests
23442         * tests/demo-pic.test: new test to test --with-pic
23443         * tests/demo-nopic.test: new test to test --without-pic
23444         * tests/build-relink2.test: variant of build-relink.test that
23445           uses depdemo
23446
23447 1999-07-09  Olly Betts  <olly@muscat.co.uk>
23448
23449         * doc/libtool.texi (C++ Libraries):  fixed a typo.
23450
23451 1999-07-06  Gary V. Vaughan  <gary@gnu.org>
23452
23453         * README-alpha:  improved the release instructions to mention
23454         actual list addresses for announcements, and urls for upload
23455         locations.
23456
23457 1999-07-03  Thomas Tanner  <tanner@ffii.org>
23458
23459         * doc/PLATFORMS: 1.3b passes all tests on cygwin
23460
23461 1999-07-03  Pavel Roskin <pavel_roskin@geocities.com>
23462
23463         * ltconfig.in: finish_cmds for FreeBSD removed
23464         * depdemo/l3/Makefile.am: install libl3.la into an extra directory
23465
23466 1999-07-02  Gary V. Vaughan  <gary@gnu.org>
23467
23468         * configure.in: bumped version to 1.3c.
23469
23470         GNU libtool 1.3b was released.
23471
23472         * NEWS: inserted todays date.
23473
23474 1999-07-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
23475
23476         * doc/PLATFORMS: Tested on as many platforms as possible for me.
23477
23478 1999-07-01  Thomas Tanner  <tanner@ffii.org>
23479
23480         * NEWS: updated
23481         * doc/PLATFORMS: updated
23482         * changed my email address
23483
23484 1999-06-30  Thomas Tanner  <tanner@ffii.org>
23485
23486         * demo/foo.h: use LT_PARAMS instead of LTDL_PARAMS (this is not libltdl)
23487         * tests/build-relink.test: also check for hardcode_into_libs = yes,
23488           if set, we need to relink at install-time
23489
23490 1999-06-29  Thomas Tanner  <tanner@ffii.org>
23491
23492         * NEWS: mention -no-fast-install, rename dummy to force
23493         * doc/PLATFORMS: 1.3b passes all tests on GNU/Linux,
23494           FreeBSD (2.2.6 and 3.1)
23495         * doc/libtool.texi: it's possible to link libtool libraries
23496           using -L and -l, better documentation of uninstall and clean mode,
23497           rename dummy to force, documented -no-fast-install,
23498           AC_LIBLTDL_* must be called before AC_PROG_LIBTOOL,
23499           documented hardcode_into_libs and striplib/old_striplib,
23500         * ltconfig.in: search for strip program, added hardcode_into_libs
23501           and striplib/old_striplib variables, set strip commands for GNU strip,
23502           on FreeBSD >= 3.2 set hardcode_into_libs to yes,
23503           fast-install mode doesn't work if hardcode_into_libs = yes
23504         * ltmain.in: reimplemented hardcoding into libraries:
23505           new relink mode, preserve all libtool args, relink libraries
23506           when installing if necessary
23507           added -no-fast-install flag, removed unnecessary `dlname'
23508           initialization, use striplib/old_striplib for stripping libraries,
23509           dlname is always soname or in library_names so we don't need
23510           to handle different file names
23511
23512 1999-06-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
23513
23514         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to yes
23515         up to release 3.1, and to no from 3.2 on.
23516         Reported by Pavel Roskin <pavel_roskin@geocities.com>
23517
23518 1999-06-29  Pavel Roskin <pavel_roskin@geocities.com>, Alexandre Oliva  <oliva@dcc.unicamp.br>
23519
23520         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to
23521         yes; tested on 3.1-ELF by Pavel and on 2.2.6 by Alexandre.
23522
23523 1999-06-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
23524
23525         * ltconfig.in (linux-gnu*, deplibs_check_method): Use pass_all on
23526         alpha, x86 and sparc architectures by now, reverting to file_magic
23527         at least on ARM, where it breaks.
23528
23529 1999-06-23  Thomas Tanner  <tanner@ffii.org>
23530
23531         * NEWS: updated
23532         * README: added GNU Hurd to the supported platforms
23533         * doc/libtool.texi: document `-dlpreopen dummy'
23534           instead of `-dlopen dummy'
23535         * libltdl/ltdl.c (strchr): fixed typo (missing star)
23536
23537 1999-06-23  Stephan Kulow <coolo@itm.mu-luebeck.de>
23538
23539         * libltdl/ltdl.c (strrchr): fixed typo (missing star)
23540         * libltdl/ltdl.c (trim): use `const' to silence -Wwrite-strings
23541
23542 1999-06-23  Olly Betts  <olly@muscat.co.uk>
23543
23544         * ltmain.in (ltdll.c): Support for crosscompiling from linux to
23545         mingw32.
23546
23547 1999-06-23  Gary V. Vaughan  <gary@gnu.org>
23548
23549         * ltconfig.in (cygwin, export_symbols_cmds): If there is already
23550         an extracted and compiled ltdll.c, then don't delete, reextract
23551         and recompile.
23552         (cygwin, archive_expsym_cmds): Make sure the ltdll source has been
23553         extracted and compiled before referencing the object, since there
23554         are paths through the code which run archive_expsym_cmds without
23555         running export_symbols_cmds.
23556
23557 1999-06-20  Gary V. Vaughan  <gary@gnu.org>
23558
23559         * ltconfig.in:  moved the test for NM after the test for
23560         no_builtin_flag.
23561
23562 1999-06-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
23563
23564         * ltconfig.in: Use sed '$q' instead of sed "" for copying ltmain,
23565         just in case some sed does not support an empty command.
23566
23567         * ltconfig.in (link_static_flag, ac_cv_prog_cc_static): Use the
23568         latter in the test.
23569
23570 1999-06-18  Thomas Tanner  <tanner@ffii.org>
23571
23572         * ltconfig.in (bsdi4, deplibs_check_method): use a less restrictive
23573           regex (reported by Chris P. Ross <cross@eng.us.uu.net>)
23574         * ltmain.in: support `-dlopen dummy', define lt_preloaded_symbols
23575           if dlself != no
23576         * doc/libtool.texi (Compile and Link mode): document it,
23577           documented the -Wc, -Wl flags, libtool does also support non C
23578           source code
23579
23580 1999-06-18  Teun Burgers  <burgers@ecn.nl>
23581
23582         * ltconfig.in: CR/LF fix for broken DJGPP bash
23583         * ltmain.in: CR/LF fix for DJGPP
23584
23585 1999-06-18  Gary V. Vaughan  <gary@gnu.org>
23586
23587         * ltmain.in (outputname): When generating the executable wrapper
23588         script, $outputname already has the $exeext suffix, so we needn't
23589         add it again.
23590
23591 1999-06-16  Gary V. Vaughan  <gary@gnu.org>
23592
23593         * libltdl/configure.in (ac_cv_lib_dl_dlopen): missing "x" in test
23594         comparison corrected.
23595
23596         * libltdl/ltdl.c (sys_wll_open): libltdl expects this function to
23597         fail if it is unable to physically load the library.  Sadly,
23598         LoadLibrary will search the loaded libraries for a match and
23599         return one of them if the path search load fails.  Simulate a
23600         failure in this case for compatibility with the other APIs.
23601         Also, LoadLibrary takes the liberty of adding `.dll' to library
23602         names passed without an extension, we now add a trailing `.' to
23603         prevent this from happening.
23604
23605 1999-06-15  Gary V. Vaughan  <gary@gnu.org>
23606
23607         * libltdl/ltdl.c (sys_wll_close): Strangely enough, Microsoft have
23608         decided that LoadLibrary returns `0' for success, yet FreeLibrary
23609         returns `0' for failure!  The FreeLibrary call used to interpret
23610         `0' as success for both functions.
23611
23612 1999-06-14 Thomas Tanner  <tanner@ffii.org>
23613
23614         * ltconfig.in: use eval when setting have_dlfcn_h, reformatting
23615
23616 1999-06-12 Thomas Tanner  <tanner@ffii.org>
23617
23618         * ltmain.in: store old archives in deplibs and old_deplibs,
23619           retain the order of dependency libraries (even old archives),
23620           determining the absolute directory name didn't work due to a typo,
23621           add the library search paths of all dependency libraries when
23622           linking a library (fixes IRIX 5.2 bug)
23623
23624 1999-06-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
23625
23626         * ltconfig.in: Reverted June 6's patch for new GNU ld output, it
23627         is no longer needed, as ld reverted to the original format.
23628         * NEWS: Likewise.
23629
23630         * ltconfig.in: When testing self-dlopening, test whether dlclose
23631         crashes.  On FreeBSD 3.1, it does.  :-(
23632         * libltdl/configure.in: Likewise.
23633         * NEWS: Note work-around.
23634         Reported by Pavel Roskin <pavel_roskin@geocities.com>
23635
23636 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
23637
23638         * ltconfig.in (exeext): autoconf's AC_EXEEXT uses "no" to indicate
23639         no extension, and we must do the same in order to share the cache
23640         value. Also we must ignore conftest.err which HPsUX (at least)
23641         fills with gratuitous warnings.
23642         (objext): for consistency, do the same as above.
23643         Reported by Pavel Roskin <pavel_roskin@geocities.com>
23644
23645 1999-06-09  Pavel Roskin  <pavel_roskin@geocities.com>
23646
23647         * ltconfig.in (exeext): Use quotes in the test, to prevent a
23648         failure in sh.test.
23649
23650 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
23651
23652         * ltconfig.in: Reordered tests to be more like configure.in's
23653         recommended order (programs first, then libraries, etc.).
23654         Performed a manual ``constant folding pass'' (eg: s/eval "test
23655         \"echo '$''{'lt_cv_dlopen'+set}'`\" != set/test
23656         "${lt_cv_dlopen+set}" != set/).
23657         s/test "${foo+set}" = "set"/test "X${foo+set}" = Xset/g
23658
23659         * ltconfig.in (link_static_flag): Accept, in order of decreasing
23660         preference: the cached value; the default value for the current
23661         host.  Also test that the compiler accepts the flag, and cache
23662         that result too.
23663
23664         * ltconfig.in (pic_flag): Accept, in order of decreasing
23665         preference:  the cached value; the default value for the current
23666         host.  Also test that the compiler accepts the flag, and cache
23667         that result too.
23668
23669 1999-06-08  Gary V. Vaughan  <gary@gnu.org>
23670
23671         * ltconfig.in (LN_S): Accept, in order of decreasing preference:
23672         the cached value; an environment setting; ``ln -s'' if it works;
23673         ``ln'' if ``ln -s'' doesn't appear to work.
23674
23675         * ltconfig.in (objext): Accept, in order of decreasing preference:
23676         the cached value; the result of a test object compilation.
23677
23678         * ltconfig.in (RANLIB): Accept, in order of decreasing preference:
23679         the cached value; an environment setting; the first file called
23680         ``ranlib'' in the user's path.
23681
23682         * ltmain.in (exeext): Use $exeext when working out the names of
23683         programs (but not the wrapper script itself due to a stupidity in
23684         win32 which hardwires the .exe extension to the binary loader!).
23685         * ltconfig.in (exeext): Now that the wrapper script tries to move
23686         executables, we need to know whether they have an extension (ala
23687         AC_EXEEXT).  Since we can't rely on AC_EXEEXT having been called
23688         in configure.in, we must be able to check for ourselves, though we
23689         can look for a cached result incase AC_EXEEXT was called.
23690
23691         * ltconfig.in (cygwin, pic_flag):  Force separate compilation of
23692         objects for dlls vs. objects for static archives.  Using a cpp
23693         macro also allows us to decide whether or not we need to use
23694         dllexport/import declarations.
23695
23696         * ltconfig.in (cygwin, need_version): Set to no, otherwise module
23697         dll's end up with mighty long names!
23698
23699 1999-06-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
23700
23701         * ltconfig.in: Support new GNU ld --help output format.
23702         * NEWS:  Likewise.
23703         Reported by Gaël Quéri <gael@baoule.dyndns.org> and
23704         H.J. Lu <hjl@varesearch.com>.
23705
23706 1999-06-05  Mark Kettenis  <kettenis@gnu.org>
23707
23708         * ltconfig.in: Update support for the Hurd.  Make sure that the
23709         soname includes the major version number and create the right
23710         links.  Allow shared objects without the `lib' prefix and without
23711         version information.
23712
23713 1999-06-02 Nick Rasmussen <nick@jive.org>
23714
23715         * ltmain.in (link): use "$nonopt" as the compiler for
23716           compile/finalize_command
23717
23718 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
23719
23720         * TODO: Remove the short list of people interested in C++
23721         constructors; it's not meaningful, since there are so many more
23722         people requesting this feature, and we just can't maintain it
23723         accurate.
23724
23725 1999-05-27  Pavel Roskin  <pavel_roskin@geocities.com>
23726
23727         * ltconfig.in (GNU Hurd, deplibs_check_method): Use pass_all.
23728
23729 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>, Olly Betts  <olly@muscat.co.uk>
23730
23731         * ltmain.in: Expand convenience libraries when creating reloadable
23732         objects.
23733         * NEWS: Ditto.
23734
23735 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
23736
23737         * NEWS: Mention the two bugfixes below.
23738
23739         * ltmain.in: Only create directory into which to extract
23740         convenience libraries when $convenience is not empty.  It would
23741         always be created on systems that did not support
23742         whole_archive_flag_spec.
23743
23744         * ltconfig.in (export_symbols_cmds): Add $convenience.
23745         (cygwin, export_symbols_cmds): Ditto.
23746         * ltmain.in: Generate export symbol list before expanding
23747         convenience libraries, to avoid passing whole_archive_flag_spec to
23748         $NM.
23749         Reported by Godmar Back <gback@cs.utah.edu>
23750
23751 1999-05-27  David Jones  <jones@mosaid.com>
23752
23753         * libltdl/ltdl.c (LTDL_BIND_FLAGS): Remove BIND_VERBOSE, to avoid
23754         printing error messages.
23755
23756 1999-05-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
23757
23758         GNU libtool 1.3.2 was released.
23759
23760 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
23761
23762         * NEWS: List fixed problems.
23763         * doc/PLATFORMS: Tested for 1.3.2.
23764
23765         * config.guess: Synch with GNU common.
23766
23767         * ltmain.in: Revert to stripping .exe on all platforms.
23768         * TODO: Note about this problem.  Demo is fixed on win32.  Support
23769         `empty' convenience libraries.
23770
23771         * ltconfig.in (solaris*, ld_shlibs): Do not enable shared
23772         libraries with GNU ld 2.8.*, it's broken.  Emit a warning
23773         suggesting an upgrade.
23774         Reported by Brian Ford <ford@vss.fsi.com> and Ronald Pijnacker
23775         <Ronald.Pijnacker@best.ms.philips.com>
23776
23777 1999-05-25  Frank Ch. Eigler <fche@cygnus.com>
23778
23779         * ltmain.in: file_magic check would not avoid cyclic links.
23780
23781 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
23782
23783         * depdemo/main.c, depdemo/l1/l1.c, depdemo/l2/l2.c: K&R-ize.
23784         * depdemo/l3/l3.c, depdemo/l4/l4.c: Likewise.
23785
23786         * ltmain.in: Remove object files before writing to them, to avoid
23787         circular links.
23788         Reported by Ron O'Hara <rono@sentuny.com.au>
23789
23790 1999-05-24 Thomas Tanner  <tanner@ffii.org>
23791
23792         * NEWS: support for installing stripped libraries using GNU strip
23793         * ltconfig.in: set deplibs_check_method=pass_all on FreeBSD,
23794           Linux and Solaris since no one can reproduce the famous deplibs
23795           bug
23796         * ltmain.in: preserve $CC (reported by Tom Tromey),
23797           strip libraries using GNU strip if it's available and the
23798           -s flag was passed to "install"
23799
23800 1999-05-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
23801
23802         * doc/PLATFORMS: Release 1.3.1 passes on GNU Hurd/x86.
23803         Reported by Pavel Roskin <pavel_roskin@geocities.com>
23804
23805 1999-05-23 Thomas Tanner  <tanner@ffii.org>
23806
23807         * ltmain.in: strip off the .exe suffix only on *Win
23808           (Reported by Matthew D. Langston <langston@SLAC.Stanford.EDU>)
23809
23810 1999-05-22 Thomas Tanner  <tanner@ffii.org>
23811
23812         * NEWS: updated
23813         * TODO: -Wc, -Wl, implemented
23814         * AUTHORS: changed my email address
23815         * doc/libtool.texi: fix "wierd" typo :)
23816         * ltmain.in: linking against convenience libraries was broken,
23817           implemented the "-Wc," "-Wl," "-Xcompiler" "-Xlinker" flag for
23818           compiler and linker-specific flags,
23819           add -lc before we do the deplibs check
23820         * ltconfig.in: linkopts -> compiler_flags for $CC and linker_flags
23821           for $LD, link_all_deplibs=yes on IRIX
23822
23823 1999-05-22  Gary V. Vaughan  <gary@gnu.org>
23824
23825         * NEWS: insert todays date alongside 1.3.1 release.
23826         * Makefile.in: use gnu not gnits rules
23827         * config.guess: synch with gnu common & apply Takabatake-san's
23828         MIPS *000 patch.
23829         * config.sub: synch with gnu common.
23830
23831 1999-05-22  Doug Evans  <devans@casey.cygnus.com>
23832
23833         * libltdl/configure.in (dlerror): Fix typo in dlopen found in -ldl
23834         test.
23835
23836 1999-05-21  Pavel Roskin  <pavel_roskin@geocities.com>
23837
23838         * Makefile.am (EXTRA_DIST): Don't distribute instutils.
23839         (install-data-hook): use libltdl/Makefile.am's local-install files
23840         rule.
23841         * libltdl/Makefile.am (local-install-files):  New rule to install
23842         libltdl without creating links or mode 777 directories.
23843         * instutil/*: deleted.
23844
23845 1999-05-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
23846
23847         * doc/PLATFORMS: Updated to 1.3.1 for all platforms I've got.
23848         Added sparc-unknown-linux-gnu.
23849
23850 1999-05-21  Gary V. Vaughan  <gary@gnu.org>
23851
23852         * demo/foo.h: s/PARAMS/LTDL_PARAMS/g
23853         * libltdl/ltdl.h: ditto.
23854         * libltdl/ltdl.c: ditto.
23855
23856         * demo/foo.h: s/__P/PARAMS/g
23857         * libltdl/ltdl.h: ditto.
23858         * libltdl/ltdl.c: ditto.
23859         Reported by Akim Demaille <demaille@inf.enst.fr>
23860
23861 1999-05-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
23862
23863         * NEWS: Updated docs.
23864         * TODO: Recommend libtool.m4 to be inserted in acinclude.m4. AIX
23865         4.3.2.0 no longer fails on static dlopening.  GNU DLD no longer
23866         has to support .la files, since libltdl already does.  Convenience
23867         libraries and reloadable objects should be tested in the
23868         testsuite.  We could support some amount of control on the soname
23869         of libraries.
23870         * doc/libtool.texi: Notes about convenience libraries and
23871         automake.  Documented INCLTDL.
23872
23873 1999-05-20 Thomas Tanner  <tanner@gmx.de>
23874
23875         * cdemo/main.c: "Welcome _to_ ..."
23876         * mdemo/main.c: ditto
23877         * libltdl/configure.in: support multiple dlopening mechanisms
23878           at once
23879         * libltdl/ltdl.c: prefix system dependent functions with "sys_"
23880           to avoid symbol conflicts (libdld didn't work)
23881         * libtool.m4 (AC_LIBLTDL_*): set INCLTDL to the path of ltdl.h
23882         * ltconfig.in: check for dlopen with -ldl first
23883
23884 1999-05-19  Gary V. Vaughan  <gary@gnu.org>
23885
23886         * NEWS: Added 1.3.1 news items.
23887         * doc/PLATFORMS: updated the boxes I have access to, to 1.3.1
23888         in preparation for the next release.
23889
23890 1999-05-18  Gary V. Vaughan  <gary@gnu.org>
23891
23892         * ltconfig.in (cygwin*, whole_archive_flag_spec): dlltool chokes
23893         on this, so leave it unset in this case so that the ltmain code
23894         knows it has to unpack convenience archives by itself.
23895
23896 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
23897
23898         * ltmain.in: Do not exit when an unknown library name is passed
23899         passed in, simply warn and continue since some compilers require
23900         -LANG:* like options to work.
23901         Reported by Adam C. Powell, IV <adam.powell@nist.gov>
23902
23903 1999-05-17  Jiro Takabatake  <jiro@din.or.jp>
23904
23905         * ltconfig.in: port to NEC UX/4800.
23906         * NEWS: updated.
23907
23908 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
23909
23910         * ltconfig.in (beos*, deplibs_check_method): set to pass_all.  BeOS
23911         is PIC by default.
23912         Reported by "Shawn T . Amundson" <amundson@gimp.org>
23913
23914         * libltdl/configure.in: Fix test failures on AIX 4.3.2 by checking
23915         for dlopen *with* -ldl first.
23916         Reported by Greg Wooledge <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
23917
23918         * demo/foo.h: Don't set any declspecs until we have full dll
23919         support.
23920
23921 1999-05-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
23922
23923         * ltconfig.in (solaris2.6, whole_archive_flag_spec): Do not use
23924         -Wl for allextract.
23925
23926 1999-05-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
23927
23928         * instutil/chmod: New script to avoid chmod'ing files while
23929         installing libltdl's sources.
23930         * instutil/ln: New script to avoid hard-linking libltdl's sources
23931         in the install tree.
23932         * Makefile.am (EXTRA_DIST): Dist them.
23933         (instal-data-hook): Add srcdir/instutil to the beginning of the
23934         PATH before installing libltdl's sources.
23935
23936 1999-05-09  Gary V. Vaughan  <gary@gnu.org>
23937
23938         * TODO: updated.
23939
23940 1999-05-06  Gary V. Vaughan  <gary@gnu.org>
23941
23942         * Makefile.am (install-data-hook):  make sure the install directory
23943         is not left world writable.
23944         Reported by Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
23945
23946 1999-04-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
23947
23948         * libtool.m4: Use ifelse instead of if.
23949         Reported by David Mazieres <dm@amsterdam.lcs.mit.edu>
23950
23951 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
23952
23953         GNU Libtool 1.3 was released.
23954
23955         * NEWS: Summarize news from 1.2 to 1.3.
23956
23957         * ltmain.in: Save exit status of link_command before removing
23958         symbol table object file.
23959
23960 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
23961
23962         * doc/PLATFORMS: updated my hpux-10.20 and cygwin box entries.
23963
23964 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
23965
23966         * NEWS: Improved support for DU and IRIX too.
23967
23968         * config.sub, config.guess: Updated from GNU common.
23969
23970         * mdemo/configure.in: Move AC_LIBLTDL_CONVENIENCE before
23971         AM_PROG_LIBTOOL, as suggested by autoconf.
23972
23973         * doc/libtool.texi (Distributing libltdl): Document that -static
23974         may cause the same problems on libltdl as -all-static.
23975         * TODO: We might want to fix this in the future.
23976
23977         * doc/libtool.texi: Clear up overfull hbox.
23978
23979         * libltdl/Makefile.am (ltdl.lo): Add dependencies.
23980         * libltdl/configure.in: Clean up some duplicate defines.  Enable
23981         support for multiple dlopening mechanisms.
23982         * libltdl/acconfig.h: New file.  Add #undefs for defines that
23983         would be duplicated.
23984
23985 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
23986
23987         * libtool.m4 (cygwin*|mingw*, DLLTOOL, OBJDUMP, AS): Only expand the
23988         code that makes these configure time checks on hosts that need the
23989         tools *and* if the AC_LIBTOOL_WIN32_DLL macro is used.
23990
23991 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
23992
23993         * ltmain.in (nlist, SYMFILE): Use outputname instead of output for
23994         names within output_objdir.
23995
23996 1999-04-28  Alexandre Oliva  <oliva@dcc.unicamp.br>
23997
23998         * libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC,
23999         AC_ENABLE_FAST_INSTALL): Do not call AC_BEFORE here, they're
24000         AC_REQUIREd by AC_LIBTOOL_SETUP.
24001         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
24002         Call AC_BEFORE here, and now with two arguments, since these do
24003         change the default.
24004         (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE): Fix calls to
24005         AC_BEFORE.
24006
24007 1999-04-28  Gary V. Vaughan  <gary@gnu.org>
24008
24009         * libtool.m4 (ltconfig_enable_win32_dll): pass --enable-win32-dll to
24010         ltconfig if this is set.
24011         (AC_LIBTOOL_WIN32_DLL): New macro required for libtool to attempt
24012         a dll build on win32 hosts.
24013         * ltconfig.in (--enable-win32-dll): new flag for the cli.
24014         (cygwin*|mingw*|os2*, ltconfig_enable_win32_dll): if this is not set
24015         to yes, then do not attempt to build shared libraries.
24016         * doc/libtool.texi: document AC_LIBTOOL_WIN32_DLL.
24017         * NEWS: noted new macro.
24018
24019 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24020
24021         * libtool.m4 (AC_LIBTOOL_DLOPEN, AC_ENABLE_SHARED,
24022         AC_ENABLE_STATIC, AC_ENABLE_FAST_INSTALL, AC_LIBLTDL_CONVENIENCE,
24023         AC_LIBLTDL_INSTALLABLE): Warn if they appear after
24024         AC_PROG_LIBTOOL.  AC_LIBTOOL_SETUP, actually.
24025         (AC_LIBTOOL_SETUP): Check whether DLOPEN support is to be enabled
24026         at autoconf time, not configure time.  Simplify code and
24027         improve (?) help message about --disable-libtool-lock.
24028
24029 1999-04-27 Thomas Tanner  <tanner@gmx.de>
24030
24031         * NEWS: new clean mode
24032         * THANKS: added Ossama Othman
24033         * doc/libtool.texi: documented the new `clean' mode
24034         * ltconfig.in: set need_version=no on OSF (reported by
24035           Marcus Sundberg <mackan@stacken.kth.se>)
24036         * ltmain.in: allow absolute non-existant -L paths,
24037           always use output_objdir instead of objdir for temporary files,
24038           delete generated temporary symbol lists,
24039           don't add .la twice in the pseudo-library header,
24040           implemented and documented clean mode (deletes libraries,
24041           programs and object files and the files associated with them),
24042           if build_libtool_libs=no and no static library is available,
24043           try to link the program against the shared library,
24044           don't add a statically linked library to the dependency_libs
24045         * ltmain.in (help uninstall): added a missing backslash
24046           after echo (reported by Ossama Othman)
24047
24048 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24049
24050         * ltmain.in (old_archive_cmds): Iterate on oldobjs to find out
24051         which links to object files we must create.  Do not test for empty
24052         pic_flag to create such links.  Use objext when searching for
24053         object files extracted from convenience library.
24054
24055         * ltconfig.in (compiler_c_o): Make sure the compiler does not
24056         create temporaries in the current directory when output should go
24057         elsewhere.  We must perform locking if it does.
24058
24059 1999-04-27  Gary V. Vaughan  <gary@gnu.org>
24060
24061         * ltmain.in (old_archive_cmds): Ensure that there are always .o
24062         objects available before running old_archive_cmds.
24063
24064 1999-04-26  Erez Zadok  <ezk@cs.columbia.edu>
24065
24066         * doc/PLATFORMS: Updates for netbsd 1.3.3 and 1.4.
24067
24068 1999-04-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
24069
24070         * ltconfig.in (aix4.[01], always_export_symbols): The case pattern
24071         would never match; fixed.
24072         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
24073
24074 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24075
24076         * libtool.m4 (OBJDUMP): Pass it to ltconfig.
24077         * configure.in: AC_SUBST DLLTOOL, OBJDUMP and AS.
24078         * Makefile.am (libtool, clibtool): Pass them to ltconfig.
24079
24080 1999-04-25  Frank Ch. Eigler  <fche@cygnus.com>
24081
24082         * libtool.m4 (cygwin*): Look for target objdump tool.
24083         * ltconfig.in (cygwin*, file_magic_cmd): Use autoconf-located target
24084         objdump tool.  Track OBJDUMP like DLLTOOL and AS.
24085
24086         * ltconfig.in (cygwin*, deplibs_check_method): Accept
24087         "architecture: i386" as optional suffix, for it is printed on a
24088         separate line sometimes.
24089
24090         * ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C".
24091
24092         * ltmain.in (deplibs_check_method=file_magic): Redirect stderr to
24093         /dev/null, to suppress error messages from target objdump.
24094
24095 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24096
24097         * ltconfig.in (irix*, soname_spec, library_names_spec): Missing
24098         dots before $versuffix and $major.
24099
24100         * ltconfig.in (solaris*, whole_archive_flag_spec): Use -z
24101         allextract/defaultextract from Solaris 2.6 on.
24102         Reported by Brian Ford <ford@vss.fsi.com>
24103
24104         * ltconfig.in (beos*, allow_undefined_flag): Do not build shared
24105         libraries with undefined symbols.
24106
24107         * ltconfig.in (aix4*, allow_undefined_flag): Set to -berok.
24108         (aix4*, shared_flag): Set to -shared or ${wl}-bM:SRE.
24109         (aix4*, archive_cmds): Use -bexpall.
24110         (aix4*, archive_cmds, archive_expsym_cmds): Use shared_flag and
24111         allow_undefined_flag.
24112         (aix4*, always_export_symbols): Set to yes up to AIX 4.1.*,
24113         because -bexpall is supported from 4.2 on.
24114         Reported by Greg Wooledge
24115         <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
24116
24117         * ltconfig.in (hpux*, hardcode_minus_L): Set to yes.
24118         (hpux*, hardcode_libdir_flag_spec): Do not use +s by default.
24119         (hpux*, shlibpath_overrides_runpath): Set to no.
24120
24121         * ltconfig.in (irix*, osf*, archive_cmds): Write so_locations
24122         within objdir.
24123
24124         * ltconfig.in (irix*, soname_spec): Append $major.
24125         (irix*, library_names_spec): Add new soname.
24126         Reported by David Kaelbling <drk@sgi.com>
24127
24128         * ltconfig.in (irix*, sys_lib_dlsearch_path_spec): /usr/local/lib
24129         is not searched by default.  /usr/lib is searched before /lib.
24130         * ltconfig.in (irix*, sys_lib_search_path_spec): /usr/lib is
24131         searched before /lib.
24132
24133         * ltconfig.in (irix5*, need_lib_prefix, need_version): Set to no,
24134         by unifying with irix6*.
24135
24136         * ltconfig.in (irix*, osf*, deplibs_check_method): Use pass_all.
24137
24138         * ltconfig.in (old_LDFLAGS, old_LIBS): Save and write to comments
24139         in output file.
24140
24141         * ltmain.in (prefer_static_libs): New variable, set to no by
24142         default, but set to yes by -static and -all-static.  Used instead
24143         of build_libtool_libs to decide whether to use a shared or static
24144         version of a library, when both versions are available.
24145
24146 1999-04-25  Boyd Lynn Gerber  <gerberb@zenez.com>
24147
24148         * ltconfig.in (sco3.2v5*): Use LD_RUN_PATH for hard-coding.
24149
24150 1999-04-25  Pavel Roskin  <pavel_roskin@geocities.com>
24151
24152         * Makefile.am (uninstall-local): Remove installed libltdl tree.
24153
24154 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24155
24156         * demo/Makefile.am (hc-direct, hc-libflag, hc-libpath, hc-minusl):
24157         Added CFLAGS to link commands; SCO OSR needs it for -belf.
24158
24159         * TODO: -Wl and -Wc options.
24160
24161 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
24162
24163         * libltdl/ltdl.c: Remove trivial warnings.
24164
24165 1999-04-22  Frank Ch. Eigler  <fche@cygnus.com>
24166
24167         * ltconfig.in: Correct sed expression that extracts symbols
24168         from cygwin def files.  Ignore demangled C++ names, if any.
24169
24170 1999-04-12  John David Anglin  <dave.anglin@nrc.ca>
24171
24172         * libltdl/ltdl.c (shl_close): shl_t was correct here...
24173         (shl_sym): ... but we have to pass the handle by reference here.
24174
24175 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
24176
24177         * doc/libtool.texi (Invoking ltconfig): Document environment
24178         variables used.
24179
24180         * doc/libtool.texi (Invoking ltconfig): Document --cache-file.
24181
24182         * doc/libtool.texi (Invoking ltconfig): Document
24183         --disable-fast-install, --enable-dlopen, --with-gnu-ld and
24184         --disable-lock.
24185
24186 1999-04-11 Thomas Tanner  <tanner@gmx.de>
24187
24188         * libltdl/configure.in: check for shl_load in libdld
24189         * libltdl/ltdl.c (shl_close, shl_sym): use (shl_t *) instead of shl_t
24190         * ltconfig.in (check for gcc): removed a bogus line,
24191           check for shl_load in libdld
24192         * ltmain.in: added a warning to the header of the .la file
24193           to warn users against deleting the file,
24194           link shared against static libraries if
24195           deplibs_check_method == pass_all
24196
24197 1999-04-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
24198
24199         * libtool.m4 (AC_PROG_LD, AC_PROG_NM): When looking for programs,
24200         try $ac_exeext too, so that they're found on DJGPP/MS-DOS.
24201         * ltconfig.in: Likewise.
24202         Reported by Robert S. Maier <rsm@math.arizona.edu>
24203
24204         * ltconfig.in (Usage): Removed --enable-dlopen-self.
24205         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24206
24207         * ltconfig.in: Moved sysv4 before sysv4.*.
24208         (symcode): Brian's overrider is specific to sysv4, not sysv4*.
24209
24210 1999-04-09 Thomas Tanner  <tanner@gmx.de>
24211
24212         * NEWS, README: Motorola System V 4 support
24213         * doc/PLATFORMS: added mk88-motorola-sysv4
24214         * ltconfig.in: installed patch from Brian Ford <ford@vss.fsi.com>
24215           to support mk88-motorola-sysv4
24216
24217         * doc/libtool.texi: some cleanups in the libltdl documentation
24218
24219 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
24220
24221         * ltconfig.in (--fallback-echo): Do not put an inline document and
24222         an exec in the same if construct; otherwise the inline document
24223         may not be removed.
24224         * ltmain.in (--fallback-echo): Likewise.
24225         Reported by John David Anglin <dave.anglin@nrc.ca>
24226
24227         * dryrun.test: It would still fail at random times, because `cp'
24228         and `mv' are not guaranteed to preserve the timestamps of the
24229         installed files.  Instead of preserving them, just remove them
24230         before the dry uninstall test.  Redirect dry-run output to stderr,
24231         so that it can be easily separated from the regular output.
24232
24233 1999-04-07 Thomas Tanner  <tanner@gmx.de>
24234
24235         * NEWS: support for moved libraries
24236         * libtool.m4: another DJGPP fix
24237
24238 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
24239
24240         * doc/PLATFORMS: Updated to 1.3 for all platforms I've got.  I'll
24241         make sure 1.3 won't be released unless it passes all tests on
24242         those platforms.
24243
24244         * doc/libtool.texi (Compile mode): Document potential problem and
24245         work-around for `-c -o dir/foo.lo'.
24246
24247         * tests/dryrun.test: The constant modifications of libtool would
24248         cause main.o to be updated at the wrong time; the new approach is
24249         to modify the libtool script so that it enables dry run depending
24250         on whether an environment variable is set or not.  I've also moved
24251         `after' and `before' to a directory deep within $objdir, instead
24252         of creating it in ../tests.
24253         * tests/Makefile.am (CLEANFILES): Removed.
24254
24255 1999-04-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
24256
24257         * tests/dryrun.test: We cannot rely on setting LIBTOOL, because
24258         automake may use sub-makes, and the setting will not be propagated
24259         to them on some makes.  Instead, create a dry version of libtool
24260         and switch between it and the original one before and after dry
24261         runs.
24262         * tests/Makefile.am (CLEANFILES): Added libtool-*, created by
24263         dryrun.test.
24264
24265         * tests/dryrun.test: Use cmp instead of diff.
24266         (before, after): Create them within ../tests.
24267         (libtool): Set to `/bin/sh ./libtool' by default, but use LIBTOOL,
24268         SHELL and top_builddir from the environment if available.  For dry
24269         runs, use "$libtool -n".
24270         * tests/Makefile.am (CLEANFILES): Added before and after.
24271         * ltmain.in: Do not create links to object files in dry runs.
24272
24273 1999-04-06 Thomas Tanner  <tanner@gmx.de>
24274
24275         * ltmain.in: added a missing line of the ILD patch
24276
24277         * NEWS: improved DJGPP support
24278         * doc/libtool.texi: removed hardcode_into_libs documentation
24279         * libtool.m4: some DJGPP fixes
24280         * ltconfig.in: ditto, reverted one of my previous patches: we need
24281           to check for NM, removed the hardcode_into_libs support since
24282           no platform seems to support it
24283         * ltmain.in: some DJGPP fixes, removed the hardcode_into_libs support
24284
24285 1999-04-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
24286
24287         * ltconfig.in (netbsd*, GNU ld): Support a.out shared libraries
24288
24289         * Makefile.am (CVS): allow command-line overriding of cvs
24290
24291         * ltconfig.in (exclude_expsyms): Exclude _GLOBAL_OFFSET_TABLE_ by
24292         default, as most a.out platforms use it, and end up in trouble if
24293         we preload it, so it's safer to rule it out by default, and
24294         special case its removal from exclude_expsyms if someone ever
24295         complains.
24296
24297 1999-04-05 Thomas Tanner  <tanner@gmx.de>
24298
24299         * doc/libtool.texi: reorder tests to reflect execution order,
24300           documented dryrun.test and depdemo*
24301         * ltmain.in (lt_preloaded_symbols): dry-run mode bugfix
24302         * tests/dryrun.test: new test to check whether the dry-run
24303           mode works properly
24304
24305         * demo/run.test: removed the unnecessary test
24306         * demo/Makefile.am: ditto
24307         * ltmain.in: set the DLL search path on cygwin,mingw and os2
24308
24309 1999-04-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
24310
24311         * ltconfig.in (sunos4*, GNU ld): -Bstatic is not enough for
24312         deplibs.test to work with GNU ld; -Bshareable is needed here.
24313
24314         * ltconfig.in (ld_shlibs, amigaos*): Disable shared libs with
24315         native ld too.
24316
24317         * ltconfig.in (sunos4*, GNU ld): Reordered.
24318
24319         * ltconfig.in (archive_cmds, sunos4*): Revert to -Bstatic; the
24320         native linker doesn't even support -Bshareable, only GNU ld does.
24321         Do not use `gcc -shared' in archive_cmds, it breaks deplibs.test.
24322
24323         * ltconfig.in: if ld_shlibs=no, set can_build_shared=no too,
24324         otherwise it will just be disregarded.  This would cause
24325         netbsd/m68k with GNU ld a.out, and certainly many other platforms,
24326         to incorrectly believe that shared libraries were supported, while
24327         archive_cmds was empty, causing shared libraries not to be created
24328
24329 1999-04-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
24330
24331         * NEWS: improved support for AIX and HP/UX
24332
24333 1999-04-03 Thomas Tanner  <tanner@gmx.de>
24334
24335         * NEWS: updated
24336         * libtool.m4: check for main in libm instead of cos
24337         * ltmain.in: cosmetic fixes, don't try to link libraries only once
24338           (although it's not necessary on many platforms and looks ugly...),
24339
24340 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
24341
24342         * ltmain.in (convenience): fixed race condition when more than one
24343         library was linked with the same convenience library by
24344         uniquifying the extract directory.  It is now named after the new
24345         library *and* the old one, and lives in the objdir of the new one.
24346
24347         * ltmain.in (-L*): do not abort just because a directory specified
24348         with -L does not exist; just warn and discard it
24349
24350         * depdemo/l1/Makefile.am (AUTOMAKE_OPTIONS): no-dependencies
24351         * depdemo/l2/Makefile.am (AUTOMAKE_OPTIONS): ditto
24352         * depdemo/l3/Makefile.am (AUTOMAKE_OPTIONS): ditto
24353         * depdemo/l4/Makefile.am (AUTOMAKE_OPTIONS): ditto
24354
24355         * ltconfig.in (archive_cmds, sunos4*): where we used -Bstatic, we
24356         should have been using -Bshareable
24357
24358         * demo/Makefile.am (CLEANFILES): clean EXTRA_* from deplibs-check
24359
24360         * libtool.m4 (LDFLAGS, LIBS): pass them to ltconfig, for the tests
24361         that involve linking
24362         * Makefile.am (LDFLAGS, LIBS, libtool, clibtool): ditto
24363         * tests/Makefile.am (CFLAGS, CPPFLAGS, LDFLAGS, LIBS): set
24364         (LDFLAGS, LIBS, TESTS_ENVIRONMENT): pass them down
24365
24366 1999-04-02  Erez Zadok  <ezk@cs.columbia.edu>
24367
24368         * doc/PLATFORMS: 1.2f ok on various versions of hpux cc
24369
24370 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
24371
24372         * ltconfig.in (link_all_deplibs): set to unknown by default
24373         * ltmain.in: test != no, not = yes
24374         * doc/libtool.texi: document unknown
24375
24376 1999-04-01 Thomas Tanner  <tanner@gmx.de>
24377
24378         * doc/libtool.texi: documented deplibs.test
24379
24380         * demo/Makefile.am: moved testsuite specific declarations to the end,
24381           the deplibs check is now optional
24382         * libltdl/configure.in: read libtool --config only once,
24383           merged AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE from libtool.m4
24384         * libtool.m4: AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE were not
24385           used, lt_dlopen and silent may be empty, AC_SYS_LIBTOOL_CYGWIN
24386           no longer necessary
24387         * ltconfig.in: NM is already checked in libtool.m4,
24388         * ltmain.in: always link all static dependency_libs
24389         * tests/Makefile.am: added deplibs.test
24390         * tests/demo-exec.test, demo-inst.test: removed hell0
24391         * tests/deplibs.test: new test to test the deplibs_check_method
24392
24393 1999-03-31 Thomas Tanner  <tanner@gmx.de>
24394
24395         * ltmain.in: always link a library before its dependency libs
24396         * mdemo/Makefile.am: test -export-symbols-regex
24397
24398 1999-03-30 Thomas Tanner  <tanner@gmx.de>
24399
24400         * doc/libtool.texi: fixed a typo
24401         * libtoolize.in: add the libtool scripts to libltdl.tar.gz
24402         * libtool.m4: don't AC_SUBST(USE_SYMBOL_UNDERSCORE),
24403           AC_CHECK_LIBM sets LIBM, AC_LIBLTDL_INSTALLABLE doesn't work
24404           when libltdl is already installed
24405         * *demo/Makefile.am: use LIBM
24406         * *demo/configure.in: AC_SUBST LIBM
24407         * libltdl/configure.in: use ac_cv_sys_symbol_underscore instead of
24408           USE_SYMBOL_UNDERSCORE
24409         * ltconfig.in: added link_all_deplibs variable
24410         * doc/libtool.texi: document it
24411         * ltmain.in: always search for libname.la - don't eval libname_spec,
24412           when linking libraries against static ones just print a warning
24413           and add them to dependency_libs, add -lc before deplibs,
24414           always link all dependencies of a static library or if
24415           link_all_deplibs is yes, hardcode library paths if
24416           hardcode_into_libs is no, don't link against dependency_libs
24417           that already are deplibs
24418
24419 1999-03-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
24420
24421         * ltconfig.in (aix4*, collect2name): make sure collect2 exists
24422         before running string on it, to avoid errors on old gccs
24423         Reported by Erez Zadok <ezk@cs.columbia.edu>
24424
24425         * ltconfig.in (aix4*, hardcode_libdir_flag_spec): unless we're
24426         using gcc with old collect2, use -b libpath to hardcode the
24427         library search path
24428
24429         * ltmain.in, ltconfig.in: reverted most of the quoting changes
24430         from 1999-03-25; Gary's delay_variable_subst patch from 1999-02-19
24431         obviates it.  Keep only quoting of $PATH, for uniformity with
24432         other systems that already did it
24433
24434 1999-03-29  Gary V. Vaughan  <gary@gnu.org>
24435
24436         * libltdl/ltdl.c (lt_dladdsearchdir): Forgot to mallocate the
24437         extra byte of memory for the teminating NUL, and forgot to
24438         strcpy the original path in to the new memory before appending
24439         the new path compononent.
24440
24441 1999-03-27 Thomas Tanner  <tanner@gmx.de>
24442
24443         * NEWS: updated
24444         * README: updated (BeOS support, no longer shared libraries
24445           support for AmigaOS), cleanups, we have now two mailing lists
24446         * REAMDE-alpha: autogen -> bootstrap, we have now two mailing lists
24447         * THANKS: added Xavier Pianet
24448         * doc/PLATFORMS: BeOS works
24449         * doc/libtool.texi: we have now to two mailing lists,
24450           updated -dlopen self documentation, documented libltdl's license,
24451           put each author in a separate line,
24452           inter-library dependencies on uninstalled libtool libraries are
24453           now supported, cleanups and minor corrections
24454         * libltdl/COPYING.LIB: new file
24455         * libltdl/ltdl.[ch]: added special exception to the LGPL license
24456         * libtool.spec: removed, it was outdated
24457         * Makefile.am: removed libtool.spec
24458         * ltmain.in: use TMPDIR when possible, create a subdirectory
24459           in the temporary directory, added -export-symbols-regex to the help,
24460
24461 1999-03-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24462
24463         * demo/Makefile.am: create a static library, link two libtool
24464         archives with it, then link the program hell0 with both
24465         * demo/hell1.c, demo/hell2.c: dummy files used to create the
24466         libtool archives without introducing symbol conflicts
24467         * tests/demo-exec.test, tests/demo-inst.test: run the new program
24468         * ltconfig.in (irix5*, irix6*, deplibs_check_method): pass_all
24469
24470         * ltmain.in ($PATH): instead of modifying the PATH, better prevent
24471         its expansion the first time *_cmds variables are eval'ed.  Modify
24472         $show within loops that eval them so as to expand variables
24473         * ltconfig.in (*_cmds): quote $ so that they're not expanded by
24474         the first eval
24475
24476 1999-03-25  Gary V. Vaughan  <gary@gnu.org>
24477
24478         * ltmain.in ($PATH):  Expand any tildes in the users path to the
24479         contents of $HOME to avoid problems with *_cmds splitting and
24480         evaluation.
24481
24482 1999-03-24 Thomas Tanner  <tanner@gmx.de>
24483
24484         * TODO: support -dlopen for libraries
24485         * doc/PLATFORMS: Erez Zadok reported that libtool works on bsdi 4.0.1
24486         * doc/libtool.texi (libltdl): libltdl supports BeOS
24487         * libltdl/ltdl.c: shlib_ext was declared even if LTDL_SHLIB_EXT
24488           didn't exist, partially reverted my previous patch: BeOS will
24489           automatically search in ADDON_PATH
24490         * ltmain.in: don't allow relative run-paths, fixed a typo in a warning,
24491           ignore -dlopen self for libraries and objects,
24492           only accept -L paths that exist, minor cleanups,
24493           bugfix: add -lc for normal libraries, not convenicence libraries
24494           removed offensive warnings/comments
24495
24496 1999-03-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
24497
24498         * ltconfig.in (ld_shlibs, amigaos*): disable shared libraries
24499
24500 1999-03-23  Gary V. Vaughan  <gary@gnu.org>
24501
24502         * libltdl/configure.in: the sed expression for finding the shared
24503         library extension used to think the . in [.] for the cygwin
24504         shared_library_names_spec was the start of the extension!!  We now
24505         remove anything in square brackets (assuming that the square
24506         brackets delimit a sed or expr expression which is not part of the
24507         extension) before looking for the extension.
24508
24509         * TODO (cygwin):  food for thought re: mutually dependant dlls.
24510
24511 1999-03-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
24512
24513         * tests/build-relink.test: if we relink and have hardcode_direct,
24514         removing an uninstalled library breaks an uninstalled program
24515
24516         * doc/libtool.texi: documented convenience libraries
24517         * TODO: removed entry about it
24518
24519         * tests/*-unst.test: if directory is not configured, skip it
24520         * tests/demo.test, tests/mdemo.test: unused, removed
24521         * tests/depdemo.test: ditto
24522
24523 1999-03-20 Thomas Tanner  <tanner@gmx.de>
24524
24525         * doc/libtool.texi (link mode): documentation for -module updated
24526         * ltconfig.in: fast-install mode doesn't work for
24527           hardcode_into_libs=yes
24528         * ltmain.in: bugfix: "-dlopen self [-all]-static" wouldn't use
24529           dlopen_self_static, automatically enable -export-dynamic when
24530           using "-dlopen self", always make run-paths absolute,
24531           ignore -lc only on platforms that don't have such a library,
24532           cleanups in the ILD code, find even installed libtool libraries
24533           that were moved, before generating the DLL-import library we need
24534           to set libname, improved hardcoding of shlibpath for libraries,
24535           don't generate an installable pseudo-library for convenience
24536           libraries, bugfix: export_symbols would be removed immediately
24537           before it is used
24538
24539 1999-03-19 Thomas Tanner  <tanner@gmx.de>
24540
24541         * use the same header in all configure.in's and Makefile.am's
24542         * NEWS: improved support for BeOS and Cygwin
24543         * TODO: ILD branch was merged, all internal variables and macros
24544           are now documented
24545         * demo/Makefile.am: use $(LIBS) instead of -lm
24546         * doc/libtool.texi: documented new variable hardcode_into_libs
24547           and thread_safe_flag_spec, renamed all AM_ENABLE/DISABLE_* macros
24548           to AC_*, documented AC_DISABLE_FAST_INSTALL and AC_LIBTOOL_DLOPEN
24549         * libltdl/ltdl.c: added two new error messages (cannot_open_error,
24550           cannot_close_error), use them where approriate,
24551           BeOS support (thanks to Xavier Pianet), on BeOS search modules
24552           additionally in ADDON_PATH
24553         * libtool.m4: rewrote AC_CHECK_LIBM: BeOS and Cygwin don't have
24554           libm and *-ncr-sysv4.3* requires libmw
24555         * ltconfig.in: don't check for LoadLibrary, hardcode dlopen
24556           configuration for BeOS and Cygwin
24557         * ltmain.in: fix sourcing of .la files on Solaris
24558           (patch by Raja R Harinath)
24559
24560 1999-03-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
24561
24562         * ltconfig.in (sunos4*, with_gnu_ld, hardcode_minus_L): remove, we
24563         have -rpath
24564         (aix4*, without_gnu_ld, hardcode_shlibpath_var): unsupported is
24565         default
24566         (hpux9*, hpux10*, hpux11*, archive_cmds): drop +s, unneeded here
24567         (hpux9*, hpux10*, hpux11*, hardcode_libdir_flag_spec): add +s
24568         before +b
24569         (hpux9*, hpux10*, hpux11*, shlibpath_overrides_runpath): since +s
24570         appears before +b, set it to yes
24571         (hardcode_shlibpath_var, hardcode_action): do not use
24572         shlibpath_var to specify the compile-time search path; it loses,
24573         and we may end up linking with pre-installed older versions of
24574         libraries instead of yet-to-be-installed ones
24575         (*, hardcode_direct, hardcode_minus_L): remove entries that set
24576         them to no, that is default
24577
24578         * demo/Makefile.am (hc-direct, hc-libpath, hc-minusL): link with
24579         $$hardcode_libdir_flag_spec, if available, with libdir=$(libdir),
24580         to make sure the hardcode_* variables will produce the expected
24581         results even in the presence of a hardcoding flag; depend on
24582         libhello.la having been installed already
24583         (hc-libflag): link with the installed library, but try to
24584         hard-code the uninstalled one
24585         * doc/libtool.texi: document the changes
24586
24587         * tests/*.test: when a test fails, skip tests that depend on it.
24588         If a certain configuration is not supported, skip all its tests.
24589
24590         * doc/libtool.texi: reorder tests to reflect execution order
24591
24592         * tests/noinst-link.test: new test
24593         * tests/Makefile.am (TESTS): added noinst-link.test
24594         * doc/libtool.texi: document it
24595
24596 1999-03-19  Gary V. Vaughan  <gary@gnu.org>
24597
24598         * ltmain.in (dependency_libs): There is no reason to infer that
24599         the pseudo library is invalid if dependency_libs='' at
24600         install-time, or else libltdl/libltdl.la is invalid!!
24601
24602 1999-03-18  Thomas Tanner  <tanner@gmx.de>
24603
24604         * merged my inter-library dependencies code from the ILD branch:
24605         * NEWS: inter-library dependencies are now supported
24606         * configure.in: add the depdemo subdirectory
24607         * depdemo/*: new demo to demonstrate inter-library dependencies
24608         * tests/depdemo*: new tests for depdemo
24609         * ltconfig.in: added hardcode_into_libs (whether library paths
24610           should be hardcoded into the libraries),
24611           it currently defaults to 'no'
24612         * ltmain.in: new internal 'relink' mode to relink libraries
24613           on platforms with hardcode_into_libs=yes, save command line
24614           arguments in libtool_args, accept relative -L directories,
24615           ignore -lm on BeOS and Cygwin, always ignore -lc,
24616           handle -l, -L and .la arguments later, always make the library
24617           installation directory (-rpath) absolute, in relink mode don't
24618           delete the not-relinked library and exit immediately after relinking,
24619           try to find already-installed libtool libraries that were specified
24620           using -l, support hardcoding of library paths into libraries too,
24621           export shlibpath before linking libraries, and a lot of other
24622           big changes that I don't want to describe here... please read
24623           the source.
24624
24625         * merged Gary's Win32 code from the ILD branch:
24626         * NEWS: Win32 DLLs are now supported
24627         * TODO: removed .a library namespace clash for win32.  It is
24628           now resolved.
24629         * ltconfig.in (cygwin, library_names_spec):  removed $libname.a.
24630           Creating a dll with libtool no longer creates an import library.
24631         * ltconfig.in (extract_expsyms_cmds): Create $objdir if it does
24632           not exist -- i.e. we need to generate import an import library
24633           in a directory which has no libs of its own.
24634         * doc/libtool.texi (old_archive_from_expsyms_cmds,
24635           extract_expsyms_cmds): documented these new variables.
24636         * ltconfig.in (extract_expsyms_cmds): New variable.  Commands to
24637           extract the exported symbol list from a dll.
24638           (old_archive_from_expsyms_cmds): New variable.  Commands to build
24639           an old archive from the extracted expsyms list.
24640         * ltmain.in: run the cmds in extract_expsyms_cmds and
24641           old_archive_from_expsyms_cmds as necessary.
24642         * ltconfig.in (cygwin, old_archive_from_new_cmds): no longer
24643           required.
24644         * ltconfig.in (cygwin, shlibpath_overrides_runpath): I'm not even
24645           sure whether win32 honours the runpath at all when searching for
24646           a dll to load!  Anyway, when set to yes this prevents a gratuitous
24647           warning.
24648         * ltmain.in (deplib): The cygwin environment doesn't actually have
24649           -lm, and although the linker fakes having one, specifiying it to
24650           libtool will break ILD, so we ignore it when generating
24651           dependencies.
24652
24653 1999-03-17  Gary V. Vaughan  <gary@gnu.org>
24654
24655         * doc/PLATFORMS: Thanks to Alexandres changes below, both my
24656         hp boxes pass the entire test suite.
24657
24658 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
24659
24660         * ltconfig.in (hpux*, hardcode_minus_L): should be no, we have +b
24661         (hpux*, hardcode_libdir_separator): set to colon
24662
24663 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
24664
24665         * doc/PLATFORMS: egcs is gcc; updates from Erez Zadok
24666
24667 1999-03-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
24668
24669         * ltmain.in (deplibs, beos*): don't append -lc
24670         Reported by Xavier Pianet <xavier@xingo.com>
24671
24672         * tests/build-relink.test (hardcode_action): when set to relink,
24673         skip the test with lt-hell
24674
24675         * Makefile.am (EXTRA_DIST): add mkstamp
24676         Reported by Xavier Pianet <xavier@xingo.com>
24677
24678         * Makefile.am (EXTRA_DIST): add ChangeLog.0
24679
24680 1999-03-16  Thomas Tanner  <tanner@gmx.de>
24681
24682         * doc/libtool.texi: some minor corrections to the "-dlopen self"
24683           documentation
24684         * tests/Makefile.am: sorted by name, added assign.test
24685         * ChangeLog: started new file
24686
24687         * ltconfig.in: some cosmetical changes
24688         * ltmain.in: ditto
24689
24690 1999-03-15  Alexandre Oliva  <oliva@dcc.unicamp.br>
24691
24692         * configure.in, libtool.spec, NEWS: bump to 1.3a
24693         * Branched for release 1.3 (branch-1-3)
24694         * configure.in, libtool.spec, NEWS: bump to 1.2g
24695
24696         * configure.in, libtool.spec: bump to 1.2f
24697         * doc/PLATFORMS: ditto
24698         * NEWS: libtool 1.2f released
24699
24700         * ltmain.in: silence ``unbug'' :-) detected by sh.test
24701
24702 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
24703
24704         * TODO: we now use full pathnames for `file'
24705
24706 1999-03-14  Thomas Tanner  <tanner@gmx.de>
24707
24708         * TODO: libltdl is now documented
24709         * doc/libltdl.texi (linking with installed libtool libraries):
24710           fixed typo
24711         * doc/libltdl.texi (libltdl): added documentation for building
24712           libtool modules and examples how to embed libltdl
24713         * ltmain.in: don't ignore user-specified run-paths (fixed it
24714           at the right place)
24715
24716 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
24717
24718         * ltmain.in (deplibs_check_method=none): discard -L and -R
24719         switches when testing whether deplibs contains some library
24720
24721 1999-03-14  Erez Zadok  <ezk@cs.columbia.edu>
24722
24723         * config.sub: recognize hppa2.0w, yet to be installed at GNU
24724
24725         * config.guess: minor update for FreeBSD-elf, yet to be installed
24726         at GNU
24727
24728 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
24729
24730         * ltconfig.in (bsdi4*, sys_lib_search_path_spec,
24731         sys_lib_dlsearch_path_spec): fix thinko in variable names; add
24732         standard directories
24733
24734         * ltmain.in (exclude_expsyms): exclude symbols before sorting,
24735         otherwise only the sorted list will have them excluded
24736
24737         * ltconfig.in (file_magic_cmd, file_magic_test_file, freebsd-elf*,
24738         bsdi4*): use full pathnames when possible
24739
24740         * Makefile.am (all-recursive): depend on ACINCLUDE_M4_LIST
24741         (all-local, check-local): remove, unused
24742
24743         * doc/PLATFORMS: updated platforms tested on 1.2f-pre; clean up;
24744         reorder; untabify
24745
24746         * config.guess, config.sub: updated from GNU common
24747
24748         * doc/libtool.texi: notes on thread-safety problems of
24749         libltdl/dlopen on GNU/Linux and FreeBSD
24750
24751         * ltconfig.in (aix3*, aix4*): GNU ld on AIX is very broken: it
24752         cannot create working shared libraries.  Print a warning
24753         suggesting the user not to use it and disable shared libraries.
24754
24755 1999-03-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
24756
24757         * ltconfig.in (global_symbol_to_cdecl): was reset before trying
24758         `symprfx=_', rendering the test with `_' useless
24759
24760         * doc/libtool.texi (AM_PROG_LIBTOOL): eliminate overfull boxes
24761
24762         * doc/libtool.texi: complete dlopening/libltdl documentation
24763
24764         * ltconfig.in (osf3*, osf4*, deplibs_check_method): pass_all does
24765         not really work; use file_magic instead.
24766         (osf3*, osf4*): customize sys_lib_[dl]search_path_spec
24767
24768         * ltconfig.in (file_magic_test_file): new variable; if set, it
24769         will be used as an argument for $file_magic_cmd to test whether
24770         the regex in deplibs_check_method matches its output
24771         (file_magic_cmd): use full pathnames whenever possible
24772
24773         * ltconfig.in (sys_lib_dlsearch_path_spec): new variable, that
24774         lists the system *run-time* search path.  Listed directories are
24775         not implicitly hard-coded into executables.
24776         * ltmain.in: use it, but *never* discard -R flags
24777         * doc/libtool.texi: document it
24778         * NEWS: ditto
24779         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
24780
24781         * tests/sh.test: look for `$Xsed' without `$echo "X...'
24782         * ltconfig.in, ltmain.in: fixed a few such occurrences
24783
24784         * ltmain.in (-static, -all-static): revert March 11's patch, I was
24785         barking up the wrong tree
24786
24787 1999-03-12  Thomas Tanner  <tanner@gmx.de>
24788
24789         * libltdl/ltdl.c: removed FILENAME_MAX since LTDL_FILENAME_MAX
24790           is sufficient and doesn't break HP/UX
24791
24792 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
24793
24794         * ltconfig.in: (global_symbol_pipe) extract symbol tag from the
24795         output of NM too
24796         (global_symbol_to_cdecl): new variable; convert the output of
24797         global_symbol_pipe to valid C declarations; on HP/UX, convert
24798         text symbols to function declarations
24799         * libtool.m4: similar modifications
24800         * doc/libtool.texi: document new variable
24801         * ltmain.in: use global_symbol_to_cdecl to generate lt_dlpreopened
24802         symbols; avoid extracting symbol lists from dlpreopened files
24803         twice; do not filter symbols from dlpreopened libraries
24804         * TODO: fixed HP/UX dlpreopening problem
24805
24806         * ltmain.in (-static, -all-static): set dlopen_self to
24807         $dlopen_self_static regardless of link_static_flag or pic_flag
24808
24809         * ltmain.in: FreeBSD bug that needs symbol table compiled with
24810         -fPIC is fixed in release 3.1; use it only for 2.* and 3.0
24811
24812 1999-03-11  Thomas Tanner  <tanner@gmx.de>
24813
24814         * ltmain.in: when building a library it doesn't make
24815           sense to remove a relinked program ("lt-" prefix)
24816
24817 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
24818
24819         * mdemo/main.c (main, test_dl, test_dlself): propagate error
24820         conditions better, to avoid false positives
24821
24822         * */configure.in: AC_SUBST(LIBTOOL_DEPS)
24823         * */Makefile.am $(OBJECTS): depend on libtool
24824         (libtool): rebuild automatically
24825
24826         * ltconfig.in: set dlopen_* variables to unknown when appropriate
24827         * ltmain.in: only emit warning about lack of AC_LIBTOOL_DLOPEN if
24828         *all* dlopen_* variables are set to unknown
24829
24830 1999-03-11  Thomas Tanner  <tanner@gmx.de>
24831
24832         * ltmain.in: delete the old output files (incl. the relinked binary)
24833           before linking.
24834
24835         * ltconfig.in: replaced `configure' with $progname and all
24836           line numbers with @LINENO@
24837
24838 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
24839
24840         * libltdl/ltdl.c (strdup): cannot return str when it's NULL
24841         because of const correctness
24842
24843 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
24844
24845         * libltdl/ltdl.c (strdup): always use our own, because the
24846         standard strdup won't use lt_dlmalloc
24847
24848         * ltconfig.in (dlfcn.h): function definition may cause warnings;
24849         define variable instead
24850
24851         * ltmain.in: properly create an export file for a program,
24852         avoiding error messages about not finding it
24853
24854         * TODO: need to document AC_LIBLTDL_*; static self dlopening
24855         problem fixed
24856
24857         * libtool.m4 (AC_LIBTOOL_DLOPEN): just set lt_dlopen=yes
24858         (AC_LIBTOOL_SETUP): if lt_dlopen=yes, add --enable-dlopen to
24859         libtool_flags; drop --enable-dlopen-self
24860         * ltconfig.in: perform all the dirty work of testing for dlopening
24861         support, because we need platform-dependent equivalents for
24862         -export-dynamic, for self dlopening, and -static, for static self
24863         dlopening
24864         (dlopen_self_static): new configuration variable that is set to
24865         yes only if static programs can dlopen themselves
24866         * ltmain.in (-static, -all-static): dlopen_self=dlopen_self_static
24867
24868         * libltdl/configure.in (libltdl_cv_need_uscore): do not assume
24869         dlfcn.h and LTDL_LAZY exist; use LTDL_GLOBAL and LTDL_LAZY_OR_NOW.
24870         This test is likely to fail if self-dlopening does not work,
24871         especially because we do not link the program with
24872         -export-dynamic.  Let's just hope that platforms whose symbol
24873         names start with underscores will also accept underscores for
24874         dlopen.  We should probably use libtool to compile and link this
24875         test, so that we can use -export-dynamic.
24876
24877         * mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h
24878
24879         * configure.in: fix AC_OUTPUT_COMMANDS for ltconfig and ltmain.sh
24880         so that they work if srcdir is relative too
24881
24882         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
24883         avoid introducing multiple --enable options when re-running
24884         config.status
24885         * libltdl/configure.in: if enable_ltdl_* is not set, assume no
24886         * configure.in: if enable_ltdl_install is not set, enable it
24887
24888         * libltdl/configure.in: only assume implicit installation if
24889         libltdl was libtoolized.  If not, print a warning message
24890         suggesting the use of --enable-ltdl-install or of one of the
24891         AC_LIBLTDL_* macros.
24892
24893         * libtool.m4 (AC_LIBTOOL_SETUP): new macro, that does all the
24894         configure-work that AC_PROG_LIBTOOL used to do; add
24895         --cache-file=$cache_file to libtool_flags
24896         (AC_PROG_LIBTOOL): call AC_LIBTOOL_SETUP, save the cache, run
24897         ltconfig and reload the cache
24898         * configure.in: run AC_LIBTOOL_SETUP, then set LIBTOOL_FLAGS to
24899         libtool_flags
24900         * ltconfig.in: support --cache-file switch.  If it is used, load
24901         the cache in the beginning and save it just before terminating
24902
24903         * tests/Makefile.am (TESTS): run demo-nofast before demo-shared
24904
24905         * configure.in: create ltconfig and ltmain.sh at the end of
24906         config.status, if they do not exist.  This fixes the bootstrap
24907         problem reported by Erez Zadok <ezk@cs.columbia.edu>
24908
24909 1999-03-10  Thomas Tanner  <tanner@gmx.de>
24910
24911         * NEWS: sorted by importance
24912         * Makefile.am: set LIBTOOL_FLAGS when generating libtool
24913         * configure.in: check for dlopen support and set LIBTOOL_FLAGS
24914           accordingly
24915
24916         * configure.in: fix spacing for --disable-ltdl-install,
24917           always configure libltdl, add libltdl/acinclude.m4 to
24918           ACINCLUDE_M4_LIST, disable installation of libltdl if necessary
24919         * libltdl/Makefile.am: set version info for libltdl.la
24920         * libltdl/configure.in: don't check whether
24921           enable_ltdl_convenience/install was set so that libltdl
24922           can be used as independent package (libltdl.tar.gz) without
24923           the need to use --enable-ltdl*
24924         * libltdl/ltdl.c: minor cleanups, allocate the line cache
24925           dynamically (lt_dlopen)
24926
24927 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
24928
24929         * libltdl/ltdl.c (lt_dlopen): some preprocessors choke if the `#'
24930         of `#define' is not in column 1; let's go back to fortran! :-)
24931         Add #undefs too, to avoid potential warnings or errors.
24932
24933 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
24934
24935         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
24936         renamed convenience libltdl, dropped toinst hack for installable
24937         * libltdl/Makefile.am: ditto
24938         * libltdl/configure.in: ditto; abort if none of the macros is used
24939
24940         * ltmain.in: $output_objdir/$objdir/ -> $output_objdir/lt-
24941
24942 1999-03-09  Thomas Tanner  <tanner@gmx.de>
24943
24944         * libltdl/ltdl.c (lt_dlopen): don't hardcode the length of the
24945           constant strings
24946
24947 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
24948
24949         * Makefile.am (install-data-hook): install libltdl as a directory,
24950         not as a tar-file, so that we do not modify the build tree at make
24951         install time
24952         * libtoolize.in (ltdl, ltdl_tar): update
24953
24954         * configure.in, Makefile.am, NEWS: install libltdl by default
24955
24956         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
24957         new macros
24958         * NEWS: ditto
24959         * libltdl/configure.in: if none of the new macros or configure
24960         arguments are used, warn and build convenience library only
24961         * libltdl/Makefile.am: conditionally build convenience libltdl.la
24962         * mdemo/configure.in: use AC_LIBLTDL_CONVENIENCE
24963         * mdemo/Makefile.am: refer to @LIBLTDL@
24964
24965 1999-03-09  Gary V. Vaughan <gary@gnu.org>
24966
24967         * NEWS: updated.
24968
24969 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
24970
24971         * ltmain.in: extract symbols from program objects to nlist first,
24972         then translate them to the export_symbols format.  Now it works,
24973         but it appears to be needlessly extracting the symbol list from
24974         dlpreopened libraries twice
24975
24976         * ltmain.in: temporarily disable dlopen_self when linking with
24977         -static or -all-static, until we figure out how to test whether it
24978         works at configure time
24979
24980         * TODO: remember to fix this later
24981
24982         * tests/build-relink.test: when hell is expected to fail, run it
24983         within a subshell and redirect stderr to stdout, so that dynamic
24984         linker errors are only printed in verbose mode
24985
24986         * ltmain.in (hardcode_libdir_separator, compile_rpath,
24987         finalize_rpath): only substitute hardcode_libdir_flag_spec if
24988         hardcode_libdirs is non-empty
24989
24990         * libtool.m4 (AC_LIBTOOL_DLOPEN): do not depend on the existence
24991         of dlfcn.h nor on the definition of RTLD_LAZY
24992
24993         * tests/build-relink.test: hellT was renamed to lt-hell
24994
24995         * libltdl/Makefile.am (@TOINST@/libltdl.la): do not hide the
24996         command that creates the TOINST directory; remove `-o $@' from the
24997         LINK command, $(LINK) already contains it.
24998
24999 1999-03-08  Thomas Tanner  <tanner@gmx.de>
25000
25001         * doc/libtool.texi (tests): documented demo-nofast.test and
25002           renamed cdemo* to demo*
25003
25004 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
25005
25006         * libltdl/Makefile.am, libltdl/configure.in, mdemo/Makefile.am:
25007         libltdl must not be renamed; if there's a problem with the install
25008         option, let's fix it, not just work around it by breaking code of
25009         users of the convenience library
25010
25011         * tests/build-relink.test: link broken libhello.la with at least
25012         one libtool object
25013
25014 1999-03-08  Thomas Tanner  <tanner@gmx.de>
25015
25016         * TODO: updated (libltdl build problem fixed)
25017         * doc/libtool.texi (libltdl interface): removed the line which
25018           promised that lt_dlopen will return NULL if it can't resolve all
25019           symbols
25020         * libltdl/Makefile.am, libltdl/configure.in: fixed build problem:
25021           renamed the convenience library to libltdlc.la and the
25022           installed version to libltdl.la
25023         * ltmain.in (wrapper script): replaced the "T" suffix of the program
25024           file name with a "lt-" prefix
25025         * mdemo/Makefile.am: use libltdlc.la
25026         * tests/Makefile.am, tests/demo-nofast.test: added demo to
25027           test --enable-fast-install=no
25028
25029 1999-03-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
25030
25031         * tests/Makefile.am (TESTS): run hardcode before build-relink
25032         trashes libhello.la
25033         * tests/hardcode.test (need_prefix): set to yes so that _inst is
25034         not removed
25035
25036         * ltmain.in (compile_command): append finalize search path to
25037         compile search path
25038
25039         * tests/build-relink.test: new; check shlibpath_overrides_runpath
25040         * tests/Makefile.am (TESTS): add build-relink.test; remove
25041         hardcode.test duplicates
25042         * doc/libtool.texi: document it
25043
25044         * ltmain.in (relink_command): do not prepend cd `pwd` to it, the
25045         scripts already enters the correct directory, and expanding the
25046         pathname would prevent the build tree from moving
25047
25048         * ltconfig.in (enable_fast_install): force it to no only if we
25049         need relink; in the other cases, set it to needless
25050         * ltmain.in (fast_install): if needless, set relink_command empty
25051         * doc/libtool.texi (fast_install, shlibpath_overrides_runpath):
25052         document the new behavior
25053
25054         * ltconfig.in (enable_fast_install): test whether it can be forced
25055         off after shlibpath_overrides_runpath and enable_shared are set
25056
25057 1999-03-07  Thomas Tanner  <tanner@gmx.de>
25058
25059         * TODO: updated
25060         * NEWS: updated
25061
25062         * TODO: scheduled some items for next release/future
25063         * demo/configure.in: use AC_LIBTOOL_DLOPEN
25064         * libtool.m4: added AC_ENABLE/DISABLE_FAST_INSTALL macro
25065         * ltconfig.in: added --disable-fast-install flag
25066         * ltmain.in: partially reverted Alexandre's patch and implemented
25067           on-demand linking in such a way that the old developer-friendly
25068           linking style is optional,
25069           don't hardcode library paths that are in the system search path,
25070           fixed a typo in lib_search_path,
25071           implemented -export-symbols-regex for programs
25072
25073 1999-03-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
25074
25075         * libltdl/ltdl.c (LTDL_LAZY_OR_NOW): renamed from LTDL_NOW; prefer
25076         LAZY loading because it's much faster and NOW is apparently
25077         partially broken on FreeBSD
25078         Reported by Archie Cobbs <archie@whistle.com>
25079
25080         * ltconfig.in (archive_expsym_cmds, solaris, without_gnu_ld):
25081         $lib.exp already starts with $objdir/
25082         Reported by Godmar Back <gback@cs.utah.edu>
25083
25084         * ltmain.in (freebsd): compile symbol table file with pic_flag
25085         only on FreeBSD and when not static linking; it's been causing
25086         trouble on platforms such as OpenBSD.
25087
25088 1999-02-26  Gary V. Vaughan  <gary@gnu.org>
25089
25090         * libtool.m4 (cygwin): s/\\(mingw\\|cygwin\\)32/\\1/g.  Must've
25091         missed this file when I changed to cygnus' new sanction name.
25092
25093         * ltconfig.in (sub_uncdrive): removed.  This won't work with
25094         the next version of cygwin.
25095         (sub_uncdir): removed. We use <drive>:/path/to/executable now.
25096         * libtool.m4 (AC_PROG_LD): removed sub_uncdrive and sub_uncdir.
25097
25098 1999-02-25  Thomas Tanner  <tanner@gmx.de>
25099
25100         * TODO: added items for next alpha release, ILD etc.
25101         * libltdl/ltdl.c: removed unnecessary check from presym_sym,
25102           fixed bug in lt_dlclose, allow lt_dlopenext(NULL),
25103           set deplibs for lt_dlopen(NULL)
25104
25105 1999-02-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
25106
25107         * ltmain.in (file_magic_regex): sed `10q' is faster than `11,$d'
25108
25109 1999-02-22  Thomas Tanner  <tanner@gmx.de>
25110
25111         * ltconfig.in (dlopen, dlopen_self): default is unknown
25112         * ltmain.in: fixed -dlopen self, print a warning
25113           if -dlopen is used without AC_LIBTOOL_DLOPEN
25114         * mdemo/Makefile.am: use -dlopen self
25115
25116 1999-02-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
25117
25118         * ltmain.in: added missing mkdir $progdir for on-demand executable
25119
25120         * ltmain.in: create on-demand executable as $progdir/$$-$program,
25121         and rename it to $progdir/$program only when it's finished, to
25122         avoid race conditions.  We can still get the program linked
25123         multiple times, if multiple instances are started simultaneously
25124         and the program does not exist, but they are very unlikely to
25125         interfere with each other.  There's still a possibility that one
25126         process removes the $program another has just created, and doesn't
25127         replace it before the other tries to run it, in a system whose
25128         `mv' is not atomic, so it will $rm then $mv, but so what? :-)
25129         Locking files have been avoided to prevent dead-locks in case they
25130         are left over after a reboot or crash.
25131
25132         * TODO: removed ILD, soon to be merged, and added convenience
25133         libraries docs
25134
25135         * ltconfig.in (irix5*, irix6*, shlibpath_overides_runpath): yes
25136
25137         * ltmain.in: remove on-demand executable in the proper place, and
25138         just warn if it can't be removed; add wrapper code to test whether
25139         the install-executable is newer than the build-executable, to
25140         relink it when it appears to be out-of-date
25141
25142         * libltdl/configure.in: check for dld.h
25143         * libltdl/ltdl.c: include dld.h
25144         (dld_open) it's spelled memory_error, not no_memory_error
25145         Reported by Stefan Burstroem <f94sbu@efd.lth.se>
25146
25147         * ltmain.in: fix typos in my last change (s/ocmpile/compile/)
25148
25149 1999-02-21  Thomas Tanner  <tanner@gmx.de>
25150
25151         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
25152           when dlopening the executable
25153         * libtool.m4 (AC_LIBTOOL_DLOPEN): removed the redundant "yes: "
25154           prefix for lt_cv_dlopen, renamed lt_cv_dlopen_LIBS
25155           to lt_cv_dlopen_libs (more consistent)
25156         * ltmain.in: implemented -dl[pre]open self, necessary for
25157           lt_dlopen(NULL), generation of exported symbols was broken
25158
25159 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25160
25161         * ltmain.in: avoid duplication of -L switches, it sometimes breaks
25162         IRIX 5.2's linker
25163
25164         * ltconfig.in (freebsd*, finish_cmds): expand objformat here
25165         Reported by Vladimir Kushnir <kushn@mail.kar.net>
25166
25167 1999-02-20  Vladimir Kushnir <kushn@mail.kar.net>
25168
25169         * ltconfig.in (freebsd-elf*, need_version, need_lib_prefix): no
25170         (freebsd-elf*, library_names_spec): add $libname.so instead of
25171         $libname.so$versuffix; add $libname$release.so
25172
25173 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25174
25175         * doc/libtool.texi: remove ticks from menu items; it breaks TeX
25176         Reported by Erez Zadok <ezk@cs.columbia.edu>
25177
25178         * ltmain.in: fixes for export-symbols dry-run
25179
25180         * ltconfig.in (shlibpath_overrides_runpath): new variable;
25181         determines whether LD_LIBRARY_PATH or equivalent can be used to
25182         override a hard-coded library search path; default to unknown
25183         (linux-gnu*): set it to no
25184         (solaris*, sunos4*): set it to yes
25185         * ltmain.in (build_libdirs_flags, build_libdirs, build_rpath): if
25186         shlibpath_overrides_runpath is not yes, arrange that wrapper
25187         scripts create, on demand, programs that use uninstalled libraries
25188
25189         * doc/libtool.texi: document it
25190
25191         * libtool.m4 (AC_LIBTOOL_DLOPEN): check for dlopen in libc before
25192         trying in dl.  Add the actual dlopening type to lt_cv_dlopen, and
25193         add any needed libraries to lt_cv_dlopen_LIBS.  Add test for
25194         MS-Windows' LoadLibrary.  Check whether a program can dlopen
25195         itself only if we really have dlopen(), not some equivalent
25196         function, but leave room for testing with other mechanisms.
25197         (AC_PROG_LIBTOOL): assume some form of dlopen, but not
25198         dlopen(NULL), is available if AC_LIBTOOL_DLOPEN is not used, for
25199         backward compatibility.
25200
25201 1999-02-20  Archie Cobbs  <archie@whistle.com>
25202
25203         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
25204         where appropriate, when dlopening a non-libtool library
25205
25206 1999-02-19  Gary V. Vaughan  <gary@gnu.org>
25207
25208         * ltconfig.in (export_symbols_cmds): renamed from
25209         export_symbols_cmd.
25210         (cygwin, mingw): Be sure to compile the ltdll.c object before
25211         extracting the exported symbol list.  Extract only the names
25212         of the exported symbols from the def file [otherwise we might
25213         run into trouble with -export-symbols-regex].
25214         (archive_expsym_cmds): Regenerate the def file from the symbol
25215         export list.
25216         (delay_variable_subst): New sed expression to allow us to delay
25217         evaluation of $foo in a double_quote_subst evaluated variable by
25218         using \$.
25219         * ltmain.in (export_symbols_cmds): evaluate each ~ delimitted cmd
25220         separately.
25221         * doc/libtool.texi (libtool script contents): new paragraph to
25222         explain the difference between _cmd and _cmds suffixes for
25223         variable names.
25224         (export_symbols_cmds): renamed from export_symbols_cmd.
25225
25226 1999-02-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
25227
25228         * ltconfig.in (ld_shlibs): move -soname and similar flags to the
25229         end of archive_cmds and archive_expsym_cmds, so as to prevent
25230         gcc's collect2 from inserting an object file between -soname and
25231         the library name
25232
25233         * ltconfig.in (openbsd*, netbsd*, library_names_spec): append
25234         alternate name without ${release}, otherwise build fails when
25235         -release is used
25236
25237 1999-02-18  Gary V. Vaughan  <gary@gnu.org>
25238
25239         * ltconfig.in (archive{,_sym}_commands): Be careful not to
25240         re-export the dll entry points DllMain@12, _cygwin_dll_entry@12 and
25241         _cygwin_noncygwin_dll_entry@12 to avoid bugs with the wrong entry
25242         function being called with inter-dll dependencies.
25243         Reported by DJ Delorie <dj@delorie.com>
25244         * THANKS: Added DJ Delorie, since his code inspired the impgen.c
25245         program and because he has patiently answered all of the
25246         irritating dll and win32 questions I have fired at him.
25247
25248         * ltmain.in (version_type):  Oops.  Irix versioning implies that
25249         major version numbers are 1 based (not zero based).  Fixed.
25250
25251         * ltmain.in (version_type): Implement irix versioning.
25252         * ltconfig.in (irix{5,6}*): Use new irix shared object versioning.
25253         * TODO: remove irix versioning from TODO list.
25254
25255         * ltmain.in (impgen.c): Added a new embedded C file that can be
25256         used under win32 to extract a def file (symbol export list) from a
25257         dll that has none.  Code to use it might need to wait for the ILD
25258         merge before it will be useful...
25259
25260 1999-02-18  Thomas Tanner  <tanner@gmx.de>
25261
25262         * TODO: updated
25263         * autogen: only libltdl needs autoheader
25264         * doc/libtool.texi (link mode): documented -export-symbols-regex
25265           and updated -export-symbols
25266         * doc/libtool.texi (script contents): documented
25267           always_export_symbols, export_symbols_cmd, exclude_expsyms,
25268           include_expsyms, dlopen and dlopen_self
25269           more detailed description of need_lib_prefix
25270         * ltconfig.in: a "'" was missing in the default value
25271           of export_symbols_cmd
25272         * ltmain.in: implemented -export-symbols-regex
25273
25274 1999-02-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
25275
25276         * ltconfig.in: (freebsd2*, sunos4*, exclude_expsyms): exclude
25277         _GLOBAL_OFFSET_TABLE_
25278         * ltmain.in: implement exclude_expsyms with egrep
25279
25280         * libltdl/ltdl.c (lt_dlmalloc, lt_dlfree): SunOS' cc can't cope
25281         with argument lists, we __P even in the definition
25282
25283 1999-02-15  Thomas Tanner  <tanner@gmx.de>
25284
25285         * cdemo/Makefile.am: renamed *foo1 to *foo, removed $(MATH_LIB)
25286         * cdemo/foo1.c: renamed to foo.c
25287         * libltdl/ltdl.c: eliminated lt_dltype, in presym_open():
25288           search for @PROGRAM@ if filename == 0, in lt_dlopen():
25289           fixed bug for filename == 0
25290         * libltdl/ltdl.h: use __P macro for lt_dlmalloc/free
25291         * libtool.m4: new macro AC_LIBTOOL_DLOPEN: checks for dlopen
25292           and dlopen(NULL) support
25293         * ltconfig.in: added new variables dlopen and dlopen_self,
25294           --enable-dlopen[-self] flags for AC_LIBTOOL_DLOPEN
25295         * ltmain.in: use dlopen[_self], dlpreopen files if there's no
25296           dlopen support, build lt_preloaded_symbols only if
25297           -dl[pre]open was used, include program symbols if -export-dynamic
25298           was specified and there's no dlopen(NULL) support
25299         * mdemo/configure.in: use AC_LIBTOOL_DLOPEN
25300         * mdemo/main.c: demonstrate lt_dlopen(0)
25301
25302 1999-02-15  Gary V. Vaughan  <gary@gnu.org>
25303
25304         * demo/dlmain.c (_WIN32): The lt_symlist structure is now const,
25305         so my original horrible temporary win32 hack no longer worked.
25306         Here is a new horrible temporary hack to prevent helldl from SEGVing
25307         on win32.  I will fix this properly when we figure out how to do
25308         data exports from dlls.
25309
25310 1999-02-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25311
25312         * libtool.m4 (AC_CHECK_LIBM): do not set MATHLIB or AC_SUBST it,
25313         this has a negative side-effect of causing automake to add MATHLIB
25314         to every single Makefile.  Let's use plain AC_CHECK_LIB, so that
25315         LIBS get set, until we find a better alternative
25316         * *demo/Makefile.am: remove $(MATHLIB)
25317
25318         * libltdl/configure.in: add a DESCRIPTION argument to AC_DEFINEs
25319         where appropriate, so as to get rid of acconfig.h
25320         * libltdl/acconfig.h: removed
25321
25322 1999-02-13  Thomas Tanner  <tanner@gmx.de>
25323
25324         * *demo/Makefile.am: use $(MATHLIB)
25325         * *demo/configure.in: use AC_CHECK_LIBM
25326         * doc/libtool.texi: renamed file_magic_command to file_magic_cmd,
25327           renamed archive_sym_cmds to archive_expsym_cmds
25328         * ltconfig.in: ditto
25329         * ltmain.in: ditto
25330         * libltdl/ltdl.c: use lt_dlmalloc/free
25331         * libltdl/ltdl.h: define lt_dlmalloc/free
25332         * libtool.m4: added AC_CHECK_LIBM macro
25333         * ltconfig.in: renamed archive_sym_cmds to archive_expsym_cmds,
25334           added always_export_symbols, export_symbols_cmd, exclude_expsyms,
25335           include_expsyms, removed archive_cmds for cygwin/mingw and AIX,
25336           on Solaris store the exported symbols list in objdir
25337         * ltmain.in: allow -export-symbols for modules, use thread_safe flag,
25338           add include_expsyms to the exported symbols
25339
25340 1999-02-12  Gary V. Vaughan  <gary@gnu.org>
25341
25342         * libltdl/ltdl.h (_LTDLL_EXTERN): libltdl is no longer linked as a
25343         shared library, so the _declspec's were preventing the linker from
25344         resolving symbols on win32.  They have been removed now.
25345
25346 1999-02-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
25347
25348         * ltmain.in: don't try to read objdir/libname.la before it is
25349         created!
25350
25351         * ltmain.in: create libname.lai at link time, not at install time,
25352         but still create it at install time if it is missing
25353         Reported by Akim Demaille <demaille@inf.enst.fr>
25354
25355         * libltdl/ltdl.c (tryall_dlopen): strcmp filenames was reversed
25356
25357 1999-02-11  Thomas Tanner  <tanner@gmx.de>
25358
25359         * autogen: libltdl needs autoheader
25360         * demo/Makefile.am: renamed hell.debug to hell.static
25361           (we're demonstrating static linking, not debugging)
25362         * tests/demo*: ditto
25363         * doc/libtool.texi (libltdl): documented new lt_dlopen(NULL)
25364           feature
25365         * libltdl/acconfig.h: required for config.h
25366         * libltdl/configure.in: use config.h
25367         * libltdl/ltdl.c: use config.h, support lt_dlopen(NULL)
25368           (returns a handle for the program itself)
25369         * ltconfig.in: minor reformatting
25370         * ltmain.in: in lt_preloaded_symbols always define
25371           the program's symbols first, for -export-dynamic list all
25372           program symbols together, -export-symbols was broken for
25373           programs, minor reformatting
25374         * mdemo/Makefile.am: renamed mdemo.debug to mdemo.static
25375         * tests/mdemo*: ditto, mdemo.test was completely broken
25376
25377 1999-02-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
25378
25379         * ltconfig.in (irix5*, irix6*, osf3*, osf4*): do not use
25380         -set_version in archive_cmds if verstring is empty
25381         (irix6*, shlibpath_var, sys_lib_search_path-spec,
25382         deplibs_check_method): set appropriate values depending on
25383         selected ABI, -32, -n32 or -64, as set in LD by libtool.m4
25384         (uts4*): remove dot between .so and versuffix
25385
25386 1999-02-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
25387
25388         * ltconfig.in (irix5*, irix6*, deplibs_check_method): use
25389         file_magic for inter-library dependency tracking
25390
25391         * ltconfig.in (irix5*, hardcode_libdir_separator): set it to a
25392         colon, because on IRIX 5 only the last -rpath switch prevails, and
25393         it can be a list of colon-separated directories.  This change will
25394         affect irix6 too, but that's not a problem.
25395
25396         * ltconfig.in (irix5*, library_names_spec): add soname_spec,
25397         otherwise we can't dlopen
25398
25399 1999-02-08  Thomas Tanner  <tanner@gmx.de>
25400
25401         * ltconfig.in: according to Marcus Sundberg <mackan@stacken.kth.se>
25402           HP/UX, IRIX, OpenBSD, Digital Unix and SunOS support
25403           need_version=no and need_lib_prefix=no,
25404           fixed a bug in Solaris' archive_sym_cmds
25405
25406 1999-02-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
25407
25408         * libtool.m4 (ac_cv_sys_global_symbol_pipe): accept TAB in
25409         addition to space as separator, and allow more than one space
25410         between the symbol code and the symbol name; HP/UX's nm, for
25411         example, uses two spaces
25412         * ltconfig.in (global_symbol_pipe): ditto
25413         (bsdi4, deplibs_check_method): variable name was misspelled
25414         * libltdl/configure.in (libltdl_cv_preloaded_symbols): rewrite
25415         test, so as not to depend on the way global_symbol_pipe is
25416         initialized; the current test would get false positives, as
25417         global_symbol_pipe was initialized `x=""', not `x='
25418
25419         * libltdl/ltdl.c (find_module): initialize filename if dir is NULL
25420         Reported by Godmar Back <gback@cs.utah.edu>
25421
25422 1999-02-04  Godmar Back  <gback@cs.utah.edu>
25423
25424         * libltdl/ltdl.c (lt_dlopenext): missing space for terminator when
25425         allocating memory for shlib_ext
25426
25427 1999-02-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
25428
25429         * libltdl/ltdl.c (lt_dlopenext): tmp would be trashed if shlib_ext
25430         was longer than 3 characters
25431
25432 1999-02-02  Gary V. Vaughan  <gary@gnu.org>
25433
25434         * ltconfig.in: new config.guess returns *-*-cygwin now instead of
25435         *-*-cygwin32.  sed -e 's%\(cygwin\|mingw\)32%\1%g' ltconfig.in
25436         * ltmain.in:   sed -e 's%\(cygwin\|mingw\)32%\1%g' ltmain.in
25437
25438         * ltconfig.in (hardcode_libdir_flag_spec, allow_undefined_flag,
25439         archive_cmds, archive_sym_cmds, old_archive_from_new_cmds):
25440         removed duplication of config by assuming that `test $with_gcc =
25441         yes' implies gnu ld, otherwise MSVC++ (which I haven't tested
25442         since I inheritted the code from Ian Lance Taylor btw!) is implied.
25443
25444 1999-01-28  Gary V. Vaughan  <gary@gnu.org>
25445
25446         * ltmain.in: Reverted this change of Alexandre's from the
25447         1999-01-25; "don't try to use .o instead of .lo just because
25448         there's no PIC flag.  It loses if --disable-static, and there's
25449         not much point if we're referring to the same file anyway...",
25450         because not all linkers will accept .lo object names.
25451         * ltmain.in: In the case where --disable-static is specified (as
25452         noted in Alexandre's log entry), we just link some .o files to
25453         prevent the original error.
25454         Reported by Andrey Slepuhin <pooh@msu.ru>
25455
25456 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
25457
25458         * libtoolize.in: search for A[MC]_PROG_LIBTOOL, not
25459         AM_PROG_LIBTOOL
25460         Reported by Jeff Garzik <jgarzik@pobox.com>
25461
25462 1999-01-27  Gary V. Vaughan  <gary@gnu.org>
25463
25464         * THANKS: Now that we have a policy, applied it to the existing
25465         list.  This in no way demeans the work of those people removed
25466         from the THANKS file, who are still credited in the ChangeLogs and
25467         without who's work, libtool would not work so well on many
25468         platforms, but serves to highlight the outstanding and continued
25469         contribution the remaining people have made.  And I quote, "We
25470         reserve THANKS for people who have made major contributions, and
25471         leave the credit to the others for the ChangeLog only."
25472
25473         * THANKS: added Sam Vilain.
25474         * ltconfig.in ($echo):  When using printf to replace echo the shell
25475         expands %s\n to %sn.  Changed to use "%s\n" (with quotes).
25476         Reported by Sam Vilain <sam.vilain@nz.unisys.com>
25477
25478 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
25479
25480         * libltdl/ltdl.c (find_file): fix endless loop condition
25481         (find_module): filename allocation was off by 1
25482
25483         * libltdl/Makefile.am (distclean-local): renamed from
25484         distclean-hook, that didn't work
25485
25486         * libltdl/ltdl.c (lt_dlopen, non-.la): find_file now returns 0 on
25487         failure
25488
25489         * Makefile.am (ltconfig, ltmain.sh): some broken makes don't like
25490         macros in targets; replace $(srcdir) with @srcdir@
25491         * configure.in (ACINCLUDE_M4_LIST): same problem; expand $srcdir
25492
25493         * libltdl/Makefile.am (@TOINST@/libltdl.la): if installation is
25494         enabled, create to-be-installed libltdl.la within @TOINST@
25495         directory
25496         (noinst_LTLIBRARIES): even if installation is enabled, build
25497         convenience libltdl.la, otherwise builds of random packages may
25498         fail if the user happens to enable installation
25499         (distclean-hook): wipe out $(TOINST)
25500         * libltdl/configure.in: set TOINST and LIBLIBS as appropriate;
25501         don't set NOINSTLIBS any more
25502         * mdemo/Makefile.am: use libltdl.la
25503
25504         * libltdl/ltdl.c (find_file): oops, filenamesize was miscomputed
25505
25506         * libltdl/ltdl.c (find_file): allocate filename dynamically
25507
25508         * libltdl/configure.in (AC_PROG_LIBTOOL): automake does not
25509         recognize it and fail, better keep using AM_PROG_LIBTOOL until the
25510         next release of automake
25511         * demo/configure.in, cdemo/configure.in: ditto
25512         * depdemo/configure.in, mdemo/configure.in: ditto
25513
25514         * libltdl/ltdl.c: make all global strings char[], not char*; check
25515         that all calls to malloc() are properly cast
25516         (strdup, strchr, strrchr, trim, free_vars): declare as inline
25517         (find_module): allocate filename dynamically; support null dir
25518         (free_vars): free dir and name only if non-null
25519         (lt_dlopen): keep dir as NULL if not given; fix expression that
25520         calculated the size of name; only free and name if non-null
25521         (lt_dlopenext): allocate tmp dynamically
25522
25523         * configure.in (pkgdatadir): expand ${PACKAGE} at configure-time,
25524         just like automake does
25525
25526         * configure.in (pkgdatadir): define pkgdatadir explicitly, and
25527         comment that automake does not need it, but libtoolize does
25528
25529         * Makefile.am (aclocaldir): do not set it explicitly, automake
25530         does already
25531
25532         * configure.in (TIMESTAMP): use mkstamp here too
25533
25534 1999-01-27  Thomas Tanner  <tanner@gmx.de>
25535
25536         * cdemo/configure.in: renamed AM_PROG_LIBTOOL to AC_PROG_LIBTOOL
25537         * demo/configure.in: likewise
25538         * depdemo/configure.in: likewise
25539         * libltdl/configure.in: likewise
25540         * mdemo/configure.in: likewise
25541         * libltdl/ltdl.c: in find_module() check whether libdir is defined,
25542           tryall_dlopen(): move deallocation of an already opened handle
25543           to lt_dlopen(), allocate the directory in lt_dlopen() dynamically,
25544           minor cleanups, fixed memory leak (name)
25545         * libtool.m4: renamed all AM_ macros to AC_ and added aliases for
25546           compatibilty, updated AC_SYS_NM_PARSE (no undefined symbols,
25547           don't count the symbols)
25548         * ltconfig.in: added thread_safe_flag_spec (not used yet),
25549           added generic variable for linker options "linkopts" in
25550           all archive_cmds
25551         * ltmain.in: added -thread-safe flag (unused)
25552
25553 1999-01-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
25554
25555         * ltconfig.in (LTCONFIG_VERSION): damn!, adding TIMESTAMP doesn't
25556         always work, because then different ChangeLog timestamps fail to
25557         pass the version test.  Instead of forcing both ltconfig and
25558         ltmain.sh to be updated every time ChangeLog changes, better
25559         revert it
25560
25561         * ltconfig.in (LTCONFIG_VERSION): add TIMESTAMP, remove
25562         explicit quotes and add it to the list of variables to quote
25563
25564         * ltmain.in: reworded `dropped inter-library dependencies'
25565         message, and added a warning about inter-library dependencies even
25566         for non-module builds
25567
25568 1999-01-26  Gary V. Vaughan  <gary@gnu.org>
25569
25570         * Makefile.am (install-data-hook): Don't show the if expression
25571         that tests for gzip with a conditional error message; just do it
25572         quietly and show the error if it fails, or the next action if it
25573         succeeds.
25574
25575         * configure.in:  It seems Alexandre accidentally removed the
25576         AC_SUBST(pkgdatadir) line recently which breaks libtoolize.
25577         Reverted that small change.
25578
25579 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
25580
25581         * libltdl/ltdl.c (find_module): test old_name and dlname for NULL,
25582         not len==0
25583
25584         * libltdl/configure.in (libltdl_cv_objdir): yes, appending the "/"
25585         in configure.in was much simpler
25586         * libltdl/ltdl.c (objdir): ditto
25587
25588         * libltdl/ltdl.c (objdir): string collation isn't portable; strcat
25589         "/" explicitly.  Or should this be moved to configure.in?
25590
25591 1999-01-25  Thomas Tanner  <tanner@gmx.de>
25592
25593         * libltdl/ltdl.c: allocate the variables in lt_dlopen() dynamically
25594
25595 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
25596
25597         * ltmain.in (file_magic): use egrep instead of expr to support
25598         more general regular expressions
25599         (file_regex): remove it; the name is misleading, it's not used
25600         anywhere, and probably will never be
25601         * ltconfig.in, doc/libtool.texi: ditto
25602         * ltconfig.in (linux-gnu*, deplibs_check_method): extend regex to
25603         support `LSB dynamic lib' in the output of `file'
25604         Reported by Scott D. Heavner <sdh@po.cwru.edu>
25605
25606         * ltmain.in (dependency_libs, xrpath): add -R switches to
25607         dependency_libs only just before creating the .la file; they
25608         should not be passed to the C compiler or linker at
25609         library-creation time, since we don't know whether it is supported
25610
25611         * ltconfig.in (freebsd2.2*, hardcode_minus_L): for FreeBSD 2.2.6,
25612         this must be `no'
25613
25614         * mkstamp: move the sed script to extract revision and date
25615         information into a separate shell-script, so that we can break
25616         lines between commands; FreeBSD's sed doesn't like `;' after `t'
25617         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
25618         * Makefile.am: use mkstamp
25619         * THANKS: added Axel Thimm
25620
25621         * ltmain.in: don't try to use .o instead of .lo just because
25622         there's no PIC flag.  It loses if --disable-static, and there's
25623         not much point if we're referring to the same file anyway...
25624
25625         * ltmain.in (pass_all=none, droppeddeps): set only if deplibs was
25626         non-empty
25627
25628 1999-01-24  Thomas Tanner  <tanner@gmx.de>
25629
25630         * libltdl/ltdl.c: minor bugfixes, append a "/" the search
25631           directory only if necessary
25632         * ltconfig.in: added support for FreeBSD >= 3.0
25633           (patch from Kurt D. Zeilenga)
25634         * THANKS: added Kurt D. Zeilenga
25635
25636 1999-01-24  Thomas Tanner  <tanner@gmx.de>
25637
25638         * doc/libtool.texi (libltdl): list supported dlopen mechanisms,
25639           added function lt_dlopenext(), removed reference to
25640           LTDL_PRELOADED_SYMBOLS in LTDL_SET_PRELOADED_SYMBOLS
25641         * libltdl/ltdl.c: partially reverted Alexandre's dynamic string
25642           allocation change (it was not necessary and the code was unreadable),
25643           cleanups, removed usr_search_path_size, renamed usr_search_path
25644           to user_search_path, in find_module() also check for moved
25645           modules, merged find_file() and find_library(),
25646           added lt_dlopenext(), in lt_dladdsearchdir() no longer reset
25647           the search path if 'search_dir' == NULL and don't use realloc()
25648           (might not be available on all platforms),
25649           removed __P((void)) in the declaration of lt_dlgetsearchpath()
25650         * libltdl/ltdl.h: added lt_dlopenext()
25651         * ltconfig.in: AIX archive commands were broken,
25652           fixed a MAJOR bug in global_symbol_pipe which caused
25653           "demo-shared.test;demo-make.test" to fail (libtool must not extract
25654           undefined symbols of libraries, i.e. symcode must not contain 'U')
25655         * tests/Makefile.am (clean-local): "make distclean" in cdemo, too
25656
25657 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
25658
25659         * Makefile.am (ltconfig, ltmain.sh): add ChangeLog Revision to
25660         TIMESTAMP
25661         * configure.in: get values of PACKAGE and VERSION set by
25662         AM_INIT_AUTOMAKE, and extract only TIMESTAMP from the ChangeLog
25663
25664         * libltdl/ltdl.c (lt_dlopen): if we're reusing a previously opened
25665         handle, don't reset its name nor add it to the list, and free the
25666         name we have allocated
25667         Reported by Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
25668
25669         * Makefile.am (ltconfig, ltmain.sh, TIMESTAMP): let's not assume
25670         anything about the format of the date, just that it does not
25671         contain `$'
25672
25673 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
25674
25675         * configure.in (date): echo the version number during
25676         configuration, and show $date for cvs versions.
25677
25678         * Makefile.am ($(srcdir)/ltconfig): Oops.  cvs co keyword
25679         expansion ate the sed expression! Changed sed separator to '%'
25680         because there are '/' in the date.  Added missing '\(' to search
25681         expression.  Inserted a null string to stop cvs from expanding it
25682         next time =)O|
25683         ($(srcdir)/ltmain.sh): ditto.
25684
25685 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
25686
25687         * Makefile.am (TSDEPS_DIST): dist-time dependencies for timestamps
25688         (timestamps, update-timestamps): check whether TSDEPS_DIST are
25689         up-to-date and update ltconfig and ltmain.sh if needed
25690         (ltconfig, ltmain.sh): depend on TSDEPS; replace @TIMESTAMP@ with
25691         the Date tag in the ChangeLog
25692         (TSDEPS): empty unless overridden by update-timestamps
25693         * ltconfig.in, ltmain.in (TIMESTAMP): append timestamp to most
25694         references to VERSION
25695
25696 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
25697
25698         * ltmain.in (ild): Revert the change which allowed libtool to
25699         link libraries with dependencies on .la libs.
25700         * NEWS: Removed reference to win32, incase 1.3 ships before
25701         ild is ready.
25702         * doc/PLATFORMS: Removed i686-pc-cygwin32, for the same reason.
25703         * doc/libtool.texi: Removed win32 refs, for the same reason.
25704
25705 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
25706
25707         * ltmain.in (Xsed): add 1 to Xsed definition that goes into
25708         temporary wrapper scripts
25709         * libtool.m4: we don't have Xsed here, expand it manually
25710         Reported by Pavel Roskin <pavel_roskin@geocities.com>
25711
25712 1999-01-22  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
25713
25714         * ltmain.in (finalize_hardcode_libdirs, finalize_rpath): in
25715         platforms that use -rpath, programs must be finalized at
25716         installation time, otherwise build-tree programs will
25717         prefer installed libraries over build-tree ones
25718
25719 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
25720
25721         * mdemo/Makefile.am (../libltdl/libtool): if it does not exist,
25722         the sub-make for libltdlc.la will take care of it, but we must at
25723         least provide an empty rule for it, otherwise the sub-make will
25724         never run
25725
25726         * demo/configure.in, demo/Makefile.am (DLPREOPEN): reverted; it
25727         didn't make any difference.
25728
25729 1999-01-21  Gary V. Vaughan  <gary@gnu.org>
25730
25731         * THANKS: Added Chris Laas <golem@MIT.EDU>
25732
25733         From Chris Laas <golem@MIT.EDU>
25734         * ltmain.in (compile):  corrected a typo in compile mode which
25735         caused "gcc: unrecognized option -c-fPIC" errors due to a missing
25736         space.
25737
25738 1999-01-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
25739
25740         * libltdl/configure.in: reintroduce code to detect native library
25741         extension
25742         * libltdl/ltdl.c (lt_dlopen): if a .la file name is given, that's
25743         all.  Otherwise, lt_dlopen now tries to append .la first.  If this
25744         fails, it tries the given filename, and, at last, tries to append
25745         the native library extension to the given filename.
25746         * doc/libtool.texi (lt_dlopen): explain new lookup strategy
25747
25748         * libltdl/ltdl.c: major rewrite to avoid almost all fixed-size
25749         buffers; only `tmp' in lt_dlopen remained.  But the code got ugly
25750         :-(
25751
25752         * ltconfig.in (linux-gnu*, finish_cmds): remove erroneous backslash
25753
25754         * demo/configure.in: set DLPREOPEN to -dlopen if we don't have
25755         shared libraries
25756         * demo/Makefile.am (DLPREOPEN): use instead of -dlpreopen
25757         (STATIC): use $(STATIC), not @STATIC@
25758         * mdemo/Makefile.am (STATIC): ditto
25759
25760         * tests/demo-shared.test, tests/demo-static.test: new tests
25761         * tests/mdemo-shared.test, tests/mdemo-static.test: ditto
25762         * tests/Makefile.am: ditto
25763         * doc/libtool.texi: document them
25764         * demo/Makefile.am, mdemo/Makefile.am (STATIC): do not use
25765         -static unconditionally, it can't work with --disable-static
25766         * demo/configure.in, mdemo/configure.in: check whether libtool was
25767         configured to build static libraries and, if not, set STATIC to an
25768         empty string
25769
25770 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25771
25772         * ltmain.in (module, droppeddeps): if libtool could not satisfy
25773         all dependencies of a module, it will only build a static version
25774         of it, and display a warning message
25775
25776 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
25777
25778         * ltconfig.in (aix4*, with_gcc, archive_cmds): fix typo in Andrey
25779         Slepuhin's last patch
25780
25781 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25782
25783         * Makefile.am (@DIST_MAKEFILE_LIST@): work around Ultrix /bin/sh bug
25784         * tests/nomode.test (must specify a MODE): ditto
25785         Reported by Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
25786         * THANKS: Added Rainer Orth
25787
25788 1999-01-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
25789
25790         * ltconfig.in: No known version of Solaris 2 hardcoded -L paths.
25791
25792 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
25793
25794         * ltmain.in: s/n\'t/ not/
25795         * doc/PLATFORMS: updates for sunos4/m68k and aix
25796
25797 1999-01-20  Andrey Slepuhin  <pooh@msu.ru>
25798
25799         * ltconfig.in (aix4*): check for reworked collect2, always pass
25800         -bnoentry option to linker when building a shared library
25801
25802 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25803
25804         * ltmain.in (file_magic): follow soft-links before running `file'
25805         on the candidate library; try to avoid entering endless loop
25806         Suggested by Nix <nix@esperi.demon.co.uk>
25807
25808         * ltconfig.in (linux*, solaris*, bsdi4*, sys_lib_search_path):
25809         remove expansion of $LD_LIBRARY_PATH
25810         * ltmain.in (lib_search_path): append the expansion of $shlibpath_var
25811         * doc/libtool.texi: document it
25812
25813         * THANKS: Added Steven Schultz
25814
25815 1999-01-20  Steven M. Schultz <sms@wlv.iipo.gtegsc.com>
25816
25817         * ltconfig.in (bsdi4*, check_shared_deplibs_method): file_magic
25818         (bsdi4*, sys_lib_search_path): add /shlib and other dirs
25819
25820 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25821
25822         * cdemo/main.c (main): use K&R definition syntax
25823         * mdemo/main.c (test_dl, main): ditto
25824         (test_dl): casts return value of lt_dlsym to appropriate types
25825
25826         * ltmain.in (dlsyms): #define const to nothing if not __STDC__
25827
25828         * ltconfig.in (global_symbol_pipe): #define const to nothing if
25829         not __STDC__
25830
25831         * demo/dlmain.c (main): cast s->address to the appropriate pointer
25832         types, otherwise StunOS4's cc refuses to compile it
25833
25834         * ltconfig.in (sunos4*, without_gnu_ld, with_gcc, archive_cmds):
25835         add -fPIC, because libgcc is multilibbed, and we want the PIC
25836         version of it for shared libraries, otherwise ld complains
25837
25838         * demo/dlmain.c (main): add missing const to declaration of name
25839
25840         * libltdl/ltdl.c (find_module): remove the libdir argument, and
25841         try to  open library only as old_name and dir/dlname
25842         (lt_dlopen): use `installed' variable in .la file to decide
25843         whether to use libdir or objdir
25844
25845         * demo/configure.in (AC_C_CONST): added, for portability
25846         * mdemo/configure.in (AC_C_CONST): ditto
25847         * libltdl/configure.in (AC_C_CONST, AC_C_INLINE): ditto
25848         * libltdl/ltdl.c (LTDL_FILENAME_MAX): use FILENAME_MAX if defined
25849         (FILENAME_MAX): replace all explicit uses with LTDL_FILENAME_MAX
25850         (presym_free_symlists, trim): don't return void, for portability
25851         (lt_dlgetsearchpath): replace (void) with __P((void))
25852
25853         * ltmain.in (compile): when compiling both PIC and non-PIC, write
25854         the PIC object to .libs/.lo and only rename it to .lo after
25855         compiling the .o, to avoid fooling make dependencies
25856
25857         * mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove
25858
25859 1999-01-20  Gary V. Vaughan  <gary@gnu.org>
25860
25861         * TODO: Added inter-library deps for ltlibs.
25862
25863         * THANKS: Added Vladimir Kushnir.
25864
25865 1999-01-20  Vladimir Kushnir  <kushn@mail.kar.net>
25866
25867         * ltconfig.in (freebsd3*): Define `deplibs_check_method' and
25868         `file_magic_command' for freebsd-elf.
25869
25870 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25871
25872         * TODO: should we also build a `static' copy of a convenience
25873         library out of .o files?
25874
25875         * ltconfig.in (bsdi4*, netbsd*, uts4*, library_names_spec,
25876         soname_spec): removed duplicate dot before $major
25877         Reported by Steven M. Schultz <sms@wlv.iipo.gtegsc.com> (bsdi4*)
25878
25879         * THANKS: added Manfred Weichel
25880
25881 1999-01-20  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
25882
25883         * ltconfig.in (sysv5*): same as sysv4.3*
25884
25885 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25886
25887         * libltdl/ltdl.c (lt_dlopen): properly detect error condition when
25888         full pathname of non-libtool library is provided
25889
25890         * libltdl/configure.in (libltdl_cv_preloaded_symbols,
25891         HAVE_PRELOADED_SYMBOLS): test whether we support -dl*open
25892         * libltdl/ltdl.c (!HAVE_PRELOADED_SYMBOLS, lt_preloaded_symbols):
25893         define it to an empty list if libtool won't generate it, so as to
25894         avoid link errors.  This will cause silent dlopening failures, but
25895         maybe this is better than failing to link the program...
25896
25897         * libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to
25898         declare lt_preloaded_symbols
25899         * doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto
25900
25901         * ltmain.in (dlpredeps): removed, reverting 1999-01-17's change
25902
25903 1999-01-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
25904
25905         * libltdl/Makefile.am (Makefile): depend on libtool
25906
25907         * ltmain.in (lt_preloaded_setup): function added to symbol list
25908         source file to work around FreeBSD problem
25909
25910         * Makefile.am (check-local): depend on libltdl/Makefile
25911
25912         * mdemo/Makefile.am (mdemo_LDFLAGS, mdemo_LDADD): moved -dlopen
25913         flags to LDADD
25914         * doc/libtool.texi (Using Automake): how to add -dlopen to LDADD
25915
25916 1999-01-19  Gary V. Vaughan  <gary@gnu.org>
25917
25918         From Andrey Slepuhin <pooh@msu.ru>
25919         * ltmain.in (hardcode_action) Oops, misapplied the patch!
25920
25921         * ltconfig.in (compile_dependencylbs): removed this
25922         variable and pick up the library dependencies from $deplibs.
25923         * ltmain.in (compile_dependencylibs): removed this
25924         variable, use deplibs to hold these dependencies.
25925
25926         From Andrey Slepuhin <pooh@msu.ru>
25927         * ltmain.in (hardcode_action) make sure deplibs is set to include
25928         all the extra libs added to compile_command.
25929
25930 1999-01-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
25931
25932         * libtool.m4 (LIBTOOL_DEPS): set it
25933         * libltdl/configure.in (LIBTOOL_DEPS): AC_SUBST it
25934         * libltdl/Makefile.am (libtool): use it
25935         * doc/libtool.texi (AM_PROG_LIBTOOL): document it
25936
25937         * Makefile.am (libltdl.tar.gz): don't create it as part of the
25938         build, since it is likely to become stale if we do
25939         (install-data-hook): create and install libltdl.tar.gz, without
25940         depending on GNU tar
25941         Reported by Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
25942
25943 1999-01-17  Thomas Tanner  <tanner@gmx.de>
25944
25945         * Makefile.am: added libltdl.tar.gz to CLEANFILES
25946         * ChangeLog: some reformatting
25947         * TODO: documentation updates
25948         * doc/libtool.texi: added preliminary libltdl documentation,
25949           updated dlopen and -module documentation,
25950           renamed -avoid-versioning to -avoid-version
25951           documented the libtool script variables compiler_c_o,
25952           compiler_o_lo, need_locks, old_postuninstall_cmds,
25953           postuninstall_cmds, sys_lib_search_path_spec,
25954           fix_srcfile_path, objdir, objext, libext,
25955           documented the two new flags (--ltdl[-tar]) of libtoolize
25956         * libltdl/Makefile.am: incremented the version, removed
25957           libtool dependency so that it can be build independently
25958         * libltdl/configure.in: removed LTDL_SHLIB_EXT hack,
25959           set version to 1.0, use AM_MAINTAINER_MODE,
25960           DLPREOPEN is always supported, check for libtool's objdir variable
25961           (LTDL_OBJDIR)
25962         * libltdl/ltdl.c: some cleanups (moved constants to the beginning
25963           of the file and prefixed all of them with LTDL_, minor optimizations
25964           in find_file() and find_module()), renamed lt_dlpreopen* to
25965           lt_dlpreload* for consistency, removed LTDL_SHLIB_EXT hack,
25966           we don't need unistd.h, DLPREOPEN is _always_ supported,
25967           reverted Alexandre's lt_dlpreopen_default_ change,
25968           try to open the not-installed module before the installed one,
25969           replaced lt_dlsearchpath() with lt_dladdsearchdir(),
25970           lt_dlsetsearchpath() and lt_dlgetsearchpath()
25971         * libltdl/ltdl.h: renamed lt_dlpreopen* to lt_dlpreload*
25972           for consistency, removed the declaration of lt_preloaded_symbols
25973           (should be imported by programs),
25974           reverted Alexandre's lt_dlpreopen_default_ change and added
25975           two new macros LTDL_PRELOADED_SYMBOLS and
25976           LTDL_SET_PRELOADED_SYMBOLS(),
25977           added lt_dladdsearchdir(), lt_dlsetsearchpath() and
25978           lt_dlgetsearchpath()
25979         * libtool.m4: some reformatting
25980         * libtoolize.in: implemented --ltdl, bugfix when checking for
25981           the libtool package directory
25982         * ltconfig.in: removed $thread_safe_flags from Andrey Slepuhin's
25983           AIX patch, renamed sys_lib_search_path to sys_lib_search_path_spec,
25984           some reformatting, fixed typo in deplibs_check_method (unkwnon)
25985         * ltmain.in: documented -o for compile mode, some reformatting,
25986           renamed -avoid-versioning to -avoid-version
25987           renamed sys_lib_search_path to sys_lib_search_path_spec
25988         * mdemo/Makefile.am: use -avoid-version
25989         * mdemo/main.c: use LTDL_PRELOADED_SYMBOLS and
25990           LTDL_SET_PRELOADED_SYMBOLS()
25991
25992 1999-01-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
25993
25994         * ltconfig.in (wlarc): set to either '${wl}' or an empty string,
25995         depending on whether archive_cmds runs CC or LD
25996         (gnu_ld=yes, whole_archive_flag_spec): "$wlarc" instead of '${wl}'
25997
25998         * mdemo/Makefile.am (../libltdl/libltdlc.la): depend on
25999         ../libtool, because ../libltdl/libtool depends on it
26000         (mdemo_debug_*): copy from mdemo_*, adding -static to LDFLAGS
26001
26002         * ltmain.in (dlpredeps): append dependencies from dlopened modules
26003         (but not dlpreopened ones) after all explicitly linked libraries
26004
26005         * ltconfig.in (need_lib_prefix, need_version,
26006         deplibs_check_method): default to unknown, so that we're
26007         remembered that this needs porting; unknown is interpreted as yes,
26008         yes and none, respectively
26009         (freebsd2*, freebsd3*, sunos4*, need_version): set to yes
26010         (freebsd2*, freebsd3*, library_names_spec): libraries without a
26011         version number are not used by `ld'; add $versuffix;
26012         Reported by Ben Jackson <ben@ben.com>
26013         * ltmain.in (deplibs_check_method): alias unknown to none
26014         (need_version): if vinfo was not provided and release info was,
26015         zero out versuffix only if we don't need_version.
26016         * doc/libtool.texi: document what `unknown' means
26017
26018         * libltdl/ltdl.h (lt_dlpreopen_default): reverted to a macro
26019         without arguments, that calls lt_dlpreopen_default_ with
26020         lt_dlpreloaded_symbols
26021         * libltdl/ltdl.c (lt_dlpreopen_default_): renamed from
26022         lt_dlpreopen_default
26023         (find_module) tryall_dlopen old_name first, so that we don't
26024         override statically linked symbols with dlopened ones
26025
26026 1999-01-15  Gary V. Vaughan  <gary@gnu.org>
26027
26028         From Andrey Slepuhin <pooh@msu.ru>
26029         * libtoolize.in (cd $pkgdatadir): Make sure we return the the
26030         working directory when this is done.
26031
26032         From Andrey Slepuhin <pooh@msu.ru>
26033         * ltconfig.in (aix): Use shared library support correctly on
26034         aix4*, and tweak the config for aix3.
26035         * NEWS: added aix3 and aix4 to list of hosts with improved
26036         support.
26037         * THANKS: added Andrey Slepuhin <pooh@msu.ru>.
26038
26039 1999-01-15  Thomas Tanner  <tanner@gmx.de>
26040
26041         * Makefile.am (@DIST_MAKEFILE_LIST@): added a second '$'
26042           before abs_scrdir, removed ltconfig and ltmain.sh from
26043           EXTRA_DIST (automake distributes them by default)
26044
26045 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26046
26047         * autogen: moved faking of the libtool scripts before
26048           the call of automake, so that ltconfig and ltmain.sh
26049           are included in the distribution
26050         * ltconfig.in: when checking whether PIC is supported assume
26051           only on HP/UX that warnings during compilation mean that
26052           PIC is not supported (Thanks to Ron O'Hara)
26053         * THANKS: added Ron O'Hara
26054
26055 1999-01-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
26056
26057         * Makefile.am: Moved ltconfig and ltmain.sh back into srcdir, and
26058         add them to the distribution.  Added work-around if `mv -f' fails.
26059         fix @AINCLUDE_M4_LIST@ and @DIST_MAKEFILE_LIST@ for relative and
26060         absolute specifications of srcdir
26061
26062 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26063
26064         * libltdl/ltdl.c: added variable symbol prefix, added user-defined
26065           library search path (can be set using lt_dlsearchpath()),
26066           added default_preloaded_symbols which are independent of
26067           lt_dlinit/exit
26068         * libltdl/ltdl.h: added lt_dlsearchpath() and
26069           lt_dlpreopen_default()
26070         * mdemo/Makefile.am: use -export-dynamic until libtool
26071           and libltdl are able to handle module dependencies
26072
26073 1999-01-14  Gary V. Vaughan  <gary@gnu.org>
26074
26075         * THANKS: added Mark Elbrecht.
26076         * ltconfig.in (PATH_SEPARATOR): new variable to hold valid $PATH
26077         separator characters for the build host, to support DJGPP
26078         environment.
26079         * ltconfig.in: Use PATH_SEPARATOR instead of hardcoded `:'.
26080         Reported by Mark Elbrecht <snowball3@usa.net>
26081
26082         * cdemo/README: typo: mdemo->cdemo
26083
26084 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26085
26086         * autogen: fake the libtool scripts to help fixing
26087           the bootstrapping problem
26088         * Makefile.am: always configure libltdl, however after building
26089           the libtool scripts,
26090           build the libtool scripts in builddir, not srcdir
26091           (unfortunately this breaks building when srcdir!=objdir,
26092            but it was just plain wrong - needs to be fixed),
26093           build and install libltdl.tar.gz,
26094           copy acinclude.m4 instead of linking them, so that we
26095           can 'make dist' in libltdl,
26096           fixed configuring of subdirectories
26097         * configure.in: removed --enable-ltdl-install - libltdl is supposed
26098           to be installed by packages, not by libtool itself
26099         * libtoolize.in: new flags --ltdl and --ltdl-tar to install libltdl
26100           in packages (--ltdl doesn't work yet),
26101           install only the necessary libtool scripts, not just all
26102           files in pkgdatadir
26103         * mdemo/Makefile.am: removed the rule for libltdl configuration
26104
26105 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26106
26107         * mdemo/Makefile.am (../libltdl/libtool): mkdir and configure
26108         ../libltdl
26109
26110 1999-01-13  Thomas Tanner  <tanner@gmx.de>
26111
26112         * demo/dlmain.c, libltdl/ltdl.c, ltconfig.in, ltmain.in,
26113           doc/libtool.texi: renamed dld_preloaded_symbols to
26114           lt_preloaded_symbols, symbol lists are 'const'
26115         * cdemo/configure.in: don't check for string.h
26116         * demo/dlmain.c: renamed dld_symlist to lt_symlist,
26117           preloaded symbols are 'const', use lt_ptr_t instead of void*
26118         * demo/foo.h: define lt_ptr_t
26119         * doc/libtool.texi: document lt_preloaded_symbols correctly
26120         * libltdl/Makefile.am, mdemo/Makefile.am: renamed libtest to libltdlc
26121         * libltdl/ltdl.c: fixed some minor typos, renamed dldpre to presym,
26122           bugfix: search in search_path only if we have no directory
26123           and a search_path, in lt_dlsym() check whether symbol != 0
26124         * libltdl/ltdl.h: removed lt_dlpreopen_default()
26125         * ltconfig.in (dlpreopen): removed dld_preloaded_symbol_count
26126         * ltmain.in: added help for -avoid-versioning, -export-symbols,
26127           -module, add @SYMFILE@ if one of -export-dynamic, -dlopen or
26128           -dlpreopen is used
26129         * mail/deplibs.html: added Gordon Matzigkeit's inter-library
26130           dependencies article
26131         * mdemo/Makefile.am: removed -export-dynamic from LDFLAGS
26132           (no longer necessary, since libtool defines lt_preloaded_symbols
26133           when -dlopen is used), initialize with lt_preloaded_symbols
26134
26135 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26136
26137         * doc/libtool.texi (Test descriptions): cdemo-static works, thanks
26138         to Edouard Parmelan!
26139
26140         * THANKS: added Sebastian Wilhelmi
26141
26142         * ltconfig.in (solaris): define `need_version' to no
26143
26144 1999-01-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
26145
26146         * ltconfig.in (solaris): Define `deplibs_check_method',
26147         `file_magic_command', `need_lib_prefix' and `sys_lib_search_path'
26148         * ltmain.in (file_magic_regex): Add space before matching pattern,
26149         such that it works on solaris (solaris has a tab between the
26150         library name (including the colon) and the `ELF' and such the
26151         `ELF' will never be matched).
26152
26153 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
26154
26155         * ltconfig.in (NM): PATH search was not updated like in
26156         libtool.m4, in last Alexandre Oliva's change to it
26157         (sysv4*, ncr): pass all library dependencies
26158         * ltmain.in (dependency_libs, -R): use `deplib' instead of `arg' to
26159         iterate, otherwise we'd overwrite `arg'
26160         (convenience, old_libs): if --disable-shared, convenience
26161         libraries are just old archives, as .lo's are of no use
26162         * tests/cdemo-static.test: print --disable-shared here
26163
26164 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26165
26166         * libltdl/configure.in (libltdl_cv_shlibext, LTDL_SHLIB_EXT):
26167         system-dependent extension of shared libraries
26168         (libltdl_cv_shlibpath_var, LTDL_SHLIBPATH_VAR): system-dependent
26169         run-time shared library search path
26170         * libltdl/ltdl.c (dldpre_init, dldpre_exit): unrelate init/exit
26171         from add/remove symlists, so one may add dld_preloaded_symbols
26172         from main(), when only a library will call dldpre_init
26173         (lt_dlopen): use LTDL_SHLIBPATH_VAR, if defined, as secondary
26174         search path.  Also, if a requested .la file cannot be found, try
26175         with the LTDL_SHLIB_EXTension instead.
26176
26177         * ltmain.in (old_archives, oldobjs): use find to SYMDEF here too
26178
26179         * Makefile.am (@DIST_MAKEFILE_LIST@): `$' must be doubled
26180
26181         * configure.in (AC_CONFIG_DIRS): configure only libltdl, and then,
26182         only if --enable-ltdl-install
26183         (CONF_SUBDIRS): list directories that are configured on demand,
26184         but that must be included in the distribution
26185         (ACINCLUDE_M4_LIST, DIST_MAKEFILE_LIST): generated from CONF_SUBDIRS
26186         * Makefile.am (AUTOMAKE_OPTIONS): added version 1.3e and
26187         readme-alpha, to handle README-alpha automatically
26188         (EXTRA_DIST): removed README-alpha
26189         (BUILD_SUBDIRS): subdirectories that are always built
26190         (SUBDIRS): BUILD_SUBDIRS plus BUILD_LTDL
26191         (DIST_SUBDIRS): BUILD_SUBDIRS plus CONF_SUBDIRS, from configure
26192         (all-local, check-local): depend on $(ACINCLUDE_M4_LIST), from
26193         configure, and libtool, so that it is built before subdirs
26194         (configure-subdirs): new target
26195         (configure-subdirs, distdir): depend on $(DIST_MAKEFILE_LIST),
26196         from configure
26197         (@DIST_MAKEFILE_LIST@): create subdir if needed, then run
26198         configure.
26199         On-demand configuration of subdirs at distribution time was
26200         suggested by Gary V. Vaughan <gary@gnu.org>
26201
26202         * libtool.m4, ltconfig.in (NM): search for NM in PATH before
26203         /usr/ccs/bin, /usr/ucb and /bin.  However, if the found one isn't
26204         BSD-compat keep searching.  If no BSD-compat is found, use the
26205         first we found.
26206
26207         * THANKS: added Raffaele Sena
26208
26209 1999-01-13  Raffaele Sena  <raff@aromatic.com>
26210
26211         * libltdl/ltdl.c: replaced RTDL with RTLD
26212
26213 1999-01-13  Manish Singh  <yosh@gimp.org>
26214
26215         * ltconfig.in (osf3*, osf4*, irix6*): include
26216         ${libname}{release}.so for library_names_spec
26217
26218 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26219
26220         * configure.in (AC_CONFIG_SUBDIRS): added cdemo
26221         * Makefile.am (DIST_SUBDIRS): ditto
26222         (ACINCLUDE_M4_LIST): ditto
26223         * tests/Makefile.am (TESTS): added cdemo-shared.test
26224         * tests/cdemo-static.test: disable shared libraries here
26225         * tests/cdemo-shared.test: disable static libraries here
26226         * doc/libtool.texi (Test descriptions): added cdemo tests
26227         * THANKS: added Edouard G. Parmelan
26228
26229 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
26230
26231         * ltmain.in: fix convenience libraries when static libraries
26232         are disables.
26233         * cdemo/README, cdemo/Makefile.am, cdemo/configure.in, cdemo/foo.h,
26234         cdemo/foo1.c, cdemo/main.c, cdemo/.cvsignore, test/cdemo-conf.test,
26235         test/cdemo-make.test, test/cdemo-exec.test, test/cdemo-static.test:
26236         new tests for convenience libraries.
26237         * autogen, Makefile.am, test/Makefile.am: ditto.
26238
26239         * ltconfig.in, doc/PLATFORMS: Added support for NCR MP-RAS
26240         (i586-ncr-sysv4.3*) with native compiler.
26241         * README, doc/libtool.texi: Added note for NCR MP-RAS compiler.
26242
26243 1999-01-12  Thomas Tanner  <tanner@gmx.de>
26244
26245         * ltmain.in: before using LN_S remove the symlink
26246         * libltdl/ltdl.c: support multiple symbol lists, moved library-
26247           and file searching to separate functions, renamed "preload_libs"
26248           to "dl_dependency_libs", set the LT_SYMBOL_OVERHEAD to the correct
26249           value (7), fix to support lt_dlsym() for not-libtool modules again,
26250           check for invalid handles, when using strdup() check whether
26251           it fails
26252         * libltdl/ltdl.h: declare the lt_dlsymlist type for lt_dlpreopen()
26253         * mdemo/README: rewritten
26254         * mdemo/configure.in: check only for math.h (string.h is no longer
26255           necessary)
26256
26257 1999-01-12  Gary V. Vaughan  <gary@gnu.org>
26258
26259         * configure.in (ltdl-install): Fixed up the indentation so that
26260         `configure --help' is pretty again.
26261
26262 1999-01-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
26263
26264         * ltmain.in, NEWS, doc/libtool.texi: Added support for -R flag
26265         * ltmain.in, doc/libtool.texi: documented that -rpath is the same
26266         as -R for programs
26267         * ltmain.in: softened the instructions for linking with installed
26268         libraries, and noted that libtool can be used to link with them;
26269         documented that -rpath is not required for convenience libraries
26270
26271         * ltconfig.in (symxfrm): don't print $pipe_works twice, once for
26272         each $ac_symprfx
26273         Reported by Godmar Back <gback@cs.utah.edu>
26274
26275         * ltmain.in (convenience, libobjs): get only .o and .lo files from
26276         the files extract from the convenience library.  Some systems,
26277         such as FreeBSD2, will add a SYMDEF file, that is not an object
26278         file, and therefore should not be fed to the linker
26279
26280         * libtool.m4 (AM_SYS_NM_PARSE): while we are at it, we may well
26281         cache the value of ac_cv_sys_symbol_underscore
26282
26283         * libtool.m4 (AM_SYS_NM_PARSE): need for underscore prefix is now
26284         auto-detected, by trying first without, then with it.
26285
26286         * ltconfig.in: ditto
26287
26288 1999-01-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
26289
26290         * configure.in (AC_CONFIG_SUBDIRS): add libltdl, demo, mdemo and
26291         depdemo commented out, so that `dist' works before `check'
26292         (BUILD_LTDL): will contain libltdl if --enable-ltdl-install
26293         * Makefile.am (DIST_SUBDIRS): expand SUBDIRS and add depdemo,
26294         commented out
26295         (SUBDIRS): add $(BUILT_LTDL)
26296         * libltdl/Makefile.am (EXTRA_LTLIBRARIES): add libtest.la, the
26297         same as libltdl but always a convenience library.  Not built by
26298         default.  Both libraries now depend on the libtool script, that
26299         depends on ../libtool and is rebuilt when needed
26300         * mdemo/Makefile.am (mdemo, mdemo.debug): depend on and link with
26301         ../libltdl/libtest.la, that is rebuilt if needed
26302         (mdemo_LDADD): removed $(LIBADD_M), to avoid silent failures
26303         (foo1.la): renamed from libfoo1.la; test removing the lib prefix
26304         * mdemo/foo1.c: renamed libfoo1_LTX symbols to foo1_LTX
26305         * mdemo/main.c: don't include string.h nor math.h, nor refer to
26306         sin nor cos
26307         * tests/mdemo-exec.test: renamed libfoo1.la to foo1.la
26308         * tests/mdemo-inst.test: ditto
26309
26310         * libltdl/ltdl.c (FILENAME_MAX): use it instead of MAX_FILENAME,
26311         and don't redefine it if already defined; default to 1024, as on
26312         most systems
26313         (LT_SYMBOL_LENGTH): renamed from MAX_SYMBOL_LENGTH
26314         (LT_SYMBOL_OVERHEAD): new macro, that accounts for the size of
26315         the _LTX_ separator and the initial underscore
26316         (lt_dlsym): sym now points to a stack buffer (lsym) if possible,
26317         or is dynamically allocated.  If allocation fails, a
26318         buffer_overflow_error is returned.
26319
26320 1999-01-10  Thomas Tanner  <tanner@gmx.de>
26321
26322         * ltmain.in: define dld_preloaded_symbols if at least one of
26323           -export-dynamic, -dlopen or -dlpreopen was specified,
26324           do not include program objects in the symbol list
26325           if -export-dynamic was not enabled
26326         * libltdl/ltdl.c: limit symbols to max. 256 bytes
26327         * mdemo/Makefile.am: build libltdl in a subdirectory,
26328           do not use -export-dynamic for mdemo and mdemo.debug
26329         * tests/mdemo-conf.test,tests/mdemo-make.test,tests/mdemo-inst.test:
26330           do not check for libltdl
26331
26332 1999-01-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
26333
26334         * libltdl/ltdl.c (lt_dlopen): missing strlen in bound test
26335
26336 1999-01-09  Thomas Tanner  <tanner@gmx.de>
26337
26338         * NEWS: support for BSD/OS 4.x was not documented
26339         * demo/Makefile.am: link against libm only if available
26340         * mdemo/Makefile.am: likewise, use -avoid-versioning flag
26341           instead of -avoid-version (typo)
26342         * demo/configure.in: check for libm, string.h and math.h
26343         * mdemo/configure.in: likewise
26344         * depdemo/configure.in: check for libm and math.h
26345         * libltdl/configure.in: check for dlerror
26346         * libltdl/ltdl.c: check for buffer overflows, implemented
26347           dlerror, fixed a severe bug which occured when opening
26348           non-libtool modules, dlopen with the flags GLOBAL and NOW
26349         * mdemo/main.c: report the error using lt_dlerror()
26350
26351 1999-01-08  Gary V. Vaughan  <gary@gnu.org>
26352
26353         * doc/libtool.texi (old_archive_from_new_commands): Documented
26354         this ltcofig variable.
26355
26356 1999-01-07  Gary V. Vaughan  <gary@gnu.org>
26357
26358         * ltmain.sh (cygwin, allow_undefined): Unfortunately, there are
26359         problems with this variable when trying to make a dll which has
26360         undefined symbols, in which case not even a static library is
26361         built.  For now, we need to specify -no-undefined on the libtool
26362         link line when we can be certain that all symbols are satisfied,
26363         otherwise we get a static library.
26364
26365 1999-01-06  Thomas Tanner  <tanner@gmx.de>
26366
26367         * ChangeLog: merged in tests/ChangeLog
26368         * tests/ChangeLog: deleted
26369         * libltdl/ltdl.c: assigned copyright to the FSF
26370         * libltdl/ltdl.h, mdemo/foo*,main.c: likewise
26371
26372 1999-01-06  Gary V. Vaughan  <gary@gnu.org>
26373
26374         * ltmain.in (dllsearchpath): add absolute directory paths to
26375         dllsearchpath so that the wrapper scripts can be called from any
26376         directory (e.g. tests) on cygwin.
26377
26378         * ltconfig.in (cygwin, library_names_spec): revert Alexandre's
26379         change from yesterday to use `-dll.a' suffix.  That change caused
26380         $libname-dll.a to be a symlink to $soname, which isn't even an
26381         `ar' archive.  Before the import library suffix can be changed, we
26382         need to figure out how to handle building objects differently for
26383         linking with an import library versus an equivalent static library.
26384
26385         * TODO: Added details of a Linux wrapper script bug.
26386         Reported by Jeff Garzik <jgarzik@pobox.com>.
26387
26388 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
26389
26390         * ltmain.in (libobjs_save, oldobjs): when building an
26391         old-fashioned archive, use a copy of libobjs saved before
26392         convenience libraries are appended
26393
26394         * libltdl/ltdl.h (_LTDLL_EXPORT, _LTDLL_IMPORT): use cygwin or
26395         unix library import/export primitives; this may be convenient for
26396         people willing to create DLLs
26397         (_LTDLL_EXTERN): select _LTDLL_EXPORT or _LTDLL_IMPORT depending
26398         on _LTDL_COMPILE_
26399         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlpreopen): new function,
26400         that replaces the current preloaded_symbols list with its
26401         argument, and returns the old value, initially NULL
26402         (dldpre_init): don't refer to dld_preloaded_symbols any more
26403         (dldpre_open, dldpre_sym): search preloaded_symbols
26404         (lt_dlpreopen_default): call lt_dlpreopen with
26405         dld_preloaded_symbols, that is declared as extern; it should be
26406         called from the main program or from some static library without
26407         -no-undefined
26408         (lt_dlerror): new function, that returns the error message for the
26409         last error occurred; the error message is kept in the static
26410         variable last_error
26411         * libltdl/configure.in (enable-ltdl-install): moved back from
26412         enable-install; other packages might use enable-install already,
26413         better have fine grained control over this.
26414         * libltdl/Makefile.am (libltdls.la): discarded
26415
26416 1999-01-05  Thomas Tanner  <tanner@gmx.de>
26417
26418         * configure.in: do not configure libltdl by default
26419         * Makefile.am: do not build libltdl by default
26420         * libltdl/Makefile.am: ltdls.lo depends on libtool
26421         * tests/Makefile.am: before starting the tests
26422           make sure that libtool was build
26423         * tests/mdemo-conf.test: configure libltdl
26424         * tests/mdemo-make.test: build libltdl
26425
26426 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
26427
26428         * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
26429         would lose for files with embedded blanks.
26430
26431         * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
26432         ltdll.c into ltmain.in, to avoid its duplication, and added a sed
26433         script to extract it.  Also, create def and base files in $objdir,
26434         and don't remove them after the compilation.
26435         (cygwin, library_names_spec): Create static part of the dll with
26436         suffix -dll.a, to avoid conflicts with actual static libraries.
26437         * ltmain.in: Added ltdll.c, as commented out text
26438
26439 1999-01-01  Thomas Tanner  <tanner@gmx.de>
26440
26441         * NEWS: new BeOS support
26442         * THANKS: added Joseph Beckenbach
26443         * libltdl/ltdl.h: use dllimport/export on Win32
26444
26445 1998-12-31  Joseph Beckenbach III <jrb3@best.com>
26446
26447         * ltconfig.in: added support for BeOS
26448         * ltmain.in (shlibpath_var): added a workaround for
26449           an odd bug in the BeOS R4 sed
26450
26451 1998-12-31  Thomas Tanner  <tanner@gmx.de>
26452
26453         * verified all copyright notices
26454           and updated them to 1999
26455         * TODO: added some things that need to documented
26456         * doc/libtool.texi: -export-symbols is not
26457           supported on all platforms
26458         * doc/PLATFORMS: added a few new platforms
26459
26460 1998-12-30  Thomas Tanner  <tanner@gmx.de>
26461
26462         * NEWS: updated
26463         * THANKS: added Todd Vierling <tv@pobox.com>
26464
26465 1998-12-30  Todd Vierling  <tv@pobox.com>
26466
26467         * ltconfig.in: improved shared object handling on both
26468           a.out and ELF platforms for NetBSD
26469
26470 1998-12-29  Thomas Tanner  <tanner@gmx.de>
26471
26472         * ltconfig.in: do not rely on a leading space when concatenating
26473           variables as suggested by Erez Zadok
26474         * ltmain.in: likewise
26475         * doc/PLATFORMS: updated and reformatted
26476           (thanks to Erez Zadok for the testing)
26477
26478 1998-12-27  Thomas Tanner  <tanner@gmx.de>
26479
26480         * THANKS: added Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
26481
26482 1998-12-26  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
26483
26484         * ltconfig.in: support i486-ncr-sysv4.3.03
26485         shared libraries.
26486
26487         * ltmain.in: before every ln -s, remove the link name
26488
26489 1998-12-25  Thomas Tanner  <tanner@gmx.de>
26490
26491         * depdemo/configure.in: removed last relics of demo
26492         * depdemo/sysdep.h: ditto
26493         * mdemo/Makefile.am: ditto
26494         * libltdl/Makefile.am: fixed the version number, build libltdls if
26495           -enable-install and -enable-dlpreopen are enabled
26496         * libltdl/configure.in: libltdl is version 0.1, not 1.0,
26497           renamed -enable-ltdl-install to -enable-install,
26498           conditionals for libltdls, check for strchr and index,
26499           replaced NULL with 0
26500         * libltdl/ltdl.c: replaced NULL with 0, dlpreopen only if
26501           USE_DLPREOPEN was defined, integrated shl_load code from GModule
26502           (still untested)
26503
26504 1998-12-24  Gary V. Vaughan  <gary@gnu.org>
26505
26506         * libltdl/configure.in: fixup spacing in --enable-ltdl-install
26507         help string so that it lines up nicely for configure --help.
26508
26509         * ltmain.in (dllsearchpath): keep track of what the dll search path
26510         will need to be in the wrapper scripts as deplibs are calculated.
26511         Make sure the wrapper script doesn't end in `.exr', which makes
26512         win32 try to execute it as a binary!
26513         Add the contents of dllsearchpath to $PATH in the wrapper script.
26514         Use the relative path to the wrapped program so that the dll
26515         search path is calculated properly by win32 OSes.
26516         * TODO: removed the item for making wrapper scripts work on win32.
26517
26518         * TODO: removed the reference to making libltdl and demo work on
26519         win32.  They *do* work now that wrapper scripts are functioning.
26520
26521         * ltmain.in (file_magic_command): It turns out that if the
26522         file_magic_command generates huge output (e.g. running `objdump
26523         -f' over a large import lib [say libX11.a]) the expr to check it
26524         against the file_magic_regex blows up.  There is now an optimistic
26525         heuristic, to save only the first 10 lines of running
26526         file_magic_command which (at risk of sounding like Bill) should be
26527         enough for anyone =)O|.
26528
26529         * ltmain.in: Set the compile_dependencylibs and dllsearchpath for
26530         non-libtool libs, or else libdeps only works between ltlibs for
26531         cygwin32.
26532
26533 1998-12-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
26534
26535         * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
26536         long lines to sed
26537         * doc/libtool.texi (sed): very long lines are no longer a problem
26538
26539         * libltdl/Makefile.am: install libltdl conditionally...
26540         * libltdl/configure.in: ... if --enable-ltdl-install is issued
26541         * libltdl/ltdl.c: removed #ifdef DEBUG
26542         * mdemo/Makefile.am (mdemo_debug_LDADD, mdemo_debug_DEPENDENCIES):
26543         use libltdl.la
26544
26545 1998-12-23  Gary V. Vaughan  <gary@gnu.org>
26546
26547         * doc/PLATFORMS: added my cygwin32 box (i686-pc-cygwin32).
26548
26549         * TODO: remind myself of the win32 tasks remaining.
26550
26551         * ltconfig.in (archive_cmds, archive_sym_cmds,
26552         old_archive_from_new_cmds): Fixed a bug which left an a.exe in the
26553         build directory.  Fixed a bug where $soname-def was never deleted.
26554
26555         * ltconfig.in (file_magic_command): new variable holds the command
26556         (including any args) to run to generate the string to match
26557         against the regex in $file_magic.  Use the variable where
26558         necessary. Added to libtool header output.
26559         (deplibs_check_method): use file_magic for win32, but compare the
26560         output of `objdump -f' with the regex (see below).
26561         (archive_cmds, archive_sym_cmds): use compile_dependencylibs for
26562         each $CC invokation (see below).
26563
26564         * ltmain.in: Set allow_undefined to `no' for win32 variants by
26565         default, otherwise it is impossible to link a dll without forcing
26566         the makefile maintainer to figure out whether to pass
26567         --no-undefined at every libtool invokation.
26568         (compile_dependencylibs): save the list of dependency library
26569         flags needed for a deplib build on win32.
26570         (link_against_libtool_libs): commented out the check for this;  if
26571         it is left in, then ltlibs (i.e. *.la files) cannot be deplibs for
26572         subsequent links.
26573         Don't add -lc to the deplibs line for win32 platforms (which don't
26574         have a libc as such).
26575         (file_magic_command): use this to get some output to compare with
26576         the file_magic regex (instead of hardcoding `file' which doesn't
26577         exist on win32.
26578         * doc/libtool.texi (Porting inter-library dependencies): Updated
26579         to document the changes above.
26580
26581         * ltconfig.in (deplibs_check_method): Changed the file_magic regex
26582         to match more linux variants.  This is less lenient than Thomas
26583         Tanner's commit to fix the same problem below.
26584         Reported by Joel Klecker <espy@debian.org>
26585         * THANKS: added Joel Klecker <espy@debian.org>
26586
26587 1998-12-23  Thomas Tanner  <tanner@gmx.de>
26588
26589         * ltconfig.in: fixed file-magic for Linux shared libraries
26590         * ltmain.in: removed the unused -force-static flag
26591         * libltdl/ltdl.c: added strchr, search modules in LTDL_LIBRARY_PATH,
26592           check whether actual module was already dlopened,
26593           read in preload_libs rather than dependency_libs
26594
26595 1998-12-23  Thomas Tanner  <tanner@gmx.de>
26596
26597         * libltdl/Makefile.am: build two versions of libltdl:
26598           libltdl (support native dlopen if available, otherwise dlpreopen),
26599           libltdls (like libltdl, but always support for dlpreopen)
26600         * libltdl/ltdl.c: ditto
26601         * libltdl/configure.in: warn if dlopen is not supported
26602         * mdemo/Makefile.am (mdemo.debug): use libltdls
26603
26604 1998-12-22  Gary V. Vaughan  <gary@gnu.org>
26605
26606         * ltconfig.in: revert Thomas Tanners change to create all
26607         libraries without the `lib' prefix on win32, otherwise `gcc foo.c
26608         -lbar' can't find libbar.a.
26609
26610 1998-12-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26611
26612         * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
26613         dependency hack
26614
26615 1998-12-21  Thomas Tanner  <tanner@gmx.de>
26616
26617         * ltconfig.in: indentation is now 8 character wide tabs
26618         * ltmain.in: ditto
26619         * ChangeLog: ditto
26620         * ltmain.in: renamed check_shared_deplibs_method to
26621           deplibs_check_method (we_dont_want_too_long_variable_names :)
26622         * doc/libtool.texi (Porting inter-library dependencies): ditto
26623         * depdemo/.cvsignore: renamed hell* to depdemo*, added *.lo,*.la
26624         * mdemo/.cvsignore: ditto
26625
26626 1998-12-21  Gary V. Vaughan  <gary@gnu.org>
26627
26628         * libtool.m4 (AM_SYS_NM_PARSE): apparently  __ptr_t is predefined
26629         on some systems - use lt_ptr_t instead.
26630         * ltconfig.in: ditto.
26631         * ltmain.in: ditto.
26632
26633         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): use an AC_SUBST to pass
26634         the result of this into the compile rather than AC_DEFINE which
26635         breaks when building with older versions of autoconf.
26636         * ltconfig.in (symxfrm): Don't put the leading underscore back
26637         with the global_symbol_pipe.
26638         * demo/dlmain.c (main): No need to specialcase underscores in
26639         dld_preloaded_symbols - it is fixed by symxfrm above!
26640         * libltdl/configure.in: use AM_SYS_SYMBOL_UNDERSCORE from
26641         libtool.m4 rather than reinvent the wheel here =)O|
26642
26643         * ltmain.in:  Fix deplibs methods to not rely on a.out (cygwin
26644         uses a.exe!).
26645
26646         * libltdl/configure.in: Cleanups - fix header comment and emacs
26647         local-vars.
26648
26649         * demo/dlmain.c (win32_force_data_import_address): a nasty hack
26650         to force the address of imported data symbols into
26651         dld_preloaded_symbols on win32, which does data imports
26652         differently to function imports (sheesh!).  This functionality
26653         needs to be moved into the dld_preloaded_symbols generation code.
26654         demo/helldl with static linking is broken on win32 by this change,
26655         probably until after libtool-1.3 =(O|
26656         * demo/foo.h: make sure __CYGWIN32__ is always defined on cygwin32
26657         systems.  Use the correct __declspec macro for lib exports/imports
26658         on cygwin32.
26659         * demo/foo.c, demo/hello.c: Make sure we tell foo.h that these
26660         sources are inside libfoo, and want to export symbols.
26661
26662 1998-12-20  Thomas Tanner  <tanner@gmx.de>
26663
26664         * autogen: configure demo, depdemo, libltdl and mdemo
26665         * tests/mdemo-exec.test: renamed hell* to mdemo*
26666         * tests/mdemo-inst.test: ditto
26667
26668 1998-12-19  Thomas Tanner  <tanner@gmx.de>
26669
26670         * libltdl/Makefile.am: build a normal libtool library
26671         * libltdl/ltdl.c: get LTDL_LIBRARY_PATH but don't make use of it yet,
26672           some reformatting
26673         * ltmain.in: fixed a bug which listed symbols in
26674           dld_preloaded_symbols twice
26675         * TODO: removed symbol export lists and deplibs
26676
26677 1998-12-18  Thomas Tanner  <tanner@gmx.de>
26678
26679         * ltconfig.in: added need_lib_prefix and need_version,
26680           which determine whether we must prefix modules with 'lib'
26681           and whether versioning is required for libraries.
26682         * ltmain.in: allow modules names without 'lib' prefix,
26683           new -avoid-versioning option
26684         * doc/libtool.texi (link flags): updated documentation for -module,
26685           added -avoid-versioning
26686         * doc/libtool.texi (libtool script contents):
26687           documented the two new flags and archive_sym_cmds
26688         * doc/libtool.texi (tests):
26689           added (partially very short) documentation for assign.test,
26690           nomode.test, quote.test, sh.test
26691         * libltdl/ltdl.c: canonicalize module names,
26692           some cleanups and bugfixes,  __ptr_t is predefined on
26693           some systems - use lt_ptr_t instead
26694         * mdemo/: renamed hell* to mdemo* (hell is already used in
26695           demo), updated the documentation, import sin and cos in main
26696           program rather than linking libfoo1 statically
26697
26698 1998-12-17  Gary V. Vaughan  <gary@gnu.org>
26699
26700         * libtool.m4 (AM_PROG_LIBTOOL): Added AC_PREREQ(2.12) to prevent
26701         people using libtool with old autoconfs that don't provide the
26702         features we need.
26703
26704 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
26705
26706         * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
26707
26708         * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
26709
26710         * Makefile.am (cvs-dist): our release tags are in lower case
26711         (cvs-diff): ditto
26712         (EXTRA_DIST): added README-alpha
26713         * README-alpha: minor adaptations
26714         * demo/Makefile.am, mdemo/Makefile.am, depdemo/Makefile.am:
26715         removed comment about special needs for distribution
26716         * depdemo/Makefile.am: don't generate dependencies
26717         * depdemo/configure.in: modified version number
26718
26719         * ltmain.in (-force-static, force_static): removed
26720         * libltdl/Makefile.am (CFLAGS): ditto
26721         * libltdl/configure.in: check for memory.h, rindex() and
26722         dlpreopening.  Fixed NEED_USCORE caching policy.
26723         * libltdl/ltdl.h (lt_dlsym): make the name argument const
26724         * libltdl/ltdl.c (types): new variable: head of list of available
26725         dlopening mechanisms
26726         (lt_dltype_t): interface of a dlopening mechanism, with pointers
26727         to functions for init, exit, open, close and sym
26728         (lt_dlhandle_t): added pointer to interface type
26729         (strdup): don't name it strdup; it can be troublesome
26730         (strrchr): ditto; use rindex if available
26731         (LIBTOOL_STATIC): check HAVE_DLPREOPEN instead, and move to the
26732         end of the file, so that it becomes the header of the list
26733         (all): renamed all interface-implementation functions, to avoid
26734         name clashes, and created lt_dltype_t nodes for all of them
26735         (lt_dlinit): initialize all available interfaces; remove those
26736         that fail from the list.  Return failure only if no interfaces
26737         could be initialized.
26738         (lt_dlexit): return number of failures
26739         (tryall_dlopen): try to open the library with all available
26740         interfaces
26741         (lt_dlopen): use tryall_dlopen; increased size of fixed buffers.
26742         We should probably make these bound-checked or dynamically
26743         allocated for the final release!  Fix bug when filename did not
26744         contain slashes; should we check for `\\' too?  Try old_library if
26745         everything else fails.
26746         (lt_dlclose): use the interface type for closing
26747         (lt_dlsym): make `symbol' const, use interface type for looking up
26748         * mdemo/Makefile.am: moved mdemo/modules/* back into mdemo
26749         (SUBDIRS): removed
26750         (libfoo2_la_LDFLAGS): added -static; nice test.  However, since it
26751         causes -lm to linked into hell*, it causes tests that should fail
26752         to pass
26753         (noinst_HEADERS): no need to install foo.h
26754         * mdemo/configure.in: remove modules/Makefile
26755         tests/mdemo-exec.test: updated accordingly
26756
26757         * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
26758         maintainers.  Detailed expected failures of libltdl+mdemo.  Listed
26759         recent ports.  Added full URL for the home page.  Note that
26760         libtool C program is unusable.
26761
26762 1998-12-16  Bruno Haible  <haible@ilog.fr>
26763
26764         * doc/libtool.texi (Tested platforms): broken `sed' programs
26765
26766 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
26767
26768         * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
26769         Tanner, now that they're AUTHORS
26770
26771 1998-12-16  Stephan Kulow  <coolo@kde.org>
26772
26773         * ltmain.in (freebsd-aout, freebsd-elf): added missing dot to
26774         versuffix
26775
26776 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
26777
26778         * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
26779         (libtool): automatically update
26780
26781         * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
26782         * libltdl/ltdl.c: include them
26783
26784         * demo/configure.in (BINARY_HELLDL): test whether dlopen is
26785         supported at configure time
26786         * demo/Makefile.am (helldl): use automake conditionals to build
26787         helldl as a script or as a binary program
26788
26789         * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
26790         (clean-local): don't clean libltdl any more
26791         * tests/ltdl-conf.test: removed
26792         * tests/ltdl-inst.test: ditto
26793         * tests/ltdl-make.test: ditto
26794         * tests/ltdl-unst.test: ditto
26795         * tests/mdemo-make.test: updated accordingly
26796         * tests/mdemo-inst.test: ditto
26797         * tests/mdemo-unst.test: ditto
26798         * doc/libtool.texi: ditto
26799
26800         * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
26801         only for -force-static; it should be removed soon, before people
26802         start to use it
26803
26804         * configure.in (AC_CONFIG_SUBDIRS): added libltdl
26805         * Makefile.am (SUBDIRS): build libltdl by default
26806         (DIST_SUBDIRS): simplify distribution of demo and mdemo
26807         (libtool, clibtool, libtoolize, ltconfig, ltmain.sh): add
26808         srcdir where appropriate
26809         (ACINCLUDE_M4_LIST): new rule for maintaining links from
26810         acinclude.m4 to libtool.m4
26811         (*demo/Makefile.in): don't update autoconf/automake files any
26812         more; make check is needed
26813
26814 1998-12-14  Gary V. Vaughan  <gary@gnu.org>
26815
26816         * ltconfig.in (archive_cmds): tweaked for cygwin b18->b20.1
26817         compatibility and fixed a bug with generating the export
26818         definitions file.  This is only tested on b20.1, but should
26819         work back to b18 at least.
26820
26821 1998-12-11  Thomas Tanner  <tanner@gmx.de>
26822
26823         * ltmain.in: -module implies now -export-dynamic,
26824           dlpreopen files if we're linking statically
26825         * doc/libtool.texi (link flags): added documentation for -module
26826           and the tests for mdemo and libltdl
26827         * mdemo/Makefile.am: replaced -dlpreopen with -dlopen
26828
26829 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
26830
26831         * PORTING: removed the text Akim Demaille converted to .texi
26832
26833 1998-12-09  Akim Demaille  <demaille@inf.enst.fr>
26834
26835         * doc/libtool.texi: converted inter-library dependencies
26836         instructions from PORTING
26837
26838 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
26839
26840         * ltmain.in (convenience, deplibs): propagate dependencies
26841         * libltdl/Makefile.am (noinst_HEADERS): don't install ltdl.h yet
26842         (noinst_LTLIBRARIES): ditto for libltdl.la
26843
26844 1998-12-08  Gary V. Vaughan  <gary@gnu.org>
26845
26846         * README-alpha: adapted the release procedure from
26847           automake/HACKING.
26848         * Makefile.am: adapted the cvs-dist and cvs-diff rules from
26849           automake/Makefile.am.  I guess this is probably safe to use
26850           already, but I didn't test it as it tags the CVS tree.  If
26851           it needs tweaking, we'll find out come 1.2d.
26852
26853 1998-12-08  Thomas Tanner  <tanner@gmx.de>
26854
26855         * ltconfig.in: fixed some typos in archive_sym_cmds
26856         * ltmain.in: replaced basename with a sed expression
26857
26858 1998-12-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
26859
26860         * configure.in: we no longer use PRCS
26861
26862         * doc/libtool.texi (author): listed all the AUTHORS
26863         (Dlopen issues): added reference to libltdl, still undocumented
26864         (C++ libraries): it's not *that* simple, after all :-(
26865         (Inter-library dependencies): they're back!
26866
26867 1998-12-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
26868
26869         * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
26870         work, use `test a = b' instead
26871
26872         * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
26873
26874         * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
26875         not available
26876
26877 1998-12-04  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
26878
26879         * ltconfig.in: Port to SCO UnixWare 7.x.
26880
26881 1998-12-03  Thomas Tanner  <tanner@gmx.de>
26882
26883         * ChangeLog: converted CR/LF back to CR format
26884         * ltconfig.in: new variable sys_lib_search_path for searching
26885         of installed libraries, export archive_sym_cmds and
26886         sys_lib_search_path
26887         * ltmain.in: use sys_lib_search_path, removed extradeplibs
26888         (they're not portable)
26889
26890 1998-12-02  Gary V. Vaughan  <gary@gnu.org>
26891
26892         * libltdl/configure.in: look for string.h or else strings.h, and
26893         also check for ANSI strrchr() function.  Fix `undescore before
26894         symbols' macro to not rely on a.out (cygwin uses a.exe!).  Fix
26895         `underscore for dlsym' to set cache variable properly, not just in
26896         environment of AC_DEFINE(NEED_USCORE).
26897         * libltdl/ltdl.h (__ptr_t): for K&R compatibility using char*.
26898         * libltdl/ltdl.c (strrchr): fallback function incase none is
26899         defined in libc.
26900         (trim, ltdlopen): replace rindex with ANSI strrchr.
26901         Add static function declarations so that we get type checking with
26902         ANSI compilers.  Use __ptr_t instead of void*.
26903
26904 1998-12-01  Thomas Tanner  <tanner@gmx.de>
26905
26906         * ltconfig.in: added -export-symbols support for GNU ld and
26907         Solaris (untested), archive_sym_cmds for -export-symbols
26908         * doc/libtool.texi, ltmain.in: -export-symbols is now
26909         independent from -export-dynamic and does not work for modules
26910         anymore
26911         * ltmain.in: added some checks for -export-symbols
26912         * mdemo/modules/Makefile.am: replaced -export-symbols with
26913         -export-dynamic since it doesn't work for modules
26914
26915 1998-12-01  Gary V. Vaughan  <gary@gnu.org>
26916
26917         * README: Updated homepage pointer to gnu libtool page.
26918
26919         * ltconfig.in (ltdll.c): update the ltdll.c file for cygwinb20.
26920         Based on code from Mumit Khan <khan@xraylith.wisc.edu>.
26921         (archive_cmds): correct typo libtool.c->ltdll.c.  Update shell
26922         commands for cygwin32.
26923
26924         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): New macro; find out
26925         whether compiled symbols have an extra leading underscore.
26926         (AM_SYS_NM_PARSE): New macro (converted to m4 from ltconfig.in);
26927         find a sed expression to parse global symbols from the output of
26928         $NM.
26929         (AM_PROG_LIBTOOL): require AM_SYS_NM_PARSE and
26930         AM_SYS_SYMBOL_UNDERSCORE.
26931         * demo/dlmain.c (main): Remove a single leading underscore from
26932         compiled symbol names if necessary.
26933
26934 1998-12-01  Alexandre Oliva  <oliva@dcc.unicamp.br>
26935
26936         * config.guess, config.sub: imported from autoconf pre-2.13
26937
26938 1998-11-27  Gary V. Vaughan  <gary@gnu.org>
26939
26940         * libtool (AM_PROG_LD): Oops... we need to know the host_os for
26941         the changes below.  I'm not sure whether mingw32 and os2 support
26942         UNC paths, if they did we wouldn't need the check, we could use
26943         UNC paths on all three; or if the bug with $LD not being
26944         shell-meta escaped was fixed, we could use '\\' separators on all
26945         three. AC_REQUIRE'ed AC_CANONICAL_HOST.
26946
26947         * libtool.m4 (AM_PROG_LD): Cannonicalize the absolute path for the
26948         ld program;  The order is funny to provide canonicalization to
26949         paths with '\\' separators as well as '/'.
26950         * ltconfig.in: ditto.
26951
26952         * AUTHORS: Added myself as a co-maintainer.
26953
26954         * ltconfig.in (archive_cmds): The `;\' in a compound statement is
26955         expanded wrongly for cygwin32, mingw32, aix3 and aix4. Changed to
26956         `;'.
26957
26958 1998-11-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
26959
26960         * libtool.spec (URL): point to www.gnu.org
26961         (Source): point to ftp.gnu.org
26962
26963         * Makefile.am (EXTRA_DIST): removed libtool.prj
26964         Reported by Akim Demaille <demaille@inf.enst.fr>
26965
26966 1998-11-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
26967
26968         * ltconfig.in (echo): avoid shell error messages when we're
26969         testing for large command line support
26970         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
26971
26972         * doc/PLATFORMS: updated last-tested release for platforms I've
26973         got access to
26974
26975         * THANKS: added Chris P. Ross
26976
26977 1998-11-24  Chris P. Ross  <cross@eng.us.uu.net>
26978
26979         * ltconfig.in: added recognition of the dynamic linker on BSD/OS 4.x
26980         * README: added BSD/OS 4.x to the list of supported platforms
26981         * doc/PLATFORMS: added BSD/OS 4.x support for various host id's
26982
26983 1998-11-24  David Heine  <dlheine@truffle.Stanford.EDU>
26984
26985         * ltmain.in (pass_all): actively pass the flags
26986
26987 1998-11-24  Thomas Tanner  <tanner@gmx.de>
26988
26989         * depdemo: added inter-library dependencies demo (doesn't work yet!)
26990         * AUTHORS: added myself to the list of maintainers
26991
26992 1998-11-22  Thomas Tanner  <tanner@gmx.de>
26993
26994         * libltdl: added support for .la files, LGPL license,
26995         K&R compatibility, some API changes and bugfixes
26996         * ltmain.in: renamed -module flag (for compiling) to -force-static,
26997         define -DSTATIC when compiling static .o files,
26998         do not include directories in dld_preloaded_symbols
26999         * mdemo: modified mdemo to work with the new libltdl
27000         * tests/mdemo-exec.test, tests/mdemo-inst.test: use .la files
27001
27002 1998-11-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
27003
27004         * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
27005         header files defining it.
27006
27007         * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
27008         libraries with gcc -shared if using gcc without GNU ld.
27009
27010         * ltconfig.in: replaced occurrences of solaris2 with solaris, to
27011         prepare for Solaris 7
27012
27013 1998-11-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
27014
27015         * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen -> -dlopen
27016         (hell_LDFLAGS): added -export-dynamic and -dlopen
27017         (SUBDIRS, INCLUDES): added modules directory
27018         (foo1.c, foo2.c, foo.h, libfoo1.sym, libfoo2.sym): moved to modules
27019         * Makefile.am: ditto
27020         * tests/mdemo-exec.test, tests/mdemo-inst.test: libraries moved
27021         * mdemo/modules/Makefile.am: new file
27022
27023         * */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies
27024
27025         * ltmain.in: missing `test' between `&&' and `"$module"'
27026
27027         * ltconfig.in (echo_test_string): the whole ltconfig script was
27028         too much for DU4.0's ksh, but the first 50 lines will be enough.
27029
27030         * ltmain.in (installed): new variable defined within a .la file,
27031         so that libtool can now link already-installed libraries into a
27032         program.
27033         * NEWS: ditto
27034         * doc/libtool.texi (Linking executables): document it
27035
27036         * ltmain.in (output_objdir): compute it from $output, not $arg
27037
27038         * tests/mdemo-inst.test (libltdl): install it
27039         * tests/mdemo-unst.test (libltdl): uninstall it
27040         * tests/Makefile.am (TESTS): list ltdl-unst.test before mdemo-conf.test
27041
27042 1998-11-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
27043
27044         * NEWS: -module and libltdl
27045         * mdemo/Makefile.am: ../libltdl is within $(srcdir)
27046
27047 1998-11-18  Thomas Tanner  <tanner@gmx.de>
27048
27049         * libltdl, Makefile.am: added libltdl (a system independent
27050         dlopen wrapper library extracted from mdemo)
27051         * ltmain.in: added -module flag for compiling and linking of
27052         modules. If enabled it compiles always both .o (with -DLT_RENAME)
27053         and .lo files
27054         * mdemo: modified mdemo to work with libltdl
27055         * tests/ltdl*: added tests for libltdl
27056
27057 1998-11-16  Steve Price  <sprice@hiwaay.net>
27058
27059         * ltconfig.in: when $host_os is freebsd[23]* determine whether
27060         the current linker format is a.out or ELF
27061         * ltmain.in: add two new $version_type's, freebsd-aout and
27062         freebsd-elf, to support above change
27063
27064 1998-11-16  Stephan Kulow  <coolo@kde.org>
27065
27066         * ltconfig.in: extent no_builtin_flag to contain -fno-rtti and
27067         -fno-exceptions in case we compile with a gcc, that supports
27068         this options (egcs and gcc >= 2.8)
27069
27070 1998-11-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27071
27072         * ltmain.in (C_compiler): copy $CC before it is overwritten with
27073         command-line compiler, so that we can use it to compile C sources
27074         generated during the build.  This fixes the problem that showed up
27075         with -export-dynamic of C++ programs in egcs 1.1.
27076         * NEWS: ditto
27077
27078 1998-11-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
27079
27080         * PORTING: Porting instructions are in the libtool manual already
27081
27082         * NEWS: Mention -export-symbols and new dlpreopen
27083
27084 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
27085
27086         * ltmain.in (IFS): revert Gary's patch when parsing version
27087         information; we still use `:' here :-)
27088
27089         * NEWS: updated
27090         * PORTING: new file, with general instructions and inter-library
27091         dependencies tips
27092
27093 1998-11-11  Gary V. Vaughan  <gary@gnu.org>
27094
27095         * ltconfig.in: make use of '~' field separator in reload_cmds,
27096         old_archive_from_new_cmds, old_archive_cmds, archive_cmds,
27097         old_postinstall_cmds, postinstall_cmds, old_postuninstall_cmds,
27098         postuninstall_cmds and finish_cmds, so that the semi-colons inside
27099         if/then/else/fi and for/do/done etc. do not break the eval loop in
27100         ltmain.in (below).
27101         * ltmain.in: changed all of the eval loops to use an IFS of `~',
27102         to allow differentiation between the end-of-statement-;
27103         (now `~' is used) and end-of-substatement-; (still `;').  This
27104         fixes AIX and win32 at least.
27105
27106 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
27107
27108         * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
27109         prepended by the compiler
27110
27111 1998-11-10  Toshio Kuratomi  <badger@prtr-13.ucsc.edu>
27112
27113         * ltconfig.in: re-enable deplibs
27114         * ltmain.in: support deplibs, at least for GNU/Linux/x86
27115         Updated to current libtool by Thomas Tanner  <tanner@gmx.de>
27116
27117 1998-11-10  Gordon Matzigkeit  <gord@trick.fig.org>
27118
27119         * ltmain.in (link): Make the relink warning less harsh.
27120
27121 1998-11-07  William M. Perry  <wmperry@aventail.com>
27122
27123         * ltconfig.in (aix3, aix4): uniquify symbol names in archive_cmds
27124
27125 1998-11-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
27126
27127         * ltconfig.in: add --falback-echo, to be used if everything else
27128         fails.  The tests now check the behavior of $echo for very large
27129         strings, because some echo commands would just core dump (e.g.,
27130         Solaris' printf).  If too large strings fail, smaller ones are
27131         tested.
27132         (ltecho): arrange that, if the --fallback-echo method is selected,
27133         echo will be defined in the libtool script so as to re-run itself,
27134         not ltconfig
27135         * ltmain.in: add --fallback-echo
27136         (qecho) ensure that, if --falback-echo is being used, qecho is
27137         defined with the full pathname of the libtool script
27138
27139         * tests/sh.test (test X): ensure that the double-quote supposed to be
27140         reported is really reported
27141
27142 1998-11-07  Thomas Tanner  <tanner@gmx.de>
27143
27144         * mdemo/main.c: removed hardcoded library names; link against -lm
27145         * tests/mdemo-exec, tests/mdemo-inst: pass the library names
27146         to the program
27147
27148 1998-11-07  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
27149
27150         * README: Added DG/UX
27151         * doc/PLATFORMS: ditto
27152
27153 1998-11-04  Michael Tiemann  <tiemann@cygnus.com>
27154
27155         * ltconfig.in (irix6): it's a little bit different from irix5
27156
27157 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27158
27159         * THANKS: Added Thomas Tanner and Gary V. Vaughan
27160
27161         * ltconfig.in, ltmain.in: updated and fixed the patches below
27162
27163 1998-11-04  Thomas Tanner  <tanner@gmx.de>
27164
27165         * mdemo/*: added new demo to demonstrate building of dlopenend
27166         modules
27167         * tests/Makefile.am, tests/mdemo*: added some tests for mdemo
27168
27169 1998-11-04  Gary V. Vaughan  <gary@gnu.org>
27170
27171         * demo/configure.in: added AC_EXEEXT macro so that the tests can
27172         work on cywin32/mingw32 hosts.  This requires the current CVS
27173         autoconf
27174
27175 1998-11-04  Thomas Tanner  <tanner@gmx.de>
27176
27177         * ltmain.in: New flag -export-symbols; new dlpreopen system
27178         * demo/dlmain.c: removed dld_preloaded_symbol_count
27179
27180 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27181
27182         * ltmain.in: On installation, don't get confused if the same name
27183         appears more than once in the list of library names.
27184
27185 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27186
27187         * ltconfig.in: Add objext and libext variables.  Check for object
27188         suffix.  Check for mingw32* as well as cygwin32*.  Use objext when
27189         testing compiler.  Add support for Visual C++ on cygwin32 when not
27190         using gcc.  Add objext, libext, and fix_srcfile_path to generated
27191         libtool script.
27192         * ltmain.in: Use .${objext} rather than .o.  Use fix_srcfile_path
27193         if it is set.  Check for .obj as well as for .o, and for .lib as
27194         well as for .a.  Use .${libext} rather than .a when creating old
27195         libraries.
27196         * libtoolize.in: Change initial /bin/sh to @SHELL@.
27197         * libtool.m4 (AM_PROG_LIBTOOL): Add AC_REQUIRE for
27198         AC_CANONICAL_BUILD, so that autoconf doesn't get mixed up by the
27199         AC_REQUIRE in AC_CHECK_TOOL.
27200
27201 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27202
27203         * ltconfig.in: Look in the right directory for libtool.c in
27204         archive_cmds for cygwin32.
27205
27206 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27207
27208         * ltconfig.in: Fix cygwin32 support to avoid using a double
27209         extension, to delete the def file, to set version_type to windows,
27210         and to include versuffix in the DLL name.
27211         * ltmain.in: Add support for a version_type of windows.
27212
27213 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27214
27215         * ltconfig.in: Add cygwin32 support.
27216         * libtool.m4 (AM_PROG_LIBTOOL): Call AM_SYS_LIBTOOL_CYGWIN32 on a
27217         cygwin32 host.  Pass DLLTOOL and AS to ltconfig.
27218         (AM_SYS_LIBTOOL_CYGWIN32): New macro.
27219
27220 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27221
27222         * libtool.m4 (sco): fix typo
27223
27224 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27225
27226         * ltconfig.in: On AIX, don't treat GNU ld specially.
27227
27228 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27229
27230         * ltconfig.in (hardcode_minus_L): Revert Ian's patch for
27231         ltconfig.in.  Although -L hardcoding is not used with GNU ld, it
27232         does happen, so hardcode_minus_L must be set to yes.
27233
27234         * ltconfig.in (compiler_o_lo): check whether we can write directly
27235         to a .lo
27236
27237         * ltmain.in (compiler_o_lo): if not, write to .o and rename it
27238
27239 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27240
27241         * ltconfig.in: For sunos4 using GNU ld, set hardcode_minus_L to
27242         no.
27243         * ltmain.in: Add some hacks to make SunOS --enable-shared work
27244         when using GNU ld.
27245
27246 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27247
27248         * THANKS: Added Marc J. Fraioli
27249
27250 1998-11-04  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
27251
27252         * ltconfig.in (dgux): new supported platforms
27253
27254 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27255
27256         * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
27257         available, fallback to not so safe mechanism, by setting
27258         need_locks to warn
27259         * ltmain.in (need_locks): when need_locks is set to warn, use the
27260         lockfile to try to fail in case of incorrect concurrent builds
27261
27262         * THANKS: Added Eric Estievenart
27263
27264 1998-11-04  Eric Estievenart  <eric@via.ecp.fr>
27265
27266         * doc/libtool.texi (Compile mode): Document that -o is fully
27267         supported.
27268
27269         * libtool.m4 (libtool-lock): new ARG_ENABLE; sets (need_locks)
27270         * ltconfig.in (disable-lock): control need_locks
27271         (hard_links): check whether hard-links can be used for locking
27272         * ltmain.in (need_locks): use $output_obj.lock for locking
27273
27274 1998-11-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
27275
27276         * ltmain.in: correctly create libraries and programs with
27277         directory components in their names
27278
27279 1998-11-03  Eric Estievenart <eric@via.ecp.fr>
27280
27281         * ltmain.in (output_obj): typo
27282
27283 1998-11-02  Ian Lance Taylor  <ian@cygnus.com>
27284
27285         * ltconfig.in: For sunos4, add ${libname}.so$versuffix to
27286         library_names_spec.
27287         * ltmain.in: For version_type of sunos, set versuffix even if
27288         -version-info was not used.
27289
27290 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
27291
27292         * ltmain.in (libobj): default value must not contain directory
27293         components
27294
27295 1998-11-02  Eric Estievenart <eric@via.ecp.fr>
27296
27297         * ltconfig.in (compiler): detect if the compiler supports
27298         -c and -o flags, create a variable compiler_c_o. Also issue
27299         a big warning if it is not supported
27300
27301         * ltmain.in (compile): enable the -o option as input for libtool.
27302         The objects are not moved if the compiler supports -o with -c.
27303         Sources and objects can contain relative directories.
27304         (link): enable the linking of executables into relative directories
27305
27306 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
27307
27308         * AUTHORS: added myself as a co-maintainer
27309         * THANKS: and removed my name from here
27310
27311         * autogen: new script; run it to bootstrap libtool after checking
27312         it out from CVS
27313
27314         * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
27315         suggested by Robert Lipe <robertl@dgii.com>
27316
27317 1998-10-31  Gordon Matzigkeit  <gord@trick.fig.org>
27318
27319         * demo/Makefile.am (hc-libpath): Use parameters from the libtool
27320         in the top build directory, since the one in the demo directory is
27321         not guaranteed to exist.
27322
27323 1998-10-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
27324
27325         * demo/Makefile.am (objdir): there are no longer quotes around
27326         objdir in the libtool script
27327
27328 1998-10-27  Gordon Matzigkeit  <gord@trick.fig.org>
27329
27330         * ltconfig.in (dynamic_linker): Echo the result to fd 6, so that
27331         --silent works correctly.  From William M. Perry.
27332
27333 1998-09-24  Gordon Matzigkeit  <gord@trick.fig.org>
27334
27335         * ltmain.in (link): Fix problems when building only static
27336         libraries.  From Owen Taylor.
27337
27338 1998-08-20  Gordon Matzigkeit  <gord@trick.fig.org>
27339
27340         * ltmain.in (install): When library_names_spec has redundancies,
27341         avoid deleting the main library when installing symlinks.  From
27342         Jeff Dairiki.
27343         (link): Get rid of backticks in a here doc comment.
27344         This causes segfaults on Solaris 2.  From Aleksandar Bakic.
27345         (finish): Don't display messages
27346
27347         * ltconfig.in (archive_cmds): On HP-UX 9, make sure we don't try
27348         to move a file to itself.  From Jeff Dairiki.
27349
27350 1998-08-19  Gordon Matzigkeit  <gord@trick.fig.org>
27351
27352         * ltconfig.in: Make changes to accomodate ltmain.c.
27353
27354         * Makefile.am (clibtool): New target for the C version of libtool.
27355
27356         * ltmain.c: Experimental C version of libtool.
27357
27358 1998-07-10  Ian Lance Taylor  <ian@cygnus.com>
27359
27360         * ltmain.in (install): Test against both $SHELL and /bin/sh.
27361
27362 1998-06-30  Gordon Matzigkeit  <gord@trick.fig.org>
27363
27364         * ltmain.in: Convenience archive support.  From Ulrich Drepper.
27365
27366         * ltconfig.in (postinstall_commands): Change libraries to be
27367         executable on Solaris in order to prevent ldd from moaning.  From
27368         Julian Gosnell.
27369         (whole_archive_flag_spec): New variable to shortcut convenience
27370         archive expansion.  From Ulrich Drepper.
27371
27372 1998-06-11  Gordon Matzigkeit  <gord@profitpress.com>
27373
27374         * ltconfig.in, ltmain.in: Change globs to accept forward slashes
27375         in absolute directory names used on DOS-like systems.  From Robert
27376         S. Maier.
27377
27378 Thu May 28 18:59:08 1998  Ian Lance Taylor  <ian@cygnus.com>
27379
27380         * ltconfig.in: Use $SHELL when invoking shell scripts.
27381
27382 1998-05-21  Gordon Matzigkeit  <gord@profitpress.com>
27383
27384         * ltmain.in (compile): Don't have `-static' turn off libtool
27385         libraries, so that people can use it just to guarantee that `.o'
27386         files exist.  Suggested by David Mosberger-Tang.
27387
27388 1998-05-18  Gordon Matzigkeit  <gord@profitpress.com>
27389
27390         * ltmain.in (link): Possibly reexec the shell from within the
27391         wrapper script.
27392         Allow `-version-info' and `-release' to coexist again.  If people
27393         want to shoot themselves in the foot, I'd better let them do so,
27394         so that people who are smart enough not to can squeeze out another
27395         ounce of functionality.  From Tim Janik.
27396         (version_vars): Delete dead variable.
27397
27398         * ltconfig.in (hardcode_minus_L): FreeBSD 3.0 doesn't hardcode, at
27399         last.  Reported by Jason Nordwick.
27400
27401         * libtoolize.in, ltconfig.in, ltmain.in: Change a bunch of `if
27402         test ...; then : ; else ...' constructs to `if test ! ...; then
27403         ...', for clarity.
27404
27405 1998-05-17  Gordon Matzigkeit  <gord@profitpress.com>
27406
27407         * ltmain.in (LC_ALL, LANG): Save these values and restore them
27408         during execute mode.  From Pavel Kankovsky.
27409         (mode): Accept strace and truss as programs that throw us into
27410         execute mode.  From Pavel Kankovsky.
27411
27412 1998-05-07  Ian Lance Taylor  <ian@cygnus.com>
27413
27414         * ltconfig.in: Don't use .$versuffix or .$major.  Instead, assume
27415         the variable will include any required prefix.
27416         * ltmain.in: If no -version-info option was used, produce empty
27417         version strings rather than 0.0.0.  When making library symlinks,
27418         avoid making a symlink if the name would be the same.
27419
27420 1998-04-27  Gordon Matzigkeit  <gord@profitpress.com>
27421
27422         * ltmain.in (link): Support `unsupported' as a hardcode_action.
27423         Reported by Lars Hecking.
27424         (lib_linked): Do some sanity checking to make sure that we
27425         actually do link libtool libraries into the program to prevent the
27426         above problem from happening again.
27427
27428 1998-04-20  Gordon Matzigkeit  <gord@profitpress.com>
27429
27430         * ltmain.in: Maybe reexec under $SHELL, if $echo doesn't work.
27431         Reported by Lars Hecking.
27432
27433 1998-04-19  Gordon Matzigkeit  <gord@profitpress.com>
27434
27435         * Makefile.am (maintainer-rekey): New rule to force us to change
27436         Project-Version after we make a release.  This keeps all version
27437         numbers in sync, rather than branching just before the release.
27438         (maintainer-release, maintainer-checkin): Use maintainer-rekey.
27439
27440         * ltmain.in (finish): Notice when a finish command fails, so that
27441         we can add it to the list of recommendations.
27442
27443 1998-04-17  Gordon Matzigkeit  <gord@profitpress.com>
27444
27445         * libtool.m4 (AM_PROG_LIBTOOL): Append file descriptor 5 to
27446         config.log, so that configure doesn't clobber the messages that
27447         ltconfig put there.  From David Taylor.
27448
27449 1998-04-15  Gordon Matzigkeit  <gord@profitpress.com>
27450
27451         * ltconfig.in (archive_cmds): Try using `$CC -shared' when
27452         configuring for GCC under irix5 and irix6.  From Wolfram Gloger.
27453         (ofile): Add `--output' flag to change the name of the generated
27454         libtool.  Suggested by Wolfram Gloger.
27455
27456 1998-04-14  Gordon Matzigkeit  <gord@profitpress.com>
27457
27458         * ltmain.in: Remove all hardcoded references to ltmain.in in
27459         favour of $PACKAGE and $PROGRAM.
27460         (install): Compute the installation name for programs, in case we
27461         install a relinked file which has a different name.  Reported by
27462         Pieter Schoenmakers.
27463
27464         * ltconfig.in (echo): Try using the ksh(1) `print -r' builtin
27465         command, before reverting to printf(1).
27466
27467         * Makefile.am (libtool): Use $(SHELL) when invoking ltconfig.
27468
27469         * ltconfig.in (echo): Rewrite the test for a working echo so that
27470         we win on Solaris by avoiding printf(1), if possible.
27471
27472         * tests/quote.test (echo): Update the echo test from ../ltconfig.in.
27473
27474 1998-04-13  Ian Lance Taylor  <ian@cygnus.com>
27475
27476         * libtool.m4 (AM_PROG_NM): Don't override NM in the environment.
27477
27478 1998-04-13  Gordon Matzigkeit  <gord@profitpress.com>
27479
27480         * ltmain.in: New `--config' flag to print out all configured
27481         variables.
27482
27483         * libtool.m4: Pass ltconfig the undocumented --no-reexec flag,
27484         since we call it explicitly using CONFIG_SHELL.
27485
27486         * ltconfig.in: Restart the script under a different shell if
27487         CONFIG_SHELL is not /bin/sh.  This way, people can use Bash if
27488         they don't have a working echo program.
27489
27490         * ltmain.in, ltconfig.in: Use $SHELL instead of /bin/sh when
27491         generating executable scripts.
27492
27493         * libtoolize.in, ltconfig.in, ltmain.in: Implement the `--debug'
27494         flag to begin shell tracing.
27495
27496         * ltconfig.in (archive_cmds): Don't use `gcc -shared', even if we
27497         have GNU ld.  Reported by Robert S. Maier.
27498
27499 1998-04-06  Gordon Matzigkeit  <gord@profitpress.com>
27500
27501         * ltconfig.in (pic_flag): Create more than just a null C file, so
27502         that the SunPRO 4.2 cc doesn't complain.  From Bob Friesenhahn.
27503         (gnu_ld_acts_native): Delete this variable.  There is just too
27504         much version skew to try to pretend GNU ld is the same as the
27505         system ld.  Reported by Ian Lance Taylor.
27506         (hardcode_action): Don't bother relinking or aborting on systems
27507         that are too dynamic to have a consistent hardcode method.
27508         Reported by Doug Winterburn.
27509
27510 1998-03-24  Gordon Matzigkeit  <gord@profitpress.com>
27511
27512         * doc/libtool.texi: A little proofreading.  From Albert
27513         Chin-A-Young.
27514
27515 1998-03-23  Gordon Matzigkeit  <gord@profitpress.com>
27516
27517         * ltconfig.in: Treat HP-UX 11 just like HP-UX 10.  From Jeff Law.
27518
27519 1998-03-21  Gordon Matzigkeit  <gord@profitpress.com>
27520
27521         * ltconfig.in (reload_flag): Correct a tiny bug where `--silent'
27522         would still print out the reload flag.  From Stephan Kulow.
27523
27524 1998-03-20  Ian Lance Taylor  <ian@cygnus.com>
27525
27526         * libtool.m4: Use changequote to avoid problems with square
27527         bracket patterns.
27528
27529 1998-03-20  Gordon Matzigkeit  <gord@profitpress.com>
27530
27531         * Release 1.2.
27532
27533 1998-03-18  Gordon Matzigkeit  <gord@profitpress.com>
27534
27535         * ltmain.in: Rearrange some of the echos to make them more
27536         consistent.
27537
27538 1998-03-14  Gordon Matzigkeit  <gord@profitpress.com>
27539
27540         * ltmain.in: Break up an echo command that causes Solaris printf
27541         to dump core.  Apparently the Solaris people hardcoded a 2110-byte
27542         buffer into their printf(1).  Feh.  From John Judge.
27543
27544 1998-03-11  Gordon Matzigkeit  <gord@profitpress.com>
27545
27546         * ltconfig.in: Change the test for the PIC compiler flag so that
27547         we assume it doesn't work if there are any warning messages.  This
27548         fixes a bug using old GCC's on HP-UX.  Reported by Akim Demaille.
27549
27550 1998-03-10  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
27551
27552         * Makefile.am ($(srcdir)/ltconfig): Remove bogus command to create
27553         a file ltconfig in the build directory.
27554
27555 1998-03-09  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
27556
27557         * ltmain.in: Avoid unnecessary use of command substitution,
27558         replacing foo=`eval \\$echo \"$mumble\"` by eval foo=\"$mumble\".
27559
27560         (link): Use ${1+"$@"} in wrapper scripts in order to pass
27561         arguments safely to a program.
27562
27563         * ltconfig.in: Use -fpic instead of -fPIC if $host_cpu matches
27564         m68*.
27565
27566 1998-03-08  Gordon Matzigkeit  <gord@profitpress.com>
27567
27568         * Release 1.1.
27569
27570         * ltmain.in: <sigh> I like `here documents' a lot, but apparently
27571         they are so badly handled by old and buggy /bin/sh's, that
27572         replacing `cat <<EOF ... EOF' by `$echo "..."' improves libtool's
27573         speed by a factor of 5.  So, I've eliminated here docs from the
27574         all-important ltmain.in.  From Tom Lane.
27575
27576         * tests/tlibtool: Eliminate from distribution.
27577
27578         * tests/defs (libtool): Don't use tlibtool anymore, since we can now use
27579         the generated libtool directly.
27580
27581 1998-03-07  Gordon Matzigkeit  <gord@profitpress.com>
27582
27583         * ltconfig.in: Copy the contents of ltmain.sh into the generated
27584         libtool.  This should more than halve the execution times on old
27585         or buggy /bin/sh systems, such as HP-UX 9 and SunOS 4.1.4.  From
27586         Tom Lane.
27587
27588 1998-03-05  Gordon Matzigkeit  <gord@profitpress.com>
27589
27590         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): Add support for
27591         the `default' package, so that people can control unnamed
27592         packages.
27593         (LD): Only add an ABI flag under IRIX 6.x, since IRIX 5.x doesn't
27594         support them.  From Alexandre Oliva.
27595
27596 1998-03-01  Gordon Matzigkeit  <gord@profitpress.com>
27597
27598         * ltconfig.in: Port to UnixWare 2.x.  From Christopher Olsen.
27599
27600 1998-02-25  Gordon Matzigkeit  <gord@profitpress.com>
27601
27602         * ltmain.in (compile): For consistency, honour the `-static' flag
27603         during compilation.
27604
27605 1998-02-23  Brendan Kehoe  <brendan@cygnus.com>
27606
27607         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): For
27608         --enable-shared, heed the value of $PACKAGE from AM_INIT_AUTOMAKE
27609         if given as the argument for the library to be built shared.
27610
27611 1998-02-20  Gordon Matzigkeit  <gord@profitpress.com>
27612
27613         * libtool.m4, ltconfig.in (NM): Fix up a typo confusion between
27614         $ac_dir and $dir.  Reported by Akim Demaille.
27615
27616         * ltmain.in (link): Don't allow both `-version-info' and
27617         `-release'.  Reported by Danny Backx.
27618
27619 1998-02-18  Gordon Matzigkeit  <gord@profitpress.com>
27620
27621         * Makefile.am (noinst_SCRIPTS): Remove lineno from distribution.
27622
27623         * lineno: Remove from distribution, as it is no longer needed.
27624
27625         * Makefile.am ($(srcdir)/ltconfig.in, $(srcdir)/ltmain.sh):
27626         Rewrite these rules not to use config.status or lineno.  This
27627         makes things simpler, and reduces dependencies, so that the
27628         scripts are rebuilt and installed in srcdir only when necessary.
27629         Reported by Stephan Kulow.
27630
27631         * tests/sh.test (scripts): Remove the lineno script, since it is no
27632         longer distributed.
27633
27634         * tests/assign.test, if.test, test-e.test: Even though 15 tests looks
27635         impressive, these are now redundant.  Remove them from the
27636         distribution.
27637
27638         * tests/sh.test: Do what assign.test, if.test, and test-e.test used to
27639         do.
27640
27641 1998-02-16  Gordon Matzigkeit  <gord@profitpress.com>
27642
27643         * libtool.m4, ltmain.in, ltconfig.in: Correctly identify absolute
27644         directory names on MS-DOS.  Suggested by Bob Friesenhahn.
27645
27646         * ltconfig.in, ltmain.in, libtool.m4: Change a bunch of `sed N!d'
27647         commands to `sed Nq', for efficiency.
27648
27649         * ltmain.in: Only egrep the first few lines of files in order to
27650         determine if they were libtool-generated.  This prevents egrep(1)
27651         from taking forever to look at a 10MB binary on Solaris.  From
27652         Stephan Kulow.
27653
27654         * tests/defs: Correctly identify absolute directory names on MS-DOS.
27655         Suggested by Bob Friesenhahn.
27656
27657 1998-02-11  Gordon Matzigkeit  <gord@profitpress.com>
27658
27659         * ltconfig.in (no_undefined_flag): Add a flag to declare under
27660         Solaris that the library should not have any undefined
27661         references.  Suggested by Bob Friesenhahn.
27662
27663         * ltmain.in (mkdir): Fix one more mkdir race.  From H.J. Lu.
27664
27665 1998-02-08  Gordon Matzigkeit  <gord@profitpress.com>
27666
27667         * ltconfig.in, ltmain.in (striplib, old_striplib): Ditto.
27668
27669         * ltconfig.in (profile_flag_pattern): Get rid of dead code.
27670
27671 1998-02-07  Gordon Matzigkeit  <gord@profitpress.com>
27672
27673         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): New macros to
27674         modify the `--enable-shared' and `--enable-static' defaults in the
27675         configure script.  This works a lot better than the old
27676         `enable_shared' and `enable_static' variables did.  Reported by
27677         Bob Friesenhahn.
27678
27679         * tests/suffix.test (extensions): Added GNAT (GNU Ada Translator)
27680         suffices, `.ada', `.ads', `.adb'.  From Samuel Tardieu.
27681
27682 1998-02-07  Samuel Tardieu  <sam@inf.enst.fr>
27683
27684         * ltmain.in: Recognize .ada, .ads and .adb as known suffixes (they
27685         are used by GNAT, the GNU Ada compiler).
27686
27687 1998-02-06  Gordon Matzigkeit  <gord@profitpress.com>
27688
27689         * ltconfig.in: Turn on IRIX shared libraries again!
27690
27691         * libtool.m4 (LD): Use file(1) to discover which ABI we're using
27692         on IRIX, and propagate the correct linker flag.  From Jim Wilson.
27693
27694         * ltconfig.in, ltmain.in (Xsed): `arg=-n; echo "$arg" | sed ...'
27695         gives problems, because the `-n' is interpreted as an option to
27696         echo(1).  So, use `echo "X$arg" | sed -e 's/^X//' ...' everywhere,
27697         via the $Xsed convenience variable.  Suggested by H.J. Lu.
27698
27699 1998-02-02  Gordon Matzigkeit  <gord@profitpress.com>
27700
27701         * ltconfig.in: Turn off IRIX shared library support until 32-bit
27702         and 64-bit ABI differences can be resolved.
27703
27704 1998-01-28  Gordon Matzigkeit  <gord@profitpress.com>
27705
27706         * libtool.m4 (LD): Reverse yesterday's change because `-old_ld'
27707         isn't accepted by GCC.
27708
27709 1998-01-27  Gordon Matzigkeit  <gord@profitpress.com>
27710
27711         * ltconfig.in (soname_spec): Add in user-specified release numbers
27712         for every host system that supports an soname that differs from
27713         the linkname.
27714
27715         * libtool.m4 (LD): Add `-old_ld' to the list of flags that need to
27716         be passed through on SGI.  Reported by Chris Lee.
27717
27718         * ltmain.in (release): Prepend a hyphen to the release number, and
27719         fix a typo because `-version-info' takes only 3 args.  From
27720         H.J. Lu.
27721
27722 1998-01-25  Gordon Matzigkeit  <gord@profitpress.com>
27723
27724         * ltconfig.in (library_names_spec): On Linux, use the
27725         user-specified release.
27726
27727         * ltmain.in (link): Allow the user to specify a release number for
27728         the library using the `-release' flag.  Suggested by H.J. Lu and
27729         Ian Lance Taylor.
27730
27731 1998-01-23  Gordon Matzigkeit  <gord@profitpress.com>
27732
27733         * tests/Makefile.am (TESTS_ENVIRONMENT): Export some important
27734         environment variables.  Reported by Ian Haggard.
27735
27736 1998-01-19  Gordon Matzigkeit  <gord@profitpress.com>
27737
27738         * ltconfig.in (old_postuninstall_cmds): Reorder so that chmod
27739         happens after ranlib.  From Markus F.X.J. Oberhumer.
27740
27741         * ltmain.in (mode): Added `gcc*' and `*-gcc*' to the patterns that
27742         recognize compilers.  From Pieter Schoenmakers.
27743         (link): Recognize `.a' files again.  Suggested by Pieter
27744         Schoenmakers.
27745
27746 1998-01-18  Gordon Matzigkeit  <gord@profitpress.com>
27747
27748         * ltmain.in (compile): Recognize `.asm' extension, for use with
27749         the nasm assembler.  From Markus F.X.J. Oberhumer.
27750
27751         * tests/suffix.test (extensions): Recognize `.asm'.  From Markus
27752         F.X.J. Oberhumer.
27753
27754 1998-01-12  Gordon Matzigkeit  <gord@profitpress.com>
27755
27756         * ltconfig.in (runpath_var): Use instead of
27757         `hardcode_runpath_var'.
27758
27759 1998-01-11  Gordon Matzigkeit  <gord@profitpress.com>
27760
27761         * ltmain.in (finish): Add a better --finish message.  Suggested by
27762         Kenneth Albanowski.
27763
27764         * ltconfig.in, ltmain.in: Fix a few typos.
27765
27766 1998-01-03  Gordon Matzigkeit  <gord@profitpress.com>
27767
27768         * ltmain.in (link): Quote the definition of $echo in the wrapper
27769         script.
27770
27771         * ltconfig.in (export_dynamic_flag_spec): Use `--export-dynamic'
27772         instead of `-export-dynamic', which is not accepted by all GNU
27773         ld's.  From Eiichi Takamori.
27774
27775         * ltmain.in (install): Don't print silly `library stripping'
27776         warnings.  Reported by François Pinard.
27777
27778 1997-12-19  Gordon Matzigkeit  <gord@profitpress.com>
27779
27780         * ltmain.in: Don't forget to quote the CDPATH substitution.  From
27781         Tor Lillqvist.
27782
27783 1997-12-18  Gordon Matzigkeit  <gord@profitpress.com>
27784
27785         * ltconfig.in, ltmain.in (CDPATH): Unset this environment variable
27786         so that HP-UX shells, at least, don't print out the directory name
27787         after a `cd' command.  From Tor Lillqvist.
27788
27789 1997-12-10  Gordon Matzigkeit  <gord@gnu.org>
27790
27791         * demo/Makefile.am (hardcode): Change a bunch of references to
27792         `$(LIBS)' to `-lm', since we no longer put -lm in LIBS.
27793
27794         * demo/configure.in: Delete the test for libm, since it is
27795         standard on every system.
27796
27797         * demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm,
27798         in accordance with new inter-library dependency code.
27799
27800         * ltmain.in (dependency_libs): Added to help people link programs
27801         without having to explicitly specify inter-library dependencies.
27802
27803         * ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3
27804         restriction to the generated libtool script.  Reported by Stefan
27805         Westerfeld.
27806
27807 1997-12-05  Gordon Matzigkeit  <gord@gnu.org>
27808
27809         * ltconfig.in (thisdir): Quote $echo in the generated libtool
27810         script for HP-UX.  From Markus F.X.J. Oberhumer.
27811
27812         * ltmain.in (link): Recognize the `.s' suffix.  From Markus
27813         F.X.J. Oberhumer.
27814
27815         * ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX
27816         because link_static_flag is never evaled.  From Eric Backus.
27817
27818         * tests/suffix.test (extensions): Recognize `.s'.  From Markus
27819         F.X.J. Oberhumer.
27820
27821 1997-12-01  Gordon Matzigkeit  <gord@gnu.org>
27822
27823         * demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our
27824         dependencies so that parallel builds work correctly.  From Jim
27825         Meyering.
27826
27827         * Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite
27828         these rules so that they are parallelizable.  Reported by Jim
27829         Meyering.
27830
27831         * ltconfig.in (ltecho): We need special handling to quote the
27832         `echo' variable itself.  From Alexandre Oliva.
27833
27834 1997-11-29  Gordon Matzigkeit  <gord@gnu.org>
27835
27836         * ltconfig.in (COLLECT_NAMES): Enable this workaround for a broken
27837         collect2 only on AIX 3.  This avoids problems on other AIX
27838         versions.  Reported by Stefan Westerfeld.
27839
27840         * ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds,
27841         except it is a single command which is evaled, and not shown.
27842
27843         * ltconfig.in: Port to AmigaOS.  From Joop van de Wege.
27844
27845         * ltmain.in (echo): Delete preamble to check for a working echo,
27846         since we just use the one included in the generated libtool.
27847
27848         * ltconfig.in (echo): Include this definition in the generated
27849         libtool script.
27850
27851 1997-11-28  Gordon Matzigkeit  <gord@gnu.org>
27852
27853         * ltconfig.in, libtool.m4 (NM): Add /usr/ccs/bin to the PATH
27854         before checking.  From Kaveh R. Ghazi.
27855         (NM): Delete an extraneous egrep from ltconfig.
27856
27857         * ltconfig.in (finish_cmds): Change back to using `ldconfig -n'.
27858         This makes Linux behave like other systems, which is more in line
27859         with what libtool needs.
27860
27861 1997-11-27  Gordon Matzigkeit  <gord@gnu.org>
27862
27863         * ltmain.in: Change a whole bunch of `progname' variables to
27864         `modename'.  This is for clarity, and to fix a tiny typo in finish
27865         mode.
27866
27867         * libtool.spec (Name, Version): Ditto.
27868
27869         * configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate
27870         the proper package name and version number.
27871
27872         * ltconfig.in (gnu_ld_acts_native): Treat GNU ld like the native
27873         linker on SunOS 4.x.  Suggested by Alexandre Oliva.
27874         (deplibs): Change the defaults all over, since most systems cannot
27875         handle inter-library dependencies.
27876
27877         * libtool.m4, ltconfig.in (NM): Only look at the first line of the
27878         output from NM when determining whether it supports a command line
27879         option.  This prevents false positives on OSes which ignore
27880         invalid flags, like HP-UX, which prints `nm: unknown option "B"
27881         ignored'.  Reported by Kaveh R. Ghazi.
27882
27883         * ltconfig.in (finish_cmds): On Linux, update ld.so.cache by
27884         removing the `-n' flag from ldconfig.  Suggested by Kenneth
27885         Albanowski.
27886
27887         * Makefile.am (maintainer-checkin, maintainer-release): New
27888         commands to reap the full benefit of using PRCS to maintain
27889         libtool version numbers.
27890
27891         * ltconfig.in, ltmain.in (global_symbol_pipe): Explicitly cast all
27892         addresses to __ptr_t.  This fixes a bug due to a strict IRIX
27893         compiler.  Suggested by Kaveh R. Ghazi.
27894
27895 1997-11-23  Gordon Matzigkeit  <gord@gnu.org>
27896
27897         * ltmain.in (echo): For aesthetics, avoid using `$echo' when
27898         `echo' will do *exactly* the same thing.  This prevents ugly
27899         `printf %s\n timestamp > some.lo' commands from appearing in the
27900         libtool output.
27901         (link): Delete the `-allow-undefined' flag because it is now the
27902         default.  Make `-no-undefined' in order for people to declare that
27903         a library is entirely self-contained.  This prevents maintainers
27904         from accidentally creating shared libraries that won't work on
27905         AIX.  Reported by Stefan Westerfeld and Danny Backx.
27906
27907         * ltconfig.in (echo): Use an echo variable, just as in ltmain.in,
27908         because we need it for quoting substitutions.  For most of the
27909         script, though, use the default echo, just like Autoconf does.
27910         Without this patch, character \001 ends up in global_symbol_pipe.
27911         Reported by Lars Hecking and Jürgen Fluk.
27912
27913         * ltmain.in (echo): Set default to `echo=echo'.  Ooops.  That's
27914         what you get for testing obscure code paths and forgetting to
27915         revert to the original version.  Reported by Danny Backx.
27916
27917 1997-11-14  Gordon Matzigkeit  <gord@gnu.org>
27918
27919         * ltconfig.in (hardcode_libdir_flag_spec): Set to `-R' for FreeBSD
27920         2.2.  From Sean Kelly.
27921         (postuninstall_cmds, old_postuninstall_cmds): Commands to run
27922         after uninstall mode deletes the libraries.  Suggested by Joop van
27923         de Wege.
27924         (export_dynamic_flag_spec): On HP-UX, add the `${wl}-E'
27925         export_dynamic_flag_spec.  Reported by Matthias Hoelzer.
27926
27927 1997-11-11  Gordon Matzigkeit  <gord@gnu.org>
27928
27929         * ltconfig.in, ltmain.in (sed_quote_subst): Oops.  We forgot to
27930         quote backticks.  Reported by Joop van de Wege.
27931
27932         * tests/quote.test: Add backticks to the backslashify test.
27933
27934 1997-11-09  Gordon Matzigkeit  <gord@gnu.org>
27935
27936         * ltconfig.in (symcode): On IRIX, don't extract undefined
27937         symbols.  When a function is inlined by G++, references to it are
27938         still marked as undefined in the object file.  This means that our
27939         symbol file causes undefined references, because there are
27940         actually no matching global symbols.  Reported by Paul Kendall.
27941
27942 1997-11-08  Gordon Matzigkeit  <gord@gnu.org>
27943
27944         * ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool
27945         script fragment to the generated libtool, rather than to stdout.
27946
27947 1997-11-07  Gordon Matzigkeit  <gord@gnu.org>
27948
27949         * libtool.m4 (LD): Add a more sophisticated test to determine the
27950         ABI flag on IRIX 6.  Suggested by Lars Hecking and Ian Lance
27951         Taylor.
27952
27953         * ltconfig.in, ltmain.in (COLLECT_NAMES): Only export this
27954         variable if we are running under AIX.  Otherwise, we tickle a g++
27955         bug under IRIX.  From Paul Kendall.
27956
27957         * Change bug reporting address to <bug-libtool@gnu.org>.
27958
27959         * ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a
27960         wildcard argument to `-expect_unresolved'.  From Stephan Kulow.
27961
27962 1997-11-06  Gordon Matzigkeit  <gord@gnu.org>
27963
27964         * ltmain.in (link): Use libname_spec.
27965
27966         * ltconfig.in (pic_flag): Somehow, the HP-UX pic_flag (`+Z') was
27967         dropped between libtool-1.0 and now.  Add it back in.  Reported by
27968         Akim Demaille.
27969         Integrated more patches for OS/2.  From Jeff Freedman.
27970         (libname_spec): New variable for OSes that don't require their
27971         libraries to look like `libNAME.a'.
27972
27973         * ltmain.in (link): Only use global_symbol_pipe if it has been
27974         defined.  From Stephan Kulow.
27975
27976         * ltconfig.in (global_symbol_pipe): Protect C fragment under C++
27977         compilers.  From Stephan Kulow.
27978
27979         * Makefile.am ($(srcdir)/acinclude.m4,
27980         $(srcdir)/demo/acinclude.m4): Change rules to use LN_S so that
27981         they can be run on any system.
27982
27983         * ltconfig.in (archive_cmds): For NetBSD, don't include deplibs.
27984         From Dieter Baron.
27985
27986         * ltmain.in (mkdir): Check that the directory doesn't exist before
27987         we exit with error, so that we don't get races during parallel
27988         builds.  From H.J. Lu.
27989         (fbsd_hideous_sh_bug): Apparently, some FreeBSD /bin/sh's have a
27990         bug that will empty base_compile unless we do this dummy
27991         assignment.  From Marc van Kempen.
27992
27993 1997-10-22  Gordon Matzigkeit  <gord@gnu.org>
27994
27995         * libtool.m4 (libtool_shared, libtool_static): Fixed logic error
27996         to reenable override of libtool's defaults by setting
27997         enable_shared or enable_static in configure.in.  Reported by Tom
27998         Tromey and Stephan Kulow.
27999
28000         * ltmain.in (link): Add explicit support for compiler options that
28001         begin with `+'.  Reported by Aubert Pierre.
28002
28003 1997-10-20  Gordon Matzigkeit  <gord@gnu.org>
28004
28005         * ltmain.in: Silly me.  Change a bunch of occurances of "* $dir *"
28006         into *" $dir "*.
28007
28008         * ltconfig.in (pic_flag): PIC is the default for AIX.  From Mark
28009         Kettenis.  It is also the default for OSF/1.
28010
28011         * demo/Makefile.am (objdir): Quote double-quotes.  From Mark
28012         Kettenis.
28013
28014         * ltconfig.in (global_symbol_pipe): This variable is not
28015         double-evaled, so it should not be double quoted.  From Mark
28016         Kettenis.
28017
28018 1997-10-19  Gordon Matzigkeit  <gord@gnu.org>
28019
28020         * ltconfig.in (LD): Same as below.
28021
28022         * libtool.m4 (LD): Set LD if we discover an absolute path to GNU
28023         ld.  This prevents breakage when `$CC -print-prog-name=ld' returns
28024         an absolute directory name.  Reported by Ulrich Drepper.
28025
28026         * ltconfig.in: Port to OS/2 using EMX.  From Jeff Freedman.
28027
28028         * ltmain.in (link): Use old_archive_from_new_cmds.
28029
28030         * ltconfig.in (old_archive_from_new_cmds): New variable to
28031         support DLL libraries.
28032
28033         * ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is
28034         not empty.  Reported by Stephan Kulow.
28035
28036 1997-10-18  Gordon Matzigkeit  <gord@gnu.org>
28037
28038         * ltconfig.in (objdir): Use the .libs directory on all systems for
28039         which that name is valid, and _libs on the others (like MS-DOS).
28040         Suggested by Juergen Erhard.
28041
28042 1997-10-14  Gordon Matzigkeit  <gord@gnu.org>
28043
28044         * ltmain.in (link): Added a bit more inter-language support to the
28045         symbol file generation process.
28046         Instead of complaining about unrecognized argument suffices, pass
28047         them to the linker.  This prevents libtool from barfing on
28048         mandatory arguments to linker flags.  Reported by Michael
28049         Tiemann.
28050
28051 1997-10-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28052
28053         * ltmain.in (link): Change the wrapper script to follow symlinks
28054         in order to find thisdir.  This should put the final nail in the
28055         coffin for problems with wrapper scripts.  From Ian Lance Taylor.
28056
28057 1997-10-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28058
28059         * ltmain.in: Change a few `$echo' commands into `$show' to make
28060         --silent mode behave as advertised.
28061
28062         * ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use
28063         `-expect_unresolved \*'.  From Christian Mondrup.
28064
28065         * ltmain.in (install): Change install mode to allow a specified
28066         /bin/sh argument at the beginning of the install_prog.  Also,
28067         specify the shell to run when invoking libtool recursively for
28068         finish mode.  From Chris Provenzano.
28069
28070         * libtool.m4 (LIBTOOL): Change definition to include $(SHELL).
28071         From Chris Provenzano.
28072
28073         * ltconfig.in: Port to UTS 4.x.  From Alistair Crooks.
28074
28075         * demo/Makefile.am (hc-libflag): Add rules to make this binary for
28076         hardcode.test.
28077
28078         * tests/hardcode.test (hardcode_libdir_flag_spec): Check the hardcoding
28079         properties of the flag_spec, too.
28080
28081 1997-09-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28082
28083         * ltconfig.in (LD): As with libtool.m4, don't override LD.
28084         Do a whole bunch of ac_t quoting.
28085
28086 1997-09-24  Ian Lance Taylor  <ian@cygnus.com>
28087
28088         * libtool.m4 (AM_PROG_LD): Don't override LD in the environment.
28089
28090 1997-09-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28091
28092         * libtool.m4, ltconfig.in (NM): Arguments to the for loop must be
28093         whitespace separated.  This fixes a bug under FreeBSD's /bin/sh.
28094         From George Scott.
28095
28096         * tests/defs, tests/Makefile.am (clean-local): Change =inst to
28097         _inst to fix portability on MS-DOS.  From Robert Hoehne.
28098
28099 1997-09-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28100
28101         * ltmain.in (deplibs): When building shared libraries, always add
28102         -lc to deplibs.  Reported by Andreas Jellinghaus.
28103
28104 1997-09-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28105
28106         * ltconfig.in, ltmain.in (COLLECT_NAMES): If the COLLECT_NAMES
28107         environment variable has not been set, set it to empty.  This
28108         apparently fixes the AIX bug with GCC's collect2.  Reported by
28109         Mark Kettenis.
28110
28111         * demo/Makefile.am, ltmain.in, tests/hardcode.test (objdir):
28112         Changed objdir variable .libs to _libs.  This is another MS-DOS
28113         portability fix.  Suggested by Robert Hoehne.
28114
28115         * tests/hardcode.test (objdir): New variable to simplify change from
28116         .libs to _libs (MS-DOS portability fix).
28117
28118 1997-09-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28119
28120         * ltconfig.in, ltmain.in (hardcode_minusL): Fix typo by renaming
28121         hardcode_minusL to hardcode_minus_L.  Also add FreeBSD
28122         hardcode_libdir_flag_spec. From Paul Traina.
28123
28124         * ltmain.in (link): Honour multiple `-rpath' flags when linking
28125         programs.  Suggested by Bengt Martensson.
28126         Quote appearances of $echo in the wrapper script.  From Alexandre
28127         Oliva.
28128
28129         * Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead
28130         of ltmain.sh.in.
28131
28132         * ltmain.in: Rename ltmain.sh.in to ltmain.in.  This fixes a
28133         portability problem (on MS-DOS, of all places!).  From Robert
28134         Hoehne.
28135
28136 1997-09-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28137
28138         * ltmain.sh.in (link): Do not transform libtool objects to regular
28139         objects if we did not build old libs.  Reported by Tomas Hiller.
28140
28141 1997-09-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28142
28143         * demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to
28144         hell.debug in order to reflect the new static linking semantics.
28145
28146         * ltmain.sh.in (link): Add new `-all-static' flag to prevent all
28147         dynamic linking.  The old `-static' flag just prevents dynamic
28148         linking against libtool libraries.  Suggested by Bengt
28149         Martensson.
28150
28151         * ltconfig.in (with_gnu_ld): Add a test to make sure that we are
28152         actually using GNU ld.  This fixes an inconsistency when running
28153         ltconfig without using libtool.m4.  Reported by Ulrich Drepper.
28154         (global_symbol_pipe): Delete symbols that are not valid C
28155         identifiers.  Reported by Johan Danielsson and Bengt Martensson.
28156
28157         * tests/demo-exec.test, tests/demo-inst.test: Change references from
28158         hell.static to hell.debug.
28159
28160         * tests/quote.test (echo): Add the same Digital Unix echo test fixes as
28161         the ones to ltmain.sh.in from Todd Kover.
28162
28163         * tests/if.test, tests/test-e.test (scripts): Add ../lineno to
28164         the scripts we check.
28165         * tests/if.test: Check for accidental use of test X$something rather
28166         than test "X$something".
28167
28168 1997-09-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28169
28170         * ltmain.sh.in (echo): Quote all the uses of `echo' in all eval
28171         statements.  Reported by Bengt Martensson and Alexandre Oliva.
28172         (echo): Need to surround test args with double quotes, or the echo
28173         test fails on Digital Unix 4.0.  From Todd Kover.
28174
28175 1997-08-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28176
28177         * ltmain.sh.in (echo): Change test to one that uses printf.
28178         This works on AIX, which has the same problems that Solaris does,
28179         but no working echo program.
28180
28181         * tests/quote.test (echo): Change test to version that uses printf.
28182         Be less strict about return results.
28183
28184 1997-08-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28185
28186         * ltmain.sh.in (link): Make sure that compile_command and
28187         finalize_command are always evaled.  Quote any unknown linker
28188         flags we need to pass through.
28189         (compile): Use quoting for flags we pass.
28190         (echo): I hate Sun!  The /usr/bin/echo on Solaris handles
28191         backslash sequences, which makes it impossible to do backslash
28192         quoting using echo and sed.  So, we search for an echo that obeys
28193         the `echo '\t'` = '\t' equality.  Then we use `$echo' everywhere
28194         in ltmain.sh.
28195         Put tabs back into the ${IFS=   } sequences.  Emacs untabify is
28196         libtool bane.
28197
28198         * ltconfig.in: Quote all variable values that may contain
28199         metacharacters creating the libtool script.  This provides
28200         complete protection, so that even single-quotes may appear inside
28201         a libtool variable value.
28202
28203         * ltmain.sh.in (link): Quote finalize_command before putting it in
28204         the wrapper script.
28205
28206         * tests/quote.test (echo): Add the test for a non-backslash-mangling
28207         echo.
28208
28209 1997-08-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28210
28211         * ltmain.sh.in (sed_quote_subst): Change the quoting procedure
28212         again.  I think that the new one is robust for *all* characters,
28213         including whitespace and metacharacters.
28214
28215         * tests/quote.test: New torture test for libtool metacharacter quoting.
28216
28217 1997-08-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28218
28219         * ltmain.sh.in: Change quoting procedure because some shells
28220         cannot handle `]' in scan sets.  From Ian Dall.
28221
28222 1997-08-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28223
28224         * ltmain.sh.in (execute): Added -dlopen flag handling.  Suggested
28225         by Alexandre Oliva.
28226
28227 1997-08-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28228
28229         * ltmain.sh.in (link): Change executable wrapper to fix up value
28230         of thisdir, as well as progdir, if the $0 path doesn't work.  This
28231         guarantees that shlibpath_var is set correctly.  Add support for
28232         execute mode.
28233
28234         * ltmain.sh.in (execute): New mode to automatically set
28235         shlibpath_var, which allows easy debugging of uninstalled
28236         executables and libraries.  Suggested by Kenneth Albanowski.
28237
28238 1997-08-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28239
28240         * Makefile.am ($(srcdir)/ltconfig): Use lineno.
28241
28242         * configure.in: Add AM_PROG_AWK for lineno.
28243
28244         * lineno: New program to automatically put line numbers in
28245         ltconfig.
28246
28247         * libtool.m4, ltconfig.in (AM_PROG_LD): Yet Another Rewrite, which
28248         incorporates the results of `gcc -print-program-name=ld'.
28249         Suggested by Alexandre Oliva.
28250
28251 1997-08-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28252
28253         * ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off
28254         command echoing.  From Juergen A. Erhard.
28255
28256         (compile): Recognize the Objective C `.m' extension.  From Juergen
28257         A. Erhard.
28258
28259         (compile): Suppress error output from the second compilation (if
28260         any) so that we don't get those frustrating duplicate error
28261         messages.
28262
28263         * tests/suffix.test (extensions): Added Objective C extension, `.m'.
28264
28265 1997-08-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28266
28267         * ltconfig.in: Added messages to config.log to describe what sort
28268         of test we are running.
28269         (pic_flag): Added a sanity check for pic_flag.  This should fix
28270         bugs reported using the cc bundled with HP-UX 10.  Suggested by
28271         Bruno Haible and Akim Demaille.
28272
28273 1997-08-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28274
28275         * ltmain.sh.in (link): Add -dlopen and -dlpreopen support for
28276         libtool objects.  This means that dlopened modules no longer need
28277         to be shared libraries.
28278
28279         * ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC.
28280         Reported by Ian Lance Taylor.
28281
28282         * libtool.m4 (LD): Always add `-n32' to the linker if we are using
28283         GCC on IRIX 6.  Reported by Ian Lance Taylor.
28284
28285 1997-07-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28286
28287         * libtool.m4 (AM_PROG_LIBTOOL): Explicitly check enable_shared and
28288         enable_static rather than just enableval.  This allows
28289         configure.in scripts to set their own defaults.  Suggested by
28290         Tommy Reilly.
28291
28292 1997-07-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28293
28294         * ltmain.sh.in: Add NLS environment variable handling copied from
28295         ltconfig.in.  Reported by Akim Demaille.
28296         (link): If allow_undefined_flag is not supported, then turn on old
28297         libraries.  Reported by Akim Demaille.
28298
28299         * demo/dlmain.c (main): Use dld_preloaded_symbol_count to display
28300         a message about the sortedness of the symbol table.
28301
28302         * ltconfig.in (nlist): Use an nlist convenience variable, so that
28303         code can be shared directly with ltmain.sh.in.
28304
28305         * ltconfig.in, ltmain.sh.in (dld_preloaded_symbol_count): Count up
28306         the number of symbols in the dld_preloaded_symbols.  Set to `-1'
28307         if the list wasn't both sorted and counted.  This allows
28308         applications to do a quick binary search, if they are so inclined.
28309
28310 1997-07-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28311
28312         * ltmain.sh.in (link): Remove code for `-version-file', since it
28313         has been long-deprecated.
28314
28315         Disable static linking if hardcode_direct is unsupported and there
28316         is no working link_static_flag.  This provides correct behaviour
28317         for all cases on AIX 3, regardless of whether collect2 is broken
28318         or not.  Reported by Mark Kettenis.
28319
28320         * ltconfig.in: Fix typo in test polarity.  From Mark Kettenis.
28321
28322 1997-07-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28323
28324         * ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses
28325         a broken collect2.  Adapted out of test results from Mark
28326         Kettenis.
28327         (link_static_flag): Make sure the link_static_flag actually works
28328         with a trivial binary.
28329
28330         * ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed
28331         from export_dynamic_flag because we eval it in ltmain.sh.
28332
28333         * ltmain.sh.in (link_static): Don't eval link_static_flag.
28334
28335         * demo/dlmain.c (main): Change function prototype to be KNR
28336         compatible.  From Kaveh R. Ghazi.
28337
28338         * ltmain.sh.in (link): Use no_builtin_flag.  This works around
28339         conflicting definitions of builtin functions with at least GCC.
28340         Reported by Kazuhiro Sasayama.
28341
28342         * ltconfig.in (no_builtin_flag): New flag to turn off builtin
28343         functions when compiling an object file.
28344         (pipe_works): Use it.
28345
28346         * tests/demo-exec.test (status): Use status variables so that we try to
28347         execute all the programs.
28348
28349 1997-07-23  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28350
28351         * ltconfig.in (pic_flag): According to the libg++ 2.7.2 configure
28352         script, DEC alpha CPUs are PIC-only, as well.  Reported by Kevin
28353         Jacobs.
28354
28355 1997-07-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28356
28357         * ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X;
28358         Y'" with "sed -e 'X' -e 'Y'".
28359
28360         * ltmain.sh.in (link): Finish full integration for `-dlopen' and
28361         `-dlpreopen'.
28362
28363         Fix two silly typos where I used a compile_command in place of a
28364         finalize_command, and vice versa.
28365
28366         Change the wrapper script to check a hardcoded path only if the
28367         argv[0] method fails.  This is a compromise for the previous two
28368         patches, and should solve the majority of problems with wrapper
28369         scripts.  From Kenneth Albanowski.
28370
28371         (link): Change a reference to hardcode_libdir_colon_separated to
28372         use the new hardcode_libdir_separator variable.
28373
28374         * demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and
28375         `-dlpreopen' for building helldl.
28376
28377         * demo/dlmain.c (main): Succeed, even if none of the libhello
28378         symbols have been preloaded.
28379
28380 1997-07-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28381
28382         * ltconfig.in (global_symbol_pipe): Add `U' to the accepted global
28383         symbol types.  This means that we will get duplicate symbols, but
28384         we'll also be sure to get all global symbols used by the program.
28385
28386         * ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make
28387         symbol output unique.
28388
28389 1997-07-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28390
28391         * ltconfig.in (pipe_works): Check to make sure our guessed
28392         global_symbol_pipe actually works.
28393
28394         * ltmain.sh.in (link): Revert change from Kenneth Albanowski.  The
28395         wrapper scripts are more reliable when they just use the argv[0]
28396         value.  Generally, when the argv[0] method doesn't work, the user
28397         is trying to do something weird with an uninstalled binary, and
28398         should try a different approach.
28399
28400         * ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of
28401         `$cc'.  This fixes a FreeBSD bug.  Reported by Chuck Robey, and
28402         others.
28403
28404 1997-07-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28405
28406         * ltmain.sh.in (link): In wrapper scripts, hardcode the current
28407         directory to prevent phony argv[0] values from screwing up our
28408         program.  From Kenneth Albanowski.
28409
28410 1997-07-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28411
28412         * Makefile.am (demo_distfiles): Add demo/dlmain.c to the
28413         distribution.
28414
28415 1997-07-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28416
28417         * demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate
28418         `-dlopen' usage.
28419
28420         * demo/dlmain.c: New file to demonstrate preloaded modules.
28421
28422         * ltmain.sh.in (link): Add `-dlopen' flag to preload dynamic
28423         modules, even on static platforms.  Use `$NM' and
28424         `$global_symbol_cmd' to extract symbols from required files.
28425         (dlname): Delete dlname mode entirely.  It is rendered obsolete
28426         because the `.la' file format is now a public interface.
28427
28428         * ltconfig.in (NM): New variable for BSD-compatible nm program.
28429         (global_symbol_cmd): Pipeline to extract global symbols from the
28430         nm output.
28431
28432         * ltmain.sh.in: The .la file header should depend on `ltmain.sh',
28433         not `$PROGRAM'.
28434         (link): Make sure $export_dynamic_flag is eval'ed before it is
28435         used.
28436
28437         * tests/demo-exec.test, tests/demo-inst.test: Check the new
28438         helldl program, too.
28439
28440 1997-07-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28441
28442         * libtool.spec: New Red Hat Package Manager specification file in
28443         order to help people prepare distributions of libtool for Linux.
28444
28445         * ltmain.sh.in: Eliminate two accidental uses of the NONE magic
28446         value.  These were breaking libtool's behaviour when no mode is
28447         specified.
28448
28449         * tests/nomode.test: New test to make sure there is correct behaviour
28450         when we don't specify a mode.
28451
28452 1997-07-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28453
28454         * Release 1.0.
28455
28456         * ltconfig.in: On SunOS, append /usr/etc to the PATH before
28457         running ldconfig; on *BSD, append /sbin.  This was done in line
28458         with the Linux change suggested by Kenneth Albanowski.
28459
28460         * demo/Makefile.am (hardcode_tests): Aesthetic change to
28461         alphabetize order of compiling the hardcode tests.
28462
28463         * Makefile.am (EXTRA_DIST): Delete README-automake.
28464
28465         * README-automake: Remove from distribution.
28466
28467 1997-07-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28468
28469         * ltmain.sh.in (link): In the executable wrapper, strip trailing
28470         colons from the shlibpath_var because some ld.so's, notably
28471         OpenBSD 2.0's (!), don't parse colon-terminated values correctly.
28472         From Tim Pierce.
28473
28474 1997-07-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28475
28476         * ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic
28477         variable value.  Use an empty variable instead.
28478
28479         * ltconfig.in (with_gcc, with_gnu_ld): Do the tests for the C
28480         compiler and linker if the variables are unset, or if they are not
28481         GNU C and ld.
28482         (RANLIB): Eliminate redundant `if' statement.
28483
28484         * configure.in: Use AM_PROG_LD.
28485
28486         * libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU
28487         ld.
28488         (AM_PROG_LD): Rename AM_PATH_PROG_LD to AM_PROG_LD.  Parameterize
28489         so that the user can specify `--with-gnu-ld' or `--without-gnu-ld'
28490         to indicate his preference.
28491         (AM_PROG_LIBTOOL): Use it.
28492
28493 1997-06-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28494
28495         * ltconfig.in: Append /sbin to the path before running ldconfig on
28496         Linux.  This helps superusers who haven't set their PATH
28497         correctly.  Suggested by Kenneth Albanowski.
28498
28499         * tests/if.test: New test to make sure that we haven't forgotten to
28500         follow an `if' statement with a `test' command.  This should avoid
28501         the majority of hard-to-track bugs.
28502
28503 1997-06-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28504
28505         * ltmain.sh.in: Change all the `eval "$run ..."' sequences to
28506         `$run "eval ..."'.
28507
28508         Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'.
28509         This is the sequence recommended by the Autoconf manual, and
28510         should avoid any problems on older machines.  Eliminate all uses
28511         of `cp -p'.  Reported by Akim Demaille.
28512
28513         (install): Use `test $# -gt 0' instead of `test -n "$1"'.
28514
28515         * ltconfig.in (LN_S): Add test to see if `ln -s' works.
28516
28517         * libtool.m4: Increment serial number, and require AC_PROG_LN_S.
28518
28519 1997-06-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28520
28521         * ltmain.sh.in (link): Add missing `test' statement.  Reported by
28522         Akim Demaille.
28523
28524 1997-06-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28525
28526         * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of
28527         am_cv_path_ld.  From Tim Pierce.
28528
28529 1997-06-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28530
28531         * ltmain.sh.in: Redo two robustness fixes.  Alexandre had the
28532         correct approach, but I botched them.
28533
28534         * ltconfig.in (dynamic_linker): Disable shared libraries on
28535         MkLinux unless GNU libc is in use.  Reported by Akim Demaille.
28536
28537 1997-06-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28538
28539         * ltmain.sh.in (install): Add a missing `test' command.  Reported
28540         by Joel Weber.
28541         Miscellaneous fixes to improve robustness.  From Alexandre Oliva.
28542
28543         * tests/demo-conf.test (CONFIG_SITE): Set to /dev/null, so that the
28544         config.site file doesn't mess up our prefix.  Reported by Joel
28545         Weber.
28546
28547         * tests/demo-inst.test: Always run both hell.static and hell.
28548
28549         * tests/demo-conf.test: Always remove the local config.cache, but run
28550         `make distclean' only if the Makefile exists.  Otherwise, the demo
28551         directory is not cleaned up if a user uses their own config.cache.
28552         Reported by Joel Weber.
28553
28554 1997-06-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28555
28556         * ltmain.sh.in (link): Create invalid libtool objects when partial
28557         linking if we don't have PIC.  From Jeff Dairiki.
28558         (install): Fix bug if libtool object is installed to a file name
28559         without directory components.  From Jeff Dairiki.
28560
28561 1997-06-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28562
28563         * Makefile.am (demo/configure): Fix up rules to run autoconf.
28564         (aclocal.m4): Now we depend on our own libtool.m4.
28565
28566         * configure.in (AM_PATH_PROG_LD): Use it.
28567
28568         * libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used
28569         by the C compiler.
28570         (AM_PROG_LIBTOOL): Use it.
28571
28572         * ltmain.sh.in (install, uninstall): Support installing and
28573         uninstalling `.lo' files.  From Jeff Dairiki.
28574
28575 1997-06-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28576
28577         * Makefile.am (ltconfig, ltmain.sh): Only move if $(srcdir) is not
28578         the current directory.  Don't regenerate every time the package is
28579         reconfigured.  Reported by Tom Tromey.
28580         (MAINTAINERCLEANFILES): Added ltconfig, ltmain.sh, so that
28581         $(srcdir) is not messed with during a regular clean.
28582
28583 1997-06-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28584
28585         * Makefile.am (ltconfig, ltmain.sh): Be sure to move these files
28586         into $(srcdir) once they are created.
28587
28588         * ltmain.sh.in (link): Disable building static libraries.
28589         People should use their favourite AR and RANLIB commands.
28590         Disable building old-style objects if `--disable-static' is
28591         given.  Suggested by Tom Lees and Stephan Kulow.
28592
28593 1997-06-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28594
28595         * ltconfig.in (host_cpu, host_vendor, host_os): Patch up
28596         definitions, to allow for the fact that the host_os may contain
28597         hyphens (as in linux-gnu).  From Scott Goehring.
28598
28599         * ltmain.sh.in (link): Move the `dlname' setting closer to the top
28600         of the file.  Suggested by David Mosberger-Tang.
28601         Symlink the libtool archive into the `.libs' directory so that it
28602         can be found by programs that want to find a library's dlname by
28603         searching LD_LIBRARY_PATH.  Reported by David Mosberger-Tang.
28604
28605 1997-06-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28606
28607         * Tell people to report bugs to the new libtool mailing list,
28608         <bug-libtool@gnu.ai.mit.edu>.
28609
28610 1997-06-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28611
28612         * ltconfig.in (allow_undefined_flag): New variable that implements
28613         `-allow-undefined'.
28614         (archive_cmds): Enable C++ constructors for FreeBSD 2.2.  From
28615         David Nugent.
28616
28617         * ltmain.sh.in (link): Accept new `-allow-undefined' flag when
28618         building libtool libraries.  This tells libtool to allow
28619         unresolved symbols to exist in shared libraries.  Basically, this
28620         turns off shared libraries on AIX.  Suggested by Ian Lance Taylor.
28621
28622 1997-05-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28623
28624         * libtool.m4 (LD): On at least IRIX, many different flags need to
28625         be propagated to the linker if they are part of the compiler
28626         command line.  Reported by Anthony Green.
28627
28628 1997-05-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28629
28630         * ltconfig.in: Trivial port to FreeBSD 3.  From David Nugent.
28631
28632 1997-04-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28633
28634         * ltmain.sh.in (link): Remove all traces of `-whole-archive',
28635         `-no-whole-archive', and libtool convenience libraries.  They were
28636         more trouble than they're worth.  If these are ever reimplemented,
28637         they need more careful attention to make portable.
28638
28639         * libtool.m4, ltconfig.in: Added a `--disable-static' flag to turn
28640         off static library creation.  From Tom Lees (who finally convinced
28641         me that it was the Right Thing to do).
28642
28643 1997-04-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28644
28645         * ltmain.sh.in (hardcode_runpath_var, runpath_var): Use them, if
28646         the linker has no -rpath flag.
28647         Quote the values we use to set runpath_var and shlibpath_var.
28648         (link): Use libobjlibs for libtool convenience libraries.
28649
28650         * ltconfig.in (hardcode_runpath_var, runpath_var): Add new
28651         variables to describe linkers that honour `LD_RUN_PATH'.
28652         (host_cpu, host_os): Use these more specific variables, rather
28653         than the full canonical host system name.
28654
28655         * ltmain.sh.in (dlname): Distinguish between missing
28656         `-export-dynamic' and when the library is only statically linked.
28657
28658 1997-04-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28659
28660         * ltconfig.in: Trivial port to OpenBSD by making it an alias for
28661         NetBSD.  From Tim Pierce.
28662
28663 1997-04-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28664
28665         * ltconfig.in: Temporary measures to check for a broken collect2
28666         program.  Right now, we just see if we're using GCC on AIX 3.
28667
28668         * tests/hardcode.test: AIX also has arbitrary limits on the line length
28669         of input to fgrep(1), so we need to translate NUL characters to
28670         newlines in order to properly detect embedded `.libs'.  From Bruno
28671         Haible.
28672         Also redirect stderr to /dev/null, so that AIX users don't get
28673         worried by `fgrep: Maximum line length of 2048 exceeded.'.
28674
28675 1997-04-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28676
28677         * ltmain.sh.in (mode): Use `egrep -e' when inferring the operation
28678         mode.
28679
28680 1997-04-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28681
28682         * ltconfig.in (linker): Some GNU ld's don't accept `--version',
28683         but do accept `-v'.  From Jukka Honkela.
28684         (ld_shlibs): AIX lossage may be settling down.  AIX 3.2.5 ld does
28685         *not* hardcode direct libraries, but AIX 4.1.[45] ld does.
28686
28687 1997-04-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28688
28689         * ltconfig.in (hardcode_action): Fix silly logic error.  From
28690         Bruno Haible.
28691
28692 1997-04-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28693
28694         * ltmain.sh.in (install): Relink if hardcode_action is `relink',
28695         rather than using complex conditionals based on the other
28696         hardcode variables.
28697
28698         * ltconfig.in (hardcode_action): Set to `relink', not `immediate',
28699         if we can only hardcode existing directories.  Rearrange
28700         conditionals to make the intent clearer, otherwise this can be one
28701         hellish piece of code for the already-dizzy libtool maintainer.
28702
28703 1997-04-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28704
28705         * replfunc.m4: Delete from the distribution.  Documentation now
28706         describes how to set LTALLOCA and LTLIBOBJS in your own
28707         configure.in.
28708
28709         * ltmain.sh.in (link): Make sure a libtool library only counts as
28710         a shared library if its library_names are non-null.
28711         Use timestamps for .lo's when PIC is turned off, rather than
28712         symlinking to the real object.  This helps invalid mixtures of PIC
28713         and non-PIC to fail.
28714
28715 1997-04-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28716
28717         * Makefile.am (EXTRA_DIST): Distribute libtool.prj.
28718
28719         * Shameless plug: Changed source code management system from CVS
28720         to PRCS.
28721
28722         * libtool.scm: Initial Guile implementation of libtool.
28723
28724         * ltmain.sh.in: An unexpected inconsistency in my whole approach
28725         to shared libraries has proven that libtool needs to be completely
28726         rewritten if I'm going to give full shared library support for
28727         platforms that don't use the GNU C library version 2 (which to my
28728         knowledge currently only works on GNU Hurd and Linux/GNU systems).
28729         Porting the GNU C library should not be difficult, though.
28730
28731         Platforms that don't have the dlopen(3) family of functions will
28732         need to install GNU DLD version 4 in order to build any kind of
28733         libraries at all.  Unfortunately, DLD 4 won't be released for a
28734         while, because I maintain it, and I'm too busy working on libtool.
28735
28736         I'll keep the old ltconfig/ltmain.sh implementation around for as
28737         long as I can, and continue applying bug fixes, so that I'll have
28738         a reasonable starting point for this new libtool implementation.
28739
28740         It looks like this implementation will be even more complex than
28741         the original (pre-0.7) libtool.  Initial estimates show that it
28742         may be up to 3 times slower, and 5 times larger than libtool-0.9.
28743         I'll probably have to rewrite it in Guile to get reasonable
28744         performance, which will severely limit its portability for a
28745         while.
28746
28747         That will also introduce a bootstrapping issue, since the next
28748         release of Guile will use libtool to build shared libraries.  So,
28749         if users want to have shared Guile libraries, they will have to
28750         configure Guile with `--disable-shared', compile it, install it,
28751         then reconfigure Guile with `--enable-shared' and repeat.
28752
28753         I was hoping to get libtool 1.0 out the door by early April, but
28754         now it looks like it will take at least another year before it'll
28755         be usable by the public at large.  April fools.  libtool.scm
28756         doesn't exist yet, either.
28757
28758         * ltconfig.in (verify_host): Remove redundant `Transform *-*-linux*
28759         to *-*-linux-gnu*'.  From Bruno Haible.
28760
28761         * tests/hardcode.test: AIX 3 doesn't have strings(1) so we need to do a
28762         funny tr and pipe the output to fgrep.  From Bruno Haible.
28763
28764 1997-03-31  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28765
28766         * Makefile.am: Use the new AUTOMAKE and ACLOCAL variables.
28767
28768         * ltmain.sh.in (link): Only fail if a convenience library doesn't
28769         exist, and the user specified -whole-archive.
28770         Fix shell quoting that was breaking @OUTPUT@ substitution.
28771
28772 1997-03-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28773
28774         * ltmain.sh.in (link): Use the hardcode_libdir_separator.
28775         Convenience libraries are libtool objects if we're not building
28776         libtool libs.
28777
28778         * ltconfig.in (hardcode_libdir_separator): Added in case the
28779         linker only honours the last of the -rpath flags (but it can
28780         contain multiple colon-separated directories), such as on OSF/1.
28781         Reported by Carl D. Roth.
28782
28783         * ltmain.sh.in (link): Set the dlname if -export-dynamic is given.
28784         (install, uninstall): Handle the dlname file separately.
28785
28786         * ltconfig.in (export_dynamic_flag): Added to allow programs to
28787         use reflexive dlopens.
28788
28789         * ltmain.sh.in: Include the mode name in any help messages.
28790         (dlname): New mode to give the name to be used with dlopen(3).
28791
28792         * ltconfig.in (AR): Allow AR to be set by the user, and export it
28793         to ltmain.sh.
28794
28795         * ltmain.sh.in: Remove broken profiled library support.
28796         Added `-whole-archive' and `-no-whole-archive' to manipulate
28797         convenience libraries.
28798
28799 1997-03-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28800
28801         * ltmain.sh.in (link): Allow the creation of static convenience
28802         libraries made of libtool objects.  Suggested by David
28803         Mosberger-Tang.
28804
28805 1997-03-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28806
28807         * ltconfig.in: On AIX, libtool also needs to look for `B' symbols
28808         in nm output.  These are global variable definitions.
28809
28810         * ltmain.sh.in: Linking with -static should link against the
28811         linklib if old_library is empty (like it is on AIX).
28812
28813         * ltconfig.in: Change the order of OS detection, so that
28814         linux-gnu* is detected before gnu*.
28815
28816         * Makefile.am (libtool): Use the correct CC, RANLIB, LD, when
28817         generating libtool.  From Carl D. Roth.
28818
28819         * configure.in: Find out the user-supplied CC, LD, RANLIB.  From
28820         Carl D. Roth.
28821
28822 1997-03-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28823
28824         * ltmain.sh.in: Linking with -static should link against the old
28825         library, not linklib.
28826
28827         * README-automake: Updated to point to Automake 1.1m.
28828
28829 1997-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28830
28831         * demo/main.c: Use it.
28832
28833         * demo/foo.h: Declare it.
28834
28835         * demo/foo.c: Added definition of `nothing' so that we have an
28836         global variable definition, as well as functions.
28837
28838 1997-03-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28839
28840         * ltconfig.in: Make sure either enable_shared or enable_static is
28841         configured.  Reported by Tom Tromey.
28842
28843         * ltmain.sh.in: Bomb out if no library types are configured.
28844
28845 1997-02-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28846
28847         * ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed
28848         from `hardcode_libdir_flag'.
28849         (library_names_spec): Renamed from `lib_names'.
28850
28851         * ltconfig.in, ltmain.sh.in (hardcode_action): Change value from
28852         `rpath' to `immediate'.
28853
28854         * replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and
28855         AM_STRUCT_ST_BLOCKS.
28856
28857 1997-02-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28858
28859         * ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support
28860         old-style config.guess scripts.
28861
28862 1997-02-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28863
28864         * ltmain.sh.in: Create objdir *before* linking a program into it.
28865
28866 1997-02-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28867
28868         * ltconfig.in: Any ld --version that returns GNU is probably a GNU
28869         ld.  From Marcus Daniels.
28870
28871         * libtool.m4: Added AM_REPLACE_FUNCS.
28872
28873 1997-02-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28874
28875         * ltconfig.in: Trivial port to *-*-osf4.  From Bruno Haible.
28876
28877 1997-02-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28878
28879         * ltconfig.in: AIX 3 and 4 ld only hardcodes LIBPATH if -L is not
28880         specified.  This behaviour is the same with both xlc and gcc.
28881
28882 1997-02-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28883
28884         * doc/platforms.texi: Yaay!  We found a workaround for HP-UX
28885         /bin/sh buffer overflows.  From Eric Backus.
28886
28887 1997-02-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28888
28889         * Release 0.9.
28890
28891         * PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am:
28892         Move PLATFORMS to doc/platforms.texi.
28893
28894         * ltmain.sh.in (link): Use hardcode_libdir_flag to get a library
28895         directory into the resulting binary.
28896         Use hardcode_action, and make many simplifying changes to have
28897         compilation and finalization be consistent with each other.
28898
28899         * ltconfig.in: Not so amazing!  It's AIX cc that hardcodes direct
28900         libraries... gcc doesn't, though.
28901         (link_rpath_flag): Change link_rpath_flag to be
28902         hardcode_libdir_flag.
28903         (hardcode_action): New variable to simplify ltmain.sh.
28904
28905         * tests/Makefile.am (TESTS): Do the full make sequence with
28906         --disable-shared, then without.
28907
28908         * tests/demo-sttc.test: Configure the demo directory with
28909         --disable-shared.
28910
28911 1997-01-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28912
28913         * ltmain.sh.in: Change to take advantage of linkers that don't
28914         hardcode direct libraries.
28915
28916         * ltconfig.in: Amazing!  AIX 3 linker doesn't hardcode direct
28917         libraries, which makes it less buggy than AIX 4.  Reported by Mark
28918         Kettenis.
28919
28920         * demo/configure.in: Check for the math library.
28921
28922         * demo/foo.c (foo): Change to use the `cos' function, so that we
28923         need to link against another library.
28924
28925         * tests/hardcode.test: Rewrite to use fgrep on output from ``strings
28926         -a'' if using fgrep directly on the binary files fails.  From Mark
28927         Kettenis.
28928
28929 1997-01-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28930
28931         * ltmain.sh.in (link): Export the PATH variable in order to find
28932         the program, rather than giving a full path.  This helps give the
28933         program a less confusing value for argv[0].
28934
28935         * tests/hardcode.test: Make sure that ../demo/libhello.la really is a
28936         shared library before running hardcoding tests.
28937
28938 1997-01-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28939
28940         * Release 0.8.
28941
28942 1997-01-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28943
28944         * Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the
28945         distribution.
28946
28947 1997-01-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28948
28949         * libtool.m4: For IRIX 6, ld needs -n32 if cc uses it.  Reported
28950         by Bruno Haible.
28951
28952         * ltconfig.in: IRIX ld does not hardcode direct libraries.
28953         Reported by Bruno Haible.
28954
28955 1997-01-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28956
28957         * ltconfig.in, ltmain.sh.in (hardcode_shlibpath_var): Allow new
28958         value, `unsupported', since most linkers do not allow you to use
28959         shlibpath_var for initial linking.
28960
28961         * ltconfig.in: Lots of bug fixes from Bruno Haible.  Set wl on
28962         OSF/1, fix definitions of hardcode_* variables.
28963         (archive_cmds): Fix not to use +h on HP-UX 9.x.  Reported by Bruno
28964         Haible.
28965
28966         * tests/demo-conf.test: Use the CONFIG_SHELL environment variable when
28967         running configure in the demo directory.  From Bruno Haible.
28968
28969         * tests/Makefile.am (clean-local): Make distclean in the demo directory,
28970         so that ``make clean; env CC=cc make check'' works as one would
28971         expect.
28972
28973         * tests/demo-make.test: Fix typo (use $make instead of make).  Reported
28974         by Akim Demaille.
28975
28976 1997-01-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28977
28978         * libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings.
28979         Suggested by Akim Demaille.
28980
28981         * libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is
28982         specified.  Reported by Bruno Haible.
28983
28984 1997-01-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28985
28986         * demo/Makefile.am (hc-direct): Do better searching for the proper
28987         name to do a direct link.
28988         (hc-libpath): Make allowances if shlibpath_var cannot be used
28989         to find libraries at link time, such as on AIX.
28990
28991         * Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c.
28992
28993         * demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to
28994         KNR form, for better portability, and less ansi2knr hair.
28995
28996         * demo/configure.in: Remove AM_FUNC_PROTOTYPES.
28997
28998         * demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS.
28999
29000         * demo/ansi2knr.1, demo/ansi2knr.c: Removed these files.
29001
29002         * ltmain.sh.in: Use 1>&2 consistently to direct errors and
29003         warnings to stderr.
29004         (compile): Fix missing single quote.
29005
29006         * ltconfig.in (hardcode_direct): On Solaris at least, using
29007         DIR/libNAME.so does not hardcode DIR, so introduce a new hardcode
29008         variable to reflect that.
29009
29010         * ltmain.sh.in (link): If linking with $link_static_flag fails,
29011         then retry without it, but still use the .a versions of
29012         uninstalled libtool archives.
29013
29014         * tests/tlibtool: Rewrote to grab all the settings from the generated
29015         libtool script.
29016
29017         * tests/hardcode.test: Make allowances if shlibpath_var cannot be used
29018         to find libraries at link time, such as on AIX.
29019
29020 1997-01-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29021
29022         * ltmain.sh.in (link): Eval $link_static_flag.  Reported by Bruno
29023         Haible.
29024
29025         * PLATFORMS: Add to distribution.  Suggested by Bruno Haible.
29026
29027 1997-01-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29028
29029         * tests/demo-conf.test, tests/demo-inst.test, tests/demo-unst.test,
29030         tests/hardcode.test:
29031         Use $make instead of make.
29032
29033         * tests/defs (make): Add definition of $make that uses the $MAKE
29034         environment variable, if set.  Suggested by Bruno Haible.
29035
29036         * tests/demo-unst.test (leftovers): Change the find command to ignore
29037         files beginning with a dot, as egrep -v doesn't seem to do the
29038         trick.  Reported by Bruno Haible.
29039
29040 1997-01-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29041
29042         * ltconfig.in: Add support for SCO OpenServer 5.x.  From
29043         Christopher Olsen.
29044
29045         (can_build_shared): Initialize at the top of the file, so that
29046         shared libraries aren't built on platforms that don't support
29047         them.
29048
29049         * tests/hardcode.test: Added a test to make sure that libtool's idea of
29050         hardcoding system linkers is correct.
29051
29052 1997-01-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29053
29054         * ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi:
29055         Update the copyright completion years.
29056
29057 1997-01-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29058
29059         * ltconfig.in: Port to IRIX 5.3, 6.2.
29060
29061 1997-01-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29062
29063         * ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the
29064         port is trivial.
29065
29066         * libtoolize.in: Add --dry-run option, -n for short.
29067
29068 1997-01-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29069
29070         * ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't
29071         understand "export something=val".  From Bruno Haible.
29072
29073         * tests/Makefile.am (distclean-local): Remove all files that the tests
29074         may have created.  Reported by Bruno Haible.
29075
29076         * For all tests, discover srcdir when running from the command
29077         line.
29078
29079         * tests/demo-unst.test: Don't fail if make uninstall doesn't delete
29080         files beginning with a dot, since spurious .nfsXXX files may be
29081         present when running NFS.  Reported by Bruno Haible.
29082
29083 1997-01-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29084
29085         * ltmain.sh.in (compile): Recognize valid source file suffixes for
29086         Fortran and C++.
29087
29088         * tests/suffix.test: New test to guarantee that libtool compile
29089         recognizes valid source file suffices.
29090
29091 1996-12-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29092
29093         * ltmain.sh.in (link): Don't allow *._o and *.l_o to be valid
29094         object type suffixes, in spite of Automake's current ansi2knr
29095         implementation.  Not all compilers allow non-`.o' suffixes.
29096
29097 1996-12-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29098
29099         * ltmain.sh.in (link): Delete the `libtool' version type.
29100
29101 1996-12-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29102
29103         * ltconfig.in: Use the full autoconf syntax when checking for GNU
29104         C.  Delete library stripping program, until we have a correct
29105         test.
29106
29107 1996-12-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29108
29109         * ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm.  From Mark
29110         Kettenis.
29111
29112 1996-12-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29113
29114         Reported by Charles Kerr:
29115         * doc/libtool.texi (Creating Object Files): Doc fix independant ->
29116         independent.
29117
29118         * ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library
29119         dependencies.
29120
29121 1996-12-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29122
29123         * Release 0.7.
29124
29125         * Makefile.am (EXTRA_DIST): Add README-automake to the
29126         distribution.
29127
29128         * ltmain.sh.in (link): When linking libtool libraries, use
29129         standard objects if they are PIC.  This prevents spurious warnings
29130         about invalid suffixes on AIX.
29131
29132         * demo/Makefile.am: Rename libhell to libhello, so that we're not
29133         quite as offensive.
29134
29135         * ltconfig.in: Remove unnecessary host validity checking.
29136
29137         * ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la
29138         is good enough (for consistency with *.a handling).
29139
29140         * tests/demo.test: Break up into demo-conf.test, demo-make.test,
29141         demo-exec.test, demo-inst.test, and demo-unst.test, so that passes
29142         and failures are reported more quickly.
29143
29144         * tests/link-2.test: Test to make sure that .lo files don't get built
29145         directly into programs.
29146
29147 1996-12-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29148
29149         * ltmain.sh.in (link): Accept files ending in .a as standard
29150         object files.  Reported by Ulrich Drepper.
29151         Remove support for creating profiled libraries (for now).
29152         Transform all library objects into standard objects when linking a
29153         program.
29154
29155         * ltconfig.in (thisdir): How embarrassing!  An error in the regexp
29156         for finding the directory component of the script path.
29157
29158         * tests/tlibtool: A typically-configured libtool script, that uses
29159         ../ltmain.sh.in for its backend.
29160
29161         * tests/link.test: Make sure that it is legal to link against .a files.
29162
29163 1996-12-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29164
29165         * ltmain.sh.in (compile): Support `.S' (preprocessed assembler)
29166         files.  Reported by Anthony Green.
29167
29168         * libtoolize.in: Give clearer instrutions for how to update
29169         aclocal.m4.
29170
29171         * ltconfig.in, ltmain.sh.in (link): Add support for creating
29172         reloadable objects.
29173
29174 1996-12-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29175
29176         * ltmain.sh.in (install): Fix passing -n flag to `libtool
29177         --finish'.
29178         (compile): Compile `.lo' and `.o' objects at the same time so that
29179         non-PIC objects (if they are available) can be used for linking
29180         into programs and creating static archives.  Suggested by Ulrich
29181         Drepper.
29182
29183 1996-12-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29184
29185         * ltmain.sh.in (link): Give the full path to the libtool library
29186         when sourcing it.
29187
29188         * ltconfig.in (old_striplib): Do a configuration test to determine
29189         if old-style libraries actually can be stripped or not.
29190
29191 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29192
29193         * tests/demo.test: Try compiling the ../demo subdirectory, with no
29194         special options.
29195
29196         * test-e.test: Check that we haven't used `test -e' anywhere in
29197         our portable shell scripts.
29198
29199 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29200
29201         * ltconfig.in: Delete reference to ABOUT-LIBS.
29202
29203         * tests: Added new subdirectory.
29204
29205         * doc/libtool.texi: Doc fixes, and finished up the Configuring
29206         chapter.
29207
29208         * ltmain.sh.in (link): Allow *._o and *.l_o to be valid object
29209         file suffixes, for Automake's ansi2knr implementation.
29210         New option -version-info replaces -version-file.
29211
29212         [help]: Give a pointer to mode-specific help when appropriate.
29213
29214         * ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC.
29215
29216         * demo: Also test Automake's ansi2knr support.
29217
29218 1996-11-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29219
29220         * ltconfig.in: Bug fixes for AIX 4, and for static platforms.
29221
29222         * ltmain.sh.in (install): Fix for loops over arguments.
29223         Need to quote ${IFS= } -> "${IFS= }".
29224         (link): Fix soname_spec bug.  Create objdir whether or not we have
29225         shared libraries.
29226
29227         * ltconfig.in: Check for library stripping program.
29228         Use test -f instead of test -e.
29229
29230 1996-11-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29231
29232         * ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't
29233         set.
29234         Be verbose about the environment variables we were configured
29235         with.
29236
29237         * ltmain.sh.in (objdir): change to .libs.
29238
29239 1996-11-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29240
29241         * ltmain.sh.in (install): Just plunge ahead with the
29242         installation... don't try to enforce dependencies.
29243
29244 1996-11-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29245
29246         * ltmain.sh.in: Fix up $libdir to be $dest in install mode.
29247
29248 1996-11-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29249
29250         * ltmain.sh: Finished rewrite of compile, link, and install
29251         modes.
29252
29253         * New ChangeLog file for libtool-0.7, since I've totally rewritten
29254         libtool.
29255
29256 1996-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29257
29258         * For historical reasons: this is when I started writing libtool.
29259 -- 
29260   Copyright (C) 1996-2010 Free Software Foundation, Inc.
29261
29262   This file is part of GNU Libtool.
29263
29264 Copying and distribution of this file, with or without modification,
29265 are permitted in any medium without royalty provided the copyright
29266 notice and this notice are preserved.  This file is offered as-is,
29267 without warranty of any kind.