Imported Upstream version 2.4.7
[platform/upstream/libtool.git] / ChangeLog
1 2022-03-17  Alex Ameen  <alex.ameen.tx@gmail.com>
2
3         version 2.4.7
4
5         * NEWS: Record release date.
6
7 2022-03-07  Alex Ameen  <alex.ameen.tx@gmail.com>
8
9         NEWS: roll-back manually filled NEWS versioning
10
11         * NEWS: 'make release-commit' wants to automatically enter this information,
12         so the original template must be restored.
13
14 2022-03-06  Alex Ameen  <alex.ameen.tx@gmail.com>
15
16         NEWS: fill entries for past commits
17
18         * NEWS: summarize past commits since previous release for NEWS file
19
20 2022-02-09  Alex Ameen  <alex.ameen.tx@gmail.com>
21
22         libltdl: bump libltdl.la version-info.
23
24         * libltdl/ltdl.mk: increment revision number to reflect minor changes
25         and bug-fixes.
26
27 2022-02-08  Alex Ameen  <alex.ameen.tx@gmail.com>
28
29         libtool: correct linter syntax complaints in M4
30
31         * m4/libtool.m4: remove unnecessary braces on variable derefence.
32         * m4/ltargz.m4: change quote style for inline comment.
33
34 2022-02-08  Alex Ameen  <alex.ameen.tx@gmail.com>
35
36         gnulib: update submodule to new repository.
37
38         * configure.ac: Update autoconf requirement for bootstrapping to 2.64.
39         * README.md: Update note concerning autoconf version requirement.
40         * bootstrap: Propogate change to GPL license from GPL 3 to GPL 2.
41
42 2022-02-08  Alex Ameen  <alex.ameen.tx@gmail.com>
43
44         maint: update copyrights across project.
45
46 2022-02-05  Stacey Marshall  <stacey.marshall@oracle.com>  (tiny change)
47
48         libtool: Do not pass '-pthread' to Solaris linker.
49
50         * build-aux/ltmain.in: Do not add -pthread to inherited linker flags on
51         Solaris systems.
52
53 2021-12-24  Alex Ameen  <alex.ameen.tx@gmail.com>
54
55         docs: manually recording dependencies in Automake
56
57         * doc/libtool.texi (Using Automake): provide example of how to manually record
58         'BUILT_SOURCES' dependencies for libtool archives.
59
60 2021-12-05  Alex Ameen  <alex.ameen.tx@gmail.com>
61
62         tests: remove deprecated old-ltdl-iface.at test.
63
64         * tests/old-ltdl-iface.at: remove test as instructed by inline comments, which
65         indicate that this test should have been deleted in 2013.
66         This test fails because it relies on legacy usage of 'include Makefile.inc'
67         by libltdl which is no longer supported.
68
69 2021-11-30  Alex Ameen  <alex.ameen.tx@gmail.com>
70
71         * libtool: Bump M4 serial versions and add missing AC_PROG_SED to ltdl.m4
72
73         * m4/libtool.m4: bump serial version ( covers entire release ).
74         * m4/ltargz.m4: bump serial version ( covers entire release ).
75         Add AC_PROG_SED requirement to LT_FUNC_ARGZ.
76         * m4/ltdl.m4: bump serial version ( covers entire release ).
77
78 2021-11-30  Václav Haisman  <vhaisman@gmail.com>  (tiny change)
79             Alex Ameen  <alex.ameen.tx@gmail.com>
80
81         libtool: replace raw invocations of sed with $SED
82
83         * build-aux/ltmain.in: replace raw invocations of sed with $SED
84         * m4/libtool.m4: replace raw invocations of sed with $SED
85         * m4/ltargz.m4: replace raw invocations of sed with $SED
86         * m4/ltdl.m4: replace raw invocations of sed with $SED
87
88 2021-11-30  Lucas Holt  <luke@foolishgames.com>  (tiny change)
89
90         libtool: add support for MidnightBSD
91
92         * build-aux/ltmain.in: clone link-mode handling for MidnightBSD from FreeBSD
93         * m4/libtool.m4: clone various TAGVARs for MidnightBSD from FreeBSD
94         * m4/ltdl.m4: clone dlopen handling for MidnightBSD from FreeBSD
95
96 2021-11-22  Ryan Schmidt  <libtool@ryandesign.com>  (tiny change)
97
98         libtool: powerpc 10.5 detection without a deployment target
99
100         * m4/libtool.m4: properly set "allow undefined" flag for darwin powerpc 10.5
101         even if deployment target is unset
102
103 2021-11-22  Jeremy Huddleston Sequoia  <jeremyhu@macports.org>  (tiny change)
104
105         libtool: support macOS 11
106
107         Fixes bug#44605
108
109         * m4/libtool.m4: '_LT_REQUIRED_DARWIN_CHECKS' sets proper "allow undefined" flag
110         for particular macOS versions and powerpc.
111
112 2021-11-22  Vincent Lefevre  <vincent@vinc17.net>  (tiny change)
113
114         libtool: correct m4 quoting in sed expression
115
116         * m4/libtool.m4: properly escape character set in sed expression
117
118 2021-11-20  Alex Ameen  <alex.ameen.tx@gmail.com>
119
120         libtool: replace some references to /usr/bin/file and /bin/sh
121
122         * build-aux/ltmain.sh: use '/usr/bin/env sh' in shebang
123         * libtoolize.in: use '/usr/bin/env sh' in shebang
124         * m4/libtool.m4: 'FILECMD' to replace use of '/usr/bin/file'
125
126 2021-11-19  aakropotkin  <alex.ameen.tx@gmail.com>
127
128         libtool: Add -Wa,* link-mode flag for assembler pass-thru
129
130         * build-aux/ltmain.in: add -Wa,* as link-mode flag.
131         Add help messages for -Wa,* and -Xassember in link mode.
132         Add help message for -Xcompiler in compile mode.
133         * doc/libtool.texi: document -Xassembler and -Wa,* for link-mode.
134
135 2021-11-19  Alex Potapenko  <opotapeno@gmail.com>  (tiny change)
136
137         libtool: Pass -Xassembler flag and arguments to compiler
138
139         * build-aux/ltmain.in: Add parsing and pass-thru for -Xassembler
140
141 2021-11-16  Pavel Raiskup  <praiskup@redhat.com>
142
143         maint: update Bootstrap git module
144
145         Fixes bug#47000.
146
147         * bootstrap: Regenerated.
148         * gl-mod/bootstrap: Updated to the latest HEAD.
149
150 2021-11-15  aakropotkin  <alex.ameen.tx@gmail.com>
151
152         maint: update copyrights across project.
153
154         * AUTHORS: Correct manually modified copyright to be consistent with
155         other files.
156
157 2021-11-15  aakropotkin  <alex.ameen.tx@gmail.com>
158
159         maint: update AUTHORS, copyright date.
160
161         * AUTHORS: Add Alex Ameen as maintainer. Move past authors to 'previous' list.
162
163 2019-03-22  Pavel Raiskup  <praiskup@redhat.com>
164
165         bootstrap: use $gnulib_clone_since
166
167         * bootstrap.conf: Add $gnulib_clone_since.
168         * gl-mod/bootstrap: Update to the latest git hash.
169         * bootstrap: Regenerate.
170
171 2019-03-13  Pavel Raiskup  <praiskup@redhat.com>
172
173         maint: update bootstrap, gnulib, copyright dates
174
175         * gnulib: Update to the latest git version.
176         * gl-mod/bootstrap: Likewise.
177         * bootstrap: Regenerate.
178
179 2018-07-24  Pavel Raiskup  <praiskup@redhat.com>
180
181         maint: update bootstrap, gnulib, copyright dates
182
183         * gnulib: Update to the latest git version.
184         * gl-mod/bootstrap: Likewise.
185         * bootstrap: Regenerate.
186         * gl/top/README-release.diff: Update the patch for the latest
187         changes in gnulib's README-release.
188
189 2018-07-12  Alexander Shevchenko  <sav_ix@ukr.net>  (tiny change)
190
191         libtool: add icl.exe support
192
193         A logical continuation of Automake commit
194         c40e27e1c2a60f58e72e65d73d808f782d55494a to provide
195         Windows ICC support similar as already done for MSVC.
196
197         Resolves bug 26484.
198
199         * m4/libtool.m4: Treat icl.exe equivalently to cl.exe.
200
201 2017-05-05  Pavel Raiskup  <praiskup@redhat.com>
202
203         docs: typo in 'win32-dll' description
204
205         Resolves bug 26516.  Thanks to Reuben Thomas.
206
207         * doc/libtool.texi (Configuring libtool): s/macro/option/ in
208         'win32-dll' option description.
209
210 2017-04-25  Pavel Raiskup  <praiskup@redhat.com>
211
212         libtool: quote 'cd' command in shipped relink_command
213
214         Per report from Eric Blake:
215         https://lists.gnu.org/archive/html/bug-libtool/2015-10/msg00009.html
216
217         * build-aux/ltmain.in (func_mode_link): Quote 'cd `pwd`' properly
218         before generating the $relink_command.  Do that for the potential
219         scenarios where the pwd could contain spaces or special shell
220         characters.
221
222 2017-04-25  Pavel Raiskup  <praiskup@redhat.com>
223
224         doc: fix typos in --mode=install invocations
225
226         Per report from devel@lists.fedoraproject.org, thread id
227         CLHZMVL3CZ43KX7CD3PF3FDV255EA57O
228
229         * doc/libtool.texi (Install mode): With the
230         'libtool --mode=install' wrapper the 'install' command needs to be
231         specified.
232
233 2017-04-21  Bert Wesarg  <bert.wesarg@googlemail.com>  (tiny change)
234
235         libtool: exit verbosely for fatal configure problems
236
237         Instead of calling not-existing function and processing subsequent
238         shell code.
239
240         * build-aux/ltmain.in (func_fatal_configuration): Fix typo in
241         func_fatal_error call.
242
243 2017-04-21  Pavel Raiskup  <praiskup@redhat.com>
244
245         maint: update copyright years
246
247         Also sync gnulib & bootstrap git submodules.
248
249         * gnulib, gl-mod/bootstrap: Move to latest git versions.
250         * bootstrap: Regenerate.
251         * all files: Bump years by 'make update-copyright'.
252
253 2017-01-16  Pavel Raiskup  <praiskup@redhat.com>
254
255         libltdl: handle ENOMEM in lt_dlloader_remove()
256
257         Reported by Alexander Hass.
258
259         * libltdl/lt_dlloader.c (lt_dlloader_remove): Detect NULL return
260         value from lt_dlinterface_register.
261
262 2016-03-09  Pavel Raiskup  <praiskup@redhat.com>
263
264         bootstrap: use the upstream repo as git module
265
266         .. instead of copying it all the time;  gnulib-tool and bootstrap
267         are now ready to do this correctly.
268
269         Bootstrap upstream is now dual-licensed as MIT/GPLv2+;  so the
270         sources are redistributed automatically under GPLv3+ license in
271         in libtool project.
272
273         * .gitmodules (bootstrap): New submodule.
274         * bootstrap.conf (local_gl_dir): Renamed to local_gl_path.
275         (local_gl_path): Renamed from local_gl_dir.  Two sub-directories
276         are now mentioned as two --local-dir's are used.
277         (gnulib_git_submodules): New option to automatically clone the
278         bootstrap git submodule.
279         * build-aux/ltmain.in (libtool_options_prep)
280         (libtool_parse_options): Changing function exit status is not
281         needed with new options-parser.
282         * libtoolize.in: Don't func_quote when it is not necessary, don't
283         set the function return value.
284         * gl-mod/bootstrap: New git submodule.
285         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
286         gl/build-aux/funclib.sh, gl/build-aux/inline-source,
287         gl/build-aux/options-parser, gl/doc/bootstrap.texi,
288         gl/modules/all-shells-tests, gl/modules/bootstrap,
289         gl/modules/extract-trace, gl/modules/funclib.sh,
290         gl/modules/funclib.sh-tests, gl/modules/inline-source
291         gl/modules/options-parser, gl/modules/options-parser-tests,
292         gl/tests/test-all-shells.sh, gl/tests/test-funclib-quote.sh
293         gl/tests/test-option-parser-helper,
294         gl/tests/test-option-parser.sh: Files removed, those are
295         automatically pulled from upstream now.
296         * bootstrap: Sync with upstream.
297
298 2016-02-25  KO Myung-Hun  <komh78@gmail.com>
299
300         libtool: set file_list_spec to '@' on OS/2
301
302         Creating and linking reloadable objects sometimes fail.
303
304         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) <os2-*>:
305         Set file_list_spec to '@'.
306
307 2016-02-19  Pavel Raiskup  <praiskup@redhat.com>
308
309         tests: fix $objdir hardcoding check with CFLAGS=-g3
310
311         At least with gcc, specifying -g3 in CFLAGS ends up with macros
312         expanded including LT_OBJDIR macro.  This fooled the testsuite.
313
314         * tests/demo.at (Demo hardcode): Filter out the expanded LT_OBJDIR
315         macro.
316
317 2016-02-19  Mike Frysinger  <vapier@gentoo.org>  (tiny change)
318
319         libtool: pass through -fuse-ld flags
320
321         Starting with gcc-4.8, there's a -fuse-ld flag that can be used to
322         select between bfd & gold.  Make sure we pass it through to the
323         linking stage.
324
325         * build-aux/ltmain.in (func_mode_link): Pass -fuse-ld=* flags
326         through.
327
328 2016-02-19  Pavel Raiskup  <praiskup@redhat.com>
329
330         m4/libtool.m4: FreeBSD elftoolchain strip support
331
332         References:
333         http://savannah.gnu.org/patch/?8675
334         Message-Id: <20150523-002056.sv85487.59958@savannah.gnu.org>
335
336         * m4/libtool.m4 (_LT_CMD_STRIPLIB): Remove the redundant tests for
337         empty $old_striplib and $striplib.  Move the test for empty $STRIP
338         variable up. Allow elftoolchain strip (with the same arguments we
339         used to have with GNU strip) on FreeBSD.
340
341 2016-02-19  Mike Frysinger  <vapier@gentoo.org>  (tiny change)
342
343         libtoolize: exec automake and autoconf only with --help
344
345         Same fix as applied to libtool in commit 408cfb9c5fa8a666917
346         to delay use of automake/autoconf to when the --help option is
347         actually specified.
348
349         * libtoolize.in (func_help): Override func_help() from
350         gl/build-aux/options-parser to only run automake --version and
351         autoconf --version when libtool --help is executed on the command
352         line.
353
354 2016-02-17  Pavel Raiskup  <praiskup@redhat.com>
355
356         edit-readme-alpha: generate the "stable" README properly
357
358         Fixes bug#20196.  Reported by Peter Johansson and KO Myung-Hun
359
360         * build-aux/edit-readme-alpha: Invert the order of checks
361         and exit sooner if the file was already edited.  Also fix the
362         typo 's/sed -n/sed/' (to print the rest of the file).
363         * Makefile.am ($(readme)): Double-quote the `cmd` to let test -n
364         work correctly.
365
366 2016-02-17  Pavel Raiskup  <praiskup@redhat.com>
367
368         maint: fix for 'make sc_immutable_NEWS' hints
369
370         * NEWS: Remove the leading white-spaces before Copyright line
371         because it breaks the perl regexp in sc_immutable_NEWS rule.
372         * cfg.mk (old_NEWS_hash): Adjust to correct previous hash as the
373         old NEWS entries were not actually touched.
374
375 2016-02-15  Pavel Raiskup  <praiskup@redhat.com>
376
377         maint: update copyright years
378
379         Also update gnulib submodule as it contains updated copyright
380         years too.
381
382         * gnulib: Latest greatest git hash.
383         * all files: Run 'make update-copyright'.
384
385 2016-02-12  Pavel Raiskup  <praiskup@redhat.com>
386
387         libltdl: handle ENOMEM sooner
388
389         Fixes bug#19890.  Reported by Tobias Stoeckmann.
390
391         * libltdl/loaders/dld_link.c (vm_open): Do not even try dld_link()
392         in case of ENOMEM.
393
394 2016-02-03  Pavel Raiskup  <praiskup@redhat.com>
395
396         gl: minor typo fixes
397
398         * gl/build-aux/options-parser (func_run_hooks):
399         s/funcions.n./functions./, s/$@/${1+"$@"}/.
400         * gl/modules/funclib.sh: Sync license metadata with real module
401         code.
402         * bootstrap: Sync with funclib.sh
403
404 2016-02-03  Pavel Raiskup  <praiskup@redhat.com>
405
406         gl-tests: dash && option-parser test fix
407
408         Rico pointed out that the testsuite failed on his system (dash
409         represented /bin/sh).  Turns out that 'shift' in dash exits shell
410         with exit status 2 when there are no items in the array.
411
412         The other issue was that 'test-option-parser.sh' did not
413         re-executed the test in proper shell, but in /bin/sh.
414
415         * gl/tests/test-option-parser-helper (test_parse_eat_test): Don't
416         shift for empty $@.
417         * gl/tests/test-option-parser.sh: Use $__GL_ALL_SHELLS_SHELL as
418         shell which runs the helper.
419
420 2015-11-30  Jeremy Huddleston Sequoia  <jeremyhu@macports.org>  (tiny change)
421
422         libtool: fix GCC/clang linking with -fsanitize=*
423
424         References:
425         https://lists.gnu.org/archive/html/libtool/2014-04/msg00026.html
426
427         * build-aux/ltmain.in (func_mode_link): Pass -fsanitize=* to the
428         linker to allow trivial use of the clang address sanitizer.
429
430 2015-11-30  Pavel Raiskup  <praiskup@redhat.com>
431
432         gl-tests: make the failure more readable
433
434         * gl/tests/test-funclib-quote.sh (_compare_or_error): Put $1 into
435         error output, not having it like that was my mistake.
436
437 2015-11-25  David Edelsohn  <dje.gcc@gmail.com>
438
439         m4/libtool.m4: export AIX TLS symbols
440
441         TLS symbols in AIX display a new, different symbol type in nm output.
442         Libtool explicitly creates a list of exported symbols for AIX shared
443         libraries using nm and does not recognize the new TLS symbols, so
444         those symbols are not exported in AIX shared libraries.
445
446         This is a regression for TLS support on AIX where TLS symbols or GCC
447         "emultls" symbols were listed as global data and exported.
448
449         This patch updates libtool.m4 export_symbols_cmds for AIX in two
450         locations so that global symbols labeled with "L" for TLS are included
451         in the export list.
452
453         * m4/libtool.m4 (export_symbols_cmds) [AIX]: Add global TLS "L" symbols.
454         Message-Id: <CAGWvnym+hhoQJfkr=cncPZMnnMQ=RVUH2Bpw6+tP2hgEmESAsA@mail.gmail.com>
455
456 2015-11-04  Pavel Raiskup  <praiskup@redhat.com>
457
458         gl/tests: new tests for options-parser
459
460         * gl/build-aux/options-parser (func_parse_options): Put the info
461         message 'enabling shell trace mode' on stderr.
462         * gl/modules/options-parser-tests: New test module.
463         * gl/tests/test-option-parser.sh: New test-case.
464         * gl/tests/test-option-parser-helper: New test-case helper.
465         * bootstrap: Sync with option-parser.
466
467 2015-11-04  Pavel Raiskup  <praiskup@redhat.com>
468
469         gl/funclib.sh: func_quotefast_eval & tilde fix
470
471         Testsuite detected that printf built-in in Bash up to 4.2 was not
472         able to properly escape tilde.
473
474         * gl/build-aux/funclib.sh (func_quote_for_eval): If printf
475         supports -v option, test also whether we properly escape tilde.
476         With Bash <= 4.2, call func_quote_portable with ~* strings.
477         * bootstrap: Sync with funclib.sh.
478
479 2015-11-04  Pavel Raiskup  <praiskup@redhat.com>
480
481         syntax-check: fix sed syntax errors
482
483         Multi-line single-quoted shell arguments defined within makefile
484         rules end up having the trailing backslash.  This caused problem
485         in some sc_* rules as GNU sed does not interpret trailing
486         backslash the same way as SHELL (== appending next line).
487         Switching to double quotes means that SHELL will remove the
488         trailing backslash for subsequent sed call.  This silences a lot
489         of GNU sed warnings seen before like:
490
491           sed: -e expression #1, char 96: unterminated address regex
492
493         * cfg.mk (sc_libtool_m4_cc_basename): Use $(SED) instead of sed,
494         use double quotes for sed's multi-line argument.
495         (sc_prohibit_set_dummy_without_shift): Likewise.
496         (sc_prohibit_test_const_follows_var): Likewise.
497
498 2015-11-03  Pavel Raiskup  <praiskup@redhat.com>
499
500         gl/tests: new tests for func_quote* family
501
502         * gl/modules/funclib.sh-tests: New test module.
503         * gl/modules/all-shells-tests: New test (helper) module.
504         * gl/tests/test-funclib-quote.sh: New test case.
505         * gl/tests/test-all-shells.sh: New gl test helper.
506         * cfg.mk (sc_useless_braces_in_variable_derefs): Whitelist
507         new test-funclib-quote.sh as the pattern is used there
508         intentionally.
509         (sc_space_tab): Likewise.
510         (sc_useless_braces_in_variable_derefs): Remove /cvsu pattern as
511         the file is not used with git.
512         (sc_prohibit_command_in_subst): New checker.
513
514 2015-11-03  Pavel Raiskup  <praiskup@redhat.com>
515
516         check: enable gnulib's testsuite
517
518         * Makefile.am (SUBDIRS): Add gnulib-tests.
519         (EXTRA_DIST): Distribute also update-copyright script.  This does
520         not happen automatically because we manually remove ./lib
521         directory created by gnulib-tool.  Not having the file distributed
522         causes 'make check' failure, however.
523         (dotversion): Fix to point to $(top_srcdir).
524         * bootstrap.conf (gnulib_tool_options): Add gnulib-tool args
525         needed to successfully install gnulib's tests.
526         * configure.ac (CONFIG_STATUS_DEPENDENCIES): Look for .version in
527         $(top_srcdir).
528         * gnulib: Sync with upstream.
529         * build-aux/.gitignore: Ignore ar-lib coming from automake.
530
531 2015-10-12  Pavel Raiskup  <praiskup@redhat.com>
532
533         funclib: refactor quoting methods a bit
534
535         From now we have two basic functions to perform string quoting for
536         shell evaluation -- 'func_quote_arg' to quote one argument and
537         'func_quote' which takes list of arguments to be quoted.
538
539         New function name-scheme should be more descriptive (previously we
540         called func_quote_for_eval with one argument and also multiple
541         arguments, while we had confusing
542         $func_quote_for_eval_unquoted_result which is redundant for
543         multiple-arguments call).
544
545         New abstraction allowed us (in an easy way) to implement
546         bash-specific optimization for quoting  (using
547         'printf -v VARNAME %q "$value"', suggested by Eric Blake), this
548         construct may be used on those places where we don't care much
549         about the result aesthetics (its thus not useful for '*.la'
550         generation or for error printing).
551
552         * gl/build-aux/funclib.sh (func_append_quoted): Use
553         func_quote_arg internally (kept in 'pretty' mode for now).
554         (func_quote): Made to be "main" high-level quoting method taking
555         list of arguments to be quoted into single command.  It replaces
556         func_quote_for_{expand,eval}.
557         (func_quote_portable): Implements quoting in shell, falling back
558         to portable sed call (rare cases).
559         (func_quotefast_eval): New internal function using fast
560         bash-specific construct, falling back to func_quote_portable for
561         non-Bash scripts.
562         (func_quote_arg): New function to quote one argument.
563         (func_quote_for_eval): Removed.  All callers changed to call
564         func_quote.
565         (func_quote_for_expand): Likewise.
566         * bootstrap: Sync with funclib.sh and options-parser.
567
568 2015-10-12  Pavel Raiskup  <praiskup@redhat.com>
569
570         libtool: optimizing options-parser hooks
571
572         Its not necessary to (re)func_quote_for_eval in each function in
573         the hook hierarchy.  Usually it is enough if the leaf function
574         does func_quote_for_eval and its caller just re-uses the
575         <CALLEE>_return variable.
576
577         This is follow up for the previous commit.
578
579         * gl/build-aux/options-parser (func_run_hooks): Propagate
580         $EXIT_SUCCESS return code down to caller if *any* hook succeeded.
581         Never re-quote the result -- either the arguments are left
582         untouched, or the options have already been properly quoted by
583         succeeding hooks.
584         (func_parse_options): Quote '$@' and return $EXIT_SUCCESS only if
585         we changed something.
586         (func_validate_options): Likewise.
587         (func_options_prep): Likewise.
588         (func_options_finish): New hook-caller for 'func_options' hooks.
589         (func_options): Propagate return value down to top-level caller,
590         but pay attention we have always set $func_options_result.
591         * build-aux/ltmain.in (libtool_options_prep): Quote '$@' and
592         return $EXIT_SUCCESS only if we changed something.
593         (libtool_parse_options): Likewise.
594         * bootstrap: Sync gl/build-aux/with option-parser.
595
596 2015-10-12  Pavel Raiskup  <praiskup@redhat.com>
597
598         libtool: mitigate the $sed_quote_subst slowdown
599
600         When it is reasonably possible, use shell implementation for
601         quoting.
602
603         References:
604         http://lists.gnu.org/archive/html/libtool/2015-03/msg00005.html
605         http://lists.gnu.org/archive/html/libtool/2015-02/msg00000.html
606         https://debbugs.gnu.org/cgi/bugreport.cgi?bug=20006
607
608         * gl/build-aux/funclib.sh (func_quote): New function that can be
609         used as substitution for '$SED $sed_quote_subst' call.
610         * build-aux/ltmain.in (func_emit_wrapper): Use func_quote instead
611         of '$SED $sed_quote_subst'.
612         (func_mode_link): Likewise.
613         * NEWS: Document.
614         * bootstrap: Sync with funclib.sh.
615
616 2015-09-29  Pavel Raiskup  <praiskup@redhat.com>
617
618         gnulib: sync with upstream
619
620         With gnulib commit f8fe25fab60e3, AM_PROG_AR is called
621         automatically from GL_EARLY macro, which brings its definition
622         into aclocal.m4.  Sufficiently new enough AM_PROG_AR uses guarding
623         AC_BEFORE([AM_PROG_AR], [LT_INIT]) call.
624
625         Existence of 'LT_INIT' string inside aclocal.m4 however broke
626         bootstrap's self-defensive libtool_check_for_bogus_macros
627         function.
628
629         * build-aux/no-bogus-m4-defines: New aux helper using m4 for
630         aclocal.m4 pre-processing.  As this is only bootstrap/dist time
631         assertion, we don't have to be too much careful (and the AC_BEFORE
632         pushdef is OK for now).
633         * boostrap.conf (libtool_check_for_bogus_macros): Use
634         no-bogus-m4-defines helper to detect bogus macros.
635         * Makefile.am: Likewise.
636         * gnulib: Sync with upstream.
637         * build-aux/git-log-fix: Fix typo.
638         * gl/build-aux/extract-trace: Fix the script timestamp.
639         * bootstrap: Sync with extract-trace.
640
641 2015-09-26  Pavel Raiskup  <praiskup@redhat.com>
642
643         maint: relax 'sc_prohibit_test_dollar' check
644
645         * cfg.mk (sc_prohibit_test_dollar): White-list the
646         'test ${VAR+y}' construct because that is autoconf-suggested
647         portable way to check for unset variable.
648
649 2015-09-26  Pavel Raiskup  <praiskup@redhat.com>
650
651         ARFLAGS: use 'cr' instead of 'cru' by default
652
653         In some GNU/Linux distributions people started to compile 'ar'
654         binary with --enable-deterministic-archives (binutils project).
655         That, however, in combination with our previous long time working
656         default AR_FLAGS=cru causes warnings on such installations:
657         ar: `u' modifier ignored since `D' is the default (see `U')
658
659         The 'u' option (at least with GNU binutils) did small optimization
660         during repeated builds because it instructed 'ar' to not
661         open/close unchanged *.o files and to rather read their contents
662         from old archive file.  However, its removal should not cause a
663         big performance hit for usual workflows.
664
665         Distributions started using --enable-deterministic-archives
666         knowing that it would disable the 'u', just to rather have a bit
667         more deterministic builds.
668
669         Also, to justify this change a bit more, keeping 'u' in ARFLAGS
670         could only result in many per-project changes to override
671         Libtool's ARFLAGS default, just to silent such warnings.
672
673         Fixes bug#19967.  Reported by Eric Blake.
674
675         * m4/libtool.m4 (_LT_PROG_AR): Default AR_FLAGS to 'cr'.
676         (_LT_REQUIRED_DARWIN_CHECKS): Use $AR_FLAGS instead 'cru' string.
677         * doc/libtool.texi: Do 's/ar cru/ar cr/' in whole documentation.
678         * NEWS: Document.
679
680 2015-09-26  Pavel Raiskup  <praiskup@redhat.com>
681
682         libool.m4: add ARFLAGS variable
683
684         Libtool has used $AR_FLAGS since 2000-05-29 commit
685         8300de4c54e6f04f0d, Automake ARFLAGS since 2003-04-06 commit
686         a71b3490639831ca.  Even though ARFLAGS is younger, it sounds like
687         better name according GNU Coding Standards.
688
689         Related to bug#20082.
690
691         * m4/libtool.m4 (_LT_PROG_AR): Copy ARFLAGS value into AR_FLAGS
692         variable if AR_FLAGS is not set.  Add new _LT_DECL'ed variable
693         'lt_ar_flags' to keep the configure-time value of AR_FLAGS.  The
694         new 'lt_ar_flags' is to be used as the default value for AR_FLAGS
695         at libtool-runtime.
696         * NEWS: Document.
697
698 2015-09-25  Pavel Raiskup  <praiskup@redhat.com>
699
700         maint: put newline after 'Subject' in ChangeLog
701
702         * Makefile.am ($(changelog)): Use --format='%s%n%n%b%n'.
703
704 2015-09-25  Pavel Raiskup  <praiskup@redhat.com>
705
706         gnulib: sync with upstream
707
708         Blacklisting of duplicated ChangeLog entries is now much easier
709         with new gitlog-to-changelog's option --ignore-matching -- so
710         patching the script is not necessary.
711
712         * Makefile.am ($(changelog)): Start ignoring entries having the
713         'Omit-from-ChangeLog.' "topic" line.  Use TZ=UTC to generate the
714         same ChangeLog regardless of the actual time-zone.
715         * build-aux/git-log-fix: Put the "blacklist" mark at the beginning
716         of each commit as that is requirement for --ignore-matching.
717         * gl/build-aux/gitlog-to-changelog.diff: Removed.
718         * gnulib: Sync with upstream.
719
720 2015-09-24  Pavel Raiskup  <praiskup@redhat.com>
721
722         libtoolize: fix infinite recursion in m4
723
724         Some projects use this construct in configure.ac:
725
726           m4_define([version], m4_include([version]))
727           pkg_version=version
728
729         When the m4_include builtin is undefined (as was done in
730         libtoolize and extract-trace scripts), the call to this 'version'
731         macro enters an infinite recursion (until ENOMEM).  So rather
732         re-define all potentially dangerous macros by empty strings,
733         suggested by Eric Blake.
734
735         While we are on it, merge the macro-"blacklist" with similar list
736         implemented in gettext, except for 'm4_esyscmd'.  It's kept
737         defined because we already trace AC_INIT macro for package
738         version, while it is often specified by
739         m4_esyscmd(git-version-gen).  Similarly to m4_include, m4_esyscmd
740         might be opt-in-blacklisted in future.
741
742         References:
743         http://lists.gnu.org/archive/html/libtool/2015-09/msg00000.html
744         https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=764580
745
746         * gl/build-aux/extract-trace (_G_mini): Redefine trace-breaking
747         macros to empty strings rather than undefining those.  Use 'dnl'
748         for comments.
749         * bootstrap: Likewise, sync with extract-trace.
750         * NEWS: Document.
751         * NO-THANKS: Mention Hiroyuki Sato.
752
753 2015-09-24  Pavel Raiskup  <praiskup@redhat.com>
754
755         bootstrap: fix race in temporary Makefile
756
757         Target 'bootstrap-deps' sometimes rebuilt $(bootstrap_files)
758         a bit earlier than the cleanup target 'bootstrap-deps-prep' was
759         invoked.  As a result, some of $(bootstrap_files) were missing.
760
761         * Makefile.am (bootstrap-deps): Rebuild $(bootstrap_files) after
762         bootstrap-deps-prep dependency.
763
764 2015-09-18  Pavel Raiskup  <praiskup@redhat.com>
765
766         libtool: fix GCC linking with -specs=*
767
768         References:
769         https://bugzilla.redhat.com/show_bug.cgi?id=985592
770
771         * build-aux/ltmain.in (func_mode_link): Pass -specs=*
772         to the linker, Fedora uses this option for hardening.
773
774 2015-02-15  Gary V. Vaughan  <gary@gnu.org>
775
776         maint: demote myself from maintainer to former maintainer.
777
778         * AUTHORS: Move myself from the list of maintainers, into the
779         list of prior authors.
780
781 2015-02-15  Gary V. Vaughan  <gary@gnu.org>
782
783         maint: post-release administrivia
784
785         * NEWS: Add header line for next release.
786         * .prev-version: Record previous version.
787         * cfg.mk (old_NEWS_hash): Auto-update.
788
789 2015-02-15  Gary V. Vaughan  <gary@gnu.org>
790
791         version 2.4.6
792
793         * NEWS: Record release date.
794
795 2015-02-06  Gary V. Vaughan  <gary@gnu.org>
796
797         libtool: don't execute automake and autoconf on every invocation.
798
799         Regression from 2.4.2 was causing noticable slow-down in builds
800         that call libtool many times.
801         * build-aux/ltmain.in (func_help): Override func_help() from
802         gl/build-aux/options-parser to only run automake --version and
803         autoconf --version when libtool --help is executed on the command
804         line.
805         * NO-THANKS: Add Robert Yang.
806         Reported by Robert Yang
807
808 2015-01-20  Gary V. Vaughan  <gary@gnu.org>
809
810         maint: undo copyright years regression.
811
812         * gl/build-aux/options-parser: Undo copyright years regression.
813         * bootstrap: Regenerate.
814
815 2015-01-20  Gary V. Vaughan  <gary@gnu.org>
816
817         bootstrap: sync with upstream.
818
819         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
820         gl/build-aux/funclib.sh, gl/build-aux/options-parser: Sync with
821         upstream.
822         * bootstrap: Regenerate.
823
824 2015-01-20  Pavel Raiskup  <praiskup@redhat.com>
825
826         libtool: respect config.site LT_SYS_LIBRARY_PATH
827
828         Libtool generator code needs to remember the configure time
829         LT_SYS_LIBRARY_PATH content to allow config.status properly
830         instantiate default LT_SYS_LIBRARY_PATH libtool run-time value;
831         Thats because config.status has no idea what the contents of
832         config.site file is (by default).
833         * m4/libtool.m4 (_LT_CONFIG): Use the _LT_DECLared
834         $configure_time_lt_sys_library_path variable as the default for
835         LT_SYS_DLSEARCH_PATH at run-time.
836         (_LT_SYS_DYNAMIC_LINKER): Don't change ac_cv_* variable if it is
837         not necessary. New $configure_time_lt_sys_library_path variable.
838         * NEWS: Update.
839
840 2015-01-20  Pavel Raiskup  <praiskup@redhat.com>
841
842         libtool.m4: typofix, subst last '$' with quadrigraph
843
844         * m4/libtool.m4 (_LT_LIBTOOL_TAG_VARS): Encase the
845         configure/libtool shared function into parseable borders; for
846         testing purposes.
847         (func_munge_path_list): Typo s/$/@S|@/.
848         * tests/configure-funcs.at: New testcase.
849         * Makefile.am (TESTSUITE_AT): Mention new testcase.
850         * NEWS: Update.
851
852 2015-01-20  Pavel Raiskup  <praiskup@redhat.com>
853
854         tests: fix an ltdl dryrun race condition.
855
856         * tests/testsuite.at (LT_AT_ACLOCAL): Inject a 1 second sleep
857         after aclocal to ensure subsequently generated autotools files
858         will be newer.
859         * NEWS: Update.
860
861 2015-01-19  Gary V. Vaughan  <gary@gnu.org>
862
863         maint: post-release administrivia
864
865         * NEWS: Add header line for next release.
866         * .prev-version: Record previous version.
867         * cfg.mk (old_NEWS_hash): Auto-update.
868
869 2015-01-19  Gary V. Vaughan  <gary@gnu.org>
870
871         version 2.4.5
872
873         * NEWS: Record release date.
874
875 2015-01-18  Gary V. Vaughan  <gary@gnu.org>
876
877         maint: update copyright statements to include 2015.
878
879         * AUTHORS, HACKING, Makefile.am, NEWS, README.md, TODO,
880         bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
881         build-aux/git-hooks/commit-msg, build-aux/ltmain.in, cfg.mk,
882         configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
883         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
884         gl/build-aux/inline-source, gl/build-aux/options-parser,
885         libltdl/README, libltdl/configure.ac,
886         libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__argz_.h,
887         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
888         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
889         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
890         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
891         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
892         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
893         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
894         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
895         libltdl/lt__argz.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
896         libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
897         libltdl/ltdl.h, libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in,
898         m4/autobuild.m4, m4/libtool.m4, m4/ltargz.m4, m4/ltdl.m4,
899         m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.in,
900         m4/lt~obsolete.m4, m4/m4.m4, tests/am-subdir.at,
901         tests/archive-in-archive.at, tests/bindir.at, tests/cdemo.at,
902         tests/cmdline_wrap.at, tests/configure-iface.at,
903         tests/convenience.at, tests/ctor.at, tests/cwrapper.at,
904         tests/darwin.at, tests/demo.at, tests/depdemo.at,
905         tests/deplib-in-subdir.at, tests/deplibs-ident.at,
906         tests/deplibs-mingw.at, tests/destdir.at, tests/dlloader-api.at,
907         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
908         tests/duplicate_deps.at, tests/duplicate_members.at,
909         tests/early-libtool.at, tests/exceptions.at,
910         tests/execute-mode.at, tests/exeext.at, tests/export-def.at,
911         tests/export.at, tests/f77demo.at, tests/fail.at,
912         tests/fcdemo.at, tests/flags.at, tests/help.at,
913         tests/indirect_deps.at, tests/infer-tag.at,
914         tests/inherited_flags.at, tests/install.at,
915         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
916         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
917         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
918         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
919         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
920         tests/need_lib_prefix.at, tests/no-executables.at,
921         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
922         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
923         tests/resident.at, tests/runpath-in-lalib.at,
924         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
925         tests/standalone.at, tests/static.at, tests/stresstest.at,
926         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
927         tests/template.at, tests/testsuite.at, tests/versioning.at,
928         tests/with-pic.at: Update copyright statement to include 2015.
929         * cfg.mk: Adjust old_NEWS_hash accordingly.
930
931 2015-01-16  Gary V. Vaughan  <gary@gnu.org>
932
933         gnulib: sync with upstream.
934
935         * gnulib: Sync with upstream.
936         * doc/.gitignore: Regenerate.
937
938 2015-01-16  Pavel Raiskup  <praiskup@redhat.com>
939
940         libtoolize: fix ltdl installation order.
941
942         Fixes regression caused by commit 99a808be.
943         Makefile.in has aclocal.m4 as prerequisite, so Makefile.in
944         should be installed later to avoid unnecessary rebuild by
945         (versioned) aclocal.
946         * Makefile.am (pkgltdl_files): Move the Makefile.in file down in
947         the list after aclocal.m4.
948         * tests/libtoolize.at: Adjust to match reordered output.
949
950 2014-12-12  Gary V. Vaughan  <gary@gnu.org>
951
952         libtool: check Sun Pro CXX ABI postdeps at libtool time.
953
954         * m4/libtool.m4 (_LT_PREPARE_CC_BASENAME): Factor cc_basename
955         calculation into a shell function...
956         (_LT_CONFIG_SAVE_COMMAND): ...and expand it into generated
957         libtool script.
958         (_LT_CC_BASENAME): Adjust accordingly.
959         (_LT_FUNC_SUNCC_CSTD_ABI): Remove from here...
960         * build-aux/ltmain.in (func_suncc_cstd_abi): ...and reimplement
961         here.
962         * m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Remove postdeps
963         augmentation from here...
964         * build-aux/ltmain.in (func_mode_link): ...and reimplement here
965         just before postdeps are added.
966         * NEWS: Update.
967
968 2014-12-12  Gary V. Vaughan  <gary@gnu.org>
969
970         libtool: more carefully avoid automatic -Cstd -Crun on Sun Pro CXX.
971
972         * m4/libtool.m4 (_LT_FUNC_SUNCC_CSTD_ABI): New function factored out
973         of repeated code.  Take note of other known -Cstd incompatible
974         compiler flags.
975         (_LT_SYS_HIDDEN_LIBDEPS): Use it to determine whether -Cstd -Crun
976         can be safely added to postdeps with Sun Pro CXX.
977         * NEWS: Update.
978         * NO-THANKS: Add Marc Glisse.
979         Reported by Marc Glisse
980
981 2014-12-12  Gary V. Vaughan  <gary@gnu.org>
982
983         libtool: take care not to double-apply LT_SYS_LIBRARY_PATH.
984
985         * m4/libtool.m4 (_LT_CONFIG_SAVE_COMMANDS): Copy configure-time
986         LT_SYS_LIBRARY_PATH settings as default, but allow run-time
987         override.
988         (_LT_SYS_DYNAMIC_LINKER): Save the unmunged
989         sys_lib_dlsearch_path_spec value, and use it for _LT_DECL,
990         but then munge it with LT_SYS_LIBRARY_PATH for use in ltdl.m4
991         macros, such as LT_SYS_DLSEARCH_PATH.
992
993 2014-12-11  Pavel Raiskup  <praiskup@redhat.com>
994
995         libtool: support LT_SYS_LIBRARY_PATH for adjusting bad guesses.
996
997         Revert 8728e07 and 440fee6.
998         Some GNU/Linux distributions install libraries into /lib64 (or
999         /usr/lib64) on 64-bit machines, while /lib (/usr/lib
1000         respectively) stays for multilib variant.  Other distributions
1001         keep /usr/lib for 64-bit variant and reserve other directory for
1002         multilib. Detection of what approach a given system uses is
1003         difficult, however, especially because Glibc's ldconfig does not
1004         report the full and correct list of search paths. Allow the user
1005         to adjust Libtools heuristically determined search paths with
1006         the new LT_SYS_LIBRARY_PATH environment variable at both
1007         compile-time, when libtool is called, and at configure time.
1008         * m4/libtool.m4 (_LT_PREPARE_MUNGE_PATH_LIST): Define a new
1009         function to munge a libtool path list according to a user
1010         supplied colon-delimited path.
1011         (_LT_SYS_DYNAMIC_LINKER): Require _LT_PREPARE_MUNGE_PATH_LIST.
1012         Mark LT_SYS_LIBRARY_PATH as precious to autoconf (to survive
1013         automatic "autoreconf").
1014         Call the new func_munge_path_list function on
1015         sys_lib_dlsearch_path_spec - this propagates results to
1016         generated libtool script.
1017         (_LT_CONFIG): Expand _LT_PREPARE_MUNGE_PATH_LIST into generated
1018         libtool script.
1019         * build-aux/ltmain.in (func_mode_link): Call it to adjust
1020         sys_lib_dlsearch_path according to LT_SYS_LIBRARY_PATH.
1021         * doc/libtool.texi: Document new LT_SYS_LIBRARY_PATH.
1022         * doc/notes.texi: Likewise.
1023         * NEWS: Update.
1024
1025         References: http://thread.gmane.org/gmane.comp.gnu.libtool.general/8339/focus=8345
1026
1027 2014-12-11  Gary V. Vaughan  <gary@gnu.org>
1028
1029         maint: fix syntax-check failures.
1030
1031         * m4/m4.m4 (AC_PROG_GNU_M4): Reverse some test arguments for
1032         sc_prohibit_test_const_follows_var.
1033         Remove some spurious braces for
1034         sc_useless_braces_in_variable_drefs.
1035
1036 2014-12-11  Gary V. Vaughan  <gary@gnu.org>
1037
1038         bootstrap: sync with upstream.
1039
1040         * gl/build-aux/extract-trace (func_find_tool): Quote a bare
1041         variable expansion in a test argument.
1042         * bootstrap: Regenerate.
1043
1044 2014-12-05  Gary V. Vaughan  <gary@gnu.org>
1045
1046         libtool: s390x is also a 64bit glibc/ELF platform.
1047
1048         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LIB): Add s390x to glibc/ELF
1049         compatible CPUs that have /lib64 and /usr/lib64 in
1050         sys_lib_dlsearch_path_spec.
1051         Reported by Pavel Raiskup
1052
1053 2014-12-04  Gary V. Vaughan  <gary@gnu.org>
1054
1055         libtool: for 64bit GNU arches, add /lib64 and /usr/lib64 to sys_lib_dlsearch_path.
1056
1057         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <linux*, k*bsd*-gnu>
1058         <kopensolaris*-gnu, gnu*>: If $host_cpu contains "64", add /lib64
1059         and /usr/lib64 to sys_lib_dlsearch_path_spec.
1060         Reported by Orion Poplawski, Christian Rössel, Olly Betts et. al.
1061
1062 2014-12-04  Gary V. Vaughan  <gary@gnu.org>
1063
1064         libltdl: fix gcc compiler warning for unused attributes.
1065
1066         * libltdl/ltdl.c, libltdl/loaders/dld_link.c,
1067         libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
1068         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
1069         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: For at
1070         least gcc 4.8.3 and 4.9.1, __attribute__((__unused)) should
1071         follow the unused parameter declaration.
1072         * NO-THANKS: Add Дилян Палаузов.
1073         Reported by Дилян Палаузов
1074
1075 2014-12-04  Eric Bavier  <bavier@cray.com>
1076
1077         tests: do not assume compiler prefers shared libraries.
1078
1079         Testing whether -static-libtool-libs causes a non-libtool library to be
1080         linked dynamically is effectively a test of the compiler's preference in
1081         this case.  The Cray compiler prefers static libraries if not told
1082         otherwise.
1083         * tests/static.at [static linking flags for programs]: Do not expect
1084          -static-libtool-libs to fail.
1085
1086 2014-12-04  Norihiro Tanaka  <noritnk@kcn.ne.jp>
1087
1088         libtool: fix sys_lib_dlsearch_path_spec for ia64 HP-UX.
1089
1090         The run-time loader does not search /usr/local or subdirectories
1091         by default on ia64 HP-UX.
1092         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Fix
1093         sys_lib_dlsearch_path_spec for ia64 HP-UX.
1094         * NEWS: Update.
1095
1096 2014-12-04  Gary V. Vaughan  <gary@gnu.org>
1097
1098         libltdl: edit AM_CPPFLAGS correctly for libltdl/Makefile.am.
1099
1100         * libltdl/ltdl.mk (AM_CPPFLAGS): Make sure the sed expression to
1101         remove the first libltdl/ on each line is not confused by misuse
1102         of linebreaks.
1103         * Makefile.am (lt_Makefile_am): Also edit out the duplicated
1104         include paths after libltdl/ elimination.
1105         * NEWS: Update.
1106         Reported by Michael Wobst
1107
1108 2014-12-04  Tijl Coosemans  <tijl@FreeBSD.org>
1109
1110         libtool: commit forgotten soname_spec for freebsd-elf in bb7cef9.
1111
1112         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <freebsd-elf>: Set
1113         soname_spec correctly, per original patch.
1114         * NEWS: Update.
1115
1116 2014-12-03  Gary V. Vaughan  <gary@gnu.org>
1117
1118         bootstrap: sync with upstream for runtime M4 checking functions.
1119
1120         * gl/build-aux/extract-trace: Sync with upstream for runtime M4
1121         checking functions.
1122         * bootstrap: Regenerate.
1123         * NEWS: Update.
1124
1125 2014-12-03  Gary V. Vaughan  <gary@gnu.org>
1126
1127         configury: bail out early if GNU M4 is not on the path.
1128
1129         Now that libtoolize requires an installed GNU M4 to parse
1130         configure.ac and aclocal.m4 sources for libltdl macros, let the
1131         user know at configure time when it is missing.
1132         * m4/m4.m4: New file for rejecting non-GNU and buggy GNU versions
1133         of M4. Copied from GNU Autoconf m4.m4.
1134         * Makefile.am (lt_aclocal_m4_deps): Add m4/m4.m4.
1135         * configure.ac (AC_PROG_GNU_M4): Call it.
1136         * NEWS: Update.
1137         Reported by Michael Felt
1138
1139 2014-11-29  Gary V. Vaughan  <gary@gnu.org>
1140
1141         maint: post-release administrivia
1142
1143         * NEWS: Add header line for next release.
1144         * .prev-version: Record previous version.
1145         * cfg.mk (old_NEWS_hash): Auto-update.
1146
1147 2014-11-29  Gary V. Vaughan  <gary@gnu.org>
1148
1149         version 2.4.4
1150
1151         * NEWS: Record release date.
1152
1153 2014-11-29  Gary V. Vaughan  <gary@gnu.org>
1154
1155         gnulib: sync with upstream.
1156
1157         * gnulib: sync with upstream.
1158
1159 2014-11-29  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
1160
1161         libtool: optional filename-based shlib versioning on aix.
1162
1163         Support filename-based shared library versioning on AIX with the
1164         lib.so library filename extension, which is used with runtime
1165         linking only. Runtime linking is enabled by the -brtl linker
1166         flag for executables and the -G linker flag for Shared Objects.
1167         The behaviour is similar to Linux/SVR4 DT_SONAME, hence the name
1168         "aix-soname=svr4".
1169         * Makefile.am (TESTS_ENVIRONMENT): Pass with_aix_soname value
1170         via lt_cv_with_aix_soname into testsuite.
1171         * configure.ac: AC_SUBST with_aix_soname for testsuite.
1172         * libltdl/loaders/dlopen.c (vm_open): Use RTLD_MEMBER flag for
1173         dlopen when the filename does specify an archive member between
1174         "()". Otherways, retry with appending LT_SHARED_LIB_MEMBER when
1175         loading fails without but archive file seems to exist.
1176         * m4/libtool.m4 (dynamic_linker): Describe configured shared
1177         library versioning variant according to with_aix_soname and
1178         runtime linking.
1179         (soname_spec, library_names_spec, shlibpath_overrides_runpath)
1180         (postinstall_cmds, postuninstall_cmds, hardcode_direct)
1181         (hardcode_direct_absolute, no_undefined_flag)
1182         (allow_undefined_flag): Set according to with_aix_soname and
1183         runtime linking configuration.
1184         (export_symbols_cmds): Decorate symbols with the weak keyword.
1185         (archive_expsym_cmds): Create both shared libraries according to
1186         with_aix_soname and runtime linking configuration. Filter -brtl
1187         linker flag from compiler_flags for shared libraries due to its
1188         side effects.
1189         (enable_static): Respect with_aix_soname for disabling as well.
1190         * m4/ltdl.m4 (LT_SHARED_LIB_MEMBER): Define, set based on the
1191         value of the shared_archive_member_spec libtool variable.
1192         * m4/ltoptions.m4 (_LT_WITH_AIX_SONAME): New. Provides
1193         commandline option --with-aix-soname=aix|svr4|both. Declares
1194         $shared_archive_member_spec as libtool variable.
1195         (_LT_SET_OPTIONS): Define LT_INIT options "aix-soname=aix",
1196         "aix-soname=svr4", "aix-soname=both". Default is
1197         "aix-soname=aix".
1198         * doc/libtool.texi (LT_INIT): Document new options.
1199         * tests/deplibs-ident.at: To define whether this test should
1200         XFAIL, use hardcode_action, hardcode_direct,
1201         hardcode_direct_absolute configuration settings instead of
1202         platforms aix, bitrig, hppa-hpux, interix or openbsd.
1203         * tests/versioning.at: When shared_archive_member_spec is defined
1204         and LDFLAGS contain -brtl, we can run the versioning check.
1205         * NEWS: Update.
1206
1207 2014-11-28  Tijl Coosemans  <tijl@FreeBSD.org>
1208
1209         libtoolize: no need for umask 0 now that copying does not use tar.
1210
1211         The umask calls seem to be left over as a workaround for several
1212         releases ago when libtoolize copied libltdl sources with the help
1213         of tar.  Now that we use cp or ln -s exclusively, this just
1214         needlessly makes the files world writable; we should just respect
1215         the users' own umask setting.
1216         * libtoolize.in (func_copy): Remove umask 0 calls and simplify.
1217
1218 2014-11-28  Gary V. Vaughan  <gary@gnu.org>
1219
1220         maint: syntax-checks don't like ${ even in comments!
1221
1222         * m4/ltdl.m4: Fix a comment to appease syntax-check rules.
1223
1224 2014-11-28  Tijl Coosemans  <tijl@FreeBSD.org>
1225
1226         libtool: use a modern library version scheme for freebsd-elf.
1227
1228         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Adopt downstream patch
1229         used by FreeBSD for versioned library filenames.
1230         * build-aux/ltmain.in (func_mode_link): Replace conflicting
1231         freebsd-elf version_type case branches with a single calculation
1232         setting major and versuffix to match downstream FreeBSD.
1233
1234 2014-11-28  Tijl Coosemans  <tijl@FreeBSD.org>
1235
1236         libtool: split sco version into its own type.
1237
1238         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Set version type to
1239         "sco" for sco based hosts.
1240         * build-aux/ltmain.in (func_mode_link): Accept new "sco"
1241         version_type as equivalent to freebsd-elf.
1242
1243 2014-11-28  Gary V. Vaughan  <gary@gnu.org>
1244
1245         configury: detect dlsym underscore prefix without dlopen self.
1246
1247         * m4/ltdl.m4 (LT_FUNC_DLSYM_USCORE): Compile, load and get the
1248         address of a symbol from a separate loadable module, rather than
1249         assuming dlopen self works.
1250         * NEWS: Update.
1251         Reported by KO Myung-Hun
1252
1253 2014-11-26  Gary V. Vaughan  <gary@gnu.org>
1254
1255         ltdl: fix a long standing duplicate `-ldl' bug in the link line.
1256
1257         * m4/ltdl.m4 (LT_LIB_DLLOAD): Save contents of LIBS before
1258         calling AC_SEARCH_LIBS, which prepends to LIBS by default, and
1259         restore afterwards.  We set LIBADD_DLOPEN and LIBADD_SHL_LOAD
1260         so that dynamic loader libraries can be added selectively only
1261         where they are needed.
1262         * NEWS: Update.
1263
1264 2014-11-21  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
1265
1266         tests: do not test undef symbols across shlibs on AIX.
1267
1268         On AIX, undefined symbols across shared libraries can work only
1269         when the main program explicitly exports those symbols. As this
1270         is bad practice anyway and -no-undefined should be preferred, we
1271         skip this.
1272         * tests/template.at: Skip test with undef syms across libraries
1273         on AIX.
1274
1275 2014-11-21  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
1276
1277         tests: question mark is extended regex for non-GNU grep.
1278
1279         Accepting \? for at-most-once in basic regex is a GNU grep
1280         extension, not accepted by AIX grep for example.
1281         * tests/libtool.at: Use \{0,1\} instead of ? with GREP.
1282
1283 2014-11-18  Gary V. Vaughan  <gary@gnu.org>
1284
1285         maint: Fox a resent smelling mystique.
1286
1287         * build-aux/git-log-fix: ChangeLog edit.
1288         Reported by Eric Blake
1289
1290 2014-11-18  Gary V. Vaughan  <gary@gnu.org>
1291
1292         bootstrap: make sure gnulib file droppings are removed.
1293
1294         * bootstrap.conf (libtool_cleanup_empty_dirs): Recent bootstrap
1295         updates set source_base to null, so we need to use ${x:-y} to
1296         override the null.  Autoconf Shellology says that ancient BSD
1297         /bin/sh chokes on :- defaults, but bootstrap is a developer tool,
1298         and so we can reasonably expect a developer to have a working
1299         /bin/sh to run the bootstrap script.
1300
1301 2014-11-18  Gary V. Vaughan  <gary@gnu.org>
1302
1303         bootstrap: add missing debug preambles.
1304
1305         * bootstrap.conf (libtool_prep, func_require_ltdl_dir)
1306         (libtool_require_package_url): Add missing $debug_cmd calls.
1307
1308 2014-11-18  Vincent Lefevre  <vincent@vinc17.net>
1309
1310         NEWS: Fix an ancient spelling mistake.
1311
1312         * NEWS: s/propogate/propagate/.
1313         * cfg.mk (old_NEWS_hash): Update.
1314
1315 2014-11-17  Vincent Lefevre  <vincent@vinc17.net>
1316
1317         libtool: fix comment typo.
1318
1319         * m4/libtool.m4: Fix -fvisbility=hidden typo in a comment.
1320
1321 2014-11-04  Gary V. Vaughan  <gary@gnu.org>
1322
1323         maint: fix a syntax-check failure.
1324
1325         * tests/cmdline_wrap.at (fail_list): quote test arguments to
1326         satisfy failing syntax-checks.
1327
1328 2014-11-04  Gary V. Vaughan  <gary@gnu.org>
1329
1330         libtool: fix universal library building on darwin.
1331
1332         * build-aux/ltmain.in (func_extract_archives): $basename is now
1333         spelled $sed_basename.
1334         * NO-THANKS: Update.
1335         Reported by Misty De Meo
1336
1337 2014-11-04  Gary V. Vaughan  <gary@gnu.org>
1338
1339         tests: update fat binary test case for modern darwin.
1340
1341         * tests/darwin.at: Use "-arch x86_64", which works on modern
1342         Apple hardware, rather than "-arch ppc", which generally does not.
1343
1344 2014-11-04  Gary V. Vaughan  <gary@gnu.org>
1345
1346         tests: fix false positive in failed test check for cmdline_wrap.at.
1347
1348         * tests/cmdline_wrap.at (fail_list): non-matching globs return as
1349         a plain unexpanded string, so we also need to test for file
1350         existence before expanding into fail_list.
1351
1352 2014-11-04  Gary V. Vaughan  <gary@gnu.org>
1353
1354         bootstrap: sync with upsteram.
1355
1356         * gl/build-aux/bootstrap.in: Sync with upstream.
1357         * bootstrap: Regenerate.
1358
1359 2014-11-04  KO Myung-Hun  <komh@chollian.net>
1360
1361         libtool: support versioning on OS/2.
1362
1363         * build-aux/ltmain.in (func_mode_link) <*-os2*>: Set major and
1364         versuffix.
1365         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <*-os2*>: Set
1366         version_type to windows. Add a version information to soname_spec.
1367         * NEWS: Update.
1368
1369 2014-11-04  KO Myung-Hun  <komh@chollian.net>
1370
1371         libtool: support -export-symbols and -export-symbols-regex on OS/2.
1372
1373         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
1374         <*-os2*>: Set archive_expsym_cmds.
1375         * NEWS: Update.
1376
1377 2014-11-04  KO Myung-Hun  <komh@chollian.net>
1378
1379         libtool: add -os2dllname option.
1380
1381         On OS/2, if there are many DLLs whose prefix is the same and
1382         very long, the resulting DLLs are overwritten. Provide a new
1383         option to force a DLL name.
1384         * build-aux/ltmain.in (func_mode_help): Add a description for
1385         -os2dllname.
1386         (func_mode_link): Add -os2dllname.
1387         * doc/libtool.texi: Document it.
1388         * NEWS: Update.
1389
1390 2014-11-04  KO Myung-Hun  <komh@chollian.net>
1391
1392         libtool: fix DLL creation/installation/uninstallation on OS/2.
1393
1394         OS/2 can only load a DLL with a base name of 8 characters or
1395         less. Also, on OS/2 don't install or uninstall using a link.
1396         * build-aux/ltmain.in: Do not strip an import lib.
1397         * m4/libtool.m4: Set variables to fix DLL creation, installation
1398         and uninstallation.
1399
1400 2014-11-04  KO Myung-Hun  <komh@chollian.net>
1401
1402         libtool: support -Zxxx options used on OS/2.
1403
1404         * build-aux/ltmain.in (func_mode_link): Add -Z* case, treating
1405         them specially on os2 only.
1406
1407 2014-11-04  KO Myung-Hun  <komh@chollian.net>
1408
1409         libtool: set lt_cv_deplibs_check_method to pass_all on OS/2.
1410
1411         * m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Same as the title.
1412
1413 2014-11-04  KO Myung-Hun  <komh@chollian.net>
1414
1415         libtool: there is no need to relink DLLs on OS/2.
1416
1417         * build-aux/ltmain.in (func_mode_link) <*-os2*>: need_relink=no.
1418
1419 2014-11-04  KO Myung-Hun  <komh@chollian.net>
1420
1421         ltdl: OS/2 uses other APIs to load a DLL than LoadLibrary() on Windows.
1422
1423         * m4/ltdl.m4: Remove os2* from a list for loadlibrary.la.
1424
1425 2014-11-04  KO Myung-Hun  <komh@chollian.net>
1426
1427         libtool: support to link against static libraries on OS/2.
1428
1429         * m4/libtool.m4 (_LT_COMPILER_PIC): Set lt_prog_compiler_static to
1430         $wl-static.
1431
1432 2014-11-04  KO Myung-Hun  <komh@chollian.net>
1433
1434         libtool: don't eliminate duplications in $postdeps and $predeps on OS/2
1435
1436         * build-aux/ltmain.h (libtool_validate_options): Add *os2* to the list.
1437
1438 2014-11-03  Gary V. Vaughan  <gary@gnu.org>
1439
1440         configury: create installation dir before writing to it.
1441
1442         * Makefile.am (install-scripts-local): Don't forget to make the
1443         installation target directory before writing to it.
1444         * NO-THANKS: Update.
1445         Reported by Allan McRae
1446
1447 2014-11-03  Gary V. Vaughan  <gary@gnu.org>
1448
1449         maint: .PHONY rules to protect gmake from pathological file names.
1450
1451         * Makefile.am (.PHONY): Add install-scripts-local,
1452         check-interactive, check-noninteractive-old,
1453         check-noninteractive-new and check-noninteractive.
1454
1455 2014-11-02  Arkadiusz Miśkiewicz  <arekm@maven.pl>
1456
1457         tests: fix typo in cmdline_wrap skip check.
1458
1459         * tests/cmdline_wrap.at (fail_list): fix a typo in loop script
1460         text.
1461
1462 2014-11-02  Gary V. Vaughan  <gary@gnu.org>
1463
1464         libtoolize: don't forget to remove old non-gnulib argz files.
1465
1466         * libtoolize.in (all_pkgltdl_files): Add back argz.c and argz_.h,
1467         as installed by previous libtool releases.
1468
1469 2014-11-02  Gary V. Vaughan  <gary@gnu.org>
1470
1471         libltdl: move libltdl argz module into LT namespace.
1472
1473         To avoid clashes with gnulib argz module in ltdl client projects,
1474         move ours into its own namespace.
1475         * libltdl/argz_.h, libltdl/argz.c, m4/argz.m4: Move from here...
1476         * libltdl/libltdl/lt__argz_.h, libltdl/lt__argz.c, m4/ltargz.m4:
1477         ...to here.
1478         * Makefile.am, libltdl/libltdl/lt__glibc.h, libltdl/ltdl.mk,
1479         libtoolize.in, m4/ltdl.m4: Adjust accordingly.
1480         * tests/libtoolize.at, tests/ltdl-api.at, tests/nonrecursive.at,
1481         tests/old-ltdl-iface.at: Adjust for different libtoolize output.
1482         * libltdl/.gitignore: Adjust accordingly.
1483         * NEWS: Update.
1484         Reported by Pavel Raiskup
1485
1486 2014-11-02  Gary V. Vaughan  <gary@gnu.org>
1487
1488         maint: whitespace cleanup.
1489
1490         * Makefile.am ($(thanks)): Fix several whitespace syntax-check
1491         failures.
1492
1493 2014-11-02  Pavel Raiskup  <praiskup@redhat.com>
1494
1495         libtoolize: do not remove gnulib files with --force.
1496
1497         * libtoolize.in (func_require_seen_libtool): Do not remove
1498         snippet/* files which are from Gnulib.
1499
1500 2014-10-30  Gary V. Vaughan  <gary@gnu.org>
1501
1502         tests: set bindir and libdir at configure time.
1503
1504         In particular, openSuSE on x86_64 uses CONFIG_SITE to set libdir
1505         to "${exec_prefix}/lib64", which confuses testcases that check
1506         the contents of "${prefix}/lib".  In general, tests that expect
1507         to find installed files in specific directories should explicitly
1508         set those directories at configure time.
1509         * tests/testsuite.at (LT_AT_CONFIGURE): Make sure exec_prefix,
1510         bindir and libdir point to known subdirectories we can check the
1511         contents of later on in a test case.
1512         (prefixdir): Rename from this...
1513         (prefix): ...to this.  All test cases that set or use the config
1514         prefix directory must now refer to `prefixdir` for the helper
1515         macros in this file to work in hostile build environments such
1516         as CONFIG_SITE setting openSuSE.
1517         * tests/demo.at, tests/depdemo.at, tests/mdemo.at,
1518         tests/tagdemo.at: Adjust accordingly.
1519         Reported by Peter Breitenlohner.
1520
1521 2014-10-29  Reuben Thomas  <rrt@sc3d.org>
1522
1523         libtool: -rdynamic support for tcc.
1524
1525         * m4/libtool.m4 (_LT_LINKER_SHLIBS) <linux*>: Set
1526         export_dynamic_flag_spec appropriately when using tcc.
1527
1528 2014-10-29  Reuben Thomas  <rrt@sc3d.org>
1529
1530         libtool: preliminary support for tcc on linux*.
1531
1532         * m4/libtool.m4 (_LT_LINKER_SHLIBS) <linux*>: Set archive_cmds and
1533         ld_shlibs appropriately when using tcc.
1534         * NEWS: Update.
1535
1536 2014-10-29  Gary V. Vaughan  <gary@gnu.org>
1537
1538         maint: fix README-alpha version match.
1539
1540         With simplified release version numbering (thank you, git!), be
1541         careful to recognize four part alpha versions, or short git
1542         revision suffixed alpha versions correctly.
1543         * Makefile.am (re_odd_version): Remove.
1544         (re_alpha_version): Recognize alpha version numbers.
1545         ($(readme)): Adjust accordingly.
1546
1547 2014-10-29  Gary V. Vaughan  <gary@gnu.org>
1548
1549         maint: autogenerate THANKS.
1550
1551         More automation == less time wasted on menial tasks.
1552         * build-aux/thanks-gen: script inspired by coreutils.
1553         * Makefile.am (THANKS): Based on rule from coreutils/Makefile.am.
1554         * NO-THANKS: New file.  Configure thanks-gen output.
1555         * THANKS: Remove.
1556
1557 2014-10-29  Gary V. Vaughan  <gary@gnu.org>
1558
1559         maint: fix prefix and suffix installs for libtoolize.
1560
1561         * Makefile.am (install-data-local): Depend on new
1562         install-scripts-local, and move libtoolize install from here...
1563         (install-scripts-local): ...to here.
1564         Pass libtoolize destination through program transform expression.
1565         (uninstall-hook): Likewise, prior to removal.
1566         * NEWS: Update.
1567         * THANKS: Update.
1568         Reported by Václav Zeman
1569
1570 2014-10-27  Gary V. Vaughan  <gary@gnu.org>
1571
1572         maint: move Peter O'Gorman and Ralf Wildenhues to past maintainers.
1573
1574         * AUTHORS: Move Peter O'Gorman and Ralf Wildenhues from current
1575         to past maintainers list.
1576
1577 2014-10-27  Gary V. Vaughan  <gary@gnu.org>
1578
1579         maint: post-release administrivia
1580
1581         * NEWS: Add header line for next release.
1582         * .prev-version: Record previous version.
1583         * cfg.mk (old_NEWS_hash): Auto-update.
1584
1585 2014-10-27  Gary V. Vaughan  <gary@gnu.org>
1586
1587         version 2.4.3
1588
1589         * NEWS: Record release date.
1590
1591 2014-10-27  Gary V. Vaughan  <gary@gnu.org>
1592
1593         bootstrap: sync with upstream.
1594
1595         * gl/build-aux/bootstrap.in, gl/build-aux/funclib.sh: Sync with
1596         upstream.
1597         * bootstrap: Regenerate.
1598
1599 2014-10-27  Gary V. Vaughan  <gary@gnu.org>
1600
1601         testsuite: fixes required for `make distcheck CC=g++`.
1602
1603         * tests/demo.at (Pdemo conf): Overide _LT_DEMO_SETUP foo.h to
1604         declare foo2.
1605         * tests/mdemo.at (_LT_SETUP): Don't wrap `sub` dectlaration in
1606         C++ guards, because sub.c is also compiled with g++ in this test.
1607         * tests/old-ltdl-iface.at (old.c): Add a return type to main
1608         declaration as required by C++.
1609
1610 2014-10-27  Gary V. Vaughan  <gary@gnu.org>
1611
1612         maint: fix a typo in THANKS.
1613
1614         * THANKS: s/macports\.com/macports.org/
1615
1616 2014-10-27  Gary V. Vaughan  <gary@gnu.org>
1617
1618         syntax-check: use strlcpy instead of strncpy.
1619
1620         * libltdl/loaders/dyld.c (vm_sym): Use strlcpy to pacify syntax
1621         checks.
1622         * libltdl/ltdl.c (try_dlopen): Likewise.
1623
1624 2014-10-25  Gary V. Vaughan  <gary@gnu.org>
1625
1626         libtool: fix GCC linking with -fstack-protector.
1627
1628         * build-aux/ltmain.in (func_mode_link): Pass -fstack-protector*
1629         to the linker as it is required at link time to resolve libssp symbols.
1630         From Yaakov Selkowitz
1631
1632 2014-10-25  Gary V. Vaughan  <gary@gnu.org>
1633
1634         libtool: support Mac OS 10.10 and newer.
1635
1636         The current template mistakenly treats a MACOSX_DEPLOYMENT_TARGET
1637         value of "10.10" as "10.1" followed by junk. Thinking that the
1638         build is targeting 10.1 Puma instead of 10.10 Yosemite, it tells
1639         the linker to ignore undefined symbols instead of dynamically
1640         resolving them. This can cause runtime crashes* and will affect
1641         subsequent versions of OS X.
1642         * libtool.mk (_LT_REQUIRED_DARWIN_CHECKS): Improve case match so
1643         as to reject 10.10.x on the 10.1 and 10.2 branch.
1644         * THANKS: Add Lawrence Velázquez.
1645         From Lawrence Velázquez
1646
1647 2014-10-25  Gary V. Vaughan  <gary@gnu.org>
1648
1649         bootstrap: commit latest to avoid regeneration at build time.
1650
1651         * bootstrap: Regenerate.
1652
1653 2014-10-25  Gary V. Vaughan  <gary@gnu.org>
1654
1655         gnulib: sync with upstream.
1656
1657         * gnulib: Sync with upstream.
1658
1659 2014-05-13  Peter Rosin  <peda@lysator.liu.se>
1660
1661         libtool: delay expansion of $ECHO until the wrapper script runs
1662
1663         Expanding $ECHO too early leads to unquoted \n when ECHO='printf %s\n'.
1664
1665         Fixes bug#17478. Reported by Egmont Koblinger.
1666
1667         * build-aux/ltmain.in (func_emit_wrapper) [fast_install]: Quote the
1668         $ECHO, and delay the expansion.
1669
1670 2014-05-06  Peter Rosin  <peda@lysator.liu.se>
1671
1672         libtool: fix nm test for MSYS/MinGW
1673
1674         The check for the -B option of nm does not work as intended on MSYS/MinGW.
1675         MSYS converts /dev/null to the DOW/Windows "equivanent" special file NUL,
1676         but the MinGW nm treats this file as any empty file. This means that
1677         you might end up with some fallback nm instead of the desired nm. This
1678         is not normally a problem, but if one nm is built without lto support, it
1679         starts to matter.
1680
1681         Fixes sr #108558, reported by LRN.
1682
1683         * m4/libtool.m4 (LT_PATH_NM) [MSYS]: Use a non-existant file instead of
1684         /dev/null when checking if nm supports -B.
1685
1686 2014-05-05  Peter Rosin  <peda@lysator.liu.se>
1687
1688         libtool: speed up ltwrapper_script detection in execute mode
1689
1690         Execute mode is slow and might even DOS the computer in extreme
1691         cases when a parameter is a big binary file without newlines.
1692         Work around this with different truncation if a suitable dd
1693         utility is found.
1694
1695         Fixes bug#13472 and bug#16662.
1696
1697         Reported by Pavel Raiskup and Nick Bowler.
1698
1699         * m4/libtool.m4 (_LT_PATH_DD): New macro, for finding a dd utility
1700         that works for the below purpose.
1701         (_LT_CMD_TRUNCATE): New macro, for finding out how to truncate binary
1702         pipes (fallback to the old sed truncation if no suitable dd is found
1703         in _LT_PATH_DD).
1704         (_LT_SETUP): Require _LT_CMD_TRUNCATE.
1705         (LT_INIT): Require Autoconf 2.62, as needed by _LT_PATH_DD.
1706         * build_aux/ltmain.in (func_lalib_p): Factor out the actual "generated
1707         by libtool" test into...
1708         (func_generated_by_libtool_p): ...this new function...
1709         (func_ltwrapper_script_p): ...so that it can be reused here, when
1710         truncating the pipe according to _LT_CMD_TRUNCATE.
1711         * THANKS: Update.
1712
1713 2014-05-02  Peter Rosin  <peda@lysator.liu.se>
1714
1715         libtool: prevent lto from stripping the magic cookie from the cwrapper
1716
1717         Whole program optimization may remove unused symbols unless told they
1718         are really needed. Fixes sr #108559 reported by LRN.
1719
1720         * build-aux/ltmain.in (func_emit_cwrapperexe_src:MAGIC_EXE): Try to ensure
1721         that the magic cookie is preserved.
1722
1723 2014-02-12  Peter Rosin  <peda@lysator.liu.se>
1724
1725         tests: sprinkle -no-undefined when linking libraries
1726
1727         * tests/duplicate_conv.at, tests/f77demo.at, tests/fcdemo.at: Here.
1728
1729 2014-02-12  Peter Rosin  <peda@lysator.liu.se>
1730
1731         libtool: actually strip -Wl when relinking with $LD
1732
1733         Fixes the regression from commit v2.4.2.444 which is causing a
1734         testsuite failure in duplicate_conv.at (seen on Cygwin).
1735
1736         * build-aux/ltmain.in (func_mode_link): $reload_cmds typically
1737         starts with "$LD$reload_flag ..." when $LD is used to relink.
1738         Make the case expression match that when checking if $LD is in
1739         fact used to relink.
1740
1741 2014-02-10  Peter Rosin  <peda@lysator.liu.se>
1742
1743         bootstrap: fix description of func_sort_ver to match recent sort change
1744
1745         gl/build-aux/funclib.sh: Update comment to match reality.
1746         bootstrap: Regenerate.
1747
1748 2014-02-05  Gary V. Vaughan  <gary@gnu.org>
1749
1750         doc: remove redundant "in order to" phrase where possible.
1751
1752         * doc/libtool.texi: Remove many occurrences of the redundant
1753         phrase "in order to", where ever "to" is as clear or clearer.
1754         * THANKS: Add attribution.
1755         Reported by Dave Yost
1756
1757 2014-02-03  Bruce Korb  <bkorb@gnu.org>  (tiny change)
1758
1759         bootstrap: check for git tree with .git/. in case of soft links.
1760
1761         * gl/build-aux/bootstrap.in (func_require_git): Use
1762         `test -d .git/.` to defeat soft-links versus non-GNU test.
1763         * bootstrap: Regenerate.
1764         * THANKS: Remove duplicate Bruce Korb entry.
1765
1766 2014-01-27  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
1767
1768         bootstrap: use `-d .git` to check whether we are in a git tree.
1769
1770         * gl/build-aux/bootstrap.in (func_require_git): .git is not a
1771         regular file, use -d to check its existence.
1772         * bootstrap: Regenerate.
1773         * THANKS: Add Bruce Korb.
1774         Reported by Bruce Korb
1775
1776 2014-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1777
1778         libtool: opt_duplicate_compiler_generated_deps is harmful on Solaris
1779
1780         Fix for http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452.
1781         * build-aux/ltmain.in (libtool_validate_options): disable the
1782         opt_duplicate_compiler_generated_deps optimization for Solaris2 so
1783         that gcc-4.9+ compiled C++ code with -Wl,-Bdirect on 64-bit Solaris
1784         x86 can avoid unwinding failures caused by accidental mixing of the
1785         libc and libgcc_s unwinders in a single executable.
1786
1787 2014-01-15  Gary V. Vaughan  <gary@gnu.org>
1788
1789         bootstrap: check for git checkout correctly.
1790
1791         * gl/bulid-aux/bootstrap.in (func_require_git): Use .git instead
1792         of .gitignore to recognise a git checkout.
1793         * bootstrap: Regenerate.
1794
1795 2014-01-11  Todd C. Miller  <Todd.Miller@courtesan.com>  (tiny change)
1796
1797         libtoolize: don't remove install-sh.
1798
1799         If you are not using automake, libtoolize would remove install-sh.
1800         It needs the same treatment as config.guess and config.sub.
1801         * libtoolize.in (func_require_seen_libtool): Remove install-sh
1802         from $all_pkgaux_files, the list of files removed by
1803         `libtoolize --force`.
1804         * THANKS: Add Todd C. Miller.
1805         * NEWS: Update.
1806
1807 2014-01-07  Gary V. Vaughan  <gary@gnu.org>
1808
1809         options-parser: --version works with 'DO NOT EDIT' preamble again.
1810
1811         * gl/build-aux/options-parser (func_version): Don't quit on first
1812         leading '##' line, otherwise DO NOT edit warnings prevent version
1813         information from being extracted correctly.
1814         * bootstrap: Regenerate.
1815
1816 2014-01-07  Gary V. Vaughan  <gary@gnu.org>
1817
1818         bootstrap: specify particular version in buildreq with =x.y.
1819
1820         * gl/build-aux/bootstrap.in (func_check_versions): If the version
1821         number begins with '=' then it must match the installed version of
1822         the named tool exactly.
1823         * gl/doc/bootstrap.texi (buildreq): Document the '=vernum' feature.
1824         * bootstrap: Regenerate.
1825
1826 2014-01-05  Gary V. Vaughan  <gary@gnu.org>
1827
1828         bootstrap: remove conftest.sed file droppings.
1829
1830         * gl/build-aux/funclib.sh: Remove conftest.sed when no longer
1831         needed.
1832         * bootstrap: Regenerate.
1833
1834 2014-01-04  Gary V. Vaughan  <gary@gnu.org>
1835
1836         bootstrap: replace spurious hyphen in some section comments.
1837
1838         * gl/build-aux/bootstrap.in: replace spurious hypen in same
1839         section header comments with a space.
1840         * gl/build-aux/extract-trace, gl/build-aux/options-parser:
1841         Likewise.
1842         * bootstrap: Regenerate.
1843
1844 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1845
1846         inline-source: DO NOT EDIT warning only for top-level file.
1847
1848         * gl/build-aux/inline-source (func_include): When recursing, pass
1849         through the value of `magic` so that only the very first #! magic
1850         number has a DO NOT EDIT warning injected.
1851         * bootstrap: Regenerate.
1852
1853 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1854
1855         inline-source: gawk doesn't have boolean constants.
1856
1857         I've been writing a lot of Lua lately, but still a silly mistake:(
1858         * gl/build-aux/inline-source (func_include): Use `magic` variable
1859         to count #! lines found, and only output the DO NOT EDIT warning
1860         after the first one.
1861
1862 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1863
1864         edit-readme-alpha: adjust for recent README edits.
1865
1866         * build-aux/edit-readme-alpha: Adjust regexps for recent README
1867         improvements.
1868         * README.md: Fix a SPACE-TAB sanity check failure.
1869
1870 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1871
1872         bootstrap: fix test-dollar sanity check failure.
1873
1874         * gl/build-aux/bootstrap.in (func_ensure_README): quote argument.
1875         * bootstrap: Regenerate.
1876
1877 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1878
1879         libtool: rearrange header comments for correct version/help extraction.
1880
1881         * m4/libtool.m4 (_LT_COPYING): Rearrange the comments output to
1882         the generated libtool script so that --version and --help behave
1883         the same as pre-funclib.sh revisions.
1884         (_LT_CONFIG_SAVE_COMMANDS): Likewise.
1885
1886 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1887
1888         README: Tweak into markdown format and fix some bitrot.
1889
1890         * README: Moved from here...
1891         * README.md: ...to here.  Make some changes to be valid markdown
1892         format, and fix some inaccuracies in text that is out of date.
1893         * .gitignore: Add README.
1894
1895 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1896
1897         bootstrap: support automake README requirement.
1898
1899         * gl/build-aux/bootstrap.in (func_ensure_README): New function.
1900         Link missing README to existing alternative naming.
1901         (require_automake_options): New functions. Fetch AM_INIT_AUTOMAKE
1902         options from configure.ac.
1903         (func_reconfigure): If we're using automake, and it's not in
1904         foreign mode, link a README file if possible.
1905         * bootstrap: Regenerate.
1906
1907 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1908
1909         configury: use bootstrap ChangeLog management feature.
1910
1911         * gl/build-aux/bootstrap.in (func_autoreconf): Accept an optional
1912         directory argument to pass to $AUTORECONF.
1913         Update doc-comment.
1914         * bootstrap.conf (func_reconfigure): Remove. Don't completely
1915         overwrite bootstrap's func_reconfigure, shadowing auto-ChangeLog
1916         management.
1917         (func_autopoint, func_libtoolize): Overwrite these un-needed
1918         calls instead.
1919         (libtool_autoreconf_libltdl): New hook function to run second
1920         autoreconf in libltdl directory.
1921         (libtool_force_changelog): Remove.  This is all handled by
1922         bootstrap's func_reconfigure again.
1923         * bootstrap: Regenerate.
1924
1925 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1926
1927         bootstrap: force remove file droppings from previous run.
1928
1929         Now that we generate bootstrap.new with no write permission,
1930         we have to force remove it before writing now content to the file.
1931         * bootstrap.in (require_bootstrap_uptodate): Remove old
1932         bootstrap.new output.
1933         * bootstrap: Regenerate.
1934
1935 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1936
1937         inline-source: add a DO NOT EDIT notice to generated files.
1938
1939         * gl/build-aux/inline-source (func_include): Add a DO NOT EDIT
1940         notice below the #! magic number of generated files.
1941         * gl/build-aux/bootstrap.in (func_require_bootstrap_uptodate):
1942         Remove write bit from regenerated bootstrap.new if it differs
1943         from incumbent bootstrap.
1944         Change the update instructions to recommend `mv -f` to cope with
1945         no write permission on old bootstrap script.
1946
1947 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1948
1949         bootstrap: move included files below DO NOT EDIT comment.
1950
1951         * gl/build-aux/bootstrap.in: Reorder sections to load external
1952         libraries as late as possible, leaving DO NOT EDIT comment
1953         visible near the top of the generated bootstrap script.
1954
1955 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1956
1957         maint: use before-save-hook in Emacs footers.
1958
1959         Updating to Emacs 24 now gives me warnings about write-file-hooks
1960         being obsolete.
1961         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
1962         gl/build-aux/funclib.sh, gl/build-aux/inline-source,
1963         gl/build-aux/options-parser: Set before-save-hook in Emacs file
1964         footers instead of obsolete write-file-hooks.
1965
1966 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
1967
1968         libtoolize: use printf '%s\n' unconditionally.
1969
1970         It's been a year since the as_echo probes were removed in Autoconf,
1971         so we can follow suit and remove our equivalent bs_echo probing
1972         now.  Retain $ECHO in case users need to override default printf
1973         calls in museum piece environments.
1974         * gl/build-aux/funclib.sh (ECHO): Default to 'printf %s\n'.
1975         (bs_echo): Remove.
1976         Adjust all bs_echo callers to use $ECHO instead.
1977         * bootstrap: Regenerate.
1978         * NEWS: Update.
1979
1980 2014-01-02  Gary V. Vaughan  <gary@gnu.org>
1981
1982         bootstrap: push Peter's version sort fix back into funclib.sh.
1983
1984         Peter's a7462c5 fix was applied to the generated bootstrap script
1985         instead of the funclib.sh source, and had have been overwritten
1986         the next time bootstrap was regenerated.
1987         * gl/build-aux/funclib.sh (func_sort_ver): Sort numerically on the
1988         non-primary keys as well.
1989         * bootstrap: Regenerate, with the change applied.
1990
1991 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
1992
1993         maint: change history.
1994
1995         * NEWS: Remove alpha release header.
1996         * cfg.mk (old_NEWS_hash): Update.
1997
1998 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
1999
2000         libtool: only strip -Wl when linking with $LD.
2001
2002         * build-aux/ltmain.in (func_mode_link): Don't strip -Wl from the
2003         linker flags, except when linking with $LD, otherwise compiler
2004         drivers that don't recognize and pass linker flags through will
2005         choke on unrecognized options.
2006
2007 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2008
2009         bootstrap: fix gitlog-to-changelog detection.
2010
2011         * gl/build-aux/bootstrap.in (func_ifcontains): Use a for loop
2012         that relies on $IFS for element splitting instead of a one-shot
2013         case glob that is not tolerant to \n in $gnulib_modules.
2014         * THANKS: Add Reuben Thomas.
2015         Reported by Reuben Thomas
2016
2017 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2018
2019         maint: update copyright notices to include 2014.
2020
2021         * .x-update-copyright: New file. Exclude files not owned by this
2022         project from update-copyright rules.
2023         * doc/libtool.texi: Replace m-dash with n-dash in texinfo
2024         copyright notice so that update-copyright matches correctly.
2025         Undo bogus copyright updates to example output from gdb session.
2026         Bump copyright year.
2027         * Changelog.old: Revert bogus updates from previous years
2028         without .x-update-copyright.
2029         AUTHORS, HACKING, Makefile.am, NEWS, README, THANKS, TODO,
2030         bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
2031         build-aux/git-hooks/commit-msg, build-aux/ltmain.in, cfg.mk,
2032         configure.ac, gl/build-aux/bootstrap.in,
2033         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
2034         gl/build-aux/inline-source, gl/build-aux/options-parser,
2035         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
2036         libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
2037         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
2038         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
2039         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
2040         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
2041         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
2042         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
2043         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
2044         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
2045         libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
2046         libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
2047         libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
2048         m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
2049         m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
2050         tests/am-subdir.at, tests/archive-in-archive.at,
2051         tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
2052         tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
2053         tests/cwrapper.at, tests/darwin.at, tests/demo.at,
2054         tests/depdemo.at, tests/deplib-in-subdir.at,
2055         tests/deplibs-ident.at, tests/deplibs-mingw.at,
2056         tests/destdir.at, tests/dlloader-api.at,
2057         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
2058         tests/duplicate_deps.at, tests/duplicate_members.at,
2059         tests/early-libtool.at, tests/exceptions.at,
2060         tests/execute-mode.at, tests/exeext.at, tests/export-def.at,
2061         tests/export.at, tests/f77demo.at, tests/fail.at,
2062         tests/fcdemo.at, tests/flags.at, tests/help.at,
2063         tests/indirect_deps.at, tests/infer-tag.at,
2064         tests/inherited_flags.at, tests/install.at,
2065         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
2066         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
2067         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
2068         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
2069         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
2070         tests/need_lib_prefix.at, tests/no-executables.at,
2071         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
2072         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
2073         tests/resident.at, tests/runpath-in-lalib.at,
2074         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
2075         tests/standalone.at, tests/static.at, tests/stresstest.at,
2076         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
2077         tests/template.at, tests/testsuite.at, tests/versioning.at,
2078         tests/with-pic.at: Bump copyright year.
2079
2080 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2081
2082         gnulib: update to latest upstream revision.
2083
2084         * gnulib: Update.
2085
2086 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2087
2088         tests: gcj cannot reliably compile directly to .o from .java
2089
2090         Some 4.3.x and 4.4.x releases of gcj insert a spurious 'dummy'
2091         symbol into every object file when compiling directly from .java
2092         to .o:
2093         * tests/convenience.at (GCJ): make .class files from .java
2094         sources first, and then compile those to native objects. This
2095         works around http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42143
2096
2097 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2098
2099         testsuite: with SunStudio12.x f77, don't fail on system symbols
2100
2101         Modern SunStudio f77 is just a wrapper for f90, which
2102         explains why current master fails these test groups with:
2103
2104          Undefined      first referenced
2105           symbol            in file
2106          __f90_slw_ch      .libs/foof2.o
2107          __f90_sslw        .libs/foof2.o
2108          __f90_eslw        .libs/foof2.o
2109          ld: fatal: symbol referencing errors. No output written to
2110         .libs/libfoo2.so.0.0.0
2111
2112         So we allow some undefined symbols in the libraries, which are
2113         resolved by the $(FLIBS) added to the final binaries in the tests.
2114         This seems like the simpler, and less error inducing solution to
2115         me (compared to adding $(FLIBS) to every library LDFLAGS line).
2116         * tests/f77demo.at (libfoo_la_LDFLAGS, libfoo2_la_LDFLAGS)
2117         (libfoo3_la_LDFLAGS, libmix_la_LDFLAGS): Remove -no-undefined
2118         flag.
2119         * tests/fcdemo.at: Likewise.
2120
2121 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2122
2123         maint: use $SED and $GREP, not sed and grep in all scripts.
2124
2125         Choosing between hardcoding a tool's name, or using the shell
2126         variable with a path to the user's prefered implementation or
2127         configure's idea of the best available is a premature
2128         optimisation.
2129         * build-aux/ltmain.in, gl/build-aux/bootstrap.in,
2130         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
2131         libtoolize.in: Use $SED and $GREP consistently throughout,
2132         instead of hardcoding sed and grep.
2133         * bootstrap: Regenerate.
2134
2135 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2136
2137         tests: use TESTS_ENVIRONMENT for EGREP and FGREP.
2138
2139         Be consistent about passing commands to the testsuite, and use
2140         TESTS_ENVIRONMENT consistent.
2141         * Makefile.am (TESTS_ENVIRONMENT): Add EGREP and FGREP.
2142         * tests/testsuite.at: Remove EGREP and FGREP extractions from
2143         generated libtool script.
2144
2145 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2146
2147         tests: use $GREP throughout.
2148
2149         Trust the user, and use $GREP from TESTS_EVVIRONMENT uniformly.
2150         * Makefile.am (TESTS_ENVIRONMENT): Add GREP setting.
2151         * tests/am-subdir.at, tests/archive-in-archive.at, tests/bindir.at,
2152         tests/configure-iface.at, tests/cwrapper.at, tests/darwin.at,
2153         tests/demo.at, tests/destdir.at, tests/dumpbin-symbols.at,
2154         tests/early-libtool.at, tests/execute-mode.at, tests/export-def.at,
2155         tests/export.at, tests/f77demo.at, tests/fcdemo.at, tests/flags.at,
2156         tests/help.at, tests/inherited_flags.at, tests/install.at,
2157         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
2158         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlopen.at,
2159         tests/lt_dlopenext.at, tests/ltdl-api.at, tests/ltdl-libdir.at,
2160         tests/mdemo.at, tests/old-m4-iface.at, tests/pic_flag.at,
2161         tests/resident.at, tests/runpath-in-lalib.at, tests/search-path.at,
2162         tests/static.at, tests/sysroot.at, tests/template.at,
2163         tests/testsuite.at, tests/versioning.at: Replace all hardcoded grep
2164         invocations with $GREP.
2165
2166 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2167
2168         tests: use $SED throughout.
2169
2170         Trust the user, and use $SED from TESTS_ENVIRONMENT uniformly.
2171         Hardcoding 'sed' for "simple" edits is a premature optimisation.
2172         * tests/cdemo.at, tests/cmdline_wrap.at, tests/cwrapper.at,
2173         tests/darwin.at, tests/demo.at, tests/duplicate_conv.at,
2174         tests/duplicate_members.at, tests/execute-mode.at, tests/export.at,
2175         tests/inherited_flags.at, tests/install.at, tests/libtoolize.at,
2176         tests/mdemo.at, tests/need_lib_prefix.at, tests/old-m4-iface.at,
2177         tests/sysroot.at, tests/tagdemo.at, tests/testsuite.at: Replace all
2178         hardcoded sed invocations with $SED.
2179
2180 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2181
2182         tests: run cmdline_wrap last, or not at all if anything else failed.
2183
2184         * Makefile.am (TESTSUITE_AT): Move stresstest.at and cmdline_wrap.at
2185         to the end of the list.
2186         * tests/cmdline_wrap.at: If previous tests have failed, then we
2187         already know that rerunning them will fail too, so save time by
2188         skipping in that case.
2189
2190 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2191
2192         configury: remove spurious g modifier in sed expression.
2193
2194         * Makefile.am (rebuild): Remove useless g modifier from sed
2195         expression.
2196
2197 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2198
2199         configury: use $(SED) where input does not end in newline.
2200
2201         On Solaris machines the system sed does not process the last
2202         line of input unless it ends with a newline, which means it
2203         cannot be used to massage the output of git-version-gen, because
2204         it deliberately omits the terminating newline.
2205         * Makefile.am (rebuild): Use the sed command found by configure,
2206         which has a better chance of working properly than the first sed
2207         on PATH.
2208
2209 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2210
2211         tests: skip fcdemo checks when $FC cannot compile fortran90.
2212
2213         Avoid spurious fcdemo failures when Autoconf picks f77 or
2214         similar for a fortran90 compiler.
2215         * tests/testsuite.at (LT_AT_TAG): Using FC and FCFLAGS from make
2216         TESTS_ENVIRONMENT, check that we really can compile fortran90
2217         or else skip.
2218
2219 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
2220
2221         funclib.sh: improve comments.
2222
2223         * gl/build-aux/funclib.sh: Add a comment explaining the need for
2224         extra SED and GREP searches.
2225
2226 2013-12-09  Peter Rosin  <peda@lysator.liu.se>
2227
2228         maint: fix out-of-tree autoreconf w/o manual rebootstrap
2229
2230         build-aux/ltmain.in: Look for funclib.sh and options-parser in
2231         the same location ltmain.in is found.
2232
2233 2013-11-19  Peter Rosin  <peda@lysator.liu.se>
2234
2235         bootstrap: fix version sort
2236
2237         Reported by Ozkan Sezer who suffered from makeinfo 4.13 being detected
2238         as lesser than the required makeinfo 4.8.
2239
2240         * bootstrap (func_sort_ver): Sort numerically on the non-primary keys
2241         as well.
2242
2243 2013-11-08  Peter Rosin  <peda@lysator.liu.se>
2244
2245         tests: Use a basic grep that matches the basic regexp style.
2246
2247         Fixes a testsuite failure on Cygwin.
2248
2249         * tests/tagdemo.at: Use grep instead of egrep.
2250
2251 2013-10-29  Gary V. Vaughan  <gary@gnu.org>
2252
2253         bootstrap: fix a quoting error.
2254
2255         * gl/build-aux/bootstrap.in (func_require_buildreq_autoconf): Quote
2256         the extracted version number correctly so that it is displayed in
2257         verbose mode.
2258
2259 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
2260
2261         funclib.sh: simplify version comparison functions.
2262
2263         * gl/build-aux/funclib.sh (func_sort_ver): Much simplified.
2264         (func_lt_ver): New function, return true if arguments are in
2265         ascending order.
2266         * gl/build-aux/bootstrap.in: Simplify with func_lt_ver.
2267         * gl/build-aux/do-release-commit-and-tag.diff: Likewise.
2268         * bootstrap: Regenerate.
2269
2270         Co-Authored-by: Paul Eggert <eggert@cs.ucla.edu>
2271
2272 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
2273
2274         bootstrap: show found GREP and SED in verbose mode.
2275
2276         * gl/build-aux/bootstrap.in (EGREP, FGREP, GREP, SED): Remove.
2277         These are already set by funclib.sh.
2278         (func_prep): After --verbose has been processed, show the paths
2279         to GREP and SED found by funclib.sh.
2280         * bootstrap: Regenerate.
2281
2282 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
2283
2284         refactor: simplify program path searching in funclib.sh.
2285
2286         * gl/build-aux/funclib.sh (func_path_progs): New function. Factor
2287         out common code from GREP and SED searches.
2288         (func_check_prog_sed, func_check_prog_grep): New functions, for
2289         non-common code.
2290         (scriptversion): Update.
2291         * bootstrap: Regenerate.
2292
2293 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
2294
2295         bootstrap: search for a non-truncating grep binary.
2296
2297         On at least Unixware 7.1.4, the first grep binary on PATH is
2298         unable to process the extract-trace scripts.
2299         * gl/build-aux/funclib.sh (GRUP): Search PATH for a grep binary
2300         that doesn't truncate its own output if available, and set GREP
2301         accordingly.
2302         * Makefile.am (SCRIPT_ENV): Add setting for GREP.
2303         * bootstrap: Regenerate.
2304         Reported by Tim Rice.
2305
2306 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
2307
2308         bootstrap: search for a non-truncating sed binary.
2309
2310         On at least Unixware 7.1.4, the first sed binary on PATH is
2311         unable to process the extract-trace scripts.
2312         * gl/build-aux/funclib.sh (PATH_SEPARATOR): Set to : or ;
2313         according to a feature test.
2314         (func_executable_p): New function.
2315         (SED): Search PATH for a sed binary that doesn't truncate its
2316         own output if available, and set SED accordingly.
2317         (scriptversion): Update.
2318         * Makefile.am (SCRIPT_ENV): New macro, for propagating configured
2319         variables.
2320         (ltdl_ac_aux_dir, $(ltmain_sh), install-data-local): Use it.
2321         * bootstrap: Regenerate.
2322         Reported by Tim Rice.
2323
2324 2013-10-27  Gary V. Vaughan  <gary@gnu.org>
2325
2326         tests: use autotest as_unset rather than rerolling $unset locally.
2327
2328         On at least Unixware 7.1.4, the shell variable 'unset' gets set
2329         to 'no' during the testsuite run, breaking several test cases.
2330         We should have been using Autotest $as_unset anyway.
2331         * tests/testsuite.at (unset): Remove test and variable setting.
2332         (LT_AT_MAKE): Use $as_unset as provided by autotest boilerplate
2333         instead of our own $unset.
2334         * tests/demo.at (uninstalled libraries ave priority): Likewise.
2335         Reported by Tim Rice.
2336
2337 2013-10-27  Gary V. Vaughan  <gary@gnu.org>
2338
2339         maint: post-release administrivia
2340
2341         * NEWS: Add header line for next release.
2342         * .prev-version: Record previous version.
2343         * cfg.mk (old_NEWS_hash): Auto-update.
2344
2345 2013-10-26  Gary V. Vaughan  <gary@gnu.org>
2346
2347         version 2.4.2.418
2348
2349         * NEWS: Record release date.
2350
2351 2013-10-26  Gary V. Vaughan  <gary@gnu.org>
2352
2353         gnulib: update to latest upstream revision.
2354
2355         * gnulib: Update.
2356
2357 2013-10-26  Gary V. Vaughan  <gary@gnu.org>
2358
2359         gnulib: use func_sort_ver instead of GNU sort -V in do-release-commit-and-tag.
2360
2361         * gl/build-aux/do-release-commit-and-tag: Source funclib.sh and
2362         then use portable func_sort_ver rather than force installation of
2363         all GNU coreutils just for sort -V support.
2364
2365 2013-10-26  Gary V. Vaughan  <gary@gnu.org>
2366
2367         refactor: move func_sort_ver from bootstrap.in to funclib.sh.
2368
2369         * gl/build-aux/bootstrap.in (func_sort_ver): Move from here...
2370         * gl/build-aux/funclib.sh (func_sort_ver): ...to here.
2371         * bootstrap: Regenerate.
2372
2373 2013-10-26  Gary V. Vaughan  <gary@gnu.org>
2374
2375         tests: use K&R main() syntax for old-ltdl-iface.at.
2376
2377         At least Mac OS 10.8.5 clang chokes on the previous
2378         'const void *argv[]' parameter, but since we don't use it
2379         anyway, keep to the theme of old api support and use K&R
2380         syntax.
2381         * tests/old-ltdl-iface.at (old.c): Use 'main ()' instead of
2382         unportable 'int main (int argc, const void *argv[])'.
2383
2384 2013-10-25  Gary V. Vaughan  <gary@gnu.org>
2385
2386         libltdl: bump -version-info revision by 1.
2387
2388         The only changes to libltdl sources since v2.4.2 have been
2389         cosmetic and stylistic.
2390         * libltdl/ltdl.mk (LTDL_VERSION_INFO): For a release with no
2391         interface changes C:R:A becomes C:R+1:A.
2392
2393 2013-10-25  Gary V. Vaughan  <gary@gnu.org>
2394
2395         maint: Update README-release for Makefile.inc -> ltdl.mk rename.
2396
2397         * gl/top/README-release.diff: s/Makefile.inc/ltdl.mk/g
2398
2399 2013-10-25  Gary V. Vaughan  <gary@gnu.org>
2400
2401         maint: bump serials on m4 sources changed since v2.4.2.
2402
2403         * m4/argz.m4: Bump serial to 6.
2404         * m4/libtool.m4: Bump serial to 58.
2405         * m4/ltdl.m4: Bump serial to 19.
2406         * m4/ltoptions.m4: Bump serial to 8.
2407
2408 2013-10-25  Gary V. Vaughan  <gary@gnu.org>
2409
2410         maint: fix a syntax-check violation from commit 12641bd.
2411
2412         * build-aux/ltmain.in (func_mode_link): Reverse test operands to
2413         forestall misinterpretation of contests of shell variable as
2414         operand 1.
2415
2416 2013-10-10  Vadim Zeitlin  <vz-libtool@zeitlins.org>  (tiny change)
2417
2418         libtool: Don't fall back to static libraries if building them was disabled
2419
2420         If -no-undefined was not specified but the platform didn't
2421         support shared libraries with undefined symbols (e.g. Cygwin/
2422         MinGW), static libraries were built instead of shared ones,
2423         even if building them was explicitly disabled with --disable-
2424         static configure option.
2425
2426         Fix this by stopping with a fatal error if a shared library
2427         can't be built in this case instead of unexpectedly building a
2428         static library instead.
2429
2430         * libltdl/config/ltmain.m4sh (func_mode_link()): Stop with
2431         fatal error when trying to build a shared library without -no-
2432         undefined on a platform not supporting undefined symbols in
2433         shared libraries.
2434
2435 2013-10-09  Brooks Moses  <bmoses@google.com>
2436
2437         libtool: Remove unneeded quotes in assignment.
2438
2439         The quotes in this assignment cause "make syntax-check" to
2440         fail.  Thus, this patch removes them.
2441
2442 2013-10-09  Fabian Groffen  <grobian@gentoo.org>  (tiny change)
2443
2444         libtool: Fix x86_64-pc-solaris2.* GNU ld breakage
2445
2446         Since commit [1] libtool tries to set a 64-bits target for GNU
2447         ld.  However, it does so wrongly for x86_64-pc-solaris2.*
2448         targets, causing libtool to believe the linker is called
2449         ld_sol2.  There is no such thing, and it obviously breaks
2450         things further down.  Some people wrongly assume there is
2451         supposed to be an ld_sol2 on their systems, e.g. [2].
2452
2453         I think the original change is fragile, because it assumes it
2454         has all CHOSTs matched, then appends _sol2.  In the wild,
2455         people have used amd64-pc-solaris2* too, so perhaps it would
2456         be safer if the code only appended _sol2 if there is actually
2457         an explicit target set.
2458
2459         Anyhow, since the 64-bits sparc target is called sparc64-* or
2460         sparcv9-*, the sparc case is already correctly handled, so in
2461         the attached patch, I just added an x86_64-* case, although I
2462         could imagine relaxing the i?86 case to *86*-pc-solaris2* too.
2463
2464         In any case, defaulting to a linker called ld_sol2 is wrong.
2465
2466         [1] http://lists.gnu.org/archive/html/libtool-commit/2011-02/
2467         msg00000.html
2468         [2] http://osdyson.org/issues/8
2469
2470 2013-10-09  Olivier Blin  <olivier.blin@softathome.com>  (tiny change)
2471
2472         libtool: Fix detection of ld version with parentheses.
2473
2474         ld from crosstool-NG reports a version string with an extra
2475         version number in a parenthetical note:
2476         GNU ld (crosstool-NG 1.13.0) 2.21.1
2477
2478         This made libtool assume that the ld version was the
2479         crosstool-NG version (1.13.0) instead of the real ld version
2480         (2.21.1).
2481
2482         To fix the ld version string, this patch filters out any string
2483         between parentheses that is followed by a space.
2484
2485         Because of this bug, filtering of exported symbols was not
2486         taking place with crosstool-NG toolchains.
2487
2488         This issue has bee noticed when building pango, which exported
2489         harfbuzz symbols that should have remained hidden.
2490
2491 2013-10-09  Brooks Moses  <bmoses@google.com>
2492
2493         libtool: Fix comment indentation
2494
2495         This trivial patch fixes indentation on a comment to match
2496         the style used elsewhere in m4/libtool.m4.
2497
2498 2013-10-09  DJ Delorie  <dj@redhat.com>
2499
2500         libtool: Add TPF settings for LT_SYS_DLOPEN_SELF
2501
2502         * m4/libtool.m4: Since we know that all TPF builds are cross-
2503         builds, do not attempt to run linker tests during config. Use
2504         known constants instead, since we know how dlopen() is
2505         implemented.
2506
2507 2013-10-09  Vincent Lefevre  <vincent@vinc17.net>  (tiny change)
2508
2509         libtool: Fix $wl setting for tcc on GNU systems
2510
2511         (This addresses http://bugs.debian.org/663945.  See there for
2512         more-detailed discussion.)
2513
2514         tcc gained support for "-Wl,-rpath -Wl,<directory>" in its
2515         commit 7fb0482a ("Support linker options passed in several -Wl
2516         param", 2012-03-14) but libtool doesn't know to use it.  Teach
2517         it.
2518
2519         Without this change, running "make check" on MPFR when it has
2520         been built with tcc and shared libraries doesn't work because
2521         libtool generates a -rpath option, which tcc doesn't support.
2522
2523 2013-10-09  Peter Johansson  <trojkan@gmail.com>
2524
2525         libtool: use AS_HELP_STRING in LT_WITH_SYSROOT help message.
2526
2527         This patch fixes so help output is formatted similar with
2528         other macros using AS_HELP_STRING. Also it outputs '[=DIR]'
2529         as I suspect intended rather than '=DIR'.
2530
2531 2013-10-09  Joseph Prostko  <joe.prostko@gmail.com>  (tiny change)
2532
2533         libtool: Haiku change for shlibpath_overrides_runpath
2534
2535         Pretty much all changes to Haiku for Libtool have been
2536         upstreamed, however we currently have an incorrect value for
2537         shlibpath_overrides_runpath.  It should be "no" instead of
2538         "yes".
2539
2540         Previously Scott McCreary had submitted patches for us, but I
2541         told him I would work to get this committed, as he is quite
2542         busy lately.
2543
2544         Here is a commit he made to our Haiku Ports site though, that
2545         shows the exact change I am proposing done against Libtool
2546         2.4.2.
2547
2548         http://ports.haiku-files.org/browser/haikuports/sys-devel/
2549         libtool/patches/libtool-2.4.2.patch
2550
2551 2013-10-09  Brooks Moses  <bmoses@google.com>  (tiny change)
2552             Johannes Obermayr  <johannesobermayr@gmx.de>
2553
2554         libtool: Discard "-mllvm $arg" options when linking.
2555
2556         Clang accepts options of the form "-mllvm $arg", and passes the
2557         argument as an option to LLVM.  These options caused problems
2558         for Libtool when linking; in some cases, the -mllvm option is
2559         passed through but the corresponding argument is dropped.  (See
2560         for example http://llvm.org/bugs/show_bug.cgi?id=14716.)
2561
2562         This patch resolves the issue by explicitly matching -mllvm and
2563         taking an argument.  Since Clang never uses LLVM for linking,
2564         the matched "-mllvm $arg" option is irrelevant for the link
2565         step, and we can simply discard it once we've recognized it.
2566
2567 2013-10-09  Ondřej Bílka  <neleai@seznam.cz>
2568
2569         maint: Fix various comment and documentation typos.
2570
2571         Ondřej writes: "Hi, this is upstream version of patch that I
2572         sent to gcc.  I generated this patch with tool that I am
2573         writing: https://github.com/neleai/stylepp"
2574
2575         (Note: The generated patch was adjusted to retain the non-US
2576         but correct spelling of 'rigourous' before commit.  --Brooks)
2577
2578 2013-10-08  David 'Digit' Turner  <digit@google.com>
2579
2580         libtool: Add Android/Linux support.
2581
2582         This patch adds proper Android support to libtool. The main
2583         issues are the following:
2584
2585           - Versioned libraries are not supported by the platform and
2586             its build/packaging tools.
2587
2588           - The dynamic linker is not GNU ld, there is no support for
2589             DT_RUNPATH.
2590
2591           - Similarly, there is no ldconfig.
2592
2593 2013-09-17  Peter Rosin  <peda@lysator.liu.se>
2594
2595         libtool: trust -print-search-dirs from recent GCC
2596
2597         Alan Modra hints in [1] that -print-search-dirs was fixed in
2598         GCC 4.2(?), so that it nowadays automatically appends
2599         -print-multi-os-directory for the applicable directories. I.e.
2600         it should no longer be necessary for libtool to append a second
2601         ../lib64 when GCC has already done so. Also, the multi-os
2602         appending loop seems to have been added specifically for early
2603         (arguably broken) bi-arch enabled GCCs that printed -m32
2604         directories even though -m64 was the default [2]. So, my
2605         conclusion is that we want any libtool magic to affect
2606         -print-search-dirs output from contemporary GCCs as little as
2607         possible, while continuing to append the
2608         -print-multi-os-directory for the legacy case.
2609
2610         Fixes bug#15321 reported by Ozkan Sezer.
2611
2612         [1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20425
2613         [2] http://lists.gnu.org/archive/html/bug-libtool/2006-09/msg00019.html
2614
2615         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): If any of the
2616         directories printed by -print-search-dirs ends with the
2617         content of -print-multi-os-directory, then assume that
2618         GCC adds the multi-os-directory where appropriate all by
2619         itself and hence don't try to second guess when to add
2620         it manually.
2621         * THANKS: Update.
2622
2623 2013-09-16  Gary V. Vaughan  <gary@gnu.org>
2624
2625         bootstrap: clean up spurious 'gnulib-cache.m4 missing' error.
2626
2627         * gl/build-aux/bootstrap.in (func_reconfigure): Don't show an
2628         error when running without gnulib-cache.m4.
2629         * bootstrap: Regenerate.
2630
2631 2013-09-15  Gary V. Vaughan  <gary@gnu.org>
2632
2633         bootstrap: make ensure_changelog work for update mode projects.
2634
2635         * gl/build-aux/bootstrap.in (func_bootstrap): Move
2636         func_changelog_ensure invocation from here...
2637         (func_reconfigure): ...to here. If gnulib_modules is empty, then
2638         grep gnulib-cache.m4 for gitlog-to-changelog before invoking
2639         func_changelog_ensure.
2640         * bootstrap: Regenerate.
2641
2642 2013-09-15  Gary V. Vaughan  <gary@gnu.org>
2643
2644         bootstrap: fetch defaults from gnulib-cache.m4 for non-imported projects.
2645
2646         Recent changes uncovered some bugs in handling of gnulib-tool
2647         options for projects that check in gnulib-cache.m4 rather than
2648         keep a separate list of modules and options in bootstrap.conf.
2649         * gl/build-aux/bootstrap.in (func_require_doc_base)
2650         (func_require_gnulib_name, func_require_local_gl_dir): New
2651         functions to set defaults from gnulib-cache.m4 in projects that
2652         use gnulib-tool in --update mode.
2653         (func_require_gnulib_tool_base_options): Use them to fetch
2654         defaults.
2655         (func_require_gnulib_copy_cmd): New function to calculate the
2656         options required for gnlib-tool copy command.
2657         (func_gnulib_tool_copy_file): Simplify accordingly.
2658         (scriptversion): Bump.
2659
2660 2013-09-05  Gary V. Vaughan  <gary@gnu.org>
2661
2662         maint: normalise formatting of recent commit log entry.
2663
2664         * build-aux/git-log-fix: Add a summary line to ChangeLog entry of
2665         most recent commit.
2666
2667 2013-09-05  Brooks Moses  <bmoses@google.com>
2668
2669         maint: add Brooks Moses to AUTHORS file.
2670         * AUTHORS: Add myself to committers list.
2671
2672 2013-08-29  Gary V. Vaughan  <gary@gnu.org>
2673
2674         bootstrap: gnulib_tool=true means no gnulib submodule.
2675
2676         * gl/build-aux/bootstrap.in (func_require_gnulib_tool): No
2677         sneaking off and cloning gnulib when the user already specified
2678         gnulib_tool=true in their bootstrap.conf!
2679         * bootstrap: Regenerate.
2680
2681 2013-08-23  Alan Modra  <amodra@bigpond.net.au>
2682
2683         bootstrap: make first char of IFS a space.
2684
2685         Putting tab first in IFS breaks func_echo_all usage of $*,
2686         resulting in failure of func_infer_tag to match a command line
2687         using a $CC with trailing spaces. The trailing spaces were
2688         stripped out of CC_expanded but words in $CC were separated by
2689         tabs. This didn't match the makefile expansion of $CC using the
2690         standard IFS with a first char of space.
2691         * gl/build-aux/funclib.sh (IFS): Make first char a space.
2692         * bootstrap: Regenerate.
2693
2694 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
2695
2696         bootstrap: support --no-git and --no-po options.
2697
2698         * gl/build-aux/bootstrap.in (bootstrap_parse_options): Accept
2699         --no-git as an alias for --skip-git for compatibility with gnulib
2700         bootstrap, and --no-po for symmetry.
2701         Reported by Mike Miller.
2702
2703 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
2704
2705         bootstrap: support gnulib gnulib_tool_option_extras settings.
2706
2707         * gl/build-aux/bootstrap.in (func_gnulib_tool): Even though we
2708         don't need it, support gnulib_tool_option_extras for bootstrap.conf
2709         ported from gnulib bootstrap.
2710         * bootstrap: Regenerate.
2711         Reported by Mike Miller.
2712
2713 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
2714
2715         bootstrap: support sha1 binary on OpenBSD.
2716
2717         * gl/build-aux/bootstrap.in (func_update_po_files): Remove the
2718         use of --status in a way that will suppress all error messages,
2719         but since this is only used to minimize updates, it shouldn't
2720         cause an issue.
2721         Look for a sha1 binary if the other SHA1SUM settings are not
2722         found.
2723         Also exit early if there is a problem updating the po file
2724         checksums.
2725         * bootstrap: Regenerate.
2726         Ported from a gnulib patch by Padraig Brady.
2727
2728 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
2729
2730         bootstrap: support tools that don't accept '--version' in buildreq.
2731
2732         * gl/build-aux/bootstrap.in (func_check_tool): Check whether there
2733         is an executable as given or on the command PATH.
2734         (func_check_version): Use func_check_tool to avoid invoking --version
2735         when buildreq specifies '-' for the version number.
2736         * bootstrap: Regenerate.
2737         Reported by Mike Miller.
2738
2739 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
2740
2741         bootstrap: diagnose bad $buildreq formatting.
2742
2743         Particularly when porting from gnulib bootstrap to libtool
2744         bootstrap, it's easy to forget the extra URL column used for
2745         error reporting.
2746         * gl/build-aux/bootstrap.in (func_check_versions): A non-URL
2747         pattern in the 3rd column of buildreq triggers a fatal error.
2748         * bootstrap: Regenerate.
2749         Reported by Mike Miller.
2750
2751 2013-08-23  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
2752
2753         bootstrap: support OpenBSD sed.
2754
2755         * gl/build-aux/bootstrap.in (func_insert_if_absent): Work around
2756         the problem of OpenBSD sed not supporting '-' as a notation for
2757         standard input.
2758         * bootstrap: Regenerate.
2759         * THANKS: Add Mike Miller.
2760         Reported by Mike Miller.
2761
2762 2013-08-23  Steve Ellcey  <sellcey@mips.com>
2763             Gary V. Vaughan  <gary@gnu.org>
2764
2765         libtool: set correct linker ABI flags on mips64 linux.
2766
2767         m4/libtool.m4 (_LT_ENABLE_LOCK): Select the n32 or n64 ABI when
2768         linking to match the ABI produced with the user's compiler flags.
2769
2770 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
2771
2772         maint: correct many abuses of the word "which".
2773
2774         * HACKING, NEWS, TODO, bootstrap, bootstrap.conf,
2775         build-aux/ltmain.in, cfg.mk, configure.ac, doc/libtool.texi,
2776         doc/notes.texi, gl/build-aux/bootstrap.in,
2777         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
2778         gl/doc/bootstrap.texi, libltdl/libltdl/lt_system.h,
2779         libltdl/loaders/loadlibrary.c, libltdl/lt__strl.c,
2780         libltdl/lt_dlloader.c, libltdl/ltdl.c, libtoolize.in,
2781         m4/libtool.m4, m4/ltdl.m4, m4/ltsugar.m4, m4/lt~obsolete.m4,
2782         tests/exceptions.at, tests/need_lib_prefix.at, tests/static.at:
2783         Use "which" correctly, or replace with "that", "where" or "what"
2784         as appropriate.
2785
2786 2013-08-23  Brook Moses  <bmoses@google.com>
2787
2788         libtool: improve comments for _LT_ENABLE_LOCK implementation.
2789
2790         * m4/libtool.m4 (_LT_ENABLE_LOCK): enhance comments to explain
2791         why the code looks odd with 32bit flags in the 64bit section and
2792         vice versa.
2793
2794 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
2795
2796         libtool: fix refixed unmangled powerpc*le-linux support patch
2797
2798         * m4/libtool.m4: fix refixed badly unmangled hunks from earlier
2799         powerpc*le changeset.
2800         Reported by Peter Rosin.
2801
2802 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
2803
2804         libtool: refix unmangled powerpc*le-linux support patch
2805
2806         * m4/libtool.m4: refix badly unmangled hunks from earlier
2807         powerpc*le changeset.
2808         Reported by Peter Rosin.
2809
2810 2013-08-22  Gary V. Vaughan  <gary@gnu.org>
2811
2812         libltdl: don't trip subdir-objects warning from Automake >= 1.14.
2813
2814         Latest Automake releases now warn when subdir-objects is not
2815         specified in preparation for Automake 2.0.  The option has been
2816         in Automake for more than a decade, so there's minimal risk of
2817         someone using the next release of Libtool alongside an ancient
2818         release of Automake when bootstrapping libltdl client projects.
2819         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Add subdir-objects.
2820
2821 2013-08-22  Gary V. Vaughan  <gary@gnu.org>
2822
2823         libtool: refactor powerpc*le-linux case branch expressions.
2824
2825         libtool (_LT_ENABLE_LOCK): make inner case branch expressions
2826         consistent with outer case expression.
2827         Reported by Peter Rosin.
2828
2829 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
2830
2831         libtool: fix mangled powerpc*le-linux support patch
2832
2833         * m4/libtool.m4: unmangled badly pasted hunks from previous
2834         changeset.
2835
2836 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
2837
2838         libtool: initial powerpc*le-linux support
2839
2840         * m4/libtool.m4 (ld -m flags): Remove non-canonical ppc host match.
2841         Support little-endian powerpc linux host.
2842
2843 2013-06-17  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
2844
2845         libtool: fix conversion warnings in cwrapper
2846
2847         build-aux/ltmain.in (func_emit_cwrapperexe_src:main): XMALLOC wants a
2848         size_t. Also use int instead of intptr_t for the return value (which
2849         is fine since the _spawnv call is synchronous).
2850         (func_emit_cwrapper_src) [MSVC]: Remove the intptr_t helper define.
2851         (func_emit_cwrapperexe_src:find_executable): Use size_t for variables
2852         involved in strlen computations.
2853         (func_emit_cwrapperexe_src:lt_setenv): Likewise.
2854         (func_emit_cwrapperexe_src:lt_extend_str): Likewise.
2855         (func_emit_cwrapperexe_src:lt_update_exe_path): Likewise.
2856         THANKS: Update.
2857
2858 2013-04-28  Peter Rosin  <peda@lysator.liu.se>
2859
2860         libtool: break all the way out when a good nm is found
2861
2862         The current code tries to locate a compatible nm tool.  It starts with
2863         a prefixed nm tool (great!) and includes a plain nm too (that's fine).
2864         The problem is that the code searches for the prefixed nm before the
2865         plain nm (normally fine), but doesn't break once it has found a valid
2866         match, and the plain nm ends up the winner.
2867
2868         Report and analysis by Mike Frysinger.
2869
2870         * m4/libtool.m4 (LT_PATH_NM): Break all the way out on a good match.
2871
2872 2013-01-28  Peter Rosin  <peda@lysator.liu.se>
2873
2874         maint: update email address...
2875
2876         * THANKS: ...of Jan Engelhardt.
2877
2878 2013-01-28  Jan Engelhardt  <jengelh@inai.de>
2879
2880         doc: fix an orthographic error
2881
2882         * doc/libtool.texi (Install mode): Ensure, not insure.
2883
2884 2013-01-27  Gary V. Vaughan  <gary@gnu.org>
2885
2886         bootstrap: fix func_insert_if_absent bugs.
2887
2888         * gl/build-aux/bootstrap.in (func_insert_if_absent): Print verbose
2889         message when there is a new entry to add.
2890         Also, make sure to update the .gitignore file when changed.
2891         * bootstrap: Regenerate.
2892         * THANKS: Add Pádraig Brady.
2893         Reported by Pádraig Brady.
2894
2895 2013-01-27  Gary V. Vaughan  <gary@gnu.org>
2896
2897         bootstrap: factor out gnulib-tool option calculations.
2898
2899         * gl/build-aux/bootstrap.in (func_gnulib_tool): Factor base option
2900         settings out...
2901         (require_gnulib_tool_base_options): ...to here.
2902         * bootstrap: Regenerate.
2903
2904 2013-01-27  Gary V. Vaughan  <gary@gnu.org>
2905
2906         syntax-check: fix a quoted_test_operand violation.
2907
2908         * gl/build-aux/bootstrap.in (func_insert_if_absent): Make sure
2909         test operands are quoted correctly.
2910         * bootstrap: Regenerate.
2911
2912 2013-01-27  Gary V. Vaughan  <gary@gnu.org>
2913
2914         syntax-check: fix new SPACE-TAB violations.
2915
2916         * build-aux/ltmain.in (func_dll_def_p): Replace SPACE-TAB by
2917         TAB-SPACE.
2918         * m4/libtool.m4 (_LT_DLL_DEF_P): Likewise.
2919
2920 2013-01-26  Bernhard Voelker  <mail@bernhard-voelker.de>
2921             Gary V. Vaughan  <gary@gnu.org>
2922
2923         bootstrap: always auto-add .gitignore files at the top.
2924
2925         * gl/build-aux/bootstrap.in (func_gitignore_entries): New function.
2926         Strip comments and blank lines.
2927         (func_insert_sorted_if_absent): Renamed...
2928         (func_insert_if_absent): ...to this. Adjust all callers.
2929         Instead of comparing the sorted new file with the original,
2930         compare the line count, being careful to diagnose duplicate
2931         entries which would otherwise skew the count.
2932
2933 2013-01-26  Gary V. Vaughan  <gary@gnu.org>
2934
2935         maint: patch gitlog-to-changelog to reduce bogus warnings.
2936
2937         Rather than trying to find a new useful warning among the 55
2938         expected warnings from vanilla gitlog-to-changelog, patch it to
2939         elide the bogus warnings from duplicate log entries.
2940         * gl/bulid-aux/gitlog-to-changelog.diff: Omit-from-ChangeLog is
2941         a new log entry tag to skip legitimate log duplicates.
2942         * build-aux/git-log-fix: Instead of deleting all content of
2943         duplicates and generating a warning, append the new
2944         Omit-from-ChangeLog tag to elide silently.
2945         * Makefile.am *($(changelog)): Remove the 'expect 55 warnings'
2946         echo.
2947
2948 2013-01-22  Peter Rosin  <peda@lysator.liu.se>
2949
2950         libtool: factor out the dll .def file test and improve it
2951
2952         Resolves bug#13414. Problem reported by Erik van Pienbroek
2953         and Martin Doucha.
2954
2955         build-aux/ltmain.in (func_mode_link): Factor out the test if a
2956         given symbol file is a module-definition (.def) file into...
2957         (func_dll_def_p): ...this function, which also improves the check.
2958         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
2959         <cygwin, mingw, pw32, cegcc>: Similarly, factor out the test if
2960         a given symbol file is a module-definition (.def) file into...
2961         (_LT_DLL_DEF_P): ...this macro, which also improves the check.
2962         tests/export-def.at: New test.
2963         Makefile.am (TESTSUITE_AT): Add above test.
2964         NEWS: Update.
2965         THANKS: Update.
2966
2967 2013-01-21  Peter Rosin  <peda@lysator.liu.se>
2968
2969         libtool: allow tabs in *_cmds variables
2970
2971         This is in preparation for the next patch, which needs to have literal
2972         tab characters survive the evaluation of the *_cmds variables.
2973
2974         build-aux/ltmain.in (func_execute_cmds, func_mode_link): Don't collapse
2975         tabs and surrounding whitespace into a single space when executing a
2976         tilde-separated cmds construct, instead keep any tabs intact.
2977
2978 2013-01-19  Peter Rosin  <peda@lysator.liu.se>
2979
2980         libtool: avoid tabs in all *_cmds variables.
2981
2982         This is in preparation for the next change, which will preserve
2983         tabs when the *_cmds variables are evaluated. Removing tabs first
2984         ensures that the libtool output stays the same when tabs are not
2985         collapsed with surrounding whitespace.
2986
2987         m4/libtool.m4: Convert indenting tabs to spaces for all *_cmds
2988         variables.
2989
2990 2013-01-16  Peter Rosin  <peda@lysator.liu.se>
2991
2992         libtool: align archive_cmds with archive_expsym_cmds for MSVC
2993
2994         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
2995         <archive_cmds>: Specify the import library name, aligning with
2996         archive_expsym_cmds.
2997
2998 2013-01-16  Peter Rosin  <peda@lysator.liu.se>
2999
3000         libtool: feed .def files verbatim to the MSVC linker
3001
3002         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
3003         <archive_expsym_cmds>: When the symbol list isn't really a symbol list,
3004         but instead a .def file, copy it to a file with .def extension so that
3005         MSVC recognizes it as a module-definition file and feed it verbatim.
3006         NEWS: Update
3007
3008 2013-01-15  Peter Rosin  <peda@lysator.liu.se>
3009
3010         Revert "libtool: use false or : for $always_export_symbols, and simplify"
3011
3012         This reverts commit 5ed7430fcb48c862c9d76ef497b73485d580338e, which is
3013         totally bogus as the variable is also set in libtool.m4. Sorry for the
3014         noise.
3015
3016 2013-01-15  Peter Rosin  <peda@lysator.liu.se>
3017
3018         libtool: use false or : for $always_export_symbols, and simplify
3019
3020         * build-aux/ltmain.in (func_mode_link): Save a string comparison
3021         by setting $lways_export_symbols to false or : and using it directly
3022         as the first argument to if. Make sure that it is always initialized
3023         while at it.
3024
3025 2013-01-09  Peter Rosin  <peda@lysator.liu.se>
3026
3027         tests: fix nits in path handling
3028
3029         tests/bindir.at: func_save_and_prepend_path is already checking
3030         $bindirneeded internally, so remove checks from call sites. Add
3031         proper quoting while at it.
3032         (func_save_and_prepend_path): Use $PATH_SEPARATOR instead of a literal
3033         colon (in both instances).
3034
3035 2013-01-08  Peter Rosin  <peda@lysator.liu.se>
3036
3037         libtool: simplify quoting and code for symbols exporting sed programs
3038
3039         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
3040         <archive_expsym_cmds>: Make the sed programs easier to read (and
3041         recover some backslashes for later in the process).
3042
3043 2013-01-03  Peter Rosin  <peda@lysator.liu.se>
3044
3045         tests: don't feed -no-undefined to the linker during configure.
3046
3047         * tests/deplibs-mingw.at: Restore LDFLAGS for the configure run so that
3048         the linker does not see -no-undefined. Makes the test pass instead of
3049         skip on MinGW.
3050
3051 2013-01-03  Gary V. Vaughan  <gary@gnu.org>
3052
3053         maint: note warnings during ChangeLog generation are normal.
3054
3055         * Makefile.am ($(changelog)): Output a note that 55 empty commit
3056         log warning messages during ChangeLog generation are expected.
3057
3058 2013-01-03  Gary V. Vaughan  <gary@gnu.org>
3059
3060         git: ignore .serial file.
3061
3062         * .gitignore: ignore .serial file.
3063
3064 2013-01-03  Gary V. Vaughan  <gary@gnu.org>
3065
3066         maint: fix recent badly formatted ChangeLog entry.
3067
3068         * build-aux/git-log-fix: No empty lines in a single commit.
3069
3070 2013-01-03  Gary V. Vaughan  <gary@gnu.org>
3071
3072         syntax-check: fix a useless_quotes_in_assignment violation.
3073
3074         * gl/build-aux/inline-source (func_require_AWK): Remove useless
3075         quotes.
3076
3077 2013-01-03  Gary V. Vaughan  <gary@gnu.org>
3078
3079         syntax-check: fix prohibit_strcmp syntax-check violation.
3080
3081         * build-aux/ltmain.in (func_generate_dlsyms): Add a definition for
3082         STREQ, and then use it in place of !strcmp.
3083
3084 2013-01-03  Gary V. Vaughan  <gary@gnu.org>
3085
3086         docs: update copyright dates in libtool.texi.
3087
3088         It seems `make update-copyright' missed the texinfo copyright
3089         notice.
3090         * doc/libtool.texi: Update copyright dates for 2013.
3091
3092 2013-01-03  Brad Smith  <brad@comstyle.com>
3093
3094         libtool: add bitrig support.
3095
3096         * build-aux/ltmain.in (func_mode_link): Add bitrig support.
3097         * m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE, LT_CMD_MAX_LEN)
3098         (_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
3099         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Ditto.
3100         * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Ditto.
3101         * tests/deplibs-ident.at(build tree relpaths): Ditto.
3102         * NEWS: Updated.
3103
3104 2013-01-01  Peter Rosin  <peda@lysator.liu.se>
3105
3106         maint: check if git works before relying on it
3107
3108         Makefile.am (m4/ltversion.m4): Take the opportunity to regenerate
3109         $(srcdir)/.serial whenever git is actually working.
3110         (git_version_gen): Provide a fallback version for the git-version-gen
3111         script to use when .tarball-version does not exist and git is not
3112         working.
3113
3114 2013-01-01  Peter Rosin  <peda@lysator.liu.se>
3115
3116         maint: really do update to latest upstream gnulib
3117         Commit 9a7071e668d044c1c47c855d2f0bc7cadb235071 "maint: update
3118         copyright notices to include 2013." states that this was done, but
3119         it actually was not.
3120         gnulib/: Update to latest upstream.
3121
3122 2013-01-01  Gary V. Vaughan  <gary@gnu.org>
3123
3124         maint: remove unsupported Tested-by: tag.
3125
3126         * build-aux/git-log-fix: Tested-by: line should not appear in the
3127         ChangeLog.
3128
3129 2013-01-01  Peter Rosin  <peda@lysator.liu.se>
3130
3131         bootstrap: update README-release patch
3132
3133         gl/top/README-release.diff: Update to match latest gnulib changes.
3134
3135 2013-01-01  Gary V. Vaughan  <gary@gnu.org>
3136
3137         maint: update copyright notices to include 2013.
3138
3139         * gnulib/: Update to latest upstream.
3140         * AUTHORS, ChangeLog.old, HACKING, Makefile.am, NEWS, README,
3141         THANKS, TODO, bootstrap, bootstrap.conf,
3142         build-aux/edit-readme-alpha, build-aux/ltmain.in, cfg.mk,
3143         configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
3144         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
3145         gl/build-aux/inline-source, gl/build-aux/options-parser,
3146         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
3147         libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
3148         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
3149         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
3150         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
3151         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
3152         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
3153         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
3154         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
3155         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
3156         libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
3157         libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
3158         libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
3159         m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
3160         m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
3161         tests/am-subdir.at, tests/archive-in-archive.at,
3162         tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
3163         tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
3164         tests/cwrapper.at, tests/darwin.at, tests/demo.at,
3165         tests/depdemo.at, tests/deplib-in-subdir.at,
3166         tests/deplibs-ident.at, tests/deplibs-mingw.at,
3167         tests/destdir.at, tests/dlloader-api.at,
3168         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
3169         tests/duplicate_deps.at, tests/duplicate_members.at,
3170         tests/early-libtool.at, tests/exceptions.at,
3171         tests/execute-mode.at, tests/exeext.at, tests/export.at,
3172         tests/f77demo.at, tests/fail.at, tests/fcdemo.at,
3173         tests/flags.at, tests/help.at, tests/indirect_deps.at,
3174         tests/infer-tag.at, tests/inherited_flags.at, tests/install.at,
3175         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
3176         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
3177         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
3178         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
3179         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
3180         tests/need_lib_prefix.at, tests/no-executables.at,
3181         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
3182         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
3183         tests/resident.at, tests/runpath-in-lalib.at,
3184         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
3185         tests/standalone.at, tests/static.at, tests/stresstest.at,
3186         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
3187         tests/template.at, tests/testsuite.at, tests/versioning.at,
3188         tests/with-pic.at: Bump copyright year.
3189
3190 2012-12-19  Peter Rosin  <peda@lysator.liu.se>
3191
3192         libtool: Drop $LDFLAGS when invoking the toolchain
3193
3194         m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [Solaris] <archive_cmds>: Drop
3195         $LDFLAGS as it is a user variable that is usually used when invoking
3196         libtool. As such, it should not be used by libtool when it invokes the
3197         toolchain as it contains options intended for libtool, not the
3198         toolchain. Fixes export.at and other tests that add -no-undefined to
3199         LDFLAGS.
3200
3201 2012-12-19  Richard Palo  <richard.palo@baou.fr>  (tiny change)
3202
3203         libtool: Add SONAME to the so when exporting explicit symbols on Solaris
3204
3205         m4/libtool.m (_LT_LANG_CXX_CONFIG) [Solaris] <archive_expsym_cmds>: Feed
3206         -h $soname to the linker just as is done in archive_cmds.
3207         THANKS: Update.
3208
3209 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
3210
3211         libtool: add @INIT@ to the preloader, for data imports on Windows
3212
3213         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Adjust
3214         lt_cv_sys_global_symbol_to_cdecl so that it declares imported
3215         data symbols as __declspec(dllimport). Adjust
3216         lt_cv_sys_global_symbol_to_c_name_address and
3217         lt_cv_sys_global_symbol_to_c_name_address_lib_prefix so that they
3218         fill in "(void*) 0" for imported data symbols. Add new
3219         lt_cv_sys_global_symbol_to_import which finds imported data
3220         symbols if non-empty and export this variable to the libtool script
3221         in the global_symbol_to_import variable. Adjust
3222         lt_cv_sys_global_symbol_pipe so that data imports can be located.
3223         * build-aux/ltmain.in (func_generate_dlsyms): When data imports
3224         are present, as indicated by global_symbol_to_import, generate
3225         a relocation function lt_syminit that fills in the addresses
3226         of data imports at runtime and point to the new function with a
3227         new virtual @INIT@ entry in the symbol list.
3228         * libltdl/loaders/preopen.c (add_symlist): Look for the virtual
3229         @INIT@ symbol (i.e. lt_syminit) and call it.
3230         (vm_sym): Step past the @INIT@ symbol, if present.
3231         * tests/demo.at (dlmain.c): Call the @INIT@ symbol, if present.
3232         * NEWS: Update.
3233
3234 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
3235
3236         libtool: unify the global symbol transformations
3237
3238         Since it is safe for $lt_cv_sys_global_symbol_to_cdecl to match
3239         with a simple /^T .* .*$/ type expression, it is ok for the other
3240         transformations as well.  At least if you require at least one
3241         $symcode at the start of the line, so that the just generated output
3242         doesn't match the next sed expression.
3243
3244         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unify the matching expressions
3245         in the sed programs that transform the extracted symbol lines.
3246
3247 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
3248
3249         libtool: break up long lines
3250
3251         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Break up long lines when
3252         assigning the sed scripts that transform the extracted symbol lines.
3253
3254 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3255
3256         bootstrap: use a decent awk if /bin/awk is hopeless.
3257
3258         Bootstrap used to fail without an explicit AWK environment
3259         setting on machines with both nawk and awk, but where awk is a
3260         museum piece.
3261         * gl/build-aux/inline-source (AWK): Remove initial setting.
3262         (require_awk): Search PATH for a gawk, mawk or nawk before
3263         settling on awk, just like configure does.
3264         (func_include): Use it.
3265
3266 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3267
3268         bootstrap: be sure to register gnulib submodule.
3269
3270         * gl/build-aux/bootstrap.in (require_gnulib_submodule): Register
3271         the gnulib submodule before updating it, even with a shallow
3272         clone of gnulib.
3273         * bootstrap: Regenerate.
3274         Reported by Robert Boehne.
3275
3276 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3277
3278         bootstrap: fix a typo in a find invocation.
3279
3280         * gl/build-aux/bootstrap.in (require_buildreq_patch): Fix a typo.
3281         * bootstrap: Regenerate.
3282
3283 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3284
3285         bootstrap: bash versions 3.00.x do not have += functionality.
3286
3287         * gl/build-aux/funclib.sh: Fix a typo in fork minimisation for
3288         bash versions 3.00.x.
3289         * bootstrap: Regenerate.
3290
3291 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3292
3293         maint: fix missing command error in make dist.
3294
3295         * Makefile.am ($(readme)): Don't forget the 'test'!
3296
3297 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3298
3299         tests: fixup experr for addition whitespace in error prefix.
3300
3301         Fix spurious test failures due to unmatched experr output.
3302         * tests/libtoolize.at, tests/old-ltdl-iface.at: Add the addition
3303         2 spaces now used to justify error prefixes.
3304
3305 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3306
3307         bootstrap: use of ';' in sed scripts is not portable.
3308
3309         * gl/build-aux/bootstrap.in (require_buildreq_automake)
3310         (require_dotgitmodules_parameters, require_package)
3311         (func_update_po_files): Use '\n' or -e to separate sed commands,
3312         instead of ';'.
3313         * gl/build-aux/extract-trace (func_autoconf_configure)
3314         (func_extract_trace_first): Likewise.
3315         * gl/funclib.sh: Likewise.
3316         (func_tr_sh): Likewise.
3317         * gl/build-aux/options-parser (func_usage_message): Likewise.
3318         * bootstrap: Regenerate.
3319         Reported by Robert Boehne.
3320
3321 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3322
3323         bootstrap: don't $tc_standout spaces, it's ugly!
3324
3325         * gl/build-aux/funclib.sh (func_error): Move the prefix indent
3326         before $tc_standout to avoid bright red inverse spaces.
3327         * bootstrap: Regenerate.
3328
3329 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3330
3331         bootstrap: fix rectangle select induced trailing spaces.
3332
3333         * gl/build-aux/funclib.sh (require_term_colors): Delete trailing
3334         whitespace.
3335         * bootstrap: Regenerate.
3336
3337 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3338
3339         bootstrap: display prerequisite program environment vars.
3340
3341         Be more helpful when a prerequisite program from $buildreq
3342         cannot be located, by showing what variable to export if it
3343         is already installed but not in PATH.
3344         * gl/build-aux/bootstrap.in (func_check_versions): Display
3345         associated environment variables for not found prerequisite
3346         programs.
3347         * bootstrap: Regenerate.
3348
3349 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3350
3351         bootstrap: honor COLORTERM and USE_ANSI_COLORS.
3352
3353         Plenty of machines use a terminfo database that doesn't have
3354         entries for color escape sequences, even though the terminal
3355         itself most likely supports ANSI color escapes.
3356         * gl/build-aux/funclib.sh (require_term_colors): If COLORTERM
3357         or USE_ANSI_COLORS are set, then ignore what terminfo says,
3358         and use standard ANSI color escape sequences.
3359         * bootstrap: Regenerate.
3360
3361 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
3362
3363         bootstrap: make error messages prettier.
3364
3365         * gl/build-aux/funclib.sh (func_error): Indent 'error' prefix by
3366         two additional spaces to line up nicely with 'warning' and
3367         'running'.
3368         * bootstrap: Regenerate.
3369
3370 2012-10-24  Gary V. Vaughan  <gary@gnu.org>
3371
3372         bootstrap: emphasize command executions with terminal bold.
3373
3374         * bootstrap.in (func_show_eval): Use $require_term_colors to
3375         embolden the command about to be executed in output.
3376         * bootstrap: Regenerate.
3377         * bootstrap.conf (libtool_build_prerequisites): Use the standard
3378         (colorful!) bootstrap func_show_eval here too.
3379
3380 2012-10-24  Gary V. Vaughan  <gary@gnu.org>
3381
3382         bootstrap: show output from 'make bootstrap-deps'.
3383
3384         * bootstrap.conf (libtool_build_prerequisites): Add support for
3385         AM_V_GEN and AM_V_at to the temporary pre-configure Makefile.
3386         Instead of eliding non-error output from bootstrap-deps, show
3387         the results, with verbosity set according to $opt_verbose.
3388         * Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh, libtool)
3389         (README): Fix the display rules to correctly fall-back to
3390         AM_DEFAULT_VERBOSITY when V=1 is not passed to make invocation.
3391
3392 2012-10-22  Gary V. Vaughan  <gary@gnu.org>
3393
3394         maint: fixup badly formatted ChangeLog entries.
3395
3396         * build-aux/git-log-fix: Mostly missing category tags and refilling
3397         to 64 columns, but also deleting duplicate entries from merging the
3398         gary/reredo-test-operand-order branch.
3399         * g/build-aux/gitlog-to-changelog.diff: Local patch to prevent
3400         printing unqualified header lines for deleted duplicate patches.
3401         * THANKS: Put email address for Paul Seidler here...
3402         * build-aux/git-log-fix: ...and remove from ChangeLog here.
3403
3404 2012-10-22  Gary V. Vaughan  <gary@gnu.org>
3405
3406         bootstrap: regenerate to propagate Bob's func_split_equals fix.
3407
3408         * bootstrap: regenerate.
3409
3410 2012-10-22  Mikhail Zabaluev  <mikhail.zabaluev@gmail.com>  (tiny change)
3411
3412         configury: make LT_INIT options pic-only and no-pic work.
3413
3414         * m4/ltoptions.m4 (_LT_WITH_PIC): Set pic_mode at m4 time.
3415
3416 2012-10-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
3417
3418         options-parser: fix regexp quoting error.
3419         * gl/build-aux/options-parser (func_split_equals): Fixed expr
3420         regexp quoting syntax error encountered with non-XSI shells.
3421         Problem was noticed under Solaris 10.
3422
3423 2012-10-21  Gary V. Vaughan  <gary@gnu.org>
3424
3425         syntax-check: fix violations and implement sc_old_style_quoting.
3426
3427         Modern GNU ASCII quoting in output and comments is done
3428         'like this'.
3429         * cfg.mk (sc_old_style_quoting): Try to catch most instances
3430         of `old style quoting' so that it is not accidentally re-
3431         introduced to the code.
3432         * HACKING, Makefile.am, NEWS, PORTING, README, TODO, bootstrap,
3433         bootstrap.conf, build-aux/edit-readme-alpha,
3434         build-aux/git-hooks/commit-msg, build-aux/ltmain.in,
3435         doc/libtool.texi, gl/build-aux/bootstrap.in,
3436         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
3437         gl/build-aux/inline-source, gl/build-aux/options-parser,
3438         libltdl/libltdl/slist.h, libltdl/loaders/loadlibrary.c,
3439         libltdl/ltdl.c, libltdl/slist.c, libtoolize.in, m4/argz.m4,
3440         m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4, m4/ltsugar.m4,
3441         tests/cmdline_wrap.at, tests/configure-iface.at, tests/demo.at,
3442         tests/depdemo.at, tests/deplib-in-subdir.at,
3443         tests/deplibs-mingw.at, tests/destdir.at, tests/execute-mode.at,
3444         tests/f77demo.at, tests/fail.at, tests/inherited_flags.at,
3445         tests/libtool.at, tests/libtoolize.at, tests/lt_dladvise.at,
3446         tests/lt_dlexit.at, tests/mdemo.at, tests/need_lib_prefix.at,
3447         tests/old-ltdl-iface.at, tests/old-m4-iface.at, tests/static.at,
3448         tests/stresstest.at, tests/testsuite.at, tests/versioning.at:
3449         Convert to upright quotes.
3450
3451 2012-10-21  Gary V. Vaughan  <gary@gnu.org>
3452
3453         tests: remove spurious shell variable braces.
3454
3455         * tests/testsuite.at: Allow the shell braces syntax check to pass
3456         again.
3457
3458 2012-10-21  Gary V. Vaughan  <gary@gnu.org>
3459
3460         bootstrap: add missing bootstrap override module file.
3461
3462         * gl/modules/bootstrap: Forgot to add this file in a previous
3463         commit.
3464
3465 2012-10-21  Gary V. Vaughan  <gary@gnu.org>
3466
3467         bootstrap: allow bootstrap.texi to pass syntax-check.
3468
3469         * cfg.mk (sc_require_function_nl_brace): Skip texi files.
3470         * gl/doc/bootstrap.texi: Fix assorted syntax-check violations.
3471
3472 2012-10-21  Gary V. Vaughan  <gary@gnu.org>
3473
3474         bootstrap: move into local gl overrides directory.
3475
3476         In order to work as if it were already adopted by upstream
3477         gnulib, put bootstrap and supporting scripts into the local
3478         gnulib overrides directory.
3479         * bootstrap, build-aux/extract-trace, build-aux/funclib.sh,
3480         build-aux/inline-source, build-aux/options-parser: Move from
3481         here...
3482         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
3483         gl/build-aux/funclib.sh, gl/build-aux/inline-source,
3484         gl/build-aux/options-parser: ...to here.
3485         * gl/build-aux/options-parser (func_version): Show only the
3486         first copyright notice on files generated with inline-source.
3487         * gl/doc/bootstrap.texi: Developer documentation for bootstrap.
3488         * gl/modules/extract-trace, gl/modules/funclib.sh,
3489         gl/modules/inline-source, gl/modules/options-parser: Describe
3490         dependencies for gnulib-tool.
3491         * bootstrap.conf (gnulib_modules): Add extract-trace,
3492         inline-source and options-parser modules.
3493         * bootstrap: Regenerated from gnulib overrides as a mono-
3494         lithic script file using gl/build-aux/inline-source.
3495
3496 2012-10-20  Gary V. Vaughan  <gary@gnu.org>
3497
3498         tests: make sure AC_CONFIG_MACRO_DIR is still supported.
3499
3500         * tests/old-m4-iface.at (AC_CONFIG_MACRO_DIR support): New test.
3501         Make sure we continue to support AC_CONFIG_MACRO_DIR using
3502         projects.
3503
3504 2012-10-20  Gary V. Vaughan  <gary@gnu.org>
3505
3506         libtoolize: select the first directory from AC_CONFIG_MACRO_DIRS.
3507
3508         * tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIRS directories):
3509         New test to ensure multiple directory arguments mork correctly.
3510         * libtoolize.in (func_require_ac_macro_dir): Use expr to discard
3511         any additional space delimited entries in the first
3512         AC_CONFIG_MACRO_DIRS argument.
3513         * bootstrap (func_require_macro_dir): Likewise.
3514
3515 2012-10-20  Gary V. Vaughan  <gary@gnu.org>
3516
3517         libtoolize: migrate to new AC_CONFIG_MACRO_DIRS api.
3518
3519         * libtoolize.in (func_install_pkgmacro_files): Uee
3520         AC_CONFIG_MACRO_DIRS.
3521         (func_check_macros): Advise using AC_CONFIG_MACRO_DIRS.
3522         (require_ac_macro_dir): Give priority to AC_CONFIG_MACRO_DIRS.
3523         (require_macro_dir): Likewise.
3524         * bootstrap: Give priority to AC_CONFIG_MACRO_DIRS.
3525         * configure.ac: Define dummy AC_CONFIG_MACRO_DIRS for older
3526         Autotools, that is allow bootstrap with current release versions.
3527         Use AC_CONFIG_MACRO_DIRS instead of AC_CONFIG_MACRO_DIR.
3528         * tests/testsuite.at: Source build-aux/extract-trace for access
3529         to func_extract_trace.
3530         (LT_AT_ACLOCAL): Use it to get the AC_CONFIG_MACRO_DIRS argument
3531         to pass manually to aclocal for compatibility with old Automake.
3532         Add a fallback AC_CONFIG_MACRO_DIRS definition to acinclude.m4
3533         in the test directory.
3534         (LT_AT_AUTORECONF): Likewise.
3535         * tests/cdemo.at, tests/configure-iface.at, tests/darwin.at,
3536         tests/demo.at, tests/depdemo.at, tests/early-libtool.at,
3537         tests/libtoolize.at, tests/mdemo.at, tests/no-executables.at,
3538         tests/nonrecursive.at, tests/old-ltdl-iface.at,
3539         tests/recursive.at, tests/subproject.at, tests/tagdemo.at,
3540         tests/template.at: Likewise.
3541         * doc/libtool.texi: Update.
3542         * NEWS: Update.
3543
3544 2012-10-19  Peter Rosin  <peda@lysator.liu.se>
3545
3546         libtool: parse "dumpbin -headers" to get symbols exported from implibs
3547
3548         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Extract symbols
3549         imported from DLLs by import libraries in the Microsoft dumpbin
3550         wrapper.
3551         (LT_PATH_NM): Add -headers option if dumpbin is the located name
3552         lister to feed the above new code.
3553         * NEWS: Update.
3554
3555 2012-10-19  Peter Rosin  <peda@lysator.liu.se>
3556
3557         libtool: make func_win32_libid work when the name lister is MS dumpbin
3558
3559         * m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [MSVC]: Use
3560         func_win32_libid as file_magic_cmd when the name lister
3561         is MS dumpbin.
3562         (_LT_CMD_GLOBAL_SYMBOLS): Export the new veriable nm_interface
3563         to the libtool script.
3564         * build-aux/ltmain.in (func_cygming_gnu_implib_p)
3565         (func_cygming_ms_implib_p): Move up to before...
3566         (func_win32_libid): ...which now uses them to determine if
3567         the object is an import library when the nm_interface is
3568         "MS dumpbin".
3569         * NEWS: Update.
3570
3571 2012-10-19  Gary V. Vaughan  <gary@gnu.org>
3572
3573         bootstrap: always extract only the first AC_CONFIG_MACRO_DIR arg.
3574
3575         Previous versions of bootstrap concatenated all the arguments to
3576         multiple invocations of AC_CONFIG_MACRO_DIR when extracting the
3577         macro_dir directory name.  This change enforces correct and
3578         consistent behaviour.
3579         * libtoolize.in (func_require_macro_dir): Use the new
3580         func_extract_trace_first function to make sure the first argument
3581         is always used.
3582         (func_require_aux_dir, func_require_gnulib_mk)
3583         (func_require_source_base): Future proof these functions against
3584         multiple invocations or additional arguments to the macros they
3585         trace.
3586
3587 2012-10-19  Gary V. Vaughan  <gary@gnu.org>
3588
3589         bootstrap: extract *first* ACLOCAL_AMFLAGS -I argument.
3590
3591         * bootstrap (func_require_macro_dir): .* is greedy, so _G_sed_scan
3592         as it was will always return the last -I argument, which is wrong.
3593         Move to a shell loop to ensure we always get the first -I argument
3594         if any.  (code from libtoolize.in).
3595
3596 2012-10-19  Gary V. Vaughan  <gary@gnu.org>
3597
3598         bootstrap: use short gnu.org urls consistently.
3599
3600         * bootstrap.conf (buildreq): Use gnu.org/s/ style urls to match
3601         the ones added automatically by the main bootstrap script.
3602
3603 2012-10-19  Gary V. Vaughan  <gary@gnu.org>
3604
3605         libtoolize: fix a misspelled variable name.
3606
3607         * libtoolize.in (func_require_am_macro_dir): The loop uses _G_arg
3608         not _G_opt.  Now spelled correctly.
3609
3610 2012-10-19  Gary V. Vaughan  <gary@gnu.org>
3611
3612         tests: always extract only the first AC_CONFIG_MACRO_DIR arg.
3613
3614         Previous releases of libtoolize used the final invocation when
3615         there were several, and after the rewrite over extract-trace,
3616         all the invocation directories were concatenated.  This change
3617         enforces correct and consistent behaviour.
3618         * tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIR invocation):
3619         New test.
3620         * build-aux/extract-trace (func_extract_trace_first): New function
3621         for clients that source this file, which returns only the first
3622         argument to the first invocation of the named macros.
3623         * libtoolize.in (func_require_ac_macro_dir): Use it to make sure
3624         the first argument is always used.
3625         (func_require_ac_aux_dir, func_require_ac_ltdl_dir)
3626         (func_require_ac_ltdl_options): Future proof these functions against
3627         multiple invocations or additional arguments to the macros they
3628         trace.
3629         * News (Important incompatible changes): Note change in semantics.
3630         Reported by Eric Blake.
3631
3632 2012-10-19  Gary V. Vaughan  <gary@gnu.org>
3633
3634         tests: always extract only the first ACLOCAL_AMFLAGS include arg.
3635
3636         * tests/libtoolize.at (libtoolize ACLOCAL_AMFLAGS extraction):
3637         New test.
3638         * libtoolize.in (func_check_macros): Display the correct advice
3639         when ACLOCAL_AMFLAGS specifies a macrodir, but AC_CONFIG_MACRO_DIR
3640         does not.
3641
3642 2012-10-19  Gary V. Vaughan  <gary@gnu.org>
3643
3644         doc: add a missing period following @xref.
3645
3646         * doc/libtool.texi: Silence a warning by adding back a missing
3647         period.
3648
3649 2012-10-19  Peter Rosin  <peda@lysator.liu.se>
3650
3651         libtool: avoid non-underscore symbols in the "dumpbin -symbols" wrapper
3652
3653         If an object has a symbol lacking an expected leading underscore,
3654         the symbol name is not printed, but the symbol type is, leading
3655         to output such as:
3656             T _normal _normal
3657             T T _another _another
3658         when the expected output would have been something like:
3659             T _normal _normal
3660             T no_underscore no_underscore
3661             T _another _another
3662         However, symbols lacking an expected leading underscore are
3663         not "real" symbols, they are internal symbols which we don't
3664         care about, therefore drop them instead.
3665         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Output the whole
3666         symbol line in one go.
3667         * NEWS: Update.
3668
3669 2012-10-18  Peter Rosin  <peda@lysator.liu.se>
3670
3671         libtool: unbreak Windows path quoting
3672
3673         The lt_sed_naive_backslashify variable lost its lt_ prefix
3674         when m4sh was dropped. But not everywhere.
3675         * build-aux/ltmain.in (func_convert_core_file_wine_to_w32)
3676         (func_convert_core_msys_to_w32): Drop the lt_ prefix from
3677         the lt_sed_naive_backslashify variable.
3678
3679 2012-10-18  Peter Rosin  <peda@lysator.liu.se>
3680
3681         libtool: kill leftover m4 quoting
3682
3683         * build-aux/ltmain.in (func_mode_compile): Use literal ] and [.
3684
3685 2012-10-18  Gary V. Vaughan  <gary@gnu.org>
3686
3687         syntax-check: exclude false positive nested quote test.
3688
3689         * build-aux/funclib.sh (func_echo_infix_1): These quotes are not
3690         actually nested, so add an exclude marker for the syntax-check.
3691
3692 2012-10-18  Gary V. Vaughan  <gary@gnu.org>
3693
3694         libtool: don't set auxscriptsdir at bootstrap time.
3695
3696         * build-aux/ltmain.in: Declare relative paths to aux scripts from
3697         source commands, for early inlining during bootstrap.
3698         * Makefile.am (bootstrap_edit): Move auxscriptsdir
3699         substitution from here....
3700         (configure_edit): ...to here.
3701         ($(ltmain_sh)): Feed ltmain.in through inline-source as ltmain.sh
3702         is generated to remove relative paths to aux scripts.
3703         (install-data-local): Simplify. No need for special treatment for
3704         ltmain.sh during installation, since aux scripts have already
3705         been inlined.
3706         Reported by Peter Rosin.
3707
3708 2012-10-18  Gary V. Vaughan  <gary@gnu.org>
3709
3710         extract-trace: only source funclib.sh when $progname is extract-trace.
3711
3712         * build-aux/extract-trace: $usage is too generic, and can cause
3713         sourced extract-trace to re-source options-parser.  We already
3714         require that funclib.sh be sourced before sourcing options-parser,
3715         so it's safer to check that $progname is correct before sourcing
3716         options-parser again from here.
3717
3718 2012-10-18  Peter Rosin  <peda@lysator.liu.se>
3719
3720         libtool: fix spelling nit
3721
3722         * build-aux/ltmain.in (func_generate_dlsyms): Fix spelling nit.
3723         * libltdl/libltdl/lt_system.h: Likewise.
3724         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise.
3725
3726 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3727
3728         maint: remove m4sh support.
3729
3730         Now that the code base has coalesced around a single option
3731         parser, there's no need for the unused getopt.m4sh and support.
3732         * build-aux/getopt.m4sh, build-aux/general.m4sh,
3733         tests/getopt-m4sh.at: Remove.
3734         * Makefile.am (m4sh_dir, LT_M4SH, general_m4sh, getopt_m4sh)
3735         (sh_files): Remove.
3736         (TESTSUITE_AT): Remove tests/getopt-m4sh.at.
3737         (TESTS_ENVIRONMENT): Remove M4SH.
3738         * bootstrap.conf (libtool_build_prerequisites): Remove M4SH.
3739         * configure.ac (M4SH): Remove.
3740         * HACKING (Editing `.m4sh' Files): Remove and renumber following
3741         sections.
3742
3743 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3744
3745         libtool: rewritten over funclib.sh instead of general.m4sh.
3746
3747         * Makefile.am (ltmain_m4sh, ltmain_sh_edit): Remove.
3748         (ltmain_in): Path to ltmain.in.
3749         (ltmain_sh): Generate ltmain.sh from ltmain.in using
3750         $(bootstrap_edit).
3751         * build-aux/ltmain.m4sh: Remove.
3752         * build-aux/ltmain.in: Rewritten as a client of funclib.sh.
3753
3754 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3755
3756         libtoolize: inline sourced helper scripts during install.
3757
3758         * build-aux/inline-source: New file.
3759         * Makefile.am (inline_source): Path to inline-source script.
3760         (EXTRA_DIST): Distribute inline-source too.
3761         (helper_scripts): Remove.
3762         (install-data-local): Inline sourced helper scripts during
3763         installation.
3764         Don't install helper_scripts.
3765         (uninstall-hook): Don't uninstall helper_scripts.
3766
3767 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3768
3769         libtoolize: rewritten over funclib.sh instead of general.m4sh.
3770
3771         * Makefile.am (libtoolize_m4sh): Remove.
3772         (EXTRA_DIST): Delete libtoolize_m4sh.
3773         (libtoolize_in): Remove rule.
3774         (libtoolize): Apply bootstrap_edit to libtoolize.in too.
3775         * configure.ac (AC_CONFIG_SRCDIR): Refer to libtoolize.in.
3776         * libtoolize.m4sh: Remove.
3777         * libtoolize.in: Rewrite as a client of options-parser and the
3778         new funclib.sh, avoiding the m4sh expansion step.
3779         * tests/libtoolize.at, tests/old-ltdl-iface.at (experr): adjust
3780         to match funclib.sh error output.
3781
3782 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3783
3784         options-parser: correctly quote shell meta-characters in arguments.
3785
3786         When any argument contains a shell meta-character, it needs to be
3787         quoted when passed around.  We already pass parameter lists as
3788         space delimited strings of arguments, and pass the string through
3789         eval to turn it back into a list before re-assigning using `set'.
3790         To prevent the shell from interpreting any meta-characters during
3791         an `eval set dummy $argumentlist', they must be quoted again
3792         inside the quoted argument list.
3793         * build-aux/funclib.sh (func_quote_for_eval): Be careful to keep
3794         a separate tally of quoted and unquoted argument lists, to
3795         conform to the API of the single argument func_quote_for_eval
3796         implementation in build-aux/general.m4sh.
3797         * bulid-aux/options-parser (func_run_hooks): To account for the
3798         doubly quoted meta-character argument lists, we must eval the
3799         parameter reassignment `set' call separately from evaluating the
3800         dynamically named hook results variable.
3801
3802 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3803
3804         maint: factor common shell code into build-aux/funclib.sh.
3805
3806         Moving potentially reusable code into a common file that can
3807         be sourced by clients, and adjusting for impedance mismatch
3808         or necessary renames during integration.
3809         * build-aux/funclib.sh: New file.
3810         * build-aux/options-parser (Shell normalisation)
3811         (User overrideable command paths, Global variables, func_append)
3812         (require_term_colors, func_echo, func_echo_infix_1, func_warn)
3813         (func_error, func_fatal_error, func_quote_for_eval, func_verbose):
3814         Move from here...
3815         * build-aux/funclib.sh (Shell normalisation, User overrideable
3816         command paths, Global variables, func_append)
3817         (require_term_colors, func_echo, func_echo_infix_1)
3818         (func_warn_and_continue, func_error, func_fatal_error)
3819         (func_quote_for_eval, func_verbose): ...to here.
3820         * build-aux/general.m4sh (func_arith, func_basename)
3821         (func_dirname, func_dirname_and_basename, func_echo_all)
3822         (func_grep, func_len, func_mkdir_p, func_mktempdir)
3823         (func_normal_abspath, func_relative_path, func_quote_for_expand)
3824         (func_stripname, func_show_eval, func_tr_sh): Move from here...
3825         * build-aux/funclib.sh(func_arith, func_basename)
3826         (func_dirname, func_dirname_and_basename, func_echo_all)
3827         (func_grep, func_len, func_mkdir_p, func_mktempdir)
3828         (func_normal_abspath, func_relative_path, func_quote_for_expand)
3829         (func_stripname, func_show_eval, func_tr_sh): ...to here.
3830         * bootstrap (usage message): Document `-no-warn' option.
3831         (func_append_u, func_warning): Move from here...
3832         * build-aux/funclib.sh (func_append_uniq, func_warning): ...to
3833         here.
3834         * bootstrap, build-aux/extract-trace: Source build-aux/funclib.sh
3835         before build-aux/options-parser.
3836         * build-aux/options-parser (usage, long_help_message): Set
3837         default values to match what is parsed by the unmodified parser.
3838         * build-aux/extract-trace (usage, long_help_message): Only set
3839         from func_main, so that clients sourcing this file can still use
3840         the correct defaults from build-aux/options-parser.
3841         * bootstrap (bootstrap_options_prep, bootstrap_parse_options):
3842         Move warning option parsing from here...
3843         * build-aux/option-parser (func_options_prep)
3844         (func_parse_options): ...to here, where all clients can benefit.
3845         * Makefile.am (funclib_sh): New macro; path to funclib.sh.
3846         (EXTRA_DIST): Add $(funclib_sh).
3847
3848 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3849
3850         libtoolize: source extract-trace rather than fork and execute each call.
3851
3852         Rather than forking and executing a full $SHELL for each macro
3853         extraction, source the script and its dependencies into our
3854         execution space and use the provided func_extract_trace API.
3855         * libtoolize.m4sh: Source extract-trace from an appropriate
3856         directory determined presently by make.
3857         (func_extract_trace): Remove this wrapper.
3858         * Makefile.am (abs_aux_dir): Absolute path to extract-trace
3859         directory.
3860         (configure_edit): Inject abs_aux_dir into uninstalled libtoolize.
3861         (bin_SCRIPTS): Remove libtoolize.
3862         (uninstall-hook): Manually uninstall libtoolize.
3863         (install-data-local): Inject pkgauxdir into installed libtoolize
3864         during installation.
3865
3866 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3867
3868         options-parser: employ fork minimisation.
3869
3870         * build-aux/options-parser (_G_HAVE_XSI_OPS): Environment
3871         overrideable defaults for bash and zsh, which are known to
3872         support XSI extensions.
3873         (_G_HAVE_PLUSEQ_OP): Similarly for new enough versions of bash,
3874         which are known to have += support.
3875         (func_append): Only perform the shell += probe when state of
3876         support is unknown.
3877         (func_split_equals, func_split_short_opt): Similarly for XSI
3878         probe to select fastest working implementation.
3879
3880 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3881
3882         options-parser: keep non-option arguments separate!
3883
3884         * build-aux/options-parser (func_parse_options): When there is
3885         more than one non-option argument, "$*" forces all of them into
3886         a single string.  Use ${1+"$@"} to set arguments correctly.
3887
3888 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3889
3890         options-parser: prefix usage message with "Usage: ".
3891
3892         * build-aux/options-parser (func_usage_message): Prefix usage
3893         message with "Usage: ".
3894
3895 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3896
3897         bootstrap: work when using fallback shallow gnulib clone.
3898
3899         Bootstrapping without --gnulib-srcdir creates a shallow gnulib
3900         clone to run gnulib-tool out of, except that the parent package
3901         is almost certainly using a revision of gnulib before just tha
3902         most recent 2 gnulib revisions.
3903         * bootstrap (func_require_gnulib_submodule): Pull the most
3904         recent 365 revisions, which ought to be enough for a well-
3905         maintained parent package.
3906         Don't forget to run 'git submodule update' to select the correct
3907         gnulib revision.
3908
3909 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3910
3911         bootstrap: require GNU make to bootstrap.
3912
3913         Make is not installed by default in some environments, such as
3914         cygwin... which is slow enough already without having to wait
3915         for gnulib-tool, bootstrap and half of configure to complete
3916         before getting an error.
3917         * bootstrap.conf (buildreq): Add recent GNU make to bootstrap
3918         requirements.  Now missing make is diagnosed in the earliest
3919         part of bootstrap.
3920
3921 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
3922
3923         maint: simplify "Local variables:" footer with time-stamp-pattern.
3924
3925         * bootstrap, build-aux/extract-trace, build-aux/options-parser
3926         (Local variables): Use time-stamp-pattern to set number of
3927         searched lines to 10, and to replace time-stamp-start,
3928         time-stamp-end and time-stamp-format.
3929
3930 2012-10-08  Peter Rosin  <peda@lysator.liu.se>
3931
3932         tests: skip the with-pic test only if DLL_EXPORT is defined
3933         For some systems with PIC as default, the test was inadvertently
3934         skipped. Issue introduced in commit 4440d65.
3935         * tests/with-pic.at: Skip the test for systems that define
3936         DLL_EXPORT.
3937         Reported by Roumen Petrov.
3938
3939         tests: rerefix line ending problems on MinGW.
3940         The previous commit broke Linux->MinGW cross-compiling.
3941         * tests/mdemo.at: Normalize line endings after $EGREP.
3942         Reported by Roumen Petrov.
3943
3944 2012-10-06  Peter Rosin  <peda@lysator.liu.se>
3945
3946         tests: refix line ending problems on MinGW.
3947         In commit 22f5750, one of the hunks actually introduced
3948         line ending problems. Revert that hunk.
3949         * tests/mdemo.at: Use AT_DATA for expected output when the
3950         output from compiled programs is fed through $EGREP.
3951
3952         tests: use dry runs in both parts of 'check link mode operation'
3953         MSVC exits with status 2 instead of the expected 1 when a
3954         real link is attempted.
3955         * tests/libtool.at (check link mode operation): Use a dry run and
3956         expect a clean exit status instead of expecting a fail.
3957
3958 2012-10-06  Gary V. Vaughan  <gary@gnu.org>
3959
3960         tests: sanitise the libtool quote checking Autotests.
3961
3962         Carefully comment the maze of quoting and escaping needed to
3963         pass through M4, $SHELL, and grep before regexp matching.
3964         * tests/libtool.at (quote shell meta-characters in filenames):
3965         Split backslash into a separate test group, because it needs
3966         additional escaping.
3967         Use grep consistently for the entire test group.
3968         Use AT_CHECK rather than LT_AT_CHECK to avoid problems with
3969         escaping literal $ correctly with LT_ESCAPE.
3970         Use the correct number of backslashes for each sub-group.
3971         Escape double-quote literals portably.
3972         Reported by Peter Rosin.
3973
3974 2012-10-06  Gary V. Vaughan  <gary@gnu.org>
3975
3976         tests: ensure mdemo.at doesn't rely on installed libltdl.
3977
3978         * tests/mdemo.at (configuer.ac): Build an included convenience
3979         libltdl.
3980         (Makefile.am): Add subdir-objects.
3981         Remove override rules from legacy mdemo tests to reuse parent
3982         libltdlc.la.
3983         (LT_AT_CHECK_CONFIG): Add --with-included-ltdl to configure
3984         arguments so that test cases always use the subproject libltdl
3985         in preference to any installed libltdl.
3986         Reported by Peter Rosin.
3987
3988 2012-10-06  Gary V. Vaughan  <gary@gnu.org>
3989
3990         tests: allow for unstable fortran output ordering.
3991
3992         Due to differences in line-endings between C stdout and Fortran
3993         stdout, as well as unpredictable output ordering between
3994         platforms and runtimes, weaken success criteria to not require
3995         the entire output of fortran programs to match a test case.
3996         * itests/fcdemo.at, tests/f77demo.at (_LT_CHECK_EXECUTE):
3997         Improve comments, and weaken test case to grep for a known line
3998         in the f77 runtime output.
3999
4000 2012-10-05  Peter Rosin  <peda@lysator.liu.se>
4001
4002         tests: make LT_AT_HOST_DATA retain whitespace on MinGW
4003         Fixes issues with depdemo.at, f77demo.at and fcdemo.at.
4004         * tests/testsuite.at (LT_AT_HOST_DATA) [MinGW]: Keep leading
4005         and trailing spaces and tabs when converting line endings.
4006
4007 2012-10-05  Peter Rosin  <peda@lysator.liu.se>
4008
4009         tests: fix line ending problems on MinGW
4010
4011         * tests/cdemo.at: Use LT_AT_HOST_DATA for expected output from
4012         compiled programs.
4013         * tests/demo.at: Likewise.
4014         * tests/depdemo.at: Likewise.
4015         * tests/f77demo.at: Likewise.
4016         * tests/fcdemo.at: Likewise.
4017         * tests/mdemo.at: Likewise.
4018         * tests/tagdemo.at: Likewise.
4019
4020 2012-10-05  Gary V. Vaughan  <gary@gnu.org>
4021
4022         tests: remove last vestiges of the legacy test harness.
4023
4024         All legacy tests have been fully migrated to Autotest, so
4025         no need to cling to the legacy scaffolding any more.
4026         * tests/defs.m4sh: Delete file.
4027         * configure.ac (AM_INIT_AUTOMAKE): Remove unused color-tests and
4028         parallel-tests options.
4029         * Makefile.am (defs_m4sh, defs_in, defs, TESTS): Remove.
4030         Adjust all dependencies.
4031
4032 2012-10-05  Gary V. Vaughan  <gary@gnu.org>
4033
4034         tests: migrate legacy tagtrace.test to Autotest.
4035
4036         * tests/tagtrace.test: Delete file.
4037         * tests/libtool.at (test LT_SUPPORTED_TAG interface): Add
4038         Autotest equivalent.
4039         * Makefile.am (TESTS): Remove tests/tagtrace.test.
4040
4041 2012-10-05  Gary V. Vaughan  <gary@gnu.org>
4042
4043         tests: migrate legacy objectlist.test to Autotest.
4044
4045         * tests/objectlist.test: Delete file.
4046         * tests/libtool.at (check objectlist file operation): Add
4047         Autotest equivalent.
4048         * Makefile.am (TESTS): Remove tests/objectlist.test.
4049
4050 2012-10-05  Gary V. Vaughan  <gary@gnu.org>
4051
4052         tests: migrate legacy link.test and link-2.test to Autotest.
4053
4054         * tests/link.test, tests/link-2.test: Delete files.
4055         * tests/libtool.at (Check link operation): Add Autotest
4056         equivalent.
4057         * Makefile.am (TESTS): Remove tests/link.test and
4058         tests/link-2.test.
4059
4060 2012-10-05  Gary V. Vaughan  <gary@gnu.org>
4061
4062         tests: migrate legacy nomode.test to Autotest.
4063
4064         * tests/nomode.test: Delete file.
4065         * test/libtool.at (Check help output, No mode diagnostic): Add
4066         equivalent tests in Autotest.
4067         * Makefile.am (TESTS): Remove tests/nomode.test.
4068
4069 2012-10-05  Gary V. Vaughan  <gary@gnu.org>
4070
4071         tests: migrate legacy suffix.test to Autotest.
4072
4073         * tests/suffix.test: Delete file.
4074         * tests/libtool.at (Transform source suffices): Add Autotest
4075         equivalent.
4076         * Makefile.am (TESTS): Remove tests/suffix.test.
4077
4078 2012-10-05  Gary V. Vaughan  <gary@gnu.org>
4079
4080         tests: migrate legacy quote.test to Autotest.
4081
4082         * tests/quote.test: Moved from here...
4083         * tests/libtool.at: ...to here, and updated to Autotest.
4084         * Makefile.am (TESTS): Remove tests/quote.test.
4085         (TESTSUITE_AT): Add tests/libtool.at.
4086
4087 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4088
4089         maint: add missing 2012 copyright to newly pushed old files.
4090
4091         * tests/cdemo.at, tests/demo.at, tests/depdemo.at,
4092         tests/f77demo.at, tests/fcdemo.at, tests/mdemo.at,
4093         tests/tagdemo.at (Copyright): Update with missing 2012.
4094
4095 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4096
4097         syntax-check: remove test/demo directories from exemption regexps.
4098
4099         * cfg.mk (exclude_file_name_regex--sc_bindtextdomain)
4100         (exclude_file_name_regexp--sc_program_name): Remove. The excluded
4101         directories no longer exist.
4102         (exclude_file_name_regexp--sc_prohibit_strcmp): Remove subexpression
4103         for matching removed demo directories.
4104
4105 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4106
4107         configure: remove unused conditionals and support for order only rules.
4108
4109         Clean up some more unused cruft.
4110         * configure.ac (HAVE_CXX, HAVE_F77, HAVE_FC, HAVE_GCJ, HAVE_RC):
4111         Remove.  These were only used by the recently removed legacy
4112         tests.
4113         [order-only prerequisites]: Ditto.
4114
4115 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4116
4117         bootstrap: remove support for `-r' and `reconf_dirs'.
4118
4119         With all those extra demo directories out of the way, we can
4120         revert to a more canonical bootstrap process, and jettison the
4121         cruft that was only there to work around the pain of
4122         needing to autoreconf 11 directories.  Bootstrap is now an order
4123         of magnitude faster.
4124         * bootstrap.conf (require_ltdl_dir): New function. Factored out
4125         of `libtool_build_prerequisites'.
4126         (libtool_build_prerequisites): Adjust.
4127         (func_reconfigure): Use `require_ltdl_dir' to determine the name
4128         of the other directory we need to autoreconf during bootstrap.
4129         (libtool_options_prep, libtool_parse_options)
4130         (libtool_validate_options): Remove.
4131
4132 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4133
4134         tests: let pic_flag and with-pic Autotests work on non-VPATH builds.
4135
4136         * tests/pic_flag.at: Use _LT_DEMO_SETUP to generate a demo style
4137         project, rather than relying on $abs_top_srcdir/configure.
4138         * tests/with-pic.at: Likewise.
4139         * Makefile.am (TESTSUITE_AT): Move tests/pic_flag.at and
4140         tests/with-pic.at so that they run immediately following
4141         tests/demo.at.
4142
4143 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4144
4145         tests: migrate legacy tests/fcdemo tests to Autotest.
4146
4147         Along with the demise of the last demo directory, so all the
4148         cruft for re-autotooling and distributing the additional
4149         directories is no longer necessary.
4150         * tests/fcdemo.at: New autotest groups, based on...
4151         * tests/fcdemo-conf.test, tests/fcdemo-exec.test,
4152         tests/fcdemo-make.test, tests/fcdemo-shared-exec.test,
4153         tests/fcdemo-shared-make.test, tests/fcdemo-shared.test,
4154         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
4155         tests/fcdemo-static.test: ...these legacy tests, now removed.
4156         * tests/fcdemo/Makefile.am, tests/fcdemo/README,
4157         tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
4158         tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/fcdemo/foof.f90,
4159         tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
4160         tests/fcdemo/fprogram.f90: Remove.
4161         * configure.ac (CONF_SUBDIRS, DIST_MAKEFILE_LIST): Remove.
4162         * Makefile.am (DIST_SUBDIRS, FC_TESTS, clean-local-legacy)
4163         (configure-subdirs, distclean-recursive, distdir)
4164         (fake-distclean-legacy, $(DIST_MAKEFILE_LIST)): Remove.
4165         (COMMON_TESTS): Rename from this...
4166         (TESTS): ...to this.
4167
4168 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4169
4170         tests: migrate legacy tests/f77demo tests to Autotest.
4171
4172         * tests/f77demo.at: New autotest groups, based on...
4173         * tests/f77demo-conf.test, tests/f77demo-exec.test,
4174         tests/f77demo-make.test, tests/f77demo-shared-exec.test,
4175         tests/f77demo-shared-make.test, tests/f77demo-shared.test,
4176         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
4177         tests/f77demo-static.test: ...these legacy tests, now removed.
4178         * tests/f77demo/Makefile.am, tests/f77demo/README,
4179         tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
4180         tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/f77demo/foof.f,
4181         tests/f77demo/foof2.f, tests/f77demo/foof3.f,
4182         tests/f77demo/fprogram.f: Remove.
4183         * configure.ac (CONF_SUBDIRS): Remove tests/f77demo.
4184
4185 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4186
4187         tests: migrate legacy tests/mdemo2 tests to Autotest.
4188
4189         This test was just a small non-ltdl aware library to load a
4190         library from the legacy mdemo test, which in turn used ltdl to
4191         call functions from modules. No need to create a whole other
4192         test group with copies of everything from mdemo setup - just
4193         tack the additional test on the end of the mdemo group.
4194         * tests/mdemo.at (link with library that loads ltdl modules):
4195         New test, based on...
4196         * tests/mdemo2-conf.test, tests/mdemo-exec.test,
4197         tests/mdemo-make.test: ...these legacy tests, now removed.
4198         * tests/mdemo2/Makefile.am, tests/mdemo2/README,
4199         tests/mdemo2/configure.ac, tests/mdemo2/main.c: Remove.
4200         * configure.ac (CONF_SUBDIRS): Remove tests/mdemo2.
4201         * Makefile.am: Adjust.
4202
4203 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4204
4205         tests: migrate legacy tests/mdemo tests to Autotest.
4206
4207         * tests/mdemo.at: New autotest groups, based on...
4208         * tests/mdemo-conf.test, tests/mdemo-dryrun.test,
4209         tests/mdemo-exec.test, tests/mdemo-inst.test,
4210         tests/mdemo-make.test, tests/mdemo-shared-exec.test,
4211         tests/mdemo-shared-inst.test, tests/mdemo-shared-make.test,
4212         tests/mdemo-shared-unst.test, tests/mdemo-shared.test,
4213         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
4214         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
4215         tests/mdemo-static.test, tests/mdemo-unst.test: ...these legacy
4216         tests, now removed.
4217         * tests/mdemo/Makefile.am, tests/mdemo/README,
4218         tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
4219         tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
4220         tests/mdemo/sub.c: Remove.
4221         * configure.ac (CONF_SUBDIRS): Remove tests/mdemo.
4222         * Makefile.am: Adjust.
4223
4224 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4225
4226         tests: migrate legacy tests/pdemo tests to Autotest.
4227
4228         This test was a thinly veiled copy of the basic legacy
4229         demo-conf.test series, with the addition of long file names that
4230         are not unique in the first 17 characters of their name, mashed
4231         up with the cmdline_wrap.at max_cmd_len limits.  Migrating to
4232         Autotest means that this test will be automatically rerun with
4233         max_cmd_len=24 as cmdline_wrap.at recurses through the whole
4234         testsuite, so the migrated pdemo test is now simply another test
4235         case in demo.at with longer file names.
4236         * test/demo.at (linking with long file names): New test, based
4237         on...
4238         * tests/pdemo-conf.test, tests/pdemo-exec.test,
4239         tests/pdemo-inst.test, tests/pdemo-make.test: ...these legacy
4240         tests, now removed.
4241         * tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
4242         tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
4243         tests/pdemo/longer_file_name_foo.c,
4244         tests/pdemo/longer_file_name_foo2.c,
4245         tests/pdemo/longer_file_name_hell1.c,
4246         tests/pdemo/longer_file_name_hell2.c,
4247         tests/pdemo/longer_file_name_hello.c,
4248         tests/pdemo/longer_file_name_main.c: Remove.
4249         * configure.ac (CONF_SUBDIRS): Remove tests/pdemo.
4250         * Makefile.am: Adjust.
4251
4252 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4253
4254         tests: migrate legacy tests/tagdemo tests to Autotest.
4255
4256         * tests/tagdemo.at: New autotest groups, based on...
4257         tests/tagdemo-conf.test, tests/tagdemo-exec.test,
4258         tests/tagdemo-make.test, tests/tagdemo-shared-exec.test,
4259         tests/tagdemo-shared-make.test, tests/tagdemo-shared.test,
4260         tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
4261         tests/tagdemo-static.test, tests/tagdemo-undef-exec.test,
4262         tests/tagdemo-undef-make.test, tests/tagdemo-undef.test:
4263         ...these legacy tests, now removed.
4264         * tests/tagdemo/.gitignore, tests/tagdemo/Makefile.am,
4265         tests/tagdemo/README, tests/tagdemo/baz.cpp,
4266         tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
4267         tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
4268         tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
4269         tests/tagdemo/main.cpp: Remove.
4270         * configure.ac (CONF_SUBDIRS): Remove tests/tagdemo.
4271         * Makefile.am: Adjust.
4272
4273 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4274
4275         tests: migrate legacy tests/depdemo tests to Autotest.
4276
4277         * tests/depdemo.at: New autotest groups, based on...
4278         * tests/depdemo-conf.test, tests/depdemo-exec.test,
4279         tests/depdemo-inst.test, tests/depdemo-make.test,
4280         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
4281         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
4282         tests/depdemo-nofast.test, tests/depdemo-relink.test,
4283         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
4284         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
4285         tests/depdemo-shared.test, tests/depdemo-static-exec.test,
4286         tests/depdemo-static-inst.test, tests/depdemo-static-make.test,
4287         tests/depdemo-static-unst.test, tests/depdemo-static.test,
4288         tests/depdemo-unst.test: ...these legacy test cases, now
4289         removed.
4290         * tests/depdemo/Makefile.am, tests/depdemo/README,
4291         tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
4292         tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
4293         tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
4294         tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
4295         tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
4296         tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
4297         tests/depdemo/l4/l4.h, tests/depdemo/main.c,
4298         tests/depdemo/sysdep.h: Remove.
4299         * configure.ac (CONF_SUBDIRS): Remove tests/depdemo.
4300         * Makefile.am: Adjust.
4301
4302 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4303
4304         tests: migrate legacy tests/demo tests to Autotest.
4305
4306         * tests/demo.at: New autotest groups, based on...
4307         * tests/demo-conf.test, tests/demo-deplibs.test,
4308         tests/demo-exec.test, tests/demo-hardcode.test,
4309         tests/demo-inst.test, tests/demo-make.test,
4310         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
4311         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
4312         tests/demo-nofast.test, tests/demo-noinst-link.test,
4313         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
4314         tests/demo-nopic.test, tests/demo-pic-exec.test,
4315         tests/demo-pic-make.test, tests/demo-pic.test,
4316         tests/demo-relink.test, tests/demo-shared-exec.test,
4317         tests/demo-shared-inst.test, tests/demo-shared-make.test,
4318         tests/demo-shared-unst.test, tests/demo-shared.test,
4319         tests/demo-static-exec.test, tests/demo-static-inst.test,
4320         tests/demo-static-make.test, tests/demo-static-unst.test,
4321         tests/demo-static.test, tests/demo-unst.test: ...these legacy
4322         test cases, now removed.
4323         * tests/demo/Makefile.am, tests/demo/README,
4324         tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c,
4325         tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
4326         tests/demo/hello.c, tests/demo/main.c: Remove.
4327         * configure.ac (CONF_SUBDIRS): Remove tests/demo.
4328         * Makefile.am: Adjust.
4329
4330 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4331
4332         tests: migrate legacy tests/cdemo tests to Autotest.
4333
4334         * tests/cdemo.at: New Autotest groups, based on...
4335         * tests/cdemo-conf.test, tests/cdemo-exec.test,
4336         tests/cdemo-make.test, tests/cdemo-shared-exec.test,
4337         tests/cdemo-shared-make.test, tests/cdemo-shared.test,
4338         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
4339         tests/cdemo-static.test, tests/cdemo-undef-exec.test,
4340         tests/cdemo-undef-make.test, tests/cdemo-undef.test: ...these
4341         legacy test cases, now removed.
4342         tests/cdemo/Makefile.am, tests/cdemo/README,
4343         tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h,
4344         tests/cdemo/main.c: Remove.
4345         * configure.ac (CONF_SUBDIRS): Remove tests/cdemo.
4346         * Makefile.am: Adjust.
4347
4348 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4349
4350         maint: distribute a single ChangeLog file.
4351
4352         * ChangeLog.1996, ChangeLog.1997, ChangeLog.1998, ChangeLog.1999,
4353         ChangeLog.2000, ChangeLog.2001, ChangeLog.2002, ChangeLog.2003,
4354         ChangeLog.2004, ChangeLog.2005, ChangeLog.2006, ChangeLog.2007,
4355         ChangeLog.2008, ChangeLog.2009, ChangeLog.2010: Remove.  Content
4356         moved from here...
4357         * ChangeLog.old: ...to here.
4358         * Makefile.am (EXTRA_DIST): Update list of ChangeLog files.
4359         (changelog_old): New variable to hold path to ChangeLog.old file.
4360         ($(changelog)): Update to concatenate non-distributed
4361         ChangeLog.old file to distributed ChangeLog after git log entries.
4362
4363 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
4364
4365         syntax-check: fix violations and implement sc_prohibit_space_semicolon.
4366
4367         No need for a spurious space before a command ending semi-colon.
4368         * cfg.mk (sc_prohibit_space_semicolon): New test to catch
4369         accidental reintroduction of spurious spaces removed by this
4370         changeset.
4371         * bootstrap, build-aux/general.m4sh, build-aux/ltmain.m4sh,
4372         libltdl/lt__strl.c, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at:
4373         Remove spurious spaces.
4374
4375 2012-10-03  Gary V. Vaughan  <gary@gnu.org>
4376
4377         Merge branch 'gary/reredo-test-operand-order'
4378         The original manually applied changeset 962aa91 contained several
4379         errors (some corrected by subsequent patches on master, others not)
4380         and many unrelated (although in this case, correct) changes were also
4381         committed in the same changeset.
4382         The merged branch gary/reredo-test-operand-order factors the
4383         unrelated changes out into separate commits, and performs the work
4384         that should have been in 962aa91 with a script, the results of which
4385         were then painstakingly inspected for errors.
4386         This merge moves the corrections for errors made in the original
4387         manual patch from the branch onto master.  Please inspect the many
4388         separate changesets on the branch rather than the original patch
4389         when you bisect or otherwise find your way to an error caused by
4390         962aa91.
4391
4392 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4393
4394         tests: simplify some shell code.
4395
4396         * tests/fail.at: Simplify.
4397         * tests/static.at: Likewise.
4398
4399 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4400
4401         libtool: unroll complex nested compound statements
4402
4403         * build-aux/ltmain.m4sh: Use an if statement instead of ugified
4404         compound statements.
4405
4406 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4407
4408         libtool: unroll nested if into a single case statement.
4409
4410         * build-aux/ltmain.m4sh (func_mode_link): Unroll a hard to
4411         understad nested if statement into a more readable single case
4412         statement.
4413
4414 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4415
4416         libtool: simplify $skipped_export blocks
4417
4418         * build-aux/ltmain.m4sh (func_mode_link): Save an if statement
4419         with '$skipped_export && { block; }' instead of 'if $skipped_export;
4420         then block; fi'.
4421
4422 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4423
4424         libtool: simplify an if statement
4425
4426         * build-aux/ltmain.m4sh (func_mode_link): Reverse the branch
4427         order for an if statement for readability.
4428         * m4/libtool.m4: Likewise.
4429
4430 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4431
4432         libtool: save an if statement, with a compound statement.
4433
4434         * build-aux/ltmain.m4sh (func_mode_link): Simplify.
4435
4436 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4437
4438         libtool: simplify multiple string tests
4439
4440         * build-aux/ltmain.m4sh (func_mode_link): Save test invocations
4441         by using 'test x,y = "$a,$b"' instead of 'test x = "$a" && test y
4442         = "$b"'.
4443         * m4/libtool.m4: Likewise.
4444
4445 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4446
4447         libtool: fold if into a compound OR statement when more readable
4448
4449         * build-aux/ltmain.m4sh (func_mode_link): For readability, use
4450         'test string = "$var" || { stuff; }' in preference to
4451         'if test string != "$var"; then stuff; fi'.
4452
4453 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4454
4455         libtool: use false or : for $rmforce, and simplify
4456
4457         * build-aux/ltmain.m4sh (func_mode_uninstall): Save a string
4458         comparison by setting $rmforce to false or : and using it
4459         directly as the first argument to if.
4460
4461 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4462
4463         libtool: use false or : for $wrappers_required, and simplify
4464
4465         * build-aux/ltmain.m4sh (func_mode_link): Save a string
4466         comparison by setting $wrappers_required to false or : and using
4467         it directly with a ored block rather than an if statement.
4468
4469 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4470
4471         libtool: use false or : for $linkalldeplibs, and simplify
4472
4473         * build-aux/ltmain.m4sh (func_mode_link): Save a string
4474         comparison by setting $linkalldeplibs to false or : and using it
4475         directly as the first argument to if.
4476
4477 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4478
4479         libtool: use false or : for $valid_a_lib, and simplify
4480
4481         * build-aux/ltmain.m4sh (func_mode_link): Save a string
4482         comparison by setting $valid_a_lib to false or : and using it
4483         directly as the first argument to if.
4484
4485 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4486
4487         libtool: use false or : for $found, and simplify
4488
4489         * build-aux/ltmain.m4sh (func_mode_link): Save a string
4490         comparison by setting $found to false or : and using it directly
4491         as the first argument to if.
4492
4493 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4494
4495         libtool: use false or : for $alldeplibs, and simplify
4496
4497         * build-aux/ltmain.m4sh (func_mode_link): Save a string
4498         comparison by setting $alldeplibs to false or : and using it
4499         directly as the first argument to if.
4500
4501 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4502
4503         libtool: use false or : for $preload, and simplify
4504
4505         * build-aux/ltmain.m4sh (func_mode_link): Save a string
4506         comparison by setting $preload to false or : and using it directly
4507         instead of if statements.
4508
4509 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4510
4511         libtool: use false or : for $my_pic_p, and simplify
4512
4513         * build-aux/ltmain.m4sh (func_generate_dlsyms): Save a string
4514         comparison by setting $my_pic_p to false or : and using it directly
4515         instead of calling if.
4516         Adjust all callers.
4517
4518 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4519
4520         libtool: use false or : for $finalize, and simplify
4521
4522         * build-aux/ltmain.m4sh (func_mode_install): Save a string
4523         comparison by setting $finalize to false or : and using it
4524         directly as the first argument to if.
4525
4526 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4527
4528         libtool: use false or : for $isdir, and simplify
4529
4530         * build-aux/ltmain.m4sh (func_mode_install): Save a string
4531         comparison by setting $isdir to false or : and using it directly
4532         as the first argument to if.
4533
4534 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
4535
4536         syntax-check: [REDO] fix violations and implement
4537          sc_prohibit_test_const_follows_var.
4538
4539         To safely use a non-literal fist argument to 'test', you must
4540         always prepend a literal non-'-' character, but often the second
4541         operand is a constant that doesn't begin with a '-' already, so
4542         always use 'test a = "$b"' instead of the noisy 'test "X$b" = Xa'.
4543         * cf.mk (sc_prohibit_test_const_follws_var): New syntax-check
4544         rule to ensure we don't reintroduce noisy test operands.
4545         bootstrap, build-aux/extract-trace, build-aux/general.m4sh,
4546         build-aux/ltmain.m4sh, configure.ac, doc/libtool.texi, libtoolize.m4sh,
4547         m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at, tests/defs.m4sh,
4548         tests/demo-relink.test, tests/demo/configure.ac,
4549         tests/depdemo-relink.test, tests/destdir.at, tests/duplicate_conv.at,
4550         tests/fail.at, tests/getopt-m4sh.at, tests/help.at, tests/libtoolize.at,
4551         tests/link-2.test, tests/link-order2.at, tests/lt_dlopenext.at,
4552         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
4553         tests/need_lib_prefix.at, tests/nocase.at, tests/pdemo/configure.ac,
4554         tests/pic_flag.at, tests/search-path.at, tests/shlibpath.at,
4555         tests/static.at, tests/sysroot.at, tests/tagtrace.test,
4556         tests/testsuite.at, tests/with-pic.at: Swap operands to avoid useless
4557         noise.
4558
4559 2012-09-19  Peter Rosin  <peda@lysator.liu.se>
4560
4561         tests: skip with-pic test when no "real" pic flag is used.
4562
4563         * tests/with-pic.at: Windows uses "-DDLL_EXPORT -DPIC" as the pic
4564         "flag", but never applies it to static libraries. Cater for this
4565         and skip if no "real" pic flag is in use.
4566
4567 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4568
4569         syntax-check: fix texinfo formatting flagged by
4570          prohibit_undesirable_word_seq.
4571
4572         * doc/libtool.text: Fix several misuses of @xref and @pxref so that
4573         the prohibit_undesirable_word_seq syntax check passes again.
4574
4575 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4576
4577         syntax-check: remove useless_braces_in_variable_derefs.
4578
4579         * build-aux/general.m4sh: Remove spurious braces around
4580         ${ZSH_VERSION} dereference.
4581         * build-aux/ltmain.m4sh (func_mode_link): Likewise for ${wl}.
4582
4583 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4584
4585         syntax-check: skip prohibit_strncpy.
4586
4587         * cfg.mk (local-checks-to-skip): sc_prohibit_strncpy.
4588
4589 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4590
4591         syntax-check: skip prohibit_always_true_header_tests rule.
4592
4593         * cfg.mk (local-checks-to-skip): Add
4594         sc_prohibit_always_true_header_tests.
4595
4596 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4597
4598         maint: Revert "bootstrap: delete unneeded README-release patch"
4599         This reverts commit 11cd425e7d47111956381dba28f8c1b34e14653f.
4600         These instructions are hard to find for new maintainers, so it's
4601         good to keep them to hand with the release notes.
4602         And the additional distchecks are important prior to a release.
4603
4604 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4605
4606         maint: remove unused cvsu script.
4607
4608         * build-aux/cvsu: Remove. This script is not useful now that
4609         Libtool's repository is hosted in git.
4610         * Makefile.am (build_scripts): Remove cvsu reference.
4611
4612 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4613
4614         maint: run update-copyright for missing 2011 and 2012 years.
4615
4616         See maintain.texi (Copyright Notices) for rules for maintaining
4617         the years in copyright notices.
4618         * All Files (Copyright): Updated with missing 2011 and 2012.
4619
4620 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4621
4622         bootstrap: use gnulib update-copyright script.
4623
4624         See maintain.texi (Copyright Notices) for rules for maintaining
4625         the years in copyright notices.
4626         * bootstrap.conf (gnulib_modules): Add update-copyright.
4627         * cfg.mk (update-copyright-env): Set environment variables for
4628         update-copyright script.
4629
4630 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4631
4632         bootstrap: update bootstrap script to latest upstream.
4633
4634         * bootstrap, build-aux/options-parser: apply upstream fixes and
4635         enhancements.
4636
4637 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4638
4639         git: don't complain about new parallel tests driver and file droppings.
4640
4641         * build-aux/.gitignore: Ignore parallel `test-driver' script.
4642         * tests/.gitignore: Ignore `test-driver' .trs file droppings.
4643
4644 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4645
4646         gnulib: update local gnulib patches.
4647
4648         * gl/build-aux/announce-gen.diff: Remove hunks adopted upstream.
4649         * gl/build-aux/do-release-commit-and-tag.diff: Refresh this patch
4650         to match current gnulib.
4651
4652 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4653
4654         gnulib: update gnulib submodule.
4655
4656 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4657
4658         bootstrap: ensure there is a ChangeLog before running automake.
4659
4660         Automake refuses to run in GNU-mode unless there is a ChangeLog file
4661         in the top-level directory.
4662         * bootstrap.conf (libtool_force_changelog): Create a dummy ChangeLog.
4663
4664 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
4665
4666         libtoolize: improve verbose mode output.
4667
4668         * libtoolize (func_require_seen_ltdl)
4669         (func_require_seen_libtool): Output success message in verbose
4670         mode.
4671
4672 2012-08-22  Peter O'Gorman  <peter@pogma.com>
4673
4674         libtool: Add the 'n' to then.
4675
4676         * m4/libtool.m4: fix typo.
4677         Reported by Brad Smith.
4678
4679 2012-08-22  Andreas Schwab  <schwab@linux-m68k.org>
4680
4681         libtool: Pass through -g* so that debugging information is not dropped
4682
4683         * ltmain.m4sh (func_mode_link): Pass through -g*.
4684
4685 2012-08-22  David Edelsohn  <dje.gcc@gmail.com>
4686
4687         libtool: AIX PIC shared library support
4688
4689         * m4/libtool.m4 (_LT_COMPILER_PIC): Add -fPIC to GCC and GXX for AIX.
4690
4691 2012-08-22  Brad Smith  <brad@comstyle.com>
4692
4693         libtool: Update/simplify OpenBSD support
4694
4695         * m4/libtool.m4: Forget about 11 year old releases.
4696
4697 2012-08-19  Peter Rosin  <peda@lysator.liu.se>
4698
4699         libtool: quote progpath properly
4700         Attempt to handle spaces in paths better.
4701         * build-aux/ltmain.m4sh (func_mode_install, func_mode_link): Quote
4702         $progpath.
4703         * THANKS: Update.
4704
4705 2012-04-19  Mike Frysinger  <vapier@gentoo.org>
4706
4707         libtool: Handle getconf returning "undefined".
4708
4709         * m4/libtool.m4: Check for "undefined" from `getconf`.
4710
4711 2012-03-17  Peter Rosin  <peda@lysator.liu.se>
4712
4713         bootstrap: delete unneeded README-release patch
4714
4715         * gl/top/README-release.diff: Delete.
4716
4717 2012-03-16  Peter O'Gorman  <peter@pogma.com>
4718
4719         libtool: Fix typo that caused sys_lib_search_path_spec to be wrong.
4720
4721         * m4/libtool.m4: s/lt_fooi/lt_foo/.
4722         Reported by Paul Seidler.
4723
4724 2012-02-21  Samuel Thibault  <samuel.thibault@gnu.org>
4725
4726         libtool: Improve GNU/Hurd support.
4727
4728         * m4/libtool.m4: Add gnu* match where it was missing.
4729
4730 2012-02-19  Titus von Boxberg  <titus@v9g.de>
4731
4732         libtool: Accept clang's -stdlib linker flag.
4733
4734         build-aux/ltmain.m4sh: Don't drop the -stdlib= flag.
4735
4736 2012-02-19  Juergen Reuter  <reuter@t00pcx17094.desy.de>
4737
4738         libtool: Enable nagfor fortran compiler support
4739
4740         * build-aux/ltmain.m4sh: nagfor compatible version string.
4741         * m4/libtool.m4: nagfor support.
4742
4743 2012-02-19  Juergen Reuter  <reuter@theoc01.desy.de>
4744
4745         libtool: Fixing -shared error message for nagfor compiler.
4746
4747         * m4/libtool.m4: Fix -shared.
4748
4749 2012-02-19  Pavel (Pasha) Shamis  <shamisp@ornl.gov>
4750
4751         ltdl: Improve debug error reporting in ltdl.
4752
4753         * libltdl/ltdl.c: Print the error message if loading fails.
4754
4755 2012-02-19  Peter O'Gorman  <peter@pogma.com>
4756
4757         maint: Deleted unneeded gitlog-to-changelog patch
4758
4759         * gl/build-aux/gitlog-to-changelog.diff: Delete.
4760
4761 2012-02-02  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
4762
4763         fixup: restore EXPORTS test
4764
4765         Commit v2.4.2-120-g962aa91
4766         syntax-check: fix violations and implement sc_prohibit_test_const_follows_var
4767         inadvertedly reversed the meaning of the comparison.
4768
4769         * build-aux/ltmain.m4sh (func_mode_link) [cygwin|mingw|cegcc]: Restore
4770         the EXPORTS test.  We need to look at the symbols when it's _not_
4771         already a .def file (in which case we trust the user input blindly).
4772
4773 2012-01-30  Peter Rosin  <peda@lysator.liu.se>
4774
4775         cwrapper: avoid surplus strlen calculations.
4776
4777         * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src:lt_update_exe_path):
4778         Avoid surplus strlen calculations.
4779
4780 2011-12-24  Gary V. Vaughan  <gary@gnu.org>
4781
4782         bootstrap: fix Autoconf version typo.
4783
4784         * build-aux/options-parser: s/2\.62/2.68/
4785
4786 2011-12-24  Gary V. Vaughan  <gary@gnu.org>
4787
4788         gnulib: update gnulib submodule.
4789
4790         Among others, this fixes the reference to a local commit.
4791         * gnulib: Updated to todays master HEAD revision.
4792         * gl/top/README-release.diff: Update to account for changes to
4793         gnulib/top/README-release since the last gnulib update.
4794
4795 2011-12-18  Gary V. Vaughan  <gary@gnu.org>
4796
4797         libtool: make fork minimisation compatible with dash and zsh.
4798
4799         * build-aub/general.m4sh (lt_HAVE_PLUSEQ_OP): Instead of using
4800         $((..)) arithmetic, which causes an error on dash, use a case
4801         based bash version check.
4802         (lt_HAVE_ARITH_OP, lt_HAVE_XSI_OPS): Also short circuit the
4803         feature probing forks and set these automatically when zsh is
4804         detected.
4805         Reported by Stefano Lattarini.
4806
4807 2011-12-18  Gary V. Vaughan  <gary@gnu.org>
4808
4809         bootstrap: adopt autoconf echo normalization code.
4810
4811         Dash shipped with Ubutu-11.10 as /bin/sh, among others, still
4812         has a crippled echo builtin that mis-handles backslashes.
4813         * build-aux/options-parser (bs_echo): Adopt the autoconf echo
4814         normalization code to find a suitable replacement for buggy echo
4815         commands.
4816         Adjust all uses of echo to $bs_echo.
4817         * build-aux/extract-trace (func_extract_trace, func_main):
4818         Likewise.
4819         * bootstrap: To retain some execution speed on platforms with
4820         buggy builtin echo, replace most occurrences of `echo' with
4821         `$bs_echo' - except where its arguments will obviously never
4822         contain backslashes or be overly long.
4823         Reported by Reuben Thomas.
4824
4825 2011-12-18  Gary V. Vaughan  <gary@gnu.org>
4826
4827         libtool: minimise forks per invocation under bash.
4828
4829         * build-aux/general.m4sh (lt_HAVE_PLUSEQ_OP, lt_HAVE_ARITH_OP)
4830         (lt_HAVE_XSI_OPS): Set these without forking a test script when
4831         running under bash, to avoid a few unnecessary forks.
4832
4833 2011-12-13  H.J. Lu  <hongjiu.lu@intel.com>
4834
4835         libtool: Support x32.
4836
4837         * m4/libtool.m4 (_LT_ENABLE_LOCK): Support x32.
4838
4839 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4840
4841         maint: disable prohibit_always-defined_macros syntax check.
4842
4843         Aside from Apple grep silently failing to run this test and
4844         report violations, libtool still uses non-gnulib versions of
4845         dirent.h and argz.h which use the same macros, but are not
4846         always-defined.
4847         * cfg.mk (local-checks-to-fix): Move
4848         sc_prohibit_always-defined_macros from here...
4849         (local-checks-to-skip): ...to here.
4850         Reported by Peter O'Gorman.
4851
4852 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4853
4854         tests: s/snippit/snippet/.
4855
4856         * tests/demo/foo.h, tests/pdemo/foo.h: Spell `snippet' correctly.
4857         Reported by Stefano Lattarini.
4858
4859 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4860
4861         tests: make sure file restore traps are called correctly on AIX.
4862
4863         * tests/demo-noinst-link.test (func_save_files): set the restore
4864         trap outside a function, otherwise AIX 5.3 /bin/sh will run the
4865         trap at the end of the function, instead of when the script
4866         exits.
4867         * tests/demo-relink.test (func_save_files): Ditto.
4868         * tests/depdemo-relink.test (func_save_files): Ditto.
4869         Reported by Stefano Lattarini.
4870
4871 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4872
4873         maint: eliminate some more spurious leading Xs.
4874
4875         * m4/libtool.m4: Reverse argument order to eliminate spurious
4876         leading X's.
4877
4878 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4879
4880         bootstrap: put back missing spaces before parens.
4881
4882         * bootstrap (func_require_buildreq_autobuild)
4883         (func_require_buildreq_automake): Vi's delete word command is
4884         too greedy and also eats trailing whitespace before following
4885         non-word-chars. Put back the spaces it ate so that
4886         syntax-checks pass once again.
4887
4888 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4889
4890         libtoolize: refactor copying filter creation.
4891
4892         Prevent the various require_filter functions from becoming too
4893         long by factoring common code into new functions.
4894         * libtoolize (func_make_relative_dir_filter)
4895         (func_make_relative_ltdl_filter): New functions. Generalize and
4896         consolidate the various similar snippets for concatenating
4897         together the sed scripts for func_copy filtering.
4898         (require_filter_Makefile_am, require_filter_aclocal_m4)
4899         (require_filter_configure_ac): Simplify.
4900         (require_ltdl_relative_aux_dir): Remove.
4901         (require_ltdl_relative_macro_dir): Ditto.
4902
4903 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4904
4905         maint: pick XSI funcs at runtime, not configure time.
4906
4907         Determine, on a function by function basis, what XSI features
4908         are available in the shell that is actually running the script,
4909         rather than the one that was picked at configure time by the
4910         re-execution engine.
4911         * m4/libtool.m4 (_LT_PROG_FUNCTION_REPLACE)
4912         (_LT_PROG_REPLACE_SHELLFNS): Remove.
4913         (_LT_CHECK_SHELL_FEATURES): Remove tests for XSI and += support.
4914         * build-aux/general.m4sh (func_append, func_append_quoted)
4915         (func_arith, func_len, func_basename, func_dirname)
4916         (func_dirname_and_basename, func_stripname): List both enhanced
4917         and fallback implementations, and choose one based on whether
4918         the enhanced features required by the fastest version are
4919         available.
4920         * build-aux/getopt.m4sh (func_split_short_opt)
4921         (func_split_long_opt): Ditto.
4922         * build-aux/ltmain.m4sh (func_lo2o, func_xform): Ditto.
4923         * tests/getopt-m4sh.at: Add tests for enhanced and fallback
4924         implementations of func_arith, func_len, func_stripname and
4925         func_dirname_and_basename.
4926         * NEWS: Updated.
4927
4928 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4929
4930         maint: share useful functions from general.m4sh.
4931
4932         * build-aux/ltmain.m4sh (func_append, func_append_quoted)
4933         (func_arith, func_len): Removed from here...
4934         * build-aux/general.m4sh (func_append, func_append_quoted)
4935         (func_arith, func_len): ...and added to here.
4936         (func_dirname, func_dirname_and_basename, func_normal_abspath)
4937         (func_relative_path): Use func_append.
4938         * tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): Removed.
4939         Fallback functions are now in any m4sh generated file
4940         automatically.
4941
4942 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4943
4944         libtoolize: reorder function definitions to keep func_filter_* together.
4945
4946         * libtoolize: Restore asciibetical order, so that all the
4947         filter function definitions are together.
4948
4949 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4950
4951         libtoolize: use _filter as a prefix for better ordering.
4952
4953         * libtoolize.m4sh (require_Makefile_am_filter)
4954         (require_ltdl_mk_filter, require_aclocal_m4_filter)
4955         (require_configure_ac_filter): Rename these functions from this...
4956         (require_filter_Makefile_am, require_filter_ltdl_mk)
4957         (require_filter_aclocal_m4, require_filter_configure_ac): ...to
4958         this, respectively.  Adjust all callers.
4959         (Makefile_am_filter, ltdl_mk_filter, aclocal_m4_filter)
4960         (configure_ac_filter): Rename these global variables from this...
4961         (filter_Makefile_am, filter_ltdl_mk, filter_aclocal_m4)
4962         (filter_configure_ac): ...to this, respectively.
4963
4964 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4965
4966         libtoolize: rename ltdl.mk filter function.
4967
4968         * libtoolize.m4sh (require_Makefile_inc_filter): Rename from
4969         this...
4970         (require_ltdl_mk_filter): ...to this. Adjust all callers.
4971
4972 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4973
4974         bootstrap: escape quotes properly in generated functions.
4975
4976         * bootstrap: Although not a real bug, for consistency, be sure
4977         to correctly escape single quotes inside a single quoted
4978         function generator.
4979
4980 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4981
4982         bootstrap: reorder function definitions to keep func_buildreq_* together.
4983
4984         * bootstrap: Restore asciibetical order, so that all the
4985         buildreq function definitions are together.
4986
4987 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
4988
4989         bootstrap: use _buildreq as a prefix for better ordering.
4990
4991         * bootstrap (require_autobuild_buildreq)
4992         (require_autoconf_buildreq, require_automake_buildreq)
4993         (require_autopoint_buildreq, require_libtoolize_buildreq)
4994         (require_patch_buildreq): Rename from these...
4995         (require_buildreq_autobuild, require_buildreq_autoconf)
4996         (require_buildreq_automake, require_buildreq_autopoint)
4997         (require_buildreq_libtoolize, require_buildreq_patch): ...to
4998         these, respectively.  Adjust all callers.
4999
5000 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
5001
5002         bootstrap: ensure consistent function header comments.
5003
5004         * bootstrap (require_bootstrap_uptodate)
5005         (require_buildtools_uptodate): Use `require_...' in header
5006         comment for these functions to be consistent with the rest,
5007         rather than `func_require_...'.
5008
5009 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
5010
5011         bootstrap: make sure patch is available to bootstrap if necessary.
5012
5013         Make sure we're not lacking any functionality provided by the
5014         incumbent gnulib bootstrap script, and where it's easy to do so
5015         (like it is here), provide better functionality!
5016         * bootstrap (require_patch): Make sure that PATCH expands to the
5017         best `patch' command available on the system, honouring
5018         overrides in the users environment.
5019         (require_patch_buildreq): Automatically add a requirement for a
5020         patch command to buildreq when there are diff files in
5021         $local_gl_dir.
5022         (func_require_buildtools_uptodate): Call require_patch_buildreq
5023         before testing build tool versions.
5024         (func_gnulib_tool_copy_file): Make sure PATCH is set before using
5025         gnulib-tool to copy files.
5026
5027 2011-11-26  Gary V. Vaughan  <gary@gnu.org>
5028
5029         m4: fix logic error leading to -fno-rtti being added wrongly.
5030
5031         * m4/libtool.m4 (_LT_COMPILER_OPTION): Negate comparison so that
5032         compiler flags are added correctly.
5033
5034 2011-11-26  Gary V. Vaughan  <gary@gnu.org>
5035
5036         maint: Fix generated ChangeLog typos.
5037
5038         * build-aux/git-log-fix: Spell Stefano Lattarini's name
5039         correctly.
5040         Don't use my home email address for GNU commits.
5041
5042 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
5043
5044         syntax-check: fix violations and implement sc_useless_braces_in_variable_derefs.
5045
5046         Until now, libtool sources have used braced variable names
5047         seemingly at random! Almost always the braces are just noise, so
5048         remove all the unnecessary ones.
5049         * cfg.mk (sc_useless_braces_in_variable_derefs): New syntax
5050         check rule to ensure we only reintroduce braced variable
5051         dereferences if they are followed by a valid variable name
5052         character.
5053         build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
5054         build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
5055         libltdl/configure.ac, m4/libtool.m4, m4/ltdl.m4,
5056         m4/ltoptions.m4, tests/defs.m4sh, tests/demo-nopic.test,
5057         tests/depdemo/configure.ac, tests/flags.at, tests/link.test,
5058         tests/objectlist.test, tests/quote.test, tests/static.at: Remove
5059         spurious braces.
5060
5061 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
5062
5063         syntax-check: fix violations and implement sc_prohibit_sed_s_comma.
5064
5065         I like to name temporary directories that I will remove shortly
5066         with two leading commas so that they sort lexicographically at
5067         the top of `ls' output.  Now, `./configure
5068         --prefix=`pwd`/,,inst' works again, for the first time in
5069         several years.
5070         * cfg.mk (sc_prohibit_sed_s_comma): Comma is too common a
5071         character to use routinely as the separator for sed
5072         substitutions on file paths and other variables determined by
5073         the user, causing bugs like the one I describe above.  Make sure
5074         we don't accidentally reintroduce any comma separators in
5075         future.
5076         * Makefile.am, bootstrap, bootstrap.conf, build-aux/extract-trace,
5077         build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
5078         build-aux/git-log-fix, build-aux/ltmain.m4sh, libtoolize.m4sh,
5079         m4/libtool.m4, m4/ltdl.m4, tests/cdemo-undef.test,
5080         tests/cmdline_wrap.at, tests/darwin.at, tests/defs.m4sh,
5081         tests/getopt-m4sh.at, tests/install.at, tests/libtoolize.at,
5082         tests/mdemo/Makefile.am, tests/need_lib_prefix.at,
5083         tests/sysroot.at, tests/tagdemo-undef.test, tests/testsuite.at:
5084         Try to use `|' as the default separator wherever possible,
5085         otherwise something else that doesn't occur in the substitution
5086         expression.
5087         * NEWS: Updated.
5088
5089 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
5090
5091         syntax-check: fix violations and implement sc_prohibit_bare_basename.
5092
5093         * cfg.mk (sc_prohibit_bare_basename, sc_prohibit_basename_with_sed):
5094         Make sure not to go back to using occasional `|$basename' or
5095         `|$dirname' syntax.
5096         * build-aux/git-hooks/commit-msg, build-aux/ltmain.m4sh,
5097         * build-aux/options-parser, tests/fcdemo-conf.test,
5098         * tests/fcdemo-shared.test, tests/fcdemo-static.test,
5099         * tests/libtoolize.at: Fix violations.
5100
5101 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
5102
5103         tests: migrate tests/sh.test checks to syntax-checks.
5104
5105         Some modernization of the legacy testsuite.
5106         * tests/sh.test: Remove.
5107         * Makefile.am (COMMON_TESTS): Adjust.
5108         * cfg.mk (sc_libtool_m4_cc_basename, sc_prohibit_bracket_as_test)
5109         (sc_prohibit_nested_quotes, sc_prohibit_set_dummy_without_shift)
5110         (sc_prohibit_set_minus_minus, sc_prohibit_test_binary_operators)
5111         (sc_prohibit_test_dollar, sc_prohibit_test_minus_e)
5112         (sc_prohibit_test_unary_operators, sc_prohibit_test_X)
5113         (sc_prohibit_Xsed_withou_X, sc_require_function_nl_brace):
5114         Functionally identical tests to what used to be performed by
5115         sh.test, only with coverage of all files.
5116         * bootstrap, build-aux/edit-readme-alpha,
5117         build-aux/extract-trace, build-aux/getopt.m4sh,
5118         build-aux/ltmain.m4sh, configure.ac, m4/libtool.m4, m4/ltdl.m4,
5119         tests/bindir.at, tests/configure-iface.at, tests/cwrapper.at,
5120         tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
5121         tests/dlloader-api.at, tests/exceptions.at,
5122         tests/getopt-m4sh.at, tests/lalib-syntax.at, tests/link-2.test,
5123         tests/link-order2.at, tests/loadlibrary.at,
5124         tests/lt_dladvise.at, tests/lt_dlexit.at, tests/lt_dlopen_a.at,
5125         tests/lt_dlopenext.at, tests/need_lib_prefix.at,
5126         tests/nonrecursive.at, tests/recursive.at, tests/resident.at,
5127         tests/standalone.at, tests/static.at, tests/stresstest.at,
5128         tests/subproject.at, tests/sysroot.at, tests/tagtrace.test,
5129         tests/testsuite.at: Fix violations of the new syntax checks.
5130
5131 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
5132
5133         syntax-check: fix violations and implement sc_useless_quotes_in_assignment.
5134
5135         Contrary to popular belief, Bourne shell does not resplit RHS of
5136         assignments after expansion, so if there are no unquoted shell
5137         metacharacters or whitespace, the quotes are useless.
5138         * cfg.mk (_sc_search_regexp_or_exclude): A variation of gnulib's
5139         _sc_search_regexp that also allows individual exclusions at the
5140         site of what would otherwise match by adding a comment.
5141         (sc_useless_quotes_in_assignment): New syntax-check rule to
5142         ensure we don't reintroduce useless quoted assignments.
5143         * bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
5144         build-aux/general.m4sh, build-aux/getopt.m4sh,
5145         build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
5146         doc/libtool.texi, libtoolize.m4sh, m4/libtool.m4, m4/ltdl.m4,
5147         m4/ltoptions.m4, tests/cwrapper.at, tests/defs.m4sh,
5148         tests/lalib-syntax.at, tests/libtoolize.at,
5149         tests/lt_dlopenext.at, tests/mdemo/configure.ac,
5150         tests/mdemo2/configure.ac, tests/need_lib_prefix.at,
5151         tests/no-executables.at, tests/quote.test, tests/suffix.test:
5152         Remove spurious quotes.
5153
5154 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
5155
5156         syntax-check: fix violations and implement sc_useless_quotes_in_case.
5157
5158         Contrary to popular belief, Bourne shell does not resplit case
5159         expressions after expansion, so if there are no unquoted shell
5160         metacharacters or whitespace, the quotes are useless.
5161         * cfg.mk (sc_useless_quotes_in_case): New syntax-check rule to
5162         ensure we don't reintroduce useless quoted case expressions.
5163         * build-aux/ltmain.m4sh, m4/libtool.m4, tests/bindir.at,
5164         tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
5165         tests/demo-nopic.test, tests/link-2.test, tests/quote.test,
5166         tests/sysroot.at: Remove spurious quotes.
5167
5168 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
5169
5170         maint: quote $file correctly in bootstrap.
5171
5172         * bootstrap (func_insert_sorted_if_absent): Don't forget the
5173         double quotes, since we can't control the content of $file.
5174         Reported by Stefano Lattarini.
5175
5176 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
5177
5178         build: fix a quoting bug when regenerating with bootstrap_edit.
5179
5180         * Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh): The
5181         bootstrap_edit make macro already contains double quotes, so
5182         when echoing it, don't surround it with more double quotes since
5183         it is not escaped.
5184
5185 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5186
5187         dist: hook syntax-check into `make distcheck'.
5188
5189         To make sure we don't accidentally release anything with
5190         failing syntax-checks, have `make distcheck' run the
5191         syntax-checks automatically.
5192         * Makefile.am (distcheck-hook): New rule depending on
5193         syntax-check.
5194
5195 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5196
5197         syntax-check: enable sc_prohibit_always_true_header_tests.
5198
5199         * cfg.mk (local-checks-to-fix): Remove
5200         sc_prohibit_always_true_header_tests from list of disabled
5201         checks, because it no longer flags any violations.
5202
5203 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5204
5205         syntax-check: enable sc_program_name.
5206
5207         * cfg.mk (local-checks-to-skip): Remove sc_program_name
5208         list of disabled checks.
5209         (exclude_file_name_regexp--sc_program_name): Don't check demo
5210         programs for use of set_program_name.
5211
5212 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5213
5214         syntax-check: enable sc_bindtextdomain.
5215
5216         * cfg.mk (local-checks-to-skip): Remove sc_bindtextdomain
5217         list of disabled checks.
5218         (exclude_file_name_regexp--sc_bindtextdomain): Don't check demo
5219         programs for use of bindtextdomain.
5220
5221 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5222
5223         syntax-check: fix violations and implement sc_trailing_blank-non-rfc3676.
5224
5225         * cfg.mk (local-checks-to-fix): Move sc_trailing_blank from
5226         here...
5227         (local-checks-to-skip): ...to here, because otherwise it flags
5228         valid RFC3676 signature blocks.
5229         (sc_trailing_blank-non-rfc3676): An improved sc_trailing_blank
5230         implementation that doesn't flag signature blocks as violations.
5231         * Makefile.am, bootstrap.conf, doc/PLATFORMS,
5232         libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4,
5233         libltdl/m4/lt~obsolete.m4, tests/archive-in-archive.at,
5234         tests/convenience.at, tests/darwin.at, tests/depdemo/l1/l1.c,
5235         tests/depdemo/l2/l2.c, tests/depdemo/l3/l3.c,
5236         tests/depdemo/l4/l4.c, tests/f77demo/README,
5237         tests/f77demo/cprogram.c, tests/f77demo/foof.f,
5238         tests/f77demo/foof2.f, tests/f77demo/foof3.f,
5239         tests/f77demo/fprogram.f, tests/fcdemo/README,
5240         tests/fcdemo/cprogram.c, tests/fcdemo/foof.f90,
5241         tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
5242         tests/fcdemo/fprogram.f90, tests/mdemo/README,
5243         tests/mdemo/main.c, tests/mdemo/mlib.c, tests/objectlist.test,
5244         tests/static.at, tests/template.at, tests/testsuite.at: Remove
5245         trailing blanks.
5246
5247 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5248
5249         syntax-check: fix violations and re-enable sc_useless_cpp_parens.
5250
5251         * cfg.mk (local-checks-to-fix): Remove sc_useless_cpp_parens
5252         from list of disabled checks.
5253         * doc/libtool.texi, libltdl/argz.c, libltdl/argz_.h,
5254         build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
5255         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
5256         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
5257         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
5258         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
5259         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
5260         libltdl/loaders/dyld.c, libltdl/loaders/loadlibrary.c,
5261         libltdl/loaders/shl_load.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
5262         libltdl/ltdl.c, libltdl/ltdl.h, libltdl/m4/libtool.m4, tests/demo/foo.h,
5263         tests/depdemo/sysdep.h, tests/exceptions.at, tests/export.at,
5264         tests/pdemo/foo.h, tests/stresstest.at: Remove useless parens in cpp
5265         `#if defined(foo)' statements.
5266
5267 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5268
5269         syntax-check: fix violations and re-enable sc_space_tab.
5270
5271         * cfg.mk (local-checks-to-fix): Remove sc_space_tab from list of
5272         disabled checks.
5273         (exclude_file_name_regexp--sc_space_tab): Don't flag space-tab
5274         sequences in diff files as an error.
5275         * Makefile.am, build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
5276         build-aux/ltmain.m4sh, libltdl/loaders/dyld.c,
5277         libltdl/loaders/shl_load.c, libltdl/ltdl.h, libltdl/ltdl.mk,
5278         libltdl/slist.c, libtoolize.m4sh, m4/ltoptions.m4, tests/demo/dlmain.c,
5279         tests/depdemo/main.c, tests/libtoolize.at, tests/lt_dladvise.at,
5280         tests/pdemo/longer_file_name_dlmain.c, tests/sh.test, tests/static.at,
5281         tests/stresstest.at, tests/template.at: Fix space-tab sequences by
5282         reversing them in regexps, and deleting leading spaces in indentation.
5283
5284 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5285
5286         syntax-check: fix violations and re-enable sc_prohibit_undesirable_word_seq.
5287
5288         * cfg.mk (local-checks-to-fix): Remove
5289         sc_prohibit_undesirable_word_seq from list of disabled checks.
5290         * doc/libtool.texi, build-aux/ltmain.m4sh,
5291         libltdl/m4/libtool.m4, libtoolize.m4sh: Replace all uses of "can
5292         not" with "cannot".
5293
5294 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5295
5296         syntax-check: fix violations and re-enable sc_probibit_test_minus_ao.
5297
5298         * cfg.mk (local-checks-to-fix): Remove
5299         sc_probhibit_test_minus_ao from list of disabled checks.
5300         (exclude_file_name_regexp--sc_prohibit_tests_minus_ao): The
5301         matches from this syntax-check in libtool.m4 are all bogus.
5302
5303 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5304
5305         syntax-check: fix violations and re-enable sc_prohibit_strcmp.
5306
5307         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_strcmp
5308         from list of disabled checks.
5309         (exclude_file_name_regexp--sc_prohibit_strcmp): Ignore
5310         violations in libtool.texi and any demo C files.
5311         * libltdl/libltdl/lt__private.h (strneq, streq): Renamed from
5312         this...
5313         (STRNEQ, STREQ): ..to this.  Adjust all callers.
5314         * tests/slist.at: Add STREQ definition. Change all !strcmp calls
5315         to STREQ.
5316         * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src): Add and use
5317         STREQ definition.
5318
5319 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5320
5321         syntax-check: fix violations and re-enable sc_prohibit_stddef_without_use.
5322
5323         * cfg.mk (local-checks-to-fix): Remove
5324         sc_prohibit_stddef_without_use from list of disabled checks.
5325         * libltdl/argz.c, libltdl/lt__dirent.c, libltdl/slist.c: Remove
5326         spurious stddef.h #include lines.
5327
5328 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5329
5330         syntax-check: fix violations and re-enable sc_prohibit_magic_number_exit.
5331
5332         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_magic_number_exit
5333         from list of disabled checks.
5334         * ltmain.c: Removed unused file.
5335
5336 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5337
5338         syntax-check: fix violations and re-enable sc_prohibit_have_config_h.
5339
5340         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_have_config_h
5341         from list of disabled checks.
5342         * tests/f77demo/foo.h, tests/fcdemo/foo.h: Remove spurious
5343         HAVE_CONFIG_H guards for #include <config.h>.
5344
5345 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5346
5347         syntax-check: fix violations and re-enable sc_prohibit_empty_lines_at_EOF.
5348
5349         * cfg.mk (local-checks-to-fix): Remove
5350         sc_prohibit_empty_lines_at_EOF from list of disabled checks.
5351         * THANKS, libltdl/argz.c, libltdl/config/getopt.m4sh,
5352         tests/f77demo/README, tests/f77demo/cprogram.c,
5353         tests/f77demo/fprogram.f, tests/fcdemo/README,
5354         tests/fcdemo/cprogram.c, tests/libtoolize.at,
5355         tests/mdemo/README, tests/mdemo2/README, tests/pdemo-inst.test:
5356         Remove spurious empty lines from the end of these files.
5357
5358 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5359
5360         syntax-check: fix violations and re-enable sc_prohibit_doubled_word.
5361
5362         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_doubled_word
5363         from list of disabled checks.
5364         * build-aux/general.m4sh (func_quote_for_eval): Remove one of a
5365          pair of "and"s in a comment.
5366         * tests/lt_dladvise.at (hint_global): Remove one of a pair of
5367         consecutive "to"s split across lines in a comment.
5368
5369 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5370
5371         syntax-check: fix violations and re-enable sc_prohibit_cvs_keyword.
5372
5373         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_cvs_keyword
5374         from list of disabled checks.
5375         * tests/tagdemo/README: Remove spurious CVS keyword.
5376
5377 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5378
5379         syntax-check: fix violations and re-enable sc_makefile_at_at_check.
5380
5381         At some point we were supporting some undetermined `broken
5382         make', as evidenced by having carried the following code since
5383         2003:
5384           ## use @LIBLTDL@ because some broken makes do not accept
5385           ## macros in targets, we can only do this because our LIBLTDL
5386           ## does not contain $(top_builddir).
5387           @LIBLTDL@: $(top_distdir)/libtool \
5388           ...
5389         However, we've also had *many* cases of macros in targets for
5390         just as long, so most likely we never fully supported makes
5391         allegedly broken in this way.  As of this release, we explicitly
5392         no longer support make implementations that do not accept macros
5393         in targets.
5394         * cfg.mk (local-checks-to-fix): Remove sc_makefile_at_at_check
5395         from list of disabled checks.
5396         * configure.ac (order-only prerequisites): Test with the
5397         order-only pipe symbol in a macro.
5398         * Makefile.am, tests/mdemo/Makefile.am: Convert all @FOO@ to
5399         $(FOO).
5400
5401 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5402
5403         syntax-check: fix violations and re-enable sc_makefile_TAB_only_indentation.
5404
5405         * cfg.mk (local-checks-to-fix): Remove
5406         sc_makefile_TAB_only_indentation from list of disabled checks.
5407         * Makefile.am (libltdl/Makefile.am): Replace leading spaces with
5408         TABs.
5409         * libltdl/Makefile.am (libltdl_libltdl_la_SOURCES): Ditto.
5410
5411 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5412
5413         syntax-check: fix violations and re-enable sc_m4_quote_check.
5414
5415         * cfg.mk (local-checks-to-fix): Remove sc_m4_quote_check from
5416         list of disabled checks.
5417         * libltdl/m4/libtool.m4 (_LT_CHECK_OBJDIR): Quote LT_OBJDIR
5418         correctly.
5419
5420 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5421
5422         syntax-check: fix violations and re-enable sc_file_system.
5423
5424         * cfg.mk (local-checks-to-fix): Remove sc_file_system from list
5425         of disabled checks.
5426         (VC_LIST_ALWAYS_EXCLUDE_REGEX): Match mail directory correctly
5427         to avoid running its contents through syntax-check.
5428         * build-aux/ltmain.m4sh (func_mode_link): Use correct spelling
5429         for "file system".
5430         * libltdl/ltdl.c (try_dlopen): Ditto.
5431         * tests/dlloader-api.at: Ditto.
5432
5433 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5434
5435         syntax-check: fix violations and re-enable sc_error_message_uppercase.
5436
5437         * cfg.mk (local-checks-to-fix): Remove
5438         sc_error_message_uppercase from list of disabled checks.
5439         (exclude_file_name_regexp--sc_error_message_uppercase): Don't
5440         match cvsu, which is not our file to edit.
5441         * doc/libtool.texi: Use lowercase error message in example.
5442
5443 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5444
5445         syntax-check: rationale for disabling sc_cast_of_x_alloc_return_value.
5446
5447         * cfg.mk: Note that we support C++ compilation of libltdl, which
5448         in turn requires that *alloc return values be cast correctly.
5449
5450 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5451
5452         syntax-check: fix violations and re-enable sc_cast_of_argument_to_free.
5453
5454         * cfg.mk (local-checks-to-fix): Remove
5455         sc_cast_of_argument_to_free from list of disabled checks.
5456         * build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
5457         libltdl/lt__dirent.c: Casting argument to free is never
5458         necessary.
5459
5460 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5461
5462         syntax-check: fix violations and re-enable sc_avoid_if_before_free.
5463
5464         * cfg.mk (local-checks-to-fix): Remove sc_avoid_if_before_free
5465         from list of disabled checks.
5466         According to gnulib/doc/free.texi: "On old platforms such as
5467         SunOS4, @code{free (NULL)} fails.  However, since all such
5468         systems are so old as to no longer be considered ``reasonable
5469         portability targets,'' this module is no longer useful."
5470         * libltdl/libltdl/lt__alloc.h (FREE, MEMREASSIGN): Don't protect
5471         against freeing NULL bug on SunOS4.
5472
5473 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5474
5475         syntax-check: skip sc_unmarked_diagnostics.
5476
5477         * cfg.mk (local-checks-to-fix): Move sc_unmarked_diagnostics
5478         from here...
5479         (local-checks-to-skip): ...to here.
5480
5481 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5482
5483         libtoolize: rename `libltdl/config' directory to standard `build-aux'.
5484
5485         In addition to moving the autoconf auxiliary script directory
5486         into the place expected by GNU developers ($top_srcdir/build-aux)
5487         we also simplify libtoolize somewhat by having libltdl use
5488         whatever directory was specified by the parent project.  This is
5489         much more flexible, allows libltdl client projects to also use a
5490         single canonical `$top_srcdir/build-aux' auxiliary script
5491         directory, and maintains backward compatibility with existing
5492         projects that wish to continue using $ltdl_dir/config.
5493         * libltdl/config: Moved whole directory from here...
5494         * build-aux: ...to here.
5495         * libtoolize.m4sh (func_install_pkgaux_subproject): Remove.
5496         (func_install_pkgaux_parent): Remove.
5497         (func_install_pkgaux_files): Considerably simplified now that we
5498         have only a single auxiliary directory to worry about.
5499         (subproject_aux_dir): Remove.
5500         * bootstrap.conf (libtool_readme_release_package_substitutions):
5501         No need to substitute our old unusual aux_dir location into
5502         README-release any more.
5503         * cfg.mk (_build-aux): Now that we use the standard location for
5504         this directory, no need to set this variable either.
5505         * configure.ac (AC_INIT): git-version-gen has moved.
5506         (AC_CONFIG_AUX_DIR): Adjust.
5507         * Makefile.am (stamp-mk, auxexefiles, auxfiles)
5508         (install-data-local): Use build-aux instead of config.
5509         (libltdl/stamp-mk): Ditto.
5510         * libltdl/configure.ac, tests/cdemo/configure.ac,
5511         tests/demo/configure.ac, tests/depdemo/configure.ac,
5512         tests/f77demo/configure.ac, tests/fcdemo/configure.ac,
5513         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
5514         tests/pdemo/configure.ac, tests/tagdemo/configure.ac
5515         (AC_CONFIG_AUX_DIR): Ditto.
5516         * tests/defs.m4sh (aux_dir): Ditto.
5517         * tests/configure-iface.at, tests/getopt-m4sh.at,
5518         tests/libtoolize.at, tests/subproject.at, tests/testsuite.at:
5519         Ditto.
5520         * Makefile.am (ltdl_ac_aux_dir): Extract at build-time...
5521         * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that
5522         libtoolize can access it at runtime without requiring GNU M4 via
5523         the extract-trace script.
5524         (require_Makefile_am_filter): Use it to determine whether the
5525         aux_dir declared in the current (parent) project configure is
5526         compatible with the declarations in installed ltdl autotools
5527         source files.
5528         (require_configure_ac_filter): New function to perform similar
5529         checks and rewrite configure.ac during installation if necessary.
5530         * NEWS: Updated.
5531
5532 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5533
5534         libtoolize: aux scripts go in ltdl dir when parent has no configure.
5535
5536         When using libtoolize to install subproject libltdl into a
5537         parent project that does not use autotools, set the default
5538         directory for auxiliary scripts inside libltdl rather than
5539         littering the parent project with files it doesn't use.
5540         * libtoolize.m4sh (func_require_ac_aux_dir): In verbose mode,
5541         report results like other require_ funcs.
5542         (func_require_aux_dir): Put subproject auxiliary files into ltdl
5543         directory where libltdl/configure will be able to find
5544         `install-sh' and others.
5545
5546 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5547
5548         libtoolize: simplify runtime by substituting pkgauxdir.
5549
5550         * Makefile.am (configure_edit): Substitute pkgauxdir.
5551         * libtoolize.m4sh (func_install_pkgaux_subproject)
5552         (func_install_pkgaux_parent, extract_trace): Use it.
5553
5554 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5555
5556         libtoolize: generate require_ltdl_relative_aux_dir definition.
5557
5558         * libtoolize.m4sh (require_ltdl_relative_macro_dir): Change to
5559         be generated function...
5560         (require_ltdl_relative_aux_dir): ...so that we can easily
5561         generate this very similar function from the same code.
5562
5563 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5564
5565         libtoolize: rename `libltdl/m4' directory to standard `m4'.
5566
5567         In addition to moving the autoconf macro directory into the
5568         place expected by GNU developers ($top_srcdir/m4), we also
5569         simplify libtoolize somewhat by having libltdl use whatever
5570         directory was specified by the parent project.  This is much
5571         more flexible, allows libltdl client projects to also use a
5572         single canonical `$top_srcdir/m4' macro directory, and maintains
5573         backward compatibility with existing projects that wish to
5574         continue using $ltdl_dir/m4.
5575         * libltdl/m4: Moved to it's parent directory.
5576         * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT)
5577         (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust.
5578         * configure.ac (AC_CONFIG_MACRO_DIR): Adjust.
5579         * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The
5580         libtoolize script can pick up the project macro directory from
5581         ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing
5582         to regenerate configure for the sake of a different macro
5583         directory declared in the libltdl using client project.
5584         * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove.
5585         (func_install_pkgmacro_parent): Remove.
5586         (subproject_macro_dir): Remove.
5587         (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags)
5588         (require_ltdl_am_macro_dir): New functions, generated at runtime
5589         by adding libltdl/Makefile.am to the generation loop.
5590         (func_install_pkgmacro_files): Considerably simplified now that
5591         we have only a single macro directory to worry about.
5592         (require_ltdl_relative_macro_dir): New function. Calculate the
5593         relative path from $ltdl_dir to the parent project macro_dir.
5594         (require_Makefile_am_filter): Depending on $ltdl_mode, edit
5595         Makefile.am ACLOCAL_AMFLAGS to use the parent project macro
5596         directory if necessary.
5597         (require_aclocal_m4_filter): Make sure m4_includes point to the
5598         correct macro directory by editing the file as it is copied
5599         into the parent project.
5600         (func_install_pkgltdl_files): Use the filters.
5601         (func_check_macros): Remove various advice that no longer
5602         applies with an always shared macro directory.
5603         (func_require_ltdl_dir): Don't default ltdl_dir to subproject
5604         when `--ltdl' was not given.
5605         (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is
5606         not set.
5607         (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject
5608         mode with no other directory implied by AC_CONFIG_MACRO_DIR or
5609         ACLOCAL_AMFLAGS, otherwise m4 as before.
5610         * tests/libtoolize.at: Match new "creating file `Makefile.am'"
5611         messages correctly.
5612         (subproject ltdl with non-shared directories): This test no
5613         longer makes sense, so repurposed...
5614         (subproject ltdl with non-canonical macro dir): ...this, to
5615         ensure subproject ltdl continues to automatically share the
5616         parent macro directory.
5617         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
5618         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
5619         tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
5620         tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
5621         tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location
5622         of macro_dir.
5623         * NEWS: Updated.
5624
5625 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5626
5627         libtoolize: rename `Makefile.inc' to standard `ltdl.mk'.
5628
5629         * libltdl/Makefile.inc: Moved from here...
5630         * libltdl/ltdl.mk: ...to here.
5631         * Makefile.am, bootstrap.conf, tests/libtoolize.at,
5632         tests/nonrecursive.at: Adjust.
5633         * libtoolize.m4sh (func_install_pkgltdl_files): Set the
5634         destination file to `Makefile.inc' if grep finds an include for
5635         that name in a top-level Makefile.am.
5636         (func_check_macros): Print a deprecation warning if use of the
5637         old `Makefile.inc' convention is found.
5638         * tests/old-ltdl-iface.at: New test for renaming and warning
5639         correctly when `Makefile.inc' convention is still in use.
5640         * NEWS: Updated.
5641
5642 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5643
5644         libtoolize: refactor ACLOCAL_AMFLAGS extraction.
5645
5646         Another simple refactor to simplify following changesets.
5647         * libtoolize.m4sh (require_Makefile_am, require_aclocal_amflags)
5648         (require_am_macro_dir): Generate these functions at runtime.
5649
5650 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5651
5652         libtoolize: rename require_makefile_am to require_Makefile_am.
5653
5654         A simple refactoring to keep the next change self-contained.
5655         * libtoolize.m4sh (require_makefile_am): Renamed from this...
5656         (require_Makefile_am): ...to this.
5657
5658 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5659
5660         libtoolize: simplify copying of files that are edited during install.
5661
5662         * libltdl/Makefile.inc (EXTRA_DIST): Don't list autotools files
5663         that Automake automatically adds to a (subproject)
5664         distribution...
5665         * Makefile.am (EXTRA_DIST): ...although, our layout is a bit odd
5666         because we reuse libltdl/Makefile.inc in non-recursive mode in
5667         our own tree, so we do need to add those very same files here...
5668         * libtoolize.m4sh (require_Makefile_am_filter)
5669         (require_Makefile_inc_filter): ...all of which means we no
5670         longer need to manually remove those files at libtoolize time.
5671         These two new functions are factored out of...
5672         (func_fixup_Makefile): ...this old function, now removed.
5673         (func_copy): Add support for an optional sed script as the last
5674         argument to filter the content of a file as it is copied.
5675         (func_install_pkgltdl_files): Much simplified by $require_<foo>
5676         the relevant filter scripts and passing them to func_copy.
5677
5678 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5679
5680         libtoolize: simplify file-copying and -linking call-graph.
5681
5682         * libtoolize.m4sh (TAR): Remove.
5683         (func_copy_some_files, func_copy_cb): Remove.
5684         (func_copy): Refactor from all of the above, and simplify. No
5685         need to use $TAR to preserve timestamps when copying, since
5686         we've been running touch right afterwards anyway. Adjust all
5687         callers to use the new argument footprint.
5688         (func_serial_update, func_keyword_update): Delete any pre-
5689         existing destination file when used with `--force' before
5690         calling func_copy, now that the hardcoded special cases are not
5691         in there any more.
5692         (func_install_pkgmacro_subproject)
5693         (func_install_pkgaux_subproject): Use our own file loop -
5694         func_copy subsumes all the checks previously in
5695         func_copy_some_files, but operates on only one file at a time.
5696         (func_install_pkgltdl_files): Similarly, handle aclocal.m4 and
5697         configure special cases here, before calling func_copy.
5698         * tests/libtoolize.at: Make sure we match corrected "copying
5699         `configure.ac'" output.
5700
5701 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
5702
5703         maint: generate full and correct ChangeLog.
5704
5705         * gnulib: Updated to pick up gitlog-to-changelog multi-author
5706         support.
5707         * gl/build-aux/gitlog-to-changelog.diff: Use gnulib-rejected
5708         patch for '(tiny change)' support.
5709         * Makefile.am (ChangeLog): Use gitlog-to-changelog --amend=F
5710         option.
5711         * libltdl/config/git-hooks/commit-msg: New commit message hook
5712         for git.
5713         * libltdl/config/git-log-fix: New file, with ChangeLog fixes.
5714         * HACKING (Using git): Update.
5715
5716 2011-11-16  Gary V. Vaughan  <gary@gnu.org>
5717
5718         options-parser: provide a saner pluggable API.
5719
5720         It's much too easy to forget that the functions you hook into
5721         the option parser need to return unconsumed options in the
5722         variable `func_run_hooks_result'; better to follow the
5723         convention used in the rest of bootstrap and return results in a
5724         variable named after the function with `_result' appended.
5725         * libltdl/config/options-parser (func_run_hooks): implement this
5726         new API.
5727         (Option parsing): Update the example in the header comment for
5728         this section to reflect the changes.
5729         * bootstrap (bootstrap_options_prep, bootstrap_parse_options)
5730         (bootstrap_validate_options): Adjust.
5731         * bootstrap.conf (libtool_options_prep, libtool_parse_options)
5732         (libtool_validate_options): Ditto.
5733
5734 2011-11-16  Gary V. Vaughan  <gary@gnu.org>
5735
5736         bootstrap: display accurate usage message.
5737
5738         After splitting bootstrap up, we also lost bootstrap's usage
5739         message, and were incorrectly displaying a partial extract-trace
5740         message.
5741         * bootstrap (usage): Set appropriately.
5742
5743 2011-11-16  Gary V. Vaughan  <gary@gnu.org>
5744
5745         bootstrap: accept --gnulib-srcdir=/path/to/gnulib again.
5746
5747         During the split of bootstrap into options-parser and
5748         extract-trace, the generic long-option splitting code got lost.
5749         * libltdl/config/options-parser (func_parse_options): Add the
5750         code to split any long option separated by an equals from its
5751         optarg back in.
5752         Reported by Roumen Petrov.
5753
5754 2011-11-15  Gary V. Vaughan  <gary@gnu.org>
5755
5756         gnulib: update gnulib submodule.
5757
5758         Among others, this fixes a bug in _build-aux expansion so that
5759         `make syntax-check' works again.
5760         * gnulib: Updated to today's master HEAD revision.
5761         * gl/top/maint.mk.diff: Remove. This patch has been applied
5762         upstream already.
5763
5764 2011-11-15  Gary V. Vaughan  <gary@gnu.org>
5765
5766         libtoolize: remove NL2SP and initialisation.
5767
5768         There's only a single use of NL2SP, and that is redundant.
5769         * libtoolize.m4sh (func_serial_update): Factor away use of
5770         NL2SP.
5771         (NL2SP, SP2NL): Remove initialisation.
5772
5773 2011-11-15  Gary V. Vaughan  <gary@gnu.org>
5774
5775         bootstrap: remove consumed options from the list to be processed.
5776
5777         Fix a bug where processed bootstrap options were not removed
5778         from the queue, and eventually flagged as unknown in the
5779         pluggable option parser driver.
5780         * bootstrap (bootstrap_parse_options)
5781         (bootstrap_validate_options): Follow the pluggable option parser
5782         API correctly, and set func_run_hooks_result to the list of
5783         remaining unconsumed options.
5784         Reported by Roumen Petrov.
5785
5786 2011-11-14  Gary V. Vaughan  <gary@gnu.org>
5787
5788         libtoolize: refactor $opt_quiet, func_echo and func_echo_once.
5789
5790         Instead of long sequences checking for setting of $opt_quiet,
5791         followed by one or more func_echo variations, add and use a new
5792         function func_whisper - the complement of func_verbose.
5793         * libtoolize.m4sh (func_whisper): New function. Adjust all
5794         callers previously using `$opt_quiet || func_echo ...'.
5795         (func_whisper_once): Ditto, for `$opt_quiet || func_echo_once
5796         ...'.
5797         (func_whisper_hdr): New function, adjust all callers previously
5798         using `func_whisper_once ...; func_whisper ...'.
5799         (func_whisper_error_header): Ditto, but calling func_error.
5800         (func_echo_once): Remove.
5801
5802 2011-11-14  Gary V. Vaughan  <gary@gnu.org>
5803
5804         libtoolize: update a bit-rotted comment.
5805
5806         * libtoolize (func_copy_cb): Since this comment was written, the
5807         function has been changed to timestamp files as it copies.
5808         Update the comment to reflect that.
5809
5810 2011-11-14  Gary V. Vaughan  <gary@gnu.org>
5811
5812         general.m4sh: relative path to the same directory is `.'.
5813
5814         * general.m4sh (func_relative_path): We sometimes want to use
5815         the result of this function directly, rather than purely as a
5816         prefix, so we need to return `.' when both directories end up at
5817         the same location.
5818
5819 2011-11-14  Gary V. Vaughan  <gary@gnu.org>
5820
5821         ltmain.sh: append relative path trailing slashes explicitly.
5822
5823         In addition to being more idiomatic, and hence minimising
5824         suprises, seeing the slash written explicity when appending to
5825         the result of a relative path calculation is a lot more
5826         readable.
5827         * libltdl/config/general.m4sh (func_relative_path): Don't append
5828         an implicit trailing slash...
5829         * libltdl/config/ltmain.m4sh (func_mode_link): ...write it
5830         explicitly at the time of use.
5831
5832 2011-11-09  Gary V. Vaughan  <gary@gnu.org>
5833
5834         build: use pkgauxdir for local install and uninstall rules.
5835
5836         * Makefile.am (pkgauxdir): Set it correctly.
5837         (uninstall-hook): Use it for pkgaux_scripts and
5838         pkgaux_data_files.
5839         (install-data-local): Ditto.
5840         Remove `config/' prefix from extract-trace and option-parser
5841         items.
5842
5843 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5844
5845         install: correct a typo in pkgaux_files location.
5846
5847         * Makefile.am (install-data-local): Install pkgaux_files
5848         directly from $(aux_dir) [./libltdl/config at the moment].
5849
5850 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5851
5852         libtoolize: order pkgltdl_files to avoid reconfiguration.
5853
5854         * Makefile.am (pkgltdl_files): aclocal.m4 depends on
5855         configure.ac, and will cause spurious reconfiguration of freshly
5856         `libtoolize --ltdl' tree if we don't ensure configure.ac is the
5857         older of these two files.
5858         * tests/libtoolize.at: Adjust expout order to match.
5859
5860 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5861
5862         build: remove an over-exuberant $(srcdir) prefix.
5863
5864         * Makefile.am (git_version_gen): No need for an extra $(srcdir)
5865         in the path when we always use after `cd $(srcdir).
5866
5867 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5868
5869         libtoolize: massage installed auxiliary script list at make time.
5870
5871         * Makefile.am (configure_edit): Rename pkgconfig_files
5872         substitution to pkgaux_files, and add pkgaux_install_files and
5873         pkgaux_parent_files substitutions for atlocal.
5874         (pkgauxdir): Where to install pkgaux_files.
5875         (auxfiles): Removed, and replaced by...
5876         (pkgaux_parent_files, pkgaux_install_files, pkgaux_data_files):
5877         ...these, which separate the files lists more logically for
5878         easier installation, and use by libtoolize.m4sh.
5879         (uninstall-hook): Adjust.
5880         (tests/atlocal): Adjust.
5881         * bootstrap.conf (libtool_link_libltdl_subdirs): Adjust.
5882         * libtoolize.m4sh (func_install_pkgconfig_files)
5883         (func_install_pkgconfig_subproject)
5884         (func_install_pkgconfig_parent, func_install_pkgconfig_files)
5885         (all_pkgconfig_files): Renamed to...
5886         (func_install_pkgaux_files, unc_install_pkgaux_subproject)
5887         (func_install_pkgaux_parent, func_install_pkgaux_files)
5888         (all_pkgaux_files): ...these, resp. Adjust all callers.
5889         (func_massage_pkgconfig_files): Removed.
5890         (pkgaux_files): List of all auxiliary scripts substituted from
5891         Makefile.
5892
5893 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5894
5895         libtoolize: massage installed libltdl file list at make time.
5896
5897         * libtoolize.m4sh (pkgltdldir, pkgdatadir): Put installable
5898         libltdl files in pkgdatadir. When testing, and _lt_pkgdatadir
5899         is set, adjust to look in libltdl subdirectory.
5900         (func_massage_pkgltdl_files): Removed function and only caller,
5901         because...
5902         (pkgltdl_files): ...we substitute the pre-massaged files
5903         directly...
5904         (func_install_pkgltdl_files): ...from here.
5905         Adjust installation of specially handled additional files.
5906         * Makefile.am (ltdldir): Location of libltdl files in source
5907         tree.
5908         (ltdldest, ltdldatafiles): Removed.
5909         (pkgltdl_files): New pre-massaged list of libltdl sources.
5910         (install-data-local, uninstall-hook): Use it.
5911         * tests/libtoolize.at: Reorder expected output to match actual
5912         libtoolize output.
5913
5914 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5915
5916         libtoolize: massage installed macro list at make time.
5917
5918         * libtoolize.m4sh (func_massage_aclocal_DATA): Removed function
5919         and only caller, because...
5920         (pkgmacro_files): ...we substitute the pre-massaged files
5921         directly...
5922         (func_install_pkgmacro_files): ...from here.
5923         * Makefile.am (pkgmacro_files): New pre-massaged list of aclocal
5924         macros used by func_install_pkgmacro_files.
5925         (configure_edit): Substitute pkgmacro_files instead of
5926         aclocalfiles.
5927
5928 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5929
5930         libtoolize: use only space delimited file lists.
5931
5932         We don't install any files with whitespace in their file name,
5933         so using colon delimited lists to make that possible was a
5934         premature optimisation and an unneeded complication.
5935         * libtoolize.m4sh (func_copy_some_files): Remove IFS twiddling,
5936         and just pull space delimited files in a for loop idiomatically.
5937         (func_massage_aclocal_DATA, func_install_pkgmacro_subproject)
5938         (func_install_pkgmacro_parent, func_install_pkgmacro_files)
5939         (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
5940         Append to file lists with space delimiter.
5941
5942 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5943
5944         libtoolize: remove sed based configure scanning.
5945
5946         * libtoolize (func_scan_files): Removed function and callers.
5947         (require_seen_ltdl, require_seen_libtool): Factor out remaining
5948         functionality of former sed based scanning.
5949         (func_check_macros): Adjust.
5950         * NEWS: Updated.
5951
5952 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5953
5954         libtoolize: refactor ltdl_mode discovery.
5955
5956         * libtoolize.m4sh (require_ac_ltdl_mode)
5957         (require_ac_ltdl_options, require_ltdl_mode): New functions
5958         factored out of func_scan_files for scanning and setting
5959         ltdl_mode and friends.
5960         (func_scan_files): Remove the factored out code.
5961         (func_install_pkgmacro_files, func_install_pkgltdl_files)
5962         (func_install_pkgconfig_files, func_check_macros): Adjust.
5963
5964 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5965
5966         libtoolize: refactor ltdl_dir discovery.
5967
5968         * libtoolize.m4sh (require_ac_ltdl_dir, require_ltdl_dir):
5969         New functions factored out of func_scan_files for scanning and
5970         setting ac_ltdl_dir and ltdl_dir resp.
5971         (func_scan_files): Remove the factored out code.
5972         (func_fixup_Makefile, func_serial_update_check)
5973         (func_install_pkgltdl_files, func_install_pkgconfig_subproject)
5974         (func_check_macros): Adjust.
5975
5976 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5977
5978         libtoolize: refactor aux_dir discovery.
5979
5980         * libtoolize.m4sh (require_ac_aux_dir, require_aux_dir): New
5981         functions factored out of func_scan_files for scanning and
5982         setting aux_dir and friends.
5983         (func_scan_files): Remove the factored out code to scan
5984         configure.ac with sed, and then set macro_dir appropriately.
5985         (func_install_pkgconfig_subproject, func_install_pkgconfig_parent)
5986         (func_install_pkgmacro_files, func_check_macros): Adjust.
5987
5988 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5989
5990         libtoolize: install autoconf macros only if there is a $configure_ac.
5991
5992         * libtoolize.m4sh (func_install_pkgmacro_files): If there is no
5993         $configure_ac in the parent project directory, and libtoolize is
5994         in subproject mode, then the parent project has no use for
5995         autoconf macros, so don't install them.
5996         * NEWS: Updated.
5997
5998 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
5999
6000         libtoolize: display aux files output header for non-autoconf parents.
6001
6002         * libtoolize.m4sh (func_install_pkgconfig_subproject): When the
6003         parent project does not use Autoconf, be sure to display an
6004         output header before copying auxiliary files despite not being
6005         able to scan for AC_CONFIG_AUX_DIR arguments.
6006         * NEWS: Updated.
6007
6008 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
6009
6010         libtoolize: refactor macro_dir discovery around extract-trace script.
6011
6012         * libtoolize.m4sh (func_extract_trace): Function to call
6013         $aux_dir/extract-trace.  The name and footprint are the same as
6014         the core function in the extract-trace script file so that we
6015         can choose to source that file when the option processing
6016         becomes compatible with ours.
6017         (require_ac_macro_dir, require_aclocal_amflags)
6018         (require_am_macro_dir, require_macro_dir, require_makefile_am):
6019         New functions factored out of func_scan_files for scanning and
6020         setting macro_dir and friends.
6021         (func_scan_files): Remove the factored out code to scan
6022         configure.ac with sed, and then set macro_dir appropriately.
6023         (func_serial_update_check, func_install_pkgmacro_subproject)
6024         (func_install_pkgmacro_parent, func_install_pkgmacro_files)
6025         (func_check_macros): Adjust.
6026         * tests/libtoolize.at (Subproject ltdl without GNU M4): New test
6027         to ensure `libtoolize --subproject' continues to work without a
6028         GNU M4 dependency.
6029         * NEWS: Updated.
6030
6031 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
6032
6033         libtoolize: refactor configure_ac discovery.
6034
6035         Make a start on decomposing some of the giant functions at the
6036         heart of libtoolize into the much more flexible and manageable
6037         (albeit somewhat more verbose) model of self-organising
6038         $require_<foo> function pointers.
6039         * libtoolize.m4sh (require_configure_ac): New function factored
6040         out of func_scan_files for setting $configure_ac appropriately,
6041         implementation taken from extract-trace script.
6042         (func_autoconf_configure): And similarly for ensuring that a
6043         filename which matches something Autoconf would read also has
6044         content that appears to be destined for Autoconf processing.
6045         (func_scan_files): Simplified the factored out code to a single
6046         require_configure_ac call.
6047         (func_install_pkgconfig_files, func_check_macros): Ditto.
6048         (seen_autoconf): Removed.
6049
6050 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
6051
6052         bootstrap: split into reusable parts.
6053
6054         * bootstrap: Bourne shell has no scoping, so be extremely
6055         careful with namespaces, functions in `^func_' and `^require_';
6056         private variables in `^_G_', and public variables all well
6057         documented by comments.
6058         * libltdl/config/extract-trace: New file, containing the minimum
6059         of code previously in bootstrap plus a little glue to make the
6060         GNU M4 based autotools tracing function (as opposed to the
6061         kludgy sed extraction currently used everywhere else) a
6062         standalone script that can be executed or sourced.
6063         * libltdl/config/options-parser: New file, containing the
6064         pluggable options parser code shared between the other two.
6065         * bootstrap.conf: Adjust.
6066         * Makefile.am (EXTRA_DIST): Be sure to distribute the new
6067         extract-trace and options-parser scripts.
6068         (install-data-local): And install them where libtoolize can find
6069         them.
6070
6071 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
6072
6073         tests: prefix absolute directory variables with 'abs_'.
6074
6075         Avoid any possible confusion about the contests of thes
6076         variables compared to $aux_dir, $macro_dir and $src_dir in
6077         configure.ac, Makefile.am, libtoolize.m4sh and others.
6078         * tests/defs.m4sh (aux_dir, macro_dir, srcdir): Rename these...
6079         (abs_aux_dir, abs_macro_dir, abs_srcdir): ...to these resp.
6080         * tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
6081         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
6082         tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
6083         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
6084         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
6085         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
6086         tests/demo-pic-exec.test, tests/demo-pic-make.test,
6087         tests/demo-shared-exec.test, tests/demo-shared-inst.test,
6088         tests/demo-shared-make.test, tests/demo-shared-unst.test,
6089         tests/demo-static-exec.test, tests/demo-static-inst.test,
6090         tests/demo-static-make.test, tests/demo-static-unst.test,
6091         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
6092         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
6093         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
6094         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
6095         tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
6096         tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
6097         tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
6098         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
6099         tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
6100         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
6101         tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
6102         tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
6103         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
6104         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
6105         tests/sh.test, tests/tagdemo-shared-exec.test,
6106         tests/tagdemo-shared-make.test, tests/tagdemo-static-exec.test,
6107         tests/tagdemo-static-make.test, tests/tagdemo-undef-exec.test,
6108         tests/tagdemo-undef-make.test, tests/tagtrace.test: Adjust.
6109
6110 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
6111
6112         maint: calculate required mkinstalldirs calls during `make install'.
6113
6114         * Makefile.am (install-data-local): Make sure all destination
6115         directories are in place before copying files there, without
6116         hardcoding them.
6117
6118 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
6119
6120         maint: substitute static directory names.
6121
6122         By substituting just the directory name as passed to the macro,
6123         aux_dir can be used with or without $srcdir prefix, which is
6124         more flexible, and always means the same thing in each file,
6125         rather than sometimes being a directory name, sometimes relative
6126         to $top_srcdir.
6127         * configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR)
6128         (LT_CONFIG_LTDL_DIR): Don't force config.status substitutions
6129         with unexpanded shell variables.
6130         * Makefile.am, tests/defs.m4sh: Adjust.
6131
6132 2011-11-07  Peter Rosin  <peda@lysator.liu.se>
6133
6134         libtoolize: fix spelling nit.
6135
6136         * libtoolize (M4SH_GETOPTS): Fix spelling nit.
6137
6138 2011-11-07  Gary V. Vaughan  <gary@gnu.org>
6139
6140         tests: fix parsing of configure output by pic_flag.at.
6141
6142         Close http://debbugs.gnu.org/9962.
6143         * tests/pic_flag.at (LT_AT_CONFIGURE): Make sure to configure
6144         with --disable-silent-rules so that the full output parsed by
6145         the rest of the test is available.
6146         Reported by Roumen Petrov.
6147
6148 2011-11-07  Gary V. Vaughan  <gary@gnu.org>
6149
6150         libtoolize: rename `--subproject' option, and make it work.
6151
6152         * libtoolize (M4SH_GETOPTS): Remove `--standalone', which never
6153         worked, and add `--subproject' which sets ltdl_mode correctly.
6154
6155 2011-11-05  Gary V. Vaughan  <gary@gnu.org>
6156
6157         libtoolize: fix a scoping bug in func_aclocal_update_check.
6158
6159         libtoolize.m4sh (func_aclocal_update_check): This body of this
6160         function used a global variable set by the outer loop of the
6161         caller. Fix to Use the function argument correctly.
6162
6163 2011-11-05  Gary V. Vaughan  <gary@gnu.org>
6164
6165         maint: rename the debug shell command variable to `debug_cmd'.
6166
6167         Not only does it make more sense, it also matches bootstrap and
6168         others.
6169         * libtoolize.m4sh, libltdl/config/ltmain.m4sh,
6170         libltdl/config/getopt.m4sh, tests/defs.m4sh (opt_debug): Rename
6171         to debug_cmd.
6172
6173 2011-11-05  Gary V. Vaughan  <gary@gnu.org>
6174
6175         maint: dynamically strip unused scripts from libltdl Makefile.
6176
6177         * configure.ac (pkgaux_scripts): Centrally maintain the complete
6178         list of aux scripts required to build libltdl, and which need to
6179         be installed by libtoolize --ltdl, and consequently need to be
6180         placed in $pkgdatadir by make install.
6181         * Makefile.am (libltdl/stamp.mk): Improved to strip the unused
6182         scripts not listed in pkgaux_scripts without the need for manual
6183         synchronisation.
6184         (auxexefiles): Removed. Replaced by new pkgaux_scripts
6185         substitution.
6186         (install-data-local): Adjust.
6187
6188 2011-11-05  Gary V. Vaughan  <gary@gnu.org>
6189
6190         build: substitute paths into defs.m4sh instead of recalculating.
6191
6192         * Makefile.am (configure_edit): Add substitutions for aux_dir,
6193         macro_dir and srcdir.
6194         * tests/defs.m4sh: Don't recalculate srcdir.
6195         (aux_dir, macro_dir, srcdir): Convert to absolute paths.
6196
6197 2011-11-05  Gary V. Vaughan  <gary@gnu.org>
6198
6199         build: support AM_SILENT_RULES
6200
6201         * configure.ac: Add AM_SILENT_RULES.
6202         * libltdl/configure.ac: Ditto, but only if defined.
6203         * Makefile.am (.version, ChangeLog, README, doc/notes.txt)
6204         (libtool, libtoolize, libtoolize.in, libltdl/Makefile.am)
6205         (libltdl/stamp-mk, m4/ltversion.m4, tests/atconfig, tests/defs)
6206         (tests/defs.in, tests/package.m4): Output an AM_SILENT_RULES-like
6207         GEN when V==0.
6208         * libltdl/Makfile.inc (libltdl/argz.h): Ditto.
6209
6210 2011-10-31  Gary V. Vaughan  <gary@gnu.org>
6211
6212         maint: add autobuild prerequisite only if autobuild.m4 is absent.
6213
6214         * bootstrap (func_require_autobuild_buildreq): Skip if autobuild.m4
6215         is already present.
6216         * bootstrap.conf (require_autobuild_bulidreq): No need to set this
6217         specially any more.
6218
6219 2011-10-31  Gary V. Vaughan  <gary@gnu.org>
6220
6221         maint: ensure bootstrap runs from dist tarball.
6222
6223         * bootstrap (func_gnulib_tool_copy_file): When gnulib-tool is
6224         not available, check that there is a copy of the file from a
6225         previous run available before bailing out with a diagnostic.
6226         (func_install_gnulib_non_module_files): Don't diagnose missing
6227         files explicitly - func_gnulib_tool_copy_file takes care of it
6228         now.
6229         (func_require_checkout_only_file): In the diagnostic for
6230         not being in a source-controlled tree, note that `--force' must
6231         be used to rebootstrap.
6232         (func_require_gnulib_files_already_present): Removed.  All the
6233         necessary checks are correctly performed in
6234         func_gnulib_tool_copy_file withot resorting to heuristics.
6235         (func_require_gnulib_mk): Don't continue to try to access
6236         gnulib-cache.m4 after discovering we're running from a dist
6237         tarball.
6238         (func_require_dotgitmodules_parameters): Skip if .gitmodules
6239         file is missing and git binary is not available.
6240         * bootstrap.conf (checkout_only_file): Set to HACKING, which is
6241         a non-distributed file.
6242         (libtool_cleanup_empty_dirs): Don't print spurious errors when
6243         trying to delete gnulib-tool droppings, in case gnulib-tool is
6244         not available on this run.
6245
6246 2011-10-31  Gary V. Vaughan  <gary@gnu.org>
6247
6248         tests: add a keyword `expensive' to very long running tests.
6249
6250         * tests/cmdline_wrap.at, tests/stresstest.at (AT_KEYWORDS): Add
6251         `expensive'.
6252         * NEWS: Updated.
6253
6254 2011-10-31  Gary V. Vaughan  <gary@gnu.org>
6255
6256         libtoolize: fix some long-standing sed substitution bugs
6257
6258         * libtoolize.m4sh (func_fixup_Makefile): `\\\\\$' in a " quoted
6259         script that is evaluated twice before execution becomes a `\$',
6260         which sed interprets as a literal $.  The script will then delete
6261         any lines with a first non-whitespace character of `$'. Instead
6262         use `\\\\$' in single quotes, which sed eventually receives as
6263         `\\$' and correctly interprets as part of an instruction to
6264         delete otherwise empty lines ending with a `\'.
6265         Additionally the rest of the same sed script is no longer
6266         applied to comment lines to avoid munging the copyright header
6267         among others.
6268         * NEWS: Updated.
6269
6270 2011-10-27  Gary V. Vaughan  <gary@gnu.org>
6271
6272         maint: use gnulib's gitlog-to-changelog instead of a ChangeLog file.
6273
6274         * ChangeLog: Removed.
6275         * HACKING (Editing 'ChangeLog'): Removed. Renumbered other sections to
6276         compensate.
6277         * bootstrap.conf (gnulib_modules): Add gitlog-to-changelog.
6278         * Makefile.am (ChangeLog): Generate the ChangeLog for 2011...
6279         (dist-hook): ...from the output of `git log' before rolling a
6280         distribution tarball.
6281
6282 2011-10-27  Gary V. Vaughan  <gary@gnu.org>
6283
6284         maint: use gnulib's git-version-gen instead of mkstamp.
6285
6286         * libltdl/config/mkstamp: File removed.
6287         * bootstrap.conf (gnulib_modules): Add git-version-gen.
6288         * configure.ac (AC_INIT, package_revision): Use git-version-gen to
6289         calculate version number.
6290         (TIMESTAMP): Removed.
6291         * libtoolize.m4sh, libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
6292         (TIMESTAMP): Ditto.
6293         * Makefile.am (TIMESTAMP): Ditto.
6294         (MKSTAMP): Renamed from this...
6295         (git_version_gen): ...to this. Set revision here.  An alpha is now a
6296         release with an odd micro relase number.
6297         (rebuild): Don't reset revision here.
6298         (build_scripts): Remove mkstamp, add git-version-gen.
6299         (EXTRA_DIST, BUILT_SOURCES): Add .version.
6300         (libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4, tests/package.m4):
6301         Don't depend on configure.ac or ChangeLog to determine when the
6302         version number has reved, use .version directly.
6303         (.version): Flush most recent configure calculated VERSION to disk.
6304         (dist-hook): Flush current VERSION to disk at dist time.
6305         (dotserial): Distributed file to cache the serial number for
6306         when git is not available to recalculate it when building from a
6307         release tarball.
6308         (dist-hook): Make sure .serial is created.
6309         (libltdl/config/ltversion.m4): Use .serial when it is present
6310         (in a dist tarball) or calculate with git otherwise (in a git
6311         working directory).
6312         (EXTRA_DIST): Add .serial file.
6313
6314 2011-10-27  Gary V. Vaughan  <gary@gnu.org>
6315
6316         maint: use gnulib's maint.mk and support scripts release procedure.
6317
6318         * Makefile.maint: Removed.
6319         * configure.ac (LASTRELEASE, lt_major, lt_minor, lt_micro, lt_alpha):
6320         All removed. Makefile.maint was the only client.
6321         * HACKING (Release Procedure): Removed.
6322         * bootstrap.conf (gnulib_modules): Add announce-gen,
6323         do-release-commit-and-tag, gendocs, gnu-web-doc-update, gnupload and
6324         readme-release.
6325         * cfg.mk (manual_title): Set it for web-manual rule.
6326         (announcement_Cc_): Release announcement email addresses.
6327         * Makefile.am (build_scripts): Add to EXTRA_DIST additional files
6328         imported from gnulib for maint.mk release procedure.
6329         * NEWS: Updated.
6330
6331 2011-10-24  Gary V. Vaughan  <gary@gnu.org>
6332
6333         tests: ensure VPATH autom4te search path can find autotests.
6334
6335         * Makefile.am (tests/testsuite): Passing only $(srcdir) include path
6336         to autom4te is unable to find tests/package.m4, and passing only
6337         $(srcdir)/tests breaks VPATH build searches for TESTSUITE_AT files,
6338         which are relative to $(srcdir)... so we pass both!
6339         * NEWS: Updated.
6340         Reported by Bob Friesenhahn.
6341
6342 2011-10-24  Karl Berry  <karl@gnu.org>
6343
6344         doc: modernize libtool.texi.
6345
6346         * libtool.texi (@copying): Use this instead of @ifnottex; format for
6347         Texinfo; eliminate obsolete paragraph about TeX; use @insertcopying
6348         instead of duplicating text.
6349         (@syncodeindex): Move all to the Texinfo header, where they belong.
6350         (@dircategory): Use "Software development" instead of "GNU programming
6351         tools", for consistency; and align individual entries to avoid
6352         multiple lines; and move to after the copyright message.
6353
6354 2011-10-24  Gary V. Vaughan  <gary@gnu.org>
6355
6356         maint: don't make autobuild a hard bootstrap requirement.
6357
6358         * bootstrap.conf (require_autobuild_buildreq): Reset this to ':' so
6359         that bootstrap doesn't auto-add autobuild to $buildreq.
6360
6361 2011-10-23  Gary V. Vaughan  <gary@gnu.org>
6362
6363         maint: use gnulib's maintainer-makefile module.
6364
6365         * bootstrap.conf (gnulib_modules): Add maintainer-makefile.
6366         (gnulib_tool_options): Add --avoid=dummy now that we have a real
6367         module to import.
6368         * cfg.mk: New file. Customize maint.mk for Libtool.
6369         * Makefile.am (EXTRA_DIST): Add GNUmakefile, cfg.mk and maint.mk.
6370
6371 2011-10-23  Gary V. Vaughan  <gary@gnu.org>
6372
6373         maint: use gnulib's canonical fdl.texi.
6374
6375         * doc/fdl.texi: Removed.
6376         * bootstrap.conf (gnulib_non_module_files): Add fdl.texi.
6377
6378 2011-10-23  Gary V. Vaughan  <gary@gnu.org>
6379
6380         maint: use gnulib's canonical COPYING files.
6381
6382         * COPYING, libltdl/COPYING.LIB: Removed.
6383         * bootstrap.conf (gnulib_non_module_files): Add COPYING.
6384         (libtool_add_libltdl_copying): New func_gnulib_tool hook
6385         function to copy the canonical LGPL2 COPYING file from gnulib at
6386         bootstrap.
6387
6388 2011-10-23  Gary V. Vaughan  <gary@gnu.org>
6389
6390         maint: use gnulib's (pending saner) bootstrap script.
6391
6392         * bootstrap: Replaced with gnulib script.
6393         * bootstrap.conf: New file with Libtool specific bootstrap
6394         configuration.
6395         * Makefile.am (EXTRA_DIST): Add bootstrap.conf.
6396
6397 2011-10-23  Gary V. Vaughan  <gary@gnu.org>
6398
6399         maint: add gnulib submodule.
6400
6401         * configure.ac (GL_INIT, GL_EARLY): Initialise gnulib, and expand
6402         its configure time checks.
6403         * .gitmodules (gnulib): New file with configuration for our
6404         gnulib git submodule.
6405
6406 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
6407
6408         maint: tidy, sort and consolidate .gitignore files.
6409
6410         The `gnulib-tool' and gnulib `bootstrap' scripts  maintain
6411         `.gitignore' files in asciibetical order, so reorder them now
6412         to avoid spurious patches later.
6413
6414         Take advantage of putting recursive file ignore matches into
6415         `$top_srcdir/.gitignore' and remove repetitions from other
6416         `.gitignore' files.
6417
6418 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
6419
6420         maint: don't run help2man on programs not-yet-built.
6421
6422         * Makefile.am (doc/libtool.1, doc/libtoolize.1): Added a
6423         comment about why the dependencies here have to be a mite
6424         bizarre.
6425
6426 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
6427
6428         tests: remove unused `aux_dir' variable from `getopt-m4sh.test'.
6429
6430         * tests/getopt-m4sh.at (aux_dir): Remove unused variable.
6431
6432 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
6433
6434         tests: DRYing out `tests/sh.test'.
6435
6436         * Makefile.am (libtool_m4): Canonical location of libtool.m4 file.
6437         (lt_aclocal_m4_deps): Use it.
6438
6439 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
6440
6441         maint: pass directory declarations in configure.ac into Makefile.
6442
6443         * configure.ac (AC_CONFIG_AUX_DIR, LT_CONFIG_LTDL_DIR)
6444         (AC_CONFIG_MACRO_DIR): Append code to these functions to
6445         capture and propagate their directory arguments to Makefile.
6446         * Makefile.am (aux_dir, ltdl_dir, macro_dir): Remove declarations.
6447         * bootstrap (my_sed_trace): Also capture LT_CONFIG_LTDL_DIR into
6448         `$ltdl_dir'.
6449         <Makefile>: Output the extracted values of `aux_dir', `ltdl_dir'
6450         and `macro_dir' at the top of the quick'n'dirty bootstrap
6451         Makefile.
6452
6453 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
6454
6455         maint: factor out ltmain.sh variable deletion.
6456
6457         * Makefile.am (ltmain_sh_edit): Expand upon bootstrap edit by
6458         adding the extra line to delete boilerplate variable settings
6459         from libltdl/config/general.m4sh that don't apply here.
6460         (libltdl/config/ltmain.sh): Use it.
6461
6462 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
6463
6464         maint: DRYing out `Makefile.am' file paths.
6465
6466         * Makefile.am (aux_dir, macro_dir): Include `$(srcdir)' in
6467         declaration. Adjust all references.
6468         (doc_dir, ltdl_dir, m4sh_dir, tests_dir): New single location
6469         to hold directory paths, all including `$(srcdir)', to reduce
6470         typing.
6471         (LT_M4SH): Use `$m4sh_dir' as include directory.
6472         (defs): This one is for a file in the build-tree, so no
6473         leading `$(srcdir)'.
6474
6475 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
6476
6477         CLEANUP: fix error from pushing too far up the branch.
6478
6479         * Makefile.am (install-data-local): Undo character transposition
6480         from too early push of untested v2.4-17-gaf74d58.
6481         * ChangeLog (2010-09-16): Remove spurious entry.
6482
6483 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
6484
6485         maint: use macro_dir consistently in all files.
6486
6487         * Makefile.am: Replace all uses of m4dir with macrodir to
6488         match AC_CONFIG_MACRO_DIR.
6489         * libltdl/config/libtoolize.m4sh: Replace all uses of macrodir
6490         with macro_dir.
6491         * tests/defs.m4sh, tests/sh.test: Likewise.
6492
6493 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
6494
6495         maint: use aux_dir consistently in all files.
6496
6497         * Makefile.am, Makefile.maint: Replace all uses of auxdir
6498         with aux_dir to match AC_CONFIG_AUX_DIR.
6499         * libltdl/config/libtoolize.m4sh: Likewise.
6500         * tests/defs.m4sh, tests/getopt-m4sh.at: Likewise.
6501
6502 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
6503
6504         Makefile: try to be robust against shell meta-chars in filenames.
6505
6506         * Makefile.am: In each rule body, unless a make variable needs
6507         to be seen as multiple words by the shell (for word-splitting
6508         loops, or because it contains several commands), quote it. Use
6509         single quotes unless the shell needs to perform variable inter-
6510         polation, in which case use double quotes.
6511
6512 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
6513
6514         maint: let make employ user's `SED' setting.
6515
6516         * Makefile.am: Replace hard-coded `sed' with `$(SED)' through-
6517         out.
6518
6519 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
6520
6521         maint: simplify and improve safety of bootstrap process.
6522
6523         * Makefile.am (bootstrap_files): List files that need to be
6524         generated at bootstrap time before `./configure && make' can
6525         work.  It turns out that this is considerably fewer files than we
6526         had thought necessary previously.
6527         (bootstrap-deps-prep): Ensure minimum set of required substitution
6528         variables are non-empty.
6529         (bootstrap-deps): Depend on `bootstrap' files.
6530         * bootstrap (Generate bootstrap dependencies): Now that
6531         `Makefile.am' is entirely responsible for rebuilding files at
6532         bootstrap time, we need only specify the new `bootstrap-deps'
6533         target, and supply values for the substitutions checked by
6534         `bootstrap-deps-prep'.
6535         * configure.ac (AC_CONFIG_SRCDIR): `libtoolize.in' is not here yet
6536         right after running `bootstrap'.  So rely on the presence of
6537         `libltdl/config/libtoolize.m4sh', which is always there.
6538
6539 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
6540
6541         build: eliminate superfluous temporary files from `Makefile.am'.
6542
6543         * Makefile.am (CLEANFILES): Remove temporary file entries.
6544         (libtoolize.in, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
6545         (tests/defs, tests/testsuite): Factor away temporary files.
6546
6547 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
6548
6549         build: eliminate `ltmain.in' and `libtoolize.in' intermediate files.
6550
6551         * Makefile.am (libltdl/config/ltmain.sh, libtoolize.in): Pipe
6552         the output of `$(LT_M4SH)' directly into `$(bootstrap_edit)' to
6553         avoid use of superfluous intermediate file.
6554
6555 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
6556
6557         build: don't hardcode repeated long paths in Makefile rules.
6558
6559         According to the DRY principle, scattering several copies of
6560         something across a file or project leads to pain.  Let's not
6561         do that!
6562         * Makefile.am (Makefile_in, Makefile_inc, defs_in, defs_m4sh),
6563         (libtoolize_in, ltmain_m4sh, ltversion_in): New variables to
6564         hold the location of important files and targets.
6565         (EXTRA_DIST): Add the distributed ones by variable.
6566         (libtoolize, libltdl/Makefile.am, libltdl/m4/ltversion.m4)
6567         (libltdl/config/ltmain.sh, libltdl/stamp-mk, tests/defs)
6568         (tests/defs.in): Use the new variables to reduce noise and
6569         repetition.
6570
6571 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
6572
6573         build: make better use of automatic variables in `Makefile.am'.
6574
6575         * Makefile.am (libtoolize, libtoolize.in, libltdl/Makefile.am)
6576         (libltdl/config/mkstamp, libltdl/config/ltmain.m4sh)
6577         (libltdl/m4/ltversion.m4, tests/testsuite, tests/defs.in):
6578         Make better use of automatic variables.
6579
6580 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
6581
6582         build: name temporary files in `Makefile.am' consistently.
6583
6584         Sadly, we still have to jump through hoops for MICROS~1's very
6585         old, very broken 8.3 naming convention, so we have to be careful
6586         to be unique in the first 8 letters, and not to use two periods
6587         in a filename, otherwise we could use the much more elegent
6588         `temporary files use "$@T"' idiom:
6589         * Makefile.am (libltdl/m4/ltversion.m4): Rename temporary file
6590         to `ltversion.tmp'.
6591         (libltdl/config/ltmain.sh): Rename temporary file to
6592         `libltdl/config/ltmain.tmp'.
6593         (libtoolize): Rename temporary file to `libtoolize.tmp'.
6594         (tests/defs): Rename temporary file to `tests/defs.tmp'
6595         (tests/testsuite): Rename temporary file to `tests/testsuite.tmp'.
6596         (CLEANFILES): Append temporary files as we create rules that
6597         use them.
6598
6599 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
6600
6601         build: factor Makefile.am `m4sh' invocations to LT_M4SH.
6602
6603         * Makefile.am (LT_M4SH): Now that all directories are listed as
6604         fully qualified paths, the search path argument to M4SH is always
6605         the same, so factor it out into a variable.  Adjust all callers.
6606
6607 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
6608
6609         build: avoid unnecessary directory changes in Makefile rules.
6610
6611         * Makefile.am (doc/notes.txt, libltdl/m4/ltversion.m4,
6612         (libltdl/config/ltmain.m4sh, libtoolize.in, libltdl/Makefile.am)
6613         (libltdl/config/mkstamp, tests/testsuite, tests/defs.in): Avoid
6614         unnecessary `cd' commands by using fully qualified paths to files
6615         outside of current directory.
6616
6617 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
6618
6619         build: compare `revision' rather than `correctver' in Makefile.am.
6620
6621         * Makefile.am (rebuild): Set the shell variable `revision' rather
6622         than `correctver' for clarity of purpose.
6623         (bootstrap_edit, libltdl/config/ltmain.sh): Adjust.
6624         (libltdl/m4/ltversion.m4): Likewise, and alse, instead of munging
6625         the serial number comment line with set, extract `macro_version'
6626         from this file, and compare it directly with `revision'.
6627         (libtool): Likewise for `package_revision'.
6628
6629 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
6630
6631         build: avoid spurious bootstrap_edit call.
6632
6633         * Makefile.am (tests/package.m4): @FOO@ substitutions have already
6634         been made by the time Makefile.am has been transformed into Makefile,
6635         so don't try to rerun the substitutions manually with
6636         $(bootstrap_edit) after the fact.
6637
6638 2011-10-18  Gary V. Vaughan  <gary@gnu.org>
6639
6640         Post-release administrivia.
6641
6642         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6643         numbers.
6644         * NEWS: Add header line for next release.
6645
6646 2011-10-18  Gary V. Vaughan  <gary@gnu.org>
6647
6648         Release 2.4.2.
6649
6650         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6651         numbers.
6652         * NEWS: Update version number.
6653
6654 2011-10-17  Gary V. Vaughan  <gary@gnu.org>
6655
6656         Replace leading spaces with tabs.
6657         * libltdl/m4/libtool.m4, libltdl/config/ltmain.m4sh: Replace leading
6658         spaces in source code with tabs to match surrounding code.
6659         Reported by Peter Rosin.
6660
6661         Make a note to use gnu/linux for version_type.
6662         * libltdl/m4/libtool.m4 (version_type): Add a comment to change
6663         version_type setting from 'linux' to 'gnu/linux' during the next
6664         destabilising code refactoring.
6665         * libltdl/config/ltmain.m4sh: ditto.
6666         Requested by Richard Stallman.
6667
6668 2011-10-04  Bart Van Assche  <bvanassche@acm.org>
6669
6670         Typo fix - change func_apped into func_append
6671
6672         * libltdl/config/ltmain.m4sh: Fix typo.
6673
6674 2011-10-02  Xin LI  <d@delphij.net>
6675
6676         Avoid problems when FreeBSD goes to version 10.
6677
6678         * libltdl/m4/libtool.m4: Remove mentions of freebsd1. Use dots
6679         for FreeBSD 2 and 3 detection to avoid future problems
6680         * libltdl/m4/ltmain.m4sh: ditto.
6681
6682 2011-09-25  Cristophe Jarry  <christophe.jarry@ouvaton.org>
6683
6684         Avoid mentioning "Linux", use "GNU/Linux", if appropriate.
6685         * TODO: Don't use bare "Linux".
6686         * doc/libtool.texi: ditto.
6687         * doc/notes.texi: ditto.
6688         * libltdl/README: ditto.
6689         * libltdl/m4/libtool.m4: ditto.
6690
6691 2011-09-01  Peter O'Gorman  <peter@pogma.com>
6692
6693         Add flag to inhibit warnings.
6694
6695         * libltdl/config/ltmain.m4sh: Add --no-warn, --no-warning flags.
6696         Reported by John David Anglin.
6697
6698 2011-04-10  Kurt Roeckx  <kurt@roeckx.be>
6699
6700         tagdemo: do not rely on picking up symbols from indirect deps.
6701
6702         * tests/tagdemo/Makefile.am: Link to all libraries that the
6703         demo application uses.
6704
6705 2011-04-10  Svante Signell  <srs@kth.se>  (tiny change)
6706
6707         Set shlibpath_overrides_runpath for the Hurd.
6708
6709         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [gnu]
6710         <shlibpath_overrides_runpath>: Set to no.
6711         * THANKS: Update.
6712
6713 2011-03-22  Justin Lecher  <jlec@gentoo.org>  (tiny change)
6714             Rhys Ulerich  <rhys.ulerich@gmail.com>
6715
6716         Don't filter OPENMP flags (-openmp & -fopenmp) from linker lines.
6717         If -fopenmp if passed to gcc during linking, it will take care to
6718         add all necessary libs to link correctly for openmp support.
6719         Currently libtool filters those flags, similar as it was the
6720         case with the threading flags. This change handles the situation
6721         for the openmp support similar as before the thread support
6722         was fixed.
6723           http://lists.gnu.org/archive/html/bug-libtool/2010-12/msg00009.html
6724           http://lists.gnu.org/archive/html/bug-libtool/2011-03/msg00014.html
6725         * libltdl/config/ltmain.m4sh (func_mode_link): Treat OpenMP
6726         flags like pthreads flags.
6727
6728 2011-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6729
6730         libtoolize: detect -I<dir> (without space) in ACLOCAL_AMFLAGS.
6731
6732         * libtoolize.m4sh (func_scan_files): Also accept -I<dir>
6733         (without intervening space) in ACLOCAL_AMFLAGS.
6734         * THANKS: Update.
6735         Report from Jan Engelhardt.
6736
6737 2011-03-05  Peter O'Gorman  <peter@pogma.com>
6738
6739         On Mac OS X try .dylib as well as .so with lt_dlopenext
6740
6741         * libltdl/m4/ltdl.m4: Define extra extension if module extension
6742         differs from shared lib extension.
6743         * libltdl/ltdl.c: Use it.
6744         * tests/darwin.at: Test it.
6745         * NEWS: Announce it.
6746         Reported by Hans Aberg, Michael Ellis, and others.
6747
6748 2011-02-14  Peter O'Gorman  <peter@pogma.com>
6749
6750         Install ltmain.sh without execute bit set.
6751
6752         * Makefile.am: change install rule for ltmain.sh
6753         Reported by Křištof Želechovski.
6754
6755 2011-02-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6756
6757         docs: fix copyright years in PDF version of the manual.
6758
6759         * doc/libtool.texi: Fix copyright years.
6760
6761 2011-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6762
6763         fix typo in ChangeLog
6764
6765 2011-02-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6766
6767         Fix LD setting for 64-bit Solaris 2/x86.
6768
6769         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [*-*-solaris*):
6770         Determine GNU ld options for 64-bit Solaris 2/x86.  Detect gld
6771         2.21 _sol2 emulations.
6772
6773 2011-01-27  Peter O'Gorman  <peter@pogma.com>
6774
6775         Don't loop through wrapper script arguments unnecessarily.
6776
6777         * libltdl/m4/ltmain.m4sh: Check that argv contains " --lt-"
6778         before looping to remove wrapper script targetted arguments.
6779         Performance regression reported by Dan McGee.
6780
6781 2011-01-20  Gerald Pfeifer  <gerald@pfeifer.com>  (tiny change)
6782
6783         Remove support for FreeBSD 1.x.
6784
6785         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
6786         (_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which
6787         soon would incorrectly match FreeBSD 10.0.
6788         * NEWS, THANKS: Update.
6789
6790 2011-01-19  Peter O'Gorman  <peter@pogma.com>
6791
6792         Don't let verbose linker messages influence test results.
6793
6794         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Ignore
6795         stderr during tests for -flag unless it contains "flag".
6796         * tests/darwin.at: Add test.
6797         Reported by Jeremy Huddleston and also by David Fang.
6798
6799 2011-01-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>  (tiny change)
6800
6801         Fix relink mode to use absolute path if hardcode_minus_L.
6802
6803         * libltdl/config/ltmain.m4sh (func_mode_link): Use absolute path
6804         when hardcoding with -L.
6805
6806 2011-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6807
6808         Fix $wl setting for Solaris Studio 12.2 f90 on GNU/Linux.
6809
6810         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]
6811         <lt_prog_compiler_wl>: Set to '-Qoption ld ' if we
6812         detect Sun Fortran version 8.4 or newer.
6813         Report by Terry Dontje.
6814
6815 2011-01-07  Peter Rosin  <peda@lysator.liu.se>
6816
6817         Convert file name to toolchain format when blessing archives.
6818
6819         * libltdl/config/ltmain.m4sh (func_mode_install): When executing
6820         old_postinstall_cmds and old_archive_cmds, convert $oldlib to a
6821         format appropriate for the tool and provide that in $tool_oldlib.
6822         Also use $tool_oldlib when stripping old libraries.
6823         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Use $tool_oldlib
6824         as argument to $RANLIB.
6825         * THANKS: Update.
6826         Report by Dan McMahill.
6827
6828 2011-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6829
6830         Bump copyright years.
6831
6832         * ChangeLog.2010: New, rotated from ...
6833         * ChangeLog: ... here.
6834         * Makefile.am (EXTRA_DIST): Add ChangeLog.2010.
6835         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
6836         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
6837         * libtoolize.m4sh: Likewise.
6838         * doc/libtool.texi: Likewise.
6839
6840 2010-12-20  Ian Lance Taylor  <iant@google.com>
6841
6842         * libltdl/m4/libtool.m4 (LT_LANG): Add Go.
6843         (AC_PROG_GO): Provide.
6844         (_LT_SYS_HIDDEN_LIBDEPS): Add Go case.
6845         (_LT_LANG_GO_CONFIG): Define.
6846         (LT_PROG_GO): Define.
6847         (AC_PROG_GO): Define if not defined.
6848         * libltdl/config/ltmain.m4sh: Match *.go.
6849         * doc/libtool.texi (LT_INIT): Mention Go.
6850         (Tags): Mention Go.
6851         * configure.ac: Enable Go.
6852         * NEWS: Update.
6853
6854 2010-12-20  Brice De Bruyne  <bricedb@gmail.com>  (tiny change)
6855
6856         Also turn off -fuse-linker-plugin for postdep_objects computation.
6857         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Add
6858         -fno-use-linker-plugin to temporary compile flags if necessary,
6859         to fix C++ postdep_objects setting with -flto
6860         -fuse-linker-plugin.
6861         * NEWS, THANKS: Update.
6862
6863 2010-12-20  KO Myung-Hun  <komh@chollian.net>  (tiny change)
6864
6865         Set command line length limit for OS/2.
6866         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [os2]
6867         <lt_cv_sys_max_cmd_len>: Set to 8192 to avoid long test.
6868
6869 2010-12-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6870
6871         Fix PIC flags with mpif77 using ifort on GNU/Linux.
6872         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
6873         Match Intel compiler also using $CC -V output, to avoid false
6874         negatives with compiler drivers like mpif77.
6875         Report by Christian Rössel.
6876
6877 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6878
6879         Fix PIC flags with MPI wrappers using Portland on GNU/Linux.
6880         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
6881         Match Portland compilers also using $CC -V output, to avoid
6882         false negatives with MPI compiler drivers.
6883         Report by Christian Rössel.
6884
6885         * libltdl/m4/libtool.m4 (_LT_SETUP): Fix quoting for
6886         PATH_SEPARATOR.
6887
6888 2010-12-15  KO Myung-Hun  <komh@chollian.net>  (tiny change)
6889             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6890
6891         Fix PATH_SEPARATOR handling for OS/2.
6892         * Makefile.am (update_mans): Quote $(PATH_SEPARATOR).
6893         * libltdl/m4/libtool.m4 (_LT_SETUP): Add _LT_DECL for
6894         PATH_SEPARATOR.
6895         * libltdl/config/general.m4sh: Use PATH_SEPARATOR when computing
6896         $progpath.
6897         * THANKS: Update.
6898
6899 2010-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6900
6901         Fix nvcc PIC setting on darwin.
6902         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
6903         <lt_prog_compiler_pic>: Prepend -Xcompiler to nonempty variable
6904         setting rather than hard-coding -Xcompiler -fPIC, for darwin.
6905         * NEWS, THANKS: Update.
6906         Report by Paweł Daniluk.
6907
6908         Honor $AUTOCONF, $AUTOMAKE in --help output.
6909         * libltdl/config/getopt.m4sh (func_help): Use $AUTOCONF and
6910         $AUTOMAKE if set, for --version outout.
6911
6912         docs: Libtool configuration diagram.
6913         * doc/libtool.texi (Integrating libtool): Add diagrams
6914         explaining the dependencies between Libtool files.
6915         Suggestion by Ethan Mallove.
6916
6917 2010-11-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6918
6919         Eliminate hardcode_libdir_flag_spec_ld tag variable.
6920         * libltdl/config/ltmain.m4sh (func_mode_link): Set $wl to empty
6921         if $LD is used for creating shared libraries.  Do not use
6922         hardcode_libdir_flag_spec_ld any more.
6923         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
6924         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG, _LT_SYS_DYNAMIC_LINKER)
6925         <hardcode_libdir_flag_spec_ld>: Remove all instances of the tag
6926         variable.
6927         (_LT_LINKER_SHLIBS) [linux, xlf] <hardcode_libdir_flag_spec>:
6928         Set variable, including ${wl}.  Fixes hardcoding in programs
6929         created by XL Fortran on GNU/Linux.
6930         * NEWS, THANKS: Update.
6931         Report by Paul H. Hargrove.
6932
6933         Rebuild menus in the manual.
6934         * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
6935         Thanks to Ian Lance Taylor for the suggestion.
6936
6937 2010-11-07  Ollie Wild  <aaw@google.com>
6938
6939         Modify --with-pic to support per-package configurations.
6940         * libltdl/m4/libtool.m4:  Modify --with-pic to accept a list of
6941         package names.  Modelled off --enable-shared.
6942         * tests/with-pic.at: New test.
6943         * Makefile.am (TESTSUITE_AT): Add tests/with-pic.at.
6944         * doc/libtool.texi (LT_INIT): Enhance documentation of
6945         --with-pic configure flag.
6946         * NEWS (New features): Mention that --with-pic now accepts a
6947         comma-separated list of package names.
6948
6949 2010-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6950
6951         Fix cwrapper test failure with --disable-static.
6952         * tests/cwrapper.at (cwrapper and installed shared libraries):
6953         Compile program source without libtool, so we can be sure a
6954         non-PIC object will be created.
6955
6956 2010-11-01  Peter Rosin  <peda@lysator.liu.se>
6957
6958         docs: Windows DLLs and headers.
6959         * doc/libtool.texi (Platform quirks): Add new subsection
6960         'Windows DLLs'.
6961
6962         * doc/libtool.texi (Platform quirks): Fix typo.
6963
6964 2010-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6965
6966         docs: mention shell requirement for libtool script.
6967         * doc/libtool.texi (Invoking libtool): Document that the shell
6968         used to invoke libtool needs to be the same used to configure
6969         it.
6970         * THANKS: Update.
6971         Report by Markus Duft.
6972
6973 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
6974
6975         libtool: remove redundant unsubstituted shell var defaults.
6976         * Makefile.am (libltdl/config/ltmain.sh): Boilerplate code from
6977         libltdl/config/general.m4 sets some default shell variables
6978         designed to be substituted by `$(configure_edit)'.  Actually,
6979         `libtool' uses the language tag values for those variables, and
6980         `ltmain.m4sh' is not passed through `$(configure_edit)', so they
6981         are just noise.  Edit them out at bootstrap time.
6982
6983 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
6984
6985         maint: don't leak developer GREP, SED etc into distribution file.
6986         * Makefile.am: Having rearranged the file, now apply the actual
6987         changes to follow-up.
6988         (edit): Split into two parts...
6989         (bootstrap_edit): ...substitutions that should happen at bootstrap
6990         time...
6991         (configure_edit): ...and substitutions that should not happen until
6992         configure time.
6993         * Makefile.am (libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh)
6994         (libtoolize.in, tests/package.m4): Use bootstrap_edit.
6995         (libtoolize, tests/defs): Use configure_edit.
6996         * HACKING (Release Procedure): Remove the note to workaround the
6997         bug fixed by this changeset.
6998         * NEWS (Bug fixes): Mention that this bug is now fixed.
6999         Reported by Joerg Sonnenberger.
7000
7001         maint: rearrange Makefile.am in preparation for a follow-up patch.
7002         * Makefile.am (Libtool scripts.): Move this section below the
7003         `Bootstrap.' section...
7004         (libtoolize.in): ...except this one which is generated at
7005         bootstrap time, and was added into the `Bootstrap.' section.
7006         (Libltdl.): Move this section below the `Libtool scripts.'
7007         section.
7008
7009 2010-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7010
7011         Fix linking from only convenience archives with gfortran on Darwin.
7012         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Update
7013         macro comment header.
7014         [darwin, F77, FC] <compiler_needs_object>: Set to yes if
7015         whole_archive_flag_spec is nonempty.  Fixes convenience.at test
7016         suite failures with gfortran 4.2 on Darwin.
7017         * THANKS: Update.
7018         Report by Paul Laight.
7019
7020         Fix bindir check logic, and relax non-bindir case for AIX.
7021         * tests/bindir.at (bindir install tests): Rewrite checks for
7022         place of the installed shared library in two separate tests,
7023         depending on whether -bindir is supposed to have an effect or
7024         not.  In the positive case, make the test stricter so that we
7025         reject libraries in $libdir.  In the negative case, do not
7026         require a major version number in the $libdir file name, for AIX
7027         without runtimelinking.  If tmpdir creation fails, skip the
7028         test.  Use fewer bindir directory names for testing, to speed
7029         up the test.  Also mention MSVC style DLL name in comment.
7030         Report by Peter Rosin.
7031
7032         tests: remove unneeded 'bindir compile check' test.
7033         * tests/bindir.at (bindir compile check): Remove.
7034
7035 2010-10-14  Peter Rosin  <peda@lysator.liu.se>
7036
7037         tests: fix $EXEEXT typo.
7038         * tests/depdemo-relink.test (func_restore_files): Use $EXEEXT
7039         instead of $EXEXT.
7040
7041 2010-10-12  Simon Josefsson  <simon@josefsson.org>
7042             Matěj Týč <matej.tyc@gmail.com>
7043             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7044
7045         docs: improve description of -no-undefined.
7046         * doc/libtool.texi (Link mode): Fix -no-undefined description.
7047         (Inter-library dependencies): Use Windows not AIX as example
7048         system.  Clarify need for symbol resolution at library creation
7049         time.
7050
7051 2010-10-09  Paolo Bonzini  <bonzini@gnu.org>
7052
7053         Add missing sysroot resolution.
7054         * libltdl/config/ltmain.m4sh (func_mode_link): Resolve sysroot
7055         when fetching the install directory of dependent libraries.
7056         Reported by Lionel Landwerlin <llandwerlin@gmail.com>,
7057         patch by Khem Raj <raj.khem@gmail.com>.
7058         * THANKS: Reorder entries, add Khem and Lionel.
7059
7060 2010-10-07  Roumen Petrov  <bugtrack@roumenpetrov.info>
7061
7062         Add test case for 69e77671 (cwrapper PATH manipulation order)
7063         * tests/cwrapper.at: Add new test 'cwrapper and installed shared
7064         libraries.'
7065
7066 2010-10-04  Peter Rosin  <peda@lysator.liu.se>
7067
7068         cwrapper: split long lines when dumping the wrapper script.
7069         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): If
7070         the wrapper script contains long lines, split them for
7071         readability and to conform with C standards.
7072         * tests/cwrapper.at (cwrapper string length): New test, making
7073         sure we don't regress.
7074
7075         msvc: handle symbols from different files independently.
7076         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
7077         <dumpbin, lt_cv_sys_global_symbol_pipe>: Make all sections
7078         viable for symbol extraction again when the symbols from a new
7079         file starts.  Fixes tests/tagdemo-make.test for MSVC 10.
7080         * tests/dumpbin-symbols.at: New test, making sure we don't
7081         regress.
7082         * Makefile.am (TESTSUITE_AT): Update.
7083
7084 2010-09-27  Peter Rosin  <peda@lysator.liu.se>
7085
7086         tests: check if sys_lib_search_path_spec works on MSVC.
7087         * tests/search-path.at (sys_lib_search_path on w32): New test,
7088         making sure v2.2.10-207-g09142ea doesn't regress.
7089
7090         Skip need_lib_prefix.at on systems without lib prefix on libraries.
7091         * tests/need_lib_prefix.at [MSVC, OS/2]: Skip this test on
7092         systems that do not have libraries prefixed with lib.
7093
7094         tests: clean up importing and exporting on w32.
7095         Makes the touched tests pass for MSVC when DLLs are built.
7096         * tests/demo/Makefile.am, tests/pdemo/Makefile.am: Define
7097         BUILDING_LIBHELLO when building libhello.la.
7098         * tests/demo/foo.h, tests/pdemo/foo.h (nothing) <MSVC>: Export
7099         variable when building the libhello dll and import when using
7100         libhello.  For GCC and non-w32, and when building a static
7101         libhello, leave as an ordinary extern.
7102         * tests/pdemo/foo.h [Cygwin]: Remove unneeded and "dead" export
7103         and import logic (LIBFOO_DLL is always undefined).
7104         * tests/pdemo/longer_file_name_foo.c,
7105         tests/pdemo/longer_file_name_foo2.c (_LIBFOO_COMPILATION_): Not
7106         useful before, even less so now.  Removed.
7107         * tests/depdemo/l1/Makefile.am: Define BUILDING_LIBL1 when
7108         building libl1.la.
7109         * tests/depdemo/l2/Makefile.am: Define BUILDING_LIBL2 when
7110         building libl2.la.
7111         * tests/depdemo/l3/Makefile.am: Define BUILDING_LIBL3 when
7112         building libl3.la.
7113         * tests/depdemo/l4/Makefile.am: Define BUILDING_LIBL4 when
7114         building libl4.la.
7115         * tests/depdemo/l1/l1.h, tests/depdemo/l2/l2.h,
7116         tests/depdemo/l3/l3.h, tests/depdemo/l4/l4.h <MSVC>: Export
7117         variables when building the associated library dll and import
7118         when using the library.  For GCC and non-w32, and when building
7119         static libraries, leave as an ordinary extern.
7120
7121 2010-09-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7122
7123         docs: do not refer to Libtool version with dlopen functionality.
7124         * doc/libtool.texi (Dlopened modules): Remove broken reference
7125         to what should have been Libtool 0.9g.
7126         Report by Roumen Petrov.
7127
7128 2010-09-23  Peter Rosin  <peda@lysator.liu.se>
7129
7130         msvc: don't try to export import descriptors.
7131         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]
7132         [pw32, cegcc] <cl*, exclude_expsyms>: Don't export symbols in
7133         import libraries related to describing what dll(s) the import
7134         library is importing. Fixes problem in tests/demo-make.test
7135         and some other tests.
7136
7137 2010-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7138
7139         Fix regression in command-line length computation.
7140         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Use `env echo' rather
7141         than possibly-undefined func_fallback_echo, to ensure we fork
7142         and exec for this test.
7143         * NEWS: Update.
7144         Regression introduced in v2.2.6-39-g9c3d4d8.
7145
7146 2010-09-22  Gary V. Vaughan  <gary@gnu.org>
7147
7148         Post-release administrivia.
7149         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
7150         numbers to 2.4.1a.
7151         * NEWS: Add header line for next release.
7152
7153         Release 2.4.
7154         * libltdl/Makefile.inc (LTDL_VERSION_INFO): We've added the
7155         static libprefix interface, so new version-info is C+1:0:R+1.
7156         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
7157         numbers.
7158         * NEWS: Update version number.
7159
7160         manual: web-manual index.html clashes with @node Index.
7161         * doc/libtool.texi (Index): Renamed to `Combined Index'.
7162
7163         tests: ISO C++ forbids declaration of 'v1' with no type.
7164         * tests/lt_dlexit.at (lt_dlexit unloading libs): Added an
7165         explicit int type to declaration of 'v1' to prevent compilation
7166         failure with C++.
7167
7168 2010-09-22  Peter Rosin  <peda@lysator.liu.se>
7169
7170         tests: reloadable objects do not work on MSVC, SKIP test.
7171         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
7172         [cygwin, mingw, pw32, cegcc] <cl*, reload_cmds>: Indicate that
7173         reloadable objects do not work.
7174         * tests/duplicate_conv.at: Skip last test if reloadable
7175         objects do not work.
7176         * doc/libtool.texi (libtool script contents) <reload_cmds>:
7177         Document how to indicate that reloadable objects do not work.
7178
7179 2010-09-21  Peter Rosin  <peda@lysator.liu.se>
7180
7181         msvc: eliminate spaces in the library search path.
7182         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
7183         <cl*, sys_lib_search_path_spec>: The LIB path variable telling
7184         where MSVC looks for libraries is likely to contain directory
7185         names with spaces.  Convert those directory names to the short
7186         8.3 DOS form (i.e. without spaces) when storing them in
7187         sys_lib_search_path_spec, as that is a space separated variable.
7188
7189 2010-09-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7190
7191         Revert to per-language libpath computation on AIX.
7192         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Accept
7193         tagname argument.  Use global cache variable lt_cv_aix_libpath
7194         to override per-language tag variables for the libpath value.
7195         Fix the sed script to remove trailing space.
7196         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Pass tag argument to
7197         _LT_SYS_MODULE_PATH_AIX.
7198         Tracked down and reported by Rainer Tammer.
7199
7200 2010-09-21  Gary V. Vaughan  <gary@gnu.org>
7201
7202         maint: edit-readme-alpha shouldn't try to re-edit during dist.
7203         * libltdl/config/edit-readme-alpha: If README is non-writable
7204         assume that it is being run from distcheck, and skip the edit
7205         with a warning (to help diagnose cases where the heuristic is
7206         not correct).  However, if README has already been edited to
7207         the alpha text, quietly skip without an error message.
7208
7209 2010-09-20  Eric Blake  <eblake@redhat.com>
7210
7211         maint: drop autobuild requirement
7212         * HACKING: Update.
7213
7214         build: ship autobuild.m4, to reduce bootstrap requirement
7215         * libltdl/m4/.gitignore: Drop autobuild.m4.
7216         * libltdl/m4/autobuild.m4: New file, copied from autobuild.
7217         * configure.ac (AB_INIT): Unconditionally call it.
7218
7219 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
7220             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7221
7222         libltdl: Make sure preloaded symbols are declared extern "C".
7223         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Move the
7224         declaration of lt__PROGRAM__LTX_preloaded_symbols to global
7225         scope and make sure it has "C" linkage.  Makes exceptions.at
7226         succeed on MSVC.
7227
7228 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
7229
7230         tests: __declspec (dll{ex,im}port) in tests/exceptions.at
7231         * tests/exceptions.at (common.h, module.h, lib.h) [w32]: Use
7232         __declspec (dllimport) and __declspec (dllexport) instead of
7233         the less portable __attribute__ ((dllimport)) and
7234         __attribute__ ((dllexport)).  Makes the test compile on MSVC.
7235
7236 2010-09-19  Peter Rosin  <peda@lysator.liu.se>
7237
7238         tests: Import items from liba1 for MSVC.
7239         * tests/lt_dlexit.at (b1.c) [MSVC]: Import function f1 and
7240         variable v1 from liba1 when using them from modb1.  Makes the
7241         test pass on MSVC.
7242
7243 2010-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7244
7245         tests: avoid distcheck failure with --disable-ltdl-install.
7246         * tests/ltdl-libdir.at (libdir of installed modules): Skip if
7247         $LIBLTDL does not exist.
7248
7249 2010-09-18  Gary V. Vaughan  <gary@gnu.org>
7250
7251         maint: use sed instead of maintaining 2 README files.
7252         * README.alpha: Deleted.  It was mostly identical to README.
7253         * libltdl/config/edit-readme-alpha: New script to edit the
7254         contents of README in the dist tree prior to tarring up.
7255         * Makefile.am (dist-hook): Run it before rolling alpha release
7256         tarball.
7257
7258         maint: improve README's `Obtaining the Latest Sources'.
7259         * README (Obtaining the Latest Sources): Add instructions for
7260         obtaining stable, alpha and nightly snapshot tarballs.
7261         * README.alpha (Obtaining the Latest Sources): Adjust to match.
7262
7263         maint: reformat README `The Test Suites' for consistency.
7264         * README (The Test Suites): Reformatted for consistency.
7265         * README.alpha (The Test Suites): Adjust to match.
7266
7267         maint: improve `Reporting Bugs' in README and README.alpha.
7268         * README (Reporting Bugs): Rewritten to a more complete and
7269         concise guide to providing a good bug report.
7270         * README.alpha (Reporting Bugs): Adjust to match.
7271
7272         maint: consolidate Introductions of README and README.alpha.
7273         * README (Introduction): Rewritten to a more logical order for
7274         first time users, incorporating some additional text that was
7275         previously only in README.alpha.
7276         * README.alpha (Introduction): Adjust to match.
7277
7278         maint: copy the Version Numbering section into README.alpha.
7279         * README.alpha (Version Numbering): No less useful for users
7280         of alpha releases.  Copied from README.
7281
7282 2010-09-17  Peter Rosin  <peda@lysator.liu.se>
7283
7284         tests: actually detect missing 'test' in 'if "$foo" = ...'.
7285         * tests/sh.test: Remove extra backslash in regex.
7286
7287         Copy over DLL_EXPORT handling from C to C++ for non-GCC on w32.
7288         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [mingw, cygwin, os2]
7289         [pw32, cegcc]: Copy over the DLL_EXPORT handling from C to C++.
7290
7291 2010-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7292
7293         LTO: consistently accept -fwhopr* and -flto* for GCC.
7294         * libltdl/config/ltmain.m4sh (func_mode_link): Accept -fwhopr*.
7295         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Also match
7296         -flto*.
7297
7298 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
7299
7300         Fix order of PATH manipulation in cwrapper and shwrapper
7301         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main): Call
7302         lt_update_exe_path before lt_update_lib_path, to ensure that the
7303         temporary rpath values (which include the OBJDIRs of uninstalled
7304         libtool libraries) precede installation and final -rpath directories.
7305         (func_emit_wrapper): Prepend $dllsearchpath to PATH before prepending
7306         $temp_rpath to $shlibpath_var; similar rationale as above.
7307         Reported by Jon Turney <jon.turney@dronecode.org.uk>
7308
7309 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
7310
7311         Document libtool variable to_host_file_cmd.
7312         * doc/libtool.texi (libtool script contents:to_host_file_cmd):
7313         Document variable.
7314         (libtool script contents:to_tool_file_cmd): Prefer `build platform'
7315         to `build system'; Ditto `host platform'.
7316
7317 2010-09-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
7318
7319         Fix sh.test failure introduced in 72064249
7320         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid poor
7321         syntax.
7322
7323 2010-09-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7324
7325         tests: avoid localization failure due to unstable compiler messages.
7326         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT):
7327         Attempt to normalize temporary file names in error messages.
7328         Fixes 'localized compiler messages' test failure on Darwin when
7329         creating fat (multi-ABI) libraries.
7330
7331 2010-09-13  Peter Rosin  <peda@lysator.liu.se>
7332
7333         Prefer $NM @file when the toolchain isn't native to $build.
7334         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid calculating
7335         the command line length and take the @file branch *if* the file
7336         names needs to be converted for the toolchain and the @file
7337         branch works.  Fixes problems in stresstest.at when doing a cross
7338         from Cygwin to MinGW using MinGW native tools (a.k.a. a "faked"
7339         cross), and for the specific case of MSVC on Cygwin it makes the
7340         test pass.
7341
7342 2010-09-15  Gary V. Vaughan  <gary@gnu.org>
7343
7344         maint: improve README instructions for fetching latest version.
7345         * README, README-alpha (Obtaining the Latest Sources): New
7346         section, describing use of savannah repositories and bootstrap.
7347         * README.alpha (Reporting Bugs): Remove git instructions in
7348         favour of a reference to the new `Obtaining the Latest Sources'
7349         section.
7350
7351 2010-09-14  Eric Blake  <eblake@redhat.com>
7352
7353         maint: ship .xz, not .lzma
7354         * configure.ac (AM_INIT_AUTOMAKE): Prefer better file format.
7355         * Makefile.maint (git-release, git-dist, prev-tarball)
7356         (new-tarball, diffs): Use correct extension.
7357         * HACKING: Update instructions.
7358         * .gitignore: Ignore .xz files.
7359
7360 2010-09-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7361
7362         doc: avoid long lines in input and output, indexing fixes.
7363         * doc/libtool.texi (Linking libraries)
7364         (Module loaders for libltdl): Manually line-wrap examples, to
7365         avoid long lines.
7366         (Libltdl interface, User defined module data)
7367         (Module loaders for libltdl): Wrap long @deftypefun input lines
7368         using trailing '@'.  Use @deftypefun rather than @deftp where
7369         appropriate, and add spaces in @deftypefun lines to fix the
7370         index entries generated from these lines.
7371         (Cheap tricks): Use @smallexample rather than @example, to avoid
7372         long lines.
7373
7374         docs: @file and @option markup fixes.
7375         * doc/libtool.texi (Creating object files, Linking libraries)
7376         (Linking executables, Link mode, Finish mode, Autoconf macros)
7377         (Using Automake, Inter-library dependencies, Dlpreopening)
7378         (Linking with dlopened modules, Finding the dlname)
7379         (Libltdl interface, Test descriptions, Multiple dependencies):
7380         Add @option where needed, replace @samp with @file as
7381         appropriate.
7382
7383 2010-09-12  Peter Rosin  <peda@lysator.liu.se>
7384
7385         * .gitignore: Ignore *.obj files for MSVC (and w32 in general).
7386
7387         Adjust to moved auxiliary files and add compile.
7388         * HACKING (Maintenance Notes): Adjust to moved files.  Add the
7389         compile script.
7390         * Makefile.maint (fetch): Also fetch the compile script.
7391
7392 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7393
7394         tests: avoid empty AT_DATA contents, for zsh.
7395         * tests/libtoolize.at (libtoolize macro serial update)
7396         (libtoolize config files serial update, LIBTOOLIZE_OPTIONS):
7397         Do not create empty files with AT_DATA, the latter is documented
7398         to require a final newline.  Fixes testsuite failures with zsh
7399         4.3.10.
7400
7401 2010-09-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
7402
7403         When assigning $linklib value, honor [-all]-static[-libtool-libs]
7404
7405         * libltdl/config/ltmain.m4sh (func_mode_link): When prefer_static_libs
7406         and static library exists, ensure old_library name is used as $linklib.
7407         Fixes failure on mingw when both static and shared libraries are
7408         present.
7409
7410 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7411
7412         tests: work around zsh use of $options variable.
7413         * tests/getopt-m4sh.at: Rename $options to $opts, the former is
7414         special for zsh 4.3.10.
7415
7416         Fix AC_NO_EXECUTABLES test failure on IRIX 6.5.
7417         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix]: Cache result
7418         of link check for -Wl,-exported_symbol.
7419         * tests/no-executables.at (AC_NO_EXECUTABLES): Set
7420         lt_cv_irix_exported_symbol, to avoid link check.
7421
7422 2010-09-12  Jürgen Reuter  <juergen.reuter@physik.uni-freiburg.de>  (tiny change)
7423             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7424
7425         Initial support for the NAG Fortran compiler on GNU/Linux.
7426         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <nagfor>:
7427         New set of entries, for NAG Fortran 5.1 and 5.2.
7428         * NEWS: Update.
7429
7430 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7431
7432         Fix getopt.m4sh to require Autoconf 2.62 or newer.
7433         * libltdl/config/getopt.m4sh (m4_version_prereq): Require 2.62,
7434         not 2.61.
7435
7436 2010-09-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
7437
7438         Correct typo: $sharedlib_from_linklib_cmd missing '_cmd'
7439
7440         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Fix obvious
7441         typo, $sharedlib_from_linklib_cmd missing '_cmd'.
7442
7443 2010-09-10  Peter Rosin  <peda@lysator.liu.se>
7444
7445         Convert file name to toolchain format when invoking $NM.
7446         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
7447         (func_win32_libid, func_cygming_gnu_implib_p)
7448         (func_cygming_ms_implib_p): When using the name lister to find
7449         symbols in files, convert the file names to a format appropriate
7450         for the tool. Fixes testsuite issues in mdemo-static-make.test
7451         and mdemo-make.test when doing a cross from Cygwin/Wine to MinGW
7452         using MinGW native tools (a.k.a. a "faked" cross).
7453
7454 2010-09-09  Peter Rosin  <peda@lysator.liu.se>
7455
7456         Fix dependency tracking for MSYS/MinGW.
7457         * libltdl/config/ltmain.m4sh (func_to_tool_file): Add lazy
7458         argument which allows the user to specify conversions that are
7459         not desired.
7460         (func_mode_compile): Don't convert source files on MSYS, as
7461         MSYS does it for us. This fixes a regression introduced by
7462         "Use func_to_tool_file instead of fix_srcfile_path".
7463         Reported by Charles Wilson.
7464
7465 2010-09-08  Peter Rosin  <peda@lysator.liu.se>
7466
7467         Mention adjustment of naming of MSVC import libraries in NEWS.
7468         * NEWS: Mention the change in import library naming on MSVC.
7469
7470 2010-09-07  Peter Rosin  <peda@lysator.liu.se>
7471
7472         Adjust naming of MSVC import libraries.
7473         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
7474         [pw32, cegcc] <cl*, library_names_spec>: Adjust naming of the
7475         import library from foo-<major-version>.lib to foo.dll.lib, to
7476         avoid clashes with the static library for unversioned libraries.
7477         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin, pw32]
7478         [cegcc] <cl*, archive_expsym_cmds>: Explicitely name the import
7479         library to match the above.
7480
7481         Fixup texi typo in previous.
7482         * doc/libtool.texi (libtool script content) <postlink_cmds>:
7483         Add missing 'code' command.
7484
7485         Convert POSIX file names to toolchain format for MSVC
7486         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
7487         [cygwin, mingw, pw32, cegcc] <cl*, postlink_cmds>: Make
7488         sure the -outputresource: file name for the manifest tool is
7489         in w32 format.
7490         <cl*, archive_expsym_cmds>: Likewise for the MSVC command file
7491         containing the exports and the output file name.
7492         * libltdl/config/ltmain.m4sh (func_mode_link): Precalculate the
7493         toolchain format of the output_objdir file name and store it in
7494         the tool_output_objdir variable. Also replace any occurrence of
7495         @TOOL_OUTPUT@ in postlink_cmds with the toolchain version of the
7496         @OUTPUT@ content.
7497         * doc/libtool.texi (libtool script content): Update description
7498         of postlink_cmds to mention @TOOL_OUTPUT@.
7499
7500 2010-09-06  Peter Rosin  <peda@lysator.liu.se>
7501
7502         Use func_to_tool_file instead of fix_srcfile_path.
7503         * libltdl/config/ltmain.m4sh (func_mode_compile): Replace the
7504         fix_srcfile_path hook with a call to func_to_tool_file.
7505         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin,mingw,pw32]
7506         [cegcc]: Drop fix_srcfile_path.
7507         * doc/libtool.texi (libtool script contents): Likewise.
7508         * NEWS: Mention that fix_srcfile_path has been replaced.
7509
7510         Convert file names to toolchain format in $NM and $AR @files.
7511         * libltdl/config/ltmain.m4sh (func_mode_link): When listing
7512         symbols and when creating archives using command files (or
7513         response files), make sure that both the name of the command
7514         file and the content are made up of file names in a format
7515         appropriate for the tool. Fixes stresstest.at on MSYS when
7516         run with low command line length.
7517
7518         Convert file names to toolchain format when linking.
7519         * libltdl/config/ltmain.m4sh (func_mode_link): When exporting
7520         symbols and when linking using command files (or response
7521         files), make sure that both the name of the command file and
7522         the content are made up of file names in a format appropriate
7523         for the tool. Fixes problems in stresstest.at on MSYS when run
7524         with low command line length.
7525
7526         Add file name conversion from $build to toolchain.
7527         * configure.ac: Ensure to_tool_file_cmd is available to Makefile.
7528         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): Add
7529         cache variable lt_cv_to_tool_file_cmd that describes how to
7530         convert file names from $build to toolchain format.
7531         * libltdl/config/ltmain.m4sh (func_to_tool_file): New function
7532         that utilizes the above.
7533         * Makefile.am: Ensure to_tool_file_cmd is included in
7534         TEST_ENVIRONMENT so that it is passed to (old testsuite) tests.
7535         * testsuite.at: Ensure to_tool_file_cmd is passed as a variable
7536         setting on the configure line for (new testsuite) tests.
7537         * doc/libtool.texi (libtool script content): Update with
7538         to_tool_file_cmd description.
7539         (Cygwin to MinGW Cross): Update to mention lt_cv_to_tool_file_cmd.
7540
7541 2010-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7542
7543         tests: avoid spurious test failure due to library mode on HP-UX.
7544         * tests/help.at (debug tracing): Use $lt_INSTALL not cp for
7545         install mode, the latter will not overwrite an existing library
7546         with mode 555.
7547
7548 2010-09-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
7549
7550         Path conversion documentation
7551         * doc/libtool.texi (Platform quirks): Add new subsections
7552         'Cross compiling' and 'File name conversion'.
7553
7554 2010-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7555
7556         tests: avoid spurious pic_flag test failure on HP-UX 10.20.
7557         * tests/pic_flag.at (override pic_flag at configure time):
7558         Match HP-UX 10.20 cc warning about unknown options, to skip
7559         the test.
7560
7561         tests: fix localization test for GCC on HP-UX 11.00.
7562         * tests/localization.at (localized compiler messages): Be sure
7563         to switch the locale only for the actual compiler commands, so
7564         we don't pick up warnings from helper tools such as diff which
7565         may not have the locale installed.
7566
7567         Avoid leaking make flags into testsuite results.
7568         * tests/defs.m4sh: Unset MFLAGS, MAKEFLAGS, MAKELEVEL, __MKLVL__
7569         and MAKE_JOBS_FIFO.
7570         * tests/testsuite.at: Likewise.
7571         Fixes warnings in test logs when the user uses 'make -jN check'
7572         and inner $MAKE invocations can't connect to the job server.
7573         Fixes spurious failures of configure-iface.at and of
7574         demo-noinst-link tests with BSD and Tru64 make if the user uses
7575         'make -k', as the exit status of the latter is not reliable.
7576
7577 2010-09-01  Gary V. Vaughan  <gary@gnu.org>
7578
7579         Remove announce-gen.m4sh and mailnotify.m4sh.
7580         * libltdl/config/announce-gen.m4sh: Removed.  This script has
7581         no apparent connection to libtool functionality, and mostly
7582         duplicates the better maintained gnulib announce-gen script.
7583         * libltdl/config/mailnotify.sh: Removed. This script was used
7584         by only clcommit.m4sh and announce-gen.m4sh, both of which are
7585         now removed too.
7586         * Makefile.maint (announce-gen, libltdl/config/mailnotify):
7587         Targets removed.
7588         * bootstrap: Remove the mailnotify regeneration warning.
7589         * HACKING (Release Procedure): Remove references to
7590         announce-gen.
7591         (Alpha release note template, Full release note template):
7592         Reinstated from before announce-gen was introduced.
7593
7594         Remove clcommit.m4sh.
7595         * clcommit.m4sh: Removed. This script was written to help keep
7596         ChangeLog and commit messages in sync when committing to CVS,
7597         and is an anachronism now that Libtool uses git.
7598         * Makefile.maint (commit): Target removed.
7599         * bootstrap: Don't generate commit.
7600         * HACKING (Release Procedure): Adjusted.
7601
7602 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
7603
7604         archive-in-archive.at passes with Microsoft lib.
7605         * tests/archive-in-archive.at: Tighten test to check that the desired
7606         object files are indeed part of the archive. Microsoft lib still
7607         passes, so remove the expected failure for that case.
7608
7609         Dump archiver output to the log when testing @file support.
7610         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout to config.log
7611         when testing for @file support.
7612         Suggested by Ralf Wildenhues.
7613
7614         Silence archiver output when testing @file support.
7615         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout and stderr
7616         to the bit bucket when testing for @file support.
7617
7618 2010-08-31  Gary V. Vaughan  <gary@gnu.org>
7619
7620         Remove double `Generated from foo.m4sh' lines.
7621         We now require a modern Autoconf to bootstrap libtool, which
7622         will add the `Generated by ...' boiler-plate automatically,
7623         so we can remove the hand-rolled @configure_input@
7624         substitutions we had been doing:
7625         * clcommit.m4sh, libtoolize.m4sh, tests/defs.sh,
7626         libltdl/config/announce-gen.m4sh, libltdl/config/ltmain.m4sh,
7627         libltdl/config/mailnotify.m4sh: Remove @configure_input@.
7628         * Makefile.am (edit): Remove configure_input substitution.
7629         (libtoolize, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
7630         (tests/defs): Don't set `$input' shell variable.
7631         * Makefile.maint (announce_gen, libltdl/config/mailnotify)
7632         (commit): Likewise.
7633
7634 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
7635
7636         Extract the archive name from the .la file and use $AR (not ar).
7637         * Makefile.am: Pass AR through to the testsuite.
7638         * tests/archive-in-archive.at: Bump copyright year. Extract archive
7639         name from the .la file instead of hardcoding the name, and allow
7640         different archivers. Also clarify that the tested functionality is
7641         currently broken.
7642
7643 2010-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7644
7645         tests: skip -Wall -Werror with Tru64 cc in cwrapper test.
7646         * tests/cwrapper.at (cwrapper for uninstalled executables):
7647         Use a link test rather than a compile test to flesh out unknown
7648         compiler flags starting with -W; Tru64/OSF1 cc will happily
7649         accept `-Wall -Werror' as indication to pass flags on to
7650         subprocesses.
7651
7652         tests: avoid getopt-m4sh failures when autom4te is not available.
7653         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP):
7654         Check $M4SH --version, skip on failure.
7655
7656         tests: mark 'syntax of .la files' as XFAIL, expose failure.
7657         * tests/lalib-syntax.at (syntax of .la files): Assert that the
7658         string returned by lt_dlerror after a failure is non-NULL, so
7659         the failure shows up on systems other than Solaris.  Mark test
7660         as expected to fail.
7661         Suggested by Bob Friesenhahn.
7662
7663 2010-08-30  Eric Blake  <eblake@redhat.com>
7664
7665         Simplify recent configure quoting portability workaround.
7666         * configure.ac: Simplify setting of timestamp_string.
7667
7668 2010-08-30  Charles Wilson  <libtool@cwilson.fastmail.fm>
7669
7670         Update path conversion warning messages
7671         * libltdl/config/ltmain.m4sh (func_convert_file_check): Update
7672         comments and warning message.
7673         (func_convert_path_check): Update warning message.
7674
7675 2010-08-29  Peter Rosin  <peda@lysator.liu.se>
7676
7677         Fix typo when renaming path conversion functions.
7678         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
7679         variable setting on the configure line for (new testsuite) tests.
7680
7681 2010-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7682
7683         Support GCC LTO on GNU/Linux.
7684         * libltdl/config/ltmain.m4sh (func_mode_link): Allow through
7685         flags matching -O*, -flto*, -fwhopr, -fuse-linker-plugin.
7686         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Drop symbols
7687         starting with __gnu_lto.
7688         (_LT_LINKER_SHLIBS) [linux] <archive_cmds, archive_expsyms_cmds>:
7689         Add $pic_flag for GCC.
7690         (_LT_LANG_CXX_CONFIG) [linux] <archive_cmds, archive_expsyms_cmds>:
7691         Likewise.
7692         (_LT_SYS_HIDDEN_LIBDEPS): Ignore files matching *.lto.o.
7693         * NEWS: Update.
7694
7695         Disable GCC LTO for verbose library extraction.
7696         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Temporarily
7697         append -fno-lto or -fno-whopr to CFLAGS if CC or CFLAGS (which
7698         are substituted with the per-language variables here) contain
7699         -flto or match -fwhopr*, respectively.
7700
7701         Save and restore CFLAGS properly inside libtool.m4 macros.
7702         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Use different
7703         temporary variables for saved and restored values of $LIBS,
7704         $CFLAGS, to avoid overlap with the *_CONFIG macros.
7705         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
7706         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Also save and restore
7707         $CFLAGS, and override it with per-language flags, so that in
7708         case output_verbose_link_cmd uses $CFLAGS, the right flags are
7709         used.
7710
7711         Work around yet another shell quoting portability issue.
7712         * configure.ac: Avoid nonportable quoted alternate variable
7713         value in unquoted here document, so Solaris 10 sh and Tru64
7714         ksh do not print spurious extra quotes.
7715
7716         Silence order-only configure test for AIX make.
7717         * configure.ac: Also drop standard output, for AIX 5.1 make.
7718
7719 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
7720
7721         Minor sysroot fixups.
7722         * libltdl/m4/libtool.m4 (_LT_WITH_SYSROOT): Fix typo.
7723         * tests/sysroot.at: Search also for crt0.o to accommodate cygwin.
7724
7725 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
7726
7727         [cygwin|mingw|cross-compile]: Path conversion support.
7728         * configure.ac: Ensure to_host_file_cmd is available to Makefile.
7729         * TODO: Document QoI issue with file name conversion functions.
7730         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): New function
7731         sets libtool variable $to_host_file_cmd, and employs cache.
7732         (_LT_SETUP): Require it.
7733         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
7734         variable setting on the configure line for (new testsuite) tests.
7735         * Makefile.am (TESTS_ENVIRONMENT): Ensure to_host_file_cmd is
7736         included so that it is passed to (old testsuite) tests.
7737         * libltdl/config/general.m4sh: Define $lt_sed_naive_backslashify here.
7738         * libltdl/config/ltmain.m4sh ($to_host_file_cmd, $to_host_path_cmd):
7739         New variables.
7740         (func_cygpath): New function.
7741         (func_init_to_host_path_cmd): New function.
7742         (func_to_host_path): Renamed to...
7743         (func_to_host_file): Refactored to... (now uses $to_host_file_cmd).
7744         (func_convert_core_file_wine_to_w32): Here. New function.
7745         (func_convert_core_msys_to_w32): Here. New function.
7746         (func_convert_file_check): Here. New function.
7747         (func_convert_file_noop): Here. New function.
7748         (func_convert_file_msys_to_w32): Here. New function.
7749         (func_convert_file_cygwin_to_w32): Here. New function.
7750         (func_convert_file_nix_to_w32): Here. New function.
7751         (func_convert_file_msys_to_cygwin): New function.
7752         (func_convert_file_nix_to_cygwin): New function.
7753         (func_to_host_pathlist): Renamed to...
7754         (func_to_host_path): Refactored to... (now uses $to_host_path_cmd
7755         and func_init_to_host_path_cmd).
7756         (func_convert_path_check): Here. New function.
7757         (func_convert_path_front_back_pathsep): Here. New function.
7758         (func_convert_core_path_wine_to_w32): Here. New function.
7759         (func_convert_path_noop): Here. New function.
7760         (func_convert_path_msys_to_w32): Here. New function.
7761         (func_convert_path_cygwin_to_w32): Here. New function.
7762         (func_convert_path_nix_to_w32): Here. New function.
7763         (func_convert_path_msys_to_cygwin): New function.
7764         (func_convert_path_nix_to_cygwin): New function.
7765
7766 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7767
7768         Fix symlist variable path to use _WIN32 instead of __WINDOWS__.
7769         * libltdl/config/ltmain.m4sh, libltdl/libltdl/lt_system.h,
7770         libltdl/m4/libtool.m4, tests/demo/foo.h, tests/pdemo/foo.h:
7771         Change __WINDOWS__ to _WIN32.
7772         Report by Charles Wilson.
7773
7774         Add $pic_flag to archive_cmds and archive_expsym_cmds.
7775         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
7776         <archive_cmds, archive_expsym_cmds>
7777         [GNU ld, netbsd]: Add $pic_flag if ELF.
7778         [GNU ld, solaris]: Likewise.
7779         [GNU ld, default case]: Likewise.
7780         [!GNU ld, freebsd, dragonfly]: Add $pic_flag.
7781         [!GNU ld, GCC, hpux9]: Add $pic_flag.
7782         [!GNU ld, GCC, hpux10]: Replace -fPIC with $pic_flag
7783         [!GNU ld, GCC, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
7784         [!GNU ld, GCC, irix5, irix6, nonstopux]: Add $pic_flag.
7785         [!GNU ld, GCC, osf4, osf5]: Likewise.
7786         [!GNU ld, GCC, solaris]: Likewise.
7787         (_LT_LANG_CXX_CONFIG) <archive_cmds, archive_expsym_cmds>
7788         [hpux9]: Add $pic_flag if $GXX.
7789         [hpux10, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
7790         [irix5, irix6]: Add $pic_flag if $GXX.
7791         [osf4, osf5]: Likewise.
7792         [solaris]: Add $pic_flag if $GXX and not GCC 2.7.
7793
7794         Uniform const'ness of symlist variable lt_preloaded_symbols.
7795         On some systems, lt_preloaded_symbols may not be declared
7796         const due to relocation issues.  C99 requires qualification to
7797         match for compatible declarations, so ensure we declare
7798         const'ness in the same way everywhere; link-time optimization
7799         may otherwise rightfully complain about inconsistencies.
7800         Since ltdl.h may not depend upon config.h, rely on system
7801         defines for choosing const'ness.
7802         * NEWS: Update.
7803         * doc/libtool.texi (Dlpreopening): Document this issue.
7804         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
7805         [__WINDOWS__, __CYGWIN__, _WIN32_WCE]: Define LT_DLSYM_CONST
7806         according to system defines.  Remove old shell cruft.  Use
7807         LT_DLSYM_CONST for lt_${my_prefix}_LTX_preloaded_symbols.
7808         * libltdl/libltdl/lt_system.h (LT_DLSYM_CONST): Likewise,
7809         define LT_DLSYM_CONST according to system defines.
7810         * tests/demo/foo.h (LT_DLSYM_CONST): Likewise.
7811         * tests/pdemo/foo.h (LT_DLSYM_CONST): Likewise.
7812         * tests/demo/dlmain.c (lt_dlsymlist): Use LT_DLSYM_CONST.
7813         * tests/pdemo/longer_file_name_dlmain.c (lt_dlsymlist):
7814         Likewise.
7815         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise
7816         for configure test code.
7817         * libltdl/ltdl.c (preloaded_symbols): Use LT_DLSYM_CONST.
7818         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Likewise.
7819
7820 2010-08-28  Dave Korn  <dave.korn.cygwin@googlemail.com>
7821
7822         Ensure cwrapper magic string is not optimized away.
7823         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
7824         Declare MAGIC_EXE as volatile.
7825         Report by Charles Wilson.
7826
7827 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7828
7829         Fix quoting in non-XSI func_xform, for IRIX sh.
7830         * libltdl/config/ltmain.m4sh (func_xform): Remove spurious extra
7831         M4 quotes.
7832
7833         Fix response file test for unreliable exit status of IRIX ar.
7834         * libltdl/m4/libtool.m4 (_LT_PROG_AR): IRIX ar will not fail
7835         over a command-line argument specifying a nonexistent file (such
7836         as `@FILE'), so ensure failure with a reponse file containing
7837         a nonexistent file.  Also, use lt_* variable prefix for
7838         temporary variables.
7839
7840         Fix AC_LANG_PROGRAM warnings from git Autoconf.
7841         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Fix
7842         underquoted AC_LANG_PROGRAM call.
7843         (LT_PROG_AR): Use AC_LANG_PROGRAM.
7844         (_LT_LINKER_SHLIBS) [irix, GCC]: Use the right source for the
7845         given language.
7846         * NEWS: Update.
7847
7848 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7849
7850         fix AIX testsuite regression
7851         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): Partly
7852         revert v2.2.10-83-gc45a288: Do not absolutize path here, only do
7853         sysroot replacement.
7854         (func_mode_link): Adjust.
7855
7856 2010-08-22  Charles Wilson  <libtool@cwilson.fastmail.fm>
7857
7858         fix --mode=finish
7859         * libltdl/config/ltmain.m4sh (func_mode_finish): Invert then/else
7860         blocks of the "if $opt_dry_run" conditional.
7861
7862 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
7863
7864         improve code for sysroot --mode=finish
7865         * libltdl/config/ltmain.m4sh (func_mode_finish): Change sysroot_regex
7866         and sysroot_cmd delimiter from pipe to slash.  Wrap the entire for
7867         loop with "if $opt_dry_run...fi" and print an explanatory message
7868         for the --dry-run case.
7869
7870 2010-08-12  Paolo Bonzini  <bonzini@gnu.org>
7871
7872         add libtool --mode=finish mode for sysroot
7873         * doc/libtool.texi (Finish mode): Document behavior when *.la files
7874         are passed.
7875         * libltdl/config/ltmain.m4sh (func_mode_finish): Eliminate sysroot
7876         or `=' signs representing it from files in $libs.
7877         * tests/sysroot.at (SYSROOT_TESTS): Test for presence of sysroot
7878         references before running libtool --mode=finish, and for absence
7879         afterwards.
7880
7881         reorganize parsing of --mode=finish arguments
7882         * libltdl/config/ltmain.m4sh (func_mode_finish): Split arguments for
7883         directories and *.la files.
7884
7885         fix sysroot handling for deplibs of preopened libtool libs
7886         * libltdl/config/ltmain.m4sh: Pass $dependency_libs of preopened libtool
7887         through func_resolve_sysroot.
7888
7889         fix sysroot tests to pass on Fedora 13
7890         * tests/sysroot.at: Link $prefix/include into the sysroot as well, as
7891         required by newer GCC.
7892
7893 2010-07-29  Paolo Bonzini  <bonzini@gnu.org>
7894
7895         initial version of the NEWS entry
7896         * NEWS: Document sysroot support.
7897
7898         add sysroot test
7899         * Makefile.am (TESTSUITE_AT): Add tests/sysroot.at.
7900         * tests/sysroot.at: New.
7901
7902         emit sysrooted paths when installing .la files
7903         * libltdl/config/ltmain.m4sh (func_replace_sysroot): New.
7904         (func_mode_link): Prepend paths in $libdir with the sysroot.  Further,
7905         replace the sysroot with = (using func_replace_sysroot) whenever
7906         such a path is written in a .la file.
7907
7908         process postdeps to include sysrooted paths
7909         * libltdl/m4/libtool.m4 (_LT_FUNC_STRIPNAME_CNF): New (from Charles Wilson).
7910         (_LT_SYS_HIDDEN_LIBDEPS): Require it.  Use func_stripname_cnf to convert
7911         sysroot (-L= and -R=) usage in postdeps.  Adjust the code because -L, -R
7912         and -l flags will now always be separated from the rest of the argument.
7913
7914         handle sysrooted paths when reading dependencies to la files
7915         * libltdl/config/ltmain.m4sh (func_mode_execute, func_mode_install,
7916         func_mode_link): Whenever a .la file occurs in another .la file,
7917         expand the sysroot path in it.
7918
7919 2010-07-28  Paolo Bonzini  <bonzini@gnu.org>
7920
7921         teach libtool -L= and -R=
7922         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): New.
7923         (func_mode_link): Always pass result of stripping -L and -R to
7924         func_resolve_sysroot before using it.  Remove absolute path expansion
7925         when func_resolve_sysroot subsumes it.  Expand sysroot in -rpath.
7926         When processing dependent libraries also resolve sysroot paths there.
7927
7928         add --with-sysroot
7929         * libltdl/m4/libtool.m4 (_LT_HOST_NONCANONICAL, _LT_WITH_SYSROOT): New.
7930         (LT_SETUP): Require _LT_WITH_SYSROOT.
7931
7932         handle sysroot flags
7933         * libltdl/config/ltmain.m4sh (func_mode_link): Recognize --sysroot
7934         option.
7935
7936 2010-08-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7937
7938         * NEWS: Only bootstrapping needs new Automake and Autoconf.
7939
7940         check-interactive and check-noninteractive for both testsuites.
7941         * Makefile.am (COMMON_TESTS, TESTS): Split into ...
7942         (NONINTERACTIVE_TESTS, INTERACTIVE_TESTS): ... these new
7943         variables.
7944         (check-interactive-new): Rename from check-interactive.
7945         (check-noninteractive-new): Rename from check-noninteractive.
7946         (check-interactive-old, check-noninteractive-old): New targets.
7947         (check-interactive, check-noninteractive): Depend on the
7948         respective targets for the old and the new test suites.
7949         * doc/libtool.texi (Test descriptions): Simplify description
7950         about check-interactive and check-noninteractive.  Add index
7951         entries.
7952
7953         Adjust docs for renaming and for parallel-tests.
7954         * README: Update example TESTS setting.
7955         * README.alpha: Likewise.
7956         * doc/libtool.texi (Test descriptions): Update for test renaming,
7957         adjust descriptions accordingly.
7958
7959         Update VERBOSE handling for parallel-tests driver.
7960         * tests/defs.m4sh: Default to verbose output, drop now-unneeded
7961         handling of 'VERBOSE=no'.
7962         * README: Update example usage.
7963         * README.alpha: Likewise.
7964         * doc/libtool.texi (Test descriptions, When tests fail): Remove
7965         unneeded VERBOSE recommendations.  Point to per-test log files
7966         and test-suite.log summary file.
7967
7968         Enable parallel-tests test driver for the old testsuite.
7969         * configure.ac: New configure test to find out whether `make'
7970         supports order-only prerequisites; set @ORDER@ accordingly.
7971         (AM_INIT_AUTOMAKE): Enable parallel-tests option.
7972         * tests/defs.m4sh (prefix): Derive install prefix for tests
7973         from the test name, to avoid clashes.
7974         * Makefile.am (CXX_TESTS, F77_TESTS, FC_TESTS, COMMON_TESTS):
7975         Reformat.  Adjust for renamed tests.  Add dependencies between
7976         the respective log files of the tests, to ensure proper ordering.
7977         Use order-only dependencies if possible, between test groups that
7978         use the same directory.
7979         (clean-local-legacy): Remove `_inst-*' directories as well.
7980         Prompted by suggestion from Bob Friesenhahn.
7981
7982         New alias scripts for old tests run more than once.
7983         * tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
7984         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
7985         tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
7986         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
7987         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
7988         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
7989         tests/demo-pic-exec.test, tests/demo-pic-make.test,
7990         tests/demo-shared-exec.test, tests/demo-shared-inst.test,
7991         tests/demo-shared-make.test, tests/demo-shared-unst.test,
7992         tests/demo-static-exec.test, tests/demo-static-inst.test,
7993         tests/demo-static-make.test, tests/demo-static-unst.test,
7994         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
7995         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
7996         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
7997         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
7998         tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
7999         tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
8000         tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
8001         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
8002         tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
8003         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
8004         tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
8005         tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
8006         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
8007         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
8008         tests/tagdemo-shared-exec.test, tests/tagdemo-shared-make.test,
8009         tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
8010         tests/tagdemo-undef-exec.test, tests/tagdemo-undef-make.test:
8011         New files.
8012
8013         Require Automake 1.11.1 for Libtool, enable color-tests.
8014         * configure.ac (AM_INIT_AUTOMAKE): Require 1.11.1.  Enable
8015         color-tests.
8016         (LTDL_SUBDIR_LIBOBJS): Remove now-obsolete conditional and
8017         feature test for Autoconf 2.59 and Automake 1.9.x workaround.
8018         * Makefile.am: Simplify accordingly.
8019         * bootstrap: Remove obsolete WORKING_LIBOBJ_SUPPORT workarounds
8020         for Autoconf 2.59 and Automake 1.9.6.
8021
8022 2010-08-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
8023
8024         Fix syntax for cygwin-cross
8025         libltdl/m4/argz.m4: Add quotes around variable, which
8026         may contain the multiword value 'guessing no'.
8027
8028 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8029
8030         configure: use Autobuild AB_INIT if available.
8031         * configure.ac: Call AB_INIT if it is defined, with
8032         $autobuild_mode as argument, to be set at configure time.
8033         Set AB_VERSION to the Libtool version string.
8034         * HACKING: Update.
8035
8036         Fix getopt tests to skip with Autoconf < 2.61.
8037         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Skip the test
8038         if 'autom4te --language=m4sh' exits 63 because version 2.61 is
8039         required.  Allows the testsuite to complete successfully with
8040         Autoconf 2.59 and Automake 1.9.6.
8041
8042         Tidy and fix clean and distclean rules for old testsuite.
8043         * Makefile.am (clean-local-legacy): Use $(CONF_SUBDIRS) instead
8044         of hard-coding the list of test directories.  Use
8045         $(AM_MAKEFLAGS).
8046         (fake-distclean-legacy): New phony rule, to create fake Makefile
8047         files if needed so that the automake-generated
8048         distclean-recursive rule can work properly.
8049         (distclean_recursive): New helper variable.
8050         (distclean-recursive): Depend on fake-distclean-legacy.
8051
8052 2010-08-22  Paolo Bonzini  <bonzini@gnu.org>
8053
8054         Fix sed_make_literal_regex.
8055         * libltdl/config/general.m4sh (sed_make_literal_regex): Fix
8056         definition.
8057
8058 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
8059
8060         Factor the sed command used to make a regex from a literal.
8061         * libltdl/config/general.m4sh (sed_make_literal_regex): New.
8062         * libltdl/config/ltmain.m4sh
8063         (func_cygming_dll_for_implib_fallback_core): Use it.  Suggested
8064         by Ralf Wildenhues.
8065
8066 2010-08-21  Rainer Tammer <tammer@tammer.net>  (tiny change)
8067
8068         Avoid issues with AIX resident shared libraries in old testsuite.
8069         * tests/defs.m4sh [aix]: Remove file mode permission for others,
8070         so shared libraries are not kept in memory after execution.
8071         Fixes failures of repeated mdemo-inst.test with on AIX 5.3.
8072
8073 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8074
8075         Skip part of versioning test on AIX.
8076         * tests/versioning.at (versioning): The AIX linker always
8077         records the unversioned library name, even with runtimelinking,
8078         so skip the execution test for the incompatibly upgraded
8079         library.
8080         Report by Rainer Tammer.
8081
8082         Remove dead code from versioning test.
8083         * tests/versioning.at (versioning): No need to build unused
8084         prog3.
8085
8086 2010-08-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8087
8088         Don't hide the table of contents in the manual.
8089         * doc/libtool.texi: Move the table of contents to the beginning.
8090         Prompted by patch from Bruno Haible against Automake.
8091
8092         Remove superfluous dependency in Makefile.am.
8093         * Makefile.am (tests/demo-conf.test): Remove dependency on
8094         libtool, this test is a primary source and not generated.
8095
8096         Bump copyright years in manual.
8097         * doc/libtool.texi: Bump copyright years.
8098
8099 2010-08-13  Peter Rosin  <peda@lysator.liu.se>
8100
8101         Allow the use of a listing file if the archiver supports it.
8102         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Move detection
8103         of a suitable archiver...
8104         (_LT_PROG_AR): ...to here. New macro, also detect if the
8105         archiver supports a listing file with the new variable
8106         archiver_list_spec.
8107         * libltdl/config/ltmain.m4sh: If the archiver supports a listing
8108         file, use it when max_cmd_len is exceeded.  This is needed for
8109         tool chains such as MSVC which do not support piece by piece
8110         linking (-r -o).
8111         * doc/libtool.texi (libtool script contents): Update with
8112         archiver_list_spec description.
8113
8114 2010-08-10  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
8115
8116         Make testsuite compatible with Autoconf 2.62 again.
8117         * tests/getopt-m4sh.at (AT_CHECK): Autotest 2.62 chokes on unquoted
8118         '#' in AT_CHECK, so replace all uses with '@%:@' quadrigraph.
8119         Suggested by Eric Blake <eblake@redhat.com>
8120         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8121
8122 2010-08-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8123
8124         Fix more problematic code from "Add func_append_quoted and do..."
8125         * libltdl/config/ltmain.m4sh (func_mode_link): Revert back
8126         func_append instances that as assignments relied on the shell
8127         not performing word splitting on the right hand side of the
8128         assignment.
8129
8130         Fix another typo on "Add func_append_quoted and do..."
8131         * libltdl/config/ltmain.m4sh (func_mode_link): Fix regression in
8132         computation of finalize_rpath introduced in v2.2.10-40-g0da7d80,
8133         fixing several testsuite failures on AIX.
8134         Report by Rainer Tammer.
8135
8136 2010-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8137
8138         Avoid unwanted error message in configure output.
8139         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Try print
8140         in subshell, so eventual `print: not found' is hidden reliably.
8141
8142         Fix compilation of program sources on AIX.
8143         * tests/lt_dlopenext.at (lt_dlopenext error messages): Do not
8144         use $LIBTOOL when compiling plain object, AIX by default does
8145         not enable static archives.
8146         * tests/ltdl-libdir.at (libdir of installed modules): Likewise.
8147         Report by Rainer Tammer.
8148
8149         Do not call toplevel configure in non-VPATH build.
8150         * tests/deplibs-mingw.at (deplibs without file command): Use
8151         LT_AT_CONFIGURE for consistency, update comment about why it
8152         might fail.
8153         * tests/pic_flag.at (override pic_flag at configure time): Skip
8154         test if we are building in-tree.
8155         Report by Rainer Tammer.
8156
8157         Allow running pic_flag test with different shell.
8158         * tests/testsuite.at (LT_AT_CONFIGURE): Accept optional second
8159         argument specifying the configure script to run.
8160         * tests/pic_flag.at (override pic_flag at configure time):
8161         Use LT_AT_CONFIGURE.
8162
8163         Ensure not to reverse preserving of --debug for relinking/finish.
8164         * libltdl/config/ltmain.m4sh (func_check_version_match): Only
8165         preserve '--debug' switch if $opt_debug is not equal to ':'.
8166         * tests/help.at (debug tracing): New test group.
8167         Report by Rainer Tammer.
8168
8169 2010-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8170
8171         Fix AC_NO_EXECUTABLES test failure on AIX.
8172         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Wrap link
8173         test in AC_CACHE_VAL, using cache variable $lt_cv_aix_libpath.
8174         * tests/no-executables.at (AC_NO_EXECUTABLES): Preset it, to
8175         avoid link test.
8176         Bug report by Rainer Tammer.
8177
8178         Fix ltdl-libdir test for C++ compilers.
8179         * tests/ltdl-libdir.at (libdir of installed modules): Declare
8180         module function as extern "C".
8181
8182 2010-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8183
8184         Let `libtool' without arguments point to `--help' again.
8185         * libltdl/config/ltmain.m4sh (func_check_version_match):
8186         Remove duplicate and wrong error check.
8187         * tests/help.at (standard command line options): Extend test.
8188         Report by Rainer Tammer.
8189
8190         Avoid syntax error due to shift of nonexistent parameter.
8191         * libltdl/config/ltmain.m4sh <command-line handling>: Only shift
8192         if there is a positional parameter to shift.  Fixes `libtool
8193         --help' when dash is used.
8194         Report by Rainer Tammer.
8195
8196         Fix testsuite errors due to shell quoted parameter expansion issue.
8197         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Insert space
8198         between double-quoted and unquoted shell parameter, as bash
8199         4.0.28 doesn't add one in its output if the expansion of the
8200         second one starts with a space.
8201         (short option splitting, enhanced shell short option splitting)
8202         (long option splitting, XSI long option splitting): Add space in
8203         expected output.
8204         Fixes testsuite failures on AIX, FreeBSD, etc.
8205         Report by Rainer Tammer.
8206
8207 2010-08-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8208
8209         Fix build failure with AIX sh due to shell quoting error.
8210         * libltdl/config/ltmain.m4sh (func_append_quoted): Document
8211         that this function inserts a separator space.
8212         (func_mode_compile): Do not pass extra space here.
8213         Fixes regression introduced in v2.2.10-49-gc13532a.
8214         Report by Rainer Tammer.
8215
8216 2010-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8217
8218         Fix pic_flag test unportabilities.
8219         * tests/pic_flag.at (override pic_flag at configure time): Skip
8220         test if the compiler produces a warning containing `fpic'.
8221         Do not use nonportable `grep -e', for Solaris.
8222         Report by Charles Wilson.
8223
8224 2010-08-01  Paolo Bonzini  <bonzini@gnu.org>
8225
8226         Fix bug in postdeps computation
8227         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Actually
8228         concatenate $prev and $p.
8229
8230 2010-07-26  Charles Wilson  <libtool@cwilson.fastmail.fm>
8231
8232         Don't always skip XSI tests
8233         * tests/getopt-m4sh.at: Use new signature as implemented by
8234         de8a0992b21b76a13c302cf48588ad5f6042595c, when determining
8235         whether to test Extended-shell functions.
8236
8237 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
8238
8239         * tests/stresstest.at: Link with main.lo when liba is shared
8240         and linking main with -no-install.
8241
8242 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
8243
8244         * tests/stresstest.at [MSVC]: dllimport all imported
8245         variables.
8246
8247 2010-07-17  Peter Rosin  <peda@lysator.liu.se>
8248
8249         dllimport the variable for MSVC in link-order.at
8250         * tests/link-order.at [MSVC]: Makes the test pass by dllimporting
8251         imported variables when working with shared libraries.
8252
8253 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
8254             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8255
8256         Make preloading heed libname_spec.
8257         Fixes testsuite failure for lt_dladvise.at on MSYS/MSVC.
8258         * libltdl/ltdl.c (libprefix): New static variable describing
8259         the prefix of static archives.
8260         (try_dlopen): Use libprefix.
8261         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Export prefix of static
8262         archives to config.h. Also fix assignment of LTDLOPEN to be more
8263         efficient and less error prone while at it.
8264
8265 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
8266
8267         Rename _LT_PROG_XSI_REPLACE macro to _LT_PROG_FUNCTION_REPLACE.
8268         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Rename to
8269         _LT_PROG_REPLACE_SHELLFNS.
8270         (_LT_PROG_XSI_REPLACE): Rename to _LT_PROG_FUNCTION_REPLACE.
8271         (_LT_PROG_FUNCTION_REPLACE): Change decorator comment to use
8272         'Extended shell' rather than 'XSI' on successful replacement.
8273         * libltdl/config/general.m4sh (func_dirname, func_basename)
8274         (func_dirname_and_basename, func_stripname): Change decorator
8275         comment to use 'extended shell' rather than 'XSI' on fallback
8276         implementations.
8277         * libltdl/config/getopt.m4sh (func_split_short_opt)
8278         (func_split_long_opt): Ditto.
8279         * libltdl/config/ltmain.m4sh (func_append, func_append_quoted)
8280         (func_arith, func_len, func_lo2o, func_xform): Ditto.
8281         * tests/getopt-m4sh.at (_LT_AT_XSI_FUNC_EXTRACT): Rename to
8282         _LT_AT_EXTENDED_SHELL_FUNC_EXTRACT.
8283         (_LT_AT_EXTENDED_SHELL_FUNC_EXTRACT): Change regular expression to
8284         match new replacable function decorator comments.
8285
8286 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
8287
8288         Optimize assignment of output_la.
8289         * libltdl/config/ltmain.m4sh (func_mode_link): Save two fork/exec
8290         instances.
8291         Report by Ralf Wildenhues.
8292
8293 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
8294
8295         Fix a cut-n-pasto in "2010-07-07 Charles Wilson" patch.
8296         * libltdl/config/ltmain.m4sh (func_mode_link): Remove spurious
8297         variable dereference.
8298
8299 2010-07-07  Gary V. Vaughan  <gary@gnu.org>
8300
8301         Tidy m4 comment header underline.
8302         * libltdl/m4/libtool.m4 (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): Make
8303         sure hyphens in function name comment header underline line up.
8304
8305 2010-07-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
8306
8307         [cygwin|mingw] fix dlpreopen with --disable-static
8308         * libltdl/config/general.m4sh (func_tr_sh): New function.
8309         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [cygwin|mingw]:
8310         Obtain DLL name corresponding to import library by using value
8311         stored in unique variable libfile_$(transliterated implib name).
8312         If that fails, use $sharedlib_from_linklib_cmd to extract DLL
8313         name from import library directly. Also, properly extract dlsyms
8314         from the import library.
8315         (func_mode_link) [cygwin|mingw]: Prefer to dlpreopen DLLs
8316         over static libs when both are available.  When dlpreopening
8317         DLLs, use linklib (that is, import lib) as dlpreopen file,
8318         rather than DLL. Store name of associated la file in
8319         unique variable libfile_$(transliterated implib name)
8320         for later use.
8321         (func_win32_libid): Accomodate pei-i386 import libs
8322         as well as pe-i386.
8323         (func_cygming_dll_for_implib): New function.
8324         (func_cygming_dll_for_implib_fallback): New function.
8325         (func_cygming_dll_for_implib_fallback_core): New function.
8326         (func_cygming_gnu_implib_p): New function.
8327         (func_cygming_ms_implib_p): New function.
8328         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust sed
8329         expressions for lt_cv_sys_global_symbol_to_c_name_address and
8330         lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
8331         as trailing space after module name is optional.
8332         (_LT_LINKER_SHLIBS) [cygwin|mingw][C++]:
8333         Set exclude_expsyms correctly for $host. Simplify regular
8334         expression in export_symbols_cmds.
8335         (_LT_LINKER_SHLIBS) [cygwin|mingw|pw32][C]: Set exclude_expsyms
8336         correctly for $host. Enable export_symbols_cmds to identify
8337         DATA exports by _nm_ prefix.
8338         (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): New macro sets
8339         sharedlib_from_linklib_cmd variable.
8340         (_LT_DECL_DLLTOOL): New macro ensures DLLTOOL is always set.
8341
8342 2010-07-05  Peter Rosin  <peda@lysator.liu.se>
8343
8344         * tests/export.at [MSVC]: dllimport all imported variables.
8345
8346 2010-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8347             Peter Rosin  <peda@lysator.liu.se>
8348
8349         Support for response files with $NM.
8350         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
8351         <nm_file_list_spec>: New tag variable. Set it to '@' if input
8352         files can be passed to $NM in a file named with the '@' option.
8353         * libltdl/config/ltmain.m4sh (func_mode_link): When
8354         nm_file_list_spec is nonempty, use it to avoid skipped_export.
8355         * doc/libtool.texi (libtool script contents): Document
8356         new variable.
8357
8358 2010-07-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8359
8360         Fix ccache test for MSVC.
8361         * tests/static.at (ccache -all-static): Ignore compiler stderr.
8362         Reported by Peter Rosin.
8363
8364 2010-07-03  Charles Wilson  <libtool@cwilson.fastmail.fm>
8365
8366         Avoid false failures caused by filesystem interaction
8367         * tests/dlloader-api.at (dlloader API): Use uglified names for
8368         pseudo-modules.
8369
8370 2010-07-03  Peter Rosin  <peda@lysator.liu.se>
8371
8372         Fix typo in "Add func_append_quoted and do..."
8373         * libltdl/config/ltmain.m4sh (func_mode_compile): Use
8374         func_append_quoted instead of func_append.
8375
8376 2010-07-02  Peter Rosin  <peda@lysator.liu.se>
8377
8378         Don't trigger file name expansion when embedding manifests.
8379         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
8380         [ cygwin, mingw, cegcc ] <cl*>: Remove all spaces in the
8381         case statement of postlink_cmds to make file name expansion
8382         more unlikely.
8383         (_LT_LANG_CXX_CONFIG): Likewise, but also add the missing |.
8384
8385 2010-07-01  Peter Rosin  <peda@lysator.liu.se>
8386
8387         Fix regression caused by "Add func_append_quoted and do..."
8388         * libltdl/config/ltmain.m4sh (func_mode_link): Remove leftover
8389         "_libs" trash.
8390
8391 2010-06-28  Peter Rosin  <peda@lysator.liu.se>
8392
8393         For MSVC, embed the manifest as a resource in the executable.
8394         Fixes a lot of testsuite failures with MSVC 2003 (v8.0) and
8395         above (and perhaps also MSVC .Net) related to running programs
8396         that have been moved (e.g. installed) without their manifests
8397         also having been moved.
8398         * libltdl/m4/libtool.m4 (_LT_PATH_MANIFEST_TOOL): New macro
8399         that locates the Manifest Tool (mt) and verifies that it is
8400         indeed the manifest tool. The result is stored in the new
8401         variable MANIFEST_TOOL.
8402         (_LT_LINKER_SHLIBS) <postlink_cmds>: New tag variable.
8403         [ cygwin, mingw, cegcc ] <cl*>: Embed the manifest file as a
8404         resource. Make sure the embedding work regardless of if the
8405         @OUTPUT@ file name includes a trailing $EXEEXT.
8406         (_LT_LANG_CXX_CONFIG): Likewise.
8407         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Require the above
8408         _LT_PATH_MANIFEST_TOOL.
8409         * libltdl/config/ltmain.m4sh (func_mode_link): After linking
8410         a program, replace @OUTPUT@ in $postlink_cmds and then execute
8411         the commands.
8412         * doc/libtool.texi (libtool script contents): Document
8413         new postlink_cmds variable.
8414         (LT_INIT): Add that the MANIFEST_TOOL environment variable can
8415         be used to override the manifest tool to use.
8416         * tests/exeext.at: New. Make sure linking with both -o prog
8417         and -o prog$EXEEXT works.
8418         * Makefile.am (TESTSUITE_AT): Update.
8419         (TESTS_ENVIRONMENT): Propagate $(MANIFEST_TOOL) to the
8420         testsuite.
8421         * NEWS: Add note of the new MANIFEST_TOOL environment variable.
8422
8423 2010-06-24  Peter Rosin  <peda@lysator.liu.se>
8424
8425         Add MSVC support.
8426         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
8427         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin]: Add
8428         support for the Microsoft C/C++ Compiler (cl) relying on help
8429         from the compile script in Automake.
8430         * NEWS: Add note of the above.
8431
8432 2010-07-01  Gary V. Vaughan  <gary@gnu.org>
8433
8434         Skip `enhanced shell option appending' test when not available.
8435         * tests/getopt-m4sh.at [enhanced shell option appending]:
8436         _LT_AT_XSI_FUNC_EXTRACT will not be able to find the enhanced
8437         libtool func_append function if the replacement wasn't substituted
8438         by configure, since the decorator comments will be different - in
8439         that case simply skip the test.
8440
8441 2010-06-30  Gary V. Vaughan  <gary@gnu.org>
8442
8443         Add func_append test cases for smart and retarded implementations.
8444         * tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): New
8445         macro to extract a fallback function implementation from
8446         ltmain.m4sh.
8447         [option appending]: Use it for a test of the fallback
8448         implementation of func_append.
8449         [enhanced shell option appending]: And also test the enhanced
8450         implementation.
8451         * libltdl/config/ltmain.m4sh (func_append_quoted): Fix missing \\
8452         to escape a quoted space for eval.
8453         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Fix missing $ in
8454         dereference of func_append inline replacement for retarded
8455         shells.
8456
8457 2010-06-29  Gary V. Vaughan  <gary@gnu.org>
8458
8459         Correct func_split_short_opt comment cut-n-pasto.
8460         * libtool/config/getopt.m4sh (func_split_short_opt): Fix
8461         the function comment.
8462
8463         Use a real XSI compliant func_split_short_opt substitution.
8464         * libtool/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Remove
8465         test ${foo:n:m} substrings, instead adding a ${foo%??} check
8466         to the existing XSI tests.
8467         (_LT_PROG_XSI_SHELLFNS): Remove the ${foo:n:m} based
8468         func_split_short_opt substitution in favour of a properly
8469         XSI compliant substitution.
8470         Suggested by Paolo Bonzini.
8471
8472 2010-06-28  Gary V. Vaughan  <gary@gnu.org>
8473
8474         Add func_append_quoted and do inline func_append substitutions.
8475         * libtool/config/ltmain.m4sh: Replace all occurrences of
8476         `foo="$foo bar"' with func_append. No decorator comment was
8477         added since /func_append [a-zA-Z0-9_]* "/ is already an
8478         excellent match regexp, and additional comments would only
8479         complicate things.
8480         (func_append_quoted): New function that quotes a value with
8481         func_quote_for_eval before appending it.  To avoid quoting the
8482         whitespace in the passed value, a single whitespace is added
8483         automatically.  Changed callers where possible.
8484         * libtool/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Perform a
8485         `+=' implementation substitution for func_append_quoted.  More
8486         importantly, systematically replace matching func_append calls
8487         with inline `+=' when supported (for maximum speed), and
8488         longhand `foo="$foo bar"' otherwise to avoid the function
8489         overhead.
8490
8491         Add an XSI replacement for func_split_short_opt, with test cases.
8492         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Remove 'v' now
8493         that getopt.m4sh doesn't steal that letter for the --version
8494         short option.
8495         * libltdl/config/ltmain.m4sh (M4SH_GETOPTS): We can now use 'v'
8496         as a short option for '--verbose'.
8497         * libltdl/config/getopt.m4sh (m4go_printopts): Add back in the
8498         leading '-' for remaining non-argument short options.
8499         (func_split_short_opt): Use the correct sed script variable.
8500         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also ensure
8501         that XSI substring extraction is supported.
8502         (_LT_PROG_XSI_SHELLFNS): Use XSI substring extraction to split
8503         short options to avoid unnecessary forks if the host shell
8504         supports that.
8505         * tests/getopt-m4sh.at: New tests for getopt.m4sh coverage.
8506         * Makefile.am (TESTSUITE_AT): Add getopt-m4sh.at.
8507         (TESTS_ENVIRONMENT): Pass M4SH and SED for substition into the
8508         m4sh expansion performed in tests/getopt-m4sh.at.
8509
8510 2010-06-27  Gary V. Vaughan  <gary@gnu.org>
8511
8512         Add missing case branch terminators.
8513         * libltdl/config/ltmain.m4sh: Fixed everal case branches with
8514         missing ';;' terminators.
8515
8516         Use TAB-SPACE in preference to SPACE-TAB.
8517         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): Some editors
8518         might optimise away the SPACE in SPACE-TAB sequences, so use
8519         TAB-SPACE just in case.
8520         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8521
8522         Amend a missed opt_mode rename instance in ltmain.m4sh.
8523         * libltdl/config/ltmain.m4sh <mode>: Rename to opt_mode.
8524
8525         Fix portability regressions in today's earlier changeset.
8526         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): `sed -i' is not
8527         portable; use `mv -f ...|| cp -f ...' instead.
8528         Add an initial backslash to sed `c' substitutions with leading
8529         whitespace, so that indentation is not removed by some non-POSIX
8530         compliant sed implementations.
8531         (_LT_PROG_XSI_SHELLFNS): Display a diagnostic warning message if
8532         one or more XSI function replacements failed.
8533
8534         getopt.m4sh generated libtool option parser, and XSI improvements.
8535         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Moved portable
8536         shell versions of various utility functions from here...
8537         * libltdl/config/getopt.m4sh (func_split_long_opt): ...to here...
8538         * libltdl/config/general.m4sh (func_dirname, func_basename)
8539         (func_dirname_and_basename, func_strip_name): ...here...
8540         * libltdl/config/ltmain.m4sh (func_append, func_arith, func_len)
8541         (func_lo2o, func_xform): ...and here.
8542         * libltdl/config/libtool.m4 (_LT_PROG_XSI_REPLACE): New macro that
8543         expands into a sed command for replacing the contents of a
8544         suitably decorated shell function with an alternate XSI
8545         implementation.
8546         (_LT_PROG_XSI_SHELLFNS): Use it to replace the portable shell
8547         versions of the functions above with equivalent XSI
8548         implementations that avoid unnecessary forks if the host shell
8549         supports that.
8550         * libltdl/config/ltmain.m4sh: Replace hand written shell code
8551         with a call to M4SH_GETOPTS. Rename some option variables in
8552         the client code to match the generated option parser settings.
8553         * libltdl/config/general.m4sh (func_echo, func_error)
8554         (func_warning): Use $opt_mode instead of obsoleted $mode in
8555         message leader.
8556         * libltdl/config/getopt.m4sh (m4_version_prereq): This file
8557         requires m4sugar.m4 from Autoconf-2.61 or newer. 
8558
8559 2010-06-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
8560
8561         [cygwin] Refactor C++ exception handling for Win32 correctness
8562         * tests/exception.at (common.h): New file, refactored from
8563         (module.h): Move declaration of modexc to libcommon.
8564         Include common.h. Use explicit import/export markings for
8565         symbols when building on win32 or cygwin.
8566         (common.cpp): New file.
8567         (module.cpp): Ensure correct symbols markings when including
8568         module.h.
8569         (lib.h): Use explicit import/export markings for symbols
8570         when building on win32 or cygwin.
8571         (lib.cpp): Ensure correct symbol markings when including lib.h.
8572         (main.cpp): Include common.h.
8573         (commands): Ensure correct symbol markings when compiling
8574         main.cpp, and lib.cpp, and module.cpp. Add command to compile
8575         common.cpp, and to link libcommon.la.  Add libcommon.la when
8576         linking module.la and main.  Add command to install libcommon.la.
8577
8578 2010-06-21  Gary V. Vaughan  <gary@gnu.org>
8579
8580         Ensure getopts.m4sh is compatible with Autoconf-2.61 and newer.
8581         * libltdl/config/getopt.m4sh (m4_chomp): Ensure this macro is
8582         implemented even if Autoconf's m4sugar.m4 doesn't provide it.
8583         (m4go_expand): New macro based on Autoconf-2.64 m4_expand. Use
8584         it everywhere incase m4sugar.m4 doesn't have an implementation.
8585         (m4_ifnblank): Replace all uses with m4_ifval, which was
8586         available long before m4_ifnblank was introduced.
8587
8588 2010-06-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8589
8590         Fix clean mode for HP-UX 11.31 sh.
8591         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not try
8592         to match a null string in a case pattern, even with surrounding
8593         spaces.  Fixes `lt_dlopenadvise library loading' test.
8594
8595         Add comment for exception handling module unloading issue.
8596         * tests/exceptions.at (C++ exception handling): Add comment
8597         for last patch.
8598
8599         Fix flags test failure when ld is used as linker.
8600         * tests/flags.at (passing CC flags through libtool): When $LD
8601         is used for linking libraries, ensure flags passed with `-Wc,'
8602         are not passed through to $LD, but flags passed with `-Wl,' use
8603         $wl when linking programs.  Fixed testsuite failure on HP-UX
8604         10.20.
8605
8606 2010-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
8607
8608         [cygwin] Fix segfault in C++ exception handling test
8609         * tests/exceptions.at (main.cpp:exceptions_in_module):
8610         Move dlclose outside catch block; otherwise __cxa_end_catch
8611         (part of the cygwin g++ ABI) accesses pointers to data inside
8612         unloaded DLL. This is a platform ABI-specific bug, but is
8613         likely common to many platforms' g++ and/or other C++
8614         compilers.
8615
8616 2010-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8617
8618         Fix srcdir computation for manual runs of old tests.
8619         * tests/defs.m4sh: Strip trailing `/tests' from srcdir, to allow
8620         `$srcdir/tests/FOO.test' to be run from the top build directory.
8621
8622         Clean up @var handling in the manual.
8623         * doc/libtool.texi: Throughout the manual, replace @var with
8624         @samp or @code as appropriate, ensure the argument of remaining
8625         @var uses are lower-case.
8626
8627         Let the bootstrap script fail upon errors.
8628         * bootstrap: Enable errexit.
8629
8630         Fix execute mode test for OSF/1 5.1.
8631         * tests/execute-mode.at (execute mode): Do not use grep -F
8632         with an empty pattern.
8633         * THANKS: Update.
8634         Report by Jay K.
8635
8636         Use config.cache variable for PIC flag, to allow override.
8637         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) <lt_prog_compiler_pic>:
8638         Save result, and allow override, through cache variable
8639         lt_cv_prog_compiler_pic{,_CXX,_F77,_FC}.  The cache variable
8640         needs to contain an eventual -DPIC.
8641         * tests/pic_flag.at (override pic_flag at configure time):
8642         New file, new test.
8643         * Makefile.am (TESTSUITE_AT): Update.
8644         * NEWS, THANKS: Update.
8645         Suggestion by Joakim Tjernlund and Paolo Bonzini.
8646
8647 2010-06-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8648
8649         Optimize func_ltwrapper_scriptname to assume a cwrapper.
8650         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname): Do not
8651         call func_ltwrapper_executable_p again here, this function is
8652         documented to allow being called with wrapper executables.
8653
8654         Fix bootstrap script to cope with changed AC_INIT arguments.
8655         * bootstrap: When extracting PACKAGE and VERSION from AC_INIT
8656         arguments, be sure to remove a 'GNU ' prefix and lowercase the
8657         package name for PACKAGE.  Also set PACKAGE_NAME and PACKAGE_URL
8658         appropriately for GNU software.  Pass these variables to the
8659         make commands creating tests/package.m4 and other files.
8660         * Makefile.am (edit): Fix substitution of PACKAGE_NAME and
8661         PACKAGE_STRING.
8662         * libltdl/config/announce-gen.m4sh: Use @PACKAGE@ not
8663         @PACKAGE_STRING@.
8664
8665 2010-06-15  Peter Rosin  <peda@lysator.liu.se>
8666
8667         On Windows, find potential libs regardless of file name case.
8668         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD),
8669         libltdl/config/ltmain.m4sh (func_mode_link): On Windows,
8670         find potential libs regardless of file name case.
8671         * tests/nocase.at: New test, to check for regressions
8672         of the above.
8673         * Makefile.am: Add above new test.
8674         * doc/libtool.texi (libtool script contents): Document
8675         new variables.
8676         * NEWS: Updated.
8677
8678 2010-06-15  Philip Allison  <philip.allison@smoothwall.net>  (tiny change)
8679
8680         Avoid GCC -Wall compiler warning in dlopen self test.
8681         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Fix unused
8682         variable warning in test program.
8683         * THANKS: Update.
8684
8685 2010-06-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8686
8687         Fix cleaning of uninstalled w32 shell wrapper in subdirs.
8688         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not
8689         override global objdir variable, instead use odir for the
8690         directory of to-be-removed files.  Drop unneeded origobjdir.
8691         Report by Charles Wilson.
8692
8693 2010-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8694
8695         Enable colored Autotest testsuite output if available.
8696         * tests/testsuite.at: Move AT_INIT call down to late in the
8697         file, all prior code can go beforehand.
8698         Call AT_COLOR_TESTS if defined.
8699
8700 2010-06-14  Peter O'Gorman  <peter@pogma.com>
8701
8702         Pass resident test with --disable-shared too.
8703         * tests/resident.at: use LTDL_SET_PRELOADED_SYMBOLS.
8704
8705 2010-06-13  Peter O'Gorman  <peter@pogma.com>
8706
8707         Test with --disable-shared at release time too.
8708         * HACKING: Note it.
8709
8710         Avoid failure for --disable-shared.
8711         * tests/lt_dladvise.at: Hack.
8712
8713         Use LTDL_SET_PRELOADED_SYMBOLS to avoid failure.
8714         * tests/exceptions.at: Use it.
8715
8716 2010-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8717
8718         Print Libtool project URL in program --help output.
8719         * configure.ac (AC_INIT): Set PACKAGE argument to `GNU Libtool',
8720         so Autoconf knows this is GNU software.  For Autoconf < 2.64,
8721         if AC_PACKAGE_URL is not defined, substitute PACKAGE_URL.
8722         * Makefile.am (edit): Substitute PACKAGE_URL.
8723         ($(srcdir)/tests/package.m4): Also depend on Makefile.am.
8724         Define AT_PACKAGE_URL, for `tests/testsuite --help' output.
8725         * libltdl/config/getopt.m4sh (func_help): Also extract comment
8726         lines that mention a home page and general GNU help.
8727         * libltdl/config/ltmain.m4sh: Use @PACKAGE_BUGREPORT@ instead of
8728         hard-coded list address.  Also mention Libtool home page and
8729         general GNU help web page.
8730         * libtoolize.m4sh: Likewise.
8731
8732 2010-06-12  Peter Rosin  <peda@lysator.liu.se>
8733             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8734
8735         Improve libdir usage from within ltdl on MinGW.
8736         * libltdl/ltdl.c (parse_dotla_file) [__WINDOWS__]: Read the
8737         libdir entry in the .la file, but accept it only if it is not
8738         a unix-style absolute name.
8739         * tests/ltdl-libdir.at: New test that checks if ltdl finds an
8740         installed module via the libdir variable in the .la file.  On
8741         MinGW, use a Windows-style libdir name including drive spec.
8742         * Makefile.am: Add above.
8743
8744 2010-06-11  Peter O'Gorman  <peter@pogma.com>
8745
8746         Skip bindir install test if we're not building shared.
8747         * tests/bindir.at: Skip install test if necessary.
8748         * THANKS: Update.
8749         Report by Michael E Faenza.
8750
8751 2010-06-11  Gary V. Vaughan  <gary@gnu.org>
8752
8753         Use getopt.m4sh to generate libtoolize option parser.
8754         * libtoolize.m4sh: Replace hand written shell code with a
8755         call to M4SH_GETOPTS.  Move some premature initialization
8756         from the preamble to the main part of the script.  Exit with
8757         an error on spurious additional non-option arguments.
8758         (envopts): Integrate LIBTOOLIZE_OPTIONS pre-parsing into the
8759         main option parsing loop.
8760         (opt_copy): Use in place of and in the reverse sense of the
8761         old opt_link variable.
8762
8763 2010-06-10  Peter O'Gorman  <peter@pogma.com>
8764
8765         Create reloadable object files with non-pic objects too.
8766         * libltdl/config/ltmain.m4sh: When not building a shared
8767         library, use the non-pic objects to create a reloadable
8768         object, because pic objects do not exist.
8769
8770 2010-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8771
8772         Ensure libltdl is up to date for check-local.
8773         * Makefile.am (LTDL_BOOTSTRAP_DEPS): New variable.
8774         (all-local): Use it to simplify dependencies.
8775         (testsuite_deps_uninstalled): Add $(LTDL_BOOTSTRAP_DEPS).
8776         Report by Peter Rosin.
8777
8778 2010-06-10  Gary V. Vaughan  <gary@gnu.org>
8779
8780         Support shell tracing inside functions even with ksh.
8781         * libltdl/config/getopt.m4sh: Set $opt_debug to be either `:'
8782         or `set -x' depending on whether --debug was parsed to match
8783         usage in libtoolize.m4sh and ltmain.m4sh.
8784         * clcommit.m4sh, libltdl/config/announce-gen.sh: Instead of
8785         `$opt_debug && ...', use `test "$opt_debug" != ":" && ...'.
8786         * clcommit.m4sh, libltdl/config/announce-gen.m4sh,
8787         libltdl/config/getopt.m4sh, libltdl/connfig/mailnotify.m4sh:
8788         Execute at the start of functions to cater to ksh, which
8789         resets `-x' inside shell functions.
8790
8791         Fix a typu in HACKING.
8792         * HACKING (Release Procedure): s/Makeflie/Makefile/.
8793
8794 2010-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8795
8796         Factorize testing gcj installation in the testsuite.
8797         * tests/testsuite.at (LT_AT_TAG): For the GCJ tag, actually
8798         try to compile a .java file when deciding whether to skip.
8799         (LT_AT_EXEC_TAG): New macro, to also ensure runnability.
8800         * tests/convenience.at (Java convenience archives): Use
8801         LT_AT_EXEC_TAG, simplify accordingly.
8802         * tests/flags.at (passing lt_tag flags through libtool): Use
8803         m4_defn for tag so LT_AT_TAG works.
8804         * tests/infer-tag.at (GCJ inferred tag): Simplify.
8805         * THANKS: Update.
8806         Report by Warren Dodge.
8807
8808 2010-06-09  Peter O'Gorman  <peter@pogma.com>
8809
8810         Skip demo-nopic tests if SELinux policy will cause failure.
8811         * tests/demo-nopic.test: Check SELinux policy and skip if
8812         necessary.
8813
8814 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
8815
8816         Set SCM version number to 2.2.11a.
8817         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8818         number to 2.2.11a.
8819         * NEWS: Updated.
8820
8821         GNU Libtool 2.2.10 was released.
8822
8823         Prepare for next release.
8824         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version number
8825         to 2.2.10.
8826         * NEWS: Update version number.
8827
8828         Fix a quoting bug with ./commit -a 'A U Thor'.
8829         * clcommit.m4sh (func_commit): Use func_show_eval when calling
8830         git, so that the previously func_quote_for_eval()ed $git_flags is
8831         expanded properly.
8832
8833 2009-09-15  Peter Rosin  <peda@lysator.liu.se>
8834
8835         Don't try the MSYS libdir path on MinGW.
8836         * libltdl/ltdl.c (parse_dotla_file) [mingw]: The absolute
8837         libdir path in the .la file is recorded as an MSYS (POSIX
8838         style) path. Make sure it isn't tried when locating the
8839         shared library.
8840         * NEWS: Updated.
8841
8842 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
8843
8844         Simplify license variations, and add missing license texts.
8845         * ChangeLog, ChangeLog.1996, ChangeLog.1997, ChangeLog.1998,
8846         ChangeLog.1999, ChangeLog.2000, ChangeLog.2001, ChangeLog.2002,
8847         ChangeLog.2003, ChangeLog.2004, ChangeLog.2005, ChangeLog.2006,
8848         ChangeLog.2007, ChangeLog.2008, ChangeLog.2009, NEWS: Add
8849         all-permissive license.
8850         * HACKING, README, README.alpha, TODO: Relax license to RMS
8851         encouraged all-permissive terms.
8852         * libltdl/README: Ditto. I added the original license text in
8853         2007, and there's no need for it to be so long for such a trivial
8854         file.
8855         * libltdl/config/getopt.m4sh, libltdl/general.m4sh: Cvs-utils is
8856         dead, and I am the author of these files, so consolidated license
8857         terms to match regular Libtool licensing.
8858         * HACKING (Licensing Rules): Update wording, and list of files for
8859         the all permissive license.
8860         (GPL with CVS-Utils exception clause): Removed.  No files have these 
8861         license any more.
8862         (GPL with Libtool exception clause): Ditto, only libltdl/README
8863         used to be distributed with this variation.
8864         * AUTHORS: Add GPL license text.
8865         
8866         Fix a type in the 2.2.8 release notes.
8867         * NEWS: s/ romoted/ promoted/ in the 2.2.8 release notes.
8868
8869         Don't warn about the blank line inserted into git commit message.
8870         * clcommit.m4sh: When searching for accidental commits of mutliple
8871         changes, ignore the second line of the message, which we inserted
8872         earlier to support "git log --oneline".
8873
8874         Enable correct extraction of multiline copyright from --version.
8875         * libltdl/config/getopt.m4sh: Wrap copyright notice at 76
8876         columns.
8877         (func_version): Don't omit spaces when merging multiline copyright
8878         notices.
8879         * clcommit.m4sh, libtoolize.m4sh: Wrap copyright notice at 76
8880         columns.
8881
8882         * NEWS (2.2.8): BlueGene compiler tests were performed on BG/P
8883         systems, not BG/L.
8884         Reported by Christian Rössel <christian.roessel@gmx.de>
8885
8886 2010-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8887
8888         Fix testsuite helper macros to not hide failure.
8889         * tests/testsuite.at (LT_AT_CONFIGURE, LT_AT_MAKE):
8890         Do not wrap AT_CHECK in a subshell, so that failures are
8891         properly propagated; instead, move environment changes inside
8892         the AT_CHECK code.
8893         Report and analysis by Peter Rosin.
8894
8895         Avoid autom4te warning about unnamed diversion.
8896         * libltdl/config/getopt.m4sh: Use diversion name KILL not -1.
8897
8898 2010-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8899
8900         Make versioning test stricter for w32, enable shared libs.
8901         * tests/versioning.at (versioning): Add -no-undefined to
8902         LDFLAGS.
8903         (test_uninstalled): Also move $bindir out of the way
8904         temporarily.
8905
8906         Fix versioning test for LDFLAGS=-Wl,--as-needed.
8907         * tests/versioning.at (versioning): For the library update
8908         hypotheses, ensure the unchanged library libb isn't accidentally
8909         relinked against the new liba, by not reinstalling libb.
8910         Fixes testsuite failure for the incompatible update case with
8911         LDFLAGS=-Wl,--as-needed.
8912         * THANKS: Update.
8913         Report by Ryan Hill.
8914
8915 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8916
8917         Rewrite manual intro to be gender-neutral.
8918         * doc/libtool.texi (Introduction): Use gender-neutral
8919         formulation when addressing developers.
8920
8921 2010-06-05  Gary V. Vaughan  <gary@gnu.org>
8922
8923         Update and simplify all m4sh scripts to use latest getopt.m4sh.
8924         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Rewrite option
8925         parsing loop over M4SH_GETOPTS macro, and adjust all clients of
8926         option variables to use generated option names.
8927
8928         Add missing quote for literal ? in a shell case statement.
8929         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Quote initial ?
8930         correctly for use in a shell case statement.
8931
8932         Quote command line arguments after --rcfile properly.
8933         * libltdl/config/announce-gen.m4sh (--rcfile): Quote remaining
8934         arguments shell variable expression correctly for eval.
8935         
8936         Shift correctly in numbered option argument collection.
8937         * libltdl/config/getopt.m4sh (_m4go_option): Argument list also
8938         needs to be `shift'ed in the shell option loop after processing a
8939         numbered argument collection.
8940
8941         Fetch from new upstream host for config.guess and config.sub.
8942         * Makefile.maint (WGET_CGIT): Location of newest config.guess and
8943         config.sub upstream.
8944         (fetch): Fetch config.guess and config.sub from WGET_CGIT, rather
8945         than no-longer-updating WGET_SGO location.
8946
8947         Update generated upload directive file format to v1.1.
8948         * Makefile.maint (git-dist, diffs): Update to generate v1.1 format
8949         directive files for ftp://ftp-upload.gnu.org/incoming/ftp.
8950
8951         Fix web manual generation details in release instructions.
8952         * HACKING (Release Procedure): Move the instruction for generating
8953         web manuals for a new release to before the instruction that bumps
8954         the version numbers to the post release values.
8955
8956         Set SCM version number to 2.2.9a.
8957         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8958         number to 2.2.9a.
8959         * NEWS: Updated.
8960
8961         GNU Libtool 2.2.8 was released.
8962
8963         Prepare for next release.
8964         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8965         number to 2.2.8.
8966         * NEWS: Update version number.
8967         * INSTALL, libltdl/config/install-sh, libltdl/config/config.guess,
8968         libltdl/config/config.sub, libltdl/config/texinfo.tex: Updated
8969         from canonical source.
8970
8971         Provide an m4sh reimplementation of announce-gen.
8972         * libltdl/config/getopt.m4sh (M4SH_GETOPTS): New macro that takes
8973         a quoted m4 list of command line options to be parsed, and
8974         generates the shell code to parse those options and collect the
8975         results into appropriately named 'opt_xxx' shell variables.  Also,
8976         add some private supporting macros, and improve the comments
8977         radically.
8978         * libltdl/config/announce-gen.m4sh: New file, to generate and
8979         optionally post (an enhancement over the gnulib perl script of the
8980         same name) a release announcement.
8981         * Makefile.maint (announce-gen): Build a new announce-gen script
8982         in the build directory, from the contents of
8983         libltdl/config/announce-gen.m4sh.
8984         * HACKING (Release Procedure): Update the instructions to use
8985         announce-gen.
8986         (Alpha release note template, Full release note template):
8987         Removed.
8988
8989 2010-05-22  Gary V. Vaughan  <gary@gnu.org>
8990
8991         Support "git log --oneline" in generated commit messages.
8992         * clcommit.m4sh (func_check_commit_msg): Insert an empty line
8993         between the ChangeLog entry summary line and the ChangeLog entry
8994         body, so that "git log --oneline" works properly.
8995         Bump copyright and version number.
8996         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8997
8998 2010-05-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8999
9000         * HACKING: Set Reply-To: in announcement emails.
9001
9002 2010-05-21  Gary V. Vaughan  <gary@gnu.org>
9003
9004         Set SCM version number to 2.2.7c.
9005         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9006         number to 2.2.7c.
9007         * NEWS: Updated.
9008
9009         GNU Libtool 2.2.7b  was released.
9010
9011         Prepare for next release candidate.
9012         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9013         number to 2.2.7b.
9014         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
9015         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: These files
9016         have been updated without a serial bump since the last release.
9017         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Bump Revision, to
9018         account for bugfixes since the last release.
9019         * libltdl/config/install-sh, libltdl/config/config.guess,
9020         libltdl/config/config.sub, libltdl/config/texinfo.tex,
9021         INSTALL: Updated from canonical source.
9022         * NEWS: Update with missing entries from ChangeLog.
9023         * HACKING: Note workaround for developer tool-path leakage bug.
9024
9025         Skip some tests in --disable-ltdl-install mode.
9026         * tests/dlloader-api.at, tests/exceptions.at,
9027         tests/lalib-syntax.at, tests/loadlibrary.at,
9028         tests/lt_dlopenext.at, tests/resident.at: Detect when these
9029         tests try to link against the not installed libltdl.la, and
9030         skip rather than FAIL.
9031
9032 2010-05-05  Peter Rosin  <peda@lysator.liu.se>
9033
9034         Clarify versioning algorithm documentation.
9035         * doc/libtool.texi (Updating version info): Be explicit
9036         about setting age to zero on interface change.
9037         Reported by Jef Driesen <jefdriesen@hotmail.com>
9038
9039 2010-05-04  Peter O'Gorman  <peter@pogma.com>
9040
9041         Ranlib is required with -force_load and fat archives.
9042         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Run
9043         ranlib.
9044         Reported by Jeremy Huddleston <jeremyhu@apple.com>
9045
9046 2010-04-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9047
9048         Fix incompatible struct declarations.
9049         * doc/libtool.texi (Dlpreopening): Remove broken documentation
9050         of lt_dlsymbol and lt_dlsymlist.  Document typedef lt_dlsymlist
9051         and symbol lt_preloaded_symbols according to the implementation.
9052         * tests/demo/dlmain.c (lt_symlist): Make struct anonymous ...
9053         (lt_dlsymlist): ... and typedef to this name.
9054         (lt_preloaded_symbols, main): Adjust.
9055         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
9056
9057 2010-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9058
9059         Use linker_flags not compiler_flags with $LD.
9060         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]
9061         <archive_cmds, archive_expsym_cmds>: With xlf and bgxlf
9062         compilers, when linking with $LD, use $linker_flags not
9063         $compiler_flags.
9064
9065 2010-03-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9066
9067         Add FAQ, and FAQ entry for flags stripped at library link time.
9068         * doc/libtool.texi (FAQ, Stripped link flags): New nodes.
9069         (Wrapper executables): Replace bug address with macro.
9070         (Compile mode, Link mode): Document `-Wc,' and `-Xcompiler '
9071         semantics better.
9072         * libltdl/config/ltmain.m4sh (func_mode_link): Rewrite comment
9073         for the flags that are passed through.
9074         Prompted by reports from Simon Richter <Simon.Richter@hogyros.de>,
9075         Török Edwin <edwintorok@gmail.com> and
9076         Åke Sandgren <ake.sandgren@hpc2n.umu.se>.
9077
9078 2010-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9079
9080         Fix preloader symbol list declaration in libltdl.
9081         * libltdl/ltdl.c (preloaded_symbols): Fix declaration to include
9082         array brackets.
9083         (lt_dlinit): Do not take address of preloaded_symbols.
9084
9085         Fix typo in libtool --help output.
9086         * libltdl/config/ltmain.m4sh (func_mode_help): Fix typo in help
9087         output.
9088
9089         Fix a couple of documentation errors.
9090         * doc/libtool.texi (Autoconf macros): Improve hyphenation.
9091         (Using libltdl): libltdl uses the Lesser General Public License,
9092         not the Library General Public License.
9093
9094         Do not use @sc nor @acronym in the manual.
9095         * doc/libtool.texi: Remove all usage of @sc.
9096
9097 2010-03-19  Chris Demetriou  <cgd@google.com>
9098
9099         Sort output of 'find' to enable deterministic builds.
9100         * libltdl/config/ltmain.m4sh (func_extract_archives): Sort
9101         output of 'find'.
9102         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Likewise.
9103         * THANKS: Update.
9104
9105 2010-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9106
9107         Unconditionally normalize LC_ALL, LANGUAGE in libtool script.
9108         * libltdl/config/ltmain.m4sh: Unconditionally set LC_ALL and
9109         LANGUAGE to 'C', to avoid semantic differences on MinGW under
9110         Chines locale.  SCO issues with e.g. LANG=C are not known to
9111         be relevant today any more.
9112         Report by Pete Batard <pbatard@gmail.com> and Xiaofan Chen
9113         <xiaofanc@gmail.com>.
9114
9115 2010-03-17  Peter Rosin  <peda@lysator.liu.se>
9116
9117         Preserve the last error when restoring the error mode.
9118         * libltdl/loaders/loadlibrary.c (wm_open): Don't rely on
9119         SetThreadErrorMode (or SetErrorMode) to not clobber the last
9120         error.
9121         Report by Ralf Wildenhues.
9122
9123         Use Get/SetThreadErrorMode if they are available.
9124         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): Replaced...
9125         (wrap_getthreaderrormode): ...by this function that checks
9126         first for GetThreadErrorMode, then GetErrorMode and makes use
9127         of either of those or...
9128         (fallback_getthreaderrormode): ...else falls back to this
9129         replacement function that implements the old workaround, which
9130         was previously implemented in...
9131         (fallback_geterrormode): ...this now renamed function.
9132         (geterrormode): Replaced...
9133         (getthreaderrormode): ...by this function pointer that points
9134         at either of wrap_getthreaderrormode, GetThreadErrorMode,
9135         GetErrorMode or fallback_getthreaderrormode.
9136         (wrap_setthreaderrormode): New function that checks if
9137         SetThreadErrorMode is supported by the system and makes use of
9138         it if it is.
9139         (fallback_setthreaderrormode): New function that is used
9140         otherwise that implements the old version using SetErrorMode.
9141         (setthreaderrormode): New function pointer that points at
9142         either of wrap_setthreaderrormode, SetThreadErrorMode or
9143         fallback_setthreaderrormode.
9144         (vm_open): Adjust to the above.
9145
9146 2010-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9147
9148         Detect Sun compiler suite with 'sun'-prefixed names.
9149         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
9150         (_LT_SYS_HIDDEN_LIBDEPS) [solaris]: Accept compiler names sunCC,
9151         sunf77, sunf90, sunf95 in addition to CC, f77, f90, f95.
9152         * NEWS: Update.
9153         Report by Vadim Zeitlin.
9154
9155 2010-02-28  Pierre Ossman  <ossman@ossman.lkpg.cendio.se>  (tiny change)
9156             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9157
9158         Fix deplibs check fallback for 64-bit Windows and Windows CE.
9159         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Accept file formats
9160         'pe-arm-wince' and 'pe-x86-64'.  Add note about consistency with ...
9161         * libltdl/config/ltmain.m4sh (func_win32_libid): ... the respective
9162         pattern here; sync pattern from the former.
9163         * tests/deplibs-mingw.at (deplibs without file command): New
9164         file, new test.
9165         * Makefile.am (TESTSUITE_AT): Update.
9166         * NEWS: Update.
9167
9168 2010-02-24  Scott McCreary  <scottmc2@gmail.com>  (tiny change)
9169
9170         Update search path on Haiku for legacy system directory.
9171         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [haiku]
9172         <sys_lib_dlsearch_path_spec>: Replace legacy
9173         /boot/beos/system/lib directory with /boot/system/lib.
9174         * THANKS: Update.
9175
9176 2010-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9177
9178         manual: fix detailmenu ordering.
9179         * doc/libtool.texi (Top): Add section for `Linking executables'
9180         in the detailmenu.
9181
9182 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
9183
9184         Guard against strerror()==NULL
9185         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main):
9186         Check return value of strerror() using nonnull().
9187         (func_emit_cwrapperexe_src:find_executable): Ditto.
9188         (func_emit_cwrapperexe_src:chase_symlinks): Ditto.
9189
9190 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
9191
9192         Document wrapper changes.
9193         * NEWS: Indicate new feature and incompatibility.
9194         * doc/libtool.texi [detailmenu]: Add reference to subsection
9195         'Wrapper executables for programs', in Platform Quirks category.
9196         [Linking executables]: Mention wrapper executables, in
9197         addition to wrapper scripts. Add menu referencing subsection
9198         'Wrapper executables for programs'.
9199         [Wrapper executables for programs]: New subsection. Documents
9200         cwrapper rationale and command line options.
9201
9202 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
9203
9204         Add --lt-* options to shell wrapper
9205         * libltdl/config/ltmain.m4sh (func_emit_wrapper): Call
9206         func_parse_lt_options early. Use func_exec_program.
9207         (func_emit_wrapper:func_parse_lt_options): New function.
9208         (func_emit_wrapper:func_lt_dump_args): New function.
9209         (func_emit_wrapper:func_exec_program_core): New function.
9210         (func_emit_wrapper:func_exec_program): New function.
9211
9212 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
9213
9214         Enable runtime cwrapper debugging; add tests
9215         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
9216         Update comments. Initialize program_name. Eliminate _LENGTH
9217         variables for string constants. In debug mode, print a
9218         banner with known content before any other output. Remove
9219         LTWRAPPER_DEBUGPRINTF macro. Add constants and variables
9220         to support new --lt-debug option.
9221         (func_emit_cwrapperexe_src:ltwrapper_debugprintf): Renamed to...
9222         (func_emit_cwrapperexe_src:lt_debugprintf): this. Only print
9223         messages if lt_debug != 0. Ensure appearance of messages
9224         conforms to GCS.
9225         (func_emit_cwrapperexe_src:lt_fatal): Ditto.
9226         (func_emit_cwrapperexe_src:lt_error_core): Ditto.
9227         (func_emit_cwrapperexe_src): Update all callers to lt_fatal.
9228         Update all users of LTWRAPPER_DEBUGPRINTF (()) to call
9229         lt_debugprintf () directly.
9230         (func_emit_cwrapperexe_src:main): Consolidate option parsing.
9231         Ensure first use of lt_debugprintf occurs after option parsing.
9232         Add stanza to parse for --lt-debug and set lt_debug variable.
9233         Use strcmp rather than strncmp, where safe.
9234         * tests/cwrapper.at: Add new tests for --lt-debug and
9235         -DLT_DEBUGWRAPPER.
9236
9237 2010-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9238
9239         Use --email with gendocs.sh.
9240         * Makefile.maint (web-manual): Pass bug reporting address to
9241         gendocs.sh.
9242
9243         Make testsuite code C++ clean again.
9244         * tests/resident.at (resident modules): Fix for C++.
9245
9246 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
9247             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9248
9249         Testsuite exposure for dlloader API.
9250         * tests/dlloader-api.at: New file, new test.
9251         * Makefile.am (TESTSUITE_AT): Update.
9252
9253 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
9254
9255         * tests/loadlibrary.at: Fix C++ issues.
9256
9257 2010-01-20  Peter Rosin  <peda@lysator.liu.se>
9258
9259         Report proper errors from the loadlibrary loader.
9260         * libltdl/loaders/loadlibrary.c (loadlibraryerror): New
9261         helper function that returns the latest Windows error as a
9262         string, or the provided default string on failure to do so.
9263         (LOADLIB_SETERROR): New macro that wraps previous to make it
9264         easy to use.
9265         (vm_open, vm_close, vm_sym): Make use of previous.
9266         (LOCALFREE): New macro to help free the Windows error string.
9267         (vl_exit): Make use of previous.
9268         * tests/loadlibarry.at: New file, new test that makes sure
9269         the loadlibrary loader reports non-standard error messages.
9270         * Makefile.am (TESTSUITE_AT): Add above test.
9271
9272 2010-01-02  Peter Rosin  <peda@lysator.liu.se>
9273
9274         Use GetErrorMode if it is available.
9275         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): New
9276         function that checks if GetErrorMode is supported by the
9277         system and makes use of it if it is.
9278         (fallback_geterrormode): New function that is used otherwise
9279         that implements the old workaround.
9280         (geterrormode): New function pointer that points at either
9281         of the above or directly at GetErrorMode.
9282         (vm_open): Make use of the above.
9283
9284 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9285
9286         Ensure functions from resident modules work in atexit handlers.
9287         * tests/resident.at (resident modules): New file, new test.
9288         * Makefile.am (TESTSUITE_AT): Adjust.
9289         Report by Bob Friesenhahn.
9290
9291         Testsuite exposure for relative output file names and deplibs.
9292         * tests/deplib-in-subdir.at (deplib in subdir): New file, new
9293         test.
9294         * Makefile.am (TESTSUITE_AT): Update.
9295         Prompted by report from Bob Friesenhahn.
9296
9297 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9298             Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
9299
9300         Testsuite exposure for C++ exception handling.
9301         * tests/exceptions.at (C++ exception handling): New file, new
9302         test.
9303         * Makefile.am (TESTSUITE_AT): Update.
9304         Report by Bob Friesenhahn.
9305
9306 2010-01-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9307
9308         Bump copyright years.
9309         * ChangeLog.2009: New, rotated from ...
9310         * ChangeLog: ... here.
9311         * Makefile.am (EXTRA_DIST): Add ChangeLog.2009.
9312         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
9313         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
9314         * libtoolize.m4sh: Likewise.
9315
9316 2009-12-30  Peter Rosin  <peda@lysator.liu.se>
9317
9318         * libltdl/ltdl.c (lt_dlerror): Remove meaningless conditional.
9319
9320 2009-12-29  Peter Rosin  <peda@lysator.liu.se>
9321
9322         * libltdl/ltdl.c (file_not_found): Fix typos in code comment.
9323
9324 2009-12-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9325
9326         Replace last __oline__ instance.
9327         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Replace last
9328         __oline__ instance with $LINENO.
9329
9330 2009-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9331
9332         Improve parsing of .la files in libltdl.
9333         * libltdl/ltdl.c (trim): Do not dump core upon missing quote in
9334         module .la file.
9335         * tests/lalib-syntax.at (syntax of .la files): New file, new
9336         test.
9337         * Makefile.am (TESTSUITE_AT): Add tests/lalib-syntax.at.
9338         Report by Bob Friesenhahn.
9339
9340 2009-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9341
9342         Sane fallback initialization of $ECHO from $as_echo.
9343         * libltdl/config/general.m4sh: Use 'printf %s\n' if $as_echo is
9344         unset.
9345         * tests/testsuite.at: Likewise.
9346         * THANKS: Update.
9347         Report by Vadim Zeitlin and Peter Rosin.
9348
9349 2009-12-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9350
9351         lt_dlloader_remove and lt_dlloader_find accept const arguments.
9352         * libltdl/lt_dlloader.c (lt_dlloader_remove, lt_dlloader_find):
9353         Accept `const char *' arguments, as documented.  Cast them to
9354         `void *' for the slist machinery.
9355         * libltdl/libltdl/lt_dlloader.h: Adjust prototypes.
9356
9357         Test and fix slist.c.
9358         * libltdl/libltdl/slist.h: Include stddef.h, for size_t.
9359         (slist_remove): Return pointer to SList, not void.
9360         * libltdl/slist.c: Include stdlib.h, for malloc and free.
9361         (slist_remove): Adjust prototype as above.
9362         (slist_sort): Do not loop forever on one-item list.
9363         * tests/slist.at (SList functionality): New file, new test.
9364         * Makefile.am (TESTSUITE_AT): Add tests/slist.at.
9365
9366 2009-11-30  Peter Rosin  <peda@lysator.liu.se>
9367
9368         Please C++ compilers when calling strrchr.
9369         * libltdl/ltdl.c (has_library_ext): Match the return type of
9370         strrchr with the first argument to please C++ compilers.
9371         Report by Peter O'Gorman.
9372
9373 2009-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9374
9375         Fix bindir and dlopen tests for C++ compilers (CC=g++).
9376         * tests/bindir.at (bindir basic lib test, bindir install tests):
9377         Include stdlib.h rather than declaring abort.
9378         * tests/lt_dlopenext.at (lt_dlopenext error messages): Use
9379         `extern "C"' annotation for dlsym'ed function in C++ mode.
9380
9381 2009-11-25  Peter Rosin  <peda@lysator.liu.se>
9382
9383         Fix cross build issue in execute mode test.
9384         * tests/execute-mode.at: Skip test for cross builds.
9385
9386 2009-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9387
9388         Enable symbol versioning with the GNU gold linker.
9389         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Accept 'GNU gold'
9390         in the version string.
9391         * NEWS, THANKS: Update.
9392         Report by Peter Fritzsche.
9393
9394         Tighten regex for Portland C++ compiler for version 10.
9395         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [linux]:
9396         Match a dot after version 1 through 5, so 10 and up don't match,
9397         and use weak symbols.
9398         * THANKS: Update.
9399         Report by Jeff Squyres and Brent Leback.
9400
9401 2009-11-16  Peter O'Gorman  <peter@pogma.com>
9402
9403         Update libltdl version to match 2.2.6b release.
9404         * libltdl/Makefile.inc: Make version 9:1:2
9405
9406 2009-11-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
9407
9408         Don't load module.la from current directory by default.
9409         * libltdl/ltdl.c (try_dlopen): Do not attempt to load an
9410         unqualified module.la file from the current directory (by
9411         default) since doing so is insecure and is not compliant with
9412         the documentation.
9413         * tests/testsuite.at: Qualify access to module.la file in
9414         current directory so that test passes.
9415
9416 2009-11-14  Peter O'Gorman  <peter@pogma.com>
9417
9418         Only use preopen loader to load preopened archives
9419         * libltdl/ltdl.c: Limit checking of .a to preopen loader.
9420         * tests/lt_dlopen_a.at: Add test.
9421         * Makefile.am: Add test.
9422
9423 2009-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9424
9425         Recognize `pgfortran' as Portland compiler.
9426         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS):
9427         Accept `pgfortran*' too.
9428         Report by Jeff Squyres.
9429
9430 2009-11-04  Alexandre Oliva  <aoliva@redhat.com>
9431             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9432
9433         Fix verbose link extraction for multiply reconfigured GCC.
9434         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
9435         <output_verbose_link_cmd>: Drop GCC lines "Configured with" that
9436         may contain unrelated flags.
9437
9438 2009-11-02  Eric Blake  <ebb9@byu.net>
9439
9440         Allow gcc builds with -Wall -Werror.
9441         * libltdl/ltdl.c (try_dlopen): Use strlen rather than LT_STRLEN on
9442         an array that will never be NULL.
9443
9444 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9445
9446         Fix func_normal_abspath sed script for Solaris.
9447         * libltdl/config/general.m4sh (pathcar, pathcdr, removedotparts)
9448         (collapseslashes, finalslash): Use single quotes, for clarity.
9449         (removedotparts): Avoid \{N,M\} after subexpression \(...\), for
9450         Solaris /bin/sed.
9451
9452         Improve versioning algorithm documentation.
9453         * doc/libtool.texi (Updating version info): Repeat the
9454         algorithms in different, hopefully simpler terms.
9455         * THANKS: Update.
9456         Prompted by Richard B. Kreckel.
9457
9458 2009-11-01  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
9459
9460         Support for the Haiku operating system.
9461         * libltdl/config/ltmain.m4sh (func_mode_link): Add cases for
9462         `*-*-haiku*' alongside `*-*-beos*'.
9463         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
9464         (_LT_CHECK_MAGIC_METHOD, LT_LIB_M, _LT_COMPILER_PIC)
9465         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Add cases for
9466         `haiku*'.
9467         * NEWS, THANKS: Update.
9468
9469 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9470
9471         Fix quoting of AS, DLLTOOL, and OBJDUMP for the libtool script.
9472         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Quote values of
9473         $AS, $DLLTOOL, and $OBJDUMP, so they can contain arguments.
9474         * THANKS: Update.
9475         Report by Matthijs Kooijman.
9476
9477 2009-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9478
9479         Initial support for the Cuda Compiler Driver on Linux.
9480         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept source
9481         file extensions `.cu' and `.cup'.
9482         * libltdl/m4/libtool.m4 (_LT_COMPILER_NO_RTTI, _LT_COMPILER_PIC)
9483         (_LT_LINKER_SHLIBS): Support for `nvcc' compiler driver.
9484         * NEWS, THANKS: Update.
9485         Report by Mahesh Narayanamurthi.
9486
9487 2009-09-12  Dave Korn  <dave.korn.cygwin@googlemail.com>
9488
9489         Control where win32 DLLs get installed.
9490         * libltdl/config/general.m4sh (func_normal_abspath): New function.
9491         (func_relative_path): Likewise.
9492         * libltdl/config/ltmain.m4sh (func_mode_help): Document "-bindir".
9493         (func_mode_link): Accept new "-bindir" option and use it, if
9494         supplied, to place Windows DLLs.
9495         * tests/bindir.at: New file for install tests using "-bindir".
9496         * Makefile.am (TESTSUITE_AT): Add bindir.at.
9497         * doc/libtool.texi (Link Mode): Update documentation.
9498         * NEWS, THANKS: Update.
9499
9500 2009-09-11  Akim Demaille  <demaille@gostai.com>
9501
9502         libtool: clean libconftest.a.
9503         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Here.
9504
9505 2009-09-10  Peter Rosin  <peda@lysator.liu.se>
9506
9507         func_win32_libid doesn't work with MS dumpbin
9508         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): The $NM
9509         interface is assumed to be BSD nm in func_win32_libid, so
9510         check for that before using it.
9511
9512 2009-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9513
9514         Allow dlopen self test to work with gcc's -fvisibility=hidden.
9515         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Declare default
9516         visibility for the symbol we are going to test dlopen (NULL)
9517         when a GCC version is used that understands the visibility
9518         attribute, under the assumption that if -fvisibility=hidden
9519         will be used, the user code will be sufficiently annotated
9520         for visibility of needed symbols from the main executable.
9521         * THANKS: Update.
9522         Report by Josh Hursey against OpenMPI.
9523
9524         Fix and split recent testsuite addition for compile/link flags.
9525         * tests/flags.at (passing flags through libtool): Split into ...
9526         (passing CC flags through libtool)
9527         (passing CXX flags through libtool)
9528         (passing F77 flags through libtool)
9529         (passing FC flags through libtool)
9530         (passing GCJ flags through libtool): ... these five tests,
9531         factorized with m4_foreach.  Fix F77 and FC compile and link
9532         commands; add GCJ tag.  Use LT_AT_TAG to correctly skip tags
9533         for which no compiler exists.  Use $EXEEXT where appropriate.
9534         Drop unneeded use of reload_cmds.
9535         Reports by Peter Rosin and Peter O'Gorman.
9536
9537 2009-09-07  Peter O'Gorman  <peter@pogma.com
9538
9539         Fix redirect in test case.
9540         * tests/darwin.at: Fix stderr redirect.
9541
9542         Use darwin's -force_load flag if available for whole_archive_flag_spec
9543         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check for
9544         -force_load and use it if there.
9545         * tests/darwin.at: Add a simple test.
9546
9547 2009-09-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9548
9549         Testsuite keyword 'interactive' and check-* rules.
9550         * Makefile.am (testsuite_deps, testsuite_deps_uninstalled):
9551         New variables.
9552         (check-local, installcheck-local): Use them.
9553         (check-interactive, check-noninteractive): New rules.
9554         * tests/link-order2.at (Link order of deplibs),
9555         tests/static.at (static linking flags for programs): Add keyword
9556         `interactive'.
9557         * doc/libtool.texi (Test descriptions): Document all keywords
9558         used in the Libtool test suite.
9559         * NEWS: Update.
9560
9561         Fix failure test in the presence of --with-pic or -prefer-pic.
9562         * tests/fail.at (Failure tests): Run non-PIC failure test only
9563         if pic_mode is 'default' or 'no', rather than 'default' or 'yes'
9564         and also -prefer-pic has not been passed in $CFLAGS.
9565         * THANKS: Update.
9566         Report by Donn Washburn.
9567
9568         Add testsuite exposure for passing of compiler and linker flags.
9569         * tests/flags.at (passing flags through libtool): New file, new
9570         test, for bug fixed in previous commit.
9571         * Makefile.am (TESTSUITE_AT): Add tests/flags.at.
9572
9573 2009-09-04  Peter Rosin  <peda@lysator.liu.se>
9574
9575         Make -Wc,FLAG behave like -Xcompiler FLAG in link mode.
9576         * libltdl/config/ltmain.m4sh (func_mode_link): Remove "-Wc,"
9577         instead of replacing it with "$wl" when linking programs
9578         through the compiler driver, just as is the case when linking
9579         libraries.
9580         * NEWS: Update.
9581
9582 2009-08-23  Lennart Poettering  <lennart@poettering.net>  (tiny change)
9583
9584         Shut up prototype warnings with recent GCC and -Wstrict-prototypes.
9585         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Use recent
9586         GCC's diagnostic pragma to override a -Wstrict-prototypes
9587         setting for the symbol list code.
9588         * THANKS: Update.
9589
9590 2009-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9591
9592         Remove __oline__ from macros, for less spurious configure diffs.
9593         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
9594         (_LT_COMPILER_C_O, LT_PATH_NM): Replace __oline__ instances with
9595         $LINENO.
9596         * NEWS: Update.
9597
9598 2009-07-24  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
9599
9600         Fixup 'execute mode' test for w32.
9601         * tests/execute-mode.at (execute mode): Add missing $EXEEXT.
9602         (LDFLAGS): Add -no-undefined.
9603
9604 2009-07-01  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
9605             Charles Wilson  <libtool@cwilson.fastmail.fm>
9606
9607         [CXX] Use correct export_dynamic_flag_spec for PE-COFF $hosts
9608         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [cygwin*|mingw*|pw32*|cegcc*]:
9609         Define export_dynamic_flag_spec as -Wl,--export-all-symbols here as well
9610         (see commit 5f2bbb494a2753afb2878c399cfd8316b7403a5b).
9611
9612 2009-06-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
9613
9614         [mingw] Improve sys_lib_search_path_spec detection.
9615         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Fix handling
9616         of dos-style paths when parsing $CC -print-search-dirs output.
9617
9618 2009-06-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
9619
9620         Finish adding alias for obsoleted AC_LIBTOOL_RC macro.
9621         * libltdl/m4/libtool.m4: Add reminder comment concerning
9622         aclocal-1.4 backwards compatibility.
9623         * libltdl/m4/lt~obsolete.m4: Remove unnecessary AC_DEFUN.
9624
9625 2009-06-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
9626
9627         Add alias for obsoleted AC_LIBTOOL_RC macro.
9628         * libltdl/m4/libtool.m4: Add alias for obsoleted
9629         macro AC_LIBTOOL_RC.
9630
9631 2009-06-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
9632
9633         Remove unneeded functions and options from cwrapper
9634         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
9635         [lt_opt_process_env_set]: Remove.
9636         [lt_opt_process_env_prepend]: Remove.
9637         [lt_opt_process_env_append]: Remove.
9638         [lt_split_name_value]: Remove.
9639         [file scope]: Don't declare removed functions. Remove
9640         constants and defines related to eliminated commandline
9641         options.
9642         [main]: Remove code related to eliminated commandline
9643         options --lt-env-set, --lt-env-prepend, --lt-env-append.
9644
9645 2009-06-19  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
9646             Charles Wilson  <libtool@cwilson.fastmail.fm>
9647
9648         Ensure LT_PATH_LD works when called before LT_INIT
9649         * libltdl/m4/libtool.m4 (LT_PATH_LD): AC_REQUIRE _LT_PROG_ECHO_BACKSLASH.
9650
9651 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9652
9653         Add versioning tests.
9654         * tests/versioning.at (versioning): New file, new test.
9655         * Makefile.am (TESTSUITE_AT): Adjust.
9656         Prompted by bug report from Mike Gorchak.
9657
9658 2009-06-14  Mike Gorchak  <mike@malva.ua>  (tiny change)
9659             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9660
9661         Fix versioning computation for QNX.
9662         * libltdl/config/ltmain.m4sh (func_mode_link): Set `$current'
9663         and `$age' properly for version_type `qnx'.
9664
9665 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9666
9667         Avoid spurious localization testsuite failure on HP-UX/ia64.
9668         * tests/localization.at (localized compiler messages): Skip test
9669         if the compiler warning output contains `locale', for HP-UX.
9670
9671 2009-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9672
9673         Fix concurrent extraction of convenience libraries on Darwin.
9674         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): New libtool
9675         variable `lock_old_archive_extraction', set to `yes' on darwin.
9676         * doc/libtool.texi (libtool script contents): Document it.
9677         * libltdl/config/ltmain.m4sh (func_extract_an_archive): Lock
9678         `ar x' invocation if `lock_old_archive_extraction' is yes.
9679         * tests/darwin.at (darwin concurrent library extraction): New
9680         test.
9681         * NEWS: Update.
9682         Report by Akim Demaille.
9683
9684 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9685
9686         Fix testsuite failure of lt_dlopenadvise test on FreeMiNT.
9687         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Do not
9688         build moddepend for systems without shared libraries.
9689         Report by Alan Hourihane.
9690
9691         testsuite: avoid failures due to old Automake.
9692         * tests/configure-iface.at (installable libltdl)
9693         (--with-ltdl-include/lib, --with-included-ltdl):
9694         Speficy libmodule_la_SOURCES in Makefile.am as the default
9695         source file naming scheme changed in Automake 1.8.
9696         * tests/nonrecursive.at (_LT_AT_LTDL_SETUP): Require Automake
9697         1.9.6.
9698         * THANKS: Update.
9699         Report by Robert Garron.
9700
9701         testsuite: add missing @LIBS@ in a link command line.
9702         * tests/old-m4-iface.at (AC_WITH_LTDL): Use @LIBS@ when linking.
9703         Report by Patrice Fromy.
9704
9705         testsuite: cope when some installed libltdl.la has been removed.
9706         * tests/old-m4-iface.at (AC_WITH_LTDL): Pass --with-included-ltdl
9707         to configure, to ensure we do not accidentally link against a
9708         previously installed libltdl.so where the corresponding .la
9709         file has been removed, thus we do not add a run path, and the
9710         runtime linker then fails to find libltdl.so.7.
9711         * tests/configure-iface.at (--with-ltdl-include/lib): Remove -L
9712         flags from LDFLAGS to avoid picking up an installed libltdl
9713         outside of the default locations.
9714         * THANKS: Update.
9715         Prompted by report from Patrice Fromy.
9716
9717 2009-06-07  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
9718
9719         Fix C wrapper invocation for ceGCC hosts (cegcc and mingw32ce).
9720         * libltdl/config/ltmain.m4sh (func_mode_link): do not generate
9721         C wrapper for cegcc and mingw32ce hosts.
9722         (func_emit_cwrapperexe_src): remove useless check on
9723         __MINGW32CE__.
9724
9725 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9726
9727         Don't pick up double-quotes from /etc/ld.so.conf on Ubuntu.
9728         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
9729         <sys_lib_dlsearch_path_spec>: Remove embedded double quotes from
9730         paths picked up from /etc/ld.so.conf.  Fixes libltdl compile
9731         failure on Ubuntu 7.10.
9732         * THANKS: Update.
9733         Report by Camilo La Rota.
9734
9735 2009-06-06  Richard Sandiford  <richards@transitive.com>
9736
9737         Fix GNU nm invocation for AIX.
9738         * libldtl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
9739         <export_symbols_cmds>: Modify the GNU-nm-on-AIX version so that
9740         it adds weak defined symbols to the export list.
9741
9742         Build AIX shared libraries with binutils 2.19.50+.
9743         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
9744         <lt_use_gnu_ld_interface>: New variable to control whether the
9745         GNU ld or native ld interface is used.  Set to "no" for GNU ld
9746         2.19.50+ on AIX, otherwise mirror $with_gnu_ld.  Update the
9747         warning message that is printed when using GNU ld on AIX.
9748         Adjust the whole_archive_flag_spec value for GNU ld on AIX.
9749         * NEWS, THANKS: Update.
9750
9751 2009-05-27  Peter O'Gorman  <peter@pogma.com>
9752
9753         Don't run compiler checks twice.
9754         libltdl/m4/libtool.m4 (_LT_PROG_FC, _LT_PROG_F77,
9755         _LT_PROG_CXX): Remove these macros.
9756         libltdl/m4/lt~obsolete.m4: Add removed macros here.
9757         libltdl/m4/libtool.m4 (_LT_LANG_FC_CONFIG, _LT_LANG_F77_CONFIG,
9758         _LT_LANG_CXX_CONFIG): Remove references to removed macros, and
9759         move functionality here.
9760         NEWS: Update.
9761
9762 2009-05-05  Rainer Emrich  <r.emrich@de.tecosim.com>  (tiny change)
9763             Peter Rosin  <peda@lysator.liu.se>
9764             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9765
9766         Fix cross compilation for HPPA/64 with a BSD file command.
9767         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
9768         [hpux10.20*, hpux11*, !ia64] <lt_cv_deplibs_check_method>:
9769         Match the dot in `PA-RISC 2.0' literally.  Adjust hppa*64*
9770         pattern to also match BSD `file' output, used in cross
9771         compilation setups.
9772         * THANKS: Update.
9773         Report and initial patch by Rainer Emrich, refined by Peter
9774         Rosin.
9775
9776 2009-05-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9777
9778         libtoolize: ignore trailing junk on scriptversion line.
9779         * libtoolize.m4sh (func_install_update): Ignore semi-colon or
9780         comment-sign and all following characters when parsing a
9781         `scriptversion' line in one of the auxiliary scripts; recent
9782         Automake-provided script have a stylized comment to induce
9783         Emacs to use UTC.
9784         Exposed by the `libtoolize config files serial update' test.
9785
9786 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9787
9788         Skip localization test when setlocale is not functional.
9789         * tests/localization.at (localized compiler messages): Skip
9790         test when there is a warning about `LC_ALL'.
9791         * THANKS: Update.
9792         Report by Maciej Helminiak.
9793
9794 2009-05-02  Alan Hourihane  <alanh@fairlite.co.uk>  (tiny change)
9795
9796         Improved support for FreeMiNT.
9797         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [mint]: Hard-code
9798         command line length limit to 8192, to avoid long test.
9799         * NEWS, THANKS: Update.
9800
9801 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9802
9803         Initial port for BlueGene BG/L.
9804         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
9805         (_LT_LANG_CXX_CONFIG) [linux]: Detect bgxl*, bgf*, mpixl*
9806         compilers.
9807         * NEWS, THANKS: Update.
9808         Report, feedback and testing by John R. Cary and Christian
9809         Rössel.
9810
9811         manual: fix grammaros.
9812         * doc/libtool.texi (Dlpreopening): Fix grammaro.
9813         (C header files): Remove duplicate word.
9814
9815         Allow through -tp=* at link time, for pgcc.
9816         * libltdl/config/ltmain.m4sh (func_mode_link): Portlant Group
9817         pgcc uses `-tp=PROCESSOR' for target processor selection; allow
9818         the flag through at link time.
9819         Report by Ethan Mallove.
9820
9821         Fix quoting of eval'ed variable.
9822         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Double-quote
9823         $lt_cv_sys_global_symbol_pipe for eval, like we do in ltmain,
9824         in order to preserve TABs and multiple adjacent whitespace.
9825         Report by Bruno Haible.
9826
9827 2009-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9828
9829         Cope better with missing `makeinfo' in `bootstrap'.
9830         * bootstrap: Update `./doc/notes.txt' last so missing `makeinfo'
9831         does not cause a broken tree.
9832         * THANKS: Update.
9833         Report by Christian Rössel.
9834
9835 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
9836             Charles Wilson  <libtool@cwilson.fastmail.fm>
9837
9838         [cygwin] Improve operation with gcc4
9839         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [cygwin*]:
9840         Add w32api to sys_lib_search_path_spec without overriding gcc's
9841         own search path.
9842
9843 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
9844             Charles Wilson  <libtool@cwilson.fastmail.fm>
9845
9846         Use correct export_dynamic_flag_spec for PE-COFF $hosts
9847         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) 
9848         [cygwin*|mingw*|pw32*|cegcc*]: Define export_dynamic_flag_spec
9849         as -Wl,--export-all-symbols, as required by GNU ld for PE-COFF.
9850
9851 2009-03-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
9852
9853         Improve compatibility with older automake
9854         * libltdl/m4/lt~obsolete.m4: Add AC_DEFUNs for
9855         _LT_PREPARE_SED_QUOTE_VARS and _LT_PROG_ECHO_BACKSLASH.
9856         Report by Yaakov Selkowitz.
9857
9858 2009-03-20  Peter Rosin  <peda@lysator.liu.se>
9859
9860         LT_OUTPUT should always create the libtool script.
9861         * libltdl/m4/libtool.m4 (LT_OUTPUT): Make LT_OUTPUT ignore the
9862         --no-create configure option, and assume that the user wants
9863         to use an up-to-date libtool script if the LT_OUTPUT macro is
9864         present.
9865         * tests/early-libtool.at: Make sure we do not regress.
9866
9867 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
9868
9869         Don't settle for any dumpbin/link program as name lister.
9870         * libltdl/m4/libtool.m4 (LT_PATH_NM): When locating dumpbin or
9871         link -dump, check if they appear to really be capable of name
9872         listing, in order to eliminate e.g. link from coreutils. This
9873         makes the name lister decision fall back on nm as the default if
9874         no acceptable candidate is found, which mainly happens on
9875         (arguably broken) cross compiles.
9876         * NEWS: Update
9877         * THANKS: Update
9878         Reports by Rudolf Leitgeb and Peter Kjellerstedt.
9879
9880 2009-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9881
9882         Document INNER_TESTSUITEFLAGS, drop leading space.
9883         * README: Document INNER_TESTSUITEFLAGS.
9884         * tests/cmdline_wrap.at (Run tests with low max_cmd_len):
9885         When using INNER_TESTSUITEFLAGS on the testsuite invocation,
9886         drop leading space after "-k libtool", so that the user may
9887         further limit the set of tests to be run.
9888
9889 2009-03-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9890
9891         Fix low max_cmd_len template test on UnixWare.
9892         * libltdl/config/ltmain.m4sh (func_mode_link): When expanding
9893         $reload_cmds, always put objects in $reload_objs rather than
9894         adding them to the command line, to allow more general command
9895         lines in reload_cmds.  Ensure $reload_objs contains a leading
9896         space.
9897         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
9898         sco3.2v5*, sco5v6*] <reload_cmds>: For CC, invoke prelinker
9899         before creating reloadable object.
9900         (_LT_CMD_RELOAD) <reload_cmds, reload_flag>: Declare as
9901         _LT_TAGDECL, not _LC_DECL.
9902         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
9903         (_LT_LANG_GCJ_CONFIG) <reload_cmds, reload_flag>: Initialize
9904         from default (C tag) value.
9905         * THANKS: Update.
9906         Report and analysis by Tim Rice and John Wolfe.
9907
9908 2009-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9909
9910         * doc/libtool.texi (Distributing libltdl, Test descriptions):
9911         Add missing parentheses.
9912
9913 2009-02-28  Tim Rice  <tim@multitalents.net>
9914
9915         Fix C++ template handling for old archives on UnixWare 7.1.4.
9916         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
9917         sco3.2v5*, sco5v6*] <old_archive_cmds>: For CC, add template
9918         prelink step before archiving.  Fixes template.at test failures.
9919
9920 2009-02-28  Török Edwin  <edwintorok@gmail.com>  (tiny change)
9921             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9922
9923         Do not add bogus directory arguments to link command lines.
9924         * libltdl/config/ltmain.m4sh (func_mode_link): Ensure $path is
9925         always initialized before it is used.  Reported for zsh, for
9926         which $path contains $PATH entries even after "emulate sh", see
9927         <http://bugs.debian.org/517501>.
9928
9929 2009-02-28  Andreas Schwab  <schwab@suse.de>
9930             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9931
9932         Remove remaining references to CVS.
9933         * bootstrap: Remove references to CVS.
9934         * README.alpha: Likewise.
9935         * clcommit.m4sh: Likewise.
9936         * doc/libtool.texi: Bump copyright years.
9937         (libtool script contents): Describe macro_revision as revision
9938         without reference to CVS.
9939
9940 2009-02-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9941
9942         Do not pass $INSTALL via TESTS_ENVIRONMENT.
9943         * Makefile.am (TESTS_ENVIRONMENT): Set lt_INSTALL, not INSTALL,
9944         so that a bogus relative path to the install-sh script in the
9945         source tree is not propagated to the configure scripts of the
9946         old test suite.
9947         * tests/testsuite.at: Adjust.
9948         * tests/install.at (Install tests): Likewise.
9949
9950 2009-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9951             Kurt Roeckx <kurt@roeckx.be>
9952
9953         New test for lt_dlopenext error message.
9954         * tests/lt_dlopenext.at (lt_dlopenext error messages): New file,
9955         with new test, with sources taken from the Autobook example.
9956         * Makefile.am: Update.
9957
9958 2009-02-03  Kurt Roeckx <kurt@roeckx.be>
9959
9960         lt_dlopenext sets error upon successful library load.
9961         * libltdl/ltdl.c (lt_dlopenadvise): Fix bogus error on
9962         successful loading of library with lt_dlopenext.
9963         Report by Kaiwang Chen in <http://bugs.debian.org/510006>.
9964
9965 2009-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9966
9967         Fix sed script in install.at.
9968         * tests/install.at (Install tests): Fix typo in sed script,
9969         fixes test failure on HP-UX.
9970
9971         Fix $INSTALL in testsuite with relative path to install-sh.
9972         * tests/testsuite.at: If `$INSTALL' points to in-tree
9973         install-sh, override a possibly-relative path to it with an
9974         absolute one.
9975
9976         install mode: do not pass `-m $install_override_mode' to cp.
9977         * libltdl/config/ltmain.m4sh (func_mode_install): New variable
9978         $install_cp, factor test when `cp' is used for installation.
9979         Do not pass mode override to cp.  Fixes `libtool --mode=install
9980         cp ...' on HP-UX; cp should not be used for libraries that might
9981         be needed by programs invoked during the installation process.
9982
9983         Fix sed script portability issue in func_version.
9984         * libltdl/config/getopt.m4sh (func_version): Remove space in
9985         `/\./! {' sed command, to please HP-UX sed.
9986
9987 2009-01-31  Jeff Squyres <jsquyres@cisco.com>
9988             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9989
9990         New test for bogus lt_dlopen error message.
9991         * tests/lt_dlopen.at (lt_dlopen error messages): New file, new
9992         test, marked as XFAIL for now.
9993         * Makefile.am: Adjust.
9994         Report and reproducible test case by Jeff Squyres.
9995
9996 2009-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9997
9998         execute mode: do not transform *.lo or *.la arguments.
9999         * libltdl/config/ltmain.m4sh (func_mode_execute): Do not check
10000         arguments matching *.lo or *.la for script wrappers.
10001         * tests/execute-mode.at (execute mode): Add tests.
10002         * NEWS, THANKS: Update.
10003         Report by Paul Biggar.
10004
10005         Nonexistent `main' does not guarantee link failure.
10006         * tests/fail.at (Failure tests): Use an unresolved symbol,
10007         rather than non-presence of `main', to provoke a link failure
10008         also on QNX.  Only check for failure of the libtool script if
10009         the link without libtool would have failed, too.
10010         Report by Mike Gorchak.
10011
10012         Use AT_CHECK more liberally in duplicate members test.
10013         * tests/duplicate_members.at (duplicate members in archive
10014         tests): Wrap link commands in AT_CHECK, they might fail, as seen
10015         on QNX.
10016         * THANKS: Update.
10017         Report by Mike Gorchak.
10018
10019 2009-01-30  Akim Demaille  <demaille@gostai.com>
10020
10021         Fix cwrapper warnings from MSVC 2005.
10022         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
10023         [file scope]: define _CRT_SECURE_NO_DEPRECATE.
10024
10025 2009-01-29  Akim Demaille  <demaille@gostai.com>
10026
10027         Fix bootstrap with older libtool.m4 in reach of aclocal.
10028         * libltdl/m4/lt~obsolete.m4: Add stub definitions for
10029         _LT_REQUIRED_DARWIN_CHECKS and _LT_AC_PROG_CXXCPP.
10030
10031         Fix func_exec_init.
10032         * tests/defs.m4sh (func_exec_init): Instead of using the undefined
10033         my_dir, call func_dirname_and_basename and use its result.
10034         (func_make): For consistency, don't use the useless local variable
10035         my_dir.
10036
10037 2009-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10038
10039         Document --mode short-hands better, and test them.
10040         * doc/libtool.texi (Invoking libtool): Give examples for using
10041         the `--mode=MODE' short-hand `MODE', or abbreviations thereof.
10042         * libltdl/config/ltmain.m4sh: Mention the short-hand for MODE
10043         in the --help output.
10044         * tests/help.at (mode short-hands): New test group.
10045         Suggestion by Bruno Haible.
10046
10047         func_version copes with multi-line copyright headers.
10048         * libltdl/config/getopt.m4sh (func_version): Slurp in copyright
10049         lines until a period is found.
10050         * libltdl/config/ltmain.m4sh: Multi-line copyright is ok to use
10051         now.
10052         * tests/help.at (standard command line options): New file, new
10053         tests.  Make this test group the first one for libtool tests,
10054         moving the banner ...
10055         * tests/duplicate_members.at: ... from here.
10056         * Makefile.am (TESTSUITE_AT): Add tests/help.at.
10057
10058 2009-01-29  Akim Demaille  <demaille@gostai.com>
10059             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10060
10061         Normalize compiler output due to compiler wrappers.
10062         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT): New
10063         macro, to normalize ccache and distcc output.
10064         * tests/localization.at (localized compiler messages): Use it.
10065
10066 2009-01-29  Peter Rosin  <peda@lysator.liu.se>
10067
10068         Make modified libtool script in cwrapper test executable
10069         * tests/cwrapper.at: Make modified libtool script executable.
10070         Report by Roumen Petrov.
10071
10072 2009-01-28  Akim Demaille  <demaille@gostai.com>
10073
10074         Clean space uses.
10075         * libtoolize.m4sh: Remove trailing spaces.
10076         Use <tab><sp>, as some editors remove "useless" spaces in
10077         <sp><tab>.
10078
10079 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
10080
10081         AWK is required, make sure it is set.
10082         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS: Make sure
10083         AWK is set (automake brings it in, but is not always used).
10084         Fixes old-m4-iface.at on MSYS/MSVC.
10085
10086 2009-01-25  Mike Frysinger  <vapier@gentoo.org>
10087
10088         Fix typo in libtool install mode documentation.
10089         * libltdl/config/ltmain.m4sh (func_mode_help): Change -inst-prefix
10090         to -inst-prefix-dir.
10091         * doc/libtool.texi (Install mode): Likewise.
10092
10093 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
10094
10095         Add -Wall to cwrapper tests.
10096         * tests/cwrapper.at: Add -Wall existing tests. Add additional
10097         round of tests with -Wall alone.
10098
10099 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
10100
10101         [cygwin|mingw] cwrapper cleanups.
10102         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
10103         [file scope]: re-organized includes and portability
10104         macros. Avoid oldnames on MINGW32 and MSVC for
10105         setmode/stat/chmod/getcwd/putenv. Declare _putenv on
10106         MINGW32 when -ansi. Use namespaced macro LT_DEBUGWRAPPER.
10107
10108 2009-01-24  Peter Rosin  <peda@lysator.liu.se>
10109
10110         Expand exit status test in LT_AT_NOINST_EXEC_CHECK correctly
10111         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): STATUS is
10112         argument $3, not $2.
10113
10114 2009-01-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
10115
10116         Add tests for cwrapper with -std=c89 and -std=c99
10117         * tests/cwrapper.at: New file.
10118         * Makefile.am: Add tests/cwrapper.at.
10119
10120 2009-01-22  Peter Rosin  <peda@lysator.liu.se>
10121
10122         Unify line endings in localization test.
10123         * tests/testsuite.at: Update copyright year.
10124         (LT_AT_UNIFY_NL): Add macro that unifies line endings on
10125         platforms that suffer from such confusion.
10126         * tests/localization.at: Use it. Update copyright year. Fixes
10127         the test on MSYS/MSVC.
10128
10129 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
10130
10131         [cygwin|mingw] Fix compile warnings when -std=c89.
10132         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
10133         move contents to...
10134         (func_emit_wrapper_part2): move contents to...
10135         (func_emit_wrapper): here.
10136         (func_emit_cwrapperexe_src) [file scope]: Remove
10137         variables script_text_part1 and script_text_part2.
10138         (func_emit_cwrapperexe_src) [lt_dump_script]: New function.
10139         (func_emit_cwrapperexe_src) [main]: Call it.
10140
10141 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
10142
10143         Minor cygwin cleanup
10144         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Correct
10145         case pattern for cygwin.
10146
10147 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10148
10149         Avoid failure due to Cygwin path detection bug.
10150         * tests/execute-mode.at (execute mode): Ignore noise on stderr;
10151         Cygwin might consider `d\"e' to be a DOS-style path and warn.
10152         Report by Charles Wilson.
10153
10154 2009-01-19  Robert Millan  <rmh@aybabtu.com>
10155
10156         Support GNU/kOpenSolaris.
10157         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
10158         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10159         (_LT_LANG_CXX_CONFIG) [kopensolaris*-gnu]: Recognize
10160         GNU/kOpenSolaris.
10161         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
10162         * NEWS, THANKS: Update.
10163
10164 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10165
10166         Another LT_AT_EXEC_CHECK fixup.
10167         * tests/shlibpath.at (shlibpath_overrides_runpath): Use
10168         LT_AT_EXEC_CHECK instead of AT_CHECK.
10169
10170 2009-01-19  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
10171
10172         Add missing $EXEEXT to java test.
10173         * tests/convenience.at (Java convenience archives): Add $EXEEXT.
10174
10175 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10176
10177         Bump copyright years.
10178         * ChangeLog.2008: New, rotated from ...
10179         * ChangeLog: ... here.
10180         * Makefile.am (EXTRA_DIST): Add ChangeLog.2008.
10181         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
10182         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
10183         * libtoolize.m4sh: Likewise.
10184
10185 2009-01-14  Peter Rosin  <peda@lysator.liu.se>
10186
10187         Fix flakey mdemo-dryrun test on MSYS (again!)
10188         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
10189         not time, for really fresh files. Add sleep 1 call at yet another
10190         strategic position. Makes the test pass reliably for MSYS/MinGW.
10191
10192 2008-12-19  Akim Demaille  <demaille@gostai.com>
10193
10194         Fix copyright notice.
10195         * libltdl/config/ltmain.m4sh: Add missing comma.
10196
10197 2008-12-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10198
10199         Add cache variables to link tests.
10200         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
10201         (_LT_LINKER_SHLIBS): Add cache variables to tests that
10202         require the linker to work.  For shlibpath_overrides_runpath,
10203         this also changes the semantics to let the result from the C
10204         compiler take precedence.
10205         * tests/no-executables.at (AC_NO_EXECUTABLES): New file.
10206         * Makefile.am: Update.
10207         * NEWS: Update.
10208         Report of shlibpath_overrides_runpath issue by Mike Frysinger,
10209         report of GCC issue by Andreas Schwab.
10210
10211 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
10212
10213         Fix inadvertent commit.
10214         * bootstrap: Revert.
10215
10216 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
10217
10218         Fix manual typo.
10219         * doc/libtool.texi (LT_INIT): Use correct config.status
10220         invocation.  Reported by Akim Demaille.
10221
10222 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
10223
10224         Do not use $ECHO within eval-ed `...`, as %s\\n becomes %s\n.
10225         * HACKING: Document func_echo_all.
10226         * libltdl/m4/libtool.m4: Use it within backticks that appear in
10227         eval-ed variables.  Reported by Akim Demaille.
10228
10229 2008-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10230
10231         Fix func_infer_tag $ECHO usage; some testsuite exposure.
10232         * libltdl/config/ltmain.m4sh (func_infer_tag): Use func_echo_all
10233         rather than $ECHO for possibly multiple arguments.
10234         * tests/infer-tag.at (inferred tag, CXX inferred tag)
10235         (F77 inferred tag, FC inferred tag, GCJ inferred tag): New file,
10236         new tests.
10237         * Makefile.am: Adjust.
10238
10239         * tests/runpath-in-lalib.at (Runpath in libtool library files):
10240         Add $EXEEXT overlooked in patch yesterday.
10241
10242 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10243
10244         Fix expout and experr line ending issues.
10245         * tests/testsuite.at (LT_AT_HOST_DATA): Renamed from..
10246         (_LT_AT_TRANSLATE_TEXT_OUTPUT): ..this.
10247         (LT_AT_EXEC_CHECK, LT_AT_NOINST_EXEC_CHECK): Do not use
10248         _LT_AT_TRANSLATE_TEXT_OUTPUT any more.
10249         * tests/configure-iface.at: Use LT_AT_HOST_DATA instead of
10250         AT_DATA for `expout' files.
10251         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
10252         Likewise.
10253         * tests/need_lib_prefix.at (enforced lib prefix): Likewise.
10254         Report by Roumen Petrov.
10255
10256         Relax link-order2 test for systems with partial wrong order.
10257         * tests/link-order2.at (Link order of deplibs.): On w32 (and
10258         others, e.g., AIX), the wrongly linked executable picks up only
10259         one instance of the bad function instead of two; relax the test
10260         to accept this; we still require the right link order with the
10261         correctly linked executable.
10262         Reported by Roumen Petrov and others.
10263
10264 2008-11-23  Roumen Petrov  <bugtrack@roumenpetrov.info>
10265             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10266
10267         Add $EXEEXT to all linked programs in the new testsuite.
10268         * tests/convenience.at, tests/ctor.at, tests/darwin.at,
10269         tests/deplibs-ident.at, tests/duplicate_conv.at,
10270         tests/duplicate_deps.at, tests/duplicate_members.at,
10271         tests/export.at, tests/fail.at, tests/indirect_deps.at,
10272         tests/inherited_flags.at, tests/link-order.at,
10273         tests/link-order2.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
10274         tests/need_lib_prefix.at, tests/runpath-in-lalib.at,
10275         tests/search-path.at, tests/shlibpath.at, tests/static.at,
10276         tests/stresstest.at, tests/template.at, tests/testsuite.at:
10277         Use $EXEEXT throughout, except in Makefile.am snippets where
10278         automake takes care of it, and in testsuite macros that take
10279         care of the extension.
10280         Reports by Roumen Petrov and Alon Bar-Lev.
10281
10282 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10283
10284         Adjust executable run tests to cwrapper changes.
10285         * tests/testsuite.at (LT_AT_EXEC_CHECK): Accept fifth argument
10286         ARGS-OR-STATUS-ADJUST, for command-line arguments and/or exit
10287         status flattening.  Rewrite to prefer the executable with the
10288         `.exe' prefix over one without.  Test exit status against
10289         expected exit status, not against zero, when determining whether
10290         this may be a cross-compilation-induced result.
10291         (LT_AT_NOINST_EXEC_CHECK): Likewise.
10292         * tests/static.at (static linking flags for programs): Adjust
10293         calls.
10294         Report by Roumen Petrov.
10295
10296         No trailing period in Autotest test group names.
10297         * tests/link-order.at (Link order test): Drop trailing period
10298         from test name.
10299         * tests/link-order2.at (Link order of deplibs): Likewise.
10300
10301 2008-11-23  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
10302
10303         Fix func_emit_cwrapperexe_src for WinCE: no errno support.
10304         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
10305         [__MINGW32CE__]: Do not use errno, do not include errno.h and
10306         remove calls related to errno when using the mingw32ce compiler.
10307
10308 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10309
10310         No libm in WinCE.
10311         * libltdl/m4/libtool.m4 (LT_LIB_M) [cegcc*]: This system has
10312         only a dummy libm, ignore.
10313         Report by Vincent Torri.
10314
10315         Fix import library detection for WinCE.
10316         * libltdl/config/ltmain.m4sh (func_win32_libid): Work for
10317         pe-arm-wince import libraries.
10318         * NEWS: Update.
10319         Report by Vincent Torri.
10320
10321 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10322             Eric Blake  <ebb9@byu.net>
10323
10324         Fix $ECHO test to not influence other _AS_DETECT_SUGGESTED code.
10325         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix test to
10326         not influence further tests registered with _AS_DETECT_SUGGESTED
10327         and do not use a PATH below /tmp, to avoid influence by a third
10328         party.
10329
10330 2008-11-23  Alon Bar-Lev  <alon.barlev@gmail.com>  (tiny change)
10331
10332         Fix func_win32_libid for 64-bit Windows.
10333         * libltdl/config/ltmain.m4sh (func_win32_libid): Accept file
10334         format 'pe-x86-64'.
10335         * NEWS: Update.
10336
10337 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10338
10339         Avoid newlines in some AT_CHECK commands.
10340         * tests/standalone.at (linking libltdl without autotools): Wrap
10341         lines with dnl, to avoid turning off tracing of AT_CHECK.
10342         * tests/subproject.at (linking libltdl without autotools):
10343         Likewise.
10344
10345         Replace uses of $SED $basename.
10346         * libltdl/config/ltmain.m4sh (func_mode_link): Replace instances
10347         of `$ECHO ... | $SED' with calls to func_basename.
10348         * libtoolize.m4sh (func_copy, func_serial)
10349         (func_massage_aclocal_DATA): Likewise, replace with
10350         func_dirname_and_basename.
10351         * tests/defs.m4sh (func_configure_nofail, func_make, func_exec):
10352         Likewise.
10353
10354         No need to prepend $progname with './'.
10355         * libltdl/config/general.m4sh (func_dirname_and_basename): $ECHO
10356         copes with leading hyphens now, so do not mangle $progname any
10357         more.
10358
10359         Revenge of the $ECHO. Kill most uses of Xsed.
10360         * libltdl/config/general.m4sh: Replace all uses of `$ECHO "X..."
10361         | $Xsed' with `$ECHO "..." | $SED', and employ further trivial
10362         simplifications.  Replace $ECHO with echo where appropriate.
10363         (func_echo_all): New function.
10364         * libltdl/config/getopt.m4sh: Likewise simplifications.
10365         * libltdl/config/ltmain.m4sh: Likewise.
10366         * libltdl/m4/libtool.m4: Likewise.
10367         (LT_CMD_MAX_LEN): Use func_fallback_echo, to ensure that the
10368         command line is passed through an exec* function.
10369         * libtoolize.m4sh: Likewise simplifications.  Use func_echo_all
10370         to implement --dry-run.
10371         * tests/defs.m4sh: Likewise simplifications.
10372         * tests/quote.test: Likewise simplifications.
10373
10374         Fix matching of Sun Fortran compiler on Linux.
10375         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: Also
10376         match `Sun Ceres Fortran' compiler; reorder with C compiler
10377         matching.
10378         * THANKS: Update.
10379         Report by Ethan Mallove.
10380
10381 2008-11-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
10382
10383         Fix --verbose option; add new --no-{silent|quiet|verbose} options.
10384
10385         * libltdl/config/ltmain.m4sh (usage): Document
10386         new options --no-silent/--no-quiet and --no-verbose.
10387         (func_enable_tag): Handle new options.
10388         Modified --verbose to actually activate opt_verbose.
10389         New behavior: --silent disables both "normal" output and
10390         func_verbose output.  --verbose enables both "normal"
10391         output and func_verbose output. --no-silent enables
10392         "normal" output, but does not affect func_verbose output.
10393         --no-verbose disables func_verbose output, but does not
10394         affect "normal" output.
10395         * NEWS: announce new options --no-silent/--no-quiet, and
10396         --no-verbose.
10397         * doc/libtool.texi: document new options --no-silent/--no-quiet
10398         and --no-verbose.
10399
10400 2008-11-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10401
10402         Fix match patterns for cegcc*.
10403         * libltdl/config/ltmain.m4sh (func_mode_link): Match '*cegcc*'
10404         instead of '*cegcc' for $host_os.
10405         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Likewise.
10406         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
10407         Likewise.
10408         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Match
10409         '*-*-cegcc*' for $host.
10410
10411         Ensure $ac_aux_dir is initialized for LIBTOOL_DEPS.
10412         * libltdl/m4/libtool.m4 (LT_INIT): Require
10413         AC_CONFIG_AUX_DIR_DEFAULT.
10414         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Amend test to
10415         expose this.
10416         Report, analysis, and test example by Jakub Bogusz.
10417
10418         Check for bogus aclocal.m4 contents in bootstrap and dist-hook.
10419         * Makefile.am (dist-hook): Bail out if shipped aclocal.m4 files
10420         contain LT_INIT, AC_PROG_LIBTOOL, or AM_PROG_LIBTOOL macro
10421         definitions.  These can only come from bogus pull-ins from older
10422         installed Libtool macro files.
10423         * bootstrap: Likewise.
10424         Report by Akim Demaille.
10425
10426 2008-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10427
10428         Fix $ECHO abuse exposed by recent patch.
10429         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
10430         _LT_CHECK_SHELL_FEATURES, for $lt_NL2SP.  Always quote argument
10431         to $ECHO.
10432
10433         Skip sys_lib_search_path on systems without libz.
10434         * tests/search-path.at (sys_lib_search_path): Autotest needs at
10435         least one AT_CHECK executed in a test group.  So if we haven't
10436         found -lz anywhere, as may happen with cross-compilers, skip the
10437         test.
10438         * THANKS: Update.
10439         Report by Alon Bar-Lev.
10440
10441         Fix execute mode test to actually expose cwrapper failures.
10442         * tests/execute-mode.at (execute mode): Actually also test the
10443         cwrapper on the arguments.
10444         Report by Bruno Haible.
10445
10446 2008-11-15  Charles Wilson  <libtool@cwilson.fastmail.fm>
10447
10448         Add func_win32_import_lib_p.
10449         * libltdl/config/ltmain.m4sh (func_win32_import_lib_p):
10450         New function.
10451
10452 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10453
10454         Fix archive_cmds for older cc on HP-UX 11.
10455         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hp-ux11*, !GCC]
10456         [!hppa*64*, !ia64*] <archive_cmds>: Older releases of the HP-UX
10457         11.00 C compiler do not support -b yet; use a link test to
10458         decide whether $LD should be used for library creation.
10459         * THANKS: Update.
10460         Report by Daniel Richard G.
10461
10462 2008-11-12  Paolo Bonzini  <bonzini@gnu.org>
10463
10464         * configure.ac: Bump Autoconf requirement.
10465         * libltdl/config/general.m4sh: Use $as_echo as default $ECHO.
10466         * tests/testsuite.at: Use $as_echo as default $ECHO.
10467
10468         * libltdl/m4/libtool.m4 (LT_INIT): Add _LT_SHELL_INIT to
10469         work around Autoconf <2.64 bug.
10470         (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT): Add func_fallback_echo.
10471         Eliminate lt_ECHO requoting.
10472         (_LT_SHELL_INIT): Use a public M4sh diversion.
10473         (_LT_PROG_ECHO_BACKSLASH): Rewrite.
10474         (LT_CMD_MAX_LEN): Do not use --fallback-echo.
10475         * libltdl/config/ltmain.m4sh: Remove --no-reexec and --fallback-echo
10476         handling.
10477         (func_fallback_echo): New.
10478         (func_emit_wrapper_part1): Quote ECHO.  Remove --no-reexec and
10479         --fallback-echo handling.
10480         (Execute mode): Do not set qecho.
10481
10482 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10483
10484         Use -no-undefined in install tests.
10485         * tests/install.at (Install tests): Use `-no-undefined'.
10486
10487 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10488
10489         Do not use `test ... -a ...'.
10490         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hpux10, hpux11]:
10491         Replace test -a with test && test.
10492
10493 2008-11-11  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
10494
10495         Fix destdir tests in cross compile mode.
10496         * tests/destdir.at (Simple DESTDIR install)
10497         (DESTDIR with in-package deplibs): Use $EXEEXT throughout.
10498         * THANKS: Update.
10499
10500 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10501
10502         Simplify cwrapper handling a bit.
10503         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1)
10504         (func_emit_wrapper_part2, func_to_host_path)
10505         (func_to_host_pathlist, func_emit_wrapper): Simplify using
10506         default argument, func_append.
10507
10508 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
10509
10510         Separate part of _LT_SETUP into other macros, detect ECHO sooner.
10511         * libltdl/m4/libtool.m4 (_LT_PREPARE_SED_QUOTE_VARS): New macro,
10512         extracted from...
10513         (_LT_SETUP): ... here.  Require _LT_PROG_ECHO_BACKSLASH sooner.
10514
10515 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
10516
10517         Fix quoting when config.status generates libtool config.
10518         * libltdl/m4libtool.m4 (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT):
10519         Double quote ECHO-ed variables.
10520
10521 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
10522
10523         Use documented M4sh interfaces.
10524         * clcommit.m4sh: Do not unset CDPATH, use AS_INIT and M4sh diversions.
10525         * libltdl/config/mailnotify.m4sh: Likewise.
10526         * libtoolize.m4sh: Likewise.
10527         * tests/defs.m4sh: Likewise.
10528         * tests/testsuite.at: Move AT_INIT invocation at the top.
10529
10530         * libltdl/m4/libtool.m4 (_LT_INIT_GENERATED): New.
10531         (LT_OUTPUT): Use it.
10532
10533         * libltdl/config/general.m4sh (M4SH_IN_HEADER): New.
10534         (progpath): Move setting before $0 could be clobbered.
10535         * libltdl/config/ltmain.m4sh (M4SH_IN_HEADER): New.
10536
10537 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
10538
10539         Run sh.test on the M4sh source.
10540         * tests/defs.m4sh (scripts): Point to pre-m4 sources.
10541
10542 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
10543
10544         Avoid that autom4te complains about unexpanded macros.
10545         * libtoolize.m4sh: Allow occurrences of "dnl" and use quadrigraphs
10546         to protect other m4 macros.
10547
10548 2008-11-11  Bruno Haible  <bruno@clisp.org>
10549             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10550
10551         Fix cwrapper argument mangling on w32.
10552         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): On
10553         mingw, preprocess the argument vector through prepare_spawn.
10554         * tests/execute-mode.at (execute mode): Output args
10555         newline-separated.  Extend tests by more argument pairs that
10556         contain special characters, where the w32 cwrapper fails.
10557         Also test a real compiled program, linked against an uninstalled
10558         library, to expose cwrapper issues.
10559         * NEWS: Update.
10560
10561 2008-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10562
10563         Update to GFDL 1.3.
10564         * doc/fdl.texi: Update to GFDL 1.3.
10565         * doc/libtool.texi: Adjust.
10566         * NEWS: Update.
10567
10568 2008-11-09  Alexei Sheplyakov  <varg@theor.jinr.ru>  (tiny change)
10569
10570         Fix cross compilation with wine for the case SHELL != bash.
10571         * libltdl/config/ltmain.m4sh (func_to_host_path): Avoid escape
10572         sequence interpretation by 'echo', for w32-style paths.
10573         * THANKS: Update.
10574
10575 2008-10-28  Michael Haubenwallner  <michael.haubenwallner@salomon.at> (tiny change)
10576
10577         Fix checks for unsupported allow_undefined_flag.
10578         * tests/tagdemo-undef.test: Match allow_undefined_flag
10579         correctly, for SKIPping.
10580         * tests/cdemo-undef.test: Likewise.
10581
10582 2008-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10583
10584         * tests/testsuite.at (_LTDL_PROJECT_FILES): Fix dependencies for
10585         parallel make.
10586
10587         * libtoolize.m4sh (func_nonemptydir_p): Fix typo in error
10588         message.
10589
10590 2008-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10591
10592         Fix Autoconf 2.59 incompatibilty.
10593         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): m4_pattern_allow
10594         `LT_LIBEXT'; Autoconf 2.59's AC_DEFINE* macros didn't do this
10595         automatically yet.
10596         * NEWS, THANKS: Update.
10597         Report by Marcel Loose.
10598
10599 2008-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10600
10601         Atomic shared library install permissions on HP-UX.
10602         The HP-UX 11 runtime linker fails to mmap shared libraries
10603         without execute permissions.  Fixing them with postinstall_cmds
10604         may be too late, as ln, sed, and chmod may link against the
10605         library being installed.
10606
10607         * libltdl/m4/libtool.m4 (install_override_mode): New LT_DECL.
10608         (_LT_SYS_DYNAMIC_LINKER) [hpux9*, hpux10*, hpux11*]: Set it.
10609         * libltdl/config/ltmain.m4sh (func_mode_install): Build a second
10610         command line, $install_shared_prog, for the installation of the
10611         shared library.  Override resp. set the permission mode if
10612         install_override_mode is nonempty.
10613         * doc/libtool.texi (libtool script contents): Document it.
10614         * tests/install.at (Install tests): New test.
10615         * Makefile.am (TESTSUITE_AT): Adjust.
10616         (TESTS_ENVIRONMENT): Pass INSTALL.
10617         Report by Bruno Haible.
10618
10619 2008-09-26  Eric Blake  <ebb9@byu.net>
10620
10621         Avoid gcc warning.
10622         * libltdl/loaders/loadlibrary.c (vm_open): Don't check for array
10623         being a NULL pointer.
10624
10625 2008-09-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10626
10627         Man pages for libtoolize and libtool, new command line option
10628         --help-all.
10629         * Makefile.am (dist_man1_MANS, update_mans): New macros.
10630         ($(srcdir)/doc/libtool.1, $(srcdir)/doc/libtoolize.1): New
10631         rules.  Use --help-all for libtool.
10632         (MAINTAINERCLEANFILES): New macro.  Add dist_man1_MANS.
10633         (BUILT_SOURCES): Add libtoolize.
10634         * configure.ac: Check for help2man, set HELP2MAN.
10635         * doc/libtool.texi: Add @direntry for libtool-invocation.
10636         (Invoking libtool): Document -h, --help-all.  Reorder mode
10637         description for consistency.
10638         (Compile mode): Do not document -Wl,FLAG and -XCClinker here.
10639         (Link mode): Document -Wc,FLAG here, reformat a bit.
10640         * libtoolize.m4sh: Reformat --help output a bit, to help
10641         help2man.
10642         * libltdl/config/ltmain.m4sh: Likewise.  Also, set PROGRAM to
10643         `libtool', not `ltmain.sh', so the former is used in the man
10644         page.
10645         New argument `--help-all'.  If given, call func_help and
10646         func_mode_help several times, beating output in shape with sed.
10647         (func_mode_help): Do not exit here.
10648         * libltdl/config/getopt.m4sh (func_usage): Work with different
10649         indentations, but require comment hash in first column, when
10650         grepping for '-h' in usage to end short help.
10651         (func_help): Accept optional argument to not exit.
10652         * NEWS, THANKS: Update.
10653         Suggestion by Karl Berry.
10654
10655 2008-09-08  Gary V. Vaughan  <gary@gnu.org>
10656
10657         Use `-version-info 9:0:2' for one added iface since 2.2.4.
10658         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Make the libltdl
10659         version number match 2.2.6a rerelease.
10660
10661         Add ./commit option for pushing tags back to origin.
10662         * clcommit.m4sh (opt_tags): New --tags push option.
10663         (func_commit): Run `$GIT push --tags' if --tags was passed.
10664         * HACKING (Release Procedure): Note the requirement to pass
10665         --tags to ./commit for new release tag to be push back to
10666         origin.
10667
10668 2008-09-07  Gary V. Vaughan  <gary@gnu.org>
10669
10670         Retire gnu.org news.html in favour of savannah news.
10671         * HACKING (Release Procedure): Add instructions for sending
10672         a web release announcement to http://planet.gnu.org via
10673         the savannah news manager.
10674
10675         Add untested git push conflict testing to commit script.
10676         * clcommit.m4sh (func_check_conflicts): Test return status
10677         of 'git push --dry-run', and display an error on non-zero.
10678
10679         Enable release procedure to work with lzma OLDRELEASE file.
10680         * Makefile.maint (diffs, prev-tarball, new-tarball): If lzma
10681         tarballs are present use them to generate the diffs, otherwise
10682         use gz tarballs if they are present, or else complain if both
10683         are missing.
10684
10685         Set SCM version number to 2.2.7a.
10686         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
10687         number to 2.2.7a.
10688         * NEWS: Updated.
10689
10690         GNU Libtool 2.2.6 was released.
10691
10692         Fix typo in Makefile.maint.
10693         * Makefile.maint (git-news): Renamed to check-news, since it
10694         doesn't actually run git.  Adjust all dependees.
10695
10696         Run `git commit -a' when no files are passed.
10697         * clcommit.m4sh (func_commit): Add -a argument if necessary.
10698
10699         Prepare for next stable release.
10700         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Update.
10701         * libltdl/m4/libtool.m4: Bump serial number to account for
10702         changes since 2.2.4 release.
10703         * INSTALL, config/config.guess, config/texinfo.tex: Updated
10704         from canonical source.
10705         * configure.ac (AM_INIT_AUTOMAKE): Specify dist-lzma, which
10706         was introduced after automake-1.10 was released.
10707         (abs_top_srcdir, abs_top_builddir): No need to substitute these
10708         from configure anymore, since we require automake 1.10.1, which
10709         does perform the substitutions properly.
10710         (TIMESTAMP): Normal releases were displaying the long-form
10711         timestamp.  Fix to show the short release timestamp as per
10712         alpha release numbers.
10713         * NEWS: Update with missing entries from ChangeLog.
10714         * HACKING (Release Procedure): We release lzma tarballs now
10715         but no xdeltas.
10716         * Makefile.maint: Updated to match Release Procedure
10717         instructions in HACKING.
10718
10719         Convert mailnotify headers to git.
10720         * clcommit.m4sh: Improve mailnotify contents.
10721
10722         Make ./commit useful again.
10723         * clcommit.m4sh: Major overhaul and simplification for git.
10724
10725 2008-09-06  Gary V. Vaughan  <gary@gnu.org>
10726
10727         Fix 'DISTCHECK_CONFIGURE_FLAGS=--program-prefix=g' bug.
10728         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Fix test failures
10729         with --program-prefix, where the test case output contains the
10730         transformed name somewhere other than the beginning of a line.
10731         * libtoolize.m4sh (func_check_macros): Be sure to always use
10732         the transformed name in output messages.
10733
10734 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10735
10736         Do not remove .gcno files when linking.
10737         * libltdl/config/ltmain.m4sh (func_mode_link): When removing
10738         potential output files before linking, do not remove *.gcno
10739         profile information GCC outputs next to object files in `.libs'.
10740         Report by Vincent Torri.
10741
10742 2008-09-01  Peter O'Gorman  <peter@pogma.com>
10743
10744         Revert 75142db4f8afc65ba7aae0ed80ea0b35bd9cc382 (AIX libltdl
10745         dlopen(NULL)
10746
10747         * libltdl/m4/ltdl.m4: Remove LTDL_DLOPEN_SELF_WORKS define.
10748         * libltdl/loaders/dlopen.c: Remove LTDL_DLOPEN_SELF_WORKS check.
10749         * libltdl/m4/libtool.m4 [aix]: Set export_dynamic_flag_spec to
10750         -Wl,-bexpall. This is a temporary workaround until a real fix
10751         is implemented.
10752         * NEWS: document it.
10753
10754 2008-08-26  Peter O'Gorman  <peter@pogma.com>
10755
10756         Allow for extensions other than .a for preloaded modules.
10757         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define LT_LIBEXT.
10758         * libltdl/ltdl.c (lt_dladvise_preload): Use it.
10759         Reported by Ralf Wildenhues.
10760
10761 2008-08-26  Peter O'Gorman  <peter@pogma.com>,
10762             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10763
10764         Remove unnecessary global argz functions.
10765         * libltdl/argz.c (argz_add,argz_count): Remove.
10766         * libltdl/argz_.h (argz_add,argz_count): Remove.
10767         * NEWS: Announce it.
10768         * tests/ltdl-api.at: Test so we don't repeat it.
10769         * Makefile.am: Add new test.
10770
10771 2008-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10772
10773         Initial support for Lahey Fortran on GNU/Linux.
10774         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10775         [linux] <lf95>: Add support for Lahey Fortran 8.1.
10776         * NEWS, THANKS: Update.
10777         Suggested by Craig Tierney.
10778
10779 2008-08-21  Sam Thursfield  <ssssam@gmail.com>  (tiny change)
10780
10781         Avoid leading separator in PATH for DLL search.
10782         * libltdl/config/ltmain.m4sh (func_mode_link) [cygwin, mingw]
10783         [ pw32, os2, cegcc]: Fix dllsearchpath not to contain leading
10784         separator.
10785         * THANKS: Update.
10786
10787 2008-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10788
10789         * libltdl/config/ltmain.m4sh (func_mode_link): Quote $#.
10790
10791         Disallow `-L path', do not misparse it silently.
10792         * libltdl/config/ltmain.m4sh (func_mode_link): Diagnose `-L'
10793         without argument, and `-L path', i.e., with a space.
10794         * tests/fail.at (Failure tests): Test for these failures.
10795         * THANKS: Update.
10796         Report by Olaf Lenz.
10797
10798 2008-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10799
10800         Avoid test failure due to broken dlpreloading of shared library.
10801         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Drop
10802         some newlines in AT_CHECK commands, for better 'testsuite -x'
10803         output.  Only create a static installable libpreload.la, to
10804         avoid exposing the bug libtool currently has with preloading of
10805         shared libraries.  Add a note to revisit this later.
10806
10807 2008-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10808
10809         Parallel make testsuite fixes.
10810         * tests/configure-iface.at (installable libltdl)
10811         (--with-ltdl-include/lib, --with-included-ltdl): Add dlopened
10812         libmodule.la to main_DEPENDENCIES.
10813         * tests/old-m4-iface.at (AC_WITH_LTDL): Likewise, let ltdldemo
10814         depend upon module.la and libltdl/libltdlc.la.
10815         * tests/testsuite.at (LT_AT_MAKE): Invoke each target in turn,
10816         default to 'all'.
10817         * tests/early-libtool.at (config.lt): Define 'all' target.
10818
10819         * HACKING: Update for git, fix some minor nits.
10820
10821 2008-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10822
10823         Remove use of exit in configure test sources.
10824         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Return from main,
10825         to avoid using undeclared exit.
10826         Report against OpenMPI from Coverity via Jeff Squyres.
10827
10828         * tests/configure-iface.at (convenience libltdl): Ignore warning
10829         from parallel make.
10830
10831 2008-08-07  DJ Delorie  <dj@redhat.com>
10832
10833         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [tpf]
10834         <library_names_spec>: Fix typo in variable name.
10835
10836 2008-08-06  Steve Ellcey  <sje@cup.hp.com>
10837
10838         Use -fPIC with GCC on HP-UX/ia64.
10839         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10840         [ia64-*-hpux*]: Specify -fPIC when using GCC to build shared
10841         libraries.
10842
10843 2008-08-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10844
10845         * NEWS: Minor fixups.
10846
10847 2008-08-01  Gary V. Vaughan  <gary@gnu.org>
10848
10849         Bring NEWS up to date.
10850         * NEWS: Add missing summaries since 2.2.4 release.
10851
10852         Implement lt_dlopening of only preloaded modules.
10853         * libltdl/m4/ltdl.m4 (LTDL_INIT): Check for a libltdl that
10854         provides lt_dladvise_preopen when deciding if installed libltdl
10855         is 'new enough'.
10856         * libltdl/libltdl/lt__private.h (lt__advise): Add a new
10857         is_preload flag.
10858         * libltdl/ltdl.c (lt_dladvise_preload): New api call to set it.
10859         (try_dlopen): If it is set, and the search of preloaded modules
10860         didn't return a match, don't bother searching the filesystem.
10861         * libltdl/ltdl.h (lt_dladvise_preload): Declare it.
10862         * doc/libtool.texi (Libltdl Interface): Document it.
10863         * tests/lt_dladvise.at: Test it (and incidentally add some test
10864         coverage for `libtool -dlpreopen').
10865         * NEWS: Announce it.
10866
10867 2008-08-01  Vincent Torri  <doursse@users.sf.net>
10868
10869         Add cegcc (Windows CE/PocketPC) support.
10870         * libltdl/config/ltmain.m4sh: Add 'cegcc' case where needed.
10871         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, LT_SYS_DLOPEN_SELF)
10872         (_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
10873         (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10874         (_LT_LANG_CXX_CONFIG): Likewise.
10875         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Likewise.
10876         * NEWS: Update.
10877         * THANKS: Update.
10878
10879 2008-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10880
10881         * libltdl/config/ltmain.m4sh (func_to_host_path): Fix sh.test
10882         failure.
10883         Report by Paolo Bonzini.
10884
10885 2008-07-31  Paolo Bonzini  <bonzini@gnu.org>
10886
10887         * ltmain.m4sh (func_emit_cwrapperexe_src): Factor
10888         multiple closed braces into the next cat command.
10889
10890 2008-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10891
10892         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <icc, icpc>:
10893         Use -fPIC, newer Intel compilers (icc 10, ifort 9) reject -KPIC.
10894         * tests/localization.at: Skip test if the compiler fails merely
10895         due to the locale setting.
10896         * THANKS: Update.
10897         Report by Vincent Lefevre.
10898
10899 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10900
10901         * doc/libtool.texi (Linking executables, Static libraries)
10902         (Modules for libltdl, Distributing libltdl): Remove TABs from
10903         the manual.
10904
10905 2008-06-13  Peter O'Gorman  <peter@pogma.com>
10906
10907         Support ifort on darwin.
10908         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Build
10909         shared libraries with ifort.
10910         Reported by Christopher Hulbert.
10911
10912 2008-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
10913
10914         [mingw] fix cross-compile-with-wine case
10915         * libltdl/config/ltmain.m4sh (func_to_host_path)
10916         [host=mingw, build!=mingw|cygwin]: check that winepath
10917         stdout is non-empty and exit code is 0, instead of checking
10918         stderr.
10919         Reported by: Roumen Petrov
10920
10921 2006-06-01  Stas Maximov  <smaximov@ieee.org>  (tiny change)
10922
10923         Check only regular files, not devices, for lalibs.
10924         * libltdl/config/ltmain.m4sh (functions func_lalib_p)
10925         (func_lalib_unsafe_p): Only read regular files and not device
10926         files.  Avoids blocking libtool executing gdb, when a
10927         pseudo-terminal device /dev/pts/NN is given as one of the
10928         arguments to gdb, as in:
10929         libtool --mode=execute gdb -q -nw -i mi -tty /dev/pts/4 prog
10930
10931 2008-05-31  Peter O'Gorman  <peter@pogma.com>
10932
10933         Skip darwin test if fat link fails.
10934         * tests/darwin.at: Skip if we can not link a fat program.
10935         Reported by Daniel Macks <dmacks@netspace.org>
10936
10937 2008-05-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10938
10939         libtoolize should not remove config.guess, config.sub.
10940         * libtoolize.m4sh (all_pkgconfig_files): Do not list
10941         config.guess nor config.sub.  We don't install them without
10942         --install, and the project may not be using Automake.
10943         Report by Andreas Schwab.
10944
10945         Simplify argument parsing in cwrapper.
10946         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
10947         Use NULL where appropriate.  Do not compute length of arguments
10948         needlessly.
10949
10950 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
10951
10952         [mingw] Add cross-compile support to cwrapper
10953         * libltdl/config/ltmain.m4sh (func_to_host_path) [$host=mingw]:
10954         If present, use winepath to convert from $build to $host
10955         if $build is neither mingw (msys) nor cygwin.  Use unconverted
10956         path as fallback when conversion fails. Also update comments.
10957         (func_to_host_pathlist) [$host=mingw]: Ditto. For fallback case,
10958         use simplistic ':' to ';' path separator translation.
10959
10960 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
10961
10962         Cwrapper should not eat -- arguments
10963         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
10964         [file scope]: Defined all option strings in terms of macro
10965         LTWRAPPER_OPTION_PREFIX. Similarly defined all option string
10966         lengths in terms of macro LTWRAPPER_OPTION_PREFIX_LENGTH.
10967         [main]: Modified option parsing algorithm to pass -- on to
10968         target, and to not stop processing arguments when -- is seen.
10969         Added check for unrecognized options in reserved namespace
10970         defined by LTWRAPPER_OPTION_PREFIX.
10971
10972 2008-05-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10973
10974         Fix ifort settings again.
10975         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
10976         Unlike icc and ecc, not all ifort versions understand `-KPIC',
10977         e.g. version 10.1, so use `-fPIC' instead.
10978         Report by Jeff Squyres.
10979
10980 2008-05-20  Eric Blake  <ebb9@byu.net>
10981
10982         Resynchronize argz whitespace changes from gnulib.
10983         * libltdl/m4/argz.m4: Kill trailing whitespace.
10984         * libltdl/argz.c: Likewise.
10985
10986 2008-05-19  Eric Blake  <ebb9@byu.net>
10987
10988         Fix regression from two days ago.
10989         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ): Don't refer to deleted macro.
10990
10991 2008-05-17  Eric Blake  <ebb9@byu.net>
10992
10993         Speed up bootstrap by improving lt_combine.
10994         * libltdl/m4/ltsugar.m4 (lt_combine): Mirror Autoconf 2.62
10995         improvements.  Includes a semantic change where the separator can
10996         now be empty, and where an empty fourth argument is now treated as
10997         a valid suffix.
10998         * libltdl/m4/libtool.m4 (_lt_decl_varnames_tagged): Adjust to new
10999         semantics of lt_combine.
11000         (lt_decl_varnames_tagged): Fix quoting and optimize.
11001
11002         Kill _LT_LIBSOURCES; it wasn't checking anything useful.
11003         * libltdl/m4/ltdl.m4 (_LT_LIBSOURCES): Delete.
11004         (LTDL_INIT): Ignore arguments to AC_LIBSOURCES during _LTDL_SETUP,
11005         on the assumption that libtoolize correctly installed them.
11006
11007 2008-05-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
11008
11009         [mingw|cygwin] Modify cwrapper to invoke target directly.
11010         * libltdl/config/ltmain.m4sh (func_to_native_path):
11011         New function. If $host is mingw, and $build is mingw
11012         or cygwin, convert path to mingw native format.
11013         (func_to_native_pathlist): New function. Ditto, for
11014         :-separated pathlists.
11015         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
11016         Ensure putenv and setenv are declared. Define HAVE_SETENV.
11017         (func_emit_cwrapperexe_src) [main]: Add new constants to
11018         hold desired PATH settings; initialize and use functions
11019         above to convert to $host format if necessary. Add new
11020         command-line options --lt-env-set, --lt-env-prepend, and
11021         --lt-env-append. No longer emit wrapper script as integral
11022         part of launching child. Remove support for (now) unnecessary
11023         $TARGETSHELL. Exec actual target executable directly.
11024         (func_emit_cwrapperexe_src) [lt_setenv, lt_extend_str]
11025         [lt_split_name_value, lt_opt_process_env_set]
11026         [lt_opt_process_env_prepend, lt_opt_process_env_append]
11027         [lt_update_exe_path, lt_update_lib_path]: New functions.
11028
11029 2008-05-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
11030
11031         Ensure cwrapper compiles without warnings under -std=c99.
11032         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
11033         new function.
11034         (func_emit_wrapper_part2): new function.
11035         (func_emit_wrapper): delegate to new functions.
11036         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
11037         ensure realpath is declared.
11038         (func_emit_cwrapperexe_src): declare two different strings
11039         to each hold part of the wrapper script content. Initialize
11040         using new func_emit_wrapper_partX functions.
11041         (func_emit_cwrapperexe_src) [main]: when emitting wrapper
11042         script content, use both strings.
11043         Reported by Yaakov Selkowitz.
11044
11045 2008-05-06  Charles Wilson  <libtool@cwilson.fastmail.fm>
11046
11047         Ensure $OBJDUMP is defined
11048         * libltdl/m4/libtool.m4 (_LT_DECL_OBJDUMP): new macro ensures
11049         that $OBJDUMP is always defined sanely.
11050         (_LT_SYS_DYNAMIC_LINKER): call it.
11051         (_LT_CHECK_MAGIC_METHOD): call it.
11052
11053 2008-05-05  Gary V. Vaughan  <gary@gnu.org>
11054
11055         Fix libtoolize test failure with aclocal < 1.10.1
11056         * tests/libtoolize.at
11057         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Older aclocal
11058         requires a space between -I and the directory argument.
11059         Reported by Daniel Macks <dmacks@netspace.org>
11060
11061 2008-05-04  Gary V. Vaughan  <gary@gnu.org>
11062
11063         Set SCM version number to 2.2.5a.
11064         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
11065         number to 2.2.5a.
11066         * NEWS: Updated.
11067
11068         GNU Libtool 2.2.4 was released.
11069
11070         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
11071         number to 2.2.4.
11072         * libltdl/Makefile.inc (LTDL_VERSION_INFO): C:R+1:A because the
11073         interfaces are unchanged, even though we improved the code some
11074         more.
11075         * NEWS: Updated.
11076
11077         Macro file serial updates for next stable release.
11078         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
11079         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: Bump serial
11080         numbers to account for changes since 2.2.2 release.
11081
11082         Make libtoolize tests work with distcheck.
11083         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): When $tst_aclocal
11084         is set, transform paths that use it to generic
11085         /usr/local/share/aclocal in time for AT_CHECK comparisons.
11086
11087 2008-05-03  Gary V. Vaughan  <gary@gnu.org>
11088
11089         Don't trip over outdated acinclude.m4.
11090         * libtoolize.m4sh (all_pkgconfig_files, all_pkgmacro_files)
11091         (all_pkgltdl_files): New variables listing all files ever
11092         maintained by any release of libtoolize.
11093         (func_install_pkgconfig_parent, func_install_pkgltdl_files)
11094         (func_install_pkgconfig_subproject, func_install_pkgmacro_parent)
11095         (func_install_pkgmacro_subproject): Carefully clean up any files
11096         that may have been installed by previous libtoolize releases.
11097         * tests/libtoolize.at: New test for libltdl/acinclude.m4 removal.
11098         Reported by Andreas Schwab <schwab@suse.de>.
11099
11100 2008-05-02  Peter O'Gorman  <peter@pogma.com>
11101
11102         It helps to close quotes.
11103         * libltdl/config/ltmain.m4sh (func_mode_link): Add closing '.
11104
11105 2008-05-01  Peter O'Gorman  <peter@pogma.com>
11106
11107         Use AC_CHECK_TOOL for otool and otool64.
11108         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
11109         * libltdl/config/ltmain.m4sh (func_mode_link): Use.
11110         Reported by Richard Purdie <rpurdie@rpsys.net>
11111
11112 2008-04-30  Eric Blake  <ebb9@byu.net>
11113
11114         Support cygwin 1.7.0 in loadlibrary loader.
11115         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD) <cygwin>: Check for modern
11116         function.
11117         * libltdl/loaders/loadlibrary.c (vm_open): Avoid deprecated
11118         cygwin_conv_to_full_win32_path.
11119
11120 2008-04-29  Gary V. Vaughan  <gary@gnu.org>
11121
11122         New libtoolize --no-warn option and LIBTOOLIZE_OPTIONS parsing.
11123         * libltdl/config/general.m4sh (opt_warning): New option.
11124         (func_warning): Only display a warning message if $opt_warning
11125         is true.
11126         * libtoolize.m4sh: Accept options in LIBTOOLIZE_OPTIONS
11127         environment variable.
11128         (--no-warn): Parse new option.
11129         (func_serial_update_check, func_keyword_update): Use func_warning.
11130         (func_check_macros): Bail out before style issues nags when
11131         $opt_warning is false.
11132         * doc/libtool.texi (Invoking Libtoolize): Document it.
11133         * tests/libtoolize.at: Test it.
11134         * NEWS: Updated.
11135
11136         Fix libtoolize test failure with aclocal-1.10.1.
11137         * tests/libtoolize.at
11138         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Force aclocal to
11139         search the source tree for latest libtool macros.
11140
11141 2008-04-24  Eric Blake  <ebb9@byu.net>
11142
11143         Fix bug in 2008-04-21 type improvements.
11144         * libltdl/ltdl.c (load_deplibs): Fix casting bug.
11145
11146 2008-04-23  Michael Haubenwallner  <michael.haubenwallner@salomon.at>
11147
11148         Use /nonexistent as destination for files not to be installed.
11149         * tests/darwin.at (darwin fat compile): Fix typo.
11150         * tests/inherited_flags.at (inherited_linker_flags): Change
11151         -rpath to /nonexistent.  This helps to avoid accidentally
11152         picking up libraries below /usr/local.
11153         * tests/template.at (simple template test): Likewise.  Fixes
11154         test failure for additional incompatible libstdc++ in
11155         /usr/local.
11156         * tests/testsuite.at (configure_options): Add
11157         --prefix=/nonexistent.
11158
11159 2008-04-23  Gary V. Vaughan  <gary@gnu.org>
11160
11161         * libtoolize.m4sh (rerun_aclocal): Remove unused variable.
11162         Reported by Olly Betts <olly@survex.com>
11163
11164 2008-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11165
11166         * tests/static.at (ccache -all-static): Ignore link warnings.
11167         Report by Gary V. Vaughan.
11168
11169 2008-04-22  Gary V. Vaughan  <gary@gnu.org>
11170
11171         Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
11172         * libtoolize.m4sh (func_check_macros): Always advise use of
11173         AC_CONFIG_MACRO_DIR when not able to copy libtool macros into
11174         the project tree.
11175         * tests/libtoolize.at: New test for correct diagnosis of mismatch
11176         between AC_CONFIG_MACRO_DIR and ACLOCAL_AMFLAGS.
11177         Update expected output of other tests.
11178         * NEWS: Updated.
11179
11180 2008-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11181
11182         Fix regression over 1.5.26 with ccache $CC -all-static.
11183         * libltdl/config/ltmain.m4sh (func_mode_link): Add
11184         $link_static_flag to compile_command and link_command only
11185         later, instead of right after a possible compiler wrapper.
11186         * tests/static.at (ccache -all-static): New test.
11187         * THANKS: Update.
11188         Report by Richard Purdie.
11189
11190 2008-04-22  Andreas Schwab  <schwab@suse.de>
11191             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11192
11193         Fix default argument for AC_LIBLTDL_CONVENIENCE.
11194         * libltdl/m4/ltdl.m4 (AC_LIBLTDL_CONVENIENCE): Default argument
11195         to libltdl.
11196         (AC_LIBLTDL_INSTALLABLE): Likewise.
11197         * tests/configure-iface.at (convenience libltdl): New test.
11198
11199 2008-04-21  Gary V. Vaughan  <gary@gnu.org>
11200
11201         Only complain that files are up-to-date with --force.
11202         As a side effect, this also means that when `aclocal' copies the
11203         libtool macros into `aclocal.m4' libtoolize complains only about
11204         the macro files that are missing or not up-to-date.
11205         * libtoolize.m4sh (func_echo_once): New function that prints
11206         the contents of a named variable only on the first call.
11207         (func_aclocal_update_check): New function that compares serial
11208         numbers of libtool macros in aclocal.m4 and only diagnoses the
11209         missing files.
11210         (func_copy, func_copy_cb, func_copy_some_files, func_serial_update)
11211         (func_keyword_update, func_ltmain_update, func_config_update)
11212         (func_install_update): Accept a new argument naming a variable
11213         containing a header string to print with func_echo_once iff any
11214         body text is output by this function.
11215         (func_install_pkgmacro_subproject, func_install_pkgmacro_parent)
11216         (func_install_pkgltdl_files, func_install_pkgconfig_subproject)
11217         (func_install_pkgconfig_parent: Set and pass a suitable
11218         header string variable for the above functions.
11219         (func_serial_update_check): Don't advise rerunning `libtoolize
11220         --force' when aclocal.m4 is not m4_including libtoolize installed
11221         macro files.
11222         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic
11223         /usr/local/share/aclocal paths to point into the uninstalled
11224         libtool macro directory.
11225         * tests/libtoolize.at: Update tests that were checking for old
11226         behaviour of outputing `file is already up to date' even when
11227         --force was not passed.
11228         * tests/libtoolize.at: New tests to prevent regressions of these
11229         smarter messages.
11230         * NEWS: Updated.
11231         Reported by Olly Betts <olly@survex.com>
11232
11233         Capture lt~obsolete.m4 serial number correctly in libtoolize.
11234         * libltdl/m4/lt~obsolete.m4: Add the filename to the #serial
11235         marker so that libtoolize's serial number checks can find it
11236         in a non-include using aclocal.m4.
11237         * NEWS: Updated.
11238         Reported by Olly Betts <olly@survex.com>
11239
11240         Allow better compile time type checking for lt_dladvise.
11241         * libltdl/lt__private.h (lt__handle, lt__advise): Typedefs
11242         removed in favour of...
11243         * libltdl/ltdl.h (lt_dlhandle),
11244         libltdl/libltdl/lt_dlloader.h (lt_dladvise): ...changing from
11245         void* to forward declarations.
11246         * libltdl/loaders/dlopen.c, libltdl/loaders/loadlibrary.c,
11247         libltdl/lt_dlloader.c, libltdl/ltdl.c: Remove many redundant
11248         type casts.
11249         * NEWS: Updated.
11250         Suggested by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
11251
11252 2008-04-21  Peter O'Gorman  <peter@pogma.com>
11253
11254         basename does not take a list of strings.
11255         * libltdl/config/ltmain.m4sh(func_extract_archives): Use sed
11256         $basename.
11257         * tests/darwin.at: New. Check that we can built fat program,
11258         shared library and convenience library.
11259         * Makefile.am: Add test.
11260         Reported by LiKai Liu <liulk@cs.bu.edu>
11261
11262         Use AC_CHECK_TOOL for lipo too.
11263         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
11264         * libltdl/config/ltmain.m4sh (func_extract_archives): Use.
11265
11266 2008-04-20  Gary V. Vaughan  <gary@gnu.org>
11267
11268         Fix misleading lt_dlopenadvise documentation.
11269         * doc/libtool.texi (lt_dlopenadvise): The last parameter is of
11270         type lt_dladvise, not lt_dladvise*.
11271         (my_dlopenext): Correct the example too.
11272         * NEWS: Updated.
11273         Reported by Gary Kumfert <kumfert@llnl.gov>
11274
11275 2008-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11276
11277         Fix testsuite cleanup warnings on AIX with NFS.
11278         * tests/testsuite.at [ aix ]: Set file mode creation so that
11279         'others' have no permissions.  Shared libraries are kept in
11280         memory on AIX after use if they are world-readable, which means
11281         on NFS mounts cleanup of test group directories will fail later.
11282         * THANKS: Update.
11283         Report and analysis by Michael Haubenwallner.
11284
11285         Fix nonportable use of expr.
11286         * libltdl/config/ltmain.m4sh (func_mode_link) <Transforming
11287         deplibs into only shared deplibs>: Fix expr portability issues,
11288         noted on FreeBSD.  While at it, simplify and avoid forking.
11289         Report by Bob Friesenhahn.
11290
11291         Exploit shell arithmetic expansion and ${#var}.
11292         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also check
11293         for arithmetic expansion, and ${#var}.
11294         (_LT_PROG_XSI_SHELLFNS): Define func_arith and func_len
11295         accordingly, falling back on 'expr'.  Note that the argument to
11296         func_len may not start with a hyphen.  In the pre-Posix
11297         fallback, take care not to rely on the exit status of the
11298         variable assignment (not portable), but set the length to
11299         $max_cmd_len instead.
11300         * libltdl/config/ltmain.m4sh (func_mode_link): Use func_arith
11301         and func_len throughout for integer arithmetic, fixing
11302         quadratical amount of counting for reloadable object and
11303         piecewise archive linking.  Change all comparisons with
11304         max_cmd_len to test for smaller, non-equal length.
11305         * THANKS: Update.
11306         Suggested by Roland Mainz.
11307
11308         * libltdl/config/ltmain.m4sh (func_mode_compile): Avoid
11309         redundant removal of old output files before compilation.
11310         Do not remove $obj until we have successfully grabbed the
11311         lockfile (in case the compiler doesn't grok `-c -o'), because
11312         it might be identical to $output_obj.
11313         At the end of the function, before we remove the lockfile,
11314         update $removelist so that if the trap hits after the lockfile
11315         has been removed, we do not accidentally remove $output_obj that
11316         does not belong to us.
11317         (func_write_libtool_object): Use $MV instead of mv.
11318
11319 2008-04-18  Andreas Schwab  <schwab@suse.de>
11320
11321         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Check optional
11322         argument.
11323         (AC_ENABLE_STATIC): Likewise.
11324         (AC_ENABLE_FAST_INSTALL): Likewise.
11325
11326 2008-04-16  Eric Blake  <ebb9@byu.net>
11327
11328         Make ChangeLog merges easier.
11329         * .gitattributes: New file.
11330         * HACKING: Mention how it helps.
11331
11332 2008-04-15  Peter O'Gorman  <peter@pogma.com>
11333
11334         Allow bootstrap from git repository.
11335         * Makefile.am: Pass srcdir as an argument to mkstamp and expect
11336         only 2 fields in mkstamps output.
11337         * clcommit.m4sh: Ditto.
11338         * configure.ac: Ditto.
11339         * libltdl/config/mkstamp: return a revision and date based on
11340         the number of lines which look like dates in all the ChangeLog*
11341         files in the directory we got as arg 1.
11342
11343 2008-04-11  Eric Blake  <ebb9@byu.net>
11344
11345         Fix usage of setmode without declaration on cygwin.
11346         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Ensure
11347         setmode has prototype for both mingw and cygwin.
11348
11349 2008-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11350
11351         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Move non-XSI
11352         definition of func_dirname_and_basename ...
11353         * libltdl/config/general.m4sh (func_dirname_and_basename):
11354         ... here, to use it for the other scripts that use general.m4sh
11355         (and as portable fallback for libtool).  Add marker for early
11356         insertion of generated shell functions (into libtool, not the
11357         other scripts) here.
11358         Use func_dirname_and_basename to compute progname, progpath.
11359         * libltdl/config/ltmain.m4sh (func_mode_help): Remove marker
11360         for insertion of generated shell functions.
11361         * tests/sh.test: Adjust function definition test to not match
11362         function call.
11363
11364         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS) <func_xform>:
11365         New function.
11366         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it to
11367         avoid two forks with XSI shells.
11368         * tests/suffix.test: Also test a file with multiple dots.
11369
11370 2008-04-10  Peter O'Gorman  <peter@pogma.com>
11371
11372         * libltdl/config/ltmain.m4sh (func_win32_libid,
11373         func_generate_dlsyms, func_extract_an_archive,
11374         func_extract_archives, func_mode_help): move these so they
11375         appear after func_mode_compile.
11376         * tests/nomode.test: Check that --mode=link --help works.
11377         Reported by Josh Triplett <josh@freedesktop.org>
11378
11379 2008-04-07  Gary V. Vaughan  <gary@gnu.arg>
11380
11381         * doc/libtool.texi (Libltdl interface): Add missing
11382         documentation for lt_dlopenavise.
11383         Reported by Anton Erti <anton@mips.complang.tuwien.ac.at>
11384
11385         * configure.ac, libltdl/configure.ac (AM_INIT_AUTOMAKE): Use
11386         gnu rather than gnits standards so that version number 2.2.3a
11387         is not rejected!
11388         Reported by Olly Betts <olly@survex.com>
11389
11390 2008-04-01  Gary V. Vaughan  <gary@gnu.arg>
11391
11392         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
11393         number to 2.2.3a.
11394
11395         GNU Libtool 2.2.2 was released.
11396
11397         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
11398         number to 2.2.2.
11399         * libltdl/Makefile.in (LTDL_VERSION_INFO): C:R+1:A because the
11400         interfaces are unchanged, even though we improved the code some
11401         more.
11402         * NEWS: Updated.
11403
11404         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
11405         libltdl/m4/ltoptions.m4: Bump serial numbers to account for
11406         changes since 2.2 release.
11407
11408 2008-03-27  Peter O'Gorman  <peter@pogma.com>
11409
11410         * libltdl/m4/libtool.m4 [_LT_REQUIRED_DARWIN_CHECKS]: Fix the
11411         test for -single_module and log it to config.log.
11412         Reported by Torok Edwin and Nigel Home.
11413
11414 2008-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11415
11416         Document that disable-static plus -all-static is not portable.
11417         * doc/libtool.texi (Link mode): -all-static does not go well
11418         with disable-static on most systems.
11419         * tests/static.at (static linking flags for programs) [!aix]:
11420         With --disable-static but nonempty link_static_flag, skip the
11421         m-all-static link.  Do not skip it on AIX, as there the
11422         enable_static is self-inflicted, and thus expected to work.
11423         * THANKS: Update.
11424         Report by Nix.
11425
11426 2008-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11427
11428         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): No need to escape
11429         backticks in argument to AC_MSG_WARN or AC_MSG_ERROR.
11430         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE, LTDL_INIT): Likewise.
11431
11432 2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11433
11434         * libltdl/config/ltmain.m4sh (NLS nuisances): Fix quoting of
11435         localization variables for shell-active characters.
11436         * tests/localization.at (localized compiler messages): Extend
11437         test.
11438         * THANKS: Update.
11439         Report by Mike Frysinger.
11440
11441 2008-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11442
11443         * tests/defs.m4sh (func_get_config): Build egrep regex to speed
11444         up extracting several variables at once.  Use it to extract all
11445         default variables at once.  Also extract build_alias and
11446         host_alias from the libtool script.
11447         (func_configure_nofail): Use build_alias and host_alias for
11448         --build and --host, respectively.  Pass each if nonempty.
11449         * tests/testsuite.at: Pass --build if build_alias is nonemtpy.
11450         * tests/quote.test: Extract ECHO and wl at once.
11451
11452         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_WIN32_DLL): Require
11453         AC_CANONICAL_HOST.
11454         * THANKS: Update.
11455         Report by Jakub Bogusz.
11456
11457 2008-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11458
11459         * NEWS: Update.
11460
11461 2008-03-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
11462
11463         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src) [file
11464         scope]: additional #includes and #defines to support...
11465         (func_emit_cwrapperexe_src) [main]: ensure stdout is set to
11466         binary mode for cygwin|mingw builds. Ensure temporary script
11467         file is written in binary mode for cygwin|mingw builds.
11468         (func_mode_link) [cygwin|mingw]: cross-build support - only
11469         use cwrapper to generate shell wrapper if building native;
11470         otherwise use func_emit_wrapper()
11471
11472 2008-03-12  Henning Nielsen Lund  <hnl_dk@amigaos.dk>
11473
11474         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
11475         (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [amigaos]: Port to
11476         AmigaOS4 shared libraries on powerpc.
11477         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [amigaos]:
11478         Likewise.
11479         * THANKS, NEWS: Update.
11480
11481 2008-03-09  Bruno Haible  <bruno@clisp.org>
11482         and Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11483
11484         Fix compiler output to be in the user locale.
11485         * libltdl/config/general.m4sh (func_show_eval_locale): New
11486         function, for running commands in the user locale.
11487         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it for
11488         compiling.
11489         * tests/localization.at (localized compiler messages): New test.
11490         * Makefile.am: Adjust.
11491         Report by Bruno Haible.
11492
11493 2008-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11494
11495         Fix several test failures on Cygwin and MinGW.
11496         * tests/nonrecursive.at: Use -no-undefined for foo.la.
11497         * tests/recursive.at: Likewise.
11498         * tests/subproject.at: Likewise.
11499         * tests/lt_dladvise.at: For systems where undefined symbols are
11500         not allowed, to not try to load the module libdepend.
11501         [ mingw ]: Add to list of such systems.
11502         * tests/testsuite.at (_LT_AT_TRANSLATE_TEXT_OUTPUT): New macro,
11503         to translate line ending of expout and experr files suitable for
11504         host executables.
11505         (LT_AT_CHECK, LT_AT_NOINST_EXEC_CHECK): Use it.
11506         Report by Bob Friesenhahn.
11507
11508         Fix installcheck dependencies, fix for --program-transform-name.
11509         * Makefile.am (installcheck-local): Depend upon tests/atconfig
11510         and $(srcdir)/$(TESTSUITE).
11511         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): New macro.
11512         (LT_AT_CHECK_LIBTOOLIZE): Use it to transform expout and experr
11513         files suitably.
11514         * HACKING: Update.
11515
11516         Drop usage of obsolete macros AC_EXEEXT and AC_OBJEXT.
11517         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
11518         (_LT_COMPILER_C_O, LT_PATH_NM, _LT_CMD_GLOBAL_SYMBOLS, _LT_SETUP):
11519         Drop usage of obsolete AC_OBJEXT and AC_EXEEXT.
11520         * tests/am-subdir.at (C++ subdir-objects): Likewise.
11521
11522 2008-03-07  Peter O'Gorman  <peter@pogma.com>
11523
11524         * tests/convenience.at (Java convenience archives): Skip test if
11525         gcj cannot compile a working executable from .java files.
11526         Report by Nelson H. F. Beebe.
11527
11528         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Need to set LD.
11529         Reported by Nelson H. F. Beebe.
11530
11531 2008-03-06  Peter O'Gorman  <peter@pogma.com>
11532
11533         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Undo commit - bad idea.
11534
11535         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Report FC=no if the FC
11536         compiler is not a GNU compiler and the CXX compiler is a GNU
11537         compiler.
11538         Reported by Nelson H. F. Beebe.
11539
11540 2008-03-06  Gary V. Vaughan  <gary@gnu.org>
11541
11542         * Makefile.maint (TSDEPS_DIST): Removed.  No longer used.
11543         (TSDEPS): libtool.m4 has long since moved to libltdl.
11544         (cvs-dist): Don't put the suffix dot in twice.
11545
11546 2008-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11547
11548         * tests/convenience.at (Java convenience archives): Skip test if
11549         gcj cannot compile a .java file.
11550         Report by Nelson H. F. Beebe.
11551
11552 2008-03-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11553
11554         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p): redirect
11555         and restore from stdin, not stdout.
11556         * tests/execute-mode.at (execute mode): Adjust test to catch
11557         this.
11558         Report by Roberto Bagnara.
11559
11560 2008-03-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11561
11562         Fix libltdl to not skip dlopen on systems with several loaders,
11563         such as HP-UX, Cygwin.
11564         * libltdl/slist.c (slist_concat): When appending to the tail
11565         of a list, do not drop items off the beginning of the list.
11566         * NEWS: Update.
11567
11568         * libltdl/config/ltmain.m4sh (func_mode_execute): Replace only
11569         arguments we have identified as shell or C wrappers.
11570         (func_emit_wrapper): Output error message on stderr.
11571         * tests/execute-mode.at: New file, with --mode=execute tests.
11572         * Makefile.am: Adjust.
11573         * NEWS: Update.
11574         Fixes 2.2 regression.  Report by Roberto Bagnara.
11575
11576         * libltdl/m4/libtool.m4 (_LT_CONFIG): Drop misleading `GNU'
11577         prefix before the host package name in the "Generated by" line
11578         for the libtool script.
11579         * THANKS: Update.
11580         Reports by Peter Rosin and Roberto Bagnara.
11581
11582         * doc/libtool.texi (Module loaders for libltdl): Fix typo.
11583
11584         * libltdl/loaders/dld_link.c (vl_exit): New function, zero out ...
11585         (vtable): ... this new file static variable split out from ...
11586         (get_vtable): ... here.  Initialize vtable, register vl_exit as
11587         dlloader_exit function.
11588         * libltdl/loaders/dlopen.c: Likewise.
11589         * libltdl/loaders/dyld.c: Likewise.
11590         * libltdl/loaders/load_add_on.c: Likewise.
11591         * libltdl/loaders/loadlibrary.c: Likewise.
11592         * libltdl/loaders/shl_load.c: Likewise.
11593         * libltdl/loaders/preopen.c: Likewise; vl_exit existed here
11594         already.
11595         * tests/lt_dlexit.at (lt_dlexit unloading libs): Update test.
11596         * NEWS: Update.
11597         Report by Andreas Schwab.
11598
11599 2008-03-01  Gary V. Vaughan  <gary@gnu.org>
11600
11601         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
11602         number to 2.3a.
11603
11604         GNU Libtool 2.2 was released.
11605
11606         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
11607         number to 2.2.
11608         * NEWS: Updated.
11609
11610         * tests/lt_dladvise.at, tests/lt_dlexit.at,
11611         tests/need_lib_prefix.at: Skip these tests when called from
11612         `make distcheck DISTCHECK_CONFIGURE_FLAGS=--disable-ltdl-install'.
11613         The tests try to link against the dummy installed libltdl.la
11614         from .../_inst/lib/libltdl.la, which does not exist when
11615         configured with --disable-ltdl-install.
11616
11617 2008-02-29  Gary V. Vaughan  <gary@gnu.org>
11618
11619         * libltdl/m4/argz.m4 (AC_CHECK_FUNCS): Also use our replacement
11620         argz if the system argz_add or argz_count are missing.
11621         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
11622
11623 2008-02-26  Karl Berry  <karl@freefriends.org>
11624
11625         * libltdl/argz.c (argz_add, argz_count): New functions.
11626         * libltdl/argz_.h: Declare them.
11627         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
11628
11629 2008-02-20  Peter O'Gorman  <peter@pogma.com>
11630
11631         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Do not call the
11632         _LT_SYS_DYNAMIC_LINKER macro here.
11633         Reported by Mike Frysinger <vapier@gentoo.org>
11634
11635 2008-02-15  Peter O'Gorman  <peter@pogma.com>
11636
11637         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix typo.
11638
11639 2008-02-14  Peter Breitenlohner  <peb@mppmu.mpg.de>
11640
11641         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better handling
11642         of predefined values for lt_cv_sys_lib_search_path_spec and
11643         lt_cv_sys_lib_dlsearch_path_spec.
11644
11645 2008-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11646
11647         * libtoolize.m4sh (func_install_pkgconfig_files): Only call
11648         func_install_pkgconfig_parent if $seen_autoconf.
11649         * tests/standalone.at (compiling softlinked libltdl)
11650         (compiling copied libltdl, installable libltdl)
11651         (linking libltdl without autotools): Use checked libtoolize
11652         calls to catch warnings.
11653
11654 2008-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11655
11656         * libltdl/configure.ac: Bump package version.
11657         * HACKING: Reminder to do it next time, too.
11658
11659 2008-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11660
11661         * tests/mdemo/Makefile.am (@LIBLTDL@): Update outdated
11662         dependencies.
11663         ($(top_distdir)/libltdl/libtool): Remove.
11664         Fixes spurious mdemo-dryrun failure with OpenBSD make.
11665
11666 2008-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11667
11668         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
11669         Treat like icc and ecc, for fixed `-Wl,' and `-KPIC' settings.
11670
11671 2008-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11672
11673         * tests/archive-in-archive.at
11674         (static library contains static library): Test also the actual
11675         broken link command, and the following install command, as
11676         UnixWare ar rightly refuses to put an archive into an archive.
11677         Report by Tim Rice.
11678
11679 2008-02-06  Peter O'Gorman  <peter@pogma.com>
11680
11681         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Only set default
11682         LT_INIT values for LT_INIT, not LTDL_INIT.
11683         Reported by Jochem Huhmann <joh@revier.com>
11684
11685 2008-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11686
11687         * tests/testsuite.at (LT_AT_TAG): For the CXX tag, if $CXX is
11688         g++, check that `g++ -v' works; AC_PROG_CXX may have set that
11689         as default value even if it found no C++ compiler.
11690         Report by Andreas Schwab.
11691
11692 2008-02-02  Gary V. Vaughan  <gary@gnu.org>
11693
11694         * libltdl/Makefile.inc (EXTRA_DIST): Now that we're not using
11695         Autoconf's AC_SOURCES macro, Automake can't trace our extra
11696         source files argz, lt__dirent.c and lt__strl.c.  List them
11697         manually here to make sure they are distributed.
11698         * NEWS: Updated.
11699         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
11700
11701 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
11702
11703         * configure.ac (AC_INIT): Bump version number to 2.1c.
11704
11705         GNU Libtool 2.1b was released.
11706
11707         * configure.ac (AC_INIT): Bump version number to 2.1b.
11708         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Increment to account
11709         for new interfaces since the last libltdl update.
11710         * HACKING (Release Procedure): Note that LTDL_VERSION_INFO is now
11711         kept in libltdl/Makefile.inc.
11712
11713 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
11714
11715         * tests/cdemo, tests/depdemo, tests/fcdemo, tests/pdemo,
11716         tests/demo, tests/f77demo, tests/mdemo, tests/tagdemo
11717         (distclean-local): Remove compiler file droppings left by
11718         Autoconf tests that prevent make dist from finishing on
11719         several machines including Mac OS 10.5.
11720
11721 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
11722
11723         Unfortunately, the autoconf implementation of AC_LIBOBJ and
11724         friends requires all libobjs to be in the same directory, as
11725         declared by AC_CONFIG_LIBOBJ_DIR.  That might prevent using
11726         either recursive or nonrecursive libltdl if the parent project
11727         has libobjs of its own, except that this patch tracks libltdl's
11728         libobjs in another namespace:
11729
11730         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ, _LT_LIBSOURCES): Versions of
11731         AC_LIBOBJ and AC_LIBSOURCES that save missing sources in a
11732         ltdl_LIBOBJS automake macro, instead of the global LIBOBJS
11733         automake macro.  Content of the macros inspired by code from
11734         gnulib-tool.
11735         (_LTDL_MODE_DISPATCH): Initialise lt_libobj_prefix in
11736         nonrecursive mode.
11737         (LTDL_INIT): Push and pop the new definitions around potential
11738         sites that call AC_LIBOBJ.  Also, using lt_libobj_prefix,
11739         initialise ltdl_LIBOBJS and ltdl_LTLIBOBJS.
11740         * libtoolize.m4sh (func_fixup_Makefile): Substitute ltdl_LIBOBJS
11741         and ltdl_LTLIBOBJS for LIBOBJS and LTLIBOBJS during copying
11742         either Makefile.am or Makefile.inc, depending on ltdl_mode.
11743         Reported by Eric Blake <ebb9@byu.net>
11744
11745 2008-01-30  Gary V. Vaughan  <gary@gnu.org>
11746
11747         There are 5 distinct batches of files that libtoolize might
11748         install into a project, depending on whether libltdl is
11749         being installed in subproject mode, and in that case whether
11750         the parent project shares the config and macro directories
11751         with the subproject ltdl.  Make a separate function for each
11752         of those 5 batches (4 new functions below, plus the recently
11753         factored func_install_pkgltdl_files), and make a clearer
11754         distinction between when each of them is needed:
11755
11756         * libtoolize.m4sh (func_install_pkgmacro_subproject):
11757         New function for installing and reporting on m4 files copied
11758         to a subproject ltdl directory.
11759         (func_install_pkgmacro_parent): Similar new function for m4
11760         files copied solely for the use of the parent project,
11761         including serial checking.
11762         (func_install_pkgconfig_subproject): New function for
11763         installing and reporting on config helper files copied to a
11764         subproject ltdl directory.
11765         (func_install_pkgconfig_parent): Similar new function for
11766         config helper files copied solely for the use of the parent
11767         project, including serial checking.
11768         (func_install_pkgmacro_files, func_install_pkgconfig_files):
11769         Rewritten in terms of the above functions.
11770         * tests/libtoolize.at: Adjust test expout's to match newly
11771         regularized libtoolize output.
11772         Move parent project pkgconfig files to build-aux directory
11773         so that progress messages show an obvious difference to
11774         pkgconfig files installed to subproject `config' directory.
11775         (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test.
11776         (diagnose missing LT_CONFIG_LTDL_DIR): New test.
11777         (subproject ltdl with non-shared directories): New test.
11778         Reported by Eric Blake <ebb9@byu.net>
11779
11780 2008-01-29  Peter O'Gorman  <peter@pogma.com>
11781
11782         * libltdl/m4/libtool.m4 [darwin]: Changes to glob pattern matching
11783         to be safer.
11784
11785         Search the compiler path too.
11786         * libltdl/m4/libtool.m4 (compiler_lib_search_dirs): New variable.
11787         * libltdl/config/ltmain.m4sh: Use it.
11788         Reported by Maynard Johnson
11789
11790 2008-01-28  Gary V. Vaughan  <gary@gnu.org>
11791
11792         * libtoolize.m4sh (func_check_macros): Correct typo with
11793         '$opt_quiet ||' where '$opt_quiet &&' that was preventing
11794         func_check_macros from running!
11795
11796         * libtoolize.m4sh: Set opt_ltdl whenever seen_ltdl is set
11797         so that libtoolize behaves as though --ltdl was passed even
11798         if it wasn't as long as LTDL_INIT (or equivalent) was seen
11799         in configure.ac.  Adjust redundant '$opt_ltdl || $seen_ltdl'
11800         to simply '$opt_ltdl'.
11801         Reported by Eric Blake <ebb9@byu.net>
11802
11803         * libtoolize.m4sh (func_check_macros): Check opt_quiet
11804         in the function itself to simplify calling it.  Also move
11805         the definition of the function.
11806
11807         * libtoolize.m4sh (func_scan_files): Be sure to set the
11808         default libltdl mode to 'subproject' when libtoolize is
11809         executed before configure.ac has been updated.
11810
11811 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
11812
11813         * libtoolize.m4sh (func_install_pkgconfig_files)
11814         (func_install_pkgmacro_files, func_install_pkgltdl_files):
11815         Factored out from the 'Main' section of the file.
11816
11817         * libtoolize.m4sh (subproject_auxdir, subproject_macrodir):
11818         New variables to hold the default locations for auxfiles
11819         and macrofiles in a subproject libltdl.
11820         (ac_auxdir, ac_macrodir): New variables to hold the values
11821         passed by AC_CONFIG_AUX_DIR and AC_CONFIG_MACRO_DIR resp.
11822         (auxdir, macrodir): Adjust to contain the values to be
11823         used by libtoolize at runtime.
11824
11825         * libtoolize.m4sh (func_fixup_Makefile)
11826         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
11827         (func_massage_pkgconfig_files): Add missing $opt_debug.
11828
11829 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
11830
11831         * libtoolize (func_fixup_Makefile, func_massage_aclocal_DATA)
11832         (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
11833         Add missing $opt_debug.
11834
11835 2008-01-26  Gary V. Vaughan  <gary@gnu.org>
11836
11837         * libtoolize.m4sh (Main): Copy (or link) libltdl sources
11838         into project tree when LTDL_INIT was seen, whether or not
11839         `--ltdl' is passed.
11840         (func_check_macros): Recommend LTDL_INIT instead of
11841         LT_WITH_LTDL when `--ltdl' is used before configure.ac is
11842         upgraded.
11843         * tests/libtoolize.at: Test that it works.
11844         (_LT_AT_LTDL_SETUP): Factor out some common test setup.
11845         Reported by Eric Blake <ebb9@byu.net>
11846
11847 2008-01-24  Peter O'Gorman  <peter@pogma.com>
11848
11849         * doc/notes.texi: Fix errors in previous commit.
11850
11851         * libltdl/m4/libtool.m4 (sys_lib_search_path_spec,
11852         sys_lib_dlsearch_path_spec): Allow for a cache variable
11853         lt_cv_sys_lib_... to set these at configure time.
11854         * doc/notes.texi: Short note about the above change.
11855
11856 2008-01-24  Eric Blake  <ebb9@byu.net>
11857
11858         Add proper quoting to doc examples.
11859         * doc/libtool.texi: Use m4 quotes where appropriate.
11860         (Test descriptions): Fix truncated sentence.
11861
11862 2008-01-18  Gary V. Vaughan  <gary@gnu.org>
11863
11864         * Makefile.am (DISTCLEANFILES): Remove libtool.dvi generated
11865         by 'make dvi'.
11866
11867 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11868
11869         * libtoolize.m4sh (func_scan_files): Avoid matching our own
11870         macro code when scanning configure.ac and aclocal.m4.
11871         Don't produce spurious output if AC_PROG_RANLIB is found.
11872         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Add a (weak) check
11873         that we don't match our own macro code when searching for user
11874         code calling us.
11875         * TODO: Updated.
11876
11877 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11878
11879         New variable LTDLDEPS for use in output_DEPENDENCIES.
11880
11881         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE, _LTDL_INSTALLABLE)
11882         (LTDL_INIT): Set and substitute LTDLDEPS according to chosen
11883         method.
11884         * tests/configure-iface.at (installable libltdl)
11885         (--with-ltdl-include/lib, --with-included-ltdl): Test it.
11886         * doc/libtool.texi (Distributing libltdl): Document LTDLDEPS.
11887         * NEWS: Updated.
11888         Dependency bug exposed by Eric Blake in M4, found by Bob Proulx
11889         build daemon.
11890
11891 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11892
11893         * doc/libtool.texi (Distributing libltdl): Clarify that
11894         `${top_build_prefix}' may be used in place of `${top_builddir}/'.
11895
11896         * doc/libtool.texi (Distributing libltdl): Clarify that
11897         LTDL_INIT goes after LT_INIT; also show the latter in the
11898         respective examples.
11899         * tests/subproject.at: Adjust order.
11900
11901 2008-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11902
11903         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Use AM_CONDITIONAL
11904         only if defined.  Allows to use libltdl without aclocal.
11905
11906 2008-01-16  Peter O'Gorman  <peter@pogma.com>
11907
11908         * libltdl/m4/libtool.m4: Set GCC var for every tag, avoids need
11909         to set withGCC var.
11910
11911 2008-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11912
11913         * configure.ac: Set libltdl nonrecursive option, to avoid
11914         configuring libltdl inside the Libtool package.
11915
11916 2008-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11917
11918         Silence all non-warning output from `libtool --silent'.
11919         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
11920         (func_extract_archives, func_mode_link): Use func_verbose
11921         instead of func_echo for all non-warning output.
11922
11923         * Makefile.maint (fetch): Update to match upstream git sources.
11924         Pull `INSTALL' from gnulib instead of from Autoconf.
11925
11926         * doc/notes.texi: Mention AIX binutils deficiency for C++ code.
11927         Report by Rainer Tammer.
11928         Suggest using bash for configure.
11929
11930         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Fix to use
11931         new _LT_SET_OPTION semantics.
11932
11933 2008-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11934
11935         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define
11936         LTDL_DLOPEN_SELF_WORKS, depending upon lt_cv_dlopen_self.
11937         * libltdl/loaders/dlopen.c (vm_open) [!LTDL_DLOPEN_SELF_WORKS]:
11938         Fail for dlopen(NULL), so that the preopen loader is used.  This
11939         fixes mdemo-exec.test failures on AIX where dlopen(NULL)
11940         succeeds but dlsym resolves no symbol.
11941         * NEWS: Update.
11942         Report by Rainer Tammer.
11943
11944         * tests/am-subdir.at: Drop unused variables.
11945         * tests/configure-iface.at: Likewise.
11946         * tests/ctor.at: Likewise.
11947         * tests/early-libtool.at: Likewise.
11948         * tests/lt_dladvise.at: Likewise.
11949         * tests/old-m4-iface.at: Likewise.
11950         * tests/lt_dlexit.at: Likewise.  Also drop unused functions.
11951
11952         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Also copy needed
11953         lt~obsolete.m4.
11954
11955         * libltdl/config/ltmain.m4sh (func_mode_link): Fix warning
11956         about -l and -L for archives and objects as output, to not
11957         trigger for *.la files.  Non-convenience archives are diagnosed
11958         later on.
11959
11960         * tests/configure-iface.at: Ensure LTDLINCL is expanded
11961         before CPPFLAGS, so that even CPPFLAGS=-I/usr/local/include
11962         won't make the tests prefer an installed ltdl.h over the
11963         in-package one.
11964         * tests/lt_dladvise.at, tests/lt_dlexit.at: Likewise.
11965         * tests/need_lib_prefix.at, tests/old-m4-iface.at: Likewise.
11966         Report by Bob Friesenhahn.
11967
11968 2008-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11969
11970         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) <exclude_expsyms>:
11971         Also exclude `_GLOBAL__F[ID]_.*'.  Also set for the C++ tag.
11972         Fixes esp. demo/helldl build failure with GCC on AIX.
11973         Report by Rainer Tammer.
11974
11975 2008-01-11  Peter O'Gorman  <peter@pogma.com>
11976
11977         * libltdl/m4/libtool.m4 [darwin]: Reorganize darwin support, use
11978         dsymutil if it is available so that debugging is possible, check
11979         for nmedit and dsymutil with AC_CHECK_TOOL, use the linker flag
11980         -exported_symbols_list in preference to nmedit if it is available.
11981         Drop support for xlc, it is probably broken.
11982         * tests/template.at [darwin]: Skip this test, I can not find a way
11983         to make it work on darwin9 with Xcode-3.0.
11984         * NEWS: Note the dropping of xlc support.
11985
11986 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11987
11988         * libltdl/m4/libtool.m4 (LT_INIT): m4_require, not AC_REQUIRE
11989         _LT_CHECK_BUILDDIR, as it's m4_defun'ed, not AC_DEFUN'ed.
11990         Report by Peter O'Gorman.
11991
11992         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE): Restore correct
11993         _LT_BUILD_PREFIX-using code.
11994
11995 2008-01-08  Gary V. Vaughan  <gary@gnu.org>
11996
11997         * tests/recursive.at: Remove bogus --debug option.
11998         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11999
12000         * tests/configure-iface.at: Build libltdl in a subdir so that
12001         it can be easily removed without trying to remove config.log
12002         on windows (which can't delete a file until it is closed).
12003         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12004
12005         * libltdl/m4/ltdl.m4 (LTDL_INSTALLABLE): Use _LT_BUILD_PREFIX
12006         instead of ${top_builddir} for Autoconf-2.62.
12007         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12008
12009         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Correct closing
12010         comment.
12011         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12012
12013         * NEWS: Grammar nit.
12014
12015         * tests/configure-iface.at, tests/nonrecursive.at,
12016         tests/recursive.at, tests/subproject.at (_LTDL_SETUP):
12017         Renamed to _LT_AT_LTDL_SETUP to avoid a nameclash with
12018         libltdl/m4/ltoptions.m4:_LTDL_SETUP from yesterday's patch.
12019         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12020
12021 2008-01-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12022
12023         * tests/runpath-in-lalib.at (Runpath in libtool library files):
12024         Compile program file without libtool.
12025         Report by Rainer Tammer.
12026
12027 2008-01-07  Rainer Tammer  <tammer@tammer.net>  (tiny change)
12028             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12029
12030         Support AIX 6.1.
12031         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12032         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
12033         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
12034         (_LT_LANG_FC_CONFIG): Adjust case patterns to match AIX 6
12035         through 9 as well.
12036         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
12037         * NEWS: Update.
12038         * THANKS: Update.
12039
12040 2008-01-07  Gary V. Vaughan  <gary@gnu.org>
12041
12042         Move libltdl build mode options from LT_CONFIG_LTDL_DIR to
12043         LTDL_INIT.  Accept (optional) new 'convenience' and 'installable'
12044         options in lieu of LTDL_CONVENIENCE and LTDL_INSTALL macros. And
12045         also, implement --with-included-ltdl, --with-ltdl-lib and
12046         --with-ltdl-include configure-time options:
12047
12048         * libltdl/m4/ltoptions.m4: Associate existing option settings with
12049         LT_INIT.
12050         (LT_OPTION_DEFINE): Associate options 'nonrecursive', 'recursive',
12051         'subproject', 'installable' and 'convenience' with LTDL_INIT.
12052         (_LT_MANGLE_OPTION, _LT_SET_OPTION, _LT_IF_OPTION)
12053         (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Add MACRO-NAME argument to
12054         support options to named macros instead of hardcoding only LT_INIT
12055         options.
12056         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE): Factor common code from
12057         LTDL_CONVENIENCE and LTDL_INIT([convenience]).
12058         (_LTDL_INSTALLABLE): Factor out common code from LTDL_INSTALLABLE
12059         and LTDL_INIT([installable]).
12060         (_LTDL_SETUP): Renamed from LTDL_INIT.  Support new configure-time
12061         options: --with-included-ltdl, --with-ltdl-lib,
12062         --with-ltdl-include.
12063         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
12064         (LT_WITH_LTDL): Removed.
12065         (LTDL_INIT): Parse caller options.
12066         * libltdl/m4/libtool.m4 (LT_INIT): Declare that this macro must be
12067         expanded before LTDL_INIT, and be sure to parse caller options.
12068         * configure.ac: Call directly into internal _LTDL_SETUP macro.
12069         * libtoolize.m4sh (func_scan_files): Ltdl mode argument moved from
12070         LT_CONFIG_LTDL_DIR to LTDL_INIT.
12071         * tests/nonrecursive.at, tests/recursive.at: Use new interfaces.
12072         * tests/configure-iface.at: Test it.
12073         * Makefile.am (TESTSUITE_AT): Add configure-iface.at.
12074         * doc/libtool.texi (Distributing libltdl): Document improved
12075         LTDL_INIT interfaces.
12076         * NEWS: Updated.
12077
12078 2008-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12079
12080         * libltdl/config/ltmain.m4sh (func_mode_link): When creating
12081         reloadable object files, avoid issuing plain `rm -f' without
12082         further arguments, even if the line length limit is ridiculously
12083         low as in the `Run tests with low max_cmd_len' test.  This
12084         failure is exposed on NetBSD.
12085         Report by Patrick Welche.
12086
12087         * Makefile.am (EXTRA_DIST): Add ChangeLog.2007.
12088         * ChangeLog.2007: New, rotated, from...
12089         * ChangeLog: ...here.
12090         * NEWS, README, README.alpha, Makefile.am, libtoolize.m4sh,
12091         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
12092         libltdl/m4/libtool.m4: Bump copyright years.
12093
12094 2007-11-30  Stefan Sperling  <stsp@elego.de>  (tiny change)
12095
12096         * doc/libtool.texi (Linking executables): Reorder paragraphs.
12097
12098 2007-11-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12099
12100         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: The IBM
12101         XL 8.0 C++ compiler may also be called xlc++*, not only xlC*.
12102         Report by Nysal K Jan <jnysal@in.ibm.com>.
12103
12104 2007-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12105
12106         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): New macro.
12107         Warn about whitespace in the absolute build tree name.
12108         (LT_INIT): Use it.
12109         * THANKS: Update.
12110         Report by Jim Meyering.
12111
12112         * libltdl/config/ltmain.m4sh (func_extract_an_archive)
12113         (func_extract_archives): Add some quoting.
12114
12115 2007-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12116
12117         Use `${top_build_prefix}' for better compatibility with non-GNU make.
12118         * libltdl/m4/ltdl.m4 (_LT_BUILD_PREFIX): New macro.
12119         If the Autoconf version used is >= 2.62, then expand to
12120         `${top_build_prefix}', otherwise to `${top_builddir}/'.
12121         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Use it for defining
12122         LIBLTDL.  Fixes a build failure with AIX make in a package
12123         using convenience libltdl in nonrecursive mode.
12124         * doc/libtool.texi (Distributing libltdl): Document requirements
12125         to define `top_build_prefix' if Automake is not used.
12126         Report by Bob Friesenhahn.
12127
12128 2007-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12129
12130         Avoid warnings about conftest.dSYM directories on Mac OS X Leopard.
12131         * libltdl/m4/libtool.m4 (_LT_LINKER_BOILERPLATE)
12132         (_LT_LINKER_OPTION, _LT_CMD_GLOBAL_SYMBOLS): Remove
12133         conftest.dSYM directory.
12134         Report and analysis by Jeff Squyres and Peter O'Gorman.
12135
12136 2007-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12137
12138         * libltdl/configure.ac: Drop the broken and long-disabled code
12139         to output a banner for the libltdl configure.  Avoids the need
12140         to ship mkstamp with libltdl.
12141
12142 2007-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12143
12144         * tests/runpath-in-lalib.at: New test.
12145         * Makefile.am: Update.
12146         Report by Benoit SIGOURE <tsuna@lrde.epita.fr>.
12147
12148 2007-10-16  Eric Blake  <ebb9@byu.net>
12149
12150         Speed up bootstrap by improving lt_join.
12151         * libltdl/m4/ltsugar.m4 (lt_join, _lt_join): Rewrite to mirror
12152         Autoconf 2.62's faster implementation.
12153
12154 2007-10-12  Eric Blake  <ebb9@byu.net>
12155
12156         Whitespace cleanup.
12157         * libltdl/m4/ltsugar.m4: Avoid space-tab in indents.
12158         * libltdl/m4/libtool.m4: Avoid trailing space.
12159
12160         Deal with Autoconf 2.62's semantic change in m4_append.
12161         * libltdl/m4/ltsugar.m4 (lt_append): Replace broken versions of
12162         m4_append.
12163         (lt_if_append_uniq): Don't require separator to be overquoted, and
12164         avoid broken m4_append.
12165         (lt_dict_add): Fix typo.
12166         * libltdl/m4/libtool.m4 (_LT_DECL): Don't overquote separator.
12167
12168 2007-10-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12169
12170         * libltdl/config/ltmain.m4sh: Also sanitize `LANGUAGE'.
12171         (func_mode_execute): Also restore `LANGUAGE', for old glibc.
12172         Report by Paul Eggert against Autoconf.
12173
12174 2007-10-11  Eric Blake  <ebb9@byu.net>
12175
12176         * libltdl/.cvsignore: Ignore argz.h.
12177
12178 2007-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12179
12180         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
12181         <lt_cv_prog_compiler_pic_works>: Renamed from
12182         lt_prog_compiler_pic_works.
12183         <lt_cv_prog_compiler_static_works>: Renamed from
12184         lt_prog_compiler_static_works.
12185         * NEWS: Update.
12186
12187 2007-10-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12188
12189         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
12190         extension `.sx'.
12191         * tests/suffix.test: Test it.
12192
12193 2007-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12194
12195         * libltdl/lt_dlloader.c (loader_callback, lt_dlloader_get): Use
12196         NULL, not 0, for the benefit of too picky compilers like PGI.
12197         * slist.c (slist_tail): Likewise.  Include stddef.h, for NULL.
12198         Report by Jeff Squyres.
12199
12200 2007-09-05  Eric Blake  <ebb9@byu.net>
12201
12202         * libltdl/ltdl.c (lt_dlcaller_get_data): Work even when no caller
12203         has set data.
12204
12205 2007-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12206
12207         * doc/libtool.texi (User defined module data)
12208         <lt_dlinterface_register>: Document that a NULL place matches
12209         all modules.
12210         * libltdl/lt_dlloader.c (lt_dlloader_remove): Actually iterate
12211         over all open modules when looking for modules that use it.
12212         If a resident module is found, return but do not set the error
12213         string.
12214         * libltdl/ltdl.c (lt_dlexit): When removing dlloaders, ignore
12215         errors that stem from earlier failed commands.  Exposed by the
12216         lt_dladvise test.
12217         Fixes regression over branch-1-5.
12218         Memleak report as Coverity CID 19 via Jeff Squyres.
12219
12220 2007-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12221
12222         * NEWS: Update.
12223
12224         * libltdl/ltdl.c (trim): Fix possible write beyond array bound.
12225
12226         * libltdl/ltdl.c (lt_dlopenadvise): Instead of asserting, return
12227         FILE_NOT_FOUND if the filename is "".
12228
12229         * libltdl/ltdl.c (try_dlopen): Fix computation of extension,
12230         avoids subtracting pointer from NULL pointer.
12231
12232         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Do not test
12233         array address of sys_dlsearch_path against NULL, rather test for
12234         nonempty contents.
12235         Coverity reports CID 148 and CID 149 via Jeff Squyres.
12236
12237         * libltdl/ltdl.c (tryall_dlopen_module): Fix string length
12238         computation: do not allocate more than needed.
12239
12240 2007-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12241
12242         * libltdl/loaders/preopen.c (vm_close): `module' is unused.
12243         Coverity report CID 158 via Jeff Squyres.
12244
12245         * libltdl/ltdl.c (parse_dotla_file): If we run out of memory,
12246         do not close the .la file twice.
12247         Coverity report CID 440 via Jeff Squyres.
12248
12249         * libltdl/ltdl.c (has_library_ext): Remove dead code.
12250         Coverity report CID 561 against Open MPI via Jeff Squyres.
12251
12252 2007-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12253
12254         * libltdl/slist.c (slist_remove): When a matching item is found,
12255         break out of the loop to return the first match; also fixes
12256         possible NULL dereference.
12257
12258         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
12259         (_LT_LANG_CXX_CONFIG) [ linux ]: Add support for IBM XL 8.0
12260         C/C++ (xlc*, xlC*) and IBM XL Fortran 10.1 (xlf*) on GNU/Linux,
12261         tested on ppc, pending a $shlibpath_var related fix.
12262         (_LT_SYS_HIDDEN_LIBDEPS): Double-quote $output_verbose_link_cmd
12263         properly during evaluation, obsoleting $no_glob_subst mangling.
12264         * NEWS: Update.
12265
12266 2007-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12267
12268         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
12269         [ k*bsd*-gnu ] <shlibpath_overrides_runpath>: Avoid spurious
12270         output in runpath test.
12271
12272 2007-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12273
12274         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ mingw, cygwin ]
12275         <GCJ>: Do not use -DDLL_EXPORT.
12276         Report by Ross Ridge <rridge@csclub.uwaterloo.ca>.
12277
12278         * Makefile.am (edit): Do not warn against manual editing for the
12279         generated files libtool, libtoolize, libltdl/m4/ltversion.m4,
12280         tests/defs, as they are still in a preferred source code form as
12281         required by GPL.
12282         Report by DJ Delorie.
12283
12284 2007-08-15  Dirk Mueller  <dmueller@suse.de>  (tiny change)
12285             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12286
12287         * libltdl/ltdl.c (parse_dotla_file): Avoid a strlen.  When
12288         reading .la files, cope with files that are not
12289         newline-terminated.
12290
12291 2007-08-05  Tilman Koschnick  <til@subnetz.org>  (tiny change)
12292
12293         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
12294         [ linux ]: Treat pgcpp as Portland Group C++ compiler as well.
12295
12296 2007-08-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12297
12298         * libltdl/ltdl.c (try_dlopen): Use `attempt' rather than
12299         `filename', as the former has the needed extension when called
12300         by lt_dlopenext.
12301         Report by Brian Barrett.
12302
12303 2007-07-27  Peter Rosin  <peda@lysator.liu.se>
12304
12305         * Makefile.am: Pass STRIP through to the testsuite, so that
12306         tests that run configure will use the same strip program.
12307
12308 2007-07-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12309
12310         * tests/mdemo-exec.test: Also try absolute library names.
12311         * tests/mdemo/main.c (test_dl, main): Try lt_dlopenext as well.
12312         * THANKS: Update.
12313         Report by Brian Barrett.
12314
12315 2007-07-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12316
12317         * doc/fdl.texi: Update to GFDL 1.2.
12318         * doc/libtool.texi: Adjust.  Put License in Appendix.
12319
12320         * libltdl/config/ltmain.m4sh (func_mode_link): Remove each
12321         intermediate relinked object after use, to avoid quadratic space
12322         complexity when linking partially.
12323         Report by Isidor Zeuner <eezyy@gmx.net>.
12324
12325 2007-07-23  Eric Blake  <ebb9@byu.net>
12326
12327         * libltdl/config/ltmain.m4sh: Whitespace cleanup.
12328
12329         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
12330         <chase_symlinks>: Avoid compiler warning.
12331
12332 2007-07-22  Peter Rosin  <peda@lysator.liu.se>
12333
12334         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Add
12335         support for Microsoft Visual C. Also, older MinGW versions
12336         seem to need stdint.h to find intptr_t.
12337
12338 2007-07-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12339
12340         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]:
12341         Ignore lines in ld.so.conf starting with 'hwcap '.
12342
12343 2007-07-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
12344
12345         * tests/cdemo-exec.test: use $EXEEXT where appropriate
12346         to correct mingw cross-compile issues.
12347         * demo-deplibs.test: Ditto.
12348         * demo-exec.test: Ditto.
12349         * demo-inst.test: Ditto.
12350         * demo-relink.test: Ditto.
12351         * depdemo-exec.test: Ditto.
12352         * depdemo-inst.test: Ditto.
12353         * depdemo-relink.test: Ditto.
12354         * f77demo-exec.test: Ditto.
12355         * fcdemo-exec.test: Ditto.
12356         * mdemo-exec.test: Ditto.
12357         * mdemo-inst.test: Ditto.
12358         * mdemo2-exec.test: Ditto.
12359         * pdemo-exec.test: Ditto.
12360         * pdemo-inst.test: Ditto.
12361         * tagdemo-exec.test: Ditto.
12362
12363 2007-07-14  Peter Rosin  <peda@lysator.liu.se>
12364
12365         * AUTHORS, THANKS: Peter Ekberg got married, now Peter Rosin.
12366
12367 2007-07-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
12368
12369         * libltdl/m4/libtool.m4 (func_dirname_and_basename) <XSI>:
12370         New function.
12371         (func_dirname_and_basename) <!XSI>: New function.
12372         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname):
12373         Call it.  Also, take advantage of missed optimization using
12374         func_dirname's additional arguments.
12375         (func_mode_compile): Call it.
12376         (func_mode_install): Call it.
12377         (func_mode_link): Call it.
12378
12379 2007-07-12  Peter Rosin  <peda@lysator.liu.se>
12380
12381         * libltdl/config/ltmain.m4sh (func_mode_link): Strip the cwrapper
12382         using $STRIP instead of relying on the tools to support -s, which
12383         MSVC doesn't.
12384
12385 2007-07-06  Peter O'Gorman  <peter@pogma.com>
12386
12387         * libltdl/config/libtool.m4sh: Don't pass -msg_* through to the
12388         linker.
12389         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
12390
12391 2007-07-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
12392
12393         * libltdl/lt__alloc.c, libltdl/loaders/preopen.c,
12394         libltdl/loaders/dyld.c, libltdl/loaders/dlopen.c, libltdl/ltdl.c,
12395         libltdl/lt_error.c, libltdl/lt_dlloader.c, libltdl/lt__dirent.c:
12396         Include lt__private.h prior to any system headers.
12397         * libltdl/lt__alloc.c: Remove redundant inclusion of configuration
12398         header.
12399
12400 2007-07-04  Eric Blake  <ebb9@byu.net>
12401
12402         * libltdl/ltdl.c (advise_dup): Delete function no longer used
12403         after memleak fix three days ago.
12404
12405 2007-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12406
12407         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Cater to
12408         old Sparc Solaris 7 ld that does not understand `-64'.
12409         Report by Vincent Lefevre <vincent@vinc17.org>.
12410
12411 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12412
12413         * libltdl/m4/lt~obsolete.m4 (LTOBSOLETE_VERSION): New macro, to
12414         force-pull in this file by aclocal.
12415         * libltdl/m4/libtool.m4 (LT_INIT): Require LTOBSOLETE_VERSION.
12416         * tests/libtoolize.at (upgrading verbatim style aclocal.m4):
12417         Adjust.
12418         Report by H. J. Lu <hjl@lucon.org>.
12419
12420         * libltdl/ltdl.c (tryall_dlopen): Rename argument to have typed
12421         alias of `advise' instead of allocating a copy.  Fixes memleak.
12422
12423 2007-06-30  Peter Breitenlohner  <peb@mppmu.mpg.de>
12424
12425         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Correct a typo
12426         ("-dld" instead of "-ldld").
12427
12428 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
12429
12430         Add a test to simulate a failure visible on systems which
12431         need a library prefix like 'lib', such as BeOS.  Fix a number
12432         of bugs exposed by this test in order for it to pass.
12433         Currently the prefix is hardcoded as 'lib', as I am not aware
12434         of systems that require a different prefix:
12435
12436         * libltdl/loaders/preopen.c (lt_dlpreload_open):  Move error
12437         condition out of test loop to be sure that each originator is
12438         tried, instead of erroring out if the first doesn't match.
12439         Support passing NULL as the originator to load all preloaded
12440         modules originating in the program itself.
12441         * libltdl/lt_dlloader.c (lt_dlloader_dump): New debug function.
12442         * libltdl/libltdl/lt_dlloader.h (lt_dlloader_dump): Declare it
12443         when LT_DEBUG_LOADERS is defined at compile time.
12444         * libltdl/ltdl.c (lt_dlinit): Dump loader list after successful
12445         initialisation.
12446         (tryall_dlopen): Add a new VTABLE parameter to force use of a
12447         specific loader in preference to trying every loader in turn.
12448         Adjust all callers.
12449         (try_dlopen): Always see whether a module was preloaded for
12450         module names with no directory component before searching the
12451         filesystem for a match.
12452         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Declare
12453         a new global_symbol_to_c_name_address_lib_prefix variable.
12454         (global_symbol_to_c_name_address_lib_prefix): The sed
12455         expressions to use when a lib prefix is enforced need to be
12456         slightly different to work with preloaded modules.
12457         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): In order
12458         to name preloaded symbols correctly for the lookup algorithm
12459         to work when the loaded module file must be prefixed with lib.
12460         Use global_symbol_to_c_name_address_lib_prefix when
12461         need_lib_prefix is other than no.
12462         * tests/need_lib_prefix.at: New test to check for breakage on
12463         hosts where need_lib_prefix is unknown.
12464         * Makefile.am (TESTSUITE_AT): Add new test.
12465         * tests/TODO: Note missing tests that would have caught some
12466         of the latent bugs fixed by this patch.
12467         * HACKING: Document libltdl keyword.
12468         * NEWS: Updated.
12469
12470 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
12471
12472         Reenable compilation of libltdl with C++:
12473
12474         * libltdl/ltdl.c (tryall_dlopen): Rename the try variable to
12475         attempt, and cast explicitly.
12476         (advise_dup): Add explicit cast.
12477
12478 2007-06-22  Peter O'Gorman  <peter@pogma.com>
12479
12480         * libltdl/config/ltmain.m4sh (version-number) [irix]: Don't subtract
12481         1 from major as it may be less than age.
12482
12483 2007-06-21  Noah Misch  <noah@cs.caltech.edu>
12484
12485         * tests/f77demo/configure.ac [--with-dist]: New option.  Skip most
12486         Fortran checks when given.
12487         * tests/fcdemo/configure.ac [--with-dist]: Likewise.
12488         * Makefile.am (@DIST_MAKEFILE_LIST@): Pass --with-dist.
12489         Reported by Benoit Sigoure <tsuna@lrde.epita.fr>.
12490
12491 2007-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
12492
12493         * AUTHORS: Add myself.
12494
12495 2007-06-18  Charles Wilson  <libtool@cwilson.fastmail.fm>
12496
12497         * libltdl/config/ltmain.m4sh: Add new magic variable
12498         for use with cwrapper.
12499         (func_ltwrapper_script_p): New function.
12500         (func_ltwrapper_executable_p): New function.
12501         (func_ltwrapper_scriptname): New function.
12502         (func_ltwrapper_p): Accomodate both wrapper scripts and
12503         wrapper executables.
12504         (func_mode_execute): Handle $file that is a wrapper
12505         script and $file that is a wrapper executable differently.
12506         (func_mode_install) [cygwin|mingw]: If $file is a wrapper
12507         executable, use func_ltwrapper_scriptname to determine
12508         wrapper script name. Afterwards, always use
12509         func_ltwrapper_script_p instead of func_ltwrapper_p.
12510         (func_emit_libtool_wrapper_script): Rename to...
12511         (func_emit_wrapper): ...this. All callers changed.
12512         (func_emit_libtool_cwrapperexe_source): Rename to...
12513         (func_emit_cwrapperexe_src): ...this. All callers changed.
12514         Embed new magic_exe variable into source. Private transient
12515         wrapper script now called foo_ltshwrapperTMP, not
12516         foo_ltshwrapper.
12517         (func_emit_cwrapperexe_src) [main, mingw]: Use _spawnv
12518         and return child's exit code manually rather than rely on
12519         broken execv.
12520         (func_mode_link) [cygwin|mingw]: Don't call dirname and
12521         basename directly; use func_dirname and func_basename
12522         when computing cwrapper names.  Use cwrapper to generate
12523         wrapper script, and use pathname returned by
12524         func_ltwrapper_scriptname instead of $output.
12525         (func_mode_link) [NOT cygwin|mingw]: move wrapper script
12526         generation for non-win32 inside case statement, as default
12527         case.
12528         (func_mode_uninstall) [$name's extension != .lo|.la]:
12529         'clean' mode must handle $file differently if it is a libtool
12530         wrapper script, or if it is a libtool wrapper executable.
12531         * tests/destdir.at [Simple DESTDIR install]: $EXEEXT fixups.
12532         * tests/destdir.at [DESTDIR with in-package deplibs]: Ditto.
12533
12534 2007-06-17  Noah Misch  <noah@cs.caltech.edu>
12535
12536         * AUTHORS: Add myself.
12537
12538 2007-06-17  Peter O'Gorman  <peter@pogma.com>
12539
12540         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): add quotes to
12541         the test -n.
12542
12543 2007-06-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
12544
12545         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): ensure stderr
12546         is redirected even when getconf does not exist.
12547
12548 2007-06-09  Charles Wilson  <libtool@cwilson.fastmail.fm>
12549
12550         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
12551         Take an argument to specify value assigned to
12552         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR in the emitted
12553         script.
12554         (func_emit_libtool_cwrapperexe_source) [file scope]:
12555         define permission flags S_IXGRP and S_IXOTH if not
12556         already defined.
12557         (func_emit_libtool_cwrapperexe_source) [LTWRAPPER_DEBUGPRINTF]:
12558         Use C89-compatible syntax to mimic variadic macros.
12559         Adjust all callers.
12560         (func_emit_libtool_cwrapperexe_source) [check_executable]:
12561         avoid embedded #ifdefs; use S_IXGRP and S_IXOTH
12562         unconditionally.
12563         (func_emit_libtool_cwrapperexe_source) [make_executable]:
12564         ditto.
12565         (func_emit_libtool_cwrapperexe_source): don't rewrite
12566         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR posthoc; instead pass
12567         correct argument when calling func_emit_libtool_wrapper_script.
12568         (func_mode_link): pass correct argument when calling
12569         func_emit_libtool_wrapper_script.
12570
12571 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
12572
12573         * libltdl/config/ltmain.m4sh (func_emit_libtool_cwrapperexe_source):
12574         ensure that generated source follows GCS as nearly as
12575         possible.
12576
12577 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
12578
12579         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
12580         add code block to handle cases when wrapper script is in $objdir.
12581         (func_emit_libtool_cwrapperexe_source): replace DEBUG() macro
12582         with namespace-safe LTWRAPPER_DEBUGPRINTF(). Call
12583         func_emit_libtool_wrapper_script() with appropriate filters to
12584         embed script text in C char* static variable.
12585         (f_e_l_c_s: main): add new option --lt-dump-script, parse argv[]
12586         for it, and take appropriate action.  Call chase_symlinks()
12587         on argv[0], in case this.exe was launched via one.  Use chased
12588         value to determine full absolute pathname of wrapper script, in
12589         $objdir. Unconditionally write script out to this pathname and
12590         set permission bits.  Remove extraneous ';' from debugging loop.
12591         (f_e_l_c_s: main) [mingw]: DOS-ize $SHELL before populating
12592         newargv[0]; if $TARGETSHELL environment variable is set, use
12593         it instead of $SHELL and do not DOS-ize.  Ensure newargv[1]
12594         (wrapper script absolute path) uses only '/', not '\'.  Make
12595         sure to call execv() with DOS-ized $SHELL (or un-DOS-ized
12596         $TARGETSHELL, if set)
12597         (f_e_l_c_s: make_executable): new function
12598         (f_e_l_c_s: chase_symlinks): new function (no-op if !S_ISLNK)
12599
12600 2007-06-03  Peter O'Gorman  <peter@pogma.com>
12601
12602         * libltdl/m4/libtool.m4 (old_archive_cmds): Remove
12603         old_deplibs.
12604         * tests/archive-in-archive.at: Check for archives as members
12605         of static archives. Currently XFAILS, above only eliminates
12606         one of the two static archives.
12607         * Makefile.am: Add test.
12608         Reported by Daniel Macks <dmacks@netspace.org>
12609
12610 2007-06-01  Steve Ellcey  <sje@cup.hp.com>
12611
12612         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Try using getconf
12613         to set lt_cv_sys_max_cmd_len.
12614
12615 2007-05-28  Peter O'Gorman  <peter@pogma.com>
12616
12617         * libltdl/config/ltmain.m4sh (func_mode_link),
12618         libltdl/m4/libtool.m4 [darwin]: Only use ${wl} in verstring
12619         with xlc.
12620
12621 2007-05-22  Gary V. Vaughan  <gary@gnu.org>
12622
12623         * tests/lt_dladvise.at:  Use the lib prefix throughout for
12624         better portability - testing whether modules build and load
12625         without that prefix is not the domain of this test.
12626         Also, only run the test of the global hint with the depend
12627         module on hosts that can compile a module without passing
12628         -no-undefined in link mode.
12629
12630 2007-05-10  Noah Misch  <noah@cs.caltech.edu>
12631
12632         * tests/duplicate_deps.at: Make the XFAIL unconditional, but
12633         skip the test if the test link would succeed even without
12634         --preserve-dup-deps.
12635
12636         * libltdl/config/general.m4sh (func_echo): Use $* instead of
12637         ${1+"$@"}.
12638
12639 2007-05-09  Eric Blake  <ebb9@byu.net>
12640
12641         * libltdl/libltdl/lt_error.h (LT_ERROR_LEN_MAX): Adjust, to fix
12642         buffer overflow in previous patch.
12643
12644 2007-05-09  Gary V. Vaughan  <gary@gnu.org>
12645
12646         * tests/lt_dladvise.at: Commit missing file from below.
12647
12648 2007-05-08  Gary V. Vaughan  <gary@gnu.org>
12649
12650         Without this patch, lt_dlopen always opens modules with symbol
12651         visibility set according to the underlying implementation.
12652         Here, we add lt_dlopenadvise() to allow callers to request,
12653         among other things, local or global symbol visibility from the
12654         underlying dlloader:
12655
12656         * libltdl/ltdl.c (LT_DLRESIDENT_FLAG): Removed.
12657         (LT_DLIS_RESIDENT): Use public is_resident info field.
12658         (LT_DLIS_SYMLOCAL, LT_DLIS_SYMGLOBAL): New macros to test for
12659         module symbol visibility status.
12660         (tryall_dlopen): If vtable->module_open() was able to act on
12661         either is_symlocal or is_symglobal hints, store that in
12662         the handle flags.
12663         (lt_dlopenadvise): New function that works like lt_dlopen(),
12664         but accepts an advise type to determine whether to ask
12665         dlloaders to change default symbol visibility.
12666         (lt_dlopen, lt_dlopenext): Just call lt_dlopenadvise() with
12667         the correct parameters.
12668         (lt_dladvise_init, lt_dladvise_destroy): New functions to
12669         initialize and destroy an advise type hint.
12670         (lt_dladvise_ext, lt_dladvise_resident, lt_dladvise_local)
12671         (lt_dladvise_global): Set hints on an advise type.
12672         (openadvise): Factored out of lt_dlopenadvise.
12673         (has_library_ext): Factored out of lt_dlopenadvise.
12674         * libltdl/ltdl.h: Declare all of the above.
12675         (lt_dlinfo): New fields for advise hints.
12676         * libltdl/libltdl/lt_dlloader.h (lt_module_open): Add a new
12677         advise parameter.  Adjust all callers.
12678         (lt_dladvise): New opaque type for advise hints.
12679         * libltdl/libltdl/lt__private.h (lt__advise): Declare
12680         contents of opaque lt_dladvise type.
12681         * libltdl/libltdl/lt_error.h (CONFLICTING_FLAGS): New error
12682         for attempts to have local and global symbol visibility at the
12683         same time.
12684         * libltdl/loaders/dld_link.c, libltdl/loaders/dyld.c,
12685         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
12686         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Adjust.
12687         * libltdl/loaders/dlopen.c (RTLD_LOCAL, RTLD_GLOBAL): Try to
12688         define these symbols if the system has equivalents.
12689         (vmopen): If unable to act on a caller request to set symbol
12690         visibility, then unset the relevant hints in the advise type.
12691         * tests/lt_dladvise.at: New tests for the above.
12692         * doc/libtool.texi (Libltdl Interface): Updated.
12693         * NEWS: Updated.
12694
12695 2007-05-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12696
12697         * libltdl/config/ltmain.m4sh (func_mode_link): When adding
12698         new_inherited_linker_flags to compiler_flags, remember to
12699         translate .ltframework back.  Fixes bug introduced 2007-04-23.
12700         * THANKS: Update.
12701         * tests/inherited_flags.at: Amend test.
12702         Report by Christoph Egger.
12703
12704 2007-05-03  Reuben Thomas  <rrt@sc3d.org>  (tiny change)
12705
12706         * doc/libtool.texi (Libltdl interface): Fix typo.
12707
12708 2007-05-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12709
12710         * Makefile.am (clean-ltmain-sh): Removed.
12711         (libtool, $(srcdir)/$(m4dir)/ltversion.m4)
12712         ($(srcdir)/$(auxdir)/ltmain.sh): Updated to not depend on any
12713         phony rules.  Test `$?' for prerequisites that should always
12714         cause us to update the target.  Fixes rebuilding rules, at the
12715         cost of sometimes updating too much with non-GNU make.
12716
12717 2007-04-27  Noah Misch  <noah@cs.caltech.edu>
12718
12719         * tests/ctor.at: New file.
12720         * Makefile.am (TESTSUITE_AT): Add tests/ctor.at.
12721
12722 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
12723
12724         * libltdl/libltdl/lt__glibc.h: Use !HAVE_WORKING_ARGZ
12725         instead of SYSTEM_ARGZ_IS_BROKEN.
12726         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Ditto.  Also, minor
12727         stylistic improvements.
12728         Report by Bruno Haible <bruno@clisp.org>.
12729
12730 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
12731             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12732
12733         * libltdl/argz_.h: ensure error_t definition is obtained
12734         in same mechanism system argz.h would have.
12735         * libltdl/libltdl/lt__glibc.h: also detect if
12736         SYSTEM_ARGZ_IS_BROKEN when determining whether to re#def
12737         argz* functions.
12738         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): add new test to check
12739         if $host's argz facilities are known bad.  Err on the side
12740         of caution if cross-compiling.
12741
12742 2007-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12743
12744         * README, README.alpha: Document how to test an arbitrary
12745         installed libtool script.
12746
12747 2007-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12748
12749         * tests/cmdline_wrap.at: Avoid `AT_CAPTURE_FILE' if it not
12750         defined (Autoconf < 2.60).
12751         * tests/shlibpath.at: Add `libtool' keyword.
12752
12753         * tests/indirect_deps.at: New file, with tests to ensure
12754         `link_all_deplibs=no' does not break functionality.
12755         * Makefile.am: Adjust.
12756
12757 2007-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12758
12759         * libltdl/config/ltmain.m4sh (func_mode_link): Fix accumulation
12760         of `inherited_linker_flags' entries from multiple deplibs, by
12761         adding $new_inherited_linker_flags only once, only in link pass.
12762         * tests/inherited_flags: Amend test to expose this.
12763         * NEWS: Adjust: kill one regression, but add note about the
12764         feature new in 1.9b.
12765         Report by Jeff Squyres and others.
12766
12767 2007-04-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
12768
12769         * libltdl/config/ltmain.m4sh (func_mode_link): move wrapper
12770         script generation from here...
12771         (func_emit_libtool_wrapper_script): to this new function, and
12772         write to stdout
12773         (func_mode_link): move cwrapper source code generation from
12774         here...
12775         (func_emit_libtool_cwrapperexe_source): to this new function,
12776         and write to stdout
12777         (func_mode_link): call the two new functions and redirect
12778         output to appropriate file.
12779
12780 2007-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12781
12782         * libltdl/config/ltmain.m4sh (func_mode_link) <-no-install>
12783         [ darwin ]: Treat like `-no-fast-install', as we cannot
12784         hardcode.  Report by Simon Josefsson.
12785
12786 2007-04-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12787
12788         * doc/libtool.texi (Link mode) <-no-install>: Mention that this
12789         still generates a wrapper script on systems without hardcoding.
12790         * tests/stresstest.at: Test `-no-install'.
12791         * THANKS: Update.
12792         Report by Simon Josefsson.
12793
12794 2007-03-30   Matthieu Herrb  <matthieu.herrb@laas.fr>
12795
12796         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12797         [ openbsd ]: Add an explicit check for shared libraries support.
12798
12799 2007-03-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12800
12801         * Makefile.am ($(srcdir)/$(m4dir)/ltversion.m4): Fix quoting
12802         error.
12803
12804 2007-03-28  Gary V. Vaughan  <gary@gnu.org>
12805
12806         * HACKING (Abstraction layers in libltdl): Rewritten somewhat
12807         for (hopefully) better clarity.
12808
12809 2007-03-26  Gary V. Vaughan  <gary@gnu.org>
12810
12811         The stamp-vcl file rules caused non-gnu make programs to rerun
12812         parts of the configuration process on each invocation.  Instead
12813         of relying on a stamp file, we now compare version numbers of
12814         generated files with the ChangeLog timestamp manually in the
12815         affected make rules to decide whether regenerating is necessary:
12816
12817         * Makefile.am (EXTRA_DIST): Remove stamp-vcl.
12818         (clean-ltmain-sh): Also remove users' obsolescent stamp-vcl.
12819         (rebuild): Keep some common code here for...
12820         (libtool, libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh):
12821         Rewritten to work without reference to intermediate stamp-vcl
12822         file.
12823         * configure.ac (CONFIG_STATUS_DEPENDENCIES): Change from
12824         stamp-vcl to ChangeLog.
12825         * NEWS: Removed entry saying this fix is needed.
12826
12827 2007-03-25  Gary V. Vaughan  <gary@gnu.org>
12828
12829         * HACKING (LGPL with Libtool exception clause): Typo.
12830         Reported by Tim Van Holder  <tim.van.holder@telenet.be>
12831
12832         * HACKING (Licensing Rules): Explain the various license texts
12833         used for files distributed with Libtool, and update license text
12834         to match.
12835         * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
12836         bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
12837         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
12838         libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
12839         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
12840         libltdl/config/mkstamp, libltdl/configure.ac,
12841         libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
12842         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
12843         libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
12844         libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h,
12845         libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c,
12846         libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
12847         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
12848         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c,
12849         libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
12850         libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
12851         libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
12852         libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
12853         libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
12854         libltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
12855         libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
12856         tests/cdemo-conf.test, tests/cdemo-exec.test,
12857         tests/cdemo-make.test, tests/cdemo-shared.test,
12858         tests/cdemo-static.test, tests/cdemo-undef.test,
12859         tests/cdemo/Makefile.am, tests/cdemo/configure.ac,
12860         tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
12861         tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
12862         tests/demo-conf.test, tests/demo-deplibs.test,
12863         tests/demo-exec.test, tests/demo-hardcode.test,
12864         tests/demo-inst.test, tests/demo-make.test,
12865         tests/demo-nofast.test, tests/demo-noinst-link.test,
12866         tests/demo-nopic.test, tests/demo-pic.test,
12867         tests/demo-relink.test, tests/demo-shared.test,
12868         tests/demo-static.test, tests/demo-unst.test,
12869         tests/demo/Makefile.am, tests/demo/configure.ac,
12870         tests/demo/dlmain.c, tests/demo/foo.c,
12871         tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
12872         tests/demo/hello.c, tests/demo/main.c,
12873         tests/depdemo-conf.test, tests/depdemo-exec.test,
12874         tests/depdemo-inst.test, tests/depdemo-make.test,
12875         tests/depdemo-nofast.test, tests/depdemo-relink.test,
12876         tests/depdemo-shared.test, tests/depdemo-static.test,
12877         tests/depdemo-unst.test, tests/depdemo/Makefile.am,
12878         tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
12879         tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
12880         tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
12881         tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
12882         tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
12883         tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
12884         tests/depdemo/l4/l4.h, tests/depdemo/main.c,
12885         tests/depdemo/sysdep.h, tests/deplibs-ident.at,
12886         tests/destdir.at, tests/duplicate_conv.at,
12887         tests/duplicate_deps.at, tests/duplicate_members.at,
12888         tests/early-libtool.at, tests/export.at,
12889         tests/f77demo-conf.test, tests/f77demo-exec.test,
12890         tests/f77demo-make.test, tests/f77demo-shared.test,
12891         tests/f77demo-static.test, tests/f77demo/Makefile.am,
12892         tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
12893         tests/f77demo/foo.h, tests/f77demo/fooc.c,
12894         tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
12895         tests/fcdemo-make.test, tests/fcdemo-shared.test,
12896         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
12897         tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
12898         tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
12899         tests/inherited_flags.at, tests/libtoolize.at,
12900         tests/link-2.test, tests/link-order.at, tests/link-order2.at,
12901         tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test,
12902         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
12903         tests/mdemo-inst.test, tests/mdemo-make.test,
12904         tests/mdemo-shared.test, tests/mdemo-static.test,
12905         tests/mdemo-unst.test, tests/mdemo/Makefile.am,
12906         tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
12907         tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
12908         tests/mdemo/sub.c, tests/mdemo2-conf.test,
12909         tests/mdemo2-exec.test, tests/mdemo2-make.test,
12910         tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
12911         tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
12912         tests/objectlist.test, tests/old-m4-iface.at,
12913         tests/pdemo-conf.test, tests/pdemo-exec.test,
12914         tests/pdemo-inst.test, tests/pdemo-make.test,
12915         tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
12916         tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
12917         tests/pdemo/longer_file_name_foo.c,
12918         tests/pdemo/longer_file_name_foo2.c,
12919         tests/pdemo/longer_file_name_hell1.c,
12920         tests/pdemo/longer_file_name_hell2.c,
12921         tests/pdemo/longer_file_name_hello.c,
12922         tests/pdemo/longer_file_name_main.c, tests/quote.test,
12923         tests/recursive.at, tests/search-path.at, tests/sh.test,
12924         tests/shlibpath.at, tests/standalone.at, tests/static.at,
12925         tests/stresstest.at, tests/subproject.at, tests/suffix.test,
12926         tests/tagdemo-conf.test, tests/tagdemo-exec.test,
12927         tests/tagdemo-make.test, tests/tagdemo-shared.test,
12928         tests/tagdemo-static.test, tests/tagdemo-undef.test,
12929         tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
12930         tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
12931         tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
12932         tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
12933         tests/tagdemo/main.cpp, tests/tagtrace.test,
12934         tests/template.at, tests/testsuite.at: Apply correct license
12935         text according to the new rules set out in HACKING.
12936
12937 2007-03-19  Gary V. Vaughan  <gary@gnu.org>
12938
12939         * libtoolize.m4sh: Handle argz.m4 specially like ltdl.m4, so
12940         that it isn't copied unless libltdl is being used.  Copy other
12941         macro files according to their tagged serial numbers.
12942         * tests/libtoolize.at: Adjust.
12943
12944 2007-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12945
12946         * tests/mdemo/Makefile.am (libmlib_la_LDFLAGS): Add
12947         `-export-symbols-regex ".*"' because the convenience libltdl
12948         uses export markers and thus turns off autoexport on w32.  Fixes
12949         test failures for Cygwin and MinGW.
12950         Bug analysis by Charles Wilson.
12951
12952         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12953         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
12954         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ interix ]: When
12955         matching for interix, accept version range [3-9] instead of 3.
12956         * NEWS: Update.
12957         Report by Martin Koeppe <mkoeppe@gmx.de>.
12958
12959         * libltdl/m4/libtool.m4 (LT_PROG_GCJ): Avoid M4 expansion error
12960         that caused `dnl' to be merged to the previous word.
12961         * THANKS: Update.
12962         Report by Steve Ellcey.
12963
12964 2007-03-09  Gary V. Vaughan  <gary@gnu.org>
12965
12966         * libtoolize.m4sh: Replace literal tab chars in help comment
12967         with spaces to align columns in --help output.
12968
12969 2007-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12970
12971         * libltdl/config/ltmain.m4sh (func_mode_link): Also apply the
12972         symbol filtering for w32 and the include_expsyms feature in the
12973         case of exceeded command line length.  Fixes test failure on
12974         MinGW.
12975
12976         * tests/stresstest.at: For const data object imported from
12977         shared library, define appropriate macros to expand
12978         __declspec(dllimport) on w32.  Use two different main objects
12979         and pick the right one for the link flags we are about to test.
12980         Fixes test failure on MinGW.
12981
12982         * tests/export.at: For const data object imported from shared
12983         library, define appropriate macros to expand
12984         __declspec(dllimport) on w32.  Fixes test failure on MinGW.
12985
12986 2007-03-05  Gary V. Vaughan  <gary@gnu.org>
12987
12988         * libtoolize.m4sh (func_check_macros): Display m4 quotes correctly
12989         in AC_CONFIG_MACRO_DIR diagnostics.
12990
12991         * libltdl/config/general.m4sh (M4SH_VERBATIM): New macro to
12992         simplify m4sh quote quoting in blocks of raw shell code.
12993         * clcommit.m4sh, libtoolize.m4sh, libltdl/config/getopt.m4sh,
12994         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
12995         tests/defs.m4sh: Use it.
12996         * HACKING (Editing `.m4sh' Files): Mention M4SH_VERBATIM Macro.
12997
12998 2007-02-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12999
13000         * tests/lt_dlexit.at: Allow test to pass on static-only systems
13001         and with disable-shared.
13002
13003         * NEWS: Rewrite all news since 1.9f and put in categories,
13004         update.
13005
13006         * libltdl/Makefile.inc: Fix the file description, so that it
13007         matches recursive and nonrecursive libltdl setup.
13008         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Do not depend
13009         upon the exact text of the copyright header, just copy until
13010         the marker line.  Remove the marker lines in the output, and
13011         adjust the description for subpackage setup.
13012
13013 2007-02-26  Gary V. Vaughan  <gary@gnu.org>
13014
13015         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fix regexp typo.
13016
13017         * clcommit.m4sh: Look in the right directory for helper scripts.
13018
13019 2007-02-25  Gary V. Vaughan  <gary@gnu.org>
13020
13021         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fixup regex to
13022         match Copyright notice change below.
13023
13024         * HACKING, Makefile.am, Makefile.maint, bootstrap,
13025         libltdl/Makefile.am, libltdl/Makefile.inc, libltdl/m4/libtool.m4,
13026         ltmain.c, tests/cdemo/Makefile.am, tests/demo/Makefile.am,
13027         tests/depdemo/Makefile.am, tests/depdemo/l1/Makefile.am,
13028         tests/depdemo/l2/Makefile.am, tests/depdemo/l3/Makefile.am,
13029         tests/depdemo/l4/Makefile.am, tests/f77demo/Makefile.am,
13030         tests/fcdemo/Makefile.am, tests/libtoolize.at,
13031         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
13032         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Update
13033         Copyright notice text to include URL for canonical GPL document.
13034
13035 2007-02-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13036
13037         * tests/static.at: Forgot to fix PATH for the first
13038         func_test_exec invocation.  So factor out into new functions
13039         func_fix_path and func_restore_path and use those.
13040
13041         * README: Document the need for GNU make to build Libtool.
13042         Point the user to the doc/notes.txt file.  In the examples, use
13043         `gmake' throughout to make it more obvious.  Explain simpler way
13044         to run both testsuites and either one.  Referring to individual
13045         tests needs the `tests/' prefix.
13046         * README.alpha: Likewise.
13047         * doc/notes.texi: Likewise, document need for GNU make.
13048         Comment out the FreeBSD make issue for now.
13049
13050         * tests/static.at: Larger rewrite to make work on w32: Use three
13051         different prefixes instead of three libdirs, so the moving of
13052         the DLLs works as expected.  Adjust all code.  Since now
13053         $libdirI/../bin is distinct from the directory of the installed
13054         program, take care than on w32 PATH contains the needed bindirs,
13055         in appropriate order.
13056         Report by Charles Wilson.
13057
13058         * Makefile.am (INSTALLCHECK_ENVIRONMENT): Point LTDLINCL and
13059         LIBLTDL to installed libltdl, so that it is being used by
13060         the lt_dlexit test.
13061
13062 2007-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13063
13064         * doc/libtool.texi (Install mode, libtool script contents):
13065         Describe current and system-specific DESTDIR limitations.
13066         * tests/destdir.at: XFAIL if `fast_install' is no.
13067
13068         * doc/libtool.texi (LT_INIT): Fix typo.
13069
13070         * doc/libtool.texi (Libtool test suite): Mention the new
13071         testsuite.  Point to README rather than INSTALL for testing
13072         instructions.
13073         (Test descriptions): Fix more file names.  Also mention
13074         cdemo-undef.test, mdemo2-conf.test, mdemo2-exec.test,
13075         mdemo2-make.test, objectlist.test, pdemo-conf.test,
13076         pdemo-exec.test, pdemo-inst.test, pdemo-make.test,
13077         tagdemo-conf.test, tagdemo-exec.test, tagdemo-make.test,
13078         tagdemo-static.test, tagdemo-shared.test, tagdemo-undef.test,
13079         f77demo-conf.test, f77demo-exec.test, f77demo-make.test,
13080         f77demo-static.test, f77demo-shared.test, fcdemo-conf.test,
13081         fcdemo-exec.test, fcdemo-make.test, fcdemo-static.test,
13082         fcdemo-shared.test.  Describe what they do.
13083         (When tests fail, Troubleshooting): Mention how to pass options
13084         to the new test suite.
13085         * tests/tagdemo/README: Fix description.
13086
13087         * bootstrap: Also set GREP, FGREP, EGREP, LN_S, when creating a
13088         preliminary ltmain.sh script.
13089
13090         * doc/libtool.texi (Test descriptions): Track the grand test
13091         suite renaming from 2003-10-14 in the tests documentation.
13092         assign.test is merged into sh.test.  Fix description of sh.test.
13093         * tests/sh.test: Likewise.
13094
13095         * doc/libtool.texi (LT_INIT): Fix wording of intro a bit.
13096         <shared, static>: Also describe these default LT_INIT options.
13097         <AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL>
13098         <AC_DISABLE_FAST_INSTALL>: Mention deprecated macro names,
13099         including the respective LT_INIT replacement.
13100         <AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_ENABLE_SHARED>
13101         <AC_ENABLE_STATIC>: Document, un-deprecate.  Suggest the
13102         respective LT_INIT replacement.
13103         <AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_ENABLE_SHARED>
13104         <AM_ENABLE_STATIC>: Document deprecated aliases.
13105         (Distributing libltdl) <AC_WITH_LTDL, AC_LIBLTDL_INSTALLABLE>
13106         <AC_LIBLTDL_CONVENIENCE>: Document deprecated aliases.
13107         * libltdl/m4/ltoptions.m4 (AM_ENABLE_SHARED, AM_DISABLE_SHARED)
13108         (AM_ENABLE_STATIC, AM_DISABLE_STATIC): Make these AU_ALIASes of
13109         the respective AC_* macros, so we do not recommend LT_INIT(*) in
13110         this case.
13111         (AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC)
13112         (AC_DISABLE_STATIC): Un-deprecate these.  Remove now-superfluous
13113         aclocal-1.4 backwards compatibility comments.
13114
13115         * tests/link-order2.at: Rewrite completely.  Do not use `sin'
13116         from the math library, there are too many problems with this.
13117         Instead, use a self-written library, install it without the
13118         Libtool library file, to emulate a native library in a system
13119         directory, and adjust $shlibpat_var.  Try overriding its symbol.
13120         Further, also try an installed `wrong' binary.
13121         Avoid failing test bits on AIX without runtimelinking and on
13122         Darwin in some cases, SKIP at the end in this case.
13123         Analysis by Peter O'Gorman.
13124
13125         * doc/notes.texi: Mention MACOSX_DEPLOYMENT_TARGET issue.
13126         * tests/template.at: Only skip those tests failing on Darwin
13127         if `-flat_namespace' is used by libtool.  In that case, SKIP
13128         at the end.  Analysis by Peter O'Gorman.
13129
13130 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13131
13132         Fix -export-symbols and -export-symbols-regex for links that
13133         exceed the command line length and use convenience archives.
13134
13135         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid grepping a
13136         nonexistent file if using reloadable objects.  Do not create a
13137         linker script nor a linker input file if no objects are passed.
13138         Apply export_symbols_regex in case the command line length is
13139         exceeded.
13140         Report by Bob Friesenhahn.
13141
13142         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
13143         <compiler_needs_object>: New tag variable.  Default to `no'.
13144         (_LT_LINKER_SHLIBS) [ linux ]: Set it to yes for Sun C 5.9.
13145         (_LT_LANG_CXX_CONFIG): Also default it to `no'.
13146         [ linux ]: Set it to `yes' for Sun C++ 5.9.
13147         * libltdl/config/ltmain.m4sh (func_mode_link): If we link
13148         no objects but only convenience archives into a library,
13149         force expansion if `compiler_needs_object' is yes.
13150         For creating a linker input filelist due to long cmdline,
13151         extract the first object if `compiler_needs_object' is yes.
13152         * doc/libtool.texi (libtool script contents): Document it.
13153         Fixes test failures of Sun compilers on GNU/Linux.
13154         Report by Terry D. Dontje.
13155
13156         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid setting
13157         `$libobjs' to a single space; set it to empty in that case.
13158
13159 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13160
13161         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [ osf5 ]:
13162         On Tru64 5.1, const relocations do not work well.  Omit the
13163         const here.  Fixes failure of demo-make after demo-shared with
13164         link editor error `seg_info_ptr: Couldnt find a seg type 2'.
13165
13166         * Makefile.am (doc_libtool_TEXINFOS): Renamed from...
13167         (libtool_TEXINFOS): ...this, to fix dependencies.  Omit from
13168         EXTRA_DIST.
13169         (check-local): Also depend upon $(bin_SCRIPTS).
13170
13171 2007-02-23  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>  (tiny change)
13172
13173         * libltdl/config/general.m4sh (sed_double_backslash): Fix
13174         hacky sed script to avoid limitations but retain portability to
13175         Solaris /bin/sed.  Remove old obsolete cruft.
13176
13177 2007-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13178
13179         * libltdl/config/ltmain.m4sh (func_mode_link): Fix the check for
13180         convenience archives when warning about linking against static
13181         libraries: test against $deplib rather than empty $lib.
13182
13183 2007-02-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13184
13185         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Fix detection of new enough
13186         libltdl by actually checking for the declaration of
13187         lt_dlinterface_register in ltdl.h with AC_CHECK_DECL.
13188         Remove redundant configure output line.
13189
13190         * tests/template.at: Reformat, add M4 quoting.  Use $LDFLAGS
13191         consistently for link mode.
13192
13193 2007-02-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13194
13195         * tests/static.at: Use the right names for the broken libs.
13196
13197 2007-02-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13198
13199         * tests/deplibs-ident.at [aix, hppa*-*-hpux*, interix, openbsd]:
13200         Do not XFAIL, on these systems we happen to pass.
13201         * tests/duplicate_deps.at [aix]: Likewise.
13202
13203         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux |
13204         k*bsd*-gnu ]: Fix eval quoting in the DT_RUNPATH test.
13205
13206         * HACKING: Update.
13207
13208         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ linux ]
13209         <whole_archive_flag_spec>: For Sun C/C++ 5.9, do not add
13210         /dev/null as dummy object, it fails with GNU ld version
13211         2.16.91.0.7-amd-sles9.  Report by Terry D. Dontje.
13212         * THANKS: Update.
13213
13214 2007-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13215
13216         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ osf4, osf5 ]
13217         <archive_expsym_cmds>: Use `${wl}-input' not `-input', for
13218         cc.  Could use `-input_to_ld'.
13219         (_LT_LANG_CXX_CONFIG) [ osf4, osf5 ] <archive_expsym_cmds>:
13220         Use `${wl}' instead of `-Wl,', for consistency.
13221
13222 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13223
13224         Fix spurious testsuite failures on AIX due on NFS mounts due to
13225         shared library images that cannot be removed without `slibclean'
13226         which needs superuser privileges.
13227
13228         * tests/testsuite.at (PREPARE_TESTS): Define $mkdir_p globally.
13229         (LT_AT_MVDIR): New macro to emulate `mv dir dest'.
13230         * tests/destdir.at: Use LT_AT_MVDIR.
13231         * tests/shlibpath.at: Likewise.
13232         * tests/static.at: Likewise.
13233
13234 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13235
13236         * tests/export.at: Exporting is not fully functional with
13237         -retain-symbols-file.  Do not test for failure to link `broken'
13238         in this case.  At the end of the test, SKIP if we are not fully
13239         functional.
13240
13241         * tests/lt_dlexit.at: Add casts and `extern "C"' to let the test
13242         pass with a C++ compiler.
13243
13244         * libltdl/config/ltmain.m4sh: Remove duplicate marker for
13245         generated shell functions.
13246
13247         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): New macro, like
13248         LT_AT_EXEC_CHECK but uses `$LIBTOOL --mode=execute' and allows
13249         to pass `-dlopen MODULE' arguments.
13250         * tests/lt_dlexit.at: Use it.  Also, do not test `-dlpreopen',
13251         that currently needs library names to begin with `lib'.
13252
13253 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13254
13255         * tests/export.at: New test: expose -export-symbols failure
13256         when the input consists solely of convenience archives, and
13257         failure to not export all symbols when the command line length
13258         is exceeded.
13259         * Makefile.am: Adjust.
13260
13261         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New substituted
13262         function `func_lo2o', saving two fork&exec with XSI shells.
13263         * libltdl/config/ltmain.m4sh (func_mode_compile)
13264         (func_mode_install, func_mode_link): Use it for rewrites of
13265         single files.
13266
13267         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New function
13268         func_opt_split, for XSI and portable shell.
13269         * libltdl/config/ltmain.m4sh: Move the insertion point for the
13270         configure-generated shell functions to before the first option
13271         parsing loop.  Rewrite the separation of the long options to use
13272         func_opt_split.
13273
13274 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13275
13276         Eliminate roughly a third of the script execution time overhead
13277         for all modes except for link/relink and uninstall/clean.
13278
13279         * libltdl/m4/libtool.m4 (_LT_CONFIG): Remove unused `TEST SUITE
13280         MARKER', obsolete since 2005-04-17.
13281         * libltdl/config/ltmain.m4sh: Likewise, several instances.
13282         (Main): Tear apart, moving individual bits up as early in the
13283         script as possible, to help the shell to avoid parsing the rest.
13284
13285 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13286
13287         * doc/libtool.texi: Update copyright years.
13288
13289 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13290
13291         * libltdl/config/general.m4sh (sed_double_backslash): Replace
13292         POSIX sed script with a hack that treats up to 10 backslashes
13293         in the input correctly and is portable to Solaris /bin/sed.
13294
13295 2007-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13296
13297         * tests/testsuite.at (LT_AT_TAG): Skip also if the compiler
13298         variable is set to `no', not only if it is empty.
13299
13300 2007-02-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13301
13302         * tests/lt_dlexit.at: Do not compile main object with libtool.
13303
13304         * tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir
13305         to inner testsuite.
13306
13307         * Makefile.am (TESTSUITE_AT): Move destdir.at after
13308         search-path.at so the banners fit better.
13309
13310         * tests/convenience.at: Use $CPPFLAGS for compilation.
13311         * tests/deplibs-ident.at: Likewise.
13312         * tests/duplicate_members.at: Likewise.
13313         * tests/inherited_flags.at: Likewise.
13314         * tests/link-order.at: Likewise.
13315         * tests/stresstest.at: Likewise.
13316         * tests/early-libtool.at: Likewise.  Do not quote $CC.
13317
13318         * libltdl/ltdl.c (lt_dlexit): Add casts to fix compilation with
13319         C++ compiler again.
13320
13321         * tests/destdir.at: Add `libtool' keyword to tests.
13322
13323 2007-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13324
13325         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
13326         (_LT_LINKER_BOILERPLATE, _LT_SYS_MODULE_PATH_AIX)
13327         (_LT_COMPILER_C_O): Require _LT_DECL_SED.
13328         * THANKS: Update.
13329         Report by Maciej W. Rozycki.
13330
13331 2007-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13332
13333         * tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir,
13334         in the new testsuite.
13335
13336 2007-01-29  Samuel Thibault <samuel.thibault@ens-lyon.org>
13337
13338         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ gnu ]
13339         <archive_expsym_cmds>: Behave like Linux, so that
13340         --version-script is used for Hurd as well.
13341
13342 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
13343
13344         * NEWS: Update for Cygwin changes.
13345
13346 2007-01-28  Brian W. Barrett <bbarrett@lanl.gov>
13347
13348         * libltdl/config/ltmain.m4sh [darwin]: Use otool64 if otool fails.
13349
13350 2007-01-28  Dave Brolley  <brolley@redhat.com>,
13351             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13352
13353         * libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL
13354         before checking that it is still in the list.
13355         * tests/lt_dlexit.at: New test.
13356         * Makefile.am (TESTSUITE_AT): Adjust.
13357         (check-local): Also depend on libltdl/libltdlc.la.
13358         (check-recursive): Removed, unnecessary use of Automake
13359         internals.
13360
13361 2007-01-28  Mike Frysinger  <vapier@gentoo.org>
13362
13363         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
13364         `-p' and `-fprofile-*' for GCC.
13365
13366 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13367
13368         * libltdl/libltdl/lt_system.h: Adjust copyright years.
13369
13370 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
13371
13372         * libltdl/libltdl/lt__private.h (LT_GLOBAL_DATA) [__CYGWIN__]:
13373         Also define on Cygwin.
13374         * libltdl/libltdl/lt_system.h (LT_SCOPE) [__CYGWIN__]: Likewise.
13375
13376 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13377
13378         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ cygwin, mingw ]
13379         <export_symbols_cmds>: Avoid shell expansion of '/s/.*' through
13380         double expansion, in case there is a 'S:' drive.
13381         Report by Charles Wilson.
13382
13383 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13384
13385         Introduce a new test keyword `recursive' for tests that create a
13386         modified `libtool' script and run the suite on this script.  All
13387         tests with the keyword `libtool' are (by definition) suitable to
13388         be used here.
13389
13390         * tests/cmdline_wrap.at: New test.
13391         * Makefile.am: Adjust.
13392         * tests/testsuite.at (LT_ESCAPE): New macro: clone of Autoconf
13393         AS_ESCAPE that does not escape `$'.
13394         (LT_AT_CHECK): New macro: print a command-to-be-run while
13395         expanding parameters but nothing else.
13396         * tests/stresstest.at: Use LT_AT_CHECK.  Create some files to
13397         expose erroneous globbing errors with `-export-symbols-regex',
13398         similar to those reported by Charles Wilson.  Use `eval' and
13399         adjusted quoting so the expansion doesn't already happen in the
13400         testsuite commands.
13401         * HACKING: Update.
13402
13403 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13404
13405         Assume C89 for included headers, and throughout the testsuite.
13406
13407         * NEWS: Update.
13408         * libltdl/argz.c: Do not include strings.h nor memory.h, include
13409         string.h unconditionally.
13410         Patch by Simon Josefsson <jas@extundo.com>.
13411         * libltdl/libltdl/lt__private.h: Likewise.
13412         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not check for string.h,
13413         strings.h, memory.h.
13414         * tests/cdemo/configure.ac: Assume presence of math.h.
13415         * tests/cdemo/foo.c: Likewise.
13416         * tests/demo/configure.ac: Likewise for math.h, string.h.
13417         Assume 'const'.  Drop obsolete AC_EXEEXT.
13418         * tests/demo/dlmain.c: Likewise.
13419         * tests/demo/foo.c: Likewise.
13420         * tests/depdemo/configure.ac: Likewise.
13421         * tests/depdemo/l4/l4.c: Likewise.
13422         * tests/f77demo/configure.ac: Likewise.  Also drop obsolete
13423         AC_OBJEXT.
13424         * tests/fcdemo/configure.ac: Likewise.
13425         * tests/mdemo/configure.ac: Likewise.
13426         * tests/mdemo/foo1.c: Likewise.
13427         * tests/mdemo/foo2.c: Likewise.
13428         * tests/mdemo2/configure.ac: Likewise.
13429         * tests/pdemo/configure.ac: Likewise.
13430         * tests/pdemo/longer_file_name_dlmain.c:
13431         * tests/pdemo/longer_file_name_foo.c: Likewise.
13432         * tests/pdemo/longer_file_name_foo2.c: Likewise.
13433         * tests/tagdemo/configure.ac: Likewise.
13434         * tests/tagdemo/foo.cpp: Likewise.
13435
13436 2007-01-24  Reuben Thomas <rrt@sc3d.org>  (tiny change)
13437
13438         * doc/libtool.texi (Inter-library dependencies): Fix typo.
13439
13440 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13441
13442         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]:
13443         Use `lib -OUT' rather than `lib /OUT' to avoid MSYS path
13444         translation mangling.  Report by Christopher Hulbert.
13445         * THANKS: Update.
13446
13447         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
13448         suffixes matching `[fF][09].', for Fortran.
13449         * tests/suffix.test: Also test F90, F95, f03, F03.
13450
13451         * Makefile.am (EXTRA_DIST): Add ChangeLog.2006.
13452         * ChangeLog.2006: New, rotated, from...
13453         * ChangeLog: ...here.
13454
13455 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13456
13457         * doc/libtool.texi: Typo fixes.
13458         * TODO: Likewise.
13459
13460 2006-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13461
13462         * tests/link-order2.at: Define our override `sin' function with
13463         C binding even if $CC is a C++ compiler.  Skip the test with g++
13464         as its command line driver reorders `-lm'.
13465         * tests/search-path.at: Declare `inflate' with C binding.
13466         * tests/stresstest.at: Avoid unused variable warnings.
13467
13468 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13469
13470         * tests/link-order2.at: Simplify logic to be a bit more self
13471         documenting.  Suggested by Gary V. Vaughan.
13472
13473 2006-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13474
13475         * tests/link-order2.at: Add missing $bindir setting.  Prevent
13476         compiler optimization of sqrt call.  Fix logic inversion and
13477         add some comments about this stunt.  Add a test with reversed
13478         library link order that should fail if the system has a libm.
13479         Report by Patrick Welche.
13480
13481 2006-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13482
13483         Assume presence of a config header in all files, to provoke
13484         test failures on all systems.
13485         * libltdl/lt__alloc.c: Likewise.
13486         * libltdl/libltdl/lt__dirent.h: Likewise.
13487         * libltdl/libltdl/lt__glibc.h: Likewise.
13488         * libltdl/libltdl/lt__private.h: Likewise.
13489         * libltdl/libltdl/lt__strl.h: Likewise.
13490         * tests/recursive.at: Use AC_CONFIG_HEADERS.
13491         * tests/nonrecursive.at: Likewise.  Invoke autoheader.
13492         * HACKING: Adjust.
13493         Report by Patrick Welche.
13494
13495 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>,
13496             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13497
13498         * doc/libtool.texi (Distributing libltdl): In recursive and
13499         nonrecursive mode, a config header is now required.
13500         * libltdl/argz.c: Remove check for HAVE_CONFIG_H, to conform
13501         to gnulib's policy of including config.h unconditionally.
13502
13503 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13504
13505         * tests/link-order2.at: New test to show one case where ordering
13506         of depdepls on the command line matters.
13507         * Makefile.am: Adjust.
13508
13509         * tests/tagtrace.test: SKIP if `autoconf --trace' exits 63 or 1,
13510         for various possible (valid) error cases.  Also output stderr,
13511         to help with analysis.
13512
13513         * NEWS: Account for recent multilib fix.
13514         * tests/search-path.at: New test, to provide at least a weak
13515         test.
13516         * Makefile.am: Update.
13517
13518         * libtoolize.m4sh (func_fixup_Makefile): Fix missing
13519         substitution for nonrecursive mode.  Remove otherwise-empty
13520         continuation lines in the output file.
13521         Report by Bob Friesenhahn.
13522
13523 2006-10-22  Peter O'Gorman  <peter@pogma.com>
13524
13525         * libltdl/config/ltmain.m4sh: Add -F* to flags that are passed
13526         to the linker.
13527         Reported by SIGOURE Benoit <sigoure.benoit@lrde.epita.fr>
13528
13529 2006-10-19  Peter O'Gorman  <peter@pogma.com>
13530
13531         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Improve
13532         multilib support.
13533         Reported by Kate Minola <kate01123@gmail.com> and others.
13534
13535 2006-10-13  Eric Blake  <ebb9@byu.net>
13536
13537         * libltdl/ltdl.c (load_deplibs): Avoid memory leak on failure.
13538         (unload_deplibs): Avoid memory leak on cleanup.
13539
13540 2006-09-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13541
13542         * libltdl/m4/libtool.m4 (func_mode_compile): Accept files with
13543         extension `.f9?'.
13544         * tests/suffix.test: Test `f95'.
13545
13546         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Use
13547         `func_source' consistently.
13548
13549 2006-09-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13550
13551         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
13552         [k*bsd*-gnu ]: Fix brown paper bag: save and restore `libdir'.
13553
13554 2006-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13555
13556         * tests/duplicate_deps.at: New file.  Test circular depending
13557         convenience archives (currently failing).
13558         * Makefile.am: Update.
13559         Report by Stefan Traby <stefan@hello-penguin.com>.
13560
13561         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
13562         [ openbsd ]: Set `hardcode_direct_absolute', to prefer rpath
13563         over putting absolute file names in NEEDED entries.
13564         * NEWS: Update.
13565         Reported by Jake Meuser and others.
13566
13567         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
13568         [ k*bsd*-gnu ]: Test if ld sets DT_RUNPATH; in that case, set
13569         shlib_overrides_runpath to `yes'.  Fixes test failure of new
13570         test on Gentoo GNU/Linux.
13571
13572         * tests/shlibpath.at: New file, with...
13573         (shlibpath_overrides_runpath): ...new test.
13574         * Makefile.am: Update.
13575
13576 2006-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13577
13578         * tests/destdir.at: New file.
13579         * Makefile.am: Adjust.
13580
13581 2006-09-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13582
13583         * tests/inherited_flags.at: Drop `${parameter}' for `$parameter'
13584         where appropriate, for improved `testsuite -x' output.
13585
13586 2006-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13587
13588         * libltdl/ltdl.c: Move LT__UNUSED before parameter name, for g++
13589         3.2.3 (on MinGW).
13590         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
13591         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
13592         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Likewise.
13593
13594 2006-09-04  George Bosilca <bosilca@cs.utk.edu>
13595         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13596
13597         Make libltdl work when compiled with a C++ compiler.
13598
13599         * libltdl/lt__alloc.c, libltdl/lt_dlloader.c, libltdl/ltdl.c,
13600         libltdl/slist.c, libltdl/libltdl/lt__alloc.h,
13601         libltdl/libltdl/lt_error.h, libltdl/libltdl/slist.h,
13602         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
13603         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
13604         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
13605         libltdl/loaders/shl_load.c, tests/stresstest.at,
13606         tests/testsuite.at, tests/f77demo/foo.h, tests/fcdemo/foo.h,
13607         tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c,
13608         tests/mdemo/main.c: Allow sources to be compiled by a C++
13609         compiler: Cast appropriately, add C linkage for `get_vtable'
13610         functions, do not use C++ keyword `delete'.
13611
13612         * libltdl/config/ltmain.m4sh (func_mode_link): In the dlsym
13613         file, define a type for the symbol list, and declare the list
13614         `extern', so that it is extern even if compiled by a C++
13615         compiler.  The type definition helps avoid a compiler warning
13616         against anonymous extern struct.
13617         * libltdl/libltdl/lt_system.h: Add `extern' to `LT_SCOPE' for
13618         the same reason.
13619
13620         * libltdl/argz_.h: It's __cplusplus, not _cplusplus.
13621         * libltdl/libltdl/slist.h: Likewise.
13622
13623         * libltdl/libltdl/lt__glibc.h: Wrap included argz.h in
13624         `extern "C"', for broken headers on Cygwin.
13625
13626 2006-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13627
13628         * tests/testsuite.at: Test `unset' on a set variable; older
13629         bash versions return 1 if the variable was not set.
13630
13631         * tests/am-subdir.at, tests/early-libtool.at: Fix the LF vs.
13632         CRLF related failures on MinGW by grepping for good output
13633         instead of using AT_CHECK's `expout'.
13634
13635 2006-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13636
13637         Drop K&R support from testsuite in favor of C89.
13638
13639         * tests/duplicate_members.at: provide declarations of used
13640         functions.
13641         * tests/testsuite.at: Drop unneeded arguments.
13642         * tests/cdemo/main.c: Assume C89.
13643         * tests/demo/dlmain.c: Likewise.
13644         * tests/demo/main.c: Likewise.
13645         * tests/depdemo/main.c: Likewise.
13646         * tests/depdemo/l1/l1.c: Likewise.
13647         * tests/depdemo/l2/l2.c: Likewise.
13648         * tests/depdemo/l3/l3.c: Likewise.
13649         * tests/depdemo/l4/l4.c: Likewise.
13650         * tests/f77demo/cprogram.c: Likewise.
13651         * tests/fcdemo/cprogram.c: Likewise.
13652         * tests/mdemo/mlib.c: Likewise.
13653         * tests/mdemo2/main.c: Likewise.
13654         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
13655         * tests/pdemo/longer_file_name_main.c: Likewise.
13656         * tests/fcdemo/fooc.c: Reformat.
13657         * tests/mdemo/sub.c: Likewise.
13658
13659 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13660
13661         * tests/mdemo/main.c: Fix bogus line in last patch.
13662
13663 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13664
13665         Avoid mixing functions and data pointers in callback functions.
13666
13667         * libltdl/ltdl.c (file_worker_func): New type.
13668         (lt_dlforeachfile): Instead of passing a function pointer as a
13669         data pointer, pass a pointer to a file_worker_func pointer.
13670         (foreach_callback_func): Adjust.
13671         * tests/mdemo/main.c: Assume C89. Exercise lt_dlforeachfile.
13672         (callback, try_iterate, my_dirname): New functions.
13673         * tests/mdemo-exec.test: Check for its output.
13674
13675 2006-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13676
13677         * libltdl/libltdl/lt__private.h (__attribute__, LT__UNUSED):
13678         New macros.
13679         * libltdl/loaders/dld_link.c: Use LT__UNUSED where
13680         appropriate.
13681         * libltdl/loaders/dlopen.c, libltdl/loaders/load_add_on.c,
13682         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
13683         libltdl/loaders/shl_load.c: Likewise.
13684         * libltdl/ltdl.c: Likewise.
13685         (find_file_callback): Fix declaration names to match definition.
13686         (load_deplibs) [!LTDL_DLOPEN_DEPLIBS]: Use separate definition
13687         for less preprocessor clutter.
13688
13689         * Makefile.am (check-local, installcheck-local): Use
13690         `TESTSUITEFLAGS' rather than `TESTSUITE_FLAGS', like Autoconf.
13691         * HACKING, README, README.alpha: All uses changed.
13692
13693 2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13694
13695         * libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
13696         sharing with gnulib.  Report by Eric Blake.
13697         * libltdl/lt__alloc.c, libltdl/libltdl/lt__dirent.h,
13698         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
13699         libltdl/libltdl/lt__strl.h: Likewise.
13700         * HACKING: Update.
13701
13702 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13703
13704         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
13705         `--coverage' and `-pg', for GCC.  Report by Rainer Keller
13706         <keller@hlrs.de> and Tor Lillqvist <tml@iki.fi>.
13707
13708 2006-08-25  Kurt Roeckx <kurt@roeckx.be>,
13709             Aurelien Jarno <aurel32@debian.org>
13710
13711         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
13712         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
13713         (_LT_LANG_CXX_CONFIG) [k*bsd*-gnu]: kfreebsd*-gnu and
13714         knetbsd*-gnu behave like linux-gnu.
13715         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
13716         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK)
13717         [x86_64-*kfreebsd*-gnu]: Add 32/64 bit bi-arch support.
13718         * NEWS: Update.
13719
13720 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13721
13722         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ mingw,pw32 ]:
13723         If `file' is present, use `func_win32_libid' rather than
13724         `objdump -f', to facilitate cross-compilation.
13725         Reported by Pierre Ossman <ossman@cendio.se>.
13726
13727 2006-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13728
13729         * libltdl/config/ltmain.m4sh (func_mode_link): In GNU ld script,
13730         do not quote object file names, for Intel icc 9.0 IPO link.
13731
13732 2006-08-22  Eric Blake  <ebb9@byu.net>
13733
13734         * libltdl/m4/ltdl.m4 (LTDL_INIT): Avoid macros marked obsolete in
13735         latest autoconf.
13736         * libltdl/m4/libtool.m4 (_lt_cv_sys_global_symbol_pipe): Work in
13737         spite of -Wmissing-prototypes.
13738         * libltdl/libltdl/lt__dirent.h: Rewrite to accomodate loss of
13739         AC_HEADER_DIRENT.
13740
13741         * libltdl/m4/libtool.m4: Avoid space-tab.
13742
13743 2006-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13744
13745         * libltdl/config/ltmain.m4sh (func_mode_execute): Also search
13746         the directory above `$objdir' for the argument of "-dlopen", as
13747         mentioned in the error message.
13748
13749 2006-08-03  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>
13750
13751         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix issues
13752         with previous patch. for ... do' line is superflous. Need
13753         _LT_TAGVAR not _LT_AC_TAGVAR, should be for both linux and
13754         solaris with Sun compiler.
13755
13756 2006-08-01  Albert Chin <china@thewrittenword.com>
13757
13758         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
13759         Don't set $postdeps to "-lCstd -lCrun" if
13760         "-library=stlport4" set in CXXFLAGS as stlport4 C++
13761         library incompatible with Cstd C++ library. Use
13762         '-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
13763
13764 2006-07-28  Eric Blake  <ebb9@byu.net>
13765
13766         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD, LT_OUTPUT):
13767         s/recognise/recognize/.
13768
13769 2006-07-22  Eric Blake  <ebb9@byu.net>
13770
13771         * libltdl/ltdl.c (loader_init_callback) [HAVE_LIBDLLOADER]:
13772         Protect definition to avoid compiler warnings about unused
13773         function.
13774
13775 2006-07-21  Eric Blake  <ebb9@byu.net>
13776
13777         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD): Search for dlopen without
13778         depending on -ldl, required by cygwin 1.5.20.
13779
13780 2006-06-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13781
13782         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
13783         ( _LT_LINKER_BOILERPLATE): Rewrite to not use unchecked
13784         `printf', for old systems like SunOS 4.1.
13785         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION)
13786         (_LT_COMPILER_C_O, _LT_LINKER_SHLIBS): Likewise.
13787         (_LT_LANG_C_CONFIG): Adjust: use literal newlines in
13788         `lt_simple_compile_test_code' and `lt_simple_link_test_code'.
13789         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
13790         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Likewise.
13791         Bug report by Bruce Becker and Mark Andrews.
13792
13793 2006-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13794
13795         Fix the bugs where libtoolize needs to use `dir/file' instead of
13796         `./dir/file', where ltdldir is `.', so that libtoolize correctly
13797         checks for (and suggests) `config' and `m4' instead of
13798         `./config' and `./m4' as auxiliary resp. macro directories.
13799         The change is necessary for unambiguous naming, the chosen way
13800         plays better with non-GNU make in VPATH builds.
13801
13802         * libtoolize.m4sh (ltdlprefix): New variable, to use as prefix
13803         instead of `$ltdldir/'.
13804         (func_check_macros): Use it.  Bug report by Eric Blake.
13805
13806 2006-06-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13807
13808         Fix several libtoolize-related bugs:
13809         - Do not symlink aclocal.m4, to work around a bug in aclocal
13810         overwriting the linked-to file instead of removing the symlink.
13811         - Have `libtoolize --copy' cause current time stamps, so that
13812         dependents will be rebuilt; for this, install files in order.
13813         - Fix list of distribution files for (non)recursive libltdl.
13814         - Fix some failure cases.
13815
13816         * libtoolize.m4sh (func_copy_cb):
13817         If `$opt_link', still copy `aclocal.m4', so a subsequent
13818         `aclocal' will not overwrite the symlink target.
13819         In `--copy' mode, do `cp -p' and `touch' for each file, so
13820         timestamps are updated but permissions preserved.
13821         (main): Reorder installing of files to match logical order
13822         and timestamp requirements.
13823         (func_fixup_Makefile_inc): Renamed to
13824         (func_fixup_Makefile): this.  Add sed scriptlet to remove
13825         non-existent files from EXTRA_DIST, for either nonrecursive
13826         or recursive mode.
13827         (main): call it to mangle also in recursive mode.
13828         * tests/libtoolize.at (expout): Adjusted.
13829         * tests/testsuite.at (tst_dist): Default to `dist'.
13830
13831 2006-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13832
13833         Fix libltdl to always have all generated files up to date.
13834
13835         * Makefile.am (all-local): Depend on all generated files in
13836         libltdl, namely...
13837         (libltdl/aclocal.m4, libltdl/configure, libltdl/config-h.in):
13838         ...these.  List explicitly, including dependencies and
13839         rebuilding rules, using...
13840         (sub_aclocal_m4_deps, sub_configure_deps): ...these new
13841         variables.
13842         Report by Dan Lacher <Dan.Lacher@Sun.Com>.
13843
13844 2006-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13845
13846         * Makefile.am (install-data-local): Do not use $(INSTALL_DATA)
13847         from another directory: it may use a relative path to
13848         `install-sh'.
13849         Bug report by Dan Lacher <Daniel.Lacher@Sun.COM>.
13850
13851 2006-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13852
13853         * libltdl/config/ltmain.m4sh (func_mode_link): Honor `-threads',
13854         similar to `-mt'.
13855         Report by Eric Paire <eric.paire@st.com>.
13856
13857 2006-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
13858
13859         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ cygwin ]:
13860         define DLL_EXPORT for PIC objects on cygwin.
13861
13862 2006-05-24  Albert Chin  <china@thewrittenword.com>
13863
13864         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
13865         [ aix4*, aix5*, hpux10*, hpux11* ]: Set hardcode_direct_absolute
13866         for CXX tag too!
13867
13868 2006-05-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13869
13870         * libltdl/config/ltmain.m4sh (func_mode_link, shell wrapper):
13871         Do not put `"$@"' in argument to $ECHO.
13872
13873 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13874
13875         * libltdl/m4/libtool.m4: Bump serial, necessary because of
13876         _LT_CHECK_SHELL_FEATURES changes.
13877
13878 2006-05-18  Albert Chin-A-Young <china@thewrittenword.com>
13879
13880         * tests/early-libtool.at: Pass $CPPFLAGS and $CFLAGS to
13881         compiler when compiling for extra flags that might be
13882         needed for ANSI-compliance, 64-bit, etc. The environment
13883         we compile with should match the environment libtool was
13884         compiled with.
13885
13886 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13887
13888         Fix mode=compile time regression of CVS HEAD over branch-1-5.
13889
13890         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Rename to...
13891         (_LT_CHECK_SHELL_FEATURES): ...this.
13892         (_LT_SETUP): Adjust caller.
13893         (_LT_CHECK_XSI_SHELL): New libtool variables `lt_unset',
13894         `SP2NL', `NL2SP', to contain results from tests for unset,
13895         taken from AS_BOURNE_COMPATIBLE, and ASCII vs EBCDIC, taken...
13896         * libltdl/config/general.m4sh: ...from here, and used...
13897         * libltdl/config/ltmain.m4sh: ...here everywhere now.
13898         * (AS_SHELL_SANITIZE): Replace by faster, actually necessary
13899         part of its expansion, taken from current Autoconf CVS.  Do not
13900         save and set all locale variables any more, but only LANG,
13901         LC_ALL, LC_CTYPE, LC_COLLATE, LC_MESSAGES.
13902         (func_mode_execute): Adjust.
13903         * libltdl/m4/libtool.m4 (_LT_CONFIG): No need to unset CDPATH
13904         here any more.
13905         * libtoolize.m4sh: Compute `SP2NL' and `NL2SP' here, too.
13906
13907 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
13908
13909         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
13910         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
13911         _LT_LANG_FC_CONFIG), tests/link-order.at
13912         [ aix4*, aix5*, hpux10*, hpux11* ]: rename
13913         hardcode_direct_static to hardcode_direct_absolute.
13914         * doc/libtool.texi (libtool script contents): Adjust.
13915
13916         * libltdl/ltdl.c (lt_dlhandle_fetch): Arguments to
13917         lt_dlhandle_iterate were in the wrong order.
13918
13919 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13920
13921         * libltdl/m4/libtool.m4 (_LT_LINKER_OPTION): Require
13922         _LT_DECL_SED.
13923         (_LT_CMD_GLOBAL_SYMBOLS, _LT_LINKER_SHLIBS): Likewise.
13924         * libltdl/m4/ltdl.m4 (LTDL_INIT): Likewise.
13925         (_LT_DECL_SED): Set $Xsed here, using $SED.  Moved from...
13926         (_LT_SETUP): ...here.
13927         Report by Eric Blake.
13928
13929 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
13930
13931         * doc/libtool.texi (libtool script contents): Document new
13932         hardcode_direct_static variable.
13933
13934         * tests/link-order.at: Be careful about usage of shrext_cmds.
13935
13936         * libltdl/m4/libtool.m4 (LT_AC_PROG_SED):  Declarations for
13937         compatibility with old versions of libtool, and old versions
13938         of aclocal.
13939
13940 2006-05-17  Albert Chin-A-Young  <china@thewrittenword.com>
13941
13942         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
13943         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
13944         _LT_LANG_FC_CONFIG) [ aix4*, aix5*, hpux10*, hpux11* ]:
13945         Introduce a new variable, hardcode_direct_static, which
13946         would ignore hardcode_direct=yes if the result would create a
13947         static library dependency. Static library dependencies are
13948         immune to $shlibpath_var.
13949         * tests/link-order.at: Take hardcode_direct and
13950         hardcode_direct_static into consideration when testing
13951         link order.
13952
13953 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13954
13955         Eliminate quadratic scaling in argument parsing loop, for
13956         shells that understand `var+=value', such as Bash-3.1, or Zsh.
13957
13958         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Test whether
13959         the shell understands `var+=value'.
13960         (_LT_PROG_XSI_SHELLFNS): Define `func_append' based on this.
13961         * config/ltmain.m4sh (func_mode_link): Use `func_append' for
13962         compile_command, finalize_command, libtool_args, libobjs,
13963         non_pic_objects.
13964
13965 2006-05-15  Bruno Haible  <bruno@clisp.org>,
13966             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13967
13968         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
13969         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ linux ]:
13970         Add support for Sun C 5.9, Sun C++ 5.9, and Sun Fortran 8.3 on
13971         GNU/Linux.
13972         * NEWS: Update.
13973
13974 2006-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13975
13976         * Makefile.am (check-local): Move `$(TESTS_ENVIRONMENT)' and
13977         `$(BUILDCHECK_ENVIRONMENT)' to be arguments of `testsuite', so
13978         that reruns will remember it; set enviroment variable
13979         `CONFIG_SHELL' so the suite will know which shell it was started
13980         with.
13981         (installcheck-local): Likewise, for `$(TESTS_ENVIRONMENT)' and
13982         `$(INSTALLCHECK_ENVIRONMENT)'.
13983         * tests/testsuite.at (LT_AT_TAG): Do not set the compiler
13984         variable here.
13985
13986 2006-05-14  Albert Chin-A-Young  <china@thewrittenword.com>
13987
13988         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
13989         [ aix ]: $hardcode_direct is set twice.
13990
13991 2005-05-14  John Bowler  <jbowler@acm.org>
13992
13993         * libltdl/config/ltmain.m4sh (func_mode_link): For version_type
13994         `none', we still need to set `current', `age', and `revision',
13995         so that our checks don't barf.  The values won't be used later.
13996         Apparently reported by several people, several times, for BeOS.
13997         * NEWS, THANKS: Update.
13998
13999 2006-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14000
14001         * tests/fail.at: Use "test -x" if available, for testing of
14002         executables; code modified from Autoconf's AS_EXECUTABLE_P.
14003         Reported by Albert Chin <china@thewrittenword.com>.
14004
14005 2006-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14006
14007         * libltdl/config/ltmain.m4sh (func_write_libtool_object):
14008         New function, factored out from..
14009         (func_mode_compile): .. here.  Call it to generate the libtool
14010         object file (the `.lo' file) in one step.
14011
14012 2006-04-03  Peter O'Gorman  <peter@pogma.com>
14013
14014         * libltdl/loaders/preopen.c: Don't allow lt_dlopen if the
14015         module has no symbols.
14016
14017 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14018
14019         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]:
14020         Avoid warning when "parsing" `/etc/ld.so.conf' and empty
14021         `/etc/ld.so.conf.d'.
14022         Reported by Orion Poplawski <orion@cora.nwra.com>.
14023
14024 2006-03-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14025
14026         * bootstrap: Actually use the correct version of the last patch.
14027
14028 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14029
14030         * bootstrap: Enable `WORKING_LIBOBJ_SUPPORT' if we detect
14031         Autoconf-2.60+ and Automake-1.10+, or CVS versions.
14032
14033         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Sync with gnulib:  If we
14034         define `error_t', also define `__error_t_defined', so argp.h
14035         will not typedef the former.
14036
14037 2006-03-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14038
14039         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [ freebsd ]
14040         [ dragonfly ]: Set libltdl_cv_sys_dlopen_deplibs to yes.
14041         Fixes excessive lt_dlopen times on these systems.
14042         * NEWS, THANKS: Update.
14043         Bug reported by Peter Jeremy <peterjeremy@optushome.com.au>,
14044         patch by Joerg Sonnenberger <joerg@netbsd.org>.
14045
14046 2006-03-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14047
14048         * tests/static.at: New tests for comprehensive test exposure of
14049         all current and proposed static linking flags for programs.
14050         * Makefile.am: Updated.
14051
14052         * libltdl/config/ltmain.m4sh (func_mode_link)
14053         < -static-libtool-libs >: New option.
14054         * doc/libtool.texi (Link mode, Distributing libltdl):
14055         Document it.
14056         Suggested by Gary Kumfert <kumfert@llnl.gov>.
14057
14058 2006-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14059
14060         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp [ hpux ] <aCC>:
14061         The HPPA C++ compiler has namespace support but provides no
14062         `std' namespace; just provide it with a dummy.
14063
14064         * libltdl/m4/libtool.m4 (AC_PROG_SED): Do not forget to reset
14065         IFS even in case of empty `$PATH'.
14066
14067 2006-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14068
14069         * libltdl/config/ltmain.m4sh (func_mode_link): Comment out the
14070         code to remove uninstalled paths, as it is wrong here.  Change
14071         the wrong shell quoting that kept it from "working" before.
14072         * THANKS: Updated.
14073
14074         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
14075         [ freebsd, dragonfly ]: Fix 1.5.22 regression caused by too
14076         strict $host_os match that stopped DragonFly from working.
14077         * THANKS: Updated.
14078         Reported by Jeremy C. Reed <reed@reedmedia.net>,
14079         patch by Todd Vierling <tv@duh.org>.
14080
14081 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14082
14083         * libltdl/config/ltmain.m4sh (startup): save all locale specific
14084         environment, variables:, LANG, LANGUAGE, LC_ADDRESS, LC_ALL
14085         LC_COLLATE, LC_CTYPE, LC_IDENTIFICATION, LC_MEASUREMENT,
14086         LC_MESSAGES LC_MONETARY, LC_NAME, LC_NUMERIC, LC_PAPER,
14087         LC_TELEPHONE, LC_TIME.
14088         (func_mode_execute): Restore them.
14089
14090 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14091
14092         * doc/libtool.texi (Tags): Mention `FC'.
14093         (libtool script contents) <CC>: Specify more precisely as the
14094         compiler of the current tag.
14095         <LTCC, LTCFLAGS, build, build_alias, build_os, host_alias,
14096         host_os, macro_version, macro_revision, max_cmd_len>:
14097         Document these variables.
14098
14099 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14100
14101         * doc/libtool.texi: Update copyright years.
14102
14103         * libltdl/config/getopt.m4sh (func_help): Substitute `$host'.
14104         * libltdl/config/ltmain.m4sh (help message): Use $host not
14105         @host_triplet@, as the `@..@' substitution is done at bootstrap
14106         time already.
14107         Reported by Julien Lecomte <julien@famille-lecomte.net>.
14108
14109         * doc/libtool.texi (Implementation issues):  Note that both
14110         prefix and suffix of a library may differ.
14111         (Using libtool, Creating object files, Linking libraries):
14112         Remove last documentation traces of the age when `foo.lo' was
14113         the PIC object file and not the `libtool object' text file.
14114         (libtool script contents) <compiler_o_lo>: Remove description
14115         of this variable.  It was removed from libtool in 1.5 times.
14116
14117 2006-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14118
14119         * libltdl/config/ltmain.m4sh (func_mode_link) [ linux ]:
14120         PGI: for `reload_cmds', we not only need to get rid of `$wl',
14121         but also turn comma into space so $LD understands
14122         whole_archive_flag_spec correctly.
14123
14124         * libltdl/config/ltmain.m4sh (func_mode_link) <shell wrapper>:
14125         Add _AS_BOURNE_COMPATIBLE code from Autoconf, to fix issues
14126         with zsh and other shells.
14127         Reported by David Gómez Espinosa <david@pleyades.net>.
14128
14129 2006-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14130
14131         * libltdl/m4/libtool.m4 (AC_PROG_SED): m4_defun this rather
14132         than AC_DEFUN, so that old aclocal does not pick this up.
14133
14134         * Makefile.am ($(TESTSUITE)): Also depend on `Makefile.am'.
14135         Write to temporary file and rename.
14136
14137 2006-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14138
14139         * Makefile.am (EXTRA_DIST): Add `$(srcdir)/' to all generated
14140         files so that non-GNU make programs will use the rebuilding
14141         rules.
14142
14143         * tests/testsuite.at: Add new keyword `libtoolize' for tests
14144         that exercise the `libtoolize' script that is generated at build
14145         time.
14146         * HACKING: Update testsuite mention, explain keywords.
14147
14148         * libltdl/config/ltmain.m4sh (extracted_archives)
14149         (extracted_serial): New globals.
14150         (func_extract_archives): Use them to rename extraction archives
14151         for linking against multiple convenience libraries with the same
14152         name.
14153         * tests/duplicate_conv.at: New tests.
14154         * Makefile.am: Adjusted.
14155         Reported by Carlo Contavalli <ccontavalli@commedia.it>.
14156
14157         * libltdl/config/ltmain.m4sh (func_mode_link) < test_compile >:
14158         Fix a couple of instances where `test .. -ne ..' would possibly
14159         compare non-numbers.  Clean up a bit.
14160
14161         * tests/convenience.at, tests/deplibs-ident.at: Add new keyword
14162         `libtool' for tests that exercise the unmodified `libtool'
14163         script that is generated at build time.
14164         * tests/duplicate_members.at, tests/fail.at: Likewise.
14165         * tests/inherited_flags.at, tests/link-order.at: Likewise.
14166         * tests/stresstest.at, tests/template.at: Likewise.
14167
14168 2006-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14169
14170         * tests/fail.at: Also pass a bogus object file to the linker so
14171         it fails more reliably; AIX and IRIX linkers ignore duplicate
14172         symbol definitions.
14173
14174         * libltdl/m4/libtool.m4 [ solaris ] (_LT_LINKER_SHLIBS)
14175         (_LT_LANG_CXX_CONFIG) < whole_archive_flag_spec >:
14176         Fix this once and for all, for both the SUN compiler suite
14177         (cc/CC/f77/f90/f95) and GCC.
14178         Reported by Yuri Pukhalsky <pooh@cryptopro.ru>.
14179
14180         * tests/cdemo/Makefile.am: Remove broken use of undocumented
14181         Automake variable `$(OBJECTS)'.
14182         * tests/demo/Makefile.am, tests/depdemo/Makefile.am: Likewise.
14183         * tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am: Likewise.
14184         * tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am: Likewise.
14185         * tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Likewise.
14186
14187         * libltdl/config/ltmain.m4sh (func_mode_link): Fix logic for
14188         adding run paths to also add paths for installed libtool
14189         libraries in case `-static' is used.
14190
14191 2006-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14192
14193         * Makefile.am (TESTSUITE_AT): List testsuite files in the order
14194         in which they are to be expanded in the suite.
14195         (tests/TESTSUITE): Rebuild by passing all $(TESTSUITE_AT) files,
14196         with their path suitably adjusted.  This enables us to..
14197         * tests/testsuite.at: ..get rid of their redundant mention here.
14198
14199 2006-01-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14200
14201         * doc/libtool.texi (titlepage): Remove superfluous word.
14202
14203         * libltdl/config/ltmain.m4sh (func_mode_link): Fix matching
14204         duplicate run path entries with the correct separator.
14205
14206         * tests/testsuite.at (PREPARE_TESTS): Escape `^' for some older
14207         shells.
14208
14209         * ChangeLog, HACKING, README, README.alpha,
14210         libltdl/config/ltmain.m4sh:  Add vi(m) modelines, to match emacs
14211         formatting variables.
14212
14213 2006-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14214
14215         * Makefile.am (libltdl/Makefile.am): Fixup sed script.
14216         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
14217
14218 2006-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14219
14220         * Makefile.am, bootstrap, clcommit.m4sh,
14221         libltdl/config/getopt.m4sh, libltdl/config/mailnotify.m4sh,
14222         tests/sh.test, tests/testsuite.at: Bump copyright years.
14223
14224 2006-01-21  Eric Blake  <ebb9@byu.net>
14225
14226         * THANKS: Move myself to contributor.
14227
14228 2006-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14229
14230         * bootstrap: Don't use semicolons inside { } in sed scripts, as
14231         Posix says it's not portable.
14232         * Makefile.am (libltdl/Makefile.am): Likewise.
14233         * libtoolize.m4sh (all over the map): Likewise.
14234         * libltdl/config/getopt.m4sh (func_version, func_usage)
14235         (func_help): Likewise.
14236         * libltdl/config/ltmain.m4sh (func_win32_libid): Likewise.
14237         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Likewise.
14238         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Likewise.
14239         * tests/sh.test, tests/testsuite.at (LT_AT_TAG): Likewise.
14240         Noted by Paul Eggert <eggert@cs.ucla.edu>.
14241
14242         * libltdl/config/ltmain.m4sh (func_mode_compile): Also transform
14243         `.obj' correctly.
14244         Reported by George Bosilca <bosilca@cs.utk.edu>.
14245
14246 2006-01-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14247
14248         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): Fix my forward port
14249         error of last commit.
14250
14251 2006-01-12  Leif Ekblad  <leif@rdos.net>
14252
14253         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
14254         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC): Added support for
14255         RDOS.
14256         * NEWS: Updated.
14257
14258 2006-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14259
14260         * libtoolize.m4sh, libltdl/config/general.m4sh,
14261         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
14262         libltdl/m4/libtool.m4: Bump copyright years.
14263
14264 2006-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14265
14266         * Makefile.am (EXTRA_DIST): Add ChangeLog.2005.
14267
14268         * README, README.alpha: Adjust copyright years.
14269         * ChangeLog.2005: New, rotated, from..
14270         * ChangeLog: ..here.
14271
14272 2005-12-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14273
14274         * Makefile.am (libtoolize): Also depend on `config.status'.
14275         (tests/atconfig): Normalize path, for non-GNU make.
14276         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
14277
14278         * libltdl/config/ltmain.m4sh (func_mode_link) <temp_rpath>:
14279         Fix position of separator for shlibpath_var setting in shell
14280         wrapper.
14281
14282         * libltdl/lt_error.c (error_strings): Remove parentheses around
14283         string literal initializers, uncovered by `tcc'.
14284         Reported by Edward Chernenko <edwardspec@yahoo.com>.
14285
14286 2005-12-21  Gary V. Vaughan  <gary@gnu.org>
14287
14288         * .cvsignore, libltdl/.cvsignore, tests/.cvsignore: Ignore
14289         +build, +dest, +inst, .cvslog-tlasync, .gdb_history, .pc,
14290         libltdl/INSTALL, libltdl/stamp-mk and tests/testsuite.log.
14291
14292 2005-12-20  Eric Blake  <ebb9@byu.net>
14293
14294         * README.alpha: Really commit.
14295
14296 2005-12-19  Eric Blake  <ebb9@byu.net>
14297
14298         * HACKING (release note templates): Update anon cvs location.
14299         * README.alpha (Reporting Bugs): Likewise.
14300
14301 2005-12-18  Jacob Meuser <jakemsr@jakemsr.com>,
14302             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14303
14304         * libltdl/config/ltmain.m4sh (func_mode_link): Move library
14305         search paths that coincide with paths to not yet installed
14306         libraries to the beginning of the library search list.
14307
14308 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14309
14310         * THANKS: Updated.
14311
14312         * HACKING: `./libtool --config' is more helpful than `--help'.
14313
14314         * libltdl/config/ltmain.m4sh <preserve_args, linknames>:
14315         Initialize properly.
14316
14317 2005-12-18  Kean Johnston  <jkj@sco.com>,
14318             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14319
14320         * libltdl/m4/libtool.m4 (LT_PATH_NM): Also look in
14321         /usr/ccs/bin/elf, for SCO.  If we are not cross-compiling, but
14322         $ac_tool_prefix is set, also try an un-prefixed `nm'.
14323
14324 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14325
14326         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
14327         <hardcode_shlibpath_var>: Initialize, to `unsupported'.
14328
14329 2005-12-18  Marc Espie  <espie@nerim.net>
14330
14331         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
14332         [ openbsd ] <sys_lib_dlsearch_path_spec>: Set to `/usr/lib'
14333         only.
14334
14335 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14336
14337         * tests/old-m4-iface.at: Require Autoconf-2.50, so that
14338         Debian's autoconf wrapper will not cause 2.13 to barf over
14339         `--force'.
14340         Reported by Kurt Roeckx <kurt@roeckx.be>.
14341
14342         * README.alpha (Reporting bugs): Suggest to also bootstrap the
14343         libltdl subdirectory -- the Makefile will enforce it anyway.
14344         (The Test Suite): Renamed to..
14345         (The Test Suites): ..this.  Introduce the new Autotest test
14346         suite, how to run each one individually, and what to report.
14347         * README (The Test Suite): Likewise.
14348
14349 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14350
14351         In the subpackage case, we do not install Makefile.inc.  Since
14352         we have to be correct for this case, remove `Makefile.inc' from
14353         EXTRA_DIST.  Recursive mode does not use it either.  Since
14354         nonrecursive mode requires an Automake >= 1.7 anyway, and those
14355         versions automatically distribute included makefile fragments,
14356         we don't need to cater for that one either.
14357
14358         * libltdl/Makefile.inc (EXTRA_DIST): Remove Makefile.inc.
14359         Reorder other entries.
14360
14361 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14362
14363         * Makefile.am (libltdl/Makefile.in): also depend on
14364         libltdl/aclocal.m4, so that we guarantee timestamp consistency.
14365         (libltdl/stamp-mk): New target, to fix `libltdl/Makefile.in'.
14366         (EXTRA_DIST): Distribute `libltdl/stamp-mk' and
14367         `libltdl/m4/lt~obsolete.m4'.
14368         (all-local): Ensure the stamp files is up to date.
14369         (libltdl/aclocal.m4): New target, to ensure timestamp
14370         consistency.  Depend on all m4 files.
14371         * HACKING: Updated.
14372
14373         * tests/testsuite.at (PREPARE_TESTS): New variable `tst_dist',
14374         default to empty.
14375         * tests/nonrecursive.at, tests/recursive.at,
14376         tests/standalone.at, tests/subproject.at: Use it in
14377         LT_AT_BOOTSTRAP or LT_AT_MAKE, so that you can optionally test
14378         redistribution within the tests.
14379
14380         * libltdl/m4/lt~obsolete.m4: Update documentation for aclocal
14381         versions before 1.7.  Change all macros to use AC_DEFUN instead
14382         of AU_DEFUN.
14383         * (_AC_PROG_LIBTOOL, AC_LIBTOOL_SETUP, _LT_AC_CHECK_DLFCN)
14384         (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_TAGCONFIG)
14385         (AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_CXX, _LT_AC_LANG_F77)
14386         (_LT_AC_LANG_GCJ, AC_LIBTOOL_RC, AC_LIBTOOL_LANG_C_CONFIG)
14387         (_LT_AC_LANG_C_CONFIG, AC_LIBTOOL_LANG_CXX_CONFIG)
14388         (_LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_LANG_F77_CONFIG)
14389         (_LT_AC_LANG_F77_CONFIG, AC_LIBTOOL_LANG_GCJ_CONFIG)
14390         (_LT_AC_LANG_GCJ_CONFIG, AC_LIBTOOL_LANG_RC_CONFIG)
14391         (_LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG)
14392         (_LT_AC_FILE_LTDLL_C): Add new fake macros for these, they
14393         were used at one time in libtool.m4.
14394
14395         * tests/am-subdir.at (Makefile.am): Put automake options here,
14396         in AUTOMAKE_OPTIONS.  Require 1.6 because of the newer
14397         `AC_INIT(pkgname,version) AM_INIT_AUTOMAKE' scheme.
14398         * tests/nonrecursive.at, tests/recursive.at: Require 1.7,
14399         because libltdl rules use `+=' in conditionals.
14400         * tests/testsuite.at (LT_AT_AUTOMAKE): Fix indenting.
14401         (LT_AT_AUTORECONF): also detect too old Automake.
14402
14403 2005-12-08  Eric Blake  <ebb9@byu.net>
14404
14405         * libltdl/libltdl/lt__alloc.h (FREE): Cast away constness of
14406         argument to `free' to avoid compiler warning.
14407
14408 2005-12-08  Peter O'Gorman  <peter@pogma.com>
14409
14410         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_LINKER_SHLIBS)
14411         [darwin]: Use $LTCC $LTCFLAGS to check for -single_module.
14412         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14413
14414 2005-12-07  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14415
14416         * bootstrap: always remove Makefile, to avoid triggering the
14417         autotools rebuild rules before autoreconf builds these.
14418         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
14419
14420 2005-12-07  Peter O'Gorman  <peter@pogma.com>
14421
14422         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4 [darwin]:
14423         Use -single_module by default when linking shared libraries. Can
14424         be overridden by specifying -multi-module or by setting the env
14425         var LT_MULTI_MODULE before configure.
14426         * libltdl/m4/libtool.m4 (archive_expsyms_cmds) [darwin]:
14427         Simplify.
14428         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14429
14430 2005-12-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14431
14432         * doc/libtool.texi (References): Do not use `@/' for the benefit
14433         of older `makeinfo', break lines instead.
14434
14435         * Makefile.am (install-data-local): No continuation here.
14436         (dist-hook): Fix copying of README.alpha to README.
14437         * tests/early-libtool.at (configure.ac): Remove
14438         `AM_INIT_AUTOMAKE', we do not use automake in these tests.
14439
14440         * README, README.alpha, libtoolize.m4sh: Typos.
14441         * tests/am-subdir.at, tests/duplicate_members.at: Make all
14442         banners end with a dot, for symmetry.
14443
14444         * libtoolize.m4sh (func_copy_all_files)
14445         (glob_exclude_pkgaux_files): Removed, since unused.
14446
14447         * libtoolize.m4sh (func_copy_cb, func_copy_some_files)
14448         (func_serial_update, func_keyword_update): Fail immediately
14449         if some file we may install does not exist.
14450         Reported by Troy Benjegerdes <hozer@hozed.org>.
14451
14452 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14453
14454         * TODO: A bunch of items fixed. :)
14455
14456         * tests/convenience.at: Updated to expose more corner cases.
14457
14458         * doc/libtool.texi (Invoking libtoolize): Remove mention of
14459         the nonrecursive restriction to name the directory `libltdl'.
14460
14461         * libtoolize.m4sh (func_fixup_Makefile_inc): New function.
14462         (main): Call it in nonrecursive mode to mangle Makefile.inc.
14463         * tests/nonrecursive.at: adjusted to test this.
14464
14465 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14466
14467         Basic support for PIE (position-independent executables).
14468
14469         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
14470         Don't pass PIE flag for compilation of the symbol file object.
14471         (func_mode_compile): Pass PIE flag only for non-PIC objects.
14472         * NEWS: Updated.
14473
14474 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14475
14476         * libltdl/config/general.m4sh (func_show_eval): Rewrite use of
14477         the failure expression, because the exit status of the previous
14478         command may not be preserved in the next `eval' by some shells,
14479         such as pdksh.
14480         * libltdl/config/ltmain.m4sh (func_extract_an_archive):
14481         Use func_show_eval correctly.
14482         (func_mode_link): Likewise.  Also, do not use `$status'.
14483         * tests/fail.at: New set of tests to ensure libtool fails.
14484         * Makefile.am, tests/testsuite.at: Adjusted.
14485
14486 2005-11-26  Peter O'Gorman  <peter@pogma.com>
14487
14488         * libltdl/m4/libtool.m4 [darwin]: Use $LTCC $LTCFLAGS to create
14489         reloadable objects.
14490
14491 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14492
14493         * libltdl/Makefile.inc (libltdl/argz.h): Create libltdl
14494         directory if it does not exist yet.  Take care that munging
14495         of the file will not mess up the build rule.
14496         Reported by Peter O'Gorman <peter@pogma.com>.
14497
14498 2005-11-25  Eric Blake  <ebb9@byu.net>,
14499             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14500
14501         * libltdl/loaders/loadlibrary.c (iface_id): New variable.
14502         (get_vtable): Get an `iface_id' from `lt_dlinterface_register'.
14503         (get_vtable): Rewrite to catch up with lt_dlhandle_iterate
14504         interface change.  Append dot only after w32 path conversion
14505         so it works on cygwin managed mounts.
14506
14507         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlinterface_free): New
14508         function.
14509         * doc/libtool.texi (User defined module data): Document it.
14510
14511 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14512
14513         * libltdl/m4/libtool.m4 [aix] <archive_expsym_cmds>
14514         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Always move -bnoentry
14515         before $compiler_flags, so it can be overridden.
14516
14517         * libltdl/config/ltmain.m4sh (func_mode_link): Allow GCC
14518         response files through.
14519
14520 2005-11-25  Peter O'Gorman  <peter@pogma.com>
14521
14522         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
14523         -isysroot for cross architecture builds on darwin.
14524
14525 2005-11-24  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14526
14527         * libltdl/config/ltmain.m4sh (func_mode_uninstall): In clean
14528         mode, don't remove non-existent libfoo.lai.
14529
14530 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14531
14532         * Makefile.am (aclocalfiles): Also install lt~obsolete.m4.
14533         * libtoolize.m4sh (func_check_macros): Updated.
14534         * tests/libtoolize.at: Adjusted.
14535
14536 2005-11-20  Eric Blake  <ebb9@byu.net>,
14537             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14538
14539         * bootstrap (--help): Provide some help.
14540
14541 2005-11-20  Todd Vierling <tv@netbsd.org>,
14542             Thorsten Glaser <tg@mirbsd.org>
14543
14544         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, _LT_SYS_DYNAMIC_LINKER)
14545         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
14546         (_LT_LANG_CXX_CONFIG) [ interix3 ]: Support for Interix/Microsoft
14547         Services for Unix.
14548         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
14549         * NEWS: Updated.
14550
14551 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14552
14553         * tests/link-order.at [ interix ]: Skip command line grep.
14554         * tests/deplibs-ident.at [ interix ]: Not broken here.
14555         Reported by Thorsten Glaser <tg@66h.42h.de>.
14556
14557 2005-11-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14558
14559         * libtoolize.m4sh (func_copy_all_files)
14560         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
14561         (func_massage_pkgconfig_files): Work around ksh limitation.
14562         Reported by Thorsten Glaser <tg@66h.42h.de>.
14563
14564 2005-11-14  Albert Chin  <china@thewrittenword.com>
14565
14566         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
14567         [ hpux11 ]: Pass +nodefaultrpath when linking on ia64*.
14568
14569 2005-11-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14570
14571         Testsuite portability update round.
14572
14573         * tests/inherited_flags: skip when shared libs are disabled.
14574         * tests/deplibs-ident.at [ aix ]: No unexpected failure here.
14575         * tests/libtoolize.at: Fix for distcheck (readonly sources).
14576         * tests/nonrecursive.at, tests/recursive.at, tests/subproject.at
14577         (foo.c): Actually export a symbol, for AIX.
14578         * tests/old-m4-iface.at: Use AC_LIBTOOL_DLOPEN, for AIX.
14579         * tests/nonrecursive.at: Set foo_la_SOURCES, for automake-1.7.
14580         * tests/subproject.at: Require automake-1.9, we use indirect
14581         subdirs.
14582         * tests/am-subdir.at: Move AT_KEYWORDS settings..
14583         * tests/testsuite.at: ..here, in respective macros.
14584         (LT_AT_AUTOMAKE): Skip if we detect failure due to old version.
14585         (PREPARE_TESTS): Set autotool variables to `no' if not present.
14586         (LT_AT_ACLOCAL, LT_AT_AUTOCONF, LT_AT_AUTOMAKE)
14587         (LT_AT_AUTOHEADER, LT_AT_AUTORECONF): Use to XFAIL tests.
14588         Reported by Tim Rice <tim@multitalents.net>.
14589         (LT_AT_MAKE): Do not use `make -e'.
14590         (_LTDL_PROJECT_FILES): Adjust sub-make call.  Work around `make'
14591         which does not set `MAKE' or `SHELL'.  Fix for user-set
14592         `CONFIG_SHELL'.
14593         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
14594
14595         * libltdl/m4/lt~obsolete.m4 (_LT_CC_BASENAME)
14596         (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
14597         Added because they were added to branch-1-5 AC_DEFUNed.
14598         * HACKING: Add note about lt~obsolete.m4.
14599
14600         * Makefile.am, libltdl/Makefile.inc (INSTALL_LTDL):
14601         For nonrecursive mode, add to include_HEADERS as well.
14602         * doc/libtool.texi (Invoking libtoolize, Distributing libltdl),
14603         tests/nonrecursive.at: Adjusted, and removed TABS from .texi.
14604
14605         * libtoolize.m4sh: Revert use of `$tst_aclocaldir'.
14606
14607 2005-11-13  Eric Blake  <ebb9@byu.net>
14608
14609         * libltdl/ltdl.c (lt_dlhandle_iterate): Fix endless loop.
14610         (lt_dlinterface_register): Fail if lt__strdup did.
14611
14612 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14613
14614         * libltdl/m4/libtool.m4 (_LT_LANG_C_CONFIG):
14615         Removed `lt_prog_cc_shlib' cruft, not needed any more.
14616
14617 2005-11-13  Kean Johnston  <jkj@sco.com>,
14618             Tim Rice  <tim@multitalents.net>
14619
14620         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
14621         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
14622         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG)
14623         [ sco3.2v5, sysv4, sysv4.3, sysv5, sco3.2v5, sco5v6, unixware,
14624         OpenUNIX, sysv4*uw2 ]: Complete overhaul of SCO support.
14625         * THANKS: Updated.
14626
14627 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14628
14629         * tests/quote.test: Do not fail on harmless shell bug present
14630         in some ksh versions.
14631         Reported by Tim Rice <tim@multitalents.net> and others.
14632
14633 2005-11-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14634
14635         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTION): Use m4_warning
14636         instead of m4_warn.
14637
14638         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): `wl' is tagged here.
14639
14640         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF, _LT_COMPILER_PIC):
14641         Make sure `$wl' is properly expanded for tests involving
14642         `export_dynamic_flag_spec', `lt_prog_compiler_static'.
14643
14644         * tests/defs.m4sh (func_configure): Actually pass
14645         options (like --disable-shared) to func_configure_nofail.
14646
14647 2005-11-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14648
14649         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]:
14650         Fix shlibpath_overrides_runpath settings.
14651         Reported by Dave Benson <daveb@idealab.com>.
14652
14653 2005-09-10  Charles Wilson  <cygwin@cwilson.fastmail.fm>
14654
14655         * libltdl/config/ltmain.m4sh (func_win32_libid): use $SED not
14656         sed.
14657         
14658 2005-11-10  Albert Chin-A-Young  <china@thewrittenword.com>
14659
14660         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]
14661         <hppa*64,ia64, aCC,g++>:
14662         Use C++ compiler for linking rather than ld.
14663
14664 2005-11-10  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14665
14666         * libltdl/m4/ltsugar.m4 (lt_join, lt_combine, lt_dict_filter):
14667         Rewrite to eliminate tail recursion; use ..
14668         (lt_unquote): New trivial helper macro.
14669         * libltdl/m4/libtool.m4 (_lt_decl_filter): Document.
14670
14671 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
14672
14673         * tests/testsuite.ac (macrodir): Don't set it here...
14674         * Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
14675         ...set it here to pick up files from the right place in context.
14676         * tests/libtoolize.at, tests/old-m4-iface.at: Adjust.
14677         * libtoolize.m4sh: Take tst_aclocaldir into account when running
14678         inside the test harness.
14679
14680 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
14681
14682         * tests/am-subdir.at: Now that we don't run autoreconf, we have to
14683         explicitly tell aclocal what flags to use.
14684
14685         * tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
14686         configure.
14687         * tests/am-subdir.at, tests/nonrecursive.at, tests/old-m4-iface.at,
14688         tests/subproject.at: Use LT_AT_BOOTSTRAP.
14689
14690 2005-11-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14691
14692         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Also set pic_flag.
14693         (_LT_LANG_CXX_CONFIG): Use $as_unset, not unset.
14694         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG): Remove bogus
14695         ld_shlibs tests.
14696
14697         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Move setting of
14698         `variables_saved_for_relink'..
14699         (_LT_SYS_DYNAMIC_LINKER): here, when both `shlibpath_var'
14700         and `runpath_var' have been set.
14701         Reported by Mike Frysinger <vapier@gentoo.org>.
14702
14703         * libltdl/Makefile.inc (AM_CPPFLAGS): Do not define
14704         HAVE_CONFIG_H.
14705         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not invoke
14706         AC_CONFIG_HEADERS ourselves, we can build with or without now.
14707
14708 2005-11-07  Kean Johnston  <jkj@sco.com>
14709
14710         * libltdl/config/ltmain.m4sh (func_mode_link) [ sysv4*uw2*,
14711         unixware7* ]: Work around linker bug on older SCO systems.
14712
14713 2005-11-07  Albert Chin-A-Young  <china@thewrittenword.com>
14714
14715         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
14716         (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]:
14717         hardcode_libdir_flag_spec and hardcode_minus_L are the same for
14718         hppa*64 and ia64*. Don't set
14719         hardcode_libdir_flag_spec='-L$libdir' on ia64* because if you
14720         specify +b and -L, +b overrides what is set into DT_RPATH.
14721
14722 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
14723
14724         * tests/testsuite.at (_LTDL_PROJECT_FILES): Factored out from
14725         common code to build a basic libltdl using project.
14726         * tests/old-m4-iface.at, tests/standalone.at, tests/subproject.at:
14727         Use it.
14728
14729         * doc/libtool.texi (Distributing libltdl): Document correct use of
14730         LT_CONFIG_LTDL_DIR mode argument with Autoconf and Automake.
14731
14732 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
14733
14734         Support 'recursive' mode for building libltdl: Automake will
14735         recursively descend into the libltdl directory, and use libltdl's
14736         Makefile.am code to build libltdl:
14737
14738         * ltdl.m4 (LT_CONFIG_LTDL_DIR): Don't barf on 'recursive' mode
14739         for 2nd argument.
14740         (_LTDL_MODE_DISPATCH): Handle recursive mode.
14741
14742 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
14743
14744         * tests/recursive.at: New tests for libltdl as a subdirectory,
14745         configured and compiled from the toplevel project using a
14746         recursive make..
14747         * tests/testsuite.at: Use it.
14748         * Makefile.am (TESTSUITE_AT): Depend on it.
14749
14750         * libltdl/m4/ltdl.m4 (LTDL_INIT): Don't force running
14751         AC_CONFIG_HEADERS for subproject ltdl.
14752         * tests/old-m4-iface.at, tests/subproject.at: Remove workaround.
14753
14754         * libltdl/m4/ltdl.m4 (LT_CONFIG_LTDL_DIR): Add LTDL-MODE
14755         argument.
14756         * configure.ac: Use it.
14757
14758 2005-11-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14759
14760         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): lt_unknown is
14761         lt_dlunknown.
14762
14763         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Revert
14764         expansion of `$wl'.
14765         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_GCJ_CONFIG):
14766         Do not require LT_SYS_DLOPEN_SELF.
14767         (_LT_LANG_C_CONFIG): Instead call it at the right time.
14768         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
14769         (_LT_LANG_GCJ_CONFIG): Do not call _LT_CMD_STRIPLIB.
14770
14771         * Makefile.am: `2>&1' as suggested by Albert Chin.
14772         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4:
14773         Two newlines before each macro, fix underlines.
14774
14775 2005-11-05  Kean Johnston  <jkj@sco.com>,
14776             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14777
14778         * libltdl/config/ltmain.m4sh (func_mode_link) [*-*-sco3.2v5*]:
14779         Don't pass through -lc, nor add it to deplibs.
14780         [*-*-sysv5*]: Ditto.
14781         [*-*-openbsd*, *-*-freebsd*, *-*-dragonfly*]: Remove bogus
14782         `$arg'.
14783
14784 2005-11-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14785
14786         * THANKS: Updated.
14787
14788 2005-11-02  Gary V. Vaughan  <gary@gnu.org>
14789
14790         * tests/nonrecursive.at: New tests for libltdl as a subdirectory,
14791         configured and compiled from the toplevel project.
14792         * tests/testsuite.at: Use it.
14793         (LT_AT_AUTOHEADER): New macro.
14794         * Makefile.am (TESTSUITE_AT): Depend on nonrecursive.at.
14795
14796 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14797
14798         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Add `-64'
14799         to $LD if necessary, to permit combining of several convenience
14800         libs without any further objects added.
14801         Reported by Brian Barrett <brbarret@open-mpi.org>.
14802
14803 2005-11-01  Kean Johnston  <jkj@sco.com>,
14804             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14805
14806         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Use
14807         `lt_prog_compile_static', not `link_static_flag'.  Expand `$wl'
14808         so expansion of `export_dynamic_flag_spec' works.
14809         (_LT_TRY_DLOPEN_SELF): Show dlerror() in case of failure.
14810         (_LT_LINKER_SHLIBS) [ aix3 ]: Likewise.
14811         (_LT_COMPILER_PIC) [ hpux* ]: Use `${wl}'.
14812
14813 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14814
14815         * THANKS: Updated.
14816
14817 2005-11-01  Gary V. Vaughan  <gary@gnu.org>
14818
14819         * libltdl/m4/ltdl.m4 (LTDL_INIT): Call _LT_ENABLE_INSTALL directly
14820         instead of m4_requiring it, as it relies on enable_ltdl_install
14821         and enable_ltdl_convenience to have been initialised first.
14822
14823         * libtoolize.m4sh: Use serial tags to locate the correct serial
14824         numbers when deciding whether to update.
14825         (func_serial): Allow for macro_regex argument to be originating
14826         file name.
14827         (func_serial_update): Use NL2SP to flatten list of extracted
14828         m4_include files.
14829         * tests/libtoolize.at: More tests for old-style verbatim copying
14830         of macros into aclocal.m4.
14831
14832         * libltdl/m4/argz.m4, libltdl/m4/ltoptions.m4, libltdl/ltsugar.m4,
14833         libltdl/m4/ltversion.in: Add serial number tags, and bump serial
14834         number.
14835
14836 2005-10-31  Kean Johnston  <jkj@sco.com>
14837
14838         [ sysv5*, sco3.2v5*, sco5v6*, unixware*, OpenUNIX*, sysv4*uw2* ]
14839         Patches for various bug fixes, small improvements and updating
14840         the SCO platform support.
14841
14842         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Set correctly for SCO.
14843
14844         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Set correct
14845         symcode values for the native nm on SCO platforms.
14846
14847         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): All SCO platforms
14848         open dependency libraries when you dlopen a module.
14849
14850 2005-10-31  Albert Chin-A-Young  <china@thewrittenword.com>
14851
14852         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
14853         [ aix ]: Remove duplicate always_export_symbols=yes for AIX.
14854
14855 2005-10-29  Howard Chu  <hyc@highlandsun.com>
14856
14857         * libltdl/config/ltmain.m4sh (func_mode_link):
14858         With `-static', only link statically against uninstalled
14859         libtool libraries.  Fixes 1.5.x regression to match documented
14860         behavior.
14861         * NEWS: Updated.
14862
14863 2005-10-27  Stepan Kasal  <kasal@ucw.cz>
14864
14865         * HACKING: Update note about use of `$#' in m4 macros.
14866
14867 2005-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14868
14869         * tests/tagtrace.test: Allow `$AUTOCONF' to contain arguments.
14870         Skip if the running `autoconf' version is older than the one
14871         used to bootstrap Libtool.
14872
14873 2005-10-26  Eric Blake  <ebb9@byu.net>,
14874             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14875
14876         * Makefile.am (vcl-tmp): Avoid warnings from diff.
14877         * bootstrap: Avoid warnings from find.
14878         (lt_tab): Use to prevent editor whitespace "cleanup".
14879
14880 2005-10-26  Gary V. Vaughan  <gary@gnu.org>
14881
14882         * libtoolize.m4sh: Put back the func_serial_update callback for
14883         func_copy_some_files so that the testsuite passes again.  We'll
14884         have to find a better way of handling serial numbers in libtool
14885         macro files.
14886
14887         * libltdl/Makefile.inc: New file, factored out of Makefile.am for
14888         use in non-recursive libltdl installations.
14889         * bootstrap: Adjust.
14890         * Makefile.am: include it.
14891         (libltdl/Makefile.am): Adjust to build from the new
14892         libltdl/Makefile.inc.
14893         (SUBDIR_LIBOBJS): Renamed from this...
14894         (LTDL_SUBDIR_LIBOBJS): ...to this.
14895         * configure.ac: Adjust.
14896         * doc/libtool.texi (Invoking libtoolize): Document the new modes
14897         and libtoolize option to select them.
14898         * libtoolize.m4sh: Parse new options, --nonrecursive, --recursive
14899         and --subproject.  Install the appropriate files with --ltdl
14900         according to the selected mode.
14901         (func_scan_files): If --subproject, --recursive or --nonrecursive
14902         options were not given, use the value from LT_CONFIG_LTDL_DIR; if
14903         a mode was given, and there is also an argument to
14904         LT_CONFIG_LTDL_DIR, ensure they are the same.
14905         * NEWS: Updated.
14906
14907         * libtoolize.m4sh: Don't use func_serial_update as a copy
14908         function for libtool m4 files with no macro_regex.  If the
14909         files are copied directly into aclocal.m4, because
14910         AC_CONFIG_MACRO_DIR isn't set for example, there is no way
14911         to tell what serial number goes with what source file.
14912         (func_serial_update): For future-proofing, only make the second
14913         serial number check if the destination file wasn't m4_included
14914         into aclocal.m4 (and hence updated automatically by the cat of
14915         copying a new version to the dest directory).
14916
14917         * libtoolize.m4sh: Move the consistency checks...
14918         (func_check_macros): ...into here.  Also suggest LT_WITH_LTDL if
14919         appropriate.
14920
14921         * libtoolize.m4sh: Copying just libtool.m4 for hand maintained
14922         aclocal.m4 doesn't work.  List all required files in that case,
14923         using the files from installed libltdl if available.  Also, list
14924         the additional files required when using libltdl.
14925         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
14926
14927         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_first): Removed.
14928         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_next)
14929         (lt_dlhandle_find, lt_dlforeach): Removed...
14930         (lt_dlhandle_iterate, lt_dlhandle_fetch, lt_dlhandle_map): Similar
14931         functions that are multi-loader safe, and require a registered
14932         interface validator argument.
14933         * doc/libtool.texi: Updated.
14934         * NEWS: Updated.
14935
14936         * libtoolize.m4sh: Always copy pkgconfig_files for --ltdl, incase
14937         ltdl needs additional things not found by automake when looking at
14938         the parent project configury.
14939         * tests/libtoolize.at: Adjust.
14940
14941 2005-10-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14942
14943         * libltdl/config/ltmain.m4sh [darwin]: Don't check for "bundle"
14944         in file path.
14945         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
14946
14947 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
14948
14949         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Don't nest AC_MSG_CHECKING/
14950         AC_MSG_RESULT pairs.
14951
14952 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
14953
14954         * tests/subproject.at: Move 'touch config.h.in' invocation.
14955
14956         * tests/subproject.at (_LTDL_SETUP): Use pushdef/popdef to
14957         simulate file-local scope.  Empty source file compilation is not
14958         portable, so add minimal code to generated foo.c file.
14959
14960 2005-10-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14961
14962         * libltdl/m4/libtool.m4 (LT_PATH_NM): End test source with
14963         newline.
14964         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
14965
14966 2005-10-13  Peter O'Gorman  <peter@pogma.com>
14967
14968         * libltdl/ltdl.c (find_module): Check that dir is set.
14969         (load_deplibs): Don't free the user search paths too early.
14970
14971 2005-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14972
14973         * tests/testsuite.at (LT_AT_AUTOMAKE): New macro.
14974         * tests/subproject.at: Use it.  Do not call `autoreconf' in
14975         tests, since it will try to reconfigure `sub/ltdl', which
14976         breaks `make check' during `distcheck' because of a readonly
14977         source tree.
14978
14979         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Also set INCLTDL.
14980
14981         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE)
14982         (LT_WITH_LTDL): Revert Gary's 2005-10-10 patch.
14983
14984         * tests/stresstest.at: Use `allow_undefined_flag' instead of
14985         host_os setting.
14986
14987 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
14988
14989         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Remove bogus extra
14990         closing brackets.
14991
14992 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
14993
14994         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Remove
14995         AC_SUBST of LIBLTDL, LTDLINCL, and all mention of INCLTDL.
14996         (LT_WITH_LTDL): Due to order constraints between LTDL_CONVENIENCE,
14997         LTDL_INSTALLABLE, LT_WITH_LTDL & LTDL_INIT, we can safely AC_SUBST
14998         LIBLTDL and LTDLINCL here.  Also, remember to synch INCLTDL.
14999
15000 2005-10-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15001
15002         * tests/stresstest.at [ aix3, beos, os2 ]: Always use
15003         `-no-undefined'.
15004
15005 2005-10-09  Christian Biesinger  <cbiesinger@web.de>
15006
15007         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ beos ]:
15008         Initial shared library support for C++.
15009
15010 2005-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15011
15012         * configure.ac (abs_top_builddir, abs_top_srcdir): always
15013         substitute.
15014         * Makefile.am (BUILDCHECK_ENVIRONMENT)
15015         (INSTALLCHECK_ENVIRONMENT): New macros.  Set _lt_pkgdatadir,
15016         LIBTOOL, LIBTOOLIZE accordingly, by using above, and
15017         program_transform_name.
15018         * tests/testsuite.at (TESTS_PREPARE): Do not set them anymore.
15019         Set $unset.
15020         (LT_AT_MAKE): Use to unset LIBTOOL and LIBTOOLIZE.
15021
15022 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
15023
15024         * tests/subproject.at: Commit the right file this time.
15025
15026 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15027
15028         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Fix m4 quoting
15029         for lt_simple_link_test_code.
15030         Reported by Nicolas Joly <njoly@pasteur.fr>.
15031
15032 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
15033
15034         * tests/subproject.at: New tests for libltdl as a subproject with
15035         its own configuration.
15036         * tests/testsuite.at: Use it.
15037         * Makefile.am (TESTSUITE_AT): Depend on it.
15038
15039 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15040
15041         * Makefile.am: Simplify.  Do not use abs_top_srcdir.
15042         Reported by Gary V. Vaughan <gary@gnu.org>.
15043
15044 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
15045
15046         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Spurious './' prefixes
15047         upset BSD pmake, don't set lt_ltdl_dir in this case.
15048         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
15049
15050 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15051
15052         * Makefile.am (BUILDCHECK_ENVIRONMENT)
15053         (INSTALLCHECK_ENVIRONMENT): New macros.
15054         (check-local, installcheck-local): Use them.
15055         * tests/testsuite.at (PREPARE_TESTS): Extract host_alias, ECHO.
15056         Set configure_options appropriately.
15057         (LT_AT_CONFIGURE, LT_AT_AUTORECONF, LT_AT_MAKE): New macros.
15058         (LT_AT_BOOTSTRAP): Use them.
15059         * tests/am-subdir.at, tests/early-libtool.at,
15060         tests/old-m4-iface.at, tests/standalone.at: Likewise.
15061         * tests/link-order.test: Do not extract ECHO any more.
15062
15063         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
15064         AC_CANONICAL_HOST and _LT_DECL_SED.
15065
15066 2005-10-03  Gary V. Vaughan  <gary@gnu.org>
15067
15068         * libltdl/m4/ltdl.m4: Bump serial as we are changing the
15069         interface.
15070         (LT_CONFIG_LTDL_DIR): New macro to centralise setting the
15071         subdirectory used for libltdl.
15072         (LTDL_CONVENIENCE): Continue backwards compatibility support for
15073         declaring the libltdl source subdirectory with an argument, but
15074         defer to LT_CONFIG_LTDL_DIR.
15075         (AC_LIBLTDL_CONVENIENCE): Adjust to upgrade to the new style.
15076         (LTDL_INSTALLABLE, AC_LIBLTDL_INSTALLABLE): Ditto.
15077         (LTDL_INIT): lt_ltdl_dir is set by LT_CONFIG_LTDL_DIR now, and
15078         even `./' needs trailing slashes trimming!  If the user didn't
15079         upgrade their configure.ac yet, call LT_CONFIG_LTDL_DIR for them.
15080         * libtoolize.m4sh (func_scan_files): If --ltdl option is given
15081         without a directory argument, use the value from
15082         LT_CONFIG_LTDL_DIR; if the argument is given, and there is also a
15083         value in LT_CONFIG_LTDL_DIR, ensure they are the same.
15084         * libltdl/configure.ac: Use it.
15085         * NEWS: Updated.
15086
15087 2005-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15088
15089         * tests/old-m4-iface.at (Makefile.in): Do not reconfigure
15090         libltdl directory.
15091
15092 2005-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15093
15094         * tests/deplibs-ident.at: New file with XFAIL test to expose
15095         wrong multiple listing of a deplib on the command line.
15096         * Makefile.am, tests/testsuite.at: Updated.
15097         Reported by Brian Barrett <brbarret@open-mpi.org>.
15098
15099         * tests/old-m4-iface.at: Define top_srcdir, work around current
15100         ltdl.m4 bug.
15101
15102         * libltdl/config/ltmain.m4sh (func_mode_link):
15103         Fix wrong logic introduced in last commit.
15104
15105 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
15106
15107         * tests/libtoolize.at: Add a new test to catch a regression I
15108         almost introduced with respect to copying macro files when
15109         AC_CONFIG_MACRO_DIR is shared with libltdl subproject.
15110
15111 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
15112
15113         * tests/old-m4-iface.at: Start of a new test series for m4
15114         interface backwards compatibility.
15115         * tests/testsuite.at: Use it.
15116         (macrodir): Declare the location of uninstalled libtool m4 macros.
15117         * Makefile.am (TESTSUITE_AT): Depend on it.
15118
15119 2005-09-29  Tim Rice  <tim@multitalents.net>  (tiny change)
15120
15121         * tests/early-libtool.at (Makefile.in): Set $(SHELL).
15122
15123 2005-09-29  Peter Ekberg  <peda@lysator.liu.se>
15124
15125         * libltdl/config/ltmain.m4sh (func_mode_link): Don't modify
15126         user provided symbols file. Adjust removal of temporary files
15127         and also remove temporary files used during symbols file
15128         filtering.
15129
15130 2005-09-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15131
15132         * libtoolize.m4sh (func_included_files): Do not recurse
15133         non-existent files.
15134
15135 2005-09-27  Gary V. Vaughan  <gary@gnu.org>
15136
15137         * libtoolize.m4sh (func_scan_files): Support projects that have
15138         upgraded libtool, but still use an old autoconf.  When the libtool
15139         macros are not copied (because of missing ACLOCAL_AMFLAGS and
15140         AC_CONFIG_MACRO_DIR ), point them at the libtoolize master tree
15141         for files to manually copy into acinclude.m4 or aclocal.m4.
15142
15143         * libltdl/lt_error.c (lt__last_error, lt__error_strings): The lt__
15144         prefix is used to indicate internal symbols that are only exported
15145         for use by other parts of libltdl.  These are now static, so...
15146         (last_error, error_strings): ...renamed to this.  Changed all
15147         callers.
15148
15149         * libltdl/ltdl.h (lt_dlmutex_register, lt_dlmutex_lock)
15150         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror)
15151         (lt_dlmalloc, lt_dlrealloc, lt_dlfree): Remove deprecated APIs.
15152         * doc/libtool.tex: Updated.
15153         * NEWS: Updated.
15154
15155         * libltdl/ltdl.c (lt_dlcaller_register): Renamed to avoid problems
15156         with module visibilty when linked with programs written for the
15157         old API.
15158         (lt_dlinterface_register): New name.
15159         * Makefile.am (VERSION_INFO): Bumped.
15160         * doc/libtool.texi (User defined module data): Updated.
15161
15162 2005-09-27  Tim Rice  <tim@multitalents.net>
15163
15164         * tests/defs.m4sh, tests/testsuite.at (PREPARE_TESTS)
15165         <AUTORECONF>: Allow variable override.
15166
15167 2005-09-26  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15168
15169         * HACKING: Only update libltdl version info before release.
15170
15171 2005-09-26  Tim Rice  <tim@multitalents.net>
15172
15173         * configure.ac <AUTOM4TE>: Allow variable override.
15174
15175 2005-09-25  Alan W. Irwin  <irwin@beluga.phys.uvic.ca>,
15176             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15177
15178         * libltdl/config/ltmain.m4sh (func_win32_libid)
15179         [ cygwin, mingw ]: Robustify sed script to determine
15180         win32_libid_type.
15181         (func_mode_link) [ mingw ]: Ignore `-lm'.
15182
15183 2005-09-25  Peter Ekberg  <peda@lysator.liu.se>
15184
15185         * libltdl/libltdl/lt__private.h, libltdl/lt_error.c:
15186         Don't export the lt__last_error and lt__error_strings
15187         variables. Define lt__error_strings so that no relocations
15188         are needed.
15189         * libltdl/libltdl/lt__private.h (LT__STRERROR, LT__GETERROR)
15190         (LT__SETERRORSTR): Adjust to not use the above variables,
15191         instead use the following functions...
15192         * libltdl/lt_error.c: (lt__error_string, lt__get_last_error)
15193         (lt__set_last_error): Reimplement the functionality in
15194         these functions instead.
15195         * libltdl/libltdl/lt_error.h: Add LT_ERROR_LEN_MAX define for
15196         max error string length.
15197         (lt_dlerror_table): Append explicit nul terminators so that
15198         compilers warn more reliably if the above define is too small.
15199
15200 2005-09-23  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15201
15202         * tests/link-order.at [ aix* ]: skip path syntax grep.
15203
15204 2005-09-23  Peter Ekberg  <peda@lysator.liu.se>
15205
15206         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Fix awk
15207         script to be a single line so that the cache variable isn't
15208         multiline.
15209
15210 2005-09-23  Eric Blake  <ebb9@byu.net>  (tiny change)
15211
15212         * libltdl/loaders/loadlibrary.c (vm_open): Silence gcc warnings.
15213         [__CYGWIN__]: Include <sys/cygwin.h> for prototype.
15214
15215 2005-09-22  Gary V. Vaughan  <gary@gnu.org>
15216
15217         * bootstrap: Don't clobber the working copy metadata in
15218         ./{arch}/libtool during bootstrap.
15219
15220 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
15221             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15222
15223         * libltdl/config/ltmain.m4sh (func_mode_link): Filter
15224         user supplied symfile to tag relevant symbols as data
15225         symbols. Fixes segfault in stresstest.at on Cygwin and
15226         makes the test pass.
15227
15228 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>
15229
15230         * tests/link-order.test: Clean up the uninstalled libraries
15231         before linking the test executables so that they don't pick
15232         up the dlls from the current dir on Cygwin and MinGW.
15233
15234 2005-09-22  Tim Rice  <tim@multitalents.net>
15235
15236         * libltdl/m4/libtool.m4 (LT_PATH_NM, _LT_LINKER_SHLIBS)
15237         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS):
15238         Add missing `;;' after case list.
15239
15240 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
15241             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15242
15243         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC)
15244         (_LT_LINKER_SHLIBS): Require _LT_TAG_COMPILER to make sure that
15245         $compiler is assigned. Fixes crippled configure output.
15246
15247 2005-09-21  Peter Ekberg  <peda@lysator.liu.se>
15248
15249         * libltdl/m4/libtool.m4 (LT_PATH_NM): Fix autodetection of
15250         dumpbin and also check for "link -dump -symbols" as a synonym
15251         for "dumpbin -symbols".
15252
15253         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Clean
15254         up $dlname as well when cleaning a uninstalled libtool
15255         library. Fixes -mode=clean on Cygwin and MinGW to actually
15256         remove the dll when cleaning up an uninstalled library.
15257
15258 2005-09-20  Peter Ekberg  <peda@lysator.liu.se>
15259
15260         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
15261         Split up --out-implib option for linker in separate args so that
15262         the MSYS path translation can do its magic on the provided path
15263         to the import library. Fixes problem in stresstest.at on MinGW.
15264
15265 2005-09-19  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15266
15267         * Makefile.am (ltdldatafiles): Fix installation order to match
15268         dependency order.
15269         (libltdl/Makefile.in): Use $(srcdir) for non-GNU make.
15270
15271 2005-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15272
15273         * libltdl/config/ltmain.m4sh (func_mode_link): Allow some
15274         ARM gcc ABI flags through.
15275         Reported by Andrés Moré <more.andres@gmail.com>.
15276
15277         * Makefile.am (all-local): Rebuild libltdl/Makefile.in.
15278
15279         * libltdl/m4/ltdl.m4 (LTDL_INIT) <CONFIG_H>: Rename to..
15280         <LT_CONFIG_H>: this, to contain the name of the config
15281         header.
15282         * Makefile.am <DEFS>: Use it to define LT_CONFIG_H.
15283         * HACKING, libltdl/argz.c, libltdl/lt__alloc.c,
15284         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
15285         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h:
15286         Adjusted.
15287
15288 2005-09-16  Peter Ekberg  <peda@lysator.liu.se>
15289
15290         * tests/testsuite.at (LT_AT_EXEC_CHECK): Make sure
15291         that the exit status of the tested program is
15292         propagated as the exit status of the expression
15293         fed to AT_CHECK.
15294
15295 2005-09-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15296
15297         * libltdl/argz.c <HAVE_CONFIG_H>: Avoid redefinition warning.
15298
15299         * libltdl/ltdl.c (lt_argz_insert): Work around newlib
15300         argz_insert bug.
15301         * Makefile.am (VERSION_INFO): Bumped revision.
15302         Reported by Eric Blake <ebb9@byu.net>.
15303
15304 2005-09-13  Peter Ekberg  <peda@lysator.liu.se>,
15305             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15306
15307         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
15308         Fix escape expression to actually escape relevant
15309         characters from the following grep. Fix Cygwin and
15310         MinGW to use the filtered symbol list when exporting
15311         from self, and not the symbol filter.
15312         * tests/stresstest.at: Export w8, not w8$
15313
15314 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15315
15316         Make tagdemo work smoothly with both pre- and ISO C++ compilers,
15317         and remove all use of libstdc from other tests.
15318
15319         * tests/tagdemo/configure.ac (HAVE_NAMESPACES, HAVE_IOSTREAM):
15320         New tests for ISO C++ features.  Reimplementation of similar
15321         macros from the autoconf archive.
15322         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp: Adjusted.
15323         * tests/am-subdir.at, tests/template.at: Do not use iostream.
15324
15325 2005-09-12  Peter Ekberg  <peda@axentia.se>,
15326             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15327
15328         * tests/testsuite.at (host_os): Pull from `libtool --config'.
15329         * tests/stresstest.at [ cygwin, mingw, pw32 ]: Use it to fix
15330         setting of `-no-undefined'.
15331
15332 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15333
15334         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL, LTDL_CONVENIENCE)
15335         (LTDL_INSTALLABLE): Use less quoting for expanded LIBLTDL,
15336         LTDLINCL.  Use m4_default instead of m4_if, to work
15337         around AU_ALIAS bug with empty macro arguments.
15338         (LTDL_INIT): Likewise.
15339         * libltdl/m4/ltoptions.m4 (_LT_WITH_PIC): Likewise.
15340         * TODO, HACKING: Updated.
15341
15342 2005-09-10  Gary V. Vaughan  <gary@gnu.org>
15343
15344         * libtoolize.m4sh (TAR): Allow the user to override the tar
15345         command.
15346
15347 2005-09-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15348
15349         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
15350         (_LT_LINKER_BOILERPLATE, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
15351         (_LT_COMPILER_C_O): When comparing expected and actual compiler/
15352         linker output for warnings, weed out both empty lines as well as
15353         lines starting with possibly indented `+', to allow for shell
15354         debugging with `set -x'.
15355         Check the weeded instead of unweeded contents for emptiness.
15356
15357         * libltdl/config/ltmain.m4sh (func_mode_link): Actually provide
15358         a useful error message.  Fixes long-standing shameful user
15359         neglection.
15360         Reported by Martin Paljak <martin.paljak@gmail.com>.
15361
15362 2005-09-08  Peter Ekberg  <peda@axentia.se>
15363
15364         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]:
15365         Symbols in "pick any" sections are not global. Use
15366         awk, not sed, in the global_symbol_pipe so that keeping
15367         track of sections is easier.
15368         * doc/libtool.texi (libtool script contents): Update to hint
15369         at new findings concerning "pick any" sections.
15370
15371 2005-09-08  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15372
15373         * tests/early-libtool.at (config.status): Use EXEEXT
15374         consistently.
15375         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
15376
15377 2005-09-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
15378
15379         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
15380         [ cygwin, mingw, pw32 ]: Use --enable-auto-image-base instead of
15381         a fixed image base address.
15382
15383 2005-09-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15384
15385         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ sysv4*uw2*,
15386         sysv4.2uw2* ]: Fix my last checkin to really match the more special
15387         case before the general case.
15388         Reported by Stepan Kasal <kasal@ucw.cz>.
15389
15390 2005-09-06  Roger Cornelius  <rac@tenzing.org>
15391
15392         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
15393         [ sysv5OpenUNIX8, sysv5UnixWare7, sysv5uw[78], unixware7,
15394         sysv4*uw2* ]: Match special cases before general case.
15395
15396 2005-09-05  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15397
15398         * bootstrap: another AIX sed fix.
15399
15400         * Makefile.am (TESTS_ENVIRONMENT): Export SHELL.
15401         * bootstrap (SHELL): Set to $CONFIG_SHELL or /bin/sh.
15402         Name `make' targets in portable fashion.  Work around `rm'
15403         warnings.  Unconditionally create fake `libtoolize'.
15404         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
15405
15406         * Makefile.am (doc/notes.txt): Use --no-headers instead of
15407         --plaintext for makeinfo.
15408         Reported by Peter O'Gorman <peter@pogma.com>.
15409
15410 2005-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15411
15412         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ aix ]
15413         <export_symbols_cmds>: Work around shell expansion issue in
15414         func_show_eval by separating `$' and field number; drop then
15415         unnecessary m4 quoting.
15416
15417 2005-09-02  Gary V. Vaughan  <gary@gnu.org>
15418
15419         AC_BEFORE only works if declarations are made inside the macro
15420         cited as the first argument:
15421
15422         * libltdl/m4/libtool.m4 (LT_OUTPUT): Move AC_BEFORE decls...
15423         (LT_INIT, LT_LANG): ...to the macro that has to come first.
15424
15425 2005-09-01  Peter O'Gorman  <peter@pogma.com>
15426
15427         * libltdl/m4/libtool.m4 (old_postintall_cmds): chmod 644 before
15428         running ranlib.
15429         Reported by Gerald Pfeifer <gerald@pfeifer.com>
15430
15431 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15432
15433         * libltdl/m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77)
15434         (_LT_PROG_FC): aclocal-1.4 compatibility workaround.
15435
15436         * bootstrap: Do not use nonportable -path.
15437         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
15438
15439 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
15440
15441         * doc/libtool.texi (LT_INIT): Fix a logical error with
15442         documentation of --with-pic vs --without-pic.
15443
15444 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15445
15446         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): m4_defun this..
15447         * libltdl/m4/libtool.m4 (LT_INIT): so it can be m4_require'd
15448         from here with user-supplied options.  Fixes output macro
15449         ordering issue.
15450
15451 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
15452
15453         * libtoolize.m4sh (func_scan_files): When searching for evidence
15454         of Autotools in aclocal.m4, be careful not to trip over requires
15455         and defuns.
15456
15457 2005-08-31  Gary V. Vaughan <gary@gnu.org>,
15458             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15459
15460         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Move option macro
15461         dipatch..
15462         (_LT_SET_OPTION): here.  Do not fail but warn on unknown
15463         options.
15464         (_LT_UNLESS_OPTIONS(win32-dll), LT_OPTION_DEFINE(dlopen)):
15465         Add whitespace.
15466         Reported by Robert Ögren <lists@roboros.com> and
15467         Akim Demaille <akim@lrde.epita.fr>.
15468
15469 2005-08-31  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15470
15471         * libltdl/m4/libtool.m4 [ solaris CC ]: Document issue with C++
15472         standard libraries.
15473
15474 2005-08-30  Gary V. Vaughan  <gary@gnu.org>
15475
15476         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_PIC_MODE): Renamed...
15477         (AC_LIBTOOL_PICMODE): ...this in the backwards compatibility
15478         code.  There never was an AC_LIBTOOL_PIC_MODE macro.
15479
15480         * libltdl/m4/libtool.m4 (_LT_SETUP): Remove duplicate
15481         --enable-libtool-lock declaration.
15482
15483 2005-08-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15484
15485         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
15486         (_LT_PATH_TOOL_PREFIX, _LT_SYS_HIDDEN_LIBDEPS, _LT_DECL_EGREP):
15487         Fix typos.
15488
15489         * Makefile.am: Install libltdl data files in correct order.
15490         Use pre-defined programs for installation; use NORMAL_INSTALL
15491         and NORMAL_UNINSTALL.  Really fix ownership and timestamp
15492         problems.  Fix typo in uninstallation of aclocal files.
15493         Reported by Peter Breitenlohner <peb@mppmu.mpg.de> and
15494         Charles Wilson <cygwin@cwilson.fastmail.fm>.
15495
15496 2005-08-29  Gary V. Vaughan <gary@gnu.org>,
15497             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15498
15499         Allow for portability with Autoconf 2.59, Automake 1.9.6,
15500         which lack AC_CONFIG_LIBOBJ_DIR support.
15501
15502         * bootstrap: Unless environment variable WORKING_LIBOBJS_SUPPORT
15503         is set to true aka `:', symlink ..
15504         * argz.c lt__dirent.c lt__strl.c: .. these from the copies in
15505         libltdl.
15506         * configure.ac (SUBDIR_LIBOBJS): Automake conditional, set if
15507         bootstrap didn't make the extra copies of libobj sources in
15508         top srcdir...
15509         * Makefile.am: Add these to EXTRA_DIST if SUBDIR_OBJS is not set,
15510         as well as the originals in libltdl/, in order to work when
15511         bootstrapped both with old and newer Automake/Autoconf.
15512
15513 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
15514
15515         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE): Fix the comment to not
15516         pretend that LIBLTDL and LTDLINCL are not AC_SUBSTed here.
15517
15518 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
15519
15520         Some macros had relied on accidentally correct ordering in order
15521         for $MV to be defined before use.  Factor out setting of some
15522         common file commands and m4_require it before use:
15523
15524         * libltdl/m4/libtool.m4 (_LT_FILEUTILS_DEFAULTS): Allow user to
15525         override some common file commands at configure time.
15526         (_LT_SETUP, _LT_CONFIG, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
15527         (_LT_COMPILER_C_O, _LT_COMPILER_FILE_LOCKS)
15528         (_LT_SYS_DYNAMIC_LINKER, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
15529         (_LT_SYS_HIDDEN_DEPLIBS): m4_require it to ensure the commands are
15530         defined before they are called.
15531
15532 2005-08-28  Gary V. Vaughan  <gary@gnu.org>
15533
15534         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4: AU_DEFUN doesn't pass
15535         arguments.  Use AU_ALIAS instead!
15536
15537 2005-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
15538             Gary V. Vaughan <gary@gnu.org>
15539
15540         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p) [osf]:
15541         Save file descriptor to original STDIN, and restore after
15542         redirection.  Fixes memory corruption with Tru64 and OSF sh.
15543         Reported by Nicolas Joly <njoly@pasteur.fr>.
15544
15545 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
15546             Peter Ekberg  <peda@lysator.liu.se>
15547
15548         * tests/early-libtool.at: Fix goofed up make rules in
15549         previous commit.
15550
15551         * tests/inherited_flags.at: Weaken for MSVC.
15552         * tests/early-libtool.at, tests/template.at: Fix for compiler
15553         that do not understand '-c -o'.
15554
15555 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15556
15557         * tests/standalone.at, tests/template.at: Do not compare
15558         output because of EOL issues.  Resolve warnings, make cross-
15559         compilation aware.
15560         Reported by Peter Ekberg <peda@axentia.se>.
15561
15562         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
15563         (_LT_LINKER_SHLIBS): Double-quote unsafe tag variable
15564         descriptions: they are literals.
15565
15566 2005-08-25  Peter Ekberg  <peda@lysator.liu.se>,
15567             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15568
15569         * tests/standalone.at: (without autotools): Add
15570         $(CFLAGS) to LTCOMPILE and LTLINK. Separate compiling
15571         and linking. Remove compiling flags from link. Add
15572         --tag. Add -no-undefined flag.
15573
15574 2005-08-24  Bruno Haible  <bruno@clisp.org>
15575
15576         * libltdl/config/ltmain.sh (func_mode_install): Try "ln -s -f"
15577         and "rm -f && ln -s" to make a symlink for a shared library: the
15578         former is needed for libraries `ln' depends on, the latter for
15579         Solaris /bin/ln.
15580         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
15581
15582         * libltdl/config/ltmain.sh (cwrappersource): return 127 if exec
15583         failed.
15584
15585 2005-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15586
15587         * libltdl/m4/libtool.m4 (_LT_COMPILER_C_O): Send chmod warning to log.
15588
15589         * tests/defs.m4sh (m4dir, auxdir, scripts): Fix for source tree
15590         reorganization.
15591         * tests/sh.test: Adjust.  Also barf on sed diagnostics so this
15592         test will not fail again silently.
15593
15594         * libltdl/m4/ltdl.m4 (LT_SYS_SYMBOL_USCORE): Use _LT_EOF, not
15595         EOF.
15596
15597         * tests/fcdemo/Makefile.am (suffix rules): Explicitly add
15598         $(FCFLAGS_f90) so the tests can pass on AIX.
15599
15600 2005-08-24  Peter O'Gorman  <peter@pogma.com>
15601
15602         * libltdl/config/ltmain.m4sh (inherited_linker_flags): Work when
15603         output is an application too.
15604         Reported by Christopher Egger <Christoph_Egger@gmx.de>
15605
15606 2005-08-23  Stepan Kasal  <kasal@ucw.cz>,
15607             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15608
15609         * libltdl/m4/ltdl.m4 (LTDL_INIT): Use AH_HEADER if defined.
15610         Compute CONFIG_H only before creating config.status.
15611         Reported by Peter Ekberg <peda@axentia.se>.
15612
15613 2005-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15614
15615         * Makefile.maint (web-manual): Fix $(LN_S) to use absolute path.
15616         Fix creating the manual for VPATH build.
15617
15618         * bootstrap: Fix missing replace config -> $auxdir.  ltmain.m4sh
15619         is prerequisite to ltmain.sh.  Improve warning message.
15620
15621 2005-08-22  Gary V. Vaughan  <gary@gnu.org>
15622
15623         Reorganise the libtool tree to create a bootstrapped libltdl for
15624         installation to the libtoolize master tree, so that libltdl is
15625         useable even in the extreme case of when automake and autoconf are
15626         not installed on the developers machine.  Part of this change
15627         requires some duplication of rules between Makefile.am (which
15628         builds libltdl for this distribution) and libltdl/Makefile.am
15629         (which is used by projects that libltoolize --ltdl --copy), so
15630         libtool now really does use a single toplevel Makefile.am, and we
15631         generate libltdl/Makefile.am from that:
15632
15633         * m4, config: Moved from here...
15634         * libltdl/m4, libltdl/config: ...to here, to reduce the amount of
15635         kludging needed in bootstrap for autoreconf to run.
15636         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
15637         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
15638         tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
15639         tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
15640         tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Adjust to
15641         compensate.
15642         * tests/cdemo/configure.ac, tests/demo/configure.ac,
15643         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
15644         tests/fcdemo/configure.ac, tests/mdemo/configure.ac,
15645         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
15646         tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto.
15647         * libltdl/m4/ltdl.m4: Increment serial number.
15648         (LTDL_INIT): Accept an optional directory argument to prefix each
15649         of the LD_DLLOADERS locations.  Default to empty for backwards
15650         compatibility.
15651         * Makefile.maint: Adjust to compensate.
15652         * configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR): Adjust.
15653         (AC_CONFIG_LIBOBJ_DIR): Set here so that we can build LTLIBOBJS
15654         from in a subdirectory from the amalgamated Makefile.am.
15655         (AM_PROG_CC_C_O, AM_INIT_AUTOMAKE): Use subdir-objects.
15656         (AC_CONFIG_FILES): Remove libltdl/Makefile.am.
15657         * libltdl/Makefile.am: Removed from repository, and merged into
15658         Makefile.am as we now generate it...
15659         * Makefile.am (libltdl/Makefile.am): ...from here, by extracting
15660         the merged rules, and tweaking paths to accomodate the difference
15661         in directory from Makefile.am to libltdl/Makefile.am.
15662         (nobase_dist_pkgdata_DATA): Automake generated installation rules
15663         change timestamps of installed files, so renamed this...
15664         (configauxfiles): ...to this...
15665         (libtoolize): ...substitute it...
15666         (install-data-local): ...install manually, preserving
15667         timestamps...
15668         (install-data-hook): ...and set execute bit as appropriate.
15669         (uninstall-hook): Not forgetting to remove them at uninstall.
15670         (libltdl/Makefile.in): New rule.  Called from...
15671         * bootstrap: ...here to avoid relying on config.status at
15672         bootstrap time.
15673         (auxdir, m4dir): Extract from configure.ac for ease of future
15674         maintenance.  Adjust all references.
15675         (reconfdirs): Call autoreconf for libltdl too -- even
15676         though we don't use it for the build, libltdl/configure and
15677         friends are installed with `libtoolize --ltdl --copy'.
15678         * libtoolize.m4sh: Add files from the installed config master tree
15679         to libtoolize --ltdl project subdirectory.
15680         Diagnose duplicated files when --ltdl is used in an autotooled
15681         project.
15682         It's perfectly fine to run `libtoolize --ltdl --copy' in a tree
15683         that has no configure.ac or configure.in; we want libltdl to be
15684         useful even to projects that don't use autotools themselves.
15685         (libtoolize_flags): Removed.  Changed all callers.
15686         (func_massage_pkgconfig_files): New function.
15687         * tests/standalone.at: New tests for using libltdl without
15688         supporting configury in the parent project.
15689         * tests/testsuite.at: Run them!
15690         * NEWS: Updated.
15691
15692 2005-08-22  Peter Ekberg  <peda@lysator.liu.se>
15693
15694         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Add
15695         forgotten end bracket.
15696
15697         * doc/libtool.texi: Shorten the lines describing the
15698         output from MS dumpbin, and align the columns.
15699
15700         * m4/libtool.m4: Bump serial number.
15701         (LT_PATH_NM): If nm is not found on the path, look for
15702         dumpbin. Then check if $NM responds as dumpbin would
15703         and if not, assume the name lister is BSD nm compatible.
15704         (_LT_CMD_GLOBAL_SYMBOLS): If the name lister uses the
15705         dumpbin interface, adjust the test to find a working
15706         global_symbol_pipe.
15707         * doc/libtool.texi: Document $NM to possibly be MS
15708         dumpbin compatible, and also document the format of the
15709         relevant output from MS dumpbin.
15710
15711 2005-08-21  Gary V. Vaughan  <gary@gnu.org>
15712
15713         * libltdl/Makefile.am: revert mistaken commit.
15714
15715         * tests/template.at [darwin]: Some of these tests result in
15716         unresolved symbols on darwin, so don't run those test on that
15717         host!
15718
15719 2005-08-18  Gary V. Vaughan  <gary@gnu.org>,
15720             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15721
15722         * m4/libtool.m4 (LT_OUTPUT): New macro to generate
15723         libtool before config.status.
15724         (_LT_CONFIG_COMMANDS): If LT_OUTPUT has been invoked, then
15725         generate code in config.status to call config.lt instead of
15726         generating libtool directly.
15727         * doc/libtool.texi (LT_INIT): Document LT_OUTPUT.
15728         * tests/early-libtool.at: New test.
15729         * Makefile.am (TESTSUITE_AT): Updated.
15730         * tests/testsuite.at: Updated.  Define defaults for $ACLOCAL,
15731         $AUTOCONF.
15732
15733 2005-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15734
15735         * TODO: Actually updated now.
15736
15737         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]: Do not
15738         assume `aout' for modern FreeBSD by absence of deprecated
15739         `objformat'.
15740
15741         * m4/libtool.m4 [sun, CC] (_LT_LANG_CXX_CONFIG): Move postdeps
15742         override ..
15743         (_LT_SYS_HIDDEN_LIBDEPS): ..here.
15744         * TODO: Updated.
15745
15746 2005-08-18  Stepan Kasal  <kasal@ucw.cz>
15747
15748         * config/general.m4sh (SP2NL, NL2SP): Simplify.
15749
15750 2005-08-17  Gary V. Vaughan  <gary@gnu.org>
15751
15752         * m4/ltdl.m4 (LTDL_INIT): Fix mismatched parens.
15753
15754 2005-08-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15755
15756         * tests/inherited_flags.at: Store intermediate libtool output
15757         for better debugging.
15758
15759         * tests/link-order.at: Add -no-undefined to LDFLAGS.
15760
15761         * tests/convenience.at, tests/template.at: Change suffix of C++
15762         files to .cpp, for compatibility with MSVC.
15763         Reported by Peter Ekberg <peda@axentia.se>.
15764
15765 2005-08-12  Jeremie LE HEN  <tataz@sitadelle.com>,
15766             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15767
15768         * doc/libtool.texi (Creating object files, Linking libraries):
15769         Update description of library object (.lo) and libtoo library
15770         (.la) files.
15771         (all over): Replace MODE with --mode=MODE in examples.
15772
15773 2005-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15774
15775         * config/ltmain.m4sh (func_source): New function.
15776         (func_mode_execute, func_mode_install, func_mode_link): Use it.
15777         Do not append a dot to a file name to source, it breaks on
15778         cygwin managed mounts and is not necessary anywhere.
15779         Reported by Eric Blake <ebb9@byu.net>.
15780
15781         * config/ltmain.m4sh (func_execute_cmds): New function.
15782         (func_mode_finish, func_mode_install, func_mode_link)
15783         (func_mode_uninstall): Use it.
15784
15785         * tests/defs.m4sh (func_configure): Rename to ..
15786         (func_configure_nofail): this, call from old.
15787         * tests/fcdemo-conf.test, tests/fcdemo-shared.test,
15788         tests/fcdemo-static.test: Use.  Do not fail gratuitously but
15789         SKIP on compilers that look like they could be Fortran 77-only.
15790         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
15791
15792         * config/ltmain.m4sh (mode): Do not initialize, for nicer error
15793         messages.
15794
15795 2005-08-10  Peter Ekberg  <peda@lysator.liu.se>
15796
15797         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Set ac_ext to cpp, not cc.
15798
15799 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15800
15801         * config/ltmain.m4sh (inherited_linker_flags): Backed out broken
15802         patch.
15803
15804 2005-08-08  Peter O'Gorman  <peter@pogma.com>
15805
15806         * config/ltmain.m4sh (inherited_linker_flags): Work when output
15807         is an application too.
15808         Reported by Christopher Egger <Christoph_Egger@gmx.de>
15809
15810 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15811
15812         * m4/libtool.m4 (_LT_PROG_FC, _LT_LANG_FC_CONFIG): New macros
15813         for modern Fortran.
15814         (LT_LANG, _LT_LANG_DEFAULT_CONFIG, _LT_SYS_DYNAMIC_LINKER,
15815         _LT_SYS_HIDDEN_LIBDEPS): Adjusted.
15816         * tests/fcdemo-conf.test, tests/fcdemo-exec.test,
15817         tests/fcdemo-make.test, tests/fcdemo-shared.test,
15818         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
15819         tests/fcdemo/README, tests/fcdemo/configure.ac,
15820         tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
15821         tests/fcdemo/foof.f90, tests/fcdemo/foof2.f90,
15822         tests/fcdemo/foof3.f90, tests/fcdemo/fprogram.f90: New tests for
15823         Fortran.
15824         * tests/convenience.at: Extended.
15825         * Makefile.am, configure.ac: Adjusted.
15826         * NEWS: Updated.
15827
15828         * AUTHORS, HACKING: Updated.
15829
15830 2005-08-05  Albert Chin-A-Young  <china@thewrittenword.com>
15831
15832         * config/ltmain.m4sh (func_mode_link): Ignore errors from expr
15833         when determining if piece-wise linking should be done.
15834
15835 2005-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15836
15837         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Add
15838         missing bit from Christoph's patch.
15839
15840         * m4/libtool.m4 (_LT_LINKER_HARDCODE_LIBPATH, _LT_LINKER_SHLIBS)
15841         (_LT_LANG_CXX_CONFIG): Comment typos.
15842
15843 2005-08-04  Christoph Egger  <Christoph_Egger@gmx.de>
15844
15845         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Change
15846         basename() to base_name() and have it return a pointer to const,
15847         fix compilation warnings.
15848
15849 2005-07-30  Peter Ekberg  <peda@lysator.liu.se>
15850
15851         * m4/libtool.m4 (_LT_PROG_F77): Set it up so that saying F77=no
15852         to configure disables the fortran tests in the testsuite.
15853
15854 2005-07-29  Richard Moseley  <dickie.moseley@virgin.net>
15855
15856         * m4/ltdl.m4 (LTDL_INIT): Handle in addition the new name for
15857         AC_LIST_HEADERS which is _AC_LIST_TAGS.
15858
15859 2005-07-28  Peter Ekberg  <peda@lysator.liu.se>
15860
15861         * libltdl/Makefile.am: Make the LTDLOPEN define controllable
15862         from the configure script.
15863         * m4/ltdl.m4 (LTDL_INIT): Set the LTDLOPEN define according
15864         to libname_spec.
15865
15866         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
15867         not time, for really fresh files. Add sleep 1 calls at
15868         strategic places. Makes the test pass for MinGW.
15869
15870         * m4/libtool.m4 (_LT_LINKER_OPTION): Fix copy-paste bug, it is
15871         the linker that is tested.
15872
15873         * tests/demo-noinst-link.test: $make is empty on MSYS, replace
15874         with $MAKE. Makes the test pass for MinGW.
15875
15876         * config/ltmain.m4sh (func_generate_dlsyms): Properly remove
15877         the fake symbol line ": @PROGRAM@ " from the list of exported
15878         symbols.
15879
15880         * libltdl/loaders/loadlibrary.c (vm_open): Set the error mode so
15881         that no dialog is popped up in case the file given to
15882         LoadLibrary is not a dll.
15883
15884         * config/ltmain.m4sh (func_mode_link) <lib>: Make sure
15885         skipped_export is set to colon if _some_ cmd of
15886         export_symbols_cmds is too long.
15887
15888         * libltdl/ltdl.c: The linker is confused by having one
15889         definition of lt_libltdlc_LTX_preloaded_symbols tagged with
15890         __declspec(dllexport) in ltdl.c and one definition with an
15891         initial value in libltdlcS.c. So, just say extern in ltdl.c.
15892         Fixes the mdemo-exec.test for MinGW.
15893
15894         * config/ltmain.m4sh (func_mode_link) <lib>: Zap duplicate
15895         message "creating reloadable object files..."
15896
15897 2005-07-23 Peter O'Gorman  <peter@pogma.com>
15898
15899         * m4/libtool.m4 (CXX, archive_cmds) [sun]: Add -lCstd, -lCrun
15900         and -lc for c++ builds with Sun C++ and Centerline C++..
15901         Reported by Albert Chin-A-Young <china@hewrittenword.com>
15902
15903 2005-07-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15904
15905         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Fix bogus merge.
15906         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
15907
15908 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15909
15910         * libltdl/Makefile.am (libltdl_la_DEPENDENCIES): Depend on
15911         $(BUILT_SOURCES) as well, so that argz.h gets created through
15912         `make libltdlc.la'.
15913         Reported by Sven Verdoolaege <skimo@liacs.nl>.
15914
15915 2005-07-08  Peter Breitenlohner  <peb@mppmu.mpg.de>
15916
15917         * Makefile.am (install-data-local): Have root own of installed
15918         files (but do not fail, for user installs).
15919
15920 2005-07-08  Bruno Haible  <bruno@clisp.org>
15921
15922         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <postinstall_cmds>
15923         [cygwin,mingw,pw32]: Make DLL executable after installing it.
15924
15925 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15926
15927         * config/ltmain.m4sh (func_mode_install): Do not assume `-f'
15928         needs an argument if the install program is `cp'.  Cleanup
15929         install mode somewhat.
15930         Reported by Juergen Leising <juergen.leising@gmx.de>.
15931
15932 2005-07-03  Thorsten Glaser  <tg@66h.42h.de>
15933
15934         * m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Quieten configure
15935         output for corner cases on some BSDs.
15936         (LT_CMD_MAX_LEN): Another comment cleanup.
15937
15938         * config/ltmain.m4sh (func_extract_archives, func_mode_install),
15939         m4/libtool.m4 (_LT_SETUP, _LT_SYS_DYNAMIC_LINKER, LT_PATH_LD)
15940         (_LT_PATH_LD_GNU, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
15941         Comment language, indentation, and backquote cleanup.
15942         * THANKS: Updated.
15943
15944 2005-07-02  Peter O'Gorman  <peter@pogma.com>
15945
15946         * tests/inherited_flags.at: Use -no-undefined.
15947         Reported by Chris Oxenreider <oxenreid@state.net>
15948
15949 2005-07-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15950
15951         * config/ltmain.m4sh (func_mode_compile, func_mode_link),
15952         m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH, _LT_ENABLE_LOCK):
15953         Remove some unnecessary quotes.
15954
15955         * tests/convenience.at <GCJ>: Fix java test.
15956         Reported by Eric Blake <ericblake@comcast.net>.
15957
15958 2005-07-01  Derek R. Price  <derek@ximbiot.com>
15959
15960         * config/ltmain.m4sh (func_mode_link) <shell wrapper>: Handle
15961         spaces in paths to executed programs.  Quote path in error message.
15962
15963 2005-06-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15964
15965         * THANKS: Updated.
15966
15967 2005-06-28  Stepan Kasal  <kasal@ucw.cz>
15968
15969         * clcommit.m4sh: "grep|sed" can be replaced by mere "sed".
15970         * m4/libtool.m4 (_LT_LIBTOOL_TAGS): Remove unnnecessary "[]".
15971         * m4/lt~obsolete.m4: Use m4_ifndef.
15972
15973 2005-06-27  Stepan Kasal  <kasal@ucw.cz>
15974
15975         * m4/ltsugar.m4 (lt_combine, _lt_combine): Fix default separator.
15976
15977         * m4/ltoptions.m4 (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Replace
15978         AC_FOREACH by a combination of m4_foreach/m4_split/m4_normalize.
15979
15980 2005-06-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15981
15982         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Remove unnecessary workaround
15983         for CVS Automake bug (fixed).
15984         Reported by Stepan Kasal <kasal@ucw.cz>.
15985
15986 2005-06-21  Peter O'Gorman  <peter@pogma.com>
15987
15988         * conig/ltmain.m4sh [darwin]: Accept -arch flag.
15989
15990 2005-06-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15991
15992         * m4/libtool.m4 (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
15993         New macros: save warnings and boilerplate of simple compile/link
15994         tests.
15995         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
15996         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Call.
15997         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION, _LT_COMPILER_C_O, ):
15998         Fail only if nonempty warnings different from default
15999         compile/link.
16000
16001 2005-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16002
16003         * m4/ltsugar.m4 (lt_car, lt_cdr): New macros, clones of
16004         m4_car/m4_cdr with the fixed semantics of Autoconf-2.59c CVS, in
16005         order to work with 2.59.
16006         (lt_combine): Use it.
16007         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
16008
16009 2005-06-11  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>,
16010             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16011
16012         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Loop options only if
16013         nonempty.
16014         * m4/ltsugar.m4 (lt_combine): Don't test against empty quotes,
16015         test against empty arg.  Fixes infinite m4 loop with CVS
16016         Autoconf.
16017
16018 2005-06-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16019
16020         * m4/libtool.m4 (_LT_COMPILER_OPTION, _LT_LINKER_OPTION): No
16021         need for $ECHO here.  Fix sed script syntax to be portable.
16022         This should now put the pic-flag right after the last $*FLAGS
16023         variable again, if any.  Necessary for Fortran AC_FC_SRCEXT.
16024
16025 2005-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16026
16027         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Remove long lines.
16028
16029 2005-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16030
16031         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
16032         _LT_LANG_CXX_CONFIG): PGI also has pgf95.  PGI static flag is
16033         `-Bstatic'.  Remove harmless extra comma from whole_archive
16034         output.
16035
16036 2005-06-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16037
16038         * config/ltmain.m4sh (func_mode_compile): In order to find out
16039         about forbidden characters in output, check with grep after
16040         checking func_quote_for_eval result.  Also, warn instead of fail.
16041         * config/general.m4sh (func_quote_for_eval)
16042         (func_quote_for_expand): Revert SunOS sh bug workaround patch from
16043         2004-12-28 as it triggers bugs in the Tru64 5.1B shell.
16044         Reported by Albert Chin <libtool@mlists.thewrittenword.com> and
16045         Nicolas Joly <njoly@pasteur.fr>.
16046
16047 2005-06-01  Olly Betts <olly@survex.com>  (tiny change)
16048
16049         * libltdl/argz.c (argz_create_sep): Fix typo.
16050
16051 2005-05-31  Peter O'Gorman  <peter@pogma.com>
16052
16053         * config/ltmain.m4sh: Do not add installed static litool libraries
16054         to convenience, they are not convenience libraries.
16055         Reported by Chen-Mou Cheng <chenmou.cheng@gmail.com>
16056
16057 2005-05-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16058
16059         * THANKS: Updated.
16060
16061 2005-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16062
16063         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [aix]:
16064         Fix wrong $ECHO use overlooked in 2005-04-27.  Simplify slightly.
16065
16066         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
16067         _LT_LANG_CXX_CONFIG) [linux]: PGI:
16068         Add $pic_flag to archive_cmds and archive_expsyms_cmds.
16069         Bug reported against LAM by Troy Telford <ttelford@lnxi.com>.
16070
16071 2005-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16072
16073         * THANKS: Updated.
16074
16075 2005-05-06  Gary V. Vaughan  <gary@gnu.org>
16076
16077         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Propogate ltdl directory.
16078
16079 2005-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16080
16081         * Makefile.am (stamp-vcl): Use `diff' instead of `cmp'.
16082
16083 2005-04-30  Gary V. Vaughan  <gary@gnu.org>
16084
16085         Revert the parallel installation changes from November last year:
16086
16087         * libtoolize.m4sh (pkgdatadir, aclocaldir): Substituted from
16088         configure.
16089         (func_copy_all_from_path): Removed.  No longer used.
16090         (func_copy_some_files): Simplify now that nothing is copied from a
16091         list of possible directories now.
16092         (func_scan_files): Remove directory readability check...
16093         (func_nonemptydir_p): ...in favour of a dedicated sanity check
16094         function called from the main body.
16095         (_lt_pkgvdatadir): Set pkgdatadir and aclocaldir appropriately if
16096         this is in the environment.
16097         * configure.ac: Tests for `ln' removed.
16098         (APIVERSION): Removed.
16099         * Makefile.am (pkgvdatadir, nobase_dist_pkgvdata_DATA)
16100         (nobase_pkgvdata_DATA): Renamed to...
16101         (pkgdatadir, nobase_dist_pkgdata_DATA, aclocalfiles): ...these
16102         respectively.
16103         (edit): Adjust for new variable names.
16104         (install-data-local): Don't bother to remove old macro files that
16105         will be overwritten by the installation, and perform a manual
16106         installation of $(aclocalfiles) to preserve timestamps.
16107         (install-exec-hook): Removed.  No need to make versioned links.
16108         (uninstall-hook): No need to remove versioned links, but now we
16109         need to manually remove the manually installed $(aclocalfiles).
16110         * doc/libtool.texi: Remove bogus notes about setting
16111         ACLOCAL_AMFLAGS for versioned libtool installations.
16112         * NEWS: Remove parallel installation item.
16113
16114 2005-04-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16115
16116         * m4/ltdl.m4 (all over): Quote all arguments to AC_DEFINE and
16117         AC_DEFINE_UNQUOTED consistently.  Reported by
16118         Michael Koch  <konqueror@gmx.de>, Riccardo Mottola <zuse@libero.it>,
16119         and Dalibor Topic <robilad@kaffe.org>.
16120
16121         * HACKING: Updated.
16122
16123 2005-04-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16124
16125         * tests/convenience.at: Actually add.
16126
16127         * tests/convenience.at: New.  Test convenience archives.
16128         * Makefile.am, tests/testsuite.at: Adjust.
16129         * tests/testsuite.at: Reorder tests.  Suspend AT_TESTED.
16130         (PREPARE_TESTS): Define EGREP, host, build, LIBTOOL.
16131         (LT_AT_BOOTSTRAP): Fail if autoreconf fails.
16132         (LT_AT_EXEC_CHECK): New macro for execution of $build binaries.
16133         (LT_AT_TAG): New macro to test tag availability or skip test.
16134         * tests/am-subdir.at, tests/duplicate_members.at,
16135         tests/inherited_flags.at, tests/link-order.at,
16136         tests/stresstest.at, tests/template.at: Adjust.  Use LT_AT_TAG,
16137         LT_AT_EXEC_CHECK, AT_KEYWORDS. Use compiler/linker flags
16138         consistently.
16139         * tests/link-order.at: Fix use of AT_DATA, bogus redirection
16140         inside AT_CHECK.
16141         * tests/stresstest.at: Do not use wildcards/regex in symbol files,
16142         they are not portable.  Use -no-undefined on win32.  Fix to ignore
16143         compile/link warnings.
16144
16145         * tests/f77demo/foo.h, tests/f77demo/fooc.c,
16146         tests/f77demo/cprogram.c, tests/mdemo2/main.c, tests/pdemo/foo.h:
16147         Make declarations available.
16148
16149         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: sed 3.02 does
16150         not understand \t in regex.
16151         Reported by Tim Van Holder <tim.vanholder@gmail.com>.
16152
16153         * tests/defs.m4sh (func_configure): Don't run the whole configure
16154         script with -x.
16155
16156         * config/ltmain.m4sh: Audit use of echo vs $ECHO.
16157         Reported by Robert Ögren <lists@roboros.com> and others.
16158
16159         * TODO: Updated.
16160
16161 2005-04-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
16162             Gary V. Vaughan  <gary@gnu.org>
16163
16164         * HACKING, THANKS: Updated.
16165
16166 2005-04-25  David Edelsohn  <dje@watson.ibm.com>
16167
16168         * m4/libtool.m4 (_LT_LINKER_SHLIBS): _LT_TAGDECL(file_list_spec).
16169         * config/ltmain.m4sh (func_mode_link): Change $filelist to
16170         $output.
16171
16172 2005-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16173
16174         * m4/libtool.m4 (_LT_CC_BASENAME): Ignore `compile'.
16175
16176 2005-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16177
16178         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [solaris]:
16179         Update wl for Sun Studio f77/f90/f95.  Fix whole_archive_flag_spec
16180         for cc and f77/f90/f95 to prevent reordering in case we link with
16181         $CC.
16182
16183         * m4/libtool.m4: Audit use of echo vs $ECHO.
16184         * TODO: Update.
16185         Reported by Robert Ögren <lists@roboros.com> and others.
16186
16187 2005-04-23  Gary Kumfert <kumfert@llnl.gov>
16188
16189         * m4/libtool.m4 (_LT_LANG_F77_CONFIG) [aix4, aix5]:
16190         Adjust logic to match the C case: Only disable static if not
16191         on ia64 nor runtimelinking.
16192
16193 2005-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
16194
16195         * Makefile.am, HACKING: Use lt__cd throughout.
16196
16197 2005-04-22  Gary V. Vaughan  <gary@gnu.org>
16198
16199         The FSF are moving offices today.  Changed their contact address
16200         in all files from `59 Temple Place, Suite 330, MA 02111-1307' to
16201         `51 Franklin Street, Fifth Floor, MA 02110-1301'.
16202
16203 2005-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16204
16205         * libtoolize.m4sh (func_scan_files, func_serial,
16206         func_ltmain_update, func_config_update, func_install_update):
16207         Placate AIX sed.
16208
16209 2005-04-19  David Edelsohn  <dje@watson.ibm.com>
16210
16211         * config/ltmain.m4sh (func_mode_link): If command exceeds
16212         max_cmd_len and file_list_spec exists, write list of input files
16213         to temporary file.
16214         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
16215         [aix4,aix5]: Define file_list_spec.
16216
16217 2005-04-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16218
16219         * tests/demo-hardcode.test: Fix typo.
16220
16221 2005-04-17 Alexandre Oliva  <aoliva@redhat.com>,
16222            Peter O'Gorman  <peter@pogma.com>
16223
16224         * config/ltmain.m4sh: Don't add files with the same base name to
16225         an archive; rename duplicates instead.
16226         (func_extract_an_archive): Remove section to deal with duplicate
16227         base names in an archive.
16228         * tests/functests.at: remove.
16229         * tests/duplicate_members.at: new test.
16230         * tests/testsuite.at: Add new test, remove old.
16231         * Makefile.am: Add new test, remove old.
16232
16233 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16234
16235         * tests/demo-hardcode.test [solaris]:  Use dumpstabs if available,
16236         to avoid false failure caused by debug section which contains
16237         command line (Solaris cc).
16238         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
16239
16240 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
16241
16242         * libtoolize.m4sh (func_copy_cb): Fix syntax typo.
16243
16244 2005-04-15  Maciej W. Rozycki  <macro@linux-mips.org>
16245
16246         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Add old_archive_cmds
16247         definition.
16248
16249 2005-04-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16250
16251         * m4/libtool.m4 (_LT_CC_BASENAME): New macro to figure out
16252         $cc_basename.  Skip ccache, distcc, purify, cmdline options,
16253         `$host_alias-' prefix.
16254         (_LT_SETUP, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
16255         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Use.
16256         * NEWS, TODO: Update.
16257
16258 2005-04-15  Gary V. Vaughan  <gary@gnu.org>
16259
16260         * libltdl/configure.ac (AC_OUTPUT): loaders/Makefile is no longer
16261         used.
16262
16263         * Makefile.am (lt__cd, CD_TESTDIR): New make macros to work around
16264         problems with CDPATH in some shells.
16265         (check-local, installcheck-local, clean-local): Use them.
16266
16267 2005-04-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
16268
16269         * bootstrap: Define srcdir for making `commit'.
16270
16271 2005-04-14  Alexandre Oliva  <aoliva@redhat.com>,
16272             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16273
16274         * config/ltmain.m4sh (link mode): Add to tmp_libs paths for
16275         libtool dep libs in reverse order as well.
16276         * Makefile.am, tests/testsuite.at, tests/link-order.at: New test.
16277
16278 2005-04-13  Gary V. Vaughan  <gary@gnu.org>
16279
16280         Since the bootstrap process requires that several of the rules for
16281         files generated in doc and tests already lived in
16282         $top_srcdir/Makefile.am, along with proxy rules in sub-Makefiles,
16283         this changeset consolidates almost everything into the top
16284         Makefile.am, simplifying things considerably:
16285
16286         * doc/Makefile.am, tests/Makefile.am: Removed.  All rules moved...
16287         * Makefile.am: ...to here and adjusted to run from $top_builddir.
16288         Some reformatting to group rules and declarations by purpose, and
16289         simplify with respect to removing much of the make recursion.
16290         Add `doc/PLATFORMS', `doc/fdl.texi' and `doc/notes.texi'.
16291         `defs.in' and `defs.m4sh' are in directory `tests'.
16292         (uninstall-hook): Don't forget to uninstall libtoolize's libltdl
16293         source tree.
16294         * bootstrap: Simplified dirty makefile management, and bootstrap
16295         file creation in light of having only a single pertinent
16296         Makefile.
16297         * configure.ac (CONF_SUBDIRS): Add tests/ prefix to each subdir to
16298         compensate.
16299         (DIST_MAKEFILE_LIST): Adjust.
16300         (AC_CONFIG_FILES): Remove doc/Makefile and tests/Makefile.
16301         * tests/defs.m4sh (LIBTOOL, scripts): Adjust paths.
16302         * tests/cdemo-conf.test, tests/cdemo-exec.test,
16303         tests/cdemo-make.test, tests/cdemo-shared.test,
16304         tests/cdemo-static.test, tests/cdemo-undef.test,
16305         tests/demo-conf.test, tests/demo-deplibs.test,
16306         tests/demo-exec.test, tests/demo-hardcode.test,
16307         tests/demo-inst.test, tests/demo-make.test,
16308         tests/demo-nofast.test, tests/demo-noinst-link.test,
16309         tests/demo-nopic.test, tests/demo-pic.test,
16310         tests/demo-relink.test, tests/demo-shared.test,
16311         tests/demo-static.test, tests/demo-unst.test,
16312         tests/depdemo-conf.test, tests/depdemo-exec.test,
16313         tests/depdemo-inst.test, tests/depdemo-make.test,
16314         tests/depdemo-nofast.test, tests/depdemo-relink.test,
16315         tests/depdemo-shared.test, tests/depdemo-static.test,
16316         tests/depdemo-unst.test, tests/f77demo-conf.test,
16317         tests/f77demo-exec.test, tests/f77demo-make.test,
16318         tests/f77demo-shared.test, tests/f77demo-static.test,
16319         tests/link-2.test, tests/link.test, tests/mdemo-conf.test,
16320         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
16321         tests/mdemo-inst.test, tests/mdemo-make.test,
16322         tests/mdemo-shared.test, tests/mdemo-static.test,
16323         tests/mdemo-unst.test, tests/mdemo2-conf.test,
16324         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
16325         tests/objectlist.test, tests/pdemo-conf.test,
16326         tests/pdemo-exec.test, tests/pdemo-inst.test,
16327         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
16328         tests/suffix.test, tests/tagdemo-conf.test,
16329         tests/tagdemo-exec.test, tests/tagdemo-make.test,
16330         tests/tagdemo-shared.test, tests/tagdemo-static.test,
16331         tests/tagdemo-undef.test, tests/tagtrace.test (func_cd,
16332         func_require): Adjust paths.
16333
16334 2005-04-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16335
16336         * config/general.m4sh, libtool.m4 (_LT_SETUP), tests/defs.m4sh,
16337         tests/functests.at: Fix definition of $Xsed.
16338
16339 2005-04-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16340
16341         Improved Portland support: prelinking of C++ templates and
16342         whole_archive.
16343
16344         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [linux]:
16345         Reinstate formatted whole_archive_flag_spec for PGI compilers.
16346         * config/ltmain.m4sh (func_mode_link), m4/libtool.m4
16347         (_LT_LINKER_SHLIBS): New tag prelink_cmds, to be executed before
16348         linking a program.
16349         (_LT_LANG_CXX_CONFIG) [linux]: Use for pgCC.
16350         (_LT_COMPILER_C_O): conftest might be nonempty, clean up more
16351         thoroughly.
16352
16353         * tests/testsuite.at (LT_AT_BOOTSTRAP): Temporary fix for testing
16354         in-tree libtoolize.
16355
16356         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Only call sed if
16357         necessary while quoting all libtool variables.
16358         Reported by Robert Ögren <lists@roboros.com>.
16359
16360 2005-04-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16361
16362         * tests/Makefile.am: Typo.
16363
16364 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16365
16366         * notes.texi: Platform-specific configuration notes.
16367         * doc/libtool.texi: Include as section.
16368         * bootstrap, doc/Makefile.am: build also as notes.txt and
16369         distribute.
16370
16371 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
16372
16373         Under certain circumstances, not all of the macro files were
16374         copied into the destination directory.  This changeset fixes
16375         that bug:
16376
16377         * libtoolize.m4sh (func_serial_update):  Renamed local variable
16378         `my_update_p' to `my_serial_update_p', and initialise it correctly
16379         even when the destination file is not yet there.
16380         Reported by Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16381
16382 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
16383
16384         * tests/libtoolize.at: New tests for basic libtoolize
16385         functionality and reporting.
16386         * tests/testsuite.at: Call them.
16387         * tests/Makefile.am: Distribute them.
16388
16389         * libtoolize.m4sh (pkgvdatadir): Renamed from this...
16390         (_lt_pkgvdatadir): ...to this.
16391         * tests/testsuite.at (LT_AT_LIBTOOLIZE): The `-I' option is no
16392         longer supported by libtoolize.  Set _lt_pkgvdatadir in the
16393         environment of the invocation instead.
16394
16395 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16396
16397         * tests/template.at: New Autotest tests for C++ with templates.
16398         First test provided by
16399         Markus Christen <markus@igc.phys.chem.ethz.ch>.
16400         * tests/Makefile.am, tests/testsuite.at: Use and distribute.
16401
16402 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
16403
16404         * libtoolize.m4sh (func_serial_update): Replace missing
16405         destination serial calculation line, presumably lost due to a bad
16406         merge.
16407
16408         * libltdl/loaders/Makefile.am: Removed actually.
16409
16410 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
16411
16412         Getting the value of ltdldatafiles from a submake was not
16413         portable, and had problems with GNU make-3.80 at least.  This
16414         changeset pulls the installation rules for libtoolize's copy of
16415         the libltdl sources out of libltdl/Makefile.am so that
16416         ltdldatafiles is defined in the same Makefile that uses it.  Also,
16417         this makes a start at cleaning up libltdl/Makefile.am so that it
16418         is useful in a package that uses `libtoolize --ltdl':
16419
16420         * libltdl/loaders/Makefile.am: Removed entirely.
16421         * libltdl/Makefile.am (dlopen.la, dld_link.la, dyld.la)
16422         (load_add_on.la, loadlibrary.la, shl_load.la): All built from here
16423         now that the loaders submake has gone.
16424         (show-ltdldatafiles): Removed.  No longer required.
16425         (ltdldatadir, ltdldatafiles, install-local): Moved from here...
16426         * Makefile.am (ltdldatadir, ltdldatafiles, install-local): ..to
16427         here.
16428         (libtoolize): Substitute $(ltdldatafiles) directly without calling
16429         make to get the value from libltdl/Makefile.
16430
16431 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
16432
16433         * Makefile.am (libtoolize): Substitute $(nobase_pkgvdata_DATA).
16434         pkgvmacro_DATA is no longer set in the makefile.
16435         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): Use it and, for
16436         consistency, renamed from this...
16437         (func_massage_nobase_pkgvdata_DATA): ...to this.  Adjust all
16438         callers.
16439
16440 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
16441
16442         Fix problems with serial comparison sed scripts, and factor out
16443         common code from similar serial comparison functions:
16444
16445         * libtoolize.m4sh (func_keyword_update): Common code factored out
16446         of func_ltmain_update and func_config_update.
16447         (func_ltmain_update, func_config_update): Adjust, and fix sed
16448         expressions to not use unportable ? modifier.
16449         (func_install_update): New serial number based file updater keyed
16450         off 'scriptversion' variable in install-sh.  Adjust all callers.
16451
16452 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
16453
16454         Most of the hair introduced ostensibly to enable testing of
16455         uninstalled libtoolize isn't necessary if we allow overriding of
16456         the libtool master copy directory:
16457
16458         * configure.ac (pkvmacrodir): No need to substitute this.
16459         * Makefile.am (edit): No need to substitute pkgvmacrodir.
16460         (dist_pkgvdata_DATA): Use nobase_ prefix so that these files are
16461         installed to $(pkgvdatadir)/config.
16462         (pkgvmacro_DATA): Renamed to...
16463         (nobase_pkgvdata_DATA): ...this, so that files are installed to
16464         $(pkgvdatadir)/m4.
16465         (install-data-hook): Adjust.
16466         * libtoolize.m4sh: Remove -I processing.
16467         (func_filename_path_search): No longer required without -I.
16468         Adjust all callers.
16469         (pkgvltdldirs, pkgvmacrodirs): Deleted.
16470         (pkgvdatadir): Allow overriding from the environment so that we
16471         can write tests for uninstalled libtoolize.
16472         (func_serial_update, func_ltmain_update, func_config_update):
16473         Rename srcdirs parameter to srcdir, and don't call the path_search
16474         function anymore.  Adjust all callers.
16475         (--install): Don't blindly copy all config files.
16476
16477 2005-04-01  Mike Stump  <mrs@apple.com>
16478
16479         * m4/libtool.m4 (LT_CMD_MAX_LEN) [netbsd, freebsd, openbsd
16480         darwin, dragonfly]: Use 3/4 of argmax, instead of 1/4.
16481
16482 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16483
16484         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG):
16485         Set $cc_basename.
16486
16487         * HACKING: echo vs $ECHO.
16488
16489 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
16490
16491         * doc/libtool.texi: Minor formatting cleanups.
16492
16493 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
16494
16495         * libtoolize.m4sh: Propogate --debug flag to sub-libtoolizes.
16496
16497         * libtoolize.m4sh: Fix a typo, s/pkgvltdldirs/pkgvdatadirs/.
16498         When using -I to test an uninstalled libtoolize, we need to add
16499         the config subdirectory to the search path so that ltmain.sh can
16500         be found in the source tree.
16501
16502         * libtoolize.m4sh (func_copy_some_files): IFS needs to be set to
16503         path delimiter for all inner loop iterations.
16504         Once a matching file has been copied, no need to keep searching
16505         the path for another -- move on to the next file!
16506
16507         * libtoolize.m4sh: For verbose mode, explain why macro files are
16508         not installed without an AC_CONFIG_MACRO_DIR declaration.
16509
16510 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
16511
16512         As a prerequisite for being able to test an uninstalled libtoolize
16513         for copying files correctly from the source tree, we must know
16514         exactly which files should be copied by the --ltdl option to avoid
16515         accidentally picking up compilation objects and other noise when
16516         $builddir == $srcdir:
16517
16518         * libltdl/loaders/Makefile.am (ltdldatadir, ltdldatafiles)
16519         (install-data-local): Removed...
16520         * libltdl/Makefile.am (ltdldatafiles): ...and consolidated here.
16521         (show-ltdldatafiles): New rule...
16522         * Makefile.am (ltdldatafiles, libtoolize): ...used to substitute
16523         exactly which files are installed by libtoolize --ltdl.
16524         (edit): Move pkgvmacro_DATA substitution expression...
16525         (libtoolize): ...to here.
16526         * libtoolize.m4sh: Use func_copy_some_files() instead of
16527         func_copy_all_from_path() to copy the --ltdl option installed
16528         files.
16529         (pkgvltdldirs): New path variable to search for files installed by
16530         --ltdl option.
16531         (func_massage_pkgvltdl_files): New function to calculate the list
16532         of ltdl installation files.
16533
16534 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
16535
16536         * m4/libtool.m4, m4/ltdl.m4: Indentation and quoting cleanup.
16537
16538 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16539
16540         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Use ${wlarc}
16541         and set to empty when using $LD for linking.  Fixes regression
16542         introduced in 2004-11-17.
16543         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> and
16544         Пухальский Юрий Андреевич <pooh@cryptopro.ru>.
16545
16546 2005-03-21  Gary V. Vaughan  <gary@gnu.org>,
16547             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16548
16549         * m4/libtool.m4 (_LT_SETUP, _LT_LANG_CXX_CONFIG)
16550         (_LT_LANG_F77_CONFIG): For matching compiler names -- Pick only
16551         first word, allow leading white space.
16552         * tests/sh.test: ..and test for missing `*' at end of patterns.
16553
16554 2005-03-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16555
16556         * TODO: Update.
16557
16558 2005-03-20  Peter Ekberg  <peda@lysator.liu.se>
16559
16560         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix5, irix6, nonstopux]:
16561         Test if it is possible to use the -exports_file linker option on
16562         irix with gcc, as the gcc specs file may include a -hidden_symbol
16563         option that is clashing with the -exports_file option.
16564         See this gcc bugzilla entry for further details:
16565         http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15288
16566         * THANKS: Update.
16567
16568 2005-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16569
16570         * tests/demo-nopic.test: Enhance status output
16571         noted by Tom Burger <tvburger@few.vu.nl>.
16572
16573 2005-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16574
16575         * config/ltmain.m4sh, tests/defs.m4sh: Typos.
16576
16577 2005-03-18  Peter O'Gorman  <peter@pogma.com>,
16578             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16579
16580         * m4/libtool.m4: The compiler can be a program name with args, so
16581         always check cc_basename against compiler name and a wildcard.
16582         Also, drop unnecessary quotes in `case' argument.
16583
16584 2005-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16585
16586         * Makefile.am: tests/defs.in depends on config/general.m4sh.
16587
16588         * config/general.m4sh: unconditionally set IFS, and set it
16589         to the one true right sequence: space, tab, newline.
16590         * m4/libtool.m4: remove IFS setting and as_* namespace
16591         infringement.
16592
16593         * m4/libtool.m4 (_LT_CONFIG): Reset IFS to fix failure with ash.
16594
16595         * configure.ac, libltdl/configure.ac: s/##/dnl/ for comments
16596         that are meaningless in configure.
16597         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
16598
16599 2005-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16600
16601         * libltdl/configure.ac: Update version; require Autoconf >= 2.59.
16602
16603         * bootstrap: Allow to override tools.
16604
16605 2005-03-15  Gary V. Vaughan  <gary@gnu.org>
16606
16607         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): New function
16608         to calculate the macro filenames to be copied by libtoolize.
16609         * Makefile.am (edit): Substitute pkgvmacro_DATA.
16610
16611         * bootstrap: Need to generate tests/package.m4 from Makefile.am
16612         before generating tests/testsuite from tests/Makefile.am, or
16613         else bootstrap of a fresh checkout fails.
16614
16615 2005-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16616
16617         * m4/libtool.m4 (_LT_COPYING): Update Copyright year.
16618
16619         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]: Remove MAIN_
16620         dependency when creating shared libraries with Portland pgf77.
16621
16622 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16623
16624         * configure.ac: stamp-vcl is in $top_srcdir, not $top_builddir.
16625
16626 2005-03-12  Per Bothner <per@bothner.com>,
16627             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16628
16629         Allow special characters in source file names.  Will break unless
16630         `-o target' is also given, which must not contain special
16631         characters. En passant, fix source file quoting broken for
16632         cygwin/MSVC:
16633
16634         * config/ltmain.m4sh (func_mode_compile): Use new variable
16635         qsrcfile for quoted source file name for compile $command.  Fix
16636         missing quotes for _c_o lockfile.
16637         * NEWS: Update.
16638
16639 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16640
16641         * config/ltmain.m4sh (func_mode_link): Reword double negation in
16642         error message.
16643         Reported by Jesper Louis Andersen <jlouis@mongers.org>.
16644
16645         * bootstrap: really remove bogus files Makefile tests/Makefile.
16646
16647         * doc/libtool.texi: Replace wicked whiches by thats or other
16648         better-sounding constructs.
16649
16650 2005-03-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
16651
16652         * tests/Makefile (clean-local): Ignore testsuite cleanup
16653         failures.
16654
16655 2005-03-11  Per Bothner  <per@bothner.com>  (tiny change)
16656
16657         * tests/Makefile (clean-local): Only run the testsuite cleanup
16658         if the testsuite has been generated.
16659
16660 2005-03-10  Gary V. Vaughan  <gary@gnu.org>
16661
16662         * libltdl/Makefile.am (install-data-local): Don't force v7 tar
16663         format with the `o' flag in create mode.
16664         Set the umask to 0 when untarring to avoid copied files taking
16665         their mode from the installer's umask.
16666         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
16667         * libtoolize.m4sh (func_copy_cb): Ditto.
16668         Ignore errors from failed `cd' in the tar processes, since we
16669         may be running in dryrun mode.
16670         Reported by Noah Misch <noah@cs.caltech.edu>,
16671                     Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
16672
16673 2005-03-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16674
16675         * libltdl/Makefile.am: $(builddir) is not defined, replace by
16676         `.'.
16677
16678 2005-03-08  Albert Chin-A-Young  <china@thewrittenword.com>
16679
16680         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
16681         [irix*, osf*]: Output -update_registry information to
16682         ${output_objdir} directory, not ${objdir}. ${output_objdir}
16683         will work when a project has a single Makefile and performs
16684         builds in subdirectories. ${objdir} expects the source in
16685         the current directory, breaking single-Makefile builds.
16686
16687 2005-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16688
16689         * tests/stresstest.at: Remove multiple variable definition.
16690
16691         * TODO: Update.
16692
16693         * THANKS: Update.
16694
16695 2005-03-02  Gary V. Vaughan  <gary@gnu.org>
16696
16697         * libtoolize.m4sh (func_copy_cb): Use tar chof to avoid symlink
16698         attacks.
16699         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
16700         (install-data-local): Ditto.
16701
16702 2005-02-27  Gary V. Vaughan  <gary@gnu.org>
16703
16704         In branch-2-0 (and in time, others) ltversion.m4 has a dot
16705         delimited serial number that didn't used to be processed
16706         correctly by libtoolize.  This changeset fixes that, and
16707         leverages those changes to check versions of ltmain.sh and
16708         config.sub, config.guess before overwriting when --force is
16709         not given:
16710
16711         * libtoolize.m4sh: Don't overwrite pkgaux files with --force
16712         unless --install is given too.
16713         (func_serial): Fix underquoting in regexp.
16714         (func_serial_max): New function to compare serial numbers.
16715         (func_serial_update_check): New function factored out of
16716         func_serial_update().
16717         (func_serial_update): Bail if SRCFILE is missing.
16718         Don't display both 'already up to date' and 'use --force to
16719         update' messages for the same file.
16720         Use func_serial_max to cope with `.' delimited serial numbers.
16721         (func_ltmain_update): Use func_serial_update_check and
16722         func_serial_max to do version checking with $package_revision.
16723         (func_config_update): Ditto with $timestamp.
16724
16725 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
16726
16727         * libltdl/Makefile.am (install-data-local):  cd to $(srcdir)
16728         before tarring up the files for installation to
16729         $(DESTDIR)$(ltdldatadir).  Don't remove the destination directory,
16730         since that interacts badly with the multi-Makefile installation.
16731         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
16732
16733 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
16734
16735         I assume that it is okay to have undefined symbols in convenience
16736         libraries that will be used as modules -- the pic objects are
16737         built normally, and are not expected to resolve all their symbols
16738         until they are linked into a library; convenience libraries are
16739         then rolled using 'ar' and 'ranlib' (or equivalent) which also do
16740         not check whether symbols are resolved.  We now build each of the
16741         loaders as a convenience library module under these assumptions,
16742         and link libltdl.la with selected modules, at which time all of
16743         the symbols *are* resolved:
16744
16745         * TODO: Remove item addressed by this changeset.
16746         * libltdl/Makefile.am (lib_LTLIBRARIES): Remove libdlloader.la.
16747         (libdlloader_la_SOURCES): Declaration removed.  Changed all
16748         clients.  Source files..
16749         (libltdl_la_SOURCES): ...added back in here.
16750         (libdlloader_LDFLAGS, libdlloader_la_LIBADD): Removed.
16751         (libltdl_la_LIBADD): Remove libdlloader.la; add $(LTLIBOBJS).
16752         * libltdl/loaders/Makefile.am: Removed all references to
16753         libdlloader.la.
16754
16755 2005-02-25  Gary V. Vaughan  <gary@gnu.org>
16756
16757         * libtoolize.m4sh (func_copy): Split arguments to func_copy_cb
16758         calls across lines so that quote.test doesn't misdiagnose nested
16759         quotes.
16760
16761         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC):
16762         Fix some typos -- s/_LT_AC_TAGVAR/_LT_TAGVAR/g.
16763
16764 2005-02-24  Peter O'Gorman  <peter@pogma.com>
16765
16766         * m4/libtool.m4 (_LT_LINKER_SHLIBS): The Portland group's
16767         compiler does not pass --whole-archive. Move gnu ld check for
16768         the flag to the top so it can be overridden.
16769         (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC): Unset
16770         whole_archive_flag_spec for the portland group's c++ compiler
16771         too.
16772         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
16773
16774 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
16775
16776         * libltdl/Makefile.am (install-data-local): Don't forget about
16777         $(DESTDIR).
16778         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
16779
16780 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
16781
16782         Preserving the installed timestamps for libltdl sources from
16783         `libtoolize --ltdl --copy' is pointless if they are not preserved
16784         from the libtool source tree at install time:
16785
16786         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
16787         (nobase_ltdldata_DATA): Renamed to...
16788         (ltdldatafiles): ...this.
16789         (install-data-local): New rule to install libltdl tree with tar to
16790         preserve timestamps.
16791
16792 2005-02-23  Christoph Egger  <Christoph_Egger@gmx.de> (tiny change)
16793
16794         * config/ltmain.m4sh (func_mode_link): Add -pthread like flags to
16795         inherited_linker_flags.
16796
16797 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
16798
16799         * libtoolize.m4sh (func_copy_cb): self.leg->shoot_off() :-/
16800         Let's not redirect stdout to null when sending tar output to a
16801         pipe.
16802
16803 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
16804
16805         Using `libtoolize --copy --ltdl' was not preserving timestamps, so
16806         parts of the autoconf bootstrap would be rerun spuriously after
16807         the files had been copied into the source tree:
16808
16809         * libtoolize.m4sh (TAR): New default tar command.
16810         (func_copy_cb): Move the core copying internals to here, using
16811         $TAR to transfer files if possible when --copy was specified.
16812         (func_copy): Adjust to call func_copy_cb.
16813         * TODO: Remember to refactor this fix in due course.
16814         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
16815
16816 2005-02-21  Peter O'Gorman  <peter@pogma.com>
16817
16818         * config/ltmain.m4sh (func_extract_archives) [darwin]: This didn't
16819         actually work on a real fat archive, should do now.
16820         * tests/functests.at [darwin]: remove darwin fat tests which
16821         did not actually work.
16822
16823 2005-02-07  Peter O'Gorman  <peter@pogma.com>
16824
16825         * config/ltmain.m4sh: Add -pthread like flags when linking
16826         executables too.
16827         Reported by Andreas Schwab <schwab@suse.de>
16828
16829 2005-02-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16830
16831         * config/ltmain.m4sh (func_mode_link): Allow five digits in
16832         version-info.
16833
16834         * NEWS: s/Linux/GNU &/.
16835
16836 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16837
16838         * tests/Makefile.am, tests/testsuite.at, tests/stresstest.at:
16839         New test.  Stresses several combinations of link flags and
16840         path specifications.  Uses several data types to test linkage
16841         against symbols in all kinds of (e.g., ELF) sections.
16842
16843 2005-02-03  Reid Spencer  <reid@x10sys.com>,
16844             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16845
16846         * config/ltmain.m4sh (func_generate_dlsyms): Fix broken subdir
16847         path computation, exposed by using `-dlopen self'.  Fix broken
16848         sed script exposed by additionally using `-export-symbols FILE'.
16849
16850 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16851
16852         * THANKS: Update.
16853
16854         * THANKS: Update.
16855
16856 2005-02-03  Peter O'Gorman  <peter@pogma.com>
16857
16858         * config/ltmain.m4sh [darwin]: Don't add installed libs to
16859         temp_rpath when building executables on darwin, or other systems
16860         which use hardcode_automatic. It may break our wrapper scripts.
16861
16862 2005-02-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16863
16864         * config/getopt.m4sh (func_version, func_usage, func_help):
16865         Exit with nonzero status on write failures.
16866         * config/ltmain.m4sh (func_mode_help, func_config, func_features):
16867         Ditto.
16868
16869         * tests/sh.test: Check for preferred function definition layout.
16870
16871 2005-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16872
16873         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
16874         [pw32, freebsd3.[01], freebsdelf3.[01]]:  Fix [] quoting.  Should
16875         fix various spurious failures.
16876         (_LT_LINKER_SHLIBS) [linux with GNU ld < 2.11, aix4.[012]*]:
16877         Ditto.
16878         (_LT_LANG_CXX_CONFIG) [aix4.[012]*, freebsd[12], solaris2.[0-5]]:
16879         Ditto.
16880         (_LT_LANG_GCJ_CONFIG): Ditto.
16881
16882         * tests/Makefile.am: Add `atconfig' to DISTCLEANFILES.
16883
16884         * clcommit.m4sh: Test whether the shell understands `read -r'.
16885         Use as `$read_r' if available, so `\' is preserved in commit
16886         notices.
16887
16888         * HACKING (Editing `.m4sh' Files): Document preferred function
16889         header layout.
16890         * config/ltmain.m4sh (func_win32_libid, func_infer_tag)
16891         (func_generate_dlsyms, func_extract_an_archive)
16892         (func_extract_archives): Adjust to fit.
16893
16894 2005-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16895
16896         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unicos 9 sed rejects
16897         empty parentheses as in 's/x\(\)/\1/'.
16898         (_LT_COMPILER_PIC) [unicos*]: wl=-Wl,.
16899         * tests/sh.test: Not all sed's like '/.*\n.*/' (Unicos 9 sed
16900         loops endlessly).
16901
16902         * tests/quote.test: Match link  quoting against `"$wl"', not
16903         `-Wl,'.
16904
16905         * tests/quote.test: Check for `--no-reexec' in $1 to avoid one
16906         reexec.
16907
16908         * m4/libtool.m4 (_LT_COMPILER_C_O): _LT_TAGDECL(lt_compiler_c_o),
16909         not _LT_DECL, since this is tag-dependent.
16910
16911         * config/ltmain.m4sh, m4/libtool.m4: Change `( cmd ) 2>/dev/null'
16912         to  `{ cmd; } 2>/dev/null', when cmd has no side effects and might
16913         be a builtin.  Note that it is unspecified whether cmd will run
16914         within a subshell (e.g. Bourne shells) or within the current shell
16915         (most modern shells).
16916
16917 2005-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16918
16919         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [linux]:
16920         Update for Intel Compiler icc/icpc/ifort: add -i_dynamic and
16921         -nofor_main, if necessary.  Simplify logic somewhat.
16922
16923 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16924
16925         * tests/Makefile.am: also re-export CPP, CXXCPP, and the value of
16926         SHELL as CONFIG_SHELL.
16927         Reported by Heinz Salzmann <heinz.salzmann@micronas.com>.
16928
16929 2005-01-26  Craig Dooley  <xlnxminusx@gmail.com>,
16930             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16931
16932         * NEWS, m4/libtool.m4, config/ltmain.m4sh [dragonfly]:
16933         Add support for DragonFly.
16934
16935 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16936
16937         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Work around pdksh
16938         positional parameter expansion bug.
16939
16940 2005-01-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16941
16942         * config/ltmain.m4sh: Fix endless loop in cmdline parsing.
16943
16944 2005-01-25  Albert Chin-A-Young  <china@thewrittenword.com>
16945
16946         * config/ltmain.m4sh (func_mode_link) [irix]: Preserve processor
16947         option for SGI Compiler (-r[0-9][0-9]*).
16948
16949 2005-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16950
16951         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Define Bourne and XSI
16952         variants of new function func_stripname for stripping literal
16953         prefixes and suffixes.
16954         * config/ltmain.m4sh (all over): Use func_stripname.
16955
16956         * tests/defs.m4sh: Extract $build from $LIBTOOL.
16957         (func_configure): Pass --host if $host != $build.
16958         (func_exec): Try executing cross-compiled binaries (e.g. i686 ->
16959         i386), but SKIP rather than FAIL.
16960         * tests/depdemo-relink.test: Do not try to access possibly non-
16961         existent files.  SKIP rather than FAIL or PASS falsely when
16962         cross-compiling.
16963
16964         * m4/libtool.m4 (_LT_SETUP) [mingw, cygwin, pw32, os2]:
16965         Add _LT_DECLs for host_os, build_alias, build and build_os.
16966         host_os and build were used in a few occasions in ltmain.m4sh
16967         and affect above-mentioned systems, the others are added for
16968         symmetry and in order to be able to detect cross-compiling.
16969
16970 2005-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16971
16972         * libltdl/Makefile.am: Add $(AM_LDFLAGS) to all per-target
16973         variables *_LDFLAGS as per CVS Automake semantic change.
16974
16975 2005-01-16  Peter O'Gorman  <peter@pogma.com>
16976
16977         * config/ltmain.m4sh (func_mode_link): Don't pass through
16978         compiler-like thread flags when using $LD to do the linking.
16979         Use compiler_flags instead.
16980         Reported by Mark_Andrews@isc.org.
16981
16982         * m4/libtool.m4 (LT_CMD_MAX_LEN) [osf]: On Tru64 there could
16983         be a kernel panic when testing the maximum command line length
16984         if exec_disable_arg_limit=1. Don't do the tests to figure it
16985         out on *-osf*.
16986         Reported by Dr. Hans Ekkehard Plesser
16987         <hans.ekkehard.plesser@umb.no>
16988
16989 2005-01-14  Guido Draheim  <guidod-2003-@gmx.de>  (tiny change)
16990
16991         * m4/libtool.m4 (AC_PROG_SED): Don't break test loop early.
16992
16993 2005-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16994
16995         * TODO: Update.
16996
16997         * libltdl/ltdl.c: Whitespace cleanup.
16998
16999         * config/ltmain.m4sh: New option `--verbose'/`-v' to enable
17000         override of `--silent'.  Verbose is the default behavior.
17001         * doc/libtool.texi (Invoking libtool): Document it.
17002
17003         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: While "parsing"
17004         /etc/ld.so.conf, skip comments.
17005         Reported by Jens Elkner <elkner@linofee.org>.
17006
17007 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17008
17009         * libltdl/libltdl/lt__glibc.h: Move all exported slist
17010         symbols into the lt__* namespace.
17011         * libltdl/libltdl/lt__private.h, libltdl/libltdl/slist.h:
17012         Adjust includes.
17013
17014 2005-01-10  Peter O'Gorman  <peter@pogma.com>
17015
17016         * config/ltmain.m4sh (func_mode_link): Fix
17017         inherited_linker_flags so it puts it on the link line when
17018         linking shared libraries as well as when linking executables.
17019         * tests/inherited_flags.at: test inherited_linker_flags.
17020         * tests/Makefile.am: Add test.
17021         * tests/testsuite.at: Add test.
17022         Reported by: Albert Chin-A-Young <china@thewrittenword.com>
17023
17024 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17025
17026         * tests/sh.test: After `set dummy [...]', check for `shift'
17027         within the same and following line.
17028         * config/ltmain.m4sh (func_enable_tag, func_mode_install)
17029         (func_mode_link): Sprinkle `shift's all over to conform to this.
17030
17031 2005-01-09  Gary V. Vaughan  <gary@gnu.org>
17032
17033         * HACKING (Editing 'ChangeLog'): Follow the GCS with respect to
17034         attributions, and mention how to handle tiny changes.
17035         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
17036
17037         * ChangeLog.2004: Trim 2005 entries.
17038         * ChangeLog: Add missing entries.
17039
17040 2005-01-08  Gary V. Vaughan  <gary@gnu.org>
17041
17042         * ChangeLog: Move 2004 change logs from here...
17043         * ChangeLog.2004: ...to here.
17044
17045         * m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
17046         m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4: RMS says,
17047         'I think the [license of autoconf macro files] should be:
17048         # This file is free software; the Free Software Foundation
17049         # gives unlimited permission to copy and/or distribute it,
17050         # with or without modifications, as long as this notice is
17051         # preserved.'.
17052
17053         * ChangeLog: Reformatting.
17054         * HACKING: Fix section numbering.
17055         (Editing 'ChangeLog'): New notes on ChangeLog entry format.
17056
17057 2005-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17058
17059         * tests/am-subdir.at tests/testsuite.at (AT_BOOTSTRAP,
17060         AT_LIBTOOLIZE, AT_CHECK_LIBTOOLIZE): Rename to ...
17061         (LT_AT_BOOTSTRAP, LT_AT_LIBTOOLIZE, LT_AT_CHECK_LIBTOOLIZE):
17062         ...and make use of new names.
17063
17064 2004-12-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17065
17066         * config/getopt.m4sh (func_version, func_usage, func_help):
17067         Use `$SED -n' instead of `$SED RANGE {..}; d' as AIX sed cannot
17068         handle the latter.
17069         (func_help): start autoconf and automake in subshells to avoid
17070         error messages from ash or Bourne shell if not available.
17071
17072 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17073
17074         * config/general.m4sh (func_quote_for_eval): Move backslash to
17075         beginning of character class, to work around old Bash bug.
17076         (func_quote_for_expand): Also test to avoid unnecessary fork.
17077
17078 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
17079             Gary V. Vaughan <gary@gnu.org>
17080
17081         * Makefile.am, bootstrap, clcommit.m4sh, libtoolize.m4sh,
17082         config/ltmain.m4sh: Replace `set --' with `set dummy [...]; shift'
17083         for portability.
17084         * tests/sh.test: Test for this.
17085
17086 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17087
17088         * libtoolize.m4sh, config/ltmain.m4sh (most functions): New
17089         variable $opt_debug is either `:' or `set -x' depending on
17090         --debug.  Execute at most function entries to cater for ksh which
17091         resets `-x'.
17092         * tests/defs.m4sh: Ditto for VERBOSE=debug.
17093
17094         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
17095         _LT_TAGVAR missing for `fix_srcfile_path'.
17096         [sysv4, sysv5]: _LT_TAGVAR missing for
17097         `export_dynamic_flag_spec'.
17098
17099         * doc/libtool.texi (all over): Use @option and @command.
17100         Some more minor formatting updates, typos.
17101
17102         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix variable quoting;
17103         allows lt_ECHO to match --fallback-echo again.
17104
17105         * config/ltmain.m4sh (func_extract_archives): Not all shells grok
17106         `read -r' (unnecessary in this case).
17107         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
17108
17109         * config/general.m4sh: New variable quote_scanset...
17110         (func_quote_for_eval, func_quote_for_expand): ...use it to work
17111         around SunOS ksh `case' backslash-escaping bug: protect character
17112         class by variable expansion.
17113         Reported by Alexander Kurz <alexander.kurz@qsc.de>.
17114
17115         * tests/quote.test: Restart under the correct shell (the one
17116         $ECHO was computed for).
17117
17118 2004-12-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17119
17120         * libltdl/lt__dirent.c: Include lt__private.h.
17121         * libltdl/libltdl/lt__private.h: Include lt__strl.h.
17122
17123 2004-12-20  Peter O'Gorman  <peter@pogma.com>
17124
17125         * config/ltmain.m4sh (func_extract_archives)
17126         (func_extract_an_archive): On darwin, uniq can not take the flags
17127         -cd together, thanks to Ralf for the fix, also ar does not accept
17128         N, so we use the fact that ar x libfoo.a foo.o will always extract
17129         the first foo.o in the archive and we then delete foo.o from the
17130         archive, which will also delete only the first foo.o, then rinse
17131         and repeat. Also add markers for the testuite.
17132         * m4/libtool.m4 (_LT_CONFIG): Add a marker so that we can use a
17133         sed expression to find the shell functions in libtool.
17134         * tests/functests.at: Test this feature.
17135         * tests/testsuite.at: Add the test.
17136         * tests/Makefile.am: Add the test.
17137
17138 2004-12-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17139
17140         * libtoolize.m4sh: Install `install-sh' as well, needed for
17141         configure.
17142         * Makefile.am, Makefile.maint: Install, update it.
17143         * NEWS, doc/libtool.texi (Distributing): Document it.
17144         Reported by Ross Boylan <ross@biostat.ucsf.edu>.
17145
17146         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Add '${wl}-z
17147         ${wl}text' to archive_cmds and archive_expsyms_cmds.  I.e., do not
17148         allow nopic in shared libraries.
17149
17150         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Change
17151         no_undefined_flag back to ' -z defs'.  Problems with linking
17152         against libgcc.a will have to be resolved differently.
17153
17154         * tests/demo-nopic.test [solaris, sunos]: Skip test.
17155
17156 2004-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17157
17158         * libtool.m4 [linux] (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG):
17159         Match icpc* and ecpc* (ia64 version of icpc) instead of only icpc.
17160
17161         * libltdl/lt__dirent.c (opendir) [mingw]: Fix write of constant
17162         strings past end of buffer.
17163         (opendir, readdir): Fix read past end of buffer.
17164
17165 2004-12-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17166
17167         * HACKING: Update list of non-Libtool-owned files.
17168
17169 2004-12-17  Akim Demaille <akim@epita.fr>
17170
17171         * libtoolize.m4sh (func_copy_all_from_path): Remove spurious eval.
17172
17173 2004-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17174
17175         * libltdl/ltdl.c (trim): Return error rather than do bogus
17176         null pointer arithmetic when parsing a malformed .la file.
17177
17178 2004-12-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17179
17180         * libltdl/lt__strl.c, libltdl/libltdl/lt__strl.h: New files to
17181         emulate strlcat and strlcpy, which support size-bounded string
17182         copying and concatenation for improved security.
17183         * libltdl/Makefile.am: Optionally build source files
17184         libltdl/lt__strl.c and libltdl/libltdl/lt__strl.h.
17185         * m4/ltdl.m4 (LTDL_INIT): Add checks for strlcat and strlcpy.
17186
17187 2004-12-13  Albert Chin-A-Young  <china@thewrittenword.com>
17188
17189         * libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
17190         Append -G to link command-line on AIX to honor -brtl on
17191         command-line (runtime linking). Already done for IBM C/C++
17192         compilers.
17193
17194 2004-12-12  Patrick Welche <prlw1@newn.cam.ac.uk>
17195
17196         * configure.ac: Fix aclocaldir to use ${datadir}, not ${prefix}.
17197         Necessary for removal of old libtool.m4 files.
17198
17199 2004-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17200
17201         * config/ltmain.m4sh (func_extract_archive): Send stderr of $NM
17202         to /dev/null.
17203         Reported by Martin Waitz <tali@admingilde.org>.
17204
17205 2004-12-09  Albert Chin-A-Young  <china@thewrittenword.com>
17206
17207         * config/ltmain.m4sh: Preserve -model [arg] option, used
17208         with the Tru64 UNIX C++ compiler. This option selects the
17209         layout of C++ classes, name mangling, and exception handling.
17210
17211 2004-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17212
17213         * config/ltmain.m4sh (func_mode_finish) [solaris]: Fix [] escaping
17214         bug.
17215
17216         * config/ltmain.m4sh (all over the map): Make use of func_basename
17217         and func_dirname in most occasions.
17218
17219         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL, _LT_PROG_XSI_SHELLFNS): New
17220         macros to detect at `configure' time whether the shell supports
17221         some XSI extensions and to copy appropriate versions of new shell
17222         functions into `libtool' through `config.status'.  Copied
17223         functions are Bourne and XSI variants of func_basename,
17224         func_dirname (a variant of `dirname' suitable for libtool).
17225         (_LT_SETUP): Require _LT_CHECK_XSI_SHELL.
17226         (_LT_CONFIG):  Use _LT_PROG_XSI_SHELLFNS to insert into `libtool'
17227         at marker.
17228
17229         * config/ltmain.m4sh: Set marker for insertion of shell functions.
17230
17231         * config/general.m4sh (func_quote_for_eval): Only fork if the
17232         substitution matches.
17233
17234 2004-12-03  Gary V. Vaughan  <gary@gnu.org>
17235
17236         * TODO: Paste Peter's summary of the TODO thread starting at
17237         http://lists.gnu.org/archive/html/libtool/2004-11/msg00130.html.
17238
17239 2004-12-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17240
17241         * config/ltmain.m4sh: Remove code which is no longer needed
17242         now that temp_rpath only contains fully-qualified elements.
17243
17244 2004-11-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17245
17246         * config/general.m4sh: basename sed-subst is anchored and thus
17247         does not need the `g' flag.
17248         (func_quote_for_eval): Return both the possibly double-quoted
17249         backslashified as well as only the backslashified argument.
17250         * config/ltmain.m4sh (func_mode_link): Use both return values,
17251         to save another sed_quote_subst application per cmdline arg.
17252
17253 2004-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17254
17255         * config/ltmain.m4sh (func_lalib_p): Update function
17256         description.
17257         (func_lalib_unsafe_p): New function with same functionality but
17258         written without forks; this function is safe to use for cases
17259         where the argument either does not exist or is required to be a
17260         lalib for correct operation.
17261         * NEWS: Mention the fact that stdin is not to be used.
17262         * config/ltmain.m4sh (func_mode_execute, func_mode_install)
17263         (func_mode_link): Use func_lalib_unsafe_p where appropriate.
17264         (func_mode_execute): For the program wrapper, use
17265         func_ltwrapper_p instead of func_lalib_p.
17266
17267         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Treat linux-dietlibc with
17268         the `diet' compiler wrapper (as opposed to the `diet-dyn' wrapper)
17269         as a static-only platform.
17270         * NEWS: Updated.
17271
17272         * libltdl/ltdl.c (trim): Use memcpy instead of strncpy here, to
17273         avoid problems with non-conforming strncpy.  This is safe here.
17274
17275         * m4/ltdl.m4 (LT_LIB_DLLOAD): Define HAVE_LIBDLLOADER if we
17276         have a dlloader to preload.
17277         * libltdl/ltdl.c (lt_dlinit): Only preload if HAVE_LIBDLLOADER, only
17278         declare preloaded_symbols then.  Fixes libltdl on static platforms.
17279         * NEWS: Updated.
17280
17281 2004-11-29  Gary V. Vaughan  <gary@gnu.org>
17282
17283         Add a search path option to libtoolize so that we can run it from
17284         the testsuite without pulling in the last installed macros and
17285         ltdl sources:
17286
17287         * libtoolize.m4sh:  Add a -I option to change libtoolize's search
17288         path for macro files, and libltdl master sources.
17289         (pkgvdatadir, pkgvmacrodir): Renamed...
17290         (pkgvdatadirs, pkgvmacrodirs): ...as they can now contain a ':'
17291         delimited list of directories.  Adjust all callers.
17292         (func_copy_all_from_path): New function to search a ':' delimited
17293         search path for a directory to copy.
17294         (func_serial_update, func_ltmain_update, func_config_update): New
17295         first parameter is a filename to search for.  srcdir parameter can
17296         now be a ':' delimited search path.  Adjust all callers.
17297         (func_copy_some_files): Ditto.
17298         Put srcfile_spec first in parameter list for consistency with
17299         other functions.  Adjust all callers.
17300         (func_copy_cb): func_copy adapter function to call func_copy
17301         correctly from func_copy_some_files.
17302         (func_filename_path_search): Return the full path to the first
17303         occurence of a named file found in a list of directories.
17304         * tests/testsuite.at (LIBTOOLIZE): Wrap exported LIBTOOLIZE
17305         initialisation in PREPARE_TESTS diversion to stop it being
17306         discarded when testsuite is generated.
17307         (AT_LIBTOOLIZE): Factor out libtoolize calls,
17308         and set search path to find macros and libltdl source files from
17309         the source tree.
17310         (AT_CHECK_LIBTOOLIZE): Test it.
17311         (AT_BOOTSTRAP): Adjust.  Split out call to make.
17312         * tests/am-subdir.at: Call make explicitly.
17313         (Makefile.am): Fix typo in ACLOCAL_AMFLAGS,
17314
17315 2004-11-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17316
17317         * config/ltmain.m4sh (func_mode_link): $dlsymsobj is really
17318         $symfileobj, bug exposed only in the static preloading case
17319         (symfileobj is created, but not linked into output).
17320
17321         * tests/demo-relink.test, tests/depdemo-relink.test: SKIP, don't
17322         FAIL if no shared libs available in demo/.  Do not try to access
17323         nonexistent files.
17324
17325         * libltdl/loaders/loadlibrary.c: Remove unneeded
17326         file-static variable.
17327
17328 2004-11-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17329
17330         * config/ltmain.m4sh: Add fully-qualified paths to temp_rpath
17331         rather than unqualified paths in order to avoid possible errors
17332         when computing the fully-qualified path later.
17333
17334 2004-11-24  Jeff Squyres  <jsquyres@lam-mpi.org>
17335
17336         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
17337         (_LT_LANG_CXX_CONFIG) [linux]: Support for Portland Group (aka
17338         "pgi") compilers.
17339         * NEWS, THANKS: Updated.
17340
17341 2004-11-24  Gary V. Vaughan  <gary@gnu.org>
17342
17343         * Makefile.am: Move Autotest rules from here...
17344         * tests/Makefile.am: ...to here.
17345         * bootstrap: Adjust.  Also, create temporary Makefile from
17346         tests/Makefile.am so that bootstrap can create the Autotest
17347         testsuite.
17348
17349 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
17350
17351         If the user's login shell is something crazy like, oooh,
17352         /bin/tcsh, trying to execute bourne shell helper scripts with
17353         the `$SHELL /path/to/helper $helper_flags' idiom incase the
17354         execute bits were lost by say, eeer, cvs, is gonna blow up in
17355         our faces.  This changeset tries to save these people from
17356         their shells^H^H^H^H^H^H^H^H^Hmselves :->
17357
17358         * tests/defs.m4sh (SHELL): Move definition from here...
17359         * config/general.m4sh (SHELL): ...to here.
17360
17361 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
17362
17363         The ltdl.h header is the published interface to libltdl, and
17364         is thus not installed to $prefix/include/libltdl.  It has always
17365         been used with `#include <ltdl.h>', so move just that one file
17366         back to where it was before:
17367
17368         * libltdl/libltdl/ltdl.h: Moved from here...
17369         * libltdl/ltdl.h: ...to here.
17370         * libltdl/Makefile.am: Adjust.
17371
17372 2004-11-23  Peter O'Gorman  <peter@pogma.com>
17373
17374         Do not require that libtoolize --ltdl=/some/path end in libltdl.
17375         Move most libltdl headers to libltdl/libltdl to allow
17376         `#include <libltdl/ltdl.h>' to always work:
17377
17378         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for includes
17379         in the new location.
17380         * libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
17381         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
17382         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
17383         libltdl/libltdl/lt_system.h, libltdl/libltdl/ltdl.h,
17384         libltdl/libltdl/slist.h: Added files, moved from libtdl/.
17385         * libltdl/lt__alloc.h, libltdl/lt__dirent.h, libltdl/lt__glibc.h,
17386         libltdl/lt__private.h, libltdl/lt_dlloader.h, libltdl/lt_error.h,
17387         libltdl/lt_system.h, libltdl/ltdl.h, libltdl/slist.h: Removed, moved
17388         to libltdl/libltdl.
17389
17390 2004-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17391
17392         * doc/libtool.texi (LT_INIT): s/libtool 1.6/libtool 2.0/.
17393         (Invoking libtoolize): Fix typo.
17394
17395 2004-11-22  Gary V. Vaughan  <gary@gnu.org>
17396
17397         * config/ltmain.m4sh (func_mode_install): Now that func_mktempdir
17398         has been improved, the default directory template is perfectly
17399         fine.
17400
17401         * doc/libtool.texi (Invoking libtoolize): Improve documentation
17402         for use of ACLOCAL_AMFLAGS and AC_CONFIG_MACRO_DIR.
17403
17404 2004-11-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17405
17406         * m4/libtool.m4 (_LT_TAG_COMPILER): Document that with_gcc is
17407         tag-dependent.
17408
17409         * m4/libtool.m4, tests/demo-nopic.test: Undo bogus commit.
17410
17411         * config/ltmain.m4sh (func_mode_link), tests/objectlist.test:
17412         Make sure the argument to `-objectlist' may contain spaces.
17413
17414 2004-11-19  Gary V. Vaughan  <gary@gnu.org>
17415
17416         * config/m4general.m4sh, config/mailnotify.m4sh,
17417         clcommit.m4sh: Updated from cvs-utils--tla--1.0 to allow
17418         parallel commits, and use safer tmpfiles.
17419
17420 2004-11-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17421
17422         * doc/libtool.texi (Libltdl interface): Typos.
17423
17424         * doc/libtool.texi (Libltdl interface): Document public macros
17425         LT_PATHSEP_CHAR, LT_DIRSEP_CHAR, use in path descriptions.
17426
17427 2004-11-18  Daniel Reed  <djr@redhat.com>
17428
17429         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: Interpret
17430         `include' statements in toplevel ld.so.conf file.
17431
17432 2004-11-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17433
17434         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
17435         tag-protect setting of ld_shlibs.
17436
17437 2004-11-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17438
17439         * doc/libtool.texi (Libltdl interface): The path separator
17440         is system-dependent.
17441
17442         * doc/libtool.texi (Linking static libraries): Typo.
17443
17444         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
17445         [aix4/aix5 !ia64]: Set whole_archive_flag_spec to '$convenience'
17446         so convenience libs are really added to the link cmdline.
17447
17448 2004-11-17  Mats Rynge  <rynge@isi.edu>
17449
17450         * libtool.m4 [linux]: Use only the CC basename in case statment
17451         when checking for icc/ecc.  Allows for setting CC to the full path
17452         to the compiler.
17453
17454         * libtool.m4 [solaris]: Added missing 'with linker' flags to
17455         -z allextract ... -z defaultextract flags
17456
17457 2004-11-14  Gary V. Vaughan  <gary@gnu.org>
17458
17459         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Typo: s/--rpath/-rpath/g.
17460         (_LT_LANG_CXX_CONFIG): Ditto.
17461
17462         * configure.ac (APIVERSION): New substituted variable.
17463         (pkgvdatadir): Ditto.  Versioned data directory.
17464         (pkgvmacrodir): Ditto.  Versioned aclocal directory.
17465         (LN): New check for LN command.
17466         * Makefile.am (aclocal_DATA): Replaced with...
17467         (pkgvmacro_DATA): ...this.
17468         (install-data-local): Remove old shared resources.
17469         (install-exec-hook): Make versioned links to executables.
17470         (uninstall-hook): Remove versioned files.
17471         * libltdl/Makefile.am (ltdldatadir): Redefine in terms of
17472         pkgvdatadir.
17473         * libltdl/loaders/Makefile.am (ltdldatadir): Ditto.
17474         * libtoolize.m4sh: Copy macro files from versioned macro directory
17475         instead of shared aclocal directory.
17476         * doc/libtool.texi: Document it.
17477         * NEWS: Updated.
17478
17479 2004-11-10  Gary V. Vaughan  <gary@gnu.org>
17480
17481         From James Henstridge <james@jamesh.id.au>:
17482         * m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4: Added commented out
17483         empty macro definitions to match each AU_DEFUN to help aclocal
17484         from automake-1.4 regexps find the right libtool macro files.
17485
17486 2004-11-10  James E Wilson  <wilson@specifixinc.com>,
17487             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17488
17489         * config/ltmain.m4sh (func_mode_link), tests/Makefile.am,
17490         Fix error message with `-objectlist' file that does not exist.
17491         * tests/objectlist.test:  New test for this.
17492
17493         * Makefile.am: config/ltmain.sh is generated by
17494         config/ltmain.m4sh.
17495
17496 2004-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17497
17498         * doc/libtool.texi (Compile mode, Link mode,
17499         Libltdl interface, Test descriptions, libtool script
17500         contents): Some quote cleanup, more use of texinfo types.
17501
17502         * doc/libtool.texi (libtool script contents):
17503         echo is now ECHO; mention argument restriction.
17504
17505         * doc/libtool.texi (Multiple dependencies): Minor rewording.
17506
17507         * doc/libtool.texi (User defined module data, References):
17508         indentation and word-wrap cleanup.
17509
17510         * doc/libtool.texi (all over): White space cleanup:
17511         two spaces at start of sentence, no TABs.
17512
17513 2004-11-09  Gary V. Vaughan  <gary@gnu.org>,
17514             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17515
17516         * doc/libtool.texi (libtool script contents): Fix description
17517         of need_lib_prefix.
17518
17519 2004-11-08  Peter Ekberg  <spam.protected>
17520
17521         * config/ltmain.m4sh (func_mode_link): forward thread
17522         related flags to dependent applications and libraries
17523         by adding them to `inherited_linker_flags'.
17524
17525 2004-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17526
17527         * m4/ltoptions.m4: Change all references of LT_LIBTOOL_INIT
17528         to LT_INIT.
17529
17530 2004-11-05  Peter Ekberg  <spam.protected>
17531
17532         * ltmain.m4sh (cwrappersource): clean up other warning on MinGW.
17533
17534 2004-11-04  Bernhard Fischer  <spam.protected>,
17535             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17536
17537         * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS), m4/ltoptions.m4
17538         (_LT_SET_OPTIONS), README, README.alpha: Typos.
17539
17540 2004-11-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17541
17542         * libltdl/ltdl.c (parse_dotla_file): Fix memleak.
17543
17544         * ltmain.m4sh (cwrappersource): Cast isalpha arguments correctly.
17545
17546 2004-11-03  Peter Ekberg  <spam.protected>
17547
17548         * ltmain.m4sh (cwrappersource): clean up warnings and
17549         #include errors on MinGW.
17550
17551 2004-11-01  Peter Ekberg  <spam.protected>
17552
17553         * config/ltmain.m4sh (cwrappersource): clean up warnings and
17554         #include errors.
17555
17556 2004-11-01  Peter Ekberg  <spam.protected>
17557
17558         Sometimes, a wrapper script is generated for an executable that,
17559         itself, does not link against an uninstalled library.  It appears
17560         that this can happen if you are building a project where:
17561
17562           (1) there is a library
17563           (2) there is an executable that does not, itself, link against
17564               that library
17565
17566         In this case, notinst_deplibs is empty, and when the wrapper
17567         script is loaded by libtool during ./libtool mode=install, there
17568         is a check for "is notinst_deplibs empty".  In this case, it is,
17569         so libtool reports an error.
17570
17571         I don't think it is wrong to have a wrapper script for an exe that
17572         *technically* doesn't need it.  But instead of checking for
17573         notinst_deplib nonempty as a proxy for "did wrapper script get
17574         sourced into my environment properly" a different var should be
17575         used.
17576
17577         * config/ltmain.m4sh (func_mode_install): set new variable
17578         `generated_by_libtool_version' in wrapper script when using
17579         libtool_install_magic.  When verifying that wrapper script was
17580         properly sourced, check that `generated_by_libtool_version' is
17581         non-empty, instead of using notinst_deplibs.
17582
17583 2004-11-01  Charles Wilson  <spam.protected>,
17584             Peter Ekberg  <spam.protected>
17585
17586         * config/ltmain.m4sh (func_mode_install): On Windows based hosts,
17587         ensure that import libraries don't get stripped.
17588         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): On Windows based hosts,
17589         use postinstall_cmds to strip DLL (not import lib!) when symbol
17590         stripped installation was requested.
17591
17592 2004-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17593
17594         * libltdl/ltdl.c (loader_init_callback): Back out broken cast.
17595
17596         * libltdl/ltdl.c (loader_init_callback, lt_dlexit): Add casts to
17597         target type.
17598
17599         * tests/defs.m4sh (func_exec): `shift'ing when there is nothing
17600         to shift is non-portable.
17601
17602 2004-10-28  Patrick Welche  <prlw1@newn.cam.ac.uk>,
17603             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17604
17605         * Makefile.am, Makefile.maint: Use path for dependencies built
17606         in the source tree, to cater for BSD make.
17607
17608 2004-10-24  Noah Misch  <noah@cs.caltech.edu>
17609
17610         * config/ltmain.m4sh (func_lalib_p, func_ltwrapper_p): New
17611         functions that abstract .la sanity checking.
17612         (func_mode_execute, func_mode_install, func_mode_link)
17613         (func_mode_uninstall): Use them.
17614
17615 2004-10-24  Gary V. Vaughan  <gary@gnu.org>
17616
17617         * config/ltmain.m4sh (opt_silent): Whether --silent was given.
17618         (run, show): Deleted.  All callers converted to opt_dry_run,
17619         opt_silent or calls to func_show_eval.
17620         * tests/mdemo-dryrun.test: Adjust.
17621
17622         * HACKING: Fix a typo in the gpg --verify instructions.
17623
17624         * Makefile.maint (cvs-dist): Generate signatures and directives
17625         for bz2 upload.
17626
17627 2004-10-23  Peter O'Gorman  <peter@pogma.com>
17628
17629         * config/ltmain.m4sh (func_mode_link): Make Gary's new tests
17630         pass. When the output wrapper script is not in the current
17631         directory, we can not use an rpath which is relative to the
17632         current directory. Use an absolute path instead.
17633
17634 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
17635
17636         * clcommit.m4sh: Add --rcfile option.
17637
17638         * clcommit.m4sh: Updated again, to support file list limited
17639         commits to CVS, and to fix another occurence of the bash bug
17640         that was preventing non-tla users from sending a commit mail.
17641
17642 2004-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17643
17644         * TODO, libltdl/lt_error.h, libltdl/ltdl.c, libltdl/ltdl.h:
17645         Undo accidental commit.
17646
17647         * Makefile.maint: Fix typo.
17648
17649 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
17650
17651         * clcommit.m4sh, config/mailnotify.m4sh: Updated from
17652         cvs-utils--tla--1.0 to fix quoting of metachars in patch names.
17653
17654         * HACKING: Updated: `.in' files are now `.m4sh'; document some
17655         more coding standards for these files.
17656
17657         * config/general.m4sh (sed_double_backslash): Undo an
17658         over-optimisation.
17659
17660 2004-10-21  Gary V. Vaughan  <gary@gnu.org>
17661
17662         * AUTHORS: Reformatted to better reflect the current state of
17663         Libtool maintainership.
17664         * THANKS: Reformatted to give maintainers a quick way to look
17665         up who has supplied FSF paperwork.
17666
17667 2004-10-21  Noah Misch  <noah@cs.caltech.edu>,
17668             Gary V. Vaughan  <gary@gnu.org>
17669
17670         * config/general.m4sh (sed_double_backslash): Improve this sed
17671         expression to correct left anchored \$ input to
17672         double_quote_subst, as well as backslash escaped $ preceded by
17673         any odd-numbered amount of \ characters.
17674
17675 2004-10-20  Gary V. Vaughan  <gary@gnu.org>
17676
17677         * config/general.m4sh (sed_double_backslash): New sed expression
17678         to escape \$ properly in combination with double_quote_subst.
17679         (func_quote_for_eval): Four space indent margin for functions!
17680         (func_quote_for_expand): Use $sed_double_backslash.
17681         (func_show_eval): New function that echos an escaped but variable
17682         expanded command, and then evaluates it.
17683
17684 2004-10-20  Noah Misch  <noah@cs.caltech.edu>,
17685             Gary V. Vaughan  <gary@gnu.org>
17686
17687         * m4/libtool.m4 (sed_quote_subst): Remove superfluous backslashes
17688         from the match character set.
17689         (double_quote_subst): Ditto.
17690         * config/general.m4sh (sed_quote_subst): Ditto.
17691         (double_quote_subst): New variable, copied from
17692         m4/libtool.m4. Much the same as sed_quote_subst, but variable
17693         references are not quoted.
17694         (func_quote_for_eval): Given any $foo; $bar and
17695         $foo must be identical after the following commands:
17696             func_quote_for_eval "$foo"
17697             eval "bar=$func_quote_for_eval_result"
17698         (func_quote_for_expand): In a similar vein to to func_quote_for_eval,
17699         except that variable expansions are not protected when quoting the
17700         command for subsequent display.
17701         * config/ltmain.m4sh: Factor away use of $sed_quote_subst now that
17702         it has been subsumed into func_quote_for_eval.
17703         (func_mode_link): Instead of `2004-10-14 Peter O'Gorman' below,
17704         use func_quote_for_expand so that ${wl} is expanded properly in
17705         the $show expression.
17706
17707 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
17708
17709         * config/ltmain.m4sh (func_mode_finish): solaris-2.6 also has
17710         crle(1).
17711         Reported by Albert Chin-A-Young <china@thewrittenword.com>
17712
17713 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
17714
17715         Add some new tests for Libtool's support of Automake
17716         subdir-objects builds.  This marks the beginning of a move to an
17717         Autotest driven test framework, which will eventually allow us to
17718         trim away many of the generated files in the current test demo
17719         subdirectories:
17720
17721         * configure.ac (AC_CONFIG_TESTDIR): Re-enable commented out
17722         Autotest macros.
17723         (AUTOTEST, M4SH): Use --language long hand.
17724         * bootstrap: Generate tests/testsuite, and by implication
17725         tests/package.m4.
17726         * Makefile.am (edit): Add substitutions needed to generate
17727         tests/package.m4 from bootstrap.
17728         (check-recursive): Add tests/testsuite.
17729         (TESTSUITE): The new Autotest testsuite target.
17730         (TESTSUITE_AT): The Autotest sources.
17731         (EXTRA_DIST): Distribute the generated testsuite and sources.
17732         (tests/package.m4): Use $(edit) to propagate package metadata to
17733         the new tests.
17734         (tests/testsuite): Build the testsuite.
17735         (tests/atconfig): How to regenerate the file.
17736         (check-local): Hook Autotest into `make check'.
17737         (installcheck-local): Run the testsuite on the installed tree.
17738         (clean-local): Tidy our file droppings.
17739         * tests/Makefile.am: Remove bitrotted code from Autotest
17740         experiments in Autoconf 2.52 era.  Updated the rest and moved into
17741         Makefile.am.
17742         * tests/testsuite.at: New container for Autotest test groups.
17743         * tests/am-subdir.at: New test group for compatibility with
17744         Automake's subdir-objects builds.  Currently holds two tests, one
17745         for a C project and another similar project in C++.
17746         * TODO: Add an entry to remind us that these new tests expose a
17747         bug in libtool.
17748         * NEWS: Updated.
17749
17750 2004-10-14  Peter O'Gorman  <peter@pogma.com>
17751
17752         * config/ltmain.m4sh: Revert most of my last commit, only eval
17753         \$show \"$cmds\", and only when building a library. I'm a wimp.
17754         Thanks Gary for pointing out errors in previous commit.
17755
17756 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
17757
17758         * config/ltmain.m4sh (func_mode_finish): Mention crle(1) on
17759         solaris 2.7 and higher in the finalisation notes.
17760         Reported by Kurt J. Lidl <lidl@pix.net>
17761
17762         * tests/cdemo-undef.test: New test for hosts that allow shared
17763         libraries with undefined symbols, but have no C++ compiler
17764         installed.
17765         * tests/Makefile.am (COMMON_TESTS): Add it.
17766
17767 2004-10-13  Peter O'Gorman  <peter@pogma.com>
17768
17769         * config/ltmain.m4sh: Make sure that we $show what we will $run,
17770         use eval $show if we do $run eval.
17771
17772 2004-10-13  Charles Wilson  <spam.protected>
17773
17774         * config/ltmain.m4sh: add foo/bin for every foo/lib
17775         in dllsearchpath when creating wrapper script.  Fixes
17776         depdemo-relink test failure.
17777
17778 2004-10-12  Charles Wilson  <spam.protected>
17779
17780         * config/ltmain.m4sh (func_mode_link): don't relink
17781         on cygwin/mingw; no need.  But do ensure that wrappers
17782         are created unless doing a purely static build.
17783
17784 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
17785
17786         * tests/tagdemo-undef.test: New test for hosts that allow shared
17787         libraries with undefined symbols.
17788         * tests/Makefile.am (CXX_TESTS): Add it.
17789
17790 2004-10-11  Charles Wilson  <spam.protected>
17791
17792         * tests/link.test: Fix check for use of libnlsut.a under
17793         Cygwin.
17794
17795 2004-10-11  Noah Misch  <noah@cs.caltech.edu>
17796
17797         * tests/quote.test: Do not look for $preargs in the output,
17798         because libtool may change them.
17799
17800 2004-10-10  Charles Wilson  <spam.protected>
17801
17802         * config/ltmain.m4sh: Really don't require versions of GNU
17803         sed newer than 3.02 for Cygwin and MinGW, and don't break
17804         dryrun mode.
17805
17806 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17807
17808         * config/getopt.m4sh: Under MinGW, reported paths may include ':'
17809         so ':' should not be used as the sed delimiter.  Use '*' instead
17810         since it is very unlikely to appear in a path.
17811
17812 2004-10-10  Albert Chin-A-Young  <china@thewrittenword.com>
17813
17814         * config/ltmain.m4sh: Don't require versions of GNU sed newer than
17815         3.02 for Cygwin and MinGW.
17816
17817 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17818
17819         * tests/pdemo-inst.test: Correction for mis-application of
17820         Charles Wilson's earlier patch.
17821
17822 2004-10-09  Gary V. Vaughan  <gary@gnu.org>
17823
17824         * m4/libtool.m4 (_LT_LANG_F77_CONFIG): Make sure the save and
17825         restore code for CC is nested at the same depth.
17826         (_LT_LANG_CXX_CONFIG): Ditto, but for several variables.
17827
17828 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
17829
17830         Update to the latest commit and mailnotify scripts from
17831         gary@gnu.org--2004/cvs-utils--tla--1.0:
17832
17833         * commit, config/mailnotify: Removed.  Now built from...
17834         * clcommit.m4sh, config/mailnotify.m4sh: ...these new sources.
17835         * Makefile.maint (commit, config/mailnotify): How to build them.
17836         * bootstrap: If we have a checked out tree (i.e. clcommit.m4sh
17837         is present), then build them.
17838
17839 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
17840
17841         Fix some issues that mangled the reexecution path to a script,
17842         and thus prevented it from finding itself:
17843
17844         * config/general.m4sh (progname): Don't actually change the name
17845         of the script if it begins with a `-', just prepend `./'.
17846         (progpath): Add a new clause that first searches the execution
17847         PATH, and then finally assumes this script is in the current
17848         working directory if $progname has no directory separators (e.g
17849         when invoked as `$SHELL progname').
17850
17851 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
17852
17853         * config/general.m4sh (func_verbose): Work around a bash bug in
17854         shell functions.
17855
17856 2004-10-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
17857
17858         * tests/pdemo-inst.test: pdemo-inst should depend on pdemo-make.
17859         * config/ltmain.m4sh: Windows and Cygwin reserve the .lnk
17860         extension to represent shortcuts.  Use the extension ".lnkscript"
17861         rather than ".lnk" for the piecewise linking ld script in order to
17862         avoid the conflict.
17863
17864 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17865
17866         * libltdl/ltdl.c (lt_dlexit, lt_dlpath_insertdir): Fix memleaks,
17867         free user_search_path on lt_dlexit.
17868
17869 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17870
17871         * tests/sh.test: Remove tests which fail on AS_SHELL_SANITIZE
17872         from autoconf >= 2.59.
17873
17874         * TODO: Remove item: no need for a libltdl without stdio.
17875
17876 2004-10-07  Gary V. Vaughan  <gary@gnu.org>
17877
17878         * tests/defs.m4sh (scripts): Actually scan the generated ltmain.sh
17879         for shell portability problems.
17880
17881         * m4/libtool.m4 (_LT_FORMAT_COMMENT): Shell meta-characters in
17882         _LT_DECL descriptions were not being escaped before injection into
17883         TAG CONFIG here documents in config.status.
17884
17885 2004-10-06  Peter O'Gorman  <peter@pogma.com>
17886
17887         * m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77): New macros to work
17888         around the deficiencies in AC_PROG_CXX and AC_PROG_F77.
17889         * configure.ac: Cleaned up, having moved the checks for compilers
17890         which do not exist to libtool.m4.
17891
17892 2004-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17893
17894         * libltdl/ltdl.c (try_dlopen): Move .la file parsing
17895         part.. (parse_dotla_file): ..here.  Adjust.
17896
17897         * libltdl/ltdl.c (load_deplibs, try_dlopen): Revert unnecessary casts
17898         to int from my patch from 2004-10-01.
17899
17900         * AUTHORS: Add myself.
17901
17902 2004-10-05  Peter O'Gorman  <peter@pogma.com>
17903
17904         * config/ltmain.m4sh [darwin]: Make the -dylib_file flag work on
17905         older darwins too. Reported by Christoph Egger.
17906
17907 2004-10-05  Gary V. Vaughan  <gary@gnu.org>
17908
17909         * configure.ac: Bumped version to 2.1a.
17910
17911 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
17912
17913         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Don't confuse $ECHO
17914         with $lt_ECHO, or we always get a libtool with ECHO=echo, rather
17915         than testing for a mechanism that quotes \ properly.
17916         * NEWS: Updated.
17917
17918         * config/ltmain.m4sh: Need to include getopt.m4sh earlier so that
17919         progpath is set before it is called to --no-reexec.
17920         * NEWS: Updated.
17921
17922 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
17923
17924         Without this change, the distributed libtool tarball has a
17925         dependency on autom4te.  There was some inconsistency in the
17926         filenames: now we have foo.m4sh -> m4sh -> foo.in -> configure
17927         -> foo[.sh].  Bootstrap runs the m4sh steps and the resulting .in
17928         files are distributed:
17929
17930         * tests/Makefile.am (EXTRA_DIST): Distribute defs.m4sh.
17931         * Makefile.am (EXTRA_DIST): Distribute libtoolize.m4sh.
17932         (libtoolize.in, libtoolize): Split into bootstrap and runtime
17933         stages.
17934         ($(top_srcdir)/tests/defs.in, $(top_srcdir)/tests/defs): Ditto.
17935         ($(top_srcdir)/config/ltmain.sh): Swap ltmain.m4sh and ltmain.in
17936         names.
17937         * bootstrap: Make libtoolize.in and tests/defs.in.
17938         * NEWS: Updated.
17939
17940 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17941
17942         * README, README.alpha: Update notes regarding available VERBOSE
17943         settings.
17944
17945 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17946
17947         * config/ltmain.in: Change $XSED to $Xsed to fix hang noticed
17948         under MinGW.
17949         * tests/defs.in: Support VERBOSE=debug to enable shell tracing
17950         while running tests.
17951
17952 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
17953
17954         * NEWS: Updated.
17955         * configure.ac: Bumped version to 1.9e.
17956
17957         GNU libtool 1.9d was released.
17958
17959         * configure.ac: Bumped version to 1.9d.
17960         * NEWS: Updated.
17961
17962         * libltdl/lt__alloc.h (lt__alloc_die): Declare with LT_SCOPE as
17963         per Ralf's original patch.
17964         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
17965
17966         * libltdl/Makefile.am (libltdlc_la_LIBADD): Don't use
17967         libdlloader_la_OBJECTS, an undocumented Automake internal
17968         variable...
17969         (libltdlc_la_SOURCES): ...use libdlloader_la_SOURCES here
17970         instead.
17971         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
17972
17973         * libltdl/argz_.h: Forgot to spell lt_system.h with just one `_'.
17974
17975         * libltdl/argz_.h: Forgot to include lt__system.h for LT_SCOPE
17976         definition.
17977
17978 2004-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
17979             Gary V. Vaughan  <gary@gnu.org>
17980
17981         * libltdl/lt__alloc.h: Declare exported functions with LT_SCOPE
17982         for mingw32.
17983         * libltdl/lt__dirent.h: Ditto.
17984         * libltdl/argz._h: Ditto.  Be careful about not requiring
17985         additional libltdl files when used outside of libltdl.
17986         * libltdl/slist.h: Ditto.
17987         * HACKING: Add a section on libltdl implementation layering.
17988
17989 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
17990
17991         * tests/quote.test: echo is called ECHO now.  Make sure we extract
17992         the value of ECHO from the libtool script.
17993         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
17994
17995 2004-10-02  Gary V. Vaughan  <gary@gnu.org>
17996
17997         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7*]: Revert my
17998         hack from 2004-09-30 now that I've removed /lib/hello.la and the
17999         tests work properly for me again.
18000
18001 2004-10-02  Jim Tison  <jtison@us.ibm.com>
18002
18003         Initial support for s390x-ibm-tpf:
18004
18005         * m4/libtool.m4: Correct obvious spelling errors in remarks.
18006         (_LT_ENABLE_LOCK): Make s390x-ibm-tpf hosts adopt elf64_s390
18007         conventions.
18008         (_LT_SYS_DYNAMIC_LINKER): Set defaults for s390x-ibm-tpf host.
18009         (_LT_CHECK_MAGIC_METHOD): Skip all dependency checks for
18010         s390x-ibm-tpf hosts.
18011         (_LT_LINKER_SHLIBS): Make s390x-ibm-tpf hosts adopt GNU/Linux OS
18012         attributes.
18013         * NEWS: Updated.
18014
18015 2004-10-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18016
18017         * config/ltmain.in (func_mode_install): Need to set $tmpdir before
18018         using it.
18019
18020         * config/ltmain.in (func_mode_link): Fix quoting bug.  Fixes
18021         e.g. the quoting of the -export-symbols-regex argument in .la
18022         files' relink_command.
18023
18024         * libltdl/lt__alloc.c (lt__memdup): Allocation can fail, so we
18025         need to guard against null pointer dereference here.
18026         * libltdl/ltdl.c (lt_dlcaller_register): Ditto.
18027
18028         * libltdl/slist.c (slist_foreach): result was declared as
18029         inner variable, shadowing the actually returned value.
18030
18031         * libltdl/ltdl.c (load_deplibs, try_dlopen): Cast argument
18032         to isspace/isalnum to the correct range.  Also, cast to int to
18033         avoid compiler warnings.
18034
18035 2004-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18036
18037         * libltdl/ltdl.c (try_dlopen): Fix null pointer dereference in
18038         case the name given to lt_dlopen contains no extension.
18039
18040         * libltdl/lt_dlloader.c (lt_dlloader_remove), libltdl/ltdl.c
18041         (tryall_dlopen, lt_dlhandle_next): Show usage of function pointers.
18042
18043         * doc/libtool.texi (LT_INIT, Using libltdl)
18044         (Module loaders for libltdl, Multiple dependencies)
18045         (libtool script contents): Fix several typos (trivial change).
18046         Also, libltdl consists of more than two small files.
18047
18048 2004-09-30  Gary V. Vaughan  <gary@gnu.org>
18049
18050         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7]: My Panther
18051         workstation doesn't hardcode the shared library path, although it
18052         used to, so this is more likely a function of the binutils and/or
18053         gcc I am using at the moment.  The hardcode value setting code for
18054         the configure script sucks at the moment though...
18055         * TODO: ...and needs to do a test compile instead of a table
18056         lookup before 2.0 final.
18057
18058         * m4/libtool.m4 (echo): Use ECHO throughout for consistency with
18059         config/ltmain.in.
18060         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18061
18062         * m4/libtool.m4 (rm): Use RM throughout for consistency with
18063         config/ltmain.in.
18064         Reported by Charles Wilson <cwilson@spam.protected>
18065
18066 2004-09-27  Peter O'Gorman  <peter@pogma.com>
18067
18068         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
18069         output during configure. (Really this time, honest)
18070
18071 2004-09-26  Albert Chin-A-Young  <china@thewrittenword.com>
18072
18073         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [aix]: In archive_expsym_cmds,
18074         move -bnoentry linker option before $compiler_flags to honor any
18075         possible -e entries in LDFLAGS.
18076
18077 2004-09-25  Gary V. Vaughan  <gary@gnu.org>
18078
18079         * config/ltmain.in (func_mode_link): When linking an installed
18080         libtool library on the command line using -lfoo we need to find
18081         the library in the search paths and add it's dependency_libs to
18082         the link in the conv pass so that any libtool libs listed are
18083         correctly expanded in the link pass.
18084
18085 2004-09-24  Charles Wilson  <cwilson@spam.protected>
18086
18087         * libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Revert changeset from
18088         `2004-09-22  Charles Wilson  <cwilson@spam.protected>'.
18089
18090 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
18091
18092         * config/general.m4sh (Xsed): Set a default when not used from
18093         ltmain.in.
18094         (ECHO): Audit for (and correct!) uses of $ECHO with more than one
18095         argument, which breaks when ECHO='printf %s\n', and with possible
18096         `-' as first character of the argument, which breaks `print -r'
18097         and some implementations of `echo'.
18098         * config/ltmain.in, tests/defs.in, libtoolize.in (ECHO): Ditto.
18099         Reported by Albert Chin-A-Young <china@thewrittenword.com>
18100
18101 2004-09-24  Peter O'Gorman  <peter@pogma.com>
18102
18103         * m4/libtool.m4 (_LT_CMD_STRIPLIB) [darwin]: strip archives too.
18104
18105         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
18106         output during configure.
18107
18108 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
18109
18110         * m4/libtool.m4 (_LT_DECL_EGREP): Only the newest CVS autoconf
18111         AC_SUBSTs for GREP.  Do our own here too to cater for release
18112         autoconfen.
18113
18114         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [openbsd3.3]: Set
18115         need_version to yes or no depending on the os release.
18116         Reported by Dalibor Topic <robilad@kaffe.org>
18117
18118 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
18119
18120         * tests/cdemo-conf.test, tests/cdemo-exec.test,
18121         tests/cdemo-make.test, tests/cdemo-shared.test,
18122         tests/cdemo-static.test, tests/demo-conf.test,
18123         tests/demo-deplibs.test, tests/demo-exec.test,
18124         tests/demo-hardcode.test, tests/demo-inst.test,
18125         tests/demo-make.test, tests/demo-nofast.test,
18126         tests/demo-noinst-link.test, tests/demo-nopic.test,
18127         tests/demo-pic.test, tests/demo-relink.test,
18128         tests/demo-shared.test, tests/demo-static.test,
18129         tests/demo-unst.test, tests/depdemo-conf.test,
18130         tests/depdemo-exec.test, tests/depdemo-inst.test,
18131         tests/depdemo-make.test, tests/depdemo-nofast.test,
18132         tests/depdemo-relink.test, tests/depdemo-shared.test,
18133         tests/depdemo-static.test, tests/depdemo-unst.test,
18134         tests/f77demo-conf.test, tests/f77demo-exec.test,
18135         tests/f77demo-make.test, tests/f77demo-shared.test,
18136         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
18137         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
18138         tests/mdemo-exec.test, tests/mdemo-inst.test,
18139         tests/mdemo-make.test, tests/mdemo-shared.test,
18140         tests/mdemo-static.test, tests/mdemo-unst.test,
18141         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
18142         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
18143         tests/pdemo-exec.test, tests/pdemo-inst.test,
18144         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
18145         tests/suffix.test, tests/tagdemo-conf.test,
18146         tests/tagdemo-exec.test, tests/tagdemo-make.test,
18147         tests/tagdemo-shared.test, tests/tagdemo-static.test,
18148         tests/tagtrace.test: POSIX `.' searches only in user's $PATH, so
18149         we must use `. ./defs' to source the common code.
18150         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
18151
18152         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Gah.  Merge error
18153         corrected.
18154
18155 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
18156
18157         Since defs can change (path to grep for example) when it is made
18158         for a different host, it can't be shipped.  That also means that
18159         defs will always be generated in the build tree, so each test case
18160         can have the srcdir discovery factored away into tests/defs.in:
18161
18162         * Makefile.am (EXTRA_DIST): s/defs/defs.in/g
18163         * tests/Makefile.am (defs): New rule to remake defs from the
18164         parent directory's Makefile.
18165         * tests/cdemo-conf.test, tests/cdemo-exec.test,
18166         tests/cdemo-make.test, tests/cdemo-shared.test,
18167         tests/cdemo-static.test, tests/demo-conf.test,
18168         tests/demo-deplibs.test, tests/demo-exec.test,
18169         tests/demo-hardcode.test, tests/demo-inst.test,
18170         tests/demo-make.test, tests/demo-nofast.test,
18171         tests/demo-noinst-link.test, tests/demo-nopic.test,
18172         tests/demo-pic.test, tests/demo-relink.test,
18173         tests/demo-shared.test, tests/demo-static.test,
18174         tests/demo-unst.test, tests/depdemo-conf.test,
18175         tests/depdemo-exec.test, tests/depdemo-inst.test,
18176         tests/depdemo-make.test, tests/depdemo-nofast.test,
18177         tests/depdemo-relink.test, tests/depdemo-shared.test,
18178         tests/depdemo-static.test, tests/depdemo-unst.test,
18179         tests/f77demo-conf.test, tests/f77demo-exec.test,
18180         tests/f77demo-make.test, tests/f77demo-shared.test,
18181         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
18182         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
18183         tests/mdemo-exec.test, tests/mdemo-inst.test,
18184         tests/mdemo-make.test, tests/mdemo-shared.test,
18185         tests/mdemo-static.test, tests/mdemo-unst.test,
18186         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
18187         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
18188         tests/pdemo-exec.test, tests/pdemo-inst.test,
18189         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
18190         tests/suffix.test, tests/tagdemo-conf.test,
18191         tests/tagdemo-exec.test, tests/tagdemo-make.test,
18192         tests/tagdemo-shared.test, tests/tagdemo-static.test,
18193         tests/tagtrace.test: Removed srcdir discovery boilerplate...
18194         * tests/defs.in: ...and put it here.
18195
18196 2004-09-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18197
18198         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): move symcode calculation
18199         to correct place.
18200         * doc/libtool.texi (libtool script contents): update description
18201         of global_symbol_to_cdecl.
18202
18203 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
18204
18205         * configure.ac (M4SH): AC_SUBST m4sh expander.
18206         * config/general.m4sh, config/getopt.m4sh: New files with factored
18207         out functionality from...
18208         * config/ltmain.in, libtoolize.in: ...here.  m4_include the shared
18209         code, and call AS_SHELL_SANITIZE.  Also quote all `[' and `]' to
18210         survive m4 run.
18211         (func_serial): No need to double up m4sh quotes after a `#'.
18212         (func_check_macros): Escape `dnl' to stop m4sh interpreting it as
18213         a macro.
18214         * tests/defs.in: New file expanded into tests/defs by autom4te.
18215         * m4/libtool.m4 (_LT_DECL_EGREP): Also require fgrep for the tests
18216         that use it.
18217         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Now built with
18218         M4SH.
18219         (libtoolize): Ditto.
18220         * bootstrap: Set M4SH for call to make.
18221         * HACKING: No need to sync to AS_SHELL_SANITIZE by hand any more.
18222
18223         * m4/libtool.m4: _LT_DECL uppercase ECHO.
18224         * config/ltmain.in: Use it throughout.
18225         (func_mkdir_p): Now matches the other implementations in
18226         tests/defs and libtoolize.in.
18227         * tests/sh.test: Updated to detect ECHO misuse.
18228
18229 2004-09-22  Gary V. Vaughan  <gary@gnu.org>
18230
18231         * config/ltmain.in (func_mode_link): Propagate a convenience
18232         library's dependency libs correctly when it is being linked into a
18233         libtool library.  Deplibs are now propagated whether libdir is set
18234         or not.
18235
18236 2004-09-22  Andreas Schwab  <schwab@suse.de>
18237
18238         The dlpreopen pass over libraries reverses the elements in the
18239         $deplibs list.  This causes problems when the link pass tries to
18240         find libraries when they are located in non-standard places
18241         denoted by -L options.  Due to the reversed order these -L options
18242         occur after the libraries that need them, and they are not found:
18243
18244         * config/ltmain.in: (Un)Reverse $deplibs list at the start of the
18245         link pass in lib mode.
18246
18247 2004-09-22  Charles Wilson  <cwilson@spam.protected>
18248
18249         * ltmain.in (func_generate_dlsyms) [cygwin, mingw]: when creating
18250         a .exp file for an executable, also create a .def file, and add
18251         that file to the link command via SYMFILES.  This causes binutils
18252         to generate an .edata section, and allows self dlopening to work.
18253         * NEWS: Updated.
18254
18255         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better quoting for
18256         postinstall_cmds and postuninstall_cmds to allow spaces in install
18257         paths.
18258
18259         * config/ltmain.in (func_generate_dlsyms): Addresses in
18260         _preloaded_symbols[] cannot go into .rdata section if symbols are
18261         DATA imported from DLL, on windows, because runtime relocations
18262         must happen.
18263         * m4/libtool.m4 (_LT_LINKER_SHLIBS([TAGNAME])): Build exports for
18264         symbols in .rdata sections.
18265
18266 2004-09-19  Gary V. Vaughan  <gary@gnu.org>
18267
18268         The checks in assign.test are trying to catch case of this ilk:
18269         `foo=bar break', but unfortunately they also choke on `foo=bar;
18270         break' and `foo=bar && break'.  Writing a sophisticated test to
18271         catch just the intended case seems like more trouble than it's
18272         worth, but leaving the test in causes the testsuite to fail on
18273         valid m4sh output:
18274
18275         * tests/assign.test: Removed; chokes on perfectly valid shell
18276         syntax.
18277         * tests/Makefile.am (COMMON_TESTS): Remove assign.test.
18278         * tests/defs.in (scripts): Don't check the m4sh inputs, go back
18279         to checking the generated ltmain.sh script.
18280
18281 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
18282
18283         * config/ltmain.in (func_echo): Except for multi-line warnings and
18284         errors, always use func_echo.  $show is for command output, and
18285         $echo is for internal use in backtick expressions and similar.
18286
18287 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
18288
18289         Missed a couple of MKDIR_P references in ltmain.in in my last
18290         patch; fix them carefully.  Introduce an opt_dry_run to ltmain.in
18291         so that the implementations of func_mkdir_p can converge, and a
18292         func_mktempdir to do a better job of temporary directory creation:
18293
18294         * libtoolize.in (func_mkdir_p): Don't fail if the directory wasn't
18295         created in dry run mode.
18296         * tests/defs (func_mkdir_p): Ditto.  We don't actually have a dry
18297         run mode for the tests, but the function is written carefully to
18298         be kept in synch and work correctly here too.
18299         * config/ltmain.in (func_mkdir_p): Ditto.  This copy of the
18300         function now only differs in its use of $echo over $ECHO.
18301         (func_extract_archive): Removed first redundant mkdir call.
18302         (func_mktempdir): New function that tries to avoid races when
18303         making temporary directories.
18304         (opt_dry_run): Set this if --dry-run is given at the CLI, or if
18305         tests/mdemo-dryrun.test has forced the value of $run.
18306         (func_mode_install): Call $MKDIR directly and error out if the
18307         directory cannot be created.
18308         (func_mode_link): Rather than copying func_mkdir_p into the
18309         wrapper script as a replacement for $MKDIR_P, we know that the
18310         script won't be called my `make -j', so write the current value of
18311         $MKDIR.
18312
18313 2004-09-17  Peter O'Gorman  <peter@pogma.com>
18314
18315         * m4/libtool.m4: remove an extra "]"
18316
18317         * m4/libtool.m4 [darwin] (_LT_LANG_CXX_CONFIG): Changes for 10.4.
18318         * config/libtool.in [darwin]: ditto.
18319
18320 2004-09-16  Gary V. Vaughan  <gary@gnu.org>
18321
18322         My most recent `2004-09-02 Gary V. Vaughan' patch for mkdir_p
18323         below is horrendously broken since it makes the installed libtool
18324         try to run the mkinstalldirs or install-sh helper scripts.  This
18325         patch fixes the `make -j' mkdir race condition internally:
18326
18327         * libtoolize.in (func_mkdir_p): New slice and dice algorithm
18328         to build the directory tree one dir at a time, ignoring errors
18329         until the end incase they are transient due to a concurrent
18330         identical mkdir.
18331         * tests/defs (func_mkdir_p): Ditto.
18332         * config/ltmain.in (func_mkdir_p): Ditto, except that ltmain.in
18333         uses $echo rather than $ECHO, and uses $show and $run to interact
18334         correctly with the command line.
18335         * configure.ac (AM_INIT_AUTOMAKE): 1.8 is sufficient again.
18336         * Makefile.am (edit): Don't substitute automake's $(mkdir_p).
18337         * NEWS: Updated.
18338
18339 2004-09-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
18340
18341         * libltdl/loaders/loadlibrary.c: Compilation fixes (originally
18342         from Gary V. Vaughan) to compile under MinGW.
18343         * config/mkstamp: Translate input data so that it is assured to
18344         use the Unix line terminations. This is necessary under Windows if
18345         the files are checked out with CR/NL line terminations. A
18346         side-effect of this change is that input must always be from
18347         stdin. Previously a filename argument was accepted as well.
18348
18349 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18350
18351         * tests/Makefile.am: Use the same CPP, F77, CXX and CXXFLAGS
18352         for the test suite.
18353
18354 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18355
18356         * m4/libtool.m4 (_LT_ENABLE_LOCK):Replace AC_TRY_LINK with
18357         AC_LINK_IFELSE to get rid of `autoconf -Wobsolete' warning.
18358         * m4/ltdl.m4 (LT_LIB_DLLOAD): Ditto.
18359
18360 2004-09-15  Gary V. Vaughan  <gary@gnu.org>
18361
18362         * config/ltmain.in (func_quote_for_eval): Set a return value to
18363         avoid forking at every call.  Changed all callers.
18364         (func_mode_link): Simplified, and removed the final non-portable
18365         nested escaped double quotes in back quotes usage in the process.
18366
18367 2004-09-14  Gary V. Vaughan  <gary@gnu.org>
18368
18369         * config/ltmain.in (func_quote_for_eval): Factor out the ugly
18370         shell meta-character quoting.  Changed all callers.
18371
18372 2004-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18373
18374         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Simplification:
18375         distinguish between data and code symbols on every system.
18376
18377 2004-09-14  Albert Chin-A-Young  <china@thewrittenword.com>
18378
18379         Unfortunately, libtool has no way of telling if unrecognized
18380         compiler flags need an argument or not, and can disect options and
18381         pass parts through incorrectly.  This changeset reverts both
18382         2004-09-06 Albert Chin-A-Young (topmost) and 2004-09-05 Albert
18383         Chin-A-Young below, and recognises more options explicitly:
18384
18385         * config/ltmain.in (func_mode_link): Pass through options needed
18386         to compile in 64-bit mode with gcc, and the SGI, Sun, HP and IBM
18387         compilers.
18388
18389 2004-09-13  Gary V. Vaughan  <gary@gnu.org>
18390
18391         * m4/libtool.m4 (_LT_CMD_GLOBALS_SYMBOLS): Fix a typo I made when
18392         applying 2004-09-11 Ralf Wildenhues.
18393
18394 2004-09-12  Brad  <brad@comstyle.com>
18395
18396         * libtool.m4: Fixes for the OpenBSD support
18397
18398 2004-09-12  Peter O'Gorman  <peter@pogma.com>
18399
18400         Our fortran tests were not very good. All the libraries created
18401         were convenience libs, so we did not test the creation of shared
18402         libraries on any platform. Also none of the libs used any actual
18403         fortran library calls, adding a call to write(*,*) in each lib
18404         causes the tests to fail on darwin (and presumably other platforms).
18405         These new tests would likely cause many more fortran test failures,
18406         so if there is an error during make it is reported as SKIP.
18407
18408         * tests/f77demo-make.test: Don't fail hard, skip on failure.
18409         * tests/f77demo/foof2.f: New file.
18410         * tests/f77demo/foof3.f: New file.
18411         * tests/f77demo/fprogram.f: Call routine in new lib.
18412         * tests/f77demo/foof.f: Call routine in another new lib.
18413         * tests/f77demo/Makefile.am: Make a couple of new libraries, add
18414         $(FLIBS) to cprogram LDADD.
18415
18416 2004-09-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18417
18418         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): The linker distinguishes
18419         data and code symbols on linux-gnu/ia64.  Fixes multiple testsuite
18420         failures.
18421         * NEWS: Updated.
18422
18423 2004-09-06  Gary V. Vaughan  <gary@gnu.org>
18424
18425         * libltdl/loaders/shl_load.c (get_vtable): Typo.
18426
18427 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
18428
18429         Hopefully, passing unrecognised compiler arguments through
18430         unmolested will prove to be a good plan for the 2.0 release.  If
18431         it goes awry, we can get back to where we were by reverting this
18432         patch and the 2004-09-05 Albert Chin-A-Young patch, aka
18433         gary@gnu.org--2004/libtool--devo--1.0--patch-169,172:
18434
18435         * config/ltmain.in (func_mode_link): Because we now pass through
18436         compiler arguments we doesn't recognize, the code to pass
18437         through GCC's -m* arguments is not needed.
18438
18439 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
18440
18441         * Makefile.am (clean-ltmain-sh): Using '==' to test for equality
18442         in a shell script is not portable. Use '=' instead.
18443
18444 2004-09-05  Andreas Schwab  <schwab@suse.de>
18445
18446         * m4/ltdl.m4 (LT_WITH_LTDL): Remove excess quoting in argument of
18447         AC_CONFIG_SUBDIRS.
18448
18449 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
18450
18451         * config/ltmain.in (func_mode_link): Pass otherwise unrecognised +
18452         and - style switches to the compiler.
18453         * NEWS: Updated.
18454
18455 2004-09-05  Gary V. Vaughan  <gary@gnu.org>
18456
18457         * Makefile.am (libtool): Force libtool to be regenerated if
18458         stamp-vcl has changed.
18459
18460 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
18461
18462         * m4/libtool.m4, config/ltmain.in: When calling $LTCC,
18463         pass default $CFLAGS through with $LTCFLAGS.
18464
18465 2004-09-03  David Edelsohn  <dje@watson.ibm.com>
18466
18467         * config/ltmain.in (func_mode_link): Use $pic_object as
18468         $non_pic_object if $non_pic_object=none.
18469         * NEWS: Updated.
18470
18471 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
18472
18473         * bootstrap: Remember that the ltmain.sh generated by bootstrap
18474         is missing most of its substitution values, so force it to be
18475         rebuilt at make time by touching $(top_srcdir)/config/ltmain.in.
18476
18477         From Martin Quinson <mquinson@ens-lyon.fr>
18478         * m4/libtool.m4 (_LT_SETUP, _LT_ENABLE_LOCK, LT_PATH_LD): Use
18479         AS_HELP_STRING to get rid of autoconf -Wobsolete warning
18480         messages.
18481         * m4/ltdl.m4 (LT_WITH_LTDL, _LT_ENABLE_INSTALL): Ditto.
18482         * m4/ltoptions.m4 (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC)
18483         (_LT_ENABLE_FAST_INSTALL, _LT_WITH_PIC): Ditto.
18484         * TODO: Updated
18485
18486 2004-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18487
18488         * libltdl/slist.c (slist_cons): Don't leak the tail of a list.
18489
18490 2004-09-03  Albert Chin-A-Young  <china@thewrittenword.com>
18491
18492         * m4/libtool.m4 (_LT_ENABLE_LOCK): Reformatted.
18493
18494 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
18495
18496         * HACKING: Explain how to verify detached signatures with gpg in
18497         the release announcement templates.
18498
18499         * AUTHORS: Fix typo in my address.
18500
18501 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
18502
18503         Builds of packages that use libtool and make -j produce "directory
18504         already exists warnings" for .lib directory.  Build on automake
18505         wisdom to support make -j builds where a suitable mkdir is
18506         available:
18507
18508         * configure.ac (AM_INIT_AUTOMAKE): Require 1.9, which goes to some
18509         trouble to find a $(mkdir_p) that doesn't interfere with make -j.
18510         * Makefile.am (edit): Substitute for @mkdir_p@.
18511         * config/ltmain.in (MKDIR_P): Take @mkdir_p@ value.
18512         (mkdir): Removed.
18513         (func_mkdir_p): New function to use $MKDIR_P.  Factor out all
18514         previous mkdir calls to use this function.
18515         (RM, MV): Declared as in libtoolize.in.  Changed all callers.
18516         * libtoolize.in (MKDIR_P): Take @mkdir_p@ value from automake.
18517         (func_mkdir_p): Use it, similarly to new config/ltmain.in.
18518         * tests/defs: Synchronize boiler plate code with ltmain.in.
18519         Adjust all callers.
18520         Add missing copyright preamble.
18521         * tests/demo-static.test: Add missing copyright preamble.
18522         * NEWS: Updated.
18523         Reported by Daniel Reed <n@ml.org>
18524
18525 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
18526
18527         * Makefile.am (clean-ltmain-sh): Quote $(top_builddir) for the
18528         shell, incase it is not set when running maintainer rules with
18529         `make -fMakefile.maint'.
18530         Don't show the shell commands.
18531
18532         * AUTHORS: Fix my email address.
18533
18534 2004-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18535
18536         * libltdl/ltdl.c (try_dlopen): Fix memory leak.
18537         * NEWS: Updated.
18538
18539 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
18540             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18541
18542         * libltdl/slist.c, libltdl/slist.h: Merge in changes from latest
18543         upstream.  Mostly comments, formal item boxing, a sort function,
18544         and const madness reduction.
18545         (slist_new): Removed.
18546         (slist_box, slist_unbox, slist_sort): New.
18547         (SListCompare, SListCallback): Swapped!
18548         (slist_remove, slist_find): Change order of parameters for
18549         orthogonality with slist_foreach.  Changed all callers.
18550         * libltdl/lt_dlloader.c (loader_cmp): Renamed to...
18551         (loader_callback): ...this.  Return boxed item.
18552         (lt_dlloader_remove): Adjust to new loader_callback semantics;
18553         unbox each removed item before returning.
18554         Remove unused variable.
18555         Remove const from name parameter, since the slist API cannot
18556         guarantee userdata const-ancy for its callback functions.
18557         (lt_dlloader_find): Adjust to new loader_callback semantics; need
18558         to return the contents of the boxed item.
18559         Remove const from name parameter, since the slist API cannot
18560         guarantee userdata const-ancy for its callback functions.
18561         * libltdl/lt_dlloader.h (lt_dlloader_find, lt_dlloader_remove):
18562         Adjust to new constless footprint.
18563         * libltdl/ltdl.c (ltdl_exit): The global `loaders' list is changed
18564         by `lt_dlloader_remove' while cleaning up, so the address in local
18565         variable `loader' is invalidated.  Since some loaders may be
18566         resident modules that cannot be unloaded (though we have none
18567         yet), we must save each `next' address before calling
18568         `lt_dlloader_remove'.
18569         * NEWS: Updated.
18570         * THANKS: Added Ralf.
18571
18572 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
18573
18574         * libltdl/lt_dlloader.c (lt_dlloader_add): Handle malloc failure
18575         from slist_new.
18576         * libltdl/ltdl.c (loader_init): Trust lt_dlloader_add(), don't
18577         overwrite its error type, and simplify.
18578         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18579
18580 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18581
18582         * libltdl/slist.c (slist_new): Handle malloc failure gracefully.
18583
18584 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
18585
18586         * libtoolize.in, config/ltmain.in: Add CDPATH protection to
18587         preamble.
18588         * tests/defs: Put a full m4sh.m4 style 'Be Bourne compatible'
18589         preamble in here too.
18590         * HACKING: Note that tests/defs needs synching with m4sh.m4 too.
18591         * TODO: Add new item.
18592
18593         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Use correct cpp
18594         macro name, LT_DLSEARCH_PATH.
18595
18596         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Fix gcc parentheses
18597         warning.
18598         (foreach_dirinpath, try_dlopen, lt_dlpath_insertdir): Fix gcc
18599         signed vs unsigned warning.
18600         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
18601
18602         * m4/libtool.m4 (_LT_PROG_LTMAIN): Simplified in light of
18603         ltmain.sh no longer being in the build tree.
18604         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18605
18606 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18607
18608         * libltdl/loaders/preopen.c: Initialise memory in get_vtable.
18609
18610         * tests/sh.test: Look in the source tree for ltmain.sh.
18611
18612 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
18613
18614         Don't use C99 flexible array types as we want to be C89
18615         compatible.  Instead, revert to the old way of doing things with
18616         an array of symbol name vs. address, and adding the originator as
18617         the first symbol but with a NULL address:
18618
18619         * config/ltmain.in (func_extract_dlsyms): Store originator as a
18620         NULL address symbol.
18621         * libltdl/ltdl.h (lt_dlsymbol): Removed.
18622         (lt_dlsymlist): Remove originator field.
18623         (LTDL_SET_PRELOADED_SYMBOLS): Adjust.
18624         * libltdl/loaders/preopen.c (vm_open, lt_dlpreload_open): Adjust
18625         for new types.
18626         (vm_sym): Skip the new originator symbol when scanning symbol
18627         names.
18628         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust preloaded symbols
18629         test file to match.
18630         * NEWS: Updated.
18631         Reported by Andreas Schwab <schwab@suse.de>
18632
18633 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
18634
18635         Libtool currently assumes that certain characteristics, such as
18636         enable_shared, apply to the host architecture rather than per-
18637         language.  Running the tests over a broken compiler can corrupt
18638         these values, when there is no C++ compiler for example, so we
18639         skip most of the tests in those cases.
18640
18641         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): If caught_CXX_compiler was
18642         set from configure.ac, then don't run all the compiler tests.
18643         (_LT_LANG_F77_CONFIG): Similarly for caught_F77_compiler.
18644
18645 2004-08-31  Gary V. Vaughan  <gary@gnu.org>
18646
18647         * Makefile.am (clean-ltmain-sh): Remove stale config/ltmain.sh
18648         from the build tree that were left behind by previous versions of
18649         libtool.
18650         ($top_srcdir)/stamp-vcl: Since this rule is already called on
18651         every invocation of make, hook clean-ltmain-sh in here too.
18652         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18653
18654 2004-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18655
18656         * bootstrap: Update warning message to reflect having split
18657         libtool.m4 into several files.
18658         Also, add config/ltmain.sh to list of stale files from previous
18659         versions to be removed before bootstrap.
18660
18661         * libltdl/ltdl.c: Replace strdup with lt__strdup.
18662
18663 2004-08-30  Gary V. Vaughan  <gary@gnu.org>
18664
18665         * config/ltmain.in: Double quote even $# for the sake of sh.test.
18666         (exec_cmd): Be careful about "`\"foo\"`" quoting, even in comments
18667         to avoid triggering the tests in sh.test.
18668
18669         * configure.ac:  Because of the way the autoconf C++ testing
18670         works, we need to call the C test first to work in an environment
18671         that has no C++ compiler.
18672
18673         * libltdl/lt_dlloader.c (lt_dlloader_remove): Since the return
18674         value of this function is often passed to free, don't declare it
18675         `const'. Responsibility for this memory is given back to the
18676         caller on return.
18677         * libltdl/lt_dlloader.h (lt_dlloader_remove): Ditto.
18678         * libltdl/ltdl.c (lt_dlexit): Adjust.
18679         * NEWS: Updated.
18680
18681 2004-08-30  Andreas Schwab  <schwab@suse.de>
18682
18683         * libltdl/ltdl.c (lt_dlexit): Remove lvalue cast.
18684
18685         * libltdl/slist.h (SListCallback): Fix missing type.
18686
18687         * config/ltmain.in: Accept --mode=relink.
18688
18689 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
18690
18691         * NEWS: Updated.
18692         * configure.ac: Bumped version to 1.9c.
18693
18694         GNU libtool 1.9b was released.
18695
18696         * configure.ac: Bumped version to 1.9b.
18697         * NEWS: Updated.
18698         * INSTALL, config/config.guess, config/config.sub,
18699         config/texinfo.tex: Updated from canonical source.
18700         * Makefile.maint, HACKING: Update instructions for releasing in a
18701         VPATH build.
18702
18703         * Makefile.am (dist-hook): Only run if README-alpha exists.
18704         * README.alpha: Renamed from README-alpha to stop automake from
18705         automatically adding it to DIST_COMMON.
18706
18707         * NEWS: Merge changes from branch-1-5.
18708
18709         * Makefile.am (dist-hook): Always distribute just a README file,
18710         but take its contents from README-alpha for alpha releases.
18711
18712         * TODO: Reformat.  Removed some items that have been implemented.
18713
18714 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
18715
18716         Add a new `-weak' flag to tell libtool when not to propogate
18717         dependency libraries from dlpreopened modules to libraries:
18718
18719         * config/ltmain.in: Support new -weak link mode option.  Adjust
18720         help message.
18721         * libltdl/Makefile.am (libltdlc_la_LDFLAGS): Use it.
18722         * doc/libtool.texi (Linking with dlopened modules): Document it.
18723         (Link mode): Mention -weak.
18724         * NEWS: Updated.
18725
18726 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
18727
18728         * config/ltmain.in (opt_help): Defer showing help messages until
18729         after a possible following --mode argument has been parsed, so we
18730         can handle `libtool --help --mode=foo'.
18731
18732 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
18733
18734         We have had shell functions in ltmain.in for a few years without
18735         complaint now, and recently a few more have crept in.  Make a
18736         start at refactoring the code with shell functions, and
18737         standardising on option parsing style:
18738
18739         * config/ltmain.in (func_echo, func_verbose, func_error)
18740         (func_fatal_error, func_fatal_help, func_missing_arg)
18741         (func_version, func_usage, func_help): Boiler plate shell
18742         functions mostly copied from libtoolize.in.  Changed *lots* of
18743         shell snippets to call these functions as appropriate, rather than
18744         inlining the same code over and over.
18745         (func_config, func_features, func_enable_tag, func_mode_help):
18746         Factored out from the shared option parsing loop.  Write a new
18747         shared option parser based on the one in libtoolize.in.
18748         (func_check_version_match): Factored out from global scope.
18749         (func_mode_compile, func_mode_execute, func_mode_finish)
18750         (func_mode_install, func_mode_link, func_mode_uninstall): Break
18751         each of the top level mode handlers out into a function.  Adjust
18752         main loop.
18753         (modename, prevopt, prev, optarg, show_help): Removed in the
18754         course of cleaning up the shared option parser.
18755         (opt_duplicate_deps): Use `:' and `false' instead of `yes' and `',
18756         so we can run it directly, rather than calling test.
18757
18758 2004-08-28  Gary V. Vaughan  <gary@gnu.org>
18759
18760         To help users submit better bug reports, improve the general
18761         instructions, and provide additional useful info alongside the bug
18762         reporting address in --help output:
18763
18764         * Makefile.am (edit): Substitute $host_triplet.
18765         * libtoolize.in: Output useful debug info with --help.
18766         * config/ltmain.in: Ditto.
18767         * README: Rewritten.  Added copyright info.
18768         * README-alpha: Rewritten.  Added copyright info.
18769         * HACKING: New file, partly taken from old README-alpha.
18770
18771 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
18772
18773         Two things to stop `make distcheck' from trying to rebuild
18774         distributed files (m4/ltversion.m4 and config/ltmain.in) in the
18775         readonly source tree:
18776
18777         * Makefile.am (stamp-vcl): Keep only one copy of stamp-vcl; in
18778         $(top_srcdir), so that an up-to-date version is rolled into the
18779         dist tarball even from a VPATH build.
18780         ($(top_srcdir)/config/ltmain.sh): Don't depend on Makefile,
18781         otherwise ltmain.sh needs to be rebuilt after every config.status
18782         run, and then configure needs to be rebuilt, and it all goes
18783         horribly wrong :-/  Unfortunately, we can't depend on Makefile.am
18784         either, because that is a circular dependency.  The downside of
18785         this change is that it is now possible to edit Makefile.am to
18786         change the way ltmain.sh is generated, and the dependency
18787         information can't tell that ltmain.sh needs regenerating.
18788
18789 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
18790
18791         * doc/libtool.texi (Cheap tricks): Escape the `@' for texinfo.
18792
18793 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
18794
18795         * doc/libtool.texi (Cheap tricks): Fix the instructions for making
18796         a ltmain.in wrapping libtool in light of recent changes to the
18797         version checking code.
18798
18799 2004-08-26  Peter O'Gorman  <peter@pogma.com>
18800
18801         * config/ltmain.in [darwin]: Use the -dylib_file flag and avoid
18802         linking to so many libraries on darwin.
18803
18804         * m4/libtool.m4 [darwin]: Don't use a libname triplet, a couplet
18805         is perfectly fine.
18806
18807         * m4/ltdl.m4: Don't use the dyld loader on darwin 8 or later.
18808
18809 2004-08-25  Paolo Bonzini  <bonzini@gnu.org>
18810
18811         * config/ltmain.in (piecewise linking): Use a GNU ld script if
18812         possible.
18813         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Add per-tag variable
18814         with_gnu_ld.
18815         (_LT_LANG_CXX_CONFIG): Don't set unused variable with_gnu_ldcxx.
18816
18817 2004-08-22  Gary V. Vaughan  <gary@gnu.org>
18818
18819         The Grand Renaming.  In preparation for libtool-2.0, move all of
18820         the many and varied m4 symbols accumulated by libtool over the
18821         years, considering also that modern autoconf can detect unexpanded
18822         macros even without AC in the macro name:
18823
18824         * bootstrap: Remove libltdl/config.h from previous releases.
18825         * m4/libtool.m4, m4/ltdl.m4, doc/libtool.texi: Basically, run a
18826         giant sed transformation like this:
18827         s,AC_LIB_LTDL,LTDL_INIT,g
18828         s,AC_LIBLTDL_CONVENIENCE,LTDL_CONVENIENCE,g
18829         s,AC_LIBLTDL_INSTALLABLE,LTDL_INSTALLABLE,g
18830         s,AC_WITH_LTDL,LT_WITH_LTDL,g
18831         s,AC_LTDL_ENABLE_INSTALL,_LT_ENABLE_INSTALL,g
18832         s,AC_DEPLIBS_CHECK_METHOD,_LT_CHECK_MAGIC_METHOD,g
18833         s,AC_LIBTOOL_OBJDIR,_LT_CHECK_OBJDIR,g
18834         s,AC_LTDL_OBJDIR,_LT_CHECK_OBJDIR,g
18835         s,AC_LTDL_DLPREOPEN,_LT_CHECK_DLPREOPEN,g
18836         s,AC_LIBTOOL_SYS_MAX_CMD_LEN,LT_CMD_MAX_LEN,g
18837         s,AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,_LT_CMD_GLOBAL_SYMBOLS,g
18838         s,AC_LIBTOOL_SYS_OLD_ARCHIVE,_LT_CMD_OLD_ARCHIVE,g
18839         s,AC_PROG_LD_RELOAD_FLAG,_LT_CMD_RELOAD,g
18840         s,AC_LIBTOOL_SYS_LIB_STRIP,_LT_CMD_STRIPLIB,g
18841         s,AC_CHECK_LIBM,LT_LIB_M,g
18842         s,AC_LTDL_DLLIB,LT_LIB_DLLOAD,g
18843         s,AC_LIBTOOL_COMPILER_OPTION,_LT_COMPILER_OPTION,g
18844         s,AC_LIBTOOL_PROG_CC_C_O,_LT_COMPILER_C_O,g
18845         s,AC_LIBTOOL_PROG_COMPILER_NO_RTTI,_LT_COMPILER_NO_RTTI,g
18846         s,AC_LIBTOOL_PROG_COMPILER_PIC,_LT_COMPILER_PIC,g
18847         s,AC_LIBTOOL_SYS_HARD_LINK_LOCKS,_LT_COMPILER_FILE_LOCKS,g
18848         s,AC_LTDL_DLSYM_USCORE,LT_FUNC_DLSYM_USCORE,g
18849         s,AC_LIBTOOL_LINKER_OPTION,_LT_LINKER_OPTION,g
18850         s,AC_LIBTOOL_PROG_LD_SHLIBS,_LT_LINKER_SHLIBS,g
18851         s,AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH,_LT_LINKER_HARDCODE_LIBPATH,g
18852         s,AC_PATH_MAGIC,_LT_PATH_MAGIC,g
18853         s,AC_PATH_TOOL_PREFIX,_LT_PATH_TOOL_PREFIX,g
18854         s,AC_PROG_LD,LT_PATH_LD,g
18855         s,AC_PROG_LD_GNU,_LT_PATH_LD_GNU,g
18856         s,AC_PROG_NM,LT_PATH_NM,g
18857         s,AC_LTDL_SYS_DLOPEN_DEPLIBS,LT_SYS_DLOPEN_DEPLIBS,g
18858         s,AC_LIBTOOL_DLOPEN_SELF,LT_SYS_DLOPEN_SELF,g
18859         s,AC_LIBTOOL_POSTDEP_PREDEP,_LT_SYS_HIDDEN_LIBDEPS,g
18860         s,AC_LTDL_SYSSEARCHPATH,LT_SYS_DLSEARCH_PATH,g
18861         s,AC_LTDL_SHLIBEXT,LT_SYS_MODULE_EXT,g
18862         s,AC_LTDL_SHLIBPATH,LT_SYS_MODULE_PATH,g
18863         s,AC_LTDL_SYMBOL_USCORE,LT_SYS_SYMBOL_USCORE,g
18864         s,AC_LIBTOOL_SYS_DYNAMIC_LINKER,_LT_SYS_DYNAMIC_LINKER,g
18865         s,_LT_AC_TAGVAR,_LT_TAGVAR,g
18866         s,_LT_AC_SYS_COMPILER,_LT_TAG_COMPILER,g
18867         s,_LT_AC_PROG_ECHO_BACKSLASH,_LT_PROG_ECHO_BACKSLASH,g
18868         s,_LT_AC_SYS_LIBPATH_AIX,_LT_SYS_MODULE_PATH_AIX,g
18869         s,_LT_AC_SHELL_INIT,_LT_SHELL_INIT,g
18870         s,_LT_AC_LOCK,_LT_ENABLE_LOCK,g
18871         s,_LT_AC_CHECK_DLFCN,_LT_HEADER_DLFCN,g
18872         s,_LT_AC_TRY_DLOPEN_SELF,_LT_TRY_DLOPEN_SELF,g
18873         s,LT_AC_PROG_EGREP,_LT_DECL_EGREP,g
18874         s,LT_AC_PROG_SED,_LT_DECL_SED,g
18875         * doc/libtool.texi (Autoconf macros): Document exported macros.
18876         * libtoolize.in: Compare ltdl.m4 serial numbers for LTDL_INIT
18877         instead of newly obsoleted AC_LIB_LTDL.
18878         (func_scan_files): Also set seen_ltdl for LTDL_INIT and
18879         LT_WITH_LTDL.
18880
18881 2004-08-12  Peter O'Gorman  <peter@pogma.com>
18882
18883         * m4/libtool.m4 [GNU/linux] (AC_DEPLIBS_CHECK_METHOD): Cleanup,
18884         thanks to Daniel Reed.
18885
18886 2004-08-11  Daniel Reed  <djr@redhat.com>
18887
18888         * tests/demo-nopic.test: Do not run on x86_64 or s390*
18889
18890 2004-08-06  Gary V. Vaughan  <gary@gnu.org>
18891
18892         * libltdl/ltdl.c (lt_dlforeachfile): LT_SYS_LIBSEARCH_PATH is not
18893         an environment variable, it is an actual path.
18894
18895         * bootstrap: Remove `-f Makefile.am' now that we have an actual
18896         Makefile to build ltmain.sh.
18897         Reported by Noah Mish <noah@cs.caltech.edu>
18898
18899 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
18900
18901         * bootstrap: Run the bootstrap rules from a file named Makefile,
18902         copied from Makefile.am for fresh checkouts.
18903
18904 2004-08-05  Alexandre Duret-Lutz  <adl@gnu.org>
18905
18906         * m4/libtool.m4 (_LT_PROG_LTMAIN): Require ltmain.sh using
18907         using Autoconf's new AC_REQUIRE_AUX_FILE.
18908
18909 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
18910
18911         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Depends on
18912         Makefile.
18913         (timestamp): Factor out timestamp setting and edit it based on the
18914         version number, so that it is empty for release versions.
18915         ($(top_srcdir)/config/ltmain.sh): Use it.
18916         (libtoolize): Ditto.
18917
18918         * Makefile.am (libtool): Depends on ltmain.sh.
18919         (libtoolize): Set and substitute TIMESTAMP.
18920
18921         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Actually run
18922         $(MKSTAMP) before changing directories, or it won't be found.
18923         Forgot to save before my last commit :-(
18924
18925         * Makefile.am ($(top_srcdir)/m4/ltversion.m4): Since we already did
18926         `cd $(top_srcdir)' for this rule, we can't mv ltversion.tmp to the
18927         relative $(top_srcdir) again!  Also, run $(MKSTAMP) before changing
18928         directories, or it won't be found.
18929         ($(top_srcdir)/config/ltmain.sh): Ditto.
18930         (EXTRA_DIST): We should distribute ltversion.m4 too.
18931
18932 2004-08-04  Peter O'Gorman  <peter@pogma.com>
18933
18934         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Since CONFIG_SHELL may
18935         not actually be set, we should use SHELL here, also make darn sure
18936         that SHELL is set to something. Bug from Willem Jan Palenstijn
18937         <wpalenst@math.leidenuniv.nl>.
18938
18939 2004-08-03  Jacob Meuser  <jakemsr@jakemsr.com>
18940
18941         * ltmain.in: Allow some static libraries to be used in generating a
18942         shared library on NetBSD and OpenBSD. match-pattern_regex decides
18943         which are good.
18944
18945 2004-08-02  Geoffrey Keating  <geoffk@apple.com>
18946
18947         * m4/libtool.m4 [darwin]: Don't use -all_load.
18948
18949 2004-08-01  Maciej W. Rozycki  <macro@linux-mips.org>
18950
18951         * m4/libtool.m4 (LT_AC_PROG_SED): Set SED when running from cache as
18952         well.
18953
18954 2004-07-31  Gary V. Vaughan  <gary@gnu.org>
18955
18956         Although libtool is optimised to not need to subconfigure libltdl,
18957         the installed libltdl sources for libtoolize need to put
18958         libltdl/configure.ac in the parent package so that *it* can
18959         subconfigure libltdl.  That way we don't put any constraints on
18960         the build system used by the parent package because the
18961         libtoolized libltdl subtree is a self-contained sub-project:
18962
18963         * libltdl/Makefile.am (EXTRA_DIST): Add configure.ac.
18964         (nobase_ltdldata_DATA): Change back to libltdl's own
18965         configure.ac.
18966
18967 2004-07-30  Gary V. Vaughan  <gary@gnu.org>
18968
18969         My thanks to Alexandre Duret-Lutz <adl@gnu.org> for the insight
18970         required to write this changeset -- especially that ltmain.sh is
18971         the same on any machine for a given release, which I hadn't
18972         noticed for some bizarre reason: It turns out that generating
18973         distributed files from configure causes no end of hassle, as
18974         evidenced by the many patches I've generated over the last few
18975         days to try and get the dist and distcheck make rules to work.
18976         Instead of all that hair, we now simply generate our distributed
18977         files (now including ltmain.sh) with make rules -- and since
18978         automake creates make variables for all AC_SUBSTs, that is really
18979         easy.  The code looks a lot more like automake and autoconf
18980         Makefile.ams now, and doesn't have all the rough edges the earlier
18981         hacky solution suffered from.  We still generate libtool from
18982         config.status, but that is not a distributed file, and doesn't
18983         break the golden rule.  Besides, there is way more going on there
18984         than a bunch of substitutions:
18985
18986         * Makefile.am (edit): New common sed substitutions for files now
18987         generated by make instead of config.status.
18988         (CLEANFILES): Clean new tmp files.
18989         (EXTRA_DIST): Add ltmain.sh.
18990         (vcl-tmp): Reinstated.
18991         (m4/ltversion.m4, config/ltmain.sh): New rules.  Generate from
18992         here instead of config.status.
18993         (libtoolize): Ditto.
18994         (libtool): Call config.status to regenerate if necessary.
18995         (dist-hook): Removed.
18996         * config/ltmain.in: Moved here from top_srcdir.
18997         * README-alpha: Update instructions to check AS_SHELL_SANITIZE is
18998         up to date.
18999         * bootstrap: Rewritten.  Generate m4/ltversion.m4 and
19000         config/ltmain.sh because configure depends on them.
19001         * configure.ac (AC_CONFIG_SRCDIR): Use libtoolize.in now that
19002         ltmain.in has moved.
19003         (AC_CONFIG_FILES): Don't generate distributed files,
19004         config/ltmain.sh and libtoolize from config.status.  We have make
19005         rules to do that now.
19006
19007 2004-07-30  Peter O'Gorman  <peter@pogma.com>
19008
19009         * m4/libtool.m4, ltmain.in: readd the comments that I erased.
19010
19011         * ltmain.in [darwin]: We already had a module var, there can be
19012         only one.
19013
19014         * m4/libtool.m4, ltmain.in: autoconf now says the best thing to do
19015         with CDPATH is to (unset CDPATH) >/dev/null 2>&1 && unset CDPATH,
19016         so do it.
19017
19018 2004-07-29  Gary V. Vaughan  <gary@gnu.org>
19019
19020         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Ugh. More hair to
19021         help `make distcheck'; not only do we have to make a copy of
19022         ltmain.sh available in the source tree, but we have to be really
19023         careful about permission bit twiddling when we copy it across into
19024         the possible read-only $(top_srcdir)/config directory!
19025
19026         * tests/tagtrace.test: Skip this test when running a VPATH build
19027         against a read-only source tree (as in distcheck for example),
19028         since autoconf wants to write temporary files in $top_srcdir
19029         otherwise.
19030
19031         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Automake assumes,
19032         quite rightly for every project except libtool, that there will be
19033         an ltmain.sh in the source tree.
19034         (EXTRA_DIST): As do the dist rules it generates.
19035         (dist-hook): Even though we definitely don't want to distribute
19036         our local ltmain.sh.
19037
19038         * config/config.guess, config/config.sub: Don't check these in,
19039         they cause spurious conflicts on cvs commit and update, and are
19040         added by bootstrap in any case.
19041
19042         * configure.ac (AC_INIT): Revert an accidental commit from my
19043         testing of package_revision.
19044
19045 2004-07-29  Alexandre Duret-Lutz  <adl@gnu.org>
19046
19047         * doc/libtool.texi (Tags): Document CC.
19048         * m4/libtool.m4 (_LT_SETUP): Register CC as supported tag so that
19049         Automake uses it.
19050
19051 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
19052
19053         Fix a long-standing bug where macro_version was always empty in
19054         the generated m4/ltversion.m4.  Except for CVS revisions:
19055
19056         * ltmain.in (package_revision): Don't try to deduce it from
19057         TIMESTAMP, since that is empty for release versions; simply
19058         substitute it...
19059         * configure.ac (package_revision): ...from here, having
19060         precalculated it before resetting TIMESTAMP for release versions.
19061         * bootstrap: Force regeneration of m4/ltversion.m4, but retain
19062         timestamps if there is no change to the content.
19063
19064 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
19065
19066         To take full advantage of this, libtool must be bootstrapped with
19067         CVS autoconf, otherwise pdksh chokes on some nested escaped quotes
19068         from libtool.m4.  Using CVS autoconf protects configure from
19069         non-bourne compatible shells in the same way this changeset
19070         protects libtool and libtoolize:
19071
19072         * libtoolize.in: Include latest CVS autoconf AS_SHELL_SANITIZE
19073         expansion to make various shells fully bourne compatible.
19074         * ltmain.in: Ditto.
19075         * m4/libtool.m4 (AC_PATH_TOOL_PREFIX): Remove spurious quotes, the
19076         RHS of = assignment is not IFS split.
19077         (_LT_LANG_CXX_CONFIG): Ditto.
19078         (AC_LIBTOOL_POSTDEP_PREDEP): Ditto.
19079
19080 2004-07-27  Gary V. Vaughan  <gary@gnu.org>
19081
19082         This change fixes another VPATH build bug, where the vcl.tmp
19083         target forced a rebuild of stamp-vcl in the build tree (and
19084         hence regeneration of m4/ltversion.m4, thus an automake driven
19085         rebootstrap that doesn't know about $fakes) requiring a fresh
19086         ./bootstrap after every cvs/tla update:
19087
19088         * Makefile.am (vcl.tmp): Removed.
19089         (stamp-vcl): Adopt former vcl.tmp target rules.
19090
19091 2004-07-25  Gary V. Vaughan  <gary@gnu.org>
19092
19093         * ltmain.in: Make sure that dependency libraries of -dlpreopened
19094         libraries are propogated properly.
19095
19096 2004-07-23  Joe Orton  <joe@manyfish.co.uk>
19097
19098         * libtool.m4: Treat bsdi5* like bsdi4*.
19099
19100 2004-07-22  Peter O'Gorman  <peter@pogma.com>
19101
19102         * ltmain.in [darwin](func_extract_archives): $SED not sed.
19103
19104         * ltmain.in [darwin](func_extract_archives): Clean up last commit
19105         a little, some suggestions are from Albert Chin, those that are
19106         broken are mine.
19107
19108         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for
19109         included files in the right places.
19110
19111 2004-07-18  Peter O'Gorman  <peter@pogma.com>
19112
19113         * ltmain.in [darwin](func_extract_archives): Because fat archives
19114         on darwin can not be extracted using ar, we need to use lipo to
19115         extract the thin archives and then use lipo again to generate the
19116         individual fat objects. This should allow people to run configure
19117         with CC set to "cc -arch ppc -arch ppc64" or "cc -arch ppc -arch
19118         i386" or whatever to match the toolchain they have available.
19119
19120 2004-07-18  Greg Eisenhauer  <eisen@cc.gatech.edu>
19121
19122         * libltdl/loaders/Makefile.am: Use AM_MAKEFLAGS not MAKEFLAGS.
19123
19124 2004-07-18  Peter O'Gorman  <peter@pogma.com>
19125
19126         * libltdl/Makefile.am: Ensure that lt__dirent.h is part of the dist,
19127         also make failed looking for configure.ac, look for
19128         $(top_srcdir)/configure.ac instead.
19129
19130 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
19131
19132         * libltdl/lt__private.h (lt_dlhandle_struct): Renamed to
19133         lt__handle to better reflect the naming scheme.
19134         * libltdl/ltdl.h (lt_dlhandle): Be truly opaque with a void *.
19135         * libltdl/lt_dlloader.c (lt_dlloader_remove): Party to
19136         lt__private.h, so use internal lt__handle instead of opaque
19137         lt_dlhandle.
19138         * libltdl/ltdl.c (LT_DLGET_FLAG, LT_DLSET_FLAG): Add a cast to
19139         internal lt__handle type.
19140         (try_dlopen, tryall_dlopen, load_deplibs, unload_deplibs): Ditto.
19141         (lt_dlexit, lt_dlclose, lt_dlsym): Use lt__handle to iterate
19142         throught the handle list.
19143         (try_dlopen): Use lt__zalloc instead of MALLOC and memset.
19144         * libltdl/ltdl.h (lt_dlcaller_id): Be truly opaque with a void *.
19145         (lt_dlhandle_interface): New callback type for filtering handles
19146         according to the interface they present.
19147         * libltdl/ltdl.c (lt_dlcaller_register): Take an id and an
19148         interface check callback, and generate a caller_id.
19149         (iterator): New static variable for the use of...
19150         (lt_dlhandle_first): New function.  Set the iterator for
19151         subsequent calls to lt_dlhandle_next.
19152         (lt_dlhandle_next): Either work as before when iterator is unset,
19153         or else skip handles that fail the interface check in iterator set
19154         by lt_dlhandle_first.
19155         * libltdl/ltdl.h (lt_dlhandle_first): Declaration.
19156         * doc/libtool.texi (User defined module data): Document the new
19157         APIs.
19158         * NEWS: Updated.
19159
19160 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
19161
19162         Split lt_dlloader management into a separate file, and factor
19163         `loaders' list management into a new SList ADT.  In the process,
19164         the API for writing loaders is a little cleaner, so all the
19165         existing loaders were tweaked to take advantage of that:
19166
19167         * libltdl/slist.h, libltdl/slist.c: New files implementing a
19168         generic singly linked list container ADT.  The ADT is purely
19169         internal, and none of its API's are visible from an installed
19170         libltdl.
19171         * libltdl/lt_dlloader.h (lt_dlloader): Removed next field again
19172         :-) Renamed to lt_dlvtable for API.  Changed all callers.
19173         (lt_dlloader_get): New function to turn an lt_dlloader into its
19174         associated lt_dlvtable.
19175         (lt_dlloader_add): Removed unused data parameter.  The caller
19176         data belongs to (and is set by) the loader itself, not the
19177         loader's client.  Changed all callers.
19178         (lt_dlloader_name, lt_dlloader_data): Removed.  Use
19179         lt_dlloader_get instead!
19180         * libltdl/lt__private.h: Include slist.h.
19181         (lt__alloc_die_callback): Add missing LT_SCOPE to declaration.
19182         (lt_dlhandle_struct): Use lt_dlvtable instead of opaque
19183         lt_dlloader.
19184         * libltdl/ltdl.c (lt_dlexit): Rewritten for the new loader API.
19185         (loaders, lt_dlloader_add, lt_dlloader_remove, lt_dlloader_next,
19186         lt_dlloader_find): Moved from here...
19187         * libltdl/lt_dlloader.c ((loaders, lt_dlloader_add,
19188         lt_dlloader_remove, lt_dlloader_next, lt_dlloader_find): ...to
19189         here.  And rewritten in terms of new SList interface.
19190         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Rewritten in terms of
19191         new lt_dlloader interface.
19192         * libltdl/Makefile.am (libdlloader_la_SOURCES): Add slist.h and
19193         slist.c.  Move lt_dlloader.h from here...
19194         (pkginclude_HEADERS): ...to here.
19195         (libltdl_la_SOURCES): Add lt_dlloader.c and lt_dlloader.h.
19196
19197 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
19198
19199         Collapse two almost identical structures into one:
19200
19201         * libltdl/lt_dlloader.h (lt_dlloader): Add next field.
19202         * libltdl/ltdl.c (lt_user_dlloader): Remove entirely.  Change all
19203         callers to use lt_dlloader instead.  Add a compatibility macro.
19204         (lt_dlloader_add): Remove copy and allocate stage, just hook
19205         directly into the loaders list.
19206
19207 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
19208
19209         A cleaner way to access the private fields of an lt_dlhandle
19210         than my move of the module field into lt_dlinfo:
19211
19212         * libltdl/ltdl.c (lt_caller_data, lt_dlhandle_struct): Move from
19213         here...
19214         * libltdl/lt__private.h (lt_caller_data, lt_dlhandle_struct):
19215         ...to here.  And put the module field back here...
19216         * libltdl/ltdl.h (lt_dlinfo): ...instead of here.
19217         * libltdl/loaders/loadlibrary.c (vm_open): Adjust.
19218
19219 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
19220
19221         * libltdl/lt__private.h (streq, strneq): New macros to make strcmp
19222         calls as used for simple comparison easier to read.
19223         * libltdl/loaders/dyld.c, libltdl/loaders/preopen.c,
19224         libltdl/ltdl.c: Use them!
19225
19226 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
19227
19228         This pervasive changeset makes two intertwined deep changes to the
19229         operation of libtool (neither would work alone).  First, there is
19230         a new feature that allows libraries to preopen modules.  This
19231         entails a backwards incompatible change to the libltdl API for
19232         separating out the preloaded symbol lists by owner.  Second, in
19233         the tradition of "eating our own dogfood", libltdl now preloads
19234         its own dlloaders.  The internal API for dlloaders has also had to
19235         change in a backwards incompatible way in support of the new
19236         library preloading feature.  If you don't use preloaded libraries,
19237         you needn't change your project sources, though you will need to
19238         recompile against the new libltdl.  The API changes are mostly
19239         confined to dlloaders, so you probably needn't worry about those
19240         (unless you have written a custom loader that you want libltdl to
19241         use):
19242
19243         * configure.ac (AC_CONFIG_FILES): Add libltdl/loaders/Makefile.
19244         * libltdl/configure.ac (AC_CONFIG_FILES): Add loaders/Makefile.
19245         * libltdl/loaders: New directory for module loaders, to simplify
19246         Makefile rules, and to give the loaders themselves names that are
19247         unique in the first few characters.
19248         * libtoolize.in (func_copy_all_files): Copy recursively to pick up
19249         the loaders directory contents.
19250         * libltdl/loaders/Makefile.am: New file.  Move module building
19251         rules to here...
19252         * libltdl/Makefile.am: ...from here.
19253         (VERSION_INFO): Bumped version info to signify interface changes.
19254         (libltdl_la_CPPFLAGS, libltdlc_la_CPPFLAGS): Set LTDLOPEN
19255         appropriately for each library.
19256         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
19257         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
19258         libltdl/loader-loadlibrary.c libltdl/loader-preopen.c,
19259         libltdl/loader-shl_load.c: Moved from here...
19260         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
19261         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
19262         libltdl/loaders/loadlibrary.c libltdl/loaders/preopen.c,
19263         libltdl/loaders/shl_load.c: ...to here.
19264         (get_vtable): New entry function for each.
19265         * libltdl/loaders/preopen.c (lt_dlsymlists_t): Replaced by...
19266         (symlist_chain): ...a new structure which maps lists of preloaded
19267         symbols from the object that loads them.
19268         (lt_dlpreload_open): New function to automatically open all
19269         preloaded modules belonging to a named object (ORIGINATOR).
19270         * libltdl/lt__alloc.c (lt__zalloc): New function to return a block
19271         of zeroed out new memory.
19272         * libltdl/lt__alloc.h (lt__zalloc): Prototype it.
19273         * libltdl/lt__private.h (lt__alloc_die_callback): Add missing
19274         prototype.
19275         (lt__error_strings): Make this opaque to callers.
19276         * libltdl/lt_error.c (lt__error_strings): Move the implementation
19277         to here.
19278         * libltdl/lt_dlloader.h (lt_user_dlloader): Add extra fields to
19279         make originator focused preloading possible.  *BREAKS BACKWARDS
19280         COMPATIBILITY*
19281         (lt_dlloader_add): Take advantage of new fields to simplify
19282         paramater list.
19283         * libltdl/lt_system.h (LT_STR): New ANSI stringification macro.
19284         (LT_CONC): Fix it to work from within macros.
19285         * libltdl/ltdl.c (loader_init, loader_init_callback): Simplify
19286         dlloader loading.
19287         (get_vtable, preloaded_symbols): Point these at the preopen.c
19288         symbols to bootstrap the loader chain.
19289         (lt_dlinit): Load the preopen dlloader manually, and then use it
19290         to load any other preloaded dlloaders.
19291         (lt_dlloader_add): Simplify parameter list. Populate new
19292         fields. Chain new loaders according to priority field.
19293         * libltdl/ltdl.h (lt_dlsymlist): Add a new originator field.
19294         (lt_dlpreload_callback_func): Type of a callback for automatic
19295         lt_dlpreload_open loading.
19296         (LTDL_SET_PRELOADED_SYMBOLS): Adjust to hook into preloaded
19297         symbols from the "@PROGRAM@" originator.
19298         * tests/demo/dlmain.c (main): Use mangled preloaded_symbols symbol.
19299         * tests/pdemo/longer_file_name_dlmain.c (main): Ditto.
19300         * ltmain.in: Don't spew spurious warnings when dlopening and
19301         dlpreopening modules.
19302         (func_generate_dlsyms): Factored out from multiple copies in the
19303         rest of the code. Generate originator keyed symbol lists.
19304         (func_extract_archives): Also factored.  Extract the contents of
19305         convenience archives for linking with dependent libraries when
19306         --whole-archive is not available.
19307         [darwin]: Don't try to link $old_library unless it exists, and
19308         $lib is a bundle.
19309         * m4/ltdl.m4 (AC_LTDL_DLLIB): Check for all possible dynamic
19310         loading libraries/apis rather that stopping when an acceptable one
19311         is discovered.
19312         (LT_DLLOADERS): New variable for holding dlloaders that can be
19313         preloaded.
19314         * doc/libtool.texi: Document interface changes.
19315         * NEWS: Updated.
19316
19317 2004-07-12  Peter O'Gorman  <peter@pogma.com>
19318
19319         * m4/libtool.m4 [darwin]: Set whole_archive_flag_spec to '' for xlc,
19320         or it does not pass it's tests. xlc passes -noall_load (the default)
19321         and when -all_load is also specified Apple's /usr/bin/libtool barfs
19322         and dies.
19323
19324 2004-07-07  Gary V. Vaughan  <gary@gnu.org>
19325
19326         * libltdl/ltdl.h (lt_dlinfo): Move private module field to here...
19327         * libltdl/ltdl.c (lt_dlhandle_struct): ...from here.  Changed all
19328         callers.
19329         * libltdl/loader-loadlibrary.c (sys_wll_open): Use new inteface to
19330         scan loaded handle->info.module fields for previously loaded
19331         modules.
19332         * doc/libtool.texi (User defined module data): Document changes to
19333         the interface.
19334         * NEWS: Updated.
19335         Reported by Chuck Wilson <cwilson@ece.gatech.edu>
19336
19337 2004-07-07  Brad  <brad@comstyle.com>
19338
19339         * m4/libtool.m4: Fixes for the OpenBSD support
19340
19341 2004-06-24  Noah Misch  <noah@cs.caltech.edu>
19342
19343         * ltmain.in: Unset the zsh GLOB_SUBST option, which makes zsh
19344         handle backslash quoting poorly, before doing anything else.
19345         * tests/defs: Likewise.
19346
19347 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
19348
19349         * libtoolize.in (libtoolize_flags): With the --ltdl option, we
19350         libtoolize the libltdl subdirectory automatically.
19351         * m4/ltdl.m4 (AC_WITH_LTDL): Fix overquoted args.
19352
19353 2004-06-21  Peter O'Gorman  <peter@pogma.com>
19354
19355         * ltmain.in (dependency_libs) [darwin]: Remove -framework stuff from
19356         dependency_libs. Instead, invent a new .la var "inherited_linker_flags"
19357         to keep any linker flags which should be used when linking the library,
19358         but are outside the usual -L -l, -R etc that can be used in
19359         dependency_libs. Any unusual flags in dependency_libs cause recent
19360         versions of libtool to die with "cannot find the library `'", so
19361         it is required to move frameworks out of there. :(
19362
19363 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
19364
19365         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>:
19366         * libtoolize.in: Quote $# to make sh.test happy again.
19367
19368         * m4/ltdl.m4 (AC_WITH_LTDL): Remove redundant AC_REQUIRE calls.
19369         Either set variables to allow a client to link with the installed
19370         libltdl, or else compile a local libltdl as a convenience library.
19371         * libtoolize.in (opt_ltdl): Removed in favour of...
19372         (ltdldir): ...this, which is defaulted to "libltdl" or can be set
19373         by the user with an argument to --ltdl.
19374         (Main): Use it!
19375         * doc/libtool.texi (Distributing libltdl): Improved documentation
19376         on libltdl.
19377         (Invoking libtoolize): Document new optional --ltdl target
19378         directory argument.
19379
19380 2004-06-17  Gary V. Vaughan  <gary@gnu.org>
19381
19382         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Fix a typo
19383         in allow_undefined_flag: s,${Wl},${wl},g
19384
19385         * libtoolize.in (func_scan_files): Accept AC_WITH_LTDL as an
19386         indication that libltdl is being used.
19387         (Main): Without AC_CONFIG_MACRO_DIR, don't just dump all the
19388         macro files in `.' since they are never used, and aclocal will
19389         copy them from $aclocaldir into aclocal.m4 anyway.
19390         Reported by Alexandre Duret-Lutz <adl@gnu.org>
19391
19392 2004-06-16  Brad  <brad@comstyle.com>
19393
19394         * m4/libtool.m4: More improvements to OpenBSD support.
19395         * NEWS: Updated.
19396
19397 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
19398
19399         libltdl uses LIBOBJS, which leak out into a parent project if both
19400         share the same configure.ac.  Libtool itself doesn't compile any
19401         code, so it is okay to do it during bootstrap, but other projects
19402         need to treat libltdl as a configurable subproject to keep their
19403         respective LIBOBJS separate:
19404
19405         * libltdl/configure.ac: New file, based on configure.ac.
19406         * libltdl/Makefile.am (AC_LOCAL_AMFLAGS): Use our own m4
19407         directory.
19408         (ltdldata_DATA): List *all* the files that libtoolize --ltdl will
19409         install.
19410
19411 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
19412
19413         Automake 1.9 won't have the AC_PROG_EGREP bug (aclocal used to
19414         pull an old installed libtool.m4 as well as the bootstrap
19415         m4/libtool.m4 if an AC_DEFUN was removed), and we have
19416         lt~obsolete.m4 to work around it in the mean time.  libtoolize
19417         can install macro files from $prefix/share/aclocal perfectly well
19418         without us needing to move to a whole other directory:
19419
19420         * Makefile.am (pkgmacro_DATA): Renamed to aclocal_DATA, so m4
19421         files are installed to $prefix/share/aclocal again.
19422         (install-data-local): Don't remove just installed macros!
19423         * libtoolize.in (pkgmacrodir): Renamed to aclocaldir.
19424         (func_copy_some_files): New function factored out of...
19425         (func_copy_all_files): ...here.  Adjust to use func_copy_some_files.
19426         (re_pkgaux_files): Renamed to glob_pkgaux_files, since it is not
19427         a regular expression.
19428         (re_pkgmagro_files): Replaced with...
19429         (pkgmacro_files): ...a colon delimited list of libtool installed
19430         m4 files from aclocaldir.
19431         (Main): Copy macro files from aclocaldir again.
19432         * NEWS: Updated.
19433
19434 2004-05-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19435
19436         * ltmain.sh (check_executable): The WIN32 API and MinGW do not support
19437         S_IXOTH and S_IXGRP so use of these modes should be conditional.
19438
19439 2004-05-21  Gary V. Vaughan  <gary@gnu.org>
19440
19441         * tests/tagtrace.test: Forgot to add this file to the repository
19442         for Alexandre's 2004-05-16 patch below.
19443
19444 2004-05-18  Peter O'Gorman  <peter@pogma.com>
19445
19446         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Make this an m4_defun,
19447         test the tags compiler to see if it is GCC, not the CC compiler.
19448
19449 2004-05-16  Alexandre Duret-Lutz  <adl@gnu.org>
19450
19451         * doc/libtool.texi (Invoking libtool): Mention --tag=TAG.
19452         (Tags, Trace interface): New nodes.
19453         * m4/libtool.m4 (LT_SUPPORTED_TAG): New macro.
19454         (_LT_LANG): Call it.
19455         * tests/tagtrace.test: New file.
19456         * tests/Makefile.am
19457         (TESTS): Add tagtrace.test.
19458         * tests/defs: Define AUTOCONF.
19459
19460 2004-05-14  Mike Gorchak  <lestat@i.com.ua>
19461
19462         * ltmain.in: Add new qnx version type support.
19463         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Use it.  Set
19464         ldqnx.so linker type.
19465         (AC_DEPLIBS_CHECK_METHOD): QNX6 uses GNU C++, with deplib
19466         checking, so use pass_all.
19467         (AC_LIBTOOL_PROG_COMPILER_PIC): Use -shared for QNX.
19468         (_LT_LANG_CXX_CONFIG): QNX can make shared libraries.
19469         * m4/ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): QNX opens deplibs on
19470         dlopen.
19471         * NEWS: Updated.
19472
19473 2004-05-05  Peter O'Gorman  <peter@pogma.com>
19474
19475         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Insert space
19476         around = for a test and a comma between runpath_var and $1. Bug
19477         reported by Max Bowsher.
19478
19479 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
19480
19481         * libltdl/argz.h: Moved from here...
19482         * libltdl/argz_.h: ...to here, so as not to shadow system
19483         argz.h when we `#include <argz.h>' for example.
19484         #include stdlib.h and sys/types.h to ensure we get a size_t
19485         definition.
19486         * libltdl/argz.c (HAVE_CONFIG_H): Set it up how ltdl likes it when
19487         used by another client.
19488         * m4/argz.m4: New file.
19489         (gl_FUNC_ARGZ): Try to find an error_t definition, and a system
19490         argz.h.
19491         * m4/ltdl.m4: Use it.
19492         (AC_LTDL_FUNC_ARGZ): Removed.
19493         * libltdl/lt__glibc.h: #include <argz.h> to pick up either the
19494         system argz.h or our libltdl/argz.h if necessary.
19495         * libltdl/Makefile.am (libltdl_la_SOURCES): Move argz.h from
19496         here...
19497         (ltdldata_DATA): ...here. Along with argz.c.
19498         (argz.h): Generate from argz_.h if the system file is missing.
19499         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
19500
19501 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
19502
19503         According to Howard Chu <hyc@highlandsun.com>:
19504         Applications should assume that the native dlopen is NOT
19505         thread-safe, and take care of locking themselves. All application
19506         calls into libltdl should thus be protected by the caller.
19507
19508         * libltdl/lt_mutex.c, libltdl/lt_mutex.h: Removed.
19509         * libltdl/Makefile.am (pkginclude_HEADERS): Removed lt_mutex.h.
19510         (libltdl_la_SOURCES): Removed lt_mutex.c and lt_mutex.h.
19511         * libltdl/ltdl.h: Don't include lt_mutex.h.
19512         * libltdl/lt__private.h (LT__MUTEX_GETERROR, LT__MUTEX_SETERROR)
19513         (LT__MUTEX_SETERRORSTR): Renamed to...
19514         (LT__GETERROR, LT__SETERROR, LT__SETERRORSTR): ...this.  Changed
19515         all callers.
19516         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, lt_dlmutex_lock)
19517         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror):
19518         Removed.  Changed all callers.
19519         * doc/libtool.texi (Thread Saftey in libltdl):
19520         * NEWS: Updated.
19521
19522 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
19523
19524         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Detect Intel C++ compiler
19525         version more idiomatically.
19526
19527 2004-04-19  Albert Chin-A-Young  <china@thewrittenword.com>
19528
19529         * m4/libtool.m4: Use cc rather than ld to created
19530         a shared library on HP-UX 11.x. On HP-UX 10.x, the
19531         C compiler doesn't grok -b so we continue to use ld.
19532
19533         * m4/libtool.m4: Use cc rather than ld to create a
19534         shared library on Solaris. When using the Sun
19535         Workshop compiler 5.0 (and I presume any previous
19536         version), revert to ld due to compiler errors.
19537
19538         * m4/libtool.m4: Use cc rather than ld to created
19539         a shared library on Tru64 UNIX.
19540
19541         * m4/libtool.m4: Use cc rather than ld to created
19542         a shared library on IRIX.
19543
19544         * libltdl/loader-shl_load.c: Fix typos during reorg.
19545
19546 2004-04-19  Alexandre Duret-Lutz  <adl@gnu.org>
19547
19548         * doc/libtool.texi (LT_INIT): Properly display options in a table.
19549
19550 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
19551
19552         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Intel C++ compiler 8.0 and
19553         newer adds predep_objects and postdep_objects itself, so don't
19554         duplicate them in $archive_cmds and $archive_expsym_cmds.
19555         * NEWS: Updated.
19556         Reported by Roberto Bagnara <bagnara@cs.unipr.it>
19557
19558 2004-04-17  Peter O'Gorman  <peter@pogma.com>
19559
19560         * libltdl/loader-dyld.c: Fix compilation issues. Set Original author
19561         to me.
19562
19563 2004-04-17  Todd Vierling  <tv@duh.org>,
19564         Peter O'Gorman  <peter@pogma.com>
19565
19566         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use sysctl to get the
19567         max cmd length on BSD* and darwin. Make sure that there is a safety
19568         factor too.
19569
19570 2004-04-15  Scott James Remnant  <scott@netsplit.com>
19571
19572         * m4/libtool.m4 (_LT_LANG_DEFAULT_CONFIG): Remove code to handle 'none'
19573         and 'all' options, this now always assumes automatic mode as that
19574         works so well.
19575         (_LT_LANG_DEFAULT): Remove definition
19576         * m4/ltoptions.m4: Remove 'no-lang', 'auto-lang' and 'all-lang' options.
19577         * configure.ac: Invoke LT_LANG for each desired supported language.
19578         * doc/libtool.texi: Remove documentation for the LT_INIT options,
19579         rewrite LT_LANG documentation.
19580
19581 2004-04-14  Alexandre Duret-Lutz  <adl@gnu.org>
19582
19583         * bootstrap: Delete acinclude.m4.
19584
19585 2004-04-14  Gary V. Vaughan  <gary@gnu.org>
19586
19587         * libtoolize.in (configure_ac): Don't complain about the lack of
19588         aclocal.m4.
19589         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
19590
19591 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
19592
19593         * m4/ltdl.m4 (AC_LIB_LTDL): Remove AC_REPLACE_FUNCS for memmove
19594         and strcpy.
19595
19596         * libltdl/lt__pre89.h, libltdl/memcpy.c, libltdl/memmove.c,
19597         libltdl/strchr.c, libltdl/strcmp.c, libltdl/strrchr.c: Remove
19598         half-assed pre-c89 support entirely.
19599         * libltdl/lt__private.h: Don't refer to lt__pre89.h.
19600         * libltdl/Makefile.am (ltdldata_DATA): Remove references to
19601         deleted files.
19602         * NEWS: Mention it.
19603
19604         * libltdl/lt__pre89.h, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/argz.c,
19605         libltdl/argz.h, libltdl/lt__glibc.h, libltdl/lt_dlloader.h,
19606         libltdl/lt__dirent.c, libltdl/lt__dirent.h, libltdl/lt__private.h,
19607         libltdl/lt__alloc.c, libltdl/lt__alloc.h, libltdl/lt_system.h,
19608         libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
19609         libltdl/loader-dyld.c,  libltdl/loader-loadlibrary.c,
19610         libltdl/loader-shl_load.c, libltdl/lt_error.h, libltdl/lt_mutex.h:
19611         Autoconf either defines to 1 or undefs the discovery macros it
19612         puts in config.h, and many (non-GNU) compilers throw a spurious
19613         warning when testing an #undef macro with #if.  For consistency,
19614         while we are touching all these lines, use defined(MACRO) style
19615         throughout.
19616         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19617
19618 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
19619
19620         Factor out the individual loaders, in preparation for preloading
19621         them as libtool modules.  Currently loader-preopen.c is linked
19622         unconditionally and other appropriate loaders discovered by
19623         AC_LTDL_DLLIB are built and linked in:
19624
19625         * libltdl/Makefile.am (libltdl_la_SOURCES): Add loader-preopen
19626         module.
19627         * m4/ltdl.m4 (AC_LTDL_DLLIB): Use AC_LIBOBJ to add appropriate
19628         loaders to libltdl.
19629         * libltdl/lt_system.h (LT_SCOPE): Moved to here.
19630         * libltdl/ltdl.h (lt_dlloader, lt_user_data, lt_module)
19631         (lt_module_open, lt_module_close, lt_find_sym, lt_dlloader_exit)
19632         (struct lt_user_dlloader, lt_dlloader_next, lt_dlloader_find)
19633         (lt_dlloader_name, lt_dlloader_data, lt_dlloader_add)
19634         (lt_dlloader_remove): Moved declarations...
19635         * libltdl/lt_loader.h: ...to here.
19636         * libltdl/ltdl.c: Include lt_loader.h.  Move loader implementation
19637         code from here...
19638         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
19639         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
19640         libltdl/loader-loadlibrary.c, libltdl/loader-preopen.c,
19641         libltdl/loader-shl_load.c: ...to here.
19642         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
19643         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
19644         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
19645         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (AM_CPPFLAGS):
19646         Add -I$(top_srcdir)/../.. so that libltdl include files can be
19647         written as #include <libltdl/lt_dlloader.h> and found correctly.
19648
19649 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
19650
19651         Factor out the mutex handling and error handling into their own
19652         modules.  Mutex handling is not currently useful in combination
19653         with posix threads, and should be easier to replace if it is in a
19654         separate module.  Additionally, we can factor out the loaders in
19655         such a way as to depend on only the portability layer and these
19656         new mutex and error modules now:
19657
19658         * libltdl/Makefile.am (pkginclude_HEADERS): Install lt_error.h and
19659         lt_mutex.h to $includedir/libltdl.
19660         (libltdl_la_SOURCES): Build lt_error and lt_mutex objects.
19661         * libltdl/ltdl.h (LT_SCOPE): Moved from here...
19662         * libltdl/lt_system.h (LT_SCOPE): ...to here.
19663         * libltdl/ltdl.c (lt_dlerror_strings, LT_DLSTRERROR): Moved from
19664         here...
19665         * libltdl/lt__private.h (lt__error_strings, LT__STRERROR): ...to
19666         here as additional internal interfaces to lt_error.  Changed all
19667         callers.
19668         * libltdl/ltdl.c (LT_DLMUTEX_LOCK, LT_DLMUTEX_UNLOCK)
19669         (LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR, lt_dlmutex_lock_func)
19670         (lt_dlmutex_unlock_func, lt_dlmutex_geterror_func)
19671         (lt_dllast_error): Moved from here...
19672         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, LT__MUTEX_SETERRORSTR)
19673         (LT__MUTEX_GETERROR, lt__mutex_lock_func, lt__mutex_unlock_func)
19674         (lt__mutex_geterror_func, lt__last_error): ...to here as
19675         additional internal interfaces to lt_mutex.  Changed all callers.
19676         (LT_MUTEX_SETERROR): Take an errorcode rather than a string.
19677         Changed all callers.
19678         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dlmutex_register): Moved from
19679         here...
19680         * libltdl/lt_mutex.c, libltdl/lt_mutex.h (lt_dlmutex_register):
19681         ...to here. New files.
19682         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dladderror, lt_dlseterror)
19683         (lt_dlerror_table):
19684         Moved from here...
19685         * libltdl/lt_error.c, libltdl/lt_error.h (lt_dladderror)
19686         (lt_dlseterror, lt_dlerror_table): ...to here. New files.
19687
19688 2004-04-13  Scott James Remnant  <scott@netsplit.com>
19689
19690         * Makefile.am (XDELTA_OPTIONS): Remove --pristine as that
19691         generates huge xdeltas.
19692
19693 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
19694
19695         * libltdl/ltdl.c (argz_append, argz_create_sep, argz_insert)
19696         (argz_next, argz_stringify): Move from here...
19697         * libltdl/argz.c: New file. ...to here.
19698         * libltdl/lt__glibc.h: New file. Rename global symbols into the
19699         lt__ namespace.
19700         * libltdl/lt__private.h: Include lt__glibc.h.
19701         * libltdl/Makefile.am (libltdl_la_SOURCES): Add new files.
19702         (AM_CPPFLAGS): Add -DLTDL.
19703         * libltdl/argz.h (argz_append, argz_create_sep, argz_insert)
19704         (argz_next, argz_stringify): New file. Declare argz functions
19705         here, including lt__glibc.h when LTDL is defined to rename global
19706         symbols for libltdl.
19707         * m4/ltdl.m4 (AC_LTDL_FUNC_ARGZ): Add argz to AC_LIBOBJ if any of
19708         our argz_* functions are missing from the system libraries.
19709
19710         * libltdl/ltdl.c: Move standard headers and preprocessor guards
19711         from here...
19712         * libltdl/lt__private.h: ...to here.  New file to declare ltdl's
19713         internal interfaces.
19714         * libltdl/ltdl.c: Include lt__private.h.
19715         * m4/ltdl.m4 (AC_LIB_LTDL): Add lt_dirent to AC_LIBOBJ if all of
19716         opendir, readdir and closedir are missing.
19717         (AC_CHECK_HEADERS): Remove assert.h, ctype.h, errno.h, malloc.h,
19718         stdio.h and stdlib.h; these headers are all available in standard
19719         c89 environments and newer.
19720         * libltdl/lt__private.h: Include them here unconditionally.
19721         * libltdl/lt__dirent.c (opendir, readdir, closedir): New file.
19722         Windows dirent emulation functions moved to here...
19723         * libltdl/ltdl.c (opendir, readdir, closedir): ...from here.
19724         * libltdl/lt__dirent.h: New file.  Rename the global symbols from
19725         lt__dirent.c into the lt__ namespace so they don't clash with
19726         other libraries.
19727
19728 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
19729
19730         Factor out the bottom portability layer from ltdl.  Code in this
19731         layer has global symbols renamed by lt__pre89.h, and may not
19732         refer to any symbols except those provided by the system libraries
19733         or other code in the portability layer:
19734
19735         * libltdl/lt__pre89.h: New file.  Rename all the symbols from
19736         LTLIBOBJS into the lt__ namespace so that they don't clash with
19737         other libraries.
19738         * libltdl/ltdl.c (rpl_memcpy, rpl_memmove, rpl_strchr, rpl_strcmp)
19739         (rpl_strrchr): Moved from here...
19740         * libltdl/memcpy.c (memcpy): ...to here, and fixed void *
19741         dereference bug...
19742         * libltdl/memmove.c (memmove): ...to here, and fixed void *
19743         dereference bug...
19744         * libltdl/strchr.c (strchr): ...to here...
19745         * libltdl/strcmp.c (strcmp): ...here...
19746         * libltdl/strrchr.c (strrchr): ...and here.
19747         * libltdl/Makefile.am (libltdl_la_SOURCES): Add lt__pre89.h.
19748         (libltdl_la_LIBADD, libltdlc_la_LIBADD): Add $(LTLIBOBJS).
19749         (ltdldata_DATA): Add replacement sources files.
19750         * m4/ltdl.m4 (AC_LIB_LTDL): Do careful config.h and LTLIBOBJ
19751         setting for missing pre89 functions.
19752
19753 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
19754
19755         * libltdl/ltdl.h (LT_PARAMS): Removed.  Changed all users to
19756         ANSI prototypes.
19757         (lt_ptr): Keep backwards compatibility stub.
19758         * libltdl/ltdl.c, libltdl/ltdl.h: Use ANSI function declarations
19759         throughout.  s/lt_ptr/void */g.
19760
19761 2004-04-08  Fredrik Estreen  <estreen@algonet.se>
19762
19763         * m4/ltdl.m4: Rename shrext to shrext_cmds here too.
19764
19765 2004-04-06  Gary V. Vaughan  <gary@gnu.org>
19766
19767         There was no clean separation of abstraction layers in libltdl.
19768         The first step in fixing this is to factor out the memory
19769         management abstraction, making a start on removing promiscuity
19770         from the underlying portability layer:
19771
19772         * doc/libtool.texi (Libltdl interface): Remove lt_dlmalloc,
19773         lt_dlrealloc and lt_dlfree references.  The memory management
19774         layer used by libltdl is now private.
19775         * libltdl/lt_system.h: New installed header for system portability
19776         abstraction.
19777         * libltdl/ltdl.h: Use it.
19778         * libltdl/lt__alloc.c, libltdl/lt__alloc.h: New module above
19779         system portability layer to abstract ltdl's memory management.
19780         * libltdl/ltdl.c: Use lt__alloc.h.
19781         (closedir): Use free.
19782         (opendir): Use malloc/free.
19783         (lt__xalloc_die_callback): Report memory failures through
19784         lt_dlerror.
19785         (lt_dlinit): Use it to initialise memory management.
19786         (LT_DLMALLOC, LT_DLREALLOC, LT_DLFREE, LT_EMALLOC, LT_EREALLOC)
19787         (rpl_strdup, rpl_realloc, lt_estrdup, lt_emalloc, lt_erealloc):
19788         Removed in favour of...
19789         (lt__strdup, lt__memdup, MALLOC, REALLOC, FREE): ...these calls
19790         from libltdl/lt__alloc.h.  Changed all callers.
19791         (rpl_argz_append, rpl_argz_create_sep, rpl_argz_insert): As part
19792         of the portability layer, these functions no longer use libltdl
19793         memory management API.
19794         (free_vars): Factored out.
19795         (LT_DLMEM_REASSIGN): While redoing memory handling, renamed...
19796         * libltdl/lt__alloc.h (MEMREASSIGN): ...to this.
19797         * libltdl/Makefile.am (AUTOMAKE_OPTIONS): Let automake track
19798         dependencies automatically.
19799         (pkgincludedir): Override from parent package's setting.
19800         (pkginclude_HEADERS): Install lt_system.h.
19801         (libltdl_la_SOURCES): Add new files.
19802         * NEWS: Updated.
19803         Reported by Dalibor Topic <robilad@kaffe.org>
19804
19805 2004-04-01  Peter O'Gorman  <peter@pogma.com>
19806
19807         * ltmain.in: Remove an extra eval concat_cmds that some idiot added.
19808         Fixes double eval on AIX, reported by Albert Chin and Uwe Moeller.
19809
19810         * NEWS: Add a news item about xlc support that I forgot yesterday.
19811
19812 2004-03-31  Peter O'Gorman  <peter@pogma.com>
19813
19814         * m4/libtool.m4, ltmain.in (darwin): Support IBM's xlc and xlc++.
19815
19816 2004-03-31  Gary V. Vaughan  <gary@gnu.org>
19817
19818         * m4/libtool.m4 (_LT_LANG_C_CONFIG): If $compiler is not set, then
19819         don't call the macros that test it.
19820         (_LT_LANG_CXX_CONFIG): Ditto.
19821         (_LT_LANG_F77_CONFIG): Ditto.
19822         (_LT_LANG_GCJ_CONFIG): Ditto.
19823         (_LT_LANG_RC_CONFIG): Ditto.
19824
19825 2004-03-30  Gary V. Vaughan  <gary@gnu.org>
19826
19827         * libtoolize.in (func_scan_files): sed BRE have no alternation, so
19828         break LT_INIT matcher out.
19829         (func_serial): Don't escape literal parens for grep BRE.
19830
19831         * m4/libtool.m4 (LT_INIT): aclocal can't see AC_DEFUN_ONCE, so use
19832         AC_DEFUN and m4_define.
19833         * libtoolize.in (func_serial): No longer accept AC_DEFUN_ONCE...
19834         (func_grep): ...so mere grep is sufficient again...
19835         (EGREP): ...and this is no longer required.
19836
19837 2004-03-29  Gary V. Vaughan  <gary@gnu.org>
19838
19839         * m4/libtool.m4: Use LT_INIT as #serial tag.
19840         * libtoolize.in: Grok LT_INIT!  Pass A[CM]_PROG_LIBTOOL to...
19841         (func_serial_update): ...here, we now take an additional parameter
19842         containing another regex to match ancient serialed files.
19843         (func_serial): Accept AC_DEFUN_ONCE of the #serial tag...
19844         (func_grep): ...which requires egrep...
19845         (EGREP): ...substituted by config.status.
19846         (func_scan_files): Set seen_libtool if LT_INIT goes by.
19847
19848         * Makefile.am (pkgmacro_DATA): Install ltoptions.m4.
19849
19850         * libltdl/Makefile.am (AM_CPPFLAGS): Also check $top_builddir for
19851         config.h.
19852         (ltdl.o): config.h is in $top_builddir.
19853
19854 2004-03-24  Scott James Remnant  <scott@netsplit.com>
19855
19856         * NEWS: Explain more fully why we no longer load libraries
19857         with global symbol resolution.
19858         * doc/libtool.texi (libtool script contents): Add missing
19859         documentation for 'inherit_rpath' variable.
19860
19861         * configure.ac: Catch errors during calls to AC_PROG_CXX,
19862         AC_PROG_CXXCPP and AC_PROG_F77 before LT_INIT.  Only set the
19863         HAVE_CXX and HAVE_F77 conditions to true if an error didn't
19864         occur (AC_PROG_CXX leaves CXX="g++" even if it didn't find one).
19865         Set HAVE_GCJ and HAVE_RC to true correctly as well.
19866         * m4/libtool.m4 (LT_PROG_GCJ): If AC_PROG_GCJ or AM_PROG_GCJ are
19867         defined, expand to the definition of those instead of our own.
19868         Define GCJ to '' instead of 'no' if not found.
19869         (LT_PROG_RC) Define RC to '' instead of 'no' if not found.
19870         (_LT_LANG_GCJ_CONFIG): Require LT_PROG_GCJ to be expanded first.
19871         (_LT_LANG_RC_CONFIG): Require LT_PROG_RC to be expanded first.
19872
19873         * libltdl/ltdl.c (sys_dl_open): Don't load libraries with global
19874         symbol resolution.
19875         * NEWS: Updated.
19876
19877 2004-03-24  Albert Chin-A-Young  <china@thewrittenword.com>
19878
19879         * m4/libtool.m4: Add new variable, inherit_rpath, if the
19880         RPATHs of the libraries being linked are inherited in
19881         the output file. For systems with a linker exhibiting
19882         this feature, programs/libraries must be relinked at
19883         installation time.
19884
19885         * m4/libtool.m4: When linking convenience libraries on Solaris
19886         with the Sun C++ compiler, pass convenience libraries through
19887         to the linker with -Qoption between allextract/defaultextract.
19888         The Sun C++ compiler bundles -Qoption arguments so
19889         convenience libraries are linked with defaultextract
19890         otherwise.
19891         * tagdemo/Makefile.am, tagdemo/main.cpp, tagdemo/conv.h,
19892         tagdemo/conv.cpp: Augment tagdemo test to link a convenience
19893         library with a libtool library.
19894
19895         * ltmain.in: Piecewise linking doesn't work when the output
19896         file is an absolute path, use the basename only instead.
19897
19898         * ltmain.in: When a library is installed, dependent on a
19899         convenience library, and it involves relinking, the object
19900         files extracted from the convenience library are not removed
19901         after the relink. This is a problem if you build as non-root,
19902         install as root, then try to remove the build directory as
19903         non-root; Clean up properly if relink fails; Change
19904         "$realname"U to ${realname}T to be consistent.
19905
19906 2004-03-24  Scott James Remnant  <scott@netsplit.com>
19907
19908         * ltmain.in <prog linkmode>: Always add -L options to
19909         $newlib_search_path instead of just in scan mode to ensure that
19910         non-libtool libraries in user-specified directories can be found.
19911
19912 2004-03-22  Scott James Remnant  <scott@netsplit.com>
19913
19914         * m4/libtool.m4 (_LT_CONFIG): Remove unneeded else condition
19915         code, now the support determination is done in m4.
19916         (_LT_LANG): Correct comment, unexpected leak from keybuk-lt-tag.patch.
19917
19918 2004-03-21  Scott James Remnant  <scott@netsplit.com>
19919
19920         * libltdl/Makefile.am (libltdl_la_LDFLAGS): Increment CURRENT
19921         and AGE of libltdl, warranted by the addition of lt_dlhandle_find()
19922         since 1.5.2.
19923
19924 2004-03-21  Scott James Remnant  <scott@netsplit.com>
19925
19926         Further sweeping changes to the user interface to libtool from
19927         `configure.ac' to allow users to better control the list of
19928         supported languages.  Three LT_INIT options 'no-lang', 'all-lang'
19929         and 'auto-lang' (the default) control the initial list and others
19930         may be added with LT_LANG.
19931
19932         * m4/libtool.m4 (_LT_CONFIG): Renamed AC_LIBTOOL_CONFIG to _LT_CONFIG
19933         which is more consistent with our own namespace and gets us further out
19934         of Autoconf's.
19935         (_LT_LIBTOOL_TAGS): Output available_tags variable based entirely
19936         on the value of _LT_TAGS.
19937         (_LT_COPYING): Call _LT_LIBTOOL_TAGS to output available tags,
19938         always append tag configuration if the tag is available.
19939         (LT_LANG): New macro to enable support for a language that accepts
19940         tag names (eg. "CXX") or human language names (eg. "C++").
19941         (_LT_LANG): Internal support macro for above that appends the
19942         tag to _LT_TAGS and calls the appropriate config macro.
19943         (LT_INIT): Ensure that LT_LANG is not called before LT_INIT.
19944         (AC_LIBTOOL_TAGS): Removed, call LT_LANG for each language now.
19945         (_LT_AC_TAG_CHECK): Removed, _LT_LANG handles duplicate calls.
19946         (_LT_LANG_DEFAULT_CONFIG): Macro to set initial language support
19947         based on options passed to LT_INIT.
19948         (_LT_SETUP): Call _LT_LANG_DEFAULT_CONFIG.
19949         (_LT_AC_TAG_CONFIG): Removed, handled by _LT_LANG_DEFAULT_CONFIG.
19950         (_LT_AC_LANG_CXX, _LT_AC_LANG_F77, _LT_AC_LANG_GCJ): Removed,
19951         automatic language support inclusion now handled by
19952         _LT_LANG_DEFAULT_CONFIG.
19953         (AC_LIBTOOL_CXX): Obsolete macro, update to LT_LANG(C++).
19954         (AC_LIBTOOL_F77): Obsolete macro, update to LT_LANG(Fortran 77).
19955         (AC_LIBTOOL_GCJ): Obsolete macro, update to LT_LANG(Java).
19956         (AC_LIBTOOL_LANG_C_CONFIG_: Removed.
19957         (_LT_AC_LANG_C_CONFIG): Renamed to _LT_LANG_C_CONFIG, call
19958         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
19959         (_LT_SETUP): Replace call to AC_LIBTOOL_LANG_C_CONFIG with call to
19960         new _LT_LANG_C_CONFIG macro.
19961         (AC_LIBTOOL_LANG_CXX_CONFIG): Removed.
19962         (_LT_AC_LANG_CXX_CONFIG): Renamed to _LT_LANG_CXX_CONFIG, call
19963         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
19964         (AC_LIBTOOL_LANG_F77_CONFIG): Removed.
19965         (_LT_AC_LANG_F77_CONFIG): Renamed to _LT_LANG_F77_CONFIG, call
19966         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
19967         (AC_LIBTOOL_LANG_GCJ_CONFIG): Removed.
19968         (_LT_AC_LANG_GCJ_CONFIG): Renamed to _LT_LANG_GCJ_CONFIG, call
19969         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
19970         (AC_LIBTOOL_LANG_RC_CONFIG): Removed.
19971         (_LT_AC_LANG_RC_CONFIG): Renamed to _LT_LANG_RC_CONFIG, call
19972         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
19973         (LT_AC_PROG_GCJ): Renamed to LT_PROG_GCJ.
19974         (LT_AC_PROG_RC): Renamed to LT_PROG_RC.
19975         * m4/ltoptions.m4: Define new 'no-lang', 'auto-lang' and 'all-lang'
19976         options which set the default for _LT_LANG_DEFAULT_CONFIG.
19977         * m4/lt~obsolete.m4: Removed AC_LIBTOOL_CONFIG, _LT_AC_LANG_C_CONFIG,
19978         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG; all of which are no
19979         long referenced in any way.
19980         * configure.ac: Enable all languages.
19981         * tests/cdemo/configure.ac, tests/demo/configure,ac,
19982         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
19983         tests/mdemo/configure.ac, tests/pdemo/configure,ac,
19984         tests/tagdemo/configure.ac: Remove calls to AC_LIBTOOL_TAGS,
19985         the default 'auto-lang' mode now does the right thing.
19986         * doc/libtool.texi (The LT_INIT macro): Add documentation for
19987         new LT_INIT options and the LT_LANG macro, replacing the old
19988         documentation of AC_LIBTOOL_TAGS which is no more.
19989         * NEWS: Updated.
19990
19991 2004-03-17  Scott James Remnant  <scott@netsplit.com>
19992
19993         * m4/libtool.m4: Removed AC_BEFORE references to AC_LIBTOOL_SETUP
19994         which is no more.
19995         * m4/lt~obsolete.m4: As AC_LIBTOOL_SETUP is no longer referenced,
19996         it can be removed from this file.  Remove _AC_PROG_LIBTOOL also.
19997
19998 2004-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19999
20000         * m4/libtool.m4: Remove newlines from lt_ld_extra, so
20001         variable can safely be stored in config.cache.
20002
20003 2004-03-14  Michael Pruett  <michael@68k.org>
20004
20005         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS0 [irix]: Define
20006         archive_expsym_cmds so that --export-symbols will work.
20007
20008 2004-03-11  Peter O'Gorman  <peter@pogma.com>
20009
20010         * ltmain.in (link_all_deplibs,darwin): Link libraries in the
20011         correct order. Bug from Zachary Pincus <zpincus@stanford.edu>.
20012
20013 2004-03-14  Scott James Remnant  <scott@netsplit.com>
20014
20015         * m4/ltmain.in: Only check precious_files_regex if it is not empty.
20016
20017 2004-03-14  Gary V. Vaughan  <gary@gnu.org>
20018
20019         * doc/libtool.texi (Autoconf and LTLIBOBJS): The correct version
20020         of Autoconf is 2.54.
20021         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
20022
20023 2004-03-13  Gary V. Vaughan  <gary@gnu.org>
20024
20025         * doc/libtool.texi (Using Automake): Cite correct Automake version
20026         for -dlopen quoting.
20027         (Autoconf and LTLIBOBJS): Cite correct Autoconf versions
20028         throughout.
20029         (Distributing libltdl): Use AM_CPPFLAGS; INCLUDES is deprecated.
20030         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
20031
20032 2004-03-05  David Edelsohn  <edelsohn@gnu.org>
20033
20034         * m4/libtool.m4: Disable building static libraries if building
20035         shared libraries on AIX 5L.
20036
20037 2004-03-05  Gary V. Vaughan  <gary@gnu.org>
20038
20039         * libtoolize.in: Remove --ltdl-tar.  It doesn't work with the
20040         current implementation, and seems more or less pointless.
20041         * doc/libtool.texi (Invoking libtoolize): Updated.
20042         * NEWS: Updated.
20043
20044         * doc/libtool.texi: This manual has not been maintained properly
20045         for a number of years.  Much of what it said was outdated, or
20046         plain wrong with reference to modern autotools.  This change
20047         represents a first pass edit to clean up the obviously wrong.
20048
20049 2004-03-02  Gary V. Vaughan  <gary@gnu.org>
20050
20051         * bootstrap: Prune out my arch mirror dir before running
20052         amok through the tree with 'rm -rf'!
20053
20054 2004-03-02  Patrick Welche  <prlw1@newn.cam.ac.uk>
20055
20056         * doc/libtool.texi (LT_INIT): Dumb typos fixed.
20057
20058 2004-02-23  Gary V. Vaughan  <gary@gnu.org>
20059
20060         * ltmain.in <install mode>: Add missing --help doc for
20061         -inst-prefix option.
20062
20063         * ltmain.in <link mode>: Add missing --help doc for -shrext
20064         option.
20065
20066         * ltmain.in (IFS): Move '\n' to beginning of IFS so that emacs
20067         doesn't offer to strip trailing ' \t' on every save.
20068
20069         * ltmain.in: Add missing --help doc for --preserve-dup-deps.
20070
20071 2004-02-22  Gary V. Vaughan  <gary@gnu.org>
20072
20073         * Makefile.maint (web-manual): Generate the web manual carefully
20074         so that links will still work when it is uploaded to gnu.org.
20075         * README-alpha: Note that this rule should be used at release
20076         time.
20077
20078 2004-02-20  Gary V. Vaughan  <gary@gnu.org>
20079
20080         Sweeping changes to the user interface to libtool from
20081         `configure.ac' to be more like AC_INIT and accept a space
20082         delimited list of options.  Instead of calling `AC_LIBTOOL_DLOPEN;
20083         AC_PROG_LIBTOOL', we now recommend `LT_INIT([dlopen])':
20084
20085         * m4/libtool.m4 (AC_PROG_LIBTOOL, _AC_PROG_LIBTOOL)
20086         (AC_LIBTOOL_SETUP): Removed.  Added AU_DEFUNs.
20087         (LT_INIT): Replace with an Autoconf like interface which accepts a
20088         version number as a minimum required libtool release at configure
20089         time.
20090         * m4/ltoptions.m4: New file inspired by automake/m4/amoptions.m4,
20091         which additionally flags an error if the configuring libtool
20092         macros are not new enough according to LT_INIT.
20093         (LT_OPTION_DEFINE): New macro to declare option handlers.
20094         (dlopen, win32-dll, shared, disable-shared, static)
20095         (disable-static, fast-install, disable-fast-install, pic-only)
20096         (no-pic): Newly LT_OPTION_DEFINEd option handlers that use...
20097         (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC, _LT_ENABLE_FAST_INSTALL)
20098         (_LT_WITH_PIC, _LT_WIN32_DLL): New macros to handle
20099         LT_LIBTOOL_INIT options...
20100         * m4/libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC)
20101         (AC_ENABLE_FAST_INSTALL, AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL):
20102         ...to replace these user interface macros, now defined as
20103         AU_DEFUNs.
20104         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
20105         Removed.  No longer required with LT_INIT_LIBTOOL interface.
20106         Added AU_DEFUNs.
20107         (AM_ENABLE_SHARED, AM_DISABLE_SHARED, AM_ENABLE_STATIC)
20108         (AM_DISABLE_STATIC): Changed AU_DEFUNs to match new interface.
20109         (_LT_SETUP): Internal to LT_INIT, replaces AC_LIBTOOL_SETUP.
20110         * m4/lt~obsolete.m4 (AC_LIBTOOL_SETUP, _AC_PROG_LIBTOOL)
20111         (_LT_PROG_LTMAIN):  More AC_DEFUNs that have been retracted.
20112         * configure.ac: Use new interface.
20113         * doc/libtool.texi: Document new interface.
20114         * NEWS: Updated.
20115
20116 2004-02-18  Gary V. Vaughan  <gary@gnu.org>
20117
20118         * commit (SHELL): Set it explicitly, incase some madman is using
20119         tcsh as their login shell :-b
20120
20121 2004-02-15  Scott James Remnant  <scott@netsplit.com>
20122
20123         * Makefile.am (m4/ltversion.m4): Generate serial number by
20124         removing initial '1.' from the revision, replace @MACRO_SERIAL@
20125         with this new variable.
20126         * m4/ltversion.in: Use @MACRO_SERIAL@ for the serial number
20127         as some shells don't like a '.' when using test.
20128
20129         * m4/ltversion.in: Add a serial number to this file otherwise
20130         libtoolize will refuse to copy it into $pkgdatadir, where it
20131         is needed by m4/libtool.m4.
20132
20133 2004-02-15  Peter O'Gorman  <peter@pogma.com>
20134
20135         * m4/libtool.m4, ltmain.in: Rename shrext to shrext_cmds.
20136
20137 2004-02-13  Scott James Remnant  <scott@netsplit.com>
20138
20139         * ltmain.in, libtoolize.in, commit, config/mailnotify: Correctly
20140         quote usage of $basename and $dirname to avoid (unlikely) path
20141         expansion.
20142
20143         * tests/sh.test: Test the config/ltmain.sh and libtoolize in the
20144         build directory not the source directory, where they won't exist
20145         during 'make distcheck'.
20146         * ltmain.in: Revert one line of previous intendation clean-up
20147         to enable one of the sh.test checks to pass.
20148
20149         * tests/cdemo/configure.ac: Drop AC_PREREQ back to 2.54, this
20150         was debris from Gary's cvsapply going mad and wasn't backed
20151         out.
20152
20153         * Makefile.am (pkgmacro_DATA): We have to distribute
20154         m4/ltversion.m4 because it can be needed before the Makefile
20155         that generates it exists.
20156
20157 2004-02-13  Gary V. Vaughan  <gary@gnu.org>
20158
20159         * commit (MKSTAMP): Look for mkstamp in the right place.
20160
20161 2004-02-12  Scott James Remnant  <scott@netsplit.com>
20162
20163         * Makefile.maint, Makefile: Move rules intended for Libtool
20164         maintainers only out of the Makefile we distribute and into one
20165         that we only need keep in CVS.
20166         * README-alpha: Add -fMakefile.maint to the instructions where
20167         needed.
20168
20169 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>
20170         Scott James Remnant  <scott@netsplit.com>
20171
20172         * ltmain.in: Fix typo: duplcations -> duplications,
20173         Fix indentation of a handful of badly indented blocks,
20174         Fix last remaining use of 'grep' to $GREP,
20175         Remove unnecessary trailing slash where we break a line on a
20176         command separator.
20177         * m4/libtool.m4: Also remove unnecessary trailing slash where
20178         we break a line on a command separator.
20179
20180 2004-02-12  Scott James Remnant  <scott@netsplit.com>
20181
20182         * m4/ltoptions.m4: This got committed by an over-keen Gary,
20183         but the support for this isn't ready yet and if aclocal decides
20184         to m4_include this (which it will) you'll get a non-functioning
20185         libtool.  Removed.
20186
20187         * ltmain.in: Remove duplicated version checking block.
20188
20189         * bootstrap, m4/libtool.m4: Argh, Gary went crazy after cvsapply
20190         went crazy and backed out more than he should've.  This patch puts
20191         some of it back again.
20192
20193         * ltmain.in, libtoolize.in, commit, config/mailnotify: Remove
20194         $SED from definitions of $dirname and $basename and prefix each
20195         use with it instead.  Some shells (zsh) treat the expansion as
20196         a single command instead of a command with arguments.
20197
20198         * config/mailnotify (func_sendmail): Look for sendmail in a
20199         couple of common non-PATH locations as well.
20200
20201         * ltmain.in: Fix typo: macro's -> macros.
20202
20203         * ltmain.in: Correct definition of basename sed expression to
20204         not include single quotes.
20205
20206 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
20207
20208         * libtoolize.in: Use $progpath as for ltmain.in to work around the
20209         IRIX bug described below.
20210         * commit, config/mailnotify: Ditto. Resynch with cvs-utils HEAD.
20211
20212 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>,
20213             Gary V. Vaughan  <gary@gnu.org>
20214
20215         * ltmain.in (progpath): Work around backward compatibility issue
20216         on IRIX 6.5. On IRIX 6.4+, sh is ksh but when the shell is invoked
20217         as "sh" and the current value of the _XPG environment variable is
20218         not equal to 1 (one), the special positional parameter $0, within
20219         a function call, is the name of the function. So, rather than
20220         using "$0" in functions, we set $progpath in the body and use that
20221         everywhere instead (incase of code refactoring later).
20222         (EXIT_SUCCESS, EXIT_FAILURE, EXIT_MISMATCH): For clarity.
20223
20224 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
20225
20226         * Makefile.am (EXTRA_DIST): Remove config/mailnotify after all; it
20227         is of no use in a distribution tarball.
20228
20229 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
20230
20231         * commit: Fix cut-n-paste error.
20232
20233         * commit: Completely change CVS/Root->name sed script to actually
20234         work when :ext: is not shown.
20235
20236         * commit: Improve CVS/Root->name sed script to work when :ext: is
20237         not shown.
20238
20239 2004-02-11  Albert Chin-A-Young  <china@thewrittenword.com>
20240
20241         * m4/libtool.m4: Fix typo: testring -> teststring.
20242
20243 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
20244
20245         * commit: Mail a nicer commit notification.
20246
20247 2004-02-10  Gary V. Vaughan  <gary@gnu.org>
20248
20249         * NEWS, bootstrap, configure.ac, ltmain.in, m4/libtool.m4:
20250         * m4/lt~obsolete.m4, tests/cdemo/configure.ac: Arghh.  cvsapply just
20251         went crazy and committed a bunch of stuff that shouldn't have been
20252         in the last changeset.  The patch backs it all out.
20253
20254         * config/mailnotify: New file for mailing commit notifications,
20255         imported from cvs-utils.
20256         * commit: Updated from cvs-utils and tweaked for libtool.
20257         * Makefile.am (EXTRA_DIST): Add config/mailnotify.
20258
20259 2004-02-06  Gary V. Vaughan  <gary@gnu.org>
20260
20261         * bootstrap: Remove vcl.tmp, otherwise it can interfere with make.
20262         * Makefile.am (vcl.tmp): Move comment out of multi-line command,
20263         as this rule is called from bootstrap as if it were a Makefile.
20264
20265         * m4/ltversion.in: New file to capture what version number macros
20266         are being used.
20267         * Makefile.am (m4/ltversion.m4): New rule to create it from
20268         m4/ltversion.in.
20269         (nodist_pkgmacro_DATA): Add m4/ltversion.m4.
20270         (EXTRA_DIST): Add m4/ltversion.in.
20271         * m4/libtool.m4 (AC_LIBTOOL_SETUP): AC_REQUIRE LTVERSION_VERSION
20272         from ltversion.m4.
20273         * bootstrap: Call the Makefile.am to create an initial
20274         m4/ltversion.m4.
20275         * ltmain.in: Diagnose version mismatches of various flavours.
20276         * TODO: Remove mismatch item.
20277         * NEWS: Updated.
20278
20279         * Makefile.am ($(top_builddir)/config.status): Removed.
20280         * configure.ac (CONFIG_STATUS_DEPENDENCIES): This substitution is
20281         how automake-1.8 now informs all Makefiles when config.status
20282         needs to be rebuilt.
20283         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
20284
20285         * configure.ac (AC_CONFIG_FILES): Generate libtoolize from here.
20286         * Makefile.am (libtool, libtoolize): These rules are redundant.
20287         Automake generates better rules for remaking these files.
20288
20289         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Catch unexpanded macros with
20290         beginning with LT_ and _LT_.
20291         * configure.ac (LT_MAJOR, LT_MINOR, LT_MICRO, LT_ALPHA): Renamed
20292         to lt_major, lt_minor, lt_micro, lt_alpha to save triggering the
20293         unexpanded macros error.
20294
20295         * m4/libtool.m4 (AC_PROVIDE_IFELSE): Removed.  We now require
20296         Autoconf 2.58, which ships this macro anyway.
20297
20298         * Makefile.am: Comment typo.
20299
20300         * m4/libtool.m4 (LT_PREREQ): Declare the minimum release number
20301         that is required for the calling code.
20302         * doc/libtool.texi (AC_PROG_LIBTOOL): Document it.
20303         * NEWS: Updated.
20304
20305 2004-02-05  Peter O'Gorman  <peter@pogma.com>
20306
20307         * ltmain.in (infer_tag, win32_libid): Style changes. Rename
20308         infer_tag to func_infer_tag and win32_libid to func_win32_libid.
20309         * m4/libtool.m4 (cygwin): rename win32_libid to func_win32_libid.
20310
20311 2004-02-04  Peter O'Gorman  <peter@pogma.com>
20312
20313         * ltmain.in (infer_tag): Move tag inferrence to a shell function.
20314         Also test $base_compile against $CC with escaped arguments. Bug
20315         reported by Geoff Keating <geoffk@apple.com>.
20316
20317 2004-02-03  Scott James Remnant  <scott@netsplit.com>
20318
20319         * Makefile.am (install-data-hook): Manually make config.guess
20320         and config.sub executable after they are installed as _DATA.
20321         We can't use _SCRIPTS because the various program name
20322         transforms may be applied to them.
20323         (dist_pkgdata_DATA): List config.guess and config.sub here
20324         (pkgdata_SCRIPTS): instead of here.
20325
20326 2003-02-03  Scott James Remnant  <scott@netsplit.com>
20327
20328         * ltmain.in: Create temporary directory under a strict umask
20329         rather than running chmod afterwards, preventing a race
20330         condition where the directory could be replaced with a symbolic
20331         link in the time between the two commands.
20332
20333 2004-01-31  Peter O'Gorman  <peter@pogma.com>
20334
20335         * m4/libtool.m4 (_LT_CONFIG_STATUS_DECLARE): Change `echo to
20336         `$echo, causes problems when builtin echo is broken. Reported
20337         by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20338
20339 2004-01-27  Scott James Remnant  <scott@netsplit.com>
20340
20341         This fixes release procedure problems discovered whilst making
20342         the 1.5.2 release.
20343
20344         * Makefile.am (cvs-dist): Because we check whether ChangeLog
20345         has been committed, this rule can't be run with uncommitted
20346         source so we can't run 'commit' and don't need to run
20347         'make dist' a second time.  Fix CVS tag as it should be
20348         "release-X" not "Release-X".
20349         (cvs_commit): New rule for the cvs-release chain that runs
20350         'commit'
20351         (cvs-release): Depend on cvs-commit, depend on deltas instead of
20352         cvs-diff and xdelta.
20353         (cvs-diff): Removed, replaced with delta-diff.
20354         (delta-diff): Unpack and diff the old and new tarballs rather
20355         than using CVS, so we get a genuinely complete diff.
20356         (xdelta): Removed, replaced with delta-xdelta.
20357         (got-xdelta): New rule for improved reading.
20358         (delta-xdiff): Copied and cleaned up version of old xdelta rule.
20359         (deltas): Depends on delta-diff and delta-xdelta (make deltas).
20360         (cvs-news): Don't depend on timestamps, cvs-dist itself does now.
20361         (prev-tarball): This is the only place we need a LASTRELEASE check
20362         so copy the code here and remove the CHECK_RELEASE variable.
20363         (new-tarball): Check there's a new tarball (did cvs-dist work?)
20364         (FETCHFILES): Remove obsolete libltdl mentions.
20365         * README-alpha: Update CVS instructions as everything's changed
20366         on Savannah.
20367         (Release procedure): Update NEWS and ChangeLog after changing
20368         the version number (both times); Run 'make fetch' after running
20369         'configure' (difficult to do it beforehand); Require 'commit'
20370         before 'make cvs-dist' as that checks ChangeLog is committed;
20371         'make deltas' instead of 'cvs-diff' and 'xdelta', pass LASTRELEASE
20372         to make instead of OLDVERSION (and it's mandatory); Clean up
20373         uploading paragraph; Clearer announcement sending instruction;
20374         Removed ftp-upload@gnu.org mail as that's not necessary now;
20375         Make web page updating instructions a bit clearer; Add an instruction
20376         to update the manual for non-alphas.
20377         (Alpha release note template): Add a Subject; update CVS instructions.
20378         (Full release note template): Add a Subject; update CVS instructions.
20379         * configure.ac: Add dist-bzip2 to AM_INIT_AUTOMAKE as we talk
20380         about bz2 files in our release announcements; remove old reference
20381         to OLDVERSION.
20382
20383 2004-01-25  Scott James Remnant  <scott@netsplit.com>
20384
20385         * NEWS: Include 1.5.2 release information.
20386
20387 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
20388
20389         This fixes a bug in the libtoolize ltdl source installation rules,
20390         which were copying Makefile.in from the libtool tree into the
20391         package running libtoolize.  Now we explicitly list the files to
20392         copy to force the package to generate its own Makefile.in:
20393
20394         * libltdl/Makefile.am (libltdl_la_SOURCES, libltdlc_la_SOURCES):
20395         Add ltdl.h.
20396         (ltdldatadir): New variable for installation directory of
20397         libtoolize --ltdl files.
20398         (ltdldata_DATA): Tell automake what files to copy there at install
20399         time (and remove at unistall time!).
20400         (local-install-files): Removed.  This hack is not required
20401         anymore, the automake generated install rules are much more
20402         advanced than this.
20403         * Makefile.am (install-data-hook, uninstall-local): Removed.
20404         Libltdl files for libtoolize are installed by their own Makefile
20405         now.
20406
20407 2004-01-22  Jeff Squyres  <jsquyres@lam-mpi.org>
20408
20409         * m4/libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Some compilers
20410         (e.g. Intel Linux icc compiler) write temporary files to the current
20411         directory. These compilers do support -c and -o simultaneously but
20412         wrongly fail the test due to the failure to create temporary
20413         files. It is incorrect to penalize compilers which write temporary
20414         files to the current directory so the 'chmod -w .' is therefore
20415         removed.
20416
20417 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
20418
20419         * m4/libtool.m4 (LT_AC_PROG_EGREP): Wrapper for AC_PROG_GREP.
20420         AIX has a brain-dead grep that only handles lines < 2048
20421         characters.  Default GREP incase we are not using a future
20422         autoconf that sets it for us :-)  Changed all callers to use $GREP
20423         instead of grep, and to AC_REQUIRE LT_AC_PROG_EGREP.
20424         Declare GREP as a libtool config var.
20425         * ltmain.in: Use it.
20426         * tests/sh.test (scripts): Accept `if $GREP "^foo=bar"' by
20427         tightening the regexp.
20428         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
20429
20430 2004-01-21  Nick Hudson  <skrll@netbsd.org>
20431
20432         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [netbsd*]: Remove
20433         gratuitous ${libname}${release}${shared_ext} from
20434         library_names_spec.
20435
20436 2004-01-21  Peter O'Gorman  <peter@pogma.com>
20437
20438         * m4/libtool.m4 (AC_PROG_LD_RELOAD_FLAG): On darwin change the
20439         reload_cmds to use $CC, otherwise ld will thin out any fat
20440         objects.
20441
20442 2004-01-18  Benjamin Reed  <ranger@befunk.com>
20443
20444         * ltmain.in: Fix handling of frameworks in search paths.  Also
20445         a one-liner fix to eval shrext in the libtool library search.
20446
20447 2004-01-16  Gary V. Vaughan  <gary@gnu.org>
20448
20449         * configure.ac (AM_INIT_AUTOMAKE): Require 1.8 for bootstrap, or
20450         else aclocal.m4 is huge, and m4 directory is not distributed.
20451
20452         * configure.ac (AC_CONFIG_HEADERS): Create config.h in
20453         $top_srcdir.
20454         * m4/ltdl.m4 (AC_LIB_LTDL): Run AC_CONFIG_HEADERS for the user if
20455         necessary. Calculate filename from first argument to
20456         AC_CONFIG_HEADERS, and substitute as CONFIG_H.
20457         * libltdl/Makefile.am (AM_CPPFLAGS): Make sure we are searching in
20458         $top_srcdir for headers.
20459         (DEFS): Override the default HAVE_CONFIG_H with the config.h
20460         filename.
20461         (ltdl.lo): Reference config.h via $(CONFIG_H).
20462         * libltdl/ltdl.c (HAVE_CONFIG_H): Ditto.
20463
20464 2004-01-15  Scott James Remnant  <scott@netsplit.com>
20465
20466         * m4/lt~obsolete.m4: Add a file containing aclocal-fooling
20467         macro definitions which stop the contents of an installed
20468         libtool.m4 ending up in our aclocal.m4 when we bootstrap.
20469         * Makefile.am (pkgmacro_DATA): Note that we don't need to add
20470         lt~obsolete.m4 to this list.
20471
20472 2004-01-12  Gary V. Vaughan  <gary@gnu.org>
20473
20474         * m4/libtool.m4 (_LT_COPYING): Factor out copyright message so it
20475         only needs to be updated in one place.
20476         (AC_LIBTOOL_CONFIG): Refactor to be more readable.  Only add
20477         tags if a compiler was found; ie if you have no gcj compiler,
20478         don't tack the GCJ tag onto the generated libtool script.
20479
20480 2004-01-13  Peter O'Gorman  <peter@pogma.com>
20481
20482         * m4/libtool.m4: Quote shrext as it is evaled in ltmain.
20483
20484 2004-01-11  Scott James Remnant  <scott@netsplit.com>
20485
20486         * ltmain.in: new -precious-files-regex link mode option
20487         to prevent removal of matching files from the temporary
20488         output directory.
20489         (Debian Bug #221420)
20490         * doc/libtool.texi: document the new option.
20491         * NEWS: announce the new option.
20492
20493 2004-01-11  Gary V. Vaughan  <gary@gnu.org>
20494
20495         * libtoolize.in (func_copy_all_files): s/xfunc_copy/Xfunc_copy.
20496         Now the test can actually succeed sometimes.
20497
20498 2004-01-09  Gary V. Vaughan  <gary@gnu.org>
20499
20500         * libtoolize.in: Break out of the command argument parse loop when
20501         -- is encountered.
20502
20503 2004-01-08  Gary V. Vaughan  <gary@gnu.org>
20504
20505         * libtoolize.in (func_copy_all_files): s/test "x/test "X/ to keep
20506         tests/sh.test happy.
20507
20508 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
20509
20510         * Makefile.am (aclocal_macros, aclocal_DATA): Removed.
20511         (EXTRA_DIST): Remove m4 macro files; they are automatically
20512         added by automake.
20513         (pkgmacrodir): Where to install libtool macro files.
20514         (pkgmacro_DATA): List installable libtool macro files.
20515         (install-data-local): Remove previous versions of ltdl.m4 and
20516         libtool.m4 from their old location.
20517         * libtoolize.in: Use new pkgmacrodir installed macros when
20518         libtoolizing a project.  Treat libtool.m4 and ltdl.m4 specially,
20519         and func_serial_update() any other files from pkgmacrodir.
20520         (pkgmacrodir): Where to find installed libtool macro files.
20521         (aclocaldir): Removed.
20522         (func_copy_all_files): Add an optional callback parameter to
20523         control how files are copied.  If the callback is passed, don't
20524         tell it whether it can copy or not.
20525         (func_serial): Exchange parameters and make macro_regex optional,
20526         so that this function can be used to extract serial numbers from
20527         files with the traditional /^# serial [1-9][0-9]*$/ syntax.
20528         Changed all callers.
20529         (func_serial_update): Make macro_regex optional last parameter, so
20530         that this function can be used as a callback for
20531         func_copy_all_files().  Changed all callers.
20532         * m4/ltsugar.m4: Add a serial number.
20533
20534 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
20535
20536         A complete rewrite of the m4 code involved in the generation of
20537         libtool via config.status.  The old way involved manually
20538         synchronising disparate bits of shell code in several macros, to
20539         quote a copy of a shell variable, put that in config.status, maybe
20540         add it to some quotation loops to prevent early expansion, and
20541         then add a block to _LT_CONFIG_COMMANDS to bring it into the
20542         libtool script.  The new way is to mark shell variables for
20543         propogation using _LT_DECL for language independent variables, or
20544         _LT_TAGDECL for those that need to be propogated in several
20545         language flavours.  The marking can be done in the macro that
20546         probes the variables, and this new m4 machinery takes care of
20547         synchronising all the other bits of code at autoconf time:
20548
20549         * m4/ltsugar.m4:  New file.  Macros that are useful outside the
20550         context of libtool.  Initially, contains some generalised list
20551         management macros, and the scaffolding for dictionary type data
20552         storage and retrieval.
20553         * Makefile.am (aclocal_macros): Install ltsugar.m4.
20554         * m4/libtool.m4 (_LT_DECL): Mark a shell variable for export to
20555         the libtool script, along with a comment, and hints for quoting
20556         and renaming.
20557         (_LT_TAGDECL): Similarly mark a tagged shell variable for export
20558         in each tag.
20559         (lt_decl_tag_varnames, lt_decl_quote_varnames)
20560         (lt_decl_dquote_varnames, lt_decl_varnames_tagged)
20561         (lt_decl_all_varnames):  New utility macros for managing lists of
20562         shell variable names from _LT_DECL and _LT_TAGDECL.
20563         (_LT_CONFIG_STATUS_DECLARATIONS, _LT_CONFIG_STATUS_DECLARE):
20564         Expand to correctly quoted variable declarations in config.status
20565         from all marked shell variables.
20566         (_LT_LIBTOOL_DECLARE): Expand to commented and quoted variable
20567         declaration for libtool tag section.
20568         (_LT_LIBTOOL_CONFIG_VARS, _LT_LIBTOOL_TAG_VARS): Pass all marked
20569         variables to _LT_LIBTOOL_DECLARE.
20570         (_LT_CONFIG_COMMANDS): Use _LT_CONFIG_STATUS_DECLARATIONS and
20571         friends to generate all the variable passing shell code for
20572         config.status, to get marked variables from libtool.m4 into
20573         libtool itself eventually.
20574         (AC_LIBTOOL_CONFIG): Generate marked variable code for libtool tag
20575         configuration.  Changed all client macros to mark variables
20576         suitably rather than the hand pasting that was necessary
20577         previously.
20578         (AC_PROG_SED): Renamed from LT_AC_PROG_SED.
20579         (LT_AC_PROG_SED): Wrap AC_PROG_SED, and mark shell variables for
20580         propogation to the libtool script.
20581
20582 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
20583
20584         * libtoolize.in (seen_gettext): Removed unused variable.
20585
20586 2004-01-06  Gary V. Vaughan  <gary@gnu.org>
20587
20588         * libtoolize.in (func_scan_files): Don't assume the existence of
20589         aclocal.m4.  Make the comment more descriptive.
20590         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
20591
20592         * NEWS: Note libtoolize changes.
20593
20594         * ChangeLog.2003: New file, containing all the ChangeLog entries
20595         from 2003.  Trimmed ChangeLog accordingly.
20596
20597         * ltmain.in: Output 2004 in the copyright from libtool --version.
20598
20599 2004-01-03  Stefan Nordhausen  <nordhaus@informatik.hu-berlin.de>
20600         Scott James Remnant  <scott@netsplit.com>
20601
20602         * ltmain.in: Don't use the mkdir -p option when creating a
20603         temporary output directory so a symlink attack can't be used to
20604         arbitrarily chmod other directories on the system if libtool
20605         gets run as root.
20606
20607 2004-01-02  Peter O'Gorman  <peter@pogma.com>
20608
20609         * m4/libtool.m4: Ensure that ${ZSH_VERSION+set} is properly escaped.
20610
20611         * m4/libtool.m4 (CDPATH): Change the CDPATH setting so that it
20612         allows for zsh differences, as noted in the autoconf manual's
20613         Portable Shell - Special Shell Variables section.
20614
20615 2004-01-02  Scott James Remnant  <scott@netsplit.com>
20616
20617         * .cvsignore: Ignore stamp-vcl created by the Makefile.
20618
20619 2004-01-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20620         Joe Orton  <joe@manyfish.co.uk>
20621
20622         * m4/libtool.m4 (AC_LIBTOOL_CONFIG): Add extra blackslash
20623         in front of all the inner double-quotes as this is removed
20624         on Solaris, IRIX and AIX leading to broken definitions
20625         in config.status.
20626
20627 2004-01-02  Scott James Remnant  <scott@netsplit.com>
20628
20629         * NEWS: Next release will be in 2004.
20630
20631 2003-12-31  Scott James Remnant  <scott@netsplit.com>
20632
20633         * ltmain.sh: Infer tagged configuration for link mode with the
20634         full compiler arguments available rather than only the first.
20635
20636 2003-12-31  Alexandre Duret-Lutz  <adl@gnu.org>
20637
20638         * ltmain.sh: Quote $exec_cmd before it is eval'ed, so that
20639         libtool --mode=execute echo '4 * 5' does not expand the `*'.
20640
20641 2003-11-28  Peter O'Gorman  <peter@pogma.com>
20642
20643         * m4/libtool.m4: Move things around so that "setopt NO_GLOB_SUBST"
20644         to make zsh behave wrt \ escapes happens early in config.status.
20645
20646 2003-11-27  Gary V. Vaughan  <gary@gnu.org>
20647
20648         * libltdl/configure.ac: Removed.
20649         * configure.ac (AC_CONFIG_HEADERS): Merged from
20650         libltdl/configure.ac.
20651         (AC_LIB_LTDL): Ditto.
20652         (AC_CONFIG_FILES): Add libltdl/Makefile.
20653         (AC_CONFIG_SUBDIRS): Removed.
20654         (AC_CONFIG_COMMANDS): Remove generation of libltdl/ltmain.sh.
20655         * libltdl/Makefile.am (libtool): Removed references, since we now
20656         share $(top_builddir)/libtool.
20657         * NEWS: Updated.
20658
20659 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
20660
20661         * Makefile.am (vcl.tmp): Be careful of VPATH builds.
20662
20663         * Makefile.am (EXTRA_DIST): Add stamp-vcl, or we go back to a
20664         double configure run from a distributed tarball :-?
20665
20666 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
20667
20668         Okay, the problem I am trying to solve is that when a change (say,
20669         bumping the version to 1.6 for the next release) is committed, the
20670         timestamp in ChangeLog is updated, but ltmain.sh and libtoolize
20671         inherit the pre-commit build number from config.status.  This
20672         delta notes the change in build number in the unstamped ChangeLog
20673         and forces a rerun of configure etc. to roll a new ltmain.sh with
20674         the correct TIMESTAMP:
20675
20676         * Makefile.am (stamp-vcl): We actually need a new config.status to
20677         force the correct timestamp into libtoolize and ltmain.sh,
20678         rerunning autoconf has no effect at all if configure.ac hasn't
20679         changed.
20680
20681 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
20682
20683         * Makefile.am (stamp-vcl): New rules to force libtool and
20684         libtoolize scripts to update when the TIMESTAMP changes in
20685         ChangeLog, but the file modification time doesn't (e.g in cvs
20686         commit).  Otherwise we'll carry on releasing tarballs with the
20687         wrong version numbers in the tools!
20688
20689         * config/mkstamp: Change output format to ` $rev $date'.
20690         * configure.ac: Make the banner more like suggestions in
20691         http://www.gnu.org/prep/standards_toc.html Section 4.6.
20692         * libtoolize.in: Make --version output conform to the GNU
20693         standard.
20694         * ltmain.in: Ditto. And tweak the generated file headers to
20695         match.
20696
20697 2003-11-25  Gary V. Vaughan  <gary@gnu.org>
20698
20699         * Makefile.am (config.status): Removed.  Rebuilding config.status
20700         isn't enough, because the TIMESTAMP in configure is still out
20701         of date.
20702         (configure): We actually need a new configure to force the
20703         correct timestamp into ltmain.sh.
20704
20705         * Makefile.am (config/ltmain.sh): Removed.  Rebuilding ltmain.sh
20706         isn't enough, because the TIMESTAMP in config.status is still out
20707         of date.
20708         (config.status): We actually need a new config.status to force the
20709         correct timestamp into ltmain.sh.
20710
20711         * Makefile.am (config/ltmain.sh): Note the dependency on the
20712         timestamp in ChangeLog so we don't ship libtools that report the
20713         wrong version number :-/
20714
20715         * bootstrap: Explain automake and autoconf version dependencies
20716         truthfully, and the difference between bootstrap and user
20717         dependencies.
20718         * configure.ac (AM_INIT_AUTOMAKE): List AUTOMAKE_OPTIONS here.
20719         * Makefile.am, doc/Makefile.am, tests/Makefile.am
20720         (AUTOMAKE_OPTIONS): Removed from here.
20721
20722 2003-11-24  Gary V. Vaughan  <gary@gnu.org>
20723
20724         * tests/defs (func_configure): cdemo, demo and mdemo are shows
20725         signs of indeterminacy for some users.  Be more verbose during
20726         failure to help track down the cause.
20727
20728 2003-11-22  Peter O'Gorman  <peter@pogma.com>
20729
20730         * ltmain.in: Check for module_cmds if max_cmd_len is exceeded too.
20731
20732         * ltmain.in: Move eval to after command separation to allow ~ in paths.
20733
20734         * tests/demo-hardcode.test: Call ./libtool not libtool.
20735
20736         * ltmain.in: Test $old_striplib before using it, not $striplib.
20737
20738 2003-11-22  Gary V. Vaughan  <gary@gnu.org>
20739
20740         * configure.ac (LASTRELEASE): Calculate it as best as we can from
20741         AC_PACKAGE_VERSION.
20742         * Makefile.am (distdir): Remove dependency on timestamps so that
20743         it is possible to roll a dist without contacting the cvs server.
20744         Use `make cvs-release' for that.
20745         (cvs-news): Extracted from cvs-dist.
20746         (cvs-dist): Depend on cvs-news.
20747         (CHECK_LASTRELEASE): Check LASTRELEASE has been set.
20748         (prev-tarball): New rule.  Use LASTRELEASE to make sure the
20749         previous release tarball is present.
20750         (cvs-diff): Use CHECK_LASTRELEASE.
20751         (xdelta): Ditto.
20752         (cvs-release): Depend on prev-tarball, timestamps, cvs-news and
20753         fetch. Provided you set LASTRELEASE appropriately, making a full
20754         cvs release is just a matter of `make cvs-release', and submitting
20755         the files to ftp-upload.
20756
20757 2003-11-19  Gary V. Vaughan  <gary@gnu.org>
20758
20759         * m4/libtool.m4 (_LT_PROG_LTMAIN): Ensure config.status has a
20760         value for `ac_aux_dir' when automake is not used.
20761         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
20762
20763         * configure.ac (AC_PREREQ): AS_HELP_STRING was introduced after
20764         autoconf-2.57 was released.
20765
20766 2003-11-18  Gary V. Vaughan  <gary@gnu.org>
20767
20768         * libltdl/ltdl.c (lt_dlhandle_find): New function to find a handle
20769         by module name.
20770         * libltdl/ltdl.h (lt_dlhandle_find): Declare it.
20771         * doc/libtool.texi (User defined module data): Document it.
20772         * NEWS: Updated.
20773
20774 2003-11-17  Gary V. Vaughan  <gary@gnu.org>
20775
20776         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Uncomment call to
20777         _LT_CONFIG_COMMANDS.
20778         (_LT_AC_TAG_CONFIG, AC_LIBTOOL_CONFIG): Accumulate tag generation
20779         for `config.status' using _LT_CONFIG_SAVE_COMMANDS.  Remove
20780         AC_MSG_NOTICE noise now that libtool is generated by a single
20781         config.status tag.
20782         * Makefile.am (libtool): Specify CONFIG_COMMANDS properly now that
20783         libtool is generated in one pass.
20784
20785         * configure.ac (CONF_SUBDIRS): Make these relative to
20786         tests/Makefile.am.
20787         (DIST_MAKEFILE_LIST): Adjust to compensate for having removed the
20788         `tests/' part in CONF_SUBDIRS.
20789         * tests/Makefile.am (DIST_SUBDIRS): Distribute these directories.
20790         (SUBDIRS): Set to `.', a NOP, to workaround an automake bug which
20791         ignores DIST_SUBDIRS unless SUBDIRS is also set.
20792         * Makefile.am (DIST_SUBDIRS): Don't try to distribute the tests
20793         subdirectories from here, since the recursive automake dist rule
20794         only works with direct child directories.  Defer to
20795         tests/Makefile.am in this case.
20796
20797 2003-11-15  Scott James Remnant  <scott@netsplit.com>
20798
20799         * ltmain.in: In compile mode, delay parsing of -shared, -static,
20800         -prefer-pic and -prefer-non-pic until after tagged configuration
20801         has been read.  In link mode, read tagged configuration before
20802         parsing any arguments.  These arguments will now work when using
20803         a non-C compiler.
20804
20805 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
20806
20807         * NEWS: Mention AC_LIBTOOL_TAGS.
20808
20809         * Makefile.am (EXTRA_DIST): List ChangeLog files correctly.
20810
20811         * tests/cdemo/configure.ac, tests/demo/configure.ac,
20812         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
20813         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
20814         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Declare just
20815         the tags we need using AC_LIBTOOL_TAGS, reducing the size of the
20816         configure script by 50% in most cases.
20817
20818 2003-11-14  Marius Vollmer  <mvo@zagadka.de>
20819
20820         * doc/libtool.texi (Libltdl interface): libltdl does in fact load
20821         dependency libs for lt_dlopen()ed modules.
20822
20823 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
20824
20825         Run our configure.ac files through Autoconf 2.59's autoupdate, and
20826         then tweak the results by hand:
20827
20828         * m4/libtool.m4 (AC_PROG_LD): In common with all the other
20829         AC_PROG_ macros, AC_SUBST the discovered LD.
20830         (AC_PROG_NM): Similarly for NM.
20831         (LT_AC_PROG_SED): Similarly for SED.
20832         * configure.ac: No need to SUBST NM and LD manually any more.
20833         (AC_PREREQ): Conservatively downgrade from 2.59 to 2.54.
20834         * tests/cdemo/configure.ac, tests/demo/configure.ac,
20835         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
20836         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
20837         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Ditto.
20838         * m4/libtool.m4 (AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
20839         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC,
20840         AM_PROG_LD, AM_PROG_NM): AU_DEFUN these macros so autoupdate can
20841         use the newer definitions.
20842
20843 2003-11-12  Gary V. Vaughan  <gary@gnu.org>
20844
20845         The rules for uploading releases to gnu.org have been updated, and
20846         are in fact now rather complicated.  This delta updates the
20847         release instructions to the describe the new process, and updates
20848         the maintainer rules to help automate many of the steps:
20849
20850         * README-alpha: Updated release instructions.
20851         * Makefile.am (GPG): Name of the program for generating signatures
20852         for files to be uploaded.
20853         (XDELTA, XDELTA_OPTIONS): Invocation of xdelta.
20854         (cvs-dist): Run distcheck before tagging the cvs tree incase
20855         distcheck fails, and then generate the gpg signature files.
20856         (cvs-diff): Generate the gpg signature files for the diff.
20857         (xdelta): New rule for generating the xdelta diffs and associated
20858         gpg signature files.
20859         (cvs-release): New rule to do all of the above, if you don't mind
20860         typing your gpg passphrase over and over again. :-)
20861         (fetch): New rule inspired by automakes similar rule for updating
20862         files maintained outside the project.
20863         * config/config.guess, config/config.sub: Updated with the new
20864         fetch rule.
20865
20866 2003-11-11  Gary V. Vaughan  <gary@gnu.org>
20867
20868         * libltdl/ltdl.c (lt_dlinit): Save a function call for each loader
20869         added to the list, in exchange for appending loaders to the list
20870         with O(N) rather than O(1).  The longest the loader list can ever
20871         get is 4 (on cygwin with dld installed) so it probably constitutes
20872         a small speedup, in addition to making the code much more readable.
20873
20874         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Don't define the value for
20875         ltmain unconditionally.
20876         (_LT_PROG_LTMAIN): New macro to ensure that the
20877         shell variable `ltmain' actually points at a suitable `ltmain.sh'.
20878         (_AC_PROG_LIBTOOL): Require it.
20879         (AC_LIBTOOL_CONFIG, _LT_AC_TAG_CONFIG): Invoke it.
20880         * Makefile.am (libtool): ltmain.sh is in the build tree.
20881         * libltdl/configure.ac: Ditto.
20882
20883 2003-11-10  Scott James Remnant  <scott@netsplit.com>
20884
20885         * ltmain.in: Add -pthread and similar to $deplibs ($compile_deplibs
20886         and $finalize_deplibs for programs) when found on the command line
20887         or in a .la file's dependency_libs (but don't place them there) so
20888         they are honoured when linking both programs and libraries.
20889
20890 2003-11-10  Scott James Remnant  <scott@netsplit.com>
20891
20892         * m4/libtool.m4  (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [linux]: Include
20893         directories found in /etc/ld.so.conf in sys_lib_dlsearch_path_spec.
20894
20895 2003-11-09  Peter O'Gorman  <peter@pogma.com>
20896
20897         * ltmain.in (linkalldeplibs,darwin): Fix a bug reported by Idar
20898         Tollefsen where a dir could be added to the link line with no '-L'
20899         on darwin.
20900
20901 2003-11-07  Gary V. Vaughan  <gary@gnu.org>
20902
20903         * tests/cdemo/configure.ac, tests/demo/configure.ac,
20904         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
20905         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
20906         tests/pdemo/configure.ac, tests/tagdemo/configure.ac:
20907         s/AM_PROG_LIBTOOL/AC_PROG_LIBTOOL/. Marching boldly into the 21th
20908         century :-$
20909
20910         * m4/libtool.m4 (AC_LIBTOOL_TAGS, AC_ENABLE_SHARED,
20911         AC_DISABLE_SHARED, AC_ENABLE_STATIC, AC_DISABLE_STATIC,
20912         AC_ENABLE_FAST_INSTALL, AC_DISABLE_FAST_INSTALL, AM_PROG_LIBTOOL,
20913         AM_ENABLE_SHARED, AM_ENABLE_STATIC, AM_DISABLE_SHARED,
20914         AM_DISABLE_STATIC): These macros must be AC_DEFUNed after all,
20915         otherwise aclocal can't find them when it tries to construct
20916         `aclocal.m4'.
20917
20918         * Makefile.am (install-data-local): Wipe out old installation
20919         pkgdatadir before installing new files.
20920         * NEWS: Updated.
20921
20922         * libtoolize.in (func_scan_files): If libtoolize is run before
20923         automake has created install-sh and configure.ac does not mention
20924         AC_CONFIG_AUX_DIR, fall back to the current directory for auxdir.
20925
20926 2003-11-07  Robert Millan  <zeratul2@wanadoo.es>
20927
20928         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD) [GNU/KNetBSD]: Detect
20929         inter-library dependencies.
20930
20931 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
20932
20933         * m4/libtool.m4 (_LT_AC_FILE_LTDLL_C): Removed; no longer in use.
20934
20935         * m4/libtool.m4: s/ifelse(/m4_if(/g
20936         (_LT_AC_SYS_LIBPATH_AIX, _LT_AC_SHELL_INIT,
20937         _LT_AC_PROG_ECHO_BACKSLASH, AC_LIBTOOL_LINKER_OPTION,
20938         AC_LIBTOOL_TAGS, _LT_AC_TAG_CHECK, _LT_AC_TAG_CONFIG,
20939         AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC,
20940         AC_DISABLE_STATIC, AC_ENABLE_FAST_INSTALL,
20941         AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_C_CONFIG,
20942         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG,
20943         _LT_AC_TAGVAR, AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
20944         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC): Use
20945         m4_define instead of AC_DEFUN for internal macros that do not
20946         AC_PROVIDE or AC_REQUIRE, and documented user macros that cannot
20947         be AC_REQUIREd because they need arguments, or because that would
20948         violate the documented API.
20949
20950         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Add a new
20951         delay_single_quote_subst sed script to quote single quotes in
20952         variables that are copied to `config.status'.
20953         (_LT_CONFIG_STATUS_DECLARE): New macro to apply
20954         delay_single_quote_subst to a named variable.
20955         (AC_LIBTOOL_CONFIG): Use _LT_CONFIG_STATUS_DECLARE to declare all
20956         `configure' variables that are copied to `config.status'.
20957         (AC_LIBTOOL_PROG_COMPILER_PIC): Fix a quoting bug exposed by
20958         _LT_CONFIG_STATUS_DECLARE using the null quadrigraph in the
20959         rvalues of lt_prog_compiler_pic.
20960
20961 2003-11-06  Owen Taylor  <otaylor@redhat.com>
20962
20963         * m4/libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Recognise the
20964         'R' symbol type so read-only symbols can be exported when combining
20965         GCC and Solaris LD.
20966
20967 2003-11-06  James Henstridge  <james@daa.com.au>,
20968         Scott James Remnant  <scott@netsplit.com>
20969
20970         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [Linux]: Fix the
20971         -export-symbols and -export-symbols-regex options.
20972
20973 2003-11-06  Scott James Remnant  <scott@netsplit.com>
20974
20975         * tests/demo-nopic.test: Skip test on hppa, which don't like
20976         non-PIC shared libraries.
20977
20978 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>
20979
20980         * tests/depdemo/configure.ac, tests/mdemo/configure.ac,
20981         tests/mdemo2/configure.ac: process 'libtool --features'
20982         from Makefile, not configure -- because libtool doesn't
20983         exist at configure time.
20984
20985         * ltmain.in (find_executable, check_executable) [cygwin*, mingw*]:
20986         binary wrapper used with uninstalled executables breaks when
20987         invoked via execlp/execvp (that is, via $PATH).  Handle that case.
20988         (fnqualify): Subsumed into find_executable.
20989
20990         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin*, mingw*]:
20991         when extracting symbols from an import lib (occurs if
20992         --enable-shared --disable-static), the output of
20993         $global_symbol_pipe is not the same as  when extracting from a
20994         static library (the default case). Add extra filters to
20995         $export_symbols_cmds to process this sort of output in addition to
20996         'normal' static-lib output.
20997         * NEWS: Updated.
20998
20999 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>,
21000         Gary V. Vaughan  <gary@gnu.org>
21001
21002         * libltdl/ltdl.c (LT_USE_POSIX_DIRENT): Factored out.
21003         (LT_USE_WINDOWS_DIRENT_EMULATION): Move to after include "ltdl.h",
21004         as they are affected by __WINDOWS__ definition.
21005         (LT_READTEXT_MODE): Use textmode to read .la files.
21006         (lt_dlinit): Use LoadLibrary loader as a fallback on cygwin.
21007
21008 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
21009
21010         * libltdl/ltdl.h (__WINDOWS__): Define this if _WIN32 or WIN32 are
21011         defined, unless __CYGWIN__ or __CYGWIN32__ are defined.
21012         (LT_SCOPE): Now set without reference to __CYGWIN__ definition,
21013         since __WINDOWS__ now implies !__CYGWIN__ after canonicalisation.
21014         (LT_PARAMS, lt_ptr): Use canonicalised __WINDOWS__ to determine
21015         which values to set these macros to.
21016
21017 2003-11-05  Gary V. Vaughan  <gary@gnu.org>
21018
21019         * README-alpha: Mention autotools-announce@gnu.org, and update release
21020         note templates.
21021
21022 2003-11-01  Scott James Remnant  <scott@netsplit.com>
21023
21024         * ltmain.in: When relinking, place the -L parameter containing
21025         the installation prefix directory after the intended destination,
21026         so we don't accidentally link against an older installed library.
21027
21028 2003-11-01  Peter O'Gorman  <peter@pogma.com>
21029
21030         * tests/mdemo2/Makefile.am: Let mdemo2 find ltdl.h again.
21031
21032 2003-10-30  Peter O'Gorman  <peter@pogma.com>
21033
21034         * m4/libtool.m4 (Darwin): Fix stupidities for darwin tags support.
21035         Makes it work again if AC_LIBTOOL_TAGS is specified in configure.ac.
21036         Bug reported by Joe Orton and Christian Schaffner.
21037
21038 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
21039
21040         Start to eliminate the double run of configure in a fresh CVS
21041         checkout by generating ltmain.sh, using that to create libtool,
21042         and then adding the tags to that, all from config.status.
21043
21044         * configure.ac (AC_CONFIG_FILES): Make config/ltmain.sh, and copy
21045         it to libltdl.
21046         * Makefile.am ($(srcdir)/config/ltmain.sh): This file is now
21047         created by config.status.  Adjust this rule.
21048         (libtoolize): Set CONFIG_COMMANDS to empty to prevent regenerating
21049         the libtool script as a side effect of running this rule.
21050         * libtool.m4: Bump serial number.  Fix comment typos.
21051         (_LT_CONFIG_LIBTOOL_INIT, _LT_CONFIG_LIBTOOL,
21052         _LT_CONFIG_SAVE_COMMANDS, _LT_CONFIG_COMMANDS: New macros.  They
21053         don't work for some reason - the variable value quoting in the
21054         init section is all wrong.  Not used at the moment.
21055         (AC_LIBTOOL_CONFIG): Generate libtool from config.status.
21056         (_LT_AC_TAG_CONFIG): Add the tags in config.status.
21057         (compiler_DEFAULT): Save the compiler value for the DEFAULT tag,
21058         or it gets overwritten by the other macros.
21059         (EOF): Globally replace with _LT_EOF to avoid namespace pollution.
21060         * tests/demo/configure.ac (STATIC): Check $enable_static instead
21061         of running ./libtool which doesn't exist yet.
21062         (BINARY_HELLDL): Check $lt_cv_sys_global_symbol_pipe with case
21063         instead of grepping ./libtool which doesn't exist yet.
21064         * tests/pdemo/configure.ac (STATIC, BINARY_HELLDL): Ditto.
21065         * doc/libtool.texi (AC_PROG_LIBTOOL): Add some notes about trying
21066         to get config details from `libtool --config'.
21067         * NEWS: Updated.
21068
21069 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
21070
21071         * ChangeLog, ChangeLog.0, ChangeLog.1: Refactored...
21072         * ChangeLog, ChangeLog.2002, ChangeLog.2001, ChangeLog.2000,
21073         ChangeLog.1999, ChangeLog.1998, ChangeLog.1997, ChangeLog.1996:
21074         ...into entries by year for easier copyright confirmation.
21075
21076         * configure.ac, libltdl/configure.ac, tests/cdemo/configure.ac,
21077         tests/demo/configure.ac, tests/depdemo/configure.ac,
21078         tests/f77demo/configure.ac, tests/mdemo/configure.ac,
21079         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
21080         tests/tagdemo/configure.ac (AM_INIT_AUTOMAKE): Remove redundant
21081         arguments.
21082         * libltdl/configure.ac: Use quadrigraphs to escape macronames.
21083
21084         * bootstrap (reconfdirs): Same as yesterday, only with portable
21085         bourne shell syntax.  :-/
21086
21087 2003-10-20  Gary V. Vaughan  <gary@gnu.org>
21088
21089         * bootstrap (reconfdirs): Overridable top dirs for bootstrap, for
21090         those times when you don't want to wait for all of the test
21091         directories to be rebootstrapped!
21092
21093 2003-10-19  Kevin P. Fleming  <kpfleming@backtobasicsmgmt.com>
21094         Charles Wilson <cygwin@cwilson.fastmail.fm>
21095
21096         * ltmain.in: include --tag options, if specified, in the
21097         relink_command in uninstalled .la files.  Also, preserve --silent,
21098         --debug options when libtool re-execs itself.
21099         * NEWS: Updated.
21100
21101 2003-10-19  Charles Wilson  <cygwin@cwilson.fastmail.fm>
21102
21103         * libtoolize.in: protect sed expression against
21104         AC_CONFIG_AUX_DIR_DEFAULT.
21105
21106 2003-10-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
21107
21108         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): For MinGW, reverted DLL
21109         check method back to a working objdump-based test.  This is not as
21110         concrete a test as using the 'file' command, but it does not
21111         require that the 'file' command be available.
21112
21113 2003-10-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
21114
21115         * doc/libtool.texi (AC_LIBTOOL_TAGS): Incorporate documentation
21116         for AC_LIBTOOL_TAGS macro to specifify libtool tags. The now
21117         defunct --with-tags option was never documented.
21118
21119 2003-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
21120
21121         * m4/libtool.m4: Restrict the list of tags that can be created
21122         with a new AC_LIBTOOL_TAGS([tag1 tag2 ...]) macro. Deprecate
21123         --with-tags.
21124
21125 2003-10-15  Gary V. Vaughan  <gary@gnu.org>
21126
21127         * libtoolize.in: Typo when copying config.sub.
21128         From Patrick Welche <prlw1@newn.cam.ac.uk>
21129
21130         * demo/Makefile.am (libhell0_a_SOURCES): Do not name sources
21131         already built with libtool...
21132         (libhell0_a_LIBADD): ...instead name the objects directly.  This
21133         prevents a long standing warning from automake 1.7+.
21134         * pdemo/Makefile.am (libhell0_a_SOURCES, libhell0_a_LIBADD):
21135         Ditto.
21136
21137         * bootstrap: Make the fake files valid shell scripts with a
21138         comment incase they get left around.
21139         (LIBTOOLIZE): Use a dummy script to prevent the installed
21140         `libtoolize' from trashing the distributed libtool.m4,
21141         config.guess and config.sub.
21142
21143         * configure.ac (AC_CONFIG_TESTDIR, AC_CONFIG_TESTFILES): Comment
21144         this out for now, the autotest testsuite rewrite is not ready
21145         yet.
21146
21147         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
21148         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
21149         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
21150         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (top_distdir):
21151         Removed. `autoreconf' needs literals in ACLOCAL_AMFLAGS.
21152
21153 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
21154
21155         * libtoolize.in (func_mkdir_p): Synch with tests/defs; if there
21156         are no more directories in the stack, break out of the loop.
21157
21158         * tests/Makefile.am (COMMON_TESTS): Remove pdemo-unst.test, which
21159         isn't a real test.
21160
21161 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
21162
21163         Refactor all the test case common code into shell functions in
21164         tests/defs, and move the various demo directories out of
21165         $top_srcdir, and into tests too.  The refactoring showed up a
21166         number of inconsistencies and latent bugs, as well as fixing (I
21167         think!!) the long-standing annoyance with some of the tests giving
21168         spurious failures intermittently.  While I was here, emacs kindly
21169         removed a lot of bogus whitespace and added copyright notices for
21170         us:
21171
21172         * cdemo, demo, depdemo, f77demo, mdemo, mdemo2, pdemo, tagdemo:
21173         Moved from here...
21174         * tests/cdemo, tests/demo, tests/depdemo, tests/f77demo,
21175         tests/mdemo, tests/mdemo2, tests/pdemo, tests/tagdemo: ...to
21176         here.
21177         * tests/defs: Factor much common functionality from the test
21178         scripts into shell functions.  Added a copyright notice.
21179         * tests/assign.test, tests/cdemo-conf.test, tests/cdemo-exec.test,
21180         tests/cdemo-make.test, tests/cdemo-shared.test,
21181         tests/cdemo-static.test, tests/demo-conf.test,
21182         tests/demo-deplibs.test, tests/demo-exec.test,
21183         tests/demo-inst.test, tests/demo-make.test,
21184         tests/demo-nofast.test, tests/demo-nopic.test,
21185         tests/demo-pic.test, tests/demo-shared.test,
21186         tests/demo-static.test, tests/demo-unst.test,
21187         tests/depdemo-conf.test, tests/depdemo-exec.test,
21188         tests/depdemo-inst.test, tests/depdemo-make.test,
21189         tests/depdemo-nofast.test, tests/depdemo-shared.test,
21190         tests/depdemo-static.test, tests/depdemo-unst.test,
21191         tests/f77demo-conf.test, tests/f77demo-exec.test,
21192         tests/f77demo-make.test, tests/f77demo-shared.test,
21193         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
21194         tests/mdemo-conf.test, tests/mdemo-exec.test,
21195         tests/mdemo-inst.test, tests/mdemo-make.test,
21196         tests/mdemo-shared.test, tests/mdemo-static.test,
21197         tests/mdemo-unst.test, tests/mdemo2-conf.test,
21198         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
21199         tests/pdemo-conf.test, tests/pdemo-exec.test,
21200         tests/pdemo-inst.test, tests/pdemo-make.test,
21201         tests/pdemo-unst.test, tests/quote.test, tests/sh.test,
21202         tests/suffix.test, tests/tagdemo-conf.test,
21203         tests/tagdemo-exec.test, tests/tagdemo-make.test,
21204         tests/tagdemo-shared.test, tests/tagdemo-static.test: Refactored
21205         to use new functions in tests/defs.  Added a copyright notice.
21206         * tests/hardcode.test, noinst-link.test,
21207         tests/relink.test, tests/relink.test,
21208         tests/mdryrun.test: Ditto.  Moved from here...
21209         * tests/demo-hardcode.test, demo-noinst-link.test,
21210         tests/demo-relink.test, tests/depdemo-relink.test,
21211         tests/mdemo-dryrun.test: ...to here respectively.
21212         * Makefile.am: Added a copyright notice.
21213         * tests/sh.test: Check libtoolize.in for non-portabilities too.
21214         * libtoolize.in: Fix non-portabilities found by tests/sh.test.
21215
21216 2003-10-12  Peter O'Gorman <peter@pogma.com>
21217
21218         * m4/libtool.m4: Speed up max_cmd_len check.
21219
21220 2003-10-08  Gary V. Vaughan  <gary@gnu.org>
21221
21222         * libtoolize.in: AC_CONFIG_M4_DIR has landed in CVS autoconf.
21223         Only it's called AC_CONFIG_MACRO_DIR.  Search and replace.
21224         Grumble. ;-)
21225
21226 2003-10-08  Scott James Remnant  <scott@netsplit.com>
21227
21228         * libltdl/ltdl.c (lt_dlerror): change return value when
21229         no error has occured to NULL to match documentation.
21230         (Debian Bug #157229)
21231
21232 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
21233
21234         * ltmain.in: Don't suppress output of PIC mode compile if
21235         -no-suppress option is given.
21236         * doc/libtool.texi (Invoking libtool): Document it.
21237         * NEWS: Updated.
21238
21239 2003-10-07  Marcus Comstedt  <marcus@mc.pp.se>
21240
21241         * m4/libtool.m4 [amigaos-ppc, amigaos-m68k]: Differentiate between
21242         amigaos on ppc and m68k.
21243         * NEWS: Updated.
21244
21245 2003-10-07  Ralph Schleicher  <rs@nunatak.allgaeu.org>
21246
21247         * ltmain.in: Do not create `.o' objects when `-shared' is
21248         specified in compile mode.
21249         Do not make a static library when `-shared' is specified in link
21250         mode.
21251         * doc/libtool.texi (Compile mode): Document it.
21252         * NEWS: Updated.
21253
21254         * doc/libtool.texi (Compile mode): Be more specific about the
21255         effect of `-static'.
21256         * ltmain.in: Do not create `.lo' objects when `-static' is
21257         specified.
21258         * NEWS: Updated.
21259
21260 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
21261
21262         * doc/libtool.texi (Invoking libtool): Updated.
21263         * ltmain.in: Add missing clean and finish modes to the shorthand
21264         options.
21265
21266         * ltmain.in: Typo in the --mode shorthand.
21267
21268 2003-10-07  Scott James Remnant  <scott@netsplit.com>
21269
21270         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Remove dead code
21271         for platforms that have been using pass_all for some time now.
21272
21273 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
21274
21275         * libtoolize.in: Completely rewritten.
21276         * Makefile.am (AUTOMAKE_OPTIONS): Reduced to 1.7.  The 1.8
21277         requirement just made the distribution much smaller due to
21278         m4_includes.  1.7 will bootstrap libtool just fine.
21279         * NEWS: Updated.
21280
21281 2003-10-05  Peter O'Gorman <peter@pogma.com>,
21282         Gary V. Vaughan  <gary@gnu.org>
21283
21284         * ltmain.in: Remove inferrence of mode, add shorthand for mode
21285         choice.
21286
21287         * ltmain.in: Specifying -allow-undefined is now an error.
21288
21289 2003-09-29  Scott James Remnant  <scott@netsplit.com>
21290
21291         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for linux*
21292         solving many build problems on ARM, and hopefully preventing any
21293         future ones.
21294         (Debian Bug #191133 and #190569)
21295
21296 2003-09-29  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>,
21297         Dalibor Topic <robilad@kaffe.org>
21298
21299         * libltdl/ltdl.c: Only include malloc.h if stdlib.h can not be
21300         found.
21301
21302 2003-09-26  Alfred M. Szmidt  <ams@kemisten.nu>
21303
21304         * mdemo2/Makefile.am (INCLUDES): Include `$(top_srcdir)/../libltdl'
21305         instead of `../libltdl'.
21306
21307 2003-09-24  Gary V. Vaughan  <gary@gnu.org>
21308
21309         * bootstrap: Rewritten to use autoreconf.
21310         * config.guess, config.sub, mkstamp:  Moved from here...
21311         * config/config.guess, config/config.sub, config/mkstamp: ...to
21312         here, respectively.
21313         * libtool.m4, ltdl.m4: Moved from here...
21314         * m4/libtool.m4, m4/ltdl.m4: ...to here, respectively.
21315         * configure.ac: Removed various acinclude.m4 hackery, as these
21316         files are no longer needed with automake 1.8.
21317         * Makefile.am: Removed various acinclude.m4 hackery, as these
21318         files are no longer needed with automake 1.8.
21319         (AUTOMAKE_OPTIONS): Require CVS automake.
21320         (CONF_SUBDIRS, CFLAGS, CPPFLAGS, LDFLAGS, LIBS, FFLAGS, FLIBS):
21321         Automake now makes a Make variable from every AC_SUBST, so these
21322         are NOP.
21323         (aclocal_macros): These files are now in their own m4 subdir.
21324         Changed all clients.
21325         (EXTRA_DIST): mkstamp has moved to the new config subdir.  Changed
21326         all clients.
21327         (pkgdata_SCRIPTS): Ditto wrt config.guess and config.sub.
21328         (pkgdata_DATA): Ditto wrt ltmain.sh.
21329         * f77demo/configure.ac, libltdl/configure.ac (AM_CONFIG_HEADER):
21330         Is deprecated in favour of AC_CONFIG_HEADERS.  Updated to the
21331         latter.
21332         * Makefile.am, cdemo/Makefile.am, demo/Makefile.am,
21333         depdemo/Makefile.am, f77demo/Makefile.am, mdemo/Makefile.am,
21334         mdemo2/Makefile.am, pdemo/Makefile.am, tagdemo/Makefile.am
21335         (EXTRA_DIST): Remove acinclude.m4.
21336         (ACLOCAL_AMFLAGS): Search new `m4' macro directory.
21337         * configure.ac, cdemo/configure.ac, demo/configure.ac,
21338         depdemo/configure.ac, f77demo/configure.ac, mdemo/configure.ac,
21339         mdemo2/configure.ac, pdemo/configure.ac, tagdemo/configure.ac
21340         (AC_CONFIG_AUX_DIR): Declare that config helper scripts are now
21341         kept in the new config subdir.
21342         * libltdl/configure.ac (AC_CONFIG_AUX_DIR): Removed.  Defaults to
21343         `.' anyway.
21344
21345 2003-09-21  Robert Millan  <robertmh@gnu.org>
21346
21347         * libtool.m4: Add GNU/KNetBSD support.
21348         * ltdl.m4: Likewise.
21349
21350 2003-09-13  Scott James Remnant  <scott@netsplit.com>
21351
21352         * libtool.m4: allow STRIP to contain spaces and additional
21353         arguments.  (Debian Bug #183055)
21354         * ltmain.in: include newline in "sensible default" for IFS.
21355         (Debian Bug #98492 and #95447)
21356
21357 2003-09-11  Peter O'Gorman  <peter@pogma.com>
21358
21359         * AUTHORS, THANKS: Added myself to AUTHORS, removed from THANKS.
21360
21361 2003-09-10  Peter O'Gorman  <peter@pogma.com>
21362
21363         * mdemo2/configure.ac: Use AC_LIBTOOL_DLOPEN.
21364         * mdemo2/main.c: Use LTDL_SET_PRELOADED_SYMBOLS().
21365         * mdemo2/Makefile.am: Set INCLUDES properly and add -dlopen force
21366         to make sure the symbols file is included in the link line.
21367
21368         * ltmain.in: Accept -framework for darwin and put it in
21369         dependency_libs. For non-installed .la's try to avoid having
21370         ./.libs/.libs/libfoo.so on the link line.
21371
21372 2003-09-10  Arne Woerner  <woerner@mediabase-gmbh.de>
21373
21374         * libtool.m4 [openbsd]: openbsd 3.x needs versioning information.
21375
21376 2003-08-29  Gary V. Vaughan  <gary@gnu.org>
21377
21378         * bootstrap: Typo.
21379
21380 2003-08-29  Alexandre Duret-Lutz  <adl@gnu.org>
21381
21382         * libtool.m4 (_LT_AC_LANG_C_CONFIG): Fix unquoted call to
21383         _LT_AC_LANG_C_CONFIG.
21384         (AC_PROG_EGREP): Remove, now that Libtool requires Autoconf 2.56.
21385         * bootstrap: Issue an upgrade warning.
21386
21387 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
21388
21389         * libtool.m4 (_LT_AC_CHECK_DLFCN): Use the interrim new
21390         AC_CHECK_HEADER with compiler rather than preprocessor.
21391         (AC_LIBTOOL_SETUP): ...which was introduced in autoconf-2.56, so
21392         we AC_PREREQ that version.
21393         * ltdl.m4 (AC_WITH_LTDL, AC_LIB_LTDL, AC_LTDL_FUNC_ARGZ): Ditto.
21394
21395 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
21396
21397         Work around a bug in AU_ALIAS in CVS Autoconf that inserts a
21398         newline just before AC_FD_CC, by hand updating:
21399
21400         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): s/AC_FD_CC/AS_MESSAGE_LOG_FD/g.
21401
21402 2003-08-05  Jim Pick <jim@kaffe.org>,
21403         Ito Kazumitsu <kaz@maczuka.gcd.org>,
21404         Gary V. Vaughan  <gary@gnu.org>
21405
21406         Much as we have tried not to make it the callers' responsibility
21407         to maintain an lt_dlrealloc function pointer, it is too difficult
21408         to implement realloc as malloc/memcpy/free without knowing the
21409         size of the original block.  rpl_realloc has been deprecated since
21410         2002-10-30, but kaffe has real failures with that so it's time to
21411         bite the bullet.  Caller gets to maintain lt_dlrealloc:
21412
21413         * NEWS (1.5.1): Updated.
21414         * libltdl/ltdl.c (LT_DLREALLOC): Use lt_dlrealloc so the user can
21415         update the function pointer to match lt_dlmalloc.
21416         (lt_emalloc): Use lt_dlrealloc rather than hardcoding realloc.
21417         * doc/libtool.texi (Libltdl interface): Describe lt_dlrealloc now
21418         that it too has become part of the exported interface to libltdl.
21419
21420 2003-08-01  Peter O'Gorman  <peter@pogma.com>
21421
21422         * libtool.m4 (darwin): Use "-undefined dynamic_lookup" if the
21423         user set MACOSX_DEPLOYMENT_TARGET to 10.3 or greater.
21424         * libltdl/ltdl.c (dyld): Save the error from the first lookup
21425         to report in lt_dlerror(). Otherwise the error is always
21426         "Symbol _foo not in /usr/lib/libSystem.dylib".
21427         Thanks to Chris Zubrzycki for reporting this.
21428
21429 2003-08-01  Robert Boehne  <rboehne@gnu.org>
21430
21431         * libltdl/ltdl.h: Tweak the header to support visual studio.
21432
21433 2003-07-31  Greg Eisenhauer  <eisen@cc.gatech.edu>
21434
21435         * ltmain.in: Provide absolute paths for dlopen and dlpreopen
21436         files in generating uninstalled libtool libraries.
21437         * mdemo2/main.c, mdemo2/Makefile.am, mdemo2/README,
21438         mdemo2/configure.ac, mdemo2/.cvsignore, mdemo/mlib.c,
21439         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
21440         tests/mdemo2-make.test: New files for testing above feature.
21441         * configure.ac, bootstrap, tests/Makefile.am: Accomodate new
21442         test directory.
21443         * mdemo/Makefile.am: Build libmlib.la for mdemo2 tests.
21444
21445 2003-07-30  Tony Wyatt <wyattaw@optushome.com.au>
21446
21447         * libtool.m4: Remove parentheses around finish_eval part which
21448         broke on amigaos pdksh.
21449
21450 2003-07-30  Christiaan Welvaart  <cjw@daneel.dyndns.org>
21451
21452         * tests/dryrun.test: Ignore any 'total' line from "ls -l" output.
21453
21454 2003-07-30  Albert Chin-A-Young  <china@thewrittenword.com>
21455
21456         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Correctly remove IRIX C++
21457         template files.
21458
21459 2003-07-24  Robert Millan  <robertmh@gnu.org>
21460
21461         * libtool.m4: More fixes for the new GNU/FreeBSD triplet.
21462
21463 2003-07-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
21464
21465         * config.guess, config.sub: Synchronized from ftp.gnu.org since
21466         Robert Millan's patch requires it.
21467
21468 2003-07-14  Robert Millan  <zeratul2@wanadoo.es>
21469
21470         * libtool.m4: Fixed to use the new GNU/FreeBSD triplet.
21471         * ltdl.m4: Fixed to use the new GNU/FreeBSD triplet.
21472         * ltmain.in: Remove GNU/FreeBSD cases, which are no longer needed.
21473
21474 2003-07-14  Andreas Schwab  <schwab@suse.de>
21475
21476         * libtool.m4 (_LT_AC_LOCK): Also match powerpc64-*linux* in
21477         addition to ppc64-*linux*.  From Markus Meissner
21478         <meissner@bogus.example.com>.
21479
21480 2003-07-14  Dalibor Topic  <robilad@yahoo.com>
21481
21482         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): For AmigaOS with pdksh,
21483         set the maximum command line length to 8K since otherwise the test
21484         takes over an hour to run.
21485
21486 2003-06-25  Alexandre Oliva  <aoliva@redhat.com>, Tim Waugh  <twaugh@redhat.com>
21487
21488         * libtool.m4: Replace mis-uses of path with pathname.
21489         (AC_PROG_LD_GNU): Don't quote $LD when running it.
21490         (_LT_AC_LANG_CXX_CONFIG): Use -nostdlib also when linking with g++
21491         and non-GNU ld.
21492
21493 2003-06-11  Gary V. Vaughan  <gary@gnu.org>
21494
21495         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION): Require LT_AC_PROG_SED to
21496         ensure $SED is set by the time it is used.
21497
21498         * ChangeLog: Restore missing entries from 2003-04-22.
21499
21500         * NEWS: Sychronised from branch-1-5.
21501
21502 2003-06-03  Benjamin Reed  <ranger@befunk.com>
21503
21504         * ltmain.in: search libraries in the order of preference, rather
21505         than picking .la's even if they're in a less preferred directory.
21506
21507 2003-06-03  Robert Millan <rmh@debian.org>
21508
21509         * ltdl.m4: Add support for GNU/FreeBSD.
21510         * ltmain.in: Add support for GNU/FreeBSD.
21511
21512 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
21513
21514         * libtool.m4: No need to use sed to remove leading comma when
21515         appending to $tagnames.
21516
21517 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
21518
21519         * tests/defs, tests/demo-conf.test, tests/demo-nofast.test,
21520         tests/demo-nopic.test, tests/demo-pic.test,
21521         tests/demo-shared.test, tests/demo-static.test,
21522         tests/depdemo-conf.test, tests/depdemo-nofast.test,
21523         tests/depdemo-shared.test, tests/depdemo-static.test:
21524         Pass build system type to tests to support environment
21525         where default system type not equal to build system type
21526         (eg. 64-bit HP-UX).
21527
21528 2003-06-03  Peter O'Gorman  <peter@pogma.com>
21529
21530         * libtool.m4 (darwin): Remove checks for Apple-specific gcc.
21531         * libltdl/ltdl.c (HAVE_MACH_O_DYLD_H): #define
21532         __private_extern__ for fsf gcc.
21533         * ltmain.in (darwin): Only add new paths to newlib_search_path.
21534
21535 2003-06-03  Max Bowsher  <maxb@ukf.net>
21536
21537         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Reorder cygwin's
21538         system library search path.
21539
21540 2003-06-01  Robert Boehne  <rboehne@gnu.org>
21541
21542         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match all qnx-nto
21543         as recent config.guess returns a slightly different string.
21544         * ltmain.in: Replace use of "od" with tr.
21545
21546 2003-05-30  Gary V. Vaughan  <gary@gnu.org>
21547
21548         * libltdl/ltdl.c (argz_insert): Corrected an off by one error when
21549         checking that before is not out of range.
21550
21551 2003-05-29  Gary V. Vaughan  <gary@gnu.org>
21552
21553         * libltdl/ltdl.c (lt_int_dyld_lib_install_name): Removed unused
21554         variable mh1.
21555         (sys_dyld_close): Removed unused variable size.
21556
21557 2003-05-21  Bruno Haible  <bruno@clisp.org>
21558
21559         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Add support for
21560         GNU/FreeBSD.
21561
21562 2003-04-22  Alexandre Oliva  <aoliva@redhat.com>
21563
21564         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
21565         mips*-linux* variants.
21566
21567 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
21568
21569         * libtool.m4 Switch on $CC and add paterns to cases.
21570
21571 2003-04-22  Peter O'Gorman  <peter@pogma.com>
21572
21573         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
21574         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
21575         value of shlibpath_overrides_runpath is used in the HARDCODE
21576         test and is set in the DYNAMIC_LINKER test.
21577         * ltmain.in [darwin]: We never need to relink on darwin.
21578
21579 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
21580
21581         * libtool.m4: Switch on $CC and add patterns to cases.
21582
21583 2003-04-21  Richard Dawe  <rich@phekda.freeserve.co.uk>
21584
21585         * doc/libtool.texi: Use @ifnottex instead of @ifinfo,
21586         to allow production of HTML documentation using makeinfo.
21587
21588 2003-04-14  Robert Boehne  <rboehne@gnu.org>
21589
21590         * NEWS: Updated.
21591         * configure.ac: Bumped version to 1.5a.
21592
21593         GNU libtool 1.5 was released.
21594
21595         * configure.ac: Bumped version to 1.5.
21596         * NEWS: updated.
21597         * README-alpha: Updated upload instructions.
21598         * README: Changed typo in version description.
21599         * config.guess, config.sub, texinfo.tex:  Synchronized from
21600         ftp.gnu.org.
21601
21602
21603 2003-04-10  Alexandre Oliva  <aoliva@redhat.com>
21604
21605         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
21606         mips*-linux* variants.
21607
21608 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
21609
21610         * libtool.m4 Switch on $CC and add paterns to cases.
21611
21612 2003-04-09  Peter O'Gorman  <peter@pogma.com>
21613
21614         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
21615         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
21616         value of shlibpath_overrides_runpath is used in the HARDCODE
21617         test and is set in the DYNAMIC_LINKER test.
21618         * ltmain.in(darwin): We never need to relink on darwin.
21619
21620 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
21621
21622         * libtool.m4 Switch on `basename $CC` not $CC
21623
21624 2003-04-05  Peter O'Gorman  <peter@pogma.com>
21625
21626         * libtool.m4: if ZSH_VERSION is set then setopt NO_GLOB_SUBST so
21627         libtool works. Remove zsh echo test code, don't bother checking
21628         for zsh anymore in the darwin archive_expsym_cmds.
21629
21630 2003-04-05  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
21631
21632         * libtool.m4: Switch on $CC not $cc_basename.
21633
21634 2003-04-02  Robert Boehne  <rboehne@gnu.org>
21635
21636         * tests/defs: Quote $DJGPP to prevent problems with some shells.
21637         Pointed out by Albert Chin <libtool@thewrittenword.com>
21638
21639 2003-04-01  Peter O'Gorman  <peter@pogma.com>
21640
21641         * libtool.m4: Fix the echo test which I broke earlier.
21642         * ltmain.in: Make DESTDIR work on darwin, don't use otool.
21643
21644 2003-03-31  Keith Packard  <keithp@keithp.com>
21645
21646         * ltmain.in: New flag -version-number to be used for maintaining
21647         compatability with a previously non-Libtool versioning scheme.
21648         * doc/libtool.texi: Document it.
21649
21650 2003-03-31  Naofumi Yasufuku  <naofumi@yasufuku.net>
21651
21652         * ltmain.in (win32_libid): Fixed sed expression error in
21653         win32_nmres evaluation.
21654
21655 2003-03-31  Albert Chin  <libtool@thewrittenword.com>
21656
21657         * ltmain.in: Don't pass -R flags found in a .la's dependency_libs
21658         variable directly down to the linker.
21659         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
21660
21661 2003-03-28  Richard Dawe  <rich@phekda.freeserve.co.uk>
21662
21663         * Makefile.am: Define CONF_SUBDIRS.
21664         * tests/defs: Set CONFIG_SITE to /nonexistent, except on DJGPP,
21665         which requires its config.site, to work correctly.
21666         * tests/cdemo-conf.test, tests/cdemo-shared.test,
21667         tests/cdemo-static.test, tests/demo-conf.test,
21668         tests/demo-nofast.test, tests/demo-nopic.test,
21669         tests/demo-pic.test, tests/demo-shared.test,
21670         tests/demo-static.test, tests/depdemo-conf.test,
21671         tests/depdemo-nofast.test, tests/depdemo-shared.test,
21672         tests/depdemo-static.test, tests/f77demo-conf.test,
21673         tests/f77demo-shared.test, tests/f77demo-static.test,
21674         tests/mdemo-conf.test, tests/mdemo-shared.test,
21675         tests/mdemo-static.test, tests/pdemo-conf.test,
21676         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
21677         tests/tagdemo-static.test: Don't set CONFIG_SITE, now that
21678         tests/defs sets it.
21679         * tests/cdemo-exec.test, tests/demo-exec.test,
21680         tests/demo-inst.test, tests/depdemo-exec.test,
21681         tests/depdemo-inst.test, tests/f77demo-exec.test,
21682         tests/mdemo-exec.test, tests/mdemo-inst.test,
21683         tests/pdemo-exec.test, tests/pdemo-inst.test,
21684         tests/tagdemo-exec.test: When checking for the existence
21685         of executables, use the executable file extension from $EXEEXT.
21686
21687 2003-03-28  Peter O'Gorman  <peter@pogma.com>
21688
21689         * libltdl/ltdl.c (dyld): Remove some debug printf's, fix a bug.
21690         * ltmain.in (darwin): Only link against shared libraries when doing
21691         link_all_deplibs.
21692
21693 2003-03-25  Robert Boehne  <rboehne@gnu.org>
21694
21695         * bootstrap: Add f77demo to the directories that AUTOHEADER
21696         is run in.
21697
21698 2003-03-21  Wesley W. Terpstra <terpstra@ito.tu-darmstadt.de>
21699
21700         * ltmain.in: Don't accumulate directory information in clean mode.
21701         Include properly pathed wrapper script.
21702
21703 2003-03-21  Peter O'Gorman  <peter@pogma.com>
21704
21705         * README: Remove "Important" information about patching automake.
21706         * configure.ac: Fix misapplied patch in last commit
21707         * libtool.m4 (darwin): Check compiler is apple gcc, add -single_module
21708         support so that dyloading c++ shared libraries will work.
21709         * libtool.m4 (_LT_AC_TAGCONFIG): Add test -n to the tests so that
21710         it will work outside of libtool.
21711         * doc/PLATFORMS: Add darwin
21712         * f77demo/configure.ac: Add config.h which was misapplied previously.
21713
21714 2003-03-20  Peter O'Gorman  <peter@pogma.com>
21715
21716         * ltmain.in: Always use $echo not echo for consistency.
21717         Changes for darwin building. Warn if linking against libs linked
21718         with -module. Use module_cmds if available and building a module,
21719         move convenience double lib check,
21720         * libltdl/ltdl.c: ltdl support for darwin (first blush)
21721         * libltdl/README: note that darwin is supported
21722         * ltdl.m4: Changes for darwin, and for new shrext
21723         * libtool.m4: Changed the way darwin builds stuff (make check passes)
21724         added module_cmds, module_expsym_cmds and hardcode_automatic and put
21725         them in the libtool script. check for zsh's removal of escapes. Allow
21726         libraries to be stripped on darwin.
21727         * TODO: Remove the todo about zsh's removal of excapes. note that zsh
21728         echo works perfectly well, eval is screwed up. Seems to be fixed in
21729         latest zsh.
21730         * THANKS: added self :)
21731         * f77demo/configure.ac: Use config.h or it doesn't work.
21732
21733 2003-03-19  Robert Boehne  <rboehne@gnu.org>
21734
21735         * libtool.m4 (_LT_AC_TAGCONFIG): Add test around the macro that
21736         adds tags to the libtool script so that they won't run when not
21737         needed.
21738         * configure.ac: Set F77 to no when no Fortran compiler is found.
21739
21740 2003-03-16  Charles Wilson  <cwilson@ece.gatech.edu>
21741
21742         * ltmain.in (win32_libid): use $SED, not head.
21743
21744 2003-03-02  Alexandre Oliva  <aoliva@redhat.com>
21745
21746         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
21747         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
21748         and reset them for a C++ environment.  Use the with_gnu_ld setting
21749         from AC_PROG_LD.
21750
21751 2003-02-28  Ralph Schleicher  <rs@nunatak.allgaeu.org>
21752
21753         * ltmain.in: Only append a dot to the wrapper script when
21754         building on cygwin/MSYS (check for $build, not $host).
21755
21756 2003-02-27  Samuel Meder  <meder@mcs.anl.gov>
21757
21758         * libtool.m4 (ia64): Add support for Intel compiler (ecc) on IA64
21759         Linux.
21760
21761 2003-02-27  Benjamin Reed <ranger@befunk.com>
21762
21763         * THANKS: Added people who have submitted 3 or more patches
21764         to libtool to the THANKS file.
21765         * README: Added notes about the Darwin (MacOSX) support.
21766
21767 2003-02-25  Bob McElrath  <bob+libtool@mcelrath.org>
21768
21769         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Add support for
21770         the Compaq C compiler for Alpha Linux.
21771
21772 2003-02-25  Benjamin Reed  <ranger@befunk.com>
21773
21774         * libtool.m4 (darwin): Disable hardcoding library paths to
21775         make relinking unnecessary.
21776
21777 2003-02-24  Robert Boehne  <rboehne@gnu.org>
21778
21779         * libltdl/configure.ac: Use AC_CONFIG_AUX_DIR([.]) to place
21780         auxilary files in the libltdl directory.
21781         * Makefile.am: Add to the ltmain.sh rule to copy it into the
21782         libltdl subdirectory.
21783         * bootstrap: Explicitly handle ltmain.sh in libltdl, and pass
21784         --copy to automake.
21785
21786 2003-02-24  Ralph Schleicher  <rs@nunatak.allgaeu.org>
21787
21788         * libtool.m4 (AC_LIBTOOL_SETUP): Check for ar.
21789
21790 2003-02-23  Peter O'Gorman  <peter@pogma.com>
21791
21792         * libtool.m4 (darwin): Revamp darwin platform support.
21793         * ltdl.m4 (darwin): Support dlcompat if found.
21794         * ltmain.in: Make sure ranlib is run if needed when piecewise
21795         linking.
21796
21797 2003-02-23  Alexandre Duret-Lutz  <adl@gnu.org>
21798
21799         * ltmain.in (--help): Show mailing-address for bug reports.
21800         (--version): Mention only the most recent copyright year.
21801         * libtoolize.in (--help): Show mailing-address for bug reports.
21802         (--version): Mention only the most recent copyright year.
21803
21804 2003-02-19  Alexandre Oliva  <aoliva@redhat.com>
21805
21806         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
21807         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
21808         and reset them for a C++ environment.  Use the with_gnu_ld setting
21809         from AC_PROG_LD.
21810
21811         * libtool.m4: Replace $linker_flags with $compiler_flags wherever
21812         it is used as argument to $CC.
21813
21814         * libtool.m4: Use linux version_type on IRIX with GNU ld.
21815         Prefix -soname, -set_version and their arguments with ${wl}.  Add
21816         -melf* linker scripts to LD, and use them to determine libsuff,
21817         shlibsuff and libmagic.
21818
21819 2003-02-17  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
21820
21821         * libtool.m4: Intel icc fixups for version 7.0.
21822
21823 2003-02-17  Ralph Schleicher  <rs@nunatak.allgaeu.org>
21824
21825         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Prepend a dot to
21826         the value of the shrext (aka shared_ext) variable and delete it
21827         from the library_names_spec and soname_spec definitions.  That
21828         way the user can omit the shared library suffix by setting it
21829         to the empty string.
21830         (AC_LIBTOOL_LANG_CXX_CONFIG): Strengthen renaming commands for
21831         the KCC compiler.
21832         * doc/libtool.texi (Link mode): Update the manual.
21833
21834 2003-02-17  Charles Wilson  <cwilson@ece.gatech.edu>
21835
21836         * ltmain.in (win32_libid): Rewritten to improve speed.
21837
21838 2003-02-11  Richard Dawe  <rich@phekda.freeserve.co.uk>
21839
21840         * libtoolize.in: Use the program found by AC_PROG_LN_S
21841         to create symlinks.
21842
21843 2003-02-08  Jan Kratochvil  <project-libtool@jankratochvil.net>
21844
21845         * ltmain.in: Handle duplicate object file names when performing
21846         piecewise archive linking by renaming object files when needed.
21847
21848 2003-02-05  Robert Boehne  <rboehne@gnu.org>
21849
21850         * libtool.m4 (AC_CHECK_LIBM): Search for a real symbol in
21851         the math library rather than 'main', it causes problems for
21852         C++ compilers with certain Auto* tools.
21853         (AC_LIBLTDL_INSTALLABLE): ditto.
21854
21855 2003-02-05  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
21856
21857         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG)
21858         (AC_LIBTOOL_PROG_LD_SHLIBS): Rewrite printf commands so
21859         that the format string cannot be mistaken as an option.
21860         Reported by Martin MOKREJS.
21861
21862 2003-02-05  Robert Boehne  <rboehne@gnu.org>
21863
21864         * libtool.m4: Modify the sys_lib_search_path_spec to allow
21865         for either native sed or GNU sed to be used.
21866
21867 2003-02-04  Nick Hudson  <skrll@netbsd.org>
21868
21869         * libtool.m4: don't use -nodefaultlibs in archive_commands
21870         or archive_expsym_commands on NetBSD.
21871
21872 2003-02-04  Albert Chin-A-Young  <china@thewrittenword.com>
21873
21874         * libtool.m4: Change setting of archive_cmds_need_lc
21875         so that it doesn't overwrite the previous setting.
21876
21877 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
21878
21879         * libtool.m4: Allow compiler variable, CC, CXX, etc. to
21880         be a program name with arguments. Original version stripped
21881         arguments for CC.
21882
21883 2003-01-28  Charles Wilson  <cwilson@ece.gatech.edu>
21884
21885         * ltmain.in: add code for a binary wrapper
21886         to use with uninstalled executables on cygwin/mingw.
21887         Make sure that --mode=clean gets shell wrapper and
21888         binary wrapper.  When sourcing the shell wrapper,
21889         invoke using a terminal `.' on cygwin/mingw to
21890         avoid the automatic append-.exe behavior.
21891
21892 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
21893
21894         * libtool.m4: Hardcode library paths into libraries on IRIX.
21895
21896 2003-01-18  Robert Boehne  <rboehne@gnu.org>
21897
21898         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Don't add -DPIC
21899         for languages other than C and C++.
21900
21901 2003-01-13  Albert Chin-A-Young  <china@thewrittenword.com>
21902
21903         * libtool.m4, ltmain.in: Add support for hppa*64* based on
21904         a patch by Ross Alexander <ross.alexander@uk.neceur.com>.
21905         Credit to Ross! Use +b to hardcode library runtime path.
21906         Add new variable, $hardcode_libdir_flag_spec_ld, that
21907         is equivalent to $hardcode_libdir_flag_spec but is used
21908         when ld is used for linking. This works around having to
21909         set wl=''.
21910
21911 2003-01-12  Robert Boehne  <rboehne@gnu.org>
21912
21913         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Revert an
21914         accidental rearranging of dylib and so for darwin.
21915
21916 2003-01-10  Robert Boehne  <rboehne@gnu.org>
21917
21918         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Modify the
21919         "-shrext" option so that is works properly under Darwin.
21920         Modify the processing of 'gcc -print-search-dirs' under
21921         Darwin to make it behave like GNU gcc does.
21922         (AC_LIBTOOL_CONFIG): Single quote $shrext.
21923         * ltimain.in: Expand shared_ext just before it is used
21924         so that it can be conditional on the value of $module.
21925
21926 2002-12-31  Benjamin Reed  <ranger@befunk.com>
21927
21928         * ltmain.in [darwin]: disable lazy linking, needed
21929         to resolve C++ global constructor issues
21930
21931 2002-12-30  Ralph Schleicher  <rs@nunatak.allgaeu.org>
21932
21933         Rework by Robert Boehne <rboehne@gnu.org>
21934         * ltmain.in: New link option -shrext.
21935         * libtool.m4 (AC_LIBTOOL_CONFIG): New libtool variable shrext.
21936         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Replace all hard coded shared
21937         library file name extensions in library_names_spec and
21938         soname_spec with $shrext.
21939         * doc/libtool.texi (Link mode): Document it.
21940
21941 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
21942
21943         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): modify
21944         $archive_expsym_cmds to restore support for using
21945         .def files via the -export-symbols switch.
21946         (AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]): in both the [CXX]
21947         branch and the default branch, improve $export_symbols_cmds
21948         so that DATA symbols are properly  labelled.  In the default
21949         branch, duplicate the _CXX_CONFIG correction for
21950         $archive_expsym_cmds.
21951
21952 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
21953
21954         * libtool.m4 (AC_LIBTOOL_RC): AC_PROG_RC doesn't exist --
21955         but we do AC_DEFUN something called LT_AC_PROG_RC.
21956         Call that instead.
21957
21958 2002-12-30  Robert Boehne  <rboehne@gnu.org>
21959
21960         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Copy the section
21961         for Darwin from AC_LIBTOOL_PROG_LD_SHLIBS so that the CXX
21962         tag doesn't use the g++ defaults for the OS X compiler.
21963
21964 2002-12-30  Albert Chin-A-Young <china@thewrittenword.com>
21965
21966         * libtool.m4: Sync methods used to detect GNU ld.
21967
21968 2002-12-20  Robert Boehne  <rboehne@gnu.org>
21969
21970         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
21971         AC_LIBTOOL_PROG_CC_C_O): Do not escape } or ? in sed argument.
21972
21973 2002-12-19  Robert Boehne  <rboehne@gnu.org>
21974
21975         * ltmain.in: Use the sed program found by LT_AC_PROG_SED
21976         so that relink commands don't get truncated.
21977
21978 2002-12-18  Robert Boehne  <rboehne@gnu.org>
21979
21980         * libtool.m4: Move AC_REQUIRE([LT_AC_PROG_SED]) to AC_PROG_LD
21981         so it is invoked earlier.
21982
21983 2002-12-11  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
21984
21985         * libtool.m4: Add support for Intel icc compiler for Linux.
21986
21987 2002-12-11  Robert Boehne  <rboehne@gnu.org>
21988
21989         * ltmain.in: Revert the version +1 change for IRIX, it could
21990         cause compatibility problems.
21991
21992 2002-11-22  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
21993
21994         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
21995         AC_LIBTOOL_PROG_CC_C_O): Changed method for compilation with
21996         custom flags to be language-independent.  Thereby removed
21997         CFLAGS/GCJFLAGS mixup bug.  Imitate Autoconf-style logging.
21998         Log entries no longer discarded by compilation failures.
21999         (_LT_AC_LANG_C_CONFIG, _LT_AC_LANG_CXX_CONFIG,
22000         _LT_AC_LANG_GCJ_CONFIG): Tuned settings of
22001         lt_simple_compile_test_code and lt_simple_link_test_code
22002         to avoid warnings that could break some option detections.
22003         (AC_LIBTOOL_PROG_COMPILER_NO_RTTI): Removed
22004         redundant "-c conftest.$ac_ext" in the argument to
22005         AC_LIBTOOL_COMPILER_OPTION.
22006         (AC_LIBTOOL_PROG_LD_SHLIBS): Replaced C-specific conftest
22007         source code with $lt_simple_compile_test_code, to support
22008         the "-lc" test with other languages.
22009
22010 2002-11-19  Paul Eggert  <eggert@twinsun.com>
22011
22012         Don't assume that egrep and fgrep exist.  POSIX 1003.1-2001 no
22013         longer requires them; you're supposed to use grep -E and grep -F
22014         instead.  Also, don't assume that "test -a" works, since POSIX
22015         doesn't require it.
22016
22017         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_LANG_C_CONFIG,
22018         _LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,
22019         AC_LIBTOOL_PROG_LD_SHLIBS):
22020         egrep -> grep, when that makes no difference.
22021         * libtoolize.in: Likewise.
22022         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Likewise.
22023         * ltmain.in: Likewise.
22024         * demo/Makefile.am (hc-direct): Likewise.
22025         * pdemo/Makefile.am (hc-direct): Likewise.
22026         * tests/build-relink.test, tests/build-relink2.test,
22027         tests/cdemo-conf.test, tests/cdemo-shared.test,
22028         tests/cdemo-static.test, tests/demo-conf.test,
22029         tests/demo-nofast.test, tests/demo-shared.test,
22030         tests/demo-static.test, tests/depdemo-conf.test,
22031         tests/depdemo-nofast.test, tests/depdemo-shared.test,
22032         tests/depdemo-static.test, tests/hardcode.test,
22033         tests/mdemo-conf.test, tests/mdemo-shared.test,
22034         tests/mdemo-static.test, tests/pdemo-conf.test,
22035         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
22036         tests/tagdemo-static.test: Likewise.
22037
22038         * libtool.m4 (AC_PROG_EGREP):
22039         New macro, defined if Autoconf doesn't define.
22040         (AC_PATH_TOOL_PREFIX, AC_PROG_LD_GNU): Use it.
22041         (AC_PROG_LD, AC_PROG_NM, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE):
22042         Use shell pattern matching rather than egrep.
22043         (AC_LIBTOOL_CONFIG): Set lt_EGREP and EGREP.
22044
22045         * demo/Makefile.am (SET_HARDCODE_FLAGS): Use sed instead of egrep.
22046         * pdemo/Makefile.am (SET_HARDCODE_FLAGS): Likewise.
22047
22048         * tests/defs (EGREP, FGREP): New vars.
22049
22050         * ltmain.in: egrep -> $EGREP
22051         * tests/assign.test, tests/demo-exec.test, tests/demo-inst.test,
22052         tests/pdemo-exec.test, tests/pdemo-inst.test, tests/sh.test:
22053         Likewise.
22054
22055         * tests/hardcode.test: fgrep -> $FGREP
22056
22057         * tests/f77demo-exec.test: test -a -> test &&
22058
22059 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
22060
22061         * ltmain.in: When using gcc, pass -mfoo to the linker
22062         via $compiler_flags in order to pass architecture information to
22063         the linker (e.g. 32 vs 64-bit). This may also be accomplished via
22064         -Wl,-mfoo but this is not reliable with gcc because gcc may use
22065         -mfoo to select a different linker, different libraries, etc, while
22066         -Wl,-mfoo simply passes -mfoo to the linker. If there is a better
22067         solution, please let me know what it is.
22068
22069 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
22070
22071         * tests/Makefile.am: Conditional assignment of FFLAGS = @FFLAGS@
22072         does not appear to be necessary given that Automake makes this
22073         assignment by default.  The condition is removed since Automake
22074         1.7.1 complains about it.
22075
22076 2002-11-18  Jakub Jelinek  <jakub@redhat.com>
22077
22078         * libtool.m4: Support linking of 64-bit libraries on
22079         sparc{,v[789]}-*linux*, s390*-*linux*, ppc*-*linux*
22080         GNU/Linux systems when the platform default is to build
22081         32-bit libraries.
22082
22083 2002-11-18  Andreas Jaeger  <aj@suse.de>, Bo Thorsen  <bo@suse.de>
22084
22085         * libtool.m4: Support linking of 32-bit libraries with ld
22086         on the x86-64, ppc64, s390x and sparc64 GNU/Linux systems.
22087
22088 2002-11-18  Akim Demaille  <akim@epita.fr>
22089
22090         * ltmain.in: Do not change the PATH in the wrappers: let them
22091         launch the real binary using its path.
22092
22093 2002-11-18  Kevin Ryde  <user42@zip.com.au>
22094
22095         * doc/libtool.texi (Library tips): Note array dimensions.
22096
22097 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
22098
22099         * tests/*.test: MinGW's MSYS treats files under /dev
22100         specially. This causes 'test -r /dev/null/config/site' to
22101         improperly report success, causing configure to fail. Change the
22102         CONFIG_SITE definition from "/dev/null/config/site" to
22103         "/nonexistent" to avoid this problem.
22104
22105 2002-11-18  Charles Wilson  <cwilson@ece.gatech.edu>
22106
22107         * libtool.m4 (_LT_AC_LOCK): remove support for ancient
22108         versions of mingw and cygwin.
22109         (AC_LIBTOOL_POSTDEP_PREDEP): new function.
22110         moved the "find hidden library dependencies" code here
22111         from AC_LIBTOOL_LANG_CXX_CONFIG.  Attempted to make it
22112         multi-tag compatible, but currently only CXX calls it.
22113         (AC_LIBTOOL_LANG_CXX_CONFIG): set
22114         enable_shared_with_satic_runtimes to 'no' by default
22115         Set it to 'yes' for cygwin, mingw, pw32. Replace
22116         "find hidden library dependencies" code with a call
22117         to the new function AC_LIBTOOL_POSTDEP_PREDEP.
22118         Consolidate cygwin and mingw/pw32 stanzas.
22119         (AC_LIBTOOL_LANG_F77_CONFIG): set
22120         enable_shared_with_static_runtimes to 'no' by default
22121         (AC_LIBTOOL_CONFIG): add
22122         enable_shared_with_static_runtimes to the list of variables
22123         to write into ltmain.sh; include it in the libtool script
22124         template as allow_libtool_libs_with_static_runtimes.
22125         (AC_LIBTOOL_PROG_LD_SHLIBS): set
22126         enable_shared_with_static_runtimes to 'no' by default
22127         Set it to 'yes' for cygwin, mingw, pw32.
22128         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): only put cr in regexp
22129         if the build_os is mingw, not host_os
22130
22131         * ltmain.in (case deplibs_check_method): for all appropriate
22132         cases, if allow_libtool_libs_with_static_runtimes, then remove
22133         predeps and postdeps from the list of dependencies that must
22134         be checked for "dynamicness".  For the "none" case, the
22135         presence of compiler-generated postdeps and predeps should
22136         not trigger "inter-library dependencies not supported" error.
22137         (initial setup after arg processing): on cygwin/mingw, allow
22138         compiler-generated dependent libs to be duplicated without
22139         elimination.
22140         (initial search loop for deplibs): if the deplib in question
22141         is a libtool lib, then if
22142         allow_libtool_libs_with_static_runtimes then parse the .la file.
22143         If the .la file only has an "old_library", add the deplib
22144         directly to the deplibs list (-lstdc++) and DON'T use the .la
22145         file; this allows the (case deplibs_check_method) change above
22146         to take effect.
22147         * ltmain.in (for pass in $passes loop): remove predeps,
22148         postdeps, and compiler_lib_search_path from dependency_libs.
22149
22150 2002-11-08  Robert Boehne  <rboehne@gnu.org>
22151
22152         * doc/libtool.texi: Add --mode=* to every example using libtool.
22153
22154 2002-11-03  Ossama Othman  <ossama@doc.ece.uci.edu>
22155
22156         * ltmain.in: add support for installing into temporary
22157         staging area (e.g. 'make install DESTDIR=...')
22158
22159 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
22160
22161         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): restore setting
22162         allow_undefined_flag=unsupported for cygwin and mingw.
22163         (AC_LIBTOOL_PROG_LD_SHLIBS): ditto, for both "normal" gcc/ld
22164         and for the (unmaintained?) MSVC case.
22165
22166 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
22167
22168         * doc/libtool.texi (Install mode): document new
22169         -inst-prefix option.
22170
22171 2002-11-02  Robert Boehne  <rboehne@gnu.org>
22172
22173         * ltmain.in: Print a warning if the mode is not specified.
22174         * doc/libtool.texi: Document the change that the mode must be
22175         specified.
22176
22177 2002-10-30  Charles Wilson  <cwilson@ece.gatech.edu>
22178
22179         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): use printf, not
22180         echo. (AC_DEPLIBS_CHECK_METHOD): use new shell function
22181         win32_libid on w32 platforms
22182         * ltmain.in: add new section for shell functions. Add
22183         win32_libid() shell function.
22184         * f77demo/Makefile.am: add -no-undefined flag
22185
22186 2002-10-30  Rob Browning  <rlb@defaultvalue.org>
22187
22188         * ltdl.c (realloc): Remove custom realloc. (#define
22189         rpl_realloc realloc) and comment out later code for custom
22190         realloc. You can't define your own malloc unless you know
22191         enough about the malloc in use to be able to tell how big
22192         the src ptr is. The disabled code incorrectly used the
22193         *destination* ptr to decide how much to copy. This
22194         sometimes results in out-of-bound accesses which cause
22195         segfaults. This is a quick hack for now; we may want
22196         something cleaner later.
22197         (tryall_dlopen_module): check to be sure (dirname_len > 0) before
22198         testing first character against '/'.
22199         (try_dlopen): check for feof(file) in read loop -- otherwise
22200         infinite loop?
22201
22202 2002-10-25  Robert Boehne  <rboehne@gnu.org>
22203
22204         * ltmain.in (-XCClinker): New flag passes a linking option
22205         directly to the compiler driver without appending ${wl}.
22206
22207 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
22208
22209         * README-alpha: Add some release note templates for inspiration
22210         and consistency at release time.
22211
22212         * Makefile.am (cvs-diff): Compress the generated diff file, ready
22213         for upload to ftp.gnu.org.
22214
22215 2002-10-25  Howard Chu  <hyc@highlandsun.com>
22216
22217         * ltmain.in [aix]: Be sure to deal with xlc_r, cc_r and other
22218         compiler variants.
22219
22220 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
22221
22222         * libtool.m4 (_LT_AC_FILE_IMPGEN_C): Removed.  No longer used.
22223         (_LT_AC_FILE_LTDLL_C): Ditto.
22224         (AC_LIBTOOL_CONFIG) [cygwin, mingw, pw32, os2]: Don't call
22225         _LT_AC_FILE_LTDLL_C or _LT_AC_FILE_IMPGEN_C.
22226
22227 2002-10-25  Albert Chin-A-Young  <china@thewrittenword.com>
22228
22229         * libtool.m4: When LDFLAGS="-Wl,-brtl,[other options]", the
22230         -brtl special-case code for AIX never gets triggered because
22231         were are being too specific about how we search for -brtl.
22232         Use case statement to avoid this. Remove extraneous
22233         semicolon.
22234         * ltmain.in: Recognize the IBM xlc compiler.
22235
22236 2002-10-24  Andrew Suffield  <asuffield@debian.org>
22237
22238         * libltdl/ltdl.c (lt_dlopenext): Corrected sense of "file not
22239         found" check.
22240
22241 2002-10-24  Ossama Othman  <ossama@doc.ece.uci.edu>
22242
22243         * ltmain.in: Support compiler names matching g++*
22244
22245 2002-10-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
22246
22247         * libtool.m4: Removed old Windows cruft.
22248         * libtool.m4: Adapted pw32 to be like Cygwin/MinGW.
22249
22250 2002-10-23  Robert Boehne  <rboehne@gnu.org>
22251
22252         ltmain.in: Do not add 1 to the version under IRIX, it is
22253         not necessary.
22254
22255 2002-10-15  Charles Wilson  <cwilson@ece.gatech.edu>
22256
22257         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): avoid long delay on
22258          cygwin/Win9x when computing commandline length.
22259         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): fix postinstall_cmds when
22260         sources are in a subdirectory
22261         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): use $PATH_SEPARATOR, not
22262         $ac_path_separator
22263         * configure.ac: move depdemo-specific stuff.  You must configure
22264         libtool before you can try './libtool --features'.
22265         * mdemo-inst.test: set $PATH to include the directory in which
22266         the modules are installed (on cygwin, DLL search path is the
22267         $PATH)
22268
22269 2002-10-15  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
22270
22271         * ltmain.in: MinGW works identically to Cygwin.
22272         * libtool.m4: lt_cv_sys_max_cmd_len hard-coded to 8192
22273         *  Model MinGW configuration after Cygwin configuration.
22274         Some portions share implementation.
22275
22276 2002-10-15  Elizabeth Barham <soggytrousers@yahoo.com>
22277
22278         * libtool.m4: Pattern MinGW library naming after that
22279         used by Cygwin except use 'lib' prefix rather than 'cyg'.
22280         * Transfer some configuration from Cygwin with adjustments
22281         for MinGW.
22282
22283 2002-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
22284
22285         * libtool.m4: When a module is built for AIX, the 'lib'
22286         prefix isn't needed, neither is the version. AIX dlopen
22287         will honor the RPATH in a library.
22288
22289 2002-10-11  Christoph Egger  <Christoph_Egger@gmx.de>
22290
22291         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS, darwin): Add
22292         -install_name to the link line only when -dynamiclib is
22293         specified for a module.  Use -bind_at_load when linking C++
22294         shared libraries.
22295
22296 2002-10-04  Elizabeth Barham  <soggytrousers@yahoo.com>
22297
22298         * libtool.m4 (AC_LIBTOOL_SETUP): GCC now checks -shared to
22299         create a dll for Windows targets.
22300
22301 2002-09-24  Robert Boehne  <rboehne@gnu.org>
22302
22303         * ltmain.in: Fixed a few spelling errors.
22304
22305 2002-09-17  Robert Boehne  <rboehne@gnu.org>
22306
22307         * libltdl/ltdl.c: Commented out access() call that checks for a
22308         library file's existence and permissions, as it appears to fail
22309         in every case.
22310
22311 2002-09-09  Albert Chin-A-Young  <china@thewrittenword.com>
22312
22313         * libtool.m4: Custom $symcode for Tru64 UNIX to catch 'Q',
22314         read-only constants.
22315
22316 2002-09-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.de>
22317
22318         * libtool.m4 (osf[345]): Append $major to soname_spec.
22319         Reflect this in library_names_spec.
22320         * ltmain.in (osf): Prefix $major with '.' for use as extension.
22321
22322 2002-08-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
22323
22324         * ltdl.m4 & libltdl/ltdl.c: Port fully to native Win32 API.
22325
22326 2002-07-31  Robert Boehne  <rboehne@gnu.org>
22327
22328         * f77demo/.cvsignore: New file, forgotten in the last commit.
22329
22330 2002-07-31  Eric Lindahl  <erik@theophys.kth.se>
22331
22332         * libtool.m4 (AC_PROG_LIBTOOL): Added support for the new F77
22333         Fortran support tag.
22334         (AC_LIBTOOL_PROG_CC_C_O, _LT_AC_TAGCONFIG): Support F77 tag.
22335         (AC_LIBTOOL_F77, _LT_AC_LANG_F77, AC_LIBTOOL_LANG_F77_CONFIG):
22336         New macros for F77 tag Fortran support.
22337         * configure.ac: Add support for creating the new F77 tag.
22338         * bootstrap: Add f77demo directory to the list to be processed.
22339         * Makefile.am: Add support for FFLAGS and FLIBS.
22340         * tests/Makefile.am: Add new Fortran tests.
22341         * tests/f77demo-*.test: New files.
22342         * f77demo/configure.ac, f77demo/cprogram.c, f77demo/fooc.c
22343         * f77demo/foof.f, f77demo/foo.h, f77demo/fprogram.f
22344         * f77demo/Makefile.am, f77demo/README: New files.
22345
22346 2002-07-16  Gary V. Vaughan  <gary@gnu.org>
22347
22348         * libltdl/ltdl.c (tryall_dlopen): We need to catch missing file
22349         errors early so that file_not_found() can detect what happened.
22350
22351 2002-06-26  Bob Friesenhahn  <bfreisen@simple.dallas.tx.us>
22352
22353         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Remove
22354         extraneous '=' character which appears in gcc 3.1
22355         -print-search-dirs output.
22356         Handle both upper and lower case drive letters when testing for
22357         Windows vs POSIX style path output from -print-search-dirs
22358         output.
22359
22360 2002-06-24  Robert Boehne  <rboehne@gnu.org>
22361
22362         * ltmain.in (Piecewise linking): Add a clause to skip creating
22363         the export file until the reloadable object file(s) have been
22364         created, then use them as input for $export_symbols_cmds.
22365
22366 2002-06-23  Albert Chin-A-Young  <china@thewrittenword.com>
22367
22368         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Need to quote [ and ] for
22369         Autoconf.
22370
22371         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): HP/UX needs
22372         libltdl_cv_sys_dlopen_deplibs set to yes.
22373
22374 2002-06-23  Kevin Ryde  <user42@zip.com.au>
22375
22376         * libtool.m4 (AC_LIBTOOL_SETUP, _LT_AC_LOCK): Use
22377         AC_PROVIDE_IFELSE to test AC_LIBTOOL_WIN32_DLL and
22378         AC_LIBTOOL_DLOPEN, necessary for autoconf 2.53.
22379
22380 2002-06-23  Gary V. Vaughan  <gary@gnu.org>
22381
22382         * libltdl/ltdl.c (argz_insert): Actually, BEFORE can be NULL
22383         when *PARGZ_LEN is non-NULL, so the assertion to the contrary was
22384         bogus.
22385         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
22386         and Albert Chin-A-Young <china@thewrittenword.com>
22387
22388 2002-06-21  Gary V. Vaughan  <gary@gnu.org>
22389
22390         * libltdl/ltdl.c (foreach_dirinpath): Ensure that filename is '\0'
22391         terminated by all code paths.
22392         Reported by Lutz Müller <lutz@users.sourceforge.net>
22393
22394 2002-06-20  Gary V. Vaughan  <gary@gnu.org>
22395
22396         From Kevin Ryde  <user42@zip.com.au>:
22397         * doc/libtool.texi (Platform quirks): s/dependan/dependen/
22398         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Ditto.
22399         * TODO: Ditto.
22400
22401 2002-06-13  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
22402
22403         * ltmain.in (irix, nonstopux): Set major before use.
22404
22405 2002-06-11  Daniel Kobras  <kobras@linux.de>
22406
22407         * libltdl/ltdl.c (try_dlopen): Don't return bogus handle to user
22408           if tryall_dlopen() fails.
22409
22410 2002-06-01  Gary V. Vaughan  <gary@gnu.org>
22411
22412         * tests/pdemo-exec.test: Typo.  s/hell-static/hell_static/
22413
22414 2002-05-31  Charles Wilson  <cwilson@ece.gatech.edu>
22415
22416         * NEWS: Updated.
22417         * libtool.m4: use $NM to create the symbol list on cygwin, not
22418         $ltdll_cmds as on mingw.  For all tags, (and host=cygwin) set
22419         allow_undefined_flag="" so that the --auto-import magic
22420         works properly.  For all tags (and host=cygiwn) set
22421         always_export_symbols=no -- it is unnecessary thanks to
22422         binutils' auto-export magic.
22423         * libltdl/ltdl.c: Don't force cygwin to use the LoadLibrary
22424         wrapper; use cygwin's builtin implementatino of dl*.
22425         * cdemo/Makefile.am: the downside of unsetting
22426         'allow_undefined_flag' -- we must include -no-undefined
22427         in the _la_LDFLAGS variable.
22428         * depdemo/l1/Makefile.am: ditto.
22429         * depdemo/l2/Makefile.am: ditto.
22430         * depdemo/l3/Makefile.am: ditto.
22431         * depdemo/l4/Makefile.am: ditto.
22432         * mdemo/Makefile.am: ditto.
22433         * tagdemo/Makefile.am: ditto.
22434         * demo/Makefile.am: ditto.  But also, we must make special
22435         provision to clean up the hell0 wrapper script.
22436         * pdemo/Makefile.am: ditto -no-undefined.  ditto hell0.
22437         And use 'hell_static' instead of 'hell.static'.
22438         * tests/pdemo-inst.test: use 'hell_static' instead
22439         of 'hell.static'.
22440         * tests/pdemo-exec.test: ditto.
22441
22442 2002-05-30  Charles Wilson  <cwilson@ece.gatech.edu>
22443
22444         * tests/build-relink2.test: look for installed libl3.la
22445         in $prefix/lib/ as well as $prefix/lib/extra/.
22446
22447 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
22448
22449         * tests/hardcode.test: Use libtool --config to collect the
22450         variable values for the test, otherwise the tag values interfere
22451         with a straight grep.
22452
22453 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
22454
22455         Finally fix the annoying bug which always adds all tags to the
22456         libtool script built by your project configure.  Now we set the
22457         default tags depending on whether AC_PROG_CXX et. al. are actually
22458         called from configure.ac.
22459
22460         * libtool.m4 (_LT_AC_TAGCONFIG): Don't default the tagnames when
22461         no --with-tags argument is given.
22462         (_LT_AC_SHELL_INIT): Factored out from the AC_DIVERT_PUSH code
22463         in...
22464         (_LT_AC_PROG_ECHO_BACKSLASH): ...which now calls the macro
22465         instead.
22466         (AC_LIBTOOL_CXX): Use _LT_AC_SHELL_INIT to add CXX to the
22467         initialisation sequence for tagnames.
22468         (AC_LIBTOOL_GCJ): Similarly for GCJ tag.
22469         (AC_LIBTOOL_RC): Likewise for RC tag.
22470
22471 2002-05-21  Jon Meredith  <jonm@alchemetrics.co.uk>
22472
22473         * ltmain.in: Fix a problem on SCO OpenServer5 that caused a
22474         failure in three depdemo-make tests. For some reason the linker
22475         tries to find the dependent libraries using the library search
22476         path before it has read the libraries specified with absolute
22477         paths in the full commandline. This patch add -L's for each of
22478         the dependent library directories so that they can be resolved.
22479
22480 2002-05-09  Nick Hudson  <skrll@netbsd.org>
22481
22482         * libtool.m4: Update support for NetBSD
22483         * ltdl.m4: Make sure that libltdl_cv_func_dlopen and
22484         libltdl_cv_lib_dl_dlopen are set and used instead of the
22485         ac_cv_ versions. Also, use lt_cv_sys_global_symbol_pipe
22486         instread of global_symbol_pipe. This fixes the detection of
22487         dlopen on BSD derived plaforms and more importantly fixes
22488         need_uscore detection.
22489
22490 2002-05-06  Paul Eggert  <eggert@twinsun.com>
22491
22492         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): head -1 -> sed 1q to
22493         port to POSIX 1003.1-2001 hosts, like textutils 2.0.21 with
22494         _POSIX2_VERSION=200112.
22495
22496 2002-05-06  Paul Eggert  <eggert@twinsun.com>
22497
22498         * ltmain.in: Don't assume that "sort +2" works, as POSIX
22499         1003.1-2001 says that "sort +2" is supposed to sort the file
22500         named "+2".  An example host that behaves like this is
22501         textutils 2.0.21 with _POSIX2_VERSION=200112.
22502
22503 2002-05-06  Loren James Rittle  <rittle@latour.rsch.comm.mot.com>
22504
22505         * ltmain.in: Detect and handle object name conflicts while
22506         piecewise linking a static library.
22507
22508 2002-05-02  Dave Vasilevsky  <thevas@mac.com>
22509
22510         * ltmain.in: Remove convenience libraries from deplibs for Darwin.
22511
22512 2002-05-02  Fritz Elfert  <felfert@to.com>
22513
22514         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Modify archive_expsym_cmds
22515         to catch properly handle dll alias symbols.
22516
22517 2002-04-24  Kevin Ryde  <user42@zip.com.au>
22518
22519         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use $build_os not $host_os.
22520
22521 2002-04-14  Robert Boehne  <rboehne@gnu.org>
22522
22523         * doc/libtool.texi (C++ libraries): Finally updated to reflect
22524         Libtool's support for C++.
22525
22526 2002-04-14  Jean-Frederic Clere  <jfrederic.clere@fujitsu-siemens.com>
22527
22528         * libtool.m4: Update support for Fujistu-Siemens Computers (FSC).
22529         * ltmain.in: Add support for EBCDIC based systems.
22530
22531 2002-04-07  Robert Boehne  <rboehne@gnu.org>
22532
22533         * libtool.m4 (LT_AC_PROG_SED): Refactor, removing temporary directory
22534         and consistent use of the shell variable namespace "lt_ac_".
22535
22536 2002-04-02  Robert Boehne  <rboehne@gnu.org>
22537
22538         * ltmain.in: Finish the tag matching logic started yesterday and
22539         refactor it a bit.
22540
22541 2002-04-01  Robert Boehne  <rboehne@gnu.org>
22542
22543         * ltmain.in: Handle the case when no tag is explicitly set, and
22544         $base_compile has a space in front of $CC, and revert the setting
22545         of tagname checked in on 2002-3-14.
22546
22547 2002-04-01  Robert Boehne  <rboehne@gnu.org>
22548
22549         * tagdemo/foo.cpp: Use C++ IO to catch problems linking to C++
22550         runtime libraries.
22551         * tagdemo/main.cpp: Ditto.
22552
22553 2002-03-16  Gary V. Vaughan  <gary@gnu.org>
22554
22555         * TODO: Removed obsolete comments about RMS' package system.
22556
22557 2002-03-14  Robert Boehne  <rboehne@gnu.org>
22558
22559         ltmain.in: Touch-up to make testsuite pass, and default tagname
22560         to CC when it isn't explicitly set.
22561
22562 2002-03-14  Anthony Green  <green@redhat.com>
22563
22564         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Albert Chin's gcj fix.
22565         (AC_LIBTOOL_PROG_COMPILER_PIC): Per Bothner's change for not
22566         using -DPIC with gcj.
22567
22568 2002-03-11  Bruce Korb  <bkorb@gnu.org>
22569
22570         * ltmain.in(compile): bring a touch of order to the option processing
22571
22572 2002-02-09  Gary V. Vaughan  <gary@gnu.org>
22573
22574         * NEWS: Updated.
22575         * THANKS: Added Rob Collins and Chuck Wilson for their cygwin
22576         work.
22577
22578         From Robert Collins  <robert.collins@itdomain.com.au>:
22579         * configure.ac (AC_EXEEXT): Needed for DOSish systems.
22580         * libtool.m4 (shlibpath_overrides_runpath) [cygwin]: Set to yes
22581         when compiling with gcc.
22582         (lt_prog_compiler_pic) [cygwin]: No longer needs the -DDLL_EXPORT
22583         hack, so we just say the pic is the default.
22584         (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin]: Extract symbols from a
22585         library normally.
22586         [cygwin]: Declare C++ compiler characterisics for g++, taking into
22587         account the new auto-import support in cygwin ld.
22588         * ltmain.in (specialdeplibs) [cygwin]: Be careful about
22589         eliminating duplicate -lgcc's from the link line.
22590         [cygwin]: Be smarter about .exe suffixes.
22591         * demo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Support
22592         DOSish systems properly.
22593         * depdemo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Ditto.
22594         * demo/Makefile.am (deplibs-check): Allow for .exe suffix.  Use
22595         hell_static instead of hell.static for multi-`.' inhibited OSes.
22596         * tests/demo-exec.test: Ditto.
22597         * tests/demo-inst.test: Ditto.
22598         * demo/foo.h [cygwin]: Sanitize cygwin dll support.
22599         * demo/foo.c (_LIBFOO_COMPILATION_): No longer required.
22600         * demo/hello.c (_LIBFOO_COMPILATION_): Ditto.
22601         * depdemo/Makefile.am (bin_PROGRAMS): Use depdemo_static instead
22602         of depdemo.static for multi-`.' inhibited OSes.
22603         * tests/depdemo-exec.test: Ditto.
22604         * tests/depdemo-inst.test: Ditto.
22605         * mdemo/Makefile.am (bin_PROGRAMS):  Ditto for mdemo.static.
22606         * tests/dryrun.test: Ditto.
22607         * tests/mdemo-exec.test: Ditto.
22608         * tests/mdemo-inst.test: Ditto.
22609         * tests/build-relink.test:  Be careful about possible .exe
22610         suffixes.
22611         * tests/noinst-link.test: Allow for .exe suffix.
22612
22613 2002-02-07  Alexandre Oliva  <aoliva@redhat.com>
22614
22615         Reverted incorrect patch:
22616         2001-10-24  H.J. Lu  <hjl@gnu.org>
22617         * ltmain.sh: Allow link against an archive when building a
22618         shared library.
22619         * libtool.m4 (lt_cv_deplibs_check_method): Always use
22620         file_magic for Linux ELF.
22621
22622 2002-01-30  Robert Boehne  <rboehne@ricardo-us.com>
22623
22624         * libtool.m4 (LT_AC_PROG_SED): Removed a mysterious newline.
22625
22626 2002-01-28  Robert Boehne  <rboehne@ricardo-us.com>
22627
22628         * libtool.m4 (LT_AC_PROG_SED): New macro tests sed for truncation of
22629         output.  AC_REQUIRE the new macro.
22630         * ltmain.in: Use $SED rather than plan old sed, as set by the new
22631         macro LT_AC_PROG_SED.
22632
22633 2002-01-10  Volker Christian  <voc@soft.uni-linz.ac.at>
22634
22635         * libltdl/ltdl.c (find_handle_callback): treat the result of a call
22636         to access(2) correctly when deciding whether a library can be found
22637         in a directory from user_search_path.
22638
22639 2002-01-07  Robert Boehne  <rboehne@ricardo-us.com>
22640
22641         * NEWS: Fixed wrong path for texinfo.tex.
22642         * configure.ac: Bumped version to 1.4e.
22643
22644         GNU libtool 1.4d was released.
22645
22646         * configure.ac: Bumped version to 1.4d.
22647         * NEWS: updated.
22648         * config.guess, config.sub, texinfo.tex:  Synchronised from
22649         ftp.gnu.org.
22650
22651 2001-12-06  Jens Petersen  <petersen@redhat.com>
22652
22653         * ltmain.in: Replace all test "-a"s by "&& test"
22654         for portability.
22655
22656 2001-11-28  Robert Boehne  <rboehne@ricardo-us.com>
22657
22658         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Change the
22659         factor of saftey as 3/4 of the result was not low enough.
22660
22661 2001-11-28  Gary V. Vaughan  <gary@gnu.org>
22662
22663         * libtoolize.in: The test for whether AC_PROG_LIBTOOL is defined
22664         in aclocal.m4 had bitrotted slightly.
22665         Reported by Takahiko Kawasaki <Takahiko_Kawasaki@cii.csk.co.jp>
22666
22667 2001-11-27  Donald D. Anderson  <dda@sleepycat.com>
22668
22669         * ltmain.in: Treat freebsd like openbsd, in that -lc/-lc_r should
22670         not be explicitly used.  ld handles this depending on the presence
22671         of the -pthread option.
22672
22673 2001-11-27  Robert Boehne  <rboehne@ricardo-us.com>
22674
22675         With help from Michael Matz <matz@kde.org>:
22676         * ltmain.in:  Add a new command line argument
22677         --preserve-dup-deps for preserving duplicate
22678         dependent libraries.
22679         * libtool.texi: Document it.
22680
22681 2001-11-27  Kevin Ryde  <user42@zip.com.au>
22682
22683         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Send "test"
22684         warnings to /dev/null, helps FreeBSD and maybe others.
22685
22686 2001-11-15  Albert Chin-A-Young  <china@thewrittenword.com>
22687
22688         * libtool.m4: quote LTCC because autoconf AC_PROG_CC_STDC
22689         macro might add to $CC if options needed by compiler to
22690         grok ANSI.
22691
22692 2001-11-15  Gary V. Vaughan  <gary@gnu.org>
22693
22694         From Joseph S. Myers  <jsm28@cam.ac.uk>:
22695         * ltmain.in: Typo.
22696
22697 2001-11-15   Mo DeJong  <supermo@bayarea.net>
22698
22699         * ltmain.in: Place parens around a generated relink_command
22700         so it is run is a subshell. This avoids an install error
22701         where libtool ended up in the wrong directory after
22702         relinking a .la file.
22703
22704 2001-10-31  Raja R Harinath  <harinath@cs.umn.edu>
22705
22706         * configure.ac (pkgdatadir): Move the invocation of AC_INIT_AUTOMAKE
22707         before the use of $PACKAGE in $pkgdatadir.
22708         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
22709
22710 2001-10-28  Gary V. Vaughan  <gary@gnu.org>
22711
22712         From Tom Bates  <Tom.Bates@compaq.com>:
22713         * libtool.m4 [mips-compaq-nonstopux]: New port.
22714         * ltmain.in [mips-compaq-nonstopux]: Support
22715         $version_type == nonstopux.
22716
22717 2001-10-28  Albert Chin-A-Young  <china@thewrittenword.com>
22718
22719         * libltdl/ltdl.c (foreach_dirinpath): change some types to size_t
22720         from int because strlen() returns size_t. argz_len changed to
22721         size_t because argzize_path() takes 3rd argument as size_t, not
22722         int.
22723         Based on lint run from Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
22724
22725 2001-10-27  Gary V. Vaughan  <gary@gnu.org>
22726
22727         * libtool.m4 (_LT_AC_TAGCONFIG): Cray sed does not allow character
22728         sets to contain the separator character.
22729         Reported by Kevin Ryde <user42@zip.com.au>
22730
22731         * ltdl.m4 (AC_WITH_LTDL): New macro to add `--with-included-ltdl'
22732         option to configure, but to find an appropriate ltdl library and
22733         append the right options to link it.
22734
22735 2001-10-24  Kevin Ryde  <user42@zip.com.au>
22736
22737         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Remove a stray ' quote.
22738
22739 2001-10-24  H.J. Lu  <hjl@gnu.org>
22740
22741         * ltmain.sh: Allow link against an archive when building a
22742         shared library.
22743         * libtool.m4 (lt_cv_deplibs_check_method): Always use
22744         file_magic for Linux ELF.
22745
22746 2001-10-12  Guido Draheim  <guidod-2001q3@gmx.de>
22747
22748         * ltdl.m4: Changed "underscode to underscore".
22749
22750 2001-10-06  Gary V. Vaughan  <gary@gnu.org>
22751
22752         * configure.ac: General modernisation and cleanup.
22753         * cdemo/configure.ac: Ditto.
22754         * demo/configure.ac: Ditto.
22755         * depdemo/configrue.ac: Ditto.
22756         * ltdl/configure.ac: Ditto.
22757         * ltdldemo/configure.ac: Ditto.
22758         * mdemo/configure.ac: Ditto.
22759         * pdemo/configure.ac: Ditto.
22760         * tagdemo/configure.ac: Ditto.
22761
22762 2001-10-04  Albert Chin-A-Young <china@thewrittenword.com>
22763
22764         * libltdl/ltdl.c: Match function return type with prototype
22765         (add static initializer to file_not_found).
22766
22767 2001-09-30  Gary V. Vaughan  <gary@gnu.org>
22768
22769         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): s/INCLTDL/LTDLINCL/ for
22770         consistency with gettext's INTLINCL.  Keep the old symbol too for
22771         backwards compatibility.
22772         (AC_LIBLTDL_INSTALLABLE): Ditto.
22773         * doc/libtool.texi (Distributing libltdl):  Adjust documentation.
22774
22775 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
22776
22777         * ltdl.m4 (AC_LTDL_DLLIB): Even though HP-UX 10.20 and 11.00
22778         support shl_load *and* dlopen, dlopen works correctly only
22779         with a patch. Because we want to avoid the situation where we
22780         build on a system with the patch but deploy on a system without,
22781         use shl_load exclusively if found.
22782
22783 2001-09-22  Gary V. Vaughan  <gary@gnu.org>
22784
22785         * libtool.m4 (_LT_AC_FILE_LTDLL_C): Be carefule that the start
22786         marker searched for by sed must start in column 0.
22787         (_LT_AC_FILE_IMPGEN_C): Ditto.
22788         Reported by Tor Lillqvist <tml@iki.fi>
22789
22790 2001-09-22  Tor Lillqvist  <tml@iki.fi>
22791
22792         * libtool.m4 [mingw* cygwin*]: Small improvement for mingw-hosted
22793         tool support (while still running libtool on cygwin). In that case
22794         PATH_SEPARATOR is ':', but gcc -print-search-dirs still prints its
22795         search path with ';' as separator.
22796         (AC_LIBTOOL_RC, AC_LIBTOOL_LANG_RC_CONFIG): Add support for .rc
22797         files (Windows resource files), compiled by the resource compiler
22798         (windres in mingw) to .o files.
22799         (AC_PROG_NM): Minor bug fix for $PATH elements with spaces in
22800         them.
22801         * configure.ac: Use LT_AC_PROG_RC.
22802         * ltmain.in: Check for .rc files.
22803         * NEWS: Updated.
22804
22805         * ltmain.in: Add a space to $base_compile in the case statement,
22806         as the case labels checks for trailing spaces, but there aren't
22807         necessarily in $base_compile.
22808
22809 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
22810
22811         * libtool.m4: When setting archive_cmds for CC, don't
22812         test for $GXX but for $GCC on HP-UX. Indentation fixes.
22813
22814 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
22815
22816         From Tor Lillqvist <tml@iki.fi>:
22817         * ltmain.in [cygwin* mingw*]: Take care of the difference between
22818         wrapper script name and executable name.
22819
22820         * libtool.m4 (archive_cmds) [darwin1.[0-2]]: Darwin uses zsh-3.1.6
22821         for /bin/sh, and that shell does not handle escaped quotes
22822         properly yet.
22823         Reported by Christopher Pfisterer <cp@chrisp.de>
22824
22825 2001-09-21  Albert Chin-A-Young  <china@thewrittenword.com>
22826
22827         * libltdl/ltdl.c: Match function return type with prototype
22828         (add static initializer to some functions) to prevent warnings
22829         from HP-UX cc.
22830
22831 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
22832
22833         * libltdl/ltdl.c: Added support for dmalloc, and uncovered some
22834         memory bugs as a result.
22835
22836 2001-09-21  Albert Chin  <china@thewrittenword.com>
22837
22838         * libtool.m4: Don't include main() when testing for command to
22839         parse $NM output because some C++ compilers don't allow you to
22840         take the address of main (e.g. HP-UX aCC).
22841
22842         * libtool.m4: Some uses of $GXX were unquoted, but GXX is either
22843         NULL or yes.  Use "$GXX".
22844
22845 2001-09-13  Assar Westerlund  <assar@sics.se>
22846
22847         * ltdl.m4 (AC_LTDL_DLLIB): call dlopen with arguments so the test
22848         does not fail due to a prototype in dlfcn.h
22849
22850 2001-09-13  Gary V. Vaughan  <gary@gnu.org>
22851
22852         * ltdl.m4 (AC_CHECK_HEADERS): Check for assert.h.
22853         * libltdl/ltdl.c:  If not, disable assertions manually.
22854
22855 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
22856
22857         * bootstrap: Be robust to having no files that need removing.
22858
22859         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump libltdl version to
22860         1.2.
22861         * libltdl/Makefile.am (libltdl_la_LDFLAGS):  Bump libtool library
22862         version info to 4:0:1.
22863
22864 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
22865
22866         * libtool.m4: No need to undefine([symbols]), proper quotation is
22867         enough.
22868
22869 2001-09-10  Gary V. Vaughan  <gary@gnu.org>
22870
22871         * libtool.m4: CVS Autoconf guarantees a decent default IFS, so
22872         there is no need for us to preset it anymore.
22873         Be careful not to set IFS="${IFS}$PATH_SEPARATOR" for PATH
22874         splitting, otherwise spaces in directory names will be lost.
22875         Use $PATH_SEPARATOR... don't rely on $ac_path_separator, which was
22876         an autoconf internal until just now, when it disappeared!
22877         * ltmain.in: Default IFS once, at the start.
22878         Reported by Akim Demaille <akim@epita.fr>
22879
22880 2001-09-10   Brad  <brad@comstyle.com>
22881
22882         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Missed an instance of
22883         Autoconf square bracket quoting style normalisation.
22884
22885         * ltmain.in (-lc_r): Style improvement.
22886
22887         * doc/libtool.texi: Remove obsolete references to ltconfig.
22888         * tests/quote.test: s/ltconfig/\$0/
22889
22890 2001-09-09  Gary V. Vaughan  <gary@gnu.org>
22891
22892         * libtool.m4: Use Autoconf square bracket quoting style
22893         consistently throughout.
22894
22895 2001-09-08  Gary V. Vaughan  <gary@gnu.org>
22896
22897         * bootstrap: Cleanup `autom4te' and `libtool' so that we don't
22898         get caught by something from a previous build.
22899
22900         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Revert
22901         my 2001-09-06 patch.
22902         (no_undefined_flag)i [solaris*]: Revert Alexandre's 2001-04-11 patch.
22903
22904 2001-09-07  Gary V. Vaughan  <gary@gnu.org>
22905
22906         * libltdl/ltdl.c (foreach_dirinpath): argz_len should be a size_t.
22907         Reported by Albert Chin <china@thewrittenword.com>
22908
22909 2001-09-06  Gary V. Vaughan  <gary@gnu.org>
22910
22911         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [solaris*]: Typo. s/GXX/GCC/.
22912
22913         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Changing
22914         no_undefined_flag from `-z text' to `-z defs' (see entry below at
22915         2001-04-11  Alexandre Oliva  <aoliva@redhat.com>) has a problem.
22916         when linking a shared library with gcc calling /usr/ccs/bin/ld (eg.
22917         the gcc supplied with Solaris 8 companion CD), using the flag
22918         -no-undefined, shared library linking will always fail because of
22919         the unresolved symbols from libgcc.a.  Consequently we have to
22920         provide a path to libgcc.a when linking shared libraries in
22921         conjunction with -no-undefined!
22922
22923         From Michael Pruett <mpruett@engr.sgi.com>:
22924         * libltdl/ltdl.c (find_module): `0' valued arguments to
22925         tryall_dlopen_module() must be explicitly cast to avoid compiler
22926         warnings on some environments.
22927
22928         From Daniel Johnson <danielj7@mac.com>:
22929         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Move from GNU
22930         ld section to non-GNU ld section.
22931
22932 2001-09-05  Robert Boehne  <rboehne@ricardo-us.com>
22933
22934         * pdemo/Makefile.am (helldl):  Automake 1.4 can't find the target
22935         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
22936         Using both targets to the left of the colon seems to work though!
22937
22938 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
22939
22940         * demo/Makefile.am (helldl):  Automake 1.4 can't find the target
22941         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
22942         Using both targets to the left of the colon seems to work though!
22943
22944 2001-09-03  Brad  <brad@comstyle.com>
22945
22946         * ltdl.m4 [AC_LTDL_SYS_DLOPEN_DEPLIBS]: Teach ltdl about the
22947         behavior of OpenBSD's dlopen().
22948
22949 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
22950
22951         From Marius Vollmer <mvo@zagadka.ping.de>:
22952         * libltdl/ltdl.c (tryall_dlopen_module): Don't forget to propogate
22953         errors over recurse levels.
22954
22955 2001-09-03  Brad  <brad@comstyle.com>
22956
22957         * libtool.m4 [openbsd*]: More improvements to the OpenBSD port.
22958
22959 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
22960
22961         From Albert Chin <china@thewrittenword.com>:
22962         * libtool.m4 (_LT_AC_LANG_C_CONFIG) [aix4*]: Be careful with
22963         shared namespaces for static and shared libs.
22964         (AC_LIBTOOL_DLOPEN_SELF): If all else fails, try dld_link from GNU
22965         DLD.
22966
22967 2001-09-02  Christopher Pfisterer <cp@chrisp.de>
22968
22969         * libtool.m4, ltmain.in: Linker flag and version numbering fixes
22970         for darwin.
22971
22972 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
22973
22974         Based on a patch from Marius Vollmer <mvo@zagadka.ping.de>:
22975         * NEWS: updated.
22976         * ltdl.m4 (AC_LIB_LTDL): Check for unistd.h.
22977         * ltdl.c: Include unistd.h if it exists.
22978         (LTDL_SEARCHPATH_VAR): Macro to prevent hardcoding
22979         "LTDL_LIBRARY_PATH".
22980         (LTDL_ARCHIVE_EXT): Macro to prevent hardcoding ".la".
22981         (archive_ext): Have only one copy of ".la" in the readonly
22982         segment of the compiled library.
22983         (find_handle_callback): Don't bother trying to dlopen the file if
22984         it doesn't exist.
22985         (find_handle): Don't bother searching for files if no search_path
22986         was supplied.
22987         (file_not_found): A new function to determine whether the last
22988         error was due to a file not found condition.
22989         (try_dlopen): Renamed from lt_dlopen() and changed to have the
22990         same footprint as tryall_dlopen.  This involved a minor rewrite of
22991         much of the internals of this function.
22992         (lt_dlopen): A new function wrapped arounf try_dlopen().
22993         (lt_dlopenext): If a file already has a suitable extension, don't
22994         bother adding additional extensions and trying to open those.
22995         Tidy up the rest of the code to prevent continued searching with
22996         an eventual FILE_NOT_FOUND when a genuine failure earlier in the
22997         search process could be legitimately reported.
22998
22999         * demo/Makefile.am (helldl$(EXEEXT)): Automake-1.5 made me change
23000         this from just `helldl'.
23001
23002 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
23003
23004         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) Fixed a problem
23005         with export_symbols_cmds not being set for CXX tags, and
23006         not being properly set for any tag under AIX/Power.
23007
23008 2001-08-19  Ossama Othman  <ossama@uci.edu>
23009
23010         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Corrected and improved
23011           error message that is displayed when there was a problem
23012           compiling the C++ test program.  It still mentioned the now
23013           non-existent `ltcf-cxx.sh' file.
23014
23015         * doc/libtool.texi (LTDL_SET_PRELOADED_SYMBOLS): Removed
23016           parentheses at end of starting "defmac" line, as pointed out by
23017           makeinfo.
23018
23019 2001-08-18  Brad  <brad@comstyle.com>
23020
23021         * ltmain.in: Do not remove -lm from deplibs for OpenBSD.
23022
23023 2001-08-16  Gary V. Vaughan  <gary@gnu.org>
23024
23025         * libltdl/ltdl.c (argz_create_sep): Don't forget to include the
23026         terminating '\0' when counting argz_len.
23027         (argz_create_sep): When canonicalizing argz, don't forget to copy
23028         the terminating '\0', incase canonicalization has shortened argz.
23029         (argz_stringify): Don't covert the final '\0' to a separator.
23030
23031 2001-08-15  Gary V. Vaughan  <gary@gnu.org>
23032
23033         * libltdl/ltdl.c (lt_dlhandle_next): Now we can loop through all
23034         loaded module handles as originally intended.
23035
23036         * libltdl/ltdl.c (lt_dlseterror): Oops.  This never worked
23037         either, due to a pair of typos.  Now fixed.
23038
23039         * libltdl/ltdl.c (N_ELEMENTS):  Deleted.  How come nobody noticed
23040         there was no way this could have ever worked?
23041         (lt_dlcaller_set_data): Now that valid caller_ids must be
23042         non-zero, allocate an addition entry in the caller_data vector and
23043         use a zero valued key as the end marker.
23044         (lt_dlcaller_get_data): Iterate up to the end marker in one pass.
23045
23046 2001-08-14  Gary V. Vaughan  <gary@gnu.org>
23047
23048         * libltdl/ltdl.c (lt_dlcaller_register): Caller ids are allocated
23049         starting from value `1', so that clients can use a value of zero
23050         to indicate that libltdl has not yet initialised.
23051
23052         * ltmain.in (exec_cmd): Fix quoting in execute mode so that the
23053         double quotes added by libtool (to prevent lossage with embedded
23054         spaces in filenames etc.) are not interpreted as literals by the
23055         shell.
23056
23057 2001-08-13  Gary V. Vaughan  <gary@gnu.org>
23058
23059         * libltdl/ltdl.c (find_file_callback): Fix a multiple free()
23060         bug.
23061         (tryall_dlopen_module): Remove some unused variables.
23062
23063         * libltdl/ltdl.c (lt_dlinsertsearchdir): Calculate the address
23064         of the end of user_search_path correctly.
23065
23066         * libltdl/ltdl.c (rpl_argz_stringify): New fallback implementation.
23067         * ltdl.m4 (AC_LTDL_FUNC_ARGZ):  Test for argz_stringify in libc.
23068         * libltdl/ltdl.c (lt_argz_insertinorder): Renamed from
23069         lt_argz_insert to make room for...
23070         (lt_argz_insert): Wraps argz_insert with libltdl error handling.
23071         (lt_dlpath_insertdir): Insert new path elements into an
23072         argzized path.
23073         (lt_dlinsertsearchdir): New function to insert new search
23074         directories anywhere into user_search_path using the above.
23075         (lt_dladdsearchdir): Rewritten to use lt_dlpath_insertdir.
23076         * libltdl/ltdl.h (lt_dlinsertsearchdir): Prototype for export.
23077         * doc/libtool.texi (Libltdl interface): Document it.
23078         * NEWS: Updated,
23079
23080 2001-08-07  Gary V. Vaughan  <gary@gnu.org>
23081
23082         From Albert Chin <china@thewrittenword.com>:
23083         * ltmain.in [irix*]: $with_gcc is either "yes" or "" (empty string)
23084         with current autoconf, so we need to be robust to that when testing
23085         it,
23086
23087 2001-08-06  Gary V. Vaughan  <gary@gnu.org>
23088
23089         From Brad <brad@comstyle.com>:
23090         * libtool.m4 (deplibs_check_method) [aix*]: Removed redundant setting
23091         of this variable.
23092
23093 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
23094
23095         * libltdl/ltdl.c (load_deplibs): Insert missing 1st argument to
23096         LT_EMALLOC.
23097
23098 2001-08-05  Tim Van Holder  <tim.van.holder@pandora.be>
23099
23100         * ltdl.m4: Canonicalize descriptive text used with
23101         AC_DEFINE.
23102
23103         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR): Remove.
23104         (_LT_AC_PROG_ECHO_BACKSLASH): Use $ac_path_separator
23105         instead of $PATH_SEPARATOR.
23106         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Ditto.
23107         (_LT_AC_TAGCONFIG): Ditto.
23108         (AC_ENABLE_SHARED): Ditto.
23109         (AC_ENABLE_STATIC): Ditto.
23110         (AC_ENABLE_FAST_INSTALL): Ditto.
23111         (AC_PATH_TOOL_PREFIX): Ditto.
23112         (AC_PATH_MAGIC): Ditto.
23113         (AC_PROG_LD): Ditto.
23114         (AC_PROG_NM): Ditto.
23115         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): Ditto.
23116
23117 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
23118
23119         From Brad <brad@comstyle.com>:
23120         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]:  OpenBSD
23121         can build modules without a `lib' prefix and version number.
23122         Move the deplibs check code from here...
23123         (AC_DEPLIBS_CHECK_METHOD): ...to here.
23124
23125 2001-08-05  Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
23126
23127         * libtool.m4 [osf3*, osf4*, osf5*]: Tru64 *can* build modules
23128         without a `lib' prefix to the module name.
23129
23130 2001-08-05  Gary V. Vuaghan  <gary@gnu.org>
23131
23132         From Guido Draheim <Guido.Draheim@tek.com>:
23133         * ltmain.in: Display better and different error messages when
23134         library linkage fails in various ways.
23135
23136 2001-08-05  Albert Chin-A-Young <china@thewrittenword.com>
23137
23138         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Add newline after
23139         terminating '}' grouping character. Change '[0-9][0-9]'
23140         to '0' as we've already matched it.
23141
23142 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
23143
23144         From Brad <brad@comstyle.com>:
23145         * libtool.m4 (archive_cmds) [darwin, newsos, sysv4]: Replace
23146         1.3 era $linkopts references with $linker_flags.
23147
23148         * libltdl/ltdl.c:  Fixed several careless mistakes in the
23149         foreach_dirinpath support functions.
23150         (foreach_dirinpath): Walk path elements with the argz API.
23151
23152 2001-08-04  Gary V. Vaughan  <gary@gnu.org>
23153
23154         From Sedi Master Albert Chin <china@thewrittenword.com>:
23155         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Replace the awk invocation
23156         with an equivalent bit of sed wizardry.
23157
23158         From Edouard G. Parmelan <egp@free.fr>
23159         * libtool.m4 [darwin, openbsd]: Fix quoting problems with
23160         unquoted [] expressions.
23161
23162 2001-08-03  Gary V. Vaughan  <gary@gnu.org>
23163
23164         * bootstrap:  s/ltdldemo // -- This demo soesn't work properly,
23165         so I haven't committed it yet.
23166
23167 2001-08-01  Ossama Othman  <ossama@doc.ece.uci.edu>
23168
23169         * libtool.m4 (AC_LIBTOOL_SETUP): Require Autoconf-2.50 via the
23170         AC_PREREQ autoconf macro since the new libtool macros utilize
23171         macros from that version of Autoconf.
23172
23173 2001-08-01  Gary V. Vaughan  <gary@gnu.org>
23174
23175         * ltdl.m4: Bump serial number.
23176         General reformat and tify up in line with Autoconf-2.50 support.
23177         (AC_LTDL_FUNC_ARGZ): Test for system implementations of a
23178         handful of argz API calls, the error_t type, and the argz.h
23179         header.
23180         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump version number.
23181         * libltdl/ltdl.c (rpl_argz_append, rpl_argz_create_sep.
23182         rpl_argz_insert, rpl_rgz_next):  Fallback implementations of
23183         the similarly named functions for machines that don;t use glibc.
23184         (lt_dlrealloc):  New memory function pointer that can be set by
23185         the client.  Defaults to rpl_realloc, which in turn uses only
23186         lt_dlmalloc and lt_dlfree.
23187         (LT_EMALLOC, LT_EREALLOC): Set internal out-of-memory error
23188         inside the functions called by these new macros.  Simplified all
23189         callers by removing explicit client error reporting.
23190         (memmove):  Fallback implementation of overlap safe memory copy
23191         function.
23192         (tryall_dlopen):  Factorized common code into...
23193         (tryall_dlopen_module): ...this new helper function.
23194         (canonicalize_path):  Changed function signature to return success
23195         or failure.  Updated all callers.
23196         (foreachfile_callback):  Make use of argz API.
23197         (LT_DLSTRLEN): Moved from here...
23198         * libltdl/ltdl.h (LT_STRLEN): ...to here.  Updated all callers.
23199         (lt_dlrealloc):  Declare new memory management handle.
23200
23201 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
23202
23203         * libtool.m4 (mingw*) Revert the previous change as it was
23204         applied by mistake.
23205
23206 2001-07-31  Guido Draheim  <Guido.Draheim@tek.com>
23207
23208         * libtool.m4 (mingw*) sys_lib_search_path_spec:
23209         Sets the proper path separator for cross-compiling.
23210
23211 2001-07-30  Steve Ellcey  <sje@cup.hp.com>
23212
23213         * libtool.m4 (ia64-*-hpux*) Add support for ia64*-*-hpux* platform.
23214
23215 2001-07-30  Robert Boehne  <rboehne@ricardo-us.com>
23216
23217         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Fixed an
23218         incorrect resetting of lt_prog_compiler_static when using gcc
23219         under AIX Power.
23220
23221 2001-07-31  Gary V. Vaughan  <gary@gnu.org>
23222
23223         * bootstrap: Remove generated files (incase they are links) before
23224         rerunning the autotools to regenerate them.
23225
23226 2001-07-30  Gary V. Vaughan  <gary@gnu.org>
23227
23228         * libtool.m4 (AC_LIBTOOL_SETUP): Use Autoconf-2.50 era
23229         quadrigraphs and AC_HELP_STRING to bring AC_ARG_WITH/ENABLE
23230         macros up to date.
23231         (_LT_AC_LOCK): Ditto.
23232         (_LT_AC_TAGCONFIG): Ditto.
23233         (AC_PROG_LD): Ditto.
23234         (AC_ENABLE_SHARED): Ditto.  And eliminate the last remaining
23235         changequote invocations.
23236         (AC_ENABLE_STATIC): Ditto.  And Ditto.
23237         (AC_ENABLE_FAST_INSTALL):  Ditto.  And Ditto.
23238         * ltdl.m4 (AC_LTDL_ENABLE_INSTALL): Use Autoconf-2.50 era
23239         quadrigraphs and AC_HELP_STRING to bring AC_ARG_ENABLE
23240         macro up to date.
23241         * NEWS: Updated.
23242
23243         * libtool.m4 [UnixWare7, OpenUNIX8]: Initial support for
23244         UnixWare7 and OpenUNIX8.  Accept these identifiers from the
23245         latest config.guess/config.sub as pseudonyms for sysv5uw[78].
23246         * NEWS: Updated.
23247         Reported by Boyd Lynn Gerber <gerberb@zenez.com>
23248
23249 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
23250
23251         * tests/sh.test: Add a new test to enforce X as the fill
23252         character in `test "X...'.
23253         Beef up the `test' tests to also check `test -.' and `test ! -.'
23254         phrases for compliance.
23255         * ltmain.in: Fix quoting problems uncovered by the new tests.
23256
23257 2001-07-29  Andrew C. Feren  <aferen@CetaceanNetworks.com>
23258
23259         * tests/sh.test:  New test to disallow `test $foo', where
23260         `test "$foo"' is much safer.
23261         * ltmain.in: Fix quoting problems uncovered by the new test.
23262
23263 2001-07-29  Steve Ellcey  <sje@cup.hp.com>
23264
23265         * libtool.m4 (lt_cv_sys_global_symbol_to_cdecl):  Change it from
23266         "extern char" to "extern int" so that GCC 3.0 won't complain and
23267         refuse to compile programs containing "extern char main()".
23268
23269 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
23270
23271         From Guido Draheim <Guido.Draheim@tek.com>:
23272         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Support
23273         cross compilation to mingw by allowing `:' or ';' as a path
23274         separator.
23275         * NEWS: Updated.
23276
23277 2001-07-27  NIIBE Yutaka  <gniibe@m17n.org>
23278
23279         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all
23280         for sh*-*-linux* (SuperH) too.
23281
23282 2001-07-25  Ossama Othman  <ossama@debian.org>
23283
23284         From Thomas Poindessous <poinde_t@epita.fr>
23285         * ltmain.in (pic_mode):  Added missing quotes around shell
23286         variable in "if test" conditional.
23287
23288         From Peter Moulder <pmoulder@longford.csse.monash.edu.au>
23289         * ltmain.in (xform): Add support for pre-processed
23290         (e.g. `*.{i,ii}' sources).
23291
23292 2001-07-25  Gary V. Vaughan  <gary@gnu.org>
23293
23294         From Steve Ellcey <sje@cup.hp.com>:
23295         * libltdl/ltdl.c (foreach_dirinpath): Free unassigned pointer
23296         fix for `canonical'.
23297
23298 2001-07-23  Robert Boehne  <rboehne@ricardo-us.com>
23299
23300         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG, AC_LIBTOOL_PROG_LD_SHLIBS)
23301         [aix4*, aix5*]: Fixed a mispelled binder option under AIX.
23302         The option to throw errors for unresolved external references is
23303         -bernotok, not -bnoerok.
23304
23305 2001-07-23  Gary V. Vaughan  <gary@gnu.org>
23306
23307         * Makefile.am (EXTRA_DIST): Don't forget to distribute
23308         ChangeLog.1.
23309
23310         From Erik Lindahl <E.Lindahl@chem.rug.nl>
23311         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Used on aix to discover
23312         the compiler's default library search path so that the MPI
23313         compiler suite is not hosed by the previously hardcoded path.
23314         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [aix4*, aix5*]: Use it.
23315
23316 2001-07-23  Andreas Schwab  <schwab@suse.de>
23317
23318         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
23319         s390*-*-linux* and m68*-*-linux*.
23320
23321 2001-07-19  Robert Boehne  <rboehne@ricardo-us.com>
23322
23323         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix tag support
23324         problems with CXX variables being overwritten by the individual
23325         macros.
23326         (AC_LIBTOOL_PROG_CC_C_O): Ditto.
23327         (AC_LIBTOOL_PROG_COMPILER_PIC): Ditto.
23328         (AC_LIBTOOL_LANG_CXX_CONFIG): Moved call to
23329         AC_LIBTOOL_SYS_HARD_LINK_LOCKS after the call to
23330         AC_LIBTOOL_PROG_CC_C_O as it depends on the result.
23331         (AC_LIBTOOL_LANG_GCJ_CONFIG): Ditto.
23332         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
23333         (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Used the macro
23334         _LT_AC_TAGVAR to ensure the correct variable is being queried.
23335         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Changed the naming of shared
23336         objects under IRIX back to what it was in the MLB.
23337
23338 2001-07-23  Mark Kettenis  <kettenis@gnu.org>
23339
23340         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN) [gnu*]: Remove spurious
23341         "break" and bogus comment
23342         (_LT_AC_LANG_CXX_CONFIG): Add support for the Hurd.
23343         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Add support for the Hurd.
23344
23345 2001-07-16  Robert Boehne  <rboehne@ricardo-us.com>, Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
23346
23347         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): add cases and comments for
23348         more platforms, including AIX, Digital/Tru64 UNIX and IRIX.
23349
23350 2001-07-16  Gary V. Vaughan  <gary@gnu.org>
23351
23352         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix ia64 AIX
23353         run-time-linking when not using gcc.
23354         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
23355         Reported by Dan McNichol <mcnichol@austin.ibm.com>
23356
23357 2001-07-12  Gary V. Vaughan  <gary@gnu.org>
23358
23359         From dda@sleepycat.com (Don Anderson):
23360         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [qnx]: New
23361         supported architecture.
23362         (AC_DEPLIBS_CHECK_METHOD) [qnx]:  Ditto.
23363         * NEWS: Updated.
23364
23365         From Stefan Ondrejicka <ondrej@idata.sk>:
23366         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [cygwin*]: Make
23367         sure that /lib/w32api is searched for system libraries to
23368         match recent versions of cygwin.
23369         * NEWS: Updated.
23370
23371 2001-07-12  Dan McNichol  <mcnichol@austin.ibm.com>
23372
23373         From albert chin <china@thewrittenword.com>
23374         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix AIX
23375         run-time-linking when using gcc.
23376         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
23377
23378 2001-07-11  Gary V. Vaughan  <gary@gnu.org>
23379
23380         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
23381         solaris]: Doh!  the evalled variable shouldn't have been
23382         quoted.
23383
23384         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
23385         solaris]: output_verbose_link_cmd have unquoted `*' in case
23386         statements for these architectures.  Be sure to quote them
23387         with a sed expression before passing to eval.
23388         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
23389
23390 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
23391
23392         * README-alpha:  s/configure.in/configure.ac.
23393         * configure.ac: Bumped version to 1.4c.
23394
23395         GNU libtool 1.4b was released.
23396
23397         * configure.ac: Bumped version to 1.4b.
23398         * NEWS: updated.
23399         * config.guess, config.sub, texinfo.tex:  Synchronised from
23400         ftp.gnu.org.
23401
23402 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
23403
23404         From Michael Elizabeth Chastain <chastain@cygnus.com>:
23405         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
23406         to a maximum of 512Kb, as it seems some HPUX 11.0 systems
23407         have trouble with 1MB.
23408
23409 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
23410
23411         * README-alpha:  Upgrade distribution instructions to include
23412         canonical location of texinfo.tex.
23413
23414 2001-07-09  Timothy Wall  <twall@oculustech.com>
23415
23416         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Don't disable shlibs
23417         on AIX5/IA64 with GNU ld.  Keep gnu defaults if using gnu tools
23418         on AIX5/IA64.
23419
23420 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
23421
23422         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
23423         to -1 on hurd, it has no command line argument limits.
23424         * ltmain.in Handle max_cmd_len=-1 for systems that don't have
23425         command line argument limits.
23426
23427 2001-07-05  Gary V. Vaughan  <gary@gnu.org>
23428
23429         * libtool.m4 (_LT_AC_LANG_C_CONFIG):  Revert to 1.3.x
23430         sematics, and always build static libs when the host machine
23431         cannot build shared libs.  Even if static libs were explicitly
23432         disabled.
23433
23434 2001-07-02  Gary V. Vaughan  <gary@gnu.org>
23435
23436         Cleanup of libltdl:
23437         * ltdl.c (lt_dladderror): Don't use `index' as a variable name,
23438         since it is a function on BSD based boxes.
23439         (lt_dlseterror): Ditto.
23440         (lt_dlexit): Remove unused errormsg declaration.
23441         (foreach_dirinpath):  Make sure filename is initialised.
23442         (find_handle):  Return NULL for a failed search.
23443         (foreachfile_callback): Don't reuse data2 symbol from prototype
23444         in func declaration to prevent symbol shadowing.
23445         * ltdl.h (lt_dlmutex_seterror): Don't use `error' as a parameter
23446         name, since it is a function on glibc boxes.
23447
23448         * libtoolize.in:  Display --version in the same format as
23449         autoconf and automake.
23450         * ltmain.in: Ditto.
23451
23452 2001-06-30  Gary V. Vaughan  <gary@gnu.org>
23453
23454         Merge test improvements from multi-language-branch:
23455         * tests/defs: Find and set the value of CC probed by libtool.m4
23456         * tests/link-2.test: Use a .lo wrapper script, and the value of
23457         CC set by defs instead of hardcoding gcc.
23458         * tests/link.test: Use the value of CC set by defs instead of
23459         hardcoding gcc.
23460         * tests/quote.test: Ditto.
23461         * tests/suffix.test: Ditto.
23462
23463         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Always set
23464         lt_prog_compiler_wl to `-Wl'.
23465         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
23466
23467         * ltdl.m4 (AC_LTDL_DLLIB) [sco3.2*]: When searching for a dlopen
23468         implementation, and adding `-ldl' has failed, try linking a call
23469         to dlopen, #including dlfcn.h, and without -ldl.  On sco3.2 the
23470         header files redefines the interface symbols to point at the
23471         implementation symbols in libc.
23472         Reported by "Golubev I. N." <gin@mo.msk.ru>
23473
23474 2001-06-29  Tim Van Holder  <tim.van.holder@pandora.be>
23475
23476         General cleanup of autoconf-2.50 upgrade:
23477         * configure.ac: Mark as needing autoconf-mode in
23478         emacs.  Pass arguments to AC_INIT.
23479         * cdemo/configure.ac: Ditto.
23480         * demo/configure.ac: Ditto.
23481         * depdemo/configure.ac: Ditto.
23482         * libltdl/configure.ac: Ditto.
23483         * mdemo/configure.ac: Ditto.
23484         * pdemo/configure.ac: Ditto.
23485         * tagdemo/configure.ac: Ditto.
23486         * ltdl.m4: Mark as needing autoconf-mode in
23487         emacs.
23488         * libtool.m4: Mark as needing autoconf-mode in
23489         emacs.  Don't add () to AS_MESSAGE_LOG_FD.
23490         * libltdl/configure.ac: Use config-h.in as
23491         template for config.h.
23492         * tagdemo/configure.ac: Drop the AC_DIAGNOSTIC. Move
23493         AC_LANG([C++]) after the OBJEXT/EXEEXT check.
23494
23495 2001-06-29  Gary V. Vaughan  <gary@gnu.org>
23496
23497         From Tim Van Holder <tim.van.holder@pandora.be>
23498         * tests/suffix.test: Typo in 2nd for loop.
23499
23500         From Tim Van Holder <tim.van.holder@pandora.be>
23501         * libltdl/Makefile.am (OBJECTS):  This was an implicit variable.
23502         instead state the list of object variables explicitly.
23503
23504         From Bruno Haible <haible@ilog.fr>
23505         * libtool.m4:  undefine the m4 builtin `symbols', so that the
23506         string `symbols' can be used in the rest of the code without
23507         causing errors with autoconf-2.13.
23508
23509         From "Golubev I. N." <gin@mo.msk.ru>
23510         * tests/Makefile.am (CPPLAGS): Typo. s/CPPLAGS/CPPFLAGS.
23511
23512         * mdemo/Makefile,am (foo1_la_LIBADD): Add libsub.la, since foo1
23513         does use symbols from libsub.la -- only platforms that allow
23514         undefined symbols in libraries were able to cope with this
23515         previously.
23516         Reported by Robert Collins <robert.collins@itdomain.com.au>
23517
23518         From "Golubev I. N." <gin@mo.msk.ru>
23519         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [sco3.2v5*]: Needs
23520         -wl,-Bexport to make self dlopen work.
23521
23522 2001-06-28  Gary V. Vaughan  <gary@gnu.org>
23523
23524         From  Alexander Bluhm  <Alexander.Bluhm@WiredMinds.de>
23525         * libltdl/ltdl.c (lt_dlopen): Fix bad memory initialisation
23526         assumptions.
23527
23528         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE) [HPUX]: Define
23529         lt_cv_sys_global_symbol_to_c_name_address to be a sed expression
23530         for mangling the output of the symbol pipe into a brace delimited
23531         C declaration of symbol name and address.
23532         * ltmain.in: Use it to generate the fooS.c symbol name
23533         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
23534
23535 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>, Gary V. Vaughan  <gary@gnu.org>
23536
23537         * bootstrap: Use cp instead of ln -s, for systems without
23538         symlinks.  Reorder the statements to avoid repetition outside
23539         the loop.
23540
23541 2001-06-28  Paolo Bonzini  <bonzini@gnu.org>, Gary V. Vaughan  <gary@gnu.org>
23542
23543         Libtool now builds with the help of Autoconf-2.50!
23544         * configure.ac (AC_PREREQ):  Require Autoconf-2.50 or newer.
23545         (AC_PROG_CPP, AC_EXEEXT, AC_OBJEXT):  Removed.  Autoconf-2.50
23546         doesn't have the AC_REQUIRE bug that required these to be called
23547         explicitly from here.  Autoconf-2.50 uses this file instead of...
23548         * configure.in: ...this, which is now deleted.
23549         * cdemo/configure.ac, cdemo/configure.in: Ditto.
23550         * demo/configure.ac, demo/configure.in: Ditto.
23551         * depdemo/configure.ac, depdemo/configure.in: Ditto.
23552         * libltdl/configure.ac, libltdl/configure.in: Ditto.
23553         * mdemo/configure.ac, mdemo/configure.in: Ditto.
23554         * pdemo/configure.ac, pdemo/configure.in: Ditto.
23555         * tagdemo/configure.ac, tagdemo/configure.in: Ditto.
23556         * libltdl/acconfig.h:  Deleted.
23557         * Makefile.am (libtool): libtool now depends on configure.ac.
23558         * libtool.m4 (_LT_AC_LOCK):  Use 2.50's AC_LANG_PUSH/AC_LANG_POP
23559         instead of 2.13's AC_LANG_SAVE/AC_LANG_RESTORE.
23560         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
23561         (AC_LIBTOOL_LANG_CXX_CONFIG): Ditto.
23562         * libtoolize.in:  Use $configure_ac, instead of hardcoding
23563         configure.in.
23564
23565 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>
23566
23567         * pdemo/Makefile.am:  Use '=' instead of '+=' to shut up
23568         automake.
23569
23570 2001-06-27  Gary V. Vaughan  <gary@gnu.org>
23571
23572         From brad@openbsd.org:
23573         * NEWS: Updated.
23574         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]: Improved
23575         support for various openbsd platforms.
23576         (AC_LIBTOOL_PROG_LD_SHLIBS): Ditto.
23577         * ltmain.in: Ditto,
23578
23579 2001-06-26  Gary V. Vaughan  <gary@gnu.org>
23580
23581         * NEWS: Updated.
23582         * libltdl/ltdl,c (LT_DLMUTEX_LOCK): Renamed from MUTEX_LOCK to
23583         avoid potential namespace clash.
23584         (LT_DLMUTEX_UNLOCK, LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR):
23585         Ditto.
23586         (lt_dlmutex_lock_func): Renamed from mutex_lock to avoid a
23587         namespace clash of NCR MP-RAS.
23588         (lt_dlmutex_unlock_func, lt_dlmutex_seterror_func,
23589         lt_dlmutex_geterror_func): Ditto.
23590         Reported by Edouard G. Parmelan <egp@free.fr>
23591
23592         * libltdl/ltdl.c (LT_DLSTRLEN): Call strlen only if the argument
23593         is non-NULL and non-zero in length.  Changed all calls to strlen
23594         appropriately.
23595
23596         * libltdl/ltdl.c: Prototype all static functions.
23597
23598         * ltdl.m4: Bump serial number to 3.
23599         (AC_LIB_LTDL): Require AC_HEADER_DIRENT for ltdl.c.
23600         * libltdl/ltdl.h (lt_dlforeachfile): Prototype for new function.
23601         * libltdl/ltdl.c: Include an appropriate header for the
23602         opendir/dirent api.
23603         (foreach_dirinpath): Visit each file in a list of directories.
23604         (find_file_callback): Factor out the core of find_file() to make
23605         use of foreach_dirinpath().
23606         (find_file): Use it!
23607         (find_handle_callback, find_handle): Ditto.
23608         (lt_dlforeachfile):  New function to find files in a searchpath.,,
23609         (foreachfile_callback): ...using this callback.
23610         * doc/libtool.texi (Libltdl interface): Document new
23611         lt_dlforeachfile api call.
23612
23613 2001-06-25  Gary V. Vaughan  <gary@gnu.org>
23614
23615         * THANKS:  Added Albert Chin-A-Young.
23616
23617         * libtool.m4 (IFS): When IFS is changed to split a string for
23618         examination in a loop, restore it inside the loop as well as
23619         outside incase IFS is needed by commands in that loop.
23620         Reported by Pavel Roskin <proski@gnu.org>
23621
23622 2001-06-25  Albert Chin-A-Young  <china@thewrittenword.com>
23623
23624         * libtool.m4: Prefer shl_load to dlopen on HP-UX because dlopen
23625         won't work properly without a patch.
23626
23627 2001-06-25  Daniel Harvey <daniel@amristar.com.au>
23628
23629         * libtool.m4 (ltdll_cmds): [$]0 doesn't appear to translate through
23630         the script correctly, change to $''0
23631
23632 2001-06-25  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
23633
23634         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
23635         mips-*-linux* and mipsel-*-linux*.
23636
23637 2001-06-24  Andreas Schwab  <schwab@suse.de>
23638
23639         * libtool.m4 (AC_LIBTOOL_SETUP): Remove failed try to
23640         transform linux to linux-gnu in $host.
23641         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match $host_os against
23642         linux*, not linux-gnu*.
23643         (AC_DEPLIBS_CHECK_METHOD): Likewise.
23644
23645 2001-06-24  Gary V. Vaughan  <gary@gnu.org>
23646
23647         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR):  Set
23648         PATH_SEPARATOR appropriately if it is not set already,
23649         (_LT_AC_TAGCONFIG): Use it.
23650         (AC_ENABLE_SHARED): Ditto.
23651         (AC_ENABLE_STATIC): Ditto.
23652         (AC_ENABLE_FAST_INSTALL): Ditto.
23653         (AC_PATH_TOOL_PREFIX): Ditto.
23654         (AC_PATH_MAGIC): Ditto.
23655         (AC_PATH_PROG_NM): Ditto.
23656
23657         From Tim Van Holder  <tim.van.holder@pandora.be>:
23658         * libtool.m4: Use the canonical absolute path test
23659         ([\\/]* | ?:[\\/]) and $PATH_SEPARATOR wherever
23660         appropriate.
23661         (AC_LIBTOOL_PROG_CC_PIC): Properly recognize DJGPP as a
23662         platform that doesn't support shared libraries.
23663         (AC_LIBTOOL_SYS_MAX_CMD_LEN): Avoid this test on DJGPP; use a
23664         fixed value (12K) instead.
23665         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't forget $ac_exeext
23666         when testing for link success.
23667
23668         * configure.in (AM_INIT_AUTOMAKE): Bumped version to 1.4a.
23669
23670         Complete the new configure time tags creation facility based on
23671         the ltcf-*.sh and ltconfig.in files from multi-language-branch:
23672         * libtool.m4:  More refactoring and reformatting.
23673         (_LT_AC_LANG_GCJ_CONFIG): Merged ltcf-gcj.sh from
23674         multi-language-branch.
23675         (_LT_AC_LANG_CXX_CONFIG): Merged ltcf-cxx.sh from
23676         multi-language-branch.
23677         * configure.in (AC_PROG_CXX, LT_AC_PROG_GCJ): Compiler checks must
23678         be done before AC_PROG_LIBTOOL which appends tags based on their
23679         results.
23680
23681 2001-06-12  Robert Boehne  <rboehne@ricardo-us.com>
23682
23683         * docs/libtool.texi: Updated the libltdl interface documentation
23684         to bring it up to date.
23685
23686 2001-06-06  Gary V. Vaughan  <gary@gnu.org>
23687
23688         * demo/Makefile.am (objdir): Use `libtool --config' for
23689         extracting configuration values, since a given value may
23690         be present in each tag.
23691         (hc-libpath): Ditto.
23692         (hc-minusL): Ditto.
23693         * libtool.m4 (_LT_AC_TAGCONFIG): Add tagged configurations from
23694         the --with-tags option.
23695         (_LT_AC_LTCONFIG_HACK): Factored out into separate configuration
23696         macros -- The interdependencies and running order are still
23697         immutable, and need a lot of work to fix.
23698         (AC_LIBTOOL_CONFIG): Taken from the previous incarnation of
23699         _LT_AC_LTCONFIG_HACK -- this macro is used both to create the
23700         primary (C language) libtool configuration from
23701         _LT_AC_LTCONFIG_HACK and also to append tagged configurations from
23702         _LT_AC_TAGCONFIG.
23703         * NEWS:  Merged from multi-language-branch.
23704
23705 2001-06-06  Robert Boehne  <rboehne@ricardo-us.com>
23706
23707         * bootstrap: Added tagdemo and pdemo tests from
23708         multi-language-branch.
23709         * configure.in: Added pdemo and tagdemo to CONF_SUBDIRS
23710         and merged references to CXX and GCJ from multi-language-branch.
23711         * pdemo: Added test directory from multi-language-branch.
23712         * tagdemo: Added test directory from multi-language-branch.
23713         * tests/Makefile.am: Merged additional tests from
23714         multi-language-branch.
23715         * tests/pdemo-*.test: ditto.
23716         * tests/tagdemo-*.test: ditto.
23717
23718 2001-05-30  Gary V. Vaughan  <gary@gnu.org>
23719
23720         * libtool.m4: Merged ltconfig.in from multi-language-branch.
23721
23722 2001-05-28  Gary V. Vaughan  <gary@gnu.org>
23723
23724         * libtool.m4: Reformatting for consistency, and some refactoring
23725         in preparation for ltcf-*.sh merge.
23726
23727 2001-05-27  Gary V. Vaughan  <gary@gnu.org>
23728
23729         * ltmain.in: Merged from multi-language-branch.
23730         * libtool.m4: Merged from multi-language-branch.
23731         * ChangeLog: Started afresh.  Old ChangeLog history moved to...
23732         * ChangeLog.1: ...here.
23733
23734 2000-06-04  Mark Mitchell  <mark@codesourcery.com>
23735
23736         * ltcf-c.sh (archive_cmds, archive_expsym_cmds) [solaris,
23737         with_gcc]: Use `gcc -shared' to build a shared library.
23738
23739 2001-06-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
23740
23741         * ltcf-c.sh (archive_cmd) [hpux, with_gcc]: Use gcc to link shared
23742         archives.
23743
23744 2001-05-28  Simon Patarin <simon.patarin@inria.fr>
23745
23746         * ltcf-cxx.sh (osf3/osf4/osf5): Support creation of C++  shared
23747         libraries when using g++ with native linker.
23748
23749 2001-05-28  Albert Chin  <china@thewrittenword.com>
23750
23751         * ltconfig.in (version_type, soname_spec) [aix4* | aix5*]: Use
23752         linux-style versioning, and remove trailing .o from soname_spec.
23753
23754 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
23755
23756         * ltcf-cxx.sh (allow_undefined_flag, no_undefined_flag)
23757         [aix4*|aix5*]: Prepend blank.
23758
23759 2001-05-20  Alexandre Oliva  <aoliva@redhat.com>
23760
23761         * configure.in: Reverted to 1.4, to avoid confusion with MLB.
23762         Mainline is the release snapshot, except for the ChangeLog version
23763         number, until the multi-language branch is merged into it.
23764
23765         * ltconfig.in: Fix sh.test regression introduced in previous patch.
23766
23767         * ltconfig.in (lt_cv_sys_max_cmd_len): Improve test to work better
23768         in case of non-built-in echo.  Set bounds correctly.
23769
23770         * ltcf-cxx.sh (allow_undefined_flag) [aix4* | aix5*]: Fix quote
23771         error.
23772
23773         * ltmain.in (exec_cmd): New variable.  Don't exec programs within
23774         the big `case'; set the variable instead, and exec the cmd
23775         afterwards, so that the shell gets a chance to clean up here-doc
23776         files.
23777         * NEWS: Update.
23778
23779 2001-05-16  Alan Modra  <amodra@one.net.au>
23780
23781         * libtool.m4 (lt_cv_deplibs_check_method): pass_all for hppa*-linux.
23782
23783 2001-05-03  Andreas Jaeger  <aj@suse.de>, Andreas Schwab  <schwab@suse.de>
23784
23785         * ltmain.in (relink_command): Arrange for wrapper script to save
23786         output to a variable and display it only if relinking fails.
23787
23788 2001-04-25  Gary V. Vaughan  <gary@gnu.org>
23789
23790         * configure.in: bumped version to 1.4a.
23791
23792         GNU libtool 1.4 was released.
23793
23794         * configure.in: Bumped version to 1.4.
23795         * config.sub, config.guess:  Synchronised from ftp.gnu.org.
23796         * NEWS: updated.
23797
23798 2001-04-24  Peter Eisentraut  <peter_e@gmx.net>
23799
23800         * libtool.m4: Support $host_os as /sysv5uw7*/ from newer
23801         config.guess in addition to older /unixware*/.  Use compiler
23802         driver, not linker, for linking shared libraries.
23803
23804 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
23805
23806         * libtool.m4, ltmain.in, libltdl/configure.in,
23807         tests/quote.test:  Remove stale references to ltconfig.
23808
23809         * ltdl.m4 (AC_C_INLINE): No longer required.
23810         * libltdl/ltdl.c (strdup, strcmp, strchr, strrchr, memcpy, trim,
23811         free_vars):  Revoke inline keyword from declarations.  `static
23812         inline' is not very portable, and in addition Unixware 7.1.1's
23813         compiler says you can't access static variables from inline
23814         functions.
23815         Reported by Peter Eisentraut  <peter_e@gmx.net>
23816
23817 2001-04-24 Albert Chin-A-Young <china@thewrittenword.com>
23818
23819         * libtool.m4: Handle case where /bin/nm -p outputs multiple
23820         symbol types (like under HP-UX 11.00).
23821
23822 2001-04-24  Thomas Tanner  <tanner@ffii.org>
23823
23824         * TODO: describe problems with libltdl
23825         * ltmain.in (ILD): tidy up, add comments, remove dead code,
23826           merge duplicate code
23827         * ltmain.in (ILD): don't touch newdependency_libs after scan or
23828           dlopen pass
23829         * ltmain.in (ILD): don't dlpreopen dependency_libs of a dlopened
23830           module (remove absolutely wrong quick hack)
23831         * ltmain.in (ILD): remove wrong comments about duplicate removal
23832         * ltmain.in (ILD): build a static-only module if it has
23833           static libraries in its dependencies (so that libltdl can
23834           safely load dependency_libs)
23835         * ltmain.in (argument parsing): prefix comparsions of -l args with X,
23836           replace -lc with `-framework System' _after_ the ILD passes
23837         * ltmain.in (argument parsing): support dl[pre]open
23838           for both .o and .lo files
23839         * ltmain.in (deplibs_check): use portable test syntax
23840         * ltmain.in (help): document -prefer-[non-]pic flags
23841         * ltmain.in: improve readablity by adding some comments,
23842           rename uninst_* to notinst_* (more adequate name)
23843
23844 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
23845
23846         * doc/PLATFORMS:  More updates from subscribers to
23847         libtool@gnu.org.
23848
23849         From Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
23850         * tests/Makefile.am (TESTS_ENVIRONMENT): Make sure the *.test
23851         scripts get the same make that was used in the top level
23852         directory.
23853
23854 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
23855
23856         * doc/PLATFORMS:  Updated with more platforms successfully
23857         tested by members of libtool@gnu.org.
23858
23859 2001-04-23  Peter Eisentraut  <peter_e@gmx.net>
23860
23861         * doc/PLATFORMS:  With this patch, freebsd4.3 passes the test
23862         suite.
23863         * libltdl/ltdl.c (lt_dlexit): Quit loop if only resident modules
23864         are left.
23865
23866 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
23867
23868         * doc/PLATFORMS:  With this patch, my Solaris boxes now pass the
23869         test suite,  Yay!
23870         From Albert Chin-A-Young <china@thewrittenword.com>
23871         * ltmain.in:  `test -L' is not portable, and infact breaks uninstall
23872         mode on Solaris.  Fallback to `test -h' and finally `test -f',
23873         but be careful not to let the failure status cause libtool to
23874         stop.
23875
23876         From Simon Spero <ses@ibiblio.org>
23877         * ltdl.m4 (AC_LTDL_DLSYM_USCORE):  Add $LIBADD_DL while
23878         checking for dlsym _.
23879
23880         From Simon Spero <ses@ibiblio.org>
23881         * libtool.m4 (lt_cv_deplibs_check_method) [darwin]: Set it!
23882
23883         * TODO: Make a note to undo this later.
23884         From Christoph Pfisterer <cp@chrisp.de>
23885         * libtool.m4: Use $() execution substitution quotation to work
23886         around zsh builtin echo \ escape removal.
23887
23888 2001-04-22  Peter Eisentraut  <peter_e@gmx.net>
23889
23890         * bootstrap: Allow overriding the location aclocal, automake,
23891         autoconf, autoheader from the environment.
23892
23893         * demo/Makefile.am: Automake 1.4e does not allow `+=' assignments
23894         if the variable was not set with `=' earlier.  `+=' was not useful
23895         here anyway.
23896
23897 2001-04-22  Gary V. Vaughan  <gary@gnu.org>
23898
23899         * ltdl.m4 (AC_CHECK_HEADERS): UW7 has sys/dl.h, so we must
23900         check for that here.
23901         * libltdl/ltdl.c (HAVE_SYS_DL_H):  Include it if necessary for
23902         the dlopen loader.
23903         Reported by Matthew Schalit <mschalit@pacbell.net>
23904
23905         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use pass_all for
23906         various releases of UnixWare and OpenServer that support it.
23907         Reported by Matthew Schalit <mschalit@pacbell.net>
23908
23909         * doc/PLATFORMS:  Updated with various platforms successfully
23910         tested by members of libtool@gnu.org.
23911
23912 2001-04-21  Gary V. Vaughan  <gary@gnu.org>
23913
23914         * TODO:  propose pkg-config merge.
23915
23916 2001-04-21  Nick Hudson  <skrll@netbsd.org>
23917
23918         * ltmain.in: Correct an error in yesterday's patch.
23919
23920 2001-04-20  Nick Hudson  <skrll@netbsd.org>
23921
23922         * libtool.m4: Improve NetBSD support.
23923         * ltmain.in: ditto.
23924
23925 2001-04-19  Dan McNichol <mcnichol@austin.ibm.com>
23926
23927         * libtool.m4: Build standard shared libraries on AIX POWER
23928         more like AIX does, with a shared object archived into lib<xxx>.a.
23929         On AIX -bexpall flag does strange things... Don't use it.
23930         Fix quotes around -berok flag.  Add support for AIX 5.
23931         Add support for run time linking on AIX POWER. (should work
23932         on AIX 4.2 and up).  Turn this feature on by adding -brtl flag
23933         to LD_FLAGS.  Add support for AIX on IA64. Note: AIX on IA64
23934         uses a SYSV type linker.  Add a comment telling what to do if the
23935         TOC starts getting too large on AIX.
23936         * NEWS: mention aix5 support.
23937
23938 2001-04-18  Alexandre Oliva  <aoliva@redhat.com>
23939
23940         * TODO: Add -L- flag.
23941
23942 2001-04-11  Alexandre Oliva  <aoliva@redhat.com>
23943
23944         * libtool.m4 (no_undefined_flag) [Solaris ld]: Change to -zdefs.
23945
23946 2001-04-11  Ossama Othman  <ossama@uci.edu>
23947
23948         * AUTHORS: Added myself to the list of maintainers.
23949
23950 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
23951
23952         * libtool.m4 (hardcode_libdir_flag_spec, osf4/osf5): Use ${wl}
23953         to pass -rpath when compiling with gcc.
23954         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
23955
23956         * libltdl/ltdl.c (sys_shl_open): Cache a handle for the `self'
23957         module, since HPUX adds module symbols into the `self' pool if
23958         it is opened later.  Return the cached pointer if the caller
23959         subsequently tries to open `self'.
23960         (sys_shl_sym): Diagnose NULL modules.
23961
23962         From Peter Eisentraut  <peter_e@gmx.net>
23963         * ltmain.in (clean,uninstall): test -e is not portable.  Well,
23964         neither is -L, but I'm hoping that redirecting error messages
23965         to /dev/null and relying on non-zero exit status will work okay
23966         on the few hosts that don't support -L.
23967
23968 2001-04-08  Nick Hudson  <skrll@netbsd.org>
23969
23970         * ltmain.in: Improve check for valid -version-info parameter.
23971
23972 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
23973
23974         From Nick Hudson  <skrll@netbsd.org>
23975         * doc/Makefile.am (libtool_TEXINFOS): Add fdl.texi so that it
23976         is included in the distribution.
23977
23978 2001-04-07  Peter Eisentraut  <peter_e@gmx.net>
23979
23980         * ltmain.in (clean,uninstall): Do not error if the file doesn't
23981         exist and 'rm -f' was used.  Exit with status 1 on error.
23982
23983 2001-04-06  Nick Hudson  <skrll@netbsd.org>
23984
23985         * ltmain.in: Implement a new deplibs_check_method called
23986         match_pattern that does pattern matching on filenames...
23987         * libtool.m4: ...use it with NetBSD
23988
23989 2001-04-05  Gary V. Vaughan  <gary@gnu.org>
23990
23991         * doc/libtool.texi (Multiple dependencies): A note about the
23992         problems I've reintroduced by reverting the my patch of 2001-03-31.
23993
23994         From Edward Lee <tailbert@yahoo.com>
23995         * libtool.m4: Typos.
23996
23997         * tests/Makefile.am (TESTS): Delete references to depdemo-dups.test.
23998         * tests/depdemo-dups.test:  Removed, as part of the patch
23999         reversion below.
24000         * ltmain.in: Revert my change from 2001-03-31.  Although it
24001         was technically correct, it opens a whole can of worms we don't
24002         want to deal with right now.
24003
24004         From Ahmed Masud <masud@googgun.com>
24005         * libltdl/ltdl.c (sys_shl_open):  Return a NULL module handle
24006         for self opening.
24007         (sys_shl_close):  Be careful not to close a NULL module handle.
24008         (sys_shl_sym):  Allow shl_findsym() to open NULL modules, but
24009         discard the modified module address it returns.
24010
24011         * libltdl/ltdl.c (lt_dlopen):  When reading the .la file,
24012         reallocate the line buffer size if the line overflows the
24013         original buffer.
24014         Reported by Nick Hudson <skrll@netbsd.org>
24015
24016         * NEWS (1.3d) Removed bogus ltconfig reference.
24017
24018 2001-04-03  Gary V. Vaughan  <gary@gnu.org>
24019
24020         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Remove the spurious
24021         `dnl' from the help text of --with-pic.
24022         Reported by stefan <stefan@lkcc.org>
24023
24024 2001-04-02  Gary V. Vaughan  <gary@gnu.org>
24025
24026         * configure.in: bumped version to 1.3e.
24027
24028         GNU libtool 1.3d was released.
24029
24030         * NEWS: inserted todays date.
24031
24032 2001-04-01  Christoph Pfisterer  <cp@chrisp.de>
24033
24034         * libtool.m4: Fixed support for Darwin and Rhapsody. Now correctly
24035         hardcodes the library path and adds versioning. Other small
24036         fixes.
24037         * ltmain.in: Fixed special cases for libc and libm on Rhapsody and
24038         Darwin. One of them was misplaced. Added version_type case for
24039         Rhapsody and Darwin, named "darwin".
24040
24041 2001-03-31  Gary V. Vaughan  <gary@gnu.org>
24042
24043         * ltmain.in: Remove the code for stripping duplicate deplibs
24044         from libtool link lines -- duplicates are somtimes necessary
24045         to satisfy inter-library dependencies, and never cause link to
24046         fail even if they are spurious.
24047         * tests/depdemo-dups.test: New file.  Make sure this bug doesn't
24048         creep back in again!
24049         * tests/Makefile.am (TESTS): Use the new test above.
24050
24051 2001-03-29  Edward M. Lee  <tailbert@yahoo.com>
24052
24053         * libtoolize.in: Check configure.ac and prefer configure.ac to
24054         configure.in.
24055
24056         * libtoolize.in: change recommendation from AM_PROG_LIBTOOL to
24057         AC_PROG_LIBTOOL.
24058
24059         * libtool.m4: Generate dll/import libraries for cygwin according
24060         to the following: libFOO.a (static lib), libFOO.dll.a (import
24061         lib), cygFOO-version.dll (dll).  Update postinstall_cmds and
24062         postuninstall_cmds to reflect this.
24063         * ltmain.in: Generate installed .la files with dlnames set to
24064         ../bin/cygFOO-version.dll for normal dlls. dlls for modules
24065         remain with the .la file.
24066
24067         * libltdl/ltdl.c:  Use windows paths while calling LoadLibrary.
24068
24069 2001-03-16  Albert Chin  <china@thewrittenword.com>
24070
24071         * libtool.m4 (save_CPPFLAGS): Fix typo.
24072
24073 2001-03-13  Alexandre Oliva  <aoliva@redhat.com>
24074
24075         * libtool.m4 (lt_cv_compiler_c_o): Cache it.
24076         (lt_cv_compiler_o_lo): Likewise.
24077
24078 2001-03-09  Peter Eisentraut  <peter_e@gmx.net>
24079
24080         * ltmain.in (clean): Automatically remove $objdir (usually '.libs').
24081
24082 2001-03-08  Gary V. Vaughan  <gary@gnu.org>
24083
24084         * ltconfig.in (library_names_spec): Undo latin-1 spaces I pasted
24085         in yesterday by mistake.
24086
24087 2001-03-07  Gary V. Vaughan  <gary@gnu.org>
24088
24089         From Tor Lillqvist <tml@iki.fi>
24090         * libtool.m4 (export_symbols): On Windows, if the export_symbols
24091         file (which has been passed to libtool with the -export-symbols
24092         command line switch) already is a .def file, use it as is.
24093
24094         * libtool.m4 (library_names_spec): Using m4 quotes correctly this
24095         time around!
24096
24097         From Tor Lillqvist <tml@iki.fi>
24098         * libtool.m4 (library_names_spec): Use an appropriate filename
24099         prefix for dlls -- lib for mingw; cyg for cygwin; pw for pw32.
24100
24101 2001-03-06  Alexandre Oliva  <aoliva@redhat.com>
24102
24103         * libtool.m4 (can_build_shared) [AIX 4.[01], GCC]: GCC up to
24104         2.96 can't build shared libraries reliably.  Disable them.
24105
24106         * ltmain.in: When dropping dependencies of a -no-undefined
24107         library, give up on building a shared library.
24108
24109 2001-03-05  Akim Demaille  <akim@epita.fr>
24110
24111         * ltmain.sh: Don't quote the argument of case/esac and
24112         assignments.
24113         * libtool.m4: Likewise.
24114
24115 2001-03-03  Markus F.X.J. Oberhumer <markus@oberhumer.com>,
24116             Alexandre Oliva <oliva@lsd.ic.unicamp.br>
24117
24118         * libtool.m4: Added explicit return type to all C functions.
24119
24120 2001-02-22  Gary Vaughan  <gary@gnu.org>
24121
24122         * NEWS: Updated.
24123         * doc/libtool.texi (Thread Safety in libltdl): New node describing
24124         the  application the new MT API.
24125         * libltdl/ltdl.h: Prototypes.
24126         * libltdl/ltdl.c: Use these functions throughout the rest of
24127         the file to provide thread locking.
24128         (lt_dlmutex_register): New function to set callbacks for
24129         multi-threaded calls into libltdl.
24130         (lt_dl_mutex_lock): Type of a locking callback function.
24131         (lt_dl_mutex_lock): Type of an unlocking callback function.
24132         (lt_dl_mutex_seterror): Type of a callback function to save the
24133         last libltdl error message in thread local storage.
24134         (lt_dl_mutex_geterror): Type of a callback function to retrieve
24135         the last saved error message from thread local storage.
24136
24137 2001-02-20  Gary Vaughan  <gary@gnu.org>
24138
24139         * libltdl/ltdl.c (lt_dlcaller_register): dont set an unsigned
24140         type to a negative number.
24141         Reported by Guenter Millahn <Guenter.Millahn@Informatik.TU-Cottbus.DE>
24142
24143 2001-02-05  Gary V. Vaughan  <gary@gnu.org>
24144
24145         From Nick Hudson <skrll@netbsd.org>
24146         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): netbsd* is able to
24147         automatically load module deplibs without assistance from
24148         libltdl.
24149
24150 2001-02-02  Gary V. Vaughan  <gary@gnu.org>
24151
24152         * libltdl/ltdl.c (load_deplibs): Make sure the depcount is reset,
24153         even when deplibs are not used because of the patch below.
24154
24155         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): If we know that the host
24156         architecture automatically loads deplibs, then...
24157         * libltdl/ltdl.c (load_deplibs): ...don't manually load each one.
24158
24159 2001-01-31  Gary V. Vaughan  <gary@gnu.org>
24160
24161         * TODO:  Updated.
24162
24163         * libltdl/ltdl.c (load_deplibs): If loading a deplib fails,
24164         don't sweat -- it may be a lib that is already statically linked
24165         into the loading application.
24166
24167         * libltdl/ltdl.c: Clean up the shadowing of the global handles
24168         variable.
24169         (LT_DLRESIDENT_FLAGS): Add extra parens to satisfy -Wall.
24170         (load_deplibs):  Cast isspace() argument to an int to satisfy
24171         -Wall.
24172
24173 2001-01-30  Robert Boehne  <rboehne@ricardo-us.com>
24174
24175         * AUTHORS: added myself to the list of maintainers.
24176
24177 2001-01-28  Alexandre Oliva  <aoliva@redhat.com>
24178
24179         * libltdl/Makefile.am (CLEANFILES): Clean conditionally-built
24180         libraries.
24181
24182 2001-01-27  Alexandre Oliva  <aoliva@redhat.com>
24183
24184         * libtool.m4 (ld_shlibs) [aix4*]: Disable on unknown CPU types.
24185
24186 2001-01-07  Gary V. Vaughan  <gary@gnu.org>
24187
24188         * NEWS: Updated.
24189         * doc/libtool.texi (User defined module data): Updated.
24190         * libltdl/ltdl.c (lt_dlhandle_next): New function.
24191         * libltdl/ltdl.h (lt_dlhandle_next): Prototypes.
24192
24193 2001-01-05  Gary V. Vaughan  <gary@gnu.org>
24194
24195         * NEWS: Updated.
24196         * doc/libtool.texi (User defined module data):  Document it all.
24197         * ltdl.m4:  Check for memcpy, or else bcopy.
24198         * ltdl.c (lt_caller_data): New type.
24199         (lt_dl_handle_struct): Add an lt_caller_data field.
24200         (lt_dlcaller_register, lt_dlcaller_set_data,
24201         lt_dlcaller_get_data): New functions.
24202         (rpl_memcpy): A minimal fallback implementation.
24203         (rpl_realloc): A realloc implemented with lt_dlmalloc and
24204         lt_dlfree.
24205         (LT_DLMALLOC, LT_DLFREE, LT_DLREALLOC, LT_DLMEM_REASSIGN):
24206         New memory handling convenience macros.  Use them
24207         appropriately throughout the rest of this file.
24208         * ltdl.h (lt_dlcaller_register, lt_dlcaller_set_data,
24209         lt_dlcaller_get_data): Prototyped.
24210
24211 2001-01-04  Gary V. Vaughan  <gary@gnu.org>
24212
24213         * libltdl/ltdl.h:  formatting change.
24214
24215 2000-12-23  Gary V. Vaughan  <gary@gnu.org>
24216
24217         From vvv@vsu.ru:
24218         * doc/fdl.texi (GNU Free Documentation License): contained @bye
24219         command which prevented part of document to be generated (indices,
24220         etc).
24221         * doc/libtool.texi (Dlpreopening): the @deftypevar did not contain
24222         a space after a type.
24223
24224 2000-12-22  Akim Demaille  <akim@epita.fr>
24225
24226         * libtool.m4: s/[ \t]*$//
24227
24228 2000-12-22  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
24229
24230         * libtool.m4 (OSF/1):  Revert my patch of 2000-12-16.
24231
24232 2000-12-20  Gary V. Vaughan  <gary@gnu.org>
24233
24234         * libltdl/ltdl.c (lt_dlexit): Was checking for residency of the
24235         wrong module.
24236         Reported by Robert Boehne  <rboehne@ricardo-us.com>
24237
24238         * ltmain.in (dlprefiles): Now that `2000-12-15 Utz-Uwe Haus' patch
24239         below can detect preopened library deplibs correctly in libltdl,
24240         we need to ensure that libtool library deplibs are also preloaded
24241         into the binary for that phase to work.
24242
24243 2000-12-16  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
24244
24245         * libtool.m4 (OSF/1): Change the way to pass linker flags through
24246         compiler on a Tru64 machine.
24247
24248 2000-12-16  Gary V. Vaughan  <gary@gnu.org>
24249
24250         * libtool.m4 (sys_lib_search_path_spec): Use test instead of
24251         `['.
24252         (archive_cmds): And another one.
24253
24254         * libtool.m4 (darwin*): Fixed a pair of stupid typos I made in the
24255         last patch.
24256
24257         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  moved rogue settings from
24258         sequent, ncr and newos6 back into here from other macros.
24259
24260 2000-12-16   Wilfredo Sanchez  <wsanchez@apple.com>
24261
24262         * libtool.m4: (dyld/darwin*) Much improved port.
24263         * ltmain.in: (dyld/darwin*) Much improved port.
24264
24265 2000-12-16  Sascha Schumann <sascha@schumann.cx>
24266
24267         * libtool.m4: Accept darwin as an alias for rhapsody.
24268         * ltmain.in: ditto.
24269
24270         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use the HPUX 10.20
24271         methods to check for library dependencies on HPUX 11.
24272
24273 2000-12-16  Nick Hudson  <skrll@netbsd.org>
24274
24275         * libtool.m4 (netbsd*, deplibs_check_method): Enable ILD support
24276         for NetBSD a.out.
24277
24278 2000-12-15  Akim Demaille  <akim@epita.fr>
24279
24280         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Rename
24281         `ac_cv_sys_global_symbol_pipe' as `lt_cv_sys_global_symbol_pipe'.
24282         Similarly with `lt_cv_global_symbol_to_cdecl
24283         (_LT_AC_LTCONFIG_HACK): Similarly with `ac_cv_prog_cc_pic',
24284         `ac_cv_prog_cc_shlib', `ac_cv_prog_cc_wl', `ac_cv_prog_cc_static',
24285         `ac_cv_prog_cc_no_builtin', `ac_cv_prog_cc_can_build_shared',
24286         `ac_cv_prog_cc_static_works', `ac_cv_archive_cmds_need_lc'.
24287         (AC_PATH_TOOL_PREFIX): Similarly with `ac_cv_path_MAGIC_CMD'
24288         (AC_PROG_LD) <ac_cv_path_LD>: Likewise.
24289         (AC_PROG_LD_GNU) <ac_cv_prog_gnu_ld>: Likewise.
24290         (AC_PROG_NM) <ac_cv_path_NM>: Likewise.
24291
24292 2000-12-15  Utz-Uwe Haus  <haus@mail.math.uni-magdeburg.de>
24293
24294         * libltdl/ltdl.c (lt_dlopen): Changed "dl_dependency_libs" keyword
24295         to "dependency_libs".
24296
24297 2000-12-14  Tod Milam  <tmilam@traclabs.com>
24298
24299         * libltdl/ltdl.c (lt_dlexit): Reset the loaders value to zero when
24300         the last module has been unloaded.
24301
24302 2000-12-14  Michael Schmitz  <mschmitz@iname.com>
24303
24304         * libtool.m4: Port to *-sni-sysv4 (Reliant Unix)
24305         * README: added Reliant Unix to hte list of supported platforms
24306         * doc/PLATFORMS: added note on tests on Reliant Unix
24307
24308 2000-12-14  Masahiro Nobori  <nobori@ss.titech.ac.jp>
24309
24310         * README:  Updated.
24311         * NEWS: Updated.
24312         * libtool.m4:  New port to NEWS-OS Release 6.
24313
24314 2000-12-14  Nick Hudson  <skrll@netbsd.org>
24315
24316         * libtool.m4 (hardcode_libdir_flag_spec):  Remove linker
24317         specification for netbsd.
24318
24319 2000-12-14  Akim Demaille  <akim@epita.fr>
24320
24321         * libtool.m4:  Don't depend on Autoconf internals:
24322         s/ac_cv_prog_gcc/GCC/.
24323
24324 2000-12-14  Gary V. Vaughan  <gary@gnu.org>
24325
24326         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't empty
24327         out ac_cv_global_symbol_to_cdecl inside the loop, incase we
24328         need to go around again and try with underscore prefix.
24329         (_LT_AC_TRY_DLOPEN_SELF): On some hosts (cygwin for instance)
24330         self dlclosing unloads the main program and causes a SIGSEGV.  So
24331         don't do it for now.
24332
24333 2000-12-05  Gary V. Vaughan  <gary@gnu.org>
24334
24335         Oh My! Cygwin support has bitrotted while I was looking the other
24336         way.  This should fix it some:
24337         * libtool.m4 (extract_expsyms_cmds): There is a quoting problem
24338         with autoconf-2.13 that prevents [$]0 from expanding.  Use shell
24339         quotes instead to delay eval of $0.
24340         (impgen.c) The '# ' sequence stripped by sed works again.
24341
24342 2000-12-01  Gary V. Vaughan  <gary@gnu.org>
24343
24344         * doc/libtool.texi (Libltdl interface):  Add documentation.
24345         * libltdl/ltdl.h (lt_dlmakeresident, lt_dlisresident):  Add
24346         prototypes.
24347         (LT_DLERROR_CLOSE_RESIDENT_MODULE): New error status.
24348         * libltdl/ltdl.c (lt_dlmakeresident, lt_dlisresident):  Allow
24349         making and testing of resident module status, which prevents a
24350         module from being lt_dlclosed.
24351         (lt_dlopen):  If lt_dlopen()ing self, make the module resident.
24352         (lt_dlclose):  Return an error if the module is resident.
24353
24354         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Move the tests for dlopen
24355         from here...
24356         (AC_LIBTOOL_DLOPEN_SELF): ...to here.
24357         (_LT_AC_CHECK_DLFCN):  Factor out repeated code for dlfcn.h
24358         (_LT_AC_TRY_DLOPEN_SELF): Factor out repeated code for
24359         checking dlopen status.
24360         * ltdl.m4 (AC_LIB_LTDL):  Use _LT_AC_CHECK_DLFCN.
24361         dlopen compile time checking.  Use _LT_AC_CHECK_DLFCN.
24362         (AC_LTDL_DLSYM_USCORE):  Use _LT_AC_TRY_DLOPEN_SELF.
24363
24364 2000-11-29  Gary V. Vaughan  <gary@gnu.org>
24365
24366         * libltdl/ltdl.h (lt_dlhandle): Rename the wrapped structure
24367         to prevent nameclash when used from C++.
24368         * libltdl/ltdl.c: Fixed all references.
24369
24370 2000-11-25  Gary V. Vaughan  <gary@gnu.org>
24371
24372         * libltdl/ltdl.c (lt_dlopen):  Change the default search order
24373         for modules.  If the named module has no directory component,
24374         always start the search with the user_search_path directories,
24375         and then fall back on the current directory only if that fails.
24376
24377 2000-11-20  Gary V. Vaughan  <gary@gnu.org>
24378
24379         * libltdl/Makefile.am (libltdl_la_LDFLAGS): increment the version
24380         number to reflect the breakage of binary compatibility.
24381         * doc/libtool.texi (Libltdl interface):  Document
24382         LT_NON_POSIX_NAMESPACE.
24383         * libltdl/ltdl.h (LT_POSIX_NAMESPACE):  Deleted.  The default is
24384         now to use this namespace, so the cpp macro is no longer
24385         necessary.
24386
24387 2000-11-20  Morten Eriksen  <mortene@sim.no>
24388
24389         * ltdl.m4 (AC_LIB_LTDL, AC_LTDL_SYMBOL_USCORE): Break a circular
24390         dependency between AC_LTDL_SYMBOL_USCORE and AC_LTDL_DLSYM_USCORE.
24391
24392 2000-11-20  Paul Berrevoets  <paul@swi.com>
24393
24394         * ltmain.in: Some versions of expr respond with "0" if a
24395         regexp fails to match.
24396
24397 2000-11-19  Paul Berrevoets  <paul@swi.com>
24398
24399         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote the $ in $#, $2 and
24400         $3 in variable 'archive_expsym_cmds' for cygwin.
24401
24402 2000-11-19  Gary V. Vaughan  <gary@gnu.org>
24403
24404         * ltdl.c: Relegate non-POSIX-compliant symbols (e.g. those
24405         ending in ``_t'') to deprecated #define compatibility macros.
24406         Also ease up on the namespace pollution, so that only ``lt_''
24407         and ``LT_'' prefixes are taken from the global namespace.
24408         * ltdl.h: ditto.
24409
24410 2000-11-17  Gary V. Vaughan  <gary@gnu.org>
24411
24412         * ltdl.c: Reformatted.
24413         * ltdl.h: ditto.
24414
24415 2000-11-11  Gary V. Vaughan  <gary@gnu.org>
24416
24417         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Use $ac_ext for conftest
24418         sourcefile.
24419         * libtool.m4: Use $ac_ext and $ac_objext respectively for conftest
24420         sources and objects.
24421         Reported by Carlo Wood <carlo@alinoe.com>
24422
24423         * doc/fdl.texi: New file.  The license for distributing the
24424         libtool manual.
24425         * doc/libtool.texi: Reference the new license.
24426
24427 2000-10-31  Morten Eriksen  <mortene@sim.no>
24428
24429         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote argument to avoid
24430         error output from cygpath when $srcdir is empty.
24431
24432 2000-10-31  Gary V. Vaughan  <gary@gnu.org>
24433
24434         * bootstrap:  rm Makefiles to prevent infinite loop during
24435         configure when libtool.m4 is newer than Makefile.
24436
24437 2000-10-31  Akim Demaille  <akim@epita.fr>
24438
24439         * libtool.m4: Adjust the copyright notice.
24440         Quote all the macro names when defined.
24441         Some minor formatting changes.
24442         (AM_PROG_LIBTOOL, AM_ENABLE_SHARED, AM_ENABLE_STATIC)
24443         (AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_PROG_LD, AM_PROG_NM):
24444         Don't use indir when useless.  Don't add trailing `dnl' either.
24445
24446 2000-10-30  Gary V. Vaughan  <gary@gnu.org>
24447
24448         * doc/libtool.texi:  Corrected another attack of CRLF line
24449         endings.
24450
24451 2000-10-30  Ossama Othman  <ossama@debian.org>
24452
24453         * libtool.m4 (archive_expsym_cmds): Fix typo where line was broken
24454         in the middle of an expression.
24455
24456 2000-10-30  Aneesh Kumar K.V <kvaneesh@hotmail.com>
24457
24458         * libtool.m4 (archive_expsym_cmds):  Support for -export-symbol
24459         option on Tru64.
24460         (hardcode_libdir_flag_spec): Fixed cxx throwing error while using
24461         libtool.  Done by passing -rpath directlty to the compiler.
24462
24463 2000-10-27  Robert Boehne  <rboehne@ricardo-us.com>
24464
24465         * docs/libtool.texi: Added pointers to documentation
24466         of Hewlett-Packard, Compaq Tru64 and IBM AIX systems.
24467
24468 2000-10-02  Gary V. Vaughan  <gary@gnu.org>
24469
24470         From Bruce Korb <bkorb@cruzio.com>
24471         * ltmain.in (execute_dlfiles): Reduce obfuscation.
24472
24473 2000-09-30  Alexandre Oliva  <aoliva@redhat.com>
24474
24475         * libtool.m4 [netbsd*] (deplibs_check_method, file_magic_cmd,
24476         file_magic_test_file): Removed inappropriate duplicate
24477         definitions; these variables are set in AC_DEPLIBS_CHECK_METHOD.
24478
24479         * libtool.m4 (lt_cv_file_magic_cmd): Don't use '${MAGIC_CMD}' or
24480         '${OBJDUMP}'; Solaris' /bin/sh loses with `}' in cache files.
24481         (ac_cv_path_MAGIC_CMD): Renamed to lt_cv_path_MAGIC_CMD.
24482
24483 2000-09-28  Gary V. Vaughan  <gary@gnu.org>
24484
24485         * libtool.m4 (MAGIC_CMD): Don't use MAGIC, since BSD versions of
24486         the file command use this environment variable to hold the
24487         location of the magic database.
24488         Reported by Marc Espie <Marc.Espie@liafa.jussieu.fr>
24489
24490 2000-09-19  Gary V. Vaughan  <gary@gnu.org>
24491
24492         * doc/PLATFORMS: Updated.
24493         * demo/configure.in:  Revert to the `libtool --features' test.
24494         * Makefile.am (libtool):  This needs to rerun configure now that
24495         libtool is generated entirely by AC_PROG_LIBTOOL again.
24496         (ltconfig): Removed.
24497         (ltmain.sh):  Is now regenerated when ltmain.in changes.
24498         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Now does all of the work for
24499         generating libtool immediately in configure.in, rather than
24500         deferring part of the creation until config.status runs.
24501
24502 2000-09-17  Gary V. Vaughan  <gary@gnu.org>
24503
24504         * bootstrap:  Backed out yesterdays patch which is no longer
24505         necessary.
24506         * Makefile.am (libtool): Reworked rule for regeneration of libtool,
24507         now that it is built entirely withing config.status.
24508         (libtoolize): Tidied for orthogonality with the other generation
24509         rules.
24510         (ltconfig):  This is now generated by AC_PROG_LIBTOOL, called from
24511         make by running config.status --recheck.
24512         (ltmain.sh): Moved primary generation of this file into here...
24513         * configure.in (AC_OUTPUT): ...instead of here.
24514         * libtool.m4 (AC_OUTPUT_COMMANDS):  Write the config to ltconfig
24515         where it can be reused, rather than directly to libtool.
24516         * demo/configure.in:  libtool is no longer present immediately
24517         after AC_LIBTOOL_M4 has completed, so the tests now grep through
24518         ltconfig instead -- which *will* be present.
24519
24520 2000-09-16  Gary V. Vaughan  <gary@gnu.org>
24521
24522         * TODO: Removed the item describing the change below, and added a
24523         similar item to remind us to change the ltdl.m4 macros again when
24524         _LT_AC_LTCONFIG_HACK is divided into proper macros.
24525         * ltdl.m4 (AC_LTDL_SNARF_CONFIG):  Removed.  No longet required
24526         now that ltconfig has migrated to libtool.m4.
24527         (AC_LTDL_SHLIBEXT): Require _LT_AC_LTCONFIG_HACK.
24528         (AC_LTDL_SHLIBPATH): ditto.
24529         (AC_LTDL_SYSSEARCHPATH): ditto.
24530
24531         * ltdl.m4 (AC_LTDL_DLPREOPEN): Require the libtool.m4 symbol_pipe
24532         macro.
24533         (AC_LTDL_SYMBOL_USCORE): ditto.
24534         (AC_LTDL_GLOBAL_SYMBOL_PIPE): Removed, since it is a duplicate
24535         of...
24536         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): ...this new
24537         macro, extracted from _LT_AC_LTCONFIG_HACK.
24538
24539         * ltdl.m4 (changequote): An audit of changequote and m4
24540         quote usage -- all changequotes have been removed, and some
24541         latent unquoted `[' and `]' bugs have been fixed.
24542
24543         * configure.in (AC_OUTPUT): ltmain.sh must be generated in the
24544         source tree since this is where it would be found in a freshly
24545         unrolled tarball.
24546
24547         * configure.in: Replace `dnl' comments with `#' comments for
24548         more conformity with cvs autoconf.
24549         Removed emacs hack-local-variables, since there is now a
24550         proper Autoconf major mode.
24551         Removed a couple of changequote()s.
24552
24553         * bootstrap (ltconfig): When bootstrapping libtool with a
24554         stock automake (i.e. without the README patch applied),
24555         references to ltconfig are manually removed from the generated
24556         Makefile.in files.
24557
24558 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
24559
24560         * doc/libtool.texi: Removes references to ltconfig, and a small
24561         amount of tidying up to compensate.
24562
24563 2000-09-15  Nick Hudson  <skrll@netbsd.org>
24564
24565         * libtool.m4 (netbsd): Improved support.
24566
24567 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
24568
24569         * ltmain.in (version_type): Use "-iface" as the windows
24570         versioning scheme, where iface is the number of the oldest
24571         interface supported.
24572
24573 2000-09-14  Gary V. Vaughan  <gary@gnu.org>
24574
24575         From Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
24576         * libtool.m4 (pw32): Initial support for pw32, assuming that
24577         libtool's behaviour in this environment is identical to under
24578         cygwin.
24579         * ltmain.in (pw32): ditto.
24580         * NEWS: Updated.
24581
24582         * libtool.m4 (changequote): An audit of changequote and m4
24583         quote usage -- all changequotes (except a few with non-nesting
24584         square brackets) have been removed.
24585
24586         * Makefile.am (EXTRA_DIST):  The bootstrap script should be
24587         distributed with libtool.
24588
24589 2000-09-13  Gary V. Vaughan  <gary@gnu.org>
24590
24591         libtool.m4 (_LT_AC_LTCONFIG_HACK): Oh man!  Third time lucky.
24592         I just discovered that '&' needs to be escaped inside
24593         AC_TRY_EVAL.
24594
24595 2000-09-12  Michael Matz  <matz@ifh.de>
24596
24597         * ltmain.in:  Be careful about filenames with multiple `.'s in
24598         them when calculating file extensions.
24599         Reported by Joel Reed <jreed@support.ddiworld.com>
24600
24601 2000-09-12  Gary V. Vaughan  <gary@gnu.org>
24602
24603         libtool.m4 (AC_PROG_LIBTOOL):  Removed, as it was triggering a
24604         bug in Autoconf-2.13 AC_REQUIRE implementation which inserted
24605         some of the expanded tests too early in the generaated configure.
24606         (_AC_PROG_LIBTOOL): renamed to AC_PROG_LIBTOOL, and defines
24607         itself to an empty expansion to prevent multiple expansions.
24608         configure.in (AC_LIBTOOL_SETUP): Replaced by a call to
24609         AC_PROG_LIBTOOL now that the AC_REQUIRE bug has been worked
24610         around.
24611
24612 2000-09-09  Gary V. Vaughan  <gary@gnu.org>
24613
24614         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to escape the
24615         redirections inside AC_TRY_EVAL in the need_lc tests. Doh!
24616
24617         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to redirect the
24618         output of grep to /dev/null in the need_lc tests.
24619
24620         configure.in (AC_PROG_LIBTOOL):  Using this in libtools own
24621         configure.in interacts badly with the AC_PROVIDE calls and
24622         results in several tests being inserted into configure too
24623         early.  Use AC_LIBTOOL_SETUP instead.
24624
24625 2000-09-08  Gary V. Vaughan  <gary@gnu.org>
24626
24627         libtool.m4 (_LT_AC_LTCONFIG_HACK): The ltconfig.in code I
24628         ported from ltconfig.in was incomplete -- this is a backport
24629         of the missing code taken from the multi-language branch.
24630
24631 2000-09-07  Pavel Roskin  <proskin@gnu.org>
24632
24633         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Fixed incorrect use of
24634         changequote
24635
24636 2000-09-07  Gary V. Vaughan  <gary@gnu.org>
24637
24638         * NEWS:  Updated.
24639         * TODO:  Add a reminder to get rid of ltconfig in mlb.
24640         * README: Until things even out, I have added a note and a
24641         patch to make the installed automake cooperate with the new
24642         ltconfig free libtool.
24643
24644         * libtool.m4 (_LT_AC_LTCONFIG_HACK): with_gcc is only useful in
24645         ltmain.sh as it has not yet been set in libtool.m4.  Use
24646         $ac_cv_prog_gcc instead.
24647
24648         * doc/PLATFORMS: Updated.
24649
24650         * configure.in (AC_PROG_AWK): Removed -- no longer required by
24651         the build process.
24652         * lineno: ditto.
24653
24654         * libtoolize.in (files): Don't try to install ltconfig -- it
24655         doesn't exist!!
24656         * bootstrap: Fake an ltconfig incase the installed automake
24657         calls an installed libtoolize (as part of its --add-missing
24658         process) which thinks ltconfig should be there.
24659
24660         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Deleted a vital `;;'
24661         terminator from a case statement by mistake.
24662
24663         * Makefile.am (ltmain.sh):  Make this depend on TSDEPS again
24664         so that the Changelog timestamp is used for ltmain.sh at `make
24665         dist' time.
24666
24667 2000-09-06  Gary V. Vaughan  <gary@gnu.org>
24668
24669         libtool.m4 now contains a version of the code that used to run
24670         from ltconfig, so that ltmain.sh and then libtool are
24671         generated at configure time.
24672
24673         * Makefile.am:  Don't generate ltmain.sh or ltconfig anymore.
24674         * bootstrap: ltconfig is no more!
24675         * configure.in: Call AC_PROG_LIBTOOL directly.
24676         (AC_OUTPUT): Generate tmain.sh.
24677         * libtool.m4: Don't build an argument list for ltconfig.
24678         (_LT_AC_LTCONFIG_HACK):  Refactoring of the former contents of
24679         ltconfig.in to take advantage of the m4 macros from autoconf.
24680         * ltmain.in: Don't do a version check against ltconfig.
24681         * tests/assign.test: Remove reference to ltconfig.
24682         * tests/hardcode.test: ditto.
24683         * tests/sh.test: ditto.
24684
24685 2000-09-05  Alexandre Oliva  <aoliva@redhat.com>
24686
24687         * depdemo/main.c: Support -alt.
24688         * tests/build-relink2.test: Try it.
24689
24690         * ltconfig.in: Removed all references to what used to be
24691         hardcode_into_libs=all.  2000-09-03's patch was wrong.
24692         * ltmain.in: Likewise.
24693         * tests/build-relink.test, tests/build-relink2.test: Adjust.
24694         * mdemo/Makefile.am (lib_LTLIBRARIES): Move libsub.la before
24695         libfoo2.la, so that they're installed in the right order.
24696
24697 2000-09-04  Alexandre Oliva  <aoliva@redhat.com>
24698
24699         * tests/dryrun.test: Build libsub.la along with the object files,
24700         since it is needed by libfoo2.la.
24701
24702         * mdemo/Makefile.am: Mark only libfoo2 as -no-undefined.
24703         Explicitly link it with libsub.la.
24704
24705         * ltconfig.in (need_lc): Preserve allow_undefined_flag.
24706
24707         * tests/*.test (CONFIG_SITE): Ultrix's /bin/sh fails on
24708         `. /dev/null'.  Set CONFIG_SITE to /dev/null/config/site, to make
24709         sure we pick a non-existent file.
24710
24711         * Makefile.am (libtool, clibtool): Pass CONFIG_SHELL along with
24712         ECHO down to ltconfig.
24713
24714         * ltconfig.in (hardcode_libdir_flag_spec, export_dynamic_flag_spec):
24715         Use ${wl}, not ${wlarc}.
24716
24717         * ltmain.in (compile, need_lock): Don't create nor remove lock
24718         files in dry runs.
24719
24720         * libltdl/ltdl.c (load_deplibs): Don't append shlib_ext; use
24721         lt_dlopenext() instead.
24722
24723         * ltmain.in (link -static): Don't add $link_static_flag; only
24724         -all-static should do that.
24725         * mdemo/configure.in: Revert part of the previous delta.
24726
24727         * mdemo/configure.in: Don't use -static on AIX4.1.
24728         * mdemo/Makefile.am: Likewise.
24729
24730 2000-09-03  Alexandre Oliva  <aoliva@redhat.com>
24731
24732         * ltconfig.in: Get rid of hardcode_into_libs=all; use
24733         hardcode_into_libs=yes && shlibpath_overrides_runpath!=yes
24734         instead.
24735         [FreeBSD 3.[01]] (shlibpath_overrides_runpath): Set to no.
24736         * ltmain.in: Likewise.
24737         * tests/build-relink.test, tests/build-relink2.test: Adjust.
24738
24739         * libtool.m4: Fix typo I introduced in yesterday's patch.
24740
24741         * libltdl/ltdl.c (lt_dlopen): Set dlname from library_names if
24742         dlname is empty.
24743
24744         * ltdl.m4 (HAVE_LIBDL): Look for dlopen in -lsvld.
24745         * ltconfig.in: Likewise.
24746
24747         * tests/mdemo-exec.test: Modify failure message.
24748
24749         * ltmain.in (newdlprefiles): Use dlname if it's available and
24750         old_library isn't; use linklib only if dlname is not available.
24751
24752         * ltconfig.in (enable_dlopen): Set to no when lt_cv_dlopen is no.
24753
24754         * libtool.m4: Don't quote CONFIG_SHELL nor ORIGINAL_CONFIG_SHELL.
24755         Quote $@ properly so that the shell expands it, not m4.
24756
24757         * libtool.m4: Don't quote SHELL when `re-exec'ing, so that SHELL
24758         can be `/path/to/shell -x'.
24759
24760         * tests/quote.test: Move the match test out of case statements, to
24761         work around bug in /bin/sh of several OSs.
24762
24763         * ltmain.in (variables_saved_for_relink): Attempt to unset them
24764         instead of setting them to an empty string.
24765
24766 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
24767
24768         * ltconfig.in [with_gnu_ld] (archive_cmds, archive_expsym_cmds)
24769         <solaris*, sysv5*, beos*>: Use compiler_flags instead of linker
24770         flags.
24771         Reported by Alex Hornby <alex@anvil.co.uk>
24772
24773 2000-09-02  Makoto Ishisone  <ishisone@sra.co.jp>
24774
24775         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Fix typo,
24776         add support for compact format library.
24777
24778 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
24779
24780         * ltdl.m4: Oops, I had forgotten to commit this part of Syd Polk's
24781         patch from 2000-06-17.
24782
24783 2000-09-02  Tom Kacvinsky  <tjk@ams.org>, Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
24784
24785         * libtool.m4: Ignore Tru64's nm's complaint.
24786
24787 2000-09-02  Pavel Roskin <proski@gnu.org>
24788
24789         * ltconfig.in: only load $cache_file if it's a regular file
24790
24791 2000-09-02  Assar Westerlund  <assar@sics.se>
24792
24793         * ltconfig.in: Add back ranlib calls for static libraries if there
24794         is a ranlib.
24795
24796 2000-08-31  Gary V. Vaughan  <gary@gnu.org>
24797
24798         Move the echo detection code to a macro in libtool.m4.  The code
24799         at the top ofltconfig.in is ugly, but will go away when the rest
24800         of ltconfig is migrated.
24801
24802         * Makefile.am (libtool):  Pass the value of $ECHO to ltconfig as
24803         an environment variable.
24804         * libtool.m4 (_LT_AC_PROG_ECHO_BACKSLASH): Quote the ECHO value
24805         correctly so that it inserts the correct code into configure.in
24806         suitably quoted for M4 expansion.  This code needs to be near
24807         the top of configure.in as it calls itself recursively, so I
24808         am using AC_DIVERSION_NOTICE (or simply NOTICE on CVS
24809         Autoconf).  The value of ECHO is also substitued into the
24810         Makefile to be used when Make calls ltconfig to generate
24811         libtool, so another layer of quotation is required for the
24812         Makefile.
24813         (AC_LIBTOOL_SETUP):  Use it.
24814         * ltconfig.in: Accept a value for ECHO from the environment, and
24815         carefully substitue for $0 if it is present in the ECHO value.
24816         Because ECHO was quoted for Make, when ltconfig is called by
24817         configure, it is overquoted, and one layer of quotes must be
24818         stripped.
24819
24820 2000-08-27  Gary V. Vaughan  <gary@gnu.org>
24821
24822         * ltconfig.in (with_gcc):  Make the value of this option
24823         available to the generated libtool script.
24824         * ltmain.in (compile_command, finalize_command):  The native C
24825         and C++ compilers on IRIX require the -LANG:std in order to to
24826         compile correctly.   The same options should _not_ be passed
24827         through to gcc on IRIX, or at all on other architectures for
24828         backwards compatibility (among others).
24829         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
24830         Reported by Albert Chin-A-Young <china@thewrittenword.com>
24831
24832 2000-08-26  Gary V. Vaughan  <gary@gnu.org>
24833
24834         * ltconfig.in (old_reload_flag): typo.
24835
24836 2000-08-01  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
24837
24838         * ltmain.in (shtool): Use echo|grep instead of expr, as in the
24839         original patch.
24840
24841 2000-08-01  Alexandre Oliva  <aoliva@redhat.com>
24842
24843         * ltconfig.in (need_lc): Fix test message.
24844
24845 2000-07-24  Mocha  <netbsd_alpha@yahoo.com>
24846
24847         * ltconfig.in (NetBSD, deplibs_check_method): Use file_magic.
24848         (NetBSD, file_magic_cmd, file_magic_test_file): Set.
24849
24850 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, David Kaelbling  <drk@orchietta.hudson.sgi.com>
24851
24852         * ltmain.in (irix, major): Prepend a `.'.
24853         * ltconfig.in (irix, soname_spec, library_names_spec): Adjust.
24854
24855 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, Ralf S. Engelschall  <rse@engelschall.com>
24856
24857         * ltmain.in: Support GNU shtool's install.
24858
24859 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
24860
24861         * ltconfig.in (linkopts): Don't set for test.
24862
24863 2000-07-24  Nick Hudson <skrll@netbsd.org>
24864
24865         * ltconfig.in (linkopts): Replace with linker_flags.
24866
24867         * ltmain.in (ILD): Fix addition of deplibs in relink case.
24868
24869 2000-07-18  H.J. Lu  <hjl@gnu.org>
24870
24871         * ltconfig.in: Check if -lc is necessary for building shared
24872         library. Set build_libtool_need_lc to indicate it.
24873         * ltmain.in: Add -lc when building shared library only if
24874         necessary.
24875
24876 2000-07-10  Mo DeJong  <mdejong@redhat.com>
24877
24878         * libtool.m4 (AC_PROG_NM): Fix macro so that it
24879         finds a cross NM on the PATH.
24880
24881 2000-07-10  Ken Block <block@zk3.dec.com>
24882
24883         * libltdl/ltdl.h: Also check for __cplusplus, __STDC__ is not
24884         by Compaq C++ compiler
24885
24886 2000-07-10  Alexandre Oliva  <aoliva@lsd.ic.unicamp.br>
24887
24888         * ltconfig.in (wlarc, netbsd, aout): Set to empty.
24889         (hardcode_dynamic_flag_spec, export_dynamic_flag_spec): Use it.
24890
24891         * ltconfig.in (dynamic_linker, linux, powerpc): Do not disable
24892         shared libraries just because of MkLinux.
24893
24894         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Do not depend
24895         on $version_type; check for ELF support as in other BSDs.
24896
24897 2000-06-17  Syd Polk  <spolk@redhat.com>
24898
24899         * libtool.m4 (AC_LIBTOOL_SETUP): Do not generate a libtool based
24900         on target; use host instead.
24901
24902 2000-05-30  Gary V. Vaughan  <gary@gnu.org>
24903
24904         * ltconfig.in (ORIGINAL_CONFIG_SHELL): Prevent lossage when
24905         the echo probing code falls into this branch without setting
24906         this variable.
24907
24908         * ltconfig.in (netbsd*): archive_cmds and archive_expsym_cmds
24909         were reversed with respect to definition of __ELF__.
24910         From Keisuke Inoue <keisuke@csl.sony.co.jp>
24911
24912 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
24913
24914         * libtool.m4 (netbsd*): Use -L option to file_magic_cmd as for
24915         freebsd (below).
24916         * libtool.m4 (netbsd ELF): support file_magic.
24917         From Dan Winship <danw@helixcode.com>.
24918
24919 2000-05-29  Steven M. Schultz <sms@moe.2bsd.com>
24920
24921         * libtool.m4 (bsdi4*): Add -L option to bsdi4's file_magic_cmd
24922         command.  Under BSD/OS 4.1 several libraries are now symlinks
24923         rather than regular files.  Adding -L tells the file program
24924         to follow the symlink.
24925
24926 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
24927
24928         * libtool.m4 (i*86-*-freebsd*): Forgot to changequote(,).
24929
24930         * NEWS: Updated.
24931         * libtool.m4 (i*86-*-freebsd*): Support a.out shared libs.
24932         From <suzukis@file.phys.tohoku.ac.jp>
24933
24934 2000-05-29  Fred Fish  <fnf@be.com>
24935
24936         Support AR=mwld AR_FLAGS='-xml -o' for PPC Beos.
24937         * ltconfig (old_AR_FLAGS): Add.
24938         (old_archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
24939         (archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
24940         (AR_FLAGS): Default to "cru" if not set.
24941
24942 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
24943
24944         * ltconfig.in (echo): The following code actually prints the
24945         double quotes -- so I removed them:
24946             echo='printf "%s\n"' /bin/ksh -c '$echo \\t'
24947         From Tuukka Toivonen <tutoivon@mail.student.oulu.fi>
24948
24949         * NEWS: Updated.
24950
24951 2000-05-29  Bernhard Rosenkraenzer <bero@redhat.de>
24952
24953         * libtool.m4: adding ia64 as supported linux platform
24954
24955 2000-05-29  Michael Matz  <matz@ifh.de>
24956
24957         * ltmain.in: fix quoting for $var_value.
24958
24959         * ltconfig.in: check for dlfcn.h: include return value
24960         to make -Wall in CFLAGS work.
24961
24962 2000-05-27  Gary V. Vaughan  <gary@gnu.org>
24963
24964         * README-alpha: note new location of config.(guess|sub).
24965
24966 2000-05-27  Chad Cunningham  <ccunning@math.ohio-state.edu>
24967
24968         * ltconfig.in (rhapsody*): New Port.
24969         * ltmain.in (rhapsody*): ditto.
24970
24971 2000-05-27  Chris Lattner  <sabre@skylab.org>
24972
24973         * ltconfig.in (*-sequent-sysv4): New Port.
24974
24975 2000-05-17  Gary V. Vaughan  <gary@gnu.org>
24976
24977         * ltmain.in: cygwin-1.1.0 and higher no longer grok backslash path
24978         separators.
24979
24980 2000-05-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
24981
24982         * libtool.m4 (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE):
24983         Pick LIBLTLD from top_builddir and INCLTDL from top_srcdir.
24984         * mdemo/configure.in: Remove comments on
24985         AC_LIBLTLD_CONVENIENCE.
24986
24987         * libtool.m4 (_AC_PROG_LIBTOOL): Renamed from...
24988         (AC_PROG_LIBTOOL): Just AC_REQUIRE(_AC_PROG_LIBTOOL), to avoid
24989         effects of multiple runs.
24990
24991 2000-05-11  Thomas Tanner  <tanner@ffii.org>
24992
24993         * NEWS: update
24994         * doc/libtool.texi (libltdl): rename lt_(find|next|add|remove)_dlloader
24995           to lt_dlloader_*
24996         * libltdl/ltdl.c: ditto
24997         * libltdl/ltdl.h: ditto, add declaration of lt_dlloader_(find|remove)
24998
24999 2000-05-06  Pavel Roskin  <pavel_roskin@geocities.com>
25000
25001         * libltdl/ltdl.c: Typo.
25002
25003         * libtool.m4 (AC_LIBTOOL_SETUP): CVS autoconf no longer sets
25004         target to "NONE", but to an empty string.
25005
25006 2000-05-05  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
25007
25008         * ltdl.c: support lt_dlopen(0) for win32
25009
25010 2000-05-03  Thomas Tanner  <tanner@ffii.org>
25011
25012         * doc/libtool.texi (libltdl): fix typos,
25013           INCLTDL starts with top_srcdir, replace NULL with @code{NULL}
25014
25015         * ltmain.in (ILD): search in newlib_search_path, too
25016
25017         * ltmain.in (ILD): fix bugs in conv pass, expand convenience
25018           libs to deplibs and link them later on
25019
25020         * ltmain.in (ILD): don't allow convenience libs to be
25021            -dlopen/preopen'ed
25022
25023         * ltmain.in (ILD): it's not required to link all deplibs
25024           in fast-install mode
25025
25026         * ltmain.in (ILD): if hardcode_into_libs=all, only relink
25027           a library if it is linked against uninstalled libtool libraries,
25028           rename link_against_libtool_libs to uninst_deplibs
25029
25030         * ltmain.in (ILD): tidy up, add some comments
25031
25032 2000-05-03  John Wehle  (john@feith.com)
25033
25034         * libtool.m4 (hpux10.20*): use file_magic for
25035         inter-library dependency tracking.
25036
25037 2000-05-02  Gary V. Vaughan  <gary@gnu.org>
25038
25039         * AUTHORS:  Update my email address.
25040         * commit: ditto.
25041
25042 2000-04-11  Thomas Tanner  <tanner@ffii.org>
25043
25044         * NEWS: update
25045         * libtool.m4: add AC_LIBTOOL_PICMODE
25046         * ltconfig.in: move pic_mode checks to ltmain.in
25047         * ltmain.in: add -prefer-pic and -prefer-non-pic
25048
25049 2000-03-29  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
25050
25051         * ltmain.in (tmpdir): Do not accept an existing directory, and
25052         force its mode to 700, for security reasons.
25053         Reported by Joseph S. Myers <jsm28@cam.ac.uk>
25054
25055 2000-03-27  Thomas Tanner  <tanner@ffii.org>
25056
25057         * NEWS: reformatting
25058
25059         * ltmain.in (ILD): add extra convenience library scanning pass
25060
25061         * ltmain.in (ILD): accept -R flags for libraries, too
25062
25063         * ltmain.in (ILD): correclty merge the dlpreopened libraries
25064           with deplibs
25065
25066         * ltmain.in (install mode): remove directories from filenames
25067           before relinking (reported by Elrond <Elrond@Wunder-Nett.org>)
25068
25069         * doc/libtool.texi (libltdl): rename Library -> Lesser,
25070           clarify exception clause
25071         * libltdl/ltdl.c, libltdl.h (License): ditto
25072
25073 2000-03-21  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
25074
25075         * ltconfig.in (variables_saved_for_relink): Set to `PATH
25076         $shlibpath_var $runpath_var'.  If with_gcc, add gcc-related
25077         environment variables.  Add it to the configuration section.
25078         * ltmain.in (relink_command): Expand those variables.
25079
25080 2000-03-14  Christopher A. Knight  <chriskn@crt.com>
25081
25082         * ltconfig.in: added main() definition in compile
25083         check for header `dlfcn.h' to fix link errors
25084         when built with Sun Workshop Pro CC 4.2 (and perhaps
25085         others).
25086
25087 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
25088
25089         * libltdl/ltdl.c (lt_find_dlhandle): Deleted.  This was B.S.
25090         far cleaner to use lt_dlforeach and lt_dlgetinfo.
25091         * libltdl/ltdl.h:  Prototype deleted.
25092         * doc/libtool.texi: Documentation deleted.
25093         * NEWS: annoncement deleted.
25094
25095 2000-02-23  Thomas Tanner  <tanner@ffii.org>
25096
25097         * ltmain.in: remove duplicates from deplibs, handle
25098           interdependent libraries (e.g. -la -lb -la),
25099           this requires adding deplibs in reverse order
25100
25101         * ltmain.in: link dlpreopened libraries before other libraries
25102           (reported by Pavel Roskin)
25103         * mdemo/Makefile.am: build and link libsub.la
25104         * mdemo/sub.c: new file used by both dlopened modules
25105         * mdemo/foo*: use sub() defined in libsub
25106         * tests/dryrun.test: build libsub.la
25107
25108         * mdemo/Makefile.am: always link mdemo.static with -static
25109         * mdemo/configure.in: ditto
25110
25111         * ltmain.in: fix dlopen/dlpreopening of objects
25112
25113         * ltmain.in (ILD): fix misplaced `continue' in -R* argument handler
25114
25115         * ltmain.in: merge duplicated code of clean and uninstall mode
25116
25117         * libtool.m4: recognize powerpc*linux* (reported by
25118           Dirk A. Mueller <dmuell@gmx.net>)
25119
25120 2000-02-23  Gary V. Vaughan  <gary@gnu.org>
25121
25122         * ltconfig.in (old_MAGIC, old_STRIP, old_reload_flag,
25123         old_deplibs_check_method, old_file_magic_cmd):  New variabes.
25124         Treat these as old_CC etc.
25125         (STRIP, MAGIC): Create and set these variables in the generated
25126         libtool script.
25127         Reported by Pavel Roskin <pavel_rosin@geocities.com>
25128
25129         * configure.in: Due to a bug in autoconf-2.13 implementation of
25130         AC_SUBST, `AC_SUBST(FILE)' can never work.  Use MAGIC as the
25131         holder of the command to run in file_magic_cmd instead.
25132         * ltconfig.in: s/FILE/MAGIC/g.
25133         * libtool.m4 (AC_PROG_LIBTOOL): set MAGIC in the environment when
25134         calling ltconfig.
25135         (AC_PATH_MAGIC):  renamed from AC_PATH_FILE.
25136         (AC_PATH_TOOL_PREFIX):  s/FILE/MAGIC/g.  Also set file_magic_cmd
25137         to '${MAGIC}' so that make can grok it.
25138         * Makefile.am (libtool):
25139         (clibtool): ditto.
25140
25141 2000-02-21  Gary V. Vaughan  <gary@gnu.org>
25142
25143         * libltdl/ltdl.c (lt_find_dlhandle): New function.
25144         (tryall_dlopen): Use it.
25145         * libltdl/ltdl.h:  Prototype it.
25146         * doc/libtool.texi: Document it.
25147         * NEWS: updated.
25148
25149         * libltdl/ltdl.c (lt_dlinit): removed unused variable, `loader'.
25150
25151         * libltdl/ltdl.c (lt_remove_dlloader): typo, s/=/==/g.
25152
25153 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
25154
25155         * libltdl/ltdl.h (lt_dlloader_data_t):  New type for loader
25156         instance data.
25157         (lt_user_dlloader): New lt_dlloader_data_t field.
25158         (lt_module_open_t): Add lt_dlloader_data_t parameter.
25159         (lt_module_close_t): Add lt_dlloader_data_t parameter.
25160         (lt_find_sym_t): Add lt_dlloader_data_t parameter.
25161         (lt_dlloader_exit_t): Add lt_dlloader_data_t parameter.
25162         * libltdl/ltdl.c:  A sprinkling of /*ARGSUSED*/ markers to
25163         reassure lint that the unused arguments are intentional.
25164         (lt_dlloader_t): New lt_dlloader_data_t field.
25165         (lt_dlloader_data): New function to return the contents of the
25166         dlloader_data field.
25167         (sys_dl_open): Take an additional lt_dlloader_data_t argument.
25168         (sys_dl_close): Ditto.
25169         (sys_dl_sym): Ditto.
25170         (sys_dl): Initialise lt_dlloader_data_t field.
25171         (sys_shl_open, sys_shl_close, sys_shl_sym, sys_shl): As above.
25172         (sys_wll_open, sys_wll_close, sys_wll_sym, sys_wll): As above.
25173         (sys_bedl_open, sys_bedl_close, sys_bedl_sym, sys_bedl): As
25174         above.
25175         (sys_dld_open, sys_dld_close, sys_dld_sym, sys_dld): As above.
25176         (presym_init, presym_exit, presym_open, presym_close, presym_sym,
25177         presym): As above.
25178         (lt_dlinit): Call presym_init with additional argument.
25179         (lt_dlexit): Call dlloader_exit method with additional argument.
25180         (tryall_dlopen): Call module_open method with additional argument.
25181         (lt_dlclose): Call module_close method with additional argument.
25182         (lt_dlsym): Call find_sym method with additional argument.
25183         (lt_add_dlloader): Initialise dlloader_data field.
25184         (lt_remove_dlloader): Call dlloader_exit method with additional
25185         argument.
25186
25187         * libltdl/ltdl.c (find_file): Prevent early release of memory
25188         in filename/*pdir.
25189         From Jon Leichter <jon@symas.com>
25190
25191         (sys_wll_init): Deleted.  No longer required.  And this time,
25192         with feeling!
25193         (sys_wll_exit): Ditto.
25194
25195 2000-02-02  Gary V. Vaughan  <gary@gnu.org>
25196
25197         * NEWS: updated.
25198         * doc/libtool.texi (Libltdl interface): Moved user defined module
25199         loader documentation from here...
25200         (Module loaders for libltdl) ...to here, and updated the text and
25201         added examples.
25202         * ltdl.m4 (AC_CHECK_FUNCS): check strcmp for lt_find_dlloader.
25203         * libltdl/ltdl.h: Reformatted and commented for readability.
25204         (struct lt_user_dlloader): New data type for passing
25205         initialisation pointers to lt_add_dlloader.
25206         (LTDL_ERROR_INVALID_LOADER):  New error message when non loader
25207         handles are passed to the user loader API.
25208         (LTDL_ERROR_INIT_LOADER): New error when loader initialisation
25209         fails.
25210         (LTDL_ERROR_REMOVE_LOADER): New error when loader removal fails.
25211         (lt_module_open_t): renamed from lt_lib_open_t.
25212         (lt_module_close_t): renamed from lt_lib_close_t.
25213         (lt_dlloader_exit_t): renamed from lt_dlloader_exit_t.
25214         * libltdl/ltdl.c: Reordered builtin loaders so that the "dld"
25215         loader no longer occurs before "dlopen" on some platforms and
25216         after it on others.
25217         (lt_dlloader_t): Moved here from ltdl.h, added a field,
25218         "loader_name", for identifying the loader, and renamed from
25219         lt_dltype_t.  Renamed type variables to loader IFF of type
25220         lt_dlloader_t.
25221         (lt_module_t): Renamed from lt_syshandle. Renamed handle variables
25222         to module IFF of type lt_module_t.
25223         (LTDL_TYPE_TOP): Deleted.  No longer required.
25224         (sys_dl): Initialised as a struct lt_user_dlloader.
25225         (sys_dl_init): Deleted.  No longer required.
25226         (sys_dl_exit): Ditto.
25227         (sys_shl): Initialised as a struct lt_user_dlloader.
25228         (sys_shl_init): Deleted.  No longer required.
25229         (sys_shl_exit): Ditto.
25230         (sys_wll): Initialised as a struct lt_user_dlloader.
25231         (sys_wll_init): Deleted.  No longer required.
25232         (sys_wll_exit): Ditto.
25233         (sys_bedl): Initialised as a struct lt_user_dlloader.
25234         (sys_bedl_init): Deleted.  No longer required.
25235         (sys_bedl_exit): Ditto.
25236         (sys_dld): Initialised as a struct lt_user_dlloader.
25237         (sys_dld_init): Deleted.  No longer required.
25238         (sys_dld_exit): Ditto.
25239         (sys_presym): Initialised as a struct lt_user_dlloader.
25240         (lt_mod_init_t): Moved to here from ltdl.h.
25241         (lt_dlinit): Add builtin loaders using the user loader API.
25242         (lt_dlexit): Unregister and free all loaders.
25243         (lt_add_dlloader): New function to add a new module loader after the
25244         loader specified in the argument.
25245         (lt_remove_dlloader): New function to remove a module loader.
25246         (lt_next_dlloader): New function for iterating over module loaders.
25247         (lt_dlloader_name): Accessor function for name of dlloader.
25248         (lt_find_dlloader): New function to get a reference to a registered
25249         module loader.
25250         (strcmp): static implementation incase the host has none.
25251         (lt_dlgettypes, lt_dlsettypes): Removed.
25252
25253 2000-02-02  Thomas Tanner  <tanner@ffii.org>
25254
25255         * libltdl/ltdl.c: replace NULL with 0, remove unused system
25256           and app_private pointers from lt_dlhandle_t
25257         * libltdl/ltdl.c (presym_add_list): new preloaded symbols
25258           don't need to be added to the end
25259
25260         * libltdl/ltdl.c (lt_dlgetdata, lt_dlsetdata): removed
25261         * libltdl/ltdl.h: ditto
25262         * doc/libtool.texi (libltdl interface): ditto
25263
25264 2000-02-01  Thomas Tanner  <tanner@ffii.org>
25265
25266         * ltmain.in: support -dlopen/dlpreopen for libraries
25267         * NEWS: updated
25268         * TODO: updated
25269         * ltmain.in: rename dlopen to dlopen_support
25270         * ltconfig.in: ditto
25271         * doc/libtool.texi: ditto
25272
25273         * ltmain.in: check whether libraries are moved out of $libdir,
25274           replace .a and .lib with .$libext, .o and .obj with .$objext
25275
25276 2000-01-31  Gary V. Vaughan  <gary@gnu.org>
25277
25278         * libltdl/ltdl.h (lt_dlrealloc): removed declaration.
25279         * libltdl/ltdl.c (lt_dlrealloc): removed definition.
25280         (lt_dladderror): Instead of calling lt_dlrealloc, use lt_dlmalloc,
25281         and lt_dlfree.
25282
25283 2000-01-30  Ossama Othman  <ossama@debian.org>
25284
25285         * libtool.m4 (lt_cv_cc_needs_belf): Set the test language to C
25286         prior to executing the test that checks if the C compiler needs
25287         "-belf."
25288         Reported by Chris Butler <chrisb@sandy.force9.co.uk>
25289
25290 2000-01-28  Gary V. Vaughan  <gary@gnu.org>
25291
25292         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use changequote to
25293         protect `[' and `]' in deplibs_check_method.
25294
25295         * libltdl/ltdl.h (lt_dlrealloc): Added declaration.
25296         * libltdl/ltdl.c (lt_dlrealloc): Added default definition.
25297
25298         * libltdl/ltdl.c (lt_dlseterror): Catch errorcodes below 0 as
25299         invalid.
25300         * libltdl/ltdl.h (LTDL_ERROR): Added missing '_' in K&R
25301         definition.
25302
25303         * libltdl/ltdl.h (ltdl_error_table): Added missing error code, and
25304         fixed typo in another code.
25305         * doc/libtool.texi (Libltdl interface): Added missing @end
25306         clause.
25307
25308 2000-01-27  Thomas Tanner  <tanner@ffii.org>
25309
25310         * ltconfig.in: Oops, replace the remaining $objdir's
25311
25312         * ltmain.in: merge library linking code of programs and libraries,
25313           some cleanups
25314
25315 2000-01-27  Gary V. Vaughan  <gary@gnu.org>
25316
25317         * NEWS: Updated.
25318         * doc/libtool.texi (Libltdl interface): Document new entry
25319         points.
25320         * libltdl/ltdl.c (lt_dladderror): New function to add a user
25321         defined error message to the tables used by lt_dlerror().
25322         (lt_dlseterror):  New function to allow setting of last_error by
25323         user modules.
25324         (ltdl_error_strings): New preprocessor generated table of internal
25325         error diagnostic strings.
25326         (user_error_strings): New internal list of registered user error
25327         diagnostic strings.
25328         (throughout!): Use error messages from ltdl_error_strings.
25329         * libltdl/ltdl.h (ltdl_error_table): New macro to tabulate
25330         internal diagnostic error strings alongside enum keys.
25331
25332         * NEWS: Updated.
25333         * doc/libtool.texi (Libltdl interface): Document new entry
25334         points.
25335         * libltdl/ltdl.c (lt_dltype_t):  Use new type definitions for
25336         existing fields.
25337         (lt_dladdtype): New function to add a new ltdl dynamic loader
25338         type to the end of the list of valid types..
25339         (lt_dlgettypes): New function to return the complete list of ltdl
25340         dynamic loader types.
25341         (lt_dlsettypes): New function to replace the list of ltdl dynamic
25342         loader types entirely -- e.g. to prepend a new type to the
25343         existing list.
25344         (sys_dl_open, sys_dl_close, sys_dl_sym): Work with lt_syshandle.
25345         (sys_shl_open, sys_shl_close, sys_shl_sym): ditto.
25346         (sys_dld_open, sys_dld_close, sys_dld_sym): ditto.
25347         (sys_wll_open, sys_wll_close, sys_wll_sym): ditto.
25348         (sys_bedl_open, sys_bedl_close, sys_bedl_sym): ditto.
25349         (presym_open, presym_close, presym_sym): ditto.
25350         (tryall_dlopen): Call lt_lib_open_t functions lt_syshandle
25351         compatibly.
25352         (lt_dlclose): Call lt_lib_close_t functions lt_syshandle
25353         compatibly.
25354         (lt_dlsym): Call lt_find_sym_t functions lt_syshandle compatibly.
25355         (lt_dltype_t): moved type declaration from here...
25356         * libltdl/ltdl.h (lt_dltype_t): ...to here.
25357         (lt_syshandle): new type for low level system handles passed by
25358         loader functions
25359         (lt_mod_init_t):  New type for functions implementing the
25360         initialisation for an ltdl dynamic loader.
25361         (lt_mod_exit_t): Type of exit functions for the same.
25362         (lt_lib_open_t): Type of loader functions for the same.
25363         (lt_lib_close_t): Type of unloader functions for the same.
25364         (lt_find_sym_t): Type of symbol resolver functions for the same.
25365
25366         * libltdl/ltdl.c (sys_dl_init, sys_dl_exit, sys_dl_open,
25367         sys_dl_close, sys_dl_sym):  Preprocess these away on cygwin to
25368         avoid spurious error messages.
25369
25370 2000-01-24  Thomas Tanner  <tanner@ffii.org>
25371
25372         fix severe bugs reported by Elrond <Elrond@Wunder-Nett.org>
25373
25374         * ltconfig.in: replace $objdir with $output_objdir
25375
25376         * ltmain.in: change to the builddir before relinking programs
25377
25378         * ltmain.in, ltconfig.in, libtool.m4, ltdl.m4:
25379           remove unnessary spaces from line endings
25380
25381 2000-01-19  Thomas Tanner  <tanner@ffii.org>
25382
25383         * ltmain.in: rewrite of the ILD code, merge linking code for
25384           programs, libraries and objects, allow linking of shared libraries
25385           against static libraries/objects on platforms that support it
25386           but print a warning, fix some typos
25387
25388         * partially revert my previous change and
25389           update only copyright notices of files that were actually modified
25390
25391         * NEWS: update
25392
25393         * libltdl/Makefile.am: version number was wrong
25394
25395         * libltdl/ltdl.c (tryall_dlopen): revert Gary's change
25396           since it breaks dlpreopening
25397         * ltdl.m4: ditto
25398
25399         * libltdl/ltdl.c (sys_search_path): search in the system default
25400           library search path, too
25401         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): extract the path
25402
25403         * libltdl/ltdl.c (find_module): remove bogus file_not_found_error
25404
25405         * libltdl/ltdl.c (load_deplibs): implement loading of dependency
25406           libraries
25407         * libltdl/ltdl.c (unload_deplibs): implement unloading of dependency
25408           libraries
25409         * libltdl/ltdl.c (lt_dlexit): correctly close all modules and
25410           their dependencies
25411
25412         * libltdl/ltdl.c (lt_dlforeach): new function
25413         * libltdl/ltdl.h: ditto
25414         * doc/libtool.texi (using libltdl): document it
25415
25416         * libtool.m4: reformatting, only add -I$topsrc_dir/libltdl to
25417           INCLTDL
25418
25419         * libtoolize.in: reformatting
25420         * ltconfig.in: reformatting
25421         * ltmain.in: reformatting
25422
25423         * mdemo/configure.in: AC_SUBST INCLTDL
25424         * mdemo/Makefile.am: use INCLTDL
25425
25426         * tests/Makefile.am: reexport OBJEXT and EXEEXT
25427         * tests/dryrun.test: use them for building main.obj and mdemo.exe
25428
25429 2000-01-17  Gary V. Vaughan  <gary@gnu.org>
25430
25431         * libltdl/ltdl.c (tryall_dlopen): Abort with
25432         file_not_found_error before trying all lib_open() methods
25433         if the file to be dlopened doesn't exist.
25434         * ltdl.m4 (AC_HAVE_HEADERS): add unistd.h.
25435
25436 2000-01-16  Gary V. Vaughan  <gary@gnu.org>
25437
25438         * libltdl/ltdl.c (find_file): memory error fixed.
25439
25440 2000-01-14  Gary V. Vaughan  <gary@gnu.org>
25441
25442         * ltconfig.in (Usage): Now it matches the code!
25443         Reported by Jon Leichter <jon@symas.com>
25444
25445         * README:  Some notes about libtool release numbers.
25446
25447         * mdemo/README: Explain the deliberate incompleteness of the
25448         Windows port.
25449         * mdemo/configure.in: Use AC_LIBTOOL_WIN32_DLL.
25450         * mdemo/Makefile.am (LDFLAGS):  Add -no-undefined.
25451
25452         * libltdl/ltdl.h (LTDL_STMT_START, LTDL_STMT_END):  Macros for
25453         wrapping other macros to make a portable compound statement from
25454         multiple C statements in the expansion.
25455         (LTDL_SET_PRELOADED_SYMBOLS): Use the above macros to add an
25456         extern declaration for lt_preloaded_symbols, to remove
25457         dependency on undefined symbol from libltdl.dll on cygwin (and
25458         other -no-undefined architectures).
25459         * libltdl/ltdl.c (lt_preloaded_symbols): No longer defined here.
25460
25461         * libtool,m4 (AC_LIBTOOL_SETUP):  The result of lt_cv_need_dllmain
25462         was set to the opposite of what it should be.
25463         * configure.in (AC_LIBTOOL_WIN32_DLL):  Call to this macro is
25464         required for libtool configury to test lt_cv_need_dllmain on
25465         Windows.
25466
25467         * ltconfig.in (opt_cr, mingw*): replace unescaped ? with correctly
25468         escaped and portable \{0,1\} in sed expression.
25469         From Jon Leichter <jon@symas.com>
25470
25471 2000-01-13  Gary V. Vaughan  <gary@gnu.org>
25472
25473         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): Add -I${top_srcdir}/libltdl
25474         to default INCLTDL for VPATH.
25475         (AC_LIBLTDL_INSTALLABLE): ditto.
25476         Reported by Tom Tromey <tromey@cygnus.com>
25477
25478 2000-01-12  Thomas Tanner  <tanner@ffii.org>
25479
25480         * update all copyright notices to 2000
25481
25482         * doc/libtool.texi (using libltdl): document new lt_dlinfo struct,
25483           replace NULL with @code{NULL}, document lt_dlsetdata(),
25484           lt_dlgetdata() and lt_dlgetinfo()
25485         * libltdl/Makefile.am: increment interface version number
25486         * libltdl/configure.in: set version number to 1.1
25487         * libltdl/ltdl.c: make some variables public by moving them
25488           to the info struct, add support for application specific data
25489           within module handles, new lt_dlsetdata(), lt_dlgetdata() and
25490           lt_dlgetinfo() functions,
25491           fix memory leaks, minor cleanups
25492         * libltdl/ltdl.h: ditto
25493         * mdemo/main.c: demonstrate use of lt_dlgetinfo,
25494           improved handling of errors
25495
25496         * ltconfig.in: set hardcode_into_libs = yes for GNU/Hurd, Linux
25497           and Solaris, only hardcode *all* run-paths if hardcode_into_libs
25498           is set to 'all', otherwise hardcode only user-specified rpaths
25499           into libraries
25500         * ltmain.in: minor cleanups, we don't need to add user-specified
25501           rpaths to compile_rpath, finalize_rpath is sufficient
25502
25503         * ltconfig.in: transform linux* -> *linux-gnu* _after_ host_os has
25504           been set! (reported by Bruno Haible <haible@ilog.fr>)
25505
25506         * configure.in: AC_SUBST reload_flag, deplibs_check_method
25507           and file_magic_cmd
25508
25509         * README: use 'libtool --version' instead of 'ltconfig --version'
25510           (suggested by Francios Pinard <pinard@iro.umontreal.ca>
25511
25512 2000-01-10  Gary V. Vaughan  <gary@gnu.org>
25513
25514         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Leave undefined when
25515         not compiling for a Windows target.
25516         * libltdl/ltdl.c (canonicalize_path): New function to
25517         ensure internal paths use '/' directory separators.
25518         (find_file): use canonicalize_path.  Memory management
25519         changed to cope.
25520         (lt_dlopen): ditto.
25521         (free_vars): Removed `dir' and `name', which are now handled
25522         internally.
25523
25524         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Define to '/' or '\\',
25525         as suitable for the target host.
25526         (LTDL_PATHSEP_CHAR): Similarly with ':' or ';'.
25527         * libltdl/ltdl.c: Use LTDL_DIRSEP_CHAR and LTDL_PATHSEP_CHAR
25528         instead of hardcoding throughout.
25529         Reported by Jon Leichter <jon@symas.com>
25530
25531 1999-12-18  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
25532
25533         * ltmain.in: Oops, `largarg' -> `lastarg'.
25534
25535         * ltmain.in (-Wc, -Xcompiler): Implemented in compile mode.
25536
25537         * ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and
25538         finalize_command.
25539         (-Wc, -Wl): Likewise.
25540
25541         * tests/quote.test: Adjust quoting style of -Wl.
25542
25543         * ltmain.in: Oops, `echo' -> `$echo'.
25544
25545         * ltmain.in (-Wl, -Wc): Make commas argument separators, just like
25546         in gcc.
25547
25548         * ltmain.in (libtool_args): Get all arguments properly enclosed in
25549         quotes and backslash-protected when needed.
25550
25551 1999-12-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
25552
25553         * ltdl.m4: Renamed from...
25554         * libltdl/ltdl.m4: that no longer exists.
25555         * configure.in (ACINCLUDE_M4_LIST): Removed libltdl/acinclude.m4.
25556         * Makefile.am (aclocal_macros): Added ltdl.m4.
25557         (libltdl/acinclude.m4): Concatenate libtool.m4 and ltdl.m4.
25558         * bootstrap: Likewise.
25559         * libltdl/Makefile.am (ACLOCAL): Remove the definition.  Relying
25560         upon -I may lead to duplicates.
25561         * doc/libtool.texi: Suggest appending ltdl.m4 to acinclude.m4.
25562         * libtoolize.in: Check AC_LIB_LTDL version number in aclocal.m4.
25563
25564         * libltdl/configure.in (with_auxdir): Do not use it as the
25565         argument of AC_CONFIG_AUX_DIR, automake requires a literal here.
25566         Use AC_CONFIG_AUX_DIRS/DIR_DEFAULT instead.
25567
25568         * libltdl/Makefile.am (ACLOCAL): Define with `-I .', as in
25569         bootstrap.
25570
25571 1999-12-15  Thomas Tanner  <tanner@ffii.org>
25572
25573         * libltdl/configure.in: path to auxiliary files can be specified
25574           using --with-auxdir (idea by Howard Chu <hyc@highlandsun.com>)
25575
25576         * ltmain.in: don't remove multiple occurences from dependency_libs
25577           of a library, otherwise many dependencies would get lost
25578
25579         * bootstrap: use "aclocal -I ." instead of adding the contents
25580           of ltdl.m4 to acinclude.m4
25581
25582 1999-12-13  Gary V. Vaughan  <gary@gnu.org>
25583
25584         * NEWS: updated.
25585         * libltdl/Makefile.am: Use -no-undefined for dll compliance.
25586         * libltdl/configure.in: Use AC_LIBTOOL_WIN32_DLL for dll
25587         compliance.
25588         * libltdl/ltdl.c: Define and use LTDL_GLOBAL_DATA to correctly
25589         export global data symbols from libltdl.dll.
25590         * libltdl/ltdl.h: Define and use LTDL_SCOPE to declare data
25591         symbols as dllexport, dllimport or plain ornary extern depending
25592         in the context in which it is used.
25593
25594         * doc/libtool.texi (Distributing libltdl): document use of
25595         ltdl.m4.
25596         * libltdl/configure.in: Removed header checks, as they are
25597         automatically performed by AC_LIB_LTDL.
25598         * libltdl/ltdl.m4: Added header checks from configure.in, so that
25599         AC_LIB_LTDL is sufficient to compile ltdl.c.
25600         Reported by Stephan Kulow <coolo@kde.org>.
25601
25602         * ltconfig.in (ltdll_obj): fixed typo: objdir -> $objdir
25603
25604 1999-12-12  Gary V. Vaughan  <gary@gnu.org>
25605
25606         * ltconfig.in (cygwin*, mingw*, export_symbols_cmds): keep any
25607         DATA tags associated with symbols by recent dlltool.
25608         (cygwin*, mingw*, archive_expsym_cmds): Honor any DATA tags
25609         found in the symbol list.
25610         Reported by Jon Leichter <jon@symas.com>.
25611
25612 1999-12-10  Gary V. Vaughan  <gary@gnu.org>
25613
25614         From Stephan Kulow <coolo@kde.org>
25615         * libltdl/ltdl.m4:  Add arg 3 to AC_DEFINE's to save the user
25616         from having to hack acconfig.h.
25617
25618 1999-12-06  Gary V. Vaughan  <gary@gnu.org>
25619
25620         * NEWS: Updated.
25621         * TODO: Note some cleanups that are now needed.
25622         * libltdl/configure.in: Use the new macroised tests.
25623         * libltdl/ltdl.m4: New file, macroised tests formerly in
25624         libltdl/configure.in.
25625         Reported by Stephan Kulow <coolo@kde.org>.
25626
25627         From Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
25628         * ltconfig.in:  split off the osf3 section, so that the osf4 and
25629         osf5 sections can add `-msym' to arguments passed to the linker
25630         for shared libs.
25631
25632 1999-12-03  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
25633
25634         * ltconfig.in (ac_compile): Use $ac_ext instead of .c.
25635         (ac_link): Likewise.
25636         (dlfcn.h, ac_try): Do not add filename, it is already in
25637         ac_compile.
25638         Reported by Stephane Conversy <Stephane.Conversy@lri.fr>
25639
25640         * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
25641         works together with fast_install.
25642
25643         * libtool.m4: Use host when --target is not specified.
25644
25645         * configure.in: AC_SUBST variables that are used by ltconfig to
25646         build libtool.
25647
25648         * ltconfig.in (irix6*): Do not override deplibs_check_method
25649         here.
25650
25651         * libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
25652
25653 1999-11-20  Michael Forster  <email@michael-forster.de>
25654
25655         * ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes.
25656
25657 1999-11-29  Gary V. Vaughan  <gary@gnu.org>
25658
25659         * ltconfig.in:  Be friendlier to C++ compilers when testing
25660         for dlopen support.
25661         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
25662
25663 1999-11-26  Gary V. Vaughan  <gary@gnu.org>
25664
25665         * libtool.m4:  better use of $target instead of $host to support
25666         cross compilation.
25667         Reported by Sam Latinga <slouken@devolution.com>
25668
25669 1999-11-16  Thomas Tanner  <tanner@ffii.org>
25670
25671         * configure.in: generate ltconfig and ltmain.sh before configuring
25672           libltdl
25673
25674 1999-11-04  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
25675
25676         * tests/sh.test: New test to detect uses of quotes within
25677         backticks within quotes.
25678         * ltconfig.in, ltmain.in: Fix detected errors.  Mark false
25679         positives with a comment that disables the detector.
25680         Reported by Akim Demaille <akim@epita.fr>
25681
25682         * configure.in: Move ltconfig and ltmain.sh generation back...
25683         * Makefile.am: here.
25684
25685 1999-11-02  Thomas Tanner  <tanner@ffii.org>
25686
25687         * NEWS: updated
25688         * THANKS: added Olly Betts and Pavel Roskin
25689         * doc/libtool.texi: fix typo
25690
25691         * fix major bugs which rendered libtool virtually
25692           unusable (i.e. not portable):
25693         * ltconfig.in: don't hardcode system dependent variables in ltconfig!!
25694           but set sane defaults
25695         * Makefile.am: pass variables from AC_LIBTOOL_SETUP to ltconfig
25696         * libtool.m4: ditto, fix typo in AC_PROG_LD_RELOAD_FLAG
25697
25698         * ltconfig.in: use old_deplibs for archives, too
25699           remove second occurence of sysv5
25700         * ltmain.in: fix typo, fix the second occurence of -DPIC, too
25701
25702         * libltdl/Makefile.am: increment version number, fix typo
25703         * libltdl/ltdl.c (lt_dlsym): don't report an error if the
25704           libltdl-style symbol name wasn't found
25705
25706 1999-11-02  Wolfgang Rapp <ulris@bn-ulm.de>
25707
25708         * ltconfig.in: add support for Unixware (sysv4.2uw2*)
25709
25710 1999-10-29  Gary V. Vaughan  <gary@gnu.org>
25711
25712         * ltmain.in:  Damnit!  Cygwin cvs committed all the
25713         dos line endings.
25714
25715 1999-10-28  Stephane Conversy  <Stephane.Conversy@lri.fr>
25716
25717         * ltmain.in (-DPIC):  changed the order of pic flags a little to
25718         prevent upsetting the sgi c++ compiler.
25719
25720 1999-10-28  Olly Betts  <olly@muscat.co.uk>
25721
25722         * ltconfig.in (opt_cr):  Handle crlf sequences output by the
25723         mingw toolchain.
25724
25725         * libtool.m4:  Third time lucky, with Tor's patch.
25726
25727 1999-10-19  Tor Lillqvist  <tml@iki.fi>
25728
25729         * libtool.m4:  these was a missing `*' in the -mno-cygwin
25730         match.
25731         * ltconfig.in (cygwin, ltdll_obj): fixed a quoting error.
25732         (export_symbols_cmds): added missing cosmetic newline.
25733
25734 1999-10-18  Tor Lillqvist  <tml@iki.fi>
25735
25736         * libtool.m4: test command used == which should be =.
25737         Support -mno-cygwin flag for building mingw32 dlls.
25738         * ltconfig.in (file_magic_cmd): add missing quotes.
25739         (deplibs_check_method): and here.
25740
25741 1999-10-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
25742
25743         * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
25744         specified library is not just a basename.
25745
25746 1999-10-10  Gary V. Vaughan  <gary@gnu.org>
25747
25748         * libtool.m4 (AC_PATH_FILE): new macro replaces
25749         AC_PATH_TOOL_GREP_OUTPUT.
25750         (AC_PATH_TOOL_PREFIX): new macro replaces
25751         AC_PATH_PROG_GREP_OUTPUT.
25752         (AC_LD_RELOAD_FLAG):  migrated from ltconfig.in.
25753         (AC_DEPLIBS_CHECK_METHOD): ditto.
25754         * ltconfig.in (reload_flag): moved to libtool.m4.
25755         (deplbs_check_method): ditto.
25756
25757 1999-10-07  Gary V. Vaughan  <gary@gnu.org>
25758
25759         * libtool.m4 (AC_PATH_PROG_VERSION_GREP): removed in favour of the
25760         more general AC_PATH_PROG_GREP_OUTPUT.
25761         (AC_PATH_TOOL_VERSION_GREP): removed in favour of the more general
25762         AC_PATH_TOOL_GREP_OUTPUT.
25763         (AC_PROG_LIBTOOL):  Search for a working find program in the
25764         user's PATH using the new macros.
25765
25766 1999-10-06  Gary V. Vaughan  <gary@gnu.org>
25767
25768         * NEWS: updtaed.
25769         * ltconfig.in: Accept osf5.
25770         Reported by Sascha Schumann <sascha@schumann.cx>
25771
25772 1999-10-04  Gary V. Vaughan  <gary@gnu.org>
25773
25774         * ltmain.in (-no-install):  This doesn't work on win32 since
25775         the search path for libraries is not encoded in the binary,
25776         and dlls not in $PATH won't be found.  Fall back to -no-fast-install
25777         instead.
25778
25779         * ltmain.in (-no-fast-install):  Wrapper script used to add the
25780         exeext on again when naming the wrapped executable.
25781
25782 1999-10-03  Gary V. Vaughan  <gary@gnu.org>
25783
25784         * ltconfig.in:  Set $FILE to @FILE@ for substitution with
25785         the value found in libtool.m4 at configure time.
25786         * libtool.m4 (AC_PATH_TOOL_GREP_VERSION):  New macro, combines
25787         AC_PATH_PROG and AC_CHECK_TOOL with a test which greps the
25788         output of $ac_dir/${ac_prefix}<tool> --version for a
25789         given regex.
25790         (AC_PATH_PROG_GREP_VERSION):  New macro used by the above.
25791         (AC_LIBTOOL_SETUP): Use the new macros to search the PATH
25792         [starting at /usr/bin] for a file program which accepts
25793         --version and has "file" in its --version output.
25794
25795 1999-10-03  Thomas Tanner  <tanner@ffii.org>
25796
25797         * NEWS: new -no-install flag
25798         * configure.in: fix typo
25799         * doc/libtool.texi(Link mode): document -no-install flag,
25800           correct -no-fast-install docs
25801         * libtool.m4: check for "file" command
25802         * ltconfig.in: don't hardcode /usr/bin/file, remove second
25803           definition of sysv5, replace linkopts -> linker_flags
25804         * ltmain.in: add new -no-install flag, print help for -no-install
25805           and -no-fast-install flags
25806
25807 1999-10-03  Olly Betts <olly@muscat.co.uk>
25808
25809         * ltmain.in: always create output_objdir
25810
25811 1999-10-03  Pavel Roskin  <pavel_roskin@geocities.com>
25812
25813         * libltdl/Makefile.am: don't preserve file attributes when
25814           installing the libltdl sources
25815
25816 1999-10-01  Gary V. Vaughan  <gary@gnu.org>
25817
25818         * configure.in (AC_OUTPUT_COMMANDS): generate ltmain.sh
25819         * Makefile.am (ltmain.sh ltconfig): removed.  Automake inserts the
25820         rules to automatically call config.status.
25821
25822         * libtool.m4: be sure to AC_SUBST values no longer tested in
25823         ltconfig.in.
25824         * ltconfig.in: replaced several of the simple feature tests with
25825         substitutions from config.status.
25826         * Makefile.am (ltconfig): generate ltconfig with config.status.
25827         * configure.in (AC_OUTPUT): generate ltconfig with config.status.
25828
25829 1999-09-30  Donald Anderson  <dda@world.std.com>
25830
25831         * ltconfig.in (sco3.2v5): use pass_all deplibs_check_method
25832         for SCO3.2.
25833
25834 1999-09-29  Gary V. Vaughan  <gary@gnu.org>
25835
25836         * ltconfig.in (whole-archive-flag-spec):  I had been
25837         wondering why my file system was filling up with empty
25838         files named `71'... seems I forgot to hold in the
25839         shift key when redirecting stderr, 2>&1.  Doh!
25840
25841 1999-09-29  Vadim  <vadim@olly.ru>
25842
25843         * ltconfig.in (sysv):  More UW7 support.
25844
25845 1999-09-28  Albert Cheng  <acheng@ncsa.uiuc.edu>
25846
25847         * ltmain.in (shlibpath_var): ensure the variable is non-empty before
25848         exporting it.
25849
25850 1999-09-27  Manfred Weichel  <weichel@global.nacamar.de>
25851
25852         * ltconfig.in (sysv5): Added support required for shared
25853         library linking on SCO UW7.
25854
25855 1999-09-22  Gary V. Vaughan  <gary@gnu.org>
25856
25857         * ltconfig.in (whole-archive-flag-spec): test whether the
25858         version of GNU ld being used understands --whole-archive
25859         before using it.
25860
25861 1999-09-19  Thomas Tanner  <tanner@ffii.org>
25862
25863         * ltmain.in: don't ignore convenience libraries for objects/archives
25864           (temporary hack)
25865
25866 1999-09-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
25867
25868         * ltconfig.in (CDPATH): Set to `:' instead of empty.
25869         * ltmain.in (CDPATH): Likewise.
25870         Reported by Greg McGary <gkm@eng.ascend.com>
25871
25872 1999-08-24  Gary V. Vaughan  <gary@gnu.org>
25873
25874         * ltconfig.in (ltdll.c, impgen.c): Prevent the shell from
25875         expanding variables & backslash escapes when writing these
25876         files to the libtool script.
25877
25878 1999-08-24  Thomas Tanner  <tanner@ffii.org>
25879
25880         * NEWS: mention fixes
25881         * doc/PLATFORMS: GNU/Hurd update
25882         * depdemo: make use of variables
25883         * ltconfig.in: use CC -E when checking for ELF support
25884           on NetBSD (reported by Todd Vierling <tv@pobox.com>),
25885           replace all occurences of 'linkopts' with 'linker_flags'
25886         * ltmain.in: move ltdll.c and impgen.c to ltconfig.in and
25887           only add them to the libtool script if it's necessary
25888
25889 1999-08-24  Boyd Gerber  <gerberb@zenez.com>
25890
25891         * ltconfig.in: add support for UnixWare 7.X.X
25892         * doc/PLATFORMS: add new platforms
25893
25894 1999-08-24  Pavel Roskin  <pavel_roskin@geocities.com>
25895
25896         * doc/libtool.texi: document use of noinst_LTLIBRARIES for
25897           convenience libraries
25898
25899         * ltconfig.in: check for freebsdelf3, not just freebsd3.
25900         Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1
25901
25902         * ltmain.in: enable workaround for freebsdelf3.0
25903
25904 1999-08-24  Bert Driehuis  <bert_driehuis@nl.compuware.com>
25905
25906         * ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
25907
25908 1999-08-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
25909
25910         * libltdl/COPYING.LIB: Update to version 2.1.
25911         * libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.
25912
25913 1999-08-03  Gary V. Vaughan  <gary@gnu.org>
25914
25915         * libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return
25916         stripping.
25917         * ltconfig.in: ditto.
25918         From Olly Betts <olly@muscat.co.uk>
25919
25920 1999-08-02  Olly Betts  <olly@muscat.co.uk>
25921
25922         * doc/libtool.texi (Compile mode): typo correction.
25923         (Link mode): and another.
25924         (Release numbers):  and another.
25925         (Distributing libltdl): and another.
25926         (Test descriptions): and another.
25927         (libtool script contents): and one more.
25928
25929         * libtool.m4 (AC_PROG_LD): strip carriage returns from the
25930         output of gcc -print-prog-name=ld.
25931         * ltconfig.in: ditto.
25932
25933 1999-07-30  Pavel Roskin  <pavel_roskin@geocities.com>
25934
25935         * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
25936         initialised structures are sometimes emitted in the code section.
25937
25938 1999-07-30  Mumit Khan  <khan@xraylith.wisc.edu>
25939
25940         * ltconfig.in:  Read line at a time to avoid tokenisation by
25941         shell.
25942
25943 1999-07-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
25944
25945         * ltmain.in: Fix creation of relative links to object files in
25946         sub-dirs.
25947
25948 1999-07-29  Olly Betts  <olly@muscat.co.uk>
25949
25950         * ltconfig.in(cygwin mingw32, archive_expsym_cmds): Only compile
25951         and link ltdll.c if the libtool.m4 macros discovered that it is
25952         required.
25953
25954 1999-07-26  Olly Betts  <olly@muscat.co.uk>
25955
25956         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops.  Fix some
25957         typos made by Evil Gary while (mis)applying my patch :-).
25958
25959         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP):  On second
25960         thoughts, only probe for -mdll vs -dll on mingw, and revert to
25961         the old `-Wl,--dll -nostartfiles' on cygwin.
25962
25963 1999-07-24  Erez Zadok  <ezk@cs.columbia.edu>
25964
25965         * doc/PLATFORMS (i*86-*openbsd2.5):  New platform.
25966         Slight reordering of other bsd entries.
25967
25968 1999-07-24  Olly Betts  <olly@muscat.co.uk>
25969
25970         * NEWS: Note new user visible changes.
25971         * libtool.m4 (mingw32, AC_LIBTOOL_SETUP): probe for -mdll vs -dll
25972         under cygwin/mingw.
25973         probe whether the cygwin/mingw library supplies a stub DllMain
25974         (but this information isn't yet used).
25975         * ltconfig.in (mingw32, extract_expsyms_cmds): if HOST_CC is set,
25976         use that to build impgen so we can use it when cross-compiling.
25977         use correct entry points for mingw so static C++ constructors get
25978         called for code in the DLL.
25979         * ltmain.in (impgen.c): define O_BINARY to 0 if it is not in the
25980         system headers.
25981
25982 1999-07-24  Bert Driehuis <bert_driehuis@compuware.com>
25983
25984         * ltconfig.in:  Updated bsdi4 soname specs to be more like
25985         linux as discussed on the bsdi mailing list.
25986
25987 1999-07-20  Gary V. Vaughan  <gary@gnu.org>
25988
25989         * configure.in (AC_PROG_RANLIB):  No longer required as we now use
25990         AC_CHECK_TOOL in AC_LIBTOOL_SETUP.
25991         * libtool.m4 (AC_PROG_LIBTOOL):  Pass the $build variable to
25992         ltconfig.
25993         (AC_PROG_RANLIB): replaced with AC_CHECK_TOOL.
25994         * ltconfig.in (build): new variable to hold the build triplet
25995         which is now checked for unless --no-verify is specified.
25996         (--build): new argument to set the build triplet.
25997         (ranlib): Prefer ${host_alias}-ranlib[.exe] if $build is different
25998         to $host.
25999         * doc/libtool.texi (Invoking ltconfig): Document --build option.
26000         * NEWS: Note --build option.
26001
26002 1999-07-19  Erez Zadok  <ezk@cs.columbia.edu>
26003
26004         * doc/PLATFORMS: Updated mostly *bsd platforms.
26005
26006 1999-07-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
26007
26008         * doc/libtool.texi (Porting inter-library dependencies): Typos
26009         Reported by Petter Reinholdtsen <pere@hungry.com>
26010
26011 1999-07-17  Thomas Tanner  <tanner@ffii.org>
26012
26013         * NEWS, TODO: updated (pic flags)
26014         * libtool.m4 (AC_PROG_LIBTOOL): added --with-pic flag
26015         * ltconfig.in: new pic_mode variable and --prefer[-non]-pic flags,
26016           fixed the strip check (reported by Keith Bostic <bostic@bostic.com>)
26017         * ltmain.in (compile mode): build only PIC/non-PIC code depending
26018           on pic_mode
26019         * libltdl/README: document the supported dlopen interfaces
26020         * doc/libtool.texi (tests): documented new tests
26021         * tests/Makefile.am: added new tests
26022         * tests/demo-pic.test: new test to test --with-pic
26023         * tests/demo-nopic.test: new test to test --without-pic
26024         * tests/build-relink2.test: variant of build-relink.test that
26025           uses depdemo
26026
26027 1999-07-09  Olly Betts  <olly@muscat.co.uk>
26028
26029         * doc/libtool.texi (C++ Libraries):  fixed a typo.
26030
26031 1999-07-06  Gary V. Vaughan  <gary@gnu.org>
26032
26033         * README-alpha:  improved the release instructions to mention
26034         actual list addresses for announcements, and urls for upload
26035         locations.
26036
26037 1999-07-03  Thomas Tanner  <tanner@ffii.org>
26038
26039         * doc/PLATFORMS: 1.3b passes all tests on cygwin
26040
26041 1999-07-03  Pavel Roskin <pavel_roskin@geocities.com>
26042
26043         * ltconfig.in: finish_cmds for FreeBSD removed
26044         * depdemo/l3/Makefile.am: install libl3.la into an extra directory
26045
26046 1999-07-02  Gary V. Vaughan  <gary@gnu.org>
26047
26048         * configure.in: bumped version to 1.3c.
26049
26050         GNU libtool 1.3b was released.
26051
26052         * NEWS: inserted todays date.
26053
26054 1999-07-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
26055
26056         * doc/PLATFORMS: Tested on as many platforms as possible for me.
26057
26058 1999-07-01  Thomas Tanner  <tanner@ffii.org>
26059
26060         * NEWS: updated
26061         * doc/PLATFORMS: updated
26062         * changed my email address
26063
26064 1999-06-30  Thomas Tanner  <tanner@ffii.org>
26065
26066         * demo/foo.h: use LT_PARAMS instead of LTDL_PARAMS (this is not libltdl)
26067         * tests/build-relink.test: also check for hardcode_into_libs = yes,
26068           if set, we need to relink at install-time
26069
26070 1999-06-29  Thomas Tanner  <tanner@ffii.org>
26071
26072         * NEWS: mention -no-fast-install, rename dummy to force
26073         * doc/PLATFORMS: 1.3b passes all tests on GNU/Linux,
26074           FreeBSD (2.2.6 and 3.1)
26075         * doc/libtool.texi: it's possible to link libtool libraries
26076           using -L and -l, better documentation of uninstall and clean mode,
26077           rename dummy to force, documented -no-fast-install,
26078           AC_LIBLTDL_* must be called before AC_PROG_LIBTOOL,
26079           documented hardcode_into_libs and striplib/old_striplib,
26080         * ltconfig.in: search for strip program, added hardcode_into_libs
26081           and striplib/old_striplib variables, set strip commands for GNU strip,
26082           on FreeBSD >= 3.2 set hardcode_into_libs to yes,
26083           fast-install mode doesn't work if hardcode_into_libs = yes
26084         * ltmain.in: reimplemented hardcoding into libraries:
26085           new relink mode, preserve all libtool args, relink libraries
26086           when installing if necessary
26087           added -no-fast-install flag, removed unnecessary `dlname'
26088           initialization, use striplib/old_striplib for stripping libraries,
26089           dlname is always soname or in library_names so we don't need
26090           to handle different file names
26091
26092 1999-06-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
26093
26094         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to yes
26095         up to release 3.1, and to no from 3.2 on.
26096         Reported by Pavel Roskin <pavel_roskin@geocities.com>
26097
26098 1999-06-29  Pavel Roskin <pavel_roskin@geocities.com>, Alexandre Oliva  <oliva@dcc.unicamp.br>
26099
26100         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to
26101         yes; tested on 3.1-ELF by Pavel and on 2.2.6 by Alexandre.
26102
26103 1999-06-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
26104
26105         * ltconfig.in (linux-gnu*, deplibs_check_method): Use pass_all on
26106         alpha, x86 and sparc architectures by now, reverting to file_magic
26107         at least on ARM, where it breaks.
26108
26109 1999-06-23  Thomas Tanner  <tanner@ffii.org>
26110
26111         * NEWS: updated
26112         * README: added GNU Hurd to the supported platforms
26113         * doc/libtool.texi: document `-dlpreopen dummy'
26114           instead of `-dlopen dummy'
26115         * libltdl/ltdl.c (strchr): fixed typo (missing star)
26116
26117 1999-06-23  Stephan Kulow <coolo@itm.mu-luebeck.de>
26118
26119         * libltdl/ltdl.c (strrchr): fixed typo (missing star)
26120         * libltdl/ltdl.c (trim): use `const' to silence -Wwrite-strings
26121
26122 1999-06-23  Olly Betts  <olly@muscat.co.uk>
26123
26124         * ltmain.in (ltdll.c): Support for crosscompiling from linux to
26125         mingw32.
26126
26127 1999-06-23  Gary V. Vaughan  <gary@gnu.org>
26128
26129         * ltconfig.in (cygwin, export_symbols_cmds): If there is already
26130         an extracted and compiled ltdll.c, then don't delete, reextract
26131         and recompile.
26132         (cygwin, archive_expsym_cmds): Make sure the ltdll source has been
26133         extracted and compiled before referencing the object, since there
26134         are paths through the code which run archive_expsym_cmds without
26135         running export_symbols_cmds.
26136
26137 1999-06-20  Gary V. Vaughan  <gary@gnu.org>
26138
26139         * ltconfig.in:  moved the test for NM after the test for
26140         no_builtin_flag.
26141
26142 1999-06-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26143
26144         * ltconfig.in: Use sed '$q' instead of sed "" for copying ltmain,
26145         just in case some sed does not support an empty command.
26146
26147         * ltconfig.in (link_static_flag, ac_cv_prog_cc_static): Use the
26148         latter in the test.
26149
26150 1999-06-18  Thomas Tanner  <tanner@ffii.org>
26151
26152         * ltconfig.in (bsdi4, deplibs_check_method): use a less restrictive
26153           regex (reported by Chris P. Ross <cross@eng.us.uu.net>)
26154         * ltmain.in: support `-dlopen dummy', define lt_preloaded_symbols
26155           if dlself != no
26156         * doc/libtool.texi (Compile and Link mode): document it,
26157           documented the -Wc, -Wl flags, libtool does also support non C
26158           source code
26159
26160 1999-06-18  Teun Burgers  <burgers@ecn.nl>
26161
26162         * ltconfig.in: CR/LF fix for broken DJGPP bash
26163         * ltmain.in: CR/LF fix for DJGPP
26164
26165 1999-06-18  Gary V. Vaughan  <gary@gnu.org>
26166
26167         * ltmain.in (outputname): When generating the executable wrapper
26168         script, $outputname already has the $exeext suffix, so we needn't
26169         add it again.
26170
26171 1999-06-16  Gary V. Vaughan  <gary@gnu.org>
26172
26173         * libltdl/configure.in (ac_cv_lib_dl_dlopen): missing "x" in test
26174         comparison corrected.
26175
26176         * libltdl/ltdl.c (sys_wll_open): libltdl expects this function to
26177         fail if it is unable to physically load the library.  Sadly,
26178         LoadLibrary will search the loaded libraries for a match and
26179         return one of them if the path search load fails.  Simulate a
26180         failure in this case for compatibility with the other APIs.
26181         Also, LoadLibrary takes the liberty of adding `.dll' to library
26182         names passed without an extension, we now add a trailing `.' to
26183         prevent this from happening.
26184
26185 1999-06-15  Gary V. Vaughan  <gary@gnu.org>
26186
26187         * libltdl/ltdl.c (sys_wll_close): Strangely enough, Microsoft have
26188         decided that LoadLibrary returns `0' for success, yet FreeLibrary
26189         returns `0' for failure!  The FreeLibrary call used to interpret
26190         `0' as success for both functions.
26191
26192 1999-06-14 Thomas Tanner  <tanner@ffii.org>
26193
26194         * ltconfig.in: use eval when setting have_dlfcn_h, reformatting
26195
26196 1999-06-12 Thomas Tanner  <tanner@ffii.org>
26197
26198         * ltmain.in: store old archives in deplibs and old_deplibs,
26199           retain the order of dependency libraries (even old archives),
26200           determining the absolute directory name didn't work due to a typo,
26201           add the library search paths of all dependency libraries when
26202           linking a library (fixes IRIX 5.2 bug)
26203
26204 1999-06-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
26205
26206         * ltconfig.in: Reverted June 6's patch for new GNU ld output, it
26207         is no longer needed, as ld reverted to the original format.
26208         * NEWS: Likewise.
26209
26210         * ltconfig.in: When testing self-dlopening, test whether dlclose
26211         crashes.  On FreeBSD 3.1, it does.  :-(
26212         * libltdl/configure.in: Likewise.
26213         * NEWS: Note work-around.
26214         Reported by Pavel Roskin <pavel_roskin@geocities.com>
26215
26216 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
26217
26218         * ltconfig.in (exeext): autoconf's AC_EXEEXT uses "no" to indicate
26219         no extension, and we must do the same in order to share the cache
26220         value. Also we must ignore conftest.err which HPsUX (at least)
26221         fills with gratuitous warnings.
26222         (objext): for consistency, do the same as above.
26223         Reported by Pavel Roskin <pavel_roskin@geocities.com>
26224
26225 1999-06-09  Pavel Roskin  <pavel_roskin@geocities.com>
26226
26227         * ltconfig.in (exeext): Use quotes in the test, to prevent a
26228         failure in sh.test.
26229
26230 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
26231
26232         * ltconfig.in: Reordered tests to be more like configure.in's
26233         recommended order (programs first, then libraries, etc.).
26234         Performed a manual ``constant folding pass'' (eg: s/eval "test
26235         \"echo '$''{'lt_cv_dlopen'+set}'`\" != set/test
26236         "${lt_cv_dlopen+set}" != set/).
26237         s/test "${foo+set}" = "set"/test "X${foo+set}" = Xset/g
26238
26239         * ltconfig.in (link_static_flag): Accept, in order of decreasing
26240         preference: the cached value; the default value for the current
26241         host.  Also test that the compiler accepts the flag, and cache
26242         that result too.
26243
26244         * ltconfig.in (pic_flag): Accept, in order of decreasing
26245         preference:  the cached value; the default value for the current
26246         host.  Also test that the compiler accepts the flag, and cache
26247         that result too.
26248
26249 1999-06-08  Gary V. Vaughan  <gary@gnu.org>
26250
26251         * ltconfig.in (LN_S): Accept, in order of decreasing preference:
26252         the cached value; an environment setting; ``ln -s'' if it works;
26253         ``ln'' if ``ln -s'' doesn't appear to work.
26254
26255         * ltconfig.in (objext): Accept, in order of decreasing preference:
26256         the cached value; the result of a test object compilation.
26257
26258         * ltconfig.in (RANLIB): Accept, in order of decreasing preference:
26259         the cached value; an environment setting; the first file called
26260         ``ranlib'' in the user's path.
26261
26262         * ltmain.in (exeext): Use $exeext when working out the names of
26263         programs (but not the wrapper script itself due to a stupidity in
26264         win32 which hardwires the .exe extension to the binary loader!).
26265         * ltconfig.in (exeext): Now that the wrapper script tries to move
26266         executables, we need to know whether they have an extension (ala
26267         AC_EXEEXT).  Since we can't rely on AC_EXEEXT having been called
26268         in configure.in, we must be able to check for ourselves, though we
26269         can look for a cached result incase AC_EXEEXT was called.
26270
26271         * ltconfig.in (cygwin, pic_flag):  Force separate compilation of
26272         objects for dlls vs. objects for static archives.  Using a cpp
26273         macro also allows us to decide whether or not we need to use
26274         dllexport/import declarations.
26275
26276         * ltconfig.in (cygwin, need_version): Set to no, otherwise module
26277         dll's end up with mighty long names!
26278
26279 1999-06-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
26280
26281         * ltconfig.in: Support new GNU ld --help output format.
26282         * NEWS:  Likewise.
26283         Reported by Gaël Quéri <gael@baoule.dyndns.org> and
26284         H.J. Lu <hjl@varesearch.com>.
26285
26286 1999-06-05  Mark Kettenis  <kettenis@gnu.org>
26287
26288         * ltconfig.in: Update support for the Hurd.  Make sure that the
26289         soname includes the major version number and create the right
26290         links.  Allow shared objects without the `lib' prefix and without
26291         version information.
26292
26293 1999-06-02 Nick Rasmussen <nick@jive.org>
26294
26295         * ltmain.in (link): use "$nonopt" as the compiler for
26296           compile/finalize_command
26297
26298 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
26299
26300         * TODO: Remove the short list of people interested in C++
26301         constructors; it's not meaningful, since there are so many more
26302         people requesting this feature, and we just can't maintain it
26303         accurate.
26304
26305 1999-05-27  Pavel Roskin  <pavel_roskin@geocities.com>
26306
26307         * ltconfig.in (GNU Hurd, deplibs_check_method): Use pass_all.
26308
26309 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>, Olly Betts  <olly@muscat.co.uk>
26310
26311         * ltmain.in: Expand convenience libraries when creating reloadable
26312         objects.
26313         * NEWS: Ditto.
26314
26315 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
26316
26317         * NEWS: Mention the two bugfixes below.
26318
26319         * ltmain.in: Only create directory into which to extract
26320         convenience libraries when $convenience is not empty.  It would
26321         always be created on systems that did not support
26322         whole_archive_flag_spec.
26323
26324         * ltconfig.in (export_symbols_cmds): Add $convenience.
26325         (cygwin, export_symbols_cmds): Ditto.
26326         * ltmain.in: Generate export symbol list before expanding
26327         convenience libraries, to avoid passing whole_archive_flag_spec to
26328         $NM.
26329         Reported by Godmar Back <gback@cs.utah.edu>
26330
26331 1999-05-27  David Jones  <jones@mosaid.com>
26332
26333         * libltdl/ltdl.c (LTDL_BIND_FLAGS): Remove BIND_VERBOSE, to avoid
26334         printing error messages.
26335
26336 1999-05-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
26337
26338         GNU libtool 1.3.2 was released.
26339
26340 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
26341
26342         * NEWS: List fixed problems.
26343         * doc/PLATFORMS: Tested for 1.3.2.
26344
26345         * config.guess: Synch with GNU common.
26346
26347         * ltmain.in: Revert to stripping .exe on all platforms.
26348         * TODO: Note about this problem.  Demo is fixed on win32.  Support
26349         `empty' convenience libraries.
26350
26351         * ltconfig.in (solaris*, ld_shlibs): Do not enable shared
26352         libraries with GNU ld 2.8.*, it's broken.  Emit a warning
26353         suggesting an upgrade.
26354         Reported by Brian Ford <ford@vss.fsi.com> and Ronald Pijnacker
26355         <Ronald.Pijnacker@best.ms.philips.com>
26356
26357 1999-05-25  Frank Ch. Eigler <fche@cygnus.com>
26358
26359         * ltmain.in: file_magic check would not avoid cyclic links.
26360
26361 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
26362
26363         * depdemo/main.c, depdemo/l1/l1.c, depdemo/l2/l2.c: K&R-ize.
26364         * depdemo/l3/l3.c, depdemo/l4/l4.c: Likewise.
26365
26366         * ltmain.in: Remove object files before writing to them, to avoid
26367         circular links.
26368         Reported by Ron O'Hara <rono@sentuny.com.au>
26369
26370 1999-05-24 Thomas Tanner  <tanner@ffii.org>
26371
26372         * NEWS: support for installing stripped libraries using GNU strip
26373         * ltconfig.in: set deplibs_check_method=pass_all on FreeBSD,
26374           Linux and Solaris since no one can reproduce the famous deplibs
26375           bug
26376         * ltmain.in: preserve $CC (reported by Tom Tromey),
26377           strip libraries using GNU strip if it's available and the
26378           -s flag was passed to "install"
26379
26380 1999-05-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
26381
26382         * doc/PLATFORMS: Release 1.3.1 passes on GNU Hurd/x86.
26383         Reported by Pavel Roskin <pavel_roskin@geocities.com>
26384
26385 1999-05-23 Thomas Tanner  <tanner@ffii.org>
26386
26387         * ltmain.in: strip off the .exe suffix only on *Win
26388           (Reported by Matthew D. Langston <langston@SLAC.Stanford.EDU>)
26389
26390 1999-05-22 Thomas Tanner  <tanner@ffii.org>
26391
26392         * NEWS: updated
26393         * TODO: -Wc, -Wl, implemented
26394         * AUTHORS: changed my email address
26395         * doc/libtool.texi: fix "wierd" typo :)
26396         * ltmain.in: linking against convenience libraries was broken,
26397           implemented the "-Wc," "-Wl," "-Xcompiler" "-Xlinker" flag for
26398           compiler and linker-specific flags,
26399           add -lc before we do the deplibs check
26400         * ltconfig.in: linkopts -> compiler_flags for $CC and linker_flags
26401           for $LD, link_all_deplibs=yes on IRIX
26402
26403 1999-05-22  Gary V. Vaughan  <gary@gnu.org>
26404
26405         * NEWS: insert todays date alongside 1.3.1 release.
26406         * Makefile.in: use gnu not gnits rules
26407         * config.guess: synch with gnu common & apply Takabatake-san's
26408         MIPS *000 patch.
26409         * config.sub: synch with gnu common.
26410
26411 1999-05-22  Doug Evans  <devans@casey.cygnus.com>
26412
26413         * libltdl/configure.in (dlerror): Fix typo in dlopen found in -ldl
26414         test.
26415
26416 1999-05-21  Pavel Roskin  <pavel_roskin@geocities.com>
26417
26418         * Makefile.am (EXTRA_DIST): Don't distribute instutils.
26419         (install-data-hook): use libltdl/Makefile.am's local-install files
26420         rule.
26421         * libltdl/Makefile.am (local-install-files):  New rule to install
26422         libltdl without creating links or mode 777 directories.
26423         * instutil/*: deleted.
26424
26425 1999-05-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
26426
26427         * doc/PLATFORMS: Updated to 1.3.1 for all platforms I've got.
26428         Added sparc-unknown-linux-gnu.
26429
26430 1999-05-21  Gary V. Vaughan  <gary@gnu.org>
26431
26432         * demo/foo.h: s/PARAMS/LTDL_PARAMS/g
26433         * libltdl/ltdl.h: ditto.
26434         * libltdl/ltdl.c: ditto.
26435
26436         * demo/foo.h: s/__P/PARAMS/g
26437         * libltdl/ltdl.h: ditto.
26438         * libltdl/ltdl.c: ditto.
26439         Reported by Akim Demaille <demaille@inf.enst.fr>
26440
26441 1999-05-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26442
26443         * NEWS: Updated docs.
26444         * TODO: Recommend libtool.m4 to be inserted in acinclude.m4. AIX
26445         4.3.2.0 no longer fails on static dlopening.  GNU DLD no longer
26446         has to support .la files, since libltdl already does.  Convenience
26447         libraries and reloadable objects should be tested in the
26448         testsuite.  We could support some amount of control on the soname
26449         of libraries.
26450         * doc/libtool.texi: Notes about convenience libraries and
26451         automake.  Documented INCLTDL.
26452
26453 1999-05-20 Thomas Tanner  <tanner@gmx.de>
26454
26455         * cdemo/main.c: "Welcome _to_ ..."
26456         * mdemo/main.c: ditto
26457         * libltdl/configure.in: support multiple dlopening mechanisms
26458           at once
26459         * libltdl/ltdl.c: prefix system dependent functions with "sys_"
26460           to avoid symbol conflicts (libdld didn't work)
26461         * libtool.m4 (AC_LIBLTDL_*): set INCLTDL to the path of ltdl.h
26462         * ltconfig.in: check for dlopen with -ldl first
26463
26464 1999-05-19  Gary V. Vaughan  <gary@gnu.org>
26465
26466         * NEWS: Added 1.3.1 news items.
26467         * doc/PLATFORMS: updated the boxes I have access to, to 1.3.1
26468         in preparation for the next release.
26469
26470 1999-05-18  Gary V. Vaughan  <gary@gnu.org>
26471
26472         * ltconfig.in (cygwin*, whole_archive_flag_spec): dlltool chokes
26473         on this, so leave it unset in this case so that the ltmain code
26474         knows it has to unpack convenience archives by itself.
26475
26476 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
26477
26478         * ltmain.in: Do not exit when an unknown library name is passed
26479         passed in, simply warn and continue since some compilers require
26480         -LANG:* like options to work.
26481         Reported by Adam C. Powell, IV <adam.powell@nist.gov>
26482
26483 1999-05-17  Jiro Takabatake  <jiro@din.or.jp>
26484
26485         * ltconfig.in: port to NEC UX/4800.
26486         * NEWS: updated.
26487
26488 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
26489
26490         * ltconfig.in (beos*, deplibs_check_method): set to pass_all.  BeOS
26491         is PIC by default.
26492         Reported by "Shawn T . Amundson" <amundson@gimp.org>
26493
26494         * libltdl/configure.in: Fix test failures on AIX 4.3.2 by checking
26495         for dlopen *with* -ldl first.
26496         Reported by Greg Wooledge <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
26497
26498         * demo/foo.h: Don't set any declspecs until we have full dll
26499         support.
26500
26501 1999-05-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
26502
26503         * ltconfig.in (solaris2.6, whole_archive_flag_spec): Do not use
26504         -Wl for allextract.
26505
26506 1999-05-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
26507
26508         * instutil/chmod: New script to avoid chmod'ing files while
26509         installing libltdl's sources.
26510         * instutil/ln: New script to avoid hard-linking libltdl's sources
26511         in the install tree.
26512         * Makefile.am (EXTRA_DIST): Dist them.
26513         (instal-data-hook): Add srcdir/instutil to the beginning of the
26514         PATH before installing libltdl's sources.
26515
26516 1999-05-09  Gary V. Vaughan  <gary@gnu.org>
26517
26518         * TODO: updated.
26519
26520 1999-05-06  Gary V. Vaughan  <gary@gnu.org>
26521
26522         * Makefile.am (install-data-hook):  make sure the install directory
26523         is not left world writable.
26524         Reported by Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
26525
26526 1999-04-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
26527
26528         * libtool.m4: Use ifelse instead of if.
26529         Reported by David Mazieres <dm@amsterdam.lcs.mit.edu>
26530
26531 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
26532
26533         GNU Libtool 1.3 was released.
26534
26535         * NEWS: Summarize news from 1.2 to 1.3.
26536
26537         * ltmain.in: Save exit status of link_command before removing
26538         symbol table object file.
26539
26540 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
26541
26542         * doc/PLATFORMS: updated my hpux-10.20 and cygwin box entries.
26543
26544 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
26545
26546         * NEWS: Improved support for DU and IRIX too.
26547
26548         * config.sub, config.guess: Updated from GNU common.
26549
26550         * mdemo/configure.in: Move AC_LIBLTDL_CONVENIENCE before
26551         AM_PROG_LIBTOOL, as suggested by autoconf.
26552
26553         * doc/libtool.texi (Distributing libltdl): Document that -static
26554         may cause the same problems on libltdl as -all-static.
26555         * TODO: We might want to fix this in the future.
26556
26557         * doc/libtool.texi: Clear up overfull hbox.
26558
26559         * libltdl/Makefile.am (ltdl.lo): Add dependencies.
26560         * libltdl/configure.in: Clean up some duplicate defines.  Enable
26561         support for multiple dlopening mechanisms.
26562         * libltdl/acconfig.h: New file.  Add #undefs for defines that
26563         would be duplicated.
26564
26565 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
26566
26567         * libtool.m4 (cygwin*|mingw*, DLLTOOL, OBJDUMP, AS): Only expand the
26568         code that makes these configure time checks on hosts that need the
26569         tools *and* if the AC_LIBTOOL_WIN32_DLL macro is used.
26570
26571 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
26572
26573         * ltmain.in (nlist, SYMFILE): Use outputname instead of output for
26574         names within output_objdir.
26575
26576 1999-04-28  Alexandre Oliva  <oliva@dcc.unicamp.br>
26577
26578         * libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC,
26579         AC_ENABLE_FAST_INSTALL): Do not call AC_BEFORE here, they're
26580         AC_REQUIREd by AC_LIBTOOL_SETUP.
26581         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
26582         Call AC_BEFORE here, and now with two arguments, since these do
26583         change the default.
26584         (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE): Fix calls to
26585         AC_BEFORE.
26586
26587 1999-04-28  Gary V. Vaughan  <gary@gnu.org>
26588
26589         * libtool.m4 (ltconfig_enable_win32_dll): pass --enable-win32-dll to
26590         ltconfig if this is set.
26591         (AC_LIBTOOL_WIN32_DLL): New macro required for libtool to attempt
26592         a dll build on win32 hosts.
26593         * ltconfig.in (--enable-win32-dll): new flag for the cli.
26594         (cygwin*|mingw*|os2*, ltconfig_enable_win32_dll): if this is not set
26595         to yes, then do not attempt to build shared libraries.
26596         * doc/libtool.texi: document AC_LIBTOOL_WIN32_DLL.
26597         * NEWS: noted new macro.
26598
26599 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
26600
26601         * libtool.m4 (AC_LIBTOOL_DLOPEN, AC_ENABLE_SHARED,
26602         AC_ENABLE_STATIC, AC_ENABLE_FAST_INSTALL, AC_LIBLTDL_CONVENIENCE,
26603         AC_LIBLTDL_INSTALLABLE): Warn if they appear after
26604         AC_PROG_LIBTOOL.  AC_LIBTOOL_SETUP, actually.
26605         (AC_LIBTOOL_SETUP): Check whether DLOPEN support is to be enabled
26606         at autoconf time, not configure time.  Simplify code and
26607         improve (?) help message about --disable-libtool-lock.
26608
26609 1999-04-27 Thomas Tanner  <tanner@gmx.de>
26610
26611         * NEWS: new clean mode
26612         * THANKS: added Ossama Othman
26613         * doc/libtool.texi: documented the new `clean' mode
26614         * ltconfig.in: set need_version=no on OSF (reported by
26615           Marcus Sundberg <mackan@stacken.kth.se>)
26616         * ltmain.in: allow absolute non-existant -L paths,
26617           always use output_objdir instead of objdir for temporary files,
26618           delete generated temporary symbol lists,
26619           don't add .la twice in the pseudo-library header,
26620           implemented and documented clean mode (deletes libraries,
26621           programs and object files and the files associated with them),
26622           if build_libtool_libs=no and no static library is available,
26623           try to link the program against the shared library,
26624           don't add a statically linked library to the dependency_libs
26625         * ltmain.in (help uninstall): added a missing backslash
26626           after echo (reported by Ossama Othman)
26627
26628 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
26629
26630         * ltmain.in (old_archive_cmds): Iterate on oldobjs to find out
26631         which links to object files we must create.  Do not test for empty
26632         pic_flag to create such links.  Use objext when searching for
26633         object files extracted from convenience library.
26634
26635         * ltconfig.in (compiler_c_o): Make sure the compiler does not
26636         create temporaries in the current directory when output should go
26637         elsewhere.  We must perform locking if it does.
26638
26639 1999-04-27  Gary V. Vaughan  <gary@gnu.org>
26640
26641         * ltmain.in (old_archive_cmds): Ensure that there are always .o
26642         objects available before running old_archive_cmds.
26643
26644 1999-04-26  Erez Zadok  <ezk@cs.columbia.edu>
26645
26646         * doc/PLATFORMS: Updates for netbsd 1.3.3 and 1.4.
26647
26648 1999-04-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
26649
26650         * ltconfig.in (aix4.[01], always_export_symbols): The case pattern
26651         would never match; fixed.
26652         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
26653
26654 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
26655
26656         * libtool.m4 (OBJDUMP): Pass it to ltconfig.
26657         * configure.in: AC_SUBST DLLTOOL, OBJDUMP and AS.
26658         * Makefile.am (libtool, clibtool): Pass them to ltconfig.
26659
26660 1999-04-25  Frank Ch. Eigler  <fche@cygnus.com>
26661
26662         * libtool.m4 (cygwin*): Look for target objdump tool.
26663         * ltconfig.in (cygwin*, file_magic_cmd): Use autoconf-located target
26664         objdump tool.  Track OBJDUMP like DLLTOOL and AS.
26665
26666         * ltconfig.in (cygwin*, deplibs_check_method): Accept
26667         "architecture: i386" as optional suffix, for it is printed on a
26668         separate line sometimes.
26669
26670         * ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C".
26671
26672         * ltmain.in (deplibs_check_method=file_magic): Redirect stderr to
26673         /dev/null, to suppress error messages from target objdump.
26674
26675 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
26676
26677         * ltconfig.in (irix*, soname_spec, library_names_spec): Missing
26678         dots before $versuffix and $major.
26679
26680         * ltconfig.in (solaris*, whole_archive_flag_spec): Use -z
26681         allextract/defaultextract from Solaris 2.6 on.
26682         Reported by Brian Ford <ford@vss.fsi.com>
26683
26684         * ltconfig.in (beos*, allow_undefined_flag): Do not build shared
26685         libraries with undefined symbols.
26686
26687         * ltconfig.in (aix4*, allow_undefined_flag): Set to -berok.
26688         (aix4*, shared_flag): Set to -shared or ${wl}-bM:SRE.
26689         (aix4*, archive_cmds): Use -bexpall.
26690         (aix4*, archive_cmds, archive_expsym_cmds): Use shared_flag and
26691         allow_undefined_flag.
26692         (aix4*, always_export_symbols): Set to yes up to AIX 4.1.*,
26693         because -bexpall is supported from 4.2 on.
26694         Reported by Greg Wooledge
26695         <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
26696
26697         * ltconfig.in (hpux*, hardcode_minus_L): Set to yes.
26698         (hpux*, hardcode_libdir_flag_spec): Do not use +s by default.
26699         (hpux*, shlibpath_overrides_runpath): Set to no.
26700
26701         * ltconfig.in (irix*, osf*, archive_cmds): Write so_locations
26702         within objdir.
26703
26704         * ltconfig.in (irix*, soname_spec): Append $major.
26705         (irix*, library_names_spec): Add new soname.
26706         Reported by David Kaelbling <drk@sgi.com>
26707
26708         * ltconfig.in (irix*, sys_lib_dlsearch_path_spec): /usr/local/lib
26709         is not searched by default.  /usr/lib is searched before /lib.
26710         * ltconfig.in (irix*, sys_lib_search_path_spec): /usr/lib is
26711         searched before /lib.
26712
26713         * ltconfig.in (irix5*, need_lib_prefix, need_version): Set to no,
26714         by unifying with irix6*.
26715
26716         * ltconfig.in (irix*, osf*, deplibs_check_method): Use pass_all.
26717
26718         * ltconfig.in (old_LDFLAGS, old_LIBS): Save and write to comments
26719         in output file.
26720
26721         * ltmain.in (prefer_static_libs): New variable, set to no by
26722         default, but set to yes by -static and -all-static.  Used instead
26723         of build_libtool_libs to decide whether to use a shared or static
26724         version of a library, when both versions are available.
26725
26726 1999-04-25  Boyd Lynn Gerber  <gerberb@zenez.com>
26727
26728         * ltconfig.in (sco3.2v5*): Use LD_RUN_PATH for hard-coding.
26729
26730 1999-04-25  Pavel Roskin  <pavel_roskin@geocities.com>
26731
26732         * Makefile.am (uninstall-local): Remove installed libltdl tree.
26733
26734 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
26735
26736         * demo/Makefile.am (hc-direct, hc-libflag, hc-libpath, hc-minusl):
26737         Added CFLAGS to link commands; SCO OSR needs it for -belf.
26738
26739         * TODO: -Wl and -Wc options.
26740
26741 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
26742
26743         * libltdl/ltdl.c: Remove trivial warnings.
26744
26745 1999-04-22  Frank Ch. Eigler  <fche@cygnus.com>
26746
26747         * ltconfig.in: Correct sed expression that extracts symbols
26748         from cygwin def files.  Ignore demangled C++ names, if any.
26749
26750 1999-04-12  John David Anglin  <dave.anglin@nrc.ca>
26751
26752         * libltdl/ltdl.c (shl_close): shl_t was correct here...
26753         (shl_sym): ... but we have to pass the handle by reference here.
26754
26755 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
26756
26757         * doc/libtool.texi (Invoking ltconfig): Document environment
26758         variables used.
26759
26760         * doc/libtool.texi (Invoking ltconfig): Document --cache-file.
26761
26762         * doc/libtool.texi (Invoking ltconfig): Document
26763         --disable-fast-install, --enable-dlopen, --with-gnu-ld and
26764         --disable-lock.
26765
26766 1999-04-11 Thomas Tanner  <tanner@gmx.de>
26767
26768         * libltdl/configure.in: check for shl_load in libdld
26769         * libltdl/ltdl.c (shl_close, shl_sym): use (shl_t *) instead of shl_t
26770         * ltconfig.in (check for gcc): removed a bogus line,
26771           check for shl_load in libdld
26772         * ltmain.in: added a warning to the header of the .la file
26773           to warn users against deleting the file,
26774           link shared against static libraries if
26775           deplibs_check_method == pass_all
26776
26777 1999-04-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
26778
26779         * libtool.m4 (AC_PROG_LD, AC_PROG_NM): When looking for programs,
26780         try $ac_exeext too, so that they're found on DJGPP/MS-DOS.
26781         * ltconfig.in: Likewise.
26782         Reported by Robert S. Maier <rsm@math.arizona.edu>
26783
26784         * ltconfig.in (Usage): Removed --enable-dlopen-self.
26785         Reported by Pavel Roskin <pavel_roskin@geocities.com>
26786
26787         * ltconfig.in: Moved sysv4 before sysv4.*.
26788         (symcode): Brian's overrider is specific to sysv4, not sysv4*.
26789
26790 1999-04-09 Thomas Tanner  <tanner@gmx.de>
26791
26792         * NEWS, README: Motorola System V 4 support
26793         * doc/PLATFORMS: added mk88-motorola-sysv4
26794         * ltconfig.in: installed patch from Brian Ford <ford@vss.fsi.com>
26795           to support mk88-motorola-sysv4
26796
26797         * doc/libtool.texi: some cleanups in the libltdl documentation
26798
26799 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
26800
26801         * ltconfig.in (--fallback-echo): Do not put an inline document and
26802         an exec in the same if construct; otherwise the inline document
26803         may not be removed.
26804         * ltmain.in (--fallback-echo): Likewise.
26805         Reported by John David Anglin <dave.anglin@nrc.ca>
26806
26807         * dryrun.test: It would still fail at random times, because `cp'
26808         and `mv' are not guaranteed to preserve the timestamps of the
26809         installed files.  Instead of preserving them, just remove them
26810         before the dry uninstall test.  Redirect dry-run output to stderr,
26811         so that it can be easily separated from the regular output.
26812
26813 1999-04-07 Thomas Tanner  <tanner@gmx.de>
26814
26815         * NEWS: support for moved libraries
26816         * libtool.m4: another DJGPP fix
26817
26818 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
26819
26820         * doc/PLATFORMS: Updated to 1.3 for all platforms I've got.  I'll
26821         make sure 1.3 won't be released unless it passes all tests on
26822         those platforms.
26823
26824         * doc/libtool.texi (Compile mode): Document potential problem and
26825         work-around for `-c -o dir/foo.lo'.
26826
26827         * tests/dryrun.test: The constant modifications of libtool would
26828         cause main.o to be updated at the wrong time; the new approach is
26829         to modify the libtool script so that it enables dry run depending
26830         on whether an environment variable is set or not.  I've also moved
26831         `after' and `before' to a directory deep within $objdir, instead
26832         of creating it in ../tests.
26833         * tests/Makefile.am (CLEANFILES): Removed.
26834
26835 1999-04-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
26836
26837         * tests/dryrun.test: We cannot rely on setting LIBTOOL, because
26838         automake may use sub-makes, and the setting will not be propagated
26839         to them on some makes.  Instead, create a dry version of libtool
26840         and switch between it and the original one before and after dry
26841         runs.
26842         * tests/Makefile.am (CLEANFILES): Added libtool-*, created by
26843         dryrun.test.
26844
26845         * tests/dryrun.test: Use cmp instead of diff.
26846         (before, after): Create them within ../tests.
26847         (libtool): Set to `/bin/sh ./libtool' by default, but use LIBTOOL,
26848         SHELL and top_builddir from the environment if available.  For dry
26849         runs, use "$libtool -n".
26850         * tests/Makefile.am (CLEANFILES): Added before and after.
26851         * ltmain.in: Do not create links to object files in dry runs.
26852
26853 1999-04-06 Thomas Tanner  <tanner@gmx.de>
26854
26855         * ltmain.in: added a missing line of the ILD patch
26856
26857         * NEWS: improved DJGPP support
26858         * doc/libtool.texi: removed hardcode_into_libs documentation
26859         * libtool.m4: some DJGPP fixes
26860         * ltconfig.in: ditto, reverted one of my previous patches: we need
26861           to check for NM, removed the hardcode_into_libs support since
26862           no platform seems to support it
26863         * ltmain.in: some DJGPP fixes, removed the hardcode_into_libs support
26864
26865 1999-04-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
26866
26867         * ltconfig.in (netbsd*, GNU ld): Support a.out shared libraries
26868
26869         * Makefile.am (CVS): allow command-line overriding of cvs
26870
26871         * ltconfig.in (exclude_expsyms): Exclude _GLOBAL_OFFSET_TABLE_ by
26872         default, as most a.out platforms use it, and end up in trouble if
26873         we preload it, so it's safer to rule it out by default, and
26874         special case its removal from exclude_expsyms if someone ever
26875         complains.
26876
26877 1999-04-05 Thomas Tanner  <tanner@gmx.de>
26878
26879         * doc/libtool.texi: reorder tests to reflect execution order,
26880           documented dryrun.test and depdemo*
26881         * ltmain.in (lt_preloaded_symbols): dry-run mode bugfix
26882         * tests/dryrun.test: new test to check whether the dry-run
26883           mode works properly
26884
26885         * demo/run.test: removed the unnecessary test
26886         * demo/Makefile.am: ditto
26887         * ltmain.in: set the DLL search path on cygwin,mingw and os2
26888
26889 1999-04-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
26890
26891         * ltconfig.in (sunos4*, GNU ld): -Bstatic is not enough for
26892         deplibs.test to work with GNU ld; -Bshareable is needed here.
26893
26894         * ltconfig.in (ld_shlibs, amigaos*): Disable shared libs with
26895         native ld too.
26896
26897         * ltconfig.in (sunos4*, GNU ld): Reordered.
26898
26899         * ltconfig.in (archive_cmds, sunos4*): Revert to -Bstatic; the
26900         native linker doesn't even support -Bshareable, only GNU ld does.
26901         Do not use `gcc -shared' in archive_cmds, it breaks deplibs.test.
26902
26903         * ltconfig.in: if ld_shlibs=no, set can_build_shared=no too,
26904         otherwise it will just be disregarded.  This would cause
26905         netbsd/m68k with GNU ld a.out, and certainly many other platforms,
26906         to incorrectly believe that shared libraries were supported, while
26907         archive_cmds was empty, causing shared libraries not to be created
26908
26909 1999-04-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
26910
26911         * NEWS: improved support for AIX and HP/UX
26912
26913 1999-04-03 Thomas Tanner  <tanner@gmx.de>
26914
26915         * NEWS: updated
26916         * libtool.m4: check for main in libm instead of cos
26917         * ltmain.in: cosmetic fixes, don't try to link libraries only once
26918           (although it's not necessary on many platforms and looks ugly...),
26919
26920 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
26921
26922         * ltmain.in (convenience): fixed race condition when more than one
26923         library was linked with the same convenience library by
26924         uniquifying the extract directory.  It is now named after the new
26925         library *and* the old one, and lives in the objdir of the new one.
26926
26927         * ltmain.in (-L*): do not abort just because a directory specified
26928         with -L does not exist; just warn and discard it
26929
26930         * depdemo/l1/Makefile.am (AUTOMAKE_OPTIONS): no-dependencies
26931         * depdemo/l2/Makefile.am (AUTOMAKE_OPTIONS): ditto
26932         * depdemo/l3/Makefile.am (AUTOMAKE_OPTIONS): ditto
26933         * depdemo/l4/Makefile.am (AUTOMAKE_OPTIONS): ditto
26934
26935         * ltconfig.in (archive_cmds, sunos4*): where we used -Bstatic, we
26936         should have been using -Bshareable
26937
26938         * demo/Makefile.am (CLEANFILES): clean EXTRA_* from deplibs-check
26939
26940         * libtool.m4 (LDFLAGS, LIBS): pass them to ltconfig, for the tests
26941         that involve linking
26942         * Makefile.am (LDFLAGS, LIBS, libtool, clibtool): ditto
26943         * tests/Makefile.am (CFLAGS, CPPFLAGS, LDFLAGS, LIBS): set
26944         (LDFLAGS, LIBS, TESTS_ENVIRONMENT): pass them down
26945
26946 1999-04-02  Erez Zadok  <ezk@cs.columbia.edu>
26947
26948         * doc/PLATFORMS: 1.2f ok on various versions of hpux cc
26949
26950 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
26951
26952         * ltconfig.in (link_all_deplibs): set to unknown by default
26953         * ltmain.in: test != no, not = yes
26954         * doc/libtool.texi: document unknown
26955
26956 1999-04-01 Thomas Tanner  <tanner@gmx.de>
26957
26958         * doc/libtool.texi: documented deplibs.test
26959
26960         * demo/Makefile.am: moved testsuite specific declarations to the end,
26961           the deplibs check is now optional
26962         * libltdl/configure.in: read libtool --config only once,
26963           merged AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE from libtool.m4
26964         * libtool.m4: AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE were not
26965           used, lt_dlopen and silent may be empty, AC_SYS_LIBTOOL_CYGWIN
26966           no longer necessary
26967         * ltconfig.in: NM is already checked in libtool.m4,
26968         * ltmain.in: always link all static dependency_libs
26969         * tests/Makefile.am: added deplibs.test
26970         * tests/demo-exec.test, demo-inst.test: removed hell0
26971         * tests/deplibs.test: new test to test the deplibs_check_method
26972
26973 1999-03-31 Thomas Tanner  <tanner@gmx.de>
26974
26975         * ltmain.in: always link a library before its dependency libs
26976         * mdemo/Makefile.am: test -export-symbols-regex
26977
26978 1999-03-30 Thomas Tanner  <tanner@gmx.de>
26979
26980         * doc/libtool.texi: fixed a typo
26981         * libtoolize.in: add the libtool scripts to libltdl.tar.gz
26982         * libtool.m4: don't AC_SUBST(USE_SYMBOL_UNDERSCORE),
26983           AC_CHECK_LIBM sets LIBM, AC_LIBLTDL_INSTALLABLE doesn't work
26984           when libltdl is already installed
26985         * *demo/Makefile.am: use LIBM
26986         * *demo/configure.in: AC_SUBST LIBM
26987         * libltdl/configure.in: use ac_cv_sys_symbol_underscore instead of
26988           USE_SYMBOL_UNDERSCORE
26989         * ltconfig.in: added link_all_deplibs variable
26990         * doc/libtool.texi: document it
26991         * ltmain.in: always search for libname.la - don't eval libname_spec,
26992           when linking libraries against static ones just print a warning
26993           and add them to dependency_libs, add -lc before deplibs,
26994           always link all dependencies of a static library or if
26995           link_all_deplibs is yes, hardcode library paths if
26996           hardcode_into_libs is no, don't link against dependency_libs
26997           that already are deplibs
26998
26999 1999-03-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
27000
27001         * ltconfig.in (aix4*, collect2name): make sure collect2 exists
27002         before running string on it, to avoid errors on old gccs
27003         Reported by Erez Zadok <ezk@cs.columbia.edu>
27004
27005         * ltconfig.in (aix4*, hardcode_libdir_flag_spec): unless we're
27006         using gcc with old collect2, use -b libpath to hardcode the
27007         library search path
27008
27009         * ltmain.in, ltconfig.in: reverted most of the quoting changes
27010         from 1999-03-25; Gary's delay_variable_subst patch from 1999-02-19
27011         obviates it.  Keep only quoting of $PATH, for uniformity with
27012         other systems that already did it
27013
27014 1999-03-29  Gary V. Vaughan  <gary@gnu.org>
27015
27016         * libltdl/ltdl.c (lt_dladdsearchdir): Forgot to mallocate the
27017         extra byte of memory for the teminating NUL, and forgot to
27018         strcpy the original path in to the new memory before appending
27019         the new path compononent.
27020
27021 1999-03-27 Thomas Tanner  <tanner@gmx.de>
27022
27023         * NEWS: updated
27024         * README: updated (BeOS support, no longer shared libraries
27025           support for AmigaOS), cleanups, we have now two mailing lists
27026         * REAMDE-alpha: autogen -> bootstrap, we have now two mailing lists
27027         * THANKS: added Xavier Pianet
27028         * doc/PLATFORMS: BeOS works
27029         * doc/libtool.texi: we have now to two mailing lists,
27030           updated -dlopen self documentation, documented libltdl's license,
27031           put each author in a separate line,
27032           inter-library dependencies on uninstalled libtool libraries are
27033           now supported, cleanups and minor corrections
27034         * libltdl/COPYING.LIB: new file
27035         * libltdl/ltdl.[ch]: added special exception to the LGPL license
27036         * libtool.spec: removed, it was outdated
27037         * Makefile.am: removed libtool.spec
27038         * ltmain.in: use TMPDIR when possible, create a subdirectory
27039           in the temporary directory, added -export-symbols-regex to the help,
27040
27041 1999-03-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
27042
27043         * demo/Makefile.am: create a static library, link two libtool
27044         archives with it, then link the program hell0 with both
27045         * demo/hell1.c, demo/hell2.c: dummy files used to create the
27046         libtool archives without introducing symbol conflicts
27047         * tests/demo-exec.test, tests/demo-inst.test: run the new program
27048         * ltconfig.in (irix5*, irix6*, deplibs_check_method): pass_all
27049
27050         * ltmain.in ($PATH): instead of modifying the PATH, better prevent
27051         its expansion the first time *_cmds variables are eval'ed.  Modify
27052         $show within loops that eval them so as to expand variables
27053         * ltconfig.in (*_cmds): quote $ so that they're not expanded by
27054         the first eval
27055
27056 1999-03-25  Gary V. Vaughan  <gary@gnu.org>
27057
27058         * ltmain.in ($PATH):  Expand any tildes in the users path to the
27059         contents of $HOME to avoid problems with *_cmds splitting and
27060         evaluation.
27061
27062 1999-03-24 Thomas Tanner  <tanner@gmx.de>
27063
27064         * TODO: support -dlopen for libraries
27065         * doc/PLATFORMS: Erez Zadok reported that libtool works on bsdi 4.0.1
27066         * doc/libtool.texi (libltdl): libltdl supports BeOS
27067         * libltdl/ltdl.c: shlib_ext was declared even if LTDL_SHLIB_EXT
27068           didn't exist, partially reverted my previous patch: BeOS will
27069           automatically search in ADDON_PATH
27070         * ltmain.in: don't allow relative run-paths, fixed a typo in a warning,
27071           ignore -dlopen self for libraries and objects,
27072           only accept -L paths that exist, minor cleanups,
27073           bugfix: add -lc for normal libraries, not convenicence libraries
27074           removed offensive warnings/comments
27075
27076 1999-03-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
27077
27078         * ltconfig.in (ld_shlibs, amigaos*): disable shared libraries
27079
27080 1999-03-23  Gary V. Vaughan  <gary@gnu.org>
27081
27082         * libltdl/configure.in: the sed expression for finding the shared
27083         library extension used to think the . in [.] for the cygwin
27084         shared_library_names_spec was the start of the extension!!  We now
27085         remove anything in square brackets (assuming that the square
27086         brackets delimit a sed or expr expression which is not part of the
27087         extension) before looking for the extension.
27088
27089         * TODO (cygwin):  food for thought re: mutually dependant dlls.
27090
27091 1999-03-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
27092
27093         * tests/build-relink.test: if we relink and have hardcode_direct,
27094         removing an uninstalled library breaks an uninstalled program
27095
27096         * doc/libtool.texi: documented convenience libraries
27097         * TODO: removed entry about it
27098
27099         * tests/*-unst.test: if directory is not configured, skip it
27100         * tests/demo.test, tests/mdemo.test: unused, removed
27101         * tests/depdemo.test: ditto
27102
27103 1999-03-20 Thomas Tanner  <tanner@gmx.de>
27104
27105         * doc/libtool.texi (link mode): documentation for -module updated
27106         * ltconfig.in: fast-install mode doesn't work for
27107           hardcode_into_libs=yes
27108         * ltmain.in: bugfix: "-dlopen self [-all]-static" wouldn't use
27109           dlopen_self_static, automatically enable -export-dynamic when
27110           using "-dlopen self", always make run-paths absolute,
27111           ignore -lc only on platforms that don't have such a library,
27112           cleanups in the ILD code, find even installed libtool libraries
27113           that were moved, before generating the DLL-import library we need
27114           to set libname, improved hardcoding of shlibpath for libraries,
27115           don't generate an installable pseudo-library for convenience
27116           libraries, bugfix: export_symbols would be removed immediately
27117           before it is used
27118
27119 1999-03-19 Thomas Tanner  <tanner@gmx.de>
27120
27121         * use the same header in all configure.in's and Makefile.am's
27122         * NEWS: improved support for BeOS and Cygwin
27123         * TODO: ILD branch was merged, all internal variables and macros
27124           are now documented
27125         * demo/Makefile.am: use $(LIBS) instead of -lm
27126         * doc/libtool.texi: documented new variable hardcode_into_libs
27127           and thread_safe_flag_spec, renamed all AM_ENABLE/DISABLE_* macros
27128           to AC_*, documented AC_DISABLE_FAST_INSTALL and AC_LIBTOOL_DLOPEN
27129         * libltdl/ltdl.c: added two new error messages (cannot_open_error,
27130           cannot_close_error), use them where approriate,
27131           BeOS support (thanks to Xavier Pianet), on BeOS search modules
27132           additionally in ADDON_PATH
27133         * libtool.m4: rewrote AC_CHECK_LIBM: BeOS and Cygwin don't have
27134           libm and *-ncr-sysv4.3* requires libmw
27135         * ltconfig.in: don't check for LoadLibrary, hardcode dlopen
27136           configuration for BeOS and Cygwin
27137         * ltmain.in: fix sourcing of .la files on Solaris
27138           (patch by Raja R Harinath)
27139
27140 1999-03-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
27141
27142         * ltconfig.in (sunos4*, with_gnu_ld, hardcode_minus_L): remove, we
27143         have -rpath
27144         (aix4*, without_gnu_ld, hardcode_shlibpath_var): unsupported is
27145         default
27146         (hpux9*, hpux10*, hpux11*, archive_cmds): drop +s, unneeded here
27147         (hpux9*, hpux10*, hpux11*, hardcode_libdir_flag_spec): add +s
27148         before +b
27149         (hpux9*, hpux10*, hpux11*, shlibpath_overrides_runpath): since +s
27150         appears before +b, set it to yes
27151         (hardcode_shlibpath_var, hardcode_action): do not use
27152         shlibpath_var to specify the compile-time search path; it loses,
27153         and we may end up linking with pre-installed older versions of
27154         libraries instead of yet-to-be-installed ones
27155         (*, hardcode_direct, hardcode_minus_L): remove entries that set
27156         them to no, that is default
27157
27158         * demo/Makefile.am (hc-direct, hc-libpath, hc-minusL): link with
27159         $$hardcode_libdir_flag_spec, if available, with libdir=$(libdir),
27160         to make sure the hardcode_* variables will produce the expected
27161         results even in the presence of a hardcoding flag; depend on
27162         libhello.la having been installed already
27163         (hc-libflag): link with the installed library, but try to
27164         hard-code the uninstalled one
27165         * doc/libtool.texi: document the changes
27166
27167         * tests/*.test: when a test fails, skip tests that depend on it.
27168         If a certain configuration is not supported, skip all its tests.
27169
27170         * doc/libtool.texi: reorder tests to reflect execution order
27171
27172         * tests/noinst-link.test: new test
27173         * tests/Makefile.am (TESTS): added noinst-link.test
27174         * doc/libtool.texi: document it
27175
27176 1999-03-19  Gary V. Vaughan  <gary@gnu.org>
27177
27178         * ltmain.in (dependency_libs): There is no reason to infer that
27179         the pseudo library is invalid if dependency_libs='' at
27180         install-time, or else libltdl/libltdl.la is invalid!!
27181
27182 1999-03-18  Thomas Tanner  <tanner@gmx.de>
27183
27184         * merged my inter-library dependencies code from the ILD branch:
27185         * NEWS: inter-library dependencies are now supported
27186         * configure.in: add the depdemo subdirectory
27187         * depdemo/*: new demo to demonstrate inter-library dependencies
27188         * tests/depdemo*: new tests for depdemo
27189         * ltconfig.in: added hardcode_into_libs (whether library paths
27190           should be hardcoded into the libraries),
27191           it currently defaults to 'no'
27192         * ltmain.in: new internal 'relink' mode to relink libraries
27193           on platforms with hardcode_into_libs=yes, save command line
27194           arguments in libtool_args, accept relative -L directories,
27195           ignore -lm on BeOS and Cygwin, always ignore -lc,
27196           handle -l, -L and .la arguments later, always make the library
27197           installation directory (-rpath) absolute, in relink mode don't
27198           delete the not-relinked library and exit immediately after relinking,
27199           try to find already-installed libtool libraries that were specified
27200           using -l, support hardcoding of library paths into libraries too,
27201           export shlibpath before linking libraries, and a lot of other
27202           big changes that I don't want to describe here... please read
27203           the source.
27204
27205         * merged Gary's Win32 code from the ILD branch:
27206         * NEWS: Win32 DLLs are now supported
27207         * TODO: removed .a library namespace clash for win32.  It is
27208           now resolved.
27209         * ltconfig.in (cygwin, library_names_spec):  removed $libname.a.
27210           Creating a dll with libtool no longer creates an import library.
27211         * ltconfig.in (extract_expsyms_cmds): Create $objdir if it does
27212           not exist -- i.e. we need to generate import an import library
27213           in a directory which has no libs of its own.
27214         * doc/libtool.texi (old_archive_from_expsyms_cmds,
27215           extract_expsyms_cmds): documented these new variables.
27216         * ltconfig.in (extract_expsyms_cmds): New variable.  Commands to
27217           extract the exported symbol list from a dll.
27218           (old_archive_from_expsyms_cmds): New variable.  Commands to build
27219           an old archive from the extracted expsyms list.
27220         * ltmain.in: run the cmds in extract_expsyms_cmds and
27221           old_archive_from_expsyms_cmds as necessary.
27222         * ltconfig.in (cygwin, old_archive_from_new_cmds): no longer
27223           required.
27224         * ltconfig.in (cygwin, shlibpath_overrides_runpath): I'm not even
27225           sure whether win32 honours the runpath at all when searching for
27226           a dll to load!  Anyway, when set to yes this prevents a gratuitous
27227           warning.
27228         * ltmain.in (deplib): The cygwin environment doesn't actually have
27229           -lm, and although the linker fakes having one, specifiying it to
27230           libtool will break ILD, so we ignore it when generating
27231           dependencies.
27232
27233 1999-03-17  Gary V. Vaughan  <gary@gnu.org>
27234
27235         * doc/PLATFORMS: Thanks to Alexandres changes below, both my
27236         hp boxes pass the entire test suite.
27237
27238 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
27239
27240         * ltconfig.in (hpux*, hardcode_minus_L): should be no, we have +b
27241         (hpux*, hardcode_libdir_separator): set to colon
27242
27243 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
27244
27245         * doc/PLATFORMS: egcs is gcc; updates from Erez Zadok
27246
27247 1999-03-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27248
27249         * ltmain.in (deplibs, beos*): don't append -lc
27250         Reported by Xavier Pianet <xavier@xingo.com>
27251
27252         * tests/build-relink.test (hardcode_action): when set to relink,
27253         skip the test with lt-hell
27254
27255         * Makefile.am (EXTRA_DIST): add mkstamp
27256         Reported by Xavier Pianet <xavier@xingo.com>
27257
27258         * Makefile.am (EXTRA_DIST): add ChangeLog.0
27259
27260 1999-03-16  Thomas Tanner  <tanner@gmx.de>
27261
27262         * doc/libtool.texi: some minor corrections to the "-dlopen self"
27263           documentation
27264         * tests/Makefile.am: sorted by name, added assign.test
27265         * ChangeLog: started new file
27266
27267         * ltconfig.in: some cosmetical changes
27268         * ltmain.in: ditto
27269
27270 1999-03-15  Alexandre Oliva  <oliva@dcc.unicamp.br>
27271
27272         * configure.in, libtool.spec, NEWS: bump to 1.3a
27273         * Branched for release 1.3 (branch-1-3)
27274         * configure.in, libtool.spec, NEWS: bump to 1.2g
27275
27276         * configure.in, libtool.spec: bump to 1.2f
27277         * doc/PLATFORMS: ditto
27278         * NEWS: libtool 1.2f released
27279
27280         * ltmain.in: silence ``unbug'' :-) detected by sh.test
27281
27282 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
27283
27284         * TODO: we now use full pathnames for `file'
27285
27286 1999-03-14  Thomas Tanner  <tanner@gmx.de>
27287
27288         * TODO: libltdl is now documented
27289         * doc/libltdl.texi (linking with installed libtool libraries):
27290           fixed typo
27291         * doc/libltdl.texi (libltdl): added documentation for building
27292           libtool modules and examples how to embed libltdl
27293         * ltmain.in: don't ignore user-specified run-paths (fixed it
27294           at the right place)
27295
27296 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
27297
27298         * ltmain.in (deplibs_check_method=none): discard -L and -R
27299         switches when testing whether deplibs contains some library
27300
27301 1999-03-14  Erez Zadok  <ezk@cs.columbia.edu>
27302
27303         * config.sub: recognize hppa2.0w, yet to be installed at GNU
27304
27305         * config.guess: minor update for FreeBSD-elf, yet to be installed
27306         at GNU
27307
27308 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
27309
27310         * ltconfig.in (bsdi4*, sys_lib_search_path_spec,
27311         sys_lib_dlsearch_path_spec): fix thinko in variable names; add
27312         standard directories
27313
27314         * ltmain.in (exclude_expsyms): exclude symbols before sorting,
27315         otherwise only the sorted list will have them excluded
27316
27317         * ltconfig.in (file_magic_cmd, file_magic_test_file, freebsd-elf*,
27318         bsdi4*): use full pathnames when possible
27319
27320         * Makefile.am (all-recursive): depend on ACINCLUDE_M4_LIST
27321         (all-local, check-local): remove, unused
27322
27323         * doc/PLATFORMS: updated platforms tested on 1.2f-pre; clean up;
27324         reorder; untabify
27325
27326         * config.guess, config.sub: updated from GNU common
27327
27328         * doc/libtool.texi: notes on thread-safety problems of
27329         libltdl/dlopen on GNU/Linux and FreeBSD
27330
27331         * ltconfig.in (aix3*, aix4*): GNU ld on AIX is very broken: it
27332         cannot create working shared libraries.  Print a warning
27333         suggesting the user not to use it and disable shared libraries.
27334
27335 1999-03-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
27336
27337         * ltconfig.in (global_symbol_to_cdecl): was reset before trying
27338         `symprfx=_', rendering the test with `_' useless
27339
27340         * doc/libtool.texi (AM_PROG_LIBTOOL): eliminate overfull boxes
27341
27342         * doc/libtool.texi: complete dlopening/libltdl documentation
27343
27344         * ltconfig.in (osf3*, osf4*, deplibs_check_method): pass_all does
27345         not really work; use file_magic instead.
27346         (osf3*, osf4*): customize sys_lib_[dl]search_path_spec
27347
27348         * ltconfig.in (file_magic_test_file): new variable; if set, it
27349         will be used as an argument for $file_magic_cmd to test whether
27350         the regex in deplibs_check_method matches its output
27351         (file_magic_cmd): use full pathnames whenever possible
27352
27353         * ltconfig.in (sys_lib_dlsearch_path_spec): new variable, that
27354         lists the system *run-time* search path.  Listed directories are
27355         not implicitly hard-coded into executables.
27356         * ltmain.in: use it, but *never* discard -R flags
27357         * doc/libtool.texi: document it
27358         * NEWS: ditto
27359         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
27360
27361         * tests/sh.test: look for `$Xsed' without `$echo "X...'
27362         * ltconfig.in, ltmain.in: fixed a few such occurrences
27363
27364         * ltmain.in (-static, -all-static): revert March 11's patch, I was
27365         barking up the wrong tree
27366
27367 1999-03-12  Thomas Tanner  <tanner@gmx.de>
27368
27369         * libltdl/ltdl.c: removed FILENAME_MAX since LTDL_FILENAME_MAX
27370           is sufficient and doesn't break HP/UX
27371
27372 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
27373
27374         * ltconfig.in: (global_symbol_pipe) extract symbol tag from the
27375         output of NM too
27376         (global_symbol_to_cdecl): new variable; convert the output of
27377         global_symbol_pipe to valid C declarations; on HP/UX, convert
27378         text symbols to function declarations
27379         * libtool.m4: similar modifications
27380         * doc/libtool.texi: document new variable
27381         * ltmain.in: use global_symbol_to_cdecl to generate lt_dlpreopened
27382         symbols; avoid extracting symbol lists from dlpreopened files
27383         twice; do not filter symbols from dlpreopened libraries
27384         * TODO: fixed HP/UX dlpreopening problem
27385
27386         * ltmain.in (-static, -all-static): set dlopen_self to
27387         $dlopen_self_static regardless of link_static_flag or pic_flag
27388
27389         * ltmain.in: FreeBSD bug that needs symbol table compiled with
27390         -fPIC is fixed in release 3.1; use it only for 2.* and 3.0
27391
27392 1999-03-11  Thomas Tanner  <tanner@gmx.de>
27393
27394         * ltmain.in: when building a library it doesn't make
27395           sense to remove a relinked program ("lt-" prefix)
27396
27397 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
27398
27399         * mdemo/main.c (main, test_dl, test_dlself): propagate error
27400         conditions better, to avoid false positives
27401
27402         * */configure.in: AC_SUBST(LIBTOOL_DEPS)
27403         * */Makefile.am $(OBJECTS): depend on libtool
27404         (libtool): rebuild automatically
27405
27406         * ltconfig.in: set dlopen_* variables to unknown when appropriate
27407         * ltmain.in: only emit warning about lack of AC_LIBTOOL_DLOPEN if
27408         *all* dlopen_* variables are set to unknown
27409
27410 1999-03-11  Thomas Tanner  <tanner@gmx.de>
27411
27412         * ltmain.in: delete the old output files (incl. the relinked binary)
27413           before linking.
27414
27415         * ltconfig.in: replaced `configure' with $progname and all
27416           line numbers with @LINENO@
27417
27418 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
27419
27420         * libltdl/ltdl.c (strdup): cannot return str when it's NULL
27421         because of const correctness
27422
27423 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
27424
27425         * libltdl/ltdl.c (strdup): always use our own, because the
27426         standard strdup won't use lt_dlmalloc
27427
27428         * ltconfig.in (dlfcn.h): function definition may cause warnings;
27429         define variable instead
27430
27431         * ltmain.in: properly create an export file for a program,
27432         avoiding error messages about not finding it
27433
27434         * TODO: need to document AC_LIBLTDL_*; static self dlopening
27435         problem fixed
27436
27437         * libtool.m4 (AC_LIBTOOL_DLOPEN): just set lt_dlopen=yes
27438         (AC_LIBTOOL_SETUP): if lt_dlopen=yes, add --enable-dlopen to
27439         libtool_flags; drop --enable-dlopen-self
27440         * ltconfig.in: perform all the dirty work of testing for dlopening
27441         support, because we need platform-dependent equivalents for
27442         -export-dynamic, for self dlopening, and -static, for static self
27443         dlopening
27444         (dlopen_self_static): new configuration variable that is set to
27445         yes only if static programs can dlopen themselves
27446         * ltmain.in (-static, -all-static): dlopen_self=dlopen_self_static
27447
27448         * libltdl/configure.in (libltdl_cv_need_uscore): do not assume
27449         dlfcn.h and LTDL_LAZY exist; use LTDL_GLOBAL and LTDL_LAZY_OR_NOW.
27450         This test is likely to fail if self-dlopening does not work,
27451         especially because we do not link the program with
27452         -export-dynamic.  Let's just hope that platforms whose symbol
27453         names start with underscores will also accept underscores for
27454         dlopen.  We should probably use libtool to compile and link this
27455         test, so that we can use -export-dynamic.
27456
27457         * mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h
27458
27459         * configure.in: fix AC_OUTPUT_COMMANDS for ltconfig and ltmain.sh
27460         so that they work if srcdir is relative too
27461
27462         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
27463         avoid introducing multiple --enable options when re-running
27464         config.status
27465         * libltdl/configure.in: if enable_ltdl_* is not set, assume no
27466         * configure.in: if enable_ltdl_install is not set, enable it
27467
27468         * libltdl/configure.in: only assume implicit installation if
27469         libltdl was libtoolized.  If not, print a warning message
27470         suggesting the use of --enable-ltdl-install or of one of the
27471         AC_LIBLTDL_* macros.
27472
27473         * libtool.m4 (AC_LIBTOOL_SETUP): new macro, that does all the
27474         configure-work that AC_PROG_LIBTOOL used to do; add
27475         --cache-file=$cache_file to libtool_flags
27476         (AC_PROG_LIBTOOL): call AC_LIBTOOL_SETUP, save the cache, run
27477         ltconfig and reload the cache
27478         * configure.in: run AC_LIBTOOL_SETUP, then set LIBTOOL_FLAGS to
27479         libtool_flags
27480         * ltconfig.in: support --cache-file switch.  If it is used, load
27481         the cache in the beginning and save it just before terminating
27482
27483         * tests/Makefile.am (TESTS): run demo-nofast before demo-shared
27484
27485         * configure.in: create ltconfig and ltmain.sh at the end of
27486         config.status, if they do not exist.  This fixes the bootstrap
27487         problem reported by Erez Zadok <ezk@cs.columbia.edu>
27488
27489 1999-03-10  Thomas Tanner  <tanner@gmx.de>
27490
27491         * NEWS: sorted by importance
27492         * Makefile.am: set LIBTOOL_FLAGS when generating libtool
27493         * configure.in: check for dlopen support and set LIBTOOL_FLAGS
27494           accordingly
27495
27496         * configure.in: fix spacing for --disable-ltdl-install,
27497           always configure libltdl, add libltdl/acinclude.m4 to
27498           ACINCLUDE_M4_LIST, disable installation of libltdl if necessary
27499         * libltdl/Makefile.am: set version info for libltdl.la
27500         * libltdl/configure.in: don't check whether
27501           enable_ltdl_convenience/install was set so that libltdl
27502           can be used as independent package (libltdl.tar.gz) without
27503           the need to use --enable-ltdl*
27504         * libltdl/ltdl.c: minor cleanups, allocate the line cache
27505           dynamically (lt_dlopen)
27506
27507 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
27508
27509         * libltdl/ltdl.c (lt_dlopen): some preprocessors choke if the `#'
27510         of `#define' is not in column 1; let's go back to fortran! :-)
27511         Add #undefs too, to avoid potential warnings or errors.
27512
27513 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
27514
27515         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
27516         renamed convenience libltdl, dropped toinst hack for installable
27517         * libltdl/Makefile.am: ditto
27518         * libltdl/configure.in: ditto; abort if none of the macros is used
27519
27520         * ltmain.in: $output_objdir/$objdir/ -> $output_objdir/lt-
27521
27522 1999-03-09  Thomas Tanner  <tanner@gmx.de>
27523
27524         * libltdl/ltdl.c (lt_dlopen): don't hardcode the length of the
27525           constant strings
27526
27527 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
27528
27529         * Makefile.am (install-data-hook): install libltdl as a directory,
27530         not as a tar-file, so that we do not modify the build tree at make
27531         install time
27532         * libtoolize.in (ltdl, ltdl_tar): update
27533
27534         * configure.in, Makefile.am, NEWS: install libltdl by default
27535
27536         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
27537         new macros
27538         * NEWS: ditto
27539         * libltdl/configure.in: if none of the new macros or configure
27540         arguments are used, warn and build convenience library only
27541         * libltdl/Makefile.am: conditionally build convenience libltdl.la
27542         * mdemo/configure.in: use AC_LIBLTDL_CONVENIENCE
27543         * mdemo/Makefile.am: refer to @LIBLTDL@
27544
27545 1999-03-09  Gary V. Vaughan <gary@gnu.org>
27546
27547         * NEWS: updated.
27548
27549 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
27550
27551         * ltmain.in: extract symbols from program objects to nlist first,
27552         then translate them to the export_symbols format.  Now it works,
27553         but it appears to be needlessly extracting the symbol list from
27554         dlpreopened libraries twice
27555
27556         * ltmain.in: temporarily disable dlopen_self when linking with
27557         -static or -all-static, until we figure out how to test whether it
27558         works at configure time
27559
27560         * TODO: remember to fix this later
27561
27562         * tests/build-relink.test: when hell is expected to fail, run it
27563         within a subshell and redirect stderr to stdout, so that dynamic
27564         linker errors are only printed in verbose mode
27565
27566         * ltmain.in (hardcode_libdir_separator, compile_rpath,
27567         finalize_rpath): only substitute hardcode_libdir_flag_spec if
27568         hardcode_libdirs is non-empty
27569
27570         * libtool.m4 (AC_LIBTOOL_DLOPEN): do not depend on the existence
27571         of dlfcn.h nor on the definition of RTLD_LAZY
27572
27573         * tests/build-relink.test: hellT was renamed to lt-hell
27574
27575         * libltdl/Makefile.am (@TOINST@/libltdl.la): do not hide the
27576         command that creates the TOINST directory; remove `-o $@' from the
27577         LINK command, $(LINK) already contains it.
27578
27579 1999-03-08  Thomas Tanner  <tanner@gmx.de>
27580
27581         * doc/libtool.texi (tests): documented demo-nofast.test and
27582           renamed cdemo* to demo*
27583
27584 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
27585
27586         * libltdl/Makefile.am, libltdl/configure.in, mdemo/Makefile.am:
27587         libltdl must not be renamed; if there's a problem with the install
27588         option, let's fix it, not just work around it by breaking code of
27589         users of the convenience library
27590
27591         * tests/build-relink.test: link broken libhello.la with at least
27592         one libtool object
27593
27594 1999-03-08  Thomas Tanner  <tanner@gmx.de>
27595
27596         * TODO: updated (libltdl build problem fixed)
27597         * doc/libtool.texi (libltdl interface): removed the line which
27598           promised that lt_dlopen will return NULL if it can't resolve all
27599           symbols
27600         * libltdl/Makefile.am, libltdl/configure.in: fixed build problem:
27601           renamed the convenience library to libltdlc.la and the
27602           installed version to libltdl.la
27603         * ltmain.in (wrapper script): replaced the "T" suffix of the program
27604           file name with a "lt-" prefix
27605         * mdemo/Makefile.am: use libltdlc.la
27606         * tests/Makefile.am, tests/demo-nofast.test: added demo to
27607           test --enable-fast-install=no
27608
27609 1999-03-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
27610
27611         * tests/Makefile.am (TESTS): run hardcode before build-relink
27612         trashes libhello.la
27613         * tests/hardcode.test (need_prefix): set to yes so that _inst is
27614         not removed
27615
27616         * ltmain.in (compile_command): append finalize search path to
27617         compile search path
27618
27619         * tests/build-relink.test: new; check shlibpath_overrides_runpath
27620         * tests/Makefile.am (TESTS): add build-relink.test; remove
27621         hardcode.test duplicates
27622         * doc/libtool.texi: document it
27623
27624         * ltmain.in (relink_command): do not prepend cd `pwd` to it, the
27625         scripts already enters the correct directory, and expanding the
27626         pathname would prevent the build tree from moving
27627
27628         * ltconfig.in (enable_fast_install): force it to no only if we
27629         need relink; in the other cases, set it to needless
27630         * ltmain.in (fast_install): if needless, set relink_command empty
27631         * doc/libtool.texi (fast_install, shlibpath_overrides_runpath):
27632         document the new behavior
27633
27634         * ltconfig.in (enable_fast_install): test whether it can be forced
27635         off after shlibpath_overrides_runpath and enable_shared are set
27636
27637 1999-03-07  Thomas Tanner  <tanner@gmx.de>
27638
27639         * TODO: updated
27640         * NEWS: updated
27641
27642         * TODO: scheduled some items for next release/future
27643         * demo/configure.in: use AC_LIBTOOL_DLOPEN
27644         * libtool.m4: added AC_ENABLE/DISABLE_FAST_INSTALL macro
27645         * ltconfig.in: added --disable-fast-install flag
27646         * ltmain.in: partially reverted Alexandre's patch and implemented
27647           on-demand linking in such a way that the old developer-friendly
27648           linking style is optional,
27649           don't hardcode library paths that are in the system search path,
27650           fixed a typo in lib_search_path,
27651           implemented -export-symbols-regex for programs
27652
27653 1999-03-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
27654
27655         * libltdl/ltdl.c (LTDL_LAZY_OR_NOW): renamed from LTDL_NOW; prefer
27656         LAZY loading because it's much faster and NOW is apparently
27657         partially broken on FreeBSD
27658         Reported by Archie Cobbs <archie@whistle.com>
27659
27660         * ltconfig.in (archive_expsym_cmds, solaris, without_gnu_ld):
27661         $lib.exp already starts with $objdir/
27662         Reported by Godmar Back <gback@cs.utah.edu>
27663
27664         * ltmain.in (freebsd): compile symbol table file with pic_flag
27665         only on FreeBSD and when not static linking; it's been causing
27666         trouble on platforms such as OpenBSD.
27667
27668 1999-02-26  Gary V. Vaughan  <gary@gnu.org>
27669
27670         * libtool.m4 (cygwin): s/\\(mingw\\|cygwin\\)32/\\1/g.  Must've
27671         missed this file when I changed to cygnus' new sanction name.
27672
27673         * ltconfig.in (sub_uncdrive): removed.  This won't work with
27674         the next version of cygwin.
27675         (sub_uncdir): removed. We use <drive>:/path/to/executable now.
27676         * libtool.m4 (AC_PROG_LD): removed sub_uncdrive and sub_uncdir.
27677
27678 1999-02-25  Thomas Tanner  <tanner@gmx.de>
27679
27680         * TODO: added items for next alpha release, ILD etc.
27681         * libltdl/ltdl.c: removed unnecessary check from presym_sym,
27682           fixed bug in lt_dlclose, allow lt_dlopenext(NULL),
27683           set deplibs for lt_dlopen(NULL)
27684
27685 1999-02-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
27686
27687         * ltmain.in (file_magic_regex): sed `10q' is faster than `11,$d'
27688
27689 1999-02-22  Thomas Tanner  <tanner@gmx.de>
27690
27691         * ltconfig.in (dlopen, dlopen_self): default is unknown
27692         * ltmain.in: fixed -dlopen self, print a warning
27693           if -dlopen is used without AC_LIBTOOL_DLOPEN
27694         * mdemo/Makefile.am: use -dlopen self
27695
27696 1999-02-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
27697
27698         * ltmain.in: added missing mkdir $progdir for on-demand executable
27699
27700         * ltmain.in: create on-demand executable as $progdir/$$-$program,
27701         and rename it to $progdir/$program only when it's finished, to
27702         avoid race conditions.  We can still get the program linked
27703         multiple times, if multiple instances are started simultaneously
27704         and the program does not exist, but they are very unlikely to
27705         interfere with each other.  There's still a possibility that one
27706         process removes the $program another has just created, and doesn't
27707         replace it before the other tries to run it, in a system whose
27708         `mv' is not atomic, so it will $rm then $mv, but so what? :-)
27709         Locking files have been avoided to prevent dead-locks in case they
27710         are left over after a reboot or crash.
27711
27712         * TODO: removed ILD, soon to be merged, and added convenience
27713         libraries docs
27714
27715         * ltconfig.in (irix5*, irix6*, shlibpath_overides_runpath): yes
27716
27717         * ltmain.in: remove on-demand executable in the proper place, and
27718         just warn if it can't be removed; add wrapper code to test whether
27719         the install-executable is newer than the build-executable, to
27720         relink it when it appears to be out-of-date
27721
27722         * libltdl/configure.in: check for dld.h
27723         * libltdl/ltdl.c: include dld.h
27724         (dld_open) it's spelled memory_error, not no_memory_error
27725         Reported by Stefan Burstroem <f94sbu@efd.lth.se>
27726
27727         * ltmain.in: fix typos in my last change (s/ocmpile/compile/)
27728
27729 1999-02-21  Thomas Tanner  <tanner@gmx.de>
27730
27731         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
27732           when dlopening the executable
27733         * libtool.m4 (AC_LIBTOOL_DLOPEN): removed the redundant "yes: "
27734           prefix for lt_cv_dlopen, renamed lt_cv_dlopen_LIBS
27735           to lt_cv_dlopen_libs (more consistent)
27736         * ltmain.in: implemented -dl[pre]open self, necessary for
27737           lt_dlopen(NULL), generation of exported symbols was broken
27738
27739 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
27740
27741         * ltmain.in: avoid duplication of -L switches, it sometimes breaks
27742         IRIX 5.2's linker
27743
27744         * ltconfig.in (freebsd*, finish_cmds): expand objformat here
27745         Reported by Vladimir Kushnir <kushn@mail.kar.net>
27746
27747 1999-02-20  Vladimir Kushnir <kushn@mail.kar.net>
27748
27749         * ltconfig.in (freebsd-elf*, need_version, need_lib_prefix): no
27750         (freebsd-elf*, library_names_spec): add $libname.so instead of
27751         $libname.so$versuffix; add $libname$release.so
27752
27753 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
27754
27755         * doc/libtool.texi: remove ticks from menu items; it breaks TeX
27756         Reported by Erez Zadok <ezk@cs.columbia.edu>
27757
27758         * ltmain.in: fixes for export-symbols dry-run
27759
27760         * ltconfig.in (shlibpath_overrides_runpath): new variable;
27761         determines whether LD_LIBRARY_PATH or equivalent can be used to
27762         override a hard-coded library search path; default to unknown
27763         (linux-gnu*): set it to no
27764         (solaris*, sunos4*): set it to yes
27765         * ltmain.in (build_libdirs_flags, build_libdirs, build_rpath): if
27766         shlibpath_overrides_runpath is not yes, arrange that wrapper
27767         scripts create, on demand, programs that use uninstalled libraries
27768
27769         * doc/libtool.texi: document it
27770
27771         * libtool.m4 (AC_LIBTOOL_DLOPEN): check for dlopen in libc before
27772         trying in dl.  Add the actual dlopening type to lt_cv_dlopen, and
27773         add any needed libraries to lt_cv_dlopen_LIBS.  Add test for
27774         MS-Windows' LoadLibrary.  Check whether a program can dlopen
27775         itself only if we really have dlopen(), not some equivalent
27776         function, but leave room for testing with other mechanisms.
27777         (AC_PROG_LIBTOOL): assume some form of dlopen, but not
27778         dlopen(NULL), is available if AC_LIBTOOL_DLOPEN is not used, for
27779         backward compatibility.
27780
27781 1999-02-20  Archie Cobbs  <archie@whistle.com>
27782
27783         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
27784         where appropriate, when dlopening a non-libtool library
27785
27786 1999-02-19  Gary V. Vaughan  <gary@gnu.org>
27787
27788         * ltconfig.in (export_symbols_cmds): renamed from
27789         export_symbols_cmd.
27790         (cygwin, mingw): Be sure to compile the ltdll.c object before
27791         extracting the exported symbol list.  Extract only the names
27792         of the exported symbols from the def file [otherwise we might
27793         run into trouble with -export-symbols-regex].
27794         (archive_expsym_cmds): Regenerate the def file from the symbol
27795         export list.
27796         (delay_variable_subst): New sed expression to allow us to delay
27797         evaluation of $foo in a double_quote_subst evaluated variable by
27798         using \$.
27799         * ltmain.in (export_symbols_cmds): evaluate each ~ delimitted cmd
27800         separately.
27801         * doc/libtool.texi (libtool script contents): new paragraph to
27802         explain the difference between _cmd and _cmds suffixes for
27803         variable names.
27804         (export_symbols_cmds): renamed from export_symbols_cmd.
27805
27806 1999-02-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
27807
27808         * ltconfig.in (ld_shlibs): move -soname and similar flags to the
27809         end of archive_cmds and archive_expsym_cmds, so as to prevent
27810         gcc's collect2 from inserting an object file between -soname and
27811         the library name
27812
27813         * ltconfig.in (openbsd*, netbsd*, library_names_spec): append
27814         alternate name without ${release}, otherwise build fails when
27815         -release is used
27816
27817 1999-02-18  Gary V. Vaughan  <gary@gnu.org>
27818
27819         * ltconfig.in (archive{,_sym}_commands): Be careful not to
27820         re-export the dll entry points DllMain@12, _cygwin_dll_entry@12 and
27821         _cygwin_noncygwin_dll_entry@12 to avoid bugs with the wrong entry
27822         function being called with inter-dll dependencies.
27823         Reported by DJ Delorie <dj@delorie.com>
27824         * THANKS: Added DJ Delorie, since his code inspired the impgen.c
27825         program and because he has patiently answered all of the
27826         irritating dll and win32 questions I have fired at him.
27827
27828         * ltmain.in (version_type):  Oops.  Irix versioning implies that
27829         major version numbers are 1 based (not zero based).  Fixed.
27830
27831         * ltmain.in (version_type): Implement irix versioning.
27832         * ltconfig.in (irix{5,6}*): Use new irix shared object versioning.
27833         * TODO: remove irix versioning from TODO list.
27834
27835         * ltmain.in (impgen.c): Added a new embedded C file that can be
27836         used under win32 to extract a def file (symbol export list) from a
27837         dll that has none.  Code to use it might need to wait for the ILD
27838         merge before it will be useful...
27839
27840 1999-02-18  Thomas Tanner  <tanner@gmx.de>
27841
27842         * TODO: updated
27843         * autogen: only libltdl needs autoheader
27844         * doc/libtool.texi (link mode): documented -export-symbols-regex
27845           and updated -export-symbols
27846         * doc/libtool.texi (script contents): documented
27847           always_export_symbols, export_symbols_cmd, exclude_expsyms,
27848           include_expsyms, dlopen and dlopen_self
27849           more detailed description of need_lib_prefix
27850         * ltconfig.in: a "'" was missing in the default value
27851           of export_symbols_cmd
27852         * ltmain.in: implemented -export-symbols-regex
27853
27854 1999-02-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
27855
27856         * ltconfig.in: (freebsd2*, sunos4*, exclude_expsyms): exclude
27857         _GLOBAL_OFFSET_TABLE_
27858         * ltmain.in: implement exclude_expsyms with egrep
27859
27860         * libltdl/ltdl.c (lt_dlmalloc, lt_dlfree): SunOS' cc can't cope
27861         with argument lists, we __P even in the definition
27862
27863 1999-02-15  Thomas Tanner  <tanner@gmx.de>
27864
27865         * cdemo/Makefile.am: renamed *foo1 to *foo, removed $(MATH_LIB)
27866         * cdemo/foo1.c: renamed to foo.c
27867         * libltdl/ltdl.c: eliminated lt_dltype, in presym_open():
27868           search for @PROGRAM@ if filename == 0, in lt_dlopen():
27869           fixed bug for filename == 0
27870         * libltdl/ltdl.h: use __P macro for lt_dlmalloc/free
27871         * libtool.m4: new macro AC_LIBTOOL_DLOPEN: checks for dlopen
27872           and dlopen(NULL) support
27873         * ltconfig.in: added new variables dlopen and dlopen_self,
27874           --enable-dlopen[-self] flags for AC_LIBTOOL_DLOPEN
27875         * ltmain.in: use dlopen[_self], dlpreopen files if there's no
27876           dlopen support, build lt_preloaded_symbols only if
27877           -dl[pre]open was used, include program symbols if -export-dynamic
27878           was specified and there's no dlopen(NULL) support
27879         * mdemo/configure.in: use AC_LIBTOOL_DLOPEN
27880         * mdemo/main.c: demonstrate lt_dlopen(0)
27881
27882 1999-02-15  Gary V. Vaughan  <gary@gnu.org>
27883
27884         * demo/dlmain.c (_WIN32): The lt_symlist structure is now const,
27885         so my original horrible temporary win32 hack no longer worked.
27886         Here is a new horrible temporary hack to prevent helldl from SEGVing
27887         on win32.  I will fix this properly when we figure out how to do
27888         data exports from dlls.
27889
27890 1999-02-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
27891
27892         * libtool.m4 (AC_CHECK_LIBM): do not set MATHLIB or AC_SUBST it,
27893         this has a negative side-effect of causing automake to add MATHLIB
27894         to every single Makefile.  Let's use plain AC_CHECK_LIB, so that
27895         LIBS get set, until we find a better alternative
27896         * *demo/Makefile.am: remove $(MATHLIB)
27897
27898         * libltdl/configure.in: add a DESCRIPTION argument to AC_DEFINEs
27899         where appropriate, so as to get rid of acconfig.h
27900         * libltdl/acconfig.h: removed
27901
27902 1999-02-13  Thomas Tanner  <tanner@gmx.de>
27903
27904         * *demo/Makefile.am: use $(MATHLIB)
27905         * *demo/configure.in: use AC_CHECK_LIBM
27906         * doc/libtool.texi: renamed file_magic_command to file_magic_cmd,
27907           renamed archive_sym_cmds to archive_expsym_cmds
27908         * ltconfig.in: ditto
27909         * ltmain.in: ditto
27910         * libltdl/ltdl.c: use lt_dlmalloc/free
27911         * libltdl/ltdl.h: define lt_dlmalloc/free
27912         * libtool.m4: added AC_CHECK_LIBM macro
27913         * ltconfig.in: renamed archive_sym_cmds to archive_expsym_cmds,
27914           added always_export_symbols, export_symbols_cmd, exclude_expsyms,
27915           include_expsyms, removed archive_cmds for cygwin/mingw and AIX,
27916           on Solaris store the exported symbols list in objdir
27917         * ltmain.in: allow -export-symbols for modules, use thread_safe flag,
27918           add include_expsyms to the exported symbols
27919
27920 1999-02-12  Gary V. Vaughan  <gary@gnu.org>
27921
27922         * libltdl/ltdl.h (_LTDLL_EXTERN): libltdl is no longer linked as a
27923         shared library, so the _declspec's were preventing the linker from
27924         resolving symbols on win32.  They have been removed now.
27925
27926 1999-02-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
27927
27928         * ltmain.in: don't try to read objdir/libname.la before it is
27929         created!
27930
27931         * ltmain.in: create libname.lai at link time, not at install time,
27932         but still create it at install time if it is missing
27933         Reported by Akim Demaille <demaille@inf.enst.fr>
27934
27935         * libltdl/ltdl.c (tryall_dlopen): strcmp filenames was reversed
27936
27937 1999-02-11  Thomas Tanner  <tanner@gmx.de>
27938
27939         * autogen: libltdl needs autoheader
27940         * demo/Makefile.am: renamed hell.debug to hell.static
27941           (we're demonstrating static linking, not debugging)
27942         * tests/demo*: ditto
27943         * doc/libtool.texi (libltdl): documented new lt_dlopen(NULL)
27944           feature
27945         * libltdl/acconfig.h: required for config.h
27946         * libltdl/configure.in: use config.h
27947         * libltdl/ltdl.c: use config.h, support lt_dlopen(NULL)
27948           (returns a handle for the program itself)
27949         * ltconfig.in: minor reformatting
27950         * ltmain.in: in lt_preloaded_symbols always define
27951           the program's symbols first, for -export-dynamic list all
27952           program symbols together, -export-symbols was broken for
27953           programs, minor reformatting
27954         * mdemo/Makefile.am: renamed mdemo.debug to mdemo.static
27955         * tests/mdemo*: ditto, mdemo.test was completely broken
27956
27957 1999-02-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
27958
27959         * ltconfig.in (irix5*, irix6*, osf3*, osf4*): do not use
27960         -set_version in archive_cmds if verstring is empty
27961         (irix6*, shlibpath_var, sys_lib_search_path-spec,
27962         deplibs_check_method): set appropriate values depending on
27963         selected ABI, -32, -n32 or -64, as set in LD by libtool.m4
27964         (uts4*): remove dot between .so and versuffix
27965
27966 1999-02-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
27967
27968         * ltconfig.in (irix5*, irix6*, deplibs_check_method): use
27969         file_magic for inter-library dependency tracking
27970
27971         * ltconfig.in (irix5*, hardcode_libdir_separator): set it to a
27972         colon, because on IRIX 5 only the last -rpath switch prevails, and
27973         it can be a list of colon-separated directories.  This change will
27974         affect irix6 too, but that's not a problem.
27975
27976         * ltconfig.in (irix5*, library_names_spec): add soname_spec,
27977         otherwise we can't dlopen
27978
27979 1999-02-08  Thomas Tanner  <tanner@gmx.de>
27980
27981         * ltconfig.in: according to Marcus Sundberg <mackan@stacken.kth.se>
27982           HP/UX, IRIX, OpenBSD, Digital Unix and SunOS support
27983           need_version=no and need_lib_prefix=no,
27984           fixed a bug in Solaris' archive_sym_cmds
27985
27986 1999-02-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27987
27988         * libtool.m4 (ac_cv_sys_global_symbol_pipe): accept TAB in
27989         addition to space as separator, and allow more than one space
27990         between the symbol code and the symbol name; HP/UX's nm, for
27991         example, uses two spaces
27992         * ltconfig.in (global_symbol_pipe): ditto
27993         (bsdi4, deplibs_check_method): variable name was misspelled
27994         * libltdl/configure.in (libltdl_cv_preloaded_symbols): rewrite
27995         test, so as not to depend on the way global_symbol_pipe is
27996         initialized; the current test would get false positives, as
27997         global_symbol_pipe was initialized `x=""', not `x='
27998
27999         * libltdl/ltdl.c (find_module): initialize filename if dir is NULL
28000         Reported by Godmar Back <gback@cs.utah.edu>
28001
28002 1999-02-04  Godmar Back  <gback@cs.utah.edu>
28003
28004         * libltdl/ltdl.c (lt_dlopenext): missing space for terminator when
28005         allocating memory for shlib_ext
28006
28007 1999-02-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
28008
28009         * libltdl/ltdl.c (lt_dlopenext): tmp would be trashed if shlib_ext
28010         was longer than 3 characters
28011
28012 1999-02-02  Gary V. Vaughan  <gary@gnu.org>
28013
28014         * ltconfig.in: new config.guess returns *-*-cygwin now instead of
28015         *-*-cygwin32.  sed -e 's%\(cygwin\|mingw\)32%\1%g' ltconfig.in
28016         * ltmain.in:   sed -e 's%\(cygwin\|mingw\)32%\1%g' ltmain.in
28017
28018         * ltconfig.in (hardcode_libdir_flag_spec, allow_undefined_flag,
28019         archive_cmds, archive_sym_cmds, old_archive_from_new_cmds):
28020         removed duplication of config by assuming that `test $with_gcc =
28021         yes' implies gnu ld, otherwise MSVC++ (which I haven't tested
28022         since I inheritted the code from Ian Lance Taylor btw!) is implied.
28023
28024 1999-01-28  Gary V. Vaughan  <gary@gnu.org>
28025
28026         * ltmain.in: Reverted this change of Alexandre's from the
28027         1999-01-25; "don't try to use .o instead of .lo just because
28028         there's no PIC flag.  It loses if --disable-static, and there's
28029         not much point if we're referring to the same file anyway...",
28030         because not all linkers will accept .lo object names.
28031         * ltmain.in: In the case where --disable-static is specified (as
28032         noted in Alexandre's log entry), we just link some .o files to
28033         prevent the original error.
28034         Reported by Andrey Slepuhin <pooh@msu.ru>
28035
28036 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
28037
28038         * libtoolize.in: search for A[MC]_PROG_LIBTOOL, not
28039         AM_PROG_LIBTOOL
28040         Reported by Jeff Garzik <jgarzik@pobox.com>
28041
28042 1999-01-27  Gary V. Vaughan  <gary@gnu.org>
28043
28044         * THANKS: Now that we have a policy, applied it to the existing
28045         list.  This in no way demeans the work of those people removed
28046         from the THANKS file, who are still credited in the ChangeLogs and
28047         without who's work, libtool would not work so well on many
28048         platforms, but serves to highlight the outstanding and continued
28049         contribution the remaining people have made.  And I quote, "We
28050         reserve THANKS for people who have made major contributions, and
28051         leave the credit to the others for the ChangeLog only."
28052
28053         * THANKS: added Sam Vilain.
28054         * ltconfig.in ($echo):  When using printf to replace echo the shell
28055         expands %s\n to %sn.  Changed to use "%s\n" (with quotes).
28056         Reported by Sam Vilain <sam.vilain@nz.unisys.com>
28057
28058 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
28059
28060         * libltdl/ltdl.c (find_file): fix endless loop condition
28061         (find_module): filename allocation was off by 1
28062
28063         * libltdl/Makefile.am (distclean-local): renamed from
28064         distclean-hook, that didn't work
28065
28066         * libltdl/ltdl.c (lt_dlopen, non-.la): find_file now returns 0 on
28067         failure
28068
28069         * Makefile.am (ltconfig, ltmain.sh): some broken makes don't like
28070         macros in targets; replace $(srcdir) with @srcdir@
28071         * configure.in (ACINCLUDE_M4_LIST): same problem; expand $srcdir
28072
28073         * libltdl/Makefile.am (@TOINST@/libltdl.la): if installation is
28074         enabled, create to-be-installed libltdl.la within @TOINST@
28075         directory
28076         (noinst_LTLIBRARIES): even if installation is enabled, build
28077         convenience libltdl.la, otherwise builds of random packages may
28078         fail if the user happens to enable installation
28079         (distclean-hook): wipe out $(TOINST)
28080         * libltdl/configure.in: set TOINST and LIBLIBS as appropriate;
28081         don't set NOINSTLIBS any more
28082         * mdemo/Makefile.am: use libltdl.la
28083
28084         * libltdl/ltdl.c (find_file): oops, filenamesize was miscomputed
28085
28086         * libltdl/ltdl.c (find_file): allocate filename dynamically
28087
28088         * libltdl/configure.in (AC_PROG_LIBTOOL): automake does not
28089         recognize it and fail, better keep using AM_PROG_LIBTOOL until the
28090         next release of automake
28091         * demo/configure.in, cdemo/configure.in: ditto
28092         * depdemo/configure.in, mdemo/configure.in: ditto
28093
28094         * libltdl/ltdl.c: make all global strings char[], not char*; check
28095         that all calls to malloc() are properly cast
28096         (strdup, strchr, strrchr, trim, free_vars): declare as inline
28097         (find_module): allocate filename dynamically; support null dir
28098         (free_vars): free dir and name only if non-null
28099         (lt_dlopen): keep dir as NULL if not given; fix expression that
28100         calculated the size of name; only free and name if non-null
28101         (lt_dlopenext): allocate tmp dynamically
28102
28103         * configure.in (pkgdatadir): expand ${PACKAGE} at configure-time,
28104         just like automake does
28105
28106         * configure.in (pkgdatadir): define pkgdatadir explicitly, and
28107         comment that automake does not need it, but libtoolize does
28108
28109         * Makefile.am (aclocaldir): do not set it explicitly, automake
28110         does already
28111
28112         * configure.in (TIMESTAMP): use mkstamp here too
28113
28114 1999-01-27  Thomas Tanner  <tanner@gmx.de>
28115
28116         * cdemo/configure.in: renamed AM_PROG_LIBTOOL to AC_PROG_LIBTOOL
28117         * demo/configure.in: likewise
28118         * depdemo/configure.in: likewise
28119         * libltdl/configure.in: likewise
28120         * mdemo/configure.in: likewise
28121         * libltdl/ltdl.c: in find_module() check whether libdir is defined,
28122           tryall_dlopen(): move deallocation of an already opened handle
28123           to lt_dlopen(), allocate the directory in lt_dlopen() dynamically,
28124           minor cleanups, fixed memory leak (name)
28125         * libtool.m4: renamed all AM_ macros to AC_ and added aliases for
28126           compatibilty, updated AC_SYS_NM_PARSE (no undefined symbols,
28127           don't count the symbols)
28128         * ltconfig.in: added thread_safe_flag_spec (not used yet),
28129           added generic variable for linker options "linkopts" in
28130           all archive_cmds
28131         * ltmain.in: added -thread-safe flag (unused)
28132
28133 1999-01-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
28134
28135         * ltconfig.in (LTCONFIG_VERSION): damn!, adding TIMESTAMP doesn't
28136         always work, because then different ChangeLog timestamps fail to
28137         pass the version test.  Instead of forcing both ltconfig and
28138         ltmain.sh to be updated every time ChangeLog changes, better
28139         revert it
28140
28141         * ltconfig.in (LTCONFIG_VERSION): add TIMESTAMP, remove
28142         explicit quotes and add it to the list of variables to quote
28143
28144         * ltmain.in: reworded `dropped inter-library dependencies'
28145         message, and added a warning about inter-library dependencies even
28146         for non-module builds
28147
28148 1999-01-26  Gary V. Vaughan  <gary@gnu.org>
28149
28150         * Makefile.am (install-data-hook): Don't show the if expression
28151         that tests for gzip with a conditional error message; just do it
28152         quietly and show the error if it fails, or the next action if it
28153         succeeds.
28154
28155         * configure.in:  It seems Alexandre accidentally removed the
28156         AC_SUBST(pkgdatadir) line recently which breaks libtoolize.
28157         Reverted that small change.
28158
28159 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
28160
28161         * libltdl/ltdl.c (find_module): test old_name and dlname for NULL,
28162         not len==0
28163
28164         * libltdl/configure.in (libltdl_cv_objdir): yes, appending the "/"
28165         in configure.in was much simpler
28166         * libltdl/ltdl.c (objdir): ditto
28167
28168         * libltdl/ltdl.c (objdir): string collation isn't portable; strcat
28169         "/" explicitly.  Or should this be moved to configure.in?
28170
28171 1999-01-25  Thomas Tanner  <tanner@gmx.de>
28172
28173         * libltdl/ltdl.c: allocate the variables in lt_dlopen() dynamically
28174
28175 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
28176
28177         * ltmain.in (file_magic): use egrep instead of expr to support
28178         more general regular expressions
28179         (file_regex): remove it; the name is misleading, it's not used
28180         anywhere, and probably will never be
28181         * ltconfig.in, doc/libtool.texi: ditto
28182         * ltconfig.in (linux-gnu*, deplibs_check_method): extend regex to
28183         support `LSB dynamic lib' in the output of `file'
28184         Reported by Scott D. Heavner <sdh@po.cwru.edu>
28185
28186         * ltmain.in (dependency_libs, xrpath): add -R switches to
28187         dependency_libs only just before creating the .la file; they
28188         should not be passed to the C compiler or linker at
28189         library-creation time, since we don't know whether it is supported
28190
28191         * ltconfig.in (freebsd2.2*, hardcode_minus_L): for FreeBSD 2.2.6,
28192         this must be `no'
28193
28194         * mkstamp: move the sed script to extract revision and date
28195         information into a separate shell-script, so that we can break
28196         lines between commands; FreeBSD's sed doesn't like `;' after `t'
28197         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
28198         * Makefile.am: use mkstamp
28199         * THANKS: added Axel Thimm
28200
28201         * ltmain.in: don't try to use .o instead of .lo just because
28202         there's no PIC flag.  It loses if --disable-static, and there's
28203         not much point if we're referring to the same file anyway...
28204
28205         * ltmain.in (pass_all=none, droppeddeps): set only if deplibs was
28206         non-empty
28207
28208 1999-01-24  Thomas Tanner  <tanner@gmx.de>
28209
28210         * libltdl/ltdl.c: minor bugfixes, append a "/" the search
28211           directory only if necessary
28212         * ltconfig.in: added support for FreeBSD >= 3.0
28213           (patch from Kurt D. Zeilenga)
28214         * THANKS: added Kurt D. Zeilenga
28215
28216 1999-01-24  Thomas Tanner  <tanner@gmx.de>
28217
28218         * doc/libtool.texi (libltdl): list supported dlopen mechanisms,
28219           added function lt_dlopenext(), removed reference to
28220           LTDL_PRELOADED_SYMBOLS in LTDL_SET_PRELOADED_SYMBOLS
28221         * libltdl/ltdl.c: partially reverted Alexandre's dynamic string
28222           allocation change (it was not necessary and the code was unreadable),
28223           cleanups, removed usr_search_path_size, renamed usr_search_path
28224           to user_search_path, in find_module() also check for moved
28225           modules, merged find_file() and find_library(),
28226           added lt_dlopenext(), in lt_dladdsearchdir() no longer reset
28227           the search path if 'search_dir' == NULL and don't use realloc()
28228           (might not be available on all platforms),
28229           removed __P((void)) in the declaration of lt_dlgetsearchpath()
28230         * libltdl/ltdl.h: added lt_dlopenext()
28231         * ltconfig.in: AIX archive commands were broken,
28232           fixed a MAJOR bug in global_symbol_pipe which caused
28233           "demo-shared.test;demo-make.test" to fail (libtool must not extract
28234           undefined symbols of libraries, i.e. symcode must not contain 'U')
28235         * tests/Makefile.am (clean-local): "make distclean" in cdemo, too
28236
28237 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
28238
28239         * Makefile.am (ltconfig, ltmain.sh): add ChangeLog Revision to
28240         TIMESTAMP
28241         * configure.in: get values of PACKAGE and VERSION set by
28242         AM_INIT_AUTOMAKE, and extract only TIMESTAMP from the ChangeLog
28243
28244         * libltdl/ltdl.c (lt_dlopen): if we're reusing a previously opened
28245         handle, don't reset its name nor add it to the list, and free the
28246         name we have allocated
28247         Reported by Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
28248
28249         * Makefile.am (ltconfig, ltmain.sh, TIMESTAMP): let's not assume
28250         anything about the format of the date, just that it does not
28251         contain `$'
28252
28253 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
28254
28255         * configure.in (date): echo the version number during
28256         configuration, and show $date for cvs versions.
28257
28258         * Makefile.am ($(srcdir)/ltconfig): Oops.  cvs co keyword
28259         expansion ate the sed expression! Changed sed separator to '%'
28260         because there are '/' in the date.  Added missing '\(' to search
28261         expression.  Inserted a null string to stop cvs from expanding it
28262         next time =)O|
28263         ($(srcdir)/ltmain.sh): ditto.
28264
28265 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
28266
28267         * Makefile.am (TSDEPS_DIST): dist-time dependencies for timestamps
28268         (timestamps, update-timestamps): check whether TSDEPS_DIST are
28269         up-to-date and update ltconfig and ltmain.sh if needed
28270         (ltconfig, ltmain.sh): depend on TSDEPS; replace @TIMESTAMP@ with
28271         the Date tag in the ChangeLog
28272         (TSDEPS): empty unless overridden by update-timestamps
28273         * ltconfig.in, ltmain.in (TIMESTAMP): append timestamp to most
28274         references to VERSION
28275
28276 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
28277
28278         * ltmain.in (ild): Revert the change which allowed libtool to
28279         link libraries with dependencies on .la libs.
28280         * NEWS: Removed reference to win32, incase 1.3 ships before
28281         ild is ready.
28282         * doc/PLATFORMS: Removed i686-pc-cygwin32, for the same reason.
28283         * doc/libtool.texi: Removed win32 refs, for the same reason.
28284
28285 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
28286
28287         * ltmain.in (Xsed): add 1 to Xsed definition that goes into
28288         temporary wrapper scripts
28289         * libtool.m4: we don't have Xsed here, expand it manually
28290         Reported by Pavel Roskin <pavel_roskin@geocities.com>
28291
28292 1999-01-22  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
28293
28294         * ltmain.in (finalize_hardcode_libdirs, finalize_rpath): in
28295         platforms that use -rpath, programs must be finalized at
28296         installation time, otherwise build-tree programs will
28297         prefer installed libraries over build-tree ones
28298
28299 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
28300
28301         * mdemo/Makefile.am (../libltdl/libtool): if it does not exist,
28302         the sub-make for libltdlc.la will take care of it, but we must at
28303         least provide an empty rule for it, otherwise the sub-make will
28304         never run
28305
28306         * demo/configure.in, demo/Makefile.am (DLPREOPEN): reverted; it
28307         didn't make any difference.
28308
28309 1999-01-21  Gary V. Vaughan  <gary@gnu.org>
28310
28311         * THANKS: Added Chris Laas <golem@MIT.EDU>
28312
28313         From Chris Laas <golem@MIT.EDU>
28314         * ltmain.in (compile):  corrected a typo in compile mode which
28315         caused "gcc: unrecognized option -c-fPIC" errors due to a missing
28316         space.
28317
28318 1999-01-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
28319
28320         * libltdl/configure.in: reintroduce code to detect native library
28321         extension
28322         * libltdl/ltdl.c (lt_dlopen): if a .la file name is given, that's
28323         all.  Otherwise, lt_dlopen now tries to append .la first.  If this
28324         fails, it tries the given filename, and, at last, tries to append
28325         the native library extension to the given filename.
28326         * doc/libtool.texi (lt_dlopen): explain new lookup strategy
28327
28328         * libltdl/ltdl.c: major rewrite to avoid almost all fixed-size
28329         buffers; only `tmp' in lt_dlopen remained.  But the code got ugly
28330         :-(
28331
28332         * ltconfig.in (linux-gnu*, finish_cmds): remove erroneous backslash
28333
28334         * demo/configure.in: set DLPREOPEN to -dlopen if we don't have
28335         shared libraries
28336         * demo/Makefile.am (DLPREOPEN): use instead of -dlpreopen
28337         (STATIC): use $(STATIC), not @STATIC@
28338         * mdemo/Makefile.am (STATIC): ditto
28339
28340         * tests/demo-shared.test, tests/demo-static.test: new tests
28341         * tests/mdemo-shared.test, tests/mdemo-static.test: ditto
28342         * tests/Makefile.am: ditto
28343         * doc/libtool.texi: document them
28344         * demo/Makefile.am, mdemo/Makefile.am (STATIC): do not use
28345         -static unconditionally, it can't work with --disable-static
28346         * demo/configure.in, mdemo/configure.in: check whether libtool was
28347         configured to build static libraries and, if not, set STATIC to an
28348         empty string
28349
28350 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
28351
28352         * ltmain.in (module, droppeddeps): if libtool could not satisfy
28353         all dependencies of a module, it will only build a static version
28354         of it, and display a warning message
28355
28356 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
28357
28358         * ltconfig.in (aix4*, with_gcc, archive_cmds): fix typo in Andrey
28359         Slepuhin's last patch
28360
28361 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
28362
28363         * Makefile.am (@DIST_MAKEFILE_LIST@): work around Ultrix /bin/sh bug
28364         * tests/nomode.test (must specify a MODE): ditto
28365         Reported by Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
28366         * THANKS: Added Rainer Orth
28367
28368 1999-01-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
28369
28370         * ltconfig.in: No known version of Solaris 2 hardcoded -L paths.
28371
28372 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
28373
28374         * ltmain.in: s/n\'t/ not/
28375         * doc/PLATFORMS: updates for sunos4/m68k and aix
28376
28377 1999-01-20  Andrey Slepuhin  <pooh@msu.ru>
28378
28379         * ltconfig.in (aix4*): check for reworked collect2, always pass
28380         -bnoentry option to linker when building a shared library
28381
28382 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
28383
28384         * ltmain.in (file_magic): follow soft-links before running `file'
28385         on the candidate library; try to avoid entering endless loop
28386         Suggested by Nix <nix@esperi.demon.co.uk>
28387
28388         * ltconfig.in (linux*, solaris*, bsdi4*, sys_lib_search_path):
28389         remove expansion of $LD_LIBRARY_PATH
28390         * ltmain.in (lib_search_path): append the expansion of $shlibpath_var
28391         * doc/libtool.texi: document it
28392
28393         * THANKS: Added Steven Schultz
28394
28395 1999-01-20  Steven M. Schultz <sms@wlv.iipo.gtegsc.com>
28396
28397         * ltconfig.in (bsdi4*, check_shared_deplibs_method): file_magic
28398         (bsdi4*, sys_lib_search_path): add /shlib and other dirs
28399
28400 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
28401
28402         * cdemo/main.c (main): use K&R definition syntax
28403         * mdemo/main.c (test_dl, main): ditto
28404         (test_dl): casts return value of lt_dlsym to appropriate types
28405
28406         * ltmain.in (dlsyms): #define const to nothing if not __STDC__
28407
28408         * ltconfig.in (global_symbol_pipe): #define const to nothing if
28409         not __STDC__
28410
28411         * demo/dlmain.c (main): cast s->address to the appropriate pointer
28412         types, otherwise StunOS4's cc refuses to compile it
28413
28414         * ltconfig.in (sunos4*, without_gnu_ld, with_gcc, archive_cmds):
28415         add -fPIC, because libgcc is multilibbed, and we want the PIC
28416         version of it for shared libraries, otherwise ld complains
28417
28418         * demo/dlmain.c (main): add missing const to declaration of name
28419
28420         * libltdl/ltdl.c (find_module): remove the libdir argument, and
28421         try to  open library only as old_name and dir/dlname
28422         (lt_dlopen): use `installed' variable in .la file to decide
28423         whether to use libdir or objdir
28424
28425         * demo/configure.in (AC_C_CONST): added, for portability
28426         * mdemo/configure.in (AC_C_CONST): ditto
28427         * libltdl/configure.in (AC_C_CONST, AC_C_INLINE): ditto
28428         * libltdl/ltdl.c (LTDL_FILENAME_MAX): use FILENAME_MAX if defined
28429         (FILENAME_MAX): replace all explicit uses with LTDL_FILENAME_MAX
28430         (presym_free_symlists, trim): don't return void, for portability
28431         (lt_dlgetsearchpath): replace (void) with __P((void))
28432
28433         * ltmain.in (compile): when compiling both PIC and non-PIC, write
28434         the PIC object to .libs/.lo and only rename it to .lo after
28435         compiling the .o, to avoid fooling make dependencies
28436
28437         * mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove
28438
28439 1999-01-20  Gary V. Vaughan  <gary@gnu.org>
28440
28441         * TODO: Added inter-library deps for ltlibs.
28442
28443         * THANKS: Added Vladimir Kushnir.
28444
28445 1999-01-20  Vladimir Kushnir  <kushn@mail.kar.net>
28446
28447         * ltconfig.in (freebsd3*): Define `deplibs_check_method' and
28448         `file_magic_command' for freebsd-elf.
28449
28450 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
28451
28452         * TODO: should we also build a `static' copy of a convenience
28453         library out of .o files?
28454
28455         * ltconfig.in (bsdi4*, netbsd*, uts4*, library_names_spec,
28456         soname_spec): removed duplicate dot before $major
28457         Reported by Steven M. Schultz <sms@wlv.iipo.gtegsc.com> (bsdi4*)
28458
28459         * THANKS: added Manfred Weichel
28460
28461 1999-01-20  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
28462
28463         * ltconfig.in (sysv5*): same as sysv4.3*
28464
28465 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
28466
28467         * libltdl/ltdl.c (lt_dlopen): properly detect error condition when
28468         full pathname of non-libtool library is provided
28469
28470         * libltdl/configure.in (libltdl_cv_preloaded_symbols,
28471         HAVE_PRELOADED_SYMBOLS): test whether we support -dl*open
28472         * libltdl/ltdl.c (!HAVE_PRELOADED_SYMBOLS, lt_preloaded_symbols):
28473         define it to an empty list if libtool won't generate it, so as to
28474         avoid link errors.  This will cause silent dlopening failures, but
28475         maybe this is better than failing to link the program...
28476
28477         * libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to
28478         declare lt_preloaded_symbols
28479         * doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto
28480
28481         * ltmain.in (dlpredeps): removed, reverting 1999-01-17's change
28482
28483 1999-01-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
28484
28485         * libltdl/Makefile.am (Makefile): depend on libtool
28486
28487         * ltmain.in (lt_preloaded_setup): function added to symbol list
28488         source file to work around FreeBSD problem
28489
28490         * Makefile.am (check-local): depend on libltdl/Makefile
28491
28492         * mdemo/Makefile.am (mdemo_LDFLAGS, mdemo_LDADD): moved -dlopen
28493         flags to LDADD
28494         * doc/libtool.texi (Using Automake): how to add -dlopen to LDADD
28495
28496 1999-01-19  Gary V. Vaughan  <gary@gnu.org>
28497
28498         From Andrey Slepuhin <pooh@msu.ru>
28499         * ltmain.in (hardcode_action) Oops, misapplied the patch!
28500
28501         * ltconfig.in (compile_dependencylbs): removed this
28502         variable and pick up the library dependencies from $deplibs.
28503         * ltmain.in (compile_dependencylibs): removed this
28504         variable, use deplibs to hold these dependencies.
28505
28506         From Andrey Slepuhin <pooh@msu.ru>
28507         * ltmain.in (hardcode_action) make sure deplibs is set to include
28508         all the extra libs added to compile_command.
28509
28510 1999-01-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
28511
28512         * libtool.m4 (LIBTOOL_DEPS): set it
28513         * libltdl/configure.in (LIBTOOL_DEPS): AC_SUBST it
28514         * libltdl/Makefile.am (libtool): use it
28515         * doc/libtool.texi (AM_PROG_LIBTOOL): document it
28516
28517         * Makefile.am (libltdl.tar.gz): don't create it as part of the
28518         build, since it is likely to become stale if we do
28519         (install-data-hook): create and install libltdl.tar.gz, without
28520         depending on GNU tar
28521         Reported by Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
28522
28523 1999-01-17  Thomas Tanner  <tanner@gmx.de>
28524
28525         * Makefile.am: added libltdl.tar.gz to CLEANFILES
28526         * ChangeLog: some reformatting
28527         * TODO: documentation updates
28528         * doc/libtool.texi: added preliminary libltdl documentation,
28529           updated dlopen and -module documentation,
28530           renamed -avoid-versioning to -avoid-version
28531           documented the libtool script variables compiler_c_o,
28532           compiler_o_lo, need_locks, old_postuninstall_cmds,
28533           postuninstall_cmds, sys_lib_search_path_spec,
28534           fix_srcfile_path, objdir, objext, libext,
28535           documented the two new flags (--ltdl[-tar]) of libtoolize
28536         * libltdl/Makefile.am: incremented the version, removed
28537           libtool dependency so that it can be build independently
28538         * libltdl/configure.in: removed LTDL_SHLIB_EXT hack,
28539           set version to 1.0, use AM_MAINTAINER_MODE,
28540           DLPREOPEN is always supported, check for libtool's objdir variable
28541           (LTDL_OBJDIR)
28542         * libltdl/ltdl.c: some cleanups (moved constants to the beginning
28543           of the file and prefixed all of them with LTDL_, minor optimizations
28544           in find_file() and find_module()), renamed lt_dlpreopen* to
28545           lt_dlpreload* for consistency, removed LTDL_SHLIB_EXT hack,
28546           we don't need unistd.h, DLPREOPEN is _always_ supported,
28547           reverted Alexandre's lt_dlpreopen_default_ change,
28548           try to open the not-installed module before the installed one,
28549           replaced lt_dlsearchpath() with lt_dladdsearchdir(),
28550           lt_dlsetsearchpath() and lt_dlgetsearchpath()
28551         * libltdl/ltdl.h: renamed lt_dlpreopen* to lt_dlpreload*
28552           for consistency, removed the declaration of lt_preloaded_symbols
28553           (should be imported by programs),
28554           reverted Alexandre's lt_dlpreopen_default_ change and added
28555           two new macros LTDL_PRELOADED_SYMBOLS and
28556           LTDL_SET_PRELOADED_SYMBOLS(),
28557           added lt_dladdsearchdir(), lt_dlsetsearchpath() and
28558           lt_dlgetsearchpath()
28559         * libtool.m4: some reformatting
28560         * libtoolize.in: implemented --ltdl, bugfix when checking for
28561           the libtool package directory
28562         * ltconfig.in: removed $thread_safe_flags from Andrey Slepuhin's
28563           AIX patch, renamed sys_lib_search_path to sys_lib_search_path_spec,
28564           some reformatting, fixed typo in deplibs_check_method (unkwnon)
28565         * ltmain.in: documented -o for compile mode, some reformatting,
28566           renamed -avoid-versioning to -avoid-version
28567           renamed sys_lib_search_path to sys_lib_search_path_spec
28568         * mdemo/Makefile.am: use -avoid-version
28569         * mdemo/main.c: use LTDL_PRELOADED_SYMBOLS and
28570           LTDL_SET_PRELOADED_SYMBOLS()
28571
28572 1999-01-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
28573
28574         * ltconfig.in (wlarc): set to either '${wl}' or an empty string,
28575         depending on whether archive_cmds runs CC or LD
28576         (gnu_ld=yes, whole_archive_flag_spec): "$wlarc" instead of '${wl}'
28577
28578         * mdemo/Makefile.am (../libltdl/libltdlc.la): depend on
28579         ../libtool, because ../libltdl/libtool depends on it
28580         (mdemo_debug_*): copy from mdemo_*, adding -static to LDFLAGS
28581
28582         * ltmain.in (dlpredeps): append dependencies from dlopened modules
28583         (but not dlpreopened ones) after all explicitly linked libraries
28584
28585         * ltconfig.in (need_lib_prefix, need_version,
28586         deplibs_check_method): default to unknown, so that we're
28587         remembered that this needs porting; unknown is interpreted as yes,
28588         yes and none, respectively
28589         (freebsd2*, freebsd3*, sunos4*, need_version): set to yes
28590         (freebsd2*, freebsd3*, library_names_spec): libraries without a
28591         version number are not used by `ld'; add $versuffix;
28592         Reported by Ben Jackson <ben@ben.com>
28593         * ltmain.in (deplibs_check_method): alias unknown to none
28594         (need_version): if vinfo was not provided and release info was,
28595         zero out versuffix only if we don't need_version.
28596         * doc/libtool.texi: document what `unknown' means
28597
28598         * libltdl/ltdl.h (lt_dlpreopen_default): reverted to a macro
28599         without arguments, that calls lt_dlpreopen_default_ with
28600         lt_dlpreloaded_symbols
28601         * libltdl/ltdl.c (lt_dlpreopen_default_): renamed from
28602         lt_dlpreopen_default
28603         (find_module) tryall_dlopen old_name first, so that we don't
28604         override statically linked symbols with dlopened ones
28605
28606 1999-01-15  Gary V. Vaughan  <gary@gnu.org>
28607
28608         From Andrey Slepuhin <pooh@msu.ru>
28609         * libtoolize.in (cd $pkgdatadir): Make sure we return the the
28610         working directory when this is done.
28611
28612         From Andrey Slepuhin <pooh@msu.ru>
28613         * ltconfig.in (aix): Use shared library support correctly on
28614         aix4*, and tweak the config for aix3.
28615         * NEWS: added aix3 and aix4 to list of hosts with improved
28616         support.
28617         * THANKS: added Andrey Slepuhin <pooh@msu.ru>.
28618
28619 1999-01-15  Thomas Tanner  <tanner@gmx.de>
28620
28621         * Makefile.am (@DIST_MAKEFILE_LIST@): added a second '$'
28622           before abs_scrdir, removed ltconfig and ltmain.sh from
28623           EXTRA_DIST (automake distributes them by default)
28624
28625 1999-01-14  Thomas Tanner  <tanner@gmx.de>
28626
28627         * autogen: moved faking of the libtool scripts before
28628           the call of automake, so that ltconfig and ltmain.sh
28629           are included in the distribution
28630         * ltconfig.in: when checking whether PIC is supported assume
28631           only on HP/UX that warnings during compilation mean that
28632           PIC is not supported (Thanks to Ron O'Hara)
28633         * THANKS: added Ron O'Hara
28634
28635 1999-01-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
28636
28637         * Makefile.am: Moved ltconfig and ltmain.sh back into srcdir, and
28638         add them to the distribution.  Added work-around if `mv -f' fails.
28639         fix @AINCLUDE_M4_LIST@ and @DIST_MAKEFILE_LIST@ for relative and
28640         absolute specifications of srcdir
28641
28642 1999-01-14  Thomas Tanner  <tanner@gmx.de>
28643
28644         * libltdl/ltdl.c: added variable symbol prefix, added user-defined
28645           library search path (can be set using lt_dlsearchpath()),
28646           added default_preloaded_symbols which are independent of
28647           lt_dlinit/exit
28648         * libltdl/ltdl.h: added lt_dlsearchpath() and
28649           lt_dlpreopen_default()
28650         * mdemo/Makefile.am: use -export-dynamic until libtool
28651           and libltdl are able to handle module dependencies
28652
28653 1999-01-14  Gary V. Vaughan  <gary@gnu.org>
28654
28655         * THANKS: added Mark Elbrecht.
28656         * ltconfig.in (PATH_SEPARATOR): new variable to hold valid $PATH
28657         separator characters for the build host, to support DJGPP
28658         environment.
28659         * ltconfig.in: Use PATH_SEPARATOR instead of hardcoded `:'.
28660         Reported by Mark Elbrecht <snowball3@usa.net>
28661
28662         * cdemo/README: typo: mdemo->cdemo
28663
28664 1999-01-14  Thomas Tanner  <tanner@gmx.de>
28665
28666         * autogen: fake the libtool scripts to help fixing
28667           the bootstrapping problem
28668         * Makefile.am: always configure libltdl, however after building
28669           the libtool scripts,
28670           build the libtool scripts in builddir, not srcdir
28671           (unfortunately this breaks building when srcdir!=objdir,
28672            but it was just plain wrong - needs to be fixed),
28673           build and install libltdl.tar.gz,
28674           copy acinclude.m4 instead of linking them, so that we
28675           can 'make dist' in libltdl,
28676           fixed configuring of subdirectories
28677         * configure.in: removed --enable-ltdl-install - libltdl is supposed
28678           to be installed by packages, not by libtool itself
28679         * libtoolize.in: new flags --ltdl and --ltdl-tar to install libltdl
28680           in packages (--ltdl doesn't work yet),
28681           install only the necessary libtool scripts, not just all
28682           files in pkgdatadir
28683         * mdemo/Makefile.am: removed the rule for libltdl configuration
28684
28685 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
28686
28687         * mdemo/Makefile.am (../libltdl/libtool): mkdir and configure
28688         ../libltdl
28689
28690 1999-01-13  Thomas Tanner  <tanner@gmx.de>
28691
28692         * demo/dlmain.c, libltdl/ltdl.c, ltconfig.in, ltmain.in,
28693           doc/libtool.texi: renamed dld_preloaded_symbols to
28694           lt_preloaded_symbols, symbol lists are 'const'
28695         * cdemo/configure.in: don't check for string.h
28696         * demo/dlmain.c: renamed dld_symlist to lt_symlist,
28697           preloaded symbols are 'const', use lt_ptr_t instead of void*
28698         * demo/foo.h: define lt_ptr_t
28699         * doc/libtool.texi: document lt_preloaded_symbols correctly
28700         * libltdl/Makefile.am, mdemo/Makefile.am: renamed libtest to libltdlc
28701         * libltdl/ltdl.c: fixed some minor typos, renamed dldpre to presym,
28702           bugfix: search in search_path only if we have no directory
28703           and a search_path, in lt_dlsym() check whether symbol != 0
28704         * libltdl/ltdl.h: removed lt_dlpreopen_default()
28705         * ltconfig.in (dlpreopen): removed dld_preloaded_symbol_count
28706         * ltmain.in: added help for -avoid-versioning, -export-symbols,
28707           -module, add @SYMFILE@ if one of -export-dynamic, -dlopen or
28708           -dlpreopen is used
28709         * mail/deplibs.html: added Gordon Matzigkeit's inter-library
28710           dependencies article
28711         * mdemo/Makefile.am: removed -export-dynamic from LDFLAGS
28712           (no longer necessary, since libtool defines lt_preloaded_symbols
28713           when -dlopen is used), initialize with lt_preloaded_symbols
28714
28715 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
28716
28717         * doc/libtool.texi (Test descriptions): cdemo-static works, thanks
28718         to Edouard Parmelan!
28719
28720         * THANKS: added Sebastian Wilhelmi
28721
28722         * ltconfig.in (solaris): define `need_version' to no
28723
28724 1999-01-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
28725
28726         * ltconfig.in (solaris): Define `deplibs_check_method',
28727         `file_magic_command', `need_lib_prefix' and `sys_lib_search_path'
28728         * ltmain.in (file_magic_regex): Add space before matching pattern,
28729         such that it works on solaris (solaris has a tab between the
28730         library name (including the colon) and the `ELF' and such the
28731         `ELF' will never be matched).
28732
28733 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
28734
28735         * ltconfig.in (NM): PATH search was not updated like in
28736         libtool.m4, in last Alexandre Oliva's change to it
28737         (sysv4*, ncr): pass all library dependencies
28738         * ltmain.in (dependency_libs, -R): use `deplib' instead of `arg' to
28739         iterate, otherwise we'd overwrite `arg'
28740         (convenience, old_libs): if --disable-shared, convenience
28741         libraries are just old archives, as .lo's are of no use
28742         * tests/cdemo-static.test: print --disable-shared here
28743
28744 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
28745
28746         * libltdl/configure.in (libltdl_cv_shlibext, LTDL_SHLIB_EXT):
28747         system-dependent extension of shared libraries
28748         (libltdl_cv_shlibpath_var, LTDL_SHLIBPATH_VAR): system-dependent
28749         run-time shared library search path
28750         * libltdl/ltdl.c (dldpre_init, dldpre_exit): unrelate init/exit
28751         from add/remove symlists, so one may add dld_preloaded_symbols
28752         from main(), when only a library will call dldpre_init
28753         (lt_dlopen): use LTDL_SHLIBPATH_VAR, if defined, as secondary
28754         search path.  Also, if a requested .la file cannot be found, try
28755         with the LTDL_SHLIB_EXTension instead.
28756
28757         * ltmain.in (old_archives, oldobjs): use find to SYMDEF here too
28758
28759         * Makefile.am (@DIST_MAKEFILE_LIST@): `$' must be doubled
28760
28761         * configure.in (AC_CONFIG_DIRS): configure only libltdl, and then,
28762         only if --enable-ltdl-install
28763         (CONF_SUBDIRS): list directories that are configured on demand,
28764         but that must be included in the distribution
28765         (ACINCLUDE_M4_LIST, DIST_MAKEFILE_LIST): generated from CONF_SUBDIRS
28766         * Makefile.am (AUTOMAKE_OPTIONS): added version 1.3e and
28767         readme-alpha, to handle README-alpha automatically
28768         (EXTRA_DIST): removed README-alpha
28769         (BUILD_SUBDIRS): subdirectories that are always built
28770         (SUBDIRS): BUILD_SUBDIRS plus BUILD_LTDL
28771         (DIST_SUBDIRS): BUILD_SUBDIRS plus CONF_SUBDIRS, from configure
28772         (all-local, check-local): depend on $(ACINCLUDE_M4_LIST), from
28773         configure, and libtool, so that it is built before subdirs
28774         (configure-subdirs): new target
28775         (configure-subdirs, distdir): depend on $(DIST_MAKEFILE_LIST),
28776         from configure
28777         (@DIST_MAKEFILE_LIST@): create subdir if needed, then run
28778         configure.
28779         On-demand configuration of subdirs at distribution time was
28780         suggested by Gary V. Vaughan <gary@gnu.org>
28781
28782         * libtool.m4, ltconfig.in (NM): search for NM in PATH before
28783         /usr/ccs/bin, /usr/ucb and /bin.  However, if the found one isn't
28784         BSD-compat keep searching.  If no BSD-compat is found, use the
28785         first we found.
28786
28787         * THANKS: added Raffaele Sena
28788
28789 1999-01-13  Raffaele Sena  <raff@aromatic.com>
28790
28791         * libltdl/ltdl.c: replaced RTDL with RTLD
28792
28793 1999-01-13  Manish Singh  <yosh@gimp.org>
28794
28795         * ltconfig.in (osf3*, osf4*, irix6*): include
28796         ${libname}{release}.so for library_names_spec
28797
28798 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
28799
28800         * configure.in (AC_CONFIG_SUBDIRS): added cdemo
28801         * Makefile.am (DIST_SUBDIRS): ditto
28802         (ACINCLUDE_M4_LIST): ditto
28803         * tests/Makefile.am (TESTS): added cdemo-shared.test
28804         * tests/cdemo-static.test: disable shared libraries here
28805         * tests/cdemo-shared.test: disable static libraries here
28806         * doc/libtool.texi (Test descriptions): added cdemo tests
28807         * THANKS: added Edouard G. Parmelan
28808
28809 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
28810
28811         * ltmain.in: fix convenience libraries when static libraries
28812         are disables.
28813         * cdemo/README, cdemo/Makefile.am, cdemo/configure.in, cdemo/foo.h,
28814         cdemo/foo1.c, cdemo/main.c, cdemo/.cvsignore, test/cdemo-conf.test,
28815         test/cdemo-make.test, test/cdemo-exec.test, test/cdemo-static.test:
28816         new tests for convenience libraries.
28817         * autogen, Makefile.am, test/Makefile.am: ditto.
28818
28819         * ltconfig.in, doc/PLATFORMS: Added support for NCR MP-RAS
28820         (i586-ncr-sysv4.3*) with native compiler.
28821         * README, doc/libtool.texi: Added note for NCR MP-RAS compiler.
28822
28823 1999-01-12  Thomas Tanner  <tanner@gmx.de>
28824
28825         * ltmain.in: before using LN_S remove the symlink
28826         * libltdl/ltdl.c: support multiple symbol lists, moved library-
28827           and file searching to separate functions, renamed "preload_libs"
28828           to "dl_dependency_libs", set the LT_SYMBOL_OVERHEAD to the correct
28829           value (7), fix to support lt_dlsym() for not-libtool modules again,
28830           check for invalid handles, when using strdup() check whether
28831           it fails
28832         * libltdl/ltdl.h: declare the lt_dlsymlist type for lt_dlpreopen()
28833         * mdemo/README: rewritten
28834         * mdemo/configure.in: check only for math.h (string.h is no longer
28835           necessary)
28836
28837 1999-01-12  Gary V. Vaughan  <gary@gnu.org>
28838
28839         * configure.in (ltdl-install): Fixed up the indentation so that
28840         `configure --help' is pretty again.
28841
28842 1999-01-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
28843
28844         * ltmain.in, NEWS, doc/libtool.texi: Added support for -R flag
28845         * ltmain.in, doc/libtool.texi: documented that -rpath is the same
28846         as -R for programs
28847         * ltmain.in: softened the instructions for linking with installed
28848         libraries, and noted that libtool can be used to link with them;
28849         documented that -rpath is not required for convenience libraries
28850
28851         * ltconfig.in (symxfrm): don't print $pipe_works twice, once for
28852         each $ac_symprfx
28853         Reported by Godmar Back <gback@cs.utah.edu>
28854
28855         * ltmain.in (convenience, libobjs): get only .o and .lo files from
28856         the files extract from the convenience library.  Some systems,
28857         such as FreeBSD2, will add a SYMDEF file, that is not an object
28858         file, and therefore should not be fed to the linker
28859
28860         * libtool.m4 (AM_SYS_NM_PARSE): while we are at it, we may well
28861         cache the value of ac_cv_sys_symbol_underscore
28862
28863         * libtool.m4 (AM_SYS_NM_PARSE): need for underscore prefix is now
28864         auto-detected, by trying first without, then with it.
28865
28866         * ltconfig.in: ditto
28867
28868 1999-01-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
28869
28870         * configure.in (AC_CONFIG_SUBDIRS): add libltdl, demo, mdemo and
28871         depdemo commented out, so that `dist' works before `check'
28872         (BUILD_LTDL): will contain libltdl if --enable-ltdl-install
28873         * Makefile.am (DIST_SUBDIRS): expand SUBDIRS and add depdemo,
28874         commented out
28875         (SUBDIRS): add $(BUILT_LTDL)
28876         * libltdl/Makefile.am (EXTRA_LTLIBRARIES): add libtest.la, the
28877         same as libltdl but always a convenience library.  Not built by
28878         default.  Both libraries now depend on the libtool script, that
28879         depends on ../libtool and is rebuilt when needed
28880         * mdemo/Makefile.am (mdemo, mdemo.debug): depend on and link with
28881         ../libltdl/libtest.la, that is rebuilt if needed
28882         (mdemo_LDADD): removed $(LIBADD_M), to avoid silent failures
28883         (foo1.la): renamed from libfoo1.la; test removing the lib prefix
28884         * mdemo/foo1.c: renamed libfoo1_LTX symbols to foo1_LTX
28885         * mdemo/main.c: don't include string.h nor math.h, nor refer to
28886         sin nor cos
28887         * tests/mdemo-exec.test: renamed libfoo1.la to foo1.la
28888         * tests/mdemo-inst.test: ditto
28889
28890         * libltdl/ltdl.c (FILENAME_MAX): use it instead of MAX_FILENAME,
28891         and don't redefine it if already defined; default to 1024, as on
28892         most systems
28893         (LT_SYMBOL_LENGTH): renamed from MAX_SYMBOL_LENGTH
28894         (LT_SYMBOL_OVERHEAD): new macro, that accounts for the size of
28895         the _LTX_ separator and the initial underscore
28896         (lt_dlsym): sym now points to a stack buffer (lsym) if possible,
28897         or is dynamically allocated.  If allocation fails, a
28898         buffer_overflow_error is returned.
28899
28900 1999-01-10  Thomas Tanner  <tanner@gmx.de>
28901
28902         * ltmain.in: define dld_preloaded_symbols if at least one of
28903           -export-dynamic, -dlopen or -dlpreopen was specified,
28904           do not include program objects in the symbol list
28905           if -export-dynamic was not enabled
28906         * libltdl/ltdl.c: limit symbols to max. 256 bytes
28907         * mdemo/Makefile.am: build libltdl in a subdirectory,
28908           do not use -export-dynamic for mdemo and mdemo.debug
28909         * tests/mdemo-conf.test,tests/mdemo-make.test,tests/mdemo-inst.test:
28910           do not check for libltdl
28911
28912 1999-01-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
28913
28914         * libltdl/ltdl.c (lt_dlopen): missing strlen in bound test
28915
28916 1999-01-09  Thomas Tanner  <tanner@gmx.de>
28917
28918         * NEWS: support for BSD/OS 4.x was not documented
28919         * demo/Makefile.am: link against libm only if available
28920         * mdemo/Makefile.am: likewise, use -avoid-versioning flag
28921           instead of -avoid-version (typo)
28922         * demo/configure.in: check for libm, string.h and math.h
28923         * mdemo/configure.in: likewise
28924         * depdemo/configure.in: check for libm and math.h
28925         * libltdl/configure.in: check for dlerror
28926         * libltdl/ltdl.c: check for buffer overflows, implemented
28927           dlerror, fixed a severe bug which occured when opening
28928           non-libtool modules, dlopen with the flags GLOBAL and NOW
28929         * mdemo/main.c: report the error using lt_dlerror()
28930
28931 1999-01-08  Gary V. Vaughan  <gary@gnu.org>
28932
28933         * doc/libtool.texi (old_archive_from_new_commands): Documented
28934         this ltcofig variable.
28935
28936 1999-01-07  Gary V. Vaughan  <gary@gnu.org>
28937
28938         * ltmain.sh (cygwin, allow_undefined): Unfortunately, there are
28939         problems with this variable when trying to make a dll which has
28940         undefined symbols, in which case not even a static library is
28941         built.  For now, we need to specify -no-undefined on the libtool
28942         link line when we can be certain that all symbols are satisfied,
28943         otherwise we get a static library.
28944
28945 1999-01-06  Thomas Tanner  <tanner@gmx.de>
28946
28947         * ChangeLog: merged in tests/ChangeLog
28948         * tests/ChangeLog: deleted
28949         * libltdl/ltdl.c: assigned copyright to the FSF
28950         * libltdl/ltdl.h, mdemo/foo*,main.c: likewise
28951
28952 1999-01-06  Gary V. Vaughan  <gary@gnu.org>
28953
28954         * ltmain.in (dllsearchpath): add absolute directory paths to
28955         dllsearchpath so that the wrapper scripts can be called from any
28956         directory (e.g. tests) on cygwin.
28957
28958         * ltconfig.in (cygwin, library_names_spec): revert Alexandre's
28959         change from yesterday to use `-dll.a' suffix.  That change caused
28960         $libname-dll.a to be a symlink to $soname, which isn't even an
28961         `ar' archive.  Before the import library suffix can be changed, we
28962         need to figure out how to handle building objects differently for
28963         linking with an import library versus an equivalent static library.
28964
28965         * TODO: Added details of a Linux wrapper script bug.
28966         Reported by Jeff Garzik <jgarzik@pobox.com>.
28967
28968 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
28969
28970         * ltmain.in (libobjs_save, oldobjs): when building an
28971         old-fashioned archive, use a copy of libobjs saved before
28972         convenience libraries are appended
28973
28974         * libltdl/ltdl.h (_LTDLL_EXPORT, _LTDLL_IMPORT): use cygwin or
28975         unix library import/export primitives; this may be convenient for
28976         people willing to create DLLs
28977         (_LTDLL_EXTERN): select _LTDLL_EXPORT or _LTDLL_IMPORT depending
28978         on _LTDL_COMPILE_
28979         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlpreopen): new function,
28980         that replaces the current preloaded_symbols list with its
28981         argument, and returns the old value, initially NULL
28982         (dldpre_init): don't refer to dld_preloaded_symbols any more
28983         (dldpre_open, dldpre_sym): search preloaded_symbols
28984         (lt_dlpreopen_default): call lt_dlpreopen with
28985         dld_preloaded_symbols, that is declared as extern; it should be
28986         called from the main program or from some static library without
28987         -no-undefined
28988         (lt_dlerror): new function, that returns the error message for the
28989         last error occurred; the error message is kept in the static
28990         variable last_error
28991         * libltdl/configure.in (enable-ltdl-install): moved back from
28992         enable-install; other packages might use enable-install already,
28993         better have fine grained control over this.
28994         * libltdl/Makefile.am (libltdls.la): discarded
28995
28996 1999-01-05  Thomas Tanner  <tanner@gmx.de>
28997
28998         * configure.in: do not configure libltdl by default
28999         * Makefile.am: do not build libltdl by default
29000         * libltdl/Makefile.am: ltdls.lo depends on libtool
29001         * tests/Makefile.am: before starting the tests
29002           make sure that libtool was build
29003         * tests/mdemo-conf.test: configure libltdl
29004         * tests/mdemo-make.test: build libltdl
29005
29006 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
29007
29008         * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
29009         would lose for files with embedded blanks.
29010
29011         * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
29012         ltdll.c into ltmain.in, to avoid its duplication, and added a sed
29013         script to extract it.  Also, create def and base files in $objdir,
29014         and don't remove them after the compilation.
29015         (cygwin, library_names_spec): Create static part of the dll with
29016         suffix -dll.a, to avoid conflicts with actual static libraries.
29017         * ltmain.in: Added ltdll.c, as commented out text
29018
29019 1999-01-01  Thomas Tanner  <tanner@gmx.de>
29020
29021         * NEWS: new BeOS support
29022         * THANKS: added Joseph Beckenbach
29023         * libltdl/ltdl.h: use dllimport/export on Win32
29024
29025 1998-12-31  Joseph Beckenbach III <jrb3@best.com>
29026
29027         * ltconfig.in: added support for BeOS
29028         * ltmain.in (shlibpath_var): added a workaround for
29029           an odd bug in the BeOS R4 sed
29030
29031 1998-12-31  Thomas Tanner  <tanner@gmx.de>
29032
29033         * verified all copyright notices
29034           and updated them to 1999
29035         * TODO: added some things that need to documented
29036         * doc/libtool.texi: -export-symbols is not
29037           supported on all platforms
29038         * doc/PLATFORMS: added a few new platforms
29039
29040 1998-12-30  Thomas Tanner  <tanner@gmx.de>
29041
29042         * NEWS: updated
29043         * THANKS: added Todd Vierling <tv@pobox.com>
29044
29045 1998-12-30  Todd Vierling  <tv@pobox.com>
29046
29047         * ltconfig.in: improved shared object handling on both
29048           a.out and ELF platforms for NetBSD
29049
29050 1998-12-29  Thomas Tanner  <tanner@gmx.de>
29051
29052         * ltconfig.in: do not rely on a leading space when concatenating
29053           variables as suggested by Erez Zadok
29054         * ltmain.in: likewise
29055         * doc/PLATFORMS: updated and reformatted
29056           (thanks to Erez Zadok for the testing)
29057
29058 1998-12-27  Thomas Tanner  <tanner@gmx.de>
29059
29060         * THANKS: added Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
29061
29062 1998-12-26  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
29063
29064         * ltconfig.in: support i486-ncr-sysv4.3.03
29065         shared libraries.
29066
29067         * ltmain.in: before every ln -s, remove the link name
29068
29069 1998-12-25  Thomas Tanner  <tanner@gmx.de>
29070
29071         * depdemo/configure.in: removed last relics of demo
29072         * depdemo/sysdep.h: ditto
29073         * mdemo/Makefile.am: ditto
29074         * libltdl/Makefile.am: fixed the version number, build libltdls if
29075           -enable-install and -enable-dlpreopen are enabled
29076         * libltdl/configure.in: libltdl is version 0.1, not 1.0,
29077           renamed -enable-ltdl-install to -enable-install,
29078           conditionals for libltdls, check for strchr and index,
29079           replaced NULL with 0
29080         * libltdl/ltdl.c: replaced NULL with 0, dlpreopen only if
29081           USE_DLPREOPEN was defined, integrated shl_load code from GModule
29082           (still untested)
29083
29084 1998-12-24  Gary V. Vaughan  <gary@gnu.org>
29085
29086         * libltdl/configure.in: fixup spacing in --enable-ltdl-install
29087         help string so that it lines up nicely for configure --help.
29088
29089         * ltmain.in (dllsearchpath): keep track of what the dll search path
29090         will need to be in the wrapper scripts as deplibs are calculated.
29091         Make sure the wrapper script doesn't end in `.exr', which makes
29092         win32 try to execute it as a binary!
29093         Add the contents of dllsearchpath to $PATH in the wrapper script.
29094         Use the relative path to the wrapped program so that the dll
29095         search path is calculated properly by win32 OSes.
29096         * TODO: removed the item for making wrapper scripts work on win32.
29097
29098         * TODO: removed the reference to making libltdl and demo work on
29099         win32.  They *do* work now that wrapper scripts are functioning.
29100
29101         * ltmain.in (file_magic_command): It turns out that if the
29102         file_magic_command generates huge output (e.g. running `objdump
29103         -f' over a large import lib [say libX11.a]) the expr to check it
29104         against the file_magic_regex blows up.  There is now an optimistic
29105         heuristic, to save only the first 10 lines of running
29106         file_magic_command which (at risk of sounding like Bill) should be
29107         enough for anyone =)O|.
29108
29109         * ltmain.in: Set the compile_dependencylibs and dllsearchpath for
29110         non-libtool libs, or else libdeps only works between ltlibs for
29111         cygwin32.
29112
29113 1998-12-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
29114
29115         * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
29116         long lines to sed
29117         * doc/libtool.texi (sed): very long lines are no longer a problem
29118
29119         * libltdl/Makefile.am: install libltdl conditionally...
29120         * libltdl/configure.in: ... if --enable-ltdl-install is issued
29121         * libltdl/ltdl.c: removed #ifdef DEBUG
29122         * mdemo/Makefile.am (mdemo_debug_LDADD, mdemo_debug_DEPENDENCIES):
29123         use libltdl.la
29124
29125 1998-12-23  Gary V. Vaughan  <gary@gnu.org>
29126
29127         * doc/PLATFORMS: added my cygwin32 box (i686-pc-cygwin32).
29128
29129         * TODO: remind myself of the win32 tasks remaining.
29130
29131         * ltconfig.in (archive_cmds, archive_sym_cmds,
29132         old_archive_from_new_cmds): Fixed a bug which left an a.exe in the
29133         build directory.  Fixed a bug where $soname-def was never deleted.
29134
29135         * ltconfig.in (file_magic_command): new variable holds the command
29136         (including any args) to run to generate the string to match
29137         against the regex in $file_magic.  Use the variable where
29138         necessary. Added to libtool header output.
29139         (deplibs_check_method): use file_magic for win32, but compare the
29140         output of `objdump -f' with the regex (see below).
29141         (archive_cmds, archive_sym_cmds): use compile_dependencylibs for
29142         each $CC invokation (see below).
29143
29144         * ltmain.in: Set allow_undefined to `no' for win32 variants by
29145         default, otherwise it is impossible to link a dll without forcing
29146         the makefile maintainer to figure out whether to pass
29147         --no-undefined at every libtool invokation.
29148         (compile_dependencylibs): save the list of dependency library
29149         flags needed for a deplib build on win32.
29150         (link_against_libtool_libs): commented out the check for this;  if
29151         it is left in, then ltlibs (i.e. *.la files) cannot be deplibs for
29152         subsequent links.
29153         Don't add -lc to the deplibs line for win32 platforms (which don't
29154         have a libc as such).
29155         (file_magic_command): use this to get some output to compare with
29156         the file_magic regex (instead of hardcoding `file' which doesn't
29157         exist on win32.
29158         * doc/libtool.texi (Porting inter-library dependencies): Updated
29159         to document the changes above.
29160
29161         * ltconfig.in (deplibs_check_method): Changed the file_magic regex
29162         to match more linux variants.  This is less lenient than Thomas
29163         Tanner's commit to fix the same problem below.
29164         Reported by Joel Klecker <espy@debian.org>
29165         * THANKS: added Joel Klecker <espy@debian.org>
29166
29167 1998-12-23  Thomas Tanner  <tanner@gmx.de>
29168
29169         * ltconfig.in: fixed file-magic for Linux shared libraries
29170         * ltmain.in: removed the unused -force-static flag
29171         * libltdl/ltdl.c: added strchr, search modules in LTDL_LIBRARY_PATH,
29172           check whether actual module was already dlopened,
29173           read in preload_libs rather than dependency_libs
29174
29175 1998-12-23  Thomas Tanner  <tanner@gmx.de>
29176
29177         * libltdl/Makefile.am: build two versions of libltdl:
29178           libltdl (support native dlopen if available, otherwise dlpreopen),
29179           libltdls (like libltdl, but always support for dlpreopen)
29180         * libltdl/ltdl.c: ditto
29181         * libltdl/configure.in: warn if dlopen is not supported
29182         * mdemo/Makefile.am (mdemo.debug): use libltdls
29183
29184 1998-12-22  Gary V. Vaughan  <gary@gnu.org>
29185
29186         * ltconfig.in: revert Thomas Tanners change to create all
29187         libraries without the `lib' prefix on win32, otherwise `gcc foo.c
29188         -lbar' can't find libbar.a.
29189
29190 1998-12-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
29191
29192         * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
29193         dependency hack
29194
29195 1998-12-21  Thomas Tanner  <tanner@gmx.de>
29196
29197         * ltconfig.in: indentation is now 8 character wide tabs
29198         * ltmain.in: ditto
29199         * ChangeLog: ditto
29200         * ltmain.in: renamed check_shared_deplibs_method to
29201           deplibs_check_method (we_dont_want_too_long_variable_names :)
29202         * doc/libtool.texi (Porting inter-library dependencies): ditto
29203         * depdemo/.cvsignore: renamed hell* to depdemo*, added *.lo,*.la
29204         * mdemo/.cvsignore: ditto
29205
29206 1998-12-21  Gary V. Vaughan  <gary@gnu.org>
29207
29208         * libtool.m4 (AM_SYS_NM_PARSE): apparently  __ptr_t is predefined
29209         on some systems - use lt_ptr_t instead.
29210         * ltconfig.in: ditto.
29211         * ltmain.in: ditto.
29212
29213         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): use an AC_SUBST to pass
29214         the result of this into the compile rather than AC_DEFINE which
29215         breaks when building with older versions of autoconf.
29216         * ltconfig.in (symxfrm): Don't put the leading underscore back
29217         with the global_symbol_pipe.
29218         * demo/dlmain.c (main): No need to specialcase underscores in
29219         dld_preloaded_symbols - it is fixed by symxfrm above!
29220         * libltdl/configure.in: use AM_SYS_SYMBOL_UNDERSCORE from
29221         libtool.m4 rather than reinvent the wheel here =)O|
29222
29223         * ltmain.in:  Fix deplibs methods to not rely on a.out (cygwin
29224         uses a.exe!).
29225
29226         * libltdl/configure.in: Cleanups - fix header comment and emacs
29227         local-vars.
29228
29229         * demo/dlmain.c (win32_force_data_import_address): a nasty hack
29230         to force the address of imported data symbols into
29231         dld_preloaded_symbols on win32, which does data imports
29232         differently to function imports (sheesh!).  This functionality
29233         needs to be moved into the dld_preloaded_symbols generation code.
29234         demo/helldl with static linking is broken on win32 by this change,
29235         probably until after libtool-1.3 =(O|
29236         * demo/foo.h: make sure __CYGWIN32__ is always defined on cygwin32
29237         systems.  Use the correct __declspec macro for lib exports/imports
29238         on cygwin32.
29239         * demo/foo.c, demo/hello.c: Make sure we tell foo.h that these
29240         sources are inside libfoo, and want to export symbols.
29241
29242 1998-12-20  Thomas Tanner  <tanner@gmx.de>
29243
29244         * autogen: configure demo, depdemo, libltdl and mdemo
29245         * tests/mdemo-exec.test: renamed hell* to mdemo*
29246         * tests/mdemo-inst.test: ditto
29247
29248 1998-12-19  Thomas Tanner  <tanner@gmx.de>
29249
29250         * libltdl/Makefile.am: build a normal libtool library
29251         * libltdl/ltdl.c: get LTDL_LIBRARY_PATH but don't make use of it yet,
29252           some reformatting
29253         * ltmain.in: fixed a bug which listed symbols in
29254           dld_preloaded_symbols twice
29255         * TODO: removed symbol export lists and deplibs
29256
29257 1998-12-18  Thomas Tanner  <tanner@gmx.de>
29258
29259         * ltconfig.in: added need_lib_prefix and need_version,
29260           which determine whether we must prefix modules with 'lib'
29261           and whether versioning is required for libraries.
29262         * ltmain.in: allow modules names without 'lib' prefix,
29263           new -avoid-versioning option
29264         * doc/libtool.texi (link flags): updated documentation for -module,
29265           added -avoid-versioning
29266         * doc/libtool.texi (libtool script contents):
29267           documented the two new flags and archive_sym_cmds
29268         * doc/libtool.texi (tests):
29269           added (partially very short) documentation for assign.test,
29270           nomode.test, quote.test, sh.test
29271         * libltdl/ltdl.c: canonicalize module names,
29272           some cleanups and bugfixes,  __ptr_t is predefined on
29273           some systems - use lt_ptr_t instead
29274         * mdemo/: renamed hell* to mdemo* (hell is already used in
29275           demo), updated the documentation, import sin and cos in main
29276           program rather than linking libfoo1 statically
29277
29278 1998-12-17  Gary V. Vaughan  <gary@gnu.org>
29279
29280         * libtool.m4 (AM_PROG_LIBTOOL): Added AC_PREREQ(2.12) to prevent
29281         people using libtool with old autoconfs that don't provide the
29282         features we need.
29283
29284 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
29285
29286         * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
29287
29288         * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
29289
29290         * Makefile.am (cvs-dist): our release tags are in lower case
29291         (cvs-diff): ditto
29292         (EXTRA_DIST): added README-alpha
29293         * README-alpha: minor adaptations
29294         * demo/Makefile.am, mdemo/Makefile.am, depdemo/Makefile.am:
29295         removed comment about special needs for distribution
29296         * depdemo/Makefile.am: don't generate dependencies
29297         * depdemo/configure.in: modified version number
29298
29299         * ltmain.in (-force-static, force_static): removed
29300         * libltdl/Makefile.am (CFLAGS): ditto
29301         * libltdl/configure.in: check for memory.h, rindex() and
29302         dlpreopening.  Fixed NEED_USCORE caching policy.
29303         * libltdl/ltdl.h (lt_dlsym): make the name argument const
29304         * libltdl/ltdl.c (types): new variable: head of list of available
29305         dlopening mechanisms
29306         (lt_dltype_t): interface of a dlopening mechanism, with pointers
29307         to functions for init, exit, open, close and sym
29308         (lt_dlhandle_t): added pointer to interface type
29309         (strdup): don't name it strdup; it can be troublesome
29310         (strrchr): ditto; use rindex if available
29311         (LIBTOOL_STATIC): check HAVE_DLPREOPEN instead, and move to the
29312         end of the file, so that it becomes the header of the list
29313         (all): renamed all interface-implementation functions, to avoid
29314         name clashes, and created lt_dltype_t nodes for all of them
29315         (lt_dlinit): initialize all available interfaces; remove those
29316         that fail from the list.  Return failure only if no interfaces
29317         could be initialized.
29318         (lt_dlexit): return number of failures
29319         (tryall_dlopen): try to open the library with all available
29320         interfaces
29321         (lt_dlopen): use tryall_dlopen; increased size of fixed buffers.
29322         We should probably make these bound-checked or dynamically
29323         allocated for the final release!  Fix bug when filename did not
29324         contain slashes; should we check for `\\' too?  Try old_library if
29325         everything else fails.
29326         (lt_dlclose): use the interface type for closing
29327         (lt_dlsym): make `symbol' const, use interface type for looking up
29328         * mdemo/Makefile.am: moved mdemo/modules/* back into mdemo
29329         (SUBDIRS): removed
29330         (libfoo2_la_LDFLAGS): added -static; nice test.  However, since it
29331         causes -lm to linked into hell*, it causes tests that should fail
29332         to pass
29333         (noinst_HEADERS): no need to install foo.h
29334         * mdemo/configure.in: remove modules/Makefile
29335         tests/mdemo-exec.test: updated accordingly
29336
29337         * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
29338         maintainers.  Detailed expected failures of libltdl+mdemo.  Listed
29339         recent ports.  Added full URL for the home page.  Note that
29340         libtool C program is unusable.
29341
29342 1998-12-16  Bruno Haible  <haible@ilog.fr>
29343
29344         * doc/libtool.texi (Tested platforms): broken `sed' programs
29345
29346 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
29347
29348         * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
29349         Tanner, now that they're AUTHORS
29350
29351 1998-12-16  Stephan Kulow  <coolo@kde.org>
29352
29353         * ltmain.in (freebsd-aout, freebsd-elf): added missing dot to
29354         versuffix
29355
29356 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
29357
29358         * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
29359         (libtool): automatically update
29360
29361         * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
29362         * libltdl/ltdl.c: include them
29363
29364         * demo/configure.in (BINARY_HELLDL): test whether dlopen is
29365         supported at configure time
29366         * demo/Makefile.am (helldl): use automake conditionals to build
29367         helldl as a script or as a binary program
29368
29369         * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
29370         (clean-local): don't clean libltdl any more
29371         * tests/ltdl-conf.test: removed
29372         * tests/ltdl-inst.test: ditto
29373         * tests/ltdl-make.test: ditto
29374         * tests/ltdl-unst.test: ditto
29375         * tests/mdemo-make.test: updated accordingly
29376         * tests/mdemo-inst.test: ditto
29377         * tests/mdemo-unst.test: ditto
29378         * doc/libtool.texi: ditto
29379
29380         * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
29381         only for -force-static; it should be removed soon, before people
29382         start to use it
29383
29384         * configure.in (AC_CONFIG_SUBDIRS): added libltdl
29385         * Makefile.am (SUBDIRS): build libltdl by default
29386         (DIST_SUBDIRS): simplify distribution of demo and mdemo
29387         (libtool, clibtool, libtoolize, ltconfig, ltmain.sh): add
29388         srcdir where appropriate
29389         (ACINCLUDE_M4_LIST): new rule for maintaining links from
29390         acinclude.m4 to libtool.m4
29391         (*demo/Makefile.in): don't update autoconf/automake files any
29392         more; make check is needed
29393
29394 1998-12-14  Gary V. Vaughan  <gary@gnu.org>
29395
29396         * ltconfig.in (archive_cmds): tweaked for cygwin b18->b20.1
29397         compatibility and fixed a bug with generating the export
29398         definitions file.  This is only tested on b20.1, but should
29399         work back to b18 at least.
29400
29401 1998-12-11  Thomas Tanner  <tanner@gmx.de>
29402
29403         * ltmain.in: -module implies now -export-dynamic,
29404           dlpreopen files if we're linking statically
29405         * doc/libtool.texi (link flags): added documentation for -module
29406           and the tests for mdemo and libltdl
29407         * mdemo/Makefile.am: replaced -dlpreopen with -dlopen
29408
29409 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
29410
29411         * PORTING: removed the text Akim Demaille converted to .texi
29412
29413 1998-12-09  Akim Demaille  <demaille@inf.enst.fr>
29414
29415         * doc/libtool.texi: converted inter-library dependencies
29416         instructions from PORTING
29417
29418 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
29419
29420         * ltmain.in (convenience, deplibs): propagate dependencies
29421         * libltdl/Makefile.am (noinst_HEADERS): don't install ltdl.h yet
29422         (noinst_LTLIBRARIES): ditto for libltdl.la
29423
29424 1998-12-08  Gary V. Vaughan  <gary@gnu.org>
29425
29426         * README-alpha: adapted the release procedure from
29427           automake/HACKING.
29428         * Makefile.am: adapted the cvs-dist and cvs-diff rules from
29429           automake/Makefile.am.  I guess this is probably safe to use
29430           already, but I didn't test it as it tags the CVS tree.  If
29431           it needs tweaking, we'll find out come 1.2d.
29432
29433 1998-12-08  Thomas Tanner  <tanner@gmx.de>
29434
29435         * ltconfig.in: fixed some typos in archive_sym_cmds
29436         * ltmain.in: replaced basename with a sed expression
29437
29438 1998-12-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
29439
29440         * configure.in: we no longer use PRCS
29441
29442         * doc/libtool.texi (author): listed all the AUTHORS
29443         (Dlopen issues): added reference to libltdl, still undocumented
29444         (C++ libraries): it's not *that* simple, after all :-(
29445         (Inter-library dependencies): they're back!
29446
29447 1998-12-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
29448
29449         * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
29450         work, use `test a = b' instead
29451
29452         * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
29453
29454         * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
29455         not available
29456
29457 1998-12-04  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
29458
29459         * ltconfig.in: Port to SCO UnixWare 7.x.
29460
29461 1998-12-03  Thomas Tanner  <tanner@gmx.de>
29462
29463         * ChangeLog: converted CR/LF back to CR format
29464         * ltconfig.in: new variable sys_lib_search_path for searching
29465         of installed libraries, export archive_sym_cmds and
29466         sys_lib_search_path
29467         * ltmain.in: use sys_lib_search_path, removed extradeplibs
29468         (they're not portable)
29469
29470 1998-12-02  Gary V. Vaughan  <gary@gnu.org>
29471
29472         * libltdl/configure.in: look for string.h or else strings.h, and
29473         also check for ANSI strrchr() function.  Fix `undescore before
29474         symbols' macro to not rely on a.out (cygwin uses a.exe!).  Fix
29475         `underscore for dlsym' to set cache variable properly, not just in
29476         environment of AC_DEFINE(NEED_USCORE).
29477         * libltdl/ltdl.h (__ptr_t): for K&R compatibility using char*.
29478         * libltdl/ltdl.c (strrchr): fallback function incase none is
29479         defined in libc.
29480         (trim, ltdlopen): replace rindex with ANSI strrchr.
29481         Add static function declarations so that we get type checking with
29482         ANSI compilers.  Use __ptr_t instead of void*.
29483
29484 1998-12-01  Thomas Tanner  <tanner@gmx.de>
29485
29486         * ltconfig.in: added -export-symbols support for GNU ld and
29487         Solaris (untested), archive_sym_cmds for -export-symbols
29488         * doc/libtool.texi, ltmain.in: -export-symbols is now
29489         independent from -export-dynamic and does not work for modules
29490         anymore
29491         * ltmain.in: added some checks for -export-symbols
29492         * mdemo/modules/Makefile.am: replaced -export-symbols with
29493         -export-dynamic since it doesn't work for modules
29494
29495 1998-12-01  Gary V. Vaughan  <gary@gnu.org>
29496
29497         * README: Updated homepage pointer to gnu libtool page.
29498
29499         * ltconfig.in (ltdll.c): update the ltdll.c file for cygwinb20.
29500         Based on code from Mumit Khan <khan@xraylith.wisc.edu>.
29501         (archive_cmds): correct typo libtool.c->ltdll.c.  Update shell
29502         commands for cygwin32.
29503
29504         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): New macro; find out
29505         whether compiled symbols have an extra leading underscore.
29506         (AM_SYS_NM_PARSE): New macro (converted to m4 from ltconfig.in);
29507         find a sed expression to parse global symbols from the output of
29508         $NM.
29509         (AM_PROG_LIBTOOL): require AM_SYS_NM_PARSE and
29510         AM_SYS_SYMBOL_UNDERSCORE.
29511         * demo/dlmain.c (main): Remove a single leading underscore from
29512         compiled symbol names if necessary.
29513
29514 1998-12-01  Alexandre Oliva  <oliva@dcc.unicamp.br>
29515
29516         * config.guess, config.sub: imported from autoconf pre-2.13
29517
29518 1998-11-27  Gary V. Vaughan  <gary@gnu.org>
29519
29520         * libtool (AM_PROG_LD): Oops... we need to know the host_os for
29521         the changes below.  I'm not sure whether mingw32 and os2 support
29522         UNC paths, if they did we wouldn't need the check, we could use
29523         UNC paths on all three; or if the bug with $LD not being
29524         shell-meta escaped was fixed, we could use '\\' separators on all
29525         three. AC_REQUIRE'ed AC_CANONICAL_HOST.
29526
29527         * libtool.m4 (AM_PROG_LD): Cannonicalize the absolute path for the
29528         ld program;  The order is funny to provide canonicalization to
29529         paths with '\\' separators as well as '/'.
29530         * ltconfig.in: ditto.
29531
29532         * AUTHORS: Added myself as a co-maintainer.
29533
29534         * ltconfig.in (archive_cmds): The `;\' in a compound statement is
29535         expanded wrongly for cygwin32, mingw32, aix3 and aix4. Changed to
29536         `;'.
29537
29538 1998-11-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
29539
29540         * libtool.spec (URL): point to www.gnu.org
29541         (Source): point to ftp.gnu.org
29542
29543         * Makefile.am (EXTRA_DIST): removed libtool.prj
29544         Reported by Akim Demaille <demaille@inf.enst.fr>
29545
29546 1998-11-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
29547
29548         * ltconfig.in (echo): avoid shell error messages when we're
29549         testing for large command line support
29550         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
29551
29552         * doc/PLATFORMS: updated last-tested release for platforms I've
29553         got access to
29554
29555         * THANKS: added Chris P. Ross
29556
29557 1998-11-24  Chris P. Ross  <cross@eng.us.uu.net>
29558
29559         * ltconfig.in: added recognition of the dynamic linker on BSD/OS 4.x
29560         * README: added BSD/OS 4.x to the list of supported platforms
29561         * doc/PLATFORMS: added BSD/OS 4.x support for various host id's
29562
29563 1998-11-24  David Heine  <dlheine@truffle.Stanford.EDU>
29564
29565         * ltmain.in (pass_all): actively pass the flags
29566
29567 1998-11-24  Thomas Tanner  <tanner@gmx.de>
29568
29569         * depdemo: added inter-library dependencies demo (doesn't work yet!)
29570         * AUTHORS: added myself to the list of maintainers
29571
29572 1998-11-22  Thomas Tanner  <tanner@gmx.de>
29573
29574         * libltdl: added support for .la files, LGPL license,
29575         K&R compatibility, some API changes and bugfixes
29576         * ltmain.in: renamed -module flag (for compiling) to -force-static,
29577         define -DSTATIC when compiling static .o files,
29578         do not include directories in dld_preloaded_symbols
29579         * mdemo: modified mdemo to work with the new libltdl
29580         * tests/mdemo-exec.test, tests/mdemo-inst.test: use .la files
29581
29582 1998-11-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
29583
29584         * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
29585         header files defining it.
29586
29587         * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
29588         libraries with gcc -shared if using gcc without GNU ld.
29589
29590         * ltconfig.in: replaced occurrences of solaris2 with solaris, to
29591         prepare for Solaris 7
29592
29593 1998-11-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
29594
29595         * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen -> -dlopen
29596         (hell_LDFLAGS): added -export-dynamic and -dlopen
29597         (SUBDIRS, INCLUDES): added modules directory
29598         (foo1.c, foo2.c, foo.h, libfoo1.sym, libfoo2.sym): moved to modules
29599         * Makefile.am: ditto
29600         * tests/mdemo-exec.test, tests/mdemo-inst.test: libraries moved
29601         * mdemo/modules/Makefile.am: new file
29602
29603         * */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies
29604
29605         * ltmain.in: missing `test' between `&&' and `"$module"'
29606
29607         * ltconfig.in (echo_test_string): the whole ltconfig script was
29608         too much for DU4.0's ksh, but the first 50 lines will be enough.
29609
29610         * ltmain.in (installed): new variable defined within a .la file,
29611         so that libtool can now link already-installed libraries into a
29612         program.
29613         * NEWS: ditto
29614         * doc/libtool.texi (Linking executables): document it
29615
29616         * ltmain.in (output_objdir): compute it from $output, not $arg
29617
29618         * tests/mdemo-inst.test (libltdl): install it
29619         * tests/mdemo-unst.test (libltdl): uninstall it
29620         * tests/Makefile.am (TESTS): list ltdl-unst.test before mdemo-conf.test
29621
29622 1998-11-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
29623
29624         * NEWS: -module and libltdl
29625         * mdemo/Makefile.am: ../libltdl is within $(srcdir)
29626
29627 1998-11-18  Thomas Tanner  <tanner@gmx.de>
29628
29629         * libltdl, Makefile.am: added libltdl (a system independent
29630         dlopen wrapper library extracted from mdemo)
29631         * ltmain.in: added -module flag for compiling and linking of
29632         modules. If enabled it compiles always both .o (with -DLT_RENAME)
29633         and .lo files
29634         * mdemo: modified mdemo to work with libltdl
29635         * tests/ltdl*: added tests for libltdl
29636
29637 1998-11-16  Steve Price  <sprice@hiwaay.net>
29638
29639         * ltconfig.in: when $host_os is freebsd[23]* determine whether
29640         the current linker format is a.out or ELF
29641         * ltmain.in: add two new $version_type's, freebsd-aout and
29642         freebsd-elf, to support above change
29643
29644 1998-11-16  Stephan Kulow  <coolo@kde.org>
29645
29646         * ltconfig.in: extent no_builtin_flag to contain -fno-rtti and
29647         -fno-exceptions in case we compile with a gcc, that supports
29648         this options (egcs and gcc >= 2.8)
29649
29650 1998-11-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
29651
29652         * ltmain.in (C_compiler): copy $CC before it is overwritten with
29653         command-line compiler, so that we can use it to compile C sources
29654         generated during the build.  This fixes the problem that showed up
29655         with -export-dynamic of C++ programs in egcs 1.1.
29656         * NEWS: ditto
29657
29658 1998-11-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
29659
29660         * PORTING: Porting instructions are in the libtool manual already
29661
29662         * NEWS: Mention -export-symbols and new dlpreopen
29663
29664 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
29665
29666         * ltmain.in (IFS): revert Gary's patch when parsing version
29667         information; we still use `:' here :-)
29668
29669         * NEWS: updated
29670         * PORTING: new file, with general instructions and inter-library
29671         dependencies tips
29672
29673 1998-11-11  Gary V. Vaughan  <gary@gnu.org>
29674
29675         * ltconfig.in: make use of '~' field separator in reload_cmds,
29676         old_archive_from_new_cmds, old_archive_cmds, archive_cmds,
29677         old_postinstall_cmds, postinstall_cmds, old_postuninstall_cmds,
29678         postuninstall_cmds and finish_cmds, so that the semi-colons inside
29679         if/then/else/fi and for/do/done etc. do not break the eval loop in
29680         ltmain.in (below).
29681         * ltmain.in: changed all of the eval loops to use an IFS of `~',
29682         to allow differentiation between the end-of-statement-;
29683         (now `~' is used) and end-of-substatement-; (still `;').  This
29684         fixes AIX and win32 at least.
29685
29686 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
29687
29688         * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
29689         prepended by the compiler
29690
29691 1998-11-10  Toshio Kuratomi  <badger@prtr-13.ucsc.edu>
29692
29693         * ltconfig.in: re-enable deplibs
29694         * ltmain.in: support deplibs, at least for GNU/Linux/x86
29695         Updated to current libtool by Thomas Tanner  <tanner@gmx.de>
29696
29697 1998-11-10  Gordon Matzigkeit  <gord@trick.fig.org>
29698
29699         * ltmain.in (link): Make the relink warning less harsh.
29700
29701 1998-11-07  William M. Perry  <wmperry@aventail.com>
29702
29703         * ltconfig.in (aix3, aix4): uniquify symbol names in archive_cmds
29704
29705 1998-11-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
29706
29707         * ltconfig.in: add --falback-echo, to be used if everything else
29708         fails.  The tests now check the behavior of $echo for very large
29709         strings, because some echo commands would just core dump (e.g.,
29710         Solaris' printf).  If too large strings fail, smaller ones are
29711         tested.
29712         (ltecho): arrange that, if the --fallback-echo method is selected,
29713         echo will be defined in the libtool script so as to re-run itself,
29714         not ltconfig
29715         * ltmain.in: add --fallback-echo
29716         (qecho) ensure that, if --falback-echo is being used, qecho is
29717         defined with the full pathname of the libtool script
29718
29719         * tests/sh.test (test X): ensure that the double-quote supposed to be
29720         reported is really reported
29721
29722 1998-11-07  Thomas Tanner  <tanner@gmx.de>
29723
29724         * mdemo/main.c: removed hardcoded library names; link against -lm
29725         * tests/mdemo-exec, tests/mdemo-inst: pass the library names
29726         to the program
29727
29728 1998-11-07  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
29729
29730         * README: Added DG/UX
29731         * doc/PLATFORMS: ditto
29732
29733 1998-11-04  Michael Tiemann  <tiemann@cygnus.com>
29734
29735         * ltconfig.in (irix6): it's a little bit different from irix5
29736
29737 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
29738
29739         * THANKS: Added Thomas Tanner and Gary V. Vaughan
29740
29741         * ltconfig.in, ltmain.in: updated and fixed the patches below
29742
29743 1998-11-04  Thomas Tanner  <tanner@gmx.de>
29744
29745         * mdemo/*: added new demo to demonstrate building of dlopenend
29746         modules
29747         * tests/Makefile.am, tests/mdemo*: added some tests for mdemo
29748
29749 1998-11-04  Gary V. Vaughan  <gary@gnu.org>
29750
29751         * demo/configure.in: added AC_EXEEXT macro so that the tests can
29752         work on cywin32/mingw32 hosts.  This requires the current CVS
29753         autoconf
29754
29755 1998-11-04  Thomas Tanner  <tanner@gmx.de>
29756
29757         * ltmain.in: New flag -export-symbols; new dlpreopen system
29758         * demo/dlmain.c: removed dld_preloaded_symbol_count
29759
29760 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
29761
29762         * ltmain.in: On installation, don't get confused if the same name
29763         appears more than once in the list of library names.
29764
29765 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
29766
29767         * ltconfig.in: Add objext and libext variables.  Check for object
29768         suffix.  Check for mingw32* as well as cygwin32*.  Use objext when
29769         testing compiler.  Add support for Visual C++ on cygwin32 when not
29770         using gcc.  Add objext, libext, and fix_srcfile_path to generated
29771         libtool script.
29772         * ltmain.in: Use .${objext} rather than .o.  Use fix_srcfile_path
29773         if it is set.  Check for .obj as well as for .o, and for .lib as
29774         well as for .a.  Use .${libext} rather than .a when creating old
29775         libraries.
29776         * libtoolize.in: Change initial /bin/sh to @SHELL@.
29777         * libtool.m4 (AM_PROG_LIBTOOL): Add AC_REQUIRE for
29778         AC_CANONICAL_BUILD, so that autoconf doesn't get mixed up by the
29779         AC_REQUIRE in AC_CHECK_TOOL.
29780
29781 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
29782
29783         * ltconfig.in: Look in the right directory for libtool.c in
29784         archive_cmds for cygwin32.
29785
29786 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
29787
29788         * ltconfig.in: Fix cygwin32 support to avoid using a double
29789         extension, to delete the def file, to set version_type to windows,
29790         and to include versuffix in the DLL name.
29791         * ltmain.in: Add support for a version_type of windows.
29792
29793 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
29794
29795         * ltconfig.in: Add cygwin32 support.
29796         * libtool.m4 (AM_PROG_LIBTOOL): Call AM_SYS_LIBTOOL_CYGWIN32 on a
29797         cygwin32 host.  Pass DLLTOOL and AS to ltconfig.
29798         (AM_SYS_LIBTOOL_CYGWIN32): New macro.
29799
29800 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
29801
29802         * libtool.m4 (sco): fix typo
29803
29804 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
29805
29806         * ltconfig.in: On AIX, don't treat GNU ld specially.
29807
29808 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
29809
29810         * ltconfig.in (hardcode_minus_L): Revert Ian's patch for
29811         ltconfig.in.  Although -L hardcoding is not used with GNU ld, it
29812         does happen, so hardcode_minus_L must be set to yes.
29813
29814         * ltconfig.in (compiler_o_lo): check whether we can write directly
29815         to a .lo
29816
29817         * ltmain.in (compiler_o_lo): if not, write to .o and rename it
29818
29819 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
29820
29821         * ltconfig.in: For sunos4 using GNU ld, set hardcode_minus_L to
29822         no.
29823         * ltmain.in: Add some hacks to make SunOS --enable-shared work
29824         when using GNU ld.
29825
29826 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
29827
29828         * THANKS: Added Marc J. Fraioli
29829
29830 1998-11-04  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
29831
29832         * ltconfig.in (dgux): new supported platforms
29833
29834 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
29835
29836         * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
29837         available, fallback to not so safe mechanism, by setting
29838         need_locks to warn
29839         * ltmain.in (need_locks): when need_locks is set to warn, use the
29840         lockfile to try to fail in case of incorrect concurrent builds
29841
29842         * THANKS: Added Eric Estievenart
29843
29844 1998-11-04  Eric Estievenart  <eric@via.ecp.fr>
29845
29846         * doc/libtool.texi (Compile mode): Document that -o is fully
29847         supported.
29848
29849         * libtool.m4 (libtool-lock): new ARG_ENABLE; sets (need_locks)
29850         * ltconfig.in (disable-lock): control need_locks
29851         (hard_links): check whether hard-links can be used for locking
29852         * ltmain.in (need_locks): use $output_obj.lock for locking
29853
29854 1998-11-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
29855
29856         * ltmain.in: correctly create libraries and programs with
29857         directory components in their names
29858
29859 1998-11-03  Eric Estievenart <eric@via.ecp.fr>
29860
29861         * ltmain.in (output_obj): typo
29862
29863 1998-11-02  Ian Lance Taylor  <ian@cygnus.com>
29864
29865         * ltconfig.in: For sunos4, add ${libname}.so$versuffix to
29866         library_names_spec.
29867         * ltmain.in: For version_type of sunos, set versuffix even if
29868         -version-info was not used.
29869
29870 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
29871
29872         * ltmain.in (libobj): default value must not contain directory
29873         components
29874
29875 1998-11-02  Eric Estievenart <eric@via.ecp.fr>
29876
29877         * ltconfig.in (compiler): detect if the compiler supports
29878         -c and -o flags, create a variable compiler_c_o. Also issue
29879         a big warning if it is not supported
29880
29881         * ltmain.in (compile): enable the -o option as input for libtool.
29882         The objects are not moved if the compiler supports -o with -c.
29883         Sources and objects can contain relative directories.
29884         (link): enable the linking of executables into relative directories
29885
29886 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
29887
29888         * AUTHORS: added myself as a co-maintainer
29889         * THANKS: and removed my name from here
29890
29891         * autogen: new script; run it to bootstrap libtool after checking
29892         it out from CVS
29893
29894         * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
29895         suggested by Robert Lipe <robertl@dgii.com>
29896
29897 1998-10-31  Gordon Matzigkeit  <gord@trick.fig.org>
29898
29899         * demo/Makefile.am (hc-libpath): Use parameters from the libtool
29900         in the top build directory, since the one in the demo directory is
29901         not guaranteed to exist.
29902
29903 1998-10-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
29904
29905         * demo/Makefile.am (objdir): there are no longer quotes around
29906         objdir in the libtool script
29907
29908 1998-10-27  Gordon Matzigkeit  <gord@trick.fig.org>
29909
29910         * ltconfig.in (dynamic_linker): Echo the result to fd 6, so that
29911         --silent works correctly.  From William M. Perry.
29912
29913 1998-09-24  Gordon Matzigkeit  <gord@trick.fig.org>
29914
29915         * ltmain.in (link): Fix problems when building only static
29916         libraries.  From Owen Taylor.
29917
29918 1998-08-20  Gordon Matzigkeit  <gord@trick.fig.org>
29919
29920         * ltmain.in (install): When library_names_spec has redundancies,
29921         avoid deleting the main library when installing symlinks.  From
29922         Jeff Dairiki.
29923         (link): Get rid of backticks in a here doc comment.
29924         This causes segfaults on Solaris 2.  From Aleksandar Bakic.
29925         (finish): Don't display messages
29926
29927         * ltconfig.in (archive_cmds): On HP-UX 9, make sure we don't try
29928         to move a file to itself.  From Jeff Dairiki.
29929
29930 1998-08-19  Gordon Matzigkeit  <gord@trick.fig.org>
29931
29932         * ltconfig.in: Make changes to accomodate ltmain.c.
29933
29934         * Makefile.am (clibtool): New target for the C version of libtool.
29935
29936         * ltmain.c: Experimental C version of libtool.
29937
29938 1998-07-10  Ian Lance Taylor  <ian@cygnus.com>
29939
29940         * ltmain.in (install): Test against both $SHELL and /bin/sh.
29941
29942 1998-06-30  Gordon Matzigkeit  <gord@trick.fig.org>
29943
29944         * ltmain.in: Convenience archive support.  From Ulrich Drepper.
29945
29946         * ltconfig.in (postinstall_commands): Change libraries to be
29947         executable on Solaris in order to prevent ldd from moaning.  From
29948         Julian Gosnell.
29949         (whole_archive_flag_spec): New variable to shortcut convenience
29950         archive expansion.  From Ulrich Drepper.
29951
29952 1998-06-11  Gordon Matzigkeit  <gord@profitpress.com>
29953
29954         * ltconfig.in, ltmain.in: Change globs to accept forward slashes
29955         in absolute directory names used on DOS-like systems.  From Robert
29956         S. Maier.
29957
29958 Thu May 28 18:59:08 1998  Ian Lance Taylor  <ian@cygnus.com>
29959
29960         * ltconfig.in: Use $SHELL when invoking shell scripts.
29961
29962 1998-05-21  Gordon Matzigkeit  <gord@profitpress.com>
29963
29964         * ltmain.in (compile): Don't have `-static' turn off libtool
29965         libraries, so that people can use it just to guarantee that `.o'
29966         files exist.  Suggested by David Mosberger-Tang.
29967
29968 1998-05-18  Gordon Matzigkeit  <gord@profitpress.com>
29969
29970         * ltmain.in (link): Possibly reexec the shell from within the
29971         wrapper script.
29972         Allow `-version-info' and `-release' to coexist again.  If people
29973         want to shoot themselves in the foot, I'd better let them do so,
29974         so that people who are smart enough not to can squeeze out another
29975         ounce of functionality.  From Tim Janik.
29976         (version_vars): Delete dead variable.
29977
29978         * ltconfig.in (hardcode_minus_L): FreeBSD 3.0 doesn't hardcode, at
29979         last.  Reported by Jason Nordwick.
29980
29981         * libtoolize.in, ltconfig.in, ltmain.in: Change a bunch of `if
29982         test ...; then : ; else ...' constructs to `if test ! ...; then
29983         ...', for clarity.
29984
29985 1998-05-17  Gordon Matzigkeit  <gord@profitpress.com>
29986
29987         * ltmain.in (LC_ALL, LANG): Save these values and restore them
29988         during execute mode.  From Pavel Kankovsky.
29989         (mode): Accept strace and truss as programs that throw us into
29990         execute mode.  From Pavel Kankovsky.
29991
29992 1998-05-07  Ian Lance Taylor  <ian@cygnus.com>
29993
29994         * ltconfig.in: Don't use .$versuffix or .$major.  Instead, assume
29995         the variable will include any required prefix.
29996         * ltmain.in: If no -version-info option was used, produce empty
29997         version strings rather than 0.0.0.  When making library symlinks,
29998         avoid making a symlink if the name would be the same.
29999
30000 1998-04-27  Gordon Matzigkeit  <gord@profitpress.com>
30001
30002         * ltmain.in (link): Support `unsupported' as a hardcode_action.
30003         Reported by Lars Hecking.
30004         (lib_linked): Do some sanity checking to make sure that we
30005         actually do link libtool libraries into the program to prevent the
30006         above problem from happening again.
30007
30008 1998-04-20  Gordon Matzigkeit  <gord@profitpress.com>
30009
30010         * ltmain.in: Maybe reexec under $SHELL, if $echo doesn't work.
30011         Reported by Lars Hecking.
30012
30013 1998-04-19  Gordon Matzigkeit  <gord@profitpress.com>
30014
30015         * Makefile.am (maintainer-rekey): New rule to force us to change
30016         Project-Version after we make a release.  This keeps all version
30017         numbers in sync, rather than branching just before the release.
30018         (maintainer-release, maintainer-checkin): Use maintainer-rekey.
30019
30020         * ltmain.in (finish): Notice when a finish command fails, so that
30021         we can add it to the list of recommendations.
30022
30023 1998-04-17  Gordon Matzigkeit  <gord@profitpress.com>
30024
30025         * libtool.m4 (AM_PROG_LIBTOOL): Append file descriptor 5 to
30026         config.log, so that configure doesn't clobber the messages that
30027         ltconfig put there.  From David Taylor.
30028
30029 1998-04-15  Gordon Matzigkeit  <gord@profitpress.com>
30030
30031         * ltconfig.in (archive_cmds): Try using `$CC -shared' when
30032         configuring for GCC under irix5 and irix6.  From Wolfram Gloger.
30033         (ofile): Add `--output' flag to change the name of the generated
30034         libtool.  Suggested by Wolfram Gloger.
30035
30036 1998-04-14  Gordon Matzigkeit  <gord@profitpress.com>
30037
30038         * ltmain.in: Remove all hardcoded references to ltmain.in in
30039         favour of $PACKAGE and $PROGRAM.
30040         (install): Compute the installation name for programs, in case we
30041         install a relinked file which has a different name.  Reported by
30042         Pieter Schoenmakers.
30043
30044         * ltconfig.in (echo): Try using the ksh(1) `print -r' builtin
30045         command, before reverting to printf(1).
30046
30047         * Makefile.am (libtool): Use $(SHELL) when invoking ltconfig.
30048
30049         * ltconfig.in (echo): Rewrite the test for a working echo so that
30050         we win on Solaris by avoiding printf(1), if possible.
30051
30052         * tests/quote.test (echo): Update the echo test from ../ltconfig.in.
30053
30054 1998-04-13  Ian Lance Taylor  <ian@cygnus.com>
30055
30056         * libtool.m4 (AM_PROG_NM): Don't override NM in the environment.
30057
30058 1998-04-13  Gordon Matzigkeit  <gord@profitpress.com>
30059
30060         * ltmain.in: New `--config' flag to print out all configured
30061         variables.
30062
30063         * libtool.m4: Pass ltconfig the undocumented --no-reexec flag,
30064         since we call it explicitly using CONFIG_SHELL.
30065
30066         * ltconfig.in: Restart the script under a different shell if
30067         CONFIG_SHELL is not /bin/sh.  This way, people can use Bash if
30068         they don't have a working echo program.
30069
30070         * ltmain.in, ltconfig.in: Use $SHELL instead of /bin/sh when
30071         generating executable scripts.
30072
30073         * libtoolize.in, ltconfig.in, ltmain.in: Implement the `--debug'
30074         flag to begin shell tracing.
30075
30076         * ltconfig.in (archive_cmds): Don't use `gcc -shared', even if we
30077         have GNU ld.  Reported by Robert S. Maier.
30078
30079 1998-04-06  Gordon Matzigkeit  <gord@profitpress.com>
30080
30081         * ltconfig.in (pic_flag): Create more than just a null C file, so
30082         that the SunPRO 4.2 cc doesn't complain.  From Bob Friesenhahn.
30083         (gnu_ld_acts_native): Delete this variable.  There is just too
30084         much version skew to try to pretend GNU ld is the same as the
30085         system ld.  Reported by Ian Lance Taylor.
30086         (hardcode_action): Don't bother relinking or aborting on systems
30087         that are too dynamic to have a consistent hardcode method.
30088         Reported by Doug Winterburn.
30089
30090 1998-03-24  Gordon Matzigkeit  <gord@profitpress.com>
30091
30092         * doc/libtool.texi: A little proofreading.  From Albert
30093         Chin-A-Young.
30094
30095 1998-03-23  Gordon Matzigkeit  <gord@profitpress.com>
30096
30097         * ltconfig.in: Treat HP-UX 11 just like HP-UX 10.  From Jeff Law.
30098
30099 1998-03-21  Gordon Matzigkeit  <gord@profitpress.com>
30100
30101         * ltconfig.in (reload_flag): Correct a tiny bug where `--silent'
30102         would still print out the reload flag.  From Stephan Kulow.
30103
30104 1998-03-20  Ian Lance Taylor  <ian@cygnus.com>
30105
30106         * libtool.m4: Use changequote to avoid problems with square
30107         bracket patterns.
30108
30109 1998-03-20  Gordon Matzigkeit  <gord@profitpress.com>
30110
30111         * Release 1.2.
30112
30113 1998-03-18  Gordon Matzigkeit  <gord@profitpress.com>
30114
30115         * ltmain.in: Rearrange some of the echos to make them more
30116         consistent.
30117
30118 1998-03-14  Gordon Matzigkeit  <gord@profitpress.com>
30119
30120         * ltmain.in: Break up an echo command that causes Solaris printf
30121         to dump core.  Apparently the Solaris people hardcoded a 2110-byte
30122         buffer into their printf(1).  Feh.  From John Judge.
30123
30124 1998-03-11  Gordon Matzigkeit  <gord@profitpress.com>
30125
30126         * ltconfig.in: Change the test for the PIC compiler flag so that
30127         we assume it doesn't work if there are any warning messages.  This
30128         fixes a bug using old GCC's on HP-UX.  Reported by Akim Demaille.
30129
30130 1998-03-10  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
30131
30132         * Makefile.am ($(srcdir)/ltconfig): Remove bogus command to create
30133         a file ltconfig in the build directory.
30134
30135 1998-03-09  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
30136
30137         * ltmain.in: Avoid unnecessary use of command substitution,
30138         replacing foo=`eval \\$echo \"$mumble\"` by eval foo=\"$mumble\".
30139
30140         (link): Use ${1+"$@"} in wrapper scripts in order to pass
30141         arguments safely to a program.
30142
30143         * ltconfig.in: Use -fpic instead of -fPIC if $host_cpu matches
30144         m68*.
30145
30146 1998-03-08  Gordon Matzigkeit  <gord@profitpress.com>
30147
30148         * Release 1.1.
30149
30150         * ltmain.in: <sigh> I like `here documents' a lot, but apparently
30151         they are so badly handled by old and buggy /bin/sh's, that
30152         replacing `cat <<EOF ... EOF' by `$echo "..."' improves libtool's
30153         speed by a factor of 5.  So, I've eliminated here docs from the
30154         all-important ltmain.in.  From Tom Lane.
30155
30156         * tests/tlibtool: Eliminate from distribution.
30157
30158         * tests/defs (libtool): Don't use tlibtool anymore, since we can now use
30159         the generated libtool directly.
30160
30161 1998-03-07  Gordon Matzigkeit  <gord@profitpress.com>
30162
30163         * ltconfig.in: Copy the contents of ltmain.sh into the generated
30164         libtool.  This should more than halve the execution times on old
30165         or buggy /bin/sh systems, such as HP-UX 9 and SunOS 4.1.4.  From
30166         Tom Lane.
30167
30168 1998-03-05  Gordon Matzigkeit  <gord@profitpress.com>
30169
30170         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): Add support for
30171         the `default' package, so that people can control unnamed
30172         packages.
30173         (LD): Only add an ABI flag under IRIX 6.x, since IRIX 5.x doesn't
30174         support them.  From Alexandre Oliva.
30175
30176 1998-03-01  Gordon Matzigkeit  <gord@profitpress.com>
30177
30178         * ltconfig.in: Port to UnixWare 2.x.  From Christopher Olsen.
30179
30180 1998-02-25  Gordon Matzigkeit  <gord@profitpress.com>
30181
30182         * ltmain.in (compile): For consistency, honour the `-static' flag
30183         during compilation.
30184
30185 1998-02-23  Brendan Kehoe  <brendan@cygnus.com>
30186
30187         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): For
30188         --enable-shared, heed the value of $PACKAGE from AM_INIT_AUTOMAKE
30189         if given as the argument for the library to be built shared.
30190
30191 1998-02-20  Gordon Matzigkeit  <gord@profitpress.com>
30192
30193         * libtool.m4, ltconfig.in (NM): Fix up a typo confusion between
30194         $ac_dir and $dir.  Reported by Akim Demaille.
30195
30196         * ltmain.in (link): Don't allow both `-version-info' and
30197         `-release'.  Reported by Danny Backx.
30198
30199 1998-02-18  Gordon Matzigkeit  <gord@profitpress.com>
30200
30201         * Makefile.am (noinst_SCRIPTS): Remove lineno from distribution.
30202
30203         * lineno: Remove from distribution, as it is no longer needed.
30204
30205         * Makefile.am ($(srcdir)/ltconfig.in, $(srcdir)/ltmain.sh):
30206         Rewrite these rules not to use config.status or lineno.  This
30207         makes things simpler, and reduces dependencies, so that the
30208         scripts are rebuilt and installed in srcdir only when necessary.
30209         Reported by Stephan Kulow.
30210
30211         * tests/sh.test (scripts): Remove the lineno script, since it is no
30212         longer distributed.
30213
30214         * tests/assign.test, if.test, test-e.test: Even though 15 tests looks
30215         impressive, these are now redundant.  Remove them from the
30216         distribution.
30217
30218         * tests/sh.test: Do what assign.test, if.test, and test-e.test used to
30219         do.
30220
30221 1998-02-16  Gordon Matzigkeit  <gord@profitpress.com>
30222
30223         * libtool.m4, ltmain.in, ltconfig.in: Correctly identify absolute
30224         directory names on MS-DOS.  Suggested by Bob Friesenhahn.
30225
30226         * ltconfig.in, ltmain.in, libtool.m4: Change a bunch of `sed N!d'
30227         commands to `sed Nq', for efficiency.
30228
30229         * ltmain.in: Only egrep the first few lines of files in order to
30230         determine if they were libtool-generated.  This prevents egrep(1)
30231         from taking forever to look at a 10MB binary on Solaris.  From
30232         Stephan Kulow.
30233
30234         * tests/defs: Correctly identify absolute directory names on MS-DOS.
30235         Suggested by Bob Friesenhahn.
30236
30237 1998-02-11  Gordon Matzigkeit  <gord@profitpress.com>
30238
30239         * ltconfig.in (no_undefined_flag): Add a flag to declare under
30240         Solaris that the library should not have any undefined
30241         references.  Suggested by Bob Friesenhahn.
30242
30243         * ltmain.in (mkdir): Fix one more mkdir race.  From H.J. Lu.
30244
30245 1998-02-08  Gordon Matzigkeit  <gord@profitpress.com>
30246
30247         * ltconfig.in, ltmain.in (striplib, old_striplib): Ditto.
30248
30249         * ltconfig.in (profile_flag_pattern): Get rid of dead code.
30250
30251 1998-02-07  Gordon Matzigkeit  <gord@profitpress.com>
30252
30253         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): New macros to
30254         modify the `--enable-shared' and `--enable-static' defaults in the
30255         configure script.  This works a lot better than the old
30256         `enable_shared' and `enable_static' variables did.  Reported by
30257         Bob Friesenhahn.
30258
30259         * tests/suffix.test (extensions): Added GNAT (GNU Ada Translator)
30260         suffices, `.ada', `.ads', `.adb'.  From Samuel Tardieu.
30261
30262 1998-02-07  Samuel Tardieu  <sam@inf.enst.fr>
30263
30264         * ltmain.in: Recognize .ada, .ads and .adb as known suffixes (they
30265         are used by GNAT, the GNU Ada compiler).
30266
30267 1998-02-06  Gordon Matzigkeit  <gord@profitpress.com>
30268
30269         * ltconfig.in: Turn on IRIX shared libraries again!
30270
30271         * libtool.m4 (LD): Use file(1) to discover which ABI we're using
30272         on IRIX, and propagate the correct linker flag.  From Jim Wilson.
30273
30274         * ltconfig.in, ltmain.in (Xsed): `arg=-n; echo "$arg" | sed ...'
30275         gives problems, because the `-n' is interpreted as an option to
30276         echo(1).  So, use `echo "X$arg" | sed -e 's/^X//' ...' everywhere,
30277         via the $Xsed convenience variable.  Suggested by H.J. Lu.
30278
30279 1998-02-02  Gordon Matzigkeit  <gord@profitpress.com>
30280
30281         * ltconfig.in: Turn off IRIX shared library support until 32-bit
30282         and 64-bit ABI differences can be resolved.
30283
30284 1998-01-28  Gordon Matzigkeit  <gord@profitpress.com>
30285
30286         * libtool.m4 (LD): Reverse yesterday's change because `-old_ld'
30287         isn't accepted by GCC.
30288
30289 1998-01-27  Gordon Matzigkeit  <gord@profitpress.com>
30290
30291         * ltconfig.in (soname_spec): Add in user-specified release numbers
30292         for every host system that supports an soname that differs from
30293         the linkname.
30294
30295         * libtool.m4 (LD): Add `-old_ld' to the list of flags that need to
30296         be passed through on SGI.  Reported by Chris Lee.
30297
30298         * ltmain.in (release): Prepend a hyphen to the release number, and
30299         fix a typo because `-version-info' takes only 3 args.  From
30300         H.J. Lu.
30301
30302 1998-01-25  Gordon Matzigkeit  <gord@profitpress.com>
30303
30304         * ltconfig.in (library_names_spec): On Linux, use the
30305         user-specified release.
30306
30307         * ltmain.in (link): Allow the user to specify a release number for
30308         the library using the `-release' flag.  Suggested by H.J. Lu and
30309         Ian Lance Taylor.
30310
30311 1998-01-23  Gordon Matzigkeit  <gord@profitpress.com>
30312
30313         * tests/Makefile.am (TESTS_ENVIRONMENT): Export some important
30314         environment variables.  Reported by Ian Haggard.
30315
30316 1998-01-19  Gordon Matzigkeit  <gord@profitpress.com>
30317
30318         * ltconfig.in (old_postuninstall_cmds): Reorder so that chmod
30319         happens after ranlib.  From Markus F.X.J. Oberhumer.
30320
30321         * ltmain.in (mode): Added `gcc*' and `*-gcc*' to the patterns that
30322         recognize compilers.  From Pieter Schoenmakers.
30323         (link): Recognize `.a' files again.  Suggested by Pieter
30324         Schoenmakers.
30325
30326 1998-01-18  Gordon Matzigkeit  <gord@profitpress.com>
30327
30328         * ltmain.in (compile): Recognize `.asm' extension, for use with
30329         the nasm assembler.  From Markus F.X.J. Oberhumer.
30330
30331         * tests/suffix.test (extensions): Recognize `.asm'.  From Markus
30332         F.X.J. Oberhumer.
30333
30334 1998-01-12  Gordon Matzigkeit  <gord@profitpress.com>
30335
30336         * ltconfig.in (runpath_var): Use instead of
30337         `hardcode_runpath_var'.
30338
30339 1998-01-11  Gordon Matzigkeit  <gord@profitpress.com>
30340
30341         * ltmain.in (finish): Add a better --finish message.  Suggested by
30342         Kenneth Albanowski.
30343
30344         * ltconfig.in, ltmain.in: Fix a few typos.
30345
30346 1998-01-03  Gordon Matzigkeit  <gord@profitpress.com>
30347
30348         * ltmain.in (link): Quote the definition of $echo in the wrapper
30349         script.
30350
30351         * ltconfig.in (export_dynamic_flag_spec): Use `--export-dynamic'
30352         instead of `-export-dynamic', which is not accepted by all GNU
30353         ld's.  From Eiichi Takamori.
30354
30355         * ltmain.in (install): Don't print silly `library stripping'
30356         warnings.  Reported by François Pinard.
30357
30358 1997-12-19  Gordon Matzigkeit  <gord@profitpress.com>
30359
30360         * ltmain.in: Don't forget to quote the CDPATH substitution.  From
30361         Tor Lillqvist.
30362
30363 1997-12-18  Gordon Matzigkeit  <gord@profitpress.com>
30364
30365         * ltconfig.in, ltmain.in (CDPATH): Unset this environment variable
30366         so that HP-UX shells, at least, don't print out the directory name
30367         after a `cd' command.  From Tor Lillqvist.
30368
30369 1997-12-10  Gordon Matzigkeit  <gord@gnu.org>
30370
30371         * demo/Makefile.am (hardcode): Change a bunch of references to
30372         `$(LIBS)' to `-lm', since we no longer put -lm in LIBS.
30373
30374         * demo/configure.in: Delete the test for libm, since it is
30375         standard on every system.
30376
30377         * demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm,
30378         in accordance with new inter-library dependency code.
30379
30380         * ltmain.in (dependency_libs): Added to help people link programs
30381         without having to explicitly specify inter-library dependencies.
30382
30383         * ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3
30384         restriction to the generated libtool script.  Reported by Stefan
30385         Westerfeld.
30386
30387 1997-12-05  Gordon Matzigkeit  <gord@gnu.org>
30388
30389         * ltconfig.in (thisdir): Quote $echo in the generated libtool
30390         script for HP-UX.  From Markus F.X.J. Oberhumer.
30391
30392         * ltmain.in (link): Recognize the `.s' suffix.  From Markus
30393         F.X.J. Oberhumer.
30394
30395         * ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX
30396         because link_static_flag is never evaled.  From Eric Backus.
30397
30398         * tests/suffix.test (extensions): Recognize `.s'.  From Markus
30399         F.X.J. Oberhumer.
30400
30401 1997-12-01  Gordon Matzigkeit  <gord@gnu.org>
30402
30403         * demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our
30404         dependencies so that parallel builds work correctly.  From Jim
30405         Meyering.
30406
30407         * Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite
30408         these rules so that they are parallelizable.  Reported by Jim
30409         Meyering.
30410
30411         * ltconfig.in (ltecho): We need special handling to quote the
30412         `echo' variable itself.  From Alexandre Oliva.
30413
30414 1997-11-29  Gordon Matzigkeit  <gord@gnu.org>
30415
30416         * ltconfig.in (COLLECT_NAMES): Enable this workaround for a broken
30417         collect2 only on AIX 3.  This avoids problems on other AIX
30418         versions.  Reported by Stefan Westerfeld.
30419
30420         * ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds,
30421         except it is a single command which is evaled, and not shown.
30422
30423         * ltconfig.in: Port to AmigaOS.  From Joop van de Wege.
30424
30425         * ltmain.in (echo): Delete preamble to check for a working echo,
30426         since we just use the one included in the generated libtool.
30427
30428         * ltconfig.in (echo): Include this definition in the generated
30429         libtool script.
30430
30431 1997-11-28  Gordon Matzigkeit  <gord@gnu.org>
30432
30433         * ltconfig.in, libtool.m4 (NM): Add /usr/ccs/bin to the PATH
30434         before checking.  From Kaveh R. Ghazi.
30435         (NM): Delete an extraneous egrep from ltconfig.
30436
30437         * ltconfig.in (finish_cmds): Change back to using `ldconfig -n'.
30438         This makes Linux behave like other systems, which is more in line
30439         with what libtool needs.
30440
30441 1997-11-27  Gordon Matzigkeit  <gord@gnu.org>
30442
30443         * ltmain.in: Change a whole bunch of `progname' variables to
30444         `modename'.  This is for clarity, and to fix a tiny typo in finish
30445         mode.
30446
30447         * libtool.spec (Name, Version): Ditto.
30448
30449         * configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate
30450         the proper package name and version number.
30451
30452         * ltconfig.in (gnu_ld_acts_native): Treat GNU ld like the native
30453         linker on SunOS 4.x.  Suggested by Alexandre Oliva.
30454         (deplibs): Change the defaults all over, since most systems cannot
30455         handle inter-library dependencies.
30456
30457         * libtool.m4, ltconfig.in (NM): Only look at the first line of the
30458         output from NM when determining whether it supports a command line
30459         option.  This prevents false positives on OSes which ignore
30460         invalid flags, like HP-UX, which prints `nm: unknown option "B"
30461         ignored'.  Reported by Kaveh R. Ghazi.
30462
30463         * ltconfig.in (finish_cmds): On Linux, update ld.so.cache by
30464         removing the `-n' flag from ldconfig.  Suggested by Kenneth
30465         Albanowski.
30466
30467         * Makefile.am (maintainer-checkin, maintainer-release): New
30468         commands to reap the full benefit of using PRCS to maintain
30469         libtool version numbers.
30470
30471         * ltconfig.in, ltmain.in (global_symbol_pipe): Explicitly cast all
30472         addresses to __ptr_t.  This fixes a bug due to a strict IRIX
30473         compiler.  Suggested by Kaveh R. Ghazi.
30474
30475 1997-11-23  Gordon Matzigkeit  <gord@gnu.org>
30476
30477         * ltmain.in (echo): For aesthetics, avoid using `$echo' when
30478         `echo' will do *exactly* the same thing.  This prevents ugly
30479         `printf %s\n timestamp > some.lo' commands from appearing in the
30480         libtool output.
30481         (link): Delete the `-allow-undefined' flag because it is now the
30482         default.  Make `-no-undefined' in order for people to declare that
30483         a library is entirely self-contained.  This prevents maintainers
30484         from accidentally creating shared libraries that won't work on
30485         AIX.  Reported by Stefan Westerfeld and Danny Backx.
30486
30487         * ltconfig.in (echo): Use an echo variable, just as in ltmain.in,
30488         because we need it for quoting substitutions.  For most of the
30489         script, though, use the default echo, just like Autoconf does.
30490         Without this patch, character \001 ends up in global_symbol_pipe.
30491         Reported by Lars Hecking and Jürgen Fluk.
30492
30493         * ltmain.in (echo): Set default to `echo=echo'.  Ooops.  That's
30494         what you get for testing obscure code paths and forgetting to
30495         revert to the original version.  Reported by Danny Backx.
30496
30497 1997-11-14  Gordon Matzigkeit  <gord@gnu.org>
30498
30499         * ltconfig.in (hardcode_libdir_flag_spec): Set to `-R' for FreeBSD
30500         2.2.  From Sean Kelly.
30501         (postuninstall_cmds, old_postuninstall_cmds): Commands to run
30502         after uninstall mode deletes the libraries.  Suggested by Joop van
30503         de Wege.
30504         (export_dynamic_flag_spec): On HP-UX, add the `${wl}-E'
30505         export_dynamic_flag_spec.  Reported by Matthias Hoelzer.
30506
30507 1997-11-11  Gordon Matzigkeit  <gord@gnu.org>
30508
30509         * ltconfig.in, ltmain.in (sed_quote_subst): Oops.  We forgot to
30510         quote backticks.  Reported by Joop van de Wege.
30511
30512         * tests/quote.test: Add backticks to the backslashify test.
30513
30514 1997-11-09  Gordon Matzigkeit  <gord@gnu.org>
30515
30516         * ltconfig.in (symcode): On IRIX, don't extract undefined
30517         symbols.  When a function is inlined by G++, references to it are
30518         still marked as undefined in the object file.  This means that our
30519         symbol file causes undefined references, because there are
30520         actually no matching global symbols.  Reported by Paul Kendall.
30521
30522 1997-11-08  Gordon Matzigkeit  <gord@gnu.org>
30523
30524         * ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool
30525         script fragment to the generated libtool, rather than to stdout.
30526
30527 1997-11-07  Gordon Matzigkeit  <gord@gnu.org>
30528
30529         * libtool.m4 (LD): Add a more sophisticated test to determine the
30530         ABI flag on IRIX 6.  Suggested by Lars Hecking and Ian Lance
30531         Taylor.
30532
30533         * ltconfig.in, ltmain.in (COLLECT_NAMES): Only export this
30534         variable if we are running under AIX.  Otherwise, we tickle a g++
30535         bug under IRIX.  From Paul Kendall.
30536
30537         * Change bug reporting address to <bug-libtool@gnu.org>.
30538
30539         * ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a
30540         wildcard argument to `-expect_unresolved'.  From Stephan Kulow.
30541
30542 1997-11-06  Gordon Matzigkeit  <gord@gnu.org>
30543
30544         * ltmain.in (link): Use libname_spec.
30545
30546         * ltconfig.in (pic_flag): Somehow, the HP-UX pic_flag (`+Z') was
30547         dropped between libtool-1.0 and now.  Add it back in.  Reported by
30548         Akim Demaille.
30549         Integrated more patches for OS/2.  From Jeff Freedman.
30550         (libname_spec): New variable for OSes that don't require their
30551         libraries to look like `libNAME.a'.
30552
30553         * ltmain.in (link): Only use global_symbol_pipe if it has been
30554         defined.  From Stephan Kulow.
30555
30556         * ltconfig.in (global_symbol_pipe): Protect C fragment under C++
30557         compilers.  From Stephan Kulow.
30558
30559         * Makefile.am ($(srcdir)/acinclude.m4,
30560         $(srcdir)/demo/acinclude.m4): Change rules to use LN_S so that
30561         they can be run on any system.
30562
30563         * ltconfig.in (archive_cmds): For NetBSD, don't include deplibs.
30564         From Dieter Baron.
30565
30566         * ltmain.in (mkdir): Check that the directory doesn't exist before
30567         we exit with error, so that we don't get races during parallel
30568         builds.  From H.J. Lu.
30569         (fbsd_hideous_sh_bug): Apparently, some FreeBSD /bin/sh's have a
30570         bug that will empty base_compile unless we do this dummy
30571         assignment.  From Marc van Kempen.
30572
30573 1997-10-22  Gordon Matzigkeit  <gord@gnu.org>
30574
30575         * libtool.m4 (libtool_shared, libtool_static): Fixed logic error
30576         to reenable override of libtool's defaults by setting
30577         enable_shared or enable_static in configure.in.  Reported by Tom
30578         Tromey and Stephan Kulow.
30579
30580         * ltmain.in (link): Add explicit support for compiler options that
30581         begin with `+'.  Reported by Aubert Pierre.
30582
30583 1997-10-20  Gordon Matzigkeit  <gord@gnu.org>
30584
30585         * ltmain.in: Silly me.  Change a bunch of occurances of "* $dir *"
30586         into *" $dir "*.
30587
30588         * ltconfig.in (pic_flag): PIC is the default for AIX.  From Mark
30589         Kettenis.  It is also the default for OSF/1.
30590
30591         * demo/Makefile.am (objdir): Quote double-quotes.  From Mark
30592         Kettenis.
30593
30594         * ltconfig.in (global_symbol_pipe): This variable is not
30595         double-evaled, so it should not be double quoted.  From Mark
30596         Kettenis.
30597
30598 1997-10-19  Gordon Matzigkeit  <gord@gnu.org>
30599
30600         * ltconfig.in (LD): Same as below.
30601
30602         * libtool.m4 (LD): Set LD if we discover an absolute path to GNU
30603         ld.  This prevents breakage when `$CC -print-prog-name=ld' returns
30604         an absolute directory name.  Reported by Ulrich Drepper.
30605
30606         * ltconfig.in: Port to OS/2 using EMX.  From Jeff Freedman.
30607
30608         * ltmain.in (link): Use old_archive_from_new_cmds.
30609
30610         * ltconfig.in (old_archive_from_new_cmds): New variable to
30611         support DLL libraries.
30612
30613         * ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is
30614         not empty.  Reported by Stephan Kulow.
30615
30616 1997-10-18  Gordon Matzigkeit  <gord@gnu.org>
30617
30618         * ltconfig.in (objdir): Use the .libs directory on all systems for
30619         which that name is valid, and _libs on the others (like MS-DOS).
30620         Suggested by Juergen Erhard.
30621
30622 1997-10-14  Gordon Matzigkeit  <gord@gnu.org>
30623
30624         * ltmain.in (link): Added a bit more inter-language support to the
30625         symbol file generation process.
30626         Instead of complaining about unrecognized argument suffices, pass
30627         them to the linker.  This prevents libtool from barfing on
30628         mandatory arguments to linker flags.  Reported by Michael
30629         Tiemann.
30630
30631 1997-10-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30632
30633         * ltmain.in (link): Change the wrapper script to follow symlinks
30634         in order to find thisdir.  This should put the final nail in the
30635         coffin for problems with wrapper scripts.  From Ian Lance Taylor.
30636
30637 1997-10-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30638
30639         * ltmain.in: Change a few `$echo' commands into `$show' to make
30640         --silent mode behave as advertised.
30641
30642         * ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use
30643         `-expect_unresolved \*'.  From Christian Mondrup.
30644
30645         * ltmain.in (install): Change install mode to allow a specified
30646         /bin/sh argument at the beginning of the install_prog.  Also,
30647         specify the shell to run when invoking libtool recursively for
30648         finish mode.  From Chris Provenzano.
30649
30650         * libtool.m4 (LIBTOOL): Change definition to include $(SHELL).
30651         From Chris Provenzano.
30652
30653         * ltconfig.in: Port to UTS 4.x.  From Alistair Crooks.
30654
30655         * demo/Makefile.am (hc-libflag): Add rules to make this binary for
30656         hardcode.test.
30657
30658         * tests/hardcode.test (hardcode_libdir_flag_spec): Check the hardcoding
30659         properties of the flag_spec, too.
30660
30661 1997-09-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30662
30663         * ltconfig.in (LD): As with libtool.m4, don't override LD.
30664         Do a whole bunch of ac_t quoting.
30665
30666 1997-09-24  Ian Lance Taylor  <ian@cygnus.com>
30667
30668         * libtool.m4 (AM_PROG_LD): Don't override LD in the environment.
30669
30670 1997-09-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30671
30672         * libtool.m4, ltconfig.in (NM): Arguments to the for loop must be
30673         whitespace separated.  This fixes a bug under FreeBSD's /bin/sh.
30674         From George Scott.
30675
30676         * tests/defs, tests/Makefile.am (clean-local): Change =inst to
30677         _inst to fix portability on MS-DOS.  From Robert Hoehne.
30678
30679 1997-09-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30680
30681         * ltmain.in (deplibs): When building shared libraries, always add
30682         -lc to deplibs.  Reported by Andreas Jellinghaus.
30683
30684 1997-09-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30685
30686         * ltconfig.in, ltmain.in (COLLECT_NAMES): If the COLLECT_NAMES
30687         environment variable has not been set, set it to empty.  This
30688         apparently fixes the AIX bug with GCC's collect2.  Reported by
30689         Mark Kettenis.
30690
30691         * demo/Makefile.am, ltmain.in, tests/hardcode.test (objdir):
30692         Changed objdir variable .libs to _libs.  This is another MS-DOS
30693         portability fix.  Suggested by Robert Hoehne.
30694
30695         * tests/hardcode.test (objdir): New variable to simplify change from
30696         .libs to _libs (MS-DOS portability fix).
30697
30698 1997-09-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30699
30700         * ltconfig.in, ltmain.in (hardcode_minusL): Fix typo by renaming
30701         hardcode_minusL to hardcode_minus_L.  Also add FreeBSD
30702         hardcode_libdir_flag_spec. From Paul Traina.
30703
30704         * ltmain.in (link): Honour multiple `-rpath' flags when linking
30705         programs.  Suggested by Bengt Martensson.
30706         Quote appearances of $echo in the wrapper script.  From Alexandre
30707         Oliva.
30708
30709         * Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead
30710         of ltmain.sh.in.
30711
30712         * ltmain.in: Rename ltmain.sh.in to ltmain.in.  This fixes a
30713         portability problem (on MS-DOS, of all places!).  From Robert
30714         Hoehne.
30715
30716 1997-09-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30717
30718         * ltmain.sh.in (link): Do not transform libtool objects to regular
30719         objects if we did not build old libs.  Reported by Tomas Hiller.
30720
30721 1997-09-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30722
30723         * demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to
30724         hell.debug in order to reflect the new static linking semantics.
30725
30726         * ltmain.sh.in (link): Add new `-all-static' flag to prevent all
30727         dynamic linking.  The old `-static' flag just prevents dynamic
30728         linking against libtool libraries.  Suggested by Bengt
30729         Martensson.
30730
30731         * ltconfig.in (with_gnu_ld): Add a test to make sure that we are
30732         actually using GNU ld.  This fixes an inconsistency when running
30733         ltconfig without using libtool.m4.  Reported by Ulrich Drepper.
30734         (global_symbol_pipe): Delete symbols that are not valid C
30735         identifiers.  Reported by Johan Danielsson and Bengt Martensson.
30736
30737         * tests/demo-exec.test, tests/demo-inst.test: Change references from
30738         hell.static to hell.debug.
30739
30740         * tests/quote.test (echo): Add the same Digital Unix echo test fixes as
30741         the ones to ltmain.sh.in from Todd Kover.
30742
30743         * tests/if.test, tests/test-e.test (scripts): Add ../lineno to
30744         the scripts we check.
30745         * tests/if.test: Check for accidental use of test X$something rather
30746         than test "X$something".
30747
30748 1997-09-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30749
30750         * ltmain.sh.in (echo): Quote all the uses of `echo' in all eval
30751         statements.  Reported by Bengt Martensson and Alexandre Oliva.
30752         (echo): Need to surround test args with double quotes, or the echo
30753         test fails on Digital Unix 4.0.  From Todd Kover.
30754
30755 1997-08-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30756
30757         * ltmain.sh.in (echo): Change test to one that uses printf.
30758         This works on AIX, which has the same problems that Solaris does,
30759         but no working echo program.
30760
30761         * tests/quote.test (echo): Change test to version that uses printf.
30762         Be less strict about return results.
30763
30764 1997-08-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30765
30766         * ltmain.sh.in (link): Make sure that compile_command and
30767         finalize_command are always evaled.  Quote any unknown linker
30768         flags we need to pass through.
30769         (compile): Use quoting for flags we pass.
30770         (echo): I hate Sun!  The /usr/bin/echo on Solaris handles
30771         backslash sequences, which makes it impossible to do backslash
30772         quoting using echo and sed.  So, we search for an echo that obeys
30773         the `echo '\t'` = '\t' equality.  Then we use `$echo' everywhere
30774         in ltmain.sh.
30775         Put tabs back into the ${IFS=   } sequences.  Emacs untabify is
30776         libtool bane.
30777
30778         * ltconfig.in: Quote all variable values that may contain
30779         metacharacters creating the libtool script.  This provides
30780         complete protection, so that even single-quotes may appear inside
30781         a libtool variable value.
30782
30783         * ltmain.sh.in (link): Quote finalize_command before putting it in
30784         the wrapper script.
30785
30786         * tests/quote.test (echo): Add the test for a non-backslash-mangling
30787         echo.
30788
30789 1997-08-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30790
30791         * ltmain.sh.in (sed_quote_subst): Change the quoting procedure
30792         again.  I think that the new one is robust for *all* characters,
30793         including whitespace and metacharacters.
30794
30795         * tests/quote.test: New torture test for libtool metacharacter quoting.
30796
30797 1997-08-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30798
30799         * ltmain.sh.in: Change quoting procedure because some shells
30800         cannot handle `]' in scan sets.  From Ian Dall.
30801
30802 1997-08-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30803
30804         * ltmain.sh.in (execute): Added -dlopen flag handling.  Suggested
30805         by Alexandre Oliva.
30806
30807 1997-08-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30808
30809         * ltmain.sh.in (link): Change executable wrapper to fix up value
30810         of thisdir, as well as progdir, if the $0 path doesn't work.  This
30811         guarantees that shlibpath_var is set correctly.  Add support for
30812         execute mode.
30813
30814         * ltmain.sh.in (execute): New mode to automatically set
30815         shlibpath_var, which allows easy debugging of uninstalled
30816         executables and libraries.  Suggested by Kenneth Albanowski.
30817
30818 1997-08-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30819
30820         * Makefile.am ($(srcdir)/ltconfig): Use lineno.
30821
30822         * configure.in: Add AM_PROG_AWK for lineno.
30823
30824         * lineno: New program to automatically put line numbers in
30825         ltconfig.
30826
30827         * libtool.m4, ltconfig.in (AM_PROG_LD): Yet Another Rewrite, which
30828         incorporates the results of `gcc -print-program-name=ld'.
30829         Suggested by Alexandre Oliva.
30830
30831 1997-08-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30832
30833         * ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off
30834         command echoing.  From Juergen A. Erhard.
30835
30836         (compile): Recognize the Objective C `.m' extension.  From Juergen
30837         A. Erhard.
30838
30839         (compile): Suppress error output from the second compilation (if
30840         any) so that we don't get those frustrating duplicate error
30841         messages.
30842
30843         * tests/suffix.test (extensions): Added Objective C extension, `.m'.
30844
30845 1997-08-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30846
30847         * ltconfig.in: Added messages to config.log to describe what sort
30848         of test we are running.
30849         (pic_flag): Added a sanity check for pic_flag.  This should fix
30850         bugs reported using the cc bundled with HP-UX 10.  Suggested by
30851         Bruno Haible and Akim Demaille.
30852
30853 1997-08-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30854
30855         * ltmain.sh.in (link): Add -dlopen and -dlpreopen support for
30856         libtool objects.  This means that dlopened modules no longer need
30857         to be shared libraries.
30858
30859         * ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC.
30860         Reported by Ian Lance Taylor.
30861
30862         * libtool.m4 (LD): Always add `-n32' to the linker if we are using
30863         GCC on IRIX 6.  Reported by Ian Lance Taylor.
30864
30865 1997-07-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30866
30867         * libtool.m4 (AM_PROG_LIBTOOL): Explicitly check enable_shared and
30868         enable_static rather than just enableval.  This allows
30869         configure.in scripts to set their own defaults.  Suggested by
30870         Tommy Reilly.
30871
30872 1997-07-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30873
30874         * ltmain.sh.in: Add NLS environment variable handling copied from
30875         ltconfig.in.  Reported by Akim Demaille.
30876         (link): If allow_undefined_flag is not supported, then turn on old
30877         libraries.  Reported by Akim Demaille.
30878
30879         * demo/dlmain.c (main): Use dld_preloaded_symbol_count to display
30880         a message about the sortedness of the symbol table.
30881
30882         * ltconfig.in (nlist): Use an nlist convenience variable, so that
30883         code can be shared directly with ltmain.sh.in.
30884
30885         * ltconfig.in, ltmain.sh.in (dld_preloaded_symbol_count): Count up
30886         the number of symbols in the dld_preloaded_symbols.  Set to `-1'
30887         if the list wasn't both sorted and counted.  This allows
30888         applications to do a quick binary search, if they are so inclined.
30889
30890 1997-07-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30891
30892         * ltmain.sh.in (link): Remove code for `-version-file', since it
30893         has been long-deprecated.
30894
30895         Disable static linking if hardcode_direct is unsupported and there
30896         is no working link_static_flag.  This provides correct behaviour
30897         for all cases on AIX 3, regardless of whether collect2 is broken
30898         or not.  Reported by Mark Kettenis.
30899
30900         * ltconfig.in: Fix typo in test polarity.  From Mark Kettenis.
30901
30902 1997-07-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30903
30904         * ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses
30905         a broken collect2.  Adapted out of test results from Mark
30906         Kettenis.
30907         (link_static_flag): Make sure the link_static_flag actually works
30908         with a trivial binary.
30909
30910         * ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed
30911         from export_dynamic_flag because we eval it in ltmain.sh.
30912
30913         * ltmain.sh.in (link_static): Don't eval link_static_flag.
30914
30915         * demo/dlmain.c (main): Change function prototype to be KNR
30916         compatible.  From Kaveh R. Ghazi.
30917
30918         * ltmain.sh.in (link): Use no_builtin_flag.  This works around
30919         conflicting definitions of builtin functions with at least GCC.
30920         Reported by Kazuhiro Sasayama.
30921
30922         * ltconfig.in (no_builtin_flag): New flag to turn off builtin
30923         functions when compiling an object file.
30924         (pipe_works): Use it.
30925
30926         * tests/demo-exec.test (status): Use status variables so that we try to
30927         execute all the programs.
30928
30929 1997-07-23  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30930
30931         * ltconfig.in (pic_flag): According to the libg++ 2.7.2 configure
30932         script, DEC alpha CPUs are PIC-only, as well.  Reported by Kevin
30933         Jacobs.
30934
30935 1997-07-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30936
30937         * ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X;
30938         Y'" with "sed -e 'X' -e 'Y'".
30939
30940         * ltmain.sh.in (link): Finish full integration for `-dlopen' and
30941         `-dlpreopen'.
30942
30943         Fix two silly typos where I used a compile_command in place of a
30944         finalize_command, and vice versa.
30945
30946         Change the wrapper script to check a hardcoded path only if the
30947         argv[0] method fails.  This is a compromise for the previous two
30948         patches, and should solve the majority of problems with wrapper
30949         scripts.  From Kenneth Albanowski.
30950
30951         (link): Change a reference to hardcode_libdir_colon_separated to
30952         use the new hardcode_libdir_separator variable.
30953
30954         * demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and
30955         `-dlpreopen' for building helldl.
30956
30957         * demo/dlmain.c (main): Succeed, even if none of the libhello
30958         symbols have been preloaded.
30959
30960 1997-07-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30961
30962         * ltconfig.in (global_symbol_pipe): Add `U' to the accepted global
30963         symbol types.  This means that we will get duplicate symbols, but
30964         we'll also be sure to get all global symbols used by the program.
30965
30966         * ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make
30967         symbol output unique.
30968
30969 1997-07-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30970
30971         * ltconfig.in (pipe_works): Check to make sure our guessed
30972         global_symbol_pipe actually works.
30973
30974         * ltmain.sh.in (link): Revert change from Kenneth Albanowski.  The
30975         wrapper scripts are more reliable when they just use the argv[0]
30976         value.  Generally, when the argv[0] method doesn't work, the user
30977         is trying to do something weird with an uninstalled binary, and
30978         should try a different approach.
30979
30980         * ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of
30981         `$cc'.  This fixes a FreeBSD bug.  Reported by Chuck Robey, and
30982         others.
30983
30984 1997-07-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30985
30986         * ltmain.sh.in (link): In wrapper scripts, hardcode the current
30987         directory to prevent phony argv[0] values from screwing up our
30988         program.  From Kenneth Albanowski.
30989
30990 1997-07-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30991
30992         * Makefile.am (demo_distfiles): Add demo/dlmain.c to the
30993         distribution.
30994
30995 1997-07-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
30996
30997         * demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate
30998         `-dlopen' usage.
30999
31000         * demo/dlmain.c: New file to demonstrate preloaded modules.
31001
31002         * ltmain.sh.in (link): Add `-dlopen' flag to preload dynamic
31003         modules, even on static platforms.  Use `$NM' and
31004         `$global_symbol_cmd' to extract symbols from required files.
31005         (dlname): Delete dlname mode entirely.  It is rendered obsolete
31006         because the `.la' file format is now a public interface.
31007
31008         * ltconfig.in (NM): New variable for BSD-compatible nm program.
31009         (global_symbol_cmd): Pipeline to extract global symbols from the
31010         nm output.
31011
31012         * ltmain.sh.in: The .la file header should depend on `ltmain.sh',
31013         not `$PROGRAM'.
31014         (link): Make sure $export_dynamic_flag is eval'ed before it is
31015         used.
31016
31017         * tests/demo-exec.test, tests/demo-inst.test: Check the new
31018         helldl program, too.
31019
31020 1997-07-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31021
31022         * libtool.spec: New Red Hat Package Manager specification file in
31023         order to help people prepare distributions of libtool for Linux.
31024
31025         * ltmain.sh.in: Eliminate two accidental uses of the NONE magic
31026         value.  These were breaking libtool's behaviour when no mode is
31027         specified.
31028
31029         * tests/nomode.test: New test to make sure there is correct behaviour
31030         when we don't specify a mode.
31031
31032 1997-07-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31033
31034         * Release 1.0.
31035
31036         * ltconfig.in: On SunOS, append /usr/etc to the PATH before
31037         running ldconfig; on *BSD, append /sbin.  This was done in line
31038         with the Linux change suggested by Kenneth Albanowski.
31039
31040         * demo/Makefile.am (hardcode_tests): Aesthetic change to
31041         alphabetize order of compiling the hardcode tests.
31042
31043         * Makefile.am (EXTRA_DIST): Delete README-automake.
31044
31045         * README-automake: Remove from distribution.
31046
31047 1997-07-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31048
31049         * ltmain.sh.in (link): In the executable wrapper, strip trailing
31050         colons from the shlibpath_var because some ld.so's, notably
31051         OpenBSD 2.0's (!), don't parse colon-terminated values correctly.
31052         From Tim Pierce.
31053
31054 1997-07-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31055
31056         * ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic
31057         variable value.  Use an empty variable instead.
31058
31059         * ltconfig.in (with_gcc, with_gnu_ld): Do the tests for the C
31060         compiler and linker if the variables are unset, or if they are not
31061         GNU C and ld.
31062         (RANLIB): Eliminate redundant `if' statement.
31063
31064         * configure.in: Use AM_PROG_LD.
31065
31066         * libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU
31067         ld.
31068         (AM_PROG_LD): Rename AM_PATH_PROG_LD to AM_PROG_LD.  Parameterize
31069         so that the user can specify `--with-gnu-ld' or `--without-gnu-ld'
31070         to indicate his preference.
31071         (AM_PROG_LIBTOOL): Use it.
31072
31073 1997-06-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31074
31075         * ltconfig.in: Append /sbin to the path before running ldconfig on
31076         Linux.  This helps superusers who haven't set their PATH
31077         correctly.  Suggested by Kenneth Albanowski.
31078
31079         * tests/if.test: New test to make sure that we haven't forgotten to
31080         follow an `if' statement with a `test' command.  This should avoid
31081         the majority of hard-to-track bugs.
31082
31083 1997-06-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31084
31085         * ltmain.sh.in: Change all the `eval "$run ..."' sequences to
31086         `$run "eval ..."'.
31087
31088         Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'.
31089         This is the sequence recommended by the Autoconf manual, and
31090         should avoid any problems on older machines.  Eliminate all uses
31091         of `cp -p'.  Reported by Akim Demaille.
31092
31093         (install): Use `test $# -gt 0' instead of `test -n "$1"'.
31094
31095         * ltconfig.in (LN_S): Add test to see if `ln -s' works.
31096
31097         * libtool.m4: Increment serial number, and require AC_PROG_LN_S.
31098
31099 1997-06-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31100
31101         * ltmain.sh.in (link): Add missing `test' statement.  Reported by
31102         Akim Demaille.
31103
31104 1997-06-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31105
31106         * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of
31107         am_cv_path_ld.  From Tim Pierce.
31108
31109 1997-06-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31110
31111         * ltmain.sh.in: Redo two robustness fixes.  Alexandre had the
31112         correct approach, but I botched them.
31113
31114         * ltconfig.in (dynamic_linker): Disable shared libraries on
31115         MkLinux unless GNU libc is in use.  Reported by Akim Demaille.
31116
31117 1997-06-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31118
31119         * ltmain.sh.in (install): Add a missing `test' command.  Reported
31120         by Joel Weber.
31121         Miscellaneous fixes to improve robustness.  From Alexandre Oliva.
31122
31123         * tests/demo-conf.test (CONFIG_SITE): Set to /dev/null, so that the
31124         config.site file doesn't mess up our prefix.  Reported by Joel
31125         Weber.
31126
31127         * tests/demo-inst.test: Always run both hell.static and hell.
31128
31129         * tests/demo-conf.test: Always remove the local config.cache, but run
31130         `make distclean' only if the Makefile exists.  Otherwise, the demo
31131         directory is not cleaned up if a user uses their own config.cache.
31132         Reported by Joel Weber.
31133
31134 1997-06-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31135
31136         * ltmain.sh.in (link): Create invalid libtool objects when partial
31137         linking if we don't have PIC.  From Jeff Dairiki.
31138         (install): Fix bug if libtool object is installed to a file name
31139         without directory components.  From Jeff Dairiki.
31140
31141 1997-06-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31142
31143         * Makefile.am (demo/configure): Fix up rules to run autoconf.
31144         (aclocal.m4): Now we depend on our own libtool.m4.
31145
31146         * configure.in (AM_PATH_PROG_LD): Use it.
31147
31148         * libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used
31149         by the C compiler.
31150         (AM_PROG_LIBTOOL): Use it.
31151
31152         * ltmain.sh.in (install, uninstall): Support installing and
31153         uninstalling `.lo' files.  From Jeff Dairiki.
31154
31155 1997-06-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31156
31157         * Makefile.am (ltconfig, ltmain.sh): Only move if $(srcdir) is not
31158         the current directory.  Don't regenerate every time the package is
31159         reconfigured.  Reported by Tom Tromey.
31160         (MAINTAINERCLEANFILES): Added ltconfig, ltmain.sh, so that
31161         $(srcdir) is not messed with during a regular clean.
31162
31163 1997-06-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31164
31165         * Makefile.am (ltconfig, ltmain.sh): Be sure to move these files
31166         into $(srcdir) once they are created.
31167
31168         * ltmain.sh.in (link): Disable building static libraries.
31169         People should use their favourite AR and RANLIB commands.
31170         Disable building old-style objects if `--disable-static' is
31171         given.  Suggested by Tom Lees and Stephan Kulow.
31172
31173 1997-06-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31174
31175         * ltconfig.in (host_cpu, host_vendor, host_os): Patch up
31176         definitions, to allow for the fact that the host_os may contain
31177         hyphens (as in linux-gnu).  From Scott Goehring.
31178
31179         * ltmain.sh.in (link): Move the `dlname' setting closer to the top
31180         of the file.  Suggested by David Mosberger-Tang.
31181         Symlink the libtool archive into the `.libs' directory so that it
31182         can be found by programs that want to find a library's dlname by
31183         searching LD_LIBRARY_PATH.  Reported by David Mosberger-Tang.
31184
31185 1997-06-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31186
31187         * Tell people to report bugs to the new libtool mailing list,
31188         <bug-libtool@gnu.ai.mit.edu>.
31189
31190 1997-06-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31191
31192         * ltconfig.in (allow_undefined_flag): New variable that implements
31193         `-allow-undefined'.
31194         (archive_cmds): Enable C++ constructors for FreeBSD 2.2.  From
31195         David Nugent.
31196
31197         * ltmain.sh.in (link): Accept new `-allow-undefined' flag when
31198         building libtool libraries.  This tells libtool to allow
31199         unresolved symbols to exist in shared libraries.  Basically, this
31200         turns off shared libraries on AIX.  Suggested by Ian Lance Taylor.
31201
31202 1997-05-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31203
31204         * libtool.m4 (LD): On at least IRIX, many different flags need to
31205         be propagated to the linker if they are part of the compiler
31206         command line.  Reported by Anthony Green.
31207
31208 1997-05-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31209
31210         * ltconfig.in: Trivial port to FreeBSD 3.  From David Nugent.
31211
31212 1997-04-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31213
31214         * ltmain.sh.in (link): Remove all traces of `-whole-archive',
31215         `-no-whole-archive', and libtool convenience libraries.  They were
31216         more trouble than they're worth.  If these are ever reimplemented,
31217         they need more careful attention to make portable.
31218
31219         * libtool.m4, ltconfig.in: Added a `--disable-static' flag to turn
31220         off static library creation.  From Tom Lees (who finally convinced
31221         me that it was the Right Thing to do).
31222
31223 1997-04-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31224
31225         * ltmain.sh.in (hardcode_runpath_var, runpath_var): Use them, if
31226         the linker has no -rpath flag.
31227         Quote the values we use to set runpath_var and shlibpath_var.
31228         (link): Use libobjlibs for libtool convenience libraries.
31229
31230         * ltconfig.in (hardcode_runpath_var, runpath_var): Add new
31231         variables to describe linkers that honour `LD_RUN_PATH'.
31232         (host_cpu, host_os): Use these more specific variables, rather
31233         than the full canonical host system name.
31234
31235         * ltmain.sh.in (dlname): Distinguish between missing
31236         `-export-dynamic' and when the library is only statically linked.
31237
31238 1997-04-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31239
31240         * ltconfig.in: Trivial port to OpenBSD by making it an alias for
31241         NetBSD.  From Tim Pierce.
31242
31243 1997-04-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31244
31245         * ltconfig.in: Temporary measures to check for a broken collect2
31246         program.  Right now, we just see if we're using GCC on AIX 3.
31247
31248         * tests/hardcode.test: AIX also has arbitrary limits on the line length
31249         of input to fgrep(1), so we need to translate NUL characters to
31250         newlines in order to properly detect embedded `.libs'.  From Bruno
31251         Haible.
31252         Also redirect stderr to /dev/null, so that AIX users don't get
31253         worried by `fgrep: Maximum line length of 2048 exceeded.'.
31254
31255 1997-04-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31256
31257         * ltmain.sh.in (mode): Use `egrep -e' when inferring the operation
31258         mode.
31259
31260 1997-04-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31261
31262         * ltconfig.in (linker): Some GNU ld's don't accept `--version',
31263         but do accept `-v'.  From Jukka Honkela.
31264         (ld_shlibs): AIX lossage may be settling down.  AIX 3.2.5 ld does
31265         *not* hardcode direct libraries, but AIX 4.1.[45] ld does.
31266
31267 1997-04-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31268
31269         * ltconfig.in (hardcode_action): Fix silly logic error.  From
31270         Bruno Haible.
31271
31272 1997-04-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31273
31274         * ltmain.sh.in (install): Relink if hardcode_action is `relink',
31275         rather than using complex conditionals based on the other
31276         hardcode variables.
31277
31278         * ltconfig.in (hardcode_action): Set to `relink', not `immediate',
31279         if we can only hardcode existing directories.  Rearrange
31280         conditionals to make the intent clearer, otherwise this can be one
31281         hellish piece of code for the already-dizzy libtool maintainer.
31282
31283 1997-04-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31284
31285         * replfunc.m4: Delete from the distribution.  Documentation now
31286         describes how to set LTALLOCA and LTLIBOBJS in your own
31287         configure.in.
31288
31289         * ltmain.sh.in (link): Make sure a libtool library only counts as
31290         a shared library if its library_names are non-null.
31291         Use timestamps for .lo's when PIC is turned off, rather than
31292         symlinking to the real object.  This helps invalid mixtures of PIC
31293         and non-PIC to fail.
31294
31295 1997-04-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31296
31297         * Makefile.am (EXTRA_DIST): Distribute libtool.prj.
31298
31299         * Shameless plug: Changed source code management system from CVS
31300         to PRCS.
31301
31302         * libtool.scm: Initial Guile implementation of libtool.
31303
31304         * ltmain.sh.in: An unexpected inconsistency in my whole approach
31305         to shared libraries has proven that libtool needs to be completely
31306         rewritten if I'm going to give full shared library support for
31307         platforms that don't use the GNU C library version 2 (which to my
31308         knowledge currently only works on GNU Hurd and Linux/GNU systems).
31309         Porting the GNU C library should not be difficult, though.
31310
31311         Platforms that don't have the dlopen(3) family of functions will
31312         need to install GNU DLD version 4 in order to build any kind of
31313         libraries at all.  Unfortunately, DLD 4 won't be released for a
31314         while, because I maintain it, and I'm too busy working on libtool.
31315
31316         I'll keep the old ltconfig/ltmain.sh implementation around for as
31317         long as I can, and continue applying bug fixes, so that I'll have
31318         a reasonable starting point for this new libtool implementation.
31319
31320         It looks like this implementation will be even more complex than
31321         the original (pre-0.7) libtool.  Initial estimates show that it
31322         may be up to 3 times slower, and 5 times larger than libtool-0.9.
31323         I'll probably have to rewrite it in Guile to get reasonable
31324         performance, which will severely limit its portability for a
31325         while.
31326
31327         That will also introduce a bootstrapping issue, since the next
31328         release of Guile will use libtool to build shared libraries.  So,
31329         if users want to have shared Guile libraries, they will have to
31330         configure Guile with `--disable-shared', compile it, install it,
31331         then reconfigure Guile with `--enable-shared' and repeat.
31332
31333         I was hoping to get libtool 1.0 out the door by early April, but
31334         now it looks like it will take at least another year before it'll
31335         be usable by the public at large.  April fools.  libtool.scm
31336         doesn't exist yet, either.
31337
31338         * ltconfig.in (verify_host): Remove redundant `Transform *-*-linux*
31339         to *-*-linux-gnu*'.  From Bruno Haible.
31340
31341         * tests/hardcode.test: AIX 3 doesn't have strings(1) so we need to do a
31342         funny tr and pipe the output to fgrep.  From Bruno Haible.
31343
31344 1997-03-31  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31345
31346         * Makefile.am: Use the new AUTOMAKE and ACLOCAL variables.
31347
31348         * ltmain.sh.in (link): Only fail if a convenience library doesn't
31349         exist, and the user specified -whole-archive.
31350         Fix shell quoting that was breaking @OUTPUT@ substitution.
31351
31352 1997-03-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31353
31354         * ltmain.sh.in (link): Use the hardcode_libdir_separator.
31355         Convenience libraries are libtool objects if we're not building
31356         libtool libs.
31357
31358         * ltconfig.in (hardcode_libdir_separator): Added in case the
31359         linker only honours the last of the -rpath flags (but it can
31360         contain multiple colon-separated directories), such as on OSF/1.
31361         Reported by Carl D. Roth.
31362
31363         * ltmain.sh.in (link): Set the dlname if -export-dynamic is given.
31364         (install, uninstall): Handle the dlname file separately.
31365
31366         * ltconfig.in (export_dynamic_flag): Added to allow programs to
31367         use reflexive dlopens.
31368
31369         * ltmain.sh.in: Include the mode name in any help messages.
31370         (dlname): New mode to give the name to be used with dlopen(3).
31371
31372         * ltconfig.in (AR): Allow AR to be set by the user, and export it
31373         to ltmain.sh.
31374
31375         * ltmain.sh.in: Remove broken profiled library support.
31376         Added `-whole-archive' and `-no-whole-archive' to manipulate
31377         convenience libraries.
31378
31379 1997-03-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31380
31381         * ltmain.sh.in (link): Allow the creation of static convenience
31382         libraries made of libtool objects.  Suggested by David
31383         Mosberger-Tang.
31384
31385 1997-03-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31386
31387         * ltconfig.in: On AIX, libtool also needs to look for `B' symbols
31388         in nm output.  These are global variable definitions.
31389
31390         * ltmain.sh.in: Linking with -static should link against the
31391         linklib if old_library is empty (like it is on AIX).
31392
31393         * ltconfig.in: Change the order of OS detection, so that
31394         linux-gnu* is detected before gnu*.
31395
31396         * Makefile.am (libtool): Use the correct CC, RANLIB, LD, when
31397         generating libtool.  From Carl D. Roth.
31398
31399         * configure.in: Find out the user-supplied CC, LD, RANLIB.  From
31400         Carl D. Roth.
31401
31402 1997-03-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31403
31404         * ltmain.sh.in: Linking with -static should link against the old
31405         library, not linklib.
31406
31407         * README-automake: Updated to point to Automake 1.1m.
31408
31409 1997-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31410
31411         * demo/main.c: Use it.
31412
31413         * demo/foo.h: Declare it.
31414
31415         * demo/foo.c: Added definition of `nothing' so that we have an
31416         global variable definition, as well as functions.
31417
31418 1997-03-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31419
31420         * ltconfig.in: Make sure either enable_shared or enable_static is
31421         configured.  Reported by Tom Tromey.
31422
31423         * ltmain.sh.in: Bomb out if no library types are configured.
31424
31425 1997-02-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31426
31427         * ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed
31428         from `hardcode_libdir_flag'.
31429         (library_names_spec): Renamed from `lib_names'.
31430
31431         * ltconfig.in, ltmain.sh.in (hardcode_action): Change value from
31432         `rpath' to `immediate'.
31433
31434         * replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and
31435         AM_STRUCT_ST_BLOCKS.
31436
31437 1997-02-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31438
31439         * ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support
31440         old-style config.guess scripts.
31441
31442 1997-02-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31443
31444         * ltmain.sh.in: Create objdir *before* linking a program into it.
31445
31446 1997-02-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31447
31448         * ltconfig.in: Any ld --version that returns GNU is probably a GNU
31449         ld.  From Marcus Daniels.
31450
31451         * libtool.m4: Added AM_REPLACE_FUNCS.
31452
31453 1997-02-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31454
31455         * ltconfig.in: Trivial port to *-*-osf4.  From Bruno Haible.
31456
31457 1997-02-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31458
31459         * ltconfig.in: AIX 3 and 4 ld only hardcodes LIBPATH if -L is not
31460         specified.  This behaviour is the same with both xlc and gcc.
31461
31462 1997-02-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31463
31464         * doc/platforms.texi: Yaay!  We found a workaround for HP-UX
31465         /bin/sh buffer overflows.  From Eric Backus.
31466
31467 1997-02-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31468
31469         * Release 0.9.
31470
31471         * PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am:
31472         Move PLATFORMS to doc/platforms.texi.
31473
31474         * ltmain.sh.in (link): Use hardcode_libdir_flag to get a library
31475         directory into the resulting binary.
31476         Use hardcode_action, and make many simplifying changes to have
31477         compilation and finalization be consistent with each other.
31478
31479         * ltconfig.in: Not so amazing!  It's AIX cc that hardcodes direct
31480         libraries... gcc doesn't, though.
31481         (link_rpath_flag): Change link_rpath_flag to be
31482         hardcode_libdir_flag.
31483         (hardcode_action): New variable to simplify ltmain.sh.
31484
31485         * tests/Makefile.am (TESTS): Do the full make sequence with
31486         --disable-shared, then without.
31487
31488         * tests/demo-sttc.test: Configure the demo directory with
31489         --disable-shared.
31490
31491 1997-01-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31492
31493         * ltmain.sh.in: Change to take advantage of linkers that don't
31494         hardcode direct libraries.
31495
31496         * ltconfig.in: Amazing!  AIX 3 linker doesn't hardcode direct
31497         libraries, which makes it less buggy than AIX 4.  Reported by Mark
31498         Kettenis.
31499
31500         * demo/configure.in: Check for the math library.
31501
31502         * demo/foo.c (foo): Change to use the `cos' function, so that we
31503         need to link against another library.
31504
31505         * tests/hardcode.test: Rewrite to use fgrep on output from ``strings
31506         -a'' if using fgrep directly on the binary files fails.  From Mark
31507         Kettenis.
31508
31509 1997-01-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31510
31511         * ltmain.sh.in (link): Export the PATH variable in order to find
31512         the program, rather than giving a full path.  This helps give the
31513         program a less confusing value for argv[0].
31514
31515         * tests/hardcode.test: Make sure that ../demo/libhello.la really is a
31516         shared library before running hardcoding tests.
31517
31518 1997-01-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31519
31520         * Release 0.8.
31521
31522 1997-01-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31523
31524         * Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the
31525         distribution.
31526
31527 1997-01-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31528
31529         * libtool.m4: For IRIX 6, ld needs -n32 if cc uses it.  Reported
31530         by Bruno Haible.
31531
31532         * ltconfig.in: IRIX ld does not hardcode direct libraries.
31533         Reported by Bruno Haible.
31534
31535 1997-01-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31536
31537         * ltconfig.in, ltmain.sh.in (hardcode_shlibpath_var): Allow new
31538         value, `unsupported', since most linkers do not allow you to use
31539         shlibpath_var for initial linking.
31540
31541         * ltconfig.in: Lots of bug fixes from Bruno Haible.  Set wl on
31542         OSF/1, fix definitions of hardcode_* variables.
31543         (archive_cmds): Fix not to use +h on HP-UX 9.x.  Reported by Bruno
31544         Haible.
31545
31546         * tests/demo-conf.test: Use the CONFIG_SHELL environment variable when
31547         running configure in the demo directory.  From Bruno Haible.
31548
31549         * tests/Makefile.am (clean-local): Make distclean in the demo directory,
31550         so that ``make clean; env CC=cc make check'' works as one would
31551         expect.
31552
31553         * tests/demo-make.test: Fix typo (use $make instead of make).  Reported
31554         by Akim Demaille.
31555
31556 1997-01-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31557
31558         * libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings.
31559         Suggested by Akim Demaille.
31560
31561         * libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is
31562         specified.  Reported by Bruno Haible.
31563
31564 1997-01-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31565
31566         * demo/Makefile.am (hc-direct): Do better searching for the proper
31567         name to do a direct link.
31568         (hc-libpath): Make allowances if shlibpath_var cannot be used
31569         to find libraries at link time, such as on AIX.
31570
31571         * Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c.
31572
31573         * demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to
31574         KNR form, for better portability, and less ansi2knr hair.
31575
31576         * demo/configure.in: Remove AM_FUNC_PROTOTYPES.
31577
31578         * demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS.
31579
31580         * demo/ansi2knr.1, demo/ansi2knr.c: Removed these files.
31581
31582         * ltmain.sh.in: Use 1>&2 consistently to direct errors and
31583         warnings to stderr.
31584         (compile): Fix missing single quote.
31585
31586         * ltconfig.in (hardcode_direct): On Solaris at least, using
31587         DIR/libNAME.so does not hardcode DIR, so introduce a new hardcode
31588         variable to reflect that.
31589
31590         * ltmain.sh.in (link): If linking with $link_static_flag fails,
31591         then retry without it, but still use the .a versions of
31592         uninstalled libtool archives.
31593
31594         * tests/tlibtool: Rewrote to grab all the settings from the generated
31595         libtool script.
31596
31597         * tests/hardcode.test: Make allowances if shlibpath_var cannot be used
31598         to find libraries at link time, such as on AIX.
31599
31600 1997-01-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31601
31602         * ltmain.sh.in (link): Eval $link_static_flag.  Reported by Bruno
31603         Haible.
31604
31605         * PLATFORMS: Add to distribution.  Suggested by Bruno Haible.
31606
31607 1997-01-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31608
31609         * tests/demo-conf.test, tests/demo-inst.test, tests/demo-unst.test,
31610         tests/hardcode.test:
31611         Use $make instead of make.
31612
31613         * tests/defs (make): Add definition of $make that uses the $MAKE
31614         environment variable, if set.  Suggested by Bruno Haible.
31615
31616         * tests/demo-unst.test (leftovers): Change the find command to ignore
31617         files beginning with a dot, as egrep -v doesn't seem to do the
31618         trick.  Reported by Bruno Haible.
31619
31620 1997-01-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31621
31622         * ltconfig.in: Add support for SCO OpenServer 5.x.  From
31623         Christopher Olsen.
31624
31625         (can_build_shared): Initialize at the top of the file, so that
31626         shared libraries aren't built on platforms that don't support
31627         them.
31628
31629         * tests/hardcode.test: Added a test to make sure that libtool's idea of
31630         hardcoding system linkers is correct.
31631
31632 1997-01-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31633
31634         * ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi:
31635         Update the copyright completion years.
31636
31637 1997-01-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31638
31639         * ltconfig.in: Port to IRIX 5.3, 6.2.
31640
31641 1997-01-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31642
31643         * ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the
31644         port is trivial.
31645
31646         * libtoolize.in: Add --dry-run option, -n for short.
31647
31648 1997-01-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31649
31650         * ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't
31651         understand "export something=val".  From Bruno Haible.
31652
31653         * tests/Makefile.am (distclean-local): Remove all files that the tests
31654         may have created.  Reported by Bruno Haible.
31655
31656         * For all tests, discover srcdir when running from the command
31657         line.
31658
31659         * tests/demo-unst.test: Don't fail if make uninstall doesn't delete
31660         files beginning with a dot, since spurious .nfsXXX files may be
31661         present when running NFS.  Reported by Bruno Haible.
31662
31663 1997-01-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31664
31665         * ltmain.sh.in (compile): Recognize valid source file suffixes for
31666         Fortran and C++.
31667
31668         * tests/suffix.test: New test to guarantee that libtool compile
31669         recognizes valid source file suffices.
31670
31671 1996-12-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31672
31673         * ltmain.sh.in (link): Don't allow *._o and *.l_o to be valid
31674         object type suffixes, in spite of Automake's current ansi2knr
31675         implementation.  Not all compilers allow non-`.o' suffixes.
31676
31677 1996-12-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31678
31679         * ltmain.sh.in (link): Delete the `libtool' version type.
31680
31681 1996-12-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31682
31683         * ltconfig.in: Use the full autoconf syntax when checking for GNU
31684         C.  Delete library stripping program, until we have a correct
31685         test.
31686
31687 1996-12-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31688
31689         * ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm.  From Mark
31690         Kettenis.
31691
31692 1996-12-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31693
31694         Reported by Charles Kerr:
31695         * doc/libtool.texi (Creating Object Files): Doc fix independant ->
31696         independent.
31697
31698         * ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library
31699         dependencies.
31700
31701 1996-12-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31702
31703         * Release 0.7.
31704
31705         * Makefile.am (EXTRA_DIST): Add README-automake to the
31706         distribution.
31707
31708         * ltmain.sh.in (link): When linking libtool libraries, use
31709         standard objects if they are PIC.  This prevents spurious warnings
31710         about invalid suffixes on AIX.
31711
31712         * demo/Makefile.am: Rename libhell to libhello, so that we're not
31713         quite as offensive.
31714
31715         * ltconfig.in: Remove unnecessary host validity checking.
31716
31717         * ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la
31718         is good enough (for consistency with *.a handling).
31719
31720         * tests/demo.test: Break up into demo-conf.test, demo-make.test,
31721         demo-exec.test, demo-inst.test, and demo-unst.test, so that passes
31722         and failures are reported more quickly.
31723
31724         * tests/link-2.test: Test to make sure that .lo files don't get built
31725         directly into programs.
31726
31727 1996-12-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31728
31729         * ltmain.sh.in (link): Accept files ending in .a as standard
31730         object files.  Reported by Ulrich Drepper.
31731         Remove support for creating profiled libraries (for now).
31732         Transform all library objects into standard objects when linking a
31733         program.
31734
31735         * ltconfig.in (thisdir): How embarrassing!  An error in the regexp
31736         for finding the directory component of the script path.
31737
31738         * tests/tlibtool: A typically-configured libtool script, that uses
31739         ../ltmain.sh.in for its backend.
31740
31741         * tests/link.test: Make sure that it is legal to link against .a files.
31742
31743 1996-12-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31744
31745         * ltmain.sh.in (compile): Support `.S' (preprocessed assembler)
31746         files.  Reported by Anthony Green.
31747
31748         * libtoolize.in: Give clearer instrutions for how to update
31749         aclocal.m4.
31750
31751         * ltconfig.in, ltmain.sh.in (link): Add support for creating
31752         reloadable objects.
31753
31754 1996-12-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31755
31756         * ltmain.sh.in (install): Fix passing -n flag to `libtool
31757         --finish'.
31758         (compile): Compile `.lo' and `.o' objects at the same time so that
31759         non-PIC objects (if they are available) can be used for linking
31760         into programs and creating static archives.  Suggested by Ulrich
31761         Drepper.
31762
31763 1996-12-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31764
31765         * ltmain.sh.in (link): Give the full path to the libtool library
31766         when sourcing it.
31767
31768         * ltconfig.in (old_striplib): Do a configuration test to determine
31769         if old-style libraries actually can be stripped or not.
31770
31771 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31772
31773         * tests/demo.test: Try compiling the ../demo subdirectory, with no
31774         special options.
31775
31776         * test-e.test: Check that we haven't used `test -e' anywhere in
31777         our portable shell scripts.
31778
31779 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31780
31781         * ltconfig.in: Delete reference to ABOUT-LIBS.
31782
31783         * tests: Added new subdirectory.
31784
31785         * doc/libtool.texi: Doc fixes, and finished up the Configuring
31786         chapter.
31787
31788         * ltmain.sh.in (link): Allow *._o and *.l_o to be valid object
31789         file suffixes, for Automake's ansi2knr implementation.
31790         New option -version-info replaces -version-file.
31791
31792         [help]: Give a pointer to mode-specific help when appropriate.
31793
31794         * ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC.
31795
31796         * demo: Also test Automake's ansi2knr support.
31797
31798 1996-11-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31799
31800         * ltconfig.in: Bug fixes for AIX 4, and for static platforms.
31801
31802         * ltmain.sh.in (install): Fix for loops over arguments.
31803         Need to quote ${IFS= } -> "${IFS= }".
31804         (link): Fix soname_spec bug.  Create objdir whether or not we have
31805         shared libraries.
31806
31807         * ltconfig.in: Check for library stripping program.
31808         Use test -f instead of test -e.
31809
31810 1996-11-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31811
31812         * ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't
31813         set.
31814         Be verbose about the environment variables we were configured
31815         with.
31816
31817         * ltmain.sh.in (objdir): change to .libs.
31818
31819 1996-11-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31820
31821         * ltmain.sh.in (install): Just plunge ahead with the
31822         installation... don't try to enforce dependencies.
31823
31824 1996-11-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31825
31826         * ltmain.sh.in: Fix up $libdir to be $dest in install mode.
31827
31828 1996-11-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31829
31830         * ltmain.sh: Finished rewrite of compile, link, and install
31831         modes.
31832
31833         * New ChangeLog file for libtool-0.7, since I've totally rewritten
31834         libtool.
31835
31836 1996-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
31837
31838         * For historical reasons: this is when I started writing libtool.
31839 -- 
31840   Copyright (C) 1996-2010 Free Software Foundation, Inc.
31841
31842   This file is part of GNU Libtool.
31843
31844 Copying and distribution of this file, with or without modification,
31845 are permitted in any medium without royalty provided the copyright
31846 notice and this notice are preserved.  This file is offered as-is,
31847 without warranty of any kind.