Imported Upstream version 2.4.4
[platform/upstream/libtool.git] / ChangeLog
1 2014-11-29  Gary V. Vaughan  <gary@gnu.org>
2
3         version 2.4.4
4         * NEWS: Record release date.
5
6         gnulib: sync with upstream.
7         * gnulib: sync with upstream.
8
9 2014-11-29  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
10
11         libtool: optional filename-based shlib versioning on aix.
12         Support filename-based shared library versioning on AIX with the
13         lib.so library filename extension, which is used with runtime
14         linking only. Runtime linking is enabled by the -brtl linker
15         flag for executables and the -G linker flag for Shared Objects.
16         The behaviour is similar to Linux/SVR4 DT_SONAME, hence the name
17         "aix-soname=svr4".
18         * Makefile.am (TESTS_ENVIRONMENT): Pass with_aix_soname value
19         via lt_cv_with_aix_soname into testsuite.
20         * configure.ac: AC_SUBST with_aix_soname for testsuite.
21         * libltdl/loaders/dlopen.c (vm_open): Use RTLD_MEMBER flag for
22         dlopen when the filename does specify an archive member between
23         "()". Otherways, retry with appending LT_SHARED_LIB_MEMBER when
24         loading fails without but archive file seems to exist.
25         * m4/libtool.m4 (dynamic_linker): Describe configured shared
26         library versioning variant according to with_aix_soname and
27         runtime linking.
28         (soname_spec, library_names_spec, shlibpath_overrides_runpath)
29         (postinstall_cmds, postuninstall_cmds, hardcode_direct)
30         (hardcode_direct_absolute, no_undefined_flag)
31         (allow_undefined_flag): Set according to with_aix_soname and
32         runtime linking configuration.
33         (export_symbols_cmds): Decorate symbols with the weak keyword.
34         (archive_expsym_cmds): Create both shared libraries according to
35         with_aix_soname and runtime linking configuration. Filter -brtl
36         linker flag from compiler_flags for shared libraries due to its
37         side effects.
38         (enable_static): Respect with_aix_soname for disabling as well.
39         * m4/ltdl.m4 (LT_SHARED_LIB_MEMBER): Define, set based on the
40         value of the shared_archive_member_spec libtool variable.
41         * m4/ltoptions.m4 (_LT_WITH_AIX_SONAME): New. Provides
42         commandline option --with-aix-soname=aix|svr4|both. Declares
43         $shared_archive_member_spec as libtool variable.
44         (_LT_SET_OPTIONS): Define LT_INIT options "aix-soname=aix",
45         "aix-soname=svr4", "aix-soname=both". Default is
46         "aix-soname=aix".
47         * doc/libtool.texi (LT_INIT): Document new options.
48         * tests/deplibs-ident.at: To define whether this test should
49         XFAIL, use hardcode_action, hardcode_direct,
50         hardcode_direct_absolute configuration settings instead of
51         platforms aix, bitrig, hppa-hpux, interix or openbsd.
52         * tests/versioning.at: When shared_archive_member_spec is defined
53         and LDFLAGS contain -brtl, we can run the versioning check.
54         * NEWS: Update.
55
56 2014-11-28  Tijl Coosemans  <tijl@FreeBSD.org>
57
58         libtoolize: no need for umask 0 now that copying does not use tar.
59         The umask calls seem to be left over as a workaround for several
60         releases ago when libtoolize copied libltdl sources with the help
61         of tar.  Now that we use cp or ln -s exclusively, this just
62         needlessly makes the files world writable; we should just respect
63         the users' own umask setting.
64         * libtoolize.in (func_copy): Remove umask 0 calls and simplify.
65
66 2014-11-28  Gary V. Vaughan  <gary@gnu.org>
67
68         maint: syntax-checks don't like ${ even in comments!
69         * m4/ltdl.m4: Fix a comment to appease syntax-check rules.
70
71 2014-11-28  Tijl Coosemans  <tijl@FreeBSD.org>
72
73         libtool: use a modern library version scheme for freebsd-elf.
74         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Adopt downstream patch
75         used by FreeBSD for versioned library filenames.
76         * build-aux/ltmain.in (func_mode_link): Replace conflicting
77         freebsd-elf version_type case branches with a single calculation
78         setting major and versuffix to match downstream FreeBSD.
79
80         libtool: split sco version into its own type.
81         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Set version type to
82         "sco" for sco based hosts.
83         * build-aux/ltmain.in (func_mode_link): Accept new "sco"
84         version_type as equivalent to freebsd-elf.
85
86 2014-11-28  Gary V. Vaughan  <gary@gnu.org>
87
88         configury: detect dlsym underscore prefix without dlopen self.
89         * m4/ltdl.m4 (LT_FUNC_DLSYM_USCORE): Compile, load and get the
90         address of a symbol from a separate loadable module, rather than
91         assuming dlopen self works.
92         * NEWS: Update.
93         Reported by KO Myung-Hun
94
95 2014-11-26  Gary V. Vaughan  <gary@gnu.org>
96
97         ltdl: fix a long standing duplicate `-ldl' bug in the link line.
98         * m4/ltdl.m4 (LT_LIB_DLLOAD): Save contents of LIBS before
99         calling AC_SEARCH_LIBS, which prepends to LIBS by default, and
100         restore afterwards.  We set LIBADD_DLOPEN and LIBADD_SHL_LOAD
101         so that dynamic loader libraries can be added selectively only
102         where they are needed.
103         * NEWS: Update.
104
105 2014-11-21  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
106
107         tests: do not test undef symbols across shlibs on AIX.
108         On AIX, undefined symbols across shared libraries can work only
109         when the main program explicitly exports those symbols. As this
110         is bad practice anyway and -no-undefined should be preferred, we
111         skip this.
112         * tests/template.at: Skip test with undef syms across libraries
113         on AIX.
114
115         tests: question mark is extended regex for non-GNU grep.
116         Accepting \? for at-most-once in basic regex is a GNU grep
117         extension, not accepted by AIX grep for example.
118         * tests/libtool.at: Use \{0,1\} instead of ? with GREP.
119
120 2014-11-18  Gary V. Vaughan  <gary@gnu.org>
121
122         maint: Fox a resent smelling mystique.
123         * build-aux/git-log-fix: ChangeLog edit.
124         Reported by Eric Blake
125
126         bootstrap: make sure gnulib file droppings are removed.
127         * bootstrap.conf (libtool_cleanup_empty_dirs): Recent bootstrap
128         updates set source_base to null, so we need to use ${x:-y} to
129         override the null.  Autoconf Shellology says that ancient BSD
130         /bin/sh chokes on :- defaults, but bootstrap is a developer tool,
131         and so we can reasonably expect a developer to have a working
132         /bin/sh to run the bootstrap script.
133
134         bootstrap: add missing debug preambles.
135         * bootstrap.conf (libtool_prep, func_require_ltdl_dir)
136         (libtool_require_package_url): Add missing $debug_cmd calls.
137
138 2014-11-18  Vincent Lefevre  <vincent@vinc17.net>
139
140         NEWS: Fix an ancient spelling mistake.
141         * NEWS: s/propogate/propagate/.
142         * cfg.mk (old_NEWS_hash): Update.
143
144 2014-11-17  Vincent Lefevre  <vincent@vinc17.net>
145
146         libtool: fix comment typo.
147         * m4/libtool.m4: Fix -fvisbility=hidden typo in a comment.
148
149 2014-11-04  Gary V. Vaughan  <gary@gnu.org>
150
151         maint: fix a syntax-check failure.
152         * tests/cmdline_wrap.at (fail_list): quote test arguments to
153         satisfy failing syntax-checks.
154
155         libtool: fix universal library building on darwin.
156         * build-aux/ltmain.in (func_extract_archives): $basename is now
157         spelled $sed_basename.
158         * NO-THANKS: Update.
159         Reported by Misty De Meo
160
161         tests: update fat binary test case for modern darwin.
162         * tests/darwin.at: Use "-arch x86_64", which works on modern
163         Apple hardware, rather than "-arch ppc", which generally does not.
164
165         tests: fix false positive in failed test check for cmdline_wrap.at.
166         * tests/cmdline_wrap.at (fail_list): non-matching globs return as
167         a plain unexpanded string, so we also need to test for file
168         existence before expanding into fail_list.
169
170         bootstrap: sync with upsteram.
171         * gl/build-aux/bootstrap.in: Sync with upstream.
172         * bootstrap: Regenerate.
173
174 2014-11-04  KO Myung-Hun  <komh@chollian.net>
175
176         libtool: support versioning on OS/2.
177         * build-aux/ltmain.in (func_mode_link) <*-os2*>: Set major and
178         versuffix.
179         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <*-os2*>: Set
180         version_type to windows. Add a version information to soname_spec.
181         * NEWS: Update.
182
183         libtool: support -export-symbols and -export-symbols-regex on OS/2.
184         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
185         <*-os2*>: Set archive_expsym_cmds.
186         * NEWS: Update.
187
188         libtool: add -os2dllname option.
189         On OS/2, if there are many DLLs whose prefix is the same and
190         very long, the resulting DLLs are overwritten. Provide a new
191         option to force a DLL name.
192         * build-aux/ltmain.in (func_mode_help): Add a description for
193         -os2dllname.
194         (func_mode_link): Add -os2dllname.
195         * doc/libtool.texi: Document it.
196         * NEWS: Update.
197
198         libtool: fix DLL creation/installation/uninstallation on OS/2.
199         OS/2 can only load a DLL with a base name of 8 characters or
200         less. Also, on OS/2 don't install or uninstall using a link.
201         * build-aux/ltmain.in: Do not strip an import lib.
202         * m4/libtool.m4: Set variables to fix DLL creation, installation
203         and uninstallation.
204
205         libtool: support -Zxxx options used on OS/2.
206         * build-aux/ltmain.in (func_mode_link): Add -Z* case, treating
207         them specially on os2 only.
208
209         libtool: set lt_cv_deplibs_check_method to pass_all on OS/2.
210         * m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Same as the title.
211
212         libtool: there is no need to relink DLLs on OS/2.
213         * build-aux/ltmain.in (func_mode_link) <*-os2*>: need_relink=no.
214
215         ltdl: OS/2 uses other APIs to load a DLL than LoadLibrary() on Windows.
216         * m4/ltdl.m4: Remove os2* from a list for loadlibrary.la.
217
218         libtool: support to link against static libraries on OS/2.
219         * m4/libtool.m4 (_LT_COMPILER_PIC): Set lt_prog_compiler_static to
220         $wl-static.
221
222         libtool: don't eliminate duplications in $postdeps and $predeps on OS/2
223         * build-aux/ltmain.h (libtool_validate_options): Add *os2* to the list.
224
225 2014-11-03  Gary V. Vaughan  <gary@gnu.org>
226
227         configury: create installation dir before writing to it.
228         * Makefile.am (install-scripts-local): Don't forget to make the
229         installation target directory before writing to it.
230         * NO-THANKS: Update.
231         Reported by Allan McRae
232
233         maint: .PHONY rules to protect gmake from pathological file names.
234         * Makefile.am (.PHONY): Add install-scripts-local,
235         check-interactive, check-noninteractive-old,
236         check-noninteractive-new and check-noninteractive.
237
238 2014-11-02  Arkadiusz Miśkiewicz  <arekm@maven.pl>
239
240         tests: fix typo in cmdline_wrap skip check.
241         * tests/cmdline_wrap.at (fail_list): fix a typo in loop script
242         text.
243
244 2014-11-02  Gary V. Vaughan  <gary@gnu.org>
245
246         libtoolize: don't forget to remove old non-gnulib argz files.
247         * libtoolize.in (all_pkgltdl_files): Add back argz.c and argz_.h,
248         as installed by previous libtool releases.
249
250         libltdl: move libltdl argz module into LT namespace.
251         To avoid clashes with gnulib argz module in ltdl client projects,
252         move ours into its own namespace.
253         * libltdl/argz_.h, libltdl/argz.c, m4/argz.m4: Move from here...
254         * libltdl/libltdl/lt__argz_.h, libltdl/lt__argz.c, m4/ltargz.m4:
255         ...to here.
256         * Makefile.am, libltdl/libltdl/lt__glibc.h, libltdl/ltdl.mk,
257         libtoolize.in, m4/ltdl.m4: Adjust accordingly.
258         * tests/libtoolize.at, tests/ltdl-api.at, tests/nonrecursive.at,
259         tests/old-ltdl-iface.at: Adjust for different libtoolize output.
260         * libltdl/.gitignore: Adjust accordingly.
261         * NEWS: Update.
262         Reported by Pavel Raiskup
263
264         maint: whitespace cleanup.
265         * Makefile.am ($(thanks)): Fix several whitespace syntax-check
266         failures.
267
268 2014-11-02  Pavel Raiskup  <praiskup@redhat.com>
269
270         libtoolize: do not remove gnulib files with --force.
271         * libtoolize.in (func_require_seen_libtool): Do not remove
272         snippet/* files which are from Gnulib.
273
274 2014-10-30  Gary V. Vaughan  <gary@gnu.org>
275
276         tests: set bindir and libdir at configure time.
277         In particular, openSuSE on x86_64 uses CONFIG_SITE to set libdir
278         to "${exec_prefix}/lib64", which confuses testcases that check
279         the contents of "${prefix}/lib".  In general, tests that expect
280         to find installed files in specific directories should explicitly
281         set those directories at configure time.
282         * tests/testsuite.at (LT_AT_CONFIGURE): Make sure exec_prefix,
283         bindir and libdir point to known subdirectories we can check the
284         contents of later on in a test case.
285         (prefixdir): Rename from this...
286         (prefix): ...to this.  All test cases that set or use the config
287         prefix directory must now refer to `prefixdir` for the helper
288         macros in this file to work in hostile build environments such
289         as CONFIG_SITE setting openSuSE.
290         * tests/demo.at, tests/depdemo.at, tests/mdemo.at,
291         tests/tagdemo.at: Adjust accordingly.
292         Reported by Peter Breitenlohner.
293
294 2014-10-29  Reuben Thomas  <rrt@sc3d.org>
295
296         libtool: -rdynamic support for tcc.
297         * m4/libtool.m4 (_LT_LINKER_SHLIBS) <linux*>: Set
298         export_dynamic_flag_spec appropriately when using tcc.
299
300         libtool: preliminary support for tcc on linux*.
301         * m4/libtool.m4 (_LT_LINKER_SHLIBS) <linux*>: Set archive_cmds and
302         ld_shlibs appropriately when using tcc.
303         * NEWS: Update.
304
305 2014-10-29  Gary V. Vaughan  <gary@gnu.org>
306
307         maint: fix README-alpha version match.
308         With simplified release version numbering (thank you, git!), be
309         careful to recognize four part alpha versions, or short git
310         revision suffixed alpha versions correctly.
311         * Makefile.am (re_odd_version): Remove.
312         (re_alpha_version): Recognize alpha version numbers.
313         ($(readme)): Adjust accordingly.
314
315         maint: autogenerate THANKS.
316         More automation == less time wasted on menial tasks.
317         * build-aux/thanks-gen: script inspired by coreutils.
318         * Makefile.am (THANKS): Based on rule from coreutils/Makefile.am.
319         * NO-THANKS: New file.  Configure thanks-gen output.
320         * THANKS: Remove.
321
322         maint: fix prefix and suffix installs for libtoolize.
323         * Makefile.am (install-data-local): Depend on new
324         install-scripts-local, and move libtoolize install from here...
325         (install-scripts-local): ...to here.
326         Pass libtoolize destination through program transform expression.
327         (uninstall-hook): Likewise, prior to removal.
328         * NEWS: Update.
329         * THANKS: Update.
330         Reported by Václav Zeman
331
332 2014-10-27  Gary V. Vaughan  <gary@gnu.org>
333
334         maint: move Peter O'Gorman and Ralf Wildenhues to past maintainers.
335         * AUTHORS: Move Peter O'Gorman and Ralf Wildenhues from current
336         to past maintainers list.
337
338         maint: post-release administrivia
339         * NEWS: Add header line for next release.
340         * .prev-version: Record previous version.
341         * cfg.mk (old_NEWS_hash): Auto-update.
342
343         version 2.4.3
344         * NEWS: Record release date.
345
346         bootstrap: sync with upstream.
347         * gl/build-aux/bootstrap.in, gl/build-aux/funclib.sh: Sync with
348         upstream.
349         * bootstrap: Regenerate.
350
351         testsuite: fixes required for `make distcheck CC=g++`.
352         * tests/demo.at (Pdemo conf): Overide _LT_DEMO_SETUP foo.h to
353         declare foo2.
354         * tests/mdemo.at (_LT_SETUP): Don't wrap `sub` dectlaration in
355         C++ guards, because sub.c is also compiled with g++ in this test.
356         * tests/old-ltdl-iface.at (old.c): Add a return type to main
357         declaration as required by C++.
358
359         maint: fix a typo in THANKS.
360         * THANKS: s/macports\.com/macports.org/
361
362         syntax-check: use strlcpy instead of strncpy.
363         * libltdl/loaders/dyld.c (vm_sym): Use strlcpy to pacify syntax
364         checks.
365         * libltdl/ltdl.c (try_dlopen): Likewise.
366
367 2014-10-25  Gary V. Vaughan  <gary@gnu.org>
368
369         libtool: fix GCC linking with -fstack-protector.
370         * build-aux/ltmain.in (func_mode_link): Pass -fstack-protector*
371         to the linker as it is required at link time to resolve libssp symbols.
372         From Yaakov Selkowitz
373
374         libtool: support Mac OS 10.10 and newer.
375         The current template mistakenly treats a MACOSX_DEPLOYMENT_TARGET
376         value of "10.10" as "10.1" followed by junk. Thinking that the
377         build is targeting 10.1 Puma instead of 10.10 Yosemite, it tells
378         the linker to ignore undefined symbols instead of dynamically
379         resolving them. This can cause runtime crashes* and will affect
380         subsequent versions of OS X.
381         * libtool.mk (_LT_REQUIRED_DARWIN_CHECKS): Improve case match so
382         as to reject 10.10.x on the 10.1 and 10.2 branch.
383         * THANKS: Add Lawrence Velázquez.
384         From Lawrence Velázquez
385
386         bootstrap: commit latest to avoid regeneration at build time.
387         * bootstrap: Regenerate.
388
389         gnulib: sync with upstream.
390         * gnulib: Sync with upstream.
391
392 2014-05-13  Peter Rosin  <peda@lysator.liu.se>
393
394         libtool: delay expansion of $ECHO until the wrapper script runs
395         Expanding $ECHO too early leads to unquoted \n when ECHO='printf %s\n'.
396
397         Fixes bug#17478. Reported by Egmont Koblinger.
398
399         * build-aux/ltmain.in (func_emit_wrapper) [fast_install]: Quote the
400         $ECHO, and delay the expansion.
401
402 2014-05-06  Peter Rosin  <peda@lysator.liu.se>
403
404         libtool: fix nm test for MSYS/MinGW
405         The check for the -B option of nm does not work as intended on MSYS/MinGW.
406         MSYS converts /dev/null to the DOW/Windows "equivanent" special file NUL,
407         but the MinGW nm treats this file as any empty file. This means that
408         you might end up with some fallback nm instead of the desired nm. This
409         is not normally a problem, but if one nm is built without lto support, it
410         starts to matter.
411
412         Fixes sr #108558, reported by LRN.
413
414         * m4/libtool.m4 (LT_PATH_NM) [MSYS]: Use a non-existant file instead of
415         /dev/null when checking if nm supports -B.
416
417 2014-05-05  Peter Rosin  <peda@lysator.liu.se>
418
419         libtool: speed up ltwrapper_script detection in execute mode
420         Execute mode is slow and might even DOS the computer in extreme
421         cases when a parameter is a big binary file without newlines.
422         Work around this with different truncation if a suitable dd
423         utility is found.
424
425         Fixes bug#13472 and bug#16662.
426
427         Reported by Pavel Raiskup and Nick Bowler.
428
429         * m4/libtool.m4 (_LT_PATH_DD): New macro, for finding a dd utility
430         that works for the below purpose.
431         (_LT_CMD_TRUNCATE): New macro, for finding out how to truncate binary
432         pipes (fallback to the old sed truncation if no suitable dd is found
433         in _LT_PATH_DD).
434         (_LT_SETUP): Require _LT_CMD_TRUNCATE.
435         (LT_INIT): Require Autoconf 2.62, as needed by _LT_PATH_DD.
436         * build_aux/ltmain.in (func_lalib_p): Factor out the actual "generated
437         by libtool" test into...
438         (func_generated_by_libtool_p): ...this new function...
439         (func_ltwrapper_script_p): ...so that it can be reused here, when
440         truncating the pipe according to _LT_CMD_TRUNCATE.
441         * THANKS: Update.
442
443 2014-05-02  Peter Rosin  <peda@lysator.liu.se>
444
445         libtool: prevent lto from stripping the magic cookie from the cwrapper
446         Whole program optimization may remove unused symbols unless told they
447         are really needed. Fixes sr #108559 reported by LRN.
448
449         * build-aux/ltmain.in (func_emit_cwrapperexe_src:MAGIC_EXE): Try to ensure
450         that the magic cookie is preserved.
451
452 2014-02-12  Peter Rosin  <peda@lysator.liu.se>
453
454         tests: sprinkle -no-undefined when linking libraries
455         * tests/duplicate_conv.at, tests/f77demo.at, tests/fcdemo.at: Here.
456
457 2014-02-12  Peter Rosin  <peda@lysator.liu.se>
458
459         libtool: actually strip -Wl when relinking with $LD
460         Fixes the regression from commit v2.4.2.444 which is causing a
461         testsuite failure in duplicate_conv.at (seen on Cygwin).
462
463         * build-aux/ltmain.in (func_mode_link): $reload_cmds typically
464         starts with "$LD$reload_flag ..." when $LD is used to relink.
465         Make the case expression match that when checking if $LD is in
466         fact used to relink.
467
468 2014-02-10  Peter Rosin  <peda@lysator.liu.se>
469
470         bootstrap: fix description of func_sort_ver to match recent sort change
471         gl/build-aux/funclib.sh: Update comment to match reality.
472         bootstrap: Regenerate.
473
474 2014-02-05  Gary V. Vaughan  <gary@gnu.org>
475
476         doc: remove redundant "in order to" phrase where possible.
477         * doc/libtool.texi: Remove many occurrences of the redundant
478         phrase "in order to", where ever "to" is as clear or clearer.
479         * THANKS: Add attribution.
480         Reported by Dave Yost
481
482 2014-02-03  Bruce Korb  <bkorb@gnu.org>  (tiny change)
483
484         bootstrap: check for git tree with .git/. in case of soft links.
485         * gl/build-aux/bootstrap.in (func_require_git): Use
486         `test -d .git/.` to defeat soft-links versus non-GNU test.
487         * bootstrap: Regenerate.
488         * THANKS: Remove duplicate Bruce Korb entry.
489
490 2014-01-27  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
491
492         bootstrap: use `-d .git` to check whether we are in a git tree.
493         * gl/build-aux/bootstrap.in (func_require_git): .git is not a
494         regular file, use -d to check its existence.
495         * bootstrap: Regenerate.
496         * THANKS: Add Bruce Korb.
497         Reported by Bruce Korb
498
499 2014-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
500
501         libtool: opt_duplicate_compiler_generated_deps is harmful on Solaris
502         Fix for http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452.
503         * build-aux/ltmain.in (libtool_validate_options): disable the
504         opt_duplicate_compiler_generated_deps optimization for Solaris2 so
505         that gcc-4.9+ compiled C++ code with -Wl,-Bdirect on 64-bit Solaris
506         x86 can avoid unwinding failures caused by accidental mixing of the
507         libc and libgcc_s unwinders in a single executable.
508
509 2014-01-15  Gary V. Vaughan  <gary@gnu.org>
510
511         bootstrap: check for git checkout correctly.
512         * gl/bulid-aux/bootstrap.in (func_require_git): Use .git instead
513         of .gitignore to recognise a git checkout.
514         * bootstrap: Regenerate.
515
516 2014-01-11  Todd C. Miller  <Todd.Miller@courtesan.com>  (tiny change)
517
518         libtoolize: don't remove install-sh.
519         If you are not using automake, libtoolize would remove install-sh.
520         It needs the same treatment as config.guess and config.sub.
521         * libtoolize.in (func_require_seen_libtool): Remove install-sh
522         from $all_pkgaux_files, the list of files removed by
523         `libtoolize --force`.
524         * THANKS: Add Todd C. Miller.
525         * NEWS: Update.
526
527 2014-01-07  Gary V. Vaughan  <gary@gnu.org>
528
529         options-parser: --version works with 'DO NOT EDIT' preamble again.
530         * gl/build-aux/options-parser (func_version): Don't quit on first
531         leading '##' line, otherwise DO NOT edit warnings prevent version
532         information from being extracted correctly.
533         * bootstrap: Regenerate.
534
535         bootstrap: specify particular version in buildreq with =x.y.
536         * gl/build-aux/bootstrap.in (func_check_versions): If the version
537         number begins with '=' then it must match the installed version of
538         the named tool exactly.
539         * gl/doc/bootstrap.texi (buildreq): Document the '=vernum' feature.
540         * bootstrap: Regenerate.
541
542 2014-01-05  Gary V. Vaughan  <gary@gnu.org>
543
544         bootstrap: remove conftest.sed file droppings.
545         * gl/build-aux/funclib.sh: Remove conftest.sed when no longer
546         needed.
547         * bootstrap: Regenerate.
548
549 2014-01-04  Gary V. Vaughan  <gary@gnu.org>
550
551         bootstrap: replace spurious hyphen in some section comments.
552         * gl/build-aux/bootstrap.in: replace spurious hypen in same
553         section header comments with a space.
554         * gl/build-aux/extract-trace, gl/build-aux/options-parser:
555         Likewise.
556         * bootstrap: Regenerate.
557
558 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
559
560         inline-source: DO NOT EDIT warning only for top-level file.
561         * gl/build-aux/inline-source (func_include): When recursing, pass
562         through the value of `magic` so that only the very first #! magic
563         number has a DO NOT EDIT warning injected.
564         * bootstrap: Regenerate.
565
566         inline-source: gawk doesn't have boolean constants.
567         I've been writing a lot of Lua lately, but still a silly mistake:(
568         * gl/build-aux/inline-source (func_include): Use `magic` variable
569         to count #! lines found, and only output the DO NOT EDIT warning
570         after the first one.
571
572         edit-readme-alpha: adjust for recent README edits.
573         * build-aux/edit-readme-alpha: Adjust regexps for recent README
574         improvements.
575         * README.md: Fix a SPACE-TAB sanity check failure.
576
577         bootstrap: fix test-dollar sanity check failure.
578         * gl/build-aux/bootstrap.in (func_ensure_README): quote argument.
579         * bootstrap: Regenerate.
580
581         libtool: rearrange header comments for correct version/help extraction.
582         * m4/libtool.m4 (_LT_COPYING): Rearrange the comments output to
583         the generated libtool script so that --version and --help behave
584         the same as pre-funclib.sh revisions.
585         (_LT_CONFIG_SAVE_COMMANDS): Likewise.
586
587         README: Tweak into markdown format and fix some bitrot.
588         * README: Moved from here...
589         * README.md: ...to here.  Make some changes to be valid markdown
590         format, and fix some inaccuracies in text that is out of date.
591         * .gitignore: Add README.
592
593         bootstrap: support automake README requirement.
594         * gl/build-aux/bootstrap.in (func_ensure_README): New function.
595         Link missing README to existing alternative naming.
596         (require_automake_options): New functions. Fetch AM_INIT_AUTOMAKE
597         options from configure.ac.
598         (func_reconfigure): If we're using automake, and it's not in
599         foreign mode, link a README file if possible.
600         * bootstrap: Regenerate.
601
602         configury: use bootstrap ChangeLog management feature.
603         * gl/build-aux/bootstrap.in (func_autoreconf): Accept an optional
604         directory argument to pass to $AUTORECONF.
605         Update doc-comment.
606         * bootstrap.conf (func_reconfigure): Remove. Don't completely
607         overwrite bootstrap's func_reconfigure, shadowing auto-ChangeLog
608         management.
609         (func_autopoint, func_libtoolize): Overwrite these un-needed
610         calls instead.
611         (libtool_autoreconf_libltdl): New hook function to run second
612         autoreconf in libltdl directory.
613         (libtool_force_changelog): Remove.  This is all handled by
614         bootstrap's func_reconfigure again.
615         * bootstrap: Regenerate.
616
617         bootstrap: force remove file droppings from previous run.
618         Now that we generate bootstrap.new with no write permission,
619         we have to force remove it before writing now content to the file.
620         * bootstrap.in (require_bootstrap_uptodate): Remove old
621         bootstrap.new output.
622         * bootstrap: Regenerate.
623
624         inline-source: add a DO NOT EDIT notice to generated files.
625         * gl/build-aux/inline-source (func_include): Add a DO NOT EDIT
626         notice below the #! magic number of generated files.
627         * gl/build-aux/bootstrap.in (func_require_bootstrap_uptodate):
628         Remove write bit from regenerated bootstrap.new if it differs
629         from incumbent bootstrap.
630         Change the update instructions to recommend `mv -f` to cope with
631         no write permission on old bootstrap script.
632
633         bootstrap: move included files below DO NOT EDIT comment.
634         * gl/build-aux/bootstrap.in: Reorder sections to load external
635         libraries as late as possible, leaving DO NOT EDIT comment
636         visible near the top of the generated bootstrap script.
637
638         maint: use before-save-hook in Emacs footers.
639         Updating to Emacs 24 now gives me warnings about write-file-hooks
640         being obsolete.
641         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
642         gl/build-aux/funclib.sh, gl/build-aux/inline-source,
643         gl/build-aux/options-parser: Set before-save-hook in Emacs file
644         footers instead of obsolete write-file-hooks.
645
646         libtoolize: use printf '%s\n' unconditionally.
647         It's been a year since the as_echo probes were removed in Autoconf,
648         so we can follow suit and remove our equivalent bs_echo probing
649         now.  Retain $ECHO in case users need to override default printf
650         calls in museum piece environments.
651         * gl/build-aux/funclib.sh (ECHO): Default to 'printf %s\n'.
652         (bs_echo): Remove.
653         Adjust all bs_echo callers to use $ECHO instead.
654         * bootstrap: Regenerate.
655         * NEWS: Update.
656
657 2014-01-02  Gary V. Vaughan  <gary@gnu.org>
658
659         bootstrap: push Peter's version sort fix back into funclib.sh.
660         Peter's a7462c5 fix was applied to the generated bootstrap script
661         instead of the funclib.sh source, and had have been overwritten
662         the next time bootstrap was regenerated.
663         * gl/build-aux/funclib.sh (func_sort_ver): Sort numerically on the
664         non-primary keys as well.
665         * bootstrap: Regenerate, with the change applied.
666
667 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
668
669         maint: change history.
670         * NEWS: Remove alpha release header.
671         * cfg.mk (old_NEWS_hash): Update.
672
673         libtool: only strip -Wl when linking with $LD.
674         * build-aux/ltmain.in (func_mode_link): Don't strip -Wl from the
675         linker flags, except when linking with $LD, otherwise compiler
676         drivers that don't recognize and pass linker flags through will
677         choke on unrecognized options.
678
679         bootstrap: fix gitlog-to-changelog detection.
680         * gl/build-aux/bootstrap.in (func_ifcontains): Use a for loop
681         that relies on $IFS for element splitting instead of a one-shot
682         case glob that is not tolerant to \n in $gnulib_modules.
683         * THANKS: Add Reuben Thomas.
684         Reported by Reuben Thomas
685
686         maint: update copyright notices to include 2014.
687         * .x-update-copyright: New file. Exclude files not owned by this
688         project from update-copyright rules.
689         * doc/libtool.texi: Replace m-dash with n-dash in texinfo
690         copyright notice so that update-copyright matches correctly.
691         Undo bogus copyright updates to example output from gdb session.
692         Bump copyright year.
693         * Changelog.old: Revert bogus updates from previous years
694         without .x-update-copyright.
695         AUTHORS, HACKING, Makefile.am, NEWS, README, THANKS, TODO,
696         bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
697         build-aux/git-hooks/commit-msg, build-aux/ltmain.in, cfg.mk,
698         configure.ac, gl/build-aux/bootstrap.in,
699         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
700         gl/build-aux/inline-source, gl/build-aux/options-parser,
701         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
702         libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
703         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
704         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
705         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
706         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
707         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
708         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
709         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
710         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
711         libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
712         libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
713         libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
714         m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
715         m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
716         tests/am-subdir.at, tests/archive-in-archive.at,
717         tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
718         tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
719         tests/cwrapper.at, tests/darwin.at, tests/demo.at,
720         tests/depdemo.at, tests/deplib-in-subdir.at,
721         tests/deplibs-ident.at, tests/deplibs-mingw.at,
722         tests/destdir.at, tests/dlloader-api.at,
723         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
724         tests/duplicate_deps.at, tests/duplicate_members.at,
725         tests/early-libtool.at, tests/exceptions.at,
726         tests/execute-mode.at, tests/exeext.at, tests/export-def.at,
727         tests/export.at, tests/f77demo.at, tests/fail.at,
728         tests/fcdemo.at, tests/flags.at, tests/help.at,
729         tests/indirect_deps.at, tests/infer-tag.at,
730         tests/inherited_flags.at, tests/install.at,
731         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
732         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
733         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
734         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
735         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
736         tests/need_lib_prefix.at, tests/no-executables.at,
737         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
738         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
739         tests/resident.at, tests/runpath-in-lalib.at,
740         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
741         tests/standalone.at, tests/static.at, tests/stresstest.at,
742         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
743         tests/template.at, tests/testsuite.at, tests/versioning.at,
744         tests/with-pic.at: Bump copyright year.
745
746         gnulib: update to latest upstream revision.
747         * gnulib: Update.
748
749         tests: gcj cannot reliably compile directly to .o from .java
750         Some 4.3.x and 4.4.x releases of gcj insert a spurious 'dummy'
751         symbol into every object file when compiling directly from .java
752         to .o:
753         * tests/convenience.at (GCJ): make .class files from .java
754         sources first, and then compile those to native objects. This
755         works around http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42143
756
757 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
758
759         testsuite: with SunStudio12.x f77, don't fail on system symbols
760         Modern SunStudio f77 is just a wrapper for f90, which
761         explains why current master fails these test groups with:
762
763          Undefined      first referenced
764           symbol            in file
765          __f90_slw_ch      .libs/foof2.o
766          __f90_sslw        .libs/foof2.o
767          __f90_eslw        .libs/foof2.o
768          ld: fatal: symbol referencing errors. No output written to
769         .libs/libfoo2.so.0.0.0
770
771         So we allow some undefined symbols in the libraries, which are
772         resolved by the $(FLIBS) added to the final binaries in the tests.
773         This seems like the simpler, and less error inducing solution to
774         me (compared to adding $(FLIBS) to every library LDFLAGS line).
775         * tests/f77demo.at (libfoo_la_LDFLAGS, libfoo2_la_LDFLAGS)
776         (libfoo3_la_LDFLAGS, libmix_la_LDFLAGS): Remove -no-undefined
777         flag.
778         * tests/fcdemo.at: Likewise.
779
780 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
781
782         maint: use $SED and $GREP, not sed and grep in all scripts.
783         Choosing between hardcoding a tool's name, or using the shell
784         variable with a path to the user's prefered implementation or
785         configure's idea of the best available is a premature
786         optimisation.
787         * build-aux/ltmain.in, gl/build-aux/bootstrap.in,
788         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
789         libtoolize.in: Use $SED and $GREP consistently throughout,
790         instead of hardcoding sed and grep.
791         * bootstrap: Regenerate.
792
793         tests: use TESTS_ENVIRONMENT for EGREP and FGREP.
794         Be consistent about passing commands to the testsuite, and use
795         TESTS_ENVIRONMENT consistent.
796         * Makefile.am (TESTS_ENVIRONMENT): Add EGREP and FGREP.
797         * tests/testsuite.at: Remove EGREP and FGREP extractions from
798         generated libtool script.
799
800         tests: use $GREP throughout.
801         Trust the user, and use $GREP from TESTS_EVVIRONMENT uniformly.
802         * Makefile.am (TESTS_ENVIRONMENT): Add GREP setting.
803         * tests/am-subdir.at, tests/archive-in-archive.at, tests/bindir.at,
804         tests/configure-iface.at, tests/cwrapper.at, tests/darwin.at,
805         tests/demo.at, tests/destdir.at, tests/dumpbin-symbols.at,
806         tests/early-libtool.at, tests/execute-mode.at, tests/export-def.at,
807         tests/export.at, tests/f77demo.at, tests/fcdemo.at, tests/flags.at,
808         tests/help.at, tests/inherited_flags.at, tests/install.at,
809         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
810         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlopen.at,
811         tests/lt_dlopenext.at, tests/ltdl-api.at, tests/ltdl-libdir.at,
812         tests/mdemo.at, tests/old-m4-iface.at, tests/pic_flag.at,
813         tests/resident.at, tests/runpath-in-lalib.at, tests/search-path.at,
814         tests/static.at, tests/sysroot.at, tests/template.at,
815         tests/testsuite.at, tests/versioning.at: Replace all hardcoded grep
816         invocations with $GREP.
817
818         tests: use $SED throughout.
819         Trust the user, and use $SED from TESTS_ENVIRONMENT uniformly.
820         Hardcoding 'sed' for "simple" edits is a premature optimisation.
821         * tests/cdemo.at, tests/cmdline_wrap.at, tests/cwrapper.at,
822         tests/darwin.at, tests/demo.at, tests/duplicate_conv.at,
823         tests/duplicate_members.at, tests/execute-mode.at, tests/export.at,
824         tests/inherited_flags.at, tests/install.at, tests/libtoolize.at,
825         tests/mdemo.at, tests/need_lib_prefix.at, tests/old-m4-iface.at,
826         tests/sysroot.at, tests/tagdemo.at, tests/testsuite.at: Replace all
827         hardcoded sed invocations with $SED.
828
829         tests: run cmdline_wrap last, or not at all if anything else failed.
830         * Makefile.am (TESTSUITE_AT): Move stresstest.at and cmdline_wrap.at
831         to the end of the list.
832         * tests/cmdline_wrap.at: If previous tests have failed, then we
833         already know that rerunning them will fail too, so save time by
834         skipping in that case.
835
836         configury: remove spurious g modifier in sed expression.
837         * Makefile.am (rebuild): Remove useless g modifier from sed
838         expression.
839
840         configury: use $(SED) where input does not end in newline.
841         On Solaris machines the system sed does not process the last
842         line of input unless it ends with a newline, which means it
843         cannot be used to massage the output of git-version-gen, because
844         it deliberately omits the terminating newline.
845         * Makefile.am (rebuild): Use the sed command found by configure,
846         which has a better chance of working properly than the first sed
847         on PATH.
848
849         tests: skip fcdemo checks when $FC cannot compile fortran90.
850         Avoid spurious fcdemo failures when Autoconf picks f77 or
851         similar for a fortran90 compiler.
852         * tests/testsuite.at (LT_AT_TAG): Using FC and FCFLAGS from make
853         TESTS_ENVIRONMENT, check that we really can compile fortran90
854         or else skip.
855
856         funclib.sh: improve comments.
857         * gl/build-aux/funclib.sh: Add a comment explaining the need for
858         extra SED and GREP searches.
859
860 2013-12-09  Peter Rosin  <peda@lysator.liu.se>
861
862         maint: fix out-of-tree autoreconf w/o manual rebootstrap
863         build-aux/ltmain.in: Look for funclib.sh and options-parser in
864         the same location ltmain.in is found.
865
866 2013-11-19  Peter Rosin  <peda@lysator.liu.se>
867
868         bootstrap: fix version sort
869         Reported by Ozkan Sezer who suffered from makeinfo 4.13 being detected
870         as lesser than the required makeinfo 4.8.
871
872         * bootstrap (func_sort_ver): Sort numerically on the non-primary keys
873         as well.
874
875 2013-11-08  Peter Rosin  <peda@lysator.liu.se>
876
877         tests: Use a basic grep that matches the basic regexp style.
878         Fixes a testsuite failure on Cygwin.
879
880         * tests/tagdemo.at: Use grep instead of egrep.
881
882 2013-10-29  Gary V. Vaughan  <gary@gnu.org>
883
884         bootstrap: fix a quoting error.
885         * gl/build-aux/bootstrap.in (func_require_buildreq_autoconf): Quote
886         the extracted version number correctly so that it is displayed in
887         verbose mode.
888
889 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
890
891         funclib.sh: simplify version comparison functions.
892         * gl/build-aux/funclib.sh (func_sort_ver): Much simplified.
893         (func_lt_ver): New function, return true if arguments are in
894         ascending order.
895         * gl/build-aux/bootstrap.in: Simplify with func_lt_ver.
896         * gl/build-aux/do-release-commit-and-tag.diff: Likewise.
897         * bootstrap: Regenerate.
898
899         Co-Authored-by: Paul Eggert <eggert@cs.ucla.edu>
900
901 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
902
903         bootstrap: show found GREP and SED in verbose mode.
904         * gl/build-aux/bootstrap.in (EGREP, FGREP, GREP, SED): Remove.
905         These are already set by funclib.sh.
906         (func_prep): After --verbose has been processed, show the paths
907         to GREP and SED found by funclib.sh.
908         * bootstrap: Regenerate.
909
910         refactor: simplify program path searching in funclib.sh.
911         * gl/build-aux/funclib.sh (func_path_progs): New function. Factor
912         out common code from GREP and SED searches.
913         (func_check_prog_sed, func_check_prog_grep): New functions, for
914         non-common code.
915         (scriptversion): Update.
916         * bootstrap: Regenerate.
917
918         bootstrap: search for a non-truncating grep binary.
919         On at least Unixware 7.1.4, the first grep binary on PATH is
920         unable to process the extract-trace scripts.
921         * gl/build-aux/funclib.sh (GRUP): Search PATH for a grep binary
922         that doesn't truncate its own output if available, and set GREP
923         accordingly.
924         * Makefile.am (SCRIPT_ENV): Add setting for GREP.
925         * bootstrap: Regenerate.
926         Reported by Tim Rice.
927
928         bootstrap: search for a non-truncating sed binary.
929         On at least Unixware 7.1.4, the first sed binary on PATH is
930         unable to process the extract-trace scripts.
931         * gl/build-aux/funclib.sh (PATH_SEPARATOR): Set to : or ;
932         according to a feature test.
933         (func_executable_p): New function.
934         (SED): Search PATH for a sed binary that doesn't truncate its
935         own output if available, and set SED accordingly.
936         (scriptversion): Update.
937         * Makefile.am (SCRIPT_ENV): New macro, for propagating configured
938         variables.
939         (ltdl_ac_aux_dir, $(ltmain_sh), install-data-local): Use it.
940         * bootstrap: Regenerate.
941         Reported by Tim Rice.
942
943 2013-10-27  Gary V. Vaughan  <gary@gnu.org>
944
945         tests: use autotest as_unset rather than rerolling $unset locally.
946         On at least Unixware 7.1.4, the shell variable 'unset' gets set
947         to 'no' during the testsuite run, breaking several test cases.
948         We should have been using Autotest $as_unset anyway.
949         * tests/testsuite.at (unset): Remove test and variable setting.
950         (LT_AT_MAKE): Use $as_unset as provided by autotest boilerplate
951         instead of our own $unset.
952         * tests/demo.at (uninstalled libraries ave priority): Likewise.
953         Reported by Tim Rice.
954
955         maint: post-release administrivia
956         * NEWS: Add header line for next release.
957         * .prev-version: Record previous version.
958         * cfg.mk (old_NEWS_hash): Auto-update.
959
960 2013-10-26  Gary V. Vaughan  <gary@gnu.org>
961
962         version 2.4.2.418
963         * NEWS: Record release date.
964
965         gnulib: update to latest upstream revision.
966         * gnulib: Update.
967
968         gnulib: use func_sort_ver instead of GNU sort -V in do-release-commit-and-tag.
969         * gl/build-aux/do-release-commit-and-tag: Source funclib.sh and
970         then use portable func_sort_ver rather than force installation of
971         all GNU coreutils just for sort -V support.
972
973         refactor: move func_sort_ver from bootstrap.in to funclib.sh.
974         * gl/build-aux/bootstrap.in (func_sort_ver): Move from here...
975         * gl/build-aux/funclib.sh (func_sort_ver): ...to here.
976         * bootstrap: Regenerate.
977
978         tests: use K&R main() syntax for old-ltdl-iface.at.
979         At least Mac OS 10.8.5 clang chokes on the previous
980         'const void *argv[]' parameter, but since we don't use it
981         anyway, keep to the theme of old api support and use K&R
982         syntax.
983         * tests/old-ltdl-iface.at (old.c): Use 'main ()' instead of
984         unportable 'int main (int argc, const void *argv[])'.
985
986         libltdl: bump -version-info revision by 1.
987         The only changes to libltdl sources since v2.4.2 have been
988         cosmetic and stylistic.
989         * libltdl/ltdl.mk (LTDL_VERSION_INFO): For a release with no
990         interface changes C:R:A becomes C:R+1:A.
991
992         maint: Update README-release for Makefile.inc -> ltdl.mk rename.
993         * gl/top/README-release.diff: s/Makefile.inc/ltdl.mk/g
994
995         maint: bump serials on m4 sources changed since v2.4.2.
996         * m4/argz.m4: Bump serial to 6.
997         * m4/libtool.m4: Bump serial to 58.
998         * m4/ltdl.m4: Bump serial to 19.
999         * m4/ltoptions.m4: Bump serial to 8.
1000
1001         maint: fix a syntax-check violation from commit 12641bd.
1002         * build-aux/ltmain.in (func_mode_link): Reverse test operands to
1003         forestall misinterpretation of contests of shell variable as
1004         operand 1.
1005
1006 2013-10-10  Vadim Zeitlin  <vz-libtool@zeitlins.org>  (tiny change)
1007
1008         libtool: Don't fall back to static libraries if building them was disabled
1009         If -no-undefined was not specified but the platform didn't
1010         support shared libraries with undefined symbols (e.g. Cygwin/
1011         MinGW), static libraries were built instead of shared ones,
1012         even if building them was explicitly disabled with --disable-
1013         static configure option.
1014
1015         Fix this by stopping with a fatal error if a shared library
1016         can't be built in this case instead of unexpectedly building a
1017         static library instead.
1018
1019         * libltdl/config/ltmain.m4sh (func_mode_link()): Stop with
1020         fatal error when trying to build a shared library without -no-
1021         undefined on a platform not supporting undefined symbols in
1022         shared libraries.
1023
1024 2013-10-10  Brooks Moses  <bmoses@google.com>
1025
1026         libtool: Remove unneeded quotes in assignment.
1027         The quotes in this assignment cause "make syntax-check" to
1028         fail.  Thus, this patch removes them.
1029
1030 2013-10-09  Fabian Groffen  <grobian@gentoo.org>  (tiny change)
1031
1032         libtool: Fix x86_64-pc-solaris2.* GNU ld breakage
1033         Since commit [1] libtool tries to set a 64-bits target for GNU
1034         ld.  However, it does so wrongly for x86_64-pc-solaris2.*
1035         targets, causing libtool to believe the linker is called
1036         ld_sol2.  There is no such thing, and it obviously breaks
1037         things further down.  Some people wrongly assume there is
1038         supposed to be an ld_sol2 on their systems, e.g. [2].
1039
1040         I think the original change is fragile, because it assumes it
1041         has all CHOSTs matched, then appends _sol2.  In the wild,
1042         people have used amd64-pc-solaris2* too, so perhaps it would
1043         be safer if the code only appended _sol2 if there is actually
1044         an explicit target set.
1045
1046         Anyhow, since the 64-bits sparc target is called sparc64-* or
1047         sparcv9-*, the sparc case is already correctly handled, so in
1048         the attached patch, I just added an x86_64-* case, although I
1049         could imagine relaxing the i?86 case to *86*-pc-solaris2* too.
1050
1051         In any case, defaulting to a linker called ld_sol2 is wrong.
1052
1053         [1] http://lists.gnu.org/archive/html/libtool-commit/2011-02/
1054         msg00000.html
1055         [2] http://osdyson.org/issues/8
1056
1057 2013-10-09  Olivier Blin  <olivier.blin@softathome.com>  (tiny change)
1058
1059         libtool: Fix detection of ld version with parentheses.
1060         ld from crosstool-NG reports a version string with an extra
1061         version number in a parenthetical note:
1062         GNU ld (crosstool-NG 1.13.0) 2.21.1
1063
1064         This made libtool assume that the ld version was the
1065         crosstool-NG version (1.13.0) instead of the real ld version
1066         (2.21.1).
1067
1068         To fix the ld version string, this patch filters out any string
1069         between parentheses that is followed by a space.
1070
1071         Because of this bug, filtering of exported symbols was not
1072         taking place with crosstool-NG toolchains.
1073
1074         This issue has bee noticed when building pango, which exported
1075         harfbuzz symbols that should have remained hidden.
1076
1077 2013-10-09  Brooks Moses  <bmoses@google.com>
1078
1079         libtool: Fix comment indentation
1080         This trivial patch fixes indentation on a comment to match
1081         the style used elsewhere in m4/libtool.m4.
1082
1083 2013-10-09  DJ Delorie  <dj@redhat.com>
1084
1085         libtool: Add TPF settings for LT_SYS_DLOPEN_SELF
1086         * m4/libtool.m4: Since we know that all TPF builds are cross-
1087         builds, do not attempt to run linker tests during config. Use
1088         known constants instead, since we know how dlopen() is
1089         implemented.
1090
1091 2013-10-09  Vincent Lefevre  <vincent@vinc17.net>  (tiny change)
1092
1093         libtool: Fix $wl setting for tcc on GNU systems
1094         (This addresses http://bugs.debian.org/663945.  See there for
1095         more-detailed discussion.)
1096
1097         tcc gained support for "-Wl,-rpath -Wl,<directory>" in its
1098         commit 7fb0482a ("Support linker options passed in several -Wl
1099         param", 2012-03-14) but libtool doesn't know to use it.  Teach
1100         it.
1101
1102         Without this change, running "make check" on MPFR when it has
1103         been built with tcc and shared libraries doesn't work because
1104         libtool generates a -rpath option, which tcc doesn't support.
1105
1106 2013-10-09  Peter Johansson  <trojkan@gmail.com>
1107
1108         libtool: use AS_HELP_STRING in LT_WITH_SYSROOT help message.
1109         This patch fixes so help output is formatted similar with
1110         other macros using AS_HELP_STRING. Also it outputs '[=DIR]'
1111         as I suspect intended rather than '=DIR'.
1112
1113 2013-10-09  Joseph Prostko  <joe.prostko@gmail.com>  (tiny change)
1114
1115         libtool: Haiku change for shlibpath_overrides_runpath
1116         Pretty much all changes to Haiku for Libtool have been
1117         upstreamed, however we currently have an incorrect value for
1118         shlibpath_overrides_runpath.  It should be "no" instead of
1119         "yes".
1120
1121         Previously Scott McCreary had submitted patches for us, but I
1122         told him I would work to get this committed, as he is quite
1123         busy lately.
1124
1125         Here is a commit he made to our Haiku Ports site though, that
1126         shows the exact change I am proposing done against Libtool
1127         2.4.2.
1128
1129         http://ports.haiku-files.org/browser/haikuports/sys-devel/
1130         libtool/patches/libtool-2.4.2.patch
1131
1132 2013-10-09  Brooks Moses  <bmoses@google.com>  (tiny change)
1133             Johannes Obermayr  <johannesobermayr@gmx.de>
1134
1135         libtool: Discard "-mllvm $arg" options when linking.
1136         Clang accepts options of the form "-mllvm $arg", and passes the
1137         argument as an option to LLVM.  These options caused problems
1138         for Libtool when linking; in some cases, the -mllvm option is
1139         passed through but the corresponding argument is dropped.  (See
1140         for example http://llvm.org/bugs/show_bug.cgi?id=14716.)
1141
1142         This patch resolves the issue by explicitly matching -mllvm and
1143         taking an argument.  Since Clang never uses LLVM for linking,
1144         the matched "-mllvm $arg" option is irrelevant for the link
1145         step, and we can simply discard it once we've recognized it.
1146
1147 2013-10-09  Ondřej Bílka  <neleai@seznam.cz>
1148
1149         maint: Fix various comment and documentation typos.
1150         Ondřej writes: "Hi, this is upstream version of patch that I
1151         sent to gcc.  I generated this patch with tool that I am
1152         writing: https://github.com/neleai/stylepp"
1153
1154         (Note: The generated patch was adjusted to retain the non-US
1155         but correct spelling of 'rigourous' before commit.  --Brooks)
1156
1157 2013-10-08  David 'Digit' Turner  <digit@google.com>
1158
1159         libtool: Add Android/Linux support.
1160         This patch adds proper Android support to libtool. The main
1161         issues are the following:
1162
1163           - Versioned libraries are not supported by the platform and
1164             its build/packaging tools.
1165
1166           - The dynamic linker is not GNU ld, there is no support for
1167             DT_RUNPATH.
1168
1169           - Similarly, there is no ldconfig.
1170
1171 2013-09-17  Peter Rosin  <peda@lysator.liu.se>
1172
1173         libtool: trust -print-search-dirs from recent GCC
1174         Alan Modra hints in [1] that -print-search-dirs was fixed in
1175         GCC 4.2(?), so that it nowadays automatically appends
1176         -print-multi-os-directory for the applicable directories. I.e.
1177         it should no longer be necessary for libtool to append a second
1178         ../lib64 when GCC has already done so. Also, the multi-os
1179         appending loop seems to have been added specifically for early
1180         (arguably broken) bi-arch enabled GCCs that printed -m32
1181         directories even though -m64 was the default [2]. So, my
1182         conclusion is that we want any libtool magic to affect
1183         -print-search-dirs output from contemporary GCCs as little as
1184         possible, while continuing to append the
1185         -print-multi-os-directory for the legacy case.
1186
1187         Fixes bug#15321 reported by Ozkan Sezer.
1188
1189         [1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20425
1190         [2] http://lists.gnu.org/archive/html/bug-libtool/2006-09/msg00019.html
1191
1192         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): If any of the
1193         directories printed by -print-search-dirs ends with the
1194         content of -print-multi-os-directory, then assume that
1195         GCC adds the multi-os-directory where appropriate all by
1196         itself and hence don't try to second guess when to add
1197         it manually.
1198         * THANKS: Update.
1199
1200 2013-09-16  Gary V. Vaughan  <gary@gnu.org>
1201
1202         bootstrap: clean up spurious 'gnulib-cache.m4 missing' error.
1203         * gl/build-aux/bootstrap.in (func_reconfigure): Don't show an
1204         error when running without gnulib-cache.m4.
1205         * bootstrap: Regenerate.
1206
1207 2013-09-15  Gary V. Vaughan  <gary@gnu.org>
1208
1209         bootstrap: make ensure_changelog work for update mode projects.
1210         * gl/build-aux/bootstrap.in (func_bootstrap): Move
1211         func_changelog_ensure invocation from here...
1212         (func_reconfigure): ...to here. If gnulib_modules is empty, then
1213         grep gnulib-cache.m4 for gitlog-to-changelog before invoking
1214         func_changelog_ensure.
1215         * bootstrap: Regenerate.
1216
1217         bootstrap: fetch defaults from gnulib-cache.m4 for non-imported projects.
1218         Recent changes uncovered some bugs in handling of gnulib-tool
1219         options for projects that check in gnulib-cache.m4 rather than
1220         keep a separate list of modules and options in bootstrap.conf.
1221         * gl/build-aux/bootstrap.in (func_require_doc_base)
1222         (func_require_gnulib_name, func_require_local_gl_dir): New
1223         functions to set defaults from gnulib-cache.m4 in projects that
1224         use gnulib-tool in --update mode.
1225         (func_require_gnulib_tool_base_options): Use them to fetch
1226         defaults.
1227         (func_require_gnulib_copy_cmd): New function to calculate the
1228         options required for gnlib-tool copy command.
1229         (func_gnulib_tool_copy_file): Simplify accordingly.
1230         (scriptversion): Bump.
1231
1232 2013-09-05  Gary V. Vaughan  <gary@gnu.org>
1233
1234         maint: normalise formatting of recent commit log entry.
1235         * build-aux/git-log-fix: Add a summary line to ChangeLog entry of
1236         most recent commit.
1237
1238 2013-09-05  Brooks Moses  <bmoses@google.com>
1239
1240         maint: add Brooks Moses to AUTHORS file.
1241         * AUTHORS: Add myself to committers list.
1242
1243 2013-08-29  Gary V. Vaughan  <gary@gnu.org>
1244
1245         bootstrap: gnulib_tool=true means no gnulib submodule.
1246         * gl/build-aux/bootstrap.in (func_require_gnulib_tool): No
1247         sneaking off and cloning gnulib when the user already specified
1248         gnulib_tool=true in their bootstrap.conf!
1249         * bootstrap: Regenerate.
1250
1251 2013-08-23  Alan Modra  <amodra@bigpond.net.au>
1252
1253         bootstrap: make first char of IFS a space.
1254         Putting tab first in IFS breaks func_echo_all usage of $*,
1255         resulting in failure of func_infer_tag to match a command line
1256         using a $CC with trailing spaces. The trailing spaces were
1257         stripped out of CC_expanded but words in $CC were separated by
1258         tabs. This didn't match the makefile expansion of $CC using the
1259         standard IFS with a first char of space.
1260         * gl/build-aux/funclib.sh (IFS): Make first char a space.
1261         * bootstrap: Regenerate.
1262
1263 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
1264
1265         bootstrap: support --no-git and --no-po options.
1266         * gl/build-aux/bootstrap.in (bootstrap_parse_options): Accept
1267         --no-git as an alias for --skip-git for compatibility with gnulib
1268         bootstrap, and --no-po for symmetry.
1269         Reported by Mike Miller.
1270
1271         bootstrap: support gnulib gnulib_tool_option_extras settings.
1272         * gl/build-aux/bootstrap.in (func_gnulib_tool): Even though we
1273         don't need it, support gnulib_tool_option_extras for bootstrap.conf
1274         ported from gnulib bootstrap.
1275         * bootstrap: Regenerate.
1276         Reported by Mike Miller.
1277
1278         bootstrap: support sha1 binary on OpenBSD.
1279         * gl/build-aux/bootstrap.in (func_update_po_files): Remove the
1280         use of --status in a way that will suppress all error messages,
1281         but since this is only used to minimize updates, it shouldn't
1282         cause an issue.
1283         Look for a sha1 binary if the other SHA1SUM settings are not
1284         found.
1285         Also exit early if there is a problem updating the po file
1286         checksums.
1287         * bootstrap: Regenerate.
1288         Ported from a gnulib patch by Padraig Brady.
1289
1290         bootstrap: support tools that don't accept '--version' in buildreq.
1291         * gl/build-aux/bootstrap.in (func_check_tool): Check whether there
1292         is an executable as given or on the command PATH.
1293         (func_check_version): Use func_check_tool to avoid invoking --version
1294         when buildreq specifies '-' for the version number.
1295         * bootstrap: Regenerate.
1296         Reported by Mike Miller.
1297
1298         bootstrap: diagnose bad $buildreq formatting.
1299         Particularly when porting from gnulib bootstrap to libtool
1300         bootstrap, it's easy to forget the extra URL column used for
1301         error reporting.
1302         * gl/build-aux/bootstrap.in (func_check_versions): A non-URL
1303         pattern in the 3rd column of buildreq triggers a fatal error.
1304         * bootstrap: Regenerate.
1305         Reported by Mike Miller.
1306
1307 2013-08-23  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
1308
1309         bootstrap: support OpenBSD sed.
1310         * gl/build-aux/bootstrap.in (func_insert_if_absent): Work around
1311         the problem of OpenBSD sed not supporting '-' as a notation for
1312         standard input.
1313         * bootstrap: Regenerate.
1314         * THANKS: Add Mike Miller.
1315         Reported by Mike Miller.
1316
1317 2013-08-23  Steve Ellcey  <sellcey@mips.com>
1318             Gary V. Vaughan  <gary@gnu.org>
1319
1320         libtool: set correct linker ABI flags on mips64 linux.
1321         m4/libtool.m4 (_LT_ENABLE_LOCK): Select the n32 or n64 ABI when
1322         linking to match the ABI produced with the user's compiler flags.
1323
1324 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
1325
1326         maint: correct many abuses of the word "which".
1327         * HACKING, NEWS, TODO, bootstrap, bootstrap.conf,
1328         build-aux/ltmain.in, cfg.mk, configure.ac, doc/libtool.texi,
1329         doc/notes.texi, gl/build-aux/bootstrap.in,
1330         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1331         gl/doc/bootstrap.texi, libltdl/libltdl/lt_system.h,
1332         libltdl/loaders/loadlibrary.c, libltdl/lt__strl.c,
1333         libltdl/lt_dlloader.c, libltdl/ltdl.c, libtoolize.in,
1334         m4/libtool.m4, m4/ltdl.m4, m4/ltsugar.m4, m4/lt~obsolete.m4,
1335         tests/exceptions.at, tests/need_lib_prefix.at, tests/static.at:
1336         Use "which" correctly, or replace with "that", "where" or "what"
1337         as appropriate.
1338
1339 2013-08-23  Brook Moses  <bmoses@google.com>
1340
1341         libtool: improve comments for _LT_ENABLE_LOCK implementation.
1342         * m4/libtool.m4 (_LT_ENABLE_LOCK): enhance comments to explain
1343         why the code looks odd with 32bit flags in the 64bit section and
1344         vice versa.
1345
1346 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
1347
1348         libtool: fix refixed unmangled powerpc*le-linux support patch
1349         * m4/libtool.m4: fix refixed badly unmangled hunks from earlier
1350         powerpc*le changeset.
1351         Reported by Peter Rosin.
1352
1353         libtool: refix unmangled powerpc*le-linux support patch
1354         * m4/libtool.m4: refix badly unmangled hunks from earlier
1355         powerpc*le changeset.
1356         Reported by Peter Rosin.
1357
1358 2013-08-22  Gary V. Vaughan  <gary@gnu.org>
1359
1360         libltdl: don't trip subdir-objects warning from Automake >= 1.14.
1361         Latest Automake releases now warn when subdir-objects is not
1362         specified in preparation for Automake 2.0.  The option has been
1363         in Automake for more than a decade, so there's minimal risk of
1364         someone using the next release of Libtool alongside an ancient
1365         release of Automake when bootstrapping libltdl client projects.
1366         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Add subdir-objects.
1367
1368         libtool: refactor powerpc*le-linux case branch expressions.
1369         libtool (_LT_ENABLE_LOCK): make inner case branch expressions
1370         consistent with outer case expression.
1371         Reported by Peter Rosin.
1372
1373 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
1374
1375         libtool: fix mangled powerpc*le-linux support patch
1376         * m4/libtool.m4: unmangled badly pasted hunks from previous
1377         changeset.
1378
1379         libtool: initial powerpc*le-linux support
1380         * m4/libtool.m4 (ld -m flags): Remove non-canonical ppc host match.
1381         Support little-endian powerpc linux host.
1382
1383 2013-06-17  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
1384
1385         libtool: fix conversion warnings in cwrapper
1386         build-aux/ltmain.in (func_emit_cwrapperexe_src:main): XMALLOC wants a
1387         size_t. Also use int instead of intptr_t for the return value (which
1388         is fine since the _spawnv call is synchronous).
1389         (func_emit_cwrapper_src) [MSVC]: Remove the intptr_t helper define.
1390         (func_emit_cwrapperexe_src:find_executable): Use size_t for variables
1391         involved in strlen computations.
1392         (func_emit_cwrapperexe_src:lt_setenv): Likewise.
1393         (func_emit_cwrapperexe_src:lt_extend_str): Likewise.
1394         (func_emit_cwrapperexe_src:lt_update_exe_path): Likewise.
1395         THANKS: Update.
1396
1397 2013-04-28  Peter Rosin  <peda@lysator.liu.se>
1398
1399         libtool: break all the way out when a good nm is found
1400         The current code tries to locate a compatible nm tool.  It starts with
1401         a prefixed nm tool (great!) and includes a plain nm too (that's fine).
1402         The problem is that the code searches for the prefixed nm before the
1403         plain nm (normally fine), but doesn't break once it has found a valid
1404         match, and the plain nm ends up the winner.
1405
1406         Report and analysis by Mike Frysinger.
1407
1408         * m4/libtool.m4 (LT_PATH_NM): Break all the way out on a good match.
1409
1410 2013-01-28  Peter Rosin  <peda@lysator.liu.se>
1411
1412         maint: update email address...
1413         * THANKS: ...of Jan Engelhardt.
1414
1415 2013-01-28  Jan Engelhardt  <jengelh@inai.de>
1416
1417         doc: fix an orthographic error
1418         * doc/libtool.texi (Install mode): Ensure, not insure.
1419
1420 2013-01-27  Gary V. Vaughan  <gary@gnu.org>
1421
1422         bootstrap: fix func_insert_if_absent bugs.
1423         * gl/build-aux/bootstrap.in (func_insert_if_absent): Print verbose
1424         message when there is a new entry to add.
1425         Also, make sure to update the .gitignore file when changed.
1426         * bootstrap: Regenerate.
1427         * THANKS: Add Pádraig Brady.
1428         Reported by Pádraig Brady.
1429
1430         bootstrap: factor out gnulib-tool option calculations.
1431         * gl/build-aux/bootstrap.in (func_gnulib_tool): Factor base option
1432         settings out...
1433         (require_gnulib_tool_base_options): ...to here.
1434         * bootstrap: Regenerate.
1435
1436         syntax-check: fix a quoted_test_operand violation.
1437         * gl/build-aux/bootstrap.in (func_insert_if_absent): Make sure
1438         test operands are quoted correctly.
1439         * bootstrap: Regenerate.
1440
1441         syntax-check: fix new SPACE-TAB violations.
1442         * build-aux/ltmain.in (func_dll_def_p): Replace SPACE-TAB by
1443         TAB-SPACE.
1444         * m4/libtool.m4 (_LT_DLL_DEF_P): Likewise.
1445
1446 2013-01-26  Bernhard Voelker  <mail@bernhard-voelker.de>
1447             Gary V. Vaughan  <gary@gnu.org>
1448
1449         bootstrap: always auto-add .gitignore files at the top.
1450         * gl/build-aux/bootstrap.in (func_gitignore_entries): New function.
1451         Strip comments and blank lines.
1452         (func_insert_sorted_if_absent): Renamed...
1453         (func_insert_if_absent): ...to this. Adjust all callers.
1454         Instead of comparing the sorted new file with the original,
1455         compare the line count, being careful to diagnose duplicate
1456         entries which would otherwise skew the count.
1457
1458 2013-01-26  Gary V. Vaughan  <gary@gnu.org>
1459
1460         maint: patch gitlog-to-changelog to reduce bogus warnings.
1461         Rather than trying to find a new useful warning among the 55
1462         expected warnings from vanilla gitlog-to-changelog, patch it to
1463         elide the bogus warnings from duplicate log entries.
1464         * gl/bulid-aux/gitlog-to-changelog.diff: Omit-from-ChangeLog is
1465         a new log entry tag to skip legitimate log duplicates.
1466         * build-aux/git-log-fix: Instead of deleting all content of
1467         duplicates and generating a warning, append the new
1468         Omit-from-ChangeLog tag to elide silently.
1469         * Makefile.am *($(changelog)): Remove the 'expect 55 warnings'
1470         echo.
1471
1472 2013-01-22  Peter Rosin  <peda@lysator.liu.se>
1473
1474         libtool: factor out the dll .def file test and improve it
1475         Resolves bug#13414. Problem reported by Erik van Pienbroek
1476         and Martin Doucha.
1477
1478         build-aux/ltmain.in (func_mode_link): Factor out the test if a
1479         given symbol file is a module-definition (.def) file into...
1480         (func_dll_def_p): ...this function, which also improves the check.
1481         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
1482         <cygwin, mingw, pw32, cegcc>: Similarly, factor out the test if
1483         a given symbol file is a module-definition (.def) file into...
1484         (_LT_DLL_DEF_P): ...this macro, which also improves the check.
1485         tests/export-def.at: New test.
1486         Makefile.am (TESTSUITE_AT): Add above test.
1487         NEWS: Update.
1488         THANKS: Update.
1489
1490 2013-01-21  Peter Rosin  <peda@lysator.liu.se>
1491
1492         libtool: allow tabs in *_cmds variables
1493         This is in preparation for the next patch, which needs to have literal
1494         tab characters survive the evaluation of the *_cmds variables.
1495
1496         build-aux/ltmain.in (func_execute_cmds, func_mode_link): Don't collapse
1497         tabs and surrounding whitespace into a single space when executing a
1498         tilde-separated cmds construct, instead keep any tabs intact.
1499
1500 2013-01-19  Peter Rosin  <peda@lysator.liu.se>
1501
1502         libtool: avoid tabs in all *_cmds variables.
1503         This is in preparation for the next change, which will preserve
1504         tabs when the *_cmds variables are evaluated. Removing tabs first
1505         ensures that the libtool output stays the same when tabs are not
1506         collapsed with surrounding whitespace.
1507
1508         m4/libtool.m4: Convert indenting tabs to spaces for all *_cmds
1509         variables.
1510
1511 2013-01-16  Peter Rosin  <peda@lysator.liu.se>
1512
1513         libtool: align archive_cmds with archive_expsym_cmds for MSVC
1514         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1515         <archive_cmds>: Specify the import library name, aligning with
1516         archive_expsym_cmds.
1517
1518         libtool: feed .def files verbatim to the MSVC linker
1519         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1520         <archive_expsym_cmds>: When the symbol list isn't really a symbol list,
1521         but instead a .def file, copy it to a file with .def extension so that
1522         MSVC recognizes it as a module-definition file and feed it verbatim.
1523         NEWS: Update
1524
1525 2013-01-15  Peter Rosin  <peda@lysator.liu.se>
1526
1527         Revert "libtool: use false or : for $always_export_symbols, and simplify"
1528         This reverts commit 5ed7430fcb48c862c9d76ef497b73485d580338e, which is
1529         totally bogus as the variable is also set in libtool.m4. Sorry for the
1530         noise.
1531
1532         libtool: use false or : for $always_export_symbols, and simplify
1533         * build-aux/ltmain.in (func_mode_link): Save a string comparison
1534         by setting $lways_export_symbols to false or : and using it directly
1535         as the first argument to if. Make sure that it is always initialized
1536         while at it.
1537
1538 2013-01-09  Peter Rosin  <peda@lysator.liu.se>
1539
1540         tests: fix nits in path handling
1541         tests/bindir.at: func_save_and_prepend_path is already checking
1542         $bindirneeded internally, so remove checks from call sites. Add
1543         proper quoting while at it.
1544         (func_save_and_prepend_path): Use $PATH_SEPARATOR instead of a literal
1545         colon (in both instances).
1546
1547 2013-01-08  Peter Rosin  <peda@lysator.liu.se>
1548
1549         libtool: simplify quoting and code for symbols exporting sed programs
1550         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1551         <archive_expsym_cmds>: Make the sed programs easier to read (and
1552         recover some backslashes for later in the process).
1553
1554 2013-01-03  Peter Rosin  <peda@lysator.liu.se>
1555
1556         tests: don't feed -no-undefined to the linker during configure.
1557         * tests/deplibs-mingw.at: Restore LDFLAGS for the configure run so that
1558         the linker does not see -no-undefined. Makes the test pass instead of
1559         skip on MinGW.
1560
1561 2013-01-03  Gary V. Vaughan  <gary@gnu.org>
1562
1563         maint: note warnings during ChangeLog generation are normal.
1564         * Makefile.am ($(changelog)): Output a note that 55 empty commit
1565         log warning messages during ChangeLog generation are expected.
1566
1567         git: ignore .serial file.
1568         * .gitignore: ignore .serial file.
1569
1570         maint: fix recent badly formatted ChangeLog entry.
1571         * build-aux/git-log-fix: No empty lines in a single commit.
1572
1573         syntax-check: fix a useless_quotes_in_assignment violation.
1574         * gl/build-aux/inline-source (func_require_AWK): Remove useless
1575         quotes.
1576
1577         syntax-check: fix prohibit_strcmp syntax-check violation.
1578         * build-aux/ltmain.in (func_generate_dlsyms): Add a definition for
1579         STREQ, and then use it in place of !strcmp.
1580
1581         docs: update copyright dates in libtool.texi.
1582         It seems `make update-copyright' missed the texinfo copyright
1583         notice.
1584         * doc/libtool.texi: Update copyright dates for 2013.
1585
1586 2013-01-03  Brad Smith  <brad@comstyle.com>
1587
1588         libtool: add bitrig support.
1589         * build-aux/ltmain.in (func_mode_link): Add bitrig support.
1590         * m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE, LT_CMD_MAX_LEN)
1591         (_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
1592         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Ditto.
1593         * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Ditto.
1594         * tests/deplibs-ident.at(build tree relpaths): Ditto.
1595         * NEWS: Updated.
1596
1597 2013-01-01  Peter Rosin  <peda@lysator.liu.se>
1598
1599         maint: check if git works before relying on it
1600         Makefile.am (m4/ltversion.m4): Take the opportunity to regenerate
1601         $(srcdir)/.serial whenever git is actually working.
1602         (git_version_gen): Provide a fallback version for the git-version-gen
1603         script to use when .tarball-version does not exist and git is not
1604         working.
1605
1606         maint: really do update to latest upstream gnulib
1607         Commit 9a7071e668d044c1c47c855d2f0bc7cadb235071 "maint: update
1608         copyright notices to include 2013." states that this was done, but
1609         it actually was not.
1610         gnulib/: Update to latest upstream.
1611
1612 2013-01-01  Gary V. Vaughan  <gary@gnu.org>
1613
1614         maint: remove unsupported Tested-by: tag.
1615         * build-aux/git-log-fix: Tested-by: line should not appear in the
1616         ChangeLog.
1617
1618 2013-01-01  Peter Rosin  <peda@lysator.liu.se>
1619
1620         bootstrap: update README-release patch
1621         gl/top/README-release.diff: Update to match latest gnulib changes.
1622
1623 2013-01-01  Gary V. Vaughan  <gary@gnu.org>
1624
1625         maint: update copyright notices to include 2013.
1626         * gnulib/: Update to latest upstream.
1627         * AUTHORS, ChangeLog.old, HACKING, Makefile.am, NEWS, README,
1628         THANKS, TODO, bootstrap, bootstrap.conf,
1629         build-aux/edit-readme-alpha, build-aux/ltmain.in, cfg.mk,
1630         configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
1631         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1632         gl/build-aux/inline-source, gl/build-aux/options-parser,
1633         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
1634         libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
1635         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
1636         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
1637         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
1638         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
1639         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
1640         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
1641         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
1642         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
1643         libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
1644         libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
1645         libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
1646         m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
1647         m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
1648         tests/am-subdir.at, tests/archive-in-archive.at,
1649         tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
1650         tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
1651         tests/cwrapper.at, tests/darwin.at, tests/demo.at,
1652         tests/depdemo.at, tests/deplib-in-subdir.at,
1653         tests/deplibs-ident.at, tests/deplibs-mingw.at,
1654         tests/destdir.at, tests/dlloader-api.at,
1655         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
1656         tests/duplicate_deps.at, tests/duplicate_members.at,
1657         tests/early-libtool.at, tests/exceptions.at,
1658         tests/execute-mode.at, tests/exeext.at, tests/export.at,
1659         tests/f77demo.at, tests/fail.at, tests/fcdemo.at,
1660         tests/flags.at, tests/help.at, tests/indirect_deps.at,
1661         tests/infer-tag.at, tests/inherited_flags.at, tests/install.at,
1662         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
1663         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
1664         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
1665         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
1666         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
1667         tests/need_lib_prefix.at, tests/no-executables.at,
1668         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
1669         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
1670         tests/resident.at, tests/runpath-in-lalib.at,
1671         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
1672         tests/standalone.at, tests/static.at, tests/stresstest.at,
1673         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
1674         tests/template.at, tests/testsuite.at, tests/versioning.at,
1675         tests/with-pic.at: Bump copyright year.
1676
1677 2012-12-19  Peter Rosin  <peda@lysator.liu.se>
1678
1679         libtool: Drop $LDFLAGS when invoking the toolchain
1680         m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [Solaris] <archive_cmds>: Drop
1681         $LDFLAGS as it is a user variable that is usually used when invoking
1682         libtool. As such, it should not be used by libtool when it invokes the
1683         toolchain as it contains options intended for libtool, not the
1684         toolchain. Fixes export.at and other tests that add -no-undefined to
1685         LDFLAGS.
1686
1687 2012-12-19  Richard Palo  <richard.palo@baou.fr>  (tiny change)
1688
1689         libtool: Add SONAME to the so when exporting explicit symbols on Solaris
1690         m4/libtool.m (_LT_LANG_CXX_CONFIG) [Solaris] <archive_expsym_cmds>: Feed
1691         -h $soname to the linker just as is done in archive_cmds.
1692         THANKS: Update.
1693
1694 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
1695
1696         libtool: add @INIT@ to the preloader, for data imports on Windows
1697         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Adjust
1698         lt_cv_sys_global_symbol_to_cdecl so that it declares imported
1699         data symbols as __declspec(dllimport). Adjust
1700         lt_cv_sys_global_symbol_to_c_name_address and
1701         lt_cv_sys_global_symbol_to_c_name_address_lib_prefix so that they
1702         fill in "(void*) 0" for imported data symbols. Add new
1703         lt_cv_sys_global_symbol_to_import which finds imported data
1704         symbols if non-empty and export this variable to the libtool script
1705         in the global_symbol_to_import variable. Adjust
1706         lt_cv_sys_global_symbol_pipe so that data imports can be located.
1707         * build-aux/ltmain.in (func_generate_dlsyms): When data imports
1708         are present, as indicated by global_symbol_to_import, generate
1709         a relocation function lt_syminit that fills in the addresses
1710         of data imports at runtime and point to the new function with a
1711         new virtual @INIT@ entry in the symbol list.
1712         * libltdl/loaders/preopen.c (add_symlist): Look for the virtual
1713         @INIT@ symbol (i.e. lt_syminit) and call it.
1714         (vm_sym): Step past the @INIT@ symbol, if present.
1715         * tests/demo.at (dlmain.c): Call the @INIT@ symbol, if present.
1716         * NEWS: Update.
1717
1718 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
1719
1720         libtool: unify the global symbol transformations
1721         Since it is safe for $lt_cv_sys_global_symbol_to_cdecl to match
1722         with a simple /^T .* .*$/ type expression, it is ok for the other
1723         transformations as well.  At least if you require at least one
1724         $symcode at the start of the line, so that the just generated output
1725         doesn't match the next sed expression.
1726
1727         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unify the matching expressions
1728         in the sed programs that transform the extracted symbol lines.
1729
1730 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
1731
1732         libtool: break up long lines
1733         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Break up long lines when
1734         assigning the sed scripts that transform the extracted symbol lines.
1735
1736 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
1737
1738         bootstrap: use a decent awk if /bin/awk is hopeless.
1739         Bootstrap used to fail without an explicit AWK environment
1740         setting on machines with both nawk and awk, but where awk is a
1741         museum piece.
1742         * gl/build-aux/inline-source (AWK): Remove initial setting.
1743         (require_awk): Search PATH for a gawk, mawk or nawk before
1744         settling on awk, just like configure does.
1745         (func_include): Use it.
1746
1747         bootstrap: be sure to register gnulib submodule.
1748         * gl/build-aux/bootstrap.in (require_gnulib_submodule): Register
1749         the gnulib submodule before updating it, even with a shallow
1750         clone of gnulib.
1751         * bootstrap: Regenerate.
1752         Reported by Robert Boehne.
1753
1754         bootstrap: fix a typo in a find invocation.
1755         * gl/build-aux/bootstrap.in (require_buildreq_patch): Fix a typo.
1756         * bootstrap: Regenerate.
1757
1758         bootstrap: bash versions 3.00.x do not have += functionality.
1759         * gl/build-aux/funclib.sh: Fix a typo in fork minimisation for
1760         bash versions 3.00.x.
1761         * bootstrap: Regenerate.
1762
1763         maint: fix missing command error in make dist.
1764         * Makefile.am ($(readme)): Don't forget the 'test'!
1765
1766         tests: fixup experr for addition whitespace in error prefix.
1767         Fix spurious test failures due to unmatched experr output.
1768         * tests/libtoolize.at, tests/old-ltdl-iface.at: Add the addition
1769         2 spaces now used to justify error prefixes.
1770
1771         bootstrap: use of ';' in sed scripts is not portable.
1772         * gl/build-aux/bootstrap.in (require_buildreq_automake)
1773         (require_dotgitmodules_parameters, require_package)
1774         (func_update_po_files): Use '\n' or -e to separate sed commands,
1775         instead of ';'.
1776         * gl/build-aux/extract-trace (func_autoconf_configure)
1777         (func_extract_trace_first): Likewise.
1778         * gl/funclib.sh: Likewise.
1779         (func_tr_sh): Likewise.
1780         * gl/build-aux/options-parser (func_usage_message): Likewise.
1781         * bootstrap: Regenerate.
1782         Reported by Robert Boehne.
1783
1784         bootstrap: don't $tc_standout spaces, it's ugly!
1785         * gl/build-aux/funclib.sh (func_error): Move the prefix indent
1786         before $tc_standout to avoid bright red inverse spaces.
1787         * bootstrap: Regenerate.
1788
1789         bootstrap: fix rectangle select induced trailing spaces.
1790         * gl/build-aux/funclib.sh (require_term_colors): Delete trailing
1791         whitespace.
1792         * bootstrap: Regenerate.
1793
1794         bootstrap: display prerequisite program environment vars.
1795         Be more helpful when a prerequisite program from $buildreq
1796         cannot be located, by showing what variable to export if it
1797         is already installed but not in PATH.
1798         * gl/build-aux/bootstrap.in (func_check_versions): Display
1799         associated environment variables for not found prerequisite
1800         programs.
1801         * bootstrap: Regenerate.
1802
1803         bootstrap: honor COLORTERM and USE_ANSI_COLORS.
1804         Plenty of machines use a terminfo database that doesn't have
1805         entries for color escape sequences, even though the terminal
1806         itself most likely supports ANSI color escapes.
1807         * gl/build-aux/funclib.sh (require_term_colors): If COLORTERM
1808         or USE_ANSI_COLORS are set, then ignore what terminfo says,
1809         and use standard ANSI color escape sequences.
1810         * bootstrap: Regenerate.
1811
1812         bootstrap: make error messages prettier.
1813         * gl/build-aux/funclib.sh (func_error): Indent 'error' prefix by
1814         two additional spaces to line up nicely with 'warning' and
1815         'running'.
1816         * bootstrap: Regenerate.
1817
1818 2012-10-24  Gary V. Vaughan  <gary@gnu.org>
1819
1820         bootstrap: emphasize command executions with terminal bold.
1821         * bootstrap.in (func_show_eval): Use $require_term_colors to
1822         embolden the command about to be executed in output.
1823         * bootstrap: Regenerate.
1824         * bootstrap.conf (libtool_build_prerequisites): Use the standard
1825         (colorful!) bootstrap func_show_eval here too.
1826
1827         bootstrap: show output from 'make bootstrap-deps'.
1828         * bootstrap.conf (libtool_build_prerequisites): Add support for
1829         AM_V_GEN and AM_V_at to the temporary pre-configure Makefile.
1830         Instead of eliding non-error output from bootstrap-deps, show
1831         the results, with verbosity set according to $opt_verbose.
1832         * Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh, libtool)
1833         (README): Fix the display rules to correctly fall-back to
1834         AM_DEFAULT_VERBOSITY when V=1 is not passed to make invocation.
1835
1836 2012-10-22  Gary V. Vaughan  <gary@gnu.org>
1837
1838         maint: fixup badly formatted ChangeLog entries.
1839         * build-aux/git-log-fix: Mostly missing category tags and refilling
1840         to 64 columns, but also deleting duplicate entries from merging the
1841         gary/reredo-test-operand-order branch.
1842         * g/build-aux/gitlog-to-changelog.diff: Local patch to prevent
1843         printing unqualified header lines for deleted duplicate patches.
1844         * THANKS: Put email address for Paul Seidler here...
1845         * build-aux/git-log-fix: ...and remove from ChangeLog here.
1846
1847         bootstrap: regenerate to propagate Bob's func_split_equals fix.
1848         * bootstrap: regenerate.
1849
1850 2012-10-22  Mikhail Zabaluev  <mikhail.zabaluev@gmail.com>  (tiny change)
1851
1852         configury: make LT_INIT options pic-only and no-pic work.
1853         * m4/ltoptions.m4 (_LT_WITH_PIC): Set pic_mode at m4 time.
1854
1855 2012-10-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
1856
1857         options-parser: fix regexp quoting error.
1858         * gl/build-aux/options-parser (func_split_equals): Fixed expr
1859         regexp quoting syntax error encountered with non-XSI shells.
1860         Problem was noticed under Solaris 10.
1861
1862 2012-10-21  Gary V. Vaughan  <gary@gnu.org>
1863
1864         syntax-check: fix violations and implement sc_old_style_quoting.
1865         Modern GNU ASCII quoting in output and comments is done
1866         'like this'.
1867         * cfg.mk (sc_old_style_quoting): Try to catch most instances
1868         of `old style quoting' so that it is not accidentally re-
1869         introduced to the code.
1870         * HACKING, Makefile.am, NEWS, PORTING, README, TODO, bootstrap,
1871         bootstrap.conf, build-aux/edit-readme-alpha,
1872         build-aux/git-hooks/commit-msg, build-aux/ltmain.in,
1873         doc/libtool.texi, gl/build-aux/bootstrap.in,
1874         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1875         gl/build-aux/inline-source, gl/build-aux/options-parser,
1876         libltdl/libltdl/slist.h, libltdl/loaders/loadlibrary.c,
1877         libltdl/ltdl.c, libltdl/slist.c, libtoolize.in, m4/argz.m4,
1878         m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4, m4/ltsugar.m4,
1879         tests/cmdline_wrap.at, tests/configure-iface.at, tests/demo.at,
1880         tests/depdemo.at, tests/deplib-in-subdir.at,
1881         tests/deplibs-mingw.at, tests/destdir.at, tests/execute-mode.at,
1882         tests/f77demo.at, tests/fail.at, tests/inherited_flags.at,
1883         tests/libtool.at, tests/libtoolize.at, tests/lt_dladvise.at,
1884         tests/lt_dlexit.at, tests/mdemo.at, tests/need_lib_prefix.at,
1885         tests/old-ltdl-iface.at, tests/old-m4-iface.at, tests/static.at,
1886         tests/stresstest.at, tests/testsuite.at, tests/versioning.at:
1887         Convert to upright quotes.
1888
1889         tests: remove spurious shell variable braces.
1890         * tests/testsuite.at: Allow the shell braces syntax check to pass
1891         again.
1892
1893         bootstrap: add missing bootstrap override module file.
1894         * gl/modules/bootstrap: Forgot to add this file in a previous
1895         commit.
1896
1897         bootstrap: allow bootstrap.texi to pass syntax-check.
1898         * cfg.mk (sc_require_function_nl_brace): Skip texi files.
1899         * gl/doc/bootstrap.texi: Fix assorted syntax-check violations.
1900
1901         bootstrap: move into local gl overrides directory.
1902         In order to work as if it were already adopted by upstream
1903         gnulib, put bootstrap and supporting scripts into the local
1904         gnulib overrides directory.
1905         * bootstrap, build-aux/extract-trace, build-aux/funclib.sh,
1906         build-aux/inline-source, build-aux/options-parser: Move from
1907         here...
1908         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
1909         gl/build-aux/funclib.sh, gl/build-aux/inline-source,
1910         gl/build-aux/options-parser: ...to here.
1911         * gl/build-aux/options-parser (func_version): Show only the
1912         first copyright notice on files generated with inline-source.
1913         * gl/doc/bootstrap.texi: Developer documentation for bootstrap.
1914         * gl/modules/extract-trace, gl/modules/funclib.sh,
1915         gl/modules/inline-source, gl/modules/options-parser: Describe
1916         dependencies for gnulib-tool.
1917         * bootstrap.conf (gnulib_modules): Add extract-trace,
1918         inline-source and options-parser modules.
1919         * bootstrap: Regenerated from gnulib overrides as a mono-
1920         lithic script file using gl/build-aux/inline-source.
1921
1922 2012-10-20  Gary V. Vaughan  <gary@gnu.org>
1923
1924         tests: make sure AC_CONFIG_MACRO_DIR is still supported.
1925         * tests/old-m4-iface.at (AC_CONFIG_MACRO_DIR support): New test.
1926         Make sure we continue to support AC_CONFIG_MACRO_DIR using
1927         projects.
1928
1929         libtoolize: select the first directory from AC_CONFIG_MACRO_DIRS.
1930         * tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIRS directories):
1931         New test to ensure multiple directory arguments mork correctly.
1932         * libtoolize.in (func_require_ac_macro_dir): Use expr to discard
1933         any additional space delimited entries in the first
1934         AC_CONFIG_MACRO_DIRS argument.
1935         * bootstrap (func_require_macro_dir): Likewise.
1936
1937         libtoolize: migrate to new AC_CONFIG_MACRO_DIRS api.
1938         * libtoolize.in (func_install_pkgmacro_files): Uee
1939         AC_CONFIG_MACRO_DIRS.
1940         (func_check_macros): Advise using AC_CONFIG_MACRO_DIRS.
1941         (require_ac_macro_dir): Give priority to AC_CONFIG_MACRO_DIRS.
1942         (require_macro_dir): Likewise.
1943         * bootstrap: Give priority to AC_CONFIG_MACRO_DIRS.
1944         * configure.ac: Define dummy AC_CONFIG_MACRO_DIRS for older
1945         Autotools, that is allow bootstrap with current release versions.
1946         Use AC_CONFIG_MACRO_DIRS instead of AC_CONFIG_MACRO_DIR.
1947         * tests/testsuite.at: Source build-aux/extract-trace for access
1948         to func_extract_trace.
1949         (LT_AT_ACLOCAL): Use it to get the AC_CONFIG_MACRO_DIRS argument
1950         to pass manually to aclocal for compatibility with old Automake.
1951         Add a fallback AC_CONFIG_MACRO_DIRS definition to acinclude.m4
1952         in the test directory.
1953         (LT_AT_AUTORECONF): Likewise.
1954         * tests/cdemo.at, tests/configure-iface.at, tests/darwin.at,
1955         tests/demo.at, tests/depdemo.at, tests/early-libtool.at,
1956         tests/libtoolize.at, tests/mdemo.at, tests/no-executables.at,
1957         tests/nonrecursive.at, tests/old-ltdl-iface.at,
1958         tests/recursive.at, tests/subproject.at, tests/tagdemo.at,
1959         tests/template.at: Likewise.
1960         * doc/libtool.texi: Update.
1961         * NEWS: Update.
1962
1963 2012-10-19  Peter Rosin  <peda@lysator.liu.se>
1964
1965         libtool: parse "dumpbin -headers" to get symbols exported from implibs
1966         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Extract symbols
1967         imported from DLLs by import libraries in the Microsoft dumpbin
1968         wrapper.
1969         (LT_PATH_NM): Add -headers option if dumpbin is the located name
1970         lister to feed the above new code.
1971         * NEWS: Update.
1972
1973         libtool: make func_win32_libid work when the name lister is MS dumpbin
1974         * m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [MSVC]: Use
1975         func_win32_libid as file_magic_cmd when the name lister
1976         is MS dumpbin.
1977         (_LT_CMD_GLOBAL_SYMBOLS): Export the new veriable nm_interface
1978         to the libtool script.
1979         * build-aux/ltmain.in (func_cygming_gnu_implib_p)
1980         (func_cygming_ms_implib_p): Move up to before...
1981         (func_win32_libid): ...which now uses them to determine if
1982         the object is an import library when the nm_interface is
1983         "MS dumpbin".
1984         * NEWS: Update.
1985
1986 2012-10-19  Gary V. Vaughan  <gary@gnu.org>
1987
1988         bootstrap: always extract only the first AC_CONFIG_MACRO_DIR arg.
1989         Previous versions of bootstrap concatenated all the arguments to
1990         multiple invocations of AC_CONFIG_MACRO_DIR when extracting the
1991         macro_dir directory name.  This change enforces correct and
1992         consistent behaviour.
1993         * libtoolize.in (func_require_macro_dir): Use the new
1994         func_extract_trace_first function to make sure the first argument
1995         is always used.
1996         (func_require_aux_dir, func_require_gnulib_mk)
1997         (func_require_source_base): Future proof these functions against
1998         multiple invocations or additional arguments to the macros they
1999         trace.
2000
2001         bootstrap: extract *first* ACLOCAL_AMFLAGS -I argument.
2002         * bootstrap (func_require_macro_dir): .* is greedy, so _G_sed_scan
2003         as it was will always return the last -I argument, which is wrong.
2004         Move to a shell loop to ensure we always get the first -I argument
2005         if any.  (code from libtoolize.in).
2006
2007         bootstrap: use short gnu.org urls consistently.
2008         * bootstrap.conf (buildreq): Use gnu.org/s/ style urls to match
2009         the ones added automatically by the main bootstrap script.
2010
2011         libtoolize: fix a misspelled variable name.
2012         * libtoolize.in (func_require_am_macro_dir): The loop uses _G_arg
2013         not _G_opt.  Now spelled correctly.
2014
2015         tests: always extract only the first AC_CONFIG_MACRO_DIR arg.
2016         Previous releases of libtoolize used the final invocation when
2017         there were several, and after the rewrite over extract-trace,
2018         all the invocation directories were concatenated.  This change
2019         enforces correct and consistent behaviour.
2020         * tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIR invocation):
2021         New test.
2022         * build-aux/extract-trace (func_extract_trace_first): New function
2023         for clients that source this file, which returns only the first
2024         argument to the first invocation of the named macros.
2025         * libtoolize.in (func_require_ac_macro_dir): Use it to make sure
2026         the first argument is always used.
2027         (func_require_ac_aux_dir, func_require_ac_ltdl_dir)
2028         (func_require_ac_ltdl_options): Future proof these functions against
2029         multiple invocations or additional arguments to the macros they
2030         trace.
2031         * News (Important incompatible changes): Note change in semantics.
2032         Reported by Eric Blake.
2033
2034         tests: always extract only the first ACLOCAL_AMFLAGS include arg.
2035         * tests/libtoolize.at (libtoolize ACLOCAL_AMFLAGS extraction):
2036         New test.
2037         * libtoolize.in (func_check_macros): Display the correct advice
2038         when ACLOCAL_AMFLAGS specifies a macrodir, but AC_CONFIG_MACRO_DIR
2039         does not.
2040
2041         doc: add a missing period following @xref.
2042         * doc/libtool.texi: Silence a warning by adding back a missing
2043         period.
2044
2045 2012-10-19  Peter Rosin  <peda@lysator.liu.se>
2046
2047         libtool: avoid non-underscore symbols in the "dumpbin -symbols" wrapper
2048         If an object has a symbol lacking an expected leading underscore,
2049         the symbol name is not printed, but the symbol type is, leading
2050         to output such as:
2051             T _normal _normal
2052             T T _another _another
2053         when the expected output would have been something like:
2054             T _normal _normal
2055             T no_underscore no_underscore
2056             T _another _another
2057         However, symbols lacking an expected leading underscore are
2058         not "real" symbols, they are internal symbols which we don't
2059         care about, therefore drop them instead.
2060         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Output the whole
2061         symbol line in one go.
2062         * NEWS: Update.
2063
2064 2012-10-18  Peter Rosin  <peda@lysator.liu.se>
2065
2066         libtool: unbreak Windows path quoting
2067         The lt_sed_naive_backslashify variable lost its lt_ prefix
2068         when m4sh was dropped. But not everywhere.
2069         * build-aux/ltmain.in (func_convert_core_file_wine_to_w32)
2070         (func_convert_core_msys_to_w32): Drop the lt_ prefix from
2071         the lt_sed_naive_backslashify variable.
2072
2073         libtool: kill leftover m4 quoting
2074         * build-aux/ltmain.in (func_mode_compile): Use literal ] and [.
2075
2076 2012-10-18  Gary V. Vaughan  <gary@gnu.org>
2077
2078         syntax-check: exclude false positive nested quote test.
2079         * build-aux/funclib.sh (func_echo_infix_1): These quotes are not
2080         actually nested, so add an exclude marker for the syntax-check.
2081
2082         libtool: don't set auxscriptsdir at bootstrap time.
2083         * build-aux/ltmain.in: Declare relative paths to aux scripts from
2084         source commands, for early inlining during bootstrap.
2085         * Makefile.am (bootstrap_edit): Move auxscriptsdir
2086         substitution from here....
2087         (configure_edit): ...to here.
2088         ($(ltmain_sh)): Feed ltmain.in through inline-source as ltmain.sh
2089         is generated to remove relative paths to aux scripts.
2090         (install-data-local): Simplify. No need for special treatment for
2091         ltmain.sh during installation, since aux scripts have already
2092         been inlined.
2093         Reported by Peter Rosin.
2094
2095         extract-trace: only source funclib.sh when $progname is extract-trace.
2096         * build-aux/extract-trace: $usage is too generic, and can cause
2097         sourced extract-trace to re-source options-parser.  We already
2098         require that funclib.sh be sourced before sourcing options-parser,
2099         so it's safer to check that $progname is correct before sourcing
2100         options-parser again from here.
2101
2102 2012-10-18  Peter Rosin  <peda@lysator.liu.se>
2103
2104         libtool: fix spelling nit
2105         * build-aux/ltmain.in (func_generate_dlsyms): Fix spelling nit.
2106         * libltdl/libltdl/lt_system.h: Likewise.
2107         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise.
2108
2109 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
2110
2111         maint: remove m4sh support.
2112         Now that the code base has coalesced around a single option
2113         parser, there's no need for the unused getopt.m4sh and support.
2114         * build-aux/getopt.m4sh, build-aux/general.m4sh,
2115         tests/getopt-m4sh.at: Remove.
2116         * Makefile.am (m4sh_dir, LT_M4SH, general_m4sh, getopt_m4sh)
2117         (sh_files): Remove.
2118         (TESTSUITE_AT): Remove tests/getopt-m4sh.at.
2119         (TESTS_ENVIRONMENT): Remove M4SH.
2120         * bootstrap.conf (libtool_build_prerequisites): Remove M4SH.
2121         * configure.ac (M4SH): Remove.
2122         * HACKING (Editing `.m4sh' Files): Remove and renumber following
2123         sections.
2124
2125         libtool: rewritten over funclib.sh instead of general.m4sh.
2126         * Makefile.am (ltmain_m4sh, ltmain_sh_edit): Remove.
2127         (ltmain_in): Path to ltmain.in.
2128         (ltmain_sh): Generate ltmain.sh from ltmain.in using
2129         $(bootstrap_edit).
2130         * build-aux/ltmain.m4sh: Remove.
2131         * build-aux/ltmain.in: Rewritten as a client of funclib.sh.
2132
2133         libtoolize: inline sourced helper scripts during install.
2134         * build-aux/inline-source: New file.
2135         * Makefile.am (inline_source): Path to inline-source script.
2136         (EXTRA_DIST): Distribute inline-source too.
2137         (helper_scripts): Remove.
2138         (install-data-local): Inline sourced helper scripts during
2139         installation.
2140         Don't install helper_scripts.
2141         (uninstall-hook): Don't uninstall helper_scripts.
2142
2143         libtoolize: rewritten over funclib.sh instead of general.m4sh.
2144         * Makefile.am (libtoolize_m4sh): Remove.
2145         (EXTRA_DIST): Delete libtoolize_m4sh.
2146         (libtoolize_in): Remove rule.
2147         (libtoolize): Apply bootstrap_edit to libtoolize.in too.
2148         * configure.ac (AC_CONFIG_SRCDIR): Refer to libtoolize.in.
2149         * libtoolize.m4sh: Remove.
2150         * libtoolize.in: Rewrite as a client of options-parser and the
2151         new funclib.sh, avoiding the m4sh expansion step.
2152         * tests/libtoolize.at, tests/old-ltdl-iface.at (experr): adjust
2153         to match funclib.sh error output.
2154
2155         options-parser: correctly quote shell meta-characters in arguments.
2156         When any argument contains a shell meta-character, it needs to be
2157         quoted when passed around.  We already pass parameter lists as
2158         space delimited strings of arguments, and pass the string through
2159         eval to turn it back into a list before re-assigning using `set'.
2160         To prevent the shell from interpreting any meta-characters during
2161         an `eval set dummy $argumentlist', they must be quoted again
2162         inside the quoted argument list.
2163         * build-aux/funclib.sh (func_quote_for_eval): Be careful to keep
2164         a separate tally of quoted and unquoted argument lists, to
2165         conform to the API of the single argument func_quote_for_eval
2166         implementation in build-aux/general.m4sh.
2167         * bulid-aux/options-parser (func_run_hooks): To account for the
2168         doubly quoted meta-character argument lists, we must eval the
2169         parameter reassignment `set' call separately from evaluating the
2170         dynamically named hook results variable.
2171
2172         maint: factor common shell code into build-aux/funclib.sh.
2173         Moving potentially reusable code into a common file that can
2174         be sourced by clients, and adjusting for impedance mismatch
2175         or necessary renames during integration.
2176         * build-aux/funclib.sh: New file.
2177         * build-aux/options-parser (Shell normalisation)
2178         (User overrideable command paths, Global variables, func_append)
2179         (require_term_colors, func_echo, func_echo_infix_1, func_warn)
2180         (func_error, func_fatal_error, func_quote_for_eval, func_verbose):
2181         Move from here...
2182         * build-aux/funclib.sh (Shell normalisation, User overrideable
2183         command paths, Global variables, func_append)
2184         (require_term_colors, func_echo, func_echo_infix_1)
2185         (func_warn_and_continue, func_error, func_fatal_error)
2186         (func_quote_for_eval, func_verbose): ...to here.
2187         * build-aux/general.m4sh (func_arith, func_basename)
2188         (func_dirname, func_dirname_and_basename, func_echo_all)
2189         (func_grep, func_len, func_mkdir_p, func_mktempdir)
2190         (func_normal_abspath, func_relative_path, func_quote_for_expand)
2191         (func_stripname, func_show_eval, func_tr_sh): Move from here...
2192         * build-aux/funclib.sh(func_arith, func_basename)
2193         (func_dirname, func_dirname_and_basename, func_echo_all)
2194         (func_grep, func_len, func_mkdir_p, func_mktempdir)
2195         (func_normal_abspath, func_relative_path, func_quote_for_expand)
2196         (func_stripname, func_show_eval, func_tr_sh): ...to here.
2197         * bootstrap (usage message): Document `-no-warn' option.
2198         (func_append_u, func_warning): Move from here...
2199         * build-aux/funclib.sh (func_append_uniq, func_warning): ...to
2200         here.
2201         * bootstrap, build-aux/extract-trace: Source build-aux/funclib.sh
2202         before build-aux/options-parser.
2203         * build-aux/options-parser (usage, long_help_message): Set
2204         default values to match what is parsed by the unmodified parser.
2205         * build-aux/extract-trace (usage, long_help_message): Only set
2206         from func_main, so that clients sourcing this file can still use
2207         the correct defaults from build-aux/options-parser.
2208         * bootstrap (bootstrap_options_prep, bootstrap_parse_options):
2209         Move warning option parsing from here...
2210         * build-aux/option-parser (func_options_prep)
2211         (func_parse_options): ...to here, where all clients can benefit.
2212         * Makefile.am (funclib_sh): New macro; path to funclib.sh.
2213         (EXTRA_DIST): Add $(funclib_sh).
2214
2215         libtoolize: source extract-trace rather than fork and execute each call.
2216         Rather than forking and executing a full $SHELL for each macro
2217         extraction, source the script and its dependencies into our
2218         execution space and use the provided func_extract_trace API.
2219         * libtoolize.m4sh: Source extract-trace from an appropriate
2220         directory determined presently by make.
2221         (func_extract_trace): Remove this wrapper.
2222         * Makefile.am (abs_aux_dir): Absolute path to extract-trace
2223         directory.
2224         (configure_edit): Inject abs_aux_dir into uninstalled libtoolize.
2225         (bin_SCRIPTS): Remove libtoolize.
2226         (uninstall-hook): Manually uninstall libtoolize.
2227         (install-data-local): Inject pkgauxdir into installed libtoolize
2228         during installation.
2229
2230         options-parser: employ fork minimisation.
2231         * build-aux/options-parser (_G_HAVE_XSI_OPS): Environment
2232         overrideable defaults for bash and zsh, which are known to
2233         support XSI extensions.
2234         (_G_HAVE_PLUSEQ_OP): Similarly for new enough versions of bash,
2235         which are known to have += support.
2236         (func_append): Only perform the shell += probe when state of
2237         support is unknown.
2238         (func_split_equals, func_split_short_opt): Similarly for XSI
2239         probe to select fastest working implementation.
2240
2241         options-parser: keep non-option arguments separate!
2242         * build-aux/options-parser (func_parse_options): When there is
2243         more than one non-option argument, "$*" forces all of them into
2244         a single string.  Use ${1+"$@"} to set arguments correctly.
2245
2246         options-parser: prefix usage message with "Usage: ".
2247         * build-aux/options-parser (func_usage_message): Prefix usage
2248         message with "Usage: ".
2249
2250         bootstrap: work when using fallback shallow gnulib clone.
2251         Bootstrapping without --gnulib-srcdir creates a shallow gnulib
2252         clone to run gnulib-tool out of, except that the parent package
2253         is almost certainly using a revision of gnulib before just tha
2254         most recent 2 gnulib revisions.
2255         * bootstrap (func_require_gnulib_submodule): Pull the most
2256         recent 365 revisions, which ought to be enough for a well-
2257         maintained parent package.
2258         Don't forget to run 'git submodule update' to select the correct
2259         gnulib revision.
2260
2261         bootstrap: require GNU make to bootstrap.
2262         Make is not installed by default in some environments, such as
2263         cygwin... which is slow enough already without having to wait
2264         for gnulib-tool, bootstrap and half of configure to complete
2265         before getting an error.
2266         * bootstrap.conf (buildreq): Add recent GNU make to bootstrap
2267         requirements.  Now missing make is diagnosed in the earliest
2268         part of bootstrap.
2269
2270         maint: simplify "Local variables:" footer with time-stamp-pattern.
2271         * bootstrap, build-aux/extract-trace, build-aux/options-parser
2272         (Local variables): Use time-stamp-pattern to set number of
2273         searched lines to 10, and to replace time-stamp-start,
2274         time-stamp-end and time-stamp-format.
2275
2276 2012-10-08  Peter Rosin  <peda@lysator.liu.se>
2277
2278         tests: skip the with-pic test only if DLL_EXPORT is defined
2279         For some systems with PIC as default, the test was inadvertently
2280         skipped. Issue introduced in commit 4440d65.
2281         * tests/with-pic.at: Skip the test for systems that define
2282         DLL_EXPORT.
2283         Reported by Roumen Petrov.
2284
2285         tests: rerefix line ending problems on MinGW.
2286         The previous commit broke Linux->MinGW cross-compiling.
2287         * tests/mdemo.at: Normalize line endings after $EGREP.
2288         Reported by Roumen Petrov.
2289
2290 2012-10-06  Peter Rosin  <peda@lysator.liu.se>
2291
2292         tests: refix line ending problems on MinGW.
2293         In commit 22f5750, one of the hunks actually introduced
2294         line ending problems. Revert that hunk.
2295         * tests/mdemo.at: Use AT_DATA for expected output when the
2296         output from compiled programs is fed through $EGREP.
2297
2298         tests: use dry runs in both parts of 'check link mode operation'
2299         MSVC exits with status 2 instead of the expected 1 when a
2300         real link is attempted.
2301         * tests/libtool.at (check link mode operation): Use a dry run and
2302         expect a clean exit status instead of expecting a fail.
2303
2304 2012-10-06  Gary V. Vaughan  <gary@gnu.org>
2305
2306         tests: sanitise the libtool quote checking Autotests.
2307         Carefully comment the maze of quoting and escaping needed to
2308         pass through M4, $SHELL, and grep before regexp matching.
2309         * tests/libtool.at (quote shell meta-characters in filenames):
2310         Split backslash into a separate test group, because it needs
2311         additional escaping.
2312         Use grep consistently for the entire test group.
2313         Use AT_CHECK rather than LT_AT_CHECK to avoid problems with
2314         escaping literal $ correctly with LT_ESCAPE.
2315         Use the correct number of backslashes for each sub-group.
2316         Escape double-quote literals portably.
2317         Reported by Peter Rosin.
2318
2319         tests: ensure mdemo.at doesn't rely on installed libltdl.
2320         * tests/mdemo.at (configuer.ac): Build an included convenience
2321         libltdl.
2322         (Makefile.am): Add subdir-objects.
2323         Remove override rules from legacy mdemo tests to reuse parent
2324         libltdlc.la.
2325         (LT_AT_CHECK_CONFIG): Add --with-included-ltdl to configure
2326         arguments so that test cases always use the subproject libltdl
2327         in preference to any installed libltdl.
2328         Reported by Peter Rosin.
2329
2330         tests: allow for unstable fortran output ordering.
2331         Due to differences in line-endings between C stdout and Fortran
2332         stdout, as well as unpredictable output ordering between
2333         platforms and runtimes, weaken success criteria to not require
2334         the entire output of fortran programs to match a test case.
2335         * itests/fcdemo.at, tests/f77demo.at (_LT_CHECK_EXECUTE):
2336         Improve comments, and weaken test case to grep for a known line
2337         in the f77 runtime output.
2338
2339 2012-10-05  Peter Rosin  <peda@lysator.liu.se>
2340
2341         tests: make LT_AT_HOST_DATA retain whitespace on MinGW
2342         Fixes issues with depdemo.at, f77demo.at and fcdemo.at.
2343         * tests/testsuite.at (LT_AT_HOST_DATA) [MinGW]: Keep leading
2344         and trailing spaces and tabs when converting line endings.
2345
2346         tests: fix line ending problems on MinGW
2347         * tests/cdemo.at: Use LT_AT_HOST_DATA for expected output from
2348         compiled programs.
2349         * tests/demo.at: Likewise.
2350         * tests/depdemo.at: Likewise.
2351         * tests/f77demo.at: Likewise.
2352         * tests/fcdemo.at: Likewise.
2353         * tests/mdemo.at: Likewise.
2354         * tests/tagdemo.at: Likewise.
2355
2356 2012-10-05  Gary V. Vaughan  <gary@gnu.org>
2357
2358         tests: remove last vestiges of the legacy test harness.
2359         All legacy tests have been fully migrated to Autotest, so
2360         no need to cling to the legacy scaffolding any more.
2361         * tests/defs.m4sh: Delete file.
2362         * configure.ac (AM_INIT_AUTOMAKE): Remove unused color-tests and
2363         parallel-tests options.
2364         * Makefile.am (defs_m4sh, defs_in, defs, TESTS): Remove.
2365         Adjust all dependencies.
2366
2367         tests: migrate legacy tagtrace.test to Autotest.
2368         * tests/tagtrace.test: Delete file.
2369         * tests/libtool.at (test LT_SUPPORTED_TAG interface): Add
2370         Autotest equivalent.
2371         * Makefile.am (TESTS): Remove tests/tagtrace.test.
2372
2373         tests: migrate legacy objectlist.test to Autotest.
2374         * tests/objectlist.test: Delete file.
2375         * tests/libtool.at (check objectlist file operation): Add
2376         Autotest equivalent.
2377         * Makefile.am (TESTS): Remove tests/objectlist.test.
2378
2379         tests: migrate legacy link.test and link-2.test to Autotest.
2380         * tests/link.test, tests/link-2.test: Delete files.
2381         * tests/libtool.at (Check link operation): Add Autotest
2382         equivalent.
2383         * Makefile.am (TESTS): Remove tests/link.test and
2384         tests/link-2.test.
2385
2386         tests: migrate legacy nomode.test to Autotest.
2387         * tests/nomode.test: Delete file.
2388         * test/libtool.at (Check help output, No mode diagnostic): Add
2389         equivalent tests in Autotest.
2390         * Makefile.am (TESTS): Remove tests/nomode.test.
2391
2392         tests: migrate legacy suffix.test to Autotest.
2393         * tests/suffix.test: Delete file.
2394         * tests/libtool.at (Transform source suffices): Add Autotest
2395         equivalent.
2396         * Makefile.am (TESTS): Remove tests/suffix.test.
2397
2398         tests: migrate legacy quote.test to Autotest.
2399         * tests/quote.test: Moved from here...
2400         * tests/libtool.at: ...to here, and updated to Autotest.
2401         * Makefile.am (TESTS): Remove tests/quote.test.
2402         (TESTSUITE_AT): Add tests/libtool.at.
2403
2404 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
2405
2406         maint: add missing 2012 copyright to newly pushed old files.
2407         * tests/cdemo.at, tests/demo.at, tests/depdemo.at,
2408         tests/f77demo.at, tests/fcdemo.at, tests/mdemo.at,
2409         tests/tagdemo.at (Copyright): Update with missing 2012.
2410
2411         syntax-check: remove test/demo directories from exemption regexps.
2412         * cfg.mk (exclude_file_name_regex--sc_bindtextdomain)
2413         (exclude_file_name_regexp--sc_program_name): Remove. The excluded
2414         directories no longer exist.
2415         (exclude_file_name_regexp--sc_prohibit_strcmp): Remove subexpression
2416         for matching removed demo directories.
2417
2418         configure: remove unused conditionals and support for order only rules.
2419         Clean up some more unused cruft.
2420         * configure.ac (HAVE_CXX, HAVE_F77, HAVE_FC, HAVE_GCJ, HAVE_RC):
2421         Remove.  These were only used by the recently removed legacy
2422         tests.
2423         [order-only prerequisites]: Ditto.
2424
2425         bootstrap: remove support for `-r' and `reconf_dirs'.
2426         With all those extra demo directories out of the way, we can
2427         revert to a more canonical bootstrap process, and jettison the
2428         cruft that was only there to work around the pain of
2429         needing to autoreconf 11 directories.  Bootstrap is now an order
2430         of magnitude faster.
2431         * bootstrap.conf (require_ltdl_dir): New function. Factored out
2432         of `libtool_build_prerequisites'.
2433         (libtool_build_prerequisites): Adjust.
2434         (func_reconfigure): Use `require_ltdl_dir' to determine the name
2435         of the other directory we need to autoreconf during bootstrap.
2436         (libtool_options_prep, libtool_parse_options)
2437         (libtool_validate_options): Remove.
2438
2439         tests: let pic_flag and with-pic Autotests work on non-VPATH builds.
2440         * tests/pic_flag.at: Use _LT_DEMO_SETUP to generate a demo style
2441         project, rather than relying on $abs_top_srcdir/configure.
2442         * tests/with-pic.at: Likewise.
2443         * Makefile.am (TESTSUITE_AT): Move tests/pic_flag.at and
2444         tests/with-pic.at so that they run immediately following
2445         tests/demo.at.
2446
2447         tests: migrate legacy tests/fcdemo tests to Autotest.
2448         Along with the demise of the last demo directory, so all the
2449         cruft for re-autotooling and distributing the additional
2450         directories is no longer necessary.
2451         * tests/fcdemo.at: New autotest groups, based on...
2452         * tests/fcdemo-conf.test, tests/fcdemo-exec.test,
2453         tests/fcdemo-make.test, tests/fcdemo-shared-exec.test,
2454         tests/fcdemo-shared-make.test, tests/fcdemo-shared.test,
2455         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
2456         tests/fcdemo-static.test: ...these legacy tests, now removed.
2457         * tests/fcdemo/Makefile.am, tests/fcdemo/README,
2458         tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
2459         tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/fcdemo/foof.f90,
2460         tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
2461         tests/fcdemo/fprogram.f90: Remove.
2462         * configure.ac (CONF_SUBDIRS, DIST_MAKEFILE_LIST): Remove.
2463         * Makefile.am (DIST_SUBDIRS, FC_TESTS, clean-local-legacy)
2464         (configure-subdirs, distclean-recursive, distdir)
2465         (fake-distclean-legacy, $(DIST_MAKEFILE_LIST)): Remove.
2466         (COMMON_TESTS): Rename from this...
2467         (TESTS): ...to this.
2468
2469         tests: migrate legacy tests/f77demo tests to Autotest.
2470         * tests/f77demo.at: New autotest groups, based on...
2471         * tests/f77demo-conf.test, tests/f77demo-exec.test,
2472         tests/f77demo-make.test, tests/f77demo-shared-exec.test,
2473         tests/f77demo-shared-make.test, tests/f77demo-shared.test,
2474         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
2475         tests/f77demo-static.test: ...these legacy tests, now removed.
2476         * tests/f77demo/Makefile.am, tests/f77demo/README,
2477         tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
2478         tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/f77demo/foof.f,
2479         tests/f77demo/foof2.f, tests/f77demo/foof3.f,
2480         tests/f77demo/fprogram.f: Remove.
2481         * configure.ac (CONF_SUBDIRS): Remove tests/f77demo.
2482
2483         tests: migrate legacy tests/mdemo2 tests to Autotest.
2484         This test was just a small non-ltdl aware library to load a
2485         library from the legacy mdemo test, which in turn used ltdl to
2486         call functions from modules. No need to create a whole other
2487         test group with copies of everything from mdemo setup - just
2488         tack the additional test on the end of the mdemo group.
2489         * tests/mdemo.at (link with library that loads ltdl modules):
2490         New test, based on...
2491         * tests/mdemo2-conf.test, tests/mdemo-exec.test,
2492         tests/mdemo-make.test: ...these legacy tests, now removed.
2493         * tests/mdemo2/Makefile.am, tests/mdemo2/README,
2494         tests/mdemo2/configure.ac, tests/mdemo2/main.c: Remove.
2495         * configure.ac (CONF_SUBDIRS): Remove tests/mdemo2.
2496         * Makefile.am: Adjust.
2497
2498         tests: migrate legacy tests/mdemo tests to Autotest.
2499         * tests/mdemo.at: New autotest groups, based on...
2500         * tests/mdemo-conf.test, tests/mdemo-dryrun.test,
2501         tests/mdemo-exec.test, tests/mdemo-inst.test,
2502         tests/mdemo-make.test, tests/mdemo-shared-exec.test,
2503         tests/mdemo-shared-inst.test, tests/mdemo-shared-make.test,
2504         tests/mdemo-shared-unst.test, tests/mdemo-shared.test,
2505         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
2506         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
2507         tests/mdemo-static.test, tests/mdemo-unst.test: ...these legacy
2508         tests, now removed.
2509         * tests/mdemo/Makefile.am, tests/mdemo/README,
2510         tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
2511         tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
2512         tests/mdemo/sub.c: Remove.
2513         * configure.ac (CONF_SUBDIRS): Remove tests/mdemo.
2514         * Makefile.am: Adjust.
2515
2516         tests: migrate legacy tests/pdemo tests to Autotest.
2517         This test was a thinly veiled copy of the basic legacy
2518         demo-conf.test series, with the addition of long file names that
2519         are not unique in the first 17 characters of their name, mashed
2520         up with the cmdline_wrap.at max_cmd_len limits.  Migrating to
2521         Autotest means that this test will be automatically rerun with
2522         max_cmd_len=24 as cmdline_wrap.at recurses through the whole
2523         testsuite, so the migrated pdemo test is now simply another test
2524         case in demo.at with longer file names.
2525         * test/demo.at (linking with long file names): New test, based
2526         on...
2527         * tests/pdemo-conf.test, tests/pdemo-exec.test,
2528         tests/pdemo-inst.test, tests/pdemo-make.test: ...these legacy
2529         tests, now removed.
2530         * tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
2531         tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
2532         tests/pdemo/longer_file_name_foo.c,
2533         tests/pdemo/longer_file_name_foo2.c,
2534         tests/pdemo/longer_file_name_hell1.c,
2535         tests/pdemo/longer_file_name_hell2.c,
2536         tests/pdemo/longer_file_name_hello.c,
2537         tests/pdemo/longer_file_name_main.c: Remove.
2538         * configure.ac (CONF_SUBDIRS): Remove tests/pdemo.
2539         * Makefile.am: Adjust.
2540
2541         tests: migrate legacy tests/tagdemo tests to Autotest.
2542         * tests/tagdemo.at: New autotest groups, based on...
2543         tests/tagdemo-conf.test, tests/tagdemo-exec.test,
2544         tests/tagdemo-make.test, tests/tagdemo-shared-exec.test,
2545         tests/tagdemo-shared-make.test, tests/tagdemo-shared.test,
2546         tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
2547         tests/tagdemo-static.test, tests/tagdemo-undef-exec.test,
2548         tests/tagdemo-undef-make.test, tests/tagdemo-undef.test:
2549         ...these legacy tests, now removed.
2550         * tests/tagdemo/.gitignore, tests/tagdemo/Makefile.am,
2551         tests/tagdemo/README, tests/tagdemo/baz.cpp,
2552         tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
2553         tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
2554         tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
2555         tests/tagdemo/main.cpp: Remove.
2556         * configure.ac (CONF_SUBDIRS): Remove tests/tagdemo.
2557         * Makefile.am: Adjust.
2558
2559         tests: migrate legacy tests/depdemo tests to Autotest.
2560         * tests/depdemo.at: New autotest groups, based on...
2561         * tests/depdemo-conf.test, tests/depdemo-exec.test,
2562         tests/depdemo-inst.test, tests/depdemo-make.test,
2563         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
2564         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
2565         tests/depdemo-nofast.test, tests/depdemo-relink.test,
2566         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
2567         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
2568         tests/depdemo-shared.test, tests/depdemo-static-exec.test,
2569         tests/depdemo-static-inst.test, tests/depdemo-static-make.test,
2570         tests/depdemo-static-unst.test, tests/depdemo-static.test,
2571         tests/depdemo-unst.test: ...these legacy test cases, now
2572         removed.
2573         * tests/depdemo/Makefile.am, tests/depdemo/README,
2574         tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
2575         tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
2576         tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
2577         tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
2578         tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
2579         tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
2580         tests/depdemo/l4/l4.h, tests/depdemo/main.c,
2581         tests/depdemo/sysdep.h: Remove.
2582         * configure.ac (CONF_SUBDIRS): Remove tests/depdemo.
2583         * Makefile.am: Adjust.
2584
2585         tests: migrate legacy tests/demo tests to Autotest.
2586         * tests/demo.at: New autotest groups, based on...
2587         * tests/demo-conf.test, tests/demo-deplibs.test,
2588         tests/demo-exec.test, tests/demo-hardcode.test,
2589         tests/demo-inst.test, tests/demo-make.test,
2590         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
2591         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
2592         tests/demo-nofast.test, tests/demo-noinst-link.test,
2593         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
2594         tests/demo-nopic.test, tests/demo-pic-exec.test,
2595         tests/demo-pic-make.test, tests/demo-pic.test,
2596         tests/demo-relink.test, tests/demo-shared-exec.test,
2597         tests/demo-shared-inst.test, tests/demo-shared-make.test,
2598         tests/demo-shared-unst.test, tests/demo-shared.test,
2599         tests/demo-static-exec.test, tests/demo-static-inst.test,
2600         tests/demo-static-make.test, tests/demo-static-unst.test,
2601         tests/demo-static.test, tests/demo-unst.test: ...these legacy
2602         test cases, now removed.
2603         * tests/demo/Makefile.am, tests/demo/README,
2604         tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c,
2605         tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
2606         tests/demo/hello.c, tests/demo/main.c: Remove.
2607         * configure.ac (CONF_SUBDIRS): Remove tests/demo.
2608         * Makefile.am: Adjust.
2609
2610         tests: migrate legacy tests/cdemo tests to Autotest.
2611         * tests/cdemo.at: New Autotest groups, based on...
2612         * tests/cdemo-conf.test, tests/cdemo-exec.test,
2613         tests/cdemo-make.test, tests/cdemo-shared-exec.test,
2614         tests/cdemo-shared-make.test, tests/cdemo-shared.test,
2615         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
2616         tests/cdemo-static.test, tests/cdemo-undef-exec.test,
2617         tests/cdemo-undef-make.test, tests/cdemo-undef.test: ...these
2618         legacy test cases, now removed.
2619         tests/cdemo/Makefile.am, tests/cdemo/README,
2620         tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h,
2621         tests/cdemo/main.c: Remove.
2622         * configure.ac (CONF_SUBDIRS): Remove tests/cdemo.
2623         * Makefile.am: Adjust.
2624
2625         maint: distribute a single ChangeLog file.
2626         * ChangeLog.1996, ChangeLog.1997, ChangeLog.1998, ChangeLog.1999,
2627         ChangeLog.2000, ChangeLog.2001, ChangeLog.2002, ChangeLog.2003,
2628         ChangeLog.2004, ChangeLog.2005, ChangeLog.2006, ChangeLog.2007,
2629         ChangeLog.2008, ChangeLog.2009, ChangeLog.2010: Remove.  Content
2630         moved from here...
2631         * ChangeLog.old: ...to here.
2632         * Makefile.am (EXTRA_DIST): Update list of ChangeLog files.
2633         (changelog_old): New variable to hold path to ChangeLog.old file.
2634         ($(changelog)): Update to concatenate non-distributed
2635         ChangeLog.old file to distributed ChangeLog after git log entries.
2636
2637         syntax-check: fix violations and implement sc_prohibit_space_semicolon.
2638         No need for a spurious space before a command ending semi-colon.
2639         * cfg.mk (sc_prohibit_space_semicolon): New test to catch
2640         accidental reintroduction of spurious spaces removed by this
2641         changeset.
2642         * bootstrap, build-aux/general.m4sh, build-aux/ltmain.m4sh,
2643         libltdl/lt__strl.c, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at:
2644         Remove spurious spaces.
2645
2646 2012-10-03  Gary V. Vaughan  <gary@gnu.org>
2647
2648         Merge branch 'gary/reredo-test-operand-order'
2649         The original manually applied changeset 962aa91 contained several
2650         errors (some corrected by subsequent patches on master, others not)
2651         and many unrelated (although in this case, correct) changes were also
2652         committed in the same changeset.
2653         The merged branch gary/reredo-test-operand-order factors the
2654         unrelated changes out into separate commits, and performs the work
2655         that should have been in 962aa91 with a script, the results of which
2656         were then painstakingly inspected for errors.
2657         This merge moves the corrections for errors made in the original
2658         manual patch from the branch onto master.  Please inspect the many
2659         separate changesets on the branch rather than the original patch
2660         when you bisect or otherwise find your way to an error caused by
2661         962aa91.
2662
2663 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
2664
2665         tests: simplify some shell code.
2666         * tests/fail.at: Simplify.
2667         * tests/static.at: Likewise.
2668
2669         libtool: unroll complex nested compound statements
2670         * build-aux/ltmain.m4sh: Use an if statement instead of ugified
2671         compound statements.
2672
2673         libtool: unroll nested if into a single case statement.
2674         * build-aux/ltmain.m4sh (func_mode_link): Unroll a hard to
2675         understad nested if statement into a more readable single case
2676         statement.
2677
2678         libtool: simplify $skipped_export blocks
2679         * build-aux/ltmain.m4sh (func_mode_link): Save an if statement
2680         with '$skipped_export && { block; }' instead of 'if $skipped_export;
2681         then block; fi'.
2682
2683         libtool: simplify an if statement
2684         * build-aux/ltmain.m4sh (func_mode_link): Reverse the branch
2685         order for an if statement for readability.
2686         * m4/libtool.m4: Likewise.
2687
2688         libtool: save an if statement, with a compound statement.
2689         * build-aux/ltmain.m4sh (func_mode_link): Simplify.
2690
2691         libtool: simplify multiple string tests
2692         * build-aux/ltmain.m4sh (func_mode_link): Save test invocations
2693         by using 'test x,y = "$a,$b"' instead of 'test x = "$a" && test y
2694         = "$b"'.
2695         * m4/libtool.m4: Likewise.
2696
2697         libtool: fold if into a compound OR statement when more readable
2698         * build-aux/ltmain.m4sh (func_mode_link): For readability, use
2699         'test string = "$var" || { stuff; }' in preference to
2700         'if test string != "$var"; then stuff; fi'.
2701
2702         libtool: use false or : for $rmforce, and simplify
2703         * build-aux/ltmain.m4sh (func_mode_uninstall): Save a string
2704         comparison by setting $rmforce to false or : and using it
2705         directly as the first argument to if.
2706
2707         libtool: use false or : for $wrappers_required, and simplify
2708         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2709         comparison by setting $wrappers_required to false or : and using
2710         it directly with a ored block rather than an if statement.
2711
2712         libtool: use false or : for $linkalldeplibs, and simplify
2713         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2714         comparison by setting $linkalldeplibs to false or : and using it
2715         directly as the first argument to if.
2716
2717         libtool: use false or : for $valid_a_lib, and simplify
2718         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2719         comparison by setting $valid_a_lib to false or : and using it
2720         directly as the first argument to if.
2721
2722         libtool: use false or : for $found, and simplify
2723         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2724         comparison by setting $found to false or : and using it directly
2725         as the first argument to if.
2726
2727         libtool: use false or : for $alldeplibs, and simplify
2728         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2729         comparison by setting $alldeplibs to false or : and using it
2730         directly as the first argument to if.
2731
2732         libtool: use false or : for $preload, and simplify
2733         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2734         comparison by setting $preload to false or : and using it directly
2735         instead of if statements.
2736
2737         libtool: use false or : for $my_pic_p, and simplify
2738         * build-aux/ltmain.m4sh (func_generate_dlsyms): Save a string
2739         comparison by setting $my_pic_p to false or : and using it directly
2740         instead of calling if.
2741         Adjust all callers.
2742
2743         libtool: use false or : for $finalize, and simplify
2744         * build-aux/ltmain.m4sh (func_mode_install): Save a string
2745         comparison by setting $finalize to false or : and using it
2746         directly as the first argument to if.
2747
2748         libtool: use false or : for $isdir, and simplify
2749         * build-aux/ltmain.m4sh (func_mode_install): Save a string
2750         comparison by setting $isdir to false or : and using it directly
2751         as the first argument to if.
2752
2753         syntax-check: [REDO] fix violations and implement
2754          sc_prohibit_test_const_follows_var.
2755         To safely use a non-literal fist argument to 'test', you must
2756         always prepend a literal non-'-' character, but often the second
2757         operand is a constant that doesn't begin with a '-' already, so
2758         always use 'test a = "$b"' instead of the noisy 'test "X$b" = Xa'.
2759         * cf.mk (sc_prohibit_test_const_follws_var): New syntax-check
2760         rule to ensure we don't reintroduce noisy test operands.
2761         bootstrap, build-aux/extract-trace, build-aux/general.m4sh,
2762         build-aux/ltmain.m4sh, configure.ac, doc/libtool.texi, libtoolize.m4sh,
2763         m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at, tests/defs.m4sh,
2764         tests/demo-relink.test, tests/demo/configure.ac,
2765         tests/depdemo-relink.test, tests/destdir.at, tests/duplicate_conv.at,
2766         tests/fail.at, tests/getopt-m4sh.at, tests/help.at, tests/libtoolize.at,
2767         tests/link-2.test, tests/link-order2.at, tests/lt_dlopenext.at,
2768         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
2769         tests/need_lib_prefix.at, tests/nocase.at, tests/pdemo/configure.ac,
2770         tests/pic_flag.at, tests/search-path.at, tests/shlibpath.at,
2771         tests/static.at, tests/sysroot.at, tests/tagtrace.test,
2772         tests/testsuite.at, tests/with-pic.at: Swap operands to avoid useless
2773         noise.
2774
2775 2012-09-19  Peter Rosin  <peda@lysator.liu.se>
2776
2777         tests: skip with-pic test when no "real" pic flag is used.
2778         * tests/with-pic.at: Windows uses "-DDLL_EXPORT -DPIC" as the pic
2779         "flag", but never applies it to static libraries. Cater for this
2780         and skip if no "real" pic flag is in use.
2781
2782 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
2783
2784         syntax-check: fix texinfo formatting flagged by
2785          prohibit_undesirable_word_seq.
2786         * doc/libtool.text: Fix several misuses of @xref and @pxref so that
2787         the prohibit_undesirable_word_seq syntax check passes again.
2788
2789         syntax-check: remove useless_braces_in_variable_derefs.
2790         * build-aux/general.m4sh: Remove spurious braces around
2791         ${ZSH_VERSION} dereference.
2792         * build-aux/ltmain.m4sh (func_mode_link): Likewise for ${wl}.
2793
2794         syntax-check: skip prohibit_strncpy.
2795         * cfg.mk (local-checks-to-skip): sc_prohibit_strncpy.
2796
2797         syntax-check: skip prohibit_always_true_header_tests rule.
2798         * cfg.mk (local-checks-to-skip): Add
2799         sc_prohibit_always_true_header_tests.
2800
2801         maint: Revert "bootstrap: delete unneeded README-release patch"
2802         This reverts commit 11cd425e7d47111956381dba28f8c1b34e14653f.
2803         These instructions are hard to find for new maintainers, so it's
2804         good to keep them to hand with the release notes.
2805         And the additional distchecks are important prior to a release.
2806
2807         maint: remove unused cvsu script.
2808         * build-aux/cvsu: Remove. This script is not useful now that
2809         Libtool's repository is hosted in git.
2810         * Makefile.am (build_scripts): Remove cvsu reference.
2811
2812         maint: run update-copyright for missing 2011 and 2012 years.
2813         See maintain.texi (Copyright Notices) for rules for maintaining
2814         the years in copyright notices.
2815         * All Files (Copyright): Updated with missing 2011 and 2012.
2816
2817         bootstrap: use gnulib update-copyright script.
2818         See maintain.texi (Copyright Notices) for rules for maintaining
2819         the years in copyright notices.
2820         * bootstrap.conf (gnulib_modules): Add update-copyright.
2821         * cfg.mk (update-copyright-env): Set environment variables for
2822         update-copyright script.
2823
2824         bootstrap: update bootstrap script to latest upstream.
2825         * bootstrap, build-aux/options-parser: apply upstream fixes and
2826         enhancements.
2827
2828         git: don't complain about new parallel tests driver and file droppings.
2829         * build-aux/.gitignore: Ignore parallel `test-driver' script.
2830         * tests/.gitignore: Ignore `test-driver' .trs file droppings.
2831
2832         gnulib: update local gnulib patches.
2833         * gl/build-aux/announce-gen.diff: Remove hunks adopted upstream.
2834         * gl/build-aux/do-release-commit-and-tag.diff: Refresh this patch
2835         to match current gnulib.
2836
2837         gnulib: update gnulib submodule.
2838
2839         bootstrap: ensure there is a ChangeLog before running automake.
2840         Automake refuses to run in GNU-mode unless there is a ChangeLog file
2841         in the top-level directory.
2842         * bootstrap.conf (libtool_force_changelog): Create a dummy ChangeLog.
2843
2844         libtoolize: improve verbose mode output.
2845         * libtoolize (func_require_seen_ltdl)
2846         (func_require_seen_libtool): Output success message in verbose
2847         mode.
2848
2849 2012-08-22  Peter O'Gorman  <peter@pogma.com>
2850
2851         libtool: Add the 'n' to then.
2852         * m4/libtool.m4: fix typo.
2853         Reported by Brad Smith.
2854
2855 2012-08-22  Andreas Schwab  <schwab@linux-m68k.org>
2856
2857         libtool: Pass through -g* so that debugging information is not dropped
2858         * ltmain.m4sh (func_mode_link): Pass through -g*.
2859
2860 2012-08-22  David Edelsohn  <dje.gcc@gmail.com>
2861
2862         libtool: AIX PIC shared library support
2863         * m4/libtool.m4 (_LT_COMPILER_PIC): Add -fPIC to GCC and GXX for AIX.
2864
2865 2012-08-22  Brad Smith  <brad@comstyle.com>
2866
2867         libtool: Update/simplify OpenBSD support
2868         * m4/libtool.m4: Forget about 11 year old releases.
2869
2870 2012-08-19  Peter Rosin  <peda@lysator.liu.se>
2871
2872         libtool: quote progpath properly
2873         Attempt to handle spaces in paths better.
2874         * build-aux/ltmain.m4sh (func_mode_install, func_mode_link): Quote
2875         $progpath.
2876         * THANKS: Update.
2877
2878 2012-04-19  Mike Frysinger  <vapier@gentoo.org>
2879
2880         libtool: Handle getconf returning "undefined".
2881         * m4/libtool.m4: Check for "undefined" from `getconf`.
2882
2883 2012-03-17  Peter Rosin  <peda@lysator.liu.se>
2884
2885         bootstrap: delete unneeded README-release patch
2886         * gl/top/README-release.diff: Delete.
2887
2888 2012-03-16  Peter O'Gorman  <peter@pogma.com>
2889
2890         libtool: Fix typo that caused sys_lib_search_path_spec to be wrong.
2891         * m4/libtool.m4: s/lt_fooi/lt_foo/.
2892         Reported by Paul Seidler.
2893
2894 2012-02-21  Samuel Thibault  <samuel.thibault@gnu.org>
2895
2896         libtool: Improve GNU/Hurd support.
2897         * m4/libtool.m4: Add gnu* match where it was missing.
2898
2899 2012-02-19  Titus von Boxberg  <titus@v9g.de>
2900
2901         libtool: Accept clang's -stdlib linker flag.
2902         build-aux/ltmain.m4sh: Don't drop the -stdlib= flag.
2903
2904 2012-02-19  Juergen Reuter  <reuter@t00pcx17094.desy.de>
2905
2906         libtool: Enable nagfor fortran compiler support
2907         * build-aux/ltmain.m4sh: nagfor compatible version string.
2908         * m4/libtool.m4: nagfor support.
2909
2910 2012-02-19  Juergen Reuter  <reuter@theoc01.desy.de>
2911
2912         libtool: Fixing -shared error message for nagfor compiler.
2913         * m4/libtool.m4: Fix -shared.
2914
2915 2012-02-19  Pavel (Pasha) Shamis  <shamisp@ornl.gov>
2916
2917         ltdl: Improve debug error reporting in ltdl.
2918         * libltdl/ltdl.c: Print the error message if loading fails.
2919
2920 2012-02-19  Peter O'Gorman  <peter@pogma.com>
2921
2922         maint: Deleted unneeded gitlog-to-changelog patch
2923         * gl/build-aux/gitlog-to-changelog.diff: Delete.
2924
2925 2012-02-02  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
2926
2927         fixup: restore EXPORTS test
2928         Commit v2.4.2-120-g962aa91
2929         syntax-check: fix violations and implement sc_prohibit_test_const_follows_var
2930         inadvertedly reversed the meaning of the comparison.
2931
2932         * build-aux/ltmain.m4sh (func_mode_link) [cygwin|mingw|cegcc]: Restore
2933         the EXPORTS test.  We need to look at the symbols when it's _not_
2934         already a .def file (in which case we trust the user input blindly).
2935
2936 2012-01-30  Peter Rosin  <peda@lysator.liu.se>
2937
2938         cwrapper: avoid surplus strlen calculations.
2939         * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src:lt_update_exe_path):
2940         Avoid surplus strlen calculations.
2941
2942 2011-12-24  Gary V. Vaughan  <gary@gnu.org>
2943
2944         bootstrap: fix Autoconf version typo.
2945         * build-aux/options-parser: s/2\.62/2.68/
2946
2947         gnulib: update gnulib submodule.
2948         Among others, this fixes the reference to a local commit.
2949         * gnulib: Updated to todays master HEAD revision.
2950         * gl/top/README-release.diff: Update to account for changes to
2951         gnulib/top/README-release since the last gnulib update.
2952
2953 2011-12-18  Gary V. Vaughan  <gary@gnu.org>
2954
2955         libtool: make fork minimisation compatible with dash and zsh.
2956         * build-aub/general.m4sh (lt_HAVE_PLUSEQ_OP): Instead of using
2957         $((..)) arithmetic, which causes an error on dash, use a case
2958         based bash version check.
2959         (lt_HAVE_ARITH_OP, lt_HAVE_XSI_OPS): Also short circuit the
2960         feature probing forks and set these automatically when zsh is
2961         detected.
2962         Reported by Stefano Lattarini.
2963
2964         bootstrap: adopt autoconf echo normalization code.
2965         Dash shipped with Ubutu-11.10 as /bin/sh, among others, still
2966         has a crippled echo builtin that mis-handles backslashes.
2967         * build-aux/options-parser (bs_echo): Adopt the autoconf echo
2968         normalization code to find a suitable replacement for buggy echo
2969         commands.
2970         Adjust all uses of echo to $bs_echo.
2971         * build-aux/extract-trace (func_extract_trace, func_main):
2972         Likewise.
2973         * bootstrap: To retain some execution speed on platforms with
2974         buggy builtin echo, replace most occurrences of `echo' with
2975         `$bs_echo' - except where its arguments will obviously never
2976         contain backslashes or be overly long.
2977         Reported by Reuben Thomas.
2978
2979         libtool: minimise forks per invocation under bash.
2980         * build-aux/general.m4sh (lt_HAVE_PLUSEQ_OP, lt_HAVE_ARITH_OP)
2981         (lt_HAVE_XSI_OPS): Set these without forking a test script when
2982         running under bash, to avoid a few unnecessary forks.
2983
2984 2011-12-13  H.J. Lu  <hongjiu.lu@intel.com>
2985
2986         libtool: Support x32.
2987         * m4/libtool.m4 (_LT_ENABLE_LOCK): Support x32.
2988
2989 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
2990
2991         maint: disable prohibit_always-defined_macros syntax check.
2992         Aside from Apple grep silently failing to run this test and
2993         report violations, libtool still uses non-gnulib versions of
2994         dirent.h and argz.h which use the same macros, but are not
2995         always-defined.
2996         * cfg.mk (local-checks-to-fix): Move
2997         sc_prohibit_always-defined_macros from here...
2998         (local-checks-to-skip): ...to here.
2999         Reported by Peter O'Gorman.
3000
3001         tests: s/snippit/snippet/.
3002         * tests/demo/foo.h, tests/pdemo/foo.h: Spell `snippet' correctly.
3003         Reported by Stefano Lattarini.
3004
3005         tests: make sure file restore traps are called correctly on AIX.
3006         * tests/demo-noinst-link.test (func_save_files): set the restore
3007         trap outside a function, otherwise AIX 5.3 /bin/sh will run the
3008         trap at the end of the function, instead of when the script
3009         exits.
3010         * tests/demo-relink.test (func_save_files): Ditto.
3011         * tests/depdemo-relink.test (func_save_files): Ditto.
3012         Reported by Stefano Lattarini.
3013
3014         maint: eliminate some more spurious leading Xs.
3015         * m4/libtool.m4: Reverse argument order to eliminate spurious
3016         leading X's.
3017
3018         bootstrap: put back missing spaces before parens.
3019         * bootstrap (func_require_buildreq_autobuild)
3020         (func_require_buildreq_automake): Vi's delete word command is
3021         too greedy and also eats trailing whitespace before following
3022         non-word-chars. Put back the spaces it ate so that
3023         syntax-checks pass once again.
3024
3025         libtoolize: refactor copying filter creation.
3026         Prevent the various require_filter functions from becoming too
3027         long by factoring common code into new functions.
3028         * libtoolize (func_make_relative_dir_filter)
3029         (func_make_relative_ltdl_filter): New functions. Generalize and
3030         consolidate the various similar snippets for concatenating
3031         together the sed scripts for func_copy filtering.
3032         (require_filter_Makefile_am, require_filter_aclocal_m4)
3033         (require_filter_configure_ac): Simplify.
3034         (require_ltdl_relative_aux_dir): Remove.
3035         (require_ltdl_relative_macro_dir): Ditto.
3036
3037         maint: pick XSI funcs at runtime, not configure time.
3038         Determine, on a function by function basis, what XSI features
3039         are available in the shell that is actually running the script,
3040         rather than the one that was picked at configure time by the
3041         re-execution engine.
3042         * m4/libtool.m4 (_LT_PROG_FUNCTION_REPLACE)
3043         (_LT_PROG_REPLACE_SHELLFNS): Remove.
3044         (_LT_CHECK_SHELL_FEATURES): Remove tests for XSI and += support.
3045         * build-aux/general.m4sh (func_append, func_append_quoted)
3046         (func_arith, func_len, func_basename, func_dirname)
3047         (func_dirname_and_basename, func_stripname): List both enhanced
3048         and fallback implementations, and choose one based on whether
3049         the enhanced features required by the fastest version are
3050         available.
3051         * build-aux/getopt.m4sh (func_split_short_opt)
3052         (func_split_long_opt): Ditto.
3053         * build-aux/ltmain.m4sh (func_lo2o, func_xform): Ditto.
3054         * tests/getopt-m4sh.at: Add tests for enhanced and fallback
3055         implementations of func_arith, func_len, func_stripname and
3056         func_dirname_and_basename.
3057         * NEWS: Updated.
3058
3059         maint: share useful functions from general.m4sh.
3060         * build-aux/ltmain.m4sh (func_append, func_append_quoted)
3061         (func_arith, func_len): Removed from here...
3062         * build-aux/general.m4sh (func_append, func_append_quoted)
3063         (func_arith, func_len): ...and added to here.
3064         (func_dirname, func_dirname_and_basename, func_normal_abspath)
3065         (func_relative_path): Use func_append.
3066         * tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): Removed.
3067         Fallback functions are now in any m4sh generated file
3068         automatically.
3069
3070         libtoolize: reorder function definitions to keep func_filter_* together.
3071         * libtoolize: Restore asciibetical order, so that all the
3072         filter function definitions are together.
3073
3074         libtoolize: use _filter as a prefix for better ordering.
3075         * libtoolize.m4sh (require_Makefile_am_filter)
3076         (require_ltdl_mk_filter, require_aclocal_m4_filter)
3077         (require_configure_ac_filter): Rename these functions from this...
3078         (require_filter_Makefile_am, require_filter_ltdl_mk)
3079         (require_filter_aclocal_m4, require_filter_configure_ac): ...to
3080         this, respectively.  Adjust all callers.
3081         (Makefile_am_filter, ltdl_mk_filter, aclocal_m4_filter)
3082         (configure_ac_filter): Rename these global variables from this...
3083         (filter_Makefile_am, filter_ltdl_mk, filter_aclocal_m4)
3084         (filter_configure_ac): ...to this, respectively.
3085
3086         libtoolize: rename ltdl.mk filter function.
3087         * libtoolize.m4sh (require_Makefile_inc_filter): Rename from
3088         this...
3089         (require_ltdl_mk_filter): ...to this. Adjust all callers.
3090
3091         bootstrap: escape quotes properly in generated functions.
3092         * bootstrap: Although not a real bug, for consistency, be sure
3093         to correctly escape single quotes inside a single quoted
3094         function generator.
3095
3096         bootstrap: reorder function definitions to keep func_buildreq_* together.
3097         * bootstrap: Restore asciibetical order, so that all the
3098         buildreq function definitions are together.
3099
3100         bootstrap: use _buildreq as a prefix for better ordering.
3101         * bootstrap (require_autobuild_buildreq)
3102         (require_autoconf_buildreq, require_automake_buildreq)
3103         (require_autopoint_buildreq, require_libtoolize_buildreq)
3104         (require_patch_buildreq): Rename from these...
3105         (require_buildreq_autobuild, require_buildreq_autoconf)
3106         (require_buildreq_automake, require_buildreq_autopoint)
3107         (require_buildreq_libtoolize, require_buildreq_patch): ...to
3108         these, respectively.  Adjust all callers.
3109
3110         bootstrap: ensure consistent function header comments.
3111         * bootstrap (require_bootstrap_uptodate)
3112         (require_buildtools_uptodate): Use `require_...' in header
3113         comment for these functions to be consistent with the rest,
3114         rather than `func_require_...'.
3115
3116         bootstrap: make sure patch is available to bootstrap if necessary.
3117         Make sure we're not lacking any functionality provided by the
3118         incumbent gnulib bootstrap script, and where it's easy to do so
3119         (like it is here), provide better functionality!
3120         * bootstrap (require_patch): Make sure that PATCH expands to the
3121         best `patch' command available on the system, honouring
3122         overrides in the users environment.
3123         (require_patch_buildreq): Automatically add a requirement for a
3124         patch command to buildreq when there are diff files in
3125         $local_gl_dir.
3126         (func_require_buildtools_uptodate): Call require_patch_buildreq
3127         before testing build tool versions.
3128         (func_gnulib_tool_copy_file): Make sure PATCH is set before using
3129         gnulib-tool to copy files.
3130
3131 2011-11-26  Gary V. Vaughan  <gary@gnu.org>
3132
3133         m4: fix logic error leading to -fno-rtti being added wrongly.
3134         * m4/libtool.m4 (_LT_COMPILER_OPTION): Negate comparison so that
3135         compiler flags are added correctly.
3136
3137         maint: Fix generated ChangeLog typos.
3138         * build-aux/git-log-fix: Spell Stefano Lattarini's name
3139         correctly.
3140         Don't use my home email address for GNU commits.
3141
3142 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
3143
3144         syntax-check: fix violations and implement sc_useless_braces_in_variable_derefs.
3145         Until now, libtool sources have used braced variable names
3146         seemingly at random! Almost always the braces are just noise, so
3147         remove all the unnecessary ones.
3148         * cfg.mk (sc_useless_braces_in_variable_derefs): New syntax
3149         check rule to ensure we only reintroduce braced variable
3150         dereferences if they are followed by a valid variable name
3151         character.
3152         build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
3153         build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
3154         libltdl/configure.ac, m4/libtool.m4, m4/ltdl.m4,
3155         m4/ltoptions.m4, tests/defs.m4sh, tests/demo-nopic.test,
3156         tests/depdemo/configure.ac, tests/flags.at, tests/link.test,
3157         tests/objectlist.test, tests/quote.test, tests/static.at: Remove
3158         spurious braces.
3159
3160         syntax-check: fix violations and implement sc_prohibit_sed_s_comma.
3161         I like to name temporary directories that I will remove shortly
3162         with two leading commas so that they sort lexicographically at
3163         the top of `ls' output.  Now, `./configure
3164         --prefix=`pwd`/,,inst' works again, for the first time in
3165         several years.
3166         * cfg.mk (sc_prohibit_sed_s_comma): Comma is too common a
3167         character to use routinely as the separator for sed
3168         substitutions on file paths and other variables determined by
3169         the user, causing bugs like the one I describe above.  Make sure
3170         we don't accidentally reintroduce any comma separators in
3171         future.
3172         * Makefile.am, bootstrap, bootstrap.conf, build-aux/extract-trace,
3173         build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
3174         build-aux/git-log-fix, build-aux/ltmain.m4sh, libtoolize.m4sh,
3175         m4/libtool.m4, m4/ltdl.m4, tests/cdemo-undef.test,
3176         tests/cmdline_wrap.at, tests/darwin.at, tests/defs.m4sh,
3177         tests/getopt-m4sh.at, tests/install.at, tests/libtoolize.at,
3178         tests/mdemo/Makefile.am, tests/need_lib_prefix.at,
3179         tests/sysroot.at, tests/tagdemo-undef.test, tests/testsuite.at:
3180         Try to use `|' as the default separator wherever possible,
3181         otherwise something else that doesn't occur in the substitution
3182         expression.
3183         * NEWS: Updated.
3184
3185         syntax-check: fix violations and implement sc_prohibit_bare_basename.
3186         * cfg.mk (sc_prohibit_bare_basename, sc_prohibit_basename_with_sed):
3187         Make sure not to go back to using occasional `|$basename' or
3188         `|$dirname' syntax.
3189         * build-aux/git-hooks/commit-msg, build-aux/ltmain.m4sh,
3190         * build-aux/options-parser, tests/fcdemo-conf.test,
3191         * tests/fcdemo-shared.test, tests/fcdemo-static.test,
3192         * tests/libtoolize.at: Fix violations.
3193
3194         tests: migrate tests/sh.test checks to syntax-checks.
3195         Some modernization of the legacy testsuite.
3196         * tests/sh.test: Remove.
3197         * Makefile.am (COMMON_TESTS): Adjust.
3198         * cfg.mk (sc_libtool_m4_cc_basename, sc_prohibit_bracket_as_test)
3199         (sc_prohibit_nested_quotes, sc_prohibit_set_dummy_without_shift)
3200         (sc_prohibit_set_minus_minus, sc_prohibit_test_binary_operators)
3201         (sc_prohibit_test_dollar, sc_prohibit_test_minus_e)
3202         (sc_prohibit_test_unary_operators, sc_prohibit_test_X)
3203         (sc_prohibit_Xsed_withou_X, sc_require_function_nl_brace):
3204         Functionally identical tests to what used to be performed by
3205         sh.test, only with coverage of all files.
3206         * bootstrap, build-aux/edit-readme-alpha,
3207         build-aux/extract-trace, build-aux/getopt.m4sh,
3208         build-aux/ltmain.m4sh, configure.ac, m4/libtool.m4, m4/ltdl.m4,
3209         tests/bindir.at, tests/configure-iface.at, tests/cwrapper.at,
3210         tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
3211         tests/dlloader-api.at, tests/exceptions.at,
3212         tests/getopt-m4sh.at, tests/lalib-syntax.at, tests/link-2.test,
3213         tests/link-order2.at, tests/loadlibrary.at,
3214         tests/lt_dladvise.at, tests/lt_dlexit.at, tests/lt_dlopen_a.at,
3215         tests/lt_dlopenext.at, tests/need_lib_prefix.at,
3216         tests/nonrecursive.at, tests/recursive.at, tests/resident.at,
3217         tests/standalone.at, tests/static.at, tests/stresstest.at,
3218         tests/subproject.at, tests/sysroot.at, tests/tagtrace.test,
3219         tests/testsuite.at: Fix violations of the new syntax checks.
3220
3221         syntax-check: fix violations and implement sc_useless_quotes_in_assignment.
3222         Contrary to popular belief, Bourne shell does not resplit RHS of
3223         assignments after expansion, so if there are no unquoted shell
3224         metacharacters or whitespace, the quotes are useless.
3225         * cfg.mk (_sc_search_regexp_or_exclude): A variation of gnulib's
3226         _sc_search_regexp that also allows individual exclusions at the
3227         site of what would otherwise match by adding a comment.
3228         (sc_useless_quotes_in_assignment): New syntax-check rule to
3229         ensure we don't reintroduce useless quoted assignments.
3230         * bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
3231         build-aux/general.m4sh, build-aux/getopt.m4sh,
3232         build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
3233         doc/libtool.texi, libtoolize.m4sh, m4/libtool.m4, m4/ltdl.m4,
3234         m4/ltoptions.m4, tests/cwrapper.at, tests/defs.m4sh,
3235         tests/lalib-syntax.at, tests/libtoolize.at,
3236         tests/lt_dlopenext.at, tests/mdemo/configure.ac,
3237         tests/mdemo2/configure.ac, tests/need_lib_prefix.at,
3238         tests/no-executables.at, tests/quote.test, tests/suffix.test:
3239         Remove spurious quotes.
3240
3241         syntax-check: fix violations and implement sc_useless_quotes_in_case.
3242         Contrary to popular belief, Bourne shell does not resplit case
3243         expressions after expansion, so if there are no unquoted shell
3244         metacharacters or whitespace, the quotes are useless.
3245         * cfg.mk (sc_useless_quotes_in_case): New syntax-check rule to
3246         ensure we don't reintroduce useless quoted case expressions.
3247         * build-aux/ltmain.m4sh, m4/libtool.m4, tests/bindir.at,
3248         tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
3249         tests/demo-nopic.test, tests/link-2.test, tests/quote.test,
3250         tests/sysroot.at: Remove spurious quotes.
3251
3252         maint: quote $file correctly in bootstrap.
3253         * bootstrap (func_insert_sorted_if_absent): Don't forget the
3254         double quotes, since we can't control the content of $file.
3255         Reported by Stefano Lattarini.
3256
3257         build: fix a quoting bug when regenerating with bootstrap_edit.
3258         * Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh): The
3259         bootstrap_edit make macro already contains double quotes, so
3260         when echoing it, don't surround it with more double quotes since
3261         it is not escaped.
3262
3263 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
3264
3265         dist: hook syntax-check into `make distcheck'.
3266         To make sure we don't accidentally release anything with
3267         failing syntax-checks, have `make distcheck' run the
3268         syntax-checks automatically.
3269         * Makefile.am (distcheck-hook): New rule depending on
3270         syntax-check.
3271
3272         syntax-check: enable sc_prohibit_always_true_header_tests.
3273         * cfg.mk (local-checks-to-fix): Remove
3274         sc_prohibit_always_true_header_tests from list of disabled
3275         checks, because it no longer flags any violations.
3276
3277         syntax-check: enable sc_program_name.
3278         * cfg.mk (local-checks-to-skip): Remove sc_program_name
3279         list of disabled checks.
3280         (exclude_file_name_regexp--sc_program_name): Don't check demo
3281         programs for use of set_program_name.
3282
3283         syntax-check: enable sc_bindtextdomain.
3284         * cfg.mk (local-checks-to-skip): Remove sc_bindtextdomain
3285         list of disabled checks.
3286         (exclude_file_name_regexp--sc_bindtextdomain): Don't check demo
3287         programs for use of bindtextdomain.
3288
3289         syntax-check: fix violations and implement sc_trailing_blank-non-rfc3676.
3290         * cfg.mk (local-checks-to-fix): Move sc_trailing_blank from
3291         here...
3292         (local-checks-to-skip): ...to here, because otherwise it flags
3293         valid RFC3676 signature blocks.
3294         (sc_trailing_blank-non-rfc3676): An improved sc_trailing_blank
3295         implementation that doesn't flag signature blocks as violations.
3296         * Makefile.am, bootstrap.conf, doc/PLATFORMS,
3297         libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4,
3298         libltdl/m4/lt~obsolete.m4, tests/archive-in-archive.at,
3299         tests/convenience.at, tests/darwin.at, tests/depdemo/l1/l1.c,
3300         tests/depdemo/l2/l2.c, tests/depdemo/l3/l3.c,
3301         tests/depdemo/l4/l4.c, tests/f77demo/README,
3302         tests/f77demo/cprogram.c, tests/f77demo/foof.f,
3303         tests/f77demo/foof2.f, tests/f77demo/foof3.f,
3304         tests/f77demo/fprogram.f, tests/fcdemo/README,
3305         tests/fcdemo/cprogram.c, tests/fcdemo/foof.f90,
3306         tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
3307         tests/fcdemo/fprogram.f90, tests/mdemo/README,
3308         tests/mdemo/main.c, tests/mdemo/mlib.c, tests/objectlist.test,
3309         tests/static.at, tests/template.at, tests/testsuite.at: Remove
3310         trailing blanks.
3311
3312         syntax-check: fix violations and re-enable sc_useless_cpp_parens.
3313         * cfg.mk (local-checks-to-fix): Remove sc_useless_cpp_parens
3314         from list of disabled checks.
3315         * doc/libtool.texi, libltdl/argz.c, libltdl/argz_.h,
3316         build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
3317         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
3318         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
3319         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
3320         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
3321         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
3322         libltdl/loaders/dyld.c, libltdl/loaders/loadlibrary.c,
3323         libltdl/loaders/shl_load.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
3324         libltdl/ltdl.c, libltdl/ltdl.h, libltdl/m4/libtool.m4, tests/demo/foo.h,
3325         tests/depdemo/sysdep.h, tests/exceptions.at, tests/export.at,
3326         tests/pdemo/foo.h, tests/stresstest.at: Remove useless parens in cpp
3327         `#if defined(foo)' statements.
3328
3329         syntax-check: fix violations and re-enable sc_space_tab.
3330         * cfg.mk (local-checks-to-fix): Remove sc_space_tab from list of
3331         disabled checks.
3332         (exclude_file_name_regexp--sc_space_tab): Don't flag space-tab
3333         sequences in diff files as an error.
3334         * Makefile.am, build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
3335         build-aux/ltmain.m4sh, libltdl/loaders/dyld.c,
3336         libltdl/loaders/shl_load.c, libltdl/ltdl.h, libltdl/ltdl.mk,
3337         libltdl/slist.c, libtoolize.m4sh, m4/ltoptions.m4, tests/demo/dlmain.c,
3338         tests/depdemo/main.c, tests/libtoolize.at, tests/lt_dladvise.at,
3339         tests/pdemo/longer_file_name_dlmain.c, tests/sh.test, tests/static.at,
3340         tests/stresstest.at, tests/template.at: Fix space-tab sequences by
3341         reversing them in regexps, and deleting leading spaces in indentation.
3342
3343         syntax-check: fix violations and re-enable sc_prohibit_undesirable_word_seq.
3344         * cfg.mk (local-checks-to-fix): Remove
3345         sc_prohibit_undesirable_word_seq from list of disabled checks.
3346         * doc/libtool.texi, build-aux/ltmain.m4sh,
3347         libltdl/m4/libtool.m4, libtoolize.m4sh: Replace all uses of "can
3348         not" with "cannot".
3349
3350         syntax-check: fix violations and re-enable sc_probibit_test_minus_ao.
3351         * cfg.mk (local-checks-to-fix): Remove
3352         sc_probhibit_test_minus_ao from list of disabled checks.
3353         (exclude_file_name_regexp--sc_prohibit_tests_minus_ao): The
3354         matches from this syntax-check in libtool.m4 are all bogus.
3355
3356         syntax-check: fix violations and re-enable sc_prohibit_strcmp.
3357         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_strcmp
3358         from list of disabled checks.
3359         (exclude_file_name_regexp--sc_prohibit_strcmp): Ignore
3360         violations in libtool.texi and any demo C files.
3361         * libltdl/libltdl/lt__private.h (strneq, streq): Renamed from
3362         this...
3363         (STRNEQ, STREQ): ..to this.  Adjust all callers.
3364         * tests/slist.at: Add STREQ definition. Change all !strcmp calls
3365         to STREQ.
3366         * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src): Add and use
3367         STREQ definition.
3368
3369         syntax-check: fix violations and re-enable sc_prohibit_stddef_without_use.
3370         * cfg.mk (local-checks-to-fix): Remove
3371         sc_prohibit_stddef_without_use from list of disabled checks.
3372         * libltdl/argz.c, libltdl/lt__dirent.c, libltdl/slist.c: Remove
3373         spurious stddef.h #include lines.
3374
3375         syntax-check: fix violations and re-enable sc_prohibit_magic_number_exit.
3376         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_magic_number_exit
3377         from list of disabled checks.
3378         * ltmain.c: Removed unused file.
3379
3380         syntax-check: fix violations and re-enable sc_prohibit_have_config_h.
3381         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_have_config_h
3382         from list of disabled checks.
3383         * tests/f77demo/foo.h, tests/fcdemo/foo.h: Remove spurious
3384         HAVE_CONFIG_H guards for #include <config.h>.
3385
3386         syntax-check: fix violations and re-enable sc_prohibit_empty_lines_at_EOF.
3387         * cfg.mk (local-checks-to-fix): Remove
3388         sc_prohibit_empty_lines_at_EOF from list of disabled checks.
3389         * THANKS, libltdl/argz.c, libltdl/config/getopt.m4sh,
3390         tests/f77demo/README, tests/f77demo/cprogram.c,
3391         tests/f77demo/fprogram.f, tests/fcdemo/README,
3392         tests/fcdemo/cprogram.c, tests/libtoolize.at,
3393         tests/mdemo/README, tests/mdemo2/README, tests/pdemo-inst.test:
3394         Remove spurious empty lines from the end of these files.
3395
3396         syntax-check: fix violations and re-enable sc_prohibit_doubled_word.
3397         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_doubled_word
3398         from list of disabled checks.
3399         * build-aux/general.m4sh (func_quote_for_eval): Remove one of a
3400          pair of "and"s in a comment.
3401         * tests/lt_dladvise.at (hint_global): Remove one of a pair of
3402         consecutive "to"s split across lines in a comment.
3403
3404         syntax-check: fix violations and re-enable sc_prohibit_cvs_keyword.
3405         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_cvs_keyword
3406         from list of disabled checks.
3407         * tests/tagdemo/README: Remove spurious CVS keyword.
3408
3409         syntax-check: fix violations and re-enable sc_makefile_at_at_check.
3410         At some point we were supporting some undetermined `broken
3411         make', as evidenced by having carried the following code since
3412         2003:
3413           ## use @LIBLTDL@ because some broken makes do not accept
3414           ## macros in targets, we can only do this because our LIBLTDL
3415           ## does not contain $(top_builddir).
3416           @LIBLTDL@: $(top_distdir)/libtool \
3417           ...
3418         However, we've also had *many* cases of macros in targets for
3419         just as long, so most likely we never fully supported makes
3420         allegedly broken in this way.  As of this release, we explicitly
3421         no longer support make implementations that do not accept macros
3422         in targets.
3423         * cfg.mk (local-checks-to-fix): Remove sc_makefile_at_at_check
3424         from list of disabled checks.
3425         * configure.ac (order-only prerequisites): Test with the
3426         order-only pipe symbol in a macro.
3427         * Makefile.am, tests/mdemo/Makefile.am: Convert all @FOO@ to
3428         $(FOO).
3429
3430         syntax-check: fix violations and re-enable sc_makefile_TAB_only_indentation.
3431         * cfg.mk (local-checks-to-fix): Remove
3432         sc_makefile_TAB_only_indentation from list of disabled checks.
3433         * Makefile.am (libltdl/Makefile.am): Replace leading spaces with
3434         TABs.
3435         * libltdl/Makefile.am (libltdl_libltdl_la_SOURCES): Ditto.
3436
3437         syntax-check: fix violations and re-enable sc_m4_quote_check.
3438         * cfg.mk (local-checks-to-fix): Remove sc_m4_quote_check from
3439         list of disabled checks.
3440         * libltdl/m4/libtool.m4 (_LT_CHECK_OBJDIR): Quote LT_OBJDIR
3441         correctly.
3442
3443         syntax-check: fix violations and re-enable sc_file_system.
3444         * cfg.mk (local-checks-to-fix): Remove sc_file_system from list
3445         of disabled checks.
3446         (VC_LIST_ALWAYS_EXCLUDE_REGEX): Match mail directory correctly
3447         to avoid running its contents through syntax-check.
3448         * build-aux/ltmain.m4sh (func_mode_link): Use correct spelling
3449         for "file system".
3450         * libltdl/ltdl.c (try_dlopen): Ditto.
3451         * tests/dlloader-api.at: Ditto.
3452
3453         syntax-check: fix violations and re-enable sc_error_message_uppercase.
3454         * cfg.mk (local-checks-to-fix): Remove
3455         sc_error_message_uppercase from list of disabled checks.
3456         (exclude_file_name_regexp--sc_error_message_uppercase): Don't
3457         match cvsu, which is not our file to edit.
3458         * doc/libtool.texi: Use lowercase error message in example.
3459
3460         syntax-check: rationale for disabling sc_cast_of_x_alloc_return_value.
3461         * cfg.mk: Note that we support C++ compilation of libltdl, which
3462         in turn requires that *alloc return values be cast correctly.
3463
3464         syntax-check: fix violations and re-enable sc_cast_of_argument_to_free.
3465         * cfg.mk (local-checks-to-fix): Remove
3466         sc_cast_of_argument_to_free from list of disabled checks.
3467         * build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
3468         libltdl/lt__dirent.c: Casting argument to free is never
3469         necessary.
3470
3471         syntax-check: fix violations and re-enable sc_avoid_if_before_free.
3472         * cfg.mk (local-checks-to-fix): Remove sc_avoid_if_before_free
3473         from list of disabled checks.
3474         According to gnulib/doc/free.texi: "On old platforms such as
3475         SunOS4, @code{free (NULL)} fails.  However, since all such
3476         systems are so old as to no longer be considered ``reasonable
3477         portability targets,'' this module is no longer useful."
3478         * libltdl/libltdl/lt__alloc.h (FREE, MEMREASSIGN): Don't protect
3479         against freeing NULL bug on SunOS4.
3480
3481         syntax-check: skip sc_unmarked_diagnostics.
3482         * cfg.mk (local-checks-to-fix): Move sc_unmarked_diagnostics
3483         from here...
3484         (local-checks-to-skip): ...to here.
3485
3486         libtoolize: rename `libltdl/config' directory to standard `build-aux'.
3487         In addition to moving the autoconf auxiliary script directory
3488         into the place expected by GNU developers ($top_srcdir/build-aux)
3489         we also simplify libtoolize somewhat by having libltdl use
3490         whatever directory was specified by the parent project.  This is
3491         much more flexible, allows libltdl client projects to also use a
3492         single canonical `$top_srcdir/build-aux' auxiliary script
3493         directory, and maintains backward compatibility with existing
3494         projects that wish to continue using $ltdl_dir/config.
3495         * libltdl/config: Moved whole directory from here...
3496         * build-aux: ...to here.
3497         * libtoolize.m4sh (func_install_pkgaux_subproject): Remove.
3498         (func_install_pkgaux_parent): Remove.
3499         (func_install_pkgaux_files): Considerably simplified now that we
3500         have only a single auxiliary directory to worry about.
3501         (subproject_aux_dir): Remove.
3502         * bootstrap.conf (libtool_readme_release_package_substitutions):
3503         No need to substitute our old unusual aux_dir location into
3504         README-release any more.
3505         * cfg.mk (_build-aux): Now that we use the standard location for
3506         this directory, no need to set this variable either.
3507         * configure.ac (AC_INIT): git-version-gen has moved.
3508         (AC_CONFIG_AUX_DIR): Adjust.
3509         * Makefile.am (stamp-mk, auxexefiles, auxfiles)
3510         (install-data-local): Use build-aux instead of config.
3511         (libltdl/stamp-mk): Ditto.
3512         * libltdl/configure.ac, tests/cdemo/configure.ac,
3513         tests/demo/configure.ac, tests/depdemo/configure.ac,
3514         tests/f77demo/configure.ac, tests/fcdemo/configure.ac,
3515         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
3516         tests/pdemo/configure.ac, tests/tagdemo/configure.ac
3517         (AC_CONFIG_AUX_DIR): Ditto.
3518         * tests/defs.m4sh (aux_dir): Ditto.
3519         * tests/configure-iface.at, tests/getopt-m4sh.at,
3520         tests/libtoolize.at, tests/subproject.at, tests/testsuite.at:
3521         Ditto.
3522         * Makefile.am (ltdl_ac_aux_dir): Extract at build-time...
3523         * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that
3524         libtoolize can access it at runtime without requiring GNU M4 via
3525         the extract-trace script.
3526         (require_Makefile_am_filter): Use it to determine whether the
3527         aux_dir declared in the current (parent) project configure is
3528         compatible with the declarations in installed ltdl autotools
3529         source files.
3530         (require_configure_ac_filter): New function to perform similar
3531         checks and rewrite configure.ac during installation if necessary.
3532         * NEWS: Updated.
3533
3534         libtoolize: aux scripts go in ltdl dir when parent has no configure.
3535         When using libtoolize to install subproject libltdl into a
3536         parent project that does not use autotools, set the default
3537         directory for auxiliary scripts inside libltdl rather than
3538         littering the parent project with files it doesn't use.
3539         * libtoolize.m4sh (func_require_ac_aux_dir): In verbose mode,
3540         report results like other require_ funcs.
3541         (func_require_aux_dir): Put subproject auxiliary files into ltdl
3542         directory where libltdl/configure will be able to find
3543         `install-sh' and others.
3544
3545         libtoolize: simplify runtime by substituting pkgauxdir.
3546         * Makefile.am (configure_edit): Substitute pkgauxdir.
3547         * libtoolize.m4sh (func_install_pkgaux_subproject)
3548         (func_install_pkgaux_parent, extract_trace): Use it.
3549
3550         libtoolize: generate require_ltdl_relative_aux_dir definition.
3551         * libtoolize.m4sh (require_ltdl_relative_macro_dir): Change to
3552         be generated function...
3553         (require_ltdl_relative_aux_dir): ...so that we can easily
3554         generate this very similar function from the same code.
3555
3556         libtoolize: rename `libltdl/m4' directory to standard `m4'.
3557         In addition to moving the autoconf macro directory into the
3558         place expected by GNU developers ($top_srcdir/m4), we also
3559         simplify libtoolize somewhat by having libltdl use whatever
3560         directory was specified by the parent project.  This is much
3561         more flexible, allows libltdl client projects to also use a
3562         single canonical `$top_srcdir/m4' macro directory, and maintains
3563         backward compatibility with existing projects that wish to
3564         continue using $ltdl_dir/m4.
3565         * libltdl/m4: Moved to it's parent directory.
3566         * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT)
3567         (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust.
3568         * configure.ac (AC_CONFIG_MACRO_DIR): Adjust.
3569         * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The
3570         libtoolize script can pick up the project macro directory from
3571         ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing
3572         to regenerate configure for the sake of a different macro
3573         directory declared in the libltdl using client project.
3574         * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove.
3575         (func_install_pkgmacro_parent): Remove.
3576         (subproject_macro_dir): Remove.
3577         (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags)
3578         (require_ltdl_am_macro_dir): New functions, generated at runtime
3579         by adding libltdl/Makefile.am to the generation loop.
3580         (func_install_pkgmacro_files): Considerably simplified now that
3581         we have only a single macro directory to worry about.
3582         (require_ltdl_relative_macro_dir): New function. Calculate the
3583         relative path from $ltdl_dir to the parent project macro_dir.
3584         (require_Makefile_am_filter): Depending on $ltdl_mode, edit
3585         Makefile.am ACLOCAL_AMFLAGS to use the parent project macro
3586         directory if necessary.
3587         (require_aclocal_m4_filter): Make sure m4_includes point to the
3588         correct macro directory by editing the file as it is copied
3589         into the parent project.
3590         (func_install_pkgltdl_files): Use the filters.
3591         (func_check_macros): Remove various advice that no longer
3592         applies with an always shared macro directory.
3593         (func_require_ltdl_dir): Don't default ltdl_dir to subproject
3594         when `--ltdl' was not given.
3595         (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is
3596         not set.
3597         (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject
3598         mode with no other directory implied by AC_CONFIG_MACRO_DIR or
3599         ACLOCAL_AMFLAGS, otherwise m4 as before.
3600         * tests/libtoolize.at: Match new "creating file `Makefile.am'"
3601         messages correctly.
3602         (subproject ltdl with non-shared directories): This test no
3603         longer makes sense, so repurposed...
3604         (subproject ltdl with non-canonical macro dir): ...this, to
3605         ensure subproject ltdl continues to automatically share the
3606         parent macro directory.
3607         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
3608         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
3609         tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
3610         tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
3611         tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location
3612         of macro_dir.
3613         * NEWS: Updated.
3614
3615         libtoolize: rename `Makefile.inc' to standard `ltdl.mk'.
3616         * libltdl/Makefile.inc: Moved from here...
3617         * libltdl/ltdl.mk: ...to here.
3618         * Makefile.am, bootstrap.conf, tests/libtoolize.at,
3619         tests/nonrecursive.at: Adjust.
3620         * libtoolize.m4sh (func_install_pkgltdl_files): Set the
3621         destination file to `Makefile.inc' if grep finds an include for
3622         that name in a top-level Makefile.am.
3623         (func_check_macros): Print a deprecation warning if use of the
3624         old `Makefile.inc' convention is found.
3625         * tests/old-ltdl-iface.at: New test for renaming and warning
3626         correctly when `Makefile.inc' convention is still in use.
3627         * NEWS: Updated.
3628
3629         libtoolize: refactor ACLOCAL_AMFLAGS extraction.
3630         Another simple refactor to simplify following changesets.
3631         * libtoolize.m4sh (require_Makefile_am, require_aclocal_amflags)
3632         (require_am_macro_dir): Generate these functions at runtime.
3633
3634         libtoolize: rename require_makefile_am to require_Makefile_am.
3635         A simple refactoring to keep the next change self-contained.
3636         * libtoolize.m4sh (require_makefile_am): Renamed from this...
3637         (require_Makefile_am): ...to this.
3638
3639         libtoolize: simplify copying of files that are edited during install.
3640         * libltdl/Makefile.inc (EXTRA_DIST): Don't list autotools files
3641         that Automake automatically adds to a (subproject)
3642         distribution...
3643         * Makefile.am (EXTRA_DIST): ...although, our layout is a bit odd
3644         because we reuse libltdl/Makefile.inc in non-recursive mode in
3645         our own tree, so we do need to add those very same files here...
3646         * libtoolize.m4sh (require_Makefile_am_filter)
3647         (require_Makefile_inc_filter): ...all of which means we no
3648         longer need to manually remove those files at libtoolize time.
3649         These two new functions are factored out of...
3650         (func_fixup_Makefile): ...this old function, now removed.
3651         (func_copy): Add support for an optional sed script as the last
3652         argument to filter the content of a file as it is copied.
3653         (func_install_pkgltdl_files): Much simplified by $require_<foo>
3654         the relevant filter scripts and passing them to func_copy.
3655
3656         libtoolize: simplify file-copying and -linking call-graph.
3657         * libtoolize.m4sh (TAR): Remove.
3658         (func_copy_some_files, func_copy_cb): Remove.
3659         (func_copy): Refactor from all of the above, and simplify. No
3660         need to use $TAR to preserve timestamps when copying, since
3661         we've been running touch right afterwards anyway. Adjust all
3662         callers to use the new argument footprint.
3663         (func_serial_update, func_keyword_update): Delete any pre-
3664         existing destination file when used with `--force' before
3665         calling func_copy, now that the hardcoded special cases are not
3666         in there any more.
3667         (func_install_pkgmacro_subproject)
3668         (func_install_pkgaux_subproject): Use our own file loop -
3669         func_copy subsumes all the checks previously in
3670         func_copy_some_files, but operates on only one file at a time.
3671         (func_install_pkgltdl_files): Similarly, handle aclocal.m4 and
3672         configure special cases here, before calling func_copy.
3673         * tests/libtoolize.at: Make sure we match corrected "copying
3674         `configure.ac'" output.
3675
3676         maint: generate full and correct ChangeLog.
3677         * gnulib: Updated to pick up gitlog-to-changelog multi-author
3678         support.
3679         * gl/build-aux/gitlog-to-changelog.diff: Use gnulib-rejected
3680         patch for '(tiny change)' support.
3681         * Makefile.am (ChangeLog): Use gitlog-to-changelog --amend=F
3682         option.
3683         * libltdl/config/git-hooks/commit-msg: New commit message hook
3684         for git.
3685         * libltdl/config/git-log-fix: New file, with ChangeLog fixes.
3686         * HACKING (Using git): Update.
3687
3688 2011-11-16  Gary V. Vaughan  <gary@gnu.org>
3689
3690         options-parser: provide a saner pluggable API.
3691         It's much too easy to forget that the functions you hook into
3692         the option parser need to return unconsumed options in the
3693         variable `func_run_hooks_result'; better to follow the
3694         convention used in the rest of bootstrap and return results in a
3695         variable named after the function with `_result' appended.
3696         * libltdl/config/options-parser (func_run_hooks): implement this
3697         new API.
3698         (Option parsing): Update the example in the header comment for
3699         this section to reflect the changes.
3700         * bootstrap (bootstrap_options_prep, bootstrap_parse_options)
3701         (bootstrap_validate_options): Adjust.
3702         * bootstrap.conf (libtool_options_prep, libtool_parse_options)
3703         (libtool_validate_options): Ditto.
3704
3705         bootstrap: display accurate usage message.
3706         After splitting bootstrap up, we also lost bootstrap's usage
3707         message, and were incorrectly displaying a partial extract-trace
3708         message.
3709         * bootstrap (usage): Set appropriately.
3710
3711         bootstrap: accept --gnulib-srcdir=/path/to/gnulib again.
3712         During the split of bootstrap into options-parser and
3713         extract-trace, the generic long-option splitting code got lost.
3714         * libltdl/config/options-parser (func_parse_options): Add the
3715         code to split any long option separated by an equals from its
3716         optarg back in.
3717         Reported by Roumen Petrov.
3718
3719 2011-11-15  Gary V. Vaughan  <gary@gnu.org>
3720
3721         gnulib: update gnulib submodule.
3722         Among others, this fixes a bug in _build-aux expansion so that
3723         `make syntax-check' works again.
3724         * gnulib: Updated to today's master HEAD revision.
3725         * gl/top/maint.mk.diff: Remove. This patch has been applied
3726         upstream already.
3727
3728         libtoolize: remove NL2SP and initialisation.
3729         There's only a single use of NL2SP, and that is redundant.
3730         * libtoolize.m4sh (func_serial_update): Factor away use of
3731         NL2SP.
3732         (NL2SP, SP2NL): Remove initialisation.
3733
3734         bootstrap: remove consumed options from the list to be processed.
3735         Fix a bug where processed bootstrap options were not removed
3736         from the queue, and eventually flagged as unknown in the
3737         pluggable option parser driver.
3738         * bootstrap (bootstrap_parse_options)
3739         (bootstrap_validate_options): Follow the pluggable option parser
3740         API correctly, and set func_run_hooks_result to the list of
3741         remaining unconsumed options.
3742         Reported by Roumen Petrov.
3743
3744 2011-11-14  Gary V. Vaughan  <gary@gnu.org>
3745
3746         libtoolize: refactor $opt_quiet, func_echo and func_echo_once.
3747         Instead of long sequences checking for setting of $opt_quiet,
3748         followed by one or more func_echo variations, add and use a new
3749         function func_whisper - the complement of func_verbose.
3750         * libtoolize.m4sh (func_whisper): New function. Adjust all
3751         callers previously using `$opt_quiet || func_echo ...'.
3752         (func_whisper_once): Ditto, for `$opt_quiet || func_echo_once
3753         ...'.
3754         (func_whisper_hdr): New function, adjust all callers previously
3755         using `func_whisper_once ...; func_whisper ...'.
3756         (func_whisper_error_header): Ditto, but calling func_error.
3757         (func_echo_once): Remove.
3758
3759         libtoolize: update a bit-rotted comment.
3760         * libtoolize (func_copy_cb): Since this comment was written, the
3761         function has been changed to timestamp files as it copies.
3762         Update the comment to reflect that.
3763
3764         general.m4sh: relative path to the same directory is `.'.
3765         * general.m4sh (func_relative_path): We sometimes want to use
3766         the result of this function directly, rather than purely as a
3767         prefix, so we need to return `.' when both directories end up at
3768         the same location.
3769
3770         ltmain.sh: append relative path trailing slashes explicitly.
3771         In addition to being more idiomatic, and hence minimising
3772         suprises, seeing the slash written explicity when appending to
3773         the result of a relative path calculation is a lot more
3774         readable.
3775         * libltdl/config/general.m4sh (func_relative_path): Don't append
3776         an implicit trailing slash...
3777         * libltdl/config/ltmain.m4sh (func_mode_link): ...write it
3778         explicitly at the time of use.
3779
3780 2011-11-09  Gary V. Vaughan  <gary@gnu.org>
3781
3782         build: use pkgauxdir for local install and uninstall rules.
3783         * Makefile.am (pkgauxdir): Set it correctly.
3784         (uninstall-hook): Use it for pkgaux_scripts and
3785         pkgaux_data_files.
3786         (install-data-local): Ditto.
3787         Remove `config/' prefix from extract-trace and option-parser
3788         items.
3789
3790 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
3791
3792         install: correct a typo in pkgaux_files location.
3793         * Makefile.am (install-data-local): Install pkgaux_files
3794         directly from $(aux_dir) [./libltdl/config at the moment].
3795
3796         libtoolize: order pkgltdl_files to avoid reconfiguration.
3797         * Makefile.am (pkgltdl_files): aclocal.m4 depends on
3798         configure.ac, and will cause spurious reconfiguration of freshly
3799         `libtoolize --ltdl' tree if we don't ensure configure.ac is the
3800         older of these two files.
3801         * tests/libtoolize.at: Adjust expout order to match.
3802
3803         build: remove an over-exuberant $(srcdir) prefix.
3804         * Makefile.am (git_version_gen): No need for an extra $(srcdir)
3805         in the path when we always use after `cd $(srcdir).
3806
3807         libtoolize: massage installed auxiliary script list at make time.
3808         * Makefile.am (configure_edit): Rename pkgconfig_files
3809         substitution to pkgaux_files, and add pkgaux_install_files and
3810         pkgaux_parent_files substitutions for atlocal.
3811         (pkgauxdir): Where to install pkgaux_files.
3812         (auxfiles): Removed, and replaced by...
3813         (pkgaux_parent_files, pkgaux_install_files, pkgaux_data_files):
3814         ...these, which separate the files lists more logically for
3815         easier installation, and use by libtoolize.m4sh.
3816         (uninstall-hook): Adjust.
3817         (tests/atlocal): Adjust.
3818         * bootstrap.conf (libtool_link_libltdl_subdirs): Adjust.
3819         * libtoolize.m4sh (func_install_pkgconfig_files)
3820         (func_install_pkgconfig_subproject)
3821         (func_install_pkgconfig_parent, func_install_pkgconfig_files)
3822         (all_pkgconfig_files): Renamed to...
3823         (func_install_pkgaux_files, unc_install_pkgaux_subproject)
3824         (func_install_pkgaux_parent, func_install_pkgaux_files)
3825         (all_pkgaux_files): ...these, resp. Adjust all callers.
3826         (func_massage_pkgconfig_files): Removed.
3827         (pkgaux_files): List of all auxiliary scripts substituted from
3828         Makefile.
3829
3830         libtoolize: massage installed libltdl file list at make time.
3831         * libtoolize.m4sh (pkgltdldir, pkgdatadir): Put installable
3832         libltdl files in pkgdatadir. When testing, and _lt_pkgdatadir
3833         is set, adjust to look in libltdl subdirectory.
3834         (func_massage_pkgltdl_files): Removed function and only caller,
3835         because...
3836         (pkgltdl_files): ...we substitute the pre-massaged files
3837         directly...
3838         (func_install_pkgltdl_files): ...from here.
3839         Adjust installation of specially handled additional files.
3840         * Makefile.am (ltdldir): Location of libltdl files in source
3841         tree.
3842         (ltdldest, ltdldatafiles): Removed.
3843         (pkgltdl_files): New pre-massaged list of libltdl sources.
3844         (install-data-local, uninstall-hook): Use it.
3845         * tests/libtoolize.at: Reorder expected output to match actual
3846         libtoolize output.
3847
3848         libtoolize: massage installed macro list at make time.
3849         * libtoolize.m4sh (func_massage_aclocal_DATA): Removed function
3850         and only caller, because...
3851         (pkgmacro_files): ...we substitute the pre-massaged files
3852         directly...
3853         (func_install_pkgmacro_files): ...from here.
3854         * Makefile.am (pkgmacro_files): New pre-massaged list of aclocal
3855         macros used by func_install_pkgmacro_files.
3856         (configure_edit): Substitute pkgmacro_files instead of
3857         aclocalfiles.
3858
3859         libtoolize: use only space delimited file lists.
3860         We don't install any files with whitespace in their file name,
3861         so using colon delimited lists to make that possible was a
3862         premature optimisation and an unneeded complication.
3863         * libtoolize.m4sh (func_copy_some_files): Remove IFS twiddling,
3864         and just pull space delimited files in a for loop idiomatically.
3865         (func_massage_aclocal_DATA, func_install_pkgmacro_subproject)
3866         (func_install_pkgmacro_parent, func_install_pkgmacro_files)
3867         (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
3868         Append to file lists with space delimiter.
3869
3870         libtoolize: remove sed based configure scanning.
3871         * libtoolize (func_scan_files): Removed function and callers.
3872         (require_seen_ltdl, require_seen_libtool): Factor out remaining
3873         functionality of former sed based scanning.
3874         (func_check_macros): Adjust.
3875         * NEWS: Updated.
3876
3877         libtoolize: refactor ltdl_mode discovery.
3878         * libtoolize.m4sh (require_ac_ltdl_mode)
3879         (require_ac_ltdl_options, require_ltdl_mode): New functions
3880         factored out of func_scan_files for scanning and setting
3881         ltdl_mode and friends.
3882         (func_scan_files): Remove the factored out code.
3883         (func_install_pkgmacro_files, func_install_pkgltdl_files)
3884         (func_install_pkgconfig_files, func_check_macros): Adjust.
3885
3886         libtoolize: refactor ltdl_dir discovery.
3887         * libtoolize.m4sh (require_ac_ltdl_dir, require_ltdl_dir):
3888         New functions factored out of func_scan_files for scanning and
3889         setting ac_ltdl_dir and ltdl_dir resp.
3890         (func_scan_files): Remove the factored out code.
3891         (func_fixup_Makefile, func_serial_update_check)
3892         (func_install_pkgltdl_files, func_install_pkgconfig_subproject)
3893         (func_check_macros): Adjust.
3894
3895         libtoolize: refactor aux_dir discovery.
3896         * libtoolize.m4sh (require_ac_aux_dir, require_aux_dir): New
3897         functions factored out of func_scan_files for scanning and
3898         setting aux_dir and friends.
3899         (func_scan_files): Remove the factored out code to scan
3900         configure.ac with sed, and then set macro_dir appropriately.
3901         (func_install_pkgconfig_subproject, func_install_pkgconfig_parent)
3902         (func_install_pkgmacro_files, func_check_macros): Adjust.
3903
3904         libtoolize: install autoconf macros only if there is a $configure_ac.
3905         * libtoolize.m4sh (func_install_pkgmacro_files): If there is no
3906         $configure_ac in the parent project directory, and libtoolize is
3907         in subproject mode, then the parent project has no use for
3908         autoconf macros, so don't install them.
3909         * NEWS: Updated.
3910
3911         libtoolize: display aux files output header for non-autoconf parents.
3912         * libtoolize.m4sh (func_install_pkgconfig_subproject): When the
3913         parent project does not use Autoconf, be sure to display an
3914         output header before copying auxiliary files despite not being
3915         able to scan for AC_CONFIG_AUX_DIR arguments.
3916         * NEWS: Updated.
3917
3918         libtoolize: refactor macro_dir discovery around extract-trace script.
3919         * libtoolize.m4sh (func_extract_trace): Function to call
3920         $aux_dir/extract-trace.  The name and footprint are the same as
3921         the core function in the extract-trace script file so that we
3922         can choose to source that file when the option processing
3923         becomes compatible with ours.
3924         (require_ac_macro_dir, require_aclocal_amflags)
3925         (require_am_macro_dir, require_macro_dir, require_makefile_am):
3926         New functions factored out of func_scan_files for scanning and
3927         setting macro_dir and friends.
3928         (func_scan_files): Remove the factored out code to scan
3929         configure.ac with sed, and then set macro_dir appropriately.
3930         (func_serial_update_check, func_install_pkgmacro_subproject)
3931         (func_install_pkgmacro_parent, func_install_pkgmacro_files)
3932         (func_check_macros): Adjust.
3933         * tests/libtoolize.at (Subproject ltdl without GNU M4): New test
3934         to ensure `libtoolize --subproject' continues to work without a
3935         GNU M4 dependency.
3936         * NEWS: Updated.
3937
3938         libtoolize: refactor configure_ac discovery.
3939         Make a start on decomposing some of the giant functions at the
3940         heart of libtoolize into the much more flexible and manageable
3941         (albeit somewhat more verbose) model of self-organising
3942         $require_<foo> function pointers.
3943         * libtoolize.m4sh (require_configure_ac): New function factored
3944         out of func_scan_files for setting $configure_ac appropriately,
3945         implementation taken from extract-trace script.
3946         (func_autoconf_configure): And similarly for ensuring that a
3947         filename which matches something Autoconf would read also has
3948         content that appears to be destined for Autoconf processing.
3949         (func_scan_files): Simplified the factored out code to a single
3950         require_configure_ac call.
3951         (func_install_pkgconfig_files, func_check_macros): Ditto.
3952         (seen_autoconf): Removed.
3953
3954         bootstrap: split into reusable parts.
3955         * bootstrap: Bourne shell has no scoping, so be extremely
3956         careful with namespaces, functions in `^func_' and `^require_';
3957         private variables in `^_G_', and public variables all well
3958         documented by comments.
3959         * libltdl/config/extract-trace: New file, containing the minimum
3960         of code previously in bootstrap plus a little glue to make the
3961         GNU M4 based autotools tracing function (as opposed to the
3962         kludgy sed extraction currently used everywhere else) a
3963         standalone script that can be executed or sourced.
3964         * libltdl/config/options-parser: New file, containing the
3965         pluggable options parser code shared between the other two.
3966         * bootstrap.conf: Adjust.
3967         * Makefile.am (EXTRA_DIST): Be sure to distribute the new
3968         extract-trace and options-parser scripts.
3969         (install-data-local): And install them where libtoolize can find
3970         them.
3971
3972         tests: prefix absolute directory variables with 'abs_'.
3973         Avoid any possible confusion about the contests of thes
3974         variables compared to $aux_dir, $macro_dir and $src_dir in
3975         configure.ac, Makefile.am, libtoolize.m4sh and others.
3976         * tests/defs.m4sh (aux_dir, macro_dir, srcdir): Rename these...
3977         (abs_aux_dir, abs_macro_dir, abs_srcdir): ...to these resp.
3978         * tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
3979         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
3980         tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
3981         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
3982         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
3983         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
3984         tests/demo-pic-exec.test, tests/demo-pic-make.test,
3985         tests/demo-shared-exec.test, tests/demo-shared-inst.test,
3986         tests/demo-shared-make.test, tests/demo-shared-unst.test,
3987         tests/demo-static-exec.test, tests/demo-static-inst.test,
3988         tests/demo-static-make.test, tests/demo-static-unst.test,
3989         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
3990         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
3991         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
3992         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
3993         tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
3994         tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
3995         tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
3996         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
3997         tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
3998         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
3999         tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
4000         tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
4001         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
4002         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
4003         tests/sh.test, tests/tagdemo-shared-exec.test,
4004         tests/tagdemo-shared-make.test, tests/tagdemo-static-exec.test,
4005         tests/tagdemo-static-make.test, tests/tagdemo-undef-exec.test,
4006         tests/tagdemo-undef-make.test, tests/tagtrace.test: Adjust.
4007
4008         maint: calculate required mkinstalldirs calls during `make install'.
4009         * Makefile.am (install-data-local): Make sure all destination
4010         directories are in place before copying files there, without
4011         hardcoding them.
4012
4013         maint: substitute static directory names.
4014         By substituting just the directory name as passed to the macro,
4015         aux_dir can be used with or without $srcdir prefix, which is
4016         more flexible, and always means the same thing in each file,
4017         rather than sometimes being a directory name, sometimes relative
4018         to $top_srcdir.
4019         * configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR)
4020         (LT_CONFIG_LTDL_DIR): Don't force config.status substitutions
4021         with unexpanded shell variables.
4022         * Makefile.am, tests/defs.m4sh: Adjust.
4023
4024 2011-11-07  Peter Rosin  <peda@lysator.liu.se>
4025
4026         libtoolize: fix spelling nit.
4027         * libtoolize (M4SH_GETOPTS): Fix spelling nit.
4028
4029 2011-11-07  Gary V. Vaughan  <gary@gnu.org>
4030
4031         tests: fix parsing of configure output by pic_flag.at.
4032         Close http://debbugs.gnu.org/9962.
4033         * tests/pic_flag.at (LT_AT_CONFIGURE): Make sure to configure
4034         with --disable-silent-rules so that the full output parsed by
4035         the rest of the test is available.
4036         Reported by Roumen Petrov.
4037
4038         libtoolize: rename `--subproject' option, and make it work.
4039         * libtoolize (M4SH_GETOPTS): Remove `--standalone', which never
4040         worked, and add `--subproject' which sets ltdl_mode correctly.
4041
4042 2011-11-05  Gary V. Vaughan  <gary@gnu.org>
4043
4044         libtoolize: fix a scoping bug in func_aclocal_update_check.
4045         libtoolize.m4sh (func_aclocal_update_check): This body of this
4046         function used a global variable set by the outer loop of the
4047         caller. Fix to Use the function argument correctly.
4048
4049         maint: rename the debug shell command variable to `debug_cmd'.
4050         Not only does it make more sense, it also matches bootstrap and
4051         others.
4052         * libtoolize.m4sh, libltdl/config/ltmain.m4sh,
4053         libltdl/config/getopt.m4sh, tests/defs.m4sh (opt_debug): Rename
4054         to debug_cmd.
4055
4056         maint: dynamically strip unused scripts from libltdl Makefile.
4057         * configure.ac (pkgaux_scripts): Centrally maintain the complete
4058         list of aux scripts required to build libltdl, and which need to
4059         be installed by libtoolize --ltdl, and consequently need to be
4060         placed in $pkgdatadir by make install.
4061         * Makefile.am (libltdl/stamp.mk): Improved to strip the unused
4062         scripts not listed in pkgaux_scripts without the need for manual
4063         synchronisation.
4064         (auxexefiles): Removed. Replaced by new pkgaux_scripts
4065         substitution.
4066         (install-data-local): Adjust.
4067
4068         build: substitute paths into defs.m4sh instead of recalculating.
4069         * Makefile.am (configure_edit): Add substitutions for aux_dir,
4070         macro_dir and srcdir.
4071         * tests/defs.m4sh: Don't recalculate srcdir.
4072         (aux_dir, macro_dir, srcdir): Convert to absolute paths.
4073
4074         build: support AM_SILENT_RULES
4075         * configure.ac: Add AM_SILENT_RULES.
4076         * libltdl/configure.ac: Ditto, but only if defined.
4077         * Makefile.am (.version, ChangeLog, README, doc/notes.txt)
4078         (libtool, libtoolize, libtoolize.in, libltdl/Makefile.am)
4079         (libltdl/stamp-mk, m4/ltversion.m4, tests/atconfig, tests/defs)
4080         (tests/defs.in, tests/package.m4): Output an AM_SILENT_RULES-like
4081         GEN when V==0.
4082         * libltdl/Makfile.inc (libltdl/argz.h): Ditto.
4083
4084 2011-10-31  Gary V. Vaughan  <gary@gnu.org>
4085
4086         maint: add autobuild prerequisite only if autobuild.m4 is absent.
4087         * bootstrap (func_require_autobuild_buildreq): Skip if autobuild.m4
4088         is already present.
4089         * bootstrap.conf (require_autobuild_bulidreq): No need to set this
4090         specially any more.
4091
4092         maint: ensure bootstrap runs from dist tarball.
4093         * bootstrap (func_gnulib_tool_copy_file): When gnulib-tool is
4094         not available, check that there is a copy of the file from a
4095         previous run available before bailing out with a diagnostic.
4096         (func_install_gnulib_non_module_files): Don't diagnose missing
4097         files explicitly - func_gnulib_tool_copy_file takes care of it
4098         now.
4099         (func_require_checkout_only_file): In the diagnostic for
4100         not being in a source-controlled tree, note that `--force' must
4101         be used to rebootstrap.
4102         (func_require_gnulib_files_already_present): Removed.  All the
4103         necessary checks are correctly performed in
4104         func_gnulib_tool_copy_file withot resorting to heuristics.
4105         (func_require_gnulib_mk): Don't continue to try to access
4106         gnulib-cache.m4 after discovering we're running from a dist
4107         tarball.
4108         (func_require_dotgitmodules_parameters): Skip if .gitmodules
4109         file is missing and git binary is not available.
4110         * bootstrap.conf (checkout_only_file): Set to HACKING, which is
4111         a non-distributed file.
4112         (libtool_cleanup_empty_dirs): Don't print spurious errors when
4113         trying to delete gnulib-tool droppings, in case gnulib-tool is
4114         not available on this run.
4115
4116         tests: add a keyword `expensive' to very long running tests.
4117         * tests/cmdline_wrap.at, tests/stresstest.at (AT_KEYWORDS): Add
4118         `expensive'.
4119         * NEWS: Updated.
4120
4121         libtoolize: fix some long-standing sed substitution bugs
4122         * libtoolize.m4sh (func_fixup_Makefile): `\\\\\$' in a " quoted
4123         script that is evaluated twice before execution becomes a `\$',
4124         which sed interprets as a literal $.  The script will then delete
4125         any lines with a first non-whitespace character of `$'. Instead
4126         use `\\\\$' in single quotes, which sed eventually receives as
4127         `\\$' and correctly interprets as part of an instruction to
4128         delete otherwise empty lines ending with a `\'.
4129         Additionally the rest of the same sed script is no longer
4130         applied to comment lines to avoid munging the copyright header
4131         among others.
4132         * NEWS: Updated.
4133
4134 2011-10-27  Gary V. Vaughan  <gary@gnu.org>
4135
4136         maint: use gnulib's gitlog-to-changelog instead of a ChangeLog file.
4137         * ChangeLog: Removed.
4138         * HACKING (Editing 'ChangeLog'): Removed. Renumbered other sections to
4139         compensate.
4140         * bootstrap.conf (gnulib_modules): Add gitlog-to-changelog.
4141         * Makefile.am (ChangeLog): Generate the ChangeLog for 2011...
4142         (dist-hook): ...from the output of `git log' before rolling a
4143         distribution tarball.
4144
4145         maint: use gnulib's git-version-gen instead of mkstamp.
4146         * libltdl/config/mkstamp: File removed.
4147         * bootstrap.conf (gnulib_modules): Add git-version-gen.
4148         * configure.ac (AC_INIT, package_revision): Use git-version-gen to
4149         calculate version number.
4150         (TIMESTAMP): Removed.
4151         * libtoolize.m4sh, libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
4152         (TIMESTAMP): Ditto.
4153         * Makefile.am (TIMESTAMP): Ditto.
4154         (MKSTAMP): Renamed from this...
4155         (git_version_gen): ...to this. Set revision here.  An alpha is now a
4156         release with an odd micro relase number.
4157         (rebuild): Don't reset revision here.
4158         (build_scripts): Remove mkstamp, add git-version-gen.
4159         (EXTRA_DIST, BUILT_SOURCES): Add .version.
4160         (libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4, tests/package.m4):
4161         Don't depend on configure.ac or ChangeLog to determine when the
4162         version number has reved, use .version directly.
4163         (.version): Flush most recent configure calculated VERSION to disk.
4164         (dist-hook): Flush current VERSION to disk at dist time.
4165         (dotserial): Distributed file to cache the serial number for
4166         when git is not available to recalculate it when building from a
4167         release tarball.
4168         (dist-hook): Make sure .serial is created.
4169         (libltdl/config/ltversion.m4): Use .serial when it is present
4170         (in a dist tarball) or calculate with git otherwise (in a git
4171         working directory).
4172         (EXTRA_DIST): Add .serial file.
4173
4174         maint: use gnulib's maint.mk and support scripts release procedure.
4175         * Makefile.maint: Removed.
4176         * configure.ac (LASTRELEASE, lt_major, lt_minor, lt_micro, lt_alpha):
4177         All removed. Makefile.maint was the only client.
4178         * HACKING (Release Procedure): Removed.
4179         * bootstrap.conf (gnulib_modules): Add announce-gen,
4180         do-release-commit-and-tag, gendocs, gnu-web-doc-update, gnupload and
4181         readme-release.
4182         * cfg.mk (manual_title): Set it for web-manual rule.
4183         (announcement_Cc_): Release announcement email addresses.
4184         * Makefile.am (build_scripts): Add to EXTRA_DIST additional files
4185         imported from gnulib for maint.mk release procedure.
4186         * NEWS: Updated.
4187
4188 2011-10-24  Gary V. Vaughan  <gary@gnu.org>
4189
4190         tests: ensure VPATH autom4te search path can find autotests.
4191         * Makefile.am (tests/testsuite): Passing only $(srcdir) include path
4192         to autom4te is unable to find tests/package.m4, and passing only
4193         $(srcdir)/tests breaks VPATH build searches for TESTSUITE_AT files,
4194         which are relative to $(srcdir)... so we pass both!
4195         * NEWS: Updated.
4196         Reported by Bob Friesenhahn.
4197
4198 2011-10-24  Karl Berry  <karl@gnu.org>
4199
4200         doc: modernize libtool.texi.
4201         * libtool.texi (@copying): Use this instead of @ifnottex; format for
4202         Texinfo; eliminate obsolete paragraph about TeX; use @insertcopying
4203         instead of duplicating text.
4204         (@syncodeindex): Move all to the Texinfo header, where they belong.
4205         (@dircategory): Use "Software development" instead of "GNU programming
4206         tools", for consistency; and align individual entries to avoid
4207         multiple lines; and move to after the copyright message.
4208
4209 2011-10-24  Gary V. Vaughan  <gary@gnu.org>
4210
4211         maint: don't make autobuild a hard bootstrap requirement.
4212         * bootstrap.conf (require_autobuild_buildreq): Reset this to ':' so
4213         that bootstrap doesn't auto-add autobuild to $buildreq.
4214
4215 2011-10-23  Gary V. Vaughan  <gary@gnu.org>
4216
4217         maint: use gnulib's maintainer-makefile module.
4218         * bootstrap.conf (gnulib_modules): Add maintainer-makefile.
4219         (gnulib_tool_options): Add --avoid=dummy now that we have a real
4220         module to import.
4221         * cfg.mk: New file. Customize maint.mk for Libtool.
4222         * Makefile.am (EXTRA_DIST): Add GNUmakefile, cfg.mk and maint.mk.
4223
4224         maint: use gnulib's canonical fdl.texi.
4225         * doc/fdl.texi: Removed.
4226         * bootstrap.conf (gnulib_non_module_files): Add fdl.texi.
4227
4228         maint: use gnulib's canonical COPYING files.
4229         * COPYING, libltdl/COPYING.LIB: Removed.
4230         * bootstrap.conf (gnulib_non_module_files): Add COPYING.
4231         (libtool_add_libltdl_copying): New func_gnulib_tool hook
4232         function to copy the canonical LGPL2 COPYING file from gnulib at
4233         bootstrap.
4234
4235         maint: use gnulib's (pending saner) bootstrap script.
4236         * bootstrap: Replaced with gnulib script.
4237         * bootstrap.conf: New file with Libtool specific bootstrap
4238         configuration.
4239         * Makefile.am (EXTRA_DIST): Add bootstrap.conf.
4240
4241         maint: add gnulib submodule.
4242         * configure.ac (GL_INIT, GL_EARLY): Initialise gnulib, and expand
4243         its configure time checks.
4244         * .gitmodules (gnulib): New file with configuration for our
4245         gnulib git submodule.
4246
4247 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
4248
4249         maint: tidy, sort and consolidate .gitignore files.
4250         The `gnulib-tool' and gnulib `bootstrap' scripts  maintain
4251         `.gitignore' files in asciibetical order, so reorder them now
4252         to avoid spurious patches later.
4253
4254         Take advantage of putting recursive file ignore matches into
4255         `$top_srcdir/.gitignore' and remove repetitions from other
4256         `.gitignore' files.
4257
4258 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
4259
4260         maint: don't run help2man on programs not-yet-built.
4261         * Makefile.am (doc/libtool.1, doc/libtoolize.1): Added a
4262         comment about why the dependencies here have to be a mite
4263         bizarre.
4264
4265         tests: remove unused `aux_dir' variable from `getopt-m4sh.test'.
4266         * tests/getopt-m4sh.at (aux_dir): Remove unused variable.
4267
4268         tests: DRYing out `tests/sh.test'.
4269         * Makefile.am (libtool_m4): Canonical location of libtool.m4 file.
4270         (lt_aclocal_m4_deps): Use it.
4271
4272         maint: pass directory declarations in configure.ac into Makefile.
4273         * configure.ac (AC_CONFIG_AUX_DIR, LT_CONFIG_LTDL_DIR)
4274         (AC_CONFIG_MACRO_DIR): Append code to these functions to
4275         capture and propagate their directory arguments to Makefile.
4276         * Makefile.am (aux_dir, ltdl_dir, macro_dir): Remove declarations.
4277         * bootstrap (my_sed_trace): Also capture LT_CONFIG_LTDL_DIR into
4278         `$ltdl_dir'.
4279         <Makefile>: Output the extracted values of `aux_dir', `ltdl_dir'
4280         and `macro_dir' at the top of the quick'n'dirty bootstrap
4281         Makefile.
4282
4283         maint: factor out ltmain.sh variable deletion.
4284         * Makefile.am (ltmain_sh_edit): Expand upon bootstrap edit by
4285         adding the extra line to delete boilerplate variable settings
4286         from libltdl/config/general.m4sh that don't apply here.
4287         (libltdl/config/ltmain.sh): Use it.
4288
4289         maint: DRYing out `Makefile.am' file paths.
4290         * Makefile.am (aux_dir, macro_dir): Include `$(srcdir)' in
4291         declaration. Adjust all references.
4292         (doc_dir, ltdl_dir, m4sh_dir, tests_dir): New single location
4293         to hold directory paths, all including `$(srcdir)', to reduce
4294         typing.
4295         (LT_M4SH): Use `$m4sh_dir' as include directory.
4296         (defs): This one is for a file in the build-tree, so no
4297         leading `$(srcdir)'.
4298
4299         CLEANUP: fix error from pushing too far up the branch.
4300         * Makefile.am (install-data-local): Undo character transposition
4301         from too early push of untested v2.4-17-gaf74d58.
4302         * ChangeLog (2010-09-16): Remove spurious entry.
4303
4304         maint: use macro_dir consistently in all files.
4305         * Makefile.am: Replace all uses of m4dir with macrodir to
4306         match AC_CONFIG_MACRO_DIR.
4307         * libltdl/config/libtoolize.m4sh: Replace all uses of macrodir
4308         with macro_dir.
4309         * tests/defs.m4sh, tests/sh.test: Likewise.
4310
4311         maint: use aux_dir consistently in all files.
4312         * Makefile.am, Makefile.maint: Replace all uses of auxdir
4313         with aux_dir to match AC_CONFIG_AUX_DIR.
4314         * libltdl/config/libtoolize.m4sh: Likewise.
4315         * tests/defs.m4sh, tests/getopt-m4sh.at: Likewise.
4316
4317         Makefile: try to be robust against shell meta-chars in filenames.
4318         * Makefile.am: In each rule body, unless a make variable needs
4319         to be seen as multiple words by the shell (for word-splitting
4320         loops, or because it contains several commands), quote it. Use
4321         single quotes unless the shell needs to perform variable inter-
4322         polation, in which case use double quotes.
4323
4324 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
4325
4326         maint: let make employ user's `SED' setting.
4327         * Makefile.am: Replace hard-coded `sed' with `$(SED)' through-
4328         out.
4329
4330         maint: simplify and improve safety of bootstrap process.
4331         * Makefile.am (bootstrap_files): List files that need to be
4332         generated at bootstrap time before `./configure && make' can
4333         work.  It turns out that this is considerably fewer files than we
4334         had thought necessary previously.
4335         (bootstrap-deps-prep): Ensure minimum set of required substitution
4336         variables are non-empty.
4337         (bootstrap-deps): Depend on `bootstrap' files.
4338         * bootstrap (Generate bootstrap dependencies): Now that
4339         `Makefile.am' is entirely responsible for rebuilding files at
4340         bootstrap time, we need only specify the new `bootstrap-deps'
4341         target, and supply values for the substitutions checked by
4342         `bootstrap-deps-prep'.
4343         * configure.ac (AC_CONFIG_SRCDIR): `libtoolize.in' is not here yet
4344         right after running `bootstrap'.  So rely on the presence of
4345         `libltdl/config/libtoolize.m4sh', which is always there.
4346
4347         build: eliminate superfluous temporary files from `Makefile.am'.
4348         * Makefile.am (CLEANFILES): Remove temporary file entries.
4349         (libtoolize.in, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
4350         (tests/defs, tests/testsuite): Factor away temporary files.
4351
4352         build: eliminate `ltmain.in' and `libtoolize.in' intermediate files.
4353         * Makefile.am (libltdl/config/ltmain.sh, libtoolize.in): Pipe
4354         the output of `$(LT_M4SH)' directly into `$(bootstrap_edit)' to
4355         avoid use of superfluous intermediate file.
4356
4357         build: don't hardcode repeated long paths in Makefile rules.
4358         According to the DRY principle, scattering several copies of
4359         something across a file or project leads to pain.  Let's not
4360         do that!
4361         * Makefile.am (Makefile_in, Makefile_inc, defs_in, defs_m4sh),
4362         (libtoolize_in, ltmain_m4sh, ltversion_in): New variables to
4363         hold the location of important files and targets.
4364         (EXTRA_DIST): Add the distributed ones by variable.
4365         (libtoolize, libltdl/Makefile.am, libltdl/m4/ltversion.m4)
4366         (libltdl/config/ltmain.sh, libltdl/stamp-mk, tests/defs)
4367         (tests/defs.in): Use the new variables to reduce noise and
4368         repetition.
4369
4370         build: make better use of automatic variables in `Makefile.am'.
4371         * Makefile.am (libtoolize, libtoolize.in, libltdl/Makefile.am)
4372         (libltdl/config/mkstamp, libltdl/config/ltmain.m4sh)
4373         (libltdl/m4/ltversion.m4, tests/testsuite, tests/defs.in):
4374         Make better use of automatic variables.
4375
4376         build: name temporary files in `Makefile.am' consistently.
4377         Sadly, we still have to jump through hoops for MICROS~1's very
4378         old, very broken 8.3 naming convention, so we have to be careful
4379         to be unique in the first 8 letters, and not to use two periods
4380         in a filename, otherwise we could use the much more elegent
4381         `temporary files use "$@T"' idiom:
4382         * Makefile.am (libltdl/m4/ltversion.m4): Rename temporary file
4383         to `ltversion.tmp'.
4384         (libltdl/config/ltmain.sh): Rename temporary file to
4385         `libltdl/config/ltmain.tmp'.
4386         (libtoolize): Rename temporary file to `libtoolize.tmp'.
4387         (tests/defs): Rename temporary file to `tests/defs.tmp'
4388         (tests/testsuite): Rename temporary file to `tests/testsuite.tmp'.
4389         (CLEANFILES): Append temporary files as we create rules that
4390         use them.
4391
4392         build: factor Makefile.am `m4sh' invocations to LT_M4SH.
4393         * Makefile.am (LT_M4SH): Now that all directories are listed as
4394         fully qualified paths, the search path argument to M4SH is always
4395         the same, so factor it out into a variable.  Adjust all callers.
4396
4397         build: avoid unnecessary directory changes in Makefile rules.
4398         * Makefile.am (doc/notes.txt, libltdl/m4/ltversion.m4,
4399         (libltdl/config/ltmain.m4sh, libtoolize.in, libltdl/Makefile.am)
4400         (libltdl/config/mkstamp, tests/testsuite, tests/defs.in): Avoid
4401         unnecessary `cd' commands by using fully qualified paths to files
4402         outside of current directory.
4403
4404         build: compare `revision' rather than `correctver' in Makefile.am.
4405         * Makefile.am (rebuild): Set the shell variable `revision' rather
4406         than `correctver' for clarity of purpose.
4407         (bootstrap_edit, libltdl/config/ltmain.sh): Adjust.
4408         (libltdl/m4/ltversion.m4): Likewise, and alse, instead of munging
4409         the serial number comment line with set, extract `macro_version'
4410         from this file, and compare it directly with `revision'.
4411         (libtool): Likewise for `package_revision'.
4412
4413         build: avoid spurious bootstrap_edit call.
4414         * Makefile.am (tests/package.m4): @FOO@ substitutions have already
4415         been made by the time Makefile.am has been transformed into Makefile,
4416         so don't try to rerun the substitutions manually with
4417         $(bootstrap_edit) after the fact.
4418
4419 2011-10-18  Gary V. Vaughan  <gary@gnu.org>
4420
4421         Post-release administrivia.
4422         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4423         numbers.
4424         * NEWS: Add header line for next release.
4425
4426         Release 2.4.2.
4427         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4428         numbers.
4429         * NEWS: Update version number.
4430
4431 2011-10-17  Gary V. Vaughan  <gary@gnu.org>
4432
4433         Replace leading spaces with tabs.
4434         * libltdl/m4/libtool.m4, libltdl/config/ltmain.m4sh: Replace leading
4435         spaces in source code with tabs to match surrounding code.
4436         Reported by Peter Rosin.
4437
4438         Make a note to use gnu/linux for version_type.
4439         * libltdl/m4/libtool.m4 (version_type): Add a comment to change
4440         version_type setting from 'linux' to 'gnu/linux' during the next
4441         destabilising code refactoring.
4442         * libltdl/config/ltmain.m4sh: ditto.
4443         Requested by Richard Stallman.
4444
4445 2011-10-04  Bart Van Assche  <bvanassche@acm.org>
4446
4447         Typo fix - change func_apped into func_append
4448         * libltdl/config/ltmain.m4sh: Fix typo.
4449
4450 2011-10-02  Xin LI  <d@delphij.net>
4451
4452         Avoid problems when FreeBSD goes to version 10.
4453         * libltdl/m4/libtool.m4: Remove mentions of freebsd1. Use dots
4454         for FreeBSD 2 and 3 detection to avoid future problems
4455         * libltdl/m4/ltmain.m4sh: ditto.
4456
4457 2011-09-25  Cristophe Jarry  <christophe.jarry@ouvaton.org>
4458
4459         Avoid mentioning "Linux", use "GNU/Linux", if appropriate.
4460         * TODO: Don't use bare "Linux".
4461         * doc/libtool.texi: ditto.
4462         * doc/notes.texi: ditto.
4463         * libltdl/README: ditto.
4464         * libltdl/m4/libtool.m4: ditto.
4465
4466 2011-09-02  Peter O'Gorman  <peter@pogma.com>
4467
4468         Add flag to inhibit warnings.
4469         * libltdl/config/ltmain.m4sh: Add --no-warn, --no-warning flags.
4470         Reported by John David Anglin.
4471
4472 2011-04-10  Kurt Roeckx  <kurt@roeckx.be>
4473
4474         tagdemo: do not rely on picking up symbols from indirect deps.
4475         * tests/tagdemo/Makefile.am: Link to all libraries that the
4476         demo application uses.
4477
4478 2011-04-10  Svante Signell  <srs@kth.se>  (tiny change)
4479
4480         Set shlibpath_overrides_runpath for the Hurd.
4481         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [gnu]
4482         <shlibpath_overrides_runpath>: Set to no.
4483         * THANKS: Update.
4484
4485 2011-03-22  Justin Lecher  <jlec@gentoo.org>  (tiny change)
4486             Rhys Ulerich  <rhys.ulerich@gmail.com>
4487
4488         Don't filter OPENMP flags (-openmp & -fopenmp) from linker lines.
4489         If -fopenmp if passed to gcc during linking, it will take care to
4490         add all necessary libs to link correctly for openmp support.
4491         Currently libtool filters those flags, similar as it was the
4492         case with the threading flags. This change handles the situation
4493         for the openmp support similar as before the thread support
4494         was fixed.
4495           http://lists.gnu.org/archive/html/bug-libtool/2010-12/msg00009.html
4496           http://lists.gnu.org/archive/html/bug-libtool/2011-03/msg00014.html
4497         * libltdl/config/ltmain.m4sh (func_mode_link): Treat OpenMP
4498         flags like pthreads flags.
4499
4500 2011-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4501
4502         libtoolize: detect -I<dir> (without space) in ACLOCAL_AMFLAGS.
4503         * libtoolize.m4sh (func_scan_files): Also accept -I<dir>
4504         (without intervening space) in ACLOCAL_AMFLAGS.
4505         * THANKS: Update.
4506         Report from Jan Engelhardt.
4507
4508 2011-03-05  Peter O'Gorman  <peter@pogma.com>
4509
4510         On Mac OS X try .dylib as well as .so with lt_dlopenext
4511         * libltdl/m4/ltdl.m4: Define extra extension if module extension
4512         differs from shared lib extension.
4513         * libltdl/ltdl.c: Use it.
4514         * tests/darwin.at: Test it.
4515         * NEWS: Announce it.
4516         Reported by Hans Aberg, Michael Ellis, and others.
4517
4518 2011-02-14  Peter O'Gorman  <peter@pogma.com>
4519
4520         Install ltmain.sh without execute bit set.
4521         * Makefile.am: change install rule for ltmain.sh
4522         Reported by Křištof Želechovski.
4523
4524 2011-02-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4525
4526         docs: fix copyright years in PDF version of the manual.
4527         * doc/libtool.texi: Fix copyright years.
4528
4529 2011-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4530
4531         fix typo in ChangeLog
4532
4533 2011-02-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4534
4535         Fix LD setting for 64-bit Solaris 2/x86.
4536         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [*-*-solaris*):
4537         Determine GNU ld options for 64-bit Solaris 2/x86.  Detect gld
4538         2.21 _sol2 emulations.
4539
4540 2011-01-27  Peter O'Gorman  <peter@pogma.com>
4541
4542         Don't loop through wrapper script arguments unnecessarily.
4543         * libltdl/m4/ltmain.m4sh: Check that argv contains " --lt-"
4544         before looping to remove wrapper script targetted arguments.
4545         Performance regression reported by Dan McGee.
4546
4547 2011-01-20  Gerald Pfeifer  <gerald@pfeifer.com>  (tiny change)
4548
4549         Remove support for FreeBSD 1.x.
4550         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
4551         (_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which
4552         soon would incorrectly match FreeBSD 10.0.
4553         * NEWS, THANKS: Update.
4554
4555 2011-01-19  Peter O'Gorman  <peter@pogma.com>
4556
4557         Don't let verbose linker messages influence test results.
4558         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Ignore
4559         stderr during tests for -flag unless it contains "flag".
4560         * tests/darwin.at: Add test.
4561         Reported by Jeremy Huddleston and also by David Fang.
4562
4563 2011-01-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>  (tiny change)
4564
4565         Fix relink mode to use absolute path if hardcode_minus_L.
4566         * libltdl/config/ltmain.m4sh (func_mode_link): Use absolute path
4567         when hardcoding with -L.
4568
4569 2011-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4570
4571         Fix $wl setting for Solaris Studio 12.2 f90 on GNU/Linux.
4572         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]
4573         <lt_prog_compiler_wl>: Set to '-Qoption ld ' if we
4574         detect Sun Fortran version 8.4 or newer.
4575         Report by Terry Dontje.
4576
4577 2011-01-07  Peter Rosin  <peda@lysator.liu.se>
4578
4579         Convert file name to toolchain format when blessing archives.
4580         * libltdl/config/ltmain.m4sh (func_mode_install): When executing
4581         old_postinstall_cmds and old_archive_cmds, convert $oldlib to a
4582         format appropriate for the tool and provide that in $tool_oldlib.
4583         Also use $tool_oldlib when stripping old libraries.
4584         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Use $tool_oldlib
4585         as argument to $RANLIB.
4586         * THANKS: Update.
4587         Report by Dan McMahill.
4588
4589 2011-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4590
4591         Bump copyright years.
4592         * ChangeLog.2010: New, rotated from ...
4593         * ChangeLog: ... here.
4594         * Makefile.am (EXTRA_DIST): Add ChangeLog.2010.
4595         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
4596         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
4597         * libtoolize.m4sh: Likewise.
4598         * doc/libtool.texi: Likewise.
4599
4600 2010-12-20  Ian Lance Taylor  <iant@google.com>
4601
4602         * libltdl/m4/libtool.m4 (LT_LANG): Add Go.
4603         (AC_PROG_GO): Provide.
4604         (_LT_SYS_HIDDEN_LIBDEPS): Add Go case.
4605         (_LT_LANG_GO_CONFIG): Define.
4606         (LT_PROG_GO): Define.
4607         (AC_PROG_GO): Define if not defined.
4608         * libltdl/config/ltmain.m4sh: Match *.go.
4609         * doc/libtool.texi (LT_INIT): Mention Go.
4610         (Tags): Mention Go.
4611         * configure.ac: Enable Go.
4612         * NEWS: Update.
4613
4614 2010-12-20  Brice De Bruyne  <bricedb@gmail.com>  (tiny change)
4615
4616         Also turn off -fuse-linker-plugin for postdep_objects computation.
4617         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Add
4618         -fno-use-linker-plugin to temporary compile flags if necessary,
4619         to fix C++ postdep_objects setting with -flto
4620         -fuse-linker-plugin.
4621         * NEWS, THANKS: Update.
4622
4623 2010-12-20  KO Myung-Hun  <komh@chollian.net>  (tiny change)
4624
4625         Set command line length limit for OS/2.
4626         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [os2]
4627         <lt_cv_sys_max_cmd_len>: Set to 8192 to avoid long test.
4628
4629 2010-12-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4630
4631         Fix PIC flags with mpif77 using ifort on GNU/Linux.
4632         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
4633         Match Intel compiler also using $CC -V output, to avoid false
4634         negatives with compiler drivers like mpif77.
4635         Report by Christian Rössel.
4636
4637 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4638
4639         Fix PIC flags with MPI wrappers using Portland on GNU/Linux.
4640         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
4641         Match Portland compilers also using $CC -V output, to avoid
4642         false negatives with MPI compiler drivers.
4643         Report by Christian Rössel.
4644
4645         * libltdl/m4/libtool.m4 (_LT_SETUP): Fix quoting for
4646         PATH_SEPARATOR.
4647
4648 2010-12-15  KO Myung-Hun  <komh@chollian.net>  (tiny change)
4649             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4650
4651         Fix PATH_SEPARATOR handling for OS/2.
4652         * Makefile.am (update_mans): Quote $(PATH_SEPARATOR).
4653         * libltdl/m4/libtool.m4 (_LT_SETUP): Add _LT_DECL for
4654         PATH_SEPARATOR.
4655         * libltdl/config/general.m4sh: Use PATH_SEPARATOR when computing
4656         $progpath.
4657         * THANKS: Update.
4658
4659 2010-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4660
4661         Fix nvcc PIC setting on darwin.
4662         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
4663         <lt_prog_compiler_pic>: Prepend -Xcompiler to nonempty variable
4664         setting rather than hard-coding -Xcompiler -fPIC, for darwin.
4665         * NEWS, THANKS: Update.
4666         Report by Paweł Daniluk.
4667
4668         Honor $AUTOCONF, $AUTOMAKE in --help output.
4669         * libltdl/config/getopt.m4sh (func_help): Use $AUTOCONF and
4670         $AUTOMAKE if set, for --version outout.
4671
4672         docs: Libtool configuration diagram.
4673         * doc/libtool.texi (Integrating libtool): Add diagrams
4674         explaining the dependencies between Libtool files.
4675         Suggestion by Ethan Mallove.
4676
4677 2010-11-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4678
4679         Eliminate hardcode_libdir_flag_spec_ld tag variable.
4680         * libltdl/config/ltmain.m4sh (func_mode_link): Set $wl to empty
4681         if $LD is used for creating shared libraries.  Do not use
4682         hardcode_libdir_flag_spec_ld any more.
4683         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
4684         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG, _LT_SYS_DYNAMIC_LINKER)
4685         <hardcode_libdir_flag_spec_ld>: Remove all instances of the tag
4686         variable.
4687         (_LT_LINKER_SHLIBS) [linux, xlf] <hardcode_libdir_flag_spec>:
4688         Set variable, including ${wl}.  Fixes hardcoding in programs
4689         created by XL Fortran on GNU/Linux.
4690         * NEWS, THANKS: Update.
4691         Report by Paul H. Hargrove.
4692
4693         Rebuild menus in the manual.
4694         * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
4695         Thanks to Ian Lance Taylor for the suggestion.
4696
4697 2010-11-07  Ollie Wild  <aaw@google.com>
4698
4699         Modify --with-pic to support per-package configurations.
4700         * libltdl/m4/libtool.m4:  Modify --with-pic to accept a list of
4701         package names.  Modelled off --enable-shared.
4702         * tests/with-pic.at: New test.
4703         * Makefile.am (TESTSUITE_AT): Add tests/with-pic.at.
4704         * doc/libtool.texi (LT_INIT): Enhance documentation of
4705         --with-pic configure flag.
4706         * NEWS (New features): Mention that --with-pic now accepts a
4707         comma-separated list of package names.
4708
4709 2010-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4710
4711         Fix cwrapper test failure with --disable-static.
4712         * tests/cwrapper.at (cwrapper and installed shared libraries):
4713         Compile program source without libtool, so we can be sure a
4714         non-PIC object will be created.
4715
4716 2010-11-01  Peter Rosin  <peda@lysator.liu.se>
4717
4718         docs: Windows DLLs and headers.
4719         * doc/libtool.texi (Platform quirks): Add new subsection
4720         'Windows DLLs'.
4721
4722         * doc/libtool.texi (Platform quirks): Fix typo.
4723
4724 2010-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4725
4726         docs: mention shell requirement for libtool script.
4727         * doc/libtool.texi (Invoking libtool): Document that the shell
4728         used to invoke libtool needs to be the same used to configure
4729         it.
4730         * THANKS: Update.
4731         Report by Markus Duft.
4732
4733 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
4734
4735         libtool: remove redundant unsubstituted shell var defaults.
4736         * Makefile.am (libltdl/config/ltmain.sh): Boilerplate code from
4737         libltdl/config/general.m4 sets some default shell variables
4738         designed to be substituted by `$(configure_edit)'.  Actually,
4739         `libtool' uses the language tag values for those variables, and
4740         `ltmain.m4sh' is not passed through `$(configure_edit)', so they
4741         are just noise.  Edit them out at bootstrap time.
4742
4743 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
4744
4745         maint: don't leak developer GREP, SED etc into distribution file.
4746         * Makefile.am: Having rearranged the file, now apply the actual
4747         changes to follow-up.
4748         (edit): Split into two parts...
4749         (bootstrap_edit): ...substitutions that should happen at bootstrap
4750         time...
4751         (configure_edit): ...and substitutions that should not happen until
4752         configure time.
4753         * Makefile.am (libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh)
4754         (libtoolize.in, tests/package.m4): Use bootstrap_edit.
4755         (libtoolize, tests/defs): Use configure_edit.
4756         * HACKING (Release Procedure): Remove the note to workaround the
4757         bug fixed by this changeset.
4758         * NEWS (Bug fixes): Mention that this bug is now fixed.
4759         Reported by Joerg Sonnenberger.
4760
4761         maint: rearrange Makefile.am in preparation for a follow-up patch.
4762         * Makefile.am (Libtool scripts.): Move this section below the
4763         `Bootstrap.' section...
4764         (libtoolize.in): ...except this one which is generated at
4765         bootstrap time, and was added into the `Bootstrap.' section.
4766         (Libltdl.): Move this section below the `Libtool scripts.'
4767         section.
4768
4769 2010-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4770
4771         Fix linking from only convenience archives with gfortran on Darwin.
4772         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Update
4773         macro comment header.
4774         [darwin, F77, FC] <compiler_needs_object>: Set to yes if
4775         whole_archive_flag_spec is nonempty.  Fixes convenience.at test
4776         suite failures with gfortran 4.2 on Darwin.
4777         * THANKS: Update.
4778         Report by Paul Laight.
4779
4780         Fix bindir check logic, and relax non-bindir case for AIX.
4781         * tests/bindir.at (bindir install tests): Rewrite checks for
4782         place of the installed shared library in two separate tests,
4783         depending on whether -bindir is supposed to have an effect or
4784         not.  In the positive case, make the test stricter so that we
4785         reject libraries in $libdir.  In the negative case, do not
4786         require a major version number in the $libdir file name, for AIX
4787         without runtimelinking.  If tmpdir creation fails, skip the
4788         test.  Use fewer bindir directory names for testing, to speed
4789         up the test.  Also mention MSVC style DLL name in comment.
4790         Report by Peter Rosin.
4791
4792         tests: remove unneeded 'bindir compile check' test.
4793         * tests/bindir.at (bindir compile check): Remove.
4794
4795 2010-10-14  Peter Rosin  <peda@lysator.liu.se>
4796
4797         tests: fix $EXEEXT typo.
4798         * tests/depdemo-relink.test (func_restore_files): Use $EXEEXT
4799         instead of $EXEXT.
4800
4801 2010-10-12  Simon Josefsson  <simon@josefsson.org>
4802             Matěj Týč <matej.tyc@gmail.com>
4803             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4804
4805         docs: improve description of -no-undefined.
4806         * doc/libtool.texi (Link mode): Fix -no-undefined description.
4807         (Inter-library dependencies): Use Windows not AIX as example
4808         system.  Clarify need for symbol resolution at library creation
4809         time.
4810
4811 2010-10-09  Paolo Bonzini  <bonzini@gnu.org>
4812
4813         Add missing sysroot resolution.
4814         * libltdl/config/ltmain.m4sh (func_mode_link): Resolve sysroot
4815         when fetching the install directory of dependent libraries.
4816         Reported by Lionel Landwerlin <llandwerlin@gmail.com>,
4817         patch by Khem Raj <raj.khem@gmail.com>.
4818         * THANKS: Reorder entries, add Khem and Lionel.
4819
4820 2010-10-07  Roumen Petrov  <bugtrack@roumenpetrov.info>
4821
4822         Add test case for 69e77671 (cwrapper PATH manipulation order)
4823         * tests/cwrapper.at: Add new test 'cwrapper and installed shared
4824         libraries.'
4825
4826 2010-10-04  Peter Rosin  <peda@lysator.liu.se>
4827
4828         cwrapper: split long lines when dumping the wrapper script.
4829         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): If
4830         the wrapper script contains long lines, split them for
4831         readability and to conform with C standards.
4832         * tests/cwrapper.at (cwrapper string length): New test, making
4833         sure we don't regress.
4834
4835         msvc: handle symbols from different files independently.
4836         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
4837         <dumpbin, lt_cv_sys_global_symbol_pipe>: Make all sections
4838         viable for symbol extraction again when the symbols from a new
4839         file starts.  Fixes tests/tagdemo-make.test for MSVC 10.
4840         * tests/dumpbin-symbols.at: New test, making sure we don't
4841         regress.
4842         * Makefile.am (TESTSUITE_AT): Update.
4843
4844 2010-09-27  Peter Rosin  <peda@lysator.liu.se>
4845
4846         tests: check if sys_lib_search_path_spec works on MSVC.
4847         * tests/search-path.at (sys_lib_search_path on w32): New test,
4848         making sure v2.2.10-207-g09142ea doesn't regress.
4849
4850         Skip need_lib_prefix.at on systems without lib prefix on libraries.
4851         * tests/need_lib_prefix.at [MSVC, OS/2]: Skip this test on
4852         systems that do not have libraries prefixed with lib.
4853
4854         tests: clean up importing and exporting on w32.
4855         Makes the touched tests pass for MSVC when DLLs are built.
4856         * tests/demo/Makefile.am, tests/pdemo/Makefile.am: Define
4857         BUILDING_LIBHELLO when building libhello.la.
4858         * tests/demo/foo.h, tests/pdemo/foo.h (nothing) <MSVC>: Export
4859         variable when building the libhello dll and import when using
4860         libhello.  For GCC and non-w32, and when building a static
4861         libhello, leave as an ordinary extern.
4862         * tests/pdemo/foo.h [Cygwin]: Remove unneeded and "dead" export
4863         and import logic (LIBFOO_DLL is always undefined).
4864         * tests/pdemo/longer_file_name_foo.c,
4865         tests/pdemo/longer_file_name_foo2.c (_LIBFOO_COMPILATION_): Not
4866         useful before, even less so now.  Removed.
4867         * tests/depdemo/l1/Makefile.am: Define BUILDING_LIBL1 when
4868         building libl1.la.
4869         * tests/depdemo/l2/Makefile.am: Define BUILDING_LIBL2 when
4870         building libl2.la.
4871         * tests/depdemo/l3/Makefile.am: Define BUILDING_LIBL3 when
4872         building libl3.la.
4873         * tests/depdemo/l4/Makefile.am: Define BUILDING_LIBL4 when
4874         building libl4.la.
4875         * tests/depdemo/l1/l1.h, tests/depdemo/l2/l2.h,
4876         tests/depdemo/l3/l3.h, tests/depdemo/l4/l4.h <MSVC>: Export
4877         variables when building the associated library dll and import
4878         when using the library.  For GCC and non-w32, and when building
4879         static libraries, leave as an ordinary extern.
4880
4881 2010-09-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4882
4883         docs: do not refer to Libtool version with dlopen functionality.
4884         * doc/libtool.texi (Dlopened modules): Remove broken reference
4885         to what should have been Libtool 0.9g.
4886         Report by Roumen Petrov.
4887
4888 2010-09-23  Peter Rosin  <peda@lysator.liu.se>
4889
4890         msvc: don't try to export import descriptors.
4891         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]
4892         [pw32, cegcc] <cl*, exclude_expsyms>: Don't export symbols in
4893         import libraries related to describing what dll(s) the import
4894         library is importing. Fixes problem in tests/demo-make.test
4895         and some other tests.
4896
4897 2010-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4898
4899         Fix regression in command-line length computation.
4900         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Use `env echo' rather
4901         than possibly-undefined func_fallback_echo, to ensure we fork
4902         and exec for this test.
4903         * NEWS: Update.
4904         Regression introduced in v2.2.6-39-g9c3d4d8.
4905
4906 2010-09-22  Gary V. Vaughan  <gary@gnu.org>
4907
4908         Post-release administrivia.
4909         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4910         numbers to 2.4.1a.
4911         * NEWS: Add header line for next release.
4912
4913         Release 2.4.
4914         * libltdl/Makefile.inc (LTDL_VERSION_INFO): We've added the
4915         static libprefix interface, so new version-info is C+1:0:R+1.
4916         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4917         numbers.
4918         * NEWS: Update version number.
4919
4920         manual: web-manual index.html clashes with @node Index.
4921         * doc/libtool.texi (Index): Renamed to `Combined Index'.
4922
4923         tests: ISO C++ forbids declaration of 'v1' with no type.
4924         * tests/lt_dlexit.at (lt_dlexit unloading libs): Added an
4925         explicit int type to declaration of 'v1' to prevent compilation
4926         failure with C++.
4927
4928 2010-09-22  Peter Rosin  <peda@lysator.liu.se>
4929
4930         tests: reloadable objects do not work on MSVC, SKIP test.
4931         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
4932         [cygwin, mingw, pw32, cegcc] <cl*, reload_cmds>: Indicate that
4933         reloadable objects do not work.
4934         * tests/duplicate_conv.at: Skip last test if reloadable
4935         objects do not work.
4936         * doc/libtool.texi (libtool script contents) <reload_cmds>:
4937         Document how to indicate that reloadable objects do not work.
4938
4939 2010-09-21  Peter Rosin  <peda@lysator.liu.se>
4940
4941         msvc: eliminate spaces in the library search path.
4942         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
4943         <cl*, sys_lib_search_path_spec>: The LIB path variable telling
4944         where MSVC looks for libraries is likely to contain directory
4945         names with spaces.  Convert those directory names to the short
4946         8.3 DOS form (i.e. without spaces) when storing them in
4947         sys_lib_search_path_spec, as that is a space separated variable.
4948
4949 2010-09-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4950
4951         Revert to per-language libpath computation on AIX.
4952         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Accept
4953         tagname argument.  Use global cache variable lt_cv_aix_libpath
4954         to override per-language tag variables for the libpath value.
4955         Fix the sed script to remove trailing space.
4956         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Pass tag argument to
4957         _LT_SYS_MODULE_PATH_AIX.
4958         Tracked down and reported by Rainer Tammer.
4959
4960 2010-09-21  Gary V. Vaughan  <gary@gnu.org>
4961
4962         maint: edit-readme-alpha shouldn't try to re-edit during dist.
4963         * libltdl/config/edit-readme-alpha: If README is non-writable
4964         assume that it is being run from distcheck, and skip the edit
4965         with a warning (to help diagnose cases where the heuristic is
4966         not correct).  However, if README has already been edited to
4967         the alpha text, quietly skip without an error message.
4968
4969 2010-09-20  Eric Blake  <eblake@redhat.com>
4970
4971         maint: drop autobuild requirement
4972         * HACKING: Update.
4973
4974         build: ship autobuild.m4, to reduce bootstrap requirement
4975         * libltdl/m4/.gitignore: Drop autobuild.m4.
4976         * libltdl/m4/autobuild.m4: New file, copied from autobuild.
4977         * configure.ac (AB_INIT): Unconditionally call it.
4978
4979 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
4980             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4981
4982         libltdl: Make sure preloaded symbols are declared extern "C".
4983         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Move the
4984         declaration of lt__PROGRAM__LTX_preloaded_symbols to global
4985         scope and make sure it has "C" linkage.  Makes exceptions.at
4986         succeed on MSVC.
4987
4988 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
4989
4990         tests: __declspec (dll{ex,im}port) in tests/exceptions.at
4991         * tests/exceptions.at (common.h, module.h, lib.h) [w32]: Use
4992         __declspec (dllimport) and __declspec (dllexport) instead of
4993         the less portable __attribute__ ((dllimport)) and
4994         __attribute__ ((dllexport)).  Makes the test compile on MSVC.
4995
4996 2010-09-19  Peter Rosin  <peda@lysator.liu.se>
4997
4998         tests: Import items from liba1 for MSVC.
4999         * tests/lt_dlexit.at (b1.c) [MSVC]: Import function f1 and
5000         variable v1 from liba1 when using them from modb1.  Makes the
5001         test pass on MSVC.
5002
5003 2010-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5004
5005         tests: avoid distcheck failure with --disable-ltdl-install.
5006         * tests/ltdl-libdir.at (libdir of installed modules): Skip if
5007         $LIBLTDL does not exist.
5008
5009 2010-09-18  Gary V. Vaughan  <gary@gnu.org>
5010
5011         maint: use sed instead of maintaining 2 README files.
5012         * README.alpha: Deleted.  It was mostly identical to README.
5013         * libltdl/config/edit-readme-alpha: New script to edit the
5014         contents of README in the dist tree prior to tarring up.
5015         * Makefile.am (dist-hook): Run it before rolling alpha release
5016         tarball.
5017
5018         maint: improve README's `Obtaining the Latest Sources'.
5019         * README (Obtaining the Latest Sources): Add instructions for
5020         obtaining stable, alpha and nightly snapshot tarballs.
5021         * README.alpha (Obtaining the Latest Sources): Adjust to match.
5022
5023         maint: reformat README `The Test Suites' for consistency.
5024         * README (The Test Suites): Reformatted for consistency.
5025         * README.alpha (The Test Suites): Adjust to match.
5026
5027         maint: improve `Reporting Bugs' in README and README.alpha.
5028         * README (Reporting Bugs): Rewritten to a more complete and
5029         concise guide to providing a good bug report.
5030         * README.alpha (Reporting Bugs): Adjust to match.
5031
5032         maint: consolidate Introductions of README and README.alpha.
5033         * README (Introduction): Rewritten to a more logical order for
5034         first time users, incorporating some additional text that was
5035         previously only in README.alpha.
5036         * README.alpha (Introduction): Adjust to match.
5037
5038         maint: copy the Version Numbering section into README.alpha.
5039         * README.alpha (Version Numbering): No less useful for users
5040         of alpha releases.  Copied from README.
5041
5042 2010-09-17  Peter Rosin  <peda@lysator.liu.se>
5043
5044         tests: actually detect missing 'test' in 'if "$foo" = ...'.
5045         * tests/sh.test: Remove extra backslash in regex.
5046
5047         Copy over DLL_EXPORT handling from C to C++ for non-GCC on w32.
5048         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [mingw, cygwin, os2]
5049         [pw32, cegcc]: Copy over the DLL_EXPORT handling from C to C++.
5050
5051 2010-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5052
5053         LTO: consistently accept -fwhopr* and -flto* for GCC.
5054         * libltdl/config/ltmain.m4sh (func_mode_link): Accept -fwhopr*.
5055         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Also match
5056         -flto*.
5057
5058 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
5059
5060         Fix order of PATH manipulation in cwrapper and shwrapper
5061         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main): Call
5062         lt_update_exe_path before lt_update_lib_path, to ensure that the
5063         temporary rpath values (which include the OBJDIRs of uninstalled
5064         libtool libraries) precede installation and final -rpath directories.
5065         (func_emit_wrapper): Prepend $dllsearchpath to PATH before prepending
5066         $temp_rpath to $shlibpath_var; similar rationale as above.
5067         Reported by Jon Turney <jon.turney@dronecode.org.uk>
5068
5069 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
5070
5071         Document libtool variable to_host_file_cmd.
5072         * doc/libtool.texi (libtool script contents:to_host_file_cmd):
5073         Document variable.
5074         (libtool script contents:to_tool_file_cmd): Prefer `build platform'
5075         to `build system'; Ditto `host platform'.
5076
5077 2010-09-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
5078
5079         Fix sh.test failure introduced in 72064249
5080         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid poor
5081         syntax.
5082
5083 2010-09-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5084
5085         tests: avoid localization failure due to unstable compiler messages.
5086         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT):
5087         Attempt to normalize temporary file names in error messages.
5088         Fixes 'localized compiler messages' test failure on Darwin when
5089         creating fat (multi-ABI) libraries.
5090
5091 2010-09-13  Peter Rosin  <peda@lysator.liu.se>
5092
5093         Prefer $NM @file when the toolchain isn't native to $build.
5094         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid calculating
5095         the command line length and take the @file branch *if* the file
5096         names needs to be converted for the toolchain and the @file
5097         branch works.  Fixes problems in stresstest.at when doing a cross
5098         from Cygwin to MinGW using MinGW native tools (a.k.a. a "faked"
5099         cross), and for the specific case of MSVC on Cygwin it makes the
5100         test pass.
5101
5102 2010-09-15  Gary V. Vaughan  <gary@gnu.org>
5103
5104         maint: improve README instructions for fetching latest version.
5105         * README, README-alpha (Obtaining the Latest Sources): New
5106         section, describing use of savannah repositories and bootstrap.
5107         * README.alpha (Reporting Bugs): Remove git instructions in
5108         favour of a reference to the new `Obtaining the Latest Sources'
5109         section.
5110
5111 2010-09-14  Eric Blake  <eblake@redhat.com>
5112
5113         maint: ship .xz, not .lzma
5114         * configure.ac (AM_INIT_AUTOMAKE): Prefer better file format.
5115         * Makefile.maint (git-release, git-dist, prev-tarball)
5116         (new-tarball, diffs): Use correct extension.
5117         * HACKING: Update instructions.
5118         * .gitignore: Ignore .xz files.
5119
5120 2010-09-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5121
5122         doc: avoid long lines in input and output, indexing fixes.
5123         * doc/libtool.texi (Linking libraries)
5124         (Module loaders for libltdl): Manually line-wrap examples, to
5125         avoid long lines.
5126         (Libltdl interface, User defined module data)
5127         (Module loaders for libltdl): Wrap long @deftypefun input lines
5128         using trailing '@'.  Use @deftypefun rather than @deftp where
5129         appropriate, and add spaces in @deftypefun lines to fix the
5130         index entries generated from these lines.
5131         (Cheap tricks): Use @smallexample rather than @example, to avoid
5132         long lines.
5133
5134         docs: @file and @option markup fixes.
5135         * doc/libtool.texi (Creating object files, Linking libraries)
5136         (Linking executables, Link mode, Finish mode, Autoconf macros)
5137         (Using Automake, Inter-library dependencies, Dlpreopening)
5138         (Linking with dlopened modules, Finding the dlname)
5139         (Libltdl interface, Test descriptions, Multiple dependencies):
5140         Add @option where needed, replace @samp with @file as
5141         appropriate.
5142
5143 2010-09-12  Peter Rosin  <peda@lysator.liu.se>
5144
5145         * .gitignore: Ignore *.obj files for MSVC (and w32 in general).
5146
5147         Adjust to moved auxiliary files and add compile.
5148         * HACKING (Maintenance Notes): Adjust to moved files.  Add the
5149         compile script.
5150         * Makefile.maint (fetch): Also fetch the compile script.
5151
5152 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5153
5154         tests: avoid empty AT_DATA contents, for zsh.
5155         * tests/libtoolize.at (libtoolize macro serial update)
5156         (libtoolize config files serial update, LIBTOOLIZE_OPTIONS):
5157         Do not create empty files with AT_DATA, the latter is documented
5158         to require a final newline.  Fixes testsuite failures with zsh
5159         4.3.10.
5160
5161 2010-09-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
5162
5163         When assigning $linklib value, honor [-all]-static[-libtool-libs]
5164
5165         * libltdl/config/ltmain.m4sh (func_mode_link): When prefer_static_libs
5166         and static library exists, ensure old_library name is used as $linklib.
5167         Fixes failure on mingw when both static and shared libraries are
5168         present.
5169
5170 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5171
5172         tests: work around zsh use of $options variable.
5173         * tests/getopt-m4sh.at: Rename $options to $opts, the former is
5174         special for zsh 4.3.10.
5175
5176         Fix AC_NO_EXECUTABLES test failure on IRIX 6.5.
5177         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix]: Cache result
5178         of link check for -Wl,-exported_symbol.
5179         * tests/no-executables.at (AC_NO_EXECUTABLES): Set
5180         lt_cv_irix_exported_symbol, to avoid link check.
5181
5182 2010-09-12  Jürgen Reuter  <juergen.reuter@physik.uni-freiburg.de>  (tiny change)
5183             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5184
5185         Initial support for the NAG Fortran compiler on GNU/Linux.
5186         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <nagfor>:
5187         New set of entries, for NAG Fortran 5.1 and 5.2.
5188         * NEWS: Update.
5189
5190 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5191
5192         Fix getopt.m4sh to require Autoconf 2.62 or newer.
5193         * libltdl/config/getopt.m4sh (m4_version_prereq): Require 2.62,
5194         not 2.61.
5195
5196 2010-09-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
5197
5198         Correct typo: $sharedlib_from_linklib_cmd missing '_cmd'
5199
5200         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Fix obvious
5201         typo, $sharedlib_from_linklib_cmd missing '_cmd'.
5202
5203 2010-09-10  Peter Rosin  <peda@lysator.liu.se>
5204
5205         Convert file name to toolchain format when invoking $NM.
5206         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
5207         (func_win32_libid, func_cygming_gnu_implib_p)
5208         (func_cygming_ms_implib_p): When using the name lister to find
5209         symbols in files, convert the file names to a format appropriate
5210         for the tool. Fixes testsuite issues in mdemo-static-make.test
5211         and mdemo-make.test when doing a cross from Cygwin/Wine to MinGW
5212         using MinGW native tools (a.k.a. a "faked" cross).
5213
5214 2010-09-09  Peter Rosin  <peda@lysator.liu.se>
5215
5216         Fix dependency tracking for MSYS/MinGW.
5217         * libltdl/config/ltmain.m4sh (func_to_tool_file): Add lazy
5218         argument which allows the user to specify conversions that are
5219         not desired.
5220         (func_mode_compile): Don't convert source files on MSYS, as
5221         MSYS does it for us. This fixes a regression introduced by
5222         "Use func_to_tool_file instead of fix_srcfile_path".
5223         Reported by Charles Wilson.
5224
5225 2010-09-08  Peter Rosin  <peda@lysator.liu.se>
5226
5227         Mention adjustment of naming of MSVC import libraries in NEWS.
5228         * NEWS: Mention the change in import library naming on MSVC.
5229
5230 2010-09-07  Peter Rosin  <peda@lysator.liu.se>
5231
5232         Adjust naming of MSVC import libraries.
5233         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
5234         [pw32, cegcc] <cl*, library_names_spec>: Adjust naming of the
5235         import library from foo-<major-version>.lib to foo.dll.lib, to
5236         avoid clashes with the static library for unversioned libraries.
5237         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin, pw32]
5238         [cegcc] <cl*, archive_expsym_cmds>: Explicitely name the import
5239         library to match the above.
5240
5241         Fixup texi typo in previous.
5242         * doc/libtool.texi (libtool script content) <postlink_cmds>:
5243         Add missing 'code' command.
5244
5245         Convert POSIX file names to toolchain format for MSVC
5246         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
5247         [cygwin, mingw, pw32, cegcc] <cl*, postlink_cmds>: Make
5248         sure the -outputresource: file name for the manifest tool is
5249         in w32 format.
5250         <cl*, archive_expsym_cmds>: Likewise for the MSVC command file
5251         containing the exports and the output file name.
5252         * libltdl/config/ltmain.m4sh (func_mode_link): Precalculate the
5253         toolchain format of the output_objdir file name and store it in
5254         the tool_output_objdir variable. Also replace any occurrence of
5255         @TOOL_OUTPUT@ in postlink_cmds with the toolchain version of the
5256         @OUTPUT@ content.
5257         * doc/libtool.texi (libtool script content): Update description
5258         of postlink_cmds to mention @TOOL_OUTPUT@.
5259
5260 2010-09-06  Peter Rosin  <peda@lysator.liu.se>
5261
5262         Use func_to_tool_file instead of fix_srcfile_path.
5263         * libltdl/config/ltmain.m4sh (func_mode_compile): Replace the
5264         fix_srcfile_path hook with a call to func_to_tool_file.
5265         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin,mingw,pw32]
5266         [cegcc]: Drop fix_srcfile_path.
5267         * doc/libtool.texi (libtool script contents): Likewise.
5268         * NEWS: Mention that fix_srcfile_path has been replaced.
5269
5270         Convert file names to toolchain format in $NM and $AR @files.
5271         * libltdl/config/ltmain.m4sh (func_mode_link): When listing
5272         symbols and when creating archives using command files (or
5273         response files), make sure that both the name of the command
5274         file and the content are made up of file names in a format
5275         appropriate for the tool. Fixes stresstest.at on MSYS when
5276         run with low command line length.
5277
5278         Convert file names to toolchain format when linking.
5279         * libltdl/config/ltmain.m4sh (func_mode_link): When exporting
5280         symbols and when linking using command files (or response
5281         files), make sure that both the name of the command file and
5282         the content are made up of file names in a format appropriate
5283         for the tool. Fixes problems in stresstest.at on MSYS when run
5284         with low command line length.
5285
5286         Add file name conversion from $build to toolchain.
5287         * configure.ac: Ensure to_tool_file_cmd is available to Makefile.
5288         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): Add
5289         cache variable lt_cv_to_tool_file_cmd that describes how to
5290         convert file names from $build to toolchain format.
5291         * libltdl/config/ltmain.m4sh (func_to_tool_file): New function
5292         that utilizes the above.
5293         * Makefile.am: Ensure to_tool_file_cmd is included in
5294         TEST_ENVIRONMENT so that it is passed to (old testsuite) tests.
5295         * testsuite.at: Ensure to_tool_file_cmd is passed as a variable
5296         setting on the configure line for (new testsuite) tests.
5297         * doc/libtool.texi (libtool script content): Update with
5298         to_tool_file_cmd description.
5299         (Cygwin to MinGW Cross): Update to mention lt_cv_to_tool_file_cmd.
5300
5301 2010-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5302
5303         tests: avoid spurious test failure due to library mode on HP-UX.
5304         * tests/help.at (debug tracing): Use $lt_INSTALL not cp for
5305         install mode, the latter will not overwrite an existing library
5306         with mode 555.
5307
5308 2010-09-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
5309
5310         Path conversion documentation
5311         * doc/libtool.texi (Platform quirks): Add new subsections
5312         'Cross compiling' and 'File name conversion'.
5313
5314 2010-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5315
5316         tests: avoid spurious pic_flag test failure on HP-UX 10.20.
5317         * tests/pic_flag.at (override pic_flag at configure time):
5318         Match HP-UX 10.20 cc warning about unknown options, to skip
5319         the test.
5320
5321         tests: fix localization test for GCC on HP-UX 11.00.
5322         * tests/localization.at (localized compiler messages): Be sure
5323         to switch the locale only for the actual compiler commands, so
5324         we don't pick up warnings from helper tools such as diff which
5325         may not have the locale installed.
5326
5327         Avoid leaking make flags into testsuite results.
5328         * tests/defs.m4sh: Unset MFLAGS, MAKEFLAGS, MAKELEVEL, __MKLVL__
5329         and MAKE_JOBS_FIFO.
5330         * tests/testsuite.at: Likewise.
5331         Fixes warnings in test logs when the user uses 'make -jN check'
5332         and inner $MAKE invocations can't connect to the job server.
5333         Fixes spurious failures of configure-iface.at and of
5334         demo-noinst-link tests with BSD and Tru64 make if the user uses
5335         'make -k', as the exit status of the latter is not reliable.
5336
5337 2010-09-01  Gary V. Vaughan  <gary@gnu.org>
5338
5339         Remove announce-gen.m4sh and mailnotify.m4sh.
5340         * libltdl/config/announce-gen.m4sh: Removed.  This script has
5341         no apparent connection to libtool functionality, and mostly
5342         duplicates the better maintained gnulib announce-gen script.
5343         * libltdl/config/mailnotify.sh: Removed. This script was used
5344         by only clcommit.m4sh and announce-gen.m4sh, both of which are
5345         now removed too.
5346         * Makefile.maint (announce-gen, libltdl/config/mailnotify):
5347         Targets removed.
5348         * bootstrap: Remove the mailnotify regeneration warning.
5349         * HACKING (Release Procedure): Remove references to
5350         announce-gen.
5351         (Alpha release note template, Full release note template):
5352         Reinstated from before announce-gen was introduced.
5353
5354         Remove clcommit.m4sh.
5355         * clcommit.m4sh: Removed. This script was written to help keep
5356         ChangeLog and commit messages in sync when committing to CVS,
5357         and is an anachronism now that Libtool uses git.
5358         * Makefile.maint (commit): Target removed.
5359         * bootstrap: Don't generate commit.
5360         * HACKING (Release Procedure): Adjusted.
5361
5362 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
5363
5364         archive-in-archive.at passes with Microsoft lib.
5365         * tests/archive-in-archive.at: Tighten test to check that the desired
5366         object files are indeed part of the archive. Microsoft lib still
5367         passes, so remove the expected failure for that case.
5368
5369         Dump archiver output to the log when testing @file support.
5370         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout to config.log
5371         when testing for @file support.
5372         Suggested by Ralf Wildenhues.
5373
5374         Silence archiver output when testing @file support.
5375         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout and stderr
5376         to the bit bucket when testing for @file support.
5377
5378 2010-08-31  Gary V. Vaughan  <gary@gnu.org>
5379
5380         Remove double `Generated from foo.m4sh' lines.
5381         We now require a modern Autoconf to bootstrap libtool, which
5382         will add the `Generated by ...' boiler-plate automatically,
5383         so we can remove the hand-rolled @configure_input@
5384         substitutions we had been doing:
5385         * clcommit.m4sh, libtoolize.m4sh, tests/defs.sh,
5386         libltdl/config/announce-gen.m4sh, libltdl/config/ltmain.m4sh,
5387         libltdl/config/mailnotify.m4sh: Remove @configure_input@.
5388         * Makefile.am (edit): Remove configure_input substitution.
5389         (libtoolize, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
5390         (tests/defs): Don't set `$input' shell variable.
5391         * Makefile.maint (announce_gen, libltdl/config/mailnotify)
5392         (commit): Likewise.
5393
5394 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
5395
5396         Extract the archive name from the .la file and use $AR (not ar).
5397         * Makefile.am: Pass AR through to the testsuite.
5398         * tests/archive-in-archive.at: Bump copyright year. Extract archive
5399         name from the .la file instead of hardcoding the name, and allow
5400         different archivers. Also clarify that the tested functionality is
5401         currently broken.
5402
5403 2010-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5404
5405         tests: skip -Wall -Werror with Tru64 cc in cwrapper test.
5406         * tests/cwrapper.at (cwrapper for uninstalled executables):
5407         Use a link test rather than a compile test to flesh out unknown
5408         compiler flags starting with -W; Tru64/OSF1 cc will happily
5409         accept `-Wall -Werror' as indication to pass flags on to
5410         subprocesses.
5411
5412         tests: avoid getopt-m4sh failures when autom4te is not available.
5413         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP):
5414         Check $M4SH --version, skip on failure.
5415
5416         tests: mark 'syntax of .la files' as XFAIL, expose failure.
5417         * tests/lalib-syntax.at (syntax of .la files): Assert that the
5418         string returned by lt_dlerror after a failure is non-NULL, so
5419         the failure shows up on systems other than Solaris.  Mark test
5420         as expected to fail.
5421         Suggested by Bob Friesenhahn.
5422
5423 2010-08-30  Eric Blake  <eblake@redhat.com>
5424
5425         Simplify recent configure quoting portability workaround.
5426         * configure.ac: Simplify setting of timestamp_string.
5427
5428 2010-08-30  Charles Wilson  <libtool@cwilson.fastmail.fm>
5429
5430         Update path conversion warning messages
5431         * libltdl/config/ltmain.m4sh (func_convert_file_check): Update
5432         comments and warning message.
5433         (func_convert_path_check): Update warning message.
5434
5435 2010-08-29  Peter Rosin  <peda@lysator.liu.se>
5436
5437         Fix typo when renaming path conversion functions.
5438         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
5439         variable setting on the configure line for (new testsuite) tests.
5440
5441 2010-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5442
5443         Support GCC LTO on GNU/Linux.
5444         * libltdl/config/ltmain.m4sh (func_mode_link): Allow through
5445         flags matching -O*, -flto*, -fwhopr, -fuse-linker-plugin.
5446         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Drop symbols
5447         starting with __gnu_lto.
5448         (_LT_LINKER_SHLIBS) [linux] <archive_cmds, archive_expsyms_cmds>:
5449         Add $pic_flag for GCC.
5450         (_LT_LANG_CXX_CONFIG) [linux] <archive_cmds, archive_expsyms_cmds>:
5451         Likewise.
5452         (_LT_SYS_HIDDEN_LIBDEPS): Ignore files matching *.lto.o.
5453         * NEWS: Update.
5454
5455         Disable GCC LTO for verbose library extraction.
5456         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Temporarily
5457         append -fno-lto or -fno-whopr to CFLAGS if CC or CFLAGS (which
5458         are substituted with the per-language variables here) contain
5459         -flto or match -fwhopr*, respectively.
5460
5461         Save and restore CFLAGS properly inside libtool.m4 macros.
5462         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Use different
5463         temporary variables for saved and restored values of $LIBS,
5464         $CFLAGS, to avoid overlap with the *_CONFIG macros.
5465         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
5466         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Also save and restore
5467         $CFLAGS, and override it with per-language flags, so that in
5468         case output_verbose_link_cmd uses $CFLAGS, the right flags are
5469         used.
5470
5471         Work around yet another shell quoting portability issue.
5472         * configure.ac: Avoid nonportable quoted alternate variable
5473         value in unquoted here document, so Solaris 10 sh and Tru64
5474         ksh do not print spurious extra quotes.
5475
5476         Silence order-only configure test for AIX make.
5477         * configure.ac: Also drop standard output, for AIX 5.1 make.
5478
5479 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
5480
5481         Minor sysroot fixups.
5482         * libltdl/m4/libtool.m4 (_LT_WITH_SYSROOT): Fix typo.
5483         * tests/sysroot.at: Search also for crt0.o to accommodate cygwin.
5484
5485 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
5486
5487         [cygwin|mingw|cross-compile]: Path conversion support.
5488         * configure.ac: Ensure to_host_file_cmd is available to Makefile.
5489         * TODO: Document QoI issue with file name conversion functions.
5490         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): New function
5491         sets libtool variable $to_host_file_cmd, and employs cache.
5492         (_LT_SETUP): Require it.
5493         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
5494         variable setting on the configure line for (new testsuite) tests.
5495         * Makefile.am (TESTS_ENVIRONMENT): Ensure to_host_file_cmd is
5496         included so that it is passed to (old testsuite) tests.
5497         * libltdl/config/general.m4sh: Define $lt_sed_naive_backslashify here.
5498         * libltdl/config/ltmain.m4sh ($to_host_file_cmd, $to_host_path_cmd):
5499         New variables.
5500         (func_cygpath): New function.
5501         (func_init_to_host_path_cmd): New function.
5502         (func_to_host_path): Renamed to...
5503         (func_to_host_file): Refactored to... (now uses $to_host_file_cmd).
5504         (func_convert_core_file_wine_to_w32): Here. New function.
5505         (func_convert_core_msys_to_w32): Here. New function.
5506         (func_convert_file_check): Here. New function.
5507         (func_convert_file_noop): Here. New function.
5508         (func_convert_file_msys_to_w32): Here. New function.
5509         (func_convert_file_cygwin_to_w32): Here. New function.
5510         (func_convert_file_nix_to_w32): Here. New function.
5511         (func_convert_file_msys_to_cygwin): New function.
5512         (func_convert_file_nix_to_cygwin): New function.
5513         (func_to_host_pathlist): Renamed to...
5514         (func_to_host_path): Refactored to... (now uses $to_host_path_cmd
5515         and func_init_to_host_path_cmd).
5516         (func_convert_path_check): Here. New function.
5517         (func_convert_path_front_back_pathsep): Here. New function.
5518         (func_convert_core_path_wine_to_w32): Here. New function.
5519         (func_convert_path_noop): Here. New function.
5520         (func_convert_path_msys_to_w32): Here. New function.
5521         (func_convert_path_cygwin_to_w32): Here. New function.
5522         (func_convert_path_nix_to_w32): Here. New function.
5523         (func_convert_path_msys_to_cygwin): New function.
5524         (func_convert_path_nix_to_cygwin): New function.
5525
5526 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5527
5528         Fix symlist variable path to use _WIN32 instead of __WINDOWS__.
5529         * libltdl/config/ltmain.m4sh, libltdl/libltdl/lt_system.h,
5530         libltdl/m4/libtool.m4, tests/demo/foo.h, tests/pdemo/foo.h:
5531         Change __WINDOWS__ to _WIN32.
5532         Report by Charles Wilson.
5533
5534         Add $pic_flag to archive_cmds and archive_expsym_cmds.
5535         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
5536         <archive_cmds, archive_expsym_cmds>
5537         [GNU ld, netbsd]: Add $pic_flag if ELF.
5538         [GNU ld, solaris]: Likewise.
5539         [GNU ld, default case]: Likewise.
5540         [!GNU ld, freebsd, dragonfly]: Add $pic_flag.
5541         [!GNU ld, GCC, hpux9]: Add $pic_flag.
5542         [!GNU ld, GCC, hpux10]: Replace -fPIC with $pic_flag
5543         [!GNU ld, GCC, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
5544         [!GNU ld, GCC, irix5, irix6, nonstopux]: Add $pic_flag.
5545         [!GNU ld, GCC, osf4, osf5]: Likewise.
5546         [!GNU ld, GCC, solaris]: Likewise.
5547         (_LT_LANG_CXX_CONFIG) <archive_cmds, archive_expsym_cmds>
5548         [hpux9]: Add $pic_flag if $GXX.
5549         [hpux10, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
5550         [irix5, irix6]: Add $pic_flag if $GXX.
5551         [osf4, osf5]: Likewise.
5552         [solaris]: Add $pic_flag if $GXX and not GCC 2.7.
5553
5554         Uniform const'ness of symlist variable lt_preloaded_symbols.
5555         On some systems, lt_preloaded_symbols may not be declared
5556         const due to relocation issues.  C99 requires qualification to
5557         match for compatible declarations, so ensure we declare
5558         const'ness in the same way everywhere; link-time optimization
5559         may otherwise rightfully complain about inconsistencies.
5560         Since ltdl.h may not depend upon config.h, rely on system
5561         defines for choosing const'ness.
5562         * NEWS: Update.
5563         * doc/libtool.texi (Dlpreopening): Document this issue.
5564         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
5565         [__WINDOWS__, __CYGWIN__, _WIN32_WCE]: Define LT_DLSYM_CONST
5566         according to system defines.  Remove old shell cruft.  Use
5567         LT_DLSYM_CONST for lt_${my_prefix}_LTX_preloaded_symbols.
5568         * libltdl/libltdl/lt_system.h (LT_DLSYM_CONST): Likewise,
5569         define LT_DLSYM_CONST according to system defines.
5570         * tests/demo/foo.h (LT_DLSYM_CONST): Likewise.
5571         * tests/pdemo/foo.h (LT_DLSYM_CONST): Likewise.
5572         * tests/demo/dlmain.c (lt_dlsymlist): Use LT_DLSYM_CONST.
5573         * tests/pdemo/longer_file_name_dlmain.c (lt_dlsymlist):
5574         Likewise.
5575         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise
5576         for configure test code.
5577         * libltdl/ltdl.c (preloaded_symbols): Use LT_DLSYM_CONST.
5578         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Likewise.
5579
5580 2010-08-28  Dave Korn  <dave.korn.cygwin@googlemail.com>
5581
5582         Ensure cwrapper magic string is not optimized away.
5583         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
5584         Declare MAGIC_EXE as volatile.
5585         Report by Charles Wilson.
5586
5587 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5588
5589         Fix quoting in non-XSI func_xform, for IRIX sh.
5590         * libltdl/config/ltmain.m4sh (func_xform): Remove spurious extra
5591         M4 quotes.
5592
5593         Fix response file test for unreliable exit status of IRIX ar.
5594         * libltdl/m4/libtool.m4 (_LT_PROG_AR): IRIX ar will not fail
5595         over a command-line argument specifying a nonexistent file (such
5596         as `@FILE'), so ensure failure with a reponse file containing
5597         a nonexistent file.  Also, use lt_* variable prefix for
5598         temporary variables.
5599
5600         Fix AC_LANG_PROGRAM warnings from git Autoconf.
5601         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Fix
5602         underquoted AC_LANG_PROGRAM call.
5603         (LT_PROG_AR): Use AC_LANG_PROGRAM.
5604         (_LT_LINKER_SHLIBS) [irix, GCC]: Use the right source for the
5605         given language.
5606         * NEWS: Update.
5607
5608 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5609
5610         fix AIX testsuite regression
5611         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): Partly
5612         revert v2.2.10-83-gc45a288: Do not absolutize path here, only do
5613         sysroot replacement.
5614         (func_mode_link): Adjust.
5615
5616 2010-08-22  Charles Wilson  <libtool@cwilson.fastmail.fm>
5617
5618         fix --mode=finish
5619         * libltdl/config/ltmain.m4sh (func_mode_finish): Invert then/else
5620         blocks of the "if $opt_dry_run" conditional.
5621
5622 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
5623
5624         improve code for sysroot --mode=finish
5625         * libltdl/config/ltmain.m4sh (func_mode_finish): Change sysroot_regex
5626         and sysroot_cmd delimiter from pipe to slash.  Wrap the entire for
5627         loop with "if $opt_dry_run...fi" and print an explanatory message
5628         for the --dry-run case.
5629
5630 2010-08-12  Paolo Bonzini  <bonzini@gnu.org>
5631
5632         add libtool --mode=finish mode for sysroot
5633         * doc/libtool.texi (Finish mode): Document behavior when *.la files
5634         are passed.
5635         * libltdl/config/ltmain.m4sh (func_mode_finish): Eliminate sysroot
5636         or `=' signs representing it from files in $libs.
5637         * tests/sysroot.at (SYSROOT_TESTS): Test for presence of sysroot
5638         references before running libtool --mode=finish, and for absence
5639         afterwards.
5640
5641         reorganize parsing of --mode=finish arguments
5642         * libltdl/config/ltmain.m4sh (func_mode_finish): Split arguments for
5643         directories and *.la files.
5644
5645         fix sysroot handling for deplibs of preopened libtool libs
5646         * libltdl/config/ltmain.m4sh: Pass $dependency_libs of preopened libtool
5647         through func_resolve_sysroot.
5648
5649         fix sysroot tests to pass on Fedora 13
5650         * tests/sysroot.at: Link $prefix/include into the sysroot as well, as
5651         required by newer GCC.
5652
5653 2010-07-29  Paolo Bonzini  <bonzini@gnu.org>
5654
5655         initial version of the NEWS entry
5656         * NEWS: Document sysroot support.
5657
5658         add sysroot test
5659         * Makefile.am (TESTSUITE_AT): Add tests/sysroot.at.
5660         * tests/sysroot.at: New.
5661
5662         emit sysrooted paths when installing .la files
5663         * libltdl/config/ltmain.m4sh (func_replace_sysroot): New.
5664         (func_mode_link): Prepend paths in $libdir with the sysroot.  Further,
5665         replace the sysroot with = (using func_replace_sysroot) whenever
5666         such a path is written in a .la file.
5667
5668         process postdeps to include sysrooted paths
5669         * libltdl/m4/libtool.m4 (_LT_FUNC_STRIPNAME_CNF): New (from Charles Wilson).
5670         (_LT_SYS_HIDDEN_LIBDEPS): Require it.  Use func_stripname_cnf to convert
5671         sysroot (-L= and -R=) usage in postdeps.  Adjust the code because -L, -R
5672         and -l flags will now always be separated from the rest of the argument.
5673
5674         handle sysrooted paths when reading dependencies to la files
5675         * libltdl/config/ltmain.m4sh (func_mode_execute, func_mode_install,
5676         func_mode_link): Whenever a .la file occurs in another .la file,
5677         expand the sysroot path in it.
5678
5679 2010-07-28  Paolo Bonzini  <bonzini@gnu.org>
5680
5681         teach libtool -L= and -R=
5682         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): New.
5683         (func_mode_link): Always pass result of stripping -L and -R to
5684         func_resolve_sysroot before using it.  Remove absolute path expansion
5685         when func_resolve_sysroot subsumes it.  Expand sysroot in -rpath.
5686         When processing dependent libraries also resolve sysroot paths there.
5687
5688         add --with-sysroot
5689         * libltdl/m4/libtool.m4 (_LT_HOST_NONCANONICAL, _LT_WITH_SYSROOT): New.
5690         (LT_SETUP): Require _LT_WITH_SYSROOT.
5691
5692         handle sysroot flags
5693         * libltdl/config/ltmain.m4sh (func_mode_link): Recognize --sysroot
5694         option.
5695
5696 2010-08-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5697
5698         * NEWS: Only bootstrapping needs new Automake and Autoconf.
5699
5700         check-interactive and check-noninteractive for both testsuites.
5701         * Makefile.am (COMMON_TESTS, TESTS): Split into ...
5702         (NONINTERACTIVE_TESTS, INTERACTIVE_TESTS): ... these new
5703         variables.
5704         (check-interactive-new): Rename from check-interactive.
5705         (check-noninteractive-new): Rename from check-noninteractive.
5706         (check-interactive-old, check-noninteractive-old): New targets.
5707         (check-interactive, check-noninteractive): Depend on the
5708         respective targets for the old and the new test suites.
5709         * doc/libtool.texi (Test descriptions): Simplify description
5710         about check-interactive and check-noninteractive.  Add index
5711         entries.
5712
5713         Adjust docs for renaming and for parallel-tests.
5714         * README: Update example TESTS setting.
5715         * README.alpha: Likewise.
5716         * doc/libtool.texi (Test descriptions): Update for test renaming,
5717         adjust descriptions accordingly.
5718
5719         Update VERBOSE handling for parallel-tests driver.
5720         * tests/defs.m4sh: Default to verbose output, drop now-unneeded
5721         handling of 'VERBOSE=no'.
5722         * README: Update example usage.
5723         * README.alpha: Likewise.
5724         * doc/libtool.texi (Test descriptions, When tests fail): Remove
5725         unneeded VERBOSE recommendations.  Point to per-test log files
5726         and test-suite.log summary file.
5727
5728         Enable parallel-tests test driver for the old testsuite.
5729         * configure.ac: New configure test to find out whether `make'
5730         supports order-only prerequisites; set @ORDER@ accordingly.
5731         (AM_INIT_AUTOMAKE): Enable parallel-tests option.
5732         * tests/defs.m4sh (prefix): Derive install prefix for tests
5733         from the test name, to avoid clashes.
5734         * Makefile.am (CXX_TESTS, F77_TESTS, FC_TESTS, COMMON_TESTS):
5735         Reformat.  Adjust for renamed tests.  Add dependencies between
5736         the respective log files of the tests, to ensure proper ordering.
5737         Use order-only dependencies if possible, between test groups that
5738         use the same directory.
5739         (clean-local-legacy): Remove `_inst-*' directories as well.
5740         Prompted by suggestion from Bob Friesenhahn.
5741
5742         New alias scripts for old tests run more than once.
5743         * tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
5744         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
5745         tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
5746         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
5747         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
5748         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
5749         tests/demo-pic-exec.test, tests/demo-pic-make.test,
5750         tests/demo-shared-exec.test, tests/demo-shared-inst.test,
5751         tests/demo-shared-make.test, tests/demo-shared-unst.test,
5752         tests/demo-static-exec.test, tests/demo-static-inst.test,
5753         tests/demo-static-make.test, tests/demo-static-unst.test,
5754         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
5755         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
5756         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
5757         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
5758         tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
5759         tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
5760         tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
5761         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
5762         tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
5763         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
5764         tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
5765         tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
5766         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
5767         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
5768         tests/tagdemo-shared-exec.test, tests/tagdemo-shared-make.test,
5769         tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
5770         tests/tagdemo-undef-exec.test, tests/tagdemo-undef-make.test:
5771         New files.
5772
5773         Require Automake 1.11.1 for Libtool, enable color-tests.
5774         * configure.ac (AM_INIT_AUTOMAKE): Require 1.11.1.  Enable
5775         color-tests.
5776         (LTDL_SUBDIR_LIBOBJS): Remove now-obsolete conditional and
5777         feature test for Autoconf 2.59 and Automake 1.9.x workaround.
5778         * Makefile.am: Simplify accordingly.
5779         * bootstrap: Remove obsolete WORKING_LIBOBJ_SUPPORT workarounds
5780         for Autoconf 2.59 and Automake 1.9.6.
5781
5782 2010-08-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
5783
5784         Fix syntax for cygwin-cross
5785         libltdl/m4/argz.m4: Add quotes around variable, which
5786         may contain the multiword value 'guessing no'.
5787
5788 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5789
5790         configure: use Autobuild AB_INIT if available.
5791         * configure.ac: Call AB_INIT if it is defined, with
5792         $autobuild_mode as argument, to be set at configure time.
5793         Set AB_VERSION to the Libtool version string.
5794         * HACKING: Update.
5795
5796         Fix getopt tests to skip with Autoconf < 2.61.
5797         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Skip the test
5798         if 'autom4te --language=m4sh' exits 63 because version 2.61 is
5799         required.  Allows the testsuite to complete successfully with
5800         Autoconf 2.59 and Automake 1.9.6.
5801
5802         Tidy and fix clean and distclean rules for old testsuite.
5803         * Makefile.am (clean-local-legacy): Use $(CONF_SUBDIRS) instead
5804         of hard-coding the list of test directories.  Use
5805         $(AM_MAKEFLAGS).
5806         (fake-distclean-legacy): New phony rule, to create fake Makefile
5807         files if needed so that the automake-generated
5808         distclean-recursive rule can work properly.
5809         (distclean_recursive): New helper variable.
5810         (distclean-recursive): Depend on fake-distclean-legacy.
5811
5812 2010-08-22  Paolo Bonzini  <bonzini@gnu.org>
5813
5814         Fix sed_make_literal_regex.
5815         * libltdl/config/general.m4sh (sed_make_literal_regex): Fix
5816         definition.
5817
5818 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
5819
5820         Factor the sed command used to make a regex from a literal.
5821         * libltdl/config/general.m4sh (sed_make_literal_regex): New.
5822         * libltdl/config/ltmain.m4sh
5823         (func_cygming_dll_for_implib_fallback_core): Use it.  Suggested
5824         by Ralf Wildenhues.
5825
5826 2010-08-21  Rainer Tammer <tammer@tammer.net>  (tiny change)
5827
5828         Avoid issues with AIX resident shared libraries in old testsuite.
5829         * tests/defs.m4sh [aix]: Remove file mode permission for others,
5830         so shared libraries are not kept in memory after execution.
5831         Fixes failures of repeated mdemo-inst.test with on AIX 5.3.
5832
5833 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5834
5835         Skip part of versioning test on AIX.
5836         * tests/versioning.at (versioning): The AIX linker always
5837         records the unversioned library name, even with runtimelinking,
5838         so skip the execution test for the incompatibly upgraded
5839         library.
5840         Report by Rainer Tammer.
5841
5842         Remove dead code from versioning test.
5843         * tests/versioning.at (versioning): No need to build unused
5844         prog3.
5845
5846 2010-08-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5847
5848         Don't hide the table of contents in the manual.
5849         * doc/libtool.texi: Move the table of contents to the beginning.
5850         Prompted by patch from Bruno Haible against Automake.
5851
5852         Remove superfluous dependency in Makefile.am.
5853         * Makefile.am (tests/demo-conf.test): Remove dependency on
5854         libtool, this test is a primary source and not generated.
5855
5856         Bump copyright years in manual.
5857         * doc/libtool.texi: Bump copyright years.
5858
5859 2010-08-13  Peter Rosin  <peda@lysator.liu.se>
5860
5861         Allow the use of a listing file if the archiver supports it.
5862         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Move detection
5863         of a suitable archiver...
5864         (_LT_PROG_AR): ...to here. New macro, also detect if the
5865         archiver supports a listing file with the new variable
5866         archiver_list_spec.
5867         * libltdl/config/ltmain.m4sh: If the archiver supports a listing
5868         file, use it when max_cmd_len is exceeded.  This is needed for
5869         tool chains such as MSVC which do not support piece by piece
5870         linking (-r -o).
5871         * doc/libtool.texi (libtool script contents): Update with
5872         archiver_list_spec description.
5873
5874 2010-08-10  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
5875
5876         Make testsuite compatible with Autoconf 2.62 again.
5877         * tests/getopt-m4sh.at (AT_CHECK): Autotest 2.62 chokes on unquoted
5878         '#' in AT_CHECK, so replace all uses with '@%:@' quadrigraph.
5879         Suggested by Eric Blake <eblake@redhat.com>
5880         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5881
5882 2010-08-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5883
5884         Fix more problematic code from "Add func_append_quoted and do..."
5885         * libltdl/config/ltmain.m4sh (func_mode_link): Revert back
5886         func_append instances that as assignments relied on the shell
5887         not performing word splitting on the right hand side of the
5888         assignment.
5889
5890         Fix another typo on "Add func_append_quoted and do..."
5891         * libltdl/config/ltmain.m4sh (func_mode_link): Fix regression in
5892         computation of finalize_rpath introduced in v2.2.10-40-g0da7d80,
5893         fixing several testsuite failures on AIX.
5894         Report by Rainer Tammer.
5895
5896 2010-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5897
5898         Avoid unwanted error message in configure output.
5899         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Try print
5900         in subshell, so eventual `print: not found' is hidden reliably.
5901
5902         Fix compilation of program sources on AIX.
5903         * tests/lt_dlopenext.at (lt_dlopenext error messages): Do not
5904         use $LIBTOOL when compiling plain object, AIX by default does
5905         not enable static archives.
5906         * tests/ltdl-libdir.at (libdir of installed modules): Likewise.
5907         Report by Rainer Tammer.
5908
5909         Do not call toplevel configure in non-VPATH build.
5910         * tests/deplibs-mingw.at (deplibs without file command): Use
5911         LT_AT_CONFIGURE for consistency, update comment about why it
5912         might fail.
5913         * tests/pic_flag.at (override pic_flag at configure time): Skip
5914         test if we are building in-tree.
5915         Report by Rainer Tammer.
5916
5917         Allow running pic_flag test with different shell.
5918         * tests/testsuite.at (LT_AT_CONFIGURE): Accept optional second
5919         argument specifying the configure script to run.
5920         * tests/pic_flag.at (override pic_flag at configure time):
5921         Use LT_AT_CONFIGURE.
5922
5923         Ensure not to reverse preserving of --debug for relinking/finish.
5924         * libltdl/config/ltmain.m4sh (func_check_version_match): Only
5925         preserve '--debug' switch if $opt_debug is not equal to ':'.
5926         * tests/help.at (debug tracing): New test group.
5927         Report by Rainer Tammer.
5928
5929 2010-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5930
5931         Fix AC_NO_EXECUTABLES test failure on AIX.
5932         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Wrap link
5933         test in AC_CACHE_VAL, using cache variable $lt_cv_aix_libpath.
5934         * tests/no-executables.at (AC_NO_EXECUTABLES): Preset it, to
5935         avoid link test.
5936         Bug report by Rainer Tammer.
5937
5938         Fix ltdl-libdir test for C++ compilers.
5939         * tests/ltdl-libdir.at (libdir of installed modules): Declare
5940         module function as extern "C".
5941
5942 2010-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5943
5944         Let `libtool' without arguments point to `--help' again.
5945         * libltdl/config/ltmain.m4sh (func_check_version_match):
5946         Remove duplicate and wrong error check.
5947         * tests/help.at (standard command line options): Extend test.
5948         Report by Rainer Tammer.
5949
5950         Avoid syntax error due to shift of nonexistent parameter.
5951         * libltdl/config/ltmain.m4sh <command-line handling>: Only shift
5952         if there is a positional parameter to shift.  Fixes `libtool
5953         --help' when dash is used.
5954         Report by Rainer Tammer.
5955
5956         Fix testsuite errors due to shell quoted parameter expansion issue.
5957         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Insert space
5958         between double-quoted and unquoted shell parameter, as bash
5959         4.0.28 doesn't add one in its output if the expansion of the
5960         second one starts with a space.
5961         (short option splitting, enhanced shell short option splitting)
5962         (long option splitting, XSI long option splitting): Add space in
5963         expected output.
5964         Fixes testsuite failures on AIX, FreeBSD, etc.
5965         Report by Rainer Tammer.
5966
5967 2010-08-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5968
5969         Fix build failure with AIX sh due to shell quoting error.
5970         * libltdl/config/ltmain.m4sh (func_append_quoted): Document
5971         that this function inserts a separator space.
5972         (func_mode_compile): Do not pass extra space here.
5973         Fixes regression introduced in v2.2.10-49-gc13532a.
5974         Report by Rainer Tammer.
5975
5976 2010-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5977
5978         Fix pic_flag test unportabilities.
5979         * tests/pic_flag.at (override pic_flag at configure time): Skip
5980         test if the compiler produces a warning containing `fpic'.
5981         Do not use nonportable `grep -e', for Solaris.
5982         Report by Charles Wilson.
5983
5984 2010-08-01  Paolo Bonzini  <bonzini@gnu.org>
5985
5986         Fix bug in postdeps computation
5987         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Actually
5988         concatenate $prev and $p.
5989
5990 2010-07-26  Charles Wilson  <libtool@cwilson.fastmail.fm>
5991
5992         Don't always skip XSI tests
5993         * tests/getopt-m4sh.at: Use new signature as implemented by
5994         de8a0992b21b76a13c302cf48588ad5f6042595c, when determining
5995         whether to test Extended-shell functions.
5996
5997 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
5998
5999         * tests/stresstest.at: Link with main.lo when liba is shared
6000         and linking main with -no-install.
6001
6002 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
6003
6004         * tests/stresstest.at [MSVC]: dllimport all imported
6005         variables.
6006
6007 2010-07-17  Peter Rosin  <peda@lysator.liu.se>
6008
6009         dllimport the variable for MSVC in link-order.at
6010         * tests/link-order.at [MSVC]: Makes the test pass by dllimporting
6011         imported variables when working with shared libraries.
6012
6013 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
6014             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6015
6016         Make preloading heed libname_spec.
6017         Fixes testsuite failure for lt_dladvise.at on MSYS/MSVC.
6018         * libltdl/ltdl.c (libprefix): New static variable describing
6019         the prefix of static archives.
6020         (try_dlopen): Use libprefix.
6021         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Export prefix of static
6022         archives to config.h. Also fix assignment of LTDLOPEN to be more
6023         efficient and less error prone while at it.
6024
6025 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
6026
6027         Rename _LT_PROG_XSI_REPLACE macro to _LT_PROG_FUNCTION_REPLACE.
6028         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Rename to
6029         _LT_PROG_REPLACE_SHELLFNS.
6030         (_LT_PROG_XSI_REPLACE): Rename to _LT_PROG_FUNCTION_REPLACE.
6031         (_LT_PROG_FUNCTION_REPLACE): Change decorator comment to use
6032         'Extended shell' rather than 'XSI' on successful replacement.
6033         * libltdl/config/general.m4sh (func_dirname, func_basename)
6034         (func_dirname_and_basename, func_stripname): Change decorator
6035         comment to use 'extended shell' rather than 'XSI' on fallback
6036         implementations.
6037         * libltdl/config/getopt.m4sh (func_split_short_opt)
6038         (func_split_long_opt): Ditto.
6039         * libltdl/config/ltmain.m4sh (func_append, func_append_quoted)
6040         (func_arith, func_len, func_lo2o, func_xform): Ditto.
6041         * tests/getopt-m4sh.at (_LT_AT_XSI_FUNC_EXTRACT): Rename to
6042         _LT_AT_EXTENDED_SHELL_FUNC_EXTRACT.
6043         (_LT_AT_EXTENDED_SHELL_FUNC_EXTRACT): Change regular expression to
6044         match new replacable function decorator comments.
6045
6046 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
6047
6048         Optimize assignment of output_la.
6049         * libltdl/config/ltmain.m4sh (func_mode_link): Save two fork/exec
6050         instances.
6051         Report by Ralf Wildenhues.
6052
6053 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
6054
6055         Fix a cut-n-pasto in "2010-07-07 Charles Wilson" patch.
6056         * libltdl/config/ltmain.m4sh (func_mode_link): Remove spurious
6057         variable dereference.
6058
6059 2010-07-07  Gary V. Vaughan  <gary@gnu.org>
6060
6061         Tidy m4 comment header underline.
6062         * libltdl/m4/libtool.m4 (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): Make
6063         sure hyphens in function name comment header underline line up.
6064
6065 2010-07-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
6066
6067         [cygwin|mingw] fix dlpreopen with --disable-static
6068         * libltdl/config/general.m4sh (func_tr_sh): New function.
6069         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [cygwin|mingw]:
6070         Obtain DLL name corresponding to import library by using value
6071         stored in unique variable libfile_$(transliterated implib name).
6072         If that fails, use $sharedlib_from_linklib_cmd to extract DLL
6073         name from import library directly. Also, properly extract dlsyms
6074         from the import library.
6075         (func_mode_link) [cygwin|mingw]: Prefer to dlpreopen DLLs
6076         over static libs when both are available.  When dlpreopening
6077         DLLs, use linklib (that is, import lib) as dlpreopen file,
6078         rather than DLL. Store name of associated la file in
6079         unique variable libfile_$(transliterated implib name)
6080         for later use.
6081         (func_win32_libid): Accomodate pei-i386 import libs
6082         as well as pe-i386.
6083         (func_cygming_dll_for_implib): New function.
6084         (func_cygming_dll_for_implib_fallback): New function.
6085         (func_cygming_dll_for_implib_fallback_core): New function.
6086         (func_cygming_gnu_implib_p): New function.
6087         (func_cygming_ms_implib_p): New function.
6088         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust sed
6089         expressions for lt_cv_sys_global_symbol_to_c_name_address and
6090         lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
6091         as trailing space after module name is optional.
6092         (_LT_LINKER_SHLIBS) [cygwin|mingw][C++]:
6093         Set exclude_expsyms correctly for $host. Simplify regular
6094         expression in export_symbols_cmds.
6095         (_LT_LINKER_SHLIBS) [cygwin|mingw|pw32][C]: Set exclude_expsyms
6096         correctly for $host. Enable export_symbols_cmds to identify
6097         DATA exports by _nm_ prefix.
6098         (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): New macro sets
6099         sharedlib_from_linklib_cmd variable.
6100         (_LT_DECL_DLLTOOL): New macro ensures DLLTOOL is always set.
6101
6102 2010-07-05  Peter Rosin  <peda@lysator.liu.se>
6103
6104         * tests/export.at [MSVC]: dllimport all imported variables.
6105
6106 2010-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6107             Peter Rosin  <peda@lysator.liu.se>
6108
6109         Support for response files with $NM.
6110         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
6111         <nm_file_list_spec>: New tag variable. Set it to '@' if input
6112         files can be passed to $NM in a file named with the '@' option.
6113         * libltdl/config/ltmain.m4sh (func_mode_link): When
6114         nm_file_list_spec is nonempty, use it to avoid skipped_export.
6115         * doc/libtool.texi (libtool script contents): Document
6116         new variable.
6117
6118 2010-07-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6119
6120         Fix ccache test for MSVC.
6121         * tests/static.at (ccache -all-static): Ignore compiler stderr.
6122         Reported by Peter Rosin.
6123
6124 2010-07-03  Charles Wilson  <libtool@cwilson.fastmail.fm>
6125
6126         Avoid false failures caused by filesystem interaction
6127         * tests/dlloader-api.at (dlloader API): Use uglified names for
6128         pseudo-modules.
6129
6130 2010-07-03  Peter Rosin  <peda@lysator.liu.se>
6131
6132         Fix typo in "Add func_append_quoted and do..."
6133         * libltdl/config/ltmain.m4sh (func_mode_compile): Use
6134         func_append_quoted instead of func_append.
6135
6136 2010-07-02  Peter Rosin  <peda@lysator.liu.se>
6137
6138         Don't trigger file name expansion when embedding manifests.
6139         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
6140         [ cygwin, mingw, cegcc ] <cl*>: Remove all spaces in the
6141         case statement of postlink_cmds to make file name expansion
6142         more unlikely.
6143         (_LT_LANG_CXX_CONFIG): Likewise, but also add the missing |.
6144
6145 2010-07-01  Peter Rosin  <peda@lysator.liu.se>
6146
6147         Fix regression caused by "Add func_append_quoted and do..."
6148         * libltdl/config/ltmain.m4sh (func_mode_link): Remove leftover
6149         "_libs" trash.
6150
6151 2010-06-28  Peter Rosin  <peda@lysator.liu.se>
6152
6153         For MSVC, embed the manifest as a resource in the executable.
6154         Fixes a lot of testsuite failures with MSVC 2003 (v8.0) and
6155         above (and perhaps also MSVC .Net) related to running programs
6156         that have been moved (e.g. installed) without their manifests
6157         also having been moved.
6158         * libltdl/m4/libtool.m4 (_LT_PATH_MANIFEST_TOOL): New macro
6159         that locates the Manifest Tool (mt) and verifies that it is
6160         indeed the manifest tool. The result is stored in the new
6161         variable MANIFEST_TOOL.
6162         (_LT_LINKER_SHLIBS) <postlink_cmds>: New tag variable.
6163         [ cygwin, mingw, cegcc ] <cl*>: Embed the manifest file as a
6164         resource. Make sure the embedding work regardless of if the
6165         @OUTPUT@ file name includes a trailing $EXEEXT.
6166         (_LT_LANG_CXX_CONFIG): Likewise.
6167         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Require the above
6168         _LT_PATH_MANIFEST_TOOL.
6169         * libltdl/config/ltmain.m4sh (func_mode_link): After linking
6170         a program, replace @OUTPUT@ in $postlink_cmds and then execute
6171         the commands.
6172         * doc/libtool.texi (libtool script contents): Document
6173         new postlink_cmds variable.
6174         (LT_INIT): Add that the MANIFEST_TOOL environment variable can
6175         be used to override the manifest tool to use.
6176         * tests/exeext.at: New. Make sure linking with both -o prog
6177         and -o prog$EXEEXT works.
6178         * Makefile.am (TESTSUITE_AT): Update.
6179         (TESTS_ENVIRONMENT): Propagate $(MANIFEST_TOOL) to the
6180         testsuite.
6181         * NEWS: Add note of the new MANIFEST_TOOL environment variable.
6182
6183 2010-06-24  Peter Rosin  <peda@lysator.liu.se>
6184
6185         Add MSVC support.
6186         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
6187         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin]: Add
6188         support for the Microsoft C/C++ Compiler (cl) relying on help
6189         from the compile script in Automake.
6190         * NEWS: Add note of the above.
6191
6192 2010-07-01  Gary V. Vaughan  <gary@gnu.org>
6193
6194         Skip `enhanced shell option appending' test when not available.
6195         * tests/getopt-m4sh.at [enhanced shell option appending]:
6196         _LT_AT_XSI_FUNC_EXTRACT will not be able to find the enhanced
6197         libtool func_append function if the replacement wasn't substituted
6198         by configure, since the decorator comments will be different - in
6199         that case simply skip the test.
6200
6201 2010-06-30  Gary V. Vaughan  <gary@gnu.org>
6202
6203         Add func_append test cases for smart and retarded implementations.
6204         * tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): New
6205         macro to extract a fallback function implementation from
6206         ltmain.m4sh.
6207         [option appending]: Use it for a test of the fallback
6208         implementation of func_append.
6209         [enhanced shell option appending]: And also test the enhanced
6210         implementation.
6211         * libltdl/config/ltmain.m4sh (func_append_quoted): Fix missing \\
6212         to escape a quoted space for eval.
6213         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Fix missing $ in
6214         dereference of func_append inline replacement for retarded
6215         shells.
6216
6217 2010-06-29  Gary V. Vaughan  <gary@gnu.org>
6218
6219         Correct func_split_short_opt comment cut-n-pasto.
6220         * libtool/config/getopt.m4sh (func_split_short_opt): Fix
6221         the function comment.
6222
6223         Use a real XSI compliant func_split_short_opt substitution.
6224         * libtool/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Remove
6225         test ${foo:n:m} substrings, instead adding a ${foo%??} check
6226         to the existing XSI tests.
6227         (_LT_PROG_XSI_SHELLFNS): Remove the ${foo:n:m} based
6228         func_split_short_opt substitution in favour of a properly
6229         XSI compliant substitution.
6230         Suggested by Paolo Bonzini.
6231
6232 2010-06-28  Gary V. Vaughan  <gary@gnu.org>
6233
6234         Add func_append_quoted and do inline func_append substitutions.
6235         * libtool/config/ltmain.m4sh: Replace all occurrences of
6236         `foo="$foo bar"' with func_append. No decorator comment was
6237         added since /func_append [a-zA-Z0-9_]* "/ is already an
6238         excellent match regexp, and additional comments would only
6239         complicate things.
6240         (func_append_quoted): New function that quotes a value with
6241         func_quote_for_eval before appending it.  To avoid quoting the
6242         whitespace in the passed value, a single whitespace is added
6243         automatically.  Changed callers where possible.
6244         * libtool/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Perform a
6245         `+=' implementation substitution for func_append_quoted.  More
6246         importantly, systematically replace matching func_append calls
6247         with inline `+=' when supported (for maximum speed), and
6248         longhand `foo="$foo bar"' otherwise to avoid the function
6249         overhead.
6250
6251         Add an XSI replacement for func_split_short_opt, with test cases.
6252         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Remove 'v' now
6253         that getopt.m4sh doesn't steal that letter for the --version
6254         short option.
6255         * libltdl/config/ltmain.m4sh (M4SH_GETOPTS): We can now use 'v'
6256         as a short option for '--verbose'.
6257         * libltdl/config/getopt.m4sh (m4go_printopts): Add back in the
6258         leading '-' for remaining non-argument short options.
6259         (func_split_short_opt): Use the correct sed script variable.
6260         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also ensure
6261         that XSI substring extraction is supported.
6262         (_LT_PROG_XSI_SHELLFNS): Use XSI substring extraction to split
6263         short options to avoid unnecessary forks if the host shell
6264         supports that.
6265         * tests/getopt-m4sh.at: New tests for getopt.m4sh coverage.
6266         * Makefile.am (TESTSUITE_AT): Add getopt-m4sh.at.
6267         (TESTS_ENVIRONMENT): Pass M4SH and SED for substition into the
6268         m4sh expansion performed in tests/getopt-m4sh.at.
6269
6270 2010-06-27  Gary V. Vaughan  <gary@gnu.org>
6271
6272         Add missing case branch terminators.
6273         * libltdl/config/ltmain.m4sh: Fixed everal case branches with
6274         missing ';;' terminators.
6275
6276         Use TAB-SPACE in preference to SPACE-TAB.
6277         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): Some editors
6278         might optimise away the SPACE in SPACE-TAB sequences, so use
6279         TAB-SPACE just in case.
6280         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6281
6282         Amend a missed opt_mode rename instance in ltmain.m4sh.
6283         * libltdl/config/ltmain.m4sh <mode>: Rename to opt_mode.
6284
6285         Fix portability regressions in today's earlier changeset.
6286         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): `sed -i' is not
6287         portable; use `mv -f ...|| cp -f ...' instead.
6288         Add an initial backslash to sed `c' substitutions with leading
6289         whitespace, so that indentation is not removed by some non-POSIX
6290         compliant sed implementations.
6291         (_LT_PROG_XSI_SHELLFNS): Display a diagnostic warning message if
6292         one or more XSI function replacements failed.
6293
6294         getopt.m4sh generated libtool option parser, and XSI improvements.
6295         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Moved portable
6296         shell versions of various utility functions from here...
6297         * libltdl/config/getopt.m4sh (func_split_long_opt): ...to here...
6298         * libltdl/config/general.m4sh (func_dirname, func_basename)
6299         (func_dirname_and_basename, func_strip_name): ...here...
6300         * libltdl/config/ltmain.m4sh (func_append, func_arith, func_len)
6301         (func_lo2o, func_xform): ...and here.
6302         * libltdl/config/libtool.m4 (_LT_PROG_XSI_REPLACE): New macro that
6303         expands into a sed command for replacing the contents of a
6304         suitably decorated shell function with an alternate XSI
6305         implementation.
6306         (_LT_PROG_XSI_SHELLFNS): Use it to replace the portable shell
6307         versions of the functions above with equivalent XSI
6308         implementations that avoid unnecessary forks if the host shell
6309         supports that.
6310         * libltdl/config/ltmain.m4sh: Replace hand written shell code
6311         with a call to M4SH_GETOPTS. Rename some option variables in
6312         the client code to match the generated option parser settings.
6313         * libltdl/config/general.m4sh (func_echo, func_error)
6314         (func_warning): Use $opt_mode instead of obsoleted $mode in
6315         message leader.
6316         * libltdl/config/getopt.m4sh (m4_version_prereq): This file
6317         requires m4sugar.m4 from Autoconf-2.61 or newer. 
6318
6319 2010-06-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
6320
6321         [cygwin] Refactor C++ exception handling for Win32 correctness
6322         * tests/exception.at (common.h): New file, refactored from
6323         (module.h): Move declaration of modexc to libcommon.
6324         Include common.h. Use explicit import/export markings for
6325         symbols when building on win32 or cygwin.
6326         (common.cpp): New file.
6327         (module.cpp): Ensure correct symbols markings when including
6328         module.h.
6329         (lib.h): Use explicit import/export markings for symbols
6330         when building on win32 or cygwin.
6331         (lib.cpp): Ensure correct symbol markings when including lib.h.
6332         (main.cpp): Include common.h.
6333         (commands): Ensure correct symbol markings when compiling
6334         main.cpp, and lib.cpp, and module.cpp. Add command to compile
6335         common.cpp, and to link libcommon.la.  Add libcommon.la when
6336         linking module.la and main.  Add command to install libcommon.la.
6337
6338 2010-06-21  Gary V. Vaughan  <gary@gnu.org>
6339
6340         Ensure getopts.m4sh is compatible with Autoconf-2.61 and newer.
6341         * libltdl/config/getopt.m4sh (m4_chomp): Ensure this macro is
6342         implemented even if Autoconf's m4sugar.m4 doesn't provide it.
6343         (m4go_expand): New macro based on Autoconf-2.64 m4_expand. Use
6344         it everywhere incase m4sugar.m4 doesn't have an implementation.
6345         (m4_ifnblank): Replace all uses with m4_ifval, which was
6346         available long before m4_ifnblank was introduced.
6347
6348 2010-06-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6349
6350         Fix clean mode for HP-UX 11.31 sh.
6351         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not try
6352         to match a null string in a case pattern, even with surrounding
6353         spaces.  Fixes `lt_dlopenadvise library loading' test.
6354
6355         Add comment for exception handling module unloading issue.
6356         * tests/exceptions.at (C++ exception handling): Add comment
6357         for last patch.
6358
6359         Fix flags test failure when ld is used as linker.
6360         * tests/flags.at (passing CC flags through libtool): When $LD
6361         is used for linking libraries, ensure flags passed with `-Wc,'
6362         are not passed through to $LD, but flags passed with `-Wl,' use
6363         $wl when linking programs.  Fixed testsuite failure on HP-UX
6364         10.20.
6365
6366 2010-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
6367
6368         [cygwin] Fix segfault in C++ exception handling test
6369         * tests/exceptions.at (main.cpp:exceptions_in_module):
6370         Move dlclose outside catch block; otherwise __cxa_end_catch
6371         (part of the cygwin g++ ABI) accesses pointers to data inside
6372         unloaded DLL. This is a platform ABI-specific bug, but is
6373         likely common to many platforms' g++ and/or other C++
6374         compilers.
6375
6376 2010-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6377
6378         Fix srcdir computation for manual runs of old tests.
6379         * tests/defs.m4sh: Strip trailing `/tests' from srcdir, to allow
6380         `$srcdir/tests/FOO.test' to be run from the top build directory.
6381
6382         Clean up @var handling in the manual.
6383         * doc/libtool.texi: Throughout the manual, replace @var with
6384         @samp or @code as appropriate, ensure the argument of remaining
6385         @var uses are lower-case.
6386
6387         Let the bootstrap script fail upon errors.
6388         * bootstrap: Enable errexit.
6389
6390         Fix execute mode test for OSF/1 5.1.
6391         * tests/execute-mode.at (execute mode): Do not use grep -F
6392         with an empty pattern.
6393         * THANKS: Update.
6394         Report by Jay K.
6395
6396         Use config.cache variable for PIC flag, to allow override.
6397         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) <lt_prog_compiler_pic>:
6398         Save result, and allow override, through cache variable
6399         lt_cv_prog_compiler_pic{,_CXX,_F77,_FC}.  The cache variable
6400         needs to contain an eventual -DPIC.
6401         * tests/pic_flag.at (override pic_flag at configure time):
6402         New file, new test.
6403         * Makefile.am (TESTSUITE_AT): Update.
6404         * NEWS, THANKS: Update.
6405         Suggestion by Joakim Tjernlund and Paolo Bonzini.
6406
6407 2010-06-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6408
6409         Optimize func_ltwrapper_scriptname to assume a cwrapper.
6410         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname): Do not
6411         call func_ltwrapper_executable_p again here, this function is
6412         documented to allow being called with wrapper executables.
6413
6414         Fix bootstrap script to cope with changed AC_INIT arguments.
6415         * bootstrap: When extracting PACKAGE and VERSION from AC_INIT
6416         arguments, be sure to remove a 'GNU ' prefix and lowercase the
6417         package name for PACKAGE.  Also set PACKAGE_NAME and PACKAGE_URL
6418         appropriately for GNU software.  Pass these variables to the
6419         make commands creating tests/package.m4 and other files.
6420         * Makefile.am (edit): Fix substitution of PACKAGE_NAME and
6421         PACKAGE_STRING.
6422         * libltdl/config/announce-gen.m4sh: Use @PACKAGE@ not
6423         @PACKAGE_STRING@.
6424
6425 2010-06-15  Peter Rosin  <peda@lysator.liu.se>
6426
6427         On Windows, find potential libs regardless of file name case.
6428         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD),
6429         libltdl/config/ltmain.m4sh (func_mode_link): On Windows,
6430         find potential libs regardless of file name case.
6431         * tests/nocase.at: New test, to check for regressions
6432         of the above.
6433         * Makefile.am: Add above new test.
6434         * doc/libtool.texi (libtool script contents): Document
6435         new variables.
6436         * NEWS: Updated.
6437
6438 2010-06-15  Philip Allison  <philip.allison@smoothwall.net>  (tiny change)
6439
6440         Avoid GCC -Wall compiler warning in dlopen self test.
6441         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Fix unused
6442         variable warning in test program.
6443         * THANKS: Update.
6444
6445 2010-06-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6446
6447         Fix cleaning of uninstalled w32 shell wrapper in subdirs.
6448         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not
6449         override global objdir variable, instead use odir for the
6450         directory of to-be-removed files.  Drop unneeded origobjdir.
6451         Report by Charles Wilson.
6452
6453 2010-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6454
6455         Enable colored Autotest testsuite output if available.
6456         * tests/testsuite.at: Move AT_INIT call down to late in the
6457         file, all prior code can go beforehand.
6458         Call AT_COLOR_TESTS if defined.
6459
6460 2010-06-14  Peter O'Gorman  <peter@pogma.com>
6461
6462         Pass resident test with --disable-shared too.
6463         * tests/resident.at: use LTDL_SET_PRELOADED_SYMBOLS.
6464
6465 2010-06-13  Peter O'Gorman  <peter@pogma.com>
6466
6467         Test with --disable-shared at release time too.
6468         * HACKING: Note it.
6469
6470         Avoid failure for --disable-shared.
6471         * tests/lt_dladvise.at: Hack.
6472
6473         Use LTDL_SET_PRELOADED_SYMBOLS to avoid failure.
6474         * tests/exceptions.at: Use it.
6475
6476 2010-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6477
6478         Print Libtool project URL in program --help output.
6479         * configure.ac (AC_INIT): Set PACKAGE argument to `GNU Libtool',
6480         so Autoconf knows this is GNU software.  For Autoconf < 2.64,
6481         if AC_PACKAGE_URL is not defined, substitute PACKAGE_URL.
6482         * Makefile.am (edit): Substitute PACKAGE_URL.
6483         ($(srcdir)/tests/package.m4): Also depend on Makefile.am.
6484         Define AT_PACKAGE_URL, for `tests/testsuite --help' output.
6485         * libltdl/config/getopt.m4sh (func_help): Also extract comment
6486         lines that mention a home page and general GNU help.
6487         * libltdl/config/ltmain.m4sh: Use @PACKAGE_BUGREPORT@ instead of
6488         hard-coded list address.  Also mention Libtool home page and
6489         general GNU help web page.
6490         * libtoolize.m4sh: Likewise.
6491
6492 2010-06-12  Peter Rosin  <peda@lysator.liu.se>
6493             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6494
6495         Improve libdir usage from within ltdl on MinGW.
6496         * libltdl/ltdl.c (parse_dotla_file) [__WINDOWS__]: Read the
6497         libdir entry in the .la file, but accept it only if it is not
6498         a unix-style absolute name.
6499         * tests/ltdl-libdir.at: New test that checks if ltdl finds an
6500         installed module via the libdir variable in the .la file.  On
6501         MinGW, use a Windows-style libdir name including drive spec.
6502         * Makefile.am: Add above.
6503
6504 2010-06-11  Peter O'Gorman  <peter@pogma.com>
6505
6506         Skip bindir install test if we're not building shared.
6507         * tests/bindir.at: Skip install test if necessary.
6508         * THANKS: Update.
6509         Report by Michael E Faenza.
6510
6511 2010-06-11  Gary V. Vaughan  <gary@gnu.org>
6512
6513         Use getopt.m4sh to generate libtoolize option parser.
6514         * libtoolize.m4sh: Replace hand written shell code with a
6515         call to M4SH_GETOPTS.  Move some premature initialization
6516         from the preamble to the main part of the script.  Exit with
6517         an error on spurious additional non-option arguments.
6518         (envopts): Integrate LIBTOOLIZE_OPTIONS pre-parsing into the
6519         main option parsing loop.
6520         (opt_copy): Use in place of and in the reverse sense of the
6521         old opt_link variable.
6522
6523 2010-06-10  Peter O'Gorman  <peter@pogma.com>
6524
6525         Create reloadable object files with non-pic objects too.
6526         * libltdl/config/ltmain.m4sh: When not building a shared
6527         library, use the non-pic objects to create a reloadable
6528         object, because pic objects do not exist.
6529
6530 2010-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6531
6532         Ensure libltdl is up to date for check-local.
6533         * Makefile.am (LTDL_BOOTSTRAP_DEPS): New variable.
6534         (all-local): Use it to simplify dependencies.
6535         (testsuite_deps_uninstalled): Add $(LTDL_BOOTSTRAP_DEPS).
6536         Report by Peter Rosin.
6537
6538 2010-06-10  Gary V. Vaughan  <gary@gnu.org>
6539
6540         Support shell tracing inside functions even with ksh.
6541         * libltdl/config/getopt.m4sh: Set $opt_debug to be either `:'
6542         or `set -x' depending on whether --debug was parsed to match
6543         usage in libtoolize.m4sh and ltmain.m4sh.
6544         * clcommit.m4sh, libltdl/config/announce-gen.sh: Instead of
6545         `$opt_debug && ...', use `test "$opt_debug" != ":" && ...'.
6546         * clcommit.m4sh, libltdl/config/announce-gen.m4sh,
6547         libltdl/config/getopt.m4sh, libltdl/connfig/mailnotify.m4sh:
6548         Execute at the start of functions to cater to ksh, which
6549         resets `-x' inside shell functions.
6550
6551         Fix a typu in HACKING.
6552         * HACKING (Release Procedure): s/Makeflie/Makefile/.
6553
6554 2010-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6555
6556         Factorize testing gcj installation in the testsuite.
6557         * tests/testsuite.at (LT_AT_TAG): For the GCJ tag, actually
6558         try to compile a .java file when deciding whether to skip.
6559         (LT_AT_EXEC_TAG): New macro, to also ensure runnability.
6560         * tests/convenience.at (Java convenience archives): Use
6561         LT_AT_EXEC_TAG, simplify accordingly.
6562         * tests/flags.at (passing lt_tag flags through libtool): Use
6563         m4_defn for tag so LT_AT_TAG works.
6564         * tests/infer-tag.at (GCJ inferred tag): Simplify.
6565         * THANKS: Update.
6566         Report by Warren Dodge.
6567
6568 2010-06-09  Peter O'Gorman  <peter@pogma.com>
6569
6570         Skip demo-nopic tests if SELinux policy will cause failure.
6571         * tests/demo-nopic.test: Check SELinux policy and skip if
6572         necessary.
6573
6574 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
6575
6576         Set SCM version number to 2.2.11a.
6577         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6578         number to 2.2.11a.
6579         * NEWS: Updated.
6580
6581         GNU Libtool 2.2.10 was released.
6582
6583         Prepare for next release.
6584         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version number
6585         to 2.2.10.
6586         * NEWS: Update version number.
6587
6588         Fix a quoting bug with ./commit -a 'A U Thor'.
6589         * clcommit.m4sh (func_commit): Use func_show_eval when calling
6590         git, so that the previously func_quote_for_eval()ed $git_flags is
6591         expanded properly.
6592
6593 2009-09-15  Peter Rosin  <peda@lysator.liu.se>
6594
6595         Don't try the MSYS libdir path on MinGW.
6596         * libltdl/ltdl.c (parse_dotla_file) [mingw]: The absolute
6597         libdir path in the .la file is recorded as an MSYS (POSIX
6598         style) path. Make sure it isn't tried when locating the
6599         shared library.
6600         * NEWS: Updated.
6601
6602 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
6603
6604         Simplify license variations, and add missing license texts.
6605         * ChangeLog, ChangeLog.1996, ChangeLog.1997, ChangeLog.1998,
6606         ChangeLog.1999, ChangeLog.2000, ChangeLog.2001, ChangeLog.2002,
6607         ChangeLog.2003, ChangeLog.2004, ChangeLog.2005, ChangeLog.2006,
6608         ChangeLog.2007, ChangeLog.2008, ChangeLog.2009, NEWS: Add
6609         all-permissive license.
6610         * HACKING, README, README.alpha, TODO: Relax license to RMS
6611         encouraged all-permissive terms.
6612         * libltdl/README: Ditto. I added the original license text in
6613         2007, and there's no need for it to be so long for such a trivial
6614         file.
6615         * libltdl/config/getopt.m4sh, libltdl/general.m4sh: Cvs-utils is
6616         dead, and I am the author of these files, so consolidated license
6617         terms to match regular Libtool licensing.
6618         * HACKING (Licensing Rules): Update wording, and list of files for
6619         the all permissive license.
6620         (GPL with CVS-Utils exception clause): Removed.  No files have these 
6621         license any more.
6622         (GPL with Libtool exception clause): Ditto, only libltdl/README
6623         used to be distributed with this variation.
6624         * AUTHORS: Add GPL license text.
6625         
6626         Fix a type in the 2.2.8 release notes.
6627         * NEWS: s/ romoted/ promoted/ in the 2.2.8 release notes.
6628
6629         Don't warn about the blank line inserted into git commit message.
6630         * clcommit.m4sh: When searching for accidental commits of mutliple
6631         changes, ignore the second line of the message, which we inserted
6632         earlier to support "git log --oneline".
6633
6634         Enable correct extraction of multiline copyright from --version.
6635         * libltdl/config/getopt.m4sh: Wrap copyright notice at 76
6636         columns.
6637         (func_version): Don't omit spaces when merging multiline copyright
6638         notices.
6639         * clcommit.m4sh, libtoolize.m4sh: Wrap copyright notice at 76
6640         columns.
6641
6642         * NEWS (2.2.8): BlueGene compiler tests were performed on BG/P
6643         systems, not BG/L.
6644         Reported by Christian Rössel <christian.roessel@gmx.de>
6645
6646 2010-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6647
6648         Fix testsuite helper macros to not hide failure.
6649         * tests/testsuite.at (LT_AT_CONFIGURE, LT_AT_MAKE):
6650         Do not wrap AT_CHECK in a subshell, so that failures are
6651         properly propagated; instead, move environment changes inside
6652         the AT_CHECK code.
6653         Report and analysis by Peter Rosin.
6654
6655         Avoid autom4te warning about unnamed diversion.
6656         * libltdl/config/getopt.m4sh: Use diversion name KILL not -1.
6657
6658 2010-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6659
6660         Make versioning test stricter for w32, enable shared libs.
6661         * tests/versioning.at (versioning): Add -no-undefined to
6662         LDFLAGS.
6663         (test_uninstalled): Also move $bindir out of the way
6664         temporarily.
6665
6666         Fix versioning test for LDFLAGS=-Wl,--as-needed.
6667         * tests/versioning.at (versioning): For the library update
6668         hypotheses, ensure the unchanged library libb isn't accidentally
6669         relinked against the new liba, by not reinstalling libb.
6670         Fixes testsuite failure for the incompatible update case with
6671         LDFLAGS=-Wl,--as-needed.
6672         * THANKS: Update.
6673         Report by Ryan Hill.
6674
6675 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6676
6677         Rewrite manual intro to be gender-neutral.
6678         * doc/libtool.texi (Introduction): Use gender-neutral
6679         formulation when addressing developers.
6680
6681 2010-06-05  Gary V. Vaughan  <gary@gnu.org>
6682
6683         Update and simplify all m4sh scripts to use latest getopt.m4sh.
6684         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Rewrite option
6685         parsing loop over M4SH_GETOPTS macro, and adjust all clients of
6686         option variables to use generated option names.
6687
6688         Add missing quote for literal ? in a shell case statement.
6689         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Quote initial ?
6690         correctly for use in a shell case statement.
6691
6692         Quote command line arguments after --rcfile properly.
6693         * libltdl/config/announce-gen.m4sh (--rcfile): Quote remaining
6694         arguments shell variable expression correctly for eval.
6695         
6696         Shift correctly in numbered option argument collection.
6697         * libltdl/config/getopt.m4sh (_m4go_option): Argument list also
6698         needs to be `shift'ed in the shell option loop after processing a
6699         numbered argument collection.
6700
6701         Fetch from new upstream host for config.guess and config.sub.
6702         * Makefile.maint (WGET_CGIT): Location of newest config.guess and
6703         config.sub upstream.
6704         (fetch): Fetch config.guess and config.sub from WGET_CGIT, rather
6705         than no-longer-updating WGET_SGO location.
6706
6707         Update generated upload directive file format to v1.1.
6708         * Makefile.maint (git-dist, diffs): Update to generate v1.1 format
6709         directive files for ftp://ftp-upload.gnu.org/incoming/ftp.
6710
6711         Fix web manual generation details in release instructions.
6712         * HACKING (Release Procedure): Move the instruction for generating
6713         web manuals for a new release to before the instruction that bumps
6714         the version numbers to the post release values.
6715
6716         Set SCM version number to 2.2.9a.
6717         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6718         number to 2.2.9a.
6719         * NEWS: Updated.
6720
6721         GNU Libtool 2.2.8 was released.
6722
6723         Prepare for next release.
6724         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6725         number to 2.2.8.
6726         * NEWS: Update version number.
6727         * INSTALL, libltdl/config/install-sh, libltdl/config/config.guess,
6728         libltdl/config/config.sub, libltdl/config/texinfo.tex: Updated
6729         from canonical source.
6730
6731         Provide an m4sh reimplementation of announce-gen.
6732         * libltdl/config/getopt.m4sh (M4SH_GETOPTS): New macro that takes
6733         a quoted m4 list of command line options to be parsed, and
6734         generates the shell code to parse those options and collect the
6735         results into appropriately named 'opt_xxx' shell variables.  Also,
6736         add some private supporting macros, and improve the comments
6737         radically.
6738         * libltdl/config/announce-gen.m4sh: New file, to generate and
6739         optionally post (an enhancement over the gnulib perl script of the
6740         same name) a release announcement.
6741         * Makefile.maint (announce-gen): Build a new announce-gen script
6742         in the build directory, from the contents of
6743         libltdl/config/announce-gen.m4sh.
6744         * HACKING (Release Procedure): Update the instructions to use
6745         announce-gen.
6746         (Alpha release note template, Full release note template):
6747         Removed.
6748
6749 2010-05-22  Gary V. Vaughan  <gary@gnu.org>
6750
6751         Support "git log --oneline" in generated commit messages.
6752         * clcommit.m4sh (func_check_commit_msg): Insert an empty line
6753         between the ChangeLog entry summary line and the ChangeLog entry
6754         body, so that "git log --oneline" works properly.
6755         Bump copyright and version number.
6756         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6757
6758 2010-05-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6759
6760         * HACKING: Set Reply-To: in announcement emails.
6761
6762 2010-05-21  Gary V. Vaughan  <gary@gnu.org>
6763
6764         Set SCM version number to 2.2.7c.
6765         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6766         number to 2.2.7c.
6767         * NEWS: Updated.
6768
6769         GNU Libtool 2.2.7b  was released.
6770
6771         Prepare for next release candidate.
6772         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6773         number to 2.2.7b.
6774         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
6775         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: These files
6776         have been updated without a serial bump since the last release.
6777         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Bump Revision, to
6778         account for bugfixes since the last release.
6779         * libltdl/config/install-sh, libltdl/config/config.guess,
6780         libltdl/config/config.sub, libltdl/config/texinfo.tex,
6781         INSTALL: Updated from canonical source.
6782         * NEWS: Update with missing entries from ChangeLog.
6783         * HACKING: Note workaround for developer tool-path leakage bug.
6784
6785         Skip some tests in --disable-ltdl-install mode.
6786         * tests/dlloader-api.at, tests/exceptions.at,
6787         tests/lalib-syntax.at, tests/loadlibrary.at,
6788         tests/lt_dlopenext.at, tests/resident.at: Detect when these
6789         tests try to link against the not installed libltdl.la, and
6790         skip rather than FAIL.
6791
6792 2010-05-05  Peter Rosin  <peda@lysator.liu.se>
6793
6794         Clarify versioning algorithm documentation.
6795         * doc/libtool.texi (Updating version info): Be explicit
6796         about setting age to zero on interface change.
6797         Reported by Jef Driesen <jefdriesen@hotmail.com>
6798
6799 2010-05-04  Peter O'Gorman  <peter@pogma.com>
6800
6801         Ranlib is required with -force_load and fat archives.
6802         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Run
6803         ranlib.
6804         Reported by Jeremy Huddleston <jeremyhu@apple.com>
6805
6806 2010-04-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6807
6808         Fix incompatible struct declarations.
6809         * doc/libtool.texi (Dlpreopening): Remove broken documentation
6810         of lt_dlsymbol and lt_dlsymlist.  Document typedef lt_dlsymlist
6811         and symbol lt_preloaded_symbols according to the implementation.
6812         * tests/demo/dlmain.c (lt_symlist): Make struct anonymous ...
6813         (lt_dlsymlist): ... and typedef to this name.
6814         (lt_preloaded_symbols, main): Adjust.
6815         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
6816
6817 2010-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6818
6819         Use linker_flags not compiler_flags with $LD.
6820         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]
6821         <archive_cmds, archive_expsym_cmds>: With xlf and bgxlf
6822         compilers, when linking with $LD, use $linker_flags not
6823         $compiler_flags.
6824
6825 2010-03-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6826
6827         Add FAQ, and FAQ entry for flags stripped at library link time.
6828         * doc/libtool.texi (FAQ, Stripped link flags): New nodes.
6829         (Wrapper executables): Replace bug address with macro.
6830         (Compile mode, Link mode): Document `-Wc,' and `-Xcompiler '
6831         semantics better.
6832         * libltdl/config/ltmain.m4sh (func_mode_link): Rewrite comment
6833         for the flags that are passed through.
6834         Prompted by reports from Simon Richter <Simon.Richter@hogyros.de>,
6835         Török Edwin <edwintorok@gmail.com> and
6836         Åke Sandgren <ake.sandgren@hpc2n.umu.se>.
6837
6838 2010-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6839
6840         Fix preloader symbol list declaration in libltdl.
6841         * libltdl/ltdl.c (preloaded_symbols): Fix declaration to include
6842         array brackets.
6843         (lt_dlinit): Do not take address of preloaded_symbols.
6844
6845         Fix typo in libtool --help output.
6846         * libltdl/config/ltmain.m4sh (func_mode_help): Fix typo in help
6847         output.
6848
6849         Fix a couple of documentation errors.
6850         * doc/libtool.texi (Autoconf macros): Improve hyphenation.
6851         (Using libltdl): libltdl uses the Lesser General Public License,
6852         not the Library General Public License.
6853
6854         Do not use @sc nor @acronym in the manual.
6855         * doc/libtool.texi: Remove all usage of @sc.
6856
6857 2010-03-19  Chris Demetriou  <cgd@google.com>
6858
6859         Sort output of 'find' to enable deterministic builds.
6860         * libltdl/config/ltmain.m4sh (func_extract_archives): Sort
6861         output of 'find'.
6862         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Likewise.
6863         * THANKS: Update.
6864
6865 2010-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6866
6867         Unconditionally normalize LC_ALL, LANGUAGE in libtool script.
6868         * libltdl/config/ltmain.m4sh: Unconditionally set LC_ALL and
6869         LANGUAGE to 'C', to avoid semantic differences on MinGW under
6870         Chines locale.  SCO issues with e.g. LANG=C are not known to
6871         be relevant today any more.
6872         Report by Pete Batard <pbatard@gmail.com> and Xiaofan Chen
6873         <xiaofanc@gmail.com>.
6874
6875 2010-03-17  Peter Rosin  <peda@lysator.liu.se>
6876
6877         Preserve the last error when restoring the error mode.
6878         * libltdl/loaders/loadlibrary.c (wm_open): Don't rely on
6879         SetThreadErrorMode (or SetErrorMode) to not clobber the last
6880         error.
6881         Report by Ralf Wildenhues.
6882
6883         Use Get/SetThreadErrorMode if they are available.
6884         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): Replaced...
6885         (wrap_getthreaderrormode): ...by this function that checks
6886         first for GetThreadErrorMode, then GetErrorMode and makes use
6887         of either of those or...
6888         (fallback_getthreaderrormode): ...else falls back to this
6889         replacement function that implements the old workaround, which
6890         was previously implemented in...
6891         (fallback_geterrormode): ...this now renamed function.
6892         (geterrormode): Replaced...
6893         (getthreaderrormode): ...by this function pointer that points
6894         at either of wrap_getthreaderrormode, GetThreadErrorMode,
6895         GetErrorMode or fallback_getthreaderrormode.
6896         (wrap_setthreaderrormode): New function that checks if
6897         SetThreadErrorMode is supported by the system and makes use of
6898         it if it is.
6899         (fallback_setthreaderrormode): New function that is used
6900         otherwise that implements the old version using SetErrorMode.
6901         (setthreaderrormode): New function pointer that points at
6902         either of wrap_setthreaderrormode, SetThreadErrorMode or
6903         fallback_setthreaderrormode.
6904         (vm_open): Adjust to the above.
6905
6906 2010-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6907
6908         Detect Sun compiler suite with 'sun'-prefixed names.
6909         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
6910         (_LT_SYS_HIDDEN_LIBDEPS) [solaris]: Accept compiler names sunCC,
6911         sunf77, sunf90, sunf95 in addition to CC, f77, f90, f95.
6912         * NEWS: Update.
6913         Report by Vadim Zeitlin.
6914
6915 2010-02-28  Pierre Ossman  <ossman@ossman.lkpg.cendio.se>  (tiny change)
6916             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6917
6918         Fix deplibs check fallback for 64-bit Windows and Windows CE.
6919         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Accept file formats
6920         'pe-arm-wince' and 'pe-x86-64'.  Add note about consistency with ...
6921         * libltdl/config/ltmain.m4sh (func_win32_libid): ... the respective
6922         pattern here; sync pattern from the former.
6923         * tests/deplibs-mingw.at (deplibs without file command): New
6924         file, new test.
6925         * Makefile.am (TESTSUITE_AT): Update.
6926         * NEWS: Update.
6927
6928 2010-02-24  Scott McCreary  <scottmc2@gmail.com>  (tiny change)
6929
6930         Update search path on Haiku for legacy system directory.
6931         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [haiku]
6932         <sys_lib_dlsearch_path_spec>: Replace legacy
6933         /boot/beos/system/lib directory with /boot/system/lib.
6934         * THANKS: Update.
6935
6936 2010-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6937
6938         manual: fix detailmenu ordering.
6939         * doc/libtool.texi (Top): Add section for `Linking executables'
6940         in the detailmenu.
6941
6942 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
6943
6944         Guard against strerror()==NULL
6945         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main):
6946         Check return value of strerror() using nonnull().
6947         (func_emit_cwrapperexe_src:find_executable): Ditto.
6948         (func_emit_cwrapperexe_src:chase_symlinks): Ditto.
6949
6950 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
6951
6952         Document wrapper changes.
6953         * NEWS: Indicate new feature and incompatibility.
6954         * doc/libtool.texi [detailmenu]: Add reference to subsection
6955         'Wrapper executables for programs', in Platform Quirks category.
6956         [Linking executables]: Mention wrapper executables, in
6957         addition to wrapper scripts. Add menu referencing subsection
6958         'Wrapper executables for programs'.
6959         [Wrapper executables for programs]: New subsection. Documents
6960         cwrapper rationale and command line options.
6961
6962 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
6963
6964         Add --lt-* options to shell wrapper
6965         * libltdl/config/ltmain.m4sh (func_emit_wrapper): Call
6966         func_parse_lt_options early. Use func_exec_program.
6967         (func_emit_wrapper:func_parse_lt_options): New function.
6968         (func_emit_wrapper:func_lt_dump_args): New function.
6969         (func_emit_wrapper:func_exec_program_core): New function.
6970         (func_emit_wrapper:func_exec_program): New function.
6971
6972 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
6973
6974         Enable runtime cwrapper debugging; add tests
6975         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
6976         Update comments. Initialize program_name. Eliminate _LENGTH
6977         variables for string constants. In debug mode, print a
6978         banner with known content before any other output. Remove
6979         LTWRAPPER_DEBUGPRINTF macro. Add constants and variables
6980         to support new --lt-debug option.
6981         (func_emit_cwrapperexe_src:ltwrapper_debugprintf): Renamed to...
6982         (func_emit_cwrapperexe_src:lt_debugprintf): this. Only print
6983         messages if lt_debug != 0. Ensure appearance of messages
6984         conforms to GCS.
6985         (func_emit_cwrapperexe_src:lt_fatal): Ditto.
6986         (func_emit_cwrapperexe_src:lt_error_core): Ditto.
6987         (func_emit_cwrapperexe_src): Update all callers to lt_fatal.
6988         Update all users of LTWRAPPER_DEBUGPRINTF (()) to call
6989         lt_debugprintf () directly.
6990         (func_emit_cwrapperexe_src:main): Consolidate option parsing.
6991         Ensure first use of lt_debugprintf occurs after option parsing.
6992         Add stanza to parse for --lt-debug and set lt_debug variable.
6993         Use strcmp rather than strncmp, where safe.
6994         * tests/cwrapper.at: Add new tests for --lt-debug and
6995         -DLT_DEBUGWRAPPER.
6996
6997 2010-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6998
6999         Use --email with gendocs.sh.
7000         * Makefile.maint (web-manual): Pass bug reporting address to
7001         gendocs.sh.
7002
7003         Make testsuite code C++ clean again.
7004         * tests/resident.at (resident modules): Fix for C++.
7005
7006 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
7007             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7008
7009         Testsuite exposure for dlloader API.
7010         * tests/dlloader-api.at: New file, new test.
7011         * Makefile.am (TESTSUITE_AT): Update.
7012
7013 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
7014
7015         * tests/loadlibrary.at: Fix C++ issues.
7016
7017 2010-01-20  Peter Rosin  <peda@lysator.liu.se>
7018
7019         Report proper errors from the loadlibrary loader.
7020         * libltdl/loaders/loadlibrary.c (loadlibraryerror): New
7021         helper function that returns the latest Windows error as a
7022         string, or the provided default string on failure to do so.
7023         (LOADLIB_SETERROR): New macro that wraps previous to make it
7024         easy to use.
7025         (vm_open, vm_close, vm_sym): Make use of previous.
7026         (LOCALFREE): New macro to help free the Windows error string.
7027         (vl_exit): Make use of previous.
7028         * tests/loadlibarry.at: New file, new test that makes sure
7029         the loadlibrary loader reports non-standard error messages.
7030         * Makefile.am (TESTSUITE_AT): Add above test.
7031
7032 2010-01-02  Peter Rosin  <peda@lysator.liu.se>
7033
7034         Use GetErrorMode if it is available.
7035         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): New
7036         function that checks if GetErrorMode is supported by the
7037         system and makes use of it if it is.
7038         (fallback_geterrormode): New function that is used otherwise
7039         that implements the old workaround.
7040         (geterrormode): New function pointer that points at either
7041         of the above or directly at GetErrorMode.
7042         (vm_open): Make use of the above.
7043
7044 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7045
7046         Ensure functions from resident modules work in atexit handlers.
7047         * tests/resident.at (resident modules): New file, new test.
7048         * Makefile.am (TESTSUITE_AT): Adjust.
7049         Report by Bob Friesenhahn.
7050
7051         Testsuite exposure for relative output file names and deplibs.
7052         * tests/deplib-in-subdir.at (deplib in subdir): New file, new
7053         test.
7054         * Makefile.am (TESTSUITE_AT): Update.
7055         Prompted by report from Bob Friesenhahn.
7056
7057 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7058             Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7059
7060         Testsuite exposure for C++ exception handling.
7061         * tests/exceptions.at (C++ exception handling): New file, new
7062         test.
7063         * Makefile.am (TESTSUITE_AT): Update.
7064         Report by Bob Friesenhahn.
7065
7066 2010-01-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7067
7068         Bump copyright years.
7069         * ChangeLog.2009: New, rotated from ...
7070         * ChangeLog: ... here.
7071         * Makefile.am (EXTRA_DIST): Add ChangeLog.2009.
7072         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
7073         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
7074         * libtoolize.m4sh: Likewise.
7075
7076 2009-12-30  Peter Rosin  <peda@lysator.liu.se>
7077
7078         * libltdl/ltdl.c (lt_dlerror): Remove meaningless conditional.
7079
7080 2009-12-29  Peter Rosin  <peda@lysator.liu.se>
7081
7082         * libltdl/ltdl.c (file_not_found): Fix typos in code comment.
7083
7084 2009-12-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7085
7086         Replace last __oline__ instance.
7087         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Replace last
7088         __oline__ instance with $LINENO.
7089
7090 2009-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7091
7092         Improve parsing of .la files in libltdl.
7093         * libltdl/ltdl.c (trim): Do not dump core upon missing quote in
7094         module .la file.
7095         * tests/lalib-syntax.at (syntax of .la files): New file, new
7096         test.
7097         * Makefile.am (TESTSUITE_AT): Add tests/lalib-syntax.at.
7098         Report by Bob Friesenhahn.
7099
7100 2009-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7101
7102         Sane fallback initialization of $ECHO from $as_echo.
7103         * libltdl/config/general.m4sh: Use 'printf %s\n' if $as_echo is
7104         unset.
7105         * tests/testsuite.at: Likewise.
7106         * THANKS: Update.
7107         Report by Vadim Zeitlin and Peter Rosin.
7108
7109 2009-12-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7110
7111         lt_dlloader_remove and lt_dlloader_find accept const arguments.
7112         * libltdl/lt_dlloader.c (lt_dlloader_remove, lt_dlloader_find):
7113         Accept `const char *' arguments, as documented.  Cast them to
7114         `void *' for the slist machinery.
7115         * libltdl/libltdl/lt_dlloader.h: Adjust prototypes.
7116
7117         Test and fix slist.c.
7118         * libltdl/libltdl/slist.h: Include stddef.h, for size_t.
7119         (slist_remove): Return pointer to SList, not void.
7120         * libltdl/slist.c: Include stdlib.h, for malloc and free.
7121         (slist_remove): Adjust prototype as above.
7122         (slist_sort): Do not loop forever on one-item list.
7123         * tests/slist.at (SList functionality): New file, new test.
7124         * Makefile.am (TESTSUITE_AT): Add tests/slist.at.
7125
7126 2009-11-30  Peter Rosin  <peda@lysator.liu.se>
7127
7128         Please C++ compilers when calling strrchr.
7129         * libltdl/ltdl.c (has_library_ext): Match the return type of
7130         strrchr with the first argument to please C++ compilers.
7131         Report by Peter O'Gorman.
7132
7133 2009-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7134
7135         Fix bindir and dlopen tests for C++ compilers (CC=g++).
7136         * tests/bindir.at (bindir basic lib test, bindir install tests):
7137         Include stdlib.h rather than declaring abort.
7138         * tests/lt_dlopenext.at (lt_dlopenext error messages): Use
7139         `extern "C"' annotation for dlsym'ed function in C++ mode.
7140
7141 2009-11-25  Peter Rosin  <peda@lysator.liu.se>
7142
7143         Fix cross build issue in execute mode test.
7144         * tests/execute-mode.at: Skip test for cross builds.
7145
7146 2009-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7147
7148         Enable symbol versioning with the GNU gold linker.
7149         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Accept 'GNU gold'
7150         in the version string.
7151         * NEWS, THANKS: Update.
7152         Report by Peter Fritzsche.
7153
7154         Tighten regex for Portland C++ compiler for version 10.
7155         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [linux]:
7156         Match a dot after version 1 through 5, so 10 and up don't match,
7157         and use weak symbols.
7158         * THANKS: Update.
7159         Report by Jeff Squyres and Brent Leback.
7160
7161 2009-11-16  Peter O'Gorman  <peter@pogma.com>
7162
7163         Update libltdl version to match 2.2.6b release.
7164         * libltdl/Makefile.inc: Make version 9:1:2
7165
7166 2009-11-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7167
7168         Don't load module.la from current directory by default.
7169         * libltdl/ltdl.c (try_dlopen): Do not attempt to load an
7170         unqualified module.la file from the current directory (by
7171         default) since doing so is insecure and is not compliant with
7172         the documentation.
7173         * tests/testsuite.at: Qualify access to module.la file in
7174         current directory so that test passes.
7175
7176 2009-11-14  Peter O'Gorman  <peter@pogma.com>
7177
7178         Only use preopen loader to load preopened archives
7179         * libltdl/ltdl.c: Limit checking of .a to preopen loader.
7180         * tests/lt_dlopen_a.at: Add test.
7181         * Makefile.am: Add test.
7182
7183 2009-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7184
7185         Recognize `pgfortran' as Portland compiler.
7186         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS):
7187         Accept `pgfortran*' too.
7188         Report by Jeff Squyres.
7189
7190 2009-11-04  Alexandre Oliva  <aoliva@redhat.com>
7191             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7192
7193         Fix verbose link extraction for multiply reconfigured GCC.
7194         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
7195         <output_verbose_link_cmd>: Drop GCC lines "Configured with" that
7196         may contain unrelated flags.
7197
7198 2009-11-02  Eric Blake  <ebb9@byu.net>
7199
7200         Allow gcc builds with -Wall -Werror.
7201         * libltdl/ltdl.c (try_dlopen): Use strlen rather than LT_STRLEN on
7202         an array that will never be NULL.
7203
7204 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7205
7206         Fix func_normal_abspath sed script for Solaris.
7207         * libltdl/config/general.m4sh (pathcar, pathcdr, removedotparts)
7208         (collapseslashes, finalslash): Use single quotes, for clarity.
7209         (removedotparts): Avoid \{N,M\} after subexpression \(...\), for
7210         Solaris /bin/sed.
7211
7212         Improve versioning algorithm documentation.
7213         * doc/libtool.texi (Updating version info): Repeat the
7214         algorithms in different, hopefully simpler terms.
7215         * THANKS: Update.
7216         Prompted by Richard B. Kreckel.
7217
7218 2009-11-01  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
7219
7220         Support for the Haiku operating system.
7221         * libltdl/config/ltmain.m4sh (func_mode_link): Add cases for
7222         `*-*-haiku*' alongside `*-*-beos*'.
7223         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
7224         (_LT_CHECK_MAGIC_METHOD, LT_LIB_M, _LT_COMPILER_PIC)
7225         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Add cases for
7226         `haiku*'.
7227         * NEWS, THANKS: Update.
7228
7229 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7230
7231         Fix quoting of AS, DLLTOOL, and OBJDUMP for the libtool script.
7232         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Quote values of
7233         $AS, $DLLTOOL, and $OBJDUMP, so they can contain arguments.
7234         * THANKS: Update.
7235         Report by Matthijs Kooijman.
7236
7237 2009-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7238
7239         Initial support for the Cuda Compiler Driver on Linux.
7240         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept source
7241         file extensions `.cu' and `.cup'.
7242         * libltdl/m4/libtool.m4 (_LT_COMPILER_NO_RTTI, _LT_COMPILER_PIC)
7243         (_LT_LINKER_SHLIBS): Support for `nvcc' compiler driver.
7244         * NEWS, THANKS: Update.
7245         Report by Mahesh Narayanamurthi.
7246
7247 2009-09-12  Dave Korn  <dave.korn.cygwin@googlemail.com>
7248
7249         Control where win32 DLLs get installed.
7250         * libltdl/config/general.m4sh (func_normal_abspath): New function.
7251         (func_relative_path): Likewise.
7252         * libltdl/config/ltmain.m4sh (func_mode_help): Document "-bindir".
7253         (func_mode_link): Accept new "-bindir" option and use it, if
7254         supplied, to place Windows DLLs.
7255         * tests/bindir.at: New file for install tests using "-bindir".
7256         * Makefile.am (TESTSUITE_AT): Add bindir.at.
7257         * doc/libtool.texi (Link Mode): Update documentation.
7258         * NEWS, THANKS: Update.
7259
7260 2009-09-11  Akim Demaille  <demaille@gostai.com>
7261
7262         libtool: clean libconftest.a.
7263         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Here.
7264
7265 2009-09-10  Peter Rosin  <peda@lysator.liu.se>
7266
7267         func_win32_libid doesn't work with MS dumpbin
7268         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): The $NM
7269         interface is assumed to be BSD nm in func_win32_libid, so
7270         check for that before using it.
7271
7272 2009-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7273
7274         Allow dlopen self test to work with gcc's -fvisibility=hidden.
7275         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Declare default
7276         visibility for the symbol we are going to test dlopen (NULL)
7277         when a GCC version is used that understands the visibility
7278         attribute, under the assumption that if -fvisibility=hidden
7279         will be used, the user code will be sufficiently annotated
7280         for visibility of needed symbols from the main executable.
7281         * THANKS: Update.
7282         Report by Josh Hursey against OpenMPI.
7283
7284         Fix and split recent testsuite addition for compile/link flags.
7285         * tests/flags.at (passing flags through libtool): Split into ...
7286         (passing CC flags through libtool)
7287         (passing CXX flags through libtool)
7288         (passing F77 flags through libtool)
7289         (passing FC flags through libtool)
7290         (passing GCJ flags through libtool): ... these five tests,
7291         factorized with m4_foreach.  Fix F77 and FC compile and link
7292         commands; add GCJ tag.  Use LT_AT_TAG to correctly skip tags
7293         for which no compiler exists.  Use $EXEEXT where appropriate.
7294         Drop unneeded use of reload_cmds.
7295         Reports by Peter Rosin and Peter O'Gorman.
7296
7297 2009-09-07  Peter O'Gorman  <peter@pogma.com
7298
7299         Fix redirect in test case.
7300         * tests/darwin.at: Fix stderr redirect.
7301
7302         Use darwin's -force_load flag if available for whole_archive_flag_spec
7303         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check for
7304         -force_load and use it if there.
7305         * tests/darwin.at: Add a simple test.
7306
7307 2009-09-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7308
7309         Testsuite keyword 'interactive' and check-* rules.
7310         * Makefile.am (testsuite_deps, testsuite_deps_uninstalled):
7311         New variables.
7312         (check-local, installcheck-local): Use them.
7313         (check-interactive, check-noninteractive): New rules.
7314         * tests/link-order2.at (Link order of deplibs),
7315         tests/static.at (static linking flags for programs): Add keyword
7316         `interactive'.
7317         * doc/libtool.texi (Test descriptions): Document all keywords
7318         used in the Libtool test suite.
7319         * NEWS: Update.
7320
7321         Fix failure test in the presence of --with-pic or -prefer-pic.
7322         * tests/fail.at (Failure tests): Run non-PIC failure test only
7323         if pic_mode is 'default' or 'no', rather than 'default' or 'yes'
7324         and also -prefer-pic has not been passed in $CFLAGS.
7325         * THANKS: Update.
7326         Report by Donn Washburn.
7327
7328         Add testsuite exposure for passing of compiler and linker flags.
7329         * tests/flags.at (passing flags through libtool): New file, new
7330         test, for bug fixed in previous commit.
7331         * Makefile.am (TESTSUITE_AT): Add tests/flags.at.
7332
7333 2009-09-04  Peter Rosin  <peda@lysator.liu.se>
7334
7335         Make -Wc,FLAG behave like -Xcompiler FLAG in link mode.
7336         * libltdl/config/ltmain.m4sh (func_mode_link): Remove "-Wc,"
7337         instead of replacing it with "$wl" when linking programs
7338         through the compiler driver, just as is the case when linking
7339         libraries.
7340         * NEWS: Update.
7341
7342 2009-08-23  Lennart Poettering  <lennart@poettering.net>  (tiny change)
7343
7344         Shut up prototype warnings with recent GCC and -Wstrict-prototypes.
7345         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Use recent
7346         GCC's diagnostic pragma to override a -Wstrict-prototypes
7347         setting for the symbol list code.
7348         * THANKS: Update.
7349
7350 2009-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7351
7352         Remove __oline__ from macros, for less spurious configure diffs.
7353         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
7354         (_LT_COMPILER_C_O, LT_PATH_NM): Replace __oline__ instances with
7355         $LINENO.
7356         * NEWS: Update.
7357
7358 2009-07-24  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
7359
7360         Fixup 'execute mode' test for w32.
7361         * tests/execute-mode.at (execute mode): Add missing $EXEEXT.
7362         (LDFLAGS): Add -no-undefined.
7363
7364 2009-07-01  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
7365             Charles Wilson  <libtool@cwilson.fastmail.fm>
7366
7367         [CXX] Use correct export_dynamic_flag_spec for PE-COFF $hosts
7368         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [cygwin*|mingw*|pw32*|cegcc*]:
7369         Define export_dynamic_flag_spec as -Wl,--export-all-symbols here as well
7370         (see commit 5f2bbb494a2753afb2878c399cfd8316b7403a5b).
7371
7372 2009-06-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
7373
7374         [mingw] Improve sys_lib_search_path_spec detection.
7375         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Fix handling
7376         of dos-style paths when parsing $CC -print-search-dirs output.
7377
7378 2009-06-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
7379
7380         Finish adding alias for obsoleted AC_LIBTOOL_RC macro.
7381         * libltdl/m4/libtool.m4: Add reminder comment concerning
7382         aclocal-1.4 backwards compatibility.
7383         * libltdl/m4/lt~obsolete.m4: Remove unnecessary AC_DEFUN.
7384
7385 2009-06-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
7386
7387         Add alias for obsoleted AC_LIBTOOL_RC macro.
7388         * libltdl/m4/libtool.m4: Add alias for obsoleted
7389         macro AC_LIBTOOL_RC.
7390
7391 2009-06-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
7392
7393         Remove unneeded functions and options from cwrapper
7394         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
7395         [lt_opt_process_env_set]: Remove.
7396         [lt_opt_process_env_prepend]: Remove.
7397         [lt_opt_process_env_append]: Remove.
7398         [lt_split_name_value]: Remove.
7399         [file scope]: Don't declare removed functions. Remove
7400         constants and defines related to eliminated commandline
7401         options.
7402         [main]: Remove code related to eliminated commandline
7403         options --lt-env-set, --lt-env-prepend, --lt-env-append.
7404
7405 2009-06-19  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
7406             Charles Wilson  <libtool@cwilson.fastmail.fm>
7407
7408         Ensure LT_PATH_LD works when called before LT_INIT
7409         * libltdl/m4/libtool.m4 (LT_PATH_LD): AC_REQUIRE _LT_PROG_ECHO_BACKSLASH.
7410
7411 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7412
7413         Add versioning tests.
7414         * tests/versioning.at (versioning): New file, new test.
7415         * Makefile.am (TESTSUITE_AT): Adjust.
7416         Prompted by bug report from Mike Gorchak.
7417
7418 2009-06-14  Mike Gorchak  <mike@malva.ua>  (tiny change)
7419             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7420
7421         Fix versioning computation for QNX.
7422         * libltdl/config/ltmain.m4sh (func_mode_link): Set `$current'
7423         and `$age' properly for version_type `qnx'.
7424
7425 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7426
7427         Avoid spurious localization testsuite failure on HP-UX/ia64.
7428         * tests/localization.at (localized compiler messages): Skip test
7429         if the compiler warning output contains `locale', for HP-UX.
7430
7431 2009-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7432
7433         Fix concurrent extraction of convenience libraries on Darwin.
7434         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): New libtool
7435         variable `lock_old_archive_extraction', set to `yes' on darwin.
7436         * doc/libtool.texi (libtool script contents): Document it.
7437         * libltdl/config/ltmain.m4sh (func_extract_an_archive): Lock
7438         `ar x' invocation if `lock_old_archive_extraction' is yes.
7439         * tests/darwin.at (darwin concurrent library extraction): New
7440         test.
7441         * NEWS: Update.
7442         Report by Akim Demaille.
7443
7444 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7445
7446         Fix testsuite failure of lt_dlopenadvise test on FreeMiNT.
7447         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Do not
7448         build moddepend for systems without shared libraries.
7449         Report by Alan Hourihane.
7450
7451         testsuite: avoid failures due to old Automake.
7452         * tests/configure-iface.at (installable libltdl)
7453         (--with-ltdl-include/lib, --with-included-ltdl):
7454         Speficy libmodule_la_SOURCES in Makefile.am as the default
7455         source file naming scheme changed in Automake 1.8.
7456         * tests/nonrecursive.at (_LT_AT_LTDL_SETUP): Require Automake
7457         1.9.6.
7458         * THANKS: Update.
7459         Report by Robert Garron.
7460
7461         testsuite: add missing @LIBS@ in a link command line.
7462         * tests/old-m4-iface.at (AC_WITH_LTDL): Use @LIBS@ when linking.
7463         Report by Patrice Fromy.
7464
7465         testsuite: cope when some installed libltdl.la has been removed.
7466         * tests/old-m4-iface.at (AC_WITH_LTDL): Pass --with-included-ltdl
7467         to configure, to ensure we do not accidentally link against a
7468         previously installed libltdl.so where the corresponding .la
7469         file has been removed, thus we do not add a run path, and the
7470         runtime linker then fails to find libltdl.so.7.
7471         * tests/configure-iface.at (--with-ltdl-include/lib): Remove -L
7472         flags from LDFLAGS to avoid picking up an installed libltdl
7473         outside of the default locations.
7474         * THANKS: Update.
7475         Prompted by report from Patrice Fromy.
7476
7477 2009-06-07  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
7478
7479         Fix C wrapper invocation for ceGCC hosts (cegcc and mingw32ce).
7480         * libltdl/config/ltmain.m4sh (func_mode_link): do not generate
7481         C wrapper for cegcc and mingw32ce hosts.
7482         (func_emit_cwrapperexe_src): remove useless check on
7483         __MINGW32CE__.
7484
7485 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7486
7487         Don't pick up double-quotes from /etc/ld.so.conf on Ubuntu.
7488         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
7489         <sys_lib_dlsearch_path_spec>: Remove embedded double quotes from
7490         paths picked up from /etc/ld.so.conf.  Fixes libltdl compile
7491         failure on Ubuntu 7.10.
7492         * THANKS: Update.
7493         Report by Camilo La Rota.
7494
7495 2009-06-06  Richard Sandiford  <richards@transitive.com>
7496
7497         Fix GNU nm invocation for AIX.
7498         * libldtl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
7499         <export_symbols_cmds>: Modify the GNU-nm-on-AIX version so that
7500         it adds weak defined symbols to the export list.
7501
7502         Build AIX shared libraries with binutils 2.19.50+.
7503         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
7504         <lt_use_gnu_ld_interface>: New variable to control whether the
7505         GNU ld or native ld interface is used.  Set to "no" for GNU ld
7506         2.19.50+ on AIX, otherwise mirror $with_gnu_ld.  Update the
7507         warning message that is printed when using GNU ld on AIX.
7508         Adjust the whole_archive_flag_spec value for GNU ld on AIX.
7509         * NEWS, THANKS: Update.
7510
7511 2009-05-27  Peter O'Gorman  <peter@pogma.com>
7512
7513         Don't run compiler checks twice.
7514         libltdl/m4/libtool.m4 (_LT_PROG_FC, _LT_PROG_F77,
7515         _LT_PROG_CXX): Remove these macros.
7516         libltdl/m4/lt~obsolete.m4: Add removed macros here.
7517         libltdl/m4/libtool.m4 (_LT_LANG_FC_CONFIG, _LT_LANG_F77_CONFIG,
7518         _LT_LANG_CXX_CONFIG): Remove references to removed macros, and
7519         move functionality here.
7520         NEWS: Update.
7521
7522 2009-05-05  Rainer Emrich  <r.emrich@de.tecosim.com>  (tiny change)
7523             Peter Rosin  <peda@lysator.liu.se>
7524             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7525
7526         Fix cross compilation for HPPA/64 with a BSD file command.
7527         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
7528         [hpux10.20*, hpux11*, !ia64] <lt_cv_deplibs_check_method>:
7529         Match the dot in `PA-RISC 2.0' literally.  Adjust hppa*64*
7530         pattern to also match BSD `file' output, used in cross
7531         compilation setups.
7532         * THANKS: Update.
7533         Report and initial patch by Rainer Emrich, refined by Peter
7534         Rosin.
7535
7536 2009-05-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7537
7538         libtoolize: ignore trailing junk on scriptversion line.
7539         * libtoolize.m4sh (func_install_update): Ignore semi-colon or
7540         comment-sign and all following characters when parsing a
7541         `scriptversion' line in one of the auxiliary scripts; recent
7542         Automake-provided script have a stylized comment to induce
7543         Emacs to use UTC.
7544         Exposed by the `libtoolize config files serial update' test.
7545
7546 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7547
7548         Skip localization test when setlocale is not functional.
7549         * tests/localization.at (localized compiler messages): Skip
7550         test when there is a warning about `LC_ALL'.
7551         * THANKS: Update.
7552         Report by Maciej Helminiak.
7553
7554 2009-05-02  Alan Hourihane  <alanh@fairlite.co.uk>  (tiny change)
7555
7556         Improved support for FreeMiNT.
7557         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [mint]: Hard-code
7558         command line length limit to 8192, to avoid long test.
7559         * NEWS, THANKS: Update.
7560
7561 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7562
7563         Initial port for BlueGene BG/L.
7564         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
7565         (_LT_LANG_CXX_CONFIG) [linux]: Detect bgxl*, bgf*, mpixl*
7566         compilers.
7567         * NEWS, THANKS: Update.
7568         Report, feedback and testing by John R. Cary and Christian
7569         Rössel.
7570
7571         manual: fix grammaros.
7572         * doc/libtool.texi (Dlpreopening): Fix grammaro.
7573         (C header files): Remove duplicate word.
7574
7575         Allow through -tp=* at link time, for pgcc.
7576         * libltdl/config/ltmain.m4sh (func_mode_link): Portlant Group
7577         pgcc uses `-tp=PROCESSOR' for target processor selection; allow
7578         the flag through at link time.
7579         Report by Ethan Mallove.
7580
7581         Fix quoting of eval'ed variable.
7582         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Double-quote
7583         $lt_cv_sys_global_symbol_pipe for eval, like we do in ltmain,
7584         in order to preserve TABs and multiple adjacent whitespace.
7585         Report by Bruno Haible.
7586
7587 2009-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7588
7589         Cope better with missing `makeinfo' in `bootstrap'.
7590         * bootstrap: Update `./doc/notes.txt' last so missing `makeinfo'
7591         does not cause a broken tree.
7592         * THANKS: Update.
7593         Report by Christian Rössel.
7594
7595 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
7596             Charles Wilson  <libtool@cwilson.fastmail.fm>
7597
7598         [cygwin] Improve operation with gcc4
7599         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [cygwin*]:
7600         Add w32api to sys_lib_search_path_spec without overriding gcc's
7601         own search path.
7602
7603 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
7604             Charles Wilson  <libtool@cwilson.fastmail.fm>
7605
7606         Use correct export_dynamic_flag_spec for PE-COFF $hosts
7607         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) 
7608         [cygwin*|mingw*|pw32*|cegcc*]: Define export_dynamic_flag_spec
7609         as -Wl,--export-all-symbols, as required by GNU ld for PE-COFF.
7610
7611 2009-03-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
7612
7613         Improve compatibility with older automake
7614         * libltdl/m4/lt~obsolete.m4: Add AC_DEFUNs for
7615         _LT_PREPARE_SED_QUOTE_VARS and _LT_PROG_ECHO_BACKSLASH.
7616         Report by Yaakov Selkowitz.
7617
7618 2009-03-20  Peter Rosin  <peda@lysator.liu.se>
7619
7620         LT_OUTPUT should always create the libtool script.
7621         * libltdl/m4/libtool.m4 (LT_OUTPUT): Make LT_OUTPUT ignore the
7622         --no-create configure option, and assume that the user wants
7623         to use an up-to-date libtool script if the LT_OUTPUT macro is
7624         present.
7625         * tests/early-libtool.at: Make sure we do not regress.
7626
7627 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
7628
7629         Don't settle for any dumpbin/link program as name lister.
7630         * libltdl/m4/libtool.m4 (LT_PATH_NM): When locating dumpbin or
7631         link -dump, check if they appear to really be capable of name
7632         listing, in order to eliminate e.g. link from coreutils. This
7633         makes the name lister decision fall back on nm as the default if
7634         no acceptable candidate is found, which mainly happens on
7635         (arguably broken) cross compiles.
7636         * NEWS: Update
7637         * THANKS: Update
7638         Reports by Rudolf Leitgeb and Peter Kjellerstedt.
7639
7640 2009-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7641
7642         Document INNER_TESTSUITEFLAGS, drop leading space.
7643         * README: Document INNER_TESTSUITEFLAGS.
7644         * tests/cmdline_wrap.at (Run tests with low max_cmd_len):
7645         When using INNER_TESTSUITEFLAGS on the testsuite invocation,
7646         drop leading space after "-k libtool", so that the user may
7647         further limit the set of tests to be run.
7648
7649 2009-03-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7650
7651         Fix low max_cmd_len template test on UnixWare.
7652         * libltdl/config/ltmain.m4sh (func_mode_link): When expanding
7653         $reload_cmds, always put objects in $reload_objs rather than
7654         adding them to the command line, to allow more general command
7655         lines in reload_cmds.  Ensure $reload_objs contains a leading
7656         space.
7657         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
7658         sco3.2v5*, sco5v6*] <reload_cmds>: For CC, invoke prelinker
7659         before creating reloadable object.
7660         (_LT_CMD_RELOAD) <reload_cmds, reload_flag>: Declare as
7661         _LT_TAGDECL, not _LC_DECL.
7662         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
7663         (_LT_LANG_GCJ_CONFIG) <reload_cmds, reload_flag>: Initialize
7664         from default (C tag) value.
7665         * THANKS: Update.
7666         Report and analysis by Tim Rice and John Wolfe.
7667
7668 2009-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7669
7670         * doc/libtool.texi (Distributing libltdl, Test descriptions):
7671         Add missing parentheses.
7672
7673 2009-02-28  Tim Rice  <tim@multitalents.net>
7674
7675         Fix C++ template handling for old archives on UnixWare 7.1.4.
7676         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
7677         sco3.2v5*, sco5v6*] <old_archive_cmds>: For CC, add template
7678         prelink step before archiving.  Fixes template.at test failures.
7679
7680 2009-02-28  Török Edwin  <edwintorok@gmail.com>  (tiny change)
7681             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7682
7683         Do not add bogus directory arguments to link command lines.
7684         * libltdl/config/ltmain.m4sh (func_mode_link): Ensure $path is
7685         always initialized before it is used.  Reported for zsh, for
7686         which $path contains $PATH entries even after "emulate sh", see
7687         <http://bugs.debian.org/517501>.
7688
7689 2009-02-28  Andreas Schwab  <schwab@suse.de>
7690             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7691
7692         Remove remaining references to CVS.
7693         * bootstrap: Remove references to CVS.
7694         * README.alpha: Likewise.
7695         * clcommit.m4sh: Likewise.
7696         * doc/libtool.texi: Bump copyright years.
7697         (libtool script contents): Describe macro_revision as revision
7698         without reference to CVS.
7699
7700 2009-02-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7701
7702         Do not pass $INSTALL via TESTS_ENVIRONMENT.
7703         * Makefile.am (TESTS_ENVIRONMENT): Set lt_INSTALL, not INSTALL,
7704         so that a bogus relative path to the install-sh script in the
7705         source tree is not propagated to the configure scripts of the
7706         old test suite.
7707         * tests/testsuite.at: Adjust.
7708         * tests/install.at (Install tests): Likewise.
7709
7710 2009-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7711             Kurt Roeckx <kurt@roeckx.be>
7712
7713         New test for lt_dlopenext error message.
7714         * tests/lt_dlopenext.at (lt_dlopenext error messages): New file,
7715         with new test, with sources taken from the Autobook example.
7716         * Makefile.am: Update.
7717
7718 2009-02-03  Kurt Roeckx <kurt@roeckx.be>
7719
7720         lt_dlopenext sets error upon successful library load.
7721         * libltdl/ltdl.c (lt_dlopenadvise): Fix bogus error on
7722         successful loading of library with lt_dlopenext.
7723         Report by Kaiwang Chen in <http://bugs.debian.org/510006>.
7724
7725 2009-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7726
7727         Fix sed script in install.at.
7728         * tests/install.at (Install tests): Fix typo in sed script,
7729         fixes test failure on HP-UX.
7730
7731         Fix $INSTALL in testsuite with relative path to install-sh.
7732         * tests/testsuite.at: If `$INSTALL' points to in-tree
7733         install-sh, override a possibly-relative path to it with an
7734         absolute one.
7735
7736         install mode: do not pass `-m $install_override_mode' to cp.
7737         * libltdl/config/ltmain.m4sh (func_mode_install): New variable
7738         $install_cp, factor test when `cp' is used for installation.
7739         Do not pass mode override to cp.  Fixes `libtool --mode=install
7740         cp ...' on HP-UX; cp should not be used for libraries that might
7741         be needed by programs invoked during the installation process.
7742
7743         Fix sed script portability issue in func_version.
7744         * libltdl/config/getopt.m4sh (func_version): Remove space in
7745         `/\./! {' sed command, to please HP-UX sed.
7746
7747 2009-01-31  Jeff Squyres <jsquyres@cisco.com>
7748             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7749
7750         New test for bogus lt_dlopen error message.
7751         * tests/lt_dlopen.at (lt_dlopen error messages): New file, new
7752         test, marked as XFAIL for now.
7753         * Makefile.am: Adjust.
7754         Report and reproducible test case by Jeff Squyres.
7755
7756 2009-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7757
7758         execute mode: do not transform *.lo or *.la arguments.
7759         * libltdl/config/ltmain.m4sh (func_mode_execute): Do not check
7760         arguments matching *.lo or *.la for script wrappers.
7761         * tests/execute-mode.at (execute mode): Add tests.
7762         * NEWS, THANKS: Update.
7763         Report by Paul Biggar.
7764
7765         Nonexistent `main' does not guarantee link failure.
7766         * tests/fail.at (Failure tests): Use an unresolved symbol,
7767         rather than non-presence of `main', to provoke a link failure
7768         also on QNX.  Only check for failure of the libtool script if
7769         the link without libtool would have failed, too.
7770         Report by Mike Gorchak.
7771
7772         Use AT_CHECK more liberally in duplicate members test.
7773         * tests/duplicate_members.at (duplicate members in archive
7774         tests): Wrap link commands in AT_CHECK, they might fail, as seen
7775         on QNX.
7776         * THANKS: Update.
7777         Report by Mike Gorchak.
7778
7779 2009-01-30  Akim Demaille  <demaille@gostai.com>
7780
7781         Fix cwrapper warnings from MSVC 2005.
7782         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
7783         [file scope]: define _CRT_SECURE_NO_DEPRECATE.
7784
7785 2009-01-29  Akim Demaille  <demaille@gostai.com>
7786
7787         Fix bootstrap with older libtool.m4 in reach of aclocal.
7788         * libltdl/m4/lt~obsolete.m4: Add stub definitions for
7789         _LT_REQUIRED_DARWIN_CHECKS and _LT_AC_PROG_CXXCPP.
7790
7791         Fix func_exec_init.
7792         * tests/defs.m4sh (func_exec_init): Instead of using the undefined
7793         my_dir, call func_dirname_and_basename and use its result.
7794         (func_make): For consistency, don't use the useless local variable
7795         my_dir.
7796
7797 2009-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7798
7799         Document --mode short-hands better, and test them.
7800         * doc/libtool.texi (Invoking libtool): Give examples for using
7801         the `--mode=MODE' short-hand `MODE', or abbreviations thereof.
7802         * libltdl/config/ltmain.m4sh: Mention the short-hand for MODE
7803         in the --help output.
7804         * tests/help.at (mode short-hands): New test group.
7805         Suggestion by Bruno Haible.
7806
7807         func_version copes with multi-line copyright headers.
7808         * libltdl/config/getopt.m4sh (func_version): Slurp in copyright
7809         lines until a period is found.
7810         * libltdl/config/ltmain.m4sh: Multi-line copyright is ok to use
7811         now.
7812         * tests/help.at (standard command line options): New file, new
7813         tests.  Make this test group the first one for libtool tests,
7814         moving the banner ...
7815         * tests/duplicate_members.at: ... from here.
7816         * Makefile.am (TESTSUITE_AT): Add tests/help.at.
7817
7818 2009-01-29  Akim Demaille  <demaille@gostai.com>
7819             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7820
7821         Normalize compiler output due to compiler wrappers.
7822         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT): New
7823         macro, to normalize ccache and distcc output.
7824         * tests/localization.at (localized compiler messages): Use it.
7825
7826 2009-01-29  Peter Rosin  <peda@lysator.liu.se>
7827
7828         Make modified libtool script in cwrapper test executable
7829         * tests/cwrapper.at: Make modified libtool script executable.
7830         Report by Roumen Petrov.
7831
7832 2009-01-28  Akim Demaille  <demaille@gostai.com>
7833
7834         Clean space uses.
7835         * libtoolize.m4sh: Remove trailing spaces.
7836         Use <tab><sp>, as some editors remove "useless" spaces in
7837         <sp><tab>.
7838
7839 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
7840
7841         AWK is required, make sure it is set.
7842         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS: Make sure
7843         AWK is set (automake brings it in, but is not always used).
7844         Fixes old-m4-iface.at on MSYS/MSVC.
7845
7846 2009-01-25  Mike Frysinger  <vapier@gentoo.org>
7847
7848         Fix typo in libtool install mode documentation.
7849         * libltdl/config/ltmain.m4sh (func_mode_help): Change -inst-prefix
7850         to -inst-prefix-dir.
7851         * doc/libtool.texi (Install mode): Likewise.
7852
7853 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
7854
7855         Add -Wall to cwrapper tests.
7856         * tests/cwrapper.at: Add -Wall existing tests. Add additional
7857         round of tests with -Wall alone.
7858
7859 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
7860
7861         [cygwin|mingw] cwrapper cleanups.
7862         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
7863         [file scope]: re-organized includes and portability
7864         macros. Avoid oldnames on MINGW32 and MSVC for
7865         setmode/stat/chmod/getcwd/putenv. Declare _putenv on
7866         MINGW32 when -ansi. Use namespaced macro LT_DEBUGWRAPPER.
7867
7868 2009-01-24  Peter Rosin  <peda@lysator.liu.se>
7869
7870         Expand exit status test in LT_AT_NOINST_EXEC_CHECK correctly
7871         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): STATUS is
7872         argument $3, not $2.
7873
7874 2009-01-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
7875
7876         Add tests for cwrapper with -std=c89 and -std=c99
7877         * tests/cwrapper.at: New file.
7878         * Makefile.am: Add tests/cwrapper.at.
7879
7880 2009-01-22  Peter Rosin  <peda@lysator.liu.se>
7881
7882         Unify line endings in localization test.
7883         * tests/testsuite.at: Update copyright year.
7884         (LT_AT_UNIFY_NL): Add macro that unifies line endings on
7885         platforms that suffer from such confusion.
7886         * tests/localization.at: Use it. Update copyright year. Fixes
7887         the test on MSYS/MSVC.
7888
7889 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
7890
7891         [cygwin|mingw] Fix compile warnings when -std=c89.
7892         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
7893         move contents to...
7894         (func_emit_wrapper_part2): move contents to...
7895         (func_emit_wrapper): here.
7896         (func_emit_cwrapperexe_src) [file scope]: Remove
7897         variables script_text_part1 and script_text_part2.
7898         (func_emit_cwrapperexe_src) [lt_dump_script]: New function.
7899         (func_emit_cwrapperexe_src) [main]: Call it.
7900
7901 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
7902
7903         Minor cygwin cleanup
7904         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Correct
7905         case pattern for cygwin.
7906
7907 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7908
7909         Avoid failure due to Cygwin path detection bug.
7910         * tests/execute-mode.at (execute mode): Ignore noise on stderr;
7911         Cygwin might consider `d\"e' to be a DOS-style path and warn.
7912         Report by Charles Wilson.
7913
7914 2009-01-19  Robert Millan  <rmh@aybabtu.com>
7915
7916         Support GNU/kOpenSolaris.
7917         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
7918         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
7919         (_LT_LANG_CXX_CONFIG) [kopensolaris*-gnu]: Recognize
7920         GNU/kOpenSolaris.
7921         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
7922         * NEWS, THANKS: Update.
7923
7924 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7925
7926         Another LT_AT_EXEC_CHECK fixup.
7927         * tests/shlibpath.at (shlibpath_overrides_runpath): Use
7928         LT_AT_EXEC_CHECK instead of AT_CHECK.
7929
7930 2009-01-19  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
7931
7932         Add missing $EXEEXT to java test.
7933         * tests/convenience.at (Java convenience archives): Add $EXEEXT.
7934
7935 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7936
7937         Bump copyright years.
7938         * ChangeLog.2008: New, rotated from ...
7939         * ChangeLog: ... here.
7940         * Makefile.am (EXTRA_DIST): Add ChangeLog.2008.
7941         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
7942         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
7943         * libtoolize.m4sh: Likewise.
7944
7945 2009-01-14  Peter Rosin  <peda@lysator.liu.se>
7946
7947         Fix flakey mdemo-dryrun test on MSYS (again!)
7948         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
7949         not time, for really fresh files. Add sleep 1 call at yet another
7950         strategic position. Makes the test pass reliably for MSYS/MinGW.
7951
7952 2008-12-19  Akim Demaille  <demaille@gostai.com>
7953
7954         Fix copyright notice.
7955         * libltdl/config/ltmain.m4sh: Add missing comma.
7956
7957 2008-12-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7958
7959         Add cache variables to link tests.
7960         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
7961         (_LT_LINKER_SHLIBS): Add cache variables to tests that
7962         require the linker to work.  For shlibpath_overrides_runpath,
7963         this also changes the semantics to let the result from the C
7964         compiler take precedence.
7965         * tests/no-executables.at (AC_NO_EXECUTABLES): New file.
7966         * Makefile.am: Update.
7967         * NEWS: Update.
7968         Report of shlibpath_overrides_runpath issue by Mike Frysinger,
7969         report of GCC issue by Andreas Schwab.
7970
7971 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
7972
7973         Fix inadvertent commit.
7974         * bootstrap: Revert.
7975
7976 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
7977
7978         Fix manual typo.
7979         * doc/libtool.texi (LT_INIT): Use correct config.status
7980         invocation.  Reported by Akim Demaille.
7981
7982 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
7983
7984         Do not use $ECHO within eval-ed `...`, as %s\\n becomes %s\n.
7985         * HACKING: Document func_echo_all.
7986         * libltdl/m4/libtool.m4: Use it within backticks that appear in
7987         eval-ed variables.  Reported by Akim Demaille.
7988
7989 2008-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7990
7991         Fix func_infer_tag $ECHO usage; some testsuite exposure.
7992         * libltdl/config/ltmain.m4sh (func_infer_tag): Use func_echo_all
7993         rather than $ECHO for possibly multiple arguments.
7994         * tests/infer-tag.at (inferred tag, CXX inferred tag)
7995         (F77 inferred tag, FC inferred tag, GCJ inferred tag): New file,
7996         new tests.
7997         * Makefile.am: Adjust.
7998
7999         * tests/runpath-in-lalib.at (Runpath in libtool library files):
8000         Add $EXEEXT overlooked in patch yesterday.
8001
8002 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8003
8004         Fix expout and experr line ending issues.
8005         * tests/testsuite.at (LT_AT_HOST_DATA): Renamed from..
8006         (_LT_AT_TRANSLATE_TEXT_OUTPUT): ..this.
8007         (LT_AT_EXEC_CHECK, LT_AT_NOINST_EXEC_CHECK): Do not use
8008         _LT_AT_TRANSLATE_TEXT_OUTPUT any more.
8009         * tests/configure-iface.at: Use LT_AT_HOST_DATA instead of
8010         AT_DATA for `expout' files.
8011         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
8012         Likewise.
8013         * tests/need_lib_prefix.at (enforced lib prefix): Likewise.
8014         Report by Roumen Petrov.
8015
8016         Relax link-order2 test for systems with partial wrong order.
8017         * tests/link-order2.at (Link order of deplibs.): On w32 (and
8018         others, e.g., AIX), the wrongly linked executable picks up only
8019         one instance of the bad function instead of two; relax the test
8020         to accept this; we still require the right link order with the
8021         correctly linked executable.
8022         Reported by Roumen Petrov and others.
8023
8024 2008-11-23  Roumen Petrov  <bugtrack@roumenpetrov.info>
8025             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8026
8027         Add $EXEEXT to all linked programs in the new testsuite.
8028         * tests/convenience.at, tests/ctor.at, tests/darwin.at,
8029         tests/deplibs-ident.at, tests/duplicate_conv.at,
8030         tests/duplicate_deps.at, tests/duplicate_members.at,
8031         tests/export.at, tests/fail.at, tests/indirect_deps.at,
8032         tests/inherited_flags.at, tests/link-order.at,
8033         tests/link-order2.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
8034         tests/need_lib_prefix.at, tests/runpath-in-lalib.at,
8035         tests/search-path.at, tests/shlibpath.at, tests/static.at,
8036         tests/stresstest.at, tests/template.at, tests/testsuite.at:
8037         Use $EXEEXT throughout, except in Makefile.am snippets where
8038         automake takes care of it, and in testsuite macros that take
8039         care of the extension.
8040         Reports by Roumen Petrov and Alon Bar-Lev.
8041
8042 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8043
8044         Adjust executable run tests to cwrapper changes.
8045         * tests/testsuite.at (LT_AT_EXEC_CHECK): Accept fifth argument
8046         ARGS-OR-STATUS-ADJUST, for command-line arguments and/or exit
8047         status flattening.  Rewrite to prefer the executable with the
8048         `.exe' prefix over one without.  Test exit status against
8049         expected exit status, not against zero, when determining whether
8050         this may be a cross-compilation-induced result.
8051         (LT_AT_NOINST_EXEC_CHECK): Likewise.
8052         * tests/static.at (static linking flags for programs): Adjust
8053         calls.
8054         Report by Roumen Petrov.
8055
8056         No trailing period in Autotest test group names.
8057         * tests/link-order.at (Link order test): Drop trailing period
8058         from test name.
8059         * tests/link-order2.at (Link order of deplibs): Likewise.
8060
8061 2008-11-23  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
8062
8063         Fix func_emit_cwrapperexe_src for WinCE: no errno support.
8064         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
8065         [__MINGW32CE__]: Do not use errno, do not include errno.h and
8066         remove calls related to errno when using the mingw32ce compiler.
8067
8068 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8069
8070         No libm in WinCE.
8071         * libltdl/m4/libtool.m4 (LT_LIB_M) [cegcc*]: This system has
8072         only a dummy libm, ignore.
8073         Report by Vincent Torri.
8074
8075         Fix import library detection for WinCE.
8076         * libltdl/config/ltmain.m4sh (func_win32_libid): Work for
8077         pe-arm-wince import libraries.
8078         * NEWS: Update.
8079         Report by Vincent Torri.
8080
8081 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8082             Eric Blake  <ebb9@byu.net>
8083
8084         Fix $ECHO test to not influence other _AS_DETECT_SUGGESTED code.
8085         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix test to
8086         not influence further tests registered with _AS_DETECT_SUGGESTED
8087         and do not use a PATH below /tmp, to avoid influence by a third
8088         party.
8089
8090 2008-11-23  Alon Bar-Lev  <alon.barlev@gmail.com>  (tiny change)
8091
8092         Fix func_win32_libid for 64-bit Windows.
8093         * libltdl/config/ltmain.m4sh (func_win32_libid): Accept file
8094         format 'pe-x86-64'.
8095         * NEWS: Update.
8096
8097 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8098
8099         Avoid newlines in some AT_CHECK commands.
8100         * tests/standalone.at (linking libltdl without autotools): Wrap
8101         lines with dnl, to avoid turning off tracing of AT_CHECK.
8102         * tests/subproject.at (linking libltdl without autotools):
8103         Likewise.
8104
8105         Replace uses of $SED $basename.
8106         * libltdl/config/ltmain.m4sh (func_mode_link): Replace instances
8107         of `$ECHO ... | $SED' with calls to func_basename.
8108         * libtoolize.m4sh (func_copy, func_serial)
8109         (func_massage_aclocal_DATA): Likewise, replace with
8110         func_dirname_and_basename.
8111         * tests/defs.m4sh (func_configure_nofail, func_make, func_exec):
8112         Likewise.
8113
8114         No need to prepend $progname with './'.
8115         * libltdl/config/general.m4sh (func_dirname_and_basename): $ECHO
8116         copes with leading hyphens now, so do not mangle $progname any
8117         more.
8118
8119         Revenge of the $ECHO. Kill most uses of Xsed.
8120         * libltdl/config/general.m4sh: Replace all uses of `$ECHO "X..."
8121         | $Xsed' with `$ECHO "..." | $SED', and employ further trivial
8122         simplifications.  Replace $ECHO with echo where appropriate.
8123         (func_echo_all): New function.
8124         * libltdl/config/getopt.m4sh: Likewise simplifications.
8125         * libltdl/config/ltmain.m4sh: Likewise.
8126         * libltdl/m4/libtool.m4: Likewise.
8127         (LT_CMD_MAX_LEN): Use func_fallback_echo, to ensure that the
8128         command line is passed through an exec* function.
8129         * libtoolize.m4sh: Likewise simplifications.  Use func_echo_all
8130         to implement --dry-run.
8131         * tests/defs.m4sh: Likewise simplifications.
8132         * tests/quote.test: Likewise simplifications.
8133
8134         Fix matching of Sun Fortran compiler on Linux.
8135         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: Also
8136         match `Sun Ceres Fortran' compiler; reorder with C compiler
8137         matching.
8138         * THANKS: Update.
8139         Report by Ethan Mallove.
8140
8141 2008-11-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
8142
8143         Fix --verbose option; add new --no-{silent|quiet|verbose} options.
8144
8145         * libltdl/config/ltmain.m4sh (usage): Document
8146         new options --no-silent/--no-quiet and --no-verbose.
8147         (func_enable_tag): Handle new options.
8148         Modified --verbose to actually activate opt_verbose.
8149         New behavior: --silent disables both "normal" output and
8150         func_verbose output.  --verbose enables both "normal"
8151         output and func_verbose output. --no-silent enables
8152         "normal" output, but does not affect func_verbose output.
8153         --no-verbose disables func_verbose output, but does not
8154         affect "normal" output.
8155         * NEWS: announce new options --no-silent/--no-quiet, and
8156         --no-verbose.
8157         * doc/libtool.texi: document new options --no-silent/--no-quiet
8158         and --no-verbose.
8159
8160 2008-11-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8161
8162         Fix match patterns for cegcc*.
8163         * libltdl/config/ltmain.m4sh (func_mode_link): Match '*cegcc*'
8164         instead of '*cegcc' for $host_os.
8165         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Likewise.
8166         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
8167         Likewise.
8168         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Match
8169         '*-*-cegcc*' for $host.
8170
8171         Ensure $ac_aux_dir is initialized for LIBTOOL_DEPS.
8172         * libltdl/m4/libtool.m4 (LT_INIT): Require
8173         AC_CONFIG_AUX_DIR_DEFAULT.
8174         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Amend test to
8175         expose this.
8176         Report, analysis, and test example by Jakub Bogusz.
8177
8178         Check for bogus aclocal.m4 contents in bootstrap and dist-hook.
8179         * Makefile.am (dist-hook): Bail out if shipped aclocal.m4 files
8180         contain LT_INIT, AC_PROG_LIBTOOL, or AM_PROG_LIBTOOL macro
8181         definitions.  These can only come from bogus pull-ins from older
8182         installed Libtool macro files.
8183         * bootstrap: Likewise.
8184         Report by Akim Demaille.
8185
8186 2008-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8187
8188         Fix $ECHO abuse exposed by recent patch.
8189         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
8190         _LT_CHECK_SHELL_FEATURES, for $lt_NL2SP.  Always quote argument
8191         to $ECHO.
8192
8193         Skip sys_lib_search_path on systems without libz.
8194         * tests/search-path.at (sys_lib_search_path): Autotest needs at
8195         least one AT_CHECK executed in a test group.  So if we haven't
8196         found -lz anywhere, as may happen with cross-compilers, skip the
8197         test.
8198         * THANKS: Update.
8199         Report by Alon Bar-Lev.
8200
8201         Fix execute mode test to actually expose cwrapper failures.
8202         * tests/execute-mode.at (execute mode): Actually also test the
8203         cwrapper on the arguments.
8204         Report by Bruno Haible.
8205
8206 2008-11-15  Charles Wilson  <libtool@cwilson.fastmail.fm>
8207
8208         Add func_win32_import_lib_p.
8209         * libltdl/config/ltmain.m4sh (func_win32_import_lib_p):
8210         New function.
8211
8212 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8213
8214         Fix archive_cmds for older cc on HP-UX 11.
8215         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hp-ux11*, !GCC]
8216         [!hppa*64*, !ia64*] <archive_cmds>: Older releases of the HP-UX
8217         11.00 C compiler do not support -b yet; use a link test to
8218         decide whether $LD should be used for library creation.
8219         * THANKS: Update.
8220         Report by Daniel Richard G.
8221
8222 2008-11-12  Paolo Bonzini  <bonzini@gnu.org>
8223
8224         * configure.ac: Bump Autoconf requirement.
8225         * libltdl/config/general.m4sh: Use $as_echo as default $ECHO.
8226         * tests/testsuite.at: Use $as_echo as default $ECHO.
8227
8228         * libltdl/m4/libtool.m4 (LT_INIT): Add _LT_SHELL_INIT to
8229         work around Autoconf <2.64 bug.
8230         (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT): Add func_fallback_echo.
8231         Eliminate lt_ECHO requoting.
8232         (_LT_SHELL_INIT): Use a public M4sh diversion.
8233         (_LT_PROG_ECHO_BACKSLASH): Rewrite.
8234         (LT_CMD_MAX_LEN): Do not use --fallback-echo.
8235         * libltdl/config/ltmain.m4sh: Remove --no-reexec and --fallback-echo
8236         handling.
8237         (func_fallback_echo): New.
8238         (func_emit_wrapper_part1): Quote ECHO.  Remove --no-reexec and
8239         --fallback-echo handling.
8240         (Execute mode): Do not set qecho.
8241
8242 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8243
8244         Use -no-undefined in install tests.
8245         * tests/install.at (Install tests): Use `-no-undefined'.
8246
8247 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8248
8249         Do not use `test ... -a ...'.
8250         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hpux10, hpux11]:
8251         Replace test -a with test && test.
8252
8253 2008-11-11  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
8254
8255         Fix destdir tests in cross compile mode.
8256         * tests/destdir.at (Simple DESTDIR install)
8257         (DESTDIR with in-package deplibs): Use $EXEEXT throughout.
8258         * THANKS: Update.
8259
8260 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8261
8262         Simplify cwrapper handling a bit.
8263         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1)
8264         (func_emit_wrapper_part2, func_to_host_path)
8265         (func_to_host_pathlist, func_emit_wrapper): Simplify using
8266         default argument, func_append.
8267
8268 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8269
8270         Separate part of _LT_SETUP into other macros, detect ECHO sooner.
8271         * libltdl/m4/libtool.m4 (_LT_PREPARE_SED_QUOTE_VARS): New macro,
8272         extracted from...
8273         (_LT_SETUP): ... here.  Require _LT_PROG_ECHO_BACKSLASH sooner.
8274
8275 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8276
8277         Fix quoting when config.status generates libtool config.
8278         * libltdl/m4libtool.m4 (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT):
8279         Double quote ECHO-ed variables.
8280
8281 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8282
8283         Use documented M4sh interfaces.
8284         * clcommit.m4sh: Do not unset CDPATH, use AS_INIT and M4sh diversions.
8285         * libltdl/config/mailnotify.m4sh: Likewise.
8286         * libtoolize.m4sh: Likewise.
8287         * tests/defs.m4sh: Likewise.
8288         * tests/testsuite.at: Move AT_INIT invocation at the top.
8289
8290         * libltdl/m4/libtool.m4 (_LT_INIT_GENERATED): New.
8291         (LT_OUTPUT): Use it.
8292
8293         * libltdl/config/general.m4sh (M4SH_IN_HEADER): New.
8294         (progpath): Move setting before $0 could be clobbered.
8295         * libltdl/config/ltmain.m4sh (M4SH_IN_HEADER): New.
8296
8297 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8298
8299         Run sh.test on the M4sh source.
8300         * tests/defs.m4sh (scripts): Point to pre-m4 sources.
8301
8302 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8303
8304         Avoid that autom4te complains about unexpanded macros.
8305         * libtoolize.m4sh: Allow occurrences of "dnl" and use quadrigraphs
8306         to protect other m4 macros.
8307
8308 2008-11-11  Bruno Haible  <bruno@clisp.org>
8309             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8310
8311         Fix cwrapper argument mangling on w32.
8312         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): On
8313         mingw, preprocess the argument vector through prepare_spawn.
8314         * tests/execute-mode.at (execute mode): Output args
8315         newline-separated.  Extend tests by more argument pairs that
8316         contain special characters, where the w32 cwrapper fails.
8317         Also test a real compiled program, linked against an uninstalled
8318         library, to expose cwrapper issues.
8319         * NEWS: Update.
8320
8321 2008-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8322
8323         Update to GFDL 1.3.
8324         * doc/fdl.texi: Update to GFDL 1.3.
8325         * doc/libtool.texi: Adjust.
8326         * NEWS: Update.
8327
8328 2008-11-09  Alexei Sheplyakov  <varg@theor.jinr.ru>  (tiny change)
8329
8330         Fix cross compilation with wine for the case SHELL != bash.
8331         * libltdl/config/ltmain.m4sh (func_to_host_path): Avoid escape
8332         sequence interpretation by 'echo', for w32-style paths.
8333         * THANKS: Update.
8334
8335 2008-10-28  Michael Haubenwallner  <michael.haubenwallner@salomon.at> (tiny change)
8336
8337         Fix checks for unsupported allow_undefined_flag.
8338         * tests/tagdemo-undef.test: Match allow_undefined_flag
8339         correctly, for SKIPping.
8340         * tests/cdemo-undef.test: Likewise.
8341
8342 2008-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8343
8344         * tests/testsuite.at (_LTDL_PROJECT_FILES): Fix dependencies for
8345         parallel make.
8346
8347         * libtoolize.m4sh (func_nonemptydir_p): Fix typo in error
8348         message.
8349
8350 2008-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8351
8352         Fix Autoconf 2.59 incompatibilty.
8353         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): m4_pattern_allow
8354         `LT_LIBEXT'; Autoconf 2.59's AC_DEFINE* macros didn't do this
8355         automatically yet.
8356         * NEWS, THANKS: Update.
8357         Report by Marcel Loose.
8358
8359 2008-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8360
8361         Atomic shared library install permissions on HP-UX.
8362         The HP-UX 11 runtime linker fails to mmap shared libraries
8363         without execute permissions.  Fixing them with postinstall_cmds
8364         may be too late, as ln, sed, and chmod may link against the
8365         library being installed.
8366
8367         * libltdl/m4/libtool.m4 (install_override_mode): New LT_DECL.
8368         (_LT_SYS_DYNAMIC_LINKER) [hpux9*, hpux10*, hpux11*]: Set it.
8369         * libltdl/config/ltmain.m4sh (func_mode_install): Build a second
8370         command line, $install_shared_prog, for the installation of the
8371         shared library.  Override resp. set the permission mode if
8372         install_override_mode is nonempty.
8373         * doc/libtool.texi (libtool script contents): Document it.
8374         * tests/install.at (Install tests): New test.
8375         * Makefile.am (TESTSUITE_AT): Adjust.
8376         (TESTS_ENVIRONMENT): Pass INSTALL.
8377         Report by Bruno Haible.
8378
8379 2008-09-26  Eric Blake  <ebb9@byu.net>
8380
8381         Avoid gcc warning.
8382         * libltdl/loaders/loadlibrary.c (vm_open): Don't check for array
8383         being a NULL pointer.
8384
8385 2008-09-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8386
8387         Man pages for libtoolize and libtool, new command line option
8388         --help-all.
8389         * Makefile.am (dist_man1_MANS, update_mans): New macros.
8390         ($(srcdir)/doc/libtool.1, $(srcdir)/doc/libtoolize.1): New
8391         rules.  Use --help-all for libtool.
8392         (MAINTAINERCLEANFILES): New macro.  Add dist_man1_MANS.
8393         (BUILT_SOURCES): Add libtoolize.
8394         * configure.ac: Check for help2man, set HELP2MAN.
8395         * doc/libtool.texi: Add @direntry for libtool-invocation.
8396         (Invoking libtool): Document -h, --help-all.  Reorder mode
8397         description for consistency.
8398         (Compile mode): Do not document -Wl,FLAG and -XCClinker here.
8399         (Link mode): Document -Wc,FLAG here, reformat a bit.
8400         * libtoolize.m4sh: Reformat --help output a bit, to help
8401         help2man.
8402         * libltdl/config/ltmain.m4sh: Likewise.  Also, set PROGRAM to
8403         `libtool', not `ltmain.sh', so the former is used in the man
8404         page.
8405         New argument `--help-all'.  If given, call func_help and
8406         func_mode_help several times, beating output in shape with sed.
8407         (func_mode_help): Do not exit here.
8408         * libltdl/config/getopt.m4sh (func_usage): Work with different
8409         indentations, but require comment hash in first column, when
8410         grepping for '-h' in usage to end short help.
8411         (func_help): Accept optional argument to not exit.
8412         * NEWS, THANKS: Update.
8413         Suggestion by Karl Berry.
8414
8415 2008-09-08  Gary V. Vaughan  <gary@gnu.org>
8416
8417         Use `-version-info 9:0:2' for one added iface since 2.2.4.
8418         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Make the libltdl
8419         version number match 2.2.6a rerelease.
8420
8421         Add ./commit option for pushing tags back to origin.
8422         * clcommit.m4sh (opt_tags): New --tags push option.
8423         (func_commit): Run `$GIT push --tags' if --tags was passed.
8424         * HACKING (Release Procedure): Note the requirement to pass
8425         --tags to ./commit for new release tag to be push back to
8426         origin.
8427
8428 2008-09-07  Gary V. Vaughan  <gary@gnu.org>
8429
8430         Retire gnu.org news.html in favour of savannah news.
8431         * HACKING (Release Procedure): Add instructions for sending
8432         a web release announcement to http://planet.gnu.org via
8433         the savannah news manager.
8434
8435         Add untested git push conflict testing to commit script.
8436         * clcommit.m4sh (func_check_conflicts): Test return status
8437         of 'git push --dry-run', and display an error on non-zero.
8438
8439         Enable release procedure to work with lzma OLDRELEASE file.
8440         * Makefile.maint (diffs, prev-tarball, new-tarball): If lzma
8441         tarballs are present use them to generate the diffs, otherwise
8442         use gz tarballs if they are present, or else complain if both
8443         are missing.
8444
8445         Set SCM version number to 2.2.7a.
8446         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8447         number to 2.2.7a.
8448         * NEWS: Updated.
8449
8450         GNU Libtool 2.2.6 was released.
8451
8452         Fix typo in Makefile.maint.
8453         * Makefile.maint (git-news): Renamed to check-news, since it
8454         doesn't actually run git.  Adjust all dependees.
8455
8456         Run `git commit -a' when no files are passed.
8457         * clcommit.m4sh (func_commit): Add -a argument if necessary.
8458
8459         Prepare for next stable release.
8460         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Update.
8461         * libltdl/m4/libtool.m4: Bump serial number to account for
8462         changes since 2.2.4 release.
8463         * INSTALL, config/config.guess, config/texinfo.tex: Updated
8464         from canonical source.
8465         * configure.ac (AM_INIT_AUTOMAKE): Specify dist-lzma, which
8466         was introduced after automake-1.10 was released.
8467         (abs_top_srcdir, abs_top_builddir): No need to substitute these
8468         from configure anymore, since we require automake 1.10.1, which
8469         does perform the substitutions properly.
8470         (TIMESTAMP): Normal releases were displaying the long-form
8471         timestamp.  Fix to show the short release timestamp as per
8472         alpha release numbers.
8473         * NEWS: Update with missing entries from ChangeLog.
8474         * HACKING (Release Procedure): We release lzma tarballs now
8475         but no xdeltas.
8476         * Makefile.maint: Updated to match Release Procedure
8477         instructions in HACKING.
8478
8479         Convert mailnotify headers to git.
8480         * clcommit.m4sh: Improve mailnotify contents.
8481
8482         Make ./commit useful again.
8483         * clcommit.m4sh: Major overhaul and simplification for git.
8484
8485 2008-09-06  Gary V. Vaughan  <gary@gnu.org>
8486
8487         Fix 'DISTCHECK_CONFIGURE_FLAGS=--program-prefix=g' bug.
8488         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Fix test failures
8489         with --program-prefix, where the test case output contains the
8490         transformed name somewhere other than the beginning of a line.
8491         * libtoolize.m4sh (func_check_macros): Be sure to always use
8492         the transformed name in output messages.
8493
8494 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8495
8496         Do not remove .gcno files when linking.
8497         * libltdl/config/ltmain.m4sh (func_mode_link): When removing
8498         potential output files before linking, do not remove *.gcno
8499         profile information GCC outputs next to object files in `.libs'.
8500         Report by Vincent Torri.
8501
8502 2008-09-01  Peter O'Gorman  <peter@pogma.com>
8503
8504         Revert 75142db4f8afc65ba7aae0ed80ea0b35bd9cc382 (AIX libltdl
8505         dlopen(NULL)
8506
8507         * libltdl/m4/ltdl.m4: Remove LTDL_DLOPEN_SELF_WORKS define.
8508         * libltdl/loaders/dlopen.c: Remove LTDL_DLOPEN_SELF_WORKS check.
8509         * libltdl/m4/libtool.m4 [aix]: Set export_dynamic_flag_spec to
8510         -Wl,-bexpall. This is a temporary workaround until a real fix
8511         is implemented.
8512         * NEWS: document it.
8513
8514 2008-08-26  Peter O'Gorman  <peter@pogma.com>
8515
8516         Allow for extensions other than .a for preloaded modules.
8517         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define LT_LIBEXT.
8518         * libltdl/ltdl.c (lt_dladvise_preload): Use it.
8519         Reported by Ralf Wildenhues.
8520
8521 2008-08-26  Peter O'Gorman  <peter@pogma.com>,
8522             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8523
8524         Remove unnecessary global argz functions.
8525         * libltdl/argz.c (argz_add,argz_count): Remove.
8526         * libltdl/argz_.h (argz_add,argz_count): Remove.
8527         * NEWS: Announce it.
8528         * tests/ltdl-api.at: Test so we don't repeat it.
8529         * Makefile.am: Add new test.
8530
8531 2008-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8532
8533         Initial support for Lahey Fortran on GNU/Linux.
8534         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8535         [linux] <lf95>: Add support for Lahey Fortran 8.1.
8536         * NEWS, THANKS: Update.
8537         Suggested by Craig Tierney.
8538
8539 2008-08-21  Sam Thursfield  <ssssam@gmail.com>  (tiny change)
8540
8541         Avoid leading separator in PATH for DLL search.
8542         * libltdl/config/ltmain.m4sh (func_mode_link) [cygwin, mingw]
8543         [ pw32, os2, cegcc]: Fix dllsearchpath not to contain leading
8544         separator.
8545         * THANKS: Update.
8546
8547 2008-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8548
8549         * libltdl/config/ltmain.m4sh (func_mode_link): Quote $#.
8550
8551         Disallow `-L path', do not misparse it silently.
8552         * libltdl/config/ltmain.m4sh (func_mode_link): Diagnose `-L'
8553         without argument, and `-L path', i.e., with a space.
8554         * tests/fail.at (Failure tests): Test for these failures.
8555         * THANKS: Update.
8556         Report by Olaf Lenz.
8557
8558 2008-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8559
8560         Avoid test failure due to broken dlpreloading of shared library.
8561         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Drop
8562         some newlines in AT_CHECK commands, for better 'testsuite -x'
8563         output.  Only create a static installable libpreload.la, to
8564         avoid exposing the bug libtool currently has with preloading of
8565         shared libraries.  Add a note to revisit this later.
8566
8567 2008-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8568
8569         Parallel make testsuite fixes.
8570         * tests/configure-iface.at (installable libltdl)
8571         (--with-ltdl-include/lib, --with-included-ltdl): Add dlopened
8572         libmodule.la to main_DEPENDENCIES.
8573         * tests/old-m4-iface.at (AC_WITH_LTDL): Likewise, let ltdldemo
8574         depend upon module.la and libltdl/libltdlc.la.
8575         * tests/testsuite.at (LT_AT_MAKE): Invoke each target in turn,
8576         default to 'all'.
8577         * tests/early-libtool.at (config.lt): Define 'all' target.
8578
8579         * HACKING: Update for git, fix some minor nits.
8580
8581 2008-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8582
8583         Remove use of exit in configure test sources.
8584         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Return from main,
8585         to avoid using undeclared exit.
8586         Report against OpenMPI from Coverity via Jeff Squyres.
8587
8588         * tests/configure-iface.at (convenience libltdl): Ignore warning
8589         from parallel make.
8590
8591 2008-08-07  DJ Delorie  <dj@redhat.com>
8592
8593         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [tpf]
8594         <library_names_spec>: Fix typo in variable name.
8595
8596 2008-08-06  Steve Ellcey  <sje@cup.hp.com>
8597
8598         Use -fPIC with GCC on HP-UX/ia64.
8599         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8600         [ia64-*-hpux*]: Specify -fPIC when using GCC to build shared
8601         libraries.
8602
8603 2008-08-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8604
8605         * NEWS: Minor fixups.
8606
8607 2008-08-01  Gary V. Vaughan  <gary@gnu.org>
8608
8609         Bring NEWS up to date.
8610         * NEWS: Add missing summaries since 2.2.4 release.
8611
8612         Implement lt_dlopening of only preloaded modules.
8613         * libltdl/m4/ltdl.m4 (LTDL_INIT): Check for a libltdl that
8614         provides lt_dladvise_preopen when deciding if installed libltdl
8615         is 'new enough'.
8616         * libltdl/libltdl/lt__private.h (lt__advise): Add a new
8617         is_preload flag.
8618         * libltdl/ltdl.c (lt_dladvise_preload): New api call to set it.
8619         (try_dlopen): If it is set, and the search of preloaded modules
8620         didn't return a match, don't bother searching the filesystem.
8621         * libltdl/ltdl.h (lt_dladvise_preload): Declare it.
8622         * doc/libtool.texi (Libltdl Interface): Document it.
8623         * tests/lt_dladvise.at: Test it (and incidentally add some test
8624         coverage for `libtool -dlpreopen').
8625         * NEWS: Announce it.
8626
8627 2008-08-01  Vincent Torri  <doursse@users.sf.net>
8628
8629         Add cegcc (Windows CE/PocketPC) support.
8630         * libltdl/config/ltmain.m4sh: Add 'cegcc' case where needed.
8631         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, LT_SYS_DLOPEN_SELF)
8632         (_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
8633         (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8634         (_LT_LANG_CXX_CONFIG): Likewise.
8635         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Likewise.
8636         * NEWS: Update.
8637         * THANKS: Update.
8638
8639 2008-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8640
8641         * libltdl/config/ltmain.m4sh (func_to_host_path): Fix sh.test
8642         failure.
8643         Report by Paolo Bonzini.
8644
8645 2008-07-31  Paolo Bonzini  <bonzini@gnu.org>
8646
8647         * ltmain.m4sh (func_emit_cwrapperexe_src): Factor
8648         multiple closed braces into the next cat command.
8649
8650 2008-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8651
8652         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <icc, icpc>:
8653         Use -fPIC, newer Intel compilers (icc 10, ifort 9) reject -KPIC.
8654         * tests/localization.at: Skip test if the compiler fails merely
8655         due to the locale setting.
8656         * THANKS: Update.
8657         Report by Vincent Lefevre.
8658
8659 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8660
8661         * doc/libtool.texi (Linking executables, Static libraries)
8662         (Modules for libltdl, Distributing libltdl): Remove TABs from
8663         the manual.
8664
8665 2008-06-13  Peter O'Gorman  <peter@pogma.com>
8666
8667         Support ifort on darwin.
8668         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Build
8669         shared libraries with ifort.
8670         Reported by Christopher Hulbert.
8671
8672 2008-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
8673
8674         [mingw] fix cross-compile-with-wine case
8675         * libltdl/config/ltmain.m4sh (func_to_host_path)
8676         [host=mingw, build!=mingw|cygwin]: check that winepath
8677         stdout is non-empty and exit code is 0, instead of checking
8678         stderr.
8679         Reported by: Roumen Petrov
8680
8681 2006-06-01  Stas Maximov  <smaximov@ieee.org>  (tiny change)
8682
8683         Check only regular files, not devices, for lalibs.
8684         * libltdl/config/ltmain.m4sh (functions func_lalib_p)
8685         (func_lalib_unsafe_p): Only read regular files and not device
8686         files.  Avoids blocking libtool executing gdb, when a
8687         pseudo-terminal device /dev/pts/NN is given as one of the
8688         arguments to gdb, as in:
8689         libtool --mode=execute gdb -q -nw -i mi -tty /dev/pts/4 prog
8690
8691 2008-05-31  Peter O'Gorman  <peter@pogma.com>
8692
8693         Skip darwin test if fat link fails.
8694         * tests/darwin.at: Skip if we can not link a fat program.
8695         Reported by Daniel Macks <dmacks@netspace.org>
8696
8697 2008-05-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8698
8699         libtoolize should not remove config.guess, config.sub.
8700         * libtoolize.m4sh (all_pkgconfig_files): Do not list
8701         config.guess nor config.sub.  We don't install them without
8702         --install, and the project may not be using Automake.
8703         Report by Andreas Schwab.
8704
8705         Simplify argument parsing in cwrapper.
8706         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
8707         Use NULL where appropriate.  Do not compute length of arguments
8708         needlessly.
8709
8710 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
8711
8712         [mingw] Add cross-compile support to cwrapper
8713         * libltdl/config/ltmain.m4sh (func_to_host_path) [$host=mingw]:
8714         If present, use winepath to convert from $build to $host
8715         if $build is neither mingw (msys) nor cygwin.  Use unconverted
8716         path as fallback when conversion fails. Also update comments.
8717         (func_to_host_pathlist) [$host=mingw]: Ditto. For fallback case,
8718         use simplistic ':' to ';' path separator translation.
8719
8720 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
8721
8722         Cwrapper should not eat -- arguments
8723         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
8724         [file scope]: Defined all option strings in terms of macro
8725         LTWRAPPER_OPTION_PREFIX. Similarly defined all option string
8726         lengths in terms of macro LTWRAPPER_OPTION_PREFIX_LENGTH.
8727         [main]: Modified option parsing algorithm to pass -- on to
8728         target, and to not stop processing arguments when -- is seen.
8729         Added check for unrecognized options in reserved namespace
8730         defined by LTWRAPPER_OPTION_PREFIX.
8731
8732 2008-05-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8733
8734         Fix ifort settings again.
8735         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
8736         Unlike icc and ecc, not all ifort versions understand `-KPIC',
8737         e.g. version 10.1, so use `-fPIC' instead.
8738         Report by Jeff Squyres.
8739
8740 2008-05-20  Eric Blake  <ebb9@byu.net>
8741
8742         Resynchronize argz whitespace changes from gnulib.
8743         * libltdl/m4/argz.m4: Kill trailing whitespace.
8744         * libltdl/argz.c: Likewise.
8745
8746 2008-05-19  Eric Blake  <ebb9@byu.net>
8747
8748         Fix regression from two days ago.
8749         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ): Don't refer to deleted macro.
8750
8751 2008-05-17  Eric Blake  <ebb9@byu.net>
8752
8753         Speed up bootstrap by improving lt_combine.
8754         * libltdl/m4/ltsugar.m4 (lt_combine): Mirror Autoconf 2.62
8755         improvements.  Includes a semantic change where the separator can
8756         now be empty, and where an empty fourth argument is now treated as
8757         a valid suffix.
8758         * libltdl/m4/libtool.m4 (_lt_decl_varnames_tagged): Adjust to new
8759         semantics of lt_combine.
8760         (lt_decl_varnames_tagged): Fix quoting and optimize.
8761
8762         Kill _LT_LIBSOURCES; it wasn't checking anything useful.
8763         * libltdl/m4/ltdl.m4 (_LT_LIBSOURCES): Delete.
8764         (LTDL_INIT): Ignore arguments to AC_LIBSOURCES during _LTDL_SETUP,
8765         on the assumption that libtoolize correctly installed them.
8766
8767 2008-05-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
8768
8769         [mingw|cygwin] Modify cwrapper to invoke target directly.
8770         * libltdl/config/ltmain.m4sh (func_to_native_path):
8771         New function. If $host is mingw, and $build is mingw
8772         or cygwin, convert path to mingw native format.
8773         (func_to_native_pathlist): New function. Ditto, for
8774         :-separated pathlists.
8775         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
8776         Ensure putenv and setenv are declared. Define HAVE_SETENV.
8777         (func_emit_cwrapperexe_src) [main]: Add new constants to
8778         hold desired PATH settings; initialize and use functions
8779         above to convert to $host format if necessary. Add new
8780         command-line options --lt-env-set, --lt-env-prepend, and
8781         --lt-env-append. No longer emit wrapper script as integral
8782         part of launching child. Remove support for (now) unnecessary
8783         $TARGETSHELL. Exec actual target executable directly.
8784         (func_emit_cwrapperexe_src) [lt_setenv, lt_extend_str]
8785         [lt_split_name_value, lt_opt_process_env_set]
8786         [lt_opt_process_env_prepend, lt_opt_process_env_append]
8787         [lt_update_exe_path, lt_update_lib_path]: New functions.
8788
8789 2008-05-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
8790
8791         Ensure cwrapper compiles without warnings under -std=c99.
8792         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
8793         new function.
8794         (func_emit_wrapper_part2): new function.
8795         (func_emit_wrapper): delegate to new functions.
8796         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
8797         ensure realpath is declared.
8798         (func_emit_cwrapperexe_src): declare two different strings
8799         to each hold part of the wrapper script content. Initialize
8800         using new func_emit_wrapper_partX functions.
8801         (func_emit_cwrapperexe_src) [main]: when emitting wrapper
8802         script content, use both strings.
8803         Reported by Yaakov Selkowitz.
8804
8805 2008-05-06  Charles Wilson  <libtool@cwilson.fastmail.fm>
8806
8807         Ensure $OBJDUMP is defined
8808         * libltdl/m4/libtool.m4 (_LT_DECL_OBJDUMP): new macro ensures
8809         that $OBJDUMP is always defined sanely.
8810         (_LT_SYS_DYNAMIC_LINKER): call it.
8811         (_LT_CHECK_MAGIC_METHOD): call it.
8812
8813 2008-05-05  Gary V. Vaughan  <gary@gnu.org>
8814
8815         Fix libtoolize test failure with aclocal < 1.10.1
8816         * tests/libtoolize.at
8817         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Older aclocal
8818         requires a space between -I and the directory argument.
8819         Reported by Daniel Macks <dmacks@netspace.org>
8820
8821 2008-05-04  Gary V. Vaughan  <gary@gnu.org>
8822
8823         Set SCM version number to 2.2.5a.
8824         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8825         number to 2.2.5a.
8826         * NEWS: Updated.
8827
8828         GNU Libtool 2.2.4 was released.
8829
8830         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8831         number to 2.2.4.
8832         * libltdl/Makefile.inc (LTDL_VERSION_INFO): C:R+1:A because the
8833         interfaces are unchanged, even though we improved the code some
8834         more.
8835         * NEWS: Updated.
8836
8837         Macro file serial updates for next stable release.
8838         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
8839         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: Bump serial
8840         numbers to account for changes since 2.2.2 release.
8841
8842         Make libtoolize tests work with distcheck.
8843         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): When $tst_aclocal
8844         is set, transform paths that use it to generic
8845         /usr/local/share/aclocal in time for AT_CHECK comparisons.
8846
8847 2008-05-03  Gary V. Vaughan  <gary@gnu.org>
8848
8849         Don't trip over outdated acinclude.m4.
8850         * libtoolize.m4sh (all_pkgconfig_files, all_pkgmacro_files)
8851         (all_pkgltdl_files): New variables listing all files ever
8852         maintained by any release of libtoolize.
8853         (func_install_pkgconfig_parent, func_install_pkgltdl_files)
8854         (func_install_pkgconfig_subproject, func_install_pkgmacro_parent)
8855         (func_install_pkgmacro_subproject): Carefully clean up any files
8856         that may have been installed by previous libtoolize releases.
8857         * tests/libtoolize.at: New test for libltdl/acinclude.m4 removal.
8858         Reported by Andreas Schwab <schwab@suse.de>.
8859
8860 2008-05-02  Peter O'Gorman  <peter@pogma.com>
8861
8862         It helps to close quotes.
8863         * libltdl/config/ltmain.m4sh (func_mode_link): Add closing '.
8864
8865 2008-05-01  Peter O'Gorman  <peter@pogma.com>
8866
8867         Use AC_CHECK_TOOL for otool and otool64.
8868         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
8869         * libltdl/config/ltmain.m4sh (func_mode_link): Use.
8870         Reported by Richard Purdie <rpurdie@rpsys.net>
8871
8872 2008-04-30  Eric Blake  <ebb9@byu.net>
8873
8874         Support cygwin 1.7.0 in loadlibrary loader.
8875         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD) <cygwin>: Check for modern
8876         function.
8877         * libltdl/loaders/loadlibrary.c (vm_open): Avoid deprecated
8878         cygwin_conv_to_full_win32_path.
8879
8880 2008-04-29  Gary V. Vaughan  <gary@gnu.org>
8881
8882         New libtoolize --no-warn option and LIBTOOLIZE_OPTIONS parsing.
8883         * libltdl/config/general.m4sh (opt_warning): New option.
8884         (func_warning): Only display a warning message if $opt_warning
8885         is true.
8886         * libtoolize.m4sh: Accept options in LIBTOOLIZE_OPTIONS
8887         environment variable.
8888         (--no-warn): Parse new option.
8889         (func_serial_update_check, func_keyword_update): Use func_warning.
8890         (func_check_macros): Bail out before style issues nags when
8891         $opt_warning is false.
8892         * doc/libtool.texi (Invoking Libtoolize): Document it.
8893         * tests/libtoolize.at: Test it.
8894         * NEWS: Updated.
8895
8896         Fix libtoolize test failure with aclocal-1.10.1.
8897         * tests/libtoolize.at
8898         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Force aclocal to
8899         search the source tree for latest libtool macros.
8900
8901 2008-04-24  Eric Blake  <ebb9@byu.net>
8902
8903         Fix bug in 2008-04-21 type improvements.
8904         * libltdl/ltdl.c (load_deplibs): Fix casting bug.
8905
8906 2008-04-23  Michael Haubenwallner  <michael.haubenwallner@salomon.at>
8907
8908         Use /nonexistent as destination for files not to be installed.
8909         * tests/darwin.at (darwin fat compile): Fix typo.
8910         * tests/inherited_flags.at (inherited_linker_flags): Change
8911         -rpath to /nonexistent.  This helps to avoid accidentally
8912         picking up libraries below /usr/local.
8913         * tests/template.at (simple template test): Likewise.  Fixes
8914         test failure for additional incompatible libstdc++ in
8915         /usr/local.
8916         * tests/testsuite.at (configure_options): Add
8917         --prefix=/nonexistent.
8918
8919 2008-04-23  Gary V. Vaughan  <gary@gnu.org>
8920
8921         * libtoolize.m4sh (rerun_aclocal): Remove unused variable.
8922         Reported by Olly Betts <olly@survex.com>
8923
8924 2008-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8925
8926         * tests/static.at (ccache -all-static): Ignore link warnings.
8927         Report by Gary V. Vaughan.
8928
8929 2008-04-22  Gary V. Vaughan  <gary@gnu.org>
8930
8931         Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
8932         * libtoolize.m4sh (func_check_macros): Always advise use of
8933         AC_CONFIG_MACRO_DIR when not able to copy libtool macros into
8934         the project tree.
8935         * tests/libtoolize.at: New test for correct diagnosis of mismatch
8936         between AC_CONFIG_MACRO_DIR and ACLOCAL_AMFLAGS.
8937         Update expected output of other tests.
8938         * NEWS: Updated.
8939
8940 2008-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8941
8942         Fix regression over 1.5.26 with ccache $CC -all-static.
8943         * libltdl/config/ltmain.m4sh (func_mode_link): Add
8944         $link_static_flag to compile_command and link_command only
8945         later, instead of right after a possible compiler wrapper.
8946         * tests/static.at (ccache -all-static): New test.
8947         * THANKS: Update.
8948         Report by Richard Purdie.
8949
8950 2008-04-22  Andreas Schwab  <schwab@suse.de>
8951             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8952
8953         Fix default argument for AC_LIBLTDL_CONVENIENCE.
8954         * libltdl/m4/ltdl.m4 (AC_LIBLTDL_CONVENIENCE): Default argument
8955         to libltdl.
8956         (AC_LIBLTDL_INSTALLABLE): Likewise.
8957         * tests/configure-iface.at (convenience libltdl): New test.
8958
8959 2008-04-21  Gary V. Vaughan  <gary@gnu.org>
8960
8961         Only complain that files are up-to-date with --force.
8962         As a side effect, this also means that when `aclocal' copies the
8963         libtool macros into `aclocal.m4' libtoolize complains only about
8964         the macro files that are missing or not up-to-date.
8965         * libtoolize.m4sh (func_echo_once): New function that prints
8966         the contents of a named variable only on the first call.
8967         (func_aclocal_update_check): New function that compares serial
8968         numbers of libtool macros in aclocal.m4 and only diagnoses the
8969         missing files.
8970         (func_copy, func_copy_cb, func_copy_some_files, func_serial_update)
8971         (func_keyword_update, func_ltmain_update, func_config_update)
8972         (func_install_update): Accept a new argument naming a variable
8973         containing a header string to print with func_echo_once iff any
8974         body text is output by this function.
8975         (func_install_pkgmacro_subproject, func_install_pkgmacro_parent)
8976         (func_install_pkgltdl_files, func_install_pkgconfig_subproject)
8977         (func_install_pkgconfig_parent: Set and pass a suitable
8978         header string variable for the above functions.
8979         (func_serial_update_check): Don't advise rerunning `libtoolize
8980         --force' when aclocal.m4 is not m4_including libtoolize installed
8981         macro files.
8982         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic
8983         /usr/local/share/aclocal paths to point into the uninstalled
8984         libtool macro directory.
8985         * tests/libtoolize.at: Update tests that were checking for old
8986         behaviour of outputing `file is already up to date' even when
8987         --force was not passed.
8988         * tests/libtoolize.at: New tests to prevent regressions of these
8989         smarter messages.
8990         * NEWS: Updated.
8991         Reported by Olly Betts <olly@survex.com>
8992
8993         Capture lt~obsolete.m4 serial number correctly in libtoolize.
8994         * libltdl/m4/lt~obsolete.m4: Add the filename to the #serial
8995         marker so that libtoolize's serial number checks can find it
8996         in a non-include using aclocal.m4.
8997         * NEWS: Updated.
8998         Reported by Olly Betts <olly@survex.com>
8999
9000         Allow better compile time type checking for lt_dladvise.
9001         * libltdl/lt__private.h (lt__handle, lt__advise): Typedefs
9002         removed in favour of...
9003         * libltdl/ltdl.h (lt_dlhandle),
9004         libltdl/libltdl/lt_dlloader.h (lt_dladvise): ...changing from
9005         void* to forward declarations.
9006         * libltdl/loaders/dlopen.c, libltdl/loaders/loadlibrary.c,
9007         libltdl/lt_dlloader.c, libltdl/ltdl.c: Remove many redundant
9008         type casts.
9009         * NEWS: Updated.
9010         Suggested by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
9011
9012 2008-04-21  Peter O'Gorman  <peter@pogma.com>
9013
9014         basename does not take a list of strings.
9015         * libltdl/config/ltmain.m4sh(func_extract_archives): Use sed
9016         $basename.
9017         * tests/darwin.at: New. Check that we can built fat program,
9018         shared library and convenience library.
9019         * Makefile.am: Add test.
9020         Reported by LiKai Liu <liulk@cs.bu.edu>
9021
9022         Use AC_CHECK_TOOL for lipo too.
9023         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
9024         * libltdl/config/ltmain.m4sh (func_extract_archives): Use.
9025
9026 2008-04-20  Gary V. Vaughan  <gary@gnu.org>
9027
9028         Fix misleading lt_dlopenadvise documentation.
9029         * doc/libtool.texi (lt_dlopenadvise): The last parameter is of
9030         type lt_dladvise, not lt_dladvise*.
9031         (my_dlopenext): Correct the example too.
9032         * NEWS: Updated.
9033         Reported by Gary Kumfert <kumfert@llnl.gov>
9034
9035 2008-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9036
9037         Fix testsuite cleanup warnings on AIX with NFS.
9038         * tests/testsuite.at [ aix ]: Set file mode creation so that
9039         'others' have no permissions.  Shared libraries are kept in
9040         memory on AIX after use if they are world-readable, which means
9041         on NFS mounts cleanup of test group directories will fail later.
9042         * THANKS: Update.
9043         Report and analysis by Michael Haubenwallner.
9044
9045         Fix nonportable use of expr.
9046         * libltdl/config/ltmain.m4sh (func_mode_link) <Transforming
9047         deplibs into only shared deplibs>: Fix expr portability issues,
9048         noted on FreeBSD.  While at it, simplify and avoid forking.
9049         Report by Bob Friesenhahn.
9050
9051         Exploit shell arithmetic expansion and ${#var}.
9052         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also check
9053         for arithmetic expansion, and ${#var}.
9054         (_LT_PROG_XSI_SHELLFNS): Define func_arith and func_len
9055         accordingly, falling back on 'expr'.  Note that the argument to
9056         func_len may not start with a hyphen.  In the pre-Posix
9057         fallback, take care not to rely on the exit status of the
9058         variable assignment (not portable), but set the length to
9059         $max_cmd_len instead.
9060         * libltdl/config/ltmain.m4sh (func_mode_link): Use func_arith
9061         and func_len throughout for integer arithmetic, fixing
9062         quadratical amount of counting for reloadable object and
9063         piecewise archive linking.  Change all comparisons with
9064         max_cmd_len to test for smaller, non-equal length.
9065         * THANKS: Update.
9066         Suggested by Roland Mainz.
9067
9068         * libltdl/config/ltmain.m4sh (func_mode_compile): Avoid
9069         redundant removal of old output files before compilation.
9070         Do not remove $obj until we have successfully grabbed the
9071         lockfile (in case the compiler doesn't grok `-c -o'), because
9072         it might be identical to $output_obj.
9073         At the end of the function, before we remove the lockfile,
9074         update $removelist so that if the trap hits after the lockfile
9075         has been removed, we do not accidentally remove $output_obj that
9076         does not belong to us.
9077         (func_write_libtool_object): Use $MV instead of mv.
9078
9079 2008-04-18  Andreas Schwab  <schwab@suse.de>
9080
9081         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Check optional
9082         argument.
9083         (AC_ENABLE_STATIC): Likewise.
9084         (AC_ENABLE_FAST_INSTALL): Likewise.
9085
9086 2008-04-16  Eric Blake  <ebb9@byu.net>
9087
9088         Make ChangeLog merges easier.
9089         * .gitattributes: New file.
9090         * HACKING: Mention how it helps.
9091
9092 2008-04-15  Peter O'Gorman  <peter@pogma.com>
9093
9094         Allow bootstrap from git repository.
9095         * Makefile.am: Pass srcdir as an argument to mkstamp and expect
9096         only 2 fields in mkstamps output.
9097         * clcommit.m4sh: Ditto.
9098         * configure.ac: Ditto.
9099         * libltdl/config/mkstamp: return a revision and date based on
9100         the number of lines which look like dates in all the ChangeLog*
9101         files in the directory we got as arg 1.
9102
9103 2008-04-11  Eric Blake  <ebb9@byu.net>
9104
9105         Fix usage of setmode without declaration on cygwin.
9106         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Ensure
9107         setmode has prototype for both mingw and cygwin.
9108
9109 2008-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9110
9111         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Move non-XSI
9112         definition of func_dirname_and_basename ...
9113         * libltdl/config/general.m4sh (func_dirname_and_basename):
9114         ... here, to use it for the other scripts that use general.m4sh
9115         (and as portable fallback for libtool).  Add marker for early
9116         insertion of generated shell functions (into libtool, not the
9117         other scripts) here.
9118         Use func_dirname_and_basename to compute progname, progpath.
9119         * libltdl/config/ltmain.m4sh (func_mode_help): Remove marker
9120         for insertion of generated shell functions.
9121         * tests/sh.test: Adjust function definition test to not match
9122         function call.
9123
9124         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS) <func_xform>:
9125         New function.
9126         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it to
9127         avoid two forks with XSI shells.
9128         * tests/suffix.test: Also test a file with multiple dots.
9129
9130 2008-04-10  Peter O'Gorman  <peter@pogma.com>
9131
9132         * libltdl/config/ltmain.m4sh (func_win32_libid,
9133         func_generate_dlsyms, func_extract_an_archive,
9134         func_extract_archives, func_mode_help): move these so they
9135         appear after func_mode_compile.
9136         * tests/nomode.test: Check that --mode=link --help works.
9137         Reported by Josh Triplett <josh@freedesktop.org>
9138
9139 2008-04-07  Gary V. Vaughan  <gary@gnu.arg>
9140
9141         * doc/libtool.texi (Libltdl interface): Add missing
9142         documentation for lt_dlopenavise.
9143         Reported by Anton Erti <anton@mips.complang.tuwien.ac.at>
9144
9145         * configure.ac, libltdl/configure.ac (AM_INIT_AUTOMAKE): Use
9146         gnu rather than gnits standards so that version number 2.2.3a
9147         is not rejected!
9148         Reported by Olly Betts <olly@survex.com>
9149
9150 2008-04-01  Gary V. Vaughan  <gary@gnu.arg>
9151
9152         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9153         number to 2.2.3a.
9154
9155         GNU Libtool 2.2.2 was released.
9156
9157         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9158         number to 2.2.2.
9159         * libltdl/Makefile.in (LTDL_VERSION_INFO): C:R+1:A because the
9160         interfaces are unchanged, even though we improved the code some
9161         more.
9162         * NEWS: Updated.
9163
9164         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
9165         libltdl/m4/ltoptions.m4: Bump serial numbers to account for
9166         changes since 2.2 release.
9167
9168 2008-03-27  Peter O'Gorman  <peter@pogma.com>
9169
9170         * libltdl/m4/libtool.m4 [_LT_REQUIRED_DARWIN_CHECKS]: Fix the
9171         test for -single_module and log it to config.log.
9172         Reported by Torok Edwin and Nigel Home.
9173
9174 2008-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9175
9176         Document that disable-static plus -all-static is not portable.
9177         * doc/libtool.texi (Link mode): -all-static does not go well
9178         with disable-static on most systems.
9179         * tests/static.at (static linking flags for programs) [!aix]:
9180         With --disable-static but nonempty link_static_flag, skip the
9181         m-all-static link.  Do not skip it on AIX, as there the
9182         enable_static is self-inflicted, and thus expected to work.
9183         * THANKS: Update.
9184         Report by Nix.
9185
9186 2008-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9187
9188         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): No need to escape
9189         backticks in argument to AC_MSG_WARN or AC_MSG_ERROR.
9190         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE, LTDL_INIT): Likewise.
9191
9192 2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9193
9194         * libltdl/config/ltmain.m4sh (NLS nuisances): Fix quoting of
9195         localization variables for shell-active characters.
9196         * tests/localization.at (localized compiler messages): Extend
9197         test.
9198         * THANKS: Update.
9199         Report by Mike Frysinger.
9200
9201 2008-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9202
9203         * tests/defs.m4sh (func_get_config): Build egrep regex to speed
9204         up extracting several variables at once.  Use it to extract all
9205         default variables at once.  Also extract build_alias and
9206         host_alias from the libtool script.
9207         (func_configure_nofail): Use build_alias and host_alias for
9208         --build and --host, respectively.  Pass each if nonempty.
9209         * tests/testsuite.at: Pass --build if build_alias is nonemtpy.
9210         * tests/quote.test: Extract ECHO and wl at once.
9211
9212         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_WIN32_DLL): Require
9213         AC_CANONICAL_HOST.
9214         * THANKS: Update.
9215         Report by Jakub Bogusz.
9216
9217 2008-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9218
9219         * NEWS: Update.
9220
9221 2008-03-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
9222
9223         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src) [file
9224         scope]: additional #includes and #defines to support...
9225         (func_emit_cwrapperexe_src) [main]: ensure stdout is set to
9226         binary mode for cygwin|mingw builds. Ensure temporary script
9227         file is written in binary mode for cygwin|mingw builds.
9228         (func_mode_link) [cygwin|mingw]: cross-build support - only
9229         use cwrapper to generate shell wrapper if building native;
9230         otherwise use func_emit_wrapper()
9231
9232 2008-03-12  Henning Nielsen Lund  <hnl_dk@amigaos.dk>
9233
9234         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
9235         (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [amigaos]: Port to
9236         AmigaOS4 shared libraries on powerpc.
9237         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [amigaos]:
9238         Likewise.
9239         * THANKS, NEWS: Update.
9240
9241 2008-03-09  Bruno Haible  <bruno@clisp.org>
9242         and Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9243
9244         Fix compiler output to be in the user locale.
9245         * libltdl/config/general.m4sh (func_show_eval_locale): New
9246         function, for running commands in the user locale.
9247         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it for
9248         compiling.
9249         * tests/localization.at (localized compiler messages): New test.
9250         * Makefile.am: Adjust.
9251         Report by Bruno Haible.
9252
9253 2008-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9254
9255         Fix several test failures on Cygwin and MinGW.
9256         * tests/nonrecursive.at: Use -no-undefined for foo.la.
9257         * tests/recursive.at: Likewise.
9258         * tests/subproject.at: Likewise.
9259         * tests/lt_dladvise.at: For systems where undefined symbols are
9260         not allowed, to not try to load the module libdepend.
9261         [ mingw ]: Add to list of such systems.
9262         * tests/testsuite.at (_LT_AT_TRANSLATE_TEXT_OUTPUT): New macro,
9263         to translate line ending of expout and experr files suitable for
9264         host executables.
9265         (LT_AT_CHECK, LT_AT_NOINST_EXEC_CHECK): Use it.
9266         Report by Bob Friesenhahn.
9267
9268         Fix installcheck dependencies, fix for --program-transform-name.
9269         * Makefile.am (installcheck-local): Depend upon tests/atconfig
9270         and $(srcdir)/$(TESTSUITE).
9271         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): New macro.
9272         (LT_AT_CHECK_LIBTOOLIZE): Use it to transform expout and experr
9273         files suitably.
9274         * HACKING: Update.
9275
9276         Drop usage of obsolete macros AC_EXEEXT and AC_OBJEXT.
9277         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
9278         (_LT_COMPILER_C_O, LT_PATH_NM, _LT_CMD_GLOBAL_SYMBOLS, _LT_SETUP):
9279         Drop usage of obsolete AC_OBJEXT and AC_EXEEXT.
9280         * tests/am-subdir.at (C++ subdir-objects): Likewise.
9281
9282 2008-03-07  Peter O'Gorman  <peter@pogma.com>
9283
9284         * tests/convenience.at (Java convenience archives): Skip test if
9285         gcj cannot compile a working executable from .java files.
9286         Report by Nelson H. F. Beebe.
9287
9288         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Need to set LD.
9289         Reported by Nelson H. F. Beebe.
9290
9291 2008-03-06  Peter O'Gorman  <peter@pogma.com>
9292
9293         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Undo commit - bad idea.
9294
9295         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Report FC=no if the FC
9296         compiler is not a GNU compiler and the CXX compiler is a GNU
9297         compiler.
9298         Reported by Nelson H. F. Beebe.
9299
9300 2008-03-06  Gary V. Vaughan  <gary@gnu.org>
9301
9302         * Makefile.maint (TSDEPS_DIST): Removed.  No longer used.
9303         (TSDEPS): libtool.m4 has long since moved to libltdl.
9304         (cvs-dist): Don't put the suffix dot in twice.
9305
9306 2008-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9307
9308         * tests/convenience.at (Java convenience archives): Skip test if
9309         gcj cannot compile a .java file.
9310         Report by Nelson H. F. Beebe.
9311
9312 2008-03-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9313
9314         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p): redirect
9315         and restore from stdin, not stdout.
9316         * tests/execute-mode.at (execute mode): Adjust test to catch
9317         this.
9318         Report by Roberto Bagnara.
9319
9320 2008-03-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9321
9322         Fix libltdl to not skip dlopen on systems with several loaders,
9323         such as HP-UX, Cygwin.
9324         * libltdl/slist.c (slist_concat): When appending to the tail
9325         of a list, do not drop items off the beginning of the list.
9326         * NEWS: Update.
9327
9328         * libltdl/config/ltmain.m4sh (func_mode_execute): Replace only
9329         arguments we have identified as shell or C wrappers.
9330         (func_emit_wrapper): Output error message on stderr.
9331         * tests/execute-mode.at: New file, with --mode=execute tests.
9332         * Makefile.am: Adjust.
9333         * NEWS: Update.
9334         Fixes 2.2 regression.  Report by Roberto Bagnara.
9335
9336         * libltdl/m4/libtool.m4 (_LT_CONFIG): Drop misleading `GNU'
9337         prefix before the host package name in the "Generated by" line
9338         for the libtool script.
9339         * THANKS: Update.
9340         Reports by Peter Rosin and Roberto Bagnara.
9341
9342         * doc/libtool.texi (Module loaders for libltdl): Fix typo.
9343
9344         * libltdl/loaders/dld_link.c (vl_exit): New function, zero out ...
9345         (vtable): ... this new file static variable split out from ...
9346         (get_vtable): ... here.  Initialize vtable, register vl_exit as
9347         dlloader_exit function.
9348         * libltdl/loaders/dlopen.c: Likewise.
9349         * libltdl/loaders/dyld.c: Likewise.
9350         * libltdl/loaders/load_add_on.c: Likewise.
9351         * libltdl/loaders/loadlibrary.c: Likewise.
9352         * libltdl/loaders/shl_load.c: Likewise.
9353         * libltdl/loaders/preopen.c: Likewise; vl_exit existed here
9354         already.
9355         * tests/lt_dlexit.at (lt_dlexit unloading libs): Update test.
9356         * NEWS: Update.
9357         Report by Andreas Schwab.
9358
9359 2008-03-01  Gary V. Vaughan  <gary@gnu.org>
9360
9361         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9362         number to 2.3a.
9363
9364         GNU Libtool 2.2 was released.
9365
9366         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9367         number to 2.2.
9368         * NEWS: Updated.
9369
9370         * tests/lt_dladvise.at, tests/lt_dlexit.at,
9371         tests/need_lib_prefix.at: Skip these tests when called from
9372         `make distcheck DISTCHECK_CONFIGURE_FLAGS=--disable-ltdl-install'.
9373         The tests try to link against the dummy installed libltdl.la
9374         from .../_inst/lib/libltdl.la, which does not exist when
9375         configured with --disable-ltdl-install.
9376
9377 2008-02-29  Gary V. Vaughan  <gary@gnu.org>
9378
9379         * libltdl/m4/argz.m4 (AC_CHECK_FUNCS): Also use our replacement
9380         argz if the system argz_add or argz_count are missing.
9381         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
9382
9383 2008-02-26  Karl Berry  <karl@freefriends.org>
9384
9385         * libltdl/argz.c (argz_add, argz_count): New functions.
9386         * libltdl/argz_.h: Declare them.
9387         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
9388
9389 2008-02-20  Peter O'Gorman  <peter@pogma.com>
9390
9391         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Do not call the
9392         _LT_SYS_DYNAMIC_LINKER macro here.
9393         Reported by Mike Frysinger <vapier@gentoo.org>
9394
9395 2008-02-15  Peter O'Gorman  <peter@pogma.com>
9396
9397         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix typo.
9398
9399 2008-02-14  Peter Breitenlohner  <peb@mppmu.mpg.de>
9400
9401         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better handling
9402         of predefined values for lt_cv_sys_lib_search_path_spec and
9403         lt_cv_sys_lib_dlsearch_path_spec.
9404
9405 2008-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9406
9407         * libtoolize.m4sh (func_install_pkgconfig_files): Only call
9408         func_install_pkgconfig_parent if $seen_autoconf.
9409         * tests/standalone.at (compiling softlinked libltdl)
9410         (compiling copied libltdl, installable libltdl)
9411         (linking libltdl without autotools): Use checked libtoolize
9412         calls to catch warnings.
9413
9414 2008-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9415
9416         * libltdl/configure.ac: Bump package version.
9417         * HACKING: Reminder to do it next time, too.
9418
9419 2008-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9420
9421         * tests/mdemo/Makefile.am (@LIBLTDL@): Update outdated
9422         dependencies.
9423         ($(top_distdir)/libltdl/libtool): Remove.
9424         Fixes spurious mdemo-dryrun failure with OpenBSD make.
9425
9426 2008-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9427
9428         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
9429         Treat like icc and ecc, for fixed `-Wl,' and `-KPIC' settings.
9430
9431 2008-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9432
9433         * tests/archive-in-archive.at
9434         (static library contains static library): Test also the actual
9435         broken link command, and the following install command, as
9436         UnixWare ar rightly refuses to put an archive into an archive.
9437         Report by Tim Rice.
9438
9439 2008-02-06  Peter O'Gorman  <peter@pogma.com>
9440
9441         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Only set default
9442         LT_INIT values for LT_INIT, not LTDL_INIT.
9443         Reported by Jochem Huhmann <joh@revier.com>
9444
9445 2008-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9446
9447         * tests/testsuite.at (LT_AT_TAG): For the CXX tag, if $CXX is
9448         g++, check that `g++ -v' works; AC_PROG_CXX may have set that
9449         as default value even if it found no C++ compiler.
9450         Report by Andreas Schwab.
9451
9452 2008-02-02  Gary V. Vaughan  <gary@gnu.org>
9453
9454         * libltdl/Makefile.inc (EXTRA_DIST): Now that we're not using
9455         Autoconf's AC_SOURCES macro, Automake can't trace our extra
9456         source files argz, lt__dirent.c and lt__strl.c.  List them
9457         manually here to make sure they are distributed.
9458         * NEWS: Updated.
9459         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
9460
9461 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9462
9463         * configure.ac (AC_INIT): Bump version number to 2.1c.
9464
9465         GNU Libtool 2.1b was released.
9466
9467         * configure.ac (AC_INIT): Bump version number to 2.1b.
9468         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Increment to account
9469         for new interfaces since the last libltdl update.
9470         * HACKING (Release Procedure): Note that LTDL_VERSION_INFO is now
9471         kept in libltdl/Makefile.inc.
9472
9473 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9474
9475         * tests/cdemo, tests/depdemo, tests/fcdemo, tests/pdemo,
9476         tests/demo, tests/f77demo, tests/mdemo, tests/tagdemo
9477         (distclean-local): Remove compiler file droppings left by
9478         Autoconf tests that prevent make dist from finishing on
9479         several machines including Mac OS 10.5.
9480
9481 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9482
9483         Unfortunately, the autoconf implementation of AC_LIBOBJ and
9484         friends requires all libobjs to be in the same directory, as
9485         declared by AC_CONFIG_LIBOBJ_DIR.  That might prevent using
9486         either recursive or nonrecursive libltdl if the parent project
9487         has libobjs of its own, except that this patch tracks libltdl's
9488         libobjs in another namespace:
9489
9490         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ, _LT_LIBSOURCES): Versions of
9491         AC_LIBOBJ and AC_LIBSOURCES that save missing sources in a
9492         ltdl_LIBOBJS automake macro, instead of the global LIBOBJS
9493         automake macro.  Content of the macros inspired by code from
9494         gnulib-tool.
9495         (_LTDL_MODE_DISPATCH): Initialise lt_libobj_prefix in
9496         nonrecursive mode.
9497         (LTDL_INIT): Push and pop the new definitions around potential
9498         sites that call AC_LIBOBJ.  Also, using lt_libobj_prefix,
9499         initialise ltdl_LIBOBJS and ltdl_LTLIBOBJS.
9500         * libtoolize.m4sh (func_fixup_Makefile): Substitute ltdl_LIBOBJS
9501         and ltdl_LTLIBOBJS for LIBOBJS and LTLIBOBJS during copying
9502         either Makefile.am or Makefile.inc, depending on ltdl_mode.
9503         Reported by Eric Blake <ebb9@byu.net>
9504
9505 2008-01-30  Gary V. Vaughan  <gary@gnu.org>
9506
9507         There are 5 distinct batches of files that libtoolize might
9508         install into a project, depending on whether libltdl is
9509         being installed in subproject mode, and in that case whether
9510         the parent project shares the config and macro directories
9511         with the subproject ltdl.  Make a separate function for each
9512         of those 5 batches (4 new functions below, plus the recently
9513         factored func_install_pkgltdl_files), and make a clearer
9514         distinction between when each of them is needed:
9515
9516         * libtoolize.m4sh (func_install_pkgmacro_subproject):
9517         New function for installing and reporting on m4 files copied
9518         to a subproject ltdl directory.
9519         (func_install_pkgmacro_parent): Similar new function for m4
9520         files copied solely for the use of the parent project,
9521         including serial checking.
9522         (func_install_pkgconfig_subproject): New function for
9523         installing and reporting on config helper files copied to a
9524         subproject ltdl directory.
9525         (func_install_pkgconfig_parent): Similar new function for
9526         config helper files copied solely for the use of the parent
9527         project, including serial checking.
9528         (func_install_pkgmacro_files, func_install_pkgconfig_files):
9529         Rewritten in terms of the above functions.
9530         * tests/libtoolize.at: Adjust test expout's to match newly
9531         regularized libtoolize output.
9532         Move parent project pkgconfig files to build-aux directory
9533         so that progress messages show an obvious difference to
9534         pkgconfig files installed to subproject `config' directory.
9535         (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test.
9536         (diagnose missing LT_CONFIG_LTDL_DIR): New test.
9537         (subproject ltdl with non-shared directories): New test.
9538         Reported by Eric Blake <ebb9@byu.net>
9539
9540 2008-01-29  Peter O'Gorman  <peter@pogma.com>
9541
9542         * libltdl/m4/libtool.m4 [darwin]: Changes to glob pattern matching
9543         to be safer.
9544
9545         Search the compiler path too.
9546         * libltdl/m4/libtool.m4 (compiler_lib_search_dirs): New variable.
9547         * libltdl/config/ltmain.m4sh: Use it.
9548         Reported by Maynard Johnson
9549
9550 2008-01-28  Gary V. Vaughan  <gary@gnu.org>
9551
9552         * libtoolize.m4sh (func_check_macros): Correct typo with
9553         '$opt_quiet ||' where '$opt_quiet &&' that was preventing
9554         func_check_macros from running!
9555
9556         * libtoolize.m4sh: Set opt_ltdl whenever seen_ltdl is set
9557         so that libtoolize behaves as though --ltdl was passed even
9558         if it wasn't as long as LTDL_INIT (or equivalent) was seen
9559         in configure.ac.  Adjust redundant '$opt_ltdl || $seen_ltdl'
9560         to simply '$opt_ltdl'.
9561         Reported by Eric Blake <ebb9@byu.net>
9562
9563         * libtoolize.m4sh (func_check_macros): Check opt_quiet
9564         in the function itself to simplify calling it.  Also move
9565         the definition of the function.
9566
9567         * libtoolize.m4sh (func_scan_files): Be sure to set the
9568         default libltdl mode to 'subproject' when libtoolize is
9569         executed before configure.ac has been updated.
9570
9571 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
9572
9573         * libtoolize.m4sh (func_install_pkgconfig_files)
9574         (func_install_pkgmacro_files, func_install_pkgltdl_files):
9575         Factored out from the 'Main' section of the file.
9576
9577         * libtoolize.m4sh (subproject_auxdir, subproject_macrodir):
9578         New variables to hold the default locations for auxfiles
9579         and macrofiles in a subproject libltdl.
9580         (ac_auxdir, ac_macrodir): New variables to hold the values
9581         passed by AC_CONFIG_AUX_DIR and AC_CONFIG_MACRO_DIR resp.
9582         (auxdir, macrodir): Adjust to contain the values to be
9583         used by libtoolize at runtime.
9584
9585         * libtoolize.m4sh (func_fixup_Makefile)
9586         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
9587         (func_massage_pkgconfig_files): Add missing $opt_debug.
9588
9589 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
9590
9591         * libtoolize (func_fixup_Makefile, func_massage_aclocal_DATA)
9592         (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
9593         Add missing $opt_debug.
9594
9595 2008-01-26  Gary V. Vaughan  <gary@gnu.org>
9596
9597         * libtoolize.m4sh (Main): Copy (or link) libltdl sources
9598         into project tree when LTDL_INIT was seen, whether or not
9599         `--ltdl' is passed.
9600         (func_check_macros): Recommend LTDL_INIT instead of
9601         LT_WITH_LTDL when `--ltdl' is used before configure.ac is
9602         upgraded.
9603         * tests/libtoolize.at: Test that it works.
9604         (_LT_AT_LTDL_SETUP): Factor out some common test setup.
9605         Reported by Eric Blake <ebb9@byu.net>
9606
9607 2008-01-24  Peter O'Gorman  <peter@pogma.com>
9608
9609         * doc/notes.texi: Fix errors in previous commit.
9610
9611         * libltdl/m4/libtool.m4 (sys_lib_search_path_spec,
9612         sys_lib_dlsearch_path_spec): Allow for a cache variable
9613         lt_cv_sys_lib_... to set these at configure time.
9614         * doc/notes.texi: Short note about the above change.
9615
9616 2008-01-24  Eric Blake  <ebb9@byu.net>
9617
9618         Add proper quoting to doc examples.
9619         * doc/libtool.texi: Use m4 quotes where appropriate.
9620         (Test descriptions): Fix truncated sentence.
9621
9622 2008-01-18  Gary V. Vaughan  <gary@gnu.org>
9623
9624         * Makefile.am (DISTCLEANFILES): Remove libtool.dvi generated
9625         by 'make dvi'.
9626
9627 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9628
9629         * libtoolize.m4sh (func_scan_files): Avoid matching our own
9630         macro code when scanning configure.ac and aclocal.m4.
9631         Don't produce spurious output if AC_PROG_RANLIB is found.
9632         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Add a (weak) check
9633         that we don't match our own macro code when searching for user
9634         code calling us.
9635         * TODO: Updated.
9636
9637 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9638
9639         New variable LTDLDEPS for use in output_DEPENDENCIES.
9640
9641         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE, _LTDL_INSTALLABLE)
9642         (LTDL_INIT): Set and substitute LTDLDEPS according to chosen
9643         method.
9644         * tests/configure-iface.at (installable libltdl)
9645         (--with-ltdl-include/lib, --with-included-ltdl): Test it.
9646         * doc/libtool.texi (Distributing libltdl): Document LTDLDEPS.
9647         * NEWS: Updated.
9648         Dependency bug exposed by Eric Blake in M4, found by Bob Proulx
9649         build daemon.
9650
9651 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9652
9653         * doc/libtool.texi (Distributing libltdl): Clarify that
9654         `${top_build_prefix}' may be used in place of `${top_builddir}/'.
9655
9656         * doc/libtool.texi (Distributing libltdl): Clarify that
9657         LTDL_INIT goes after LT_INIT; also show the latter in the
9658         respective examples.
9659         * tests/subproject.at: Adjust order.
9660
9661 2008-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9662
9663         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Use AM_CONDITIONAL
9664         only if defined.  Allows to use libltdl without aclocal.
9665
9666 2008-01-16  Peter O'Gorman  <peter@pogma.com>
9667
9668         * libltdl/m4/libtool.m4: Set GCC var for every tag, avoids need
9669         to set withGCC var.
9670
9671 2008-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9672
9673         * configure.ac: Set libltdl nonrecursive option, to avoid
9674         configuring libltdl inside the Libtool package.
9675
9676 2008-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9677
9678         Silence all non-warning output from `libtool --silent'.
9679         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
9680         (func_extract_archives, func_mode_link): Use func_verbose
9681         instead of func_echo for all non-warning output.
9682
9683         * Makefile.maint (fetch): Update to match upstream git sources.
9684         Pull `INSTALL' from gnulib instead of from Autoconf.
9685
9686         * doc/notes.texi: Mention AIX binutils deficiency for C++ code.
9687         Report by Rainer Tammer.
9688         Suggest using bash for configure.
9689
9690         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Fix to use
9691         new _LT_SET_OPTION semantics.
9692
9693 2008-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9694
9695         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define
9696         LTDL_DLOPEN_SELF_WORKS, depending upon lt_cv_dlopen_self.
9697         * libltdl/loaders/dlopen.c (vm_open) [!LTDL_DLOPEN_SELF_WORKS]:
9698         Fail for dlopen(NULL), so that the preopen loader is used.  This
9699         fixes mdemo-exec.test failures on AIX where dlopen(NULL)
9700         succeeds but dlsym resolves no symbol.
9701         * NEWS: Update.
9702         Report by Rainer Tammer.
9703
9704         * tests/am-subdir.at: Drop unused variables.
9705         * tests/configure-iface.at: Likewise.
9706         * tests/ctor.at: Likewise.
9707         * tests/early-libtool.at: Likewise.
9708         * tests/lt_dladvise.at: Likewise.
9709         * tests/old-m4-iface.at: Likewise.
9710         * tests/lt_dlexit.at: Likewise.  Also drop unused functions.
9711
9712         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Also copy needed
9713         lt~obsolete.m4.
9714
9715         * libltdl/config/ltmain.m4sh (func_mode_link): Fix warning
9716         about -l and -L for archives and objects as output, to not
9717         trigger for *.la files.  Non-convenience archives are diagnosed
9718         later on.
9719
9720         * tests/configure-iface.at: Ensure LTDLINCL is expanded
9721         before CPPFLAGS, so that even CPPFLAGS=-I/usr/local/include
9722         won't make the tests prefer an installed ltdl.h over the
9723         in-package one.
9724         * tests/lt_dladvise.at, tests/lt_dlexit.at: Likewise.
9725         * tests/need_lib_prefix.at, tests/old-m4-iface.at: Likewise.
9726         Report by Bob Friesenhahn.
9727
9728 2008-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9729
9730         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) <exclude_expsyms>:
9731         Also exclude `_GLOBAL__F[ID]_.*'.  Also set for the C++ tag.
9732         Fixes esp. demo/helldl build failure with GCC on AIX.
9733         Report by Rainer Tammer.
9734
9735 2008-01-11  Peter O'Gorman  <peter@pogma.com>
9736
9737         * libltdl/m4/libtool.m4 [darwin]: Reorganize darwin support, use
9738         dsymutil if it is available so that debugging is possible, check
9739         for nmedit and dsymutil with AC_CHECK_TOOL, use the linker flag
9740         -exported_symbols_list in preference to nmedit if it is available.
9741         Drop support for xlc, it is probably broken.
9742         * tests/template.at [darwin]: Skip this test, I can not find a way
9743         to make it work on darwin9 with Xcode-3.0.
9744         * NEWS: Note the dropping of xlc support.
9745
9746 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9747
9748         * libltdl/m4/libtool.m4 (LT_INIT): m4_require, not AC_REQUIRE
9749         _LT_CHECK_BUILDDIR, as it's m4_defun'ed, not AC_DEFUN'ed.
9750         Report by Peter O'Gorman.
9751
9752         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE): Restore correct
9753         _LT_BUILD_PREFIX-using code.
9754
9755 2008-01-08  Gary V. Vaughan  <gary@gnu.org>
9756
9757         * tests/recursive.at: Remove bogus --debug option.
9758         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9759
9760         * tests/configure-iface.at: Build libltdl in a subdir so that
9761         it can be easily removed without trying to remove config.log
9762         on windows (which can't delete a file until it is closed).
9763         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9764
9765         * libltdl/m4/ltdl.m4 (LTDL_INSTALLABLE): Use _LT_BUILD_PREFIX
9766         instead of ${top_builddir} for Autoconf-2.62.
9767         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9768
9769         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Correct closing
9770         comment.
9771         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9772
9773         * NEWS: Grammar nit.
9774
9775         * tests/configure-iface.at, tests/nonrecursive.at,
9776         tests/recursive.at, tests/subproject.at (_LTDL_SETUP):
9777         Renamed to _LT_AT_LTDL_SETUP to avoid a nameclash with
9778         libltdl/m4/ltoptions.m4:_LTDL_SETUP from yesterday's patch.
9779         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9780
9781 2008-01-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9782
9783         * tests/runpath-in-lalib.at (Runpath in libtool library files):
9784         Compile program file without libtool.
9785         Report by Rainer Tammer.
9786
9787 2008-01-07  Rainer Tammer  <tammer@tammer.net>  (tiny change)
9788             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9789
9790         Support AIX 6.1.
9791         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
9792         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
9793         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
9794         (_LT_LANG_FC_CONFIG): Adjust case patterns to match AIX 6
9795         through 9 as well.
9796         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
9797         * NEWS: Update.
9798         * THANKS: Update.
9799
9800 2008-01-07  Gary V. Vaughan  <gary@gnu.org>
9801
9802         Move libltdl build mode options from LT_CONFIG_LTDL_DIR to
9803         LTDL_INIT.  Accept (optional) new 'convenience' and 'installable'
9804         options in lieu of LTDL_CONVENIENCE and LTDL_INSTALL macros. And
9805         also, implement --with-included-ltdl, --with-ltdl-lib and
9806         --with-ltdl-include configure-time options:
9807
9808         * libltdl/m4/ltoptions.m4: Associate existing option settings with
9809         LT_INIT.
9810         (LT_OPTION_DEFINE): Associate options 'nonrecursive', 'recursive',
9811         'subproject', 'installable' and 'convenience' with LTDL_INIT.
9812         (_LT_MANGLE_OPTION, _LT_SET_OPTION, _LT_IF_OPTION)
9813         (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Add MACRO-NAME argument to
9814         support options to named macros instead of hardcoding only LT_INIT
9815         options.
9816         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE): Factor common code from
9817         LTDL_CONVENIENCE and LTDL_INIT([convenience]).
9818         (_LTDL_INSTALLABLE): Factor out common code from LTDL_INSTALLABLE
9819         and LTDL_INIT([installable]).
9820         (_LTDL_SETUP): Renamed from LTDL_INIT.  Support new configure-time
9821         options: --with-included-ltdl, --with-ltdl-lib,
9822         --with-ltdl-include.
9823         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
9824         (LT_WITH_LTDL): Removed.
9825         (LTDL_INIT): Parse caller options.
9826         * libltdl/m4/libtool.m4 (LT_INIT): Declare that this macro must be
9827         expanded before LTDL_INIT, and be sure to parse caller options.
9828         * configure.ac: Call directly into internal _LTDL_SETUP macro.
9829         * libtoolize.m4sh (func_scan_files): Ltdl mode argument moved from
9830         LT_CONFIG_LTDL_DIR to LTDL_INIT.
9831         * tests/nonrecursive.at, tests/recursive.at: Use new interfaces.
9832         * tests/configure-iface.at: Test it.
9833         * Makefile.am (TESTSUITE_AT): Add configure-iface.at.
9834         * doc/libtool.texi (Distributing libltdl): Document improved
9835         LTDL_INIT interfaces.
9836         * NEWS: Updated.
9837
9838 2008-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9839
9840         * libltdl/config/ltmain.m4sh (func_mode_link): When creating
9841         reloadable object files, avoid issuing plain `rm -f' without
9842         further arguments, even if the line length limit is ridiculously
9843         low as in the `Run tests with low max_cmd_len' test.  This
9844         failure is exposed on NetBSD.
9845         Report by Patrick Welche.
9846
9847         * Makefile.am (EXTRA_DIST): Add ChangeLog.2007.
9848         * ChangeLog.2007: New, rotated, from...
9849         * ChangeLog: ...here.
9850         * NEWS, README, README.alpha, Makefile.am, libtoolize.m4sh,
9851         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
9852         libltdl/m4/libtool.m4: Bump copyright years.
9853
9854 2007-11-30  Stefan Sperling  <stsp@elego.de>  (tiny change)
9855
9856         * doc/libtool.texi (Linking executables): Reorder paragraphs.
9857
9858 2007-11-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9859
9860         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: The IBM
9861         XL 8.0 C++ compiler may also be called xlc++*, not only xlC*.
9862         Report by Nysal K Jan <jnysal@in.ibm.com>.
9863
9864 2007-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9865
9866         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): New macro.
9867         Warn about whitespace in the absolute build tree name.
9868         (LT_INIT): Use it.
9869         * THANKS: Update.
9870         Report by Jim Meyering.
9871
9872         * libltdl/config/ltmain.m4sh (func_extract_an_archive)
9873         (func_extract_archives): Add some quoting.
9874
9875 2007-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9876
9877         Use `${top_build_prefix}' for better compatibility with non-GNU make.
9878         * libltdl/m4/ltdl.m4 (_LT_BUILD_PREFIX): New macro.
9879         If the Autoconf version used is >= 2.62, then expand to
9880         `${top_build_prefix}', otherwise to `${top_builddir}/'.
9881         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Use it for defining
9882         LIBLTDL.  Fixes a build failure with AIX make in a package
9883         using convenience libltdl in nonrecursive mode.
9884         * doc/libtool.texi (Distributing libltdl): Document requirements
9885         to define `top_build_prefix' if Automake is not used.
9886         Report by Bob Friesenhahn.
9887
9888 2007-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9889
9890         Avoid warnings about conftest.dSYM directories on Mac OS X Leopard.
9891         * libltdl/m4/libtool.m4 (_LT_LINKER_BOILERPLATE)
9892         (_LT_LINKER_OPTION, _LT_CMD_GLOBAL_SYMBOLS): Remove
9893         conftest.dSYM directory.
9894         Report and analysis by Jeff Squyres and Peter O'Gorman.
9895
9896 2007-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9897
9898         * libltdl/configure.ac: Drop the broken and long-disabled code
9899         to output a banner for the libltdl configure.  Avoids the need
9900         to ship mkstamp with libltdl.
9901
9902 2007-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9903
9904         * tests/runpath-in-lalib.at: New test.
9905         * Makefile.am: Update.
9906         Report by Benoit SIGOURE <tsuna@lrde.epita.fr>.
9907
9908 2007-10-16  Eric Blake  <ebb9@byu.net>
9909
9910         Speed up bootstrap by improving lt_join.
9911         * libltdl/m4/ltsugar.m4 (lt_join, _lt_join): Rewrite to mirror
9912         Autoconf 2.62's faster implementation.
9913
9914 2007-10-12  Eric Blake  <ebb9@byu.net>
9915
9916         Whitespace cleanup.
9917         * libltdl/m4/ltsugar.m4: Avoid space-tab in indents.
9918         * libltdl/m4/libtool.m4: Avoid trailing space.
9919
9920         Deal with Autoconf 2.62's semantic change in m4_append.
9921         * libltdl/m4/ltsugar.m4 (lt_append): Replace broken versions of
9922         m4_append.
9923         (lt_if_append_uniq): Don't require separator to be overquoted, and
9924         avoid broken m4_append.
9925         (lt_dict_add): Fix typo.
9926         * libltdl/m4/libtool.m4 (_LT_DECL): Don't overquote separator.
9927
9928 2007-10-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9929
9930         * libltdl/config/ltmain.m4sh: Also sanitize `LANGUAGE'.
9931         (func_mode_execute): Also restore `LANGUAGE', for old glibc.
9932         Report by Paul Eggert against Autoconf.
9933
9934 2007-10-11  Eric Blake  <ebb9@byu.net>
9935
9936         * libltdl/.cvsignore: Ignore argz.h.
9937
9938 2007-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9939
9940         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
9941         <lt_cv_prog_compiler_pic_works>: Renamed from
9942         lt_prog_compiler_pic_works.
9943         <lt_cv_prog_compiler_static_works>: Renamed from
9944         lt_prog_compiler_static_works.
9945         * NEWS: Update.
9946
9947 2007-10-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9948
9949         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
9950         extension `.sx'.
9951         * tests/suffix.test: Test it.
9952
9953 2007-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9954
9955         * libltdl/lt_dlloader.c (loader_callback, lt_dlloader_get): Use
9956         NULL, not 0, for the benefit of too picky compilers like PGI.
9957         * slist.c (slist_tail): Likewise.  Include stddef.h, for NULL.
9958         Report by Jeff Squyres.
9959
9960 2007-09-05  Eric Blake  <ebb9@byu.net>
9961
9962         * libltdl/ltdl.c (lt_dlcaller_get_data): Work even when no caller
9963         has set data.
9964
9965 2007-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9966
9967         * doc/libtool.texi (User defined module data)
9968         <lt_dlinterface_register>: Document that a NULL place matches
9969         all modules.
9970         * libltdl/lt_dlloader.c (lt_dlloader_remove): Actually iterate
9971         over all open modules when looking for modules that use it.
9972         If a resident module is found, return but do not set the error
9973         string.
9974         * libltdl/ltdl.c (lt_dlexit): When removing dlloaders, ignore
9975         errors that stem from earlier failed commands.  Exposed by the
9976         lt_dladvise test.
9977         Fixes regression over branch-1-5.
9978         Memleak report as Coverity CID 19 via Jeff Squyres.
9979
9980 2007-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9981
9982         * NEWS: Update.
9983
9984         * libltdl/ltdl.c (trim): Fix possible write beyond array bound.
9985
9986         * libltdl/ltdl.c (lt_dlopenadvise): Instead of asserting, return
9987         FILE_NOT_FOUND if the filename is "".
9988
9989         * libltdl/ltdl.c (try_dlopen): Fix computation of extension,
9990         avoids subtracting pointer from NULL pointer.
9991
9992         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Do not test
9993         array address of sys_dlsearch_path against NULL, rather test for
9994         nonempty contents.
9995         Coverity reports CID 148 and CID 149 via Jeff Squyres.
9996
9997         * libltdl/ltdl.c (tryall_dlopen_module): Fix string length
9998         computation: do not allocate more than needed.
9999
10000 2007-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10001
10002         * libltdl/loaders/preopen.c (vm_close): `module' is unused.
10003         Coverity report CID 158 via Jeff Squyres.
10004
10005         * libltdl/ltdl.c (parse_dotla_file): If we run out of memory,
10006         do not close the .la file twice.
10007         Coverity report CID 440 via Jeff Squyres.
10008
10009         * libltdl/ltdl.c (has_library_ext): Remove dead code.
10010         Coverity report CID 561 against Open MPI via Jeff Squyres.
10011
10012 2007-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10013
10014         * libltdl/slist.c (slist_remove): When a matching item is found,
10015         break out of the loop to return the first match; also fixes
10016         possible NULL dereference.
10017
10018         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10019         (_LT_LANG_CXX_CONFIG) [ linux ]: Add support for IBM XL 8.0
10020         C/C++ (xlc*, xlC*) and IBM XL Fortran 10.1 (xlf*) on GNU/Linux,
10021         tested on ppc, pending a $shlibpath_var related fix.
10022         (_LT_SYS_HIDDEN_LIBDEPS): Double-quote $output_verbose_link_cmd
10023         properly during evaluation, obsoleting $no_glob_subst mangling.
10024         * NEWS: Update.
10025
10026 2007-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10027
10028         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
10029         [ k*bsd*-gnu ] <shlibpath_overrides_runpath>: Avoid spurious
10030         output in runpath test.
10031
10032 2007-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10033
10034         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ mingw, cygwin ]
10035         <GCJ>: Do not use -DDLL_EXPORT.
10036         Report by Ross Ridge <rridge@csclub.uwaterloo.ca>.
10037
10038         * Makefile.am (edit): Do not warn against manual editing for the
10039         generated files libtool, libtoolize, libltdl/m4/ltversion.m4,
10040         tests/defs, as they are still in a preferred source code form as
10041         required by GPL.
10042         Report by DJ Delorie.
10043
10044 2007-08-15  Dirk Mueller  <dmueller@suse.de>  (tiny change)
10045             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10046
10047         * libltdl/ltdl.c (parse_dotla_file): Avoid a strlen.  When
10048         reading .la files, cope with files that are not
10049         newline-terminated.
10050
10051 2007-08-05  Tilman Koschnick  <til@subnetz.org>  (tiny change)
10052
10053         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
10054         [ linux ]: Treat pgcpp as Portland Group C++ compiler as well.
10055
10056 2007-08-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10057
10058         * libltdl/ltdl.c (try_dlopen): Use `attempt' rather than
10059         `filename', as the former has the needed extension when called
10060         by lt_dlopenext.
10061         Report by Brian Barrett.
10062
10063 2007-07-27  Peter Rosin  <peda@lysator.liu.se>
10064
10065         * Makefile.am: Pass STRIP through to the testsuite, so that
10066         tests that run configure will use the same strip program.
10067
10068 2007-07-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10069
10070         * tests/mdemo-exec.test: Also try absolute library names.
10071         * tests/mdemo/main.c (test_dl, main): Try lt_dlopenext as well.
10072         * THANKS: Update.
10073         Report by Brian Barrett.
10074
10075 2007-07-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10076
10077         * doc/fdl.texi: Update to GFDL 1.2.
10078         * doc/libtool.texi: Adjust.  Put License in Appendix.
10079
10080         * libltdl/config/ltmain.m4sh (func_mode_link): Remove each
10081         intermediate relinked object after use, to avoid quadratic space
10082         complexity when linking partially.
10083         Report by Isidor Zeuner <eezyy@gmx.net>.
10084
10085 2007-07-23  Eric Blake  <ebb9@byu.net>
10086
10087         * libltdl/config/ltmain.m4sh: Whitespace cleanup.
10088
10089         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
10090         <chase_symlinks>: Avoid compiler warning.
10091
10092 2007-07-22  Peter Rosin  <peda@lysator.liu.se>
10093
10094         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Add
10095         support for Microsoft Visual C. Also, older MinGW versions
10096         seem to need stdint.h to find intptr_t.
10097
10098 2007-07-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10099
10100         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]:
10101         Ignore lines in ld.so.conf starting with 'hwcap '.
10102
10103 2007-07-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
10104
10105         * tests/cdemo-exec.test: use $EXEEXT where appropriate
10106         to correct mingw cross-compile issues.
10107         * demo-deplibs.test: Ditto.
10108         * demo-exec.test: Ditto.
10109         * demo-inst.test: Ditto.
10110         * demo-relink.test: Ditto.
10111         * depdemo-exec.test: Ditto.
10112         * depdemo-inst.test: Ditto.
10113         * depdemo-relink.test: Ditto.
10114         * f77demo-exec.test: Ditto.
10115         * fcdemo-exec.test: Ditto.
10116         * mdemo-exec.test: Ditto.
10117         * mdemo-inst.test: Ditto.
10118         * mdemo2-exec.test: Ditto.
10119         * pdemo-exec.test: Ditto.
10120         * pdemo-inst.test: Ditto.
10121         * tagdemo-exec.test: Ditto.
10122
10123 2007-07-14  Peter Rosin  <peda@lysator.liu.se>
10124
10125         * AUTHORS, THANKS: Peter Ekberg got married, now Peter Rosin.
10126
10127 2007-07-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
10128
10129         * libltdl/m4/libtool.m4 (func_dirname_and_basename) <XSI>:
10130         New function.
10131         (func_dirname_and_basename) <!XSI>: New function.
10132         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname):
10133         Call it.  Also, take advantage of missed optimization using
10134         func_dirname's additional arguments.
10135         (func_mode_compile): Call it.
10136         (func_mode_install): Call it.
10137         (func_mode_link): Call it.
10138
10139 2007-07-12  Peter Rosin  <peda@lysator.liu.se>
10140
10141         * libltdl/config/ltmain.m4sh (func_mode_link): Strip the cwrapper
10142         using $STRIP instead of relying on the tools to support -s, which
10143         MSVC doesn't.
10144
10145 2007-07-06  Peter O'Gorman  <peter@pogma.com>
10146
10147         * libltdl/config/libtool.m4sh: Don't pass -msg_* through to the
10148         linker.
10149         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
10150
10151 2007-07-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
10152
10153         * libltdl/lt__alloc.c, libltdl/loaders/preopen.c,
10154         libltdl/loaders/dyld.c, libltdl/loaders/dlopen.c, libltdl/ltdl.c,
10155         libltdl/lt_error.c, libltdl/lt_dlloader.c, libltdl/lt__dirent.c:
10156         Include lt__private.h prior to any system headers.
10157         * libltdl/lt__alloc.c: Remove redundant inclusion of configuration
10158         header.
10159
10160 2007-07-04  Eric Blake  <ebb9@byu.net>
10161
10162         * libltdl/ltdl.c (advise_dup): Delete function no longer used
10163         after memleak fix three days ago.
10164
10165 2007-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10166
10167         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Cater to
10168         old Sparc Solaris 7 ld that does not understand `-64'.
10169         Report by Vincent Lefevre <vincent@vinc17.org>.
10170
10171 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10172
10173         * libltdl/m4/lt~obsolete.m4 (LTOBSOLETE_VERSION): New macro, to
10174         force-pull in this file by aclocal.
10175         * libltdl/m4/libtool.m4 (LT_INIT): Require LTOBSOLETE_VERSION.
10176         * tests/libtoolize.at (upgrading verbatim style aclocal.m4):
10177         Adjust.
10178         Report by H. J. Lu <hjl@lucon.org>.
10179
10180         * libltdl/ltdl.c (tryall_dlopen): Rename argument to have typed
10181         alias of `advise' instead of allocating a copy.  Fixes memleak.
10182
10183 2007-06-30  Peter Breitenlohner  <peb@mppmu.mpg.de>
10184
10185         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Correct a typo
10186         ("-dld" instead of "-ldld").
10187
10188 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
10189
10190         Add a test to simulate a failure visible on systems which
10191         need a library prefix like 'lib', such as BeOS.  Fix a number
10192         of bugs exposed by this test in order for it to pass.
10193         Currently the prefix is hardcoded as 'lib', as I am not aware
10194         of systems that require a different prefix:
10195
10196         * libltdl/loaders/preopen.c (lt_dlpreload_open):  Move error
10197         condition out of test loop to be sure that each originator is
10198         tried, instead of erroring out if the first doesn't match.
10199         Support passing NULL as the originator to load all preloaded
10200         modules originating in the program itself.
10201         * libltdl/lt_dlloader.c (lt_dlloader_dump): New debug function.
10202         * libltdl/libltdl/lt_dlloader.h (lt_dlloader_dump): Declare it
10203         when LT_DEBUG_LOADERS is defined at compile time.
10204         * libltdl/ltdl.c (lt_dlinit): Dump loader list after successful
10205         initialisation.
10206         (tryall_dlopen): Add a new VTABLE parameter to force use of a
10207         specific loader in preference to trying every loader in turn.
10208         Adjust all callers.
10209         (try_dlopen): Always see whether a module was preloaded for
10210         module names with no directory component before searching the
10211         filesystem for a match.
10212         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Declare
10213         a new global_symbol_to_c_name_address_lib_prefix variable.
10214         (global_symbol_to_c_name_address_lib_prefix): The sed
10215         expressions to use when a lib prefix is enforced need to be
10216         slightly different to work with preloaded modules.
10217         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): In order
10218         to name preloaded symbols correctly for the lookup algorithm
10219         to work when the loaded module file must be prefixed with lib.
10220         Use global_symbol_to_c_name_address_lib_prefix when
10221         need_lib_prefix is other than no.
10222         * tests/need_lib_prefix.at: New test to check for breakage on
10223         hosts where need_lib_prefix is unknown.
10224         * Makefile.am (TESTSUITE_AT): Add new test.
10225         * tests/TODO: Note missing tests that would have caught some
10226         of the latent bugs fixed by this patch.
10227         * HACKING: Document libltdl keyword.
10228         * NEWS: Updated.
10229
10230 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
10231
10232         Reenable compilation of libltdl with C++:
10233
10234         * libltdl/ltdl.c (tryall_dlopen): Rename the try variable to
10235         attempt, and cast explicitly.
10236         (advise_dup): Add explicit cast.
10237
10238 2007-06-22  Peter O'Gorman  <peter@pogma.com>
10239
10240         * libltdl/config/ltmain.m4sh (version-number) [irix]: Don't subtract
10241         1 from major as it may be less than age.
10242
10243 2007-06-21  Noah Misch  <noah@cs.caltech.edu>
10244
10245         * tests/f77demo/configure.ac [--with-dist]: New option.  Skip most
10246         Fortran checks when given.
10247         * tests/fcdemo/configure.ac [--with-dist]: Likewise.
10248         * Makefile.am (@DIST_MAKEFILE_LIST@): Pass --with-dist.
10249         Reported by Benoit Sigoure <tsuna@lrde.epita.fr>.
10250
10251 2007-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
10252
10253         * AUTHORS: Add myself.
10254
10255 2007-06-18  Charles Wilson  <libtool@cwilson.fastmail.fm>
10256
10257         * libltdl/config/ltmain.m4sh: Add new magic variable
10258         for use with cwrapper.
10259         (func_ltwrapper_script_p): New function.
10260         (func_ltwrapper_executable_p): New function.
10261         (func_ltwrapper_scriptname): New function.
10262         (func_ltwrapper_p): Accomodate both wrapper scripts and
10263         wrapper executables.
10264         (func_mode_execute): Handle $file that is a wrapper
10265         script and $file that is a wrapper executable differently.
10266         (func_mode_install) [cygwin|mingw]: If $file is a wrapper
10267         executable, use func_ltwrapper_scriptname to determine
10268         wrapper script name. Afterwards, always use
10269         func_ltwrapper_script_p instead of func_ltwrapper_p.
10270         (func_emit_libtool_wrapper_script): Rename to...
10271         (func_emit_wrapper): ...this. All callers changed.
10272         (func_emit_libtool_cwrapperexe_source): Rename to...
10273         (func_emit_cwrapperexe_src): ...this. All callers changed.
10274         Embed new magic_exe variable into source. Private transient
10275         wrapper script now called foo_ltshwrapperTMP, not
10276         foo_ltshwrapper.
10277         (func_emit_cwrapperexe_src) [main, mingw]: Use _spawnv
10278         and return child's exit code manually rather than rely on
10279         broken execv.
10280         (func_mode_link) [cygwin|mingw]: Don't call dirname and
10281         basename directly; use func_dirname and func_basename
10282         when computing cwrapper names.  Use cwrapper to generate
10283         wrapper script, and use pathname returned by
10284         func_ltwrapper_scriptname instead of $output.
10285         (func_mode_link) [NOT cygwin|mingw]: move wrapper script
10286         generation for non-win32 inside case statement, as default
10287         case.
10288         (func_mode_uninstall) [$name's extension != .lo|.la]:
10289         'clean' mode must handle $file differently if it is a libtool
10290         wrapper script, or if it is a libtool wrapper executable.
10291         * tests/destdir.at [Simple DESTDIR install]: $EXEEXT fixups.
10292         * tests/destdir.at [DESTDIR with in-package deplibs]: Ditto.
10293
10294 2007-06-17  Noah Misch  <noah@cs.caltech.edu>
10295
10296         * AUTHORS: Add myself.
10297
10298 2007-06-17  Peter O'Gorman  <peter@pogma.com>
10299
10300         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): add quotes to
10301         the test -n.
10302
10303 2007-06-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
10304
10305         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): ensure stderr
10306         is redirected even when getconf does not exist.
10307
10308 2007-06-09  Charles Wilson  <libtool@cwilson.fastmail.fm>
10309
10310         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
10311         Take an argument to specify value assigned to
10312         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR in the emitted
10313         script.
10314         (func_emit_libtool_cwrapperexe_source) [file scope]:
10315         define permission flags S_IXGRP and S_IXOTH if not
10316         already defined.
10317         (func_emit_libtool_cwrapperexe_source) [LTWRAPPER_DEBUGPRINTF]:
10318         Use C89-compatible syntax to mimic variadic macros.
10319         Adjust all callers.
10320         (func_emit_libtool_cwrapperexe_source) [check_executable]:
10321         avoid embedded #ifdefs; use S_IXGRP and S_IXOTH
10322         unconditionally.
10323         (func_emit_libtool_cwrapperexe_source) [make_executable]:
10324         ditto.
10325         (func_emit_libtool_cwrapperexe_source): don't rewrite
10326         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR posthoc; instead pass
10327         correct argument when calling func_emit_libtool_wrapper_script.
10328         (func_mode_link): pass correct argument when calling
10329         func_emit_libtool_wrapper_script.
10330
10331 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
10332
10333         * libltdl/config/ltmain.m4sh (func_emit_libtool_cwrapperexe_source):
10334         ensure that generated source follows GCS as nearly as
10335         possible.
10336
10337 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
10338
10339         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
10340         add code block to handle cases when wrapper script is in $objdir.
10341         (func_emit_libtool_cwrapperexe_source): replace DEBUG() macro
10342         with namespace-safe LTWRAPPER_DEBUGPRINTF(). Call
10343         func_emit_libtool_wrapper_script() with appropriate filters to
10344         embed script text in C char* static variable.
10345         (f_e_l_c_s: main): add new option --lt-dump-script, parse argv[]
10346         for it, and take appropriate action.  Call chase_symlinks()
10347         on argv[0], in case this.exe was launched via one.  Use chased
10348         value to determine full absolute pathname of wrapper script, in
10349         $objdir. Unconditionally write script out to this pathname and
10350         set permission bits.  Remove extraneous ';' from debugging loop.
10351         (f_e_l_c_s: main) [mingw]: DOS-ize $SHELL before populating
10352         newargv[0]; if $TARGETSHELL environment variable is set, use
10353         it instead of $SHELL and do not DOS-ize.  Ensure newargv[1]
10354         (wrapper script absolute path) uses only '/', not '\'.  Make
10355         sure to call execv() with DOS-ized $SHELL (or un-DOS-ized
10356         $TARGETSHELL, if set)
10357         (f_e_l_c_s: make_executable): new function
10358         (f_e_l_c_s: chase_symlinks): new function (no-op if !S_ISLNK)
10359
10360 2007-06-03  Peter O'Gorman  <peter@pogma.com>
10361
10362         * libltdl/m4/libtool.m4 (old_archive_cmds): Remove
10363         old_deplibs.
10364         * tests/archive-in-archive.at: Check for archives as members
10365         of static archives. Currently XFAILS, above only eliminates
10366         one of the two static archives.
10367         * Makefile.am: Add test.
10368         Reported by Daniel Macks <dmacks@netspace.org>
10369
10370 2007-06-01  Steve Ellcey  <sje@cup.hp.com>
10371
10372         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Try using getconf
10373         to set lt_cv_sys_max_cmd_len.
10374
10375 2007-05-28  Peter O'Gorman  <peter@pogma.com>
10376
10377         * libltdl/config/ltmain.m4sh (func_mode_link),
10378         libltdl/m4/libtool.m4 [darwin]: Only use ${wl} in verstring
10379         with xlc.
10380
10381 2007-05-22  Gary V. Vaughan  <gary@gnu.org>
10382
10383         * tests/lt_dladvise.at:  Use the lib prefix throughout for
10384         better portability - testing whether modules build and load
10385         without that prefix is not the domain of this test.
10386         Also, only run the test of the global hint with the depend
10387         module on hosts that can compile a module without passing
10388         -no-undefined in link mode.
10389
10390 2007-05-10  Noah Misch  <noah@cs.caltech.edu>
10391
10392         * tests/duplicate_deps.at: Make the XFAIL unconditional, but
10393         skip the test if the test link would succeed even without
10394         --preserve-dup-deps.
10395
10396         * libltdl/config/general.m4sh (func_echo): Use $* instead of
10397         ${1+"$@"}.
10398
10399 2007-05-09  Eric Blake  <ebb9@byu.net>
10400
10401         * libltdl/libltdl/lt_error.h (LT_ERROR_LEN_MAX): Adjust, to fix
10402         buffer overflow in previous patch.
10403
10404 2007-05-09  Gary V. Vaughan  <gary@gnu.org>
10405
10406         * tests/lt_dladvise.at: Commit missing file from below.
10407
10408 2007-05-08  Gary V. Vaughan  <gary@gnu.org>
10409
10410         Without this patch, lt_dlopen always opens modules with symbol
10411         visibility set according to the underlying implementation.
10412         Here, we add lt_dlopenadvise() to allow callers to request,
10413         among other things, local or global symbol visibility from the
10414         underlying dlloader:
10415
10416         * libltdl/ltdl.c (LT_DLRESIDENT_FLAG): Removed.
10417         (LT_DLIS_RESIDENT): Use public is_resident info field.
10418         (LT_DLIS_SYMLOCAL, LT_DLIS_SYMGLOBAL): New macros to test for
10419         module symbol visibility status.
10420         (tryall_dlopen): If vtable->module_open() was able to act on
10421         either is_symlocal or is_symglobal hints, store that in
10422         the handle flags.
10423         (lt_dlopenadvise): New function that works like lt_dlopen(),
10424         but accepts an advise type to determine whether to ask
10425         dlloaders to change default symbol visibility.
10426         (lt_dlopen, lt_dlopenext): Just call lt_dlopenadvise() with
10427         the correct parameters.
10428         (lt_dladvise_init, lt_dladvise_destroy): New functions to
10429         initialize and destroy an advise type hint.
10430         (lt_dladvise_ext, lt_dladvise_resident, lt_dladvise_local)
10431         (lt_dladvise_global): Set hints on an advise type.
10432         (openadvise): Factored out of lt_dlopenadvise.
10433         (has_library_ext): Factored out of lt_dlopenadvise.
10434         * libltdl/ltdl.h: Declare all of the above.
10435         (lt_dlinfo): New fields for advise hints.
10436         * libltdl/libltdl/lt_dlloader.h (lt_module_open): Add a new
10437         advise parameter.  Adjust all callers.
10438         (lt_dladvise): New opaque type for advise hints.
10439         * libltdl/libltdl/lt__private.h (lt__advise): Declare
10440         contents of opaque lt_dladvise type.
10441         * libltdl/libltdl/lt_error.h (CONFLICTING_FLAGS): New error
10442         for attempts to have local and global symbol visibility at the
10443         same time.
10444         * libltdl/loaders/dld_link.c, libltdl/loaders/dyld.c,
10445         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
10446         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Adjust.
10447         * libltdl/loaders/dlopen.c (RTLD_LOCAL, RTLD_GLOBAL): Try to
10448         define these symbols if the system has equivalents.
10449         (vmopen): If unable to act on a caller request to set symbol
10450         visibility, then unset the relevant hints in the advise type.
10451         * tests/lt_dladvise.at: New tests for the above.
10452         * doc/libtool.texi (Libltdl Interface): Updated.
10453         * NEWS: Updated.
10454
10455 2007-05-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10456
10457         * libltdl/config/ltmain.m4sh (func_mode_link): When adding
10458         new_inherited_linker_flags to compiler_flags, remember to
10459         translate .ltframework back.  Fixes bug introduced 2007-04-23.
10460         * THANKS: Update.
10461         * tests/inherited_flags.at: Amend test.
10462         Report by Christoph Egger.
10463
10464 2007-05-03  Reuben Thomas  <rrt@sc3d.org>  (tiny change)
10465
10466         * doc/libtool.texi (Libltdl interface): Fix typo.
10467
10468 2007-05-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10469
10470         * Makefile.am (clean-ltmain-sh): Removed.
10471         (libtool, $(srcdir)/$(m4dir)/ltversion.m4)
10472         ($(srcdir)/$(auxdir)/ltmain.sh): Updated to not depend on any
10473         phony rules.  Test `$?' for prerequisites that should always
10474         cause us to update the target.  Fixes rebuilding rules, at the
10475         cost of sometimes updating too much with non-GNU make.
10476
10477 2007-04-27  Noah Misch  <noah@cs.caltech.edu>
10478
10479         * tests/ctor.at: New file.
10480         * Makefile.am (TESTSUITE_AT): Add tests/ctor.at.
10481
10482 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
10483
10484         * libltdl/libltdl/lt__glibc.h: Use !HAVE_WORKING_ARGZ
10485         instead of SYSTEM_ARGZ_IS_BROKEN.
10486         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Ditto.  Also, minor
10487         stylistic improvements.
10488         Report by Bruno Haible <bruno@clisp.org>.
10489
10490 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
10491             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10492
10493         * libltdl/argz_.h: ensure error_t definition is obtained
10494         in same mechanism system argz.h would have.
10495         * libltdl/libltdl/lt__glibc.h: also detect if
10496         SYSTEM_ARGZ_IS_BROKEN when determining whether to re#def
10497         argz* functions.
10498         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): add new test to check
10499         if $host's argz facilities are known bad.  Err on the side
10500         of caution if cross-compiling.
10501
10502 2007-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10503
10504         * README, README.alpha: Document how to test an arbitrary
10505         installed libtool script.
10506
10507 2007-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10508
10509         * tests/cmdline_wrap.at: Avoid `AT_CAPTURE_FILE' if it not
10510         defined (Autoconf < 2.60).
10511         * tests/shlibpath.at: Add `libtool' keyword.
10512
10513         * tests/indirect_deps.at: New file, with tests to ensure
10514         `link_all_deplibs=no' does not break functionality.
10515         * Makefile.am: Adjust.
10516
10517 2007-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10518
10519         * libltdl/config/ltmain.m4sh (func_mode_link): Fix accumulation
10520         of `inherited_linker_flags' entries from multiple deplibs, by
10521         adding $new_inherited_linker_flags only once, only in link pass.
10522         * tests/inherited_flags: Amend test to expose this.
10523         * NEWS: Adjust: kill one regression, but add note about the
10524         feature new in 1.9b.
10525         Report by Jeff Squyres and others.
10526
10527 2007-04-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
10528
10529         * libltdl/config/ltmain.m4sh (func_mode_link): move wrapper
10530         script generation from here...
10531         (func_emit_libtool_wrapper_script): to this new function, and
10532         write to stdout
10533         (func_mode_link): move cwrapper source code generation from
10534         here...
10535         (func_emit_libtool_cwrapperexe_source): to this new function,
10536         and write to stdout
10537         (func_mode_link): call the two new functions and redirect
10538         output to appropriate file.
10539
10540 2007-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10541
10542         * libltdl/config/ltmain.m4sh (func_mode_link) <-no-install>
10543         [ darwin ]: Treat like `-no-fast-install', as we cannot
10544         hardcode.  Report by Simon Josefsson.
10545
10546 2007-04-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10547
10548         * doc/libtool.texi (Link mode) <-no-install>: Mention that this
10549         still generates a wrapper script on systems without hardcoding.
10550         * tests/stresstest.at: Test `-no-install'.
10551         * THANKS: Update.
10552         Report by Simon Josefsson.
10553
10554 2007-03-30   Matthieu Herrb  <matthieu.herrb@laas.fr>
10555
10556         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
10557         [ openbsd ]: Add an explicit check for shared libraries support.
10558
10559 2007-03-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10560
10561         * Makefile.am ($(srcdir)/$(m4dir)/ltversion.m4): Fix quoting
10562         error.
10563
10564 2007-03-28  Gary V. Vaughan  <gary@gnu.org>
10565
10566         * HACKING (Abstraction layers in libltdl): Rewritten somewhat
10567         for (hopefully) better clarity.
10568
10569 2007-03-26  Gary V. Vaughan  <gary@gnu.org>
10570
10571         The stamp-vcl file rules caused non-gnu make programs to rerun
10572         parts of the configuration process on each invocation.  Instead
10573         of relying on a stamp file, we now compare version numbers of
10574         generated files with the ChangeLog timestamp manually in the
10575         affected make rules to decide whether regenerating is necessary:
10576
10577         * Makefile.am (EXTRA_DIST): Remove stamp-vcl.
10578         (clean-ltmain-sh): Also remove users' obsolescent stamp-vcl.
10579         (rebuild): Keep some common code here for...
10580         (libtool, libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh):
10581         Rewritten to work without reference to intermediate stamp-vcl
10582         file.
10583         * configure.ac (CONFIG_STATUS_DEPENDENCIES): Change from
10584         stamp-vcl to ChangeLog.
10585         * NEWS: Removed entry saying this fix is needed.
10586
10587 2007-03-25  Gary V. Vaughan  <gary@gnu.org>
10588
10589         * HACKING (LGPL with Libtool exception clause): Typo.
10590         Reported by Tim Van Holder  <tim.van.holder@telenet.be>
10591
10592         * HACKING (Licensing Rules): Explain the various license texts
10593         used for files distributed with Libtool, and update license text
10594         to match.
10595         * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
10596         bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
10597         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
10598         libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
10599         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
10600         libltdl/config/mkstamp, libltdl/configure.ac,
10601         libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
10602         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
10603         libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
10604         libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h,
10605         libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c,
10606         libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
10607         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
10608         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c,
10609         libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
10610         libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
10611         libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
10612         libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
10613         libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
10614         libltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
10615         libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
10616         tests/cdemo-conf.test, tests/cdemo-exec.test,
10617         tests/cdemo-make.test, tests/cdemo-shared.test,
10618         tests/cdemo-static.test, tests/cdemo-undef.test,
10619         tests/cdemo/Makefile.am, tests/cdemo/configure.ac,
10620         tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
10621         tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
10622         tests/demo-conf.test, tests/demo-deplibs.test,
10623         tests/demo-exec.test, tests/demo-hardcode.test,
10624         tests/demo-inst.test, tests/demo-make.test,
10625         tests/demo-nofast.test, tests/demo-noinst-link.test,
10626         tests/demo-nopic.test, tests/demo-pic.test,
10627         tests/demo-relink.test, tests/demo-shared.test,
10628         tests/demo-static.test, tests/demo-unst.test,
10629         tests/demo/Makefile.am, tests/demo/configure.ac,
10630         tests/demo/dlmain.c, tests/demo/foo.c,
10631         tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
10632         tests/demo/hello.c, tests/demo/main.c,
10633         tests/depdemo-conf.test, tests/depdemo-exec.test,
10634         tests/depdemo-inst.test, tests/depdemo-make.test,
10635         tests/depdemo-nofast.test, tests/depdemo-relink.test,
10636         tests/depdemo-shared.test, tests/depdemo-static.test,
10637         tests/depdemo-unst.test, tests/depdemo/Makefile.am,
10638         tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
10639         tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
10640         tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
10641         tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
10642         tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
10643         tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
10644         tests/depdemo/l4/l4.h, tests/depdemo/main.c,
10645         tests/depdemo/sysdep.h, tests/deplibs-ident.at,
10646         tests/destdir.at, tests/duplicate_conv.at,
10647         tests/duplicate_deps.at, tests/duplicate_members.at,
10648         tests/early-libtool.at, tests/export.at,
10649         tests/f77demo-conf.test, tests/f77demo-exec.test,
10650         tests/f77demo-make.test, tests/f77demo-shared.test,
10651         tests/f77demo-static.test, tests/f77demo/Makefile.am,
10652         tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
10653         tests/f77demo/foo.h, tests/f77demo/fooc.c,
10654         tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
10655         tests/fcdemo-make.test, tests/fcdemo-shared.test,
10656         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
10657         tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
10658         tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
10659         tests/inherited_flags.at, tests/libtoolize.at,
10660         tests/link-2.test, tests/link-order.at, tests/link-order2.at,
10661         tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test,
10662         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
10663         tests/mdemo-inst.test, tests/mdemo-make.test,
10664         tests/mdemo-shared.test, tests/mdemo-static.test,
10665         tests/mdemo-unst.test, tests/mdemo/Makefile.am,
10666         tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
10667         tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
10668         tests/mdemo/sub.c, tests/mdemo2-conf.test,
10669         tests/mdemo2-exec.test, tests/mdemo2-make.test,
10670         tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
10671         tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
10672         tests/objectlist.test, tests/old-m4-iface.at,
10673         tests/pdemo-conf.test, tests/pdemo-exec.test,
10674         tests/pdemo-inst.test, tests/pdemo-make.test,
10675         tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
10676         tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
10677         tests/pdemo/longer_file_name_foo.c,
10678         tests/pdemo/longer_file_name_foo2.c,
10679         tests/pdemo/longer_file_name_hell1.c,
10680         tests/pdemo/longer_file_name_hell2.c,
10681         tests/pdemo/longer_file_name_hello.c,
10682         tests/pdemo/longer_file_name_main.c, tests/quote.test,
10683         tests/recursive.at, tests/search-path.at, tests/sh.test,
10684         tests/shlibpath.at, tests/standalone.at, tests/static.at,
10685         tests/stresstest.at, tests/subproject.at, tests/suffix.test,
10686         tests/tagdemo-conf.test, tests/tagdemo-exec.test,
10687         tests/tagdemo-make.test, tests/tagdemo-shared.test,
10688         tests/tagdemo-static.test, tests/tagdemo-undef.test,
10689         tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
10690         tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
10691         tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
10692         tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
10693         tests/tagdemo/main.cpp, tests/tagtrace.test,
10694         tests/template.at, tests/testsuite.at: Apply correct license
10695         text according to the new rules set out in HACKING.
10696
10697 2007-03-19  Gary V. Vaughan  <gary@gnu.org>
10698
10699         * libtoolize.m4sh: Handle argz.m4 specially like ltdl.m4, so
10700         that it isn't copied unless libltdl is being used.  Copy other
10701         macro files according to their tagged serial numbers.
10702         * tests/libtoolize.at: Adjust.
10703
10704 2007-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10705
10706         * tests/mdemo/Makefile.am (libmlib_la_LDFLAGS): Add
10707         `-export-symbols-regex ".*"' because the convenience libltdl
10708         uses export markers and thus turns off autoexport on w32.  Fixes
10709         test failures for Cygwin and MinGW.
10710         Bug analysis by Charles Wilson.
10711
10712         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
10713         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10714         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ interix ]: When
10715         matching for interix, accept version range [3-9] instead of 3.
10716         * NEWS: Update.
10717         Report by Martin Koeppe <mkoeppe@gmx.de>.
10718
10719         * libltdl/m4/libtool.m4 (LT_PROG_GCJ): Avoid M4 expansion error
10720         that caused `dnl' to be merged to the previous word.
10721         * THANKS: Update.
10722         Report by Steve Ellcey.
10723
10724 2007-03-09  Gary V. Vaughan  <gary@gnu.org>
10725
10726         * libtoolize.m4sh: Replace literal tab chars in help comment
10727         with spaces to align columns in --help output.
10728
10729 2007-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10730
10731         * libltdl/config/ltmain.m4sh (func_mode_link): Also apply the
10732         symbol filtering for w32 and the include_expsyms feature in the
10733         case of exceeded command line length.  Fixes test failure on
10734         MinGW.
10735
10736         * tests/stresstest.at: For const data object imported from
10737         shared library, define appropriate macros to expand
10738         __declspec(dllimport) on w32.  Use two different main objects
10739         and pick the right one for the link flags we are about to test.
10740         Fixes test failure on MinGW.
10741
10742         * tests/export.at: For const data object imported from shared
10743         library, define appropriate macros to expand
10744         __declspec(dllimport) on w32.  Fixes test failure on MinGW.
10745
10746 2007-03-05  Gary V. Vaughan  <gary@gnu.org>
10747
10748         * libtoolize.m4sh (func_check_macros): Display m4 quotes correctly
10749         in AC_CONFIG_MACRO_DIR diagnostics.
10750
10751         * libltdl/config/general.m4sh (M4SH_VERBATIM): New macro to
10752         simplify m4sh quote quoting in blocks of raw shell code.
10753         * clcommit.m4sh, libtoolize.m4sh, libltdl/config/getopt.m4sh,
10754         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
10755         tests/defs.m4sh: Use it.
10756         * HACKING (Editing `.m4sh' Files): Mention M4SH_VERBATIM Macro.
10757
10758 2007-02-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10759
10760         * tests/lt_dlexit.at: Allow test to pass on static-only systems
10761         and with disable-shared.
10762
10763         * NEWS: Rewrite all news since 1.9f and put in categories,
10764         update.
10765
10766         * libltdl/Makefile.inc: Fix the file description, so that it
10767         matches recursive and nonrecursive libltdl setup.
10768         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Do not depend
10769         upon the exact text of the copyright header, just copy until
10770         the marker line.  Remove the marker lines in the output, and
10771         adjust the description for subpackage setup.
10772
10773 2007-02-26  Gary V. Vaughan  <gary@gnu.org>
10774
10775         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fix regexp typo.
10776
10777         * clcommit.m4sh: Look in the right directory for helper scripts.
10778
10779 2007-02-25  Gary V. Vaughan  <gary@gnu.org>
10780
10781         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fixup regex to
10782         match Copyright notice change below.
10783
10784         * HACKING, Makefile.am, Makefile.maint, bootstrap,
10785         libltdl/Makefile.am, libltdl/Makefile.inc, libltdl/m4/libtool.m4,
10786         ltmain.c, tests/cdemo/Makefile.am, tests/demo/Makefile.am,
10787         tests/depdemo/Makefile.am, tests/depdemo/l1/Makefile.am,
10788         tests/depdemo/l2/Makefile.am, tests/depdemo/l3/Makefile.am,
10789         tests/depdemo/l4/Makefile.am, tests/f77demo/Makefile.am,
10790         tests/fcdemo/Makefile.am, tests/libtoolize.at,
10791         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
10792         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Update
10793         Copyright notice text to include URL for canonical GPL document.
10794
10795 2007-02-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10796
10797         * tests/static.at: Forgot to fix PATH for the first
10798         func_test_exec invocation.  So factor out into new functions
10799         func_fix_path and func_restore_path and use those.
10800
10801         * README: Document the need for GNU make to build Libtool.
10802         Point the user to the doc/notes.txt file.  In the examples, use
10803         `gmake' throughout to make it more obvious.  Explain simpler way
10804         to run both testsuites and either one.  Referring to individual
10805         tests needs the `tests/' prefix.
10806         * README.alpha: Likewise.
10807         * doc/notes.texi: Likewise, document need for GNU make.
10808         Comment out the FreeBSD make issue for now.
10809
10810         * tests/static.at: Larger rewrite to make work on w32: Use three
10811         different prefixes instead of three libdirs, so the moving of
10812         the DLLs works as expected.  Adjust all code.  Since now
10813         $libdirI/../bin is distinct from the directory of the installed
10814         program, take care than on w32 PATH contains the needed bindirs,
10815         in appropriate order.
10816         Report by Charles Wilson.
10817
10818         * Makefile.am (INSTALLCHECK_ENVIRONMENT): Point LTDLINCL and
10819         LIBLTDL to installed libltdl, so that it is being used by
10820         the lt_dlexit test.
10821
10822 2007-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10823
10824         * doc/libtool.texi (Install mode, libtool script contents):
10825         Describe current and system-specific DESTDIR limitations.
10826         * tests/destdir.at: XFAIL if `fast_install' is no.
10827
10828         * doc/libtool.texi (LT_INIT): Fix typo.
10829
10830         * doc/libtool.texi (Libtool test suite): Mention the new
10831         testsuite.  Point to README rather than INSTALL for testing
10832         instructions.
10833         (Test descriptions): Fix more file names.  Also mention
10834         cdemo-undef.test, mdemo2-conf.test, mdemo2-exec.test,
10835         mdemo2-make.test, objectlist.test, pdemo-conf.test,
10836         pdemo-exec.test, pdemo-inst.test, pdemo-make.test,
10837         tagdemo-conf.test, tagdemo-exec.test, tagdemo-make.test,
10838         tagdemo-static.test, tagdemo-shared.test, tagdemo-undef.test,
10839         f77demo-conf.test, f77demo-exec.test, f77demo-make.test,
10840         f77demo-static.test, f77demo-shared.test, fcdemo-conf.test,
10841         fcdemo-exec.test, fcdemo-make.test, fcdemo-static.test,
10842         fcdemo-shared.test.  Describe what they do.
10843         (When tests fail, Troubleshooting): Mention how to pass options
10844         to the new test suite.
10845         * tests/tagdemo/README: Fix description.
10846
10847         * bootstrap: Also set GREP, FGREP, EGREP, LN_S, when creating a
10848         preliminary ltmain.sh script.
10849
10850         * doc/libtool.texi (Test descriptions): Track the grand test
10851         suite renaming from 2003-10-14 in the tests documentation.
10852         assign.test is merged into sh.test.  Fix description of sh.test.
10853         * tests/sh.test: Likewise.
10854
10855         * doc/libtool.texi (LT_INIT): Fix wording of intro a bit.
10856         <shared, static>: Also describe these default LT_INIT options.
10857         <AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL>
10858         <AC_DISABLE_FAST_INSTALL>: Mention deprecated macro names,
10859         including the respective LT_INIT replacement.
10860         <AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_ENABLE_SHARED>
10861         <AC_ENABLE_STATIC>: Document, un-deprecate.  Suggest the
10862         respective LT_INIT replacement.
10863         <AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_ENABLE_SHARED>
10864         <AM_ENABLE_STATIC>: Document deprecated aliases.
10865         (Distributing libltdl) <AC_WITH_LTDL, AC_LIBLTDL_INSTALLABLE>
10866         <AC_LIBLTDL_CONVENIENCE>: Document deprecated aliases.
10867         * libltdl/m4/ltoptions.m4 (AM_ENABLE_SHARED, AM_DISABLE_SHARED)
10868         (AM_ENABLE_STATIC, AM_DISABLE_STATIC): Make these AU_ALIASes of
10869         the respective AC_* macros, so we do not recommend LT_INIT(*) in
10870         this case.
10871         (AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC)
10872         (AC_DISABLE_STATIC): Un-deprecate these.  Remove now-superfluous
10873         aclocal-1.4 backwards compatibility comments.
10874
10875         * tests/link-order2.at: Rewrite completely.  Do not use `sin'
10876         from the math library, there are too many problems with this.
10877         Instead, use a self-written library, install it without the
10878         Libtool library file, to emulate a native library in a system
10879         directory, and adjust $shlibpat_var.  Try overriding its symbol.
10880         Further, also try an installed `wrong' binary.
10881         Avoid failing test bits on AIX without runtimelinking and on
10882         Darwin in some cases, SKIP at the end in this case.
10883         Analysis by Peter O'Gorman.
10884
10885         * doc/notes.texi: Mention MACOSX_DEPLOYMENT_TARGET issue.
10886         * tests/template.at: Only skip those tests failing on Darwin
10887         if `-flat_namespace' is used by libtool.  In that case, SKIP
10888         at the end.  Analysis by Peter O'Gorman.
10889
10890 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10891
10892         Fix -export-symbols and -export-symbols-regex for links that
10893         exceed the command line length and use convenience archives.
10894
10895         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid grepping a
10896         nonexistent file if using reloadable objects.  Do not create a
10897         linker script nor a linker input file if no objects are passed.
10898         Apply export_symbols_regex in case the command line length is
10899         exceeded.
10900         Report by Bob Friesenhahn.
10901
10902         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
10903         <compiler_needs_object>: New tag variable.  Default to `no'.
10904         (_LT_LINKER_SHLIBS) [ linux ]: Set it to yes for Sun C 5.9.
10905         (_LT_LANG_CXX_CONFIG): Also default it to `no'.
10906         [ linux ]: Set it to `yes' for Sun C++ 5.9.
10907         * libltdl/config/ltmain.m4sh (func_mode_link): If we link
10908         no objects but only convenience archives into a library,
10909         force expansion if `compiler_needs_object' is yes.
10910         For creating a linker input filelist due to long cmdline,
10911         extract the first object if `compiler_needs_object' is yes.
10912         * doc/libtool.texi (libtool script contents): Document it.
10913         Fixes test failures of Sun compilers on GNU/Linux.
10914         Report by Terry D. Dontje.
10915
10916         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid setting
10917         `$libobjs' to a single space; set it to empty in that case.
10918
10919 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10920
10921         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [ osf5 ]:
10922         On Tru64 5.1, const relocations do not work well.  Omit the
10923         const here.  Fixes failure of demo-make after demo-shared with
10924         link editor error `seg_info_ptr: Couldnt find a seg type 2'.
10925
10926         * Makefile.am (doc_libtool_TEXINFOS): Renamed from...
10927         (libtool_TEXINFOS): ...this, to fix dependencies.  Omit from
10928         EXTRA_DIST.
10929         (check-local): Also depend upon $(bin_SCRIPTS).
10930
10931 2007-02-23  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>  (tiny change)
10932
10933         * libltdl/config/general.m4sh (sed_double_backslash): Fix
10934         hacky sed script to avoid limitations but retain portability to
10935         Solaris /bin/sed.  Remove old obsolete cruft.
10936
10937 2007-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10938
10939         * libltdl/config/ltmain.m4sh (func_mode_link): Fix the check for
10940         convenience archives when warning about linking against static
10941         libraries: test against $deplib rather than empty $lib.
10942
10943 2007-02-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10944
10945         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Fix detection of new enough
10946         libltdl by actually checking for the declaration of
10947         lt_dlinterface_register in ltdl.h with AC_CHECK_DECL.
10948         Remove redundant configure output line.
10949
10950         * tests/template.at: Reformat, add M4 quoting.  Use $LDFLAGS
10951         consistently for link mode.
10952
10953 2007-02-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10954
10955         * tests/static.at: Use the right names for the broken libs.
10956
10957 2007-02-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10958
10959         * tests/deplibs-ident.at [aix, hppa*-*-hpux*, interix, openbsd]:
10960         Do not XFAIL, on these systems we happen to pass.
10961         * tests/duplicate_deps.at [aix]: Likewise.
10962
10963         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux |
10964         k*bsd*-gnu ]: Fix eval quoting in the DT_RUNPATH test.
10965
10966         * HACKING: Update.
10967
10968         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ linux ]
10969         <whole_archive_flag_spec>: For Sun C/C++ 5.9, do not add
10970         /dev/null as dummy object, it fails with GNU ld version
10971         2.16.91.0.7-amd-sles9.  Report by Terry D. Dontje.
10972         * THANKS: Update.
10973
10974 2007-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10975
10976         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ osf4, osf5 ]
10977         <archive_expsym_cmds>: Use `${wl}-input' not `-input', for
10978         cc.  Could use `-input_to_ld'.
10979         (_LT_LANG_CXX_CONFIG) [ osf4, osf5 ] <archive_expsym_cmds>:
10980         Use `${wl}' instead of `-Wl,', for consistency.
10981
10982 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10983
10984         Fix spurious testsuite failures on AIX due on NFS mounts due to
10985         shared library images that cannot be removed without `slibclean'
10986         which needs superuser privileges.
10987
10988         * tests/testsuite.at (PREPARE_TESTS): Define $mkdir_p globally.
10989         (LT_AT_MVDIR): New macro to emulate `mv dir dest'.
10990         * tests/destdir.at: Use LT_AT_MVDIR.
10991         * tests/shlibpath.at: Likewise.
10992         * tests/static.at: Likewise.
10993
10994 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10995
10996         * tests/export.at: Exporting is not fully functional with
10997         -retain-symbols-file.  Do not test for failure to link `broken'
10998         in this case.  At the end of the test, SKIP if we are not fully
10999         functional.
11000
11001         * tests/lt_dlexit.at: Add casts and `extern "C"' to let the test
11002         pass with a C++ compiler.
11003
11004         * libltdl/config/ltmain.m4sh: Remove duplicate marker for
11005         generated shell functions.
11006
11007         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): New macro, like
11008         LT_AT_EXEC_CHECK but uses `$LIBTOOL --mode=execute' and allows
11009         to pass `-dlopen MODULE' arguments.
11010         * tests/lt_dlexit.at: Use it.  Also, do not test `-dlpreopen',
11011         that currently needs library names to begin with `lib'.
11012
11013 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11014
11015         * tests/export.at: New test: expose -export-symbols failure
11016         when the input consists solely of convenience archives, and
11017         failure to not export all symbols when the command line length
11018         is exceeded.
11019         * Makefile.am: Adjust.
11020
11021         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New substituted
11022         function `func_lo2o', saving two fork&exec with XSI shells.
11023         * libltdl/config/ltmain.m4sh (func_mode_compile)
11024         (func_mode_install, func_mode_link): Use it for rewrites of
11025         single files.
11026
11027         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New function
11028         func_opt_split, for XSI and portable shell.
11029         * libltdl/config/ltmain.m4sh: Move the insertion point for the
11030         configure-generated shell functions to before the first option
11031         parsing loop.  Rewrite the separation of the long options to use
11032         func_opt_split.
11033
11034 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11035
11036         Eliminate roughly a third of the script execution time overhead
11037         for all modes except for link/relink and uninstall/clean.
11038
11039         * libltdl/m4/libtool.m4 (_LT_CONFIG): Remove unused `TEST SUITE
11040         MARKER', obsolete since 2005-04-17.
11041         * libltdl/config/ltmain.m4sh: Likewise, several instances.
11042         (Main): Tear apart, moving individual bits up as early in the
11043         script as possible, to help the shell to avoid parsing the rest.
11044
11045 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11046
11047         * doc/libtool.texi: Update copyright years.
11048
11049 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11050
11051         * libltdl/config/general.m4sh (sed_double_backslash): Replace
11052         POSIX sed script with a hack that treats up to 10 backslashes
11053         in the input correctly and is portable to Solaris /bin/sed.
11054
11055 2007-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11056
11057         * tests/testsuite.at (LT_AT_TAG): Skip also if the compiler
11058         variable is set to `no', not only if it is empty.
11059
11060 2007-02-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11061
11062         * tests/lt_dlexit.at: Do not compile main object with libtool.
11063
11064         * tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir
11065         to inner testsuite.
11066
11067         * Makefile.am (TESTSUITE_AT): Move destdir.at after
11068         search-path.at so the banners fit better.
11069
11070         * tests/convenience.at: Use $CPPFLAGS for compilation.
11071         * tests/deplibs-ident.at: Likewise.
11072         * tests/duplicate_members.at: Likewise.
11073         * tests/inherited_flags.at: Likewise.
11074         * tests/link-order.at: Likewise.
11075         * tests/stresstest.at: Likewise.
11076         * tests/early-libtool.at: Likewise.  Do not quote $CC.
11077
11078         * libltdl/ltdl.c (lt_dlexit): Add casts to fix compilation with
11079         C++ compiler again.
11080
11081         * tests/destdir.at: Add `libtool' keyword to tests.
11082
11083 2007-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11084
11085         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
11086         (_LT_LINKER_BOILERPLATE, _LT_SYS_MODULE_PATH_AIX)
11087         (_LT_COMPILER_C_O): Require _LT_DECL_SED.
11088         * THANKS: Update.
11089         Report by Maciej W. Rozycki.
11090
11091 2007-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11092
11093         * tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir,
11094         in the new testsuite.
11095
11096 2007-01-29  Samuel Thibault <samuel.thibault@ens-lyon.org>
11097
11098         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ gnu ]
11099         <archive_expsym_cmds>: Behave like Linux, so that
11100         --version-script is used for Hurd as well.
11101
11102 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
11103
11104         * NEWS: Update for Cygwin changes.
11105
11106 2007-01-28  Brian W. Barrett <bbarrett@lanl.gov>
11107
11108         * libltdl/config/ltmain.m4sh [darwin]: Use otool64 if otool fails.
11109
11110 2007-01-28  Dave Brolley  <brolley@redhat.com>,
11111             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11112
11113         * libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL
11114         before checking that it is still in the list.
11115         * tests/lt_dlexit.at: New test.
11116         * Makefile.am (TESTSUITE_AT): Adjust.
11117         (check-local): Also depend on libltdl/libltdlc.la.
11118         (check-recursive): Removed, unnecessary use of Automake
11119         internals.
11120
11121 2007-01-28  Mike Frysinger  <vapier@gentoo.org>
11122
11123         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
11124         `-p' and `-fprofile-*' for GCC.
11125
11126 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11127
11128         * libltdl/libltdl/lt_system.h: Adjust copyright years.
11129
11130 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
11131
11132         * libltdl/libltdl/lt__private.h (LT_GLOBAL_DATA) [__CYGWIN__]:
11133         Also define on Cygwin.
11134         * libltdl/libltdl/lt_system.h (LT_SCOPE) [__CYGWIN__]: Likewise.
11135
11136 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11137
11138         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ cygwin, mingw ]
11139         <export_symbols_cmds>: Avoid shell expansion of '/s/.*' through
11140         double expansion, in case there is a 'S:' drive.
11141         Report by Charles Wilson.
11142
11143 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11144
11145         Introduce a new test keyword `recursive' for tests that create a
11146         modified `libtool' script and run the suite on this script.  All
11147         tests with the keyword `libtool' are (by definition) suitable to
11148         be used here.
11149
11150         * tests/cmdline_wrap.at: New test.
11151         * Makefile.am: Adjust.
11152         * tests/testsuite.at (LT_ESCAPE): New macro: clone of Autoconf
11153         AS_ESCAPE that does not escape `$'.
11154         (LT_AT_CHECK): New macro: print a command-to-be-run while
11155         expanding parameters but nothing else.
11156         * tests/stresstest.at: Use LT_AT_CHECK.  Create some files to
11157         expose erroneous globbing errors with `-export-symbols-regex',
11158         similar to those reported by Charles Wilson.  Use `eval' and
11159         adjusted quoting so the expansion doesn't already happen in the
11160         testsuite commands.
11161         * HACKING: Update.
11162
11163 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11164
11165         Assume C89 for included headers, and throughout the testsuite.
11166
11167         * NEWS: Update.
11168         * libltdl/argz.c: Do not include strings.h nor memory.h, include
11169         string.h unconditionally.
11170         Patch by Simon Josefsson <jas@extundo.com>.
11171         * libltdl/libltdl/lt__private.h: Likewise.
11172         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not check for string.h,
11173         strings.h, memory.h.
11174         * tests/cdemo/configure.ac: Assume presence of math.h.
11175         * tests/cdemo/foo.c: Likewise.
11176         * tests/demo/configure.ac: Likewise for math.h, string.h.
11177         Assume 'const'.  Drop obsolete AC_EXEEXT.
11178         * tests/demo/dlmain.c: Likewise.
11179         * tests/demo/foo.c: Likewise.
11180         * tests/depdemo/configure.ac: Likewise.
11181         * tests/depdemo/l4/l4.c: Likewise.
11182         * tests/f77demo/configure.ac: Likewise.  Also drop obsolete
11183         AC_OBJEXT.
11184         * tests/fcdemo/configure.ac: Likewise.
11185         * tests/mdemo/configure.ac: Likewise.
11186         * tests/mdemo/foo1.c: Likewise.
11187         * tests/mdemo/foo2.c: Likewise.
11188         * tests/mdemo2/configure.ac: Likewise.
11189         * tests/pdemo/configure.ac: Likewise.
11190         * tests/pdemo/longer_file_name_dlmain.c:
11191         * tests/pdemo/longer_file_name_foo.c: Likewise.
11192         * tests/pdemo/longer_file_name_foo2.c: Likewise.
11193         * tests/tagdemo/configure.ac: Likewise.
11194         * tests/tagdemo/foo.cpp: Likewise.
11195
11196 2007-01-24  Reuben Thomas <rrt@sc3d.org>  (tiny change)
11197
11198         * doc/libtool.texi (Inter-library dependencies): Fix typo.
11199
11200 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11201
11202         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]:
11203         Use `lib -OUT' rather than `lib /OUT' to avoid MSYS path
11204         translation mangling.  Report by Christopher Hulbert.
11205         * THANKS: Update.
11206
11207         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
11208         suffixes matching `[fF][09].', for Fortran.
11209         * tests/suffix.test: Also test F90, F95, f03, F03.
11210
11211         * Makefile.am (EXTRA_DIST): Add ChangeLog.2006.
11212         * ChangeLog.2006: New, rotated, from...
11213         * ChangeLog: ...here.
11214
11215 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11216
11217         * doc/libtool.texi: Typo fixes.
11218         * TODO: Likewise.
11219
11220 2006-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11221
11222         * tests/link-order2.at: Define our override `sin' function with
11223         C binding even if $CC is a C++ compiler.  Skip the test with g++
11224         as its command line driver reorders `-lm'.
11225         * tests/search-path.at: Declare `inflate' with C binding.
11226         * tests/stresstest.at: Avoid unused variable warnings.
11227
11228 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11229
11230         * tests/link-order2.at: Simplify logic to be a bit more self
11231         documenting.  Suggested by Gary V. Vaughan.
11232
11233 2006-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11234
11235         * tests/link-order2.at: Add missing $bindir setting.  Prevent
11236         compiler optimization of sqrt call.  Fix logic inversion and
11237         add some comments about this stunt.  Add a test with reversed
11238         library link order that should fail if the system has a libm.
11239         Report by Patrick Welche.
11240
11241 2006-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11242
11243         Assume presence of a config header in all files, to provoke
11244         test failures on all systems.
11245         * libltdl/lt__alloc.c: Likewise.
11246         * libltdl/libltdl/lt__dirent.h: Likewise.
11247         * libltdl/libltdl/lt__glibc.h: Likewise.
11248         * libltdl/libltdl/lt__private.h: Likewise.
11249         * libltdl/libltdl/lt__strl.h: Likewise.
11250         * tests/recursive.at: Use AC_CONFIG_HEADERS.
11251         * tests/nonrecursive.at: Likewise.  Invoke autoheader.
11252         * HACKING: Adjust.
11253         Report by Patrick Welche.
11254
11255 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>,
11256             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11257
11258         * doc/libtool.texi (Distributing libltdl): In recursive and
11259         nonrecursive mode, a config header is now required.
11260         * libltdl/argz.c: Remove check for HAVE_CONFIG_H, to conform
11261         to gnulib's policy of including config.h unconditionally.
11262
11263 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11264
11265         * tests/link-order2.at: New test to show one case where ordering
11266         of depdepls on the command line matters.
11267         * Makefile.am: Adjust.
11268
11269         * tests/tagtrace.test: SKIP if `autoconf --trace' exits 63 or 1,
11270         for various possible (valid) error cases.  Also output stderr,
11271         to help with analysis.
11272
11273         * NEWS: Account for recent multilib fix.
11274         * tests/search-path.at: New test, to provide at least a weak
11275         test.
11276         * Makefile.am: Update.
11277
11278         * libtoolize.m4sh (func_fixup_Makefile): Fix missing
11279         substitution for nonrecursive mode.  Remove otherwise-empty
11280         continuation lines in the output file.
11281         Report by Bob Friesenhahn.
11282
11283 2006-10-22  Peter O'Gorman  <peter@pogma.com>
11284
11285         * libltdl/config/ltmain.m4sh: Add -F* to flags that are passed
11286         to the linker.
11287         Reported by SIGOURE Benoit <sigoure.benoit@lrde.epita.fr>
11288
11289 2006-10-19  Peter O'Gorman  <peter@pogma.com>
11290
11291         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Improve
11292         multilib support.
11293         Reported by Kate Minola <kate01123@gmail.com> and others.
11294
11295 2006-10-13  Eric Blake  <ebb9@byu.net>
11296
11297         * libltdl/ltdl.c (load_deplibs): Avoid memory leak on failure.
11298         (unload_deplibs): Avoid memory leak on cleanup.
11299
11300 2006-09-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11301
11302         * libltdl/m4/libtool.m4 (func_mode_compile): Accept files with
11303         extension `.f9?'.
11304         * tests/suffix.test: Test `f95'.
11305
11306         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Use
11307         `func_source' consistently.
11308
11309 2006-09-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11310
11311         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
11312         [k*bsd*-gnu ]: Fix brown paper bag: save and restore `libdir'.
11313
11314 2006-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11315
11316         * tests/duplicate_deps.at: New file.  Test circular depending
11317         convenience archives (currently failing).
11318         * Makefile.am: Update.
11319         Report by Stefan Traby <stefan@hello-penguin.com>.
11320
11321         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
11322         [ openbsd ]: Set `hardcode_direct_absolute', to prefer rpath
11323         over putting absolute file names in NEEDED entries.
11324         * NEWS: Update.
11325         Reported by Jake Meuser and others.
11326
11327         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
11328         [ k*bsd*-gnu ]: Test if ld sets DT_RUNPATH; in that case, set
11329         shlib_overrides_runpath to `yes'.  Fixes test failure of new
11330         test on Gentoo GNU/Linux.
11331
11332         * tests/shlibpath.at: New file, with...
11333         (shlibpath_overrides_runpath): ...new test.
11334         * Makefile.am: Update.
11335
11336 2006-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11337
11338         * tests/destdir.at: New file.
11339         * Makefile.am: Adjust.
11340
11341 2006-09-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11342
11343         * tests/inherited_flags.at: Drop `${parameter}' for `$parameter'
11344         where appropriate, for improved `testsuite -x' output.
11345
11346 2006-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11347
11348         * libltdl/ltdl.c: Move LT__UNUSED before parameter name, for g++
11349         3.2.3 (on MinGW).
11350         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
11351         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
11352         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Likewise.
11353
11354 2006-09-04  George Bosilca <bosilca@cs.utk.edu>
11355         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11356
11357         Make libltdl work when compiled with a C++ compiler.
11358
11359         * libltdl/lt__alloc.c, libltdl/lt_dlloader.c, libltdl/ltdl.c,
11360         libltdl/slist.c, libltdl/libltdl/lt__alloc.h,
11361         libltdl/libltdl/lt_error.h, libltdl/libltdl/slist.h,
11362         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
11363         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
11364         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
11365         libltdl/loaders/shl_load.c, tests/stresstest.at,
11366         tests/testsuite.at, tests/f77demo/foo.h, tests/fcdemo/foo.h,
11367         tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c,
11368         tests/mdemo/main.c: Allow sources to be compiled by a C++
11369         compiler: Cast appropriately, add C linkage for `get_vtable'
11370         functions, do not use C++ keyword `delete'.
11371
11372         * libltdl/config/ltmain.m4sh (func_mode_link): In the dlsym
11373         file, define a type for the symbol list, and declare the list
11374         `extern', so that it is extern even if compiled by a C++
11375         compiler.  The type definition helps avoid a compiler warning
11376         against anonymous extern struct.
11377         * libltdl/libltdl/lt_system.h: Add `extern' to `LT_SCOPE' for
11378         the same reason.
11379
11380         * libltdl/argz_.h: It's __cplusplus, not _cplusplus.
11381         * libltdl/libltdl/slist.h: Likewise.
11382
11383         * libltdl/libltdl/lt__glibc.h: Wrap included argz.h in
11384         `extern "C"', for broken headers on Cygwin.
11385
11386 2006-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11387
11388         * tests/testsuite.at: Test `unset' on a set variable; older
11389         bash versions return 1 if the variable was not set.
11390
11391         * tests/am-subdir.at, tests/early-libtool.at: Fix the LF vs.
11392         CRLF related failures on MinGW by grepping for good output
11393         instead of using AT_CHECK's `expout'.
11394
11395 2006-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11396
11397         Drop K&R support from testsuite in favor of C89.
11398
11399         * tests/duplicate_members.at: provide declarations of used
11400         functions.
11401         * tests/testsuite.at: Drop unneeded arguments.
11402         * tests/cdemo/main.c: Assume C89.
11403         * tests/demo/dlmain.c: Likewise.
11404         * tests/demo/main.c: Likewise.
11405         * tests/depdemo/main.c: Likewise.
11406         * tests/depdemo/l1/l1.c: Likewise.
11407         * tests/depdemo/l2/l2.c: Likewise.
11408         * tests/depdemo/l3/l3.c: Likewise.
11409         * tests/depdemo/l4/l4.c: Likewise.
11410         * tests/f77demo/cprogram.c: Likewise.
11411         * tests/fcdemo/cprogram.c: Likewise.
11412         * tests/mdemo/mlib.c: Likewise.
11413         * tests/mdemo2/main.c: Likewise.
11414         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
11415         * tests/pdemo/longer_file_name_main.c: Likewise.
11416         * tests/fcdemo/fooc.c: Reformat.
11417         * tests/mdemo/sub.c: Likewise.
11418
11419 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11420
11421         * tests/mdemo/main.c: Fix bogus line in last patch.
11422
11423 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11424
11425         Avoid mixing functions and data pointers in callback functions.
11426
11427         * libltdl/ltdl.c (file_worker_func): New type.
11428         (lt_dlforeachfile): Instead of passing a function pointer as a
11429         data pointer, pass a pointer to a file_worker_func pointer.
11430         (foreach_callback_func): Adjust.
11431         * tests/mdemo/main.c: Assume C89. Exercise lt_dlforeachfile.
11432         (callback, try_iterate, my_dirname): New functions.
11433         * tests/mdemo-exec.test: Check for its output.
11434
11435 2006-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11436
11437         * libltdl/libltdl/lt__private.h (__attribute__, LT__UNUSED):
11438         New macros.
11439         * libltdl/loaders/dld_link.c: Use LT__UNUSED where
11440         appropriate.
11441         * libltdl/loaders/dlopen.c, libltdl/loaders/load_add_on.c,
11442         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
11443         libltdl/loaders/shl_load.c: Likewise.
11444         * libltdl/ltdl.c: Likewise.
11445         (find_file_callback): Fix declaration names to match definition.
11446         (load_deplibs) [!LTDL_DLOPEN_DEPLIBS]: Use separate definition
11447         for less preprocessor clutter.
11448
11449         * Makefile.am (check-local, installcheck-local): Use
11450         `TESTSUITEFLAGS' rather than `TESTSUITE_FLAGS', like Autoconf.
11451         * HACKING, README, README.alpha: All uses changed.
11452
11453 2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11454
11455         * libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
11456         sharing with gnulib.  Report by Eric Blake.
11457         * libltdl/lt__alloc.c, libltdl/libltdl/lt__dirent.h,
11458         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
11459         libltdl/libltdl/lt__strl.h: Likewise.
11460         * HACKING: Update.
11461
11462 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11463
11464         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
11465         `--coverage' and `-pg', for GCC.  Report by Rainer Keller
11466         <keller@hlrs.de> and Tor Lillqvist <tml@iki.fi>.
11467
11468 2006-08-25  Kurt Roeckx <kurt@roeckx.be>,
11469             Aurelien Jarno <aurel32@debian.org>
11470
11471         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
11472         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
11473         (_LT_LANG_CXX_CONFIG) [k*bsd*-gnu]: kfreebsd*-gnu and
11474         knetbsd*-gnu behave like linux-gnu.
11475         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
11476         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK)
11477         [x86_64-*kfreebsd*-gnu]: Add 32/64 bit bi-arch support.
11478         * NEWS: Update.
11479
11480 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11481
11482         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ mingw,pw32 ]:
11483         If `file' is present, use `func_win32_libid' rather than
11484         `objdump -f', to facilitate cross-compilation.
11485         Reported by Pierre Ossman <ossman@cendio.se>.
11486
11487 2006-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11488
11489         * libltdl/config/ltmain.m4sh (func_mode_link): In GNU ld script,
11490         do not quote object file names, for Intel icc 9.0 IPO link.
11491
11492 2006-08-22  Eric Blake  <ebb9@byu.net>
11493
11494         * libltdl/m4/ltdl.m4 (LTDL_INIT): Avoid macros marked obsolete in
11495         latest autoconf.
11496         * libltdl/m4/libtool.m4 (_lt_cv_sys_global_symbol_pipe): Work in
11497         spite of -Wmissing-prototypes.
11498         * libltdl/libltdl/lt__dirent.h: Rewrite to accomodate loss of
11499         AC_HEADER_DIRENT.
11500
11501         * libltdl/m4/libtool.m4: Avoid space-tab.
11502
11503 2006-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11504
11505         * libltdl/config/ltmain.m4sh (func_mode_execute): Also search
11506         the directory above `$objdir' for the argument of "-dlopen", as
11507         mentioned in the error message.
11508
11509 2006-08-03  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>
11510
11511         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix issues
11512         with previous patch. for ... do' line is superflous. Need
11513         _LT_TAGVAR not _LT_AC_TAGVAR, should be for both linux and
11514         solaris with Sun compiler.
11515
11516 2006-08-01  Albert Chin <china@thewrittenword.com>
11517
11518         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
11519         Don't set $postdeps to "-lCstd -lCrun" if
11520         "-library=stlport4" set in CXXFLAGS as stlport4 C++
11521         library incompatible with Cstd C++ library. Use
11522         '-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
11523
11524 2006-07-28  Eric Blake  <ebb9@byu.net>
11525
11526         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD, LT_OUTPUT):
11527         s/recognise/recognize/.
11528
11529 2006-07-22  Eric Blake  <ebb9@byu.net>
11530
11531         * libltdl/ltdl.c (loader_init_callback) [HAVE_LIBDLLOADER]:
11532         Protect definition to avoid compiler warnings about unused
11533         function.
11534
11535 2006-07-21  Eric Blake  <ebb9@byu.net>
11536
11537         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD): Search for dlopen without
11538         depending on -ldl, required by cygwin 1.5.20.
11539
11540 2006-06-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11541
11542         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
11543         ( _LT_LINKER_BOILERPLATE): Rewrite to not use unchecked
11544         `printf', for old systems like SunOS 4.1.
11545         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION)
11546         (_LT_COMPILER_C_O, _LT_LINKER_SHLIBS): Likewise.
11547         (_LT_LANG_C_CONFIG): Adjust: use literal newlines in
11548         `lt_simple_compile_test_code' and `lt_simple_link_test_code'.
11549         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
11550         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Likewise.
11551         Bug report by Bruce Becker and Mark Andrews.
11552
11553 2006-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11554
11555         Fix the bugs where libtoolize needs to use `dir/file' instead of
11556         `./dir/file', where ltdldir is `.', so that libtoolize correctly
11557         checks for (and suggests) `config' and `m4' instead of
11558         `./config' and `./m4' as auxiliary resp. macro directories.
11559         The change is necessary for unambiguous naming, the chosen way
11560         plays better with non-GNU make in VPATH builds.
11561
11562         * libtoolize.m4sh (ltdlprefix): New variable, to use as prefix
11563         instead of `$ltdldir/'.
11564         (func_check_macros): Use it.  Bug report by Eric Blake.
11565
11566 2006-06-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11567
11568         Fix several libtoolize-related bugs:
11569         - Do not symlink aclocal.m4, to work around a bug in aclocal
11570         overwriting the linked-to file instead of removing the symlink.
11571         - Have `libtoolize --copy' cause current time stamps, so that
11572         dependents will be rebuilt; for this, install files in order.
11573         - Fix list of distribution files for (non)recursive libltdl.
11574         - Fix some failure cases.
11575
11576         * libtoolize.m4sh (func_copy_cb):
11577         If `$opt_link', still copy `aclocal.m4', so a subsequent
11578         `aclocal' will not overwrite the symlink target.
11579         In `--copy' mode, do `cp -p' and `touch' for each file, so
11580         timestamps are updated but permissions preserved.
11581         (main): Reorder installing of files to match logical order
11582         and timestamp requirements.
11583         (func_fixup_Makefile_inc): Renamed to
11584         (func_fixup_Makefile): this.  Add sed scriptlet to remove
11585         non-existent files from EXTRA_DIST, for either nonrecursive
11586         or recursive mode.
11587         (main): call it to mangle also in recursive mode.
11588         * tests/libtoolize.at (expout): Adjusted.
11589         * tests/testsuite.at (tst_dist): Default to `dist'.
11590
11591 2006-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11592
11593         Fix libltdl to always have all generated files up to date.
11594
11595         * Makefile.am (all-local): Depend on all generated files in
11596         libltdl, namely...
11597         (libltdl/aclocal.m4, libltdl/configure, libltdl/config-h.in):
11598         ...these.  List explicitly, including dependencies and
11599         rebuilding rules, using...
11600         (sub_aclocal_m4_deps, sub_configure_deps): ...these new
11601         variables.
11602         Report by Dan Lacher <Dan.Lacher@Sun.Com>.
11603
11604 2006-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11605
11606         * Makefile.am (install-data-local): Do not use $(INSTALL_DATA)
11607         from another directory: it may use a relative path to
11608         `install-sh'.
11609         Bug report by Dan Lacher <Daniel.Lacher@Sun.COM>.
11610
11611 2006-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11612
11613         * libltdl/config/ltmain.m4sh (func_mode_link): Honor `-threads',
11614         similar to `-mt'.
11615         Report by Eric Paire <eric.paire@st.com>.
11616
11617 2006-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
11618
11619         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ cygwin ]:
11620         define DLL_EXPORT for PIC objects on cygwin.
11621
11622 2006-05-24  Albert Chin  <china@thewrittenword.com>
11623
11624         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
11625         [ aix4*, aix5*, hpux10*, hpux11* ]: Set hardcode_direct_absolute
11626         for CXX tag too!
11627
11628 2006-05-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11629
11630         * libltdl/config/ltmain.m4sh (func_mode_link, shell wrapper):
11631         Do not put `"$@"' in argument to $ECHO.
11632
11633 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11634
11635         * libltdl/m4/libtool.m4: Bump serial, necessary because of
11636         _LT_CHECK_SHELL_FEATURES changes.
11637
11638 2006-05-18  Albert Chin-A-Young <china@thewrittenword.com>
11639
11640         * tests/early-libtool.at: Pass $CPPFLAGS and $CFLAGS to
11641         compiler when compiling for extra flags that might be
11642         needed for ANSI-compliance, 64-bit, etc. The environment
11643         we compile with should match the environment libtool was
11644         compiled with.
11645
11646 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11647
11648         Fix mode=compile time regression of CVS HEAD over branch-1-5.
11649
11650         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Rename to...
11651         (_LT_CHECK_SHELL_FEATURES): ...this.
11652         (_LT_SETUP): Adjust caller.
11653         (_LT_CHECK_XSI_SHELL): New libtool variables `lt_unset',
11654         `SP2NL', `NL2SP', to contain results from tests for unset,
11655         taken from AS_BOURNE_COMPATIBLE, and ASCII vs EBCDIC, taken...
11656         * libltdl/config/general.m4sh: ...from here, and used...
11657         * libltdl/config/ltmain.m4sh: ...here everywhere now.
11658         * (AS_SHELL_SANITIZE): Replace by faster, actually necessary
11659         part of its expansion, taken from current Autoconf CVS.  Do not
11660         save and set all locale variables any more, but only LANG,
11661         LC_ALL, LC_CTYPE, LC_COLLATE, LC_MESSAGES.
11662         (func_mode_execute): Adjust.
11663         * libltdl/m4/libtool.m4 (_LT_CONFIG): No need to unset CDPATH
11664         here any more.
11665         * libtoolize.m4sh: Compute `SP2NL' and `NL2SP' here, too.
11666
11667 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
11668
11669         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
11670         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
11671         _LT_LANG_FC_CONFIG), tests/link-order.at
11672         [ aix4*, aix5*, hpux10*, hpux11* ]: rename
11673         hardcode_direct_static to hardcode_direct_absolute.
11674         * doc/libtool.texi (libtool script contents): Adjust.
11675
11676         * libltdl/ltdl.c (lt_dlhandle_fetch): Arguments to
11677         lt_dlhandle_iterate were in the wrong order.
11678
11679 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11680
11681         * libltdl/m4/libtool.m4 (_LT_LINKER_OPTION): Require
11682         _LT_DECL_SED.
11683         (_LT_CMD_GLOBAL_SYMBOLS, _LT_LINKER_SHLIBS): Likewise.
11684         * libltdl/m4/ltdl.m4 (LTDL_INIT): Likewise.
11685         (_LT_DECL_SED): Set $Xsed here, using $SED.  Moved from...
11686         (_LT_SETUP): ...here.
11687         Report by Eric Blake.
11688
11689 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
11690
11691         * doc/libtool.texi (libtool script contents): Document new
11692         hardcode_direct_static variable.
11693
11694         * tests/link-order.at: Be careful about usage of shrext_cmds.
11695
11696         * libltdl/m4/libtool.m4 (LT_AC_PROG_SED):  Declarations for
11697         compatibility with old versions of libtool, and old versions
11698         of aclocal.
11699
11700 2006-05-17  Albert Chin-A-Young  <china@thewrittenword.com>
11701
11702         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
11703         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
11704         _LT_LANG_FC_CONFIG) [ aix4*, aix5*, hpux10*, hpux11* ]:
11705         Introduce a new variable, hardcode_direct_static, which
11706         would ignore hardcode_direct=yes if the result would create a
11707         static library dependency. Static library dependencies are
11708         immune to $shlibpath_var.
11709         * tests/link-order.at: Take hardcode_direct and
11710         hardcode_direct_static into consideration when testing
11711         link order.
11712
11713 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11714
11715         Eliminate quadratic scaling in argument parsing loop, for
11716         shells that understand `var+=value', such as Bash-3.1, or Zsh.
11717
11718         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Test whether
11719         the shell understands `var+=value'.
11720         (_LT_PROG_XSI_SHELLFNS): Define `func_append' based on this.
11721         * config/ltmain.m4sh (func_mode_link): Use `func_append' for
11722         compile_command, finalize_command, libtool_args, libobjs,
11723         non_pic_objects.
11724
11725 2006-05-15  Bruno Haible  <bruno@clisp.org>,
11726             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11727
11728         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
11729         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ linux ]:
11730         Add support for Sun C 5.9, Sun C++ 5.9, and Sun Fortran 8.3 on
11731         GNU/Linux.
11732         * NEWS: Update.
11733
11734 2006-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11735
11736         * Makefile.am (check-local): Move `$(TESTS_ENVIRONMENT)' and
11737         `$(BUILDCHECK_ENVIRONMENT)' to be arguments of `testsuite', so
11738         that reruns will remember it; set enviroment variable
11739         `CONFIG_SHELL' so the suite will know which shell it was started
11740         with.
11741         (installcheck-local): Likewise, for `$(TESTS_ENVIRONMENT)' and
11742         `$(INSTALLCHECK_ENVIRONMENT)'.
11743         * tests/testsuite.at (LT_AT_TAG): Do not set the compiler
11744         variable here.
11745
11746 2006-05-14  Albert Chin-A-Young  <china@thewrittenword.com>
11747
11748         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
11749         [ aix ]: $hardcode_direct is set twice.
11750
11751 2005-05-14  John Bowler  <jbowler@acm.org>
11752
11753         * libltdl/config/ltmain.m4sh (func_mode_link): For version_type
11754         `none', we still need to set `current', `age', and `revision',
11755         so that our checks don't barf.  The values won't be used later.
11756         Apparently reported by several people, several times, for BeOS.
11757         * NEWS, THANKS: Update.
11758
11759 2006-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11760
11761         * tests/fail.at: Use "test -x" if available, for testing of
11762         executables; code modified from Autoconf's AS_EXECUTABLE_P.
11763         Reported by Albert Chin <china@thewrittenword.com>.
11764
11765 2006-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11766
11767         * libltdl/config/ltmain.m4sh (func_write_libtool_object):
11768         New function, factored out from..
11769         (func_mode_compile): .. here.  Call it to generate the libtool
11770         object file (the `.lo' file) in one step.
11771
11772 2006-04-03  Peter O'Gorman  <peter@pogma.com>
11773
11774         * libltdl/loaders/preopen.c: Don't allow lt_dlopen if the
11775         module has no symbols.
11776
11777 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11778
11779         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]:
11780         Avoid warning when "parsing" `/etc/ld.so.conf' and empty
11781         `/etc/ld.so.conf.d'.
11782         Reported by Orion Poplawski <orion@cora.nwra.com>.
11783
11784 2006-03-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11785
11786         * bootstrap: Actually use the correct version of the last patch.
11787
11788 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11789
11790         * bootstrap: Enable `WORKING_LIBOBJ_SUPPORT' if we detect
11791         Autoconf-2.60+ and Automake-1.10+, or CVS versions.
11792
11793         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Sync with gnulib:  If we
11794         define `error_t', also define `__error_t_defined', so argp.h
11795         will not typedef the former.
11796
11797 2006-03-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11798
11799         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [ freebsd ]
11800         [ dragonfly ]: Set libltdl_cv_sys_dlopen_deplibs to yes.
11801         Fixes excessive lt_dlopen times on these systems.
11802         * NEWS, THANKS: Update.
11803         Bug reported by Peter Jeremy <peterjeremy@optushome.com.au>,
11804         patch by Joerg Sonnenberger <joerg@netbsd.org>.
11805
11806 2006-03-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11807
11808         * tests/static.at: New tests for comprehensive test exposure of
11809         all current and proposed static linking flags for programs.
11810         * Makefile.am: Updated.
11811
11812         * libltdl/config/ltmain.m4sh (func_mode_link)
11813         < -static-libtool-libs >: New option.
11814         * doc/libtool.texi (Link mode, Distributing libltdl):
11815         Document it.
11816         Suggested by Gary Kumfert <kumfert@llnl.gov>.
11817
11818 2006-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11819
11820         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp [ hpux ] <aCC>:
11821         The HPPA C++ compiler has namespace support but provides no
11822         `std' namespace; just provide it with a dummy.
11823
11824         * libltdl/m4/libtool.m4 (AC_PROG_SED): Do not forget to reset
11825         IFS even in case of empty `$PATH'.
11826
11827 2006-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11828
11829         * libltdl/config/ltmain.m4sh (func_mode_link): Comment out the
11830         code to remove uninstalled paths, as it is wrong here.  Change
11831         the wrong shell quoting that kept it from "working" before.
11832         * THANKS: Updated.
11833
11834         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
11835         [ freebsd, dragonfly ]: Fix 1.5.22 regression caused by too
11836         strict $host_os match that stopped DragonFly from working.
11837         * THANKS: Updated.
11838         Reported by Jeremy C. Reed <reed@reedmedia.net>,
11839         patch by Todd Vierling <tv@duh.org>.
11840
11841 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11842
11843         * libltdl/config/ltmain.m4sh (startup): save all locale specific
11844         environment, variables:, LANG, LANGUAGE, LC_ADDRESS, LC_ALL
11845         LC_COLLATE, LC_CTYPE, LC_IDENTIFICATION, LC_MEASUREMENT,
11846         LC_MESSAGES LC_MONETARY, LC_NAME, LC_NUMERIC, LC_PAPER,
11847         LC_TELEPHONE, LC_TIME.
11848         (func_mode_execute): Restore them.
11849
11850 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11851
11852         * doc/libtool.texi (Tags): Mention `FC'.
11853         (libtool script contents) <CC>: Specify more precisely as the
11854         compiler of the current tag.
11855         <LTCC, LTCFLAGS, build, build_alias, build_os, host_alias,
11856         host_os, macro_version, macro_revision, max_cmd_len>:
11857         Document these variables.
11858
11859 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11860
11861         * doc/libtool.texi: Update copyright years.
11862
11863         * libltdl/config/getopt.m4sh (func_help): Substitute `$host'.
11864         * libltdl/config/ltmain.m4sh (help message): Use $host not
11865         @host_triplet@, as the `@..@' substitution is done at bootstrap
11866         time already.
11867         Reported by Julien Lecomte <julien@famille-lecomte.net>.
11868
11869         * doc/libtool.texi (Implementation issues):  Note that both
11870         prefix and suffix of a library may differ.
11871         (Using libtool, Creating object files, Linking libraries):
11872         Remove last documentation traces of the age when `foo.lo' was
11873         the PIC object file and not the `libtool object' text file.
11874         (libtool script contents) <compiler_o_lo>: Remove description
11875         of this variable.  It was removed from libtool in 1.5 times.
11876
11877 2006-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11878
11879         * libltdl/config/ltmain.m4sh (func_mode_link) [ linux ]:
11880         PGI: for `reload_cmds', we not only need to get rid of `$wl',
11881         but also turn comma into space so $LD understands
11882         whole_archive_flag_spec correctly.
11883
11884         * libltdl/config/ltmain.m4sh (func_mode_link) <shell wrapper>:
11885         Add _AS_BOURNE_COMPATIBLE code from Autoconf, to fix issues
11886         with zsh and other shells.
11887         Reported by David Gómez Espinosa <david@pleyades.net>.
11888
11889 2006-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11890
11891         * libltdl/m4/libtool.m4 (AC_PROG_SED): m4_defun this rather
11892         than AC_DEFUN, so that old aclocal does not pick this up.
11893
11894         * Makefile.am ($(TESTSUITE)): Also depend on `Makefile.am'.
11895         Write to temporary file and rename.
11896
11897 2006-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11898
11899         * Makefile.am (EXTRA_DIST): Add `$(srcdir)/' to all generated
11900         files so that non-GNU make programs will use the rebuilding
11901         rules.
11902
11903         * tests/testsuite.at: Add new keyword `libtoolize' for tests
11904         that exercise the `libtoolize' script that is generated at build
11905         time.
11906         * HACKING: Update testsuite mention, explain keywords.
11907
11908         * libltdl/config/ltmain.m4sh (extracted_archives)
11909         (extracted_serial): New globals.
11910         (func_extract_archives): Use them to rename extraction archives
11911         for linking against multiple convenience libraries with the same
11912         name.
11913         * tests/duplicate_conv.at: New tests.
11914         * Makefile.am: Adjusted.
11915         Reported by Carlo Contavalli <ccontavalli@commedia.it>.
11916
11917         * libltdl/config/ltmain.m4sh (func_mode_link) < test_compile >:
11918         Fix a couple of instances where `test .. -ne ..' would possibly
11919         compare non-numbers.  Clean up a bit.
11920
11921         * tests/convenience.at, tests/deplibs-ident.at: Add new keyword
11922         `libtool' for tests that exercise the unmodified `libtool'
11923         script that is generated at build time.
11924         * tests/duplicate_members.at, tests/fail.at: Likewise.
11925         * tests/inherited_flags.at, tests/link-order.at: Likewise.
11926         * tests/stresstest.at, tests/template.at: Likewise.
11927
11928 2006-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11929
11930         * tests/fail.at: Also pass a bogus object file to the linker so
11931         it fails more reliably; AIX and IRIX linkers ignore duplicate
11932         symbol definitions.
11933
11934         * libltdl/m4/libtool.m4 [ solaris ] (_LT_LINKER_SHLIBS)
11935         (_LT_LANG_CXX_CONFIG) < whole_archive_flag_spec >:
11936         Fix this once and for all, for both the SUN compiler suite
11937         (cc/CC/f77/f90/f95) and GCC.
11938         Reported by Yuri Pukhalsky <pooh@cryptopro.ru>.
11939
11940         * tests/cdemo/Makefile.am: Remove broken use of undocumented
11941         Automake variable `$(OBJECTS)'.
11942         * tests/demo/Makefile.am, tests/depdemo/Makefile.am: Likewise.
11943         * tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am: Likewise.
11944         * tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am: Likewise.
11945         * tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Likewise.
11946
11947         * libltdl/config/ltmain.m4sh (func_mode_link): Fix logic for
11948         adding run paths to also add paths for installed libtool
11949         libraries in case `-static' is used.
11950
11951 2006-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11952
11953         * Makefile.am (TESTSUITE_AT): List testsuite files in the order
11954         in which they are to be expanded in the suite.
11955         (tests/TESTSUITE): Rebuild by passing all $(TESTSUITE_AT) files,
11956         with their path suitably adjusted.  This enables us to..
11957         * tests/testsuite.at: ..get rid of their redundant mention here.
11958
11959 2006-01-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11960
11961         * doc/libtool.texi (titlepage): Remove superfluous word.
11962
11963         * libltdl/config/ltmain.m4sh (func_mode_link): Fix matching
11964         duplicate run path entries with the correct separator.
11965
11966         * tests/testsuite.at (PREPARE_TESTS): Escape `^' for some older
11967         shells.
11968
11969         * ChangeLog, HACKING, README, README.alpha,
11970         libltdl/config/ltmain.m4sh:  Add vi(m) modelines, to match emacs
11971         formatting variables.
11972
11973 2006-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11974
11975         * Makefile.am (libltdl/Makefile.am): Fixup sed script.
11976         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
11977
11978 2006-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11979
11980         * Makefile.am, bootstrap, clcommit.m4sh,
11981         libltdl/config/getopt.m4sh, libltdl/config/mailnotify.m4sh,
11982         tests/sh.test, tests/testsuite.at: Bump copyright years.
11983
11984 2006-01-21  Eric Blake  <ebb9@byu.net>
11985
11986         * THANKS: Move myself to contributor.
11987
11988 2006-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11989
11990         * bootstrap: Don't use semicolons inside { } in sed scripts, as
11991         Posix says it's not portable.
11992         * Makefile.am (libltdl/Makefile.am): Likewise.
11993         * libtoolize.m4sh (all over the map): Likewise.
11994         * libltdl/config/getopt.m4sh (func_version, func_usage)
11995         (func_help): Likewise.
11996         * libltdl/config/ltmain.m4sh (func_win32_libid): Likewise.
11997         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Likewise.
11998         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Likewise.
11999         * tests/sh.test, tests/testsuite.at (LT_AT_TAG): Likewise.
12000         Noted by Paul Eggert <eggert@cs.ucla.edu>.
12001
12002         * libltdl/config/ltmain.m4sh (func_mode_compile): Also transform
12003         `.obj' correctly.
12004         Reported by George Bosilca <bosilca@cs.utk.edu>.
12005
12006 2006-01-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12007
12008         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): Fix my forward port
12009         error of last commit.
12010
12011 2006-01-12  Leif Ekblad  <leif@rdos.net>
12012
12013         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12014         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC): Added support for
12015         RDOS.
12016         * NEWS: Updated.
12017
12018 2006-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12019
12020         * libtoolize.m4sh, libltdl/config/general.m4sh,
12021         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
12022         libltdl/m4/libtool.m4: Bump copyright years.
12023
12024 2006-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12025
12026         * Makefile.am (EXTRA_DIST): Add ChangeLog.2005.
12027
12028         * README, README.alpha: Adjust copyright years.
12029         * ChangeLog.2005: New, rotated, from..
12030         * ChangeLog: ..here.
12031
12032 2005-12-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12033
12034         * Makefile.am (libtoolize): Also depend on `config.status'.
12035         (tests/atconfig): Normalize path, for non-GNU make.
12036         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
12037
12038         * libltdl/config/ltmain.m4sh (func_mode_link) <temp_rpath>:
12039         Fix position of separator for shlibpath_var setting in shell
12040         wrapper.
12041
12042         * libltdl/lt_error.c (error_strings): Remove parentheses around
12043         string literal initializers, uncovered by `tcc'.
12044         Reported by Edward Chernenko <edwardspec@yahoo.com>.
12045
12046 2005-12-21  Gary V. Vaughan  <gary@gnu.org>
12047
12048         * .cvsignore, libltdl/.cvsignore, tests/.cvsignore: Ignore
12049         +build, +dest, +inst, .cvslog-tlasync, .gdb_history, .pc,
12050         libltdl/INSTALL, libltdl/stamp-mk and tests/testsuite.log.
12051
12052 2005-12-20  Eric Blake  <ebb9@byu.net>
12053
12054         * README.alpha: Really commit.
12055
12056 2005-12-19  Eric Blake  <ebb9@byu.net>
12057
12058         * HACKING (release note templates): Update anon cvs location.
12059         * README.alpha (Reporting Bugs): Likewise.
12060
12061 2005-12-18  Jacob Meuser <jakemsr@jakemsr.com>,
12062             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12063
12064         * libltdl/config/ltmain.m4sh (func_mode_link): Move library
12065         search paths that coincide with paths to not yet installed
12066         libraries to the beginning of the library search list.
12067
12068 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12069
12070         * THANKS: Updated.
12071
12072         * HACKING: `./libtool --config' is more helpful than `--help'.
12073
12074         * libltdl/config/ltmain.m4sh <preserve_args, linknames>:
12075         Initialize properly.
12076
12077 2005-12-18  Kean Johnston  <jkj@sco.com>,
12078             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12079
12080         * libltdl/m4/libtool.m4 (LT_PATH_NM): Also look in
12081         /usr/ccs/bin/elf, for SCO.  If we are not cross-compiling, but
12082         $ac_tool_prefix is set, also try an un-prefixed `nm'.
12083
12084 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12085
12086         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
12087         <hardcode_shlibpath_var>: Initialize, to `unsupported'.
12088
12089 2005-12-18  Marc Espie  <espie@nerim.net>
12090
12091         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
12092         [ openbsd ] <sys_lib_dlsearch_path_spec>: Set to `/usr/lib'
12093         only.
12094
12095 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12096
12097         * tests/old-m4-iface.at: Require Autoconf-2.50, so that
12098         Debian's autoconf wrapper will not cause 2.13 to barf over
12099         `--force'.
12100         Reported by Kurt Roeckx <kurt@roeckx.be>.
12101
12102         * README.alpha (Reporting bugs): Suggest to also bootstrap the
12103         libltdl subdirectory -- the Makefile will enforce it anyway.
12104         (The Test Suite): Renamed to..
12105         (The Test Suites): ..this.  Introduce the new Autotest test
12106         suite, how to run each one individually, and what to report.
12107         * README (The Test Suite): Likewise.
12108
12109 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12110
12111         In the subpackage case, we do not install Makefile.inc.  Since
12112         we have to be correct for this case, remove `Makefile.inc' from
12113         EXTRA_DIST.  Recursive mode does not use it either.  Since
12114         nonrecursive mode requires an Automake >= 1.7 anyway, and those
12115         versions automatically distribute included makefile fragments,
12116         we don't need to cater for that one either.
12117
12118         * libltdl/Makefile.inc (EXTRA_DIST): Remove Makefile.inc.
12119         Reorder other entries.
12120
12121 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12122
12123         * Makefile.am (libltdl/Makefile.in): also depend on
12124         libltdl/aclocal.m4, so that we guarantee timestamp consistency.
12125         (libltdl/stamp-mk): New target, to fix `libltdl/Makefile.in'.
12126         (EXTRA_DIST): Distribute `libltdl/stamp-mk' and
12127         `libltdl/m4/lt~obsolete.m4'.
12128         (all-local): Ensure the stamp files is up to date.
12129         (libltdl/aclocal.m4): New target, to ensure timestamp
12130         consistency.  Depend on all m4 files.
12131         * HACKING: Updated.
12132
12133         * tests/testsuite.at (PREPARE_TESTS): New variable `tst_dist',
12134         default to empty.
12135         * tests/nonrecursive.at, tests/recursive.at,
12136         tests/standalone.at, tests/subproject.at: Use it in
12137         LT_AT_BOOTSTRAP or LT_AT_MAKE, so that you can optionally test
12138         redistribution within the tests.
12139
12140         * libltdl/m4/lt~obsolete.m4: Update documentation for aclocal
12141         versions before 1.7.  Change all macros to use AC_DEFUN instead
12142         of AU_DEFUN.
12143         * (_AC_PROG_LIBTOOL, AC_LIBTOOL_SETUP, _LT_AC_CHECK_DLFCN)
12144         (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_TAGCONFIG)
12145         (AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_CXX, _LT_AC_LANG_F77)
12146         (_LT_AC_LANG_GCJ, AC_LIBTOOL_RC, AC_LIBTOOL_LANG_C_CONFIG)
12147         (_LT_AC_LANG_C_CONFIG, AC_LIBTOOL_LANG_CXX_CONFIG)
12148         (_LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_LANG_F77_CONFIG)
12149         (_LT_AC_LANG_F77_CONFIG, AC_LIBTOOL_LANG_GCJ_CONFIG)
12150         (_LT_AC_LANG_GCJ_CONFIG, AC_LIBTOOL_LANG_RC_CONFIG)
12151         (_LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG)
12152         (_LT_AC_FILE_LTDLL_C): Add new fake macros for these, they
12153         were used at one time in libtool.m4.
12154
12155         * tests/am-subdir.at (Makefile.am): Put automake options here,
12156         in AUTOMAKE_OPTIONS.  Require 1.6 because of the newer
12157         `AC_INIT(pkgname,version) AM_INIT_AUTOMAKE' scheme.
12158         * tests/nonrecursive.at, tests/recursive.at: Require 1.7,
12159         because libltdl rules use `+=' in conditionals.
12160         * tests/testsuite.at (LT_AT_AUTOMAKE): Fix indenting.
12161         (LT_AT_AUTORECONF): also detect too old Automake.
12162
12163 2005-12-08  Eric Blake  <ebb9@byu.net>
12164
12165         * libltdl/libltdl/lt__alloc.h (FREE): Cast away constness of
12166         argument to `free' to avoid compiler warning.
12167
12168 2005-12-08  Peter O'Gorman  <peter@pogma.com>
12169
12170         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_LINKER_SHLIBS)
12171         [darwin]: Use $LTCC $LTCFLAGS to check for -single_module.
12172         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12173
12174 2005-12-07  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12175
12176         * bootstrap: always remove Makefile, to avoid triggering the
12177         autotools rebuild rules before autoreconf builds these.
12178         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
12179
12180 2005-12-07  Peter O'Gorman  <peter@pogma.com>
12181
12182         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4 [darwin]:
12183         Use -single_module by default when linking shared libraries. Can
12184         be overridden by specifying -multi-module or by setting the env
12185         var LT_MULTI_MODULE before configure.
12186         * libltdl/m4/libtool.m4 (archive_expsyms_cmds) [darwin]:
12187         Simplify.
12188         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12189
12190 2005-12-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12191
12192         * doc/libtool.texi (References): Do not use `@/' for the benefit
12193         of older `makeinfo', break lines instead.
12194
12195         * Makefile.am (install-data-local): No continuation here.
12196         (dist-hook): Fix copying of README.alpha to README.
12197         * tests/early-libtool.at (configure.ac): Remove
12198         `AM_INIT_AUTOMAKE', we do not use automake in these tests.
12199
12200         * README, README.alpha, libtoolize.m4sh: Typos.
12201         * tests/am-subdir.at, tests/duplicate_members.at: Make all
12202         banners end with a dot, for symmetry.
12203
12204         * libtoolize.m4sh (func_copy_all_files)
12205         (glob_exclude_pkgaux_files): Removed, since unused.
12206
12207         * libtoolize.m4sh (func_copy_cb, func_copy_some_files)
12208         (func_serial_update, func_keyword_update): Fail immediately
12209         if some file we may install does not exist.
12210         Reported by Troy Benjegerdes <hozer@hozed.org>.
12211
12212 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12213
12214         * TODO: A bunch of items fixed. :)
12215
12216         * tests/convenience.at: Updated to expose more corner cases.
12217
12218         * doc/libtool.texi (Invoking libtoolize): Remove mention of
12219         the nonrecursive restriction to name the directory `libltdl'.
12220
12221         * libtoolize.m4sh (func_fixup_Makefile_inc): New function.
12222         (main): Call it in nonrecursive mode to mangle Makefile.inc.
12223         * tests/nonrecursive.at: adjusted to test this.
12224
12225 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12226
12227         Basic support for PIE (position-independent executables).
12228
12229         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
12230         Don't pass PIE flag for compilation of the symbol file object.
12231         (func_mode_compile): Pass PIE flag only for non-PIC objects.
12232         * NEWS: Updated.
12233
12234 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12235
12236         * libltdl/config/general.m4sh (func_show_eval): Rewrite use of
12237         the failure expression, because the exit status of the previous
12238         command may not be preserved in the next `eval' by some shells,
12239         such as pdksh.
12240         * libltdl/config/ltmain.m4sh (func_extract_an_archive):
12241         Use func_show_eval correctly.
12242         (func_mode_link): Likewise.  Also, do not use `$status'.
12243         * tests/fail.at: New set of tests to ensure libtool fails.
12244         * Makefile.am, tests/testsuite.at: Adjusted.
12245
12246 2005-11-26  Peter O'Gorman  <peter@pogma.com>
12247
12248         * libltdl/m4/libtool.m4 [darwin]: Use $LTCC $LTCFLAGS to create
12249         reloadable objects.
12250
12251 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12252
12253         * libltdl/Makefile.inc (libltdl/argz.h): Create libltdl
12254         directory if it does not exist yet.  Take care that munging
12255         of the file will not mess up the build rule.
12256         Reported by Peter O'Gorman <peter@pogma.com>.
12257
12258 2005-11-25  Eric Blake  <ebb9@byu.net>,
12259             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12260
12261         * libltdl/loaders/loadlibrary.c (iface_id): New variable.
12262         (get_vtable): Get an `iface_id' from `lt_dlinterface_register'.
12263         (get_vtable): Rewrite to catch up with lt_dlhandle_iterate
12264         interface change.  Append dot only after w32 path conversion
12265         so it works on cygwin managed mounts.
12266
12267         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlinterface_free): New
12268         function.
12269         * doc/libtool.texi (User defined module data): Document it.
12270
12271 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12272
12273         * libltdl/m4/libtool.m4 [aix] <archive_expsym_cmds>
12274         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Always move -bnoentry
12275         before $compiler_flags, so it can be overridden.
12276
12277         * libltdl/config/ltmain.m4sh (func_mode_link): Allow GCC
12278         response files through.
12279
12280 2005-11-25  Peter O'Gorman  <peter@pogma.com>
12281
12282         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
12283         -isysroot for cross architecture builds on darwin.
12284
12285 2005-11-24  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12286
12287         * libltdl/config/ltmain.m4sh (func_mode_uninstall): In clean
12288         mode, don't remove non-existent libfoo.lai.
12289
12290 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12291
12292         * Makefile.am (aclocalfiles): Also install lt~obsolete.m4.
12293         * libtoolize.m4sh (func_check_macros): Updated.
12294         * tests/libtoolize.at: Adjusted.
12295
12296 2005-11-20  Eric Blake  <ebb9@byu.net>,
12297             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12298
12299         * bootstrap (--help): Provide some help.
12300
12301 2005-11-20  Todd Vierling <tv@netbsd.org>,
12302             Thorsten Glaser <tg@mirbsd.org>
12303
12304         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, _LT_SYS_DYNAMIC_LINKER)
12305         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
12306         (_LT_LANG_CXX_CONFIG) [ interix3 ]: Support for Interix/Microsoft
12307         Services for Unix.
12308         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
12309         * NEWS: Updated.
12310
12311 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12312
12313         * tests/link-order.at [ interix ]: Skip command line grep.
12314         * tests/deplibs-ident.at [ interix ]: Not broken here.
12315         Reported by Thorsten Glaser <tg@66h.42h.de>.
12316
12317 2005-11-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12318
12319         * libtoolize.m4sh (func_copy_all_files)
12320         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
12321         (func_massage_pkgconfig_files): Work around ksh limitation.
12322         Reported by Thorsten Glaser <tg@66h.42h.de>.
12323
12324 2005-11-14  Albert Chin  <china@thewrittenword.com>
12325
12326         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12327         [ hpux11 ]: Pass +nodefaultrpath when linking on ia64*.
12328
12329 2005-11-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12330
12331         Testsuite portability update round.
12332
12333         * tests/inherited_flags: skip when shared libs are disabled.
12334         * tests/deplibs-ident.at [ aix ]: No unexpected failure here.
12335         * tests/libtoolize.at: Fix for distcheck (readonly sources).
12336         * tests/nonrecursive.at, tests/recursive.at, tests/subproject.at
12337         (foo.c): Actually export a symbol, for AIX.
12338         * tests/old-m4-iface.at: Use AC_LIBTOOL_DLOPEN, for AIX.
12339         * tests/nonrecursive.at: Set foo_la_SOURCES, for automake-1.7.
12340         * tests/subproject.at: Require automake-1.9, we use indirect
12341         subdirs.
12342         * tests/am-subdir.at: Move AT_KEYWORDS settings..
12343         * tests/testsuite.at: ..here, in respective macros.
12344         (LT_AT_AUTOMAKE): Skip if we detect failure due to old version.
12345         (PREPARE_TESTS): Set autotool variables to `no' if not present.
12346         (LT_AT_ACLOCAL, LT_AT_AUTOCONF, LT_AT_AUTOMAKE)
12347         (LT_AT_AUTOHEADER, LT_AT_AUTORECONF): Use to XFAIL tests.
12348         Reported by Tim Rice <tim@multitalents.net>.
12349         (LT_AT_MAKE): Do not use `make -e'.
12350         (_LTDL_PROJECT_FILES): Adjust sub-make call.  Work around `make'
12351         which does not set `MAKE' or `SHELL'.  Fix for user-set
12352         `CONFIG_SHELL'.
12353         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
12354
12355         * libltdl/m4/lt~obsolete.m4 (_LT_CC_BASENAME)
12356         (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
12357         Added because they were added to branch-1-5 AC_DEFUNed.
12358         * HACKING: Add note about lt~obsolete.m4.
12359
12360         * Makefile.am, libltdl/Makefile.inc (INSTALL_LTDL):
12361         For nonrecursive mode, add to include_HEADERS as well.
12362         * doc/libtool.texi (Invoking libtoolize, Distributing libltdl),
12363         tests/nonrecursive.at: Adjusted, and removed TABS from .texi.
12364
12365         * libtoolize.m4sh: Revert use of `$tst_aclocaldir'.
12366
12367 2005-11-13  Eric Blake  <ebb9@byu.net>
12368
12369         * libltdl/ltdl.c (lt_dlhandle_iterate): Fix endless loop.
12370         (lt_dlinterface_register): Fail if lt__strdup did.
12371
12372 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12373
12374         * libltdl/m4/libtool.m4 (_LT_LANG_C_CONFIG):
12375         Removed `lt_prog_cc_shlib' cruft, not needed any more.
12376
12377 2005-11-13  Kean Johnston  <jkj@sco.com>,
12378             Tim Rice  <tim@multitalents.net>
12379
12380         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12381         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
12382         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG)
12383         [ sco3.2v5, sysv4, sysv4.3, sysv5, sco3.2v5, sco5v6, unixware,
12384         OpenUNIX, sysv4*uw2 ]: Complete overhaul of SCO support.
12385         * THANKS: Updated.
12386
12387 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12388
12389         * tests/quote.test: Do not fail on harmless shell bug present
12390         in some ksh versions.
12391         Reported by Tim Rice <tim@multitalents.net> and others.
12392
12393 2005-11-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12394
12395         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTION): Use m4_warning
12396         instead of m4_warn.
12397
12398         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): `wl' is tagged here.
12399
12400         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF, _LT_COMPILER_PIC):
12401         Make sure `$wl' is properly expanded for tests involving
12402         `export_dynamic_flag_spec', `lt_prog_compiler_static'.
12403
12404         * tests/defs.m4sh (func_configure): Actually pass
12405         options (like --disable-shared) to func_configure_nofail.
12406
12407 2005-11-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12408
12409         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]:
12410         Fix shlibpath_overrides_runpath settings.
12411         Reported by Dave Benson <daveb@idealab.com>.
12412
12413 2005-09-10  Charles Wilson  <cygwin@cwilson.fastmail.fm>
12414
12415         * libltdl/config/ltmain.m4sh (func_win32_libid): use $SED not
12416         sed.
12417         
12418 2005-11-10  Albert Chin-A-Young  <china@thewrittenword.com>
12419
12420         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]
12421         <hppa*64,ia64, aCC,g++>:
12422         Use C++ compiler for linking rather than ld.
12423
12424 2005-11-10  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12425
12426         * libltdl/m4/ltsugar.m4 (lt_join, lt_combine, lt_dict_filter):
12427         Rewrite to eliminate tail recursion; use ..
12428         (lt_unquote): New trivial helper macro.
12429         * libltdl/m4/libtool.m4 (_lt_decl_filter): Document.
12430
12431 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
12432
12433         * tests/testsuite.ac (macrodir): Don't set it here...
12434         * Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
12435         ...set it here to pick up files from the right place in context.
12436         * tests/libtoolize.at, tests/old-m4-iface.at: Adjust.
12437         * libtoolize.m4sh: Take tst_aclocaldir into account when running
12438         inside the test harness.
12439
12440 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
12441
12442         * tests/am-subdir.at: Now that we don't run autoreconf, we have to
12443         explicitly tell aclocal what flags to use.
12444
12445         * tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
12446         configure.
12447         * tests/am-subdir.at, tests/nonrecursive.at, tests/old-m4-iface.at,
12448         tests/subproject.at: Use LT_AT_BOOTSTRAP.
12449
12450 2005-11-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12451
12452         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Also set pic_flag.
12453         (_LT_LANG_CXX_CONFIG): Use $as_unset, not unset.
12454         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG): Remove bogus
12455         ld_shlibs tests.
12456
12457         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Move setting of
12458         `variables_saved_for_relink'..
12459         (_LT_SYS_DYNAMIC_LINKER): here, when both `shlibpath_var'
12460         and `runpath_var' have been set.
12461         Reported by Mike Frysinger <vapier@gentoo.org>.
12462
12463         * libltdl/Makefile.inc (AM_CPPFLAGS): Do not define
12464         HAVE_CONFIG_H.
12465         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not invoke
12466         AC_CONFIG_HEADERS ourselves, we can build with or without now.
12467
12468 2005-11-07  Kean Johnston  <jkj@sco.com>
12469
12470         * libltdl/config/ltmain.m4sh (func_mode_link) [ sysv4*uw2*,
12471         unixware7* ]: Work around linker bug on older SCO systems.
12472
12473 2005-11-07  Albert Chin-A-Young  <china@thewrittenword.com>
12474
12475         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
12476         (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]:
12477         hardcode_libdir_flag_spec and hardcode_minus_L are the same for
12478         hppa*64 and ia64*. Don't set
12479         hardcode_libdir_flag_spec='-L$libdir' on ia64* because if you
12480         specify +b and -L, +b overrides what is set into DT_RPATH.
12481
12482 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12483
12484         * tests/testsuite.at (_LTDL_PROJECT_FILES): Factored out from
12485         common code to build a basic libltdl using project.
12486         * tests/old-m4-iface.at, tests/standalone.at, tests/subproject.at:
12487         Use it.
12488
12489         * doc/libtool.texi (Distributing libltdl): Document correct use of
12490         LT_CONFIG_LTDL_DIR mode argument with Autoconf and Automake.
12491
12492 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12493
12494         Support 'recursive' mode for building libltdl: Automake will
12495         recursively descend into the libltdl directory, and use libltdl's
12496         Makefile.am code to build libltdl:
12497
12498         * ltdl.m4 (LT_CONFIG_LTDL_DIR): Don't barf on 'recursive' mode
12499         for 2nd argument.
12500         (_LTDL_MODE_DISPATCH): Handle recursive mode.
12501
12502 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12503
12504         * tests/recursive.at: New tests for libltdl as a subdirectory,
12505         configured and compiled from the toplevel project using a
12506         recursive make..
12507         * tests/testsuite.at: Use it.
12508         * Makefile.am (TESTSUITE_AT): Depend on it.
12509
12510         * libltdl/m4/ltdl.m4 (LTDL_INIT): Don't force running
12511         AC_CONFIG_HEADERS for subproject ltdl.
12512         * tests/old-m4-iface.at, tests/subproject.at: Remove workaround.
12513
12514         * libltdl/m4/ltdl.m4 (LT_CONFIG_LTDL_DIR): Add LTDL-MODE
12515         argument.
12516         * configure.ac: Use it.
12517
12518 2005-11-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12519
12520         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): lt_unknown is
12521         lt_dlunknown.
12522
12523         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Revert
12524         expansion of `$wl'.
12525         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_GCJ_CONFIG):
12526         Do not require LT_SYS_DLOPEN_SELF.
12527         (_LT_LANG_C_CONFIG): Instead call it at the right time.
12528         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
12529         (_LT_LANG_GCJ_CONFIG): Do not call _LT_CMD_STRIPLIB.
12530
12531         * Makefile.am: `2>&1' as suggested by Albert Chin.
12532         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4:
12533         Two newlines before each macro, fix underlines.
12534
12535 2005-11-05  Kean Johnston  <jkj@sco.com>,
12536             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12537
12538         * libltdl/config/ltmain.m4sh (func_mode_link) [*-*-sco3.2v5*]:
12539         Don't pass through -lc, nor add it to deplibs.
12540         [*-*-sysv5*]: Ditto.
12541         [*-*-openbsd*, *-*-freebsd*, *-*-dragonfly*]: Remove bogus
12542         `$arg'.
12543
12544 2005-11-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12545
12546         * THANKS: Updated.
12547
12548 2005-11-02  Gary V. Vaughan  <gary@gnu.org>
12549
12550         * tests/nonrecursive.at: New tests for libltdl as a subdirectory,
12551         configured and compiled from the toplevel project.
12552         * tests/testsuite.at: Use it.
12553         (LT_AT_AUTOHEADER): New macro.
12554         * Makefile.am (TESTSUITE_AT): Depend on nonrecursive.at.
12555
12556 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12557
12558         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Add `-64'
12559         to $LD if necessary, to permit combining of several convenience
12560         libs without any further objects added.
12561         Reported by Brian Barrett <brbarret@open-mpi.org>.
12562
12563 2005-11-01  Kean Johnston  <jkj@sco.com>,
12564             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12565
12566         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Use
12567         `lt_prog_compile_static', not `link_static_flag'.  Expand `$wl'
12568         so expansion of `export_dynamic_flag_spec' works.
12569         (_LT_TRY_DLOPEN_SELF): Show dlerror() in case of failure.
12570         (_LT_LINKER_SHLIBS) [ aix3 ]: Likewise.
12571         (_LT_COMPILER_PIC) [ hpux* ]: Use `${wl}'.
12572
12573 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12574
12575         * THANKS: Updated.
12576
12577 2005-11-01  Gary V. Vaughan  <gary@gnu.org>
12578
12579         * libltdl/m4/ltdl.m4 (LTDL_INIT): Call _LT_ENABLE_INSTALL directly
12580         instead of m4_requiring it, as it relies on enable_ltdl_install
12581         and enable_ltdl_convenience to have been initialised first.
12582
12583         * libtoolize.m4sh: Use serial tags to locate the correct serial
12584         numbers when deciding whether to update.
12585         (func_serial): Allow for macro_regex argument to be originating
12586         file name.
12587         (func_serial_update): Use NL2SP to flatten list of extracted
12588         m4_include files.
12589         * tests/libtoolize.at: More tests for old-style verbatim copying
12590         of macros into aclocal.m4.
12591
12592         * libltdl/m4/argz.m4, libltdl/m4/ltoptions.m4, libltdl/ltsugar.m4,
12593         libltdl/m4/ltversion.in: Add serial number tags, and bump serial
12594         number.
12595
12596 2005-10-31  Kean Johnston  <jkj@sco.com>
12597
12598         [ sysv5*, sco3.2v5*, sco5v6*, unixware*, OpenUNIX*, sysv4*uw2* ]
12599         Patches for various bug fixes, small improvements and updating
12600         the SCO platform support.
12601
12602         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Set correctly for SCO.
12603
12604         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Set correct
12605         symcode values for the native nm on SCO platforms.
12606
12607         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): All SCO platforms
12608         open dependency libraries when you dlopen a module.
12609
12610 2005-10-31  Albert Chin-A-Young  <china@thewrittenword.com>
12611
12612         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12613         [ aix ]: Remove duplicate always_export_symbols=yes for AIX.
12614
12615 2005-10-29  Howard Chu  <hyc@highlandsun.com>
12616
12617         * libltdl/config/ltmain.m4sh (func_mode_link):
12618         With `-static', only link statically against uninstalled
12619         libtool libraries.  Fixes 1.5.x regression to match documented
12620         behavior.
12621         * NEWS: Updated.
12622
12623 2005-10-27  Stepan Kasal  <kasal@ucw.cz>
12624
12625         * HACKING: Update note about use of `$#' in m4 macros.
12626
12627 2005-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12628
12629         * tests/tagtrace.test: Allow `$AUTOCONF' to contain arguments.
12630         Skip if the running `autoconf' version is older than the one
12631         used to bootstrap Libtool.
12632
12633 2005-10-26  Eric Blake  <ebb9@byu.net>,
12634             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12635
12636         * Makefile.am (vcl-tmp): Avoid warnings from diff.
12637         * bootstrap: Avoid warnings from find.
12638         (lt_tab): Use to prevent editor whitespace "cleanup".
12639
12640 2005-10-26  Gary V. Vaughan  <gary@gnu.org>
12641
12642         * libtoolize.m4sh: Put back the func_serial_update callback for
12643         func_copy_some_files so that the testsuite passes again.  We'll
12644         have to find a better way of handling serial numbers in libtool
12645         macro files.
12646
12647         * libltdl/Makefile.inc: New file, factored out of Makefile.am for
12648         use in non-recursive libltdl installations.
12649         * bootstrap: Adjust.
12650         * Makefile.am: include it.
12651         (libltdl/Makefile.am): Adjust to build from the new
12652         libltdl/Makefile.inc.
12653         (SUBDIR_LIBOBJS): Renamed from this...
12654         (LTDL_SUBDIR_LIBOBJS): ...to this.
12655         * configure.ac: Adjust.
12656         * doc/libtool.texi (Invoking libtoolize): Document the new modes
12657         and libtoolize option to select them.
12658         * libtoolize.m4sh: Parse new options, --nonrecursive, --recursive
12659         and --subproject.  Install the appropriate files with --ltdl
12660         according to the selected mode.
12661         (func_scan_files): If --subproject, --recursive or --nonrecursive
12662         options were not given, use the value from LT_CONFIG_LTDL_DIR; if
12663         a mode was given, and there is also an argument to
12664         LT_CONFIG_LTDL_DIR, ensure they are the same.
12665         * NEWS: Updated.
12666
12667         * libtoolize.m4sh: Don't use func_serial_update as a copy
12668         function for libtool m4 files with no macro_regex.  If the
12669         files are copied directly into aclocal.m4, because
12670         AC_CONFIG_MACRO_DIR isn't set for example, there is no way
12671         to tell what serial number goes with what source file.
12672         (func_serial_update): For future-proofing, only make the second
12673         serial number check if the destination file wasn't m4_included
12674         into aclocal.m4 (and hence updated automatically by the cat of
12675         copying a new version to the dest directory).
12676
12677         * libtoolize.m4sh: Move the consistency checks...
12678         (func_check_macros): ...into here.  Also suggest LT_WITH_LTDL if
12679         appropriate.
12680
12681         * libtoolize.m4sh: Copying just libtool.m4 for hand maintained
12682         aclocal.m4 doesn't work.  List all required files in that case,
12683         using the files from installed libltdl if available.  Also, list
12684         the additional files required when using libltdl.
12685         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
12686
12687         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_first): Removed.
12688         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_next)
12689         (lt_dlhandle_find, lt_dlforeach): Removed...
12690         (lt_dlhandle_iterate, lt_dlhandle_fetch, lt_dlhandle_map): Similar
12691         functions that are multi-loader safe, and require a registered
12692         interface validator argument.
12693         * doc/libtool.texi: Updated.
12694         * NEWS: Updated.
12695
12696         * libtoolize.m4sh: Always copy pkgconfig_files for --ltdl, incase
12697         ltdl needs additional things not found by automake when looking at
12698         the parent project configury.
12699         * tests/libtoolize.at: Adjust.
12700
12701 2005-10-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12702
12703         * libltdl/config/ltmain.m4sh [darwin]: Don't check for "bundle"
12704         in file path.
12705         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
12706
12707 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
12708
12709         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Don't nest AC_MSG_CHECKING/
12710         AC_MSG_RESULT pairs.
12711
12712 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
12713
12714         * tests/subproject.at: Move 'touch config.h.in' invocation.
12715
12716         * tests/subproject.at (_LTDL_SETUP): Use pushdef/popdef to
12717         simulate file-local scope.  Empty source file compilation is not
12718         portable, so add minimal code to generated foo.c file.
12719
12720 2005-10-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12721
12722         * libltdl/m4/libtool.m4 (LT_PATH_NM): End test source with
12723         newline.
12724         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
12725
12726 2005-10-13  Peter O'Gorman  <peter@pogma.com>
12727
12728         * libltdl/ltdl.c (find_module): Check that dir is set.
12729         (load_deplibs): Don't free the user search paths too early.
12730
12731 2005-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12732
12733         * tests/testsuite.at (LT_AT_AUTOMAKE): New macro.
12734         * tests/subproject.at: Use it.  Do not call `autoreconf' in
12735         tests, since it will try to reconfigure `sub/ltdl', which
12736         breaks `make check' during `distcheck' because of a readonly
12737         source tree.
12738
12739         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Also set INCLTDL.
12740
12741         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE)
12742         (LT_WITH_LTDL): Revert Gary's 2005-10-10 patch.
12743
12744         * tests/stresstest.at: Use `allow_undefined_flag' instead of
12745         host_os setting.
12746
12747 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
12748
12749         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Remove bogus extra
12750         closing brackets.
12751
12752 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
12753
12754         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Remove
12755         AC_SUBST of LIBLTDL, LTDLINCL, and all mention of INCLTDL.
12756         (LT_WITH_LTDL): Due to order constraints between LTDL_CONVENIENCE,
12757         LTDL_INSTALLABLE, LT_WITH_LTDL & LTDL_INIT, we can safely AC_SUBST
12758         LIBLTDL and LTDLINCL here.  Also, remember to synch INCLTDL.
12759
12760 2005-10-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12761
12762         * tests/stresstest.at [ aix3, beos, os2 ]: Always use
12763         `-no-undefined'.
12764
12765 2005-10-09  Christian Biesinger  <cbiesinger@web.de>
12766
12767         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ beos ]:
12768         Initial shared library support for C++.
12769
12770 2005-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12771
12772         * configure.ac (abs_top_builddir, abs_top_srcdir): always
12773         substitute.
12774         * Makefile.am (BUILDCHECK_ENVIRONMENT)
12775         (INSTALLCHECK_ENVIRONMENT): New macros.  Set _lt_pkgdatadir,
12776         LIBTOOL, LIBTOOLIZE accordingly, by using above, and
12777         program_transform_name.
12778         * tests/testsuite.at (TESTS_PREPARE): Do not set them anymore.
12779         Set $unset.
12780         (LT_AT_MAKE): Use to unset LIBTOOL and LIBTOOLIZE.
12781
12782 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
12783
12784         * tests/subproject.at: Commit the right file this time.
12785
12786 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12787
12788         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Fix m4 quoting
12789         for lt_simple_link_test_code.
12790         Reported by Nicolas Joly <njoly@pasteur.fr>.
12791
12792 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
12793
12794         * tests/subproject.at: New tests for libltdl as a subproject with
12795         its own configuration.
12796         * tests/testsuite.at: Use it.
12797         * Makefile.am (TESTSUITE_AT): Depend on it.
12798
12799 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12800
12801         * Makefile.am: Simplify.  Do not use abs_top_srcdir.
12802         Reported by Gary V. Vaughan <gary@gnu.org>.
12803
12804 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
12805
12806         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Spurious './' prefixes
12807         upset BSD pmake, don't set lt_ltdl_dir in this case.
12808         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
12809
12810 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12811
12812         * Makefile.am (BUILDCHECK_ENVIRONMENT)
12813         (INSTALLCHECK_ENVIRONMENT): New macros.
12814         (check-local, installcheck-local): Use them.
12815         * tests/testsuite.at (PREPARE_TESTS): Extract host_alias, ECHO.
12816         Set configure_options appropriately.
12817         (LT_AT_CONFIGURE, LT_AT_AUTORECONF, LT_AT_MAKE): New macros.
12818         (LT_AT_BOOTSTRAP): Use them.
12819         * tests/am-subdir.at, tests/early-libtool.at,
12820         tests/old-m4-iface.at, tests/standalone.at: Likewise.
12821         * tests/link-order.test: Do not extract ECHO any more.
12822
12823         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
12824         AC_CANONICAL_HOST and _LT_DECL_SED.
12825
12826 2005-10-03  Gary V. Vaughan  <gary@gnu.org>
12827
12828         * libltdl/m4/ltdl.m4: Bump serial as we are changing the
12829         interface.
12830         (LT_CONFIG_LTDL_DIR): New macro to centralise setting the
12831         subdirectory used for libltdl.
12832         (LTDL_CONVENIENCE): Continue backwards compatibility support for
12833         declaring the libltdl source subdirectory with an argument, but
12834         defer to LT_CONFIG_LTDL_DIR.
12835         (AC_LIBLTDL_CONVENIENCE): Adjust to upgrade to the new style.
12836         (LTDL_INSTALLABLE, AC_LIBLTDL_INSTALLABLE): Ditto.
12837         (LTDL_INIT): lt_ltdl_dir is set by LT_CONFIG_LTDL_DIR now, and
12838         even `./' needs trailing slashes trimming!  If the user didn't
12839         upgrade their configure.ac yet, call LT_CONFIG_LTDL_DIR for them.
12840         * libtoolize.m4sh (func_scan_files): If --ltdl option is given
12841         without a directory argument, use the value from
12842         LT_CONFIG_LTDL_DIR; if the argument is given, and there is also a
12843         value in LT_CONFIG_LTDL_DIR, ensure they are the same.
12844         * libltdl/configure.ac: Use it.
12845         * NEWS: Updated.
12846
12847 2005-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12848
12849         * tests/old-m4-iface.at (Makefile.in): Do not reconfigure
12850         libltdl directory.
12851
12852 2005-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12853
12854         * tests/deplibs-ident.at: New file with XFAIL test to expose
12855         wrong multiple listing of a deplib on the command line.
12856         * Makefile.am, tests/testsuite.at: Updated.
12857         Reported by Brian Barrett <brbarret@open-mpi.org>.
12858
12859         * tests/old-m4-iface.at: Define top_srcdir, work around current
12860         ltdl.m4 bug.
12861
12862         * libltdl/config/ltmain.m4sh (func_mode_link):
12863         Fix wrong logic introduced in last commit.
12864
12865 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
12866
12867         * tests/libtoolize.at: Add a new test to catch a regression I
12868         almost introduced with respect to copying macro files when
12869         AC_CONFIG_MACRO_DIR is shared with libltdl subproject.
12870
12871 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
12872
12873         * tests/old-m4-iface.at: Start of a new test series for m4
12874         interface backwards compatibility.
12875         * tests/testsuite.at: Use it.
12876         (macrodir): Declare the location of uninstalled libtool m4 macros.
12877         * Makefile.am (TESTSUITE_AT): Depend on it.
12878
12879 2005-09-29  Tim Rice  <tim@multitalents.net>  (tiny change)
12880
12881         * tests/early-libtool.at (Makefile.in): Set $(SHELL).
12882
12883 2005-09-29  Peter Ekberg  <peda@lysator.liu.se>
12884
12885         * libltdl/config/ltmain.m4sh (func_mode_link): Don't modify
12886         user provided symbols file. Adjust removal of temporary files
12887         and also remove temporary files used during symbols file
12888         filtering.
12889
12890 2005-09-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12891
12892         * libtoolize.m4sh (func_included_files): Do not recurse
12893         non-existent files.
12894
12895 2005-09-27  Gary V. Vaughan  <gary@gnu.org>
12896
12897         * libtoolize.m4sh (func_scan_files): Support projects that have
12898         upgraded libtool, but still use an old autoconf.  When the libtool
12899         macros are not copied (because of missing ACLOCAL_AMFLAGS and
12900         AC_CONFIG_MACRO_DIR ), point them at the libtoolize master tree
12901         for files to manually copy into acinclude.m4 or aclocal.m4.
12902
12903         * libltdl/lt_error.c (lt__last_error, lt__error_strings): The lt__
12904         prefix is used to indicate internal symbols that are only exported
12905         for use by other parts of libltdl.  These are now static, so...
12906         (last_error, error_strings): ...renamed to this.  Changed all
12907         callers.
12908
12909         * libltdl/ltdl.h (lt_dlmutex_register, lt_dlmutex_lock)
12910         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror)
12911         (lt_dlmalloc, lt_dlrealloc, lt_dlfree): Remove deprecated APIs.
12912         * doc/libtool.tex: Updated.
12913         * NEWS: Updated.
12914
12915         * libltdl/ltdl.c (lt_dlcaller_register): Renamed to avoid problems
12916         with module visibilty when linked with programs written for the
12917         old API.
12918         (lt_dlinterface_register): New name.
12919         * Makefile.am (VERSION_INFO): Bumped.
12920         * doc/libtool.texi (User defined module data): Updated.
12921
12922 2005-09-27  Tim Rice  <tim@multitalents.net>
12923
12924         * tests/defs.m4sh, tests/testsuite.at (PREPARE_TESTS)
12925         <AUTORECONF>: Allow variable override.
12926
12927 2005-09-26  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12928
12929         * HACKING: Only update libltdl version info before release.
12930
12931 2005-09-26  Tim Rice  <tim@multitalents.net>
12932
12933         * configure.ac <AUTOM4TE>: Allow variable override.
12934
12935 2005-09-25  Alan W. Irwin  <irwin@beluga.phys.uvic.ca>,
12936             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12937
12938         * libltdl/config/ltmain.m4sh (func_win32_libid)
12939         [ cygwin, mingw ]: Robustify sed script to determine
12940         win32_libid_type.
12941         (func_mode_link) [ mingw ]: Ignore `-lm'.
12942
12943 2005-09-25  Peter Ekberg  <peda@lysator.liu.se>
12944
12945         * libltdl/libltdl/lt__private.h, libltdl/lt_error.c:
12946         Don't export the lt__last_error and lt__error_strings
12947         variables. Define lt__error_strings so that no relocations
12948         are needed.
12949         * libltdl/libltdl/lt__private.h (LT__STRERROR, LT__GETERROR)
12950         (LT__SETERRORSTR): Adjust to not use the above variables,
12951         instead use the following functions...
12952         * libltdl/lt_error.c: (lt__error_string, lt__get_last_error)
12953         (lt__set_last_error): Reimplement the functionality in
12954         these functions instead.
12955         * libltdl/libltdl/lt_error.h: Add LT_ERROR_LEN_MAX define for
12956         max error string length.
12957         (lt_dlerror_table): Append explicit nul terminators so that
12958         compilers warn more reliably if the above define is too small.
12959
12960 2005-09-23  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12961
12962         * tests/link-order.at [ aix* ]: skip path syntax grep.
12963
12964 2005-09-23  Peter Ekberg  <peda@lysator.liu.se>
12965
12966         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Fix awk
12967         script to be a single line so that the cache variable isn't
12968         multiline.
12969
12970 2005-09-23  Eric Blake  <ebb9@byu.net>  (tiny change)
12971
12972         * libltdl/loaders/loadlibrary.c (vm_open): Silence gcc warnings.
12973         [__CYGWIN__]: Include <sys/cygwin.h> for prototype.
12974
12975 2005-09-22  Gary V. Vaughan  <gary@gnu.org>
12976
12977         * bootstrap: Don't clobber the working copy metadata in
12978         ./{arch}/libtool during bootstrap.
12979
12980 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
12981             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12982
12983         * libltdl/config/ltmain.m4sh (func_mode_link): Filter
12984         user supplied symfile to tag relevant symbols as data
12985         symbols. Fixes segfault in stresstest.at on Cygwin and
12986         makes the test pass.
12987
12988 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>
12989
12990         * tests/link-order.test: Clean up the uninstalled libraries
12991         before linking the test executables so that they don't pick
12992         up the dlls from the current dir on Cygwin and MinGW.
12993
12994 2005-09-22  Tim Rice  <tim@multitalents.net>
12995
12996         * libltdl/m4/libtool.m4 (LT_PATH_NM, _LT_LINKER_SHLIBS)
12997         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS):
12998         Add missing `;;' after case list.
12999
13000 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
13001             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13002
13003         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC)
13004         (_LT_LINKER_SHLIBS): Require _LT_TAG_COMPILER to make sure that
13005         $compiler is assigned. Fixes crippled configure output.
13006
13007 2005-09-21  Peter Ekberg  <peda@lysator.liu.se>
13008
13009         * libltdl/m4/libtool.m4 (LT_PATH_NM): Fix autodetection of
13010         dumpbin and also check for "link -dump -symbols" as a synonym
13011         for "dumpbin -symbols".
13012
13013         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Clean
13014         up $dlname as well when cleaning a uninstalled libtool
13015         library. Fixes -mode=clean on Cygwin and MinGW to actually
13016         remove the dll when cleaning up an uninstalled library.
13017
13018 2005-09-20  Peter Ekberg  <peda@lysator.liu.se>
13019
13020         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
13021         Split up --out-implib option for linker in separate args so that
13022         the MSYS path translation can do its magic on the provided path
13023         to the import library. Fixes problem in stresstest.at on MinGW.
13024
13025 2005-09-19  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13026
13027         * Makefile.am (ltdldatafiles): Fix installation order to match
13028         dependency order.
13029         (libltdl/Makefile.in): Use $(srcdir) for non-GNU make.
13030
13031 2005-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13032
13033         * libltdl/config/ltmain.m4sh (func_mode_link): Allow some
13034         ARM gcc ABI flags through.
13035         Reported by Andrés Moré <more.andres@gmail.com>.
13036
13037         * Makefile.am (all-local): Rebuild libltdl/Makefile.in.
13038
13039         * libltdl/m4/ltdl.m4 (LTDL_INIT) <CONFIG_H>: Rename to..
13040         <LT_CONFIG_H>: this, to contain the name of the config
13041         header.
13042         * Makefile.am <DEFS>: Use it to define LT_CONFIG_H.
13043         * HACKING, libltdl/argz.c, libltdl/lt__alloc.c,
13044         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
13045         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h:
13046         Adjusted.
13047
13048 2005-09-16  Peter Ekberg  <peda@lysator.liu.se>
13049
13050         * tests/testsuite.at (LT_AT_EXEC_CHECK): Make sure
13051         that the exit status of the tested program is
13052         propagated as the exit status of the expression
13053         fed to AT_CHECK.
13054
13055 2005-09-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13056
13057         * libltdl/argz.c <HAVE_CONFIG_H>: Avoid redefinition warning.
13058
13059         * libltdl/ltdl.c (lt_argz_insert): Work around newlib
13060         argz_insert bug.
13061         * Makefile.am (VERSION_INFO): Bumped revision.
13062         Reported by Eric Blake <ebb9@byu.net>.
13063
13064 2005-09-13  Peter Ekberg  <peda@lysator.liu.se>,
13065             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13066
13067         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
13068         Fix escape expression to actually escape relevant
13069         characters from the following grep. Fix Cygwin and
13070         MinGW to use the filtered symbol list when exporting
13071         from self, and not the symbol filter.
13072         * tests/stresstest.at: Export w8, not w8$
13073
13074 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13075
13076         Make tagdemo work smoothly with both pre- and ISO C++ compilers,
13077         and remove all use of libstdc from other tests.
13078
13079         * tests/tagdemo/configure.ac (HAVE_NAMESPACES, HAVE_IOSTREAM):
13080         New tests for ISO C++ features.  Reimplementation of similar
13081         macros from the autoconf archive.
13082         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp: Adjusted.
13083         * tests/am-subdir.at, tests/template.at: Do not use iostream.
13084
13085 2005-09-12  Peter Ekberg  <peda@axentia.se>,
13086             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13087
13088         * tests/testsuite.at (host_os): Pull from `libtool --config'.
13089         * tests/stresstest.at [ cygwin, mingw, pw32 ]: Use it to fix
13090         setting of `-no-undefined'.
13091
13092 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13093
13094         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL, LTDL_CONVENIENCE)
13095         (LTDL_INSTALLABLE): Use less quoting for expanded LIBLTDL,
13096         LTDLINCL.  Use m4_default instead of m4_if, to work
13097         around AU_ALIAS bug with empty macro arguments.
13098         (LTDL_INIT): Likewise.
13099         * libltdl/m4/ltoptions.m4 (_LT_WITH_PIC): Likewise.
13100         * TODO, HACKING: Updated.
13101
13102 2005-09-10  Gary V. Vaughan  <gary@gnu.org>
13103
13104         * libtoolize.m4sh (TAR): Allow the user to override the tar
13105         command.
13106
13107 2005-09-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13108
13109         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
13110         (_LT_LINKER_BOILERPLATE, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
13111         (_LT_COMPILER_C_O): When comparing expected and actual compiler/
13112         linker output for warnings, weed out both empty lines as well as
13113         lines starting with possibly indented `+', to allow for shell
13114         debugging with `set -x'.
13115         Check the weeded instead of unweeded contents for emptiness.
13116
13117         * libltdl/config/ltmain.m4sh (func_mode_link): Actually provide
13118         a useful error message.  Fixes long-standing shameful user
13119         neglection.
13120         Reported by Martin Paljak <martin.paljak@gmail.com>.
13121
13122 2005-09-08  Peter Ekberg  <peda@axentia.se>
13123
13124         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]:
13125         Symbols in "pick any" sections are not global. Use
13126         awk, not sed, in the global_symbol_pipe so that keeping
13127         track of sections is easier.
13128         * doc/libtool.texi (libtool script contents): Update to hint
13129         at new findings concerning "pick any" sections.
13130
13131 2005-09-08  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13132
13133         * tests/early-libtool.at (config.status): Use EXEEXT
13134         consistently.
13135         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
13136
13137 2005-09-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
13138
13139         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
13140         [ cygwin, mingw, pw32 ]: Use --enable-auto-image-base instead of
13141         a fixed image base address.
13142
13143 2005-09-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13144
13145         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ sysv4*uw2*,
13146         sysv4.2uw2* ]: Fix my last checkin to really match the more special
13147         case before the general case.
13148         Reported by Stepan Kasal <kasal@ucw.cz>.
13149
13150 2005-09-06  Roger Cornelius  <rac@tenzing.org>
13151
13152         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
13153         [ sysv5OpenUNIX8, sysv5UnixWare7, sysv5uw[78], unixware7,
13154         sysv4*uw2* ]: Match special cases before general case.
13155
13156 2005-09-05  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13157
13158         * bootstrap: another AIX sed fix.
13159
13160         * Makefile.am (TESTS_ENVIRONMENT): Export SHELL.
13161         * bootstrap (SHELL): Set to $CONFIG_SHELL or /bin/sh.
13162         Name `make' targets in portable fashion.  Work around `rm'
13163         warnings.  Unconditionally create fake `libtoolize'.
13164         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13165
13166         * Makefile.am (doc/notes.txt): Use --no-headers instead of
13167         --plaintext for makeinfo.
13168         Reported by Peter O'Gorman <peter@pogma.com>.
13169
13170 2005-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13171
13172         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ aix ]
13173         <export_symbols_cmds>: Work around shell expansion issue in
13174         func_show_eval by separating `$' and field number; drop then
13175         unnecessary m4 quoting.
13176
13177 2005-09-02  Gary V. Vaughan  <gary@gnu.org>
13178
13179         AC_BEFORE only works if declarations are made inside the macro
13180         cited as the first argument:
13181
13182         * libltdl/m4/libtool.m4 (LT_OUTPUT): Move AC_BEFORE decls...
13183         (LT_INIT, LT_LANG): ...to the macro that has to come first.
13184
13185 2005-09-01  Peter O'Gorman  <peter@pogma.com>
13186
13187         * libltdl/m4/libtool.m4 (old_postintall_cmds): chmod 644 before
13188         running ranlib.
13189         Reported by Gerald Pfeifer <gerald@pfeifer.com>
13190
13191 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13192
13193         * libltdl/m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77)
13194         (_LT_PROG_FC): aclocal-1.4 compatibility workaround.
13195
13196         * bootstrap: Do not use nonportable -path.
13197         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
13198
13199 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
13200
13201         * doc/libtool.texi (LT_INIT): Fix a logical error with
13202         documentation of --with-pic vs --without-pic.
13203
13204 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13205
13206         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): m4_defun this..
13207         * libltdl/m4/libtool.m4 (LT_INIT): so it can be m4_require'd
13208         from here with user-supplied options.  Fixes output macro
13209         ordering issue.
13210
13211 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
13212
13213         * libtoolize.m4sh (func_scan_files): When searching for evidence
13214         of Autotools in aclocal.m4, be careful not to trip over requires
13215         and defuns.
13216
13217 2005-08-31  Gary V. Vaughan <gary@gnu.org>,
13218             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13219
13220         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Move option macro
13221         dipatch..
13222         (_LT_SET_OPTION): here.  Do not fail but warn on unknown
13223         options.
13224         (_LT_UNLESS_OPTIONS(win32-dll), LT_OPTION_DEFINE(dlopen)):
13225         Add whitespace.
13226         Reported by Robert Ögren <lists@roboros.com> and
13227         Akim Demaille <akim@lrde.epita.fr>.
13228
13229 2005-08-31  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13230
13231         * libltdl/m4/libtool.m4 [ solaris CC ]: Document issue with C++
13232         standard libraries.
13233
13234 2005-08-30  Gary V. Vaughan  <gary@gnu.org>
13235
13236         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_PIC_MODE): Renamed...
13237         (AC_LIBTOOL_PICMODE): ...this in the backwards compatibility
13238         code.  There never was an AC_LIBTOOL_PIC_MODE macro.
13239
13240         * libltdl/m4/libtool.m4 (_LT_SETUP): Remove duplicate
13241         --enable-libtool-lock declaration.
13242
13243 2005-08-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13244
13245         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
13246         (_LT_PATH_TOOL_PREFIX, _LT_SYS_HIDDEN_LIBDEPS, _LT_DECL_EGREP):
13247         Fix typos.
13248
13249         * Makefile.am: Install libltdl data files in correct order.
13250         Use pre-defined programs for installation; use NORMAL_INSTALL
13251         and NORMAL_UNINSTALL.  Really fix ownership and timestamp
13252         problems.  Fix typo in uninstallation of aclocal files.
13253         Reported by Peter Breitenlohner <peb@mppmu.mpg.de> and
13254         Charles Wilson <cygwin@cwilson.fastmail.fm>.
13255
13256 2005-08-29  Gary V. Vaughan <gary@gnu.org>,
13257             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13258
13259         Allow for portability with Autoconf 2.59, Automake 1.9.6,
13260         which lack AC_CONFIG_LIBOBJ_DIR support.
13261
13262         * bootstrap: Unless environment variable WORKING_LIBOBJS_SUPPORT
13263         is set to true aka `:', symlink ..
13264         * argz.c lt__dirent.c lt__strl.c: .. these from the copies in
13265         libltdl.
13266         * configure.ac (SUBDIR_LIBOBJS): Automake conditional, set if
13267         bootstrap didn't make the extra copies of libobj sources in
13268         top srcdir...
13269         * Makefile.am: Add these to EXTRA_DIST if SUBDIR_OBJS is not set,
13270         as well as the originals in libltdl/, in order to work when
13271         bootstrapped both with old and newer Automake/Autoconf.
13272
13273 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
13274
13275         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE): Fix the comment to not
13276         pretend that LIBLTDL and LTDLINCL are not AC_SUBSTed here.
13277
13278 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
13279
13280         Some macros had relied on accidentally correct ordering in order
13281         for $MV to be defined before use.  Factor out setting of some
13282         common file commands and m4_require it before use:
13283
13284         * libltdl/m4/libtool.m4 (_LT_FILEUTILS_DEFAULTS): Allow user to
13285         override some common file commands at configure time.
13286         (_LT_SETUP, _LT_CONFIG, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
13287         (_LT_COMPILER_C_O, _LT_COMPILER_FILE_LOCKS)
13288         (_LT_SYS_DYNAMIC_LINKER, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
13289         (_LT_SYS_HIDDEN_DEPLIBS): m4_require it to ensure the commands are
13290         defined before they are called.
13291
13292 2005-08-28  Gary V. Vaughan  <gary@gnu.org>
13293
13294         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4: AU_DEFUN doesn't pass
13295         arguments.  Use AU_ALIAS instead!
13296
13297 2005-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
13298             Gary V. Vaughan <gary@gnu.org>
13299
13300         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p) [osf]:
13301         Save file descriptor to original STDIN, and restore after
13302         redirection.  Fixes memory corruption with Tru64 and OSF sh.
13303         Reported by Nicolas Joly <njoly@pasteur.fr>.
13304
13305 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
13306             Peter Ekberg  <peda@lysator.liu.se>
13307
13308         * tests/early-libtool.at: Fix goofed up make rules in
13309         previous commit.
13310
13311         * tests/inherited_flags.at: Weaken for MSVC.
13312         * tests/early-libtool.at, tests/template.at: Fix for compiler
13313         that do not understand '-c -o'.
13314
13315 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13316
13317         * tests/standalone.at, tests/template.at: Do not compare
13318         output because of EOL issues.  Resolve warnings, make cross-
13319         compilation aware.
13320         Reported by Peter Ekberg <peda@axentia.se>.
13321
13322         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
13323         (_LT_LINKER_SHLIBS): Double-quote unsafe tag variable
13324         descriptions: they are literals.
13325
13326 2005-08-25  Peter Ekberg  <peda@lysator.liu.se>,
13327             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13328
13329         * tests/standalone.at: (without autotools): Add
13330         $(CFLAGS) to LTCOMPILE and LTLINK. Separate compiling
13331         and linking. Remove compiling flags from link. Add
13332         --tag. Add -no-undefined flag.
13333
13334 2005-08-24  Bruno Haible  <bruno@clisp.org>
13335
13336         * libltdl/config/ltmain.sh (func_mode_install): Try "ln -s -f"
13337         and "rm -f && ln -s" to make a symlink for a shared library: the
13338         former is needed for libraries `ln' depends on, the latter for
13339         Solaris /bin/ln.
13340         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
13341
13342         * libltdl/config/ltmain.sh (cwrappersource): return 127 if exec
13343         failed.
13344
13345 2005-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13346
13347         * libltdl/m4/libtool.m4 (_LT_COMPILER_C_O): Send chmod warning to log.
13348
13349         * tests/defs.m4sh (m4dir, auxdir, scripts): Fix for source tree
13350         reorganization.
13351         * tests/sh.test: Adjust.  Also barf on sed diagnostics so this
13352         test will not fail again silently.
13353
13354         * libltdl/m4/ltdl.m4 (LT_SYS_SYMBOL_USCORE): Use _LT_EOF, not
13355         EOF.
13356
13357         * tests/fcdemo/Makefile.am (suffix rules): Explicitly add
13358         $(FCFLAGS_f90) so the tests can pass on AIX.
13359
13360 2005-08-24  Peter O'Gorman  <peter@pogma.com>
13361
13362         * libltdl/config/ltmain.m4sh (inherited_linker_flags): Work when
13363         output is an application too.
13364         Reported by Christopher Egger <Christoph_Egger@gmx.de>
13365
13366 2005-08-23  Stepan Kasal  <kasal@ucw.cz>,
13367             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13368
13369         * libltdl/m4/ltdl.m4 (LTDL_INIT): Use AH_HEADER if defined.
13370         Compute CONFIG_H only before creating config.status.
13371         Reported by Peter Ekberg <peda@axentia.se>.
13372
13373 2005-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13374
13375         * Makefile.maint (web-manual): Fix $(LN_S) to use absolute path.
13376         Fix creating the manual for VPATH build.
13377
13378         * bootstrap: Fix missing replace config -> $auxdir.  ltmain.m4sh
13379         is prerequisite to ltmain.sh.  Improve warning message.
13380
13381 2005-08-22  Gary V. Vaughan  <gary@gnu.org>
13382
13383         Reorganise the libtool tree to create a bootstrapped libltdl for
13384         installation to the libtoolize master tree, so that libltdl is
13385         useable even in the extreme case of when automake and autoconf are
13386         not installed on the developers machine.  Part of this change
13387         requires some duplication of rules between Makefile.am (which
13388         builds libltdl for this distribution) and libltdl/Makefile.am
13389         (which is used by projects that libltoolize --ltdl --copy), so
13390         libtool now really does use a single toplevel Makefile.am, and we
13391         generate libltdl/Makefile.am from that:
13392
13393         * m4, config: Moved from here...
13394         * libltdl/m4, libltdl/config: ...to here, to reduce the amount of
13395         kludging needed in bootstrap for autoreconf to run.
13396         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
13397         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
13398         tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
13399         tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
13400         tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Adjust to
13401         compensate.
13402         * tests/cdemo/configure.ac, tests/demo/configure.ac,
13403         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
13404         tests/fcdemo/configure.ac, tests/mdemo/configure.ac,
13405         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
13406         tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto.
13407         * libltdl/m4/ltdl.m4: Increment serial number.
13408         (LTDL_INIT): Accept an optional directory argument to prefix each
13409         of the LD_DLLOADERS locations.  Default to empty for backwards
13410         compatibility.
13411         * Makefile.maint: Adjust to compensate.
13412         * configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR): Adjust.
13413         (AC_CONFIG_LIBOBJ_DIR): Set here so that we can build LTLIBOBJS
13414         from in a subdirectory from the amalgamated Makefile.am.
13415         (AM_PROG_CC_C_O, AM_INIT_AUTOMAKE): Use subdir-objects.
13416         (AC_CONFIG_FILES): Remove libltdl/Makefile.am.
13417         * libltdl/Makefile.am: Removed from repository, and merged into
13418         Makefile.am as we now generate it...
13419         * Makefile.am (libltdl/Makefile.am): ...from here, by extracting
13420         the merged rules, and tweaking paths to accomodate the difference
13421         in directory from Makefile.am to libltdl/Makefile.am.
13422         (nobase_dist_pkgdata_DATA): Automake generated installation rules
13423         change timestamps of installed files, so renamed this...
13424         (configauxfiles): ...to this...
13425         (libtoolize): ...substitute it...
13426         (install-data-local): ...install manually, preserving
13427         timestamps...
13428         (install-data-hook): ...and set execute bit as appropriate.
13429         (uninstall-hook): Not forgetting to remove them at uninstall.
13430         (libltdl/Makefile.in): New rule.  Called from...
13431         * bootstrap: ...here to avoid relying on config.status at
13432         bootstrap time.
13433         (auxdir, m4dir): Extract from configure.ac for ease of future
13434         maintenance.  Adjust all references.
13435         (reconfdirs): Call autoreconf for libltdl too -- even
13436         though we don't use it for the build, libltdl/configure and
13437         friends are installed with `libtoolize --ltdl --copy'.
13438         * libtoolize.m4sh: Add files from the installed config master tree
13439         to libtoolize --ltdl project subdirectory.
13440         Diagnose duplicated files when --ltdl is used in an autotooled
13441         project.
13442         It's perfectly fine to run `libtoolize --ltdl --copy' in a tree
13443         that has no configure.ac or configure.in; we want libltdl to be
13444         useful even to projects that don't use autotools themselves.
13445         (libtoolize_flags): Removed.  Changed all callers.
13446         (func_massage_pkgconfig_files): New function.
13447         * tests/standalone.at: New tests for using libltdl without
13448         supporting configury in the parent project.
13449         * tests/testsuite.at: Run them!
13450         * NEWS: Updated.
13451
13452 2005-08-22  Peter Ekberg  <peda@lysator.liu.se>
13453
13454         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Add
13455         forgotten end bracket.
13456
13457         * doc/libtool.texi: Shorten the lines describing the
13458         output from MS dumpbin, and align the columns.
13459
13460         * m4/libtool.m4: Bump serial number.
13461         (LT_PATH_NM): If nm is not found on the path, look for
13462         dumpbin. Then check if $NM responds as dumpbin would
13463         and if not, assume the name lister is BSD nm compatible.
13464         (_LT_CMD_GLOBAL_SYMBOLS): If the name lister uses the
13465         dumpbin interface, adjust the test to find a working
13466         global_symbol_pipe.
13467         * doc/libtool.texi: Document $NM to possibly be MS
13468         dumpbin compatible, and also document the format of the
13469         relevant output from MS dumpbin.
13470
13471 2005-08-21  Gary V. Vaughan  <gary@gnu.org>
13472
13473         * libltdl/Makefile.am: revert mistaken commit.
13474
13475         * tests/template.at [darwin]: Some of these tests result in
13476         unresolved symbols on darwin, so don't run those test on that
13477         host!
13478
13479 2005-08-18  Gary V. Vaughan  <gary@gnu.org>,
13480             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13481
13482         * m4/libtool.m4 (LT_OUTPUT): New macro to generate
13483         libtool before config.status.
13484         (_LT_CONFIG_COMMANDS): If LT_OUTPUT has been invoked, then
13485         generate code in config.status to call config.lt instead of
13486         generating libtool directly.
13487         * doc/libtool.texi (LT_INIT): Document LT_OUTPUT.
13488         * tests/early-libtool.at: New test.
13489         * Makefile.am (TESTSUITE_AT): Updated.
13490         * tests/testsuite.at: Updated.  Define defaults for $ACLOCAL,
13491         $AUTOCONF.
13492
13493 2005-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13494
13495         * TODO: Actually updated now.
13496
13497         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]: Do not
13498         assume `aout' for modern FreeBSD by absence of deprecated
13499         `objformat'.
13500
13501         * m4/libtool.m4 [sun, CC] (_LT_LANG_CXX_CONFIG): Move postdeps
13502         override ..
13503         (_LT_SYS_HIDDEN_LIBDEPS): ..here.
13504         * TODO: Updated.
13505
13506 2005-08-18  Stepan Kasal  <kasal@ucw.cz>
13507
13508         * config/general.m4sh (SP2NL, NL2SP): Simplify.
13509
13510 2005-08-17  Gary V. Vaughan  <gary@gnu.org>
13511
13512         * m4/ltdl.m4 (LTDL_INIT): Fix mismatched parens.
13513
13514 2005-08-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13515
13516         * tests/inherited_flags.at: Store intermediate libtool output
13517         for better debugging.
13518
13519         * tests/link-order.at: Add -no-undefined to LDFLAGS.
13520
13521         * tests/convenience.at, tests/template.at: Change suffix of C++
13522         files to .cpp, for compatibility with MSVC.
13523         Reported by Peter Ekberg <peda@axentia.se>.
13524
13525 2005-08-12  Jeremie LE HEN  <tataz@sitadelle.com>,
13526             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13527
13528         * doc/libtool.texi (Creating object files, Linking libraries):
13529         Update description of library object (.lo) and libtoo library
13530         (.la) files.
13531         (all over): Replace MODE with --mode=MODE in examples.
13532
13533 2005-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13534
13535         * config/ltmain.m4sh (func_source): New function.
13536         (func_mode_execute, func_mode_install, func_mode_link): Use it.
13537         Do not append a dot to a file name to source, it breaks on
13538         cygwin managed mounts and is not necessary anywhere.
13539         Reported by Eric Blake <ebb9@byu.net>.
13540
13541         * config/ltmain.m4sh (func_execute_cmds): New function.
13542         (func_mode_finish, func_mode_install, func_mode_link)
13543         (func_mode_uninstall): Use it.
13544
13545         * tests/defs.m4sh (func_configure): Rename to ..
13546         (func_configure_nofail): this, call from old.
13547         * tests/fcdemo-conf.test, tests/fcdemo-shared.test,
13548         tests/fcdemo-static.test: Use.  Do not fail gratuitously but
13549         SKIP on compilers that look like they could be Fortran 77-only.
13550         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13551
13552         * config/ltmain.m4sh (mode): Do not initialize, for nicer error
13553         messages.
13554
13555 2005-08-10  Peter Ekberg  <peda@lysator.liu.se>
13556
13557         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Set ac_ext to cpp, not cc.
13558
13559 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13560
13561         * config/ltmain.m4sh (inherited_linker_flags): Backed out broken
13562         patch.
13563
13564 2005-08-08  Peter O'Gorman  <peter@pogma.com>
13565
13566         * config/ltmain.m4sh (inherited_linker_flags): Work when output
13567         is an application too.
13568         Reported by Christopher Egger <Christoph_Egger@gmx.de>
13569
13570 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13571
13572         * m4/libtool.m4 (_LT_PROG_FC, _LT_LANG_FC_CONFIG): New macros
13573         for modern Fortran.
13574         (LT_LANG, _LT_LANG_DEFAULT_CONFIG, _LT_SYS_DYNAMIC_LINKER,
13575         _LT_SYS_HIDDEN_LIBDEPS): Adjusted.
13576         * tests/fcdemo-conf.test, tests/fcdemo-exec.test,
13577         tests/fcdemo-make.test, tests/fcdemo-shared.test,
13578         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
13579         tests/fcdemo/README, tests/fcdemo/configure.ac,
13580         tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
13581         tests/fcdemo/foof.f90, tests/fcdemo/foof2.f90,
13582         tests/fcdemo/foof3.f90, tests/fcdemo/fprogram.f90: New tests for
13583         Fortran.
13584         * tests/convenience.at: Extended.
13585         * Makefile.am, configure.ac: Adjusted.
13586         * NEWS: Updated.
13587
13588         * AUTHORS, HACKING: Updated.
13589
13590 2005-08-05  Albert Chin-A-Young  <china@thewrittenword.com>
13591
13592         * config/ltmain.m4sh (func_mode_link): Ignore errors from expr
13593         when determining if piece-wise linking should be done.
13594
13595 2005-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13596
13597         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Add
13598         missing bit from Christoph's patch.
13599
13600         * m4/libtool.m4 (_LT_LINKER_HARDCODE_LIBPATH, _LT_LINKER_SHLIBS)
13601         (_LT_LANG_CXX_CONFIG): Comment typos.
13602
13603 2005-08-04  Christoph Egger  <Christoph_Egger@gmx.de>
13604
13605         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Change
13606         basename() to base_name() and have it return a pointer to const,
13607         fix compilation warnings.
13608
13609 2005-07-30  Peter Ekberg  <peda@lysator.liu.se>
13610
13611         * m4/libtool.m4 (_LT_PROG_F77): Set it up so that saying F77=no
13612         to configure disables the fortran tests in the testsuite.
13613
13614 2005-07-29  Richard Moseley  <dickie.moseley@virgin.net>
13615
13616         * m4/ltdl.m4 (LTDL_INIT): Handle in addition the new name for
13617         AC_LIST_HEADERS which is _AC_LIST_TAGS.
13618
13619 2005-07-28  Peter Ekberg  <peda@lysator.liu.se>
13620
13621         * libltdl/Makefile.am: Make the LTDLOPEN define controllable
13622         from the configure script.
13623         * m4/ltdl.m4 (LTDL_INIT): Set the LTDLOPEN define according
13624         to libname_spec.
13625
13626         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
13627         not time, for really fresh files. Add sleep 1 calls at
13628         strategic places. Makes the test pass for MinGW.
13629
13630         * m4/libtool.m4 (_LT_LINKER_OPTION): Fix copy-paste bug, it is
13631         the linker that is tested.
13632
13633         * tests/demo-noinst-link.test: $make is empty on MSYS, replace
13634         with $MAKE. Makes the test pass for MinGW.
13635
13636         * config/ltmain.m4sh (func_generate_dlsyms): Properly remove
13637         the fake symbol line ": @PROGRAM@ " from the list of exported
13638         symbols.
13639
13640         * libltdl/loaders/loadlibrary.c (vm_open): Set the error mode so
13641         that no dialog is popped up in case the file given to
13642         LoadLibrary is not a dll.
13643
13644         * config/ltmain.m4sh (func_mode_link) <lib>: Make sure
13645         skipped_export is set to colon if _some_ cmd of
13646         export_symbols_cmds is too long.
13647
13648         * libltdl/ltdl.c: The linker is confused by having one
13649         definition of lt_libltdlc_LTX_preloaded_symbols tagged with
13650         __declspec(dllexport) in ltdl.c and one definition with an
13651         initial value in libltdlcS.c. So, just say extern in ltdl.c.
13652         Fixes the mdemo-exec.test for MinGW.
13653
13654         * config/ltmain.m4sh (func_mode_link) <lib>: Zap duplicate
13655         message "creating reloadable object files..."
13656
13657 2005-07-23 Peter O'Gorman  <peter@pogma.com>
13658
13659         * m4/libtool.m4 (CXX, archive_cmds) [sun]: Add -lCstd, -lCrun
13660         and -lc for c++ builds with Sun C++ and Centerline C++..
13661         Reported by Albert Chin-A-Young <china@hewrittenword.com>
13662
13663 2005-07-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13664
13665         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Fix bogus merge.
13666         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13667
13668 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13669
13670         * libltdl/Makefile.am (libltdl_la_DEPENDENCIES): Depend on
13671         $(BUILT_SOURCES) as well, so that argz.h gets created through
13672         `make libltdlc.la'.
13673         Reported by Sven Verdoolaege <skimo@liacs.nl>.
13674
13675 2005-07-08  Peter Breitenlohner  <peb@mppmu.mpg.de>
13676
13677         * Makefile.am (install-data-local): Have root own of installed
13678         files (but do not fail, for user installs).
13679
13680 2005-07-08  Bruno Haible  <bruno@clisp.org>
13681
13682         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <postinstall_cmds>
13683         [cygwin,mingw,pw32]: Make DLL executable after installing it.
13684
13685 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13686
13687         * config/ltmain.m4sh (func_mode_install): Do not assume `-f'
13688         needs an argument if the install program is `cp'.  Cleanup
13689         install mode somewhat.
13690         Reported by Juergen Leising <juergen.leising@gmx.de>.
13691
13692 2005-07-03  Thorsten Glaser  <tg@66h.42h.de>
13693
13694         * m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Quieten configure
13695         output for corner cases on some BSDs.
13696         (LT_CMD_MAX_LEN): Another comment cleanup.
13697
13698         * config/ltmain.m4sh (func_extract_archives, func_mode_install),
13699         m4/libtool.m4 (_LT_SETUP, _LT_SYS_DYNAMIC_LINKER, LT_PATH_LD)
13700         (_LT_PATH_LD_GNU, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
13701         Comment language, indentation, and backquote cleanup.
13702         * THANKS: Updated.
13703
13704 2005-07-02  Peter O'Gorman  <peter@pogma.com>
13705
13706         * tests/inherited_flags.at: Use -no-undefined.
13707         Reported by Chris Oxenreider <oxenreid@state.net>
13708
13709 2005-07-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13710
13711         * config/ltmain.m4sh (func_mode_compile, func_mode_link),
13712         m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH, _LT_ENABLE_LOCK):
13713         Remove some unnecessary quotes.
13714
13715         * tests/convenience.at <GCJ>: Fix java test.
13716         Reported by Eric Blake <ericblake@comcast.net>.
13717
13718 2005-07-01  Derek R. Price  <derek@ximbiot.com>
13719
13720         * config/ltmain.m4sh (func_mode_link) <shell wrapper>: Handle
13721         spaces in paths to executed programs.  Quote path in error message.
13722
13723 2005-06-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13724
13725         * THANKS: Updated.
13726
13727 2005-06-28  Stepan Kasal  <kasal@ucw.cz>
13728
13729         * clcommit.m4sh: "grep|sed" can be replaced by mere "sed".
13730         * m4/libtool.m4 (_LT_LIBTOOL_TAGS): Remove unnnecessary "[]".
13731         * m4/lt~obsolete.m4: Use m4_ifndef.
13732
13733 2005-06-27  Stepan Kasal  <kasal@ucw.cz>
13734
13735         * m4/ltsugar.m4 (lt_combine, _lt_combine): Fix default separator.
13736
13737         * m4/ltoptions.m4 (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Replace
13738         AC_FOREACH by a combination of m4_foreach/m4_split/m4_normalize.
13739
13740 2005-06-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13741
13742         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Remove unnecessary workaround
13743         for CVS Automake bug (fixed).
13744         Reported by Stepan Kasal <kasal@ucw.cz>.
13745
13746 2005-06-21  Peter O'Gorman  <peter@pogma.com>
13747
13748         * conig/ltmain.m4sh [darwin]: Accept -arch flag.
13749
13750 2005-06-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13751
13752         * m4/libtool.m4 (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
13753         New macros: save warnings and boilerplate of simple compile/link
13754         tests.
13755         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
13756         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Call.
13757         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION, _LT_COMPILER_C_O, ):
13758         Fail only if nonempty warnings different from default
13759         compile/link.
13760
13761 2005-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13762
13763         * m4/ltsugar.m4 (lt_car, lt_cdr): New macros, clones of
13764         m4_car/m4_cdr with the fixed semantics of Autoconf-2.59c CVS, in
13765         order to work with 2.59.
13766         (lt_combine): Use it.
13767         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
13768
13769 2005-06-11  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>,
13770             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13771
13772         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Loop options only if
13773         nonempty.
13774         * m4/ltsugar.m4 (lt_combine): Don't test against empty quotes,
13775         test against empty arg.  Fixes infinite m4 loop with CVS
13776         Autoconf.
13777
13778 2005-06-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13779
13780         * m4/libtool.m4 (_LT_COMPILER_OPTION, _LT_LINKER_OPTION): No
13781         need for $ECHO here.  Fix sed script syntax to be portable.
13782         This should now put the pic-flag right after the last $*FLAGS
13783         variable again, if any.  Necessary for Fortran AC_FC_SRCEXT.
13784
13785 2005-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13786
13787         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Remove long lines.
13788
13789 2005-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13790
13791         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
13792         _LT_LANG_CXX_CONFIG): PGI also has pgf95.  PGI static flag is
13793         `-Bstatic'.  Remove harmless extra comma from whole_archive
13794         output.
13795
13796 2005-06-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13797
13798         * config/ltmain.m4sh (func_mode_compile): In order to find out
13799         about forbidden characters in output, check with grep after
13800         checking func_quote_for_eval result.  Also, warn instead of fail.
13801         * config/general.m4sh (func_quote_for_eval)
13802         (func_quote_for_expand): Revert SunOS sh bug workaround patch from
13803         2004-12-28 as it triggers bugs in the Tru64 5.1B shell.
13804         Reported by Albert Chin <libtool@mlists.thewrittenword.com> and
13805         Nicolas Joly <njoly@pasteur.fr>.
13806
13807 2005-06-01  Olly Betts <olly@survex.com>  (tiny change)
13808
13809         * libltdl/argz.c (argz_create_sep): Fix typo.
13810
13811 2005-05-31  Peter O'Gorman  <peter@pogma.com>
13812
13813         * config/ltmain.m4sh: Do not add installed static litool libraries
13814         to convenience, they are not convenience libraries.
13815         Reported by Chen-Mou Cheng <chenmou.cheng@gmail.com>
13816
13817 2005-05-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13818
13819         * THANKS: Updated.
13820
13821 2005-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13822
13823         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [aix]:
13824         Fix wrong $ECHO use overlooked in 2005-04-27.  Simplify slightly.
13825
13826         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
13827         _LT_LANG_CXX_CONFIG) [linux]: PGI:
13828         Add $pic_flag to archive_cmds and archive_expsyms_cmds.
13829         Bug reported against LAM by Troy Telford <ttelford@lnxi.com>.
13830
13831 2005-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13832
13833         * THANKS: Updated.
13834
13835 2005-05-06  Gary V. Vaughan  <gary@gnu.org>
13836
13837         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Propogate ltdl directory.
13838
13839 2005-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13840
13841         * Makefile.am (stamp-vcl): Use `diff' instead of `cmp'.
13842
13843 2005-04-30  Gary V. Vaughan  <gary@gnu.org>
13844
13845         Revert the parallel installation changes from November last year:
13846
13847         * libtoolize.m4sh (pkgdatadir, aclocaldir): Substituted from
13848         configure.
13849         (func_copy_all_from_path): Removed.  No longer used.
13850         (func_copy_some_files): Simplify now that nothing is copied from a
13851         list of possible directories now.
13852         (func_scan_files): Remove directory readability check...
13853         (func_nonemptydir_p): ...in favour of a dedicated sanity check
13854         function called from the main body.
13855         (_lt_pkgvdatadir): Set pkgdatadir and aclocaldir appropriately if
13856         this is in the environment.
13857         * configure.ac: Tests for `ln' removed.
13858         (APIVERSION): Removed.
13859         * Makefile.am (pkgvdatadir, nobase_dist_pkgvdata_DATA)
13860         (nobase_pkgvdata_DATA): Renamed to...
13861         (pkgdatadir, nobase_dist_pkgdata_DATA, aclocalfiles): ...these
13862         respectively.
13863         (edit): Adjust for new variable names.
13864         (install-data-local): Don't bother to remove old macro files that
13865         will be overwritten by the installation, and perform a manual
13866         installation of $(aclocalfiles) to preserve timestamps.
13867         (install-exec-hook): Removed.  No need to make versioned links.
13868         (uninstall-hook): No need to remove versioned links, but now we
13869         need to manually remove the manually installed $(aclocalfiles).
13870         * doc/libtool.texi: Remove bogus notes about setting
13871         ACLOCAL_AMFLAGS for versioned libtool installations.
13872         * NEWS: Remove parallel installation item.
13873
13874 2005-04-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13875
13876         * m4/ltdl.m4 (all over): Quote all arguments to AC_DEFINE and
13877         AC_DEFINE_UNQUOTED consistently.  Reported by
13878         Michael Koch  <konqueror@gmx.de>, Riccardo Mottola <zuse@libero.it>,
13879         and Dalibor Topic <robilad@kaffe.org>.
13880
13881         * HACKING: Updated.
13882
13883 2005-04-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13884
13885         * tests/convenience.at: Actually add.
13886
13887         * tests/convenience.at: New.  Test convenience archives.
13888         * Makefile.am, tests/testsuite.at: Adjust.
13889         * tests/testsuite.at: Reorder tests.  Suspend AT_TESTED.
13890         (PREPARE_TESTS): Define EGREP, host, build, LIBTOOL.
13891         (LT_AT_BOOTSTRAP): Fail if autoreconf fails.
13892         (LT_AT_EXEC_CHECK): New macro for execution of $build binaries.
13893         (LT_AT_TAG): New macro to test tag availability or skip test.
13894         * tests/am-subdir.at, tests/duplicate_members.at,
13895         tests/inherited_flags.at, tests/link-order.at,
13896         tests/stresstest.at, tests/template.at: Adjust.  Use LT_AT_TAG,
13897         LT_AT_EXEC_CHECK, AT_KEYWORDS. Use compiler/linker flags
13898         consistently.
13899         * tests/link-order.at: Fix use of AT_DATA, bogus redirection
13900         inside AT_CHECK.
13901         * tests/stresstest.at: Do not use wildcards/regex in symbol files,
13902         they are not portable.  Use -no-undefined on win32.  Fix to ignore
13903         compile/link warnings.
13904
13905         * tests/f77demo/foo.h, tests/f77demo/fooc.c,
13906         tests/f77demo/cprogram.c, tests/mdemo2/main.c, tests/pdemo/foo.h:
13907         Make declarations available.
13908
13909         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: sed 3.02 does
13910         not understand \t in regex.
13911         Reported by Tim Van Holder <tim.vanholder@gmail.com>.
13912
13913         * tests/defs.m4sh (func_configure): Don't run the whole configure
13914         script with -x.
13915
13916         * config/ltmain.m4sh: Audit use of echo vs $ECHO.
13917         Reported by Robert Ögren <lists@roboros.com> and others.
13918
13919         * TODO: Updated.
13920
13921 2005-04-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
13922             Gary V. Vaughan  <gary@gnu.org>
13923
13924         * HACKING, THANKS: Updated.
13925
13926 2005-04-25  David Edelsohn  <dje@watson.ibm.com>
13927
13928         * m4/libtool.m4 (_LT_LINKER_SHLIBS): _LT_TAGDECL(file_list_spec).
13929         * config/ltmain.m4sh (func_mode_link): Change $filelist to
13930         $output.
13931
13932 2005-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13933
13934         * m4/libtool.m4 (_LT_CC_BASENAME): Ignore `compile'.
13935
13936 2005-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13937
13938         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [solaris]:
13939         Update wl for Sun Studio f77/f90/f95.  Fix whole_archive_flag_spec
13940         for cc and f77/f90/f95 to prevent reordering in case we link with
13941         $CC.
13942
13943         * m4/libtool.m4: Audit use of echo vs $ECHO.
13944         * TODO: Update.
13945         Reported by Robert Ögren <lists@roboros.com> and others.
13946
13947 2005-04-23  Gary Kumfert <kumfert@llnl.gov>
13948
13949         * m4/libtool.m4 (_LT_LANG_F77_CONFIG) [aix4, aix5]:
13950         Adjust logic to match the C case: Only disable static if not
13951         on ia64 nor runtimelinking.
13952
13953 2005-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
13954
13955         * Makefile.am, HACKING: Use lt__cd throughout.
13956
13957 2005-04-22  Gary V. Vaughan  <gary@gnu.org>
13958
13959         The FSF are moving offices today.  Changed their contact address
13960         in all files from `59 Temple Place, Suite 330, MA 02111-1307' to
13961         `51 Franklin Street, Fifth Floor, MA 02110-1301'.
13962
13963 2005-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13964
13965         * libtoolize.m4sh (func_scan_files, func_serial,
13966         func_ltmain_update, func_config_update, func_install_update):
13967         Placate AIX sed.
13968
13969 2005-04-19  David Edelsohn  <dje@watson.ibm.com>
13970
13971         * config/ltmain.m4sh (func_mode_link): If command exceeds
13972         max_cmd_len and file_list_spec exists, write list of input files
13973         to temporary file.
13974         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
13975         [aix4,aix5]: Define file_list_spec.
13976
13977 2005-04-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13978
13979         * tests/demo-hardcode.test: Fix typo.
13980
13981 2005-04-17 Alexandre Oliva  <aoliva@redhat.com>,
13982            Peter O'Gorman  <peter@pogma.com>
13983
13984         * config/ltmain.m4sh: Don't add files with the same base name to
13985         an archive; rename duplicates instead.
13986         (func_extract_an_archive): Remove section to deal with duplicate
13987         base names in an archive.
13988         * tests/functests.at: remove.
13989         * tests/duplicate_members.at: new test.
13990         * tests/testsuite.at: Add new test, remove old.
13991         * Makefile.am: Add new test, remove old.
13992
13993 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13994
13995         * tests/demo-hardcode.test [solaris]:  Use dumpstabs if available,
13996         to avoid false failure caused by debug section which contains
13997         command line (Solaris cc).
13998         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
13999
14000 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14001
14002         * libtoolize.m4sh (func_copy_cb): Fix syntax typo.
14003
14004 2005-04-15  Maciej W. Rozycki  <macro@linux-mips.org>
14005
14006         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Add old_archive_cmds
14007         definition.
14008
14009 2005-04-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14010
14011         * m4/libtool.m4 (_LT_CC_BASENAME): New macro to figure out
14012         $cc_basename.  Skip ccache, distcc, purify, cmdline options,
14013         `$host_alias-' prefix.
14014         (_LT_SETUP, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
14015         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Use.
14016         * NEWS, TODO: Update.
14017
14018 2005-04-15  Gary V. Vaughan  <gary@gnu.org>
14019
14020         * libltdl/configure.ac (AC_OUTPUT): loaders/Makefile is no longer
14021         used.
14022
14023         * Makefile.am (lt__cd, CD_TESTDIR): New make macros to work around
14024         problems with CDPATH in some shells.
14025         (check-local, installcheck-local, clean-local): Use them.
14026
14027 2005-04-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14028
14029         * bootstrap: Define srcdir for making `commit'.
14030
14031 2005-04-14  Alexandre Oliva  <aoliva@redhat.com>,
14032             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14033
14034         * config/ltmain.m4sh (link mode): Add to tmp_libs paths for
14035         libtool dep libs in reverse order as well.
14036         * Makefile.am, tests/testsuite.at, tests/link-order.at: New test.
14037
14038 2005-04-13  Gary V. Vaughan  <gary@gnu.org>
14039
14040         Since the bootstrap process requires that several of the rules for
14041         files generated in doc and tests already lived in
14042         $top_srcdir/Makefile.am, along with proxy rules in sub-Makefiles,
14043         this changeset consolidates almost everything into the top
14044         Makefile.am, simplifying things considerably:
14045
14046         * doc/Makefile.am, tests/Makefile.am: Removed.  All rules moved...
14047         * Makefile.am: ...to here and adjusted to run from $top_builddir.
14048         Some reformatting to group rules and declarations by purpose, and
14049         simplify with respect to removing much of the make recursion.
14050         Add `doc/PLATFORMS', `doc/fdl.texi' and `doc/notes.texi'.
14051         `defs.in' and `defs.m4sh' are in directory `tests'.
14052         (uninstall-hook): Don't forget to uninstall libtoolize's libltdl
14053         source tree.
14054         * bootstrap: Simplified dirty makefile management, and bootstrap
14055         file creation in light of having only a single pertinent
14056         Makefile.
14057         * configure.ac (CONF_SUBDIRS): Add tests/ prefix to each subdir to
14058         compensate.
14059         (DIST_MAKEFILE_LIST): Adjust.
14060         (AC_CONFIG_FILES): Remove doc/Makefile and tests/Makefile.
14061         * tests/defs.m4sh (LIBTOOL, scripts): Adjust paths.
14062         * tests/cdemo-conf.test, tests/cdemo-exec.test,
14063         tests/cdemo-make.test, tests/cdemo-shared.test,
14064         tests/cdemo-static.test, tests/cdemo-undef.test,
14065         tests/demo-conf.test, tests/demo-deplibs.test,
14066         tests/demo-exec.test, tests/demo-hardcode.test,
14067         tests/demo-inst.test, tests/demo-make.test,
14068         tests/demo-nofast.test, tests/demo-noinst-link.test,
14069         tests/demo-nopic.test, tests/demo-pic.test,
14070         tests/demo-relink.test, tests/demo-shared.test,
14071         tests/demo-static.test, tests/demo-unst.test,
14072         tests/depdemo-conf.test, tests/depdemo-exec.test,
14073         tests/depdemo-inst.test, tests/depdemo-make.test,
14074         tests/depdemo-nofast.test, tests/depdemo-relink.test,
14075         tests/depdemo-shared.test, tests/depdemo-static.test,
14076         tests/depdemo-unst.test, tests/f77demo-conf.test,
14077         tests/f77demo-exec.test, tests/f77demo-make.test,
14078         tests/f77demo-shared.test, tests/f77demo-static.test,
14079         tests/link-2.test, tests/link.test, tests/mdemo-conf.test,
14080         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
14081         tests/mdemo-inst.test, tests/mdemo-make.test,
14082         tests/mdemo-shared.test, tests/mdemo-static.test,
14083         tests/mdemo-unst.test, tests/mdemo2-conf.test,
14084         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
14085         tests/objectlist.test, tests/pdemo-conf.test,
14086         tests/pdemo-exec.test, tests/pdemo-inst.test,
14087         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
14088         tests/suffix.test, tests/tagdemo-conf.test,
14089         tests/tagdemo-exec.test, tests/tagdemo-make.test,
14090         tests/tagdemo-shared.test, tests/tagdemo-static.test,
14091         tests/tagdemo-undef.test, tests/tagtrace.test (func_cd,
14092         func_require): Adjust paths.
14093
14094 2005-04-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14095
14096         * config/general.m4sh, libtool.m4 (_LT_SETUP), tests/defs.m4sh,
14097         tests/functests.at: Fix definition of $Xsed.
14098
14099 2005-04-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14100
14101         Improved Portland support: prelinking of C++ templates and
14102         whole_archive.
14103
14104         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [linux]:
14105         Reinstate formatted whole_archive_flag_spec for PGI compilers.
14106         * config/ltmain.m4sh (func_mode_link), m4/libtool.m4
14107         (_LT_LINKER_SHLIBS): New tag prelink_cmds, to be executed before
14108         linking a program.
14109         (_LT_LANG_CXX_CONFIG) [linux]: Use for pgCC.
14110         (_LT_COMPILER_C_O): conftest might be nonempty, clean up more
14111         thoroughly.
14112
14113         * tests/testsuite.at (LT_AT_BOOTSTRAP): Temporary fix for testing
14114         in-tree libtoolize.
14115
14116         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Only call sed if
14117         necessary while quoting all libtool variables.
14118         Reported by Robert Ögren <lists@roboros.com>.
14119
14120 2005-04-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14121
14122         * tests/Makefile.am: Typo.
14123
14124 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14125
14126         * notes.texi: Platform-specific configuration notes.
14127         * doc/libtool.texi: Include as section.
14128         * bootstrap, doc/Makefile.am: build also as notes.txt and
14129         distribute.
14130
14131 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14132
14133         Under certain circumstances, not all of the macro files were
14134         copied into the destination directory.  This changeset fixes
14135         that bug:
14136
14137         * libtoolize.m4sh (func_serial_update):  Renamed local variable
14138         `my_update_p' to `my_serial_update_p', and initialise it correctly
14139         even when the destination file is not yet there.
14140         Reported by Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14141
14142 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14143
14144         * tests/libtoolize.at: New tests for basic libtoolize
14145         functionality and reporting.
14146         * tests/testsuite.at: Call them.
14147         * tests/Makefile.am: Distribute them.
14148
14149         * libtoolize.m4sh (pkgvdatadir): Renamed from this...
14150         (_lt_pkgvdatadir): ...to this.
14151         * tests/testsuite.at (LT_AT_LIBTOOLIZE): The `-I' option is no
14152         longer supported by libtoolize.  Set _lt_pkgvdatadir in the
14153         environment of the invocation instead.
14154
14155 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14156
14157         * tests/template.at: New Autotest tests for C++ with templates.
14158         First test provided by
14159         Markus Christen <markus@igc.phys.chem.ethz.ch>.
14160         * tests/Makefile.am, tests/testsuite.at: Use and distribute.
14161
14162 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14163
14164         * libtoolize.m4sh (func_serial_update): Replace missing
14165         destination serial calculation line, presumably lost due to a bad
14166         merge.
14167
14168         * libltdl/loaders/Makefile.am: Removed actually.
14169
14170 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14171
14172         Getting the value of ltdldatafiles from a submake was not
14173         portable, and had problems with GNU make-3.80 at least.  This
14174         changeset pulls the installation rules for libtoolize's copy of
14175         the libltdl sources out of libltdl/Makefile.am so that
14176         ltdldatafiles is defined in the same Makefile that uses it.  Also,
14177         this makes a start at cleaning up libltdl/Makefile.am so that it
14178         is useful in a package that uses `libtoolize --ltdl':
14179
14180         * libltdl/loaders/Makefile.am: Removed entirely.
14181         * libltdl/Makefile.am (dlopen.la, dld_link.la, dyld.la)
14182         (load_add_on.la, loadlibrary.la, shl_load.la): All built from here
14183         now that the loaders submake has gone.
14184         (show-ltdldatafiles): Removed.  No longer required.
14185         (ltdldatadir, ltdldatafiles, install-local): Moved from here...
14186         * Makefile.am (ltdldatadir, ltdldatafiles, install-local): ..to
14187         here.
14188         (libtoolize): Substitute $(ltdldatafiles) directly without calling
14189         make to get the value from libltdl/Makefile.
14190
14191 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
14192
14193         * Makefile.am (libtoolize): Substitute $(nobase_pkgvdata_DATA).
14194         pkgvmacro_DATA is no longer set in the makefile.
14195         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): Use it and, for
14196         consistency, renamed from this...
14197         (func_massage_nobase_pkgvdata_DATA): ...to this.  Adjust all
14198         callers.
14199
14200 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
14201
14202         Fix problems with serial comparison sed scripts, and factor out
14203         common code from similar serial comparison functions:
14204
14205         * libtoolize.m4sh (func_keyword_update): Common code factored out
14206         of func_ltmain_update and func_config_update.
14207         (func_ltmain_update, func_config_update): Adjust, and fix sed
14208         expressions to not use unportable ? modifier.
14209         (func_install_update): New serial number based file updater keyed
14210         off 'scriptversion' variable in install-sh.  Adjust all callers.
14211
14212 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
14213
14214         Most of the hair introduced ostensibly to enable testing of
14215         uninstalled libtoolize isn't necessary if we allow overriding of
14216         the libtool master copy directory:
14217
14218         * configure.ac (pkvmacrodir): No need to substitute this.
14219         * Makefile.am (edit): No need to substitute pkgvmacrodir.
14220         (dist_pkgvdata_DATA): Use nobase_ prefix so that these files are
14221         installed to $(pkgvdatadir)/config.
14222         (pkgvmacro_DATA): Renamed to...
14223         (nobase_pkgvdata_DATA): ...this, so that files are installed to
14224         $(pkgvdatadir)/m4.
14225         (install-data-hook): Adjust.
14226         * libtoolize.m4sh: Remove -I processing.
14227         (func_filename_path_search): No longer required without -I.
14228         Adjust all callers.
14229         (pkgvltdldirs, pkgvmacrodirs): Deleted.
14230         (pkgvdatadir): Allow overriding from the environment so that we
14231         can write tests for uninstalled libtoolize.
14232         (func_serial_update, func_ltmain_update, func_config_update):
14233         Rename srcdirs parameter to srcdir, and don't call the path_search
14234         function anymore.  Adjust all callers.
14235         (--install): Don't blindly copy all config files.
14236
14237 2005-04-01  Mike Stump  <mrs@apple.com>
14238
14239         * m4/libtool.m4 (LT_CMD_MAX_LEN) [netbsd, freebsd, openbsd
14240         darwin, dragonfly]: Use 3/4 of argmax, instead of 1/4.
14241
14242 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14243
14244         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG):
14245         Set $cc_basename.
14246
14247         * HACKING: echo vs $ECHO.
14248
14249 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14250
14251         * doc/libtool.texi: Minor formatting cleanups.
14252
14253 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
14254
14255         * libtoolize.m4sh: Propogate --debug flag to sub-libtoolizes.
14256
14257         * libtoolize.m4sh: Fix a typo, s/pkgvltdldirs/pkgvdatadirs/.
14258         When using -I to test an uninstalled libtoolize, we need to add
14259         the config subdirectory to the search path so that ltmain.sh can
14260         be found in the source tree.
14261
14262         * libtoolize.m4sh (func_copy_some_files): IFS needs to be set to
14263         path delimiter for all inner loop iterations.
14264         Once a matching file has been copied, no need to keep searching
14265         the path for another -- move on to the next file!
14266
14267         * libtoolize.m4sh: For verbose mode, explain why macro files are
14268         not installed without an AC_CONFIG_MACRO_DIR declaration.
14269
14270 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
14271
14272         As a prerequisite for being able to test an uninstalled libtoolize
14273         for copying files correctly from the source tree, we must know
14274         exactly which files should be copied by the --ltdl option to avoid
14275         accidentally picking up compilation objects and other noise when
14276         $builddir == $srcdir:
14277
14278         * libltdl/loaders/Makefile.am (ltdldatadir, ltdldatafiles)
14279         (install-data-local): Removed...
14280         * libltdl/Makefile.am (ltdldatafiles): ...and consolidated here.
14281         (show-ltdldatafiles): New rule...
14282         * Makefile.am (ltdldatafiles, libtoolize): ...used to substitute
14283         exactly which files are installed by libtoolize --ltdl.
14284         (edit): Move pkgvmacro_DATA substitution expression...
14285         (libtoolize): ...to here.
14286         * libtoolize.m4sh: Use func_copy_some_files() instead of
14287         func_copy_all_from_path() to copy the --ltdl option installed
14288         files.
14289         (pkgvltdldirs): New path variable to search for files installed by
14290         --ltdl option.
14291         (func_massage_pkgvltdl_files): New function to calculate the list
14292         of ltdl installation files.
14293
14294 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14295
14296         * m4/libtool.m4, m4/ltdl.m4: Indentation and quoting cleanup.
14297
14298 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14299
14300         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Use ${wlarc}
14301         and set to empty when using $LD for linking.  Fixes regression
14302         introduced in 2004-11-17.
14303         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> and
14304         Пухальский Юрий Андреевич <pooh@cryptopro.ru>.
14305
14306 2005-03-21  Gary V. Vaughan  <gary@gnu.org>,
14307             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14308
14309         * m4/libtool.m4 (_LT_SETUP, _LT_LANG_CXX_CONFIG)
14310         (_LT_LANG_F77_CONFIG): For matching compiler names -- Pick only
14311         first word, allow leading white space.
14312         * tests/sh.test: ..and test for missing `*' at end of patterns.
14313
14314 2005-03-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14315
14316         * TODO: Update.
14317
14318 2005-03-20  Peter Ekberg  <peda@lysator.liu.se>
14319
14320         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix5, irix6, nonstopux]:
14321         Test if it is possible to use the -exports_file linker option on
14322         irix with gcc, as the gcc specs file may include a -hidden_symbol
14323         option that is clashing with the -exports_file option.
14324         See this gcc bugzilla entry for further details:
14325         http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15288
14326         * THANKS: Update.
14327
14328 2005-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14329
14330         * tests/demo-nopic.test: Enhance status output
14331         noted by Tom Burger <tvburger@few.vu.nl>.
14332
14333 2005-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14334
14335         * config/ltmain.m4sh, tests/defs.m4sh: Typos.
14336
14337 2005-03-18  Peter O'Gorman  <peter@pogma.com>,
14338             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14339
14340         * m4/libtool.m4: The compiler can be a program name with args, so
14341         always check cc_basename against compiler name and a wildcard.
14342         Also, drop unnecessary quotes in `case' argument.
14343
14344 2005-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14345
14346         * Makefile.am: tests/defs.in depends on config/general.m4sh.
14347
14348         * config/general.m4sh: unconditionally set IFS, and set it
14349         to the one true right sequence: space, tab, newline.
14350         * m4/libtool.m4: remove IFS setting and as_* namespace
14351         infringement.
14352
14353         * m4/libtool.m4 (_LT_CONFIG): Reset IFS to fix failure with ash.
14354
14355         * configure.ac, libltdl/configure.ac: s/##/dnl/ for comments
14356         that are meaningless in configure.
14357         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
14358
14359 2005-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14360
14361         * libltdl/configure.ac: Update version; require Autoconf >= 2.59.
14362
14363         * bootstrap: Allow to override tools.
14364
14365 2005-03-15  Gary V. Vaughan  <gary@gnu.org>
14366
14367         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): New function
14368         to calculate the macro filenames to be copied by libtoolize.
14369         * Makefile.am (edit): Substitute pkgvmacro_DATA.
14370
14371         * bootstrap: Need to generate tests/package.m4 from Makefile.am
14372         before generating tests/testsuite from tests/Makefile.am, or
14373         else bootstrap of a fresh checkout fails.
14374
14375 2005-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14376
14377         * m4/libtool.m4 (_LT_COPYING): Update Copyright year.
14378
14379         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]: Remove MAIN_
14380         dependency when creating shared libraries with Portland pgf77.
14381
14382 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14383
14384         * configure.ac: stamp-vcl is in $top_srcdir, not $top_builddir.
14385
14386 2005-03-12  Per Bothner <per@bothner.com>,
14387             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14388
14389         Allow special characters in source file names.  Will break unless
14390         `-o target' is also given, which must not contain special
14391         characters. En passant, fix source file quoting broken for
14392         cygwin/MSVC:
14393
14394         * config/ltmain.m4sh (func_mode_compile): Use new variable
14395         qsrcfile for quoted source file name for compile $command.  Fix
14396         missing quotes for _c_o lockfile.
14397         * NEWS: Update.
14398
14399 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14400
14401         * config/ltmain.m4sh (func_mode_link): Reword double negation in
14402         error message.
14403         Reported by Jesper Louis Andersen <jlouis@mongers.org>.
14404
14405         * bootstrap: really remove bogus files Makefile tests/Makefile.
14406
14407         * doc/libtool.texi: Replace wicked whiches by thats or other
14408         better-sounding constructs.
14409
14410 2005-03-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14411
14412         * tests/Makefile (clean-local): Ignore testsuite cleanup
14413         failures.
14414
14415 2005-03-11  Per Bothner  <per@bothner.com>  (tiny change)
14416
14417         * tests/Makefile (clean-local): Only run the testsuite cleanup
14418         if the testsuite has been generated.
14419
14420 2005-03-10  Gary V. Vaughan  <gary@gnu.org>
14421
14422         * libltdl/Makefile.am (install-data-local): Don't force v7 tar
14423         format with the `o' flag in create mode.
14424         Set the umask to 0 when untarring to avoid copied files taking
14425         their mode from the installer's umask.
14426         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14427         * libtoolize.m4sh (func_copy_cb): Ditto.
14428         Ignore errors from failed `cd' in the tar processes, since we
14429         may be running in dryrun mode.
14430         Reported by Noah Misch <noah@cs.caltech.edu>,
14431                     Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
14432
14433 2005-03-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14434
14435         * libltdl/Makefile.am: $(builddir) is not defined, replace by
14436         `.'.
14437
14438 2005-03-08  Albert Chin-A-Young  <china@thewrittenword.com>
14439
14440         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
14441         [irix*, osf*]: Output -update_registry information to
14442         ${output_objdir} directory, not ${objdir}. ${output_objdir}
14443         will work when a project has a single Makefile and performs
14444         builds in subdirectories. ${objdir} expects the source in
14445         the current directory, breaking single-Makefile builds.
14446
14447 2005-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14448
14449         * tests/stresstest.at: Remove multiple variable definition.
14450
14451         * TODO: Update.
14452
14453         * THANKS: Update.
14454
14455 2005-03-02  Gary V. Vaughan  <gary@gnu.org>
14456
14457         * libtoolize.m4sh (func_copy_cb): Use tar chof to avoid symlink
14458         attacks.
14459         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
14460         (install-data-local): Ditto.
14461
14462 2005-02-27  Gary V. Vaughan  <gary@gnu.org>
14463
14464         In branch-2-0 (and in time, others) ltversion.m4 has a dot
14465         delimited serial number that didn't used to be processed
14466         correctly by libtoolize.  This changeset fixes that, and
14467         leverages those changes to check versions of ltmain.sh and
14468         config.sub, config.guess before overwriting when --force is
14469         not given:
14470
14471         * libtoolize.m4sh: Don't overwrite pkgaux files with --force
14472         unless --install is given too.
14473         (func_serial): Fix underquoting in regexp.
14474         (func_serial_max): New function to compare serial numbers.
14475         (func_serial_update_check): New function factored out of
14476         func_serial_update().
14477         (func_serial_update): Bail if SRCFILE is missing.
14478         Don't display both 'already up to date' and 'use --force to
14479         update' messages for the same file.
14480         Use func_serial_max to cope with `.' delimited serial numbers.
14481         (func_ltmain_update): Use func_serial_update_check and
14482         func_serial_max to do version checking with $package_revision.
14483         (func_config_update): Ditto with $timestamp.
14484
14485 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
14486
14487         * libltdl/Makefile.am (install-data-local):  cd to $(srcdir)
14488         before tarring up the files for installation to
14489         $(DESTDIR)$(ltdldatadir).  Don't remove the destination directory,
14490         since that interacts badly with the multi-Makefile installation.
14491         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14492
14493 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
14494
14495         I assume that it is okay to have undefined symbols in convenience
14496         libraries that will be used as modules -- the pic objects are
14497         built normally, and are not expected to resolve all their symbols
14498         until they are linked into a library; convenience libraries are
14499         then rolled using 'ar' and 'ranlib' (or equivalent) which also do
14500         not check whether symbols are resolved.  We now build each of the
14501         loaders as a convenience library module under these assumptions,
14502         and link libltdl.la with selected modules, at which time all of
14503         the symbols *are* resolved:
14504
14505         * TODO: Remove item addressed by this changeset.
14506         * libltdl/Makefile.am (lib_LTLIBRARIES): Remove libdlloader.la.
14507         (libdlloader_la_SOURCES): Declaration removed.  Changed all
14508         clients.  Source files..
14509         (libltdl_la_SOURCES): ...added back in here.
14510         (libdlloader_LDFLAGS, libdlloader_la_LIBADD): Removed.
14511         (libltdl_la_LIBADD): Remove libdlloader.la; add $(LTLIBOBJS).
14512         * libltdl/loaders/Makefile.am: Removed all references to
14513         libdlloader.la.
14514
14515 2005-02-25  Gary V. Vaughan  <gary@gnu.org>
14516
14517         * libtoolize.m4sh (func_copy): Split arguments to func_copy_cb
14518         calls across lines so that quote.test doesn't misdiagnose nested
14519         quotes.
14520
14521         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC):
14522         Fix some typos -- s/_LT_AC_TAGVAR/_LT_TAGVAR/g.
14523
14524 2005-02-24  Peter O'Gorman  <peter@pogma.com>
14525
14526         * m4/libtool.m4 (_LT_LINKER_SHLIBS): The Portland group's
14527         compiler does not pass --whole-archive. Move gnu ld check for
14528         the flag to the top so it can be overridden.
14529         (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC): Unset
14530         whole_archive_flag_spec for the portland group's c++ compiler
14531         too.
14532         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
14533
14534 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
14535
14536         * libltdl/Makefile.am (install-data-local): Don't forget about
14537         $(DESTDIR).
14538         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14539
14540 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
14541
14542         Preserving the installed timestamps for libltdl sources from
14543         `libtoolize --ltdl --copy' is pointless if they are not preserved
14544         from the libtool source tree at install time:
14545
14546         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
14547         (nobase_ltdldata_DATA): Renamed to...
14548         (ltdldatafiles): ...this.
14549         (install-data-local): New rule to install libltdl tree with tar to
14550         preserve timestamps.
14551
14552 2005-02-23  Christoph Egger  <Christoph_Egger@gmx.de> (tiny change)
14553
14554         * config/ltmain.m4sh (func_mode_link): Add -pthread like flags to
14555         inherited_linker_flags.
14556
14557 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
14558
14559         * libtoolize.m4sh (func_copy_cb): self.leg->shoot_off() :-/
14560         Let's not redirect stdout to null when sending tar output to a
14561         pipe.
14562
14563 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
14564
14565         Using `libtoolize --copy --ltdl' was not preserving timestamps, so
14566         parts of the autoconf bootstrap would be rerun spuriously after
14567         the files had been copied into the source tree:
14568
14569         * libtoolize.m4sh (TAR): New default tar command.
14570         (func_copy_cb): Move the core copying internals to here, using
14571         $TAR to transfer files if possible when --copy was specified.
14572         (func_copy): Adjust to call func_copy_cb.
14573         * TODO: Remember to refactor this fix in due course.
14574         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
14575
14576 2005-02-21  Peter O'Gorman  <peter@pogma.com>
14577
14578         * config/ltmain.m4sh (func_extract_archives) [darwin]: This didn't
14579         actually work on a real fat archive, should do now.
14580         * tests/functests.at [darwin]: remove darwin fat tests which
14581         did not actually work.
14582
14583 2005-02-07  Peter O'Gorman  <peter@pogma.com>
14584
14585         * config/ltmain.m4sh: Add -pthread like flags when linking
14586         executables too.
14587         Reported by Andreas Schwab <schwab@suse.de>
14588
14589 2005-02-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14590
14591         * config/ltmain.m4sh (func_mode_link): Allow five digits in
14592         version-info.
14593
14594         * NEWS: s/Linux/GNU &/.
14595
14596 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14597
14598         * tests/Makefile.am, tests/testsuite.at, tests/stresstest.at:
14599         New test.  Stresses several combinations of link flags and
14600         path specifications.  Uses several data types to test linkage
14601         against symbols in all kinds of (e.g., ELF) sections.
14602
14603 2005-02-03  Reid Spencer  <reid@x10sys.com>,
14604             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14605
14606         * config/ltmain.m4sh (func_generate_dlsyms): Fix broken subdir
14607         path computation, exposed by using `-dlopen self'.  Fix broken
14608         sed script exposed by additionally using `-export-symbols FILE'.
14609
14610 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14611
14612         * THANKS: Update.
14613
14614         * THANKS: Update.
14615
14616 2005-02-03  Peter O'Gorman  <peter@pogma.com>
14617
14618         * config/ltmain.m4sh [darwin]: Don't add installed libs to
14619         temp_rpath when building executables on darwin, or other systems
14620         which use hardcode_automatic. It may break our wrapper scripts.
14621
14622 2005-02-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14623
14624         * config/getopt.m4sh (func_version, func_usage, func_help):
14625         Exit with nonzero status on write failures.
14626         * config/ltmain.m4sh (func_mode_help, func_config, func_features):
14627         Ditto.
14628
14629         * tests/sh.test: Check for preferred function definition layout.
14630
14631 2005-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14632
14633         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
14634         [pw32, freebsd3.[01], freebsdelf3.[01]]:  Fix [] quoting.  Should
14635         fix various spurious failures.
14636         (_LT_LINKER_SHLIBS) [linux with GNU ld < 2.11, aix4.[012]*]:
14637         Ditto.
14638         (_LT_LANG_CXX_CONFIG) [aix4.[012]*, freebsd[12], solaris2.[0-5]]:
14639         Ditto.
14640         (_LT_LANG_GCJ_CONFIG): Ditto.
14641
14642         * tests/Makefile.am: Add `atconfig' to DISTCLEANFILES.
14643
14644         * clcommit.m4sh: Test whether the shell understands `read -r'.
14645         Use as `$read_r' if available, so `\' is preserved in commit
14646         notices.
14647
14648         * HACKING (Editing `.m4sh' Files): Document preferred function
14649         header layout.
14650         * config/ltmain.m4sh (func_win32_libid, func_infer_tag)
14651         (func_generate_dlsyms, func_extract_an_archive)
14652         (func_extract_archives): Adjust to fit.
14653
14654 2005-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14655
14656         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unicos 9 sed rejects
14657         empty parentheses as in 's/x\(\)/\1/'.
14658         (_LT_COMPILER_PIC) [unicos*]: wl=-Wl,.
14659         * tests/sh.test: Not all sed's like '/.*\n.*/' (Unicos 9 sed
14660         loops endlessly).
14661
14662         * tests/quote.test: Match link  quoting against `"$wl"', not
14663         `-Wl,'.
14664
14665         * tests/quote.test: Check for `--no-reexec' in $1 to avoid one
14666         reexec.
14667
14668         * m4/libtool.m4 (_LT_COMPILER_C_O): _LT_TAGDECL(lt_compiler_c_o),
14669         not _LT_DECL, since this is tag-dependent.
14670
14671         * config/ltmain.m4sh, m4/libtool.m4: Change `( cmd ) 2>/dev/null'
14672         to  `{ cmd; } 2>/dev/null', when cmd has no side effects and might
14673         be a builtin.  Note that it is unspecified whether cmd will run
14674         within a subshell (e.g. Bourne shells) or within the current shell
14675         (most modern shells).
14676
14677 2005-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14678
14679         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [linux]:
14680         Update for Intel Compiler icc/icpc/ifort: add -i_dynamic and
14681         -nofor_main, if necessary.  Simplify logic somewhat.
14682
14683 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14684
14685         * tests/Makefile.am: also re-export CPP, CXXCPP, and the value of
14686         SHELL as CONFIG_SHELL.
14687         Reported by Heinz Salzmann <heinz.salzmann@micronas.com>.
14688
14689 2005-01-26  Craig Dooley  <xlnxminusx@gmail.com>,
14690             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14691
14692         * NEWS, m4/libtool.m4, config/ltmain.m4sh [dragonfly]:
14693         Add support for DragonFly.
14694
14695 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14696
14697         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Work around pdksh
14698         positional parameter expansion bug.
14699
14700 2005-01-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14701
14702         * config/ltmain.m4sh: Fix endless loop in cmdline parsing.
14703
14704 2005-01-25  Albert Chin-A-Young  <china@thewrittenword.com>
14705
14706         * config/ltmain.m4sh (func_mode_link) [irix]: Preserve processor
14707         option for SGI Compiler (-r[0-9][0-9]*).
14708
14709 2005-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14710
14711         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Define Bourne and XSI
14712         variants of new function func_stripname for stripping literal
14713         prefixes and suffixes.
14714         * config/ltmain.m4sh (all over): Use func_stripname.
14715
14716         * tests/defs.m4sh: Extract $build from $LIBTOOL.
14717         (func_configure): Pass --host if $host != $build.
14718         (func_exec): Try executing cross-compiled binaries (e.g. i686 ->
14719         i386), but SKIP rather than FAIL.
14720         * tests/depdemo-relink.test: Do not try to access possibly non-
14721         existent files.  SKIP rather than FAIL or PASS falsely when
14722         cross-compiling.
14723
14724         * m4/libtool.m4 (_LT_SETUP) [mingw, cygwin, pw32, os2]:
14725         Add _LT_DECLs for host_os, build_alias, build and build_os.
14726         host_os and build were used in a few occasions in ltmain.m4sh
14727         and affect above-mentioned systems, the others are added for
14728         symmetry and in order to be able to detect cross-compiling.
14729
14730 2005-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14731
14732         * libltdl/Makefile.am: Add $(AM_LDFLAGS) to all per-target
14733         variables *_LDFLAGS as per CVS Automake semantic change.
14734
14735 2005-01-16  Peter O'Gorman  <peter@pogma.com>
14736
14737         * config/ltmain.m4sh (func_mode_link): Don't pass through
14738         compiler-like thread flags when using $LD to do the linking.
14739         Use compiler_flags instead.
14740         Reported by Mark_Andrews@isc.org.
14741
14742         * m4/libtool.m4 (LT_CMD_MAX_LEN) [osf]: On Tru64 there could
14743         be a kernel panic when testing the maximum command line length
14744         if exec_disable_arg_limit=1. Don't do the tests to figure it
14745         out on *-osf*.
14746         Reported by Dr. Hans Ekkehard Plesser
14747         <hans.ekkehard.plesser@umb.no>
14748
14749 2005-01-14  Guido Draheim  <guidod-2003-@gmx.de>  (tiny change)
14750
14751         * m4/libtool.m4 (AC_PROG_SED): Don't break test loop early.
14752
14753 2005-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14754
14755         * TODO: Update.
14756
14757         * libltdl/ltdl.c: Whitespace cleanup.
14758
14759         * config/ltmain.m4sh: New option `--verbose'/`-v' to enable
14760         override of `--silent'.  Verbose is the default behavior.
14761         * doc/libtool.texi (Invoking libtool): Document it.
14762
14763         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: While "parsing"
14764         /etc/ld.so.conf, skip comments.
14765         Reported by Jens Elkner <elkner@linofee.org>.
14766
14767 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14768
14769         * libltdl/libltdl/lt__glibc.h: Move all exported slist
14770         symbols into the lt__* namespace.
14771         * libltdl/libltdl/lt__private.h, libltdl/libltdl/slist.h:
14772         Adjust includes.
14773
14774 2005-01-10  Peter O'Gorman  <peter@pogma.com>
14775
14776         * config/ltmain.m4sh (func_mode_link): Fix
14777         inherited_linker_flags so it puts it on the link line when
14778         linking shared libraries as well as when linking executables.
14779         * tests/inherited_flags.at: test inherited_linker_flags.
14780         * tests/Makefile.am: Add test.
14781         * tests/testsuite.at: Add test.
14782         Reported by: Albert Chin-A-Young <china@thewrittenword.com>
14783
14784 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14785
14786         * tests/sh.test: After `set dummy [...]', check for `shift'
14787         within the same and following line.
14788         * config/ltmain.m4sh (func_enable_tag, func_mode_install)
14789         (func_mode_link): Sprinkle `shift's all over to conform to this.
14790
14791 2005-01-09  Gary V. Vaughan  <gary@gnu.org>
14792
14793         * HACKING (Editing 'ChangeLog'): Follow the GCS with respect to
14794         attributions, and mention how to handle tiny changes.
14795         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
14796
14797         * ChangeLog.2004: Trim 2005 entries.
14798         * ChangeLog: Add missing entries.
14799
14800 2005-01-08  Gary V. Vaughan  <gary@gnu.org>
14801
14802         * ChangeLog: Move 2004 change logs from here...
14803         * ChangeLog.2004: ...to here.
14804
14805         * m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
14806         m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4: RMS says,
14807         'I think the [license of autoconf macro files] should be:
14808         # This file is free software; the Free Software Foundation
14809         # gives unlimited permission to copy and/or distribute it,
14810         # with or without modifications, as long as this notice is
14811         # preserved.'.
14812
14813         * ChangeLog: Reformatting.
14814         * HACKING: Fix section numbering.
14815         (Editing 'ChangeLog'): New notes on ChangeLog entry format.
14816
14817 2005-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14818
14819         * tests/am-subdir.at tests/testsuite.at (AT_BOOTSTRAP,
14820         AT_LIBTOOLIZE, AT_CHECK_LIBTOOLIZE): Rename to ...
14821         (LT_AT_BOOTSTRAP, LT_AT_LIBTOOLIZE, LT_AT_CHECK_LIBTOOLIZE):
14822         ...and make use of new names.
14823
14824 2004-12-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14825
14826         * config/getopt.m4sh (func_version, func_usage, func_help):
14827         Use `$SED -n' instead of `$SED RANGE {..}; d' as AIX sed cannot
14828         handle the latter.
14829         (func_help): start autoconf and automake in subshells to avoid
14830         error messages from ash or Bourne shell if not available.
14831
14832 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14833
14834         * config/general.m4sh (func_quote_for_eval): Move backslash to
14835         beginning of character class, to work around old Bash bug.
14836         (func_quote_for_expand): Also test to avoid unnecessary fork.
14837
14838 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
14839             Gary V. Vaughan <gary@gnu.org>
14840
14841         * Makefile.am, bootstrap, clcommit.m4sh, libtoolize.m4sh,
14842         config/ltmain.m4sh: Replace `set --' with `set dummy [...]; shift'
14843         for portability.
14844         * tests/sh.test: Test for this.
14845
14846 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14847
14848         * libtoolize.m4sh, config/ltmain.m4sh (most functions): New
14849         variable $opt_debug is either `:' or `set -x' depending on
14850         --debug.  Execute at most function entries to cater for ksh which
14851         resets `-x'.
14852         * tests/defs.m4sh: Ditto for VERBOSE=debug.
14853
14854         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
14855         _LT_TAGVAR missing for `fix_srcfile_path'.
14856         [sysv4, sysv5]: _LT_TAGVAR missing for
14857         `export_dynamic_flag_spec'.
14858
14859         * doc/libtool.texi (all over): Use @option and @command.
14860         Some more minor formatting updates, typos.
14861
14862         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix variable quoting;
14863         allows lt_ECHO to match --fallback-echo again.
14864
14865         * config/ltmain.m4sh (func_extract_archives): Not all shells grok
14866         `read -r' (unnecessary in this case).
14867         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
14868
14869         * config/general.m4sh: New variable quote_scanset...
14870         (func_quote_for_eval, func_quote_for_expand): ...use it to work
14871         around SunOS ksh `case' backslash-escaping bug: protect character
14872         class by variable expansion.
14873         Reported by Alexander Kurz <alexander.kurz@qsc.de>.
14874
14875         * tests/quote.test: Restart under the correct shell (the one
14876         $ECHO was computed for).
14877
14878 2004-12-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14879
14880         * libltdl/lt__dirent.c: Include lt__private.h.
14881         * libltdl/libltdl/lt__private.h: Include lt__strl.h.
14882
14883 2004-12-20  Peter O'Gorman  <peter@pogma.com>
14884
14885         * config/ltmain.m4sh (func_extract_archives)
14886         (func_extract_an_archive): On darwin, uniq can not take the flags
14887         -cd together, thanks to Ralf for the fix, also ar does not accept
14888         N, so we use the fact that ar x libfoo.a foo.o will always extract
14889         the first foo.o in the archive and we then delete foo.o from the
14890         archive, which will also delete only the first foo.o, then rinse
14891         and repeat. Also add markers for the testuite.
14892         * m4/libtool.m4 (_LT_CONFIG): Add a marker so that we can use a
14893         sed expression to find the shell functions in libtool.
14894         * tests/functests.at: Test this feature.
14895         * tests/testsuite.at: Add the test.
14896         * tests/Makefile.am: Add the test.
14897
14898 2004-12-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14899
14900         * libtoolize.m4sh: Install `install-sh' as well, needed for
14901         configure.
14902         * Makefile.am, Makefile.maint: Install, update it.
14903         * NEWS, doc/libtool.texi (Distributing): Document it.
14904         Reported by Ross Boylan <ross@biostat.ucsf.edu>.
14905
14906         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Add '${wl}-z
14907         ${wl}text' to archive_cmds and archive_expsyms_cmds.  I.e., do not
14908         allow nopic in shared libraries.
14909
14910         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Change
14911         no_undefined_flag back to ' -z defs'.  Problems with linking
14912         against libgcc.a will have to be resolved differently.
14913
14914         * tests/demo-nopic.test [solaris, sunos]: Skip test.
14915
14916 2004-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14917
14918         * libtool.m4 [linux] (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG):
14919         Match icpc* and ecpc* (ia64 version of icpc) instead of only icpc.
14920
14921         * libltdl/lt__dirent.c (opendir) [mingw]: Fix write of constant
14922         strings past end of buffer.
14923         (opendir, readdir): Fix read past end of buffer.
14924
14925 2004-12-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14926
14927         * HACKING: Update list of non-Libtool-owned files.
14928
14929 2004-12-17  Akim Demaille <akim@epita.fr>
14930
14931         * libtoolize.m4sh (func_copy_all_from_path): Remove spurious eval.
14932
14933 2004-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14934
14935         * libltdl/ltdl.c (trim): Return error rather than do bogus
14936         null pointer arithmetic when parsing a malformed .la file.
14937
14938 2004-12-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
14939
14940         * libltdl/lt__strl.c, libltdl/libltdl/lt__strl.h: New files to
14941         emulate strlcat and strlcpy, which support size-bounded string
14942         copying and concatenation for improved security.
14943         * libltdl/Makefile.am: Optionally build source files
14944         libltdl/lt__strl.c and libltdl/libltdl/lt__strl.h.
14945         * m4/ltdl.m4 (LTDL_INIT): Add checks for strlcat and strlcpy.
14946
14947 2004-12-13  Albert Chin-A-Young  <china@thewrittenword.com>
14948
14949         * libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
14950         Append -G to link command-line on AIX to honor -brtl on
14951         command-line (runtime linking). Already done for IBM C/C++
14952         compilers.
14953
14954 2004-12-12  Patrick Welche <prlw1@newn.cam.ac.uk>
14955
14956         * configure.ac: Fix aclocaldir to use ${datadir}, not ${prefix}.
14957         Necessary for removal of old libtool.m4 files.
14958
14959 2004-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14960
14961         * config/ltmain.m4sh (func_extract_archive): Send stderr of $NM
14962         to /dev/null.
14963         Reported by Martin Waitz <tali@admingilde.org>.
14964
14965 2004-12-09  Albert Chin-A-Young  <china@thewrittenword.com>
14966
14967         * config/ltmain.m4sh: Preserve -model [arg] option, used
14968         with the Tru64 UNIX C++ compiler. This option selects the
14969         layout of C++ classes, name mangling, and exception handling.
14970
14971 2004-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14972
14973         * config/ltmain.m4sh (func_mode_finish) [solaris]: Fix [] escaping
14974         bug.
14975
14976         * config/ltmain.m4sh (all over the map): Make use of func_basename
14977         and func_dirname in most occasions.
14978
14979         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL, _LT_PROG_XSI_SHELLFNS): New
14980         macros to detect at `configure' time whether the shell supports
14981         some XSI extensions and to copy appropriate versions of new shell
14982         functions into `libtool' through `config.status'.  Copied
14983         functions are Bourne and XSI variants of func_basename,
14984         func_dirname (a variant of `dirname' suitable for libtool).
14985         (_LT_SETUP): Require _LT_CHECK_XSI_SHELL.
14986         (_LT_CONFIG):  Use _LT_PROG_XSI_SHELLFNS to insert into `libtool'
14987         at marker.
14988
14989         * config/ltmain.m4sh: Set marker for insertion of shell functions.
14990
14991         * config/general.m4sh (func_quote_for_eval): Only fork if the
14992         substitution matches.
14993
14994 2004-12-03  Gary V. Vaughan  <gary@gnu.org>
14995
14996         * TODO: Paste Peter's summary of the TODO thread starting at
14997         http://lists.gnu.org/archive/html/libtool/2004-11/msg00130.html.
14998
14999 2004-12-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15000
15001         * config/ltmain.m4sh: Remove code which is no longer needed
15002         now that temp_rpath only contains fully-qualified elements.
15003
15004 2004-11-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15005
15006         * config/general.m4sh: basename sed-subst is anchored and thus
15007         does not need the `g' flag.
15008         (func_quote_for_eval): Return both the possibly double-quoted
15009         backslashified as well as only the backslashified argument.
15010         * config/ltmain.m4sh (func_mode_link): Use both return values,
15011         to save another sed_quote_subst application per cmdline arg.
15012
15013 2004-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15014
15015         * config/ltmain.m4sh (func_lalib_p): Update function
15016         description.
15017         (func_lalib_unsafe_p): New function with same functionality but
15018         written without forks; this function is safe to use for cases
15019         where the argument either does not exist or is required to be a
15020         lalib for correct operation.
15021         * NEWS: Mention the fact that stdin is not to be used.
15022         * config/ltmain.m4sh (func_mode_execute, func_mode_install)
15023         (func_mode_link): Use func_lalib_unsafe_p where appropriate.
15024         (func_mode_execute): For the program wrapper, use
15025         func_ltwrapper_p instead of func_lalib_p.
15026
15027         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Treat linux-dietlibc with
15028         the `diet' compiler wrapper (as opposed to the `diet-dyn' wrapper)
15029         as a static-only platform.
15030         * NEWS: Updated.
15031
15032         * libltdl/ltdl.c (trim): Use memcpy instead of strncpy here, to
15033         avoid problems with non-conforming strncpy.  This is safe here.
15034
15035         * m4/ltdl.m4 (LT_LIB_DLLOAD): Define HAVE_LIBDLLOADER if we
15036         have a dlloader to preload.
15037         * libltdl/ltdl.c (lt_dlinit): Only preload if HAVE_LIBDLLOADER, only
15038         declare preloaded_symbols then.  Fixes libltdl on static platforms.
15039         * NEWS: Updated.
15040
15041 2004-11-29  Gary V. Vaughan  <gary@gnu.org>
15042
15043         Add a search path option to libtoolize so that we can run it from
15044         the testsuite without pulling in the last installed macros and
15045         ltdl sources:
15046
15047         * libtoolize.m4sh:  Add a -I option to change libtoolize's search
15048         path for macro files, and libltdl master sources.
15049         (pkgvdatadir, pkgvmacrodir): Renamed...
15050         (pkgvdatadirs, pkgvmacrodirs): ...as they can now contain a ':'
15051         delimited list of directories.  Adjust all callers.
15052         (func_copy_all_from_path): New function to search a ':' delimited
15053         search path for a directory to copy.
15054         (func_serial_update, func_ltmain_update, func_config_update): New
15055         first parameter is a filename to search for.  srcdir parameter can
15056         now be a ':' delimited search path.  Adjust all callers.
15057         (func_copy_some_files): Ditto.
15058         Put srcfile_spec first in parameter list for consistency with
15059         other functions.  Adjust all callers.
15060         (func_copy_cb): func_copy adapter function to call func_copy
15061         correctly from func_copy_some_files.
15062         (func_filename_path_search): Return the full path to the first
15063         occurence of a named file found in a list of directories.
15064         * tests/testsuite.at (LIBTOOLIZE): Wrap exported LIBTOOLIZE
15065         initialisation in PREPARE_TESTS diversion to stop it being
15066         discarded when testsuite is generated.
15067         (AT_LIBTOOLIZE): Factor out libtoolize calls,
15068         and set search path to find macros and libltdl source files from
15069         the source tree.
15070         (AT_CHECK_LIBTOOLIZE): Test it.
15071         (AT_BOOTSTRAP): Adjust.  Split out call to make.
15072         * tests/am-subdir.at: Call make explicitly.
15073         (Makefile.am): Fix typo in ACLOCAL_AMFLAGS,
15074
15075 2004-11-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15076
15077         * config/ltmain.m4sh (func_mode_link): $dlsymsobj is really
15078         $symfileobj, bug exposed only in the static preloading case
15079         (symfileobj is created, but not linked into output).
15080
15081         * tests/demo-relink.test, tests/depdemo-relink.test: SKIP, don't
15082         FAIL if no shared libs available in demo/.  Do not try to access
15083         nonexistent files.
15084
15085         * libltdl/loaders/loadlibrary.c: Remove unneeded
15086         file-static variable.
15087
15088 2004-11-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15089
15090         * config/ltmain.m4sh: Add fully-qualified paths to temp_rpath
15091         rather than unqualified paths in order to avoid possible errors
15092         when computing the fully-qualified path later.
15093
15094 2004-11-24  Jeff Squyres  <jsquyres@lam-mpi.org>
15095
15096         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
15097         (_LT_LANG_CXX_CONFIG) [linux]: Support for Portland Group (aka
15098         "pgi") compilers.
15099         * NEWS, THANKS: Updated.
15100
15101 2004-11-24  Gary V. Vaughan  <gary@gnu.org>
15102
15103         * Makefile.am: Move Autotest rules from here...
15104         * tests/Makefile.am: ...to here.
15105         * bootstrap: Adjust.  Also, create temporary Makefile from
15106         tests/Makefile.am so that bootstrap can create the Autotest
15107         testsuite.
15108
15109 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
15110
15111         If the user's login shell is something crazy like, oooh,
15112         /bin/tcsh, trying to execute bourne shell helper scripts with
15113         the `$SHELL /path/to/helper $helper_flags' idiom incase the
15114         execute bits were lost by say, eeer, cvs, is gonna blow up in
15115         our faces.  This changeset tries to save these people from
15116         their shells^H^H^H^H^H^H^H^H^Hmselves :->
15117
15118         * tests/defs.m4sh (SHELL): Move definition from here...
15119         * config/general.m4sh (SHELL): ...to here.
15120
15121 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
15122
15123         The ltdl.h header is the published interface to libltdl, and
15124         is thus not installed to $prefix/include/libltdl.  It has always
15125         been used with `#include <ltdl.h>', so move just that one file
15126         back to where it was before:
15127
15128         * libltdl/libltdl/ltdl.h: Moved from here...
15129         * libltdl/ltdl.h: ...to here.
15130         * libltdl/Makefile.am: Adjust.
15131
15132 2004-11-23  Peter O'Gorman  <peter@pogma.com>
15133
15134         Do not require that libtoolize --ltdl=/some/path end in libltdl.
15135         Move most libltdl headers to libltdl/libltdl to allow
15136         `#include <libltdl/ltdl.h>' to always work:
15137
15138         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for includes
15139         in the new location.
15140         * libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
15141         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
15142         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
15143         libltdl/libltdl/lt_system.h, libltdl/libltdl/ltdl.h,
15144         libltdl/libltdl/slist.h: Added files, moved from libtdl/.
15145         * libltdl/lt__alloc.h, libltdl/lt__dirent.h, libltdl/lt__glibc.h,
15146         libltdl/lt__private.h, libltdl/lt_dlloader.h, libltdl/lt_error.h,
15147         libltdl/lt_system.h, libltdl/ltdl.h, libltdl/slist.h: Removed, moved
15148         to libltdl/libltdl.
15149
15150 2004-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15151
15152         * doc/libtool.texi (LT_INIT): s/libtool 1.6/libtool 2.0/.
15153         (Invoking libtoolize): Fix typo.
15154
15155 2004-11-22  Gary V. Vaughan  <gary@gnu.org>
15156
15157         * config/ltmain.m4sh (func_mode_install): Now that func_mktempdir
15158         has been improved, the default directory template is perfectly
15159         fine.
15160
15161         * doc/libtool.texi (Invoking libtoolize): Improve documentation
15162         for use of ACLOCAL_AMFLAGS and AC_CONFIG_MACRO_DIR.
15163
15164 2004-11-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15165
15166         * m4/libtool.m4 (_LT_TAG_COMPILER): Document that with_gcc is
15167         tag-dependent.
15168
15169         * m4/libtool.m4, tests/demo-nopic.test: Undo bogus commit.
15170
15171         * config/ltmain.m4sh (func_mode_link), tests/objectlist.test:
15172         Make sure the argument to `-objectlist' may contain spaces.
15173
15174 2004-11-19  Gary V. Vaughan  <gary@gnu.org>
15175
15176         * config/m4general.m4sh, config/mailnotify.m4sh,
15177         clcommit.m4sh: Updated from cvs-utils--tla--1.0 to allow
15178         parallel commits, and use safer tmpfiles.
15179
15180 2004-11-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15181
15182         * doc/libtool.texi (Libltdl interface): Typos.
15183
15184         * doc/libtool.texi (Libltdl interface): Document public macros
15185         LT_PATHSEP_CHAR, LT_DIRSEP_CHAR, use in path descriptions.
15186
15187 2004-11-18  Daniel Reed  <djr@redhat.com>
15188
15189         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: Interpret
15190         `include' statements in toplevel ld.so.conf file.
15191
15192 2004-11-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15193
15194         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
15195         tag-protect setting of ld_shlibs.
15196
15197 2004-11-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15198
15199         * doc/libtool.texi (Libltdl interface): The path separator
15200         is system-dependent.
15201
15202         * doc/libtool.texi (Linking static libraries): Typo.
15203
15204         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
15205         [aix4/aix5 !ia64]: Set whole_archive_flag_spec to '$convenience'
15206         so convenience libs are really added to the link cmdline.
15207
15208 2004-11-17  Mats Rynge  <rynge@isi.edu>
15209
15210         * libtool.m4 [linux]: Use only the CC basename in case statment
15211         when checking for icc/ecc.  Allows for setting CC to the full path
15212         to the compiler.
15213
15214         * libtool.m4 [solaris]: Added missing 'with linker' flags to
15215         -z allextract ... -z defaultextract flags
15216
15217 2004-11-14  Gary V. Vaughan  <gary@gnu.org>
15218
15219         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Typo: s/--rpath/-rpath/g.
15220         (_LT_LANG_CXX_CONFIG): Ditto.
15221
15222         * configure.ac (APIVERSION): New substituted variable.
15223         (pkgvdatadir): Ditto.  Versioned data directory.
15224         (pkgvmacrodir): Ditto.  Versioned aclocal directory.
15225         (LN): New check for LN command.
15226         * Makefile.am (aclocal_DATA): Replaced with...
15227         (pkgvmacro_DATA): ...this.
15228         (install-data-local): Remove old shared resources.
15229         (install-exec-hook): Make versioned links to executables.
15230         (uninstall-hook): Remove versioned files.
15231         * libltdl/Makefile.am (ltdldatadir): Redefine in terms of
15232         pkgvdatadir.
15233         * libltdl/loaders/Makefile.am (ltdldatadir): Ditto.
15234         * libtoolize.m4sh: Copy macro files from versioned macro directory
15235         instead of shared aclocal directory.
15236         * doc/libtool.texi: Document it.
15237         * NEWS: Updated.
15238
15239 2004-11-10  Gary V. Vaughan  <gary@gnu.org>
15240
15241         From James Henstridge <james@jamesh.id.au>:
15242         * m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4: Added commented out
15243         empty macro definitions to match each AU_DEFUN to help aclocal
15244         from automake-1.4 regexps find the right libtool macro files.
15245
15246 2004-11-10  James E Wilson  <wilson@specifixinc.com>,
15247             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15248
15249         * config/ltmain.m4sh (func_mode_link), tests/Makefile.am,
15250         Fix error message with `-objectlist' file that does not exist.
15251         * tests/objectlist.test:  New test for this.
15252
15253         * Makefile.am: config/ltmain.sh is generated by
15254         config/ltmain.m4sh.
15255
15256 2004-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15257
15258         * doc/libtool.texi (Compile mode, Link mode,
15259         Libltdl interface, Test descriptions, libtool script
15260         contents): Some quote cleanup, more use of texinfo types.
15261
15262         * doc/libtool.texi (libtool script contents):
15263         echo is now ECHO; mention argument restriction.
15264
15265         * doc/libtool.texi (Multiple dependencies): Minor rewording.
15266
15267         * doc/libtool.texi (User defined module data, References):
15268         indentation and word-wrap cleanup.
15269
15270         * doc/libtool.texi (all over): White space cleanup:
15271         two spaces at start of sentence, no TABs.
15272
15273 2004-11-09  Gary V. Vaughan  <gary@gnu.org>,
15274             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15275
15276         * doc/libtool.texi (libtool script contents): Fix description
15277         of need_lib_prefix.
15278
15279 2004-11-08  Peter Ekberg  <spam.protected>
15280
15281         * config/ltmain.m4sh (func_mode_link): forward thread
15282         related flags to dependent applications and libraries
15283         by adding them to `inherited_linker_flags'.
15284
15285 2004-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15286
15287         * m4/ltoptions.m4: Change all references of LT_LIBTOOL_INIT
15288         to LT_INIT.
15289
15290 2004-11-05  Peter Ekberg  <spam.protected>
15291
15292         * ltmain.m4sh (cwrappersource): clean up other warning on MinGW.
15293
15294 2004-11-04  Bernhard Fischer  <spam.protected>,
15295             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15296
15297         * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS), m4/ltoptions.m4
15298         (_LT_SET_OPTIONS), README, README.alpha: Typos.
15299
15300 2004-11-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15301
15302         * libltdl/ltdl.c (parse_dotla_file): Fix memleak.
15303
15304         * ltmain.m4sh (cwrappersource): Cast isalpha arguments correctly.
15305
15306 2004-11-03  Peter Ekberg  <spam.protected>
15307
15308         * ltmain.m4sh (cwrappersource): clean up warnings and
15309         #include errors on MinGW.
15310
15311 2004-11-01  Peter Ekberg  <spam.protected>
15312
15313         * config/ltmain.m4sh (cwrappersource): clean up warnings and
15314         #include errors.
15315
15316 2004-11-01  Peter Ekberg  <spam.protected>
15317
15318         Sometimes, a wrapper script is generated for an executable that,
15319         itself, does not link against an uninstalled library.  It appears
15320         that this can happen if you are building a project where:
15321
15322           (1) there is a library
15323           (2) there is an executable that does not, itself, link against
15324               that library
15325
15326         In this case, notinst_deplibs is empty, and when the wrapper
15327         script is loaded by libtool during ./libtool mode=install, there
15328         is a check for "is notinst_deplibs empty".  In this case, it is,
15329         so libtool reports an error.
15330
15331         I don't think it is wrong to have a wrapper script for an exe that
15332         *technically* doesn't need it.  But instead of checking for
15333         notinst_deplib nonempty as a proxy for "did wrapper script get
15334         sourced into my environment properly" a different var should be
15335         used.
15336
15337         * config/ltmain.m4sh (func_mode_install): set new variable
15338         `generated_by_libtool_version' in wrapper script when using
15339         libtool_install_magic.  When verifying that wrapper script was
15340         properly sourced, check that `generated_by_libtool_version' is
15341         non-empty, instead of using notinst_deplibs.
15342
15343 2004-11-01  Charles Wilson  <spam.protected>,
15344             Peter Ekberg  <spam.protected>
15345
15346         * config/ltmain.m4sh (func_mode_install): On Windows based hosts,
15347         ensure that import libraries don't get stripped.
15348         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): On Windows based hosts,
15349         use postinstall_cmds to strip DLL (not import lib!) when symbol
15350         stripped installation was requested.
15351
15352 2004-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15353
15354         * libltdl/ltdl.c (loader_init_callback): Back out broken cast.
15355
15356         * libltdl/ltdl.c (loader_init_callback, lt_dlexit): Add casts to
15357         target type.
15358
15359         * tests/defs.m4sh (func_exec): `shift'ing when there is nothing
15360         to shift is non-portable.
15361
15362 2004-10-28  Patrick Welche  <prlw1@newn.cam.ac.uk>,
15363             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15364
15365         * Makefile.am, Makefile.maint: Use path for dependencies built
15366         in the source tree, to cater for BSD make.
15367
15368 2004-10-24  Noah Misch  <noah@cs.caltech.edu>
15369
15370         * config/ltmain.m4sh (func_lalib_p, func_ltwrapper_p): New
15371         functions that abstract .la sanity checking.
15372         (func_mode_execute, func_mode_install, func_mode_link)
15373         (func_mode_uninstall): Use them.
15374
15375 2004-10-24  Gary V. Vaughan  <gary@gnu.org>
15376
15377         * config/ltmain.m4sh (opt_silent): Whether --silent was given.
15378         (run, show): Deleted.  All callers converted to opt_dry_run,
15379         opt_silent or calls to func_show_eval.
15380         * tests/mdemo-dryrun.test: Adjust.
15381
15382         * HACKING: Fix a typo in the gpg --verify instructions.
15383
15384         * Makefile.maint (cvs-dist): Generate signatures and directives
15385         for bz2 upload.
15386
15387 2004-10-23  Peter O'Gorman  <peter@pogma.com>
15388
15389         * config/ltmain.m4sh (func_mode_link): Make Gary's new tests
15390         pass. When the output wrapper script is not in the current
15391         directory, we can not use an rpath which is relative to the
15392         current directory. Use an absolute path instead.
15393
15394 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
15395
15396         * clcommit.m4sh: Add --rcfile option.
15397
15398         * clcommit.m4sh: Updated again, to support file list limited
15399         commits to CVS, and to fix another occurence of the bash bug
15400         that was preventing non-tla users from sending a commit mail.
15401
15402 2004-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15403
15404         * TODO, libltdl/lt_error.h, libltdl/ltdl.c, libltdl/ltdl.h:
15405         Undo accidental commit.
15406
15407         * Makefile.maint: Fix typo.
15408
15409 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
15410
15411         * clcommit.m4sh, config/mailnotify.m4sh: Updated from
15412         cvs-utils--tla--1.0 to fix quoting of metachars in patch names.
15413
15414         * HACKING: Updated: `.in' files are now `.m4sh'; document some
15415         more coding standards for these files.
15416
15417         * config/general.m4sh (sed_double_backslash): Undo an
15418         over-optimisation.
15419
15420 2004-10-21  Gary V. Vaughan  <gary@gnu.org>
15421
15422         * AUTHORS: Reformatted to better reflect the current state of
15423         Libtool maintainership.
15424         * THANKS: Reformatted to give maintainers a quick way to look
15425         up who has supplied FSF paperwork.
15426
15427 2004-10-21  Noah Misch  <noah@cs.caltech.edu>,
15428             Gary V. Vaughan  <gary@gnu.org>
15429
15430         * config/general.m4sh (sed_double_backslash): Improve this sed
15431         expression to correct left anchored \$ input to
15432         double_quote_subst, as well as backslash escaped $ preceded by
15433         any odd-numbered amount of \ characters.
15434
15435 2004-10-20  Gary V. Vaughan  <gary@gnu.org>
15436
15437         * config/general.m4sh (sed_double_backslash): New sed expression
15438         to escape \$ properly in combination with double_quote_subst.
15439         (func_quote_for_eval): Four space indent margin for functions!
15440         (func_quote_for_expand): Use $sed_double_backslash.
15441         (func_show_eval): New function that echos an escaped but variable
15442         expanded command, and then evaluates it.
15443
15444 2004-10-20  Noah Misch  <noah@cs.caltech.edu>,
15445             Gary V. Vaughan  <gary@gnu.org>
15446
15447         * m4/libtool.m4 (sed_quote_subst): Remove superfluous backslashes
15448         from the match character set.
15449         (double_quote_subst): Ditto.
15450         * config/general.m4sh (sed_quote_subst): Ditto.
15451         (double_quote_subst): New variable, copied from
15452         m4/libtool.m4. Much the same as sed_quote_subst, but variable
15453         references are not quoted.
15454         (func_quote_for_eval): Given any $foo; $bar and
15455         $foo must be identical after the following commands:
15456             func_quote_for_eval "$foo"
15457             eval "bar=$func_quote_for_eval_result"
15458         (func_quote_for_expand): In a similar vein to to func_quote_for_eval,
15459         except that variable expansions are not protected when quoting the
15460         command for subsequent display.
15461         * config/ltmain.m4sh: Factor away use of $sed_quote_subst now that
15462         it has been subsumed into func_quote_for_eval.
15463         (func_mode_link): Instead of `2004-10-14 Peter O'Gorman' below,
15464         use func_quote_for_expand so that ${wl} is expanded properly in
15465         the $show expression.
15466
15467 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
15468
15469         * config/ltmain.m4sh (func_mode_finish): solaris-2.6 also has
15470         crle(1).
15471         Reported by Albert Chin-A-Young <china@thewrittenword.com>
15472
15473 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
15474
15475         Add some new tests for Libtool's support of Automake
15476         subdir-objects builds.  This marks the beginning of a move to an
15477         Autotest driven test framework, which will eventually allow us to
15478         trim away many of the generated files in the current test demo
15479         subdirectories:
15480
15481         * configure.ac (AC_CONFIG_TESTDIR): Re-enable commented out
15482         Autotest macros.
15483         (AUTOTEST, M4SH): Use --language long hand.
15484         * bootstrap: Generate tests/testsuite, and by implication
15485         tests/package.m4.
15486         * Makefile.am (edit): Add substitutions needed to generate
15487         tests/package.m4 from bootstrap.
15488         (check-recursive): Add tests/testsuite.
15489         (TESTSUITE): The new Autotest testsuite target.
15490         (TESTSUITE_AT): The Autotest sources.
15491         (EXTRA_DIST): Distribute the generated testsuite and sources.
15492         (tests/package.m4): Use $(edit) to propagate package metadata to
15493         the new tests.
15494         (tests/testsuite): Build the testsuite.
15495         (tests/atconfig): How to regenerate the file.
15496         (check-local): Hook Autotest into `make check'.
15497         (installcheck-local): Run the testsuite on the installed tree.
15498         (clean-local): Tidy our file droppings.
15499         * tests/Makefile.am: Remove bitrotted code from Autotest
15500         experiments in Autoconf 2.52 era.  Updated the rest and moved into
15501         Makefile.am.
15502         * tests/testsuite.at: New container for Autotest test groups.
15503         * tests/am-subdir.at: New test group for compatibility with
15504         Automake's subdir-objects builds.  Currently holds two tests, one
15505         for a C project and another similar project in C++.
15506         * TODO: Add an entry to remind us that these new tests expose a
15507         bug in libtool.
15508         * NEWS: Updated.
15509
15510 2004-10-14  Peter O'Gorman  <peter@pogma.com>
15511
15512         * config/ltmain.m4sh: Revert most of my last commit, only eval
15513         \$show \"$cmds\", and only when building a library. I'm a wimp.
15514         Thanks Gary for pointing out errors in previous commit.
15515
15516 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
15517
15518         * config/ltmain.m4sh (func_mode_finish): Mention crle(1) on
15519         solaris 2.7 and higher in the finalisation notes.
15520         Reported by Kurt J. Lidl <lidl@pix.net>
15521
15522         * tests/cdemo-undef.test: New test for hosts that allow shared
15523         libraries with undefined symbols, but have no C++ compiler
15524         installed.
15525         * tests/Makefile.am (COMMON_TESTS): Add it.
15526
15527 2004-10-13  Peter O'Gorman  <peter@pogma.com>
15528
15529         * config/ltmain.m4sh: Make sure that we $show what we will $run,
15530         use eval $show if we do $run eval.
15531
15532 2004-10-13  Charles Wilson  <spam.protected>
15533
15534         * config/ltmain.m4sh: add foo/bin for every foo/lib
15535         in dllsearchpath when creating wrapper script.  Fixes
15536         depdemo-relink test failure.
15537
15538 2004-10-12  Charles Wilson  <spam.protected>
15539
15540         * config/ltmain.m4sh (func_mode_link): don't relink
15541         on cygwin/mingw; no need.  But do ensure that wrappers
15542         are created unless doing a purely static build.
15543
15544 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
15545
15546         * tests/tagdemo-undef.test: New test for hosts that allow shared
15547         libraries with undefined symbols.
15548         * tests/Makefile.am (CXX_TESTS): Add it.
15549
15550 2004-10-11  Charles Wilson  <spam.protected>
15551
15552         * tests/link.test: Fix check for use of libnlsut.a under
15553         Cygwin.
15554
15555 2004-10-11  Noah Misch  <noah@cs.caltech.edu>
15556
15557         * tests/quote.test: Do not look for $preargs in the output,
15558         because libtool may change them.
15559
15560 2004-10-10  Charles Wilson  <spam.protected>
15561
15562         * config/ltmain.m4sh: Really don't require versions of GNU
15563         sed newer than 3.02 for Cygwin and MinGW, and don't break
15564         dryrun mode.
15565
15566 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15567
15568         * config/getopt.m4sh: Under MinGW, reported paths may include ':'
15569         so ':' should not be used as the sed delimiter.  Use '*' instead
15570         since it is very unlikely to appear in a path.
15571
15572 2004-10-10  Albert Chin-A-Young  <china@thewrittenword.com>
15573
15574         * config/ltmain.m4sh: Don't require versions of GNU sed newer than
15575         3.02 for Cygwin and MinGW.
15576
15577 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15578
15579         * tests/pdemo-inst.test: Correction for mis-application of
15580         Charles Wilson's earlier patch.
15581
15582 2004-10-09  Gary V. Vaughan  <gary@gnu.org>
15583
15584         * m4/libtool.m4 (_LT_LANG_F77_CONFIG): Make sure the save and
15585         restore code for CC is nested at the same depth.
15586         (_LT_LANG_CXX_CONFIG): Ditto, but for several variables.
15587
15588 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15589
15590         Update to the latest commit and mailnotify scripts from
15591         gary@gnu.org--2004/cvs-utils--tla--1.0:
15592
15593         * commit, config/mailnotify: Removed.  Now built from...
15594         * clcommit.m4sh, config/mailnotify.m4sh: ...these new sources.
15595         * Makefile.maint (commit, config/mailnotify): How to build them.
15596         * bootstrap: If we have a checked out tree (i.e. clcommit.m4sh
15597         is present), then build them.
15598
15599 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15600
15601         Fix some issues that mangled the reexecution path to a script,
15602         and thus prevented it from finding itself:
15603
15604         * config/general.m4sh (progname): Don't actually change the name
15605         of the script if it begins with a `-', just prepend `./'.
15606         (progpath): Add a new clause that first searches the execution
15607         PATH, and then finally assumes this script is in the current
15608         working directory if $progname has no directory separators (e.g
15609         when invoked as `$SHELL progname').
15610
15611 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15612
15613         * config/general.m4sh (func_verbose): Work around a bash bug in
15614         shell functions.
15615
15616 2004-10-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
15617
15618         * tests/pdemo-inst.test: pdemo-inst should depend on pdemo-make.
15619         * config/ltmain.m4sh: Windows and Cygwin reserve the .lnk
15620         extension to represent shortcuts.  Use the extension ".lnkscript"
15621         rather than ".lnk" for the piecewise linking ld script in order to
15622         avoid the conflict.
15623
15624 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15625
15626         * libltdl/ltdl.c (lt_dlexit, lt_dlpath_insertdir): Fix memleaks,
15627         free user_search_path on lt_dlexit.
15628
15629 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15630
15631         * tests/sh.test: Remove tests which fail on AS_SHELL_SANITIZE
15632         from autoconf >= 2.59.
15633
15634         * TODO: Remove item: no need for a libltdl without stdio.
15635
15636 2004-10-07  Gary V. Vaughan  <gary@gnu.org>
15637
15638         * tests/defs.m4sh (scripts): Actually scan the generated ltmain.sh
15639         for shell portability problems.
15640
15641         * m4/libtool.m4 (_LT_FORMAT_COMMENT): Shell meta-characters in
15642         _LT_DECL descriptions were not being escaped before injection into
15643         TAG CONFIG here documents in config.status.
15644
15645 2004-10-06  Peter O'Gorman  <peter@pogma.com>
15646
15647         * m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77): New macros to work
15648         around the deficiencies in AC_PROG_CXX and AC_PROG_F77.
15649         * configure.ac: Cleaned up, having moved the checks for compilers
15650         which do not exist to libtool.m4.
15651
15652 2004-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15653
15654         * libltdl/ltdl.c (try_dlopen): Move .la file parsing
15655         part.. (parse_dotla_file): ..here.  Adjust.
15656
15657         * libltdl/ltdl.c (load_deplibs, try_dlopen): Revert unnecessary casts
15658         to int from my patch from 2004-10-01.
15659
15660         * AUTHORS: Add myself.
15661
15662 2004-10-05  Peter O'Gorman  <peter@pogma.com>
15663
15664         * config/ltmain.m4sh [darwin]: Make the -dylib_file flag work on
15665         older darwins too. Reported by Christoph Egger.
15666
15667 2004-10-05  Gary V. Vaughan  <gary@gnu.org>
15668
15669         * configure.ac: Bumped version to 2.1a.
15670
15671 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
15672
15673         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Don't confuse $ECHO
15674         with $lt_ECHO, or we always get a libtool with ECHO=echo, rather
15675         than testing for a mechanism that quotes \ properly.
15676         * NEWS: Updated.
15677
15678         * config/ltmain.m4sh: Need to include getopt.m4sh earlier so that
15679         progpath is set before it is called to --no-reexec.
15680         * NEWS: Updated.
15681
15682 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
15683
15684         Without this change, the distributed libtool tarball has a
15685         dependency on autom4te.  There was some inconsistency in the
15686         filenames: now we have foo.m4sh -> m4sh -> foo.in -> configure
15687         -> foo[.sh].  Bootstrap runs the m4sh steps and the resulting .in
15688         files are distributed:
15689
15690         * tests/Makefile.am (EXTRA_DIST): Distribute defs.m4sh.
15691         * Makefile.am (EXTRA_DIST): Distribute libtoolize.m4sh.
15692         (libtoolize.in, libtoolize): Split into bootstrap and runtime
15693         stages.
15694         ($(top_srcdir)/tests/defs.in, $(top_srcdir)/tests/defs): Ditto.
15695         ($(top_srcdir)/config/ltmain.sh): Swap ltmain.m4sh and ltmain.in
15696         names.
15697         * bootstrap: Make libtoolize.in and tests/defs.in.
15698         * NEWS: Updated.
15699
15700 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15701
15702         * README, README.alpha: Update notes regarding available VERBOSE
15703         settings.
15704
15705 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15706
15707         * config/ltmain.in: Change $XSED to $Xsed to fix hang noticed
15708         under MinGW.
15709         * tests/defs.in: Support VERBOSE=debug to enable shell tracing
15710         while running tests.
15711
15712 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
15713
15714         * NEWS: Updated.
15715         * configure.ac: Bumped version to 1.9e.
15716
15717         GNU libtool 1.9d was released.
15718
15719         * configure.ac: Bumped version to 1.9d.
15720         * NEWS: Updated.
15721
15722         * libltdl/lt__alloc.h (lt__alloc_die): Declare with LT_SCOPE as
15723         per Ralf's original patch.
15724         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15725
15726         * libltdl/Makefile.am (libltdlc_la_LIBADD): Don't use
15727         libdlloader_la_OBJECTS, an undocumented Automake internal
15728         variable...
15729         (libltdlc_la_SOURCES): ...use libdlloader_la_SOURCES here
15730         instead.
15731         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15732
15733         * libltdl/argz_.h: Forgot to spell lt_system.h with just one `_'.
15734
15735         * libltdl/argz_.h: Forgot to include lt__system.h for LT_SCOPE
15736         definition.
15737
15738 2004-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
15739             Gary V. Vaughan  <gary@gnu.org>
15740
15741         * libltdl/lt__alloc.h: Declare exported functions with LT_SCOPE
15742         for mingw32.
15743         * libltdl/lt__dirent.h: Ditto.
15744         * libltdl/argz._h: Ditto.  Be careful about not requiring
15745         additional libltdl files when used outside of libltdl.
15746         * libltdl/slist.h: Ditto.
15747         * HACKING: Add a section on libltdl implementation layering.
15748
15749 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
15750
15751         * tests/quote.test: echo is called ECHO now.  Make sure we extract
15752         the value of ECHO from the libtool script.
15753         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15754
15755 2004-10-02  Gary V. Vaughan  <gary@gnu.org>
15756
15757         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7*]: Revert my
15758         hack from 2004-09-30 now that I've removed /lib/hello.la and the
15759         tests work properly for me again.
15760
15761 2004-10-02  Jim Tison  <jtison@us.ibm.com>
15762
15763         Initial support for s390x-ibm-tpf:
15764
15765         * m4/libtool.m4: Correct obvious spelling errors in remarks.
15766         (_LT_ENABLE_LOCK): Make s390x-ibm-tpf hosts adopt elf64_s390
15767         conventions.
15768         (_LT_SYS_DYNAMIC_LINKER): Set defaults for s390x-ibm-tpf host.
15769         (_LT_CHECK_MAGIC_METHOD): Skip all dependency checks for
15770         s390x-ibm-tpf hosts.
15771         (_LT_LINKER_SHLIBS): Make s390x-ibm-tpf hosts adopt GNU/Linux OS
15772         attributes.
15773         * NEWS: Updated.
15774
15775 2004-10-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15776
15777         * config/ltmain.in (func_mode_install): Need to set $tmpdir before
15778         using it.
15779
15780         * config/ltmain.in (func_mode_link): Fix quoting bug.  Fixes
15781         e.g. the quoting of the -export-symbols-regex argument in .la
15782         files' relink_command.
15783
15784         * libltdl/lt__alloc.c (lt__memdup): Allocation can fail, so we
15785         need to guard against null pointer dereference here.
15786         * libltdl/ltdl.c (lt_dlcaller_register): Ditto.
15787
15788         * libltdl/slist.c (slist_foreach): result was declared as
15789         inner variable, shadowing the actually returned value.
15790
15791         * libltdl/ltdl.c (load_deplibs, try_dlopen): Cast argument
15792         to isspace/isalnum to the correct range.  Also, cast to int to
15793         avoid compiler warnings.
15794
15795 2004-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15796
15797         * libltdl/ltdl.c (try_dlopen): Fix null pointer dereference in
15798         case the name given to lt_dlopen contains no extension.
15799
15800         * libltdl/lt_dlloader.c (lt_dlloader_remove), libltdl/ltdl.c
15801         (tryall_dlopen, lt_dlhandle_next): Show usage of function pointers.
15802
15803         * doc/libtool.texi (LT_INIT, Using libltdl)
15804         (Module loaders for libltdl, Multiple dependencies)
15805         (libtool script contents): Fix several typos (trivial change).
15806         Also, libltdl consists of more than two small files.
15807
15808 2004-09-30  Gary V. Vaughan  <gary@gnu.org>
15809
15810         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7]: My Panther
15811         workstation doesn't hardcode the shared library path, although it
15812         used to, so this is more likely a function of the binutils and/or
15813         gcc I am using at the moment.  The hardcode value setting code for
15814         the configure script sucks at the moment though...
15815         * TODO: ...and needs to do a test compile instead of a table
15816         lookup before 2.0 final.
15817
15818         * m4/libtool.m4 (echo): Use ECHO throughout for consistency with
15819         config/ltmain.in.
15820         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15821
15822         * m4/libtool.m4 (rm): Use RM throughout for consistency with
15823         config/ltmain.in.
15824         Reported by Charles Wilson <cwilson@spam.protected>
15825
15826 2004-09-27  Peter O'Gorman  <peter@pogma.com>
15827
15828         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
15829         output during configure. (Really this time, honest)
15830
15831 2004-09-26  Albert Chin-A-Young  <china@thewrittenword.com>
15832
15833         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [aix]: In archive_expsym_cmds,
15834         move -bnoentry linker option before $compiler_flags to honor any
15835         possible -e entries in LDFLAGS.
15836
15837 2004-09-25  Gary V. Vaughan  <gary@gnu.org>
15838
15839         * config/ltmain.in (func_mode_link): When linking an installed
15840         libtool library on the command line using -lfoo we need to find
15841         the library in the search paths and add it's dependency_libs to
15842         the link in the conv pass so that any libtool libs listed are
15843         correctly expanded in the link pass.
15844
15845 2004-09-24  Charles Wilson  <cwilson@spam.protected>
15846
15847         * libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Revert changeset from
15848         `2004-09-22  Charles Wilson  <cwilson@spam.protected>'.
15849
15850 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
15851
15852         * config/general.m4sh (Xsed): Set a default when not used from
15853         ltmain.in.
15854         (ECHO): Audit for (and correct!) uses of $ECHO with more than one
15855         argument, which breaks when ECHO='printf %s\n', and with possible
15856         `-' as first character of the argument, which breaks `print -r'
15857         and some implementations of `echo'.
15858         * config/ltmain.in, tests/defs.in, libtoolize.in (ECHO): Ditto.
15859         Reported by Albert Chin-A-Young <china@thewrittenword.com>
15860
15861 2004-09-24  Peter O'Gorman  <peter@pogma.com>
15862
15863         * m4/libtool.m4 (_LT_CMD_STRIPLIB) [darwin]: strip archives too.
15864
15865         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
15866         output during configure.
15867
15868 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
15869
15870         * m4/libtool.m4 (_LT_DECL_EGREP): Only the newest CVS autoconf
15871         AC_SUBSTs for GREP.  Do our own here too to cater for release
15872         autoconfen.
15873
15874         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [openbsd3.3]: Set
15875         need_version to yes or no depending on the os release.
15876         Reported by Dalibor Topic <robilad@kaffe.org>
15877
15878 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
15879
15880         * tests/cdemo-conf.test, tests/cdemo-exec.test,
15881         tests/cdemo-make.test, tests/cdemo-shared.test,
15882         tests/cdemo-static.test, tests/demo-conf.test,
15883         tests/demo-deplibs.test, tests/demo-exec.test,
15884         tests/demo-hardcode.test, tests/demo-inst.test,
15885         tests/demo-make.test, tests/demo-nofast.test,
15886         tests/demo-noinst-link.test, tests/demo-nopic.test,
15887         tests/demo-pic.test, tests/demo-relink.test,
15888         tests/demo-shared.test, tests/demo-static.test,
15889         tests/demo-unst.test, tests/depdemo-conf.test,
15890         tests/depdemo-exec.test, tests/depdemo-inst.test,
15891         tests/depdemo-make.test, tests/depdemo-nofast.test,
15892         tests/depdemo-relink.test, tests/depdemo-shared.test,
15893         tests/depdemo-static.test, tests/depdemo-unst.test,
15894         tests/f77demo-conf.test, tests/f77demo-exec.test,
15895         tests/f77demo-make.test, tests/f77demo-shared.test,
15896         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
15897         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
15898         tests/mdemo-exec.test, tests/mdemo-inst.test,
15899         tests/mdemo-make.test, tests/mdemo-shared.test,
15900         tests/mdemo-static.test, tests/mdemo-unst.test,
15901         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
15902         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
15903         tests/pdemo-exec.test, tests/pdemo-inst.test,
15904         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
15905         tests/suffix.test, tests/tagdemo-conf.test,
15906         tests/tagdemo-exec.test, tests/tagdemo-make.test,
15907         tests/tagdemo-shared.test, tests/tagdemo-static.test,
15908         tests/tagtrace.test: POSIX `.' searches only in user's $PATH, so
15909         we must use `. ./defs' to source the common code.
15910         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
15911
15912         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Gah.  Merge error
15913         corrected.
15914
15915 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
15916
15917         Since defs can change (path to grep for example) when it is made
15918         for a different host, it can't be shipped.  That also means that
15919         defs will always be generated in the build tree, so each test case
15920         can have the srcdir discovery factored away into tests/defs.in:
15921
15922         * Makefile.am (EXTRA_DIST): s/defs/defs.in/g
15923         * tests/Makefile.am (defs): New rule to remake defs from the
15924         parent directory's Makefile.
15925         * tests/cdemo-conf.test, tests/cdemo-exec.test,
15926         tests/cdemo-make.test, tests/cdemo-shared.test,
15927         tests/cdemo-static.test, tests/demo-conf.test,
15928         tests/demo-deplibs.test, tests/demo-exec.test,
15929         tests/demo-hardcode.test, tests/demo-inst.test,
15930         tests/demo-make.test, tests/demo-nofast.test,
15931         tests/demo-noinst-link.test, tests/demo-nopic.test,
15932         tests/demo-pic.test, tests/demo-relink.test,
15933         tests/demo-shared.test, tests/demo-static.test,
15934         tests/demo-unst.test, tests/depdemo-conf.test,
15935         tests/depdemo-exec.test, tests/depdemo-inst.test,
15936         tests/depdemo-make.test, tests/depdemo-nofast.test,
15937         tests/depdemo-relink.test, tests/depdemo-shared.test,
15938         tests/depdemo-static.test, tests/depdemo-unst.test,
15939         tests/f77demo-conf.test, tests/f77demo-exec.test,
15940         tests/f77demo-make.test, tests/f77demo-shared.test,
15941         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
15942         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
15943         tests/mdemo-exec.test, tests/mdemo-inst.test,
15944         tests/mdemo-make.test, tests/mdemo-shared.test,
15945         tests/mdemo-static.test, tests/mdemo-unst.test,
15946         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
15947         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
15948         tests/pdemo-exec.test, tests/pdemo-inst.test,
15949         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
15950         tests/suffix.test, tests/tagdemo-conf.test,
15951         tests/tagdemo-exec.test, tests/tagdemo-make.test,
15952         tests/tagdemo-shared.test, tests/tagdemo-static.test,
15953         tests/tagtrace.test: Removed srcdir discovery boilerplate...
15954         * tests/defs.in: ...and put it here.
15955
15956 2004-09-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15957
15958         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): move symcode calculation
15959         to correct place.
15960         * doc/libtool.texi (libtool script contents): update description
15961         of global_symbol_to_cdecl.
15962
15963 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
15964
15965         * configure.ac (M4SH): AC_SUBST m4sh expander.
15966         * config/general.m4sh, config/getopt.m4sh: New files with factored
15967         out functionality from...
15968         * config/ltmain.in, libtoolize.in: ...here.  m4_include the shared
15969         code, and call AS_SHELL_SANITIZE.  Also quote all `[' and `]' to
15970         survive m4 run.
15971         (func_serial): No need to double up m4sh quotes after a `#'.
15972         (func_check_macros): Escape `dnl' to stop m4sh interpreting it as
15973         a macro.
15974         * tests/defs.in: New file expanded into tests/defs by autom4te.
15975         * m4/libtool.m4 (_LT_DECL_EGREP): Also require fgrep for the tests
15976         that use it.
15977         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Now built with
15978         M4SH.
15979         (libtoolize): Ditto.
15980         * bootstrap: Set M4SH for call to make.
15981         * HACKING: No need to sync to AS_SHELL_SANITIZE by hand any more.
15982
15983         * m4/libtool.m4: _LT_DECL uppercase ECHO.
15984         * config/ltmain.in: Use it throughout.
15985         (func_mkdir_p): Now matches the other implementations in
15986         tests/defs and libtoolize.in.
15987         * tests/sh.test: Updated to detect ECHO misuse.
15988
15989 2004-09-22  Gary V. Vaughan  <gary@gnu.org>
15990
15991         * config/ltmain.in (func_mode_link): Propagate a convenience
15992         library's dependency libs correctly when it is being linked into a
15993         libtool library.  Deplibs are now propagated whether libdir is set
15994         or not.
15995
15996 2004-09-22  Andreas Schwab  <schwab@suse.de>
15997
15998         The dlpreopen pass over libraries reverses the elements in the
15999         $deplibs list.  This causes problems when the link pass tries to
16000         find libraries when they are located in non-standard places
16001         denoted by -L options.  Due to the reversed order these -L options
16002         occur after the libraries that need them, and they are not found:
16003
16004         * config/ltmain.in: (Un)Reverse $deplibs list at the start of the
16005         link pass in lib mode.
16006
16007 2004-09-22  Charles Wilson  <cwilson@spam.protected>
16008
16009         * ltmain.in (func_generate_dlsyms) [cygwin, mingw]: when creating
16010         a .exp file for an executable, also create a .def file, and add
16011         that file to the link command via SYMFILES.  This causes binutils
16012         to generate an .edata section, and allows self dlopening to work.
16013         * NEWS: Updated.
16014
16015         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better quoting for
16016         postinstall_cmds and postuninstall_cmds to allow spaces in install
16017         paths.
16018
16019         * config/ltmain.in (func_generate_dlsyms): Addresses in
16020         _preloaded_symbols[] cannot go into .rdata section if symbols are
16021         DATA imported from DLL, on windows, because runtime relocations
16022         must happen.
16023         * m4/libtool.m4 (_LT_LINKER_SHLIBS([TAGNAME])): Build exports for
16024         symbols in .rdata sections.
16025
16026 2004-09-19  Gary V. Vaughan  <gary@gnu.org>
16027
16028         The checks in assign.test are trying to catch case of this ilk:
16029         `foo=bar break', but unfortunately they also choke on `foo=bar;
16030         break' and `foo=bar && break'.  Writing a sophisticated test to
16031         catch just the intended case seems like more trouble than it's
16032         worth, but leaving the test in causes the testsuite to fail on
16033         valid m4sh output:
16034
16035         * tests/assign.test: Removed; chokes on perfectly valid shell
16036         syntax.
16037         * tests/Makefile.am (COMMON_TESTS): Remove assign.test.
16038         * tests/defs.in (scripts): Don't check the m4sh inputs, go back
16039         to checking the generated ltmain.sh script.
16040
16041 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
16042
16043         * config/ltmain.in (func_echo): Except for multi-line warnings and
16044         errors, always use func_echo.  $show is for command output, and
16045         $echo is for internal use in backtick expressions and similar.
16046
16047 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
16048
16049         Missed a couple of MKDIR_P references in ltmain.in in my last
16050         patch; fix them carefully.  Introduce an opt_dry_run to ltmain.in
16051         so that the implementations of func_mkdir_p can converge, and a
16052         func_mktempdir to do a better job of temporary directory creation:
16053
16054         * libtoolize.in (func_mkdir_p): Don't fail if the directory wasn't
16055         created in dry run mode.
16056         * tests/defs (func_mkdir_p): Ditto.  We don't actually have a dry
16057         run mode for the tests, but the function is written carefully to
16058         be kept in synch and work correctly here too.
16059         * config/ltmain.in (func_mkdir_p): Ditto.  This copy of the
16060         function now only differs in its use of $echo over $ECHO.
16061         (func_extract_archive): Removed first redundant mkdir call.
16062         (func_mktempdir): New function that tries to avoid races when
16063         making temporary directories.
16064         (opt_dry_run): Set this if --dry-run is given at the CLI, or if
16065         tests/mdemo-dryrun.test has forced the value of $run.
16066         (func_mode_install): Call $MKDIR directly and error out if the
16067         directory cannot be created.
16068         (func_mode_link): Rather than copying func_mkdir_p into the
16069         wrapper script as a replacement for $MKDIR_P, we know that the
16070         script won't be called my `make -j', so write the current value of
16071         $MKDIR.
16072
16073 2004-09-17  Peter O'Gorman  <peter@pogma.com>
16074
16075         * m4/libtool.m4: remove an extra "]"
16076
16077         * m4/libtool.m4 [darwin] (_LT_LANG_CXX_CONFIG): Changes for 10.4.
16078         * config/libtool.in [darwin]: ditto.
16079
16080 2004-09-16  Gary V. Vaughan  <gary@gnu.org>
16081
16082         My most recent `2004-09-02 Gary V. Vaughan' patch for mkdir_p
16083         below is horrendously broken since it makes the installed libtool
16084         try to run the mkinstalldirs or install-sh helper scripts.  This
16085         patch fixes the `make -j' mkdir race condition internally:
16086
16087         * libtoolize.in (func_mkdir_p): New slice and dice algorithm
16088         to build the directory tree one dir at a time, ignoring errors
16089         until the end incase they are transient due to a concurrent
16090         identical mkdir.
16091         * tests/defs (func_mkdir_p): Ditto.
16092         * config/ltmain.in (func_mkdir_p): Ditto, except that ltmain.in
16093         uses $echo rather than $ECHO, and uses $show and $run to interact
16094         correctly with the command line.
16095         * configure.ac (AM_INIT_AUTOMAKE): 1.8 is sufficient again.
16096         * Makefile.am (edit): Don't substitute automake's $(mkdir_p).
16097         * NEWS: Updated.
16098
16099 2004-09-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
16100
16101         * libltdl/loaders/loadlibrary.c: Compilation fixes (originally
16102         from Gary V. Vaughan) to compile under MinGW.
16103         * config/mkstamp: Translate input data so that it is assured to
16104         use the Unix line terminations. This is necessary under Windows if
16105         the files are checked out with CR/NL line terminations. A
16106         side-effect of this change is that input must always be from
16107         stdin. Previously a filename argument was accepted as well.
16108
16109 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16110
16111         * tests/Makefile.am: Use the same CPP, F77, CXX and CXXFLAGS
16112         for the test suite.
16113
16114 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16115
16116         * m4/libtool.m4 (_LT_ENABLE_LOCK):Replace AC_TRY_LINK with
16117         AC_LINK_IFELSE to get rid of `autoconf -Wobsolete' warning.
16118         * m4/ltdl.m4 (LT_LIB_DLLOAD): Ditto.
16119
16120 2004-09-15  Gary V. Vaughan  <gary@gnu.org>
16121
16122         * config/ltmain.in (func_quote_for_eval): Set a return value to
16123         avoid forking at every call.  Changed all callers.
16124         (func_mode_link): Simplified, and removed the final non-portable
16125         nested escaped double quotes in back quotes usage in the process.
16126
16127 2004-09-14  Gary V. Vaughan  <gary@gnu.org>
16128
16129         * config/ltmain.in (func_quote_for_eval): Factor out the ugly
16130         shell meta-character quoting.  Changed all callers.
16131
16132 2004-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16133
16134         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Simplification:
16135         distinguish between data and code symbols on every system.
16136
16137 2004-09-14  Albert Chin-A-Young  <china@thewrittenword.com>
16138
16139         Unfortunately, libtool has no way of telling if unrecognized
16140         compiler flags need an argument or not, and can disect options and
16141         pass parts through incorrectly.  This changeset reverts both
16142         2004-09-06 Albert Chin-A-Young (topmost) and 2004-09-05 Albert
16143         Chin-A-Young below, and recognises more options explicitly:
16144
16145         * config/ltmain.in (func_mode_link): Pass through options needed
16146         to compile in 64-bit mode with gcc, and the SGI, Sun, HP and IBM
16147         compilers.
16148
16149 2004-09-13  Gary V. Vaughan  <gary@gnu.org>
16150
16151         * m4/libtool.m4 (_LT_CMD_GLOBALS_SYMBOLS): Fix a typo I made when
16152         applying 2004-09-11 Ralf Wildenhues.
16153
16154 2004-09-12  Brad  <brad@comstyle.com>
16155
16156         * libtool.m4: Fixes for the OpenBSD support
16157
16158 2004-09-12  Peter O'Gorman  <peter@pogma.com>
16159
16160         Our fortran tests were not very good. All the libraries created
16161         were convenience libs, so we did not test the creation of shared
16162         libraries on any platform. Also none of the libs used any actual
16163         fortran library calls, adding a call to write(*,*) in each lib
16164         causes the tests to fail on darwin (and presumably other platforms).
16165         These new tests would likely cause many more fortran test failures,
16166         so if there is an error during make it is reported as SKIP.
16167
16168         * tests/f77demo-make.test: Don't fail hard, skip on failure.
16169         * tests/f77demo/foof2.f: New file.
16170         * tests/f77demo/foof3.f: New file.
16171         * tests/f77demo/fprogram.f: Call routine in new lib.
16172         * tests/f77demo/foof.f: Call routine in another new lib.
16173         * tests/f77demo/Makefile.am: Make a couple of new libraries, add
16174         $(FLIBS) to cprogram LDADD.
16175
16176 2004-09-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16177
16178         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): The linker distinguishes
16179         data and code symbols on linux-gnu/ia64.  Fixes multiple testsuite
16180         failures.
16181         * NEWS: Updated.
16182
16183 2004-09-06  Gary V. Vaughan  <gary@gnu.org>
16184
16185         * libltdl/loaders/shl_load.c (get_vtable): Typo.
16186
16187 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
16188
16189         Hopefully, passing unrecognised compiler arguments through
16190         unmolested will prove to be a good plan for the 2.0 release.  If
16191         it goes awry, we can get back to where we were by reverting this
16192         patch and the 2004-09-05 Albert Chin-A-Young patch, aka
16193         gary@gnu.org--2004/libtool--devo--1.0--patch-169,172:
16194
16195         * config/ltmain.in (func_mode_link): Because we now pass through
16196         compiler arguments we doesn't recognize, the code to pass
16197         through GCC's -m* arguments is not needed.
16198
16199 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
16200
16201         * Makefile.am (clean-ltmain-sh): Using '==' to test for equality
16202         in a shell script is not portable. Use '=' instead.
16203
16204 2004-09-05  Andreas Schwab  <schwab@suse.de>
16205
16206         * m4/ltdl.m4 (LT_WITH_LTDL): Remove excess quoting in argument of
16207         AC_CONFIG_SUBDIRS.
16208
16209 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
16210
16211         * config/ltmain.in (func_mode_link): Pass otherwise unrecognised +
16212         and - style switches to the compiler.
16213         * NEWS: Updated.
16214
16215 2004-09-05  Gary V. Vaughan  <gary@gnu.org>
16216
16217         * Makefile.am (libtool): Force libtool to be regenerated if
16218         stamp-vcl has changed.
16219
16220 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
16221
16222         * m4/libtool.m4, config/ltmain.in: When calling $LTCC,
16223         pass default $CFLAGS through with $LTCFLAGS.
16224
16225 2004-09-03  David Edelsohn  <dje@watson.ibm.com>
16226
16227         * config/ltmain.in (func_mode_link): Use $pic_object as
16228         $non_pic_object if $non_pic_object=none.
16229         * NEWS: Updated.
16230
16231 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
16232
16233         * bootstrap: Remember that the ltmain.sh generated by bootstrap
16234         is missing most of its substitution values, so force it to be
16235         rebuilt at make time by touching $(top_srcdir)/config/ltmain.in.
16236
16237         From Martin Quinson <mquinson@ens-lyon.fr>
16238         * m4/libtool.m4 (_LT_SETUP, _LT_ENABLE_LOCK, LT_PATH_LD): Use
16239         AS_HELP_STRING to get rid of autoconf -Wobsolete warning
16240         messages.
16241         * m4/ltdl.m4 (LT_WITH_LTDL, _LT_ENABLE_INSTALL): Ditto.
16242         * m4/ltoptions.m4 (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC)
16243         (_LT_ENABLE_FAST_INSTALL, _LT_WITH_PIC): Ditto.
16244         * TODO: Updated
16245
16246 2004-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16247
16248         * libltdl/slist.c (slist_cons): Don't leak the tail of a list.
16249
16250 2004-09-03  Albert Chin-A-Young  <china@thewrittenword.com>
16251
16252         * m4/libtool.m4 (_LT_ENABLE_LOCK): Reformatted.
16253
16254 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
16255
16256         * HACKING: Explain how to verify detached signatures with gpg in
16257         the release announcement templates.
16258
16259         * AUTHORS: Fix typo in my address.
16260
16261 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
16262
16263         Builds of packages that use libtool and make -j produce "directory
16264         already exists warnings" for .lib directory.  Build on automake
16265         wisdom to support make -j builds where a suitable mkdir is
16266         available:
16267
16268         * configure.ac (AM_INIT_AUTOMAKE): Require 1.9, which goes to some
16269         trouble to find a $(mkdir_p) that doesn't interfere with make -j.
16270         * Makefile.am (edit): Substitute for @mkdir_p@.
16271         * config/ltmain.in (MKDIR_P): Take @mkdir_p@ value.
16272         (mkdir): Removed.
16273         (func_mkdir_p): New function to use $MKDIR_P.  Factor out all
16274         previous mkdir calls to use this function.
16275         (RM, MV): Declared as in libtoolize.in.  Changed all callers.
16276         * libtoolize.in (MKDIR_P): Take @mkdir_p@ value from automake.
16277         (func_mkdir_p): Use it, similarly to new config/ltmain.in.
16278         * tests/defs: Synchronize boiler plate code with ltmain.in.
16279         Adjust all callers.
16280         Add missing copyright preamble.
16281         * tests/demo-static.test: Add missing copyright preamble.
16282         * NEWS: Updated.
16283         Reported by Daniel Reed <n@ml.org>
16284
16285 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
16286
16287         * Makefile.am (clean-ltmain-sh): Quote $(top_builddir) for the
16288         shell, incase it is not set when running maintainer rules with
16289         `make -fMakefile.maint'.
16290         Don't show the shell commands.
16291
16292         * AUTHORS: Fix my email address.
16293
16294 2004-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16295
16296         * libltdl/ltdl.c (try_dlopen): Fix memory leak.
16297         * NEWS: Updated.
16298
16299 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
16300             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16301
16302         * libltdl/slist.c, libltdl/slist.h: Merge in changes from latest
16303         upstream.  Mostly comments, formal item boxing, a sort function,
16304         and const madness reduction.
16305         (slist_new): Removed.
16306         (slist_box, slist_unbox, slist_sort): New.
16307         (SListCompare, SListCallback): Swapped!
16308         (slist_remove, slist_find): Change order of parameters for
16309         orthogonality with slist_foreach.  Changed all callers.
16310         * libltdl/lt_dlloader.c (loader_cmp): Renamed to...
16311         (loader_callback): ...this.  Return boxed item.
16312         (lt_dlloader_remove): Adjust to new loader_callback semantics;
16313         unbox each removed item before returning.
16314         Remove unused variable.
16315         Remove const from name parameter, since the slist API cannot
16316         guarantee userdata const-ancy for its callback functions.
16317         (lt_dlloader_find): Adjust to new loader_callback semantics; need
16318         to return the contents of the boxed item.
16319         Remove const from name parameter, since the slist API cannot
16320         guarantee userdata const-ancy for its callback functions.
16321         * libltdl/lt_dlloader.h (lt_dlloader_find, lt_dlloader_remove):
16322         Adjust to new constless footprint.
16323         * libltdl/ltdl.c (ltdl_exit): The global `loaders' list is changed
16324         by `lt_dlloader_remove' while cleaning up, so the address in local
16325         variable `loader' is invalidated.  Since some loaders may be
16326         resident modules that cannot be unloaded (though we have none
16327         yet), we must save each `next' address before calling
16328         `lt_dlloader_remove'.
16329         * NEWS: Updated.
16330         * THANKS: Added Ralf.
16331
16332 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16333
16334         * libltdl/lt_dlloader.c (lt_dlloader_add): Handle malloc failure
16335         from slist_new.
16336         * libltdl/ltdl.c (loader_init): Trust lt_dlloader_add(), don't
16337         overwrite its error type, and simplify.
16338         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16339
16340 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16341
16342         * libltdl/slist.c (slist_new): Handle malloc failure gracefully.
16343
16344 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16345
16346         * libtoolize.in, config/ltmain.in: Add CDPATH protection to
16347         preamble.
16348         * tests/defs: Put a full m4sh.m4 style 'Be Bourne compatible'
16349         preamble in here too.
16350         * HACKING: Note that tests/defs needs synching with m4sh.m4 too.
16351         * TODO: Add new item.
16352
16353         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Use correct cpp
16354         macro name, LT_DLSEARCH_PATH.
16355
16356         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Fix gcc parentheses
16357         warning.
16358         (foreach_dirinpath, try_dlopen, lt_dlpath_insertdir): Fix gcc
16359         signed vs unsigned warning.
16360         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
16361
16362         * m4/libtool.m4 (_LT_PROG_LTMAIN): Simplified in light of
16363         ltmain.sh no longer being in the build tree.
16364         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16365
16366 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16367
16368         * libltdl/loaders/preopen.c: Initialise memory in get_vtable.
16369
16370         * tests/sh.test: Look in the source tree for ltmain.sh.
16371
16372 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16373
16374         Don't use C99 flexible array types as we want to be C89
16375         compatible.  Instead, revert to the old way of doing things with
16376         an array of symbol name vs. address, and adding the originator as
16377         the first symbol but with a NULL address:
16378
16379         * config/ltmain.in (func_extract_dlsyms): Store originator as a
16380         NULL address symbol.
16381         * libltdl/ltdl.h (lt_dlsymbol): Removed.
16382         (lt_dlsymlist): Remove originator field.
16383         (LTDL_SET_PRELOADED_SYMBOLS): Adjust.
16384         * libltdl/loaders/preopen.c (vm_open, lt_dlpreload_open): Adjust
16385         for new types.
16386         (vm_sym): Skip the new originator symbol when scanning symbol
16387         names.
16388         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust preloaded symbols
16389         test file to match.
16390         * NEWS: Updated.
16391         Reported by Andreas Schwab <schwab@suse.de>
16392
16393 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16394
16395         Libtool currently assumes that certain characteristics, such as
16396         enable_shared, apply to the host architecture rather than per-
16397         language.  Running the tests over a broken compiler can corrupt
16398         these values, when there is no C++ compiler for example, so we
16399         skip most of the tests in those cases.
16400
16401         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): If caught_CXX_compiler was
16402         set from configure.ac, then don't run all the compiler tests.
16403         (_LT_LANG_F77_CONFIG): Similarly for caught_F77_compiler.
16404
16405 2004-08-31  Gary V. Vaughan  <gary@gnu.org>
16406
16407         * Makefile.am (clean-ltmain-sh): Remove stale config/ltmain.sh
16408         from the build tree that were left behind by previous versions of
16409         libtool.
16410         ($top_srcdir)/stamp-vcl: Since this rule is already called on
16411         every invocation of make, hook clean-ltmain-sh in here too.
16412         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16413
16414 2004-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16415
16416         * bootstrap: Update warning message to reflect having split
16417         libtool.m4 into several files.
16418         Also, add config/ltmain.sh to list of stale files from previous
16419         versions to be removed before bootstrap.
16420
16421         * libltdl/ltdl.c: Replace strdup with lt__strdup.
16422
16423 2004-08-30  Gary V. Vaughan  <gary@gnu.org>
16424
16425         * config/ltmain.in: Double quote even $# for the sake of sh.test.
16426         (exec_cmd): Be careful about "`\"foo\"`" quoting, even in comments
16427         to avoid triggering the tests in sh.test.
16428
16429         * configure.ac:  Because of the way the autoconf C++ testing
16430         works, we need to call the C test first to work in an environment
16431         that has no C++ compiler.
16432
16433         * libltdl/lt_dlloader.c (lt_dlloader_remove): Since the return
16434         value of this function is often passed to free, don't declare it
16435         `const'. Responsibility for this memory is given back to the
16436         caller on return.
16437         * libltdl/lt_dlloader.h (lt_dlloader_remove): Ditto.
16438         * libltdl/ltdl.c (lt_dlexit): Adjust.
16439         * NEWS: Updated.
16440
16441 2004-08-30  Andreas Schwab  <schwab@suse.de>
16442
16443         * libltdl/ltdl.c (lt_dlexit): Remove lvalue cast.
16444
16445         * libltdl/slist.h (SListCallback): Fix missing type.
16446
16447         * config/ltmain.in: Accept --mode=relink.
16448
16449 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16450
16451         * NEWS: Updated.
16452         * configure.ac: Bumped version to 1.9c.
16453
16454         GNU libtool 1.9b was released.
16455
16456         * configure.ac: Bumped version to 1.9b.
16457         * NEWS: Updated.
16458         * INSTALL, config/config.guess, config/config.sub,
16459         config/texinfo.tex: Updated from canonical source.
16460         * Makefile.maint, HACKING: Update instructions for releasing in a
16461         VPATH build.
16462
16463         * Makefile.am (dist-hook): Only run if README-alpha exists.
16464         * README.alpha: Renamed from README-alpha to stop automake from
16465         automatically adding it to DIST_COMMON.
16466
16467         * NEWS: Merge changes from branch-1-5.
16468
16469         * Makefile.am (dist-hook): Always distribute just a README file,
16470         but take its contents from README-alpha for alpha releases.
16471
16472         * TODO: Reformat.  Removed some items that have been implemented.
16473
16474 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16475
16476         Add a new `-weak' flag to tell libtool when not to propogate
16477         dependency libraries from dlpreopened modules to libraries:
16478
16479         * config/ltmain.in: Support new -weak link mode option.  Adjust
16480         help message.
16481         * libltdl/Makefile.am (libltdlc_la_LDFLAGS): Use it.
16482         * doc/libtool.texi (Linking with dlopened modules): Document it.
16483         (Link mode): Mention -weak.
16484         * NEWS: Updated.
16485
16486 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16487
16488         * config/ltmain.in (opt_help): Defer showing help messages until
16489         after a possible following --mode argument has been parsed, so we
16490         can handle `libtool --help --mode=foo'.
16491
16492 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16493
16494         We have had shell functions in ltmain.in for a few years without
16495         complaint now, and recently a few more have crept in.  Make a
16496         start at refactoring the code with shell functions, and
16497         standardising on option parsing style:
16498
16499         * config/ltmain.in (func_echo, func_verbose, func_error)
16500         (func_fatal_error, func_fatal_help, func_missing_arg)
16501         (func_version, func_usage, func_help): Boiler plate shell
16502         functions mostly copied from libtoolize.in.  Changed *lots* of
16503         shell snippets to call these functions as appropriate, rather than
16504         inlining the same code over and over.
16505         (func_config, func_features, func_enable_tag, func_mode_help):
16506         Factored out from the shared option parsing loop.  Write a new
16507         shared option parser based on the one in libtoolize.in.
16508         (func_check_version_match): Factored out from global scope.
16509         (func_mode_compile, func_mode_execute, func_mode_finish)
16510         (func_mode_install, func_mode_link, func_mode_uninstall): Break
16511         each of the top level mode handlers out into a function.  Adjust
16512         main loop.
16513         (modename, prevopt, prev, optarg, show_help): Removed in the
16514         course of cleaning up the shared option parser.
16515         (opt_duplicate_deps): Use `:' and `false' instead of `yes' and `',
16516         so we can run it directly, rather than calling test.
16517
16518 2004-08-28  Gary V. Vaughan  <gary@gnu.org>
16519
16520         To help users submit better bug reports, improve the general
16521         instructions, and provide additional useful info alongside the bug
16522         reporting address in --help output:
16523
16524         * Makefile.am (edit): Substitute $host_triplet.
16525         * libtoolize.in: Output useful debug info with --help.
16526         * config/ltmain.in: Ditto.
16527         * README: Rewritten.  Added copyright info.
16528         * README-alpha: Rewritten.  Added copyright info.
16529         * HACKING: New file, partly taken from old README-alpha.
16530
16531 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16532
16533         Two things to stop `make distcheck' from trying to rebuild
16534         distributed files (m4/ltversion.m4 and config/ltmain.in) in the
16535         readonly source tree:
16536
16537         * Makefile.am (stamp-vcl): Keep only one copy of stamp-vcl; in
16538         $(top_srcdir), so that an up-to-date version is rolled into the
16539         dist tarball even from a VPATH build.
16540         ($(top_srcdir)/config/ltmain.sh): Don't depend on Makefile,
16541         otherwise ltmain.sh needs to be rebuilt after every config.status
16542         run, and then configure needs to be rebuilt, and it all goes
16543         horribly wrong :-/  Unfortunately, we can't depend on Makefile.am
16544         either, because that is a circular dependency.  The downside of
16545         this change is that it is now possible to edit Makefile.am to
16546         change the way ltmain.sh is generated, and the dependency
16547         information can't tell that ltmain.sh needs regenerating.
16548
16549 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16550
16551         * doc/libtool.texi (Cheap tricks): Escape the `@' for texinfo.
16552
16553 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16554
16555         * doc/libtool.texi (Cheap tricks): Fix the instructions for making
16556         a ltmain.in wrapping libtool in light of recent changes to the
16557         version checking code.
16558
16559 2004-08-26  Peter O'Gorman  <peter@pogma.com>
16560
16561         * config/ltmain.in [darwin]: Use the -dylib_file flag and avoid
16562         linking to so many libraries on darwin.
16563
16564         * m4/libtool.m4 [darwin]: Don't use a libname triplet, a couplet
16565         is perfectly fine.
16566
16567         * m4/ltdl.m4: Don't use the dyld loader on darwin 8 or later.
16568
16569 2004-08-25  Paolo Bonzini  <bonzini@gnu.org>
16570
16571         * config/ltmain.in (piecewise linking): Use a GNU ld script if
16572         possible.
16573         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Add per-tag variable
16574         with_gnu_ld.
16575         (_LT_LANG_CXX_CONFIG): Don't set unused variable with_gnu_ldcxx.
16576
16577 2004-08-22  Gary V. Vaughan  <gary@gnu.org>
16578
16579         The Grand Renaming.  In preparation for libtool-2.0, move all of
16580         the many and varied m4 symbols accumulated by libtool over the
16581         years, considering also that modern autoconf can detect unexpanded
16582         macros even without AC in the macro name:
16583
16584         * bootstrap: Remove libltdl/config.h from previous releases.
16585         * m4/libtool.m4, m4/ltdl.m4, doc/libtool.texi: Basically, run a
16586         giant sed transformation like this:
16587         s,AC_LIB_LTDL,LTDL_INIT,g
16588         s,AC_LIBLTDL_CONVENIENCE,LTDL_CONVENIENCE,g
16589         s,AC_LIBLTDL_INSTALLABLE,LTDL_INSTALLABLE,g
16590         s,AC_WITH_LTDL,LT_WITH_LTDL,g
16591         s,AC_LTDL_ENABLE_INSTALL,_LT_ENABLE_INSTALL,g
16592         s,AC_DEPLIBS_CHECK_METHOD,_LT_CHECK_MAGIC_METHOD,g
16593         s,AC_LIBTOOL_OBJDIR,_LT_CHECK_OBJDIR,g
16594         s,AC_LTDL_OBJDIR,_LT_CHECK_OBJDIR,g
16595         s,AC_LTDL_DLPREOPEN,_LT_CHECK_DLPREOPEN,g
16596         s,AC_LIBTOOL_SYS_MAX_CMD_LEN,LT_CMD_MAX_LEN,g
16597         s,AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,_LT_CMD_GLOBAL_SYMBOLS,g
16598         s,AC_LIBTOOL_SYS_OLD_ARCHIVE,_LT_CMD_OLD_ARCHIVE,g
16599         s,AC_PROG_LD_RELOAD_FLAG,_LT_CMD_RELOAD,g
16600         s,AC_LIBTOOL_SYS_LIB_STRIP,_LT_CMD_STRIPLIB,g
16601         s,AC_CHECK_LIBM,LT_LIB_M,g
16602         s,AC_LTDL_DLLIB,LT_LIB_DLLOAD,g
16603         s,AC_LIBTOOL_COMPILER_OPTION,_LT_COMPILER_OPTION,g
16604         s,AC_LIBTOOL_PROG_CC_C_O,_LT_COMPILER_C_O,g
16605         s,AC_LIBTOOL_PROG_COMPILER_NO_RTTI,_LT_COMPILER_NO_RTTI,g
16606         s,AC_LIBTOOL_PROG_COMPILER_PIC,_LT_COMPILER_PIC,g
16607         s,AC_LIBTOOL_SYS_HARD_LINK_LOCKS,_LT_COMPILER_FILE_LOCKS,g
16608         s,AC_LTDL_DLSYM_USCORE,LT_FUNC_DLSYM_USCORE,g
16609         s,AC_LIBTOOL_LINKER_OPTION,_LT_LINKER_OPTION,g
16610         s,AC_LIBTOOL_PROG_LD_SHLIBS,_LT_LINKER_SHLIBS,g
16611         s,AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH,_LT_LINKER_HARDCODE_LIBPATH,g
16612         s,AC_PATH_MAGIC,_LT_PATH_MAGIC,g
16613         s,AC_PATH_TOOL_PREFIX,_LT_PATH_TOOL_PREFIX,g
16614         s,AC_PROG_LD,LT_PATH_LD,g
16615         s,AC_PROG_LD_GNU,_LT_PATH_LD_GNU,g
16616         s,AC_PROG_NM,LT_PATH_NM,g
16617         s,AC_LTDL_SYS_DLOPEN_DEPLIBS,LT_SYS_DLOPEN_DEPLIBS,g
16618         s,AC_LIBTOOL_DLOPEN_SELF,LT_SYS_DLOPEN_SELF,g
16619         s,AC_LIBTOOL_POSTDEP_PREDEP,_LT_SYS_HIDDEN_LIBDEPS,g
16620         s,AC_LTDL_SYSSEARCHPATH,LT_SYS_DLSEARCH_PATH,g
16621         s,AC_LTDL_SHLIBEXT,LT_SYS_MODULE_EXT,g
16622         s,AC_LTDL_SHLIBPATH,LT_SYS_MODULE_PATH,g
16623         s,AC_LTDL_SYMBOL_USCORE,LT_SYS_SYMBOL_USCORE,g
16624         s,AC_LIBTOOL_SYS_DYNAMIC_LINKER,_LT_SYS_DYNAMIC_LINKER,g
16625         s,_LT_AC_TAGVAR,_LT_TAGVAR,g
16626         s,_LT_AC_SYS_COMPILER,_LT_TAG_COMPILER,g
16627         s,_LT_AC_PROG_ECHO_BACKSLASH,_LT_PROG_ECHO_BACKSLASH,g
16628         s,_LT_AC_SYS_LIBPATH_AIX,_LT_SYS_MODULE_PATH_AIX,g
16629         s,_LT_AC_SHELL_INIT,_LT_SHELL_INIT,g
16630         s,_LT_AC_LOCK,_LT_ENABLE_LOCK,g
16631         s,_LT_AC_CHECK_DLFCN,_LT_HEADER_DLFCN,g
16632         s,_LT_AC_TRY_DLOPEN_SELF,_LT_TRY_DLOPEN_SELF,g
16633         s,LT_AC_PROG_EGREP,_LT_DECL_EGREP,g
16634         s,LT_AC_PROG_SED,_LT_DECL_SED,g
16635         * doc/libtool.texi (Autoconf macros): Document exported macros.
16636         * libtoolize.in: Compare ltdl.m4 serial numbers for LTDL_INIT
16637         instead of newly obsoleted AC_LIB_LTDL.
16638         (func_scan_files): Also set seen_ltdl for LTDL_INIT and
16639         LT_WITH_LTDL.
16640
16641 2004-08-12  Peter O'Gorman  <peter@pogma.com>
16642
16643         * m4/libtool.m4 [GNU/linux] (AC_DEPLIBS_CHECK_METHOD): Cleanup,
16644         thanks to Daniel Reed.
16645
16646 2004-08-11  Daniel Reed  <djr@redhat.com>
16647
16648         * tests/demo-nopic.test: Do not run on x86_64 or s390*
16649
16650 2004-08-06  Gary V. Vaughan  <gary@gnu.org>
16651
16652         * libltdl/ltdl.c (lt_dlforeachfile): LT_SYS_LIBSEARCH_PATH is not
16653         an environment variable, it is an actual path.
16654
16655         * bootstrap: Remove `-f Makefile.am' now that we have an actual
16656         Makefile to build ltmain.sh.
16657         Reported by Noah Mish <noah@cs.caltech.edu>
16658
16659 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
16660
16661         * bootstrap: Run the bootstrap rules from a file named Makefile,
16662         copied from Makefile.am for fresh checkouts.
16663
16664 2004-08-05  Alexandre Duret-Lutz  <adl@gnu.org>
16665
16666         * m4/libtool.m4 (_LT_PROG_LTMAIN): Require ltmain.sh using
16667         using Autoconf's new AC_REQUIRE_AUX_FILE.
16668
16669 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
16670
16671         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Depends on
16672         Makefile.
16673         (timestamp): Factor out timestamp setting and edit it based on the
16674         version number, so that it is empty for release versions.
16675         ($(top_srcdir)/config/ltmain.sh): Use it.
16676         (libtoolize): Ditto.
16677
16678         * Makefile.am (libtool): Depends on ltmain.sh.
16679         (libtoolize): Set and substitute TIMESTAMP.
16680
16681         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Actually run
16682         $(MKSTAMP) before changing directories, or it won't be found.
16683         Forgot to save before my last commit :-(
16684
16685         * Makefile.am ($(top_srcdir)/m4/ltversion.m4): Since we already did
16686         `cd $(top_srcdir)' for this rule, we can't mv ltversion.tmp to the
16687         relative $(top_srcdir) again!  Also, run $(MKSTAMP) before changing
16688         directories, or it won't be found.
16689         ($(top_srcdir)/config/ltmain.sh): Ditto.
16690         (EXTRA_DIST): We should distribute ltversion.m4 too.
16691
16692 2004-08-04  Peter O'Gorman  <peter@pogma.com>
16693
16694         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Since CONFIG_SHELL may
16695         not actually be set, we should use SHELL here, also make darn sure
16696         that SHELL is set to something. Bug from Willem Jan Palenstijn
16697         <wpalenst@math.leidenuniv.nl>.
16698
16699 2004-08-03  Jacob Meuser  <jakemsr@jakemsr.com>
16700
16701         * ltmain.in: Allow some static libraries to be used in generating a
16702         shared library on NetBSD and OpenBSD. match-pattern_regex decides
16703         which are good.
16704
16705 2004-08-02  Geoffrey Keating  <geoffk@apple.com>
16706
16707         * m4/libtool.m4 [darwin]: Don't use -all_load.
16708
16709 2004-08-01  Maciej W. Rozycki  <macro@linux-mips.org>
16710
16711         * m4/libtool.m4 (LT_AC_PROG_SED): Set SED when running from cache as
16712         well.
16713
16714 2004-07-31  Gary V. Vaughan  <gary@gnu.org>
16715
16716         Although libtool is optimised to not need to subconfigure libltdl,
16717         the installed libltdl sources for libtoolize need to put
16718         libltdl/configure.ac in the parent package so that *it* can
16719         subconfigure libltdl.  That way we don't put any constraints on
16720         the build system used by the parent package because the
16721         libtoolized libltdl subtree is a self-contained sub-project:
16722
16723         * libltdl/Makefile.am (EXTRA_DIST): Add configure.ac.
16724         (nobase_ltdldata_DATA): Change back to libltdl's own
16725         configure.ac.
16726
16727 2004-07-30  Gary V. Vaughan  <gary@gnu.org>
16728
16729         My thanks to Alexandre Duret-Lutz <adl@gnu.org> for the insight
16730         required to write this changeset -- especially that ltmain.sh is
16731         the same on any machine for a given release, which I hadn't
16732         noticed for some bizarre reason: It turns out that generating
16733         distributed files from configure causes no end of hassle, as
16734         evidenced by the many patches I've generated over the last few
16735         days to try and get the dist and distcheck make rules to work.
16736         Instead of all that hair, we now simply generate our distributed
16737         files (now including ltmain.sh) with make rules -- and since
16738         automake creates make variables for all AC_SUBSTs, that is really
16739         easy.  The code looks a lot more like automake and autoconf
16740         Makefile.ams now, and doesn't have all the rough edges the earlier
16741         hacky solution suffered from.  We still generate libtool from
16742         config.status, but that is not a distributed file, and doesn't
16743         break the golden rule.  Besides, there is way more going on there
16744         than a bunch of substitutions:
16745
16746         * Makefile.am (edit): New common sed substitutions for files now
16747         generated by make instead of config.status.
16748         (CLEANFILES): Clean new tmp files.
16749         (EXTRA_DIST): Add ltmain.sh.
16750         (vcl-tmp): Reinstated.
16751         (m4/ltversion.m4, config/ltmain.sh): New rules.  Generate from
16752         here instead of config.status.
16753         (libtoolize): Ditto.
16754         (libtool): Call config.status to regenerate if necessary.
16755         (dist-hook): Removed.
16756         * config/ltmain.in: Moved here from top_srcdir.
16757         * README-alpha: Update instructions to check AS_SHELL_SANITIZE is
16758         up to date.
16759         * bootstrap: Rewritten.  Generate m4/ltversion.m4 and
16760         config/ltmain.sh because configure depends on them.
16761         * configure.ac (AC_CONFIG_SRCDIR): Use libtoolize.in now that
16762         ltmain.in has moved.
16763         (AC_CONFIG_FILES): Don't generate distributed files,
16764         config/ltmain.sh and libtoolize from config.status.  We have make
16765         rules to do that now.
16766
16767 2004-07-30  Peter O'Gorman  <peter@pogma.com>
16768
16769         * m4/libtool.m4, ltmain.in: readd the comments that I erased.
16770
16771         * ltmain.in [darwin]: We already had a module var, there can be
16772         only one.
16773
16774         * m4/libtool.m4, ltmain.in: autoconf now says the best thing to do
16775         with CDPATH is to (unset CDPATH) >/dev/null 2>&1 && unset CDPATH,
16776         so do it.
16777
16778 2004-07-29  Gary V. Vaughan  <gary@gnu.org>
16779
16780         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Ugh. More hair to
16781         help `make distcheck'; not only do we have to make a copy of
16782         ltmain.sh available in the source tree, but we have to be really
16783         careful about permission bit twiddling when we copy it across into
16784         the possible read-only $(top_srcdir)/config directory!
16785
16786         * tests/tagtrace.test: Skip this test when running a VPATH build
16787         against a read-only source tree (as in distcheck for example),
16788         since autoconf wants to write temporary files in $top_srcdir
16789         otherwise.
16790
16791         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Automake assumes,
16792         quite rightly for every project except libtool, that there will be
16793         an ltmain.sh in the source tree.
16794         (EXTRA_DIST): As do the dist rules it generates.
16795         (dist-hook): Even though we definitely don't want to distribute
16796         our local ltmain.sh.
16797
16798         * config/config.guess, config/config.sub: Don't check these in,
16799         they cause spurious conflicts on cvs commit and update, and are
16800         added by bootstrap in any case.
16801
16802         * configure.ac (AC_INIT): Revert an accidental commit from my
16803         testing of package_revision.
16804
16805 2004-07-29  Alexandre Duret-Lutz  <adl@gnu.org>
16806
16807         * doc/libtool.texi (Tags): Document CC.
16808         * m4/libtool.m4 (_LT_SETUP): Register CC as supported tag so that
16809         Automake uses it.
16810
16811 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
16812
16813         Fix a long-standing bug where macro_version was always empty in
16814         the generated m4/ltversion.m4.  Except for CVS revisions:
16815
16816         * ltmain.in (package_revision): Don't try to deduce it from
16817         TIMESTAMP, since that is empty for release versions; simply
16818         substitute it...
16819         * configure.ac (package_revision): ...from here, having
16820         precalculated it before resetting TIMESTAMP for release versions.
16821         * bootstrap: Force regeneration of m4/ltversion.m4, but retain
16822         timestamps if there is no change to the content.
16823
16824 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
16825
16826         To take full advantage of this, libtool must be bootstrapped with
16827         CVS autoconf, otherwise pdksh chokes on some nested escaped quotes
16828         from libtool.m4.  Using CVS autoconf protects configure from
16829         non-bourne compatible shells in the same way this changeset
16830         protects libtool and libtoolize:
16831
16832         * libtoolize.in: Include latest CVS autoconf AS_SHELL_SANITIZE
16833         expansion to make various shells fully bourne compatible.
16834         * ltmain.in: Ditto.
16835         * m4/libtool.m4 (AC_PATH_TOOL_PREFIX): Remove spurious quotes, the
16836         RHS of = assignment is not IFS split.
16837         (_LT_LANG_CXX_CONFIG): Ditto.
16838         (AC_LIBTOOL_POSTDEP_PREDEP): Ditto.
16839
16840 2004-07-27  Gary V. Vaughan  <gary@gnu.org>
16841
16842         This change fixes another VPATH build bug, where the vcl.tmp
16843         target forced a rebuild of stamp-vcl in the build tree (and
16844         hence regeneration of m4/ltversion.m4, thus an automake driven
16845         rebootstrap that doesn't know about $fakes) requiring a fresh
16846         ./bootstrap after every cvs/tla update:
16847
16848         * Makefile.am (vcl.tmp): Removed.
16849         (stamp-vcl): Adopt former vcl.tmp target rules.
16850
16851 2004-07-25  Gary V. Vaughan  <gary@gnu.org>
16852
16853         * ltmain.in: Make sure that dependency libraries of -dlpreopened
16854         libraries are propogated properly.
16855
16856 2004-07-23  Joe Orton  <joe@manyfish.co.uk>
16857
16858         * libtool.m4: Treat bsdi5* like bsdi4*.
16859
16860 2004-07-22  Peter O'Gorman  <peter@pogma.com>
16861
16862         * ltmain.in [darwin](func_extract_archives): $SED not sed.
16863
16864         * ltmain.in [darwin](func_extract_archives): Clean up last commit
16865         a little, some suggestions are from Albert Chin, those that are
16866         broken are mine.
16867
16868         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for
16869         included files in the right places.
16870
16871 2004-07-18  Peter O'Gorman  <peter@pogma.com>
16872
16873         * ltmain.in [darwin](func_extract_archives): Because fat archives
16874         on darwin can not be extracted using ar, we need to use lipo to
16875         extract the thin archives and then use lipo again to generate the
16876         individual fat objects. This should allow people to run configure
16877         with CC set to "cc -arch ppc -arch ppc64" or "cc -arch ppc -arch
16878         i386" or whatever to match the toolchain they have available.
16879
16880 2004-07-18  Greg Eisenhauer  <eisen@cc.gatech.edu>
16881
16882         * libltdl/loaders/Makefile.am: Use AM_MAKEFLAGS not MAKEFLAGS.
16883
16884 2004-07-18  Peter O'Gorman  <peter@pogma.com>
16885
16886         * libltdl/Makefile.am: Ensure that lt__dirent.h is part of the dist,
16887         also make failed looking for configure.ac, look for
16888         $(top_srcdir)/configure.ac instead.
16889
16890 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16891
16892         * libltdl/lt__private.h (lt_dlhandle_struct): Renamed to
16893         lt__handle to better reflect the naming scheme.
16894         * libltdl/ltdl.h (lt_dlhandle): Be truly opaque with a void *.
16895         * libltdl/lt_dlloader.c (lt_dlloader_remove): Party to
16896         lt__private.h, so use internal lt__handle instead of opaque
16897         lt_dlhandle.
16898         * libltdl/ltdl.c (LT_DLGET_FLAG, LT_DLSET_FLAG): Add a cast to
16899         internal lt__handle type.
16900         (try_dlopen, tryall_dlopen, load_deplibs, unload_deplibs): Ditto.
16901         (lt_dlexit, lt_dlclose, lt_dlsym): Use lt__handle to iterate
16902         throught the handle list.
16903         (try_dlopen): Use lt__zalloc instead of MALLOC and memset.
16904         * libltdl/ltdl.h (lt_dlcaller_id): Be truly opaque with a void *.
16905         (lt_dlhandle_interface): New callback type for filtering handles
16906         according to the interface they present.
16907         * libltdl/ltdl.c (lt_dlcaller_register): Take an id and an
16908         interface check callback, and generate a caller_id.
16909         (iterator): New static variable for the use of...
16910         (lt_dlhandle_first): New function.  Set the iterator for
16911         subsequent calls to lt_dlhandle_next.
16912         (lt_dlhandle_next): Either work as before when iterator is unset,
16913         or else skip handles that fail the interface check in iterator set
16914         by lt_dlhandle_first.
16915         * libltdl/ltdl.h (lt_dlhandle_first): Declaration.
16916         * doc/libtool.texi (User defined module data): Document the new
16917         APIs.
16918         * NEWS: Updated.
16919
16920 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16921
16922         Split lt_dlloader management into a separate file, and factor
16923         `loaders' list management into a new SList ADT.  In the process,
16924         the API for writing loaders is a little cleaner, so all the
16925         existing loaders were tweaked to take advantage of that:
16926
16927         * libltdl/slist.h, libltdl/slist.c: New files implementing a
16928         generic singly linked list container ADT.  The ADT is purely
16929         internal, and none of its API's are visible from an installed
16930         libltdl.
16931         * libltdl/lt_dlloader.h (lt_dlloader): Removed next field again
16932         :-) Renamed to lt_dlvtable for API.  Changed all callers.
16933         (lt_dlloader_get): New function to turn an lt_dlloader into its
16934         associated lt_dlvtable.
16935         (lt_dlloader_add): Removed unused data parameter.  The caller
16936         data belongs to (and is set by) the loader itself, not the
16937         loader's client.  Changed all callers.
16938         (lt_dlloader_name, lt_dlloader_data): Removed.  Use
16939         lt_dlloader_get instead!
16940         * libltdl/lt__private.h: Include slist.h.
16941         (lt__alloc_die_callback): Add missing LT_SCOPE to declaration.
16942         (lt_dlhandle_struct): Use lt_dlvtable instead of opaque
16943         lt_dlloader.
16944         * libltdl/ltdl.c (lt_dlexit): Rewritten for the new loader API.
16945         (loaders, lt_dlloader_add, lt_dlloader_remove, lt_dlloader_next,
16946         lt_dlloader_find): Moved from here...
16947         * libltdl/lt_dlloader.c ((loaders, lt_dlloader_add,
16948         lt_dlloader_remove, lt_dlloader_next, lt_dlloader_find): ...to
16949         here.  And rewritten in terms of new SList interface.
16950         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Rewritten in terms of
16951         new lt_dlloader interface.
16952         * libltdl/Makefile.am (libdlloader_la_SOURCES): Add slist.h and
16953         slist.c.  Move lt_dlloader.h from here...
16954         (pkginclude_HEADERS): ...to here.
16955         (libltdl_la_SOURCES): Add lt_dlloader.c and lt_dlloader.h.
16956
16957 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16958
16959         Collapse two almost identical structures into one:
16960
16961         * libltdl/lt_dlloader.h (lt_dlloader): Add next field.
16962         * libltdl/ltdl.c (lt_user_dlloader): Remove entirely.  Change all
16963         callers to use lt_dlloader instead.  Add a compatibility macro.
16964         (lt_dlloader_add): Remove copy and allocate stage, just hook
16965         directly into the loaders list.
16966
16967 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16968
16969         A cleaner way to access the private fields of an lt_dlhandle
16970         than my move of the module field into lt_dlinfo:
16971
16972         * libltdl/ltdl.c (lt_caller_data, lt_dlhandle_struct): Move from
16973         here...
16974         * libltdl/lt__private.h (lt_caller_data, lt_dlhandle_struct):
16975         ...to here.  And put the module field back here...
16976         * libltdl/ltdl.h (lt_dlinfo): ...instead of here.
16977         * libltdl/loaders/loadlibrary.c (vm_open): Adjust.
16978
16979 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16980
16981         * libltdl/lt__private.h (streq, strneq): New macros to make strcmp
16982         calls as used for simple comparison easier to read.
16983         * libltdl/loaders/dyld.c, libltdl/loaders/preopen.c,
16984         libltdl/ltdl.c: Use them!
16985
16986 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
16987
16988         This pervasive changeset makes two intertwined deep changes to the
16989         operation of libtool (neither would work alone).  First, there is
16990         a new feature that allows libraries to preopen modules.  This
16991         entails a backwards incompatible change to the libltdl API for
16992         separating out the preloaded symbol lists by owner.  Second, in
16993         the tradition of "eating our own dogfood", libltdl now preloads
16994         its own dlloaders.  The internal API for dlloaders has also had to
16995         change in a backwards incompatible way in support of the new
16996         library preloading feature.  If you don't use preloaded libraries,
16997         you needn't change your project sources, though you will need to
16998         recompile against the new libltdl.  The API changes are mostly
16999         confined to dlloaders, so you probably needn't worry about those
17000         (unless you have written a custom loader that you want libltdl to
17001         use):
17002
17003         * configure.ac (AC_CONFIG_FILES): Add libltdl/loaders/Makefile.
17004         * libltdl/configure.ac (AC_CONFIG_FILES): Add loaders/Makefile.
17005         * libltdl/loaders: New directory for module loaders, to simplify
17006         Makefile rules, and to give the loaders themselves names that are
17007         unique in the first few characters.
17008         * libtoolize.in (func_copy_all_files): Copy recursively to pick up
17009         the loaders directory contents.
17010         * libltdl/loaders/Makefile.am: New file.  Move module building
17011         rules to here...
17012         * libltdl/Makefile.am: ...from here.
17013         (VERSION_INFO): Bumped version info to signify interface changes.
17014         (libltdl_la_CPPFLAGS, libltdlc_la_CPPFLAGS): Set LTDLOPEN
17015         appropriately for each library.
17016         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
17017         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
17018         libltdl/loader-loadlibrary.c libltdl/loader-preopen.c,
17019         libltdl/loader-shl_load.c: Moved from here...
17020         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
17021         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
17022         libltdl/loaders/loadlibrary.c libltdl/loaders/preopen.c,
17023         libltdl/loaders/shl_load.c: ...to here.
17024         (get_vtable): New entry function for each.
17025         * libltdl/loaders/preopen.c (lt_dlsymlists_t): Replaced by...
17026         (symlist_chain): ...a new structure which maps lists of preloaded
17027         symbols from the object that loads them.
17028         (lt_dlpreload_open): New function to automatically open all
17029         preloaded modules belonging to a named object (ORIGINATOR).
17030         * libltdl/lt__alloc.c (lt__zalloc): New function to return a block
17031         of zeroed out new memory.
17032         * libltdl/lt__alloc.h (lt__zalloc): Prototype it.
17033         * libltdl/lt__private.h (lt__alloc_die_callback): Add missing
17034         prototype.
17035         (lt__error_strings): Make this opaque to callers.
17036         * libltdl/lt_error.c (lt__error_strings): Move the implementation
17037         to here.
17038         * libltdl/lt_dlloader.h (lt_user_dlloader): Add extra fields to
17039         make originator focused preloading possible.  *BREAKS BACKWARDS
17040         COMPATIBILITY*
17041         (lt_dlloader_add): Take advantage of new fields to simplify
17042         paramater list.
17043         * libltdl/lt_system.h (LT_STR): New ANSI stringification macro.
17044         (LT_CONC): Fix it to work from within macros.
17045         * libltdl/ltdl.c (loader_init, loader_init_callback): Simplify
17046         dlloader loading.
17047         (get_vtable, preloaded_symbols): Point these at the preopen.c
17048         symbols to bootstrap the loader chain.
17049         (lt_dlinit): Load the preopen dlloader manually, and then use it
17050         to load any other preloaded dlloaders.
17051         (lt_dlloader_add): Simplify parameter list. Populate new
17052         fields. Chain new loaders according to priority field.
17053         * libltdl/ltdl.h (lt_dlsymlist): Add a new originator field.
17054         (lt_dlpreload_callback_func): Type of a callback for automatic
17055         lt_dlpreload_open loading.
17056         (LTDL_SET_PRELOADED_SYMBOLS): Adjust to hook into preloaded
17057         symbols from the "@PROGRAM@" originator.
17058         * tests/demo/dlmain.c (main): Use mangled preloaded_symbols symbol.
17059         * tests/pdemo/longer_file_name_dlmain.c (main): Ditto.
17060         * ltmain.in: Don't spew spurious warnings when dlopening and
17061         dlpreopening modules.
17062         (func_generate_dlsyms): Factored out from multiple copies in the
17063         rest of the code. Generate originator keyed symbol lists.
17064         (func_extract_archives): Also factored.  Extract the contents of
17065         convenience archives for linking with dependent libraries when
17066         --whole-archive is not available.
17067         [darwin]: Don't try to link $old_library unless it exists, and
17068         $lib is a bundle.
17069         * m4/ltdl.m4 (AC_LTDL_DLLIB): Check for all possible dynamic
17070         loading libraries/apis rather that stopping when an acceptable one
17071         is discovered.
17072         (LT_DLLOADERS): New variable for holding dlloaders that can be
17073         preloaded.
17074         * doc/libtool.texi: Document interface changes.
17075         * NEWS: Updated.
17076
17077 2004-07-12  Peter O'Gorman  <peter@pogma.com>
17078
17079         * m4/libtool.m4 [darwin]: Set whole_archive_flag_spec to '' for xlc,
17080         or it does not pass it's tests. xlc passes -noall_load (the default)
17081         and when -all_load is also specified Apple's /usr/bin/libtool barfs
17082         and dies.
17083
17084 2004-07-07  Gary V. Vaughan  <gary@gnu.org>
17085
17086         * libltdl/ltdl.h (lt_dlinfo): Move private module field to here...
17087         * libltdl/ltdl.c (lt_dlhandle_struct): ...from here.  Changed all
17088         callers.
17089         * libltdl/loader-loadlibrary.c (sys_wll_open): Use new inteface to
17090         scan loaded handle->info.module fields for previously loaded
17091         modules.
17092         * doc/libtool.texi (User defined module data): Document changes to
17093         the interface.
17094         * NEWS: Updated.
17095         Reported by Chuck Wilson <cwilson@ece.gatech.edu>
17096
17097 2004-07-07  Brad  <brad@comstyle.com>
17098
17099         * m4/libtool.m4: Fixes for the OpenBSD support
17100
17101 2004-06-24  Noah Misch  <noah@cs.caltech.edu>
17102
17103         * ltmain.in: Unset the zsh GLOB_SUBST option, which makes zsh
17104         handle backslash quoting poorly, before doing anything else.
17105         * tests/defs: Likewise.
17106
17107 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
17108
17109         * libtoolize.in (libtoolize_flags): With the --ltdl option, we
17110         libtoolize the libltdl subdirectory automatically.
17111         * m4/ltdl.m4 (AC_WITH_LTDL): Fix overquoted args.
17112
17113 2004-06-21  Peter O'Gorman  <peter@pogma.com>
17114
17115         * ltmain.in (dependency_libs) [darwin]: Remove -framework stuff from
17116         dependency_libs. Instead, invent a new .la var "inherited_linker_flags"
17117         to keep any linker flags which should be used when linking the library,
17118         but are outside the usual -L -l, -R etc that can be used in
17119         dependency_libs. Any unusual flags in dependency_libs cause recent
17120         versions of libtool to die with "cannot find the library `'", so
17121         it is required to move frameworks out of there. :(
17122
17123 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
17124
17125         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>:
17126         * libtoolize.in: Quote $# to make sh.test happy again.
17127
17128         * m4/ltdl.m4 (AC_WITH_LTDL): Remove redundant AC_REQUIRE calls.
17129         Either set variables to allow a client to link with the installed
17130         libltdl, or else compile a local libltdl as a convenience library.
17131         * libtoolize.in (opt_ltdl): Removed in favour of...
17132         (ltdldir): ...this, which is defaulted to "libltdl" or can be set
17133         by the user with an argument to --ltdl.
17134         (Main): Use it!
17135         * doc/libtool.texi (Distributing libltdl): Improved documentation
17136         on libltdl.
17137         (Invoking libtoolize): Document new optional --ltdl target
17138         directory argument.
17139
17140 2004-06-17  Gary V. Vaughan  <gary@gnu.org>
17141
17142         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Fix a typo
17143         in allow_undefined_flag: s,${Wl},${wl},g
17144
17145         * libtoolize.in (func_scan_files): Accept AC_WITH_LTDL as an
17146         indication that libltdl is being used.
17147         (Main): Without AC_CONFIG_MACRO_DIR, don't just dump all the
17148         macro files in `.' since they are never used, and aclocal will
17149         copy them from $aclocaldir into aclocal.m4 anyway.
17150         Reported by Alexandre Duret-Lutz <adl@gnu.org>
17151
17152 2004-06-16  Brad  <brad@comstyle.com>
17153
17154         * m4/libtool.m4: More improvements to OpenBSD support.
17155         * NEWS: Updated.
17156
17157 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
17158
17159         libltdl uses LIBOBJS, which leak out into a parent project if both
17160         share the same configure.ac.  Libtool itself doesn't compile any
17161         code, so it is okay to do it during bootstrap, but other projects
17162         need to treat libltdl as a configurable subproject to keep their
17163         respective LIBOBJS separate:
17164
17165         * libltdl/configure.ac: New file, based on configure.ac.
17166         * libltdl/Makefile.am (AC_LOCAL_AMFLAGS): Use our own m4
17167         directory.
17168         (ltdldata_DATA): List *all* the files that libtoolize --ltdl will
17169         install.
17170
17171 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
17172
17173         Automake 1.9 won't have the AC_PROG_EGREP bug (aclocal used to
17174         pull an old installed libtool.m4 as well as the bootstrap
17175         m4/libtool.m4 if an AC_DEFUN was removed), and we have
17176         lt~obsolete.m4 to work around it in the mean time.  libtoolize
17177         can install macro files from $prefix/share/aclocal perfectly well
17178         without us needing to move to a whole other directory:
17179
17180         * Makefile.am (pkgmacro_DATA): Renamed to aclocal_DATA, so m4
17181         files are installed to $prefix/share/aclocal again.
17182         (install-data-local): Don't remove just installed macros!
17183         * libtoolize.in (pkgmacrodir): Renamed to aclocaldir.
17184         (func_copy_some_files): New function factored out of...
17185         (func_copy_all_files): ...here.  Adjust to use func_copy_some_files.
17186         (re_pkgaux_files): Renamed to glob_pkgaux_files, since it is not
17187         a regular expression.
17188         (re_pkgmagro_files): Replaced with...
17189         (pkgmacro_files): ...a colon delimited list of libtool installed
17190         m4 files from aclocaldir.
17191         (Main): Copy macro files from aclocaldir again.
17192         * NEWS: Updated.
17193
17194 2004-05-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17195
17196         * ltmain.sh (check_executable): The WIN32 API and MinGW do not support
17197         S_IXOTH and S_IXGRP so use of these modes should be conditional.
17198
17199 2004-05-21  Gary V. Vaughan  <gary@gnu.org>
17200
17201         * tests/tagtrace.test: Forgot to add this file to the repository
17202         for Alexandre's 2004-05-16 patch below.
17203
17204 2004-05-18  Peter O'Gorman  <peter@pogma.com>
17205
17206         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Make this an m4_defun,
17207         test the tags compiler to see if it is GCC, not the CC compiler.
17208
17209 2004-05-16  Alexandre Duret-Lutz  <adl@gnu.org>
17210
17211         * doc/libtool.texi (Invoking libtool): Mention --tag=TAG.
17212         (Tags, Trace interface): New nodes.
17213         * m4/libtool.m4 (LT_SUPPORTED_TAG): New macro.
17214         (_LT_LANG): Call it.
17215         * tests/tagtrace.test: New file.
17216         * tests/Makefile.am
17217         (TESTS): Add tagtrace.test.
17218         * tests/defs: Define AUTOCONF.
17219
17220 2004-05-14  Mike Gorchak  <lestat@i.com.ua>
17221
17222         * ltmain.in: Add new qnx version type support.
17223         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Use it.  Set
17224         ldqnx.so linker type.
17225         (AC_DEPLIBS_CHECK_METHOD): QNX6 uses GNU C++, with deplib
17226         checking, so use pass_all.
17227         (AC_LIBTOOL_PROG_COMPILER_PIC): Use -shared for QNX.
17228         (_LT_LANG_CXX_CONFIG): QNX can make shared libraries.
17229         * m4/ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): QNX opens deplibs on
17230         dlopen.
17231         * NEWS: Updated.
17232
17233 2004-05-05  Peter O'Gorman  <peter@pogma.com>
17234
17235         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Insert space
17236         around = for a test and a comma between runpath_var and $1. Bug
17237         reported by Max Bowsher.
17238
17239 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
17240
17241         * libltdl/argz.h: Moved from here...
17242         * libltdl/argz_.h: ...to here, so as not to shadow system
17243         argz.h when we `#include <argz.h>' for example.
17244         #include stdlib.h and sys/types.h to ensure we get a size_t
17245         definition.
17246         * libltdl/argz.c (HAVE_CONFIG_H): Set it up how ltdl likes it when
17247         used by another client.
17248         * m4/argz.m4: New file.
17249         (gl_FUNC_ARGZ): Try to find an error_t definition, and a system
17250         argz.h.
17251         * m4/ltdl.m4: Use it.
17252         (AC_LTDL_FUNC_ARGZ): Removed.
17253         * libltdl/lt__glibc.h: #include <argz.h> to pick up either the
17254         system argz.h or our libltdl/argz.h if necessary.
17255         * libltdl/Makefile.am (libltdl_la_SOURCES): Move argz.h from
17256         here...
17257         (ltdldata_DATA): ...here. Along with argz.c.
17258         (argz.h): Generate from argz_.h if the system file is missing.
17259         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17260
17261 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
17262
17263         According to Howard Chu <hyc@highlandsun.com>:
17264         Applications should assume that the native dlopen is NOT
17265         thread-safe, and take care of locking themselves. All application
17266         calls into libltdl should thus be protected by the caller.
17267
17268         * libltdl/lt_mutex.c, libltdl/lt_mutex.h: Removed.
17269         * libltdl/Makefile.am (pkginclude_HEADERS): Removed lt_mutex.h.
17270         (libltdl_la_SOURCES): Removed lt_mutex.c and lt_mutex.h.
17271         * libltdl/ltdl.h: Don't include lt_mutex.h.
17272         * libltdl/lt__private.h (LT__MUTEX_GETERROR, LT__MUTEX_SETERROR)
17273         (LT__MUTEX_SETERRORSTR): Renamed to...
17274         (LT__GETERROR, LT__SETERROR, LT__SETERRORSTR): ...this.  Changed
17275         all callers.
17276         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, lt_dlmutex_lock)
17277         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror):
17278         Removed.  Changed all callers.
17279         * doc/libtool.texi (Thread Saftey in libltdl):
17280         * NEWS: Updated.
17281
17282 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
17283
17284         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Detect Intel C++ compiler
17285         version more idiomatically.
17286
17287 2004-04-19  Albert Chin-A-Young  <china@thewrittenword.com>
17288
17289         * m4/libtool.m4: Use cc rather than ld to created
17290         a shared library on HP-UX 11.x. On HP-UX 10.x, the
17291         C compiler doesn't grok -b so we continue to use ld.
17292
17293         * m4/libtool.m4: Use cc rather than ld to create a
17294         shared library on Solaris. When using the Sun
17295         Workshop compiler 5.0 (and I presume any previous
17296         version), revert to ld due to compiler errors.
17297
17298         * m4/libtool.m4: Use cc rather than ld to created
17299         a shared library on Tru64 UNIX.
17300
17301         * m4/libtool.m4: Use cc rather than ld to created
17302         a shared library on IRIX.
17303
17304         * libltdl/loader-shl_load.c: Fix typos during reorg.
17305
17306 2004-04-19  Alexandre Duret-Lutz  <adl@gnu.org>
17307
17308         * doc/libtool.texi (LT_INIT): Properly display options in a table.
17309
17310 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
17311
17312         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Intel C++ compiler 8.0 and
17313         newer adds predep_objects and postdep_objects itself, so don't
17314         duplicate them in $archive_cmds and $archive_expsym_cmds.
17315         * NEWS: Updated.
17316         Reported by Roberto Bagnara <bagnara@cs.unipr.it>
17317
17318 2004-04-17  Peter O'Gorman  <peter@pogma.com>
17319
17320         * libltdl/loader-dyld.c: Fix compilation issues. Set Original author
17321         to me.
17322
17323 2004-04-17  Todd Vierling  <tv@duh.org>,
17324         Peter O'Gorman  <peter@pogma.com>
17325
17326         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use sysctl to get the
17327         max cmd length on BSD* and darwin. Make sure that there is a safety
17328         factor too.
17329
17330 2004-04-15  Scott James Remnant  <scott@netsplit.com>
17331
17332         * m4/libtool.m4 (_LT_LANG_DEFAULT_CONFIG): Remove code to handle 'none'
17333         and 'all' options, this now always assumes automatic mode as that
17334         works so well.
17335         (_LT_LANG_DEFAULT): Remove definition
17336         * m4/ltoptions.m4: Remove 'no-lang', 'auto-lang' and 'all-lang' options.
17337         * configure.ac: Invoke LT_LANG for each desired supported language.
17338         * doc/libtool.texi: Remove documentation for the LT_INIT options,
17339         rewrite LT_LANG documentation.
17340
17341 2004-04-14  Alexandre Duret-Lutz  <adl@gnu.org>
17342
17343         * bootstrap: Delete acinclude.m4.
17344
17345 2004-04-14  Gary V. Vaughan  <gary@gnu.org>
17346
17347         * libtoolize.in (configure_ac): Don't complain about the lack of
17348         aclocal.m4.
17349         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
17350
17351 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17352
17353         * m4/ltdl.m4 (AC_LIB_LTDL): Remove AC_REPLACE_FUNCS for memmove
17354         and strcpy.
17355
17356         * libltdl/lt__pre89.h, libltdl/memcpy.c, libltdl/memmove.c,
17357         libltdl/strchr.c, libltdl/strcmp.c, libltdl/strrchr.c: Remove
17358         half-assed pre-c89 support entirely.
17359         * libltdl/lt__private.h: Don't refer to lt__pre89.h.
17360         * libltdl/Makefile.am (ltdldata_DATA): Remove references to
17361         deleted files.
17362         * NEWS: Mention it.
17363
17364         * libltdl/lt__pre89.h, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/argz.c,
17365         libltdl/argz.h, libltdl/lt__glibc.h, libltdl/lt_dlloader.h,
17366         libltdl/lt__dirent.c, libltdl/lt__dirent.h, libltdl/lt__private.h,
17367         libltdl/lt__alloc.c, libltdl/lt__alloc.h, libltdl/lt_system.h,
17368         libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
17369         libltdl/loader-dyld.c,  libltdl/loader-loadlibrary.c,
17370         libltdl/loader-shl_load.c, libltdl/lt_error.h, libltdl/lt_mutex.h:
17371         Autoconf either defines to 1 or undefs the discovery macros it
17372         puts in config.h, and many (non-GNU) compilers throw a spurious
17373         warning when testing an #undef macro with #if.  For consistency,
17374         while we are touching all these lines, use defined(MACRO) style
17375         throughout.
17376         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17377
17378 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17379
17380         Factor out the individual loaders, in preparation for preloading
17381         them as libtool modules.  Currently loader-preopen.c is linked
17382         unconditionally and other appropriate loaders discovered by
17383         AC_LTDL_DLLIB are built and linked in:
17384
17385         * libltdl/Makefile.am (libltdl_la_SOURCES): Add loader-preopen
17386         module.
17387         * m4/ltdl.m4 (AC_LTDL_DLLIB): Use AC_LIBOBJ to add appropriate
17388         loaders to libltdl.
17389         * libltdl/lt_system.h (LT_SCOPE): Moved to here.
17390         * libltdl/ltdl.h (lt_dlloader, lt_user_data, lt_module)
17391         (lt_module_open, lt_module_close, lt_find_sym, lt_dlloader_exit)
17392         (struct lt_user_dlloader, lt_dlloader_next, lt_dlloader_find)
17393         (lt_dlloader_name, lt_dlloader_data, lt_dlloader_add)
17394         (lt_dlloader_remove): Moved declarations...
17395         * libltdl/lt_loader.h: ...to here.
17396         * libltdl/ltdl.c: Include lt_loader.h.  Move loader implementation
17397         code from here...
17398         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
17399         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
17400         libltdl/loader-loadlibrary.c, libltdl/loader-preopen.c,
17401         libltdl/loader-shl_load.c: ...to here.
17402         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
17403         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
17404         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
17405         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (AM_CPPFLAGS):
17406         Add -I$(top_srcdir)/../.. so that libltdl include files can be
17407         written as #include <libltdl/lt_dlloader.h> and found correctly.
17408
17409 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17410
17411         Factor out the mutex handling and error handling into their own
17412         modules.  Mutex handling is not currently useful in combination
17413         with posix threads, and should be easier to replace if it is in a
17414         separate module.  Additionally, we can factor out the loaders in
17415         such a way as to depend on only the portability layer and these
17416         new mutex and error modules now:
17417
17418         * libltdl/Makefile.am (pkginclude_HEADERS): Install lt_error.h and
17419         lt_mutex.h to $includedir/libltdl.
17420         (libltdl_la_SOURCES): Build lt_error and lt_mutex objects.
17421         * libltdl/ltdl.h (LT_SCOPE): Moved from here...
17422         * libltdl/lt_system.h (LT_SCOPE): ...to here.
17423         * libltdl/ltdl.c (lt_dlerror_strings, LT_DLSTRERROR): Moved from
17424         here...
17425         * libltdl/lt__private.h (lt__error_strings, LT__STRERROR): ...to
17426         here as additional internal interfaces to lt_error.  Changed all
17427         callers.
17428         * libltdl/ltdl.c (LT_DLMUTEX_LOCK, LT_DLMUTEX_UNLOCK)
17429         (LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR, lt_dlmutex_lock_func)
17430         (lt_dlmutex_unlock_func, lt_dlmutex_geterror_func)
17431         (lt_dllast_error): Moved from here...
17432         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, LT__MUTEX_SETERRORSTR)
17433         (LT__MUTEX_GETERROR, lt__mutex_lock_func, lt__mutex_unlock_func)
17434         (lt__mutex_geterror_func, lt__last_error): ...to here as
17435         additional internal interfaces to lt_mutex.  Changed all callers.
17436         (LT_MUTEX_SETERROR): Take an errorcode rather than a string.
17437         Changed all callers.
17438         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dlmutex_register): Moved from
17439         here...
17440         * libltdl/lt_mutex.c, libltdl/lt_mutex.h (lt_dlmutex_register):
17441         ...to here. New files.
17442         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dladderror, lt_dlseterror)
17443         (lt_dlerror_table):
17444         Moved from here...
17445         * libltdl/lt_error.c, libltdl/lt_error.h (lt_dladderror)
17446         (lt_dlseterror, lt_dlerror_table): ...to here. New files.
17447
17448 2004-04-13  Scott James Remnant  <scott@netsplit.com>
17449
17450         * Makefile.am (XDELTA_OPTIONS): Remove --pristine as that
17451         generates huge xdeltas.
17452
17453 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17454
17455         * libltdl/ltdl.c (argz_append, argz_create_sep, argz_insert)
17456         (argz_next, argz_stringify): Move from here...
17457         * libltdl/argz.c: New file. ...to here.
17458         * libltdl/lt__glibc.h: New file. Rename global symbols into the
17459         lt__ namespace.
17460         * libltdl/lt__private.h: Include lt__glibc.h.
17461         * libltdl/Makefile.am (libltdl_la_SOURCES): Add new files.
17462         (AM_CPPFLAGS): Add -DLTDL.
17463         * libltdl/argz.h (argz_append, argz_create_sep, argz_insert)
17464         (argz_next, argz_stringify): New file. Declare argz functions
17465         here, including lt__glibc.h when LTDL is defined to rename global
17466         symbols for libltdl.
17467         * m4/ltdl.m4 (AC_LTDL_FUNC_ARGZ): Add argz to AC_LIBOBJ if any of
17468         our argz_* functions are missing from the system libraries.
17469
17470         * libltdl/ltdl.c: Move standard headers and preprocessor guards
17471         from here...
17472         * libltdl/lt__private.h: ...to here.  New file to declare ltdl's
17473         internal interfaces.
17474         * libltdl/ltdl.c: Include lt__private.h.
17475         * m4/ltdl.m4 (AC_LIB_LTDL): Add lt_dirent to AC_LIBOBJ if all of
17476         opendir, readdir and closedir are missing.
17477         (AC_CHECK_HEADERS): Remove assert.h, ctype.h, errno.h, malloc.h,
17478         stdio.h and stdlib.h; these headers are all available in standard
17479         c89 environments and newer.
17480         * libltdl/lt__private.h: Include them here unconditionally.
17481         * libltdl/lt__dirent.c (opendir, readdir, closedir): New file.
17482         Windows dirent emulation functions moved to here...
17483         * libltdl/ltdl.c (opendir, readdir, closedir): ...from here.
17484         * libltdl/lt__dirent.h: New file.  Rename the global symbols from
17485         lt__dirent.c into the lt__ namespace so they don't clash with
17486         other libraries.
17487
17488 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17489
17490         Factor out the bottom portability layer from ltdl.  Code in this
17491         layer has global symbols renamed by lt__pre89.h, and may not
17492         refer to any symbols except those provided by the system libraries
17493         or other code in the portability layer:
17494
17495         * libltdl/lt__pre89.h: New file.  Rename all the symbols from
17496         LTLIBOBJS into the lt__ namespace so that they don't clash with
17497         other libraries.
17498         * libltdl/ltdl.c (rpl_memcpy, rpl_memmove, rpl_strchr, rpl_strcmp)
17499         (rpl_strrchr): Moved from here...
17500         * libltdl/memcpy.c (memcpy): ...to here, and fixed void *
17501         dereference bug...
17502         * libltdl/memmove.c (memmove): ...to here, and fixed void *
17503         dereference bug...
17504         * libltdl/strchr.c (strchr): ...to here...
17505         * libltdl/strcmp.c (strcmp): ...here...
17506         * libltdl/strrchr.c (strrchr): ...and here.
17507         * libltdl/Makefile.am (libltdl_la_SOURCES): Add lt__pre89.h.
17508         (libltdl_la_LIBADD, libltdlc_la_LIBADD): Add $(LTLIBOBJS).
17509         (ltdldata_DATA): Add replacement sources files.
17510         * m4/ltdl.m4 (AC_LIB_LTDL): Do careful config.h and LTLIBOBJ
17511         setting for missing pre89 functions.
17512
17513 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17514
17515         * libltdl/ltdl.h (LT_PARAMS): Removed.  Changed all users to
17516         ANSI prototypes.
17517         (lt_ptr): Keep backwards compatibility stub.
17518         * libltdl/ltdl.c, libltdl/ltdl.h: Use ANSI function declarations
17519         throughout.  s/lt_ptr/void */g.
17520
17521 2004-04-08  Fredrik Estreen  <estreen@algonet.se>
17522
17523         * m4/ltdl.m4: Rename shrext to shrext_cmds here too.
17524
17525 2004-04-06  Gary V. Vaughan  <gary@gnu.org>
17526
17527         There was no clean separation of abstraction layers in libltdl.
17528         The first step in fixing this is to factor out the memory
17529         management abstraction, making a start on removing promiscuity
17530         from the underlying portability layer:
17531
17532         * doc/libtool.texi (Libltdl interface): Remove lt_dlmalloc,
17533         lt_dlrealloc and lt_dlfree references.  The memory management
17534         layer used by libltdl is now private.
17535         * libltdl/lt_system.h: New installed header for system portability
17536         abstraction.
17537         * libltdl/ltdl.h: Use it.
17538         * libltdl/lt__alloc.c, libltdl/lt__alloc.h: New module above
17539         system portability layer to abstract ltdl's memory management.
17540         * libltdl/ltdl.c: Use lt__alloc.h.
17541         (closedir): Use free.
17542         (opendir): Use malloc/free.
17543         (lt__xalloc_die_callback): Report memory failures through
17544         lt_dlerror.
17545         (lt_dlinit): Use it to initialise memory management.
17546         (LT_DLMALLOC, LT_DLREALLOC, LT_DLFREE, LT_EMALLOC, LT_EREALLOC)
17547         (rpl_strdup, rpl_realloc, lt_estrdup, lt_emalloc, lt_erealloc):
17548         Removed in favour of...
17549         (lt__strdup, lt__memdup, MALLOC, REALLOC, FREE): ...these calls
17550         from libltdl/lt__alloc.h.  Changed all callers.
17551         (rpl_argz_append, rpl_argz_create_sep, rpl_argz_insert): As part
17552         of the portability layer, these functions no longer use libltdl
17553         memory management API.
17554         (free_vars): Factored out.
17555         (LT_DLMEM_REASSIGN): While redoing memory handling, renamed...
17556         * libltdl/lt__alloc.h (MEMREASSIGN): ...to this.
17557         * libltdl/Makefile.am (AUTOMAKE_OPTIONS): Let automake track
17558         dependencies automatically.
17559         (pkgincludedir): Override from parent package's setting.
17560         (pkginclude_HEADERS): Install lt_system.h.
17561         (libltdl_la_SOURCES): Add new files.
17562         * NEWS: Updated.
17563         Reported by Dalibor Topic <robilad@kaffe.org>
17564
17565 2004-04-01  Peter O'Gorman  <peter@pogma.com>
17566
17567         * ltmain.in: Remove an extra eval concat_cmds that some idiot added.
17568         Fixes double eval on AIX, reported by Albert Chin and Uwe Moeller.
17569
17570         * NEWS: Add a news item about xlc support that I forgot yesterday.
17571
17572 2004-03-31  Peter O'Gorman  <peter@pogma.com>
17573
17574         * m4/libtool.m4, ltmain.in (darwin): Support IBM's xlc and xlc++.
17575
17576 2004-03-31  Gary V. Vaughan  <gary@gnu.org>
17577
17578         * m4/libtool.m4 (_LT_LANG_C_CONFIG): If $compiler is not set, then
17579         don't call the macros that test it.
17580         (_LT_LANG_CXX_CONFIG): Ditto.
17581         (_LT_LANG_F77_CONFIG): Ditto.
17582         (_LT_LANG_GCJ_CONFIG): Ditto.
17583         (_LT_LANG_RC_CONFIG): Ditto.
17584
17585 2004-03-30  Gary V. Vaughan  <gary@gnu.org>
17586
17587         * libtoolize.in (func_scan_files): sed BRE have no alternation, so
17588         break LT_INIT matcher out.
17589         (func_serial): Don't escape literal parens for grep BRE.
17590
17591         * m4/libtool.m4 (LT_INIT): aclocal can't see AC_DEFUN_ONCE, so use
17592         AC_DEFUN and m4_define.
17593         * libtoolize.in (func_serial): No longer accept AC_DEFUN_ONCE...
17594         (func_grep): ...so mere grep is sufficient again...
17595         (EGREP): ...and this is no longer required.
17596
17597 2004-03-29  Gary V. Vaughan  <gary@gnu.org>
17598
17599         * m4/libtool.m4: Use LT_INIT as #serial tag.
17600         * libtoolize.in: Grok LT_INIT!  Pass A[CM]_PROG_LIBTOOL to...
17601         (func_serial_update): ...here, we now take an additional parameter
17602         containing another regex to match ancient serialed files.
17603         (func_serial): Accept AC_DEFUN_ONCE of the #serial tag...
17604         (func_grep): ...which requires egrep...
17605         (EGREP): ...substituted by config.status.
17606         (func_scan_files): Set seen_libtool if LT_INIT goes by.
17607
17608         * Makefile.am (pkgmacro_DATA): Install ltoptions.m4.
17609
17610         * libltdl/Makefile.am (AM_CPPFLAGS): Also check $top_builddir for
17611         config.h.
17612         (ltdl.o): config.h is in $top_builddir.
17613
17614 2004-03-24  Scott James Remnant  <scott@netsplit.com>
17615
17616         * NEWS: Explain more fully why we no longer load libraries
17617         with global symbol resolution.
17618         * doc/libtool.texi (libtool script contents): Add missing
17619         documentation for 'inherit_rpath' variable.
17620
17621         * configure.ac: Catch errors during calls to AC_PROG_CXX,
17622         AC_PROG_CXXCPP and AC_PROG_F77 before LT_INIT.  Only set the
17623         HAVE_CXX and HAVE_F77 conditions to true if an error didn't
17624         occur (AC_PROG_CXX leaves CXX="g++" even if it didn't find one).
17625         Set HAVE_GCJ and HAVE_RC to true correctly as well.
17626         * m4/libtool.m4 (LT_PROG_GCJ): If AC_PROG_GCJ or AM_PROG_GCJ are
17627         defined, expand to the definition of those instead of our own.
17628         Define GCJ to '' instead of 'no' if not found.
17629         (LT_PROG_RC) Define RC to '' instead of 'no' if not found.
17630         (_LT_LANG_GCJ_CONFIG): Require LT_PROG_GCJ to be expanded first.
17631         (_LT_LANG_RC_CONFIG): Require LT_PROG_RC to be expanded first.
17632
17633         * libltdl/ltdl.c (sys_dl_open): Don't load libraries with global
17634         symbol resolution.
17635         * NEWS: Updated.
17636
17637 2004-03-24  Albert Chin-A-Young  <china@thewrittenword.com>
17638
17639         * m4/libtool.m4: Add new variable, inherit_rpath, if the
17640         RPATHs of the libraries being linked are inherited in
17641         the output file. For systems with a linker exhibiting
17642         this feature, programs/libraries must be relinked at
17643         installation time.
17644
17645         * m4/libtool.m4: When linking convenience libraries on Solaris
17646         with the Sun C++ compiler, pass convenience libraries through
17647         to the linker with -Qoption between allextract/defaultextract.
17648         The Sun C++ compiler bundles -Qoption arguments so
17649         convenience libraries are linked with defaultextract
17650         otherwise.
17651         * tagdemo/Makefile.am, tagdemo/main.cpp, tagdemo/conv.h,
17652         tagdemo/conv.cpp: Augment tagdemo test to link a convenience
17653         library with a libtool library.
17654
17655         * ltmain.in: Piecewise linking doesn't work when the output
17656         file is an absolute path, use the basename only instead.
17657
17658         * ltmain.in: When a library is installed, dependent on a
17659         convenience library, and it involves relinking, the object
17660         files extracted from the convenience library are not removed
17661         after the relink. This is a problem if you build as non-root,
17662         install as root, then try to remove the build directory as
17663         non-root; Clean up properly if relink fails; Change
17664         "$realname"U to ${realname}T to be consistent.
17665
17666 2004-03-24  Scott James Remnant  <scott@netsplit.com>
17667
17668         * ltmain.in <prog linkmode>: Always add -L options to
17669         $newlib_search_path instead of just in scan mode to ensure that
17670         non-libtool libraries in user-specified directories can be found.
17671
17672 2004-03-22  Scott James Remnant  <scott@netsplit.com>
17673
17674         * m4/libtool.m4 (_LT_CONFIG): Remove unneeded else condition
17675         code, now the support determination is done in m4.
17676         (_LT_LANG): Correct comment, unexpected leak from keybuk-lt-tag.patch.
17677
17678 2004-03-21  Scott James Remnant  <scott@netsplit.com>
17679
17680         * libltdl/Makefile.am (libltdl_la_LDFLAGS): Increment CURRENT
17681         and AGE of libltdl, warranted by the addition of lt_dlhandle_find()
17682         since 1.5.2.
17683
17684 2004-03-21  Scott James Remnant  <scott@netsplit.com>
17685
17686         Further sweeping changes to the user interface to libtool from
17687         `configure.ac' to allow users to better control the list of
17688         supported languages.  Three LT_INIT options 'no-lang', 'all-lang'
17689         and 'auto-lang' (the default) control the initial list and others
17690         may be added with LT_LANG.
17691
17692         * m4/libtool.m4 (_LT_CONFIG): Renamed AC_LIBTOOL_CONFIG to _LT_CONFIG
17693         which is more consistent with our own namespace and gets us further out
17694         of Autoconf's.
17695         (_LT_LIBTOOL_TAGS): Output available_tags variable based entirely
17696         on the value of _LT_TAGS.
17697         (_LT_COPYING): Call _LT_LIBTOOL_TAGS to output available tags,
17698         always append tag configuration if the tag is available.
17699         (LT_LANG): New macro to enable support for a language that accepts
17700         tag names (eg. "CXX") or human language names (eg. "C++").
17701         (_LT_LANG): Internal support macro for above that appends the
17702         tag to _LT_TAGS and calls the appropriate config macro.
17703         (LT_INIT): Ensure that LT_LANG is not called before LT_INIT.
17704         (AC_LIBTOOL_TAGS): Removed, call LT_LANG for each language now.
17705         (_LT_AC_TAG_CHECK): Removed, _LT_LANG handles duplicate calls.
17706         (_LT_LANG_DEFAULT_CONFIG): Macro to set initial language support
17707         based on options passed to LT_INIT.
17708         (_LT_SETUP): Call _LT_LANG_DEFAULT_CONFIG.
17709         (_LT_AC_TAG_CONFIG): Removed, handled by _LT_LANG_DEFAULT_CONFIG.
17710         (_LT_AC_LANG_CXX, _LT_AC_LANG_F77, _LT_AC_LANG_GCJ): Removed,
17711         automatic language support inclusion now handled by
17712         _LT_LANG_DEFAULT_CONFIG.
17713         (AC_LIBTOOL_CXX): Obsolete macro, update to LT_LANG(C++).
17714         (AC_LIBTOOL_F77): Obsolete macro, update to LT_LANG(Fortran 77).
17715         (AC_LIBTOOL_GCJ): Obsolete macro, update to LT_LANG(Java).
17716         (AC_LIBTOOL_LANG_C_CONFIG_: Removed.
17717         (_LT_AC_LANG_C_CONFIG): Renamed to _LT_LANG_C_CONFIG, call
17718         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17719         (_LT_SETUP): Replace call to AC_LIBTOOL_LANG_C_CONFIG with call to
17720         new _LT_LANG_C_CONFIG macro.
17721         (AC_LIBTOOL_LANG_CXX_CONFIG): Removed.
17722         (_LT_AC_LANG_CXX_CONFIG): Renamed to _LT_LANG_CXX_CONFIG, call
17723         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17724         (AC_LIBTOOL_LANG_F77_CONFIG): Removed.
17725         (_LT_AC_LANG_F77_CONFIG): Renamed to _LT_LANG_F77_CONFIG, call
17726         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17727         (AC_LIBTOOL_LANG_GCJ_CONFIG): Removed.
17728         (_LT_AC_LANG_GCJ_CONFIG): Renamed to _LT_LANG_GCJ_CONFIG, call
17729         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17730         (AC_LIBTOOL_LANG_RC_CONFIG): Removed.
17731         (_LT_AC_LANG_RC_CONFIG): Renamed to _LT_LANG_RC_CONFIG, call
17732         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17733         (LT_AC_PROG_GCJ): Renamed to LT_PROG_GCJ.
17734         (LT_AC_PROG_RC): Renamed to LT_PROG_RC.
17735         * m4/ltoptions.m4: Define new 'no-lang', 'auto-lang' and 'all-lang'
17736         options which set the default for _LT_LANG_DEFAULT_CONFIG.
17737         * m4/lt~obsolete.m4: Removed AC_LIBTOOL_CONFIG, _LT_AC_LANG_C_CONFIG,
17738         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG; all of which are no
17739         long referenced in any way.
17740         * configure.ac: Enable all languages.
17741         * tests/cdemo/configure.ac, tests/demo/configure,ac,
17742         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
17743         tests/mdemo/configure.ac, tests/pdemo/configure,ac,
17744         tests/tagdemo/configure.ac: Remove calls to AC_LIBTOOL_TAGS,
17745         the default 'auto-lang' mode now does the right thing.
17746         * doc/libtool.texi (The LT_INIT macro): Add documentation for
17747         new LT_INIT options and the LT_LANG macro, replacing the old
17748         documentation of AC_LIBTOOL_TAGS which is no more.
17749         * NEWS: Updated.
17750
17751 2004-03-17  Scott James Remnant  <scott@netsplit.com>
17752
17753         * m4/libtool.m4: Removed AC_BEFORE references to AC_LIBTOOL_SETUP
17754         which is no more.
17755         * m4/lt~obsolete.m4: As AC_LIBTOOL_SETUP is no longer referenced,
17756         it can be removed from this file.  Remove _AC_PROG_LIBTOOL also.
17757
17758 2004-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17759
17760         * m4/libtool.m4: Remove newlines from lt_ld_extra, so
17761         variable can safely be stored in config.cache.
17762
17763 2004-03-14  Michael Pruett  <michael@68k.org>
17764
17765         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS0 [irix]: Define
17766         archive_expsym_cmds so that --export-symbols will work.
17767
17768 2004-03-11  Peter O'Gorman  <peter@pogma.com>
17769
17770         * ltmain.in (link_all_deplibs,darwin): Link libraries in the
17771         correct order. Bug from Zachary Pincus <zpincus@stanford.edu>.
17772
17773 2004-03-14  Scott James Remnant  <scott@netsplit.com>
17774
17775         * m4/ltmain.in: Only check precious_files_regex if it is not empty.
17776
17777 2004-03-14  Gary V. Vaughan  <gary@gnu.org>
17778
17779         * doc/libtool.texi (Autoconf and LTLIBOBJS): The correct version
17780         of Autoconf is 2.54.
17781         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
17782
17783 2004-03-13  Gary V. Vaughan  <gary@gnu.org>
17784
17785         * doc/libtool.texi (Using Automake): Cite correct Automake version
17786         for -dlopen quoting.
17787         (Autoconf and LTLIBOBJS): Cite correct Autoconf versions
17788         throughout.
17789         (Distributing libltdl): Use AM_CPPFLAGS; INCLUDES is deprecated.
17790         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
17791
17792 2004-03-05  David Edelsohn  <edelsohn@gnu.org>
17793
17794         * m4/libtool.m4: Disable building static libraries if building
17795         shared libraries on AIX 5L.
17796
17797 2004-03-05  Gary V. Vaughan  <gary@gnu.org>
17798
17799         * libtoolize.in: Remove --ltdl-tar.  It doesn't work with the
17800         current implementation, and seems more or less pointless.
17801         * doc/libtool.texi (Invoking libtoolize): Updated.
17802         * NEWS: Updated.
17803
17804         * doc/libtool.texi: This manual has not been maintained properly
17805         for a number of years.  Much of what it said was outdated, or
17806         plain wrong with reference to modern autotools.  This change
17807         represents a first pass edit to clean up the obviously wrong.
17808
17809 2004-03-02  Gary V. Vaughan  <gary@gnu.org>
17810
17811         * bootstrap: Prune out my arch mirror dir before running
17812         amok through the tree with 'rm -rf'!
17813
17814 2004-03-02  Patrick Welche  <prlw1@newn.cam.ac.uk>
17815
17816         * doc/libtool.texi (LT_INIT): Dumb typos fixed.
17817
17818 2004-02-23  Gary V. Vaughan  <gary@gnu.org>
17819
17820         * ltmain.in <install mode>: Add missing --help doc for
17821         -inst-prefix option.
17822
17823         * ltmain.in <link mode>: Add missing --help doc for -shrext
17824         option.
17825
17826         * ltmain.in (IFS): Move '\n' to beginning of IFS so that emacs
17827         doesn't offer to strip trailing ' \t' on every save.
17828
17829         * ltmain.in: Add missing --help doc for --preserve-dup-deps.
17830
17831 2004-02-22  Gary V. Vaughan  <gary@gnu.org>
17832
17833         * Makefile.maint (web-manual): Generate the web manual carefully
17834         so that links will still work when it is uploaded to gnu.org.
17835         * README-alpha: Note that this rule should be used at release
17836         time.
17837
17838 2004-02-20  Gary V. Vaughan  <gary@gnu.org>
17839
17840         Sweeping changes to the user interface to libtool from
17841         `configure.ac' to be more like AC_INIT and accept a space
17842         delimited list of options.  Instead of calling `AC_LIBTOOL_DLOPEN;
17843         AC_PROG_LIBTOOL', we now recommend `LT_INIT([dlopen])':
17844
17845         * m4/libtool.m4 (AC_PROG_LIBTOOL, _AC_PROG_LIBTOOL)
17846         (AC_LIBTOOL_SETUP): Removed.  Added AU_DEFUNs.
17847         (LT_INIT): Replace with an Autoconf like interface which accepts a
17848         version number as a minimum required libtool release at configure
17849         time.
17850         * m4/ltoptions.m4: New file inspired by automake/m4/amoptions.m4,
17851         which additionally flags an error if the configuring libtool
17852         macros are not new enough according to LT_INIT.
17853         (LT_OPTION_DEFINE): New macro to declare option handlers.
17854         (dlopen, win32-dll, shared, disable-shared, static)
17855         (disable-static, fast-install, disable-fast-install, pic-only)
17856         (no-pic): Newly LT_OPTION_DEFINEd option handlers that use...
17857         (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC, _LT_ENABLE_FAST_INSTALL)
17858         (_LT_WITH_PIC, _LT_WIN32_DLL): New macros to handle
17859         LT_LIBTOOL_INIT options...
17860         * m4/libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC)
17861         (AC_ENABLE_FAST_INSTALL, AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL):
17862         ...to replace these user interface macros, now defined as
17863         AU_DEFUNs.
17864         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
17865         Removed.  No longer required with LT_INIT_LIBTOOL interface.
17866         Added AU_DEFUNs.
17867         (AM_ENABLE_SHARED, AM_DISABLE_SHARED, AM_ENABLE_STATIC)
17868         (AM_DISABLE_STATIC): Changed AU_DEFUNs to match new interface.
17869         (_LT_SETUP): Internal to LT_INIT, replaces AC_LIBTOOL_SETUP.
17870         * m4/lt~obsolete.m4 (AC_LIBTOOL_SETUP, _AC_PROG_LIBTOOL)
17871         (_LT_PROG_LTMAIN):  More AC_DEFUNs that have been retracted.
17872         * configure.ac: Use new interface.
17873         * doc/libtool.texi: Document new interface.
17874         * NEWS: Updated.
17875
17876 2004-02-18  Gary V. Vaughan  <gary@gnu.org>
17877
17878         * commit (SHELL): Set it explicitly, incase some madman is using
17879         tcsh as their login shell :-b
17880
17881 2004-02-15  Scott James Remnant  <scott@netsplit.com>
17882
17883         * Makefile.am (m4/ltversion.m4): Generate serial number by
17884         removing initial '1.' from the revision, replace @MACRO_SERIAL@
17885         with this new variable.
17886         * m4/ltversion.in: Use @MACRO_SERIAL@ for the serial number
17887         as some shells don't like a '.' when using test.
17888
17889         * m4/ltversion.in: Add a serial number to this file otherwise
17890         libtoolize will refuse to copy it into $pkgdatadir, where it
17891         is needed by m4/libtool.m4.
17892
17893 2004-02-15  Peter O'Gorman  <peter@pogma.com>
17894
17895         * m4/libtool.m4, ltmain.in: Rename shrext to shrext_cmds.
17896
17897 2004-02-13  Scott James Remnant  <scott@netsplit.com>
17898
17899         * ltmain.in, libtoolize.in, commit, config/mailnotify: Correctly
17900         quote usage of $basename and $dirname to avoid (unlikely) path
17901         expansion.
17902
17903         * tests/sh.test: Test the config/ltmain.sh and libtoolize in the
17904         build directory not the source directory, where they won't exist
17905         during 'make distcheck'.
17906         * ltmain.in: Revert one line of previous intendation clean-up
17907         to enable one of the sh.test checks to pass.
17908
17909         * tests/cdemo/configure.ac: Drop AC_PREREQ back to 2.54, this
17910         was debris from Gary's cvsapply going mad and wasn't backed
17911         out.
17912
17913         * Makefile.am (pkgmacro_DATA): We have to distribute
17914         m4/ltversion.m4 because it can be needed before the Makefile
17915         that generates it exists.
17916
17917 2004-02-13  Gary V. Vaughan  <gary@gnu.org>
17918
17919         * commit (MKSTAMP): Look for mkstamp in the right place.
17920
17921 2004-02-12  Scott James Remnant  <scott@netsplit.com>
17922
17923         * Makefile.maint, Makefile: Move rules intended for Libtool
17924         maintainers only out of the Makefile we distribute and into one
17925         that we only need keep in CVS.
17926         * README-alpha: Add -fMakefile.maint to the instructions where
17927         needed.
17928
17929 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>
17930         Scott James Remnant  <scott@netsplit.com>
17931
17932         * ltmain.in: Fix typo: duplcations -> duplications,
17933         Fix indentation of a handful of badly indented blocks,
17934         Fix last remaining use of 'grep' to $GREP,
17935         Remove unnecessary trailing slash where we break a line on a
17936         command separator.
17937         * m4/libtool.m4: Also remove unnecessary trailing slash where
17938         we break a line on a command separator.
17939
17940 2004-02-12  Scott James Remnant  <scott@netsplit.com>
17941
17942         * m4/ltoptions.m4: This got committed by an over-keen Gary,
17943         but the support for this isn't ready yet and if aclocal decides
17944         to m4_include this (which it will) you'll get a non-functioning
17945         libtool.  Removed.
17946
17947         * ltmain.in: Remove duplicated version checking block.
17948
17949         * bootstrap, m4/libtool.m4: Argh, Gary went crazy after cvsapply
17950         went crazy and backed out more than he should've.  This patch puts
17951         some of it back again.
17952
17953         * ltmain.in, libtoolize.in, commit, config/mailnotify: Remove
17954         $SED from definitions of $dirname and $basename and prefix each
17955         use with it instead.  Some shells (zsh) treat the expansion as
17956         a single command instead of a command with arguments.
17957
17958         * config/mailnotify (func_sendmail): Look for sendmail in a
17959         couple of common non-PATH locations as well.
17960
17961         * ltmain.in: Fix typo: macro's -> macros.
17962
17963         * ltmain.in: Correct definition of basename sed expression to
17964         not include single quotes.
17965
17966 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
17967
17968         * libtoolize.in: Use $progpath as for ltmain.in to work around the
17969         IRIX bug described below.
17970         * commit, config/mailnotify: Ditto. Resynch with cvs-utils HEAD.
17971
17972 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>,
17973             Gary V. Vaughan  <gary@gnu.org>
17974
17975         * ltmain.in (progpath): Work around backward compatibility issue
17976         on IRIX 6.5. On IRIX 6.4+, sh is ksh but when the shell is invoked
17977         as "sh" and the current value of the _XPG environment variable is
17978         not equal to 1 (one), the special positional parameter $0, within
17979         a function call, is the name of the function. So, rather than
17980         using "$0" in functions, we set $progpath in the body and use that
17981         everywhere instead (incase of code refactoring later).
17982         (EXIT_SUCCESS, EXIT_FAILURE, EXIT_MISMATCH): For clarity.
17983
17984 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
17985
17986         * Makefile.am (EXTRA_DIST): Remove config/mailnotify after all; it
17987         is of no use in a distribution tarball.
17988
17989 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
17990
17991         * commit: Fix cut-n-paste error.
17992
17993         * commit: Completely change CVS/Root->name sed script to actually
17994         work when :ext: is not shown.
17995
17996         * commit: Improve CVS/Root->name sed script to work when :ext: is
17997         not shown.
17998
17999 2004-02-11  Albert Chin-A-Young  <china@thewrittenword.com>
18000
18001         * m4/libtool.m4: Fix typo: testring -> teststring.
18002
18003 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
18004
18005         * commit: Mail a nicer commit notification.
18006
18007 2004-02-10  Gary V. Vaughan  <gary@gnu.org>
18008
18009         * NEWS, bootstrap, configure.ac, ltmain.in, m4/libtool.m4:
18010         * m4/lt~obsolete.m4, tests/cdemo/configure.ac: Arghh.  cvsapply just
18011         went crazy and committed a bunch of stuff that shouldn't have been
18012         in the last changeset.  The patch backs it all out.
18013
18014         * config/mailnotify: New file for mailing commit notifications,
18015         imported from cvs-utils.
18016         * commit: Updated from cvs-utils and tweaked for libtool.
18017         * Makefile.am (EXTRA_DIST): Add config/mailnotify.
18018
18019 2004-02-06  Gary V. Vaughan  <gary@gnu.org>
18020
18021         * bootstrap: Remove vcl.tmp, otherwise it can interfere with make.
18022         * Makefile.am (vcl.tmp): Move comment out of multi-line command,
18023         as this rule is called from bootstrap as if it were a Makefile.
18024
18025         * m4/ltversion.in: New file to capture what version number macros
18026         are being used.
18027         * Makefile.am (m4/ltversion.m4): New rule to create it from
18028         m4/ltversion.in.
18029         (nodist_pkgmacro_DATA): Add m4/ltversion.m4.
18030         (EXTRA_DIST): Add m4/ltversion.in.
18031         * m4/libtool.m4 (AC_LIBTOOL_SETUP): AC_REQUIRE LTVERSION_VERSION
18032         from ltversion.m4.
18033         * bootstrap: Call the Makefile.am to create an initial
18034         m4/ltversion.m4.
18035         * ltmain.in: Diagnose version mismatches of various flavours.
18036         * TODO: Remove mismatch item.
18037         * NEWS: Updated.
18038
18039         * Makefile.am ($(top_builddir)/config.status): Removed.
18040         * configure.ac (CONFIG_STATUS_DEPENDENCIES): This substitution is
18041         how automake-1.8 now informs all Makefiles when config.status
18042         needs to be rebuilt.
18043         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
18044
18045         * configure.ac (AC_CONFIG_FILES): Generate libtoolize from here.
18046         * Makefile.am (libtool, libtoolize): These rules are redundant.
18047         Automake generates better rules for remaking these files.
18048
18049         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Catch unexpanded macros with
18050         beginning with LT_ and _LT_.
18051         * configure.ac (LT_MAJOR, LT_MINOR, LT_MICRO, LT_ALPHA): Renamed
18052         to lt_major, lt_minor, lt_micro, lt_alpha to save triggering the
18053         unexpanded macros error.
18054
18055         * m4/libtool.m4 (AC_PROVIDE_IFELSE): Removed.  We now require
18056         Autoconf 2.58, which ships this macro anyway.
18057
18058         * Makefile.am: Comment typo.
18059
18060         * m4/libtool.m4 (LT_PREREQ): Declare the minimum release number
18061         that is required for the calling code.
18062         * doc/libtool.texi (AC_PROG_LIBTOOL): Document it.
18063         * NEWS: Updated.
18064
18065 2004-02-05  Peter O'Gorman  <peter@pogma.com>
18066
18067         * ltmain.in (infer_tag, win32_libid): Style changes. Rename
18068         infer_tag to func_infer_tag and win32_libid to func_win32_libid.
18069         * m4/libtool.m4 (cygwin): rename win32_libid to func_win32_libid.
18070
18071 2004-02-04  Peter O'Gorman  <peter@pogma.com>
18072
18073         * ltmain.in (infer_tag): Move tag inferrence to a shell function.
18074         Also test $base_compile against $CC with escaped arguments. Bug
18075         reported by Geoff Keating <geoffk@apple.com>.
18076
18077 2004-02-03  Scott James Remnant  <scott@netsplit.com>
18078
18079         * Makefile.am (install-data-hook): Manually make config.guess
18080         and config.sub executable after they are installed as _DATA.
18081         We can't use _SCRIPTS because the various program name
18082         transforms may be applied to them.
18083         (dist_pkgdata_DATA): List config.guess and config.sub here
18084         (pkgdata_SCRIPTS): instead of here.
18085
18086 2003-02-03  Scott James Remnant  <scott@netsplit.com>
18087
18088         * ltmain.in: Create temporary directory under a strict umask
18089         rather than running chmod afterwards, preventing a race
18090         condition where the directory could be replaced with a symbolic
18091         link in the time between the two commands.
18092
18093 2004-01-31  Peter O'Gorman  <peter@pogma.com>
18094
18095         * m4/libtool.m4 (_LT_CONFIG_STATUS_DECLARE): Change `echo to
18096         `$echo, causes problems when builtin echo is broken. Reported
18097         by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18098
18099 2004-01-27  Scott James Remnant  <scott@netsplit.com>
18100
18101         This fixes release procedure problems discovered whilst making
18102         the 1.5.2 release.
18103
18104         * Makefile.am (cvs-dist): Because we check whether ChangeLog
18105         has been committed, this rule can't be run with uncommitted
18106         source so we can't run 'commit' and don't need to run
18107         'make dist' a second time.  Fix CVS tag as it should be
18108         "release-X" not "Release-X".
18109         (cvs_commit): New rule for the cvs-release chain that runs
18110         'commit'
18111         (cvs-release): Depend on cvs-commit, depend on deltas instead of
18112         cvs-diff and xdelta.
18113         (cvs-diff): Removed, replaced with delta-diff.
18114         (delta-diff): Unpack and diff the old and new tarballs rather
18115         than using CVS, so we get a genuinely complete diff.
18116         (xdelta): Removed, replaced with delta-xdelta.
18117         (got-xdelta): New rule for improved reading.
18118         (delta-xdiff): Copied and cleaned up version of old xdelta rule.
18119         (deltas): Depends on delta-diff and delta-xdelta (make deltas).
18120         (cvs-news): Don't depend on timestamps, cvs-dist itself does now.
18121         (prev-tarball): This is the only place we need a LASTRELEASE check
18122         so copy the code here and remove the CHECK_RELEASE variable.
18123         (new-tarball): Check there's a new tarball (did cvs-dist work?)
18124         (FETCHFILES): Remove obsolete libltdl mentions.
18125         * README-alpha: Update CVS instructions as everything's changed
18126         on Savannah.
18127         (Release procedure): Update NEWS and ChangeLog after changing
18128         the version number (both times); Run 'make fetch' after running
18129         'configure' (difficult to do it beforehand); Require 'commit'
18130         before 'make cvs-dist' as that checks ChangeLog is committed;
18131         'make deltas' instead of 'cvs-diff' and 'xdelta', pass LASTRELEASE
18132         to make instead of OLDVERSION (and it's mandatory); Clean up
18133         uploading paragraph; Clearer announcement sending instruction;
18134         Removed ftp-upload@gnu.org mail as that's not necessary now;
18135         Make web page updating instructions a bit clearer; Add an instruction
18136         to update the manual for non-alphas.
18137         (Alpha release note template): Add a Subject; update CVS instructions.
18138         (Full release note template): Add a Subject; update CVS instructions.
18139         * configure.ac: Add dist-bzip2 to AM_INIT_AUTOMAKE as we talk
18140         about bz2 files in our release announcements; remove old reference
18141         to OLDVERSION.
18142
18143 2004-01-25  Scott James Remnant  <scott@netsplit.com>
18144
18145         * NEWS: Include 1.5.2 release information.
18146
18147 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
18148
18149         This fixes a bug in the libtoolize ltdl source installation rules,
18150         which were copying Makefile.in from the libtool tree into the
18151         package running libtoolize.  Now we explicitly list the files to
18152         copy to force the package to generate its own Makefile.in:
18153
18154         * libltdl/Makefile.am (libltdl_la_SOURCES, libltdlc_la_SOURCES):
18155         Add ltdl.h.
18156         (ltdldatadir): New variable for installation directory of
18157         libtoolize --ltdl files.
18158         (ltdldata_DATA): Tell automake what files to copy there at install
18159         time (and remove at unistall time!).
18160         (local-install-files): Removed.  This hack is not required
18161         anymore, the automake generated install rules are much more
18162         advanced than this.
18163         * Makefile.am (install-data-hook, uninstall-local): Removed.
18164         Libltdl files for libtoolize are installed by their own Makefile
18165         now.
18166
18167 2004-01-22  Jeff Squyres  <jsquyres@lam-mpi.org>
18168
18169         * m4/libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Some compilers
18170         (e.g. Intel Linux icc compiler) write temporary files to the current
18171         directory. These compilers do support -c and -o simultaneously but
18172         wrongly fail the test due to the failure to create temporary
18173         files. It is incorrect to penalize compilers which write temporary
18174         files to the current directory so the 'chmod -w .' is therefore
18175         removed.
18176
18177 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
18178
18179         * m4/libtool.m4 (LT_AC_PROG_EGREP): Wrapper for AC_PROG_GREP.
18180         AIX has a brain-dead grep that only handles lines < 2048
18181         characters.  Default GREP incase we are not using a future
18182         autoconf that sets it for us :-)  Changed all callers to use $GREP
18183         instead of grep, and to AC_REQUIRE LT_AC_PROG_EGREP.
18184         Declare GREP as a libtool config var.
18185         * ltmain.in: Use it.
18186         * tests/sh.test (scripts): Accept `if $GREP "^foo=bar"' by
18187         tightening the regexp.
18188         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
18189
18190 2004-01-21  Nick Hudson  <skrll@netbsd.org>
18191
18192         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [netbsd*]: Remove
18193         gratuitous ${libname}${release}${shared_ext} from
18194         library_names_spec.
18195
18196 2004-01-21  Peter O'Gorman  <peter@pogma.com>
18197
18198         * m4/libtool.m4 (AC_PROG_LD_RELOAD_FLAG): On darwin change the
18199         reload_cmds to use $CC, otherwise ld will thin out any fat
18200         objects.
18201
18202 2004-01-18  Benjamin Reed  <ranger@befunk.com>
18203
18204         * ltmain.in: Fix handling of frameworks in search paths.  Also
18205         a one-liner fix to eval shrext in the libtool library search.
18206
18207 2004-01-16  Gary V. Vaughan  <gary@gnu.org>
18208
18209         * configure.ac (AM_INIT_AUTOMAKE): Require 1.8 for bootstrap, or
18210         else aclocal.m4 is huge, and m4 directory is not distributed.
18211
18212         * configure.ac (AC_CONFIG_HEADERS): Create config.h in
18213         $top_srcdir.
18214         * m4/ltdl.m4 (AC_LIB_LTDL): Run AC_CONFIG_HEADERS for the user if
18215         necessary. Calculate filename from first argument to
18216         AC_CONFIG_HEADERS, and substitute as CONFIG_H.
18217         * libltdl/Makefile.am (AM_CPPFLAGS): Make sure we are searching in
18218         $top_srcdir for headers.
18219         (DEFS): Override the default HAVE_CONFIG_H with the config.h
18220         filename.
18221         (ltdl.lo): Reference config.h via $(CONFIG_H).
18222         * libltdl/ltdl.c (HAVE_CONFIG_H): Ditto.
18223
18224 2004-01-15  Scott James Remnant  <scott@netsplit.com>
18225
18226         * m4/lt~obsolete.m4: Add a file containing aclocal-fooling
18227         macro definitions which stop the contents of an installed
18228         libtool.m4 ending up in our aclocal.m4 when we bootstrap.
18229         * Makefile.am (pkgmacro_DATA): Note that we don't need to add
18230         lt~obsolete.m4 to this list.
18231
18232 2004-01-12  Gary V. Vaughan  <gary@gnu.org>
18233
18234         * m4/libtool.m4 (_LT_COPYING): Factor out copyright message so it
18235         only needs to be updated in one place.
18236         (AC_LIBTOOL_CONFIG): Refactor to be more readable.  Only add
18237         tags if a compiler was found; ie if you have no gcj compiler,
18238         don't tack the GCJ tag onto the generated libtool script.
18239
18240 2004-01-13  Peter O'Gorman  <peter@pogma.com>
18241
18242         * m4/libtool.m4: Quote shrext as it is evaled in ltmain.
18243
18244 2004-01-11  Scott James Remnant  <scott@netsplit.com>
18245
18246         * ltmain.in: new -precious-files-regex link mode option
18247         to prevent removal of matching files from the temporary
18248         output directory.
18249         (Debian Bug #221420)
18250         * doc/libtool.texi: document the new option.
18251         * NEWS: announce the new option.
18252
18253 2004-01-11  Gary V. Vaughan  <gary@gnu.org>
18254
18255         * libtoolize.in (func_copy_all_files): s/xfunc_copy/Xfunc_copy.
18256         Now the test can actually succeed sometimes.
18257
18258 2004-01-09  Gary V. Vaughan  <gary@gnu.org>
18259
18260         * libtoolize.in: Break out of the command argument parse loop when
18261         -- is encountered.
18262
18263 2004-01-08  Gary V. Vaughan  <gary@gnu.org>
18264
18265         * libtoolize.in (func_copy_all_files): s/test "x/test "X/ to keep
18266         tests/sh.test happy.
18267
18268 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
18269
18270         * Makefile.am (aclocal_macros, aclocal_DATA): Removed.
18271         (EXTRA_DIST): Remove m4 macro files; they are automatically
18272         added by automake.
18273         (pkgmacrodir): Where to install libtool macro files.
18274         (pkgmacro_DATA): List installable libtool macro files.
18275         (install-data-local): Remove previous versions of ltdl.m4 and
18276         libtool.m4 from their old location.
18277         * libtoolize.in: Use new pkgmacrodir installed macros when
18278         libtoolizing a project.  Treat libtool.m4 and ltdl.m4 specially,
18279         and func_serial_update() any other files from pkgmacrodir.
18280         (pkgmacrodir): Where to find installed libtool macro files.
18281         (aclocaldir): Removed.
18282         (func_copy_all_files): Add an optional callback parameter to
18283         control how files are copied.  If the callback is passed, don't
18284         tell it whether it can copy or not.
18285         (func_serial): Exchange parameters and make macro_regex optional,
18286         so that this function can be used to extract serial numbers from
18287         files with the traditional /^# serial [1-9][0-9]*$/ syntax.
18288         Changed all callers.
18289         (func_serial_update): Make macro_regex optional last parameter, so
18290         that this function can be used as a callback for
18291         func_copy_all_files().  Changed all callers.
18292         * m4/ltsugar.m4: Add a serial number.
18293
18294 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
18295
18296         A complete rewrite of the m4 code involved in the generation of
18297         libtool via config.status.  The old way involved manually
18298         synchronising disparate bits of shell code in several macros, to
18299         quote a copy of a shell variable, put that in config.status, maybe
18300         add it to some quotation loops to prevent early expansion, and
18301         then add a block to _LT_CONFIG_COMMANDS to bring it into the
18302         libtool script.  The new way is to mark shell variables for
18303         propogation using _LT_DECL for language independent variables, or
18304         _LT_TAGDECL for those that need to be propogated in several
18305         language flavours.  The marking can be done in the macro that
18306         probes the variables, and this new m4 machinery takes care of
18307         synchronising all the other bits of code at autoconf time:
18308
18309         * m4/ltsugar.m4:  New file.  Macros that are useful outside the
18310         context of libtool.  Initially, contains some generalised list
18311         management macros, and the scaffolding for dictionary type data
18312         storage and retrieval.
18313         * Makefile.am (aclocal_macros): Install ltsugar.m4.
18314         * m4/libtool.m4 (_LT_DECL): Mark a shell variable for export to
18315         the libtool script, along with a comment, and hints for quoting
18316         and renaming.
18317         (_LT_TAGDECL): Similarly mark a tagged shell variable for export
18318         in each tag.
18319         (lt_decl_tag_varnames, lt_decl_quote_varnames)
18320         (lt_decl_dquote_varnames, lt_decl_varnames_tagged)
18321         (lt_decl_all_varnames):  New utility macros for managing lists of
18322         shell variable names from _LT_DECL and _LT_TAGDECL.
18323         (_LT_CONFIG_STATUS_DECLARATIONS, _LT_CONFIG_STATUS_DECLARE):
18324         Expand to correctly quoted variable declarations in config.status
18325         from all marked shell variables.
18326         (_LT_LIBTOOL_DECLARE): Expand to commented and quoted variable
18327         declaration for libtool tag section.
18328         (_LT_LIBTOOL_CONFIG_VARS, _LT_LIBTOOL_TAG_VARS): Pass all marked
18329         variables to _LT_LIBTOOL_DECLARE.
18330         (_LT_CONFIG_COMMANDS): Use _LT_CONFIG_STATUS_DECLARATIONS and
18331         friends to generate all the variable passing shell code for
18332         config.status, to get marked variables from libtool.m4 into
18333         libtool itself eventually.
18334         (AC_LIBTOOL_CONFIG): Generate marked variable code for libtool tag
18335         configuration.  Changed all client macros to mark variables
18336         suitably rather than the hand pasting that was necessary
18337         previously.
18338         (AC_PROG_SED): Renamed from LT_AC_PROG_SED.
18339         (LT_AC_PROG_SED): Wrap AC_PROG_SED, and mark shell variables for
18340         propogation to the libtool script.
18341
18342 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
18343
18344         * libtoolize.in (seen_gettext): Removed unused variable.
18345
18346 2004-01-06  Gary V. Vaughan  <gary@gnu.org>
18347
18348         * libtoolize.in (func_scan_files): Don't assume the existence of
18349         aclocal.m4.  Make the comment more descriptive.
18350         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
18351
18352         * NEWS: Note libtoolize changes.
18353
18354         * ChangeLog.2003: New file, containing all the ChangeLog entries
18355         from 2003.  Trimmed ChangeLog accordingly.
18356
18357         * ltmain.in: Output 2004 in the copyright from libtool --version.
18358
18359 2004-01-03  Stefan Nordhausen  <nordhaus@informatik.hu-berlin.de>
18360         Scott James Remnant  <scott@netsplit.com>
18361
18362         * ltmain.in: Don't use the mkdir -p option when creating a
18363         temporary output directory so a symlink attack can't be used to
18364         arbitrarily chmod other directories on the system if libtool
18365         gets run as root.
18366
18367 2004-01-02  Peter O'Gorman  <peter@pogma.com>
18368
18369         * m4/libtool.m4: Ensure that ${ZSH_VERSION+set} is properly escaped.
18370
18371         * m4/libtool.m4 (CDPATH): Change the CDPATH setting so that it
18372         allows for zsh differences, as noted in the autoconf manual's
18373         Portable Shell - Special Shell Variables section.
18374
18375 2004-01-02  Scott James Remnant  <scott@netsplit.com>
18376
18377         * .cvsignore: Ignore stamp-vcl created by the Makefile.
18378
18379 2004-01-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
18380         Joe Orton  <joe@manyfish.co.uk>
18381
18382         * m4/libtool.m4 (AC_LIBTOOL_CONFIG): Add extra blackslash
18383         in front of all the inner double-quotes as this is removed
18384         on Solaris, IRIX and AIX leading to broken definitions
18385         in config.status.
18386
18387 2004-01-02  Scott James Remnant  <scott@netsplit.com>
18388
18389         * NEWS: Next release will be in 2004.
18390
18391 2003-12-31  Scott James Remnant  <scott@netsplit.com>
18392
18393         * ltmain.sh: Infer tagged configuration for link mode with the
18394         full compiler arguments available rather than only the first.
18395
18396 2003-12-31  Alexandre Duret-Lutz  <adl@gnu.org>
18397
18398         * ltmain.sh: Quote $exec_cmd before it is eval'ed, so that
18399         libtool --mode=execute echo '4 * 5' does not expand the `*'.
18400
18401 2003-11-28  Peter O'Gorman  <peter@pogma.com>
18402
18403         * m4/libtool.m4: Move things around so that "setopt NO_GLOB_SUBST"
18404         to make zsh behave wrt \ escapes happens early in config.status.
18405
18406 2003-11-27  Gary V. Vaughan  <gary@gnu.org>
18407
18408         * libltdl/configure.ac: Removed.
18409         * configure.ac (AC_CONFIG_HEADERS): Merged from
18410         libltdl/configure.ac.
18411         (AC_LIB_LTDL): Ditto.
18412         (AC_CONFIG_FILES): Add libltdl/Makefile.
18413         (AC_CONFIG_SUBDIRS): Removed.
18414         (AC_CONFIG_COMMANDS): Remove generation of libltdl/ltmain.sh.
18415         * libltdl/Makefile.am (libtool): Removed references, since we now
18416         share $(top_builddir)/libtool.
18417         * NEWS: Updated.
18418
18419 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18420
18421         * Makefile.am (vcl.tmp): Be careful of VPATH builds.
18422
18423         * Makefile.am (EXTRA_DIST): Add stamp-vcl, or we go back to a
18424         double configure run from a distributed tarball :-?
18425
18426 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18427
18428         Okay, the problem I am trying to solve is that when a change (say,
18429         bumping the version to 1.6 for the next release) is committed, the
18430         timestamp in ChangeLog is updated, but ltmain.sh and libtoolize
18431         inherit the pre-commit build number from config.status.  This
18432         delta notes the change in build number in the unstamped ChangeLog
18433         and forces a rerun of configure etc. to roll a new ltmain.sh with
18434         the correct TIMESTAMP:
18435
18436         * Makefile.am (stamp-vcl): We actually need a new config.status to
18437         force the correct timestamp into libtoolize and ltmain.sh,
18438         rerunning autoconf has no effect at all if configure.ac hasn't
18439         changed.
18440
18441 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18442
18443         * Makefile.am (stamp-vcl): New rules to force libtool and
18444         libtoolize scripts to update when the TIMESTAMP changes in
18445         ChangeLog, but the file modification time doesn't (e.g in cvs
18446         commit).  Otherwise we'll carry on releasing tarballs with the
18447         wrong version numbers in the tools!
18448
18449         * config/mkstamp: Change output format to ` $rev $date'.
18450         * configure.ac: Make the banner more like suggestions in
18451         http://www.gnu.org/prep/standards_toc.html Section 4.6.
18452         * libtoolize.in: Make --version output conform to the GNU
18453         standard.
18454         * ltmain.in: Ditto. And tweak the generated file headers to
18455         match.
18456
18457 2003-11-25  Gary V. Vaughan  <gary@gnu.org>
18458
18459         * Makefile.am (config.status): Removed.  Rebuilding config.status
18460         isn't enough, because the TIMESTAMP in configure is still out
18461         of date.
18462         (configure): We actually need a new configure to force the
18463         correct timestamp into ltmain.sh.
18464
18465         * Makefile.am (config/ltmain.sh): Removed.  Rebuilding ltmain.sh
18466         isn't enough, because the TIMESTAMP in config.status is still out
18467         of date.
18468         (config.status): We actually need a new config.status to force the
18469         correct timestamp into ltmain.sh.
18470
18471         * Makefile.am (config/ltmain.sh): Note the dependency on the
18472         timestamp in ChangeLog so we don't ship libtools that report the
18473         wrong version number :-/
18474
18475         * bootstrap: Explain automake and autoconf version dependencies
18476         truthfully, and the difference between bootstrap and user
18477         dependencies.
18478         * configure.ac (AM_INIT_AUTOMAKE): List AUTOMAKE_OPTIONS here.
18479         * Makefile.am, doc/Makefile.am, tests/Makefile.am
18480         (AUTOMAKE_OPTIONS): Removed from here.
18481
18482 2003-11-24  Gary V. Vaughan  <gary@gnu.org>
18483
18484         * tests/defs (func_configure): cdemo, demo and mdemo are shows
18485         signs of indeterminacy for some users.  Be more verbose during
18486         failure to help track down the cause.
18487
18488 2003-11-22  Peter O'Gorman  <peter@pogma.com>
18489
18490         * ltmain.in: Check for module_cmds if max_cmd_len is exceeded too.
18491
18492         * ltmain.in: Move eval to after command separation to allow ~ in paths.
18493
18494         * tests/demo-hardcode.test: Call ./libtool not libtool.
18495
18496         * ltmain.in: Test $old_striplib before using it, not $striplib.
18497
18498 2003-11-22  Gary V. Vaughan  <gary@gnu.org>
18499
18500         * configure.ac (LASTRELEASE): Calculate it as best as we can from
18501         AC_PACKAGE_VERSION.
18502         * Makefile.am (distdir): Remove dependency on timestamps so that
18503         it is possible to roll a dist without contacting the cvs server.
18504         Use `make cvs-release' for that.
18505         (cvs-news): Extracted from cvs-dist.
18506         (cvs-dist): Depend on cvs-news.
18507         (CHECK_LASTRELEASE): Check LASTRELEASE has been set.
18508         (prev-tarball): New rule.  Use LASTRELEASE to make sure the
18509         previous release tarball is present.
18510         (cvs-diff): Use CHECK_LASTRELEASE.
18511         (xdelta): Ditto.
18512         (cvs-release): Depend on prev-tarball, timestamps, cvs-news and
18513         fetch. Provided you set LASTRELEASE appropriately, making a full
18514         cvs release is just a matter of `make cvs-release', and submitting
18515         the files to ftp-upload.
18516
18517 2003-11-19  Gary V. Vaughan  <gary@gnu.org>
18518
18519         * m4/libtool.m4 (_LT_PROG_LTMAIN): Ensure config.status has a
18520         value for `ac_aux_dir' when automake is not used.
18521         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
18522
18523         * configure.ac (AC_PREREQ): AS_HELP_STRING was introduced after
18524         autoconf-2.57 was released.
18525
18526 2003-11-18  Gary V. Vaughan  <gary@gnu.org>
18527
18528         * libltdl/ltdl.c (lt_dlhandle_find): New function to find a handle
18529         by module name.
18530         * libltdl/ltdl.h (lt_dlhandle_find): Declare it.
18531         * doc/libtool.texi (User defined module data): Document it.
18532         * NEWS: Updated.
18533
18534 2003-11-17  Gary V. Vaughan  <gary@gnu.org>
18535
18536         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Uncomment call to
18537         _LT_CONFIG_COMMANDS.
18538         (_LT_AC_TAG_CONFIG, AC_LIBTOOL_CONFIG): Accumulate tag generation
18539         for `config.status' using _LT_CONFIG_SAVE_COMMANDS.  Remove
18540         AC_MSG_NOTICE noise now that libtool is generated by a single
18541         config.status tag.
18542         * Makefile.am (libtool): Specify CONFIG_COMMANDS properly now that
18543         libtool is generated in one pass.
18544
18545         * configure.ac (CONF_SUBDIRS): Make these relative to
18546         tests/Makefile.am.
18547         (DIST_MAKEFILE_LIST): Adjust to compensate for having removed the
18548         `tests/' part in CONF_SUBDIRS.
18549         * tests/Makefile.am (DIST_SUBDIRS): Distribute these directories.
18550         (SUBDIRS): Set to `.', a NOP, to workaround an automake bug which
18551         ignores DIST_SUBDIRS unless SUBDIRS is also set.
18552         * Makefile.am (DIST_SUBDIRS): Don't try to distribute the tests
18553         subdirectories from here, since the recursive automake dist rule
18554         only works with direct child directories.  Defer to
18555         tests/Makefile.am in this case.
18556
18557 2003-11-15  Scott James Remnant  <scott@netsplit.com>
18558
18559         * ltmain.in: In compile mode, delay parsing of -shared, -static,
18560         -prefer-pic and -prefer-non-pic until after tagged configuration
18561         has been read.  In link mode, read tagged configuration before
18562         parsing any arguments.  These arguments will now work when using
18563         a non-C compiler.
18564
18565 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
18566
18567         * NEWS: Mention AC_LIBTOOL_TAGS.
18568
18569         * Makefile.am (EXTRA_DIST): List ChangeLog files correctly.
18570
18571         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18572         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18573         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18574         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Declare just
18575         the tags we need using AC_LIBTOOL_TAGS, reducing the size of the
18576         configure script by 50% in most cases.
18577
18578 2003-11-14  Marius Vollmer  <mvo@zagadka.de>
18579
18580         * doc/libtool.texi (Libltdl interface): libltdl does in fact load
18581         dependency libs for lt_dlopen()ed modules.
18582
18583 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
18584
18585         Run our configure.ac files through Autoconf 2.59's autoupdate, and
18586         then tweak the results by hand:
18587
18588         * m4/libtool.m4 (AC_PROG_LD): In common with all the other
18589         AC_PROG_ macros, AC_SUBST the discovered LD.
18590         (AC_PROG_NM): Similarly for NM.
18591         (LT_AC_PROG_SED): Similarly for SED.
18592         * configure.ac: No need to SUBST NM and LD manually any more.
18593         (AC_PREREQ): Conservatively downgrade from 2.59 to 2.54.
18594         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18595         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18596         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18597         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Ditto.
18598         * m4/libtool.m4 (AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
18599         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC,
18600         AM_PROG_LD, AM_PROG_NM): AU_DEFUN these macros so autoupdate can
18601         use the newer definitions.
18602
18603 2003-11-12  Gary V. Vaughan  <gary@gnu.org>
18604
18605         The rules for uploading releases to gnu.org have been updated, and
18606         are in fact now rather complicated.  This delta updates the
18607         release instructions to the describe the new process, and updates
18608         the maintainer rules to help automate many of the steps:
18609
18610         * README-alpha: Updated release instructions.
18611         * Makefile.am (GPG): Name of the program for generating signatures
18612         for files to be uploaded.
18613         (XDELTA, XDELTA_OPTIONS): Invocation of xdelta.
18614         (cvs-dist): Run distcheck before tagging the cvs tree incase
18615         distcheck fails, and then generate the gpg signature files.
18616         (cvs-diff): Generate the gpg signature files for the diff.
18617         (xdelta): New rule for generating the xdelta diffs and associated
18618         gpg signature files.
18619         (cvs-release): New rule to do all of the above, if you don't mind
18620         typing your gpg passphrase over and over again. :-)
18621         (fetch): New rule inspired by automakes similar rule for updating
18622         files maintained outside the project.
18623         * config/config.guess, config/config.sub: Updated with the new
18624         fetch rule.
18625
18626 2003-11-11  Gary V. Vaughan  <gary@gnu.org>
18627
18628         * libltdl/ltdl.c (lt_dlinit): Save a function call for each loader
18629         added to the list, in exchange for appending loaders to the list
18630         with O(N) rather than O(1).  The longest the loader list can ever
18631         get is 4 (on cygwin with dld installed) so it probably constitutes
18632         a small speedup, in addition to making the code much more readable.
18633
18634         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Don't define the value for
18635         ltmain unconditionally.
18636         (_LT_PROG_LTMAIN): New macro to ensure that the
18637         shell variable `ltmain' actually points at a suitable `ltmain.sh'.
18638         (_AC_PROG_LIBTOOL): Require it.
18639         (AC_LIBTOOL_CONFIG, _LT_AC_TAG_CONFIG): Invoke it.
18640         * Makefile.am (libtool): ltmain.sh is in the build tree.
18641         * libltdl/configure.ac: Ditto.
18642
18643 2003-11-10  Scott James Remnant  <scott@netsplit.com>
18644
18645         * ltmain.in: Add -pthread and similar to $deplibs ($compile_deplibs
18646         and $finalize_deplibs for programs) when found on the command line
18647         or in a .la file's dependency_libs (but don't place them there) so
18648         they are honoured when linking both programs and libraries.
18649
18650 2003-11-10  Scott James Remnant  <scott@netsplit.com>
18651
18652         * m4/libtool.m4  (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [linux]: Include
18653         directories found in /etc/ld.so.conf in sys_lib_dlsearch_path_spec.
18654
18655 2003-11-09  Peter O'Gorman  <peter@pogma.com>
18656
18657         * ltmain.in (linkalldeplibs,darwin): Fix a bug reported by Idar
18658         Tollefsen where a dir could be added to the link line with no '-L'
18659         on darwin.
18660
18661 2003-11-07  Gary V. Vaughan  <gary@gnu.org>
18662
18663         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18664         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18665         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18666         tests/pdemo/configure.ac, tests/tagdemo/configure.ac:
18667         s/AM_PROG_LIBTOOL/AC_PROG_LIBTOOL/. Marching boldly into the 21th
18668         century :-$
18669
18670         * m4/libtool.m4 (AC_LIBTOOL_TAGS, AC_ENABLE_SHARED,
18671         AC_DISABLE_SHARED, AC_ENABLE_STATIC, AC_DISABLE_STATIC,
18672         AC_ENABLE_FAST_INSTALL, AC_DISABLE_FAST_INSTALL, AM_PROG_LIBTOOL,
18673         AM_ENABLE_SHARED, AM_ENABLE_STATIC, AM_DISABLE_SHARED,
18674         AM_DISABLE_STATIC): These macros must be AC_DEFUNed after all,
18675         otherwise aclocal can't find them when it tries to construct
18676         `aclocal.m4'.
18677
18678         * Makefile.am (install-data-local): Wipe out old installation
18679         pkgdatadir before installing new files.
18680         * NEWS: Updated.
18681
18682         * libtoolize.in (func_scan_files): If libtoolize is run before
18683         automake has created install-sh and configure.ac does not mention
18684         AC_CONFIG_AUX_DIR, fall back to the current directory for auxdir.
18685
18686 2003-11-07  Robert Millan  <zeratul2@wanadoo.es>
18687
18688         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD) [GNU/KNetBSD]: Detect
18689         inter-library dependencies.
18690
18691 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
18692
18693         * m4/libtool.m4 (_LT_AC_FILE_LTDLL_C): Removed; no longer in use.
18694
18695         * m4/libtool.m4: s/ifelse(/m4_if(/g
18696         (_LT_AC_SYS_LIBPATH_AIX, _LT_AC_SHELL_INIT,
18697         _LT_AC_PROG_ECHO_BACKSLASH, AC_LIBTOOL_LINKER_OPTION,
18698         AC_LIBTOOL_TAGS, _LT_AC_TAG_CHECK, _LT_AC_TAG_CONFIG,
18699         AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC,
18700         AC_DISABLE_STATIC, AC_ENABLE_FAST_INSTALL,
18701         AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_C_CONFIG,
18702         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG,
18703         _LT_AC_TAGVAR, AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
18704         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC): Use
18705         m4_define instead of AC_DEFUN for internal macros that do not
18706         AC_PROVIDE or AC_REQUIRE, and documented user macros that cannot
18707         be AC_REQUIREd because they need arguments, or because that would
18708         violate the documented API.
18709
18710         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Add a new
18711         delay_single_quote_subst sed script to quote single quotes in
18712         variables that are copied to `config.status'.
18713         (_LT_CONFIG_STATUS_DECLARE): New macro to apply
18714         delay_single_quote_subst to a named variable.
18715         (AC_LIBTOOL_CONFIG): Use _LT_CONFIG_STATUS_DECLARE to declare all
18716         `configure' variables that are copied to `config.status'.
18717         (AC_LIBTOOL_PROG_COMPILER_PIC): Fix a quoting bug exposed by
18718         _LT_CONFIG_STATUS_DECLARE using the null quadrigraph in the
18719         rvalues of lt_prog_compiler_pic.
18720
18721 2003-11-06  Owen Taylor  <otaylor@redhat.com>
18722
18723         * m4/libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Recognise the
18724         'R' symbol type so read-only symbols can be exported when combining
18725         GCC and Solaris LD.
18726
18727 2003-11-06  James Henstridge  <james@daa.com.au>,
18728         Scott James Remnant  <scott@netsplit.com>
18729
18730         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [Linux]: Fix the
18731         -export-symbols and -export-symbols-regex options.
18732
18733 2003-11-06  Scott James Remnant  <scott@netsplit.com>
18734
18735         * tests/demo-nopic.test: Skip test on hppa, which don't like
18736         non-PIC shared libraries.
18737
18738 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>
18739
18740         * tests/depdemo/configure.ac, tests/mdemo/configure.ac,
18741         tests/mdemo2/configure.ac: process 'libtool --features'
18742         from Makefile, not configure -- because libtool doesn't
18743         exist at configure time.
18744
18745         * ltmain.in (find_executable, check_executable) [cygwin*, mingw*]:
18746         binary wrapper used with uninstalled executables breaks when
18747         invoked via execlp/execvp (that is, via $PATH).  Handle that case.
18748         (fnqualify): Subsumed into find_executable.
18749
18750         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin*, mingw*]:
18751         when extracting symbols from an import lib (occurs if
18752         --enable-shared --disable-static), the output of
18753         $global_symbol_pipe is not the same as  when extracting from a
18754         static library (the default case). Add extra filters to
18755         $export_symbols_cmds to process this sort of output in addition to
18756         'normal' static-lib output.
18757         * NEWS: Updated.
18758
18759 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>,
18760         Gary V. Vaughan  <gary@gnu.org>
18761
18762         * libltdl/ltdl.c (LT_USE_POSIX_DIRENT): Factored out.
18763         (LT_USE_WINDOWS_DIRENT_EMULATION): Move to after include "ltdl.h",
18764         as they are affected by __WINDOWS__ definition.
18765         (LT_READTEXT_MODE): Use textmode to read .la files.
18766         (lt_dlinit): Use LoadLibrary loader as a fallback on cygwin.
18767
18768 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
18769
18770         * libltdl/ltdl.h (__WINDOWS__): Define this if _WIN32 or WIN32 are
18771         defined, unless __CYGWIN__ or __CYGWIN32__ are defined.
18772         (LT_SCOPE): Now set without reference to __CYGWIN__ definition,
18773         since __WINDOWS__ now implies !__CYGWIN__ after canonicalisation.
18774         (LT_PARAMS, lt_ptr): Use canonicalised __WINDOWS__ to determine
18775         which values to set these macros to.
18776
18777 2003-11-05  Gary V. Vaughan  <gary@gnu.org>
18778
18779         * README-alpha: Mention autotools-announce@gnu.org, and update release
18780         note templates.
18781
18782 2003-11-01  Scott James Remnant  <scott@netsplit.com>
18783
18784         * ltmain.in: When relinking, place the -L parameter containing
18785         the installation prefix directory after the intended destination,
18786         so we don't accidentally link against an older installed library.
18787
18788 2003-11-01  Peter O'Gorman  <peter@pogma.com>
18789
18790         * tests/mdemo2/Makefile.am: Let mdemo2 find ltdl.h again.
18791
18792 2003-10-30  Peter O'Gorman  <peter@pogma.com>
18793
18794         * m4/libtool.m4 (Darwin): Fix stupidities for darwin tags support.
18795         Makes it work again if AC_LIBTOOL_TAGS is specified in configure.ac.
18796         Bug reported by Joe Orton and Christian Schaffner.
18797
18798 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
18799
18800         Start to eliminate the double run of configure in a fresh CVS
18801         checkout by generating ltmain.sh, using that to create libtool,
18802         and then adding the tags to that, all from config.status.
18803
18804         * configure.ac (AC_CONFIG_FILES): Make config/ltmain.sh, and copy
18805         it to libltdl.
18806         * Makefile.am ($(srcdir)/config/ltmain.sh): This file is now
18807         created by config.status.  Adjust this rule.
18808         (libtoolize): Set CONFIG_COMMANDS to empty to prevent regenerating
18809         the libtool script as a side effect of running this rule.
18810         * libtool.m4: Bump serial number.  Fix comment typos.
18811         (_LT_CONFIG_LIBTOOL_INIT, _LT_CONFIG_LIBTOOL,
18812         _LT_CONFIG_SAVE_COMMANDS, _LT_CONFIG_COMMANDS: New macros.  They
18813         don't work for some reason - the variable value quoting in the
18814         init section is all wrong.  Not used at the moment.
18815         (AC_LIBTOOL_CONFIG): Generate libtool from config.status.
18816         (_LT_AC_TAG_CONFIG): Add the tags in config.status.
18817         (compiler_DEFAULT): Save the compiler value for the DEFAULT tag,
18818         or it gets overwritten by the other macros.
18819         (EOF): Globally replace with _LT_EOF to avoid namespace pollution.
18820         * tests/demo/configure.ac (STATIC): Check $enable_static instead
18821         of running ./libtool which doesn't exist yet.
18822         (BINARY_HELLDL): Check $lt_cv_sys_global_symbol_pipe with case
18823         instead of grepping ./libtool which doesn't exist yet.
18824         * tests/pdemo/configure.ac (STATIC, BINARY_HELLDL): Ditto.
18825         * doc/libtool.texi (AC_PROG_LIBTOOL): Add some notes about trying
18826         to get config details from `libtool --config'.
18827         * NEWS: Updated.
18828
18829 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
18830
18831         * ChangeLog, ChangeLog.0, ChangeLog.1: Refactored...
18832         * ChangeLog, ChangeLog.2002, ChangeLog.2001, ChangeLog.2000,
18833         ChangeLog.1999, ChangeLog.1998, ChangeLog.1997, ChangeLog.1996:
18834         ...into entries by year for easier copyright confirmation.
18835
18836         * configure.ac, libltdl/configure.ac, tests/cdemo/configure.ac,
18837         tests/demo/configure.ac, tests/depdemo/configure.ac,
18838         tests/f77demo/configure.ac, tests/mdemo/configure.ac,
18839         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
18840         tests/tagdemo/configure.ac (AM_INIT_AUTOMAKE): Remove redundant
18841         arguments.
18842         * libltdl/configure.ac: Use quadrigraphs to escape macronames.
18843
18844         * bootstrap (reconfdirs): Same as yesterday, only with portable
18845         bourne shell syntax.  :-/
18846
18847 2003-10-20  Gary V. Vaughan  <gary@gnu.org>
18848
18849         * bootstrap (reconfdirs): Overridable top dirs for bootstrap, for
18850         those times when you don't want to wait for all of the test
18851         directories to be rebootstrapped!
18852
18853 2003-10-19  Kevin P. Fleming  <kpfleming@backtobasicsmgmt.com>
18854         Charles Wilson <cygwin@cwilson.fastmail.fm>
18855
18856         * ltmain.in: include --tag options, if specified, in the
18857         relink_command in uninstalled .la files.  Also, preserve --silent,
18858         --debug options when libtool re-execs itself.
18859         * NEWS: Updated.
18860
18861 2003-10-19  Charles Wilson  <cygwin@cwilson.fastmail.fm>
18862
18863         * libtoolize.in: protect sed expression against
18864         AC_CONFIG_AUX_DIR_DEFAULT.
18865
18866 2003-10-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
18867
18868         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): For MinGW, reverted DLL
18869         check method back to a working objdump-based test.  This is not as
18870         concrete a test as using the 'file' command, but it does not
18871         require that the 'file' command be available.
18872
18873 2003-10-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
18874
18875         * doc/libtool.texi (AC_LIBTOOL_TAGS): Incorporate documentation
18876         for AC_LIBTOOL_TAGS macro to specifify libtool tags. The now
18877         defunct --with-tags option was never documented.
18878
18879 2003-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
18880
18881         * m4/libtool.m4: Restrict the list of tags that can be created
18882         with a new AC_LIBTOOL_TAGS([tag1 tag2 ...]) macro. Deprecate
18883         --with-tags.
18884
18885 2003-10-15  Gary V. Vaughan  <gary@gnu.org>
18886
18887         * libtoolize.in: Typo when copying config.sub.
18888         From Patrick Welche <prlw1@newn.cam.ac.uk>
18889
18890         * demo/Makefile.am (libhell0_a_SOURCES): Do not name sources
18891         already built with libtool...
18892         (libhell0_a_LIBADD): ...instead name the objects directly.  This
18893         prevents a long standing warning from automake 1.7+.
18894         * pdemo/Makefile.am (libhell0_a_SOURCES, libhell0_a_LIBADD):
18895         Ditto.
18896
18897         * bootstrap: Make the fake files valid shell scripts with a
18898         comment incase they get left around.
18899         (LIBTOOLIZE): Use a dummy script to prevent the installed
18900         `libtoolize' from trashing the distributed libtool.m4,
18901         config.guess and config.sub.
18902
18903         * configure.ac (AC_CONFIG_TESTDIR, AC_CONFIG_TESTFILES): Comment
18904         this out for now, the autotest testsuite rewrite is not ready
18905         yet.
18906
18907         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
18908         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
18909         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
18910         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (top_distdir):
18911         Removed. `autoreconf' needs literals in ACLOCAL_AMFLAGS.
18912
18913 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
18914
18915         * libtoolize.in (func_mkdir_p): Synch with tests/defs; if there
18916         are no more directories in the stack, break out of the loop.
18917
18918         * tests/Makefile.am (COMMON_TESTS): Remove pdemo-unst.test, which
18919         isn't a real test.
18920
18921 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
18922
18923         Refactor all the test case common code into shell functions in
18924         tests/defs, and move the various demo directories out of
18925         $top_srcdir, and into tests too.  The refactoring showed up a
18926         number of inconsistencies and latent bugs, as well as fixing (I
18927         think!!) the long-standing annoyance with some of the tests giving
18928         spurious failures intermittently.  While I was here, emacs kindly
18929         removed a lot of bogus whitespace and added copyright notices for
18930         us:
18931
18932         * cdemo, demo, depdemo, f77demo, mdemo, mdemo2, pdemo, tagdemo:
18933         Moved from here...
18934         * tests/cdemo, tests/demo, tests/depdemo, tests/f77demo,
18935         tests/mdemo, tests/mdemo2, tests/pdemo, tests/tagdemo: ...to
18936         here.
18937         * tests/defs: Factor much common functionality from the test
18938         scripts into shell functions.  Added a copyright notice.
18939         * tests/assign.test, tests/cdemo-conf.test, tests/cdemo-exec.test,
18940         tests/cdemo-make.test, tests/cdemo-shared.test,
18941         tests/cdemo-static.test, tests/demo-conf.test,
18942         tests/demo-deplibs.test, tests/demo-exec.test,
18943         tests/demo-inst.test, tests/demo-make.test,
18944         tests/demo-nofast.test, tests/demo-nopic.test,
18945         tests/demo-pic.test, tests/demo-shared.test,
18946         tests/demo-static.test, tests/demo-unst.test,
18947         tests/depdemo-conf.test, tests/depdemo-exec.test,
18948         tests/depdemo-inst.test, tests/depdemo-make.test,
18949         tests/depdemo-nofast.test, tests/depdemo-shared.test,
18950         tests/depdemo-static.test, tests/depdemo-unst.test,
18951         tests/f77demo-conf.test, tests/f77demo-exec.test,
18952         tests/f77demo-make.test, tests/f77demo-shared.test,
18953         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
18954         tests/mdemo-conf.test, tests/mdemo-exec.test,
18955         tests/mdemo-inst.test, tests/mdemo-make.test,
18956         tests/mdemo-shared.test, tests/mdemo-static.test,
18957         tests/mdemo-unst.test, tests/mdemo2-conf.test,
18958         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
18959         tests/pdemo-conf.test, tests/pdemo-exec.test,
18960         tests/pdemo-inst.test, tests/pdemo-make.test,
18961         tests/pdemo-unst.test, tests/quote.test, tests/sh.test,
18962         tests/suffix.test, tests/tagdemo-conf.test,
18963         tests/tagdemo-exec.test, tests/tagdemo-make.test,
18964         tests/tagdemo-shared.test, tests/tagdemo-static.test: Refactored
18965         to use new functions in tests/defs.  Added a copyright notice.
18966         * tests/hardcode.test, noinst-link.test,
18967         tests/relink.test, tests/relink.test,
18968         tests/mdryrun.test: Ditto.  Moved from here...
18969         * tests/demo-hardcode.test, demo-noinst-link.test,
18970         tests/demo-relink.test, tests/depdemo-relink.test,
18971         tests/mdemo-dryrun.test: ...to here respectively.
18972         * Makefile.am: Added a copyright notice.
18973         * tests/sh.test: Check libtoolize.in for non-portabilities too.
18974         * libtoolize.in: Fix non-portabilities found by tests/sh.test.
18975
18976 2003-10-12  Peter O'Gorman <peter@pogma.com>
18977
18978         * m4/libtool.m4: Speed up max_cmd_len check.
18979
18980 2003-10-08  Gary V. Vaughan  <gary@gnu.org>
18981
18982         * libtoolize.in: AC_CONFIG_M4_DIR has landed in CVS autoconf.
18983         Only it's called AC_CONFIG_MACRO_DIR.  Search and replace.
18984         Grumble. ;-)
18985
18986 2003-10-08  Scott James Remnant  <scott@netsplit.com>
18987
18988         * libltdl/ltdl.c (lt_dlerror): change return value when
18989         no error has occured to NULL to match documentation.
18990         (Debian Bug #157229)
18991
18992 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
18993
18994         * ltmain.in: Don't suppress output of PIC mode compile if
18995         -no-suppress option is given.
18996         * doc/libtool.texi (Invoking libtool): Document it.
18997         * NEWS: Updated.
18998
18999 2003-10-07  Marcus Comstedt  <marcus@mc.pp.se>
19000
19001         * m4/libtool.m4 [amigaos-ppc, amigaos-m68k]: Differentiate between
19002         amigaos on ppc and m68k.
19003         * NEWS: Updated.
19004
19005 2003-10-07  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19006
19007         * ltmain.in: Do not create `.o' objects when `-shared' is
19008         specified in compile mode.
19009         Do not make a static library when `-shared' is specified in link
19010         mode.
19011         * doc/libtool.texi (Compile mode): Document it.
19012         * NEWS: Updated.
19013
19014         * doc/libtool.texi (Compile mode): Be more specific about the
19015         effect of `-static'.
19016         * ltmain.in: Do not create `.lo' objects when `-static' is
19017         specified.
19018         * NEWS: Updated.
19019
19020 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
19021
19022         * doc/libtool.texi (Invoking libtool): Updated.
19023         * ltmain.in: Add missing clean and finish modes to the shorthand
19024         options.
19025
19026         * ltmain.in: Typo in the --mode shorthand.
19027
19028 2003-10-07  Scott James Remnant  <scott@netsplit.com>
19029
19030         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Remove dead code
19031         for platforms that have been using pass_all for some time now.
19032
19033 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
19034
19035         * libtoolize.in: Completely rewritten.
19036         * Makefile.am (AUTOMAKE_OPTIONS): Reduced to 1.7.  The 1.8
19037         requirement just made the distribution much smaller due to
19038         m4_includes.  1.7 will bootstrap libtool just fine.
19039         * NEWS: Updated.
19040
19041 2003-10-05  Peter O'Gorman <peter@pogma.com>,
19042         Gary V. Vaughan  <gary@gnu.org>
19043
19044         * ltmain.in: Remove inferrence of mode, add shorthand for mode
19045         choice.
19046
19047         * ltmain.in: Specifying -allow-undefined is now an error.
19048
19049 2003-09-29  Scott James Remnant  <scott@netsplit.com>
19050
19051         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for linux*
19052         solving many build problems on ARM, and hopefully preventing any
19053         future ones.
19054         (Debian Bug #191133 and #190569)
19055
19056 2003-09-29  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>,
19057         Dalibor Topic <robilad@kaffe.org>
19058
19059         * libltdl/ltdl.c: Only include malloc.h if stdlib.h can not be
19060         found.
19061
19062 2003-09-26  Alfred M. Szmidt  <ams@kemisten.nu>
19063
19064         * mdemo2/Makefile.am (INCLUDES): Include `$(top_srcdir)/../libltdl'
19065         instead of `../libltdl'.
19066
19067 2003-09-24  Gary V. Vaughan  <gary@gnu.org>
19068
19069         * bootstrap: Rewritten to use autoreconf.
19070         * config.guess, config.sub, mkstamp:  Moved from here...
19071         * config/config.guess, config/config.sub, config/mkstamp: ...to
19072         here, respectively.
19073         * libtool.m4, ltdl.m4: Moved from here...
19074         * m4/libtool.m4, m4/ltdl.m4: ...to here, respectively.
19075         * configure.ac: Removed various acinclude.m4 hackery, as these
19076         files are no longer needed with automake 1.8.
19077         * Makefile.am: Removed various acinclude.m4 hackery, as these
19078         files are no longer needed with automake 1.8.
19079         (AUTOMAKE_OPTIONS): Require CVS automake.
19080         (CONF_SUBDIRS, CFLAGS, CPPFLAGS, LDFLAGS, LIBS, FFLAGS, FLIBS):
19081         Automake now makes a Make variable from every AC_SUBST, so these
19082         are NOP.
19083         (aclocal_macros): These files are now in their own m4 subdir.
19084         Changed all clients.
19085         (EXTRA_DIST): mkstamp has moved to the new config subdir.  Changed
19086         all clients.
19087         (pkgdata_SCRIPTS): Ditto wrt config.guess and config.sub.
19088         (pkgdata_DATA): Ditto wrt ltmain.sh.
19089         * f77demo/configure.ac, libltdl/configure.ac (AM_CONFIG_HEADER):
19090         Is deprecated in favour of AC_CONFIG_HEADERS.  Updated to the
19091         latter.
19092         * Makefile.am, cdemo/Makefile.am, demo/Makefile.am,
19093         depdemo/Makefile.am, f77demo/Makefile.am, mdemo/Makefile.am,
19094         mdemo2/Makefile.am, pdemo/Makefile.am, tagdemo/Makefile.am
19095         (EXTRA_DIST): Remove acinclude.m4.
19096         (ACLOCAL_AMFLAGS): Search new `m4' macro directory.
19097         * configure.ac, cdemo/configure.ac, demo/configure.ac,
19098         depdemo/configure.ac, f77demo/configure.ac, mdemo/configure.ac,
19099         mdemo2/configure.ac, pdemo/configure.ac, tagdemo/configure.ac
19100         (AC_CONFIG_AUX_DIR): Declare that config helper scripts are now
19101         kept in the new config subdir.
19102         * libltdl/configure.ac (AC_CONFIG_AUX_DIR): Removed.  Defaults to
19103         `.' anyway.
19104
19105 2003-09-21  Robert Millan  <robertmh@gnu.org>
19106
19107         * libtool.m4: Add GNU/KNetBSD support.
19108         * ltdl.m4: Likewise.
19109
19110 2003-09-13  Scott James Remnant  <scott@netsplit.com>
19111
19112         * libtool.m4: allow STRIP to contain spaces and additional
19113         arguments.  (Debian Bug #183055)
19114         * ltmain.in: include newline in "sensible default" for IFS.
19115         (Debian Bug #98492 and #95447)
19116
19117 2003-09-11  Peter O'Gorman  <peter@pogma.com>
19118
19119         * AUTHORS, THANKS: Added myself to AUTHORS, removed from THANKS.
19120
19121 2003-09-10  Peter O'Gorman  <peter@pogma.com>
19122
19123         * mdemo2/configure.ac: Use AC_LIBTOOL_DLOPEN.
19124         * mdemo2/main.c: Use LTDL_SET_PRELOADED_SYMBOLS().
19125         * mdemo2/Makefile.am: Set INCLUDES properly and add -dlopen force
19126         to make sure the symbols file is included in the link line.
19127
19128         * ltmain.in: Accept -framework for darwin and put it in
19129         dependency_libs. For non-installed .la's try to avoid having
19130         ./.libs/.libs/libfoo.so on the link line.
19131
19132 2003-09-10  Arne Woerner  <woerner@mediabase-gmbh.de>
19133
19134         * libtool.m4 [openbsd]: openbsd 3.x needs versioning information.
19135
19136 2003-08-29  Gary V. Vaughan  <gary@gnu.org>
19137
19138         * bootstrap: Typo.
19139
19140 2003-08-29  Alexandre Duret-Lutz  <adl@gnu.org>
19141
19142         * libtool.m4 (_LT_AC_LANG_C_CONFIG): Fix unquoted call to
19143         _LT_AC_LANG_C_CONFIG.
19144         (AC_PROG_EGREP): Remove, now that Libtool requires Autoconf 2.56.
19145         * bootstrap: Issue an upgrade warning.
19146
19147 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
19148
19149         * libtool.m4 (_LT_AC_CHECK_DLFCN): Use the interrim new
19150         AC_CHECK_HEADER with compiler rather than preprocessor.
19151         (AC_LIBTOOL_SETUP): ...which was introduced in autoconf-2.56, so
19152         we AC_PREREQ that version.
19153         * ltdl.m4 (AC_WITH_LTDL, AC_LIB_LTDL, AC_LTDL_FUNC_ARGZ): Ditto.
19154
19155 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
19156
19157         Work around a bug in AU_ALIAS in CVS Autoconf that inserts a
19158         newline just before AC_FD_CC, by hand updating:
19159
19160         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): s/AC_FD_CC/AS_MESSAGE_LOG_FD/g.
19161
19162 2003-08-05  Jim Pick <jim@kaffe.org>,
19163         Ito Kazumitsu <kaz@maczuka.gcd.org>,
19164         Gary V. Vaughan  <gary@gnu.org>
19165
19166         Much as we have tried not to make it the callers' responsibility
19167         to maintain an lt_dlrealloc function pointer, it is too difficult
19168         to implement realloc as malloc/memcpy/free without knowing the
19169         size of the original block.  rpl_realloc has been deprecated since
19170         2002-10-30, but kaffe has real failures with that so it's time to
19171         bite the bullet.  Caller gets to maintain lt_dlrealloc:
19172
19173         * NEWS (1.5.1): Updated.
19174         * libltdl/ltdl.c (LT_DLREALLOC): Use lt_dlrealloc so the user can
19175         update the function pointer to match lt_dlmalloc.
19176         (lt_emalloc): Use lt_dlrealloc rather than hardcoding realloc.
19177         * doc/libtool.texi (Libltdl interface): Describe lt_dlrealloc now
19178         that it too has become part of the exported interface to libltdl.
19179
19180 2003-08-01  Peter O'Gorman  <peter@pogma.com>
19181
19182         * libtool.m4 (darwin): Use "-undefined dynamic_lookup" if the
19183         user set MACOSX_DEPLOYMENT_TARGET to 10.3 or greater.
19184         * libltdl/ltdl.c (dyld): Save the error from the first lookup
19185         to report in lt_dlerror(). Otherwise the error is always
19186         "Symbol _foo not in /usr/lib/libSystem.dylib".
19187         Thanks to Chris Zubrzycki for reporting this.
19188
19189 2003-08-01  Robert Boehne  <rboehne@gnu.org>
19190
19191         * libltdl/ltdl.h: Tweak the header to support visual studio.
19192
19193 2003-07-31  Greg Eisenhauer  <eisen@cc.gatech.edu>
19194
19195         * ltmain.in: Provide absolute paths for dlopen and dlpreopen
19196         files in generating uninstalled libtool libraries.
19197         * mdemo2/main.c, mdemo2/Makefile.am, mdemo2/README,
19198         mdemo2/configure.ac, mdemo2/.cvsignore, mdemo/mlib.c,
19199         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
19200         tests/mdemo2-make.test: New files for testing above feature.
19201         * configure.ac, bootstrap, tests/Makefile.am: Accomodate new
19202         test directory.
19203         * mdemo/Makefile.am: Build libmlib.la for mdemo2 tests.
19204
19205 2003-07-30  Tony Wyatt <wyattaw@optushome.com.au>
19206
19207         * libtool.m4: Remove parentheses around finish_eval part which
19208         broke on amigaos pdksh.
19209
19210 2003-07-30  Christiaan Welvaart  <cjw@daneel.dyndns.org>
19211
19212         * tests/dryrun.test: Ignore any 'total' line from "ls -l" output.
19213
19214 2003-07-30  Albert Chin-A-Young  <china@thewrittenword.com>
19215
19216         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Correctly remove IRIX C++
19217         template files.
19218
19219 2003-07-24  Robert Millan  <robertmh@gnu.org>
19220
19221         * libtool.m4: More fixes for the new GNU/FreeBSD triplet.
19222
19223 2003-07-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19224
19225         * config.guess, config.sub: Synchronized from ftp.gnu.org since
19226         Robert Millan's patch requires it.
19227
19228 2003-07-14  Robert Millan  <zeratul2@wanadoo.es>
19229
19230         * libtool.m4: Fixed to use the new GNU/FreeBSD triplet.
19231         * ltdl.m4: Fixed to use the new GNU/FreeBSD triplet.
19232         * ltmain.in: Remove GNU/FreeBSD cases, which are no longer needed.
19233
19234 2003-07-14  Andreas Schwab  <schwab@suse.de>
19235
19236         * libtool.m4 (_LT_AC_LOCK): Also match powerpc64-*linux* in
19237         addition to ppc64-*linux*.  From Markus Meissner
19238         <meissner@bogus.example.com>.
19239
19240 2003-07-14  Dalibor Topic  <robilad@yahoo.com>
19241
19242         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): For AmigaOS with pdksh,
19243         set the maximum command line length to 8K since otherwise the test
19244         takes over an hour to run.
19245
19246 2003-06-25  Alexandre Oliva  <aoliva@redhat.com>, Tim Waugh  <twaugh@redhat.com>
19247
19248         * libtool.m4: Replace mis-uses of path with pathname.
19249         (AC_PROG_LD_GNU): Don't quote $LD when running it.
19250         (_LT_AC_LANG_CXX_CONFIG): Use -nostdlib also when linking with g++
19251         and non-GNU ld.
19252
19253 2003-06-11  Gary V. Vaughan  <gary@gnu.org>
19254
19255         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION): Require LT_AC_PROG_SED to
19256         ensure $SED is set by the time it is used.
19257
19258         * ChangeLog: Restore missing entries from 2003-04-22.
19259
19260         * NEWS: Sychronised from branch-1-5.
19261
19262 2003-06-03  Benjamin Reed  <ranger@befunk.com>
19263
19264         * ltmain.in: search libraries in the order of preference, rather
19265         than picking .la's even if they're in a less preferred directory.
19266
19267 2003-06-03  Robert Millan <rmh@debian.org>
19268
19269         * ltdl.m4: Add support for GNU/FreeBSD.
19270         * ltmain.in: Add support for GNU/FreeBSD.
19271
19272 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
19273
19274         * libtool.m4: No need to use sed to remove leading comma when
19275         appending to $tagnames.
19276
19277 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
19278
19279         * tests/defs, tests/demo-conf.test, tests/demo-nofast.test,
19280         tests/demo-nopic.test, tests/demo-pic.test,
19281         tests/demo-shared.test, tests/demo-static.test,
19282         tests/depdemo-conf.test, tests/depdemo-nofast.test,
19283         tests/depdemo-shared.test, tests/depdemo-static.test:
19284         Pass build system type to tests to support environment
19285         where default system type not equal to build system type
19286         (eg. 64-bit HP-UX).
19287
19288 2003-06-03  Peter O'Gorman  <peter@pogma.com>
19289
19290         * libtool.m4 (darwin): Remove checks for Apple-specific gcc.
19291         * libltdl/ltdl.c (HAVE_MACH_O_DYLD_H): #define
19292         __private_extern__ for fsf gcc.
19293         * ltmain.in (darwin): Only add new paths to newlib_search_path.
19294
19295 2003-06-03  Max Bowsher  <maxb@ukf.net>
19296
19297         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Reorder cygwin's
19298         system library search path.
19299
19300 2003-06-01  Robert Boehne  <rboehne@gnu.org>
19301
19302         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match all qnx-nto
19303         as recent config.guess returns a slightly different string.
19304         * ltmain.in: Replace use of "od" with tr.
19305
19306 2003-05-30  Gary V. Vaughan  <gary@gnu.org>
19307
19308         * libltdl/ltdl.c (argz_insert): Corrected an off by one error when
19309         checking that before is not out of range.
19310
19311 2003-05-29  Gary V. Vaughan  <gary@gnu.org>
19312
19313         * libltdl/ltdl.c (lt_int_dyld_lib_install_name): Removed unused
19314         variable mh1.
19315         (sys_dyld_close): Removed unused variable size.
19316
19317 2003-05-21  Bruno Haible  <bruno@clisp.org>
19318
19319         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Add support for
19320         GNU/FreeBSD.
19321
19322 2003-04-22  Alexandre Oliva  <aoliva@redhat.com>
19323
19324         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
19325         mips*-linux* variants.
19326
19327 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
19328
19329         * libtool.m4 Switch on $CC and add paterns to cases.
19330
19331 2003-04-22  Peter O'Gorman  <peter@pogma.com>
19332
19333         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
19334         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
19335         value of shlibpath_overrides_runpath is used in the HARDCODE
19336         test and is set in the DYNAMIC_LINKER test.
19337         * ltmain.in [darwin]: We never need to relink on darwin.
19338
19339 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
19340
19341         * libtool.m4: Switch on $CC and add patterns to cases.
19342
19343 2003-04-21  Richard Dawe  <rich@phekda.freeserve.co.uk>
19344
19345         * doc/libtool.texi: Use @ifnottex instead of @ifinfo,
19346         to allow production of HTML documentation using makeinfo.
19347
19348 2003-04-14  Robert Boehne  <rboehne@gnu.org>
19349
19350         * NEWS: Updated.
19351         * configure.ac: Bumped version to 1.5a.
19352
19353         GNU libtool 1.5 was released.
19354
19355         * configure.ac: Bumped version to 1.5.
19356         * NEWS: updated.
19357         * README-alpha: Updated upload instructions.
19358         * README: Changed typo in version description.
19359         * config.guess, config.sub, texinfo.tex:  Synchronized from
19360         ftp.gnu.org.
19361
19362
19363 2003-04-10  Alexandre Oliva  <aoliva@redhat.com>
19364
19365         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
19366         mips*-linux* variants.
19367
19368 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
19369
19370         * libtool.m4 Switch on $CC and add paterns to cases.
19371
19372 2003-04-09  Peter O'Gorman  <peter@pogma.com>
19373
19374         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
19375         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
19376         value of shlibpath_overrides_runpath is used in the HARDCODE
19377         test and is set in the DYNAMIC_LINKER test.
19378         * ltmain.in(darwin): We never need to relink on darwin.
19379
19380 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
19381
19382         * libtool.m4 Switch on `basename $CC` not $CC
19383
19384 2003-04-05  Peter O'Gorman  <peter@pogma.com>
19385
19386         * libtool.m4: if ZSH_VERSION is set then setopt NO_GLOB_SUBST so
19387         libtool works. Remove zsh echo test code, don't bother checking
19388         for zsh anymore in the darwin archive_expsym_cmds.
19389
19390 2003-04-05  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
19391
19392         * libtool.m4: Switch on $CC not $cc_basename.
19393
19394 2003-04-02  Robert Boehne  <rboehne@gnu.org>
19395
19396         * tests/defs: Quote $DJGPP to prevent problems with some shells.
19397         Pointed out by Albert Chin <libtool@thewrittenword.com>
19398
19399 2003-04-01  Peter O'Gorman  <peter@pogma.com>
19400
19401         * libtool.m4: Fix the echo test which I broke earlier.
19402         * ltmain.in: Make DESTDIR work on darwin, don't use otool.
19403
19404 2003-03-31  Keith Packard  <keithp@keithp.com>
19405
19406         * ltmain.in: New flag -version-number to be used for maintaining
19407         compatability with a previously non-Libtool versioning scheme.
19408         * doc/libtool.texi: Document it.
19409
19410 2003-03-31  Naofumi Yasufuku  <naofumi@yasufuku.net>
19411
19412         * ltmain.in (win32_libid): Fixed sed expression error in
19413         win32_nmres evaluation.
19414
19415 2003-03-31  Albert Chin  <libtool@thewrittenword.com>
19416
19417         * ltmain.in: Don't pass -R flags found in a .la's dependency_libs
19418         variable directly down to the linker.
19419         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
19420
19421 2003-03-28  Richard Dawe  <rich@phekda.freeserve.co.uk>
19422
19423         * Makefile.am: Define CONF_SUBDIRS.
19424         * tests/defs: Set CONFIG_SITE to /nonexistent, except on DJGPP,
19425         which requires its config.site, to work correctly.
19426         * tests/cdemo-conf.test, tests/cdemo-shared.test,
19427         tests/cdemo-static.test, tests/demo-conf.test,
19428         tests/demo-nofast.test, tests/demo-nopic.test,
19429         tests/demo-pic.test, tests/demo-shared.test,
19430         tests/demo-static.test, tests/depdemo-conf.test,
19431         tests/depdemo-nofast.test, tests/depdemo-shared.test,
19432         tests/depdemo-static.test, tests/f77demo-conf.test,
19433         tests/f77demo-shared.test, tests/f77demo-static.test,
19434         tests/mdemo-conf.test, tests/mdemo-shared.test,
19435         tests/mdemo-static.test, tests/pdemo-conf.test,
19436         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
19437         tests/tagdemo-static.test: Don't set CONFIG_SITE, now that
19438         tests/defs sets it.
19439         * tests/cdemo-exec.test, tests/demo-exec.test,
19440         tests/demo-inst.test, tests/depdemo-exec.test,
19441         tests/depdemo-inst.test, tests/f77demo-exec.test,
19442         tests/mdemo-exec.test, tests/mdemo-inst.test,
19443         tests/pdemo-exec.test, tests/pdemo-inst.test,
19444         tests/tagdemo-exec.test: When checking for the existence
19445         of executables, use the executable file extension from $EXEEXT.
19446
19447 2003-03-28  Peter O'Gorman  <peter@pogma.com>
19448
19449         * libltdl/ltdl.c (dyld): Remove some debug printf's, fix a bug.
19450         * ltmain.in (darwin): Only link against shared libraries when doing
19451         link_all_deplibs.
19452
19453 2003-03-25  Robert Boehne  <rboehne@gnu.org>
19454
19455         * bootstrap: Add f77demo to the directories that AUTOHEADER
19456         is run in.
19457
19458 2003-03-21  Wesley W. Terpstra <terpstra@ito.tu-darmstadt.de>
19459
19460         * ltmain.in: Don't accumulate directory information in clean mode.
19461         Include properly pathed wrapper script.
19462
19463 2003-03-21  Peter O'Gorman  <peter@pogma.com>
19464
19465         * README: Remove "Important" information about patching automake.
19466         * configure.ac: Fix misapplied patch in last commit
19467         * libtool.m4 (darwin): Check compiler is apple gcc, add -single_module
19468         support so that dyloading c++ shared libraries will work.
19469         * libtool.m4 (_LT_AC_TAGCONFIG): Add test -n to the tests so that
19470         it will work outside of libtool.
19471         * doc/PLATFORMS: Add darwin
19472         * f77demo/configure.ac: Add config.h which was misapplied previously.
19473
19474 2003-03-20  Peter O'Gorman  <peter@pogma.com>
19475
19476         * ltmain.in: Always use $echo not echo for consistency.
19477         Changes for darwin building. Warn if linking against libs linked
19478         with -module. Use module_cmds if available and building a module,
19479         move convenience double lib check,
19480         * libltdl/ltdl.c: ltdl support for darwin (first blush)
19481         * libltdl/README: note that darwin is supported
19482         * ltdl.m4: Changes for darwin, and for new shrext
19483         * libtool.m4: Changed the way darwin builds stuff (make check passes)
19484         added module_cmds, module_expsym_cmds and hardcode_automatic and put
19485         them in the libtool script. check for zsh's removal of escapes. Allow
19486         libraries to be stripped on darwin.
19487         * TODO: Remove the todo about zsh's removal of excapes. note that zsh
19488         echo works perfectly well, eval is screwed up. Seems to be fixed in
19489         latest zsh.
19490         * THANKS: added self :)
19491         * f77demo/configure.ac: Use config.h or it doesn't work.
19492
19493 2003-03-19  Robert Boehne  <rboehne@gnu.org>
19494
19495         * libtool.m4 (_LT_AC_TAGCONFIG): Add test around the macro that
19496         adds tags to the libtool script so that they won't run when not
19497         needed.
19498         * configure.ac: Set F77 to no when no Fortran compiler is found.
19499
19500 2003-03-16  Charles Wilson  <cwilson@ece.gatech.edu>
19501
19502         * ltmain.in (win32_libid): use $SED, not head.
19503
19504 2003-03-02  Alexandre Oliva  <aoliva@redhat.com>
19505
19506         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
19507         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
19508         and reset them for a C++ environment.  Use the with_gnu_ld setting
19509         from AC_PROG_LD.
19510
19511 2003-02-28  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19512
19513         * ltmain.in: Only append a dot to the wrapper script when
19514         building on cygwin/MSYS (check for $build, not $host).
19515
19516 2003-02-27  Samuel Meder  <meder@mcs.anl.gov>
19517
19518         * libtool.m4 (ia64): Add support for Intel compiler (ecc) on IA64
19519         Linux.
19520
19521 2003-02-27  Benjamin Reed <ranger@befunk.com>
19522
19523         * THANKS: Added people who have submitted 3 or more patches
19524         to libtool to the THANKS file.
19525         * README: Added notes about the Darwin (MacOSX) support.
19526
19527 2003-02-25  Bob McElrath  <bob+libtool@mcelrath.org>
19528
19529         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Add support for
19530         the Compaq C compiler for Alpha Linux.
19531
19532 2003-02-25  Benjamin Reed  <ranger@befunk.com>
19533
19534         * libtool.m4 (darwin): Disable hardcoding library paths to
19535         make relinking unnecessary.
19536
19537 2003-02-24  Robert Boehne  <rboehne@gnu.org>
19538
19539         * libltdl/configure.ac: Use AC_CONFIG_AUX_DIR([.]) to place
19540         auxilary files in the libltdl directory.
19541         * Makefile.am: Add to the ltmain.sh rule to copy it into the
19542         libltdl subdirectory.
19543         * bootstrap: Explicitly handle ltmain.sh in libltdl, and pass
19544         --copy to automake.
19545
19546 2003-02-24  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19547
19548         * libtool.m4 (AC_LIBTOOL_SETUP): Check for ar.
19549
19550 2003-02-23  Peter O'Gorman  <peter@pogma.com>
19551
19552         * libtool.m4 (darwin): Revamp darwin platform support.
19553         * ltdl.m4 (darwin): Support dlcompat if found.
19554         * ltmain.in: Make sure ranlib is run if needed when piecewise
19555         linking.
19556
19557 2003-02-23  Alexandre Duret-Lutz  <adl@gnu.org>
19558
19559         * ltmain.in (--help): Show mailing-address for bug reports.
19560         (--version): Mention only the most recent copyright year.
19561         * libtoolize.in (--help): Show mailing-address for bug reports.
19562         (--version): Mention only the most recent copyright year.
19563
19564 2003-02-19  Alexandre Oliva  <aoliva@redhat.com>
19565
19566         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
19567         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
19568         and reset them for a C++ environment.  Use the with_gnu_ld setting
19569         from AC_PROG_LD.
19570
19571         * libtool.m4: Replace $linker_flags with $compiler_flags wherever
19572         it is used as argument to $CC.
19573
19574         * libtool.m4: Use linux version_type on IRIX with GNU ld.
19575         Prefix -soname, -set_version and their arguments with ${wl}.  Add
19576         -melf* linker scripts to LD, and use them to determine libsuff,
19577         shlibsuff and libmagic.
19578
19579 2003-02-17  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
19580
19581         * libtool.m4: Intel icc fixups for version 7.0.
19582
19583 2003-02-17  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19584
19585         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Prepend a dot to
19586         the value of the shrext (aka shared_ext) variable and delete it
19587         from the library_names_spec and soname_spec definitions.  That
19588         way the user can omit the shared library suffix by setting it
19589         to the empty string.
19590         (AC_LIBTOOL_LANG_CXX_CONFIG): Strengthen renaming commands for
19591         the KCC compiler.
19592         * doc/libtool.texi (Link mode): Update the manual.
19593
19594 2003-02-17  Charles Wilson  <cwilson@ece.gatech.edu>
19595
19596         * ltmain.in (win32_libid): Rewritten to improve speed.
19597
19598 2003-02-11  Richard Dawe  <rich@phekda.freeserve.co.uk>
19599
19600         * libtoolize.in: Use the program found by AC_PROG_LN_S
19601         to create symlinks.
19602
19603 2003-02-08  Jan Kratochvil  <project-libtool@jankratochvil.net>
19604
19605         * ltmain.in: Handle duplicate object file names when performing
19606         piecewise archive linking by renaming object files when needed.
19607
19608 2003-02-05  Robert Boehne  <rboehne@gnu.org>
19609
19610         * libtool.m4 (AC_CHECK_LIBM): Search for a real symbol in
19611         the math library rather than 'main', it causes problems for
19612         C++ compilers with certain Auto* tools.
19613         (AC_LIBLTDL_INSTALLABLE): ditto.
19614
19615 2003-02-05  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
19616
19617         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG)
19618         (AC_LIBTOOL_PROG_LD_SHLIBS): Rewrite printf commands so
19619         that the format string cannot be mistaken as an option.
19620         Reported by Martin MOKREJS.
19621
19622 2003-02-05  Robert Boehne  <rboehne@gnu.org>
19623
19624         * libtool.m4: Modify the sys_lib_search_path_spec to allow
19625         for either native sed or GNU sed to be used.
19626
19627 2003-02-04  Nick Hudson  <skrll@netbsd.org>
19628
19629         * libtool.m4: don't use -nodefaultlibs in archive_commands
19630         or archive_expsym_commands on NetBSD.
19631
19632 2003-02-04  Albert Chin-A-Young  <china@thewrittenword.com>
19633
19634         * libtool.m4: Change setting of archive_cmds_need_lc
19635         so that it doesn't overwrite the previous setting.
19636
19637 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
19638
19639         * libtool.m4: Allow compiler variable, CC, CXX, etc. to
19640         be a program name with arguments. Original version stripped
19641         arguments for CC.
19642
19643 2003-01-28  Charles Wilson  <cwilson@ece.gatech.edu>
19644
19645         * ltmain.in: add code for a binary wrapper
19646         to use with uninstalled executables on cygwin/mingw.
19647         Make sure that --mode=clean gets shell wrapper and
19648         binary wrapper.  When sourcing the shell wrapper,
19649         invoke using a terminal `.' on cygwin/mingw to
19650         avoid the automatic append-.exe behavior.
19651
19652 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
19653
19654         * libtool.m4: Hardcode library paths into libraries on IRIX.
19655
19656 2003-01-18  Robert Boehne  <rboehne@gnu.org>
19657
19658         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Don't add -DPIC
19659         for languages other than C and C++.
19660
19661 2003-01-13  Albert Chin-A-Young  <china@thewrittenword.com>
19662
19663         * libtool.m4, ltmain.in: Add support for hppa*64* based on
19664         a patch by Ross Alexander <ross.alexander@uk.neceur.com>.
19665         Credit to Ross! Use +b to hardcode library runtime path.
19666         Add new variable, $hardcode_libdir_flag_spec_ld, that
19667         is equivalent to $hardcode_libdir_flag_spec but is used
19668         when ld is used for linking. This works around having to
19669         set wl=''.
19670
19671 2003-01-12  Robert Boehne  <rboehne@gnu.org>
19672
19673         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Revert an
19674         accidental rearranging of dylib and so for darwin.
19675
19676 2003-01-10  Robert Boehne  <rboehne@gnu.org>
19677
19678         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Modify the
19679         "-shrext" option so that is works properly under Darwin.
19680         Modify the processing of 'gcc -print-search-dirs' under
19681         Darwin to make it behave like GNU gcc does.
19682         (AC_LIBTOOL_CONFIG): Single quote $shrext.
19683         * ltimain.in: Expand shared_ext just before it is used
19684         so that it can be conditional on the value of $module.
19685
19686 2002-12-31  Benjamin Reed  <ranger@befunk.com>
19687
19688         * ltmain.in [darwin]: disable lazy linking, needed
19689         to resolve C++ global constructor issues
19690
19691 2002-12-30  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19692
19693         Rework by Robert Boehne <rboehne@gnu.org>
19694         * ltmain.in: New link option -shrext.
19695         * libtool.m4 (AC_LIBTOOL_CONFIG): New libtool variable shrext.
19696         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Replace all hard coded shared
19697         library file name extensions in library_names_spec and
19698         soname_spec with $shrext.
19699         * doc/libtool.texi (Link mode): Document it.
19700
19701 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
19702
19703         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): modify
19704         $archive_expsym_cmds to restore support for using
19705         .def files via the -export-symbols switch.
19706         (AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]): in both the [CXX]
19707         branch and the default branch, improve $export_symbols_cmds
19708         so that DATA symbols are properly  labelled.  In the default
19709         branch, duplicate the _CXX_CONFIG correction for
19710         $archive_expsym_cmds.
19711
19712 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
19713
19714         * libtool.m4 (AC_LIBTOOL_RC): AC_PROG_RC doesn't exist --
19715         but we do AC_DEFUN something called LT_AC_PROG_RC.
19716         Call that instead.
19717
19718 2002-12-30  Robert Boehne  <rboehne@gnu.org>
19719
19720         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Copy the section
19721         for Darwin from AC_LIBTOOL_PROG_LD_SHLIBS so that the CXX
19722         tag doesn't use the g++ defaults for the OS X compiler.
19723
19724 2002-12-30  Albert Chin-A-Young <china@thewrittenword.com>
19725
19726         * libtool.m4: Sync methods used to detect GNU ld.
19727
19728 2002-12-20  Robert Boehne  <rboehne@gnu.org>
19729
19730         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
19731         AC_LIBTOOL_PROG_CC_C_O): Do not escape } or ? in sed argument.
19732
19733 2002-12-19  Robert Boehne  <rboehne@gnu.org>
19734
19735         * ltmain.in: Use the sed program found by LT_AC_PROG_SED
19736         so that relink commands don't get truncated.
19737
19738 2002-12-18  Robert Boehne  <rboehne@gnu.org>
19739
19740         * libtool.m4: Move AC_REQUIRE([LT_AC_PROG_SED]) to AC_PROG_LD
19741         so it is invoked earlier.
19742
19743 2002-12-11  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
19744
19745         * libtool.m4: Add support for Intel icc compiler for Linux.
19746
19747 2002-12-11  Robert Boehne  <rboehne@gnu.org>
19748
19749         * ltmain.in: Revert the version +1 change for IRIX, it could
19750         cause compatibility problems.
19751
19752 2002-11-22  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
19753
19754         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
19755         AC_LIBTOOL_PROG_CC_C_O): Changed method for compilation with
19756         custom flags to be language-independent.  Thereby removed
19757         CFLAGS/GCJFLAGS mixup bug.  Imitate Autoconf-style logging.
19758         Log entries no longer discarded by compilation failures.
19759         (_LT_AC_LANG_C_CONFIG, _LT_AC_LANG_CXX_CONFIG,
19760         _LT_AC_LANG_GCJ_CONFIG): Tuned settings of
19761         lt_simple_compile_test_code and lt_simple_link_test_code
19762         to avoid warnings that could break some option detections.
19763         (AC_LIBTOOL_PROG_COMPILER_NO_RTTI): Removed
19764         redundant "-c conftest.$ac_ext" in the argument to
19765         AC_LIBTOOL_COMPILER_OPTION.
19766         (AC_LIBTOOL_PROG_LD_SHLIBS): Replaced C-specific conftest
19767         source code with $lt_simple_compile_test_code, to support
19768         the "-lc" test with other languages.
19769
19770 2002-11-19  Paul Eggert  <eggert@twinsun.com>
19771
19772         Don't assume that egrep and fgrep exist.  POSIX 1003.1-2001 no
19773         longer requires them; you're supposed to use grep -E and grep -F
19774         instead.  Also, don't assume that "test -a" works, since POSIX
19775         doesn't require it.
19776
19777         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_LANG_C_CONFIG,
19778         _LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,
19779         AC_LIBTOOL_PROG_LD_SHLIBS):
19780         egrep -> grep, when that makes no difference.
19781         * libtoolize.in: Likewise.
19782         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Likewise.
19783         * ltmain.in: Likewise.
19784         * demo/Makefile.am (hc-direct): Likewise.
19785         * pdemo/Makefile.am (hc-direct): Likewise.
19786         * tests/build-relink.test, tests/build-relink2.test,
19787         tests/cdemo-conf.test, tests/cdemo-shared.test,
19788         tests/cdemo-static.test, tests/demo-conf.test,
19789         tests/demo-nofast.test, tests/demo-shared.test,
19790         tests/demo-static.test, tests/depdemo-conf.test,
19791         tests/depdemo-nofast.test, tests/depdemo-shared.test,
19792         tests/depdemo-static.test, tests/hardcode.test,
19793         tests/mdemo-conf.test, tests/mdemo-shared.test,
19794         tests/mdemo-static.test, tests/pdemo-conf.test,
19795         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
19796         tests/tagdemo-static.test: Likewise.
19797
19798         * libtool.m4 (AC_PROG_EGREP):
19799         New macro, defined if Autoconf doesn't define.
19800         (AC_PATH_TOOL_PREFIX, AC_PROG_LD_GNU): Use it.
19801         (AC_PROG_LD, AC_PROG_NM, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE):
19802         Use shell pattern matching rather than egrep.
19803         (AC_LIBTOOL_CONFIG): Set lt_EGREP and EGREP.
19804
19805         * demo/Makefile.am (SET_HARDCODE_FLAGS): Use sed instead of egrep.
19806         * pdemo/Makefile.am (SET_HARDCODE_FLAGS): Likewise.
19807
19808         * tests/defs (EGREP, FGREP): New vars.
19809
19810         * ltmain.in: egrep -> $EGREP
19811         * tests/assign.test, tests/demo-exec.test, tests/demo-inst.test,
19812         tests/pdemo-exec.test, tests/pdemo-inst.test, tests/sh.test:
19813         Likewise.
19814
19815         * tests/hardcode.test: fgrep -> $FGREP
19816
19817         * tests/f77demo-exec.test: test -a -> test &&
19818
19819 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19820
19821         * ltmain.in: When using gcc, pass -mfoo to the linker
19822         via $compiler_flags in order to pass architecture information to
19823         the linker (e.g. 32 vs 64-bit). This may also be accomplished via
19824         -Wl,-mfoo but this is not reliable with gcc because gcc may use
19825         -mfoo to select a different linker, different libraries, etc, while
19826         -Wl,-mfoo simply passes -mfoo to the linker. If there is a better
19827         solution, please let me know what it is.
19828
19829 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19830
19831         * tests/Makefile.am: Conditional assignment of FFLAGS = @FFLAGS@
19832         does not appear to be necessary given that Automake makes this
19833         assignment by default.  The condition is removed since Automake
19834         1.7.1 complains about it.
19835
19836 2002-11-18  Jakub Jelinek  <jakub@redhat.com>
19837
19838         * libtool.m4: Support linking of 64-bit libraries on
19839         sparc{,v[789]}-*linux*, s390*-*linux*, ppc*-*linux*
19840         GNU/Linux systems when the platform default is to build
19841         32-bit libraries.
19842
19843 2002-11-18  Andreas Jaeger  <aj@suse.de>, Bo Thorsen  <bo@suse.de>
19844
19845         * libtool.m4: Support linking of 32-bit libraries with ld
19846         on the x86-64, ppc64, s390x and sparc64 GNU/Linux systems.
19847
19848 2002-11-18  Akim Demaille  <akim@epita.fr>
19849
19850         * ltmain.in: Do not change the PATH in the wrappers: let them
19851         launch the real binary using its path.
19852
19853 2002-11-18  Kevin Ryde  <user42@zip.com.au>
19854
19855         * doc/libtool.texi (Library tips): Note array dimensions.
19856
19857 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19858
19859         * tests/*.test: MinGW's MSYS treats files under /dev
19860         specially. This causes 'test -r /dev/null/config/site' to
19861         improperly report success, causing configure to fail. Change the
19862         CONFIG_SITE definition from "/dev/null/config/site" to
19863         "/nonexistent" to avoid this problem.
19864
19865 2002-11-18  Charles Wilson  <cwilson@ece.gatech.edu>
19866
19867         * libtool.m4 (_LT_AC_LOCK): remove support for ancient
19868         versions of mingw and cygwin.
19869         (AC_LIBTOOL_POSTDEP_PREDEP): new function.
19870         moved the "find hidden library dependencies" code here
19871         from AC_LIBTOOL_LANG_CXX_CONFIG.  Attempted to make it
19872         multi-tag compatible, but currently only CXX calls it.
19873         (AC_LIBTOOL_LANG_CXX_CONFIG): set
19874         enable_shared_with_satic_runtimes to 'no' by default
19875         Set it to 'yes' for cygwin, mingw, pw32. Replace
19876         "find hidden library dependencies" code with a call
19877         to the new function AC_LIBTOOL_POSTDEP_PREDEP.
19878         Consolidate cygwin and mingw/pw32 stanzas.
19879         (AC_LIBTOOL_LANG_F77_CONFIG): set
19880         enable_shared_with_static_runtimes to 'no' by default
19881         (AC_LIBTOOL_CONFIG): add
19882         enable_shared_with_static_runtimes to the list of variables
19883         to write into ltmain.sh; include it in the libtool script
19884         template as allow_libtool_libs_with_static_runtimes.
19885         (AC_LIBTOOL_PROG_LD_SHLIBS): set
19886         enable_shared_with_static_runtimes to 'no' by default
19887         Set it to 'yes' for cygwin, mingw, pw32.
19888         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): only put cr in regexp
19889         if the build_os is mingw, not host_os
19890
19891         * ltmain.in (case deplibs_check_method): for all appropriate
19892         cases, if allow_libtool_libs_with_static_runtimes, then remove
19893         predeps and postdeps from the list of dependencies that must
19894         be checked for "dynamicness".  For the "none" case, the
19895         presence of compiler-generated postdeps and predeps should
19896         not trigger "inter-library dependencies not supported" error.
19897         (initial setup after arg processing): on cygwin/mingw, allow
19898         compiler-generated dependent libs to be duplicated without
19899         elimination.
19900         (initial search loop for deplibs): if the deplib in question
19901         is a libtool lib, then if
19902         allow_libtool_libs_with_static_runtimes then parse the .la file.
19903         If the .la file only has an "old_library", add the deplib
19904         directly to the deplibs list (-lstdc++) and DON'T use the .la
19905         file; this allows the (case deplibs_check_method) change above
19906         to take effect.
19907         * ltmain.in (for pass in $passes loop): remove predeps,
19908         postdeps, and compiler_lib_search_path from dependency_libs.
19909
19910 2002-11-08  Robert Boehne  <rboehne@gnu.org>
19911
19912         * doc/libtool.texi: Add --mode=* to every example using libtool.
19913
19914 2002-11-03  Ossama Othman  <ossama@doc.ece.uci.edu>
19915
19916         * ltmain.in: add support for installing into temporary
19917         staging area (e.g. 'make install DESTDIR=...')
19918
19919 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
19920
19921         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): restore setting
19922         allow_undefined_flag=unsupported for cygwin and mingw.
19923         (AC_LIBTOOL_PROG_LD_SHLIBS): ditto, for both "normal" gcc/ld
19924         and for the (unmaintained?) MSVC case.
19925
19926 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
19927
19928         * doc/libtool.texi (Install mode): document new
19929         -inst-prefix option.
19930
19931 2002-11-02  Robert Boehne  <rboehne@gnu.org>
19932
19933         * ltmain.in: Print a warning if the mode is not specified.
19934         * doc/libtool.texi: Document the change that the mode must be
19935         specified.
19936
19937 2002-10-30  Charles Wilson  <cwilson@ece.gatech.edu>
19938
19939         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): use printf, not
19940         echo. (AC_DEPLIBS_CHECK_METHOD): use new shell function
19941         win32_libid on w32 platforms
19942         * ltmain.in: add new section for shell functions. Add
19943         win32_libid() shell function.
19944         * f77demo/Makefile.am: add -no-undefined flag
19945
19946 2002-10-30  Rob Browning  <rlb@defaultvalue.org>
19947
19948         * ltdl.c (realloc): Remove custom realloc. (#define
19949         rpl_realloc realloc) and comment out later code for custom
19950         realloc. You can't define your own malloc unless you know
19951         enough about the malloc in use to be able to tell how big
19952         the src ptr is. The disabled code incorrectly used the
19953         *destination* ptr to decide how much to copy. This
19954         sometimes results in out-of-bound accesses which cause
19955         segfaults. This is a quick hack for now; we may want
19956         something cleaner later.
19957         (tryall_dlopen_module): check to be sure (dirname_len > 0) before
19958         testing first character against '/'.
19959         (try_dlopen): check for feof(file) in read loop -- otherwise
19960         infinite loop?
19961
19962 2002-10-25  Robert Boehne  <rboehne@gnu.org>
19963
19964         * ltmain.in (-XCClinker): New flag passes a linking option
19965         directly to the compiler driver without appending ${wl}.
19966
19967 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
19968
19969         * README-alpha: Add some release note templates for inspiration
19970         and consistency at release time.
19971
19972         * Makefile.am (cvs-diff): Compress the generated diff file, ready
19973         for upload to ftp.gnu.org.
19974
19975 2002-10-25  Howard Chu  <hyc@highlandsun.com>
19976
19977         * ltmain.in [aix]: Be sure to deal with xlc_r, cc_r and other
19978         compiler variants.
19979
19980 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
19981
19982         * libtool.m4 (_LT_AC_FILE_IMPGEN_C): Removed.  No longer used.
19983         (_LT_AC_FILE_LTDLL_C): Ditto.
19984         (AC_LIBTOOL_CONFIG) [cygwin, mingw, pw32, os2]: Don't call
19985         _LT_AC_FILE_LTDLL_C or _LT_AC_FILE_IMPGEN_C.
19986
19987 2002-10-25  Albert Chin-A-Young  <china@thewrittenword.com>
19988
19989         * libtool.m4: When LDFLAGS="-Wl,-brtl,[other options]", the
19990         -brtl special-case code for AIX never gets triggered because
19991         were are being too specific about how we search for -brtl.
19992         Use case statement to avoid this. Remove extraneous
19993         semicolon.
19994         * ltmain.in: Recognize the IBM xlc compiler.
19995
19996 2002-10-24  Andrew Suffield  <asuffield@debian.org>
19997
19998         * libltdl/ltdl.c (lt_dlopenext): Corrected sense of "file not
19999         found" check.
20000
20001 2002-10-24  Ossama Othman  <ossama@doc.ece.uci.edu>
20002
20003         * ltmain.in: Support compiler names matching g++*
20004
20005 2002-10-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20006
20007         * libtool.m4: Removed old Windows cruft.
20008         * libtool.m4: Adapted pw32 to be like Cygwin/MinGW.
20009
20010 2002-10-23  Robert Boehne  <rboehne@gnu.org>
20011
20012         ltmain.in: Do not add 1 to the version under IRIX, it is
20013         not necessary.
20014
20015 2002-10-15  Charles Wilson  <cwilson@ece.gatech.edu>
20016
20017         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): avoid long delay on
20018          cygwin/Win9x when computing commandline length.
20019         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): fix postinstall_cmds when
20020         sources are in a subdirectory
20021         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): use $PATH_SEPARATOR, not
20022         $ac_path_separator
20023         * configure.ac: move depdemo-specific stuff.  You must configure
20024         libtool before you can try './libtool --features'.
20025         * mdemo-inst.test: set $PATH to include the directory in which
20026         the modules are installed (on cygwin, DLL search path is the
20027         $PATH)
20028
20029 2002-10-15  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
20030
20031         * ltmain.in: MinGW works identically to Cygwin.
20032         * libtool.m4: lt_cv_sys_max_cmd_len hard-coded to 8192
20033         *  Model MinGW configuration after Cygwin configuration.
20034         Some portions share implementation.
20035
20036 2002-10-15  Elizabeth Barham <soggytrousers@yahoo.com>
20037
20038         * libtool.m4: Pattern MinGW library naming after that
20039         used by Cygwin except use 'lib' prefix rather than 'cyg'.
20040         * Transfer some configuration from Cygwin with adjustments
20041         for MinGW.
20042
20043 2002-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
20044
20045         * libtool.m4: When a module is built for AIX, the 'lib'
20046         prefix isn't needed, neither is the version. AIX dlopen
20047         will honor the RPATH in a library.
20048
20049 2002-10-11  Christoph Egger  <Christoph_Egger@gmx.de>
20050
20051         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS, darwin): Add
20052         -install_name to the link line only when -dynamiclib is
20053         specified for a module.  Use -bind_at_load when linking C++
20054         shared libraries.
20055
20056 2002-10-04  Elizabeth Barham  <soggytrousers@yahoo.com>
20057
20058         * libtool.m4 (AC_LIBTOOL_SETUP): GCC now checks -shared to
20059         create a dll for Windows targets.
20060
20061 2002-09-24  Robert Boehne  <rboehne@gnu.org>
20062
20063         * ltmain.in: Fixed a few spelling errors.
20064
20065 2002-09-17  Robert Boehne  <rboehne@gnu.org>
20066
20067         * libltdl/ltdl.c: Commented out access() call that checks for a
20068         library file's existence and permissions, as it appears to fail
20069         in every case.
20070
20071 2002-09-09  Albert Chin-A-Young  <china@thewrittenword.com>
20072
20073         * libtool.m4: Custom $symcode for Tru64 UNIX to catch 'Q',
20074         read-only constants.
20075
20076 2002-09-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.de>
20077
20078         * libtool.m4 (osf[345]): Append $major to soname_spec.
20079         Reflect this in library_names_spec.
20080         * ltmain.in (osf): Prefix $major with '.' for use as extension.
20081
20082 2002-08-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20083
20084         * ltdl.m4 & libltdl/ltdl.c: Port fully to native Win32 API.
20085
20086 2002-07-31  Robert Boehne  <rboehne@gnu.org>
20087
20088         * f77demo/.cvsignore: New file, forgotten in the last commit.
20089
20090 2002-07-31  Eric Lindahl  <erik@theophys.kth.se>
20091
20092         * libtool.m4 (AC_PROG_LIBTOOL): Added support for the new F77
20093         Fortran support tag.
20094         (AC_LIBTOOL_PROG_CC_C_O, _LT_AC_TAGCONFIG): Support F77 tag.
20095         (AC_LIBTOOL_F77, _LT_AC_LANG_F77, AC_LIBTOOL_LANG_F77_CONFIG):
20096         New macros for F77 tag Fortran support.
20097         * configure.ac: Add support for creating the new F77 tag.
20098         * bootstrap: Add f77demo directory to the list to be processed.
20099         * Makefile.am: Add support for FFLAGS and FLIBS.
20100         * tests/Makefile.am: Add new Fortran tests.
20101         * tests/f77demo-*.test: New files.
20102         * f77demo/configure.ac, f77demo/cprogram.c, f77demo/fooc.c
20103         * f77demo/foof.f, f77demo/foo.h, f77demo/fprogram.f
20104         * f77demo/Makefile.am, f77demo/README: New files.
20105
20106 2002-07-16  Gary V. Vaughan  <gary@gnu.org>
20107
20108         * libltdl/ltdl.c (tryall_dlopen): We need to catch missing file
20109         errors early so that file_not_found() can detect what happened.
20110
20111 2002-06-26  Bob Friesenhahn  <bfreisen@simple.dallas.tx.us>
20112
20113         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Remove
20114         extraneous '=' character which appears in gcc 3.1
20115         -print-search-dirs output.
20116         Handle both upper and lower case drive letters when testing for
20117         Windows vs POSIX style path output from -print-search-dirs
20118         output.
20119
20120 2002-06-24  Robert Boehne  <rboehne@gnu.org>
20121
20122         * ltmain.in (Piecewise linking): Add a clause to skip creating
20123         the export file until the reloadable object file(s) have been
20124         created, then use them as input for $export_symbols_cmds.
20125
20126 2002-06-23  Albert Chin-A-Young  <china@thewrittenword.com>
20127
20128         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Need to quote [ and ] for
20129         Autoconf.
20130
20131         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): HP/UX needs
20132         libltdl_cv_sys_dlopen_deplibs set to yes.
20133
20134 2002-06-23  Kevin Ryde  <user42@zip.com.au>
20135
20136         * libtool.m4 (AC_LIBTOOL_SETUP, _LT_AC_LOCK): Use
20137         AC_PROVIDE_IFELSE to test AC_LIBTOOL_WIN32_DLL and
20138         AC_LIBTOOL_DLOPEN, necessary for autoconf 2.53.
20139
20140 2002-06-23  Gary V. Vaughan  <gary@gnu.org>
20141
20142         * libltdl/ltdl.c (argz_insert): Actually, BEFORE can be NULL
20143         when *PARGZ_LEN is non-NULL, so the assertion to the contrary was
20144         bogus.
20145         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
20146         and Albert Chin-A-Young <china@thewrittenword.com>
20147
20148 2002-06-21  Gary V. Vaughan  <gary@gnu.org>
20149
20150         * libltdl/ltdl.c (foreach_dirinpath): Ensure that filename is '\0'
20151         terminated by all code paths.
20152         Reported by Lutz Müller <lutz@users.sourceforge.net>
20153
20154 2002-06-20  Gary V. Vaughan  <gary@gnu.org>
20155
20156         From Kevin Ryde  <user42@zip.com.au>:
20157         * doc/libtool.texi (Platform quirks): s/dependan/dependen/
20158         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Ditto.
20159         * TODO: Ditto.
20160
20161 2002-06-13  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
20162
20163         * ltmain.in (irix, nonstopux): Set major before use.
20164
20165 2002-06-11  Daniel Kobras  <kobras@linux.de>
20166
20167         * libltdl/ltdl.c (try_dlopen): Don't return bogus handle to user
20168           if tryall_dlopen() fails.
20169
20170 2002-06-01  Gary V. Vaughan  <gary@gnu.org>
20171
20172         * tests/pdemo-exec.test: Typo.  s/hell-static/hell_static/
20173
20174 2002-05-31  Charles Wilson  <cwilson@ece.gatech.edu>
20175
20176         * NEWS: Updated.
20177         * libtool.m4: use $NM to create the symbol list on cygwin, not
20178         $ltdll_cmds as on mingw.  For all tags, (and host=cygwin) set
20179         allow_undefined_flag="" so that the --auto-import magic
20180         works properly.  For all tags (and host=cygiwn) set
20181         always_export_symbols=no -- it is unnecessary thanks to
20182         binutils' auto-export magic.
20183         * libltdl/ltdl.c: Don't force cygwin to use the LoadLibrary
20184         wrapper; use cygwin's builtin implementatino of dl*.
20185         * cdemo/Makefile.am: the downside of unsetting
20186         'allow_undefined_flag' -- we must include -no-undefined
20187         in the _la_LDFLAGS variable.
20188         * depdemo/l1/Makefile.am: ditto.
20189         * depdemo/l2/Makefile.am: ditto.
20190         * depdemo/l3/Makefile.am: ditto.
20191         * depdemo/l4/Makefile.am: ditto.
20192         * mdemo/Makefile.am: ditto.
20193         * tagdemo/Makefile.am: ditto.
20194         * demo/Makefile.am: ditto.  But also, we must make special
20195         provision to clean up the hell0 wrapper script.
20196         * pdemo/Makefile.am: ditto -no-undefined.  ditto hell0.
20197         And use 'hell_static' instead of 'hell.static'.
20198         * tests/pdemo-inst.test: use 'hell_static' instead
20199         of 'hell.static'.
20200         * tests/pdemo-exec.test: ditto.
20201
20202 2002-05-30  Charles Wilson  <cwilson@ece.gatech.edu>
20203
20204         * tests/build-relink2.test: look for installed libl3.la
20205         in $prefix/lib/ as well as $prefix/lib/extra/.
20206
20207 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
20208
20209         * tests/hardcode.test: Use libtool --config to collect the
20210         variable values for the test, otherwise the tag values interfere
20211         with a straight grep.
20212
20213 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
20214
20215         Finally fix the annoying bug which always adds all tags to the
20216         libtool script built by your project configure.  Now we set the
20217         default tags depending on whether AC_PROG_CXX et. al. are actually
20218         called from configure.ac.
20219
20220         * libtool.m4 (_LT_AC_TAGCONFIG): Don't default the tagnames when
20221         no --with-tags argument is given.
20222         (_LT_AC_SHELL_INIT): Factored out from the AC_DIVERT_PUSH code
20223         in...
20224         (_LT_AC_PROG_ECHO_BACKSLASH): ...which now calls the macro
20225         instead.
20226         (AC_LIBTOOL_CXX): Use _LT_AC_SHELL_INIT to add CXX to the
20227         initialisation sequence for tagnames.
20228         (AC_LIBTOOL_GCJ): Similarly for GCJ tag.
20229         (AC_LIBTOOL_RC): Likewise for RC tag.
20230
20231 2002-05-21  Jon Meredith  <jonm@alchemetrics.co.uk>
20232
20233         * ltmain.in: Fix a problem on SCO OpenServer5 that caused a
20234         failure in three depdemo-make tests. For some reason the linker
20235         tries to find the dependent libraries using the library search
20236         path before it has read the libraries specified with absolute
20237         paths in the full commandline. This patch add -L's for each of
20238         the dependent library directories so that they can be resolved.
20239
20240 2002-05-09  Nick Hudson  <skrll@netbsd.org>
20241
20242         * libtool.m4: Update support for NetBSD
20243         * ltdl.m4: Make sure that libltdl_cv_func_dlopen and
20244         libltdl_cv_lib_dl_dlopen are set and used instead of the
20245         ac_cv_ versions. Also, use lt_cv_sys_global_symbol_pipe
20246         instread of global_symbol_pipe. This fixes the detection of
20247         dlopen on BSD derived plaforms and more importantly fixes
20248         need_uscore detection.
20249
20250 2002-05-06  Paul Eggert  <eggert@twinsun.com>
20251
20252         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): head -1 -> sed 1q to
20253         port to POSIX 1003.1-2001 hosts, like textutils 2.0.21 with
20254         _POSIX2_VERSION=200112.
20255
20256 2002-05-06  Paul Eggert  <eggert@twinsun.com>
20257
20258         * ltmain.in: Don't assume that "sort +2" works, as POSIX
20259         1003.1-2001 says that "sort +2" is supposed to sort the file
20260         named "+2".  An example host that behaves like this is
20261         textutils 2.0.21 with _POSIX2_VERSION=200112.
20262
20263 2002-05-06  Loren James Rittle  <rittle@latour.rsch.comm.mot.com>
20264
20265         * ltmain.in: Detect and handle object name conflicts while
20266         piecewise linking a static library.
20267
20268 2002-05-02  Dave Vasilevsky  <thevas@mac.com>
20269
20270         * ltmain.in: Remove convenience libraries from deplibs for Darwin.
20271
20272 2002-05-02  Fritz Elfert  <felfert@to.com>
20273
20274         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Modify archive_expsym_cmds
20275         to catch properly handle dll alias symbols.
20276
20277 2002-04-24  Kevin Ryde  <user42@zip.com.au>
20278
20279         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use $build_os not $host_os.
20280
20281 2002-04-14  Robert Boehne  <rboehne@gnu.org>
20282
20283         * doc/libtool.texi (C++ libraries): Finally updated to reflect
20284         Libtool's support for C++.
20285
20286 2002-04-14  Jean-Frederic Clere  <jfrederic.clere@fujitsu-siemens.com>
20287
20288         * libtool.m4: Update support for Fujistu-Siemens Computers (FSC).
20289         * ltmain.in: Add support for EBCDIC based systems.
20290
20291 2002-04-07  Robert Boehne  <rboehne@gnu.org>
20292
20293         * libtool.m4 (LT_AC_PROG_SED): Refactor, removing temporary directory
20294         and consistent use of the shell variable namespace "lt_ac_".
20295
20296 2002-04-02  Robert Boehne  <rboehne@gnu.org>
20297
20298         * ltmain.in: Finish the tag matching logic started yesterday and
20299         refactor it a bit.
20300
20301 2002-04-01  Robert Boehne  <rboehne@gnu.org>
20302
20303         * ltmain.in: Handle the case when no tag is explicitly set, and
20304         $base_compile has a space in front of $CC, and revert the setting
20305         of tagname checked in on 2002-3-14.
20306
20307 2002-04-01  Robert Boehne  <rboehne@gnu.org>
20308
20309         * tagdemo/foo.cpp: Use C++ IO to catch problems linking to C++
20310         runtime libraries.
20311         * tagdemo/main.cpp: Ditto.
20312
20313 2002-03-16  Gary V. Vaughan  <gary@gnu.org>
20314
20315         * TODO: Removed obsolete comments about RMS' package system.
20316
20317 2002-03-14  Robert Boehne  <rboehne@gnu.org>
20318
20319         ltmain.in: Touch-up to make testsuite pass, and default tagname
20320         to CC when it isn't explicitly set.
20321
20322 2002-03-14  Anthony Green  <green@redhat.com>
20323
20324         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Albert Chin's gcj fix.
20325         (AC_LIBTOOL_PROG_COMPILER_PIC): Per Bothner's change for not
20326         using -DPIC with gcj.
20327
20328 2002-03-11  Bruce Korb  <bkorb@gnu.org>
20329
20330         * ltmain.in(compile): bring a touch of order to the option processing
20331
20332 2002-02-09  Gary V. Vaughan  <gary@gnu.org>
20333
20334         * NEWS: Updated.
20335         * THANKS: Added Rob Collins and Chuck Wilson for their cygwin
20336         work.
20337
20338         From Robert Collins  <robert.collins@itdomain.com.au>:
20339         * configure.ac (AC_EXEEXT): Needed for DOSish systems.
20340         * libtool.m4 (shlibpath_overrides_runpath) [cygwin]: Set to yes
20341         when compiling with gcc.
20342         (lt_prog_compiler_pic) [cygwin]: No longer needs the -DDLL_EXPORT
20343         hack, so we just say the pic is the default.
20344         (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin]: Extract symbols from a
20345         library normally.
20346         [cygwin]: Declare C++ compiler characterisics for g++, taking into
20347         account the new auto-import support in cygwin ld.
20348         * ltmain.in (specialdeplibs) [cygwin]: Be careful about
20349         eliminating duplicate -lgcc's from the link line.
20350         [cygwin]: Be smarter about .exe suffixes.
20351         * demo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Support
20352         DOSish systems properly.
20353         * depdemo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Ditto.
20354         * demo/Makefile.am (deplibs-check): Allow for .exe suffix.  Use
20355         hell_static instead of hell.static for multi-`.' inhibited OSes.
20356         * tests/demo-exec.test: Ditto.
20357         * tests/demo-inst.test: Ditto.
20358         * demo/foo.h [cygwin]: Sanitize cygwin dll support.
20359         * demo/foo.c (_LIBFOO_COMPILATION_): No longer required.
20360         * demo/hello.c (_LIBFOO_COMPILATION_): Ditto.
20361         * depdemo/Makefile.am (bin_PROGRAMS): Use depdemo_static instead
20362         of depdemo.static for multi-`.' inhibited OSes.
20363         * tests/depdemo-exec.test: Ditto.
20364         * tests/depdemo-inst.test: Ditto.
20365         * mdemo/Makefile.am (bin_PROGRAMS):  Ditto for mdemo.static.
20366         * tests/dryrun.test: Ditto.
20367         * tests/mdemo-exec.test: Ditto.
20368         * tests/mdemo-inst.test: Ditto.
20369         * tests/build-relink.test:  Be careful about possible .exe
20370         suffixes.
20371         * tests/noinst-link.test: Allow for .exe suffix.
20372
20373 2002-02-07  Alexandre Oliva  <aoliva@redhat.com>
20374
20375         Reverted incorrect patch:
20376         2001-10-24  H.J. Lu  <hjl@gnu.org>
20377         * ltmain.sh: Allow link against an archive when building a
20378         shared library.
20379         * libtool.m4 (lt_cv_deplibs_check_method): Always use
20380         file_magic for Linux ELF.
20381
20382 2002-01-30  Robert Boehne  <rboehne@ricardo-us.com>
20383
20384         * libtool.m4 (LT_AC_PROG_SED): Removed a mysterious newline.
20385
20386 2002-01-28  Robert Boehne  <rboehne@ricardo-us.com>
20387
20388         * libtool.m4 (LT_AC_PROG_SED): New macro tests sed for truncation of
20389         output.  AC_REQUIRE the new macro.
20390         * ltmain.in: Use $SED rather than plan old sed, as set by the new
20391         macro LT_AC_PROG_SED.
20392
20393 2002-01-10  Volker Christian  <voc@soft.uni-linz.ac.at>
20394
20395         * libltdl/ltdl.c (find_handle_callback): treat the result of a call
20396         to access(2) correctly when deciding whether a library can be found
20397         in a directory from user_search_path.
20398
20399 2002-01-07  Robert Boehne  <rboehne@ricardo-us.com>
20400
20401         * NEWS: Fixed wrong path for texinfo.tex.
20402         * configure.ac: Bumped version to 1.4e.
20403
20404         GNU libtool 1.4d was released.
20405
20406         * configure.ac: Bumped version to 1.4d.
20407         * NEWS: updated.
20408         * config.guess, config.sub, texinfo.tex:  Synchronised from
20409         ftp.gnu.org.
20410
20411 2001-12-06  Jens Petersen  <petersen@redhat.com>
20412
20413         * ltmain.in: Replace all test "-a"s by "&& test"
20414         for portability.
20415
20416 2001-11-28  Robert Boehne  <rboehne@ricardo-us.com>
20417
20418         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Change the
20419         factor of saftey as 3/4 of the result was not low enough.
20420
20421 2001-11-28  Gary V. Vaughan  <gary@gnu.org>
20422
20423         * libtoolize.in: The test for whether AC_PROG_LIBTOOL is defined
20424         in aclocal.m4 had bitrotted slightly.
20425         Reported by Takahiko Kawasaki <Takahiko_Kawasaki@cii.csk.co.jp>
20426
20427 2001-11-27  Donald D. Anderson  <dda@sleepycat.com>
20428
20429         * ltmain.in: Treat freebsd like openbsd, in that -lc/-lc_r should
20430         not be explicitly used.  ld handles this depending on the presence
20431         of the -pthread option.
20432
20433 2001-11-27  Robert Boehne  <rboehne@ricardo-us.com>
20434
20435         With help from Michael Matz <matz@kde.org>:
20436         * ltmain.in:  Add a new command line argument
20437         --preserve-dup-deps for preserving duplicate
20438         dependent libraries.
20439         * libtool.texi: Document it.
20440
20441 2001-11-27  Kevin Ryde  <user42@zip.com.au>
20442
20443         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Send "test"
20444         warnings to /dev/null, helps FreeBSD and maybe others.
20445
20446 2001-11-15  Albert Chin-A-Young  <china@thewrittenword.com>
20447
20448         * libtool.m4: quote LTCC because autoconf AC_PROG_CC_STDC
20449         macro might add to $CC if options needed by compiler to
20450         grok ANSI.
20451
20452 2001-11-15  Gary V. Vaughan  <gary@gnu.org>
20453
20454         From Joseph S. Myers  <jsm28@cam.ac.uk>:
20455         * ltmain.in: Typo.
20456
20457 2001-11-15   Mo DeJong  <supermo@bayarea.net>
20458
20459         * ltmain.in: Place parens around a generated relink_command
20460         so it is run is a subshell. This avoids an install error
20461         where libtool ended up in the wrong directory after
20462         relinking a .la file.
20463
20464 2001-10-31  Raja R Harinath  <harinath@cs.umn.edu>
20465
20466         * configure.ac (pkgdatadir): Move the invocation of AC_INIT_AUTOMAKE
20467         before the use of $PACKAGE in $pkgdatadir.
20468         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
20469
20470 2001-10-28  Gary V. Vaughan  <gary@gnu.org>
20471
20472         From Tom Bates  <Tom.Bates@compaq.com>:
20473         * libtool.m4 [mips-compaq-nonstopux]: New port.
20474         * ltmain.in [mips-compaq-nonstopux]: Support
20475         $version_type == nonstopux.
20476
20477 2001-10-28  Albert Chin-A-Young  <china@thewrittenword.com>
20478
20479         * libltdl/ltdl.c (foreach_dirinpath): change some types to size_t
20480         from int because strlen() returns size_t. argz_len changed to
20481         size_t because argzize_path() takes 3rd argument as size_t, not
20482         int.
20483         Based on lint run from Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
20484
20485 2001-10-27  Gary V. Vaughan  <gary@gnu.org>
20486
20487         * libtool.m4 (_LT_AC_TAGCONFIG): Cray sed does not allow character
20488         sets to contain the separator character.
20489         Reported by Kevin Ryde <user42@zip.com.au>
20490
20491         * ltdl.m4 (AC_WITH_LTDL): New macro to add `--with-included-ltdl'
20492         option to configure, but to find an appropriate ltdl library and
20493         append the right options to link it.
20494
20495 2001-10-24  Kevin Ryde  <user42@zip.com.au>
20496
20497         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Remove a stray ' quote.
20498
20499 2001-10-24  H.J. Lu  <hjl@gnu.org>
20500
20501         * ltmain.sh: Allow link against an archive when building a
20502         shared library.
20503         * libtool.m4 (lt_cv_deplibs_check_method): Always use
20504         file_magic for Linux ELF.
20505
20506 2001-10-12  Guido Draheim  <guidod-2001q3@gmx.de>
20507
20508         * ltdl.m4: Changed "underscode to underscore".
20509
20510 2001-10-06  Gary V. Vaughan  <gary@gnu.org>
20511
20512         * configure.ac: General modernisation and cleanup.
20513         * cdemo/configure.ac: Ditto.
20514         * demo/configure.ac: Ditto.
20515         * depdemo/configrue.ac: Ditto.
20516         * ltdl/configure.ac: Ditto.
20517         * ltdldemo/configure.ac: Ditto.
20518         * mdemo/configure.ac: Ditto.
20519         * pdemo/configure.ac: Ditto.
20520         * tagdemo/configure.ac: Ditto.
20521
20522 2001-10-04  Albert Chin-A-Young <china@thewrittenword.com>
20523
20524         * libltdl/ltdl.c: Match function return type with prototype
20525         (add static initializer to file_not_found).
20526
20527 2001-09-30  Gary V. Vaughan  <gary@gnu.org>
20528
20529         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): s/INCLTDL/LTDLINCL/ for
20530         consistency with gettext's INTLINCL.  Keep the old symbol too for
20531         backwards compatibility.
20532         (AC_LIBLTDL_INSTALLABLE): Ditto.
20533         * doc/libtool.texi (Distributing libltdl):  Adjust documentation.
20534
20535 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
20536
20537         * ltdl.m4 (AC_LTDL_DLLIB): Even though HP-UX 10.20 and 11.00
20538         support shl_load *and* dlopen, dlopen works correctly only
20539         with a patch. Because we want to avoid the situation where we
20540         build on a system with the patch but deploy on a system without,
20541         use shl_load exclusively if found.
20542
20543 2001-09-22  Gary V. Vaughan  <gary@gnu.org>
20544
20545         * libtool.m4 (_LT_AC_FILE_LTDLL_C): Be carefule that the start
20546         marker searched for by sed must start in column 0.
20547         (_LT_AC_FILE_IMPGEN_C): Ditto.
20548         Reported by Tor Lillqvist <tml@iki.fi>
20549
20550 2001-09-22  Tor Lillqvist  <tml@iki.fi>
20551
20552         * libtool.m4 [mingw* cygwin*]: Small improvement for mingw-hosted
20553         tool support (while still running libtool on cygwin). In that case
20554         PATH_SEPARATOR is ':', but gcc -print-search-dirs still prints its
20555         search path with ';' as separator.
20556         (AC_LIBTOOL_RC, AC_LIBTOOL_LANG_RC_CONFIG): Add support for .rc
20557         files (Windows resource files), compiled by the resource compiler
20558         (windres in mingw) to .o files.
20559         (AC_PROG_NM): Minor bug fix for $PATH elements with spaces in
20560         them.
20561         * configure.ac: Use LT_AC_PROG_RC.
20562         * ltmain.in: Check for .rc files.
20563         * NEWS: Updated.
20564
20565         * ltmain.in: Add a space to $base_compile in the case statement,
20566         as the case labels checks for trailing spaces, but there aren't
20567         necessarily in $base_compile.
20568
20569 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
20570
20571         * libtool.m4: When setting archive_cmds for CC, don't
20572         test for $GXX but for $GCC on HP-UX. Indentation fixes.
20573
20574 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
20575
20576         From Tor Lillqvist <tml@iki.fi>:
20577         * ltmain.in [cygwin* mingw*]: Take care of the difference between
20578         wrapper script name and executable name.
20579
20580         * libtool.m4 (archive_cmds) [darwin1.[0-2]]: Darwin uses zsh-3.1.6
20581         for /bin/sh, and that shell does not handle escaped quotes
20582         properly yet.
20583         Reported by Christopher Pfisterer <cp@chrisp.de>
20584
20585 2001-09-21  Albert Chin-A-Young  <china@thewrittenword.com>
20586
20587         * libltdl/ltdl.c: Match function return type with prototype
20588         (add static initializer to some functions) to prevent warnings
20589         from HP-UX cc.
20590
20591 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
20592
20593         * libltdl/ltdl.c: Added support for dmalloc, and uncovered some
20594         memory bugs as a result.
20595
20596 2001-09-21  Albert Chin  <china@thewrittenword.com>
20597
20598         * libtool.m4: Don't include main() when testing for command to
20599         parse $NM output because some C++ compilers don't allow you to
20600         take the address of main (e.g. HP-UX aCC).
20601
20602         * libtool.m4: Some uses of $GXX were unquoted, but GXX is either
20603         NULL or yes.  Use "$GXX".
20604
20605 2001-09-13  Assar Westerlund  <assar@sics.se>
20606
20607         * ltdl.m4 (AC_LTDL_DLLIB): call dlopen with arguments so the test
20608         does not fail due to a prototype in dlfcn.h
20609
20610 2001-09-13  Gary V. Vaughan  <gary@gnu.org>
20611
20612         * ltdl.m4 (AC_CHECK_HEADERS): Check for assert.h.
20613         * libltdl/ltdl.c:  If not, disable assertions manually.
20614
20615 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
20616
20617         * bootstrap: Be robust to having no files that need removing.
20618
20619         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump libltdl version to
20620         1.2.
20621         * libltdl/Makefile.am (libltdl_la_LDFLAGS):  Bump libtool library
20622         version info to 4:0:1.
20623
20624 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
20625
20626         * libtool.m4: No need to undefine([symbols]), proper quotation is
20627         enough.
20628
20629 2001-09-10  Gary V. Vaughan  <gary@gnu.org>
20630
20631         * libtool.m4: CVS Autoconf guarantees a decent default IFS, so
20632         there is no need for us to preset it anymore.
20633         Be careful not to set IFS="${IFS}$PATH_SEPARATOR" for PATH
20634         splitting, otherwise spaces in directory names will be lost.
20635         Use $PATH_SEPARATOR... don't rely on $ac_path_separator, which was
20636         an autoconf internal until just now, when it disappeared!
20637         * ltmain.in: Default IFS once, at the start.
20638         Reported by Akim Demaille <akim@epita.fr>
20639
20640 2001-09-10   Brad  <brad@comstyle.com>
20641
20642         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Missed an instance of
20643         Autoconf square bracket quoting style normalisation.
20644
20645         * ltmain.in (-lc_r): Style improvement.
20646
20647         * doc/libtool.texi: Remove obsolete references to ltconfig.
20648         * tests/quote.test: s/ltconfig/\$0/
20649
20650 2001-09-09  Gary V. Vaughan  <gary@gnu.org>
20651
20652         * libtool.m4: Use Autoconf square bracket quoting style
20653         consistently throughout.
20654
20655 2001-09-08  Gary V. Vaughan  <gary@gnu.org>
20656
20657         * bootstrap: Cleanup `autom4te' and `libtool' so that we don't
20658         get caught by something from a previous build.
20659
20660         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Revert
20661         my 2001-09-06 patch.
20662         (no_undefined_flag)i [solaris*]: Revert Alexandre's 2001-04-11 patch.
20663
20664 2001-09-07  Gary V. Vaughan  <gary@gnu.org>
20665
20666         * libltdl/ltdl.c (foreach_dirinpath): argz_len should be a size_t.
20667         Reported by Albert Chin <china@thewrittenword.com>
20668
20669 2001-09-06  Gary V. Vaughan  <gary@gnu.org>
20670
20671         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [solaris*]: Typo. s/GXX/GCC/.
20672
20673         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Changing
20674         no_undefined_flag from `-z text' to `-z defs' (see entry below at
20675         2001-04-11  Alexandre Oliva  <aoliva@redhat.com>) has a problem.
20676         when linking a shared library with gcc calling /usr/ccs/bin/ld (eg.
20677         the gcc supplied with Solaris 8 companion CD), using the flag
20678         -no-undefined, shared library linking will always fail because of
20679         the unresolved symbols from libgcc.a.  Consequently we have to
20680         provide a path to libgcc.a when linking shared libraries in
20681         conjunction with -no-undefined!
20682
20683         From Michael Pruett <mpruett@engr.sgi.com>:
20684         * libltdl/ltdl.c (find_module): `0' valued arguments to
20685         tryall_dlopen_module() must be explicitly cast to avoid compiler
20686         warnings on some environments.
20687
20688         From Daniel Johnson <danielj7@mac.com>:
20689         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Move from GNU
20690         ld section to non-GNU ld section.
20691
20692 2001-09-05  Robert Boehne  <rboehne@ricardo-us.com>
20693
20694         * pdemo/Makefile.am (helldl):  Automake 1.4 can't find the target
20695         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
20696         Using both targets to the left of the colon seems to work though!
20697
20698 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
20699
20700         * demo/Makefile.am (helldl):  Automake 1.4 can't find the target
20701         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
20702         Using both targets to the left of the colon seems to work though!
20703
20704 2001-09-03  Brad  <brad@comstyle.com>
20705
20706         * ltdl.m4 [AC_LTDL_SYS_DLOPEN_DEPLIBS]: Teach ltdl about the
20707         behavior of OpenBSD's dlopen().
20708
20709 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
20710
20711         From Marius Vollmer <mvo@zagadka.ping.de>:
20712         * libltdl/ltdl.c (tryall_dlopen_module): Don't forget to propogate
20713         errors over recurse levels.
20714
20715 2001-09-03  Brad  <brad@comstyle.com>
20716
20717         * libtool.m4 [openbsd*]: More improvements to the OpenBSD port.
20718
20719 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
20720
20721         From Albert Chin <china@thewrittenword.com>:
20722         * libtool.m4 (_LT_AC_LANG_C_CONFIG) [aix4*]: Be careful with
20723         shared namespaces for static and shared libs.
20724         (AC_LIBTOOL_DLOPEN_SELF): If all else fails, try dld_link from GNU
20725         DLD.
20726
20727 2001-09-02  Christopher Pfisterer <cp@chrisp.de>
20728
20729         * libtool.m4, ltmain.in: Linker flag and version numbering fixes
20730         for darwin.
20731
20732 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
20733
20734         Based on a patch from Marius Vollmer <mvo@zagadka.ping.de>:
20735         * NEWS: updated.
20736         * ltdl.m4 (AC_LIB_LTDL): Check for unistd.h.
20737         * ltdl.c: Include unistd.h if it exists.
20738         (LTDL_SEARCHPATH_VAR): Macro to prevent hardcoding
20739         "LTDL_LIBRARY_PATH".
20740         (LTDL_ARCHIVE_EXT): Macro to prevent hardcoding ".la".
20741         (archive_ext): Have only one copy of ".la" in the readonly
20742         segment of the compiled library.
20743         (find_handle_callback): Don't bother trying to dlopen the file if
20744         it doesn't exist.
20745         (find_handle): Don't bother searching for files if no search_path
20746         was supplied.
20747         (file_not_found): A new function to determine whether the last
20748         error was due to a file not found condition.
20749         (try_dlopen): Renamed from lt_dlopen() and changed to have the
20750         same footprint as tryall_dlopen.  This involved a minor rewrite of
20751         much of the internals of this function.
20752         (lt_dlopen): A new function wrapped arounf try_dlopen().
20753         (lt_dlopenext): If a file already has a suitable extension, don't
20754         bother adding additional extensions and trying to open those.
20755         Tidy up the rest of the code to prevent continued searching with
20756         an eventual FILE_NOT_FOUND when a genuine failure earlier in the
20757         search process could be legitimately reported.
20758
20759         * demo/Makefile.am (helldl$(EXEEXT)): Automake-1.5 made me change
20760         this from just `helldl'.
20761
20762 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
20763
20764         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) Fixed a problem
20765         with export_symbols_cmds not being set for CXX tags, and
20766         not being properly set for any tag under AIX/Power.
20767
20768 2001-08-19  Ossama Othman  <ossama@uci.edu>
20769
20770         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Corrected and improved
20771           error message that is displayed when there was a problem
20772           compiling the C++ test program.  It still mentioned the now
20773           non-existent `ltcf-cxx.sh' file.
20774
20775         * doc/libtool.texi (LTDL_SET_PRELOADED_SYMBOLS): Removed
20776           parentheses at end of starting "defmac" line, as pointed out by
20777           makeinfo.
20778
20779 2001-08-18  Brad  <brad@comstyle.com>
20780
20781         * ltmain.in: Do not remove -lm from deplibs for OpenBSD.
20782
20783 2001-08-16  Gary V. Vaughan  <gary@gnu.org>
20784
20785         * libltdl/ltdl.c (argz_create_sep): Don't forget to include the
20786         terminating '\0' when counting argz_len.
20787         (argz_create_sep): When canonicalizing argz, don't forget to copy
20788         the terminating '\0', incase canonicalization has shortened argz.
20789         (argz_stringify): Don't covert the final '\0' to a separator.
20790
20791 2001-08-15  Gary V. Vaughan  <gary@gnu.org>
20792
20793         * libltdl/ltdl.c (lt_dlhandle_next): Now we can loop through all
20794         loaded module handles as originally intended.
20795
20796         * libltdl/ltdl.c (lt_dlseterror): Oops.  This never worked
20797         either, due to a pair of typos.  Now fixed.
20798
20799         * libltdl/ltdl.c (N_ELEMENTS):  Deleted.  How come nobody noticed
20800         there was no way this could have ever worked?
20801         (lt_dlcaller_set_data): Now that valid caller_ids must be
20802         non-zero, allocate an addition entry in the caller_data vector and
20803         use a zero valued key as the end marker.
20804         (lt_dlcaller_get_data): Iterate up to the end marker in one pass.
20805
20806 2001-08-14  Gary V. Vaughan  <gary@gnu.org>
20807
20808         * libltdl/ltdl.c (lt_dlcaller_register): Caller ids are allocated
20809         starting from value `1', so that clients can use a value of zero
20810         to indicate that libltdl has not yet initialised.
20811
20812         * ltmain.in (exec_cmd): Fix quoting in execute mode so that the
20813         double quotes added by libtool (to prevent lossage with embedded
20814         spaces in filenames etc.) are not interpreted as literals by the
20815         shell.
20816
20817 2001-08-13  Gary V. Vaughan  <gary@gnu.org>
20818
20819         * libltdl/ltdl.c (find_file_callback): Fix a multiple free()
20820         bug.
20821         (tryall_dlopen_module): Remove some unused variables.
20822
20823         * libltdl/ltdl.c (lt_dlinsertsearchdir): Calculate the address
20824         of the end of user_search_path correctly.
20825
20826         * libltdl/ltdl.c (rpl_argz_stringify): New fallback implementation.
20827         * ltdl.m4 (AC_LTDL_FUNC_ARGZ):  Test for argz_stringify in libc.
20828         * libltdl/ltdl.c (lt_argz_insertinorder): Renamed from
20829         lt_argz_insert to make room for...
20830         (lt_argz_insert): Wraps argz_insert with libltdl error handling.
20831         (lt_dlpath_insertdir): Insert new path elements into an
20832         argzized path.
20833         (lt_dlinsertsearchdir): New function to insert new search
20834         directories anywhere into user_search_path using the above.
20835         (lt_dladdsearchdir): Rewritten to use lt_dlpath_insertdir.
20836         * libltdl/ltdl.h (lt_dlinsertsearchdir): Prototype for export.
20837         * doc/libtool.texi (Libltdl interface): Document it.
20838         * NEWS: Updated,
20839
20840 2001-08-07  Gary V. Vaughan  <gary@gnu.org>
20841
20842         From Albert Chin <china@thewrittenword.com>:
20843         * ltmain.in [irix*]: $with_gcc is either "yes" or "" (empty string)
20844         with current autoconf, so we need to be robust to that when testing
20845         it,
20846
20847 2001-08-06  Gary V. Vaughan  <gary@gnu.org>
20848
20849         From Brad <brad@comstyle.com>:
20850         * libtool.m4 (deplibs_check_method) [aix*]: Removed redundant setting
20851         of this variable.
20852
20853 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
20854
20855         * libltdl/ltdl.c (load_deplibs): Insert missing 1st argument to
20856         LT_EMALLOC.
20857
20858 2001-08-05  Tim Van Holder  <tim.van.holder@pandora.be>
20859
20860         * ltdl.m4: Canonicalize descriptive text used with
20861         AC_DEFINE.
20862
20863         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR): Remove.
20864         (_LT_AC_PROG_ECHO_BACKSLASH): Use $ac_path_separator
20865         instead of $PATH_SEPARATOR.
20866         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Ditto.
20867         (_LT_AC_TAGCONFIG): Ditto.
20868         (AC_ENABLE_SHARED): Ditto.
20869         (AC_ENABLE_STATIC): Ditto.
20870         (AC_ENABLE_FAST_INSTALL): Ditto.
20871         (AC_PATH_TOOL_PREFIX): Ditto.
20872         (AC_PATH_MAGIC): Ditto.
20873         (AC_PROG_LD): Ditto.
20874         (AC_PROG_NM): Ditto.
20875         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): Ditto.
20876
20877 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
20878
20879         From Brad <brad@comstyle.com>:
20880         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]:  OpenBSD
20881         can build modules without a `lib' prefix and version number.
20882         Move the deplibs check code from here...
20883         (AC_DEPLIBS_CHECK_METHOD): ...to here.
20884
20885 2001-08-05  Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
20886
20887         * libtool.m4 [osf3*, osf4*, osf5*]: Tru64 *can* build modules
20888         without a `lib' prefix to the module name.
20889
20890 2001-08-05  Gary V. Vuaghan  <gary@gnu.org>
20891
20892         From Guido Draheim <Guido.Draheim@tek.com>:
20893         * ltmain.in: Display better and different error messages when
20894         library linkage fails in various ways.
20895
20896 2001-08-05  Albert Chin-A-Young <china@thewrittenword.com>
20897
20898         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Add newline after
20899         terminating '}' grouping character. Change '[0-9][0-9]'
20900         to '0' as we've already matched it.
20901
20902 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
20903
20904         From Brad <brad@comstyle.com>:
20905         * libtool.m4 (archive_cmds) [darwin, newsos, sysv4]: Replace
20906         1.3 era $linkopts references with $linker_flags.
20907
20908         * libltdl/ltdl.c:  Fixed several careless mistakes in the
20909         foreach_dirinpath support functions.
20910         (foreach_dirinpath): Walk path elements with the argz API.
20911
20912 2001-08-04  Gary V. Vaughan  <gary@gnu.org>
20913
20914         From Sedi Master Albert Chin <china@thewrittenword.com>:
20915         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Replace the awk invocation
20916         with an equivalent bit of sed wizardry.
20917
20918         From Edouard G. Parmelan <egp@free.fr>
20919         * libtool.m4 [darwin, openbsd]: Fix quoting problems with
20920         unquoted [] expressions.
20921
20922 2001-08-03  Gary V. Vaughan  <gary@gnu.org>
20923
20924         * bootstrap:  s/ltdldemo // -- This demo soesn't work properly,
20925         so I haven't committed it yet.
20926
20927 2001-08-01  Ossama Othman  <ossama@doc.ece.uci.edu>
20928
20929         * libtool.m4 (AC_LIBTOOL_SETUP): Require Autoconf-2.50 via the
20930         AC_PREREQ autoconf macro since the new libtool macros utilize
20931         macros from that version of Autoconf.
20932
20933 2001-08-01  Gary V. Vaughan  <gary@gnu.org>
20934
20935         * ltdl.m4: Bump serial number.
20936         General reformat and tify up in line with Autoconf-2.50 support.
20937         (AC_LTDL_FUNC_ARGZ): Test for system implementations of a
20938         handful of argz API calls, the error_t type, and the argz.h
20939         header.
20940         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump version number.
20941         * libltdl/ltdl.c (rpl_argz_append, rpl_argz_create_sep.
20942         rpl_argz_insert, rpl_rgz_next):  Fallback implementations of
20943         the similarly named functions for machines that don;t use glibc.
20944         (lt_dlrealloc):  New memory function pointer that can be set by
20945         the client.  Defaults to rpl_realloc, which in turn uses only
20946         lt_dlmalloc and lt_dlfree.
20947         (LT_EMALLOC, LT_EREALLOC): Set internal out-of-memory error
20948         inside the functions called by these new macros.  Simplified all
20949         callers by removing explicit client error reporting.
20950         (memmove):  Fallback implementation of overlap safe memory copy
20951         function.
20952         (tryall_dlopen):  Factorized common code into...
20953         (tryall_dlopen_module): ...this new helper function.
20954         (canonicalize_path):  Changed function signature to return success
20955         or failure.  Updated all callers.
20956         (foreachfile_callback):  Make use of argz API.
20957         (LT_DLSTRLEN): Moved from here...
20958         * libltdl/ltdl.h (LT_STRLEN): ...to here.  Updated all callers.
20959         (lt_dlrealloc):  Declare new memory management handle.
20960
20961 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
20962
20963         * libtool.m4 (mingw*) Revert the previous change as it was
20964         applied by mistake.
20965
20966 2001-07-31  Guido Draheim  <Guido.Draheim@tek.com>
20967
20968         * libtool.m4 (mingw*) sys_lib_search_path_spec:
20969         Sets the proper path separator for cross-compiling.
20970
20971 2001-07-30  Steve Ellcey  <sje@cup.hp.com>
20972
20973         * libtool.m4 (ia64-*-hpux*) Add support for ia64*-*-hpux* platform.
20974
20975 2001-07-30  Robert Boehne  <rboehne@ricardo-us.com>
20976
20977         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Fixed an
20978         incorrect resetting of lt_prog_compiler_static when using gcc
20979         under AIX Power.
20980
20981 2001-07-31  Gary V. Vaughan  <gary@gnu.org>
20982
20983         * bootstrap: Remove generated files (incase they are links) before
20984         rerunning the autotools to regenerate them.
20985
20986 2001-07-30  Gary V. Vaughan  <gary@gnu.org>
20987
20988         * libtool.m4 (AC_LIBTOOL_SETUP): Use Autoconf-2.50 era
20989         quadrigraphs and AC_HELP_STRING to bring AC_ARG_WITH/ENABLE
20990         macros up to date.
20991         (_LT_AC_LOCK): Ditto.
20992         (_LT_AC_TAGCONFIG): Ditto.
20993         (AC_PROG_LD): Ditto.
20994         (AC_ENABLE_SHARED): Ditto.  And eliminate the last remaining
20995         changequote invocations.
20996         (AC_ENABLE_STATIC): Ditto.  And Ditto.
20997         (AC_ENABLE_FAST_INSTALL):  Ditto.  And Ditto.
20998         * ltdl.m4 (AC_LTDL_ENABLE_INSTALL): Use Autoconf-2.50 era
20999         quadrigraphs and AC_HELP_STRING to bring AC_ARG_ENABLE
21000         macro up to date.
21001         * NEWS: Updated.
21002
21003         * libtool.m4 [UnixWare7, OpenUNIX8]: Initial support for
21004         UnixWare7 and OpenUNIX8.  Accept these identifiers from the
21005         latest config.guess/config.sub as pseudonyms for sysv5uw[78].
21006         * NEWS: Updated.
21007         Reported by Boyd Lynn Gerber <gerberb@zenez.com>
21008
21009 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
21010
21011         * tests/sh.test: Add a new test to enforce X as the fill
21012         character in `test "X...'.
21013         Beef up the `test' tests to also check `test -.' and `test ! -.'
21014         phrases for compliance.
21015         * ltmain.in: Fix quoting problems uncovered by the new tests.
21016
21017 2001-07-29  Andrew C. Feren  <aferen@CetaceanNetworks.com>
21018
21019         * tests/sh.test:  New test to disallow `test $foo', where
21020         `test "$foo"' is much safer.
21021         * ltmain.in: Fix quoting problems uncovered by the new test.
21022
21023 2001-07-29  Steve Ellcey  <sje@cup.hp.com>
21024
21025         * libtool.m4 (lt_cv_sys_global_symbol_to_cdecl):  Change it from
21026         "extern char" to "extern int" so that GCC 3.0 won't complain and
21027         refuse to compile programs containing "extern char main()".
21028
21029 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
21030
21031         From Guido Draheim <Guido.Draheim@tek.com>:
21032         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Support
21033         cross compilation to mingw by allowing `:' or ';' as a path
21034         separator.
21035         * NEWS: Updated.
21036
21037 2001-07-27  NIIBE Yutaka  <gniibe@m17n.org>
21038
21039         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all
21040         for sh*-*-linux* (SuperH) too.
21041
21042 2001-07-25  Ossama Othman  <ossama@debian.org>
21043
21044         From Thomas Poindessous <poinde_t@epita.fr>
21045         * ltmain.in (pic_mode):  Added missing quotes around shell
21046         variable in "if test" conditional.
21047
21048         From Peter Moulder <pmoulder@longford.csse.monash.edu.au>
21049         * ltmain.in (xform): Add support for pre-processed
21050         (e.g. `*.{i,ii}' sources).
21051
21052 2001-07-25  Gary V. Vaughan  <gary@gnu.org>
21053
21054         From Steve Ellcey <sje@cup.hp.com>:
21055         * libltdl/ltdl.c (foreach_dirinpath): Free unassigned pointer
21056         fix for `canonical'.
21057
21058 2001-07-23  Robert Boehne  <rboehne@ricardo-us.com>
21059
21060         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG, AC_LIBTOOL_PROG_LD_SHLIBS)
21061         [aix4*, aix5*]: Fixed a mispelled binder option under AIX.
21062         The option to throw errors for unresolved external references is
21063         -bernotok, not -bnoerok.
21064
21065 2001-07-23  Gary V. Vaughan  <gary@gnu.org>
21066
21067         * Makefile.am (EXTRA_DIST): Don't forget to distribute
21068         ChangeLog.1.
21069
21070         From Erik Lindahl <E.Lindahl@chem.rug.nl>
21071         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Used on aix to discover
21072         the compiler's default library search path so that the MPI
21073         compiler suite is not hosed by the previously hardcoded path.
21074         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [aix4*, aix5*]: Use it.
21075
21076 2001-07-23  Andreas Schwab  <schwab@suse.de>
21077
21078         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
21079         s390*-*-linux* and m68*-*-linux*.
21080
21081 2001-07-19  Robert Boehne  <rboehne@ricardo-us.com>
21082
21083         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix tag support
21084         problems with CXX variables being overwritten by the individual
21085         macros.
21086         (AC_LIBTOOL_PROG_CC_C_O): Ditto.
21087         (AC_LIBTOOL_PROG_COMPILER_PIC): Ditto.
21088         (AC_LIBTOOL_LANG_CXX_CONFIG): Moved call to
21089         AC_LIBTOOL_SYS_HARD_LINK_LOCKS after the call to
21090         AC_LIBTOOL_PROG_CC_C_O as it depends on the result.
21091         (AC_LIBTOOL_LANG_GCJ_CONFIG): Ditto.
21092         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
21093         (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Used the macro
21094         _LT_AC_TAGVAR to ensure the correct variable is being queried.
21095         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Changed the naming of shared
21096         objects under IRIX back to what it was in the MLB.
21097
21098 2001-07-23  Mark Kettenis  <kettenis@gnu.org>
21099
21100         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN) [gnu*]: Remove spurious
21101         "break" and bogus comment
21102         (_LT_AC_LANG_CXX_CONFIG): Add support for the Hurd.
21103         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Add support for the Hurd.
21104
21105 2001-07-16  Robert Boehne  <rboehne@ricardo-us.com>, Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
21106
21107         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): add cases and comments for
21108         more platforms, including AIX, Digital/Tru64 UNIX and IRIX.
21109
21110 2001-07-16  Gary V. Vaughan  <gary@gnu.org>
21111
21112         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix ia64 AIX
21113         run-time-linking when not using gcc.
21114         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
21115         Reported by Dan McNichol <mcnichol@austin.ibm.com>
21116
21117 2001-07-12  Gary V. Vaughan  <gary@gnu.org>
21118
21119         From dda@sleepycat.com (Don Anderson):
21120         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [qnx]: New
21121         supported architecture.
21122         (AC_DEPLIBS_CHECK_METHOD) [qnx]:  Ditto.
21123         * NEWS: Updated.
21124
21125         From Stefan Ondrejicka <ondrej@idata.sk>:
21126         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [cygwin*]: Make
21127         sure that /lib/w32api is searched for system libraries to
21128         match recent versions of cygwin.
21129         * NEWS: Updated.
21130
21131 2001-07-12  Dan McNichol  <mcnichol@austin.ibm.com>
21132
21133         From albert chin <china@thewrittenword.com>
21134         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix AIX
21135         run-time-linking when using gcc.
21136         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
21137
21138 2001-07-11  Gary V. Vaughan  <gary@gnu.org>
21139
21140         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
21141         solaris]: Doh!  the evalled variable shouldn't have been
21142         quoted.
21143
21144         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
21145         solaris]: output_verbose_link_cmd have unquoted `*' in case
21146         statements for these architectures.  Be sure to quote them
21147         with a sed expression before passing to eval.
21148         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21149
21150 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
21151
21152         * README-alpha:  s/configure.in/configure.ac.
21153         * configure.ac: Bumped version to 1.4c.
21154
21155         GNU libtool 1.4b was released.
21156
21157         * configure.ac: Bumped version to 1.4b.
21158         * NEWS: updated.
21159         * config.guess, config.sub, texinfo.tex:  Synchronised from
21160         ftp.gnu.org.
21161
21162 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
21163
21164         From Michael Elizabeth Chastain <chastain@cygnus.com>:
21165         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
21166         to a maximum of 512Kb, as it seems some HPUX 11.0 systems
21167         have trouble with 1MB.
21168
21169 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
21170
21171         * README-alpha:  Upgrade distribution instructions to include
21172         canonical location of texinfo.tex.
21173
21174 2001-07-09  Timothy Wall  <twall@oculustech.com>
21175
21176         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Don't disable shlibs
21177         on AIX5/IA64 with GNU ld.  Keep gnu defaults if using gnu tools
21178         on AIX5/IA64.
21179
21180 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
21181
21182         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
21183         to -1 on hurd, it has no command line argument limits.
21184         * ltmain.in Handle max_cmd_len=-1 for systems that don't have
21185         command line argument limits.
21186
21187 2001-07-05  Gary V. Vaughan  <gary@gnu.org>
21188
21189         * libtool.m4 (_LT_AC_LANG_C_CONFIG):  Revert to 1.3.x
21190         sematics, and always build static libs when the host machine
21191         cannot build shared libs.  Even if static libs were explicitly
21192         disabled.
21193
21194 2001-07-02  Gary V. Vaughan  <gary@gnu.org>
21195
21196         Cleanup of libltdl:
21197         * ltdl.c (lt_dladderror): Don't use `index' as a variable name,
21198         since it is a function on BSD based boxes.
21199         (lt_dlseterror): Ditto.
21200         (lt_dlexit): Remove unused errormsg declaration.
21201         (foreach_dirinpath):  Make sure filename is initialised.
21202         (find_handle):  Return NULL for a failed search.
21203         (foreachfile_callback): Don't reuse data2 symbol from prototype
21204         in func declaration to prevent symbol shadowing.
21205         * ltdl.h (lt_dlmutex_seterror): Don't use `error' as a parameter
21206         name, since it is a function on glibc boxes.
21207
21208         * libtoolize.in:  Display --version in the same format as
21209         autoconf and automake.
21210         * ltmain.in: Ditto.
21211
21212 2001-06-30  Gary V. Vaughan  <gary@gnu.org>
21213
21214         Merge test improvements from multi-language-branch:
21215         * tests/defs: Find and set the value of CC probed by libtool.m4
21216         * tests/link-2.test: Use a .lo wrapper script, and the value of
21217         CC set by defs instead of hardcoding gcc.
21218         * tests/link.test: Use the value of CC set by defs instead of
21219         hardcoding gcc.
21220         * tests/quote.test: Ditto.
21221         * tests/suffix.test: Ditto.
21222
21223         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Always set
21224         lt_prog_compiler_wl to `-Wl'.
21225         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
21226
21227         * ltdl.m4 (AC_LTDL_DLLIB) [sco3.2*]: When searching for a dlopen
21228         implementation, and adding `-ldl' has failed, try linking a call
21229         to dlopen, #including dlfcn.h, and without -ldl.  On sco3.2 the
21230         header files redefines the interface symbols to point at the
21231         implementation symbols in libc.
21232         Reported by "Golubev I. N." <gin@mo.msk.ru>
21233
21234 2001-06-29  Tim Van Holder  <tim.van.holder@pandora.be>
21235
21236         General cleanup of autoconf-2.50 upgrade:
21237         * configure.ac: Mark as needing autoconf-mode in
21238         emacs.  Pass arguments to AC_INIT.
21239         * cdemo/configure.ac: Ditto.
21240         * demo/configure.ac: Ditto.
21241         * depdemo/configure.ac: Ditto.
21242         * libltdl/configure.ac: Ditto.
21243         * mdemo/configure.ac: Ditto.
21244         * pdemo/configure.ac: Ditto.
21245         * tagdemo/configure.ac: Ditto.
21246         * ltdl.m4: Mark as needing autoconf-mode in
21247         emacs.
21248         * libtool.m4: Mark as needing autoconf-mode in
21249         emacs.  Don't add () to AS_MESSAGE_LOG_FD.
21250         * libltdl/configure.ac: Use config-h.in as
21251         template for config.h.
21252         * tagdemo/configure.ac: Drop the AC_DIAGNOSTIC. Move
21253         AC_LANG([C++]) after the OBJEXT/EXEEXT check.
21254
21255 2001-06-29  Gary V. Vaughan  <gary@gnu.org>
21256
21257         From Tim Van Holder <tim.van.holder@pandora.be>
21258         * tests/suffix.test: Typo in 2nd for loop.
21259
21260         From Tim Van Holder <tim.van.holder@pandora.be>
21261         * libltdl/Makefile.am (OBJECTS):  This was an implicit variable.
21262         instead state the list of object variables explicitly.
21263
21264         From Bruno Haible <haible@ilog.fr>
21265         * libtool.m4:  undefine the m4 builtin `symbols', so that the
21266         string `symbols' can be used in the rest of the code without
21267         causing errors with autoconf-2.13.
21268
21269         From "Golubev I. N." <gin@mo.msk.ru>
21270         * tests/Makefile.am (CPPLAGS): Typo. s/CPPLAGS/CPPFLAGS.
21271
21272         * mdemo/Makefile,am (foo1_la_LIBADD): Add libsub.la, since foo1
21273         does use symbols from libsub.la -- only platforms that allow
21274         undefined symbols in libraries were able to cope with this
21275         previously.
21276         Reported by Robert Collins <robert.collins@itdomain.com.au>
21277
21278         From "Golubev I. N." <gin@mo.msk.ru>
21279         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [sco3.2v5*]: Needs
21280         -wl,-Bexport to make self dlopen work.
21281
21282 2001-06-28  Gary V. Vaughan  <gary@gnu.org>
21283
21284         From  Alexander Bluhm  <Alexander.Bluhm@WiredMinds.de>
21285         * libltdl/ltdl.c (lt_dlopen): Fix bad memory initialisation
21286         assumptions.
21287
21288         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE) [HPUX]: Define
21289         lt_cv_sys_global_symbol_to_c_name_address to be a sed expression
21290         for mangling the output of the symbol pipe into a brace delimited
21291         C declaration of symbol name and address.
21292         * ltmain.in: Use it to generate the fooS.c symbol name
21293         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
21294
21295 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>, Gary V. Vaughan  <gary@gnu.org>
21296
21297         * bootstrap: Use cp instead of ln -s, for systems without
21298         symlinks.  Reorder the statements to avoid repetition outside
21299         the loop.
21300
21301 2001-06-28  Paolo Bonzini  <bonzini@gnu.org>, Gary V. Vaughan  <gary@gnu.org>
21302
21303         Libtool now builds with the help of Autoconf-2.50!
21304         * configure.ac (AC_PREREQ):  Require Autoconf-2.50 or newer.
21305         (AC_PROG_CPP, AC_EXEEXT, AC_OBJEXT):  Removed.  Autoconf-2.50
21306         doesn't have the AC_REQUIRE bug that required these to be called
21307         explicitly from here.  Autoconf-2.50 uses this file instead of...
21308         * configure.in: ...this, which is now deleted.
21309         * cdemo/configure.ac, cdemo/configure.in: Ditto.
21310         * demo/configure.ac, demo/configure.in: Ditto.
21311         * depdemo/configure.ac, depdemo/configure.in: Ditto.
21312         * libltdl/configure.ac, libltdl/configure.in: Ditto.
21313         * mdemo/configure.ac, mdemo/configure.in: Ditto.
21314         * pdemo/configure.ac, pdemo/configure.in: Ditto.
21315         * tagdemo/configure.ac, tagdemo/configure.in: Ditto.
21316         * libltdl/acconfig.h:  Deleted.
21317         * Makefile.am (libtool): libtool now depends on configure.ac.
21318         * libtool.m4 (_LT_AC_LOCK):  Use 2.50's AC_LANG_PUSH/AC_LANG_POP
21319         instead of 2.13's AC_LANG_SAVE/AC_LANG_RESTORE.
21320         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
21321         (AC_LIBTOOL_LANG_CXX_CONFIG): Ditto.
21322         * libtoolize.in:  Use $configure_ac, instead of hardcoding
21323         configure.in.
21324
21325 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>
21326
21327         * pdemo/Makefile.am:  Use '=' instead of '+=' to shut up
21328         automake.
21329
21330 2001-06-27  Gary V. Vaughan  <gary@gnu.org>
21331
21332         From brad@openbsd.org:
21333         * NEWS: Updated.
21334         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]: Improved
21335         support for various openbsd platforms.
21336         (AC_LIBTOOL_PROG_LD_SHLIBS): Ditto.
21337         * ltmain.in: Ditto,
21338
21339 2001-06-26  Gary V. Vaughan  <gary@gnu.org>
21340
21341         * NEWS: Updated.
21342         * libltdl/ltdl,c (LT_DLMUTEX_LOCK): Renamed from MUTEX_LOCK to
21343         avoid potential namespace clash.
21344         (LT_DLMUTEX_UNLOCK, LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR):
21345         Ditto.
21346         (lt_dlmutex_lock_func): Renamed from mutex_lock to avoid a
21347         namespace clash of NCR MP-RAS.
21348         (lt_dlmutex_unlock_func, lt_dlmutex_seterror_func,
21349         lt_dlmutex_geterror_func): Ditto.
21350         Reported by Edouard G. Parmelan <egp@free.fr>
21351
21352         * libltdl/ltdl.c (LT_DLSTRLEN): Call strlen only if the argument
21353         is non-NULL and non-zero in length.  Changed all calls to strlen
21354         appropriately.
21355
21356         * libltdl/ltdl.c: Prototype all static functions.
21357
21358         * ltdl.m4: Bump serial number to 3.
21359         (AC_LIB_LTDL): Require AC_HEADER_DIRENT for ltdl.c.
21360         * libltdl/ltdl.h (lt_dlforeachfile): Prototype for new function.
21361         * libltdl/ltdl.c: Include an appropriate header for the
21362         opendir/dirent api.
21363         (foreach_dirinpath): Visit each file in a list of directories.
21364         (find_file_callback): Factor out the core of find_file() to make
21365         use of foreach_dirinpath().
21366         (find_file): Use it!
21367         (find_handle_callback, find_handle): Ditto.
21368         (lt_dlforeachfile):  New function to find files in a searchpath.,,
21369         (foreachfile_callback): ...using this callback.
21370         * doc/libtool.texi (Libltdl interface): Document new
21371         lt_dlforeachfile api call.
21372
21373 2001-06-25  Gary V. Vaughan  <gary@gnu.org>
21374
21375         * THANKS:  Added Albert Chin-A-Young.
21376
21377         * libtool.m4 (IFS): When IFS is changed to split a string for
21378         examination in a loop, restore it inside the loop as well as
21379         outside incase IFS is needed by commands in that loop.
21380         Reported by Pavel Roskin <proski@gnu.org>
21381
21382 2001-06-25  Albert Chin-A-Young  <china@thewrittenword.com>
21383
21384         * libtool.m4: Prefer shl_load to dlopen on HP-UX because dlopen
21385         won't work properly without a patch.
21386
21387 2001-06-25  Daniel Harvey <daniel@amristar.com.au>
21388
21389         * libtool.m4 (ltdll_cmds): [$]0 doesn't appear to translate through
21390         the script correctly, change to $''0
21391
21392 2001-06-25  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
21393
21394         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
21395         mips-*-linux* and mipsel-*-linux*.
21396
21397 2001-06-24  Andreas Schwab  <schwab@suse.de>
21398
21399         * libtool.m4 (AC_LIBTOOL_SETUP): Remove failed try to
21400         transform linux to linux-gnu in $host.
21401         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match $host_os against
21402         linux*, not linux-gnu*.
21403         (AC_DEPLIBS_CHECK_METHOD): Likewise.
21404
21405 2001-06-24  Gary V. Vaughan  <gary@gnu.org>
21406
21407         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR):  Set
21408         PATH_SEPARATOR appropriately if it is not set already,
21409         (_LT_AC_TAGCONFIG): Use it.
21410         (AC_ENABLE_SHARED): Ditto.
21411         (AC_ENABLE_STATIC): Ditto.
21412         (AC_ENABLE_FAST_INSTALL): Ditto.
21413         (AC_PATH_TOOL_PREFIX): Ditto.
21414         (AC_PATH_MAGIC): Ditto.
21415         (AC_PATH_PROG_NM): Ditto.
21416
21417         From Tim Van Holder  <tim.van.holder@pandora.be>:
21418         * libtool.m4: Use the canonical absolute path test
21419         ([\\/]* | ?:[\\/]) and $PATH_SEPARATOR wherever
21420         appropriate.
21421         (AC_LIBTOOL_PROG_CC_PIC): Properly recognize DJGPP as a
21422         platform that doesn't support shared libraries.
21423         (AC_LIBTOOL_SYS_MAX_CMD_LEN): Avoid this test on DJGPP; use a
21424         fixed value (12K) instead.
21425         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't forget $ac_exeext
21426         when testing for link success.
21427
21428         * configure.in (AM_INIT_AUTOMAKE): Bumped version to 1.4a.
21429
21430         Complete the new configure time tags creation facility based on
21431         the ltcf-*.sh and ltconfig.in files from multi-language-branch:
21432         * libtool.m4:  More refactoring and reformatting.
21433         (_LT_AC_LANG_GCJ_CONFIG): Merged ltcf-gcj.sh from
21434         multi-language-branch.
21435         (_LT_AC_LANG_CXX_CONFIG): Merged ltcf-cxx.sh from
21436         multi-language-branch.
21437         * configure.in (AC_PROG_CXX, LT_AC_PROG_GCJ): Compiler checks must
21438         be done before AC_PROG_LIBTOOL which appends tags based on their
21439         results.
21440
21441 2001-06-12  Robert Boehne  <rboehne@ricardo-us.com>
21442
21443         * docs/libtool.texi: Updated the libltdl interface documentation
21444         to bring it up to date.
21445
21446 2001-06-06  Gary V. Vaughan  <gary@gnu.org>
21447
21448         * demo/Makefile.am (objdir): Use `libtool --config' for
21449         extracting configuration values, since a given value may
21450         be present in each tag.
21451         (hc-libpath): Ditto.
21452         (hc-minusL): Ditto.
21453         * libtool.m4 (_LT_AC_TAGCONFIG): Add tagged configurations from
21454         the --with-tags option.
21455         (_LT_AC_LTCONFIG_HACK): Factored out into separate configuration
21456         macros -- The interdependencies and running order are still
21457         immutable, and need a lot of work to fix.
21458         (AC_LIBTOOL_CONFIG): Taken from the previous incarnation of
21459         _LT_AC_LTCONFIG_HACK -- this macro is used both to create the
21460         primary (C language) libtool configuration from
21461         _LT_AC_LTCONFIG_HACK and also to append tagged configurations from
21462         _LT_AC_TAGCONFIG.
21463         * NEWS:  Merged from multi-language-branch.
21464
21465 2001-06-06  Robert Boehne  <rboehne@ricardo-us.com>
21466
21467         * bootstrap: Added tagdemo and pdemo tests from
21468         multi-language-branch.
21469         * configure.in: Added pdemo and tagdemo to CONF_SUBDIRS
21470         and merged references to CXX and GCJ from multi-language-branch.
21471         * pdemo: Added test directory from multi-language-branch.
21472         * tagdemo: Added test directory from multi-language-branch.
21473         * tests/Makefile.am: Merged additional tests from
21474         multi-language-branch.
21475         * tests/pdemo-*.test: ditto.
21476         * tests/tagdemo-*.test: ditto.
21477
21478 2001-05-30  Gary V. Vaughan  <gary@gnu.org>
21479
21480         * libtool.m4: Merged ltconfig.in from multi-language-branch.
21481
21482 2001-05-28  Gary V. Vaughan  <gary@gnu.org>
21483
21484         * libtool.m4: Reformatting for consistency, and some refactoring
21485         in preparation for ltcf-*.sh merge.
21486
21487 2001-05-27  Gary V. Vaughan  <gary@gnu.org>
21488
21489         * ltmain.in: Merged from multi-language-branch.
21490         * libtool.m4: Merged from multi-language-branch.
21491         * ChangeLog: Started afresh.  Old ChangeLog history moved to...
21492         * ChangeLog.1: ...here.
21493
21494 2000-06-04  Mark Mitchell  <mark@codesourcery.com>
21495
21496         * ltcf-c.sh (archive_cmds, archive_expsym_cmds) [solaris,
21497         with_gcc]: Use `gcc -shared' to build a shared library.
21498
21499 2001-06-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
21500
21501         * ltcf-c.sh (archive_cmd) [hpux, with_gcc]: Use gcc to link shared
21502         archives.
21503
21504 2001-05-28  Simon Patarin <simon.patarin@inria.fr>
21505
21506         * ltcf-cxx.sh (osf3/osf4/osf5): Support creation of C++  shared
21507         libraries when using g++ with native linker.
21508
21509 2001-05-28  Albert Chin  <china@thewrittenword.com>
21510
21511         * ltconfig.in (version_type, soname_spec) [aix4* | aix5*]: Use
21512         linux-style versioning, and remove trailing .o from soname_spec.
21513
21514 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
21515
21516         * ltcf-cxx.sh (allow_undefined_flag, no_undefined_flag)
21517         [aix4*|aix5*]: Prepend blank.
21518
21519 2001-05-20  Alexandre Oliva  <aoliva@redhat.com>
21520
21521         * configure.in: Reverted to 1.4, to avoid confusion with MLB.
21522         Mainline is the release snapshot, except for the ChangeLog version
21523         number, until the multi-language branch is merged into it.
21524
21525         * ltconfig.in: Fix sh.test regression introduced in previous patch.
21526
21527         * ltconfig.in (lt_cv_sys_max_cmd_len): Improve test to work better
21528         in case of non-built-in echo.  Set bounds correctly.
21529
21530         * ltcf-cxx.sh (allow_undefined_flag) [aix4* | aix5*]: Fix quote
21531         error.
21532
21533         * ltmain.in (exec_cmd): New variable.  Don't exec programs within
21534         the big `case'; set the variable instead, and exec the cmd
21535         afterwards, so that the shell gets a chance to clean up here-doc
21536         files.
21537         * NEWS: Update.
21538
21539 2001-05-16  Alan Modra  <amodra@one.net.au>
21540
21541         * libtool.m4 (lt_cv_deplibs_check_method): pass_all for hppa*-linux.
21542
21543 2001-05-03  Andreas Jaeger  <aj@suse.de>, Andreas Schwab  <schwab@suse.de>
21544
21545         * ltmain.in (relink_command): Arrange for wrapper script to save
21546         output to a variable and display it only if relinking fails.
21547
21548 2001-04-25  Gary V. Vaughan  <gary@gnu.org>
21549
21550         * configure.in: bumped version to 1.4a.
21551
21552         GNU libtool 1.4 was released.
21553
21554         * configure.in: Bumped version to 1.4.
21555         * config.sub, config.guess:  Synchronised from ftp.gnu.org.
21556         * NEWS: updated.
21557
21558 2001-04-24  Peter Eisentraut  <peter_e@gmx.net>
21559
21560         * libtool.m4: Support $host_os as /sysv5uw7*/ from newer
21561         config.guess in addition to older /unixware*/.  Use compiler
21562         driver, not linker, for linking shared libraries.
21563
21564 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
21565
21566         * libtool.m4, ltmain.in, libltdl/configure.in,
21567         tests/quote.test:  Remove stale references to ltconfig.
21568
21569         * ltdl.m4 (AC_C_INLINE): No longer required.
21570         * libltdl/ltdl.c (strdup, strcmp, strchr, strrchr, memcpy, trim,
21571         free_vars):  Revoke inline keyword from declarations.  `static
21572         inline' is not very portable, and in addition Unixware 7.1.1's
21573         compiler says you can't access static variables from inline
21574         functions.
21575         Reported by Peter Eisentraut  <peter_e@gmx.net>
21576
21577 2001-04-24 Albert Chin-A-Young <china@thewrittenword.com>
21578
21579         * libtool.m4: Handle case where /bin/nm -p outputs multiple
21580         symbol types (like under HP-UX 11.00).
21581
21582 2001-04-24  Thomas Tanner  <tanner@ffii.org>
21583
21584         * TODO: describe problems with libltdl
21585         * ltmain.in (ILD): tidy up, add comments, remove dead code,
21586           merge duplicate code
21587         * ltmain.in (ILD): don't touch newdependency_libs after scan or
21588           dlopen pass
21589         * ltmain.in (ILD): don't dlpreopen dependency_libs of a dlopened
21590           module (remove absolutely wrong quick hack)
21591         * ltmain.in (ILD): remove wrong comments about duplicate removal
21592         * ltmain.in (ILD): build a static-only module if it has
21593           static libraries in its dependencies (so that libltdl can
21594           safely load dependency_libs)
21595         * ltmain.in (argument parsing): prefix comparsions of -l args with X,
21596           replace -lc with `-framework System' _after_ the ILD passes
21597         * ltmain.in (argument parsing): support dl[pre]open
21598           for both .o and .lo files
21599         * ltmain.in (deplibs_check): use portable test syntax
21600         * ltmain.in (help): document -prefer-[non-]pic flags
21601         * ltmain.in: improve readablity by adding some comments,
21602           rename uninst_* to notinst_* (more adequate name)
21603
21604 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
21605
21606         * doc/PLATFORMS:  More updates from subscribers to
21607         libtool@gnu.org.
21608
21609         From Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21610         * tests/Makefile.am (TESTS_ENVIRONMENT): Make sure the *.test
21611         scripts get the same make that was used in the top level
21612         directory.
21613
21614 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
21615
21616         * doc/PLATFORMS:  Updated with more platforms successfully
21617         tested by members of libtool@gnu.org.
21618
21619 2001-04-23  Peter Eisentraut  <peter_e@gmx.net>
21620
21621         * doc/PLATFORMS:  With this patch, freebsd4.3 passes the test
21622         suite.
21623         * libltdl/ltdl.c (lt_dlexit): Quit loop if only resident modules
21624         are left.
21625
21626 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
21627
21628         * doc/PLATFORMS:  With this patch, my Solaris boxes now pass the
21629         test suite,  Yay!
21630         From Albert Chin-A-Young <china@thewrittenword.com>
21631         * ltmain.in:  `test -L' is not portable, and infact breaks uninstall
21632         mode on Solaris.  Fallback to `test -h' and finally `test -f',
21633         but be careful not to let the failure status cause libtool to
21634         stop.
21635
21636         From Simon Spero <ses@ibiblio.org>
21637         * ltdl.m4 (AC_LTDL_DLSYM_USCORE):  Add $LIBADD_DL while
21638         checking for dlsym _.
21639
21640         From Simon Spero <ses@ibiblio.org>
21641         * libtool.m4 (lt_cv_deplibs_check_method) [darwin]: Set it!
21642
21643         * TODO: Make a note to undo this later.
21644         From Christoph Pfisterer <cp@chrisp.de>
21645         * libtool.m4: Use $() execution substitution quotation to work
21646         around zsh builtin echo \ escape removal.
21647
21648 2001-04-22  Peter Eisentraut  <peter_e@gmx.net>
21649
21650         * bootstrap: Allow overriding the location aclocal, automake,
21651         autoconf, autoheader from the environment.
21652
21653         * demo/Makefile.am: Automake 1.4e does not allow `+=' assignments
21654         if the variable was not set with `=' earlier.  `+=' was not useful
21655         here anyway.
21656
21657 2001-04-22  Gary V. Vaughan  <gary@gnu.org>
21658
21659         * ltdl.m4 (AC_CHECK_HEADERS): UW7 has sys/dl.h, so we must
21660         check for that here.
21661         * libltdl/ltdl.c (HAVE_SYS_DL_H):  Include it if necessary for
21662         the dlopen loader.
21663         Reported by Matthew Schalit <mschalit@pacbell.net>
21664
21665         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use pass_all for
21666         various releases of UnixWare and OpenServer that support it.
21667         Reported by Matthew Schalit <mschalit@pacbell.net>
21668
21669         * doc/PLATFORMS:  Updated with various platforms successfully
21670         tested by members of libtool@gnu.org.
21671
21672 2001-04-21  Gary V. Vaughan  <gary@gnu.org>
21673
21674         * TODO:  propose pkg-config merge.
21675
21676 2001-04-21  Nick Hudson  <skrll@netbsd.org>
21677
21678         * ltmain.in: Correct an error in yesterday's patch.
21679
21680 2001-04-20  Nick Hudson  <skrll@netbsd.org>
21681
21682         * libtool.m4: Improve NetBSD support.
21683         * ltmain.in: ditto.
21684
21685 2001-04-19  Dan McNichol <mcnichol@austin.ibm.com>
21686
21687         * libtool.m4: Build standard shared libraries on AIX POWER
21688         more like AIX does, with a shared object archived into lib<xxx>.a.
21689         On AIX -bexpall flag does strange things... Don't use it.
21690         Fix quotes around -berok flag.  Add support for AIX 5.
21691         Add support for run time linking on AIX POWER. (should work
21692         on AIX 4.2 and up).  Turn this feature on by adding -brtl flag
21693         to LD_FLAGS.  Add support for AIX on IA64. Note: AIX on IA64
21694         uses a SYSV type linker.  Add a comment telling what to do if the
21695         TOC starts getting too large on AIX.
21696         * NEWS: mention aix5 support.
21697
21698 2001-04-18  Alexandre Oliva  <aoliva@redhat.com>
21699
21700         * TODO: Add -L- flag.
21701
21702 2001-04-11  Alexandre Oliva  <aoliva@redhat.com>
21703
21704         * libtool.m4 (no_undefined_flag) [Solaris ld]: Change to -zdefs.
21705
21706 2001-04-11  Ossama Othman  <ossama@uci.edu>
21707
21708         * AUTHORS: Added myself to the list of maintainers.
21709
21710 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
21711
21712         * libtool.m4 (hardcode_libdir_flag_spec, osf4/osf5): Use ${wl}
21713         to pass -rpath when compiling with gcc.
21714         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21715
21716         * libltdl/ltdl.c (sys_shl_open): Cache a handle for the `self'
21717         module, since HPUX adds module symbols into the `self' pool if
21718         it is opened later.  Return the cached pointer if the caller
21719         subsequently tries to open `self'.
21720         (sys_shl_sym): Diagnose NULL modules.
21721
21722         From Peter Eisentraut  <peter_e@gmx.net>
21723         * ltmain.in (clean,uninstall): test -e is not portable.  Well,
21724         neither is -L, but I'm hoping that redirecting error messages
21725         to /dev/null and relying on non-zero exit status will work okay
21726         on the few hosts that don't support -L.
21727
21728 2001-04-08  Nick Hudson  <skrll@netbsd.org>
21729
21730         * ltmain.in: Improve check for valid -version-info parameter.
21731
21732 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
21733
21734         From Nick Hudson  <skrll@netbsd.org>
21735         * doc/Makefile.am (libtool_TEXINFOS): Add fdl.texi so that it
21736         is included in the distribution.
21737
21738 2001-04-07  Peter Eisentraut  <peter_e@gmx.net>
21739
21740         * ltmain.in (clean,uninstall): Do not error if the file doesn't
21741         exist and 'rm -f' was used.  Exit with status 1 on error.
21742
21743 2001-04-06  Nick Hudson  <skrll@netbsd.org>
21744
21745         * ltmain.in: Implement a new deplibs_check_method called
21746         match_pattern that does pattern matching on filenames...
21747         * libtool.m4: ...use it with NetBSD
21748
21749 2001-04-05  Gary V. Vaughan  <gary@gnu.org>
21750
21751         * doc/libtool.texi (Multiple dependencies): A note about the
21752         problems I've reintroduced by reverting the my patch of 2001-03-31.
21753
21754         From Edward Lee <tailbert@yahoo.com>
21755         * libtool.m4: Typos.
21756
21757         * tests/Makefile.am (TESTS): Delete references to depdemo-dups.test.
21758         * tests/depdemo-dups.test:  Removed, as part of the patch
21759         reversion below.
21760         * ltmain.in: Revert my change from 2001-03-31.  Although it
21761         was technically correct, it opens a whole can of worms we don't
21762         want to deal with right now.
21763
21764         From Ahmed Masud <masud@googgun.com>
21765         * libltdl/ltdl.c (sys_shl_open):  Return a NULL module handle
21766         for self opening.
21767         (sys_shl_close):  Be careful not to close a NULL module handle.
21768         (sys_shl_sym):  Allow shl_findsym() to open NULL modules, but
21769         discard the modified module address it returns.
21770
21771         * libltdl/ltdl.c (lt_dlopen):  When reading the .la file,
21772         reallocate the line buffer size if the line overflows the
21773         original buffer.
21774         Reported by Nick Hudson <skrll@netbsd.org>
21775
21776         * NEWS (1.3d) Removed bogus ltconfig reference.
21777
21778 2001-04-03  Gary V. Vaughan  <gary@gnu.org>
21779
21780         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Remove the spurious
21781         `dnl' from the help text of --with-pic.
21782         Reported by stefan <stefan@lkcc.org>
21783
21784 2001-04-02  Gary V. Vaughan  <gary@gnu.org>
21785
21786         * configure.in: bumped version to 1.3e.
21787
21788         GNU libtool 1.3d was released.
21789
21790         * NEWS: inserted todays date.
21791
21792 2001-04-01  Christoph Pfisterer  <cp@chrisp.de>
21793
21794         * libtool.m4: Fixed support for Darwin and Rhapsody. Now correctly
21795         hardcodes the library path and adds versioning. Other small
21796         fixes.
21797         * ltmain.in: Fixed special cases for libc and libm on Rhapsody and
21798         Darwin. One of them was misplaced. Added version_type case for
21799         Rhapsody and Darwin, named "darwin".
21800
21801 2001-03-31  Gary V. Vaughan  <gary@gnu.org>
21802
21803         * ltmain.in: Remove the code for stripping duplicate deplibs
21804         from libtool link lines -- duplicates are somtimes necessary
21805         to satisfy inter-library dependencies, and never cause link to
21806         fail even if they are spurious.
21807         * tests/depdemo-dups.test: New file.  Make sure this bug doesn't
21808         creep back in again!
21809         * tests/Makefile.am (TESTS): Use the new test above.
21810
21811 2001-03-29  Edward M. Lee  <tailbert@yahoo.com>
21812
21813         * libtoolize.in: Check configure.ac and prefer configure.ac to
21814         configure.in.
21815
21816         * libtoolize.in: change recommendation from AM_PROG_LIBTOOL to
21817         AC_PROG_LIBTOOL.
21818
21819         * libtool.m4: Generate dll/import libraries for cygwin according
21820         to the following: libFOO.a (static lib), libFOO.dll.a (import
21821         lib), cygFOO-version.dll (dll).  Update postinstall_cmds and
21822         postuninstall_cmds to reflect this.
21823         * ltmain.in: Generate installed .la files with dlnames set to
21824         ../bin/cygFOO-version.dll for normal dlls. dlls for modules
21825         remain with the .la file.
21826
21827         * libltdl/ltdl.c:  Use windows paths while calling LoadLibrary.
21828
21829 2001-03-16  Albert Chin  <china@thewrittenword.com>
21830
21831         * libtool.m4 (save_CPPFLAGS): Fix typo.
21832
21833 2001-03-13  Alexandre Oliva  <aoliva@redhat.com>
21834
21835         * libtool.m4 (lt_cv_compiler_c_o): Cache it.
21836         (lt_cv_compiler_o_lo): Likewise.
21837
21838 2001-03-09  Peter Eisentraut  <peter_e@gmx.net>
21839
21840         * ltmain.in (clean): Automatically remove $objdir (usually '.libs').
21841
21842 2001-03-08  Gary V. Vaughan  <gary@gnu.org>
21843
21844         * ltconfig.in (library_names_spec): Undo latin-1 spaces I pasted
21845         in yesterday by mistake.
21846
21847 2001-03-07  Gary V. Vaughan  <gary@gnu.org>
21848
21849         From Tor Lillqvist <tml@iki.fi>
21850         * libtool.m4 (export_symbols): On Windows, if the export_symbols
21851         file (which has been passed to libtool with the -export-symbols
21852         command line switch) already is a .def file, use it as is.
21853
21854         * libtool.m4 (library_names_spec): Using m4 quotes correctly this
21855         time around!
21856
21857         From Tor Lillqvist <tml@iki.fi>
21858         * libtool.m4 (library_names_spec): Use an appropriate filename
21859         prefix for dlls -- lib for mingw; cyg for cygwin; pw for pw32.
21860
21861 2001-03-06  Alexandre Oliva  <aoliva@redhat.com>
21862
21863         * libtool.m4 (can_build_shared) [AIX 4.[01], GCC]: GCC up to
21864         2.96 can't build shared libraries reliably.  Disable them.
21865
21866         * ltmain.in: When dropping dependencies of a -no-undefined
21867         library, give up on building a shared library.
21868
21869 2001-03-05  Akim Demaille  <akim@epita.fr>
21870
21871         * ltmain.sh: Don't quote the argument of case/esac and
21872         assignments.
21873         * libtool.m4: Likewise.
21874
21875 2001-03-03  Markus F.X.J. Oberhumer <markus@oberhumer.com>,
21876             Alexandre Oliva <oliva@lsd.ic.unicamp.br>
21877
21878         * libtool.m4: Added explicit return type to all C functions.
21879
21880 2001-02-22  Gary Vaughan  <gary@gnu.org>
21881
21882         * NEWS: Updated.
21883         * doc/libtool.texi (Thread Safety in libltdl): New node describing
21884         the  application the new MT API.
21885         * libltdl/ltdl.h: Prototypes.
21886         * libltdl/ltdl.c: Use these functions throughout the rest of
21887         the file to provide thread locking.
21888         (lt_dlmutex_register): New function to set callbacks for
21889         multi-threaded calls into libltdl.
21890         (lt_dl_mutex_lock): Type of a locking callback function.
21891         (lt_dl_mutex_lock): Type of an unlocking callback function.
21892         (lt_dl_mutex_seterror): Type of a callback function to save the
21893         last libltdl error message in thread local storage.
21894         (lt_dl_mutex_geterror): Type of a callback function to retrieve
21895         the last saved error message from thread local storage.
21896
21897 2001-02-20  Gary Vaughan  <gary@gnu.org>
21898
21899         * libltdl/ltdl.c (lt_dlcaller_register): dont set an unsigned
21900         type to a negative number.
21901         Reported by Guenter Millahn <Guenter.Millahn@Informatik.TU-Cottbus.DE>
21902
21903 2001-02-05  Gary V. Vaughan  <gary@gnu.org>
21904
21905         From Nick Hudson <skrll@netbsd.org>
21906         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): netbsd* is able to
21907         automatically load module deplibs without assistance from
21908         libltdl.
21909
21910 2001-02-02  Gary V. Vaughan  <gary@gnu.org>
21911
21912         * libltdl/ltdl.c (load_deplibs): Make sure the depcount is reset,
21913         even when deplibs are not used because of the patch below.
21914
21915         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): If we know that the host
21916         architecture automatically loads deplibs, then...
21917         * libltdl/ltdl.c (load_deplibs): ...don't manually load each one.
21918
21919 2001-01-31  Gary V. Vaughan  <gary@gnu.org>
21920
21921         * TODO:  Updated.
21922
21923         * libltdl/ltdl.c (load_deplibs): If loading a deplib fails,
21924         don't sweat -- it may be a lib that is already statically linked
21925         into the loading application.
21926
21927         * libltdl/ltdl.c: Clean up the shadowing of the global handles
21928         variable.
21929         (LT_DLRESIDENT_FLAGS): Add extra parens to satisfy -Wall.
21930         (load_deplibs):  Cast isspace() argument to an int to satisfy
21931         -Wall.
21932
21933 2001-01-30  Robert Boehne  <rboehne@ricardo-us.com>
21934
21935         * AUTHORS: added myself to the list of maintainers.
21936
21937 2001-01-28  Alexandre Oliva  <aoliva@redhat.com>
21938
21939         * libltdl/Makefile.am (CLEANFILES): Clean conditionally-built
21940         libraries.
21941
21942 2001-01-27  Alexandre Oliva  <aoliva@redhat.com>
21943
21944         * libtool.m4 (ld_shlibs) [aix4*]: Disable on unknown CPU types.
21945
21946 2001-01-07  Gary V. Vaughan  <gary@gnu.org>
21947
21948         * NEWS: Updated.
21949         * doc/libtool.texi (User defined module data): Updated.
21950         * libltdl/ltdl.c (lt_dlhandle_next): New function.
21951         * libltdl/ltdl.h (lt_dlhandle_next): Prototypes.
21952
21953 2001-01-05  Gary V. Vaughan  <gary@gnu.org>
21954
21955         * NEWS: Updated.
21956         * doc/libtool.texi (User defined module data):  Document it all.
21957         * ltdl.m4:  Check for memcpy, or else bcopy.
21958         * ltdl.c (lt_caller_data): New type.
21959         (lt_dl_handle_struct): Add an lt_caller_data field.
21960         (lt_dlcaller_register, lt_dlcaller_set_data,
21961         lt_dlcaller_get_data): New functions.
21962         (rpl_memcpy): A minimal fallback implementation.
21963         (rpl_realloc): A realloc implemented with lt_dlmalloc and
21964         lt_dlfree.
21965         (LT_DLMALLOC, LT_DLFREE, LT_DLREALLOC, LT_DLMEM_REASSIGN):
21966         New memory handling convenience macros.  Use them
21967         appropriately throughout the rest of this file.
21968         * ltdl.h (lt_dlcaller_register, lt_dlcaller_set_data,
21969         lt_dlcaller_get_data): Prototyped.
21970
21971 2001-01-04  Gary V. Vaughan  <gary@gnu.org>
21972
21973         * libltdl/ltdl.h:  formatting change.
21974
21975 2000-12-23  Gary V. Vaughan  <gary@gnu.org>
21976
21977         From vvv@vsu.ru:
21978         * doc/fdl.texi (GNU Free Documentation License): contained @bye
21979         command which prevented part of document to be generated (indices,
21980         etc).
21981         * doc/libtool.texi (Dlpreopening): the @deftypevar did not contain
21982         a space after a type.
21983
21984 2000-12-22  Akim Demaille  <akim@epita.fr>
21985
21986         * libtool.m4: s/[ \t]*$//
21987
21988 2000-12-22  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
21989
21990         * libtool.m4 (OSF/1):  Revert my patch of 2000-12-16.
21991
21992 2000-12-20  Gary V. Vaughan  <gary@gnu.org>
21993
21994         * libltdl/ltdl.c (lt_dlexit): Was checking for residency of the
21995         wrong module.
21996         Reported by Robert Boehne  <rboehne@ricardo-us.com>
21997
21998         * ltmain.in (dlprefiles): Now that `2000-12-15 Utz-Uwe Haus' patch
21999         below can detect preopened library deplibs correctly in libltdl,
22000         we need to ensure that libtool library deplibs are also preloaded
22001         into the binary for that phase to work.
22002
22003 2000-12-16  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
22004
22005         * libtool.m4 (OSF/1): Change the way to pass linker flags through
22006         compiler on a Tru64 machine.
22007
22008 2000-12-16  Gary V. Vaughan  <gary@gnu.org>
22009
22010         * libtool.m4 (sys_lib_search_path_spec): Use test instead of
22011         `['.
22012         (archive_cmds): And another one.
22013
22014         * libtool.m4 (darwin*): Fixed a pair of stupid typos I made in the
22015         last patch.
22016
22017         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  moved rogue settings from
22018         sequent, ncr and newos6 back into here from other macros.
22019
22020 2000-12-16   Wilfredo Sanchez  <wsanchez@apple.com>
22021
22022         * libtool.m4: (dyld/darwin*) Much improved port.
22023         * ltmain.in: (dyld/darwin*) Much improved port.
22024
22025 2000-12-16  Sascha Schumann <sascha@schumann.cx>
22026
22027         * libtool.m4: Accept darwin as an alias for rhapsody.
22028         * ltmain.in: ditto.
22029
22030         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use the HPUX 10.20
22031         methods to check for library dependencies on HPUX 11.
22032
22033 2000-12-16  Nick Hudson  <skrll@netbsd.org>
22034
22035         * libtool.m4 (netbsd*, deplibs_check_method): Enable ILD support
22036         for NetBSD a.out.
22037
22038 2000-12-15  Akim Demaille  <akim@epita.fr>
22039
22040         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Rename
22041         `ac_cv_sys_global_symbol_pipe' as `lt_cv_sys_global_symbol_pipe'.
22042         Similarly with `lt_cv_global_symbol_to_cdecl
22043         (_LT_AC_LTCONFIG_HACK): Similarly with `ac_cv_prog_cc_pic',
22044         `ac_cv_prog_cc_shlib', `ac_cv_prog_cc_wl', `ac_cv_prog_cc_static',
22045         `ac_cv_prog_cc_no_builtin', `ac_cv_prog_cc_can_build_shared',
22046         `ac_cv_prog_cc_static_works', `ac_cv_archive_cmds_need_lc'.
22047         (AC_PATH_TOOL_PREFIX): Similarly with `ac_cv_path_MAGIC_CMD'
22048         (AC_PROG_LD) <ac_cv_path_LD>: Likewise.
22049         (AC_PROG_LD_GNU) <ac_cv_prog_gnu_ld>: Likewise.
22050         (AC_PROG_NM) <ac_cv_path_NM>: Likewise.
22051
22052 2000-12-15  Utz-Uwe Haus  <haus@mail.math.uni-magdeburg.de>
22053
22054         * libltdl/ltdl.c (lt_dlopen): Changed "dl_dependency_libs" keyword
22055         to "dependency_libs".
22056
22057 2000-12-14  Tod Milam  <tmilam@traclabs.com>
22058
22059         * libltdl/ltdl.c (lt_dlexit): Reset the loaders value to zero when
22060         the last module has been unloaded.
22061
22062 2000-12-14  Michael Schmitz  <mschmitz@iname.com>
22063
22064         * libtool.m4: Port to *-sni-sysv4 (Reliant Unix)
22065         * README: added Reliant Unix to hte list of supported platforms
22066         * doc/PLATFORMS: added note on tests on Reliant Unix
22067
22068 2000-12-14  Masahiro Nobori  <nobori@ss.titech.ac.jp>
22069
22070         * README:  Updated.
22071         * NEWS: Updated.
22072         * libtool.m4:  New port to NEWS-OS Release 6.
22073
22074 2000-12-14  Nick Hudson  <skrll@netbsd.org>
22075
22076         * libtool.m4 (hardcode_libdir_flag_spec):  Remove linker
22077         specification for netbsd.
22078
22079 2000-12-14  Akim Demaille  <akim@epita.fr>
22080
22081         * libtool.m4:  Don't depend on Autoconf internals:
22082         s/ac_cv_prog_gcc/GCC/.
22083
22084 2000-12-14  Gary V. Vaughan  <gary@gnu.org>
22085
22086         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't empty
22087         out ac_cv_global_symbol_to_cdecl inside the loop, incase we
22088         need to go around again and try with underscore prefix.
22089         (_LT_AC_TRY_DLOPEN_SELF): On some hosts (cygwin for instance)
22090         self dlclosing unloads the main program and causes a SIGSEGV.  So
22091         don't do it for now.
22092
22093 2000-12-05  Gary V. Vaughan  <gary@gnu.org>
22094
22095         Oh My! Cygwin support has bitrotted while I was looking the other
22096         way.  This should fix it some:
22097         * libtool.m4 (extract_expsyms_cmds): There is a quoting problem
22098         with autoconf-2.13 that prevents [$]0 from expanding.  Use shell
22099         quotes instead to delay eval of $0.
22100         (impgen.c) The '# ' sequence stripped by sed works again.
22101
22102 2000-12-01  Gary V. Vaughan  <gary@gnu.org>
22103
22104         * doc/libtool.texi (Libltdl interface):  Add documentation.
22105         * libltdl/ltdl.h (lt_dlmakeresident, lt_dlisresident):  Add
22106         prototypes.
22107         (LT_DLERROR_CLOSE_RESIDENT_MODULE): New error status.
22108         * libltdl/ltdl.c (lt_dlmakeresident, lt_dlisresident):  Allow
22109         making and testing of resident module status, which prevents a
22110         module from being lt_dlclosed.
22111         (lt_dlopen):  If lt_dlopen()ing self, make the module resident.
22112         (lt_dlclose):  Return an error if the module is resident.
22113
22114         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Move the tests for dlopen
22115         from here...
22116         (AC_LIBTOOL_DLOPEN_SELF): ...to here.
22117         (_LT_AC_CHECK_DLFCN):  Factor out repeated code for dlfcn.h
22118         (_LT_AC_TRY_DLOPEN_SELF): Factor out repeated code for
22119         checking dlopen status.
22120         * ltdl.m4 (AC_LIB_LTDL):  Use _LT_AC_CHECK_DLFCN.
22121         dlopen compile time checking.  Use _LT_AC_CHECK_DLFCN.
22122         (AC_LTDL_DLSYM_USCORE):  Use _LT_AC_TRY_DLOPEN_SELF.
22123
22124 2000-11-29  Gary V. Vaughan  <gary@gnu.org>
22125
22126         * libltdl/ltdl.h (lt_dlhandle): Rename the wrapped structure
22127         to prevent nameclash when used from C++.
22128         * libltdl/ltdl.c: Fixed all references.
22129
22130 2000-11-25  Gary V. Vaughan  <gary@gnu.org>
22131
22132         * libltdl/ltdl.c (lt_dlopen):  Change the default search order
22133         for modules.  If the named module has no directory component,
22134         always start the search with the user_search_path directories,
22135         and then fall back on the current directory only if that fails.
22136
22137 2000-11-20  Gary V. Vaughan  <gary@gnu.org>
22138
22139         * libltdl/Makefile.am (libltdl_la_LDFLAGS): increment the version
22140         number to reflect the breakage of binary compatibility.
22141         * doc/libtool.texi (Libltdl interface):  Document
22142         LT_NON_POSIX_NAMESPACE.
22143         * libltdl/ltdl.h (LT_POSIX_NAMESPACE):  Deleted.  The default is
22144         now to use this namespace, so the cpp macro is no longer
22145         necessary.
22146
22147 2000-11-20  Morten Eriksen  <mortene@sim.no>
22148
22149         * ltdl.m4 (AC_LIB_LTDL, AC_LTDL_SYMBOL_USCORE): Break a circular
22150         dependency between AC_LTDL_SYMBOL_USCORE and AC_LTDL_DLSYM_USCORE.
22151
22152 2000-11-20  Paul Berrevoets  <paul@swi.com>
22153
22154         * ltmain.in: Some versions of expr respond with "0" if a
22155         regexp fails to match.
22156
22157 2000-11-19  Paul Berrevoets  <paul@swi.com>
22158
22159         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote the $ in $#, $2 and
22160         $3 in variable 'archive_expsym_cmds' for cygwin.
22161
22162 2000-11-19  Gary V. Vaughan  <gary@gnu.org>
22163
22164         * ltdl.c: Relegate non-POSIX-compliant symbols (e.g. those
22165         ending in ``_t'') to deprecated #define compatibility macros.
22166         Also ease up on the namespace pollution, so that only ``lt_''
22167         and ``LT_'' prefixes are taken from the global namespace.
22168         * ltdl.h: ditto.
22169
22170 2000-11-17  Gary V. Vaughan  <gary@gnu.org>
22171
22172         * ltdl.c: Reformatted.
22173         * ltdl.h: ditto.
22174
22175 2000-11-11  Gary V. Vaughan  <gary@gnu.org>
22176
22177         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Use $ac_ext for conftest
22178         sourcefile.
22179         * libtool.m4: Use $ac_ext and $ac_objext respectively for conftest
22180         sources and objects.
22181         Reported by Carlo Wood <carlo@alinoe.com>
22182
22183         * doc/fdl.texi: New file.  The license for distributing the
22184         libtool manual.
22185         * doc/libtool.texi: Reference the new license.
22186
22187 2000-10-31  Morten Eriksen  <mortene@sim.no>
22188
22189         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote argument to avoid
22190         error output from cygpath when $srcdir is empty.
22191
22192 2000-10-31  Gary V. Vaughan  <gary@gnu.org>
22193
22194         * bootstrap:  rm Makefiles to prevent infinite loop during
22195         configure when libtool.m4 is newer than Makefile.
22196
22197 2000-10-31  Akim Demaille  <akim@epita.fr>
22198
22199         * libtool.m4: Adjust the copyright notice.
22200         Quote all the macro names when defined.
22201         Some minor formatting changes.
22202         (AM_PROG_LIBTOOL, AM_ENABLE_SHARED, AM_ENABLE_STATIC)
22203         (AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_PROG_LD, AM_PROG_NM):
22204         Don't use indir when useless.  Don't add trailing `dnl' either.
22205
22206 2000-10-30  Gary V. Vaughan  <gary@gnu.org>
22207
22208         * doc/libtool.texi:  Corrected another attack of CRLF line
22209         endings.
22210
22211 2000-10-30  Ossama Othman  <ossama@debian.org>
22212
22213         * libtool.m4 (archive_expsym_cmds): Fix typo where line was broken
22214         in the middle of an expression.
22215
22216 2000-10-30  Aneesh Kumar K.V <kvaneesh@hotmail.com>
22217
22218         * libtool.m4 (archive_expsym_cmds):  Support for -export-symbol
22219         option on Tru64.
22220         (hardcode_libdir_flag_spec): Fixed cxx throwing error while using
22221         libtool.  Done by passing -rpath directlty to the compiler.
22222
22223 2000-10-27  Robert Boehne  <rboehne@ricardo-us.com>
22224
22225         * docs/libtool.texi: Added pointers to documentation
22226         of Hewlett-Packard, Compaq Tru64 and IBM AIX systems.
22227
22228 2000-10-02  Gary V. Vaughan  <gary@gnu.org>
22229
22230         From Bruce Korb <bkorb@cruzio.com>
22231         * ltmain.in (execute_dlfiles): Reduce obfuscation.
22232
22233 2000-09-30  Alexandre Oliva  <aoliva@redhat.com>
22234
22235         * libtool.m4 [netbsd*] (deplibs_check_method, file_magic_cmd,
22236         file_magic_test_file): Removed inappropriate duplicate
22237         definitions; these variables are set in AC_DEPLIBS_CHECK_METHOD.
22238
22239         * libtool.m4 (lt_cv_file_magic_cmd): Don't use '${MAGIC_CMD}' or
22240         '${OBJDUMP}'; Solaris' /bin/sh loses with `}' in cache files.
22241         (ac_cv_path_MAGIC_CMD): Renamed to lt_cv_path_MAGIC_CMD.
22242
22243 2000-09-28  Gary V. Vaughan  <gary@gnu.org>
22244
22245         * libtool.m4 (MAGIC_CMD): Don't use MAGIC, since BSD versions of
22246         the file command use this environment variable to hold the
22247         location of the magic database.
22248         Reported by Marc Espie <Marc.Espie@liafa.jussieu.fr>
22249
22250 2000-09-19  Gary V. Vaughan  <gary@gnu.org>
22251
22252         * doc/PLATFORMS: Updated.
22253         * demo/configure.in:  Revert to the `libtool --features' test.
22254         * Makefile.am (libtool):  This needs to rerun configure now that
22255         libtool is generated entirely by AC_PROG_LIBTOOL again.
22256         (ltconfig): Removed.
22257         (ltmain.sh):  Is now regenerated when ltmain.in changes.
22258         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Now does all of the work for
22259         generating libtool immediately in configure.in, rather than
22260         deferring part of the creation until config.status runs.
22261
22262 2000-09-17  Gary V. Vaughan  <gary@gnu.org>
22263
22264         * bootstrap:  Backed out yesterdays patch which is no longer
22265         necessary.
22266         * Makefile.am (libtool): Reworked rule for regeneration of libtool,
22267         now that it is built entirely withing config.status.
22268         (libtoolize): Tidied for orthogonality with the other generation
22269         rules.
22270         (ltconfig):  This is now generated by AC_PROG_LIBTOOL, called from
22271         make by running config.status --recheck.
22272         (ltmain.sh): Moved primary generation of this file into here...
22273         * configure.in (AC_OUTPUT): ...instead of here.
22274         * libtool.m4 (AC_OUTPUT_COMMANDS):  Write the config to ltconfig
22275         where it can be reused, rather than directly to libtool.
22276         * demo/configure.in:  libtool is no longer present immediately
22277         after AC_LIBTOOL_M4 has completed, so the tests now grep through
22278         ltconfig instead -- which *will* be present.
22279
22280 2000-09-16  Gary V. Vaughan  <gary@gnu.org>
22281
22282         * TODO: Removed the item describing the change below, and added a
22283         similar item to remind us to change the ltdl.m4 macros again when
22284         _LT_AC_LTCONFIG_HACK is divided into proper macros.
22285         * ltdl.m4 (AC_LTDL_SNARF_CONFIG):  Removed.  No longet required
22286         now that ltconfig has migrated to libtool.m4.
22287         (AC_LTDL_SHLIBEXT): Require _LT_AC_LTCONFIG_HACK.
22288         (AC_LTDL_SHLIBPATH): ditto.
22289         (AC_LTDL_SYSSEARCHPATH): ditto.
22290
22291         * ltdl.m4 (AC_LTDL_DLPREOPEN): Require the libtool.m4 symbol_pipe
22292         macro.
22293         (AC_LTDL_SYMBOL_USCORE): ditto.
22294         (AC_LTDL_GLOBAL_SYMBOL_PIPE): Removed, since it is a duplicate
22295         of...
22296         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): ...this new
22297         macro, extracted from _LT_AC_LTCONFIG_HACK.
22298
22299         * ltdl.m4 (changequote): An audit of changequote and m4
22300         quote usage -- all changequotes have been removed, and some
22301         latent unquoted `[' and `]' bugs have been fixed.
22302
22303         * configure.in (AC_OUTPUT): ltmain.sh must be generated in the
22304         source tree since this is where it would be found in a freshly
22305         unrolled tarball.
22306
22307         * configure.in: Replace `dnl' comments with `#' comments for
22308         more conformity with cvs autoconf.
22309         Removed emacs hack-local-variables, since there is now a
22310         proper Autoconf major mode.
22311         Removed a couple of changequote()s.
22312
22313         * bootstrap (ltconfig): When bootstrapping libtool with a
22314         stock automake (i.e. without the README patch applied),
22315         references to ltconfig are manually removed from the generated
22316         Makefile.in files.
22317
22318 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
22319
22320         * doc/libtool.texi: Removes references to ltconfig, and a small
22321         amount of tidying up to compensate.
22322
22323 2000-09-15  Nick Hudson  <skrll@netbsd.org>
22324
22325         * libtool.m4 (netbsd): Improved support.
22326
22327 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
22328
22329         * ltmain.in (version_type): Use "-iface" as the windows
22330         versioning scheme, where iface is the number of the oldest
22331         interface supported.
22332
22333 2000-09-14  Gary V. Vaughan  <gary@gnu.org>
22334
22335         From Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
22336         * libtool.m4 (pw32): Initial support for pw32, assuming that
22337         libtool's behaviour in this environment is identical to under
22338         cygwin.
22339         * ltmain.in (pw32): ditto.
22340         * NEWS: Updated.
22341
22342         * libtool.m4 (changequote): An audit of changequote and m4
22343         quote usage -- all changequotes (except a few with non-nesting
22344         square brackets) have been removed.
22345
22346         * Makefile.am (EXTRA_DIST):  The bootstrap script should be
22347         distributed with libtool.
22348
22349 2000-09-13  Gary V. Vaughan  <gary@gnu.org>
22350
22351         libtool.m4 (_LT_AC_LTCONFIG_HACK): Oh man!  Third time lucky.
22352         I just discovered that '&' needs to be escaped inside
22353         AC_TRY_EVAL.
22354
22355 2000-09-12  Michael Matz  <matz@ifh.de>
22356
22357         * ltmain.in:  Be careful about filenames with multiple `.'s in
22358         them when calculating file extensions.
22359         Reported by Joel Reed <jreed@support.ddiworld.com>
22360
22361 2000-09-12  Gary V. Vaughan  <gary@gnu.org>
22362
22363         libtool.m4 (AC_PROG_LIBTOOL):  Removed, as it was triggering a
22364         bug in Autoconf-2.13 AC_REQUIRE implementation which inserted
22365         some of the expanded tests too early in the generaated configure.
22366         (_AC_PROG_LIBTOOL): renamed to AC_PROG_LIBTOOL, and defines
22367         itself to an empty expansion to prevent multiple expansions.
22368         configure.in (AC_LIBTOOL_SETUP): Replaced by a call to
22369         AC_PROG_LIBTOOL now that the AC_REQUIRE bug has been worked
22370         around.
22371
22372 2000-09-09  Gary V. Vaughan  <gary@gnu.org>
22373
22374         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to escape the
22375         redirections inside AC_TRY_EVAL in the need_lc tests. Doh!
22376
22377         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to redirect the
22378         output of grep to /dev/null in the need_lc tests.
22379
22380         configure.in (AC_PROG_LIBTOOL):  Using this in libtools own
22381         configure.in interacts badly with the AC_PROVIDE calls and
22382         results in several tests being inserted into configure too
22383         early.  Use AC_LIBTOOL_SETUP instead.
22384
22385 2000-09-08  Gary V. Vaughan  <gary@gnu.org>
22386
22387         libtool.m4 (_LT_AC_LTCONFIG_HACK): The ltconfig.in code I
22388         ported from ltconfig.in was incomplete -- this is a backport
22389         of the missing code taken from the multi-language branch.
22390
22391 2000-09-07  Pavel Roskin  <proskin@gnu.org>
22392
22393         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Fixed incorrect use of
22394         changequote
22395
22396 2000-09-07  Gary V. Vaughan  <gary@gnu.org>
22397
22398         * NEWS:  Updated.
22399         * TODO:  Add a reminder to get rid of ltconfig in mlb.
22400         * README: Until things even out, I have added a note and a
22401         patch to make the installed automake cooperate with the new
22402         ltconfig free libtool.
22403
22404         * libtool.m4 (_LT_AC_LTCONFIG_HACK): with_gcc is only useful in
22405         ltmain.sh as it has not yet been set in libtool.m4.  Use
22406         $ac_cv_prog_gcc instead.
22407
22408         * doc/PLATFORMS: Updated.
22409
22410         * configure.in (AC_PROG_AWK): Removed -- no longer required by
22411         the build process.
22412         * lineno: ditto.
22413
22414         * libtoolize.in (files): Don't try to install ltconfig -- it
22415         doesn't exist!!
22416         * bootstrap: Fake an ltconfig incase the installed automake
22417         calls an installed libtoolize (as part of its --add-missing
22418         process) which thinks ltconfig should be there.
22419
22420         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Deleted a vital `;;'
22421         terminator from a case statement by mistake.
22422
22423         * Makefile.am (ltmain.sh):  Make this depend on TSDEPS again
22424         so that the Changelog timestamp is used for ltmain.sh at `make
22425         dist' time.
22426
22427 2000-09-06  Gary V. Vaughan  <gary@gnu.org>
22428
22429         libtool.m4 now contains a version of the code that used to run
22430         from ltconfig, so that ltmain.sh and then libtool are
22431         generated at configure time.
22432
22433         * Makefile.am:  Don't generate ltmain.sh or ltconfig anymore.
22434         * bootstrap: ltconfig is no more!
22435         * configure.in: Call AC_PROG_LIBTOOL directly.
22436         (AC_OUTPUT): Generate tmain.sh.
22437         * libtool.m4: Don't build an argument list for ltconfig.
22438         (_LT_AC_LTCONFIG_HACK):  Refactoring of the former contents of
22439         ltconfig.in to take advantage of the m4 macros from autoconf.
22440         * ltmain.in: Don't do a version check against ltconfig.
22441         * tests/assign.test: Remove reference to ltconfig.
22442         * tests/hardcode.test: ditto.
22443         * tests/sh.test: ditto.
22444
22445 2000-09-05  Alexandre Oliva  <aoliva@redhat.com>
22446
22447         * depdemo/main.c: Support -alt.
22448         * tests/build-relink2.test: Try it.
22449
22450         * ltconfig.in: Removed all references to what used to be
22451         hardcode_into_libs=all.  2000-09-03's patch was wrong.
22452         * ltmain.in: Likewise.
22453         * tests/build-relink.test, tests/build-relink2.test: Adjust.
22454         * mdemo/Makefile.am (lib_LTLIBRARIES): Move libsub.la before
22455         libfoo2.la, so that they're installed in the right order.
22456
22457 2000-09-04  Alexandre Oliva  <aoliva@redhat.com>
22458
22459         * tests/dryrun.test: Build libsub.la along with the object files,
22460         since it is needed by libfoo2.la.
22461
22462         * mdemo/Makefile.am: Mark only libfoo2 as -no-undefined.
22463         Explicitly link it with libsub.la.
22464
22465         * ltconfig.in (need_lc): Preserve allow_undefined_flag.
22466
22467         * tests/*.test (CONFIG_SITE): Ultrix's /bin/sh fails on
22468         `. /dev/null'.  Set CONFIG_SITE to /dev/null/config/site, to make
22469         sure we pick a non-existent file.
22470
22471         * Makefile.am (libtool, clibtool): Pass CONFIG_SHELL along with
22472         ECHO down to ltconfig.
22473
22474         * ltconfig.in (hardcode_libdir_flag_spec, export_dynamic_flag_spec):
22475         Use ${wl}, not ${wlarc}.
22476
22477         * ltmain.in (compile, need_lock): Don't create nor remove lock
22478         files in dry runs.
22479
22480         * libltdl/ltdl.c (load_deplibs): Don't append shlib_ext; use
22481         lt_dlopenext() instead.
22482
22483         * ltmain.in (link -static): Don't add $link_static_flag; only
22484         -all-static should do that.
22485         * mdemo/configure.in: Revert part of the previous delta.
22486
22487         * mdemo/configure.in: Don't use -static on AIX4.1.
22488         * mdemo/Makefile.am: Likewise.
22489
22490 2000-09-03  Alexandre Oliva  <aoliva@redhat.com>
22491
22492         * ltconfig.in: Get rid of hardcode_into_libs=all; use
22493         hardcode_into_libs=yes && shlibpath_overrides_runpath!=yes
22494         instead.
22495         [FreeBSD 3.[01]] (shlibpath_overrides_runpath): Set to no.
22496         * ltmain.in: Likewise.
22497         * tests/build-relink.test, tests/build-relink2.test: Adjust.
22498
22499         * libtool.m4: Fix typo I introduced in yesterday's patch.
22500
22501         * libltdl/ltdl.c (lt_dlopen): Set dlname from library_names if
22502         dlname is empty.
22503
22504         * ltdl.m4 (HAVE_LIBDL): Look for dlopen in -lsvld.
22505         * ltconfig.in: Likewise.
22506
22507         * tests/mdemo-exec.test: Modify failure message.
22508
22509         * ltmain.in (newdlprefiles): Use dlname if it's available and
22510         old_library isn't; use linklib only if dlname is not available.
22511
22512         * ltconfig.in (enable_dlopen): Set to no when lt_cv_dlopen is no.
22513
22514         * libtool.m4: Don't quote CONFIG_SHELL nor ORIGINAL_CONFIG_SHELL.
22515         Quote $@ properly so that the shell expands it, not m4.
22516
22517         * libtool.m4: Don't quote SHELL when `re-exec'ing, so that SHELL
22518         can be `/path/to/shell -x'.
22519
22520         * tests/quote.test: Move the match test out of case statements, to
22521         work around bug in /bin/sh of several OSs.
22522
22523         * ltmain.in (variables_saved_for_relink): Attempt to unset them
22524         instead of setting them to an empty string.
22525
22526 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
22527
22528         * ltconfig.in [with_gnu_ld] (archive_cmds, archive_expsym_cmds)
22529         <solaris*, sysv5*, beos*>: Use compiler_flags instead of linker
22530         flags.
22531         Reported by Alex Hornby <alex@anvil.co.uk>
22532
22533 2000-09-02  Makoto Ishisone  <ishisone@sra.co.jp>
22534
22535         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Fix typo,
22536         add support for compact format library.
22537
22538 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
22539
22540         * ltdl.m4: Oops, I had forgotten to commit this part of Syd Polk's
22541         patch from 2000-06-17.
22542
22543 2000-09-02  Tom Kacvinsky  <tjk@ams.org>, Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
22544
22545         * libtool.m4: Ignore Tru64's nm's complaint.
22546
22547 2000-09-02  Pavel Roskin <proski@gnu.org>
22548
22549         * ltconfig.in: only load $cache_file if it's a regular file
22550
22551 2000-09-02  Assar Westerlund  <assar@sics.se>
22552
22553         * ltconfig.in: Add back ranlib calls for static libraries if there
22554         is a ranlib.
22555
22556 2000-08-31  Gary V. Vaughan  <gary@gnu.org>
22557
22558         Move the echo detection code to a macro in libtool.m4.  The code
22559         at the top ofltconfig.in is ugly, but will go away when the rest
22560         of ltconfig is migrated.
22561
22562         * Makefile.am (libtool):  Pass the value of $ECHO to ltconfig as
22563         an environment variable.
22564         * libtool.m4 (_LT_AC_PROG_ECHO_BACKSLASH): Quote the ECHO value
22565         correctly so that it inserts the correct code into configure.in
22566         suitably quoted for M4 expansion.  This code needs to be near
22567         the top of configure.in as it calls itself recursively, so I
22568         am using AC_DIVERSION_NOTICE (or simply NOTICE on CVS
22569         Autoconf).  The value of ECHO is also substitued into the
22570         Makefile to be used when Make calls ltconfig to generate
22571         libtool, so another layer of quotation is required for the
22572         Makefile.
22573         (AC_LIBTOOL_SETUP):  Use it.
22574         * ltconfig.in: Accept a value for ECHO from the environment, and
22575         carefully substitue for $0 if it is present in the ECHO value.
22576         Because ECHO was quoted for Make, when ltconfig is called by
22577         configure, it is overquoted, and one layer of quotes must be
22578         stripped.
22579
22580 2000-08-27  Gary V. Vaughan  <gary@gnu.org>
22581
22582         * ltconfig.in (with_gcc):  Make the value of this option
22583         available to the generated libtool script.
22584         * ltmain.in (compile_command, finalize_command):  The native C
22585         and C++ compilers on IRIX require the -LANG:std in order to to
22586         compile correctly.   The same options should _not_ be passed
22587         through to gcc on IRIX, or at all on other architectures for
22588         backwards compatibility (among others).
22589         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
22590         Reported by Albert Chin-A-Young <china@thewrittenword.com>
22591
22592 2000-08-26  Gary V. Vaughan  <gary@gnu.org>
22593
22594         * ltconfig.in (old_reload_flag): typo.
22595
22596 2000-08-01  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22597
22598         * ltmain.in (shtool): Use echo|grep instead of expr, as in the
22599         original patch.
22600
22601 2000-08-01  Alexandre Oliva  <aoliva@redhat.com>
22602
22603         * ltconfig.in (need_lc): Fix test message.
22604
22605 2000-07-24  Mocha  <netbsd_alpha@yahoo.com>
22606
22607         * ltconfig.in (NetBSD, deplibs_check_method): Use file_magic.
22608         (NetBSD, file_magic_cmd, file_magic_test_file): Set.
22609
22610 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, David Kaelbling  <drk@orchietta.hudson.sgi.com>
22611
22612         * ltmain.in (irix, major): Prepend a `.'.
22613         * ltconfig.in (irix, soname_spec, library_names_spec): Adjust.
22614
22615 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, Ralf S. Engelschall  <rse@engelschall.com>
22616
22617         * ltmain.in: Support GNU shtool's install.
22618
22619 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22620
22621         * ltconfig.in (linkopts): Don't set for test.
22622
22623 2000-07-24  Nick Hudson <skrll@netbsd.org>
22624
22625         * ltconfig.in (linkopts): Replace with linker_flags.
22626
22627         * ltmain.in (ILD): Fix addition of deplibs in relink case.
22628
22629 2000-07-18  H.J. Lu  <hjl@gnu.org>
22630
22631         * ltconfig.in: Check if -lc is necessary for building shared
22632         library. Set build_libtool_need_lc to indicate it.
22633         * ltmain.in: Add -lc when building shared library only if
22634         necessary.
22635
22636 2000-07-10  Mo DeJong  <mdejong@redhat.com>
22637
22638         * libtool.m4 (AC_PROG_NM): Fix macro so that it
22639         finds a cross NM on the PATH.
22640
22641 2000-07-10  Ken Block <block@zk3.dec.com>
22642
22643         * libltdl/ltdl.h: Also check for __cplusplus, __STDC__ is not
22644         by Compaq C++ compiler
22645
22646 2000-07-10  Alexandre Oliva  <aoliva@lsd.ic.unicamp.br>
22647
22648         * ltconfig.in (wlarc, netbsd, aout): Set to empty.
22649         (hardcode_dynamic_flag_spec, export_dynamic_flag_spec): Use it.
22650
22651         * ltconfig.in (dynamic_linker, linux, powerpc): Do not disable
22652         shared libraries just because of MkLinux.
22653
22654         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Do not depend
22655         on $version_type; check for ELF support as in other BSDs.
22656
22657 2000-06-17  Syd Polk  <spolk@redhat.com>
22658
22659         * libtool.m4 (AC_LIBTOOL_SETUP): Do not generate a libtool based
22660         on target; use host instead.
22661
22662 2000-05-30  Gary V. Vaughan  <gary@gnu.org>
22663
22664         * ltconfig.in (ORIGINAL_CONFIG_SHELL): Prevent lossage when
22665         the echo probing code falls into this branch without setting
22666         this variable.
22667
22668         * ltconfig.in (netbsd*): archive_cmds and archive_expsym_cmds
22669         were reversed with respect to definition of __ELF__.
22670         From Keisuke Inoue <keisuke@csl.sony.co.jp>
22671
22672 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
22673
22674         * libtool.m4 (netbsd*): Use -L option to file_magic_cmd as for
22675         freebsd (below).
22676         * libtool.m4 (netbsd ELF): support file_magic.
22677         From Dan Winship <danw@helixcode.com>.
22678
22679 2000-05-29  Steven M. Schultz <sms@moe.2bsd.com>
22680
22681         * libtool.m4 (bsdi4*): Add -L option to bsdi4's file_magic_cmd
22682         command.  Under BSD/OS 4.1 several libraries are now symlinks
22683         rather than regular files.  Adding -L tells the file program
22684         to follow the symlink.
22685
22686 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
22687
22688         * libtool.m4 (i*86-*-freebsd*): Forgot to changequote(,).
22689
22690         * NEWS: Updated.
22691         * libtool.m4 (i*86-*-freebsd*): Support a.out shared libs.
22692         From <suzukis@file.phys.tohoku.ac.jp>
22693
22694 2000-05-29  Fred Fish  <fnf@be.com>
22695
22696         Support AR=mwld AR_FLAGS='-xml -o' for PPC Beos.
22697         * ltconfig (old_AR_FLAGS): Add.
22698         (old_archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
22699         (archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
22700         (AR_FLAGS): Default to "cru" if not set.
22701
22702 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
22703
22704         * ltconfig.in (echo): The following code actually prints the
22705         double quotes -- so I removed them:
22706             echo='printf "%s\n"' /bin/ksh -c '$echo \\t'
22707         From Tuukka Toivonen <tutoivon@mail.student.oulu.fi>
22708
22709         * NEWS: Updated.
22710
22711 2000-05-29  Bernhard Rosenkraenzer <bero@redhat.de>
22712
22713         * libtool.m4: adding ia64 as supported linux platform
22714
22715 2000-05-29  Michael Matz  <matz@ifh.de>
22716
22717         * ltmain.in: fix quoting for $var_value.
22718
22719         * ltconfig.in: check for dlfcn.h: include return value
22720         to make -Wall in CFLAGS work.
22721
22722 2000-05-27  Gary V. Vaughan  <gary@gnu.org>
22723
22724         * README-alpha: note new location of config.(guess|sub).
22725
22726 2000-05-27  Chad Cunningham  <ccunning@math.ohio-state.edu>
22727
22728         * ltconfig.in (rhapsody*): New Port.
22729         * ltmain.in (rhapsody*): ditto.
22730
22731 2000-05-27  Chris Lattner  <sabre@skylab.org>
22732
22733         * ltconfig.in (*-sequent-sysv4): New Port.
22734
22735 2000-05-17  Gary V. Vaughan  <gary@gnu.org>
22736
22737         * ltmain.in: cygwin-1.1.0 and higher no longer grok backslash path
22738         separators.
22739
22740 2000-05-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22741
22742         * libtool.m4 (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE):
22743         Pick LIBLTLD from top_builddir and INCLTDL from top_srcdir.
22744         * mdemo/configure.in: Remove comments on
22745         AC_LIBLTLD_CONVENIENCE.
22746
22747         * libtool.m4 (_AC_PROG_LIBTOOL): Renamed from...
22748         (AC_PROG_LIBTOOL): Just AC_REQUIRE(_AC_PROG_LIBTOOL), to avoid
22749         effects of multiple runs.
22750
22751 2000-05-11  Thomas Tanner  <tanner@ffii.org>
22752
22753         * NEWS: update
22754         * doc/libtool.texi (libltdl): rename lt_(find|next|add|remove)_dlloader
22755           to lt_dlloader_*
22756         * libltdl/ltdl.c: ditto
22757         * libltdl/ltdl.h: ditto, add declaration of lt_dlloader_(find|remove)
22758
22759 2000-05-06  Pavel Roskin  <pavel_roskin@geocities.com>
22760
22761         * libltdl/ltdl.c: Typo.
22762
22763         * libtool.m4 (AC_LIBTOOL_SETUP): CVS autoconf no longer sets
22764         target to "NONE", but to an empty string.
22765
22766 2000-05-05  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
22767
22768         * ltdl.c: support lt_dlopen(0) for win32
22769
22770 2000-05-03  Thomas Tanner  <tanner@ffii.org>
22771
22772         * doc/libtool.texi (libltdl): fix typos,
22773           INCLTDL starts with top_srcdir, replace NULL with @code{NULL}
22774
22775         * ltmain.in (ILD): search in newlib_search_path, too
22776
22777         * ltmain.in (ILD): fix bugs in conv pass, expand convenience
22778           libs to deplibs and link them later on
22779
22780         * ltmain.in (ILD): don't allow convenience libs to be
22781            -dlopen/preopen'ed
22782
22783         * ltmain.in (ILD): it's not required to link all deplibs
22784           in fast-install mode
22785
22786         * ltmain.in (ILD): if hardcode_into_libs=all, only relink
22787           a library if it is linked against uninstalled libtool libraries,
22788           rename link_against_libtool_libs to uninst_deplibs
22789
22790         * ltmain.in (ILD): tidy up, add some comments
22791
22792 2000-05-03  John Wehle  (john@feith.com)
22793
22794         * libtool.m4 (hpux10.20*): use file_magic for
22795         inter-library dependency tracking.
22796
22797 2000-05-02  Gary V. Vaughan  <gary@gnu.org>
22798
22799         * AUTHORS:  Update my email address.
22800         * commit: ditto.
22801
22802 2000-04-11  Thomas Tanner  <tanner@ffii.org>
22803
22804         * NEWS: update
22805         * libtool.m4: add AC_LIBTOOL_PICMODE
22806         * ltconfig.in: move pic_mode checks to ltmain.in
22807         * ltmain.in: add -prefer-pic and -prefer-non-pic
22808
22809 2000-03-29  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22810
22811         * ltmain.in (tmpdir): Do not accept an existing directory, and
22812         force its mode to 700, for security reasons.
22813         Reported by Joseph S. Myers <jsm28@cam.ac.uk>
22814
22815 2000-03-27  Thomas Tanner  <tanner@ffii.org>
22816
22817         * NEWS: reformatting
22818
22819         * ltmain.in (ILD): add extra convenience library scanning pass
22820
22821         * ltmain.in (ILD): accept -R flags for libraries, too
22822
22823         * ltmain.in (ILD): correclty merge the dlpreopened libraries
22824           with deplibs
22825
22826         * ltmain.in (install mode): remove directories from filenames
22827           before relinking (reported by Elrond <Elrond@Wunder-Nett.org>)
22828
22829         * doc/libtool.texi (libltdl): rename Library -> Lesser,
22830           clarify exception clause
22831         * libltdl/ltdl.c, libltdl.h (License): ditto
22832
22833 2000-03-21  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22834
22835         * ltconfig.in (variables_saved_for_relink): Set to `PATH
22836         $shlibpath_var $runpath_var'.  If with_gcc, add gcc-related
22837         environment variables.  Add it to the configuration section.
22838         * ltmain.in (relink_command): Expand those variables.
22839
22840 2000-03-14  Christopher A. Knight  <chriskn@crt.com>
22841
22842         * ltconfig.in: added main() definition in compile
22843         check for header `dlfcn.h' to fix link errors
22844         when built with Sun Workshop Pro CC 4.2 (and perhaps
22845         others).
22846
22847 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
22848
22849         * libltdl/ltdl.c (lt_find_dlhandle): Deleted.  This was B.S.
22850         far cleaner to use lt_dlforeach and lt_dlgetinfo.
22851         * libltdl/ltdl.h:  Prototype deleted.
22852         * doc/libtool.texi: Documentation deleted.
22853         * NEWS: annoncement deleted.
22854
22855 2000-02-23  Thomas Tanner  <tanner@ffii.org>
22856
22857         * ltmain.in: remove duplicates from deplibs, handle
22858           interdependent libraries (e.g. -la -lb -la),
22859           this requires adding deplibs in reverse order
22860
22861         * ltmain.in: link dlpreopened libraries before other libraries
22862           (reported by Pavel Roskin)
22863         * mdemo/Makefile.am: build and link libsub.la
22864         * mdemo/sub.c: new file used by both dlopened modules
22865         * mdemo/foo*: use sub() defined in libsub
22866         * tests/dryrun.test: build libsub.la
22867
22868         * mdemo/Makefile.am: always link mdemo.static with -static
22869         * mdemo/configure.in: ditto
22870
22871         * ltmain.in: fix dlopen/dlpreopening of objects
22872
22873         * ltmain.in (ILD): fix misplaced `continue' in -R* argument handler
22874
22875         * ltmain.in: merge duplicated code of clean and uninstall mode
22876
22877         * libtool.m4: recognize powerpc*linux* (reported by
22878           Dirk A. Mueller <dmuell@gmx.net>)
22879
22880 2000-02-23  Gary V. Vaughan  <gary@gnu.org>
22881
22882         * ltconfig.in (old_MAGIC, old_STRIP, old_reload_flag,
22883         old_deplibs_check_method, old_file_magic_cmd):  New variabes.
22884         Treat these as old_CC etc.
22885         (STRIP, MAGIC): Create and set these variables in the generated
22886         libtool script.
22887         Reported by Pavel Roskin <pavel_rosin@geocities.com>
22888
22889         * configure.in: Due to a bug in autoconf-2.13 implementation of
22890         AC_SUBST, `AC_SUBST(FILE)' can never work.  Use MAGIC as the
22891         holder of the command to run in file_magic_cmd instead.
22892         * ltconfig.in: s/FILE/MAGIC/g.
22893         * libtool.m4 (AC_PROG_LIBTOOL): set MAGIC in the environment when
22894         calling ltconfig.
22895         (AC_PATH_MAGIC):  renamed from AC_PATH_FILE.
22896         (AC_PATH_TOOL_PREFIX):  s/FILE/MAGIC/g.  Also set file_magic_cmd
22897         to '${MAGIC}' so that make can grok it.
22898         * Makefile.am (libtool):
22899         (clibtool): ditto.
22900
22901 2000-02-21  Gary V. Vaughan  <gary@gnu.org>
22902
22903         * libltdl/ltdl.c (lt_find_dlhandle): New function.
22904         (tryall_dlopen): Use it.
22905         * libltdl/ltdl.h:  Prototype it.
22906         * doc/libtool.texi: Document it.
22907         * NEWS: updated.
22908
22909         * libltdl/ltdl.c (lt_dlinit): removed unused variable, `loader'.
22910
22911         * libltdl/ltdl.c (lt_remove_dlloader): typo, s/=/==/g.
22912
22913 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
22914
22915         * libltdl/ltdl.h (lt_dlloader_data_t):  New type for loader
22916         instance data.
22917         (lt_user_dlloader): New lt_dlloader_data_t field.
22918         (lt_module_open_t): Add lt_dlloader_data_t parameter.
22919         (lt_module_close_t): Add lt_dlloader_data_t parameter.
22920         (lt_find_sym_t): Add lt_dlloader_data_t parameter.
22921         (lt_dlloader_exit_t): Add lt_dlloader_data_t parameter.
22922         * libltdl/ltdl.c:  A sprinkling of /*ARGSUSED*/ markers to
22923         reassure lint that the unused arguments are intentional.
22924         (lt_dlloader_t): New lt_dlloader_data_t field.
22925         (lt_dlloader_data): New function to return the contents of the
22926         dlloader_data field.
22927         (sys_dl_open): Take an additional lt_dlloader_data_t argument.
22928         (sys_dl_close): Ditto.
22929         (sys_dl_sym): Ditto.
22930         (sys_dl): Initialise lt_dlloader_data_t field.
22931         (sys_shl_open, sys_shl_close, sys_shl_sym, sys_shl): As above.
22932         (sys_wll_open, sys_wll_close, sys_wll_sym, sys_wll): As above.
22933         (sys_bedl_open, sys_bedl_close, sys_bedl_sym, sys_bedl): As
22934         above.
22935         (sys_dld_open, sys_dld_close, sys_dld_sym, sys_dld): As above.
22936         (presym_init, presym_exit, presym_open, presym_close, presym_sym,
22937         presym): As above.
22938         (lt_dlinit): Call presym_init with additional argument.
22939         (lt_dlexit): Call dlloader_exit method with additional argument.
22940         (tryall_dlopen): Call module_open method with additional argument.
22941         (lt_dlclose): Call module_close method with additional argument.
22942         (lt_dlsym): Call find_sym method with additional argument.
22943         (lt_add_dlloader): Initialise dlloader_data field.
22944         (lt_remove_dlloader): Call dlloader_exit method with additional
22945         argument.
22946
22947         * libltdl/ltdl.c (find_file): Prevent early release of memory
22948         in filename/*pdir.
22949         From Jon Leichter <jon@symas.com>
22950
22951         (sys_wll_init): Deleted.  No longer required.  And this time,
22952         with feeling!
22953         (sys_wll_exit): Ditto.
22954
22955 2000-02-02  Gary V. Vaughan  <gary@gnu.org>
22956
22957         * NEWS: updated.
22958         * doc/libtool.texi (Libltdl interface): Moved user defined module
22959         loader documentation from here...
22960         (Module loaders for libltdl) ...to here, and updated the text and
22961         added examples.
22962         * ltdl.m4 (AC_CHECK_FUNCS): check strcmp for lt_find_dlloader.
22963         * libltdl/ltdl.h: Reformatted and commented for readability.
22964         (struct lt_user_dlloader): New data type for passing
22965         initialisation pointers to lt_add_dlloader.
22966         (LTDL_ERROR_INVALID_LOADER):  New error message when non loader
22967         handles are passed to the user loader API.
22968         (LTDL_ERROR_INIT_LOADER): New error when loader initialisation
22969         fails.
22970         (LTDL_ERROR_REMOVE_LOADER): New error when loader removal fails.
22971         (lt_module_open_t): renamed from lt_lib_open_t.
22972         (lt_module_close_t): renamed from lt_lib_close_t.
22973         (lt_dlloader_exit_t): renamed from lt_dlloader_exit_t.
22974         * libltdl/ltdl.c: Reordered builtin loaders so that the "dld"
22975         loader no longer occurs before "dlopen" on some platforms and
22976         after it on others.
22977         (lt_dlloader_t): Moved here from ltdl.h, added a field,
22978         "loader_name", for identifying the loader, and renamed from
22979         lt_dltype_t.  Renamed type variables to loader IFF of type
22980         lt_dlloader_t.
22981         (lt_module_t): Renamed from lt_syshandle. Renamed handle variables
22982         to module IFF of type lt_module_t.
22983         (LTDL_TYPE_TOP): Deleted.  No longer required.
22984         (sys_dl): Initialised as a struct lt_user_dlloader.
22985         (sys_dl_init): Deleted.  No longer required.
22986         (sys_dl_exit): Ditto.
22987         (sys_shl): Initialised as a struct lt_user_dlloader.
22988         (sys_shl_init): Deleted.  No longer required.
22989         (sys_shl_exit): Ditto.
22990         (sys_wll): Initialised as a struct lt_user_dlloader.
22991         (sys_wll_init): Deleted.  No longer required.
22992         (sys_wll_exit): Ditto.
22993         (sys_bedl): Initialised as a struct lt_user_dlloader.
22994         (sys_bedl_init): Deleted.  No longer required.
22995         (sys_bedl_exit): Ditto.
22996         (sys_dld): Initialised as a struct lt_user_dlloader.
22997         (sys_dld_init): Deleted.  No longer required.
22998         (sys_dld_exit): Ditto.
22999         (sys_presym): Initialised as a struct lt_user_dlloader.
23000         (lt_mod_init_t): Moved to here from ltdl.h.
23001         (lt_dlinit): Add builtin loaders using the user loader API.
23002         (lt_dlexit): Unregister and free all loaders.
23003         (lt_add_dlloader): New function to add a new module loader after the
23004         loader specified in the argument.
23005         (lt_remove_dlloader): New function to remove a module loader.
23006         (lt_next_dlloader): New function for iterating over module loaders.
23007         (lt_dlloader_name): Accessor function for name of dlloader.
23008         (lt_find_dlloader): New function to get a reference to a registered
23009         module loader.
23010         (strcmp): static implementation incase the host has none.
23011         (lt_dlgettypes, lt_dlsettypes): Removed.
23012
23013 2000-02-02  Thomas Tanner  <tanner@ffii.org>
23014
23015         * libltdl/ltdl.c: replace NULL with 0, remove unused system
23016           and app_private pointers from lt_dlhandle_t
23017         * libltdl/ltdl.c (presym_add_list): new preloaded symbols
23018           don't need to be added to the end
23019
23020         * libltdl/ltdl.c (lt_dlgetdata, lt_dlsetdata): removed
23021         * libltdl/ltdl.h: ditto
23022         * doc/libtool.texi (libltdl interface): ditto
23023
23024 2000-02-01  Thomas Tanner  <tanner@ffii.org>
23025
23026         * ltmain.in: support -dlopen/dlpreopen for libraries
23027         * NEWS: updated
23028         * TODO: updated
23029         * ltmain.in: rename dlopen to dlopen_support
23030         * ltconfig.in: ditto
23031         * doc/libtool.texi: ditto
23032
23033         * ltmain.in: check whether libraries are moved out of $libdir,
23034           replace .a and .lib with .$libext, .o and .obj with .$objext
23035
23036 2000-01-31  Gary V. Vaughan  <gary@gnu.org>
23037
23038         * libltdl/ltdl.h (lt_dlrealloc): removed declaration.
23039         * libltdl/ltdl.c (lt_dlrealloc): removed definition.
23040         (lt_dladderror): Instead of calling lt_dlrealloc, use lt_dlmalloc,
23041         and lt_dlfree.
23042
23043 2000-01-30  Ossama Othman  <ossama@debian.org>
23044
23045         * libtool.m4 (lt_cv_cc_needs_belf): Set the test language to C
23046         prior to executing the test that checks if the C compiler needs
23047         "-belf."
23048         Reported by Chris Butler <chrisb@sandy.force9.co.uk>
23049
23050 2000-01-28  Gary V. Vaughan  <gary@gnu.org>
23051
23052         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use changequote to
23053         protect `[' and `]' in deplibs_check_method.
23054
23055         * libltdl/ltdl.h (lt_dlrealloc): Added declaration.
23056         * libltdl/ltdl.c (lt_dlrealloc): Added default definition.
23057
23058         * libltdl/ltdl.c (lt_dlseterror): Catch errorcodes below 0 as
23059         invalid.
23060         * libltdl/ltdl.h (LTDL_ERROR): Added missing '_' in K&R
23061         definition.
23062
23063         * libltdl/ltdl.h (ltdl_error_table): Added missing error code, and
23064         fixed typo in another code.
23065         * doc/libtool.texi (Libltdl interface): Added missing @end
23066         clause.
23067
23068 2000-01-27  Thomas Tanner  <tanner@ffii.org>
23069
23070         * ltconfig.in: Oops, replace the remaining $objdir's
23071
23072         * ltmain.in: merge library linking code of programs and libraries,
23073           some cleanups
23074
23075 2000-01-27  Gary V. Vaughan  <gary@gnu.org>
23076
23077         * NEWS: Updated.
23078         * doc/libtool.texi (Libltdl interface): Document new entry
23079         points.
23080         * libltdl/ltdl.c (lt_dladderror): New function to add a user
23081         defined error message to the tables used by lt_dlerror().
23082         (lt_dlseterror):  New function to allow setting of last_error by
23083         user modules.
23084         (ltdl_error_strings): New preprocessor generated table of internal
23085         error diagnostic strings.
23086         (user_error_strings): New internal list of registered user error
23087         diagnostic strings.
23088         (throughout!): Use error messages from ltdl_error_strings.
23089         * libltdl/ltdl.h (ltdl_error_table): New macro to tabulate
23090         internal diagnostic error strings alongside enum keys.
23091
23092         * NEWS: Updated.
23093         * doc/libtool.texi (Libltdl interface): Document new entry
23094         points.
23095         * libltdl/ltdl.c (lt_dltype_t):  Use new type definitions for
23096         existing fields.
23097         (lt_dladdtype): New function to add a new ltdl dynamic loader
23098         type to the end of the list of valid types..
23099         (lt_dlgettypes): New function to return the complete list of ltdl
23100         dynamic loader types.
23101         (lt_dlsettypes): New function to replace the list of ltdl dynamic
23102         loader types entirely -- e.g. to prepend a new type to the
23103         existing list.
23104         (sys_dl_open, sys_dl_close, sys_dl_sym): Work with lt_syshandle.
23105         (sys_shl_open, sys_shl_close, sys_shl_sym): ditto.
23106         (sys_dld_open, sys_dld_close, sys_dld_sym): ditto.
23107         (sys_wll_open, sys_wll_close, sys_wll_sym): ditto.
23108         (sys_bedl_open, sys_bedl_close, sys_bedl_sym): ditto.
23109         (presym_open, presym_close, presym_sym): ditto.
23110         (tryall_dlopen): Call lt_lib_open_t functions lt_syshandle
23111         compatibly.
23112         (lt_dlclose): Call lt_lib_close_t functions lt_syshandle
23113         compatibly.
23114         (lt_dlsym): Call lt_find_sym_t functions lt_syshandle compatibly.
23115         (lt_dltype_t): moved type declaration from here...
23116         * libltdl/ltdl.h (lt_dltype_t): ...to here.
23117         (lt_syshandle): new type for low level system handles passed by
23118         loader functions
23119         (lt_mod_init_t):  New type for functions implementing the
23120         initialisation for an ltdl dynamic loader.
23121         (lt_mod_exit_t): Type of exit functions for the same.
23122         (lt_lib_open_t): Type of loader functions for the same.
23123         (lt_lib_close_t): Type of unloader functions for the same.
23124         (lt_find_sym_t): Type of symbol resolver functions for the same.
23125
23126         * libltdl/ltdl.c (sys_dl_init, sys_dl_exit, sys_dl_open,
23127         sys_dl_close, sys_dl_sym):  Preprocess these away on cygwin to
23128         avoid spurious error messages.
23129
23130 2000-01-24  Thomas Tanner  <tanner@ffii.org>
23131
23132         fix severe bugs reported by Elrond <Elrond@Wunder-Nett.org>
23133
23134         * ltconfig.in: replace $objdir with $output_objdir
23135
23136         * ltmain.in: change to the builddir before relinking programs
23137
23138         * ltmain.in, ltconfig.in, libtool.m4, ltdl.m4:
23139           remove unnessary spaces from line endings
23140
23141 2000-01-19  Thomas Tanner  <tanner@ffii.org>
23142
23143         * ltmain.in: rewrite of the ILD code, merge linking code for
23144           programs, libraries and objects, allow linking of shared libraries
23145           against static libraries/objects on platforms that support it
23146           but print a warning, fix some typos
23147
23148         * partially revert my previous change and
23149           update only copyright notices of files that were actually modified
23150
23151         * NEWS: update
23152
23153         * libltdl/Makefile.am: version number was wrong
23154
23155         * libltdl/ltdl.c (tryall_dlopen): revert Gary's change
23156           since it breaks dlpreopening
23157         * ltdl.m4: ditto
23158
23159         * libltdl/ltdl.c (sys_search_path): search in the system default
23160           library search path, too
23161         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): extract the path
23162
23163         * libltdl/ltdl.c (find_module): remove bogus file_not_found_error
23164
23165         * libltdl/ltdl.c (load_deplibs): implement loading of dependency
23166           libraries
23167         * libltdl/ltdl.c (unload_deplibs): implement unloading of dependency
23168           libraries
23169         * libltdl/ltdl.c (lt_dlexit): correctly close all modules and
23170           their dependencies
23171
23172         * libltdl/ltdl.c (lt_dlforeach): new function
23173         * libltdl/ltdl.h: ditto
23174         * doc/libtool.texi (using libltdl): document it
23175
23176         * libtool.m4: reformatting, only add -I$topsrc_dir/libltdl to
23177           INCLTDL
23178
23179         * libtoolize.in: reformatting
23180         * ltconfig.in: reformatting
23181         * ltmain.in: reformatting
23182
23183         * mdemo/configure.in: AC_SUBST INCLTDL
23184         * mdemo/Makefile.am: use INCLTDL
23185
23186         * tests/Makefile.am: reexport OBJEXT and EXEEXT
23187         * tests/dryrun.test: use them for building main.obj and mdemo.exe
23188
23189 2000-01-17  Gary V. Vaughan  <gary@gnu.org>
23190
23191         * libltdl/ltdl.c (tryall_dlopen): Abort with
23192         file_not_found_error before trying all lib_open() methods
23193         if the file to be dlopened doesn't exist.
23194         * ltdl.m4 (AC_HAVE_HEADERS): add unistd.h.
23195
23196 2000-01-16  Gary V. Vaughan  <gary@gnu.org>
23197
23198         * libltdl/ltdl.c (find_file): memory error fixed.
23199
23200 2000-01-14  Gary V. Vaughan  <gary@gnu.org>
23201
23202         * ltconfig.in (Usage): Now it matches the code!
23203         Reported by Jon Leichter <jon@symas.com>
23204
23205         * README:  Some notes about libtool release numbers.
23206
23207         * mdemo/README: Explain the deliberate incompleteness of the
23208         Windows port.
23209         * mdemo/configure.in: Use AC_LIBTOOL_WIN32_DLL.
23210         * mdemo/Makefile.am (LDFLAGS):  Add -no-undefined.
23211
23212         * libltdl/ltdl.h (LTDL_STMT_START, LTDL_STMT_END):  Macros for
23213         wrapping other macros to make a portable compound statement from
23214         multiple C statements in the expansion.
23215         (LTDL_SET_PRELOADED_SYMBOLS): Use the above macros to add an
23216         extern declaration for lt_preloaded_symbols, to remove
23217         dependency on undefined symbol from libltdl.dll on cygwin (and
23218         other -no-undefined architectures).
23219         * libltdl/ltdl.c (lt_preloaded_symbols): No longer defined here.
23220
23221         * libtool,m4 (AC_LIBTOOL_SETUP):  The result of lt_cv_need_dllmain
23222         was set to the opposite of what it should be.
23223         * configure.in (AC_LIBTOOL_WIN32_DLL):  Call to this macro is
23224         required for libtool configury to test lt_cv_need_dllmain on
23225         Windows.
23226
23227         * ltconfig.in (opt_cr, mingw*): replace unescaped ? with correctly
23228         escaped and portable \{0,1\} in sed expression.
23229         From Jon Leichter <jon@symas.com>
23230
23231 2000-01-13  Gary V. Vaughan  <gary@gnu.org>
23232
23233         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): Add -I${top_srcdir}/libltdl
23234         to default INCLTDL for VPATH.
23235         (AC_LIBLTDL_INSTALLABLE): ditto.
23236         Reported by Tom Tromey <tromey@cygnus.com>
23237
23238 2000-01-12  Thomas Tanner  <tanner@ffii.org>
23239
23240         * update all copyright notices to 2000
23241
23242         * doc/libtool.texi (using libltdl): document new lt_dlinfo struct,
23243           replace NULL with @code{NULL}, document lt_dlsetdata(),
23244           lt_dlgetdata() and lt_dlgetinfo()
23245         * libltdl/Makefile.am: increment interface version number
23246         * libltdl/configure.in: set version number to 1.1
23247         * libltdl/ltdl.c: make some variables public by moving them
23248           to the info struct, add support for application specific data
23249           within module handles, new lt_dlsetdata(), lt_dlgetdata() and
23250           lt_dlgetinfo() functions,
23251           fix memory leaks, minor cleanups
23252         * libltdl/ltdl.h: ditto
23253         * mdemo/main.c: demonstrate use of lt_dlgetinfo,
23254           improved handling of errors
23255
23256         * ltconfig.in: set hardcode_into_libs = yes for GNU/Hurd, Linux
23257           and Solaris, only hardcode *all* run-paths if hardcode_into_libs
23258           is set to 'all', otherwise hardcode only user-specified rpaths
23259           into libraries
23260         * ltmain.in: minor cleanups, we don't need to add user-specified
23261           rpaths to compile_rpath, finalize_rpath is sufficient
23262
23263         * ltconfig.in: transform linux* -> *linux-gnu* _after_ host_os has
23264           been set! (reported by Bruno Haible <haible@ilog.fr>)
23265
23266         * configure.in: AC_SUBST reload_flag, deplibs_check_method
23267           and file_magic_cmd
23268
23269         * README: use 'libtool --version' instead of 'ltconfig --version'
23270           (suggested by Francios Pinard <pinard@iro.umontreal.ca>
23271
23272 2000-01-10  Gary V. Vaughan  <gary@gnu.org>
23273
23274         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Leave undefined when
23275         not compiling for a Windows target.
23276         * libltdl/ltdl.c (canonicalize_path): New function to
23277         ensure internal paths use '/' directory separators.
23278         (find_file): use canonicalize_path.  Memory management
23279         changed to cope.
23280         (lt_dlopen): ditto.
23281         (free_vars): Removed `dir' and `name', which are now handled
23282         internally.
23283
23284         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Define to '/' or '\\',
23285         as suitable for the target host.
23286         (LTDL_PATHSEP_CHAR): Similarly with ':' or ';'.
23287         * libltdl/ltdl.c: Use LTDL_DIRSEP_CHAR and LTDL_PATHSEP_CHAR
23288         instead of hardcoding throughout.
23289         Reported by Jon Leichter <jon@symas.com>
23290
23291 1999-12-18  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23292
23293         * ltmain.in: Oops, `largarg' -> `lastarg'.
23294
23295         * ltmain.in (-Wc, -Xcompiler): Implemented in compile mode.
23296
23297         * ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and
23298         finalize_command.
23299         (-Wc, -Wl): Likewise.
23300
23301         * tests/quote.test: Adjust quoting style of -Wl.
23302
23303         * ltmain.in: Oops, `echo' -> `$echo'.
23304
23305         * ltmain.in (-Wl, -Wc): Make commas argument separators, just like
23306         in gcc.
23307
23308         * ltmain.in (libtool_args): Get all arguments properly enclosed in
23309         quotes and backslash-protected when needed.
23310
23311 1999-12-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23312
23313         * ltdl.m4: Renamed from...
23314         * libltdl/ltdl.m4: that no longer exists.
23315         * configure.in (ACINCLUDE_M4_LIST): Removed libltdl/acinclude.m4.
23316         * Makefile.am (aclocal_macros): Added ltdl.m4.
23317         (libltdl/acinclude.m4): Concatenate libtool.m4 and ltdl.m4.
23318         * bootstrap: Likewise.
23319         * libltdl/Makefile.am (ACLOCAL): Remove the definition.  Relying
23320         upon -I may lead to duplicates.
23321         * doc/libtool.texi: Suggest appending ltdl.m4 to acinclude.m4.
23322         * libtoolize.in: Check AC_LIB_LTDL version number in aclocal.m4.
23323
23324         * libltdl/configure.in (with_auxdir): Do not use it as the
23325         argument of AC_CONFIG_AUX_DIR, automake requires a literal here.
23326         Use AC_CONFIG_AUX_DIRS/DIR_DEFAULT instead.
23327
23328         * libltdl/Makefile.am (ACLOCAL): Define with `-I .', as in
23329         bootstrap.
23330
23331 1999-12-15  Thomas Tanner  <tanner@ffii.org>
23332
23333         * libltdl/configure.in: path to auxiliary files can be specified
23334           using --with-auxdir (idea by Howard Chu <hyc@highlandsun.com>)
23335
23336         * ltmain.in: don't remove multiple occurences from dependency_libs
23337           of a library, otherwise many dependencies would get lost
23338
23339         * bootstrap: use "aclocal -I ." instead of adding the contents
23340           of ltdl.m4 to acinclude.m4
23341
23342 1999-12-13  Gary V. Vaughan  <gary@gnu.org>
23343
23344         * NEWS: updated.
23345         * libltdl/Makefile.am: Use -no-undefined for dll compliance.
23346         * libltdl/configure.in: Use AC_LIBTOOL_WIN32_DLL for dll
23347         compliance.
23348         * libltdl/ltdl.c: Define and use LTDL_GLOBAL_DATA to correctly
23349         export global data symbols from libltdl.dll.
23350         * libltdl/ltdl.h: Define and use LTDL_SCOPE to declare data
23351         symbols as dllexport, dllimport or plain ornary extern depending
23352         in the context in which it is used.
23353
23354         * doc/libtool.texi (Distributing libltdl): document use of
23355         ltdl.m4.
23356         * libltdl/configure.in: Removed header checks, as they are
23357         automatically performed by AC_LIB_LTDL.
23358         * libltdl/ltdl.m4: Added header checks from configure.in, so that
23359         AC_LIB_LTDL is sufficient to compile ltdl.c.
23360         Reported by Stephan Kulow <coolo@kde.org>.
23361
23362         * ltconfig.in (ltdll_obj): fixed typo: objdir -> $objdir
23363
23364 1999-12-12  Gary V. Vaughan  <gary@gnu.org>
23365
23366         * ltconfig.in (cygwin*, mingw*, export_symbols_cmds): keep any
23367         DATA tags associated with symbols by recent dlltool.
23368         (cygwin*, mingw*, archive_expsym_cmds): Honor any DATA tags
23369         found in the symbol list.
23370         Reported by Jon Leichter <jon@symas.com>.
23371
23372 1999-12-10  Gary V. Vaughan  <gary@gnu.org>
23373
23374         From Stephan Kulow <coolo@kde.org>
23375         * libltdl/ltdl.m4:  Add arg 3 to AC_DEFINE's to save the user
23376         from having to hack acconfig.h.
23377
23378 1999-12-06  Gary V. Vaughan  <gary@gnu.org>
23379
23380         * NEWS: Updated.
23381         * TODO: Note some cleanups that are now needed.
23382         * libltdl/configure.in: Use the new macroised tests.
23383         * libltdl/ltdl.m4: New file, macroised tests formerly in
23384         libltdl/configure.in.
23385         Reported by Stephan Kulow <coolo@kde.org>.
23386
23387         From Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
23388         * ltconfig.in:  split off the osf3 section, so that the osf4 and
23389         osf5 sections can add `-msym' to arguments passed to the linker
23390         for shared libs.
23391
23392 1999-12-03  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23393
23394         * ltconfig.in (ac_compile): Use $ac_ext instead of .c.
23395         (ac_link): Likewise.
23396         (dlfcn.h, ac_try): Do not add filename, it is already in
23397         ac_compile.
23398         Reported by Stephane Conversy <Stephane.Conversy@lri.fr>
23399
23400         * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
23401         works together with fast_install.
23402
23403         * libtool.m4: Use host when --target is not specified.
23404
23405         * configure.in: AC_SUBST variables that are used by ltconfig to
23406         build libtool.
23407
23408         * ltconfig.in (irix6*): Do not override deplibs_check_method
23409         here.
23410
23411         * libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
23412
23413 1999-11-20  Michael Forster  <email@michael-forster.de>
23414
23415         * ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes.
23416
23417 1999-11-29  Gary V. Vaughan  <gary@gnu.org>
23418
23419         * ltconfig.in:  Be friendlier to C++ compilers when testing
23420         for dlopen support.
23421         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
23422
23423 1999-11-26  Gary V. Vaughan  <gary@gnu.org>
23424
23425         * libtool.m4:  better use of $target instead of $host to support
23426         cross compilation.
23427         Reported by Sam Latinga <slouken@devolution.com>
23428
23429 1999-11-16  Thomas Tanner  <tanner@ffii.org>
23430
23431         * configure.in: generate ltconfig and ltmain.sh before configuring
23432           libltdl
23433
23434 1999-11-04  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23435
23436         * tests/sh.test: New test to detect uses of quotes within
23437         backticks within quotes.
23438         * ltconfig.in, ltmain.in: Fix detected errors.  Mark false
23439         positives with a comment that disables the detector.
23440         Reported by Akim Demaille <akim@epita.fr>
23441
23442         * configure.in: Move ltconfig and ltmain.sh generation back...
23443         * Makefile.am: here.
23444
23445 1999-11-02  Thomas Tanner  <tanner@ffii.org>
23446
23447         * NEWS: updated
23448         * THANKS: added Olly Betts and Pavel Roskin
23449         * doc/libtool.texi: fix typo
23450
23451         * fix major bugs which rendered libtool virtually
23452           unusable (i.e. not portable):
23453         * ltconfig.in: don't hardcode system dependent variables in ltconfig!!
23454           but set sane defaults
23455         * Makefile.am: pass variables from AC_LIBTOOL_SETUP to ltconfig
23456         * libtool.m4: ditto, fix typo in AC_PROG_LD_RELOAD_FLAG
23457
23458         * ltconfig.in: use old_deplibs for archives, too
23459           remove second occurence of sysv5
23460         * ltmain.in: fix typo, fix the second occurence of -DPIC, too
23461
23462         * libltdl/Makefile.am: increment version number, fix typo
23463         * libltdl/ltdl.c (lt_dlsym): don't report an error if the
23464           libltdl-style symbol name wasn't found
23465
23466 1999-11-02  Wolfgang Rapp <ulris@bn-ulm.de>
23467
23468         * ltconfig.in: add support for Unixware (sysv4.2uw2*)
23469
23470 1999-10-29  Gary V. Vaughan  <gary@gnu.org>
23471
23472         * ltmain.in:  Damnit!  Cygwin cvs committed all the
23473         dos line endings.
23474
23475 1999-10-28  Stephane Conversy  <Stephane.Conversy@lri.fr>
23476
23477         * ltmain.in (-DPIC):  changed the order of pic flags a little to
23478         prevent upsetting the sgi c++ compiler.
23479
23480 1999-10-28  Olly Betts  <olly@muscat.co.uk>
23481
23482         * ltconfig.in (opt_cr):  Handle crlf sequences output by the
23483         mingw toolchain.
23484
23485         * libtool.m4:  Third time lucky, with Tor's patch.
23486
23487 1999-10-19  Tor Lillqvist  <tml@iki.fi>
23488
23489         * libtool.m4:  these was a missing `*' in the -mno-cygwin
23490         match.
23491         * ltconfig.in (cygwin, ltdll_obj): fixed a quoting error.
23492         (export_symbols_cmds): added missing cosmetic newline.
23493
23494 1999-10-18  Tor Lillqvist  <tml@iki.fi>
23495
23496         * libtool.m4: test command used == which should be =.
23497         Support -mno-cygwin flag for building mingw32 dlls.
23498         * ltconfig.in (file_magic_cmd): add missing quotes.
23499         (deplibs_check_method): and here.
23500
23501 1999-10-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23502
23503         * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
23504         specified library is not just a basename.
23505
23506 1999-10-10  Gary V. Vaughan  <gary@gnu.org>
23507
23508         * libtool.m4 (AC_PATH_FILE): new macro replaces
23509         AC_PATH_TOOL_GREP_OUTPUT.
23510         (AC_PATH_TOOL_PREFIX): new macro replaces
23511         AC_PATH_PROG_GREP_OUTPUT.
23512         (AC_LD_RELOAD_FLAG):  migrated from ltconfig.in.
23513         (AC_DEPLIBS_CHECK_METHOD): ditto.
23514         * ltconfig.in (reload_flag): moved to libtool.m4.
23515         (deplbs_check_method): ditto.
23516
23517 1999-10-07  Gary V. Vaughan  <gary@gnu.org>
23518
23519         * libtool.m4 (AC_PATH_PROG_VERSION_GREP): removed in favour of the
23520         more general AC_PATH_PROG_GREP_OUTPUT.
23521         (AC_PATH_TOOL_VERSION_GREP): removed in favour of the more general
23522         AC_PATH_TOOL_GREP_OUTPUT.
23523         (AC_PROG_LIBTOOL):  Search for a working find program in the
23524         user's PATH using the new macros.
23525
23526 1999-10-06  Gary V. Vaughan  <gary@gnu.org>
23527
23528         * NEWS: updtaed.
23529         * ltconfig.in: Accept osf5.
23530         Reported by Sascha Schumann <sascha@schumann.cx>
23531
23532 1999-10-04  Gary V. Vaughan  <gary@gnu.org>
23533
23534         * ltmain.in (-no-install):  This doesn't work on win32 since
23535         the search path for libraries is not encoded in the binary,
23536         and dlls not in $PATH won't be found.  Fall back to -no-fast-install
23537         instead.
23538
23539         * ltmain.in (-no-fast-install):  Wrapper script used to add the
23540         exeext on again when naming the wrapped executable.
23541
23542 1999-10-03  Gary V. Vaughan  <gary@gnu.org>
23543
23544         * ltconfig.in:  Set $FILE to @FILE@ for substitution with
23545         the value found in libtool.m4 at configure time.
23546         * libtool.m4 (AC_PATH_TOOL_GREP_VERSION):  New macro, combines
23547         AC_PATH_PROG and AC_CHECK_TOOL with a test which greps the
23548         output of $ac_dir/${ac_prefix}<tool> --version for a
23549         given regex.
23550         (AC_PATH_PROG_GREP_VERSION):  New macro used by the above.
23551         (AC_LIBTOOL_SETUP): Use the new macros to search the PATH
23552         [starting at /usr/bin] for a file program which accepts
23553         --version and has "file" in its --version output.
23554
23555 1999-10-03  Thomas Tanner  <tanner@ffii.org>
23556
23557         * NEWS: new -no-install flag
23558         * configure.in: fix typo
23559         * doc/libtool.texi(Link mode): document -no-install flag,
23560           correct -no-fast-install docs
23561         * libtool.m4: check for "file" command
23562         * ltconfig.in: don't hardcode /usr/bin/file, remove second
23563           definition of sysv5, replace linkopts -> linker_flags
23564         * ltmain.in: add new -no-install flag, print help for -no-install
23565           and -no-fast-install flags
23566
23567 1999-10-03  Olly Betts <olly@muscat.co.uk>
23568
23569         * ltmain.in: always create output_objdir
23570
23571 1999-10-03  Pavel Roskin  <pavel_roskin@geocities.com>
23572
23573         * libltdl/Makefile.am: don't preserve file attributes when
23574           installing the libltdl sources
23575
23576 1999-10-01  Gary V. Vaughan  <gary@gnu.org>
23577
23578         * configure.in (AC_OUTPUT_COMMANDS): generate ltmain.sh
23579         * Makefile.am (ltmain.sh ltconfig): removed.  Automake inserts the
23580         rules to automatically call config.status.
23581
23582         * libtool.m4: be sure to AC_SUBST values no longer tested in
23583         ltconfig.in.
23584         * ltconfig.in: replaced several of the simple feature tests with
23585         substitutions from config.status.
23586         * Makefile.am (ltconfig): generate ltconfig with config.status.
23587         * configure.in (AC_OUTPUT): generate ltconfig with config.status.
23588
23589 1999-09-30  Donald Anderson  <dda@world.std.com>
23590
23591         * ltconfig.in (sco3.2v5): use pass_all deplibs_check_method
23592         for SCO3.2.
23593
23594 1999-09-29  Gary V. Vaughan  <gary@gnu.org>
23595
23596         * ltconfig.in (whole-archive-flag-spec):  I had been
23597         wondering why my file system was filling up with empty
23598         files named `71'... seems I forgot to hold in the
23599         shift key when redirecting stderr, 2>&1.  Doh!
23600
23601 1999-09-29  Vadim  <vadim@olly.ru>
23602
23603         * ltconfig.in (sysv):  More UW7 support.
23604
23605 1999-09-28  Albert Cheng  <acheng@ncsa.uiuc.edu>
23606
23607         * ltmain.in (shlibpath_var): ensure the variable is non-empty before
23608         exporting it.
23609
23610 1999-09-27  Manfred Weichel  <weichel@global.nacamar.de>
23611
23612         * ltconfig.in (sysv5): Added support required for shared
23613         library linking on SCO UW7.
23614
23615 1999-09-22  Gary V. Vaughan  <gary@gnu.org>
23616
23617         * ltconfig.in (whole-archive-flag-spec): test whether the
23618         version of GNU ld being used understands --whole-archive
23619         before using it.
23620
23621 1999-09-19  Thomas Tanner  <tanner@ffii.org>
23622
23623         * ltmain.in: don't ignore convenience libraries for objects/archives
23624           (temporary hack)
23625
23626 1999-09-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23627
23628         * ltconfig.in (CDPATH): Set to `:' instead of empty.
23629         * ltmain.in (CDPATH): Likewise.
23630         Reported by Greg McGary <gkm@eng.ascend.com>
23631
23632 1999-08-24  Gary V. Vaughan  <gary@gnu.org>
23633
23634         * ltconfig.in (ltdll.c, impgen.c): Prevent the shell from
23635         expanding variables & backslash escapes when writing these
23636         files to the libtool script.
23637
23638 1999-08-24  Thomas Tanner  <tanner@ffii.org>
23639
23640         * NEWS: mention fixes
23641         * doc/PLATFORMS: GNU/Hurd update
23642         * depdemo: make use of variables
23643         * ltconfig.in: use CC -E when checking for ELF support
23644           on NetBSD (reported by Todd Vierling <tv@pobox.com>),
23645           replace all occurences of 'linkopts' with 'linker_flags'
23646         * ltmain.in: move ltdll.c and impgen.c to ltconfig.in and
23647           only add them to the libtool script if it's necessary
23648
23649 1999-08-24  Boyd Gerber  <gerberb@zenez.com>
23650
23651         * ltconfig.in: add support for UnixWare 7.X.X
23652         * doc/PLATFORMS: add new platforms
23653
23654 1999-08-24  Pavel Roskin  <pavel_roskin@geocities.com>
23655
23656         * doc/libtool.texi: document use of noinst_LTLIBRARIES for
23657           convenience libraries
23658
23659         * ltconfig.in: check for freebsdelf3, not just freebsd3.
23660         Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1
23661
23662         * ltmain.in: enable workaround for freebsdelf3.0
23663
23664 1999-08-24  Bert Driehuis  <bert_driehuis@nl.compuware.com>
23665
23666         * ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
23667
23668 1999-08-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
23669
23670         * libltdl/COPYING.LIB: Update to version 2.1.
23671         * libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.
23672
23673 1999-08-03  Gary V. Vaughan  <gary@gnu.org>
23674
23675         * libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return
23676         stripping.
23677         * ltconfig.in: ditto.
23678         From Olly Betts <olly@muscat.co.uk>
23679
23680 1999-08-02  Olly Betts  <olly@muscat.co.uk>
23681
23682         * doc/libtool.texi (Compile mode): typo correction.
23683         (Link mode): and another.
23684         (Release numbers):  and another.
23685         (Distributing libltdl): and another.
23686         (Test descriptions): and another.
23687         (libtool script contents): and one more.
23688
23689         * libtool.m4 (AC_PROG_LD): strip carriage returns from the
23690         output of gcc -print-prog-name=ld.
23691         * ltconfig.in: ditto.
23692
23693 1999-07-30  Pavel Roskin  <pavel_roskin@geocities.com>
23694
23695         * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
23696         initialised structures are sometimes emitted in the code section.
23697
23698 1999-07-30  Mumit Khan  <khan@xraylith.wisc.edu>
23699
23700         * ltconfig.in:  Read line at a time to avoid tokenisation by
23701         shell.
23702
23703 1999-07-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
23704
23705         * ltmain.in: Fix creation of relative links to object files in
23706         sub-dirs.
23707
23708 1999-07-29  Olly Betts  <olly@muscat.co.uk>
23709
23710         * ltconfig.in(cygwin mingw32, archive_expsym_cmds): Only compile
23711         and link ltdll.c if the libtool.m4 macros discovered that it is
23712         required.
23713
23714 1999-07-26  Olly Betts  <olly@muscat.co.uk>
23715
23716         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops.  Fix some
23717         typos made by Evil Gary while (mis)applying my patch :-).
23718
23719         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP):  On second
23720         thoughts, only probe for -mdll vs -dll on mingw, and revert to
23721         the old `-Wl,--dll -nostartfiles' on cygwin.
23722
23723 1999-07-24  Erez Zadok  <ezk@cs.columbia.edu>
23724
23725         * doc/PLATFORMS (i*86-*openbsd2.5):  New platform.
23726         Slight reordering of other bsd entries.
23727
23728 1999-07-24  Olly Betts  <olly@muscat.co.uk>
23729
23730         * NEWS: Note new user visible changes.
23731         * libtool.m4 (mingw32, AC_LIBTOOL_SETUP): probe for -mdll vs -dll
23732         under cygwin/mingw.
23733         probe whether the cygwin/mingw library supplies a stub DllMain
23734         (but this information isn't yet used).
23735         * ltconfig.in (mingw32, extract_expsyms_cmds): if HOST_CC is set,
23736         use that to build impgen so we can use it when cross-compiling.
23737         use correct entry points for mingw so static C++ constructors get
23738         called for code in the DLL.
23739         * ltmain.in (impgen.c): define O_BINARY to 0 if it is not in the
23740         system headers.
23741
23742 1999-07-24  Bert Driehuis <bert_driehuis@compuware.com>
23743
23744         * ltconfig.in:  Updated bsdi4 soname specs to be more like
23745         linux as discussed on the bsdi mailing list.
23746
23747 1999-07-20  Gary V. Vaughan  <gary@gnu.org>
23748
23749         * configure.in (AC_PROG_RANLIB):  No longer required as we now use
23750         AC_CHECK_TOOL in AC_LIBTOOL_SETUP.
23751         * libtool.m4 (AC_PROG_LIBTOOL):  Pass the $build variable to
23752         ltconfig.
23753         (AC_PROG_RANLIB): replaced with AC_CHECK_TOOL.
23754         * ltconfig.in (build): new variable to hold the build triplet
23755         which is now checked for unless --no-verify is specified.
23756         (--build): new argument to set the build triplet.
23757         (ranlib): Prefer ${host_alias}-ranlib[.exe] if $build is different
23758         to $host.
23759         * doc/libtool.texi (Invoking ltconfig): Document --build option.
23760         * NEWS: Note --build option.
23761
23762 1999-07-19  Erez Zadok  <ezk@cs.columbia.edu>
23763
23764         * doc/PLATFORMS: Updated mostly *bsd platforms.
23765
23766 1999-07-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
23767
23768         * doc/libtool.texi (Porting inter-library dependencies): Typos
23769         Reported by Petter Reinholdtsen <pere@hungry.com>
23770
23771 1999-07-17  Thomas Tanner  <tanner@ffii.org>
23772
23773         * NEWS, TODO: updated (pic flags)
23774         * libtool.m4 (AC_PROG_LIBTOOL): added --with-pic flag
23775         * ltconfig.in: new pic_mode variable and --prefer[-non]-pic flags,
23776           fixed the strip check (reported by Keith Bostic <bostic@bostic.com>)
23777         * ltmain.in (compile mode): build only PIC/non-PIC code depending
23778           on pic_mode
23779         * libltdl/README: document the supported dlopen interfaces
23780         * doc/libtool.texi (tests): documented new tests
23781         * tests/Makefile.am: added new tests
23782         * tests/demo-pic.test: new test to test --with-pic
23783         * tests/demo-nopic.test: new test to test --without-pic
23784         * tests/build-relink2.test: variant of build-relink.test that
23785           uses depdemo
23786
23787 1999-07-09  Olly Betts  <olly@muscat.co.uk>
23788
23789         * doc/libtool.texi (C++ Libraries):  fixed a typo.
23790
23791 1999-07-06  Gary V. Vaughan  <gary@gnu.org>
23792
23793         * README-alpha:  improved the release instructions to mention
23794         actual list addresses for announcements, and urls for upload
23795         locations.
23796
23797 1999-07-03  Thomas Tanner  <tanner@ffii.org>
23798
23799         * doc/PLATFORMS: 1.3b passes all tests on cygwin
23800
23801 1999-07-03  Pavel Roskin <pavel_roskin@geocities.com>
23802
23803         * ltconfig.in: finish_cmds for FreeBSD removed
23804         * depdemo/l3/Makefile.am: install libl3.la into an extra directory
23805
23806 1999-07-02  Gary V. Vaughan  <gary@gnu.org>
23807
23808         * configure.in: bumped version to 1.3c.
23809
23810         GNU libtool 1.3b was released.
23811
23812         * NEWS: inserted todays date.
23813
23814 1999-07-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
23815
23816         * doc/PLATFORMS: Tested on as many platforms as possible for me.
23817
23818 1999-07-01  Thomas Tanner  <tanner@ffii.org>
23819
23820         * NEWS: updated
23821         * doc/PLATFORMS: updated
23822         * changed my email address
23823
23824 1999-06-30  Thomas Tanner  <tanner@ffii.org>
23825
23826         * demo/foo.h: use LT_PARAMS instead of LTDL_PARAMS (this is not libltdl)
23827         * tests/build-relink.test: also check for hardcode_into_libs = yes,
23828           if set, we need to relink at install-time
23829
23830 1999-06-29  Thomas Tanner  <tanner@ffii.org>
23831
23832         * NEWS: mention -no-fast-install, rename dummy to force
23833         * doc/PLATFORMS: 1.3b passes all tests on GNU/Linux,
23834           FreeBSD (2.2.6 and 3.1)
23835         * doc/libtool.texi: it's possible to link libtool libraries
23836           using -L and -l, better documentation of uninstall and clean mode,
23837           rename dummy to force, documented -no-fast-install,
23838           AC_LIBLTDL_* must be called before AC_PROG_LIBTOOL,
23839           documented hardcode_into_libs and striplib/old_striplib,
23840         * ltconfig.in: search for strip program, added hardcode_into_libs
23841           and striplib/old_striplib variables, set strip commands for GNU strip,
23842           on FreeBSD >= 3.2 set hardcode_into_libs to yes,
23843           fast-install mode doesn't work if hardcode_into_libs = yes
23844         * ltmain.in: reimplemented hardcoding into libraries:
23845           new relink mode, preserve all libtool args, relink libraries
23846           when installing if necessary
23847           added -no-fast-install flag, removed unnecessary `dlname'
23848           initialization, use striplib/old_striplib for stripping libraries,
23849           dlname is always soname or in library_names so we don't need
23850           to handle different file names
23851
23852 1999-06-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
23853
23854         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to yes
23855         up to release 3.1, and to no from 3.2 on.
23856         Reported by Pavel Roskin <pavel_roskin@geocities.com>
23857
23858 1999-06-29  Pavel Roskin <pavel_roskin@geocities.com>, Alexandre Oliva  <oliva@dcc.unicamp.br>
23859
23860         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to
23861         yes; tested on 3.1-ELF by Pavel and on 2.2.6 by Alexandre.
23862
23863 1999-06-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
23864
23865         * ltconfig.in (linux-gnu*, deplibs_check_method): Use pass_all on
23866         alpha, x86 and sparc architectures by now, reverting to file_magic
23867         at least on ARM, where it breaks.
23868
23869 1999-06-23  Thomas Tanner  <tanner@ffii.org>
23870
23871         * NEWS: updated
23872         * README: added GNU Hurd to the supported platforms
23873         * doc/libtool.texi: document `-dlpreopen dummy'
23874           instead of `-dlopen dummy'
23875         * libltdl/ltdl.c (strchr): fixed typo (missing star)
23876
23877 1999-06-23  Stephan Kulow <coolo@itm.mu-luebeck.de>
23878
23879         * libltdl/ltdl.c (strrchr): fixed typo (missing star)
23880         * libltdl/ltdl.c (trim): use `const' to silence -Wwrite-strings
23881
23882 1999-06-23  Olly Betts  <olly@muscat.co.uk>
23883
23884         * ltmain.in (ltdll.c): Support for crosscompiling from linux to
23885         mingw32.
23886
23887 1999-06-23  Gary V. Vaughan  <gary@gnu.org>
23888
23889         * ltconfig.in (cygwin, export_symbols_cmds): If there is already
23890         an extracted and compiled ltdll.c, then don't delete, reextract
23891         and recompile.
23892         (cygwin, archive_expsym_cmds): Make sure the ltdll source has been
23893         extracted and compiled before referencing the object, since there
23894         are paths through the code which run archive_expsym_cmds without
23895         running export_symbols_cmds.
23896
23897 1999-06-20  Gary V. Vaughan  <gary@gnu.org>
23898
23899         * ltconfig.in:  moved the test for NM after the test for
23900         no_builtin_flag.
23901
23902 1999-06-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
23903
23904         * ltconfig.in: Use sed '$q' instead of sed "" for copying ltmain,
23905         just in case some sed does not support an empty command.
23906
23907         * ltconfig.in (link_static_flag, ac_cv_prog_cc_static): Use the
23908         latter in the test.
23909
23910 1999-06-18  Thomas Tanner  <tanner@ffii.org>
23911
23912         * ltconfig.in (bsdi4, deplibs_check_method): use a less restrictive
23913           regex (reported by Chris P. Ross <cross@eng.us.uu.net>)
23914         * ltmain.in: support `-dlopen dummy', define lt_preloaded_symbols
23915           if dlself != no
23916         * doc/libtool.texi (Compile and Link mode): document it,
23917           documented the -Wc, -Wl flags, libtool does also support non C
23918           source code
23919
23920 1999-06-18  Teun Burgers  <burgers@ecn.nl>
23921
23922         * ltconfig.in: CR/LF fix for broken DJGPP bash
23923         * ltmain.in: CR/LF fix for DJGPP
23924
23925 1999-06-18  Gary V. Vaughan  <gary@gnu.org>
23926
23927         * ltmain.in (outputname): When generating the executable wrapper
23928         script, $outputname already has the $exeext suffix, so we needn't
23929         add it again.
23930
23931 1999-06-16  Gary V. Vaughan  <gary@gnu.org>
23932
23933         * libltdl/configure.in (ac_cv_lib_dl_dlopen): missing "x" in test
23934         comparison corrected.
23935
23936         * libltdl/ltdl.c (sys_wll_open): libltdl expects this function to
23937         fail if it is unable to physically load the library.  Sadly,
23938         LoadLibrary will search the loaded libraries for a match and
23939         return one of them if the path search load fails.  Simulate a
23940         failure in this case for compatibility with the other APIs.
23941         Also, LoadLibrary takes the liberty of adding `.dll' to library
23942         names passed without an extension, we now add a trailing `.' to
23943         prevent this from happening.
23944
23945 1999-06-15  Gary V. Vaughan  <gary@gnu.org>
23946
23947         * libltdl/ltdl.c (sys_wll_close): Strangely enough, Microsoft have
23948         decided that LoadLibrary returns `0' for success, yet FreeLibrary
23949         returns `0' for failure!  The FreeLibrary call used to interpret
23950         `0' as success for both functions.
23951
23952 1999-06-14 Thomas Tanner  <tanner@ffii.org>
23953
23954         * ltconfig.in: use eval when setting have_dlfcn_h, reformatting
23955
23956 1999-06-12 Thomas Tanner  <tanner@ffii.org>
23957
23958         * ltmain.in: store old archives in deplibs and old_deplibs,
23959           retain the order of dependency libraries (even old archives),
23960           determining the absolute directory name didn't work due to a typo,
23961           add the library search paths of all dependency libraries when
23962           linking a library (fixes IRIX 5.2 bug)
23963
23964 1999-06-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
23965
23966         * ltconfig.in: Reverted June 6's patch for new GNU ld output, it
23967         is no longer needed, as ld reverted to the original format.
23968         * NEWS: Likewise.
23969
23970         * ltconfig.in: When testing self-dlopening, test whether dlclose
23971         crashes.  On FreeBSD 3.1, it does.  :-(
23972         * libltdl/configure.in: Likewise.
23973         * NEWS: Note work-around.
23974         Reported by Pavel Roskin <pavel_roskin@geocities.com>
23975
23976 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
23977
23978         * ltconfig.in (exeext): autoconf's AC_EXEEXT uses "no" to indicate
23979         no extension, and we must do the same in order to share the cache
23980         value. Also we must ignore conftest.err which HPsUX (at least)
23981         fills with gratuitous warnings.
23982         (objext): for consistency, do the same as above.
23983         Reported by Pavel Roskin <pavel_roskin@geocities.com>
23984
23985 1999-06-09  Pavel Roskin  <pavel_roskin@geocities.com>
23986
23987         * ltconfig.in (exeext): Use quotes in the test, to prevent a
23988         failure in sh.test.
23989
23990 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
23991
23992         * ltconfig.in: Reordered tests to be more like configure.in's
23993         recommended order (programs first, then libraries, etc.).
23994         Performed a manual ``constant folding pass'' (eg: s/eval "test
23995         \"echo '$''{'lt_cv_dlopen'+set}'`\" != set/test
23996         "${lt_cv_dlopen+set}" != set/).
23997         s/test "${foo+set}" = "set"/test "X${foo+set}" = Xset/g
23998
23999         * ltconfig.in (link_static_flag): Accept, in order of decreasing
24000         preference: the cached value; the default value for the current
24001         host.  Also test that the compiler accepts the flag, and cache
24002         that result too.
24003
24004         * ltconfig.in (pic_flag): Accept, in order of decreasing
24005         preference:  the cached value; the default value for the current
24006         host.  Also test that the compiler accepts the flag, and cache
24007         that result too.
24008
24009 1999-06-08  Gary V. Vaughan  <gary@gnu.org>
24010
24011         * ltconfig.in (LN_S): Accept, in order of decreasing preference:
24012         the cached value; an environment setting; ``ln -s'' if it works;
24013         ``ln'' if ``ln -s'' doesn't appear to work.
24014
24015         * ltconfig.in (objext): Accept, in order of decreasing preference:
24016         the cached value; the result of a test object compilation.
24017
24018         * ltconfig.in (RANLIB): Accept, in order of decreasing preference:
24019         the cached value; an environment setting; the first file called
24020         ``ranlib'' in the user's path.
24021
24022         * ltmain.in (exeext): Use $exeext when working out the names of
24023         programs (but not the wrapper script itself due to a stupidity in
24024         win32 which hardwires the .exe extension to the binary loader!).
24025         * ltconfig.in (exeext): Now that the wrapper script tries to move
24026         executables, we need to know whether they have an extension (ala
24027         AC_EXEEXT).  Since we can't rely on AC_EXEEXT having been called
24028         in configure.in, we must be able to check for ourselves, though we
24029         can look for a cached result incase AC_EXEEXT was called.
24030
24031         * ltconfig.in (cygwin, pic_flag):  Force separate compilation of
24032         objects for dlls vs. objects for static archives.  Using a cpp
24033         macro also allows us to decide whether or not we need to use
24034         dllexport/import declarations.
24035
24036         * ltconfig.in (cygwin, need_version): Set to no, otherwise module
24037         dll's end up with mighty long names!
24038
24039 1999-06-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
24040
24041         * ltconfig.in: Support new GNU ld --help output format.
24042         * NEWS:  Likewise.
24043         Reported by Gaël Quéri <gael@baoule.dyndns.org> and
24044         H.J. Lu <hjl@varesearch.com>.
24045
24046 1999-06-05  Mark Kettenis  <kettenis@gnu.org>
24047
24048         * ltconfig.in: Update support for the Hurd.  Make sure that the
24049         soname includes the major version number and create the right
24050         links.  Allow shared objects without the `lib' prefix and without
24051         version information.
24052
24053 1999-06-02 Nick Rasmussen <nick@jive.org>
24054
24055         * ltmain.in (link): use "$nonopt" as the compiler for
24056           compile/finalize_command
24057
24058 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24059
24060         * TODO: Remove the short list of people interested in C++
24061         constructors; it's not meaningful, since there are so many more
24062         people requesting this feature, and we just can't maintain it
24063         accurate.
24064
24065 1999-05-27  Pavel Roskin  <pavel_roskin@geocities.com>
24066
24067         * ltconfig.in (GNU Hurd, deplibs_check_method): Use pass_all.
24068
24069 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>, Olly Betts  <olly@muscat.co.uk>
24070
24071         * ltmain.in: Expand convenience libraries when creating reloadable
24072         objects.
24073         * NEWS: Ditto.
24074
24075 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24076
24077         * NEWS: Mention the two bugfixes below.
24078
24079         * ltmain.in: Only create directory into which to extract
24080         convenience libraries when $convenience is not empty.  It would
24081         always be created on systems that did not support
24082         whole_archive_flag_spec.
24083
24084         * ltconfig.in (export_symbols_cmds): Add $convenience.
24085         (cygwin, export_symbols_cmds): Ditto.
24086         * ltmain.in: Generate export symbol list before expanding
24087         convenience libraries, to avoid passing whole_archive_flag_spec to
24088         $NM.
24089         Reported by Godmar Back <gback@cs.utah.edu>
24090
24091 1999-05-27  David Jones  <jones@mosaid.com>
24092
24093         * libltdl/ltdl.c (LTDL_BIND_FLAGS): Remove BIND_VERBOSE, to avoid
24094         printing error messages.
24095
24096 1999-05-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
24097
24098         GNU libtool 1.3.2 was released.
24099
24100 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24101
24102         * NEWS: List fixed problems.
24103         * doc/PLATFORMS: Tested for 1.3.2.
24104
24105         * config.guess: Synch with GNU common.
24106
24107         * ltmain.in: Revert to stripping .exe on all platforms.
24108         * TODO: Note about this problem.  Demo is fixed on win32.  Support
24109         `empty' convenience libraries.
24110
24111         * ltconfig.in (solaris*, ld_shlibs): Do not enable shared
24112         libraries with GNU ld 2.8.*, it's broken.  Emit a warning
24113         suggesting an upgrade.
24114         Reported by Brian Ford <ford@vss.fsi.com> and Ronald Pijnacker
24115         <Ronald.Pijnacker@best.ms.philips.com>
24116
24117 1999-05-25  Frank Ch. Eigler <fche@cygnus.com>
24118
24119         * ltmain.in: file_magic check would not avoid cyclic links.
24120
24121 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24122
24123         * depdemo/main.c, depdemo/l1/l1.c, depdemo/l2/l2.c: K&R-ize.
24124         * depdemo/l3/l3.c, depdemo/l4/l4.c: Likewise.
24125
24126         * ltmain.in: Remove object files before writing to them, to avoid
24127         circular links.
24128         Reported by Ron O'Hara <rono@sentuny.com.au>
24129
24130 1999-05-24 Thomas Tanner  <tanner@ffii.org>
24131
24132         * NEWS: support for installing stripped libraries using GNU strip
24133         * ltconfig.in: set deplibs_check_method=pass_all on FreeBSD,
24134           Linux and Solaris since no one can reproduce the famous deplibs
24135           bug
24136         * ltmain.in: preserve $CC (reported by Tom Tromey),
24137           strip libraries using GNU strip if it's available and the
24138           -s flag was passed to "install"
24139
24140 1999-05-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
24141
24142         * doc/PLATFORMS: Release 1.3.1 passes on GNU Hurd/x86.
24143         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24144
24145 1999-05-23 Thomas Tanner  <tanner@ffii.org>
24146
24147         * ltmain.in: strip off the .exe suffix only on *Win
24148           (Reported by Matthew D. Langston <langston@SLAC.Stanford.EDU>)
24149
24150 1999-05-22 Thomas Tanner  <tanner@ffii.org>
24151
24152         * NEWS: updated
24153         * TODO: -Wc, -Wl, implemented
24154         * AUTHORS: changed my email address
24155         * doc/libtool.texi: fix "wierd" typo :)
24156         * ltmain.in: linking against convenience libraries was broken,
24157           implemented the "-Wc," "-Wl," "-Xcompiler" "-Xlinker" flag for
24158           compiler and linker-specific flags,
24159           add -lc before we do the deplibs check
24160         * ltconfig.in: linkopts -> compiler_flags for $CC and linker_flags
24161           for $LD, link_all_deplibs=yes on IRIX
24162
24163 1999-05-22  Gary V. Vaughan  <gary@gnu.org>
24164
24165         * NEWS: insert todays date alongside 1.3.1 release.
24166         * Makefile.in: use gnu not gnits rules
24167         * config.guess: synch with gnu common & apply Takabatake-san's
24168         MIPS *000 patch.
24169         * config.sub: synch with gnu common.
24170
24171 1999-05-22  Doug Evans  <devans@casey.cygnus.com>
24172
24173         * libltdl/configure.in (dlerror): Fix typo in dlopen found in -ldl
24174         test.
24175
24176 1999-05-21  Pavel Roskin  <pavel_roskin@geocities.com>
24177
24178         * Makefile.am (EXTRA_DIST): Don't distribute instutils.
24179         (install-data-hook): use libltdl/Makefile.am's local-install files
24180         rule.
24181         * libltdl/Makefile.am (local-install-files):  New rule to install
24182         libltdl without creating links or mode 777 directories.
24183         * instutil/*: deleted.
24184
24185 1999-05-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
24186
24187         * doc/PLATFORMS: Updated to 1.3.1 for all platforms I've got.
24188         Added sparc-unknown-linux-gnu.
24189
24190 1999-05-21  Gary V. Vaughan  <gary@gnu.org>
24191
24192         * demo/foo.h: s/PARAMS/LTDL_PARAMS/g
24193         * libltdl/ltdl.h: ditto.
24194         * libltdl/ltdl.c: ditto.
24195
24196         * demo/foo.h: s/__P/PARAMS/g
24197         * libltdl/ltdl.h: ditto.
24198         * libltdl/ltdl.c: ditto.
24199         Reported by Akim Demaille <demaille@inf.enst.fr>
24200
24201 1999-05-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
24202
24203         * NEWS: Updated docs.
24204         * TODO: Recommend libtool.m4 to be inserted in acinclude.m4. AIX
24205         4.3.2.0 no longer fails on static dlopening.  GNU DLD no longer
24206         has to support .la files, since libltdl already does.  Convenience
24207         libraries and reloadable objects should be tested in the
24208         testsuite.  We could support some amount of control on the soname
24209         of libraries.
24210         * doc/libtool.texi: Notes about convenience libraries and
24211         automake.  Documented INCLTDL.
24212
24213 1999-05-20 Thomas Tanner  <tanner@gmx.de>
24214
24215         * cdemo/main.c: "Welcome _to_ ..."
24216         * mdemo/main.c: ditto
24217         * libltdl/configure.in: support multiple dlopening mechanisms
24218           at once
24219         * libltdl/ltdl.c: prefix system dependent functions with "sys_"
24220           to avoid symbol conflicts (libdld didn't work)
24221         * libtool.m4 (AC_LIBLTDL_*): set INCLTDL to the path of ltdl.h
24222         * ltconfig.in: check for dlopen with -ldl first
24223
24224 1999-05-19  Gary V. Vaughan  <gary@gnu.org>
24225
24226         * NEWS: Added 1.3.1 news items.
24227         * doc/PLATFORMS: updated the boxes I have access to, to 1.3.1
24228         in preparation for the next release.
24229
24230 1999-05-18  Gary V. Vaughan  <gary@gnu.org>
24231
24232         * ltconfig.in (cygwin*, whole_archive_flag_spec): dlltool chokes
24233         on this, so leave it unset in this case so that the ltmain code
24234         knows it has to unpack convenience archives by itself.
24235
24236 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
24237
24238         * ltmain.in: Do not exit when an unknown library name is passed
24239         passed in, simply warn and continue since some compilers require
24240         -LANG:* like options to work.
24241         Reported by Adam C. Powell, IV <adam.powell@nist.gov>
24242
24243 1999-05-17  Jiro Takabatake  <jiro@din.or.jp>
24244
24245         * ltconfig.in: port to NEC UX/4800.
24246         * NEWS: updated.
24247
24248 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
24249
24250         * ltconfig.in (beos*, deplibs_check_method): set to pass_all.  BeOS
24251         is PIC by default.
24252         Reported by "Shawn T . Amundson" <amundson@gimp.org>
24253
24254         * libltdl/configure.in: Fix test failures on AIX 4.3.2 by checking
24255         for dlopen *with* -ldl first.
24256         Reported by Greg Wooledge <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
24257
24258         * demo/foo.h: Don't set any declspecs until we have full dll
24259         support.
24260
24261 1999-05-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
24262
24263         * ltconfig.in (solaris2.6, whole_archive_flag_spec): Do not use
24264         -Wl for allextract.
24265
24266 1999-05-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
24267
24268         * instutil/chmod: New script to avoid chmod'ing files while
24269         installing libltdl's sources.
24270         * instutil/ln: New script to avoid hard-linking libltdl's sources
24271         in the install tree.
24272         * Makefile.am (EXTRA_DIST): Dist them.
24273         (instal-data-hook): Add srcdir/instutil to the beginning of the
24274         PATH before installing libltdl's sources.
24275
24276 1999-05-09  Gary V. Vaughan  <gary@gnu.org>
24277
24278         * TODO: updated.
24279
24280 1999-05-06  Gary V. Vaughan  <gary@gnu.org>
24281
24282         * Makefile.am (install-data-hook):  make sure the install directory
24283         is not left world writable.
24284         Reported by Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
24285
24286 1999-04-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
24287
24288         * libtool.m4: Use ifelse instead of if.
24289         Reported by David Mazieres <dm@amsterdam.lcs.mit.edu>
24290
24291 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24292
24293         GNU Libtool 1.3 was released.
24294
24295         * NEWS: Summarize news from 1.2 to 1.3.
24296
24297         * ltmain.in: Save exit status of link_command before removing
24298         symbol table object file.
24299
24300 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
24301
24302         * doc/PLATFORMS: updated my hpux-10.20 and cygwin box entries.
24303
24304 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24305
24306         * NEWS: Improved support for DU and IRIX too.
24307
24308         * config.sub, config.guess: Updated from GNU common.
24309
24310         * mdemo/configure.in: Move AC_LIBLTDL_CONVENIENCE before
24311         AM_PROG_LIBTOOL, as suggested by autoconf.
24312
24313         * doc/libtool.texi (Distributing libltdl): Document that -static
24314         may cause the same problems on libltdl as -all-static.
24315         * TODO: We might want to fix this in the future.
24316
24317         * doc/libtool.texi: Clear up overfull hbox.
24318
24319         * libltdl/Makefile.am (ltdl.lo): Add dependencies.
24320         * libltdl/configure.in: Clean up some duplicate defines.  Enable
24321         support for multiple dlopening mechanisms.
24322         * libltdl/acconfig.h: New file.  Add #undefs for defines that
24323         would be duplicated.
24324
24325 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
24326
24327         * libtool.m4 (cygwin*|mingw*, DLLTOOL, OBJDUMP, AS): Only expand the
24328         code that makes these configure time checks on hosts that need the
24329         tools *and* if the AC_LIBTOOL_WIN32_DLL macro is used.
24330
24331 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24332
24333         * ltmain.in (nlist, SYMFILE): Use outputname instead of output for
24334         names within output_objdir.
24335
24336 1999-04-28  Alexandre Oliva  <oliva@dcc.unicamp.br>
24337
24338         * libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC,
24339         AC_ENABLE_FAST_INSTALL): Do not call AC_BEFORE here, they're
24340         AC_REQUIREd by AC_LIBTOOL_SETUP.
24341         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
24342         Call AC_BEFORE here, and now with two arguments, since these do
24343         change the default.
24344         (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE): Fix calls to
24345         AC_BEFORE.
24346
24347 1999-04-28  Gary V. Vaughan  <gary@gnu.org>
24348
24349         * libtool.m4 (ltconfig_enable_win32_dll): pass --enable-win32-dll to
24350         ltconfig if this is set.
24351         (AC_LIBTOOL_WIN32_DLL): New macro required for libtool to attempt
24352         a dll build on win32 hosts.
24353         * ltconfig.in (--enable-win32-dll): new flag for the cli.
24354         (cygwin*|mingw*|os2*, ltconfig_enable_win32_dll): if this is not set
24355         to yes, then do not attempt to build shared libraries.
24356         * doc/libtool.texi: document AC_LIBTOOL_WIN32_DLL.
24357         * NEWS: noted new macro.
24358
24359 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24360
24361         * libtool.m4 (AC_LIBTOOL_DLOPEN, AC_ENABLE_SHARED,
24362         AC_ENABLE_STATIC, AC_ENABLE_FAST_INSTALL, AC_LIBLTDL_CONVENIENCE,
24363         AC_LIBLTDL_INSTALLABLE): Warn if they appear after
24364         AC_PROG_LIBTOOL.  AC_LIBTOOL_SETUP, actually.
24365         (AC_LIBTOOL_SETUP): Check whether DLOPEN support is to be enabled
24366         at autoconf time, not configure time.  Simplify code and
24367         improve (?) help message about --disable-libtool-lock.
24368
24369 1999-04-27 Thomas Tanner  <tanner@gmx.de>
24370
24371         * NEWS: new clean mode
24372         * THANKS: added Ossama Othman
24373         * doc/libtool.texi: documented the new `clean' mode
24374         * ltconfig.in: set need_version=no on OSF (reported by
24375           Marcus Sundberg <mackan@stacken.kth.se>)
24376         * ltmain.in: allow absolute non-existant -L paths,
24377           always use output_objdir instead of objdir for temporary files,
24378           delete generated temporary symbol lists,
24379           don't add .la twice in the pseudo-library header,
24380           implemented and documented clean mode (deletes libraries,
24381           programs and object files and the files associated with them),
24382           if build_libtool_libs=no and no static library is available,
24383           try to link the program against the shared library,
24384           don't add a statically linked library to the dependency_libs
24385         * ltmain.in (help uninstall): added a missing backslash
24386           after echo (reported by Ossama Othman)
24387
24388 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24389
24390         * ltmain.in (old_archive_cmds): Iterate on oldobjs to find out
24391         which links to object files we must create.  Do not test for empty
24392         pic_flag to create such links.  Use objext when searching for
24393         object files extracted from convenience library.
24394
24395         * ltconfig.in (compiler_c_o): Make sure the compiler does not
24396         create temporaries in the current directory when output should go
24397         elsewhere.  We must perform locking if it does.
24398
24399 1999-04-27  Gary V. Vaughan  <gary@gnu.org>
24400
24401         * ltmain.in (old_archive_cmds): Ensure that there are always .o
24402         objects available before running old_archive_cmds.
24403
24404 1999-04-26  Erez Zadok  <ezk@cs.columbia.edu>
24405
24406         * doc/PLATFORMS: Updates for netbsd 1.3.3 and 1.4.
24407
24408 1999-04-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
24409
24410         * ltconfig.in (aix4.[01], always_export_symbols): The case pattern
24411         would never match; fixed.
24412         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
24413
24414 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24415
24416         * libtool.m4 (OBJDUMP): Pass it to ltconfig.
24417         * configure.in: AC_SUBST DLLTOOL, OBJDUMP and AS.
24418         * Makefile.am (libtool, clibtool): Pass them to ltconfig.
24419
24420 1999-04-25  Frank Ch. Eigler  <fche@cygnus.com>
24421
24422         * libtool.m4 (cygwin*): Look for target objdump tool.
24423         * ltconfig.in (cygwin*, file_magic_cmd): Use autoconf-located target
24424         objdump tool.  Track OBJDUMP like DLLTOOL and AS.
24425
24426         * ltconfig.in (cygwin*, deplibs_check_method): Accept
24427         "architecture: i386" as optional suffix, for it is printed on a
24428         separate line sometimes.
24429
24430         * ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C".
24431
24432         * ltmain.in (deplibs_check_method=file_magic): Redirect stderr to
24433         /dev/null, to suppress error messages from target objdump.
24434
24435 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24436
24437         * ltconfig.in (irix*, soname_spec, library_names_spec): Missing
24438         dots before $versuffix and $major.
24439
24440         * ltconfig.in (solaris*, whole_archive_flag_spec): Use -z
24441         allextract/defaultextract from Solaris 2.6 on.
24442         Reported by Brian Ford <ford@vss.fsi.com>
24443
24444         * ltconfig.in (beos*, allow_undefined_flag): Do not build shared
24445         libraries with undefined symbols.
24446
24447         * ltconfig.in (aix4*, allow_undefined_flag): Set to -berok.
24448         (aix4*, shared_flag): Set to -shared or ${wl}-bM:SRE.
24449         (aix4*, archive_cmds): Use -bexpall.
24450         (aix4*, archive_cmds, archive_expsym_cmds): Use shared_flag and
24451         allow_undefined_flag.
24452         (aix4*, always_export_symbols): Set to yes up to AIX 4.1.*,
24453         because -bexpall is supported from 4.2 on.
24454         Reported by Greg Wooledge
24455         <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
24456
24457         * ltconfig.in (hpux*, hardcode_minus_L): Set to yes.
24458         (hpux*, hardcode_libdir_flag_spec): Do not use +s by default.
24459         (hpux*, shlibpath_overrides_runpath): Set to no.
24460
24461         * ltconfig.in (irix*, osf*, archive_cmds): Write so_locations
24462         within objdir.
24463
24464         * ltconfig.in (irix*, soname_spec): Append $major.
24465         (irix*, library_names_spec): Add new soname.
24466         Reported by David Kaelbling <drk@sgi.com>
24467
24468         * ltconfig.in (irix*, sys_lib_dlsearch_path_spec): /usr/local/lib
24469         is not searched by default.  /usr/lib is searched before /lib.
24470         * ltconfig.in (irix*, sys_lib_search_path_spec): /usr/lib is
24471         searched before /lib.
24472
24473         * ltconfig.in (irix5*, need_lib_prefix, need_version): Set to no,
24474         by unifying with irix6*.
24475
24476         * ltconfig.in (irix*, osf*, deplibs_check_method): Use pass_all.
24477
24478         * ltconfig.in (old_LDFLAGS, old_LIBS): Save and write to comments
24479         in output file.
24480
24481         * ltmain.in (prefer_static_libs): New variable, set to no by
24482         default, but set to yes by -static and -all-static.  Used instead
24483         of build_libtool_libs to decide whether to use a shared or static
24484         version of a library, when both versions are available.
24485
24486 1999-04-25  Boyd Lynn Gerber  <gerberb@zenez.com>
24487
24488         * ltconfig.in (sco3.2v5*): Use LD_RUN_PATH for hard-coding.
24489
24490 1999-04-25  Pavel Roskin  <pavel_roskin@geocities.com>
24491
24492         * Makefile.am (uninstall-local): Remove installed libltdl tree.
24493
24494 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24495
24496         * demo/Makefile.am (hc-direct, hc-libflag, hc-libpath, hc-minusl):
24497         Added CFLAGS to link commands; SCO OSR needs it for -belf.
24498
24499         * TODO: -Wl and -Wc options.
24500
24501 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
24502
24503         * libltdl/ltdl.c: Remove trivial warnings.
24504
24505 1999-04-22  Frank Ch. Eigler  <fche@cygnus.com>
24506
24507         * ltconfig.in: Correct sed expression that extracts symbols
24508         from cygwin def files.  Ignore demangled C++ names, if any.
24509
24510 1999-04-12  John David Anglin  <dave.anglin@nrc.ca>
24511
24512         * libltdl/ltdl.c (shl_close): shl_t was correct here...
24513         (shl_sym): ... but we have to pass the handle by reference here.
24514
24515 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
24516
24517         * doc/libtool.texi (Invoking ltconfig): Document environment
24518         variables used.
24519
24520         * doc/libtool.texi (Invoking ltconfig): Document --cache-file.
24521
24522         * doc/libtool.texi (Invoking ltconfig): Document
24523         --disable-fast-install, --enable-dlopen, --with-gnu-ld and
24524         --disable-lock.
24525
24526 1999-04-11 Thomas Tanner  <tanner@gmx.de>
24527
24528         * libltdl/configure.in: check for shl_load in libdld
24529         * libltdl/ltdl.c (shl_close, shl_sym): use (shl_t *) instead of shl_t
24530         * ltconfig.in (check for gcc): removed a bogus line,
24531           check for shl_load in libdld
24532         * ltmain.in: added a warning to the header of the .la file
24533           to warn users against deleting the file,
24534           link shared against static libraries if
24535           deplibs_check_method == pass_all
24536
24537 1999-04-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
24538
24539         * libtool.m4 (AC_PROG_LD, AC_PROG_NM): When looking for programs,
24540         try $ac_exeext too, so that they're found on DJGPP/MS-DOS.
24541         * ltconfig.in: Likewise.
24542         Reported by Robert S. Maier <rsm@math.arizona.edu>
24543
24544         * ltconfig.in (Usage): Removed --enable-dlopen-self.
24545         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24546
24547         * ltconfig.in: Moved sysv4 before sysv4.*.
24548         (symcode): Brian's overrider is specific to sysv4, not sysv4*.
24549
24550 1999-04-09 Thomas Tanner  <tanner@gmx.de>
24551
24552         * NEWS, README: Motorola System V 4 support
24553         * doc/PLATFORMS: added mk88-motorola-sysv4
24554         * ltconfig.in: installed patch from Brian Ford <ford@vss.fsi.com>
24555           to support mk88-motorola-sysv4
24556
24557         * doc/libtool.texi: some cleanups in the libltdl documentation
24558
24559 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
24560
24561         * ltconfig.in (--fallback-echo): Do not put an inline document and
24562         an exec in the same if construct; otherwise the inline document
24563         may not be removed.
24564         * ltmain.in (--fallback-echo): Likewise.
24565         Reported by John David Anglin <dave.anglin@nrc.ca>
24566
24567         * dryrun.test: It would still fail at random times, because `cp'
24568         and `mv' are not guaranteed to preserve the timestamps of the
24569         installed files.  Instead of preserving them, just remove them
24570         before the dry uninstall test.  Redirect dry-run output to stderr,
24571         so that it can be easily separated from the regular output.
24572
24573 1999-04-07 Thomas Tanner  <tanner@gmx.de>
24574
24575         * NEWS: support for moved libraries
24576         * libtool.m4: another DJGPP fix
24577
24578 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
24579
24580         * doc/PLATFORMS: Updated to 1.3 for all platforms I've got.  I'll
24581         make sure 1.3 won't be released unless it passes all tests on
24582         those platforms.
24583
24584         * doc/libtool.texi (Compile mode): Document potential problem and
24585         work-around for `-c -o dir/foo.lo'.
24586
24587         * tests/dryrun.test: The constant modifications of libtool would
24588         cause main.o to be updated at the wrong time; the new approach is
24589         to modify the libtool script so that it enables dry run depending
24590         on whether an environment variable is set or not.  I've also moved
24591         `after' and `before' to a directory deep within $objdir, instead
24592         of creating it in ../tests.
24593         * tests/Makefile.am (CLEANFILES): Removed.
24594
24595 1999-04-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
24596
24597         * tests/dryrun.test: We cannot rely on setting LIBTOOL, because
24598         automake may use sub-makes, and the setting will not be propagated
24599         to them on some makes.  Instead, create a dry version of libtool
24600         and switch between it and the original one before and after dry
24601         runs.
24602         * tests/Makefile.am (CLEANFILES): Added libtool-*, created by
24603         dryrun.test.
24604
24605         * tests/dryrun.test: Use cmp instead of diff.
24606         (before, after): Create them within ../tests.
24607         (libtool): Set to `/bin/sh ./libtool' by default, but use LIBTOOL,
24608         SHELL and top_builddir from the environment if available.  For dry
24609         runs, use "$libtool -n".
24610         * tests/Makefile.am (CLEANFILES): Added before and after.
24611         * ltmain.in: Do not create links to object files in dry runs.
24612
24613 1999-04-06 Thomas Tanner  <tanner@gmx.de>
24614
24615         * ltmain.in: added a missing line of the ILD patch
24616
24617         * NEWS: improved DJGPP support
24618         * doc/libtool.texi: removed hardcode_into_libs documentation
24619         * libtool.m4: some DJGPP fixes
24620         * ltconfig.in: ditto, reverted one of my previous patches: we need
24621           to check for NM, removed the hardcode_into_libs support since
24622           no platform seems to support it
24623         * ltmain.in: some DJGPP fixes, removed the hardcode_into_libs support
24624
24625 1999-04-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
24626
24627         * ltconfig.in (netbsd*, GNU ld): Support a.out shared libraries
24628
24629         * Makefile.am (CVS): allow command-line overriding of cvs
24630
24631         * ltconfig.in (exclude_expsyms): Exclude _GLOBAL_OFFSET_TABLE_ by
24632         default, as most a.out platforms use it, and end up in trouble if
24633         we preload it, so it's safer to rule it out by default, and
24634         special case its removal from exclude_expsyms if someone ever
24635         complains.
24636
24637 1999-04-05 Thomas Tanner  <tanner@gmx.de>
24638
24639         * doc/libtool.texi: reorder tests to reflect execution order,
24640           documented dryrun.test and depdemo*
24641         * ltmain.in (lt_preloaded_symbols): dry-run mode bugfix
24642         * tests/dryrun.test: new test to check whether the dry-run
24643           mode works properly
24644
24645         * demo/run.test: removed the unnecessary test
24646         * demo/Makefile.am: ditto
24647         * ltmain.in: set the DLL search path on cygwin,mingw and os2
24648
24649 1999-04-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
24650
24651         * ltconfig.in (sunos4*, GNU ld): -Bstatic is not enough for
24652         deplibs.test to work with GNU ld; -Bshareable is needed here.
24653
24654         * ltconfig.in (ld_shlibs, amigaos*): Disable shared libs with
24655         native ld too.
24656
24657         * ltconfig.in (sunos4*, GNU ld): Reordered.
24658
24659         * ltconfig.in (archive_cmds, sunos4*): Revert to -Bstatic; the
24660         native linker doesn't even support -Bshareable, only GNU ld does.
24661         Do not use `gcc -shared' in archive_cmds, it breaks deplibs.test.
24662
24663         * ltconfig.in: if ld_shlibs=no, set can_build_shared=no too,
24664         otherwise it will just be disregarded.  This would cause
24665         netbsd/m68k with GNU ld a.out, and certainly many other platforms,
24666         to incorrectly believe that shared libraries were supported, while
24667         archive_cmds was empty, causing shared libraries not to be created
24668
24669 1999-04-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
24670
24671         * NEWS: improved support for AIX and HP/UX
24672
24673 1999-04-03 Thomas Tanner  <tanner@gmx.de>
24674
24675         * NEWS: updated
24676         * libtool.m4: check for main in libm instead of cos
24677         * ltmain.in: cosmetic fixes, don't try to link libraries only once
24678           (although it's not necessary on many platforms and looks ugly...),
24679
24680 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
24681
24682         * ltmain.in (convenience): fixed race condition when more than one
24683         library was linked with the same convenience library by
24684         uniquifying the extract directory.  It is now named after the new
24685         library *and* the old one, and lives in the objdir of the new one.
24686
24687         * ltmain.in (-L*): do not abort just because a directory specified
24688         with -L does not exist; just warn and discard it
24689
24690         * depdemo/l1/Makefile.am (AUTOMAKE_OPTIONS): no-dependencies
24691         * depdemo/l2/Makefile.am (AUTOMAKE_OPTIONS): ditto
24692         * depdemo/l3/Makefile.am (AUTOMAKE_OPTIONS): ditto
24693         * depdemo/l4/Makefile.am (AUTOMAKE_OPTIONS): ditto
24694
24695         * ltconfig.in (archive_cmds, sunos4*): where we used -Bstatic, we
24696         should have been using -Bshareable
24697
24698         * demo/Makefile.am (CLEANFILES): clean EXTRA_* from deplibs-check
24699
24700         * libtool.m4 (LDFLAGS, LIBS): pass them to ltconfig, for the tests
24701         that involve linking
24702         * Makefile.am (LDFLAGS, LIBS, libtool, clibtool): ditto
24703         * tests/Makefile.am (CFLAGS, CPPFLAGS, LDFLAGS, LIBS): set
24704         (LDFLAGS, LIBS, TESTS_ENVIRONMENT): pass them down
24705
24706 1999-04-02  Erez Zadok  <ezk@cs.columbia.edu>
24707
24708         * doc/PLATFORMS: 1.2f ok on various versions of hpux cc
24709
24710 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
24711
24712         * ltconfig.in (link_all_deplibs): set to unknown by default
24713         * ltmain.in: test != no, not = yes
24714         * doc/libtool.texi: document unknown
24715
24716 1999-04-01 Thomas Tanner  <tanner@gmx.de>
24717
24718         * doc/libtool.texi: documented deplibs.test
24719
24720         * demo/Makefile.am: moved testsuite specific declarations to the end,
24721           the deplibs check is now optional
24722         * libltdl/configure.in: read libtool --config only once,
24723           merged AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE from libtool.m4
24724         * libtool.m4: AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE were not
24725           used, lt_dlopen and silent may be empty, AC_SYS_LIBTOOL_CYGWIN
24726           no longer necessary
24727         * ltconfig.in: NM is already checked in libtool.m4,
24728         * ltmain.in: always link all static dependency_libs
24729         * tests/Makefile.am: added deplibs.test
24730         * tests/demo-exec.test, demo-inst.test: removed hell0
24731         * tests/deplibs.test: new test to test the deplibs_check_method
24732
24733 1999-03-31 Thomas Tanner  <tanner@gmx.de>
24734
24735         * ltmain.in: always link a library before its dependency libs
24736         * mdemo/Makefile.am: test -export-symbols-regex
24737
24738 1999-03-30 Thomas Tanner  <tanner@gmx.de>
24739
24740         * doc/libtool.texi: fixed a typo
24741         * libtoolize.in: add the libtool scripts to libltdl.tar.gz
24742         * libtool.m4: don't AC_SUBST(USE_SYMBOL_UNDERSCORE),
24743           AC_CHECK_LIBM sets LIBM, AC_LIBLTDL_INSTALLABLE doesn't work
24744           when libltdl is already installed
24745         * *demo/Makefile.am: use LIBM
24746         * *demo/configure.in: AC_SUBST LIBM
24747         * libltdl/configure.in: use ac_cv_sys_symbol_underscore instead of
24748           USE_SYMBOL_UNDERSCORE
24749         * ltconfig.in: added link_all_deplibs variable
24750         * doc/libtool.texi: document it
24751         * ltmain.in: always search for libname.la - don't eval libname_spec,
24752           when linking libraries against static ones just print a warning
24753           and add them to dependency_libs, add -lc before deplibs,
24754           always link all dependencies of a static library or if
24755           link_all_deplibs is yes, hardcode library paths if
24756           hardcode_into_libs is no, don't link against dependency_libs
24757           that already are deplibs
24758
24759 1999-03-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
24760
24761         * ltconfig.in (aix4*, collect2name): make sure collect2 exists
24762         before running string on it, to avoid errors on old gccs
24763         Reported by Erez Zadok <ezk@cs.columbia.edu>
24764
24765         * ltconfig.in (aix4*, hardcode_libdir_flag_spec): unless we're
24766         using gcc with old collect2, use -b libpath to hardcode the
24767         library search path
24768
24769         * ltmain.in, ltconfig.in: reverted most of the quoting changes
24770         from 1999-03-25; Gary's delay_variable_subst patch from 1999-02-19
24771         obviates it.  Keep only quoting of $PATH, for uniformity with
24772         other systems that already did it
24773
24774 1999-03-29  Gary V. Vaughan  <gary@gnu.org>
24775
24776         * libltdl/ltdl.c (lt_dladdsearchdir): Forgot to mallocate the
24777         extra byte of memory for the teminating NUL, and forgot to
24778         strcpy the original path in to the new memory before appending
24779         the new path compononent.
24780
24781 1999-03-27 Thomas Tanner  <tanner@gmx.de>
24782
24783         * NEWS: updated
24784         * README: updated (BeOS support, no longer shared libraries
24785           support for AmigaOS), cleanups, we have now two mailing lists
24786         * REAMDE-alpha: autogen -> bootstrap, we have now two mailing lists
24787         * THANKS: added Xavier Pianet
24788         * doc/PLATFORMS: BeOS works
24789         * doc/libtool.texi: we have now to two mailing lists,
24790           updated -dlopen self documentation, documented libltdl's license,
24791           put each author in a separate line,
24792           inter-library dependencies on uninstalled libtool libraries are
24793           now supported, cleanups and minor corrections
24794         * libltdl/COPYING.LIB: new file
24795         * libltdl/ltdl.[ch]: added special exception to the LGPL license
24796         * libtool.spec: removed, it was outdated
24797         * Makefile.am: removed libtool.spec
24798         * ltmain.in: use TMPDIR when possible, create a subdirectory
24799           in the temporary directory, added -export-symbols-regex to the help,
24800
24801 1999-03-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24802
24803         * demo/Makefile.am: create a static library, link two libtool
24804         archives with it, then link the program hell0 with both
24805         * demo/hell1.c, demo/hell2.c: dummy files used to create the
24806         libtool archives without introducing symbol conflicts
24807         * tests/demo-exec.test, tests/demo-inst.test: run the new program
24808         * ltconfig.in (irix5*, irix6*, deplibs_check_method): pass_all
24809
24810         * ltmain.in ($PATH): instead of modifying the PATH, better prevent
24811         its expansion the first time *_cmds variables are eval'ed.  Modify
24812         $show within loops that eval them so as to expand variables
24813         * ltconfig.in (*_cmds): quote $ so that they're not expanded by
24814         the first eval
24815
24816 1999-03-25  Gary V. Vaughan  <gary@gnu.org>
24817
24818         * ltmain.in ($PATH):  Expand any tildes in the users path to the
24819         contents of $HOME to avoid problems with *_cmds splitting and
24820         evaluation.
24821
24822 1999-03-24 Thomas Tanner  <tanner@gmx.de>
24823
24824         * TODO: support -dlopen for libraries
24825         * doc/PLATFORMS: Erez Zadok reported that libtool works on bsdi 4.0.1
24826         * doc/libtool.texi (libltdl): libltdl supports BeOS
24827         * libltdl/ltdl.c: shlib_ext was declared even if LTDL_SHLIB_EXT
24828           didn't exist, partially reverted my previous patch: BeOS will
24829           automatically search in ADDON_PATH
24830         * ltmain.in: don't allow relative run-paths, fixed a typo in a warning,
24831           ignore -dlopen self for libraries and objects,
24832           only accept -L paths that exist, minor cleanups,
24833           bugfix: add -lc for normal libraries, not convenicence libraries
24834           removed offensive warnings/comments
24835
24836 1999-03-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
24837
24838         * ltconfig.in (ld_shlibs, amigaos*): disable shared libraries
24839
24840 1999-03-23  Gary V. Vaughan  <gary@gnu.org>
24841
24842         * libltdl/configure.in: the sed expression for finding the shared
24843         library extension used to think the . in [.] for the cygwin
24844         shared_library_names_spec was the start of the extension!!  We now
24845         remove anything in square brackets (assuming that the square
24846         brackets delimit a sed or expr expression which is not part of the
24847         extension) before looking for the extension.
24848
24849         * TODO (cygwin):  food for thought re: mutually dependant dlls.
24850
24851 1999-03-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
24852
24853         * tests/build-relink.test: if we relink and have hardcode_direct,
24854         removing an uninstalled library breaks an uninstalled program
24855
24856         * doc/libtool.texi: documented convenience libraries
24857         * TODO: removed entry about it
24858
24859         * tests/*-unst.test: if directory is not configured, skip it
24860         * tests/demo.test, tests/mdemo.test: unused, removed
24861         * tests/depdemo.test: ditto
24862
24863 1999-03-20 Thomas Tanner  <tanner@gmx.de>
24864
24865         * doc/libtool.texi (link mode): documentation for -module updated
24866         * ltconfig.in: fast-install mode doesn't work for
24867           hardcode_into_libs=yes
24868         * ltmain.in: bugfix: "-dlopen self [-all]-static" wouldn't use
24869           dlopen_self_static, automatically enable -export-dynamic when
24870           using "-dlopen self", always make run-paths absolute,
24871           ignore -lc only on platforms that don't have such a library,
24872           cleanups in the ILD code, find even installed libtool libraries
24873           that were moved, before generating the DLL-import library we need
24874           to set libname, improved hardcoding of shlibpath for libraries,
24875           don't generate an installable pseudo-library for convenience
24876           libraries, bugfix: export_symbols would be removed immediately
24877           before it is used
24878
24879 1999-03-19 Thomas Tanner  <tanner@gmx.de>
24880
24881         * use the same header in all configure.in's and Makefile.am's
24882         * NEWS: improved support for BeOS and Cygwin
24883         * TODO: ILD branch was merged, all internal variables and macros
24884           are now documented
24885         * demo/Makefile.am: use $(LIBS) instead of -lm
24886         * doc/libtool.texi: documented new variable hardcode_into_libs
24887           and thread_safe_flag_spec, renamed all AM_ENABLE/DISABLE_* macros
24888           to AC_*, documented AC_DISABLE_FAST_INSTALL and AC_LIBTOOL_DLOPEN
24889         * libltdl/ltdl.c: added two new error messages (cannot_open_error,
24890           cannot_close_error), use them where approriate,
24891           BeOS support (thanks to Xavier Pianet), on BeOS search modules
24892           additionally in ADDON_PATH
24893         * libtool.m4: rewrote AC_CHECK_LIBM: BeOS and Cygwin don't have
24894           libm and *-ncr-sysv4.3* requires libmw
24895         * ltconfig.in: don't check for LoadLibrary, hardcode dlopen
24896           configuration for BeOS and Cygwin
24897         * ltmain.in: fix sourcing of .la files on Solaris
24898           (patch by Raja R Harinath)
24899
24900 1999-03-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
24901
24902         * ltconfig.in (sunos4*, with_gnu_ld, hardcode_minus_L): remove, we
24903         have -rpath
24904         (aix4*, without_gnu_ld, hardcode_shlibpath_var): unsupported is
24905         default
24906         (hpux9*, hpux10*, hpux11*, archive_cmds): drop +s, unneeded here
24907         (hpux9*, hpux10*, hpux11*, hardcode_libdir_flag_spec): add +s
24908         before +b
24909         (hpux9*, hpux10*, hpux11*, shlibpath_overrides_runpath): since +s
24910         appears before +b, set it to yes
24911         (hardcode_shlibpath_var, hardcode_action): do not use
24912         shlibpath_var to specify the compile-time search path; it loses,
24913         and we may end up linking with pre-installed older versions of
24914         libraries instead of yet-to-be-installed ones
24915         (*, hardcode_direct, hardcode_minus_L): remove entries that set
24916         them to no, that is default
24917
24918         * demo/Makefile.am (hc-direct, hc-libpath, hc-minusL): link with
24919         $$hardcode_libdir_flag_spec, if available, with libdir=$(libdir),
24920         to make sure the hardcode_* variables will produce the expected
24921         results even in the presence of a hardcoding flag; depend on
24922         libhello.la having been installed already
24923         (hc-libflag): link with the installed library, but try to
24924         hard-code the uninstalled one
24925         * doc/libtool.texi: document the changes
24926
24927         * tests/*.test: when a test fails, skip tests that depend on it.
24928         If a certain configuration is not supported, skip all its tests.
24929
24930         * doc/libtool.texi: reorder tests to reflect execution order
24931
24932         * tests/noinst-link.test: new test
24933         * tests/Makefile.am (TESTS): added noinst-link.test
24934         * doc/libtool.texi: document it
24935
24936 1999-03-19  Gary V. Vaughan  <gary@gnu.org>
24937
24938         * ltmain.in (dependency_libs): There is no reason to infer that
24939         the pseudo library is invalid if dependency_libs='' at
24940         install-time, or else libltdl/libltdl.la is invalid!!
24941
24942 1999-03-18  Thomas Tanner  <tanner@gmx.de>
24943
24944         * merged my inter-library dependencies code from the ILD branch:
24945         * NEWS: inter-library dependencies are now supported
24946         * configure.in: add the depdemo subdirectory
24947         * depdemo/*: new demo to demonstrate inter-library dependencies
24948         * tests/depdemo*: new tests for depdemo
24949         * ltconfig.in: added hardcode_into_libs (whether library paths
24950           should be hardcoded into the libraries),
24951           it currently defaults to 'no'
24952         * ltmain.in: new internal 'relink' mode to relink libraries
24953           on platforms with hardcode_into_libs=yes, save command line
24954           arguments in libtool_args, accept relative -L directories,
24955           ignore -lm on BeOS and Cygwin, always ignore -lc,
24956           handle -l, -L and .la arguments later, always make the library
24957           installation directory (-rpath) absolute, in relink mode don't
24958           delete the not-relinked library and exit immediately after relinking,
24959           try to find already-installed libtool libraries that were specified
24960           using -l, support hardcoding of library paths into libraries too,
24961           export shlibpath before linking libraries, and a lot of other
24962           big changes that I don't want to describe here... please read
24963           the source.
24964
24965         * merged Gary's Win32 code from the ILD branch:
24966         * NEWS: Win32 DLLs are now supported
24967         * TODO: removed .a library namespace clash for win32.  It is
24968           now resolved.
24969         * ltconfig.in (cygwin, library_names_spec):  removed $libname.a.
24970           Creating a dll with libtool no longer creates an import library.
24971         * ltconfig.in (extract_expsyms_cmds): Create $objdir if it does
24972           not exist -- i.e. we need to generate import an import library
24973           in a directory which has no libs of its own.
24974         * doc/libtool.texi (old_archive_from_expsyms_cmds,
24975           extract_expsyms_cmds): documented these new variables.
24976         * ltconfig.in (extract_expsyms_cmds): New variable.  Commands to
24977           extract the exported symbol list from a dll.
24978           (old_archive_from_expsyms_cmds): New variable.  Commands to build
24979           an old archive from the extracted expsyms list.
24980         * ltmain.in: run the cmds in extract_expsyms_cmds and
24981           old_archive_from_expsyms_cmds as necessary.
24982         * ltconfig.in (cygwin, old_archive_from_new_cmds): no longer
24983           required.
24984         * ltconfig.in (cygwin, shlibpath_overrides_runpath): I'm not even
24985           sure whether win32 honours the runpath at all when searching for
24986           a dll to load!  Anyway, when set to yes this prevents a gratuitous
24987           warning.
24988         * ltmain.in (deplib): The cygwin environment doesn't actually have
24989           -lm, and although the linker fakes having one, specifiying it to
24990           libtool will break ILD, so we ignore it when generating
24991           dependencies.
24992
24993 1999-03-17  Gary V. Vaughan  <gary@gnu.org>
24994
24995         * doc/PLATFORMS: Thanks to Alexandres changes below, both my
24996         hp boxes pass the entire test suite.
24997
24998 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
24999
25000         * ltconfig.in (hpux*, hardcode_minus_L): should be no, we have +b
25001         (hpux*, hardcode_libdir_separator): set to colon
25002
25003 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
25004
25005         * doc/PLATFORMS: egcs is gcc; updates from Erez Zadok
25006
25007 1999-03-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
25008
25009         * ltmain.in (deplibs, beos*): don't append -lc
25010         Reported by Xavier Pianet <xavier@xingo.com>
25011
25012         * tests/build-relink.test (hardcode_action): when set to relink,
25013         skip the test with lt-hell
25014
25015         * Makefile.am (EXTRA_DIST): add mkstamp
25016         Reported by Xavier Pianet <xavier@xingo.com>
25017
25018         * Makefile.am (EXTRA_DIST): add ChangeLog.0
25019
25020 1999-03-16  Thomas Tanner  <tanner@gmx.de>
25021
25022         * doc/libtool.texi: some minor corrections to the "-dlopen self"
25023           documentation
25024         * tests/Makefile.am: sorted by name, added assign.test
25025         * ChangeLog: started new file
25026
25027         * ltconfig.in: some cosmetical changes
25028         * ltmain.in: ditto
25029
25030 1999-03-15  Alexandre Oliva  <oliva@dcc.unicamp.br>
25031
25032         * configure.in, libtool.spec, NEWS: bump to 1.3a
25033         * Branched for release 1.3 (branch-1-3)
25034         * configure.in, libtool.spec, NEWS: bump to 1.2g
25035
25036         * configure.in, libtool.spec: bump to 1.2f
25037         * doc/PLATFORMS: ditto
25038         * NEWS: libtool 1.2f released
25039
25040         * ltmain.in: silence ``unbug'' :-) detected by sh.test
25041
25042 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25043
25044         * TODO: we now use full pathnames for `file'
25045
25046 1999-03-14  Thomas Tanner  <tanner@gmx.de>
25047
25048         * TODO: libltdl is now documented
25049         * doc/libltdl.texi (linking with installed libtool libraries):
25050           fixed typo
25051         * doc/libltdl.texi (libltdl): added documentation for building
25052           libtool modules and examples how to embed libltdl
25053         * ltmain.in: don't ignore user-specified run-paths (fixed it
25054           at the right place)
25055
25056 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25057
25058         * ltmain.in (deplibs_check_method=none): discard -L and -R
25059         switches when testing whether deplibs contains some library
25060
25061 1999-03-14  Erez Zadok  <ezk@cs.columbia.edu>
25062
25063         * config.sub: recognize hppa2.0w, yet to be installed at GNU
25064
25065         * config.guess: minor update for FreeBSD-elf, yet to be installed
25066         at GNU
25067
25068 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25069
25070         * ltconfig.in (bsdi4*, sys_lib_search_path_spec,
25071         sys_lib_dlsearch_path_spec): fix thinko in variable names; add
25072         standard directories
25073
25074         * ltmain.in (exclude_expsyms): exclude symbols before sorting,
25075         otherwise only the sorted list will have them excluded
25076
25077         * ltconfig.in (file_magic_cmd, file_magic_test_file, freebsd-elf*,
25078         bsdi4*): use full pathnames when possible
25079
25080         * Makefile.am (all-recursive): depend on ACINCLUDE_M4_LIST
25081         (all-local, check-local): remove, unused
25082
25083         * doc/PLATFORMS: updated platforms tested on 1.2f-pre; clean up;
25084         reorder; untabify
25085
25086         * config.guess, config.sub: updated from GNU common
25087
25088         * doc/libtool.texi: notes on thread-safety problems of
25089         libltdl/dlopen on GNU/Linux and FreeBSD
25090
25091         * ltconfig.in (aix3*, aix4*): GNU ld on AIX is very broken: it
25092         cannot create working shared libraries.  Print a warning
25093         suggesting the user not to use it and disable shared libraries.
25094
25095 1999-03-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
25096
25097         * ltconfig.in (global_symbol_to_cdecl): was reset before trying
25098         `symprfx=_', rendering the test with `_' useless
25099
25100         * doc/libtool.texi (AM_PROG_LIBTOOL): eliminate overfull boxes
25101
25102         * doc/libtool.texi: complete dlopening/libltdl documentation
25103
25104         * ltconfig.in (osf3*, osf4*, deplibs_check_method): pass_all does
25105         not really work; use file_magic instead.
25106         (osf3*, osf4*): customize sys_lib_[dl]search_path_spec
25107
25108         * ltconfig.in (file_magic_test_file): new variable; if set, it
25109         will be used as an argument for $file_magic_cmd to test whether
25110         the regex in deplibs_check_method matches its output
25111         (file_magic_cmd): use full pathnames whenever possible
25112
25113         * ltconfig.in (sys_lib_dlsearch_path_spec): new variable, that
25114         lists the system *run-time* search path.  Listed directories are
25115         not implicitly hard-coded into executables.
25116         * ltmain.in: use it, but *never* discard -R flags
25117         * doc/libtool.texi: document it
25118         * NEWS: ditto
25119         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
25120
25121         * tests/sh.test: look for `$Xsed' without `$echo "X...'
25122         * ltconfig.in, ltmain.in: fixed a few such occurrences
25123
25124         * ltmain.in (-static, -all-static): revert March 11's patch, I was
25125         barking up the wrong tree
25126
25127 1999-03-12  Thomas Tanner  <tanner@gmx.de>
25128
25129         * libltdl/ltdl.c: removed FILENAME_MAX since LTDL_FILENAME_MAX
25130           is sufficient and doesn't break HP/UX
25131
25132 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
25133
25134         * ltconfig.in: (global_symbol_pipe) extract symbol tag from the
25135         output of NM too
25136         (global_symbol_to_cdecl): new variable; convert the output of
25137         global_symbol_pipe to valid C declarations; on HP/UX, convert
25138         text symbols to function declarations
25139         * libtool.m4: similar modifications
25140         * doc/libtool.texi: document new variable
25141         * ltmain.in: use global_symbol_to_cdecl to generate lt_dlpreopened
25142         symbols; avoid extracting symbol lists from dlpreopened files
25143         twice; do not filter symbols from dlpreopened libraries
25144         * TODO: fixed HP/UX dlpreopening problem
25145
25146         * ltmain.in (-static, -all-static): set dlopen_self to
25147         $dlopen_self_static regardless of link_static_flag or pic_flag
25148
25149         * ltmain.in: FreeBSD bug that needs symbol table compiled with
25150         -fPIC is fixed in release 3.1; use it only for 2.* and 3.0
25151
25152 1999-03-11  Thomas Tanner  <tanner@gmx.de>
25153
25154         * ltmain.in: when building a library it doesn't make
25155           sense to remove a relinked program ("lt-" prefix)
25156
25157 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
25158
25159         * mdemo/main.c (main, test_dl, test_dlself): propagate error
25160         conditions better, to avoid false positives
25161
25162         * */configure.in: AC_SUBST(LIBTOOL_DEPS)
25163         * */Makefile.am $(OBJECTS): depend on libtool
25164         (libtool): rebuild automatically
25165
25166         * ltconfig.in: set dlopen_* variables to unknown when appropriate
25167         * ltmain.in: only emit warning about lack of AC_LIBTOOL_DLOPEN if
25168         *all* dlopen_* variables are set to unknown
25169
25170 1999-03-11  Thomas Tanner  <tanner@gmx.de>
25171
25172         * ltmain.in: delete the old output files (incl. the relinked binary)
25173           before linking.
25174
25175         * ltconfig.in: replaced `configure' with $progname and all
25176           line numbers with @LINENO@
25177
25178 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
25179
25180         * libltdl/ltdl.c (strdup): cannot return str when it's NULL
25181         because of const correctness
25182
25183 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
25184
25185         * libltdl/ltdl.c (strdup): always use our own, because the
25186         standard strdup won't use lt_dlmalloc
25187
25188         * ltconfig.in (dlfcn.h): function definition may cause warnings;
25189         define variable instead
25190
25191         * ltmain.in: properly create an export file for a program,
25192         avoiding error messages about not finding it
25193
25194         * TODO: need to document AC_LIBLTDL_*; static self dlopening
25195         problem fixed
25196
25197         * libtool.m4 (AC_LIBTOOL_DLOPEN): just set lt_dlopen=yes
25198         (AC_LIBTOOL_SETUP): if lt_dlopen=yes, add --enable-dlopen to
25199         libtool_flags; drop --enable-dlopen-self
25200         * ltconfig.in: perform all the dirty work of testing for dlopening
25201         support, because we need platform-dependent equivalents for
25202         -export-dynamic, for self dlopening, and -static, for static self
25203         dlopening
25204         (dlopen_self_static): new configuration variable that is set to
25205         yes only if static programs can dlopen themselves
25206         * ltmain.in (-static, -all-static): dlopen_self=dlopen_self_static
25207
25208         * libltdl/configure.in (libltdl_cv_need_uscore): do not assume
25209         dlfcn.h and LTDL_LAZY exist; use LTDL_GLOBAL and LTDL_LAZY_OR_NOW.
25210         This test is likely to fail if self-dlopening does not work,
25211         especially because we do not link the program with
25212         -export-dynamic.  Let's just hope that platforms whose symbol
25213         names start with underscores will also accept underscores for
25214         dlopen.  We should probably use libtool to compile and link this
25215         test, so that we can use -export-dynamic.
25216
25217         * mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h
25218
25219         * configure.in: fix AC_OUTPUT_COMMANDS for ltconfig and ltmain.sh
25220         so that they work if srcdir is relative too
25221
25222         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
25223         avoid introducing multiple --enable options when re-running
25224         config.status
25225         * libltdl/configure.in: if enable_ltdl_* is not set, assume no
25226         * configure.in: if enable_ltdl_install is not set, enable it
25227
25228         * libltdl/configure.in: only assume implicit installation if
25229         libltdl was libtoolized.  If not, print a warning message
25230         suggesting the use of --enable-ltdl-install or of one of the
25231         AC_LIBLTDL_* macros.
25232
25233         * libtool.m4 (AC_LIBTOOL_SETUP): new macro, that does all the
25234         configure-work that AC_PROG_LIBTOOL used to do; add
25235         --cache-file=$cache_file to libtool_flags
25236         (AC_PROG_LIBTOOL): call AC_LIBTOOL_SETUP, save the cache, run
25237         ltconfig and reload the cache
25238         * configure.in: run AC_LIBTOOL_SETUP, then set LIBTOOL_FLAGS to
25239         libtool_flags
25240         * ltconfig.in: support --cache-file switch.  If it is used, load
25241         the cache in the beginning and save it just before terminating
25242
25243         * tests/Makefile.am (TESTS): run demo-nofast before demo-shared
25244
25245         * configure.in: create ltconfig and ltmain.sh at the end of
25246         config.status, if they do not exist.  This fixes the bootstrap
25247         problem reported by Erez Zadok <ezk@cs.columbia.edu>
25248
25249 1999-03-10  Thomas Tanner  <tanner@gmx.de>
25250
25251         * NEWS: sorted by importance
25252         * Makefile.am: set LIBTOOL_FLAGS when generating libtool
25253         * configure.in: check for dlopen support and set LIBTOOL_FLAGS
25254           accordingly
25255
25256         * configure.in: fix spacing for --disable-ltdl-install,
25257           always configure libltdl, add libltdl/acinclude.m4 to
25258           ACINCLUDE_M4_LIST, disable installation of libltdl if necessary
25259         * libltdl/Makefile.am: set version info for libltdl.la
25260         * libltdl/configure.in: don't check whether
25261           enable_ltdl_convenience/install was set so that libltdl
25262           can be used as independent package (libltdl.tar.gz) without
25263           the need to use --enable-ltdl*
25264         * libltdl/ltdl.c: minor cleanups, allocate the line cache
25265           dynamically (lt_dlopen)
25266
25267 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
25268
25269         * libltdl/ltdl.c (lt_dlopen): some preprocessors choke if the `#'
25270         of `#define' is not in column 1; let's go back to fortran! :-)
25271         Add #undefs too, to avoid potential warnings or errors.
25272
25273 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
25274
25275         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
25276         renamed convenience libltdl, dropped toinst hack for installable
25277         * libltdl/Makefile.am: ditto
25278         * libltdl/configure.in: ditto; abort if none of the macros is used
25279
25280         * ltmain.in: $output_objdir/$objdir/ -> $output_objdir/lt-
25281
25282 1999-03-09  Thomas Tanner  <tanner@gmx.de>
25283
25284         * libltdl/ltdl.c (lt_dlopen): don't hardcode the length of the
25285           constant strings
25286
25287 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
25288
25289         * Makefile.am (install-data-hook): install libltdl as a directory,
25290         not as a tar-file, so that we do not modify the build tree at make
25291         install time
25292         * libtoolize.in (ltdl, ltdl_tar): update
25293
25294         * configure.in, Makefile.am, NEWS: install libltdl by default
25295
25296         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
25297         new macros
25298         * NEWS: ditto
25299         * libltdl/configure.in: if none of the new macros or configure
25300         arguments are used, warn and build convenience library only
25301         * libltdl/Makefile.am: conditionally build convenience libltdl.la
25302         * mdemo/configure.in: use AC_LIBLTDL_CONVENIENCE
25303         * mdemo/Makefile.am: refer to @LIBLTDL@
25304
25305 1999-03-09  Gary V. Vaughan <gary@gnu.org>
25306
25307         * NEWS: updated.
25308
25309 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
25310
25311         * ltmain.in: extract symbols from program objects to nlist first,
25312         then translate them to the export_symbols format.  Now it works,
25313         but it appears to be needlessly extracting the symbol list from
25314         dlpreopened libraries twice
25315
25316         * ltmain.in: temporarily disable dlopen_self when linking with
25317         -static or -all-static, until we figure out how to test whether it
25318         works at configure time
25319
25320         * TODO: remember to fix this later
25321
25322         * tests/build-relink.test: when hell is expected to fail, run it
25323         within a subshell and redirect stderr to stdout, so that dynamic
25324         linker errors are only printed in verbose mode
25325
25326         * ltmain.in (hardcode_libdir_separator, compile_rpath,
25327         finalize_rpath): only substitute hardcode_libdir_flag_spec if
25328         hardcode_libdirs is non-empty
25329
25330         * libtool.m4 (AC_LIBTOOL_DLOPEN): do not depend on the existence
25331         of dlfcn.h nor on the definition of RTLD_LAZY
25332
25333         * tests/build-relink.test: hellT was renamed to lt-hell
25334
25335         * libltdl/Makefile.am (@TOINST@/libltdl.la): do not hide the
25336         command that creates the TOINST directory; remove `-o $@' from the
25337         LINK command, $(LINK) already contains it.
25338
25339 1999-03-08  Thomas Tanner  <tanner@gmx.de>
25340
25341         * doc/libtool.texi (tests): documented demo-nofast.test and
25342           renamed cdemo* to demo*
25343
25344 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
25345
25346         * libltdl/Makefile.am, libltdl/configure.in, mdemo/Makefile.am:
25347         libltdl must not be renamed; if there's a problem with the install
25348         option, let's fix it, not just work around it by breaking code of
25349         users of the convenience library
25350
25351         * tests/build-relink.test: link broken libhello.la with at least
25352         one libtool object
25353
25354 1999-03-08  Thomas Tanner  <tanner@gmx.de>
25355
25356         * TODO: updated (libltdl build problem fixed)
25357         * doc/libtool.texi (libltdl interface): removed the line which
25358           promised that lt_dlopen will return NULL if it can't resolve all
25359           symbols
25360         * libltdl/Makefile.am, libltdl/configure.in: fixed build problem:
25361           renamed the convenience library to libltdlc.la and the
25362           installed version to libltdl.la
25363         * ltmain.in (wrapper script): replaced the "T" suffix of the program
25364           file name with a "lt-" prefix
25365         * mdemo/Makefile.am: use libltdlc.la
25366         * tests/Makefile.am, tests/demo-nofast.test: added demo to
25367           test --enable-fast-install=no
25368
25369 1999-03-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
25370
25371         * tests/Makefile.am (TESTS): run hardcode before build-relink
25372         trashes libhello.la
25373         * tests/hardcode.test (need_prefix): set to yes so that _inst is
25374         not removed
25375
25376         * ltmain.in (compile_command): append finalize search path to
25377         compile search path
25378
25379         * tests/build-relink.test: new; check shlibpath_overrides_runpath
25380         * tests/Makefile.am (TESTS): add build-relink.test; remove
25381         hardcode.test duplicates
25382         * doc/libtool.texi: document it
25383
25384         * ltmain.in (relink_command): do not prepend cd `pwd` to it, the
25385         scripts already enters the correct directory, and expanding the
25386         pathname would prevent the build tree from moving
25387
25388         * ltconfig.in (enable_fast_install): force it to no only if we
25389         need relink; in the other cases, set it to needless
25390         * ltmain.in (fast_install): if needless, set relink_command empty
25391         * doc/libtool.texi (fast_install, shlibpath_overrides_runpath):
25392         document the new behavior
25393
25394         * ltconfig.in (enable_fast_install): test whether it can be forced
25395         off after shlibpath_overrides_runpath and enable_shared are set
25396
25397 1999-03-07  Thomas Tanner  <tanner@gmx.de>
25398
25399         * TODO: updated
25400         * NEWS: updated
25401
25402         * TODO: scheduled some items for next release/future
25403         * demo/configure.in: use AC_LIBTOOL_DLOPEN
25404         * libtool.m4: added AC_ENABLE/DISABLE_FAST_INSTALL macro
25405         * ltconfig.in: added --disable-fast-install flag
25406         * ltmain.in: partially reverted Alexandre's patch and implemented
25407           on-demand linking in such a way that the old developer-friendly
25408           linking style is optional,
25409           don't hardcode library paths that are in the system search path,
25410           fixed a typo in lib_search_path,
25411           implemented -export-symbols-regex for programs
25412
25413 1999-03-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
25414
25415         * libltdl/ltdl.c (LTDL_LAZY_OR_NOW): renamed from LTDL_NOW; prefer
25416         LAZY loading because it's much faster and NOW is apparently
25417         partially broken on FreeBSD
25418         Reported by Archie Cobbs <archie@whistle.com>
25419
25420         * ltconfig.in (archive_expsym_cmds, solaris, without_gnu_ld):
25421         $lib.exp already starts with $objdir/
25422         Reported by Godmar Back <gback@cs.utah.edu>
25423
25424         * ltmain.in (freebsd): compile symbol table file with pic_flag
25425         only on FreeBSD and when not static linking; it's been causing
25426         trouble on platforms such as OpenBSD.
25427
25428 1999-02-26  Gary V. Vaughan  <gary@gnu.org>
25429
25430         * libtool.m4 (cygwin): s/\\(mingw\\|cygwin\\)32/\\1/g.  Must've
25431         missed this file when I changed to cygnus' new sanction name.
25432
25433         * ltconfig.in (sub_uncdrive): removed.  This won't work with
25434         the next version of cygwin.
25435         (sub_uncdir): removed. We use <drive>:/path/to/executable now.
25436         * libtool.m4 (AC_PROG_LD): removed sub_uncdrive and sub_uncdir.
25437
25438 1999-02-25  Thomas Tanner  <tanner@gmx.de>
25439
25440         * TODO: added items for next alpha release, ILD etc.
25441         * libltdl/ltdl.c: removed unnecessary check from presym_sym,
25442           fixed bug in lt_dlclose, allow lt_dlopenext(NULL),
25443           set deplibs for lt_dlopen(NULL)
25444
25445 1999-02-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
25446
25447         * ltmain.in (file_magic_regex): sed `10q' is faster than `11,$d'
25448
25449 1999-02-22  Thomas Tanner  <tanner@gmx.de>
25450
25451         * ltconfig.in (dlopen, dlopen_self): default is unknown
25452         * ltmain.in: fixed -dlopen self, print a warning
25453           if -dlopen is used without AC_LIBTOOL_DLOPEN
25454         * mdemo/Makefile.am: use -dlopen self
25455
25456 1999-02-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
25457
25458         * ltmain.in: added missing mkdir $progdir for on-demand executable
25459
25460         * ltmain.in: create on-demand executable as $progdir/$$-$program,
25461         and rename it to $progdir/$program only when it's finished, to
25462         avoid race conditions.  We can still get the program linked
25463         multiple times, if multiple instances are started simultaneously
25464         and the program does not exist, but they are very unlikely to
25465         interfere with each other.  There's still a possibility that one
25466         process removes the $program another has just created, and doesn't
25467         replace it before the other tries to run it, in a system whose
25468         `mv' is not atomic, so it will $rm then $mv, but so what? :-)
25469         Locking files have been avoided to prevent dead-locks in case they
25470         are left over after a reboot or crash.
25471
25472         * TODO: removed ILD, soon to be merged, and added convenience
25473         libraries docs
25474
25475         * ltconfig.in (irix5*, irix6*, shlibpath_overides_runpath): yes
25476
25477         * ltmain.in: remove on-demand executable in the proper place, and
25478         just warn if it can't be removed; add wrapper code to test whether
25479         the install-executable is newer than the build-executable, to
25480         relink it when it appears to be out-of-date
25481
25482         * libltdl/configure.in: check for dld.h
25483         * libltdl/ltdl.c: include dld.h
25484         (dld_open) it's spelled memory_error, not no_memory_error
25485         Reported by Stefan Burstroem <f94sbu@efd.lth.se>
25486
25487         * ltmain.in: fix typos in my last change (s/ocmpile/compile/)
25488
25489 1999-02-21  Thomas Tanner  <tanner@gmx.de>
25490
25491         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
25492           when dlopening the executable
25493         * libtool.m4 (AC_LIBTOOL_DLOPEN): removed the redundant "yes: "
25494           prefix for lt_cv_dlopen, renamed lt_cv_dlopen_LIBS
25495           to lt_cv_dlopen_libs (more consistent)
25496         * ltmain.in: implemented -dl[pre]open self, necessary for
25497           lt_dlopen(NULL), generation of exported symbols was broken
25498
25499 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25500
25501         * ltmain.in: avoid duplication of -L switches, it sometimes breaks
25502         IRIX 5.2's linker
25503
25504         * ltconfig.in (freebsd*, finish_cmds): expand objformat here
25505         Reported by Vladimir Kushnir <kushn@mail.kar.net>
25506
25507 1999-02-20  Vladimir Kushnir <kushn@mail.kar.net>
25508
25509         * ltconfig.in (freebsd-elf*, need_version, need_lib_prefix): no
25510         (freebsd-elf*, library_names_spec): add $libname.so instead of
25511         $libname.so$versuffix; add $libname$release.so
25512
25513 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25514
25515         * doc/libtool.texi: remove ticks from menu items; it breaks TeX
25516         Reported by Erez Zadok <ezk@cs.columbia.edu>
25517
25518         * ltmain.in: fixes for export-symbols dry-run
25519
25520         * ltconfig.in (shlibpath_overrides_runpath): new variable;
25521         determines whether LD_LIBRARY_PATH or equivalent can be used to
25522         override a hard-coded library search path; default to unknown
25523         (linux-gnu*): set it to no
25524         (solaris*, sunos4*): set it to yes
25525         * ltmain.in (build_libdirs_flags, build_libdirs, build_rpath): if
25526         shlibpath_overrides_runpath is not yes, arrange that wrapper
25527         scripts create, on demand, programs that use uninstalled libraries
25528
25529         * doc/libtool.texi: document it
25530
25531         * libtool.m4 (AC_LIBTOOL_DLOPEN): check for dlopen in libc before
25532         trying in dl.  Add the actual dlopening type to lt_cv_dlopen, and
25533         add any needed libraries to lt_cv_dlopen_LIBS.  Add test for
25534         MS-Windows' LoadLibrary.  Check whether a program can dlopen
25535         itself only if we really have dlopen(), not some equivalent
25536         function, but leave room for testing with other mechanisms.
25537         (AC_PROG_LIBTOOL): assume some form of dlopen, but not
25538         dlopen(NULL), is available if AC_LIBTOOL_DLOPEN is not used, for
25539         backward compatibility.
25540
25541 1999-02-20  Archie Cobbs  <archie@whistle.com>
25542
25543         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
25544         where appropriate, when dlopening a non-libtool library
25545
25546 1999-02-19  Gary V. Vaughan  <gary@gnu.org>
25547
25548         * ltconfig.in (export_symbols_cmds): renamed from
25549         export_symbols_cmd.
25550         (cygwin, mingw): Be sure to compile the ltdll.c object before
25551         extracting the exported symbol list.  Extract only the names
25552         of the exported symbols from the def file [otherwise we might
25553         run into trouble with -export-symbols-regex].
25554         (archive_expsym_cmds): Regenerate the def file from the symbol
25555         export list.
25556         (delay_variable_subst): New sed expression to allow us to delay
25557         evaluation of $foo in a double_quote_subst evaluated variable by
25558         using \$.
25559         * ltmain.in (export_symbols_cmds): evaluate each ~ delimitted cmd
25560         separately.
25561         * doc/libtool.texi (libtool script contents): new paragraph to
25562         explain the difference between _cmd and _cmds suffixes for
25563         variable names.
25564         (export_symbols_cmds): renamed from export_symbols_cmd.
25565
25566 1999-02-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
25567
25568         * ltconfig.in (ld_shlibs): move -soname and similar flags to the
25569         end of archive_cmds and archive_expsym_cmds, so as to prevent
25570         gcc's collect2 from inserting an object file between -soname and
25571         the library name
25572
25573         * ltconfig.in (openbsd*, netbsd*, library_names_spec): append
25574         alternate name without ${release}, otherwise build fails when
25575         -release is used
25576
25577 1999-02-18  Gary V. Vaughan  <gary@gnu.org>
25578
25579         * ltconfig.in (archive{,_sym}_commands): Be careful not to
25580         re-export the dll entry points DllMain@12, _cygwin_dll_entry@12 and
25581         _cygwin_noncygwin_dll_entry@12 to avoid bugs with the wrong entry
25582         function being called with inter-dll dependencies.
25583         Reported by DJ Delorie <dj@delorie.com>
25584         * THANKS: Added DJ Delorie, since his code inspired the impgen.c
25585         program and because he has patiently answered all of the
25586         irritating dll and win32 questions I have fired at him.
25587
25588         * ltmain.in (version_type):  Oops.  Irix versioning implies that
25589         major version numbers are 1 based (not zero based).  Fixed.
25590
25591         * ltmain.in (version_type): Implement irix versioning.
25592         * ltconfig.in (irix{5,6}*): Use new irix shared object versioning.
25593         * TODO: remove irix versioning from TODO list.
25594
25595         * ltmain.in (impgen.c): Added a new embedded C file that can be
25596         used under win32 to extract a def file (symbol export list) from a
25597         dll that has none.  Code to use it might need to wait for the ILD
25598         merge before it will be useful...
25599
25600 1999-02-18  Thomas Tanner  <tanner@gmx.de>
25601
25602         * TODO: updated
25603         * autogen: only libltdl needs autoheader
25604         * doc/libtool.texi (link mode): documented -export-symbols-regex
25605           and updated -export-symbols
25606         * doc/libtool.texi (script contents): documented
25607           always_export_symbols, export_symbols_cmd, exclude_expsyms,
25608           include_expsyms, dlopen and dlopen_self
25609           more detailed description of need_lib_prefix
25610         * ltconfig.in: a "'" was missing in the default value
25611           of export_symbols_cmd
25612         * ltmain.in: implemented -export-symbols-regex
25613
25614 1999-02-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
25615
25616         * ltconfig.in: (freebsd2*, sunos4*, exclude_expsyms): exclude
25617         _GLOBAL_OFFSET_TABLE_
25618         * ltmain.in: implement exclude_expsyms with egrep
25619
25620         * libltdl/ltdl.c (lt_dlmalloc, lt_dlfree): SunOS' cc can't cope
25621         with argument lists, we __P even in the definition
25622
25623 1999-02-15  Thomas Tanner  <tanner@gmx.de>
25624
25625         * cdemo/Makefile.am: renamed *foo1 to *foo, removed $(MATH_LIB)
25626         * cdemo/foo1.c: renamed to foo.c
25627         * libltdl/ltdl.c: eliminated lt_dltype, in presym_open():
25628           search for @PROGRAM@ if filename == 0, in lt_dlopen():
25629           fixed bug for filename == 0
25630         * libltdl/ltdl.h: use __P macro for lt_dlmalloc/free
25631         * libtool.m4: new macro AC_LIBTOOL_DLOPEN: checks for dlopen
25632           and dlopen(NULL) support
25633         * ltconfig.in: added new variables dlopen and dlopen_self,
25634           --enable-dlopen[-self] flags for AC_LIBTOOL_DLOPEN
25635         * ltmain.in: use dlopen[_self], dlpreopen files if there's no
25636           dlopen support, build lt_preloaded_symbols only if
25637           -dl[pre]open was used, include program symbols if -export-dynamic
25638           was specified and there's no dlopen(NULL) support
25639         * mdemo/configure.in: use AC_LIBTOOL_DLOPEN
25640         * mdemo/main.c: demonstrate lt_dlopen(0)
25641
25642 1999-02-15  Gary V. Vaughan  <gary@gnu.org>
25643
25644         * demo/dlmain.c (_WIN32): The lt_symlist structure is now const,
25645         so my original horrible temporary win32 hack no longer worked.
25646         Here is a new horrible temporary hack to prevent helldl from SEGVing
25647         on win32.  I will fix this properly when we figure out how to do
25648         data exports from dlls.
25649
25650 1999-02-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25651
25652         * libtool.m4 (AC_CHECK_LIBM): do not set MATHLIB or AC_SUBST it,
25653         this has a negative side-effect of causing automake to add MATHLIB
25654         to every single Makefile.  Let's use plain AC_CHECK_LIB, so that
25655         LIBS get set, until we find a better alternative
25656         * *demo/Makefile.am: remove $(MATHLIB)
25657
25658         * libltdl/configure.in: add a DESCRIPTION argument to AC_DEFINEs
25659         where appropriate, so as to get rid of acconfig.h
25660         * libltdl/acconfig.h: removed
25661
25662 1999-02-13  Thomas Tanner  <tanner@gmx.de>
25663
25664         * *demo/Makefile.am: use $(MATHLIB)
25665         * *demo/configure.in: use AC_CHECK_LIBM
25666         * doc/libtool.texi: renamed file_magic_command to file_magic_cmd,
25667           renamed archive_sym_cmds to archive_expsym_cmds
25668         * ltconfig.in: ditto
25669         * ltmain.in: ditto
25670         * libltdl/ltdl.c: use lt_dlmalloc/free
25671         * libltdl/ltdl.h: define lt_dlmalloc/free
25672         * libtool.m4: added AC_CHECK_LIBM macro
25673         * ltconfig.in: renamed archive_sym_cmds to archive_expsym_cmds,
25674           added always_export_symbols, export_symbols_cmd, exclude_expsyms,
25675           include_expsyms, removed archive_cmds for cygwin/mingw and AIX,
25676           on Solaris store the exported symbols list in objdir
25677         * ltmain.in: allow -export-symbols for modules, use thread_safe flag,
25678           add include_expsyms to the exported symbols
25679
25680 1999-02-12  Gary V. Vaughan  <gary@gnu.org>
25681
25682         * libltdl/ltdl.h (_LTDLL_EXTERN): libltdl is no longer linked as a
25683         shared library, so the _declspec's were preventing the linker from
25684         resolving symbols on win32.  They have been removed now.
25685
25686 1999-02-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
25687
25688         * ltmain.in: don't try to read objdir/libname.la before it is
25689         created!
25690
25691         * ltmain.in: create libname.lai at link time, not at install time,
25692         but still create it at install time if it is missing
25693         Reported by Akim Demaille <demaille@inf.enst.fr>
25694
25695         * libltdl/ltdl.c (tryall_dlopen): strcmp filenames was reversed
25696
25697 1999-02-11  Thomas Tanner  <tanner@gmx.de>
25698
25699         * autogen: libltdl needs autoheader
25700         * demo/Makefile.am: renamed hell.debug to hell.static
25701           (we're demonstrating static linking, not debugging)
25702         * tests/demo*: ditto
25703         * doc/libtool.texi (libltdl): documented new lt_dlopen(NULL)
25704           feature
25705         * libltdl/acconfig.h: required for config.h
25706         * libltdl/configure.in: use config.h
25707         * libltdl/ltdl.c: use config.h, support lt_dlopen(NULL)
25708           (returns a handle for the program itself)
25709         * ltconfig.in: minor reformatting
25710         * ltmain.in: in lt_preloaded_symbols always define
25711           the program's symbols first, for -export-dynamic list all
25712           program symbols together, -export-symbols was broken for
25713           programs, minor reformatting
25714         * mdemo/Makefile.am: renamed mdemo.debug to mdemo.static
25715         * tests/mdemo*: ditto, mdemo.test was completely broken
25716
25717 1999-02-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
25718
25719         * ltconfig.in (irix5*, irix6*, osf3*, osf4*): do not use
25720         -set_version in archive_cmds if verstring is empty
25721         (irix6*, shlibpath_var, sys_lib_search_path-spec,
25722         deplibs_check_method): set appropriate values depending on
25723         selected ABI, -32, -n32 or -64, as set in LD by libtool.m4
25724         (uts4*): remove dot between .so and versuffix
25725
25726 1999-02-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
25727
25728         * ltconfig.in (irix5*, irix6*, deplibs_check_method): use
25729         file_magic for inter-library dependency tracking
25730
25731         * ltconfig.in (irix5*, hardcode_libdir_separator): set it to a
25732         colon, because on IRIX 5 only the last -rpath switch prevails, and
25733         it can be a list of colon-separated directories.  This change will
25734         affect irix6 too, but that's not a problem.
25735
25736         * ltconfig.in (irix5*, library_names_spec): add soname_spec,
25737         otherwise we can't dlopen
25738
25739 1999-02-08  Thomas Tanner  <tanner@gmx.de>
25740
25741         * ltconfig.in: according to Marcus Sundberg <mackan@stacken.kth.se>
25742           HP/UX, IRIX, OpenBSD, Digital Unix and SunOS support
25743           need_version=no and need_lib_prefix=no,
25744           fixed a bug in Solaris' archive_sym_cmds
25745
25746 1999-02-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
25747
25748         * libtool.m4 (ac_cv_sys_global_symbol_pipe): accept TAB in
25749         addition to space as separator, and allow more than one space
25750         between the symbol code and the symbol name; HP/UX's nm, for
25751         example, uses two spaces
25752         * ltconfig.in (global_symbol_pipe): ditto
25753         (bsdi4, deplibs_check_method): variable name was misspelled
25754         * libltdl/configure.in (libltdl_cv_preloaded_symbols): rewrite
25755         test, so as not to depend on the way global_symbol_pipe is
25756         initialized; the current test would get false positives, as
25757         global_symbol_pipe was initialized `x=""', not `x='
25758
25759         * libltdl/ltdl.c (find_module): initialize filename if dir is NULL
25760         Reported by Godmar Back <gback@cs.utah.edu>
25761
25762 1999-02-04  Godmar Back  <gback@cs.utah.edu>
25763
25764         * libltdl/ltdl.c (lt_dlopenext): missing space for terminator when
25765         allocating memory for shlib_ext
25766
25767 1999-02-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
25768
25769         * libltdl/ltdl.c (lt_dlopenext): tmp would be trashed if shlib_ext
25770         was longer than 3 characters
25771
25772 1999-02-02  Gary V. Vaughan  <gary@gnu.org>
25773
25774         * ltconfig.in: new config.guess returns *-*-cygwin now instead of
25775         *-*-cygwin32.  sed -e 's%\(cygwin\|mingw\)32%\1%g' ltconfig.in
25776         * ltmain.in:   sed -e 's%\(cygwin\|mingw\)32%\1%g' ltmain.in
25777
25778         * ltconfig.in (hardcode_libdir_flag_spec, allow_undefined_flag,
25779         archive_cmds, archive_sym_cmds, old_archive_from_new_cmds):
25780         removed duplication of config by assuming that `test $with_gcc =
25781         yes' implies gnu ld, otherwise MSVC++ (which I haven't tested
25782         since I inheritted the code from Ian Lance Taylor btw!) is implied.
25783
25784 1999-01-28  Gary V. Vaughan  <gary@gnu.org>
25785
25786         * ltmain.in: Reverted this change of Alexandre's from the
25787         1999-01-25; "don't try to use .o instead of .lo just because
25788         there's no PIC flag.  It loses if --disable-static, and there's
25789         not much point if we're referring to the same file anyway...",
25790         because not all linkers will accept .lo object names.
25791         * ltmain.in: In the case where --disable-static is specified (as
25792         noted in Alexandre's log entry), we just link some .o files to
25793         prevent the original error.
25794         Reported by Andrey Slepuhin <pooh@msu.ru>
25795
25796 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
25797
25798         * libtoolize.in: search for A[MC]_PROG_LIBTOOL, not
25799         AM_PROG_LIBTOOL
25800         Reported by Jeff Garzik <jgarzik@pobox.com>
25801
25802 1999-01-27  Gary V. Vaughan  <gary@gnu.org>
25803
25804         * THANKS: Now that we have a policy, applied it to the existing
25805         list.  This in no way demeans the work of those people removed
25806         from the THANKS file, who are still credited in the ChangeLogs and
25807         without who's work, libtool would not work so well on many
25808         platforms, but serves to highlight the outstanding and continued
25809         contribution the remaining people have made.  And I quote, "We
25810         reserve THANKS for people who have made major contributions, and
25811         leave the credit to the others for the ChangeLog only."
25812
25813         * THANKS: added Sam Vilain.
25814         * ltconfig.in ($echo):  When using printf to replace echo the shell
25815         expands %s\n to %sn.  Changed to use "%s\n" (with quotes).
25816         Reported by Sam Vilain <sam.vilain@nz.unisys.com>
25817
25818 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
25819
25820         * libltdl/ltdl.c (find_file): fix endless loop condition
25821         (find_module): filename allocation was off by 1
25822
25823         * libltdl/Makefile.am (distclean-local): renamed from
25824         distclean-hook, that didn't work
25825
25826         * libltdl/ltdl.c (lt_dlopen, non-.la): find_file now returns 0 on
25827         failure
25828
25829         * Makefile.am (ltconfig, ltmain.sh): some broken makes don't like
25830         macros in targets; replace $(srcdir) with @srcdir@
25831         * configure.in (ACINCLUDE_M4_LIST): same problem; expand $srcdir
25832
25833         * libltdl/Makefile.am (@TOINST@/libltdl.la): if installation is
25834         enabled, create to-be-installed libltdl.la within @TOINST@
25835         directory
25836         (noinst_LTLIBRARIES): even if installation is enabled, build
25837         convenience libltdl.la, otherwise builds of random packages may
25838         fail if the user happens to enable installation
25839         (distclean-hook): wipe out $(TOINST)
25840         * libltdl/configure.in: set TOINST and LIBLIBS as appropriate;
25841         don't set NOINSTLIBS any more
25842         * mdemo/Makefile.am: use libltdl.la
25843
25844         * libltdl/ltdl.c (find_file): oops, filenamesize was miscomputed
25845
25846         * libltdl/ltdl.c (find_file): allocate filename dynamically
25847
25848         * libltdl/configure.in (AC_PROG_LIBTOOL): automake does not
25849         recognize it and fail, better keep using AM_PROG_LIBTOOL until the
25850         next release of automake
25851         * demo/configure.in, cdemo/configure.in: ditto
25852         * depdemo/configure.in, mdemo/configure.in: ditto
25853
25854         * libltdl/ltdl.c: make all global strings char[], not char*; check
25855         that all calls to malloc() are properly cast
25856         (strdup, strchr, strrchr, trim, free_vars): declare as inline
25857         (find_module): allocate filename dynamically; support null dir
25858         (free_vars): free dir and name only if non-null
25859         (lt_dlopen): keep dir as NULL if not given; fix expression that
25860         calculated the size of name; only free and name if non-null
25861         (lt_dlopenext): allocate tmp dynamically
25862
25863         * configure.in (pkgdatadir): expand ${PACKAGE} at configure-time,
25864         just like automake does
25865
25866         * configure.in (pkgdatadir): define pkgdatadir explicitly, and
25867         comment that automake does not need it, but libtoolize does
25868
25869         * Makefile.am (aclocaldir): do not set it explicitly, automake
25870         does already
25871
25872         * configure.in (TIMESTAMP): use mkstamp here too
25873
25874 1999-01-27  Thomas Tanner  <tanner@gmx.de>
25875
25876         * cdemo/configure.in: renamed AM_PROG_LIBTOOL to AC_PROG_LIBTOOL
25877         * demo/configure.in: likewise
25878         * depdemo/configure.in: likewise
25879         * libltdl/configure.in: likewise
25880         * mdemo/configure.in: likewise
25881         * libltdl/ltdl.c: in find_module() check whether libdir is defined,
25882           tryall_dlopen(): move deallocation of an already opened handle
25883           to lt_dlopen(), allocate the directory in lt_dlopen() dynamically,
25884           minor cleanups, fixed memory leak (name)
25885         * libtool.m4: renamed all AM_ macros to AC_ and added aliases for
25886           compatibilty, updated AC_SYS_NM_PARSE (no undefined symbols,
25887           don't count the symbols)
25888         * ltconfig.in: added thread_safe_flag_spec (not used yet),
25889           added generic variable for linker options "linkopts" in
25890           all archive_cmds
25891         * ltmain.in: added -thread-safe flag (unused)
25892
25893 1999-01-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
25894
25895         * ltconfig.in (LTCONFIG_VERSION): damn!, adding TIMESTAMP doesn't
25896         always work, because then different ChangeLog timestamps fail to
25897         pass the version test.  Instead of forcing both ltconfig and
25898         ltmain.sh to be updated every time ChangeLog changes, better
25899         revert it
25900
25901         * ltconfig.in (LTCONFIG_VERSION): add TIMESTAMP, remove
25902         explicit quotes and add it to the list of variables to quote
25903
25904         * ltmain.in: reworded `dropped inter-library dependencies'
25905         message, and added a warning about inter-library dependencies even
25906         for non-module builds
25907
25908 1999-01-26  Gary V. Vaughan  <gary@gnu.org>
25909
25910         * Makefile.am (install-data-hook): Don't show the if expression
25911         that tests for gzip with a conditional error message; just do it
25912         quietly and show the error if it fails, or the next action if it
25913         succeeds.
25914
25915         * configure.in:  It seems Alexandre accidentally removed the
25916         AC_SUBST(pkgdatadir) line recently which breaks libtoolize.
25917         Reverted that small change.
25918
25919 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
25920
25921         * libltdl/ltdl.c (find_module): test old_name and dlname for NULL,
25922         not len==0
25923
25924         * libltdl/configure.in (libltdl_cv_objdir): yes, appending the "/"
25925         in configure.in was much simpler
25926         * libltdl/ltdl.c (objdir): ditto
25927
25928         * libltdl/ltdl.c (objdir): string collation isn't portable; strcat
25929         "/" explicitly.  Or should this be moved to configure.in?
25930
25931 1999-01-25  Thomas Tanner  <tanner@gmx.de>
25932
25933         * libltdl/ltdl.c: allocate the variables in lt_dlopen() dynamically
25934
25935 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
25936
25937         * ltmain.in (file_magic): use egrep instead of expr to support
25938         more general regular expressions
25939         (file_regex): remove it; the name is misleading, it's not used
25940         anywhere, and probably will never be
25941         * ltconfig.in, doc/libtool.texi: ditto
25942         * ltconfig.in (linux-gnu*, deplibs_check_method): extend regex to
25943         support `LSB dynamic lib' in the output of `file'
25944         Reported by Scott D. Heavner <sdh@po.cwru.edu>
25945
25946         * ltmain.in (dependency_libs, xrpath): add -R switches to
25947         dependency_libs only just before creating the .la file; they
25948         should not be passed to the C compiler or linker at
25949         library-creation time, since we don't know whether it is supported
25950
25951         * ltconfig.in (freebsd2.2*, hardcode_minus_L): for FreeBSD 2.2.6,
25952         this must be `no'
25953
25954         * mkstamp: move the sed script to extract revision and date
25955         information into a separate shell-script, so that we can break
25956         lines between commands; FreeBSD's sed doesn't like `;' after `t'
25957         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
25958         * Makefile.am: use mkstamp
25959         * THANKS: added Axel Thimm
25960
25961         * ltmain.in: don't try to use .o instead of .lo just because
25962         there's no PIC flag.  It loses if --disable-static, and there's
25963         not much point if we're referring to the same file anyway...
25964
25965         * ltmain.in (pass_all=none, droppeddeps): set only if deplibs was
25966         non-empty
25967
25968 1999-01-24  Thomas Tanner  <tanner@gmx.de>
25969
25970         * libltdl/ltdl.c: minor bugfixes, append a "/" the search
25971           directory only if necessary
25972         * ltconfig.in: added support for FreeBSD >= 3.0
25973           (patch from Kurt D. Zeilenga)
25974         * THANKS: added Kurt D. Zeilenga
25975
25976 1999-01-24  Thomas Tanner  <tanner@gmx.de>
25977
25978         * doc/libtool.texi (libltdl): list supported dlopen mechanisms,
25979           added function lt_dlopenext(), removed reference to
25980           LTDL_PRELOADED_SYMBOLS in LTDL_SET_PRELOADED_SYMBOLS
25981         * libltdl/ltdl.c: partially reverted Alexandre's dynamic string
25982           allocation change (it was not necessary and the code was unreadable),
25983           cleanups, removed usr_search_path_size, renamed usr_search_path
25984           to user_search_path, in find_module() also check for moved
25985           modules, merged find_file() and find_library(),
25986           added lt_dlopenext(), in lt_dladdsearchdir() no longer reset
25987           the search path if 'search_dir' == NULL and don't use realloc()
25988           (might not be available on all platforms),
25989           removed __P((void)) in the declaration of lt_dlgetsearchpath()
25990         * libltdl/ltdl.h: added lt_dlopenext()
25991         * ltconfig.in: AIX archive commands were broken,
25992           fixed a MAJOR bug in global_symbol_pipe which caused
25993           "demo-shared.test;demo-make.test" to fail (libtool must not extract
25994           undefined symbols of libraries, i.e. symcode must not contain 'U')
25995         * tests/Makefile.am (clean-local): "make distclean" in cdemo, too
25996
25997 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
25998
25999         * Makefile.am (ltconfig, ltmain.sh): add ChangeLog Revision to
26000         TIMESTAMP
26001         * configure.in: get values of PACKAGE and VERSION set by
26002         AM_INIT_AUTOMAKE, and extract only TIMESTAMP from the ChangeLog
26003
26004         * libltdl/ltdl.c (lt_dlopen): if we're reusing a previously opened
26005         handle, don't reset its name nor add it to the list, and free the
26006         name we have allocated
26007         Reported by Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
26008
26009         * Makefile.am (ltconfig, ltmain.sh, TIMESTAMP): let's not assume
26010         anything about the format of the date, just that it does not
26011         contain `$'
26012
26013 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
26014
26015         * configure.in (date): echo the version number during
26016         configuration, and show $date for cvs versions.
26017
26018         * Makefile.am ($(srcdir)/ltconfig): Oops.  cvs co keyword
26019         expansion ate the sed expression! Changed sed separator to '%'
26020         because there are '/' in the date.  Added missing '\(' to search
26021         expression.  Inserted a null string to stop cvs from expanding it
26022         next time =)O|
26023         ($(srcdir)/ltmain.sh): ditto.
26024
26025 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26026
26027         * Makefile.am (TSDEPS_DIST): dist-time dependencies for timestamps
26028         (timestamps, update-timestamps): check whether TSDEPS_DIST are
26029         up-to-date and update ltconfig and ltmain.sh if needed
26030         (ltconfig, ltmain.sh): depend on TSDEPS; replace @TIMESTAMP@ with
26031         the Date tag in the ChangeLog
26032         (TSDEPS): empty unless overridden by update-timestamps
26033         * ltconfig.in, ltmain.in (TIMESTAMP): append timestamp to most
26034         references to VERSION
26035
26036 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
26037
26038         * ltmain.in (ild): Revert the change which allowed libtool to
26039         link libraries with dependencies on .la libs.
26040         * NEWS: Removed reference to win32, incase 1.3 ships before
26041         ild is ready.
26042         * doc/PLATFORMS: Removed i686-pc-cygwin32, for the same reason.
26043         * doc/libtool.texi: Removed win32 refs, for the same reason.
26044
26045 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26046
26047         * ltmain.in (Xsed): add 1 to Xsed definition that goes into
26048         temporary wrapper scripts
26049         * libtool.m4: we don't have Xsed here, expand it manually
26050         Reported by Pavel Roskin <pavel_roskin@geocities.com>
26051
26052 1999-01-22  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
26053
26054         * ltmain.in (finalize_hardcode_libdirs, finalize_rpath): in
26055         platforms that use -rpath, programs must be finalized at
26056         installation time, otherwise build-tree programs will
26057         prefer installed libraries over build-tree ones
26058
26059 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26060
26061         * mdemo/Makefile.am (../libltdl/libtool): if it does not exist,
26062         the sub-make for libltdlc.la will take care of it, but we must at
26063         least provide an empty rule for it, otherwise the sub-make will
26064         never run
26065
26066         * demo/configure.in, demo/Makefile.am (DLPREOPEN): reverted; it
26067         didn't make any difference.
26068
26069 1999-01-21  Gary V. Vaughan  <gary@gnu.org>
26070
26071         * THANKS: Added Chris Laas <golem@MIT.EDU>
26072
26073         From Chris Laas <golem@MIT.EDU>
26074         * ltmain.in (compile):  corrected a typo in compile mode which
26075         caused "gcc: unrecognized option -c-fPIC" errors due to a missing
26076         space.
26077
26078 1999-01-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
26079
26080         * libltdl/configure.in: reintroduce code to detect native library
26081         extension
26082         * libltdl/ltdl.c (lt_dlopen): if a .la file name is given, that's
26083         all.  Otherwise, lt_dlopen now tries to append .la first.  If this
26084         fails, it tries the given filename, and, at last, tries to append
26085         the native library extension to the given filename.
26086         * doc/libtool.texi (lt_dlopen): explain new lookup strategy
26087
26088         * libltdl/ltdl.c: major rewrite to avoid almost all fixed-size
26089         buffers; only `tmp' in lt_dlopen remained.  But the code got ugly
26090         :-(
26091
26092         * ltconfig.in (linux-gnu*, finish_cmds): remove erroneous backslash
26093
26094         * demo/configure.in: set DLPREOPEN to -dlopen if we don't have
26095         shared libraries
26096         * demo/Makefile.am (DLPREOPEN): use instead of -dlpreopen
26097         (STATIC): use $(STATIC), not @STATIC@
26098         * mdemo/Makefile.am (STATIC): ditto
26099
26100         * tests/demo-shared.test, tests/demo-static.test: new tests
26101         * tests/mdemo-shared.test, tests/mdemo-static.test: ditto
26102         * tests/Makefile.am: ditto
26103         * doc/libtool.texi: document them
26104         * demo/Makefile.am, mdemo/Makefile.am (STATIC): do not use
26105         -static unconditionally, it can't work with --disable-static
26106         * demo/configure.in, mdemo/configure.in: check whether libtool was
26107         configured to build static libraries and, if not, set STATIC to an
26108         empty string
26109
26110 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26111
26112         * ltmain.in (module, droppeddeps): if libtool could not satisfy
26113         all dependencies of a module, it will only build a static version
26114         of it, and display a warning message
26115
26116 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
26117
26118         * ltconfig.in (aix4*, with_gcc, archive_cmds): fix typo in Andrey
26119         Slepuhin's last patch
26120
26121 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26122
26123         * Makefile.am (@DIST_MAKEFILE_LIST@): work around Ultrix /bin/sh bug
26124         * tests/nomode.test (must specify a MODE): ditto
26125         Reported by Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
26126         * THANKS: Added Rainer Orth
26127
26128 1999-01-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
26129
26130         * ltconfig.in: No known version of Solaris 2 hardcoded -L paths.
26131
26132 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
26133
26134         * ltmain.in: s/n\'t/ not/
26135         * doc/PLATFORMS: updates for sunos4/m68k and aix
26136
26137 1999-01-20  Andrey Slepuhin  <pooh@msu.ru>
26138
26139         * ltconfig.in (aix4*): check for reworked collect2, always pass
26140         -bnoentry option to linker when building a shared library
26141
26142 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26143
26144         * ltmain.in (file_magic): follow soft-links before running `file'
26145         on the candidate library; try to avoid entering endless loop
26146         Suggested by Nix <nix@esperi.demon.co.uk>
26147
26148         * ltconfig.in (linux*, solaris*, bsdi4*, sys_lib_search_path):
26149         remove expansion of $LD_LIBRARY_PATH
26150         * ltmain.in (lib_search_path): append the expansion of $shlibpath_var
26151         * doc/libtool.texi: document it
26152
26153         * THANKS: Added Steven Schultz
26154
26155 1999-01-20  Steven M. Schultz <sms@wlv.iipo.gtegsc.com>
26156
26157         * ltconfig.in (bsdi4*, check_shared_deplibs_method): file_magic
26158         (bsdi4*, sys_lib_search_path): add /shlib and other dirs
26159
26160 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26161
26162         * cdemo/main.c (main): use K&R definition syntax
26163         * mdemo/main.c (test_dl, main): ditto
26164         (test_dl): casts return value of lt_dlsym to appropriate types
26165
26166         * ltmain.in (dlsyms): #define const to nothing if not __STDC__
26167
26168         * ltconfig.in (global_symbol_pipe): #define const to nothing if
26169         not __STDC__
26170
26171         * demo/dlmain.c (main): cast s->address to the appropriate pointer
26172         types, otherwise StunOS4's cc refuses to compile it
26173
26174         * ltconfig.in (sunos4*, without_gnu_ld, with_gcc, archive_cmds):
26175         add -fPIC, because libgcc is multilibbed, and we want the PIC
26176         version of it for shared libraries, otherwise ld complains
26177
26178         * demo/dlmain.c (main): add missing const to declaration of name
26179
26180         * libltdl/ltdl.c (find_module): remove the libdir argument, and
26181         try to  open library only as old_name and dir/dlname
26182         (lt_dlopen): use `installed' variable in .la file to decide
26183         whether to use libdir or objdir
26184
26185         * demo/configure.in (AC_C_CONST): added, for portability
26186         * mdemo/configure.in (AC_C_CONST): ditto
26187         * libltdl/configure.in (AC_C_CONST, AC_C_INLINE): ditto
26188         * libltdl/ltdl.c (LTDL_FILENAME_MAX): use FILENAME_MAX if defined
26189         (FILENAME_MAX): replace all explicit uses with LTDL_FILENAME_MAX
26190         (presym_free_symlists, trim): don't return void, for portability
26191         (lt_dlgetsearchpath): replace (void) with __P((void))
26192
26193         * ltmain.in (compile): when compiling both PIC and non-PIC, write
26194         the PIC object to .libs/.lo and only rename it to .lo after
26195         compiling the .o, to avoid fooling make dependencies
26196
26197         * mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove
26198
26199 1999-01-20  Gary V. Vaughan  <gary@gnu.org>
26200
26201         * TODO: Added inter-library deps for ltlibs.
26202
26203         * THANKS: Added Vladimir Kushnir.
26204
26205 1999-01-20  Vladimir Kushnir  <kushn@mail.kar.net>
26206
26207         * ltconfig.in (freebsd3*): Define `deplibs_check_method' and
26208         `file_magic_command' for freebsd-elf.
26209
26210 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26211
26212         * TODO: should we also build a `static' copy of a convenience
26213         library out of .o files?
26214
26215         * ltconfig.in (bsdi4*, netbsd*, uts4*, library_names_spec,
26216         soname_spec): removed duplicate dot before $major
26217         Reported by Steven M. Schultz <sms@wlv.iipo.gtegsc.com> (bsdi4*)
26218
26219         * THANKS: added Manfred Weichel
26220
26221 1999-01-20  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
26222
26223         * ltconfig.in (sysv5*): same as sysv4.3*
26224
26225 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26226
26227         * libltdl/ltdl.c (lt_dlopen): properly detect error condition when
26228         full pathname of non-libtool library is provided
26229
26230         * libltdl/configure.in (libltdl_cv_preloaded_symbols,
26231         HAVE_PRELOADED_SYMBOLS): test whether we support -dl*open
26232         * libltdl/ltdl.c (!HAVE_PRELOADED_SYMBOLS, lt_preloaded_symbols):
26233         define it to an empty list if libtool won't generate it, so as to
26234         avoid link errors.  This will cause silent dlopening failures, but
26235         maybe this is better than failing to link the program...
26236
26237         * libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to
26238         declare lt_preloaded_symbols
26239         * doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto
26240
26241         * ltmain.in (dlpredeps): removed, reverting 1999-01-17's change
26242
26243 1999-01-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
26244
26245         * libltdl/Makefile.am (Makefile): depend on libtool
26246
26247         * ltmain.in (lt_preloaded_setup): function added to symbol list
26248         source file to work around FreeBSD problem
26249
26250         * Makefile.am (check-local): depend on libltdl/Makefile
26251
26252         * mdemo/Makefile.am (mdemo_LDFLAGS, mdemo_LDADD): moved -dlopen
26253         flags to LDADD
26254         * doc/libtool.texi (Using Automake): how to add -dlopen to LDADD
26255
26256 1999-01-19  Gary V. Vaughan  <gary@gnu.org>
26257
26258         From Andrey Slepuhin <pooh@msu.ru>
26259         * ltmain.in (hardcode_action) Oops, misapplied the patch!
26260
26261         * ltconfig.in (compile_dependencylbs): removed this
26262         variable and pick up the library dependencies from $deplibs.
26263         * ltmain.in (compile_dependencylibs): removed this
26264         variable, use deplibs to hold these dependencies.
26265
26266         From Andrey Slepuhin <pooh@msu.ru>
26267         * ltmain.in (hardcode_action) make sure deplibs is set to include
26268         all the extra libs added to compile_command.
26269
26270 1999-01-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
26271
26272         * libtool.m4 (LIBTOOL_DEPS): set it
26273         * libltdl/configure.in (LIBTOOL_DEPS): AC_SUBST it
26274         * libltdl/Makefile.am (libtool): use it
26275         * doc/libtool.texi (AM_PROG_LIBTOOL): document it
26276
26277         * Makefile.am (libltdl.tar.gz): don't create it as part of the
26278         build, since it is likely to become stale if we do
26279         (install-data-hook): create and install libltdl.tar.gz, without
26280         depending on GNU tar
26281         Reported by Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
26282
26283 1999-01-17  Thomas Tanner  <tanner@gmx.de>
26284
26285         * Makefile.am: added libltdl.tar.gz to CLEANFILES
26286         * ChangeLog: some reformatting
26287         * TODO: documentation updates
26288         * doc/libtool.texi: added preliminary libltdl documentation,
26289           updated dlopen and -module documentation,
26290           renamed -avoid-versioning to -avoid-version
26291           documented the libtool script variables compiler_c_o,
26292           compiler_o_lo, need_locks, old_postuninstall_cmds,
26293           postuninstall_cmds, sys_lib_search_path_spec,
26294           fix_srcfile_path, objdir, objext, libext,
26295           documented the two new flags (--ltdl[-tar]) of libtoolize
26296         * libltdl/Makefile.am: incremented the version, removed
26297           libtool dependency so that it can be build independently
26298         * libltdl/configure.in: removed LTDL_SHLIB_EXT hack,
26299           set version to 1.0, use AM_MAINTAINER_MODE,
26300           DLPREOPEN is always supported, check for libtool's objdir variable
26301           (LTDL_OBJDIR)
26302         * libltdl/ltdl.c: some cleanups (moved constants to the beginning
26303           of the file and prefixed all of them with LTDL_, minor optimizations
26304           in find_file() and find_module()), renamed lt_dlpreopen* to
26305           lt_dlpreload* for consistency, removed LTDL_SHLIB_EXT hack,
26306           we don't need unistd.h, DLPREOPEN is _always_ supported,
26307           reverted Alexandre's lt_dlpreopen_default_ change,
26308           try to open the not-installed module before the installed one,
26309           replaced lt_dlsearchpath() with lt_dladdsearchdir(),
26310           lt_dlsetsearchpath() and lt_dlgetsearchpath()
26311         * libltdl/ltdl.h: renamed lt_dlpreopen* to lt_dlpreload*
26312           for consistency, removed the declaration of lt_preloaded_symbols
26313           (should be imported by programs),
26314           reverted Alexandre's lt_dlpreopen_default_ change and added
26315           two new macros LTDL_PRELOADED_SYMBOLS and
26316           LTDL_SET_PRELOADED_SYMBOLS(),
26317           added lt_dladdsearchdir(), lt_dlsetsearchpath() and
26318           lt_dlgetsearchpath()
26319         * libtool.m4: some reformatting
26320         * libtoolize.in: implemented --ltdl, bugfix when checking for
26321           the libtool package directory
26322         * ltconfig.in: removed $thread_safe_flags from Andrey Slepuhin's
26323           AIX patch, renamed sys_lib_search_path to sys_lib_search_path_spec,
26324           some reformatting, fixed typo in deplibs_check_method (unkwnon)
26325         * ltmain.in: documented -o for compile mode, some reformatting,
26326           renamed -avoid-versioning to -avoid-version
26327           renamed sys_lib_search_path to sys_lib_search_path_spec
26328         * mdemo/Makefile.am: use -avoid-version
26329         * mdemo/main.c: use LTDL_PRELOADED_SYMBOLS and
26330           LTDL_SET_PRELOADED_SYMBOLS()
26331
26332 1999-01-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
26333
26334         * ltconfig.in (wlarc): set to either '${wl}' or an empty string,
26335         depending on whether archive_cmds runs CC or LD
26336         (gnu_ld=yes, whole_archive_flag_spec): "$wlarc" instead of '${wl}'
26337
26338         * mdemo/Makefile.am (../libltdl/libltdlc.la): depend on
26339         ../libtool, because ../libltdl/libtool depends on it
26340         (mdemo_debug_*): copy from mdemo_*, adding -static to LDFLAGS
26341
26342         * ltmain.in (dlpredeps): append dependencies from dlopened modules
26343         (but not dlpreopened ones) after all explicitly linked libraries
26344
26345         * ltconfig.in (need_lib_prefix, need_version,
26346         deplibs_check_method): default to unknown, so that we're
26347         remembered that this needs porting; unknown is interpreted as yes,
26348         yes and none, respectively
26349         (freebsd2*, freebsd3*, sunos4*, need_version): set to yes
26350         (freebsd2*, freebsd3*, library_names_spec): libraries without a
26351         version number are not used by `ld'; add $versuffix;
26352         Reported by Ben Jackson <ben@ben.com>
26353         * ltmain.in (deplibs_check_method): alias unknown to none
26354         (need_version): if vinfo was not provided and release info was,
26355         zero out versuffix only if we don't need_version.
26356         * doc/libtool.texi: document what `unknown' means
26357
26358         * libltdl/ltdl.h (lt_dlpreopen_default): reverted to a macro
26359         without arguments, that calls lt_dlpreopen_default_ with
26360         lt_dlpreloaded_symbols
26361         * libltdl/ltdl.c (lt_dlpreopen_default_): renamed from
26362         lt_dlpreopen_default
26363         (find_module) tryall_dlopen old_name first, so that we don't
26364         override statically linked symbols with dlopened ones
26365
26366 1999-01-15  Gary V. Vaughan  <gary@gnu.org>
26367
26368         From Andrey Slepuhin <pooh@msu.ru>
26369         * libtoolize.in (cd $pkgdatadir): Make sure we return the the
26370         working directory when this is done.
26371
26372         From Andrey Slepuhin <pooh@msu.ru>
26373         * ltconfig.in (aix): Use shared library support correctly on
26374         aix4*, and tweak the config for aix3.
26375         * NEWS: added aix3 and aix4 to list of hosts with improved
26376         support.
26377         * THANKS: added Andrey Slepuhin <pooh@msu.ru>.
26378
26379 1999-01-15  Thomas Tanner  <tanner@gmx.de>
26380
26381         * Makefile.am (@DIST_MAKEFILE_LIST@): added a second '$'
26382           before abs_scrdir, removed ltconfig and ltmain.sh from
26383           EXTRA_DIST (automake distributes them by default)
26384
26385 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26386
26387         * autogen: moved faking of the libtool scripts before
26388           the call of automake, so that ltconfig and ltmain.sh
26389           are included in the distribution
26390         * ltconfig.in: when checking whether PIC is supported assume
26391           only on HP/UX that warnings during compilation mean that
26392           PIC is not supported (Thanks to Ron O'Hara)
26393         * THANKS: added Ron O'Hara
26394
26395 1999-01-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
26396
26397         * Makefile.am: Moved ltconfig and ltmain.sh back into srcdir, and
26398         add them to the distribution.  Added work-around if `mv -f' fails.
26399         fix @AINCLUDE_M4_LIST@ and @DIST_MAKEFILE_LIST@ for relative and
26400         absolute specifications of srcdir
26401
26402 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26403
26404         * libltdl/ltdl.c: added variable symbol prefix, added user-defined
26405           library search path (can be set using lt_dlsearchpath()),
26406           added default_preloaded_symbols which are independent of
26407           lt_dlinit/exit
26408         * libltdl/ltdl.h: added lt_dlsearchpath() and
26409           lt_dlpreopen_default()
26410         * mdemo/Makefile.am: use -export-dynamic until libtool
26411           and libltdl are able to handle module dependencies
26412
26413 1999-01-14  Gary V. Vaughan  <gary@gnu.org>
26414
26415         * THANKS: added Mark Elbrecht.
26416         * ltconfig.in (PATH_SEPARATOR): new variable to hold valid $PATH
26417         separator characters for the build host, to support DJGPP
26418         environment.
26419         * ltconfig.in: Use PATH_SEPARATOR instead of hardcoded `:'.
26420         Reported by Mark Elbrecht <snowball3@usa.net>
26421
26422         * cdemo/README: typo: mdemo->cdemo
26423
26424 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26425
26426         * autogen: fake the libtool scripts to help fixing
26427           the bootstrapping problem
26428         * Makefile.am: always configure libltdl, however after building
26429           the libtool scripts,
26430           build the libtool scripts in builddir, not srcdir
26431           (unfortunately this breaks building when srcdir!=objdir,
26432            but it was just plain wrong - needs to be fixed),
26433           build and install libltdl.tar.gz,
26434           copy acinclude.m4 instead of linking them, so that we
26435           can 'make dist' in libltdl,
26436           fixed configuring of subdirectories
26437         * configure.in: removed --enable-ltdl-install - libltdl is supposed
26438           to be installed by packages, not by libtool itself
26439         * libtoolize.in: new flags --ltdl and --ltdl-tar to install libltdl
26440           in packages (--ltdl doesn't work yet),
26441           install only the necessary libtool scripts, not just all
26442           files in pkgdatadir
26443         * mdemo/Makefile.am: removed the rule for libltdl configuration
26444
26445 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26446
26447         * mdemo/Makefile.am (../libltdl/libtool): mkdir and configure
26448         ../libltdl
26449
26450 1999-01-13  Thomas Tanner  <tanner@gmx.de>
26451
26452         * demo/dlmain.c, libltdl/ltdl.c, ltconfig.in, ltmain.in,
26453           doc/libtool.texi: renamed dld_preloaded_symbols to
26454           lt_preloaded_symbols, symbol lists are 'const'
26455         * cdemo/configure.in: don't check for string.h
26456         * demo/dlmain.c: renamed dld_symlist to lt_symlist,
26457           preloaded symbols are 'const', use lt_ptr_t instead of void*
26458         * demo/foo.h: define lt_ptr_t
26459         * doc/libtool.texi: document lt_preloaded_symbols correctly
26460         * libltdl/Makefile.am, mdemo/Makefile.am: renamed libtest to libltdlc
26461         * libltdl/ltdl.c: fixed some minor typos, renamed dldpre to presym,
26462           bugfix: search in search_path only if we have no directory
26463           and a search_path, in lt_dlsym() check whether symbol != 0
26464         * libltdl/ltdl.h: removed lt_dlpreopen_default()
26465         * ltconfig.in (dlpreopen): removed dld_preloaded_symbol_count
26466         * ltmain.in: added help for -avoid-versioning, -export-symbols,
26467           -module, add @SYMFILE@ if one of -export-dynamic, -dlopen or
26468           -dlpreopen is used
26469         * mail/deplibs.html: added Gordon Matzigkeit's inter-library
26470           dependencies article
26471         * mdemo/Makefile.am: removed -export-dynamic from LDFLAGS
26472           (no longer necessary, since libtool defines lt_preloaded_symbols
26473           when -dlopen is used), initialize with lt_preloaded_symbols
26474
26475 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26476
26477         * doc/libtool.texi (Test descriptions): cdemo-static works, thanks
26478         to Edouard Parmelan!
26479
26480         * THANKS: added Sebastian Wilhelmi
26481
26482         * ltconfig.in (solaris): define `need_version' to no
26483
26484 1999-01-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
26485
26486         * ltconfig.in (solaris): Define `deplibs_check_method',
26487         `file_magic_command', `need_lib_prefix' and `sys_lib_search_path'
26488         * ltmain.in (file_magic_regex): Add space before matching pattern,
26489         such that it works on solaris (solaris has a tab between the
26490         library name (including the colon) and the `ELF' and such the
26491         `ELF' will never be matched).
26492
26493 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
26494
26495         * ltconfig.in (NM): PATH search was not updated like in
26496         libtool.m4, in last Alexandre Oliva's change to it
26497         (sysv4*, ncr): pass all library dependencies
26498         * ltmain.in (dependency_libs, -R): use `deplib' instead of `arg' to
26499         iterate, otherwise we'd overwrite `arg'
26500         (convenience, old_libs): if --disable-shared, convenience
26501         libraries are just old archives, as .lo's are of no use
26502         * tests/cdemo-static.test: print --disable-shared here
26503
26504 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26505
26506         * libltdl/configure.in (libltdl_cv_shlibext, LTDL_SHLIB_EXT):
26507         system-dependent extension of shared libraries
26508         (libltdl_cv_shlibpath_var, LTDL_SHLIBPATH_VAR): system-dependent
26509         run-time shared library search path
26510         * libltdl/ltdl.c (dldpre_init, dldpre_exit): unrelate init/exit
26511         from add/remove symlists, so one may add dld_preloaded_symbols
26512         from main(), when only a library will call dldpre_init
26513         (lt_dlopen): use LTDL_SHLIBPATH_VAR, if defined, as secondary
26514         search path.  Also, if a requested .la file cannot be found, try
26515         with the LTDL_SHLIB_EXTension instead.
26516
26517         * ltmain.in (old_archives, oldobjs): use find to SYMDEF here too
26518
26519         * Makefile.am (@DIST_MAKEFILE_LIST@): `$' must be doubled
26520
26521         * configure.in (AC_CONFIG_DIRS): configure only libltdl, and then,
26522         only if --enable-ltdl-install
26523         (CONF_SUBDIRS): list directories that are configured on demand,
26524         but that must be included in the distribution
26525         (ACINCLUDE_M4_LIST, DIST_MAKEFILE_LIST): generated from CONF_SUBDIRS
26526         * Makefile.am (AUTOMAKE_OPTIONS): added version 1.3e and
26527         readme-alpha, to handle README-alpha automatically
26528         (EXTRA_DIST): removed README-alpha
26529         (BUILD_SUBDIRS): subdirectories that are always built
26530         (SUBDIRS): BUILD_SUBDIRS plus BUILD_LTDL
26531         (DIST_SUBDIRS): BUILD_SUBDIRS plus CONF_SUBDIRS, from configure
26532         (all-local, check-local): depend on $(ACINCLUDE_M4_LIST), from
26533         configure, and libtool, so that it is built before subdirs
26534         (configure-subdirs): new target
26535         (configure-subdirs, distdir): depend on $(DIST_MAKEFILE_LIST),
26536         from configure
26537         (@DIST_MAKEFILE_LIST@): create subdir if needed, then run
26538         configure.
26539         On-demand configuration of subdirs at distribution time was
26540         suggested by Gary V. Vaughan <gary@gnu.org>
26541
26542         * libtool.m4, ltconfig.in (NM): search for NM in PATH before
26543         /usr/ccs/bin, /usr/ucb and /bin.  However, if the found one isn't
26544         BSD-compat keep searching.  If no BSD-compat is found, use the
26545         first we found.
26546
26547         * THANKS: added Raffaele Sena
26548
26549 1999-01-13  Raffaele Sena  <raff@aromatic.com>
26550
26551         * libltdl/ltdl.c: replaced RTDL with RTLD
26552
26553 1999-01-13  Manish Singh  <yosh@gimp.org>
26554
26555         * ltconfig.in (osf3*, osf4*, irix6*): include
26556         ${libname}{release}.so for library_names_spec
26557
26558 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26559
26560         * configure.in (AC_CONFIG_SUBDIRS): added cdemo
26561         * Makefile.am (DIST_SUBDIRS): ditto
26562         (ACINCLUDE_M4_LIST): ditto
26563         * tests/Makefile.am (TESTS): added cdemo-shared.test
26564         * tests/cdemo-static.test: disable shared libraries here
26565         * tests/cdemo-shared.test: disable static libraries here
26566         * doc/libtool.texi (Test descriptions): added cdemo tests
26567         * THANKS: added Edouard G. Parmelan
26568
26569 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
26570
26571         * ltmain.in: fix convenience libraries when static libraries
26572         are disables.
26573         * cdemo/README, cdemo/Makefile.am, cdemo/configure.in, cdemo/foo.h,
26574         cdemo/foo1.c, cdemo/main.c, cdemo/.cvsignore, test/cdemo-conf.test,
26575         test/cdemo-make.test, test/cdemo-exec.test, test/cdemo-static.test:
26576         new tests for convenience libraries.
26577         * autogen, Makefile.am, test/Makefile.am: ditto.
26578
26579         * ltconfig.in, doc/PLATFORMS: Added support for NCR MP-RAS
26580         (i586-ncr-sysv4.3*) with native compiler.
26581         * README, doc/libtool.texi: Added note for NCR MP-RAS compiler.
26582
26583 1999-01-12  Thomas Tanner  <tanner@gmx.de>
26584
26585         * ltmain.in: before using LN_S remove the symlink
26586         * libltdl/ltdl.c: support multiple symbol lists, moved library-
26587           and file searching to separate functions, renamed "preload_libs"
26588           to "dl_dependency_libs", set the LT_SYMBOL_OVERHEAD to the correct
26589           value (7), fix to support lt_dlsym() for not-libtool modules again,
26590           check for invalid handles, when using strdup() check whether
26591           it fails
26592         * libltdl/ltdl.h: declare the lt_dlsymlist type for lt_dlpreopen()
26593         * mdemo/README: rewritten
26594         * mdemo/configure.in: check only for math.h (string.h is no longer
26595           necessary)
26596
26597 1999-01-12  Gary V. Vaughan  <gary@gnu.org>
26598
26599         * configure.in (ltdl-install): Fixed up the indentation so that
26600         `configure --help' is pretty again.
26601
26602 1999-01-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
26603
26604         * ltmain.in, NEWS, doc/libtool.texi: Added support for -R flag
26605         * ltmain.in, doc/libtool.texi: documented that -rpath is the same
26606         as -R for programs
26607         * ltmain.in: softened the instructions for linking with installed
26608         libraries, and noted that libtool can be used to link with them;
26609         documented that -rpath is not required for convenience libraries
26610
26611         * ltconfig.in (symxfrm): don't print $pipe_works twice, once for
26612         each $ac_symprfx
26613         Reported by Godmar Back <gback@cs.utah.edu>
26614
26615         * ltmain.in (convenience, libobjs): get only .o and .lo files from
26616         the files extract from the convenience library.  Some systems,
26617         such as FreeBSD2, will add a SYMDEF file, that is not an object
26618         file, and therefore should not be fed to the linker
26619
26620         * libtool.m4 (AM_SYS_NM_PARSE): while we are at it, we may well
26621         cache the value of ac_cv_sys_symbol_underscore
26622
26623         * libtool.m4 (AM_SYS_NM_PARSE): need for underscore prefix is now
26624         auto-detected, by trying first without, then with it.
26625
26626         * ltconfig.in: ditto
26627
26628 1999-01-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
26629
26630         * configure.in (AC_CONFIG_SUBDIRS): add libltdl, demo, mdemo and
26631         depdemo commented out, so that `dist' works before `check'
26632         (BUILD_LTDL): will contain libltdl if --enable-ltdl-install
26633         * Makefile.am (DIST_SUBDIRS): expand SUBDIRS and add depdemo,
26634         commented out
26635         (SUBDIRS): add $(BUILT_LTDL)
26636         * libltdl/Makefile.am (EXTRA_LTLIBRARIES): add libtest.la, the
26637         same as libltdl but always a convenience library.  Not built by
26638         default.  Both libraries now depend on the libtool script, that
26639         depends on ../libtool and is rebuilt when needed
26640         * mdemo/Makefile.am (mdemo, mdemo.debug): depend on and link with
26641         ../libltdl/libtest.la, that is rebuilt if needed
26642         (mdemo_LDADD): removed $(LIBADD_M), to avoid silent failures
26643         (foo1.la): renamed from libfoo1.la; test removing the lib prefix
26644         * mdemo/foo1.c: renamed libfoo1_LTX symbols to foo1_LTX
26645         * mdemo/main.c: don't include string.h nor math.h, nor refer to
26646         sin nor cos
26647         * tests/mdemo-exec.test: renamed libfoo1.la to foo1.la
26648         * tests/mdemo-inst.test: ditto
26649
26650         * libltdl/ltdl.c (FILENAME_MAX): use it instead of MAX_FILENAME,
26651         and don't redefine it if already defined; default to 1024, as on
26652         most systems
26653         (LT_SYMBOL_LENGTH): renamed from MAX_SYMBOL_LENGTH
26654         (LT_SYMBOL_OVERHEAD): new macro, that accounts for the size of
26655         the _LTX_ separator and the initial underscore
26656         (lt_dlsym): sym now points to a stack buffer (lsym) if possible,
26657         or is dynamically allocated.  If allocation fails, a
26658         buffer_overflow_error is returned.
26659
26660 1999-01-10  Thomas Tanner  <tanner@gmx.de>
26661
26662         * ltmain.in: define dld_preloaded_symbols if at least one of
26663           -export-dynamic, -dlopen or -dlpreopen was specified,
26664           do not include program objects in the symbol list
26665           if -export-dynamic was not enabled
26666         * libltdl/ltdl.c: limit symbols to max. 256 bytes
26667         * mdemo/Makefile.am: build libltdl in a subdirectory,
26668           do not use -export-dynamic for mdemo and mdemo.debug
26669         * tests/mdemo-conf.test,tests/mdemo-make.test,tests/mdemo-inst.test:
26670           do not check for libltdl
26671
26672 1999-01-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
26673
26674         * libltdl/ltdl.c (lt_dlopen): missing strlen in bound test
26675
26676 1999-01-09  Thomas Tanner  <tanner@gmx.de>
26677
26678         * NEWS: support for BSD/OS 4.x was not documented
26679         * demo/Makefile.am: link against libm only if available
26680         * mdemo/Makefile.am: likewise, use -avoid-versioning flag
26681           instead of -avoid-version (typo)
26682         * demo/configure.in: check for libm, string.h and math.h
26683         * mdemo/configure.in: likewise
26684         * depdemo/configure.in: check for libm and math.h
26685         * libltdl/configure.in: check for dlerror
26686         * libltdl/ltdl.c: check for buffer overflows, implemented
26687           dlerror, fixed a severe bug which occured when opening
26688           non-libtool modules, dlopen with the flags GLOBAL and NOW
26689         * mdemo/main.c: report the error using lt_dlerror()
26690
26691 1999-01-08  Gary V. Vaughan  <gary@gnu.org>
26692
26693         * doc/libtool.texi (old_archive_from_new_commands): Documented
26694         this ltcofig variable.
26695
26696 1999-01-07  Gary V. Vaughan  <gary@gnu.org>
26697
26698         * ltmain.sh (cygwin, allow_undefined): Unfortunately, there are
26699         problems with this variable when trying to make a dll which has
26700         undefined symbols, in which case not even a static library is
26701         built.  For now, we need to specify -no-undefined on the libtool
26702         link line when we can be certain that all symbols are satisfied,
26703         otherwise we get a static library.
26704
26705 1999-01-06  Thomas Tanner  <tanner@gmx.de>
26706
26707         * ChangeLog: merged in tests/ChangeLog
26708         * tests/ChangeLog: deleted
26709         * libltdl/ltdl.c: assigned copyright to the FSF
26710         * libltdl/ltdl.h, mdemo/foo*,main.c: likewise
26711
26712 1999-01-06  Gary V. Vaughan  <gary@gnu.org>
26713
26714         * ltmain.in (dllsearchpath): add absolute directory paths to
26715         dllsearchpath so that the wrapper scripts can be called from any
26716         directory (e.g. tests) on cygwin.
26717
26718         * ltconfig.in (cygwin, library_names_spec): revert Alexandre's
26719         change from yesterday to use `-dll.a' suffix.  That change caused
26720         $libname-dll.a to be a symlink to $soname, which isn't even an
26721         `ar' archive.  Before the import library suffix can be changed, we
26722         need to figure out how to handle building objects differently for
26723         linking with an import library versus an equivalent static library.
26724
26725         * TODO: Added details of a Linux wrapper script bug.
26726         Reported by Jeff Garzik <jgarzik@pobox.com>.
26727
26728 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
26729
26730         * ltmain.in (libobjs_save, oldobjs): when building an
26731         old-fashioned archive, use a copy of libobjs saved before
26732         convenience libraries are appended
26733
26734         * libltdl/ltdl.h (_LTDLL_EXPORT, _LTDLL_IMPORT): use cygwin or
26735         unix library import/export primitives; this may be convenient for
26736         people willing to create DLLs
26737         (_LTDLL_EXTERN): select _LTDLL_EXPORT or _LTDLL_IMPORT depending
26738         on _LTDL_COMPILE_
26739         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlpreopen): new function,
26740         that replaces the current preloaded_symbols list with its
26741         argument, and returns the old value, initially NULL
26742         (dldpre_init): don't refer to dld_preloaded_symbols any more
26743         (dldpre_open, dldpre_sym): search preloaded_symbols
26744         (lt_dlpreopen_default): call lt_dlpreopen with
26745         dld_preloaded_symbols, that is declared as extern; it should be
26746         called from the main program or from some static library without
26747         -no-undefined
26748         (lt_dlerror): new function, that returns the error message for the
26749         last error occurred; the error message is kept in the static
26750         variable last_error
26751         * libltdl/configure.in (enable-ltdl-install): moved back from
26752         enable-install; other packages might use enable-install already,
26753         better have fine grained control over this.
26754         * libltdl/Makefile.am (libltdls.la): discarded
26755
26756 1999-01-05  Thomas Tanner  <tanner@gmx.de>
26757
26758         * configure.in: do not configure libltdl by default
26759         * Makefile.am: do not build libltdl by default
26760         * libltdl/Makefile.am: ltdls.lo depends on libtool
26761         * tests/Makefile.am: before starting the tests
26762           make sure that libtool was build
26763         * tests/mdemo-conf.test: configure libltdl
26764         * tests/mdemo-make.test: build libltdl
26765
26766 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
26767
26768         * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
26769         would lose for files with embedded blanks.
26770
26771         * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
26772         ltdll.c into ltmain.in, to avoid its duplication, and added a sed
26773         script to extract it.  Also, create def and base files in $objdir,
26774         and don't remove them after the compilation.
26775         (cygwin, library_names_spec): Create static part of the dll with
26776         suffix -dll.a, to avoid conflicts with actual static libraries.
26777         * ltmain.in: Added ltdll.c, as commented out text
26778
26779 1999-01-01  Thomas Tanner  <tanner@gmx.de>
26780
26781         * NEWS: new BeOS support
26782         * THANKS: added Joseph Beckenbach
26783         * libltdl/ltdl.h: use dllimport/export on Win32
26784
26785 1998-12-31  Joseph Beckenbach III <jrb3@best.com>
26786
26787         * ltconfig.in: added support for BeOS
26788         * ltmain.in (shlibpath_var): added a workaround for
26789           an odd bug in the BeOS R4 sed
26790
26791 1998-12-31  Thomas Tanner  <tanner@gmx.de>
26792
26793         * verified all copyright notices
26794           and updated them to 1999
26795         * TODO: added some things that need to documented
26796         * doc/libtool.texi: -export-symbols is not
26797           supported on all platforms
26798         * doc/PLATFORMS: added a few new platforms
26799
26800 1998-12-30  Thomas Tanner  <tanner@gmx.de>
26801
26802         * NEWS: updated
26803         * THANKS: added Todd Vierling <tv@pobox.com>
26804
26805 1998-12-30  Todd Vierling  <tv@pobox.com>
26806
26807         * ltconfig.in: improved shared object handling on both
26808           a.out and ELF platforms for NetBSD
26809
26810 1998-12-29  Thomas Tanner  <tanner@gmx.de>
26811
26812         * ltconfig.in: do not rely on a leading space when concatenating
26813           variables as suggested by Erez Zadok
26814         * ltmain.in: likewise
26815         * doc/PLATFORMS: updated and reformatted
26816           (thanks to Erez Zadok for the testing)
26817
26818 1998-12-27  Thomas Tanner  <tanner@gmx.de>
26819
26820         * THANKS: added Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
26821
26822 1998-12-26  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
26823
26824         * ltconfig.in: support i486-ncr-sysv4.3.03
26825         shared libraries.
26826
26827         * ltmain.in: before every ln -s, remove the link name
26828
26829 1998-12-25  Thomas Tanner  <tanner@gmx.de>
26830
26831         * depdemo/configure.in: removed last relics of demo
26832         * depdemo/sysdep.h: ditto
26833         * mdemo/Makefile.am: ditto
26834         * libltdl/Makefile.am: fixed the version number, build libltdls if
26835           -enable-install and -enable-dlpreopen are enabled
26836         * libltdl/configure.in: libltdl is version 0.1, not 1.0,
26837           renamed -enable-ltdl-install to -enable-install,
26838           conditionals for libltdls, check for strchr and index,
26839           replaced NULL with 0
26840         * libltdl/ltdl.c: replaced NULL with 0, dlpreopen only if
26841           USE_DLPREOPEN was defined, integrated shl_load code from GModule
26842           (still untested)
26843
26844 1998-12-24  Gary V. Vaughan  <gary@gnu.org>
26845
26846         * libltdl/configure.in: fixup spacing in --enable-ltdl-install
26847         help string so that it lines up nicely for configure --help.
26848
26849         * ltmain.in (dllsearchpath): keep track of what the dll search path
26850         will need to be in the wrapper scripts as deplibs are calculated.
26851         Make sure the wrapper script doesn't end in `.exr', which makes
26852         win32 try to execute it as a binary!
26853         Add the contents of dllsearchpath to $PATH in the wrapper script.
26854         Use the relative path to the wrapped program so that the dll
26855         search path is calculated properly by win32 OSes.
26856         * TODO: removed the item for making wrapper scripts work on win32.
26857
26858         * TODO: removed the reference to making libltdl and demo work on
26859         win32.  They *do* work now that wrapper scripts are functioning.
26860
26861         * ltmain.in (file_magic_command): It turns out that if the
26862         file_magic_command generates huge output (e.g. running `objdump
26863         -f' over a large import lib [say libX11.a]) the expr to check it
26864         against the file_magic_regex blows up.  There is now an optimistic
26865         heuristic, to save only the first 10 lines of running
26866         file_magic_command which (at risk of sounding like Bill) should be
26867         enough for anyone =)O|.
26868
26869         * ltmain.in: Set the compile_dependencylibs and dllsearchpath for
26870         non-libtool libs, or else libdeps only works between ltlibs for
26871         cygwin32.
26872
26873 1998-12-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
26874
26875         * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
26876         long lines to sed
26877         * doc/libtool.texi (sed): very long lines are no longer a problem
26878
26879         * libltdl/Makefile.am: install libltdl conditionally...
26880         * libltdl/configure.in: ... if --enable-ltdl-install is issued
26881         * libltdl/ltdl.c: removed #ifdef DEBUG
26882         * mdemo/Makefile.am (mdemo_debug_LDADD, mdemo_debug_DEPENDENCIES):
26883         use libltdl.la
26884
26885 1998-12-23  Gary V. Vaughan  <gary@gnu.org>
26886
26887         * doc/PLATFORMS: added my cygwin32 box (i686-pc-cygwin32).
26888
26889         * TODO: remind myself of the win32 tasks remaining.
26890
26891         * ltconfig.in (archive_cmds, archive_sym_cmds,
26892         old_archive_from_new_cmds): Fixed a bug which left an a.exe in the
26893         build directory.  Fixed a bug where $soname-def was never deleted.
26894
26895         * ltconfig.in (file_magic_command): new variable holds the command
26896         (including any args) to run to generate the string to match
26897         against the regex in $file_magic.  Use the variable where
26898         necessary. Added to libtool header output.
26899         (deplibs_check_method): use file_magic for win32, but compare the
26900         output of `objdump -f' with the regex (see below).
26901         (archive_cmds, archive_sym_cmds): use compile_dependencylibs for
26902         each $CC invokation (see below).
26903
26904         * ltmain.in: Set allow_undefined to `no' for win32 variants by
26905         default, otherwise it is impossible to link a dll without forcing
26906         the makefile maintainer to figure out whether to pass
26907         --no-undefined at every libtool invokation.
26908         (compile_dependencylibs): save the list of dependency library
26909         flags needed for a deplib build on win32.
26910         (link_against_libtool_libs): commented out the check for this;  if
26911         it is left in, then ltlibs (i.e. *.la files) cannot be deplibs for
26912         subsequent links.
26913         Don't add -lc to the deplibs line for win32 platforms (which don't
26914         have a libc as such).
26915         (file_magic_command): use this to get some output to compare with
26916         the file_magic regex (instead of hardcoding `file' which doesn't
26917         exist on win32.
26918         * doc/libtool.texi (Porting inter-library dependencies): Updated
26919         to document the changes above.
26920
26921         * ltconfig.in (deplibs_check_method): Changed the file_magic regex
26922         to match more linux variants.  This is less lenient than Thomas
26923         Tanner's commit to fix the same problem below.
26924         Reported by Joel Klecker <espy@debian.org>
26925         * THANKS: added Joel Klecker <espy@debian.org>
26926
26927 1998-12-23  Thomas Tanner  <tanner@gmx.de>
26928
26929         * ltconfig.in: fixed file-magic for Linux shared libraries
26930         * ltmain.in: removed the unused -force-static flag
26931         * libltdl/ltdl.c: added strchr, search modules in LTDL_LIBRARY_PATH,
26932           check whether actual module was already dlopened,
26933           read in preload_libs rather than dependency_libs
26934
26935 1998-12-23  Thomas Tanner  <tanner@gmx.de>
26936
26937         * libltdl/Makefile.am: build two versions of libltdl:
26938           libltdl (support native dlopen if available, otherwise dlpreopen),
26939           libltdls (like libltdl, but always support for dlpreopen)
26940         * libltdl/ltdl.c: ditto
26941         * libltdl/configure.in: warn if dlopen is not supported
26942         * mdemo/Makefile.am (mdemo.debug): use libltdls
26943
26944 1998-12-22  Gary V. Vaughan  <gary@gnu.org>
26945
26946         * ltconfig.in: revert Thomas Tanners change to create all
26947         libraries without the `lib' prefix on win32, otherwise `gcc foo.c
26948         -lbar' can't find libbar.a.
26949
26950 1998-12-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26951
26952         * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
26953         dependency hack
26954
26955 1998-12-21  Thomas Tanner  <tanner@gmx.de>
26956
26957         * ltconfig.in: indentation is now 8 character wide tabs
26958         * ltmain.in: ditto
26959         * ChangeLog: ditto
26960         * ltmain.in: renamed check_shared_deplibs_method to
26961           deplibs_check_method (we_dont_want_too_long_variable_names :)
26962         * doc/libtool.texi (Porting inter-library dependencies): ditto
26963         * depdemo/.cvsignore: renamed hell* to depdemo*, added *.lo,*.la
26964         * mdemo/.cvsignore: ditto
26965
26966 1998-12-21  Gary V. Vaughan  <gary@gnu.org>
26967
26968         * libtool.m4 (AM_SYS_NM_PARSE): apparently  __ptr_t is predefined
26969         on some systems - use lt_ptr_t instead.
26970         * ltconfig.in: ditto.
26971         * ltmain.in: ditto.
26972
26973         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): use an AC_SUBST to pass
26974         the result of this into the compile rather than AC_DEFINE which
26975         breaks when building with older versions of autoconf.
26976         * ltconfig.in (symxfrm): Don't put the leading underscore back
26977         with the global_symbol_pipe.
26978         * demo/dlmain.c (main): No need to specialcase underscores in
26979         dld_preloaded_symbols - it is fixed by symxfrm above!
26980         * libltdl/configure.in: use AM_SYS_SYMBOL_UNDERSCORE from
26981         libtool.m4 rather than reinvent the wheel here =)O|
26982
26983         * ltmain.in:  Fix deplibs methods to not rely on a.out (cygwin
26984         uses a.exe!).
26985
26986         * libltdl/configure.in: Cleanups - fix header comment and emacs
26987         local-vars.
26988
26989         * demo/dlmain.c (win32_force_data_import_address): a nasty hack
26990         to force the address of imported data symbols into
26991         dld_preloaded_symbols on win32, which does data imports
26992         differently to function imports (sheesh!).  This functionality
26993         needs to be moved into the dld_preloaded_symbols generation code.
26994         demo/helldl with static linking is broken on win32 by this change,
26995         probably until after libtool-1.3 =(O|
26996         * demo/foo.h: make sure __CYGWIN32__ is always defined on cygwin32
26997         systems.  Use the correct __declspec macro for lib exports/imports
26998         on cygwin32.
26999         * demo/foo.c, demo/hello.c: Make sure we tell foo.h that these
27000         sources are inside libfoo, and want to export symbols.
27001
27002 1998-12-20  Thomas Tanner  <tanner@gmx.de>
27003
27004         * autogen: configure demo, depdemo, libltdl and mdemo
27005         * tests/mdemo-exec.test: renamed hell* to mdemo*
27006         * tests/mdemo-inst.test: ditto
27007
27008 1998-12-19  Thomas Tanner  <tanner@gmx.de>
27009
27010         * libltdl/Makefile.am: build a normal libtool library
27011         * libltdl/ltdl.c: get LTDL_LIBRARY_PATH but don't make use of it yet,
27012           some reformatting
27013         * ltmain.in: fixed a bug which listed symbols in
27014           dld_preloaded_symbols twice
27015         * TODO: removed symbol export lists and deplibs
27016
27017 1998-12-18  Thomas Tanner  <tanner@gmx.de>
27018
27019         * ltconfig.in: added need_lib_prefix and need_version,
27020           which determine whether we must prefix modules with 'lib'
27021           and whether versioning is required for libraries.
27022         * ltmain.in: allow modules names without 'lib' prefix,
27023           new -avoid-versioning option
27024         * doc/libtool.texi (link flags): updated documentation for -module,
27025           added -avoid-versioning
27026         * doc/libtool.texi (libtool script contents):
27027           documented the two new flags and archive_sym_cmds
27028         * doc/libtool.texi (tests):
27029           added (partially very short) documentation for assign.test,
27030           nomode.test, quote.test, sh.test
27031         * libltdl/ltdl.c: canonicalize module names,
27032           some cleanups and bugfixes,  __ptr_t is predefined on
27033           some systems - use lt_ptr_t instead
27034         * mdemo/: renamed hell* to mdemo* (hell is already used in
27035           demo), updated the documentation, import sin and cos in main
27036           program rather than linking libfoo1 statically
27037
27038 1998-12-17  Gary V. Vaughan  <gary@gnu.org>
27039
27040         * libtool.m4 (AM_PROG_LIBTOOL): Added AC_PREREQ(2.12) to prevent
27041         people using libtool with old autoconfs that don't provide the
27042         features we need.
27043
27044 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27045
27046         * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
27047
27048         * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
27049
27050         * Makefile.am (cvs-dist): our release tags are in lower case
27051         (cvs-diff): ditto
27052         (EXTRA_DIST): added README-alpha
27053         * README-alpha: minor adaptations
27054         * demo/Makefile.am, mdemo/Makefile.am, depdemo/Makefile.am:
27055         removed comment about special needs for distribution
27056         * depdemo/Makefile.am: don't generate dependencies
27057         * depdemo/configure.in: modified version number
27058
27059         * ltmain.in (-force-static, force_static): removed
27060         * libltdl/Makefile.am (CFLAGS): ditto
27061         * libltdl/configure.in: check for memory.h, rindex() and
27062         dlpreopening.  Fixed NEED_USCORE caching policy.
27063         * libltdl/ltdl.h (lt_dlsym): make the name argument const
27064         * libltdl/ltdl.c (types): new variable: head of list of available
27065         dlopening mechanisms
27066         (lt_dltype_t): interface of a dlopening mechanism, with pointers
27067         to functions for init, exit, open, close and sym
27068         (lt_dlhandle_t): added pointer to interface type
27069         (strdup): don't name it strdup; it can be troublesome
27070         (strrchr): ditto; use rindex if available
27071         (LIBTOOL_STATIC): check HAVE_DLPREOPEN instead, and move to the
27072         end of the file, so that it becomes the header of the list
27073         (all): renamed all interface-implementation functions, to avoid
27074         name clashes, and created lt_dltype_t nodes for all of them
27075         (lt_dlinit): initialize all available interfaces; remove those
27076         that fail from the list.  Return failure only if no interfaces
27077         could be initialized.
27078         (lt_dlexit): return number of failures
27079         (tryall_dlopen): try to open the library with all available
27080         interfaces
27081         (lt_dlopen): use tryall_dlopen; increased size of fixed buffers.
27082         We should probably make these bound-checked or dynamically
27083         allocated for the final release!  Fix bug when filename did not
27084         contain slashes; should we check for `\\' too?  Try old_library if
27085         everything else fails.
27086         (lt_dlclose): use the interface type for closing
27087         (lt_dlsym): make `symbol' const, use interface type for looking up
27088         * mdemo/Makefile.am: moved mdemo/modules/* back into mdemo
27089         (SUBDIRS): removed
27090         (libfoo2_la_LDFLAGS): added -static; nice test.  However, since it
27091         causes -lm to linked into hell*, it causes tests that should fail
27092         to pass
27093         (noinst_HEADERS): no need to install foo.h
27094         * mdemo/configure.in: remove modules/Makefile
27095         tests/mdemo-exec.test: updated accordingly
27096
27097         * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
27098         maintainers.  Detailed expected failures of libltdl+mdemo.  Listed
27099         recent ports.  Added full URL for the home page.  Note that
27100         libtool C program is unusable.
27101
27102 1998-12-16  Bruno Haible  <haible@ilog.fr>
27103
27104         * doc/libtool.texi (Tested platforms): broken `sed' programs
27105
27106 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27107
27108         * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
27109         Tanner, now that they're AUTHORS
27110
27111 1998-12-16  Stephan Kulow  <coolo@kde.org>
27112
27113         * ltmain.in (freebsd-aout, freebsd-elf): added missing dot to
27114         versuffix
27115
27116 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27117
27118         * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
27119         (libtool): automatically update
27120
27121         * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
27122         * libltdl/ltdl.c: include them
27123
27124         * demo/configure.in (BINARY_HELLDL): test whether dlopen is
27125         supported at configure time
27126         * demo/Makefile.am (helldl): use automake conditionals to build
27127         helldl as a script or as a binary program
27128
27129         * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
27130         (clean-local): don't clean libltdl any more
27131         * tests/ltdl-conf.test: removed
27132         * tests/ltdl-inst.test: ditto
27133         * tests/ltdl-make.test: ditto
27134         * tests/ltdl-unst.test: ditto
27135         * tests/mdemo-make.test: updated accordingly
27136         * tests/mdemo-inst.test: ditto
27137         * tests/mdemo-unst.test: ditto
27138         * doc/libtool.texi: ditto
27139
27140         * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
27141         only for -force-static; it should be removed soon, before people
27142         start to use it
27143
27144         * configure.in (AC_CONFIG_SUBDIRS): added libltdl
27145         * Makefile.am (SUBDIRS): build libltdl by default
27146         (DIST_SUBDIRS): simplify distribution of demo and mdemo
27147         (libtool, clibtool, libtoolize, ltconfig, ltmain.sh): add
27148         srcdir where appropriate
27149         (ACINCLUDE_M4_LIST): new rule for maintaining links from
27150         acinclude.m4 to libtool.m4
27151         (*demo/Makefile.in): don't update autoconf/automake files any
27152         more; make check is needed
27153
27154 1998-12-14  Gary V. Vaughan  <gary@gnu.org>
27155
27156         * ltconfig.in (archive_cmds): tweaked for cygwin b18->b20.1
27157         compatibility and fixed a bug with generating the export
27158         definitions file.  This is only tested on b20.1, but should
27159         work back to b18 at least.
27160
27161 1998-12-11  Thomas Tanner  <tanner@gmx.de>
27162
27163         * ltmain.in: -module implies now -export-dynamic,
27164           dlpreopen files if we're linking statically
27165         * doc/libtool.texi (link flags): added documentation for -module
27166           and the tests for mdemo and libltdl
27167         * mdemo/Makefile.am: replaced -dlpreopen with -dlopen
27168
27169 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
27170
27171         * PORTING: removed the text Akim Demaille converted to .texi
27172
27173 1998-12-09  Akim Demaille  <demaille@inf.enst.fr>
27174
27175         * doc/libtool.texi: converted inter-library dependencies
27176         instructions from PORTING
27177
27178 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
27179
27180         * ltmain.in (convenience, deplibs): propagate dependencies
27181         * libltdl/Makefile.am (noinst_HEADERS): don't install ltdl.h yet
27182         (noinst_LTLIBRARIES): ditto for libltdl.la
27183
27184 1998-12-08  Gary V. Vaughan  <gary@gnu.org>
27185
27186         * README-alpha: adapted the release procedure from
27187           automake/HACKING.
27188         * Makefile.am: adapted the cvs-dist and cvs-diff rules from
27189           automake/Makefile.am.  I guess this is probably safe to use
27190           already, but I didn't test it as it tags the CVS tree.  If
27191           it needs tweaking, we'll find out come 1.2d.
27192
27193 1998-12-08  Thomas Tanner  <tanner@gmx.de>
27194
27195         * ltconfig.in: fixed some typos in archive_sym_cmds
27196         * ltmain.in: replaced basename with a sed expression
27197
27198 1998-12-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
27199
27200         * configure.in: we no longer use PRCS
27201
27202         * doc/libtool.texi (author): listed all the AUTHORS
27203         (Dlopen issues): added reference to libltdl, still undocumented
27204         (C++ libraries): it's not *that* simple, after all :-(
27205         (Inter-library dependencies): they're back!
27206
27207 1998-12-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27208
27209         * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
27210         work, use `test a = b' instead
27211
27212         * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
27213
27214         * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
27215         not available
27216
27217 1998-12-04  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
27218
27219         * ltconfig.in: Port to SCO UnixWare 7.x.
27220
27221 1998-12-03  Thomas Tanner  <tanner@gmx.de>
27222
27223         * ChangeLog: converted CR/LF back to CR format
27224         * ltconfig.in: new variable sys_lib_search_path for searching
27225         of installed libraries, export archive_sym_cmds and
27226         sys_lib_search_path
27227         * ltmain.in: use sys_lib_search_path, removed extradeplibs
27228         (they're not portable)
27229
27230 1998-12-02  Gary V. Vaughan  <gary@gnu.org>
27231
27232         * libltdl/configure.in: look for string.h or else strings.h, and
27233         also check for ANSI strrchr() function.  Fix `undescore before
27234         symbols' macro to not rely on a.out (cygwin uses a.exe!).  Fix
27235         `underscore for dlsym' to set cache variable properly, not just in
27236         environment of AC_DEFINE(NEED_USCORE).
27237         * libltdl/ltdl.h (__ptr_t): for K&R compatibility using char*.
27238         * libltdl/ltdl.c (strrchr): fallback function incase none is
27239         defined in libc.
27240         (trim, ltdlopen): replace rindex with ANSI strrchr.
27241         Add static function declarations so that we get type checking with
27242         ANSI compilers.  Use __ptr_t instead of void*.
27243
27244 1998-12-01  Thomas Tanner  <tanner@gmx.de>
27245
27246         * ltconfig.in: added -export-symbols support for GNU ld and
27247         Solaris (untested), archive_sym_cmds for -export-symbols
27248         * doc/libtool.texi, ltmain.in: -export-symbols is now
27249         independent from -export-dynamic and does not work for modules
27250         anymore
27251         * ltmain.in: added some checks for -export-symbols
27252         * mdemo/modules/Makefile.am: replaced -export-symbols with
27253         -export-dynamic since it doesn't work for modules
27254
27255 1998-12-01  Gary V. Vaughan  <gary@gnu.org>
27256
27257         * README: Updated homepage pointer to gnu libtool page.
27258
27259         * ltconfig.in (ltdll.c): update the ltdll.c file for cygwinb20.
27260         Based on code from Mumit Khan <khan@xraylith.wisc.edu>.
27261         (archive_cmds): correct typo libtool.c->ltdll.c.  Update shell
27262         commands for cygwin32.
27263
27264         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): New macro; find out
27265         whether compiled symbols have an extra leading underscore.
27266         (AM_SYS_NM_PARSE): New macro (converted to m4 from ltconfig.in);
27267         find a sed expression to parse global symbols from the output of
27268         $NM.
27269         (AM_PROG_LIBTOOL): require AM_SYS_NM_PARSE and
27270         AM_SYS_SYMBOL_UNDERSCORE.
27271         * demo/dlmain.c (main): Remove a single leading underscore from
27272         compiled symbol names if necessary.
27273
27274 1998-12-01  Alexandre Oliva  <oliva@dcc.unicamp.br>
27275
27276         * config.guess, config.sub: imported from autoconf pre-2.13
27277
27278 1998-11-27  Gary V. Vaughan  <gary@gnu.org>
27279
27280         * libtool (AM_PROG_LD): Oops... we need to know the host_os for
27281         the changes below.  I'm not sure whether mingw32 and os2 support
27282         UNC paths, if they did we wouldn't need the check, we could use
27283         UNC paths on all three; or if the bug with $LD not being
27284         shell-meta escaped was fixed, we could use '\\' separators on all
27285         three. AC_REQUIRE'ed AC_CANONICAL_HOST.
27286
27287         * libtool.m4 (AM_PROG_LD): Cannonicalize the absolute path for the
27288         ld program;  The order is funny to provide canonicalization to
27289         paths with '\\' separators as well as '/'.
27290         * ltconfig.in: ditto.
27291
27292         * AUTHORS: Added myself as a co-maintainer.
27293
27294         * ltconfig.in (archive_cmds): The `;\' in a compound statement is
27295         expanded wrongly for cygwin32, mingw32, aix3 and aix4. Changed to
27296         `;'.
27297
27298 1998-11-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
27299
27300         * libtool.spec (URL): point to www.gnu.org
27301         (Source): point to ftp.gnu.org
27302
27303         * Makefile.am (EXTRA_DIST): removed libtool.prj
27304         Reported by Akim Demaille <demaille@inf.enst.fr>
27305
27306 1998-11-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
27307
27308         * ltconfig.in (echo): avoid shell error messages when we're
27309         testing for large command line support
27310         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
27311
27312         * doc/PLATFORMS: updated last-tested release for platforms I've
27313         got access to
27314
27315         * THANKS: added Chris P. Ross
27316
27317 1998-11-24  Chris P. Ross  <cross@eng.us.uu.net>
27318
27319         * ltconfig.in: added recognition of the dynamic linker on BSD/OS 4.x
27320         * README: added BSD/OS 4.x to the list of supported platforms
27321         * doc/PLATFORMS: added BSD/OS 4.x support for various host id's
27322
27323 1998-11-24  David Heine  <dlheine@truffle.Stanford.EDU>
27324
27325         * ltmain.in (pass_all): actively pass the flags
27326
27327 1998-11-24  Thomas Tanner  <tanner@gmx.de>
27328
27329         * depdemo: added inter-library dependencies demo (doesn't work yet!)
27330         * AUTHORS: added myself to the list of maintainers
27331
27332 1998-11-22  Thomas Tanner  <tanner@gmx.de>
27333
27334         * libltdl: added support for .la files, LGPL license,
27335         K&R compatibility, some API changes and bugfixes
27336         * ltmain.in: renamed -module flag (for compiling) to -force-static,
27337         define -DSTATIC when compiling static .o files,
27338         do not include directories in dld_preloaded_symbols
27339         * mdemo: modified mdemo to work with the new libltdl
27340         * tests/mdemo-exec.test, tests/mdemo-inst.test: use .la files
27341
27342 1998-11-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
27343
27344         * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
27345         header files defining it.
27346
27347         * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
27348         libraries with gcc -shared if using gcc without GNU ld.
27349
27350         * ltconfig.in: replaced occurrences of solaris2 with solaris, to
27351         prepare for Solaris 7
27352
27353 1998-11-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
27354
27355         * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen -> -dlopen
27356         (hell_LDFLAGS): added -export-dynamic and -dlopen
27357         (SUBDIRS, INCLUDES): added modules directory
27358         (foo1.c, foo2.c, foo.h, libfoo1.sym, libfoo2.sym): moved to modules
27359         * Makefile.am: ditto
27360         * tests/mdemo-exec.test, tests/mdemo-inst.test: libraries moved
27361         * mdemo/modules/Makefile.am: new file
27362
27363         * */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies
27364
27365         * ltmain.in: missing `test' between `&&' and `"$module"'
27366
27367         * ltconfig.in (echo_test_string): the whole ltconfig script was
27368         too much for DU4.0's ksh, but the first 50 lines will be enough.
27369
27370         * ltmain.in (installed): new variable defined within a .la file,
27371         so that libtool can now link already-installed libraries into a
27372         program.
27373         * NEWS: ditto
27374         * doc/libtool.texi (Linking executables): document it
27375
27376         * ltmain.in (output_objdir): compute it from $output, not $arg
27377
27378         * tests/mdemo-inst.test (libltdl): install it
27379         * tests/mdemo-unst.test (libltdl): uninstall it
27380         * tests/Makefile.am (TESTS): list ltdl-unst.test before mdemo-conf.test
27381
27382 1998-11-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
27383
27384         * NEWS: -module and libltdl
27385         * mdemo/Makefile.am: ../libltdl is within $(srcdir)
27386
27387 1998-11-18  Thomas Tanner  <tanner@gmx.de>
27388
27389         * libltdl, Makefile.am: added libltdl (a system independent
27390         dlopen wrapper library extracted from mdemo)
27391         * ltmain.in: added -module flag for compiling and linking of
27392         modules. If enabled it compiles always both .o (with -DLT_RENAME)
27393         and .lo files
27394         * mdemo: modified mdemo to work with libltdl
27395         * tests/ltdl*: added tests for libltdl
27396
27397 1998-11-16  Steve Price  <sprice@hiwaay.net>
27398
27399         * ltconfig.in: when $host_os is freebsd[23]* determine whether
27400         the current linker format is a.out or ELF
27401         * ltmain.in: add two new $version_type's, freebsd-aout and
27402         freebsd-elf, to support above change
27403
27404 1998-11-16  Stephan Kulow  <coolo@kde.org>
27405
27406         * ltconfig.in: extent no_builtin_flag to contain -fno-rtti and
27407         -fno-exceptions in case we compile with a gcc, that supports
27408         this options (egcs and gcc >= 2.8)
27409
27410 1998-11-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27411
27412         * ltmain.in (C_compiler): copy $CC before it is overwritten with
27413         command-line compiler, so that we can use it to compile C sources
27414         generated during the build.  This fixes the problem that showed up
27415         with -export-dynamic of C++ programs in egcs 1.1.
27416         * NEWS: ditto
27417
27418 1998-11-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
27419
27420         * PORTING: Porting instructions are in the libtool manual already
27421
27422         * NEWS: Mention -export-symbols and new dlpreopen
27423
27424 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
27425
27426         * ltmain.in (IFS): revert Gary's patch when parsing version
27427         information; we still use `:' here :-)
27428
27429         * NEWS: updated
27430         * PORTING: new file, with general instructions and inter-library
27431         dependencies tips
27432
27433 1998-11-11  Gary V. Vaughan  <gary@gnu.org>
27434
27435         * ltconfig.in: make use of '~' field separator in reload_cmds,
27436         old_archive_from_new_cmds, old_archive_cmds, archive_cmds,
27437         old_postinstall_cmds, postinstall_cmds, old_postuninstall_cmds,
27438         postuninstall_cmds and finish_cmds, so that the semi-colons inside
27439         if/then/else/fi and for/do/done etc. do not break the eval loop in
27440         ltmain.in (below).
27441         * ltmain.in: changed all of the eval loops to use an IFS of `~',
27442         to allow differentiation between the end-of-statement-;
27443         (now `~' is used) and end-of-substatement-; (still `;').  This
27444         fixes AIX and win32 at least.
27445
27446 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
27447
27448         * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
27449         prepended by the compiler
27450
27451 1998-11-10  Toshio Kuratomi  <badger@prtr-13.ucsc.edu>
27452
27453         * ltconfig.in: re-enable deplibs
27454         * ltmain.in: support deplibs, at least for GNU/Linux/x86
27455         Updated to current libtool by Thomas Tanner  <tanner@gmx.de>
27456
27457 1998-11-10  Gordon Matzigkeit  <gord@trick.fig.org>
27458
27459         * ltmain.in (link): Make the relink warning less harsh.
27460
27461 1998-11-07  William M. Perry  <wmperry@aventail.com>
27462
27463         * ltconfig.in (aix3, aix4): uniquify symbol names in archive_cmds
27464
27465 1998-11-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
27466
27467         * ltconfig.in: add --falback-echo, to be used if everything else
27468         fails.  The tests now check the behavior of $echo for very large
27469         strings, because some echo commands would just core dump (e.g.,
27470         Solaris' printf).  If too large strings fail, smaller ones are
27471         tested.
27472         (ltecho): arrange that, if the --fallback-echo method is selected,
27473         echo will be defined in the libtool script so as to re-run itself,
27474         not ltconfig
27475         * ltmain.in: add --fallback-echo
27476         (qecho) ensure that, if --falback-echo is being used, qecho is
27477         defined with the full pathname of the libtool script
27478
27479         * tests/sh.test (test X): ensure that the double-quote supposed to be
27480         reported is really reported
27481
27482 1998-11-07  Thomas Tanner  <tanner@gmx.de>
27483
27484         * mdemo/main.c: removed hardcoded library names; link against -lm
27485         * tests/mdemo-exec, tests/mdemo-inst: pass the library names
27486         to the program
27487
27488 1998-11-07  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
27489
27490         * README: Added DG/UX
27491         * doc/PLATFORMS: ditto
27492
27493 1998-11-04  Michael Tiemann  <tiemann@cygnus.com>
27494
27495         * ltconfig.in (irix6): it's a little bit different from irix5
27496
27497 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27498
27499         * THANKS: Added Thomas Tanner and Gary V. Vaughan
27500
27501         * ltconfig.in, ltmain.in: updated and fixed the patches below
27502
27503 1998-11-04  Thomas Tanner  <tanner@gmx.de>
27504
27505         * mdemo/*: added new demo to demonstrate building of dlopenend
27506         modules
27507         * tests/Makefile.am, tests/mdemo*: added some tests for mdemo
27508
27509 1998-11-04  Gary V. Vaughan  <gary@gnu.org>
27510
27511         * demo/configure.in: added AC_EXEEXT macro so that the tests can
27512         work on cywin32/mingw32 hosts.  This requires the current CVS
27513         autoconf
27514
27515 1998-11-04  Thomas Tanner  <tanner@gmx.de>
27516
27517         * ltmain.in: New flag -export-symbols; new dlpreopen system
27518         * demo/dlmain.c: removed dld_preloaded_symbol_count
27519
27520 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27521
27522         * ltmain.in: On installation, don't get confused if the same name
27523         appears more than once in the list of library names.
27524
27525 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27526
27527         * ltconfig.in: Add objext and libext variables.  Check for object
27528         suffix.  Check for mingw32* as well as cygwin32*.  Use objext when
27529         testing compiler.  Add support for Visual C++ on cygwin32 when not
27530         using gcc.  Add objext, libext, and fix_srcfile_path to generated
27531         libtool script.
27532         * ltmain.in: Use .${objext} rather than .o.  Use fix_srcfile_path
27533         if it is set.  Check for .obj as well as for .o, and for .lib as
27534         well as for .a.  Use .${libext} rather than .a when creating old
27535         libraries.
27536         * libtoolize.in: Change initial /bin/sh to @SHELL@.
27537         * libtool.m4 (AM_PROG_LIBTOOL): Add AC_REQUIRE for
27538         AC_CANONICAL_BUILD, so that autoconf doesn't get mixed up by the
27539         AC_REQUIRE in AC_CHECK_TOOL.
27540
27541 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27542
27543         * ltconfig.in: Look in the right directory for libtool.c in
27544         archive_cmds for cygwin32.
27545
27546 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27547
27548         * ltconfig.in: Fix cygwin32 support to avoid using a double
27549         extension, to delete the def file, to set version_type to windows,
27550         and to include versuffix in the DLL name.
27551         * ltmain.in: Add support for a version_type of windows.
27552
27553 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27554
27555         * ltconfig.in: Add cygwin32 support.
27556         * libtool.m4 (AM_PROG_LIBTOOL): Call AM_SYS_LIBTOOL_CYGWIN32 on a
27557         cygwin32 host.  Pass DLLTOOL and AS to ltconfig.
27558         (AM_SYS_LIBTOOL_CYGWIN32): New macro.
27559
27560 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27561
27562         * libtool.m4 (sco): fix typo
27563
27564 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27565
27566         * ltconfig.in: On AIX, don't treat GNU ld specially.
27567
27568 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27569
27570         * ltconfig.in (hardcode_minus_L): Revert Ian's patch for
27571         ltconfig.in.  Although -L hardcoding is not used with GNU ld, it
27572         does happen, so hardcode_minus_L must be set to yes.
27573
27574         * ltconfig.in (compiler_o_lo): check whether we can write directly
27575         to a .lo
27576
27577         * ltmain.in (compiler_o_lo): if not, write to .o and rename it
27578
27579 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27580
27581         * ltconfig.in: For sunos4 using GNU ld, set hardcode_minus_L to
27582         no.
27583         * ltmain.in: Add some hacks to make SunOS --enable-shared work
27584         when using GNU ld.
27585
27586 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27587
27588         * THANKS: Added Marc J. Fraioli
27589
27590 1998-11-04  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
27591
27592         * ltconfig.in (dgux): new supported platforms
27593
27594 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27595
27596         * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
27597         available, fallback to not so safe mechanism, by setting
27598         need_locks to warn
27599         * ltmain.in (need_locks): when need_locks is set to warn, use the
27600         lockfile to try to fail in case of incorrect concurrent builds
27601
27602         * THANKS: Added Eric Estievenart
27603
27604 1998-11-04  Eric Estievenart  <eric@via.ecp.fr>
27605
27606         * doc/libtool.texi (Compile mode): Document that -o is fully
27607         supported.
27608
27609         * libtool.m4 (libtool-lock): new ARG_ENABLE; sets (need_locks)
27610         * ltconfig.in (disable-lock): control need_locks
27611         (hard_links): check whether hard-links can be used for locking
27612         * ltmain.in (need_locks): use $output_obj.lock for locking
27613
27614 1998-11-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
27615
27616         * ltmain.in: correctly create libraries and programs with
27617         directory components in their names
27618
27619 1998-11-03  Eric Estievenart <eric@via.ecp.fr>
27620
27621         * ltmain.in (output_obj): typo
27622
27623 1998-11-02  Ian Lance Taylor  <ian@cygnus.com>
27624
27625         * ltconfig.in: For sunos4, add ${libname}.so$versuffix to
27626         library_names_spec.
27627         * ltmain.in: For version_type of sunos, set versuffix even if
27628         -version-info was not used.
27629
27630 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
27631
27632         * ltmain.in (libobj): default value must not contain directory
27633         components
27634
27635 1998-11-02  Eric Estievenart <eric@via.ecp.fr>
27636
27637         * ltconfig.in (compiler): detect if the compiler supports
27638         -c and -o flags, create a variable compiler_c_o. Also issue
27639         a big warning if it is not supported
27640
27641         * ltmain.in (compile): enable the -o option as input for libtool.
27642         The objects are not moved if the compiler supports -o with -c.
27643         Sources and objects can contain relative directories.
27644         (link): enable the linking of executables into relative directories
27645
27646 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
27647
27648         * AUTHORS: added myself as a co-maintainer
27649         * THANKS: and removed my name from here
27650
27651         * autogen: new script; run it to bootstrap libtool after checking
27652         it out from CVS
27653
27654         * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
27655         suggested by Robert Lipe <robertl@dgii.com>
27656
27657 1998-10-31  Gordon Matzigkeit  <gord@trick.fig.org>
27658
27659         * demo/Makefile.am (hc-libpath): Use parameters from the libtool
27660         in the top build directory, since the one in the demo directory is
27661         not guaranteed to exist.
27662
27663 1998-10-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
27664
27665         * demo/Makefile.am (objdir): there are no longer quotes around
27666         objdir in the libtool script
27667
27668 1998-10-27  Gordon Matzigkeit  <gord@trick.fig.org>
27669
27670         * ltconfig.in (dynamic_linker): Echo the result to fd 6, so that
27671         --silent works correctly.  From William M. Perry.
27672
27673 1998-09-24  Gordon Matzigkeit  <gord@trick.fig.org>
27674
27675         * ltmain.in (link): Fix problems when building only static
27676         libraries.  From Owen Taylor.
27677
27678 1998-08-20  Gordon Matzigkeit  <gord@trick.fig.org>
27679
27680         * ltmain.in (install): When library_names_spec has redundancies,
27681         avoid deleting the main library when installing symlinks.  From
27682         Jeff Dairiki.
27683         (link): Get rid of backticks in a here doc comment.
27684         This causes segfaults on Solaris 2.  From Aleksandar Bakic.
27685         (finish): Don't display messages
27686
27687         * ltconfig.in (archive_cmds): On HP-UX 9, make sure we don't try
27688         to move a file to itself.  From Jeff Dairiki.
27689
27690 1998-08-19  Gordon Matzigkeit  <gord@trick.fig.org>
27691
27692         * ltconfig.in: Make changes to accomodate ltmain.c.
27693
27694         * Makefile.am (clibtool): New target for the C version of libtool.
27695
27696         * ltmain.c: Experimental C version of libtool.
27697
27698 1998-07-10  Ian Lance Taylor  <ian@cygnus.com>
27699
27700         * ltmain.in (install): Test against both $SHELL and /bin/sh.
27701
27702 1998-06-30  Gordon Matzigkeit  <gord@trick.fig.org>
27703
27704         * ltmain.in: Convenience archive support.  From Ulrich Drepper.
27705
27706         * ltconfig.in (postinstall_commands): Change libraries to be
27707         executable on Solaris in order to prevent ldd from moaning.  From
27708         Julian Gosnell.
27709         (whole_archive_flag_spec): New variable to shortcut convenience
27710         archive expansion.  From Ulrich Drepper.
27711
27712 1998-06-11  Gordon Matzigkeit  <gord@profitpress.com>
27713
27714         * ltconfig.in, ltmain.in: Change globs to accept forward slashes
27715         in absolute directory names used on DOS-like systems.  From Robert
27716         S. Maier.
27717
27718 Thu May 28 18:59:08 1998  Ian Lance Taylor  <ian@cygnus.com>
27719
27720         * ltconfig.in: Use $SHELL when invoking shell scripts.
27721
27722 1998-05-21  Gordon Matzigkeit  <gord@profitpress.com>
27723
27724         * ltmain.in (compile): Don't have `-static' turn off libtool
27725         libraries, so that people can use it just to guarantee that `.o'
27726         files exist.  Suggested by David Mosberger-Tang.
27727
27728 1998-05-18  Gordon Matzigkeit  <gord@profitpress.com>
27729
27730         * ltmain.in (link): Possibly reexec the shell from within the
27731         wrapper script.
27732         Allow `-version-info' and `-release' to coexist again.  If people
27733         want to shoot themselves in the foot, I'd better let them do so,
27734         so that people who are smart enough not to can squeeze out another
27735         ounce of functionality.  From Tim Janik.
27736         (version_vars): Delete dead variable.
27737
27738         * ltconfig.in (hardcode_minus_L): FreeBSD 3.0 doesn't hardcode, at
27739         last.  Reported by Jason Nordwick.
27740
27741         * libtoolize.in, ltconfig.in, ltmain.in: Change a bunch of `if
27742         test ...; then : ; else ...' constructs to `if test ! ...; then
27743         ...', for clarity.
27744
27745 1998-05-17  Gordon Matzigkeit  <gord@profitpress.com>
27746
27747         * ltmain.in (LC_ALL, LANG): Save these values and restore them
27748         during execute mode.  From Pavel Kankovsky.
27749         (mode): Accept strace and truss as programs that throw us into
27750         execute mode.  From Pavel Kankovsky.
27751
27752 1998-05-07  Ian Lance Taylor  <ian@cygnus.com>
27753
27754         * ltconfig.in: Don't use .$versuffix or .$major.  Instead, assume
27755         the variable will include any required prefix.
27756         * ltmain.in: If no -version-info option was used, produce empty
27757         version strings rather than 0.0.0.  When making library symlinks,
27758         avoid making a symlink if the name would be the same.
27759
27760 1998-04-27  Gordon Matzigkeit  <gord@profitpress.com>
27761
27762         * ltmain.in (link): Support `unsupported' as a hardcode_action.
27763         Reported by Lars Hecking.
27764         (lib_linked): Do some sanity checking to make sure that we
27765         actually do link libtool libraries into the program to prevent the
27766         above problem from happening again.
27767
27768 1998-04-20  Gordon Matzigkeit  <gord@profitpress.com>
27769
27770         * ltmain.in: Maybe reexec under $SHELL, if $echo doesn't work.
27771         Reported by Lars Hecking.
27772
27773 1998-04-19  Gordon Matzigkeit  <gord@profitpress.com>
27774
27775         * Makefile.am (maintainer-rekey): New rule to force us to change
27776         Project-Version after we make a release.  This keeps all version
27777         numbers in sync, rather than branching just before the release.
27778         (maintainer-release, maintainer-checkin): Use maintainer-rekey.
27779
27780         * ltmain.in (finish): Notice when a finish command fails, so that
27781         we can add it to the list of recommendations.
27782
27783 1998-04-17  Gordon Matzigkeit  <gord@profitpress.com>
27784
27785         * libtool.m4 (AM_PROG_LIBTOOL): Append file descriptor 5 to
27786         config.log, so that configure doesn't clobber the messages that
27787         ltconfig put there.  From David Taylor.
27788
27789 1998-04-15  Gordon Matzigkeit  <gord@profitpress.com>
27790
27791         * ltconfig.in (archive_cmds): Try using `$CC -shared' when
27792         configuring for GCC under irix5 and irix6.  From Wolfram Gloger.
27793         (ofile): Add `--output' flag to change the name of the generated
27794         libtool.  Suggested by Wolfram Gloger.
27795
27796 1998-04-14  Gordon Matzigkeit  <gord@profitpress.com>
27797
27798         * ltmain.in: Remove all hardcoded references to ltmain.in in
27799         favour of $PACKAGE and $PROGRAM.
27800         (install): Compute the installation name for programs, in case we
27801         install a relinked file which has a different name.  Reported by
27802         Pieter Schoenmakers.
27803
27804         * ltconfig.in (echo): Try using the ksh(1) `print -r' builtin
27805         command, before reverting to printf(1).
27806
27807         * Makefile.am (libtool): Use $(SHELL) when invoking ltconfig.
27808
27809         * ltconfig.in (echo): Rewrite the test for a working echo so that
27810         we win on Solaris by avoiding printf(1), if possible.
27811
27812         * tests/quote.test (echo): Update the echo test from ../ltconfig.in.
27813
27814 1998-04-13  Ian Lance Taylor  <ian@cygnus.com>
27815
27816         * libtool.m4 (AM_PROG_NM): Don't override NM in the environment.
27817
27818 1998-04-13  Gordon Matzigkeit  <gord@profitpress.com>
27819
27820         * ltmain.in: New `--config' flag to print out all configured
27821         variables.
27822
27823         * libtool.m4: Pass ltconfig the undocumented --no-reexec flag,
27824         since we call it explicitly using CONFIG_SHELL.
27825
27826         * ltconfig.in: Restart the script under a different shell if
27827         CONFIG_SHELL is not /bin/sh.  This way, people can use Bash if
27828         they don't have a working echo program.
27829
27830         * ltmain.in, ltconfig.in: Use $SHELL instead of /bin/sh when
27831         generating executable scripts.
27832
27833         * libtoolize.in, ltconfig.in, ltmain.in: Implement the `--debug'
27834         flag to begin shell tracing.
27835
27836         * ltconfig.in (archive_cmds): Don't use `gcc -shared', even if we
27837         have GNU ld.  Reported by Robert S. Maier.
27838
27839 1998-04-06  Gordon Matzigkeit  <gord@profitpress.com>
27840
27841         * ltconfig.in (pic_flag): Create more than just a null C file, so
27842         that the SunPRO 4.2 cc doesn't complain.  From Bob Friesenhahn.
27843         (gnu_ld_acts_native): Delete this variable.  There is just too
27844         much version skew to try to pretend GNU ld is the same as the
27845         system ld.  Reported by Ian Lance Taylor.
27846         (hardcode_action): Don't bother relinking or aborting on systems
27847         that are too dynamic to have a consistent hardcode method.
27848         Reported by Doug Winterburn.
27849
27850 1998-03-24  Gordon Matzigkeit  <gord@profitpress.com>
27851
27852         * doc/libtool.texi: A little proofreading.  From Albert
27853         Chin-A-Young.
27854
27855 1998-03-23  Gordon Matzigkeit  <gord@profitpress.com>
27856
27857         * ltconfig.in: Treat HP-UX 11 just like HP-UX 10.  From Jeff Law.
27858
27859 1998-03-21  Gordon Matzigkeit  <gord@profitpress.com>
27860
27861         * ltconfig.in (reload_flag): Correct a tiny bug where `--silent'
27862         would still print out the reload flag.  From Stephan Kulow.
27863
27864 1998-03-20  Ian Lance Taylor  <ian@cygnus.com>
27865
27866         * libtool.m4: Use changequote to avoid problems with square
27867         bracket patterns.
27868
27869 1998-03-20  Gordon Matzigkeit  <gord@profitpress.com>
27870
27871         * Release 1.2.
27872
27873 1998-03-18  Gordon Matzigkeit  <gord@profitpress.com>
27874
27875         * ltmain.in: Rearrange some of the echos to make them more
27876         consistent.
27877
27878 1998-03-14  Gordon Matzigkeit  <gord@profitpress.com>
27879
27880         * ltmain.in: Break up an echo command that causes Solaris printf
27881         to dump core.  Apparently the Solaris people hardcoded a 2110-byte
27882         buffer into their printf(1).  Feh.  From John Judge.
27883
27884 1998-03-11  Gordon Matzigkeit  <gord@profitpress.com>
27885
27886         * ltconfig.in: Change the test for the PIC compiler flag so that
27887         we assume it doesn't work if there are any warning messages.  This
27888         fixes a bug using old GCC's on HP-UX.  Reported by Akim Demaille.
27889
27890 1998-03-10  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
27891
27892         * Makefile.am ($(srcdir)/ltconfig): Remove bogus command to create
27893         a file ltconfig in the build directory.
27894
27895 1998-03-09  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
27896
27897         * ltmain.in: Avoid unnecessary use of command substitution,
27898         replacing foo=`eval \\$echo \"$mumble\"` by eval foo=\"$mumble\".
27899
27900         (link): Use ${1+"$@"} in wrapper scripts in order to pass
27901         arguments safely to a program.
27902
27903         * ltconfig.in: Use -fpic instead of -fPIC if $host_cpu matches
27904         m68*.
27905
27906 1998-03-08  Gordon Matzigkeit  <gord@profitpress.com>
27907
27908         * Release 1.1.
27909
27910         * ltmain.in: <sigh> I like `here documents' a lot, but apparently
27911         they are so badly handled by old and buggy /bin/sh's, that
27912         replacing `cat <<EOF ... EOF' by `$echo "..."' improves libtool's
27913         speed by a factor of 5.  So, I've eliminated here docs from the
27914         all-important ltmain.in.  From Tom Lane.
27915
27916         * tests/tlibtool: Eliminate from distribution.
27917
27918         * tests/defs (libtool): Don't use tlibtool anymore, since we can now use
27919         the generated libtool directly.
27920
27921 1998-03-07  Gordon Matzigkeit  <gord@profitpress.com>
27922
27923         * ltconfig.in: Copy the contents of ltmain.sh into the generated
27924         libtool.  This should more than halve the execution times on old
27925         or buggy /bin/sh systems, such as HP-UX 9 and SunOS 4.1.4.  From
27926         Tom Lane.
27927
27928 1998-03-05  Gordon Matzigkeit  <gord@profitpress.com>
27929
27930         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): Add support for
27931         the `default' package, so that people can control unnamed
27932         packages.
27933         (LD): Only add an ABI flag under IRIX 6.x, since IRIX 5.x doesn't
27934         support them.  From Alexandre Oliva.
27935
27936 1998-03-01  Gordon Matzigkeit  <gord@profitpress.com>
27937
27938         * ltconfig.in: Port to UnixWare 2.x.  From Christopher Olsen.
27939
27940 1998-02-25  Gordon Matzigkeit  <gord@profitpress.com>
27941
27942         * ltmain.in (compile): For consistency, honour the `-static' flag
27943         during compilation.
27944
27945 1998-02-23  Brendan Kehoe  <brendan@cygnus.com>
27946
27947         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): For
27948         --enable-shared, heed the value of $PACKAGE from AM_INIT_AUTOMAKE
27949         if given as the argument for the library to be built shared.
27950
27951 1998-02-20  Gordon Matzigkeit  <gord@profitpress.com>
27952
27953         * libtool.m4, ltconfig.in (NM): Fix up a typo confusion between
27954         $ac_dir and $dir.  Reported by Akim Demaille.
27955
27956         * ltmain.in (link): Don't allow both `-version-info' and
27957         `-release'.  Reported by Danny Backx.
27958
27959 1998-02-18  Gordon Matzigkeit  <gord@profitpress.com>
27960
27961         * Makefile.am (noinst_SCRIPTS): Remove lineno from distribution.
27962
27963         * lineno: Remove from distribution, as it is no longer needed.
27964
27965         * Makefile.am ($(srcdir)/ltconfig.in, $(srcdir)/ltmain.sh):
27966         Rewrite these rules not to use config.status or lineno.  This
27967         makes things simpler, and reduces dependencies, so that the
27968         scripts are rebuilt and installed in srcdir only when necessary.
27969         Reported by Stephan Kulow.
27970
27971         * tests/sh.test (scripts): Remove the lineno script, since it is no
27972         longer distributed.
27973
27974         * tests/assign.test, if.test, test-e.test: Even though 15 tests looks
27975         impressive, these are now redundant.  Remove them from the
27976         distribution.
27977
27978         * tests/sh.test: Do what assign.test, if.test, and test-e.test used to
27979         do.
27980
27981 1998-02-16  Gordon Matzigkeit  <gord@profitpress.com>
27982
27983         * libtool.m4, ltmain.in, ltconfig.in: Correctly identify absolute
27984         directory names on MS-DOS.  Suggested by Bob Friesenhahn.
27985
27986         * ltconfig.in, ltmain.in, libtool.m4: Change a bunch of `sed N!d'
27987         commands to `sed Nq', for efficiency.
27988
27989         * ltmain.in: Only egrep the first few lines of files in order to
27990         determine if they were libtool-generated.  This prevents egrep(1)
27991         from taking forever to look at a 10MB binary on Solaris.  From
27992         Stephan Kulow.
27993
27994         * tests/defs: Correctly identify absolute directory names on MS-DOS.
27995         Suggested by Bob Friesenhahn.
27996
27997 1998-02-11  Gordon Matzigkeit  <gord@profitpress.com>
27998
27999         * ltconfig.in (no_undefined_flag): Add a flag to declare under
28000         Solaris that the library should not have any undefined
28001         references.  Suggested by Bob Friesenhahn.
28002
28003         * ltmain.in (mkdir): Fix one more mkdir race.  From H.J. Lu.
28004
28005 1998-02-08  Gordon Matzigkeit  <gord@profitpress.com>
28006
28007         * ltconfig.in, ltmain.in (striplib, old_striplib): Ditto.
28008
28009         * ltconfig.in (profile_flag_pattern): Get rid of dead code.
28010
28011 1998-02-07  Gordon Matzigkeit  <gord@profitpress.com>
28012
28013         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): New macros to
28014         modify the `--enable-shared' and `--enable-static' defaults in the
28015         configure script.  This works a lot better than the old
28016         `enable_shared' and `enable_static' variables did.  Reported by
28017         Bob Friesenhahn.
28018
28019         * tests/suffix.test (extensions): Added GNAT (GNU Ada Translator)
28020         suffices, `.ada', `.ads', `.adb'.  From Samuel Tardieu.
28021
28022 1998-02-07  Samuel Tardieu  <sam@inf.enst.fr>
28023
28024         * ltmain.in: Recognize .ada, .ads and .adb as known suffixes (they
28025         are used by GNAT, the GNU Ada compiler).
28026
28027 1998-02-06  Gordon Matzigkeit  <gord@profitpress.com>
28028
28029         * ltconfig.in: Turn on IRIX shared libraries again!
28030
28031         * libtool.m4 (LD): Use file(1) to discover which ABI we're using
28032         on IRIX, and propagate the correct linker flag.  From Jim Wilson.
28033
28034         * ltconfig.in, ltmain.in (Xsed): `arg=-n; echo "$arg" | sed ...'
28035         gives problems, because the `-n' is interpreted as an option to
28036         echo(1).  So, use `echo "X$arg" | sed -e 's/^X//' ...' everywhere,
28037         via the $Xsed convenience variable.  Suggested by H.J. Lu.
28038
28039 1998-02-02  Gordon Matzigkeit  <gord@profitpress.com>
28040
28041         * ltconfig.in: Turn off IRIX shared library support until 32-bit
28042         and 64-bit ABI differences can be resolved.
28043
28044 1998-01-28  Gordon Matzigkeit  <gord@profitpress.com>
28045
28046         * libtool.m4 (LD): Reverse yesterday's change because `-old_ld'
28047         isn't accepted by GCC.
28048
28049 1998-01-27  Gordon Matzigkeit  <gord@profitpress.com>
28050
28051         * ltconfig.in (soname_spec): Add in user-specified release numbers
28052         for every host system that supports an soname that differs from
28053         the linkname.
28054
28055         * libtool.m4 (LD): Add `-old_ld' to the list of flags that need to
28056         be passed through on SGI.  Reported by Chris Lee.
28057
28058         * ltmain.in (release): Prepend a hyphen to the release number, and
28059         fix a typo because `-version-info' takes only 3 args.  From
28060         H.J. Lu.
28061
28062 1998-01-25  Gordon Matzigkeit  <gord@profitpress.com>
28063
28064         * ltconfig.in (library_names_spec): On Linux, use the
28065         user-specified release.
28066
28067         * ltmain.in (link): Allow the user to specify a release number for
28068         the library using the `-release' flag.  Suggested by H.J. Lu and
28069         Ian Lance Taylor.
28070
28071 1998-01-23  Gordon Matzigkeit  <gord@profitpress.com>
28072
28073         * tests/Makefile.am (TESTS_ENVIRONMENT): Export some important
28074         environment variables.  Reported by Ian Haggard.
28075
28076 1998-01-19  Gordon Matzigkeit  <gord@profitpress.com>
28077
28078         * ltconfig.in (old_postuninstall_cmds): Reorder so that chmod
28079         happens after ranlib.  From Markus F.X.J. Oberhumer.
28080
28081         * ltmain.in (mode): Added `gcc*' and `*-gcc*' to the patterns that
28082         recognize compilers.  From Pieter Schoenmakers.
28083         (link): Recognize `.a' files again.  Suggested by Pieter
28084         Schoenmakers.
28085
28086 1998-01-18  Gordon Matzigkeit  <gord@profitpress.com>
28087
28088         * ltmain.in (compile): Recognize `.asm' extension, for use with
28089         the nasm assembler.  From Markus F.X.J. Oberhumer.
28090
28091         * tests/suffix.test (extensions): Recognize `.asm'.  From Markus
28092         F.X.J. Oberhumer.
28093
28094 1998-01-12  Gordon Matzigkeit  <gord@profitpress.com>
28095
28096         * ltconfig.in (runpath_var): Use instead of
28097         `hardcode_runpath_var'.
28098
28099 1998-01-11  Gordon Matzigkeit  <gord@profitpress.com>
28100
28101         * ltmain.in (finish): Add a better --finish message.  Suggested by
28102         Kenneth Albanowski.
28103
28104         * ltconfig.in, ltmain.in: Fix a few typos.
28105
28106 1998-01-03  Gordon Matzigkeit  <gord@profitpress.com>
28107
28108         * ltmain.in (link): Quote the definition of $echo in the wrapper
28109         script.
28110
28111         * ltconfig.in (export_dynamic_flag_spec): Use `--export-dynamic'
28112         instead of `-export-dynamic', which is not accepted by all GNU
28113         ld's.  From Eiichi Takamori.
28114
28115         * ltmain.in (install): Don't print silly `library stripping'
28116         warnings.  Reported by François Pinard.
28117
28118 1997-12-19  Gordon Matzigkeit  <gord@profitpress.com>
28119
28120         * ltmain.in: Don't forget to quote the CDPATH substitution.  From
28121         Tor Lillqvist.
28122
28123 1997-12-18  Gordon Matzigkeit  <gord@profitpress.com>
28124
28125         * ltconfig.in, ltmain.in (CDPATH): Unset this environment variable
28126         so that HP-UX shells, at least, don't print out the directory name
28127         after a `cd' command.  From Tor Lillqvist.
28128
28129 1997-12-10  Gordon Matzigkeit  <gord@gnu.org>
28130
28131         * demo/Makefile.am (hardcode): Change a bunch of references to
28132         `$(LIBS)' to `-lm', since we no longer put -lm in LIBS.
28133
28134         * demo/configure.in: Delete the test for libm, since it is
28135         standard on every system.
28136
28137         * demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm,
28138         in accordance with new inter-library dependency code.
28139
28140         * ltmain.in (dependency_libs): Added to help people link programs
28141         without having to explicitly specify inter-library dependencies.
28142
28143         * ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3
28144         restriction to the generated libtool script.  Reported by Stefan
28145         Westerfeld.
28146
28147 1997-12-05  Gordon Matzigkeit  <gord@gnu.org>
28148
28149         * ltconfig.in (thisdir): Quote $echo in the generated libtool
28150         script for HP-UX.  From Markus F.X.J. Oberhumer.
28151
28152         * ltmain.in (link): Recognize the `.s' suffix.  From Markus
28153         F.X.J. Oberhumer.
28154
28155         * ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX
28156         because link_static_flag is never evaled.  From Eric Backus.
28157
28158         * tests/suffix.test (extensions): Recognize `.s'.  From Markus
28159         F.X.J. Oberhumer.
28160
28161 1997-12-01  Gordon Matzigkeit  <gord@gnu.org>
28162
28163         * demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our
28164         dependencies so that parallel builds work correctly.  From Jim
28165         Meyering.
28166
28167         * Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite
28168         these rules so that they are parallelizable.  Reported by Jim
28169         Meyering.
28170
28171         * ltconfig.in (ltecho): We need special handling to quote the
28172         `echo' variable itself.  From Alexandre Oliva.
28173
28174 1997-11-29  Gordon Matzigkeit  <gord@gnu.org>
28175
28176         * ltconfig.in (COLLECT_NAMES): Enable this workaround for a broken
28177         collect2 only on AIX 3.  This avoids problems on other AIX
28178         versions.  Reported by Stefan Westerfeld.
28179
28180         * ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds,
28181         except it is a single command which is evaled, and not shown.
28182
28183         * ltconfig.in: Port to AmigaOS.  From Joop van de Wege.
28184
28185         * ltmain.in (echo): Delete preamble to check for a working echo,
28186         since we just use the one included in the generated libtool.
28187
28188         * ltconfig.in (echo): Include this definition in the generated
28189         libtool script.
28190
28191 1997-11-28  Gordon Matzigkeit  <gord@gnu.org>
28192
28193         * ltconfig.in, libtool.m4 (NM): Add /usr/ccs/bin to the PATH
28194         before checking.  From Kaveh R. Ghazi.
28195         (NM): Delete an extraneous egrep from ltconfig.
28196
28197         * ltconfig.in (finish_cmds): Change back to using `ldconfig -n'.
28198         This makes Linux behave like other systems, which is more in line
28199         with what libtool needs.
28200
28201 1997-11-27  Gordon Matzigkeit  <gord@gnu.org>
28202
28203         * ltmain.in: Change a whole bunch of `progname' variables to
28204         `modename'.  This is for clarity, and to fix a tiny typo in finish
28205         mode.
28206
28207         * libtool.spec (Name, Version): Ditto.
28208
28209         * configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate
28210         the proper package name and version number.
28211
28212         * ltconfig.in (gnu_ld_acts_native): Treat GNU ld like the native
28213         linker on SunOS 4.x.  Suggested by Alexandre Oliva.
28214         (deplibs): Change the defaults all over, since most systems cannot
28215         handle inter-library dependencies.
28216
28217         * libtool.m4, ltconfig.in (NM): Only look at the first line of the
28218         output from NM when determining whether it supports a command line
28219         option.  This prevents false positives on OSes which ignore
28220         invalid flags, like HP-UX, which prints `nm: unknown option "B"
28221         ignored'.  Reported by Kaveh R. Ghazi.
28222
28223         * ltconfig.in (finish_cmds): On Linux, update ld.so.cache by
28224         removing the `-n' flag from ldconfig.  Suggested by Kenneth
28225         Albanowski.
28226
28227         * Makefile.am (maintainer-checkin, maintainer-release): New
28228         commands to reap the full benefit of using PRCS to maintain
28229         libtool version numbers.
28230
28231         * ltconfig.in, ltmain.in (global_symbol_pipe): Explicitly cast all
28232         addresses to __ptr_t.  This fixes a bug due to a strict IRIX
28233         compiler.  Suggested by Kaveh R. Ghazi.
28234
28235 1997-11-23  Gordon Matzigkeit  <gord@gnu.org>
28236
28237         * ltmain.in (echo): For aesthetics, avoid using `$echo' when
28238         `echo' will do *exactly* the same thing.  This prevents ugly
28239         `printf %s\n timestamp > some.lo' commands from appearing in the
28240         libtool output.
28241         (link): Delete the `-allow-undefined' flag because it is now the
28242         default.  Make `-no-undefined' in order for people to declare that
28243         a library is entirely self-contained.  This prevents maintainers
28244         from accidentally creating shared libraries that won't work on
28245         AIX.  Reported by Stefan Westerfeld and Danny Backx.
28246
28247         * ltconfig.in (echo): Use an echo variable, just as in ltmain.in,
28248         because we need it for quoting substitutions.  For most of the
28249         script, though, use the default echo, just like Autoconf does.
28250         Without this patch, character \001 ends up in global_symbol_pipe.
28251         Reported by Lars Hecking and Jürgen Fluk.
28252
28253         * ltmain.in (echo): Set default to `echo=echo'.  Ooops.  That's
28254         what you get for testing obscure code paths and forgetting to
28255         revert to the original version.  Reported by Danny Backx.
28256
28257 1997-11-14  Gordon Matzigkeit  <gord@gnu.org>
28258
28259         * ltconfig.in (hardcode_libdir_flag_spec): Set to `-R' for FreeBSD
28260         2.2.  From Sean Kelly.
28261         (postuninstall_cmds, old_postuninstall_cmds): Commands to run
28262         after uninstall mode deletes the libraries.  Suggested by Joop van
28263         de Wege.
28264         (export_dynamic_flag_spec): On HP-UX, add the `${wl}-E'
28265         export_dynamic_flag_spec.  Reported by Matthias Hoelzer.
28266
28267 1997-11-11  Gordon Matzigkeit  <gord@gnu.org>
28268
28269         * ltconfig.in, ltmain.in (sed_quote_subst): Oops.  We forgot to
28270         quote backticks.  Reported by Joop van de Wege.
28271
28272         * tests/quote.test: Add backticks to the backslashify test.
28273
28274 1997-11-09  Gordon Matzigkeit  <gord@gnu.org>
28275
28276         * ltconfig.in (symcode): On IRIX, don't extract undefined
28277         symbols.  When a function is inlined by G++, references to it are
28278         still marked as undefined in the object file.  This means that our
28279         symbol file causes undefined references, because there are
28280         actually no matching global symbols.  Reported by Paul Kendall.
28281
28282 1997-11-08  Gordon Matzigkeit  <gord@gnu.org>
28283
28284         * ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool
28285         script fragment to the generated libtool, rather than to stdout.
28286
28287 1997-11-07  Gordon Matzigkeit  <gord@gnu.org>
28288
28289         * libtool.m4 (LD): Add a more sophisticated test to determine the
28290         ABI flag on IRIX 6.  Suggested by Lars Hecking and Ian Lance
28291         Taylor.
28292
28293         * ltconfig.in, ltmain.in (COLLECT_NAMES): Only export this
28294         variable if we are running under AIX.  Otherwise, we tickle a g++
28295         bug under IRIX.  From Paul Kendall.
28296
28297         * Change bug reporting address to <bug-libtool@gnu.org>.
28298
28299         * ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a
28300         wildcard argument to `-expect_unresolved'.  From Stephan Kulow.
28301
28302 1997-11-06  Gordon Matzigkeit  <gord@gnu.org>
28303
28304         * ltmain.in (link): Use libname_spec.
28305
28306         * ltconfig.in (pic_flag): Somehow, the HP-UX pic_flag (`+Z') was
28307         dropped between libtool-1.0 and now.  Add it back in.  Reported by
28308         Akim Demaille.
28309         Integrated more patches for OS/2.  From Jeff Freedman.
28310         (libname_spec): New variable for OSes that don't require their
28311         libraries to look like `libNAME.a'.
28312
28313         * ltmain.in (link): Only use global_symbol_pipe if it has been
28314         defined.  From Stephan Kulow.
28315
28316         * ltconfig.in (global_symbol_pipe): Protect C fragment under C++
28317         compilers.  From Stephan Kulow.
28318
28319         * Makefile.am ($(srcdir)/acinclude.m4,
28320         $(srcdir)/demo/acinclude.m4): Change rules to use LN_S so that
28321         they can be run on any system.
28322
28323         * ltconfig.in (archive_cmds): For NetBSD, don't include deplibs.
28324         From Dieter Baron.
28325
28326         * ltmain.in (mkdir): Check that the directory doesn't exist before
28327         we exit with error, so that we don't get races during parallel
28328         builds.  From H.J. Lu.
28329         (fbsd_hideous_sh_bug): Apparently, some FreeBSD /bin/sh's have a
28330         bug that will empty base_compile unless we do this dummy
28331         assignment.  From Marc van Kempen.
28332
28333 1997-10-22  Gordon Matzigkeit  <gord@gnu.org>
28334
28335         * libtool.m4 (libtool_shared, libtool_static): Fixed logic error
28336         to reenable override of libtool's defaults by setting
28337         enable_shared or enable_static in configure.in.  Reported by Tom
28338         Tromey and Stephan Kulow.
28339
28340         * ltmain.in (link): Add explicit support for compiler options that
28341         begin with `+'.  Reported by Aubert Pierre.
28342
28343 1997-10-20  Gordon Matzigkeit  <gord@gnu.org>
28344
28345         * ltmain.in: Silly me.  Change a bunch of occurances of "* $dir *"
28346         into *" $dir "*.
28347
28348         * ltconfig.in (pic_flag): PIC is the default for AIX.  From Mark
28349         Kettenis.  It is also the default for OSF/1.
28350
28351         * demo/Makefile.am (objdir): Quote double-quotes.  From Mark
28352         Kettenis.
28353
28354         * ltconfig.in (global_symbol_pipe): This variable is not
28355         double-evaled, so it should not be double quoted.  From Mark
28356         Kettenis.
28357
28358 1997-10-19  Gordon Matzigkeit  <gord@gnu.org>
28359
28360         * ltconfig.in (LD): Same as below.
28361
28362         * libtool.m4 (LD): Set LD if we discover an absolute path to GNU
28363         ld.  This prevents breakage when `$CC -print-prog-name=ld' returns
28364         an absolute directory name.  Reported by Ulrich Drepper.
28365
28366         * ltconfig.in: Port to OS/2 using EMX.  From Jeff Freedman.
28367
28368         * ltmain.in (link): Use old_archive_from_new_cmds.
28369
28370         * ltconfig.in (old_archive_from_new_cmds): New variable to
28371         support DLL libraries.
28372
28373         * ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is
28374         not empty.  Reported by Stephan Kulow.
28375
28376 1997-10-18  Gordon Matzigkeit  <gord@gnu.org>
28377
28378         * ltconfig.in (objdir): Use the .libs directory on all systems for
28379         which that name is valid, and _libs on the others (like MS-DOS).
28380         Suggested by Juergen Erhard.
28381
28382 1997-10-14  Gordon Matzigkeit  <gord@gnu.org>
28383
28384         * ltmain.in (link): Added a bit more inter-language support to the
28385         symbol file generation process.
28386         Instead of complaining about unrecognized argument suffices, pass
28387         them to the linker.  This prevents libtool from barfing on
28388         mandatory arguments to linker flags.  Reported by Michael
28389         Tiemann.
28390
28391 1997-10-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28392
28393         * ltmain.in (link): Change the wrapper script to follow symlinks
28394         in order to find thisdir.  This should put the final nail in the
28395         coffin for problems with wrapper scripts.  From Ian Lance Taylor.
28396
28397 1997-10-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28398
28399         * ltmain.in: Change a few `$echo' commands into `$show' to make
28400         --silent mode behave as advertised.
28401
28402         * ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use
28403         `-expect_unresolved \*'.  From Christian Mondrup.
28404
28405         * ltmain.in (install): Change install mode to allow a specified
28406         /bin/sh argument at the beginning of the install_prog.  Also,
28407         specify the shell to run when invoking libtool recursively for
28408         finish mode.  From Chris Provenzano.
28409
28410         * libtool.m4 (LIBTOOL): Change definition to include $(SHELL).
28411         From Chris Provenzano.
28412
28413         * ltconfig.in: Port to UTS 4.x.  From Alistair Crooks.
28414
28415         * demo/Makefile.am (hc-libflag): Add rules to make this binary for
28416         hardcode.test.
28417
28418         * tests/hardcode.test (hardcode_libdir_flag_spec): Check the hardcoding
28419         properties of the flag_spec, too.
28420
28421 1997-09-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28422
28423         * ltconfig.in (LD): As with libtool.m4, don't override LD.
28424         Do a whole bunch of ac_t quoting.
28425
28426 1997-09-24  Ian Lance Taylor  <ian@cygnus.com>
28427
28428         * libtool.m4 (AM_PROG_LD): Don't override LD in the environment.
28429
28430 1997-09-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28431
28432         * libtool.m4, ltconfig.in (NM): Arguments to the for loop must be
28433         whitespace separated.  This fixes a bug under FreeBSD's /bin/sh.
28434         From George Scott.
28435
28436         * tests/defs, tests/Makefile.am (clean-local): Change =inst to
28437         _inst to fix portability on MS-DOS.  From Robert Hoehne.
28438
28439 1997-09-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28440
28441         * ltmain.in (deplibs): When building shared libraries, always add
28442         -lc to deplibs.  Reported by Andreas Jellinghaus.
28443
28444 1997-09-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28445
28446         * ltconfig.in, ltmain.in (COLLECT_NAMES): If the COLLECT_NAMES
28447         environment variable has not been set, set it to empty.  This
28448         apparently fixes the AIX bug with GCC's collect2.  Reported by
28449         Mark Kettenis.
28450
28451         * demo/Makefile.am, ltmain.in, tests/hardcode.test (objdir):
28452         Changed objdir variable .libs to _libs.  This is another MS-DOS
28453         portability fix.  Suggested by Robert Hoehne.
28454
28455         * tests/hardcode.test (objdir): New variable to simplify change from
28456         .libs to _libs (MS-DOS portability fix).
28457
28458 1997-09-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28459
28460         * ltconfig.in, ltmain.in (hardcode_minusL): Fix typo by renaming
28461         hardcode_minusL to hardcode_minus_L.  Also add FreeBSD
28462         hardcode_libdir_flag_spec. From Paul Traina.
28463
28464         * ltmain.in (link): Honour multiple `-rpath' flags when linking
28465         programs.  Suggested by Bengt Martensson.
28466         Quote appearances of $echo in the wrapper script.  From Alexandre
28467         Oliva.
28468
28469         * Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead
28470         of ltmain.sh.in.
28471
28472         * ltmain.in: Rename ltmain.sh.in to ltmain.in.  This fixes a
28473         portability problem (on MS-DOS, of all places!).  From Robert
28474         Hoehne.
28475
28476 1997-09-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28477
28478         * ltmain.sh.in (link): Do not transform libtool objects to regular
28479         objects if we did not build old libs.  Reported by Tomas Hiller.
28480
28481 1997-09-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28482
28483         * demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to
28484         hell.debug in order to reflect the new static linking semantics.
28485
28486         * ltmain.sh.in (link): Add new `-all-static' flag to prevent all
28487         dynamic linking.  The old `-static' flag just prevents dynamic
28488         linking against libtool libraries.  Suggested by Bengt
28489         Martensson.
28490
28491         * ltconfig.in (with_gnu_ld): Add a test to make sure that we are
28492         actually using GNU ld.  This fixes an inconsistency when running
28493         ltconfig without using libtool.m4.  Reported by Ulrich Drepper.
28494         (global_symbol_pipe): Delete symbols that are not valid C
28495         identifiers.  Reported by Johan Danielsson and Bengt Martensson.
28496
28497         * tests/demo-exec.test, tests/demo-inst.test: Change references from
28498         hell.static to hell.debug.
28499
28500         * tests/quote.test (echo): Add the same Digital Unix echo test fixes as
28501         the ones to ltmain.sh.in from Todd Kover.
28502
28503         * tests/if.test, tests/test-e.test (scripts): Add ../lineno to
28504         the scripts we check.
28505         * tests/if.test: Check for accidental use of test X$something rather
28506         than test "X$something".
28507
28508 1997-09-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28509
28510         * ltmain.sh.in (echo): Quote all the uses of `echo' in all eval
28511         statements.  Reported by Bengt Martensson and Alexandre Oliva.
28512         (echo): Need to surround test args with double quotes, or the echo
28513         test fails on Digital Unix 4.0.  From Todd Kover.
28514
28515 1997-08-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28516
28517         * ltmain.sh.in (echo): Change test to one that uses printf.
28518         This works on AIX, which has the same problems that Solaris does,
28519         but no working echo program.
28520
28521         * tests/quote.test (echo): Change test to version that uses printf.
28522         Be less strict about return results.
28523
28524 1997-08-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28525
28526         * ltmain.sh.in (link): Make sure that compile_command and
28527         finalize_command are always evaled.  Quote any unknown linker
28528         flags we need to pass through.
28529         (compile): Use quoting for flags we pass.
28530         (echo): I hate Sun!  The /usr/bin/echo on Solaris handles
28531         backslash sequences, which makes it impossible to do backslash
28532         quoting using echo and sed.  So, we search for an echo that obeys
28533         the `echo '\t'` = '\t' equality.  Then we use `$echo' everywhere
28534         in ltmain.sh.
28535         Put tabs back into the ${IFS=   } sequences.  Emacs untabify is
28536         libtool bane.
28537
28538         * ltconfig.in: Quote all variable values that may contain
28539         metacharacters creating the libtool script.  This provides
28540         complete protection, so that even single-quotes may appear inside
28541         a libtool variable value.
28542
28543         * ltmain.sh.in (link): Quote finalize_command before putting it in
28544         the wrapper script.
28545
28546         * tests/quote.test (echo): Add the test for a non-backslash-mangling
28547         echo.
28548
28549 1997-08-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28550
28551         * ltmain.sh.in (sed_quote_subst): Change the quoting procedure
28552         again.  I think that the new one is robust for *all* characters,
28553         including whitespace and metacharacters.
28554
28555         * tests/quote.test: New torture test for libtool metacharacter quoting.
28556
28557 1997-08-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28558
28559         * ltmain.sh.in: Change quoting procedure because some shells
28560         cannot handle `]' in scan sets.  From Ian Dall.
28561
28562 1997-08-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28563
28564         * ltmain.sh.in (execute): Added -dlopen flag handling.  Suggested
28565         by Alexandre Oliva.
28566
28567 1997-08-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28568
28569         * ltmain.sh.in (link): Change executable wrapper to fix up value
28570         of thisdir, as well as progdir, if the $0 path doesn't work.  This
28571         guarantees that shlibpath_var is set correctly.  Add support for
28572         execute mode.
28573
28574         * ltmain.sh.in (execute): New mode to automatically set
28575         shlibpath_var, which allows easy debugging of uninstalled
28576         executables and libraries.  Suggested by Kenneth Albanowski.
28577
28578 1997-08-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28579
28580         * Makefile.am ($(srcdir)/ltconfig): Use lineno.
28581
28582         * configure.in: Add AM_PROG_AWK for lineno.
28583
28584         * lineno: New program to automatically put line numbers in
28585         ltconfig.
28586
28587         * libtool.m4, ltconfig.in (AM_PROG_LD): Yet Another Rewrite, which
28588         incorporates the results of `gcc -print-program-name=ld'.
28589         Suggested by Alexandre Oliva.
28590
28591 1997-08-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28592
28593         * ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off
28594         command echoing.  From Juergen A. Erhard.
28595
28596         (compile): Recognize the Objective C `.m' extension.  From Juergen
28597         A. Erhard.
28598
28599         (compile): Suppress error output from the second compilation (if
28600         any) so that we don't get those frustrating duplicate error
28601         messages.
28602
28603         * tests/suffix.test (extensions): Added Objective C extension, `.m'.
28604
28605 1997-08-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28606
28607         * ltconfig.in: Added messages to config.log to describe what sort
28608         of test we are running.
28609         (pic_flag): Added a sanity check for pic_flag.  This should fix
28610         bugs reported using the cc bundled with HP-UX 10.  Suggested by
28611         Bruno Haible and Akim Demaille.
28612
28613 1997-08-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28614
28615         * ltmain.sh.in (link): Add -dlopen and -dlpreopen support for
28616         libtool objects.  This means that dlopened modules no longer need
28617         to be shared libraries.
28618
28619         * ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC.
28620         Reported by Ian Lance Taylor.
28621
28622         * libtool.m4 (LD): Always add `-n32' to the linker if we are using
28623         GCC on IRIX 6.  Reported by Ian Lance Taylor.
28624
28625 1997-07-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28626
28627         * libtool.m4 (AM_PROG_LIBTOOL): Explicitly check enable_shared and
28628         enable_static rather than just enableval.  This allows
28629         configure.in scripts to set their own defaults.  Suggested by
28630         Tommy Reilly.
28631
28632 1997-07-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28633
28634         * ltmain.sh.in: Add NLS environment variable handling copied from
28635         ltconfig.in.  Reported by Akim Demaille.
28636         (link): If allow_undefined_flag is not supported, then turn on old
28637         libraries.  Reported by Akim Demaille.
28638
28639         * demo/dlmain.c (main): Use dld_preloaded_symbol_count to display
28640         a message about the sortedness of the symbol table.
28641
28642         * ltconfig.in (nlist): Use an nlist convenience variable, so that
28643         code can be shared directly with ltmain.sh.in.
28644
28645         * ltconfig.in, ltmain.sh.in (dld_preloaded_symbol_count): Count up
28646         the number of symbols in the dld_preloaded_symbols.  Set to `-1'
28647         if the list wasn't both sorted and counted.  This allows
28648         applications to do a quick binary search, if they are so inclined.
28649
28650 1997-07-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28651
28652         * ltmain.sh.in (link): Remove code for `-version-file', since it
28653         has been long-deprecated.
28654
28655         Disable static linking if hardcode_direct is unsupported and there
28656         is no working link_static_flag.  This provides correct behaviour
28657         for all cases on AIX 3, regardless of whether collect2 is broken
28658         or not.  Reported by Mark Kettenis.
28659
28660         * ltconfig.in: Fix typo in test polarity.  From Mark Kettenis.
28661
28662 1997-07-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28663
28664         * ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses
28665         a broken collect2.  Adapted out of test results from Mark
28666         Kettenis.
28667         (link_static_flag): Make sure the link_static_flag actually works
28668         with a trivial binary.
28669
28670         * ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed
28671         from export_dynamic_flag because we eval it in ltmain.sh.
28672
28673         * ltmain.sh.in (link_static): Don't eval link_static_flag.
28674
28675         * demo/dlmain.c (main): Change function prototype to be KNR
28676         compatible.  From Kaveh R. Ghazi.
28677
28678         * ltmain.sh.in (link): Use no_builtin_flag.  This works around
28679         conflicting definitions of builtin functions with at least GCC.
28680         Reported by Kazuhiro Sasayama.
28681
28682         * ltconfig.in (no_builtin_flag): New flag to turn off builtin
28683         functions when compiling an object file.
28684         (pipe_works): Use it.
28685
28686         * tests/demo-exec.test (status): Use status variables so that we try to
28687         execute all the programs.
28688
28689 1997-07-23  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28690
28691         * ltconfig.in (pic_flag): According to the libg++ 2.7.2 configure
28692         script, DEC alpha CPUs are PIC-only, as well.  Reported by Kevin
28693         Jacobs.
28694
28695 1997-07-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28696
28697         * ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X;
28698         Y'" with "sed -e 'X' -e 'Y'".
28699
28700         * ltmain.sh.in (link): Finish full integration for `-dlopen' and
28701         `-dlpreopen'.
28702
28703         Fix two silly typos where I used a compile_command in place of a
28704         finalize_command, and vice versa.
28705
28706         Change the wrapper script to check a hardcoded path only if the
28707         argv[0] method fails.  This is a compromise for the previous two
28708         patches, and should solve the majority of problems with wrapper
28709         scripts.  From Kenneth Albanowski.
28710
28711         (link): Change a reference to hardcode_libdir_colon_separated to
28712         use the new hardcode_libdir_separator variable.
28713
28714         * demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and
28715         `-dlpreopen' for building helldl.
28716
28717         * demo/dlmain.c (main): Succeed, even if none of the libhello
28718         symbols have been preloaded.
28719
28720 1997-07-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28721
28722         * ltconfig.in (global_symbol_pipe): Add `U' to the accepted global
28723         symbol types.  This means that we will get duplicate symbols, but
28724         we'll also be sure to get all global symbols used by the program.
28725
28726         * ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make
28727         symbol output unique.
28728
28729 1997-07-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28730
28731         * ltconfig.in (pipe_works): Check to make sure our guessed
28732         global_symbol_pipe actually works.
28733
28734         * ltmain.sh.in (link): Revert change from Kenneth Albanowski.  The
28735         wrapper scripts are more reliable when they just use the argv[0]
28736         value.  Generally, when the argv[0] method doesn't work, the user
28737         is trying to do something weird with an uninstalled binary, and
28738         should try a different approach.
28739
28740         * ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of
28741         `$cc'.  This fixes a FreeBSD bug.  Reported by Chuck Robey, and
28742         others.
28743
28744 1997-07-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28745
28746         * ltmain.sh.in (link): In wrapper scripts, hardcode the current
28747         directory to prevent phony argv[0] values from screwing up our
28748         program.  From Kenneth Albanowski.
28749
28750 1997-07-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28751
28752         * Makefile.am (demo_distfiles): Add demo/dlmain.c to the
28753         distribution.
28754
28755 1997-07-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28756
28757         * demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate
28758         `-dlopen' usage.
28759
28760         * demo/dlmain.c: New file to demonstrate preloaded modules.
28761
28762         * ltmain.sh.in (link): Add `-dlopen' flag to preload dynamic
28763         modules, even on static platforms.  Use `$NM' and
28764         `$global_symbol_cmd' to extract symbols from required files.
28765         (dlname): Delete dlname mode entirely.  It is rendered obsolete
28766         because the `.la' file format is now a public interface.
28767
28768         * ltconfig.in (NM): New variable for BSD-compatible nm program.
28769         (global_symbol_cmd): Pipeline to extract global symbols from the
28770         nm output.
28771
28772         * ltmain.sh.in: The .la file header should depend on `ltmain.sh',
28773         not `$PROGRAM'.
28774         (link): Make sure $export_dynamic_flag is eval'ed before it is
28775         used.
28776
28777         * tests/demo-exec.test, tests/demo-inst.test: Check the new
28778         helldl program, too.
28779
28780 1997-07-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28781
28782         * libtool.spec: New Red Hat Package Manager specification file in
28783         order to help people prepare distributions of libtool for Linux.
28784
28785         * ltmain.sh.in: Eliminate two accidental uses of the NONE magic
28786         value.  These were breaking libtool's behaviour when no mode is
28787         specified.
28788
28789         * tests/nomode.test: New test to make sure there is correct behaviour
28790         when we don't specify a mode.
28791
28792 1997-07-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28793
28794         * Release 1.0.
28795
28796         * ltconfig.in: On SunOS, append /usr/etc to the PATH before
28797         running ldconfig; on *BSD, append /sbin.  This was done in line
28798         with the Linux change suggested by Kenneth Albanowski.
28799
28800         * demo/Makefile.am (hardcode_tests): Aesthetic change to
28801         alphabetize order of compiling the hardcode tests.
28802
28803         * Makefile.am (EXTRA_DIST): Delete README-automake.
28804
28805         * README-automake: Remove from distribution.
28806
28807 1997-07-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28808
28809         * ltmain.sh.in (link): In the executable wrapper, strip trailing
28810         colons from the shlibpath_var because some ld.so's, notably
28811         OpenBSD 2.0's (!), don't parse colon-terminated values correctly.
28812         From Tim Pierce.
28813
28814 1997-07-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28815
28816         * ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic
28817         variable value.  Use an empty variable instead.
28818
28819         * ltconfig.in (with_gcc, with_gnu_ld): Do the tests for the C
28820         compiler and linker if the variables are unset, or if they are not
28821         GNU C and ld.
28822         (RANLIB): Eliminate redundant `if' statement.
28823
28824         * configure.in: Use AM_PROG_LD.
28825
28826         * libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU
28827         ld.
28828         (AM_PROG_LD): Rename AM_PATH_PROG_LD to AM_PROG_LD.  Parameterize
28829         so that the user can specify `--with-gnu-ld' or `--without-gnu-ld'
28830         to indicate his preference.
28831         (AM_PROG_LIBTOOL): Use it.
28832
28833 1997-06-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28834
28835         * ltconfig.in: Append /sbin to the path before running ldconfig on
28836         Linux.  This helps superusers who haven't set their PATH
28837         correctly.  Suggested by Kenneth Albanowski.
28838
28839         * tests/if.test: New test to make sure that we haven't forgotten to
28840         follow an `if' statement with a `test' command.  This should avoid
28841         the majority of hard-to-track bugs.
28842
28843 1997-06-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28844
28845         * ltmain.sh.in: Change all the `eval "$run ..."' sequences to
28846         `$run "eval ..."'.
28847
28848         Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'.
28849         This is the sequence recommended by the Autoconf manual, and
28850         should avoid any problems on older machines.  Eliminate all uses
28851         of `cp -p'.  Reported by Akim Demaille.
28852
28853         (install): Use `test $# -gt 0' instead of `test -n "$1"'.
28854
28855         * ltconfig.in (LN_S): Add test to see if `ln -s' works.
28856
28857         * libtool.m4: Increment serial number, and require AC_PROG_LN_S.
28858
28859 1997-06-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28860
28861         * ltmain.sh.in (link): Add missing `test' statement.  Reported by
28862         Akim Demaille.
28863
28864 1997-06-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28865
28866         * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of
28867         am_cv_path_ld.  From Tim Pierce.
28868
28869 1997-06-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28870
28871         * ltmain.sh.in: Redo two robustness fixes.  Alexandre had the
28872         correct approach, but I botched them.
28873
28874         * ltconfig.in (dynamic_linker): Disable shared libraries on
28875         MkLinux unless GNU libc is in use.  Reported by Akim Demaille.
28876
28877 1997-06-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28878
28879         * ltmain.sh.in (install): Add a missing `test' command.  Reported
28880         by Joel Weber.
28881         Miscellaneous fixes to improve robustness.  From Alexandre Oliva.
28882
28883         * tests/demo-conf.test (CONFIG_SITE): Set to /dev/null, so that the
28884         config.site file doesn't mess up our prefix.  Reported by Joel
28885         Weber.
28886
28887         * tests/demo-inst.test: Always run both hell.static and hell.
28888
28889         * tests/demo-conf.test: Always remove the local config.cache, but run
28890         `make distclean' only if the Makefile exists.  Otherwise, the demo
28891         directory is not cleaned up if a user uses their own config.cache.
28892         Reported by Joel Weber.
28893
28894 1997-06-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28895
28896         * ltmain.sh.in (link): Create invalid libtool objects when partial
28897         linking if we don't have PIC.  From Jeff Dairiki.
28898         (install): Fix bug if libtool object is installed to a file name
28899         without directory components.  From Jeff Dairiki.
28900
28901 1997-06-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28902
28903         * Makefile.am (demo/configure): Fix up rules to run autoconf.
28904         (aclocal.m4): Now we depend on our own libtool.m4.
28905
28906         * configure.in (AM_PATH_PROG_LD): Use it.
28907
28908         * libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used
28909         by the C compiler.
28910         (AM_PROG_LIBTOOL): Use it.
28911
28912         * ltmain.sh.in (install, uninstall): Support installing and
28913         uninstalling `.lo' files.  From Jeff Dairiki.
28914
28915 1997-06-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28916
28917         * Makefile.am (ltconfig, ltmain.sh): Only move if $(srcdir) is not
28918         the current directory.  Don't regenerate every time the package is
28919         reconfigured.  Reported by Tom Tromey.
28920         (MAINTAINERCLEANFILES): Added ltconfig, ltmain.sh, so that
28921         $(srcdir) is not messed with during a regular clean.
28922
28923 1997-06-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28924
28925         * Makefile.am (ltconfig, ltmain.sh): Be sure to move these files
28926         into $(srcdir) once they are created.
28927
28928         * ltmain.sh.in (link): Disable building static libraries.
28929         People should use their favourite AR and RANLIB commands.
28930         Disable building old-style objects if `--disable-static' is
28931         given.  Suggested by Tom Lees and Stephan Kulow.
28932
28933 1997-06-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28934
28935         * ltconfig.in (host_cpu, host_vendor, host_os): Patch up
28936         definitions, to allow for the fact that the host_os may contain
28937         hyphens (as in linux-gnu).  From Scott Goehring.
28938
28939         * ltmain.sh.in (link): Move the `dlname' setting closer to the top
28940         of the file.  Suggested by David Mosberger-Tang.
28941         Symlink the libtool archive into the `.libs' directory so that it
28942         can be found by programs that want to find a library's dlname by
28943         searching LD_LIBRARY_PATH.  Reported by David Mosberger-Tang.
28944
28945 1997-06-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28946
28947         * Tell people to report bugs to the new libtool mailing list,
28948         <bug-libtool@gnu.ai.mit.edu>.
28949
28950 1997-06-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28951
28952         * ltconfig.in (allow_undefined_flag): New variable that implements
28953         `-allow-undefined'.
28954         (archive_cmds): Enable C++ constructors for FreeBSD 2.2.  From
28955         David Nugent.
28956
28957         * ltmain.sh.in (link): Accept new `-allow-undefined' flag when
28958         building libtool libraries.  This tells libtool to allow
28959         unresolved symbols to exist in shared libraries.  Basically, this
28960         turns off shared libraries on AIX.  Suggested by Ian Lance Taylor.
28961
28962 1997-05-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28963
28964         * libtool.m4 (LD): On at least IRIX, many different flags need to
28965         be propagated to the linker if they are part of the compiler
28966         command line.  Reported by Anthony Green.
28967
28968 1997-05-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28969
28970         * ltconfig.in: Trivial port to FreeBSD 3.  From David Nugent.
28971
28972 1997-04-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28973
28974         * ltmain.sh.in (link): Remove all traces of `-whole-archive',
28975         `-no-whole-archive', and libtool convenience libraries.  They were
28976         more trouble than they're worth.  If these are ever reimplemented,
28977         they need more careful attention to make portable.
28978
28979         * libtool.m4, ltconfig.in: Added a `--disable-static' flag to turn
28980         off static library creation.  From Tom Lees (who finally convinced
28981         me that it was the Right Thing to do).
28982
28983 1997-04-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28984
28985         * ltmain.sh.in (hardcode_runpath_var, runpath_var): Use them, if
28986         the linker has no -rpath flag.
28987         Quote the values we use to set runpath_var and shlibpath_var.
28988         (link): Use libobjlibs for libtool convenience libraries.
28989
28990         * ltconfig.in (hardcode_runpath_var, runpath_var): Add new
28991         variables to describe linkers that honour `LD_RUN_PATH'.
28992         (host_cpu, host_os): Use these more specific variables, rather
28993         than the full canonical host system name.
28994
28995         * ltmain.sh.in (dlname): Distinguish between missing
28996         `-export-dynamic' and when the library is only statically linked.
28997
28998 1997-04-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28999
29000         * ltconfig.in: Trivial port to OpenBSD by making it an alias for
29001         NetBSD.  From Tim Pierce.
29002
29003 1997-04-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29004
29005         * ltconfig.in: Temporary measures to check for a broken collect2
29006         program.  Right now, we just see if we're using GCC on AIX 3.
29007
29008         * tests/hardcode.test: AIX also has arbitrary limits on the line length
29009         of input to fgrep(1), so we need to translate NUL characters to
29010         newlines in order to properly detect embedded `.libs'.  From Bruno
29011         Haible.
29012         Also redirect stderr to /dev/null, so that AIX users don't get
29013         worried by `fgrep: Maximum line length of 2048 exceeded.'.
29014
29015 1997-04-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29016
29017         * ltmain.sh.in (mode): Use `egrep -e' when inferring the operation
29018         mode.
29019
29020 1997-04-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29021
29022         * ltconfig.in (linker): Some GNU ld's don't accept `--version',
29023         but do accept `-v'.  From Jukka Honkela.
29024         (ld_shlibs): AIX lossage may be settling down.  AIX 3.2.5 ld does
29025         *not* hardcode direct libraries, but AIX 4.1.[45] ld does.
29026
29027 1997-04-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29028
29029         * ltconfig.in (hardcode_action): Fix silly logic error.  From
29030         Bruno Haible.
29031
29032 1997-04-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29033
29034         * ltmain.sh.in (install): Relink if hardcode_action is `relink',
29035         rather than using complex conditionals based on the other
29036         hardcode variables.
29037
29038         * ltconfig.in (hardcode_action): Set to `relink', not `immediate',
29039         if we can only hardcode existing directories.  Rearrange
29040         conditionals to make the intent clearer, otherwise this can be one
29041         hellish piece of code for the already-dizzy libtool maintainer.
29042
29043 1997-04-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29044
29045         * replfunc.m4: Delete from the distribution.  Documentation now
29046         describes how to set LTALLOCA and LTLIBOBJS in your own
29047         configure.in.
29048
29049         * ltmain.sh.in (link): Make sure a libtool library only counts as
29050         a shared library if its library_names are non-null.
29051         Use timestamps for .lo's when PIC is turned off, rather than
29052         symlinking to the real object.  This helps invalid mixtures of PIC
29053         and non-PIC to fail.
29054
29055 1997-04-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29056
29057         * Makefile.am (EXTRA_DIST): Distribute libtool.prj.
29058
29059         * Shameless plug: Changed source code management system from CVS
29060         to PRCS.
29061
29062         * libtool.scm: Initial Guile implementation of libtool.
29063
29064         * ltmain.sh.in: An unexpected inconsistency in my whole approach
29065         to shared libraries has proven that libtool needs to be completely
29066         rewritten if I'm going to give full shared library support for
29067         platforms that don't use the GNU C library version 2 (which to my
29068         knowledge currently only works on GNU Hurd and Linux/GNU systems).
29069         Porting the GNU C library should not be difficult, though.
29070
29071         Platforms that don't have the dlopen(3) family of functions will
29072         need to install GNU DLD version 4 in order to build any kind of
29073         libraries at all.  Unfortunately, DLD 4 won't be released for a
29074         while, because I maintain it, and I'm too busy working on libtool.
29075
29076         I'll keep the old ltconfig/ltmain.sh implementation around for as
29077         long as I can, and continue applying bug fixes, so that I'll have
29078         a reasonable starting point for this new libtool implementation.
29079
29080         It looks like this implementation will be even more complex than
29081         the original (pre-0.7) libtool.  Initial estimates show that it
29082         may be up to 3 times slower, and 5 times larger than libtool-0.9.
29083         I'll probably have to rewrite it in Guile to get reasonable
29084         performance, which will severely limit its portability for a
29085         while.
29086
29087         That will also introduce a bootstrapping issue, since the next
29088         release of Guile will use libtool to build shared libraries.  So,
29089         if users want to have shared Guile libraries, they will have to
29090         configure Guile with `--disable-shared', compile it, install it,
29091         then reconfigure Guile with `--enable-shared' and repeat.
29092
29093         I was hoping to get libtool 1.0 out the door by early April, but
29094         now it looks like it will take at least another year before it'll
29095         be usable by the public at large.  April fools.  libtool.scm
29096         doesn't exist yet, either.
29097
29098         * ltconfig.in (verify_host): Remove redundant `Transform *-*-linux*
29099         to *-*-linux-gnu*'.  From Bruno Haible.
29100
29101         * tests/hardcode.test: AIX 3 doesn't have strings(1) so we need to do a
29102         funny tr and pipe the output to fgrep.  From Bruno Haible.
29103
29104 1997-03-31  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29105
29106         * Makefile.am: Use the new AUTOMAKE and ACLOCAL variables.
29107
29108         * ltmain.sh.in (link): Only fail if a convenience library doesn't
29109         exist, and the user specified -whole-archive.
29110         Fix shell quoting that was breaking @OUTPUT@ substitution.
29111
29112 1997-03-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29113
29114         * ltmain.sh.in (link): Use the hardcode_libdir_separator.
29115         Convenience libraries are libtool objects if we're not building
29116         libtool libs.
29117
29118         * ltconfig.in (hardcode_libdir_separator): Added in case the
29119         linker only honours the last of the -rpath flags (but it can
29120         contain multiple colon-separated directories), such as on OSF/1.
29121         Reported by Carl D. Roth.
29122
29123         * ltmain.sh.in (link): Set the dlname if -export-dynamic is given.
29124         (install, uninstall): Handle the dlname file separately.
29125
29126         * ltconfig.in (export_dynamic_flag): Added to allow programs to
29127         use reflexive dlopens.
29128
29129         * ltmain.sh.in: Include the mode name in any help messages.
29130         (dlname): New mode to give the name to be used with dlopen(3).
29131
29132         * ltconfig.in (AR): Allow AR to be set by the user, and export it
29133         to ltmain.sh.
29134
29135         * ltmain.sh.in: Remove broken profiled library support.
29136         Added `-whole-archive' and `-no-whole-archive' to manipulate
29137         convenience libraries.
29138
29139 1997-03-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29140
29141         * ltmain.sh.in (link): Allow the creation of static convenience
29142         libraries made of libtool objects.  Suggested by David
29143         Mosberger-Tang.
29144
29145 1997-03-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29146
29147         * ltconfig.in: On AIX, libtool also needs to look for `B' symbols
29148         in nm output.  These are global variable definitions.
29149
29150         * ltmain.sh.in: Linking with -static should link against the
29151         linklib if old_library is empty (like it is on AIX).
29152
29153         * ltconfig.in: Change the order of OS detection, so that
29154         linux-gnu* is detected before gnu*.
29155
29156         * Makefile.am (libtool): Use the correct CC, RANLIB, LD, when
29157         generating libtool.  From Carl D. Roth.
29158
29159         * configure.in: Find out the user-supplied CC, LD, RANLIB.  From
29160         Carl D. Roth.
29161
29162 1997-03-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29163
29164         * ltmain.sh.in: Linking with -static should link against the old
29165         library, not linklib.
29166
29167         * README-automake: Updated to point to Automake 1.1m.
29168
29169 1997-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29170
29171         * demo/main.c: Use it.
29172
29173         * demo/foo.h: Declare it.
29174
29175         * demo/foo.c: Added definition of `nothing' so that we have an
29176         global variable definition, as well as functions.
29177
29178 1997-03-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29179
29180         * ltconfig.in: Make sure either enable_shared or enable_static is
29181         configured.  Reported by Tom Tromey.
29182
29183         * ltmain.sh.in: Bomb out if no library types are configured.
29184
29185 1997-02-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29186
29187         * ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed
29188         from `hardcode_libdir_flag'.
29189         (library_names_spec): Renamed from `lib_names'.
29190
29191         * ltconfig.in, ltmain.sh.in (hardcode_action): Change value from
29192         `rpath' to `immediate'.
29193
29194         * replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and
29195         AM_STRUCT_ST_BLOCKS.
29196
29197 1997-02-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29198
29199         * ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support
29200         old-style config.guess scripts.
29201
29202 1997-02-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29203
29204         * ltmain.sh.in: Create objdir *before* linking a program into it.
29205
29206 1997-02-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29207
29208         * ltconfig.in: Any ld --version that returns GNU is probably a GNU
29209         ld.  From Marcus Daniels.
29210
29211         * libtool.m4: Added AM_REPLACE_FUNCS.
29212
29213 1997-02-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29214
29215         * ltconfig.in: Trivial port to *-*-osf4.  From Bruno Haible.
29216
29217 1997-02-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29218
29219         * ltconfig.in: AIX 3 and 4 ld only hardcodes LIBPATH if -L is not
29220         specified.  This behaviour is the same with both xlc and gcc.
29221
29222 1997-02-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29223
29224         * doc/platforms.texi: Yaay!  We found a workaround for HP-UX
29225         /bin/sh buffer overflows.  From Eric Backus.
29226
29227 1997-02-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29228
29229         * Release 0.9.
29230
29231         * PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am:
29232         Move PLATFORMS to doc/platforms.texi.
29233
29234         * ltmain.sh.in (link): Use hardcode_libdir_flag to get a library
29235         directory into the resulting binary.
29236         Use hardcode_action, and make many simplifying changes to have
29237         compilation and finalization be consistent with each other.
29238
29239         * ltconfig.in: Not so amazing!  It's AIX cc that hardcodes direct
29240         libraries... gcc doesn't, though.
29241         (link_rpath_flag): Change link_rpath_flag to be
29242         hardcode_libdir_flag.
29243         (hardcode_action): New variable to simplify ltmain.sh.
29244
29245         * tests/Makefile.am (TESTS): Do the full make sequence with
29246         --disable-shared, then without.
29247
29248         * tests/demo-sttc.test: Configure the demo directory with
29249         --disable-shared.
29250
29251 1997-01-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29252
29253         * ltmain.sh.in: Change to take advantage of linkers that don't
29254         hardcode direct libraries.
29255
29256         * ltconfig.in: Amazing!  AIX 3 linker doesn't hardcode direct
29257         libraries, which makes it less buggy than AIX 4.  Reported by Mark
29258         Kettenis.
29259
29260         * demo/configure.in: Check for the math library.
29261
29262         * demo/foo.c (foo): Change to use the `cos' function, so that we
29263         need to link against another library.
29264
29265         * tests/hardcode.test: Rewrite to use fgrep on output from ``strings
29266         -a'' if using fgrep directly on the binary files fails.  From Mark
29267         Kettenis.
29268
29269 1997-01-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29270
29271         * ltmain.sh.in (link): Export the PATH variable in order to find
29272         the program, rather than giving a full path.  This helps give the
29273         program a less confusing value for argv[0].
29274
29275         * tests/hardcode.test: Make sure that ../demo/libhello.la really is a
29276         shared library before running hardcoding tests.
29277
29278 1997-01-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29279
29280         * Release 0.8.
29281
29282 1997-01-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29283
29284         * Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the
29285         distribution.
29286
29287 1997-01-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29288
29289         * libtool.m4: For IRIX 6, ld needs -n32 if cc uses it.  Reported
29290         by Bruno Haible.
29291
29292         * ltconfig.in: IRIX ld does not hardcode direct libraries.
29293         Reported by Bruno Haible.
29294
29295 1997-01-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29296
29297         * ltconfig.in, ltmain.sh.in (hardcode_shlibpath_var): Allow new
29298         value, `unsupported', since most linkers do not allow you to use
29299         shlibpath_var for initial linking.
29300
29301         * ltconfig.in: Lots of bug fixes from Bruno Haible.  Set wl on
29302         OSF/1, fix definitions of hardcode_* variables.
29303         (archive_cmds): Fix not to use +h on HP-UX 9.x.  Reported by Bruno
29304         Haible.
29305
29306         * tests/demo-conf.test: Use the CONFIG_SHELL environment variable when
29307         running configure in the demo directory.  From Bruno Haible.
29308
29309         * tests/Makefile.am (clean-local): Make distclean in the demo directory,
29310         so that ``make clean; env CC=cc make check'' works as one would
29311         expect.
29312
29313         * tests/demo-make.test: Fix typo (use $make instead of make).  Reported
29314         by Akim Demaille.
29315
29316 1997-01-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29317
29318         * libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings.
29319         Suggested by Akim Demaille.
29320
29321         * libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is
29322         specified.  Reported by Bruno Haible.
29323
29324 1997-01-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29325
29326         * demo/Makefile.am (hc-direct): Do better searching for the proper
29327         name to do a direct link.
29328         (hc-libpath): Make allowances if shlibpath_var cannot be used
29329         to find libraries at link time, such as on AIX.
29330
29331         * Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c.
29332
29333         * demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to
29334         KNR form, for better portability, and less ansi2knr hair.
29335
29336         * demo/configure.in: Remove AM_FUNC_PROTOTYPES.
29337
29338         * demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS.
29339
29340         * demo/ansi2knr.1, demo/ansi2knr.c: Removed these files.
29341
29342         * ltmain.sh.in: Use 1>&2 consistently to direct errors and
29343         warnings to stderr.
29344         (compile): Fix missing single quote.
29345
29346         * ltconfig.in (hardcode_direct): On Solaris at least, using
29347         DIR/libNAME.so does not hardcode DIR, so introduce a new hardcode
29348         variable to reflect that.
29349
29350         * ltmain.sh.in (link): If linking with $link_static_flag fails,
29351         then retry without it, but still use the .a versions of
29352         uninstalled libtool archives.
29353
29354         * tests/tlibtool: Rewrote to grab all the settings from the generated
29355         libtool script.
29356
29357         * tests/hardcode.test: Make allowances if shlibpath_var cannot be used
29358         to find libraries at link time, such as on AIX.
29359
29360 1997-01-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29361
29362         * ltmain.sh.in (link): Eval $link_static_flag.  Reported by Bruno
29363         Haible.
29364
29365         * PLATFORMS: Add to distribution.  Suggested by Bruno Haible.
29366
29367 1997-01-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29368
29369         * tests/demo-conf.test, tests/demo-inst.test, tests/demo-unst.test,
29370         tests/hardcode.test:
29371         Use $make instead of make.
29372
29373         * tests/defs (make): Add definition of $make that uses the $MAKE
29374         environment variable, if set.  Suggested by Bruno Haible.
29375
29376         * tests/demo-unst.test (leftovers): Change the find command to ignore
29377         files beginning with a dot, as egrep -v doesn't seem to do the
29378         trick.  Reported by Bruno Haible.
29379
29380 1997-01-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29381
29382         * ltconfig.in: Add support for SCO OpenServer 5.x.  From
29383         Christopher Olsen.
29384
29385         (can_build_shared): Initialize at the top of the file, so that
29386         shared libraries aren't built on platforms that don't support
29387         them.
29388
29389         * tests/hardcode.test: Added a test to make sure that libtool's idea of
29390         hardcoding system linkers is correct.
29391
29392 1997-01-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29393
29394         * ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi:
29395         Update the copyright completion years.
29396
29397 1997-01-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29398
29399         * ltconfig.in: Port to IRIX 5.3, 6.2.
29400
29401 1997-01-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29402
29403         * ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the
29404         port is trivial.
29405
29406         * libtoolize.in: Add --dry-run option, -n for short.
29407
29408 1997-01-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29409
29410         * ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't
29411         understand "export something=val".  From Bruno Haible.
29412
29413         * tests/Makefile.am (distclean-local): Remove all files that the tests
29414         may have created.  Reported by Bruno Haible.
29415
29416         * For all tests, discover srcdir when running from the command
29417         line.
29418
29419         * tests/demo-unst.test: Don't fail if make uninstall doesn't delete
29420         files beginning with a dot, since spurious .nfsXXX files may be
29421         present when running NFS.  Reported by Bruno Haible.
29422
29423 1997-01-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29424
29425         * ltmain.sh.in (compile): Recognize valid source file suffixes for
29426         Fortran and C++.
29427
29428         * tests/suffix.test: New test to guarantee that libtool compile
29429         recognizes valid source file suffices.
29430
29431 1996-12-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29432
29433         * ltmain.sh.in (link): Don't allow *._o and *.l_o to be valid
29434         object type suffixes, in spite of Automake's current ansi2knr
29435         implementation.  Not all compilers allow non-`.o' suffixes.
29436
29437 1996-12-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29438
29439         * ltmain.sh.in (link): Delete the `libtool' version type.
29440
29441 1996-12-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29442
29443         * ltconfig.in: Use the full autoconf syntax when checking for GNU
29444         C.  Delete library stripping program, until we have a correct
29445         test.
29446
29447 1996-12-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29448
29449         * ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm.  From Mark
29450         Kettenis.
29451
29452 1996-12-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29453
29454         Reported by Charles Kerr:
29455         * doc/libtool.texi (Creating Object Files): Doc fix independant ->
29456         independent.
29457
29458         * ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library
29459         dependencies.
29460
29461 1996-12-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29462
29463         * Release 0.7.
29464
29465         * Makefile.am (EXTRA_DIST): Add README-automake to the
29466         distribution.
29467
29468         * ltmain.sh.in (link): When linking libtool libraries, use
29469         standard objects if they are PIC.  This prevents spurious warnings
29470         about invalid suffixes on AIX.
29471
29472         * demo/Makefile.am: Rename libhell to libhello, so that we're not
29473         quite as offensive.
29474
29475         * ltconfig.in: Remove unnecessary host validity checking.
29476
29477         * ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la
29478         is good enough (for consistency with *.a handling).
29479
29480         * tests/demo.test: Break up into demo-conf.test, demo-make.test,
29481         demo-exec.test, demo-inst.test, and demo-unst.test, so that passes
29482         and failures are reported more quickly.
29483
29484         * tests/link-2.test: Test to make sure that .lo files don't get built
29485         directly into programs.
29486
29487 1996-12-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29488
29489         * ltmain.sh.in (link): Accept files ending in .a as standard
29490         object files.  Reported by Ulrich Drepper.
29491         Remove support for creating profiled libraries (for now).
29492         Transform all library objects into standard objects when linking a
29493         program.
29494
29495         * ltconfig.in (thisdir): How embarrassing!  An error in the regexp
29496         for finding the directory component of the script path.
29497
29498         * tests/tlibtool: A typically-configured libtool script, that uses
29499         ../ltmain.sh.in for its backend.
29500
29501         * tests/link.test: Make sure that it is legal to link against .a files.
29502
29503 1996-12-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29504
29505         * ltmain.sh.in (compile): Support `.S' (preprocessed assembler)
29506         files.  Reported by Anthony Green.
29507
29508         * libtoolize.in: Give clearer instrutions for how to update
29509         aclocal.m4.
29510
29511         * ltconfig.in, ltmain.sh.in (link): Add support for creating
29512         reloadable objects.
29513
29514 1996-12-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29515
29516         * ltmain.sh.in (install): Fix passing -n flag to `libtool
29517         --finish'.
29518         (compile): Compile `.lo' and `.o' objects at the same time so that
29519         non-PIC objects (if they are available) can be used for linking
29520         into programs and creating static archives.  Suggested by Ulrich
29521         Drepper.
29522
29523 1996-12-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29524
29525         * ltmain.sh.in (link): Give the full path to the libtool library
29526         when sourcing it.
29527
29528         * ltconfig.in (old_striplib): Do a configuration test to determine
29529         if old-style libraries actually can be stripped or not.
29530
29531 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29532
29533         * tests/demo.test: Try compiling the ../demo subdirectory, with no
29534         special options.
29535
29536         * test-e.test: Check that we haven't used `test -e' anywhere in
29537         our portable shell scripts.
29538
29539 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29540
29541         * ltconfig.in: Delete reference to ABOUT-LIBS.
29542
29543         * tests: Added new subdirectory.
29544
29545         * doc/libtool.texi: Doc fixes, and finished up the Configuring
29546         chapter.
29547
29548         * ltmain.sh.in (link): Allow *._o and *.l_o to be valid object
29549         file suffixes, for Automake's ansi2knr implementation.
29550         New option -version-info replaces -version-file.
29551
29552         [help]: Give a pointer to mode-specific help when appropriate.
29553
29554         * ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC.
29555
29556         * demo: Also test Automake's ansi2knr support.
29557
29558 1996-11-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29559
29560         * ltconfig.in: Bug fixes for AIX 4, and for static platforms.
29561
29562         * ltmain.sh.in (install): Fix for loops over arguments.
29563         Need to quote ${IFS= } -> "${IFS= }".
29564         (link): Fix soname_spec bug.  Create objdir whether or not we have
29565         shared libraries.
29566
29567         * ltconfig.in: Check for library stripping program.
29568         Use test -f instead of test -e.
29569
29570 1996-11-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29571
29572         * ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't
29573         set.
29574         Be verbose about the environment variables we were configured
29575         with.
29576
29577         * ltmain.sh.in (objdir): change to .libs.
29578
29579 1996-11-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29580
29581         * ltmain.sh.in (install): Just plunge ahead with the
29582         installation... don't try to enforce dependencies.
29583
29584 1996-11-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29585
29586         * ltmain.sh.in: Fix up $libdir to be $dest in install mode.
29587
29588 1996-11-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29589
29590         * ltmain.sh: Finished rewrite of compile, link, and install
29591         modes.
29592
29593         * New ChangeLog file for libtool-0.7, since I've totally rewritten
29594         libtool.
29595
29596 1996-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29597
29598         * For historical reasons: this is when I started writing libtool.
29599 -- 
29600   Copyright (C) 1996-2010 Free Software Foundation, Inc.
29601
29602   This file is part of GNU Libtool.
29603
29604 Copying and distribution of this file, with or without modification,
29605 are permitted in any medium without royalty provided the copyright
29606 notice and this notice are preserved.  This file is offered as-is,
29607 without warranty of any kind.