Imported Upstream version 2.4.6
[platform/upstream/libtool.git] / ChangeLog
1 2015-02-15  Gary V. Vaughan  <gary@gnu.org>
2
3         version 2.4.6
4         * NEWS: Record release date.
5
6 2015-02-06  Gary V. Vaughan  <gary@gnu.org>
7
8         libtool: don't execute automake and autoconf on every invocation.
9         Regression from 2.4.2 was causing noticable slow-down in builds
10         that call libtool many times.
11         * build-aux/ltmain.in (func_help): Override func_help() from
12         gl/build-aux/options-parser to only run automake --version and
13         autoconf --version when libtool --help is executed on the command
14         line.
15         * NO-THANKS: Add Robert Yang.
16         Reported by Robert Yang
17
18 2015-01-20  Gary V. Vaughan  <gary@gnu.org>
19
20         maint: undo copyright years regression.
21         * gl/build-aux/options-parser: Undo copyright years regression.
22         * bootstrap: Regenerate.
23
24         bootstrap: sync with upstream.
25         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
26         gl/build-aux/funclib.sh, gl/build-aux/options-parser: Sync with
27         upstream.
28         * bootstrap: Regenerate.
29
30 2015-01-20  Pavel Raiskup  <praiskup@redhat.com>
31
32         libtool: respect config.site LT_SYS_LIBRARY_PATH
33         Libtool generator code needs to remember the configure time
34         LT_SYS_LIBRARY_PATH content to allow config.status properly
35         instantiate default LT_SYS_LIBRARY_PATH libtool run-time value;
36         Thats because config.status has no idea what the contents of
37         config.site file is (by default).
38         * m4/libtool.m4 (_LT_CONFIG): Use the _LT_DECLared
39         $configure_time_lt_sys_library_path variable as the default for
40         LT_SYS_DLSEARCH_PATH at run-time.
41         (_LT_SYS_DYNAMIC_LINKER): Don't change ac_cv_* variable if it is
42         not necessary. New $configure_time_lt_sys_library_path variable.
43         * NEWS: Update.
44
45         libtool.m4: typofix, subst last '$' with quadrigraph
46         * m4/libtool.m4 (_LT_LIBTOOL_TAG_VARS): Encase the
47         configure/libtool shared function into parseable borders; for
48         testing purposes.
49         (func_munge_path_list): Typo s/$/@S|@/.
50         * tests/configure-funcs.at: New testcase.
51         * Makefile.am (TESTSUITE_AT): Mention new testcase.
52         * NEWS: Update.
53
54         tests: fix an ltdl dryrun race condition.
55         * tests/testsuite.at (LT_AT_ACLOCAL): Inject a 1 second sleep
56         after aclocal to ensure subsequently generated autotools files
57         will be newer.
58         * NEWS: Update.
59
60 2015-01-19  Gary V. Vaughan  <gary@gnu.org>
61
62         maint: post-release administrivia
63         * NEWS: Add header line for next release.
64         * .prev-version: Record previous version.
65         * cfg.mk (old_NEWS_hash): Auto-update.
66
67         version 2.4.5
68         * NEWS: Record release date.
69
70 2015-01-18  Gary V. Vaughan  <gary@gnu.org>
71
72         maint: update copyright statements to include 2015.
73         * AUTHORS, HACKING, Makefile.am, NEWS, README.md, TODO,
74         bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
75         build-aux/git-hooks/commit-msg, build-aux/ltmain.in, cfg.mk,
76         configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
77         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
78         gl/build-aux/inline-source, gl/build-aux/options-parser,
79         libltdl/README, libltdl/configure.ac,
80         libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__argz_.h,
81         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
82         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
83         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
84         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
85         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
86         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
87         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
88         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
89         libltdl/lt__argz.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
90         libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
91         libltdl/ltdl.h, libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in,
92         m4/autobuild.m4, m4/libtool.m4, m4/ltargz.m4, m4/ltdl.m4,
93         m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.in,
94         m4/lt~obsolete.m4, m4/m4.m4, tests/am-subdir.at,
95         tests/archive-in-archive.at, tests/bindir.at, tests/cdemo.at,
96         tests/cmdline_wrap.at, tests/configure-iface.at,
97         tests/convenience.at, tests/ctor.at, tests/cwrapper.at,
98         tests/darwin.at, tests/demo.at, tests/depdemo.at,
99         tests/deplib-in-subdir.at, tests/deplibs-ident.at,
100         tests/deplibs-mingw.at, tests/destdir.at, tests/dlloader-api.at,
101         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
102         tests/duplicate_deps.at, tests/duplicate_members.at,
103         tests/early-libtool.at, tests/exceptions.at,
104         tests/execute-mode.at, tests/exeext.at, tests/export-def.at,
105         tests/export.at, tests/f77demo.at, tests/fail.at,
106         tests/fcdemo.at, tests/flags.at, tests/help.at,
107         tests/indirect_deps.at, tests/infer-tag.at,
108         tests/inherited_flags.at, tests/install.at,
109         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
110         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
111         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
112         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
113         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
114         tests/need_lib_prefix.at, tests/no-executables.at,
115         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
116         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
117         tests/resident.at, tests/runpath-in-lalib.at,
118         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
119         tests/standalone.at, tests/static.at, tests/stresstest.at,
120         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
121         tests/template.at, tests/testsuite.at, tests/versioning.at,
122         tests/with-pic.at: Update copyright statement to include 2015.
123         * cfg.mk: Adjust old_NEWS_hash accordingly.
124
125 2015-01-16  Gary V. Vaughan  <gary@gnu.org>
126
127         gnulib: sync with upstream.
128         * gnulib: Sync with upstream.
129         * doc/.gitignore: Regenerate.
130
131 2015-01-16  Pavel Raiskup  <praiskup@redhat.com>
132
133         libtoolize: fix ltdl installation order.
134         Fixes regression caused by commit 99a808be.
135         Makefile.in has aclocal.m4 as prerequisite, so Makefile.in
136         should be installed later to avoid unnecessary rebuild by
137         (versioned) aclocal.
138         * Makefile.am (pkgltdl_files): Move the Makefile.in file down in
139         the list after aclocal.m4.
140         * tests/libtoolize.at: Adjust to match reordered output.
141
142 2014-12-12  Gary V. Vaughan  <gary@gnu.org>
143
144         libtool: check Sun Pro CXX ABI postdeps at libtool time.
145         * m4/libtool.m4 (_LT_PREPARE_CC_BASENAME): Factor cc_basename
146         calculation into a shell function...
147         (_LT_CONFIG_SAVE_COMMAND): ...and expand it into generated
148         libtool script.
149         (_LT_CC_BASENAME): Adjust accordingly.
150         (_LT_FUNC_SUNCC_CSTD_ABI): Remove from here...
151         * build-aux/ltmain.in (func_suncc_cstd_abi): ...and reimplement
152         here.
153         * m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Remove postdeps
154         augmentation from here...
155         * build-aux/ltmain.in (func_mode_link): ...and reimplement here
156         just before postdeps are added.
157         * NEWS: Update.
158
159         libtool: more carefully avoid automatic -Cstd -Crun on Sun Pro CXX.
160         * m4/libtool.m4 (_LT_FUNC_SUNCC_CSTD_ABI): New function factored out
161         of repeated code.  Take note of other known -Cstd incompatible
162         compiler flags.
163         (_LT_SYS_HIDDEN_LIBDEPS): Use it to determine whether -Cstd -Crun
164         can be safely added to postdeps with Sun Pro CXX.
165         * NEWS: Update.
166         * NO-THANKS: Add Marc Glisse.
167         Reported by Marc Glisse
168
169         libtool: take care not to double-apply LT_SYS_LIBRARY_PATH.
170         * m4/libtool.m4 (_LT_CONFIG_SAVE_COMMANDS): Copy configure-time
171         LT_SYS_LIBRARY_PATH settings as default, but allow run-time
172         override.
173         (_LT_SYS_DYNAMIC_LINKER): Save the unmunged
174         sys_lib_dlsearch_path_spec value, and use it for _LT_DECL,
175         but then munge it with LT_SYS_LIBRARY_PATH for use in ltdl.m4
176         macros, such as LT_SYS_DLSEARCH_PATH.
177
178 2014-12-11  Pavel Raiskup  <praiskup@redhat.com>
179
180         libtool: support LT_SYS_LIBRARY_PATH for adjusting bad guesses.
181         Revert 8728e07 and 440fee6.
182         Some GNU/Linux distributions install libraries into /lib64 (or
183         /usr/lib64) on 64-bit machines, while /lib (/usr/lib
184         respectively) stays for multilib variant.  Other distributions
185         keep /usr/lib for 64-bit variant and reserve other directory for
186         multilib. Detection of what approach a given system uses is
187         difficult, however, especially because Glibc's ldconfig does not
188         report the full and correct list of search paths. Allow the user
189         to adjust Libtools heuristically determined search paths with
190         the new LT_SYS_LIBRARY_PATH environment variable at both
191         compile-time, when libtool is called, and at configure time.
192         * m4/libtool.m4 (_LT_PREPARE_MUNGE_PATH_LIST): Define a new
193         function to munge a libtool path list according to a user
194         supplied colon-delimited path.
195         (_LT_SYS_DYNAMIC_LINKER): Require _LT_PREPARE_MUNGE_PATH_LIST.
196         Mark LT_SYS_LIBRARY_PATH as precious to autoconf (to survive
197         automatic "autoreconf").
198         Call the new func_munge_path_list function on
199         sys_lib_dlsearch_path_spec - this propagates results to
200         generated libtool script.
201         (_LT_CONFIG): Expand _LT_PREPARE_MUNGE_PATH_LIST into generated
202         libtool script.
203         * build-aux/ltmain.in (func_mode_link): Call it to adjust
204         sys_lib_dlsearch_path according to LT_SYS_LIBRARY_PATH.
205         * doc/libtool.texi: Document new LT_SYS_LIBRARY_PATH.
206         * doc/notes.texi: Likewise.
207         * NEWS: Update.
208
209         References: http://thread.gmane.org/gmane.comp.gnu.libtool.general/8339/focus=8345
210
211 2014-12-11  Gary V. Vaughan  <gary@gnu.org>
212
213         maint: fix syntax-check failures.
214         * m4/m4.m4 (AC_PROG_GNU_M4): Reverse some test arguments for
215         sc_prohibit_test_const_follows_var.
216         Remove some spurious braces for
217         sc_useless_braces_in_variable_drefs.
218
219         bootstrap: sync with upstream.
220         * gl/build-aux/extract-trace (func_find_tool): Quote a bare
221         variable expansion in a test argument.
222         * bootstrap: Regenerate.
223
224 2014-12-05  Gary V. Vaughan  <gary@gnu.org>
225
226         libtool: s390x is also a 64bit glibc/ELF platform.
227         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LIB): Add s390x to glibc/ELF
228         compatible CPUs that have /lib64 and /usr/lib64 in
229         sys_lib_dlsearch_path_spec.
230         Reported by Pavel Raiskup
231
232 2014-12-04  Gary V. Vaughan  <gary@gnu.org>
233
234         libtool: for 64bit GNU arches, add /lib64 and /usr/lib64 to sys_lib_dlsearch_path.
235         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <linux*, k*bsd*-gnu>
236         <kopensolaris*-gnu, gnu*>: If $host_cpu contains "64", add /lib64
237         and /usr/lib64 to sys_lib_dlsearch_path_spec.
238         Reported by Orion Poplawski, Christian Rössel, Olly Betts et. al.
239
240         libltdl: fix gcc compiler warning for unused attributes.
241         * libltdl/ltdl.c, libltdl/loaders/dld_link.c,
242         libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
243         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
244         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: For at
245         least gcc 4.8.3 and 4.9.1, __attribute__((__unused)) should
246         follow the unused parameter declaration.
247         * NO-THANKS: Add Дилян Палаузов.
248         Reported by Дилян Палаузов
249
250 2014-12-04  Eric Bavier  <bavier@cray.com>
251
252         tests: do not assume compiler prefers shared libraries.
253         Testing whether -static-libtool-libs causes a non-libtool library to be
254         linked dynamically is effectively a test of the compiler's preference in
255         this case.  The Cray compiler prefers static libraries if not told
256         otherwise.
257         * tests/static.at [static linking flags for programs]: Do not expect
258          -static-libtool-libs to fail.
259
260 2014-12-04  Norihiro Tanaka  <noritnk@kcn.ne.jp>
261
262         libtool: fix sys_lib_dlsearch_path_spec for ia64 HP-UX.
263         The run-time loader does not search /usr/local or subdirectories
264         by default on ia64 HP-UX.
265         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Fix
266         sys_lib_dlsearch_path_spec for ia64 HP-UX.
267         * NEWS: Update.
268
269 2014-12-04  Gary V. Vaughan  <gary@gnu.org>
270
271         libltdl: edit AM_CPPFLAGS correctly for libltdl/Makefile.am.
272         * libltdl/ltdl.mk (AM_CPPFLAGS): Make sure the sed expression to
273         remove the first libltdl/ on each line is not confused by misuse
274         of linebreaks.
275         * Makefile.am (lt_Makefile_am): Also edit out the duplicated
276         include paths after libltdl/ elimination.
277         * NEWS: Update.
278         Reported by Michael Wobst
279
280 2014-12-04  Tijl Coosemans  <tijl@FreeBSD.org>
281
282         libtool: commit forgotten soname_spec for freebsd-elf in bb7cef9.
283         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <freebsd-elf>: Set
284         soname_spec correctly, per original patch.
285         * NEWS: Update.
286
287 2014-12-03  Gary V. Vaughan  <gary@gnu.org>
288
289         bootstrap: sync with upstream for runtime M4 checking functions.
290         * gl/build-aux/extract-trace: Sync with upstream for runtime M4
291         checking functions.
292         * bootstrap: Regenerate.
293         * NEWS: Update.
294
295         configury: bail out early if GNU M4 is not on the path.
296         Now that libtoolize requires an installed GNU M4 to parse
297         configure.ac and aclocal.m4 sources for libltdl macros, let the
298         user know at configure time when it is missing.
299         * m4/m4.m4: New file for rejecting non-GNU and buggy GNU versions
300         of M4. Copied from GNU Autoconf m4.m4.
301         * Makefile.am (lt_aclocal_m4_deps): Add m4/m4.m4.
302         * configure.ac (AC_PROG_GNU_M4): Call it.
303         * NEWS: Update.
304         Reported by Michael Felt
305
306 2014-11-29  Gary V. Vaughan  <gary@gnu.org>
307
308         maint: post-release administrivia
309         * NEWS: Add header line for next release.
310         * .prev-version: Record previous version.
311         * cfg.mk (old_NEWS_hash): Auto-update.
312
313         version 2.4.4
314         * NEWS: Record release date.
315
316         gnulib: sync with upstream.
317         * gnulib: sync with upstream.
318
319 2014-11-29  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
320
321         libtool: optional filename-based shlib versioning on aix.
322         Support filename-based shared library versioning on AIX with the
323         lib.so library filename extension, which is used with runtime
324         linking only. Runtime linking is enabled by the -brtl linker
325         flag for executables and the -G linker flag for Shared Objects.
326         The behaviour is similar to Linux/SVR4 DT_SONAME, hence the name
327         "aix-soname=svr4".
328         * Makefile.am (TESTS_ENVIRONMENT): Pass with_aix_soname value
329         via lt_cv_with_aix_soname into testsuite.
330         * configure.ac: AC_SUBST with_aix_soname for testsuite.
331         * libltdl/loaders/dlopen.c (vm_open): Use RTLD_MEMBER flag for
332         dlopen when the filename does specify an archive member between
333         "()". Otherways, retry with appending LT_SHARED_LIB_MEMBER when
334         loading fails without but archive file seems to exist.
335         * m4/libtool.m4 (dynamic_linker): Describe configured shared
336         library versioning variant according to with_aix_soname and
337         runtime linking.
338         (soname_spec, library_names_spec, shlibpath_overrides_runpath)
339         (postinstall_cmds, postuninstall_cmds, hardcode_direct)
340         (hardcode_direct_absolute, no_undefined_flag)
341         (allow_undefined_flag): Set according to with_aix_soname and
342         runtime linking configuration.
343         (export_symbols_cmds): Decorate symbols with the weak keyword.
344         (archive_expsym_cmds): Create both shared libraries according to
345         with_aix_soname and runtime linking configuration. Filter -brtl
346         linker flag from compiler_flags for shared libraries due to its
347         side effects.
348         (enable_static): Respect with_aix_soname for disabling as well.
349         * m4/ltdl.m4 (LT_SHARED_LIB_MEMBER): Define, set based on the
350         value of the shared_archive_member_spec libtool variable.
351         * m4/ltoptions.m4 (_LT_WITH_AIX_SONAME): New. Provides
352         commandline option --with-aix-soname=aix|svr4|both. Declares
353         $shared_archive_member_spec as libtool variable.
354         (_LT_SET_OPTIONS): Define LT_INIT options "aix-soname=aix",
355         "aix-soname=svr4", "aix-soname=both". Default is
356         "aix-soname=aix".
357         * doc/libtool.texi (LT_INIT): Document new options.
358         * tests/deplibs-ident.at: To define whether this test should
359         XFAIL, use hardcode_action, hardcode_direct,
360         hardcode_direct_absolute configuration settings instead of
361         platforms aix, bitrig, hppa-hpux, interix or openbsd.
362         * tests/versioning.at: When shared_archive_member_spec is defined
363         and LDFLAGS contain -brtl, we can run the versioning check.
364         * NEWS: Update.
365
366 2014-11-28  Tijl Coosemans  <tijl@FreeBSD.org>
367
368         libtoolize: no need for umask 0 now that copying does not use tar.
369         The umask calls seem to be left over as a workaround for several
370         releases ago when libtoolize copied libltdl sources with the help
371         of tar.  Now that we use cp or ln -s exclusively, this just
372         needlessly makes the files world writable; we should just respect
373         the users' own umask setting.
374         * libtoolize.in (func_copy): Remove umask 0 calls and simplify.
375
376 2014-11-28  Gary V. Vaughan  <gary@gnu.org>
377
378         maint: syntax-checks don't like ${ even in comments!
379         * m4/ltdl.m4: Fix a comment to appease syntax-check rules.
380
381 2014-11-28  Tijl Coosemans  <tijl@FreeBSD.org>
382
383         libtool: use a modern library version scheme for freebsd-elf.
384         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Adopt downstream patch
385         used by FreeBSD for versioned library filenames.
386         * build-aux/ltmain.in (func_mode_link): Replace conflicting
387         freebsd-elf version_type case branches with a single calculation
388         setting major and versuffix to match downstream FreeBSD.
389
390         libtool: split sco version into its own type.
391         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Set version type to
392         "sco" for sco based hosts.
393         * build-aux/ltmain.in (func_mode_link): Accept new "sco"
394         version_type as equivalent to freebsd-elf.
395
396 2014-11-28  Gary V. Vaughan  <gary@gnu.org>
397
398         configury: detect dlsym underscore prefix without dlopen self.
399         * m4/ltdl.m4 (LT_FUNC_DLSYM_USCORE): Compile, load and get the
400         address of a symbol from a separate loadable module, rather than
401         assuming dlopen self works.
402         * NEWS: Update.
403         Reported by KO Myung-Hun
404
405 2014-11-26  Gary V. Vaughan  <gary@gnu.org>
406
407         ltdl: fix a long standing duplicate `-ldl' bug in the link line.
408         * m4/ltdl.m4 (LT_LIB_DLLOAD): Save contents of LIBS before
409         calling AC_SEARCH_LIBS, which prepends to LIBS by default, and
410         restore afterwards.  We set LIBADD_DLOPEN and LIBADD_SHL_LOAD
411         so that dynamic loader libraries can be added selectively only
412         where they are needed.
413         * NEWS: Update.
414
415 2014-11-21  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
416
417         tests: do not test undef symbols across shlibs on AIX.
418         On AIX, undefined symbols across shared libraries can work only
419         when the main program explicitly exports those symbols. As this
420         is bad practice anyway and -no-undefined should be preferred, we
421         skip this.
422         * tests/template.at: Skip test with undef syms across libraries
423         on AIX.
424
425         tests: question mark is extended regex for non-GNU grep.
426         Accepting \? for at-most-once in basic regex is a GNU grep
427         extension, not accepted by AIX grep for example.
428         * tests/libtool.at: Use \{0,1\} instead of ? with GREP.
429
430 2014-11-18  Gary V. Vaughan  <gary@gnu.org>
431
432         maint: Fox a resent smelling mystique.
433         * build-aux/git-log-fix: ChangeLog edit.
434         Reported by Eric Blake
435
436         bootstrap: make sure gnulib file droppings are removed.
437         * bootstrap.conf (libtool_cleanup_empty_dirs): Recent bootstrap
438         updates set source_base to null, so we need to use ${x:-y} to
439         override the null.  Autoconf Shellology says that ancient BSD
440         /bin/sh chokes on :- defaults, but bootstrap is a developer tool,
441         and so we can reasonably expect a developer to have a working
442         /bin/sh to run the bootstrap script.
443
444         bootstrap: add missing debug preambles.
445         * bootstrap.conf (libtool_prep, func_require_ltdl_dir)
446         (libtool_require_package_url): Add missing $debug_cmd calls.
447
448 2014-11-18  Vincent Lefevre  <vincent@vinc17.net>
449
450         NEWS: Fix an ancient spelling mistake.
451         * NEWS: s/propogate/propagate/.
452         * cfg.mk (old_NEWS_hash): Update.
453
454 2014-11-17  Vincent Lefevre  <vincent@vinc17.net>
455
456         libtool: fix comment typo.
457         * m4/libtool.m4: Fix -fvisbility=hidden typo in a comment.
458
459 2014-11-04  Gary V. Vaughan  <gary@gnu.org>
460
461         maint: fix a syntax-check failure.
462         * tests/cmdline_wrap.at (fail_list): quote test arguments to
463         satisfy failing syntax-checks.
464
465         libtool: fix universal library building on darwin.
466         * build-aux/ltmain.in (func_extract_archives): $basename is now
467         spelled $sed_basename.
468         * NO-THANKS: Update.
469         Reported by Misty De Meo
470
471         tests: update fat binary test case for modern darwin.
472         * tests/darwin.at: Use "-arch x86_64", which works on modern
473         Apple hardware, rather than "-arch ppc", which generally does not.
474
475         tests: fix false positive in failed test check for cmdline_wrap.at.
476         * tests/cmdline_wrap.at (fail_list): non-matching globs return as
477         a plain unexpanded string, so we also need to test for file
478         existence before expanding into fail_list.
479
480         bootstrap: sync with upsteram.
481         * gl/build-aux/bootstrap.in: Sync with upstream.
482         * bootstrap: Regenerate.
483
484 2014-11-04  KO Myung-Hun  <komh@chollian.net>
485
486         libtool: support versioning on OS/2.
487         * build-aux/ltmain.in (func_mode_link) <*-os2*>: Set major and
488         versuffix.
489         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <*-os2*>: Set
490         version_type to windows. Add a version information to soname_spec.
491         * NEWS: Update.
492
493         libtool: support -export-symbols and -export-symbols-regex on OS/2.
494         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
495         <*-os2*>: Set archive_expsym_cmds.
496         * NEWS: Update.
497
498         libtool: add -os2dllname option.
499         On OS/2, if there are many DLLs whose prefix is the same and
500         very long, the resulting DLLs are overwritten. Provide a new
501         option to force a DLL name.
502         * build-aux/ltmain.in (func_mode_help): Add a description for
503         -os2dllname.
504         (func_mode_link): Add -os2dllname.
505         * doc/libtool.texi: Document it.
506         * NEWS: Update.
507
508         libtool: fix DLL creation/installation/uninstallation on OS/2.
509         OS/2 can only load a DLL with a base name of 8 characters or
510         less. Also, on OS/2 don't install or uninstall using a link.
511         * build-aux/ltmain.in: Do not strip an import lib.
512         * m4/libtool.m4: Set variables to fix DLL creation, installation
513         and uninstallation.
514
515         libtool: support -Zxxx options used on OS/2.
516         * build-aux/ltmain.in (func_mode_link): Add -Z* case, treating
517         them specially on os2 only.
518
519         libtool: set lt_cv_deplibs_check_method to pass_all on OS/2.
520         * m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Same as the title.
521
522         libtool: there is no need to relink DLLs on OS/2.
523         * build-aux/ltmain.in (func_mode_link) <*-os2*>: need_relink=no.
524
525         ltdl: OS/2 uses other APIs to load a DLL than LoadLibrary() on Windows.
526         * m4/ltdl.m4: Remove os2* from a list for loadlibrary.la.
527
528         libtool: support to link against static libraries on OS/2.
529         * m4/libtool.m4 (_LT_COMPILER_PIC): Set lt_prog_compiler_static to
530         $wl-static.
531
532         libtool: don't eliminate duplications in $postdeps and $predeps on OS/2
533         * build-aux/ltmain.h (libtool_validate_options): Add *os2* to the list.
534
535 2014-11-03  Gary V. Vaughan  <gary@gnu.org>
536
537         configury: create installation dir before writing to it.
538         * Makefile.am (install-scripts-local): Don't forget to make the
539         installation target directory before writing to it.
540         * NO-THANKS: Update.
541         Reported by Allan McRae
542
543         maint: .PHONY rules to protect gmake from pathological file names.
544         * Makefile.am (.PHONY): Add install-scripts-local,
545         check-interactive, check-noninteractive-old,
546         check-noninteractive-new and check-noninteractive.
547
548 2014-11-02  Arkadiusz Miśkiewicz  <arekm@maven.pl>
549
550         tests: fix typo in cmdline_wrap skip check.
551         * tests/cmdline_wrap.at (fail_list): fix a typo in loop script
552         text.
553
554 2014-11-02  Gary V. Vaughan  <gary@gnu.org>
555
556         libtoolize: don't forget to remove old non-gnulib argz files.
557         * libtoolize.in (all_pkgltdl_files): Add back argz.c and argz_.h,
558         as installed by previous libtool releases.
559
560         libltdl: move libltdl argz module into LT namespace.
561         To avoid clashes with gnulib argz module in ltdl client projects,
562         move ours into its own namespace.
563         * libltdl/argz_.h, libltdl/argz.c, m4/argz.m4: Move from here...
564         * libltdl/libltdl/lt__argz_.h, libltdl/lt__argz.c, m4/ltargz.m4:
565         ...to here.
566         * Makefile.am, libltdl/libltdl/lt__glibc.h, libltdl/ltdl.mk,
567         libtoolize.in, m4/ltdl.m4: Adjust accordingly.
568         * tests/libtoolize.at, tests/ltdl-api.at, tests/nonrecursive.at,
569         tests/old-ltdl-iface.at: Adjust for different libtoolize output.
570         * libltdl/.gitignore: Adjust accordingly.
571         * NEWS: Update.
572         Reported by Pavel Raiskup
573
574         maint: whitespace cleanup.
575         * Makefile.am ($(thanks)): Fix several whitespace syntax-check
576         failures.
577
578 2014-11-02  Pavel Raiskup  <praiskup@redhat.com>
579
580         libtoolize: do not remove gnulib files with --force.
581         * libtoolize.in (func_require_seen_libtool): Do not remove
582         snippet/* files which are from Gnulib.
583
584 2014-10-30  Gary V. Vaughan  <gary@gnu.org>
585
586         tests: set bindir and libdir at configure time.
587         In particular, openSuSE on x86_64 uses CONFIG_SITE to set libdir
588         to "${exec_prefix}/lib64", which confuses testcases that check
589         the contents of "${prefix}/lib".  In general, tests that expect
590         to find installed files in specific directories should explicitly
591         set those directories at configure time.
592         * tests/testsuite.at (LT_AT_CONFIGURE): Make sure exec_prefix,
593         bindir and libdir point to known subdirectories we can check the
594         contents of later on in a test case.
595         (prefixdir): Rename from this...
596         (prefix): ...to this.  All test cases that set or use the config
597         prefix directory must now refer to `prefixdir` for the helper
598         macros in this file to work in hostile build environments such
599         as CONFIG_SITE setting openSuSE.
600         * tests/demo.at, tests/depdemo.at, tests/mdemo.at,
601         tests/tagdemo.at: Adjust accordingly.
602         Reported by Peter Breitenlohner.
603
604 2014-10-29  Reuben Thomas  <rrt@sc3d.org>
605
606         libtool: -rdynamic support for tcc.
607         * m4/libtool.m4 (_LT_LINKER_SHLIBS) <linux*>: Set
608         export_dynamic_flag_spec appropriately when using tcc.
609
610         libtool: preliminary support for tcc on linux*.
611         * m4/libtool.m4 (_LT_LINKER_SHLIBS) <linux*>: Set archive_cmds and
612         ld_shlibs appropriately when using tcc.
613         * NEWS: Update.
614
615 2014-10-29  Gary V. Vaughan  <gary@gnu.org>
616
617         maint: fix README-alpha version match.
618         With simplified release version numbering (thank you, git!), be
619         careful to recognize four part alpha versions, or short git
620         revision suffixed alpha versions correctly.
621         * Makefile.am (re_odd_version): Remove.
622         (re_alpha_version): Recognize alpha version numbers.
623         ($(readme)): Adjust accordingly.
624
625         maint: autogenerate THANKS.
626         More automation == less time wasted on menial tasks.
627         * build-aux/thanks-gen: script inspired by coreutils.
628         * Makefile.am (THANKS): Based on rule from coreutils/Makefile.am.
629         * NO-THANKS: New file.  Configure thanks-gen output.
630         * THANKS: Remove.
631
632         maint: fix prefix and suffix installs for libtoolize.
633         * Makefile.am (install-data-local): Depend on new
634         install-scripts-local, and move libtoolize install from here...
635         (install-scripts-local): ...to here.
636         Pass libtoolize destination through program transform expression.
637         (uninstall-hook): Likewise, prior to removal.
638         * NEWS: Update.
639         * THANKS: Update.
640         Reported by Václav Zeman
641
642 2014-10-27  Gary V. Vaughan  <gary@gnu.org>
643
644         maint: move Peter O'Gorman and Ralf Wildenhues to past maintainers.
645         * AUTHORS: Move Peter O'Gorman and Ralf Wildenhues from current
646         to past maintainers list.
647
648         maint: post-release administrivia
649         * NEWS: Add header line for next release.
650         * .prev-version: Record previous version.
651         * cfg.mk (old_NEWS_hash): Auto-update.
652
653         version 2.4.3
654         * NEWS: Record release date.
655
656         bootstrap: sync with upstream.
657         * gl/build-aux/bootstrap.in, gl/build-aux/funclib.sh: Sync with
658         upstream.
659         * bootstrap: Regenerate.
660
661         testsuite: fixes required for `make distcheck CC=g++`.
662         * tests/demo.at (Pdemo conf): Overide _LT_DEMO_SETUP foo.h to
663         declare foo2.
664         * tests/mdemo.at (_LT_SETUP): Don't wrap `sub` dectlaration in
665         C++ guards, because sub.c is also compiled with g++ in this test.
666         * tests/old-ltdl-iface.at (old.c): Add a return type to main
667         declaration as required by C++.
668
669         maint: fix a typo in THANKS.
670         * THANKS: s/macports\.com/macports.org/
671
672         syntax-check: use strlcpy instead of strncpy.
673         * libltdl/loaders/dyld.c (vm_sym): Use strlcpy to pacify syntax
674         checks.
675         * libltdl/ltdl.c (try_dlopen): Likewise.
676
677 2014-10-25  Gary V. Vaughan  <gary@gnu.org>
678
679         libtool: fix GCC linking with -fstack-protector.
680         * build-aux/ltmain.in (func_mode_link): Pass -fstack-protector*
681         to the linker as it is required at link time to resolve libssp symbols.
682         From Yaakov Selkowitz
683
684         libtool: support Mac OS 10.10 and newer.
685         The current template mistakenly treats a MACOSX_DEPLOYMENT_TARGET
686         value of "10.10" as "10.1" followed by junk. Thinking that the
687         build is targeting 10.1 Puma instead of 10.10 Yosemite, it tells
688         the linker to ignore undefined symbols instead of dynamically
689         resolving them. This can cause runtime crashes* and will affect
690         subsequent versions of OS X.
691         * libtool.mk (_LT_REQUIRED_DARWIN_CHECKS): Improve case match so
692         as to reject 10.10.x on the 10.1 and 10.2 branch.
693         * THANKS: Add Lawrence Velázquez.
694         From Lawrence Velázquez
695
696         bootstrap: commit latest to avoid regeneration at build time.
697         * bootstrap: Regenerate.
698
699         gnulib: sync with upstream.
700         * gnulib: Sync with upstream.
701
702 2014-05-13  Peter Rosin  <peda@lysator.liu.se>
703
704         libtool: delay expansion of $ECHO until the wrapper script runs
705         Expanding $ECHO too early leads to unquoted \n when ECHO='printf %s\n'.
706
707         Fixes bug#17478. Reported by Egmont Koblinger.
708
709         * build-aux/ltmain.in (func_emit_wrapper) [fast_install]: Quote the
710         $ECHO, and delay the expansion.
711
712 2014-05-06  Peter Rosin  <peda@lysator.liu.se>
713
714         libtool: fix nm test for MSYS/MinGW
715         The check for the -B option of nm does not work as intended on MSYS/MinGW.
716         MSYS converts /dev/null to the DOW/Windows "equivanent" special file NUL,
717         but the MinGW nm treats this file as any empty file. This means that
718         you might end up with some fallback nm instead of the desired nm. This
719         is not normally a problem, but if one nm is built without lto support, it
720         starts to matter.
721
722         Fixes sr #108558, reported by LRN.
723
724         * m4/libtool.m4 (LT_PATH_NM) [MSYS]: Use a non-existant file instead of
725         /dev/null when checking if nm supports -B.
726
727 2014-05-05  Peter Rosin  <peda@lysator.liu.se>
728
729         libtool: speed up ltwrapper_script detection in execute mode
730         Execute mode is slow and might even DOS the computer in extreme
731         cases when a parameter is a big binary file without newlines.
732         Work around this with different truncation if a suitable dd
733         utility is found.
734
735         Fixes bug#13472 and bug#16662.
736
737         Reported by Pavel Raiskup and Nick Bowler.
738
739         * m4/libtool.m4 (_LT_PATH_DD): New macro, for finding a dd utility
740         that works for the below purpose.
741         (_LT_CMD_TRUNCATE): New macro, for finding out how to truncate binary
742         pipes (fallback to the old sed truncation if no suitable dd is found
743         in _LT_PATH_DD).
744         (_LT_SETUP): Require _LT_CMD_TRUNCATE.
745         (LT_INIT): Require Autoconf 2.62, as needed by _LT_PATH_DD.
746         * build_aux/ltmain.in (func_lalib_p): Factor out the actual "generated
747         by libtool" test into...
748         (func_generated_by_libtool_p): ...this new function...
749         (func_ltwrapper_script_p): ...so that it can be reused here, when
750         truncating the pipe according to _LT_CMD_TRUNCATE.
751         * THANKS: Update.
752
753 2014-05-02  Peter Rosin  <peda@lysator.liu.se>
754
755         libtool: prevent lto from stripping the magic cookie from the cwrapper
756         Whole program optimization may remove unused symbols unless told they
757         are really needed. Fixes sr #108559 reported by LRN.
758
759         * build-aux/ltmain.in (func_emit_cwrapperexe_src:MAGIC_EXE): Try to ensure
760         that the magic cookie is preserved.
761
762 2014-02-12  Peter Rosin  <peda@lysator.liu.se>
763
764         tests: sprinkle -no-undefined when linking libraries
765         * tests/duplicate_conv.at, tests/f77demo.at, tests/fcdemo.at: Here.
766
767 2014-02-12  Peter Rosin  <peda@lysator.liu.se>
768
769         libtool: actually strip -Wl when relinking with $LD
770         Fixes the regression from commit v2.4.2.444 which is causing a
771         testsuite failure in duplicate_conv.at (seen on Cygwin).
772
773         * build-aux/ltmain.in (func_mode_link): $reload_cmds typically
774         starts with "$LD$reload_flag ..." when $LD is used to relink.
775         Make the case expression match that when checking if $LD is in
776         fact used to relink.
777
778 2014-02-10  Peter Rosin  <peda@lysator.liu.se>
779
780         bootstrap: fix description of func_sort_ver to match recent sort change
781         gl/build-aux/funclib.sh: Update comment to match reality.
782         bootstrap: Regenerate.
783
784 2014-02-05  Gary V. Vaughan  <gary@gnu.org>
785
786         doc: remove redundant "in order to" phrase where possible.
787         * doc/libtool.texi: Remove many occurrences of the redundant
788         phrase "in order to", where ever "to" is as clear or clearer.
789         * THANKS: Add attribution.
790         Reported by Dave Yost
791
792 2014-02-03  Bruce Korb  <bkorb@gnu.org>  (tiny change)
793
794         bootstrap: check for git tree with .git/. in case of soft links.
795         * gl/build-aux/bootstrap.in (func_require_git): Use
796         `test -d .git/.` to defeat soft-links versus non-GNU test.
797         * bootstrap: Regenerate.
798         * THANKS: Remove duplicate Bruce Korb entry.
799
800 2014-01-27  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
801
802         bootstrap: use `-d .git` to check whether we are in a git tree.
803         * gl/build-aux/bootstrap.in (func_require_git): .git is not a
804         regular file, use -d to check its existence.
805         * bootstrap: Regenerate.
806         * THANKS: Add Bruce Korb.
807         Reported by Bruce Korb
808
809 2014-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
810
811         libtool: opt_duplicate_compiler_generated_deps is harmful on Solaris
812         Fix for http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452.
813         * build-aux/ltmain.in (libtool_validate_options): disable the
814         opt_duplicate_compiler_generated_deps optimization for Solaris2 so
815         that gcc-4.9+ compiled C++ code with -Wl,-Bdirect on 64-bit Solaris
816         x86 can avoid unwinding failures caused by accidental mixing of the
817         libc and libgcc_s unwinders in a single executable.
818
819 2014-01-15  Gary V. Vaughan  <gary@gnu.org>
820
821         bootstrap: check for git checkout correctly.
822         * gl/bulid-aux/bootstrap.in (func_require_git): Use .git instead
823         of .gitignore to recognise a git checkout.
824         * bootstrap: Regenerate.
825
826 2014-01-11  Todd C. Miller  <Todd.Miller@courtesan.com>  (tiny change)
827
828         libtoolize: don't remove install-sh.
829         If you are not using automake, libtoolize would remove install-sh.
830         It needs the same treatment as config.guess and config.sub.
831         * libtoolize.in (func_require_seen_libtool): Remove install-sh
832         from $all_pkgaux_files, the list of files removed by
833         `libtoolize --force`.
834         * THANKS: Add Todd C. Miller.
835         * NEWS: Update.
836
837 2014-01-07  Gary V. Vaughan  <gary@gnu.org>
838
839         options-parser: --version works with 'DO NOT EDIT' preamble again.
840         * gl/build-aux/options-parser (func_version): Don't quit on first
841         leading '##' line, otherwise DO NOT edit warnings prevent version
842         information from being extracted correctly.
843         * bootstrap: Regenerate.
844
845         bootstrap: specify particular version in buildreq with =x.y.
846         * gl/build-aux/bootstrap.in (func_check_versions): If the version
847         number begins with '=' then it must match the installed version of
848         the named tool exactly.
849         * gl/doc/bootstrap.texi (buildreq): Document the '=vernum' feature.
850         * bootstrap: Regenerate.
851
852 2014-01-05  Gary V. Vaughan  <gary@gnu.org>
853
854         bootstrap: remove conftest.sed file droppings.
855         * gl/build-aux/funclib.sh: Remove conftest.sed when no longer
856         needed.
857         * bootstrap: Regenerate.
858
859 2014-01-04  Gary V. Vaughan  <gary@gnu.org>
860
861         bootstrap: replace spurious hyphen in some section comments.
862         * gl/build-aux/bootstrap.in: replace spurious hypen in same
863         section header comments with a space.
864         * gl/build-aux/extract-trace, gl/build-aux/options-parser:
865         Likewise.
866         * bootstrap: Regenerate.
867
868 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
869
870         inline-source: DO NOT EDIT warning only for top-level file.
871         * gl/build-aux/inline-source (func_include): When recursing, pass
872         through the value of `magic` so that only the very first #! magic
873         number has a DO NOT EDIT warning injected.
874         * bootstrap: Regenerate.
875
876         inline-source: gawk doesn't have boolean constants.
877         I've been writing a lot of Lua lately, but still a silly mistake:(
878         * gl/build-aux/inline-source (func_include): Use `magic` variable
879         to count #! lines found, and only output the DO NOT EDIT warning
880         after the first one.
881
882         edit-readme-alpha: adjust for recent README edits.
883         * build-aux/edit-readme-alpha: Adjust regexps for recent README
884         improvements.
885         * README.md: Fix a SPACE-TAB sanity check failure.
886
887         bootstrap: fix test-dollar sanity check failure.
888         * gl/build-aux/bootstrap.in (func_ensure_README): quote argument.
889         * bootstrap: Regenerate.
890
891         libtool: rearrange header comments for correct version/help extraction.
892         * m4/libtool.m4 (_LT_COPYING): Rearrange the comments output to
893         the generated libtool script so that --version and --help behave
894         the same as pre-funclib.sh revisions.
895         (_LT_CONFIG_SAVE_COMMANDS): Likewise.
896
897         README: Tweak into markdown format and fix some bitrot.
898         * README: Moved from here...
899         * README.md: ...to here.  Make some changes to be valid markdown
900         format, and fix some inaccuracies in text that is out of date.
901         * .gitignore: Add README.
902
903         bootstrap: support automake README requirement.
904         * gl/build-aux/bootstrap.in (func_ensure_README): New function.
905         Link missing README to existing alternative naming.
906         (require_automake_options): New functions. Fetch AM_INIT_AUTOMAKE
907         options from configure.ac.
908         (func_reconfigure): If we're using automake, and it's not in
909         foreign mode, link a README file if possible.
910         * bootstrap: Regenerate.
911
912         configury: use bootstrap ChangeLog management feature.
913         * gl/build-aux/bootstrap.in (func_autoreconf): Accept an optional
914         directory argument to pass to $AUTORECONF.
915         Update doc-comment.
916         * bootstrap.conf (func_reconfigure): Remove. Don't completely
917         overwrite bootstrap's func_reconfigure, shadowing auto-ChangeLog
918         management.
919         (func_autopoint, func_libtoolize): Overwrite these un-needed
920         calls instead.
921         (libtool_autoreconf_libltdl): New hook function to run second
922         autoreconf in libltdl directory.
923         (libtool_force_changelog): Remove.  This is all handled by
924         bootstrap's func_reconfigure again.
925         * bootstrap: Regenerate.
926
927         bootstrap: force remove file droppings from previous run.
928         Now that we generate bootstrap.new with no write permission,
929         we have to force remove it before writing now content to the file.
930         * bootstrap.in (require_bootstrap_uptodate): Remove old
931         bootstrap.new output.
932         * bootstrap: Regenerate.
933
934         inline-source: add a DO NOT EDIT notice to generated files.
935         * gl/build-aux/inline-source (func_include): Add a DO NOT EDIT
936         notice below the #! magic number of generated files.
937         * gl/build-aux/bootstrap.in (func_require_bootstrap_uptodate):
938         Remove write bit from regenerated bootstrap.new if it differs
939         from incumbent bootstrap.
940         Change the update instructions to recommend `mv -f` to cope with
941         no write permission on old bootstrap script.
942
943         bootstrap: move included files below DO NOT EDIT comment.
944         * gl/build-aux/bootstrap.in: Reorder sections to load external
945         libraries as late as possible, leaving DO NOT EDIT comment
946         visible near the top of the generated bootstrap script.
947
948         maint: use before-save-hook in Emacs footers.
949         Updating to Emacs 24 now gives me warnings about write-file-hooks
950         being obsolete.
951         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
952         gl/build-aux/funclib.sh, gl/build-aux/inline-source,
953         gl/build-aux/options-parser: Set before-save-hook in Emacs file
954         footers instead of obsolete write-file-hooks.
955
956         libtoolize: use printf '%s\n' unconditionally.
957         It's been a year since the as_echo probes were removed in Autoconf,
958         so we can follow suit and remove our equivalent bs_echo probing
959         now.  Retain $ECHO in case users need to override default printf
960         calls in museum piece environments.
961         * gl/build-aux/funclib.sh (ECHO): Default to 'printf %s\n'.
962         (bs_echo): Remove.
963         Adjust all bs_echo callers to use $ECHO instead.
964         * bootstrap: Regenerate.
965         * NEWS: Update.
966
967 2014-01-02  Gary V. Vaughan  <gary@gnu.org>
968
969         bootstrap: push Peter's version sort fix back into funclib.sh.
970         Peter's a7462c5 fix was applied to the generated bootstrap script
971         instead of the funclib.sh source, and had have been overwritten
972         the next time bootstrap was regenerated.
973         * gl/build-aux/funclib.sh (func_sort_ver): Sort numerically on the
974         non-primary keys as well.
975         * bootstrap: Regenerate, with the change applied.
976
977 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
978
979         maint: change history.
980         * NEWS: Remove alpha release header.
981         * cfg.mk (old_NEWS_hash): Update.
982
983         libtool: only strip -Wl when linking with $LD.
984         * build-aux/ltmain.in (func_mode_link): Don't strip -Wl from the
985         linker flags, except when linking with $LD, otherwise compiler
986         drivers that don't recognize and pass linker flags through will
987         choke on unrecognized options.
988
989         bootstrap: fix gitlog-to-changelog detection.
990         * gl/build-aux/bootstrap.in (func_ifcontains): Use a for loop
991         that relies on $IFS for element splitting instead of a one-shot
992         case glob that is not tolerant to \n in $gnulib_modules.
993         * THANKS: Add Reuben Thomas.
994         Reported by Reuben Thomas
995
996         maint: update copyright notices to include 2014.
997         * .x-update-copyright: New file. Exclude files not owned by this
998         project from update-copyright rules.
999         * doc/libtool.texi: Replace m-dash with n-dash in texinfo
1000         copyright notice so that update-copyright matches correctly.
1001         Undo bogus copyright updates to example output from gdb session.
1002         Bump copyright year.
1003         * Changelog.old: Revert bogus updates from previous years
1004         without .x-update-copyright.
1005         AUTHORS, HACKING, Makefile.am, NEWS, README, THANKS, TODO,
1006         bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
1007         build-aux/git-hooks/commit-msg, build-aux/ltmain.in, cfg.mk,
1008         configure.ac, gl/build-aux/bootstrap.in,
1009         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1010         gl/build-aux/inline-source, gl/build-aux/options-parser,
1011         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
1012         libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
1013         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
1014         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
1015         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
1016         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
1017         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
1018         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
1019         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
1020         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
1021         libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
1022         libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
1023         libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
1024         m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
1025         m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
1026         tests/am-subdir.at, tests/archive-in-archive.at,
1027         tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
1028         tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
1029         tests/cwrapper.at, tests/darwin.at, tests/demo.at,
1030         tests/depdemo.at, tests/deplib-in-subdir.at,
1031         tests/deplibs-ident.at, tests/deplibs-mingw.at,
1032         tests/destdir.at, tests/dlloader-api.at,
1033         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
1034         tests/duplicate_deps.at, tests/duplicate_members.at,
1035         tests/early-libtool.at, tests/exceptions.at,
1036         tests/execute-mode.at, tests/exeext.at, tests/export-def.at,
1037         tests/export.at, tests/f77demo.at, tests/fail.at,
1038         tests/fcdemo.at, tests/flags.at, tests/help.at,
1039         tests/indirect_deps.at, tests/infer-tag.at,
1040         tests/inherited_flags.at, tests/install.at,
1041         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
1042         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
1043         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
1044         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
1045         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
1046         tests/need_lib_prefix.at, tests/no-executables.at,
1047         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
1048         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
1049         tests/resident.at, tests/runpath-in-lalib.at,
1050         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
1051         tests/standalone.at, tests/static.at, tests/stresstest.at,
1052         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
1053         tests/template.at, tests/testsuite.at, tests/versioning.at,
1054         tests/with-pic.at: Bump copyright year.
1055
1056         gnulib: update to latest upstream revision.
1057         * gnulib: Update.
1058
1059         tests: gcj cannot reliably compile directly to .o from .java
1060         Some 4.3.x and 4.4.x releases of gcj insert a spurious 'dummy'
1061         symbol into every object file when compiling directly from .java
1062         to .o:
1063         * tests/convenience.at (GCJ): make .class files from .java
1064         sources first, and then compile those to native objects. This
1065         works around http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42143
1066
1067 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
1068
1069         testsuite: with SunStudio12.x f77, don't fail on system symbols
1070         Modern SunStudio f77 is just a wrapper for f90, which
1071         explains why current master fails these test groups with:
1072
1073          Undefined      first referenced
1074           symbol            in file
1075          __f90_slw_ch      .libs/foof2.o
1076          __f90_sslw        .libs/foof2.o
1077          __f90_eslw        .libs/foof2.o
1078          ld: fatal: symbol referencing errors. No output written to
1079         .libs/libfoo2.so.0.0.0
1080
1081         So we allow some undefined symbols in the libraries, which are
1082         resolved by the $(FLIBS) added to the final binaries in the tests.
1083         This seems like the simpler, and less error inducing solution to
1084         me (compared to adding $(FLIBS) to every library LDFLAGS line).
1085         * tests/f77demo.at (libfoo_la_LDFLAGS, libfoo2_la_LDFLAGS)
1086         (libfoo3_la_LDFLAGS, libmix_la_LDFLAGS): Remove -no-undefined
1087         flag.
1088         * tests/fcdemo.at: Likewise.
1089
1090 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
1091
1092         maint: use $SED and $GREP, not sed and grep in all scripts.
1093         Choosing between hardcoding a tool's name, or using the shell
1094         variable with a path to the user's prefered implementation or
1095         configure's idea of the best available is a premature
1096         optimisation.
1097         * build-aux/ltmain.in, gl/build-aux/bootstrap.in,
1098         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1099         libtoolize.in: Use $SED and $GREP consistently throughout,
1100         instead of hardcoding sed and grep.
1101         * bootstrap: Regenerate.
1102
1103         tests: use TESTS_ENVIRONMENT for EGREP and FGREP.
1104         Be consistent about passing commands to the testsuite, and use
1105         TESTS_ENVIRONMENT consistent.
1106         * Makefile.am (TESTS_ENVIRONMENT): Add EGREP and FGREP.
1107         * tests/testsuite.at: Remove EGREP and FGREP extractions from
1108         generated libtool script.
1109
1110         tests: use $GREP throughout.
1111         Trust the user, and use $GREP from TESTS_EVVIRONMENT uniformly.
1112         * Makefile.am (TESTS_ENVIRONMENT): Add GREP setting.
1113         * tests/am-subdir.at, tests/archive-in-archive.at, tests/bindir.at,
1114         tests/configure-iface.at, tests/cwrapper.at, tests/darwin.at,
1115         tests/demo.at, tests/destdir.at, tests/dumpbin-symbols.at,
1116         tests/early-libtool.at, tests/execute-mode.at, tests/export-def.at,
1117         tests/export.at, tests/f77demo.at, tests/fcdemo.at, tests/flags.at,
1118         tests/help.at, tests/inherited_flags.at, tests/install.at,
1119         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
1120         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlopen.at,
1121         tests/lt_dlopenext.at, tests/ltdl-api.at, tests/ltdl-libdir.at,
1122         tests/mdemo.at, tests/old-m4-iface.at, tests/pic_flag.at,
1123         tests/resident.at, tests/runpath-in-lalib.at, tests/search-path.at,
1124         tests/static.at, tests/sysroot.at, tests/template.at,
1125         tests/testsuite.at, tests/versioning.at: Replace all hardcoded grep
1126         invocations with $GREP.
1127
1128         tests: use $SED throughout.
1129         Trust the user, and use $SED from TESTS_ENVIRONMENT uniformly.
1130         Hardcoding 'sed' for "simple" edits is a premature optimisation.
1131         * tests/cdemo.at, tests/cmdline_wrap.at, tests/cwrapper.at,
1132         tests/darwin.at, tests/demo.at, tests/duplicate_conv.at,
1133         tests/duplicate_members.at, tests/execute-mode.at, tests/export.at,
1134         tests/inherited_flags.at, tests/install.at, tests/libtoolize.at,
1135         tests/mdemo.at, tests/need_lib_prefix.at, tests/old-m4-iface.at,
1136         tests/sysroot.at, tests/tagdemo.at, tests/testsuite.at: Replace all
1137         hardcoded sed invocations with $SED.
1138
1139         tests: run cmdline_wrap last, or not at all if anything else failed.
1140         * Makefile.am (TESTSUITE_AT): Move stresstest.at and cmdline_wrap.at
1141         to the end of the list.
1142         * tests/cmdline_wrap.at: If previous tests have failed, then we
1143         already know that rerunning them will fail too, so save time by
1144         skipping in that case.
1145
1146         configury: remove spurious g modifier in sed expression.
1147         * Makefile.am (rebuild): Remove useless g modifier from sed
1148         expression.
1149
1150         configury: use $(SED) where input does not end in newline.
1151         On Solaris machines the system sed does not process the last
1152         line of input unless it ends with a newline, which means it
1153         cannot be used to massage the output of git-version-gen, because
1154         it deliberately omits the terminating newline.
1155         * Makefile.am (rebuild): Use the sed command found by configure,
1156         which has a better chance of working properly than the first sed
1157         on PATH.
1158
1159         tests: skip fcdemo checks when $FC cannot compile fortran90.
1160         Avoid spurious fcdemo failures when Autoconf picks f77 or
1161         similar for a fortran90 compiler.
1162         * tests/testsuite.at (LT_AT_TAG): Using FC and FCFLAGS from make
1163         TESTS_ENVIRONMENT, check that we really can compile fortran90
1164         or else skip.
1165
1166         funclib.sh: improve comments.
1167         * gl/build-aux/funclib.sh: Add a comment explaining the need for
1168         extra SED and GREP searches.
1169
1170 2013-12-09  Peter Rosin  <peda@lysator.liu.se>
1171
1172         maint: fix out-of-tree autoreconf w/o manual rebootstrap
1173         build-aux/ltmain.in: Look for funclib.sh and options-parser in
1174         the same location ltmain.in is found.
1175
1176 2013-11-19  Peter Rosin  <peda@lysator.liu.se>
1177
1178         bootstrap: fix version sort
1179         Reported by Ozkan Sezer who suffered from makeinfo 4.13 being detected
1180         as lesser than the required makeinfo 4.8.
1181
1182         * bootstrap (func_sort_ver): Sort numerically on the non-primary keys
1183         as well.
1184
1185 2013-11-08  Peter Rosin  <peda@lysator.liu.se>
1186
1187         tests: Use a basic grep that matches the basic regexp style.
1188         Fixes a testsuite failure on Cygwin.
1189
1190         * tests/tagdemo.at: Use grep instead of egrep.
1191
1192 2013-10-29  Gary V. Vaughan  <gary@gnu.org>
1193
1194         bootstrap: fix a quoting error.
1195         * gl/build-aux/bootstrap.in (func_require_buildreq_autoconf): Quote
1196         the extracted version number correctly so that it is displayed in
1197         verbose mode.
1198
1199 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
1200
1201         funclib.sh: simplify version comparison functions.
1202         * gl/build-aux/funclib.sh (func_sort_ver): Much simplified.
1203         (func_lt_ver): New function, return true if arguments are in
1204         ascending order.
1205         * gl/build-aux/bootstrap.in: Simplify with func_lt_ver.
1206         * gl/build-aux/do-release-commit-and-tag.diff: Likewise.
1207         * bootstrap: Regenerate.
1208
1209         Co-Authored-by: Paul Eggert <eggert@cs.ucla.edu>
1210
1211 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
1212
1213         bootstrap: show found GREP and SED in verbose mode.
1214         * gl/build-aux/bootstrap.in (EGREP, FGREP, GREP, SED): Remove.
1215         These are already set by funclib.sh.
1216         (func_prep): After --verbose has been processed, show the paths
1217         to GREP and SED found by funclib.sh.
1218         * bootstrap: Regenerate.
1219
1220         refactor: simplify program path searching in funclib.sh.
1221         * gl/build-aux/funclib.sh (func_path_progs): New function. Factor
1222         out common code from GREP and SED searches.
1223         (func_check_prog_sed, func_check_prog_grep): New functions, for
1224         non-common code.
1225         (scriptversion): Update.
1226         * bootstrap: Regenerate.
1227
1228         bootstrap: search for a non-truncating grep binary.
1229         On at least Unixware 7.1.4, the first grep binary on PATH is
1230         unable to process the extract-trace scripts.
1231         * gl/build-aux/funclib.sh (GRUP): Search PATH for a grep binary
1232         that doesn't truncate its own output if available, and set GREP
1233         accordingly.
1234         * Makefile.am (SCRIPT_ENV): Add setting for GREP.
1235         * bootstrap: Regenerate.
1236         Reported by Tim Rice.
1237
1238         bootstrap: search for a non-truncating sed binary.
1239         On at least Unixware 7.1.4, the first sed binary on PATH is
1240         unable to process the extract-trace scripts.
1241         * gl/build-aux/funclib.sh (PATH_SEPARATOR): Set to : or ;
1242         according to a feature test.
1243         (func_executable_p): New function.
1244         (SED): Search PATH for a sed binary that doesn't truncate its
1245         own output if available, and set SED accordingly.
1246         (scriptversion): Update.
1247         * Makefile.am (SCRIPT_ENV): New macro, for propagating configured
1248         variables.
1249         (ltdl_ac_aux_dir, $(ltmain_sh), install-data-local): Use it.
1250         * bootstrap: Regenerate.
1251         Reported by Tim Rice.
1252
1253 2013-10-27  Gary V. Vaughan  <gary@gnu.org>
1254
1255         tests: use autotest as_unset rather than rerolling $unset locally.
1256         On at least Unixware 7.1.4, the shell variable 'unset' gets set
1257         to 'no' during the testsuite run, breaking several test cases.
1258         We should have been using Autotest $as_unset anyway.
1259         * tests/testsuite.at (unset): Remove test and variable setting.
1260         (LT_AT_MAKE): Use $as_unset as provided by autotest boilerplate
1261         instead of our own $unset.
1262         * tests/demo.at (uninstalled libraries ave priority): Likewise.
1263         Reported by Tim Rice.
1264
1265         maint: post-release administrivia
1266         * NEWS: Add header line for next release.
1267         * .prev-version: Record previous version.
1268         * cfg.mk (old_NEWS_hash): Auto-update.
1269
1270 2013-10-26  Gary V. Vaughan  <gary@gnu.org>
1271
1272         version 2.4.2.418
1273         * NEWS: Record release date.
1274
1275         gnulib: update to latest upstream revision.
1276         * gnulib: Update.
1277
1278         gnulib: use func_sort_ver instead of GNU sort -V in do-release-commit-and-tag.
1279         * gl/build-aux/do-release-commit-and-tag: Source funclib.sh and
1280         then use portable func_sort_ver rather than force installation of
1281         all GNU coreutils just for sort -V support.
1282
1283         refactor: move func_sort_ver from bootstrap.in to funclib.sh.
1284         * gl/build-aux/bootstrap.in (func_sort_ver): Move from here...
1285         * gl/build-aux/funclib.sh (func_sort_ver): ...to here.
1286         * bootstrap: Regenerate.
1287
1288         tests: use K&R main() syntax for old-ltdl-iface.at.
1289         At least Mac OS 10.8.5 clang chokes on the previous
1290         'const void *argv[]' parameter, but since we don't use it
1291         anyway, keep to the theme of old api support and use K&R
1292         syntax.
1293         * tests/old-ltdl-iface.at (old.c): Use 'main ()' instead of
1294         unportable 'int main (int argc, const void *argv[])'.
1295
1296         libltdl: bump -version-info revision by 1.
1297         The only changes to libltdl sources since v2.4.2 have been
1298         cosmetic and stylistic.
1299         * libltdl/ltdl.mk (LTDL_VERSION_INFO): For a release with no
1300         interface changes C:R:A becomes C:R+1:A.
1301
1302         maint: Update README-release for Makefile.inc -> ltdl.mk rename.
1303         * gl/top/README-release.diff: s/Makefile.inc/ltdl.mk/g
1304
1305         maint: bump serials on m4 sources changed since v2.4.2.
1306         * m4/argz.m4: Bump serial to 6.
1307         * m4/libtool.m4: Bump serial to 58.
1308         * m4/ltdl.m4: Bump serial to 19.
1309         * m4/ltoptions.m4: Bump serial to 8.
1310
1311         maint: fix a syntax-check violation from commit 12641bd.
1312         * build-aux/ltmain.in (func_mode_link): Reverse test operands to
1313         forestall misinterpretation of contests of shell variable as
1314         operand 1.
1315
1316 2013-10-10  Vadim Zeitlin  <vz-libtool@zeitlins.org>  (tiny change)
1317
1318         libtool: Don't fall back to static libraries if building them was disabled
1319         If -no-undefined was not specified but the platform didn't
1320         support shared libraries with undefined symbols (e.g. Cygwin/
1321         MinGW), static libraries were built instead of shared ones,
1322         even if building them was explicitly disabled with --disable-
1323         static configure option.
1324
1325         Fix this by stopping with a fatal error if a shared library
1326         can't be built in this case instead of unexpectedly building a
1327         static library instead.
1328
1329         * libltdl/config/ltmain.m4sh (func_mode_link()): Stop with
1330         fatal error when trying to build a shared library without -no-
1331         undefined on a platform not supporting undefined symbols in
1332         shared libraries.
1333
1334 2013-10-10  Brooks Moses  <bmoses@google.com>
1335
1336         libtool: Remove unneeded quotes in assignment.
1337         The quotes in this assignment cause "make syntax-check" to
1338         fail.  Thus, this patch removes them.
1339
1340 2013-10-09  Fabian Groffen  <grobian@gentoo.org>  (tiny change)
1341
1342         libtool: Fix x86_64-pc-solaris2.* GNU ld breakage
1343         Since commit [1] libtool tries to set a 64-bits target for GNU
1344         ld.  However, it does so wrongly for x86_64-pc-solaris2.*
1345         targets, causing libtool to believe the linker is called
1346         ld_sol2.  There is no such thing, and it obviously breaks
1347         things further down.  Some people wrongly assume there is
1348         supposed to be an ld_sol2 on their systems, e.g. [2].
1349
1350         I think the original change is fragile, because it assumes it
1351         has all CHOSTs matched, then appends _sol2.  In the wild,
1352         people have used amd64-pc-solaris2* too, so perhaps it would
1353         be safer if the code only appended _sol2 if there is actually
1354         an explicit target set.
1355
1356         Anyhow, since the 64-bits sparc target is called sparc64-* or
1357         sparcv9-*, the sparc case is already correctly handled, so in
1358         the attached patch, I just added an x86_64-* case, although I
1359         could imagine relaxing the i?86 case to *86*-pc-solaris2* too.
1360
1361         In any case, defaulting to a linker called ld_sol2 is wrong.
1362
1363         [1] http://lists.gnu.org/archive/html/libtool-commit/2011-02/
1364         msg00000.html
1365         [2] http://osdyson.org/issues/8
1366
1367 2013-10-09  Olivier Blin  <olivier.blin@softathome.com>  (tiny change)
1368
1369         libtool: Fix detection of ld version with parentheses.
1370         ld from crosstool-NG reports a version string with an extra
1371         version number in a parenthetical note:
1372         GNU ld (crosstool-NG 1.13.0) 2.21.1
1373
1374         This made libtool assume that the ld version was the
1375         crosstool-NG version (1.13.0) instead of the real ld version
1376         (2.21.1).
1377
1378         To fix the ld version string, this patch filters out any string
1379         between parentheses that is followed by a space.
1380
1381         Because of this bug, filtering of exported symbols was not
1382         taking place with crosstool-NG toolchains.
1383
1384         This issue has bee noticed when building pango, which exported
1385         harfbuzz symbols that should have remained hidden.
1386
1387 2013-10-09  Brooks Moses  <bmoses@google.com>
1388
1389         libtool: Fix comment indentation
1390         This trivial patch fixes indentation on a comment to match
1391         the style used elsewhere in m4/libtool.m4.
1392
1393 2013-10-09  DJ Delorie  <dj@redhat.com>
1394
1395         libtool: Add TPF settings for LT_SYS_DLOPEN_SELF
1396         * m4/libtool.m4: Since we know that all TPF builds are cross-
1397         builds, do not attempt to run linker tests during config. Use
1398         known constants instead, since we know how dlopen() is
1399         implemented.
1400
1401 2013-10-09  Vincent Lefevre  <vincent@vinc17.net>  (tiny change)
1402
1403         libtool: Fix $wl setting for tcc on GNU systems
1404         (This addresses http://bugs.debian.org/663945.  See there for
1405         more-detailed discussion.)
1406
1407         tcc gained support for "-Wl,-rpath -Wl,<directory>" in its
1408         commit 7fb0482a ("Support linker options passed in several -Wl
1409         param", 2012-03-14) but libtool doesn't know to use it.  Teach
1410         it.
1411
1412         Without this change, running "make check" on MPFR when it has
1413         been built with tcc and shared libraries doesn't work because
1414         libtool generates a -rpath option, which tcc doesn't support.
1415
1416 2013-10-09  Peter Johansson  <trojkan@gmail.com>
1417
1418         libtool: use AS_HELP_STRING in LT_WITH_SYSROOT help message.
1419         This patch fixes so help output is formatted similar with
1420         other macros using AS_HELP_STRING. Also it outputs '[=DIR]'
1421         as I suspect intended rather than '=DIR'.
1422
1423 2013-10-09  Joseph Prostko  <joe.prostko@gmail.com>  (tiny change)
1424
1425         libtool: Haiku change for shlibpath_overrides_runpath
1426         Pretty much all changes to Haiku for Libtool have been
1427         upstreamed, however we currently have an incorrect value for
1428         shlibpath_overrides_runpath.  It should be "no" instead of
1429         "yes".
1430
1431         Previously Scott McCreary had submitted patches for us, but I
1432         told him I would work to get this committed, as he is quite
1433         busy lately.
1434
1435         Here is a commit he made to our Haiku Ports site though, that
1436         shows the exact change I am proposing done against Libtool
1437         2.4.2.
1438
1439         http://ports.haiku-files.org/browser/haikuports/sys-devel/
1440         libtool/patches/libtool-2.4.2.patch
1441
1442 2013-10-09  Brooks Moses  <bmoses@google.com>  (tiny change)
1443             Johannes Obermayr  <johannesobermayr@gmx.de>
1444
1445         libtool: Discard "-mllvm $arg" options when linking.
1446         Clang accepts options of the form "-mllvm $arg", and passes the
1447         argument as an option to LLVM.  These options caused problems
1448         for Libtool when linking; in some cases, the -mllvm option is
1449         passed through but the corresponding argument is dropped.  (See
1450         for example http://llvm.org/bugs/show_bug.cgi?id=14716.)
1451
1452         This patch resolves the issue by explicitly matching -mllvm and
1453         taking an argument.  Since Clang never uses LLVM for linking,
1454         the matched "-mllvm $arg" option is irrelevant for the link
1455         step, and we can simply discard it once we've recognized it.
1456
1457 2013-10-09  Ondřej Bílka  <neleai@seznam.cz>
1458
1459         maint: Fix various comment and documentation typos.
1460         Ondřej writes: "Hi, this is upstream version of patch that I
1461         sent to gcc.  I generated this patch with tool that I am
1462         writing: https://github.com/neleai/stylepp"
1463
1464         (Note: The generated patch was adjusted to retain the non-US
1465         but correct spelling of 'rigourous' before commit.  --Brooks)
1466
1467 2013-10-08  David 'Digit' Turner  <digit@google.com>
1468
1469         libtool: Add Android/Linux support.
1470         This patch adds proper Android support to libtool. The main
1471         issues are the following:
1472
1473           - Versioned libraries are not supported by the platform and
1474             its build/packaging tools.
1475
1476           - The dynamic linker is not GNU ld, there is no support for
1477             DT_RUNPATH.
1478
1479           - Similarly, there is no ldconfig.
1480
1481 2013-09-17  Peter Rosin  <peda@lysator.liu.se>
1482
1483         libtool: trust -print-search-dirs from recent GCC
1484         Alan Modra hints in [1] that -print-search-dirs was fixed in
1485         GCC 4.2(?), so that it nowadays automatically appends
1486         -print-multi-os-directory for the applicable directories. I.e.
1487         it should no longer be necessary for libtool to append a second
1488         ../lib64 when GCC has already done so. Also, the multi-os
1489         appending loop seems to have been added specifically for early
1490         (arguably broken) bi-arch enabled GCCs that printed -m32
1491         directories even though -m64 was the default [2]. So, my
1492         conclusion is that we want any libtool magic to affect
1493         -print-search-dirs output from contemporary GCCs as little as
1494         possible, while continuing to append the
1495         -print-multi-os-directory for the legacy case.
1496
1497         Fixes bug#15321 reported by Ozkan Sezer.
1498
1499         [1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20425
1500         [2] http://lists.gnu.org/archive/html/bug-libtool/2006-09/msg00019.html
1501
1502         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): If any of the
1503         directories printed by -print-search-dirs ends with the
1504         content of -print-multi-os-directory, then assume that
1505         GCC adds the multi-os-directory where appropriate all by
1506         itself and hence don't try to second guess when to add
1507         it manually.
1508         * THANKS: Update.
1509
1510 2013-09-16  Gary V. Vaughan  <gary@gnu.org>
1511
1512         bootstrap: clean up spurious 'gnulib-cache.m4 missing' error.
1513         * gl/build-aux/bootstrap.in (func_reconfigure): Don't show an
1514         error when running without gnulib-cache.m4.
1515         * bootstrap: Regenerate.
1516
1517 2013-09-15  Gary V. Vaughan  <gary@gnu.org>
1518
1519         bootstrap: make ensure_changelog work for update mode projects.
1520         * gl/build-aux/bootstrap.in (func_bootstrap): Move
1521         func_changelog_ensure invocation from here...
1522         (func_reconfigure): ...to here. If gnulib_modules is empty, then
1523         grep gnulib-cache.m4 for gitlog-to-changelog before invoking
1524         func_changelog_ensure.
1525         * bootstrap: Regenerate.
1526
1527         bootstrap: fetch defaults from gnulib-cache.m4 for non-imported projects.
1528         Recent changes uncovered some bugs in handling of gnulib-tool
1529         options for projects that check in gnulib-cache.m4 rather than
1530         keep a separate list of modules and options in bootstrap.conf.
1531         * gl/build-aux/bootstrap.in (func_require_doc_base)
1532         (func_require_gnulib_name, func_require_local_gl_dir): New
1533         functions to set defaults from gnulib-cache.m4 in projects that
1534         use gnulib-tool in --update mode.
1535         (func_require_gnulib_tool_base_options): Use them to fetch
1536         defaults.
1537         (func_require_gnulib_copy_cmd): New function to calculate the
1538         options required for gnlib-tool copy command.
1539         (func_gnulib_tool_copy_file): Simplify accordingly.
1540         (scriptversion): Bump.
1541
1542 2013-09-05  Gary V. Vaughan  <gary@gnu.org>
1543
1544         maint: normalise formatting of recent commit log entry.
1545         * build-aux/git-log-fix: Add a summary line to ChangeLog entry of
1546         most recent commit.
1547
1548 2013-09-05  Brooks Moses  <bmoses@google.com>
1549
1550         maint: add Brooks Moses to AUTHORS file.
1551         * AUTHORS: Add myself to committers list.
1552
1553 2013-08-29  Gary V. Vaughan  <gary@gnu.org>
1554
1555         bootstrap: gnulib_tool=true means no gnulib submodule.
1556         * gl/build-aux/bootstrap.in (func_require_gnulib_tool): No
1557         sneaking off and cloning gnulib when the user already specified
1558         gnulib_tool=true in their bootstrap.conf!
1559         * bootstrap: Regenerate.
1560
1561 2013-08-23  Alan Modra  <amodra@bigpond.net.au>
1562
1563         bootstrap: make first char of IFS a space.
1564         Putting tab first in IFS breaks func_echo_all usage of $*,
1565         resulting in failure of func_infer_tag to match a command line
1566         using a $CC with trailing spaces. The trailing spaces were
1567         stripped out of CC_expanded but words in $CC were separated by
1568         tabs. This didn't match the makefile expansion of $CC using the
1569         standard IFS with a first char of space.
1570         * gl/build-aux/funclib.sh (IFS): Make first char a space.
1571         * bootstrap: Regenerate.
1572
1573 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
1574
1575         bootstrap: support --no-git and --no-po options.
1576         * gl/build-aux/bootstrap.in (bootstrap_parse_options): Accept
1577         --no-git as an alias for --skip-git for compatibility with gnulib
1578         bootstrap, and --no-po for symmetry.
1579         Reported by Mike Miller.
1580
1581         bootstrap: support gnulib gnulib_tool_option_extras settings.
1582         * gl/build-aux/bootstrap.in (func_gnulib_tool): Even though we
1583         don't need it, support gnulib_tool_option_extras for bootstrap.conf
1584         ported from gnulib bootstrap.
1585         * bootstrap: Regenerate.
1586         Reported by Mike Miller.
1587
1588         bootstrap: support sha1 binary on OpenBSD.
1589         * gl/build-aux/bootstrap.in (func_update_po_files): Remove the
1590         use of --status in a way that will suppress all error messages,
1591         but since this is only used to minimize updates, it shouldn't
1592         cause an issue.
1593         Look for a sha1 binary if the other SHA1SUM settings are not
1594         found.
1595         Also exit early if there is a problem updating the po file
1596         checksums.
1597         * bootstrap: Regenerate.
1598         Ported from a gnulib patch by Padraig Brady.
1599
1600         bootstrap: support tools that don't accept '--version' in buildreq.
1601         * gl/build-aux/bootstrap.in (func_check_tool): Check whether there
1602         is an executable as given or on the command PATH.
1603         (func_check_version): Use func_check_tool to avoid invoking --version
1604         when buildreq specifies '-' for the version number.
1605         * bootstrap: Regenerate.
1606         Reported by Mike Miller.
1607
1608         bootstrap: diagnose bad $buildreq formatting.
1609         Particularly when porting from gnulib bootstrap to libtool
1610         bootstrap, it's easy to forget the extra URL column used for
1611         error reporting.
1612         * gl/build-aux/bootstrap.in (func_check_versions): A non-URL
1613         pattern in the 3rd column of buildreq triggers a fatal error.
1614         * bootstrap: Regenerate.
1615         Reported by Mike Miller.
1616
1617 2013-08-23  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
1618
1619         bootstrap: support OpenBSD sed.
1620         * gl/build-aux/bootstrap.in (func_insert_if_absent): Work around
1621         the problem of OpenBSD sed not supporting '-' as a notation for
1622         standard input.
1623         * bootstrap: Regenerate.
1624         * THANKS: Add Mike Miller.
1625         Reported by Mike Miller.
1626
1627 2013-08-23  Steve Ellcey  <sellcey@mips.com>
1628             Gary V. Vaughan  <gary@gnu.org>
1629
1630         libtool: set correct linker ABI flags on mips64 linux.
1631         m4/libtool.m4 (_LT_ENABLE_LOCK): Select the n32 or n64 ABI when
1632         linking to match the ABI produced with the user's compiler flags.
1633
1634 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
1635
1636         maint: correct many abuses of the word "which".
1637         * HACKING, NEWS, TODO, bootstrap, bootstrap.conf,
1638         build-aux/ltmain.in, cfg.mk, configure.ac, doc/libtool.texi,
1639         doc/notes.texi, gl/build-aux/bootstrap.in,
1640         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1641         gl/doc/bootstrap.texi, libltdl/libltdl/lt_system.h,
1642         libltdl/loaders/loadlibrary.c, libltdl/lt__strl.c,
1643         libltdl/lt_dlloader.c, libltdl/ltdl.c, libtoolize.in,
1644         m4/libtool.m4, m4/ltdl.m4, m4/ltsugar.m4, m4/lt~obsolete.m4,
1645         tests/exceptions.at, tests/need_lib_prefix.at, tests/static.at:
1646         Use "which" correctly, or replace with "that", "where" or "what"
1647         as appropriate.
1648
1649 2013-08-23  Brook Moses  <bmoses@google.com>
1650
1651         libtool: improve comments for _LT_ENABLE_LOCK implementation.
1652         * m4/libtool.m4 (_LT_ENABLE_LOCK): enhance comments to explain
1653         why the code looks odd with 32bit flags in the 64bit section and
1654         vice versa.
1655
1656 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
1657
1658         libtool: fix refixed unmangled powerpc*le-linux support patch
1659         * m4/libtool.m4: fix refixed badly unmangled hunks from earlier
1660         powerpc*le changeset.
1661         Reported by Peter Rosin.
1662
1663         libtool: refix unmangled powerpc*le-linux support patch
1664         * m4/libtool.m4: refix badly unmangled hunks from earlier
1665         powerpc*le changeset.
1666         Reported by Peter Rosin.
1667
1668 2013-08-22  Gary V. Vaughan  <gary@gnu.org>
1669
1670         libltdl: don't trip subdir-objects warning from Automake >= 1.14.
1671         Latest Automake releases now warn when subdir-objects is not
1672         specified in preparation for Automake 2.0.  The option has been
1673         in Automake for more than a decade, so there's minimal risk of
1674         someone using the next release of Libtool alongside an ancient
1675         release of Automake when bootstrapping libltdl client projects.
1676         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Add subdir-objects.
1677
1678         libtool: refactor powerpc*le-linux case branch expressions.
1679         libtool (_LT_ENABLE_LOCK): make inner case branch expressions
1680         consistent with outer case expression.
1681         Reported by Peter Rosin.
1682
1683 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
1684
1685         libtool: fix mangled powerpc*le-linux support patch
1686         * m4/libtool.m4: unmangled badly pasted hunks from previous
1687         changeset.
1688
1689         libtool: initial powerpc*le-linux support
1690         * m4/libtool.m4 (ld -m flags): Remove non-canonical ppc host match.
1691         Support little-endian powerpc linux host.
1692
1693 2013-06-17  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
1694
1695         libtool: fix conversion warnings in cwrapper
1696         build-aux/ltmain.in (func_emit_cwrapperexe_src:main): XMALLOC wants a
1697         size_t. Also use int instead of intptr_t for the return value (which
1698         is fine since the _spawnv call is synchronous).
1699         (func_emit_cwrapper_src) [MSVC]: Remove the intptr_t helper define.
1700         (func_emit_cwrapperexe_src:find_executable): Use size_t for variables
1701         involved in strlen computations.
1702         (func_emit_cwrapperexe_src:lt_setenv): Likewise.
1703         (func_emit_cwrapperexe_src:lt_extend_str): Likewise.
1704         (func_emit_cwrapperexe_src:lt_update_exe_path): Likewise.
1705         THANKS: Update.
1706
1707 2013-04-28  Peter Rosin  <peda@lysator.liu.se>
1708
1709         libtool: break all the way out when a good nm is found
1710         The current code tries to locate a compatible nm tool.  It starts with
1711         a prefixed nm tool (great!) and includes a plain nm too (that's fine).
1712         The problem is that the code searches for the prefixed nm before the
1713         plain nm (normally fine), but doesn't break once it has found a valid
1714         match, and the plain nm ends up the winner.
1715
1716         Report and analysis by Mike Frysinger.
1717
1718         * m4/libtool.m4 (LT_PATH_NM): Break all the way out on a good match.
1719
1720 2013-01-28  Peter Rosin  <peda@lysator.liu.se>
1721
1722         maint: update email address...
1723         * THANKS: ...of Jan Engelhardt.
1724
1725 2013-01-28  Jan Engelhardt  <jengelh@inai.de>
1726
1727         doc: fix an orthographic error
1728         * doc/libtool.texi (Install mode): Ensure, not insure.
1729
1730 2013-01-27  Gary V. Vaughan  <gary@gnu.org>
1731
1732         bootstrap: fix func_insert_if_absent bugs.
1733         * gl/build-aux/bootstrap.in (func_insert_if_absent): Print verbose
1734         message when there is a new entry to add.
1735         Also, make sure to update the .gitignore file when changed.
1736         * bootstrap: Regenerate.
1737         * THANKS: Add Pádraig Brady.
1738         Reported by Pádraig Brady.
1739
1740         bootstrap: factor out gnulib-tool option calculations.
1741         * gl/build-aux/bootstrap.in (func_gnulib_tool): Factor base option
1742         settings out...
1743         (require_gnulib_tool_base_options): ...to here.
1744         * bootstrap: Regenerate.
1745
1746         syntax-check: fix a quoted_test_operand violation.
1747         * gl/build-aux/bootstrap.in (func_insert_if_absent): Make sure
1748         test operands are quoted correctly.
1749         * bootstrap: Regenerate.
1750
1751         syntax-check: fix new SPACE-TAB violations.
1752         * build-aux/ltmain.in (func_dll_def_p): Replace SPACE-TAB by
1753         TAB-SPACE.
1754         * m4/libtool.m4 (_LT_DLL_DEF_P): Likewise.
1755
1756 2013-01-26  Bernhard Voelker  <mail@bernhard-voelker.de>
1757             Gary V. Vaughan  <gary@gnu.org>
1758
1759         bootstrap: always auto-add .gitignore files at the top.
1760         * gl/build-aux/bootstrap.in (func_gitignore_entries): New function.
1761         Strip comments and blank lines.
1762         (func_insert_sorted_if_absent): Renamed...
1763         (func_insert_if_absent): ...to this. Adjust all callers.
1764         Instead of comparing the sorted new file with the original,
1765         compare the line count, being careful to diagnose duplicate
1766         entries which would otherwise skew the count.
1767
1768 2013-01-26  Gary V. Vaughan  <gary@gnu.org>
1769
1770         maint: patch gitlog-to-changelog to reduce bogus warnings.
1771         Rather than trying to find a new useful warning among the 55
1772         expected warnings from vanilla gitlog-to-changelog, patch it to
1773         elide the bogus warnings from duplicate log entries.
1774         * gl/bulid-aux/gitlog-to-changelog.diff: Omit-from-ChangeLog is
1775         a new log entry tag to skip legitimate log duplicates.
1776         * build-aux/git-log-fix: Instead of deleting all content of
1777         duplicates and generating a warning, append the new
1778         Omit-from-ChangeLog tag to elide silently.
1779         * Makefile.am *($(changelog)): Remove the 'expect 55 warnings'
1780         echo.
1781
1782 2013-01-22  Peter Rosin  <peda@lysator.liu.se>
1783
1784         libtool: factor out the dll .def file test and improve it
1785         Resolves bug#13414. Problem reported by Erik van Pienbroek
1786         and Martin Doucha.
1787
1788         build-aux/ltmain.in (func_mode_link): Factor out the test if a
1789         given symbol file is a module-definition (.def) file into...
1790         (func_dll_def_p): ...this function, which also improves the check.
1791         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
1792         <cygwin, mingw, pw32, cegcc>: Similarly, factor out the test if
1793         a given symbol file is a module-definition (.def) file into...
1794         (_LT_DLL_DEF_P): ...this macro, which also improves the check.
1795         tests/export-def.at: New test.
1796         Makefile.am (TESTSUITE_AT): Add above test.
1797         NEWS: Update.
1798         THANKS: Update.
1799
1800 2013-01-21  Peter Rosin  <peda@lysator.liu.se>
1801
1802         libtool: allow tabs in *_cmds variables
1803         This is in preparation for the next patch, which needs to have literal
1804         tab characters survive the evaluation of the *_cmds variables.
1805
1806         build-aux/ltmain.in (func_execute_cmds, func_mode_link): Don't collapse
1807         tabs and surrounding whitespace into a single space when executing a
1808         tilde-separated cmds construct, instead keep any tabs intact.
1809
1810 2013-01-19  Peter Rosin  <peda@lysator.liu.se>
1811
1812         libtool: avoid tabs in all *_cmds variables.
1813         This is in preparation for the next change, which will preserve
1814         tabs when the *_cmds variables are evaluated. Removing tabs first
1815         ensures that the libtool output stays the same when tabs are not
1816         collapsed with surrounding whitespace.
1817
1818         m4/libtool.m4: Convert indenting tabs to spaces for all *_cmds
1819         variables.
1820
1821 2013-01-16  Peter Rosin  <peda@lysator.liu.se>
1822
1823         libtool: align archive_cmds with archive_expsym_cmds for MSVC
1824         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1825         <archive_cmds>: Specify the import library name, aligning with
1826         archive_expsym_cmds.
1827
1828         libtool: feed .def files verbatim to the MSVC linker
1829         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1830         <archive_expsym_cmds>: When the symbol list isn't really a symbol list,
1831         but instead a .def file, copy it to a file with .def extension so that
1832         MSVC recognizes it as a module-definition file and feed it verbatim.
1833         NEWS: Update
1834
1835 2013-01-15  Peter Rosin  <peda@lysator.liu.se>
1836
1837         Revert "libtool: use false or : for $always_export_symbols, and simplify"
1838         This reverts commit 5ed7430fcb48c862c9d76ef497b73485d580338e, which is
1839         totally bogus as the variable is also set in libtool.m4. Sorry for the
1840         noise.
1841
1842         libtool: use false or : for $always_export_symbols, and simplify
1843         * build-aux/ltmain.in (func_mode_link): Save a string comparison
1844         by setting $lways_export_symbols to false or : and using it directly
1845         as the first argument to if. Make sure that it is always initialized
1846         while at it.
1847
1848 2013-01-09  Peter Rosin  <peda@lysator.liu.se>
1849
1850         tests: fix nits in path handling
1851         tests/bindir.at: func_save_and_prepend_path is already checking
1852         $bindirneeded internally, so remove checks from call sites. Add
1853         proper quoting while at it.
1854         (func_save_and_prepend_path): Use $PATH_SEPARATOR instead of a literal
1855         colon (in both instances).
1856
1857 2013-01-08  Peter Rosin  <peda@lysator.liu.se>
1858
1859         libtool: simplify quoting and code for symbols exporting sed programs
1860         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1861         <archive_expsym_cmds>: Make the sed programs easier to read (and
1862         recover some backslashes for later in the process).
1863
1864 2013-01-03  Peter Rosin  <peda@lysator.liu.se>
1865
1866         tests: don't feed -no-undefined to the linker during configure.
1867         * tests/deplibs-mingw.at: Restore LDFLAGS for the configure run so that
1868         the linker does not see -no-undefined. Makes the test pass instead of
1869         skip on MinGW.
1870
1871 2013-01-03  Gary V. Vaughan  <gary@gnu.org>
1872
1873         maint: note warnings during ChangeLog generation are normal.
1874         * Makefile.am ($(changelog)): Output a note that 55 empty commit
1875         log warning messages during ChangeLog generation are expected.
1876
1877         git: ignore .serial file.
1878         * .gitignore: ignore .serial file.
1879
1880         maint: fix recent badly formatted ChangeLog entry.
1881         * build-aux/git-log-fix: No empty lines in a single commit.
1882
1883         syntax-check: fix a useless_quotes_in_assignment violation.
1884         * gl/build-aux/inline-source (func_require_AWK): Remove useless
1885         quotes.
1886
1887         syntax-check: fix prohibit_strcmp syntax-check violation.
1888         * build-aux/ltmain.in (func_generate_dlsyms): Add a definition for
1889         STREQ, and then use it in place of !strcmp.
1890
1891         docs: update copyright dates in libtool.texi.
1892         It seems `make update-copyright' missed the texinfo copyright
1893         notice.
1894         * doc/libtool.texi: Update copyright dates for 2013.
1895
1896 2013-01-03  Brad Smith  <brad@comstyle.com>
1897
1898         libtool: add bitrig support.
1899         * build-aux/ltmain.in (func_mode_link): Add bitrig support.
1900         * m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE, LT_CMD_MAX_LEN)
1901         (_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
1902         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Ditto.
1903         * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Ditto.
1904         * tests/deplibs-ident.at(build tree relpaths): Ditto.
1905         * NEWS: Updated.
1906
1907 2013-01-01  Peter Rosin  <peda@lysator.liu.se>
1908
1909         maint: check if git works before relying on it
1910         Makefile.am (m4/ltversion.m4): Take the opportunity to regenerate
1911         $(srcdir)/.serial whenever git is actually working.
1912         (git_version_gen): Provide a fallback version for the git-version-gen
1913         script to use when .tarball-version does not exist and git is not
1914         working.
1915
1916         maint: really do update to latest upstream gnulib
1917         Commit 9a7071e668d044c1c47c855d2f0bc7cadb235071 "maint: update
1918         copyright notices to include 2013." states that this was done, but
1919         it actually was not.
1920         gnulib/: Update to latest upstream.
1921
1922 2013-01-01  Gary V. Vaughan  <gary@gnu.org>
1923
1924         maint: remove unsupported Tested-by: tag.
1925         * build-aux/git-log-fix: Tested-by: line should not appear in the
1926         ChangeLog.
1927
1928 2013-01-01  Peter Rosin  <peda@lysator.liu.se>
1929
1930         bootstrap: update README-release patch
1931         gl/top/README-release.diff: Update to match latest gnulib changes.
1932
1933 2013-01-01  Gary V. Vaughan  <gary@gnu.org>
1934
1935         maint: update copyright notices to include 2013.
1936         * gnulib/: Update to latest upstream.
1937         * AUTHORS, ChangeLog.old, HACKING, Makefile.am, NEWS, README,
1938         THANKS, TODO, bootstrap, bootstrap.conf,
1939         build-aux/edit-readme-alpha, build-aux/ltmain.in, cfg.mk,
1940         configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
1941         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1942         gl/build-aux/inline-source, gl/build-aux/options-parser,
1943         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
1944         libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
1945         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
1946         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
1947         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
1948         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
1949         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
1950         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
1951         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
1952         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
1953         libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
1954         libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
1955         libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
1956         m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
1957         m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
1958         tests/am-subdir.at, tests/archive-in-archive.at,
1959         tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
1960         tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
1961         tests/cwrapper.at, tests/darwin.at, tests/demo.at,
1962         tests/depdemo.at, tests/deplib-in-subdir.at,
1963         tests/deplibs-ident.at, tests/deplibs-mingw.at,
1964         tests/destdir.at, tests/dlloader-api.at,
1965         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
1966         tests/duplicate_deps.at, tests/duplicate_members.at,
1967         tests/early-libtool.at, tests/exceptions.at,
1968         tests/execute-mode.at, tests/exeext.at, tests/export.at,
1969         tests/f77demo.at, tests/fail.at, tests/fcdemo.at,
1970         tests/flags.at, tests/help.at, tests/indirect_deps.at,
1971         tests/infer-tag.at, tests/inherited_flags.at, tests/install.at,
1972         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
1973         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
1974         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
1975         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
1976         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
1977         tests/need_lib_prefix.at, tests/no-executables.at,
1978         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
1979         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
1980         tests/resident.at, tests/runpath-in-lalib.at,
1981         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
1982         tests/standalone.at, tests/static.at, tests/stresstest.at,
1983         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
1984         tests/template.at, tests/testsuite.at, tests/versioning.at,
1985         tests/with-pic.at: Bump copyright year.
1986
1987 2012-12-19  Peter Rosin  <peda@lysator.liu.se>
1988
1989         libtool: Drop $LDFLAGS when invoking the toolchain
1990         m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [Solaris] <archive_cmds>: Drop
1991         $LDFLAGS as it is a user variable that is usually used when invoking
1992         libtool. As such, it should not be used by libtool when it invokes the
1993         toolchain as it contains options intended for libtool, not the
1994         toolchain. Fixes export.at and other tests that add -no-undefined to
1995         LDFLAGS.
1996
1997 2012-12-19  Richard Palo  <richard.palo@baou.fr>  (tiny change)
1998
1999         libtool: Add SONAME to the so when exporting explicit symbols on Solaris
2000         m4/libtool.m (_LT_LANG_CXX_CONFIG) [Solaris] <archive_expsym_cmds>: Feed
2001         -h $soname to the linker just as is done in archive_cmds.
2002         THANKS: Update.
2003
2004 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
2005
2006         libtool: add @INIT@ to the preloader, for data imports on Windows
2007         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Adjust
2008         lt_cv_sys_global_symbol_to_cdecl so that it declares imported
2009         data symbols as __declspec(dllimport). Adjust
2010         lt_cv_sys_global_symbol_to_c_name_address and
2011         lt_cv_sys_global_symbol_to_c_name_address_lib_prefix so that they
2012         fill in "(void*) 0" for imported data symbols. Add new
2013         lt_cv_sys_global_symbol_to_import which finds imported data
2014         symbols if non-empty and export this variable to the libtool script
2015         in the global_symbol_to_import variable. Adjust
2016         lt_cv_sys_global_symbol_pipe so that data imports can be located.
2017         * build-aux/ltmain.in (func_generate_dlsyms): When data imports
2018         are present, as indicated by global_symbol_to_import, generate
2019         a relocation function lt_syminit that fills in the addresses
2020         of data imports at runtime and point to the new function with a
2021         new virtual @INIT@ entry in the symbol list.
2022         * libltdl/loaders/preopen.c (add_symlist): Look for the virtual
2023         @INIT@ symbol (i.e. lt_syminit) and call it.
2024         (vm_sym): Step past the @INIT@ symbol, if present.
2025         * tests/demo.at (dlmain.c): Call the @INIT@ symbol, if present.
2026         * NEWS: Update.
2027
2028 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
2029
2030         libtool: unify the global symbol transformations
2031         Since it is safe for $lt_cv_sys_global_symbol_to_cdecl to match
2032         with a simple /^T .* .*$/ type expression, it is ok for the other
2033         transformations as well.  At least if you require at least one
2034         $symcode at the start of the line, so that the just generated output
2035         doesn't match the next sed expression.
2036
2037         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unify the matching expressions
2038         in the sed programs that transform the extracted symbol lines.
2039
2040 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
2041
2042         libtool: break up long lines
2043         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Break up long lines when
2044         assigning the sed scripts that transform the extracted symbol lines.
2045
2046 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
2047
2048         bootstrap: use a decent awk if /bin/awk is hopeless.
2049         Bootstrap used to fail without an explicit AWK environment
2050         setting on machines with both nawk and awk, but where awk is a
2051         museum piece.
2052         * gl/build-aux/inline-source (AWK): Remove initial setting.
2053         (require_awk): Search PATH for a gawk, mawk or nawk before
2054         settling on awk, just like configure does.
2055         (func_include): Use it.
2056
2057         bootstrap: be sure to register gnulib submodule.
2058         * gl/build-aux/bootstrap.in (require_gnulib_submodule): Register
2059         the gnulib submodule before updating it, even with a shallow
2060         clone of gnulib.
2061         * bootstrap: Regenerate.
2062         Reported by Robert Boehne.
2063
2064         bootstrap: fix a typo in a find invocation.
2065         * gl/build-aux/bootstrap.in (require_buildreq_patch): Fix a typo.
2066         * bootstrap: Regenerate.
2067
2068         bootstrap: bash versions 3.00.x do not have += functionality.
2069         * gl/build-aux/funclib.sh: Fix a typo in fork minimisation for
2070         bash versions 3.00.x.
2071         * bootstrap: Regenerate.
2072
2073         maint: fix missing command error in make dist.
2074         * Makefile.am ($(readme)): Don't forget the 'test'!
2075
2076         tests: fixup experr for addition whitespace in error prefix.
2077         Fix spurious test failures due to unmatched experr output.
2078         * tests/libtoolize.at, tests/old-ltdl-iface.at: Add the addition
2079         2 spaces now used to justify error prefixes.
2080
2081         bootstrap: use of ';' in sed scripts is not portable.
2082         * gl/build-aux/bootstrap.in (require_buildreq_automake)
2083         (require_dotgitmodules_parameters, require_package)
2084         (func_update_po_files): Use '\n' or -e to separate sed commands,
2085         instead of ';'.
2086         * gl/build-aux/extract-trace (func_autoconf_configure)
2087         (func_extract_trace_first): Likewise.
2088         * gl/funclib.sh: Likewise.
2089         (func_tr_sh): Likewise.
2090         * gl/build-aux/options-parser (func_usage_message): Likewise.
2091         * bootstrap: Regenerate.
2092         Reported by Robert Boehne.
2093
2094         bootstrap: don't $tc_standout spaces, it's ugly!
2095         * gl/build-aux/funclib.sh (func_error): Move the prefix indent
2096         before $tc_standout to avoid bright red inverse spaces.
2097         * bootstrap: Regenerate.
2098
2099         bootstrap: fix rectangle select induced trailing spaces.
2100         * gl/build-aux/funclib.sh (require_term_colors): Delete trailing
2101         whitespace.
2102         * bootstrap: Regenerate.
2103
2104         bootstrap: display prerequisite program environment vars.
2105         Be more helpful when a prerequisite program from $buildreq
2106         cannot be located, by showing what variable to export if it
2107         is already installed but not in PATH.
2108         * gl/build-aux/bootstrap.in (func_check_versions): Display
2109         associated environment variables for not found prerequisite
2110         programs.
2111         * bootstrap: Regenerate.
2112
2113         bootstrap: honor COLORTERM and USE_ANSI_COLORS.
2114         Plenty of machines use a terminfo database that doesn't have
2115         entries for color escape sequences, even though the terminal
2116         itself most likely supports ANSI color escapes.
2117         * gl/build-aux/funclib.sh (require_term_colors): If COLORTERM
2118         or USE_ANSI_COLORS are set, then ignore what terminfo says,
2119         and use standard ANSI color escape sequences.
2120         * bootstrap: Regenerate.
2121
2122         bootstrap: make error messages prettier.
2123         * gl/build-aux/funclib.sh (func_error): Indent 'error' prefix by
2124         two additional spaces to line up nicely with 'warning' and
2125         'running'.
2126         * bootstrap: Regenerate.
2127
2128 2012-10-24  Gary V. Vaughan  <gary@gnu.org>
2129
2130         bootstrap: emphasize command executions with terminal bold.
2131         * bootstrap.in (func_show_eval): Use $require_term_colors to
2132         embolden the command about to be executed in output.
2133         * bootstrap: Regenerate.
2134         * bootstrap.conf (libtool_build_prerequisites): Use the standard
2135         (colorful!) bootstrap func_show_eval here too.
2136
2137         bootstrap: show output from 'make bootstrap-deps'.
2138         * bootstrap.conf (libtool_build_prerequisites): Add support for
2139         AM_V_GEN and AM_V_at to the temporary pre-configure Makefile.
2140         Instead of eliding non-error output from bootstrap-deps, show
2141         the results, with verbosity set according to $opt_verbose.
2142         * Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh, libtool)
2143         (README): Fix the display rules to correctly fall-back to
2144         AM_DEFAULT_VERBOSITY when V=1 is not passed to make invocation.
2145
2146 2012-10-22  Gary V. Vaughan  <gary@gnu.org>
2147
2148         maint: fixup badly formatted ChangeLog entries.
2149         * build-aux/git-log-fix: Mostly missing category tags and refilling
2150         to 64 columns, but also deleting duplicate entries from merging the
2151         gary/reredo-test-operand-order branch.
2152         * g/build-aux/gitlog-to-changelog.diff: Local patch to prevent
2153         printing unqualified header lines for deleted duplicate patches.
2154         * THANKS: Put email address for Paul Seidler here...
2155         * build-aux/git-log-fix: ...and remove from ChangeLog here.
2156
2157         bootstrap: regenerate to propagate Bob's func_split_equals fix.
2158         * bootstrap: regenerate.
2159
2160 2012-10-22  Mikhail Zabaluev  <mikhail.zabaluev@gmail.com>  (tiny change)
2161
2162         configury: make LT_INIT options pic-only and no-pic work.
2163         * m4/ltoptions.m4 (_LT_WITH_PIC): Set pic_mode at m4 time.
2164
2165 2012-10-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2166
2167         options-parser: fix regexp quoting error.
2168         * gl/build-aux/options-parser (func_split_equals): Fixed expr
2169         regexp quoting syntax error encountered with non-XSI shells.
2170         Problem was noticed under Solaris 10.
2171
2172 2012-10-21  Gary V. Vaughan  <gary@gnu.org>
2173
2174         syntax-check: fix violations and implement sc_old_style_quoting.
2175         Modern GNU ASCII quoting in output and comments is done
2176         'like this'.
2177         * cfg.mk (sc_old_style_quoting): Try to catch most instances
2178         of `old style quoting' so that it is not accidentally re-
2179         introduced to the code.
2180         * HACKING, Makefile.am, NEWS, PORTING, README, TODO, bootstrap,
2181         bootstrap.conf, build-aux/edit-readme-alpha,
2182         build-aux/git-hooks/commit-msg, build-aux/ltmain.in,
2183         doc/libtool.texi, gl/build-aux/bootstrap.in,
2184         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
2185         gl/build-aux/inline-source, gl/build-aux/options-parser,
2186         libltdl/libltdl/slist.h, libltdl/loaders/loadlibrary.c,
2187         libltdl/ltdl.c, libltdl/slist.c, libtoolize.in, m4/argz.m4,
2188         m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4, m4/ltsugar.m4,
2189         tests/cmdline_wrap.at, tests/configure-iface.at, tests/demo.at,
2190         tests/depdemo.at, tests/deplib-in-subdir.at,
2191         tests/deplibs-mingw.at, tests/destdir.at, tests/execute-mode.at,
2192         tests/f77demo.at, tests/fail.at, tests/inherited_flags.at,
2193         tests/libtool.at, tests/libtoolize.at, tests/lt_dladvise.at,
2194         tests/lt_dlexit.at, tests/mdemo.at, tests/need_lib_prefix.at,
2195         tests/old-ltdl-iface.at, tests/old-m4-iface.at, tests/static.at,
2196         tests/stresstest.at, tests/testsuite.at, tests/versioning.at:
2197         Convert to upright quotes.
2198
2199         tests: remove spurious shell variable braces.
2200         * tests/testsuite.at: Allow the shell braces syntax check to pass
2201         again.
2202
2203         bootstrap: add missing bootstrap override module file.
2204         * gl/modules/bootstrap: Forgot to add this file in a previous
2205         commit.
2206
2207         bootstrap: allow bootstrap.texi to pass syntax-check.
2208         * cfg.mk (sc_require_function_nl_brace): Skip texi files.
2209         * gl/doc/bootstrap.texi: Fix assorted syntax-check violations.
2210
2211         bootstrap: move into local gl overrides directory.
2212         In order to work as if it were already adopted by upstream
2213         gnulib, put bootstrap and supporting scripts into the local
2214         gnulib overrides directory.
2215         * bootstrap, build-aux/extract-trace, build-aux/funclib.sh,
2216         build-aux/inline-source, build-aux/options-parser: Move from
2217         here...
2218         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
2219         gl/build-aux/funclib.sh, gl/build-aux/inline-source,
2220         gl/build-aux/options-parser: ...to here.
2221         * gl/build-aux/options-parser (func_version): Show only the
2222         first copyright notice on files generated with inline-source.
2223         * gl/doc/bootstrap.texi: Developer documentation for bootstrap.
2224         * gl/modules/extract-trace, gl/modules/funclib.sh,
2225         gl/modules/inline-source, gl/modules/options-parser: Describe
2226         dependencies for gnulib-tool.
2227         * bootstrap.conf (gnulib_modules): Add extract-trace,
2228         inline-source and options-parser modules.
2229         * bootstrap: Regenerated from gnulib overrides as a mono-
2230         lithic script file using gl/build-aux/inline-source.
2231
2232 2012-10-20  Gary V. Vaughan  <gary@gnu.org>
2233
2234         tests: make sure AC_CONFIG_MACRO_DIR is still supported.
2235         * tests/old-m4-iface.at (AC_CONFIG_MACRO_DIR support): New test.
2236         Make sure we continue to support AC_CONFIG_MACRO_DIR using
2237         projects.
2238
2239         libtoolize: select the first directory from AC_CONFIG_MACRO_DIRS.
2240         * tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIRS directories):
2241         New test to ensure multiple directory arguments mork correctly.
2242         * libtoolize.in (func_require_ac_macro_dir): Use expr to discard
2243         any additional space delimited entries in the first
2244         AC_CONFIG_MACRO_DIRS argument.
2245         * bootstrap (func_require_macro_dir): Likewise.
2246
2247         libtoolize: migrate to new AC_CONFIG_MACRO_DIRS api.
2248         * libtoolize.in (func_install_pkgmacro_files): Uee
2249         AC_CONFIG_MACRO_DIRS.
2250         (func_check_macros): Advise using AC_CONFIG_MACRO_DIRS.
2251         (require_ac_macro_dir): Give priority to AC_CONFIG_MACRO_DIRS.
2252         (require_macro_dir): Likewise.
2253         * bootstrap: Give priority to AC_CONFIG_MACRO_DIRS.
2254         * configure.ac: Define dummy AC_CONFIG_MACRO_DIRS for older
2255         Autotools, that is allow bootstrap with current release versions.
2256         Use AC_CONFIG_MACRO_DIRS instead of AC_CONFIG_MACRO_DIR.
2257         * tests/testsuite.at: Source build-aux/extract-trace for access
2258         to func_extract_trace.
2259         (LT_AT_ACLOCAL): Use it to get the AC_CONFIG_MACRO_DIRS argument
2260         to pass manually to aclocal for compatibility with old Automake.
2261         Add a fallback AC_CONFIG_MACRO_DIRS definition to acinclude.m4
2262         in the test directory.
2263         (LT_AT_AUTORECONF): Likewise.
2264         * tests/cdemo.at, tests/configure-iface.at, tests/darwin.at,
2265         tests/demo.at, tests/depdemo.at, tests/early-libtool.at,
2266         tests/libtoolize.at, tests/mdemo.at, tests/no-executables.at,
2267         tests/nonrecursive.at, tests/old-ltdl-iface.at,
2268         tests/recursive.at, tests/subproject.at, tests/tagdemo.at,
2269         tests/template.at: Likewise.
2270         * doc/libtool.texi: Update.
2271         * NEWS: Update.
2272
2273 2012-10-19  Peter Rosin  <peda@lysator.liu.se>
2274
2275         libtool: parse "dumpbin -headers" to get symbols exported from implibs
2276         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Extract symbols
2277         imported from DLLs by import libraries in the Microsoft dumpbin
2278         wrapper.
2279         (LT_PATH_NM): Add -headers option if dumpbin is the located name
2280         lister to feed the above new code.
2281         * NEWS: Update.
2282
2283         libtool: make func_win32_libid work when the name lister is MS dumpbin
2284         * m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [MSVC]: Use
2285         func_win32_libid as file_magic_cmd when the name lister
2286         is MS dumpbin.
2287         (_LT_CMD_GLOBAL_SYMBOLS): Export the new veriable nm_interface
2288         to the libtool script.
2289         * build-aux/ltmain.in (func_cygming_gnu_implib_p)
2290         (func_cygming_ms_implib_p): Move up to before...
2291         (func_win32_libid): ...which now uses them to determine if
2292         the object is an import library when the nm_interface is
2293         "MS dumpbin".
2294         * NEWS: Update.
2295
2296 2012-10-19  Gary V. Vaughan  <gary@gnu.org>
2297
2298         bootstrap: always extract only the first AC_CONFIG_MACRO_DIR arg.
2299         Previous versions of bootstrap concatenated all the arguments to
2300         multiple invocations of AC_CONFIG_MACRO_DIR when extracting the
2301         macro_dir directory name.  This change enforces correct and
2302         consistent behaviour.
2303         * libtoolize.in (func_require_macro_dir): Use the new
2304         func_extract_trace_first function to make sure the first argument
2305         is always used.
2306         (func_require_aux_dir, func_require_gnulib_mk)
2307         (func_require_source_base): Future proof these functions against
2308         multiple invocations or additional arguments to the macros they
2309         trace.
2310
2311         bootstrap: extract *first* ACLOCAL_AMFLAGS -I argument.
2312         * bootstrap (func_require_macro_dir): .* is greedy, so _G_sed_scan
2313         as it was will always return the last -I argument, which is wrong.
2314         Move to a shell loop to ensure we always get the first -I argument
2315         if any.  (code from libtoolize.in).
2316
2317         bootstrap: use short gnu.org urls consistently.
2318         * bootstrap.conf (buildreq): Use gnu.org/s/ style urls to match
2319         the ones added automatically by the main bootstrap script.
2320
2321         libtoolize: fix a misspelled variable name.
2322         * libtoolize.in (func_require_am_macro_dir): The loop uses _G_arg
2323         not _G_opt.  Now spelled correctly.
2324
2325         tests: always extract only the first AC_CONFIG_MACRO_DIR arg.
2326         Previous releases of libtoolize used the final invocation when
2327         there were several, and after the rewrite over extract-trace,
2328         all the invocation directories were concatenated.  This change
2329         enforces correct and consistent behaviour.
2330         * tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIR invocation):
2331         New test.
2332         * build-aux/extract-trace (func_extract_trace_first): New function
2333         for clients that source this file, which returns only the first
2334         argument to the first invocation of the named macros.
2335         * libtoolize.in (func_require_ac_macro_dir): Use it to make sure
2336         the first argument is always used.
2337         (func_require_ac_aux_dir, func_require_ac_ltdl_dir)
2338         (func_require_ac_ltdl_options): Future proof these functions against
2339         multiple invocations or additional arguments to the macros they
2340         trace.
2341         * News (Important incompatible changes): Note change in semantics.
2342         Reported by Eric Blake.
2343
2344         tests: always extract only the first ACLOCAL_AMFLAGS include arg.
2345         * tests/libtoolize.at (libtoolize ACLOCAL_AMFLAGS extraction):
2346         New test.
2347         * libtoolize.in (func_check_macros): Display the correct advice
2348         when ACLOCAL_AMFLAGS specifies a macrodir, but AC_CONFIG_MACRO_DIR
2349         does not.
2350
2351         doc: add a missing period following @xref.
2352         * doc/libtool.texi: Silence a warning by adding back a missing
2353         period.
2354
2355 2012-10-19  Peter Rosin  <peda@lysator.liu.se>
2356
2357         libtool: avoid non-underscore symbols in the "dumpbin -symbols" wrapper
2358         If an object has a symbol lacking an expected leading underscore,
2359         the symbol name is not printed, but the symbol type is, leading
2360         to output such as:
2361             T _normal _normal
2362             T T _another _another
2363         when the expected output would have been something like:
2364             T _normal _normal
2365             T no_underscore no_underscore
2366             T _another _another
2367         However, symbols lacking an expected leading underscore are
2368         not "real" symbols, they are internal symbols which we don't
2369         care about, therefore drop them instead.
2370         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Output the whole
2371         symbol line in one go.
2372         * NEWS: Update.
2373
2374 2012-10-18  Peter Rosin  <peda@lysator.liu.se>
2375
2376         libtool: unbreak Windows path quoting
2377         The lt_sed_naive_backslashify variable lost its lt_ prefix
2378         when m4sh was dropped. But not everywhere.
2379         * build-aux/ltmain.in (func_convert_core_file_wine_to_w32)
2380         (func_convert_core_msys_to_w32): Drop the lt_ prefix from
2381         the lt_sed_naive_backslashify variable.
2382
2383         libtool: kill leftover m4 quoting
2384         * build-aux/ltmain.in (func_mode_compile): Use literal ] and [.
2385
2386 2012-10-18  Gary V. Vaughan  <gary@gnu.org>
2387
2388         syntax-check: exclude false positive nested quote test.
2389         * build-aux/funclib.sh (func_echo_infix_1): These quotes are not
2390         actually nested, so add an exclude marker for the syntax-check.
2391
2392         libtool: don't set auxscriptsdir at bootstrap time.
2393         * build-aux/ltmain.in: Declare relative paths to aux scripts from
2394         source commands, for early inlining during bootstrap.
2395         * Makefile.am (bootstrap_edit): Move auxscriptsdir
2396         substitution from here....
2397         (configure_edit): ...to here.
2398         ($(ltmain_sh)): Feed ltmain.in through inline-source as ltmain.sh
2399         is generated to remove relative paths to aux scripts.
2400         (install-data-local): Simplify. No need for special treatment for
2401         ltmain.sh during installation, since aux scripts have already
2402         been inlined.
2403         Reported by Peter Rosin.
2404
2405         extract-trace: only source funclib.sh when $progname is extract-trace.
2406         * build-aux/extract-trace: $usage is too generic, and can cause
2407         sourced extract-trace to re-source options-parser.  We already
2408         require that funclib.sh be sourced before sourcing options-parser,
2409         so it's safer to check that $progname is correct before sourcing
2410         options-parser again from here.
2411
2412 2012-10-18  Peter Rosin  <peda@lysator.liu.se>
2413
2414         libtool: fix spelling nit
2415         * build-aux/ltmain.in (func_generate_dlsyms): Fix spelling nit.
2416         * libltdl/libltdl/lt_system.h: Likewise.
2417         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise.
2418
2419 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
2420
2421         maint: remove m4sh support.
2422         Now that the code base has coalesced around a single option
2423         parser, there's no need for the unused getopt.m4sh and support.
2424         * build-aux/getopt.m4sh, build-aux/general.m4sh,
2425         tests/getopt-m4sh.at: Remove.
2426         * Makefile.am (m4sh_dir, LT_M4SH, general_m4sh, getopt_m4sh)
2427         (sh_files): Remove.
2428         (TESTSUITE_AT): Remove tests/getopt-m4sh.at.
2429         (TESTS_ENVIRONMENT): Remove M4SH.
2430         * bootstrap.conf (libtool_build_prerequisites): Remove M4SH.
2431         * configure.ac (M4SH): Remove.
2432         * HACKING (Editing `.m4sh' Files): Remove and renumber following
2433         sections.
2434
2435         libtool: rewritten over funclib.sh instead of general.m4sh.
2436         * Makefile.am (ltmain_m4sh, ltmain_sh_edit): Remove.
2437         (ltmain_in): Path to ltmain.in.
2438         (ltmain_sh): Generate ltmain.sh from ltmain.in using
2439         $(bootstrap_edit).
2440         * build-aux/ltmain.m4sh: Remove.
2441         * build-aux/ltmain.in: Rewritten as a client of funclib.sh.
2442
2443         libtoolize: inline sourced helper scripts during install.
2444         * build-aux/inline-source: New file.
2445         * Makefile.am (inline_source): Path to inline-source script.
2446         (EXTRA_DIST): Distribute inline-source too.
2447         (helper_scripts): Remove.
2448         (install-data-local): Inline sourced helper scripts during
2449         installation.
2450         Don't install helper_scripts.
2451         (uninstall-hook): Don't uninstall helper_scripts.
2452
2453         libtoolize: rewritten over funclib.sh instead of general.m4sh.
2454         * Makefile.am (libtoolize_m4sh): Remove.
2455         (EXTRA_DIST): Delete libtoolize_m4sh.
2456         (libtoolize_in): Remove rule.
2457         (libtoolize): Apply bootstrap_edit to libtoolize.in too.
2458         * configure.ac (AC_CONFIG_SRCDIR): Refer to libtoolize.in.
2459         * libtoolize.m4sh: Remove.
2460         * libtoolize.in: Rewrite as a client of options-parser and the
2461         new funclib.sh, avoiding the m4sh expansion step.
2462         * tests/libtoolize.at, tests/old-ltdl-iface.at (experr): adjust
2463         to match funclib.sh error output.
2464
2465         options-parser: correctly quote shell meta-characters in arguments.
2466         When any argument contains a shell meta-character, it needs to be
2467         quoted when passed around.  We already pass parameter lists as
2468         space delimited strings of arguments, and pass the string through
2469         eval to turn it back into a list before re-assigning using `set'.
2470         To prevent the shell from interpreting any meta-characters during
2471         an `eval set dummy $argumentlist', they must be quoted again
2472         inside the quoted argument list.
2473         * build-aux/funclib.sh (func_quote_for_eval): Be careful to keep
2474         a separate tally of quoted and unquoted argument lists, to
2475         conform to the API of the single argument func_quote_for_eval
2476         implementation in build-aux/general.m4sh.
2477         * bulid-aux/options-parser (func_run_hooks): To account for the
2478         doubly quoted meta-character argument lists, we must eval the
2479         parameter reassignment `set' call separately from evaluating the
2480         dynamically named hook results variable.
2481
2482         maint: factor common shell code into build-aux/funclib.sh.
2483         Moving potentially reusable code into a common file that can
2484         be sourced by clients, and adjusting for impedance mismatch
2485         or necessary renames during integration.
2486         * build-aux/funclib.sh: New file.
2487         * build-aux/options-parser (Shell normalisation)
2488         (User overrideable command paths, Global variables, func_append)
2489         (require_term_colors, func_echo, func_echo_infix_1, func_warn)
2490         (func_error, func_fatal_error, func_quote_for_eval, func_verbose):
2491         Move from here...
2492         * build-aux/funclib.sh (Shell normalisation, User overrideable
2493         command paths, Global variables, func_append)
2494         (require_term_colors, func_echo, func_echo_infix_1)
2495         (func_warn_and_continue, func_error, func_fatal_error)
2496         (func_quote_for_eval, func_verbose): ...to here.
2497         * build-aux/general.m4sh (func_arith, func_basename)
2498         (func_dirname, func_dirname_and_basename, func_echo_all)
2499         (func_grep, func_len, func_mkdir_p, func_mktempdir)
2500         (func_normal_abspath, func_relative_path, func_quote_for_expand)
2501         (func_stripname, func_show_eval, func_tr_sh): Move from here...
2502         * build-aux/funclib.sh(func_arith, func_basename)
2503         (func_dirname, func_dirname_and_basename, func_echo_all)
2504         (func_grep, func_len, func_mkdir_p, func_mktempdir)
2505         (func_normal_abspath, func_relative_path, func_quote_for_expand)
2506         (func_stripname, func_show_eval, func_tr_sh): ...to here.
2507         * bootstrap (usage message): Document `-no-warn' option.
2508         (func_append_u, func_warning): Move from here...
2509         * build-aux/funclib.sh (func_append_uniq, func_warning): ...to
2510         here.
2511         * bootstrap, build-aux/extract-trace: Source build-aux/funclib.sh
2512         before build-aux/options-parser.
2513         * build-aux/options-parser (usage, long_help_message): Set
2514         default values to match what is parsed by the unmodified parser.
2515         * build-aux/extract-trace (usage, long_help_message): Only set
2516         from func_main, so that clients sourcing this file can still use
2517         the correct defaults from build-aux/options-parser.
2518         * bootstrap (bootstrap_options_prep, bootstrap_parse_options):
2519         Move warning option parsing from here...
2520         * build-aux/option-parser (func_options_prep)
2521         (func_parse_options): ...to here, where all clients can benefit.
2522         * Makefile.am (funclib_sh): New macro; path to funclib.sh.
2523         (EXTRA_DIST): Add $(funclib_sh).
2524
2525         libtoolize: source extract-trace rather than fork and execute each call.
2526         Rather than forking and executing a full $SHELL for each macro
2527         extraction, source the script and its dependencies into our
2528         execution space and use the provided func_extract_trace API.
2529         * libtoolize.m4sh: Source extract-trace from an appropriate
2530         directory determined presently by make.
2531         (func_extract_trace): Remove this wrapper.
2532         * Makefile.am (abs_aux_dir): Absolute path to extract-trace
2533         directory.
2534         (configure_edit): Inject abs_aux_dir into uninstalled libtoolize.
2535         (bin_SCRIPTS): Remove libtoolize.
2536         (uninstall-hook): Manually uninstall libtoolize.
2537         (install-data-local): Inject pkgauxdir into installed libtoolize
2538         during installation.
2539
2540         options-parser: employ fork minimisation.
2541         * build-aux/options-parser (_G_HAVE_XSI_OPS): Environment
2542         overrideable defaults for bash and zsh, which are known to
2543         support XSI extensions.
2544         (_G_HAVE_PLUSEQ_OP): Similarly for new enough versions of bash,
2545         which are known to have += support.
2546         (func_append): Only perform the shell += probe when state of
2547         support is unknown.
2548         (func_split_equals, func_split_short_opt): Similarly for XSI
2549         probe to select fastest working implementation.
2550
2551         options-parser: keep non-option arguments separate!
2552         * build-aux/options-parser (func_parse_options): When there is
2553         more than one non-option argument, "$*" forces all of them into
2554         a single string.  Use ${1+"$@"} to set arguments correctly.
2555
2556         options-parser: prefix usage message with "Usage: ".
2557         * build-aux/options-parser (func_usage_message): Prefix usage
2558         message with "Usage: ".
2559
2560         bootstrap: work when using fallback shallow gnulib clone.
2561         Bootstrapping without --gnulib-srcdir creates a shallow gnulib
2562         clone to run gnulib-tool out of, except that the parent package
2563         is almost certainly using a revision of gnulib before just tha
2564         most recent 2 gnulib revisions.
2565         * bootstrap (func_require_gnulib_submodule): Pull the most
2566         recent 365 revisions, which ought to be enough for a well-
2567         maintained parent package.
2568         Don't forget to run 'git submodule update' to select the correct
2569         gnulib revision.
2570
2571         bootstrap: require GNU make to bootstrap.
2572         Make is not installed by default in some environments, such as
2573         cygwin... which is slow enough already without having to wait
2574         for gnulib-tool, bootstrap and half of configure to complete
2575         before getting an error.
2576         * bootstrap.conf (buildreq): Add recent GNU make to bootstrap
2577         requirements.  Now missing make is diagnosed in the earliest
2578         part of bootstrap.
2579
2580         maint: simplify "Local variables:" footer with time-stamp-pattern.
2581         * bootstrap, build-aux/extract-trace, build-aux/options-parser
2582         (Local variables): Use time-stamp-pattern to set number of
2583         searched lines to 10, and to replace time-stamp-start,
2584         time-stamp-end and time-stamp-format.
2585
2586 2012-10-08  Peter Rosin  <peda@lysator.liu.se>
2587
2588         tests: skip the with-pic test only if DLL_EXPORT is defined
2589         For some systems with PIC as default, the test was inadvertently
2590         skipped. Issue introduced in commit 4440d65.
2591         * tests/with-pic.at: Skip the test for systems that define
2592         DLL_EXPORT.
2593         Reported by Roumen Petrov.
2594
2595         tests: rerefix line ending problems on MinGW.
2596         The previous commit broke Linux->MinGW cross-compiling.
2597         * tests/mdemo.at: Normalize line endings after $EGREP.
2598         Reported by Roumen Petrov.
2599
2600 2012-10-06  Peter Rosin  <peda@lysator.liu.se>
2601
2602         tests: refix line ending problems on MinGW.
2603         In commit 22f5750, one of the hunks actually introduced
2604         line ending problems. Revert that hunk.
2605         * tests/mdemo.at: Use AT_DATA for expected output when the
2606         output from compiled programs is fed through $EGREP.
2607
2608         tests: use dry runs in both parts of 'check link mode operation'
2609         MSVC exits with status 2 instead of the expected 1 when a
2610         real link is attempted.
2611         * tests/libtool.at (check link mode operation): Use a dry run and
2612         expect a clean exit status instead of expecting a fail.
2613
2614 2012-10-06  Gary V. Vaughan  <gary@gnu.org>
2615
2616         tests: sanitise the libtool quote checking Autotests.
2617         Carefully comment the maze of quoting and escaping needed to
2618         pass through M4, $SHELL, and grep before regexp matching.
2619         * tests/libtool.at (quote shell meta-characters in filenames):
2620         Split backslash into a separate test group, because it needs
2621         additional escaping.
2622         Use grep consistently for the entire test group.
2623         Use AT_CHECK rather than LT_AT_CHECK to avoid problems with
2624         escaping literal $ correctly with LT_ESCAPE.
2625         Use the correct number of backslashes for each sub-group.
2626         Escape double-quote literals portably.
2627         Reported by Peter Rosin.
2628
2629         tests: ensure mdemo.at doesn't rely on installed libltdl.
2630         * tests/mdemo.at (configuer.ac): Build an included convenience
2631         libltdl.
2632         (Makefile.am): Add subdir-objects.
2633         Remove override rules from legacy mdemo tests to reuse parent
2634         libltdlc.la.
2635         (LT_AT_CHECK_CONFIG): Add --with-included-ltdl to configure
2636         arguments so that test cases always use the subproject libltdl
2637         in preference to any installed libltdl.
2638         Reported by Peter Rosin.
2639
2640         tests: allow for unstable fortran output ordering.
2641         Due to differences in line-endings between C stdout and Fortran
2642         stdout, as well as unpredictable output ordering between
2643         platforms and runtimes, weaken success criteria to not require
2644         the entire output of fortran programs to match a test case.
2645         * itests/fcdemo.at, tests/f77demo.at (_LT_CHECK_EXECUTE):
2646         Improve comments, and weaken test case to grep for a known line
2647         in the f77 runtime output.
2648
2649 2012-10-05  Peter Rosin  <peda@lysator.liu.se>
2650
2651         tests: make LT_AT_HOST_DATA retain whitespace on MinGW
2652         Fixes issues with depdemo.at, f77demo.at and fcdemo.at.
2653         * tests/testsuite.at (LT_AT_HOST_DATA) [MinGW]: Keep leading
2654         and trailing spaces and tabs when converting line endings.
2655
2656         tests: fix line ending problems on MinGW
2657         * tests/cdemo.at: Use LT_AT_HOST_DATA for expected output from
2658         compiled programs.
2659         * tests/demo.at: Likewise.
2660         * tests/depdemo.at: Likewise.
2661         * tests/f77demo.at: Likewise.
2662         * tests/fcdemo.at: Likewise.
2663         * tests/mdemo.at: Likewise.
2664         * tests/tagdemo.at: Likewise.
2665
2666 2012-10-05  Gary V. Vaughan  <gary@gnu.org>
2667
2668         tests: remove last vestiges of the legacy test harness.
2669         All legacy tests have been fully migrated to Autotest, so
2670         no need to cling to the legacy scaffolding any more.
2671         * tests/defs.m4sh: Delete file.
2672         * configure.ac (AM_INIT_AUTOMAKE): Remove unused color-tests and
2673         parallel-tests options.
2674         * Makefile.am (defs_m4sh, defs_in, defs, TESTS): Remove.
2675         Adjust all dependencies.
2676
2677         tests: migrate legacy tagtrace.test to Autotest.
2678         * tests/tagtrace.test: Delete file.
2679         * tests/libtool.at (test LT_SUPPORTED_TAG interface): Add
2680         Autotest equivalent.
2681         * Makefile.am (TESTS): Remove tests/tagtrace.test.
2682
2683         tests: migrate legacy objectlist.test to Autotest.
2684         * tests/objectlist.test: Delete file.
2685         * tests/libtool.at (check objectlist file operation): Add
2686         Autotest equivalent.
2687         * Makefile.am (TESTS): Remove tests/objectlist.test.
2688
2689         tests: migrate legacy link.test and link-2.test to Autotest.
2690         * tests/link.test, tests/link-2.test: Delete files.
2691         * tests/libtool.at (Check link operation): Add Autotest
2692         equivalent.
2693         * Makefile.am (TESTS): Remove tests/link.test and
2694         tests/link-2.test.
2695
2696         tests: migrate legacy nomode.test to Autotest.
2697         * tests/nomode.test: Delete file.
2698         * test/libtool.at (Check help output, No mode diagnostic): Add
2699         equivalent tests in Autotest.
2700         * Makefile.am (TESTS): Remove tests/nomode.test.
2701
2702         tests: migrate legacy suffix.test to Autotest.
2703         * tests/suffix.test: Delete file.
2704         * tests/libtool.at (Transform source suffices): Add Autotest
2705         equivalent.
2706         * Makefile.am (TESTS): Remove tests/suffix.test.
2707
2708         tests: migrate legacy quote.test to Autotest.
2709         * tests/quote.test: Moved from here...
2710         * tests/libtool.at: ...to here, and updated to Autotest.
2711         * Makefile.am (TESTS): Remove tests/quote.test.
2712         (TESTSUITE_AT): Add tests/libtool.at.
2713
2714 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
2715
2716         maint: add missing 2012 copyright to newly pushed old files.
2717         * tests/cdemo.at, tests/demo.at, tests/depdemo.at,
2718         tests/f77demo.at, tests/fcdemo.at, tests/mdemo.at,
2719         tests/tagdemo.at (Copyright): Update with missing 2012.
2720
2721         syntax-check: remove test/demo directories from exemption regexps.
2722         * cfg.mk (exclude_file_name_regex--sc_bindtextdomain)
2723         (exclude_file_name_regexp--sc_program_name): Remove. The excluded
2724         directories no longer exist.
2725         (exclude_file_name_regexp--sc_prohibit_strcmp): Remove subexpression
2726         for matching removed demo directories.
2727
2728         configure: remove unused conditionals and support for order only rules.
2729         Clean up some more unused cruft.
2730         * configure.ac (HAVE_CXX, HAVE_F77, HAVE_FC, HAVE_GCJ, HAVE_RC):
2731         Remove.  These were only used by the recently removed legacy
2732         tests.
2733         [order-only prerequisites]: Ditto.
2734
2735         bootstrap: remove support for `-r' and `reconf_dirs'.
2736         With all those extra demo directories out of the way, we can
2737         revert to a more canonical bootstrap process, and jettison the
2738         cruft that was only there to work around the pain of
2739         needing to autoreconf 11 directories.  Bootstrap is now an order
2740         of magnitude faster.
2741         * bootstrap.conf (require_ltdl_dir): New function. Factored out
2742         of `libtool_build_prerequisites'.
2743         (libtool_build_prerequisites): Adjust.
2744         (func_reconfigure): Use `require_ltdl_dir' to determine the name
2745         of the other directory we need to autoreconf during bootstrap.
2746         (libtool_options_prep, libtool_parse_options)
2747         (libtool_validate_options): Remove.
2748
2749         tests: let pic_flag and with-pic Autotests work on non-VPATH builds.
2750         * tests/pic_flag.at: Use _LT_DEMO_SETUP to generate a demo style
2751         project, rather than relying on $abs_top_srcdir/configure.
2752         * tests/with-pic.at: Likewise.
2753         * Makefile.am (TESTSUITE_AT): Move tests/pic_flag.at and
2754         tests/with-pic.at so that they run immediately following
2755         tests/demo.at.
2756
2757         tests: migrate legacy tests/fcdemo tests to Autotest.
2758         Along with the demise of the last demo directory, so all the
2759         cruft for re-autotooling and distributing the additional
2760         directories is no longer necessary.
2761         * tests/fcdemo.at: New autotest groups, based on...
2762         * tests/fcdemo-conf.test, tests/fcdemo-exec.test,
2763         tests/fcdemo-make.test, tests/fcdemo-shared-exec.test,
2764         tests/fcdemo-shared-make.test, tests/fcdemo-shared.test,
2765         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
2766         tests/fcdemo-static.test: ...these legacy tests, now removed.
2767         * tests/fcdemo/Makefile.am, tests/fcdemo/README,
2768         tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
2769         tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/fcdemo/foof.f90,
2770         tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
2771         tests/fcdemo/fprogram.f90: Remove.
2772         * configure.ac (CONF_SUBDIRS, DIST_MAKEFILE_LIST): Remove.
2773         * Makefile.am (DIST_SUBDIRS, FC_TESTS, clean-local-legacy)
2774         (configure-subdirs, distclean-recursive, distdir)
2775         (fake-distclean-legacy, $(DIST_MAKEFILE_LIST)): Remove.
2776         (COMMON_TESTS): Rename from this...
2777         (TESTS): ...to this.
2778
2779         tests: migrate legacy tests/f77demo tests to Autotest.
2780         * tests/f77demo.at: New autotest groups, based on...
2781         * tests/f77demo-conf.test, tests/f77demo-exec.test,
2782         tests/f77demo-make.test, tests/f77demo-shared-exec.test,
2783         tests/f77demo-shared-make.test, tests/f77demo-shared.test,
2784         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
2785         tests/f77demo-static.test: ...these legacy tests, now removed.
2786         * tests/f77demo/Makefile.am, tests/f77demo/README,
2787         tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
2788         tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/f77demo/foof.f,
2789         tests/f77demo/foof2.f, tests/f77demo/foof3.f,
2790         tests/f77demo/fprogram.f: Remove.
2791         * configure.ac (CONF_SUBDIRS): Remove tests/f77demo.
2792
2793         tests: migrate legacy tests/mdemo2 tests to Autotest.
2794         This test was just a small non-ltdl aware library to load a
2795         library from the legacy mdemo test, which in turn used ltdl to
2796         call functions from modules. No need to create a whole other
2797         test group with copies of everything from mdemo setup - just
2798         tack the additional test on the end of the mdemo group.
2799         * tests/mdemo.at (link with library that loads ltdl modules):
2800         New test, based on...
2801         * tests/mdemo2-conf.test, tests/mdemo-exec.test,
2802         tests/mdemo-make.test: ...these legacy tests, now removed.
2803         * tests/mdemo2/Makefile.am, tests/mdemo2/README,
2804         tests/mdemo2/configure.ac, tests/mdemo2/main.c: Remove.
2805         * configure.ac (CONF_SUBDIRS): Remove tests/mdemo2.
2806         * Makefile.am: Adjust.
2807
2808         tests: migrate legacy tests/mdemo tests to Autotest.
2809         * tests/mdemo.at: New autotest groups, based on...
2810         * tests/mdemo-conf.test, tests/mdemo-dryrun.test,
2811         tests/mdemo-exec.test, tests/mdemo-inst.test,
2812         tests/mdemo-make.test, tests/mdemo-shared-exec.test,
2813         tests/mdemo-shared-inst.test, tests/mdemo-shared-make.test,
2814         tests/mdemo-shared-unst.test, tests/mdemo-shared.test,
2815         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
2816         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
2817         tests/mdemo-static.test, tests/mdemo-unst.test: ...these legacy
2818         tests, now removed.
2819         * tests/mdemo/Makefile.am, tests/mdemo/README,
2820         tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
2821         tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
2822         tests/mdemo/sub.c: Remove.
2823         * configure.ac (CONF_SUBDIRS): Remove tests/mdemo.
2824         * Makefile.am: Adjust.
2825
2826         tests: migrate legacy tests/pdemo tests to Autotest.
2827         This test was a thinly veiled copy of the basic legacy
2828         demo-conf.test series, with the addition of long file names that
2829         are not unique in the first 17 characters of their name, mashed
2830         up with the cmdline_wrap.at max_cmd_len limits.  Migrating to
2831         Autotest means that this test will be automatically rerun with
2832         max_cmd_len=24 as cmdline_wrap.at recurses through the whole
2833         testsuite, so the migrated pdemo test is now simply another test
2834         case in demo.at with longer file names.
2835         * test/demo.at (linking with long file names): New test, based
2836         on...
2837         * tests/pdemo-conf.test, tests/pdemo-exec.test,
2838         tests/pdemo-inst.test, tests/pdemo-make.test: ...these legacy
2839         tests, now removed.
2840         * tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
2841         tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
2842         tests/pdemo/longer_file_name_foo.c,
2843         tests/pdemo/longer_file_name_foo2.c,
2844         tests/pdemo/longer_file_name_hell1.c,
2845         tests/pdemo/longer_file_name_hell2.c,
2846         tests/pdemo/longer_file_name_hello.c,
2847         tests/pdemo/longer_file_name_main.c: Remove.
2848         * configure.ac (CONF_SUBDIRS): Remove tests/pdemo.
2849         * Makefile.am: Adjust.
2850
2851         tests: migrate legacy tests/tagdemo tests to Autotest.
2852         * tests/tagdemo.at: New autotest groups, based on...
2853         tests/tagdemo-conf.test, tests/tagdemo-exec.test,
2854         tests/tagdemo-make.test, tests/tagdemo-shared-exec.test,
2855         tests/tagdemo-shared-make.test, tests/tagdemo-shared.test,
2856         tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
2857         tests/tagdemo-static.test, tests/tagdemo-undef-exec.test,
2858         tests/tagdemo-undef-make.test, tests/tagdemo-undef.test:
2859         ...these legacy tests, now removed.
2860         * tests/tagdemo/.gitignore, tests/tagdemo/Makefile.am,
2861         tests/tagdemo/README, tests/tagdemo/baz.cpp,
2862         tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
2863         tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
2864         tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
2865         tests/tagdemo/main.cpp: Remove.
2866         * configure.ac (CONF_SUBDIRS): Remove tests/tagdemo.
2867         * Makefile.am: Adjust.
2868
2869         tests: migrate legacy tests/depdemo tests to Autotest.
2870         * tests/depdemo.at: New autotest groups, based on...
2871         * tests/depdemo-conf.test, tests/depdemo-exec.test,
2872         tests/depdemo-inst.test, tests/depdemo-make.test,
2873         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
2874         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
2875         tests/depdemo-nofast.test, tests/depdemo-relink.test,
2876         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
2877         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
2878         tests/depdemo-shared.test, tests/depdemo-static-exec.test,
2879         tests/depdemo-static-inst.test, tests/depdemo-static-make.test,
2880         tests/depdemo-static-unst.test, tests/depdemo-static.test,
2881         tests/depdemo-unst.test: ...these legacy test cases, now
2882         removed.
2883         * tests/depdemo/Makefile.am, tests/depdemo/README,
2884         tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
2885         tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
2886         tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
2887         tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
2888         tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
2889         tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
2890         tests/depdemo/l4/l4.h, tests/depdemo/main.c,
2891         tests/depdemo/sysdep.h: Remove.
2892         * configure.ac (CONF_SUBDIRS): Remove tests/depdemo.
2893         * Makefile.am: Adjust.
2894
2895         tests: migrate legacy tests/demo tests to Autotest.
2896         * tests/demo.at: New autotest groups, based on...
2897         * tests/demo-conf.test, tests/demo-deplibs.test,
2898         tests/demo-exec.test, tests/demo-hardcode.test,
2899         tests/demo-inst.test, tests/demo-make.test,
2900         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
2901         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
2902         tests/demo-nofast.test, tests/demo-noinst-link.test,
2903         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
2904         tests/demo-nopic.test, tests/demo-pic-exec.test,
2905         tests/demo-pic-make.test, tests/demo-pic.test,
2906         tests/demo-relink.test, tests/demo-shared-exec.test,
2907         tests/demo-shared-inst.test, tests/demo-shared-make.test,
2908         tests/demo-shared-unst.test, tests/demo-shared.test,
2909         tests/demo-static-exec.test, tests/demo-static-inst.test,
2910         tests/demo-static-make.test, tests/demo-static-unst.test,
2911         tests/demo-static.test, tests/demo-unst.test: ...these legacy
2912         test cases, now removed.
2913         * tests/demo/Makefile.am, tests/demo/README,
2914         tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c,
2915         tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
2916         tests/demo/hello.c, tests/demo/main.c: Remove.
2917         * configure.ac (CONF_SUBDIRS): Remove tests/demo.
2918         * Makefile.am: Adjust.
2919
2920         tests: migrate legacy tests/cdemo tests to Autotest.
2921         * tests/cdemo.at: New Autotest groups, based on...
2922         * tests/cdemo-conf.test, tests/cdemo-exec.test,
2923         tests/cdemo-make.test, tests/cdemo-shared-exec.test,
2924         tests/cdemo-shared-make.test, tests/cdemo-shared.test,
2925         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
2926         tests/cdemo-static.test, tests/cdemo-undef-exec.test,
2927         tests/cdemo-undef-make.test, tests/cdemo-undef.test: ...these
2928         legacy test cases, now removed.
2929         tests/cdemo/Makefile.am, tests/cdemo/README,
2930         tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h,
2931         tests/cdemo/main.c: Remove.
2932         * configure.ac (CONF_SUBDIRS): Remove tests/cdemo.
2933         * Makefile.am: Adjust.
2934
2935         maint: distribute a single ChangeLog file.
2936         * ChangeLog.1996, ChangeLog.1997, ChangeLog.1998, ChangeLog.1999,
2937         ChangeLog.2000, ChangeLog.2001, ChangeLog.2002, ChangeLog.2003,
2938         ChangeLog.2004, ChangeLog.2005, ChangeLog.2006, ChangeLog.2007,
2939         ChangeLog.2008, ChangeLog.2009, ChangeLog.2010: Remove.  Content
2940         moved from here...
2941         * ChangeLog.old: ...to here.
2942         * Makefile.am (EXTRA_DIST): Update list of ChangeLog files.
2943         (changelog_old): New variable to hold path to ChangeLog.old file.
2944         ($(changelog)): Update to concatenate non-distributed
2945         ChangeLog.old file to distributed ChangeLog after git log entries.
2946
2947         syntax-check: fix violations and implement sc_prohibit_space_semicolon.
2948         No need for a spurious space before a command ending semi-colon.
2949         * cfg.mk (sc_prohibit_space_semicolon): New test to catch
2950         accidental reintroduction of spurious spaces removed by this
2951         changeset.
2952         * bootstrap, build-aux/general.m4sh, build-aux/ltmain.m4sh,
2953         libltdl/lt__strl.c, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at:
2954         Remove spurious spaces.
2955
2956 2012-10-03  Gary V. Vaughan  <gary@gnu.org>
2957
2958         Merge branch 'gary/reredo-test-operand-order'
2959         The original manually applied changeset 962aa91 contained several
2960         errors (some corrected by subsequent patches on master, others not)
2961         and many unrelated (although in this case, correct) changes were also
2962         committed in the same changeset.
2963         The merged branch gary/reredo-test-operand-order factors the
2964         unrelated changes out into separate commits, and performs the work
2965         that should have been in 962aa91 with a script, the results of which
2966         were then painstakingly inspected for errors.
2967         This merge moves the corrections for errors made in the original
2968         manual patch from the branch onto master.  Please inspect the many
2969         separate changesets on the branch rather than the original patch
2970         when you bisect or otherwise find your way to an error caused by
2971         962aa91.
2972
2973 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
2974
2975         tests: simplify some shell code.
2976         * tests/fail.at: Simplify.
2977         * tests/static.at: Likewise.
2978
2979         libtool: unroll complex nested compound statements
2980         * build-aux/ltmain.m4sh: Use an if statement instead of ugified
2981         compound statements.
2982
2983         libtool: unroll nested if into a single case statement.
2984         * build-aux/ltmain.m4sh (func_mode_link): Unroll a hard to
2985         understad nested if statement into a more readable single case
2986         statement.
2987
2988         libtool: simplify $skipped_export blocks
2989         * build-aux/ltmain.m4sh (func_mode_link): Save an if statement
2990         with '$skipped_export && { block; }' instead of 'if $skipped_export;
2991         then block; fi'.
2992
2993         libtool: simplify an if statement
2994         * build-aux/ltmain.m4sh (func_mode_link): Reverse the branch
2995         order for an if statement for readability.
2996         * m4/libtool.m4: Likewise.
2997
2998         libtool: save an if statement, with a compound statement.
2999         * build-aux/ltmain.m4sh (func_mode_link): Simplify.
3000
3001         libtool: simplify multiple string tests
3002         * build-aux/ltmain.m4sh (func_mode_link): Save test invocations
3003         by using 'test x,y = "$a,$b"' instead of 'test x = "$a" && test y
3004         = "$b"'.
3005         * m4/libtool.m4: Likewise.
3006
3007         libtool: fold if into a compound OR statement when more readable
3008         * build-aux/ltmain.m4sh (func_mode_link): For readability, use
3009         'test string = "$var" || { stuff; }' in preference to
3010         'if test string != "$var"; then stuff; fi'.
3011
3012         libtool: use false or : for $rmforce, and simplify
3013         * build-aux/ltmain.m4sh (func_mode_uninstall): Save a string
3014         comparison by setting $rmforce to false or : and using it
3015         directly as the first argument to if.
3016
3017         libtool: use false or : for $wrappers_required, and simplify
3018         * build-aux/ltmain.m4sh (func_mode_link): Save a string
3019         comparison by setting $wrappers_required to false or : and using
3020         it directly with a ored block rather than an if statement.
3021
3022         libtool: use false or : for $linkalldeplibs, and simplify
3023         * build-aux/ltmain.m4sh (func_mode_link): Save a string
3024         comparison by setting $linkalldeplibs to false or : and using it
3025         directly as the first argument to if.
3026
3027         libtool: use false or : for $valid_a_lib, and simplify
3028         * build-aux/ltmain.m4sh (func_mode_link): Save a string
3029         comparison by setting $valid_a_lib to false or : and using it
3030         directly as the first argument to if.
3031
3032         libtool: use false or : for $found, and simplify
3033         * build-aux/ltmain.m4sh (func_mode_link): Save a string
3034         comparison by setting $found to false or : and using it directly
3035         as the first argument to if.
3036
3037         libtool: use false or : for $alldeplibs, and simplify
3038         * build-aux/ltmain.m4sh (func_mode_link): Save a string
3039         comparison by setting $alldeplibs to false or : and using it
3040         directly as the first argument to if.
3041
3042         libtool: use false or : for $preload, and simplify
3043         * build-aux/ltmain.m4sh (func_mode_link): Save a string
3044         comparison by setting $preload to false or : and using it directly
3045         instead of if statements.
3046
3047         libtool: use false or : for $my_pic_p, and simplify
3048         * build-aux/ltmain.m4sh (func_generate_dlsyms): Save a string
3049         comparison by setting $my_pic_p to false or : and using it directly
3050         instead of calling if.
3051         Adjust all callers.
3052
3053         libtool: use false or : for $finalize, and simplify
3054         * build-aux/ltmain.m4sh (func_mode_install): Save a string
3055         comparison by setting $finalize to false or : and using it
3056         directly as the first argument to if.
3057
3058         libtool: use false or : for $isdir, and simplify
3059         * build-aux/ltmain.m4sh (func_mode_install): Save a string
3060         comparison by setting $isdir to false or : and using it directly
3061         as the first argument to if.
3062
3063         syntax-check: [REDO] fix violations and implement
3064          sc_prohibit_test_const_follows_var.
3065         To safely use a non-literal fist argument to 'test', you must
3066         always prepend a literal non-'-' character, but often the second
3067         operand is a constant that doesn't begin with a '-' already, so
3068         always use 'test a = "$b"' instead of the noisy 'test "X$b" = Xa'.
3069         * cf.mk (sc_prohibit_test_const_follws_var): New syntax-check
3070         rule to ensure we don't reintroduce noisy test operands.
3071         bootstrap, build-aux/extract-trace, build-aux/general.m4sh,
3072         build-aux/ltmain.m4sh, configure.ac, doc/libtool.texi, libtoolize.m4sh,
3073         m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at, tests/defs.m4sh,
3074         tests/demo-relink.test, tests/demo/configure.ac,
3075         tests/depdemo-relink.test, tests/destdir.at, tests/duplicate_conv.at,
3076         tests/fail.at, tests/getopt-m4sh.at, tests/help.at, tests/libtoolize.at,
3077         tests/link-2.test, tests/link-order2.at, tests/lt_dlopenext.at,
3078         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
3079         tests/need_lib_prefix.at, tests/nocase.at, tests/pdemo/configure.ac,
3080         tests/pic_flag.at, tests/search-path.at, tests/shlibpath.at,
3081         tests/static.at, tests/sysroot.at, tests/tagtrace.test,
3082         tests/testsuite.at, tests/with-pic.at: Swap operands to avoid useless
3083         noise.
3084
3085 2012-09-19  Peter Rosin  <peda@lysator.liu.se>
3086
3087         tests: skip with-pic test when no "real" pic flag is used.
3088         * tests/with-pic.at: Windows uses "-DDLL_EXPORT -DPIC" as the pic
3089         "flag", but never applies it to static libraries. Cater for this
3090         and skip if no "real" pic flag is in use.
3091
3092 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
3093
3094         syntax-check: fix texinfo formatting flagged by
3095          prohibit_undesirable_word_seq.
3096         * doc/libtool.text: Fix several misuses of @xref and @pxref so that
3097         the prohibit_undesirable_word_seq syntax check passes again.
3098
3099         syntax-check: remove useless_braces_in_variable_derefs.
3100         * build-aux/general.m4sh: Remove spurious braces around
3101         ${ZSH_VERSION} dereference.
3102         * build-aux/ltmain.m4sh (func_mode_link): Likewise for ${wl}.
3103
3104         syntax-check: skip prohibit_strncpy.
3105         * cfg.mk (local-checks-to-skip): sc_prohibit_strncpy.
3106
3107         syntax-check: skip prohibit_always_true_header_tests rule.
3108         * cfg.mk (local-checks-to-skip): Add
3109         sc_prohibit_always_true_header_tests.
3110
3111         maint: Revert "bootstrap: delete unneeded README-release patch"
3112         This reverts commit 11cd425e7d47111956381dba28f8c1b34e14653f.
3113         These instructions are hard to find for new maintainers, so it's
3114         good to keep them to hand with the release notes.
3115         And the additional distchecks are important prior to a release.
3116
3117         maint: remove unused cvsu script.
3118         * build-aux/cvsu: Remove. This script is not useful now that
3119         Libtool's repository is hosted in git.
3120         * Makefile.am (build_scripts): Remove cvsu reference.
3121
3122         maint: run update-copyright for missing 2011 and 2012 years.
3123         See maintain.texi (Copyright Notices) for rules for maintaining
3124         the years in copyright notices.
3125         * All Files (Copyright): Updated with missing 2011 and 2012.
3126
3127         bootstrap: use gnulib update-copyright script.
3128         See maintain.texi (Copyright Notices) for rules for maintaining
3129         the years in copyright notices.
3130         * bootstrap.conf (gnulib_modules): Add update-copyright.
3131         * cfg.mk (update-copyright-env): Set environment variables for
3132         update-copyright script.
3133
3134         bootstrap: update bootstrap script to latest upstream.
3135         * bootstrap, build-aux/options-parser: apply upstream fixes and
3136         enhancements.
3137
3138         git: don't complain about new parallel tests driver and file droppings.
3139         * build-aux/.gitignore: Ignore parallel `test-driver' script.
3140         * tests/.gitignore: Ignore `test-driver' .trs file droppings.
3141
3142         gnulib: update local gnulib patches.
3143         * gl/build-aux/announce-gen.diff: Remove hunks adopted upstream.
3144         * gl/build-aux/do-release-commit-and-tag.diff: Refresh this patch
3145         to match current gnulib.
3146
3147         gnulib: update gnulib submodule.
3148
3149         bootstrap: ensure there is a ChangeLog before running automake.
3150         Automake refuses to run in GNU-mode unless there is a ChangeLog file
3151         in the top-level directory.
3152         * bootstrap.conf (libtool_force_changelog): Create a dummy ChangeLog.
3153
3154         libtoolize: improve verbose mode output.
3155         * libtoolize (func_require_seen_ltdl)
3156         (func_require_seen_libtool): Output success message in verbose
3157         mode.
3158
3159 2012-08-22  Peter O'Gorman  <peter@pogma.com>
3160
3161         libtool: Add the 'n' to then.
3162         * m4/libtool.m4: fix typo.
3163         Reported by Brad Smith.
3164
3165 2012-08-22  Andreas Schwab  <schwab@linux-m68k.org>
3166
3167         libtool: Pass through -g* so that debugging information is not dropped
3168         * ltmain.m4sh (func_mode_link): Pass through -g*.
3169
3170 2012-08-22  David Edelsohn  <dje.gcc@gmail.com>
3171
3172         libtool: AIX PIC shared library support
3173         * m4/libtool.m4 (_LT_COMPILER_PIC): Add -fPIC to GCC and GXX for AIX.
3174
3175 2012-08-22  Brad Smith  <brad@comstyle.com>
3176
3177         libtool: Update/simplify OpenBSD support
3178         * m4/libtool.m4: Forget about 11 year old releases.
3179
3180 2012-08-19  Peter Rosin  <peda@lysator.liu.se>
3181
3182         libtool: quote progpath properly
3183         Attempt to handle spaces in paths better.
3184         * build-aux/ltmain.m4sh (func_mode_install, func_mode_link): Quote
3185         $progpath.
3186         * THANKS: Update.
3187
3188 2012-04-19  Mike Frysinger  <vapier@gentoo.org>
3189
3190         libtool: Handle getconf returning "undefined".
3191         * m4/libtool.m4: Check for "undefined" from `getconf`.
3192
3193 2012-03-17  Peter Rosin  <peda@lysator.liu.se>
3194
3195         bootstrap: delete unneeded README-release patch
3196         * gl/top/README-release.diff: Delete.
3197
3198 2012-03-16  Peter O'Gorman  <peter@pogma.com>
3199
3200         libtool: Fix typo that caused sys_lib_search_path_spec to be wrong.
3201         * m4/libtool.m4: s/lt_fooi/lt_foo/.
3202         Reported by Paul Seidler.
3203
3204 2012-02-21  Samuel Thibault  <samuel.thibault@gnu.org>
3205
3206         libtool: Improve GNU/Hurd support.
3207         * m4/libtool.m4: Add gnu* match where it was missing.
3208
3209 2012-02-19  Titus von Boxberg  <titus@v9g.de>
3210
3211         libtool: Accept clang's -stdlib linker flag.
3212         build-aux/ltmain.m4sh: Don't drop the -stdlib= flag.
3213
3214 2012-02-19  Juergen Reuter  <reuter@t00pcx17094.desy.de>
3215
3216         libtool: Enable nagfor fortran compiler support
3217         * build-aux/ltmain.m4sh: nagfor compatible version string.
3218         * m4/libtool.m4: nagfor support.
3219
3220 2012-02-19  Juergen Reuter  <reuter@theoc01.desy.de>
3221
3222         libtool: Fixing -shared error message for nagfor compiler.
3223         * m4/libtool.m4: Fix -shared.
3224
3225 2012-02-19  Pavel (Pasha) Shamis  <shamisp@ornl.gov>
3226
3227         ltdl: Improve debug error reporting in ltdl.
3228         * libltdl/ltdl.c: Print the error message if loading fails.
3229
3230 2012-02-19  Peter O'Gorman  <peter@pogma.com>
3231
3232         maint: Deleted unneeded gitlog-to-changelog patch
3233         * gl/build-aux/gitlog-to-changelog.diff: Delete.
3234
3235 2012-02-02  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
3236
3237         fixup: restore EXPORTS test
3238         Commit v2.4.2-120-g962aa91
3239         syntax-check: fix violations and implement sc_prohibit_test_const_follows_var
3240         inadvertedly reversed the meaning of the comparison.
3241
3242         * build-aux/ltmain.m4sh (func_mode_link) [cygwin|mingw|cegcc]: Restore
3243         the EXPORTS test.  We need to look at the symbols when it's _not_
3244         already a .def file (in which case we trust the user input blindly).
3245
3246 2012-01-30  Peter Rosin  <peda@lysator.liu.se>
3247
3248         cwrapper: avoid surplus strlen calculations.
3249         * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src:lt_update_exe_path):
3250         Avoid surplus strlen calculations.
3251
3252 2011-12-24  Gary V. Vaughan  <gary@gnu.org>
3253
3254         bootstrap: fix Autoconf version typo.
3255         * build-aux/options-parser: s/2\.62/2.68/
3256
3257         gnulib: update gnulib submodule.
3258         Among others, this fixes the reference to a local commit.
3259         * gnulib: Updated to todays master HEAD revision.
3260         * gl/top/README-release.diff: Update to account for changes to
3261         gnulib/top/README-release since the last gnulib update.
3262
3263 2011-12-18  Gary V. Vaughan  <gary@gnu.org>
3264
3265         libtool: make fork minimisation compatible with dash and zsh.
3266         * build-aub/general.m4sh (lt_HAVE_PLUSEQ_OP): Instead of using
3267         $((..)) arithmetic, which causes an error on dash, use a case
3268         based bash version check.
3269         (lt_HAVE_ARITH_OP, lt_HAVE_XSI_OPS): Also short circuit the
3270         feature probing forks and set these automatically when zsh is
3271         detected.
3272         Reported by Stefano Lattarini.
3273
3274         bootstrap: adopt autoconf echo normalization code.
3275         Dash shipped with Ubutu-11.10 as /bin/sh, among others, still
3276         has a crippled echo builtin that mis-handles backslashes.
3277         * build-aux/options-parser (bs_echo): Adopt the autoconf echo
3278         normalization code to find a suitable replacement for buggy echo
3279         commands.
3280         Adjust all uses of echo to $bs_echo.
3281         * build-aux/extract-trace (func_extract_trace, func_main):
3282         Likewise.
3283         * bootstrap: To retain some execution speed on platforms with
3284         buggy builtin echo, replace most occurrences of `echo' with
3285         `$bs_echo' - except where its arguments will obviously never
3286         contain backslashes or be overly long.
3287         Reported by Reuben Thomas.
3288
3289         libtool: minimise forks per invocation under bash.
3290         * build-aux/general.m4sh (lt_HAVE_PLUSEQ_OP, lt_HAVE_ARITH_OP)
3291         (lt_HAVE_XSI_OPS): Set these without forking a test script when
3292         running under bash, to avoid a few unnecessary forks.
3293
3294 2011-12-13  H.J. Lu  <hongjiu.lu@intel.com>
3295
3296         libtool: Support x32.
3297         * m4/libtool.m4 (_LT_ENABLE_LOCK): Support x32.
3298
3299 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
3300
3301         maint: disable prohibit_always-defined_macros syntax check.
3302         Aside from Apple grep silently failing to run this test and
3303         report violations, libtool still uses non-gnulib versions of
3304         dirent.h and argz.h which use the same macros, but are not
3305         always-defined.
3306         * cfg.mk (local-checks-to-fix): Move
3307         sc_prohibit_always-defined_macros from here...
3308         (local-checks-to-skip): ...to here.
3309         Reported by Peter O'Gorman.
3310
3311         tests: s/snippit/snippet/.
3312         * tests/demo/foo.h, tests/pdemo/foo.h: Spell `snippet' correctly.
3313         Reported by Stefano Lattarini.
3314
3315         tests: make sure file restore traps are called correctly on AIX.
3316         * tests/demo-noinst-link.test (func_save_files): set the restore
3317         trap outside a function, otherwise AIX 5.3 /bin/sh will run the
3318         trap at the end of the function, instead of when the script
3319         exits.
3320         * tests/demo-relink.test (func_save_files): Ditto.
3321         * tests/depdemo-relink.test (func_save_files): Ditto.
3322         Reported by Stefano Lattarini.
3323
3324         maint: eliminate some more spurious leading Xs.
3325         * m4/libtool.m4: Reverse argument order to eliminate spurious
3326         leading X's.
3327
3328         bootstrap: put back missing spaces before parens.
3329         * bootstrap (func_require_buildreq_autobuild)
3330         (func_require_buildreq_automake): Vi's delete word command is
3331         too greedy and also eats trailing whitespace before following
3332         non-word-chars. Put back the spaces it ate so that
3333         syntax-checks pass once again.
3334
3335         libtoolize: refactor copying filter creation.
3336         Prevent the various require_filter functions from becoming too
3337         long by factoring common code into new functions.
3338         * libtoolize (func_make_relative_dir_filter)
3339         (func_make_relative_ltdl_filter): New functions. Generalize and
3340         consolidate the various similar snippets for concatenating
3341         together the sed scripts for func_copy filtering.
3342         (require_filter_Makefile_am, require_filter_aclocal_m4)
3343         (require_filter_configure_ac): Simplify.
3344         (require_ltdl_relative_aux_dir): Remove.
3345         (require_ltdl_relative_macro_dir): Ditto.
3346
3347         maint: pick XSI funcs at runtime, not configure time.
3348         Determine, on a function by function basis, what XSI features
3349         are available in the shell that is actually running the script,
3350         rather than the one that was picked at configure time by the
3351         re-execution engine.
3352         * m4/libtool.m4 (_LT_PROG_FUNCTION_REPLACE)
3353         (_LT_PROG_REPLACE_SHELLFNS): Remove.
3354         (_LT_CHECK_SHELL_FEATURES): Remove tests for XSI and += support.
3355         * build-aux/general.m4sh (func_append, func_append_quoted)
3356         (func_arith, func_len, func_basename, func_dirname)
3357         (func_dirname_and_basename, func_stripname): List both enhanced
3358         and fallback implementations, and choose one based on whether
3359         the enhanced features required by the fastest version are
3360         available.
3361         * build-aux/getopt.m4sh (func_split_short_opt)
3362         (func_split_long_opt): Ditto.
3363         * build-aux/ltmain.m4sh (func_lo2o, func_xform): Ditto.
3364         * tests/getopt-m4sh.at: Add tests for enhanced and fallback
3365         implementations of func_arith, func_len, func_stripname and
3366         func_dirname_and_basename.
3367         * NEWS: Updated.
3368
3369         maint: share useful functions from general.m4sh.
3370         * build-aux/ltmain.m4sh (func_append, func_append_quoted)
3371         (func_arith, func_len): Removed from here...
3372         * build-aux/general.m4sh (func_append, func_append_quoted)
3373         (func_arith, func_len): ...and added to here.
3374         (func_dirname, func_dirname_and_basename, func_normal_abspath)
3375         (func_relative_path): Use func_append.
3376         * tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): Removed.
3377         Fallback functions are now in any m4sh generated file
3378         automatically.
3379
3380         libtoolize: reorder function definitions to keep func_filter_* together.
3381         * libtoolize: Restore asciibetical order, so that all the
3382         filter function definitions are together.
3383
3384         libtoolize: use _filter as a prefix for better ordering.
3385         * libtoolize.m4sh (require_Makefile_am_filter)
3386         (require_ltdl_mk_filter, require_aclocal_m4_filter)
3387         (require_configure_ac_filter): Rename these functions from this...
3388         (require_filter_Makefile_am, require_filter_ltdl_mk)
3389         (require_filter_aclocal_m4, require_filter_configure_ac): ...to
3390         this, respectively.  Adjust all callers.
3391         (Makefile_am_filter, ltdl_mk_filter, aclocal_m4_filter)
3392         (configure_ac_filter): Rename these global variables from this...
3393         (filter_Makefile_am, filter_ltdl_mk, filter_aclocal_m4)
3394         (filter_configure_ac): ...to this, respectively.
3395
3396         libtoolize: rename ltdl.mk filter function.
3397         * libtoolize.m4sh (require_Makefile_inc_filter): Rename from
3398         this...
3399         (require_ltdl_mk_filter): ...to this. Adjust all callers.
3400
3401         bootstrap: escape quotes properly in generated functions.
3402         * bootstrap: Although not a real bug, for consistency, be sure
3403         to correctly escape single quotes inside a single quoted
3404         function generator.
3405
3406         bootstrap: reorder function definitions to keep func_buildreq_* together.
3407         * bootstrap: Restore asciibetical order, so that all the
3408         buildreq function definitions are together.
3409
3410         bootstrap: use _buildreq as a prefix for better ordering.
3411         * bootstrap (require_autobuild_buildreq)
3412         (require_autoconf_buildreq, require_automake_buildreq)
3413         (require_autopoint_buildreq, require_libtoolize_buildreq)
3414         (require_patch_buildreq): Rename from these...
3415         (require_buildreq_autobuild, require_buildreq_autoconf)
3416         (require_buildreq_automake, require_buildreq_autopoint)
3417         (require_buildreq_libtoolize, require_buildreq_patch): ...to
3418         these, respectively.  Adjust all callers.
3419
3420         bootstrap: ensure consistent function header comments.
3421         * bootstrap (require_bootstrap_uptodate)
3422         (require_buildtools_uptodate): Use `require_...' in header
3423         comment for these functions to be consistent with the rest,
3424         rather than `func_require_...'.
3425
3426         bootstrap: make sure patch is available to bootstrap if necessary.
3427         Make sure we're not lacking any functionality provided by the
3428         incumbent gnulib bootstrap script, and where it's easy to do so
3429         (like it is here), provide better functionality!
3430         * bootstrap (require_patch): Make sure that PATCH expands to the
3431         best `patch' command available on the system, honouring
3432         overrides in the users environment.
3433         (require_patch_buildreq): Automatically add a requirement for a
3434         patch command to buildreq when there are diff files in
3435         $local_gl_dir.
3436         (func_require_buildtools_uptodate): Call require_patch_buildreq
3437         before testing build tool versions.
3438         (func_gnulib_tool_copy_file): Make sure PATCH is set before using
3439         gnulib-tool to copy files.
3440
3441 2011-11-26  Gary V. Vaughan  <gary@gnu.org>
3442
3443         m4: fix logic error leading to -fno-rtti being added wrongly.
3444         * m4/libtool.m4 (_LT_COMPILER_OPTION): Negate comparison so that
3445         compiler flags are added correctly.
3446
3447         maint: Fix generated ChangeLog typos.
3448         * build-aux/git-log-fix: Spell Stefano Lattarini's name
3449         correctly.
3450         Don't use my home email address for GNU commits.
3451
3452 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
3453
3454         syntax-check: fix violations and implement sc_useless_braces_in_variable_derefs.
3455         Until now, libtool sources have used braced variable names
3456         seemingly at random! Almost always the braces are just noise, so
3457         remove all the unnecessary ones.
3458         * cfg.mk (sc_useless_braces_in_variable_derefs): New syntax
3459         check rule to ensure we only reintroduce braced variable
3460         dereferences if they are followed by a valid variable name
3461         character.
3462         build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
3463         build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
3464         libltdl/configure.ac, m4/libtool.m4, m4/ltdl.m4,
3465         m4/ltoptions.m4, tests/defs.m4sh, tests/demo-nopic.test,
3466         tests/depdemo/configure.ac, tests/flags.at, tests/link.test,
3467         tests/objectlist.test, tests/quote.test, tests/static.at: Remove
3468         spurious braces.
3469
3470         syntax-check: fix violations and implement sc_prohibit_sed_s_comma.
3471         I like to name temporary directories that I will remove shortly
3472         with two leading commas so that they sort lexicographically at
3473         the top of `ls' output.  Now, `./configure
3474         --prefix=`pwd`/,,inst' works again, for the first time in
3475         several years.
3476         * cfg.mk (sc_prohibit_sed_s_comma): Comma is too common a
3477         character to use routinely as the separator for sed
3478         substitutions on file paths and other variables determined by
3479         the user, causing bugs like the one I describe above.  Make sure
3480         we don't accidentally reintroduce any comma separators in
3481         future.
3482         * Makefile.am, bootstrap, bootstrap.conf, build-aux/extract-trace,
3483         build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
3484         build-aux/git-log-fix, build-aux/ltmain.m4sh, libtoolize.m4sh,
3485         m4/libtool.m4, m4/ltdl.m4, tests/cdemo-undef.test,
3486         tests/cmdline_wrap.at, tests/darwin.at, tests/defs.m4sh,
3487         tests/getopt-m4sh.at, tests/install.at, tests/libtoolize.at,
3488         tests/mdemo/Makefile.am, tests/need_lib_prefix.at,
3489         tests/sysroot.at, tests/tagdemo-undef.test, tests/testsuite.at:
3490         Try to use `|' as the default separator wherever possible,
3491         otherwise something else that doesn't occur in the substitution
3492         expression.
3493         * NEWS: Updated.
3494
3495         syntax-check: fix violations and implement sc_prohibit_bare_basename.
3496         * cfg.mk (sc_prohibit_bare_basename, sc_prohibit_basename_with_sed):
3497         Make sure not to go back to using occasional `|$basename' or
3498         `|$dirname' syntax.
3499         * build-aux/git-hooks/commit-msg, build-aux/ltmain.m4sh,
3500         * build-aux/options-parser, tests/fcdemo-conf.test,
3501         * tests/fcdemo-shared.test, tests/fcdemo-static.test,
3502         * tests/libtoolize.at: Fix violations.
3503
3504         tests: migrate tests/sh.test checks to syntax-checks.
3505         Some modernization of the legacy testsuite.
3506         * tests/sh.test: Remove.
3507         * Makefile.am (COMMON_TESTS): Adjust.
3508         * cfg.mk (sc_libtool_m4_cc_basename, sc_prohibit_bracket_as_test)
3509         (sc_prohibit_nested_quotes, sc_prohibit_set_dummy_without_shift)
3510         (sc_prohibit_set_minus_minus, sc_prohibit_test_binary_operators)
3511         (sc_prohibit_test_dollar, sc_prohibit_test_minus_e)
3512         (sc_prohibit_test_unary_operators, sc_prohibit_test_X)
3513         (sc_prohibit_Xsed_withou_X, sc_require_function_nl_brace):
3514         Functionally identical tests to what used to be performed by
3515         sh.test, only with coverage of all files.
3516         * bootstrap, build-aux/edit-readme-alpha,
3517         build-aux/extract-trace, build-aux/getopt.m4sh,
3518         build-aux/ltmain.m4sh, configure.ac, m4/libtool.m4, m4/ltdl.m4,
3519         tests/bindir.at, tests/configure-iface.at, tests/cwrapper.at,
3520         tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
3521         tests/dlloader-api.at, tests/exceptions.at,
3522         tests/getopt-m4sh.at, tests/lalib-syntax.at, tests/link-2.test,
3523         tests/link-order2.at, tests/loadlibrary.at,
3524         tests/lt_dladvise.at, tests/lt_dlexit.at, tests/lt_dlopen_a.at,
3525         tests/lt_dlopenext.at, tests/need_lib_prefix.at,
3526         tests/nonrecursive.at, tests/recursive.at, tests/resident.at,
3527         tests/standalone.at, tests/static.at, tests/stresstest.at,
3528         tests/subproject.at, tests/sysroot.at, tests/tagtrace.test,
3529         tests/testsuite.at: Fix violations of the new syntax checks.
3530
3531         syntax-check: fix violations and implement sc_useless_quotes_in_assignment.
3532         Contrary to popular belief, Bourne shell does not resplit RHS of
3533         assignments after expansion, so if there are no unquoted shell
3534         metacharacters or whitespace, the quotes are useless.
3535         * cfg.mk (_sc_search_regexp_or_exclude): A variation of gnulib's
3536         _sc_search_regexp that also allows individual exclusions at the
3537         site of what would otherwise match by adding a comment.
3538         (sc_useless_quotes_in_assignment): New syntax-check rule to
3539         ensure we don't reintroduce useless quoted assignments.
3540         * bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
3541         build-aux/general.m4sh, build-aux/getopt.m4sh,
3542         build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
3543         doc/libtool.texi, libtoolize.m4sh, m4/libtool.m4, m4/ltdl.m4,
3544         m4/ltoptions.m4, tests/cwrapper.at, tests/defs.m4sh,
3545         tests/lalib-syntax.at, tests/libtoolize.at,
3546         tests/lt_dlopenext.at, tests/mdemo/configure.ac,
3547         tests/mdemo2/configure.ac, tests/need_lib_prefix.at,
3548         tests/no-executables.at, tests/quote.test, tests/suffix.test:
3549         Remove spurious quotes.
3550
3551         syntax-check: fix violations and implement sc_useless_quotes_in_case.
3552         Contrary to popular belief, Bourne shell does not resplit case
3553         expressions after expansion, so if there are no unquoted shell
3554         metacharacters or whitespace, the quotes are useless.
3555         * cfg.mk (sc_useless_quotes_in_case): New syntax-check rule to
3556         ensure we don't reintroduce useless quoted case expressions.
3557         * build-aux/ltmain.m4sh, m4/libtool.m4, tests/bindir.at,
3558         tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
3559         tests/demo-nopic.test, tests/link-2.test, tests/quote.test,
3560         tests/sysroot.at: Remove spurious quotes.
3561
3562         maint: quote $file correctly in bootstrap.
3563         * bootstrap (func_insert_sorted_if_absent): Don't forget the
3564         double quotes, since we can't control the content of $file.
3565         Reported by Stefano Lattarini.
3566
3567         build: fix a quoting bug when regenerating with bootstrap_edit.
3568         * Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh): The
3569         bootstrap_edit make macro already contains double quotes, so
3570         when echoing it, don't surround it with more double quotes since
3571         it is not escaped.
3572
3573 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
3574
3575         dist: hook syntax-check into `make distcheck'.
3576         To make sure we don't accidentally release anything with
3577         failing syntax-checks, have `make distcheck' run the
3578         syntax-checks automatically.
3579         * Makefile.am (distcheck-hook): New rule depending on
3580         syntax-check.
3581
3582         syntax-check: enable sc_prohibit_always_true_header_tests.
3583         * cfg.mk (local-checks-to-fix): Remove
3584         sc_prohibit_always_true_header_tests from list of disabled
3585         checks, because it no longer flags any violations.
3586
3587         syntax-check: enable sc_program_name.
3588         * cfg.mk (local-checks-to-skip): Remove sc_program_name
3589         list of disabled checks.
3590         (exclude_file_name_regexp--sc_program_name): Don't check demo
3591         programs for use of set_program_name.
3592
3593         syntax-check: enable sc_bindtextdomain.
3594         * cfg.mk (local-checks-to-skip): Remove sc_bindtextdomain
3595         list of disabled checks.
3596         (exclude_file_name_regexp--sc_bindtextdomain): Don't check demo
3597         programs for use of bindtextdomain.
3598
3599         syntax-check: fix violations and implement sc_trailing_blank-non-rfc3676.
3600         * cfg.mk (local-checks-to-fix): Move sc_trailing_blank from
3601         here...
3602         (local-checks-to-skip): ...to here, because otherwise it flags
3603         valid RFC3676 signature blocks.
3604         (sc_trailing_blank-non-rfc3676): An improved sc_trailing_blank
3605         implementation that doesn't flag signature blocks as violations.
3606         * Makefile.am, bootstrap.conf, doc/PLATFORMS,
3607         libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4,
3608         libltdl/m4/lt~obsolete.m4, tests/archive-in-archive.at,
3609         tests/convenience.at, tests/darwin.at, tests/depdemo/l1/l1.c,
3610         tests/depdemo/l2/l2.c, tests/depdemo/l3/l3.c,
3611         tests/depdemo/l4/l4.c, tests/f77demo/README,
3612         tests/f77demo/cprogram.c, tests/f77demo/foof.f,
3613         tests/f77demo/foof2.f, tests/f77demo/foof3.f,
3614         tests/f77demo/fprogram.f, tests/fcdemo/README,
3615         tests/fcdemo/cprogram.c, tests/fcdemo/foof.f90,
3616         tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
3617         tests/fcdemo/fprogram.f90, tests/mdemo/README,
3618         tests/mdemo/main.c, tests/mdemo/mlib.c, tests/objectlist.test,
3619         tests/static.at, tests/template.at, tests/testsuite.at: Remove
3620         trailing blanks.
3621
3622         syntax-check: fix violations and re-enable sc_useless_cpp_parens.
3623         * cfg.mk (local-checks-to-fix): Remove sc_useless_cpp_parens
3624         from list of disabled checks.
3625         * doc/libtool.texi, libltdl/argz.c, libltdl/argz_.h,
3626         build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
3627         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
3628         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
3629         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
3630         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
3631         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
3632         libltdl/loaders/dyld.c, libltdl/loaders/loadlibrary.c,
3633         libltdl/loaders/shl_load.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
3634         libltdl/ltdl.c, libltdl/ltdl.h, libltdl/m4/libtool.m4, tests/demo/foo.h,
3635         tests/depdemo/sysdep.h, tests/exceptions.at, tests/export.at,
3636         tests/pdemo/foo.h, tests/stresstest.at: Remove useless parens in cpp
3637         `#if defined(foo)' statements.
3638
3639         syntax-check: fix violations and re-enable sc_space_tab.
3640         * cfg.mk (local-checks-to-fix): Remove sc_space_tab from list of
3641         disabled checks.
3642         (exclude_file_name_regexp--sc_space_tab): Don't flag space-tab
3643         sequences in diff files as an error.
3644         * Makefile.am, build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
3645         build-aux/ltmain.m4sh, libltdl/loaders/dyld.c,
3646         libltdl/loaders/shl_load.c, libltdl/ltdl.h, libltdl/ltdl.mk,
3647         libltdl/slist.c, libtoolize.m4sh, m4/ltoptions.m4, tests/demo/dlmain.c,
3648         tests/depdemo/main.c, tests/libtoolize.at, tests/lt_dladvise.at,
3649         tests/pdemo/longer_file_name_dlmain.c, tests/sh.test, tests/static.at,
3650         tests/stresstest.at, tests/template.at: Fix space-tab sequences by
3651         reversing them in regexps, and deleting leading spaces in indentation.
3652
3653         syntax-check: fix violations and re-enable sc_prohibit_undesirable_word_seq.
3654         * cfg.mk (local-checks-to-fix): Remove
3655         sc_prohibit_undesirable_word_seq from list of disabled checks.
3656         * doc/libtool.texi, build-aux/ltmain.m4sh,
3657         libltdl/m4/libtool.m4, libtoolize.m4sh: Replace all uses of "can
3658         not" with "cannot".
3659
3660         syntax-check: fix violations and re-enable sc_probibit_test_minus_ao.
3661         * cfg.mk (local-checks-to-fix): Remove
3662         sc_probhibit_test_minus_ao from list of disabled checks.
3663         (exclude_file_name_regexp--sc_prohibit_tests_minus_ao): The
3664         matches from this syntax-check in libtool.m4 are all bogus.
3665
3666         syntax-check: fix violations and re-enable sc_prohibit_strcmp.
3667         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_strcmp
3668         from list of disabled checks.
3669         (exclude_file_name_regexp--sc_prohibit_strcmp): Ignore
3670         violations in libtool.texi and any demo C files.
3671         * libltdl/libltdl/lt__private.h (strneq, streq): Renamed from
3672         this...
3673         (STRNEQ, STREQ): ..to this.  Adjust all callers.
3674         * tests/slist.at: Add STREQ definition. Change all !strcmp calls
3675         to STREQ.
3676         * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src): Add and use
3677         STREQ definition.
3678
3679         syntax-check: fix violations and re-enable sc_prohibit_stddef_without_use.
3680         * cfg.mk (local-checks-to-fix): Remove
3681         sc_prohibit_stddef_without_use from list of disabled checks.
3682         * libltdl/argz.c, libltdl/lt__dirent.c, libltdl/slist.c: Remove
3683         spurious stddef.h #include lines.
3684
3685         syntax-check: fix violations and re-enable sc_prohibit_magic_number_exit.
3686         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_magic_number_exit
3687         from list of disabled checks.
3688         * ltmain.c: Removed unused file.
3689
3690         syntax-check: fix violations and re-enable sc_prohibit_have_config_h.
3691         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_have_config_h
3692         from list of disabled checks.
3693         * tests/f77demo/foo.h, tests/fcdemo/foo.h: Remove spurious
3694         HAVE_CONFIG_H guards for #include <config.h>.
3695
3696         syntax-check: fix violations and re-enable sc_prohibit_empty_lines_at_EOF.
3697         * cfg.mk (local-checks-to-fix): Remove
3698         sc_prohibit_empty_lines_at_EOF from list of disabled checks.
3699         * THANKS, libltdl/argz.c, libltdl/config/getopt.m4sh,
3700         tests/f77demo/README, tests/f77demo/cprogram.c,
3701         tests/f77demo/fprogram.f, tests/fcdemo/README,
3702         tests/fcdemo/cprogram.c, tests/libtoolize.at,
3703         tests/mdemo/README, tests/mdemo2/README, tests/pdemo-inst.test:
3704         Remove spurious empty lines from the end of these files.
3705
3706         syntax-check: fix violations and re-enable sc_prohibit_doubled_word.
3707         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_doubled_word
3708         from list of disabled checks.
3709         * build-aux/general.m4sh (func_quote_for_eval): Remove one of a
3710          pair of "and"s in a comment.
3711         * tests/lt_dladvise.at (hint_global): Remove one of a pair of
3712         consecutive "to"s split across lines in a comment.
3713
3714         syntax-check: fix violations and re-enable sc_prohibit_cvs_keyword.
3715         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_cvs_keyword
3716         from list of disabled checks.
3717         * tests/tagdemo/README: Remove spurious CVS keyword.
3718
3719         syntax-check: fix violations and re-enable sc_makefile_at_at_check.
3720         At some point we were supporting some undetermined `broken
3721         make', as evidenced by having carried the following code since
3722         2003:
3723           ## use @LIBLTDL@ because some broken makes do not accept
3724           ## macros in targets, we can only do this because our LIBLTDL
3725           ## does not contain $(top_builddir).
3726           @LIBLTDL@: $(top_distdir)/libtool \
3727           ...
3728         However, we've also had *many* cases of macros in targets for
3729         just as long, so most likely we never fully supported makes
3730         allegedly broken in this way.  As of this release, we explicitly
3731         no longer support make implementations that do not accept macros
3732         in targets.
3733         * cfg.mk (local-checks-to-fix): Remove sc_makefile_at_at_check
3734         from list of disabled checks.
3735         * configure.ac (order-only prerequisites): Test with the
3736         order-only pipe symbol in a macro.
3737         * Makefile.am, tests/mdemo/Makefile.am: Convert all @FOO@ to
3738         $(FOO).
3739
3740         syntax-check: fix violations and re-enable sc_makefile_TAB_only_indentation.
3741         * cfg.mk (local-checks-to-fix): Remove
3742         sc_makefile_TAB_only_indentation from list of disabled checks.
3743         * Makefile.am (libltdl/Makefile.am): Replace leading spaces with
3744         TABs.
3745         * libltdl/Makefile.am (libltdl_libltdl_la_SOURCES): Ditto.
3746
3747         syntax-check: fix violations and re-enable sc_m4_quote_check.
3748         * cfg.mk (local-checks-to-fix): Remove sc_m4_quote_check from
3749         list of disabled checks.
3750         * libltdl/m4/libtool.m4 (_LT_CHECK_OBJDIR): Quote LT_OBJDIR
3751         correctly.
3752
3753         syntax-check: fix violations and re-enable sc_file_system.
3754         * cfg.mk (local-checks-to-fix): Remove sc_file_system from list
3755         of disabled checks.
3756         (VC_LIST_ALWAYS_EXCLUDE_REGEX): Match mail directory correctly
3757         to avoid running its contents through syntax-check.
3758         * build-aux/ltmain.m4sh (func_mode_link): Use correct spelling
3759         for "file system".
3760         * libltdl/ltdl.c (try_dlopen): Ditto.
3761         * tests/dlloader-api.at: Ditto.
3762
3763         syntax-check: fix violations and re-enable sc_error_message_uppercase.
3764         * cfg.mk (local-checks-to-fix): Remove
3765         sc_error_message_uppercase from list of disabled checks.
3766         (exclude_file_name_regexp--sc_error_message_uppercase): Don't
3767         match cvsu, which is not our file to edit.
3768         * doc/libtool.texi: Use lowercase error message in example.
3769
3770         syntax-check: rationale for disabling sc_cast_of_x_alloc_return_value.
3771         * cfg.mk: Note that we support C++ compilation of libltdl, which
3772         in turn requires that *alloc return values be cast correctly.
3773
3774         syntax-check: fix violations and re-enable sc_cast_of_argument_to_free.
3775         * cfg.mk (local-checks-to-fix): Remove
3776         sc_cast_of_argument_to_free from list of disabled checks.
3777         * build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
3778         libltdl/lt__dirent.c: Casting argument to free is never
3779         necessary.
3780
3781         syntax-check: fix violations and re-enable sc_avoid_if_before_free.
3782         * cfg.mk (local-checks-to-fix): Remove sc_avoid_if_before_free
3783         from list of disabled checks.
3784         According to gnulib/doc/free.texi: "On old platforms such as
3785         SunOS4, @code{free (NULL)} fails.  However, since all such
3786         systems are so old as to no longer be considered ``reasonable
3787         portability targets,'' this module is no longer useful."
3788         * libltdl/libltdl/lt__alloc.h (FREE, MEMREASSIGN): Don't protect
3789         against freeing NULL bug on SunOS4.
3790
3791         syntax-check: skip sc_unmarked_diagnostics.
3792         * cfg.mk (local-checks-to-fix): Move sc_unmarked_diagnostics
3793         from here...
3794         (local-checks-to-skip): ...to here.
3795
3796         libtoolize: rename `libltdl/config' directory to standard `build-aux'.
3797         In addition to moving the autoconf auxiliary script directory
3798         into the place expected by GNU developers ($top_srcdir/build-aux)
3799         we also simplify libtoolize somewhat by having libltdl use
3800         whatever directory was specified by the parent project.  This is
3801         much more flexible, allows libltdl client projects to also use a
3802         single canonical `$top_srcdir/build-aux' auxiliary script
3803         directory, and maintains backward compatibility with existing
3804         projects that wish to continue using $ltdl_dir/config.
3805         * libltdl/config: Moved whole directory from here...
3806         * build-aux: ...to here.
3807         * libtoolize.m4sh (func_install_pkgaux_subproject): Remove.
3808         (func_install_pkgaux_parent): Remove.
3809         (func_install_pkgaux_files): Considerably simplified now that we
3810         have only a single auxiliary directory to worry about.
3811         (subproject_aux_dir): Remove.
3812         * bootstrap.conf (libtool_readme_release_package_substitutions):
3813         No need to substitute our old unusual aux_dir location into
3814         README-release any more.
3815         * cfg.mk (_build-aux): Now that we use the standard location for
3816         this directory, no need to set this variable either.
3817         * configure.ac (AC_INIT): git-version-gen has moved.
3818         (AC_CONFIG_AUX_DIR): Adjust.
3819         * Makefile.am (stamp-mk, auxexefiles, auxfiles)
3820         (install-data-local): Use build-aux instead of config.
3821         (libltdl/stamp-mk): Ditto.
3822         * libltdl/configure.ac, tests/cdemo/configure.ac,
3823         tests/demo/configure.ac, tests/depdemo/configure.ac,
3824         tests/f77demo/configure.ac, tests/fcdemo/configure.ac,
3825         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
3826         tests/pdemo/configure.ac, tests/tagdemo/configure.ac
3827         (AC_CONFIG_AUX_DIR): Ditto.
3828         * tests/defs.m4sh (aux_dir): Ditto.
3829         * tests/configure-iface.at, tests/getopt-m4sh.at,
3830         tests/libtoolize.at, tests/subproject.at, tests/testsuite.at:
3831         Ditto.
3832         * Makefile.am (ltdl_ac_aux_dir): Extract at build-time...
3833         * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that
3834         libtoolize can access it at runtime without requiring GNU M4 via
3835         the extract-trace script.
3836         (require_Makefile_am_filter): Use it to determine whether the
3837         aux_dir declared in the current (parent) project configure is
3838         compatible with the declarations in installed ltdl autotools
3839         source files.
3840         (require_configure_ac_filter): New function to perform similar
3841         checks and rewrite configure.ac during installation if necessary.
3842         * NEWS: Updated.
3843
3844         libtoolize: aux scripts go in ltdl dir when parent has no configure.
3845         When using libtoolize to install subproject libltdl into a
3846         parent project that does not use autotools, set the default
3847         directory for auxiliary scripts inside libltdl rather than
3848         littering the parent project with files it doesn't use.
3849         * libtoolize.m4sh (func_require_ac_aux_dir): In verbose mode,
3850         report results like other require_ funcs.
3851         (func_require_aux_dir): Put subproject auxiliary files into ltdl
3852         directory where libltdl/configure will be able to find
3853         `install-sh' and others.
3854
3855         libtoolize: simplify runtime by substituting pkgauxdir.
3856         * Makefile.am (configure_edit): Substitute pkgauxdir.
3857         * libtoolize.m4sh (func_install_pkgaux_subproject)
3858         (func_install_pkgaux_parent, extract_trace): Use it.
3859
3860         libtoolize: generate require_ltdl_relative_aux_dir definition.
3861         * libtoolize.m4sh (require_ltdl_relative_macro_dir): Change to
3862         be generated function...
3863         (require_ltdl_relative_aux_dir): ...so that we can easily
3864         generate this very similar function from the same code.
3865
3866         libtoolize: rename `libltdl/m4' directory to standard `m4'.
3867         In addition to moving the autoconf macro directory into the
3868         place expected by GNU developers ($top_srcdir/m4), we also
3869         simplify libtoolize somewhat by having libltdl use whatever
3870         directory was specified by the parent project.  This is much
3871         more flexible, allows libltdl client projects to also use a
3872         single canonical `$top_srcdir/m4' macro directory, and maintains
3873         backward compatibility with existing projects that wish to
3874         continue using $ltdl_dir/m4.
3875         * libltdl/m4: Moved to it's parent directory.
3876         * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT)
3877         (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust.
3878         * configure.ac (AC_CONFIG_MACRO_DIR): Adjust.
3879         * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The
3880         libtoolize script can pick up the project macro directory from
3881         ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing
3882         to regenerate configure for the sake of a different macro
3883         directory declared in the libltdl using client project.
3884         * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove.
3885         (func_install_pkgmacro_parent): Remove.
3886         (subproject_macro_dir): Remove.
3887         (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags)
3888         (require_ltdl_am_macro_dir): New functions, generated at runtime
3889         by adding libltdl/Makefile.am to the generation loop.
3890         (func_install_pkgmacro_files): Considerably simplified now that
3891         we have only a single macro directory to worry about.
3892         (require_ltdl_relative_macro_dir): New function. Calculate the
3893         relative path from $ltdl_dir to the parent project macro_dir.
3894         (require_Makefile_am_filter): Depending on $ltdl_mode, edit
3895         Makefile.am ACLOCAL_AMFLAGS to use the parent project macro
3896         directory if necessary.
3897         (require_aclocal_m4_filter): Make sure m4_includes point to the
3898         correct macro directory by editing the file as it is copied
3899         into the parent project.
3900         (func_install_pkgltdl_files): Use the filters.
3901         (func_check_macros): Remove various advice that no longer
3902         applies with an always shared macro directory.
3903         (func_require_ltdl_dir): Don't default ltdl_dir to subproject
3904         when `--ltdl' was not given.
3905         (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is
3906         not set.
3907         (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject
3908         mode with no other directory implied by AC_CONFIG_MACRO_DIR or
3909         ACLOCAL_AMFLAGS, otherwise m4 as before.
3910         * tests/libtoolize.at: Match new "creating file `Makefile.am'"
3911         messages correctly.
3912         (subproject ltdl with non-shared directories): This test no
3913         longer makes sense, so repurposed...
3914         (subproject ltdl with non-canonical macro dir): ...this, to
3915         ensure subproject ltdl continues to automatically share the
3916         parent macro directory.
3917         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
3918         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
3919         tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
3920         tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
3921         tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location
3922         of macro_dir.
3923         * NEWS: Updated.
3924
3925         libtoolize: rename `Makefile.inc' to standard `ltdl.mk'.
3926         * libltdl/Makefile.inc: Moved from here...
3927         * libltdl/ltdl.mk: ...to here.
3928         * Makefile.am, bootstrap.conf, tests/libtoolize.at,
3929         tests/nonrecursive.at: Adjust.
3930         * libtoolize.m4sh (func_install_pkgltdl_files): Set the
3931         destination file to `Makefile.inc' if grep finds an include for
3932         that name in a top-level Makefile.am.
3933         (func_check_macros): Print a deprecation warning if use of the
3934         old `Makefile.inc' convention is found.
3935         * tests/old-ltdl-iface.at: New test for renaming and warning
3936         correctly when `Makefile.inc' convention is still in use.
3937         * NEWS: Updated.
3938
3939         libtoolize: refactor ACLOCAL_AMFLAGS extraction.
3940         Another simple refactor to simplify following changesets.
3941         * libtoolize.m4sh (require_Makefile_am, require_aclocal_amflags)
3942         (require_am_macro_dir): Generate these functions at runtime.
3943
3944         libtoolize: rename require_makefile_am to require_Makefile_am.
3945         A simple refactoring to keep the next change self-contained.
3946         * libtoolize.m4sh (require_makefile_am): Renamed from this...
3947         (require_Makefile_am): ...to this.
3948
3949         libtoolize: simplify copying of files that are edited during install.
3950         * libltdl/Makefile.inc (EXTRA_DIST): Don't list autotools files
3951         that Automake automatically adds to a (subproject)
3952         distribution...
3953         * Makefile.am (EXTRA_DIST): ...although, our layout is a bit odd
3954         because we reuse libltdl/Makefile.inc in non-recursive mode in
3955         our own tree, so we do need to add those very same files here...
3956         * libtoolize.m4sh (require_Makefile_am_filter)
3957         (require_Makefile_inc_filter): ...all of which means we no
3958         longer need to manually remove those files at libtoolize time.
3959         These two new functions are factored out of...
3960         (func_fixup_Makefile): ...this old function, now removed.
3961         (func_copy): Add support for an optional sed script as the last
3962         argument to filter the content of a file as it is copied.
3963         (func_install_pkgltdl_files): Much simplified by $require_<foo>
3964         the relevant filter scripts and passing them to func_copy.
3965
3966         libtoolize: simplify file-copying and -linking call-graph.
3967         * libtoolize.m4sh (TAR): Remove.
3968         (func_copy_some_files, func_copy_cb): Remove.
3969         (func_copy): Refactor from all of the above, and simplify. No
3970         need to use $TAR to preserve timestamps when copying, since
3971         we've been running touch right afterwards anyway. Adjust all
3972         callers to use the new argument footprint.
3973         (func_serial_update, func_keyword_update): Delete any pre-
3974         existing destination file when used with `--force' before
3975         calling func_copy, now that the hardcoded special cases are not
3976         in there any more.
3977         (func_install_pkgmacro_subproject)
3978         (func_install_pkgaux_subproject): Use our own file loop -
3979         func_copy subsumes all the checks previously in
3980         func_copy_some_files, but operates on only one file at a time.
3981         (func_install_pkgltdl_files): Similarly, handle aclocal.m4 and
3982         configure special cases here, before calling func_copy.
3983         * tests/libtoolize.at: Make sure we match corrected "copying
3984         `configure.ac'" output.
3985
3986         maint: generate full and correct ChangeLog.
3987         * gnulib: Updated to pick up gitlog-to-changelog multi-author
3988         support.
3989         * gl/build-aux/gitlog-to-changelog.diff: Use gnulib-rejected
3990         patch for '(tiny change)' support.
3991         * Makefile.am (ChangeLog): Use gitlog-to-changelog --amend=F
3992         option.
3993         * libltdl/config/git-hooks/commit-msg: New commit message hook
3994         for git.
3995         * libltdl/config/git-log-fix: New file, with ChangeLog fixes.
3996         * HACKING (Using git): Update.
3997
3998 2011-11-16  Gary V. Vaughan  <gary@gnu.org>
3999
4000         options-parser: provide a saner pluggable API.
4001         It's much too easy to forget that the functions you hook into
4002         the option parser need to return unconsumed options in the
4003         variable `func_run_hooks_result'; better to follow the
4004         convention used in the rest of bootstrap and return results in a
4005         variable named after the function with `_result' appended.
4006         * libltdl/config/options-parser (func_run_hooks): implement this
4007         new API.
4008         (Option parsing): Update the example in the header comment for
4009         this section to reflect the changes.
4010         * bootstrap (bootstrap_options_prep, bootstrap_parse_options)
4011         (bootstrap_validate_options): Adjust.
4012         * bootstrap.conf (libtool_options_prep, libtool_parse_options)
4013         (libtool_validate_options): Ditto.
4014
4015         bootstrap: display accurate usage message.
4016         After splitting bootstrap up, we also lost bootstrap's usage
4017         message, and were incorrectly displaying a partial extract-trace
4018         message.
4019         * bootstrap (usage): Set appropriately.
4020
4021         bootstrap: accept --gnulib-srcdir=/path/to/gnulib again.
4022         During the split of bootstrap into options-parser and
4023         extract-trace, the generic long-option splitting code got lost.
4024         * libltdl/config/options-parser (func_parse_options): Add the
4025         code to split any long option separated by an equals from its
4026         optarg back in.
4027         Reported by Roumen Petrov.
4028
4029 2011-11-15  Gary V. Vaughan  <gary@gnu.org>
4030
4031         gnulib: update gnulib submodule.
4032         Among others, this fixes a bug in _build-aux expansion so that
4033         `make syntax-check' works again.
4034         * gnulib: Updated to today's master HEAD revision.
4035         * gl/top/maint.mk.diff: Remove. This patch has been applied
4036         upstream already.
4037
4038         libtoolize: remove NL2SP and initialisation.
4039         There's only a single use of NL2SP, and that is redundant.
4040         * libtoolize.m4sh (func_serial_update): Factor away use of
4041         NL2SP.
4042         (NL2SP, SP2NL): Remove initialisation.
4043
4044         bootstrap: remove consumed options from the list to be processed.
4045         Fix a bug where processed bootstrap options were not removed
4046         from the queue, and eventually flagged as unknown in the
4047         pluggable option parser driver.
4048         * bootstrap (bootstrap_parse_options)
4049         (bootstrap_validate_options): Follow the pluggable option parser
4050         API correctly, and set func_run_hooks_result to the list of
4051         remaining unconsumed options.
4052         Reported by Roumen Petrov.
4053
4054 2011-11-14  Gary V. Vaughan  <gary@gnu.org>
4055
4056         libtoolize: refactor $opt_quiet, func_echo and func_echo_once.
4057         Instead of long sequences checking for setting of $opt_quiet,
4058         followed by one or more func_echo variations, add and use a new
4059         function func_whisper - the complement of func_verbose.
4060         * libtoolize.m4sh (func_whisper): New function. Adjust all
4061         callers previously using `$opt_quiet || func_echo ...'.
4062         (func_whisper_once): Ditto, for `$opt_quiet || func_echo_once
4063         ...'.
4064         (func_whisper_hdr): New function, adjust all callers previously
4065         using `func_whisper_once ...; func_whisper ...'.
4066         (func_whisper_error_header): Ditto, but calling func_error.
4067         (func_echo_once): Remove.
4068
4069         libtoolize: update a bit-rotted comment.
4070         * libtoolize (func_copy_cb): Since this comment was written, the
4071         function has been changed to timestamp files as it copies.
4072         Update the comment to reflect that.
4073
4074         general.m4sh: relative path to the same directory is `.'.
4075         * general.m4sh (func_relative_path): We sometimes want to use
4076         the result of this function directly, rather than purely as a
4077         prefix, so we need to return `.' when both directories end up at
4078         the same location.
4079
4080         ltmain.sh: append relative path trailing slashes explicitly.
4081         In addition to being more idiomatic, and hence minimising
4082         suprises, seeing the slash written explicity when appending to
4083         the result of a relative path calculation is a lot more
4084         readable.
4085         * libltdl/config/general.m4sh (func_relative_path): Don't append
4086         an implicit trailing slash...
4087         * libltdl/config/ltmain.m4sh (func_mode_link): ...write it
4088         explicitly at the time of use.
4089
4090 2011-11-09  Gary V. Vaughan  <gary@gnu.org>
4091
4092         build: use pkgauxdir for local install and uninstall rules.
4093         * Makefile.am (pkgauxdir): Set it correctly.
4094         (uninstall-hook): Use it for pkgaux_scripts and
4095         pkgaux_data_files.
4096         (install-data-local): Ditto.
4097         Remove `config/' prefix from extract-trace and option-parser
4098         items.
4099
4100 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
4101
4102         install: correct a typo in pkgaux_files location.
4103         * Makefile.am (install-data-local): Install pkgaux_files
4104         directly from $(aux_dir) [./libltdl/config at the moment].
4105
4106         libtoolize: order pkgltdl_files to avoid reconfiguration.
4107         * Makefile.am (pkgltdl_files): aclocal.m4 depends on
4108         configure.ac, and will cause spurious reconfiguration of freshly
4109         `libtoolize --ltdl' tree if we don't ensure configure.ac is the
4110         older of these two files.
4111         * tests/libtoolize.at: Adjust expout order to match.
4112
4113         build: remove an over-exuberant $(srcdir) prefix.
4114         * Makefile.am (git_version_gen): No need for an extra $(srcdir)
4115         in the path when we always use after `cd $(srcdir).
4116
4117         libtoolize: massage installed auxiliary script list at make time.
4118         * Makefile.am (configure_edit): Rename pkgconfig_files
4119         substitution to pkgaux_files, and add pkgaux_install_files and
4120         pkgaux_parent_files substitutions for atlocal.
4121         (pkgauxdir): Where to install pkgaux_files.
4122         (auxfiles): Removed, and replaced by...
4123         (pkgaux_parent_files, pkgaux_install_files, pkgaux_data_files):
4124         ...these, which separate the files lists more logically for
4125         easier installation, and use by libtoolize.m4sh.
4126         (uninstall-hook): Adjust.
4127         (tests/atlocal): Adjust.
4128         * bootstrap.conf (libtool_link_libltdl_subdirs): Adjust.
4129         * libtoolize.m4sh (func_install_pkgconfig_files)
4130         (func_install_pkgconfig_subproject)
4131         (func_install_pkgconfig_parent, func_install_pkgconfig_files)
4132         (all_pkgconfig_files): Renamed to...
4133         (func_install_pkgaux_files, unc_install_pkgaux_subproject)
4134         (func_install_pkgaux_parent, func_install_pkgaux_files)
4135         (all_pkgaux_files): ...these, resp. Adjust all callers.
4136         (func_massage_pkgconfig_files): Removed.
4137         (pkgaux_files): List of all auxiliary scripts substituted from
4138         Makefile.
4139
4140         libtoolize: massage installed libltdl file list at make time.
4141         * libtoolize.m4sh (pkgltdldir, pkgdatadir): Put installable
4142         libltdl files in pkgdatadir. When testing, and _lt_pkgdatadir
4143         is set, adjust to look in libltdl subdirectory.
4144         (func_massage_pkgltdl_files): Removed function and only caller,
4145         because...
4146         (pkgltdl_files): ...we substitute the pre-massaged files
4147         directly...
4148         (func_install_pkgltdl_files): ...from here.
4149         Adjust installation of specially handled additional files.
4150         * Makefile.am (ltdldir): Location of libltdl files in source
4151         tree.
4152         (ltdldest, ltdldatafiles): Removed.
4153         (pkgltdl_files): New pre-massaged list of libltdl sources.
4154         (install-data-local, uninstall-hook): Use it.
4155         * tests/libtoolize.at: Reorder expected output to match actual
4156         libtoolize output.
4157
4158         libtoolize: massage installed macro list at make time.
4159         * libtoolize.m4sh (func_massage_aclocal_DATA): Removed function
4160         and only caller, because...
4161         (pkgmacro_files): ...we substitute the pre-massaged files
4162         directly...
4163         (func_install_pkgmacro_files): ...from here.
4164         * Makefile.am (pkgmacro_files): New pre-massaged list of aclocal
4165         macros used by func_install_pkgmacro_files.
4166         (configure_edit): Substitute pkgmacro_files instead of
4167         aclocalfiles.
4168
4169         libtoolize: use only space delimited file lists.
4170         We don't install any files with whitespace in their file name,
4171         so using colon delimited lists to make that possible was a
4172         premature optimisation and an unneeded complication.
4173         * libtoolize.m4sh (func_copy_some_files): Remove IFS twiddling,
4174         and just pull space delimited files in a for loop idiomatically.
4175         (func_massage_aclocal_DATA, func_install_pkgmacro_subproject)
4176         (func_install_pkgmacro_parent, func_install_pkgmacro_files)
4177         (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
4178         Append to file lists with space delimiter.
4179
4180         libtoolize: remove sed based configure scanning.
4181         * libtoolize (func_scan_files): Removed function and callers.
4182         (require_seen_ltdl, require_seen_libtool): Factor out remaining
4183         functionality of former sed based scanning.
4184         (func_check_macros): Adjust.
4185         * NEWS: Updated.
4186
4187         libtoolize: refactor ltdl_mode discovery.
4188         * libtoolize.m4sh (require_ac_ltdl_mode)
4189         (require_ac_ltdl_options, require_ltdl_mode): New functions
4190         factored out of func_scan_files for scanning and setting
4191         ltdl_mode and friends.
4192         (func_scan_files): Remove the factored out code.
4193         (func_install_pkgmacro_files, func_install_pkgltdl_files)
4194         (func_install_pkgconfig_files, func_check_macros): Adjust.
4195
4196         libtoolize: refactor ltdl_dir discovery.
4197         * libtoolize.m4sh (require_ac_ltdl_dir, require_ltdl_dir):
4198         New functions factored out of func_scan_files for scanning and
4199         setting ac_ltdl_dir and ltdl_dir resp.
4200         (func_scan_files): Remove the factored out code.
4201         (func_fixup_Makefile, func_serial_update_check)
4202         (func_install_pkgltdl_files, func_install_pkgconfig_subproject)
4203         (func_check_macros): Adjust.
4204
4205         libtoolize: refactor aux_dir discovery.
4206         * libtoolize.m4sh (require_ac_aux_dir, require_aux_dir): New
4207         functions factored out of func_scan_files for scanning and
4208         setting aux_dir and friends.
4209         (func_scan_files): Remove the factored out code to scan
4210         configure.ac with sed, and then set macro_dir appropriately.
4211         (func_install_pkgconfig_subproject, func_install_pkgconfig_parent)
4212         (func_install_pkgmacro_files, func_check_macros): Adjust.
4213
4214         libtoolize: install autoconf macros only if there is a $configure_ac.
4215         * libtoolize.m4sh (func_install_pkgmacro_files): If there is no
4216         $configure_ac in the parent project directory, and libtoolize is
4217         in subproject mode, then the parent project has no use for
4218         autoconf macros, so don't install them.
4219         * NEWS: Updated.
4220
4221         libtoolize: display aux files output header for non-autoconf parents.
4222         * libtoolize.m4sh (func_install_pkgconfig_subproject): When the
4223         parent project does not use Autoconf, be sure to display an
4224         output header before copying auxiliary files despite not being
4225         able to scan for AC_CONFIG_AUX_DIR arguments.
4226         * NEWS: Updated.
4227
4228         libtoolize: refactor macro_dir discovery around extract-trace script.
4229         * libtoolize.m4sh (func_extract_trace): Function to call
4230         $aux_dir/extract-trace.  The name and footprint are the same as
4231         the core function in the extract-trace script file so that we
4232         can choose to source that file when the option processing
4233         becomes compatible with ours.
4234         (require_ac_macro_dir, require_aclocal_amflags)
4235         (require_am_macro_dir, require_macro_dir, require_makefile_am):
4236         New functions factored out of func_scan_files for scanning and
4237         setting macro_dir and friends.
4238         (func_scan_files): Remove the factored out code to scan
4239         configure.ac with sed, and then set macro_dir appropriately.
4240         (func_serial_update_check, func_install_pkgmacro_subproject)
4241         (func_install_pkgmacro_parent, func_install_pkgmacro_files)
4242         (func_check_macros): Adjust.
4243         * tests/libtoolize.at (Subproject ltdl without GNU M4): New test
4244         to ensure `libtoolize --subproject' continues to work without a
4245         GNU M4 dependency.
4246         * NEWS: Updated.
4247
4248         libtoolize: refactor configure_ac discovery.
4249         Make a start on decomposing some of the giant functions at the
4250         heart of libtoolize into the much more flexible and manageable
4251         (albeit somewhat more verbose) model of self-organising
4252         $require_<foo> function pointers.
4253         * libtoolize.m4sh (require_configure_ac): New function factored
4254         out of func_scan_files for setting $configure_ac appropriately,
4255         implementation taken from extract-trace script.
4256         (func_autoconf_configure): And similarly for ensuring that a
4257         filename which matches something Autoconf would read also has
4258         content that appears to be destined for Autoconf processing.
4259         (func_scan_files): Simplified the factored out code to a single
4260         require_configure_ac call.
4261         (func_install_pkgconfig_files, func_check_macros): Ditto.
4262         (seen_autoconf): Removed.
4263
4264         bootstrap: split into reusable parts.
4265         * bootstrap: Bourne shell has no scoping, so be extremely
4266         careful with namespaces, functions in `^func_' and `^require_';
4267         private variables in `^_G_', and public variables all well
4268         documented by comments.
4269         * libltdl/config/extract-trace: New file, containing the minimum
4270         of code previously in bootstrap plus a little glue to make the
4271         GNU M4 based autotools tracing function (as opposed to the
4272         kludgy sed extraction currently used everywhere else) a
4273         standalone script that can be executed or sourced.
4274         * libltdl/config/options-parser: New file, containing the
4275         pluggable options parser code shared between the other two.
4276         * bootstrap.conf: Adjust.
4277         * Makefile.am (EXTRA_DIST): Be sure to distribute the new
4278         extract-trace and options-parser scripts.
4279         (install-data-local): And install them where libtoolize can find
4280         them.
4281
4282         tests: prefix absolute directory variables with 'abs_'.
4283         Avoid any possible confusion about the contests of thes
4284         variables compared to $aux_dir, $macro_dir and $src_dir in
4285         configure.ac, Makefile.am, libtoolize.m4sh and others.
4286         * tests/defs.m4sh (aux_dir, macro_dir, srcdir): Rename these...
4287         (abs_aux_dir, abs_macro_dir, abs_srcdir): ...to these resp.
4288         * tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
4289         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
4290         tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
4291         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
4292         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
4293         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
4294         tests/demo-pic-exec.test, tests/demo-pic-make.test,
4295         tests/demo-shared-exec.test, tests/demo-shared-inst.test,
4296         tests/demo-shared-make.test, tests/demo-shared-unst.test,
4297         tests/demo-static-exec.test, tests/demo-static-inst.test,
4298         tests/demo-static-make.test, tests/demo-static-unst.test,
4299         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
4300         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
4301         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
4302         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
4303         tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
4304         tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
4305         tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
4306         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
4307         tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
4308         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
4309         tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
4310         tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
4311         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
4312         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
4313         tests/sh.test, tests/tagdemo-shared-exec.test,
4314         tests/tagdemo-shared-make.test, tests/tagdemo-static-exec.test,
4315         tests/tagdemo-static-make.test, tests/tagdemo-undef-exec.test,
4316         tests/tagdemo-undef-make.test, tests/tagtrace.test: Adjust.
4317
4318         maint: calculate required mkinstalldirs calls during `make install'.
4319         * Makefile.am (install-data-local): Make sure all destination
4320         directories are in place before copying files there, without
4321         hardcoding them.
4322
4323         maint: substitute static directory names.
4324         By substituting just the directory name as passed to the macro,
4325         aux_dir can be used with or without $srcdir prefix, which is
4326         more flexible, and always means the same thing in each file,
4327         rather than sometimes being a directory name, sometimes relative
4328         to $top_srcdir.
4329         * configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR)
4330         (LT_CONFIG_LTDL_DIR): Don't force config.status substitutions
4331         with unexpanded shell variables.
4332         * Makefile.am, tests/defs.m4sh: Adjust.
4333
4334 2011-11-07  Peter Rosin  <peda@lysator.liu.se>
4335
4336         libtoolize: fix spelling nit.
4337         * libtoolize (M4SH_GETOPTS): Fix spelling nit.
4338
4339 2011-11-07  Gary V. Vaughan  <gary@gnu.org>
4340
4341         tests: fix parsing of configure output by pic_flag.at.
4342         Close http://debbugs.gnu.org/9962.
4343         * tests/pic_flag.at (LT_AT_CONFIGURE): Make sure to configure
4344         with --disable-silent-rules so that the full output parsed by
4345         the rest of the test is available.
4346         Reported by Roumen Petrov.
4347
4348         libtoolize: rename `--subproject' option, and make it work.
4349         * libtoolize (M4SH_GETOPTS): Remove `--standalone', which never
4350         worked, and add `--subproject' which sets ltdl_mode correctly.
4351
4352 2011-11-05  Gary V. Vaughan  <gary@gnu.org>
4353
4354         libtoolize: fix a scoping bug in func_aclocal_update_check.
4355         libtoolize.m4sh (func_aclocal_update_check): This body of this
4356         function used a global variable set by the outer loop of the
4357         caller. Fix to Use the function argument correctly.
4358
4359         maint: rename the debug shell command variable to `debug_cmd'.
4360         Not only does it make more sense, it also matches bootstrap and
4361         others.
4362         * libtoolize.m4sh, libltdl/config/ltmain.m4sh,
4363         libltdl/config/getopt.m4sh, tests/defs.m4sh (opt_debug): Rename
4364         to debug_cmd.
4365
4366         maint: dynamically strip unused scripts from libltdl Makefile.
4367         * configure.ac (pkgaux_scripts): Centrally maintain the complete
4368         list of aux scripts required to build libltdl, and which need to
4369         be installed by libtoolize --ltdl, and consequently need to be
4370         placed in $pkgdatadir by make install.
4371         * Makefile.am (libltdl/stamp.mk): Improved to strip the unused
4372         scripts not listed in pkgaux_scripts without the need for manual
4373         synchronisation.
4374         (auxexefiles): Removed. Replaced by new pkgaux_scripts
4375         substitution.
4376         (install-data-local): Adjust.
4377
4378         build: substitute paths into defs.m4sh instead of recalculating.
4379         * Makefile.am (configure_edit): Add substitutions for aux_dir,
4380         macro_dir and srcdir.
4381         * tests/defs.m4sh: Don't recalculate srcdir.
4382         (aux_dir, macro_dir, srcdir): Convert to absolute paths.
4383
4384         build: support AM_SILENT_RULES
4385         * configure.ac: Add AM_SILENT_RULES.
4386         * libltdl/configure.ac: Ditto, but only if defined.
4387         * Makefile.am (.version, ChangeLog, README, doc/notes.txt)
4388         (libtool, libtoolize, libtoolize.in, libltdl/Makefile.am)
4389         (libltdl/stamp-mk, m4/ltversion.m4, tests/atconfig, tests/defs)
4390         (tests/defs.in, tests/package.m4): Output an AM_SILENT_RULES-like
4391         GEN when V==0.
4392         * libltdl/Makfile.inc (libltdl/argz.h): Ditto.
4393
4394 2011-10-31  Gary V. Vaughan  <gary@gnu.org>
4395
4396         maint: add autobuild prerequisite only if autobuild.m4 is absent.
4397         * bootstrap (func_require_autobuild_buildreq): Skip if autobuild.m4
4398         is already present.
4399         * bootstrap.conf (require_autobuild_bulidreq): No need to set this
4400         specially any more.
4401
4402         maint: ensure bootstrap runs from dist tarball.
4403         * bootstrap (func_gnulib_tool_copy_file): When gnulib-tool is
4404         not available, check that there is a copy of the file from a
4405         previous run available before bailing out with a diagnostic.
4406         (func_install_gnulib_non_module_files): Don't diagnose missing
4407         files explicitly - func_gnulib_tool_copy_file takes care of it
4408         now.
4409         (func_require_checkout_only_file): In the diagnostic for
4410         not being in a source-controlled tree, note that `--force' must
4411         be used to rebootstrap.
4412         (func_require_gnulib_files_already_present): Removed.  All the
4413         necessary checks are correctly performed in
4414         func_gnulib_tool_copy_file withot resorting to heuristics.
4415         (func_require_gnulib_mk): Don't continue to try to access
4416         gnulib-cache.m4 after discovering we're running from a dist
4417         tarball.
4418         (func_require_dotgitmodules_parameters): Skip if .gitmodules
4419         file is missing and git binary is not available.
4420         * bootstrap.conf (checkout_only_file): Set to HACKING, which is
4421         a non-distributed file.
4422         (libtool_cleanup_empty_dirs): Don't print spurious errors when
4423         trying to delete gnulib-tool droppings, in case gnulib-tool is
4424         not available on this run.
4425
4426         tests: add a keyword `expensive' to very long running tests.
4427         * tests/cmdline_wrap.at, tests/stresstest.at (AT_KEYWORDS): Add
4428         `expensive'.
4429         * NEWS: Updated.
4430
4431         libtoolize: fix some long-standing sed substitution bugs
4432         * libtoolize.m4sh (func_fixup_Makefile): `\\\\\$' in a " quoted
4433         script that is evaluated twice before execution becomes a `\$',
4434         which sed interprets as a literal $.  The script will then delete
4435         any lines with a first non-whitespace character of `$'. Instead
4436         use `\\\\$' in single quotes, which sed eventually receives as
4437         `\\$' and correctly interprets as part of an instruction to
4438         delete otherwise empty lines ending with a `\'.
4439         Additionally the rest of the same sed script is no longer
4440         applied to comment lines to avoid munging the copyright header
4441         among others.
4442         * NEWS: Updated.
4443
4444 2011-10-27  Gary V. Vaughan  <gary@gnu.org>
4445
4446         maint: use gnulib's gitlog-to-changelog instead of a ChangeLog file.
4447         * ChangeLog: Removed.
4448         * HACKING (Editing 'ChangeLog'): Removed. Renumbered other sections to
4449         compensate.
4450         * bootstrap.conf (gnulib_modules): Add gitlog-to-changelog.
4451         * Makefile.am (ChangeLog): Generate the ChangeLog for 2011...
4452         (dist-hook): ...from the output of `git log' before rolling a
4453         distribution tarball.
4454
4455         maint: use gnulib's git-version-gen instead of mkstamp.
4456         * libltdl/config/mkstamp: File removed.
4457         * bootstrap.conf (gnulib_modules): Add git-version-gen.
4458         * configure.ac (AC_INIT, package_revision): Use git-version-gen to
4459         calculate version number.
4460         (TIMESTAMP): Removed.
4461         * libtoolize.m4sh, libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
4462         (TIMESTAMP): Ditto.
4463         * Makefile.am (TIMESTAMP): Ditto.
4464         (MKSTAMP): Renamed from this...
4465         (git_version_gen): ...to this. Set revision here.  An alpha is now a
4466         release with an odd micro relase number.
4467         (rebuild): Don't reset revision here.
4468         (build_scripts): Remove mkstamp, add git-version-gen.
4469         (EXTRA_DIST, BUILT_SOURCES): Add .version.
4470         (libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4, tests/package.m4):
4471         Don't depend on configure.ac or ChangeLog to determine when the
4472         version number has reved, use .version directly.
4473         (.version): Flush most recent configure calculated VERSION to disk.
4474         (dist-hook): Flush current VERSION to disk at dist time.
4475         (dotserial): Distributed file to cache the serial number for
4476         when git is not available to recalculate it when building from a
4477         release tarball.
4478         (dist-hook): Make sure .serial is created.
4479         (libltdl/config/ltversion.m4): Use .serial when it is present
4480         (in a dist tarball) or calculate with git otherwise (in a git
4481         working directory).
4482         (EXTRA_DIST): Add .serial file.
4483
4484         maint: use gnulib's maint.mk and support scripts release procedure.
4485         * Makefile.maint: Removed.
4486         * configure.ac (LASTRELEASE, lt_major, lt_minor, lt_micro, lt_alpha):
4487         All removed. Makefile.maint was the only client.
4488         * HACKING (Release Procedure): Removed.
4489         * bootstrap.conf (gnulib_modules): Add announce-gen,
4490         do-release-commit-and-tag, gendocs, gnu-web-doc-update, gnupload and
4491         readme-release.
4492         * cfg.mk (manual_title): Set it for web-manual rule.
4493         (announcement_Cc_): Release announcement email addresses.
4494         * Makefile.am (build_scripts): Add to EXTRA_DIST additional files
4495         imported from gnulib for maint.mk release procedure.
4496         * NEWS: Updated.
4497
4498 2011-10-24  Gary V. Vaughan  <gary@gnu.org>
4499
4500         tests: ensure VPATH autom4te search path can find autotests.
4501         * Makefile.am (tests/testsuite): Passing only $(srcdir) include path
4502         to autom4te is unable to find tests/package.m4, and passing only
4503         $(srcdir)/tests breaks VPATH build searches for TESTSUITE_AT files,
4504         which are relative to $(srcdir)... so we pass both!
4505         * NEWS: Updated.
4506         Reported by Bob Friesenhahn.
4507
4508 2011-10-24  Karl Berry  <karl@gnu.org>
4509
4510         doc: modernize libtool.texi.
4511         * libtool.texi (@copying): Use this instead of @ifnottex; format for
4512         Texinfo; eliminate obsolete paragraph about TeX; use @insertcopying
4513         instead of duplicating text.
4514         (@syncodeindex): Move all to the Texinfo header, where they belong.
4515         (@dircategory): Use "Software development" instead of "GNU programming
4516         tools", for consistency; and align individual entries to avoid
4517         multiple lines; and move to after the copyright message.
4518
4519 2011-10-24  Gary V. Vaughan  <gary@gnu.org>
4520
4521         maint: don't make autobuild a hard bootstrap requirement.
4522         * bootstrap.conf (require_autobuild_buildreq): Reset this to ':' so
4523         that bootstrap doesn't auto-add autobuild to $buildreq.
4524
4525 2011-10-23  Gary V. Vaughan  <gary@gnu.org>
4526
4527         maint: use gnulib's maintainer-makefile module.
4528         * bootstrap.conf (gnulib_modules): Add maintainer-makefile.
4529         (gnulib_tool_options): Add --avoid=dummy now that we have a real
4530         module to import.
4531         * cfg.mk: New file. Customize maint.mk for Libtool.
4532         * Makefile.am (EXTRA_DIST): Add GNUmakefile, cfg.mk and maint.mk.
4533
4534         maint: use gnulib's canonical fdl.texi.
4535         * doc/fdl.texi: Removed.
4536         * bootstrap.conf (gnulib_non_module_files): Add fdl.texi.
4537
4538         maint: use gnulib's canonical COPYING files.
4539         * COPYING, libltdl/COPYING.LIB: Removed.
4540         * bootstrap.conf (gnulib_non_module_files): Add COPYING.
4541         (libtool_add_libltdl_copying): New func_gnulib_tool hook
4542         function to copy the canonical LGPL2 COPYING file from gnulib at
4543         bootstrap.
4544
4545         maint: use gnulib's (pending saner) bootstrap script.
4546         * bootstrap: Replaced with gnulib script.
4547         * bootstrap.conf: New file with Libtool specific bootstrap
4548         configuration.
4549         * Makefile.am (EXTRA_DIST): Add bootstrap.conf.
4550
4551         maint: add gnulib submodule.
4552         * configure.ac (GL_INIT, GL_EARLY): Initialise gnulib, and expand
4553         its configure time checks.
4554         * .gitmodules (gnulib): New file with configuration for our
4555         gnulib git submodule.
4556
4557 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
4558
4559         maint: tidy, sort and consolidate .gitignore files.
4560         The `gnulib-tool' and gnulib `bootstrap' scripts  maintain
4561         `.gitignore' files in asciibetical order, so reorder them now
4562         to avoid spurious patches later.
4563
4564         Take advantage of putting recursive file ignore matches into
4565         `$top_srcdir/.gitignore' and remove repetitions from other
4566         `.gitignore' files.
4567
4568 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
4569
4570         maint: don't run help2man on programs not-yet-built.
4571         * Makefile.am (doc/libtool.1, doc/libtoolize.1): Added a
4572         comment about why the dependencies here have to be a mite
4573         bizarre.
4574
4575         tests: remove unused `aux_dir' variable from `getopt-m4sh.test'.
4576         * tests/getopt-m4sh.at (aux_dir): Remove unused variable.
4577
4578         tests: DRYing out `tests/sh.test'.
4579         * Makefile.am (libtool_m4): Canonical location of libtool.m4 file.
4580         (lt_aclocal_m4_deps): Use it.
4581
4582         maint: pass directory declarations in configure.ac into Makefile.
4583         * configure.ac (AC_CONFIG_AUX_DIR, LT_CONFIG_LTDL_DIR)
4584         (AC_CONFIG_MACRO_DIR): Append code to these functions to
4585         capture and propagate their directory arguments to Makefile.
4586         * Makefile.am (aux_dir, ltdl_dir, macro_dir): Remove declarations.
4587         * bootstrap (my_sed_trace): Also capture LT_CONFIG_LTDL_DIR into
4588         `$ltdl_dir'.
4589         <Makefile>: Output the extracted values of `aux_dir', `ltdl_dir'
4590         and `macro_dir' at the top of the quick'n'dirty bootstrap
4591         Makefile.
4592
4593         maint: factor out ltmain.sh variable deletion.
4594         * Makefile.am (ltmain_sh_edit): Expand upon bootstrap edit by
4595         adding the extra line to delete boilerplate variable settings
4596         from libltdl/config/general.m4sh that don't apply here.
4597         (libltdl/config/ltmain.sh): Use it.
4598
4599         maint: DRYing out `Makefile.am' file paths.
4600         * Makefile.am (aux_dir, macro_dir): Include `$(srcdir)' in
4601         declaration. Adjust all references.
4602         (doc_dir, ltdl_dir, m4sh_dir, tests_dir): New single location
4603         to hold directory paths, all including `$(srcdir)', to reduce
4604         typing.
4605         (LT_M4SH): Use `$m4sh_dir' as include directory.
4606         (defs): This one is for a file in the build-tree, so no
4607         leading `$(srcdir)'.
4608
4609         CLEANUP: fix error from pushing too far up the branch.
4610         * Makefile.am (install-data-local): Undo character transposition
4611         from too early push of untested v2.4-17-gaf74d58.
4612         * ChangeLog (2010-09-16): Remove spurious entry.
4613
4614         maint: use macro_dir consistently in all files.
4615         * Makefile.am: Replace all uses of m4dir with macrodir to
4616         match AC_CONFIG_MACRO_DIR.
4617         * libltdl/config/libtoolize.m4sh: Replace all uses of macrodir
4618         with macro_dir.
4619         * tests/defs.m4sh, tests/sh.test: Likewise.
4620
4621         maint: use aux_dir consistently in all files.
4622         * Makefile.am, Makefile.maint: Replace all uses of auxdir
4623         with aux_dir to match AC_CONFIG_AUX_DIR.
4624         * libltdl/config/libtoolize.m4sh: Likewise.
4625         * tests/defs.m4sh, tests/getopt-m4sh.at: Likewise.
4626
4627         Makefile: try to be robust against shell meta-chars in filenames.
4628         * Makefile.am: In each rule body, unless a make variable needs
4629         to be seen as multiple words by the shell (for word-splitting
4630         loops, or because it contains several commands), quote it. Use
4631         single quotes unless the shell needs to perform variable inter-
4632         polation, in which case use double quotes.
4633
4634 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
4635
4636         maint: let make employ user's `SED' setting.
4637         * Makefile.am: Replace hard-coded `sed' with `$(SED)' through-
4638         out.
4639
4640         maint: simplify and improve safety of bootstrap process.
4641         * Makefile.am (bootstrap_files): List files that need to be
4642         generated at bootstrap time before `./configure && make' can
4643         work.  It turns out that this is considerably fewer files than we
4644         had thought necessary previously.
4645         (bootstrap-deps-prep): Ensure minimum set of required substitution
4646         variables are non-empty.
4647         (bootstrap-deps): Depend on `bootstrap' files.
4648         * bootstrap (Generate bootstrap dependencies): Now that
4649         `Makefile.am' is entirely responsible for rebuilding files at
4650         bootstrap time, we need only specify the new `bootstrap-deps'
4651         target, and supply values for the substitutions checked by
4652         `bootstrap-deps-prep'.
4653         * configure.ac (AC_CONFIG_SRCDIR): `libtoolize.in' is not here yet
4654         right after running `bootstrap'.  So rely on the presence of
4655         `libltdl/config/libtoolize.m4sh', which is always there.
4656
4657         build: eliminate superfluous temporary files from `Makefile.am'.
4658         * Makefile.am (CLEANFILES): Remove temporary file entries.
4659         (libtoolize.in, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
4660         (tests/defs, tests/testsuite): Factor away temporary files.
4661
4662         build: eliminate `ltmain.in' and `libtoolize.in' intermediate files.
4663         * Makefile.am (libltdl/config/ltmain.sh, libtoolize.in): Pipe
4664         the output of `$(LT_M4SH)' directly into `$(bootstrap_edit)' to
4665         avoid use of superfluous intermediate file.
4666
4667         build: don't hardcode repeated long paths in Makefile rules.
4668         According to the DRY principle, scattering several copies of
4669         something across a file or project leads to pain.  Let's not
4670         do that!
4671         * Makefile.am (Makefile_in, Makefile_inc, defs_in, defs_m4sh),
4672         (libtoolize_in, ltmain_m4sh, ltversion_in): New variables to
4673         hold the location of important files and targets.
4674         (EXTRA_DIST): Add the distributed ones by variable.
4675         (libtoolize, libltdl/Makefile.am, libltdl/m4/ltversion.m4)
4676         (libltdl/config/ltmain.sh, libltdl/stamp-mk, tests/defs)
4677         (tests/defs.in): Use the new variables to reduce noise and
4678         repetition.
4679
4680         build: make better use of automatic variables in `Makefile.am'.
4681         * Makefile.am (libtoolize, libtoolize.in, libltdl/Makefile.am)
4682         (libltdl/config/mkstamp, libltdl/config/ltmain.m4sh)
4683         (libltdl/m4/ltversion.m4, tests/testsuite, tests/defs.in):
4684         Make better use of automatic variables.
4685
4686         build: name temporary files in `Makefile.am' consistently.
4687         Sadly, we still have to jump through hoops for MICROS~1's very
4688         old, very broken 8.3 naming convention, so we have to be careful
4689         to be unique in the first 8 letters, and not to use two periods
4690         in a filename, otherwise we could use the much more elegent
4691         `temporary files use "$@T"' idiom:
4692         * Makefile.am (libltdl/m4/ltversion.m4): Rename temporary file
4693         to `ltversion.tmp'.
4694         (libltdl/config/ltmain.sh): Rename temporary file to
4695         `libltdl/config/ltmain.tmp'.
4696         (libtoolize): Rename temporary file to `libtoolize.tmp'.
4697         (tests/defs): Rename temporary file to `tests/defs.tmp'
4698         (tests/testsuite): Rename temporary file to `tests/testsuite.tmp'.
4699         (CLEANFILES): Append temporary files as we create rules that
4700         use them.
4701
4702         build: factor Makefile.am `m4sh' invocations to LT_M4SH.
4703         * Makefile.am (LT_M4SH): Now that all directories are listed as
4704         fully qualified paths, the search path argument to M4SH is always
4705         the same, so factor it out into a variable.  Adjust all callers.
4706
4707         build: avoid unnecessary directory changes in Makefile rules.
4708         * Makefile.am (doc/notes.txt, libltdl/m4/ltversion.m4,
4709         (libltdl/config/ltmain.m4sh, libtoolize.in, libltdl/Makefile.am)
4710         (libltdl/config/mkstamp, tests/testsuite, tests/defs.in): Avoid
4711         unnecessary `cd' commands by using fully qualified paths to files
4712         outside of current directory.
4713
4714         build: compare `revision' rather than `correctver' in Makefile.am.
4715         * Makefile.am (rebuild): Set the shell variable `revision' rather
4716         than `correctver' for clarity of purpose.
4717         (bootstrap_edit, libltdl/config/ltmain.sh): Adjust.
4718         (libltdl/m4/ltversion.m4): Likewise, and alse, instead of munging
4719         the serial number comment line with set, extract `macro_version'
4720         from this file, and compare it directly with `revision'.
4721         (libtool): Likewise for `package_revision'.
4722
4723         build: avoid spurious bootstrap_edit call.
4724         * Makefile.am (tests/package.m4): @FOO@ substitutions have already
4725         been made by the time Makefile.am has been transformed into Makefile,
4726         so don't try to rerun the substitutions manually with
4727         $(bootstrap_edit) after the fact.
4728
4729 2011-10-18  Gary V. Vaughan  <gary@gnu.org>
4730
4731         Post-release administrivia.
4732         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4733         numbers.
4734         * NEWS: Add header line for next release.
4735
4736         Release 2.4.2.
4737         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4738         numbers.
4739         * NEWS: Update version number.
4740
4741 2011-10-17  Gary V. Vaughan  <gary@gnu.org>
4742
4743         Replace leading spaces with tabs.
4744         * libltdl/m4/libtool.m4, libltdl/config/ltmain.m4sh: Replace leading
4745         spaces in source code with tabs to match surrounding code.
4746         Reported by Peter Rosin.
4747
4748         Make a note to use gnu/linux for version_type.
4749         * libltdl/m4/libtool.m4 (version_type): Add a comment to change
4750         version_type setting from 'linux' to 'gnu/linux' during the next
4751         destabilising code refactoring.
4752         * libltdl/config/ltmain.m4sh: ditto.
4753         Requested by Richard Stallman.
4754
4755 2011-10-04  Bart Van Assche  <bvanassche@acm.org>
4756
4757         Typo fix - change func_apped into func_append
4758         * libltdl/config/ltmain.m4sh: Fix typo.
4759
4760 2011-10-02  Xin LI  <d@delphij.net>
4761
4762         Avoid problems when FreeBSD goes to version 10.
4763         * libltdl/m4/libtool.m4: Remove mentions of freebsd1. Use dots
4764         for FreeBSD 2 and 3 detection to avoid future problems
4765         * libltdl/m4/ltmain.m4sh: ditto.
4766
4767 2011-09-25  Cristophe Jarry  <christophe.jarry@ouvaton.org>
4768
4769         Avoid mentioning "Linux", use "GNU/Linux", if appropriate.
4770         * TODO: Don't use bare "Linux".
4771         * doc/libtool.texi: ditto.
4772         * doc/notes.texi: ditto.
4773         * libltdl/README: ditto.
4774         * libltdl/m4/libtool.m4: ditto.
4775
4776 2011-09-02  Peter O'Gorman  <peter@pogma.com>
4777
4778         Add flag to inhibit warnings.
4779         * libltdl/config/ltmain.m4sh: Add --no-warn, --no-warning flags.
4780         Reported by John David Anglin.
4781
4782 2011-04-10  Kurt Roeckx  <kurt@roeckx.be>
4783
4784         tagdemo: do not rely on picking up symbols from indirect deps.
4785         * tests/tagdemo/Makefile.am: Link to all libraries that the
4786         demo application uses.
4787
4788 2011-04-10  Svante Signell  <srs@kth.se>  (tiny change)
4789
4790         Set shlibpath_overrides_runpath for the Hurd.
4791         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [gnu]
4792         <shlibpath_overrides_runpath>: Set to no.
4793         * THANKS: Update.
4794
4795 2011-03-22  Justin Lecher  <jlec@gentoo.org>  (tiny change)
4796             Rhys Ulerich  <rhys.ulerich@gmail.com>
4797
4798         Don't filter OPENMP flags (-openmp & -fopenmp) from linker lines.
4799         If -fopenmp if passed to gcc during linking, it will take care to
4800         add all necessary libs to link correctly for openmp support.
4801         Currently libtool filters those flags, similar as it was the
4802         case with the threading flags. This change handles the situation
4803         for the openmp support similar as before the thread support
4804         was fixed.
4805           http://lists.gnu.org/archive/html/bug-libtool/2010-12/msg00009.html
4806           http://lists.gnu.org/archive/html/bug-libtool/2011-03/msg00014.html
4807         * libltdl/config/ltmain.m4sh (func_mode_link): Treat OpenMP
4808         flags like pthreads flags.
4809
4810 2011-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4811
4812         libtoolize: detect -I<dir> (without space) in ACLOCAL_AMFLAGS.
4813         * libtoolize.m4sh (func_scan_files): Also accept -I<dir>
4814         (without intervening space) in ACLOCAL_AMFLAGS.
4815         * THANKS: Update.
4816         Report from Jan Engelhardt.
4817
4818 2011-03-05  Peter O'Gorman  <peter@pogma.com>
4819
4820         On Mac OS X try .dylib as well as .so with lt_dlopenext
4821         * libltdl/m4/ltdl.m4: Define extra extension if module extension
4822         differs from shared lib extension.
4823         * libltdl/ltdl.c: Use it.
4824         * tests/darwin.at: Test it.
4825         * NEWS: Announce it.
4826         Reported by Hans Aberg, Michael Ellis, and others.
4827
4828 2011-02-14  Peter O'Gorman  <peter@pogma.com>
4829
4830         Install ltmain.sh without execute bit set.
4831         * Makefile.am: change install rule for ltmain.sh
4832         Reported by Křištof Želechovski.
4833
4834 2011-02-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4835
4836         docs: fix copyright years in PDF version of the manual.
4837         * doc/libtool.texi: Fix copyright years.
4838
4839 2011-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4840
4841         fix typo in ChangeLog
4842
4843 2011-02-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4844
4845         Fix LD setting for 64-bit Solaris 2/x86.
4846         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [*-*-solaris*):
4847         Determine GNU ld options for 64-bit Solaris 2/x86.  Detect gld
4848         2.21 _sol2 emulations.
4849
4850 2011-01-27  Peter O'Gorman  <peter@pogma.com>
4851
4852         Don't loop through wrapper script arguments unnecessarily.
4853         * libltdl/m4/ltmain.m4sh: Check that argv contains " --lt-"
4854         before looping to remove wrapper script targetted arguments.
4855         Performance regression reported by Dan McGee.
4856
4857 2011-01-20  Gerald Pfeifer  <gerald@pfeifer.com>  (tiny change)
4858
4859         Remove support for FreeBSD 1.x.
4860         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
4861         (_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which
4862         soon would incorrectly match FreeBSD 10.0.
4863         * NEWS, THANKS: Update.
4864
4865 2011-01-19  Peter O'Gorman  <peter@pogma.com>
4866
4867         Don't let verbose linker messages influence test results.
4868         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Ignore
4869         stderr during tests for -flag unless it contains "flag".
4870         * tests/darwin.at: Add test.
4871         Reported by Jeremy Huddleston and also by David Fang.
4872
4873 2011-01-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>  (tiny change)
4874
4875         Fix relink mode to use absolute path if hardcode_minus_L.
4876         * libltdl/config/ltmain.m4sh (func_mode_link): Use absolute path
4877         when hardcoding with -L.
4878
4879 2011-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4880
4881         Fix $wl setting for Solaris Studio 12.2 f90 on GNU/Linux.
4882         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]
4883         <lt_prog_compiler_wl>: Set to '-Qoption ld ' if we
4884         detect Sun Fortran version 8.4 or newer.
4885         Report by Terry Dontje.
4886
4887 2011-01-07  Peter Rosin  <peda@lysator.liu.se>
4888
4889         Convert file name to toolchain format when blessing archives.
4890         * libltdl/config/ltmain.m4sh (func_mode_install): When executing
4891         old_postinstall_cmds and old_archive_cmds, convert $oldlib to a
4892         format appropriate for the tool and provide that in $tool_oldlib.
4893         Also use $tool_oldlib when stripping old libraries.
4894         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Use $tool_oldlib
4895         as argument to $RANLIB.
4896         * THANKS: Update.
4897         Report by Dan McMahill.
4898
4899 2011-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4900
4901         Bump copyright years.
4902         * ChangeLog.2010: New, rotated from ...
4903         * ChangeLog: ... here.
4904         * Makefile.am (EXTRA_DIST): Add ChangeLog.2010.
4905         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
4906         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
4907         * libtoolize.m4sh: Likewise.
4908         * doc/libtool.texi: Likewise.
4909
4910 2010-12-20  Ian Lance Taylor  <iant@google.com>
4911
4912         * libltdl/m4/libtool.m4 (LT_LANG): Add Go.
4913         (AC_PROG_GO): Provide.
4914         (_LT_SYS_HIDDEN_LIBDEPS): Add Go case.
4915         (_LT_LANG_GO_CONFIG): Define.
4916         (LT_PROG_GO): Define.
4917         (AC_PROG_GO): Define if not defined.
4918         * libltdl/config/ltmain.m4sh: Match *.go.
4919         * doc/libtool.texi (LT_INIT): Mention Go.
4920         (Tags): Mention Go.
4921         * configure.ac: Enable Go.
4922         * NEWS: Update.
4923
4924 2010-12-20  Brice De Bruyne  <bricedb@gmail.com>  (tiny change)
4925
4926         Also turn off -fuse-linker-plugin for postdep_objects computation.
4927         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Add
4928         -fno-use-linker-plugin to temporary compile flags if necessary,
4929         to fix C++ postdep_objects setting with -flto
4930         -fuse-linker-plugin.
4931         * NEWS, THANKS: Update.
4932
4933 2010-12-20  KO Myung-Hun  <komh@chollian.net>  (tiny change)
4934
4935         Set command line length limit for OS/2.
4936         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [os2]
4937         <lt_cv_sys_max_cmd_len>: Set to 8192 to avoid long test.
4938
4939 2010-12-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4940
4941         Fix PIC flags with mpif77 using ifort on GNU/Linux.
4942         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
4943         Match Intel compiler also using $CC -V output, to avoid false
4944         negatives with compiler drivers like mpif77.
4945         Report by Christian Rössel.
4946
4947 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4948
4949         Fix PIC flags with MPI wrappers using Portland on GNU/Linux.
4950         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
4951         Match Portland compilers also using $CC -V output, to avoid
4952         false negatives with MPI compiler drivers.
4953         Report by Christian Rössel.
4954
4955         * libltdl/m4/libtool.m4 (_LT_SETUP): Fix quoting for
4956         PATH_SEPARATOR.
4957
4958 2010-12-15  KO Myung-Hun  <komh@chollian.net>  (tiny change)
4959             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4960
4961         Fix PATH_SEPARATOR handling for OS/2.
4962         * Makefile.am (update_mans): Quote $(PATH_SEPARATOR).
4963         * libltdl/m4/libtool.m4 (_LT_SETUP): Add _LT_DECL for
4964         PATH_SEPARATOR.
4965         * libltdl/config/general.m4sh: Use PATH_SEPARATOR when computing
4966         $progpath.
4967         * THANKS: Update.
4968
4969 2010-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4970
4971         Fix nvcc PIC setting on darwin.
4972         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
4973         <lt_prog_compiler_pic>: Prepend -Xcompiler to nonempty variable
4974         setting rather than hard-coding -Xcompiler -fPIC, for darwin.
4975         * NEWS, THANKS: Update.
4976         Report by Paweł Daniluk.
4977
4978         Honor $AUTOCONF, $AUTOMAKE in --help output.
4979         * libltdl/config/getopt.m4sh (func_help): Use $AUTOCONF and
4980         $AUTOMAKE if set, for --version outout.
4981
4982         docs: Libtool configuration diagram.
4983         * doc/libtool.texi (Integrating libtool): Add diagrams
4984         explaining the dependencies between Libtool files.
4985         Suggestion by Ethan Mallove.
4986
4987 2010-11-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4988
4989         Eliminate hardcode_libdir_flag_spec_ld tag variable.
4990         * libltdl/config/ltmain.m4sh (func_mode_link): Set $wl to empty
4991         if $LD is used for creating shared libraries.  Do not use
4992         hardcode_libdir_flag_spec_ld any more.
4993         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
4994         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG, _LT_SYS_DYNAMIC_LINKER)
4995         <hardcode_libdir_flag_spec_ld>: Remove all instances of the tag
4996         variable.
4997         (_LT_LINKER_SHLIBS) [linux, xlf] <hardcode_libdir_flag_spec>:
4998         Set variable, including ${wl}.  Fixes hardcoding in programs
4999         created by XL Fortran on GNU/Linux.
5000         * NEWS, THANKS: Update.
5001         Report by Paul H. Hargrove.
5002
5003         Rebuild menus in the manual.
5004         * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
5005         Thanks to Ian Lance Taylor for the suggestion.
5006
5007 2010-11-07  Ollie Wild  <aaw@google.com>
5008
5009         Modify --with-pic to support per-package configurations.
5010         * libltdl/m4/libtool.m4:  Modify --with-pic to accept a list of
5011         package names.  Modelled off --enable-shared.
5012         * tests/with-pic.at: New test.
5013         * Makefile.am (TESTSUITE_AT): Add tests/with-pic.at.
5014         * doc/libtool.texi (LT_INIT): Enhance documentation of
5015         --with-pic configure flag.
5016         * NEWS (New features): Mention that --with-pic now accepts a
5017         comma-separated list of package names.
5018
5019 2010-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5020
5021         Fix cwrapper test failure with --disable-static.
5022         * tests/cwrapper.at (cwrapper and installed shared libraries):
5023         Compile program source without libtool, so we can be sure a
5024         non-PIC object will be created.
5025
5026 2010-11-01  Peter Rosin  <peda@lysator.liu.se>
5027
5028         docs: Windows DLLs and headers.
5029         * doc/libtool.texi (Platform quirks): Add new subsection
5030         'Windows DLLs'.
5031
5032         * doc/libtool.texi (Platform quirks): Fix typo.
5033
5034 2010-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5035
5036         docs: mention shell requirement for libtool script.
5037         * doc/libtool.texi (Invoking libtool): Document that the shell
5038         used to invoke libtool needs to be the same used to configure
5039         it.
5040         * THANKS: Update.
5041         Report by Markus Duft.
5042
5043 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
5044
5045         libtool: remove redundant unsubstituted shell var defaults.
5046         * Makefile.am (libltdl/config/ltmain.sh): Boilerplate code from
5047         libltdl/config/general.m4 sets some default shell variables
5048         designed to be substituted by `$(configure_edit)'.  Actually,
5049         `libtool' uses the language tag values for those variables, and
5050         `ltmain.m4sh' is not passed through `$(configure_edit)', so they
5051         are just noise.  Edit them out at bootstrap time.
5052
5053 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
5054
5055         maint: don't leak developer GREP, SED etc into distribution file.
5056         * Makefile.am: Having rearranged the file, now apply the actual
5057         changes to follow-up.
5058         (edit): Split into two parts...
5059         (bootstrap_edit): ...substitutions that should happen at bootstrap
5060         time...
5061         (configure_edit): ...and substitutions that should not happen until
5062         configure time.
5063         * Makefile.am (libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh)
5064         (libtoolize.in, tests/package.m4): Use bootstrap_edit.
5065         (libtoolize, tests/defs): Use configure_edit.
5066         * HACKING (Release Procedure): Remove the note to workaround the
5067         bug fixed by this changeset.
5068         * NEWS (Bug fixes): Mention that this bug is now fixed.
5069         Reported by Joerg Sonnenberger.
5070
5071         maint: rearrange Makefile.am in preparation for a follow-up patch.
5072         * Makefile.am (Libtool scripts.): Move this section below the
5073         `Bootstrap.' section...
5074         (libtoolize.in): ...except this one which is generated at
5075         bootstrap time, and was added into the `Bootstrap.' section.
5076         (Libltdl.): Move this section below the `Libtool scripts.'
5077         section.
5078
5079 2010-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5080
5081         Fix linking from only convenience archives with gfortran on Darwin.
5082         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Update
5083         macro comment header.
5084         [darwin, F77, FC] <compiler_needs_object>: Set to yes if
5085         whole_archive_flag_spec is nonempty.  Fixes convenience.at test
5086         suite failures with gfortran 4.2 on Darwin.
5087         * THANKS: Update.
5088         Report by Paul Laight.
5089
5090         Fix bindir check logic, and relax non-bindir case for AIX.
5091         * tests/bindir.at (bindir install tests): Rewrite checks for
5092         place of the installed shared library in two separate tests,
5093         depending on whether -bindir is supposed to have an effect or
5094         not.  In the positive case, make the test stricter so that we
5095         reject libraries in $libdir.  In the negative case, do not
5096         require a major version number in the $libdir file name, for AIX
5097         without runtimelinking.  If tmpdir creation fails, skip the
5098         test.  Use fewer bindir directory names for testing, to speed
5099         up the test.  Also mention MSVC style DLL name in comment.
5100         Report by Peter Rosin.
5101
5102         tests: remove unneeded 'bindir compile check' test.
5103         * tests/bindir.at (bindir compile check): Remove.
5104
5105 2010-10-14  Peter Rosin  <peda@lysator.liu.se>
5106
5107         tests: fix $EXEEXT typo.
5108         * tests/depdemo-relink.test (func_restore_files): Use $EXEEXT
5109         instead of $EXEXT.
5110
5111 2010-10-12  Simon Josefsson  <simon@josefsson.org>
5112             Matěj Týč <matej.tyc@gmail.com>
5113             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5114
5115         docs: improve description of -no-undefined.
5116         * doc/libtool.texi (Link mode): Fix -no-undefined description.
5117         (Inter-library dependencies): Use Windows not AIX as example
5118         system.  Clarify need for symbol resolution at library creation
5119         time.
5120
5121 2010-10-09  Paolo Bonzini  <bonzini@gnu.org>
5122
5123         Add missing sysroot resolution.
5124         * libltdl/config/ltmain.m4sh (func_mode_link): Resolve sysroot
5125         when fetching the install directory of dependent libraries.
5126         Reported by Lionel Landwerlin <llandwerlin@gmail.com>,
5127         patch by Khem Raj <raj.khem@gmail.com>.
5128         * THANKS: Reorder entries, add Khem and Lionel.
5129
5130 2010-10-07  Roumen Petrov  <bugtrack@roumenpetrov.info>
5131
5132         Add test case for 69e77671 (cwrapper PATH manipulation order)
5133         * tests/cwrapper.at: Add new test 'cwrapper and installed shared
5134         libraries.'
5135
5136 2010-10-04  Peter Rosin  <peda@lysator.liu.se>
5137
5138         cwrapper: split long lines when dumping the wrapper script.
5139         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): If
5140         the wrapper script contains long lines, split them for
5141         readability and to conform with C standards.
5142         * tests/cwrapper.at (cwrapper string length): New test, making
5143         sure we don't regress.
5144
5145         msvc: handle symbols from different files independently.
5146         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
5147         <dumpbin, lt_cv_sys_global_symbol_pipe>: Make all sections
5148         viable for symbol extraction again when the symbols from a new
5149         file starts.  Fixes tests/tagdemo-make.test for MSVC 10.
5150         * tests/dumpbin-symbols.at: New test, making sure we don't
5151         regress.
5152         * Makefile.am (TESTSUITE_AT): Update.
5153
5154 2010-09-27  Peter Rosin  <peda@lysator.liu.se>
5155
5156         tests: check if sys_lib_search_path_spec works on MSVC.
5157         * tests/search-path.at (sys_lib_search_path on w32): New test,
5158         making sure v2.2.10-207-g09142ea doesn't regress.
5159
5160         Skip need_lib_prefix.at on systems without lib prefix on libraries.
5161         * tests/need_lib_prefix.at [MSVC, OS/2]: Skip this test on
5162         systems that do not have libraries prefixed with lib.
5163
5164         tests: clean up importing and exporting on w32.
5165         Makes the touched tests pass for MSVC when DLLs are built.
5166         * tests/demo/Makefile.am, tests/pdemo/Makefile.am: Define
5167         BUILDING_LIBHELLO when building libhello.la.
5168         * tests/demo/foo.h, tests/pdemo/foo.h (nothing) <MSVC>: Export
5169         variable when building the libhello dll and import when using
5170         libhello.  For GCC and non-w32, and when building a static
5171         libhello, leave as an ordinary extern.
5172         * tests/pdemo/foo.h [Cygwin]: Remove unneeded and "dead" export
5173         and import logic (LIBFOO_DLL is always undefined).
5174         * tests/pdemo/longer_file_name_foo.c,
5175         tests/pdemo/longer_file_name_foo2.c (_LIBFOO_COMPILATION_): Not
5176         useful before, even less so now.  Removed.
5177         * tests/depdemo/l1/Makefile.am: Define BUILDING_LIBL1 when
5178         building libl1.la.
5179         * tests/depdemo/l2/Makefile.am: Define BUILDING_LIBL2 when
5180         building libl2.la.
5181         * tests/depdemo/l3/Makefile.am: Define BUILDING_LIBL3 when
5182         building libl3.la.
5183         * tests/depdemo/l4/Makefile.am: Define BUILDING_LIBL4 when
5184         building libl4.la.
5185         * tests/depdemo/l1/l1.h, tests/depdemo/l2/l2.h,
5186         tests/depdemo/l3/l3.h, tests/depdemo/l4/l4.h <MSVC>: Export
5187         variables when building the associated library dll and import
5188         when using the library.  For GCC and non-w32, and when building
5189         static libraries, leave as an ordinary extern.
5190
5191 2010-09-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5192
5193         docs: do not refer to Libtool version with dlopen functionality.
5194         * doc/libtool.texi (Dlopened modules): Remove broken reference
5195         to what should have been Libtool 0.9g.
5196         Report by Roumen Petrov.
5197
5198 2010-09-23  Peter Rosin  <peda@lysator.liu.se>
5199
5200         msvc: don't try to export import descriptors.
5201         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]
5202         [pw32, cegcc] <cl*, exclude_expsyms>: Don't export symbols in
5203         import libraries related to describing what dll(s) the import
5204         library is importing. Fixes problem in tests/demo-make.test
5205         and some other tests.
5206
5207 2010-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5208
5209         Fix regression in command-line length computation.
5210         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Use `env echo' rather
5211         than possibly-undefined func_fallback_echo, to ensure we fork
5212         and exec for this test.
5213         * NEWS: Update.
5214         Regression introduced in v2.2.6-39-g9c3d4d8.
5215
5216 2010-09-22  Gary V. Vaughan  <gary@gnu.org>
5217
5218         Post-release administrivia.
5219         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
5220         numbers to 2.4.1a.
5221         * NEWS: Add header line for next release.
5222
5223         Release 2.4.
5224         * libltdl/Makefile.inc (LTDL_VERSION_INFO): We've added the
5225         static libprefix interface, so new version-info is C+1:0:R+1.
5226         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
5227         numbers.
5228         * NEWS: Update version number.
5229
5230         manual: web-manual index.html clashes with @node Index.
5231         * doc/libtool.texi (Index): Renamed to `Combined Index'.
5232
5233         tests: ISO C++ forbids declaration of 'v1' with no type.
5234         * tests/lt_dlexit.at (lt_dlexit unloading libs): Added an
5235         explicit int type to declaration of 'v1' to prevent compilation
5236         failure with C++.
5237
5238 2010-09-22  Peter Rosin  <peda@lysator.liu.se>
5239
5240         tests: reloadable objects do not work on MSVC, SKIP test.
5241         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
5242         [cygwin, mingw, pw32, cegcc] <cl*, reload_cmds>: Indicate that
5243         reloadable objects do not work.
5244         * tests/duplicate_conv.at: Skip last test if reloadable
5245         objects do not work.
5246         * doc/libtool.texi (libtool script contents) <reload_cmds>:
5247         Document how to indicate that reloadable objects do not work.
5248
5249 2010-09-21  Peter Rosin  <peda@lysator.liu.se>
5250
5251         msvc: eliminate spaces in the library search path.
5252         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
5253         <cl*, sys_lib_search_path_spec>: The LIB path variable telling
5254         where MSVC looks for libraries is likely to contain directory
5255         names with spaces.  Convert those directory names to the short
5256         8.3 DOS form (i.e. without spaces) when storing them in
5257         sys_lib_search_path_spec, as that is a space separated variable.
5258
5259 2010-09-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5260
5261         Revert to per-language libpath computation on AIX.
5262         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Accept
5263         tagname argument.  Use global cache variable lt_cv_aix_libpath
5264         to override per-language tag variables for the libpath value.
5265         Fix the sed script to remove trailing space.
5266         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Pass tag argument to
5267         _LT_SYS_MODULE_PATH_AIX.
5268         Tracked down and reported by Rainer Tammer.
5269
5270 2010-09-21  Gary V. Vaughan  <gary@gnu.org>
5271
5272         maint: edit-readme-alpha shouldn't try to re-edit during dist.
5273         * libltdl/config/edit-readme-alpha: If README is non-writable
5274         assume that it is being run from distcheck, and skip the edit
5275         with a warning (to help diagnose cases where the heuristic is
5276         not correct).  However, if README has already been edited to
5277         the alpha text, quietly skip without an error message.
5278
5279 2010-09-20  Eric Blake  <eblake@redhat.com>
5280
5281         maint: drop autobuild requirement
5282         * HACKING: Update.
5283
5284         build: ship autobuild.m4, to reduce bootstrap requirement
5285         * libltdl/m4/.gitignore: Drop autobuild.m4.
5286         * libltdl/m4/autobuild.m4: New file, copied from autobuild.
5287         * configure.ac (AB_INIT): Unconditionally call it.
5288
5289 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
5290             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5291
5292         libltdl: Make sure preloaded symbols are declared extern "C".
5293         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Move the
5294         declaration of lt__PROGRAM__LTX_preloaded_symbols to global
5295         scope and make sure it has "C" linkage.  Makes exceptions.at
5296         succeed on MSVC.
5297
5298 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
5299
5300         tests: __declspec (dll{ex,im}port) in tests/exceptions.at
5301         * tests/exceptions.at (common.h, module.h, lib.h) [w32]: Use
5302         __declspec (dllimport) and __declspec (dllexport) instead of
5303         the less portable __attribute__ ((dllimport)) and
5304         __attribute__ ((dllexport)).  Makes the test compile on MSVC.
5305
5306 2010-09-19  Peter Rosin  <peda@lysator.liu.se>
5307
5308         tests: Import items from liba1 for MSVC.
5309         * tests/lt_dlexit.at (b1.c) [MSVC]: Import function f1 and
5310         variable v1 from liba1 when using them from modb1.  Makes the
5311         test pass on MSVC.
5312
5313 2010-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5314
5315         tests: avoid distcheck failure with --disable-ltdl-install.
5316         * tests/ltdl-libdir.at (libdir of installed modules): Skip if
5317         $LIBLTDL does not exist.
5318
5319 2010-09-18  Gary V. Vaughan  <gary@gnu.org>
5320
5321         maint: use sed instead of maintaining 2 README files.
5322         * README.alpha: Deleted.  It was mostly identical to README.
5323         * libltdl/config/edit-readme-alpha: New script to edit the
5324         contents of README in the dist tree prior to tarring up.
5325         * Makefile.am (dist-hook): Run it before rolling alpha release
5326         tarball.
5327
5328         maint: improve README's `Obtaining the Latest Sources'.
5329         * README (Obtaining the Latest Sources): Add instructions for
5330         obtaining stable, alpha and nightly snapshot tarballs.
5331         * README.alpha (Obtaining the Latest Sources): Adjust to match.
5332
5333         maint: reformat README `The Test Suites' for consistency.
5334         * README (The Test Suites): Reformatted for consistency.
5335         * README.alpha (The Test Suites): Adjust to match.
5336
5337         maint: improve `Reporting Bugs' in README and README.alpha.
5338         * README (Reporting Bugs): Rewritten to a more complete and
5339         concise guide to providing a good bug report.
5340         * README.alpha (Reporting Bugs): Adjust to match.
5341
5342         maint: consolidate Introductions of README and README.alpha.
5343         * README (Introduction): Rewritten to a more logical order for
5344         first time users, incorporating some additional text that was
5345         previously only in README.alpha.
5346         * README.alpha (Introduction): Adjust to match.
5347
5348         maint: copy the Version Numbering section into README.alpha.
5349         * README.alpha (Version Numbering): No less useful for users
5350         of alpha releases.  Copied from README.
5351
5352 2010-09-17  Peter Rosin  <peda@lysator.liu.se>
5353
5354         tests: actually detect missing 'test' in 'if "$foo" = ...'.
5355         * tests/sh.test: Remove extra backslash in regex.
5356
5357         Copy over DLL_EXPORT handling from C to C++ for non-GCC on w32.
5358         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [mingw, cygwin, os2]
5359         [pw32, cegcc]: Copy over the DLL_EXPORT handling from C to C++.
5360
5361 2010-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5362
5363         LTO: consistently accept -fwhopr* and -flto* for GCC.
5364         * libltdl/config/ltmain.m4sh (func_mode_link): Accept -fwhopr*.
5365         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Also match
5366         -flto*.
5367
5368 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
5369
5370         Fix order of PATH manipulation in cwrapper and shwrapper
5371         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main): Call
5372         lt_update_exe_path before lt_update_lib_path, to ensure that the
5373         temporary rpath values (which include the OBJDIRs of uninstalled
5374         libtool libraries) precede installation and final -rpath directories.
5375         (func_emit_wrapper): Prepend $dllsearchpath to PATH before prepending
5376         $temp_rpath to $shlibpath_var; similar rationale as above.
5377         Reported by Jon Turney <jon.turney@dronecode.org.uk>
5378
5379 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
5380
5381         Document libtool variable to_host_file_cmd.
5382         * doc/libtool.texi (libtool script contents:to_host_file_cmd):
5383         Document variable.
5384         (libtool script contents:to_tool_file_cmd): Prefer `build platform'
5385         to `build system'; Ditto `host platform'.
5386
5387 2010-09-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
5388
5389         Fix sh.test failure introduced in 72064249
5390         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid poor
5391         syntax.
5392
5393 2010-09-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5394
5395         tests: avoid localization failure due to unstable compiler messages.
5396         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT):
5397         Attempt to normalize temporary file names in error messages.
5398         Fixes 'localized compiler messages' test failure on Darwin when
5399         creating fat (multi-ABI) libraries.
5400
5401 2010-09-13  Peter Rosin  <peda@lysator.liu.se>
5402
5403         Prefer $NM @file when the toolchain isn't native to $build.
5404         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid calculating
5405         the command line length and take the @file branch *if* the file
5406         names needs to be converted for the toolchain and the @file
5407         branch works.  Fixes problems in stresstest.at when doing a cross
5408         from Cygwin to MinGW using MinGW native tools (a.k.a. a "faked"
5409         cross), and for the specific case of MSVC on Cygwin it makes the
5410         test pass.
5411
5412 2010-09-15  Gary V. Vaughan  <gary@gnu.org>
5413
5414         maint: improve README instructions for fetching latest version.
5415         * README, README-alpha (Obtaining the Latest Sources): New
5416         section, describing use of savannah repositories and bootstrap.
5417         * README.alpha (Reporting Bugs): Remove git instructions in
5418         favour of a reference to the new `Obtaining the Latest Sources'
5419         section.
5420
5421 2010-09-14  Eric Blake  <eblake@redhat.com>
5422
5423         maint: ship .xz, not .lzma
5424         * configure.ac (AM_INIT_AUTOMAKE): Prefer better file format.
5425         * Makefile.maint (git-release, git-dist, prev-tarball)
5426         (new-tarball, diffs): Use correct extension.
5427         * HACKING: Update instructions.
5428         * .gitignore: Ignore .xz files.
5429
5430 2010-09-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5431
5432         doc: avoid long lines in input and output, indexing fixes.
5433         * doc/libtool.texi (Linking libraries)
5434         (Module loaders for libltdl): Manually line-wrap examples, to
5435         avoid long lines.
5436         (Libltdl interface, User defined module data)
5437         (Module loaders for libltdl): Wrap long @deftypefun input lines
5438         using trailing '@'.  Use @deftypefun rather than @deftp where
5439         appropriate, and add spaces in @deftypefun lines to fix the
5440         index entries generated from these lines.
5441         (Cheap tricks): Use @smallexample rather than @example, to avoid
5442         long lines.
5443
5444         docs: @file and @option markup fixes.
5445         * doc/libtool.texi (Creating object files, Linking libraries)
5446         (Linking executables, Link mode, Finish mode, Autoconf macros)
5447         (Using Automake, Inter-library dependencies, Dlpreopening)
5448         (Linking with dlopened modules, Finding the dlname)
5449         (Libltdl interface, Test descriptions, Multiple dependencies):
5450         Add @option where needed, replace @samp with @file as
5451         appropriate.
5452
5453 2010-09-12  Peter Rosin  <peda@lysator.liu.se>
5454
5455         * .gitignore: Ignore *.obj files for MSVC (and w32 in general).
5456
5457         Adjust to moved auxiliary files and add compile.
5458         * HACKING (Maintenance Notes): Adjust to moved files.  Add the
5459         compile script.
5460         * Makefile.maint (fetch): Also fetch the compile script.
5461
5462 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5463
5464         tests: avoid empty AT_DATA contents, for zsh.
5465         * tests/libtoolize.at (libtoolize macro serial update)
5466         (libtoolize config files serial update, LIBTOOLIZE_OPTIONS):
5467         Do not create empty files with AT_DATA, the latter is documented
5468         to require a final newline.  Fixes testsuite failures with zsh
5469         4.3.10.
5470
5471 2010-09-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
5472
5473         When assigning $linklib value, honor [-all]-static[-libtool-libs]
5474
5475         * libltdl/config/ltmain.m4sh (func_mode_link): When prefer_static_libs
5476         and static library exists, ensure old_library name is used as $linklib.
5477         Fixes failure on mingw when both static and shared libraries are
5478         present.
5479
5480 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5481
5482         tests: work around zsh use of $options variable.
5483         * tests/getopt-m4sh.at: Rename $options to $opts, the former is
5484         special for zsh 4.3.10.
5485
5486         Fix AC_NO_EXECUTABLES test failure on IRIX 6.5.
5487         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix]: Cache result
5488         of link check for -Wl,-exported_symbol.
5489         * tests/no-executables.at (AC_NO_EXECUTABLES): Set
5490         lt_cv_irix_exported_symbol, to avoid link check.
5491
5492 2010-09-12  Jürgen Reuter  <juergen.reuter@physik.uni-freiburg.de>  (tiny change)
5493             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5494
5495         Initial support for the NAG Fortran compiler on GNU/Linux.
5496         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <nagfor>:
5497         New set of entries, for NAG Fortran 5.1 and 5.2.
5498         * NEWS: Update.
5499
5500 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5501
5502         Fix getopt.m4sh to require Autoconf 2.62 or newer.
5503         * libltdl/config/getopt.m4sh (m4_version_prereq): Require 2.62,
5504         not 2.61.
5505
5506 2010-09-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
5507
5508         Correct typo: $sharedlib_from_linklib_cmd missing '_cmd'
5509
5510         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Fix obvious
5511         typo, $sharedlib_from_linklib_cmd missing '_cmd'.
5512
5513 2010-09-10  Peter Rosin  <peda@lysator.liu.se>
5514
5515         Convert file name to toolchain format when invoking $NM.
5516         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
5517         (func_win32_libid, func_cygming_gnu_implib_p)
5518         (func_cygming_ms_implib_p): When using the name lister to find
5519         symbols in files, convert the file names to a format appropriate
5520         for the tool. Fixes testsuite issues in mdemo-static-make.test
5521         and mdemo-make.test when doing a cross from Cygwin/Wine to MinGW
5522         using MinGW native tools (a.k.a. a "faked" cross).
5523
5524 2010-09-09  Peter Rosin  <peda@lysator.liu.se>
5525
5526         Fix dependency tracking for MSYS/MinGW.
5527         * libltdl/config/ltmain.m4sh (func_to_tool_file): Add lazy
5528         argument which allows the user to specify conversions that are
5529         not desired.
5530         (func_mode_compile): Don't convert source files on MSYS, as
5531         MSYS does it for us. This fixes a regression introduced by
5532         "Use func_to_tool_file instead of fix_srcfile_path".
5533         Reported by Charles Wilson.
5534
5535 2010-09-08  Peter Rosin  <peda@lysator.liu.se>
5536
5537         Mention adjustment of naming of MSVC import libraries in NEWS.
5538         * NEWS: Mention the change in import library naming on MSVC.
5539
5540 2010-09-07  Peter Rosin  <peda@lysator.liu.se>
5541
5542         Adjust naming of MSVC import libraries.
5543         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
5544         [pw32, cegcc] <cl*, library_names_spec>: Adjust naming of the
5545         import library from foo-<major-version>.lib to foo.dll.lib, to
5546         avoid clashes with the static library for unversioned libraries.
5547         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin, pw32]
5548         [cegcc] <cl*, archive_expsym_cmds>: Explicitely name the import
5549         library to match the above.
5550
5551         Fixup texi typo in previous.
5552         * doc/libtool.texi (libtool script content) <postlink_cmds>:
5553         Add missing 'code' command.
5554
5555         Convert POSIX file names to toolchain format for MSVC
5556         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
5557         [cygwin, mingw, pw32, cegcc] <cl*, postlink_cmds>: Make
5558         sure the -outputresource: file name for the manifest tool is
5559         in w32 format.
5560         <cl*, archive_expsym_cmds>: Likewise for the MSVC command file
5561         containing the exports and the output file name.
5562         * libltdl/config/ltmain.m4sh (func_mode_link): Precalculate the
5563         toolchain format of the output_objdir file name and store it in
5564         the tool_output_objdir variable. Also replace any occurrence of
5565         @TOOL_OUTPUT@ in postlink_cmds with the toolchain version of the
5566         @OUTPUT@ content.
5567         * doc/libtool.texi (libtool script content): Update description
5568         of postlink_cmds to mention @TOOL_OUTPUT@.
5569
5570 2010-09-06  Peter Rosin  <peda@lysator.liu.se>
5571
5572         Use func_to_tool_file instead of fix_srcfile_path.
5573         * libltdl/config/ltmain.m4sh (func_mode_compile): Replace the
5574         fix_srcfile_path hook with a call to func_to_tool_file.
5575         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin,mingw,pw32]
5576         [cegcc]: Drop fix_srcfile_path.
5577         * doc/libtool.texi (libtool script contents): Likewise.
5578         * NEWS: Mention that fix_srcfile_path has been replaced.
5579
5580         Convert file names to toolchain format in $NM and $AR @files.
5581         * libltdl/config/ltmain.m4sh (func_mode_link): When listing
5582         symbols and when creating archives using command files (or
5583         response files), make sure that both the name of the command
5584         file and the content are made up of file names in a format
5585         appropriate for the tool. Fixes stresstest.at on MSYS when
5586         run with low command line length.
5587
5588         Convert file names to toolchain format when linking.
5589         * libltdl/config/ltmain.m4sh (func_mode_link): When exporting
5590         symbols and when linking using command files (or response
5591         files), make sure that both the name of the command file and
5592         the content are made up of file names in a format appropriate
5593         for the tool. Fixes problems in stresstest.at on MSYS when run
5594         with low command line length.
5595
5596         Add file name conversion from $build to toolchain.
5597         * configure.ac: Ensure to_tool_file_cmd is available to Makefile.
5598         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): Add
5599         cache variable lt_cv_to_tool_file_cmd that describes how to
5600         convert file names from $build to toolchain format.
5601         * libltdl/config/ltmain.m4sh (func_to_tool_file): New function
5602         that utilizes the above.
5603         * Makefile.am: Ensure to_tool_file_cmd is included in
5604         TEST_ENVIRONMENT so that it is passed to (old testsuite) tests.
5605         * testsuite.at: Ensure to_tool_file_cmd is passed as a variable
5606         setting on the configure line for (new testsuite) tests.
5607         * doc/libtool.texi (libtool script content): Update with
5608         to_tool_file_cmd description.
5609         (Cygwin to MinGW Cross): Update to mention lt_cv_to_tool_file_cmd.
5610
5611 2010-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5612
5613         tests: avoid spurious test failure due to library mode on HP-UX.
5614         * tests/help.at (debug tracing): Use $lt_INSTALL not cp for
5615         install mode, the latter will not overwrite an existing library
5616         with mode 555.
5617
5618 2010-09-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
5619
5620         Path conversion documentation
5621         * doc/libtool.texi (Platform quirks): Add new subsections
5622         'Cross compiling' and 'File name conversion'.
5623
5624 2010-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5625
5626         tests: avoid spurious pic_flag test failure on HP-UX 10.20.
5627         * tests/pic_flag.at (override pic_flag at configure time):
5628         Match HP-UX 10.20 cc warning about unknown options, to skip
5629         the test.
5630
5631         tests: fix localization test for GCC on HP-UX 11.00.
5632         * tests/localization.at (localized compiler messages): Be sure
5633         to switch the locale only for the actual compiler commands, so
5634         we don't pick up warnings from helper tools such as diff which
5635         may not have the locale installed.
5636
5637         Avoid leaking make flags into testsuite results.
5638         * tests/defs.m4sh: Unset MFLAGS, MAKEFLAGS, MAKELEVEL, __MKLVL__
5639         and MAKE_JOBS_FIFO.
5640         * tests/testsuite.at: Likewise.
5641         Fixes warnings in test logs when the user uses 'make -jN check'
5642         and inner $MAKE invocations can't connect to the job server.
5643         Fixes spurious failures of configure-iface.at and of
5644         demo-noinst-link tests with BSD and Tru64 make if the user uses
5645         'make -k', as the exit status of the latter is not reliable.
5646
5647 2010-09-01  Gary V. Vaughan  <gary@gnu.org>
5648
5649         Remove announce-gen.m4sh and mailnotify.m4sh.
5650         * libltdl/config/announce-gen.m4sh: Removed.  This script has
5651         no apparent connection to libtool functionality, and mostly
5652         duplicates the better maintained gnulib announce-gen script.
5653         * libltdl/config/mailnotify.sh: Removed. This script was used
5654         by only clcommit.m4sh and announce-gen.m4sh, both of which are
5655         now removed too.
5656         * Makefile.maint (announce-gen, libltdl/config/mailnotify):
5657         Targets removed.
5658         * bootstrap: Remove the mailnotify regeneration warning.
5659         * HACKING (Release Procedure): Remove references to
5660         announce-gen.
5661         (Alpha release note template, Full release note template):
5662         Reinstated from before announce-gen was introduced.
5663
5664         Remove clcommit.m4sh.
5665         * clcommit.m4sh: Removed. This script was written to help keep
5666         ChangeLog and commit messages in sync when committing to CVS,
5667         and is an anachronism now that Libtool uses git.
5668         * Makefile.maint (commit): Target removed.
5669         * bootstrap: Don't generate commit.
5670         * HACKING (Release Procedure): Adjusted.
5671
5672 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
5673
5674         archive-in-archive.at passes with Microsoft lib.
5675         * tests/archive-in-archive.at: Tighten test to check that the desired
5676         object files are indeed part of the archive. Microsoft lib still
5677         passes, so remove the expected failure for that case.
5678
5679         Dump archiver output to the log when testing @file support.
5680         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout to config.log
5681         when testing for @file support.
5682         Suggested by Ralf Wildenhues.
5683
5684         Silence archiver output when testing @file support.
5685         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout and stderr
5686         to the bit bucket when testing for @file support.
5687
5688 2010-08-31  Gary V. Vaughan  <gary@gnu.org>
5689
5690         Remove double `Generated from foo.m4sh' lines.
5691         We now require a modern Autoconf to bootstrap libtool, which
5692         will add the `Generated by ...' boiler-plate automatically,
5693         so we can remove the hand-rolled @configure_input@
5694         substitutions we had been doing:
5695         * clcommit.m4sh, libtoolize.m4sh, tests/defs.sh,
5696         libltdl/config/announce-gen.m4sh, libltdl/config/ltmain.m4sh,
5697         libltdl/config/mailnotify.m4sh: Remove @configure_input@.
5698         * Makefile.am (edit): Remove configure_input substitution.
5699         (libtoolize, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
5700         (tests/defs): Don't set `$input' shell variable.
5701         * Makefile.maint (announce_gen, libltdl/config/mailnotify)
5702         (commit): Likewise.
5703
5704 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
5705
5706         Extract the archive name from the .la file and use $AR (not ar).
5707         * Makefile.am: Pass AR through to the testsuite.
5708         * tests/archive-in-archive.at: Bump copyright year. Extract archive
5709         name from the .la file instead of hardcoding the name, and allow
5710         different archivers. Also clarify that the tested functionality is
5711         currently broken.
5712
5713 2010-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5714
5715         tests: skip -Wall -Werror with Tru64 cc in cwrapper test.
5716         * tests/cwrapper.at (cwrapper for uninstalled executables):
5717         Use a link test rather than a compile test to flesh out unknown
5718         compiler flags starting with -W; Tru64/OSF1 cc will happily
5719         accept `-Wall -Werror' as indication to pass flags on to
5720         subprocesses.
5721
5722         tests: avoid getopt-m4sh failures when autom4te is not available.
5723         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP):
5724         Check $M4SH --version, skip on failure.
5725
5726         tests: mark 'syntax of .la files' as XFAIL, expose failure.
5727         * tests/lalib-syntax.at (syntax of .la files): Assert that the
5728         string returned by lt_dlerror after a failure is non-NULL, so
5729         the failure shows up on systems other than Solaris.  Mark test
5730         as expected to fail.
5731         Suggested by Bob Friesenhahn.
5732
5733 2010-08-30  Eric Blake  <eblake@redhat.com>
5734
5735         Simplify recent configure quoting portability workaround.
5736         * configure.ac: Simplify setting of timestamp_string.
5737
5738 2010-08-30  Charles Wilson  <libtool@cwilson.fastmail.fm>
5739
5740         Update path conversion warning messages
5741         * libltdl/config/ltmain.m4sh (func_convert_file_check): Update
5742         comments and warning message.
5743         (func_convert_path_check): Update warning message.
5744
5745 2010-08-29  Peter Rosin  <peda@lysator.liu.se>
5746
5747         Fix typo when renaming path conversion functions.
5748         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
5749         variable setting on the configure line for (new testsuite) tests.
5750
5751 2010-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5752
5753         Support GCC LTO on GNU/Linux.
5754         * libltdl/config/ltmain.m4sh (func_mode_link): Allow through
5755         flags matching -O*, -flto*, -fwhopr, -fuse-linker-plugin.
5756         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Drop symbols
5757         starting with __gnu_lto.
5758         (_LT_LINKER_SHLIBS) [linux] <archive_cmds, archive_expsyms_cmds>:
5759         Add $pic_flag for GCC.
5760         (_LT_LANG_CXX_CONFIG) [linux] <archive_cmds, archive_expsyms_cmds>:
5761         Likewise.
5762         (_LT_SYS_HIDDEN_LIBDEPS): Ignore files matching *.lto.o.
5763         * NEWS: Update.
5764
5765         Disable GCC LTO for verbose library extraction.
5766         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Temporarily
5767         append -fno-lto or -fno-whopr to CFLAGS if CC or CFLAGS (which
5768         are substituted with the per-language variables here) contain
5769         -flto or match -fwhopr*, respectively.
5770
5771         Save and restore CFLAGS properly inside libtool.m4 macros.
5772         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Use different
5773         temporary variables for saved and restored values of $LIBS,
5774         $CFLAGS, to avoid overlap with the *_CONFIG macros.
5775         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
5776         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Also save and restore
5777         $CFLAGS, and override it with per-language flags, so that in
5778         case output_verbose_link_cmd uses $CFLAGS, the right flags are
5779         used.
5780
5781         Work around yet another shell quoting portability issue.
5782         * configure.ac: Avoid nonportable quoted alternate variable
5783         value in unquoted here document, so Solaris 10 sh and Tru64
5784         ksh do not print spurious extra quotes.
5785
5786         Silence order-only configure test for AIX make.
5787         * configure.ac: Also drop standard output, for AIX 5.1 make.
5788
5789 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
5790
5791         Minor sysroot fixups.
5792         * libltdl/m4/libtool.m4 (_LT_WITH_SYSROOT): Fix typo.
5793         * tests/sysroot.at: Search also for crt0.o to accommodate cygwin.
5794
5795 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
5796
5797         [cygwin|mingw|cross-compile]: Path conversion support.
5798         * configure.ac: Ensure to_host_file_cmd is available to Makefile.
5799         * TODO: Document QoI issue with file name conversion functions.
5800         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): New function
5801         sets libtool variable $to_host_file_cmd, and employs cache.
5802         (_LT_SETUP): Require it.
5803         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
5804         variable setting on the configure line for (new testsuite) tests.
5805         * Makefile.am (TESTS_ENVIRONMENT): Ensure to_host_file_cmd is
5806         included so that it is passed to (old testsuite) tests.
5807         * libltdl/config/general.m4sh: Define $lt_sed_naive_backslashify here.
5808         * libltdl/config/ltmain.m4sh ($to_host_file_cmd, $to_host_path_cmd):
5809         New variables.
5810         (func_cygpath): New function.
5811         (func_init_to_host_path_cmd): New function.
5812         (func_to_host_path): Renamed to...
5813         (func_to_host_file): Refactored to... (now uses $to_host_file_cmd).
5814         (func_convert_core_file_wine_to_w32): Here. New function.
5815         (func_convert_core_msys_to_w32): Here. New function.
5816         (func_convert_file_check): Here. New function.
5817         (func_convert_file_noop): Here. New function.
5818         (func_convert_file_msys_to_w32): Here. New function.
5819         (func_convert_file_cygwin_to_w32): Here. New function.
5820         (func_convert_file_nix_to_w32): Here. New function.
5821         (func_convert_file_msys_to_cygwin): New function.
5822         (func_convert_file_nix_to_cygwin): New function.
5823         (func_to_host_pathlist): Renamed to...
5824         (func_to_host_path): Refactored to... (now uses $to_host_path_cmd
5825         and func_init_to_host_path_cmd).
5826         (func_convert_path_check): Here. New function.
5827         (func_convert_path_front_back_pathsep): Here. New function.
5828         (func_convert_core_path_wine_to_w32): Here. New function.
5829         (func_convert_path_noop): Here. New function.
5830         (func_convert_path_msys_to_w32): Here. New function.
5831         (func_convert_path_cygwin_to_w32): Here. New function.
5832         (func_convert_path_nix_to_w32): Here. New function.
5833         (func_convert_path_msys_to_cygwin): New function.
5834         (func_convert_path_nix_to_cygwin): New function.
5835
5836 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5837
5838         Fix symlist variable path to use _WIN32 instead of __WINDOWS__.
5839         * libltdl/config/ltmain.m4sh, libltdl/libltdl/lt_system.h,
5840         libltdl/m4/libtool.m4, tests/demo/foo.h, tests/pdemo/foo.h:
5841         Change __WINDOWS__ to _WIN32.
5842         Report by Charles Wilson.
5843
5844         Add $pic_flag to archive_cmds and archive_expsym_cmds.
5845         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
5846         <archive_cmds, archive_expsym_cmds>
5847         [GNU ld, netbsd]: Add $pic_flag if ELF.
5848         [GNU ld, solaris]: Likewise.
5849         [GNU ld, default case]: Likewise.
5850         [!GNU ld, freebsd, dragonfly]: Add $pic_flag.
5851         [!GNU ld, GCC, hpux9]: Add $pic_flag.
5852         [!GNU ld, GCC, hpux10]: Replace -fPIC with $pic_flag
5853         [!GNU ld, GCC, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
5854         [!GNU ld, GCC, irix5, irix6, nonstopux]: Add $pic_flag.
5855         [!GNU ld, GCC, osf4, osf5]: Likewise.
5856         [!GNU ld, GCC, solaris]: Likewise.
5857         (_LT_LANG_CXX_CONFIG) <archive_cmds, archive_expsym_cmds>
5858         [hpux9]: Add $pic_flag if $GXX.
5859         [hpux10, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
5860         [irix5, irix6]: Add $pic_flag if $GXX.
5861         [osf4, osf5]: Likewise.
5862         [solaris]: Add $pic_flag if $GXX and not GCC 2.7.
5863
5864         Uniform const'ness of symlist variable lt_preloaded_symbols.
5865         On some systems, lt_preloaded_symbols may not be declared
5866         const due to relocation issues.  C99 requires qualification to
5867         match for compatible declarations, so ensure we declare
5868         const'ness in the same way everywhere; link-time optimization
5869         may otherwise rightfully complain about inconsistencies.
5870         Since ltdl.h may not depend upon config.h, rely on system
5871         defines for choosing const'ness.
5872         * NEWS: Update.
5873         * doc/libtool.texi (Dlpreopening): Document this issue.
5874         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
5875         [__WINDOWS__, __CYGWIN__, _WIN32_WCE]: Define LT_DLSYM_CONST
5876         according to system defines.  Remove old shell cruft.  Use
5877         LT_DLSYM_CONST for lt_${my_prefix}_LTX_preloaded_symbols.
5878         * libltdl/libltdl/lt_system.h (LT_DLSYM_CONST): Likewise,
5879         define LT_DLSYM_CONST according to system defines.
5880         * tests/demo/foo.h (LT_DLSYM_CONST): Likewise.
5881         * tests/pdemo/foo.h (LT_DLSYM_CONST): Likewise.
5882         * tests/demo/dlmain.c (lt_dlsymlist): Use LT_DLSYM_CONST.
5883         * tests/pdemo/longer_file_name_dlmain.c (lt_dlsymlist):
5884         Likewise.
5885         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise
5886         for configure test code.
5887         * libltdl/ltdl.c (preloaded_symbols): Use LT_DLSYM_CONST.
5888         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Likewise.
5889
5890 2010-08-28  Dave Korn  <dave.korn.cygwin@googlemail.com>
5891
5892         Ensure cwrapper magic string is not optimized away.
5893         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
5894         Declare MAGIC_EXE as volatile.
5895         Report by Charles Wilson.
5896
5897 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5898
5899         Fix quoting in non-XSI func_xform, for IRIX sh.
5900         * libltdl/config/ltmain.m4sh (func_xform): Remove spurious extra
5901         M4 quotes.
5902
5903         Fix response file test for unreliable exit status of IRIX ar.
5904         * libltdl/m4/libtool.m4 (_LT_PROG_AR): IRIX ar will not fail
5905         over a command-line argument specifying a nonexistent file (such
5906         as `@FILE'), so ensure failure with a reponse file containing
5907         a nonexistent file.  Also, use lt_* variable prefix for
5908         temporary variables.
5909
5910         Fix AC_LANG_PROGRAM warnings from git Autoconf.
5911         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Fix
5912         underquoted AC_LANG_PROGRAM call.
5913         (LT_PROG_AR): Use AC_LANG_PROGRAM.
5914         (_LT_LINKER_SHLIBS) [irix, GCC]: Use the right source for the
5915         given language.
5916         * NEWS: Update.
5917
5918 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5919
5920         fix AIX testsuite regression
5921         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): Partly
5922         revert v2.2.10-83-gc45a288: Do not absolutize path here, only do
5923         sysroot replacement.
5924         (func_mode_link): Adjust.
5925
5926 2010-08-22  Charles Wilson  <libtool@cwilson.fastmail.fm>
5927
5928         fix --mode=finish
5929         * libltdl/config/ltmain.m4sh (func_mode_finish): Invert then/else
5930         blocks of the "if $opt_dry_run" conditional.
5931
5932 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
5933
5934         improve code for sysroot --mode=finish
5935         * libltdl/config/ltmain.m4sh (func_mode_finish): Change sysroot_regex
5936         and sysroot_cmd delimiter from pipe to slash.  Wrap the entire for
5937         loop with "if $opt_dry_run...fi" and print an explanatory message
5938         for the --dry-run case.
5939
5940 2010-08-12  Paolo Bonzini  <bonzini@gnu.org>
5941
5942         add libtool --mode=finish mode for sysroot
5943         * doc/libtool.texi (Finish mode): Document behavior when *.la files
5944         are passed.
5945         * libltdl/config/ltmain.m4sh (func_mode_finish): Eliminate sysroot
5946         or `=' signs representing it from files in $libs.
5947         * tests/sysroot.at (SYSROOT_TESTS): Test for presence of sysroot
5948         references before running libtool --mode=finish, and for absence
5949         afterwards.
5950
5951         reorganize parsing of --mode=finish arguments
5952         * libltdl/config/ltmain.m4sh (func_mode_finish): Split arguments for
5953         directories and *.la files.
5954
5955         fix sysroot handling for deplibs of preopened libtool libs
5956         * libltdl/config/ltmain.m4sh: Pass $dependency_libs of preopened libtool
5957         through func_resolve_sysroot.
5958
5959         fix sysroot tests to pass on Fedora 13
5960         * tests/sysroot.at: Link $prefix/include into the sysroot as well, as
5961         required by newer GCC.
5962
5963 2010-07-29  Paolo Bonzini  <bonzini@gnu.org>
5964
5965         initial version of the NEWS entry
5966         * NEWS: Document sysroot support.
5967
5968         add sysroot test
5969         * Makefile.am (TESTSUITE_AT): Add tests/sysroot.at.
5970         * tests/sysroot.at: New.
5971
5972         emit sysrooted paths when installing .la files
5973         * libltdl/config/ltmain.m4sh (func_replace_sysroot): New.
5974         (func_mode_link): Prepend paths in $libdir with the sysroot.  Further,
5975         replace the sysroot with = (using func_replace_sysroot) whenever
5976         such a path is written in a .la file.
5977
5978         process postdeps to include sysrooted paths
5979         * libltdl/m4/libtool.m4 (_LT_FUNC_STRIPNAME_CNF): New (from Charles Wilson).
5980         (_LT_SYS_HIDDEN_LIBDEPS): Require it.  Use func_stripname_cnf to convert
5981         sysroot (-L= and -R=) usage in postdeps.  Adjust the code because -L, -R
5982         and -l flags will now always be separated from the rest of the argument.
5983
5984         handle sysrooted paths when reading dependencies to la files
5985         * libltdl/config/ltmain.m4sh (func_mode_execute, func_mode_install,
5986         func_mode_link): Whenever a .la file occurs in another .la file,
5987         expand the sysroot path in it.
5988
5989 2010-07-28  Paolo Bonzini  <bonzini@gnu.org>
5990
5991         teach libtool -L= and -R=
5992         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): New.
5993         (func_mode_link): Always pass result of stripping -L and -R to
5994         func_resolve_sysroot before using it.  Remove absolute path expansion
5995         when func_resolve_sysroot subsumes it.  Expand sysroot in -rpath.
5996         When processing dependent libraries also resolve sysroot paths there.
5997
5998         add --with-sysroot
5999         * libltdl/m4/libtool.m4 (_LT_HOST_NONCANONICAL, _LT_WITH_SYSROOT): New.
6000         (LT_SETUP): Require _LT_WITH_SYSROOT.
6001
6002         handle sysroot flags
6003         * libltdl/config/ltmain.m4sh (func_mode_link): Recognize --sysroot
6004         option.
6005
6006 2010-08-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6007
6008         * NEWS: Only bootstrapping needs new Automake and Autoconf.
6009
6010         check-interactive and check-noninteractive for both testsuites.
6011         * Makefile.am (COMMON_TESTS, TESTS): Split into ...
6012         (NONINTERACTIVE_TESTS, INTERACTIVE_TESTS): ... these new
6013         variables.
6014         (check-interactive-new): Rename from check-interactive.
6015         (check-noninteractive-new): Rename from check-noninteractive.
6016         (check-interactive-old, check-noninteractive-old): New targets.
6017         (check-interactive, check-noninteractive): Depend on the
6018         respective targets for the old and the new test suites.
6019         * doc/libtool.texi (Test descriptions): Simplify description
6020         about check-interactive and check-noninteractive.  Add index
6021         entries.
6022
6023         Adjust docs for renaming and for parallel-tests.
6024         * README: Update example TESTS setting.
6025         * README.alpha: Likewise.
6026         * doc/libtool.texi (Test descriptions): Update for test renaming,
6027         adjust descriptions accordingly.
6028
6029         Update VERBOSE handling for parallel-tests driver.
6030         * tests/defs.m4sh: Default to verbose output, drop now-unneeded
6031         handling of 'VERBOSE=no'.
6032         * README: Update example usage.
6033         * README.alpha: Likewise.
6034         * doc/libtool.texi (Test descriptions, When tests fail): Remove
6035         unneeded VERBOSE recommendations.  Point to per-test log files
6036         and test-suite.log summary file.
6037
6038         Enable parallel-tests test driver for the old testsuite.
6039         * configure.ac: New configure test to find out whether `make'
6040         supports order-only prerequisites; set @ORDER@ accordingly.
6041         (AM_INIT_AUTOMAKE): Enable parallel-tests option.
6042         * tests/defs.m4sh (prefix): Derive install prefix for tests
6043         from the test name, to avoid clashes.
6044         * Makefile.am (CXX_TESTS, F77_TESTS, FC_TESTS, COMMON_TESTS):
6045         Reformat.  Adjust for renamed tests.  Add dependencies between
6046         the respective log files of the tests, to ensure proper ordering.
6047         Use order-only dependencies if possible, between test groups that
6048         use the same directory.
6049         (clean-local-legacy): Remove `_inst-*' directories as well.
6050         Prompted by suggestion from Bob Friesenhahn.
6051
6052         New alias scripts for old tests run more than once.
6053         * tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
6054         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
6055         tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
6056         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
6057         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
6058         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
6059         tests/demo-pic-exec.test, tests/demo-pic-make.test,
6060         tests/demo-shared-exec.test, tests/demo-shared-inst.test,
6061         tests/demo-shared-make.test, tests/demo-shared-unst.test,
6062         tests/demo-static-exec.test, tests/demo-static-inst.test,
6063         tests/demo-static-make.test, tests/demo-static-unst.test,
6064         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
6065         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
6066         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
6067         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
6068         tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
6069         tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
6070         tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
6071         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
6072         tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
6073         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
6074         tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
6075         tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
6076         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
6077         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
6078         tests/tagdemo-shared-exec.test, tests/tagdemo-shared-make.test,
6079         tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
6080         tests/tagdemo-undef-exec.test, tests/tagdemo-undef-make.test:
6081         New files.
6082
6083         Require Automake 1.11.1 for Libtool, enable color-tests.
6084         * configure.ac (AM_INIT_AUTOMAKE): Require 1.11.1.  Enable
6085         color-tests.
6086         (LTDL_SUBDIR_LIBOBJS): Remove now-obsolete conditional and
6087         feature test for Autoconf 2.59 and Automake 1.9.x workaround.
6088         * Makefile.am: Simplify accordingly.
6089         * bootstrap: Remove obsolete WORKING_LIBOBJ_SUPPORT workarounds
6090         for Autoconf 2.59 and Automake 1.9.6.
6091
6092 2010-08-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
6093
6094         Fix syntax for cygwin-cross
6095         libltdl/m4/argz.m4: Add quotes around variable, which
6096         may contain the multiword value 'guessing no'.
6097
6098 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6099
6100         configure: use Autobuild AB_INIT if available.
6101         * configure.ac: Call AB_INIT if it is defined, with
6102         $autobuild_mode as argument, to be set at configure time.
6103         Set AB_VERSION to the Libtool version string.
6104         * HACKING: Update.
6105
6106         Fix getopt tests to skip with Autoconf < 2.61.
6107         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Skip the test
6108         if 'autom4te --language=m4sh' exits 63 because version 2.61 is
6109         required.  Allows the testsuite to complete successfully with
6110         Autoconf 2.59 and Automake 1.9.6.
6111
6112         Tidy and fix clean and distclean rules for old testsuite.
6113         * Makefile.am (clean-local-legacy): Use $(CONF_SUBDIRS) instead
6114         of hard-coding the list of test directories.  Use
6115         $(AM_MAKEFLAGS).
6116         (fake-distclean-legacy): New phony rule, to create fake Makefile
6117         files if needed so that the automake-generated
6118         distclean-recursive rule can work properly.
6119         (distclean_recursive): New helper variable.
6120         (distclean-recursive): Depend on fake-distclean-legacy.
6121
6122 2010-08-22  Paolo Bonzini  <bonzini@gnu.org>
6123
6124         Fix sed_make_literal_regex.
6125         * libltdl/config/general.m4sh (sed_make_literal_regex): Fix
6126         definition.
6127
6128 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
6129
6130         Factor the sed command used to make a regex from a literal.
6131         * libltdl/config/general.m4sh (sed_make_literal_regex): New.
6132         * libltdl/config/ltmain.m4sh
6133         (func_cygming_dll_for_implib_fallback_core): Use it.  Suggested
6134         by Ralf Wildenhues.
6135
6136 2010-08-21  Rainer Tammer <tammer@tammer.net>  (tiny change)
6137
6138         Avoid issues with AIX resident shared libraries in old testsuite.
6139         * tests/defs.m4sh [aix]: Remove file mode permission for others,
6140         so shared libraries are not kept in memory after execution.
6141         Fixes failures of repeated mdemo-inst.test with on AIX 5.3.
6142
6143 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6144
6145         Skip part of versioning test on AIX.
6146         * tests/versioning.at (versioning): The AIX linker always
6147         records the unversioned library name, even with runtimelinking,
6148         so skip the execution test for the incompatibly upgraded
6149         library.
6150         Report by Rainer Tammer.
6151
6152         Remove dead code from versioning test.
6153         * tests/versioning.at (versioning): No need to build unused
6154         prog3.
6155
6156 2010-08-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6157
6158         Don't hide the table of contents in the manual.
6159         * doc/libtool.texi: Move the table of contents to the beginning.
6160         Prompted by patch from Bruno Haible against Automake.
6161
6162         Remove superfluous dependency in Makefile.am.
6163         * Makefile.am (tests/demo-conf.test): Remove dependency on
6164         libtool, this test is a primary source and not generated.
6165
6166         Bump copyright years in manual.
6167         * doc/libtool.texi: Bump copyright years.
6168
6169 2010-08-13  Peter Rosin  <peda@lysator.liu.se>
6170
6171         Allow the use of a listing file if the archiver supports it.
6172         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Move detection
6173         of a suitable archiver...
6174         (_LT_PROG_AR): ...to here. New macro, also detect if the
6175         archiver supports a listing file with the new variable
6176         archiver_list_spec.
6177         * libltdl/config/ltmain.m4sh: If the archiver supports a listing
6178         file, use it when max_cmd_len is exceeded.  This is needed for
6179         tool chains such as MSVC which do not support piece by piece
6180         linking (-r -o).
6181         * doc/libtool.texi (libtool script contents): Update with
6182         archiver_list_spec description.
6183
6184 2010-08-10  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
6185
6186         Make testsuite compatible with Autoconf 2.62 again.
6187         * tests/getopt-m4sh.at (AT_CHECK): Autotest 2.62 chokes on unquoted
6188         '#' in AT_CHECK, so replace all uses with '@%:@' quadrigraph.
6189         Suggested by Eric Blake <eblake@redhat.com>
6190         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6191
6192 2010-08-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6193
6194         Fix more problematic code from "Add func_append_quoted and do..."
6195         * libltdl/config/ltmain.m4sh (func_mode_link): Revert back
6196         func_append instances that as assignments relied on the shell
6197         not performing word splitting on the right hand side of the
6198         assignment.
6199
6200         Fix another typo on "Add func_append_quoted and do..."
6201         * libltdl/config/ltmain.m4sh (func_mode_link): Fix regression in
6202         computation of finalize_rpath introduced in v2.2.10-40-g0da7d80,
6203         fixing several testsuite failures on AIX.
6204         Report by Rainer Tammer.
6205
6206 2010-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6207
6208         Avoid unwanted error message in configure output.
6209         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Try print
6210         in subshell, so eventual `print: not found' is hidden reliably.
6211
6212         Fix compilation of program sources on AIX.
6213         * tests/lt_dlopenext.at (lt_dlopenext error messages): Do not
6214         use $LIBTOOL when compiling plain object, AIX by default does
6215         not enable static archives.
6216         * tests/ltdl-libdir.at (libdir of installed modules): Likewise.
6217         Report by Rainer Tammer.
6218
6219         Do not call toplevel configure in non-VPATH build.
6220         * tests/deplibs-mingw.at (deplibs without file command): Use
6221         LT_AT_CONFIGURE for consistency, update comment about why it
6222         might fail.
6223         * tests/pic_flag.at (override pic_flag at configure time): Skip
6224         test if we are building in-tree.
6225         Report by Rainer Tammer.
6226
6227         Allow running pic_flag test with different shell.
6228         * tests/testsuite.at (LT_AT_CONFIGURE): Accept optional second
6229         argument specifying the configure script to run.
6230         * tests/pic_flag.at (override pic_flag at configure time):
6231         Use LT_AT_CONFIGURE.
6232
6233         Ensure not to reverse preserving of --debug for relinking/finish.
6234         * libltdl/config/ltmain.m4sh (func_check_version_match): Only
6235         preserve '--debug' switch if $opt_debug is not equal to ':'.
6236         * tests/help.at (debug tracing): New test group.
6237         Report by Rainer Tammer.
6238
6239 2010-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6240
6241         Fix AC_NO_EXECUTABLES test failure on AIX.
6242         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Wrap link
6243         test in AC_CACHE_VAL, using cache variable $lt_cv_aix_libpath.
6244         * tests/no-executables.at (AC_NO_EXECUTABLES): Preset it, to
6245         avoid link test.
6246         Bug report by Rainer Tammer.
6247
6248         Fix ltdl-libdir test for C++ compilers.
6249         * tests/ltdl-libdir.at (libdir of installed modules): Declare
6250         module function as extern "C".
6251
6252 2010-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6253
6254         Let `libtool' without arguments point to `--help' again.
6255         * libltdl/config/ltmain.m4sh (func_check_version_match):
6256         Remove duplicate and wrong error check.
6257         * tests/help.at (standard command line options): Extend test.
6258         Report by Rainer Tammer.
6259
6260         Avoid syntax error due to shift of nonexistent parameter.
6261         * libltdl/config/ltmain.m4sh <command-line handling>: Only shift
6262         if there is a positional parameter to shift.  Fixes `libtool
6263         --help' when dash is used.
6264         Report by Rainer Tammer.
6265
6266         Fix testsuite errors due to shell quoted parameter expansion issue.
6267         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Insert space
6268         between double-quoted and unquoted shell parameter, as bash
6269         4.0.28 doesn't add one in its output if the expansion of the
6270         second one starts with a space.
6271         (short option splitting, enhanced shell short option splitting)
6272         (long option splitting, XSI long option splitting): Add space in
6273         expected output.
6274         Fixes testsuite failures on AIX, FreeBSD, etc.
6275         Report by Rainer Tammer.
6276
6277 2010-08-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6278
6279         Fix build failure with AIX sh due to shell quoting error.
6280         * libltdl/config/ltmain.m4sh (func_append_quoted): Document
6281         that this function inserts a separator space.
6282         (func_mode_compile): Do not pass extra space here.
6283         Fixes regression introduced in v2.2.10-49-gc13532a.
6284         Report by Rainer Tammer.
6285
6286 2010-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6287
6288         Fix pic_flag test unportabilities.
6289         * tests/pic_flag.at (override pic_flag at configure time): Skip
6290         test if the compiler produces a warning containing `fpic'.
6291         Do not use nonportable `grep -e', for Solaris.
6292         Report by Charles Wilson.
6293
6294 2010-08-01  Paolo Bonzini  <bonzini@gnu.org>
6295
6296         Fix bug in postdeps computation
6297         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Actually
6298         concatenate $prev and $p.
6299
6300 2010-07-26  Charles Wilson  <libtool@cwilson.fastmail.fm>
6301
6302         Don't always skip XSI tests
6303         * tests/getopt-m4sh.at: Use new signature as implemented by
6304         de8a0992b21b76a13c302cf48588ad5f6042595c, when determining
6305         whether to test Extended-shell functions.
6306
6307 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
6308
6309         * tests/stresstest.at: Link with main.lo when liba is shared
6310         and linking main with -no-install.
6311
6312 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
6313
6314         * tests/stresstest.at [MSVC]: dllimport all imported
6315         variables.
6316
6317 2010-07-17  Peter Rosin  <peda@lysator.liu.se>
6318
6319         dllimport the variable for MSVC in link-order.at
6320         * tests/link-order.at [MSVC]: Makes the test pass by dllimporting
6321         imported variables when working with shared libraries.
6322
6323 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
6324             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6325
6326         Make preloading heed libname_spec.
6327         Fixes testsuite failure for lt_dladvise.at on MSYS/MSVC.
6328         * libltdl/ltdl.c (libprefix): New static variable describing
6329         the prefix of static archives.
6330         (try_dlopen): Use libprefix.
6331         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Export prefix of static
6332         archives to config.h. Also fix assignment of LTDLOPEN to be more
6333         efficient and less error prone while at it.
6334
6335 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
6336
6337         Rename _LT_PROG_XSI_REPLACE macro to _LT_PROG_FUNCTION_REPLACE.
6338         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Rename to
6339         _LT_PROG_REPLACE_SHELLFNS.
6340         (_LT_PROG_XSI_REPLACE): Rename to _LT_PROG_FUNCTION_REPLACE.
6341         (_LT_PROG_FUNCTION_REPLACE): Change decorator comment to use
6342         'Extended shell' rather than 'XSI' on successful replacement.
6343         * libltdl/config/general.m4sh (func_dirname, func_basename)
6344         (func_dirname_and_basename, func_stripname): Change decorator
6345         comment to use 'extended shell' rather than 'XSI' on fallback
6346         implementations.
6347         * libltdl/config/getopt.m4sh (func_split_short_opt)
6348         (func_split_long_opt): Ditto.
6349         * libltdl/config/ltmain.m4sh (func_append, func_append_quoted)
6350         (func_arith, func_len, func_lo2o, func_xform): Ditto.
6351         * tests/getopt-m4sh.at (_LT_AT_XSI_FUNC_EXTRACT): Rename to
6352         _LT_AT_EXTENDED_SHELL_FUNC_EXTRACT.
6353         (_LT_AT_EXTENDED_SHELL_FUNC_EXTRACT): Change regular expression to
6354         match new replacable function decorator comments.
6355
6356 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
6357
6358         Optimize assignment of output_la.
6359         * libltdl/config/ltmain.m4sh (func_mode_link): Save two fork/exec
6360         instances.
6361         Report by Ralf Wildenhues.
6362
6363 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
6364
6365         Fix a cut-n-pasto in "2010-07-07 Charles Wilson" patch.
6366         * libltdl/config/ltmain.m4sh (func_mode_link): Remove spurious
6367         variable dereference.
6368
6369 2010-07-07  Gary V. Vaughan  <gary@gnu.org>
6370
6371         Tidy m4 comment header underline.
6372         * libltdl/m4/libtool.m4 (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): Make
6373         sure hyphens in function name comment header underline line up.
6374
6375 2010-07-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
6376
6377         [cygwin|mingw] fix dlpreopen with --disable-static
6378         * libltdl/config/general.m4sh (func_tr_sh): New function.
6379         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [cygwin|mingw]:
6380         Obtain DLL name corresponding to import library by using value
6381         stored in unique variable libfile_$(transliterated implib name).
6382         If that fails, use $sharedlib_from_linklib_cmd to extract DLL
6383         name from import library directly. Also, properly extract dlsyms
6384         from the import library.
6385         (func_mode_link) [cygwin|mingw]: Prefer to dlpreopen DLLs
6386         over static libs when both are available.  When dlpreopening
6387         DLLs, use linklib (that is, import lib) as dlpreopen file,
6388         rather than DLL. Store name of associated la file in
6389         unique variable libfile_$(transliterated implib name)
6390         for later use.
6391         (func_win32_libid): Accomodate pei-i386 import libs
6392         as well as pe-i386.
6393         (func_cygming_dll_for_implib): New function.
6394         (func_cygming_dll_for_implib_fallback): New function.
6395         (func_cygming_dll_for_implib_fallback_core): New function.
6396         (func_cygming_gnu_implib_p): New function.
6397         (func_cygming_ms_implib_p): New function.
6398         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust sed
6399         expressions for lt_cv_sys_global_symbol_to_c_name_address and
6400         lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
6401         as trailing space after module name is optional.
6402         (_LT_LINKER_SHLIBS) [cygwin|mingw][C++]:
6403         Set exclude_expsyms correctly for $host. Simplify regular
6404         expression in export_symbols_cmds.
6405         (_LT_LINKER_SHLIBS) [cygwin|mingw|pw32][C]: Set exclude_expsyms
6406         correctly for $host. Enable export_symbols_cmds to identify
6407         DATA exports by _nm_ prefix.
6408         (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): New macro sets
6409         sharedlib_from_linklib_cmd variable.
6410         (_LT_DECL_DLLTOOL): New macro ensures DLLTOOL is always set.
6411
6412 2010-07-05  Peter Rosin  <peda@lysator.liu.se>
6413
6414         * tests/export.at [MSVC]: dllimport all imported variables.
6415
6416 2010-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6417             Peter Rosin  <peda@lysator.liu.se>
6418
6419         Support for response files with $NM.
6420         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
6421         <nm_file_list_spec>: New tag variable. Set it to '@' if input
6422         files can be passed to $NM in a file named with the '@' option.
6423         * libltdl/config/ltmain.m4sh (func_mode_link): When
6424         nm_file_list_spec is nonempty, use it to avoid skipped_export.
6425         * doc/libtool.texi (libtool script contents): Document
6426         new variable.
6427
6428 2010-07-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6429
6430         Fix ccache test for MSVC.
6431         * tests/static.at (ccache -all-static): Ignore compiler stderr.
6432         Reported by Peter Rosin.
6433
6434 2010-07-03  Charles Wilson  <libtool@cwilson.fastmail.fm>
6435
6436         Avoid false failures caused by filesystem interaction
6437         * tests/dlloader-api.at (dlloader API): Use uglified names for
6438         pseudo-modules.
6439
6440 2010-07-03  Peter Rosin  <peda@lysator.liu.se>
6441
6442         Fix typo in "Add func_append_quoted and do..."
6443         * libltdl/config/ltmain.m4sh (func_mode_compile): Use
6444         func_append_quoted instead of func_append.
6445
6446 2010-07-02  Peter Rosin  <peda@lysator.liu.se>
6447
6448         Don't trigger file name expansion when embedding manifests.
6449         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
6450         [ cygwin, mingw, cegcc ] <cl*>: Remove all spaces in the
6451         case statement of postlink_cmds to make file name expansion
6452         more unlikely.
6453         (_LT_LANG_CXX_CONFIG): Likewise, but also add the missing |.
6454
6455 2010-07-01  Peter Rosin  <peda@lysator.liu.se>
6456
6457         Fix regression caused by "Add func_append_quoted and do..."
6458         * libltdl/config/ltmain.m4sh (func_mode_link): Remove leftover
6459         "_libs" trash.
6460
6461 2010-06-28  Peter Rosin  <peda@lysator.liu.se>
6462
6463         For MSVC, embed the manifest as a resource in the executable.
6464         Fixes a lot of testsuite failures with MSVC 2003 (v8.0) and
6465         above (and perhaps also MSVC .Net) related to running programs
6466         that have been moved (e.g. installed) without their manifests
6467         also having been moved.
6468         * libltdl/m4/libtool.m4 (_LT_PATH_MANIFEST_TOOL): New macro
6469         that locates the Manifest Tool (mt) and verifies that it is
6470         indeed the manifest tool. The result is stored in the new
6471         variable MANIFEST_TOOL.
6472         (_LT_LINKER_SHLIBS) <postlink_cmds>: New tag variable.
6473         [ cygwin, mingw, cegcc ] <cl*>: Embed the manifest file as a
6474         resource. Make sure the embedding work regardless of if the
6475         @OUTPUT@ file name includes a trailing $EXEEXT.
6476         (_LT_LANG_CXX_CONFIG): Likewise.
6477         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Require the above
6478         _LT_PATH_MANIFEST_TOOL.
6479         * libltdl/config/ltmain.m4sh (func_mode_link): After linking
6480         a program, replace @OUTPUT@ in $postlink_cmds and then execute
6481         the commands.
6482         * doc/libtool.texi (libtool script contents): Document
6483         new postlink_cmds variable.
6484         (LT_INIT): Add that the MANIFEST_TOOL environment variable can
6485         be used to override the manifest tool to use.
6486         * tests/exeext.at: New. Make sure linking with both -o prog
6487         and -o prog$EXEEXT works.
6488         * Makefile.am (TESTSUITE_AT): Update.
6489         (TESTS_ENVIRONMENT): Propagate $(MANIFEST_TOOL) to the
6490         testsuite.
6491         * NEWS: Add note of the new MANIFEST_TOOL environment variable.
6492
6493 2010-06-24  Peter Rosin  <peda@lysator.liu.se>
6494
6495         Add MSVC support.
6496         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
6497         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin]: Add
6498         support for the Microsoft C/C++ Compiler (cl) relying on help
6499         from the compile script in Automake.
6500         * NEWS: Add note of the above.
6501
6502 2010-07-01  Gary V. Vaughan  <gary@gnu.org>
6503
6504         Skip `enhanced shell option appending' test when not available.
6505         * tests/getopt-m4sh.at [enhanced shell option appending]:
6506         _LT_AT_XSI_FUNC_EXTRACT will not be able to find the enhanced
6507         libtool func_append function if the replacement wasn't substituted
6508         by configure, since the decorator comments will be different - in
6509         that case simply skip the test.
6510
6511 2010-06-30  Gary V. Vaughan  <gary@gnu.org>
6512
6513         Add func_append test cases for smart and retarded implementations.
6514         * tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): New
6515         macro to extract a fallback function implementation from
6516         ltmain.m4sh.
6517         [option appending]: Use it for a test of the fallback
6518         implementation of func_append.
6519         [enhanced shell option appending]: And also test the enhanced
6520         implementation.
6521         * libltdl/config/ltmain.m4sh (func_append_quoted): Fix missing \\
6522         to escape a quoted space for eval.
6523         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Fix missing $ in
6524         dereference of func_append inline replacement for retarded
6525         shells.
6526
6527 2010-06-29  Gary V. Vaughan  <gary@gnu.org>
6528
6529         Correct func_split_short_opt comment cut-n-pasto.
6530         * libtool/config/getopt.m4sh (func_split_short_opt): Fix
6531         the function comment.
6532
6533         Use a real XSI compliant func_split_short_opt substitution.
6534         * libtool/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Remove
6535         test ${foo:n:m} substrings, instead adding a ${foo%??} check
6536         to the existing XSI tests.
6537         (_LT_PROG_XSI_SHELLFNS): Remove the ${foo:n:m} based
6538         func_split_short_opt substitution in favour of a properly
6539         XSI compliant substitution.
6540         Suggested by Paolo Bonzini.
6541
6542 2010-06-28  Gary V. Vaughan  <gary@gnu.org>
6543
6544         Add func_append_quoted and do inline func_append substitutions.
6545         * libtool/config/ltmain.m4sh: Replace all occurrences of
6546         `foo="$foo bar"' with func_append. No decorator comment was
6547         added since /func_append [a-zA-Z0-9_]* "/ is already an
6548         excellent match regexp, and additional comments would only
6549         complicate things.
6550         (func_append_quoted): New function that quotes a value with
6551         func_quote_for_eval before appending it.  To avoid quoting the
6552         whitespace in the passed value, a single whitespace is added
6553         automatically.  Changed callers where possible.
6554         * libtool/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Perform a
6555         `+=' implementation substitution for func_append_quoted.  More
6556         importantly, systematically replace matching func_append calls
6557         with inline `+=' when supported (for maximum speed), and
6558         longhand `foo="$foo bar"' otherwise to avoid the function
6559         overhead.
6560
6561         Add an XSI replacement for func_split_short_opt, with test cases.
6562         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Remove 'v' now
6563         that getopt.m4sh doesn't steal that letter for the --version
6564         short option.
6565         * libltdl/config/ltmain.m4sh (M4SH_GETOPTS): We can now use 'v'
6566         as a short option for '--verbose'.
6567         * libltdl/config/getopt.m4sh (m4go_printopts): Add back in the
6568         leading '-' for remaining non-argument short options.
6569         (func_split_short_opt): Use the correct sed script variable.
6570         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also ensure
6571         that XSI substring extraction is supported.
6572         (_LT_PROG_XSI_SHELLFNS): Use XSI substring extraction to split
6573         short options to avoid unnecessary forks if the host shell
6574         supports that.
6575         * tests/getopt-m4sh.at: New tests for getopt.m4sh coverage.
6576         * Makefile.am (TESTSUITE_AT): Add getopt-m4sh.at.
6577         (TESTS_ENVIRONMENT): Pass M4SH and SED for substition into the
6578         m4sh expansion performed in tests/getopt-m4sh.at.
6579
6580 2010-06-27  Gary V. Vaughan  <gary@gnu.org>
6581
6582         Add missing case branch terminators.
6583         * libltdl/config/ltmain.m4sh: Fixed everal case branches with
6584         missing ';;' terminators.
6585
6586         Use TAB-SPACE in preference to SPACE-TAB.
6587         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): Some editors
6588         might optimise away the SPACE in SPACE-TAB sequences, so use
6589         TAB-SPACE just in case.
6590         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6591
6592         Amend a missed opt_mode rename instance in ltmain.m4sh.
6593         * libltdl/config/ltmain.m4sh <mode>: Rename to opt_mode.
6594
6595         Fix portability regressions in today's earlier changeset.
6596         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): `sed -i' is not
6597         portable; use `mv -f ...|| cp -f ...' instead.
6598         Add an initial backslash to sed `c' substitutions with leading
6599         whitespace, so that indentation is not removed by some non-POSIX
6600         compliant sed implementations.
6601         (_LT_PROG_XSI_SHELLFNS): Display a diagnostic warning message if
6602         one or more XSI function replacements failed.
6603
6604         getopt.m4sh generated libtool option parser, and XSI improvements.
6605         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Moved portable
6606         shell versions of various utility functions from here...
6607         * libltdl/config/getopt.m4sh (func_split_long_opt): ...to here...
6608         * libltdl/config/general.m4sh (func_dirname, func_basename)
6609         (func_dirname_and_basename, func_strip_name): ...here...
6610         * libltdl/config/ltmain.m4sh (func_append, func_arith, func_len)
6611         (func_lo2o, func_xform): ...and here.
6612         * libltdl/config/libtool.m4 (_LT_PROG_XSI_REPLACE): New macro that
6613         expands into a sed command for replacing the contents of a
6614         suitably decorated shell function with an alternate XSI
6615         implementation.
6616         (_LT_PROG_XSI_SHELLFNS): Use it to replace the portable shell
6617         versions of the functions above with equivalent XSI
6618         implementations that avoid unnecessary forks if the host shell
6619         supports that.
6620         * libltdl/config/ltmain.m4sh: Replace hand written shell code
6621         with a call to M4SH_GETOPTS. Rename some option variables in
6622         the client code to match the generated option parser settings.
6623         * libltdl/config/general.m4sh (func_echo, func_error)
6624         (func_warning): Use $opt_mode instead of obsoleted $mode in
6625         message leader.
6626         * libltdl/config/getopt.m4sh (m4_version_prereq): This file
6627         requires m4sugar.m4 from Autoconf-2.61 or newer. 
6628
6629 2010-06-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
6630
6631         [cygwin] Refactor C++ exception handling for Win32 correctness
6632         * tests/exception.at (common.h): New file, refactored from
6633         (module.h): Move declaration of modexc to libcommon.
6634         Include common.h. Use explicit import/export markings for
6635         symbols when building on win32 or cygwin.
6636         (common.cpp): New file.
6637         (module.cpp): Ensure correct symbols markings when including
6638         module.h.
6639         (lib.h): Use explicit import/export markings for symbols
6640         when building on win32 or cygwin.
6641         (lib.cpp): Ensure correct symbol markings when including lib.h.
6642         (main.cpp): Include common.h.
6643         (commands): Ensure correct symbol markings when compiling
6644         main.cpp, and lib.cpp, and module.cpp. Add command to compile
6645         common.cpp, and to link libcommon.la.  Add libcommon.la when
6646         linking module.la and main.  Add command to install libcommon.la.
6647
6648 2010-06-21  Gary V. Vaughan  <gary@gnu.org>
6649
6650         Ensure getopts.m4sh is compatible with Autoconf-2.61 and newer.
6651         * libltdl/config/getopt.m4sh (m4_chomp): Ensure this macro is
6652         implemented even if Autoconf's m4sugar.m4 doesn't provide it.
6653         (m4go_expand): New macro based on Autoconf-2.64 m4_expand. Use
6654         it everywhere incase m4sugar.m4 doesn't have an implementation.
6655         (m4_ifnblank): Replace all uses with m4_ifval, which was
6656         available long before m4_ifnblank was introduced.
6657
6658 2010-06-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6659
6660         Fix clean mode for HP-UX 11.31 sh.
6661         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not try
6662         to match a null string in a case pattern, even with surrounding
6663         spaces.  Fixes `lt_dlopenadvise library loading' test.
6664
6665         Add comment for exception handling module unloading issue.
6666         * tests/exceptions.at (C++ exception handling): Add comment
6667         for last patch.
6668
6669         Fix flags test failure when ld is used as linker.
6670         * tests/flags.at (passing CC flags through libtool): When $LD
6671         is used for linking libraries, ensure flags passed with `-Wc,'
6672         are not passed through to $LD, but flags passed with `-Wl,' use
6673         $wl when linking programs.  Fixed testsuite failure on HP-UX
6674         10.20.
6675
6676 2010-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
6677
6678         [cygwin] Fix segfault in C++ exception handling test
6679         * tests/exceptions.at (main.cpp:exceptions_in_module):
6680         Move dlclose outside catch block; otherwise __cxa_end_catch
6681         (part of the cygwin g++ ABI) accesses pointers to data inside
6682         unloaded DLL. This is a platform ABI-specific bug, but is
6683         likely common to many platforms' g++ and/or other C++
6684         compilers.
6685
6686 2010-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6687
6688         Fix srcdir computation for manual runs of old tests.
6689         * tests/defs.m4sh: Strip trailing `/tests' from srcdir, to allow
6690         `$srcdir/tests/FOO.test' to be run from the top build directory.
6691
6692         Clean up @var handling in the manual.
6693         * doc/libtool.texi: Throughout the manual, replace @var with
6694         @samp or @code as appropriate, ensure the argument of remaining
6695         @var uses are lower-case.
6696
6697         Let the bootstrap script fail upon errors.
6698         * bootstrap: Enable errexit.
6699
6700         Fix execute mode test for OSF/1 5.1.
6701         * tests/execute-mode.at (execute mode): Do not use grep -F
6702         with an empty pattern.
6703         * THANKS: Update.
6704         Report by Jay K.
6705
6706         Use config.cache variable for PIC flag, to allow override.
6707         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) <lt_prog_compiler_pic>:
6708         Save result, and allow override, through cache variable
6709         lt_cv_prog_compiler_pic{,_CXX,_F77,_FC}.  The cache variable
6710         needs to contain an eventual -DPIC.
6711         * tests/pic_flag.at (override pic_flag at configure time):
6712         New file, new test.
6713         * Makefile.am (TESTSUITE_AT): Update.
6714         * NEWS, THANKS: Update.
6715         Suggestion by Joakim Tjernlund and Paolo Bonzini.
6716
6717 2010-06-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6718
6719         Optimize func_ltwrapper_scriptname to assume a cwrapper.
6720         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname): Do not
6721         call func_ltwrapper_executable_p again here, this function is
6722         documented to allow being called with wrapper executables.
6723
6724         Fix bootstrap script to cope with changed AC_INIT arguments.
6725         * bootstrap: When extracting PACKAGE and VERSION from AC_INIT
6726         arguments, be sure to remove a 'GNU ' prefix and lowercase the
6727         package name for PACKAGE.  Also set PACKAGE_NAME and PACKAGE_URL
6728         appropriately for GNU software.  Pass these variables to the
6729         make commands creating tests/package.m4 and other files.
6730         * Makefile.am (edit): Fix substitution of PACKAGE_NAME and
6731         PACKAGE_STRING.
6732         * libltdl/config/announce-gen.m4sh: Use @PACKAGE@ not
6733         @PACKAGE_STRING@.
6734
6735 2010-06-15  Peter Rosin  <peda@lysator.liu.se>
6736
6737         On Windows, find potential libs regardless of file name case.
6738         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD),
6739         libltdl/config/ltmain.m4sh (func_mode_link): On Windows,
6740         find potential libs regardless of file name case.
6741         * tests/nocase.at: New test, to check for regressions
6742         of the above.
6743         * Makefile.am: Add above new test.
6744         * doc/libtool.texi (libtool script contents): Document
6745         new variables.
6746         * NEWS: Updated.
6747
6748 2010-06-15  Philip Allison  <philip.allison@smoothwall.net>  (tiny change)
6749
6750         Avoid GCC -Wall compiler warning in dlopen self test.
6751         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Fix unused
6752         variable warning in test program.
6753         * THANKS: Update.
6754
6755 2010-06-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6756
6757         Fix cleaning of uninstalled w32 shell wrapper in subdirs.
6758         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not
6759         override global objdir variable, instead use odir for the
6760         directory of to-be-removed files.  Drop unneeded origobjdir.
6761         Report by Charles Wilson.
6762
6763 2010-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6764
6765         Enable colored Autotest testsuite output if available.
6766         * tests/testsuite.at: Move AT_INIT call down to late in the
6767         file, all prior code can go beforehand.
6768         Call AT_COLOR_TESTS if defined.
6769
6770 2010-06-14  Peter O'Gorman  <peter@pogma.com>
6771
6772         Pass resident test with --disable-shared too.
6773         * tests/resident.at: use LTDL_SET_PRELOADED_SYMBOLS.
6774
6775 2010-06-13  Peter O'Gorman  <peter@pogma.com>
6776
6777         Test with --disable-shared at release time too.
6778         * HACKING: Note it.
6779
6780         Avoid failure for --disable-shared.
6781         * tests/lt_dladvise.at: Hack.
6782
6783         Use LTDL_SET_PRELOADED_SYMBOLS to avoid failure.
6784         * tests/exceptions.at: Use it.
6785
6786 2010-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6787
6788         Print Libtool project URL in program --help output.
6789         * configure.ac (AC_INIT): Set PACKAGE argument to `GNU Libtool',
6790         so Autoconf knows this is GNU software.  For Autoconf < 2.64,
6791         if AC_PACKAGE_URL is not defined, substitute PACKAGE_URL.
6792         * Makefile.am (edit): Substitute PACKAGE_URL.
6793         ($(srcdir)/tests/package.m4): Also depend on Makefile.am.
6794         Define AT_PACKAGE_URL, for `tests/testsuite --help' output.
6795         * libltdl/config/getopt.m4sh (func_help): Also extract comment
6796         lines that mention a home page and general GNU help.
6797         * libltdl/config/ltmain.m4sh: Use @PACKAGE_BUGREPORT@ instead of
6798         hard-coded list address.  Also mention Libtool home page and
6799         general GNU help web page.
6800         * libtoolize.m4sh: Likewise.
6801
6802 2010-06-12  Peter Rosin  <peda@lysator.liu.se>
6803             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6804
6805         Improve libdir usage from within ltdl on MinGW.
6806         * libltdl/ltdl.c (parse_dotla_file) [__WINDOWS__]: Read the
6807         libdir entry in the .la file, but accept it only if it is not
6808         a unix-style absolute name.
6809         * tests/ltdl-libdir.at: New test that checks if ltdl finds an
6810         installed module via the libdir variable in the .la file.  On
6811         MinGW, use a Windows-style libdir name including drive spec.
6812         * Makefile.am: Add above.
6813
6814 2010-06-11  Peter O'Gorman  <peter@pogma.com>
6815
6816         Skip bindir install test if we're not building shared.
6817         * tests/bindir.at: Skip install test if necessary.
6818         * THANKS: Update.
6819         Report by Michael E Faenza.
6820
6821 2010-06-11  Gary V. Vaughan  <gary@gnu.org>
6822
6823         Use getopt.m4sh to generate libtoolize option parser.
6824         * libtoolize.m4sh: Replace hand written shell code with a
6825         call to M4SH_GETOPTS.  Move some premature initialization
6826         from the preamble to the main part of the script.  Exit with
6827         an error on spurious additional non-option arguments.
6828         (envopts): Integrate LIBTOOLIZE_OPTIONS pre-parsing into the
6829         main option parsing loop.
6830         (opt_copy): Use in place of and in the reverse sense of the
6831         old opt_link variable.
6832
6833 2010-06-10  Peter O'Gorman  <peter@pogma.com>
6834
6835         Create reloadable object files with non-pic objects too.
6836         * libltdl/config/ltmain.m4sh: When not building a shared
6837         library, use the non-pic objects to create a reloadable
6838         object, because pic objects do not exist.
6839
6840 2010-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6841
6842         Ensure libltdl is up to date for check-local.
6843         * Makefile.am (LTDL_BOOTSTRAP_DEPS): New variable.
6844         (all-local): Use it to simplify dependencies.
6845         (testsuite_deps_uninstalled): Add $(LTDL_BOOTSTRAP_DEPS).
6846         Report by Peter Rosin.
6847
6848 2010-06-10  Gary V. Vaughan  <gary@gnu.org>
6849
6850         Support shell tracing inside functions even with ksh.
6851         * libltdl/config/getopt.m4sh: Set $opt_debug to be either `:'
6852         or `set -x' depending on whether --debug was parsed to match
6853         usage in libtoolize.m4sh and ltmain.m4sh.
6854         * clcommit.m4sh, libltdl/config/announce-gen.sh: Instead of
6855         `$opt_debug && ...', use `test "$opt_debug" != ":" && ...'.
6856         * clcommit.m4sh, libltdl/config/announce-gen.m4sh,
6857         libltdl/config/getopt.m4sh, libltdl/connfig/mailnotify.m4sh:
6858         Execute at the start of functions to cater to ksh, which
6859         resets `-x' inside shell functions.
6860
6861         Fix a typu in HACKING.
6862         * HACKING (Release Procedure): s/Makeflie/Makefile/.
6863
6864 2010-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6865
6866         Factorize testing gcj installation in the testsuite.
6867         * tests/testsuite.at (LT_AT_TAG): For the GCJ tag, actually
6868         try to compile a .java file when deciding whether to skip.
6869         (LT_AT_EXEC_TAG): New macro, to also ensure runnability.
6870         * tests/convenience.at (Java convenience archives): Use
6871         LT_AT_EXEC_TAG, simplify accordingly.
6872         * tests/flags.at (passing lt_tag flags through libtool): Use
6873         m4_defn for tag so LT_AT_TAG works.
6874         * tests/infer-tag.at (GCJ inferred tag): Simplify.
6875         * THANKS: Update.
6876         Report by Warren Dodge.
6877
6878 2010-06-09  Peter O'Gorman  <peter@pogma.com>
6879
6880         Skip demo-nopic tests if SELinux policy will cause failure.
6881         * tests/demo-nopic.test: Check SELinux policy and skip if
6882         necessary.
6883
6884 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
6885
6886         Set SCM version number to 2.2.11a.
6887         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6888         number to 2.2.11a.
6889         * NEWS: Updated.
6890
6891         GNU Libtool 2.2.10 was released.
6892
6893         Prepare for next release.
6894         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version number
6895         to 2.2.10.
6896         * NEWS: Update version number.
6897
6898         Fix a quoting bug with ./commit -a 'A U Thor'.
6899         * clcommit.m4sh (func_commit): Use func_show_eval when calling
6900         git, so that the previously func_quote_for_eval()ed $git_flags is
6901         expanded properly.
6902
6903 2009-09-15  Peter Rosin  <peda@lysator.liu.se>
6904
6905         Don't try the MSYS libdir path on MinGW.
6906         * libltdl/ltdl.c (parse_dotla_file) [mingw]: The absolute
6907         libdir path in the .la file is recorded as an MSYS (POSIX
6908         style) path. Make sure it isn't tried when locating the
6909         shared library.
6910         * NEWS: Updated.
6911
6912 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
6913
6914         Simplify license variations, and add missing license texts.
6915         * ChangeLog, ChangeLog.1996, ChangeLog.1997, ChangeLog.1998,
6916         ChangeLog.1999, ChangeLog.2000, ChangeLog.2001, ChangeLog.2002,
6917         ChangeLog.2003, ChangeLog.2004, ChangeLog.2005, ChangeLog.2006,
6918         ChangeLog.2007, ChangeLog.2008, ChangeLog.2009, NEWS: Add
6919         all-permissive license.
6920         * HACKING, README, README.alpha, TODO: Relax license to RMS
6921         encouraged all-permissive terms.
6922         * libltdl/README: Ditto. I added the original license text in
6923         2007, and there's no need for it to be so long for such a trivial
6924         file.
6925         * libltdl/config/getopt.m4sh, libltdl/general.m4sh: Cvs-utils is
6926         dead, and I am the author of these files, so consolidated license
6927         terms to match regular Libtool licensing.
6928         * HACKING (Licensing Rules): Update wording, and list of files for
6929         the all permissive license.
6930         (GPL with CVS-Utils exception clause): Removed.  No files have these 
6931         license any more.
6932         (GPL with Libtool exception clause): Ditto, only libltdl/README
6933         used to be distributed with this variation.
6934         * AUTHORS: Add GPL license text.
6935         
6936         Fix a type in the 2.2.8 release notes.
6937         * NEWS: s/ romoted/ promoted/ in the 2.2.8 release notes.
6938
6939         Don't warn about the blank line inserted into git commit message.
6940         * clcommit.m4sh: When searching for accidental commits of mutliple
6941         changes, ignore the second line of the message, which we inserted
6942         earlier to support "git log --oneline".
6943
6944         Enable correct extraction of multiline copyright from --version.
6945         * libltdl/config/getopt.m4sh: Wrap copyright notice at 76
6946         columns.
6947         (func_version): Don't omit spaces when merging multiline copyright
6948         notices.
6949         * clcommit.m4sh, libtoolize.m4sh: Wrap copyright notice at 76
6950         columns.
6951
6952         * NEWS (2.2.8): BlueGene compiler tests were performed on BG/P
6953         systems, not BG/L.
6954         Reported by Christian Rössel <christian.roessel@gmx.de>
6955
6956 2010-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6957
6958         Fix testsuite helper macros to not hide failure.
6959         * tests/testsuite.at (LT_AT_CONFIGURE, LT_AT_MAKE):
6960         Do not wrap AT_CHECK in a subshell, so that failures are
6961         properly propagated; instead, move environment changes inside
6962         the AT_CHECK code.
6963         Report and analysis by Peter Rosin.
6964
6965         Avoid autom4te warning about unnamed diversion.
6966         * libltdl/config/getopt.m4sh: Use diversion name KILL not -1.
6967
6968 2010-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6969
6970         Make versioning test stricter for w32, enable shared libs.
6971         * tests/versioning.at (versioning): Add -no-undefined to
6972         LDFLAGS.
6973         (test_uninstalled): Also move $bindir out of the way
6974         temporarily.
6975
6976         Fix versioning test for LDFLAGS=-Wl,--as-needed.
6977         * tests/versioning.at (versioning): For the library update
6978         hypotheses, ensure the unchanged library libb isn't accidentally
6979         relinked against the new liba, by not reinstalling libb.
6980         Fixes testsuite failure for the incompatible update case with
6981         LDFLAGS=-Wl,--as-needed.
6982         * THANKS: Update.
6983         Report by Ryan Hill.
6984
6985 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6986
6987         Rewrite manual intro to be gender-neutral.
6988         * doc/libtool.texi (Introduction): Use gender-neutral
6989         formulation when addressing developers.
6990
6991 2010-06-05  Gary V. Vaughan  <gary@gnu.org>
6992
6993         Update and simplify all m4sh scripts to use latest getopt.m4sh.
6994         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Rewrite option
6995         parsing loop over M4SH_GETOPTS macro, and adjust all clients of
6996         option variables to use generated option names.
6997
6998         Add missing quote for literal ? in a shell case statement.
6999         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Quote initial ?
7000         correctly for use in a shell case statement.
7001
7002         Quote command line arguments after --rcfile properly.
7003         * libltdl/config/announce-gen.m4sh (--rcfile): Quote remaining
7004         arguments shell variable expression correctly for eval.
7005         
7006         Shift correctly in numbered option argument collection.
7007         * libltdl/config/getopt.m4sh (_m4go_option): Argument list also
7008         needs to be `shift'ed in the shell option loop after processing a
7009         numbered argument collection.
7010
7011         Fetch from new upstream host for config.guess and config.sub.
7012         * Makefile.maint (WGET_CGIT): Location of newest config.guess and
7013         config.sub upstream.
7014         (fetch): Fetch config.guess and config.sub from WGET_CGIT, rather
7015         than no-longer-updating WGET_SGO location.
7016
7017         Update generated upload directive file format to v1.1.
7018         * Makefile.maint (git-dist, diffs): Update to generate v1.1 format
7019         directive files for ftp://ftp-upload.gnu.org/incoming/ftp.
7020
7021         Fix web manual generation details in release instructions.
7022         * HACKING (Release Procedure): Move the instruction for generating
7023         web manuals for a new release to before the instruction that bumps
7024         the version numbers to the post release values.
7025
7026         Set SCM version number to 2.2.9a.
7027         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
7028         number to 2.2.9a.
7029         * NEWS: Updated.
7030
7031         GNU Libtool 2.2.8 was released.
7032
7033         Prepare for next release.
7034         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
7035         number to 2.2.8.
7036         * NEWS: Update version number.
7037         * INSTALL, libltdl/config/install-sh, libltdl/config/config.guess,
7038         libltdl/config/config.sub, libltdl/config/texinfo.tex: Updated
7039         from canonical source.
7040
7041         Provide an m4sh reimplementation of announce-gen.
7042         * libltdl/config/getopt.m4sh (M4SH_GETOPTS): New macro that takes
7043         a quoted m4 list of command line options to be parsed, and
7044         generates the shell code to parse those options and collect the
7045         results into appropriately named 'opt_xxx' shell variables.  Also,
7046         add some private supporting macros, and improve the comments
7047         radically.
7048         * libltdl/config/announce-gen.m4sh: New file, to generate and
7049         optionally post (an enhancement over the gnulib perl script of the
7050         same name) a release announcement.
7051         * Makefile.maint (announce-gen): Build a new announce-gen script
7052         in the build directory, from the contents of
7053         libltdl/config/announce-gen.m4sh.
7054         * HACKING (Release Procedure): Update the instructions to use
7055         announce-gen.
7056         (Alpha release note template, Full release note template):
7057         Removed.
7058
7059 2010-05-22  Gary V. Vaughan  <gary@gnu.org>
7060
7061         Support "git log --oneline" in generated commit messages.
7062         * clcommit.m4sh (func_check_commit_msg): Insert an empty line
7063         between the ChangeLog entry summary line and the ChangeLog entry
7064         body, so that "git log --oneline" works properly.
7065         Bump copyright and version number.
7066         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7067
7068 2010-05-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7069
7070         * HACKING: Set Reply-To: in announcement emails.
7071
7072 2010-05-21  Gary V. Vaughan  <gary@gnu.org>
7073
7074         Set SCM version number to 2.2.7c.
7075         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
7076         number to 2.2.7c.
7077         * NEWS: Updated.
7078
7079         GNU Libtool 2.2.7b  was released.
7080
7081         Prepare for next release candidate.
7082         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
7083         number to 2.2.7b.
7084         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
7085         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: These files
7086         have been updated without a serial bump since the last release.
7087         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Bump Revision, to
7088         account for bugfixes since the last release.
7089         * libltdl/config/install-sh, libltdl/config/config.guess,
7090         libltdl/config/config.sub, libltdl/config/texinfo.tex,
7091         INSTALL: Updated from canonical source.
7092         * NEWS: Update with missing entries from ChangeLog.
7093         * HACKING: Note workaround for developer tool-path leakage bug.
7094
7095         Skip some tests in --disable-ltdl-install mode.
7096         * tests/dlloader-api.at, tests/exceptions.at,
7097         tests/lalib-syntax.at, tests/loadlibrary.at,
7098         tests/lt_dlopenext.at, tests/resident.at: Detect when these
7099         tests try to link against the not installed libltdl.la, and
7100         skip rather than FAIL.
7101
7102 2010-05-05  Peter Rosin  <peda@lysator.liu.se>
7103
7104         Clarify versioning algorithm documentation.
7105         * doc/libtool.texi (Updating version info): Be explicit
7106         about setting age to zero on interface change.
7107         Reported by Jef Driesen <jefdriesen@hotmail.com>
7108
7109 2010-05-04  Peter O'Gorman  <peter@pogma.com>
7110
7111         Ranlib is required with -force_load and fat archives.
7112         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Run
7113         ranlib.
7114         Reported by Jeremy Huddleston <jeremyhu@apple.com>
7115
7116 2010-04-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7117
7118         Fix incompatible struct declarations.
7119         * doc/libtool.texi (Dlpreopening): Remove broken documentation
7120         of lt_dlsymbol and lt_dlsymlist.  Document typedef lt_dlsymlist
7121         and symbol lt_preloaded_symbols according to the implementation.
7122         * tests/demo/dlmain.c (lt_symlist): Make struct anonymous ...
7123         (lt_dlsymlist): ... and typedef to this name.
7124         (lt_preloaded_symbols, main): Adjust.
7125         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
7126
7127 2010-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7128
7129         Use linker_flags not compiler_flags with $LD.
7130         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]
7131         <archive_cmds, archive_expsym_cmds>: With xlf and bgxlf
7132         compilers, when linking with $LD, use $linker_flags not
7133         $compiler_flags.
7134
7135 2010-03-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7136
7137         Add FAQ, and FAQ entry for flags stripped at library link time.
7138         * doc/libtool.texi (FAQ, Stripped link flags): New nodes.
7139         (Wrapper executables): Replace bug address with macro.
7140         (Compile mode, Link mode): Document `-Wc,' and `-Xcompiler '
7141         semantics better.
7142         * libltdl/config/ltmain.m4sh (func_mode_link): Rewrite comment
7143         for the flags that are passed through.
7144         Prompted by reports from Simon Richter <Simon.Richter@hogyros.de>,
7145         Török Edwin <edwintorok@gmail.com> and
7146         Åke Sandgren <ake.sandgren@hpc2n.umu.se>.
7147
7148 2010-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7149
7150         Fix preloader symbol list declaration in libltdl.
7151         * libltdl/ltdl.c (preloaded_symbols): Fix declaration to include
7152         array brackets.
7153         (lt_dlinit): Do not take address of preloaded_symbols.
7154
7155         Fix typo in libtool --help output.
7156         * libltdl/config/ltmain.m4sh (func_mode_help): Fix typo in help
7157         output.
7158
7159         Fix a couple of documentation errors.
7160         * doc/libtool.texi (Autoconf macros): Improve hyphenation.
7161         (Using libltdl): libltdl uses the Lesser General Public License,
7162         not the Library General Public License.
7163
7164         Do not use @sc nor @acronym in the manual.
7165         * doc/libtool.texi: Remove all usage of @sc.
7166
7167 2010-03-19  Chris Demetriou  <cgd@google.com>
7168
7169         Sort output of 'find' to enable deterministic builds.
7170         * libltdl/config/ltmain.m4sh (func_extract_archives): Sort
7171         output of 'find'.
7172         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Likewise.
7173         * THANKS: Update.
7174
7175 2010-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7176
7177         Unconditionally normalize LC_ALL, LANGUAGE in libtool script.
7178         * libltdl/config/ltmain.m4sh: Unconditionally set LC_ALL and
7179         LANGUAGE to 'C', to avoid semantic differences on MinGW under
7180         Chines locale.  SCO issues with e.g. LANG=C are not known to
7181         be relevant today any more.
7182         Report by Pete Batard <pbatard@gmail.com> and Xiaofan Chen
7183         <xiaofanc@gmail.com>.
7184
7185 2010-03-17  Peter Rosin  <peda@lysator.liu.se>
7186
7187         Preserve the last error when restoring the error mode.
7188         * libltdl/loaders/loadlibrary.c (wm_open): Don't rely on
7189         SetThreadErrorMode (or SetErrorMode) to not clobber the last
7190         error.
7191         Report by Ralf Wildenhues.
7192
7193         Use Get/SetThreadErrorMode if they are available.
7194         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): Replaced...
7195         (wrap_getthreaderrormode): ...by this function that checks
7196         first for GetThreadErrorMode, then GetErrorMode and makes use
7197         of either of those or...
7198         (fallback_getthreaderrormode): ...else falls back to this
7199         replacement function that implements the old workaround, which
7200         was previously implemented in...
7201         (fallback_geterrormode): ...this now renamed function.
7202         (geterrormode): Replaced...
7203         (getthreaderrormode): ...by this function pointer that points
7204         at either of wrap_getthreaderrormode, GetThreadErrorMode,
7205         GetErrorMode or fallback_getthreaderrormode.
7206         (wrap_setthreaderrormode): New function that checks if
7207         SetThreadErrorMode is supported by the system and makes use of
7208         it if it is.
7209         (fallback_setthreaderrormode): New function that is used
7210         otherwise that implements the old version using SetErrorMode.
7211         (setthreaderrormode): New function pointer that points at
7212         either of wrap_setthreaderrormode, SetThreadErrorMode or
7213         fallback_setthreaderrormode.
7214         (vm_open): Adjust to the above.
7215
7216 2010-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7217
7218         Detect Sun compiler suite with 'sun'-prefixed names.
7219         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
7220         (_LT_SYS_HIDDEN_LIBDEPS) [solaris]: Accept compiler names sunCC,
7221         sunf77, sunf90, sunf95 in addition to CC, f77, f90, f95.
7222         * NEWS: Update.
7223         Report by Vadim Zeitlin.
7224
7225 2010-02-28  Pierre Ossman  <ossman@ossman.lkpg.cendio.se>  (tiny change)
7226             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7227
7228         Fix deplibs check fallback for 64-bit Windows and Windows CE.
7229         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Accept file formats
7230         'pe-arm-wince' and 'pe-x86-64'.  Add note about consistency with ...
7231         * libltdl/config/ltmain.m4sh (func_win32_libid): ... the respective
7232         pattern here; sync pattern from the former.
7233         * tests/deplibs-mingw.at (deplibs without file command): New
7234         file, new test.
7235         * Makefile.am (TESTSUITE_AT): Update.
7236         * NEWS: Update.
7237
7238 2010-02-24  Scott McCreary  <scottmc2@gmail.com>  (tiny change)
7239
7240         Update search path on Haiku for legacy system directory.
7241         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [haiku]
7242         <sys_lib_dlsearch_path_spec>: Replace legacy
7243         /boot/beos/system/lib directory with /boot/system/lib.
7244         * THANKS: Update.
7245
7246 2010-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7247
7248         manual: fix detailmenu ordering.
7249         * doc/libtool.texi (Top): Add section for `Linking executables'
7250         in the detailmenu.
7251
7252 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
7253
7254         Guard against strerror()==NULL
7255         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main):
7256         Check return value of strerror() using nonnull().
7257         (func_emit_cwrapperexe_src:find_executable): Ditto.
7258         (func_emit_cwrapperexe_src:chase_symlinks): Ditto.
7259
7260 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
7261
7262         Document wrapper changes.
7263         * NEWS: Indicate new feature and incompatibility.
7264         * doc/libtool.texi [detailmenu]: Add reference to subsection
7265         'Wrapper executables for programs', in Platform Quirks category.
7266         [Linking executables]: Mention wrapper executables, in
7267         addition to wrapper scripts. Add menu referencing subsection
7268         'Wrapper executables for programs'.
7269         [Wrapper executables for programs]: New subsection. Documents
7270         cwrapper rationale and command line options.
7271
7272 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
7273
7274         Add --lt-* options to shell wrapper
7275         * libltdl/config/ltmain.m4sh (func_emit_wrapper): Call
7276         func_parse_lt_options early. Use func_exec_program.
7277         (func_emit_wrapper:func_parse_lt_options): New function.
7278         (func_emit_wrapper:func_lt_dump_args): New function.
7279         (func_emit_wrapper:func_exec_program_core): New function.
7280         (func_emit_wrapper:func_exec_program): New function.
7281
7282 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
7283
7284         Enable runtime cwrapper debugging; add tests
7285         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
7286         Update comments. Initialize program_name. Eliminate _LENGTH
7287         variables for string constants. In debug mode, print a
7288         banner with known content before any other output. Remove
7289         LTWRAPPER_DEBUGPRINTF macro. Add constants and variables
7290         to support new --lt-debug option.
7291         (func_emit_cwrapperexe_src:ltwrapper_debugprintf): Renamed to...
7292         (func_emit_cwrapperexe_src:lt_debugprintf): this. Only print
7293         messages if lt_debug != 0. Ensure appearance of messages
7294         conforms to GCS.
7295         (func_emit_cwrapperexe_src:lt_fatal): Ditto.
7296         (func_emit_cwrapperexe_src:lt_error_core): Ditto.
7297         (func_emit_cwrapperexe_src): Update all callers to lt_fatal.
7298         Update all users of LTWRAPPER_DEBUGPRINTF (()) to call
7299         lt_debugprintf () directly.
7300         (func_emit_cwrapperexe_src:main): Consolidate option parsing.
7301         Ensure first use of lt_debugprintf occurs after option parsing.
7302         Add stanza to parse for --lt-debug and set lt_debug variable.
7303         Use strcmp rather than strncmp, where safe.
7304         * tests/cwrapper.at: Add new tests for --lt-debug and
7305         -DLT_DEBUGWRAPPER.
7306
7307 2010-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7308
7309         Use --email with gendocs.sh.
7310         * Makefile.maint (web-manual): Pass bug reporting address to
7311         gendocs.sh.
7312
7313         Make testsuite code C++ clean again.
7314         * tests/resident.at (resident modules): Fix for C++.
7315
7316 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
7317             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7318
7319         Testsuite exposure for dlloader API.
7320         * tests/dlloader-api.at: New file, new test.
7321         * Makefile.am (TESTSUITE_AT): Update.
7322
7323 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
7324
7325         * tests/loadlibrary.at: Fix C++ issues.
7326
7327 2010-01-20  Peter Rosin  <peda@lysator.liu.se>
7328
7329         Report proper errors from the loadlibrary loader.
7330         * libltdl/loaders/loadlibrary.c (loadlibraryerror): New
7331         helper function that returns the latest Windows error as a
7332         string, or the provided default string on failure to do so.
7333         (LOADLIB_SETERROR): New macro that wraps previous to make it
7334         easy to use.
7335         (vm_open, vm_close, vm_sym): Make use of previous.
7336         (LOCALFREE): New macro to help free the Windows error string.
7337         (vl_exit): Make use of previous.
7338         * tests/loadlibarry.at: New file, new test that makes sure
7339         the loadlibrary loader reports non-standard error messages.
7340         * Makefile.am (TESTSUITE_AT): Add above test.
7341
7342 2010-01-02  Peter Rosin  <peda@lysator.liu.se>
7343
7344         Use GetErrorMode if it is available.
7345         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): New
7346         function that checks if GetErrorMode is supported by the
7347         system and makes use of it if it is.
7348         (fallback_geterrormode): New function that is used otherwise
7349         that implements the old workaround.
7350         (geterrormode): New function pointer that points at either
7351         of the above or directly at GetErrorMode.
7352         (vm_open): Make use of the above.
7353
7354 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7355
7356         Ensure functions from resident modules work in atexit handlers.
7357         * tests/resident.at (resident modules): New file, new test.
7358         * Makefile.am (TESTSUITE_AT): Adjust.
7359         Report by Bob Friesenhahn.
7360
7361         Testsuite exposure for relative output file names and deplibs.
7362         * tests/deplib-in-subdir.at (deplib in subdir): New file, new
7363         test.
7364         * Makefile.am (TESTSUITE_AT): Update.
7365         Prompted by report from Bob Friesenhahn.
7366
7367 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7368             Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7369
7370         Testsuite exposure for C++ exception handling.
7371         * tests/exceptions.at (C++ exception handling): New file, new
7372         test.
7373         * Makefile.am (TESTSUITE_AT): Update.
7374         Report by Bob Friesenhahn.
7375
7376 2010-01-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7377
7378         Bump copyright years.
7379         * ChangeLog.2009: New, rotated from ...
7380         * ChangeLog: ... here.
7381         * Makefile.am (EXTRA_DIST): Add ChangeLog.2009.
7382         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
7383         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
7384         * libtoolize.m4sh: Likewise.
7385
7386 2009-12-30  Peter Rosin  <peda@lysator.liu.se>
7387
7388         * libltdl/ltdl.c (lt_dlerror): Remove meaningless conditional.
7389
7390 2009-12-29  Peter Rosin  <peda@lysator.liu.se>
7391
7392         * libltdl/ltdl.c (file_not_found): Fix typos in code comment.
7393
7394 2009-12-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7395
7396         Replace last __oline__ instance.
7397         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Replace last
7398         __oline__ instance with $LINENO.
7399
7400 2009-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7401
7402         Improve parsing of .la files in libltdl.
7403         * libltdl/ltdl.c (trim): Do not dump core upon missing quote in
7404         module .la file.
7405         * tests/lalib-syntax.at (syntax of .la files): New file, new
7406         test.
7407         * Makefile.am (TESTSUITE_AT): Add tests/lalib-syntax.at.
7408         Report by Bob Friesenhahn.
7409
7410 2009-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7411
7412         Sane fallback initialization of $ECHO from $as_echo.
7413         * libltdl/config/general.m4sh: Use 'printf %s\n' if $as_echo is
7414         unset.
7415         * tests/testsuite.at: Likewise.
7416         * THANKS: Update.
7417         Report by Vadim Zeitlin and Peter Rosin.
7418
7419 2009-12-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7420
7421         lt_dlloader_remove and lt_dlloader_find accept const arguments.
7422         * libltdl/lt_dlloader.c (lt_dlloader_remove, lt_dlloader_find):
7423         Accept `const char *' arguments, as documented.  Cast them to
7424         `void *' for the slist machinery.
7425         * libltdl/libltdl/lt_dlloader.h: Adjust prototypes.
7426
7427         Test and fix slist.c.
7428         * libltdl/libltdl/slist.h: Include stddef.h, for size_t.
7429         (slist_remove): Return pointer to SList, not void.
7430         * libltdl/slist.c: Include stdlib.h, for malloc and free.
7431         (slist_remove): Adjust prototype as above.
7432         (slist_sort): Do not loop forever on one-item list.
7433         * tests/slist.at (SList functionality): New file, new test.
7434         * Makefile.am (TESTSUITE_AT): Add tests/slist.at.
7435
7436 2009-11-30  Peter Rosin  <peda@lysator.liu.se>
7437
7438         Please C++ compilers when calling strrchr.
7439         * libltdl/ltdl.c (has_library_ext): Match the return type of
7440         strrchr with the first argument to please C++ compilers.
7441         Report by Peter O'Gorman.
7442
7443 2009-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7444
7445         Fix bindir and dlopen tests for C++ compilers (CC=g++).
7446         * tests/bindir.at (bindir basic lib test, bindir install tests):
7447         Include stdlib.h rather than declaring abort.
7448         * tests/lt_dlopenext.at (lt_dlopenext error messages): Use
7449         `extern "C"' annotation for dlsym'ed function in C++ mode.
7450
7451 2009-11-25  Peter Rosin  <peda@lysator.liu.se>
7452
7453         Fix cross build issue in execute mode test.
7454         * tests/execute-mode.at: Skip test for cross builds.
7455
7456 2009-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7457
7458         Enable symbol versioning with the GNU gold linker.
7459         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Accept 'GNU gold'
7460         in the version string.
7461         * NEWS, THANKS: Update.
7462         Report by Peter Fritzsche.
7463
7464         Tighten regex for Portland C++ compiler for version 10.
7465         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [linux]:
7466         Match a dot after version 1 through 5, so 10 and up don't match,
7467         and use weak symbols.
7468         * THANKS: Update.
7469         Report by Jeff Squyres and Brent Leback.
7470
7471 2009-11-16  Peter O'Gorman  <peter@pogma.com>
7472
7473         Update libltdl version to match 2.2.6b release.
7474         * libltdl/Makefile.inc: Make version 9:1:2
7475
7476 2009-11-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7477
7478         Don't load module.la from current directory by default.
7479         * libltdl/ltdl.c (try_dlopen): Do not attempt to load an
7480         unqualified module.la file from the current directory (by
7481         default) since doing so is insecure and is not compliant with
7482         the documentation.
7483         * tests/testsuite.at: Qualify access to module.la file in
7484         current directory so that test passes.
7485
7486 2009-11-14  Peter O'Gorman  <peter@pogma.com>
7487
7488         Only use preopen loader to load preopened archives
7489         * libltdl/ltdl.c: Limit checking of .a to preopen loader.
7490         * tests/lt_dlopen_a.at: Add test.
7491         * Makefile.am: Add test.
7492
7493 2009-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7494
7495         Recognize `pgfortran' as Portland compiler.
7496         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS):
7497         Accept `pgfortran*' too.
7498         Report by Jeff Squyres.
7499
7500 2009-11-04  Alexandre Oliva  <aoliva@redhat.com>
7501             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7502
7503         Fix verbose link extraction for multiply reconfigured GCC.
7504         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
7505         <output_verbose_link_cmd>: Drop GCC lines "Configured with" that
7506         may contain unrelated flags.
7507
7508 2009-11-02  Eric Blake  <ebb9@byu.net>
7509
7510         Allow gcc builds with -Wall -Werror.
7511         * libltdl/ltdl.c (try_dlopen): Use strlen rather than LT_STRLEN on
7512         an array that will never be NULL.
7513
7514 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7515
7516         Fix func_normal_abspath sed script for Solaris.
7517         * libltdl/config/general.m4sh (pathcar, pathcdr, removedotparts)
7518         (collapseslashes, finalslash): Use single quotes, for clarity.
7519         (removedotparts): Avoid \{N,M\} after subexpression \(...\), for
7520         Solaris /bin/sed.
7521
7522         Improve versioning algorithm documentation.
7523         * doc/libtool.texi (Updating version info): Repeat the
7524         algorithms in different, hopefully simpler terms.
7525         * THANKS: Update.
7526         Prompted by Richard B. Kreckel.
7527
7528 2009-11-01  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
7529
7530         Support for the Haiku operating system.
7531         * libltdl/config/ltmain.m4sh (func_mode_link): Add cases for
7532         `*-*-haiku*' alongside `*-*-beos*'.
7533         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
7534         (_LT_CHECK_MAGIC_METHOD, LT_LIB_M, _LT_COMPILER_PIC)
7535         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Add cases for
7536         `haiku*'.
7537         * NEWS, THANKS: Update.
7538
7539 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7540
7541         Fix quoting of AS, DLLTOOL, and OBJDUMP for the libtool script.
7542         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Quote values of
7543         $AS, $DLLTOOL, and $OBJDUMP, so they can contain arguments.
7544         * THANKS: Update.
7545         Report by Matthijs Kooijman.
7546
7547 2009-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7548
7549         Initial support for the Cuda Compiler Driver on Linux.
7550         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept source
7551         file extensions `.cu' and `.cup'.
7552         * libltdl/m4/libtool.m4 (_LT_COMPILER_NO_RTTI, _LT_COMPILER_PIC)
7553         (_LT_LINKER_SHLIBS): Support for `nvcc' compiler driver.
7554         * NEWS, THANKS: Update.
7555         Report by Mahesh Narayanamurthi.
7556
7557 2009-09-12  Dave Korn  <dave.korn.cygwin@googlemail.com>
7558
7559         Control where win32 DLLs get installed.
7560         * libltdl/config/general.m4sh (func_normal_abspath): New function.
7561         (func_relative_path): Likewise.
7562         * libltdl/config/ltmain.m4sh (func_mode_help): Document "-bindir".
7563         (func_mode_link): Accept new "-bindir" option and use it, if
7564         supplied, to place Windows DLLs.
7565         * tests/bindir.at: New file for install tests using "-bindir".
7566         * Makefile.am (TESTSUITE_AT): Add bindir.at.
7567         * doc/libtool.texi (Link Mode): Update documentation.
7568         * NEWS, THANKS: Update.
7569
7570 2009-09-11  Akim Demaille  <demaille@gostai.com>
7571
7572         libtool: clean libconftest.a.
7573         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Here.
7574
7575 2009-09-10  Peter Rosin  <peda@lysator.liu.se>
7576
7577         func_win32_libid doesn't work with MS dumpbin
7578         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): The $NM
7579         interface is assumed to be BSD nm in func_win32_libid, so
7580         check for that before using it.
7581
7582 2009-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7583
7584         Allow dlopen self test to work with gcc's -fvisibility=hidden.
7585         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Declare default
7586         visibility for the symbol we are going to test dlopen (NULL)
7587         when a GCC version is used that understands the visibility
7588         attribute, under the assumption that if -fvisibility=hidden
7589         will be used, the user code will be sufficiently annotated
7590         for visibility of needed symbols from the main executable.
7591         * THANKS: Update.
7592         Report by Josh Hursey against OpenMPI.
7593
7594         Fix and split recent testsuite addition for compile/link flags.
7595         * tests/flags.at (passing flags through libtool): Split into ...
7596         (passing CC flags through libtool)
7597         (passing CXX flags through libtool)
7598         (passing F77 flags through libtool)
7599         (passing FC flags through libtool)
7600         (passing GCJ flags through libtool): ... these five tests,
7601         factorized with m4_foreach.  Fix F77 and FC compile and link
7602         commands; add GCJ tag.  Use LT_AT_TAG to correctly skip tags
7603         for which no compiler exists.  Use $EXEEXT where appropriate.
7604         Drop unneeded use of reload_cmds.
7605         Reports by Peter Rosin and Peter O'Gorman.
7606
7607 2009-09-07  Peter O'Gorman  <peter@pogma.com
7608
7609         Fix redirect in test case.
7610         * tests/darwin.at: Fix stderr redirect.
7611
7612         Use darwin's -force_load flag if available for whole_archive_flag_spec
7613         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check for
7614         -force_load and use it if there.
7615         * tests/darwin.at: Add a simple test.
7616
7617 2009-09-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7618
7619         Testsuite keyword 'interactive' and check-* rules.
7620         * Makefile.am (testsuite_deps, testsuite_deps_uninstalled):
7621         New variables.
7622         (check-local, installcheck-local): Use them.
7623         (check-interactive, check-noninteractive): New rules.
7624         * tests/link-order2.at (Link order of deplibs),
7625         tests/static.at (static linking flags for programs): Add keyword
7626         `interactive'.
7627         * doc/libtool.texi (Test descriptions): Document all keywords
7628         used in the Libtool test suite.
7629         * NEWS: Update.
7630
7631         Fix failure test in the presence of --with-pic or -prefer-pic.
7632         * tests/fail.at (Failure tests): Run non-PIC failure test only
7633         if pic_mode is 'default' or 'no', rather than 'default' or 'yes'
7634         and also -prefer-pic has not been passed in $CFLAGS.
7635         * THANKS: Update.
7636         Report by Donn Washburn.
7637
7638         Add testsuite exposure for passing of compiler and linker flags.
7639         * tests/flags.at (passing flags through libtool): New file, new
7640         test, for bug fixed in previous commit.
7641         * Makefile.am (TESTSUITE_AT): Add tests/flags.at.
7642
7643 2009-09-04  Peter Rosin  <peda@lysator.liu.se>
7644
7645         Make -Wc,FLAG behave like -Xcompiler FLAG in link mode.
7646         * libltdl/config/ltmain.m4sh (func_mode_link): Remove "-Wc,"
7647         instead of replacing it with "$wl" when linking programs
7648         through the compiler driver, just as is the case when linking
7649         libraries.
7650         * NEWS: Update.
7651
7652 2009-08-23  Lennart Poettering  <lennart@poettering.net>  (tiny change)
7653
7654         Shut up prototype warnings with recent GCC and -Wstrict-prototypes.
7655         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Use recent
7656         GCC's diagnostic pragma to override a -Wstrict-prototypes
7657         setting for the symbol list code.
7658         * THANKS: Update.
7659
7660 2009-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7661
7662         Remove __oline__ from macros, for less spurious configure diffs.
7663         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
7664         (_LT_COMPILER_C_O, LT_PATH_NM): Replace __oline__ instances with
7665         $LINENO.
7666         * NEWS: Update.
7667
7668 2009-07-24  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
7669
7670         Fixup 'execute mode' test for w32.
7671         * tests/execute-mode.at (execute mode): Add missing $EXEEXT.
7672         (LDFLAGS): Add -no-undefined.
7673
7674 2009-07-01  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
7675             Charles Wilson  <libtool@cwilson.fastmail.fm>
7676
7677         [CXX] Use correct export_dynamic_flag_spec for PE-COFF $hosts
7678         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [cygwin*|mingw*|pw32*|cegcc*]:
7679         Define export_dynamic_flag_spec as -Wl,--export-all-symbols here as well
7680         (see commit 5f2bbb494a2753afb2878c399cfd8316b7403a5b).
7681
7682 2009-06-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
7683
7684         [mingw] Improve sys_lib_search_path_spec detection.
7685         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Fix handling
7686         of dos-style paths when parsing $CC -print-search-dirs output.
7687
7688 2009-06-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
7689
7690         Finish adding alias for obsoleted AC_LIBTOOL_RC macro.
7691         * libltdl/m4/libtool.m4: Add reminder comment concerning
7692         aclocal-1.4 backwards compatibility.
7693         * libltdl/m4/lt~obsolete.m4: Remove unnecessary AC_DEFUN.
7694
7695 2009-06-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
7696
7697         Add alias for obsoleted AC_LIBTOOL_RC macro.
7698         * libltdl/m4/libtool.m4: Add alias for obsoleted
7699         macro AC_LIBTOOL_RC.
7700
7701 2009-06-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
7702
7703         Remove unneeded functions and options from cwrapper
7704         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
7705         [lt_opt_process_env_set]: Remove.
7706         [lt_opt_process_env_prepend]: Remove.
7707         [lt_opt_process_env_append]: Remove.
7708         [lt_split_name_value]: Remove.
7709         [file scope]: Don't declare removed functions. Remove
7710         constants and defines related to eliminated commandline
7711         options.
7712         [main]: Remove code related to eliminated commandline
7713         options --lt-env-set, --lt-env-prepend, --lt-env-append.
7714
7715 2009-06-19  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
7716             Charles Wilson  <libtool@cwilson.fastmail.fm>
7717
7718         Ensure LT_PATH_LD works when called before LT_INIT
7719         * libltdl/m4/libtool.m4 (LT_PATH_LD): AC_REQUIRE _LT_PROG_ECHO_BACKSLASH.
7720
7721 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7722
7723         Add versioning tests.
7724         * tests/versioning.at (versioning): New file, new test.
7725         * Makefile.am (TESTSUITE_AT): Adjust.
7726         Prompted by bug report from Mike Gorchak.
7727
7728 2009-06-14  Mike Gorchak  <mike@malva.ua>  (tiny change)
7729             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7730
7731         Fix versioning computation for QNX.
7732         * libltdl/config/ltmain.m4sh (func_mode_link): Set `$current'
7733         and `$age' properly for version_type `qnx'.
7734
7735 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7736
7737         Avoid spurious localization testsuite failure on HP-UX/ia64.
7738         * tests/localization.at (localized compiler messages): Skip test
7739         if the compiler warning output contains `locale', for HP-UX.
7740
7741 2009-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7742
7743         Fix concurrent extraction of convenience libraries on Darwin.
7744         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): New libtool
7745         variable `lock_old_archive_extraction', set to `yes' on darwin.
7746         * doc/libtool.texi (libtool script contents): Document it.
7747         * libltdl/config/ltmain.m4sh (func_extract_an_archive): Lock
7748         `ar x' invocation if `lock_old_archive_extraction' is yes.
7749         * tests/darwin.at (darwin concurrent library extraction): New
7750         test.
7751         * NEWS: Update.
7752         Report by Akim Demaille.
7753
7754 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7755
7756         Fix testsuite failure of lt_dlopenadvise test on FreeMiNT.
7757         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Do not
7758         build moddepend for systems without shared libraries.
7759         Report by Alan Hourihane.
7760
7761         testsuite: avoid failures due to old Automake.
7762         * tests/configure-iface.at (installable libltdl)
7763         (--with-ltdl-include/lib, --with-included-ltdl):
7764         Speficy libmodule_la_SOURCES in Makefile.am as the default
7765         source file naming scheme changed in Automake 1.8.
7766         * tests/nonrecursive.at (_LT_AT_LTDL_SETUP): Require Automake
7767         1.9.6.
7768         * THANKS: Update.
7769         Report by Robert Garron.
7770
7771         testsuite: add missing @LIBS@ in a link command line.
7772         * tests/old-m4-iface.at (AC_WITH_LTDL): Use @LIBS@ when linking.
7773         Report by Patrice Fromy.
7774
7775         testsuite: cope when some installed libltdl.la has been removed.
7776         * tests/old-m4-iface.at (AC_WITH_LTDL): Pass --with-included-ltdl
7777         to configure, to ensure we do not accidentally link against a
7778         previously installed libltdl.so where the corresponding .la
7779         file has been removed, thus we do not add a run path, and the
7780         runtime linker then fails to find libltdl.so.7.
7781         * tests/configure-iface.at (--with-ltdl-include/lib): Remove -L
7782         flags from LDFLAGS to avoid picking up an installed libltdl
7783         outside of the default locations.
7784         * THANKS: Update.
7785         Prompted by report from Patrice Fromy.
7786
7787 2009-06-07  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
7788
7789         Fix C wrapper invocation for ceGCC hosts (cegcc and mingw32ce).
7790         * libltdl/config/ltmain.m4sh (func_mode_link): do not generate
7791         C wrapper for cegcc and mingw32ce hosts.
7792         (func_emit_cwrapperexe_src): remove useless check on
7793         __MINGW32CE__.
7794
7795 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7796
7797         Don't pick up double-quotes from /etc/ld.so.conf on Ubuntu.
7798         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
7799         <sys_lib_dlsearch_path_spec>: Remove embedded double quotes from
7800         paths picked up from /etc/ld.so.conf.  Fixes libltdl compile
7801         failure on Ubuntu 7.10.
7802         * THANKS: Update.
7803         Report by Camilo La Rota.
7804
7805 2009-06-06  Richard Sandiford  <richards@transitive.com>
7806
7807         Fix GNU nm invocation for AIX.
7808         * libldtl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
7809         <export_symbols_cmds>: Modify the GNU-nm-on-AIX version so that
7810         it adds weak defined symbols to the export list.
7811
7812         Build AIX shared libraries with binutils 2.19.50+.
7813         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
7814         <lt_use_gnu_ld_interface>: New variable to control whether the
7815         GNU ld or native ld interface is used.  Set to "no" for GNU ld
7816         2.19.50+ on AIX, otherwise mirror $with_gnu_ld.  Update the
7817         warning message that is printed when using GNU ld on AIX.
7818         Adjust the whole_archive_flag_spec value for GNU ld on AIX.
7819         * NEWS, THANKS: Update.
7820
7821 2009-05-27  Peter O'Gorman  <peter@pogma.com>
7822
7823         Don't run compiler checks twice.
7824         libltdl/m4/libtool.m4 (_LT_PROG_FC, _LT_PROG_F77,
7825         _LT_PROG_CXX): Remove these macros.
7826         libltdl/m4/lt~obsolete.m4: Add removed macros here.
7827         libltdl/m4/libtool.m4 (_LT_LANG_FC_CONFIG, _LT_LANG_F77_CONFIG,
7828         _LT_LANG_CXX_CONFIG): Remove references to removed macros, and
7829         move functionality here.
7830         NEWS: Update.
7831
7832 2009-05-05  Rainer Emrich  <r.emrich@de.tecosim.com>  (tiny change)
7833             Peter Rosin  <peda@lysator.liu.se>
7834             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7835
7836         Fix cross compilation for HPPA/64 with a BSD file command.
7837         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
7838         [hpux10.20*, hpux11*, !ia64] <lt_cv_deplibs_check_method>:
7839         Match the dot in `PA-RISC 2.0' literally.  Adjust hppa*64*
7840         pattern to also match BSD `file' output, used in cross
7841         compilation setups.
7842         * THANKS: Update.
7843         Report and initial patch by Rainer Emrich, refined by Peter
7844         Rosin.
7845
7846 2009-05-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7847
7848         libtoolize: ignore trailing junk on scriptversion line.
7849         * libtoolize.m4sh (func_install_update): Ignore semi-colon or
7850         comment-sign and all following characters when parsing a
7851         `scriptversion' line in one of the auxiliary scripts; recent
7852         Automake-provided script have a stylized comment to induce
7853         Emacs to use UTC.
7854         Exposed by the `libtoolize config files serial update' test.
7855
7856 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7857
7858         Skip localization test when setlocale is not functional.
7859         * tests/localization.at (localized compiler messages): Skip
7860         test when there is a warning about `LC_ALL'.
7861         * THANKS: Update.
7862         Report by Maciej Helminiak.
7863
7864 2009-05-02  Alan Hourihane  <alanh@fairlite.co.uk>  (tiny change)
7865
7866         Improved support for FreeMiNT.
7867         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [mint]: Hard-code
7868         command line length limit to 8192, to avoid long test.
7869         * NEWS, THANKS: Update.
7870
7871 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7872
7873         Initial port for BlueGene BG/L.
7874         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
7875         (_LT_LANG_CXX_CONFIG) [linux]: Detect bgxl*, bgf*, mpixl*
7876         compilers.
7877         * NEWS, THANKS: Update.
7878         Report, feedback and testing by John R. Cary and Christian
7879         Rössel.
7880
7881         manual: fix grammaros.
7882         * doc/libtool.texi (Dlpreopening): Fix grammaro.
7883         (C header files): Remove duplicate word.
7884
7885         Allow through -tp=* at link time, for pgcc.
7886         * libltdl/config/ltmain.m4sh (func_mode_link): Portlant Group
7887         pgcc uses `-tp=PROCESSOR' for target processor selection; allow
7888         the flag through at link time.
7889         Report by Ethan Mallove.
7890
7891         Fix quoting of eval'ed variable.
7892         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Double-quote
7893         $lt_cv_sys_global_symbol_pipe for eval, like we do in ltmain,
7894         in order to preserve TABs and multiple adjacent whitespace.
7895         Report by Bruno Haible.
7896
7897 2009-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7898
7899         Cope better with missing `makeinfo' in `bootstrap'.
7900         * bootstrap: Update `./doc/notes.txt' last so missing `makeinfo'
7901         does not cause a broken tree.
7902         * THANKS: Update.
7903         Report by Christian Rössel.
7904
7905 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
7906             Charles Wilson  <libtool@cwilson.fastmail.fm>
7907
7908         [cygwin] Improve operation with gcc4
7909         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [cygwin*]:
7910         Add w32api to sys_lib_search_path_spec without overriding gcc's
7911         own search path.
7912
7913 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
7914             Charles Wilson  <libtool@cwilson.fastmail.fm>
7915
7916         Use correct export_dynamic_flag_spec for PE-COFF $hosts
7917         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) 
7918         [cygwin*|mingw*|pw32*|cegcc*]: Define export_dynamic_flag_spec
7919         as -Wl,--export-all-symbols, as required by GNU ld for PE-COFF.
7920
7921 2009-03-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
7922
7923         Improve compatibility with older automake
7924         * libltdl/m4/lt~obsolete.m4: Add AC_DEFUNs for
7925         _LT_PREPARE_SED_QUOTE_VARS and _LT_PROG_ECHO_BACKSLASH.
7926         Report by Yaakov Selkowitz.
7927
7928 2009-03-20  Peter Rosin  <peda@lysator.liu.se>
7929
7930         LT_OUTPUT should always create the libtool script.
7931         * libltdl/m4/libtool.m4 (LT_OUTPUT): Make LT_OUTPUT ignore the
7932         --no-create configure option, and assume that the user wants
7933         to use an up-to-date libtool script if the LT_OUTPUT macro is
7934         present.
7935         * tests/early-libtool.at: Make sure we do not regress.
7936
7937 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
7938
7939         Don't settle for any dumpbin/link program as name lister.
7940         * libltdl/m4/libtool.m4 (LT_PATH_NM): When locating dumpbin or
7941         link -dump, check if they appear to really be capable of name
7942         listing, in order to eliminate e.g. link from coreutils. This
7943         makes the name lister decision fall back on nm as the default if
7944         no acceptable candidate is found, which mainly happens on
7945         (arguably broken) cross compiles.
7946         * NEWS: Update
7947         * THANKS: Update
7948         Reports by Rudolf Leitgeb and Peter Kjellerstedt.
7949
7950 2009-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7951
7952         Document INNER_TESTSUITEFLAGS, drop leading space.
7953         * README: Document INNER_TESTSUITEFLAGS.
7954         * tests/cmdline_wrap.at (Run tests with low max_cmd_len):
7955         When using INNER_TESTSUITEFLAGS on the testsuite invocation,
7956         drop leading space after "-k libtool", so that the user may
7957         further limit the set of tests to be run.
7958
7959 2009-03-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7960
7961         Fix low max_cmd_len template test on UnixWare.
7962         * libltdl/config/ltmain.m4sh (func_mode_link): When expanding
7963         $reload_cmds, always put objects in $reload_objs rather than
7964         adding them to the command line, to allow more general command
7965         lines in reload_cmds.  Ensure $reload_objs contains a leading
7966         space.
7967         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
7968         sco3.2v5*, sco5v6*] <reload_cmds>: For CC, invoke prelinker
7969         before creating reloadable object.
7970         (_LT_CMD_RELOAD) <reload_cmds, reload_flag>: Declare as
7971         _LT_TAGDECL, not _LC_DECL.
7972         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
7973         (_LT_LANG_GCJ_CONFIG) <reload_cmds, reload_flag>: Initialize
7974         from default (C tag) value.
7975         * THANKS: Update.
7976         Report and analysis by Tim Rice and John Wolfe.
7977
7978 2009-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7979
7980         * doc/libtool.texi (Distributing libltdl, Test descriptions):
7981         Add missing parentheses.
7982
7983 2009-02-28  Tim Rice  <tim@multitalents.net>
7984
7985         Fix C++ template handling for old archives on UnixWare 7.1.4.
7986         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
7987         sco3.2v5*, sco5v6*] <old_archive_cmds>: For CC, add template
7988         prelink step before archiving.  Fixes template.at test failures.
7989
7990 2009-02-28  Török Edwin  <edwintorok@gmail.com>  (tiny change)
7991             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7992
7993         Do not add bogus directory arguments to link command lines.
7994         * libltdl/config/ltmain.m4sh (func_mode_link): Ensure $path is
7995         always initialized before it is used.  Reported for zsh, for
7996         which $path contains $PATH entries even after "emulate sh", see
7997         <http://bugs.debian.org/517501>.
7998
7999 2009-02-28  Andreas Schwab  <schwab@suse.de>
8000             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8001
8002         Remove remaining references to CVS.
8003         * bootstrap: Remove references to CVS.
8004         * README.alpha: Likewise.
8005         * clcommit.m4sh: Likewise.
8006         * doc/libtool.texi: Bump copyright years.
8007         (libtool script contents): Describe macro_revision as revision
8008         without reference to CVS.
8009
8010 2009-02-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8011
8012         Do not pass $INSTALL via TESTS_ENVIRONMENT.
8013         * Makefile.am (TESTS_ENVIRONMENT): Set lt_INSTALL, not INSTALL,
8014         so that a bogus relative path to the install-sh script in the
8015         source tree is not propagated to the configure scripts of the
8016         old test suite.
8017         * tests/testsuite.at: Adjust.
8018         * tests/install.at (Install tests): Likewise.
8019
8020 2009-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8021             Kurt Roeckx <kurt@roeckx.be>
8022
8023         New test for lt_dlopenext error message.
8024         * tests/lt_dlopenext.at (lt_dlopenext error messages): New file,
8025         with new test, with sources taken from the Autobook example.
8026         * Makefile.am: Update.
8027
8028 2009-02-03  Kurt Roeckx <kurt@roeckx.be>
8029
8030         lt_dlopenext sets error upon successful library load.
8031         * libltdl/ltdl.c (lt_dlopenadvise): Fix bogus error on
8032         successful loading of library with lt_dlopenext.
8033         Report by Kaiwang Chen in <http://bugs.debian.org/510006>.
8034
8035 2009-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8036
8037         Fix sed script in install.at.
8038         * tests/install.at (Install tests): Fix typo in sed script,
8039         fixes test failure on HP-UX.
8040
8041         Fix $INSTALL in testsuite with relative path to install-sh.
8042         * tests/testsuite.at: If `$INSTALL' points to in-tree
8043         install-sh, override a possibly-relative path to it with an
8044         absolute one.
8045
8046         install mode: do not pass `-m $install_override_mode' to cp.
8047         * libltdl/config/ltmain.m4sh (func_mode_install): New variable
8048         $install_cp, factor test when `cp' is used for installation.
8049         Do not pass mode override to cp.  Fixes `libtool --mode=install
8050         cp ...' on HP-UX; cp should not be used for libraries that might
8051         be needed by programs invoked during the installation process.
8052
8053         Fix sed script portability issue in func_version.
8054         * libltdl/config/getopt.m4sh (func_version): Remove space in
8055         `/\./! {' sed command, to please HP-UX sed.
8056
8057 2009-01-31  Jeff Squyres <jsquyres@cisco.com>
8058             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8059
8060         New test for bogus lt_dlopen error message.
8061         * tests/lt_dlopen.at (lt_dlopen error messages): New file, new
8062         test, marked as XFAIL for now.
8063         * Makefile.am: Adjust.
8064         Report and reproducible test case by Jeff Squyres.
8065
8066 2009-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8067
8068         execute mode: do not transform *.lo or *.la arguments.
8069         * libltdl/config/ltmain.m4sh (func_mode_execute): Do not check
8070         arguments matching *.lo or *.la for script wrappers.
8071         * tests/execute-mode.at (execute mode): Add tests.
8072         * NEWS, THANKS: Update.
8073         Report by Paul Biggar.
8074
8075         Nonexistent `main' does not guarantee link failure.
8076         * tests/fail.at (Failure tests): Use an unresolved symbol,
8077         rather than non-presence of `main', to provoke a link failure
8078         also on QNX.  Only check for failure of the libtool script if
8079         the link without libtool would have failed, too.
8080         Report by Mike Gorchak.
8081
8082         Use AT_CHECK more liberally in duplicate members test.
8083         * tests/duplicate_members.at (duplicate members in archive
8084         tests): Wrap link commands in AT_CHECK, they might fail, as seen
8085         on QNX.
8086         * THANKS: Update.
8087         Report by Mike Gorchak.
8088
8089 2009-01-30  Akim Demaille  <demaille@gostai.com>
8090
8091         Fix cwrapper warnings from MSVC 2005.
8092         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
8093         [file scope]: define _CRT_SECURE_NO_DEPRECATE.
8094
8095 2009-01-29  Akim Demaille  <demaille@gostai.com>
8096
8097         Fix bootstrap with older libtool.m4 in reach of aclocal.
8098         * libltdl/m4/lt~obsolete.m4: Add stub definitions for
8099         _LT_REQUIRED_DARWIN_CHECKS and _LT_AC_PROG_CXXCPP.
8100
8101         Fix func_exec_init.
8102         * tests/defs.m4sh (func_exec_init): Instead of using the undefined
8103         my_dir, call func_dirname_and_basename and use its result.
8104         (func_make): For consistency, don't use the useless local variable
8105         my_dir.
8106
8107 2009-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8108
8109         Document --mode short-hands better, and test them.
8110         * doc/libtool.texi (Invoking libtool): Give examples for using
8111         the `--mode=MODE' short-hand `MODE', or abbreviations thereof.
8112         * libltdl/config/ltmain.m4sh: Mention the short-hand for MODE
8113         in the --help output.
8114         * tests/help.at (mode short-hands): New test group.
8115         Suggestion by Bruno Haible.
8116
8117         func_version copes with multi-line copyright headers.
8118         * libltdl/config/getopt.m4sh (func_version): Slurp in copyright
8119         lines until a period is found.
8120         * libltdl/config/ltmain.m4sh: Multi-line copyright is ok to use
8121         now.
8122         * tests/help.at (standard command line options): New file, new
8123         tests.  Make this test group the first one for libtool tests,
8124         moving the banner ...
8125         * tests/duplicate_members.at: ... from here.
8126         * Makefile.am (TESTSUITE_AT): Add tests/help.at.
8127
8128 2009-01-29  Akim Demaille  <demaille@gostai.com>
8129             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8130
8131         Normalize compiler output due to compiler wrappers.
8132         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT): New
8133         macro, to normalize ccache and distcc output.
8134         * tests/localization.at (localized compiler messages): Use it.
8135
8136 2009-01-29  Peter Rosin  <peda@lysator.liu.se>
8137
8138         Make modified libtool script in cwrapper test executable
8139         * tests/cwrapper.at: Make modified libtool script executable.
8140         Report by Roumen Petrov.
8141
8142 2009-01-28  Akim Demaille  <demaille@gostai.com>
8143
8144         Clean space uses.
8145         * libtoolize.m4sh: Remove trailing spaces.
8146         Use <tab><sp>, as some editors remove "useless" spaces in
8147         <sp><tab>.
8148
8149 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
8150
8151         AWK is required, make sure it is set.
8152         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS: Make sure
8153         AWK is set (automake brings it in, but is not always used).
8154         Fixes old-m4-iface.at on MSYS/MSVC.
8155
8156 2009-01-25  Mike Frysinger  <vapier@gentoo.org>
8157
8158         Fix typo in libtool install mode documentation.
8159         * libltdl/config/ltmain.m4sh (func_mode_help): Change -inst-prefix
8160         to -inst-prefix-dir.
8161         * doc/libtool.texi (Install mode): Likewise.
8162
8163 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
8164
8165         Add -Wall to cwrapper tests.
8166         * tests/cwrapper.at: Add -Wall existing tests. Add additional
8167         round of tests with -Wall alone.
8168
8169 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
8170
8171         [cygwin|mingw] cwrapper cleanups.
8172         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
8173         [file scope]: re-organized includes and portability
8174         macros. Avoid oldnames on MINGW32 and MSVC for
8175         setmode/stat/chmod/getcwd/putenv. Declare _putenv on
8176         MINGW32 when -ansi. Use namespaced macro LT_DEBUGWRAPPER.
8177
8178 2009-01-24  Peter Rosin  <peda@lysator.liu.se>
8179
8180         Expand exit status test in LT_AT_NOINST_EXEC_CHECK correctly
8181         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): STATUS is
8182         argument $3, not $2.
8183
8184 2009-01-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
8185
8186         Add tests for cwrapper with -std=c89 and -std=c99
8187         * tests/cwrapper.at: New file.
8188         * Makefile.am: Add tests/cwrapper.at.
8189
8190 2009-01-22  Peter Rosin  <peda@lysator.liu.se>
8191
8192         Unify line endings in localization test.
8193         * tests/testsuite.at: Update copyright year.
8194         (LT_AT_UNIFY_NL): Add macro that unifies line endings on
8195         platforms that suffer from such confusion.
8196         * tests/localization.at: Use it. Update copyright year. Fixes
8197         the test on MSYS/MSVC.
8198
8199 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
8200
8201         [cygwin|mingw] Fix compile warnings when -std=c89.
8202         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
8203         move contents to...
8204         (func_emit_wrapper_part2): move contents to...
8205         (func_emit_wrapper): here.
8206         (func_emit_cwrapperexe_src) [file scope]: Remove
8207         variables script_text_part1 and script_text_part2.
8208         (func_emit_cwrapperexe_src) [lt_dump_script]: New function.
8209         (func_emit_cwrapperexe_src) [main]: Call it.
8210
8211 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
8212
8213         Minor cygwin cleanup
8214         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Correct
8215         case pattern for cygwin.
8216
8217 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8218
8219         Avoid failure due to Cygwin path detection bug.
8220         * tests/execute-mode.at (execute mode): Ignore noise on stderr;
8221         Cygwin might consider `d\"e' to be a DOS-style path and warn.
8222         Report by Charles Wilson.
8223
8224 2009-01-19  Robert Millan  <rmh@aybabtu.com>
8225
8226         Support GNU/kOpenSolaris.
8227         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
8228         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8229         (_LT_LANG_CXX_CONFIG) [kopensolaris*-gnu]: Recognize
8230         GNU/kOpenSolaris.
8231         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
8232         * NEWS, THANKS: Update.
8233
8234 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8235
8236         Another LT_AT_EXEC_CHECK fixup.
8237         * tests/shlibpath.at (shlibpath_overrides_runpath): Use
8238         LT_AT_EXEC_CHECK instead of AT_CHECK.
8239
8240 2009-01-19  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
8241
8242         Add missing $EXEEXT to java test.
8243         * tests/convenience.at (Java convenience archives): Add $EXEEXT.
8244
8245 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8246
8247         Bump copyright years.
8248         * ChangeLog.2008: New, rotated from ...
8249         * ChangeLog: ... here.
8250         * Makefile.am (EXTRA_DIST): Add ChangeLog.2008.
8251         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
8252         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
8253         * libtoolize.m4sh: Likewise.
8254
8255 2009-01-14  Peter Rosin  <peda@lysator.liu.se>
8256
8257         Fix flakey mdemo-dryrun test on MSYS (again!)
8258         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
8259         not time, for really fresh files. Add sleep 1 call at yet another
8260         strategic position. Makes the test pass reliably for MSYS/MinGW.
8261
8262 2008-12-19  Akim Demaille  <demaille@gostai.com>
8263
8264         Fix copyright notice.
8265         * libltdl/config/ltmain.m4sh: Add missing comma.
8266
8267 2008-12-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8268
8269         Add cache variables to link tests.
8270         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
8271         (_LT_LINKER_SHLIBS): Add cache variables to tests that
8272         require the linker to work.  For shlibpath_overrides_runpath,
8273         this also changes the semantics to let the result from the C
8274         compiler take precedence.
8275         * tests/no-executables.at (AC_NO_EXECUTABLES): New file.
8276         * Makefile.am: Update.
8277         * NEWS: Update.
8278         Report of shlibpath_overrides_runpath issue by Mike Frysinger,
8279         report of GCC issue by Andreas Schwab.
8280
8281 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
8282
8283         Fix inadvertent commit.
8284         * bootstrap: Revert.
8285
8286 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
8287
8288         Fix manual typo.
8289         * doc/libtool.texi (LT_INIT): Use correct config.status
8290         invocation.  Reported by Akim Demaille.
8291
8292 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
8293
8294         Do not use $ECHO within eval-ed `...`, as %s\\n becomes %s\n.
8295         * HACKING: Document func_echo_all.
8296         * libltdl/m4/libtool.m4: Use it within backticks that appear in
8297         eval-ed variables.  Reported by Akim Demaille.
8298
8299 2008-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8300
8301         Fix func_infer_tag $ECHO usage; some testsuite exposure.
8302         * libltdl/config/ltmain.m4sh (func_infer_tag): Use func_echo_all
8303         rather than $ECHO for possibly multiple arguments.
8304         * tests/infer-tag.at (inferred tag, CXX inferred tag)
8305         (F77 inferred tag, FC inferred tag, GCJ inferred tag): New file,
8306         new tests.
8307         * Makefile.am: Adjust.
8308
8309         * tests/runpath-in-lalib.at (Runpath in libtool library files):
8310         Add $EXEEXT overlooked in patch yesterday.
8311
8312 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8313
8314         Fix expout and experr line ending issues.
8315         * tests/testsuite.at (LT_AT_HOST_DATA): Renamed from..
8316         (_LT_AT_TRANSLATE_TEXT_OUTPUT): ..this.
8317         (LT_AT_EXEC_CHECK, LT_AT_NOINST_EXEC_CHECK): Do not use
8318         _LT_AT_TRANSLATE_TEXT_OUTPUT any more.
8319         * tests/configure-iface.at: Use LT_AT_HOST_DATA instead of
8320         AT_DATA for `expout' files.
8321         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
8322         Likewise.
8323         * tests/need_lib_prefix.at (enforced lib prefix): Likewise.
8324         Report by Roumen Petrov.
8325
8326         Relax link-order2 test for systems with partial wrong order.
8327         * tests/link-order2.at (Link order of deplibs.): On w32 (and
8328         others, e.g., AIX), the wrongly linked executable picks up only
8329         one instance of the bad function instead of two; relax the test
8330         to accept this; we still require the right link order with the
8331         correctly linked executable.
8332         Reported by Roumen Petrov and others.
8333
8334 2008-11-23  Roumen Petrov  <bugtrack@roumenpetrov.info>
8335             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8336
8337         Add $EXEEXT to all linked programs in the new testsuite.
8338         * tests/convenience.at, tests/ctor.at, tests/darwin.at,
8339         tests/deplibs-ident.at, tests/duplicate_conv.at,
8340         tests/duplicate_deps.at, tests/duplicate_members.at,
8341         tests/export.at, tests/fail.at, tests/indirect_deps.at,
8342         tests/inherited_flags.at, tests/link-order.at,
8343         tests/link-order2.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
8344         tests/need_lib_prefix.at, tests/runpath-in-lalib.at,
8345         tests/search-path.at, tests/shlibpath.at, tests/static.at,
8346         tests/stresstest.at, tests/template.at, tests/testsuite.at:
8347         Use $EXEEXT throughout, except in Makefile.am snippets where
8348         automake takes care of it, and in testsuite macros that take
8349         care of the extension.
8350         Reports by Roumen Petrov and Alon Bar-Lev.
8351
8352 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8353
8354         Adjust executable run tests to cwrapper changes.
8355         * tests/testsuite.at (LT_AT_EXEC_CHECK): Accept fifth argument
8356         ARGS-OR-STATUS-ADJUST, for command-line arguments and/or exit
8357         status flattening.  Rewrite to prefer the executable with the
8358         `.exe' prefix over one without.  Test exit status against
8359         expected exit status, not against zero, when determining whether
8360         this may be a cross-compilation-induced result.
8361         (LT_AT_NOINST_EXEC_CHECK): Likewise.
8362         * tests/static.at (static linking flags for programs): Adjust
8363         calls.
8364         Report by Roumen Petrov.
8365
8366         No trailing period in Autotest test group names.
8367         * tests/link-order.at (Link order test): Drop trailing period
8368         from test name.
8369         * tests/link-order2.at (Link order of deplibs): Likewise.
8370
8371 2008-11-23  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
8372
8373         Fix func_emit_cwrapperexe_src for WinCE: no errno support.
8374         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
8375         [__MINGW32CE__]: Do not use errno, do not include errno.h and
8376         remove calls related to errno when using the mingw32ce compiler.
8377
8378 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8379
8380         No libm in WinCE.
8381         * libltdl/m4/libtool.m4 (LT_LIB_M) [cegcc*]: This system has
8382         only a dummy libm, ignore.
8383         Report by Vincent Torri.
8384
8385         Fix import library detection for WinCE.
8386         * libltdl/config/ltmain.m4sh (func_win32_libid): Work for
8387         pe-arm-wince import libraries.
8388         * NEWS: Update.
8389         Report by Vincent Torri.
8390
8391 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8392             Eric Blake  <ebb9@byu.net>
8393
8394         Fix $ECHO test to not influence other _AS_DETECT_SUGGESTED code.
8395         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix test to
8396         not influence further tests registered with _AS_DETECT_SUGGESTED
8397         and do not use a PATH below /tmp, to avoid influence by a third
8398         party.
8399
8400 2008-11-23  Alon Bar-Lev  <alon.barlev@gmail.com>  (tiny change)
8401
8402         Fix func_win32_libid for 64-bit Windows.
8403         * libltdl/config/ltmain.m4sh (func_win32_libid): Accept file
8404         format 'pe-x86-64'.
8405         * NEWS: Update.
8406
8407 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8408
8409         Avoid newlines in some AT_CHECK commands.
8410         * tests/standalone.at (linking libltdl without autotools): Wrap
8411         lines with dnl, to avoid turning off tracing of AT_CHECK.
8412         * tests/subproject.at (linking libltdl without autotools):
8413         Likewise.
8414
8415         Replace uses of $SED $basename.
8416         * libltdl/config/ltmain.m4sh (func_mode_link): Replace instances
8417         of `$ECHO ... | $SED' with calls to func_basename.
8418         * libtoolize.m4sh (func_copy, func_serial)
8419         (func_massage_aclocal_DATA): Likewise, replace with
8420         func_dirname_and_basename.
8421         * tests/defs.m4sh (func_configure_nofail, func_make, func_exec):
8422         Likewise.
8423
8424         No need to prepend $progname with './'.
8425         * libltdl/config/general.m4sh (func_dirname_and_basename): $ECHO
8426         copes with leading hyphens now, so do not mangle $progname any
8427         more.
8428
8429         Revenge of the $ECHO. Kill most uses of Xsed.
8430         * libltdl/config/general.m4sh: Replace all uses of `$ECHO "X..."
8431         | $Xsed' with `$ECHO "..." | $SED', and employ further trivial
8432         simplifications.  Replace $ECHO with echo where appropriate.
8433         (func_echo_all): New function.
8434         * libltdl/config/getopt.m4sh: Likewise simplifications.
8435         * libltdl/config/ltmain.m4sh: Likewise.
8436         * libltdl/m4/libtool.m4: Likewise.
8437         (LT_CMD_MAX_LEN): Use func_fallback_echo, to ensure that the
8438         command line is passed through an exec* function.
8439         * libtoolize.m4sh: Likewise simplifications.  Use func_echo_all
8440         to implement --dry-run.
8441         * tests/defs.m4sh: Likewise simplifications.
8442         * tests/quote.test: Likewise simplifications.
8443
8444         Fix matching of Sun Fortran compiler on Linux.
8445         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: Also
8446         match `Sun Ceres Fortran' compiler; reorder with C compiler
8447         matching.
8448         * THANKS: Update.
8449         Report by Ethan Mallove.
8450
8451 2008-11-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
8452
8453         Fix --verbose option; add new --no-{silent|quiet|verbose} options.
8454
8455         * libltdl/config/ltmain.m4sh (usage): Document
8456         new options --no-silent/--no-quiet and --no-verbose.
8457         (func_enable_tag): Handle new options.
8458         Modified --verbose to actually activate opt_verbose.
8459         New behavior: --silent disables both "normal" output and
8460         func_verbose output.  --verbose enables both "normal"
8461         output and func_verbose output. --no-silent enables
8462         "normal" output, but does not affect func_verbose output.
8463         --no-verbose disables func_verbose output, but does not
8464         affect "normal" output.
8465         * NEWS: announce new options --no-silent/--no-quiet, and
8466         --no-verbose.
8467         * doc/libtool.texi: document new options --no-silent/--no-quiet
8468         and --no-verbose.
8469
8470 2008-11-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8471
8472         Fix match patterns for cegcc*.
8473         * libltdl/config/ltmain.m4sh (func_mode_link): Match '*cegcc*'
8474         instead of '*cegcc' for $host_os.
8475         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Likewise.
8476         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
8477         Likewise.
8478         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Match
8479         '*-*-cegcc*' for $host.
8480
8481         Ensure $ac_aux_dir is initialized for LIBTOOL_DEPS.
8482         * libltdl/m4/libtool.m4 (LT_INIT): Require
8483         AC_CONFIG_AUX_DIR_DEFAULT.
8484         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Amend test to
8485         expose this.
8486         Report, analysis, and test example by Jakub Bogusz.
8487
8488         Check for bogus aclocal.m4 contents in bootstrap and dist-hook.
8489         * Makefile.am (dist-hook): Bail out if shipped aclocal.m4 files
8490         contain LT_INIT, AC_PROG_LIBTOOL, or AM_PROG_LIBTOOL macro
8491         definitions.  These can only come from bogus pull-ins from older
8492         installed Libtool macro files.
8493         * bootstrap: Likewise.
8494         Report by Akim Demaille.
8495
8496 2008-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8497
8498         Fix $ECHO abuse exposed by recent patch.
8499         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
8500         _LT_CHECK_SHELL_FEATURES, for $lt_NL2SP.  Always quote argument
8501         to $ECHO.
8502
8503         Skip sys_lib_search_path on systems without libz.
8504         * tests/search-path.at (sys_lib_search_path): Autotest needs at
8505         least one AT_CHECK executed in a test group.  So if we haven't
8506         found -lz anywhere, as may happen with cross-compilers, skip the
8507         test.
8508         * THANKS: Update.
8509         Report by Alon Bar-Lev.
8510
8511         Fix execute mode test to actually expose cwrapper failures.
8512         * tests/execute-mode.at (execute mode): Actually also test the
8513         cwrapper on the arguments.
8514         Report by Bruno Haible.
8515
8516 2008-11-15  Charles Wilson  <libtool@cwilson.fastmail.fm>
8517
8518         Add func_win32_import_lib_p.
8519         * libltdl/config/ltmain.m4sh (func_win32_import_lib_p):
8520         New function.
8521
8522 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8523
8524         Fix archive_cmds for older cc on HP-UX 11.
8525         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hp-ux11*, !GCC]
8526         [!hppa*64*, !ia64*] <archive_cmds>: Older releases of the HP-UX
8527         11.00 C compiler do not support -b yet; use a link test to
8528         decide whether $LD should be used for library creation.
8529         * THANKS: Update.
8530         Report by Daniel Richard G.
8531
8532 2008-11-12  Paolo Bonzini  <bonzini@gnu.org>
8533
8534         * configure.ac: Bump Autoconf requirement.
8535         * libltdl/config/general.m4sh: Use $as_echo as default $ECHO.
8536         * tests/testsuite.at: Use $as_echo as default $ECHO.
8537
8538         * libltdl/m4/libtool.m4 (LT_INIT): Add _LT_SHELL_INIT to
8539         work around Autoconf <2.64 bug.
8540         (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT): Add func_fallback_echo.
8541         Eliminate lt_ECHO requoting.
8542         (_LT_SHELL_INIT): Use a public M4sh diversion.
8543         (_LT_PROG_ECHO_BACKSLASH): Rewrite.
8544         (LT_CMD_MAX_LEN): Do not use --fallback-echo.
8545         * libltdl/config/ltmain.m4sh: Remove --no-reexec and --fallback-echo
8546         handling.
8547         (func_fallback_echo): New.
8548         (func_emit_wrapper_part1): Quote ECHO.  Remove --no-reexec and
8549         --fallback-echo handling.
8550         (Execute mode): Do not set qecho.
8551
8552 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8553
8554         Use -no-undefined in install tests.
8555         * tests/install.at (Install tests): Use `-no-undefined'.
8556
8557 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8558
8559         Do not use `test ... -a ...'.
8560         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hpux10, hpux11]:
8561         Replace test -a with test && test.
8562
8563 2008-11-11  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
8564
8565         Fix destdir tests in cross compile mode.
8566         * tests/destdir.at (Simple DESTDIR install)
8567         (DESTDIR with in-package deplibs): Use $EXEEXT throughout.
8568         * THANKS: Update.
8569
8570 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8571
8572         Simplify cwrapper handling a bit.
8573         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1)
8574         (func_emit_wrapper_part2, func_to_host_path)
8575         (func_to_host_pathlist, func_emit_wrapper): Simplify using
8576         default argument, func_append.
8577
8578 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8579
8580         Separate part of _LT_SETUP into other macros, detect ECHO sooner.
8581         * libltdl/m4/libtool.m4 (_LT_PREPARE_SED_QUOTE_VARS): New macro,
8582         extracted from...
8583         (_LT_SETUP): ... here.  Require _LT_PROG_ECHO_BACKSLASH sooner.
8584
8585 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8586
8587         Fix quoting when config.status generates libtool config.
8588         * libltdl/m4libtool.m4 (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT):
8589         Double quote ECHO-ed variables.
8590
8591 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8592
8593         Use documented M4sh interfaces.
8594         * clcommit.m4sh: Do not unset CDPATH, use AS_INIT and M4sh diversions.
8595         * libltdl/config/mailnotify.m4sh: Likewise.
8596         * libtoolize.m4sh: Likewise.
8597         * tests/defs.m4sh: Likewise.
8598         * tests/testsuite.at: Move AT_INIT invocation at the top.
8599
8600         * libltdl/m4/libtool.m4 (_LT_INIT_GENERATED): New.
8601         (LT_OUTPUT): Use it.
8602
8603         * libltdl/config/general.m4sh (M4SH_IN_HEADER): New.
8604         (progpath): Move setting before $0 could be clobbered.
8605         * libltdl/config/ltmain.m4sh (M4SH_IN_HEADER): New.
8606
8607 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8608
8609         Run sh.test on the M4sh source.
8610         * tests/defs.m4sh (scripts): Point to pre-m4 sources.
8611
8612 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8613
8614         Avoid that autom4te complains about unexpanded macros.
8615         * libtoolize.m4sh: Allow occurrences of "dnl" and use quadrigraphs
8616         to protect other m4 macros.
8617
8618 2008-11-11  Bruno Haible  <bruno@clisp.org>
8619             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8620
8621         Fix cwrapper argument mangling on w32.
8622         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): On
8623         mingw, preprocess the argument vector through prepare_spawn.
8624         * tests/execute-mode.at (execute mode): Output args
8625         newline-separated.  Extend tests by more argument pairs that
8626         contain special characters, where the w32 cwrapper fails.
8627         Also test a real compiled program, linked against an uninstalled
8628         library, to expose cwrapper issues.
8629         * NEWS: Update.
8630
8631 2008-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8632
8633         Update to GFDL 1.3.
8634         * doc/fdl.texi: Update to GFDL 1.3.
8635         * doc/libtool.texi: Adjust.
8636         * NEWS: Update.
8637
8638 2008-11-09  Alexei Sheplyakov  <varg@theor.jinr.ru>  (tiny change)
8639
8640         Fix cross compilation with wine for the case SHELL != bash.
8641         * libltdl/config/ltmain.m4sh (func_to_host_path): Avoid escape
8642         sequence interpretation by 'echo', for w32-style paths.
8643         * THANKS: Update.
8644
8645 2008-10-28  Michael Haubenwallner  <michael.haubenwallner@salomon.at> (tiny change)
8646
8647         Fix checks for unsupported allow_undefined_flag.
8648         * tests/tagdemo-undef.test: Match allow_undefined_flag
8649         correctly, for SKIPping.
8650         * tests/cdemo-undef.test: Likewise.
8651
8652 2008-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8653
8654         * tests/testsuite.at (_LTDL_PROJECT_FILES): Fix dependencies for
8655         parallel make.
8656
8657         * libtoolize.m4sh (func_nonemptydir_p): Fix typo in error
8658         message.
8659
8660 2008-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8661
8662         Fix Autoconf 2.59 incompatibilty.
8663         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): m4_pattern_allow
8664         `LT_LIBEXT'; Autoconf 2.59's AC_DEFINE* macros didn't do this
8665         automatically yet.
8666         * NEWS, THANKS: Update.
8667         Report by Marcel Loose.
8668
8669 2008-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8670
8671         Atomic shared library install permissions on HP-UX.
8672         The HP-UX 11 runtime linker fails to mmap shared libraries
8673         without execute permissions.  Fixing them with postinstall_cmds
8674         may be too late, as ln, sed, and chmod may link against the
8675         library being installed.
8676
8677         * libltdl/m4/libtool.m4 (install_override_mode): New LT_DECL.
8678         (_LT_SYS_DYNAMIC_LINKER) [hpux9*, hpux10*, hpux11*]: Set it.
8679         * libltdl/config/ltmain.m4sh (func_mode_install): Build a second
8680         command line, $install_shared_prog, for the installation of the
8681         shared library.  Override resp. set the permission mode if
8682         install_override_mode is nonempty.
8683         * doc/libtool.texi (libtool script contents): Document it.
8684         * tests/install.at (Install tests): New test.
8685         * Makefile.am (TESTSUITE_AT): Adjust.
8686         (TESTS_ENVIRONMENT): Pass INSTALL.
8687         Report by Bruno Haible.
8688
8689 2008-09-26  Eric Blake  <ebb9@byu.net>
8690
8691         Avoid gcc warning.
8692         * libltdl/loaders/loadlibrary.c (vm_open): Don't check for array
8693         being a NULL pointer.
8694
8695 2008-09-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8696
8697         Man pages for libtoolize and libtool, new command line option
8698         --help-all.
8699         * Makefile.am (dist_man1_MANS, update_mans): New macros.
8700         ($(srcdir)/doc/libtool.1, $(srcdir)/doc/libtoolize.1): New
8701         rules.  Use --help-all for libtool.
8702         (MAINTAINERCLEANFILES): New macro.  Add dist_man1_MANS.
8703         (BUILT_SOURCES): Add libtoolize.
8704         * configure.ac: Check for help2man, set HELP2MAN.
8705         * doc/libtool.texi: Add @direntry for libtool-invocation.
8706         (Invoking libtool): Document -h, --help-all.  Reorder mode
8707         description for consistency.
8708         (Compile mode): Do not document -Wl,FLAG and -XCClinker here.
8709         (Link mode): Document -Wc,FLAG here, reformat a bit.
8710         * libtoolize.m4sh: Reformat --help output a bit, to help
8711         help2man.
8712         * libltdl/config/ltmain.m4sh: Likewise.  Also, set PROGRAM to
8713         `libtool', not `ltmain.sh', so the former is used in the man
8714         page.
8715         New argument `--help-all'.  If given, call func_help and
8716         func_mode_help several times, beating output in shape with sed.
8717         (func_mode_help): Do not exit here.
8718         * libltdl/config/getopt.m4sh (func_usage): Work with different
8719         indentations, but require comment hash in first column, when
8720         grepping for '-h' in usage to end short help.
8721         (func_help): Accept optional argument to not exit.
8722         * NEWS, THANKS: Update.
8723         Suggestion by Karl Berry.
8724
8725 2008-09-08  Gary V. Vaughan  <gary@gnu.org>
8726
8727         Use `-version-info 9:0:2' for one added iface since 2.2.4.
8728         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Make the libltdl
8729         version number match 2.2.6a rerelease.
8730
8731         Add ./commit option for pushing tags back to origin.
8732         * clcommit.m4sh (opt_tags): New --tags push option.
8733         (func_commit): Run `$GIT push --tags' if --tags was passed.
8734         * HACKING (Release Procedure): Note the requirement to pass
8735         --tags to ./commit for new release tag to be push back to
8736         origin.
8737
8738 2008-09-07  Gary V. Vaughan  <gary@gnu.org>
8739
8740         Retire gnu.org news.html in favour of savannah news.
8741         * HACKING (Release Procedure): Add instructions for sending
8742         a web release announcement to http://planet.gnu.org via
8743         the savannah news manager.
8744
8745         Add untested git push conflict testing to commit script.
8746         * clcommit.m4sh (func_check_conflicts): Test return status
8747         of 'git push --dry-run', and display an error on non-zero.
8748
8749         Enable release procedure to work with lzma OLDRELEASE file.
8750         * Makefile.maint (diffs, prev-tarball, new-tarball): If lzma
8751         tarballs are present use them to generate the diffs, otherwise
8752         use gz tarballs if they are present, or else complain if both
8753         are missing.
8754
8755         Set SCM version number to 2.2.7a.
8756         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8757         number to 2.2.7a.
8758         * NEWS: Updated.
8759
8760         GNU Libtool 2.2.6 was released.
8761
8762         Fix typo in Makefile.maint.
8763         * Makefile.maint (git-news): Renamed to check-news, since it
8764         doesn't actually run git.  Adjust all dependees.
8765
8766         Run `git commit -a' when no files are passed.
8767         * clcommit.m4sh (func_commit): Add -a argument if necessary.
8768
8769         Prepare for next stable release.
8770         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Update.
8771         * libltdl/m4/libtool.m4: Bump serial number to account for
8772         changes since 2.2.4 release.
8773         * INSTALL, config/config.guess, config/texinfo.tex: Updated
8774         from canonical source.
8775         * configure.ac (AM_INIT_AUTOMAKE): Specify dist-lzma, which
8776         was introduced after automake-1.10 was released.
8777         (abs_top_srcdir, abs_top_builddir): No need to substitute these
8778         from configure anymore, since we require automake 1.10.1, which
8779         does perform the substitutions properly.
8780         (TIMESTAMP): Normal releases were displaying the long-form
8781         timestamp.  Fix to show the short release timestamp as per
8782         alpha release numbers.
8783         * NEWS: Update with missing entries from ChangeLog.
8784         * HACKING (Release Procedure): We release lzma tarballs now
8785         but no xdeltas.
8786         * Makefile.maint: Updated to match Release Procedure
8787         instructions in HACKING.
8788
8789         Convert mailnotify headers to git.
8790         * clcommit.m4sh: Improve mailnotify contents.
8791
8792         Make ./commit useful again.
8793         * clcommit.m4sh: Major overhaul and simplification for git.
8794
8795 2008-09-06  Gary V. Vaughan  <gary@gnu.org>
8796
8797         Fix 'DISTCHECK_CONFIGURE_FLAGS=--program-prefix=g' bug.
8798         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Fix test failures
8799         with --program-prefix, where the test case output contains the
8800         transformed name somewhere other than the beginning of a line.
8801         * libtoolize.m4sh (func_check_macros): Be sure to always use
8802         the transformed name in output messages.
8803
8804 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8805
8806         Do not remove .gcno files when linking.
8807         * libltdl/config/ltmain.m4sh (func_mode_link): When removing
8808         potential output files before linking, do not remove *.gcno
8809         profile information GCC outputs next to object files in `.libs'.
8810         Report by Vincent Torri.
8811
8812 2008-09-01  Peter O'Gorman  <peter@pogma.com>
8813
8814         Revert 75142db4f8afc65ba7aae0ed80ea0b35bd9cc382 (AIX libltdl
8815         dlopen(NULL)
8816
8817         * libltdl/m4/ltdl.m4: Remove LTDL_DLOPEN_SELF_WORKS define.
8818         * libltdl/loaders/dlopen.c: Remove LTDL_DLOPEN_SELF_WORKS check.
8819         * libltdl/m4/libtool.m4 [aix]: Set export_dynamic_flag_spec to
8820         -Wl,-bexpall. This is a temporary workaround until a real fix
8821         is implemented.
8822         * NEWS: document it.
8823
8824 2008-08-26  Peter O'Gorman  <peter@pogma.com>
8825
8826         Allow for extensions other than .a for preloaded modules.
8827         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define LT_LIBEXT.
8828         * libltdl/ltdl.c (lt_dladvise_preload): Use it.
8829         Reported by Ralf Wildenhues.
8830
8831 2008-08-26  Peter O'Gorman  <peter@pogma.com>,
8832             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8833
8834         Remove unnecessary global argz functions.
8835         * libltdl/argz.c (argz_add,argz_count): Remove.
8836         * libltdl/argz_.h (argz_add,argz_count): Remove.
8837         * NEWS: Announce it.
8838         * tests/ltdl-api.at: Test so we don't repeat it.
8839         * Makefile.am: Add new test.
8840
8841 2008-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8842
8843         Initial support for Lahey Fortran on GNU/Linux.
8844         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8845         [linux] <lf95>: Add support for Lahey Fortran 8.1.
8846         * NEWS, THANKS: Update.
8847         Suggested by Craig Tierney.
8848
8849 2008-08-21  Sam Thursfield  <ssssam@gmail.com>  (tiny change)
8850
8851         Avoid leading separator in PATH for DLL search.
8852         * libltdl/config/ltmain.m4sh (func_mode_link) [cygwin, mingw]
8853         [ pw32, os2, cegcc]: Fix dllsearchpath not to contain leading
8854         separator.
8855         * THANKS: Update.
8856
8857 2008-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8858
8859         * libltdl/config/ltmain.m4sh (func_mode_link): Quote $#.
8860
8861         Disallow `-L path', do not misparse it silently.
8862         * libltdl/config/ltmain.m4sh (func_mode_link): Diagnose `-L'
8863         without argument, and `-L path', i.e., with a space.
8864         * tests/fail.at (Failure tests): Test for these failures.
8865         * THANKS: Update.
8866         Report by Olaf Lenz.
8867
8868 2008-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8869
8870         Avoid test failure due to broken dlpreloading of shared library.
8871         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Drop
8872         some newlines in AT_CHECK commands, for better 'testsuite -x'
8873         output.  Only create a static installable libpreload.la, to
8874         avoid exposing the bug libtool currently has with preloading of
8875         shared libraries.  Add a note to revisit this later.
8876
8877 2008-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8878
8879         Parallel make testsuite fixes.
8880         * tests/configure-iface.at (installable libltdl)
8881         (--with-ltdl-include/lib, --with-included-ltdl): Add dlopened
8882         libmodule.la to main_DEPENDENCIES.
8883         * tests/old-m4-iface.at (AC_WITH_LTDL): Likewise, let ltdldemo
8884         depend upon module.la and libltdl/libltdlc.la.
8885         * tests/testsuite.at (LT_AT_MAKE): Invoke each target in turn,
8886         default to 'all'.
8887         * tests/early-libtool.at (config.lt): Define 'all' target.
8888
8889         * HACKING: Update for git, fix some minor nits.
8890
8891 2008-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8892
8893         Remove use of exit in configure test sources.
8894         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Return from main,
8895         to avoid using undeclared exit.
8896         Report against OpenMPI from Coverity via Jeff Squyres.
8897
8898         * tests/configure-iface.at (convenience libltdl): Ignore warning
8899         from parallel make.
8900
8901 2008-08-07  DJ Delorie  <dj@redhat.com>
8902
8903         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [tpf]
8904         <library_names_spec>: Fix typo in variable name.
8905
8906 2008-08-06  Steve Ellcey  <sje@cup.hp.com>
8907
8908         Use -fPIC with GCC on HP-UX/ia64.
8909         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8910         [ia64-*-hpux*]: Specify -fPIC when using GCC to build shared
8911         libraries.
8912
8913 2008-08-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8914
8915         * NEWS: Minor fixups.
8916
8917 2008-08-01  Gary V. Vaughan  <gary@gnu.org>
8918
8919         Bring NEWS up to date.
8920         * NEWS: Add missing summaries since 2.2.4 release.
8921
8922         Implement lt_dlopening of only preloaded modules.
8923         * libltdl/m4/ltdl.m4 (LTDL_INIT): Check for a libltdl that
8924         provides lt_dladvise_preopen when deciding if installed libltdl
8925         is 'new enough'.
8926         * libltdl/libltdl/lt__private.h (lt__advise): Add a new
8927         is_preload flag.
8928         * libltdl/ltdl.c (lt_dladvise_preload): New api call to set it.
8929         (try_dlopen): If it is set, and the search of preloaded modules
8930         didn't return a match, don't bother searching the filesystem.
8931         * libltdl/ltdl.h (lt_dladvise_preload): Declare it.
8932         * doc/libtool.texi (Libltdl Interface): Document it.
8933         * tests/lt_dladvise.at: Test it (and incidentally add some test
8934         coverage for `libtool -dlpreopen').
8935         * NEWS: Announce it.
8936
8937 2008-08-01  Vincent Torri  <doursse@users.sf.net>
8938
8939         Add cegcc (Windows CE/PocketPC) support.
8940         * libltdl/config/ltmain.m4sh: Add 'cegcc' case where needed.
8941         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, LT_SYS_DLOPEN_SELF)
8942         (_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
8943         (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8944         (_LT_LANG_CXX_CONFIG): Likewise.
8945         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Likewise.
8946         * NEWS: Update.
8947         * THANKS: Update.
8948
8949 2008-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8950
8951         * libltdl/config/ltmain.m4sh (func_to_host_path): Fix sh.test
8952         failure.
8953         Report by Paolo Bonzini.
8954
8955 2008-07-31  Paolo Bonzini  <bonzini@gnu.org>
8956
8957         * ltmain.m4sh (func_emit_cwrapperexe_src): Factor
8958         multiple closed braces into the next cat command.
8959
8960 2008-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8961
8962         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <icc, icpc>:
8963         Use -fPIC, newer Intel compilers (icc 10, ifort 9) reject -KPIC.
8964         * tests/localization.at: Skip test if the compiler fails merely
8965         due to the locale setting.
8966         * THANKS: Update.
8967         Report by Vincent Lefevre.
8968
8969 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8970
8971         * doc/libtool.texi (Linking executables, Static libraries)
8972         (Modules for libltdl, Distributing libltdl): Remove TABs from
8973         the manual.
8974
8975 2008-06-13  Peter O'Gorman  <peter@pogma.com>
8976
8977         Support ifort on darwin.
8978         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Build
8979         shared libraries with ifort.
8980         Reported by Christopher Hulbert.
8981
8982 2008-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
8983
8984         [mingw] fix cross-compile-with-wine case
8985         * libltdl/config/ltmain.m4sh (func_to_host_path)
8986         [host=mingw, build!=mingw|cygwin]: check that winepath
8987         stdout is non-empty and exit code is 0, instead of checking
8988         stderr.
8989         Reported by: Roumen Petrov
8990
8991 2006-06-01  Stas Maximov  <smaximov@ieee.org>  (tiny change)
8992
8993         Check only regular files, not devices, for lalibs.
8994         * libltdl/config/ltmain.m4sh (functions func_lalib_p)
8995         (func_lalib_unsafe_p): Only read regular files and not device
8996         files.  Avoids blocking libtool executing gdb, when a
8997         pseudo-terminal device /dev/pts/NN is given as one of the
8998         arguments to gdb, as in:
8999         libtool --mode=execute gdb -q -nw -i mi -tty /dev/pts/4 prog
9000
9001 2008-05-31  Peter O'Gorman  <peter@pogma.com>
9002
9003         Skip darwin test if fat link fails.
9004         * tests/darwin.at: Skip if we can not link a fat program.
9005         Reported by Daniel Macks <dmacks@netspace.org>
9006
9007 2008-05-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9008
9009         libtoolize should not remove config.guess, config.sub.
9010         * libtoolize.m4sh (all_pkgconfig_files): Do not list
9011         config.guess nor config.sub.  We don't install them without
9012         --install, and the project may not be using Automake.
9013         Report by Andreas Schwab.
9014
9015         Simplify argument parsing in cwrapper.
9016         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
9017         Use NULL where appropriate.  Do not compute length of arguments
9018         needlessly.
9019
9020 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
9021
9022         [mingw] Add cross-compile support to cwrapper
9023         * libltdl/config/ltmain.m4sh (func_to_host_path) [$host=mingw]:
9024         If present, use winepath to convert from $build to $host
9025         if $build is neither mingw (msys) nor cygwin.  Use unconverted
9026         path as fallback when conversion fails. Also update comments.
9027         (func_to_host_pathlist) [$host=mingw]: Ditto. For fallback case,
9028         use simplistic ':' to ';' path separator translation.
9029
9030 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
9031
9032         Cwrapper should not eat -- arguments
9033         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
9034         [file scope]: Defined all option strings in terms of macro
9035         LTWRAPPER_OPTION_PREFIX. Similarly defined all option string
9036         lengths in terms of macro LTWRAPPER_OPTION_PREFIX_LENGTH.
9037         [main]: Modified option parsing algorithm to pass -- on to
9038         target, and to not stop processing arguments when -- is seen.
9039         Added check for unrecognized options in reserved namespace
9040         defined by LTWRAPPER_OPTION_PREFIX.
9041
9042 2008-05-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9043
9044         Fix ifort settings again.
9045         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
9046         Unlike icc and ecc, not all ifort versions understand `-KPIC',
9047         e.g. version 10.1, so use `-fPIC' instead.
9048         Report by Jeff Squyres.
9049
9050 2008-05-20  Eric Blake  <ebb9@byu.net>
9051
9052         Resynchronize argz whitespace changes from gnulib.
9053         * libltdl/m4/argz.m4: Kill trailing whitespace.
9054         * libltdl/argz.c: Likewise.
9055
9056 2008-05-19  Eric Blake  <ebb9@byu.net>
9057
9058         Fix regression from two days ago.
9059         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ): Don't refer to deleted macro.
9060
9061 2008-05-17  Eric Blake  <ebb9@byu.net>
9062
9063         Speed up bootstrap by improving lt_combine.
9064         * libltdl/m4/ltsugar.m4 (lt_combine): Mirror Autoconf 2.62
9065         improvements.  Includes a semantic change where the separator can
9066         now be empty, and where an empty fourth argument is now treated as
9067         a valid suffix.
9068         * libltdl/m4/libtool.m4 (_lt_decl_varnames_tagged): Adjust to new
9069         semantics of lt_combine.
9070         (lt_decl_varnames_tagged): Fix quoting and optimize.
9071
9072         Kill _LT_LIBSOURCES; it wasn't checking anything useful.
9073         * libltdl/m4/ltdl.m4 (_LT_LIBSOURCES): Delete.
9074         (LTDL_INIT): Ignore arguments to AC_LIBSOURCES during _LTDL_SETUP,
9075         on the assumption that libtoolize correctly installed them.
9076
9077 2008-05-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
9078
9079         [mingw|cygwin] Modify cwrapper to invoke target directly.
9080         * libltdl/config/ltmain.m4sh (func_to_native_path):
9081         New function. If $host is mingw, and $build is mingw
9082         or cygwin, convert path to mingw native format.
9083         (func_to_native_pathlist): New function. Ditto, for
9084         :-separated pathlists.
9085         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
9086         Ensure putenv and setenv are declared. Define HAVE_SETENV.
9087         (func_emit_cwrapperexe_src) [main]: Add new constants to
9088         hold desired PATH settings; initialize and use functions
9089         above to convert to $host format if necessary. Add new
9090         command-line options --lt-env-set, --lt-env-prepend, and
9091         --lt-env-append. No longer emit wrapper script as integral
9092         part of launching child. Remove support for (now) unnecessary
9093         $TARGETSHELL. Exec actual target executable directly.
9094         (func_emit_cwrapperexe_src) [lt_setenv, lt_extend_str]
9095         [lt_split_name_value, lt_opt_process_env_set]
9096         [lt_opt_process_env_prepend, lt_opt_process_env_append]
9097         [lt_update_exe_path, lt_update_lib_path]: New functions.
9098
9099 2008-05-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
9100
9101         Ensure cwrapper compiles without warnings under -std=c99.
9102         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
9103         new function.
9104         (func_emit_wrapper_part2): new function.
9105         (func_emit_wrapper): delegate to new functions.
9106         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
9107         ensure realpath is declared.
9108         (func_emit_cwrapperexe_src): declare two different strings
9109         to each hold part of the wrapper script content. Initialize
9110         using new func_emit_wrapper_partX functions.
9111         (func_emit_cwrapperexe_src) [main]: when emitting wrapper
9112         script content, use both strings.
9113         Reported by Yaakov Selkowitz.
9114
9115 2008-05-06  Charles Wilson  <libtool@cwilson.fastmail.fm>
9116
9117         Ensure $OBJDUMP is defined
9118         * libltdl/m4/libtool.m4 (_LT_DECL_OBJDUMP): new macro ensures
9119         that $OBJDUMP is always defined sanely.
9120         (_LT_SYS_DYNAMIC_LINKER): call it.
9121         (_LT_CHECK_MAGIC_METHOD): call it.
9122
9123 2008-05-05  Gary V. Vaughan  <gary@gnu.org>
9124
9125         Fix libtoolize test failure with aclocal < 1.10.1
9126         * tests/libtoolize.at
9127         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Older aclocal
9128         requires a space between -I and the directory argument.
9129         Reported by Daniel Macks <dmacks@netspace.org>
9130
9131 2008-05-04  Gary V. Vaughan  <gary@gnu.org>
9132
9133         Set SCM version number to 2.2.5a.
9134         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9135         number to 2.2.5a.
9136         * NEWS: Updated.
9137
9138         GNU Libtool 2.2.4 was released.
9139
9140         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9141         number to 2.2.4.
9142         * libltdl/Makefile.inc (LTDL_VERSION_INFO): C:R+1:A because the
9143         interfaces are unchanged, even though we improved the code some
9144         more.
9145         * NEWS: Updated.
9146
9147         Macro file serial updates for next stable release.
9148         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
9149         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: Bump serial
9150         numbers to account for changes since 2.2.2 release.
9151
9152         Make libtoolize tests work with distcheck.
9153         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): When $tst_aclocal
9154         is set, transform paths that use it to generic
9155         /usr/local/share/aclocal in time for AT_CHECK comparisons.
9156
9157 2008-05-03  Gary V. Vaughan  <gary@gnu.org>
9158
9159         Don't trip over outdated acinclude.m4.
9160         * libtoolize.m4sh (all_pkgconfig_files, all_pkgmacro_files)
9161         (all_pkgltdl_files): New variables listing all files ever
9162         maintained by any release of libtoolize.
9163         (func_install_pkgconfig_parent, func_install_pkgltdl_files)
9164         (func_install_pkgconfig_subproject, func_install_pkgmacro_parent)
9165         (func_install_pkgmacro_subproject): Carefully clean up any files
9166         that may have been installed by previous libtoolize releases.
9167         * tests/libtoolize.at: New test for libltdl/acinclude.m4 removal.
9168         Reported by Andreas Schwab <schwab@suse.de>.
9169
9170 2008-05-02  Peter O'Gorman  <peter@pogma.com>
9171
9172         It helps to close quotes.
9173         * libltdl/config/ltmain.m4sh (func_mode_link): Add closing '.
9174
9175 2008-05-01  Peter O'Gorman  <peter@pogma.com>
9176
9177         Use AC_CHECK_TOOL for otool and otool64.
9178         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
9179         * libltdl/config/ltmain.m4sh (func_mode_link): Use.
9180         Reported by Richard Purdie <rpurdie@rpsys.net>
9181
9182 2008-04-30  Eric Blake  <ebb9@byu.net>
9183
9184         Support cygwin 1.7.0 in loadlibrary loader.
9185         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD) <cygwin>: Check for modern
9186         function.
9187         * libltdl/loaders/loadlibrary.c (vm_open): Avoid deprecated
9188         cygwin_conv_to_full_win32_path.
9189
9190 2008-04-29  Gary V. Vaughan  <gary@gnu.org>
9191
9192         New libtoolize --no-warn option and LIBTOOLIZE_OPTIONS parsing.
9193         * libltdl/config/general.m4sh (opt_warning): New option.
9194         (func_warning): Only display a warning message if $opt_warning
9195         is true.
9196         * libtoolize.m4sh: Accept options in LIBTOOLIZE_OPTIONS
9197         environment variable.
9198         (--no-warn): Parse new option.
9199         (func_serial_update_check, func_keyword_update): Use func_warning.
9200         (func_check_macros): Bail out before style issues nags when
9201         $opt_warning is false.
9202         * doc/libtool.texi (Invoking Libtoolize): Document it.
9203         * tests/libtoolize.at: Test it.
9204         * NEWS: Updated.
9205
9206         Fix libtoolize test failure with aclocal-1.10.1.
9207         * tests/libtoolize.at
9208         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Force aclocal to
9209         search the source tree for latest libtool macros.
9210
9211 2008-04-24  Eric Blake  <ebb9@byu.net>
9212
9213         Fix bug in 2008-04-21 type improvements.
9214         * libltdl/ltdl.c (load_deplibs): Fix casting bug.
9215
9216 2008-04-23  Michael Haubenwallner  <michael.haubenwallner@salomon.at>
9217
9218         Use /nonexistent as destination for files not to be installed.
9219         * tests/darwin.at (darwin fat compile): Fix typo.
9220         * tests/inherited_flags.at (inherited_linker_flags): Change
9221         -rpath to /nonexistent.  This helps to avoid accidentally
9222         picking up libraries below /usr/local.
9223         * tests/template.at (simple template test): Likewise.  Fixes
9224         test failure for additional incompatible libstdc++ in
9225         /usr/local.
9226         * tests/testsuite.at (configure_options): Add
9227         --prefix=/nonexistent.
9228
9229 2008-04-23  Gary V. Vaughan  <gary@gnu.org>
9230
9231         * libtoolize.m4sh (rerun_aclocal): Remove unused variable.
9232         Reported by Olly Betts <olly@survex.com>
9233
9234 2008-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9235
9236         * tests/static.at (ccache -all-static): Ignore link warnings.
9237         Report by Gary V. Vaughan.
9238
9239 2008-04-22  Gary V. Vaughan  <gary@gnu.org>
9240
9241         Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
9242         * libtoolize.m4sh (func_check_macros): Always advise use of
9243         AC_CONFIG_MACRO_DIR when not able to copy libtool macros into
9244         the project tree.
9245         * tests/libtoolize.at: New test for correct diagnosis of mismatch
9246         between AC_CONFIG_MACRO_DIR and ACLOCAL_AMFLAGS.
9247         Update expected output of other tests.
9248         * NEWS: Updated.
9249
9250 2008-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9251
9252         Fix regression over 1.5.26 with ccache $CC -all-static.
9253         * libltdl/config/ltmain.m4sh (func_mode_link): Add
9254         $link_static_flag to compile_command and link_command only
9255         later, instead of right after a possible compiler wrapper.
9256         * tests/static.at (ccache -all-static): New test.
9257         * THANKS: Update.
9258         Report by Richard Purdie.
9259
9260 2008-04-22  Andreas Schwab  <schwab@suse.de>
9261             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9262
9263         Fix default argument for AC_LIBLTDL_CONVENIENCE.
9264         * libltdl/m4/ltdl.m4 (AC_LIBLTDL_CONVENIENCE): Default argument
9265         to libltdl.
9266         (AC_LIBLTDL_INSTALLABLE): Likewise.
9267         * tests/configure-iface.at (convenience libltdl): New test.
9268
9269 2008-04-21  Gary V. Vaughan  <gary@gnu.org>
9270
9271         Only complain that files are up-to-date with --force.
9272         As a side effect, this also means that when `aclocal' copies the
9273         libtool macros into `aclocal.m4' libtoolize complains only about
9274         the macro files that are missing or not up-to-date.
9275         * libtoolize.m4sh (func_echo_once): New function that prints
9276         the contents of a named variable only on the first call.
9277         (func_aclocal_update_check): New function that compares serial
9278         numbers of libtool macros in aclocal.m4 and only diagnoses the
9279         missing files.
9280         (func_copy, func_copy_cb, func_copy_some_files, func_serial_update)
9281         (func_keyword_update, func_ltmain_update, func_config_update)
9282         (func_install_update): Accept a new argument naming a variable
9283         containing a header string to print with func_echo_once iff any
9284         body text is output by this function.
9285         (func_install_pkgmacro_subproject, func_install_pkgmacro_parent)
9286         (func_install_pkgltdl_files, func_install_pkgconfig_subproject)
9287         (func_install_pkgconfig_parent: Set and pass a suitable
9288         header string variable for the above functions.
9289         (func_serial_update_check): Don't advise rerunning `libtoolize
9290         --force' when aclocal.m4 is not m4_including libtoolize installed
9291         macro files.
9292         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic
9293         /usr/local/share/aclocal paths to point into the uninstalled
9294         libtool macro directory.
9295         * tests/libtoolize.at: Update tests that were checking for old
9296         behaviour of outputing `file is already up to date' even when
9297         --force was not passed.
9298         * tests/libtoolize.at: New tests to prevent regressions of these
9299         smarter messages.
9300         * NEWS: Updated.
9301         Reported by Olly Betts <olly@survex.com>
9302
9303         Capture lt~obsolete.m4 serial number correctly in libtoolize.
9304         * libltdl/m4/lt~obsolete.m4: Add the filename to the #serial
9305         marker so that libtoolize's serial number checks can find it
9306         in a non-include using aclocal.m4.
9307         * NEWS: Updated.
9308         Reported by Olly Betts <olly@survex.com>
9309
9310         Allow better compile time type checking for lt_dladvise.
9311         * libltdl/lt__private.h (lt__handle, lt__advise): Typedefs
9312         removed in favour of...
9313         * libltdl/ltdl.h (lt_dlhandle),
9314         libltdl/libltdl/lt_dlloader.h (lt_dladvise): ...changing from
9315         void* to forward declarations.
9316         * libltdl/loaders/dlopen.c, libltdl/loaders/loadlibrary.c,
9317         libltdl/lt_dlloader.c, libltdl/ltdl.c: Remove many redundant
9318         type casts.
9319         * NEWS: Updated.
9320         Suggested by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
9321
9322 2008-04-21  Peter O'Gorman  <peter@pogma.com>
9323
9324         basename does not take a list of strings.
9325         * libltdl/config/ltmain.m4sh(func_extract_archives): Use sed
9326         $basename.
9327         * tests/darwin.at: New. Check that we can built fat program,
9328         shared library and convenience library.
9329         * Makefile.am: Add test.
9330         Reported by LiKai Liu <liulk@cs.bu.edu>
9331
9332         Use AC_CHECK_TOOL for lipo too.
9333         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
9334         * libltdl/config/ltmain.m4sh (func_extract_archives): Use.
9335
9336 2008-04-20  Gary V. Vaughan  <gary@gnu.org>
9337
9338         Fix misleading lt_dlopenadvise documentation.
9339         * doc/libtool.texi (lt_dlopenadvise): The last parameter is of
9340         type lt_dladvise, not lt_dladvise*.
9341         (my_dlopenext): Correct the example too.
9342         * NEWS: Updated.
9343         Reported by Gary Kumfert <kumfert@llnl.gov>
9344
9345 2008-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9346
9347         Fix testsuite cleanup warnings on AIX with NFS.
9348         * tests/testsuite.at [ aix ]: Set file mode creation so that
9349         'others' have no permissions.  Shared libraries are kept in
9350         memory on AIX after use if they are world-readable, which means
9351         on NFS mounts cleanup of test group directories will fail later.
9352         * THANKS: Update.
9353         Report and analysis by Michael Haubenwallner.
9354
9355         Fix nonportable use of expr.
9356         * libltdl/config/ltmain.m4sh (func_mode_link) <Transforming
9357         deplibs into only shared deplibs>: Fix expr portability issues,
9358         noted on FreeBSD.  While at it, simplify and avoid forking.
9359         Report by Bob Friesenhahn.
9360
9361         Exploit shell arithmetic expansion and ${#var}.
9362         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also check
9363         for arithmetic expansion, and ${#var}.
9364         (_LT_PROG_XSI_SHELLFNS): Define func_arith and func_len
9365         accordingly, falling back on 'expr'.  Note that the argument to
9366         func_len may not start with a hyphen.  In the pre-Posix
9367         fallback, take care not to rely on the exit status of the
9368         variable assignment (not portable), but set the length to
9369         $max_cmd_len instead.
9370         * libltdl/config/ltmain.m4sh (func_mode_link): Use func_arith
9371         and func_len throughout for integer arithmetic, fixing
9372         quadratical amount of counting for reloadable object and
9373         piecewise archive linking.  Change all comparisons with
9374         max_cmd_len to test for smaller, non-equal length.
9375         * THANKS: Update.
9376         Suggested by Roland Mainz.
9377
9378         * libltdl/config/ltmain.m4sh (func_mode_compile): Avoid
9379         redundant removal of old output files before compilation.
9380         Do not remove $obj until we have successfully grabbed the
9381         lockfile (in case the compiler doesn't grok `-c -o'), because
9382         it might be identical to $output_obj.
9383         At the end of the function, before we remove the lockfile,
9384         update $removelist so that if the trap hits after the lockfile
9385         has been removed, we do not accidentally remove $output_obj that
9386         does not belong to us.
9387         (func_write_libtool_object): Use $MV instead of mv.
9388
9389 2008-04-18  Andreas Schwab  <schwab@suse.de>
9390
9391         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Check optional
9392         argument.
9393         (AC_ENABLE_STATIC): Likewise.
9394         (AC_ENABLE_FAST_INSTALL): Likewise.
9395
9396 2008-04-16  Eric Blake  <ebb9@byu.net>
9397
9398         Make ChangeLog merges easier.
9399         * .gitattributes: New file.
9400         * HACKING: Mention how it helps.
9401
9402 2008-04-15  Peter O'Gorman  <peter@pogma.com>
9403
9404         Allow bootstrap from git repository.
9405         * Makefile.am: Pass srcdir as an argument to mkstamp and expect
9406         only 2 fields in mkstamps output.
9407         * clcommit.m4sh: Ditto.
9408         * configure.ac: Ditto.
9409         * libltdl/config/mkstamp: return a revision and date based on
9410         the number of lines which look like dates in all the ChangeLog*
9411         files in the directory we got as arg 1.
9412
9413 2008-04-11  Eric Blake  <ebb9@byu.net>
9414
9415         Fix usage of setmode without declaration on cygwin.
9416         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Ensure
9417         setmode has prototype for both mingw and cygwin.
9418
9419 2008-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9420
9421         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Move non-XSI
9422         definition of func_dirname_and_basename ...
9423         * libltdl/config/general.m4sh (func_dirname_and_basename):
9424         ... here, to use it for the other scripts that use general.m4sh
9425         (and as portable fallback for libtool).  Add marker for early
9426         insertion of generated shell functions (into libtool, not the
9427         other scripts) here.
9428         Use func_dirname_and_basename to compute progname, progpath.
9429         * libltdl/config/ltmain.m4sh (func_mode_help): Remove marker
9430         for insertion of generated shell functions.
9431         * tests/sh.test: Adjust function definition test to not match
9432         function call.
9433
9434         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS) <func_xform>:
9435         New function.
9436         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it to
9437         avoid two forks with XSI shells.
9438         * tests/suffix.test: Also test a file with multiple dots.
9439
9440 2008-04-10  Peter O'Gorman  <peter@pogma.com>
9441
9442         * libltdl/config/ltmain.m4sh (func_win32_libid,
9443         func_generate_dlsyms, func_extract_an_archive,
9444         func_extract_archives, func_mode_help): move these so they
9445         appear after func_mode_compile.
9446         * tests/nomode.test: Check that --mode=link --help works.
9447         Reported by Josh Triplett <josh@freedesktop.org>
9448
9449 2008-04-07  Gary V. Vaughan  <gary@gnu.arg>
9450
9451         * doc/libtool.texi (Libltdl interface): Add missing
9452         documentation for lt_dlopenavise.
9453         Reported by Anton Erti <anton@mips.complang.tuwien.ac.at>
9454
9455         * configure.ac, libltdl/configure.ac (AM_INIT_AUTOMAKE): Use
9456         gnu rather than gnits standards so that version number 2.2.3a
9457         is not rejected!
9458         Reported by Olly Betts <olly@survex.com>
9459
9460 2008-04-01  Gary V. Vaughan  <gary@gnu.arg>
9461
9462         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9463         number to 2.2.3a.
9464
9465         GNU Libtool 2.2.2 was released.
9466
9467         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9468         number to 2.2.2.
9469         * libltdl/Makefile.in (LTDL_VERSION_INFO): C:R+1:A because the
9470         interfaces are unchanged, even though we improved the code some
9471         more.
9472         * NEWS: Updated.
9473
9474         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
9475         libltdl/m4/ltoptions.m4: Bump serial numbers to account for
9476         changes since 2.2 release.
9477
9478 2008-03-27  Peter O'Gorman  <peter@pogma.com>
9479
9480         * libltdl/m4/libtool.m4 [_LT_REQUIRED_DARWIN_CHECKS]: Fix the
9481         test for -single_module and log it to config.log.
9482         Reported by Torok Edwin and Nigel Home.
9483
9484 2008-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9485
9486         Document that disable-static plus -all-static is not portable.
9487         * doc/libtool.texi (Link mode): -all-static does not go well
9488         with disable-static on most systems.
9489         * tests/static.at (static linking flags for programs) [!aix]:
9490         With --disable-static but nonempty link_static_flag, skip the
9491         m-all-static link.  Do not skip it on AIX, as there the
9492         enable_static is self-inflicted, and thus expected to work.
9493         * THANKS: Update.
9494         Report by Nix.
9495
9496 2008-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9497
9498         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): No need to escape
9499         backticks in argument to AC_MSG_WARN or AC_MSG_ERROR.
9500         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE, LTDL_INIT): Likewise.
9501
9502 2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9503
9504         * libltdl/config/ltmain.m4sh (NLS nuisances): Fix quoting of
9505         localization variables for shell-active characters.
9506         * tests/localization.at (localized compiler messages): Extend
9507         test.
9508         * THANKS: Update.
9509         Report by Mike Frysinger.
9510
9511 2008-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9512
9513         * tests/defs.m4sh (func_get_config): Build egrep regex to speed
9514         up extracting several variables at once.  Use it to extract all
9515         default variables at once.  Also extract build_alias and
9516         host_alias from the libtool script.
9517         (func_configure_nofail): Use build_alias and host_alias for
9518         --build and --host, respectively.  Pass each if nonempty.
9519         * tests/testsuite.at: Pass --build if build_alias is nonemtpy.
9520         * tests/quote.test: Extract ECHO and wl at once.
9521
9522         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_WIN32_DLL): Require
9523         AC_CANONICAL_HOST.
9524         * THANKS: Update.
9525         Report by Jakub Bogusz.
9526
9527 2008-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9528
9529         * NEWS: Update.
9530
9531 2008-03-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
9532
9533         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src) [file
9534         scope]: additional #includes and #defines to support...
9535         (func_emit_cwrapperexe_src) [main]: ensure stdout is set to
9536         binary mode for cygwin|mingw builds. Ensure temporary script
9537         file is written in binary mode for cygwin|mingw builds.
9538         (func_mode_link) [cygwin|mingw]: cross-build support - only
9539         use cwrapper to generate shell wrapper if building native;
9540         otherwise use func_emit_wrapper()
9541
9542 2008-03-12  Henning Nielsen Lund  <hnl_dk@amigaos.dk>
9543
9544         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
9545         (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [amigaos]: Port to
9546         AmigaOS4 shared libraries on powerpc.
9547         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [amigaos]:
9548         Likewise.
9549         * THANKS, NEWS: Update.
9550
9551 2008-03-09  Bruno Haible  <bruno@clisp.org>
9552         and Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9553
9554         Fix compiler output to be in the user locale.
9555         * libltdl/config/general.m4sh (func_show_eval_locale): New
9556         function, for running commands in the user locale.
9557         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it for
9558         compiling.
9559         * tests/localization.at (localized compiler messages): New test.
9560         * Makefile.am: Adjust.
9561         Report by Bruno Haible.
9562
9563 2008-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9564
9565         Fix several test failures on Cygwin and MinGW.
9566         * tests/nonrecursive.at: Use -no-undefined for foo.la.
9567         * tests/recursive.at: Likewise.
9568         * tests/subproject.at: Likewise.
9569         * tests/lt_dladvise.at: For systems where undefined symbols are
9570         not allowed, to not try to load the module libdepend.
9571         [ mingw ]: Add to list of such systems.
9572         * tests/testsuite.at (_LT_AT_TRANSLATE_TEXT_OUTPUT): New macro,
9573         to translate line ending of expout and experr files suitable for
9574         host executables.
9575         (LT_AT_CHECK, LT_AT_NOINST_EXEC_CHECK): Use it.
9576         Report by Bob Friesenhahn.
9577
9578         Fix installcheck dependencies, fix for --program-transform-name.
9579         * Makefile.am (installcheck-local): Depend upon tests/atconfig
9580         and $(srcdir)/$(TESTSUITE).
9581         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): New macro.
9582         (LT_AT_CHECK_LIBTOOLIZE): Use it to transform expout and experr
9583         files suitably.
9584         * HACKING: Update.
9585
9586         Drop usage of obsolete macros AC_EXEEXT and AC_OBJEXT.
9587         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
9588         (_LT_COMPILER_C_O, LT_PATH_NM, _LT_CMD_GLOBAL_SYMBOLS, _LT_SETUP):
9589         Drop usage of obsolete AC_OBJEXT and AC_EXEEXT.
9590         * tests/am-subdir.at (C++ subdir-objects): Likewise.
9591
9592 2008-03-07  Peter O'Gorman  <peter@pogma.com>
9593
9594         * tests/convenience.at (Java convenience archives): Skip test if
9595         gcj cannot compile a working executable from .java files.
9596         Report by Nelson H. F. Beebe.
9597
9598         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Need to set LD.
9599         Reported by Nelson H. F. Beebe.
9600
9601 2008-03-06  Peter O'Gorman  <peter@pogma.com>
9602
9603         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Undo commit - bad idea.
9604
9605         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Report FC=no if the FC
9606         compiler is not a GNU compiler and the CXX compiler is a GNU
9607         compiler.
9608         Reported by Nelson H. F. Beebe.
9609
9610 2008-03-06  Gary V. Vaughan  <gary@gnu.org>
9611
9612         * Makefile.maint (TSDEPS_DIST): Removed.  No longer used.
9613         (TSDEPS): libtool.m4 has long since moved to libltdl.
9614         (cvs-dist): Don't put the suffix dot in twice.
9615
9616 2008-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9617
9618         * tests/convenience.at (Java convenience archives): Skip test if
9619         gcj cannot compile a .java file.
9620         Report by Nelson H. F. Beebe.
9621
9622 2008-03-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9623
9624         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p): redirect
9625         and restore from stdin, not stdout.
9626         * tests/execute-mode.at (execute mode): Adjust test to catch
9627         this.
9628         Report by Roberto Bagnara.
9629
9630 2008-03-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9631
9632         Fix libltdl to not skip dlopen on systems with several loaders,
9633         such as HP-UX, Cygwin.
9634         * libltdl/slist.c (slist_concat): When appending to the tail
9635         of a list, do not drop items off the beginning of the list.
9636         * NEWS: Update.
9637
9638         * libltdl/config/ltmain.m4sh (func_mode_execute): Replace only
9639         arguments we have identified as shell or C wrappers.
9640         (func_emit_wrapper): Output error message on stderr.
9641         * tests/execute-mode.at: New file, with --mode=execute tests.
9642         * Makefile.am: Adjust.
9643         * NEWS: Update.
9644         Fixes 2.2 regression.  Report by Roberto Bagnara.
9645
9646         * libltdl/m4/libtool.m4 (_LT_CONFIG): Drop misleading `GNU'
9647         prefix before the host package name in the "Generated by" line
9648         for the libtool script.
9649         * THANKS: Update.
9650         Reports by Peter Rosin and Roberto Bagnara.
9651
9652         * doc/libtool.texi (Module loaders for libltdl): Fix typo.
9653
9654         * libltdl/loaders/dld_link.c (vl_exit): New function, zero out ...
9655         (vtable): ... this new file static variable split out from ...
9656         (get_vtable): ... here.  Initialize vtable, register vl_exit as
9657         dlloader_exit function.
9658         * libltdl/loaders/dlopen.c: Likewise.
9659         * libltdl/loaders/dyld.c: Likewise.
9660         * libltdl/loaders/load_add_on.c: Likewise.
9661         * libltdl/loaders/loadlibrary.c: Likewise.
9662         * libltdl/loaders/shl_load.c: Likewise.
9663         * libltdl/loaders/preopen.c: Likewise; vl_exit existed here
9664         already.
9665         * tests/lt_dlexit.at (lt_dlexit unloading libs): Update test.
9666         * NEWS: Update.
9667         Report by Andreas Schwab.
9668
9669 2008-03-01  Gary V. Vaughan  <gary@gnu.org>
9670
9671         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9672         number to 2.3a.
9673
9674         GNU Libtool 2.2 was released.
9675
9676         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9677         number to 2.2.
9678         * NEWS: Updated.
9679
9680         * tests/lt_dladvise.at, tests/lt_dlexit.at,
9681         tests/need_lib_prefix.at: Skip these tests when called from
9682         `make distcheck DISTCHECK_CONFIGURE_FLAGS=--disable-ltdl-install'.
9683         The tests try to link against the dummy installed libltdl.la
9684         from .../_inst/lib/libltdl.la, which does not exist when
9685         configured with --disable-ltdl-install.
9686
9687 2008-02-29  Gary V. Vaughan  <gary@gnu.org>
9688
9689         * libltdl/m4/argz.m4 (AC_CHECK_FUNCS): Also use our replacement
9690         argz if the system argz_add or argz_count are missing.
9691         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
9692
9693 2008-02-26  Karl Berry  <karl@freefriends.org>
9694
9695         * libltdl/argz.c (argz_add, argz_count): New functions.
9696         * libltdl/argz_.h: Declare them.
9697         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
9698
9699 2008-02-20  Peter O'Gorman  <peter@pogma.com>
9700
9701         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Do not call the
9702         _LT_SYS_DYNAMIC_LINKER macro here.
9703         Reported by Mike Frysinger <vapier@gentoo.org>
9704
9705 2008-02-15  Peter O'Gorman  <peter@pogma.com>
9706
9707         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix typo.
9708
9709 2008-02-14  Peter Breitenlohner  <peb@mppmu.mpg.de>
9710
9711         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better handling
9712         of predefined values for lt_cv_sys_lib_search_path_spec and
9713         lt_cv_sys_lib_dlsearch_path_spec.
9714
9715 2008-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9716
9717         * libtoolize.m4sh (func_install_pkgconfig_files): Only call
9718         func_install_pkgconfig_parent if $seen_autoconf.
9719         * tests/standalone.at (compiling softlinked libltdl)
9720         (compiling copied libltdl, installable libltdl)
9721         (linking libltdl without autotools): Use checked libtoolize
9722         calls to catch warnings.
9723
9724 2008-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9725
9726         * libltdl/configure.ac: Bump package version.
9727         * HACKING: Reminder to do it next time, too.
9728
9729 2008-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9730
9731         * tests/mdemo/Makefile.am (@LIBLTDL@): Update outdated
9732         dependencies.
9733         ($(top_distdir)/libltdl/libtool): Remove.
9734         Fixes spurious mdemo-dryrun failure with OpenBSD make.
9735
9736 2008-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9737
9738         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
9739         Treat like icc and ecc, for fixed `-Wl,' and `-KPIC' settings.
9740
9741 2008-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9742
9743         * tests/archive-in-archive.at
9744         (static library contains static library): Test also the actual
9745         broken link command, and the following install command, as
9746         UnixWare ar rightly refuses to put an archive into an archive.
9747         Report by Tim Rice.
9748
9749 2008-02-06  Peter O'Gorman  <peter@pogma.com>
9750
9751         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Only set default
9752         LT_INIT values for LT_INIT, not LTDL_INIT.
9753         Reported by Jochem Huhmann <joh@revier.com>
9754
9755 2008-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9756
9757         * tests/testsuite.at (LT_AT_TAG): For the CXX tag, if $CXX is
9758         g++, check that `g++ -v' works; AC_PROG_CXX may have set that
9759         as default value even if it found no C++ compiler.
9760         Report by Andreas Schwab.
9761
9762 2008-02-02  Gary V. Vaughan  <gary@gnu.org>
9763
9764         * libltdl/Makefile.inc (EXTRA_DIST): Now that we're not using
9765         Autoconf's AC_SOURCES macro, Automake can't trace our extra
9766         source files argz, lt__dirent.c and lt__strl.c.  List them
9767         manually here to make sure they are distributed.
9768         * NEWS: Updated.
9769         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
9770
9771 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9772
9773         * configure.ac (AC_INIT): Bump version number to 2.1c.
9774
9775         GNU Libtool 2.1b was released.
9776
9777         * configure.ac (AC_INIT): Bump version number to 2.1b.
9778         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Increment to account
9779         for new interfaces since the last libltdl update.
9780         * HACKING (Release Procedure): Note that LTDL_VERSION_INFO is now
9781         kept in libltdl/Makefile.inc.
9782
9783 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9784
9785         * tests/cdemo, tests/depdemo, tests/fcdemo, tests/pdemo,
9786         tests/demo, tests/f77demo, tests/mdemo, tests/tagdemo
9787         (distclean-local): Remove compiler file droppings left by
9788         Autoconf tests that prevent make dist from finishing on
9789         several machines including Mac OS 10.5.
9790
9791 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9792
9793         Unfortunately, the autoconf implementation of AC_LIBOBJ and
9794         friends requires all libobjs to be in the same directory, as
9795         declared by AC_CONFIG_LIBOBJ_DIR.  That might prevent using
9796         either recursive or nonrecursive libltdl if the parent project
9797         has libobjs of its own, except that this patch tracks libltdl's
9798         libobjs in another namespace:
9799
9800         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ, _LT_LIBSOURCES): Versions of
9801         AC_LIBOBJ and AC_LIBSOURCES that save missing sources in a
9802         ltdl_LIBOBJS automake macro, instead of the global LIBOBJS
9803         automake macro.  Content of the macros inspired by code from
9804         gnulib-tool.
9805         (_LTDL_MODE_DISPATCH): Initialise lt_libobj_prefix in
9806         nonrecursive mode.
9807         (LTDL_INIT): Push and pop the new definitions around potential
9808         sites that call AC_LIBOBJ.  Also, using lt_libobj_prefix,
9809         initialise ltdl_LIBOBJS and ltdl_LTLIBOBJS.
9810         * libtoolize.m4sh (func_fixup_Makefile): Substitute ltdl_LIBOBJS
9811         and ltdl_LTLIBOBJS for LIBOBJS and LTLIBOBJS during copying
9812         either Makefile.am or Makefile.inc, depending on ltdl_mode.
9813         Reported by Eric Blake <ebb9@byu.net>
9814
9815 2008-01-30  Gary V. Vaughan  <gary@gnu.org>
9816
9817         There are 5 distinct batches of files that libtoolize might
9818         install into a project, depending on whether libltdl is
9819         being installed in subproject mode, and in that case whether
9820         the parent project shares the config and macro directories
9821         with the subproject ltdl.  Make a separate function for each
9822         of those 5 batches (4 new functions below, plus the recently
9823         factored func_install_pkgltdl_files), and make a clearer
9824         distinction between when each of them is needed:
9825
9826         * libtoolize.m4sh (func_install_pkgmacro_subproject):
9827         New function for installing and reporting on m4 files copied
9828         to a subproject ltdl directory.
9829         (func_install_pkgmacro_parent): Similar new function for m4
9830         files copied solely for the use of the parent project,
9831         including serial checking.
9832         (func_install_pkgconfig_subproject): New function for
9833         installing and reporting on config helper files copied to a
9834         subproject ltdl directory.
9835         (func_install_pkgconfig_parent): Similar new function for
9836         config helper files copied solely for the use of the parent
9837         project, including serial checking.
9838         (func_install_pkgmacro_files, func_install_pkgconfig_files):
9839         Rewritten in terms of the above functions.
9840         * tests/libtoolize.at: Adjust test expout's to match newly
9841         regularized libtoolize output.
9842         Move parent project pkgconfig files to build-aux directory
9843         so that progress messages show an obvious difference to
9844         pkgconfig files installed to subproject `config' directory.
9845         (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test.
9846         (diagnose missing LT_CONFIG_LTDL_DIR): New test.
9847         (subproject ltdl with non-shared directories): New test.
9848         Reported by Eric Blake <ebb9@byu.net>
9849
9850 2008-01-29  Peter O'Gorman  <peter@pogma.com>
9851
9852         * libltdl/m4/libtool.m4 [darwin]: Changes to glob pattern matching
9853         to be safer.
9854
9855         Search the compiler path too.
9856         * libltdl/m4/libtool.m4 (compiler_lib_search_dirs): New variable.
9857         * libltdl/config/ltmain.m4sh: Use it.
9858         Reported by Maynard Johnson
9859
9860 2008-01-28  Gary V. Vaughan  <gary@gnu.org>
9861
9862         * libtoolize.m4sh (func_check_macros): Correct typo with
9863         '$opt_quiet ||' where '$opt_quiet &&' that was preventing
9864         func_check_macros from running!
9865
9866         * libtoolize.m4sh: Set opt_ltdl whenever seen_ltdl is set
9867         so that libtoolize behaves as though --ltdl was passed even
9868         if it wasn't as long as LTDL_INIT (or equivalent) was seen
9869         in configure.ac.  Adjust redundant '$opt_ltdl || $seen_ltdl'
9870         to simply '$opt_ltdl'.
9871         Reported by Eric Blake <ebb9@byu.net>
9872
9873         * libtoolize.m4sh (func_check_macros): Check opt_quiet
9874         in the function itself to simplify calling it.  Also move
9875         the definition of the function.
9876
9877         * libtoolize.m4sh (func_scan_files): Be sure to set the
9878         default libltdl mode to 'subproject' when libtoolize is
9879         executed before configure.ac has been updated.
9880
9881 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
9882
9883         * libtoolize.m4sh (func_install_pkgconfig_files)
9884         (func_install_pkgmacro_files, func_install_pkgltdl_files):
9885         Factored out from the 'Main' section of the file.
9886
9887         * libtoolize.m4sh (subproject_auxdir, subproject_macrodir):
9888         New variables to hold the default locations for auxfiles
9889         and macrofiles in a subproject libltdl.
9890         (ac_auxdir, ac_macrodir): New variables to hold the values
9891         passed by AC_CONFIG_AUX_DIR and AC_CONFIG_MACRO_DIR resp.
9892         (auxdir, macrodir): Adjust to contain the values to be
9893         used by libtoolize at runtime.
9894
9895         * libtoolize.m4sh (func_fixup_Makefile)
9896         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
9897         (func_massage_pkgconfig_files): Add missing $opt_debug.
9898
9899 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
9900
9901         * libtoolize (func_fixup_Makefile, func_massage_aclocal_DATA)
9902         (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
9903         Add missing $opt_debug.
9904
9905 2008-01-26  Gary V. Vaughan  <gary@gnu.org>
9906
9907         * libtoolize.m4sh (Main): Copy (or link) libltdl sources
9908         into project tree when LTDL_INIT was seen, whether or not
9909         `--ltdl' is passed.
9910         (func_check_macros): Recommend LTDL_INIT instead of
9911         LT_WITH_LTDL when `--ltdl' is used before configure.ac is
9912         upgraded.
9913         * tests/libtoolize.at: Test that it works.
9914         (_LT_AT_LTDL_SETUP): Factor out some common test setup.
9915         Reported by Eric Blake <ebb9@byu.net>
9916
9917 2008-01-24  Peter O'Gorman  <peter@pogma.com>
9918
9919         * doc/notes.texi: Fix errors in previous commit.
9920
9921         * libltdl/m4/libtool.m4 (sys_lib_search_path_spec,
9922         sys_lib_dlsearch_path_spec): Allow for a cache variable
9923         lt_cv_sys_lib_... to set these at configure time.
9924         * doc/notes.texi: Short note about the above change.
9925
9926 2008-01-24  Eric Blake  <ebb9@byu.net>
9927
9928         Add proper quoting to doc examples.
9929         * doc/libtool.texi: Use m4 quotes where appropriate.
9930         (Test descriptions): Fix truncated sentence.
9931
9932 2008-01-18  Gary V. Vaughan  <gary@gnu.org>
9933
9934         * Makefile.am (DISTCLEANFILES): Remove libtool.dvi generated
9935         by 'make dvi'.
9936
9937 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9938
9939         * libtoolize.m4sh (func_scan_files): Avoid matching our own
9940         macro code when scanning configure.ac and aclocal.m4.
9941         Don't produce spurious output if AC_PROG_RANLIB is found.
9942         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Add a (weak) check
9943         that we don't match our own macro code when searching for user
9944         code calling us.
9945         * TODO: Updated.
9946
9947 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9948
9949         New variable LTDLDEPS for use in output_DEPENDENCIES.
9950
9951         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE, _LTDL_INSTALLABLE)
9952         (LTDL_INIT): Set and substitute LTDLDEPS according to chosen
9953         method.
9954         * tests/configure-iface.at (installable libltdl)
9955         (--with-ltdl-include/lib, --with-included-ltdl): Test it.
9956         * doc/libtool.texi (Distributing libltdl): Document LTDLDEPS.
9957         * NEWS: Updated.
9958         Dependency bug exposed by Eric Blake in M4, found by Bob Proulx
9959         build daemon.
9960
9961 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9962
9963         * doc/libtool.texi (Distributing libltdl): Clarify that
9964         `${top_build_prefix}' may be used in place of `${top_builddir}/'.
9965
9966         * doc/libtool.texi (Distributing libltdl): Clarify that
9967         LTDL_INIT goes after LT_INIT; also show the latter in the
9968         respective examples.
9969         * tests/subproject.at: Adjust order.
9970
9971 2008-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9972
9973         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Use AM_CONDITIONAL
9974         only if defined.  Allows to use libltdl without aclocal.
9975
9976 2008-01-16  Peter O'Gorman  <peter@pogma.com>
9977
9978         * libltdl/m4/libtool.m4: Set GCC var for every tag, avoids need
9979         to set withGCC var.
9980
9981 2008-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9982
9983         * configure.ac: Set libltdl nonrecursive option, to avoid
9984         configuring libltdl inside the Libtool package.
9985
9986 2008-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9987
9988         Silence all non-warning output from `libtool --silent'.
9989         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
9990         (func_extract_archives, func_mode_link): Use func_verbose
9991         instead of func_echo for all non-warning output.
9992
9993         * Makefile.maint (fetch): Update to match upstream git sources.
9994         Pull `INSTALL' from gnulib instead of from Autoconf.
9995
9996         * doc/notes.texi: Mention AIX binutils deficiency for C++ code.
9997         Report by Rainer Tammer.
9998         Suggest using bash for configure.
9999
10000         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Fix to use
10001         new _LT_SET_OPTION semantics.
10002
10003 2008-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10004
10005         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define
10006         LTDL_DLOPEN_SELF_WORKS, depending upon lt_cv_dlopen_self.
10007         * libltdl/loaders/dlopen.c (vm_open) [!LTDL_DLOPEN_SELF_WORKS]:
10008         Fail for dlopen(NULL), so that the preopen loader is used.  This
10009         fixes mdemo-exec.test failures on AIX where dlopen(NULL)
10010         succeeds but dlsym resolves no symbol.
10011         * NEWS: Update.
10012         Report by Rainer Tammer.
10013
10014         * tests/am-subdir.at: Drop unused variables.
10015         * tests/configure-iface.at: Likewise.
10016         * tests/ctor.at: Likewise.
10017         * tests/early-libtool.at: Likewise.
10018         * tests/lt_dladvise.at: Likewise.
10019         * tests/old-m4-iface.at: Likewise.
10020         * tests/lt_dlexit.at: Likewise.  Also drop unused functions.
10021
10022         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Also copy needed
10023         lt~obsolete.m4.
10024
10025         * libltdl/config/ltmain.m4sh (func_mode_link): Fix warning
10026         about -l and -L for archives and objects as output, to not
10027         trigger for *.la files.  Non-convenience archives are diagnosed
10028         later on.
10029
10030         * tests/configure-iface.at: Ensure LTDLINCL is expanded
10031         before CPPFLAGS, so that even CPPFLAGS=-I/usr/local/include
10032         won't make the tests prefer an installed ltdl.h over the
10033         in-package one.
10034         * tests/lt_dladvise.at, tests/lt_dlexit.at: Likewise.
10035         * tests/need_lib_prefix.at, tests/old-m4-iface.at: Likewise.
10036         Report by Bob Friesenhahn.
10037
10038 2008-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10039
10040         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) <exclude_expsyms>:
10041         Also exclude `_GLOBAL__F[ID]_.*'.  Also set for the C++ tag.
10042         Fixes esp. demo/helldl build failure with GCC on AIX.
10043         Report by Rainer Tammer.
10044
10045 2008-01-11  Peter O'Gorman  <peter@pogma.com>
10046
10047         * libltdl/m4/libtool.m4 [darwin]: Reorganize darwin support, use
10048         dsymutil if it is available so that debugging is possible, check
10049         for nmedit and dsymutil with AC_CHECK_TOOL, use the linker flag
10050         -exported_symbols_list in preference to nmedit if it is available.
10051         Drop support for xlc, it is probably broken.
10052         * tests/template.at [darwin]: Skip this test, I can not find a way
10053         to make it work on darwin9 with Xcode-3.0.
10054         * NEWS: Note the dropping of xlc support.
10055
10056 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10057
10058         * libltdl/m4/libtool.m4 (LT_INIT): m4_require, not AC_REQUIRE
10059         _LT_CHECK_BUILDDIR, as it's m4_defun'ed, not AC_DEFUN'ed.
10060         Report by Peter O'Gorman.
10061
10062         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE): Restore correct
10063         _LT_BUILD_PREFIX-using code.
10064
10065 2008-01-08  Gary V. Vaughan  <gary@gnu.org>
10066
10067         * tests/recursive.at: Remove bogus --debug option.
10068         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10069
10070         * tests/configure-iface.at: Build libltdl in a subdir so that
10071         it can be easily removed without trying to remove config.log
10072         on windows (which can't delete a file until it is closed).
10073         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10074
10075         * libltdl/m4/ltdl.m4 (LTDL_INSTALLABLE): Use _LT_BUILD_PREFIX
10076         instead of ${top_builddir} for Autoconf-2.62.
10077         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10078
10079         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Correct closing
10080         comment.
10081         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10082
10083         * NEWS: Grammar nit.
10084
10085         * tests/configure-iface.at, tests/nonrecursive.at,
10086         tests/recursive.at, tests/subproject.at (_LTDL_SETUP):
10087         Renamed to _LT_AT_LTDL_SETUP to avoid a nameclash with
10088         libltdl/m4/ltoptions.m4:_LTDL_SETUP from yesterday's patch.
10089         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10090
10091 2008-01-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10092
10093         * tests/runpath-in-lalib.at (Runpath in libtool library files):
10094         Compile program file without libtool.
10095         Report by Rainer Tammer.
10096
10097 2008-01-07  Rainer Tammer  <tammer@tammer.net>  (tiny change)
10098             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10099
10100         Support AIX 6.1.
10101         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
10102         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10103         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
10104         (_LT_LANG_FC_CONFIG): Adjust case patterns to match AIX 6
10105         through 9 as well.
10106         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
10107         * NEWS: Update.
10108         * THANKS: Update.
10109
10110 2008-01-07  Gary V. Vaughan  <gary@gnu.org>
10111
10112         Move libltdl build mode options from LT_CONFIG_LTDL_DIR to
10113         LTDL_INIT.  Accept (optional) new 'convenience' and 'installable'
10114         options in lieu of LTDL_CONVENIENCE and LTDL_INSTALL macros. And
10115         also, implement --with-included-ltdl, --with-ltdl-lib and
10116         --with-ltdl-include configure-time options:
10117
10118         * libltdl/m4/ltoptions.m4: Associate existing option settings with
10119         LT_INIT.
10120         (LT_OPTION_DEFINE): Associate options 'nonrecursive', 'recursive',
10121         'subproject', 'installable' and 'convenience' with LTDL_INIT.
10122         (_LT_MANGLE_OPTION, _LT_SET_OPTION, _LT_IF_OPTION)
10123         (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Add MACRO-NAME argument to
10124         support options to named macros instead of hardcoding only LT_INIT
10125         options.
10126         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE): Factor common code from
10127         LTDL_CONVENIENCE and LTDL_INIT([convenience]).
10128         (_LTDL_INSTALLABLE): Factor out common code from LTDL_INSTALLABLE
10129         and LTDL_INIT([installable]).
10130         (_LTDL_SETUP): Renamed from LTDL_INIT.  Support new configure-time
10131         options: --with-included-ltdl, --with-ltdl-lib,
10132         --with-ltdl-include.
10133         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
10134         (LT_WITH_LTDL): Removed.
10135         (LTDL_INIT): Parse caller options.
10136         * libltdl/m4/libtool.m4 (LT_INIT): Declare that this macro must be
10137         expanded before LTDL_INIT, and be sure to parse caller options.
10138         * configure.ac: Call directly into internal _LTDL_SETUP macro.
10139         * libtoolize.m4sh (func_scan_files): Ltdl mode argument moved from
10140         LT_CONFIG_LTDL_DIR to LTDL_INIT.
10141         * tests/nonrecursive.at, tests/recursive.at: Use new interfaces.
10142         * tests/configure-iface.at: Test it.
10143         * Makefile.am (TESTSUITE_AT): Add configure-iface.at.
10144         * doc/libtool.texi (Distributing libltdl): Document improved
10145         LTDL_INIT interfaces.
10146         * NEWS: Updated.
10147
10148 2008-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10149
10150         * libltdl/config/ltmain.m4sh (func_mode_link): When creating
10151         reloadable object files, avoid issuing plain `rm -f' without
10152         further arguments, even if the line length limit is ridiculously
10153         low as in the `Run tests with low max_cmd_len' test.  This
10154         failure is exposed on NetBSD.
10155         Report by Patrick Welche.
10156
10157         * Makefile.am (EXTRA_DIST): Add ChangeLog.2007.
10158         * ChangeLog.2007: New, rotated, from...
10159         * ChangeLog: ...here.
10160         * NEWS, README, README.alpha, Makefile.am, libtoolize.m4sh,
10161         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
10162         libltdl/m4/libtool.m4: Bump copyright years.
10163
10164 2007-11-30  Stefan Sperling  <stsp@elego.de>  (tiny change)
10165
10166         * doc/libtool.texi (Linking executables): Reorder paragraphs.
10167
10168 2007-11-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10169
10170         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: The IBM
10171         XL 8.0 C++ compiler may also be called xlc++*, not only xlC*.
10172         Report by Nysal K Jan <jnysal@in.ibm.com>.
10173
10174 2007-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10175
10176         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): New macro.
10177         Warn about whitespace in the absolute build tree name.
10178         (LT_INIT): Use it.
10179         * THANKS: Update.
10180         Report by Jim Meyering.
10181
10182         * libltdl/config/ltmain.m4sh (func_extract_an_archive)
10183         (func_extract_archives): Add some quoting.
10184
10185 2007-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10186
10187         Use `${top_build_prefix}' for better compatibility with non-GNU make.
10188         * libltdl/m4/ltdl.m4 (_LT_BUILD_PREFIX): New macro.
10189         If the Autoconf version used is >= 2.62, then expand to
10190         `${top_build_prefix}', otherwise to `${top_builddir}/'.
10191         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Use it for defining
10192         LIBLTDL.  Fixes a build failure with AIX make in a package
10193         using convenience libltdl in nonrecursive mode.
10194         * doc/libtool.texi (Distributing libltdl): Document requirements
10195         to define `top_build_prefix' if Automake is not used.
10196         Report by Bob Friesenhahn.
10197
10198 2007-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10199
10200         Avoid warnings about conftest.dSYM directories on Mac OS X Leopard.
10201         * libltdl/m4/libtool.m4 (_LT_LINKER_BOILERPLATE)
10202         (_LT_LINKER_OPTION, _LT_CMD_GLOBAL_SYMBOLS): Remove
10203         conftest.dSYM directory.
10204         Report and analysis by Jeff Squyres and Peter O'Gorman.
10205
10206 2007-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10207
10208         * libltdl/configure.ac: Drop the broken and long-disabled code
10209         to output a banner for the libltdl configure.  Avoids the need
10210         to ship mkstamp with libltdl.
10211
10212 2007-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10213
10214         * tests/runpath-in-lalib.at: New test.
10215         * Makefile.am: Update.
10216         Report by Benoit SIGOURE <tsuna@lrde.epita.fr>.
10217
10218 2007-10-16  Eric Blake  <ebb9@byu.net>
10219
10220         Speed up bootstrap by improving lt_join.
10221         * libltdl/m4/ltsugar.m4 (lt_join, _lt_join): Rewrite to mirror
10222         Autoconf 2.62's faster implementation.
10223
10224 2007-10-12  Eric Blake  <ebb9@byu.net>
10225
10226         Whitespace cleanup.
10227         * libltdl/m4/ltsugar.m4: Avoid space-tab in indents.
10228         * libltdl/m4/libtool.m4: Avoid trailing space.
10229
10230         Deal with Autoconf 2.62's semantic change in m4_append.
10231         * libltdl/m4/ltsugar.m4 (lt_append): Replace broken versions of
10232         m4_append.
10233         (lt_if_append_uniq): Don't require separator to be overquoted, and
10234         avoid broken m4_append.
10235         (lt_dict_add): Fix typo.
10236         * libltdl/m4/libtool.m4 (_LT_DECL): Don't overquote separator.
10237
10238 2007-10-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10239
10240         * libltdl/config/ltmain.m4sh: Also sanitize `LANGUAGE'.
10241         (func_mode_execute): Also restore `LANGUAGE', for old glibc.
10242         Report by Paul Eggert against Autoconf.
10243
10244 2007-10-11  Eric Blake  <ebb9@byu.net>
10245
10246         * libltdl/.cvsignore: Ignore argz.h.
10247
10248 2007-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10249
10250         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
10251         <lt_cv_prog_compiler_pic_works>: Renamed from
10252         lt_prog_compiler_pic_works.
10253         <lt_cv_prog_compiler_static_works>: Renamed from
10254         lt_prog_compiler_static_works.
10255         * NEWS: Update.
10256
10257 2007-10-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10258
10259         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
10260         extension `.sx'.
10261         * tests/suffix.test: Test it.
10262
10263 2007-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10264
10265         * libltdl/lt_dlloader.c (loader_callback, lt_dlloader_get): Use
10266         NULL, not 0, for the benefit of too picky compilers like PGI.
10267         * slist.c (slist_tail): Likewise.  Include stddef.h, for NULL.
10268         Report by Jeff Squyres.
10269
10270 2007-09-05  Eric Blake  <ebb9@byu.net>
10271
10272         * libltdl/ltdl.c (lt_dlcaller_get_data): Work even when no caller
10273         has set data.
10274
10275 2007-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10276
10277         * doc/libtool.texi (User defined module data)
10278         <lt_dlinterface_register>: Document that a NULL place matches
10279         all modules.
10280         * libltdl/lt_dlloader.c (lt_dlloader_remove): Actually iterate
10281         over all open modules when looking for modules that use it.
10282         If a resident module is found, return but do not set the error
10283         string.
10284         * libltdl/ltdl.c (lt_dlexit): When removing dlloaders, ignore
10285         errors that stem from earlier failed commands.  Exposed by the
10286         lt_dladvise test.
10287         Fixes regression over branch-1-5.
10288         Memleak report as Coverity CID 19 via Jeff Squyres.
10289
10290 2007-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10291
10292         * NEWS: Update.
10293
10294         * libltdl/ltdl.c (trim): Fix possible write beyond array bound.
10295
10296         * libltdl/ltdl.c (lt_dlopenadvise): Instead of asserting, return
10297         FILE_NOT_FOUND if the filename is "".
10298
10299         * libltdl/ltdl.c (try_dlopen): Fix computation of extension,
10300         avoids subtracting pointer from NULL pointer.
10301
10302         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Do not test
10303         array address of sys_dlsearch_path against NULL, rather test for
10304         nonempty contents.
10305         Coverity reports CID 148 and CID 149 via Jeff Squyres.
10306
10307         * libltdl/ltdl.c (tryall_dlopen_module): Fix string length
10308         computation: do not allocate more than needed.
10309
10310 2007-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10311
10312         * libltdl/loaders/preopen.c (vm_close): `module' is unused.
10313         Coverity report CID 158 via Jeff Squyres.
10314
10315         * libltdl/ltdl.c (parse_dotla_file): If we run out of memory,
10316         do not close the .la file twice.
10317         Coverity report CID 440 via Jeff Squyres.
10318
10319         * libltdl/ltdl.c (has_library_ext): Remove dead code.
10320         Coverity report CID 561 against Open MPI via Jeff Squyres.
10321
10322 2007-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10323
10324         * libltdl/slist.c (slist_remove): When a matching item is found,
10325         break out of the loop to return the first match; also fixes
10326         possible NULL dereference.
10327
10328         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10329         (_LT_LANG_CXX_CONFIG) [ linux ]: Add support for IBM XL 8.0
10330         C/C++ (xlc*, xlC*) and IBM XL Fortran 10.1 (xlf*) on GNU/Linux,
10331         tested on ppc, pending a $shlibpath_var related fix.
10332         (_LT_SYS_HIDDEN_LIBDEPS): Double-quote $output_verbose_link_cmd
10333         properly during evaluation, obsoleting $no_glob_subst mangling.
10334         * NEWS: Update.
10335
10336 2007-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10337
10338         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
10339         [ k*bsd*-gnu ] <shlibpath_overrides_runpath>: Avoid spurious
10340         output in runpath test.
10341
10342 2007-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10343
10344         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ mingw, cygwin ]
10345         <GCJ>: Do not use -DDLL_EXPORT.
10346         Report by Ross Ridge <rridge@csclub.uwaterloo.ca>.
10347
10348         * Makefile.am (edit): Do not warn against manual editing for the
10349         generated files libtool, libtoolize, libltdl/m4/ltversion.m4,
10350         tests/defs, as they are still in a preferred source code form as
10351         required by GPL.
10352         Report by DJ Delorie.
10353
10354 2007-08-15  Dirk Mueller  <dmueller@suse.de>  (tiny change)
10355             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10356
10357         * libltdl/ltdl.c (parse_dotla_file): Avoid a strlen.  When
10358         reading .la files, cope with files that are not
10359         newline-terminated.
10360
10361 2007-08-05  Tilman Koschnick  <til@subnetz.org>  (tiny change)
10362
10363         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
10364         [ linux ]: Treat pgcpp as Portland Group C++ compiler as well.
10365
10366 2007-08-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10367
10368         * libltdl/ltdl.c (try_dlopen): Use `attempt' rather than
10369         `filename', as the former has the needed extension when called
10370         by lt_dlopenext.
10371         Report by Brian Barrett.
10372
10373 2007-07-27  Peter Rosin  <peda@lysator.liu.se>
10374
10375         * Makefile.am: Pass STRIP through to the testsuite, so that
10376         tests that run configure will use the same strip program.
10377
10378 2007-07-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10379
10380         * tests/mdemo-exec.test: Also try absolute library names.
10381         * tests/mdemo/main.c (test_dl, main): Try lt_dlopenext as well.
10382         * THANKS: Update.
10383         Report by Brian Barrett.
10384
10385 2007-07-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10386
10387         * doc/fdl.texi: Update to GFDL 1.2.
10388         * doc/libtool.texi: Adjust.  Put License in Appendix.
10389
10390         * libltdl/config/ltmain.m4sh (func_mode_link): Remove each
10391         intermediate relinked object after use, to avoid quadratic space
10392         complexity when linking partially.
10393         Report by Isidor Zeuner <eezyy@gmx.net>.
10394
10395 2007-07-23  Eric Blake  <ebb9@byu.net>
10396
10397         * libltdl/config/ltmain.m4sh: Whitespace cleanup.
10398
10399         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
10400         <chase_symlinks>: Avoid compiler warning.
10401
10402 2007-07-22  Peter Rosin  <peda@lysator.liu.se>
10403
10404         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Add
10405         support for Microsoft Visual C. Also, older MinGW versions
10406         seem to need stdint.h to find intptr_t.
10407
10408 2007-07-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10409
10410         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]:
10411         Ignore lines in ld.so.conf starting with 'hwcap '.
10412
10413 2007-07-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
10414
10415         * tests/cdemo-exec.test: use $EXEEXT where appropriate
10416         to correct mingw cross-compile issues.
10417         * demo-deplibs.test: Ditto.
10418         * demo-exec.test: Ditto.
10419         * demo-inst.test: Ditto.
10420         * demo-relink.test: Ditto.
10421         * depdemo-exec.test: Ditto.
10422         * depdemo-inst.test: Ditto.
10423         * depdemo-relink.test: Ditto.
10424         * f77demo-exec.test: Ditto.
10425         * fcdemo-exec.test: Ditto.
10426         * mdemo-exec.test: Ditto.
10427         * mdemo-inst.test: Ditto.
10428         * mdemo2-exec.test: Ditto.
10429         * pdemo-exec.test: Ditto.
10430         * pdemo-inst.test: Ditto.
10431         * tagdemo-exec.test: Ditto.
10432
10433 2007-07-14  Peter Rosin  <peda@lysator.liu.se>
10434
10435         * AUTHORS, THANKS: Peter Ekberg got married, now Peter Rosin.
10436
10437 2007-07-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
10438
10439         * libltdl/m4/libtool.m4 (func_dirname_and_basename) <XSI>:
10440         New function.
10441         (func_dirname_and_basename) <!XSI>: New function.
10442         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname):
10443         Call it.  Also, take advantage of missed optimization using
10444         func_dirname's additional arguments.
10445         (func_mode_compile): Call it.
10446         (func_mode_install): Call it.
10447         (func_mode_link): Call it.
10448
10449 2007-07-12  Peter Rosin  <peda@lysator.liu.se>
10450
10451         * libltdl/config/ltmain.m4sh (func_mode_link): Strip the cwrapper
10452         using $STRIP instead of relying on the tools to support -s, which
10453         MSVC doesn't.
10454
10455 2007-07-06  Peter O'Gorman  <peter@pogma.com>
10456
10457         * libltdl/config/libtool.m4sh: Don't pass -msg_* through to the
10458         linker.
10459         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
10460
10461 2007-07-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
10462
10463         * libltdl/lt__alloc.c, libltdl/loaders/preopen.c,
10464         libltdl/loaders/dyld.c, libltdl/loaders/dlopen.c, libltdl/ltdl.c,
10465         libltdl/lt_error.c, libltdl/lt_dlloader.c, libltdl/lt__dirent.c:
10466         Include lt__private.h prior to any system headers.
10467         * libltdl/lt__alloc.c: Remove redundant inclusion of configuration
10468         header.
10469
10470 2007-07-04  Eric Blake  <ebb9@byu.net>
10471
10472         * libltdl/ltdl.c (advise_dup): Delete function no longer used
10473         after memleak fix three days ago.
10474
10475 2007-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10476
10477         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Cater to
10478         old Sparc Solaris 7 ld that does not understand `-64'.
10479         Report by Vincent Lefevre <vincent@vinc17.org>.
10480
10481 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10482
10483         * libltdl/m4/lt~obsolete.m4 (LTOBSOLETE_VERSION): New macro, to
10484         force-pull in this file by aclocal.
10485         * libltdl/m4/libtool.m4 (LT_INIT): Require LTOBSOLETE_VERSION.
10486         * tests/libtoolize.at (upgrading verbatim style aclocal.m4):
10487         Adjust.
10488         Report by H. J. Lu <hjl@lucon.org>.
10489
10490         * libltdl/ltdl.c (tryall_dlopen): Rename argument to have typed
10491         alias of `advise' instead of allocating a copy.  Fixes memleak.
10492
10493 2007-06-30  Peter Breitenlohner  <peb@mppmu.mpg.de>
10494
10495         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Correct a typo
10496         ("-dld" instead of "-ldld").
10497
10498 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
10499
10500         Add a test to simulate a failure visible on systems which
10501         need a library prefix like 'lib', such as BeOS.  Fix a number
10502         of bugs exposed by this test in order for it to pass.
10503         Currently the prefix is hardcoded as 'lib', as I am not aware
10504         of systems that require a different prefix:
10505
10506         * libltdl/loaders/preopen.c (lt_dlpreload_open):  Move error
10507         condition out of test loop to be sure that each originator is
10508         tried, instead of erroring out if the first doesn't match.
10509         Support passing NULL as the originator to load all preloaded
10510         modules originating in the program itself.
10511         * libltdl/lt_dlloader.c (lt_dlloader_dump): New debug function.
10512         * libltdl/libltdl/lt_dlloader.h (lt_dlloader_dump): Declare it
10513         when LT_DEBUG_LOADERS is defined at compile time.
10514         * libltdl/ltdl.c (lt_dlinit): Dump loader list after successful
10515         initialisation.
10516         (tryall_dlopen): Add a new VTABLE parameter to force use of a
10517         specific loader in preference to trying every loader in turn.
10518         Adjust all callers.
10519         (try_dlopen): Always see whether a module was preloaded for
10520         module names with no directory component before searching the
10521         filesystem for a match.
10522         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Declare
10523         a new global_symbol_to_c_name_address_lib_prefix variable.
10524         (global_symbol_to_c_name_address_lib_prefix): The sed
10525         expressions to use when a lib prefix is enforced need to be
10526         slightly different to work with preloaded modules.
10527         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): In order
10528         to name preloaded symbols correctly for the lookup algorithm
10529         to work when the loaded module file must be prefixed with lib.
10530         Use global_symbol_to_c_name_address_lib_prefix when
10531         need_lib_prefix is other than no.
10532         * tests/need_lib_prefix.at: New test to check for breakage on
10533         hosts where need_lib_prefix is unknown.
10534         * Makefile.am (TESTSUITE_AT): Add new test.
10535         * tests/TODO: Note missing tests that would have caught some
10536         of the latent bugs fixed by this patch.
10537         * HACKING: Document libltdl keyword.
10538         * NEWS: Updated.
10539
10540 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
10541
10542         Reenable compilation of libltdl with C++:
10543
10544         * libltdl/ltdl.c (tryall_dlopen): Rename the try variable to
10545         attempt, and cast explicitly.
10546         (advise_dup): Add explicit cast.
10547
10548 2007-06-22  Peter O'Gorman  <peter@pogma.com>
10549
10550         * libltdl/config/ltmain.m4sh (version-number) [irix]: Don't subtract
10551         1 from major as it may be less than age.
10552
10553 2007-06-21  Noah Misch  <noah@cs.caltech.edu>
10554
10555         * tests/f77demo/configure.ac [--with-dist]: New option.  Skip most
10556         Fortran checks when given.
10557         * tests/fcdemo/configure.ac [--with-dist]: Likewise.
10558         * Makefile.am (@DIST_MAKEFILE_LIST@): Pass --with-dist.
10559         Reported by Benoit Sigoure <tsuna@lrde.epita.fr>.
10560
10561 2007-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
10562
10563         * AUTHORS: Add myself.
10564
10565 2007-06-18  Charles Wilson  <libtool@cwilson.fastmail.fm>
10566
10567         * libltdl/config/ltmain.m4sh: Add new magic variable
10568         for use with cwrapper.
10569         (func_ltwrapper_script_p): New function.
10570         (func_ltwrapper_executable_p): New function.
10571         (func_ltwrapper_scriptname): New function.
10572         (func_ltwrapper_p): Accomodate both wrapper scripts and
10573         wrapper executables.
10574         (func_mode_execute): Handle $file that is a wrapper
10575         script and $file that is a wrapper executable differently.
10576         (func_mode_install) [cygwin|mingw]: If $file is a wrapper
10577         executable, use func_ltwrapper_scriptname to determine
10578         wrapper script name. Afterwards, always use
10579         func_ltwrapper_script_p instead of func_ltwrapper_p.
10580         (func_emit_libtool_wrapper_script): Rename to...
10581         (func_emit_wrapper): ...this. All callers changed.
10582         (func_emit_libtool_cwrapperexe_source): Rename to...
10583         (func_emit_cwrapperexe_src): ...this. All callers changed.
10584         Embed new magic_exe variable into source. Private transient
10585         wrapper script now called foo_ltshwrapperTMP, not
10586         foo_ltshwrapper.
10587         (func_emit_cwrapperexe_src) [main, mingw]: Use _spawnv
10588         and return child's exit code manually rather than rely on
10589         broken execv.
10590         (func_mode_link) [cygwin|mingw]: Don't call dirname and
10591         basename directly; use func_dirname and func_basename
10592         when computing cwrapper names.  Use cwrapper to generate
10593         wrapper script, and use pathname returned by
10594         func_ltwrapper_scriptname instead of $output.
10595         (func_mode_link) [NOT cygwin|mingw]: move wrapper script
10596         generation for non-win32 inside case statement, as default
10597         case.
10598         (func_mode_uninstall) [$name's extension != .lo|.la]:
10599         'clean' mode must handle $file differently if it is a libtool
10600         wrapper script, or if it is a libtool wrapper executable.
10601         * tests/destdir.at [Simple DESTDIR install]: $EXEEXT fixups.
10602         * tests/destdir.at [DESTDIR with in-package deplibs]: Ditto.
10603
10604 2007-06-17  Noah Misch  <noah@cs.caltech.edu>
10605
10606         * AUTHORS: Add myself.
10607
10608 2007-06-17  Peter O'Gorman  <peter@pogma.com>
10609
10610         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): add quotes to
10611         the test -n.
10612
10613 2007-06-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
10614
10615         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): ensure stderr
10616         is redirected even when getconf does not exist.
10617
10618 2007-06-09  Charles Wilson  <libtool@cwilson.fastmail.fm>
10619
10620         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
10621         Take an argument to specify value assigned to
10622         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR in the emitted
10623         script.
10624         (func_emit_libtool_cwrapperexe_source) [file scope]:
10625         define permission flags S_IXGRP and S_IXOTH if not
10626         already defined.
10627         (func_emit_libtool_cwrapperexe_source) [LTWRAPPER_DEBUGPRINTF]:
10628         Use C89-compatible syntax to mimic variadic macros.
10629         Adjust all callers.
10630         (func_emit_libtool_cwrapperexe_source) [check_executable]:
10631         avoid embedded #ifdefs; use S_IXGRP and S_IXOTH
10632         unconditionally.
10633         (func_emit_libtool_cwrapperexe_source) [make_executable]:
10634         ditto.
10635         (func_emit_libtool_cwrapperexe_source): don't rewrite
10636         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR posthoc; instead pass
10637         correct argument when calling func_emit_libtool_wrapper_script.
10638         (func_mode_link): pass correct argument when calling
10639         func_emit_libtool_wrapper_script.
10640
10641 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
10642
10643         * libltdl/config/ltmain.m4sh (func_emit_libtool_cwrapperexe_source):
10644         ensure that generated source follows GCS as nearly as
10645         possible.
10646
10647 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
10648
10649         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
10650         add code block to handle cases when wrapper script is in $objdir.
10651         (func_emit_libtool_cwrapperexe_source): replace DEBUG() macro
10652         with namespace-safe LTWRAPPER_DEBUGPRINTF(). Call
10653         func_emit_libtool_wrapper_script() with appropriate filters to
10654         embed script text in C char* static variable.
10655         (f_e_l_c_s: main): add new option --lt-dump-script, parse argv[]
10656         for it, and take appropriate action.  Call chase_symlinks()
10657         on argv[0], in case this.exe was launched via one.  Use chased
10658         value to determine full absolute pathname of wrapper script, in
10659         $objdir. Unconditionally write script out to this pathname and
10660         set permission bits.  Remove extraneous ';' from debugging loop.
10661         (f_e_l_c_s: main) [mingw]: DOS-ize $SHELL before populating
10662         newargv[0]; if $TARGETSHELL environment variable is set, use
10663         it instead of $SHELL and do not DOS-ize.  Ensure newargv[1]
10664         (wrapper script absolute path) uses only '/', not '\'.  Make
10665         sure to call execv() with DOS-ized $SHELL (or un-DOS-ized
10666         $TARGETSHELL, if set)
10667         (f_e_l_c_s: make_executable): new function
10668         (f_e_l_c_s: chase_symlinks): new function (no-op if !S_ISLNK)
10669
10670 2007-06-03  Peter O'Gorman  <peter@pogma.com>
10671
10672         * libltdl/m4/libtool.m4 (old_archive_cmds): Remove
10673         old_deplibs.
10674         * tests/archive-in-archive.at: Check for archives as members
10675         of static archives. Currently XFAILS, above only eliminates
10676         one of the two static archives.
10677         * Makefile.am: Add test.
10678         Reported by Daniel Macks <dmacks@netspace.org>
10679
10680 2007-06-01  Steve Ellcey  <sje@cup.hp.com>
10681
10682         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Try using getconf
10683         to set lt_cv_sys_max_cmd_len.
10684
10685 2007-05-28  Peter O'Gorman  <peter@pogma.com>
10686
10687         * libltdl/config/ltmain.m4sh (func_mode_link),
10688         libltdl/m4/libtool.m4 [darwin]: Only use ${wl} in verstring
10689         with xlc.
10690
10691 2007-05-22  Gary V. Vaughan  <gary@gnu.org>
10692
10693         * tests/lt_dladvise.at:  Use the lib prefix throughout for
10694         better portability - testing whether modules build and load
10695         without that prefix is not the domain of this test.
10696         Also, only run the test of the global hint with the depend
10697         module on hosts that can compile a module without passing
10698         -no-undefined in link mode.
10699
10700 2007-05-10  Noah Misch  <noah@cs.caltech.edu>
10701
10702         * tests/duplicate_deps.at: Make the XFAIL unconditional, but
10703         skip the test if the test link would succeed even without
10704         --preserve-dup-deps.
10705
10706         * libltdl/config/general.m4sh (func_echo): Use $* instead of
10707         ${1+"$@"}.
10708
10709 2007-05-09  Eric Blake  <ebb9@byu.net>
10710
10711         * libltdl/libltdl/lt_error.h (LT_ERROR_LEN_MAX): Adjust, to fix
10712         buffer overflow in previous patch.
10713
10714 2007-05-09  Gary V. Vaughan  <gary@gnu.org>
10715
10716         * tests/lt_dladvise.at: Commit missing file from below.
10717
10718 2007-05-08  Gary V. Vaughan  <gary@gnu.org>
10719
10720         Without this patch, lt_dlopen always opens modules with symbol
10721         visibility set according to the underlying implementation.
10722         Here, we add lt_dlopenadvise() to allow callers to request,
10723         among other things, local or global symbol visibility from the
10724         underlying dlloader:
10725
10726         * libltdl/ltdl.c (LT_DLRESIDENT_FLAG): Removed.
10727         (LT_DLIS_RESIDENT): Use public is_resident info field.
10728         (LT_DLIS_SYMLOCAL, LT_DLIS_SYMGLOBAL): New macros to test for
10729         module symbol visibility status.
10730         (tryall_dlopen): If vtable->module_open() was able to act on
10731         either is_symlocal or is_symglobal hints, store that in
10732         the handle flags.
10733         (lt_dlopenadvise): New function that works like lt_dlopen(),
10734         but accepts an advise type to determine whether to ask
10735         dlloaders to change default symbol visibility.
10736         (lt_dlopen, lt_dlopenext): Just call lt_dlopenadvise() with
10737         the correct parameters.
10738         (lt_dladvise_init, lt_dladvise_destroy): New functions to
10739         initialize and destroy an advise type hint.
10740         (lt_dladvise_ext, lt_dladvise_resident, lt_dladvise_local)
10741         (lt_dladvise_global): Set hints on an advise type.
10742         (openadvise): Factored out of lt_dlopenadvise.
10743         (has_library_ext): Factored out of lt_dlopenadvise.
10744         * libltdl/ltdl.h: Declare all of the above.
10745         (lt_dlinfo): New fields for advise hints.
10746         * libltdl/libltdl/lt_dlloader.h (lt_module_open): Add a new
10747         advise parameter.  Adjust all callers.
10748         (lt_dladvise): New opaque type for advise hints.
10749         * libltdl/libltdl/lt__private.h (lt__advise): Declare
10750         contents of opaque lt_dladvise type.
10751         * libltdl/libltdl/lt_error.h (CONFLICTING_FLAGS): New error
10752         for attempts to have local and global symbol visibility at the
10753         same time.
10754         * libltdl/loaders/dld_link.c, libltdl/loaders/dyld.c,
10755         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
10756         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Adjust.
10757         * libltdl/loaders/dlopen.c (RTLD_LOCAL, RTLD_GLOBAL): Try to
10758         define these symbols if the system has equivalents.
10759         (vmopen): If unable to act on a caller request to set symbol
10760         visibility, then unset the relevant hints in the advise type.
10761         * tests/lt_dladvise.at: New tests for the above.
10762         * doc/libtool.texi (Libltdl Interface): Updated.
10763         * NEWS: Updated.
10764
10765 2007-05-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10766
10767         * libltdl/config/ltmain.m4sh (func_mode_link): When adding
10768         new_inherited_linker_flags to compiler_flags, remember to
10769         translate .ltframework back.  Fixes bug introduced 2007-04-23.
10770         * THANKS: Update.
10771         * tests/inherited_flags.at: Amend test.
10772         Report by Christoph Egger.
10773
10774 2007-05-03  Reuben Thomas  <rrt@sc3d.org>  (tiny change)
10775
10776         * doc/libtool.texi (Libltdl interface): Fix typo.
10777
10778 2007-05-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10779
10780         * Makefile.am (clean-ltmain-sh): Removed.
10781         (libtool, $(srcdir)/$(m4dir)/ltversion.m4)
10782         ($(srcdir)/$(auxdir)/ltmain.sh): Updated to not depend on any
10783         phony rules.  Test `$?' for prerequisites that should always
10784         cause us to update the target.  Fixes rebuilding rules, at the
10785         cost of sometimes updating too much with non-GNU make.
10786
10787 2007-04-27  Noah Misch  <noah@cs.caltech.edu>
10788
10789         * tests/ctor.at: New file.
10790         * Makefile.am (TESTSUITE_AT): Add tests/ctor.at.
10791
10792 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
10793
10794         * libltdl/libltdl/lt__glibc.h: Use !HAVE_WORKING_ARGZ
10795         instead of SYSTEM_ARGZ_IS_BROKEN.
10796         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Ditto.  Also, minor
10797         stylistic improvements.
10798         Report by Bruno Haible <bruno@clisp.org>.
10799
10800 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
10801             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10802
10803         * libltdl/argz_.h: ensure error_t definition is obtained
10804         in same mechanism system argz.h would have.
10805         * libltdl/libltdl/lt__glibc.h: also detect if
10806         SYSTEM_ARGZ_IS_BROKEN when determining whether to re#def
10807         argz* functions.
10808         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): add new test to check
10809         if $host's argz facilities are known bad.  Err on the side
10810         of caution if cross-compiling.
10811
10812 2007-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10813
10814         * README, README.alpha: Document how to test an arbitrary
10815         installed libtool script.
10816
10817 2007-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10818
10819         * tests/cmdline_wrap.at: Avoid `AT_CAPTURE_FILE' if it not
10820         defined (Autoconf < 2.60).
10821         * tests/shlibpath.at: Add `libtool' keyword.
10822
10823         * tests/indirect_deps.at: New file, with tests to ensure
10824         `link_all_deplibs=no' does not break functionality.
10825         * Makefile.am: Adjust.
10826
10827 2007-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10828
10829         * libltdl/config/ltmain.m4sh (func_mode_link): Fix accumulation
10830         of `inherited_linker_flags' entries from multiple deplibs, by
10831         adding $new_inherited_linker_flags only once, only in link pass.
10832         * tests/inherited_flags: Amend test to expose this.
10833         * NEWS: Adjust: kill one regression, but add note about the
10834         feature new in 1.9b.
10835         Report by Jeff Squyres and others.
10836
10837 2007-04-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
10838
10839         * libltdl/config/ltmain.m4sh (func_mode_link): move wrapper
10840         script generation from here...
10841         (func_emit_libtool_wrapper_script): to this new function, and
10842         write to stdout
10843         (func_mode_link): move cwrapper source code generation from
10844         here...
10845         (func_emit_libtool_cwrapperexe_source): to this new function,
10846         and write to stdout
10847         (func_mode_link): call the two new functions and redirect
10848         output to appropriate file.
10849
10850 2007-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10851
10852         * libltdl/config/ltmain.m4sh (func_mode_link) <-no-install>
10853         [ darwin ]: Treat like `-no-fast-install', as we cannot
10854         hardcode.  Report by Simon Josefsson.
10855
10856 2007-04-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10857
10858         * doc/libtool.texi (Link mode) <-no-install>: Mention that this
10859         still generates a wrapper script on systems without hardcoding.
10860         * tests/stresstest.at: Test `-no-install'.
10861         * THANKS: Update.
10862         Report by Simon Josefsson.
10863
10864 2007-03-30   Matthieu Herrb  <matthieu.herrb@laas.fr>
10865
10866         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
10867         [ openbsd ]: Add an explicit check for shared libraries support.
10868
10869 2007-03-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10870
10871         * Makefile.am ($(srcdir)/$(m4dir)/ltversion.m4): Fix quoting
10872         error.
10873
10874 2007-03-28  Gary V. Vaughan  <gary@gnu.org>
10875
10876         * HACKING (Abstraction layers in libltdl): Rewritten somewhat
10877         for (hopefully) better clarity.
10878
10879 2007-03-26  Gary V. Vaughan  <gary@gnu.org>
10880
10881         The stamp-vcl file rules caused non-gnu make programs to rerun
10882         parts of the configuration process on each invocation.  Instead
10883         of relying on a stamp file, we now compare version numbers of
10884         generated files with the ChangeLog timestamp manually in the
10885         affected make rules to decide whether regenerating is necessary:
10886
10887         * Makefile.am (EXTRA_DIST): Remove stamp-vcl.
10888         (clean-ltmain-sh): Also remove users' obsolescent stamp-vcl.
10889         (rebuild): Keep some common code here for...
10890         (libtool, libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh):
10891         Rewritten to work without reference to intermediate stamp-vcl
10892         file.
10893         * configure.ac (CONFIG_STATUS_DEPENDENCIES): Change from
10894         stamp-vcl to ChangeLog.
10895         * NEWS: Removed entry saying this fix is needed.
10896
10897 2007-03-25  Gary V. Vaughan  <gary@gnu.org>
10898
10899         * HACKING (LGPL with Libtool exception clause): Typo.
10900         Reported by Tim Van Holder  <tim.van.holder@telenet.be>
10901
10902         * HACKING (Licensing Rules): Explain the various license texts
10903         used for files distributed with Libtool, and update license text
10904         to match.
10905         * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
10906         bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
10907         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
10908         libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
10909         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
10910         libltdl/config/mkstamp, libltdl/configure.ac,
10911         libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
10912         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
10913         libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
10914         libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h,
10915         libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c,
10916         libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
10917         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
10918         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c,
10919         libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
10920         libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
10921         libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
10922         libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
10923         libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
10924         libltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
10925         libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
10926         tests/cdemo-conf.test, tests/cdemo-exec.test,
10927         tests/cdemo-make.test, tests/cdemo-shared.test,
10928         tests/cdemo-static.test, tests/cdemo-undef.test,
10929         tests/cdemo/Makefile.am, tests/cdemo/configure.ac,
10930         tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
10931         tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
10932         tests/demo-conf.test, tests/demo-deplibs.test,
10933         tests/demo-exec.test, tests/demo-hardcode.test,
10934         tests/demo-inst.test, tests/demo-make.test,
10935         tests/demo-nofast.test, tests/demo-noinst-link.test,
10936         tests/demo-nopic.test, tests/demo-pic.test,
10937         tests/demo-relink.test, tests/demo-shared.test,
10938         tests/demo-static.test, tests/demo-unst.test,
10939         tests/demo/Makefile.am, tests/demo/configure.ac,
10940         tests/demo/dlmain.c, tests/demo/foo.c,
10941         tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
10942         tests/demo/hello.c, tests/demo/main.c,
10943         tests/depdemo-conf.test, tests/depdemo-exec.test,
10944         tests/depdemo-inst.test, tests/depdemo-make.test,
10945         tests/depdemo-nofast.test, tests/depdemo-relink.test,
10946         tests/depdemo-shared.test, tests/depdemo-static.test,
10947         tests/depdemo-unst.test, tests/depdemo/Makefile.am,
10948         tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
10949         tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
10950         tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
10951         tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
10952         tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
10953         tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
10954         tests/depdemo/l4/l4.h, tests/depdemo/main.c,
10955         tests/depdemo/sysdep.h, tests/deplibs-ident.at,
10956         tests/destdir.at, tests/duplicate_conv.at,
10957         tests/duplicate_deps.at, tests/duplicate_members.at,
10958         tests/early-libtool.at, tests/export.at,
10959         tests/f77demo-conf.test, tests/f77demo-exec.test,
10960         tests/f77demo-make.test, tests/f77demo-shared.test,
10961         tests/f77demo-static.test, tests/f77demo/Makefile.am,
10962         tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
10963         tests/f77demo/foo.h, tests/f77demo/fooc.c,
10964         tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
10965         tests/fcdemo-make.test, tests/fcdemo-shared.test,
10966         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
10967         tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
10968         tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
10969         tests/inherited_flags.at, tests/libtoolize.at,
10970         tests/link-2.test, tests/link-order.at, tests/link-order2.at,
10971         tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test,
10972         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
10973         tests/mdemo-inst.test, tests/mdemo-make.test,
10974         tests/mdemo-shared.test, tests/mdemo-static.test,
10975         tests/mdemo-unst.test, tests/mdemo/Makefile.am,
10976         tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
10977         tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
10978         tests/mdemo/sub.c, tests/mdemo2-conf.test,
10979         tests/mdemo2-exec.test, tests/mdemo2-make.test,
10980         tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
10981         tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
10982         tests/objectlist.test, tests/old-m4-iface.at,
10983         tests/pdemo-conf.test, tests/pdemo-exec.test,
10984         tests/pdemo-inst.test, tests/pdemo-make.test,
10985         tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
10986         tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
10987         tests/pdemo/longer_file_name_foo.c,
10988         tests/pdemo/longer_file_name_foo2.c,
10989         tests/pdemo/longer_file_name_hell1.c,
10990         tests/pdemo/longer_file_name_hell2.c,
10991         tests/pdemo/longer_file_name_hello.c,
10992         tests/pdemo/longer_file_name_main.c, tests/quote.test,
10993         tests/recursive.at, tests/search-path.at, tests/sh.test,
10994         tests/shlibpath.at, tests/standalone.at, tests/static.at,
10995         tests/stresstest.at, tests/subproject.at, tests/suffix.test,
10996         tests/tagdemo-conf.test, tests/tagdemo-exec.test,
10997         tests/tagdemo-make.test, tests/tagdemo-shared.test,
10998         tests/tagdemo-static.test, tests/tagdemo-undef.test,
10999         tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
11000         tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
11001         tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
11002         tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
11003         tests/tagdemo/main.cpp, tests/tagtrace.test,
11004         tests/template.at, tests/testsuite.at: Apply correct license
11005         text according to the new rules set out in HACKING.
11006
11007 2007-03-19  Gary V. Vaughan  <gary@gnu.org>
11008
11009         * libtoolize.m4sh: Handle argz.m4 specially like ltdl.m4, so
11010         that it isn't copied unless libltdl is being used.  Copy other
11011         macro files according to their tagged serial numbers.
11012         * tests/libtoolize.at: Adjust.
11013
11014 2007-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11015
11016         * tests/mdemo/Makefile.am (libmlib_la_LDFLAGS): Add
11017         `-export-symbols-regex ".*"' because the convenience libltdl
11018         uses export markers and thus turns off autoexport on w32.  Fixes
11019         test failures for Cygwin and MinGW.
11020         Bug analysis by Charles Wilson.
11021
11022         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
11023         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
11024         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ interix ]: When
11025         matching for interix, accept version range [3-9] instead of 3.
11026         * NEWS: Update.
11027         Report by Martin Koeppe <mkoeppe@gmx.de>.
11028
11029         * libltdl/m4/libtool.m4 (LT_PROG_GCJ): Avoid M4 expansion error
11030         that caused `dnl' to be merged to the previous word.
11031         * THANKS: Update.
11032         Report by Steve Ellcey.
11033
11034 2007-03-09  Gary V. Vaughan  <gary@gnu.org>
11035
11036         * libtoolize.m4sh: Replace literal tab chars in help comment
11037         with spaces to align columns in --help output.
11038
11039 2007-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11040
11041         * libltdl/config/ltmain.m4sh (func_mode_link): Also apply the
11042         symbol filtering for w32 and the include_expsyms feature in the
11043         case of exceeded command line length.  Fixes test failure on
11044         MinGW.
11045
11046         * tests/stresstest.at: For const data object imported from
11047         shared library, define appropriate macros to expand
11048         __declspec(dllimport) on w32.  Use two different main objects
11049         and pick the right one for the link flags we are about to test.
11050         Fixes test failure on MinGW.
11051
11052         * tests/export.at: For const data object imported from shared
11053         library, define appropriate macros to expand
11054         __declspec(dllimport) on w32.  Fixes test failure on MinGW.
11055
11056 2007-03-05  Gary V. Vaughan  <gary@gnu.org>
11057
11058         * libtoolize.m4sh (func_check_macros): Display m4 quotes correctly
11059         in AC_CONFIG_MACRO_DIR diagnostics.
11060
11061         * libltdl/config/general.m4sh (M4SH_VERBATIM): New macro to
11062         simplify m4sh quote quoting in blocks of raw shell code.
11063         * clcommit.m4sh, libtoolize.m4sh, libltdl/config/getopt.m4sh,
11064         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
11065         tests/defs.m4sh: Use it.
11066         * HACKING (Editing `.m4sh' Files): Mention M4SH_VERBATIM Macro.
11067
11068 2007-02-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11069
11070         * tests/lt_dlexit.at: Allow test to pass on static-only systems
11071         and with disable-shared.
11072
11073         * NEWS: Rewrite all news since 1.9f and put in categories,
11074         update.
11075
11076         * libltdl/Makefile.inc: Fix the file description, so that it
11077         matches recursive and nonrecursive libltdl setup.
11078         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Do not depend
11079         upon the exact text of the copyright header, just copy until
11080         the marker line.  Remove the marker lines in the output, and
11081         adjust the description for subpackage setup.
11082
11083 2007-02-26  Gary V. Vaughan  <gary@gnu.org>
11084
11085         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fix regexp typo.
11086
11087         * clcommit.m4sh: Look in the right directory for helper scripts.
11088
11089 2007-02-25  Gary V. Vaughan  <gary@gnu.org>
11090
11091         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fixup regex to
11092         match Copyright notice change below.
11093
11094         * HACKING, Makefile.am, Makefile.maint, bootstrap,
11095         libltdl/Makefile.am, libltdl/Makefile.inc, libltdl/m4/libtool.m4,
11096         ltmain.c, tests/cdemo/Makefile.am, tests/demo/Makefile.am,
11097         tests/depdemo/Makefile.am, tests/depdemo/l1/Makefile.am,
11098         tests/depdemo/l2/Makefile.am, tests/depdemo/l3/Makefile.am,
11099         tests/depdemo/l4/Makefile.am, tests/f77demo/Makefile.am,
11100         tests/fcdemo/Makefile.am, tests/libtoolize.at,
11101         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
11102         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Update
11103         Copyright notice text to include URL for canonical GPL document.
11104
11105 2007-02-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11106
11107         * tests/static.at: Forgot to fix PATH for the first
11108         func_test_exec invocation.  So factor out into new functions
11109         func_fix_path and func_restore_path and use those.
11110
11111         * README: Document the need for GNU make to build Libtool.
11112         Point the user to the doc/notes.txt file.  In the examples, use
11113         `gmake' throughout to make it more obvious.  Explain simpler way
11114         to run both testsuites and either one.  Referring to individual
11115         tests needs the `tests/' prefix.
11116         * README.alpha: Likewise.
11117         * doc/notes.texi: Likewise, document need for GNU make.
11118         Comment out the FreeBSD make issue for now.
11119
11120         * tests/static.at: Larger rewrite to make work on w32: Use three
11121         different prefixes instead of three libdirs, so the moving of
11122         the DLLs works as expected.  Adjust all code.  Since now
11123         $libdirI/../bin is distinct from the directory of the installed
11124         program, take care than on w32 PATH contains the needed bindirs,
11125         in appropriate order.
11126         Report by Charles Wilson.
11127
11128         * Makefile.am (INSTALLCHECK_ENVIRONMENT): Point LTDLINCL and
11129         LIBLTDL to installed libltdl, so that it is being used by
11130         the lt_dlexit test.
11131
11132 2007-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11133
11134         * doc/libtool.texi (Install mode, libtool script contents):
11135         Describe current and system-specific DESTDIR limitations.
11136         * tests/destdir.at: XFAIL if `fast_install' is no.
11137
11138         * doc/libtool.texi (LT_INIT): Fix typo.
11139
11140         * doc/libtool.texi (Libtool test suite): Mention the new
11141         testsuite.  Point to README rather than INSTALL for testing
11142         instructions.
11143         (Test descriptions): Fix more file names.  Also mention
11144         cdemo-undef.test, mdemo2-conf.test, mdemo2-exec.test,
11145         mdemo2-make.test, objectlist.test, pdemo-conf.test,
11146         pdemo-exec.test, pdemo-inst.test, pdemo-make.test,
11147         tagdemo-conf.test, tagdemo-exec.test, tagdemo-make.test,
11148         tagdemo-static.test, tagdemo-shared.test, tagdemo-undef.test,
11149         f77demo-conf.test, f77demo-exec.test, f77demo-make.test,
11150         f77demo-static.test, f77demo-shared.test, fcdemo-conf.test,
11151         fcdemo-exec.test, fcdemo-make.test, fcdemo-static.test,
11152         fcdemo-shared.test.  Describe what they do.
11153         (When tests fail, Troubleshooting): Mention how to pass options
11154         to the new test suite.
11155         * tests/tagdemo/README: Fix description.
11156
11157         * bootstrap: Also set GREP, FGREP, EGREP, LN_S, when creating a
11158         preliminary ltmain.sh script.
11159
11160         * doc/libtool.texi (Test descriptions): Track the grand test
11161         suite renaming from 2003-10-14 in the tests documentation.
11162         assign.test is merged into sh.test.  Fix description of sh.test.
11163         * tests/sh.test: Likewise.
11164
11165         * doc/libtool.texi (LT_INIT): Fix wording of intro a bit.
11166         <shared, static>: Also describe these default LT_INIT options.
11167         <AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL>
11168         <AC_DISABLE_FAST_INSTALL>: Mention deprecated macro names,
11169         including the respective LT_INIT replacement.
11170         <AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_ENABLE_SHARED>
11171         <AC_ENABLE_STATIC>: Document, un-deprecate.  Suggest the
11172         respective LT_INIT replacement.
11173         <AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_ENABLE_SHARED>
11174         <AM_ENABLE_STATIC>: Document deprecated aliases.
11175         (Distributing libltdl) <AC_WITH_LTDL, AC_LIBLTDL_INSTALLABLE>
11176         <AC_LIBLTDL_CONVENIENCE>: Document deprecated aliases.
11177         * libltdl/m4/ltoptions.m4 (AM_ENABLE_SHARED, AM_DISABLE_SHARED)
11178         (AM_ENABLE_STATIC, AM_DISABLE_STATIC): Make these AU_ALIASes of
11179         the respective AC_* macros, so we do not recommend LT_INIT(*) in
11180         this case.
11181         (AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC)
11182         (AC_DISABLE_STATIC): Un-deprecate these.  Remove now-superfluous
11183         aclocal-1.4 backwards compatibility comments.
11184
11185         * tests/link-order2.at: Rewrite completely.  Do not use `sin'
11186         from the math library, there are too many problems with this.
11187         Instead, use a self-written library, install it without the
11188         Libtool library file, to emulate a native library in a system
11189         directory, and adjust $shlibpat_var.  Try overriding its symbol.
11190         Further, also try an installed `wrong' binary.
11191         Avoid failing test bits on AIX without runtimelinking and on
11192         Darwin in some cases, SKIP at the end in this case.
11193         Analysis by Peter O'Gorman.
11194
11195         * doc/notes.texi: Mention MACOSX_DEPLOYMENT_TARGET issue.
11196         * tests/template.at: Only skip those tests failing on Darwin
11197         if `-flat_namespace' is used by libtool.  In that case, SKIP
11198         at the end.  Analysis by Peter O'Gorman.
11199
11200 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11201
11202         Fix -export-symbols and -export-symbols-regex for links that
11203         exceed the command line length and use convenience archives.
11204
11205         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid grepping a
11206         nonexistent file if using reloadable objects.  Do not create a
11207         linker script nor a linker input file if no objects are passed.
11208         Apply export_symbols_regex in case the command line length is
11209         exceeded.
11210         Report by Bob Friesenhahn.
11211
11212         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
11213         <compiler_needs_object>: New tag variable.  Default to `no'.
11214         (_LT_LINKER_SHLIBS) [ linux ]: Set it to yes for Sun C 5.9.
11215         (_LT_LANG_CXX_CONFIG): Also default it to `no'.
11216         [ linux ]: Set it to `yes' for Sun C++ 5.9.
11217         * libltdl/config/ltmain.m4sh (func_mode_link): If we link
11218         no objects but only convenience archives into a library,
11219         force expansion if `compiler_needs_object' is yes.
11220         For creating a linker input filelist due to long cmdline,
11221         extract the first object if `compiler_needs_object' is yes.
11222         * doc/libtool.texi (libtool script contents): Document it.
11223         Fixes test failures of Sun compilers on GNU/Linux.
11224         Report by Terry D. Dontje.
11225
11226         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid setting
11227         `$libobjs' to a single space; set it to empty in that case.
11228
11229 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11230
11231         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [ osf5 ]:
11232         On Tru64 5.1, const relocations do not work well.  Omit the
11233         const here.  Fixes failure of demo-make after demo-shared with
11234         link editor error `seg_info_ptr: Couldnt find a seg type 2'.
11235
11236         * Makefile.am (doc_libtool_TEXINFOS): Renamed from...
11237         (libtool_TEXINFOS): ...this, to fix dependencies.  Omit from
11238         EXTRA_DIST.
11239         (check-local): Also depend upon $(bin_SCRIPTS).
11240
11241 2007-02-23  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>  (tiny change)
11242
11243         * libltdl/config/general.m4sh (sed_double_backslash): Fix
11244         hacky sed script to avoid limitations but retain portability to
11245         Solaris /bin/sed.  Remove old obsolete cruft.
11246
11247 2007-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11248
11249         * libltdl/config/ltmain.m4sh (func_mode_link): Fix the check for
11250         convenience archives when warning about linking against static
11251         libraries: test against $deplib rather than empty $lib.
11252
11253 2007-02-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11254
11255         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Fix detection of new enough
11256         libltdl by actually checking for the declaration of
11257         lt_dlinterface_register in ltdl.h with AC_CHECK_DECL.
11258         Remove redundant configure output line.
11259
11260         * tests/template.at: Reformat, add M4 quoting.  Use $LDFLAGS
11261         consistently for link mode.
11262
11263 2007-02-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11264
11265         * tests/static.at: Use the right names for the broken libs.
11266
11267 2007-02-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11268
11269         * tests/deplibs-ident.at [aix, hppa*-*-hpux*, interix, openbsd]:
11270         Do not XFAIL, on these systems we happen to pass.
11271         * tests/duplicate_deps.at [aix]: Likewise.
11272
11273         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux |
11274         k*bsd*-gnu ]: Fix eval quoting in the DT_RUNPATH test.
11275
11276         * HACKING: Update.
11277
11278         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ linux ]
11279         <whole_archive_flag_spec>: For Sun C/C++ 5.9, do not add
11280         /dev/null as dummy object, it fails with GNU ld version
11281         2.16.91.0.7-amd-sles9.  Report by Terry D. Dontje.
11282         * THANKS: Update.
11283
11284 2007-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11285
11286         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ osf4, osf5 ]
11287         <archive_expsym_cmds>: Use `${wl}-input' not `-input', for
11288         cc.  Could use `-input_to_ld'.
11289         (_LT_LANG_CXX_CONFIG) [ osf4, osf5 ] <archive_expsym_cmds>:
11290         Use `${wl}' instead of `-Wl,', for consistency.
11291
11292 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11293
11294         Fix spurious testsuite failures on AIX due on NFS mounts due to
11295         shared library images that cannot be removed without `slibclean'
11296         which needs superuser privileges.
11297
11298         * tests/testsuite.at (PREPARE_TESTS): Define $mkdir_p globally.
11299         (LT_AT_MVDIR): New macro to emulate `mv dir dest'.
11300         * tests/destdir.at: Use LT_AT_MVDIR.
11301         * tests/shlibpath.at: Likewise.
11302         * tests/static.at: Likewise.
11303
11304 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11305
11306         * tests/export.at: Exporting is not fully functional with
11307         -retain-symbols-file.  Do not test for failure to link `broken'
11308         in this case.  At the end of the test, SKIP if we are not fully
11309         functional.
11310
11311         * tests/lt_dlexit.at: Add casts and `extern "C"' to let the test
11312         pass with a C++ compiler.
11313
11314         * libltdl/config/ltmain.m4sh: Remove duplicate marker for
11315         generated shell functions.
11316
11317         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): New macro, like
11318         LT_AT_EXEC_CHECK but uses `$LIBTOOL --mode=execute' and allows
11319         to pass `-dlopen MODULE' arguments.
11320         * tests/lt_dlexit.at: Use it.  Also, do not test `-dlpreopen',
11321         that currently needs library names to begin with `lib'.
11322
11323 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11324
11325         * tests/export.at: New test: expose -export-symbols failure
11326         when the input consists solely of convenience archives, and
11327         failure to not export all symbols when the command line length
11328         is exceeded.
11329         * Makefile.am: Adjust.
11330
11331         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New substituted
11332         function `func_lo2o', saving two fork&exec with XSI shells.
11333         * libltdl/config/ltmain.m4sh (func_mode_compile)
11334         (func_mode_install, func_mode_link): Use it for rewrites of
11335         single files.
11336
11337         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New function
11338         func_opt_split, for XSI and portable shell.
11339         * libltdl/config/ltmain.m4sh: Move the insertion point for the
11340         configure-generated shell functions to before the first option
11341         parsing loop.  Rewrite the separation of the long options to use
11342         func_opt_split.
11343
11344 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11345
11346         Eliminate roughly a third of the script execution time overhead
11347         for all modes except for link/relink and uninstall/clean.
11348
11349         * libltdl/m4/libtool.m4 (_LT_CONFIG): Remove unused `TEST SUITE
11350         MARKER', obsolete since 2005-04-17.
11351         * libltdl/config/ltmain.m4sh: Likewise, several instances.
11352         (Main): Tear apart, moving individual bits up as early in the
11353         script as possible, to help the shell to avoid parsing the rest.
11354
11355 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11356
11357         * doc/libtool.texi: Update copyright years.
11358
11359 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11360
11361         * libltdl/config/general.m4sh (sed_double_backslash): Replace
11362         POSIX sed script with a hack that treats up to 10 backslashes
11363         in the input correctly and is portable to Solaris /bin/sed.
11364
11365 2007-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11366
11367         * tests/testsuite.at (LT_AT_TAG): Skip also if the compiler
11368         variable is set to `no', not only if it is empty.
11369
11370 2007-02-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11371
11372         * tests/lt_dlexit.at: Do not compile main object with libtool.
11373
11374         * tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir
11375         to inner testsuite.
11376
11377         * Makefile.am (TESTSUITE_AT): Move destdir.at after
11378         search-path.at so the banners fit better.
11379
11380         * tests/convenience.at: Use $CPPFLAGS for compilation.
11381         * tests/deplibs-ident.at: Likewise.
11382         * tests/duplicate_members.at: Likewise.
11383         * tests/inherited_flags.at: Likewise.
11384         * tests/link-order.at: Likewise.
11385         * tests/stresstest.at: Likewise.
11386         * tests/early-libtool.at: Likewise.  Do not quote $CC.
11387
11388         * libltdl/ltdl.c (lt_dlexit): Add casts to fix compilation with
11389         C++ compiler again.
11390
11391         * tests/destdir.at: Add `libtool' keyword to tests.
11392
11393 2007-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11394
11395         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
11396         (_LT_LINKER_BOILERPLATE, _LT_SYS_MODULE_PATH_AIX)
11397         (_LT_COMPILER_C_O): Require _LT_DECL_SED.
11398         * THANKS: Update.
11399         Report by Maciej W. Rozycki.
11400
11401 2007-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11402
11403         * tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir,
11404         in the new testsuite.
11405
11406 2007-01-29  Samuel Thibault <samuel.thibault@ens-lyon.org>
11407
11408         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ gnu ]
11409         <archive_expsym_cmds>: Behave like Linux, so that
11410         --version-script is used for Hurd as well.
11411
11412 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
11413
11414         * NEWS: Update for Cygwin changes.
11415
11416 2007-01-28  Brian W. Barrett <bbarrett@lanl.gov>
11417
11418         * libltdl/config/ltmain.m4sh [darwin]: Use otool64 if otool fails.
11419
11420 2007-01-28  Dave Brolley  <brolley@redhat.com>,
11421             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11422
11423         * libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL
11424         before checking that it is still in the list.
11425         * tests/lt_dlexit.at: New test.
11426         * Makefile.am (TESTSUITE_AT): Adjust.
11427         (check-local): Also depend on libltdl/libltdlc.la.
11428         (check-recursive): Removed, unnecessary use of Automake
11429         internals.
11430
11431 2007-01-28  Mike Frysinger  <vapier@gentoo.org>
11432
11433         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
11434         `-p' and `-fprofile-*' for GCC.
11435
11436 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11437
11438         * libltdl/libltdl/lt_system.h: Adjust copyright years.
11439
11440 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
11441
11442         * libltdl/libltdl/lt__private.h (LT_GLOBAL_DATA) [__CYGWIN__]:
11443         Also define on Cygwin.
11444         * libltdl/libltdl/lt_system.h (LT_SCOPE) [__CYGWIN__]: Likewise.
11445
11446 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11447
11448         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ cygwin, mingw ]
11449         <export_symbols_cmds>: Avoid shell expansion of '/s/.*' through
11450         double expansion, in case there is a 'S:' drive.
11451         Report by Charles Wilson.
11452
11453 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11454
11455         Introduce a new test keyword `recursive' for tests that create a
11456         modified `libtool' script and run the suite on this script.  All
11457         tests with the keyword `libtool' are (by definition) suitable to
11458         be used here.
11459
11460         * tests/cmdline_wrap.at: New test.
11461         * Makefile.am: Adjust.
11462         * tests/testsuite.at (LT_ESCAPE): New macro: clone of Autoconf
11463         AS_ESCAPE that does not escape `$'.
11464         (LT_AT_CHECK): New macro: print a command-to-be-run while
11465         expanding parameters but nothing else.
11466         * tests/stresstest.at: Use LT_AT_CHECK.  Create some files to
11467         expose erroneous globbing errors with `-export-symbols-regex',
11468         similar to those reported by Charles Wilson.  Use `eval' and
11469         adjusted quoting so the expansion doesn't already happen in the
11470         testsuite commands.
11471         * HACKING: Update.
11472
11473 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11474
11475         Assume C89 for included headers, and throughout the testsuite.
11476
11477         * NEWS: Update.
11478         * libltdl/argz.c: Do not include strings.h nor memory.h, include
11479         string.h unconditionally.
11480         Patch by Simon Josefsson <jas@extundo.com>.
11481         * libltdl/libltdl/lt__private.h: Likewise.
11482         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not check for string.h,
11483         strings.h, memory.h.
11484         * tests/cdemo/configure.ac: Assume presence of math.h.
11485         * tests/cdemo/foo.c: Likewise.
11486         * tests/demo/configure.ac: Likewise for math.h, string.h.
11487         Assume 'const'.  Drop obsolete AC_EXEEXT.
11488         * tests/demo/dlmain.c: Likewise.
11489         * tests/demo/foo.c: Likewise.
11490         * tests/depdemo/configure.ac: Likewise.
11491         * tests/depdemo/l4/l4.c: Likewise.
11492         * tests/f77demo/configure.ac: Likewise.  Also drop obsolete
11493         AC_OBJEXT.
11494         * tests/fcdemo/configure.ac: Likewise.
11495         * tests/mdemo/configure.ac: Likewise.
11496         * tests/mdemo/foo1.c: Likewise.
11497         * tests/mdemo/foo2.c: Likewise.
11498         * tests/mdemo2/configure.ac: Likewise.
11499         * tests/pdemo/configure.ac: Likewise.
11500         * tests/pdemo/longer_file_name_dlmain.c:
11501         * tests/pdemo/longer_file_name_foo.c: Likewise.
11502         * tests/pdemo/longer_file_name_foo2.c: Likewise.
11503         * tests/tagdemo/configure.ac: Likewise.
11504         * tests/tagdemo/foo.cpp: Likewise.
11505
11506 2007-01-24  Reuben Thomas <rrt@sc3d.org>  (tiny change)
11507
11508         * doc/libtool.texi (Inter-library dependencies): Fix typo.
11509
11510 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11511
11512         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]:
11513         Use `lib -OUT' rather than `lib /OUT' to avoid MSYS path
11514         translation mangling.  Report by Christopher Hulbert.
11515         * THANKS: Update.
11516
11517         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
11518         suffixes matching `[fF][09].', for Fortran.
11519         * tests/suffix.test: Also test F90, F95, f03, F03.
11520
11521         * Makefile.am (EXTRA_DIST): Add ChangeLog.2006.
11522         * ChangeLog.2006: New, rotated, from...
11523         * ChangeLog: ...here.
11524
11525 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11526
11527         * doc/libtool.texi: Typo fixes.
11528         * TODO: Likewise.
11529
11530 2006-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11531
11532         * tests/link-order2.at: Define our override `sin' function with
11533         C binding even if $CC is a C++ compiler.  Skip the test with g++
11534         as its command line driver reorders `-lm'.
11535         * tests/search-path.at: Declare `inflate' with C binding.
11536         * tests/stresstest.at: Avoid unused variable warnings.
11537
11538 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11539
11540         * tests/link-order2.at: Simplify logic to be a bit more self
11541         documenting.  Suggested by Gary V. Vaughan.
11542
11543 2006-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11544
11545         * tests/link-order2.at: Add missing $bindir setting.  Prevent
11546         compiler optimization of sqrt call.  Fix logic inversion and
11547         add some comments about this stunt.  Add a test with reversed
11548         library link order that should fail if the system has a libm.
11549         Report by Patrick Welche.
11550
11551 2006-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11552
11553         Assume presence of a config header in all files, to provoke
11554         test failures on all systems.
11555         * libltdl/lt__alloc.c: Likewise.
11556         * libltdl/libltdl/lt__dirent.h: Likewise.
11557         * libltdl/libltdl/lt__glibc.h: Likewise.
11558         * libltdl/libltdl/lt__private.h: Likewise.
11559         * libltdl/libltdl/lt__strl.h: Likewise.
11560         * tests/recursive.at: Use AC_CONFIG_HEADERS.
11561         * tests/nonrecursive.at: Likewise.  Invoke autoheader.
11562         * HACKING: Adjust.
11563         Report by Patrick Welche.
11564
11565 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>,
11566             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11567
11568         * doc/libtool.texi (Distributing libltdl): In recursive and
11569         nonrecursive mode, a config header is now required.
11570         * libltdl/argz.c: Remove check for HAVE_CONFIG_H, to conform
11571         to gnulib's policy of including config.h unconditionally.
11572
11573 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11574
11575         * tests/link-order2.at: New test to show one case where ordering
11576         of depdepls on the command line matters.
11577         * Makefile.am: Adjust.
11578
11579         * tests/tagtrace.test: SKIP if `autoconf --trace' exits 63 or 1,
11580         for various possible (valid) error cases.  Also output stderr,
11581         to help with analysis.
11582
11583         * NEWS: Account for recent multilib fix.
11584         * tests/search-path.at: New test, to provide at least a weak
11585         test.
11586         * Makefile.am: Update.
11587
11588         * libtoolize.m4sh (func_fixup_Makefile): Fix missing
11589         substitution for nonrecursive mode.  Remove otherwise-empty
11590         continuation lines in the output file.
11591         Report by Bob Friesenhahn.
11592
11593 2006-10-22  Peter O'Gorman  <peter@pogma.com>
11594
11595         * libltdl/config/ltmain.m4sh: Add -F* to flags that are passed
11596         to the linker.
11597         Reported by SIGOURE Benoit <sigoure.benoit@lrde.epita.fr>
11598
11599 2006-10-19  Peter O'Gorman  <peter@pogma.com>
11600
11601         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Improve
11602         multilib support.
11603         Reported by Kate Minola <kate01123@gmail.com> and others.
11604
11605 2006-10-13  Eric Blake  <ebb9@byu.net>
11606
11607         * libltdl/ltdl.c (load_deplibs): Avoid memory leak on failure.
11608         (unload_deplibs): Avoid memory leak on cleanup.
11609
11610 2006-09-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11611
11612         * libltdl/m4/libtool.m4 (func_mode_compile): Accept files with
11613         extension `.f9?'.
11614         * tests/suffix.test: Test `f95'.
11615
11616         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Use
11617         `func_source' consistently.
11618
11619 2006-09-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11620
11621         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
11622         [k*bsd*-gnu ]: Fix brown paper bag: save and restore `libdir'.
11623
11624 2006-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11625
11626         * tests/duplicate_deps.at: New file.  Test circular depending
11627         convenience archives (currently failing).
11628         * Makefile.am: Update.
11629         Report by Stefan Traby <stefan@hello-penguin.com>.
11630
11631         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
11632         [ openbsd ]: Set `hardcode_direct_absolute', to prefer rpath
11633         over putting absolute file names in NEEDED entries.
11634         * NEWS: Update.
11635         Reported by Jake Meuser and others.
11636
11637         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
11638         [ k*bsd*-gnu ]: Test if ld sets DT_RUNPATH; in that case, set
11639         shlib_overrides_runpath to `yes'.  Fixes test failure of new
11640         test on Gentoo GNU/Linux.
11641
11642         * tests/shlibpath.at: New file, with...
11643         (shlibpath_overrides_runpath): ...new test.
11644         * Makefile.am: Update.
11645
11646 2006-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11647
11648         * tests/destdir.at: New file.
11649         * Makefile.am: Adjust.
11650
11651 2006-09-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11652
11653         * tests/inherited_flags.at: Drop `${parameter}' for `$parameter'
11654         where appropriate, for improved `testsuite -x' output.
11655
11656 2006-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11657
11658         * libltdl/ltdl.c: Move LT__UNUSED before parameter name, for g++
11659         3.2.3 (on MinGW).
11660         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
11661         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
11662         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Likewise.
11663
11664 2006-09-04  George Bosilca <bosilca@cs.utk.edu>
11665         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11666
11667         Make libltdl work when compiled with a C++ compiler.
11668
11669         * libltdl/lt__alloc.c, libltdl/lt_dlloader.c, libltdl/ltdl.c,
11670         libltdl/slist.c, libltdl/libltdl/lt__alloc.h,
11671         libltdl/libltdl/lt_error.h, libltdl/libltdl/slist.h,
11672         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
11673         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
11674         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
11675         libltdl/loaders/shl_load.c, tests/stresstest.at,
11676         tests/testsuite.at, tests/f77demo/foo.h, tests/fcdemo/foo.h,
11677         tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c,
11678         tests/mdemo/main.c: Allow sources to be compiled by a C++
11679         compiler: Cast appropriately, add C linkage for `get_vtable'
11680         functions, do not use C++ keyword `delete'.
11681
11682         * libltdl/config/ltmain.m4sh (func_mode_link): In the dlsym
11683         file, define a type for the symbol list, and declare the list
11684         `extern', so that it is extern even if compiled by a C++
11685         compiler.  The type definition helps avoid a compiler warning
11686         against anonymous extern struct.
11687         * libltdl/libltdl/lt_system.h: Add `extern' to `LT_SCOPE' for
11688         the same reason.
11689
11690         * libltdl/argz_.h: It's __cplusplus, not _cplusplus.
11691         * libltdl/libltdl/slist.h: Likewise.
11692
11693         * libltdl/libltdl/lt__glibc.h: Wrap included argz.h in
11694         `extern "C"', for broken headers on Cygwin.
11695
11696 2006-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11697
11698         * tests/testsuite.at: Test `unset' on a set variable; older
11699         bash versions return 1 if the variable was not set.
11700
11701         * tests/am-subdir.at, tests/early-libtool.at: Fix the LF vs.
11702         CRLF related failures on MinGW by grepping for good output
11703         instead of using AT_CHECK's `expout'.
11704
11705 2006-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11706
11707         Drop K&R support from testsuite in favor of C89.
11708
11709         * tests/duplicate_members.at: provide declarations of used
11710         functions.
11711         * tests/testsuite.at: Drop unneeded arguments.
11712         * tests/cdemo/main.c: Assume C89.
11713         * tests/demo/dlmain.c: Likewise.
11714         * tests/demo/main.c: Likewise.
11715         * tests/depdemo/main.c: Likewise.
11716         * tests/depdemo/l1/l1.c: Likewise.
11717         * tests/depdemo/l2/l2.c: Likewise.
11718         * tests/depdemo/l3/l3.c: Likewise.
11719         * tests/depdemo/l4/l4.c: Likewise.
11720         * tests/f77demo/cprogram.c: Likewise.
11721         * tests/fcdemo/cprogram.c: Likewise.
11722         * tests/mdemo/mlib.c: Likewise.
11723         * tests/mdemo2/main.c: Likewise.
11724         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
11725         * tests/pdemo/longer_file_name_main.c: Likewise.
11726         * tests/fcdemo/fooc.c: Reformat.
11727         * tests/mdemo/sub.c: Likewise.
11728
11729 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11730
11731         * tests/mdemo/main.c: Fix bogus line in last patch.
11732
11733 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11734
11735         Avoid mixing functions and data pointers in callback functions.
11736
11737         * libltdl/ltdl.c (file_worker_func): New type.
11738         (lt_dlforeachfile): Instead of passing a function pointer as a
11739         data pointer, pass a pointer to a file_worker_func pointer.
11740         (foreach_callback_func): Adjust.
11741         * tests/mdemo/main.c: Assume C89. Exercise lt_dlforeachfile.
11742         (callback, try_iterate, my_dirname): New functions.
11743         * tests/mdemo-exec.test: Check for its output.
11744
11745 2006-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11746
11747         * libltdl/libltdl/lt__private.h (__attribute__, LT__UNUSED):
11748         New macros.
11749         * libltdl/loaders/dld_link.c: Use LT__UNUSED where
11750         appropriate.
11751         * libltdl/loaders/dlopen.c, libltdl/loaders/load_add_on.c,
11752         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
11753         libltdl/loaders/shl_load.c: Likewise.
11754         * libltdl/ltdl.c: Likewise.
11755         (find_file_callback): Fix declaration names to match definition.
11756         (load_deplibs) [!LTDL_DLOPEN_DEPLIBS]: Use separate definition
11757         for less preprocessor clutter.
11758
11759         * Makefile.am (check-local, installcheck-local): Use
11760         `TESTSUITEFLAGS' rather than `TESTSUITE_FLAGS', like Autoconf.
11761         * HACKING, README, README.alpha: All uses changed.
11762
11763 2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11764
11765         * libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
11766         sharing with gnulib.  Report by Eric Blake.
11767         * libltdl/lt__alloc.c, libltdl/libltdl/lt__dirent.h,
11768         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
11769         libltdl/libltdl/lt__strl.h: Likewise.
11770         * HACKING: Update.
11771
11772 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11773
11774         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
11775         `--coverage' and `-pg', for GCC.  Report by Rainer Keller
11776         <keller@hlrs.de> and Tor Lillqvist <tml@iki.fi>.
11777
11778 2006-08-25  Kurt Roeckx <kurt@roeckx.be>,
11779             Aurelien Jarno <aurel32@debian.org>
11780
11781         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
11782         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
11783         (_LT_LANG_CXX_CONFIG) [k*bsd*-gnu]: kfreebsd*-gnu and
11784         knetbsd*-gnu behave like linux-gnu.
11785         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
11786         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK)
11787         [x86_64-*kfreebsd*-gnu]: Add 32/64 bit bi-arch support.
11788         * NEWS: Update.
11789
11790 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11791
11792         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ mingw,pw32 ]:
11793         If `file' is present, use `func_win32_libid' rather than
11794         `objdump -f', to facilitate cross-compilation.
11795         Reported by Pierre Ossman <ossman@cendio.se>.
11796
11797 2006-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11798
11799         * libltdl/config/ltmain.m4sh (func_mode_link): In GNU ld script,
11800         do not quote object file names, for Intel icc 9.0 IPO link.
11801
11802 2006-08-22  Eric Blake  <ebb9@byu.net>
11803
11804         * libltdl/m4/ltdl.m4 (LTDL_INIT): Avoid macros marked obsolete in
11805         latest autoconf.
11806         * libltdl/m4/libtool.m4 (_lt_cv_sys_global_symbol_pipe): Work in
11807         spite of -Wmissing-prototypes.
11808         * libltdl/libltdl/lt__dirent.h: Rewrite to accomodate loss of
11809         AC_HEADER_DIRENT.
11810
11811         * libltdl/m4/libtool.m4: Avoid space-tab.
11812
11813 2006-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11814
11815         * libltdl/config/ltmain.m4sh (func_mode_execute): Also search
11816         the directory above `$objdir' for the argument of "-dlopen", as
11817         mentioned in the error message.
11818
11819 2006-08-03  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>
11820
11821         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix issues
11822         with previous patch. for ... do' line is superflous. Need
11823         _LT_TAGVAR not _LT_AC_TAGVAR, should be for both linux and
11824         solaris with Sun compiler.
11825
11826 2006-08-01  Albert Chin <china@thewrittenword.com>
11827
11828         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
11829         Don't set $postdeps to "-lCstd -lCrun" if
11830         "-library=stlport4" set in CXXFLAGS as stlport4 C++
11831         library incompatible with Cstd C++ library. Use
11832         '-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
11833
11834 2006-07-28  Eric Blake  <ebb9@byu.net>
11835
11836         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD, LT_OUTPUT):
11837         s/recognise/recognize/.
11838
11839 2006-07-22  Eric Blake  <ebb9@byu.net>
11840
11841         * libltdl/ltdl.c (loader_init_callback) [HAVE_LIBDLLOADER]:
11842         Protect definition to avoid compiler warnings about unused
11843         function.
11844
11845 2006-07-21  Eric Blake  <ebb9@byu.net>
11846
11847         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD): Search for dlopen without
11848         depending on -ldl, required by cygwin 1.5.20.
11849
11850 2006-06-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11851
11852         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
11853         ( _LT_LINKER_BOILERPLATE): Rewrite to not use unchecked
11854         `printf', for old systems like SunOS 4.1.
11855         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION)
11856         (_LT_COMPILER_C_O, _LT_LINKER_SHLIBS): Likewise.
11857         (_LT_LANG_C_CONFIG): Adjust: use literal newlines in
11858         `lt_simple_compile_test_code' and `lt_simple_link_test_code'.
11859         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
11860         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Likewise.
11861         Bug report by Bruce Becker and Mark Andrews.
11862
11863 2006-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11864
11865         Fix the bugs where libtoolize needs to use `dir/file' instead of
11866         `./dir/file', where ltdldir is `.', so that libtoolize correctly
11867         checks for (and suggests) `config' and `m4' instead of
11868         `./config' and `./m4' as auxiliary resp. macro directories.
11869         The change is necessary for unambiguous naming, the chosen way
11870         plays better with non-GNU make in VPATH builds.
11871
11872         * libtoolize.m4sh (ltdlprefix): New variable, to use as prefix
11873         instead of `$ltdldir/'.
11874         (func_check_macros): Use it.  Bug report by Eric Blake.
11875
11876 2006-06-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11877
11878         Fix several libtoolize-related bugs:
11879         - Do not symlink aclocal.m4, to work around a bug in aclocal
11880         overwriting the linked-to file instead of removing the symlink.
11881         - Have `libtoolize --copy' cause current time stamps, so that
11882         dependents will be rebuilt; for this, install files in order.
11883         - Fix list of distribution files for (non)recursive libltdl.
11884         - Fix some failure cases.
11885
11886         * libtoolize.m4sh (func_copy_cb):
11887         If `$opt_link', still copy `aclocal.m4', so a subsequent
11888         `aclocal' will not overwrite the symlink target.
11889         In `--copy' mode, do `cp -p' and `touch' for each file, so
11890         timestamps are updated but permissions preserved.
11891         (main): Reorder installing of files to match logical order
11892         and timestamp requirements.
11893         (func_fixup_Makefile_inc): Renamed to
11894         (func_fixup_Makefile): this.  Add sed scriptlet to remove
11895         non-existent files from EXTRA_DIST, for either nonrecursive
11896         or recursive mode.
11897         (main): call it to mangle also in recursive mode.
11898         * tests/libtoolize.at (expout): Adjusted.
11899         * tests/testsuite.at (tst_dist): Default to `dist'.
11900
11901 2006-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11902
11903         Fix libltdl to always have all generated files up to date.
11904
11905         * Makefile.am (all-local): Depend on all generated files in
11906         libltdl, namely...
11907         (libltdl/aclocal.m4, libltdl/configure, libltdl/config-h.in):
11908         ...these.  List explicitly, including dependencies and
11909         rebuilding rules, using...
11910         (sub_aclocal_m4_deps, sub_configure_deps): ...these new
11911         variables.
11912         Report by Dan Lacher <Dan.Lacher@Sun.Com>.
11913
11914 2006-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11915
11916         * Makefile.am (install-data-local): Do not use $(INSTALL_DATA)
11917         from another directory: it may use a relative path to
11918         `install-sh'.
11919         Bug report by Dan Lacher <Daniel.Lacher@Sun.COM>.
11920
11921 2006-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11922
11923         * libltdl/config/ltmain.m4sh (func_mode_link): Honor `-threads',
11924         similar to `-mt'.
11925         Report by Eric Paire <eric.paire@st.com>.
11926
11927 2006-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
11928
11929         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ cygwin ]:
11930         define DLL_EXPORT for PIC objects on cygwin.
11931
11932 2006-05-24  Albert Chin  <china@thewrittenword.com>
11933
11934         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
11935         [ aix4*, aix5*, hpux10*, hpux11* ]: Set hardcode_direct_absolute
11936         for CXX tag too!
11937
11938 2006-05-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11939
11940         * libltdl/config/ltmain.m4sh (func_mode_link, shell wrapper):
11941         Do not put `"$@"' in argument to $ECHO.
11942
11943 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11944
11945         * libltdl/m4/libtool.m4: Bump serial, necessary because of
11946         _LT_CHECK_SHELL_FEATURES changes.
11947
11948 2006-05-18  Albert Chin-A-Young <china@thewrittenword.com>
11949
11950         * tests/early-libtool.at: Pass $CPPFLAGS and $CFLAGS to
11951         compiler when compiling for extra flags that might be
11952         needed for ANSI-compliance, 64-bit, etc. The environment
11953         we compile with should match the environment libtool was
11954         compiled with.
11955
11956 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11957
11958         Fix mode=compile time regression of CVS HEAD over branch-1-5.
11959
11960         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Rename to...
11961         (_LT_CHECK_SHELL_FEATURES): ...this.
11962         (_LT_SETUP): Adjust caller.
11963         (_LT_CHECK_XSI_SHELL): New libtool variables `lt_unset',
11964         `SP2NL', `NL2SP', to contain results from tests for unset,
11965         taken from AS_BOURNE_COMPATIBLE, and ASCII vs EBCDIC, taken...
11966         * libltdl/config/general.m4sh: ...from here, and used...
11967         * libltdl/config/ltmain.m4sh: ...here everywhere now.
11968         * (AS_SHELL_SANITIZE): Replace by faster, actually necessary
11969         part of its expansion, taken from current Autoconf CVS.  Do not
11970         save and set all locale variables any more, but only LANG,
11971         LC_ALL, LC_CTYPE, LC_COLLATE, LC_MESSAGES.
11972         (func_mode_execute): Adjust.
11973         * libltdl/m4/libtool.m4 (_LT_CONFIG): No need to unset CDPATH
11974         here any more.
11975         * libtoolize.m4sh: Compute `SP2NL' and `NL2SP' here, too.
11976
11977 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
11978
11979         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
11980         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
11981         _LT_LANG_FC_CONFIG), tests/link-order.at
11982         [ aix4*, aix5*, hpux10*, hpux11* ]: rename
11983         hardcode_direct_static to hardcode_direct_absolute.
11984         * doc/libtool.texi (libtool script contents): Adjust.
11985
11986         * libltdl/ltdl.c (lt_dlhandle_fetch): Arguments to
11987         lt_dlhandle_iterate were in the wrong order.
11988
11989 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11990
11991         * libltdl/m4/libtool.m4 (_LT_LINKER_OPTION): Require
11992         _LT_DECL_SED.
11993         (_LT_CMD_GLOBAL_SYMBOLS, _LT_LINKER_SHLIBS): Likewise.
11994         * libltdl/m4/ltdl.m4 (LTDL_INIT): Likewise.
11995         (_LT_DECL_SED): Set $Xsed here, using $SED.  Moved from...
11996         (_LT_SETUP): ...here.
11997         Report by Eric Blake.
11998
11999 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
12000
12001         * doc/libtool.texi (libtool script contents): Document new
12002         hardcode_direct_static variable.
12003
12004         * tests/link-order.at: Be careful about usage of shrext_cmds.
12005
12006         * libltdl/m4/libtool.m4 (LT_AC_PROG_SED):  Declarations for
12007         compatibility with old versions of libtool, and old versions
12008         of aclocal.
12009
12010 2006-05-17  Albert Chin-A-Young  <china@thewrittenword.com>
12011
12012         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
12013         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
12014         _LT_LANG_FC_CONFIG) [ aix4*, aix5*, hpux10*, hpux11* ]:
12015         Introduce a new variable, hardcode_direct_static, which
12016         would ignore hardcode_direct=yes if the result would create a
12017         static library dependency. Static library dependencies are
12018         immune to $shlibpath_var.
12019         * tests/link-order.at: Take hardcode_direct and
12020         hardcode_direct_static into consideration when testing
12021         link order.
12022
12023 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12024
12025         Eliminate quadratic scaling in argument parsing loop, for
12026         shells that understand `var+=value', such as Bash-3.1, or Zsh.
12027
12028         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Test whether
12029         the shell understands `var+=value'.
12030         (_LT_PROG_XSI_SHELLFNS): Define `func_append' based on this.
12031         * config/ltmain.m4sh (func_mode_link): Use `func_append' for
12032         compile_command, finalize_command, libtool_args, libobjs,
12033         non_pic_objects.
12034
12035 2006-05-15  Bruno Haible  <bruno@clisp.org>,
12036             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12037
12038         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
12039         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ linux ]:
12040         Add support for Sun C 5.9, Sun C++ 5.9, and Sun Fortran 8.3 on
12041         GNU/Linux.
12042         * NEWS: Update.
12043
12044 2006-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12045
12046         * Makefile.am (check-local): Move `$(TESTS_ENVIRONMENT)' and
12047         `$(BUILDCHECK_ENVIRONMENT)' to be arguments of `testsuite', so
12048         that reruns will remember it; set enviroment variable
12049         `CONFIG_SHELL' so the suite will know which shell it was started
12050         with.
12051         (installcheck-local): Likewise, for `$(TESTS_ENVIRONMENT)' and
12052         `$(INSTALLCHECK_ENVIRONMENT)'.
12053         * tests/testsuite.at (LT_AT_TAG): Do not set the compiler
12054         variable here.
12055
12056 2006-05-14  Albert Chin-A-Young  <china@thewrittenword.com>
12057
12058         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12059         [ aix ]: $hardcode_direct is set twice.
12060
12061 2005-05-14  John Bowler  <jbowler@acm.org>
12062
12063         * libltdl/config/ltmain.m4sh (func_mode_link): For version_type
12064         `none', we still need to set `current', `age', and `revision',
12065         so that our checks don't barf.  The values won't be used later.
12066         Apparently reported by several people, several times, for BeOS.
12067         * NEWS, THANKS: Update.
12068
12069 2006-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12070
12071         * tests/fail.at: Use "test -x" if available, for testing of
12072         executables; code modified from Autoconf's AS_EXECUTABLE_P.
12073         Reported by Albert Chin <china@thewrittenword.com>.
12074
12075 2006-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12076
12077         * libltdl/config/ltmain.m4sh (func_write_libtool_object):
12078         New function, factored out from..
12079         (func_mode_compile): .. here.  Call it to generate the libtool
12080         object file (the `.lo' file) in one step.
12081
12082 2006-04-03  Peter O'Gorman  <peter@pogma.com>
12083
12084         * libltdl/loaders/preopen.c: Don't allow lt_dlopen if the
12085         module has no symbols.
12086
12087 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12088
12089         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]:
12090         Avoid warning when "parsing" `/etc/ld.so.conf' and empty
12091         `/etc/ld.so.conf.d'.
12092         Reported by Orion Poplawski <orion@cora.nwra.com>.
12093
12094 2006-03-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12095
12096         * bootstrap: Actually use the correct version of the last patch.
12097
12098 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12099
12100         * bootstrap: Enable `WORKING_LIBOBJ_SUPPORT' if we detect
12101         Autoconf-2.60+ and Automake-1.10+, or CVS versions.
12102
12103         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Sync with gnulib:  If we
12104         define `error_t', also define `__error_t_defined', so argp.h
12105         will not typedef the former.
12106
12107 2006-03-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12108
12109         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [ freebsd ]
12110         [ dragonfly ]: Set libltdl_cv_sys_dlopen_deplibs to yes.
12111         Fixes excessive lt_dlopen times on these systems.
12112         * NEWS, THANKS: Update.
12113         Bug reported by Peter Jeremy <peterjeremy@optushome.com.au>,
12114         patch by Joerg Sonnenberger <joerg@netbsd.org>.
12115
12116 2006-03-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12117
12118         * tests/static.at: New tests for comprehensive test exposure of
12119         all current and proposed static linking flags for programs.
12120         * Makefile.am: Updated.
12121
12122         * libltdl/config/ltmain.m4sh (func_mode_link)
12123         < -static-libtool-libs >: New option.
12124         * doc/libtool.texi (Link mode, Distributing libltdl):
12125         Document it.
12126         Suggested by Gary Kumfert <kumfert@llnl.gov>.
12127
12128 2006-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12129
12130         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp [ hpux ] <aCC>:
12131         The HPPA C++ compiler has namespace support but provides no
12132         `std' namespace; just provide it with a dummy.
12133
12134         * libltdl/m4/libtool.m4 (AC_PROG_SED): Do not forget to reset
12135         IFS even in case of empty `$PATH'.
12136
12137 2006-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12138
12139         * libltdl/config/ltmain.m4sh (func_mode_link): Comment out the
12140         code to remove uninstalled paths, as it is wrong here.  Change
12141         the wrong shell quoting that kept it from "working" before.
12142         * THANKS: Updated.
12143
12144         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
12145         [ freebsd, dragonfly ]: Fix 1.5.22 regression caused by too
12146         strict $host_os match that stopped DragonFly from working.
12147         * THANKS: Updated.
12148         Reported by Jeremy C. Reed <reed@reedmedia.net>,
12149         patch by Todd Vierling <tv@duh.org>.
12150
12151 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12152
12153         * libltdl/config/ltmain.m4sh (startup): save all locale specific
12154         environment, variables:, LANG, LANGUAGE, LC_ADDRESS, LC_ALL
12155         LC_COLLATE, LC_CTYPE, LC_IDENTIFICATION, LC_MEASUREMENT,
12156         LC_MESSAGES LC_MONETARY, LC_NAME, LC_NUMERIC, LC_PAPER,
12157         LC_TELEPHONE, LC_TIME.
12158         (func_mode_execute): Restore them.
12159
12160 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12161
12162         * doc/libtool.texi (Tags): Mention `FC'.
12163         (libtool script contents) <CC>: Specify more precisely as the
12164         compiler of the current tag.
12165         <LTCC, LTCFLAGS, build, build_alias, build_os, host_alias,
12166         host_os, macro_version, macro_revision, max_cmd_len>:
12167         Document these variables.
12168
12169 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12170
12171         * doc/libtool.texi: Update copyright years.
12172
12173         * libltdl/config/getopt.m4sh (func_help): Substitute `$host'.
12174         * libltdl/config/ltmain.m4sh (help message): Use $host not
12175         @host_triplet@, as the `@..@' substitution is done at bootstrap
12176         time already.
12177         Reported by Julien Lecomte <julien@famille-lecomte.net>.
12178
12179         * doc/libtool.texi (Implementation issues):  Note that both
12180         prefix and suffix of a library may differ.
12181         (Using libtool, Creating object files, Linking libraries):
12182         Remove last documentation traces of the age when `foo.lo' was
12183         the PIC object file and not the `libtool object' text file.
12184         (libtool script contents) <compiler_o_lo>: Remove description
12185         of this variable.  It was removed from libtool in 1.5 times.
12186
12187 2006-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12188
12189         * libltdl/config/ltmain.m4sh (func_mode_link) [ linux ]:
12190         PGI: for `reload_cmds', we not only need to get rid of `$wl',
12191         but also turn comma into space so $LD understands
12192         whole_archive_flag_spec correctly.
12193
12194         * libltdl/config/ltmain.m4sh (func_mode_link) <shell wrapper>:
12195         Add _AS_BOURNE_COMPATIBLE code from Autoconf, to fix issues
12196         with zsh and other shells.
12197         Reported by David Gómez Espinosa <david@pleyades.net>.
12198
12199 2006-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12200
12201         * libltdl/m4/libtool.m4 (AC_PROG_SED): m4_defun this rather
12202         than AC_DEFUN, so that old aclocal does not pick this up.
12203
12204         * Makefile.am ($(TESTSUITE)): Also depend on `Makefile.am'.
12205         Write to temporary file and rename.
12206
12207 2006-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12208
12209         * Makefile.am (EXTRA_DIST): Add `$(srcdir)/' to all generated
12210         files so that non-GNU make programs will use the rebuilding
12211         rules.
12212
12213         * tests/testsuite.at: Add new keyword `libtoolize' for tests
12214         that exercise the `libtoolize' script that is generated at build
12215         time.
12216         * HACKING: Update testsuite mention, explain keywords.
12217
12218         * libltdl/config/ltmain.m4sh (extracted_archives)
12219         (extracted_serial): New globals.
12220         (func_extract_archives): Use them to rename extraction archives
12221         for linking against multiple convenience libraries with the same
12222         name.
12223         * tests/duplicate_conv.at: New tests.
12224         * Makefile.am: Adjusted.
12225         Reported by Carlo Contavalli <ccontavalli@commedia.it>.
12226
12227         * libltdl/config/ltmain.m4sh (func_mode_link) < test_compile >:
12228         Fix a couple of instances where `test .. -ne ..' would possibly
12229         compare non-numbers.  Clean up a bit.
12230
12231         * tests/convenience.at, tests/deplibs-ident.at: Add new keyword
12232         `libtool' for tests that exercise the unmodified `libtool'
12233         script that is generated at build time.
12234         * tests/duplicate_members.at, tests/fail.at: Likewise.
12235         * tests/inherited_flags.at, tests/link-order.at: Likewise.
12236         * tests/stresstest.at, tests/template.at: Likewise.
12237
12238 2006-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12239
12240         * tests/fail.at: Also pass a bogus object file to the linker so
12241         it fails more reliably; AIX and IRIX linkers ignore duplicate
12242         symbol definitions.
12243
12244         * libltdl/m4/libtool.m4 [ solaris ] (_LT_LINKER_SHLIBS)
12245         (_LT_LANG_CXX_CONFIG) < whole_archive_flag_spec >:
12246         Fix this once and for all, for both the SUN compiler suite
12247         (cc/CC/f77/f90/f95) and GCC.
12248         Reported by Yuri Pukhalsky <pooh@cryptopro.ru>.
12249
12250         * tests/cdemo/Makefile.am: Remove broken use of undocumented
12251         Automake variable `$(OBJECTS)'.
12252         * tests/demo/Makefile.am, tests/depdemo/Makefile.am: Likewise.
12253         * tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am: Likewise.
12254         * tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am: Likewise.
12255         * tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Likewise.
12256
12257         * libltdl/config/ltmain.m4sh (func_mode_link): Fix logic for
12258         adding run paths to also add paths for installed libtool
12259         libraries in case `-static' is used.
12260
12261 2006-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12262
12263         * Makefile.am (TESTSUITE_AT): List testsuite files in the order
12264         in which they are to be expanded in the suite.
12265         (tests/TESTSUITE): Rebuild by passing all $(TESTSUITE_AT) files,
12266         with their path suitably adjusted.  This enables us to..
12267         * tests/testsuite.at: ..get rid of their redundant mention here.
12268
12269 2006-01-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12270
12271         * doc/libtool.texi (titlepage): Remove superfluous word.
12272
12273         * libltdl/config/ltmain.m4sh (func_mode_link): Fix matching
12274         duplicate run path entries with the correct separator.
12275
12276         * tests/testsuite.at (PREPARE_TESTS): Escape `^' for some older
12277         shells.
12278
12279         * ChangeLog, HACKING, README, README.alpha,
12280         libltdl/config/ltmain.m4sh:  Add vi(m) modelines, to match emacs
12281         formatting variables.
12282
12283 2006-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12284
12285         * Makefile.am (libltdl/Makefile.am): Fixup sed script.
12286         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
12287
12288 2006-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12289
12290         * Makefile.am, bootstrap, clcommit.m4sh,
12291         libltdl/config/getopt.m4sh, libltdl/config/mailnotify.m4sh,
12292         tests/sh.test, tests/testsuite.at: Bump copyright years.
12293
12294 2006-01-21  Eric Blake  <ebb9@byu.net>
12295
12296         * THANKS: Move myself to contributor.
12297
12298 2006-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12299
12300         * bootstrap: Don't use semicolons inside { } in sed scripts, as
12301         Posix says it's not portable.
12302         * Makefile.am (libltdl/Makefile.am): Likewise.
12303         * libtoolize.m4sh (all over the map): Likewise.
12304         * libltdl/config/getopt.m4sh (func_version, func_usage)
12305         (func_help): Likewise.
12306         * libltdl/config/ltmain.m4sh (func_win32_libid): Likewise.
12307         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Likewise.
12308         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Likewise.
12309         * tests/sh.test, tests/testsuite.at (LT_AT_TAG): Likewise.
12310         Noted by Paul Eggert <eggert@cs.ucla.edu>.
12311
12312         * libltdl/config/ltmain.m4sh (func_mode_compile): Also transform
12313         `.obj' correctly.
12314         Reported by George Bosilca <bosilca@cs.utk.edu>.
12315
12316 2006-01-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12317
12318         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): Fix my forward port
12319         error of last commit.
12320
12321 2006-01-12  Leif Ekblad  <leif@rdos.net>
12322
12323         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12324         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC): Added support for
12325         RDOS.
12326         * NEWS: Updated.
12327
12328 2006-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12329
12330         * libtoolize.m4sh, libltdl/config/general.m4sh,
12331         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
12332         libltdl/m4/libtool.m4: Bump copyright years.
12333
12334 2006-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12335
12336         * Makefile.am (EXTRA_DIST): Add ChangeLog.2005.
12337
12338         * README, README.alpha: Adjust copyright years.
12339         * ChangeLog.2005: New, rotated, from..
12340         * ChangeLog: ..here.
12341
12342 2005-12-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12343
12344         * Makefile.am (libtoolize): Also depend on `config.status'.
12345         (tests/atconfig): Normalize path, for non-GNU make.
12346         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
12347
12348         * libltdl/config/ltmain.m4sh (func_mode_link) <temp_rpath>:
12349         Fix position of separator for shlibpath_var setting in shell
12350         wrapper.
12351
12352         * libltdl/lt_error.c (error_strings): Remove parentheses around
12353         string literal initializers, uncovered by `tcc'.
12354         Reported by Edward Chernenko <edwardspec@yahoo.com>.
12355
12356 2005-12-21  Gary V. Vaughan  <gary@gnu.org>
12357
12358         * .cvsignore, libltdl/.cvsignore, tests/.cvsignore: Ignore
12359         +build, +dest, +inst, .cvslog-tlasync, .gdb_history, .pc,
12360         libltdl/INSTALL, libltdl/stamp-mk and tests/testsuite.log.
12361
12362 2005-12-20  Eric Blake  <ebb9@byu.net>
12363
12364         * README.alpha: Really commit.
12365
12366 2005-12-19  Eric Blake  <ebb9@byu.net>
12367
12368         * HACKING (release note templates): Update anon cvs location.
12369         * README.alpha (Reporting Bugs): Likewise.
12370
12371 2005-12-18  Jacob Meuser <jakemsr@jakemsr.com>,
12372             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12373
12374         * libltdl/config/ltmain.m4sh (func_mode_link): Move library
12375         search paths that coincide with paths to not yet installed
12376         libraries to the beginning of the library search list.
12377
12378 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12379
12380         * THANKS: Updated.
12381
12382         * HACKING: `./libtool --config' is more helpful than `--help'.
12383
12384         * libltdl/config/ltmain.m4sh <preserve_args, linknames>:
12385         Initialize properly.
12386
12387 2005-12-18  Kean Johnston  <jkj@sco.com>,
12388             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12389
12390         * libltdl/m4/libtool.m4 (LT_PATH_NM): Also look in
12391         /usr/ccs/bin/elf, for SCO.  If we are not cross-compiling, but
12392         $ac_tool_prefix is set, also try an un-prefixed `nm'.
12393
12394 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12395
12396         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
12397         <hardcode_shlibpath_var>: Initialize, to `unsupported'.
12398
12399 2005-12-18  Marc Espie  <espie@nerim.net>
12400
12401         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
12402         [ openbsd ] <sys_lib_dlsearch_path_spec>: Set to `/usr/lib'
12403         only.
12404
12405 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12406
12407         * tests/old-m4-iface.at: Require Autoconf-2.50, so that
12408         Debian's autoconf wrapper will not cause 2.13 to barf over
12409         `--force'.
12410         Reported by Kurt Roeckx <kurt@roeckx.be>.
12411
12412         * README.alpha (Reporting bugs): Suggest to also bootstrap the
12413         libltdl subdirectory -- the Makefile will enforce it anyway.
12414         (The Test Suite): Renamed to..
12415         (The Test Suites): ..this.  Introduce the new Autotest test
12416         suite, how to run each one individually, and what to report.
12417         * README (The Test Suite): Likewise.
12418
12419 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12420
12421         In the subpackage case, we do not install Makefile.inc.  Since
12422         we have to be correct for this case, remove `Makefile.inc' from
12423         EXTRA_DIST.  Recursive mode does not use it either.  Since
12424         nonrecursive mode requires an Automake >= 1.7 anyway, and those
12425         versions automatically distribute included makefile fragments,
12426         we don't need to cater for that one either.
12427
12428         * libltdl/Makefile.inc (EXTRA_DIST): Remove Makefile.inc.
12429         Reorder other entries.
12430
12431 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12432
12433         * Makefile.am (libltdl/Makefile.in): also depend on
12434         libltdl/aclocal.m4, so that we guarantee timestamp consistency.
12435         (libltdl/stamp-mk): New target, to fix `libltdl/Makefile.in'.
12436         (EXTRA_DIST): Distribute `libltdl/stamp-mk' and
12437         `libltdl/m4/lt~obsolete.m4'.
12438         (all-local): Ensure the stamp files is up to date.
12439         (libltdl/aclocal.m4): New target, to ensure timestamp
12440         consistency.  Depend on all m4 files.
12441         * HACKING: Updated.
12442
12443         * tests/testsuite.at (PREPARE_TESTS): New variable `tst_dist',
12444         default to empty.
12445         * tests/nonrecursive.at, tests/recursive.at,
12446         tests/standalone.at, tests/subproject.at: Use it in
12447         LT_AT_BOOTSTRAP or LT_AT_MAKE, so that you can optionally test
12448         redistribution within the tests.
12449
12450         * libltdl/m4/lt~obsolete.m4: Update documentation for aclocal
12451         versions before 1.7.  Change all macros to use AC_DEFUN instead
12452         of AU_DEFUN.
12453         * (_AC_PROG_LIBTOOL, AC_LIBTOOL_SETUP, _LT_AC_CHECK_DLFCN)
12454         (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_TAGCONFIG)
12455         (AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_CXX, _LT_AC_LANG_F77)
12456         (_LT_AC_LANG_GCJ, AC_LIBTOOL_RC, AC_LIBTOOL_LANG_C_CONFIG)
12457         (_LT_AC_LANG_C_CONFIG, AC_LIBTOOL_LANG_CXX_CONFIG)
12458         (_LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_LANG_F77_CONFIG)
12459         (_LT_AC_LANG_F77_CONFIG, AC_LIBTOOL_LANG_GCJ_CONFIG)
12460         (_LT_AC_LANG_GCJ_CONFIG, AC_LIBTOOL_LANG_RC_CONFIG)
12461         (_LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG)
12462         (_LT_AC_FILE_LTDLL_C): Add new fake macros for these, they
12463         were used at one time in libtool.m4.
12464
12465         * tests/am-subdir.at (Makefile.am): Put automake options here,
12466         in AUTOMAKE_OPTIONS.  Require 1.6 because of the newer
12467         `AC_INIT(pkgname,version) AM_INIT_AUTOMAKE' scheme.
12468         * tests/nonrecursive.at, tests/recursive.at: Require 1.7,
12469         because libltdl rules use `+=' in conditionals.
12470         * tests/testsuite.at (LT_AT_AUTOMAKE): Fix indenting.
12471         (LT_AT_AUTORECONF): also detect too old Automake.
12472
12473 2005-12-08  Eric Blake  <ebb9@byu.net>
12474
12475         * libltdl/libltdl/lt__alloc.h (FREE): Cast away constness of
12476         argument to `free' to avoid compiler warning.
12477
12478 2005-12-08  Peter O'Gorman  <peter@pogma.com>
12479
12480         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_LINKER_SHLIBS)
12481         [darwin]: Use $LTCC $LTCFLAGS to check for -single_module.
12482         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12483
12484 2005-12-07  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12485
12486         * bootstrap: always remove Makefile, to avoid triggering the
12487         autotools rebuild rules before autoreconf builds these.
12488         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
12489
12490 2005-12-07  Peter O'Gorman  <peter@pogma.com>
12491
12492         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4 [darwin]:
12493         Use -single_module by default when linking shared libraries. Can
12494         be overridden by specifying -multi-module or by setting the env
12495         var LT_MULTI_MODULE before configure.
12496         * libltdl/m4/libtool.m4 (archive_expsyms_cmds) [darwin]:
12497         Simplify.
12498         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12499
12500 2005-12-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12501
12502         * doc/libtool.texi (References): Do not use `@/' for the benefit
12503         of older `makeinfo', break lines instead.
12504
12505         * Makefile.am (install-data-local): No continuation here.
12506         (dist-hook): Fix copying of README.alpha to README.
12507         * tests/early-libtool.at (configure.ac): Remove
12508         `AM_INIT_AUTOMAKE', we do not use automake in these tests.
12509
12510         * README, README.alpha, libtoolize.m4sh: Typos.
12511         * tests/am-subdir.at, tests/duplicate_members.at: Make all
12512         banners end with a dot, for symmetry.
12513
12514         * libtoolize.m4sh (func_copy_all_files)
12515         (glob_exclude_pkgaux_files): Removed, since unused.
12516
12517         * libtoolize.m4sh (func_copy_cb, func_copy_some_files)
12518         (func_serial_update, func_keyword_update): Fail immediately
12519         if some file we may install does not exist.
12520         Reported by Troy Benjegerdes <hozer@hozed.org>.
12521
12522 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12523
12524         * TODO: A bunch of items fixed. :)
12525
12526         * tests/convenience.at: Updated to expose more corner cases.
12527
12528         * doc/libtool.texi (Invoking libtoolize): Remove mention of
12529         the nonrecursive restriction to name the directory `libltdl'.
12530
12531         * libtoolize.m4sh (func_fixup_Makefile_inc): New function.
12532         (main): Call it in nonrecursive mode to mangle Makefile.inc.
12533         * tests/nonrecursive.at: adjusted to test this.
12534
12535 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12536
12537         Basic support for PIE (position-independent executables).
12538
12539         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
12540         Don't pass PIE flag for compilation of the symbol file object.
12541         (func_mode_compile): Pass PIE flag only for non-PIC objects.
12542         * NEWS: Updated.
12543
12544 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12545
12546         * libltdl/config/general.m4sh (func_show_eval): Rewrite use of
12547         the failure expression, because the exit status of the previous
12548         command may not be preserved in the next `eval' by some shells,
12549         such as pdksh.
12550         * libltdl/config/ltmain.m4sh (func_extract_an_archive):
12551         Use func_show_eval correctly.
12552         (func_mode_link): Likewise.  Also, do not use `$status'.
12553         * tests/fail.at: New set of tests to ensure libtool fails.
12554         * Makefile.am, tests/testsuite.at: Adjusted.
12555
12556 2005-11-26  Peter O'Gorman  <peter@pogma.com>
12557
12558         * libltdl/m4/libtool.m4 [darwin]: Use $LTCC $LTCFLAGS to create
12559         reloadable objects.
12560
12561 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12562
12563         * libltdl/Makefile.inc (libltdl/argz.h): Create libltdl
12564         directory if it does not exist yet.  Take care that munging
12565         of the file will not mess up the build rule.
12566         Reported by Peter O'Gorman <peter@pogma.com>.
12567
12568 2005-11-25  Eric Blake  <ebb9@byu.net>,
12569             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12570
12571         * libltdl/loaders/loadlibrary.c (iface_id): New variable.
12572         (get_vtable): Get an `iface_id' from `lt_dlinterface_register'.
12573         (get_vtable): Rewrite to catch up with lt_dlhandle_iterate
12574         interface change.  Append dot only after w32 path conversion
12575         so it works on cygwin managed mounts.
12576
12577         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlinterface_free): New
12578         function.
12579         * doc/libtool.texi (User defined module data): Document it.
12580
12581 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12582
12583         * libltdl/m4/libtool.m4 [aix] <archive_expsym_cmds>
12584         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Always move -bnoentry
12585         before $compiler_flags, so it can be overridden.
12586
12587         * libltdl/config/ltmain.m4sh (func_mode_link): Allow GCC
12588         response files through.
12589
12590 2005-11-25  Peter O'Gorman  <peter@pogma.com>
12591
12592         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
12593         -isysroot for cross architecture builds on darwin.
12594
12595 2005-11-24  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12596
12597         * libltdl/config/ltmain.m4sh (func_mode_uninstall): In clean
12598         mode, don't remove non-existent libfoo.lai.
12599
12600 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12601
12602         * Makefile.am (aclocalfiles): Also install lt~obsolete.m4.
12603         * libtoolize.m4sh (func_check_macros): Updated.
12604         * tests/libtoolize.at: Adjusted.
12605
12606 2005-11-20  Eric Blake  <ebb9@byu.net>,
12607             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12608
12609         * bootstrap (--help): Provide some help.
12610
12611 2005-11-20  Todd Vierling <tv@netbsd.org>,
12612             Thorsten Glaser <tg@mirbsd.org>
12613
12614         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, _LT_SYS_DYNAMIC_LINKER)
12615         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
12616         (_LT_LANG_CXX_CONFIG) [ interix3 ]: Support for Interix/Microsoft
12617         Services for Unix.
12618         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
12619         * NEWS: Updated.
12620
12621 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12622
12623         * tests/link-order.at [ interix ]: Skip command line grep.
12624         * tests/deplibs-ident.at [ interix ]: Not broken here.
12625         Reported by Thorsten Glaser <tg@66h.42h.de>.
12626
12627 2005-11-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12628
12629         * libtoolize.m4sh (func_copy_all_files)
12630         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
12631         (func_massage_pkgconfig_files): Work around ksh limitation.
12632         Reported by Thorsten Glaser <tg@66h.42h.de>.
12633
12634 2005-11-14  Albert Chin  <china@thewrittenword.com>
12635
12636         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12637         [ hpux11 ]: Pass +nodefaultrpath when linking on ia64*.
12638
12639 2005-11-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12640
12641         Testsuite portability update round.
12642
12643         * tests/inherited_flags: skip when shared libs are disabled.
12644         * tests/deplibs-ident.at [ aix ]: No unexpected failure here.
12645         * tests/libtoolize.at: Fix for distcheck (readonly sources).
12646         * tests/nonrecursive.at, tests/recursive.at, tests/subproject.at
12647         (foo.c): Actually export a symbol, for AIX.
12648         * tests/old-m4-iface.at: Use AC_LIBTOOL_DLOPEN, for AIX.
12649         * tests/nonrecursive.at: Set foo_la_SOURCES, for automake-1.7.
12650         * tests/subproject.at: Require automake-1.9, we use indirect
12651         subdirs.
12652         * tests/am-subdir.at: Move AT_KEYWORDS settings..
12653         * tests/testsuite.at: ..here, in respective macros.
12654         (LT_AT_AUTOMAKE): Skip if we detect failure due to old version.
12655         (PREPARE_TESTS): Set autotool variables to `no' if not present.
12656         (LT_AT_ACLOCAL, LT_AT_AUTOCONF, LT_AT_AUTOMAKE)
12657         (LT_AT_AUTOHEADER, LT_AT_AUTORECONF): Use to XFAIL tests.
12658         Reported by Tim Rice <tim@multitalents.net>.
12659         (LT_AT_MAKE): Do not use `make -e'.
12660         (_LTDL_PROJECT_FILES): Adjust sub-make call.  Work around `make'
12661         which does not set `MAKE' or `SHELL'.  Fix for user-set
12662         `CONFIG_SHELL'.
12663         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
12664
12665         * libltdl/m4/lt~obsolete.m4 (_LT_CC_BASENAME)
12666         (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
12667         Added because they were added to branch-1-5 AC_DEFUNed.
12668         * HACKING: Add note about lt~obsolete.m4.
12669
12670         * Makefile.am, libltdl/Makefile.inc (INSTALL_LTDL):
12671         For nonrecursive mode, add to include_HEADERS as well.
12672         * doc/libtool.texi (Invoking libtoolize, Distributing libltdl),
12673         tests/nonrecursive.at: Adjusted, and removed TABS from .texi.
12674
12675         * libtoolize.m4sh: Revert use of `$tst_aclocaldir'.
12676
12677 2005-11-13  Eric Blake  <ebb9@byu.net>
12678
12679         * libltdl/ltdl.c (lt_dlhandle_iterate): Fix endless loop.
12680         (lt_dlinterface_register): Fail if lt__strdup did.
12681
12682 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12683
12684         * libltdl/m4/libtool.m4 (_LT_LANG_C_CONFIG):
12685         Removed `lt_prog_cc_shlib' cruft, not needed any more.
12686
12687 2005-11-13  Kean Johnston  <jkj@sco.com>,
12688             Tim Rice  <tim@multitalents.net>
12689
12690         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12691         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
12692         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG)
12693         [ sco3.2v5, sysv4, sysv4.3, sysv5, sco3.2v5, sco5v6, unixware,
12694         OpenUNIX, sysv4*uw2 ]: Complete overhaul of SCO support.
12695         * THANKS: Updated.
12696
12697 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12698
12699         * tests/quote.test: Do not fail on harmless shell bug present
12700         in some ksh versions.
12701         Reported by Tim Rice <tim@multitalents.net> and others.
12702
12703 2005-11-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12704
12705         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTION): Use m4_warning
12706         instead of m4_warn.
12707
12708         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): `wl' is tagged here.
12709
12710         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF, _LT_COMPILER_PIC):
12711         Make sure `$wl' is properly expanded for tests involving
12712         `export_dynamic_flag_spec', `lt_prog_compiler_static'.
12713
12714         * tests/defs.m4sh (func_configure): Actually pass
12715         options (like --disable-shared) to func_configure_nofail.
12716
12717 2005-11-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12718
12719         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]:
12720         Fix shlibpath_overrides_runpath settings.
12721         Reported by Dave Benson <daveb@idealab.com>.
12722
12723 2005-09-10  Charles Wilson  <cygwin@cwilson.fastmail.fm>
12724
12725         * libltdl/config/ltmain.m4sh (func_win32_libid): use $SED not
12726         sed.
12727         
12728 2005-11-10  Albert Chin-A-Young  <china@thewrittenword.com>
12729
12730         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]
12731         <hppa*64,ia64, aCC,g++>:
12732         Use C++ compiler for linking rather than ld.
12733
12734 2005-11-10  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12735
12736         * libltdl/m4/ltsugar.m4 (lt_join, lt_combine, lt_dict_filter):
12737         Rewrite to eliminate tail recursion; use ..
12738         (lt_unquote): New trivial helper macro.
12739         * libltdl/m4/libtool.m4 (_lt_decl_filter): Document.
12740
12741 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
12742
12743         * tests/testsuite.ac (macrodir): Don't set it here...
12744         * Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
12745         ...set it here to pick up files from the right place in context.
12746         * tests/libtoolize.at, tests/old-m4-iface.at: Adjust.
12747         * libtoolize.m4sh: Take tst_aclocaldir into account when running
12748         inside the test harness.
12749
12750 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
12751
12752         * tests/am-subdir.at: Now that we don't run autoreconf, we have to
12753         explicitly tell aclocal what flags to use.
12754
12755         * tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
12756         configure.
12757         * tests/am-subdir.at, tests/nonrecursive.at, tests/old-m4-iface.at,
12758         tests/subproject.at: Use LT_AT_BOOTSTRAP.
12759
12760 2005-11-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12761
12762         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Also set pic_flag.
12763         (_LT_LANG_CXX_CONFIG): Use $as_unset, not unset.
12764         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG): Remove bogus
12765         ld_shlibs tests.
12766
12767         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Move setting of
12768         `variables_saved_for_relink'..
12769         (_LT_SYS_DYNAMIC_LINKER): here, when both `shlibpath_var'
12770         and `runpath_var' have been set.
12771         Reported by Mike Frysinger <vapier@gentoo.org>.
12772
12773         * libltdl/Makefile.inc (AM_CPPFLAGS): Do not define
12774         HAVE_CONFIG_H.
12775         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not invoke
12776         AC_CONFIG_HEADERS ourselves, we can build with or without now.
12777
12778 2005-11-07  Kean Johnston  <jkj@sco.com>
12779
12780         * libltdl/config/ltmain.m4sh (func_mode_link) [ sysv4*uw2*,
12781         unixware7* ]: Work around linker bug on older SCO systems.
12782
12783 2005-11-07  Albert Chin-A-Young  <china@thewrittenword.com>
12784
12785         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
12786         (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]:
12787         hardcode_libdir_flag_spec and hardcode_minus_L are the same for
12788         hppa*64 and ia64*. Don't set
12789         hardcode_libdir_flag_spec='-L$libdir' on ia64* because if you
12790         specify +b and -L, +b overrides what is set into DT_RPATH.
12791
12792 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12793
12794         * tests/testsuite.at (_LTDL_PROJECT_FILES): Factored out from
12795         common code to build a basic libltdl using project.
12796         * tests/old-m4-iface.at, tests/standalone.at, tests/subproject.at:
12797         Use it.
12798
12799         * doc/libtool.texi (Distributing libltdl): Document correct use of
12800         LT_CONFIG_LTDL_DIR mode argument with Autoconf and Automake.
12801
12802 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12803
12804         Support 'recursive' mode for building libltdl: Automake will
12805         recursively descend into the libltdl directory, and use libltdl's
12806         Makefile.am code to build libltdl:
12807
12808         * ltdl.m4 (LT_CONFIG_LTDL_DIR): Don't barf on 'recursive' mode
12809         for 2nd argument.
12810         (_LTDL_MODE_DISPATCH): Handle recursive mode.
12811
12812 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12813
12814         * tests/recursive.at: New tests for libltdl as a subdirectory,
12815         configured and compiled from the toplevel project using a
12816         recursive make..
12817         * tests/testsuite.at: Use it.
12818         * Makefile.am (TESTSUITE_AT): Depend on it.
12819
12820         * libltdl/m4/ltdl.m4 (LTDL_INIT): Don't force running
12821         AC_CONFIG_HEADERS for subproject ltdl.
12822         * tests/old-m4-iface.at, tests/subproject.at: Remove workaround.
12823
12824         * libltdl/m4/ltdl.m4 (LT_CONFIG_LTDL_DIR): Add LTDL-MODE
12825         argument.
12826         * configure.ac: Use it.
12827
12828 2005-11-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12829
12830         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): lt_unknown is
12831         lt_dlunknown.
12832
12833         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Revert
12834         expansion of `$wl'.
12835         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_GCJ_CONFIG):
12836         Do not require LT_SYS_DLOPEN_SELF.
12837         (_LT_LANG_C_CONFIG): Instead call it at the right time.
12838         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
12839         (_LT_LANG_GCJ_CONFIG): Do not call _LT_CMD_STRIPLIB.
12840
12841         * Makefile.am: `2>&1' as suggested by Albert Chin.
12842         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4:
12843         Two newlines before each macro, fix underlines.
12844
12845 2005-11-05  Kean Johnston  <jkj@sco.com>,
12846             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12847
12848         * libltdl/config/ltmain.m4sh (func_mode_link) [*-*-sco3.2v5*]:
12849         Don't pass through -lc, nor add it to deplibs.
12850         [*-*-sysv5*]: Ditto.
12851         [*-*-openbsd*, *-*-freebsd*, *-*-dragonfly*]: Remove bogus
12852         `$arg'.
12853
12854 2005-11-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12855
12856         * THANKS: Updated.
12857
12858 2005-11-02  Gary V. Vaughan  <gary@gnu.org>
12859
12860         * tests/nonrecursive.at: New tests for libltdl as a subdirectory,
12861         configured and compiled from the toplevel project.
12862         * tests/testsuite.at: Use it.
12863         (LT_AT_AUTOHEADER): New macro.
12864         * Makefile.am (TESTSUITE_AT): Depend on nonrecursive.at.
12865
12866 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12867
12868         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Add `-64'
12869         to $LD if necessary, to permit combining of several convenience
12870         libs without any further objects added.
12871         Reported by Brian Barrett <brbarret@open-mpi.org>.
12872
12873 2005-11-01  Kean Johnston  <jkj@sco.com>,
12874             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12875
12876         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Use
12877         `lt_prog_compile_static', not `link_static_flag'.  Expand `$wl'
12878         so expansion of `export_dynamic_flag_spec' works.
12879         (_LT_TRY_DLOPEN_SELF): Show dlerror() in case of failure.
12880         (_LT_LINKER_SHLIBS) [ aix3 ]: Likewise.
12881         (_LT_COMPILER_PIC) [ hpux* ]: Use `${wl}'.
12882
12883 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12884
12885         * THANKS: Updated.
12886
12887 2005-11-01  Gary V. Vaughan  <gary@gnu.org>
12888
12889         * libltdl/m4/ltdl.m4 (LTDL_INIT): Call _LT_ENABLE_INSTALL directly
12890         instead of m4_requiring it, as it relies on enable_ltdl_install
12891         and enable_ltdl_convenience to have been initialised first.
12892
12893         * libtoolize.m4sh: Use serial tags to locate the correct serial
12894         numbers when deciding whether to update.
12895         (func_serial): Allow for macro_regex argument to be originating
12896         file name.
12897         (func_serial_update): Use NL2SP to flatten list of extracted
12898         m4_include files.
12899         * tests/libtoolize.at: More tests for old-style verbatim copying
12900         of macros into aclocal.m4.
12901
12902         * libltdl/m4/argz.m4, libltdl/m4/ltoptions.m4, libltdl/ltsugar.m4,
12903         libltdl/m4/ltversion.in: Add serial number tags, and bump serial
12904         number.
12905
12906 2005-10-31  Kean Johnston  <jkj@sco.com>
12907
12908         [ sysv5*, sco3.2v5*, sco5v6*, unixware*, OpenUNIX*, sysv4*uw2* ]
12909         Patches for various bug fixes, small improvements and updating
12910         the SCO platform support.
12911
12912         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Set correctly for SCO.
12913
12914         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Set correct
12915         symcode values for the native nm on SCO platforms.
12916
12917         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): All SCO platforms
12918         open dependency libraries when you dlopen a module.
12919
12920 2005-10-31  Albert Chin-A-Young  <china@thewrittenword.com>
12921
12922         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12923         [ aix ]: Remove duplicate always_export_symbols=yes for AIX.
12924
12925 2005-10-29  Howard Chu  <hyc@highlandsun.com>
12926
12927         * libltdl/config/ltmain.m4sh (func_mode_link):
12928         With `-static', only link statically against uninstalled
12929         libtool libraries.  Fixes 1.5.x regression to match documented
12930         behavior.
12931         * NEWS: Updated.
12932
12933 2005-10-27  Stepan Kasal  <kasal@ucw.cz>
12934
12935         * HACKING: Update note about use of `$#' in m4 macros.
12936
12937 2005-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12938
12939         * tests/tagtrace.test: Allow `$AUTOCONF' to contain arguments.
12940         Skip if the running `autoconf' version is older than the one
12941         used to bootstrap Libtool.
12942
12943 2005-10-26  Eric Blake  <ebb9@byu.net>,
12944             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12945
12946         * Makefile.am (vcl-tmp): Avoid warnings from diff.
12947         * bootstrap: Avoid warnings from find.
12948         (lt_tab): Use to prevent editor whitespace "cleanup".
12949
12950 2005-10-26  Gary V. Vaughan  <gary@gnu.org>
12951
12952         * libtoolize.m4sh: Put back the func_serial_update callback for
12953         func_copy_some_files so that the testsuite passes again.  We'll
12954         have to find a better way of handling serial numbers in libtool
12955         macro files.
12956
12957         * libltdl/Makefile.inc: New file, factored out of Makefile.am for
12958         use in non-recursive libltdl installations.
12959         * bootstrap: Adjust.
12960         * Makefile.am: include it.
12961         (libltdl/Makefile.am): Adjust to build from the new
12962         libltdl/Makefile.inc.
12963         (SUBDIR_LIBOBJS): Renamed from this...
12964         (LTDL_SUBDIR_LIBOBJS): ...to this.
12965         * configure.ac: Adjust.
12966         * doc/libtool.texi (Invoking libtoolize): Document the new modes
12967         and libtoolize option to select them.
12968         * libtoolize.m4sh: Parse new options, --nonrecursive, --recursive
12969         and --subproject.  Install the appropriate files with --ltdl
12970         according to the selected mode.
12971         (func_scan_files): If --subproject, --recursive or --nonrecursive
12972         options were not given, use the value from LT_CONFIG_LTDL_DIR; if
12973         a mode was given, and there is also an argument to
12974         LT_CONFIG_LTDL_DIR, ensure they are the same.
12975         * NEWS: Updated.
12976
12977         * libtoolize.m4sh: Don't use func_serial_update as a copy
12978         function for libtool m4 files with no macro_regex.  If the
12979         files are copied directly into aclocal.m4, because
12980         AC_CONFIG_MACRO_DIR isn't set for example, there is no way
12981         to tell what serial number goes with what source file.
12982         (func_serial_update): For future-proofing, only make the second
12983         serial number check if the destination file wasn't m4_included
12984         into aclocal.m4 (and hence updated automatically by the cat of
12985         copying a new version to the dest directory).
12986
12987         * libtoolize.m4sh: Move the consistency checks...
12988         (func_check_macros): ...into here.  Also suggest LT_WITH_LTDL if
12989         appropriate.
12990
12991         * libtoolize.m4sh: Copying just libtool.m4 for hand maintained
12992         aclocal.m4 doesn't work.  List all required files in that case,
12993         using the files from installed libltdl if available.  Also, list
12994         the additional files required when using libltdl.
12995         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
12996
12997         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_first): Removed.
12998         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_next)
12999         (lt_dlhandle_find, lt_dlforeach): Removed...
13000         (lt_dlhandle_iterate, lt_dlhandle_fetch, lt_dlhandle_map): Similar
13001         functions that are multi-loader safe, and require a registered
13002         interface validator argument.
13003         * doc/libtool.texi: Updated.
13004         * NEWS: Updated.
13005
13006         * libtoolize.m4sh: Always copy pkgconfig_files for --ltdl, incase
13007         ltdl needs additional things not found by automake when looking at
13008         the parent project configury.
13009         * tests/libtoolize.at: Adjust.
13010
13011 2005-10-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13012
13013         * libltdl/config/ltmain.m4sh [darwin]: Don't check for "bundle"
13014         in file path.
13015         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
13016
13017 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
13018
13019         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Don't nest AC_MSG_CHECKING/
13020         AC_MSG_RESULT pairs.
13021
13022 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
13023
13024         * tests/subproject.at: Move 'touch config.h.in' invocation.
13025
13026         * tests/subproject.at (_LTDL_SETUP): Use pushdef/popdef to
13027         simulate file-local scope.  Empty source file compilation is not
13028         portable, so add minimal code to generated foo.c file.
13029
13030 2005-10-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13031
13032         * libltdl/m4/libtool.m4 (LT_PATH_NM): End test source with
13033         newline.
13034         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
13035
13036 2005-10-13  Peter O'Gorman  <peter@pogma.com>
13037
13038         * libltdl/ltdl.c (find_module): Check that dir is set.
13039         (load_deplibs): Don't free the user search paths too early.
13040
13041 2005-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13042
13043         * tests/testsuite.at (LT_AT_AUTOMAKE): New macro.
13044         * tests/subproject.at: Use it.  Do not call `autoreconf' in
13045         tests, since it will try to reconfigure `sub/ltdl', which
13046         breaks `make check' during `distcheck' because of a readonly
13047         source tree.
13048
13049         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Also set INCLTDL.
13050
13051         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE)
13052         (LT_WITH_LTDL): Revert Gary's 2005-10-10 patch.
13053
13054         * tests/stresstest.at: Use `allow_undefined_flag' instead of
13055         host_os setting.
13056
13057 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
13058
13059         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Remove bogus extra
13060         closing brackets.
13061
13062 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
13063
13064         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Remove
13065         AC_SUBST of LIBLTDL, LTDLINCL, and all mention of INCLTDL.
13066         (LT_WITH_LTDL): Due to order constraints between LTDL_CONVENIENCE,
13067         LTDL_INSTALLABLE, LT_WITH_LTDL & LTDL_INIT, we can safely AC_SUBST
13068         LIBLTDL and LTDLINCL here.  Also, remember to synch INCLTDL.
13069
13070 2005-10-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13071
13072         * tests/stresstest.at [ aix3, beos, os2 ]: Always use
13073         `-no-undefined'.
13074
13075 2005-10-09  Christian Biesinger  <cbiesinger@web.de>
13076
13077         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ beos ]:
13078         Initial shared library support for C++.
13079
13080 2005-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13081
13082         * configure.ac (abs_top_builddir, abs_top_srcdir): always
13083         substitute.
13084         * Makefile.am (BUILDCHECK_ENVIRONMENT)
13085         (INSTALLCHECK_ENVIRONMENT): New macros.  Set _lt_pkgdatadir,
13086         LIBTOOL, LIBTOOLIZE accordingly, by using above, and
13087         program_transform_name.
13088         * tests/testsuite.at (TESTS_PREPARE): Do not set them anymore.
13089         Set $unset.
13090         (LT_AT_MAKE): Use to unset LIBTOOL and LIBTOOLIZE.
13091
13092 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
13093
13094         * tests/subproject.at: Commit the right file this time.
13095
13096 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13097
13098         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Fix m4 quoting
13099         for lt_simple_link_test_code.
13100         Reported by Nicolas Joly <njoly@pasteur.fr>.
13101
13102 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
13103
13104         * tests/subproject.at: New tests for libltdl as a subproject with
13105         its own configuration.
13106         * tests/testsuite.at: Use it.
13107         * Makefile.am (TESTSUITE_AT): Depend on it.
13108
13109 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13110
13111         * Makefile.am: Simplify.  Do not use abs_top_srcdir.
13112         Reported by Gary V. Vaughan <gary@gnu.org>.
13113
13114 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
13115
13116         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Spurious './' prefixes
13117         upset BSD pmake, don't set lt_ltdl_dir in this case.
13118         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
13119
13120 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13121
13122         * Makefile.am (BUILDCHECK_ENVIRONMENT)
13123         (INSTALLCHECK_ENVIRONMENT): New macros.
13124         (check-local, installcheck-local): Use them.
13125         * tests/testsuite.at (PREPARE_TESTS): Extract host_alias, ECHO.
13126         Set configure_options appropriately.
13127         (LT_AT_CONFIGURE, LT_AT_AUTORECONF, LT_AT_MAKE): New macros.
13128         (LT_AT_BOOTSTRAP): Use them.
13129         * tests/am-subdir.at, tests/early-libtool.at,
13130         tests/old-m4-iface.at, tests/standalone.at: Likewise.
13131         * tests/link-order.test: Do not extract ECHO any more.
13132
13133         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
13134         AC_CANONICAL_HOST and _LT_DECL_SED.
13135
13136 2005-10-03  Gary V. Vaughan  <gary@gnu.org>
13137
13138         * libltdl/m4/ltdl.m4: Bump serial as we are changing the
13139         interface.
13140         (LT_CONFIG_LTDL_DIR): New macro to centralise setting the
13141         subdirectory used for libltdl.
13142         (LTDL_CONVENIENCE): Continue backwards compatibility support for
13143         declaring the libltdl source subdirectory with an argument, but
13144         defer to LT_CONFIG_LTDL_DIR.
13145         (AC_LIBLTDL_CONVENIENCE): Adjust to upgrade to the new style.
13146         (LTDL_INSTALLABLE, AC_LIBLTDL_INSTALLABLE): Ditto.
13147         (LTDL_INIT): lt_ltdl_dir is set by LT_CONFIG_LTDL_DIR now, and
13148         even `./' needs trailing slashes trimming!  If the user didn't
13149         upgrade their configure.ac yet, call LT_CONFIG_LTDL_DIR for them.
13150         * libtoolize.m4sh (func_scan_files): If --ltdl option is given
13151         without a directory argument, use the value from
13152         LT_CONFIG_LTDL_DIR; if the argument is given, and there is also a
13153         value in LT_CONFIG_LTDL_DIR, ensure they are the same.
13154         * libltdl/configure.ac: Use it.
13155         * NEWS: Updated.
13156
13157 2005-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13158
13159         * tests/old-m4-iface.at (Makefile.in): Do not reconfigure
13160         libltdl directory.
13161
13162 2005-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13163
13164         * tests/deplibs-ident.at: New file with XFAIL test to expose
13165         wrong multiple listing of a deplib on the command line.
13166         * Makefile.am, tests/testsuite.at: Updated.
13167         Reported by Brian Barrett <brbarret@open-mpi.org>.
13168
13169         * tests/old-m4-iface.at: Define top_srcdir, work around current
13170         ltdl.m4 bug.
13171
13172         * libltdl/config/ltmain.m4sh (func_mode_link):
13173         Fix wrong logic introduced in last commit.
13174
13175 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
13176
13177         * tests/libtoolize.at: Add a new test to catch a regression I
13178         almost introduced with respect to copying macro files when
13179         AC_CONFIG_MACRO_DIR is shared with libltdl subproject.
13180
13181 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
13182
13183         * tests/old-m4-iface.at: Start of a new test series for m4
13184         interface backwards compatibility.
13185         * tests/testsuite.at: Use it.
13186         (macrodir): Declare the location of uninstalled libtool m4 macros.
13187         * Makefile.am (TESTSUITE_AT): Depend on it.
13188
13189 2005-09-29  Tim Rice  <tim@multitalents.net>  (tiny change)
13190
13191         * tests/early-libtool.at (Makefile.in): Set $(SHELL).
13192
13193 2005-09-29  Peter Ekberg  <peda@lysator.liu.se>
13194
13195         * libltdl/config/ltmain.m4sh (func_mode_link): Don't modify
13196         user provided symbols file. Adjust removal of temporary files
13197         and also remove temporary files used during symbols file
13198         filtering.
13199
13200 2005-09-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13201
13202         * libtoolize.m4sh (func_included_files): Do not recurse
13203         non-existent files.
13204
13205 2005-09-27  Gary V. Vaughan  <gary@gnu.org>
13206
13207         * libtoolize.m4sh (func_scan_files): Support projects that have
13208         upgraded libtool, but still use an old autoconf.  When the libtool
13209         macros are not copied (because of missing ACLOCAL_AMFLAGS and
13210         AC_CONFIG_MACRO_DIR ), point them at the libtoolize master tree
13211         for files to manually copy into acinclude.m4 or aclocal.m4.
13212
13213         * libltdl/lt_error.c (lt__last_error, lt__error_strings): The lt__
13214         prefix is used to indicate internal symbols that are only exported
13215         for use by other parts of libltdl.  These are now static, so...
13216         (last_error, error_strings): ...renamed to this.  Changed all
13217         callers.
13218
13219         * libltdl/ltdl.h (lt_dlmutex_register, lt_dlmutex_lock)
13220         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror)
13221         (lt_dlmalloc, lt_dlrealloc, lt_dlfree): Remove deprecated APIs.
13222         * doc/libtool.tex: Updated.
13223         * NEWS: Updated.
13224
13225         * libltdl/ltdl.c (lt_dlcaller_register): Renamed to avoid problems
13226         with module visibilty when linked with programs written for the
13227         old API.
13228         (lt_dlinterface_register): New name.
13229         * Makefile.am (VERSION_INFO): Bumped.
13230         * doc/libtool.texi (User defined module data): Updated.
13231
13232 2005-09-27  Tim Rice  <tim@multitalents.net>
13233
13234         * tests/defs.m4sh, tests/testsuite.at (PREPARE_TESTS)
13235         <AUTORECONF>: Allow variable override.
13236
13237 2005-09-26  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13238
13239         * HACKING: Only update libltdl version info before release.
13240
13241 2005-09-26  Tim Rice  <tim@multitalents.net>
13242
13243         * configure.ac <AUTOM4TE>: Allow variable override.
13244
13245 2005-09-25  Alan W. Irwin  <irwin@beluga.phys.uvic.ca>,
13246             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13247
13248         * libltdl/config/ltmain.m4sh (func_win32_libid)
13249         [ cygwin, mingw ]: Robustify sed script to determine
13250         win32_libid_type.
13251         (func_mode_link) [ mingw ]: Ignore `-lm'.
13252
13253 2005-09-25  Peter Ekberg  <peda@lysator.liu.se>
13254
13255         * libltdl/libltdl/lt__private.h, libltdl/lt_error.c:
13256         Don't export the lt__last_error and lt__error_strings
13257         variables. Define lt__error_strings so that no relocations
13258         are needed.
13259         * libltdl/libltdl/lt__private.h (LT__STRERROR, LT__GETERROR)
13260         (LT__SETERRORSTR): Adjust to not use the above variables,
13261         instead use the following functions...
13262         * libltdl/lt_error.c: (lt__error_string, lt__get_last_error)
13263         (lt__set_last_error): Reimplement the functionality in
13264         these functions instead.
13265         * libltdl/libltdl/lt_error.h: Add LT_ERROR_LEN_MAX define for
13266         max error string length.
13267         (lt_dlerror_table): Append explicit nul terminators so that
13268         compilers warn more reliably if the above define is too small.
13269
13270 2005-09-23  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13271
13272         * tests/link-order.at [ aix* ]: skip path syntax grep.
13273
13274 2005-09-23  Peter Ekberg  <peda@lysator.liu.se>
13275
13276         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Fix awk
13277         script to be a single line so that the cache variable isn't
13278         multiline.
13279
13280 2005-09-23  Eric Blake  <ebb9@byu.net>  (tiny change)
13281
13282         * libltdl/loaders/loadlibrary.c (vm_open): Silence gcc warnings.
13283         [__CYGWIN__]: Include <sys/cygwin.h> for prototype.
13284
13285 2005-09-22  Gary V. Vaughan  <gary@gnu.org>
13286
13287         * bootstrap: Don't clobber the working copy metadata in
13288         ./{arch}/libtool during bootstrap.
13289
13290 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
13291             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13292
13293         * libltdl/config/ltmain.m4sh (func_mode_link): Filter
13294         user supplied symfile to tag relevant symbols as data
13295         symbols. Fixes segfault in stresstest.at on Cygwin and
13296         makes the test pass.
13297
13298 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>
13299
13300         * tests/link-order.test: Clean up the uninstalled libraries
13301         before linking the test executables so that they don't pick
13302         up the dlls from the current dir on Cygwin and MinGW.
13303
13304 2005-09-22  Tim Rice  <tim@multitalents.net>
13305
13306         * libltdl/m4/libtool.m4 (LT_PATH_NM, _LT_LINKER_SHLIBS)
13307         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS):
13308         Add missing `;;' after case list.
13309
13310 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
13311             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13312
13313         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC)
13314         (_LT_LINKER_SHLIBS): Require _LT_TAG_COMPILER to make sure that
13315         $compiler is assigned. Fixes crippled configure output.
13316
13317 2005-09-21  Peter Ekberg  <peda@lysator.liu.se>
13318
13319         * libltdl/m4/libtool.m4 (LT_PATH_NM): Fix autodetection of
13320         dumpbin and also check for "link -dump -symbols" as a synonym
13321         for "dumpbin -symbols".
13322
13323         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Clean
13324         up $dlname as well when cleaning a uninstalled libtool
13325         library. Fixes -mode=clean on Cygwin and MinGW to actually
13326         remove the dll when cleaning up an uninstalled library.
13327
13328 2005-09-20  Peter Ekberg  <peda@lysator.liu.se>
13329
13330         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
13331         Split up --out-implib option for linker in separate args so that
13332         the MSYS path translation can do its magic on the provided path
13333         to the import library. Fixes problem in stresstest.at on MinGW.
13334
13335 2005-09-19  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13336
13337         * Makefile.am (ltdldatafiles): Fix installation order to match
13338         dependency order.
13339         (libltdl/Makefile.in): Use $(srcdir) for non-GNU make.
13340
13341 2005-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13342
13343         * libltdl/config/ltmain.m4sh (func_mode_link): Allow some
13344         ARM gcc ABI flags through.
13345         Reported by Andrés Moré <more.andres@gmail.com>.
13346
13347         * Makefile.am (all-local): Rebuild libltdl/Makefile.in.
13348
13349         * libltdl/m4/ltdl.m4 (LTDL_INIT) <CONFIG_H>: Rename to..
13350         <LT_CONFIG_H>: this, to contain the name of the config
13351         header.
13352         * Makefile.am <DEFS>: Use it to define LT_CONFIG_H.
13353         * HACKING, libltdl/argz.c, libltdl/lt__alloc.c,
13354         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
13355         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h:
13356         Adjusted.
13357
13358 2005-09-16  Peter Ekberg  <peda@lysator.liu.se>
13359
13360         * tests/testsuite.at (LT_AT_EXEC_CHECK): Make sure
13361         that the exit status of the tested program is
13362         propagated as the exit status of the expression
13363         fed to AT_CHECK.
13364
13365 2005-09-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13366
13367         * libltdl/argz.c <HAVE_CONFIG_H>: Avoid redefinition warning.
13368
13369         * libltdl/ltdl.c (lt_argz_insert): Work around newlib
13370         argz_insert bug.
13371         * Makefile.am (VERSION_INFO): Bumped revision.
13372         Reported by Eric Blake <ebb9@byu.net>.
13373
13374 2005-09-13  Peter Ekberg  <peda@lysator.liu.se>,
13375             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13376
13377         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
13378         Fix escape expression to actually escape relevant
13379         characters from the following grep. Fix Cygwin and
13380         MinGW to use the filtered symbol list when exporting
13381         from self, and not the symbol filter.
13382         * tests/stresstest.at: Export w8, not w8$
13383
13384 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13385
13386         Make tagdemo work smoothly with both pre- and ISO C++ compilers,
13387         and remove all use of libstdc from other tests.
13388
13389         * tests/tagdemo/configure.ac (HAVE_NAMESPACES, HAVE_IOSTREAM):
13390         New tests for ISO C++ features.  Reimplementation of similar
13391         macros from the autoconf archive.
13392         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp: Adjusted.
13393         * tests/am-subdir.at, tests/template.at: Do not use iostream.
13394
13395 2005-09-12  Peter Ekberg  <peda@axentia.se>,
13396             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13397
13398         * tests/testsuite.at (host_os): Pull from `libtool --config'.
13399         * tests/stresstest.at [ cygwin, mingw, pw32 ]: Use it to fix
13400         setting of `-no-undefined'.
13401
13402 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13403
13404         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL, LTDL_CONVENIENCE)
13405         (LTDL_INSTALLABLE): Use less quoting for expanded LIBLTDL,
13406         LTDLINCL.  Use m4_default instead of m4_if, to work
13407         around AU_ALIAS bug with empty macro arguments.
13408         (LTDL_INIT): Likewise.
13409         * libltdl/m4/ltoptions.m4 (_LT_WITH_PIC): Likewise.
13410         * TODO, HACKING: Updated.
13411
13412 2005-09-10  Gary V. Vaughan  <gary@gnu.org>
13413
13414         * libtoolize.m4sh (TAR): Allow the user to override the tar
13415         command.
13416
13417 2005-09-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13418
13419         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
13420         (_LT_LINKER_BOILERPLATE, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
13421         (_LT_COMPILER_C_O): When comparing expected and actual compiler/
13422         linker output for warnings, weed out both empty lines as well as
13423         lines starting with possibly indented `+', to allow for shell
13424         debugging with `set -x'.
13425         Check the weeded instead of unweeded contents for emptiness.
13426
13427         * libltdl/config/ltmain.m4sh (func_mode_link): Actually provide
13428         a useful error message.  Fixes long-standing shameful user
13429         neglection.
13430         Reported by Martin Paljak <martin.paljak@gmail.com>.
13431
13432 2005-09-08  Peter Ekberg  <peda@axentia.se>
13433
13434         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]:
13435         Symbols in "pick any" sections are not global. Use
13436         awk, not sed, in the global_symbol_pipe so that keeping
13437         track of sections is easier.
13438         * doc/libtool.texi (libtool script contents): Update to hint
13439         at new findings concerning "pick any" sections.
13440
13441 2005-09-08  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13442
13443         * tests/early-libtool.at (config.status): Use EXEEXT
13444         consistently.
13445         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
13446
13447 2005-09-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
13448
13449         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
13450         [ cygwin, mingw, pw32 ]: Use --enable-auto-image-base instead of
13451         a fixed image base address.
13452
13453 2005-09-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13454
13455         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ sysv4*uw2*,
13456         sysv4.2uw2* ]: Fix my last checkin to really match the more special
13457         case before the general case.
13458         Reported by Stepan Kasal <kasal@ucw.cz>.
13459
13460 2005-09-06  Roger Cornelius  <rac@tenzing.org>
13461
13462         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
13463         [ sysv5OpenUNIX8, sysv5UnixWare7, sysv5uw[78], unixware7,
13464         sysv4*uw2* ]: Match special cases before general case.
13465
13466 2005-09-05  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13467
13468         * bootstrap: another AIX sed fix.
13469
13470         * Makefile.am (TESTS_ENVIRONMENT): Export SHELL.
13471         * bootstrap (SHELL): Set to $CONFIG_SHELL or /bin/sh.
13472         Name `make' targets in portable fashion.  Work around `rm'
13473         warnings.  Unconditionally create fake `libtoolize'.
13474         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13475
13476         * Makefile.am (doc/notes.txt): Use --no-headers instead of
13477         --plaintext for makeinfo.
13478         Reported by Peter O'Gorman <peter@pogma.com>.
13479
13480 2005-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13481
13482         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ aix ]
13483         <export_symbols_cmds>: Work around shell expansion issue in
13484         func_show_eval by separating `$' and field number; drop then
13485         unnecessary m4 quoting.
13486
13487 2005-09-02  Gary V. Vaughan  <gary@gnu.org>
13488
13489         AC_BEFORE only works if declarations are made inside the macro
13490         cited as the first argument:
13491
13492         * libltdl/m4/libtool.m4 (LT_OUTPUT): Move AC_BEFORE decls...
13493         (LT_INIT, LT_LANG): ...to the macro that has to come first.
13494
13495 2005-09-01  Peter O'Gorman  <peter@pogma.com>
13496
13497         * libltdl/m4/libtool.m4 (old_postintall_cmds): chmod 644 before
13498         running ranlib.
13499         Reported by Gerald Pfeifer <gerald@pfeifer.com>
13500
13501 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13502
13503         * libltdl/m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77)
13504         (_LT_PROG_FC): aclocal-1.4 compatibility workaround.
13505
13506         * bootstrap: Do not use nonportable -path.
13507         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
13508
13509 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
13510
13511         * doc/libtool.texi (LT_INIT): Fix a logical error with
13512         documentation of --with-pic vs --without-pic.
13513
13514 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13515
13516         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): m4_defun this..
13517         * libltdl/m4/libtool.m4 (LT_INIT): so it can be m4_require'd
13518         from here with user-supplied options.  Fixes output macro
13519         ordering issue.
13520
13521 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
13522
13523         * libtoolize.m4sh (func_scan_files): When searching for evidence
13524         of Autotools in aclocal.m4, be careful not to trip over requires
13525         and defuns.
13526
13527 2005-08-31  Gary V. Vaughan <gary@gnu.org>,
13528             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13529
13530         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Move option macro
13531         dipatch..
13532         (_LT_SET_OPTION): here.  Do not fail but warn on unknown
13533         options.
13534         (_LT_UNLESS_OPTIONS(win32-dll), LT_OPTION_DEFINE(dlopen)):
13535         Add whitespace.
13536         Reported by Robert Ögren <lists@roboros.com> and
13537         Akim Demaille <akim@lrde.epita.fr>.
13538
13539 2005-08-31  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13540
13541         * libltdl/m4/libtool.m4 [ solaris CC ]: Document issue with C++
13542         standard libraries.
13543
13544 2005-08-30  Gary V. Vaughan  <gary@gnu.org>
13545
13546         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_PIC_MODE): Renamed...
13547         (AC_LIBTOOL_PICMODE): ...this in the backwards compatibility
13548         code.  There never was an AC_LIBTOOL_PIC_MODE macro.
13549
13550         * libltdl/m4/libtool.m4 (_LT_SETUP): Remove duplicate
13551         --enable-libtool-lock declaration.
13552
13553 2005-08-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13554
13555         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
13556         (_LT_PATH_TOOL_PREFIX, _LT_SYS_HIDDEN_LIBDEPS, _LT_DECL_EGREP):
13557         Fix typos.
13558
13559         * Makefile.am: Install libltdl data files in correct order.
13560         Use pre-defined programs for installation; use NORMAL_INSTALL
13561         and NORMAL_UNINSTALL.  Really fix ownership and timestamp
13562         problems.  Fix typo in uninstallation of aclocal files.
13563         Reported by Peter Breitenlohner <peb@mppmu.mpg.de> and
13564         Charles Wilson <cygwin@cwilson.fastmail.fm>.
13565
13566 2005-08-29  Gary V. Vaughan <gary@gnu.org>,
13567             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13568
13569         Allow for portability with Autoconf 2.59, Automake 1.9.6,
13570         which lack AC_CONFIG_LIBOBJ_DIR support.
13571
13572         * bootstrap: Unless environment variable WORKING_LIBOBJS_SUPPORT
13573         is set to true aka `:', symlink ..
13574         * argz.c lt__dirent.c lt__strl.c: .. these from the copies in
13575         libltdl.
13576         * configure.ac (SUBDIR_LIBOBJS): Automake conditional, set if
13577         bootstrap didn't make the extra copies of libobj sources in
13578         top srcdir...
13579         * Makefile.am: Add these to EXTRA_DIST if SUBDIR_OBJS is not set,
13580         as well as the originals in libltdl/, in order to work when
13581         bootstrapped both with old and newer Automake/Autoconf.
13582
13583 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
13584
13585         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE): Fix the comment to not
13586         pretend that LIBLTDL and LTDLINCL are not AC_SUBSTed here.
13587
13588 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
13589
13590         Some macros had relied on accidentally correct ordering in order
13591         for $MV to be defined before use.  Factor out setting of some
13592         common file commands and m4_require it before use:
13593
13594         * libltdl/m4/libtool.m4 (_LT_FILEUTILS_DEFAULTS): Allow user to
13595         override some common file commands at configure time.
13596         (_LT_SETUP, _LT_CONFIG, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
13597         (_LT_COMPILER_C_O, _LT_COMPILER_FILE_LOCKS)
13598         (_LT_SYS_DYNAMIC_LINKER, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
13599         (_LT_SYS_HIDDEN_DEPLIBS): m4_require it to ensure the commands are
13600         defined before they are called.
13601
13602 2005-08-28  Gary V. Vaughan  <gary@gnu.org>
13603
13604         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4: AU_DEFUN doesn't pass
13605         arguments.  Use AU_ALIAS instead!
13606
13607 2005-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
13608             Gary V. Vaughan <gary@gnu.org>
13609
13610         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p) [osf]:
13611         Save file descriptor to original STDIN, and restore after
13612         redirection.  Fixes memory corruption with Tru64 and OSF sh.
13613         Reported by Nicolas Joly <njoly@pasteur.fr>.
13614
13615 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
13616             Peter Ekberg  <peda@lysator.liu.se>
13617
13618         * tests/early-libtool.at: Fix goofed up make rules in
13619         previous commit.
13620
13621         * tests/inherited_flags.at: Weaken for MSVC.
13622         * tests/early-libtool.at, tests/template.at: Fix for compiler
13623         that do not understand '-c -o'.
13624
13625 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13626
13627         * tests/standalone.at, tests/template.at: Do not compare
13628         output because of EOL issues.  Resolve warnings, make cross-
13629         compilation aware.
13630         Reported by Peter Ekberg <peda@axentia.se>.
13631
13632         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
13633         (_LT_LINKER_SHLIBS): Double-quote unsafe tag variable
13634         descriptions: they are literals.
13635
13636 2005-08-25  Peter Ekberg  <peda@lysator.liu.se>,
13637             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13638
13639         * tests/standalone.at: (without autotools): Add
13640         $(CFLAGS) to LTCOMPILE and LTLINK. Separate compiling
13641         and linking. Remove compiling flags from link. Add
13642         --tag. Add -no-undefined flag.
13643
13644 2005-08-24  Bruno Haible  <bruno@clisp.org>
13645
13646         * libltdl/config/ltmain.sh (func_mode_install): Try "ln -s -f"
13647         and "rm -f && ln -s" to make a symlink for a shared library: the
13648         former is needed for libraries `ln' depends on, the latter for
13649         Solaris /bin/ln.
13650         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
13651
13652         * libltdl/config/ltmain.sh (cwrappersource): return 127 if exec
13653         failed.
13654
13655 2005-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13656
13657         * libltdl/m4/libtool.m4 (_LT_COMPILER_C_O): Send chmod warning to log.
13658
13659         * tests/defs.m4sh (m4dir, auxdir, scripts): Fix for source tree
13660         reorganization.
13661         * tests/sh.test: Adjust.  Also barf on sed diagnostics so this
13662         test will not fail again silently.
13663
13664         * libltdl/m4/ltdl.m4 (LT_SYS_SYMBOL_USCORE): Use _LT_EOF, not
13665         EOF.
13666
13667         * tests/fcdemo/Makefile.am (suffix rules): Explicitly add
13668         $(FCFLAGS_f90) so the tests can pass on AIX.
13669
13670 2005-08-24  Peter O'Gorman  <peter@pogma.com>
13671
13672         * libltdl/config/ltmain.m4sh (inherited_linker_flags): Work when
13673         output is an application too.
13674         Reported by Christopher Egger <Christoph_Egger@gmx.de>
13675
13676 2005-08-23  Stepan Kasal  <kasal@ucw.cz>,
13677             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13678
13679         * libltdl/m4/ltdl.m4 (LTDL_INIT): Use AH_HEADER if defined.
13680         Compute CONFIG_H only before creating config.status.
13681         Reported by Peter Ekberg <peda@axentia.se>.
13682
13683 2005-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13684
13685         * Makefile.maint (web-manual): Fix $(LN_S) to use absolute path.
13686         Fix creating the manual for VPATH build.
13687
13688         * bootstrap: Fix missing replace config -> $auxdir.  ltmain.m4sh
13689         is prerequisite to ltmain.sh.  Improve warning message.
13690
13691 2005-08-22  Gary V. Vaughan  <gary@gnu.org>
13692
13693         Reorganise the libtool tree to create a bootstrapped libltdl for
13694         installation to the libtoolize master tree, so that libltdl is
13695         useable even in the extreme case of when automake and autoconf are
13696         not installed on the developers machine.  Part of this change
13697         requires some duplication of rules between Makefile.am (which
13698         builds libltdl for this distribution) and libltdl/Makefile.am
13699         (which is used by projects that libltoolize --ltdl --copy), so
13700         libtool now really does use a single toplevel Makefile.am, and we
13701         generate libltdl/Makefile.am from that:
13702
13703         * m4, config: Moved from here...
13704         * libltdl/m4, libltdl/config: ...to here, to reduce the amount of
13705         kludging needed in bootstrap for autoreconf to run.
13706         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
13707         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
13708         tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
13709         tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
13710         tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Adjust to
13711         compensate.
13712         * tests/cdemo/configure.ac, tests/demo/configure.ac,
13713         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
13714         tests/fcdemo/configure.ac, tests/mdemo/configure.ac,
13715         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
13716         tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto.
13717         * libltdl/m4/ltdl.m4: Increment serial number.
13718         (LTDL_INIT): Accept an optional directory argument to prefix each
13719         of the LD_DLLOADERS locations.  Default to empty for backwards
13720         compatibility.
13721         * Makefile.maint: Adjust to compensate.
13722         * configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR): Adjust.
13723         (AC_CONFIG_LIBOBJ_DIR): Set here so that we can build LTLIBOBJS
13724         from in a subdirectory from the amalgamated Makefile.am.
13725         (AM_PROG_CC_C_O, AM_INIT_AUTOMAKE): Use subdir-objects.
13726         (AC_CONFIG_FILES): Remove libltdl/Makefile.am.
13727         * libltdl/Makefile.am: Removed from repository, and merged into
13728         Makefile.am as we now generate it...
13729         * Makefile.am (libltdl/Makefile.am): ...from here, by extracting
13730         the merged rules, and tweaking paths to accomodate the difference
13731         in directory from Makefile.am to libltdl/Makefile.am.
13732         (nobase_dist_pkgdata_DATA): Automake generated installation rules
13733         change timestamps of installed files, so renamed this...
13734         (configauxfiles): ...to this...
13735         (libtoolize): ...substitute it...
13736         (install-data-local): ...install manually, preserving
13737         timestamps...
13738         (install-data-hook): ...and set execute bit as appropriate.
13739         (uninstall-hook): Not forgetting to remove them at uninstall.
13740         (libltdl/Makefile.in): New rule.  Called from...
13741         * bootstrap: ...here to avoid relying on config.status at
13742         bootstrap time.
13743         (auxdir, m4dir): Extract from configure.ac for ease of future
13744         maintenance.  Adjust all references.
13745         (reconfdirs): Call autoreconf for libltdl too -- even
13746         though we don't use it for the build, libltdl/configure and
13747         friends are installed with `libtoolize --ltdl --copy'.
13748         * libtoolize.m4sh: Add files from the installed config master tree
13749         to libtoolize --ltdl project subdirectory.
13750         Diagnose duplicated files when --ltdl is used in an autotooled
13751         project.
13752         It's perfectly fine to run `libtoolize --ltdl --copy' in a tree
13753         that has no configure.ac or configure.in; we want libltdl to be
13754         useful even to projects that don't use autotools themselves.
13755         (libtoolize_flags): Removed.  Changed all callers.
13756         (func_massage_pkgconfig_files): New function.
13757         * tests/standalone.at: New tests for using libltdl without
13758         supporting configury in the parent project.
13759         * tests/testsuite.at: Run them!
13760         * NEWS: Updated.
13761
13762 2005-08-22  Peter Ekberg  <peda@lysator.liu.se>
13763
13764         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Add
13765         forgotten end bracket.
13766
13767         * doc/libtool.texi: Shorten the lines describing the
13768         output from MS dumpbin, and align the columns.
13769
13770         * m4/libtool.m4: Bump serial number.
13771         (LT_PATH_NM): If nm is not found on the path, look for
13772         dumpbin. Then check if $NM responds as dumpbin would
13773         and if not, assume the name lister is BSD nm compatible.
13774         (_LT_CMD_GLOBAL_SYMBOLS): If the name lister uses the
13775         dumpbin interface, adjust the test to find a working
13776         global_symbol_pipe.
13777         * doc/libtool.texi: Document $NM to possibly be MS
13778         dumpbin compatible, and also document the format of the
13779         relevant output from MS dumpbin.
13780
13781 2005-08-21  Gary V. Vaughan  <gary@gnu.org>
13782
13783         * libltdl/Makefile.am: revert mistaken commit.
13784
13785         * tests/template.at [darwin]: Some of these tests result in
13786         unresolved symbols on darwin, so don't run those test on that
13787         host!
13788
13789 2005-08-18  Gary V. Vaughan  <gary@gnu.org>,
13790             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13791
13792         * m4/libtool.m4 (LT_OUTPUT): New macro to generate
13793         libtool before config.status.
13794         (_LT_CONFIG_COMMANDS): If LT_OUTPUT has been invoked, then
13795         generate code in config.status to call config.lt instead of
13796         generating libtool directly.
13797         * doc/libtool.texi (LT_INIT): Document LT_OUTPUT.
13798         * tests/early-libtool.at: New test.
13799         * Makefile.am (TESTSUITE_AT): Updated.
13800         * tests/testsuite.at: Updated.  Define defaults for $ACLOCAL,
13801         $AUTOCONF.
13802
13803 2005-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13804
13805         * TODO: Actually updated now.
13806
13807         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]: Do not
13808         assume `aout' for modern FreeBSD by absence of deprecated
13809         `objformat'.
13810
13811         * m4/libtool.m4 [sun, CC] (_LT_LANG_CXX_CONFIG): Move postdeps
13812         override ..
13813         (_LT_SYS_HIDDEN_LIBDEPS): ..here.
13814         * TODO: Updated.
13815
13816 2005-08-18  Stepan Kasal  <kasal@ucw.cz>
13817
13818         * config/general.m4sh (SP2NL, NL2SP): Simplify.
13819
13820 2005-08-17  Gary V. Vaughan  <gary@gnu.org>
13821
13822         * m4/ltdl.m4 (LTDL_INIT): Fix mismatched parens.
13823
13824 2005-08-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13825
13826         * tests/inherited_flags.at: Store intermediate libtool output
13827         for better debugging.
13828
13829         * tests/link-order.at: Add -no-undefined to LDFLAGS.
13830
13831         * tests/convenience.at, tests/template.at: Change suffix of C++
13832         files to .cpp, for compatibility with MSVC.
13833         Reported by Peter Ekberg <peda@axentia.se>.
13834
13835 2005-08-12  Jeremie LE HEN  <tataz@sitadelle.com>,
13836             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13837
13838         * doc/libtool.texi (Creating object files, Linking libraries):
13839         Update description of library object (.lo) and libtoo library
13840         (.la) files.
13841         (all over): Replace MODE with --mode=MODE in examples.
13842
13843 2005-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13844
13845         * config/ltmain.m4sh (func_source): New function.
13846         (func_mode_execute, func_mode_install, func_mode_link): Use it.
13847         Do not append a dot to a file name to source, it breaks on
13848         cygwin managed mounts and is not necessary anywhere.
13849         Reported by Eric Blake <ebb9@byu.net>.
13850
13851         * config/ltmain.m4sh (func_execute_cmds): New function.
13852         (func_mode_finish, func_mode_install, func_mode_link)
13853         (func_mode_uninstall): Use it.
13854
13855         * tests/defs.m4sh (func_configure): Rename to ..
13856         (func_configure_nofail): this, call from old.
13857         * tests/fcdemo-conf.test, tests/fcdemo-shared.test,
13858         tests/fcdemo-static.test: Use.  Do not fail gratuitously but
13859         SKIP on compilers that look like they could be Fortran 77-only.
13860         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13861
13862         * config/ltmain.m4sh (mode): Do not initialize, for nicer error
13863         messages.
13864
13865 2005-08-10  Peter Ekberg  <peda@lysator.liu.se>
13866
13867         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Set ac_ext to cpp, not cc.
13868
13869 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13870
13871         * config/ltmain.m4sh (inherited_linker_flags): Backed out broken
13872         patch.
13873
13874 2005-08-08  Peter O'Gorman  <peter@pogma.com>
13875
13876         * config/ltmain.m4sh (inherited_linker_flags): Work when output
13877         is an application too.
13878         Reported by Christopher Egger <Christoph_Egger@gmx.de>
13879
13880 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13881
13882         * m4/libtool.m4 (_LT_PROG_FC, _LT_LANG_FC_CONFIG): New macros
13883         for modern Fortran.
13884         (LT_LANG, _LT_LANG_DEFAULT_CONFIG, _LT_SYS_DYNAMIC_LINKER,
13885         _LT_SYS_HIDDEN_LIBDEPS): Adjusted.
13886         * tests/fcdemo-conf.test, tests/fcdemo-exec.test,
13887         tests/fcdemo-make.test, tests/fcdemo-shared.test,
13888         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
13889         tests/fcdemo/README, tests/fcdemo/configure.ac,
13890         tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
13891         tests/fcdemo/foof.f90, tests/fcdemo/foof2.f90,
13892         tests/fcdemo/foof3.f90, tests/fcdemo/fprogram.f90: New tests for
13893         Fortran.
13894         * tests/convenience.at: Extended.
13895         * Makefile.am, configure.ac: Adjusted.
13896         * NEWS: Updated.
13897
13898         * AUTHORS, HACKING: Updated.
13899
13900 2005-08-05  Albert Chin-A-Young  <china@thewrittenword.com>
13901
13902         * config/ltmain.m4sh (func_mode_link): Ignore errors from expr
13903         when determining if piece-wise linking should be done.
13904
13905 2005-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13906
13907         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Add
13908         missing bit from Christoph's patch.
13909
13910         * m4/libtool.m4 (_LT_LINKER_HARDCODE_LIBPATH, _LT_LINKER_SHLIBS)
13911         (_LT_LANG_CXX_CONFIG): Comment typos.
13912
13913 2005-08-04  Christoph Egger  <Christoph_Egger@gmx.de>
13914
13915         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Change
13916         basename() to base_name() and have it return a pointer to const,
13917         fix compilation warnings.
13918
13919 2005-07-30  Peter Ekberg  <peda@lysator.liu.se>
13920
13921         * m4/libtool.m4 (_LT_PROG_F77): Set it up so that saying F77=no
13922         to configure disables the fortran tests in the testsuite.
13923
13924 2005-07-29  Richard Moseley  <dickie.moseley@virgin.net>
13925
13926         * m4/ltdl.m4 (LTDL_INIT): Handle in addition the new name for
13927         AC_LIST_HEADERS which is _AC_LIST_TAGS.
13928
13929 2005-07-28  Peter Ekberg  <peda@lysator.liu.se>
13930
13931         * libltdl/Makefile.am: Make the LTDLOPEN define controllable
13932         from the configure script.
13933         * m4/ltdl.m4 (LTDL_INIT): Set the LTDLOPEN define according
13934         to libname_spec.
13935
13936         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
13937         not time, for really fresh files. Add sleep 1 calls at
13938         strategic places. Makes the test pass for MinGW.
13939
13940         * m4/libtool.m4 (_LT_LINKER_OPTION): Fix copy-paste bug, it is
13941         the linker that is tested.
13942
13943         * tests/demo-noinst-link.test: $make is empty on MSYS, replace
13944         with $MAKE. Makes the test pass for MinGW.
13945
13946         * config/ltmain.m4sh (func_generate_dlsyms): Properly remove
13947         the fake symbol line ": @PROGRAM@ " from the list of exported
13948         symbols.
13949
13950         * libltdl/loaders/loadlibrary.c (vm_open): Set the error mode so
13951         that no dialog is popped up in case the file given to
13952         LoadLibrary is not a dll.
13953
13954         * config/ltmain.m4sh (func_mode_link) <lib>: Make sure
13955         skipped_export is set to colon if _some_ cmd of
13956         export_symbols_cmds is too long.
13957
13958         * libltdl/ltdl.c: The linker is confused by having one
13959         definition of lt_libltdlc_LTX_preloaded_symbols tagged with
13960         __declspec(dllexport) in ltdl.c and one definition with an
13961         initial value in libltdlcS.c. So, just say extern in ltdl.c.
13962         Fixes the mdemo-exec.test for MinGW.
13963
13964         * config/ltmain.m4sh (func_mode_link) <lib>: Zap duplicate
13965         message "creating reloadable object files..."
13966
13967 2005-07-23 Peter O'Gorman  <peter@pogma.com>
13968
13969         * m4/libtool.m4 (CXX, archive_cmds) [sun]: Add -lCstd, -lCrun
13970         and -lc for c++ builds with Sun C++ and Centerline C++..
13971         Reported by Albert Chin-A-Young <china@hewrittenword.com>
13972
13973 2005-07-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13974
13975         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Fix bogus merge.
13976         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13977
13978 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13979
13980         * libltdl/Makefile.am (libltdl_la_DEPENDENCIES): Depend on
13981         $(BUILT_SOURCES) as well, so that argz.h gets created through
13982         `make libltdlc.la'.
13983         Reported by Sven Verdoolaege <skimo@liacs.nl>.
13984
13985 2005-07-08  Peter Breitenlohner  <peb@mppmu.mpg.de>
13986
13987         * Makefile.am (install-data-local): Have root own of installed
13988         files (but do not fail, for user installs).
13989
13990 2005-07-08  Bruno Haible  <bruno@clisp.org>
13991
13992         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <postinstall_cmds>
13993         [cygwin,mingw,pw32]: Make DLL executable after installing it.
13994
13995 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13996
13997         * config/ltmain.m4sh (func_mode_install): Do not assume `-f'
13998         needs an argument if the install program is `cp'.  Cleanup
13999         install mode somewhat.
14000         Reported by Juergen Leising <juergen.leising@gmx.de>.
14001
14002 2005-07-03  Thorsten Glaser  <tg@66h.42h.de>
14003
14004         * m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Quieten configure
14005         output for corner cases on some BSDs.
14006         (LT_CMD_MAX_LEN): Another comment cleanup.
14007
14008         * config/ltmain.m4sh (func_extract_archives, func_mode_install),
14009         m4/libtool.m4 (_LT_SETUP, _LT_SYS_DYNAMIC_LINKER, LT_PATH_LD)
14010         (_LT_PATH_LD_GNU, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
14011         Comment language, indentation, and backquote cleanup.
14012         * THANKS: Updated.
14013
14014 2005-07-02  Peter O'Gorman  <peter@pogma.com>
14015
14016         * tests/inherited_flags.at: Use -no-undefined.
14017         Reported by Chris Oxenreider <oxenreid@state.net>
14018
14019 2005-07-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14020
14021         * config/ltmain.m4sh (func_mode_compile, func_mode_link),
14022         m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH, _LT_ENABLE_LOCK):
14023         Remove some unnecessary quotes.
14024
14025         * tests/convenience.at <GCJ>: Fix java test.
14026         Reported by Eric Blake <ericblake@comcast.net>.
14027
14028 2005-07-01  Derek R. Price  <derek@ximbiot.com>
14029
14030         * config/ltmain.m4sh (func_mode_link) <shell wrapper>: Handle
14031         spaces in paths to executed programs.  Quote path in error message.
14032
14033 2005-06-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14034
14035         * THANKS: Updated.
14036
14037 2005-06-28  Stepan Kasal  <kasal@ucw.cz>
14038
14039         * clcommit.m4sh: "grep|sed" can be replaced by mere "sed".
14040         * m4/libtool.m4 (_LT_LIBTOOL_TAGS): Remove unnnecessary "[]".
14041         * m4/lt~obsolete.m4: Use m4_ifndef.
14042
14043 2005-06-27  Stepan Kasal  <kasal@ucw.cz>
14044
14045         * m4/ltsugar.m4 (lt_combine, _lt_combine): Fix default separator.
14046
14047         * m4/ltoptions.m4 (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Replace
14048         AC_FOREACH by a combination of m4_foreach/m4_split/m4_normalize.
14049
14050 2005-06-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14051
14052         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Remove unnecessary workaround
14053         for CVS Automake bug (fixed).
14054         Reported by Stepan Kasal <kasal@ucw.cz>.
14055
14056 2005-06-21  Peter O'Gorman  <peter@pogma.com>
14057
14058         * conig/ltmain.m4sh [darwin]: Accept -arch flag.
14059
14060 2005-06-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14061
14062         * m4/libtool.m4 (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
14063         New macros: save warnings and boilerplate of simple compile/link
14064         tests.
14065         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
14066         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Call.
14067         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION, _LT_COMPILER_C_O, ):
14068         Fail only if nonempty warnings different from default
14069         compile/link.
14070
14071 2005-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14072
14073         * m4/ltsugar.m4 (lt_car, lt_cdr): New macros, clones of
14074         m4_car/m4_cdr with the fixed semantics of Autoconf-2.59c CVS, in
14075         order to work with 2.59.
14076         (lt_combine): Use it.
14077         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
14078
14079 2005-06-11  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>,
14080             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14081
14082         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Loop options only if
14083         nonempty.
14084         * m4/ltsugar.m4 (lt_combine): Don't test against empty quotes,
14085         test against empty arg.  Fixes infinite m4 loop with CVS
14086         Autoconf.
14087
14088 2005-06-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14089
14090         * m4/libtool.m4 (_LT_COMPILER_OPTION, _LT_LINKER_OPTION): No
14091         need for $ECHO here.  Fix sed script syntax to be portable.
14092         This should now put the pic-flag right after the last $*FLAGS
14093         variable again, if any.  Necessary for Fortran AC_FC_SRCEXT.
14094
14095 2005-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14096
14097         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Remove long lines.
14098
14099 2005-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14100
14101         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
14102         _LT_LANG_CXX_CONFIG): PGI also has pgf95.  PGI static flag is
14103         `-Bstatic'.  Remove harmless extra comma from whole_archive
14104         output.
14105
14106 2005-06-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14107
14108         * config/ltmain.m4sh (func_mode_compile): In order to find out
14109         about forbidden characters in output, check with grep after
14110         checking func_quote_for_eval result.  Also, warn instead of fail.
14111         * config/general.m4sh (func_quote_for_eval)
14112         (func_quote_for_expand): Revert SunOS sh bug workaround patch from
14113         2004-12-28 as it triggers bugs in the Tru64 5.1B shell.
14114         Reported by Albert Chin <libtool@mlists.thewrittenword.com> and
14115         Nicolas Joly <njoly@pasteur.fr>.
14116
14117 2005-06-01  Olly Betts <olly@survex.com>  (tiny change)
14118
14119         * libltdl/argz.c (argz_create_sep): Fix typo.
14120
14121 2005-05-31  Peter O'Gorman  <peter@pogma.com>
14122
14123         * config/ltmain.m4sh: Do not add installed static litool libraries
14124         to convenience, they are not convenience libraries.
14125         Reported by Chen-Mou Cheng <chenmou.cheng@gmail.com>
14126
14127 2005-05-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14128
14129         * THANKS: Updated.
14130
14131 2005-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14132
14133         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [aix]:
14134         Fix wrong $ECHO use overlooked in 2005-04-27.  Simplify slightly.
14135
14136         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
14137         _LT_LANG_CXX_CONFIG) [linux]: PGI:
14138         Add $pic_flag to archive_cmds and archive_expsyms_cmds.
14139         Bug reported against LAM by Troy Telford <ttelford@lnxi.com>.
14140
14141 2005-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14142
14143         * THANKS: Updated.
14144
14145 2005-05-06  Gary V. Vaughan  <gary@gnu.org>
14146
14147         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Propogate ltdl directory.
14148
14149 2005-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14150
14151         * Makefile.am (stamp-vcl): Use `diff' instead of `cmp'.
14152
14153 2005-04-30  Gary V. Vaughan  <gary@gnu.org>
14154
14155         Revert the parallel installation changes from November last year:
14156
14157         * libtoolize.m4sh (pkgdatadir, aclocaldir): Substituted from
14158         configure.
14159         (func_copy_all_from_path): Removed.  No longer used.
14160         (func_copy_some_files): Simplify now that nothing is copied from a
14161         list of possible directories now.
14162         (func_scan_files): Remove directory readability check...
14163         (func_nonemptydir_p): ...in favour of a dedicated sanity check
14164         function called from the main body.
14165         (_lt_pkgvdatadir): Set pkgdatadir and aclocaldir appropriately if
14166         this is in the environment.
14167         * configure.ac: Tests for `ln' removed.
14168         (APIVERSION): Removed.
14169         * Makefile.am (pkgvdatadir, nobase_dist_pkgvdata_DATA)
14170         (nobase_pkgvdata_DATA): Renamed to...
14171         (pkgdatadir, nobase_dist_pkgdata_DATA, aclocalfiles): ...these
14172         respectively.
14173         (edit): Adjust for new variable names.
14174         (install-data-local): Don't bother to remove old macro files that
14175         will be overwritten by the installation, and perform a manual
14176         installation of $(aclocalfiles) to preserve timestamps.
14177         (install-exec-hook): Removed.  No need to make versioned links.
14178         (uninstall-hook): No need to remove versioned links, but now we
14179         need to manually remove the manually installed $(aclocalfiles).
14180         * doc/libtool.texi: Remove bogus notes about setting
14181         ACLOCAL_AMFLAGS for versioned libtool installations.
14182         * NEWS: Remove parallel installation item.
14183
14184 2005-04-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14185
14186         * m4/ltdl.m4 (all over): Quote all arguments to AC_DEFINE and
14187         AC_DEFINE_UNQUOTED consistently.  Reported by
14188         Michael Koch  <konqueror@gmx.de>, Riccardo Mottola <zuse@libero.it>,
14189         and Dalibor Topic <robilad@kaffe.org>.
14190
14191         * HACKING: Updated.
14192
14193 2005-04-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14194
14195         * tests/convenience.at: Actually add.
14196
14197         * tests/convenience.at: New.  Test convenience archives.
14198         * Makefile.am, tests/testsuite.at: Adjust.
14199         * tests/testsuite.at: Reorder tests.  Suspend AT_TESTED.
14200         (PREPARE_TESTS): Define EGREP, host, build, LIBTOOL.
14201         (LT_AT_BOOTSTRAP): Fail if autoreconf fails.
14202         (LT_AT_EXEC_CHECK): New macro for execution of $build binaries.
14203         (LT_AT_TAG): New macro to test tag availability or skip test.
14204         * tests/am-subdir.at, tests/duplicate_members.at,
14205         tests/inherited_flags.at, tests/link-order.at,
14206         tests/stresstest.at, tests/template.at: Adjust.  Use LT_AT_TAG,
14207         LT_AT_EXEC_CHECK, AT_KEYWORDS. Use compiler/linker flags
14208         consistently.
14209         * tests/link-order.at: Fix use of AT_DATA, bogus redirection
14210         inside AT_CHECK.
14211         * tests/stresstest.at: Do not use wildcards/regex in symbol files,
14212         they are not portable.  Use -no-undefined on win32.  Fix to ignore
14213         compile/link warnings.
14214
14215         * tests/f77demo/foo.h, tests/f77demo/fooc.c,
14216         tests/f77demo/cprogram.c, tests/mdemo2/main.c, tests/pdemo/foo.h:
14217         Make declarations available.
14218
14219         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: sed 3.02 does
14220         not understand \t in regex.
14221         Reported by Tim Van Holder <tim.vanholder@gmail.com>.
14222
14223         * tests/defs.m4sh (func_configure): Don't run the whole configure
14224         script with -x.
14225
14226         * config/ltmain.m4sh: Audit use of echo vs $ECHO.
14227         Reported by Robert Ögren <lists@roboros.com> and others.
14228
14229         * TODO: Updated.
14230
14231 2005-04-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
14232             Gary V. Vaughan  <gary@gnu.org>
14233
14234         * HACKING, THANKS: Updated.
14235
14236 2005-04-25  David Edelsohn  <dje@watson.ibm.com>
14237
14238         * m4/libtool.m4 (_LT_LINKER_SHLIBS): _LT_TAGDECL(file_list_spec).
14239         * config/ltmain.m4sh (func_mode_link): Change $filelist to
14240         $output.
14241
14242 2005-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14243
14244         * m4/libtool.m4 (_LT_CC_BASENAME): Ignore `compile'.
14245
14246 2005-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14247
14248         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [solaris]:
14249         Update wl for Sun Studio f77/f90/f95.  Fix whole_archive_flag_spec
14250         for cc and f77/f90/f95 to prevent reordering in case we link with
14251         $CC.
14252
14253         * m4/libtool.m4: Audit use of echo vs $ECHO.
14254         * TODO: Update.
14255         Reported by Robert Ögren <lists@roboros.com> and others.
14256
14257 2005-04-23  Gary Kumfert <kumfert@llnl.gov>
14258
14259         * m4/libtool.m4 (_LT_LANG_F77_CONFIG) [aix4, aix5]:
14260         Adjust logic to match the C case: Only disable static if not
14261         on ia64 nor runtimelinking.
14262
14263 2005-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14264
14265         * Makefile.am, HACKING: Use lt__cd throughout.
14266
14267 2005-04-22  Gary V. Vaughan  <gary@gnu.org>
14268
14269         The FSF are moving offices today.  Changed their contact address
14270         in all files from `59 Temple Place, Suite 330, MA 02111-1307' to
14271         `51 Franklin Street, Fifth Floor, MA 02110-1301'.
14272
14273 2005-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14274
14275         * libtoolize.m4sh (func_scan_files, func_serial,
14276         func_ltmain_update, func_config_update, func_install_update):
14277         Placate AIX sed.
14278
14279 2005-04-19  David Edelsohn  <dje@watson.ibm.com>
14280
14281         * config/ltmain.m4sh (func_mode_link): If command exceeds
14282         max_cmd_len and file_list_spec exists, write list of input files
14283         to temporary file.
14284         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
14285         [aix4,aix5]: Define file_list_spec.
14286
14287 2005-04-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14288
14289         * tests/demo-hardcode.test: Fix typo.
14290
14291 2005-04-17 Alexandre Oliva  <aoliva@redhat.com>,
14292            Peter O'Gorman  <peter@pogma.com>
14293
14294         * config/ltmain.m4sh: Don't add files with the same base name to
14295         an archive; rename duplicates instead.
14296         (func_extract_an_archive): Remove section to deal with duplicate
14297         base names in an archive.
14298         * tests/functests.at: remove.
14299         * tests/duplicate_members.at: new test.
14300         * tests/testsuite.at: Add new test, remove old.
14301         * Makefile.am: Add new test, remove old.
14302
14303 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14304
14305         * tests/demo-hardcode.test [solaris]:  Use dumpstabs if available,
14306         to avoid false failure caused by debug section which contains
14307         command line (Solaris cc).
14308         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
14309
14310 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14311
14312         * libtoolize.m4sh (func_copy_cb): Fix syntax typo.
14313
14314 2005-04-15  Maciej W. Rozycki  <macro@linux-mips.org>
14315
14316         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Add old_archive_cmds
14317         definition.
14318
14319 2005-04-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14320
14321         * m4/libtool.m4 (_LT_CC_BASENAME): New macro to figure out
14322         $cc_basename.  Skip ccache, distcc, purify, cmdline options,
14323         `$host_alias-' prefix.
14324         (_LT_SETUP, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
14325         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Use.
14326         * NEWS, TODO: Update.
14327
14328 2005-04-15  Gary V. Vaughan  <gary@gnu.org>
14329
14330         * libltdl/configure.ac (AC_OUTPUT): loaders/Makefile is no longer
14331         used.
14332
14333         * Makefile.am (lt__cd, CD_TESTDIR): New make macros to work around
14334         problems with CDPATH in some shells.
14335         (check-local, installcheck-local, clean-local): Use them.
14336
14337 2005-04-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14338
14339         * bootstrap: Define srcdir for making `commit'.
14340
14341 2005-04-14  Alexandre Oliva  <aoliva@redhat.com>,
14342             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14343
14344         * config/ltmain.m4sh (link mode): Add to tmp_libs paths for
14345         libtool dep libs in reverse order as well.
14346         * Makefile.am, tests/testsuite.at, tests/link-order.at: New test.
14347
14348 2005-04-13  Gary V. Vaughan  <gary@gnu.org>
14349
14350         Since the bootstrap process requires that several of the rules for
14351         files generated in doc and tests already lived in
14352         $top_srcdir/Makefile.am, along with proxy rules in sub-Makefiles,
14353         this changeset consolidates almost everything into the top
14354         Makefile.am, simplifying things considerably:
14355
14356         * doc/Makefile.am, tests/Makefile.am: Removed.  All rules moved...
14357         * Makefile.am: ...to here and adjusted to run from $top_builddir.
14358         Some reformatting to group rules and declarations by purpose, and
14359         simplify with respect to removing much of the make recursion.
14360         Add `doc/PLATFORMS', `doc/fdl.texi' and `doc/notes.texi'.
14361         `defs.in' and `defs.m4sh' are in directory `tests'.
14362         (uninstall-hook): Don't forget to uninstall libtoolize's libltdl
14363         source tree.
14364         * bootstrap: Simplified dirty makefile management, and bootstrap
14365         file creation in light of having only a single pertinent
14366         Makefile.
14367         * configure.ac (CONF_SUBDIRS): Add tests/ prefix to each subdir to
14368         compensate.
14369         (DIST_MAKEFILE_LIST): Adjust.
14370         (AC_CONFIG_FILES): Remove doc/Makefile and tests/Makefile.
14371         * tests/defs.m4sh (LIBTOOL, scripts): Adjust paths.
14372         * tests/cdemo-conf.test, tests/cdemo-exec.test,
14373         tests/cdemo-make.test, tests/cdemo-shared.test,
14374         tests/cdemo-static.test, tests/cdemo-undef.test,
14375         tests/demo-conf.test, tests/demo-deplibs.test,
14376         tests/demo-exec.test, tests/demo-hardcode.test,
14377         tests/demo-inst.test, tests/demo-make.test,
14378         tests/demo-nofast.test, tests/demo-noinst-link.test,
14379         tests/demo-nopic.test, tests/demo-pic.test,
14380         tests/demo-relink.test, tests/demo-shared.test,
14381         tests/demo-static.test, tests/demo-unst.test,
14382         tests/depdemo-conf.test, tests/depdemo-exec.test,
14383         tests/depdemo-inst.test, tests/depdemo-make.test,
14384         tests/depdemo-nofast.test, tests/depdemo-relink.test,
14385         tests/depdemo-shared.test, tests/depdemo-static.test,
14386         tests/depdemo-unst.test, tests/f77demo-conf.test,
14387         tests/f77demo-exec.test, tests/f77demo-make.test,
14388         tests/f77demo-shared.test, tests/f77demo-static.test,
14389         tests/link-2.test, tests/link.test, tests/mdemo-conf.test,
14390         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
14391         tests/mdemo-inst.test, tests/mdemo-make.test,
14392         tests/mdemo-shared.test, tests/mdemo-static.test,
14393         tests/mdemo-unst.test, tests/mdemo2-conf.test,
14394         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
14395         tests/objectlist.test, tests/pdemo-conf.test,
14396         tests/pdemo-exec.test, tests/pdemo-inst.test,
14397         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
14398         tests/suffix.test, tests/tagdemo-conf.test,
14399         tests/tagdemo-exec.test, tests/tagdemo-make.test,
14400         tests/tagdemo-shared.test, tests/tagdemo-static.test,
14401         tests/tagdemo-undef.test, tests/tagtrace.test (func_cd,
14402         func_require): Adjust paths.
14403
14404 2005-04-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14405
14406         * config/general.m4sh, libtool.m4 (_LT_SETUP), tests/defs.m4sh,
14407         tests/functests.at: Fix definition of $Xsed.
14408
14409 2005-04-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14410
14411         Improved Portland support: prelinking of C++ templates and
14412         whole_archive.
14413
14414         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [linux]:
14415         Reinstate formatted whole_archive_flag_spec for PGI compilers.
14416         * config/ltmain.m4sh (func_mode_link), m4/libtool.m4
14417         (_LT_LINKER_SHLIBS): New tag prelink_cmds, to be executed before
14418         linking a program.
14419         (_LT_LANG_CXX_CONFIG) [linux]: Use for pgCC.
14420         (_LT_COMPILER_C_O): conftest might be nonempty, clean up more
14421         thoroughly.
14422
14423         * tests/testsuite.at (LT_AT_BOOTSTRAP): Temporary fix for testing
14424         in-tree libtoolize.
14425
14426         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Only call sed if
14427         necessary while quoting all libtool variables.
14428         Reported by Robert Ögren <lists@roboros.com>.
14429
14430 2005-04-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14431
14432         * tests/Makefile.am: Typo.
14433
14434 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14435
14436         * notes.texi: Platform-specific configuration notes.
14437         * doc/libtool.texi: Include as section.
14438         * bootstrap, doc/Makefile.am: build also as notes.txt and
14439         distribute.
14440
14441 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14442
14443         Under certain circumstances, not all of the macro files were
14444         copied into the destination directory.  This changeset fixes
14445         that bug:
14446
14447         * libtoolize.m4sh (func_serial_update):  Renamed local variable
14448         `my_update_p' to `my_serial_update_p', and initialise it correctly
14449         even when the destination file is not yet there.
14450         Reported by Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14451
14452 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14453
14454         * tests/libtoolize.at: New tests for basic libtoolize
14455         functionality and reporting.
14456         * tests/testsuite.at: Call them.
14457         * tests/Makefile.am: Distribute them.
14458
14459         * libtoolize.m4sh (pkgvdatadir): Renamed from this...
14460         (_lt_pkgvdatadir): ...to this.
14461         * tests/testsuite.at (LT_AT_LIBTOOLIZE): The `-I' option is no
14462         longer supported by libtoolize.  Set _lt_pkgvdatadir in the
14463         environment of the invocation instead.
14464
14465 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14466
14467         * tests/template.at: New Autotest tests for C++ with templates.
14468         First test provided by
14469         Markus Christen <markus@igc.phys.chem.ethz.ch>.
14470         * tests/Makefile.am, tests/testsuite.at: Use and distribute.
14471
14472 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14473
14474         * libtoolize.m4sh (func_serial_update): Replace missing
14475         destination serial calculation line, presumably lost due to a bad
14476         merge.
14477
14478         * libltdl/loaders/Makefile.am: Removed actually.
14479
14480 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14481
14482         Getting the value of ltdldatafiles from a submake was not
14483         portable, and had problems with GNU make-3.80 at least.  This
14484         changeset pulls the installation rules for libtoolize's copy of
14485         the libltdl sources out of libltdl/Makefile.am so that
14486         ltdldatafiles is defined in the same Makefile that uses it.  Also,
14487         this makes a start at cleaning up libltdl/Makefile.am so that it
14488         is useful in a package that uses `libtoolize --ltdl':
14489
14490         * libltdl/loaders/Makefile.am: Removed entirely.
14491         * libltdl/Makefile.am (dlopen.la, dld_link.la, dyld.la)
14492         (load_add_on.la, loadlibrary.la, shl_load.la): All built from here
14493         now that the loaders submake has gone.
14494         (show-ltdldatafiles): Removed.  No longer required.
14495         (ltdldatadir, ltdldatafiles, install-local): Moved from here...
14496         * Makefile.am (ltdldatadir, ltdldatafiles, install-local): ..to
14497         here.
14498         (libtoolize): Substitute $(ltdldatafiles) directly without calling
14499         make to get the value from libltdl/Makefile.
14500
14501 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
14502
14503         * Makefile.am (libtoolize): Substitute $(nobase_pkgvdata_DATA).
14504         pkgvmacro_DATA is no longer set in the makefile.
14505         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): Use it and, for
14506         consistency, renamed from this...
14507         (func_massage_nobase_pkgvdata_DATA): ...to this.  Adjust all
14508         callers.
14509
14510 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
14511
14512         Fix problems with serial comparison sed scripts, and factor out
14513         common code from similar serial comparison functions:
14514
14515         * libtoolize.m4sh (func_keyword_update): Common code factored out
14516         of func_ltmain_update and func_config_update.
14517         (func_ltmain_update, func_config_update): Adjust, and fix sed
14518         expressions to not use unportable ? modifier.
14519         (func_install_update): New serial number based file updater keyed
14520         off 'scriptversion' variable in install-sh.  Adjust all callers.
14521
14522 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
14523
14524         Most of the hair introduced ostensibly to enable testing of
14525         uninstalled libtoolize isn't necessary if we allow overriding of
14526         the libtool master copy directory:
14527
14528         * configure.ac (pkvmacrodir): No need to substitute this.
14529         * Makefile.am (edit): No need to substitute pkgvmacrodir.
14530         (dist_pkgvdata_DATA): Use nobase_ prefix so that these files are
14531         installed to $(pkgvdatadir)/config.
14532         (pkgvmacro_DATA): Renamed to...
14533         (nobase_pkgvdata_DATA): ...this, so that files are installed to
14534         $(pkgvdatadir)/m4.
14535         (install-data-hook): Adjust.
14536         * libtoolize.m4sh: Remove -I processing.
14537         (func_filename_path_search): No longer required without -I.
14538         Adjust all callers.
14539         (pkgvltdldirs, pkgvmacrodirs): Deleted.
14540         (pkgvdatadir): Allow overriding from the environment so that we
14541         can write tests for uninstalled libtoolize.
14542         (func_serial_update, func_ltmain_update, func_config_update):
14543         Rename srcdirs parameter to srcdir, and don't call the path_search
14544         function anymore.  Adjust all callers.
14545         (--install): Don't blindly copy all config files.
14546
14547 2005-04-01  Mike Stump  <mrs@apple.com>
14548
14549         * m4/libtool.m4 (LT_CMD_MAX_LEN) [netbsd, freebsd, openbsd
14550         darwin, dragonfly]: Use 3/4 of argmax, instead of 1/4.
14551
14552 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14553
14554         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG):
14555         Set $cc_basename.
14556
14557         * HACKING: echo vs $ECHO.
14558
14559 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14560
14561         * doc/libtool.texi: Minor formatting cleanups.
14562
14563 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
14564
14565         * libtoolize.m4sh: Propogate --debug flag to sub-libtoolizes.
14566
14567         * libtoolize.m4sh: Fix a typo, s/pkgvltdldirs/pkgvdatadirs/.
14568         When using -I to test an uninstalled libtoolize, we need to add
14569         the config subdirectory to the search path so that ltmain.sh can
14570         be found in the source tree.
14571
14572         * libtoolize.m4sh (func_copy_some_files): IFS needs to be set to
14573         path delimiter for all inner loop iterations.
14574         Once a matching file has been copied, no need to keep searching
14575         the path for another -- move on to the next file!
14576
14577         * libtoolize.m4sh: For verbose mode, explain why macro files are
14578         not installed without an AC_CONFIG_MACRO_DIR declaration.
14579
14580 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
14581
14582         As a prerequisite for being able to test an uninstalled libtoolize
14583         for copying files correctly from the source tree, we must know
14584         exactly which files should be copied by the --ltdl option to avoid
14585         accidentally picking up compilation objects and other noise when
14586         $builddir == $srcdir:
14587
14588         * libltdl/loaders/Makefile.am (ltdldatadir, ltdldatafiles)
14589         (install-data-local): Removed...
14590         * libltdl/Makefile.am (ltdldatafiles): ...and consolidated here.
14591         (show-ltdldatafiles): New rule...
14592         * Makefile.am (ltdldatafiles, libtoolize): ...used to substitute
14593         exactly which files are installed by libtoolize --ltdl.
14594         (edit): Move pkgvmacro_DATA substitution expression...
14595         (libtoolize): ...to here.
14596         * libtoolize.m4sh: Use func_copy_some_files() instead of
14597         func_copy_all_from_path() to copy the --ltdl option installed
14598         files.
14599         (pkgvltdldirs): New path variable to search for files installed by
14600         --ltdl option.
14601         (func_massage_pkgvltdl_files): New function to calculate the list
14602         of ltdl installation files.
14603
14604 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14605
14606         * m4/libtool.m4, m4/ltdl.m4: Indentation and quoting cleanup.
14607
14608 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14609
14610         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Use ${wlarc}
14611         and set to empty when using $LD for linking.  Fixes regression
14612         introduced in 2004-11-17.
14613         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> and
14614         Пухальский Юрий Андреевич <pooh@cryptopro.ru>.
14615
14616 2005-03-21  Gary V. Vaughan  <gary@gnu.org>,
14617             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14618
14619         * m4/libtool.m4 (_LT_SETUP, _LT_LANG_CXX_CONFIG)
14620         (_LT_LANG_F77_CONFIG): For matching compiler names -- Pick only
14621         first word, allow leading white space.
14622         * tests/sh.test: ..and test for missing `*' at end of patterns.
14623
14624 2005-03-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14625
14626         * TODO: Update.
14627
14628 2005-03-20  Peter Ekberg  <peda@lysator.liu.se>
14629
14630         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix5, irix6, nonstopux]:
14631         Test if it is possible to use the -exports_file linker option on
14632         irix with gcc, as the gcc specs file may include a -hidden_symbol
14633         option that is clashing with the -exports_file option.
14634         See this gcc bugzilla entry for further details:
14635         http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15288
14636         * THANKS: Update.
14637
14638 2005-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14639
14640         * tests/demo-nopic.test: Enhance status output
14641         noted by Tom Burger <tvburger@few.vu.nl>.
14642
14643 2005-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14644
14645         * config/ltmain.m4sh, tests/defs.m4sh: Typos.
14646
14647 2005-03-18  Peter O'Gorman  <peter@pogma.com>,
14648             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14649
14650         * m4/libtool.m4: The compiler can be a program name with args, so
14651         always check cc_basename against compiler name and a wildcard.
14652         Also, drop unnecessary quotes in `case' argument.
14653
14654 2005-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14655
14656         * Makefile.am: tests/defs.in depends on config/general.m4sh.
14657
14658         * config/general.m4sh: unconditionally set IFS, and set it
14659         to the one true right sequence: space, tab, newline.
14660         * m4/libtool.m4: remove IFS setting and as_* namespace
14661         infringement.
14662
14663         * m4/libtool.m4 (_LT_CONFIG): Reset IFS to fix failure with ash.
14664
14665         * configure.ac, libltdl/configure.ac: s/##/dnl/ for comments
14666         that are meaningless in configure.
14667         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
14668
14669 2005-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14670
14671         * libltdl/configure.ac: Update version; require Autoconf >= 2.59.
14672
14673         * bootstrap: Allow to override tools.
14674
14675 2005-03-15  Gary V. Vaughan  <gary@gnu.org>
14676
14677         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): New function
14678         to calculate the macro filenames to be copied by libtoolize.
14679         * Makefile.am (edit): Substitute pkgvmacro_DATA.
14680
14681         * bootstrap: Need to generate tests/package.m4 from Makefile.am
14682         before generating tests/testsuite from tests/Makefile.am, or
14683         else bootstrap of a fresh checkout fails.
14684
14685 2005-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14686
14687         * m4/libtool.m4 (_LT_COPYING): Update Copyright year.
14688
14689         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]: Remove MAIN_
14690         dependency when creating shared libraries with Portland pgf77.
14691
14692 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14693
14694         * configure.ac: stamp-vcl is in $top_srcdir, not $top_builddir.
14695
14696 2005-03-12  Per Bothner <per@bothner.com>,
14697             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14698
14699         Allow special characters in source file names.  Will break unless
14700         `-o target' is also given, which must not contain special
14701         characters. En passant, fix source file quoting broken for
14702         cygwin/MSVC:
14703
14704         * config/ltmain.m4sh (func_mode_compile): Use new variable
14705         qsrcfile for quoted source file name for compile $command.  Fix
14706         missing quotes for _c_o lockfile.
14707         * NEWS: Update.
14708
14709 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14710
14711         * config/ltmain.m4sh (func_mode_link): Reword double negation in
14712         error message.
14713         Reported by Jesper Louis Andersen <jlouis@mongers.org>.
14714
14715         * bootstrap: really remove bogus files Makefile tests/Makefile.
14716
14717         * doc/libtool.texi: Replace wicked whiches by thats or other
14718         better-sounding constructs.
14719
14720 2005-03-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14721
14722         * tests/Makefile (clean-local): Ignore testsuite cleanup
14723         failures.
14724
14725 2005-03-11  Per Bothner  <per@bothner.com>  (tiny change)
14726
14727         * tests/Makefile (clean-local): Only run the testsuite cleanup
14728         if the testsuite has been generated.
14729
14730 2005-03-10  Gary V. Vaughan  <gary@gnu.org>
14731
14732         * libltdl/Makefile.am (install-data-local): Don't force v7 tar
14733         format with the `o' flag in create mode.
14734         Set the umask to 0 when untarring to avoid copied files taking
14735         their mode from the installer's umask.
14736         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14737         * libtoolize.m4sh (func_copy_cb): Ditto.
14738         Ignore errors from failed `cd' in the tar processes, since we
14739         may be running in dryrun mode.
14740         Reported by Noah Misch <noah@cs.caltech.edu>,
14741                     Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
14742
14743 2005-03-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14744
14745         * libltdl/Makefile.am: $(builddir) is not defined, replace by
14746         `.'.
14747
14748 2005-03-08  Albert Chin-A-Young  <china@thewrittenword.com>
14749
14750         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
14751         [irix*, osf*]: Output -update_registry information to
14752         ${output_objdir} directory, not ${objdir}. ${output_objdir}
14753         will work when a project has a single Makefile and performs
14754         builds in subdirectories. ${objdir} expects the source in
14755         the current directory, breaking single-Makefile builds.
14756
14757 2005-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14758
14759         * tests/stresstest.at: Remove multiple variable definition.
14760
14761         * TODO: Update.
14762
14763         * THANKS: Update.
14764
14765 2005-03-02  Gary V. Vaughan  <gary@gnu.org>
14766
14767         * libtoolize.m4sh (func_copy_cb): Use tar chof to avoid symlink
14768         attacks.
14769         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
14770         (install-data-local): Ditto.
14771
14772 2005-02-27  Gary V. Vaughan  <gary@gnu.org>
14773
14774         In branch-2-0 (and in time, others) ltversion.m4 has a dot
14775         delimited serial number that didn't used to be processed
14776         correctly by libtoolize.  This changeset fixes that, and
14777         leverages those changes to check versions of ltmain.sh and
14778         config.sub, config.guess before overwriting when --force is
14779         not given:
14780
14781         * libtoolize.m4sh: Don't overwrite pkgaux files with --force
14782         unless --install is given too.
14783         (func_serial): Fix underquoting in regexp.
14784         (func_serial_max): New function to compare serial numbers.
14785         (func_serial_update_check): New function factored out of
14786         func_serial_update().
14787         (func_serial_update): Bail if SRCFILE is missing.
14788         Don't display both 'already up to date' and 'use --force to
14789         update' messages for the same file.
14790         Use func_serial_max to cope with `.' delimited serial numbers.
14791         (func_ltmain_update): Use func_serial_update_check and
14792         func_serial_max to do version checking with $package_revision.
14793         (func_config_update): Ditto with $timestamp.
14794
14795 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
14796
14797         * libltdl/Makefile.am (install-data-local):  cd to $(srcdir)
14798         before tarring up the files for installation to
14799         $(DESTDIR)$(ltdldatadir).  Don't remove the destination directory,
14800         since that interacts badly with the multi-Makefile installation.
14801         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14802
14803 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
14804
14805         I assume that it is okay to have undefined symbols in convenience
14806         libraries that will be used as modules -- the pic objects are
14807         built normally, and are not expected to resolve all their symbols
14808         until they are linked into a library; convenience libraries are
14809         then rolled using 'ar' and 'ranlib' (or equivalent) which also do
14810         not check whether symbols are resolved.  We now build each of the
14811         loaders as a convenience library module under these assumptions,
14812         and link libltdl.la with selected modules, at which time all of
14813         the symbols *are* resolved:
14814
14815         * TODO: Remove item addressed by this changeset.
14816         * libltdl/Makefile.am (lib_LTLIBRARIES): Remove libdlloader.la.
14817         (libdlloader_la_SOURCES): Declaration removed.  Changed all
14818         clients.  Source files..
14819         (libltdl_la_SOURCES): ...added back in here.
14820         (libdlloader_LDFLAGS, libdlloader_la_LIBADD): Removed.
14821         (libltdl_la_LIBADD): Remove libdlloader.la; add $(LTLIBOBJS).
14822         * libltdl/loaders/Makefile.am: Removed all references to
14823         libdlloader.la.
14824
14825 2005-02-25  Gary V. Vaughan  <gary@gnu.org>
14826
14827         * libtoolize.m4sh (func_copy): Split arguments to func_copy_cb
14828         calls across lines so that quote.test doesn't misdiagnose nested
14829         quotes.
14830
14831         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC):
14832         Fix some typos -- s/_LT_AC_TAGVAR/_LT_TAGVAR/g.
14833
14834 2005-02-24  Peter O'Gorman  <peter@pogma.com>
14835
14836         * m4/libtool.m4 (_LT_LINKER_SHLIBS): The Portland group's
14837         compiler does not pass --whole-archive. Move gnu ld check for
14838         the flag to the top so it can be overridden.
14839         (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC): Unset
14840         whole_archive_flag_spec for the portland group's c++ compiler
14841         too.
14842         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
14843
14844 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
14845
14846         * libltdl/Makefile.am (install-data-local): Don't forget about
14847         $(DESTDIR).
14848         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14849
14850 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
14851
14852         Preserving the installed timestamps for libltdl sources from
14853         `libtoolize --ltdl --copy' is pointless if they are not preserved
14854         from the libtool source tree at install time:
14855
14856         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
14857         (nobase_ltdldata_DATA): Renamed to...
14858         (ltdldatafiles): ...this.
14859         (install-data-local): New rule to install libltdl tree with tar to
14860         preserve timestamps.
14861
14862 2005-02-23  Christoph Egger  <Christoph_Egger@gmx.de> (tiny change)
14863
14864         * config/ltmain.m4sh (func_mode_link): Add -pthread like flags to
14865         inherited_linker_flags.
14866
14867 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
14868
14869         * libtoolize.m4sh (func_copy_cb): self.leg->shoot_off() :-/
14870         Let's not redirect stdout to null when sending tar output to a
14871         pipe.
14872
14873 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
14874
14875         Using `libtoolize --copy --ltdl' was not preserving timestamps, so
14876         parts of the autoconf bootstrap would be rerun spuriously after
14877         the files had been copied into the source tree:
14878
14879         * libtoolize.m4sh (TAR): New default tar command.
14880         (func_copy_cb): Move the core copying internals to here, using
14881         $TAR to transfer files if possible when --copy was specified.
14882         (func_copy): Adjust to call func_copy_cb.
14883         * TODO: Remember to refactor this fix in due course.
14884         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
14885
14886 2005-02-21  Peter O'Gorman  <peter@pogma.com>
14887
14888         * config/ltmain.m4sh (func_extract_archives) [darwin]: This didn't
14889         actually work on a real fat archive, should do now.
14890         * tests/functests.at [darwin]: remove darwin fat tests which
14891         did not actually work.
14892
14893 2005-02-07  Peter O'Gorman  <peter@pogma.com>
14894
14895         * config/ltmain.m4sh: Add -pthread like flags when linking
14896         executables too.
14897         Reported by Andreas Schwab <schwab@suse.de>
14898
14899 2005-02-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14900
14901         * config/ltmain.m4sh (func_mode_link): Allow five digits in
14902         version-info.
14903
14904         * NEWS: s/Linux/GNU &/.
14905
14906 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14907
14908         * tests/Makefile.am, tests/testsuite.at, tests/stresstest.at:
14909         New test.  Stresses several combinations of link flags and
14910         path specifications.  Uses several data types to test linkage
14911         against symbols in all kinds of (e.g., ELF) sections.
14912
14913 2005-02-03  Reid Spencer  <reid@x10sys.com>,
14914             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14915
14916         * config/ltmain.m4sh (func_generate_dlsyms): Fix broken subdir
14917         path computation, exposed by using `-dlopen self'.  Fix broken
14918         sed script exposed by additionally using `-export-symbols FILE'.
14919
14920 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14921
14922         * THANKS: Update.
14923
14924         * THANKS: Update.
14925
14926 2005-02-03  Peter O'Gorman  <peter@pogma.com>
14927
14928         * config/ltmain.m4sh [darwin]: Don't add installed libs to
14929         temp_rpath when building executables on darwin, or other systems
14930         which use hardcode_automatic. It may break our wrapper scripts.
14931
14932 2005-02-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14933
14934         * config/getopt.m4sh (func_version, func_usage, func_help):
14935         Exit with nonzero status on write failures.
14936         * config/ltmain.m4sh (func_mode_help, func_config, func_features):
14937         Ditto.
14938
14939         * tests/sh.test: Check for preferred function definition layout.
14940
14941 2005-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14942
14943         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
14944         [pw32, freebsd3.[01], freebsdelf3.[01]]:  Fix [] quoting.  Should
14945         fix various spurious failures.
14946         (_LT_LINKER_SHLIBS) [linux with GNU ld < 2.11, aix4.[012]*]:
14947         Ditto.
14948         (_LT_LANG_CXX_CONFIG) [aix4.[012]*, freebsd[12], solaris2.[0-5]]:
14949         Ditto.
14950         (_LT_LANG_GCJ_CONFIG): Ditto.
14951
14952         * tests/Makefile.am: Add `atconfig' to DISTCLEANFILES.
14953
14954         * clcommit.m4sh: Test whether the shell understands `read -r'.
14955         Use as `$read_r' if available, so `\' is preserved in commit
14956         notices.
14957
14958         * HACKING (Editing `.m4sh' Files): Document preferred function
14959         header layout.
14960         * config/ltmain.m4sh (func_win32_libid, func_infer_tag)
14961         (func_generate_dlsyms, func_extract_an_archive)
14962         (func_extract_archives): Adjust to fit.
14963
14964 2005-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14965
14966         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unicos 9 sed rejects
14967         empty parentheses as in 's/x\(\)/\1/'.
14968         (_LT_COMPILER_PIC) [unicos*]: wl=-Wl,.
14969         * tests/sh.test: Not all sed's like '/.*\n.*/' (Unicos 9 sed
14970         loops endlessly).
14971
14972         * tests/quote.test: Match link  quoting against `"$wl"', not
14973         `-Wl,'.
14974
14975         * tests/quote.test: Check for `--no-reexec' in $1 to avoid one
14976         reexec.
14977
14978         * m4/libtool.m4 (_LT_COMPILER_C_O): _LT_TAGDECL(lt_compiler_c_o),
14979         not _LT_DECL, since this is tag-dependent.
14980
14981         * config/ltmain.m4sh, m4/libtool.m4: Change `( cmd ) 2>/dev/null'
14982         to  `{ cmd; } 2>/dev/null', when cmd has no side effects and might
14983         be a builtin.  Note that it is unspecified whether cmd will run
14984         within a subshell (e.g. Bourne shells) or within the current shell
14985         (most modern shells).
14986
14987 2005-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14988
14989         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [linux]:
14990         Update for Intel Compiler icc/icpc/ifort: add -i_dynamic and
14991         -nofor_main, if necessary.  Simplify logic somewhat.
14992
14993 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14994
14995         * tests/Makefile.am: also re-export CPP, CXXCPP, and the value of
14996         SHELL as CONFIG_SHELL.
14997         Reported by Heinz Salzmann <heinz.salzmann@micronas.com>.
14998
14999 2005-01-26  Craig Dooley  <xlnxminusx@gmail.com>,
15000             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15001
15002         * NEWS, m4/libtool.m4, config/ltmain.m4sh [dragonfly]:
15003         Add support for DragonFly.
15004
15005 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15006
15007         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Work around pdksh
15008         positional parameter expansion bug.
15009
15010 2005-01-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15011
15012         * config/ltmain.m4sh: Fix endless loop in cmdline parsing.
15013
15014 2005-01-25  Albert Chin-A-Young  <china@thewrittenword.com>
15015
15016         * config/ltmain.m4sh (func_mode_link) [irix]: Preserve processor
15017         option for SGI Compiler (-r[0-9][0-9]*).
15018
15019 2005-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15020
15021         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Define Bourne and XSI
15022         variants of new function func_stripname for stripping literal
15023         prefixes and suffixes.
15024         * config/ltmain.m4sh (all over): Use func_stripname.
15025
15026         * tests/defs.m4sh: Extract $build from $LIBTOOL.
15027         (func_configure): Pass --host if $host != $build.
15028         (func_exec): Try executing cross-compiled binaries (e.g. i686 ->
15029         i386), but SKIP rather than FAIL.
15030         * tests/depdemo-relink.test: Do not try to access possibly non-
15031         existent files.  SKIP rather than FAIL or PASS falsely when
15032         cross-compiling.
15033
15034         * m4/libtool.m4 (_LT_SETUP) [mingw, cygwin, pw32, os2]:
15035         Add _LT_DECLs for host_os, build_alias, build and build_os.
15036         host_os and build were used in a few occasions in ltmain.m4sh
15037         and affect above-mentioned systems, the others are added for
15038         symmetry and in order to be able to detect cross-compiling.
15039
15040 2005-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15041
15042         * libltdl/Makefile.am: Add $(AM_LDFLAGS) to all per-target
15043         variables *_LDFLAGS as per CVS Automake semantic change.
15044
15045 2005-01-16  Peter O'Gorman  <peter@pogma.com>
15046
15047         * config/ltmain.m4sh (func_mode_link): Don't pass through
15048         compiler-like thread flags when using $LD to do the linking.
15049         Use compiler_flags instead.
15050         Reported by Mark_Andrews@isc.org.
15051
15052         * m4/libtool.m4 (LT_CMD_MAX_LEN) [osf]: On Tru64 there could
15053         be a kernel panic when testing the maximum command line length
15054         if exec_disable_arg_limit=1. Don't do the tests to figure it
15055         out on *-osf*.
15056         Reported by Dr. Hans Ekkehard Plesser
15057         <hans.ekkehard.plesser@umb.no>
15058
15059 2005-01-14  Guido Draheim  <guidod-2003-@gmx.de>  (tiny change)
15060
15061         * m4/libtool.m4 (AC_PROG_SED): Don't break test loop early.
15062
15063 2005-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15064
15065         * TODO: Update.
15066
15067         * libltdl/ltdl.c: Whitespace cleanup.
15068
15069         * config/ltmain.m4sh: New option `--verbose'/`-v' to enable
15070         override of `--silent'.  Verbose is the default behavior.
15071         * doc/libtool.texi (Invoking libtool): Document it.
15072
15073         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: While "parsing"
15074         /etc/ld.so.conf, skip comments.
15075         Reported by Jens Elkner <elkner@linofee.org>.
15076
15077 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15078
15079         * libltdl/libltdl/lt__glibc.h: Move all exported slist
15080         symbols into the lt__* namespace.
15081         * libltdl/libltdl/lt__private.h, libltdl/libltdl/slist.h:
15082         Adjust includes.
15083
15084 2005-01-10  Peter O'Gorman  <peter@pogma.com>
15085
15086         * config/ltmain.m4sh (func_mode_link): Fix
15087         inherited_linker_flags so it puts it on the link line when
15088         linking shared libraries as well as when linking executables.
15089         * tests/inherited_flags.at: test inherited_linker_flags.
15090         * tests/Makefile.am: Add test.
15091         * tests/testsuite.at: Add test.
15092         Reported by: Albert Chin-A-Young <china@thewrittenword.com>
15093
15094 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15095
15096         * tests/sh.test: After `set dummy [...]', check for `shift'
15097         within the same and following line.
15098         * config/ltmain.m4sh (func_enable_tag, func_mode_install)
15099         (func_mode_link): Sprinkle `shift's all over to conform to this.
15100
15101 2005-01-09  Gary V. Vaughan  <gary@gnu.org>
15102
15103         * HACKING (Editing 'ChangeLog'): Follow the GCS with respect to
15104         attributions, and mention how to handle tiny changes.
15105         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
15106
15107         * ChangeLog.2004: Trim 2005 entries.
15108         * ChangeLog: Add missing entries.
15109
15110 2005-01-08  Gary V. Vaughan  <gary@gnu.org>
15111
15112         * ChangeLog: Move 2004 change logs from here...
15113         * ChangeLog.2004: ...to here.
15114
15115         * m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
15116         m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4: RMS says,
15117         'I think the [license of autoconf macro files] should be:
15118         # This file is free software; the Free Software Foundation
15119         # gives unlimited permission to copy and/or distribute it,
15120         # with or without modifications, as long as this notice is
15121         # preserved.'.
15122
15123         * ChangeLog: Reformatting.
15124         * HACKING: Fix section numbering.
15125         (Editing 'ChangeLog'): New notes on ChangeLog entry format.
15126
15127 2005-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15128
15129         * tests/am-subdir.at tests/testsuite.at (AT_BOOTSTRAP,
15130         AT_LIBTOOLIZE, AT_CHECK_LIBTOOLIZE): Rename to ...
15131         (LT_AT_BOOTSTRAP, LT_AT_LIBTOOLIZE, LT_AT_CHECK_LIBTOOLIZE):
15132         ...and make use of new names.
15133
15134 2004-12-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15135
15136         * config/getopt.m4sh (func_version, func_usage, func_help):
15137         Use `$SED -n' instead of `$SED RANGE {..}; d' as AIX sed cannot
15138         handle the latter.
15139         (func_help): start autoconf and automake in subshells to avoid
15140         error messages from ash or Bourne shell if not available.
15141
15142 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15143
15144         * config/general.m4sh (func_quote_for_eval): Move backslash to
15145         beginning of character class, to work around old Bash bug.
15146         (func_quote_for_expand): Also test to avoid unnecessary fork.
15147
15148 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
15149             Gary V. Vaughan <gary@gnu.org>
15150
15151         * Makefile.am, bootstrap, clcommit.m4sh, libtoolize.m4sh,
15152         config/ltmain.m4sh: Replace `set --' with `set dummy [...]; shift'
15153         for portability.
15154         * tests/sh.test: Test for this.
15155
15156 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15157
15158         * libtoolize.m4sh, config/ltmain.m4sh (most functions): New
15159         variable $opt_debug is either `:' or `set -x' depending on
15160         --debug.  Execute at most function entries to cater for ksh which
15161         resets `-x'.
15162         * tests/defs.m4sh: Ditto for VERBOSE=debug.
15163
15164         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
15165         _LT_TAGVAR missing for `fix_srcfile_path'.
15166         [sysv4, sysv5]: _LT_TAGVAR missing for
15167         `export_dynamic_flag_spec'.
15168
15169         * doc/libtool.texi (all over): Use @option and @command.
15170         Some more minor formatting updates, typos.
15171
15172         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix variable quoting;
15173         allows lt_ECHO to match --fallback-echo again.
15174
15175         * config/ltmain.m4sh (func_extract_archives): Not all shells grok
15176         `read -r' (unnecessary in this case).
15177         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
15178
15179         * config/general.m4sh: New variable quote_scanset...
15180         (func_quote_for_eval, func_quote_for_expand): ...use it to work
15181         around SunOS ksh `case' backslash-escaping bug: protect character
15182         class by variable expansion.
15183         Reported by Alexander Kurz <alexander.kurz@qsc.de>.
15184
15185         * tests/quote.test: Restart under the correct shell (the one
15186         $ECHO was computed for).
15187
15188 2004-12-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15189
15190         * libltdl/lt__dirent.c: Include lt__private.h.
15191         * libltdl/libltdl/lt__private.h: Include lt__strl.h.
15192
15193 2004-12-20  Peter O'Gorman  <peter@pogma.com>
15194
15195         * config/ltmain.m4sh (func_extract_archives)
15196         (func_extract_an_archive): On darwin, uniq can not take the flags
15197         -cd together, thanks to Ralf for the fix, also ar does not accept
15198         N, so we use the fact that ar x libfoo.a foo.o will always extract
15199         the first foo.o in the archive and we then delete foo.o from the
15200         archive, which will also delete only the first foo.o, then rinse
15201         and repeat. Also add markers for the testuite.
15202         * m4/libtool.m4 (_LT_CONFIG): Add a marker so that we can use a
15203         sed expression to find the shell functions in libtool.
15204         * tests/functests.at: Test this feature.
15205         * tests/testsuite.at: Add the test.
15206         * tests/Makefile.am: Add the test.
15207
15208 2004-12-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15209
15210         * libtoolize.m4sh: Install `install-sh' as well, needed for
15211         configure.
15212         * Makefile.am, Makefile.maint: Install, update it.
15213         * NEWS, doc/libtool.texi (Distributing): Document it.
15214         Reported by Ross Boylan <ross@biostat.ucsf.edu>.
15215
15216         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Add '${wl}-z
15217         ${wl}text' to archive_cmds and archive_expsyms_cmds.  I.e., do not
15218         allow nopic in shared libraries.
15219
15220         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Change
15221         no_undefined_flag back to ' -z defs'.  Problems with linking
15222         against libgcc.a will have to be resolved differently.
15223
15224         * tests/demo-nopic.test [solaris, sunos]: Skip test.
15225
15226 2004-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15227
15228         * libtool.m4 [linux] (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG):
15229         Match icpc* and ecpc* (ia64 version of icpc) instead of only icpc.
15230
15231         * libltdl/lt__dirent.c (opendir) [mingw]: Fix write of constant
15232         strings past end of buffer.
15233         (opendir, readdir): Fix read past end of buffer.
15234
15235 2004-12-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15236
15237         * HACKING: Update list of non-Libtool-owned files.
15238
15239 2004-12-17  Akim Demaille <akim@epita.fr>
15240
15241         * libtoolize.m4sh (func_copy_all_from_path): Remove spurious eval.
15242
15243 2004-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15244
15245         * libltdl/ltdl.c (trim): Return error rather than do bogus
15246         null pointer arithmetic when parsing a malformed .la file.
15247
15248 2004-12-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15249
15250         * libltdl/lt__strl.c, libltdl/libltdl/lt__strl.h: New files to
15251         emulate strlcat and strlcpy, which support size-bounded string
15252         copying and concatenation for improved security.
15253         * libltdl/Makefile.am: Optionally build source files
15254         libltdl/lt__strl.c and libltdl/libltdl/lt__strl.h.
15255         * m4/ltdl.m4 (LTDL_INIT): Add checks for strlcat and strlcpy.
15256
15257 2004-12-13  Albert Chin-A-Young  <china@thewrittenword.com>
15258
15259         * libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
15260         Append -G to link command-line on AIX to honor -brtl on
15261         command-line (runtime linking). Already done for IBM C/C++
15262         compilers.
15263
15264 2004-12-12  Patrick Welche <prlw1@newn.cam.ac.uk>
15265
15266         * configure.ac: Fix aclocaldir to use ${datadir}, not ${prefix}.
15267         Necessary for removal of old libtool.m4 files.
15268
15269 2004-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15270
15271         * config/ltmain.m4sh (func_extract_archive): Send stderr of $NM
15272         to /dev/null.
15273         Reported by Martin Waitz <tali@admingilde.org>.
15274
15275 2004-12-09  Albert Chin-A-Young  <china@thewrittenword.com>
15276
15277         * config/ltmain.m4sh: Preserve -model [arg] option, used
15278         with the Tru64 UNIX C++ compiler. This option selects the
15279         layout of C++ classes, name mangling, and exception handling.
15280
15281 2004-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15282
15283         * config/ltmain.m4sh (func_mode_finish) [solaris]: Fix [] escaping
15284         bug.
15285
15286         * config/ltmain.m4sh (all over the map): Make use of func_basename
15287         and func_dirname in most occasions.
15288
15289         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL, _LT_PROG_XSI_SHELLFNS): New
15290         macros to detect at `configure' time whether the shell supports
15291         some XSI extensions and to copy appropriate versions of new shell
15292         functions into `libtool' through `config.status'.  Copied
15293         functions are Bourne and XSI variants of func_basename,
15294         func_dirname (a variant of `dirname' suitable for libtool).
15295         (_LT_SETUP): Require _LT_CHECK_XSI_SHELL.
15296         (_LT_CONFIG):  Use _LT_PROG_XSI_SHELLFNS to insert into `libtool'
15297         at marker.
15298
15299         * config/ltmain.m4sh: Set marker for insertion of shell functions.
15300
15301         * config/general.m4sh (func_quote_for_eval): Only fork if the
15302         substitution matches.
15303
15304 2004-12-03  Gary V. Vaughan  <gary@gnu.org>
15305
15306         * TODO: Paste Peter's summary of the TODO thread starting at
15307         http://lists.gnu.org/archive/html/libtool/2004-11/msg00130.html.
15308
15309 2004-12-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15310
15311         * config/ltmain.m4sh: Remove code which is no longer needed
15312         now that temp_rpath only contains fully-qualified elements.
15313
15314 2004-11-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15315
15316         * config/general.m4sh: basename sed-subst is anchored and thus
15317         does not need the `g' flag.
15318         (func_quote_for_eval): Return both the possibly double-quoted
15319         backslashified as well as only the backslashified argument.
15320         * config/ltmain.m4sh (func_mode_link): Use both return values,
15321         to save another sed_quote_subst application per cmdline arg.
15322
15323 2004-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15324
15325         * config/ltmain.m4sh (func_lalib_p): Update function
15326         description.
15327         (func_lalib_unsafe_p): New function with same functionality but
15328         written without forks; this function is safe to use for cases
15329         where the argument either does not exist or is required to be a
15330         lalib for correct operation.
15331         * NEWS: Mention the fact that stdin is not to be used.
15332         * config/ltmain.m4sh (func_mode_execute, func_mode_install)
15333         (func_mode_link): Use func_lalib_unsafe_p where appropriate.
15334         (func_mode_execute): For the program wrapper, use
15335         func_ltwrapper_p instead of func_lalib_p.
15336
15337         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Treat linux-dietlibc with
15338         the `diet' compiler wrapper (as opposed to the `diet-dyn' wrapper)
15339         as a static-only platform.
15340         * NEWS: Updated.
15341
15342         * libltdl/ltdl.c (trim): Use memcpy instead of strncpy here, to
15343         avoid problems with non-conforming strncpy.  This is safe here.
15344
15345         * m4/ltdl.m4 (LT_LIB_DLLOAD): Define HAVE_LIBDLLOADER if we
15346         have a dlloader to preload.
15347         * libltdl/ltdl.c (lt_dlinit): Only preload if HAVE_LIBDLLOADER, only
15348         declare preloaded_symbols then.  Fixes libltdl on static platforms.
15349         * NEWS: Updated.
15350
15351 2004-11-29  Gary V. Vaughan  <gary@gnu.org>
15352
15353         Add a search path option to libtoolize so that we can run it from
15354         the testsuite without pulling in the last installed macros and
15355         ltdl sources:
15356
15357         * libtoolize.m4sh:  Add a -I option to change libtoolize's search
15358         path for macro files, and libltdl master sources.
15359         (pkgvdatadir, pkgvmacrodir): Renamed...
15360         (pkgvdatadirs, pkgvmacrodirs): ...as they can now contain a ':'
15361         delimited list of directories.  Adjust all callers.
15362         (func_copy_all_from_path): New function to search a ':' delimited
15363         search path for a directory to copy.
15364         (func_serial_update, func_ltmain_update, func_config_update): New
15365         first parameter is a filename to search for.  srcdir parameter can
15366         now be a ':' delimited search path.  Adjust all callers.
15367         (func_copy_some_files): Ditto.
15368         Put srcfile_spec first in parameter list for consistency with
15369         other functions.  Adjust all callers.
15370         (func_copy_cb): func_copy adapter function to call func_copy
15371         correctly from func_copy_some_files.
15372         (func_filename_path_search): Return the full path to the first
15373         occurence of a named file found in a list of directories.
15374         * tests/testsuite.at (LIBTOOLIZE): Wrap exported LIBTOOLIZE
15375         initialisation in PREPARE_TESTS diversion to stop it being
15376         discarded when testsuite is generated.
15377         (AT_LIBTOOLIZE): Factor out libtoolize calls,
15378         and set search path to find macros and libltdl source files from
15379         the source tree.
15380         (AT_CHECK_LIBTOOLIZE): Test it.
15381         (AT_BOOTSTRAP): Adjust.  Split out call to make.
15382         * tests/am-subdir.at: Call make explicitly.
15383         (Makefile.am): Fix typo in ACLOCAL_AMFLAGS,
15384
15385 2004-11-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15386
15387         * config/ltmain.m4sh (func_mode_link): $dlsymsobj is really
15388         $symfileobj, bug exposed only in the static preloading case
15389         (symfileobj is created, but not linked into output).
15390
15391         * tests/demo-relink.test, tests/depdemo-relink.test: SKIP, don't
15392         FAIL if no shared libs available in demo/.  Do not try to access
15393         nonexistent files.
15394
15395         * libltdl/loaders/loadlibrary.c: Remove unneeded
15396         file-static variable.
15397
15398 2004-11-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15399
15400         * config/ltmain.m4sh: Add fully-qualified paths to temp_rpath
15401         rather than unqualified paths in order to avoid possible errors
15402         when computing the fully-qualified path later.
15403
15404 2004-11-24  Jeff Squyres  <jsquyres@lam-mpi.org>
15405
15406         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
15407         (_LT_LANG_CXX_CONFIG) [linux]: Support for Portland Group (aka
15408         "pgi") compilers.
15409         * NEWS, THANKS: Updated.
15410
15411 2004-11-24  Gary V. Vaughan  <gary@gnu.org>
15412
15413         * Makefile.am: Move Autotest rules from here...
15414         * tests/Makefile.am: ...to here.
15415         * bootstrap: Adjust.  Also, create temporary Makefile from
15416         tests/Makefile.am so that bootstrap can create the Autotest
15417         testsuite.
15418
15419 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
15420
15421         If the user's login shell is something crazy like, oooh,
15422         /bin/tcsh, trying to execute bourne shell helper scripts with
15423         the `$SHELL /path/to/helper $helper_flags' idiom incase the
15424         execute bits were lost by say, eeer, cvs, is gonna blow up in
15425         our faces.  This changeset tries to save these people from
15426         their shells^H^H^H^H^H^H^H^H^Hmselves :->
15427
15428         * tests/defs.m4sh (SHELL): Move definition from here...
15429         * config/general.m4sh (SHELL): ...to here.
15430
15431 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
15432
15433         The ltdl.h header is the published interface to libltdl, and
15434         is thus not installed to $prefix/include/libltdl.  It has always
15435         been used with `#include <ltdl.h>', so move just that one file
15436         back to where it was before:
15437
15438         * libltdl/libltdl/ltdl.h: Moved from here...
15439         * libltdl/ltdl.h: ...to here.
15440         * libltdl/Makefile.am: Adjust.
15441
15442 2004-11-23  Peter O'Gorman  <peter@pogma.com>
15443
15444         Do not require that libtoolize --ltdl=/some/path end in libltdl.
15445         Move most libltdl headers to libltdl/libltdl to allow
15446         `#include <libltdl/ltdl.h>' to always work:
15447
15448         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for includes
15449         in the new location.
15450         * libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
15451         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
15452         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
15453         libltdl/libltdl/lt_system.h, libltdl/libltdl/ltdl.h,
15454         libltdl/libltdl/slist.h: Added files, moved from libtdl/.
15455         * libltdl/lt__alloc.h, libltdl/lt__dirent.h, libltdl/lt__glibc.h,
15456         libltdl/lt__private.h, libltdl/lt_dlloader.h, libltdl/lt_error.h,
15457         libltdl/lt_system.h, libltdl/ltdl.h, libltdl/slist.h: Removed, moved
15458         to libltdl/libltdl.
15459
15460 2004-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15461
15462         * doc/libtool.texi (LT_INIT): s/libtool 1.6/libtool 2.0/.
15463         (Invoking libtoolize): Fix typo.
15464
15465 2004-11-22  Gary V. Vaughan  <gary@gnu.org>
15466
15467         * config/ltmain.m4sh (func_mode_install): Now that func_mktempdir
15468         has been improved, the default directory template is perfectly
15469         fine.
15470
15471         * doc/libtool.texi (Invoking libtoolize): Improve documentation
15472         for use of ACLOCAL_AMFLAGS and AC_CONFIG_MACRO_DIR.
15473
15474 2004-11-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15475
15476         * m4/libtool.m4 (_LT_TAG_COMPILER): Document that with_gcc is
15477         tag-dependent.
15478
15479         * m4/libtool.m4, tests/demo-nopic.test: Undo bogus commit.
15480
15481         * config/ltmain.m4sh (func_mode_link), tests/objectlist.test:
15482         Make sure the argument to `-objectlist' may contain spaces.
15483
15484 2004-11-19  Gary V. Vaughan  <gary@gnu.org>
15485
15486         * config/m4general.m4sh, config/mailnotify.m4sh,
15487         clcommit.m4sh: Updated from cvs-utils--tla--1.0 to allow
15488         parallel commits, and use safer tmpfiles.
15489
15490 2004-11-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15491
15492         * doc/libtool.texi (Libltdl interface): Typos.
15493
15494         * doc/libtool.texi (Libltdl interface): Document public macros
15495         LT_PATHSEP_CHAR, LT_DIRSEP_CHAR, use in path descriptions.
15496
15497 2004-11-18  Daniel Reed  <djr@redhat.com>
15498
15499         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: Interpret
15500         `include' statements in toplevel ld.so.conf file.
15501
15502 2004-11-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15503
15504         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
15505         tag-protect setting of ld_shlibs.
15506
15507 2004-11-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15508
15509         * doc/libtool.texi (Libltdl interface): The path separator
15510         is system-dependent.
15511
15512         * doc/libtool.texi (Linking static libraries): Typo.
15513
15514         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
15515         [aix4/aix5 !ia64]: Set whole_archive_flag_spec to '$convenience'
15516         so convenience libs are really added to the link cmdline.
15517
15518 2004-11-17  Mats Rynge  <rynge@isi.edu>
15519
15520         * libtool.m4 [linux]: Use only the CC basename in case statment
15521         when checking for icc/ecc.  Allows for setting CC to the full path
15522         to the compiler.
15523
15524         * libtool.m4 [solaris]: Added missing 'with linker' flags to
15525         -z allextract ... -z defaultextract flags
15526
15527 2004-11-14  Gary V. Vaughan  <gary@gnu.org>
15528
15529         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Typo: s/--rpath/-rpath/g.
15530         (_LT_LANG_CXX_CONFIG): Ditto.
15531
15532         * configure.ac (APIVERSION): New substituted variable.
15533         (pkgvdatadir): Ditto.  Versioned data directory.
15534         (pkgvmacrodir): Ditto.  Versioned aclocal directory.
15535         (LN): New check for LN command.
15536         * Makefile.am (aclocal_DATA): Replaced with...
15537         (pkgvmacro_DATA): ...this.
15538         (install-data-local): Remove old shared resources.
15539         (install-exec-hook): Make versioned links to executables.
15540         (uninstall-hook): Remove versioned files.
15541         * libltdl/Makefile.am (ltdldatadir): Redefine in terms of
15542         pkgvdatadir.
15543         * libltdl/loaders/Makefile.am (ltdldatadir): Ditto.
15544         * libtoolize.m4sh: Copy macro files from versioned macro directory
15545         instead of shared aclocal directory.
15546         * doc/libtool.texi: Document it.
15547         * NEWS: Updated.
15548
15549 2004-11-10  Gary V. Vaughan  <gary@gnu.org>
15550
15551         From James Henstridge <james@jamesh.id.au>:
15552         * m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4: Added commented out
15553         empty macro definitions to match each AU_DEFUN to help aclocal
15554         from automake-1.4 regexps find the right libtool macro files.
15555
15556 2004-11-10  James E Wilson  <wilson@specifixinc.com>,
15557             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15558
15559         * config/ltmain.m4sh (func_mode_link), tests/Makefile.am,
15560         Fix error message with `-objectlist' file that does not exist.
15561         * tests/objectlist.test:  New test for this.
15562
15563         * Makefile.am: config/ltmain.sh is generated by
15564         config/ltmain.m4sh.
15565
15566 2004-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15567
15568         * doc/libtool.texi (Compile mode, Link mode,
15569         Libltdl interface, Test descriptions, libtool script
15570         contents): Some quote cleanup, more use of texinfo types.
15571
15572         * doc/libtool.texi (libtool script contents):
15573         echo is now ECHO; mention argument restriction.
15574
15575         * doc/libtool.texi (Multiple dependencies): Minor rewording.
15576
15577         * doc/libtool.texi (User defined module data, References):
15578         indentation and word-wrap cleanup.
15579
15580         * doc/libtool.texi (all over): White space cleanup:
15581         two spaces at start of sentence, no TABs.
15582
15583 2004-11-09  Gary V. Vaughan  <gary@gnu.org>,
15584             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15585
15586         * doc/libtool.texi (libtool script contents): Fix description
15587         of need_lib_prefix.
15588
15589 2004-11-08  Peter Ekberg  <spam.protected>
15590
15591         * config/ltmain.m4sh (func_mode_link): forward thread
15592         related flags to dependent applications and libraries
15593         by adding them to `inherited_linker_flags'.
15594
15595 2004-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15596
15597         * m4/ltoptions.m4: Change all references of LT_LIBTOOL_INIT
15598         to LT_INIT.
15599
15600 2004-11-05  Peter Ekberg  <spam.protected>
15601
15602         * ltmain.m4sh (cwrappersource): clean up other warning on MinGW.
15603
15604 2004-11-04  Bernhard Fischer  <spam.protected>,
15605             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15606
15607         * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS), m4/ltoptions.m4
15608         (_LT_SET_OPTIONS), README, README.alpha: Typos.
15609
15610 2004-11-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15611
15612         * libltdl/ltdl.c (parse_dotla_file): Fix memleak.
15613
15614         * ltmain.m4sh (cwrappersource): Cast isalpha arguments correctly.
15615
15616 2004-11-03  Peter Ekberg  <spam.protected>
15617
15618         * ltmain.m4sh (cwrappersource): clean up warnings and
15619         #include errors on MinGW.
15620
15621 2004-11-01  Peter Ekberg  <spam.protected>
15622
15623         * config/ltmain.m4sh (cwrappersource): clean up warnings and
15624         #include errors.
15625
15626 2004-11-01  Peter Ekberg  <spam.protected>
15627
15628         Sometimes, a wrapper script is generated for an executable that,
15629         itself, does not link against an uninstalled library.  It appears
15630         that this can happen if you are building a project where:
15631
15632           (1) there is a library
15633           (2) there is an executable that does not, itself, link against
15634               that library
15635
15636         In this case, notinst_deplibs is empty, and when the wrapper
15637         script is loaded by libtool during ./libtool mode=install, there
15638         is a check for "is notinst_deplibs empty".  In this case, it is,
15639         so libtool reports an error.
15640
15641         I don't think it is wrong to have a wrapper script for an exe that
15642         *technically* doesn't need it.  But instead of checking for
15643         notinst_deplib nonempty as a proxy for "did wrapper script get
15644         sourced into my environment properly" a different var should be
15645         used.
15646
15647         * config/ltmain.m4sh (func_mode_install): set new variable
15648         `generated_by_libtool_version' in wrapper script when using
15649         libtool_install_magic.  When verifying that wrapper script was
15650         properly sourced, check that `generated_by_libtool_version' is
15651         non-empty, instead of using notinst_deplibs.
15652
15653 2004-11-01  Charles Wilson  <spam.protected>,
15654             Peter Ekberg  <spam.protected>
15655
15656         * config/ltmain.m4sh (func_mode_install): On Windows based hosts,
15657         ensure that import libraries don't get stripped.
15658         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): On Windows based hosts,
15659         use postinstall_cmds to strip DLL (not import lib!) when symbol
15660         stripped installation was requested.
15661
15662 2004-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15663
15664         * libltdl/ltdl.c (loader_init_callback): Back out broken cast.
15665
15666         * libltdl/ltdl.c (loader_init_callback, lt_dlexit): Add casts to
15667         target type.
15668
15669         * tests/defs.m4sh (func_exec): `shift'ing when there is nothing
15670         to shift is non-portable.
15671
15672 2004-10-28  Patrick Welche  <prlw1@newn.cam.ac.uk>,
15673             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15674
15675         * Makefile.am, Makefile.maint: Use path for dependencies built
15676         in the source tree, to cater for BSD make.
15677
15678 2004-10-24  Noah Misch  <noah@cs.caltech.edu>
15679
15680         * config/ltmain.m4sh (func_lalib_p, func_ltwrapper_p): New
15681         functions that abstract .la sanity checking.
15682         (func_mode_execute, func_mode_install, func_mode_link)
15683         (func_mode_uninstall): Use them.
15684
15685 2004-10-24  Gary V. Vaughan  <gary@gnu.org>
15686
15687         * config/ltmain.m4sh (opt_silent): Whether --silent was given.
15688         (run, show): Deleted.  All callers converted to opt_dry_run,
15689         opt_silent or calls to func_show_eval.
15690         * tests/mdemo-dryrun.test: Adjust.
15691
15692         * HACKING: Fix a typo in the gpg --verify instructions.
15693
15694         * Makefile.maint (cvs-dist): Generate signatures and directives
15695         for bz2 upload.
15696
15697 2004-10-23  Peter O'Gorman  <peter@pogma.com>
15698
15699         * config/ltmain.m4sh (func_mode_link): Make Gary's new tests
15700         pass. When the output wrapper script is not in the current
15701         directory, we can not use an rpath which is relative to the
15702         current directory. Use an absolute path instead.
15703
15704 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
15705
15706         * clcommit.m4sh: Add --rcfile option.
15707
15708         * clcommit.m4sh: Updated again, to support file list limited
15709         commits to CVS, and to fix another occurence of the bash bug
15710         that was preventing non-tla users from sending a commit mail.
15711
15712 2004-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15713
15714         * TODO, libltdl/lt_error.h, libltdl/ltdl.c, libltdl/ltdl.h:
15715         Undo accidental commit.
15716
15717         * Makefile.maint: Fix typo.
15718
15719 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
15720
15721         * clcommit.m4sh, config/mailnotify.m4sh: Updated from
15722         cvs-utils--tla--1.0 to fix quoting of metachars in patch names.
15723
15724         * HACKING: Updated: `.in' files are now `.m4sh'; document some
15725         more coding standards for these files.
15726
15727         * config/general.m4sh (sed_double_backslash): Undo an
15728         over-optimisation.
15729
15730 2004-10-21  Gary V. Vaughan  <gary@gnu.org>
15731
15732         * AUTHORS: Reformatted to better reflect the current state of
15733         Libtool maintainership.
15734         * THANKS: Reformatted to give maintainers a quick way to look
15735         up who has supplied FSF paperwork.
15736
15737 2004-10-21  Noah Misch  <noah@cs.caltech.edu>,
15738             Gary V. Vaughan  <gary@gnu.org>
15739
15740         * config/general.m4sh (sed_double_backslash): Improve this sed
15741         expression to correct left anchored \$ input to
15742         double_quote_subst, as well as backslash escaped $ preceded by
15743         any odd-numbered amount of \ characters.
15744
15745 2004-10-20  Gary V. Vaughan  <gary@gnu.org>
15746
15747         * config/general.m4sh (sed_double_backslash): New sed expression
15748         to escape \$ properly in combination with double_quote_subst.
15749         (func_quote_for_eval): Four space indent margin for functions!
15750         (func_quote_for_expand): Use $sed_double_backslash.
15751         (func_show_eval): New function that echos an escaped but variable
15752         expanded command, and then evaluates it.
15753
15754 2004-10-20  Noah Misch  <noah@cs.caltech.edu>,
15755             Gary V. Vaughan  <gary@gnu.org>
15756
15757         * m4/libtool.m4 (sed_quote_subst): Remove superfluous backslashes
15758         from the match character set.
15759         (double_quote_subst): Ditto.
15760         * config/general.m4sh (sed_quote_subst): Ditto.
15761         (double_quote_subst): New variable, copied from
15762         m4/libtool.m4. Much the same as sed_quote_subst, but variable
15763         references are not quoted.
15764         (func_quote_for_eval): Given any $foo; $bar and
15765         $foo must be identical after the following commands:
15766             func_quote_for_eval "$foo"
15767             eval "bar=$func_quote_for_eval_result"
15768         (func_quote_for_expand): In a similar vein to to func_quote_for_eval,
15769         except that variable expansions are not protected when quoting the
15770         command for subsequent display.
15771         * config/ltmain.m4sh: Factor away use of $sed_quote_subst now that
15772         it has been subsumed into func_quote_for_eval.
15773         (func_mode_link): Instead of `2004-10-14 Peter O'Gorman' below,
15774         use func_quote_for_expand so that ${wl} is expanded properly in
15775         the $show expression.
15776
15777 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
15778
15779         * config/ltmain.m4sh (func_mode_finish): solaris-2.6 also has
15780         crle(1).
15781         Reported by Albert Chin-A-Young <china@thewrittenword.com>
15782
15783 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
15784
15785         Add some new tests for Libtool's support of Automake
15786         subdir-objects builds.  This marks the beginning of a move to an
15787         Autotest driven test framework, which will eventually allow us to
15788         trim away many of the generated files in the current test demo
15789         subdirectories:
15790
15791         * configure.ac (AC_CONFIG_TESTDIR): Re-enable commented out
15792         Autotest macros.
15793         (AUTOTEST, M4SH): Use --language long hand.
15794         * bootstrap: Generate tests/testsuite, and by implication
15795         tests/package.m4.
15796         * Makefile.am (edit): Add substitutions needed to generate
15797         tests/package.m4 from bootstrap.
15798         (check-recursive): Add tests/testsuite.
15799         (TESTSUITE): The new Autotest testsuite target.
15800         (TESTSUITE_AT): The Autotest sources.
15801         (EXTRA_DIST): Distribute the generated testsuite and sources.
15802         (tests/package.m4): Use $(edit) to propagate package metadata to
15803         the new tests.
15804         (tests/testsuite): Build the testsuite.
15805         (tests/atconfig): How to regenerate the file.
15806         (check-local): Hook Autotest into `make check'.
15807         (installcheck-local): Run the testsuite on the installed tree.
15808         (clean-local): Tidy our file droppings.
15809         * tests/Makefile.am: Remove bitrotted code from Autotest
15810         experiments in Autoconf 2.52 era.  Updated the rest and moved into
15811         Makefile.am.
15812         * tests/testsuite.at: New container for Autotest test groups.
15813         * tests/am-subdir.at: New test group for compatibility with
15814         Automake's subdir-objects builds.  Currently holds two tests, one
15815         for a C project and another similar project in C++.
15816         * TODO: Add an entry to remind us that these new tests expose a
15817         bug in libtool.
15818         * NEWS: Updated.
15819
15820 2004-10-14  Peter O'Gorman  <peter@pogma.com>
15821
15822         * config/ltmain.m4sh: Revert most of my last commit, only eval
15823         \$show \"$cmds\", and only when building a library. I'm a wimp.
15824         Thanks Gary for pointing out errors in previous commit.
15825
15826 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
15827
15828         * config/ltmain.m4sh (func_mode_finish): Mention crle(1) on
15829         solaris 2.7 and higher in the finalisation notes.
15830         Reported by Kurt J. Lidl <lidl@pix.net>
15831
15832         * tests/cdemo-undef.test: New test for hosts that allow shared
15833         libraries with undefined symbols, but have no C++ compiler
15834         installed.
15835         * tests/Makefile.am (COMMON_TESTS): Add it.
15836
15837 2004-10-13  Peter O'Gorman  <peter@pogma.com>
15838
15839         * config/ltmain.m4sh: Make sure that we $show what we will $run,
15840         use eval $show if we do $run eval.
15841
15842 2004-10-13  Charles Wilson  <spam.protected>
15843
15844         * config/ltmain.m4sh: add foo/bin for every foo/lib
15845         in dllsearchpath when creating wrapper script.  Fixes
15846         depdemo-relink test failure.
15847
15848 2004-10-12  Charles Wilson  <spam.protected>
15849
15850         * config/ltmain.m4sh (func_mode_link): don't relink
15851         on cygwin/mingw; no need.  But do ensure that wrappers
15852         are created unless doing a purely static build.
15853
15854 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
15855
15856         * tests/tagdemo-undef.test: New test for hosts that allow shared
15857         libraries with undefined symbols.
15858         * tests/Makefile.am (CXX_TESTS): Add it.
15859
15860 2004-10-11  Charles Wilson  <spam.protected>
15861
15862         * tests/link.test: Fix check for use of libnlsut.a under
15863         Cygwin.
15864
15865 2004-10-11  Noah Misch  <noah@cs.caltech.edu>
15866
15867         * tests/quote.test: Do not look for $preargs in the output,
15868         because libtool may change them.
15869
15870 2004-10-10  Charles Wilson  <spam.protected>
15871
15872         * config/ltmain.m4sh: Really don't require versions of GNU
15873         sed newer than 3.02 for Cygwin and MinGW, and don't break
15874         dryrun mode.
15875
15876 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15877
15878         * config/getopt.m4sh: Under MinGW, reported paths may include ':'
15879         so ':' should not be used as the sed delimiter.  Use '*' instead
15880         since it is very unlikely to appear in a path.
15881
15882 2004-10-10  Albert Chin-A-Young  <china@thewrittenword.com>
15883
15884         * config/ltmain.m4sh: Don't require versions of GNU sed newer than
15885         3.02 for Cygwin and MinGW.
15886
15887 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15888
15889         * tests/pdemo-inst.test: Correction for mis-application of
15890         Charles Wilson's earlier patch.
15891
15892 2004-10-09  Gary V. Vaughan  <gary@gnu.org>
15893
15894         * m4/libtool.m4 (_LT_LANG_F77_CONFIG): Make sure the save and
15895         restore code for CC is nested at the same depth.
15896         (_LT_LANG_CXX_CONFIG): Ditto, but for several variables.
15897
15898 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15899
15900         Update to the latest commit and mailnotify scripts from
15901         gary@gnu.org--2004/cvs-utils--tla--1.0:
15902
15903         * commit, config/mailnotify: Removed.  Now built from...
15904         * clcommit.m4sh, config/mailnotify.m4sh: ...these new sources.
15905         * Makefile.maint (commit, config/mailnotify): How to build them.
15906         * bootstrap: If we have a checked out tree (i.e. clcommit.m4sh
15907         is present), then build them.
15908
15909 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15910
15911         Fix some issues that mangled the reexecution path to a script,
15912         and thus prevented it from finding itself:
15913
15914         * config/general.m4sh (progname): Don't actually change the name
15915         of the script if it begins with a `-', just prepend `./'.
15916         (progpath): Add a new clause that first searches the execution
15917         PATH, and then finally assumes this script is in the current
15918         working directory if $progname has no directory separators (e.g
15919         when invoked as `$SHELL progname').
15920
15921 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15922
15923         * config/general.m4sh (func_verbose): Work around a bash bug in
15924         shell functions.
15925
15926 2004-10-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
15927
15928         * tests/pdemo-inst.test: pdemo-inst should depend on pdemo-make.
15929         * config/ltmain.m4sh: Windows and Cygwin reserve the .lnk
15930         extension to represent shortcuts.  Use the extension ".lnkscript"
15931         rather than ".lnk" for the piecewise linking ld script in order to
15932         avoid the conflict.
15933
15934 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15935
15936         * libltdl/ltdl.c (lt_dlexit, lt_dlpath_insertdir): Fix memleaks,
15937         free user_search_path on lt_dlexit.
15938
15939 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15940
15941         * tests/sh.test: Remove tests which fail on AS_SHELL_SANITIZE
15942         from autoconf >= 2.59.
15943
15944         * TODO: Remove item: no need for a libltdl without stdio.
15945
15946 2004-10-07  Gary V. Vaughan  <gary@gnu.org>
15947
15948         * tests/defs.m4sh (scripts): Actually scan the generated ltmain.sh
15949         for shell portability problems.
15950
15951         * m4/libtool.m4 (_LT_FORMAT_COMMENT): Shell meta-characters in
15952         _LT_DECL descriptions were not being escaped before injection into
15953         TAG CONFIG here documents in config.status.
15954
15955 2004-10-06  Peter O'Gorman  <peter@pogma.com>
15956
15957         * m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77): New macros to work
15958         around the deficiencies in AC_PROG_CXX and AC_PROG_F77.
15959         * configure.ac: Cleaned up, having moved the checks for compilers
15960         which do not exist to libtool.m4.
15961
15962 2004-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15963
15964         * libltdl/ltdl.c (try_dlopen): Move .la file parsing
15965         part.. (parse_dotla_file): ..here.  Adjust.
15966
15967         * libltdl/ltdl.c (load_deplibs, try_dlopen): Revert unnecessary casts
15968         to int from my patch from 2004-10-01.
15969
15970         * AUTHORS: Add myself.
15971
15972 2004-10-05  Peter O'Gorman  <peter@pogma.com>
15973
15974         * config/ltmain.m4sh [darwin]: Make the -dylib_file flag work on
15975         older darwins too. Reported by Christoph Egger.
15976
15977 2004-10-05  Gary V. Vaughan  <gary@gnu.org>
15978
15979         * configure.ac: Bumped version to 2.1a.
15980
15981 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
15982
15983         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Don't confuse $ECHO
15984         with $lt_ECHO, or we always get a libtool with ECHO=echo, rather
15985         than testing for a mechanism that quotes \ properly.
15986         * NEWS: Updated.
15987
15988         * config/ltmain.m4sh: Need to include getopt.m4sh earlier so that
15989         progpath is set before it is called to --no-reexec.
15990         * NEWS: Updated.
15991
15992 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
15993
15994         Without this change, the distributed libtool tarball has a
15995         dependency on autom4te.  There was some inconsistency in the
15996         filenames: now we have foo.m4sh -> m4sh -> foo.in -> configure
15997         -> foo[.sh].  Bootstrap runs the m4sh steps and the resulting .in
15998         files are distributed:
15999
16000         * tests/Makefile.am (EXTRA_DIST): Distribute defs.m4sh.
16001         * Makefile.am (EXTRA_DIST): Distribute libtoolize.m4sh.
16002         (libtoolize.in, libtoolize): Split into bootstrap and runtime
16003         stages.
16004         ($(top_srcdir)/tests/defs.in, $(top_srcdir)/tests/defs): Ditto.
16005         ($(top_srcdir)/config/ltmain.sh): Swap ltmain.m4sh and ltmain.in
16006         names.
16007         * bootstrap: Make libtoolize.in and tests/defs.in.
16008         * NEWS: Updated.
16009
16010 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
16011
16012         * README, README.alpha: Update notes regarding available VERBOSE
16013         settings.
16014
16015 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
16016
16017         * config/ltmain.in: Change $XSED to $Xsed to fix hang noticed
16018         under MinGW.
16019         * tests/defs.in: Support VERBOSE=debug to enable shell tracing
16020         while running tests.
16021
16022 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
16023
16024         * NEWS: Updated.
16025         * configure.ac: Bumped version to 1.9e.
16026
16027         GNU libtool 1.9d was released.
16028
16029         * configure.ac: Bumped version to 1.9d.
16030         * NEWS: Updated.
16031
16032         * libltdl/lt__alloc.h (lt__alloc_die): Declare with LT_SCOPE as
16033         per Ralf's original patch.
16034         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
16035
16036         * libltdl/Makefile.am (libltdlc_la_LIBADD): Don't use
16037         libdlloader_la_OBJECTS, an undocumented Automake internal
16038         variable...
16039         (libltdlc_la_SOURCES): ...use libdlloader_la_SOURCES here
16040         instead.
16041         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
16042
16043         * libltdl/argz_.h: Forgot to spell lt_system.h with just one `_'.
16044
16045         * libltdl/argz_.h: Forgot to include lt__system.h for LT_SCOPE
16046         definition.
16047
16048 2004-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
16049             Gary V. Vaughan  <gary@gnu.org>
16050
16051         * libltdl/lt__alloc.h: Declare exported functions with LT_SCOPE
16052         for mingw32.
16053         * libltdl/lt__dirent.h: Ditto.
16054         * libltdl/argz._h: Ditto.  Be careful about not requiring
16055         additional libltdl files when used outside of libltdl.
16056         * libltdl/slist.h: Ditto.
16057         * HACKING: Add a section on libltdl implementation layering.
16058
16059 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
16060
16061         * tests/quote.test: echo is called ECHO now.  Make sure we extract
16062         the value of ECHO from the libtool script.
16063         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
16064
16065 2004-10-02  Gary V. Vaughan  <gary@gnu.org>
16066
16067         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7*]: Revert my
16068         hack from 2004-09-30 now that I've removed /lib/hello.la and the
16069         tests work properly for me again.
16070
16071 2004-10-02  Jim Tison  <jtison@us.ibm.com>
16072
16073         Initial support for s390x-ibm-tpf:
16074
16075         * m4/libtool.m4: Correct obvious spelling errors in remarks.
16076         (_LT_ENABLE_LOCK): Make s390x-ibm-tpf hosts adopt elf64_s390
16077         conventions.
16078         (_LT_SYS_DYNAMIC_LINKER): Set defaults for s390x-ibm-tpf host.
16079         (_LT_CHECK_MAGIC_METHOD): Skip all dependency checks for
16080         s390x-ibm-tpf hosts.
16081         (_LT_LINKER_SHLIBS): Make s390x-ibm-tpf hosts adopt GNU/Linux OS
16082         attributes.
16083         * NEWS: Updated.
16084
16085 2004-10-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16086
16087         * config/ltmain.in (func_mode_install): Need to set $tmpdir before
16088         using it.
16089
16090         * config/ltmain.in (func_mode_link): Fix quoting bug.  Fixes
16091         e.g. the quoting of the -export-symbols-regex argument in .la
16092         files' relink_command.
16093
16094         * libltdl/lt__alloc.c (lt__memdup): Allocation can fail, so we
16095         need to guard against null pointer dereference here.
16096         * libltdl/ltdl.c (lt_dlcaller_register): Ditto.
16097
16098         * libltdl/slist.c (slist_foreach): result was declared as
16099         inner variable, shadowing the actually returned value.
16100
16101         * libltdl/ltdl.c (load_deplibs, try_dlopen): Cast argument
16102         to isspace/isalnum to the correct range.  Also, cast to int to
16103         avoid compiler warnings.
16104
16105 2004-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16106
16107         * libltdl/ltdl.c (try_dlopen): Fix null pointer dereference in
16108         case the name given to lt_dlopen contains no extension.
16109
16110         * libltdl/lt_dlloader.c (lt_dlloader_remove), libltdl/ltdl.c
16111         (tryall_dlopen, lt_dlhandle_next): Show usage of function pointers.
16112
16113         * doc/libtool.texi (LT_INIT, Using libltdl)
16114         (Module loaders for libltdl, Multiple dependencies)
16115         (libtool script contents): Fix several typos (trivial change).
16116         Also, libltdl consists of more than two small files.
16117
16118 2004-09-30  Gary V. Vaughan  <gary@gnu.org>
16119
16120         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7]: My Panther
16121         workstation doesn't hardcode the shared library path, although it
16122         used to, so this is more likely a function of the binutils and/or
16123         gcc I am using at the moment.  The hardcode value setting code for
16124         the configure script sucks at the moment though...
16125         * TODO: ...and needs to do a test compile instead of a table
16126         lookup before 2.0 final.
16127
16128         * m4/libtool.m4 (echo): Use ECHO throughout for consistency with
16129         config/ltmain.in.
16130         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16131
16132         * m4/libtool.m4 (rm): Use RM throughout for consistency with
16133         config/ltmain.in.
16134         Reported by Charles Wilson <cwilson@spam.protected>
16135
16136 2004-09-27  Peter O'Gorman  <peter@pogma.com>
16137
16138         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
16139         output during configure. (Really this time, honest)
16140
16141 2004-09-26  Albert Chin-A-Young  <china@thewrittenword.com>
16142
16143         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [aix]: In archive_expsym_cmds,
16144         move -bnoentry linker option before $compiler_flags to honor any
16145         possible -e entries in LDFLAGS.
16146
16147 2004-09-25  Gary V. Vaughan  <gary@gnu.org>
16148
16149         * config/ltmain.in (func_mode_link): When linking an installed
16150         libtool library on the command line using -lfoo we need to find
16151         the library in the search paths and add it's dependency_libs to
16152         the link in the conv pass so that any libtool libs listed are
16153         correctly expanded in the link pass.
16154
16155 2004-09-24  Charles Wilson  <cwilson@spam.protected>
16156
16157         * libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Revert changeset from
16158         `2004-09-22  Charles Wilson  <cwilson@spam.protected>'.
16159
16160 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
16161
16162         * config/general.m4sh (Xsed): Set a default when not used from
16163         ltmain.in.
16164         (ECHO): Audit for (and correct!) uses of $ECHO with more than one
16165         argument, which breaks when ECHO='printf %s\n', and with possible
16166         `-' as first character of the argument, which breaks `print -r'
16167         and some implementations of `echo'.
16168         * config/ltmain.in, tests/defs.in, libtoolize.in (ECHO): Ditto.
16169         Reported by Albert Chin-A-Young <china@thewrittenword.com>
16170
16171 2004-09-24  Peter O'Gorman  <peter@pogma.com>
16172
16173         * m4/libtool.m4 (_LT_CMD_STRIPLIB) [darwin]: strip archives too.
16174
16175         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
16176         output during configure.
16177
16178 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
16179
16180         * m4/libtool.m4 (_LT_DECL_EGREP): Only the newest CVS autoconf
16181         AC_SUBSTs for GREP.  Do our own here too to cater for release
16182         autoconfen.
16183
16184         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [openbsd3.3]: Set
16185         need_version to yes or no depending on the os release.
16186         Reported by Dalibor Topic <robilad@kaffe.org>
16187
16188 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
16189
16190         * tests/cdemo-conf.test, tests/cdemo-exec.test,
16191         tests/cdemo-make.test, tests/cdemo-shared.test,
16192         tests/cdemo-static.test, tests/demo-conf.test,
16193         tests/demo-deplibs.test, tests/demo-exec.test,
16194         tests/demo-hardcode.test, tests/demo-inst.test,
16195         tests/demo-make.test, tests/demo-nofast.test,
16196         tests/demo-noinst-link.test, tests/demo-nopic.test,
16197         tests/demo-pic.test, tests/demo-relink.test,
16198         tests/demo-shared.test, tests/demo-static.test,
16199         tests/demo-unst.test, tests/depdemo-conf.test,
16200         tests/depdemo-exec.test, tests/depdemo-inst.test,
16201         tests/depdemo-make.test, tests/depdemo-nofast.test,
16202         tests/depdemo-relink.test, tests/depdemo-shared.test,
16203         tests/depdemo-static.test, tests/depdemo-unst.test,
16204         tests/f77demo-conf.test, tests/f77demo-exec.test,
16205         tests/f77demo-make.test, tests/f77demo-shared.test,
16206         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
16207         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
16208         tests/mdemo-exec.test, tests/mdemo-inst.test,
16209         tests/mdemo-make.test, tests/mdemo-shared.test,
16210         tests/mdemo-static.test, tests/mdemo-unst.test,
16211         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
16212         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
16213         tests/pdemo-exec.test, tests/pdemo-inst.test,
16214         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
16215         tests/suffix.test, tests/tagdemo-conf.test,
16216         tests/tagdemo-exec.test, tests/tagdemo-make.test,
16217         tests/tagdemo-shared.test, tests/tagdemo-static.test,
16218         tests/tagtrace.test: POSIX `.' searches only in user's $PATH, so
16219         we must use `. ./defs' to source the common code.
16220         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
16221
16222         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Gah.  Merge error
16223         corrected.
16224
16225 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
16226
16227         Since defs can change (path to grep for example) when it is made
16228         for a different host, it can't be shipped.  That also means that
16229         defs will always be generated in the build tree, so each test case
16230         can have the srcdir discovery factored away into tests/defs.in:
16231
16232         * Makefile.am (EXTRA_DIST): s/defs/defs.in/g
16233         * tests/Makefile.am (defs): New rule to remake defs from the
16234         parent directory's Makefile.
16235         * tests/cdemo-conf.test, tests/cdemo-exec.test,
16236         tests/cdemo-make.test, tests/cdemo-shared.test,
16237         tests/cdemo-static.test, tests/demo-conf.test,
16238         tests/demo-deplibs.test, tests/demo-exec.test,
16239         tests/demo-hardcode.test, tests/demo-inst.test,
16240         tests/demo-make.test, tests/demo-nofast.test,
16241         tests/demo-noinst-link.test, tests/demo-nopic.test,
16242         tests/demo-pic.test, tests/demo-relink.test,
16243         tests/demo-shared.test, tests/demo-static.test,
16244         tests/demo-unst.test, tests/depdemo-conf.test,
16245         tests/depdemo-exec.test, tests/depdemo-inst.test,
16246         tests/depdemo-make.test, tests/depdemo-nofast.test,
16247         tests/depdemo-relink.test, tests/depdemo-shared.test,
16248         tests/depdemo-static.test, tests/depdemo-unst.test,
16249         tests/f77demo-conf.test, tests/f77demo-exec.test,
16250         tests/f77demo-make.test, tests/f77demo-shared.test,
16251         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
16252         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
16253         tests/mdemo-exec.test, tests/mdemo-inst.test,
16254         tests/mdemo-make.test, tests/mdemo-shared.test,
16255         tests/mdemo-static.test, tests/mdemo-unst.test,
16256         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
16257         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
16258         tests/pdemo-exec.test, tests/pdemo-inst.test,
16259         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
16260         tests/suffix.test, tests/tagdemo-conf.test,
16261         tests/tagdemo-exec.test, tests/tagdemo-make.test,
16262         tests/tagdemo-shared.test, tests/tagdemo-static.test,
16263         tests/tagtrace.test: Removed srcdir discovery boilerplate...
16264         * tests/defs.in: ...and put it here.
16265
16266 2004-09-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16267
16268         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): move symcode calculation
16269         to correct place.
16270         * doc/libtool.texi (libtool script contents): update description
16271         of global_symbol_to_cdecl.
16272
16273 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
16274
16275         * configure.ac (M4SH): AC_SUBST m4sh expander.
16276         * config/general.m4sh, config/getopt.m4sh: New files with factored
16277         out functionality from...
16278         * config/ltmain.in, libtoolize.in: ...here.  m4_include the shared
16279         code, and call AS_SHELL_SANITIZE.  Also quote all `[' and `]' to
16280         survive m4 run.
16281         (func_serial): No need to double up m4sh quotes after a `#'.
16282         (func_check_macros): Escape `dnl' to stop m4sh interpreting it as
16283         a macro.
16284         * tests/defs.in: New file expanded into tests/defs by autom4te.
16285         * m4/libtool.m4 (_LT_DECL_EGREP): Also require fgrep for the tests
16286         that use it.
16287         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Now built with
16288         M4SH.
16289         (libtoolize): Ditto.
16290         * bootstrap: Set M4SH for call to make.
16291         * HACKING: No need to sync to AS_SHELL_SANITIZE by hand any more.
16292
16293         * m4/libtool.m4: _LT_DECL uppercase ECHO.
16294         * config/ltmain.in: Use it throughout.
16295         (func_mkdir_p): Now matches the other implementations in
16296         tests/defs and libtoolize.in.
16297         * tests/sh.test: Updated to detect ECHO misuse.
16298
16299 2004-09-22  Gary V. Vaughan  <gary@gnu.org>
16300
16301         * config/ltmain.in (func_mode_link): Propagate a convenience
16302         library's dependency libs correctly when it is being linked into a
16303         libtool library.  Deplibs are now propagated whether libdir is set
16304         or not.
16305
16306 2004-09-22  Andreas Schwab  <schwab@suse.de>
16307
16308         The dlpreopen pass over libraries reverses the elements in the
16309         $deplibs list.  This causes problems when the link pass tries to
16310         find libraries when they are located in non-standard places
16311         denoted by -L options.  Due to the reversed order these -L options
16312         occur after the libraries that need them, and they are not found:
16313
16314         * config/ltmain.in: (Un)Reverse $deplibs list at the start of the
16315         link pass in lib mode.
16316
16317 2004-09-22  Charles Wilson  <cwilson@spam.protected>
16318
16319         * ltmain.in (func_generate_dlsyms) [cygwin, mingw]: when creating
16320         a .exp file for an executable, also create a .def file, and add
16321         that file to the link command via SYMFILES.  This causes binutils
16322         to generate an .edata section, and allows self dlopening to work.
16323         * NEWS: Updated.
16324
16325         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better quoting for
16326         postinstall_cmds and postuninstall_cmds to allow spaces in install
16327         paths.
16328
16329         * config/ltmain.in (func_generate_dlsyms): Addresses in
16330         _preloaded_symbols[] cannot go into .rdata section if symbols are
16331         DATA imported from DLL, on windows, because runtime relocations
16332         must happen.
16333         * m4/libtool.m4 (_LT_LINKER_SHLIBS([TAGNAME])): Build exports for
16334         symbols in .rdata sections.
16335
16336 2004-09-19  Gary V. Vaughan  <gary@gnu.org>
16337
16338         The checks in assign.test are trying to catch case of this ilk:
16339         `foo=bar break', but unfortunately they also choke on `foo=bar;
16340         break' and `foo=bar && break'.  Writing a sophisticated test to
16341         catch just the intended case seems like more trouble than it's
16342         worth, but leaving the test in causes the testsuite to fail on
16343         valid m4sh output:
16344
16345         * tests/assign.test: Removed; chokes on perfectly valid shell
16346         syntax.
16347         * tests/Makefile.am (COMMON_TESTS): Remove assign.test.
16348         * tests/defs.in (scripts): Don't check the m4sh inputs, go back
16349         to checking the generated ltmain.sh script.
16350
16351 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
16352
16353         * config/ltmain.in (func_echo): Except for multi-line warnings and
16354         errors, always use func_echo.  $show is for command output, and
16355         $echo is for internal use in backtick expressions and similar.
16356
16357 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
16358
16359         Missed a couple of MKDIR_P references in ltmain.in in my last
16360         patch; fix them carefully.  Introduce an opt_dry_run to ltmain.in
16361         so that the implementations of func_mkdir_p can converge, and a
16362         func_mktempdir to do a better job of temporary directory creation:
16363
16364         * libtoolize.in (func_mkdir_p): Don't fail if the directory wasn't
16365         created in dry run mode.
16366         * tests/defs (func_mkdir_p): Ditto.  We don't actually have a dry
16367         run mode for the tests, but the function is written carefully to
16368         be kept in synch and work correctly here too.
16369         * config/ltmain.in (func_mkdir_p): Ditto.  This copy of the
16370         function now only differs in its use of $echo over $ECHO.
16371         (func_extract_archive): Removed first redundant mkdir call.
16372         (func_mktempdir): New function that tries to avoid races when
16373         making temporary directories.
16374         (opt_dry_run): Set this if --dry-run is given at the CLI, or if
16375         tests/mdemo-dryrun.test has forced the value of $run.
16376         (func_mode_install): Call $MKDIR directly and error out if the
16377         directory cannot be created.
16378         (func_mode_link): Rather than copying func_mkdir_p into the
16379         wrapper script as a replacement for $MKDIR_P, we know that the
16380         script won't be called my `make -j', so write the current value of
16381         $MKDIR.
16382
16383 2004-09-17  Peter O'Gorman  <peter@pogma.com>
16384
16385         * m4/libtool.m4: remove an extra "]"
16386
16387         * m4/libtool.m4 [darwin] (_LT_LANG_CXX_CONFIG): Changes for 10.4.
16388         * config/libtool.in [darwin]: ditto.
16389
16390 2004-09-16  Gary V. Vaughan  <gary@gnu.org>
16391
16392         My most recent `2004-09-02 Gary V. Vaughan' patch for mkdir_p
16393         below is horrendously broken since it makes the installed libtool
16394         try to run the mkinstalldirs or install-sh helper scripts.  This
16395         patch fixes the `make -j' mkdir race condition internally:
16396
16397         * libtoolize.in (func_mkdir_p): New slice and dice algorithm
16398         to build the directory tree one dir at a time, ignoring errors
16399         until the end incase they are transient due to a concurrent
16400         identical mkdir.
16401         * tests/defs (func_mkdir_p): Ditto.
16402         * config/ltmain.in (func_mkdir_p): Ditto, except that ltmain.in
16403         uses $echo rather than $ECHO, and uses $show and $run to interact
16404         correctly with the command line.
16405         * configure.ac (AM_INIT_AUTOMAKE): 1.8 is sufficient again.
16406         * Makefile.am (edit): Don't substitute automake's $(mkdir_p).
16407         * NEWS: Updated.
16408
16409 2004-09-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
16410
16411         * libltdl/loaders/loadlibrary.c: Compilation fixes (originally
16412         from Gary V. Vaughan) to compile under MinGW.
16413         * config/mkstamp: Translate input data so that it is assured to
16414         use the Unix line terminations. This is necessary under Windows if
16415         the files are checked out with CR/NL line terminations. A
16416         side-effect of this change is that input must always be from
16417         stdin. Previously a filename argument was accepted as well.
16418
16419 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16420
16421         * tests/Makefile.am: Use the same CPP, F77, CXX and CXXFLAGS
16422         for the test suite.
16423
16424 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16425
16426         * m4/libtool.m4 (_LT_ENABLE_LOCK):Replace AC_TRY_LINK with
16427         AC_LINK_IFELSE to get rid of `autoconf -Wobsolete' warning.
16428         * m4/ltdl.m4 (LT_LIB_DLLOAD): Ditto.
16429
16430 2004-09-15  Gary V. Vaughan  <gary@gnu.org>
16431
16432         * config/ltmain.in (func_quote_for_eval): Set a return value to
16433         avoid forking at every call.  Changed all callers.
16434         (func_mode_link): Simplified, and removed the final non-portable
16435         nested escaped double quotes in back quotes usage in the process.
16436
16437 2004-09-14  Gary V. Vaughan  <gary@gnu.org>
16438
16439         * config/ltmain.in (func_quote_for_eval): Factor out the ugly
16440         shell meta-character quoting.  Changed all callers.
16441
16442 2004-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16443
16444         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Simplification:
16445         distinguish between data and code symbols on every system.
16446
16447 2004-09-14  Albert Chin-A-Young  <china@thewrittenword.com>
16448
16449         Unfortunately, libtool has no way of telling if unrecognized
16450         compiler flags need an argument or not, and can disect options and
16451         pass parts through incorrectly.  This changeset reverts both
16452         2004-09-06 Albert Chin-A-Young (topmost) and 2004-09-05 Albert
16453         Chin-A-Young below, and recognises more options explicitly:
16454
16455         * config/ltmain.in (func_mode_link): Pass through options needed
16456         to compile in 64-bit mode with gcc, and the SGI, Sun, HP and IBM
16457         compilers.
16458
16459 2004-09-13  Gary V. Vaughan  <gary@gnu.org>
16460
16461         * m4/libtool.m4 (_LT_CMD_GLOBALS_SYMBOLS): Fix a typo I made when
16462         applying 2004-09-11 Ralf Wildenhues.
16463
16464 2004-09-12  Brad  <brad@comstyle.com>
16465
16466         * libtool.m4: Fixes for the OpenBSD support
16467
16468 2004-09-12  Peter O'Gorman  <peter@pogma.com>
16469
16470         Our fortran tests were not very good. All the libraries created
16471         were convenience libs, so we did not test the creation of shared
16472         libraries on any platform. Also none of the libs used any actual
16473         fortran library calls, adding a call to write(*,*) in each lib
16474         causes the tests to fail on darwin (and presumably other platforms).
16475         These new tests would likely cause many more fortran test failures,
16476         so if there is an error during make it is reported as SKIP.
16477
16478         * tests/f77demo-make.test: Don't fail hard, skip on failure.
16479         * tests/f77demo/foof2.f: New file.
16480         * tests/f77demo/foof3.f: New file.
16481         * tests/f77demo/fprogram.f: Call routine in new lib.
16482         * tests/f77demo/foof.f: Call routine in another new lib.
16483         * tests/f77demo/Makefile.am: Make a couple of new libraries, add
16484         $(FLIBS) to cprogram LDADD.
16485
16486 2004-09-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16487
16488         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): The linker distinguishes
16489         data and code symbols on linux-gnu/ia64.  Fixes multiple testsuite
16490         failures.
16491         * NEWS: Updated.
16492
16493 2004-09-06  Gary V. Vaughan  <gary@gnu.org>
16494
16495         * libltdl/loaders/shl_load.c (get_vtable): Typo.
16496
16497 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
16498
16499         Hopefully, passing unrecognised compiler arguments through
16500         unmolested will prove to be a good plan for the 2.0 release.  If
16501         it goes awry, we can get back to where we were by reverting this
16502         patch and the 2004-09-05 Albert Chin-A-Young patch, aka
16503         gary@gnu.org--2004/libtool--devo--1.0--patch-169,172:
16504
16505         * config/ltmain.in (func_mode_link): Because we now pass through
16506         compiler arguments we doesn't recognize, the code to pass
16507         through GCC's -m* arguments is not needed.
16508
16509 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
16510
16511         * Makefile.am (clean-ltmain-sh): Using '==' to test for equality
16512         in a shell script is not portable. Use '=' instead.
16513
16514 2004-09-05  Andreas Schwab  <schwab@suse.de>
16515
16516         * m4/ltdl.m4 (LT_WITH_LTDL): Remove excess quoting in argument of
16517         AC_CONFIG_SUBDIRS.
16518
16519 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
16520
16521         * config/ltmain.in (func_mode_link): Pass otherwise unrecognised +
16522         and - style switches to the compiler.
16523         * NEWS: Updated.
16524
16525 2004-09-05  Gary V. Vaughan  <gary@gnu.org>
16526
16527         * Makefile.am (libtool): Force libtool to be regenerated if
16528         stamp-vcl has changed.
16529
16530 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
16531
16532         * m4/libtool.m4, config/ltmain.in: When calling $LTCC,
16533         pass default $CFLAGS through with $LTCFLAGS.
16534
16535 2004-09-03  David Edelsohn  <dje@watson.ibm.com>
16536
16537         * config/ltmain.in (func_mode_link): Use $pic_object as
16538         $non_pic_object if $non_pic_object=none.
16539         * NEWS: Updated.
16540
16541 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
16542
16543         * bootstrap: Remember that the ltmain.sh generated by bootstrap
16544         is missing most of its substitution values, so force it to be
16545         rebuilt at make time by touching $(top_srcdir)/config/ltmain.in.
16546
16547         From Martin Quinson <mquinson@ens-lyon.fr>
16548         * m4/libtool.m4 (_LT_SETUP, _LT_ENABLE_LOCK, LT_PATH_LD): Use
16549         AS_HELP_STRING to get rid of autoconf -Wobsolete warning
16550         messages.
16551         * m4/ltdl.m4 (LT_WITH_LTDL, _LT_ENABLE_INSTALL): Ditto.
16552         * m4/ltoptions.m4 (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC)
16553         (_LT_ENABLE_FAST_INSTALL, _LT_WITH_PIC): Ditto.
16554         * TODO: Updated
16555
16556 2004-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16557
16558         * libltdl/slist.c (slist_cons): Don't leak the tail of a list.
16559
16560 2004-09-03  Albert Chin-A-Young  <china@thewrittenword.com>
16561
16562         * m4/libtool.m4 (_LT_ENABLE_LOCK): Reformatted.
16563
16564 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
16565
16566         * HACKING: Explain how to verify detached signatures with gpg in
16567         the release announcement templates.
16568
16569         * AUTHORS: Fix typo in my address.
16570
16571 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
16572
16573         Builds of packages that use libtool and make -j produce "directory
16574         already exists warnings" for .lib directory.  Build on automake
16575         wisdom to support make -j builds where a suitable mkdir is
16576         available:
16577
16578         * configure.ac (AM_INIT_AUTOMAKE): Require 1.9, which goes to some
16579         trouble to find a $(mkdir_p) that doesn't interfere with make -j.
16580         * Makefile.am (edit): Substitute for @mkdir_p@.
16581         * config/ltmain.in (MKDIR_P): Take @mkdir_p@ value.
16582         (mkdir): Removed.
16583         (func_mkdir_p): New function to use $MKDIR_P.  Factor out all
16584         previous mkdir calls to use this function.
16585         (RM, MV): Declared as in libtoolize.in.  Changed all callers.
16586         * libtoolize.in (MKDIR_P): Take @mkdir_p@ value from automake.
16587         (func_mkdir_p): Use it, similarly to new config/ltmain.in.
16588         * tests/defs: Synchronize boiler plate code with ltmain.in.
16589         Adjust all callers.
16590         Add missing copyright preamble.
16591         * tests/demo-static.test: Add missing copyright preamble.
16592         * NEWS: Updated.
16593         Reported by Daniel Reed <n@ml.org>
16594
16595 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
16596
16597         * Makefile.am (clean-ltmain-sh): Quote $(top_builddir) for the
16598         shell, incase it is not set when running maintainer rules with
16599         `make -fMakefile.maint'.
16600         Don't show the shell commands.
16601
16602         * AUTHORS: Fix my email address.
16603
16604 2004-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16605
16606         * libltdl/ltdl.c (try_dlopen): Fix memory leak.
16607         * NEWS: Updated.
16608
16609 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
16610             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16611
16612         * libltdl/slist.c, libltdl/slist.h: Merge in changes from latest
16613         upstream.  Mostly comments, formal item boxing, a sort function,
16614         and const madness reduction.
16615         (slist_new): Removed.
16616         (slist_box, slist_unbox, slist_sort): New.
16617         (SListCompare, SListCallback): Swapped!
16618         (slist_remove, slist_find): Change order of parameters for
16619         orthogonality with slist_foreach.  Changed all callers.
16620         * libltdl/lt_dlloader.c (loader_cmp): Renamed to...
16621         (loader_callback): ...this.  Return boxed item.
16622         (lt_dlloader_remove): Adjust to new loader_callback semantics;
16623         unbox each removed item before returning.
16624         Remove unused variable.
16625         Remove const from name parameter, since the slist API cannot
16626         guarantee userdata const-ancy for its callback functions.
16627         (lt_dlloader_find): Adjust to new loader_callback semantics; need
16628         to return the contents of the boxed item.
16629         Remove const from name parameter, since the slist API cannot
16630         guarantee userdata const-ancy for its callback functions.
16631         * libltdl/lt_dlloader.h (lt_dlloader_find, lt_dlloader_remove):
16632         Adjust to new constless footprint.
16633         * libltdl/ltdl.c (ltdl_exit): The global `loaders' list is changed
16634         by `lt_dlloader_remove' while cleaning up, so the address in local
16635         variable `loader' is invalidated.  Since some loaders may be
16636         resident modules that cannot be unloaded (though we have none
16637         yet), we must save each `next' address before calling
16638         `lt_dlloader_remove'.
16639         * NEWS: Updated.
16640         * THANKS: Added Ralf.
16641
16642 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16643
16644         * libltdl/lt_dlloader.c (lt_dlloader_add): Handle malloc failure
16645         from slist_new.
16646         * libltdl/ltdl.c (loader_init): Trust lt_dlloader_add(), don't
16647         overwrite its error type, and simplify.
16648         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16649
16650 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16651
16652         * libltdl/slist.c (slist_new): Handle malloc failure gracefully.
16653
16654 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16655
16656         * libtoolize.in, config/ltmain.in: Add CDPATH protection to
16657         preamble.
16658         * tests/defs: Put a full m4sh.m4 style 'Be Bourne compatible'
16659         preamble in here too.
16660         * HACKING: Note that tests/defs needs synching with m4sh.m4 too.
16661         * TODO: Add new item.
16662
16663         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Use correct cpp
16664         macro name, LT_DLSEARCH_PATH.
16665
16666         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Fix gcc parentheses
16667         warning.
16668         (foreach_dirinpath, try_dlopen, lt_dlpath_insertdir): Fix gcc
16669         signed vs unsigned warning.
16670         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
16671
16672         * m4/libtool.m4 (_LT_PROG_LTMAIN): Simplified in light of
16673         ltmain.sh no longer being in the build tree.
16674         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16675
16676 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16677
16678         * libltdl/loaders/preopen.c: Initialise memory in get_vtable.
16679
16680         * tests/sh.test: Look in the source tree for ltmain.sh.
16681
16682 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16683
16684         Don't use C99 flexible array types as we want to be C89
16685         compatible.  Instead, revert to the old way of doing things with
16686         an array of symbol name vs. address, and adding the originator as
16687         the first symbol but with a NULL address:
16688
16689         * config/ltmain.in (func_extract_dlsyms): Store originator as a
16690         NULL address symbol.
16691         * libltdl/ltdl.h (lt_dlsymbol): Removed.
16692         (lt_dlsymlist): Remove originator field.
16693         (LTDL_SET_PRELOADED_SYMBOLS): Adjust.
16694         * libltdl/loaders/preopen.c (vm_open, lt_dlpreload_open): Adjust
16695         for new types.
16696         (vm_sym): Skip the new originator symbol when scanning symbol
16697         names.
16698         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust preloaded symbols
16699         test file to match.
16700         * NEWS: Updated.
16701         Reported by Andreas Schwab <schwab@suse.de>
16702
16703 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16704
16705         Libtool currently assumes that certain characteristics, such as
16706         enable_shared, apply to the host architecture rather than per-
16707         language.  Running the tests over a broken compiler can corrupt
16708         these values, when there is no C++ compiler for example, so we
16709         skip most of the tests in those cases.
16710
16711         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): If caught_CXX_compiler was
16712         set from configure.ac, then don't run all the compiler tests.
16713         (_LT_LANG_F77_CONFIG): Similarly for caught_F77_compiler.
16714
16715 2004-08-31  Gary V. Vaughan  <gary@gnu.org>
16716
16717         * Makefile.am (clean-ltmain-sh): Remove stale config/ltmain.sh
16718         from the build tree that were left behind by previous versions of
16719         libtool.
16720         ($top_srcdir)/stamp-vcl: Since this rule is already called on
16721         every invocation of make, hook clean-ltmain-sh in here too.
16722         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16723
16724 2004-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16725
16726         * bootstrap: Update warning message to reflect having split
16727         libtool.m4 into several files.
16728         Also, add config/ltmain.sh to list of stale files from previous
16729         versions to be removed before bootstrap.
16730
16731         * libltdl/ltdl.c: Replace strdup with lt__strdup.
16732
16733 2004-08-30  Gary V. Vaughan  <gary@gnu.org>
16734
16735         * config/ltmain.in: Double quote even $# for the sake of sh.test.
16736         (exec_cmd): Be careful about "`\"foo\"`" quoting, even in comments
16737         to avoid triggering the tests in sh.test.
16738
16739         * configure.ac:  Because of the way the autoconf C++ testing
16740         works, we need to call the C test first to work in an environment
16741         that has no C++ compiler.
16742
16743         * libltdl/lt_dlloader.c (lt_dlloader_remove): Since the return
16744         value of this function is often passed to free, don't declare it
16745         `const'. Responsibility for this memory is given back to the
16746         caller on return.
16747         * libltdl/lt_dlloader.h (lt_dlloader_remove): Ditto.
16748         * libltdl/ltdl.c (lt_dlexit): Adjust.
16749         * NEWS: Updated.
16750
16751 2004-08-30  Andreas Schwab  <schwab@suse.de>
16752
16753         * libltdl/ltdl.c (lt_dlexit): Remove lvalue cast.
16754
16755         * libltdl/slist.h (SListCallback): Fix missing type.
16756
16757         * config/ltmain.in: Accept --mode=relink.
16758
16759 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16760
16761         * NEWS: Updated.
16762         * configure.ac: Bumped version to 1.9c.
16763
16764         GNU libtool 1.9b was released.
16765
16766         * configure.ac: Bumped version to 1.9b.
16767         * NEWS: Updated.
16768         * INSTALL, config/config.guess, config/config.sub,
16769         config/texinfo.tex: Updated from canonical source.
16770         * Makefile.maint, HACKING: Update instructions for releasing in a
16771         VPATH build.
16772
16773         * Makefile.am (dist-hook): Only run if README-alpha exists.
16774         * README.alpha: Renamed from README-alpha to stop automake from
16775         automatically adding it to DIST_COMMON.
16776
16777         * NEWS: Merge changes from branch-1-5.
16778
16779         * Makefile.am (dist-hook): Always distribute just a README file,
16780         but take its contents from README-alpha for alpha releases.
16781
16782         * TODO: Reformat.  Removed some items that have been implemented.
16783
16784 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16785
16786         Add a new `-weak' flag to tell libtool when not to propogate
16787         dependency libraries from dlpreopened modules to libraries:
16788
16789         * config/ltmain.in: Support new -weak link mode option.  Adjust
16790         help message.
16791         * libltdl/Makefile.am (libltdlc_la_LDFLAGS): Use it.
16792         * doc/libtool.texi (Linking with dlopened modules): Document it.
16793         (Link mode): Mention -weak.
16794         * NEWS: Updated.
16795
16796 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16797
16798         * config/ltmain.in (opt_help): Defer showing help messages until
16799         after a possible following --mode argument has been parsed, so we
16800         can handle `libtool --help --mode=foo'.
16801
16802 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16803
16804         We have had shell functions in ltmain.in for a few years without
16805         complaint now, and recently a few more have crept in.  Make a
16806         start at refactoring the code with shell functions, and
16807         standardising on option parsing style:
16808
16809         * config/ltmain.in (func_echo, func_verbose, func_error)
16810         (func_fatal_error, func_fatal_help, func_missing_arg)
16811         (func_version, func_usage, func_help): Boiler plate shell
16812         functions mostly copied from libtoolize.in.  Changed *lots* of
16813         shell snippets to call these functions as appropriate, rather than
16814         inlining the same code over and over.
16815         (func_config, func_features, func_enable_tag, func_mode_help):
16816         Factored out from the shared option parsing loop.  Write a new
16817         shared option parser based on the one in libtoolize.in.
16818         (func_check_version_match): Factored out from global scope.
16819         (func_mode_compile, func_mode_execute, func_mode_finish)
16820         (func_mode_install, func_mode_link, func_mode_uninstall): Break
16821         each of the top level mode handlers out into a function.  Adjust
16822         main loop.
16823         (modename, prevopt, prev, optarg, show_help): Removed in the
16824         course of cleaning up the shared option parser.
16825         (opt_duplicate_deps): Use `:' and `false' instead of `yes' and `',
16826         so we can run it directly, rather than calling test.
16827
16828 2004-08-28  Gary V. Vaughan  <gary@gnu.org>
16829
16830         To help users submit better bug reports, improve the general
16831         instructions, and provide additional useful info alongside the bug
16832         reporting address in --help output:
16833
16834         * Makefile.am (edit): Substitute $host_triplet.
16835         * libtoolize.in: Output useful debug info with --help.
16836         * config/ltmain.in: Ditto.
16837         * README: Rewritten.  Added copyright info.
16838         * README-alpha: Rewritten.  Added copyright info.
16839         * HACKING: New file, partly taken from old README-alpha.
16840
16841 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16842
16843         Two things to stop `make distcheck' from trying to rebuild
16844         distributed files (m4/ltversion.m4 and config/ltmain.in) in the
16845         readonly source tree:
16846
16847         * Makefile.am (stamp-vcl): Keep only one copy of stamp-vcl; in
16848         $(top_srcdir), so that an up-to-date version is rolled into the
16849         dist tarball even from a VPATH build.
16850         ($(top_srcdir)/config/ltmain.sh): Don't depend on Makefile,
16851         otherwise ltmain.sh needs to be rebuilt after every config.status
16852         run, and then configure needs to be rebuilt, and it all goes
16853         horribly wrong :-/  Unfortunately, we can't depend on Makefile.am
16854         either, because that is a circular dependency.  The downside of
16855         this change is that it is now possible to edit Makefile.am to
16856         change the way ltmain.sh is generated, and the dependency
16857         information can't tell that ltmain.sh needs regenerating.
16858
16859 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16860
16861         * doc/libtool.texi (Cheap tricks): Escape the `@' for texinfo.
16862
16863 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16864
16865         * doc/libtool.texi (Cheap tricks): Fix the instructions for making
16866         a ltmain.in wrapping libtool in light of recent changes to the
16867         version checking code.
16868
16869 2004-08-26  Peter O'Gorman  <peter@pogma.com>
16870
16871         * config/ltmain.in [darwin]: Use the -dylib_file flag and avoid
16872         linking to so many libraries on darwin.
16873
16874         * m4/libtool.m4 [darwin]: Don't use a libname triplet, a couplet
16875         is perfectly fine.
16876
16877         * m4/ltdl.m4: Don't use the dyld loader on darwin 8 or later.
16878
16879 2004-08-25  Paolo Bonzini  <bonzini@gnu.org>
16880
16881         * config/ltmain.in (piecewise linking): Use a GNU ld script if
16882         possible.
16883         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Add per-tag variable
16884         with_gnu_ld.
16885         (_LT_LANG_CXX_CONFIG): Don't set unused variable with_gnu_ldcxx.
16886
16887 2004-08-22  Gary V. Vaughan  <gary@gnu.org>
16888
16889         The Grand Renaming.  In preparation for libtool-2.0, move all of
16890         the many and varied m4 symbols accumulated by libtool over the
16891         years, considering also that modern autoconf can detect unexpanded
16892         macros even without AC in the macro name:
16893
16894         * bootstrap: Remove libltdl/config.h from previous releases.
16895         * m4/libtool.m4, m4/ltdl.m4, doc/libtool.texi: Basically, run a
16896         giant sed transformation like this:
16897         s,AC_LIB_LTDL,LTDL_INIT,g
16898         s,AC_LIBLTDL_CONVENIENCE,LTDL_CONVENIENCE,g
16899         s,AC_LIBLTDL_INSTALLABLE,LTDL_INSTALLABLE,g
16900         s,AC_WITH_LTDL,LT_WITH_LTDL,g
16901         s,AC_LTDL_ENABLE_INSTALL,_LT_ENABLE_INSTALL,g
16902         s,AC_DEPLIBS_CHECK_METHOD,_LT_CHECK_MAGIC_METHOD,g
16903         s,AC_LIBTOOL_OBJDIR,_LT_CHECK_OBJDIR,g
16904         s,AC_LTDL_OBJDIR,_LT_CHECK_OBJDIR,g
16905         s,AC_LTDL_DLPREOPEN,_LT_CHECK_DLPREOPEN,g
16906         s,AC_LIBTOOL_SYS_MAX_CMD_LEN,LT_CMD_MAX_LEN,g
16907         s,AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,_LT_CMD_GLOBAL_SYMBOLS,g
16908         s,AC_LIBTOOL_SYS_OLD_ARCHIVE,_LT_CMD_OLD_ARCHIVE,g
16909         s,AC_PROG_LD_RELOAD_FLAG,_LT_CMD_RELOAD,g
16910         s,AC_LIBTOOL_SYS_LIB_STRIP,_LT_CMD_STRIPLIB,g
16911         s,AC_CHECK_LIBM,LT_LIB_M,g
16912         s,AC_LTDL_DLLIB,LT_LIB_DLLOAD,g
16913         s,AC_LIBTOOL_COMPILER_OPTION,_LT_COMPILER_OPTION,g
16914         s,AC_LIBTOOL_PROG_CC_C_O,_LT_COMPILER_C_O,g
16915         s,AC_LIBTOOL_PROG_COMPILER_NO_RTTI,_LT_COMPILER_NO_RTTI,g
16916         s,AC_LIBTOOL_PROG_COMPILER_PIC,_LT_COMPILER_PIC,g
16917         s,AC_LIBTOOL_SYS_HARD_LINK_LOCKS,_LT_COMPILER_FILE_LOCKS,g
16918         s,AC_LTDL_DLSYM_USCORE,LT_FUNC_DLSYM_USCORE,g
16919         s,AC_LIBTOOL_LINKER_OPTION,_LT_LINKER_OPTION,g
16920         s,AC_LIBTOOL_PROG_LD_SHLIBS,_LT_LINKER_SHLIBS,g
16921         s,AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH,_LT_LINKER_HARDCODE_LIBPATH,g
16922         s,AC_PATH_MAGIC,_LT_PATH_MAGIC,g
16923         s,AC_PATH_TOOL_PREFIX,_LT_PATH_TOOL_PREFIX,g
16924         s,AC_PROG_LD,LT_PATH_LD,g
16925         s,AC_PROG_LD_GNU,_LT_PATH_LD_GNU,g
16926         s,AC_PROG_NM,LT_PATH_NM,g
16927         s,AC_LTDL_SYS_DLOPEN_DEPLIBS,LT_SYS_DLOPEN_DEPLIBS,g
16928         s,AC_LIBTOOL_DLOPEN_SELF,LT_SYS_DLOPEN_SELF,g
16929         s,AC_LIBTOOL_POSTDEP_PREDEP,_LT_SYS_HIDDEN_LIBDEPS,g
16930         s,AC_LTDL_SYSSEARCHPATH,LT_SYS_DLSEARCH_PATH,g
16931         s,AC_LTDL_SHLIBEXT,LT_SYS_MODULE_EXT,g
16932         s,AC_LTDL_SHLIBPATH,LT_SYS_MODULE_PATH,g
16933         s,AC_LTDL_SYMBOL_USCORE,LT_SYS_SYMBOL_USCORE,g
16934         s,AC_LIBTOOL_SYS_DYNAMIC_LINKER,_LT_SYS_DYNAMIC_LINKER,g
16935         s,_LT_AC_TAGVAR,_LT_TAGVAR,g
16936         s,_LT_AC_SYS_COMPILER,_LT_TAG_COMPILER,g
16937         s,_LT_AC_PROG_ECHO_BACKSLASH,_LT_PROG_ECHO_BACKSLASH,g
16938         s,_LT_AC_SYS_LIBPATH_AIX,_LT_SYS_MODULE_PATH_AIX,g
16939         s,_LT_AC_SHELL_INIT,_LT_SHELL_INIT,g
16940         s,_LT_AC_LOCK,_LT_ENABLE_LOCK,g
16941         s,_LT_AC_CHECK_DLFCN,_LT_HEADER_DLFCN,g
16942         s,_LT_AC_TRY_DLOPEN_SELF,_LT_TRY_DLOPEN_SELF,g
16943         s,LT_AC_PROG_EGREP,_LT_DECL_EGREP,g
16944         s,LT_AC_PROG_SED,_LT_DECL_SED,g
16945         * doc/libtool.texi (Autoconf macros): Document exported macros.
16946         * libtoolize.in: Compare ltdl.m4 serial numbers for LTDL_INIT
16947         instead of newly obsoleted AC_LIB_LTDL.
16948         (func_scan_files): Also set seen_ltdl for LTDL_INIT and
16949         LT_WITH_LTDL.
16950
16951 2004-08-12  Peter O'Gorman  <peter@pogma.com>
16952
16953         * m4/libtool.m4 [GNU/linux] (AC_DEPLIBS_CHECK_METHOD): Cleanup,
16954         thanks to Daniel Reed.
16955
16956 2004-08-11  Daniel Reed  <djr@redhat.com>
16957
16958         * tests/demo-nopic.test: Do not run on x86_64 or s390*
16959
16960 2004-08-06  Gary V. Vaughan  <gary@gnu.org>
16961
16962         * libltdl/ltdl.c (lt_dlforeachfile): LT_SYS_LIBSEARCH_PATH is not
16963         an environment variable, it is an actual path.
16964
16965         * bootstrap: Remove `-f Makefile.am' now that we have an actual
16966         Makefile to build ltmain.sh.
16967         Reported by Noah Mish <noah@cs.caltech.edu>
16968
16969 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
16970
16971         * bootstrap: Run the bootstrap rules from a file named Makefile,
16972         copied from Makefile.am for fresh checkouts.
16973
16974 2004-08-05  Alexandre Duret-Lutz  <adl@gnu.org>
16975
16976         * m4/libtool.m4 (_LT_PROG_LTMAIN): Require ltmain.sh using
16977         using Autoconf's new AC_REQUIRE_AUX_FILE.
16978
16979 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
16980
16981         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Depends on
16982         Makefile.
16983         (timestamp): Factor out timestamp setting and edit it based on the
16984         version number, so that it is empty for release versions.
16985         ($(top_srcdir)/config/ltmain.sh): Use it.
16986         (libtoolize): Ditto.
16987
16988         * Makefile.am (libtool): Depends on ltmain.sh.
16989         (libtoolize): Set and substitute TIMESTAMP.
16990
16991         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Actually run
16992         $(MKSTAMP) before changing directories, or it won't be found.
16993         Forgot to save before my last commit :-(
16994
16995         * Makefile.am ($(top_srcdir)/m4/ltversion.m4): Since we already did
16996         `cd $(top_srcdir)' for this rule, we can't mv ltversion.tmp to the
16997         relative $(top_srcdir) again!  Also, run $(MKSTAMP) before changing
16998         directories, or it won't be found.
16999         ($(top_srcdir)/config/ltmain.sh): Ditto.
17000         (EXTRA_DIST): We should distribute ltversion.m4 too.
17001
17002 2004-08-04  Peter O'Gorman  <peter@pogma.com>
17003
17004         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Since CONFIG_SHELL may
17005         not actually be set, we should use SHELL here, also make darn sure
17006         that SHELL is set to something. Bug from Willem Jan Palenstijn
17007         <wpalenst@math.leidenuniv.nl>.
17008
17009 2004-08-03  Jacob Meuser  <jakemsr@jakemsr.com>
17010
17011         * ltmain.in: Allow some static libraries to be used in generating a
17012         shared library on NetBSD and OpenBSD. match-pattern_regex decides
17013         which are good.
17014
17015 2004-08-02  Geoffrey Keating  <geoffk@apple.com>
17016
17017         * m4/libtool.m4 [darwin]: Don't use -all_load.
17018
17019 2004-08-01  Maciej W. Rozycki  <macro@linux-mips.org>
17020
17021         * m4/libtool.m4 (LT_AC_PROG_SED): Set SED when running from cache as
17022         well.
17023
17024 2004-07-31  Gary V. Vaughan  <gary@gnu.org>
17025
17026         Although libtool is optimised to not need to subconfigure libltdl,
17027         the installed libltdl sources for libtoolize need to put
17028         libltdl/configure.ac in the parent package so that *it* can
17029         subconfigure libltdl.  That way we don't put any constraints on
17030         the build system used by the parent package because the
17031         libtoolized libltdl subtree is a self-contained sub-project:
17032
17033         * libltdl/Makefile.am (EXTRA_DIST): Add configure.ac.
17034         (nobase_ltdldata_DATA): Change back to libltdl's own
17035         configure.ac.
17036
17037 2004-07-30  Gary V. Vaughan  <gary@gnu.org>
17038
17039         My thanks to Alexandre Duret-Lutz <adl@gnu.org> for the insight
17040         required to write this changeset -- especially that ltmain.sh is
17041         the same on any machine for a given release, which I hadn't
17042         noticed for some bizarre reason: It turns out that generating
17043         distributed files from configure causes no end of hassle, as
17044         evidenced by the many patches I've generated over the last few
17045         days to try and get the dist and distcheck make rules to work.
17046         Instead of all that hair, we now simply generate our distributed
17047         files (now including ltmain.sh) with make rules -- and since
17048         automake creates make variables for all AC_SUBSTs, that is really
17049         easy.  The code looks a lot more like automake and autoconf
17050         Makefile.ams now, and doesn't have all the rough edges the earlier
17051         hacky solution suffered from.  We still generate libtool from
17052         config.status, but that is not a distributed file, and doesn't
17053         break the golden rule.  Besides, there is way more going on there
17054         than a bunch of substitutions:
17055
17056         * Makefile.am (edit): New common sed substitutions for files now
17057         generated by make instead of config.status.
17058         (CLEANFILES): Clean new tmp files.
17059         (EXTRA_DIST): Add ltmain.sh.
17060         (vcl-tmp): Reinstated.
17061         (m4/ltversion.m4, config/ltmain.sh): New rules.  Generate from
17062         here instead of config.status.
17063         (libtoolize): Ditto.
17064         (libtool): Call config.status to regenerate if necessary.
17065         (dist-hook): Removed.
17066         * config/ltmain.in: Moved here from top_srcdir.
17067         * README-alpha: Update instructions to check AS_SHELL_SANITIZE is
17068         up to date.
17069         * bootstrap: Rewritten.  Generate m4/ltversion.m4 and
17070         config/ltmain.sh because configure depends on them.
17071         * configure.ac (AC_CONFIG_SRCDIR): Use libtoolize.in now that
17072         ltmain.in has moved.
17073         (AC_CONFIG_FILES): Don't generate distributed files,
17074         config/ltmain.sh and libtoolize from config.status.  We have make
17075         rules to do that now.
17076
17077 2004-07-30  Peter O'Gorman  <peter@pogma.com>
17078
17079         * m4/libtool.m4, ltmain.in: readd the comments that I erased.
17080
17081         * ltmain.in [darwin]: We already had a module var, there can be
17082         only one.
17083
17084         * m4/libtool.m4, ltmain.in: autoconf now says the best thing to do
17085         with CDPATH is to (unset CDPATH) >/dev/null 2>&1 && unset CDPATH,
17086         so do it.
17087
17088 2004-07-29  Gary V. Vaughan  <gary@gnu.org>
17089
17090         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Ugh. More hair to
17091         help `make distcheck'; not only do we have to make a copy of
17092         ltmain.sh available in the source tree, but we have to be really
17093         careful about permission bit twiddling when we copy it across into
17094         the possible read-only $(top_srcdir)/config directory!
17095
17096         * tests/tagtrace.test: Skip this test when running a VPATH build
17097         against a read-only source tree (as in distcheck for example),
17098         since autoconf wants to write temporary files in $top_srcdir
17099         otherwise.
17100
17101         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Automake assumes,
17102         quite rightly for every project except libtool, that there will be
17103         an ltmain.sh in the source tree.
17104         (EXTRA_DIST): As do the dist rules it generates.
17105         (dist-hook): Even though we definitely don't want to distribute
17106         our local ltmain.sh.
17107
17108         * config/config.guess, config/config.sub: Don't check these in,
17109         they cause spurious conflicts on cvs commit and update, and are
17110         added by bootstrap in any case.
17111
17112         * configure.ac (AC_INIT): Revert an accidental commit from my
17113         testing of package_revision.
17114
17115 2004-07-29  Alexandre Duret-Lutz  <adl@gnu.org>
17116
17117         * doc/libtool.texi (Tags): Document CC.
17118         * m4/libtool.m4 (_LT_SETUP): Register CC as supported tag so that
17119         Automake uses it.
17120
17121 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
17122
17123         Fix a long-standing bug where macro_version was always empty in
17124         the generated m4/ltversion.m4.  Except for CVS revisions:
17125
17126         * ltmain.in (package_revision): Don't try to deduce it from
17127         TIMESTAMP, since that is empty for release versions; simply
17128         substitute it...
17129         * configure.ac (package_revision): ...from here, having
17130         precalculated it before resetting TIMESTAMP for release versions.
17131         * bootstrap: Force regeneration of m4/ltversion.m4, but retain
17132         timestamps if there is no change to the content.
17133
17134 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
17135
17136         To take full advantage of this, libtool must be bootstrapped with
17137         CVS autoconf, otherwise pdksh chokes on some nested escaped quotes
17138         from libtool.m4.  Using CVS autoconf protects configure from
17139         non-bourne compatible shells in the same way this changeset
17140         protects libtool and libtoolize:
17141
17142         * libtoolize.in: Include latest CVS autoconf AS_SHELL_SANITIZE
17143         expansion to make various shells fully bourne compatible.
17144         * ltmain.in: Ditto.
17145         * m4/libtool.m4 (AC_PATH_TOOL_PREFIX): Remove spurious quotes, the
17146         RHS of = assignment is not IFS split.
17147         (_LT_LANG_CXX_CONFIG): Ditto.
17148         (AC_LIBTOOL_POSTDEP_PREDEP): Ditto.
17149
17150 2004-07-27  Gary V. Vaughan  <gary@gnu.org>
17151
17152         This change fixes another VPATH build bug, where the vcl.tmp
17153         target forced a rebuild of stamp-vcl in the build tree (and
17154         hence regeneration of m4/ltversion.m4, thus an automake driven
17155         rebootstrap that doesn't know about $fakes) requiring a fresh
17156         ./bootstrap after every cvs/tla update:
17157
17158         * Makefile.am (vcl.tmp): Removed.
17159         (stamp-vcl): Adopt former vcl.tmp target rules.
17160
17161 2004-07-25  Gary V. Vaughan  <gary@gnu.org>
17162
17163         * ltmain.in: Make sure that dependency libraries of -dlpreopened
17164         libraries are propogated properly.
17165
17166 2004-07-23  Joe Orton  <joe@manyfish.co.uk>
17167
17168         * libtool.m4: Treat bsdi5* like bsdi4*.
17169
17170 2004-07-22  Peter O'Gorman  <peter@pogma.com>
17171
17172         * ltmain.in [darwin](func_extract_archives): $SED not sed.
17173
17174         * ltmain.in [darwin](func_extract_archives): Clean up last commit
17175         a little, some suggestions are from Albert Chin, those that are
17176         broken are mine.
17177
17178         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for
17179         included files in the right places.
17180
17181 2004-07-18  Peter O'Gorman  <peter@pogma.com>
17182
17183         * ltmain.in [darwin](func_extract_archives): Because fat archives
17184         on darwin can not be extracted using ar, we need to use lipo to
17185         extract the thin archives and then use lipo again to generate the
17186         individual fat objects. This should allow people to run configure
17187         with CC set to "cc -arch ppc -arch ppc64" or "cc -arch ppc -arch
17188         i386" or whatever to match the toolchain they have available.
17189
17190 2004-07-18  Greg Eisenhauer  <eisen@cc.gatech.edu>
17191
17192         * libltdl/loaders/Makefile.am: Use AM_MAKEFLAGS not MAKEFLAGS.
17193
17194 2004-07-18  Peter O'Gorman  <peter@pogma.com>
17195
17196         * libltdl/Makefile.am: Ensure that lt__dirent.h is part of the dist,
17197         also make failed looking for configure.ac, look for
17198         $(top_srcdir)/configure.ac instead.
17199
17200 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17201
17202         * libltdl/lt__private.h (lt_dlhandle_struct): Renamed to
17203         lt__handle to better reflect the naming scheme.
17204         * libltdl/ltdl.h (lt_dlhandle): Be truly opaque with a void *.
17205         * libltdl/lt_dlloader.c (lt_dlloader_remove): Party to
17206         lt__private.h, so use internal lt__handle instead of opaque
17207         lt_dlhandle.
17208         * libltdl/ltdl.c (LT_DLGET_FLAG, LT_DLSET_FLAG): Add a cast to
17209         internal lt__handle type.
17210         (try_dlopen, tryall_dlopen, load_deplibs, unload_deplibs): Ditto.
17211         (lt_dlexit, lt_dlclose, lt_dlsym): Use lt__handle to iterate
17212         throught the handle list.
17213         (try_dlopen): Use lt__zalloc instead of MALLOC and memset.
17214         * libltdl/ltdl.h (lt_dlcaller_id): Be truly opaque with a void *.
17215         (lt_dlhandle_interface): New callback type for filtering handles
17216         according to the interface they present.
17217         * libltdl/ltdl.c (lt_dlcaller_register): Take an id and an
17218         interface check callback, and generate a caller_id.
17219         (iterator): New static variable for the use of...
17220         (lt_dlhandle_first): New function.  Set the iterator for
17221         subsequent calls to lt_dlhandle_next.
17222         (lt_dlhandle_next): Either work as before when iterator is unset,
17223         or else skip handles that fail the interface check in iterator set
17224         by lt_dlhandle_first.
17225         * libltdl/ltdl.h (lt_dlhandle_first): Declaration.
17226         * doc/libtool.texi (User defined module data): Document the new
17227         APIs.
17228         * NEWS: Updated.
17229
17230 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17231
17232         Split lt_dlloader management into a separate file, and factor
17233         `loaders' list management into a new SList ADT.  In the process,
17234         the API for writing loaders is a little cleaner, so all the
17235         existing loaders were tweaked to take advantage of that:
17236
17237         * libltdl/slist.h, libltdl/slist.c: New files implementing a
17238         generic singly linked list container ADT.  The ADT is purely
17239         internal, and none of its API's are visible from an installed
17240         libltdl.
17241         * libltdl/lt_dlloader.h (lt_dlloader): Removed next field again
17242         :-) Renamed to lt_dlvtable for API.  Changed all callers.
17243         (lt_dlloader_get): New function to turn an lt_dlloader into its
17244         associated lt_dlvtable.
17245         (lt_dlloader_add): Removed unused data parameter.  The caller
17246         data belongs to (and is set by) the loader itself, not the
17247         loader's client.  Changed all callers.
17248         (lt_dlloader_name, lt_dlloader_data): Removed.  Use
17249         lt_dlloader_get instead!
17250         * libltdl/lt__private.h: Include slist.h.
17251         (lt__alloc_die_callback): Add missing LT_SCOPE to declaration.
17252         (lt_dlhandle_struct): Use lt_dlvtable instead of opaque
17253         lt_dlloader.
17254         * libltdl/ltdl.c (lt_dlexit): Rewritten for the new loader API.
17255         (loaders, lt_dlloader_add, lt_dlloader_remove, lt_dlloader_next,
17256         lt_dlloader_find): Moved from here...
17257         * libltdl/lt_dlloader.c ((loaders, lt_dlloader_add,
17258         lt_dlloader_remove, lt_dlloader_next, lt_dlloader_find): ...to
17259         here.  And rewritten in terms of new SList interface.
17260         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Rewritten in terms of
17261         new lt_dlloader interface.
17262         * libltdl/Makefile.am (libdlloader_la_SOURCES): Add slist.h and
17263         slist.c.  Move lt_dlloader.h from here...
17264         (pkginclude_HEADERS): ...to here.
17265         (libltdl_la_SOURCES): Add lt_dlloader.c and lt_dlloader.h.
17266
17267 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17268
17269         Collapse two almost identical structures into one:
17270
17271         * libltdl/lt_dlloader.h (lt_dlloader): Add next field.
17272         * libltdl/ltdl.c (lt_user_dlloader): Remove entirely.  Change all
17273         callers to use lt_dlloader instead.  Add a compatibility macro.
17274         (lt_dlloader_add): Remove copy and allocate stage, just hook
17275         directly into the loaders list.
17276
17277 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17278
17279         A cleaner way to access the private fields of an lt_dlhandle
17280         than my move of the module field into lt_dlinfo:
17281
17282         * libltdl/ltdl.c (lt_caller_data, lt_dlhandle_struct): Move from
17283         here...
17284         * libltdl/lt__private.h (lt_caller_data, lt_dlhandle_struct):
17285         ...to here.  And put the module field back here...
17286         * libltdl/ltdl.h (lt_dlinfo): ...instead of here.
17287         * libltdl/loaders/loadlibrary.c (vm_open): Adjust.
17288
17289 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17290
17291         * libltdl/lt__private.h (streq, strneq): New macros to make strcmp
17292         calls as used for simple comparison easier to read.
17293         * libltdl/loaders/dyld.c, libltdl/loaders/preopen.c,
17294         libltdl/ltdl.c: Use them!
17295
17296 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17297
17298         This pervasive changeset makes two intertwined deep changes to the
17299         operation of libtool (neither would work alone).  First, there is
17300         a new feature that allows libraries to preopen modules.  This
17301         entails a backwards incompatible change to the libltdl API for
17302         separating out the preloaded symbol lists by owner.  Second, in
17303         the tradition of "eating our own dogfood", libltdl now preloads
17304         its own dlloaders.  The internal API for dlloaders has also had to
17305         change in a backwards incompatible way in support of the new
17306         library preloading feature.  If you don't use preloaded libraries,
17307         you needn't change your project sources, though you will need to
17308         recompile against the new libltdl.  The API changes are mostly
17309         confined to dlloaders, so you probably needn't worry about those
17310         (unless you have written a custom loader that you want libltdl to
17311         use):
17312
17313         * configure.ac (AC_CONFIG_FILES): Add libltdl/loaders/Makefile.
17314         * libltdl/configure.ac (AC_CONFIG_FILES): Add loaders/Makefile.
17315         * libltdl/loaders: New directory for module loaders, to simplify
17316         Makefile rules, and to give the loaders themselves names that are
17317         unique in the first few characters.
17318         * libtoolize.in (func_copy_all_files): Copy recursively to pick up
17319         the loaders directory contents.
17320         * libltdl/loaders/Makefile.am: New file.  Move module building
17321         rules to here...
17322         * libltdl/Makefile.am: ...from here.
17323         (VERSION_INFO): Bumped version info to signify interface changes.
17324         (libltdl_la_CPPFLAGS, libltdlc_la_CPPFLAGS): Set LTDLOPEN
17325         appropriately for each library.
17326         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
17327         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
17328         libltdl/loader-loadlibrary.c libltdl/loader-preopen.c,
17329         libltdl/loader-shl_load.c: Moved from here...
17330         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
17331         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
17332         libltdl/loaders/loadlibrary.c libltdl/loaders/preopen.c,
17333         libltdl/loaders/shl_load.c: ...to here.
17334         (get_vtable): New entry function for each.
17335         * libltdl/loaders/preopen.c (lt_dlsymlists_t): Replaced by...
17336         (symlist_chain): ...a new structure which maps lists of preloaded
17337         symbols from the object that loads them.
17338         (lt_dlpreload_open): New function to automatically open all
17339         preloaded modules belonging to a named object (ORIGINATOR).
17340         * libltdl/lt__alloc.c (lt__zalloc): New function to return a block
17341         of zeroed out new memory.
17342         * libltdl/lt__alloc.h (lt__zalloc): Prototype it.
17343         * libltdl/lt__private.h (lt__alloc_die_callback): Add missing
17344         prototype.
17345         (lt__error_strings): Make this opaque to callers.
17346         * libltdl/lt_error.c (lt__error_strings): Move the implementation
17347         to here.
17348         * libltdl/lt_dlloader.h (lt_user_dlloader): Add extra fields to
17349         make originator focused preloading possible.  *BREAKS BACKWARDS
17350         COMPATIBILITY*
17351         (lt_dlloader_add): Take advantage of new fields to simplify
17352         paramater list.
17353         * libltdl/lt_system.h (LT_STR): New ANSI stringification macro.
17354         (LT_CONC): Fix it to work from within macros.
17355         * libltdl/ltdl.c (loader_init, loader_init_callback): Simplify
17356         dlloader loading.
17357         (get_vtable, preloaded_symbols): Point these at the preopen.c
17358         symbols to bootstrap the loader chain.
17359         (lt_dlinit): Load the preopen dlloader manually, and then use it
17360         to load any other preloaded dlloaders.
17361         (lt_dlloader_add): Simplify parameter list. Populate new
17362         fields. Chain new loaders according to priority field.
17363         * libltdl/ltdl.h (lt_dlsymlist): Add a new originator field.
17364         (lt_dlpreload_callback_func): Type of a callback for automatic
17365         lt_dlpreload_open loading.
17366         (LTDL_SET_PRELOADED_SYMBOLS): Adjust to hook into preloaded
17367         symbols from the "@PROGRAM@" originator.
17368         * tests/demo/dlmain.c (main): Use mangled preloaded_symbols symbol.
17369         * tests/pdemo/longer_file_name_dlmain.c (main): Ditto.
17370         * ltmain.in: Don't spew spurious warnings when dlopening and
17371         dlpreopening modules.
17372         (func_generate_dlsyms): Factored out from multiple copies in the
17373         rest of the code. Generate originator keyed symbol lists.
17374         (func_extract_archives): Also factored.  Extract the contents of
17375         convenience archives for linking with dependent libraries when
17376         --whole-archive is not available.
17377         [darwin]: Don't try to link $old_library unless it exists, and
17378         $lib is a bundle.
17379         * m4/ltdl.m4 (AC_LTDL_DLLIB): Check for all possible dynamic
17380         loading libraries/apis rather that stopping when an acceptable one
17381         is discovered.
17382         (LT_DLLOADERS): New variable for holding dlloaders that can be
17383         preloaded.
17384         * doc/libtool.texi: Document interface changes.
17385         * NEWS: Updated.
17386
17387 2004-07-12  Peter O'Gorman  <peter@pogma.com>
17388
17389         * m4/libtool.m4 [darwin]: Set whole_archive_flag_spec to '' for xlc,
17390         or it does not pass it's tests. xlc passes -noall_load (the default)
17391         and when -all_load is also specified Apple's /usr/bin/libtool barfs
17392         and dies.
17393
17394 2004-07-07  Gary V. Vaughan  <gary@gnu.org>
17395
17396         * libltdl/ltdl.h (lt_dlinfo): Move private module field to here...
17397         * libltdl/ltdl.c (lt_dlhandle_struct): ...from here.  Changed all
17398         callers.
17399         * libltdl/loader-loadlibrary.c (sys_wll_open): Use new inteface to
17400         scan loaded handle->info.module fields for previously loaded
17401         modules.
17402         * doc/libtool.texi (User defined module data): Document changes to
17403         the interface.
17404         * NEWS: Updated.
17405         Reported by Chuck Wilson <cwilson@ece.gatech.edu>
17406
17407 2004-07-07  Brad  <brad@comstyle.com>
17408
17409         * m4/libtool.m4: Fixes for the OpenBSD support
17410
17411 2004-06-24  Noah Misch  <noah@cs.caltech.edu>
17412
17413         * ltmain.in: Unset the zsh GLOB_SUBST option, which makes zsh
17414         handle backslash quoting poorly, before doing anything else.
17415         * tests/defs: Likewise.
17416
17417 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
17418
17419         * libtoolize.in (libtoolize_flags): With the --ltdl option, we
17420         libtoolize the libltdl subdirectory automatically.
17421         * m4/ltdl.m4 (AC_WITH_LTDL): Fix overquoted args.
17422
17423 2004-06-21  Peter O'Gorman  <peter@pogma.com>
17424
17425         * ltmain.in (dependency_libs) [darwin]: Remove -framework stuff from
17426         dependency_libs. Instead, invent a new .la var "inherited_linker_flags"
17427         to keep any linker flags which should be used when linking the library,
17428         but are outside the usual -L -l, -R etc that can be used in
17429         dependency_libs. Any unusual flags in dependency_libs cause recent
17430         versions of libtool to die with "cannot find the library `'", so
17431         it is required to move frameworks out of there. :(
17432
17433 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
17434
17435         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>:
17436         * libtoolize.in: Quote $# to make sh.test happy again.
17437
17438         * m4/ltdl.m4 (AC_WITH_LTDL): Remove redundant AC_REQUIRE calls.
17439         Either set variables to allow a client to link with the installed
17440         libltdl, or else compile a local libltdl as a convenience library.
17441         * libtoolize.in (opt_ltdl): Removed in favour of...
17442         (ltdldir): ...this, which is defaulted to "libltdl" or can be set
17443         by the user with an argument to --ltdl.
17444         (Main): Use it!
17445         * doc/libtool.texi (Distributing libltdl): Improved documentation
17446         on libltdl.
17447         (Invoking libtoolize): Document new optional --ltdl target
17448         directory argument.
17449
17450 2004-06-17  Gary V. Vaughan  <gary@gnu.org>
17451
17452         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Fix a typo
17453         in allow_undefined_flag: s,${Wl},${wl},g
17454
17455         * libtoolize.in (func_scan_files): Accept AC_WITH_LTDL as an
17456         indication that libltdl is being used.
17457         (Main): Without AC_CONFIG_MACRO_DIR, don't just dump all the
17458         macro files in `.' since they are never used, and aclocal will
17459         copy them from $aclocaldir into aclocal.m4 anyway.
17460         Reported by Alexandre Duret-Lutz <adl@gnu.org>
17461
17462 2004-06-16  Brad  <brad@comstyle.com>
17463
17464         * m4/libtool.m4: More improvements to OpenBSD support.
17465         * NEWS: Updated.
17466
17467 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
17468
17469         libltdl uses LIBOBJS, which leak out into a parent project if both
17470         share the same configure.ac.  Libtool itself doesn't compile any
17471         code, so it is okay to do it during bootstrap, but other projects
17472         need to treat libltdl as a configurable subproject to keep their
17473         respective LIBOBJS separate:
17474
17475         * libltdl/configure.ac: New file, based on configure.ac.
17476         * libltdl/Makefile.am (AC_LOCAL_AMFLAGS): Use our own m4
17477         directory.
17478         (ltdldata_DATA): List *all* the files that libtoolize --ltdl will
17479         install.
17480
17481 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
17482
17483         Automake 1.9 won't have the AC_PROG_EGREP bug (aclocal used to
17484         pull an old installed libtool.m4 as well as the bootstrap
17485         m4/libtool.m4 if an AC_DEFUN was removed), and we have
17486         lt~obsolete.m4 to work around it in the mean time.  libtoolize
17487         can install macro files from $prefix/share/aclocal perfectly well
17488         without us needing to move to a whole other directory:
17489
17490         * Makefile.am (pkgmacro_DATA): Renamed to aclocal_DATA, so m4
17491         files are installed to $prefix/share/aclocal again.
17492         (install-data-local): Don't remove just installed macros!
17493         * libtoolize.in (pkgmacrodir): Renamed to aclocaldir.
17494         (func_copy_some_files): New function factored out of...
17495         (func_copy_all_files): ...here.  Adjust to use func_copy_some_files.
17496         (re_pkgaux_files): Renamed to glob_pkgaux_files, since it is not
17497         a regular expression.
17498         (re_pkgmagro_files): Replaced with...
17499         (pkgmacro_files): ...a colon delimited list of libtool installed
17500         m4 files from aclocaldir.
17501         (Main): Copy macro files from aclocaldir again.
17502         * NEWS: Updated.
17503
17504 2004-05-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17505
17506         * ltmain.sh (check_executable): The WIN32 API and MinGW do not support
17507         S_IXOTH and S_IXGRP so use of these modes should be conditional.
17508
17509 2004-05-21  Gary V. Vaughan  <gary@gnu.org>
17510
17511         * tests/tagtrace.test: Forgot to add this file to the repository
17512         for Alexandre's 2004-05-16 patch below.
17513
17514 2004-05-18  Peter O'Gorman  <peter@pogma.com>
17515
17516         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Make this an m4_defun,
17517         test the tags compiler to see if it is GCC, not the CC compiler.
17518
17519 2004-05-16  Alexandre Duret-Lutz  <adl@gnu.org>
17520
17521         * doc/libtool.texi (Invoking libtool): Mention --tag=TAG.
17522         (Tags, Trace interface): New nodes.
17523         * m4/libtool.m4 (LT_SUPPORTED_TAG): New macro.
17524         (_LT_LANG): Call it.
17525         * tests/tagtrace.test: New file.
17526         * tests/Makefile.am
17527         (TESTS): Add tagtrace.test.
17528         * tests/defs: Define AUTOCONF.
17529
17530 2004-05-14  Mike Gorchak  <lestat@i.com.ua>
17531
17532         * ltmain.in: Add new qnx version type support.
17533         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Use it.  Set
17534         ldqnx.so linker type.
17535         (AC_DEPLIBS_CHECK_METHOD): QNX6 uses GNU C++, with deplib
17536         checking, so use pass_all.
17537         (AC_LIBTOOL_PROG_COMPILER_PIC): Use -shared for QNX.
17538         (_LT_LANG_CXX_CONFIG): QNX can make shared libraries.
17539         * m4/ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): QNX opens deplibs on
17540         dlopen.
17541         * NEWS: Updated.
17542
17543 2004-05-05  Peter O'Gorman  <peter@pogma.com>
17544
17545         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Insert space
17546         around = for a test and a comma between runpath_var and $1. Bug
17547         reported by Max Bowsher.
17548
17549 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
17550
17551         * libltdl/argz.h: Moved from here...
17552         * libltdl/argz_.h: ...to here, so as not to shadow system
17553         argz.h when we `#include <argz.h>' for example.
17554         #include stdlib.h and sys/types.h to ensure we get a size_t
17555         definition.
17556         * libltdl/argz.c (HAVE_CONFIG_H): Set it up how ltdl likes it when
17557         used by another client.
17558         * m4/argz.m4: New file.
17559         (gl_FUNC_ARGZ): Try to find an error_t definition, and a system
17560         argz.h.
17561         * m4/ltdl.m4: Use it.
17562         (AC_LTDL_FUNC_ARGZ): Removed.
17563         * libltdl/lt__glibc.h: #include <argz.h> to pick up either the
17564         system argz.h or our libltdl/argz.h if necessary.
17565         * libltdl/Makefile.am (libltdl_la_SOURCES): Move argz.h from
17566         here...
17567         (ltdldata_DATA): ...here. Along with argz.c.
17568         (argz.h): Generate from argz_.h if the system file is missing.
17569         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17570
17571 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
17572
17573         According to Howard Chu <hyc@highlandsun.com>:
17574         Applications should assume that the native dlopen is NOT
17575         thread-safe, and take care of locking themselves. All application
17576         calls into libltdl should thus be protected by the caller.
17577
17578         * libltdl/lt_mutex.c, libltdl/lt_mutex.h: Removed.
17579         * libltdl/Makefile.am (pkginclude_HEADERS): Removed lt_mutex.h.
17580         (libltdl_la_SOURCES): Removed lt_mutex.c and lt_mutex.h.
17581         * libltdl/ltdl.h: Don't include lt_mutex.h.
17582         * libltdl/lt__private.h (LT__MUTEX_GETERROR, LT__MUTEX_SETERROR)
17583         (LT__MUTEX_SETERRORSTR): Renamed to...
17584         (LT__GETERROR, LT__SETERROR, LT__SETERRORSTR): ...this.  Changed
17585         all callers.
17586         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, lt_dlmutex_lock)
17587         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror):
17588         Removed.  Changed all callers.
17589         * doc/libtool.texi (Thread Saftey in libltdl):
17590         * NEWS: Updated.
17591
17592 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
17593
17594         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Detect Intel C++ compiler
17595         version more idiomatically.
17596
17597 2004-04-19  Albert Chin-A-Young  <china@thewrittenword.com>
17598
17599         * m4/libtool.m4: Use cc rather than ld to created
17600         a shared library on HP-UX 11.x. On HP-UX 10.x, the
17601         C compiler doesn't grok -b so we continue to use ld.
17602
17603         * m4/libtool.m4: Use cc rather than ld to create a
17604         shared library on Solaris. When using the Sun
17605         Workshop compiler 5.0 (and I presume any previous
17606         version), revert to ld due to compiler errors.
17607
17608         * m4/libtool.m4: Use cc rather than ld to created
17609         a shared library on Tru64 UNIX.
17610
17611         * m4/libtool.m4: Use cc rather than ld to created
17612         a shared library on IRIX.
17613
17614         * libltdl/loader-shl_load.c: Fix typos during reorg.
17615
17616 2004-04-19  Alexandre Duret-Lutz  <adl@gnu.org>
17617
17618         * doc/libtool.texi (LT_INIT): Properly display options in a table.
17619
17620 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
17621
17622         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Intel C++ compiler 8.0 and
17623         newer adds predep_objects and postdep_objects itself, so don't
17624         duplicate them in $archive_cmds and $archive_expsym_cmds.
17625         * NEWS: Updated.
17626         Reported by Roberto Bagnara <bagnara@cs.unipr.it>
17627
17628 2004-04-17  Peter O'Gorman  <peter@pogma.com>
17629
17630         * libltdl/loader-dyld.c: Fix compilation issues. Set Original author
17631         to me.
17632
17633 2004-04-17  Todd Vierling  <tv@duh.org>,
17634         Peter O'Gorman  <peter@pogma.com>
17635
17636         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use sysctl to get the
17637         max cmd length on BSD* and darwin. Make sure that there is a safety
17638         factor too.
17639
17640 2004-04-15  Scott James Remnant  <scott@netsplit.com>
17641
17642         * m4/libtool.m4 (_LT_LANG_DEFAULT_CONFIG): Remove code to handle 'none'
17643         and 'all' options, this now always assumes automatic mode as that
17644         works so well.
17645         (_LT_LANG_DEFAULT): Remove definition
17646         * m4/ltoptions.m4: Remove 'no-lang', 'auto-lang' and 'all-lang' options.
17647         * configure.ac: Invoke LT_LANG for each desired supported language.
17648         * doc/libtool.texi: Remove documentation for the LT_INIT options,
17649         rewrite LT_LANG documentation.
17650
17651 2004-04-14  Alexandre Duret-Lutz  <adl@gnu.org>
17652
17653         * bootstrap: Delete acinclude.m4.
17654
17655 2004-04-14  Gary V. Vaughan  <gary@gnu.org>
17656
17657         * libtoolize.in (configure_ac): Don't complain about the lack of
17658         aclocal.m4.
17659         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
17660
17661 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17662
17663         * m4/ltdl.m4 (AC_LIB_LTDL): Remove AC_REPLACE_FUNCS for memmove
17664         and strcpy.
17665
17666         * libltdl/lt__pre89.h, libltdl/memcpy.c, libltdl/memmove.c,
17667         libltdl/strchr.c, libltdl/strcmp.c, libltdl/strrchr.c: Remove
17668         half-assed pre-c89 support entirely.
17669         * libltdl/lt__private.h: Don't refer to lt__pre89.h.
17670         * libltdl/Makefile.am (ltdldata_DATA): Remove references to
17671         deleted files.
17672         * NEWS: Mention it.
17673
17674         * libltdl/lt__pre89.h, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/argz.c,
17675         libltdl/argz.h, libltdl/lt__glibc.h, libltdl/lt_dlloader.h,
17676         libltdl/lt__dirent.c, libltdl/lt__dirent.h, libltdl/lt__private.h,
17677         libltdl/lt__alloc.c, libltdl/lt__alloc.h, libltdl/lt_system.h,
17678         libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
17679         libltdl/loader-dyld.c,  libltdl/loader-loadlibrary.c,
17680         libltdl/loader-shl_load.c, libltdl/lt_error.h, libltdl/lt_mutex.h:
17681         Autoconf either defines to 1 or undefs the discovery macros it
17682         puts in config.h, and many (non-GNU) compilers throw a spurious
17683         warning when testing an #undef macro with #if.  For consistency,
17684         while we are touching all these lines, use defined(MACRO) style
17685         throughout.
17686         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17687
17688 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17689
17690         Factor out the individual loaders, in preparation for preloading
17691         them as libtool modules.  Currently loader-preopen.c is linked
17692         unconditionally and other appropriate loaders discovered by
17693         AC_LTDL_DLLIB are built and linked in:
17694
17695         * libltdl/Makefile.am (libltdl_la_SOURCES): Add loader-preopen
17696         module.
17697         * m4/ltdl.m4 (AC_LTDL_DLLIB): Use AC_LIBOBJ to add appropriate
17698         loaders to libltdl.
17699         * libltdl/lt_system.h (LT_SCOPE): Moved to here.
17700         * libltdl/ltdl.h (lt_dlloader, lt_user_data, lt_module)
17701         (lt_module_open, lt_module_close, lt_find_sym, lt_dlloader_exit)
17702         (struct lt_user_dlloader, lt_dlloader_next, lt_dlloader_find)
17703         (lt_dlloader_name, lt_dlloader_data, lt_dlloader_add)
17704         (lt_dlloader_remove): Moved declarations...
17705         * libltdl/lt_loader.h: ...to here.
17706         * libltdl/ltdl.c: Include lt_loader.h.  Move loader implementation
17707         code from here...
17708         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
17709         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
17710         libltdl/loader-loadlibrary.c, libltdl/loader-preopen.c,
17711         libltdl/loader-shl_load.c: ...to here.
17712         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
17713         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
17714         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
17715         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (AM_CPPFLAGS):
17716         Add -I$(top_srcdir)/../.. so that libltdl include files can be
17717         written as #include <libltdl/lt_dlloader.h> and found correctly.
17718
17719 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17720
17721         Factor out the mutex handling and error handling into their own
17722         modules.  Mutex handling is not currently useful in combination
17723         with posix threads, and should be easier to replace if it is in a
17724         separate module.  Additionally, we can factor out the loaders in
17725         such a way as to depend on only the portability layer and these
17726         new mutex and error modules now:
17727
17728         * libltdl/Makefile.am (pkginclude_HEADERS): Install lt_error.h and
17729         lt_mutex.h to $includedir/libltdl.
17730         (libltdl_la_SOURCES): Build lt_error and lt_mutex objects.
17731         * libltdl/ltdl.h (LT_SCOPE): Moved from here...
17732         * libltdl/lt_system.h (LT_SCOPE): ...to here.
17733         * libltdl/ltdl.c (lt_dlerror_strings, LT_DLSTRERROR): Moved from
17734         here...
17735         * libltdl/lt__private.h (lt__error_strings, LT__STRERROR): ...to
17736         here as additional internal interfaces to lt_error.  Changed all
17737         callers.
17738         * libltdl/ltdl.c (LT_DLMUTEX_LOCK, LT_DLMUTEX_UNLOCK)
17739         (LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR, lt_dlmutex_lock_func)
17740         (lt_dlmutex_unlock_func, lt_dlmutex_geterror_func)
17741         (lt_dllast_error): Moved from here...
17742         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, LT__MUTEX_SETERRORSTR)
17743         (LT__MUTEX_GETERROR, lt__mutex_lock_func, lt__mutex_unlock_func)
17744         (lt__mutex_geterror_func, lt__last_error): ...to here as
17745         additional internal interfaces to lt_mutex.  Changed all callers.
17746         (LT_MUTEX_SETERROR): Take an errorcode rather than a string.
17747         Changed all callers.
17748         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dlmutex_register): Moved from
17749         here...
17750         * libltdl/lt_mutex.c, libltdl/lt_mutex.h (lt_dlmutex_register):
17751         ...to here. New files.
17752         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dladderror, lt_dlseterror)
17753         (lt_dlerror_table):
17754         Moved from here...
17755         * libltdl/lt_error.c, libltdl/lt_error.h (lt_dladderror)
17756         (lt_dlseterror, lt_dlerror_table): ...to here. New files.
17757
17758 2004-04-13  Scott James Remnant  <scott@netsplit.com>
17759
17760         * Makefile.am (XDELTA_OPTIONS): Remove --pristine as that
17761         generates huge xdeltas.
17762
17763 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17764
17765         * libltdl/ltdl.c (argz_append, argz_create_sep, argz_insert)
17766         (argz_next, argz_stringify): Move from here...
17767         * libltdl/argz.c: New file. ...to here.
17768         * libltdl/lt__glibc.h: New file. Rename global symbols into the
17769         lt__ namespace.
17770         * libltdl/lt__private.h: Include lt__glibc.h.
17771         * libltdl/Makefile.am (libltdl_la_SOURCES): Add new files.
17772         (AM_CPPFLAGS): Add -DLTDL.
17773         * libltdl/argz.h (argz_append, argz_create_sep, argz_insert)
17774         (argz_next, argz_stringify): New file. Declare argz functions
17775         here, including lt__glibc.h when LTDL is defined to rename global
17776         symbols for libltdl.
17777         * m4/ltdl.m4 (AC_LTDL_FUNC_ARGZ): Add argz to AC_LIBOBJ if any of
17778         our argz_* functions are missing from the system libraries.
17779
17780         * libltdl/ltdl.c: Move standard headers and preprocessor guards
17781         from here...
17782         * libltdl/lt__private.h: ...to here.  New file to declare ltdl's
17783         internal interfaces.
17784         * libltdl/ltdl.c: Include lt__private.h.
17785         * m4/ltdl.m4 (AC_LIB_LTDL): Add lt_dirent to AC_LIBOBJ if all of
17786         opendir, readdir and closedir are missing.
17787         (AC_CHECK_HEADERS): Remove assert.h, ctype.h, errno.h, malloc.h,
17788         stdio.h and stdlib.h; these headers are all available in standard
17789         c89 environments and newer.
17790         * libltdl/lt__private.h: Include them here unconditionally.
17791         * libltdl/lt__dirent.c (opendir, readdir, closedir): New file.
17792         Windows dirent emulation functions moved to here...
17793         * libltdl/ltdl.c (opendir, readdir, closedir): ...from here.
17794         * libltdl/lt__dirent.h: New file.  Rename the global symbols from
17795         lt__dirent.c into the lt__ namespace so they don't clash with
17796         other libraries.
17797
17798 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17799
17800         Factor out the bottom portability layer from ltdl.  Code in this
17801         layer has global symbols renamed by lt__pre89.h, and may not
17802         refer to any symbols except those provided by the system libraries
17803         or other code in the portability layer:
17804
17805         * libltdl/lt__pre89.h: New file.  Rename all the symbols from
17806         LTLIBOBJS into the lt__ namespace so that they don't clash with
17807         other libraries.
17808         * libltdl/ltdl.c (rpl_memcpy, rpl_memmove, rpl_strchr, rpl_strcmp)
17809         (rpl_strrchr): Moved from here...
17810         * libltdl/memcpy.c (memcpy): ...to here, and fixed void *
17811         dereference bug...
17812         * libltdl/memmove.c (memmove): ...to here, and fixed void *
17813         dereference bug...
17814         * libltdl/strchr.c (strchr): ...to here...
17815         * libltdl/strcmp.c (strcmp): ...here...
17816         * libltdl/strrchr.c (strrchr): ...and here.
17817         * libltdl/Makefile.am (libltdl_la_SOURCES): Add lt__pre89.h.
17818         (libltdl_la_LIBADD, libltdlc_la_LIBADD): Add $(LTLIBOBJS).
17819         (ltdldata_DATA): Add replacement sources files.
17820         * m4/ltdl.m4 (AC_LIB_LTDL): Do careful config.h and LTLIBOBJ
17821         setting for missing pre89 functions.
17822
17823 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17824
17825         * libltdl/ltdl.h (LT_PARAMS): Removed.  Changed all users to
17826         ANSI prototypes.
17827         (lt_ptr): Keep backwards compatibility stub.
17828         * libltdl/ltdl.c, libltdl/ltdl.h: Use ANSI function declarations
17829         throughout.  s/lt_ptr/void */g.
17830
17831 2004-04-08  Fredrik Estreen  <estreen@algonet.se>
17832
17833         * m4/ltdl.m4: Rename shrext to shrext_cmds here too.
17834
17835 2004-04-06  Gary V. Vaughan  <gary@gnu.org>
17836
17837         There was no clean separation of abstraction layers in libltdl.
17838         The first step in fixing this is to factor out the memory
17839         management abstraction, making a start on removing promiscuity
17840         from the underlying portability layer:
17841
17842         * doc/libtool.texi (Libltdl interface): Remove lt_dlmalloc,
17843         lt_dlrealloc and lt_dlfree references.  The memory management
17844         layer used by libltdl is now private.
17845         * libltdl/lt_system.h: New installed header for system portability
17846         abstraction.
17847         * libltdl/ltdl.h: Use it.
17848         * libltdl/lt__alloc.c, libltdl/lt__alloc.h: New module above
17849         system portability layer to abstract ltdl's memory management.
17850         * libltdl/ltdl.c: Use lt__alloc.h.
17851         (closedir): Use free.
17852         (opendir): Use malloc/free.
17853         (lt__xalloc_die_callback): Report memory failures through
17854         lt_dlerror.
17855         (lt_dlinit): Use it to initialise memory management.
17856         (LT_DLMALLOC, LT_DLREALLOC, LT_DLFREE, LT_EMALLOC, LT_EREALLOC)
17857         (rpl_strdup, rpl_realloc, lt_estrdup, lt_emalloc, lt_erealloc):
17858         Removed in favour of...
17859         (lt__strdup, lt__memdup, MALLOC, REALLOC, FREE): ...these calls
17860         from libltdl/lt__alloc.h.  Changed all callers.
17861         (rpl_argz_append, rpl_argz_create_sep, rpl_argz_insert): As part
17862         of the portability layer, these functions no longer use libltdl
17863         memory management API.
17864         (free_vars): Factored out.
17865         (LT_DLMEM_REASSIGN): While redoing memory handling, renamed...
17866         * libltdl/lt__alloc.h (MEMREASSIGN): ...to this.
17867         * libltdl/Makefile.am (AUTOMAKE_OPTIONS): Let automake track
17868         dependencies automatically.
17869         (pkgincludedir): Override from parent package's setting.
17870         (pkginclude_HEADERS): Install lt_system.h.
17871         (libltdl_la_SOURCES): Add new files.
17872         * NEWS: Updated.
17873         Reported by Dalibor Topic <robilad@kaffe.org>
17874
17875 2004-04-01  Peter O'Gorman  <peter@pogma.com>
17876
17877         * ltmain.in: Remove an extra eval concat_cmds that some idiot added.
17878         Fixes double eval on AIX, reported by Albert Chin and Uwe Moeller.
17879
17880         * NEWS: Add a news item about xlc support that I forgot yesterday.
17881
17882 2004-03-31  Peter O'Gorman  <peter@pogma.com>
17883
17884         * m4/libtool.m4, ltmain.in (darwin): Support IBM's xlc and xlc++.
17885
17886 2004-03-31  Gary V. Vaughan  <gary@gnu.org>
17887
17888         * m4/libtool.m4 (_LT_LANG_C_CONFIG): If $compiler is not set, then
17889         don't call the macros that test it.
17890         (_LT_LANG_CXX_CONFIG): Ditto.
17891         (_LT_LANG_F77_CONFIG): Ditto.
17892         (_LT_LANG_GCJ_CONFIG): Ditto.
17893         (_LT_LANG_RC_CONFIG): Ditto.
17894
17895 2004-03-30  Gary V. Vaughan  <gary@gnu.org>
17896
17897         * libtoolize.in (func_scan_files): sed BRE have no alternation, so
17898         break LT_INIT matcher out.
17899         (func_serial): Don't escape literal parens for grep BRE.
17900
17901         * m4/libtool.m4 (LT_INIT): aclocal can't see AC_DEFUN_ONCE, so use
17902         AC_DEFUN and m4_define.
17903         * libtoolize.in (func_serial): No longer accept AC_DEFUN_ONCE...
17904         (func_grep): ...so mere grep is sufficient again...
17905         (EGREP): ...and this is no longer required.
17906
17907 2004-03-29  Gary V. Vaughan  <gary@gnu.org>
17908
17909         * m4/libtool.m4: Use LT_INIT as #serial tag.
17910         * libtoolize.in: Grok LT_INIT!  Pass A[CM]_PROG_LIBTOOL to...
17911         (func_serial_update): ...here, we now take an additional parameter
17912         containing another regex to match ancient serialed files.
17913         (func_serial): Accept AC_DEFUN_ONCE of the #serial tag...
17914         (func_grep): ...which requires egrep...
17915         (EGREP): ...substituted by config.status.
17916         (func_scan_files): Set seen_libtool if LT_INIT goes by.
17917
17918         * Makefile.am (pkgmacro_DATA): Install ltoptions.m4.
17919
17920         * libltdl/Makefile.am (AM_CPPFLAGS): Also check $top_builddir for
17921         config.h.
17922         (ltdl.o): config.h is in $top_builddir.
17923
17924 2004-03-24  Scott James Remnant  <scott@netsplit.com>
17925
17926         * NEWS: Explain more fully why we no longer load libraries
17927         with global symbol resolution.
17928         * doc/libtool.texi (libtool script contents): Add missing
17929         documentation for 'inherit_rpath' variable.
17930
17931         * configure.ac: Catch errors during calls to AC_PROG_CXX,
17932         AC_PROG_CXXCPP and AC_PROG_F77 before LT_INIT.  Only set the
17933         HAVE_CXX and HAVE_F77 conditions to true if an error didn't
17934         occur (AC_PROG_CXX leaves CXX="g++" even if it didn't find one).
17935         Set HAVE_GCJ and HAVE_RC to true correctly as well.
17936         * m4/libtool.m4 (LT_PROG_GCJ): If AC_PROG_GCJ or AM_PROG_GCJ are
17937         defined, expand to the definition of those instead of our own.
17938         Define GCJ to '' instead of 'no' if not found.
17939         (LT_PROG_RC) Define RC to '' instead of 'no' if not found.
17940         (_LT_LANG_GCJ_CONFIG): Require LT_PROG_GCJ to be expanded first.
17941         (_LT_LANG_RC_CONFIG): Require LT_PROG_RC to be expanded first.
17942
17943         * libltdl/ltdl.c (sys_dl_open): Don't load libraries with global
17944         symbol resolution.
17945         * NEWS: Updated.
17946
17947 2004-03-24  Albert Chin-A-Young  <china@thewrittenword.com>
17948
17949         * m4/libtool.m4: Add new variable, inherit_rpath, if the
17950         RPATHs of the libraries being linked are inherited in
17951         the output file. For systems with a linker exhibiting
17952         this feature, programs/libraries must be relinked at
17953         installation time.
17954
17955         * m4/libtool.m4: When linking convenience libraries on Solaris
17956         with the Sun C++ compiler, pass convenience libraries through
17957         to the linker with -Qoption between allextract/defaultextract.
17958         The Sun C++ compiler bundles -Qoption arguments so
17959         convenience libraries are linked with defaultextract
17960         otherwise.
17961         * tagdemo/Makefile.am, tagdemo/main.cpp, tagdemo/conv.h,
17962         tagdemo/conv.cpp: Augment tagdemo test to link a convenience
17963         library with a libtool library.
17964
17965         * ltmain.in: Piecewise linking doesn't work when the output
17966         file is an absolute path, use the basename only instead.
17967
17968         * ltmain.in: When a library is installed, dependent on a
17969         convenience library, and it involves relinking, the object
17970         files extracted from the convenience library are not removed
17971         after the relink. This is a problem if you build as non-root,
17972         install as root, then try to remove the build directory as
17973         non-root; Clean up properly if relink fails; Change
17974         "$realname"U to ${realname}T to be consistent.
17975
17976 2004-03-24  Scott James Remnant  <scott@netsplit.com>
17977
17978         * ltmain.in <prog linkmode>: Always add -L options to
17979         $newlib_search_path instead of just in scan mode to ensure that
17980         non-libtool libraries in user-specified directories can be found.
17981
17982 2004-03-22  Scott James Remnant  <scott@netsplit.com>
17983
17984         * m4/libtool.m4 (_LT_CONFIG): Remove unneeded else condition
17985         code, now the support determination is done in m4.
17986         (_LT_LANG): Correct comment, unexpected leak from keybuk-lt-tag.patch.
17987
17988 2004-03-21  Scott James Remnant  <scott@netsplit.com>
17989
17990         * libltdl/Makefile.am (libltdl_la_LDFLAGS): Increment CURRENT
17991         and AGE of libltdl, warranted by the addition of lt_dlhandle_find()
17992         since 1.5.2.
17993
17994 2004-03-21  Scott James Remnant  <scott@netsplit.com>
17995
17996         Further sweeping changes to the user interface to libtool from
17997         `configure.ac' to allow users to better control the list of
17998         supported languages.  Three LT_INIT options 'no-lang', 'all-lang'
17999         and 'auto-lang' (the default) control the initial list and others
18000         may be added with LT_LANG.
18001
18002         * m4/libtool.m4 (_LT_CONFIG): Renamed AC_LIBTOOL_CONFIG to _LT_CONFIG
18003         which is more consistent with our own namespace and gets us further out
18004         of Autoconf's.
18005         (_LT_LIBTOOL_TAGS): Output available_tags variable based entirely
18006         on the value of _LT_TAGS.
18007         (_LT_COPYING): Call _LT_LIBTOOL_TAGS to output available tags,
18008         always append tag configuration if the tag is available.
18009         (LT_LANG): New macro to enable support for a language that accepts
18010         tag names (eg. "CXX") or human language names (eg. "C++").
18011         (_LT_LANG): Internal support macro for above that appends the
18012         tag to _LT_TAGS and calls the appropriate config macro.
18013         (LT_INIT): Ensure that LT_LANG is not called before LT_INIT.
18014         (AC_LIBTOOL_TAGS): Removed, call LT_LANG for each language now.
18015         (_LT_AC_TAG_CHECK): Removed, _LT_LANG handles duplicate calls.
18016         (_LT_LANG_DEFAULT_CONFIG): Macro to set initial language support
18017         based on options passed to LT_INIT.
18018         (_LT_SETUP): Call _LT_LANG_DEFAULT_CONFIG.
18019         (_LT_AC_TAG_CONFIG): Removed, handled by _LT_LANG_DEFAULT_CONFIG.
18020         (_LT_AC_LANG_CXX, _LT_AC_LANG_F77, _LT_AC_LANG_GCJ): Removed,
18021         automatic language support inclusion now handled by
18022         _LT_LANG_DEFAULT_CONFIG.
18023         (AC_LIBTOOL_CXX): Obsolete macro, update to LT_LANG(C++).
18024         (AC_LIBTOOL_F77): Obsolete macro, update to LT_LANG(Fortran 77).
18025         (AC_LIBTOOL_GCJ): Obsolete macro, update to LT_LANG(Java).
18026         (AC_LIBTOOL_LANG_C_CONFIG_: Removed.
18027         (_LT_AC_LANG_C_CONFIG): Renamed to _LT_LANG_C_CONFIG, call
18028         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
18029         (_LT_SETUP): Replace call to AC_LIBTOOL_LANG_C_CONFIG with call to
18030         new _LT_LANG_C_CONFIG macro.
18031         (AC_LIBTOOL_LANG_CXX_CONFIG): Removed.
18032         (_LT_AC_LANG_CXX_CONFIG): Renamed to _LT_LANG_CXX_CONFIG, call
18033         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
18034         (AC_LIBTOOL_LANG_F77_CONFIG): Removed.
18035         (_LT_AC_LANG_F77_CONFIG): Renamed to _LT_LANG_F77_CONFIG, call
18036         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
18037         (AC_LIBTOOL_LANG_GCJ_CONFIG): Removed.
18038         (_LT_AC_LANG_GCJ_CONFIG): Renamed to _LT_LANG_GCJ_CONFIG, call
18039         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
18040         (AC_LIBTOOL_LANG_RC_CONFIG): Removed.
18041         (_LT_AC_LANG_RC_CONFIG): Renamed to _LT_LANG_RC_CONFIG, call
18042         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
18043         (LT_AC_PROG_GCJ): Renamed to LT_PROG_GCJ.
18044         (LT_AC_PROG_RC): Renamed to LT_PROG_RC.
18045         * m4/ltoptions.m4: Define new 'no-lang', 'auto-lang' and 'all-lang'
18046         options which set the default for _LT_LANG_DEFAULT_CONFIG.
18047         * m4/lt~obsolete.m4: Removed AC_LIBTOOL_CONFIG, _LT_AC_LANG_C_CONFIG,
18048         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG; all of which are no
18049         long referenced in any way.
18050         * configure.ac: Enable all languages.
18051         * tests/cdemo/configure.ac, tests/demo/configure,ac,
18052         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18053         tests/mdemo/configure.ac, tests/pdemo/configure,ac,
18054         tests/tagdemo/configure.ac: Remove calls to AC_LIBTOOL_TAGS,
18055         the default 'auto-lang' mode now does the right thing.
18056         * doc/libtool.texi (The LT_INIT macro): Add documentation for
18057         new LT_INIT options and the LT_LANG macro, replacing the old
18058         documentation of AC_LIBTOOL_TAGS which is no more.
18059         * NEWS: Updated.
18060
18061 2004-03-17  Scott James Remnant  <scott@netsplit.com>
18062
18063         * m4/libtool.m4: Removed AC_BEFORE references to AC_LIBTOOL_SETUP
18064         which is no more.
18065         * m4/lt~obsolete.m4: As AC_LIBTOOL_SETUP is no longer referenced,
18066         it can be removed from this file.  Remove _AC_PROG_LIBTOOL also.
18067
18068 2004-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18069
18070         * m4/libtool.m4: Remove newlines from lt_ld_extra, so
18071         variable can safely be stored in config.cache.
18072
18073 2004-03-14  Michael Pruett  <michael@68k.org>
18074
18075         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS0 [irix]: Define
18076         archive_expsym_cmds so that --export-symbols will work.
18077
18078 2004-03-11  Peter O'Gorman  <peter@pogma.com>
18079
18080         * ltmain.in (link_all_deplibs,darwin): Link libraries in the
18081         correct order. Bug from Zachary Pincus <zpincus@stanford.edu>.
18082
18083 2004-03-14  Scott James Remnant  <scott@netsplit.com>
18084
18085         * m4/ltmain.in: Only check precious_files_regex if it is not empty.
18086
18087 2004-03-14  Gary V. Vaughan  <gary@gnu.org>
18088
18089         * doc/libtool.texi (Autoconf and LTLIBOBJS): The correct version
18090         of Autoconf is 2.54.
18091         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
18092
18093 2004-03-13  Gary V. Vaughan  <gary@gnu.org>
18094
18095         * doc/libtool.texi (Using Automake): Cite correct Automake version
18096         for -dlopen quoting.
18097         (Autoconf and LTLIBOBJS): Cite correct Autoconf versions
18098         throughout.
18099         (Distributing libltdl): Use AM_CPPFLAGS; INCLUDES is deprecated.
18100         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
18101
18102 2004-03-05  David Edelsohn  <edelsohn@gnu.org>
18103
18104         * m4/libtool.m4: Disable building static libraries if building
18105         shared libraries on AIX 5L.
18106
18107 2004-03-05  Gary V. Vaughan  <gary@gnu.org>
18108
18109         * libtoolize.in: Remove --ltdl-tar.  It doesn't work with the
18110         current implementation, and seems more or less pointless.
18111         * doc/libtool.texi (Invoking libtoolize): Updated.
18112         * NEWS: Updated.
18113
18114         * doc/libtool.texi: This manual has not been maintained properly
18115         for a number of years.  Much of what it said was outdated, or
18116         plain wrong with reference to modern autotools.  This change
18117         represents a first pass edit to clean up the obviously wrong.
18118
18119 2004-03-02  Gary V. Vaughan  <gary@gnu.org>
18120
18121         * bootstrap: Prune out my arch mirror dir before running
18122         amok through the tree with 'rm -rf'!
18123
18124 2004-03-02  Patrick Welche  <prlw1@newn.cam.ac.uk>
18125
18126         * doc/libtool.texi (LT_INIT): Dumb typos fixed.
18127
18128 2004-02-23  Gary V. Vaughan  <gary@gnu.org>
18129
18130         * ltmain.in <install mode>: Add missing --help doc for
18131         -inst-prefix option.
18132
18133         * ltmain.in <link mode>: Add missing --help doc for -shrext
18134         option.
18135
18136         * ltmain.in (IFS): Move '\n' to beginning of IFS so that emacs
18137         doesn't offer to strip trailing ' \t' on every save.
18138
18139         * ltmain.in: Add missing --help doc for --preserve-dup-deps.
18140
18141 2004-02-22  Gary V. Vaughan  <gary@gnu.org>
18142
18143         * Makefile.maint (web-manual): Generate the web manual carefully
18144         so that links will still work when it is uploaded to gnu.org.
18145         * README-alpha: Note that this rule should be used at release
18146         time.
18147
18148 2004-02-20  Gary V. Vaughan  <gary@gnu.org>
18149
18150         Sweeping changes to the user interface to libtool from
18151         `configure.ac' to be more like AC_INIT and accept a space
18152         delimited list of options.  Instead of calling `AC_LIBTOOL_DLOPEN;
18153         AC_PROG_LIBTOOL', we now recommend `LT_INIT([dlopen])':
18154
18155         * m4/libtool.m4 (AC_PROG_LIBTOOL, _AC_PROG_LIBTOOL)
18156         (AC_LIBTOOL_SETUP): Removed.  Added AU_DEFUNs.
18157         (LT_INIT): Replace with an Autoconf like interface which accepts a
18158         version number as a minimum required libtool release at configure
18159         time.
18160         * m4/ltoptions.m4: New file inspired by automake/m4/amoptions.m4,
18161         which additionally flags an error if the configuring libtool
18162         macros are not new enough according to LT_INIT.
18163         (LT_OPTION_DEFINE): New macro to declare option handlers.
18164         (dlopen, win32-dll, shared, disable-shared, static)
18165         (disable-static, fast-install, disable-fast-install, pic-only)
18166         (no-pic): Newly LT_OPTION_DEFINEd option handlers that use...
18167         (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC, _LT_ENABLE_FAST_INSTALL)
18168         (_LT_WITH_PIC, _LT_WIN32_DLL): New macros to handle
18169         LT_LIBTOOL_INIT options...
18170         * m4/libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC)
18171         (AC_ENABLE_FAST_INSTALL, AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL):
18172         ...to replace these user interface macros, now defined as
18173         AU_DEFUNs.
18174         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
18175         Removed.  No longer required with LT_INIT_LIBTOOL interface.
18176         Added AU_DEFUNs.
18177         (AM_ENABLE_SHARED, AM_DISABLE_SHARED, AM_ENABLE_STATIC)
18178         (AM_DISABLE_STATIC): Changed AU_DEFUNs to match new interface.
18179         (_LT_SETUP): Internal to LT_INIT, replaces AC_LIBTOOL_SETUP.
18180         * m4/lt~obsolete.m4 (AC_LIBTOOL_SETUP, _AC_PROG_LIBTOOL)
18181         (_LT_PROG_LTMAIN):  More AC_DEFUNs that have been retracted.
18182         * configure.ac: Use new interface.
18183         * doc/libtool.texi: Document new interface.
18184         * NEWS: Updated.
18185
18186 2004-02-18  Gary V. Vaughan  <gary@gnu.org>
18187
18188         * commit (SHELL): Set it explicitly, incase some madman is using
18189         tcsh as their login shell :-b
18190
18191 2004-02-15  Scott James Remnant  <scott@netsplit.com>
18192
18193         * Makefile.am (m4/ltversion.m4): Generate serial number by
18194         removing initial '1.' from the revision, replace @MACRO_SERIAL@
18195         with this new variable.
18196         * m4/ltversion.in: Use @MACRO_SERIAL@ for the serial number
18197         as some shells don't like a '.' when using test.
18198
18199         * m4/ltversion.in: Add a serial number to this file otherwise
18200         libtoolize will refuse to copy it into $pkgdatadir, where it
18201         is needed by m4/libtool.m4.
18202
18203 2004-02-15  Peter O'Gorman  <peter@pogma.com>
18204
18205         * m4/libtool.m4, ltmain.in: Rename shrext to shrext_cmds.
18206
18207 2004-02-13  Scott James Remnant  <scott@netsplit.com>
18208
18209         * ltmain.in, libtoolize.in, commit, config/mailnotify: Correctly
18210         quote usage of $basename and $dirname to avoid (unlikely) path
18211         expansion.
18212
18213         * tests/sh.test: Test the config/ltmain.sh and libtoolize in the
18214         build directory not the source directory, where they won't exist
18215         during 'make distcheck'.
18216         * ltmain.in: Revert one line of previous intendation clean-up
18217         to enable one of the sh.test checks to pass.
18218
18219         * tests/cdemo/configure.ac: Drop AC_PREREQ back to 2.54, this
18220         was debris from Gary's cvsapply going mad and wasn't backed
18221         out.
18222
18223         * Makefile.am (pkgmacro_DATA): We have to distribute
18224         m4/ltversion.m4 because it can be needed before the Makefile
18225         that generates it exists.
18226
18227 2004-02-13  Gary V. Vaughan  <gary@gnu.org>
18228
18229         * commit (MKSTAMP): Look for mkstamp in the right place.
18230
18231 2004-02-12  Scott James Remnant  <scott@netsplit.com>
18232
18233         * Makefile.maint, Makefile: Move rules intended for Libtool
18234         maintainers only out of the Makefile we distribute and into one
18235         that we only need keep in CVS.
18236         * README-alpha: Add -fMakefile.maint to the instructions where
18237         needed.
18238
18239 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>
18240         Scott James Remnant  <scott@netsplit.com>
18241
18242         * ltmain.in: Fix typo: duplcations -> duplications,
18243         Fix indentation of a handful of badly indented blocks,
18244         Fix last remaining use of 'grep' to $GREP,
18245         Remove unnecessary trailing slash where we break a line on a
18246         command separator.
18247         * m4/libtool.m4: Also remove unnecessary trailing slash where
18248         we break a line on a command separator.
18249
18250 2004-02-12  Scott James Remnant  <scott@netsplit.com>
18251
18252         * m4/ltoptions.m4: This got committed by an over-keen Gary,
18253         but the support for this isn't ready yet and if aclocal decides
18254         to m4_include this (which it will) you'll get a non-functioning
18255         libtool.  Removed.
18256
18257         * ltmain.in: Remove duplicated version checking block.
18258
18259         * bootstrap, m4/libtool.m4: Argh, Gary went crazy after cvsapply
18260         went crazy and backed out more than he should've.  This patch puts
18261         some of it back again.
18262
18263         * ltmain.in, libtoolize.in, commit, config/mailnotify: Remove
18264         $SED from definitions of $dirname and $basename and prefix each
18265         use with it instead.  Some shells (zsh) treat the expansion as
18266         a single command instead of a command with arguments.
18267
18268         * config/mailnotify (func_sendmail): Look for sendmail in a
18269         couple of common non-PATH locations as well.
18270
18271         * ltmain.in: Fix typo: macro's -> macros.
18272
18273         * ltmain.in: Correct definition of basename sed expression to
18274         not include single quotes.
18275
18276 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
18277
18278         * libtoolize.in: Use $progpath as for ltmain.in to work around the
18279         IRIX bug described below.
18280         * commit, config/mailnotify: Ditto. Resynch with cvs-utils HEAD.
18281
18282 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>,
18283             Gary V. Vaughan  <gary@gnu.org>
18284
18285         * ltmain.in (progpath): Work around backward compatibility issue
18286         on IRIX 6.5. On IRIX 6.4+, sh is ksh but when the shell is invoked
18287         as "sh" and the current value of the _XPG environment variable is
18288         not equal to 1 (one), the special positional parameter $0, within
18289         a function call, is the name of the function. So, rather than
18290         using "$0" in functions, we set $progpath in the body and use that
18291         everywhere instead (incase of code refactoring later).
18292         (EXIT_SUCCESS, EXIT_FAILURE, EXIT_MISMATCH): For clarity.
18293
18294 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
18295
18296         * Makefile.am (EXTRA_DIST): Remove config/mailnotify after all; it
18297         is of no use in a distribution tarball.
18298
18299 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
18300
18301         * commit: Fix cut-n-paste error.
18302
18303         * commit: Completely change CVS/Root->name sed script to actually
18304         work when :ext: is not shown.
18305
18306         * commit: Improve CVS/Root->name sed script to work when :ext: is
18307         not shown.
18308
18309 2004-02-11  Albert Chin-A-Young  <china@thewrittenword.com>
18310
18311         * m4/libtool.m4: Fix typo: testring -> teststring.
18312
18313 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
18314
18315         * commit: Mail a nicer commit notification.
18316
18317 2004-02-10  Gary V. Vaughan  <gary@gnu.org>
18318
18319         * NEWS, bootstrap, configure.ac, ltmain.in, m4/libtool.m4:
18320         * m4/lt~obsolete.m4, tests/cdemo/configure.ac: Arghh.  cvsapply just
18321         went crazy and committed a bunch of stuff that shouldn't have been
18322         in the last changeset.  The patch backs it all out.
18323
18324         * config/mailnotify: New file for mailing commit notifications,
18325         imported from cvs-utils.
18326         * commit: Updated from cvs-utils and tweaked for libtool.
18327         * Makefile.am (EXTRA_DIST): Add config/mailnotify.
18328
18329 2004-02-06  Gary V. Vaughan  <gary@gnu.org>
18330
18331         * bootstrap: Remove vcl.tmp, otherwise it can interfere with make.
18332         * Makefile.am (vcl.tmp): Move comment out of multi-line command,
18333         as this rule is called from bootstrap as if it were a Makefile.
18334
18335         * m4/ltversion.in: New file to capture what version number macros
18336         are being used.
18337         * Makefile.am (m4/ltversion.m4): New rule to create it from
18338         m4/ltversion.in.
18339         (nodist_pkgmacro_DATA): Add m4/ltversion.m4.
18340         (EXTRA_DIST): Add m4/ltversion.in.
18341         * m4/libtool.m4 (AC_LIBTOOL_SETUP): AC_REQUIRE LTVERSION_VERSION
18342         from ltversion.m4.
18343         * bootstrap: Call the Makefile.am to create an initial
18344         m4/ltversion.m4.
18345         * ltmain.in: Diagnose version mismatches of various flavours.
18346         * TODO: Remove mismatch item.
18347         * NEWS: Updated.
18348
18349         * Makefile.am ($(top_builddir)/config.status): Removed.
18350         * configure.ac (CONFIG_STATUS_DEPENDENCIES): This substitution is
18351         how automake-1.8 now informs all Makefiles when config.status
18352         needs to be rebuilt.
18353         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
18354
18355         * configure.ac (AC_CONFIG_FILES): Generate libtoolize from here.
18356         * Makefile.am (libtool, libtoolize): These rules are redundant.
18357         Automake generates better rules for remaking these files.
18358
18359         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Catch unexpanded macros with
18360         beginning with LT_ and _LT_.
18361         * configure.ac (LT_MAJOR, LT_MINOR, LT_MICRO, LT_ALPHA): Renamed
18362         to lt_major, lt_minor, lt_micro, lt_alpha to save triggering the
18363         unexpanded macros error.
18364
18365         * m4/libtool.m4 (AC_PROVIDE_IFELSE): Removed.  We now require
18366         Autoconf 2.58, which ships this macro anyway.
18367
18368         * Makefile.am: Comment typo.
18369
18370         * m4/libtool.m4 (LT_PREREQ): Declare the minimum release number
18371         that is required for the calling code.
18372         * doc/libtool.texi (AC_PROG_LIBTOOL): Document it.
18373         * NEWS: Updated.
18374
18375 2004-02-05  Peter O'Gorman  <peter@pogma.com>
18376
18377         * ltmain.in (infer_tag, win32_libid): Style changes. Rename
18378         infer_tag to func_infer_tag and win32_libid to func_win32_libid.
18379         * m4/libtool.m4 (cygwin): rename win32_libid to func_win32_libid.
18380
18381 2004-02-04  Peter O'Gorman  <peter@pogma.com>
18382
18383         * ltmain.in (infer_tag): Move tag inferrence to a shell function.
18384         Also test $base_compile against $CC with escaped arguments. Bug
18385         reported by Geoff Keating <geoffk@apple.com>.
18386
18387 2004-02-03  Scott James Remnant  <scott@netsplit.com>
18388
18389         * Makefile.am (install-data-hook): Manually make config.guess
18390         and config.sub executable after they are installed as _DATA.
18391         We can't use _SCRIPTS because the various program name
18392         transforms may be applied to them.
18393         (dist_pkgdata_DATA): List config.guess and config.sub here
18394         (pkgdata_SCRIPTS): instead of here.
18395
18396 2003-02-03  Scott James Remnant  <scott@netsplit.com>
18397
18398         * ltmain.in: Create temporary directory under a strict umask
18399         rather than running chmod afterwards, preventing a race
18400         condition where the directory could be replaced with a symbolic
18401         link in the time between the two commands.
18402
18403 2004-01-31  Peter O'Gorman  <peter@pogma.com>
18404
18405         * m4/libtool.m4 (_LT_CONFIG_STATUS_DECLARE): Change `echo to
18406         `$echo, causes problems when builtin echo is broken. Reported
18407         by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18408
18409 2004-01-27  Scott James Remnant  <scott@netsplit.com>
18410
18411         This fixes release procedure problems discovered whilst making
18412         the 1.5.2 release.
18413
18414         * Makefile.am (cvs-dist): Because we check whether ChangeLog
18415         has been committed, this rule can't be run with uncommitted
18416         source so we can't run 'commit' and don't need to run
18417         'make dist' a second time.  Fix CVS tag as it should be
18418         "release-X" not "Release-X".
18419         (cvs_commit): New rule for the cvs-release chain that runs
18420         'commit'
18421         (cvs-release): Depend on cvs-commit, depend on deltas instead of
18422         cvs-diff and xdelta.
18423         (cvs-diff): Removed, replaced with delta-diff.
18424         (delta-diff): Unpack and diff the old and new tarballs rather
18425         than using CVS, so we get a genuinely complete diff.
18426         (xdelta): Removed, replaced with delta-xdelta.
18427         (got-xdelta): New rule for improved reading.
18428         (delta-xdiff): Copied and cleaned up version of old xdelta rule.
18429         (deltas): Depends on delta-diff and delta-xdelta (make deltas).
18430         (cvs-news): Don't depend on timestamps, cvs-dist itself does now.
18431         (prev-tarball): This is the only place we need a LASTRELEASE check
18432         so copy the code here and remove the CHECK_RELEASE variable.
18433         (new-tarball): Check there's a new tarball (did cvs-dist work?)
18434         (FETCHFILES): Remove obsolete libltdl mentions.
18435         * README-alpha: Update CVS instructions as everything's changed
18436         on Savannah.
18437         (Release procedure): Update NEWS and ChangeLog after changing
18438         the version number (both times); Run 'make fetch' after running
18439         'configure' (difficult to do it beforehand); Require 'commit'
18440         before 'make cvs-dist' as that checks ChangeLog is committed;
18441         'make deltas' instead of 'cvs-diff' and 'xdelta', pass LASTRELEASE
18442         to make instead of OLDVERSION (and it's mandatory); Clean up
18443         uploading paragraph; Clearer announcement sending instruction;
18444         Removed ftp-upload@gnu.org mail as that's not necessary now;
18445         Make web page updating instructions a bit clearer; Add an instruction
18446         to update the manual for non-alphas.
18447         (Alpha release note template): Add a Subject; update CVS instructions.
18448         (Full release note template): Add a Subject; update CVS instructions.
18449         * configure.ac: Add dist-bzip2 to AM_INIT_AUTOMAKE as we talk
18450         about bz2 files in our release announcements; remove old reference
18451         to OLDVERSION.
18452
18453 2004-01-25  Scott James Remnant  <scott@netsplit.com>
18454
18455         * NEWS: Include 1.5.2 release information.
18456
18457 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
18458
18459         This fixes a bug in the libtoolize ltdl source installation rules,
18460         which were copying Makefile.in from the libtool tree into the
18461         package running libtoolize.  Now we explicitly list the files to
18462         copy to force the package to generate its own Makefile.in:
18463
18464         * libltdl/Makefile.am (libltdl_la_SOURCES, libltdlc_la_SOURCES):
18465         Add ltdl.h.
18466         (ltdldatadir): New variable for installation directory of
18467         libtoolize --ltdl files.
18468         (ltdldata_DATA): Tell automake what files to copy there at install
18469         time (and remove at unistall time!).
18470         (local-install-files): Removed.  This hack is not required
18471         anymore, the automake generated install rules are much more
18472         advanced than this.
18473         * Makefile.am (install-data-hook, uninstall-local): Removed.
18474         Libltdl files for libtoolize are installed by their own Makefile
18475         now.
18476
18477 2004-01-22  Jeff Squyres  <jsquyres@lam-mpi.org>
18478
18479         * m4/libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Some compilers
18480         (e.g. Intel Linux icc compiler) write temporary files to the current
18481         directory. These compilers do support -c and -o simultaneously but
18482         wrongly fail the test due to the failure to create temporary
18483         files. It is incorrect to penalize compilers which write temporary
18484         files to the current directory so the 'chmod -w .' is therefore
18485         removed.
18486
18487 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
18488
18489         * m4/libtool.m4 (LT_AC_PROG_EGREP): Wrapper for AC_PROG_GREP.
18490         AIX has a brain-dead grep that only handles lines < 2048
18491         characters.  Default GREP incase we are not using a future
18492         autoconf that sets it for us :-)  Changed all callers to use $GREP
18493         instead of grep, and to AC_REQUIRE LT_AC_PROG_EGREP.
18494         Declare GREP as a libtool config var.
18495         * ltmain.in: Use it.
18496         * tests/sh.test (scripts): Accept `if $GREP "^foo=bar"' by
18497         tightening the regexp.
18498         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
18499
18500 2004-01-21  Nick Hudson  <skrll@netbsd.org>
18501
18502         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [netbsd*]: Remove
18503         gratuitous ${libname}${release}${shared_ext} from
18504         library_names_spec.
18505
18506 2004-01-21  Peter O'Gorman  <peter@pogma.com>
18507
18508         * m4/libtool.m4 (AC_PROG_LD_RELOAD_FLAG): On darwin change the
18509         reload_cmds to use $CC, otherwise ld will thin out any fat
18510         objects.
18511
18512 2004-01-18  Benjamin Reed  <ranger@befunk.com>
18513
18514         * ltmain.in: Fix handling of frameworks in search paths.  Also
18515         a one-liner fix to eval shrext in the libtool library search.
18516
18517 2004-01-16  Gary V. Vaughan  <gary@gnu.org>
18518
18519         * configure.ac (AM_INIT_AUTOMAKE): Require 1.8 for bootstrap, or
18520         else aclocal.m4 is huge, and m4 directory is not distributed.
18521
18522         * configure.ac (AC_CONFIG_HEADERS): Create config.h in
18523         $top_srcdir.
18524         * m4/ltdl.m4 (AC_LIB_LTDL): Run AC_CONFIG_HEADERS for the user if
18525         necessary. Calculate filename from first argument to
18526         AC_CONFIG_HEADERS, and substitute as CONFIG_H.
18527         * libltdl/Makefile.am (AM_CPPFLAGS): Make sure we are searching in
18528         $top_srcdir for headers.
18529         (DEFS): Override the default HAVE_CONFIG_H with the config.h
18530         filename.
18531         (ltdl.lo): Reference config.h via $(CONFIG_H).
18532         * libltdl/ltdl.c (HAVE_CONFIG_H): Ditto.
18533
18534 2004-01-15  Scott James Remnant  <scott@netsplit.com>
18535
18536         * m4/lt~obsolete.m4: Add a file containing aclocal-fooling
18537         macro definitions which stop the contents of an installed
18538         libtool.m4 ending up in our aclocal.m4 when we bootstrap.
18539         * Makefile.am (pkgmacro_DATA): Note that we don't need to add
18540         lt~obsolete.m4 to this list.
18541
18542 2004-01-12  Gary V. Vaughan  <gary@gnu.org>
18543
18544         * m4/libtool.m4 (_LT_COPYING): Factor out copyright message so it
18545         only needs to be updated in one place.
18546         (AC_LIBTOOL_CONFIG): Refactor to be more readable.  Only add
18547         tags if a compiler was found; ie if you have no gcj compiler,
18548         don't tack the GCJ tag onto the generated libtool script.
18549
18550 2004-01-13  Peter O'Gorman  <peter@pogma.com>
18551
18552         * m4/libtool.m4: Quote shrext as it is evaled in ltmain.
18553
18554 2004-01-11  Scott James Remnant  <scott@netsplit.com>
18555
18556         * ltmain.in: new -precious-files-regex link mode option
18557         to prevent removal of matching files from the temporary
18558         output directory.
18559         (Debian Bug #221420)
18560         * doc/libtool.texi: document the new option.
18561         * NEWS: announce the new option.
18562
18563 2004-01-11  Gary V. Vaughan  <gary@gnu.org>
18564
18565         * libtoolize.in (func_copy_all_files): s/xfunc_copy/Xfunc_copy.
18566         Now the test can actually succeed sometimes.
18567
18568 2004-01-09  Gary V. Vaughan  <gary@gnu.org>
18569
18570         * libtoolize.in: Break out of the command argument parse loop when
18571         -- is encountered.
18572
18573 2004-01-08  Gary V. Vaughan  <gary@gnu.org>
18574
18575         * libtoolize.in (func_copy_all_files): s/test "x/test "X/ to keep
18576         tests/sh.test happy.
18577
18578 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
18579
18580         * Makefile.am (aclocal_macros, aclocal_DATA): Removed.
18581         (EXTRA_DIST): Remove m4 macro files; they are automatically
18582         added by automake.
18583         (pkgmacrodir): Where to install libtool macro files.
18584         (pkgmacro_DATA): List installable libtool macro files.
18585         (install-data-local): Remove previous versions of ltdl.m4 and
18586         libtool.m4 from their old location.
18587         * libtoolize.in: Use new pkgmacrodir installed macros when
18588         libtoolizing a project.  Treat libtool.m4 and ltdl.m4 specially,
18589         and func_serial_update() any other files from pkgmacrodir.
18590         (pkgmacrodir): Where to find installed libtool macro files.
18591         (aclocaldir): Removed.
18592         (func_copy_all_files): Add an optional callback parameter to
18593         control how files are copied.  If the callback is passed, don't
18594         tell it whether it can copy or not.
18595         (func_serial): Exchange parameters and make macro_regex optional,
18596         so that this function can be used to extract serial numbers from
18597         files with the traditional /^# serial [1-9][0-9]*$/ syntax.
18598         Changed all callers.
18599         (func_serial_update): Make macro_regex optional last parameter, so
18600         that this function can be used as a callback for
18601         func_copy_all_files().  Changed all callers.
18602         * m4/ltsugar.m4: Add a serial number.
18603
18604 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
18605
18606         A complete rewrite of the m4 code involved in the generation of
18607         libtool via config.status.  The old way involved manually
18608         synchronising disparate bits of shell code in several macros, to
18609         quote a copy of a shell variable, put that in config.status, maybe
18610         add it to some quotation loops to prevent early expansion, and
18611         then add a block to _LT_CONFIG_COMMANDS to bring it into the
18612         libtool script.  The new way is to mark shell variables for
18613         propogation using _LT_DECL for language independent variables, or
18614         _LT_TAGDECL for those that need to be propogated in several
18615         language flavours.  The marking can be done in the macro that
18616         probes the variables, and this new m4 machinery takes care of
18617         synchronising all the other bits of code at autoconf time:
18618
18619         * m4/ltsugar.m4:  New file.  Macros that are useful outside the
18620         context of libtool.  Initially, contains some generalised list
18621         management macros, and the scaffolding for dictionary type data
18622         storage and retrieval.
18623         * Makefile.am (aclocal_macros): Install ltsugar.m4.
18624         * m4/libtool.m4 (_LT_DECL): Mark a shell variable for export to
18625         the libtool script, along with a comment, and hints for quoting
18626         and renaming.
18627         (_LT_TAGDECL): Similarly mark a tagged shell variable for export
18628         in each tag.
18629         (lt_decl_tag_varnames, lt_decl_quote_varnames)
18630         (lt_decl_dquote_varnames, lt_decl_varnames_tagged)
18631         (lt_decl_all_varnames):  New utility macros for managing lists of
18632         shell variable names from _LT_DECL and _LT_TAGDECL.
18633         (_LT_CONFIG_STATUS_DECLARATIONS, _LT_CONFIG_STATUS_DECLARE):
18634         Expand to correctly quoted variable declarations in config.status
18635         from all marked shell variables.
18636         (_LT_LIBTOOL_DECLARE): Expand to commented and quoted variable
18637         declaration for libtool tag section.
18638         (_LT_LIBTOOL_CONFIG_VARS, _LT_LIBTOOL_TAG_VARS): Pass all marked
18639         variables to _LT_LIBTOOL_DECLARE.
18640         (_LT_CONFIG_COMMANDS): Use _LT_CONFIG_STATUS_DECLARATIONS and
18641         friends to generate all the variable passing shell code for
18642         config.status, to get marked variables from libtool.m4 into
18643         libtool itself eventually.
18644         (AC_LIBTOOL_CONFIG): Generate marked variable code for libtool tag
18645         configuration.  Changed all client macros to mark variables
18646         suitably rather than the hand pasting that was necessary
18647         previously.
18648         (AC_PROG_SED): Renamed from LT_AC_PROG_SED.
18649         (LT_AC_PROG_SED): Wrap AC_PROG_SED, and mark shell variables for
18650         propogation to the libtool script.
18651
18652 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
18653
18654         * libtoolize.in (seen_gettext): Removed unused variable.
18655
18656 2004-01-06  Gary V. Vaughan  <gary@gnu.org>
18657
18658         * libtoolize.in (func_scan_files): Don't assume the existence of
18659         aclocal.m4.  Make the comment more descriptive.
18660         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
18661
18662         * NEWS: Note libtoolize changes.
18663
18664         * ChangeLog.2003: New file, containing all the ChangeLog entries
18665         from 2003.  Trimmed ChangeLog accordingly.
18666
18667         * ltmain.in: Output 2004 in the copyright from libtool --version.
18668
18669 2004-01-03  Stefan Nordhausen  <nordhaus@informatik.hu-berlin.de>
18670         Scott James Remnant  <scott@netsplit.com>
18671
18672         * ltmain.in: Don't use the mkdir -p option when creating a
18673         temporary output directory so a symlink attack can't be used to
18674         arbitrarily chmod other directories on the system if libtool
18675         gets run as root.
18676
18677 2004-01-02  Peter O'Gorman  <peter@pogma.com>
18678
18679         * m4/libtool.m4: Ensure that ${ZSH_VERSION+set} is properly escaped.
18680
18681         * m4/libtool.m4 (CDPATH): Change the CDPATH setting so that it
18682         allows for zsh differences, as noted in the autoconf manual's
18683         Portable Shell - Special Shell Variables section.
18684
18685 2004-01-02  Scott James Remnant  <scott@netsplit.com>
18686
18687         * .cvsignore: Ignore stamp-vcl created by the Makefile.
18688
18689 2004-01-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
18690         Joe Orton  <joe@manyfish.co.uk>
18691
18692         * m4/libtool.m4 (AC_LIBTOOL_CONFIG): Add extra blackslash
18693         in front of all the inner double-quotes as this is removed
18694         on Solaris, IRIX and AIX leading to broken definitions
18695         in config.status.
18696
18697 2004-01-02  Scott James Remnant  <scott@netsplit.com>
18698
18699         * NEWS: Next release will be in 2004.
18700
18701 2003-12-31  Scott James Remnant  <scott@netsplit.com>
18702
18703         * ltmain.sh: Infer tagged configuration for link mode with the
18704         full compiler arguments available rather than only the first.
18705
18706 2003-12-31  Alexandre Duret-Lutz  <adl@gnu.org>
18707
18708         * ltmain.sh: Quote $exec_cmd before it is eval'ed, so that
18709         libtool --mode=execute echo '4 * 5' does not expand the `*'.
18710
18711 2003-11-28  Peter O'Gorman  <peter@pogma.com>
18712
18713         * m4/libtool.m4: Move things around so that "setopt NO_GLOB_SUBST"
18714         to make zsh behave wrt \ escapes happens early in config.status.
18715
18716 2003-11-27  Gary V. Vaughan  <gary@gnu.org>
18717
18718         * libltdl/configure.ac: Removed.
18719         * configure.ac (AC_CONFIG_HEADERS): Merged from
18720         libltdl/configure.ac.
18721         (AC_LIB_LTDL): Ditto.
18722         (AC_CONFIG_FILES): Add libltdl/Makefile.
18723         (AC_CONFIG_SUBDIRS): Removed.
18724         (AC_CONFIG_COMMANDS): Remove generation of libltdl/ltmain.sh.
18725         * libltdl/Makefile.am (libtool): Removed references, since we now
18726         share $(top_builddir)/libtool.
18727         * NEWS: Updated.
18728
18729 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18730
18731         * Makefile.am (vcl.tmp): Be careful of VPATH builds.
18732
18733         * Makefile.am (EXTRA_DIST): Add stamp-vcl, or we go back to a
18734         double configure run from a distributed tarball :-?
18735
18736 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18737
18738         Okay, the problem I am trying to solve is that when a change (say,
18739         bumping the version to 1.6 for the next release) is committed, the
18740         timestamp in ChangeLog is updated, but ltmain.sh and libtoolize
18741         inherit the pre-commit build number from config.status.  This
18742         delta notes the change in build number in the unstamped ChangeLog
18743         and forces a rerun of configure etc. to roll a new ltmain.sh with
18744         the correct TIMESTAMP:
18745
18746         * Makefile.am (stamp-vcl): We actually need a new config.status to
18747         force the correct timestamp into libtoolize and ltmain.sh,
18748         rerunning autoconf has no effect at all if configure.ac hasn't
18749         changed.
18750
18751 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18752
18753         * Makefile.am (stamp-vcl): New rules to force libtool and
18754         libtoolize scripts to update when the TIMESTAMP changes in
18755         ChangeLog, but the file modification time doesn't (e.g in cvs
18756         commit).  Otherwise we'll carry on releasing tarballs with the
18757         wrong version numbers in the tools!
18758
18759         * config/mkstamp: Change output format to ` $rev $date'.
18760         * configure.ac: Make the banner more like suggestions in
18761         http://www.gnu.org/prep/standards_toc.html Section 4.6.
18762         * libtoolize.in: Make --version output conform to the GNU
18763         standard.
18764         * ltmain.in: Ditto. And tweak the generated file headers to
18765         match.
18766
18767 2003-11-25  Gary V. Vaughan  <gary@gnu.org>
18768
18769         * Makefile.am (config.status): Removed.  Rebuilding config.status
18770         isn't enough, because the TIMESTAMP in configure is still out
18771         of date.
18772         (configure): We actually need a new configure to force the
18773         correct timestamp into ltmain.sh.
18774
18775         * Makefile.am (config/ltmain.sh): Removed.  Rebuilding ltmain.sh
18776         isn't enough, because the TIMESTAMP in config.status is still out
18777         of date.
18778         (config.status): We actually need a new config.status to force the
18779         correct timestamp into ltmain.sh.
18780
18781         * Makefile.am (config/ltmain.sh): Note the dependency on the
18782         timestamp in ChangeLog so we don't ship libtools that report the
18783         wrong version number :-/
18784
18785         * bootstrap: Explain automake and autoconf version dependencies
18786         truthfully, and the difference between bootstrap and user
18787         dependencies.
18788         * configure.ac (AM_INIT_AUTOMAKE): List AUTOMAKE_OPTIONS here.
18789         * Makefile.am, doc/Makefile.am, tests/Makefile.am
18790         (AUTOMAKE_OPTIONS): Removed from here.
18791
18792 2003-11-24  Gary V. Vaughan  <gary@gnu.org>
18793
18794         * tests/defs (func_configure): cdemo, demo and mdemo are shows
18795         signs of indeterminacy for some users.  Be more verbose during
18796         failure to help track down the cause.
18797
18798 2003-11-22  Peter O'Gorman  <peter@pogma.com>
18799
18800         * ltmain.in: Check for module_cmds if max_cmd_len is exceeded too.
18801
18802         * ltmain.in: Move eval to after command separation to allow ~ in paths.
18803
18804         * tests/demo-hardcode.test: Call ./libtool not libtool.
18805
18806         * ltmain.in: Test $old_striplib before using it, not $striplib.
18807
18808 2003-11-22  Gary V. Vaughan  <gary@gnu.org>
18809
18810         * configure.ac (LASTRELEASE): Calculate it as best as we can from
18811         AC_PACKAGE_VERSION.
18812         * Makefile.am (distdir): Remove dependency on timestamps so that
18813         it is possible to roll a dist without contacting the cvs server.
18814         Use `make cvs-release' for that.
18815         (cvs-news): Extracted from cvs-dist.
18816         (cvs-dist): Depend on cvs-news.
18817         (CHECK_LASTRELEASE): Check LASTRELEASE has been set.
18818         (prev-tarball): New rule.  Use LASTRELEASE to make sure the
18819         previous release tarball is present.
18820         (cvs-diff): Use CHECK_LASTRELEASE.
18821         (xdelta): Ditto.
18822         (cvs-release): Depend on prev-tarball, timestamps, cvs-news and
18823         fetch. Provided you set LASTRELEASE appropriately, making a full
18824         cvs release is just a matter of `make cvs-release', and submitting
18825         the files to ftp-upload.
18826
18827 2003-11-19  Gary V. Vaughan  <gary@gnu.org>
18828
18829         * m4/libtool.m4 (_LT_PROG_LTMAIN): Ensure config.status has a
18830         value for `ac_aux_dir' when automake is not used.
18831         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
18832
18833         * configure.ac (AC_PREREQ): AS_HELP_STRING was introduced after
18834         autoconf-2.57 was released.
18835
18836 2003-11-18  Gary V. Vaughan  <gary@gnu.org>
18837
18838         * libltdl/ltdl.c (lt_dlhandle_find): New function to find a handle
18839         by module name.
18840         * libltdl/ltdl.h (lt_dlhandle_find): Declare it.
18841         * doc/libtool.texi (User defined module data): Document it.
18842         * NEWS: Updated.
18843
18844 2003-11-17  Gary V. Vaughan  <gary@gnu.org>
18845
18846         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Uncomment call to
18847         _LT_CONFIG_COMMANDS.
18848         (_LT_AC_TAG_CONFIG, AC_LIBTOOL_CONFIG): Accumulate tag generation
18849         for `config.status' using _LT_CONFIG_SAVE_COMMANDS.  Remove
18850         AC_MSG_NOTICE noise now that libtool is generated by a single
18851         config.status tag.
18852         * Makefile.am (libtool): Specify CONFIG_COMMANDS properly now that
18853         libtool is generated in one pass.
18854
18855         * configure.ac (CONF_SUBDIRS): Make these relative to
18856         tests/Makefile.am.
18857         (DIST_MAKEFILE_LIST): Adjust to compensate for having removed the
18858         `tests/' part in CONF_SUBDIRS.
18859         * tests/Makefile.am (DIST_SUBDIRS): Distribute these directories.
18860         (SUBDIRS): Set to `.', a NOP, to workaround an automake bug which
18861         ignores DIST_SUBDIRS unless SUBDIRS is also set.
18862         * Makefile.am (DIST_SUBDIRS): Don't try to distribute the tests
18863         subdirectories from here, since the recursive automake dist rule
18864         only works with direct child directories.  Defer to
18865         tests/Makefile.am in this case.
18866
18867 2003-11-15  Scott James Remnant  <scott@netsplit.com>
18868
18869         * ltmain.in: In compile mode, delay parsing of -shared, -static,
18870         -prefer-pic and -prefer-non-pic until after tagged configuration
18871         has been read.  In link mode, read tagged configuration before
18872         parsing any arguments.  These arguments will now work when using
18873         a non-C compiler.
18874
18875 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
18876
18877         * NEWS: Mention AC_LIBTOOL_TAGS.
18878
18879         * Makefile.am (EXTRA_DIST): List ChangeLog files correctly.
18880
18881         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18882         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18883         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18884         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Declare just
18885         the tags we need using AC_LIBTOOL_TAGS, reducing the size of the
18886         configure script by 50% in most cases.
18887
18888 2003-11-14  Marius Vollmer  <mvo@zagadka.de>
18889
18890         * doc/libtool.texi (Libltdl interface): libltdl does in fact load
18891         dependency libs for lt_dlopen()ed modules.
18892
18893 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
18894
18895         Run our configure.ac files through Autoconf 2.59's autoupdate, and
18896         then tweak the results by hand:
18897
18898         * m4/libtool.m4 (AC_PROG_LD): In common with all the other
18899         AC_PROG_ macros, AC_SUBST the discovered LD.
18900         (AC_PROG_NM): Similarly for NM.
18901         (LT_AC_PROG_SED): Similarly for SED.
18902         * configure.ac: No need to SUBST NM and LD manually any more.
18903         (AC_PREREQ): Conservatively downgrade from 2.59 to 2.54.
18904         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18905         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18906         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18907         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Ditto.
18908         * m4/libtool.m4 (AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
18909         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC,
18910         AM_PROG_LD, AM_PROG_NM): AU_DEFUN these macros so autoupdate can
18911         use the newer definitions.
18912
18913 2003-11-12  Gary V. Vaughan  <gary@gnu.org>
18914
18915         The rules for uploading releases to gnu.org have been updated, and
18916         are in fact now rather complicated.  This delta updates the
18917         release instructions to the describe the new process, and updates
18918         the maintainer rules to help automate many of the steps:
18919
18920         * README-alpha: Updated release instructions.
18921         * Makefile.am (GPG): Name of the program for generating signatures
18922         for files to be uploaded.
18923         (XDELTA, XDELTA_OPTIONS): Invocation of xdelta.
18924         (cvs-dist): Run distcheck before tagging the cvs tree incase
18925         distcheck fails, and then generate the gpg signature files.
18926         (cvs-diff): Generate the gpg signature files for the diff.
18927         (xdelta): New rule for generating the xdelta diffs and associated
18928         gpg signature files.
18929         (cvs-release): New rule to do all of the above, if you don't mind
18930         typing your gpg passphrase over and over again. :-)
18931         (fetch): New rule inspired by automakes similar rule for updating
18932         files maintained outside the project.
18933         * config/config.guess, config/config.sub: Updated with the new
18934         fetch rule.
18935
18936 2003-11-11  Gary V. Vaughan  <gary@gnu.org>
18937
18938         * libltdl/ltdl.c (lt_dlinit): Save a function call for each loader
18939         added to the list, in exchange for appending loaders to the list
18940         with O(N) rather than O(1).  The longest the loader list can ever
18941         get is 4 (on cygwin with dld installed) so it probably constitutes
18942         a small speedup, in addition to making the code much more readable.
18943
18944         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Don't define the value for
18945         ltmain unconditionally.
18946         (_LT_PROG_LTMAIN): New macro to ensure that the
18947         shell variable `ltmain' actually points at a suitable `ltmain.sh'.
18948         (_AC_PROG_LIBTOOL): Require it.
18949         (AC_LIBTOOL_CONFIG, _LT_AC_TAG_CONFIG): Invoke it.
18950         * Makefile.am (libtool): ltmain.sh is in the build tree.
18951         * libltdl/configure.ac: Ditto.
18952
18953 2003-11-10  Scott James Remnant  <scott@netsplit.com>
18954
18955         * ltmain.in: Add -pthread and similar to $deplibs ($compile_deplibs
18956         and $finalize_deplibs for programs) when found on the command line
18957         or in a .la file's dependency_libs (but don't place them there) so
18958         they are honoured when linking both programs and libraries.
18959
18960 2003-11-10  Scott James Remnant  <scott@netsplit.com>
18961
18962         * m4/libtool.m4  (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [linux]: Include
18963         directories found in /etc/ld.so.conf in sys_lib_dlsearch_path_spec.
18964
18965 2003-11-09  Peter O'Gorman  <peter@pogma.com>
18966
18967         * ltmain.in (linkalldeplibs,darwin): Fix a bug reported by Idar
18968         Tollefsen where a dir could be added to the link line with no '-L'
18969         on darwin.
18970
18971 2003-11-07  Gary V. Vaughan  <gary@gnu.org>
18972
18973         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18974         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18975         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18976         tests/pdemo/configure.ac, tests/tagdemo/configure.ac:
18977         s/AM_PROG_LIBTOOL/AC_PROG_LIBTOOL/. Marching boldly into the 21th
18978         century :-$
18979
18980         * m4/libtool.m4 (AC_LIBTOOL_TAGS, AC_ENABLE_SHARED,
18981         AC_DISABLE_SHARED, AC_ENABLE_STATIC, AC_DISABLE_STATIC,
18982         AC_ENABLE_FAST_INSTALL, AC_DISABLE_FAST_INSTALL, AM_PROG_LIBTOOL,
18983         AM_ENABLE_SHARED, AM_ENABLE_STATIC, AM_DISABLE_SHARED,
18984         AM_DISABLE_STATIC): These macros must be AC_DEFUNed after all,
18985         otherwise aclocal can't find them when it tries to construct
18986         `aclocal.m4'.
18987
18988         * Makefile.am (install-data-local): Wipe out old installation
18989         pkgdatadir before installing new files.
18990         * NEWS: Updated.
18991
18992         * libtoolize.in (func_scan_files): If libtoolize is run before
18993         automake has created install-sh and configure.ac does not mention
18994         AC_CONFIG_AUX_DIR, fall back to the current directory for auxdir.
18995
18996 2003-11-07  Robert Millan  <zeratul2@wanadoo.es>
18997
18998         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD) [GNU/KNetBSD]: Detect
18999         inter-library dependencies.
19000
19001 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
19002
19003         * m4/libtool.m4 (_LT_AC_FILE_LTDLL_C): Removed; no longer in use.
19004
19005         * m4/libtool.m4: s/ifelse(/m4_if(/g
19006         (_LT_AC_SYS_LIBPATH_AIX, _LT_AC_SHELL_INIT,
19007         _LT_AC_PROG_ECHO_BACKSLASH, AC_LIBTOOL_LINKER_OPTION,
19008         AC_LIBTOOL_TAGS, _LT_AC_TAG_CHECK, _LT_AC_TAG_CONFIG,
19009         AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC,
19010         AC_DISABLE_STATIC, AC_ENABLE_FAST_INSTALL,
19011         AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_C_CONFIG,
19012         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG,
19013         _LT_AC_TAGVAR, AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
19014         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC): Use
19015         m4_define instead of AC_DEFUN for internal macros that do not
19016         AC_PROVIDE or AC_REQUIRE, and documented user macros that cannot
19017         be AC_REQUIREd because they need arguments, or because that would
19018         violate the documented API.
19019
19020         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Add a new
19021         delay_single_quote_subst sed script to quote single quotes in
19022         variables that are copied to `config.status'.
19023         (_LT_CONFIG_STATUS_DECLARE): New macro to apply
19024         delay_single_quote_subst to a named variable.
19025         (AC_LIBTOOL_CONFIG): Use _LT_CONFIG_STATUS_DECLARE to declare all
19026         `configure' variables that are copied to `config.status'.
19027         (AC_LIBTOOL_PROG_COMPILER_PIC): Fix a quoting bug exposed by
19028         _LT_CONFIG_STATUS_DECLARE using the null quadrigraph in the
19029         rvalues of lt_prog_compiler_pic.
19030
19031 2003-11-06  Owen Taylor  <otaylor@redhat.com>
19032
19033         * m4/libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Recognise the
19034         'R' symbol type so read-only symbols can be exported when combining
19035         GCC and Solaris LD.
19036
19037 2003-11-06  James Henstridge  <james@daa.com.au>,
19038         Scott James Remnant  <scott@netsplit.com>
19039
19040         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [Linux]: Fix the
19041         -export-symbols and -export-symbols-regex options.
19042
19043 2003-11-06  Scott James Remnant  <scott@netsplit.com>
19044
19045         * tests/demo-nopic.test: Skip test on hppa, which don't like
19046         non-PIC shared libraries.
19047
19048 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>
19049
19050         * tests/depdemo/configure.ac, tests/mdemo/configure.ac,
19051         tests/mdemo2/configure.ac: process 'libtool --features'
19052         from Makefile, not configure -- because libtool doesn't
19053         exist at configure time.
19054
19055         * ltmain.in (find_executable, check_executable) [cygwin*, mingw*]:
19056         binary wrapper used with uninstalled executables breaks when
19057         invoked via execlp/execvp (that is, via $PATH).  Handle that case.
19058         (fnqualify): Subsumed into find_executable.
19059
19060         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin*, mingw*]:
19061         when extracting symbols from an import lib (occurs if
19062         --enable-shared --disable-static), the output of
19063         $global_symbol_pipe is not the same as  when extracting from a
19064         static library (the default case). Add extra filters to
19065         $export_symbols_cmds to process this sort of output in addition to
19066         'normal' static-lib output.
19067         * NEWS: Updated.
19068
19069 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>,
19070         Gary V. Vaughan  <gary@gnu.org>
19071
19072         * libltdl/ltdl.c (LT_USE_POSIX_DIRENT): Factored out.
19073         (LT_USE_WINDOWS_DIRENT_EMULATION): Move to after include "ltdl.h",
19074         as they are affected by __WINDOWS__ definition.
19075         (LT_READTEXT_MODE): Use textmode to read .la files.
19076         (lt_dlinit): Use LoadLibrary loader as a fallback on cygwin.
19077
19078 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
19079
19080         * libltdl/ltdl.h (__WINDOWS__): Define this if _WIN32 or WIN32 are
19081         defined, unless __CYGWIN__ or __CYGWIN32__ are defined.
19082         (LT_SCOPE): Now set without reference to __CYGWIN__ definition,
19083         since __WINDOWS__ now implies !__CYGWIN__ after canonicalisation.
19084         (LT_PARAMS, lt_ptr): Use canonicalised __WINDOWS__ to determine
19085         which values to set these macros to.
19086
19087 2003-11-05  Gary V. Vaughan  <gary@gnu.org>
19088
19089         * README-alpha: Mention autotools-announce@gnu.org, and update release
19090         note templates.
19091
19092 2003-11-01  Scott James Remnant  <scott@netsplit.com>
19093
19094         * ltmain.in: When relinking, place the -L parameter containing
19095         the installation prefix directory after the intended destination,
19096         so we don't accidentally link against an older installed library.
19097
19098 2003-11-01  Peter O'Gorman  <peter@pogma.com>
19099
19100         * tests/mdemo2/Makefile.am: Let mdemo2 find ltdl.h again.
19101
19102 2003-10-30  Peter O'Gorman  <peter@pogma.com>
19103
19104         * m4/libtool.m4 (Darwin): Fix stupidities for darwin tags support.
19105         Makes it work again if AC_LIBTOOL_TAGS is specified in configure.ac.
19106         Bug reported by Joe Orton and Christian Schaffner.
19107
19108 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
19109
19110         Start to eliminate the double run of configure in a fresh CVS
19111         checkout by generating ltmain.sh, using that to create libtool,
19112         and then adding the tags to that, all from config.status.
19113
19114         * configure.ac (AC_CONFIG_FILES): Make config/ltmain.sh, and copy
19115         it to libltdl.
19116         * Makefile.am ($(srcdir)/config/ltmain.sh): This file is now
19117         created by config.status.  Adjust this rule.
19118         (libtoolize): Set CONFIG_COMMANDS to empty to prevent regenerating
19119         the libtool script as a side effect of running this rule.
19120         * libtool.m4: Bump serial number.  Fix comment typos.
19121         (_LT_CONFIG_LIBTOOL_INIT, _LT_CONFIG_LIBTOOL,
19122         _LT_CONFIG_SAVE_COMMANDS, _LT_CONFIG_COMMANDS: New macros.  They
19123         don't work for some reason - the variable value quoting in the
19124         init section is all wrong.  Not used at the moment.
19125         (AC_LIBTOOL_CONFIG): Generate libtool from config.status.
19126         (_LT_AC_TAG_CONFIG): Add the tags in config.status.
19127         (compiler_DEFAULT): Save the compiler value for the DEFAULT tag,
19128         or it gets overwritten by the other macros.
19129         (EOF): Globally replace with _LT_EOF to avoid namespace pollution.
19130         * tests/demo/configure.ac (STATIC): Check $enable_static instead
19131         of running ./libtool which doesn't exist yet.
19132         (BINARY_HELLDL): Check $lt_cv_sys_global_symbol_pipe with case
19133         instead of grepping ./libtool which doesn't exist yet.
19134         * tests/pdemo/configure.ac (STATIC, BINARY_HELLDL): Ditto.
19135         * doc/libtool.texi (AC_PROG_LIBTOOL): Add some notes about trying
19136         to get config details from `libtool --config'.
19137         * NEWS: Updated.
19138
19139 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
19140
19141         * ChangeLog, ChangeLog.0, ChangeLog.1: Refactored...
19142         * ChangeLog, ChangeLog.2002, ChangeLog.2001, ChangeLog.2000,
19143         ChangeLog.1999, ChangeLog.1998, ChangeLog.1997, ChangeLog.1996:
19144         ...into entries by year for easier copyright confirmation.
19145
19146         * configure.ac, libltdl/configure.ac, tests/cdemo/configure.ac,
19147         tests/demo/configure.ac, tests/depdemo/configure.ac,
19148         tests/f77demo/configure.ac, tests/mdemo/configure.ac,
19149         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
19150         tests/tagdemo/configure.ac (AM_INIT_AUTOMAKE): Remove redundant
19151         arguments.
19152         * libltdl/configure.ac: Use quadrigraphs to escape macronames.
19153
19154         * bootstrap (reconfdirs): Same as yesterday, only with portable
19155         bourne shell syntax.  :-/
19156
19157 2003-10-20  Gary V. Vaughan  <gary@gnu.org>
19158
19159         * bootstrap (reconfdirs): Overridable top dirs for bootstrap, for
19160         those times when you don't want to wait for all of the test
19161         directories to be rebootstrapped!
19162
19163 2003-10-19  Kevin P. Fleming  <kpfleming@backtobasicsmgmt.com>
19164         Charles Wilson <cygwin@cwilson.fastmail.fm>
19165
19166         * ltmain.in: include --tag options, if specified, in the
19167         relink_command in uninstalled .la files.  Also, preserve --silent,
19168         --debug options when libtool re-execs itself.
19169         * NEWS: Updated.
19170
19171 2003-10-19  Charles Wilson  <cygwin@cwilson.fastmail.fm>
19172
19173         * libtoolize.in: protect sed expression against
19174         AC_CONFIG_AUX_DIR_DEFAULT.
19175
19176 2003-10-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19177
19178         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): For MinGW, reverted DLL
19179         check method back to a working objdump-based test.  This is not as
19180         concrete a test as using the 'file' command, but it does not
19181         require that the 'file' command be available.
19182
19183 2003-10-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19184
19185         * doc/libtool.texi (AC_LIBTOOL_TAGS): Incorporate documentation
19186         for AC_LIBTOOL_TAGS macro to specifify libtool tags. The now
19187         defunct --with-tags option was never documented.
19188
19189 2003-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
19190
19191         * m4/libtool.m4: Restrict the list of tags that can be created
19192         with a new AC_LIBTOOL_TAGS([tag1 tag2 ...]) macro. Deprecate
19193         --with-tags.
19194
19195 2003-10-15  Gary V. Vaughan  <gary@gnu.org>
19196
19197         * libtoolize.in: Typo when copying config.sub.
19198         From Patrick Welche <prlw1@newn.cam.ac.uk>
19199
19200         * demo/Makefile.am (libhell0_a_SOURCES): Do not name sources
19201         already built with libtool...
19202         (libhell0_a_LIBADD): ...instead name the objects directly.  This
19203         prevents a long standing warning from automake 1.7+.
19204         * pdemo/Makefile.am (libhell0_a_SOURCES, libhell0_a_LIBADD):
19205         Ditto.
19206
19207         * bootstrap: Make the fake files valid shell scripts with a
19208         comment incase they get left around.
19209         (LIBTOOLIZE): Use a dummy script to prevent the installed
19210         `libtoolize' from trashing the distributed libtool.m4,
19211         config.guess and config.sub.
19212
19213         * configure.ac (AC_CONFIG_TESTDIR, AC_CONFIG_TESTFILES): Comment
19214         this out for now, the autotest testsuite rewrite is not ready
19215         yet.
19216
19217         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
19218         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
19219         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
19220         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (top_distdir):
19221         Removed. `autoreconf' needs literals in ACLOCAL_AMFLAGS.
19222
19223 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
19224
19225         * libtoolize.in (func_mkdir_p): Synch with tests/defs; if there
19226         are no more directories in the stack, break out of the loop.
19227
19228         * tests/Makefile.am (COMMON_TESTS): Remove pdemo-unst.test, which
19229         isn't a real test.
19230
19231 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
19232
19233         Refactor all the test case common code into shell functions in
19234         tests/defs, and move the various demo directories out of
19235         $top_srcdir, and into tests too.  The refactoring showed up a
19236         number of inconsistencies and latent bugs, as well as fixing (I
19237         think!!) the long-standing annoyance with some of the tests giving
19238         spurious failures intermittently.  While I was here, emacs kindly
19239         removed a lot of bogus whitespace and added copyright notices for
19240         us:
19241
19242         * cdemo, demo, depdemo, f77demo, mdemo, mdemo2, pdemo, tagdemo:
19243         Moved from here...
19244         * tests/cdemo, tests/demo, tests/depdemo, tests/f77demo,
19245         tests/mdemo, tests/mdemo2, tests/pdemo, tests/tagdemo: ...to
19246         here.
19247         * tests/defs: Factor much common functionality from the test
19248         scripts into shell functions.  Added a copyright notice.
19249         * tests/assign.test, tests/cdemo-conf.test, tests/cdemo-exec.test,
19250         tests/cdemo-make.test, tests/cdemo-shared.test,
19251         tests/cdemo-static.test, tests/demo-conf.test,
19252         tests/demo-deplibs.test, tests/demo-exec.test,
19253         tests/demo-inst.test, tests/demo-make.test,
19254         tests/demo-nofast.test, tests/demo-nopic.test,
19255         tests/demo-pic.test, tests/demo-shared.test,
19256         tests/demo-static.test, tests/demo-unst.test,
19257         tests/depdemo-conf.test, tests/depdemo-exec.test,
19258         tests/depdemo-inst.test, tests/depdemo-make.test,
19259         tests/depdemo-nofast.test, tests/depdemo-shared.test,
19260         tests/depdemo-static.test, tests/depdemo-unst.test,
19261         tests/f77demo-conf.test, tests/f77demo-exec.test,
19262         tests/f77demo-make.test, tests/f77demo-shared.test,
19263         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
19264         tests/mdemo-conf.test, tests/mdemo-exec.test,
19265         tests/mdemo-inst.test, tests/mdemo-make.test,
19266         tests/mdemo-shared.test, tests/mdemo-static.test,
19267         tests/mdemo-unst.test, tests/mdemo2-conf.test,
19268         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
19269         tests/pdemo-conf.test, tests/pdemo-exec.test,
19270         tests/pdemo-inst.test, tests/pdemo-make.test,
19271         tests/pdemo-unst.test, tests/quote.test, tests/sh.test,
19272         tests/suffix.test, tests/tagdemo-conf.test,
19273         tests/tagdemo-exec.test, tests/tagdemo-make.test,
19274         tests/tagdemo-shared.test, tests/tagdemo-static.test: Refactored
19275         to use new functions in tests/defs.  Added a copyright notice.
19276         * tests/hardcode.test, noinst-link.test,
19277         tests/relink.test, tests/relink.test,
19278         tests/mdryrun.test: Ditto.  Moved from here...
19279         * tests/demo-hardcode.test, demo-noinst-link.test,
19280         tests/demo-relink.test, tests/depdemo-relink.test,
19281         tests/mdemo-dryrun.test: ...to here respectively.
19282         * Makefile.am: Added a copyright notice.
19283         * tests/sh.test: Check libtoolize.in for non-portabilities too.
19284         * libtoolize.in: Fix non-portabilities found by tests/sh.test.
19285
19286 2003-10-12  Peter O'Gorman <peter@pogma.com>
19287
19288         * m4/libtool.m4: Speed up max_cmd_len check.
19289
19290 2003-10-08  Gary V. Vaughan  <gary@gnu.org>
19291
19292         * libtoolize.in: AC_CONFIG_M4_DIR has landed in CVS autoconf.
19293         Only it's called AC_CONFIG_MACRO_DIR.  Search and replace.
19294         Grumble. ;-)
19295
19296 2003-10-08  Scott James Remnant  <scott@netsplit.com>
19297
19298         * libltdl/ltdl.c (lt_dlerror): change return value when
19299         no error has occured to NULL to match documentation.
19300         (Debian Bug #157229)
19301
19302 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
19303
19304         * ltmain.in: Don't suppress output of PIC mode compile if
19305         -no-suppress option is given.
19306         * doc/libtool.texi (Invoking libtool): Document it.
19307         * NEWS: Updated.
19308
19309 2003-10-07  Marcus Comstedt  <marcus@mc.pp.se>
19310
19311         * m4/libtool.m4 [amigaos-ppc, amigaos-m68k]: Differentiate between
19312         amigaos on ppc and m68k.
19313         * NEWS: Updated.
19314
19315 2003-10-07  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19316
19317         * ltmain.in: Do not create `.o' objects when `-shared' is
19318         specified in compile mode.
19319         Do not make a static library when `-shared' is specified in link
19320         mode.
19321         * doc/libtool.texi (Compile mode): Document it.
19322         * NEWS: Updated.
19323
19324         * doc/libtool.texi (Compile mode): Be more specific about the
19325         effect of `-static'.
19326         * ltmain.in: Do not create `.lo' objects when `-static' is
19327         specified.
19328         * NEWS: Updated.
19329
19330 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
19331
19332         * doc/libtool.texi (Invoking libtool): Updated.
19333         * ltmain.in: Add missing clean and finish modes to the shorthand
19334         options.
19335
19336         * ltmain.in: Typo in the --mode shorthand.
19337
19338 2003-10-07  Scott James Remnant  <scott@netsplit.com>
19339
19340         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Remove dead code
19341         for platforms that have been using pass_all for some time now.
19342
19343 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
19344
19345         * libtoolize.in: Completely rewritten.
19346         * Makefile.am (AUTOMAKE_OPTIONS): Reduced to 1.7.  The 1.8
19347         requirement just made the distribution much smaller due to
19348         m4_includes.  1.7 will bootstrap libtool just fine.
19349         * NEWS: Updated.
19350
19351 2003-10-05  Peter O'Gorman <peter@pogma.com>,
19352         Gary V. Vaughan  <gary@gnu.org>
19353
19354         * ltmain.in: Remove inferrence of mode, add shorthand for mode
19355         choice.
19356
19357         * ltmain.in: Specifying -allow-undefined is now an error.
19358
19359 2003-09-29  Scott James Remnant  <scott@netsplit.com>
19360
19361         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for linux*
19362         solving many build problems on ARM, and hopefully preventing any
19363         future ones.
19364         (Debian Bug #191133 and #190569)
19365
19366 2003-09-29  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>,
19367         Dalibor Topic <robilad@kaffe.org>
19368
19369         * libltdl/ltdl.c: Only include malloc.h if stdlib.h can not be
19370         found.
19371
19372 2003-09-26  Alfred M. Szmidt  <ams@kemisten.nu>
19373
19374         * mdemo2/Makefile.am (INCLUDES): Include `$(top_srcdir)/../libltdl'
19375         instead of `../libltdl'.
19376
19377 2003-09-24  Gary V. Vaughan  <gary@gnu.org>
19378
19379         * bootstrap: Rewritten to use autoreconf.
19380         * config.guess, config.sub, mkstamp:  Moved from here...
19381         * config/config.guess, config/config.sub, config/mkstamp: ...to
19382         here, respectively.
19383         * libtool.m4, ltdl.m4: Moved from here...
19384         * m4/libtool.m4, m4/ltdl.m4: ...to here, respectively.
19385         * configure.ac: Removed various acinclude.m4 hackery, as these
19386         files are no longer needed with automake 1.8.
19387         * Makefile.am: Removed various acinclude.m4 hackery, as these
19388         files are no longer needed with automake 1.8.
19389         (AUTOMAKE_OPTIONS): Require CVS automake.
19390         (CONF_SUBDIRS, CFLAGS, CPPFLAGS, LDFLAGS, LIBS, FFLAGS, FLIBS):
19391         Automake now makes a Make variable from every AC_SUBST, so these
19392         are NOP.
19393         (aclocal_macros): These files are now in their own m4 subdir.
19394         Changed all clients.
19395         (EXTRA_DIST): mkstamp has moved to the new config subdir.  Changed
19396         all clients.
19397         (pkgdata_SCRIPTS): Ditto wrt config.guess and config.sub.
19398         (pkgdata_DATA): Ditto wrt ltmain.sh.
19399         * f77demo/configure.ac, libltdl/configure.ac (AM_CONFIG_HEADER):
19400         Is deprecated in favour of AC_CONFIG_HEADERS.  Updated to the
19401         latter.
19402         * Makefile.am, cdemo/Makefile.am, demo/Makefile.am,
19403         depdemo/Makefile.am, f77demo/Makefile.am, mdemo/Makefile.am,
19404         mdemo2/Makefile.am, pdemo/Makefile.am, tagdemo/Makefile.am
19405         (EXTRA_DIST): Remove acinclude.m4.
19406         (ACLOCAL_AMFLAGS): Search new `m4' macro directory.
19407         * configure.ac, cdemo/configure.ac, demo/configure.ac,
19408         depdemo/configure.ac, f77demo/configure.ac, mdemo/configure.ac,
19409         mdemo2/configure.ac, pdemo/configure.ac, tagdemo/configure.ac
19410         (AC_CONFIG_AUX_DIR): Declare that config helper scripts are now
19411         kept in the new config subdir.
19412         * libltdl/configure.ac (AC_CONFIG_AUX_DIR): Removed.  Defaults to
19413         `.' anyway.
19414
19415 2003-09-21  Robert Millan  <robertmh@gnu.org>
19416
19417         * libtool.m4: Add GNU/KNetBSD support.
19418         * ltdl.m4: Likewise.
19419
19420 2003-09-13  Scott James Remnant  <scott@netsplit.com>
19421
19422         * libtool.m4: allow STRIP to contain spaces and additional
19423         arguments.  (Debian Bug #183055)
19424         * ltmain.in: include newline in "sensible default" for IFS.
19425         (Debian Bug #98492 and #95447)
19426
19427 2003-09-11  Peter O'Gorman  <peter@pogma.com>
19428
19429         * AUTHORS, THANKS: Added myself to AUTHORS, removed from THANKS.
19430
19431 2003-09-10  Peter O'Gorman  <peter@pogma.com>
19432
19433         * mdemo2/configure.ac: Use AC_LIBTOOL_DLOPEN.
19434         * mdemo2/main.c: Use LTDL_SET_PRELOADED_SYMBOLS().
19435         * mdemo2/Makefile.am: Set INCLUDES properly and add -dlopen force
19436         to make sure the symbols file is included in the link line.
19437
19438         * ltmain.in: Accept -framework for darwin and put it in
19439         dependency_libs. For non-installed .la's try to avoid having
19440         ./.libs/.libs/libfoo.so on the link line.
19441
19442 2003-09-10  Arne Woerner  <woerner@mediabase-gmbh.de>
19443
19444         * libtool.m4 [openbsd]: openbsd 3.x needs versioning information.
19445
19446 2003-08-29  Gary V. Vaughan  <gary@gnu.org>
19447
19448         * bootstrap: Typo.
19449
19450 2003-08-29  Alexandre Duret-Lutz  <adl@gnu.org>
19451
19452         * libtool.m4 (_LT_AC_LANG_C_CONFIG): Fix unquoted call to
19453         _LT_AC_LANG_C_CONFIG.
19454         (AC_PROG_EGREP): Remove, now that Libtool requires Autoconf 2.56.
19455         * bootstrap: Issue an upgrade warning.
19456
19457 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
19458
19459         * libtool.m4 (_LT_AC_CHECK_DLFCN): Use the interrim new
19460         AC_CHECK_HEADER with compiler rather than preprocessor.
19461         (AC_LIBTOOL_SETUP): ...which was introduced in autoconf-2.56, so
19462         we AC_PREREQ that version.
19463         * ltdl.m4 (AC_WITH_LTDL, AC_LIB_LTDL, AC_LTDL_FUNC_ARGZ): Ditto.
19464
19465 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
19466
19467         Work around a bug in AU_ALIAS in CVS Autoconf that inserts a
19468         newline just before AC_FD_CC, by hand updating:
19469
19470         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): s/AC_FD_CC/AS_MESSAGE_LOG_FD/g.
19471
19472 2003-08-05  Jim Pick <jim@kaffe.org>,
19473         Ito Kazumitsu <kaz@maczuka.gcd.org>,
19474         Gary V. Vaughan  <gary@gnu.org>
19475
19476         Much as we have tried not to make it the callers' responsibility
19477         to maintain an lt_dlrealloc function pointer, it is too difficult
19478         to implement realloc as malloc/memcpy/free without knowing the
19479         size of the original block.  rpl_realloc has been deprecated since
19480         2002-10-30, but kaffe has real failures with that so it's time to
19481         bite the bullet.  Caller gets to maintain lt_dlrealloc:
19482
19483         * NEWS (1.5.1): Updated.
19484         * libltdl/ltdl.c (LT_DLREALLOC): Use lt_dlrealloc so the user can
19485         update the function pointer to match lt_dlmalloc.
19486         (lt_emalloc): Use lt_dlrealloc rather than hardcoding realloc.
19487         * doc/libtool.texi (Libltdl interface): Describe lt_dlrealloc now
19488         that it too has become part of the exported interface to libltdl.
19489
19490 2003-08-01  Peter O'Gorman  <peter@pogma.com>
19491
19492         * libtool.m4 (darwin): Use "-undefined dynamic_lookup" if the
19493         user set MACOSX_DEPLOYMENT_TARGET to 10.3 or greater.
19494         * libltdl/ltdl.c (dyld): Save the error from the first lookup
19495         to report in lt_dlerror(). Otherwise the error is always
19496         "Symbol _foo not in /usr/lib/libSystem.dylib".
19497         Thanks to Chris Zubrzycki for reporting this.
19498
19499 2003-08-01  Robert Boehne  <rboehne@gnu.org>
19500
19501         * libltdl/ltdl.h: Tweak the header to support visual studio.
19502
19503 2003-07-31  Greg Eisenhauer  <eisen@cc.gatech.edu>
19504
19505         * ltmain.in: Provide absolute paths for dlopen and dlpreopen
19506         files in generating uninstalled libtool libraries.
19507         * mdemo2/main.c, mdemo2/Makefile.am, mdemo2/README,
19508         mdemo2/configure.ac, mdemo2/.cvsignore, mdemo/mlib.c,
19509         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
19510         tests/mdemo2-make.test: New files for testing above feature.
19511         * configure.ac, bootstrap, tests/Makefile.am: Accomodate new
19512         test directory.
19513         * mdemo/Makefile.am: Build libmlib.la for mdemo2 tests.
19514
19515 2003-07-30  Tony Wyatt <wyattaw@optushome.com.au>
19516
19517         * libtool.m4: Remove parentheses around finish_eval part which
19518         broke on amigaos pdksh.
19519
19520 2003-07-30  Christiaan Welvaart  <cjw@daneel.dyndns.org>
19521
19522         * tests/dryrun.test: Ignore any 'total' line from "ls -l" output.
19523
19524 2003-07-30  Albert Chin-A-Young  <china@thewrittenword.com>
19525
19526         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Correctly remove IRIX C++
19527         template files.
19528
19529 2003-07-24  Robert Millan  <robertmh@gnu.org>
19530
19531         * libtool.m4: More fixes for the new GNU/FreeBSD triplet.
19532
19533 2003-07-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19534
19535         * config.guess, config.sub: Synchronized from ftp.gnu.org since
19536         Robert Millan's patch requires it.
19537
19538 2003-07-14  Robert Millan  <zeratul2@wanadoo.es>
19539
19540         * libtool.m4: Fixed to use the new GNU/FreeBSD triplet.
19541         * ltdl.m4: Fixed to use the new GNU/FreeBSD triplet.
19542         * ltmain.in: Remove GNU/FreeBSD cases, which are no longer needed.
19543
19544 2003-07-14  Andreas Schwab  <schwab@suse.de>
19545
19546         * libtool.m4 (_LT_AC_LOCK): Also match powerpc64-*linux* in
19547         addition to ppc64-*linux*.  From Markus Meissner
19548         <meissner@bogus.example.com>.
19549
19550 2003-07-14  Dalibor Topic  <robilad@yahoo.com>
19551
19552         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): For AmigaOS with pdksh,
19553         set the maximum command line length to 8K since otherwise the test
19554         takes over an hour to run.
19555
19556 2003-06-25  Alexandre Oliva  <aoliva@redhat.com>, Tim Waugh  <twaugh@redhat.com>
19557
19558         * libtool.m4: Replace mis-uses of path with pathname.
19559         (AC_PROG_LD_GNU): Don't quote $LD when running it.
19560         (_LT_AC_LANG_CXX_CONFIG): Use -nostdlib also when linking with g++
19561         and non-GNU ld.
19562
19563 2003-06-11  Gary V. Vaughan  <gary@gnu.org>
19564
19565         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION): Require LT_AC_PROG_SED to
19566         ensure $SED is set by the time it is used.
19567
19568         * ChangeLog: Restore missing entries from 2003-04-22.
19569
19570         * NEWS: Sychronised from branch-1-5.
19571
19572 2003-06-03  Benjamin Reed  <ranger@befunk.com>
19573
19574         * ltmain.in: search libraries in the order of preference, rather
19575         than picking .la's even if they're in a less preferred directory.
19576
19577 2003-06-03  Robert Millan <rmh@debian.org>
19578
19579         * ltdl.m4: Add support for GNU/FreeBSD.
19580         * ltmain.in: Add support for GNU/FreeBSD.
19581
19582 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
19583
19584         * libtool.m4: No need to use sed to remove leading comma when
19585         appending to $tagnames.
19586
19587 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
19588
19589         * tests/defs, tests/demo-conf.test, tests/demo-nofast.test,
19590         tests/demo-nopic.test, tests/demo-pic.test,
19591         tests/demo-shared.test, tests/demo-static.test,
19592         tests/depdemo-conf.test, tests/depdemo-nofast.test,
19593         tests/depdemo-shared.test, tests/depdemo-static.test:
19594         Pass build system type to tests to support environment
19595         where default system type not equal to build system type
19596         (eg. 64-bit HP-UX).
19597
19598 2003-06-03  Peter O'Gorman  <peter@pogma.com>
19599
19600         * libtool.m4 (darwin): Remove checks for Apple-specific gcc.
19601         * libltdl/ltdl.c (HAVE_MACH_O_DYLD_H): #define
19602         __private_extern__ for fsf gcc.
19603         * ltmain.in (darwin): Only add new paths to newlib_search_path.
19604
19605 2003-06-03  Max Bowsher  <maxb@ukf.net>
19606
19607         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Reorder cygwin's
19608         system library search path.
19609
19610 2003-06-01  Robert Boehne  <rboehne@gnu.org>
19611
19612         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match all qnx-nto
19613         as recent config.guess returns a slightly different string.
19614         * ltmain.in: Replace use of "od" with tr.
19615
19616 2003-05-30  Gary V. Vaughan  <gary@gnu.org>
19617
19618         * libltdl/ltdl.c (argz_insert): Corrected an off by one error when
19619         checking that before is not out of range.
19620
19621 2003-05-29  Gary V. Vaughan  <gary@gnu.org>
19622
19623         * libltdl/ltdl.c (lt_int_dyld_lib_install_name): Removed unused
19624         variable mh1.
19625         (sys_dyld_close): Removed unused variable size.
19626
19627 2003-05-21  Bruno Haible  <bruno@clisp.org>
19628
19629         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Add support for
19630         GNU/FreeBSD.
19631
19632 2003-04-22  Alexandre Oliva  <aoliva@redhat.com>
19633
19634         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
19635         mips*-linux* variants.
19636
19637 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
19638
19639         * libtool.m4 Switch on $CC and add paterns to cases.
19640
19641 2003-04-22  Peter O'Gorman  <peter@pogma.com>
19642
19643         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
19644         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
19645         value of shlibpath_overrides_runpath is used in the HARDCODE
19646         test and is set in the DYNAMIC_LINKER test.
19647         * ltmain.in [darwin]: We never need to relink on darwin.
19648
19649 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
19650
19651         * libtool.m4: Switch on $CC and add patterns to cases.
19652
19653 2003-04-21  Richard Dawe  <rich@phekda.freeserve.co.uk>
19654
19655         * doc/libtool.texi: Use @ifnottex instead of @ifinfo,
19656         to allow production of HTML documentation using makeinfo.
19657
19658 2003-04-14  Robert Boehne  <rboehne@gnu.org>
19659
19660         * NEWS: Updated.
19661         * configure.ac: Bumped version to 1.5a.
19662
19663         GNU libtool 1.5 was released.
19664
19665         * configure.ac: Bumped version to 1.5.
19666         * NEWS: updated.
19667         * README-alpha: Updated upload instructions.
19668         * README: Changed typo in version description.
19669         * config.guess, config.sub, texinfo.tex:  Synchronized from
19670         ftp.gnu.org.
19671
19672
19673 2003-04-10  Alexandre Oliva  <aoliva@redhat.com>
19674
19675         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
19676         mips*-linux* variants.
19677
19678 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
19679
19680         * libtool.m4 Switch on $CC and add paterns to cases.
19681
19682 2003-04-09  Peter O'Gorman  <peter@pogma.com>
19683
19684         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
19685         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
19686         value of shlibpath_overrides_runpath is used in the HARDCODE
19687         test and is set in the DYNAMIC_LINKER test.
19688         * ltmain.in(darwin): We never need to relink on darwin.
19689
19690 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
19691
19692         * libtool.m4 Switch on `basename $CC` not $CC
19693
19694 2003-04-05  Peter O'Gorman  <peter@pogma.com>
19695
19696         * libtool.m4: if ZSH_VERSION is set then setopt NO_GLOB_SUBST so
19697         libtool works. Remove zsh echo test code, don't bother checking
19698         for zsh anymore in the darwin archive_expsym_cmds.
19699
19700 2003-04-05  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
19701
19702         * libtool.m4: Switch on $CC not $cc_basename.
19703
19704 2003-04-02  Robert Boehne  <rboehne@gnu.org>
19705
19706         * tests/defs: Quote $DJGPP to prevent problems with some shells.
19707         Pointed out by Albert Chin <libtool@thewrittenword.com>
19708
19709 2003-04-01  Peter O'Gorman  <peter@pogma.com>
19710
19711         * libtool.m4: Fix the echo test which I broke earlier.
19712         * ltmain.in: Make DESTDIR work on darwin, don't use otool.
19713
19714 2003-03-31  Keith Packard  <keithp@keithp.com>
19715
19716         * ltmain.in: New flag -version-number to be used for maintaining
19717         compatability with a previously non-Libtool versioning scheme.
19718         * doc/libtool.texi: Document it.
19719
19720 2003-03-31  Naofumi Yasufuku  <naofumi@yasufuku.net>
19721
19722         * ltmain.in (win32_libid): Fixed sed expression error in
19723         win32_nmres evaluation.
19724
19725 2003-03-31  Albert Chin  <libtool@thewrittenword.com>
19726
19727         * ltmain.in: Don't pass -R flags found in a .la's dependency_libs
19728         variable directly down to the linker.
19729         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
19730
19731 2003-03-28  Richard Dawe  <rich@phekda.freeserve.co.uk>
19732
19733         * Makefile.am: Define CONF_SUBDIRS.
19734         * tests/defs: Set CONFIG_SITE to /nonexistent, except on DJGPP,
19735         which requires its config.site, to work correctly.
19736         * tests/cdemo-conf.test, tests/cdemo-shared.test,
19737         tests/cdemo-static.test, tests/demo-conf.test,
19738         tests/demo-nofast.test, tests/demo-nopic.test,
19739         tests/demo-pic.test, tests/demo-shared.test,
19740         tests/demo-static.test, tests/depdemo-conf.test,
19741         tests/depdemo-nofast.test, tests/depdemo-shared.test,
19742         tests/depdemo-static.test, tests/f77demo-conf.test,
19743         tests/f77demo-shared.test, tests/f77demo-static.test,
19744         tests/mdemo-conf.test, tests/mdemo-shared.test,
19745         tests/mdemo-static.test, tests/pdemo-conf.test,
19746         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
19747         tests/tagdemo-static.test: Don't set CONFIG_SITE, now that
19748         tests/defs sets it.
19749         * tests/cdemo-exec.test, tests/demo-exec.test,
19750         tests/demo-inst.test, tests/depdemo-exec.test,
19751         tests/depdemo-inst.test, tests/f77demo-exec.test,
19752         tests/mdemo-exec.test, tests/mdemo-inst.test,
19753         tests/pdemo-exec.test, tests/pdemo-inst.test,
19754         tests/tagdemo-exec.test: When checking for the existence
19755         of executables, use the executable file extension from $EXEEXT.
19756
19757 2003-03-28  Peter O'Gorman  <peter@pogma.com>
19758
19759         * libltdl/ltdl.c (dyld): Remove some debug printf's, fix a bug.
19760         * ltmain.in (darwin): Only link against shared libraries when doing
19761         link_all_deplibs.
19762
19763 2003-03-25  Robert Boehne  <rboehne@gnu.org>
19764
19765         * bootstrap: Add f77demo to the directories that AUTOHEADER
19766         is run in.
19767
19768 2003-03-21  Wesley W. Terpstra <terpstra@ito.tu-darmstadt.de>
19769
19770         * ltmain.in: Don't accumulate directory information in clean mode.
19771         Include properly pathed wrapper script.
19772
19773 2003-03-21  Peter O'Gorman  <peter@pogma.com>
19774
19775         * README: Remove "Important" information about patching automake.
19776         * configure.ac: Fix misapplied patch in last commit
19777         * libtool.m4 (darwin): Check compiler is apple gcc, add -single_module
19778         support so that dyloading c++ shared libraries will work.
19779         * libtool.m4 (_LT_AC_TAGCONFIG): Add test -n to the tests so that
19780         it will work outside of libtool.
19781         * doc/PLATFORMS: Add darwin
19782         * f77demo/configure.ac: Add config.h which was misapplied previously.
19783
19784 2003-03-20  Peter O'Gorman  <peter@pogma.com>
19785
19786         * ltmain.in: Always use $echo not echo for consistency.
19787         Changes for darwin building. Warn if linking against libs linked
19788         with -module. Use module_cmds if available and building a module,
19789         move convenience double lib check,
19790         * libltdl/ltdl.c: ltdl support for darwin (first blush)
19791         * libltdl/README: note that darwin is supported
19792         * ltdl.m4: Changes for darwin, and for new shrext
19793         * libtool.m4: Changed the way darwin builds stuff (make check passes)
19794         added module_cmds, module_expsym_cmds and hardcode_automatic and put
19795         them in the libtool script. check for zsh's removal of escapes. Allow
19796         libraries to be stripped on darwin.
19797         * TODO: Remove the todo about zsh's removal of excapes. note that zsh
19798         echo works perfectly well, eval is screwed up. Seems to be fixed in
19799         latest zsh.
19800         * THANKS: added self :)
19801         * f77demo/configure.ac: Use config.h or it doesn't work.
19802
19803 2003-03-19  Robert Boehne  <rboehne@gnu.org>
19804
19805         * libtool.m4 (_LT_AC_TAGCONFIG): Add test around the macro that
19806         adds tags to the libtool script so that they won't run when not
19807         needed.
19808         * configure.ac: Set F77 to no when no Fortran compiler is found.
19809
19810 2003-03-16  Charles Wilson  <cwilson@ece.gatech.edu>
19811
19812         * ltmain.in (win32_libid): use $SED, not head.
19813
19814 2003-03-02  Alexandre Oliva  <aoliva@redhat.com>
19815
19816         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
19817         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
19818         and reset them for a C++ environment.  Use the with_gnu_ld setting
19819         from AC_PROG_LD.
19820
19821 2003-02-28  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19822
19823         * ltmain.in: Only append a dot to the wrapper script when
19824         building on cygwin/MSYS (check for $build, not $host).
19825
19826 2003-02-27  Samuel Meder  <meder@mcs.anl.gov>
19827
19828         * libtool.m4 (ia64): Add support for Intel compiler (ecc) on IA64
19829         Linux.
19830
19831 2003-02-27  Benjamin Reed <ranger@befunk.com>
19832
19833         * THANKS: Added people who have submitted 3 or more patches
19834         to libtool to the THANKS file.
19835         * README: Added notes about the Darwin (MacOSX) support.
19836
19837 2003-02-25  Bob McElrath  <bob+libtool@mcelrath.org>
19838
19839         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Add support for
19840         the Compaq C compiler for Alpha Linux.
19841
19842 2003-02-25  Benjamin Reed  <ranger@befunk.com>
19843
19844         * libtool.m4 (darwin): Disable hardcoding library paths to
19845         make relinking unnecessary.
19846
19847 2003-02-24  Robert Boehne  <rboehne@gnu.org>
19848
19849         * libltdl/configure.ac: Use AC_CONFIG_AUX_DIR([.]) to place
19850         auxilary files in the libltdl directory.
19851         * Makefile.am: Add to the ltmain.sh rule to copy it into the
19852         libltdl subdirectory.
19853         * bootstrap: Explicitly handle ltmain.sh in libltdl, and pass
19854         --copy to automake.
19855
19856 2003-02-24  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19857
19858         * libtool.m4 (AC_LIBTOOL_SETUP): Check for ar.
19859
19860 2003-02-23  Peter O'Gorman  <peter@pogma.com>
19861
19862         * libtool.m4 (darwin): Revamp darwin platform support.
19863         * ltdl.m4 (darwin): Support dlcompat if found.
19864         * ltmain.in: Make sure ranlib is run if needed when piecewise
19865         linking.
19866
19867 2003-02-23  Alexandre Duret-Lutz  <adl@gnu.org>
19868
19869         * ltmain.in (--help): Show mailing-address for bug reports.
19870         (--version): Mention only the most recent copyright year.
19871         * libtoolize.in (--help): Show mailing-address for bug reports.
19872         (--version): Mention only the most recent copyright year.
19873
19874 2003-02-19  Alexandre Oliva  <aoliva@redhat.com>
19875
19876         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
19877         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
19878         and reset them for a C++ environment.  Use the with_gnu_ld setting
19879         from AC_PROG_LD.
19880
19881         * libtool.m4: Replace $linker_flags with $compiler_flags wherever
19882         it is used as argument to $CC.
19883
19884         * libtool.m4: Use linux version_type on IRIX with GNU ld.
19885         Prefix -soname, -set_version and their arguments with ${wl}.  Add
19886         -melf* linker scripts to LD, and use them to determine libsuff,
19887         shlibsuff and libmagic.
19888
19889 2003-02-17  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
19890
19891         * libtool.m4: Intel icc fixups for version 7.0.
19892
19893 2003-02-17  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19894
19895         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Prepend a dot to
19896         the value of the shrext (aka shared_ext) variable and delete it
19897         from the library_names_spec and soname_spec definitions.  That
19898         way the user can omit the shared library suffix by setting it
19899         to the empty string.
19900         (AC_LIBTOOL_LANG_CXX_CONFIG): Strengthen renaming commands for
19901         the KCC compiler.
19902         * doc/libtool.texi (Link mode): Update the manual.
19903
19904 2003-02-17  Charles Wilson  <cwilson@ece.gatech.edu>
19905
19906         * ltmain.in (win32_libid): Rewritten to improve speed.
19907
19908 2003-02-11  Richard Dawe  <rich@phekda.freeserve.co.uk>
19909
19910         * libtoolize.in: Use the program found by AC_PROG_LN_S
19911         to create symlinks.
19912
19913 2003-02-08  Jan Kratochvil  <project-libtool@jankratochvil.net>
19914
19915         * ltmain.in: Handle duplicate object file names when performing
19916         piecewise archive linking by renaming object files when needed.
19917
19918 2003-02-05  Robert Boehne  <rboehne@gnu.org>
19919
19920         * libtool.m4 (AC_CHECK_LIBM): Search for a real symbol in
19921         the math library rather than 'main', it causes problems for
19922         C++ compilers with certain Auto* tools.
19923         (AC_LIBLTDL_INSTALLABLE): ditto.
19924
19925 2003-02-05  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
19926
19927         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG)
19928         (AC_LIBTOOL_PROG_LD_SHLIBS): Rewrite printf commands so
19929         that the format string cannot be mistaken as an option.
19930         Reported by Martin MOKREJS.
19931
19932 2003-02-05  Robert Boehne  <rboehne@gnu.org>
19933
19934         * libtool.m4: Modify the sys_lib_search_path_spec to allow
19935         for either native sed or GNU sed to be used.
19936
19937 2003-02-04  Nick Hudson  <skrll@netbsd.org>
19938
19939         * libtool.m4: don't use -nodefaultlibs in archive_commands
19940         or archive_expsym_commands on NetBSD.
19941
19942 2003-02-04  Albert Chin-A-Young  <china@thewrittenword.com>
19943
19944         * libtool.m4: Change setting of archive_cmds_need_lc
19945         so that it doesn't overwrite the previous setting.
19946
19947 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
19948
19949         * libtool.m4: Allow compiler variable, CC, CXX, etc. to
19950         be a program name with arguments. Original version stripped
19951         arguments for CC.
19952
19953 2003-01-28  Charles Wilson  <cwilson@ece.gatech.edu>
19954
19955         * ltmain.in: add code for a binary wrapper
19956         to use with uninstalled executables on cygwin/mingw.
19957         Make sure that --mode=clean gets shell wrapper and
19958         binary wrapper.  When sourcing the shell wrapper,
19959         invoke using a terminal `.' on cygwin/mingw to
19960         avoid the automatic append-.exe behavior.
19961
19962 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
19963
19964         * libtool.m4: Hardcode library paths into libraries on IRIX.
19965
19966 2003-01-18  Robert Boehne  <rboehne@gnu.org>
19967
19968         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Don't add -DPIC
19969         for languages other than C and C++.
19970
19971 2003-01-13  Albert Chin-A-Young  <china@thewrittenword.com>
19972
19973         * libtool.m4, ltmain.in: Add support for hppa*64* based on
19974         a patch by Ross Alexander <ross.alexander@uk.neceur.com>.
19975         Credit to Ross! Use +b to hardcode library runtime path.
19976         Add new variable, $hardcode_libdir_flag_spec_ld, that
19977         is equivalent to $hardcode_libdir_flag_spec but is used
19978         when ld is used for linking. This works around having to
19979         set wl=''.
19980
19981 2003-01-12  Robert Boehne  <rboehne@gnu.org>
19982
19983         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Revert an
19984         accidental rearranging of dylib and so for darwin.
19985
19986 2003-01-10  Robert Boehne  <rboehne@gnu.org>
19987
19988         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Modify the
19989         "-shrext" option so that is works properly under Darwin.
19990         Modify the processing of 'gcc -print-search-dirs' under
19991         Darwin to make it behave like GNU gcc does.
19992         (AC_LIBTOOL_CONFIG): Single quote $shrext.
19993         * ltimain.in: Expand shared_ext just before it is used
19994         so that it can be conditional on the value of $module.
19995
19996 2002-12-31  Benjamin Reed  <ranger@befunk.com>
19997
19998         * ltmain.in [darwin]: disable lazy linking, needed
19999         to resolve C++ global constructor issues
20000
20001 2002-12-30  Ralph Schleicher  <rs@nunatak.allgaeu.org>
20002
20003         Rework by Robert Boehne <rboehne@gnu.org>
20004         * ltmain.in: New link option -shrext.
20005         * libtool.m4 (AC_LIBTOOL_CONFIG): New libtool variable shrext.
20006         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Replace all hard coded shared
20007         library file name extensions in library_names_spec and
20008         soname_spec with $shrext.
20009         * doc/libtool.texi (Link mode): Document it.
20010
20011 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
20012
20013         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): modify
20014         $archive_expsym_cmds to restore support for using
20015         .def files via the -export-symbols switch.
20016         (AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]): in both the [CXX]
20017         branch and the default branch, improve $export_symbols_cmds
20018         so that DATA symbols are properly  labelled.  In the default
20019         branch, duplicate the _CXX_CONFIG correction for
20020         $archive_expsym_cmds.
20021
20022 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
20023
20024         * libtool.m4 (AC_LIBTOOL_RC): AC_PROG_RC doesn't exist --
20025         but we do AC_DEFUN something called LT_AC_PROG_RC.
20026         Call that instead.
20027
20028 2002-12-30  Robert Boehne  <rboehne@gnu.org>
20029
20030         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Copy the section
20031         for Darwin from AC_LIBTOOL_PROG_LD_SHLIBS so that the CXX
20032         tag doesn't use the g++ defaults for the OS X compiler.
20033
20034 2002-12-30  Albert Chin-A-Young <china@thewrittenword.com>
20035
20036         * libtool.m4: Sync methods used to detect GNU ld.
20037
20038 2002-12-20  Robert Boehne  <rboehne@gnu.org>
20039
20040         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
20041         AC_LIBTOOL_PROG_CC_C_O): Do not escape } or ? in sed argument.
20042
20043 2002-12-19  Robert Boehne  <rboehne@gnu.org>
20044
20045         * ltmain.in: Use the sed program found by LT_AC_PROG_SED
20046         so that relink commands don't get truncated.
20047
20048 2002-12-18  Robert Boehne  <rboehne@gnu.org>
20049
20050         * libtool.m4: Move AC_REQUIRE([LT_AC_PROG_SED]) to AC_PROG_LD
20051         so it is invoked earlier.
20052
20053 2002-12-11  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
20054
20055         * libtool.m4: Add support for Intel icc compiler for Linux.
20056
20057 2002-12-11  Robert Boehne  <rboehne@gnu.org>
20058
20059         * ltmain.in: Revert the version +1 change for IRIX, it could
20060         cause compatibility problems.
20061
20062 2002-11-22  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
20063
20064         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
20065         AC_LIBTOOL_PROG_CC_C_O): Changed method for compilation with
20066         custom flags to be language-independent.  Thereby removed
20067         CFLAGS/GCJFLAGS mixup bug.  Imitate Autoconf-style logging.
20068         Log entries no longer discarded by compilation failures.
20069         (_LT_AC_LANG_C_CONFIG, _LT_AC_LANG_CXX_CONFIG,
20070         _LT_AC_LANG_GCJ_CONFIG): Tuned settings of
20071         lt_simple_compile_test_code and lt_simple_link_test_code
20072         to avoid warnings that could break some option detections.
20073         (AC_LIBTOOL_PROG_COMPILER_NO_RTTI): Removed
20074         redundant "-c conftest.$ac_ext" in the argument to
20075         AC_LIBTOOL_COMPILER_OPTION.
20076         (AC_LIBTOOL_PROG_LD_SHLIBS): Replaced C-specific conftest
20077         source code with $lt_simple_compile_test_code, to support
20078         the "-lc" test with other languages.
20079
20080 2002-11-19  Paul Eggert  <eggert@twinsun.com>
20081
20082         Don't assume that egrep and fgrep exist.  POSIX 1003.1-2001 no
20083         longer requires them; you're supposed to use grep -E and grep -F
20084         instead.  Also, don't assume that "test -a" works, since POSIX
20085         doesn't require it.
20086
20087         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_LANG_C_CONFIG,
20088         _LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,
20089         AC_LIBTOOL_PROG_LD_SHLIBS):
20090         egrep -> grep, when that makes no difference.
20091         * libtoolize.in: Likewise.
20092         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Likewise.
20093         * ltmain.in: Likewise.
20094         * demo/Makefile.am (hc-direct): Likewise.
20095         * pdemo/Makefile.am (hc-direct): Likewise.
20096         * tests/build-relink.test, tests/build-relink2.test,
20097         tests/cdemo-conf.test, tests/cdemo-shared.test,
20098         tests/cdemo-static.test, tests/demo-conf.test,
20099         tests/demo-nofast.test, tests/demo-shared.test,
20100         tests/demo-static.test, tests/depdemo-conf.test,
20101         tests/depdemo-nofast.test, tests/depdemo-shared.test,
20102         tests/depdemo-static.test, tests/hardcode.test,
20103         tests/mdemo-conf.test, tests/mdemo-shared.test,
20104         tests/mdemo-static.test, tests/pdemo-conf.test,
20105         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
20106         tests/tagdemo-static.test: Likewise.
20107
20108         * libtool.m4 (AC_PROG_EGREP):
20109         New macro, defined if Autoconf doesn't define.
20110         (AC_PATH_TOOL_PREFIX, AC_PROG_LD_GNU): Use it.
20111         (AC_PROG_LD, AC_PROG_NM, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE):
20112         Use shell pattern matching rather than egrep.
20113         (AC_LIBTOOL_CONFIG): Set lt_EGREP and EGREP.
20114
20115         * demo/Makefile.am (SET_HARDCODE_FLAGS): Use sed instead of egrep.
20116         * pdemo/Makefile.am (SET_HARDCODE_FLAGS): Likewise.
20117
20118         * tests/defs (EGREP, FGREP): New vars.
20119
20120         * ltmain.in: egrep -> $EGREP
20121         * tests/assign.test, tests/demo-exec.test, tests/demo-inst.test,
20122         tests/pdemo-exec.test, tests/pdemo-inst.test, tests/sh.test:
20123         Likewise.
20124
20125         * tests/hardcode.test: fgrep -> $FGREP
20126
20127         * tests/f77demo-exec.test: test -a -> test &&
20128
20129 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20130
20131         * ltmain.in: When using gcc, pass -mfoo to the linker
20132         via $compiler_flags in order to pass architecture information to
20133         the linker (e.g. 32 vs 64-bit). This may also be accomplished via
20134         -Wl,-mfoo but this is not reliable with gcc because gcc may use
20135         -mfoo to select a different linker, different libraries, etc, while
20136         -Wl,-mfoo simply passes -mfoo to the linker. If there is a better
20137         solution, please let me know what it is.
20138
20139 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20140
20141         * tests/Makefile.am: Conditional assignment of FFLAGS = @FFLAGS@
20142         does not appear to be necessary given that Automake makes this
20143         assignment by default.  The condition is removed since Automake
20144         1.7.1 complains about it.
20145
20146 2002-11-18  Jakub Jelinek  <jakub@redhat.com>
20147
20148         * libtool.m4: Support linking of 64-bit libraries on
20149         sparc{,v[789]}-*linux*, s390*-*linux*, ppc*-*linux*
20150         GNU/Linux systems when the platform default is to build
20151         32-bit libraries.
20152
20153 2002-11-18  Andreas Jaeger  <aj@suse.de>, Bo Thorsen  <bo@suse.de>
20154
20155         * libtool.m4: Support linking of 32-bit libraries with ld
20156         on the x86-64, ppc64, s390x and sparc64 GNU/Linux systems.
20157
20158 2002-11-18  Akim Demaille  <akim@epita.fr>
20159
20160         * ltmain.in: Do not change the PATH in the wrappers: let them
20161         launch the real binary using its path.
20162
20163 2002-11-18  Kevin Ryde  <user42@zip.com.au>
20164
20165         * doc/libtool.texi (Library tips): Note array dimensions.
20166
20167 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20168
20169         * tests/*.test: MinGW's MSYS treats files under /dev
20170         specially. This causes 'test -r /dev/null/config/site' to
20171         improperly report success, causing configure to fail. Change the
20172         CONFIG_SITE definition from "/dev/null/config/site" to
20173         "/nonexistent" to avoid this problem.
20174
20175 2002-11-18  Charles Wilson  <cwilson@ece.gatech.edu>
20176
20177         * libtool.m4 (_LT_AC_LOCK): remove support for ancient
20178         versions of mingw and cygwin.
20179         (AC_LIBTOOL_POSTDEP_PREDEP): new function.
20180         moved the "find hidden library dependencies" code here
20181         from AC_LIBTOOL_LANG_CXX_CONFIG.  Attempted to make it
20182         multi-tag compatible, but currently only CXX calls it.
20183         (AC_LIBTOOL_LANG_CXX_CONFIG): set
20184         enable_shared_with_satic_runtimes to 'no' by default
20185         Set it to 'yes' for cygwin, mingw, pw32. Replace
20186         "find hidden library dependencies" code with a call
20187         to the new function AC_LIBTOOL_POSTDEP_PREDEP.
20188         Consolidate cygwin and mingw/pw32 stanzas.
20189         (AC_LIBTOOL_LANG_F77_CONFIG): set
20190         enable_shared_with_static_runtimes to 'no' by default
20191         (AC_LIBTOOL_CONFIG): add
20192         enable_shared_with_static_runtimes to the list of variables
20193         to write into ltmain.sh; include it in the libtool script
20194         template as allow_libtool_libs_with_static_runtimes.
20195         (AC_LIBTOOL_PROG_LD_SHLIBS): set
20196         enable_shared_with_static_runtimes to 'no' by default
20197         Set it to 'yes' for cygwin, mingw, pw32.
20198         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): only put cr in regexp
20199         if the build_os is mingw, not host_os
20200
20201         * ltmain.in (case deplibs_check_method): for all appropriate
20202         cases, if allow_libtool_libs_with_static_runtimes, then remove
20203         predeps and postdeps from the list of dependencies that must
20204         be checked for "dynamicness".  For the "none" case, the
20205         presence of compiler-generated postdeps and predeps should
20206         not trigger "inter-library dependencies not supported" error.
20207         (initial setup after arg processing): on cygwin/mingw, allow
20208         compiler-generated dependent libs to be duplicated without
20209         elimination.
20210         (initial search loop for deplibs): if the deplib in question
20211         is a libtool lib, then if
20212         allow_libtool_libs_with_static_runtimes then parse the .la file.
20213         If the .la file only has an "old_library", add the deplib
20214         directly to the deplibs list (-lstdc++) and DON'T use the .la
20215         file; this allows the (case deplibs_check_method) change above
20216         to take effect.
20217         * ltmain.in (for pass in $passes loop): remove predeps,
20218         postdeps, and compiler_lib_search_path from dependency_libs.
20219
20220 2002-11-08  Robert Boehne  <rboehne@gnu.org>
20221
20222         * doc/libtool.texi: Add --mode=* to every example using libtool.
20223
20224 2002-11-03  Ossama Othman  <ossama@doc.ece.uci.edu>
20225
20226         * ltmain.in: add support for installing into temporary
20227         staging area (e.g. 'make install DESTDIR=...')
20228
20229 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
20230
20231         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): restore setting
20232         allow_undefined_flag=unsupported for cygwin and mingw.
20233         (AC_LIBTOOL_PROG_LD_SHLIBS): ditto, for both "normal" gcc/ld
20234         and for the (unmaintained?) MSVC case.
20235
20236 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
20237
20238         * doc/libtool.texi (Install mode): document new
20239         -inst-prefix option.
20240
20241 2002-11-02  Robert Boehne  <rboehne@gnu.org>
20242
20243         * ltmain.in: Print a warning if the mode is not specified.
20244         * doc/libtool.texi: Document the change that the mode must be
20245         specified.
20246
20247 2002-10-30  Charles Wilson  <cwilson@ece.gatech.edu>
20248
20249         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): use printf, not
20250         echo. (AC_DEPLIBS_CHECK_METHOD): use new shell function
20251         win32_libid on w32 platforms
20252         * ltmain.in: add new section for shell functions. Add
20253         win32_libid() shell function.
20254         * f77demo/Makefile.am: add -no-undefined flag
20255
20256 2002-10-30  Rob Browning  <rlb@defaultvalue.org>
20257
20258         * ltdl.c (realloc): Remove custom realloc. (#define
20259         rpl_realloc realloc) and comment out later code for custom
20260         realloc. You can't define your own malloc unless you know
20261         enough about the malloc in use to be able to tell how big
20262         the src ptr is. The disabled code incorrectly used the
20263         *destination* ptr to decide how much to copy. This
20264         sometimes results in out-of-bound accesses which cause
20265         segfaults. This is a quick hack for now; we may want
20266         something cleaner later.
20267         (tryall_dlopen_module): check to be sure (dirname_len > 0) before
20268         testing first character against '/'.
20269         (try_dlopen): check for feof(file) in read loop -- otherwise
20270         infinite loop?
20271
20272 2002-10-25  Robert Boehne  <rboehne@gnu.org>
20273
20274         * ltmain.in (-XCClinker): New flag passes a linking option
20275         directly to the compiler driver without appending ${wl}.
20276
20277 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
20278
20279         * README-alpha: Add some release note templates for inspiration
20280         and consistency at release time.
20281
20282         * Makefile.am (cvs-diff): Compress the generated diff file, ready
20283         for upload to ftp.gnu.org.
20284
20285 2002-10-25  Howard Chu  <hyc@highlandsun.com>
20286
20287         * ltmain.in [aix]: Be sure to deal with xlc_r, cc_r and other
20288         compiler variants.
20289
20290 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
20291
20292         * libtool.m4 (_LT_AC_FILE_IMPGEN_C): Removed.  No longer used.
20293         (_LT_AC_FILE_LTDLL_C): Ditto.
20294         (AC_LIBTOOL_CONFIG) [cygwin, mingw, pw32, os2]: Don't call
20295         _LT_AC_FILE_LTDLL_C or _LT_AC_FILE_IMPGEN_C.
20296
20297 2002-10-25  Albert Chin-A-Young  <china@thewrittenword.com>
20298
20299         * libtool.m4: When LDFLAGS="-Wl,-brtl,[other options]", the
20300         -brtl special-case code for AIX never gets triggered because
20301         were are being too specific about how we search for -brtl.
20302         Use case statement to avoid this. Remove extraneous
20303         semicolon.
20304         * ltmain.in: Recognize the IBM xlc compiler.
20305
20306 2002-10-24  Andrew Suffield  <asuffield@debian.org>
20307
20308         * libltdl/ltdl.c (lt_dlopenext): Corrected sense of "file not
20309         found" check.
20310
20311 2002-10-24  Ossama Othman  <ossama@doc.ece.uci.edu>
20312
20313         * ltmain.in: Support compiler names matching g++*
20314
20315 2002-10-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20316
20317         * libtool.m4: Removed old Windows cruft.
20318         * libtool.m4: Adapted pw32 to be like Cygwin/MinGW.
20319
20320 2002-10-23  Robert Boehne  <rboehne@gnu.org>
20321
20322         ltmain.in: Do not add 1 to the version under IRIX, it is
20323         not necessary.
20324
20325 2002-10-15  Charles Wilson  <cwilson@ece.gatech.edu>
20326
20327         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): avoid long delay on
20328          cygwin/Win9x when computing commandline length.
20329         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): fix postinstall_cmds when
20330         sources are in a subdirectory
20331         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): use $PATH_SEPARATOR, not
20332         $ac_path_separator
20333         * configure.ac: move depdemo-specific stuff.  You must configure
20334         libtool before you can try './libtool --features'.
20335         * mdemo-inst.test: set $PATH to include the directory in which
20336         the modules are installed (on cygwin, DLL search path is the
20337         $PATH)
20338
20339 2002-10-15  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
20340
20341         * ltmain.in: MinGW works identically to Cygwin.
20342         * libtool.m4: lt_cv_sys_max_cmd_len hard-coded to 8192
20343         *  Model MinGW configuration after Cygwin configuration.
20344         Some portions share implementation.
20345
20346 2002-10-15  Elizabeth Barham <soggytrousers@yahoo.com>
20347
20348         * libtool.m4: Pattern MinGW library naming after that
20349         used by Cygwin except use 'lib' prefix rather than 'cyg'.
20350         * Transfer some configuration from Cygwin with adjustments
20351         for MinGW.
20352
20353 2002-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
20354
20355         * libtool.m4: When a module is built for AIX, the 'lib'
20356         prefix isn't needed, neither is the version. AIX dlopen
20357         will honor the RPATH in a library.
20358
20359 2002-10-11  Christoph Egger  <Christoph_Egger@gmx.de>
20360
20361         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS, darwin): Add
20362         -install_name to the link line only when -dynamiclib is
20363         specified for a module.  Use -bind_at_load when linking C++
20364         shared libraries.
20365
20366 2002-10-04  Elizabeth Barham  <soggytrousers@yahoo.com>
20367
20368         * libtool.m4 (AC_LIBTOOL_SETUP): GCC now checks -shared to
20369         create a dll for Windows targets.
20370
20371 2002-09-24  Robert Boehne  <rboehne@gnu.org>
20372
20373         * ltmain.in: Fixed a few spelling errors.
20374
20375 2002-09-17  Robert Boehne  <rboehne@gnu.org>
20376
20377         * libltdl/ltdl.c: Commented out access() call that checks for a
20378         library file's existence and permissions, as it appears to fail
20379         in every case.
20380
20381 2002-09-09  Albert Chin-A-Young  <china@thewrittenword.com>
20382
20383         * libtool.m4: Custom $symcode for Tru64 UNIX to catch 'Q',
20384         read-only constants.
20385
20386 2002-09-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.de>
20387
20388         * libtool.m4 (osf[345]): Append $major to soname_spec.
20389         Reflect this in library_names_spec.
20390         * ltmain.in (osf): Prefix $major with '.' for use as extension.
20391
20392 2002-08-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20393
20394         * ltdl.m4 & libltdl/ltdl.c: Port fully to native Win32 API.
20395
20396 2002-07-31  Robert Boehne  <rboehne@gnu.org>
20397
20398         * f77demo/.cvsignore: New file, forgotten in the last commit.
20399
20400 2002-07-31  Eric Lindahl  <erik@theophys.kth.se>
20401
20402         * libtool.m4 (AC_PROG_LIBTOOL): Added support for the new F77
20403         Fortran support tag.
20404         (AC_LIBTOOL_PROG_CC_C_O, _LT_AC_TAGCONFIG): Support F77 tag.
20405         (AC_LIBTOOL_F77, _LT_AC_LANG_F77, AC_LIBTOOL_LANG_F77_CONFIG):
20406         New macros for F77 tag Fortran support.
20407         * configure.ac: Add support for creating the new F77 tag.
20408         * bootstrap: Add f77demo directory to the list to be processed.
20409         * Makefile.am: Add support for FFLAGS and FLIBS.
20410         * tests/Makefile.am: Add new Fortran tests.
20411         * tests/f77demo-*.test: New files.
20412         * f77demo/configure.ac, f77demo/cprogram.c, f77demo/fooc.c
20413         * f77demo/foof.f, f77demo/foo.h, f77demo/fprogram.f
20414         * f77demo/Makefile.am, f77demo/README: New files.
20415
20416 2002-07-16  Gary V. Vaughan  <gary@gnu.org>
20417
20418         * libltdl/ltdl.c (tryall_dlopen): We need to catch missing file
20419         errors early so that file_not_found() can detect what happened.
20420
20421 2002-06-26  Bob Friesenhahn  <bfreisen@simple.dallas.tx.us>
20422
20423         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Remove
20424         extraneous '=' character which appears in gcc 3.1
20425         -print-search-dirs output.
20426         Handle both upper and lower case drive letters when testing for
20427         Windows vs POSIX style path output from -print-search-dirs
20428         output.
20429
20430 2002-06-24  Robert Boehne  <rboehne@gnu.org>
20431
20432         * ltmain.in (Piecewise linking): Add a clause to skip creating
20433         the export file until the reloadable object file(s) have been
20434         created, then use them as input for $export_symbols_cmds.
20435
20436 2002-06-23  Albert Chin-A-Young  <china@thewrittenword.com>
20437
20438         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Need to quote [ and ] for
20439         Autoconf.
20440
20441         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): HP/UX needs
20442         libltdl_cv_sys_dlopen_deplibs set to yes.
20443
20444 2002-06-23  Kevin Ryde  <user42@zip.com.au>
20445
20446         * libtool.m4 (AC_LIBTOOL_SETUP, _LT_AC_LOCK): Use
20447         AC_PROVIDE_IFELSE to test AC_LIBTOOL_WIN32_DLL and
20448         AC_LIBTOOL_DLOPEN, necessary for autoconf 2.53.
20449
20450 2002-06-23  Gary V. Vaughan  <gary@gnu.org>
20451
20452         * libltdl/ltdl.c (argz_insert): Actually, BEFORE can be NULL
20453         when *PARGZ_LEN is non-NULL, so the assertion to the contrary was
20454         bogus.
20455         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
20456         and Albert Chin-A-Young <china@thewrittenword.com>
20457
20458 2002-06-21  Gary V. Vaughan  <gary@gnu.org>
20459
20460         * libltdl/ltdl.c (foreach_dirinpath): Ensure that filename is '\0'
20461         terminated by all code paths.
20462         Reported by Lutz Müller <lutz@users.sourceforge.net>
20463
20464 2002-06-20  Gary V. Vaughan  <gary@gnu.org>
20465
20466         From Kevin Ryde  <user42@zip.com.au>:
20467         * doc/libtool.texi (Platform quirks): s/dependan/dependen/
20468         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Ditto.
20469         * TODO: Ditto.
20470
20471 2002-06-13  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
20472
20473         * ltmain.in (irix, nonstopux): Set major before use.
20474
20475 2002-06-11  Daniel Kobras  <kobras@linux.de>
20476
20477         * libltdl/ltdl.c (try_dlopen): Don't return bogus handle to user
20478           if tryall_dlopen() fails.
20479
20480 2002-06-01  Gary V. Vaughan  <gary@gnu.org>
20481
20482         * tests/pdemo-exec.test: Typo.  s/hell-static/hell_static/
20483
20484 2002-05-31  Charles Wilson  <cwilson@ece.gatech.edu>
20485
20486         * NEWS: Updated.
20487         * libtool.m4: use $NM to create the symbol list on cygwin, not
20488         $ltdll_cmds as on mingw.  For all tags, (and host=cygwin) set
20489         allow_undefined_flag="" so that the --auto-import magic
20490         works properly.  For all tags (and host=cygiwn) set
20491         always_export_symbols=no -- it is unnecessary thanks to
20492         binutils' auto-export magic.
20493         * libltdl/ltdl.c: Don't force cygwin to use the LoadLibrary
20494         wrapper; use cygwin's builtin implementatino of dl*.
20495         * cdemo/Makefile.am: the downside of unsetting
20496         'allow_undefined_flag' -- we must include -no-undefined
20497         in the _la_LDFLAGS variable.
20498         * depdemo/l1/Makefile.am: ditto.
20499         * depdemo/l2/Makefile.am: ditto.
20500         * depdemo/l3/Makefile.am: ditto.
20501         * depdemo/l4/Makefile.am: ditto.
20502         * mdemo/Makefile.am: ditto.
20503         * tagdemo/Makefile.am: ditto.
20504         * demo/Makefile.am: ditto.  But also, we must make special
20505         provision to clean up the hell0 wrapper script.
20506         * pdemo/Makefile.am: ditto -no-undefined.  ditto hell0.
20507         And use 'hell_static' instead of 'hell.static'.
20508         * tests/pdemo-inst.test: use 'hell_static' instead
20509         of 'hell.static'.
20510         * tests/pdemo-exec.test: ditto.
20511
20512 2002-05-30  Charles Wilson  <cwilson@ece.gatech.edu>
20513
20514         * tests/build-relink2.test: look for installed libl3.la
20515         in $prefix/lib/ as well as $prefix/lib/extra/.
20516
20517 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
20518
20519         * tests/hardcode.test: Use libtool --config to collect the
20520         variable values for the test, otherwise the tag values interfere
20521         with a straight grep.
20522
20523 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
20524
20525         Finally fix the annoying bug which always adds all tags to the
20526         libtool script built by your project configure.  Now we set the
20527         default tags depending on whether AC_PROG_CXX et. al. are actually
20528         called from configure.ac.
20529
20530         * libtool.m4 (_LT_AC_TAGCONFIG): Don't default the tagnames when
20531         no --with-tags argument is given.
20532         (_LT_AC_SHELL_INIT): Factored out from the AC_DIVERT_PUSH code
20533         in...
20534         (_LT_AC_PROG_ECHO_BACKSLASH): ...which now calls the macro
20535         instead.
20536         (AC_LIBTOOL_CXX): Use _LT_AC_SHELL_INIT to add CXX to the
20537         initialisation sequence for tagnames.
20538         (AC_LIBTOOL_GCJ): Similarly for GCJ tag.
20539         (AC_LIBTOOL_RC): Likewise for RC tag.
20540
20541 2002-05-21  Jon Meredith  <jonm@alchemetrics.co.uk>
20542
20543         * ltmain.in: Fix a problem on SCO OpenServer5 that caused a
20544         failure in three depdemo-make tests. For some reason the linker
20545         tries to find the dependent libraries using the library search
20546         path before it has read the libraries specified with absolute
20547         paths in the full commandline. This patch add -L's for each of
20548         the dependent library directories so that they can be resolved.
20549
20550 2002-05-09  Nick Hudson  <skrll@netbsd.org>
20551
20552         * libtool.m4: Update support for NetBSD
20553         * ltdl.m4: Make sure that libltdl_cv_func_dlopen and
20554         libltdl_cv_lib_dl_dlopen are set and used instead of the
20555         ac_cv_ versions. Also, use lt_cv_sys_global_symbol_pipe
20556         instread of global_symbol_pipe. This fixes the detection of
20557         dlopen on BSD derived plaforms and more importantly fixes
20558         need_uscore detection.
20559
20560 2002-05-06  Paul Eggert  <eggert@twinsun.com>
20561
20562         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): head -1 -> sed 1q to
20563         port to POSIX 1003.1-2001 hosts, like textutils 2.0.21 with
20564         _POSIX2_VERSION=200112.
20565
20566 2002-05-06  Paul Eggert  <eggert@twinsun.com>
20567
20568         * ltmain.in: Don't assume that "sort +2" works, as POSIX
20569         1003.1-2001 says that "sort +2" is supposed to sort the file
20570         named "+2".  An example host that behaves like this is
20571         textutils 2.0.21 with _POSIX2_VERSION=200112.
20572
20573 2002-05-06  Loren James Rittle  <rittle@latour.rsch.comm.mot.com>
20574
20575         * ltmain.in: Detect and handle object name conflicts while
20576         piecewise linking a static library.
20577
20578 2002-05-02  Dave Vasilevsky  <thevas@mac.com>
20579
20580         * ltmain.in: Remove convenience libraries from deplibs for Darwin.
20581
20582 2002-05-02  Fritz Elfert  <felfert@to.com>
20583
20584         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Modify archive_expsym_cmds
20585         to catch properly handle dll alias symbols.
20586
20587 2002-04-24  Kevin Ryde  <user42@zip.com.au>
20588
20589         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use $build_os not $host_os.
20590
20591 2002-04-14  Robert Boehne  <rboehne@gnu.org>
20592
20593         * doc/libtool.texi (C++ libraries): Finally updated to reflect
20594         Libtool's support for C++.
20595
20596 2002-04-14  Jean-Frederic Clere  <jfrederic.clere@fujitsu-siemens.com>
20597
20598         * libtool.m4: Update support for Fujistu-Siemens Computers (FSC).
20599         * ltmain.in: Add support for EBCDIC based systems.
20600
20601 2002-04-07  Robert Boehne  <rboehne@gnu.org>
20602
20603         * libtool.m4 (LT_AC_PROG_SED): Refactor, removing temporary directory
20604         and consistent use of the shell variable namespace "lt_ac_".
20605
20606 2002-04-02  Robert Boehne  <rboehne@gnu.org>
20607
20608         * ltmain.in: Finish the tag matching logic started yesterday and
20609         refactor it a bit.
20610
20611 2002-04-01  Robert Boehne  <rboehne@gnu.org>
20612
20613         * ltmain.in: Handle the case when no tag is explicitly set, and
20614         $base_compile has a space in front of $CC, and revert the setting
20615         of tagname checked in on 2002-3-14.
20616
20617 2002-04-01  Robert Boehne  <rboehne@gnu.org>
20618
20619         * tagdemo/foo.cpp: Use C++ IO to catch problems linking to C++
20620         runtime libraries.
20621         * tagdemo/main.cpp: Ditto.
20622
20623 2002-03-16  Gary V. Vaughan  <gary@gnu.org>
20624
20625         * TODO: Removed obsolete comments about RMS' package system.
20626
20627 2002-03-14  Robert Boehne  <rboehne@gnu.org>
20628
20629         ltmain.in: Touch-up to make testsuite pass, and default tagname
20630         to CC when it isn't explicitly set.
20631
20632 2002-03-14  Anthony Green  <green@redhat.com>
20633
20634         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Albert Chin's gcj fix.
20635         (AC_LIBTOOL_PROG_COMPILER_PIC): Per Bothner's change for not
20636         using -DPIC with gcj.
20637
20638 2002-03-11  Bruce Korb  <bkorb@gnu.org>
20639
20640         * ltmain.in(compile): bring a touch of order to the option processing
20641
20642 2002-02-09  Gary V. Vaughan  <gary@gnu.org>
20643
20644         * NEWS: Updated.
20645         * THANKS: Added Rob Collins and Chuck Wilson for their cygwin
20646         work.
20647
20648         From Robert Collins  <robert.collins@itdomain.com.au>:
20649         * configure.ac (AC_EXEEXT): Needed for DOSish systems.
20650         * libtool.m4 (shlibpath_overrides_runpath) [cygwin]: Set to yes
20651         when compiling with gcc.
20652         (lt_prog_compiler_pic) [cygwin]: No longer needs the -DDLL_EXPORT
20653         hack, so we just say the pic is the default.
20654         (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin]: Extract symbols from a
20655         library normally.
20656         [cygwin]: Declare C++ compiler characterisics for g++, taking into
20657         account the new auto-import support in cygwin ld.
20658         * ltmain.in (specialdeplibs) [cygwin]: Be careful about
20659         eliminating duplicate -lgcc's from the link line.
20660         [cygwin]: Be smarter about .exe suffixes.
20661         * demo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Support
20662         DOSish systems properly.
20663         * depdemo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Ditto.
20664         * demo/Makefile.am (deplibs-check): Allow for .exe suffix.  Use
20665         hell_static instead of hell.static for multi-`.' inhibited OSes.
20666         * tests/demo-exec.test: Ditto.
20667         * tests/demo-inst.test: Ditto.
20668         * demo/foo.h [cygwin]: Sanitize cygwin dll support.
20669         * demo/foo.c (_LIBFOO_COMPILATION_): No longer required.
20670         * demo/hello.c (_LIBFOO_COMPILATION_): Ditto.
20671         * depdemo/Makefile.am (bin_PROGRAMS): Use depdemo_static instead
20672         of depdemo.static for multi-`.' inhibited OSes.
20673         * tests/depdemo-exec.test: Ditto.
20674         * tests/depdemo-inst.test: Ditto.
20675         * mdemo/Makefile.am (bin_PROGRAMS):  Ditto for mdemo.static.
20676         * tests/dryrun.test: Ditto.
20677         * tests/mdemo-exec.test: Ditto.
20678         * tests/mdemo-inst.test: Ditto.
20679         * tests/build-relink.test:  Be careful about possible .exe
20680         suffixes.
20681         * tests/noinst-link.test: Allow for .exe suffix.
20682
20683 2002-02-07  Alexandre Oliva  <aoliva@redhat.com>
20684
20685         Reverted incorrect patch:
20686         2001-10-24  H.J. Lu  <hjl@gnu.org>
20687         * ltmain.sh: Allow link against an archive when building a
20688         shared library.
20689         * libtool.m4 (lt_cv_deplibs_check_method): Always use
20690         file_magic for Linux ELF.
20691
20692 2002-01-30  Robert Boehne  <rboehne@ricardo-us.com>
20693
20694         * libtool.m4 (LT_AC_PROG_SED): Removed a mysterious newline.
20695
20696 2002-01-28  Robert Boehne  <rboehne@ricardo-us.com>
20697
20698         * libtool.m4 (LT_AC_PROG_SED): New macro tests sed for truncation of
20699         output.  AC_REQUIRE the new macro.
20700         * ltmain.in: Use $SED rather than plan old sed, as set by the new
20701         macro LT_AC_PROG_SED.
20702
20703 2002-01-10  Volker Christian  <voc@soft.uni-linz.ac.at>
20704
20705         * libltdl/ltdl.c (find_handle_callback): treat the result of a call
20706         to access(2) correctly when deciding whether a library can be found
20707         in a directory from user_search_path.
20708
20709 2002-01-07  Robert Boehne  <rboehne@ricardo-us.com>
20710
20711         * NEWS: Fixed wrong path for texinfo.tex.
20712         * configure.ac: Bumped version to 1.4e.
20713
20714         GNU libtool 1.4d was released.
20715
20716         * configure.ac: Bumped version to 1.4d.
20717         * NEWS: updated.
20718         * config.guess, config.sub, texinfo.tex:  Synchronised from
20719         ftp.gnu.org.
20720
20721 2001-12-06  Jens Petersen  <petersen@redhat.com>
20722
20723         * ltmain.in: Replace all test "-a"s by "&& test"
20724         for portability.
20725
20726 2001-11-28  Robert Boehne  <rboehne@ricardo-us.com>
20727
20728         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Change the
20729         factor of saftey as 3/4 of the result was not low enough.
20730
20731 2001-11-28  Gary V. Vaughan  <gary@gnu.org>
20732
20733         * libtoolize.in: The test for whether AC_PROG_LIBTOOL is defined
20734         in aclocal.m4 had bitrotted slightly.
20735         Reported by Takahiko Kawasaki <Takahiko_Kawasaki@cii.csk.co.jp>
20736
20737 2001-11-27  Donald D. Anderson  <dda@sleepycat.com>
20738
20739         * ltmain.in: Treat freebsd like openbsd, in that -lc/-lc_r should
20740         not be explicitly used.  ld handles this depending on the presence
20741         of the -pthread option.
20742
20743 2001-11-27  Robert Boehne  <rboehne@ricardo-us.com>
20744
20745         With help from Michael Matz <matz@kde.org>:
20746         * ltmain.in:  Add a new command line argument
20747         --preserve-dup-deps for preserving duplicate
20748         dependent libraries.
20749         * libtool.texi: Document it.
20750
20751 2001-11-27  Kevin Ryde  <user42@zip.com.au>
20752
20753         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Send "test"
20754         warnings to /dev/null, helps FreeBSD and maybe others.
20755
20756 2001-11-15  Albert Chin-A-Young  <china@thewrittenword.com>
20757
20758         * libtool.m4: quote LTCC because autoconf AC_PROG_CC_STDC
20759         macro might add to $CC if options needed by compiler to
20760         grok ANSI.
20761
20762 2001-11-15  Gary V. Vaughan  <gary@gnu.org>
20763
20764         From Joseph S. Myers  <jsm28@cam.ac.uk>:
20765         * ltmain.in: Typo.
20766
20767 2001-11-15   Mo DeJong  <supermo@bayarea.net>
20768
20769         * ltmain.in: Place parens around a generated relink_command
20770         so it is run is a subshell. This avoids an install error
20771         where libtool ended up in the wrong directory after
20772         relinking a .la file.
20773
20774 2001-10-31  Raja R Harinath  <harinath@cs.umn.edu>
20775
20776         * configure.ac (pkgdatadir): Move the invocation of AC_INIT_AUTOMAKE
20777         before the use of $PACKAGE in $pkgdatadir.
20778         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
20779
20780 2001-10-28  Gary V. Vaughan  <gary@gnu.org>
20781
20782         From Tom Bates  <Tom.Bates@compaq.com>:
20783         * libtool.m4 [mips-compaq-nonstopux]: New port.
20784         * ltmain.in [mips-compaq-nonstopux]: Support
20785         $version_type == nonstopux.
20786
20787 2001-10-28  Albert Chin-A-Young  <china@thewrittenword.com>
20788
20789         * libltdl/ltdl.c (foreach_dirinpath): change some types to size_t
20790         from int because strlen() returns size_t. argz_len changed to
20791         size_t because argzize_path() takes 3rd argument as size_t, not
20792         int.
20793         Based on lint run from Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
20794
20795 2001-10-27  Gary V. Vaughan  <gary@gnu.org>
20796
20797         * libtool.m4 (_LT_AC_TAGCONFIG): Cray sed does not allow character
20798         sets to contain the separator character.
20799         Reported by Kevin Ryde <user42@zip.com.au>
20800
20801         * ltdl.m4 (AC_WITH_LTDL): New macro to add `--with-included-ltdl'
20802         option to configure, but to find an appropriate ltdl library and
20803         append the right options to link it.
20804
20805 2001-10-24  Kevin Ryde  <user42@zip.com.au>
20806
20807         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Remove a stray ' quote.
20808
20809 2001-10-24  H.J. Lu  <hjl@gnu.org>
20810
20811         * ltmain.sh: Allow link against an archive when building a
20812         shared library.
20813         * libtool.m4 (lt_cv_deplibs_check_method): Always use
20814         file_magic for Linux ELF.
20815
20816 2001-10-12  Guido Draheim  <guidod-2001q3@gmx.de>
20817
20818         * ltdl.m4: Changed "underscode to underscore".
20819
20820 2001-10-06  Gary V. Vaughan  <gary@gnu.org>
20821
20822         * configure.ac: General modernisation and cleanup.
20823         * cdemo/configure.ac: Ditto.
20824         * demo/configure.ac: Ditto.
20825         * depdemo/configrue.ac: Ditto.
20826         * ltdl/configure.ac: Ditto.
20827         * ltdldemo/configure.ac: Ditto.
20828         * mdemo/configure.ac: Ditto.
20829         * pdemo/configure.ac: Ditto.
20830         * tagdemo/configure.ac: Ditto.
20831
20832 2001-10-04  Albert Chin-A-Young <china@thewrittenword.com>
20833
20834         * libltdl/ltdl.c: Match function return type with prototype
20835         (add static initializer to file_not_found).
20836
20837 2001-09-30  Gary V. Vaughan  <gary@gnu.org>
20838
20839         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): s/INCLTDL/LTDLINCL/ for
20840         consistency with gettext's INTLINCL.  Keep the old symbol too for
20841         backwards compatibility.
20842         (AC_LIBLTDL_INSTALLABLE): Ditto.
20843         * doc/libtool.texi (Distributing libltdl):  Adjust documentation.
20844
20845 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
20846
20847         * ltdl.m4 (AC_LTDL_DLLIB): Even though HP-UX 10.20 and 11.00
20848         support shl_load *and* dlopen, dlopen works correctly only
20849         with a patch. Because we want to avoid the situation where we
20850         build on a system with the patch but deploy on a system without,
20851         use shl_load exclusively if found.
20852
20853 2001-09-22  Gary V. Vaughan  <gary@gnu.org>
20854
20855         * libtool.m4 (_LT_AC_FILE_LTDLL_C): Be carefule that the start
20856         marker searched for by sed must start in column 0.
20857         (_LT_AC_FILE_IMPGEN_C): Ditto.
20858         Reported by Tor Lillqvist <tml@iki.fi>
20859
20860 2001-09-22  Tor Lillqvist  <tml@iki.fi>
20861
20862         * libtool.m4 [mingw* cygwin*]: Small improvement for mingw-hosted
20863         tool support (while still running libtool on cygwin). In that case
20864         PATH_SEPARATOR is ':', but gcc -print-search-dirs still prints its
20865         search path with ';' as separator.
20866         (AC_LIBTOOL_RC, AC_LIBTOOL_LANG_RC_CONFIG): Add support for .rc
20867         files (Windows resource files), compiled by the resource compiler
20868         (windres in mingw) to .o files.
20869         (AC_PROG_NM): Minor bug fix for $PATH elements with spaces in
20870         them.
20871         * configure.ac: Use LT_AC_PROG_RC.
20872         * ltmain.in: Check for .rc files.
20873         * NEWS: Updated.
20874
20875         * ltmain.in: Add a space to $base_compile in the case statement,
20876         as the case labels checks for trailing spaces, but there aren't
20877         necessarily in $base_compile.
20878
20879 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
20880
20881         * libtool.m4: When setting archive_cmds for CC, don't
20882         test for $GXX but for $GCC on HP-UX. Indentation fixes.
20883
20884 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
20885
20886         From Tor Lillqvist <tml@iki.fi>:
20887         * ltmain.in [cygwin* mingw*]: Take care of the difference between
20888         wrapper script name and executable name.
20889
20890         * libtool.m4 (archive_cmds) [darwin1.[0-2]]: Darwin uses zsh-3.1.6
20891         for /bin/sh, and that shell does not handle escaped quotes
20892         properly yet.
20893         Reported by Christopher Pfisterer <cp@chrisp.de>
20894
20895 2001-09-21  Albert Chin-A-Young  <china@thewrittenword.com>
20896
20897         * libltdl/ltdl.c: Match function return type with prototype
20898         (add static initializer to some functions) to prevent warnings
20899         from HP-UX cc.
20900
20901 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
20902
20903         * libltdl/ltdl.c: Added support for dmalloc, and uncovered some
20904         memory bugs as a result.
20905
20906 2001-09-21  Albert Chin  <china@thewrittenword.com>
20907
20908         * libtool.m4: Don't include main() when testing for command to
20909         parse $NM output because some C++ compilers don't allow you to
20910         take the address of main (e.g. HP-UX aCC).
20911
20912         * libtool.m4: Some uses of $GXX were unquoted, but GXX is either
20913         NULL or yes.  Use "$GXX".
20914
20915 2001-09-13  Assar Westerlund  <assar@sics.se>
20916
20917         * ltdl.m4 (AC_LTDL_DLLIB): call dlopen with arguments so the test
20918         does not fail due to a prototype in dlfcn.h
20919
20920 2001-09-13  Gary V. Vaughan  <gary@gnu.org>
20921
20922         * ltdl.m4 (AC_CHECK_HEADERS): Check for assert.h.
20923         * libltdl/ltdl.c:  If not, disable assertions manually.
20924
20925 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
20926
20927         * bootstrap: Be robust to having no files that need removing.
20928
20929         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump libltdl version to
20930         1.2.
20931         * libltdl/Makefile.am (libltdl_la_LDFLAGS):  Bump libtool library
20932         version info to 4:0:1.
20933
20934 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
20935
20936         * libtool.m4: No need to undefine([symbols]), proper quotation is
20937         enough.
20938
20939 2001-09-10  Gary V. Vaughan  <gary@gnu.org>
20940
20941         * libtool.m4: CVS Autoconf guarantees a decent default IFS, so
20942         there is no need for us to preset it anymore.
20943         Be careful not to set IFS="${IFS}$PATH_SEPARATOR" for PATH
20944         splitting, otherwise spaces in directory names will be lost.
20945         Use $PATH_SEPARATOR... don't rely on $ac_path_separator, which was
20946         an autoconf internal until just now, when it disappeared!
20947         * ltmain.in: Default IFS once, at the start.
20948         Reported by Akim Demaille <akim@epita.fr>
20949
20950 2001-09-10   Brad  <brad@comstyle.com>
20951
20952         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Missed an instance of
20953         Autoconf square bracket quoting style normalisation.
20954
20955         * ltmain.in (-lc_r): Style improvement.
20956
20957         * doc/libtool.texi: Remove obsolete references to ltconfig.
20958         * tests/quote.test: s/ltconfig/\$0/
20959
20960 2001-09-09  Gary V. Vaughan  <gary@gnu.org>
20961
20962         * libtool.m4: Use Autoconf square bracket quoting style
20963         consistently throughout.
20964
20965 2001-09-08  Gary V. Vaughan  <gary@gnu.org>
20966
20967         * bootstrap: Cleanup `autom4te' and `libtool' so that we don't
20968         get caught by something from a previous build.
20969
20970         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Revert
20971         my 2001-09-06 patch.
20972         (no_undefined_flag)i [solaris*]: Revert Alexandre's 2001-04-11 patch.
20973
20974 2001-09-07  Gary V. Vaughan  <gary@gnu.org>
20975
20976         * libltdl/ltdl.c (foreach_dirinpath): argz_len should be a size_t.
20977         Reported by Albert Chin <china@thewrittenword.com>
20978
20979 2001-09-06  Gary V. Vaughan  <gary@gnu.org>
20980
20981         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [solaris*]: Typo. s/GXX/GCC/.
20982
20983         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Changing
20984         no_undefined_flag from `-z text' to `-z defs' (see entry below at
20985         2001-04-11  Alexandre Oliva  <aoliva@redhat.com>) has a problem.
20986         when linking a shared library with gcc calling /usr/ccs/bin/ld (eg.
20987         the gcc supplied with Solaris 8 companion CD), using the flag
20988         -no-undefined, shared library linking will always fail because of
20989         the unresolved symbols from libgcc.a.  Consequently we have to
20990         provide a path to libgcc.a when linking shared libraries in
20991         conjunction with -no-undefined!
20992
20993         From Michael Pruett <mpruett@engr.sgi.com>:
20994         * libltdl/ltdl.c (find_module): `0' valued arguments to
20995         tryall_dlopen_module() must be explicitly cast to avoid compiler
20996         warnings on some environments.
20997
20998         From Daniel Johnson <danielj7@mac.com>:
20999         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Move from GNU
21000         ld section to non-GNU ld section.
21001
21002 2001-09-05  Robert Boehne  <rboehne@ricardo-us.com>
21003
21004         * pdemo/Makefile.am (helldl):  Automake 1.4 can't find the target
21005         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
21006         Using both targets to the left of the colon seems to work though!
21007
21008 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
21009
21010         * demo/Makefile.am (helldl):  Automake 1.4 can't find the target
21011         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
21012         Using both targets to the left of the colon seems to work though!
21013
21014 2001-09-03  Brad  <brad@comstyle.com>
21015
21016         * ltdl.m4 [AC_LTDL_SYS_DLOPEN_DEPLIBS]: Teach ltdl about the
21017         behavior of OpenBSD's dlopen().
21018
21019 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
21020
21021         From Marius Vollmer <mvo@zagadka.ping.de>:
21022         * libltdl/ltdl.c (tryall_dlopen_module): Don't forget to propogate
21023         errors over recurse levels.
21024
21025 2001-09-03  Brad  <brad@comstyle.com>
21026
21027         * libtool.m4 [openbsd*]: More improvements to the OpenBSD port.
21028
21029 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
21030
21031         From Albert Chin <china@thewrittenword.com>:
21032         * libtool.m4 (_LT_AC_LANG_C_CONFIG) [aix4*]: Be careful with
21033         shared namespaces for static and shared libs.
21034         (AC_LIBTOOL_DLOPEN_SELF): If all else fails, try dld_link from GNU
21035         DLD.
21036
21037 2001-09-02  Christopher Pfisterer <cp@chrisp.de>
21038
21039         * libtool.m4, ltmain.in: Linker flag and version numbering fixes
21040         for darwin.
21041
21042 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
21043
21044         Based on a patch from Marius Vollmer <mvo@zagadka.ping.de>:
21045         * NEWS: updated.
21046         * ltdl.m4 (AC_LIB_LTDL): Check for unistd.h.
21047         * ltdl.c: Include unistd.h if it exists.
21048         (LTDL_SEARCHPATH_VAR): Macro to prevent hardcoding
21049         "LTDL_LIBRARY_PATH".
21050         (LTDL_ARCHIVE_EXT): Macro to prevent hardcoding ".la".
21051         (archive_ext): Have only one copy of ".la" in the readonly
21052         segment of the compiled library.
21053         (find_handle_callback): Don't bother trying to dlopen the file if
21054         it doesn't exist.
21055         (find_handle): Don't bother searching for files if no search_path
21056         was supplied.
21057         (file_not_found): A new function to determine whether the last
21058         error was due to a file not found condition.
21059         (try_dlopen): Renamed from lt_dlopen() and changed to have the
21060         same footprint as tryall_dlopen.  This involved a minor rewrite of
21061         much of the internals of this function.
21062         (lt_dlopen): A new function wrapped arounf try_dlopen().
21063         (lt_dlopenext): If a file already has a suitable extension, don't
21064         bother adding additional extensions and trying to open those.
21065         Tidy up the rest of the code to prevent continued searching with
21066         an eventual FILE_NOT_FOUND when a genuine failure earlier in the
21067         search process could be legitimately reported.
21068
21069         * demo/Makefile.am (helldl$(EXEEXT)): Automake-1.5 made me change
21070         this from just `helldl'.
21071
21072 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
21073
21074         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) Fixed a problem
21075         with export_symbols_cmds not being set for CXX tags, and
21076         not being properly set for any tag under AIX/Power.
21077
21078 2001-08-19  Ossama Othman  <ossama@uci.edu>
21079
21080         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Corrected and improved
21081           error message that is displayed when there was a problem
21082           compiling the C++ test program.  It still mentioned the now
21083           non-existent `ltcf-cxx.sh' file.
21084
21085         * doc/libtool.texi (LTDL_SET_PRELOADED_SYMBOLS): Removed
21086           parentheses at end of starting "defmac" line, as pointed out by
21087           makeinfo.
21088
21089 2001-08-18  Brad  <brad@comstyle.com>
21090
21091         * ltmain.in: Do not remove -lm from deplibs for OpenBSD.
21092
21093 2001-08-16  Gary V. Vaughan  <gary@gnu.org>
21094
21095         * libltdl/ltdl.c (argz_create_sep): Don't forget to include the
21096         terminating '\0' when counting argz_len.
21097         (argz_create_sep): When canonicalizing argz, don't forget to copy
21098         the terminating '\0', incase canonicalization has shortened argz.
21099         (argz_stringify): Don't covert the final '\0' to a separator.
21100
21101 2001-08-15  Gary V. Vaughan  <gary@gnu.org>
21102
21103         * libltdl/ltdl.c (lt_dlhandle_next): Now we can loop through all
21104         loaded module handles as originally intended.
21105
21106         * libltdl/ltdl.c (lt_dlseterror): Oops.  This never worked
21107         either, due to a pair of typos.  Now fixed.
21108
21109         * libltdl/ltdl.c (N_ELEMENTS):  Deleted.  How come nobody noticed
21110         there was no way this could have ever worked?
21111         (lt_dlcaller_set_data): Now that valid caller_ids must be
21112         non-zero, allocate an addition entry in the caller_data vector and
21113         use a zero valued key as the end marker.
21114         (lt_dlcaller_get_data): Iterate up to the end marker in one pass.
21115
21116 2001-08-14  Gary V. Vaughan  <gary@gnu.org>
21117
21118         * libltdl/ltdl.c (lt_dlcaller_register): Caller ids are allocated
21119         starting from value `1', so that clients can use a value of zero
21120         to indicate that libltdl has not yet initialised.
21121
21122         * ltmain.in (exec_cmd): Fix quoting in execute mode so that the
21123         double quotes added by libtool (to prevent lossage with embedded
21124         spaces in filenames etc.) are not interpreted as literals by the
21125         shell.
21126
21127 2001-08-13  Gary V. Vaughan  <gary@gnu.org>
21128
21129         * libltdl/ltdl.c (find_file_callback): Fix a multiple free()
21130         bug.
21131         (tryall_dlopen_module): Remove some unused variables.
21132
21133         * libltdl/ltdl.c (lt_dlinsertsearchdir): Calculate the address
21134         of the end of user_search_path correctly.
21135
21136         * libltdl/ltdl.c (rpl_argz_stringify): New fallback implementation.
21137         * ltdl.m4 (AC_LTDL_FUNC_ARGZ):  Test for argz_stringify in libc.
21138         * libltdl/ltdl.c (lt_argz_insertinorder): Renamed from
21139         lt_argz_insert to make room for...
21140         (lt_argz_insert): Wraps argz_insert with libltdl error handling.
21141         (lt_dlpath_insertdir): Insert new path elements into an
21142         argzized path.
21143         (lt_dlinsertsearchdir): New function to insert new search
21144         directories anywhere into user_search_path using the above.
21145         (lt_dladdsearchdir): Rewritten to use lt_dlpath_insertdir.
21146         * libltdl/ltdl.h (lt_dlinsertsearchdir): Prototype for export.
21147         * doc/libtool.texi (Libltdl interface): Document it.
21148         * NEWS: Updated,
21149
21150 2001-08-07  Gary V. Vaughan  <gary@gnu.org>
21151
21152         From Albert Chin <china@thewrittenword.com>:
21153         * ltmain.in [irix*]: $with_gcc is either "yes" or "" (empty string)
21154         with current autoconf, so we need to be robust to that when testing
21155         it,
21156
21157 2001-08-06  Gary V. Vaughan  <gary@gnu.org>
21158
21159         From Brad <brad@comstyle.com>:
21160         * libtool.m4 (deplibs_check_method) [aix*]: Removed redundant setting
21161         of this variable.
21162
21163 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
21164
21165         * libltdl/ltdl.c (load_deplibs): Insert missing 1st argument to
21166         LT_EMALLOC.
21167
21168 2001-08-05  Tim Van Holder  <tim.van.holder@pandora.be>
21169
21170         * ltdl.m4: Canonicalize descriptive text used with
21171         AC_DEFINE.
21172
21173         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR): Remove.
21174         (_LT_AC_PROG_ECHO_BACKSLASH): Use $ac_path_separator
21175         instead of $PATH_SEPARATOR.
21176         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Ditto.
21177         (_LT_AC_TAGCONFIG): Ditto.
21178         (AC_ENABLE_SHARED): Ditto.
21179         (AC_ENABLE_STATIC): Ditto.
21180         (AC_ENABLE_FAST_INSTALL): Ditto.
21181         (AC_PATH_TOOL_PREFIX): Ditto.
21182         (AC_PATH_MAGIC): Ditto.
21183         (AC_PROG_LD): Ditto.
21184         (AC_PROG_NM): Ditto.
21185         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): Ditto.
21186
21187 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
21188
21189         From Brad <brad@comstyle.com>:
21190         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]:  OpenBSD
21191         can build modules without a `lib' prefix and version number.
21192         Move the deplibs check code from here...
21193         (AC_DEPLIBS_CHECK_METHOD): ...to here.
21194
21195 2001-08-05  Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21196
21197         * libtool.m4 [osf3*, osf4*, osf5*]: Tru64 *can* build modules
21198         without a `lib' prefix to the module name.
21199
21200 2001-08-05  Gary V. Vuaghan  <gary@gnu.org>
21201
21202         From Guido Draheim <Guido.Draheim@tek.com>:
21203         * ltmain.in: Display better and different error messages when
21204         library linkage fails in various ways.
21205
21206 2001-08-05  Albert Chin-A-Young <china@thewrittenword.com>
21207
21208         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Add newline after
21209         terminating '}' grouping character. Change '[0-9][0-9]'
21210         to '0' as we've already matched it.
21211
21212 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
21213
21214         From Brad <brad@comstyle.com>:
21215         * libtool.m4 (archive_cmds) [darwin, newsos, sysv4]: Replace
21216         1.3 era $linkopts references with $linker_flags.
21217
21218         * libltdl/ltdl.c:  Fixed several careless mistakes in the
21219         foreach_dirinpath support functions.
21220         (foreach_dirinpath): Walk path elements with the argz API.
21221
21222 2001-08-04  Gary V. Vaughan  <gary@gnu.org>
21223
21224         From Sedi Master Albert Chin <china@thewrittenword.com>:
21225         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Replace the awk invocation
21226         with an equivalent bit of sed wizardry.
21227
21228         From Edouard G. Parmelan <egp@free.fr>
21229         * libtool.m4 [darwin, openbsd]: Fix quoting problems with
21230         unquoted [] expressions.
21231
21232 2001-08-03  Gary V. Vaughan  <gary@gnu.org>
21233
21234         * bootstrap:  s/ltdldemo // -- This demo soesn't work properly,
21235         so I haven't committed it yet.
21236
21237 2001-08-01  Ossama Othman  <ossama@doc.ece.uci.edu>
21238
21239         * libtool.m4 (AC_LIBTOOL_SETUP): Require Autoconf-2.50 via the
21240         AC_PREREQ autoconf macro since the new libtool macros utilize
21241         macros from that version of Autoconf.
21242
21243 2001-08-01  Gary V. Vaughan  <gary@gnu.org>
21244
21245         * ltdl.m4: Bump serial number.
21246         General reformat and tify up in line with Autoconf-2.50 support.
21247         (AC_LTDL_FUNC_ARGZ): Test for system implementations of a
21248         handful of argz API calls, the error_t type, and the argz.h
21249         header.
21250         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump version number.
21251         * libltdl/ltdl.c (rpl_argz_append, rpl_argz_create_sep.
21252         rpl_argz_insert, rpl_rgz_next):  Fallback implementations of
21253         the similarly named functions for machines that don;t use glibc.
21254         (lt_dlrealloc):  New memory function pointer that can be set by
21255         the client.  Defaults to rpl_realloc, which in turn uses only
21256         lt_dlmalloc and lt_dlfree.
21257         (LT_EMALLOC, LT_EREALLOC): Set internal out-of-memory error
21258         inside the functions called by these new macros.  Simplified all
21259         callers by removing explicit client error reporting.
21260         (memmove):  Fallback implementation of overlap safe memory copy
21261         function.
21262         (tryall_dlopen):  Factorized common code into...
21263         (tryall_dlopen_module): ...this new helper function.
21264         (canonicalize_path):  Changed function signature to return success
21265         or failure.  Updated all callers.
21266         (foreachfile_callback):  Make use of argz API.
21267         (LT_DLSTRLEN): Moved from here...
21268         * libltdl/ltdl.h (LT_STRLEN): ...to here.  Updated all callers.
21269         (lt_dlrealloc):  Declare new memory management handle.
21270
21271 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
21272
21273         * libtool.m4 (mingw*) Revert the previous change as it was
21274         applied by mistake.
21275
21276 2001-07-31  Guido Draheim  <Guido.Draheim@tek.com>
21277
21278         * libtool.m4 (mingw*) sys_lib_search_path_spec:
21279         Sets the proper path separator for cross-compiling.
21280
21281 2001-07-30  Steve Ellcey  <sje@cup.hp.com>
21282
21283         * libtool.m4 (ia64-*-hpux*) Add support for ia64*-*-hpux* platform.
21284
21285 2001-07-30  Robert Boehne  <rboehne@ricardo-us.com>
21286
21287         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Fixed an
21288         incorrect resetting of lt_prog_compiler_static when using gcc
21289         under AIX Power.
21290
21291 2001-07-31  Gary V. Vaughan  <gary@gnu.org>
21292
21293         * bootstrap: Remove generated files (incase they are links) before
21294         rerunning the autotools to regenerate them.
21295
21296 2001-07-30  Gary V. Vaughan  <gary@gnu.org>
21297
21298         * libtool.m4 (AC_LIBTOOL_SETUP): Use Autoconf-2.50 era
21299         quadrigraphs and AC_HELP_STRING to bring AC_ARG_WITH/ENABLE
21300         macros up to date.
21301         (_LT_AC_LOCK): Ditto.
21302         (_LT_AC_TAGCONFIG): Ditto.
21303         (AC_PROG_LD): Ditto.
21304         (AC_ENABLE_SHARED): Ditto.  And eliminate the last remaining
21305         changequote invocations.
21306         (AC_ENABLE_STATIC): Ditto.  And Ditto.
21307         (AC_ENABLE_FAST_INSTALL):  Ditto.  And Ditto.
21308         * ltdl.m4 (AC_LTDL_ENABLE_INSTALL): Use Autoconf-2.50 era
21309         quadrigraphs and AC_HELP_STRING to bring AC_ARG_ENABLE
21310         macro up to date.
21311         * NEWS: Updated.
21312
21313         * libtool.m4 [UnixWare7, OpenUNIX8]: Initial support for
21314         UnixWare7 and OpenUNIX8.  Accept these identifiers from the
21315         latest config.guess/config.sub as pseudonyms for sysv5uw[78].
21316         * NEWS: Updated.
21317         Reported by Boyd Lynn Gerber <gerberb@zenez.com>
21318
21319 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
21320
21321         * tests/sh.test: Add a new test to enforce X as the fill
21322         character in `test "X...'.
21323         Beef up the `test' tests to also check `test -.' and `test ! -.'
21324         phrases for compliance.
21325         * ltmain.in: Fix quoting problems uncovered by the new tests.
21326
21327 2001-07-29  Andrew C. Feren  <aferen@CetaceanNetworks.com>
21328
21329         * tests/sh.test:  New test to disallow `test $foo', where
21330         `test "$foo"' is much safer.
21331         * ltmain.in: Fix quoting problems uncovered by the new test.
21332
21333 2001-07-29  Steve Ellcey  <sje@cup.hp.com>
21334
21335         * libtool.m4 (lt_cv_sys_global_symbol_to_cdecl):  Change it from
21336         "extern char" to "extern int" so that GCC 3.0 won't complain and
21337         refuse to compile programs containing "extern char main()".
21338
21339 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
21340
21341         From Guido Draheim <Guido.Draheim@tek.com>:
21342         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Support
21343         cross compilation to mingw by allowing `:' or ';' as a path
21344         separator.
21345         * NEWS: Updated.
21346
21347 2001-07-27  NIIBE Yutaka  <gniibe@m17n.org>
21348
21349         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all
21350         for sh*-*-linux* (SuperH) too.
21351
21352 2001-07-25  Ossama Othman  <ossama@debian.org>
21353
21354         From Thomas Poindessous <poinde_t@epita.fr>
21355         * ltmain.in (pic_mode):  Added missing quotes around shell
21356         variable in "if test" conditional.
21357
21358         From Peter Moulder <pmoulder@longford.csse.monash.edu.au>
21359         * ltmain.in (xform): Add support for pre-processed
21360         (e.g. `*.{i,ii}' sources).
21361
21362 2001-07-25  Gary V. Vaughan  <gary@gnu.org>
21363
21364         From Steve Ellcey <sje@cup.hp.com>:
21365         * libltdl/ltdl.c (foreach_dirinpath): Free unassigned pointer
21366         fix for `canonical'.
21367
21368 2001-07-23  Robert Boehne  <rboehne@ricardo-us.com>
21369
21370         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG, AC_LIBTOOL_PROG_LD_SHLIBS)
21371         [aix4*, aix5*]: Fixed a mispelled binder option under AIX.
21372         The option to throw errors for unresolved external references is
21373         -bernotok, not -bnoerok.
21374
21375 2001-07-23  Gary V. Vaughan  <gary@gnu.org>
21376
21377         * Makefile.am (EXTRA_DIST): Don't forget to distribute
21378         ChangeLog.1.
21379
21380         From Erik Lindahl <E.Lindahl@chem.rug.nl>
21381         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Used on aix to discover
21382         the compiler's default library search path so that the MPI
21383         compiler suite is not hosed by the previously hardcoded path.
21384         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [aix4*, aix5*]: Use it.
21385
21386 2001-07-23  Andreas Schwab  <schwab@suse.de>
21387
21388         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
21389         s390*-*-linux* and m68*-*-linux*.
21390
21391 2001-07-19  Robert Boehne  <rboehne@ricardo-us.com>
21392
21393         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix tag support
21394         problems with CXX variables being overwritten by the individual
21395         macros.
21396         (AC_LIBTOOL_PROG_CC_C_O): Ditto.
21397         (AC_LIBTOOL_PROG_COMPILER_PIC): Ditto.
21398         (AC_LIBTOOL_LANG_CXX_CONFIG): Moved call to
21399         AC_LIBTOOL_SYS_HARD_LINK_LOCKS after the call to
21400         AC_LIBTOOL_PROG_CC_C_O as it depends on the result.
21401         (AC_LIBTOOL_LANG_GCJ_CONFIG): Ditto.
21402         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
21403         (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Used the macro
21404         _LT_AC_TAGVAR to ensure the correct variable is being queried.
21405         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Changed the naming of shared
21406         objects under IRIX back to what it was in the MLB.
21407
21408 2001-07-23  Mark Kettenis  <kettenis@gnu.org>
21409
21410         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN) [gnu*]: Remove spurious
21411         "break" and bogus comment
21412         (_LT_AC_LANG_CXX_CONFIG): Add support for the Hurd.
21413         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Add support for the Hurd.
21414
21415 2001-07-16  Robert Boehne  <rboehne@ricardo-us.com>, Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
21416
21417         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): add cases and comments for
21418         more platforms, including AIX, Digital/Tru64 UNIX and IRIX.
21419
21420 2001-07-16  Gary V. Vaughan  <gary@gnu.org>
21421
21422         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix ia64 AIX
21423         run-time-linking when not using gcc.
21424         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
21425         Reported by Dan McNichol <mcnichol@austin.ibm.com>
21426
21427 2001-07-12  Gary V. Vaughan  <gary@gnu.org>
21428
21429         From dda@sleepycat.com (Don Anderson):
21430         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [qnx]: New
21431         supported architecture.
21432         (AC_DEPLIBS_CHECK_METHOD) [qnx]:  Ditto.
21433         * NEWS: Updated.
21434
21435         From Stefan Ondrejicka <ondrej@idata.sk>:
21436         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [cygwin*]: Make
21437         sure that /lib/w32api is searched for system libraries to
21438         match recent versions of cygwin.
21439         * NEWS: Updated.
21440
21441 2001-07-12  Dan McNichol  <mcnichol@austin.ibm.com>
21442
21443         From albert chin <china@thewrittenword.com>
21444         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix AIX
21445         run-time-linking when using gcc.
21446         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
21447
21448 2001-07-11  Gary V. Vaughan  <gary@gnu.org>
21449
21450         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
21451         solaris]: Doh!  the evalled variable shouldn't have been
21452         quoted.
21453
21454         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
21455         solaris]: output_verbose_link_cmd have unquoted `*' in case
21456         statements for these architectures.  Be sure to quote them
21457         with a sed expression before passing to eval.
21458         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21459
21460 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
21461
21462         * README-alpha:  s/configure.in/configure.ac.
21463         * configure.ac: Bumped version to 1.4c.
21464
21465         GNU libtool 1.4b was released.
21466
21467         * configure.ac: Bumped version to 1.4b.
21468         * NEWS: updated.
21469         * config.guess, config.sub, texinfo.tex:  Synchronised from
21470         ftp.gnu.org.
21471
21472 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
21473
21474         From Michael Elizabeth Chastain <chastain@cygnus.com>:
21475         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
21476         to a maximum of 512Kb, as it seems some HPUX 11.0 systems
21477         have trouble with 1MB.
21478
21479 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
21480
21481         * README-alpha:  Upgrade distribution instructions to include
21482         canonical location of texinfo.tex.
21483
21484 2001-07-09  Timothy Wall  <twall@oculustech.com>
21485
21486         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Don't disable shlibs
21487         on AIX5/IA64 with GNU ld.  Keep gnu defaults if using gnu tools
21488         on AIX5/IA64.
21489
21490 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
21491
21492         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
21493         to -1 on hurd, it has no command line argument limits.
21494         * ltmain.in Handle max_cmd_len=-1 for systems that don't have
21495         command line argument limits.
21496
21497 2001-07-05  Gary V. Vaughan  <gary@gnu.org>
21498
21499         * libtool.m4 (_LT_AC_LANG_C_CONFIG):  Revert to 1.3.x
21500         sematics, and always build static libs when the host machine
21501         cannot build shared libs.  Even if static libs were explicitly
21502         disabled.
21503
21504 2001-07-02  Gary V. Vaughan  <gary@gnu.org>
21505
21506         Cleanup of libltdl:
21507         * ltdl.c (lt_dladderror): Don't use `index' as a variable name,
21508         since it is a function on BSD based boxes.
21509         (lt_dlseterror): Ditto.
21510         (lt_dlexit): Remove unused errormsg declaration.
21511         (foreach_dirinpath):  Make sure filename is initialised.
21512         (find_handle):  Return NULL for a failed search.
21513         (foreachfile_callback): Don't reuse data2 symbol from prototype
21514         in func declaration to prevent symbol shadowing.
21515         * ltdl.h (lt_dlmutex_seterror): Don't use `error' as a parameter
21516         name, since it is a function on glibc boxes.
21517
21518         * libtoolize.in:  Display --version in the same format as
21519         autoconf and automake.
21520         * ltmain.in: Ditto.
21521
21522 2001-06-30  Gary V. Vaughan  <gary@gnu.org>
21523
21524         Merge test improvements from multi-language-branch:
21525         * tests/defs: Find and set the value of CC probed by libtool.m4
21526         * tests/link-2.test: Use a .lo wrapper script, and the value of
21527         CC set by defs instead of hardcoding gcc.
21528         * tests/link.test: Use the value of CC set by defs instead of
21529         hardcoding gcc.
21530         * tests/quote.test: Ditto.
21531         * tests/suffix.test: Ditto.
21532
21533         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Always set
21534         lt_prog_compiler_wl to `-Wl'.
21535         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
21536
21537         * ltdl.m4 (AC_LTDL_DLLIB) [sco3.2*]: When searching for a dlopen
21538         implementation, and adding `-ldl' has failed, try linking a call
21539         to dlopen, #including dlfcn.h, and without -ldl.  On sco3.2 the
21540         header files redefines the interface symbols to point at the
21541         implementation symbols in libc.
21542         Reported by "Golubev I. N." <gin@mo.msk.ru>
21543
21544 2001-06-29  Tim Van Holder  <tim.van.holder@pandora.be>
21545
21546         General cleanup of autoconf-2.50 upgrade:
21547         * configure.ac: Mark as needing autoconf-mode in
21548         emacs.  Pass arguments to AC_INIT.
21549         * cdemo/configure.ac: Ditto.
21550         * demo/configure.ac: Ditto.
21551         * depdemo/configure.ac: Ditto.
21552         * libltdl/configure.ac: Ditto.
21553         * mdemo/configure.ac: Ditto.
21554         * pdemo/configure.ac: Ditto.
21555         * tagdemo/configure.ac: Ditto.
21556         * ltdl.m4: Mark as needing autoconf-mode in
21557         emacs.
21558         * libtool.m4: Mark as needing autoconf-mode in
21559         emacs.  Don't add () to AS_MESSAGE_LOG_FD.
21560         * libltdl/configure.ac: Use config-h.in as
21561         template for config.h.
21562         * tagdemo/configure.ac: Drop the AC_DIAGNOSTIC. Move
21563         AC_LANG([C++]) after the OBJEXT/EXEEXT check.
21564
21565 2001-06-29  Gary V. Vaughan  <gary@gnu.org>
21566
21567         From Tim Van Holder <tim.van.holder@pandora.be>
21568         * tests/suffix.test: Typo in 2nd for loop.
21569
21570         From Tim Van Holder <tim.van.holder@pandora.be>
21571         * libltdl/Makefile.am (OBJECTS):  This was an implicit variable.
21572         instead state the list of object variables explicitly.
21573
21574         From Bruno Haible <haible@ilog.fr>
21575         * libtool.m4:  undefine the m4 builtin `symbols', so that the
21576         string `symbols' can be used in the rest of the code without
21577         causing errors with autoconf-2.13.
21578
21579         From "Golubev I. N." <gin@mo.msk.ru>
21580         * tests/Makefile.am (CPPLAGS): Typo. s/CPPLAGS/CPPFLAGS.
21581
21582         * mdemo/Makefile,am (foo1_la_LIBADD): Add libsub.la, since foo1
21583         does use symbols from libsub.la -- only platforms that allow
21584         undefined symbols in libraries were able to cope with this
21585         previously.
21586         Reported by Robert Collins <robert.collins@itdomain.com.au>
21587
21588         From "Golubev I. N." <gin@mo.msk.ru>
21589         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [sco3.2v5*]: Needs
21590         -wl,-Bexport to make self dlopen work.
21591
21592 2001-06-28  Gary V. Vaughan  <gary@gnu.org>
21593
21594         From  Alexander Bluhm  <Alexander.Bluhm@WiredMinds.de>
21595         * libltdl/ltdl.c (lt_dlopen): Fix bad memory initialisation
21596         assumptions.
21597
21598         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE) [HPUX]: Define
21599         lt_cv_sys_global_symbol_to_c_name_address to be a sed expression
21600         for mangling the output of the symbol pipe into a brace delimited
21601         C declaration of symbol name and address.
21602         * ltmain.in: Use it to generate the fooS.c symbol name
21603         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
21604
21605 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>, Gary V. Vaughan  <gary@gnu.org>
21606
21607         * bootstrap: Use cp instead of ln -s, for systems without
21608         symlinks.  Reorder the statements to avoid repetition outside
21609         the loop.
21610
21611 2001-06-28  Paolo Bonzini  <bonzini@gnu.org>, Gary V. Vaughan  <gary@gnu.org>
21612
21613         Libtool now builds with the help of Autoconf-2.50!
21614         * configure.ac (AC_PREREQ):  Require Autoconf-2.50 or newer.
21615         (AC_PROG_CPP, AC_EXEEXT, AC_OBJEXT):  Removed.  Autoconf-2.50
21616         doesn't have the AC_REQUIRE bug that required these to be called
21617         explicitly from here.  Autoconf-2.50 uses this file instead of...
21618         * configure.in: ...this, which is now deleted.
21619         * cdemo/configure.ac, cdemo/configure.in: Ditto.
21620         * demo/configure.ac, demo/configure.in: Ditto.
21621         * depdemo/configure.ac, depdemo/configure.in: Ditto.
21622         * libltdl/configure.ac, libltdl/configure.in: Ditto.
21623         * mdemo/configure.ac, mdemo/configure.in: Ditto.
21624         * pdemo/configure.ac, pdemo/configure.in: Ditto.
21625         * tagdemo/configure.ac, tagdemo/configure.in: Ditto.
21626         * libltdl/acconfig.h:  Deleted.
21627         * Makefile.am (libtool): libtool now depends on configure.ac.
21628         * libtool.m4 (_LT_AC_LOCK):  Use 2.50's AC_LANG_PUSH/AC_LANG_POP
21629         instead of 2.13's AC_LANG_SAVE/AC_LANG_RESTORE.
21630         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
21631         (AC_LIBTOOL_LANG_CXX_CONFIG): Ditto.
21632         * libtoolize.in:  Use $configure_ac, instead of hardcoding
21633         configure.in.
21634
21635 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>
21636
21637         * pdemo/Makefile.am:  Use '=' instead of '+=' to shut up
21638         automake.
21639
21640 2001-06-27  Gary V. Vaughan  <gary@gnu.org>
21641
21642         From brad@openbsd.org:
21643         * NEWS: Updated.
21644         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]: Improved
21645         support for various openbsd platforms.
21646         (AC_LIBTOOL_PROG_LD_SHLIBS): Ditto.
21647         * ltmain.in: Ditto,
21648
21649 2001-06-26  Gary V. Vaughan  <gary@gnu.org>
21650
21651         * NEWS: Updated.
21652         * libltdl/ltdl,c (LT_DLMUTEX_LOCK): Renamed from MUTEX_LOCK to
21653         avoid potential namespace clash.
21654         (LT_DLMUTEX_UNLOCK, LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR):
21655         Ditto.
21656         (lt_dlmutex_lock_func): Renamed from mutex_lock to avoid a
21657         namespace clash of NCR MP-RAS.
21658         (lt_dlmutex_unlock_func, lt_dlmutex_seterror_func,
21659         lt_dlmutex_geterror_func): Ditto.
21660         Reported by Edouard G. Parmelan <egp@free.fr>
21661
21662         * libltdl/ltdl.c (LT_DLSTRLEN): Call strlen only if the argument
21663         is non-NULL and non-zero in length.  Changed all calls to strlen
21664         appropriately.
21665
21666         * libltdl/ltdl.c: Prototype all static functions.
21667
21668         * ltdl.m4: Bump serial number to 3.
21669         (AC_LIB_LTDL): Require AC_HEADER_DIRENT for ltdl.c.
21670         * libltdl/ltdl.h (lt_dlforeachfile): Prototype for new function.
21671         * libltdl/ltdl.c: Include an appropriate header for the
21672         opendir/dirent api.
21673         (foreach_dirinpath): Visit each file in a list of directories.
21674         (find_file_callback): Factor out the core of find_file() to make
21675         use of foreach_dirinpath().
21676         (find_file): Use it!
21677         (find_handle_callback, find_handle): Ditto.
21678         (lt_dlforeachfile):  New function to find files in a searchpath.,,
21679         (foreachfile_callback): ...using this callback.
21680         * doc/libtool.texi (Libltdl interface): Document new
21681         lt_dlforeachfile api call.
21682
21683 2001-06-25  Gary V. Vaughan  <gary@gnu.org>
21684
21685         * THANKS:  Added Albert Chin-A-Young.
21686
21687         * libtool.m4 (IFS): When IFS is changed to split a string for
21688         examination in a loop, restore it inside the loop as well as
21689         outside incase IFS is needed by commands in that loop.
21690         Reported by Pavel Roskin <proski@gnu.org>
21691
21692 2001-06-25  Albert Chin-A-Young  <china@thewrittenword.com>
21693
21694         * libtool.m4: Prefer shl_load to dlopen on HP-UX because dlopen
21695         won't work properly without a patch.
21696
21697 2001-06-25  Daniel Harvey <daniel@amristar.com.au>
21698
21699         * libtool.m4 (ltdll_cmds): [$]0 doesn't appear to translate through
21700         the script correctly, change to $''0
21701
21702 2001-06-25  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
21703
21704         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
21705         mips-*-linux* and mipsel-*-linux*.
21706
21707 2001-06-24  Andreas Schwab  <schwab@suse.de>
21708
21709         * libtool.m4 (AC_LIBTOOL_SETUP): Remove failed try to
21710         transform linux to linux-gnu in $host.
21711         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match $host_os against
21712         linux*, not linux-gnu*.
21713         (AC_DEPLIBS_CHECK_METHOD): Likewise.
21714
21715 2001-06-24  Gary V. Vaughan  <gary@gnu.org>
21716
21717         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR):  Set
21718         PATH_SEPARATOR appropriately if it is not set already,
21719         (_LT_AC_TAGCONFIG): Use it.
21720         (AC_ENABLE_SHARED): Ditto.
21721         (AC_ENABLE_STATIC): Ditto.
21722         (AC_ENABLE_FAST_INSTALL): Ditto.
21723         (AC_PATH_TOOL_PREFIX): Ditto.
21724         (AC_PATH_MAGIC): Ditto.
21725         (AC_PATH_PROG_NM): Ditto.
21726
21727         From Tim Van Holder  <tim.van.holder@pandora.be>:
21728         * libtool.m4: Use the canonical absolute path test
21729         ([\\/]* | ?:[\\/]) and $PATH_SEPARATOR wherever
21730         appropriate.
21731         (AC_LIBTOOL_PROG_CC_PIC): Properly recognize DJGPP as a
21732         platform that doesn't support shared libraries.
21733         (AC_LIBTOOL_SYS_MAX_CMD_LEN): Avoid this test on DJGPP; use a
21734         fixed value (12K) instead.
21735         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't forget $ac_exeext
21736         when testing for link success.
21737
21738         * configure.in (AM_INIT_AUTOMAKE): Bumped version to 1.4a.
21739
21740         Complete the new configure time tags creation facility based on
21741         the ltcf-*.sh and ltconfig.in files from multi-language-branch:
21742         * libtool.m4:  More refactoring and reformatting.
21743         (_LT_AC_LANG_GCJ_CONFIG): Merged ltcf-gcj.sh from
21744         multi-language-branch.
21745         (_LT_AC_LANG_CXX_CONFIG): Merged ltcf-cxx.sh from
21746         multi-language-branch.
21747         * configure.in (AC_PROG_CXX, LT_AC_PROG_GCJ): Compiler checks must
21748         be done before AC_PROG_LIBTOOL which appends tags based on their
21749         results.
21750
21751 2001-06-12  Robert Boehne  <rboehne@ricardo-us.com>
21752
21753         * docs/libtool.texi: Updated the libltdl interface documentation
21754         to bring it up to date.
21755
21756 2001-06-06  Gary V. Vaughan  <gary@gnu.org>
21757
21758         * demo/Makefile.am (objdir): Use `libtool --config' for
21759         extracting configuration values, since a given value may
21760         be present in each tag.
21761         (hc-libpath): Ditto.
21762         (hc-minusL): Ditto.
21763         * libtool.m4 (_LT_AC_TAGCONFIG): Add tagged configurations from
21764         the --with-tags option.
21765         (_LT_AC_LTCONFIG_HACK): Factored out into separate configuration
21766         macros -- The interdependencies and running order are still
21767         immutable, and need a lot of work to fix.
21768         (AC_LIBTOOL_CONFIG): Taken from the previous incarnation of
21769         _LT_AC_LTCONFIG_HACK -- this macro is used both to create the
21770         primary (C language) libtool configuration from
21771         _LT_AC_LTCONFIG_HACK and also to append tagged configurations from
21772         _LT_AC_TAGCONFIG.
21773         * NEWS:  Merged from multi-language-branch.
21774
21775 2001-06-06  Robert Boehne  <rboehne@ricardo-us.com>
21776
21777         * bootstrap: Added tagdemo and pdemo tests from
21778         multi-language-branch.
21779         * configure.in: Added pdemo and tagdemo to CONF_SUBDIRS
21780         and merged references to CXX and GCJ from multi-language-branch.
21781         * pdemo: Added test directory from multi-language-branch.
21782         * tagdemo: Added test directory from multi-language-branch.
21783         * tests/Makefile.am: Merged additional tests from
21784         multi-language-branch.
21785         * tests/pdemo-*.test: ditto.
21786         * tests/tagdemo-*.test: ditto.
21787
21788 2001-05-30  Gary V. Vaughan  <gary@gnu.org>
21789
21790         * libtool.m4: Merged ltconfig.in from multi-language-branch.
21791
21792 2001-05-28  Gary V. Vaughan  <gary@gnu.org>
21793
21794         * libtool.m4: Reformatting for consistency, and some refactoring
21795         in preparation for ltcf-*.sh merge.
21796
21797 2001-05-27  Gary V. Vaughan  <gary@gnu.org>
21798
21799         * ltmain.in: Merged from multi-language-branch.
21800         * libtool.m4: Merged from multi-language-branch.
21801         * ChangeLog: Started afresh.  Old ChangeLog history moved to...
21802         * ChangeLog.1: ...here.
21803
21804 2000-06-04  Mark Mitchell  <mark@codesourcery.com>
21805
21806         * ltcf-c.sh (archive_cmds, archive_expsym_cmds) [solaris,
21807         with_gcc]: Use `gcc -shared' to build a shared library.
21808
21809 2001-06-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
21810
21811         * ltcf-c.sh (archive_cmd) [hpux, with_gcc]: Use gcc to link shared
21812         archives.
21813
21814 2001-05-28  Simon Patarin <simon.patarin@inria.fr>
21815
21816         * ltcf-cxx.sh (osf3/osf4/osf5): Support creation of C++  shared
21817         libraries when using g++ with native linker.
21818
21819 2001-05-28  Albert Chin  <china@thewrittenword.com>
21820
21821         * ltconfig.in (version_type, soname_spec) [aix4* | aix5*]: Use
21822         linux-style versioning, and remove trailing .o from soname_spec.
21823
21824 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
21825
21826         * ltcf-cxx.sh (allow_undefined_flag, no_undefined_flag)
21827         [aix4*|aix5*]: Prepend blank.
21828
21829 2001-05-20  Alexandre Oliva  <aoliva@redhat.com>
21830
21831         * configure.in: Reverted to 1.4, to avoid confusion with MLB.
21832         Mainline is the release snapshot, except for the ChangeLog version
21833         number, until the multi-language branch is merged into it.
21834
21835         * ltconfig.in: Fix sh.test regression introduced in previous patch.
21836
21837         * ltconfig.in (lt_cv_sys_max_cmd_len): Improve test to work better
21838         in case of non-built-in echo.  Set bounds correctly.
21839
21840         * ltcf-cxx.sh (allow_undefined_flag) [aix4* | aix5*]: Fix quote
21841         error.
21842
21843         * ltmain.in (exec_cmd): New variable.  Don't exec programs within
21844         the big `case'; set the variable instead, and exec the cmd
21845         afterwards, so that the shell gets a chance to clean up here-doc
21846         files.
21847         * NEWS: Update.
21848
21849 2001-05-16  Alan Modra  <amodra@one.net.au>
21850
21851         * libtool.m4 (lt_cv_deplibs_check_method): pass_all for hppa*-linux.
21852
21853 2001-05-03  Andreas Jaeger  <aj@suse.de>, Andreas Schwab  <schwab@suse.de>
21854
21855         * ltmain.in (relink_command): Arrange for wrapper script to save
21856         output to a variable and display it only if relinking fails.
21857
21858 2001-04-25  Gary V. Vaughan  <gary@gnu.org>
21859
21860         * configure.in: bumped version to 1.4a.
21861
21862         GNU libtool 1.4 was released.
21863
21864         * configure.in: Bumped version to 1.4.
21865         * config.sub, config.guess:  Synchronised from ftp.gnu.org.
21866         * NEWS: updated.
21867
21868 2001-04-24  Peter Eisentraut  <peter_e@gmx.net>
21869
21870         * libtool.m4: Support $host_os as /sysv5uw7*/ from newer
21871         config.guess in addition to older /unixware*/.  Use compiler
21872         driver, not linker, for linking shared libraries.
21873
21874 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
21875
21876         * libtool.m4, ltmain.in, libltdl/configure.in,
21877         tests/quote.test:  Remove stale references to ltconfig.
21878
21879         * ltdl.m4 (AC_C_INLINE): No longer required.
21880         * libltdl/ltdl.c (strdup, strcmp, strchr, strrchr, memcpy, trim,
21881         free_vars):  Revoke inline keyword from declarations.  `static
21882         inline' is not very portable, and in addition Unixware 7.1.1's
21883         compiler says you can't access static variables from inline
21884         functions.
21885         Reported by Peter Eisentraut  <peter_e@gmx.net>
21886
21887 2001-04-24 Albert Chin-A-Young <china@thewrittenword.com>
21888
21889         * libtool.m4: Handle case where /bin/nm -p outputs multiple
21890         symbol types (like under HP-UX 11.00).
21891
21892 2001-04-24  Thomas Tanner  <tanner@ffii.org>
21893
21894         * TODO: describe problems with libltdl
21895         * ltmain.in (ILD): tidy up, add comments, remove dead code,
21896           merge duplicate code
21897         * ltmain.in (ILD): don't touch newdependency_libs after scan or
21898           dlopen pass
21899         * ltmain.in (ILD): don't dlpreopen dependency_libs of a dlopened
21900           module (remove absolutely wrong quick hack)
21901         * ltmain.in (ILD): remove wrong comments about duplicate removal
21902         * ltmain.in (ILD): build a static-only module if it has
21903           static libraries in its dependencies (so that libltdl can
21904           safely load dependency_libs)
21905         * ltmain.in (argument parsing): prefix comparsions of -l args with X,
21906           replace -lc with `-framework System' _after_ the ILD passes
21907         * ltmain.in (argument parsing): support dl[pre]open
21908           for both .o and .lo files
21909         * ltmain.in (deplibs_check): use portable test syntax
21910         * ltmain.in (help): document -prefer-[non-]pic flags
21911         * ltmain.in: improve readablity by adding some comments,
21912           rename uninst_* to notinst_* (more adequate name)
21913
21914 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
21915
21916         * doc/PLATFORMS:  More updates from subscribers to
21917         libtool@gnu.org.
21918
21919         From Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21920         * tests/Makefile.am (TESTS_ENVIRONMENT): Make sure the *.test
21921         scripts get the same make that was used in the top level
21922         directory.
21923
21924 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
21925
21926         * doc/PLATFORMS:  Updated with more platforms successfully
21927         tested by members of libtool@gnu.org.
21928
21929 2001-04-23  Peter Eisentraut  <peter_e@gmx.net>
21930
21931         * doc/PLATFORMS:  With this patch, freebsd4.3 passes the test
21932         suite.
21933         * libltdl/ltdl.c (lt_dlexit): Quit loop if only resident modules
21934         are left.
21935
21936 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
21937
21938         * doc/PLATFORMS:  With this patch, my Solaris boxes now pass the
21939         test suite,  Yay!
21940         From Albert Chin-A-Young <china@thewrittenword.com>
21941         * ltmain.in:  `test -L' is not portable, and infact breaks uninstall
21942         mode on Solaris.  Fallback to `test -h' and finally `test -f',
21943         but be careful not to let the failure status cause libtool to
21944         stop.
21945
21946         From Simon Spero <ses@ibiblio.org>
21947         * ltdl.m4 (AC_LTDL_DLSYM_USCORE):  Add $LIBADD_DL while
21948         checking for dlsym _.
21949
21950         From Simon Spero <ses@ibiblio.org>
21951         * libtool.m4 (lt_cv_deplibs_check_method) [darwin]: Set it!
21952
21953         * TODO: Make a note to undo this later.
21954         From Christoph Pfisterer <cp@chrisp.de>
21955         * libtool.m4: Use $() execution substitution quotation to work
21956         around zsh builtin echo \ escape removal.
21957
21958 2001-04-22  Peter Eisentraut  <peter_e@gmx.net>
21959
21960         * bootstrap: Allow overriding the location aclocal, automake,
21961         autoconf, autoheader from the environment.
21962
21963         * demo/Makefile.am: Automake 1.4e does not allow `+=' assignments
21964         if the variable was not set with `=' earlier.  `+=' was not useful
21965         here anyway.
21966
21967 2001-04-22  Gary V. Vaughan  <gary@gnu.org>
21968
21969         * ltdl.m4 (AC_CHECK_HEADERS): UW7 has sys/dl.h, so we must
21970         check for that here.
21971         * libltdl/ltdl.c (HAVE_SYS_DL_H):  Include it if necessary for
21972         the dlopen loader.
21973         Reported by Matthew Schalit <mschalit@pacbell.net>
21974
21975         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use pass_all for
21976         various releases of UnixWare and OpenServer that support it.
21977         Reported by Matthew Schalit <mschalit@pacbell.net>
21978
21979         * doc/PLATFORMS:  Updated with various platforms successfully
21980         tested by members of libtool@gnu.org.
21981
21982 2001-04-21  Gary V. Vaughan  <gary@gnu.org>
21983
21984         * TODO:  propose pkg-config merge.
21985
21986 2001-04-21  Nick Hudson  <skrll@netbsd.org>
21987
21988         * ltmain.in: Correct an error in yesterday's patch.
21989
21990 2001-04-20  Nick Hudson  <skrll@netbsd.org>
21991
21992         * libtool.m4: Improve NetBSD support.
21993         * ltmain.in: ditto.
21994
21995 2001-04-19  Dan McNichol <mcnichol@austin.ibm.com>
21996
21997         * libtool.m4: Build standard shared libraries on AIX POWER
21998         more like AIX does, with a shared object archived into lib<xxx>.a.
21999         On AIX -bexpall flag does strange things... Don't use it.
22000         Fix quotes around -berok flag.  Add support for AIX 5.
22001         Add support for run time linking on AIX POWER. (should work
22002         on AIX 4.2 and up).  Turn this feature on by adding -brtl flag
22003         to LD_FLAGS.  Add support for AIX on IA64. Note: AIX on IA64
22004         uses a SYSV type linker.  Add a comment telling what to do if the
22005         TOC starts getting too large on AIX.
22006         * NEWS: mention aix5 support.
22007
22008 2001-04-18  Alexandre Oliva  <aoliva@redhat.com>
22009
22010         * TODO: Add -L- flag.
22011
22012 2001-04-11  Alexandre Oliva  <aoliva@redhat.com>
22013
22014         * libtool.m4 (no_undefined_flag) [Solaris ld]: Change to -zdefs.
22015
22016 2001-04-11  Ossama Othman  <ossama@uci.edu>
22017
22018         * AUTHORS: Added myself to the list of maintainers.
22019
22020 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
22021
22022         * libtool.m4 (hardcode_libdir_flag_spec, osf4/osf5): Use ${wl}
22023         to pass -rpath when compiling with gcc.
22024         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
22025
22026         * libltdl/ltdl.c (sys_shl_open): Cache a handle for the `self'
22027         module, since HPUX adds module symbols into the `self' pool if
22028         it is opened later.  Return the cached pointer if the caller
22029         subsequently tries to open `self'.
22030         (sys_shl_sym): Diagnose NULL modules.
22031
22032         From Peter Eisentraut  <peter_e@gmx.net>
22033         * ltmain.in (clean,uninstall): test -e is not portable.  Well,
22034         neither is -L, but I'm hoping that redirecting error messages
22035         to /dev/null and relying on non-zero exit status will work okay
22036         on the few hosts that don't support -L.
22037
22038 2001-04-08  Nick Hudson  <skrll@netbsd.org>
22039
22040         * ltmain.in: Improve check for valid -version-info parameter.
22041
22042 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
22043
22044         From Nick Hudson  <skrll@netbsd.org>
22045         * doc/Makefile.am (libtool_TEXINFOS): Add fdl.texi so that it
22046         is included in the distribution.
22047
22048 2001-04-07  Peter Eisentraut  <peter_e@gmx.net>
22049
22050         * ltmain.in (clean,uninstall): Do not error if the file doesn't
22051         exist and 'rm -f' was used.  Exit with status 1 on error.
22052
22053 2001-04-06  Nick Hudson  <skrll@netbsd.org>
22054
22055         * ltmain.in: Implement a new deplibs_check_method called
22056         match_pattern that does pattern matching on filenames...
22057         * libtool.m4: ...use it with NetBSD
22058
22059 2001-04-05  Gary V. Vaughan  <gary@gnu.org>
22060
22061         * doc/libtool.texi (Multiple dependencies): A note about the
22062         problems I've reintroduced by reverting the my patch of 2001-03-31.
22063
22064         From Edward Lee <tailbert@yahoo.com>
22065         * libtool.m4: Typos.
22066
22067         * tests/Makefile.am (TESTS): Delete references to depdemo-dups.test.
22068         * tests/depdemo-dups.test:  Removed, as part of the patch
22069         reversion below.
22070         * ltmain.in: Revert my change from 2001-03-31.  Although it
22071         was technically correct, it opens a whole can of worms we don't
22072         want to deal with right now.
22073
22074         From Ahmed Masud <masud@googgun.com>
22075         * libltdl/ltdl.c (sys_shl_open):  Return a NULL module handle
22076         for self opening.
22077         (sys_shl_close):  Be careful not to close a NULL module handle.
22078         (sys_shl_sym):  Allow shl_findsym() to open NULL modules, but
22079         discard the modified module address it returns.
22080
22081         * libltdl/ltdl.c (lt_dlopen):  When reading the .la file,
22082         reallocate the line buffer size if the line overflows the
22083         original buffer.
22084         Reported by Nick Hudson <skrll@netbsd.org>
22085
22086         * NEWS (1.3d) Removed bogus ltconfig reference.
22087
22088 2001-04-03  Gary V. Vaughan  <gary@gnu.org>
22089
22090         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Remove the spurious
22091         `dnl' from the help text of --with-pic.
22092         Reported by stefan <stefan@lkcc.org>
22093
22094 2001-04-02  Gary V. Vaughan  <gary@gnu.org>
22095
22096         * configure.in: bumped version to 1.3e.
22097
22098         GNU libtool 1.3d was released.
22099
22100         * NEWS: inserted todays date.
22101
22102 2001-04-01  Christoph Pfisterer  <cp@chrisp.de>
22103
22104         * libtool.m4: Fixed support for Darwin and Rhapsody. Now correctly
22105         hardcodes the library path and adds versioning. Other small
22106         fixes.
22107         * ltmain.in: Fixed special cases for libc and libm on Rhapsody and
22108         Darwin. One of them was misplaced. Added version_type case for
22109         Rhapsody and Darwin, named "darwin".
22110
22111 2001-03-31  Gary V. Vaughan  <gary@gnu.org>
22112
22113         * ltmain.in: Remove the code for stripping duplicate deplibs
22114         from libtool link lines -- duplicates are somtimes necessary
22115         to satisfy inter-library dependencies, and never cause link to
22116         fail even if they are spurious.
22117         * tests/depdemo-dups.test: New file.  Make sure this bug doesn't
22118         creep back in again!
22119         * tests/Makefile.am (TESTS): Use the new test above.
22120
22121 2001-03-29  Edward M. Lee  <tailbert@yahoo.com>
22122
22123         * libtoolize.in: Check configure.ac and prefer configure.ac to
22124         configure.in.
22125
22126         * libtoolize.in: change recommendation from AM_PROG_LIBTOOL to
22127         AC_PROG_LIBTOOL.
22128
22129         * libtool.m4: Generate dll/import libraries for cygwin according
22130         to the following: libFOO.a (static lib), libFOO.dll.a (import
22131         lib), cygFOO-version.dll (dll).  Update postinstall_cmds and
22132         postuninstall_cmds to reflect this.
22133         * ltmain.in: Generate installed .la files with dlnames set to
22134         ../bin/cygFOO-version.dll for normal dlls. dlls for modules
22135         remain with the .la file.
22136
22137         * libltdl/ltdl.c:  Use windows paths while calling LoadLibrary.
22138
22139 2001-03-16  Albert Chin  <china@thewrittenword.com>
22140
22141         * libtool.m4 (save_CPPFLAGS): Fix typo.
22142
22143 2001-03-13  Alexandre Oliva  <aoliva@redhat.com>
22144
22145         * libtool.m4 (lt_cv_compiler_c_o): Cache it.
22146         (lt_cv_compiler_o_lo): Likewise.
22147
22148 2001-03-09  Peter Eisentraut  <peter_e@gmx.net>
22149
22150         * ltmain.in (clean): Automatically remove $objdir (usually '.libs').
22151
22152 2001-03-08  Gary V. Vaughan  <gary@gnu.org>
22153
22154         * ltconfig.in (library_names_spec): Undo latin-1 spaces I pasted
22155         in yesterday by mistake.
22156
22157 2001-03-07  Gary V. Vaughan  <gary@gnu.org>
22158
22159         From Tor Lillqvist <tml@iki.fi>
22160         * libtool.m4 (export_symbols): On Windows, if the export_symbols
22161         file (which has been passed to libtool with the -export-symbols
22162         command line switch) already is a .def file, use it as is.
22163
22164         * libtool.m4 (library_names_spec): Using m4 quotes correctly this
22165         time around!
22166
22167         From Tor Lillqvist <tml@iki.fi>
22168         * libtool.m4 (library_names_spec): Use an appropriate filename
22169         prefix for dlls -- lib for mingw; cyg for cygwin; pw for pw32.
22170
22171 2001-03-06  Alexandre Oliva  <aoliva@redhat.com>
22172
22173         * libtool.m4 (can_build_shared) [AIX 4.[01], GCC]: GCC up to
22174         2.96 can't build shared libraries reliably.  Disable them.
22175
22176         * ltmain.in: When dropping dependencies of a -no-undefined
22177         library, give up on building a shared library.
22178
22179 2001-03-05  Akim Demaille  <akim@epita.fr>
22180
22181         * ltmain.sh: Don't quote the argument of case/esac and
22182         assignments.
22183         * libtool.m4: Likewise.
22184
22185 2001-03-03  Markus F.X.J. Oberhumer <markus@oberhumer.com>,
22186             Alexandre Oliva <oliva@lsd.ic.unicamp.br>
22187
22188         * libtool.m4: Added explicit return type to all C functions.
22189
22190 2001-02-22  Gary Vaughan  <gary@gnu.org>
22191
22192         * NEWS: Updated.
22193         * doc/libtool.texi (Thread Safety in libltdl): New node describing
22194         the  application the new MT API.
22195         * libltdl/ltdl.h: Prototypes.
22196         * libltdl/ltdl.c: Use these functions throughout the rest of
22197         the file to provide thread locking.
22198         (lt_dlmutex_register): New function to set callbacks for
22199         multi-threaded calls into libltdl.
22200         (lt_dl_mutex_lock): Type of a locking callback function.
22201         (lt_dl_mutex_lock): Type of an unlocking callback function.
22202         (lt_dl_mutex_seterror): Type of a callback function to save the
22203         last libltdl error message in thread local storage.
22204         (lt_dl_mutex_geterror): Type of a callback function to retrieve
22205         the last saved error message from thread local storage.
22206
22207 2001-02-20  Gary Vaughan  <gary@gnu.org>
22208
22209         * libltdl/ltdl.c (lt_dlcaller_register): dont set an unsigned
22210         type to a negative number.
22211         Reported by Guenter Millahn <Guenter.Millahn@Informatik.TU-Cottbus.DE>
22212
22213 2001-02-05  Gary V. Vaughan  <gary@gnu.org>
22214
22215         From Nick Hudson <skrll@netbsd.org>
22216         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): netbsd* is able to
22217         automatically load module deplibs without assistance from
22218         libltdl.
22219
22220 2001-02-02  Gary V. Vaughan  <gary@gnu.org>
22221
22222         * libltdl/ltdl.c (load_deplibs): Make sure the depcount is reset,
22223         even when deplibs are not used because of the patch below.
22224
22225         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): If we know that the host
22226         architecture automatically loads deplibs, then...
22227         * libltdl/ltdl.c (load_deplibs): ...don't manually load each one.
22228
22229 2001-01-31  Gary V. Vaughan  <gary@gnu.org>
22230
22231         * TODO:  Updated.
22232
22233         * libltdl/ltdl.c (load_deplibs): If loading a deplib fails,
22234         don't sweat -- it may be a lib that is already statically linked
22235         into the loading application.
22236
22237         * libltdl/ltdl.c: Clean up the shadowing of the global handles
22238         variable.
22239         (LT_DLRESIDENT_FLAGS): Add extra parens to satisfy -Wall.
22240         (load_deplibs):  Cast isspace() argument to an int to satisfy
22241         -Wall.
22242
22243 2001-01-30  Robert Boehne  <rboehne@ricardo-us.com>
22244
22245         * AUTHORS: added myself to the list of maintainers.
22246
22247 2001-01-28  Alexandre Oliva  <aoliva@redhat.com>
22248
22249         * libltdl/Makefile.am (CLEANFILES): Clean conditionally-built
22250         libraries.
22251
22252 2001-01-27  Alexandre Oliva  <aoliva@redhat.com>
22253
22254         * libtool.m4 (ld_shlibs) [aix4*]: Disable on unknown CPU types.
22255
22256 2001-01-07  Gary V. Vaughan  <gary@gnu.org>
22257
22258         * NEWS: Updated.
22259         * doc/libtool.texi (User defined module data): Updated.
22260         * libltdl/ltdl.c (lt_dlhandle_next): New function.
22261         * libltdl/ltdl.h (lt_dlhandle_next): Prototypes.
22262
22263 2001-01-05  Gary V. Vaughan  <gary@gnu.org>
22264
22265         * NEWS: Updated.
22266         * doc/libtool.texi (User defined module data):  Document it all.
22267         * ltdl.m4:  Check for memcpy, or else bcopy.
22268         * ltdl.c (lt_caller_data): New type.
22269         (lt_dl_handle_struct): Add an lt_caller_data field.
22270         (lt_dlcaller_register, lt_dlcaller_set_data,
22271         lt_dlcaller_get_data): New functions.
22272         (rpl_memcpy): A minimal fallback implementation.
22273         (rpl_realloc): A realloc implemented with lt_dlmalloc and
22274         lt_dlfree.
22275         (LT_DLMALLOC, LT_DLFREE, LT_DLREALLOC, LT_DLMEM_REASSIGN):
22276         New memory handling convenience macros.  Use them
22277         appropriately throughout the rest of this file.
22278         * ltdl.h (lt_dlcaller_register, lt_dlcaller_set_data,
22279         lt_dlcaller_get_data): Prototyped.
22280
22281 2001-01-04  Gary V. Vaughan  <gary@gnu.org>
22282
22283         * libltdl/ltdl.h:  formatting change.
22284
22285 2000-12-23  Gary V. Vaughan  <gary@gnu.org>
22286
22287         From vvv@vsu.ru:
22288         * doc/fdl.texi (GNU Free Documentation License): contained @bye
22289         command which prevented part of document to be generated (indices,
22290         etc).
22291         * doc/libtool.texi (Dlpreopening): the @deftypevar did not contain
22292         a space after a type.
22293
22294 2000-12-22  Akim Demaille  <akim@epita.fr>
22295
22296         * libtool.m4: s/[ \t]*$//
22297
22298 2000-12-22  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
22299
22300         * libtool.m4 (OSF/1):  Revert my patch of 2000-12-16.
22301
22302 2000-12-20  Gary V. Vaughan  <gary@gnu.org>
22303
22304         * libltdl/ltdl.c (lt_dlexit): Was checking for residency of the
22305         wrong module.
22306         Reported by Robert Boehne  <rboehne@ricardo-us.com>
22307
22308         * ltmain.in (dlprefiles): Now that `2000-12-15 Utz-Uwe Haus' patch
22309         below can detect preopened library deplibs correctly in libltdl,
22310         we need to ensure that libtool library deplibs are also preloaded
22311         into the binary for that phase to work.
22312
22313 2000-12-16  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
22314
22315         * libtool.m4 (OSF/1): Change the way to pass linker flags through
22316         compiler on a Tru64 machine.
22317
22318 2000-12-16  Gary V. Vaughan  <gary@gnu.org>
22319
22320         * libtool.m4 (sys_lib_search_path_spec): Use test instead of
22321         `['.
22322         (archive_cmds): And another one.
22323
22324         * libtool.m4 (darwin*): Fixed a pair of stupid typos I made in the
22325         last patch.
22326
22327         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  moved rogue settings from
22328         sequent, ncr and newos6 back into here from other macros.
22329
22330 2000-12-16   Wilfredo Sanchez  <wsanchez@apple.com>
22331
22332         * libtool.m4: (dyld/darwin*) Much improved port.
22333         * ltmain.in: (dyld/darwin*) Much improved port.
22334
22335 2000-12-16  Sascha Schumann <sascha@schumann.cx>
22336
22337         * libtool.m4: Accept darwin as an alias for rhapsody.
22338         * ltmain.in: ditto.
22339
22340         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use the HPUX 10.20
22341         methods to check for library dependencies on HPUX 11.
22342
22343 2000-12-16  Nick Hudson  <skrll@netbsd.org>
22344
22345         * libtool.m4 (netbsd*, deplibs_check_method): Enable ILD support
22346         for NetBSD a.out.
22347
22348 2000-12-15  Akim Demaille  <akim@epita.fr>
22349
22350         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Rename
22351         `ac_cv_sys_global_symbol_pipe' as `lt_cv_sys_global_symbol_pipe'.
22352         Similarly with `lt_cv_global_symbol_to_cdecl
22353         (_LT_AC_LTCONFIG_HACK): Similarly with `ac_cv_prog_cc_pic',
22354         `ac_cv_prog_cc_shlib', `ac_cv_prog_cc_wl', `ac_cv_prog_cc_static',
22355         `ac_cv_prog_cc_no_builtin', `ac_cv_prog_cc_can_build_shared',
22356         `ac_cv_prog_cc_static_works', `ac_cv_archive_cmds_need_lc'.
22357         (AC_PATH_TOOL_PREFIX): Similarly with `ac_cv_path_MAGIC_CMD'
22358         (AC_PROG_LD) <ac_cv_path_LD>: Likewise.
22359         (AC_PROG_LD_GNU) <ac_cv_prog_gnu_ld>: Likewise.
22360         (AC_PROG_NM) <ac_cv_path_NM>: Likewise.
22361
22362 2000-12-15  Utz-Uwe Haus  <haus@mail.math.uni-magdeburg.de>
22363
22364         * libltdl/ltdl.c (lt_dlopen): Changed "dl_dependency_libs" keyword
22365         to "dependency_libs".
22366
22367 2000-12-14  Tod Milam  <tmilam@traclabs.com>
22368
22369         * libltdl/ltdl.c (lt_dlexit): Reset the loaders value to zero when
22370         the last module has been unloaded.
22371
22372 2000-12-14  Michael Schmitz  <mschmitz@iname.com>
22373
22374         * libtool.m4: Port to *-sni-sysv4 (Reliant Unix)
22375         * README: added Reliant Unix to hte list of supported platforms
22376         * doc/PLATFORMS: added note on tests on Reliant Unix
22377
22378 2000-12-14  Masahiro Nobori  <nobori@ss.titech.ac.jp>
22379
22380         * README:  Updated.
22381         * NEWS: Updated.
22382         * libtool.m4:  New port to NEWS-OS Release 6.
22383
22384 2000-12-14  Nick Hudson  <skrll@netbsd.org>
22385
22386         * libtool.m4 (hardcode_libdir_flag_spec):  Remove linker
22387         specification for netbsd.
22388
22389 2000-12-14  Akim Demaille  <akim@epita.fr>
22390
22391         * libtool.m4:  Don't depend on Autoconf internals:
22392         s/ac_cv_prog_gcc/GCC/.
22393
22394 2000-12-14  Gary V. Vaughan  <gary@gnu.org>
22395
22396         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't empty
22397         out ac_cv_global_symbol_to_cdecl inside the loop, incase we
22398         need to go around again and try with underscore prefix.
22399         (_LT_AC_TRY_DLOPEN_SELF): On some hosts (cygwin for instance)
22400         self dlclosing unloads the main program and causes a SIGSEGV.  So
22401         don't do it for now.
22402
22403 2000-12-05  Gary V. Vaughan  <gary@gnu.org>
22404
22405         Oh My! Cygwin support has bitrotted while I was looking the other
22406         way.  This should fix it some:
22407         * libtool.m4 (extract_expsyms_cmds): There is a quoting problem
22408         with autoconf-2.13 that prevents [$]0 from expanding.  Use shell
22409         quotes instead to delay eval of $0.
22410         (impgen.c) The '# ' sequence stripped by sed works again.
22411
22412 2000-12-01  Gary V. Vaughan  <gary@gnu.org>
22413
22414         * doc/libtool.texi (Libltdl interface):  Add documentation.
22415         * libltdl/ltdl.h (lt_dlmakeresident, lt_dlisresident):  Add
22416         prototypes.
22417         (LT_DLERROR_CLOSE_RESIDENT_MODULE): New error status.
22418         * libltdl/ltdl.c (lt_dlmakeresident, lt_dlisresident):  Allow
22419         making and testing of resident module status, which prevents a
22420         module from being lt_dlclosed.
22421         (lt_dlopen):  If lt_dlopen()ing self, make the module resident.
22422         (lt_dlclose):  Return an error if the module is resident.
22423
22424         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Move the tests for dlopen
22425         from here...
22426         (AC_LIBTOOL_DLOPEN_SELF): ...to here.
22427         (_LT_AC_CHECK_DLFCN):  Factor out repeated code for dlfcn.h
22428         (_LT_AC_TRY_DLOPEN_SELF): Factor out repeated code for
22429         checking dlopen status.
22430         * ltdl.m4 (AC_LIB_LTDL):  Use _LT_AC_CHECK_DLFCN.
22431         dlopen compile time checking.  Use _LT_AC_CHECK_DLFCN.
22432         (AC_LTDL_DLSYM_USCORE):  Use _LT_AC_TRY_DLOPEN_SELF.
22433
22434 2000-11-29  Gary V. Vaughan  <gary@gnu.org>
22435
22436         * libltdl/ltdl.h (lt_dlhandle): Rename the wrapped structure
22437         to prevent nameclash when used from C++.
22438         * libltdl/ltdl.c: Fixed all references.
22439
22440 2000-11-25  Gary V. Vaughan  <gary@gnu.org>
22441
22442         * libltdl/ltdl.c (lt_dlopen):  Change the default search order
22443         for modules.  If the named module has no directory component,
22444         always start the search with the user_search_path directories,
22445         and then fall back on the current directory only if that fails.
22446
22447 2000-11-20  Gary V. Vaughan  <gary@gnu.org>
22448
22449         * libltdl/Makefile.am (libltdl_la_LDFLAGS): increment the version
22450         number to reflect the breakage of binary compatibility.
22451         * doc/libtool.texi (Libltdl interface):  Document
22452         LT_NON_POSIX_NAMESPACE.
22453         * libltdl/ltdl.h (LT_POSIX_NAMESPACE):  Deleted.  The default is
22454         now to use this namespace, so the cpp macro is no longer
22455         necessary.
22456
22457 2000-11-20  Morten Eriksen  <mortene@sim.no>
22458
22459         * ltdl.m4 (AC_LIB_LTDL, AC_LTDL_SYMBOL_USCORE): Break a circular
22460         dependency between AC_LTDL_SYMBOL_USCORE and AC_LTDL_DLSYM_USCORE.
22461
22462 2000-11-20  Paul Berrevoets  <paul@swi.com>
22463
22464         * ltmain.in: Some versions of expr respond with "0" if a
22465         regexp fails to match.
22466
22467 2000-11-19  Paul Berrevoets  <paul@swi.com>
22468
22469         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote the $ in $#, $2 and
22470         $3 in variable 'archive_expsym_cmds' for cygwin.
22471
22472 2000-11-19  Gary V. Vaughan  <gary@gnu.org>
22473
22474         * ltdl.c: Relegate non-POSIX-compliant symbols (e.g. those
22475         ending in ``_t'') to deprecated #define compatibility macros.
22476         Also ease up on the namespace pollution, so that only ``lt_''
22477         and ``LT_'' prefixes are taken from the global namespace.
22478         * ltdl.h: ditto.
22479
22480 2000-11-17  Gary V. Vaughan  <gary@gnu.org>
22481
22482         * ltdl.c: Reformatted.
22483         * ltdl.h: ditto.
22484
22485 2000-11-11  Gary V. Vaughan  <gary@gnu.org>
22486
22487         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Use $ac_ext for conftest
22488         sourcefile.
22489         * libtool.m4: Use $ac_ext and $ac_objext respectively for conftest
22490         sources and objects.
22491         Reported by Carlo Wood <carlo@alinoe.com>
22492
22493         * doc/fdl.texi: New file.  The license for distributing the
22494         libtool manual.
22495         * doc/libtool.texi: Reference the new license.
22496
22497 2000-10-31  Morten Eriksen  <mortene@sim.no>
22498
22499         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote argument to avoid
22500         error output from cygpath when $srcdir is empty.
22501
22502 2000-10-31  Gary V. Vaughan  <gary@gnu.org>
22503
22504         * bootstrap:  rm Makefiles to prevent infinite loop during
22505         configure when libtool.m4 is newer than Makefile.
22506
22507 2000-10-31  Akim Demaille  <akim@epita.fr>
22508
22509         * libtool.m4: Adjust the copyright notice.
22510         Quote all the macro names when defined.
22511         Some minor formatting changes.
22512         (AM_PROG_LIBTOOL, AM_ENABLE_SHARED, AM_ENABLE_STATIC)
22513         (AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_PROG_LD, AM_PROG_NM):
22514         Don't use indir when useless.  Don't add trailing `dnl' either.
22515
22516 2000-10-30  Gary V. Vaughan  <gary@gnu.org>
22517
22518         * doc/libtool.texi:  Corrected another attack of CRLF line
22519         endings.
22520
22521 2000-10-30  Ossama Othman  <ossama@debian.org>
22522
22523         * libtool.m4 (archive_expsym_cmds): Fix typo where line was broken
22524         in the middle of an expression.
22525
22526 2000-10-30  Aneesh Kumar K.V <kvaneesh@hotmail.com>
22527
22528         * libtool.m4 (archive_expsym_cmds):  Support for -export-symbol
22529         option on Tru64.
22530         (hardcode_libdir_flag_spec): Fixed cxx throwing error while using
22531         libtool.  Done by passing -rpath directlty to the compiler.
22532
22533 2000-10-27  Robert Boehne  <rboehne@ricardo-us.com>
22534
22535         * docs/libtool.texi: Added pointers to documentation
22536         of Hewlett-Packard, Compaq Tru64 and IBM AIX systems.
22537
22538 2000-10-02  Gary V. Vaughan  <gary@gnu.org>
22539
22540         From Bruce Korb <bkorb@cruzio.com>
22541         * ltmain.in (execute_dlfiles): Reduce obfuscation.
22542
22543 2000-09-30  Alexandre Oliva  <aoliva@redhat.com>
22544
22545         * libtool.m4 [netbsd*] (deplibs_check_method, file_magic_cmd,
22546         file_magic_test_file): Removed inappropriate duplicate
22547         definitions; these variables are set in AC_DEPLIBS_CHECK_METHOD.
22548
22549         * libtool.m4 (lt_cv_file_magic_cmd): Don't use '${MAGIC_CMD}' or
22550         '${OBJDUMP}'; Solaris' /bin/sh loses with `}' in cache files.
22551         (ac_cv_path_MAGIC_CMD): Renamed to lt_cv_path_MAGIC_CMD.
22552
22553 2000-09-28  Gary V. Vaughan  <gary@gnu.org>
22554
22555         * libtool.m4 (MAGIC_CMD): Don't use MAGIC, since BSD versions of
22556         the file command use this environment variable to hold the
22557         location of the magic database.
22558         Reported by Marc Espie <Marc.Espie@liafa.jussieu.fr>
22559
22560 2000-09-19  Gary V. Vaughan  <gary@gnu.org>
22561
22562         * doc/PLATFORMS: Updated.
22563         * demo/configure.in:  Revert to the `libtool --features' test.
22564         * Makefile.am (libtool):  This needs to rerun configure now that
22565         libtool is generated entirely by AC_PROG_LIBTOOL again.
22566         (ltconfig): Removed.
22567         (ltmain.sh):  Is now regenerated when ltmain.in changes.
22568         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Now does all of the work for
22569         generating libtool immediately in configure.in, rather than
22570         deferring part of the creation until config.status runs.
22571
22572 2000-09-17  Gary V. Vaughan  <gary@gnu.org>
22573
22574         * bootstrap:  Backed out yesterdays patch which is no longer
22575         necessary.
22576         * Makefile.am (libtool): Reworked rule for regeneration of libtool,
22577         now that it is built entirely withing config.status.
22578         (libtoolize): Tidied for orthogonality with the other generation
22579         rules.
22580         (ltconfig):  This is now generated by AC_PROG_LIBTOOL, called from
22581         make by running config.status --recheck.
22582         (ltmain.sh): Moved primary generation of this file into here...
22583         * configure.in (AC_OUTPUT): ...instead of here.
22584         * libtool.m4 (AC_OUTPUT_COMMANDS):  Write the config to ltconfig
22585         where it can be reused, rather than directly to libtool.
22586         * demo/configure.in:  libtool is no longer present immediately
22587         after AC_LIBTOOL_M4 has completed, so the tests now grep through
22588         ltconfig instead -- which *will* be present.
22589
22590 2000-09-16  Gary V. Vaughan  <gary@gnu.org>
22591
22592         * TODO: Removed the item describing the change below, and added a
22593         similar item to remind us to change the ltdl.m4 macros again when
22594         _LT_AC_LTCONFIG_HACK is divided into proper macros.
22595         * ltdl.m4 (AC_LTDL_SNARF_CONFIG):  Removed.  No longet required
22596         now that ltconfig has migrated to libtool.m4.
22597         (AC_LTDL_SHLIBEXT): Require _LT_AC_LTCONFIG_HACK.
22598         (AC_LTDL_SHLIBPATH): ditto.
22599         (AC_LTDL_SYSSEARCHPATH): ditto.
22600
22601         * ltdl.m4 (AC_LTDL_DLPREOPEN): Require the libtool.m4 symbol_pipe
22602         macro.
22603         (AC_LTDL_SYMBOL_USCORE): ditto.
22604         (AC_LTDL_GLOBAL_SYMBOL_PIPE): Removed, since it is a duplicate
22605         of...
22606         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): ...this new
22607         macro, extracted from _LT_AC_LTCONFIG_HACK.
22608
22609         * ltdl.m4 (changequote): An audit of changequote and m4
22610         quote usage -- all changequotes have been removed, and some
22611         latent unquoted `[' and `]' bugs have been fixed.
22612
22613         * configure.in (AC_OUTPUT): ltmain.sh must be generated in the
22614         source tree since this is where it would be found in a freshly
22615         unrolled tarball.
22616
22617         * configure.in: Replace `dnl' comments with `#' comments for
22618         more conformity with cvs autoconf.
22619         Removed emacs hack-local-variables, since there is now a
22620         proper Autoconf major mode.
22621         Removed a couple of changequote()s.
22622
22623         * bootstrap (ltconfig): When bootstrapping libtool with a
22624         stock automake (i.e. without the README patch applied),
22625         references to ltconfig are manually removed from the generated
22626         Makefile.in files.
22627
22628 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
22629
22630         * doc/libtool.texi: Removes references to ltconfig, and a small
22631         amount of tidying up to compensate.
22632
22633 2000-09-15  Nick Hudson  <skrll@netbsd.org>
22634
22635         * libtool.m4 (netbsd): Improved support.
22636
22637 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
22638
22639         * ltmain.in (version_type): Use "-iface" as the windows
22640         versioning scheme, where iface is the number of the oldest
22641         interface supported.
22642
22643 2000-09-14  Gary V. Vaughan  <gary@gnu.org>
22644
22645         From Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
22646         * libtool.m4 (pw32): Initial support for pw32, assuming that
22647         libtool's behaviour in this environment is identical to under
22648         cygwin.
22649         * ltmain.in (pw32): ditto.
22650         * NEWS: Updated.
22651
22652         * libtool.m4 (changequote): An audit of changequote and m4
22653         quote usage -- all changequotes (except a few with non-nesting
22654         square brackets) have been removed.
22655
22656         * Makefile.am (EXTRA_DIST):  The bootstrap script should be
22657         distributed with libtool.
22658
22659 2000-09-13  Gary V. Vaughan  <gary@gnu.org>
22660
22661         libtool.m4 (_LT_AC_LTCONFIG_HACK): Oh man!  Third time lucky.
22662         I just discovered that '&' needs to be escaped inside
22663         AC_TRY_EVAL.
22664
22665 2000-09-12  Michael Matz  <matz@ifh.de>
22666
22667         * ltmain.in:  Be careful about filenames with multiple `.'s in
22668         them when calculating file extensions.
22669         Reported by Joel Reed <jreed@support.ddiworld.com>
22670
22671 2000-09-12  Gary V. Vaughan  <gary@gnu.org>
22672
22673         libtool.m4 (AC_PROG_LIBTOOL):  Removed, as it was triggering a
22674         bug in Autoconf-2.13 AC_REQUIRE implementation which inserted
22675         some of the expanded tests too early in the generaated configure.
22676         (_AC_PROG_LIBTOOL): renamed to AC_PROG_LIBTOOL, and defines
22677         itself to an empty expansion to prevent multiple expansions.
22678         configure.in (AC_LIBTOOL_SETUP): Replaced by a call to
22679         AC_PROG_LIBTOOL now that the AC_REQUIRE bug has been worked
22680         around.
22681
22682 2000-09-09  Gary V. Vaughan  <gary@gnu.org>
22683
22684         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to escape the
22685         redirections inside AC_TRY_EVAL in the need_lc tests. Doh!
22686
22687         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to redirect the
22688         output of grep to /dev/null in the need_lc tests.
22689
22690         configure.in (AC_PROG_LIBTOOL):  Using this in libtools own
22691         configure.in interacts badly with the AC_PROVIDE calls and
22692         results in several tests being inserted into configure too
22693         early.  Use AC_LIBTOOL_SETUP instead.
22694
22695 2000-09-08  Gary V. Vaughan  <gary@gnu.org>
22696
22697         libtool.m4 (_LT_AC_LTCONFIG_HACK): The ltconfig.in code I
22698         ported from ltconfig.in was incomplete -- this is a backport
22699         of the missing code taken from the multi-language branch.
22700
22701 2000-09-07  Pavel Roskin  <proskin@gnu.org>
22702
22703         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Fixed incorrect use of
22704         changequote
22705
22706 2000-09-07  Gary V. Vaughan  <gary@gnu.org>
22707
22708         * NEWS:  Updated.
22709         * TODO:  Add a reminder to get rid of ltconfig in mlb.
22710         * README: Until things even out, I have added a note and a
22711         patch to make the installed automake cooperate with the new
22712         ltconfig free libtool.
22713
22714         * libtool.m4 (_LT_AC_LTCONFIG_HACK): with_gcc is only useful in
22715         ltmain.sh as it has not yet been set in libtool.m4.  Use
22716         $ac_cv_prog_gcc instead.
22717
22718         * doc/PLATFORMS: Updated.
22719
22720         * configure.in (AC_PROG_AWK): Removed -- no longer required by
22721         the build process.
22722         * lineno: ditto.
22723
22724         * libtoolize.in (files): Don't try to install ltconfig -- it
22725         doesn't exist!!
22726         * bootstrap: Fake an ltconfig incase the installed automake
22727         calls an installed libtoolize (as part of its --add-missing
22728         process) which thinks ltconfig should be there.
22729
22730         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Deleted a vital `;;'
22731         terminator from a case statement by mistake.
22732
22733         * Makefile.am (ltmain.sh):  Make this depend on TSDEPS again
22734         so that the Changelog timestamp is used for ltmain.sh at `make
22735         dist' time.
22736
22737 2000-09-06  Gary V. Vaughan  <gary@gnu.org>
22738
22739         libtool.m4 now contains a version of the code that used to run
22740         from ltconfig, so that ltmain.sh and then libtool are
22741         generated at configure time.
22742
22743         * Makefile.am:  Don't generate ltmain.sh or ltconfig anymore.
22744         * bootstrap: ltconfig is no more!
22745         * configure.in: Call AC_PROG_LIBTOOL directly.
22746         (AC_OUTPUT): Generate tmain.sh.
22747         * libtool.m4: Don't build an argument list for ltconfig.
22748         (_LT_AC_LTCONFIG_HACK):  Refactoring of the former contents of
22749         ltconfig.in to take advantage of the m4 macros from autoconf.
22750         * ltmain.in: Don't do a version check against ltconfig.
22751         * tests/assign.test: Remove reference to ltconfig.
22752         * tests/hardcode.test: ditto.
22753         * tests/sh.test: ditto.
22754
22755 2000-09-05  Alexandre Oliva  <aoliva@redhat.com>
22756
22757         * depdemo/main.c: Support -alt.
22758         * tests/build-relink2.test: Try it.
22759
22760         * ltconfig.in: Removed all references to what used to be
22761         hardcode_into_libs=all.  2000-09-03's patch was wrong.
22762         * ltmain.in: Likewise.
22763         * tests/build-relink.test, tests/build-relink2.test: Adjust.
22764         * mdemo/Makefile.am (lib_LTLIBRARIES): Move libsub.la before
22765         libfoo2.la, so that they're installed in the right order.
22766
22767 2000-09-04  Alexandre Oliva  <aoliva@redhat.com>
22768
22769         * tests/dryrun.test: Build libsub.la along with the object files,
22770         since it is needed by libfoo2.la.
22771
22772         * mdemo/Makefile.am: Mark only libfoo2 as -no-undefined.
22773         Explicitly link it with libsub.la.
22774
22775         * ltconfig.in (need_lc): Preserve allow_undefined_flag.
22776
22777         * tests/*.test (CONFIG_SITE): Ultrix's /bin/sh fails on
22778         `. /dev/null'.  Set CONFIG_SITE to /dev/null/config/site, to make
22779         sure we pick a non-existent file.
22780
22781         * Makefile.am (libtool, clibtool): Pass CONFIG_SHELL along with
22782         ECHO down to ltconfig.
22783
22784         * ltconfig.in (hardcode_libdir_flag_spec, export_dynamic_flag_spec):
22785         Use ${wl}, not ${wlarc}.
22786
22787         * ltmain.in (compile, need_lock): Don't create nor remove lock
22788         files in dry runs.
22789
22790         * libltdl/ltdl.c (load_deplibs): Don't append shlib_ext; use
22791         lt_dlopenext() instead.
22792
22793         * ltmain.in (link -static): Don't add $link_static_flag; only
22794         -all-static should do that.
22795         * mdemo/configure.in: Revert part of the previous delta.
22796
22797         * mdemo/configure.in: Don't use -static on AIX4.1.
22798         * mdemo/Makefile.am: Likewise.
22799
22800 2000-09-03  Alexandre Oliva  <aoliva@redhat.com>
22801
22802         * ltconfig.in: Get rid of hardcode_into_libs=all; use
22803         hardcode_into_libs=yes && shlibpath_overrides_runpath!=yes
22804         instead.
22805         [FreeBSD 3.[01]] (shlibpath_overrides_runpath): Set to no.
22806         * ltmain.in: Likewise.
22807         * tests/build-relink.test, tests/build-relink2.test: Adjust.
22808
22809         * libtool.m4: Fix typo I introduced in yesterday's patch.
22810
22811         * libltdl/ltdl.c (lt_dlopen): Set dlname from library_names if
22812         dlname is empty.
22813
22814         * ltdl.m4 (HAVE_LIBDL): Look for dlopen in -lsvld.
22815         * ltconfig.in: Likewise.
22816
22817         * tests/mdemo-exec.test: Modify failure message.
22818
22819         * ltmain.in (newdlprefiles): Use dlname if it's available and
22820         old_library isn't; use linklib only if dlname is not available.
22821
22822         * ltconfig.in (enable_dlopen): Set to no when lt_cv_dlopen is no.
22823
22824         * libtool.m4: Don't quote CONFIG_SHELL nor ORIGINAL_CONFIG_SHELL.
22825         Quote $@ properly so that the shell expands it, not m4.
22826
22827         * libtool.m4: Don't quote SHELL when `re-exec'ing, so that SHELL
22828         can be `/path/to/shell -x'.
22829
22830         * tests/quote.test: Move the match test out of case statements, to
22831         work around bug in /bin/sh of several OSs.
22832
22833         * ltmain.in (variables_saved_for_relink): Attempt to unset them
22834         instead of setting them to an empty string.
22835
22836 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
22837
22838         * ltconfig.in [with_gnu_ld] (archive_cmds, archive_expsym_cmds)
22839         <solaris*, sysv5*, beos*>: Use compiler_flags instead of linker
22840         flags.
22841         Reported by Alex Hornby <alex@anvil.co.uk>
22842
22843 2000-09-02  Makoto Ishisone  <ishisone@sra.co.jp>
22844
22845         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Fix typo,
22846         add support for compact format library.
22847
22848 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
22849
22850         * ltdl.m4: Oops, I had forgotten to commit this part of Syd Polk's
22851         patch from 2000-06-17.
22852
22853 2000-09-02  Tom Kacvinsky  <tjk@ams.org>, Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
22854
22855         * libtool.m4: Ignore Tru64's nm's complaint.
22856
22857 2000-09-02  Pavel Roskin <proski@gnu.org>
22858
22859         * ltconfig.in: only load $cache_file if it's a regular file
22860
22861 2000-09-02  Assar Westerlund  <assar@sics.se>
22862
22863         * ltconfig.in: Add back ranlib calls for static libraries if there
22864         is a ranlib.
22865
22866 2000-08-31  Gary V. Vaughan  <gary@gnu.org>
22867
22868         Move the echo detection code to a macro in libtool.m4.  The code
22869         at the top ofltconfig.in is ugly, but will go away when the rest
22870         of ltconfig is migrated.
22871
22872         * Makefile.am (libtool):  Pass the value of $ECHO to ltconfig as
22873         an environment variable.
22874         * libtool.m4 (_LT_AC_PROG_ECHO_BACKSLASH): Quote the ECHO value
22875         correctly so that it inserts the correct code into configure.in
22876         suitably quoted for M4 expansion.  This code needs to be near
22877         the top of configure.in as it calls itself recursively, so I
22878         am using AC_DIVERSION_NOTICE (or simply NOTICE on CVS
22879         Autoconf).  The value of ECHO is also substitued into the
22880         Makefile to be used when Make calls ltconfig to generate
22881         libtool, so another layer of quotation is required for the
22882         Makefile.
22883         (AC_LIBTOOL_SETUP):  Use it.
22884         * ltconfig.in: Accept a value for ECHO from the environment, and
22885         carefully substitue for $0 if it is present in the ECHO value.
22886         Because ECHO was quoted for Make, when ltconfig is called by
22887         configure, it is overquoted, and one layer of quotes must be
22888         stripped.
22889
22890 2000-08-27  Gary V. Vaughan  <gary@gnu.org>
22891
22892         * ltconfig.in (with_gcc):  Make the value of this option
22893         available to the generated libtool script.
22894         * ltmain.in (compile_command, finalize_command):  The native C
22895         and C++ compilers on IRIX require the -LANG:std in order to to
22896         compile correctly.   The same options should _not_ be passed
22897         through to gcc on IRIX, or at all on other architectures for
22898         backwards compatibility (among others).
22899         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
22900         Reported by Albert Chin-A-Young <china@thewrittenword.com>
22901
22902 2000-08-26  Gary V. Vaughan  <gary@gnu.org>
22903
22904         * ltconfig.in (old_reload_flag): typo.
22905
22906 2000-08-01  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22907
22908         * ltmain.in (shtool): Use echo|grep instead of expr, as in the
22909         original patch.
22910
22911 2000-08-01  Alexandre Oliva  <aoliva@redhat.com>
22912
22913         * ltconfig.in (need_lc): Fix test message.
22914
22915 2000-07-24  Mocha  <netbsd_alpha@yahoo.com>
22916
22917         * ltconfig.in (NetBSD, deplibs_check_method): Use file_magic.
22918         (NetBSD, file_magic_cmd, file_magic_test_file): Set.
22919
22920 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, David Kaelbling  <drk@orchietta.hudson.sgi.com>
22921
22922         * ltmain.in (irix, major): Prepend a `.'.
22923         * ltconfig.in (irix, soname_spec, library_names_spec): Adjust.
22924
22925 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, Ralf S. Engelschall  <rse@engelschall.com>
22926
22927         * ltmain.in: Support GNU shtool's install.
22928
22929 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22930
22931         * ltconfig.in (linkopts): Don't set for test.
22932
22933 2000-07-24  Nick Hudson <skrll@netbsd.org>
22934
22935         * ltconfig.in (linkopts): Replace with linker_flags.
22936
22937         * ltmain.in (ILD): Fix addition of deplibs in relink case.
22938
22939 2000-07-18  H.J. Lu  <hjl@gnu.org>
22940
22941         * ltconfig.in: Check if -lc is necessary for building shared
22942         library. Set build_libtool_need_lc to indicate it.
22943         * ltmain.in: Add -lc when building shared library only if
22944         necessary.
22945
22946 2000-07-10  Mo DeJong  <mdejong@redhat.com>
22947
22948         * libtool.m4 (AC_PROG_NM): Fix macro so that it
22949         finds a cross NM on the PATH.
22950
22951 2000-07-10  Ken Block <block@zk3.dec.com>
22952
22953         * libltdl/ltdl.h: Also check for __cplusplus, __STDC__ is not
22954         by Compaq C++ compiler
22955
22956 2000-07-10  Alexandre Oliva  <aoliva@lsd.ic.unicamp.br>
22957
22958         * ltconfig.in (wlarc, netbsd, aout): Set to empty.
22959         (hardcode_dynamic_flag_spec, export_dynamic_flag_spec): Use it.
22960
22961         * ltconfig.in (dynamic_linker, linux, powerpc): Do not disable
22962         shared libraries just because of MkLinux.
22963
22964         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Do not depend
22965         on $version_type; check for ELF support as in other BSDs.
22966
22967 2000-06-17  Syd Polk  <spolk@redhat.com>
22968
22969         * libtool.m4 (AC_LIBTOOL_SETUP): Do not generate a libtool based
22970         on target; use host instead.
22971
22972 2000-05-30  Gary V. Vaughan  <gary@gnu.org>
22973
22974         * ltconfig.in (ORIGINAL_CONFIG_SHELL): Prevent lossage when
22975         the echo probing code falls into this branch without setting
22976         this variable.
22977
22978         * ltconfig.in (netbsd*): archive_cmds and archive_expsym_cmds
22979         were reversed with respect to definition of __ELF__.
22980         From Keisuke Inoue <keisuke@csl.sony.co.jp>
22981
22982 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
22983
22984         * libtool.m4 (netbsd*): Use -L option to file_magic_cmd as for
22985         freebsd (below).
22986         * libtool.m4 (netbsd ELF): support file_magic.
22987         From Dan Winship <danw@helixcode.com>.
22988
22989 2000-05-29  Steven M. Schultz <sms@moe.2bsd.com>
22990
22991         * libtool.m4 (bsdi4*): Add -L option to bsdi4's file_magic_cmd
22992         command.  Under BSD/OS 4.1 several libraries are now symlinks
22993         rather than regular files.  Adding -L tells the file program
22994         to follow the symlink.
22995
22996 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
22997
22998         * libtool.m4 (i*86-*-freebsd*): Forgot to changequote(,).
22999
23000         * NEWS: Updated.
23001         * libtool.m4 (i*86-*-freebsd*): Support a.out shared libs.
23002         From <suzukis@file.phys.tohoku.ac.jp>
23003
23004 2000-05-29  Fred Fish  <fnf@be.com>
23005
23006         Support AR=mwld AR_FLAGS='-xml -o' for PPC Beos.
23007         * ltconfig (old_AR_FLAGS): Add.
23008         (old_archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
23009         (archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
23010         (AR_FLAGS): Default to "cru" if not set.
23011
23012 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
23013
23014         * ltconfig.in (echo): The following code actually prints the
23015         double quotes -- so I removed them:
23016             echo='printf "%s\n"' /bin/ksh -c '$echo \\t'
23017         From Tuukka Toivonen <tutoivon@mail.student.oulu.fi>
23018
23019         * NEWS: Updated.
23020
23021 2000-05-29  Bernhard Rosenkraenzer <bero@redhat.de>
23022
23023         * libtool.m4: adding ia64 as supported linux platform
23024
23025 2000-05-29  Michael Matz  <matz@ifh.de>
23026
23027         * ltmain.in: fix quoting for $var_value.
23028
23029         * ltconfig.in: check for dlfcn.h: include return value
23030         to make -Wall in CFLAGS work.
23031
23032 2000-05-27  Gary V. Vaughan  <gary@gnu.org>
23033
23034         * README-alpha: note new location of config.(guess|sub).
23035
23036 2000-05-27  Chad Cunningham  <ccunning@math.ohio-state.edu>
23037
23038         * ltconfig.in (rhapsody*): New Port.
23039         * ltmain.in (rhapsody*): ditto.
23040
23041 2000-05-27  Chris Lattner  <sabre@skylab.org>
23042
23043         * ltconfig.in (*-sequent-sysv4): New Port.
23044
23045 2000-05-17  Gary V. Vaughan  <gary@gnu.org>
23046
23047         * ltmain.in: cygwin-1.1.0 and higher no longer grok backslash path
23048         separators.
23049
23050 2000-05-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23051
23052         * libtool.m4 (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE):
23053         Pick LIBLTLD from top_builddir and INCLTDL from top_srcdir.
23054         * mdemo/configure.in: Remove comments on
23055         AC_LIBLTLD_CONVENIENCE.
23056
23057         * libtool.m4 (_AC_PROG_LIBTOOL): Renamed from...
23058         (AC_PROG_LIBTOOL): Just AC_REQUIRE(_AC_PROG_LIBTOOL), to avoid
23059         effects of multiple runs.
23060
23061 2000-05-11  Thomas Tanner  <tanner@ffii.org>
23062
23063         * NEWS: update
23064         * doc/libtool.texi (libltdl): rename lt_(find|next|add|remove)_dlloader
23065           to lt_dlloader_*
23066         * libltdl/ltdl.c: ditto
23067         * libltdl/ltdl.h: ditto, add declaration of lt_dlloader_(find|remove)
23068
23069 2000-05-06  Pavel Roskin  <pavel_roskin@geocities.com>
23070
23071         * libltdl/ltdl.c: Typo.
23072
23073         * libtool.m4 (AC_LIBTOOL_SETUP): CVS autoconf no longer sets
23074         target to "NONE", but to an empty string.
23075
23076 2000-05-05  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
23077
23078         * ltdl.c: support lt_dlopen(0) for win32
23079
23080 2000-05-03  Thomas Tanner  <tanner@ffii.org>
23081
23082         * doc/libtool.texi (libltdl): fix typos,
23083           INCLTDL starts with top_srcdir, replace NULL with @code{NULL}
23084
23085         * ltmain.in (ILD): search in newlib_search_path, too
23086
23087         * ltmain.in (ILD): fix bugs in conv pass, expand convenience
23088           libs to deplibs and link them later on
23089
23090         * ltmain.in (ILD): don't allow convenience libs to be
23091            -dlopen/preopen'ed
23092
23093         * ltmain.in (ILD): it's not required to link all deplibs
23094           in fast-install mode
23095
23096         * ltmain.in (ILD): if hardcode_into_libs=all, only relink
23097           a library if it is linked against uninstalled libtool libraries,
23098           rename link_against_libtool_libs to uninst_deplibs
23099
23100         * ltmain.in (ILD): tidy up, add some comments
23101
23102 2000-05-03  John Wehle  (john@feith.com)
23103
23104         * libtool.m4 (hpux10.20*): use file_magic for
23105         inter-library dependency tracking.
23106
23107 2000-05-02  Gary V. Vaughan  <gary@gnu.org>
23108
23109         * AUTHORS:  Update my email address.
23110         * commit: ditto.
23111
23112 2000-04-11  Thomas Tanner  <tanner@ffii.org>
23113
23114         * NEWS: update
23115         * libtool.m4: add AC_LIBTOOL_PICMODE
23116         * ltconfig.in: move pic_mode checks to ltmain.in
23117         * ltmain.in: add -prefer-pic and -prefer-non-pic
23118
23119 2000-03-29  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23120
23121         * ltmain.in (tmpdir): Do not accept an existing directory, and
23122         force its mode to 700, for security reasons.
23123         Reported by Joseph S. Myers <jsm28@cam.ac.uk>
23124
23125 2000-03-27  Thomas Tanner  <tanner@ffii.org>
23126
23127         * NEWS: reformatting
23128
23129         * ltmain.in (ILD): add extra convenience library scanning pass
23130
23131         * ltmain.in (ILD): accept -R flags for libraries, too
23132
23133         * ltmain.in (ILD): correclty merge the dlpreopened libraries
23134           with deplibs
23135
23136         * ltmain.in (install mode): remove directories from filenames
23137           before relinking (reported by Elrond <Elrond@Wunder-Nett.org>)
23138
23139         * doc/libtool.texi (libltdl): rename Library -> Lesser,
23140           clarify exception clause
23141         * libltdl/ltdl.c, libltdl.h (License): ditto
23142
23143 2000-03-21  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23144
23145         * ltconfig.in (variables_saved_for_relink): Set to `PATH
23146         $shlibpath_var $runpath_var'.  If with_gcc, add gcc-related
23147         environment variables.  Add it to the configuration section.
23148         * ltmain.in (relink_command): Expand those variables.
23149
23150 2000-03-14  Christopher A. Knight  <chriskn@crt.com>
23151
23152         * ltconfig.in: added main() definition in compile
23153         check for header `dlfcn.h' to fix link errors
23154         when built with Sun Workshop Pro CC 4.2 (and perhaps
23155         others).
23156
23157 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
23158
23159         * libltdl/ltdl.c (lt_find_dlhandle): Deleted.  This was B.S.
23160         far cleaner to use lt_dlforeach and lt_dlgetinfo.
23161         * libltdl/ltdl.h:  Prototype deleted.
23162         * doc/libtool.texi: Documentation deleted.
23163         * NEWS: annoncement deleted.
23164
23165 2000-02-23  Thomas Tanner  <tanner@ffii.org>
23166
23167         * ltmain.in: remove duplicates from deplibs, handle
23168           interdependent libraries (e.g. -la -lb -la),
23169           this requires adding deplibs in reverse order
23170
23171         * ltmain.in: link dlpreopened libraries before other libraries
23172           (reported by Pavel Roskin)
23173         * mdemo/Makefile.am: build and link libsub.la
23174         * mdemo/sub.c: new file used by both dlopened modules
23175         * mdemo/foo*: use sub() defined in libsub
23176         * tests/dryrun.test: build libsub.la
23177
23178         * mdemo/Makefile.am: always link mdemo.static with -static
23179         * mdemo/configure.in: ditto
23180
23181         * ltmain.in: fix dlopen/dlpreopening of objects
23182
23183         * ltmain.in (ILD): fix misplaced `continue' in -R* argument handler
23184
23185         * ltmain.in: merge duplicated code of clean and uninstall mode
23186
23187         * libtool.m4: recognize powerpc*linux* (reported by
23188           Dirk A. Mueller <dmuell@gmx.net>)
23189
23190 2000-02-23  Gary V. Vaughan  <gary@gnu.org>
23191
23192         * ltconfig.in (old_MAGIC, old_STRIP, old_reload_flag,
23193         old_deplibs_check_method, old_file_magic_cmd):  New variabes.
23194         Treat these as old_CC etc.
23195         (STRIP, MAGIC): Create and set these variables in the generated
23196         libtool script.
23197         Reported by Pavel Roskin <pavel_rosin@geocities.com>
23198
23199         * configure.in: Due to a bug in autoconf-2.13 implementation of
23200         AC_SUBST, `AC_SUBST(FILE)' can never work.  Use MAGIC as the
23201         holder of the command to run in file_magic_cmd instead.
23202         * ltconfig.in: s/FILE/MAGIC/g.
23203         * libtool.m4 (AC_PROG_LIBTOOL): set MAGIC in the environment when
23204         calling ltconfig.
23205         (AC_PATH_MAGIC):  renamed from AC_PATH_FILE.
23206         (AC_PATH_TOOL_PREFIX):  s/FILE/MAGIC/g.  Also set file_magic_cmd
23207         to '${MAGIC}' so that make can grok it.
23208         * Makefile.am (libtool):
23209         (clibtool): ditto.
23210
23211 2000-02-21  Gary V. Vaughan  <gary@gnu.org>
23212
23213         * libltdl/ltdl.c (lt_find_dlhandle): New function.
23214         (tryall_dlopen): Use it.
23215         * libltdl/ltdl.h:  Prototype it.
23216         * doc/libtool.texi: Document it.
23217         * NEWS: updated.
23218
23219         * libltdl/ltdl.c (lt_dlinit): removed unused variable, `loader'.
23220
23221         * libltdl/ltdl.c (lt_remove_dlloader): typo, s/=/==/g.
23222
23223 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
23224
23225         * libltdl/ltdl.h (lt_dlloader_data_t):  New type for loader
23226         instance data.
23227         (lt_user_dlloader): New lt_dlloader_data_t field.
23228         (lt_module_open_t): Add lt_dlloader_data_t parameter.
23229         (lt_module_close_t): Add lt_dlloader_data_t parameter.
23230         (lt_find_sym_t): Add lt_dlloader_data_t parameter.
23231         (lt_dlloader_exit_t): Add lt_dlloader_data_t parameter.
23232         * libltdl/ltdl.c:  A sprinkling of /*ARGSUSED*/ markers to
23233         reassure lint that the unused arguments are intentional.
23234         (lt_dlloader_t): New lt_dlloader_data_t field.
23235         (lt_dlloader_data): New function to return the contents of the
23236         dlloader_data field.
23237         (sys_dl_open): Take an additional lt_dlloader_data_t argument.
23238         (sys_dl_close): Ditto.
23239         (sys_dl_sym): Ditto.
23240         (sys_dl): Initialise lt_dlloader_data_t field.
23241         (sys_shl_open, sys_shl_close, sys_shl_sym, sys_shl): As above.
23242         (sys_wll_open, sys_wll_close, sys_wll_sym, sys_wll): As above.
23243         (sys_bedl_open, sys_bedl_close, sys_bedl_sym, sys_bedl): As
23244         above.
23245         (sys_dld_open, sys_dld_close, sys_dld_sym, sys_dld): As above.
23246         (presym_init, presym_exit, presym_open, presym_close, presym_sym,
23247         presym): As above.
23248         (lt_dlinit): Call presym_init with additional argument.
23249         (lt_dlexit): Call dlloader_exit method with additional argument.
23250         (tryall_dlopen): Call module_open method with additional argument.
23251         (lt_dlclose): Call module_close method with additional argument.
23252         (lt_dlsym): Call find_sym method with additional argument.
23253         (lt_add_dlloader): Initialise dlloader_data field.
23254         (lt_remove_dlloader): Call dlloader_exit method with additional
23255         argument.
23256
23257         * libltdl/ltdl.c (find_file): Prevent early release of memory
23258         in filename/*pdir.
23259         From Jon Leichter <jon@symas.com>
23260
23261         (sys_wll_init): Deleted.  No longer required.  And this time,
23262         with feeling!
23263         (sys_wll_exit): Ditto.
23264
23265 2000-02-02  Gary V. Vaughan  <gary@gnu.org>
23266
23267         * NEWS: updated.
23268         * doc/libtool.texi (Libltdl interface): Moved user defined module
23269         loader documentation from here...
23270         (Module loaders for libltdl) ...to here, and updated the text and
23271         added examples.
23272         * ltdl.m4 (AC_CHECK_FUNCS): check strcmp for lt_find_dlloader.
23273         * libltdl/ltdl.h: Reformatted and commented for readability.
23274         (struct lt_user_dlloader): New data type for passing
23275         initialisation pointers to lt_add_dlloader.
23276         (LTDL_ERROR_INVALID_LOADER):  New error message when non loader
23277         handles are passed to the user loader API.
23278         (LTDL_ERROR_INIT_LOADER): New error when loader initialisation
23279         fails.
23280         (LTDL_ERROR_REMOVE_LOADER): New error when loader removal fails.
23281         (lt_module_open_t): renamed from lt_lib_open_t.
23282         (lt_module_close_t): renamed from lt_lib_close_t.
23283         (lt_dlloader_exit_t): renamed from lt_dlloader_exit_t.
23284         * libltdl/ltdl.c: Reordered builtin loaders so that the "dld"
23285         loader no longer occurs before "dlopen" on some platforms and
23286         after it on others.
23287         (lt_dlloader_t): Moved here from ltdl.h, added a field,
23288         "loader_name", for identifying the loader, and renamed from
23289         lt_dltype_t.  Renamed type variables to loader IFF of type
23290         lt_dlloader_t.
23291         (lt_module_t): Renamed from lt_syshandle. Renamed handle variables
23292         to module IFF of type lt_module_t.
23293         (LTDL_TYPE_TOP): Deleted.  No longer required.
23294         (sys_dl): Initialised as a struct lt_user_dlloader.
23295         (sys_dl_init): Deleted.  No longer required.
23296         (sys_dl_exit): Ditto.
23297         (sys_shl): Initialised as a struct lt_user_dlloader.
23298         (sys_shl_init): Deleted.  No longer required.
23299         (sys_shl_exit): Ditto.
23300         (sys_wll): Initialised as a struct lt_user_dlloader.
23301         (sys_wll_init): Deleted.  No longer required.
23302         (sys_wll_exit): Ditto.
23303         (sys_bedl): Initialised as a struct lt_user_dlloader.
23304         (sys_bedl_init): Deleted.  No longer required.
23305         (sys_bedl_exit): Ditto.
23306         (sys_dld): Initialised as a struct lt_user_dlloader.
23307         (sys_dld_init): Deleted.  No longer required.
23308         (sys_dld_exit): Ditto.
23309         (sys_presym): Initialised as a struct lt_user_dlloader.
23310         (lt_mod_init_t): Moved to here from ltdl.h.
23311         (lt_dlinit): Add builtin loaders using the user loader API.
23312         (lt_dlexit): Unregister and free all loaders.
23313         (lt_add_dlloader): New function to add a new module loader after the
23314         loader specified in the argument.
23315         (lt_remove_dlloader): New function to remove a module loader.
23316         (lt_next_dlloader): New function for iterating over module loaders.
23317         (lt_dlloader_name): Accessor function for name of dlloader.
23318         (lt_find_dlloader): New function to get a reference to a registered
23319         module loader.
23320         (strcmp): static implementation incase the host has none.
23321         (lt_dlgettypes, lt_dlsettypes): Removed.
23322
23323 2000-02-02  Thomas Tanner  <tanner@ffii.org>
23324
23325         * libltdl/ltdl.c: replace NULL with 0, remove unused system
23326           and app_private pointers from lt_dlhandle_t
23327         * libltdl/ltdl.c (presym_add_list): new preloaded symbols
23328           don't need to be added to the end
23329
23330         * libltdl/ltdl.c (lt_dlgetdata, lt_dlsetdata): removed
23331         * libltdl/ltdl.h: ditto
23332         * doc/libtool.texi (libltdl interface): ditto
23333
23334 2000-02-01  Thomas Tanner  <tanner@ffii.org>
23335
23336         * ltmain.in: support -dlopen/dlpreopen for libraries
23337         * NEWS: updated
23338         * TODO: updated
23339         * ltmain.in: rename dlopen to dlopen_support
23340         * ltconfig.in: ditto
23341         * doc/libtool.texi: ditto
23342
23343         * ltmain.in: check whether libraries are moved out of $libdir,
23344           replace .a and .lib with .$libext, .o and .obj with .$objext
23345
23346 2000-01-31  Gary V. Vaughan  <gary@gnu.org>
23347
23348         * libltdl/ltdl.h (lt_dlrealloc): removed declaration.
23349         * libltdl/ltdl.c (lt_dlrealloc): removed definition.
23350         (lt_dladderror): Instead of calling lt_dlrealloc, use lt_dlmalloc,
23351         and lt_dlfree.
23352
23353 2000-01-30  Ossama Othman  <ossama@debian.org>
23354
23355         * libtool.m4 (lt_cv_cc_needs_belf): Set the test language to C
23356         prior to executing the test that checks if the C compiler needs
23357         "-belf."
23358         Reported by Chris Butler <chrisb@sandy.force9.co.uk>
23359
23360 2000-01-28  Gary V. Vaughan  <gary@gnu.org>
23361
23362         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use changequote to
23363         protect `[' and `]' in deplibs_check_method.
23364
23365         * libltdl/ltdl.h (lt_dlrealloc): Added declaration.
23366         * libltdl/ltdl.c (lt_dlrealloc): Added default definition.
23367
23368         * libltdl/ltdl.c (lt_dlseterror): Catch errorcodes below 0 as
23369         invalid.
23370         * libltdl/ltdl.h (LTDL_ERROR): Added missing '_' in K&R
23371         definition.
23372
23373         * libltdl/ltdl.h (ltdl_error_table): Added missing error code, and
23374         fixed typo in another code.
23375         * doc/libtool.texi (Libltdl interface): Added missing @end
23376         clause.
23377
23378 2000-01-27  Thomas Tanner  <tanner@ffii.org>
23379
23380         * ltconfig.in: Oops, replace the remaining $objdir's
23381
23382         * ltmain.in: merge library linking code of programs and libraries,
23383           some cleanups
23384
23385 2000-01-27  Gary V. Vaughan  <gary@gnu.org>
23386
23387         * NEWS: Updated.
23388         * doc/libtool.texi (Libltdl interface): Document new entry
23389         points.
23390         * libltdl/ltdl.c (lt_dladderror): New function to add a user
23391         defined error message to the tables used by lt_dlerror().
23392         (lt_dlseterror):  New function to allow setting of last_error by
23393         user modules.
23394         (ltdl_error_strings): New preprocessor generated table of internal
23395         error diagnostic strings.
23396         (user_error_strings): New internal list of registered user error
23397         diagnostic strings.
23398         (throughout!): Use error messages from ltdl_error_strings.
23399         * libltdl/ltdl.h (ltdl_error_table): New macro to tabulate
23400         internal diagnostic error strings alongside enum keys.
23401
23402         * NEWS: Updated.
23403         * doc/libtool.texi (Libltdl interface): Document new entry
23404         points.
23405         * libltdl/ltdl.c (lt_dltype_t):  Use new type definitions for
23406         existing fields.
23407         (lt_dladdtype): New function to add a new ltdl dynamic loader
23408         type to the end of the list of valid types..
23409         (lt_dlgettypes): New function to return the complete list of ltdl
23410         dynamic loader types.
23411         (lt_dlsettypes): New function to replace the list of ltdl dynamic
23412         loader types entirely -- e.g. to prepend a new type to the
23413         existing list.
23414         (sys_dl_open, sys_dl_close, sys_dl_sym): Work with lt_syshandle.
23415         (sys_shl_open, sys_shl_close, sys_shl_sym): ditto.
23416         (sys_dld_open, sys_dld_close, sys_dld_sym): ditto.
23417         (sys_wll_open, sys_wll_close, sys_wll_sym): ditto.
23418         (sys_bedl_open, sys_bedl_close, sys_bedl_sym): ditto.
23419         (presym_open, presym_close, presym_sym): ditto.
23420         (tryall_dlopen): Call lt_lib_open_t functions lt_syshandle
23421         compatibly.
23422         (lt_dlclose): Call lt_lib_close_t functions lt_syshandle
23423         compatibly.
23424         (lt_dlsym): Call lt_find_sym_t functions lt_syshandle compatibly.
23425         (lt_dltype_t): moved type declaration from here...
23426         * libltdl/ltdl.h (lt_dltype_t): ...to here.
23427         (lt_syshandle): new type for low level system handles passed by
23428         loader functions
23429         (lt_mod_init_t):  New type for functions implementing the
23430         initialisation for an ltdl dynamic loader.
23431         (lt_mod_exit_t): Type of exit functions for the same.
23432         (lt_lib_open_t): Type of loader functions for the same.
23433         (lt_lib_close_t): Type of unloader functions for the same.
23434         (lt_find_sym_t): Type of symbol resolver functions for the same.
23435
23436         * libltdl/ltdl.c (sys_dl_init, sys_dl_exit, sys_dl_open,
23437         sys_dl_close, sys_dl_sym):  Preprocess these away on cygwin to
23438         avoid spurious error messages.
23439
23440 2000-01-24  Thomas Tanner  <tanner@ffii.org>
23441
23442         fix severe bugs reported by Elrond <Elrond@Wunder-Nett.org>
23443
23444         * ltconfig.in: replace $objdir with $output_objdir
23445
23446         * ltmain.in: change to the builddir before relinking programs
23447
23448         * ltmain.in, ltconfig.in, libtool.m4, ltdl.m4:
23449           remove unnessary spaces from line endings
23450
23451 2000-01-19  Thomas Tanner  <tanner@ffii.org>
23452
23453         * ltmain.in: rewrite of the ILD code, merge linking code for
23454           programs, libraries and objects, allow linking of shared libraries
23455           against static libraries/objects on platforms that support it
23456           but print a warning, fix some typos
23457
23458         * partially revert my previous change and
23459           update only copyright notices of files that were actually modified
23460
23461         * NEWS: update
23462
23463         * libltdl/Makefile.am: version number was wrong
23464
23465         * libltdl/ltdl.c (tryall_dlopen): revert Gary's change
23466           since it breaks dlpreopening
23467         * ltdl.m4: ditto
23468
23469         * libltdl/ltdl.c (sys_search_path): search in the system default
23470           library search path, too
23471         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): extract the path
23472
23473         * libltdl/ltdl.c (find_module): remove bogus file_not_found_error
23474
23475         * libltdl/ltdl.c (load_deplibs): implement loading of dependency
23476           libraries
23477         * libltdl/ltdl.c (unload_deplibs): implement unloading of dependency
23478           libraries
23479         * libltdl/ltdl.c (lt_dlexit): correctly close all modules and
23480           their dependencies
23481
23482         * libltdl/ltdl.c (lt_dlforeach): new function
23483         * libltdl/ltdl.h: ditto
23484         * doc/libtool.texi (using libltdl): document it
23485
23486         * libtool.m4: reformatting, only add -I$topsrc_dir/libltdl to
23487           INCLTDL
23488
23489         * libtoolize.in: reformatting
23490         * ltconfig.in: reformatting
23491         * ltmain.in: reformatting
23492
23493         * mdemo/configure.in: AC_SUBST INCLTDL
23494         * mdemo/Makefile.am: use INCLTDL
23495
23496         * tests/Makefile.am: reexport OBJEXT and EXEEXT
23497         * tests/dryrun.test: use them for building main.obj and mdemo.exe
23498
23499 2000-01-17  Gary V. Vaughan  <gary@gnu.org>
23500
23501         * libltdl/ltdl.c (tryall_dlopen): Abort with
23502         file_not_found_error before trying all lib_open() methods
23503         if the file to be dlopened doesn't exist.
23504         * ltdl.m4 (AC_HAVE_HEADERS): add unistd.h.
23505
23506 2000-01-16  Gary V. Vaughan  <gary@gnu.org>
23507
23508         * libltdl/ltdl.c (find_file): memory error fixed.
23509
23510 2000-01-14  Gary V. Vaughan  <gary@gnu.org>
23511
23512         * ltconfig.in (Usage): Now it matches the code!
23513         Reported by Jon Leichter <jon@symas.com>
23514
23515         * README:  Some notes about libtool release numbers.
23516
23517         * mdemo/README: Explain the deliberate incompleteness of the
23518         Windows port.
23519         * mdemo/configure.in: Use AC_LIBTOOL_WIN32_DLL.
23520         * mdemo/Makefile.am (LDFLAGS):  Add -no-undefined.
23521
23522         * libltdl/ltdl.h (LTDL_STMT_START, LTDL_STMT_END):  Macros for
23523         wrapping other macros to make a portable compound statement from
23524         multiple C statements in the expansion.
23525         (LTDL_SET_PRELOADED_SYMBOLS): Use the above macros to add an
23526         extern declaration for lt_preloaded_symbols, to remove
23527         dependency on undefined symbol from libltdl.dll on cygwin (and
23528         other -no-undefined architectures).
23529         * libltdl/ltdl.c (lt_preloaded_symbols): No longer defined here.
23530
23531         * libtool,m4 (AC_LIBTOOL_SETUP):  The result of lt_cv_need_dllmain
23532         was set to the opposite of what it should be.
23533         * configure.in (AC_LIBTOOL_WIN32_DLL):  Call to this macro is
23534         required for libtool configury to test lt_cv_need_dllmain on
23535         Windows.
23536
23537         * ltconfig.in (opt_cr, mingw*): replace unescaped ? with correctly
23538         escaped and portable \{0,1\} in sed expression.
23539         From Jon Leichter <jon@symas.com>
23540
23541 2000-01-13  Gary V. Vaughan  <gary@gnu.org>
23542
23543         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): Add -I${top_srcdir}/libltdl
23544         to default INCLTDL for VPATH.
23545         (AC_LIBLTDL_INSTALLABLE): ditto.
23546         Reported by Tom Tromey <tromey@cygnus.com>
23547
23548 2000-01-12  Thomas Tanner  <tanner@ffii.org>
23549
23550         * update all copyright notices to 2000
23551
23552         * doc/libtool.texi (using libltdl): document new lt_dlinfo struct,
23553           replace NULL with @code{NULL}, document lt_dlsetdata(),
23554           lt_dlgetdata() and lt_dlgetinfo()
23555         * libltdl/Makefile.am: increment interface version number
23556         * libltdl/configure.in: set version number to 1.1
23557         * libltdl/ltdl.c: make some variables public by moving them
23558           to the info struct, add support for application specific data
23559           within module handles, new lt_dlsetdata(), lt_dlgetdata() and
23560           lt_dlgetinfo() functions,
23561           fix memory leaks, minor cleanups
23562         * libltdl/ltdl.h: ditto
23563         * mdemo/main.c: demonstrate use of lt_dlgetinfo,
23564           improved handling of errors
23565
23566         * ltconfig.in: set hardcode_into_libs = yes for GNU/Hurd, Linux
23567           and Solaris, only hardcode *all* run-paths if hardcode_into_libs
23568           is set to 'all', otherwise hardcode only user-specified rpaths
23569           into libraries
23570         * ltmain.in: minor cleanups, we don't need to add user-specified
23571           rpaths to compile_rpath, finalize_rpath is sufficient
23572
23573         * ltconfig.in: transform linux* -> *linux-gnu* _after_ host_os has
23574           been set! (reported by Bruno Haible <haible@ilog.fr>)
23575
23576         * configure.in: AC_SUBST reload_flag, deplibs_check_method
23577           and file_magic_cmd
23578
23579         * README: use 'libtool --version' instead of 'ltconfig --version'
23580           (suggested by Francios Pinard <pinard@iro.umontreal.ca>
23581
23582 2000-01-10  Gary V. Vaughan  <gary@gnu.org>
23583
23584         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Leave undefined when
23585         not compiling for a Windows target.
23586         * libltdl/ltdl.c (canonicalize_path): New function to
23587         ensure internal paths use '/' directory separators.
23588         (find_file): use canonicalize_path.  Memory management
23589         changed to cope.
23590         (lt_dlopen): ditto.
23591         (free_vars): Removed `dir' and `name', which are now handled
23592         internally.
23593
23594         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Define to '/' or '\\',
23595         as suitable for the target host.
23596         (LTDL_PATHSEP_CHAR): Similarly with ':' or ';'.
23597         * libltdl/ltdl.c: Use LTDL_DIRSEP_CHAR and LTDL_PATHSEP_CHAR
23598         instead of hardcoding throughout.
23599         Reported by Jon Leichter <jon@symas.com>
23600
23601 1999-12-18  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23602
23603         * ltmain.in: Oops, `largarg' -> `lastarg'.
23604
23605         * ltmain.in (-Wc, -Xcompiler): Implemented in compile mode.
23606
23607         * ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and
23608         finalize_command.
23609         (-Wc, -Wl): Likewise.
23610
23611         * tests/quote.test: Adjust quoting style of -Wl.
23612
23613         * ltmain.in: Oops, `echo' -> `$echo'.
23614
23615         * ltmain.in (-Wl, -Wc): Make commas argument separators, just like
23616         in gcc.
23617
23618         * ltmain.in (libtool_args): Get all arguments properly enclosed in
23619         quotes and backslash-protected when needed.
23620
23621 1999-12-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23622
23623         * ltdl.m4: Renamed from...
23624         * libltdl/ltdl.m4: that no longer exists.
23625         * configure.in (ACINCLUDE_M4_LIST): Removed libltdl/acinclude.m4.
23626         * Makefile.am (aclocal_macros): Added ltdl.m4.
23627         (libltdl/acinclude.m4): Concatenate libtool.m4 and ltdl.m4.
23628         * bootstrap: Likewise.
23629         * libltdl/Makefile.am (ACLOCAL): Remove the definition.  Relying
23630         upon -I may lead to duplicates.
23631         * doc/libtool.texi: Suggest appending ltdl.m4 to acinclude.m4.
23632         * libtoolize.in: Check AC_LIB_LTDL version number in aclocal.m4.
23633
23634         * libltdl/configure.in (with_auxdir): Do not use it as the
23635         argument of AC_CONFIG_AUX_DIR, automake requires a literal here.
23636         Use AC_CONFIG_AUX_DIRS/DIR_DEFAULT instead.
23637
23638         * libltdl/Makefile.am (ACLOCAL): Define with `-I .', as in
23639         bootstrap.
23640
23641 1999-12-15  Thomas Tanner  <tanner@ffii.org>
23642
23643         * libltdl/configure.in: path to auxiliary files can be specified
23644           using --with-auxdir (idea by Howard Chu <hyc@highlandsun.com>)
23645
23646         * ltmain.in: don't remove multiple occurences from dependency_libs
23647           of a library, otherwise many dependencies would get lost
23648
23649         * bootstrap: use "aclocal -I ." instead of adding the contents
23650           of ltdl.m4 to acinclude.m4
23651
23652 1999-12-13  Gary V. Vaughan  <gary@gnu.org>
23653
23654         * NEWS: updated.
23655         * libltdl/Makefile.am: Use -no-undefined for dll compliance.
23656         * libltdl/configure.in: Use AC_LIBTOOL_WIN32_DLL for dll
23657         compliance.
23658         * libltdl/ltdl.c: Define and use LTDL_GLOBAL_DATA to correctly
23659         export global data symbols from libltdl.dll.
23660         * libltdl/ltdl.h: Define and use LTDL_SCOPE to declare data
23661         symbols as dllexport, dllimport or plain ornary extern depending
23662         in the context in which it is used.
23663
23664         * doc/libtool.texi (Distributing libltdl): document use of
23665         ltdl.m4.
23666         * libltdl/configure.in: Removed header checks, as they are
23667         automatically performed by AC_LIB_LTDL.
23668         * libltdl/ltdl.m4: Added header checks from configure.in, so that
23669         AC_LIB_LTDL is sufficient to compile ltdl.c.
23670         Reported by Stephan Kulow <coolo@kde.org>.
23671
23672         * ltconfig.in (ltdll_obj): fixed typo: objdir -> $objdir
23673
23674 1999-12-12  Gary V. Vaughan  <gary@gnu.org>
23675
23676         * ltconfig.in (cygwin*, mingw*, export_symbols_cmds): keep any
23677         DATA tags associated with symbols by recent dlltool.
23678         (cygwin*, mingw*, archive_expsym_cmds): Honor any DATA tags
23679         found in the symbol list.
23680         Reported by Jon Leichter <jon@symas.com>.
23681
23682 1999-12-10  Gary V. Vaughan  <gary@gnu.org>
23683
23684         From Stephan Kulow <coolo@kde.org>
23685         * libltdl/ltdl.m4:  Add arg 3 to AC_DEFINE's to save the user
23686         from having to hack acconfig.h.
23687
23688 1999-12-06  Gary V. Vaughan  <gary@gnu.org>
23689
23690         * NEWS: Updated.
23691         * TODO: Note some cleanups that are now needed.
23692         * libltdl/configure.in: Use the new macroised tests.
23693         * libltdl/ltdl.m4: New file, macroised tests formerly in
23694         libltdl/configure.in.
23695         Reported by Stephan Kulow <coolo@kde.org>.
23696
23697         From Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
23698         * ltconfig.in:  split off the osf3 section, so that the osf4 and
23699         osf5 sections can add `-msym' to arguments passed to the linker
23700         for shared libs.
23701
23702 1999-12-03  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23703
23704         * ltconfig.in (ac_compile): Use $ac_ext instead of .c.
23705         (ac_link): Likewise.
23706         (dlfcn.h, ac_try): Do not add filename, it is already in
23707         ac_compile.
23708         Reported by Stephane Conversy <Stephane.Conversy@lri.fr>
23709
23710         * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
23711         works together with fast_install.
23712
23713         * libtool.m4: Use host when --target is not specified.
23714
23715         * configure.in: AC_SUBST variables that are used by ltconfig to
23716         build libtool.
23717
23718         * ltconfig.in (irix6*): Do not override deplibs_check_method
23719         here.
23720
23721         * libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
23722
23723 1999-11-20  Michael Forster  <email@michael-forster.de>
23724
23725         * ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes.
23726
23727 1999-11-29  Gary V. Vaughan  <gary@gnu.org>
23728
23729         * ltconfig.in:  Be friendlier to C++ compilers when testing
23730         for dlopen support.
23731         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
23732
23733 1999-11-26  Gary V. Vaughan  <gary@gnu.org>
23734
23735         * libtool.m4:  better use of $target instead of $host to support
23736         cross compilation.
23737         Reported by Sam Latinga <slouken@devolution.com>
23738
23739 1999-11-16  Thomas Tanner  <tanner@ffii.org>
23740
23741         * configure.in: generate ltconfig and ltmain.sh before configuring
23742           libltdl
23743
23744 1999-11-04  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23745
23746         * tests/sh.test: New test to detect uses of quotes within
23747         backticks within quotes.
23748         * ltconfig.in, ltmain.in: Fix detected errors.  Mark false
23749         positives with a comment that disables the detector.
23750         Reported by Akim Demaille <akim@epita.fr>
23751
23752         * configure.in: Move ltconfig and ltmain.sh generation back...
23753         * Makefile.am: here.
23754
23755 1999-11-02  Thomas Tanner  <tanner@ffii.org>
23756
23757         * NEWS: updated
23758         * THANKS: added Olly Betts and Pavel Roskin
23759         * doc/libtool.texi: fix typo
23760
23761         * fix major bugs which rendered libtool virtually
23762           unusable (i.e. not portable):
23763         * ltconfig.in: don't hardcode system dependent variables in ltconfig!!
23764           but set sane defaults
23765         * Makefile.am: pass variables from AC_LIBTOOL_SETUP to ltconfig
23766         * libtool.m4: ditto, fix typo in AC_PROG_LD_RELOAD_FLAG
23767
23768         * ltconfig.in: use old_deplibs for archives, too
23769           remove second occurence of sysv5
23770         * ltmain.in: fix typo, fix the second occurence of -DPIC, too
23771
23772         * libltdl/Makefile.am: increment version number, fix typo
23773         * libltdl/ltdl.c (lt_dlsym): don't report an error if the
23774           libltdl-style symbol name wasn't found
23775
23776 1999-11-02  Wolfgang Rapp <ulris@bn-ulm.de>
23777
23778         * ltconfig.in: add support for Unixware (sysv4.2uw2*)
23779
23780 1999-10-29  Gary V. Vaughan  <gary@gnu.org>
23781
23782         * ltmain.in:  Damnit!  Cygwin cvs committed all the
23783         dos line endings.
23784
23785 1999-10-28  Stephane Conversy  <Stephane.Conversy@lri.fr>
23786
23787         * ltmain.in (-DPIC):  changed the order of pic flags a little to
23788         prevent upsetting the sgi c++ compiler.
23789
23790 1999-10-28  Olly Betts  <olly@muscat.co.uk>
23791
23792         * ltconfig.in (opt_cr):  Handle crlf sequences output by the
23793         mingw toolchain.
23794
23795         * libtool.m4:  Third time lucky, with Tor's patch.
23796
23797 1999-10-19  Tor Lillqvist  <tml@iki.fi>
23798
23799         * libtool.m4:  these was a missing `*' in the -mno-cygwin
23800         match.
23801         * ltconfig.in (cygwin, ltdll_obj): fixed a quoting error.
23802         (export_symbols_cmds): added missing cosmetic newline.
23803
23804 1999-10-18  Tor Lillqvist  <tml@iki.fi>
23805
23806         * libtool.m4: test command used == which should be =.
23807         Support -mno-cygwin flag for building mingw32 dlls.
23808         * ltconfig.in (file_magic_cmd): add missing quotes.
23809         (deplibs_check_method): and here.
23810
23811 1999-10-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23812
23813         * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
23814         specified library is not just a basename.
23815
23816 1999-10-10  Gary V. Vaughan  <gary@gnu.org>
23817
23818         * libtool.m4 (AC_PATH_FILE): new macro replaces
23819         AC_PATH_TOOL_GREP_OUTPUT.
23820         (AC_PATH_TOOL_PREFIX): new macro replaces
23821         AC_PATH_PROG_GREP_OUTPUT.
23822         (AC_LD_RELOAD_FLAG):  migrated from ltconfig.in.
23823         (AC_DEPLIBS_CHECK_METHOD): ditto.
23824         * ltconfig.in (reload_flag): moved to libtool.m4.
23825         (deplbs_check_method): ditto.
23826
23827 1999-10-07  Gary V. Vaughan  <gary@gnu.org>
23828
23829         * libtool.m4 (AC_PATH_PROG_VERSION_GREP): removed in favour of the
23830         more general AC_PATH_PROG_GREP_OUTPUT.
23831         (AC_PATH_TOOL_VERSION_GREP): removed in favour of the more general
23832         AC_PATH_TOOL_GREP_OUTPUT.
23833         (AC_PROG_LIBTOOL):  Search for a working find program in the
23834         user's PATH using the new macros.
23835
23836 1999-10-06  Gary V. Vaughan  <gary@gnu.org>
23837
23838         * NEWS: updtaed.
23839         * ltconfig.in: Accept osf5.
23840         Reported by Sascha Schumann <sascha@schumann.cx>
23841
23842 1999-10-04  Gary V. Vaughan  <gary@gnu.org>
23843
23844         * ltmain.in (-no-install):  This doesn't work on win32 since
23845         the search path for libraries is not encoded in the binary,
23846         and dlls not in $PATH won't be found.  Fall back to -no-fast-install
23847         instead.
23848
23849         * ltmain.in (-no-fast-install):  Wrapper script used to add the
23850         exeext on again when naming the wrapped executable.
23851
23852 1999-10-03  Gary V. Vaughan  <gary@gnu.org>
23853
23854         * ltconfig.in:  Set $FILE to @FILE@ for substitution with
23855         the value found in libtool.m4 at configure time.
23856         * libtool.m4 (AC_PATH_TOOL_GREP_VERSION):  New macro, combines
23857         AC_PATH_PROG and AC_CHECK_TOOL with a test which greps the
23858         output of $ac_dir/${ac_prefix}<tool> --version for a
23859         given regex.
23860         (AC_PATH_PROG_GREP_VERSION):  New macro used by the above.
23861         (AC_LIBTOOL_SETUP): Use the new macros to search the PATH
23862         [starting at /usr/bin] for a file program which accepts
23863         --version and has "file" in its --version output.
23864
23865 1999-10-03  Thomas Tanner  <tanner@ffii.org>
23866
23867         * NEWS: new -no-install flag
23868         * configure.in: fix typo
23869         * doc/libtool.texi(Link mode): document -no-install flag,
23870           correct -no-fast-install docs
23871         * libtool.m4: check for "file" command
23872         * ltconfig.in: don't hardcode /usr/bin/file, remove second
23873           definition of sysv5, replace linkopts -> linker_flags
23874         * ltmain.in: add new -no-install flag, print help for -no-install
23875           and -no-fast-install flags
23876
23877 1999-10-03  Olly Betts <olly@muscat.co.uk>
23878
23879         * ltmain.in: always create output_objdir
23880
23881 1999-10-03  Pavel Roskin  <pavel_roskin@geocities.com>
23882
23883         * libltdl/Makefile.am: don't preserve file attributes when
23884           installing the libltdl sources
23885
23886 1999-10-01  Gary V. Vaughan  <gary@gnu.org>
23887
23888         * configure.in (AC_OUTPUT_COMMANDS): generate ltmain.sh
23889         * Makefile.am (ltmain.sh ltconfig): removed.  Automake inserts the
23890         rules to automatically call config.status.
23891
23892         * libtool.m4: be sure to AC_SUBST values no longer tested in
23893         ltconfig.in.
23894         * ltconfig.in: replaced several of the simple feature tests with
23895         substitutions from config.status.
23896         * Makefile.am (ltconfig): generate ltconfig with config.status.
23897         * configure.in (AC_OUTPUT): generate ltconfig with config.status.
23898
23899 1999-09-30  Donald Anderson  <dda@world.std.com>
23900
23901         * ltconfig.in (sco3.2v5): use pass_all deplibs_check_method
23902         for SCO3.2.
23903
23904 1999-09-29  Gary V. Vaughan  <gary@gnu.org>
23905
23906         * ltconfig.in (whole-archive-flag-spec):  I had been
23907         wondering why my file system was filling up with empty
23908         files named `71'... seems I forgot to hold in the
23909         shift key when redirecting stderr, 2>&1.  Doh!
23910
23911 1999-09-29  Vadim  <vadim@olly.ru>
23912
23913         * ltconfig.in (sysv):  More UW7 support.
23914
23915 1999-09-28  Albert Cheng  <acheng@ncsa.uiuc.edu>
23916
23917         * ltmain.in (shlibpath_var): ensure the variable is non-empty before
23918         exporting it.
23919
23920 1999-09-27  Manfred Weichel  <weichel@global.nacamar.de>
23921
23922         * ltconfig.in (sysv5): Added support required for shared
23923         library linking on SCO UW7.
23924
23925 1999-09-22  Gary V. Vaughan  <gary@gnu.org>
23926
23927         * ltconfig.in (whole-archive-flag-spec): test whether the
23928         version of GNU ld being used understands --whole-archive
23929         before using it.
23930
23931 1999-09-19  Thomas Tanner  <tanner@ffii.org>
23932
23933         * ltmain.in: don't ignore convenience libraries for objects/archives
23934           (temporary hack)
23935
23936 1999-09-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23937
23938         * ltconfig.in (CDPATH): Set to `:' instead of empty.
23939         * ltmain.in (CDPATH): Likewise.
23940         Reported by Greg McGary <gkm@eng.ascend.com>
23941
23942 1999-08-24  Gary V. Vaughan  <gary@gnu.org>
23943
23944         * ltconfig.in (ltdll.c, impgen.c): Prevent the shell from
23945         expanding variables & backslash escapes when writing these
23946         files to the libtool script.
23947
23948 1999-08-24  Thomas Tanner  <tanner@ffii.org>
23949
23950         * NEWS: mention fixes
23951         * doc/PLATFORMS: GNU/Hurd update
23952         * depdemo: make use of variables
23953         * ltconfig.in: use CC -E when checking for ELF support
23954           on NetBSD (reported by Todd Vierling <tv@pobox.com>),
23955           replace all occurences of 'linkopts' with 'linker_flags'
23956         * ltmain.in: move ltdll.c and impgen.c to ltconfig.in and
23957           only add them to the libtool script if it's necessary
23958
23959 1999-08-24  Boyd Gerber  <gerberb@zenez.com>
23960
23961         * ltconfig.in: add support for UnixWare 7.X.X
23962         * doc/PLATFORMS: add new platforms
23963
23964 1999-08-24  Pavel Roskin  <pavel_roskin@geocities.com>
23965
23966         * doc/libtool.texi: document use of noinst_LTLIBRARIES for
23967           convenience libraries
23968
23969         * ltconfig.in: check for freebsdelf3, not just freebsd3.
23970         Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1
23971
23972         * ltmain.in: enable workaround for freebsdelf3.0
23973
23974 1999-08-24  Bert Driehuis  <bert_driehuis@nl.compuware.com>
23975
23976         * ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
23977
23978 1999-08-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
23979
23980         * libltdl/COPYING.LIB: Update to version 2.1.
23981         * libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.
23982
23983 1999-08-03  Gary V. Vaughan  <gary@gnu.org>
23984
23985         * libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return
23986         stripping.
23987         * ltconfig.in: ditto.
23988         From Olly Betts <olly@muscat.co.uk>
23989
23990 1999-08-02  Olly Betts  <olly@muscat.co.uk>
23991
23992         * doc/libtool.texi (Compile mode): typo correction.
23993         (Link mode): and another.
23994         (Release numbers):  and another.
23995         (Distributing libltdl): and another.
23996         (Test descriptions): and another.
23997         (libtool script contents): and one more.
23998
23999         * libtool.m4 (AC_PROG_LD): strip carriage returns from the
24000         output of gcc -print-prog-name=ld.
24001         * ltconfig.in: ditto.
24002
24003 1999-07-30  Pavel Roskin  <pavel_roskin@geocities.com>
24004
24005         * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
24006         initialised structures are sometimes emitted in the code section.
24007
24008 1999-07-30  Mumit Khan  <khan@xraylith.wisc.edu>
24009
24010         * ltconfig.in:  Read line at a time to avoid tokenisation by
24011         shell.
24012
24013 1999-07-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24014
24015         * ltmain.in: Fix creation of relative links to object files in
24016         sub-dirs.
24017
24018 1999-07-29  Olly Betts  <olly@muscat.co.uk>
24019
24020         * ltconfig.in(cygwin mingw32, archive_expsym_cmds): Only compile
24021         and link ltdll.c if the libtool.m4 macros discovered that it is
24022         required.
24023
24024 1999-07-26  Olly Betts  <olly@muscat.co.uk>
24025
24026         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops.  Fix some
24027         typos made by Evil Gary while (mis)applying my patch :-).
24028
24029         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP):  On second
24030         thoughts, only probe for -mdll vs -dll on mingw, and revert to
24031         the old `-Wl,--dll -nostartfiles' on cygwin.
24032
24033 1999-07-24  Erez Zadok  <ezk@cs.columbia.edu>
24034
24035         * doc/PLATFORMS (i*86-*openbsd2.5):  New platform.
24036         Slight reordering of other bsd entries.
24037
24038 1999-07-24  Olly Betts  <olly@muscat.co.uk>
24039
24040         * NEWS: Note new user visible changes.
24041         * libtool.m4 (mingw32, AC_LIBTOOL_SETUP): probe for -mdll vs -dll
24042         under cygwin/mingw.
24043         probe whether the cygwin/mingw library supplies a stub DllMain
24044         (but this information isn't yet used).
24045         * ltconfig.in (mingw32, extract_expsyms_cmds): if HOST_CC is set,
24046         use that to build impgen so we can use it when cross-compiling.
24047         use correct entry points for mingw so static C++ constructors get
24048         called for code in the DLL.
24049         * ltmain.in (impgen.c): define O_BINARY to 0 if it is not in the
24050         system headers.
24051
24052 1999-07-24  Bert Driehuis <bert_driehuis@compuware.com>
24053
24054         * ltconfig.in:  Updated bsdi4 soname specs to be more like
24055         linux as discussed on the bsdi mailing list.
24056
24057 1999-07-20  Gary V. Vaughan  <gary@gnu.org>
24058
24059         * configure.in (AC_PROG_RANLIB):  No longer required as we now use
24060         AC_CHECK_TOOL in AC_LIBTOOL_SETUP.
24061         * libtool.m4 (AC_PROG_LIBTOOL):  Pass the $build variable to
24062         ltconfig.
24063         (AC_PROG_RANLIB): replaced with AC_CHECK_TOOL.
24064         * ltconfig.in (build): new variable to hold the build triplet
24065         which is now checked for unless --no-verify is specified.
24066         (--build): new argument to set the build triplet.
24067         (ranlib): Prefer ${host_alias}-ranlib[.exe] if $build is different
24068         to $host.
24069         * doc/libtool.texi (Invoking ltconfig): Document --build option.
24070         * NEWS: Note --build option.
24071
24072 1999-07-19  Erez Zadok  <ezk@cs.columbia.edu>
24073
24074         * doc/PLATFORMS: Updated mostly *bsd platforms.
24075
24076 1999-07-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
24077
24078         * doc/libtool.texi (Porting inter-library dependencies): Typos
24079         Reported by Petter Reinholdtsen <pere@hungry.com>
24080
24081 1999-07-17  Thomas Tanner  <tanner@ffii.org>
24082
24083         * NEWS, TODO: updated (pic flags)
24084         * libtool.m4 (AC_PROG_LIBTOOL): added --with-pic flag
24085         * ltconfig.in: new pic_mode variable and --prefer[-non]-pic flags,
24086           fixed the strip check (reported by Keith Bostic <bostic@bostic.com>)
24087         * ltmain.in (compile mode): build only PIC/non-PIC code depending
24088           on pic_mode
24089         * libltdl/README: document the supported dlopen interfaces
24090         * doc/libtool.texi (tests): documented new tests
24091         * tests/Makefile.am: added new tests
24092         * tests/demo-pic.test: new test to test --with-pic
24093         * tests/demo-nopic.test: new test to test --without-pic
24094         * tests/build-relink2.test: variant of build-relink.test that
24095           uses depdemo
24096
24097 1999-07-09  Olly Betts  <olly@muscat.co.uk>
24098
24099         * doc/libtool.texi (C++ Libraries):  fixed a typo.
24100
24101 1999-07-06  Gary V. Vaughan  <gary@gnu.org>
24102
24103         * README-alpha:  improved the release instructions to mention
24104         actual list addresses for announcements, and urls for upload
24105         locations.
24106
24107 1999-07-03  Thomas Tanner  <tanner@ffii.org>
24108
24109         * doc/PLATFORMS: 1.3b passes all tests on cygwin
24110
24111 1999-07-03  Pavel Roskin <pavel_roskin@geocities.com>
24112
24113         * ltconfig.in: finish_cmds for FreeBSD removed
24114         * depdemo/l3/Makefile.am: install libl3.la into an extra directory
24115
24116 1999-07-02  Gary V. Vaughan  <gary@gnu.org>
24117
24118         * configure.in: bumped version to 1.3c.
24119
24120         GNU libtool 1.3b was released.
24121
24122         * NEWS: inserted todays date.
24123
24124 1999-07-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
24125
24126         * doc/PLATFORMS: Tested on as many platforms as possible for me.
24127
24128 1999-07-01  Thomas Tanner  <tanner@ffii.org>
24129
24130         * NEWS: updated
24131         * doc/PLATFORMS: updated
24132         * changed my email address
24133
24134 1999-06-30  Thomas Tanner  <tanner@ffii.org>
24135
24136         * demo/foo.h: use LT_PARAMS instead of LTDL_PARAMS (this is not libltdl)
24137         * tests/build-relink.test: also check for hardcode_into_libs = yes,
24138           if set, we need to relink at install-time
24139
24140 1999-06-29  Thomas Tanner  <tanner@ffii.org>
24141
24142         * NEWS: mention -no-fast-install, rename dummy to force
24143         * doc/PLATFORMS: 1.3b passes all tests on GNU/Linux,
24144           FreeBSD (2.2.6 and 3.1)
24145         * doc/libtool.texi: it's possible to link libtool libraries
24146           using -L and -l, better documentation of uninstall and clean mode,
24147           rename dummy to force, documented -no-fast-install,
24148           AC_LIBLTDL_* must be called before AC_PROG_LIBTOOL,
24149           documented hardcode_into_libs and striplib/old_striplib,
24150         * ltconfig.in: search for strip program, added hardcode_into_libs
24151           and striplib/old_striplib variables, set strip commands for GNU strip,
24152           on FreeBSD >= 3.2 set hardcode_into_libs to yes,
24153           fast-install mode doesn't work if hardcode_into_libs = yes
24154         * ltmain.in: reimplemented hardcoding into libraries:
24155           new relink mode, preserve all libtool args, relink libraries
24156           when installing if necessary
24157           added -no-fast-install flag, removed unnecessary `dlname'
24158           initialization, use striplib/old_striplib for stripping libraries,
24159           dlname is always soname or in library_names so we don't need
24160           to handle different file names
24161
24162 1999-06-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24163
24164         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to yes
24165         up to release 3.1, and to no from 3.2 on.
24166         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24167
24168 1999-06-29  Pavel Roskin <pavel_roskin@geocities.com>, Alexandre Oliva  <oliva@dcc.unicamp.br>
24169
24170         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to
24171         yes; tested on 3.1-ELF by Pavel and on 2.2.6 by Alexandre.
24172
24173 1999-06-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24174
24175         * ltconfig.in (linux-gnu*, deplibs_check_method): Use pass_all on
24176         alpha, x86 and sparc architectures by now, reverting to file_magic
24177         at least on ARM, where it breaks.
24178
24179 1999-06-23  Thomas Tanner  <tanner@ffii.org>
24180
24181         * NEWS: updated
24182         * README: added GNU Hurd to the supported platforms
24183         * doc/libtool.texi: document `-dlpreopen dummy'
24184           instead of `-dlopen dummy'
24185         * libltdl/ltdl.c (strchr): fixed typo (missing star)
24186
24187 1999-06-23  Stephan Kulow <coolo@itm.mu-luebeck.de>
24188
24189         * libltdl/ltdl.c (strrchr): fixed typo (missing star)
24190         * libltdl/ltdl.c (trim): use `const' to silence -Wwrite-strings
24191
24192 1999-06-23  Olly Betts  <olly@muscat.co.uk>
24193
24194         * ltmain.in (ltdll.c): Support for crosscompiling from linux to
24195         mingw32.
24196
24197 1999-06-23  Gary V. Vaughan  <gary@gnu.org>
24198
24199         * ltconfig.in (cygwin, export_symbols_cmds): If there is already
24200         an extracted and compiled ltdll.c, then don't delete, reextract
24201         and recompile.
24202         (cygwin, archive_expsym_cmds): Make sure the ltdll source has been
24203         extracted and compiled before referencing the object, since there
24204         are paths through the code which run archive_expsym_cmds without
24205         running export_symbols_cmds.
24206
24207 1999-06-20  Gary V. Vaughan  <gary@gnu.org>
24208
24209         * ltconfig.in:  moved the test for NM after the test for
24210         no_builtin_flag.
24211
24212 1999-06-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
24213
24214         * ltconfig.in: Use sed '$q' instead of sed "" for copying ltmain,
24215         just in case some sed does not support an empty command.
24216
24217         * ltconfig.in (link_static_flag, ac_cv_prog_cc_static): Use the
24218         latter in the test.
24219
24220 1999-06-18  Thomas Tanner  <tanner@ffii.org>
24221
24222         * ltconfig.in (bsdi4, deplibs_check_method): use a less restrictive
24223           regex (reported by Chris P. Ross <cross@eng.us.uu.net>)
24224         * ltmain.in: support `-dlopen dummy', define lt_preloaded_symbols
24225           if dlself != no
24226         * doc/libtool.texi (Compile and Link mode): document it,
24227           documented the -Wc, -Wl flags, libtool does also support non C
24228           source code
24229
24230 1999-06-18  Teun Burgers  <burgers@ecn.nl>
24231
24232         * ltconfig.in: CR/LF fix for broken DJGPP bash
24233         * ltmain.in: CR/LF fix for DJGPP
24234
24235 1999-06-18  Gary V. Vaughan  <gary@gnu.org>
24236
24237         * ltmain.in (outputname): When generating the executable wrapper
24238         script, $outputname already has the $exeext suffix, so we needn't
24239         add it again.
24240
24241 1999-06-16  Gary V. Vaughan  <gary@gnu.org>
24242
24243         * libltdl/configure.in (ac_cv_lib_dl_dlopen): missing "x" in test
24244         comparison corrected.
24245
24246         * libltdl/ltdl.c (sys_wll_open): libltdl expects this function to
24247         fail if it is unable to physically load the library.  Sadly,
24248         LoadLibrary will search the loaded libraries for a match and
24249         return one of them if the path search load fails.  Simulate a
24250         failure in this case for compatibility with the other APIs.
24251         Also, LoadLibrary takes the liberty of adding `.dll' to library
24252         names passed without an extension, we now add a trailing `.' to
24253         prevent this from happening.
24254
24255 1999-06-15  Gary V. Vaughan  <gary@gnu.org>
24256
24257         * libltdl/ltdl.c (sys_wll_close): Strangely enough, Microsoft have
24258         decided that LoadLibrary returns `0' for success, yet FreeLibrary
24259         returns `0' for failure!  The FreeLibrary call used to interpret
24260         `0' as success for both functions.
24261
24262 1999-06-14 Thomas Tanner  <tanner@ffii.org>
24263
24264         * ltconfig.in: use eval when setting have_dlfcn_h, reformatting
24265
24266 1999-06-12 Thomas Tanner  <tanner@ffii.org>
24267
24268         * ltmain.in: store old archives in deplibs and old_deplibs,
24269           retain the order of dependency libraries (even old archives),
24270           determining the absolute directory name didn't work due to a typo,
24271           add the library search paths of all dependency libraries when
24272           linking a library (fixes IRIX 5.2 bug)
24273
24274 1999-06-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
24275
24276         * ltconfig.in: Reverted June 6's patch for new GNU ld output, it
24277         is no longer needed, as ld reverted to the original format.
24278         * NEWS: Likewise.
24279
24280         * ltconfig.in: When testing self-dlopening, test whether dlclose
24281         crashes.  On FreeBSD 3.1, it does.  :-(
24282         * libltdl/configure.in: Likewise.
24283         * NEWS: Note work-around.
24284         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24285
24286 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
24287
24288         * ltconfig.in (exeext): autoconf's AC_EXEEXT uses "no" to indicate
24289         no extension, and we must do the same in order to share the cache
24290         value. Also we must ignore conftest.err which HPsUX (at least)
24291         fills with gratuitous warnings.
24292         (objext): for consistency, do the same as above.
24293         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24294
24295 1999-06-09  Pavel Roskin  <pavel_roskin@geocities.com>
24296
24297         * ltconfig.in (exeext): Use quotes in the test, to prevent a
24298         failure in sh.test.
24299
24300 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
24301
24302         * ltconfig.in: Reordered tests to be more like configure.in's
24303         recommended order (programs first, then libraries, etc.).
24304         Performed a manual ``constant folding pass'' (eg: s/eval "test
24305         \"echo '$''{'lt_cv_dlopen'+set}'`\" != set/test
24306         "${lt_cv_dlopen+set}" != set/).
24307         s/test "${foo+set}" = "set"/test "X${foo+set}" = Xset/g
24308
24309         * ltconfig.in (link_static_flag): Accept, in order of decreasing
24310         preference: the cached value; the default value for the current
24311         host.  Also test that the compiler accepts the flag, and cache
24312         that result too.
24313
24314         * ltconfig.in (pic_flag): Accept, in order of decreasing
24315         preference:  the cached value; the default value for the current
24316         host.  Also test that the compiler accepts the flag, and cache
24317         that result too.
24318
24319 1999-06-08  Gary V. Vaughan  <gary@gnu.org>
24320
24321         * ltconfig.in (LN_S): Accept, in order of decreasing preference:
24322         the cached value; an environment setting; ``ln -s'' if it works;
24323         ``ln'' if ``ln -s'' doesn't appear to work.
24324
24325         * ltconfig.in (objext): Accept, in order of decreasing preference:
24326         the cached value; the result of a test object compilation.
24327
24328         * ltconfig.in (RANLIB): Accept, in order of decreasing preference:
24329         the cached value; an environment setting; the first file called
24330         ``ranlib'' in the user's path.
24331
24332         * ltmain.in (exeext): Use $exeext when working out the names of
24333         programs (but not the wrapper script itself due to a stupidity in
24334         win32 which hardwires the .exe extension to the binary loader!).
24335         * ltconfig.in (exeext): Now that the wrapper script tries to move
24336         executables, we need to know whether they have an extension (ala
24337         AC_EXEEXT).  Since we can't rely on AC_EXEEXT having been called
24338         in configure.in, we must be able to check for ourselves, though we
24339         can look for a cached result incase AC_EXEEXT was called.
24340
24341         * ltconfig.in (cygwin, pic_flag):  Force separate compilation of
24342         objects for dlls vs. objects for static archives.  Using a cpp
24343         macro also allows us to decide whether or not we need to use
24344         dllexport/import declarations.
24345
24346         * ltconfig.in (cygwin, need_version): Set to no, otherwise module
24347         dll's end up with mighty long names!
24348
24349 1999-06-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
24350
24351         * ltconfig.in: Support new GNU ld --help output format.
24352         * NEWS:  Likewise.
24353         Reported by Gaël Quéri <gael@baoule.dyndns.org> and
24354         H.J. Lu <hjl@varesearch.com>.
24355
24356 1999-06-05  Mark Kettenis  <kettenis@gnu.org>
24357
24358         * ltconfig.in: Update support for the Hurd.  Make sure that the
24359         soname includes the major version number and create the right
24360         links.  Allow shared objects without the `lib' prefix and without
24361         version information.
24362
24363 1999-06-02 Nick Rasmussen <nick@jive.org>
24364
24365         * ltmain.in (link): use "$nonopt" as the compiler for
24366           compile/finalize_command
24367
24368 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24369
24370         * TODO: Remove the short list of people interested in C++
24371         constructors; it's not meaningful, since there are so many more
24372         people requesting this feature, and we just can't maintain it
24373         accurate.
24374
24375 1999-05-27  Pavel Roskin  <pavel_roskin@geocities.com>
24376
24377         * ltconfig.in (GNU Hurd, deplibs_check_method): Use pass_all.
24378
24379 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>, Olly Betts  <olly@muscat.co.uk>
24380
24381         * ltmain.in: Expand convenience libraries when creating reloadable
24382         objects.
24383         * NEWS: Ditto.
24384
24385 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24386
24387         * NEWS: Mention the two bugfixes below.
24388
24389         * ltmain.in: Only create directory into which to extract
24390         convenience libraries when $convenience is not empty.  It would
24391         always be created on systems that did not support
24392         whole_archive_flag_spec.
24393
24394         * ltconfig.in (export_symbols_cmds): Add $convenience.
24395         (cygwin, export_symbols_cmds): Ditto.
24396         * ltmain.in: Generate export symbol list before expanding
24397         convenience libraries, to avoid passing whole_archive_flag_spec to
24398         $NM.
24399         Reported by Godmar Back <gback@cs.utah.edu>
24400
24401 1999-05-27  David Jones  <jones@mosaid.com>
24402
24403         * libltdl/ltdl.c (LTDL_BIND_FLAGS): Remove BIND_VERBOSE, to avoid
24404         printing error messages.
24405
24406 1999-05-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
24407
24408         GNU libtool 1.3.2 was released.
24409
24410 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24411
24412         * NEWS: List fixed problems.
24413         * doc/PLATFORMS: Tested for 1.3.2.
24414
24415         * config.guess: Synch with GNU common.
24416
24417         * ltmain.in: Revert to stripping .exe on all platforms.
24418         * TODO: Note about this problem.  Demo is fixed on win32.  Support
24419         `empty' convenience libraries.
24420
24421         * ltconfig.in (solaris*, ld_shlibs): Do not enable shared
24422         libraries with GNU ld 2.8.*, it's broken.  Emit a warning
24423         suggesting an upgrade.
24424         Reported by Brian Ford <ford@vss.fsi.com> and Ronald Pijnacker
24425         <Ronald.Pijnacker@best.ms.philips.com>
24426
24427 1999-05-25  Frank Ch. Eigler <fche@cygnus.com>
24428
24429         * ltmain.in: file_magic check would not avoid cyclic links.
24430
24431 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24432
24433         * depdemo/main.c, depdemo/l1/l1.c, depdemo/l2/l2.c: K&R-ize.
24434         * depdemo/l3/l3.c, depdemo/l4/l4.c: Likewise.
24435
24436         * ltmain.in: Remove object files before writing to them, to avoid
24437         circular links.
24438         Reported by Ron O'Hara <rono@sentuny.com.au>
24439
24440 1999-05-24 Thomas Tanner  <tanner@ffii.org>
24441
24442         * NEWS: support for installing stripped libraries using GNU strip
24443         * ltconfig.in: set deplibs_check_method=pass_all on FreeBSD,
24444           Linux and Solaris since no one can reproduce the famous deplibs
24445           bug
24446         * ltmain.in: preserve $CC (reported by Tom Tromey),
24447           strip libraries using GNU strip if it's available and the
24448           -s flag was passed to "install"
24449
24450 1999-05-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
24451
24452         * doc/PLATFORMS: Release 1.3.1 passes on GNU Hurd/x86.
24453         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24454
24455 1999-05-23 Thomas Tanner  <tanner@ffii.org>
24456
24457         * ltmain.in: strip off the .exe suffix only on *Win
24458           (Reported by Matthew D. Langston <langston@SLAC.Stanford.EDU>)
24459
24460 1999-05-22 Thomas Tanner  <tanner@ffii.org>
24461
24462         * NEWS: updated
24463         * TODO: -Wc, -Wl, implemented
24464         * AUTHORS: changed my email address
24465         * doc/libtool.texi: fix "wierd" typo :)
24466         * ltmain.in: linking against convenience libraries was broken,
24467           implemented the "-Wc," "-Wl," "-Xcompiler" "-Xlinker" flag for
24468           compiler and linker-specific flags,
24469           add -lc before we do the deplibs check
24470         * ltconfig.in: linkopts -> compiler_flags for $CC and linker_flags
24471           for $LD, link_all_deplibs=yes on IRIX
24472
24473 1999-05-22  Gary V. Vaughan  <gary@gnu.org>
24474
24475         * NEWS: insert todays date alongside 1.3.1 release.
24476         * Makefile.in: use gnu not gnits rules
24477         * config.guess: synch with gnu common & apply Takabatake-san's
24478         MIPS *000 patch.
24479         * config.sub: synch with gnu common.
24480
24481 1999-05-22  Doug Evans  <devans@casey.cygnus.com>
24482
24483         * libltdl/configure.in (dlerror): Fix typo in dlopen found in -ldl
24484         test.
24485
24486 1999-05-21  Pavel Roskin  <pavel_roskin@geocities.com>
24487
24488         * Makefile.am (EXTRA_DIST): Don't distribute instutils.
24489         (install-data-hook): use libltdl/Makefile.am's local-install files
24490         rule.
24491         * libltdl/Makefile.am (local-install-files):  New rule to install
24492         libltdl without creating links or mode 777 directories.
24493         * instutil/*: deleted.
24494
24495 1999-05-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
24496
24497         * doc/PLATFORMS: Updated to 1.3.1 for all platforms I've got.
24498         Added sparc-unknown-linux-gnu.
24499
24500 1999-05-21  Gary V. Vaughan  <gary@gnu.org>
24501
24502         * demo/foo.h: s/PARAMS/LTDL_PARAMS/g
24503         * libltdl/ltdl.h: ditto.
24504         * libltdl/ltdl.c: ditto.
24505
24506         * demo/foo.h: s/__P/PARAMS/g
24507         * libltdl/ltdl.h: ditto.
24508         * libltdl/ltdl.c: ditto.
24509         Reported by Akim Demaille <demaille@inf.enst.fr>
24510
24511 1999-05-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
24512
24513         * NEWS: Updated docs.
24514         * TODO: Recommend libtool.m4 to be inserted in acinclude.m4. AIX
24515         4.3.2.0 no longer fails on static dlopening.  GNU DLD no longer
24516         has to support .la files, since libltdl already does.  Convenience
24517         libraries and reloadable objects should be tested in the
24518         testsuite.  We could support some amount of control on the soname
24519         of libraries.
24520         * doc/libtool.texi: Notes about convenience libraries and
24521         automake.  Documented INCLTDL.
24522
24523 1999-05-20 Thomas Tanner  <tanner@gmx.de>
24524
24525         * cdemo/main.c: "Welcome _to_ ..."
24526         * mdemo/main.c: ditto
24527         * libltdl/configure.in: support multiple dlopening mechanisms
24528           at once
24529         * libltdl/ltdl.c: prefix system dependent functions with "sys_"
24530           to avoid symbol conflicts (libdld didn't work)
24531         * libtool.m4 (AC_LIBLTDL_*): set INCLTDL to the path of ltdl.h
24532         * ltconfig.in: check for dlopen with -ldl first
24533
24534 1999-05-19  Gary V. Vaughan  <gary@gnu.org>
24535
24536         * NEWS: Added 1.3.1 news items.
24537         * doc/PLATFORMS: updated the boxes I have access to, to 1.3.1
24538         in preparation for the next release.
24539
24540 1999-05-18  Gary V. Vaughan  <gary@gnu.org>
24541
24542         * ltconfig.in (cygwin*, whole_archive_flag_spec): dlltool chokes
24543         on this, so leave it unset in this case so that the ltmain code
24544         knows it has to unpack convenience archives by itself.
24545
24546 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
24547
24548         * ltmain.in: Do not exit when an unknown library name is passed
24549         passed in, simply warn and continue since some compilers require
24550         -LANG:* like options to work.
24551         Reported by Adam C. Powell, IV <adam.powell@nist.gov>
24552
24553 1999-05-17  Jiro Takabatake  <jiro@din.or.jp>
24554
24555         * ltconfig.in: port to NEC UX/4800.
24556         * NEWS: updated.
24557
24558 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
24559
24560         * ltconfig.in (beos*, deplibs_check_method): set to pass_all.  BeOS
24561         is PIC by default.
24562         Reported by "Shawn T . Amundson" <amundson@gimp.org>
24563
24564         * libltdl/configure.in: Fix test failures on AIX 4.3.2 by checking
24565         for dlopen *with* -ldl first.
24566         Reported by Greg Wooledge <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
24567
24568         * demo/foo.h: Don't set any declspecs until we have full dll
24569         support.
24570
24571 1999-05-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
24572
24573         * ltconfig.in (solaris2.6, whole_archive_flag_spec): Do not use
24574         -Wl for allextract.
24575
24576 1999-05-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
24577
24578         * instutil/chmod: New script to avoid chmod'ing files while
24579         installing libltdl's sources.
24580         * instutil/ln: New script to avoid hard-linking libltdl's sources
24581         in the install tree.
24582         * Makefile.am (EXTRA_DIST): Dist them.
24583         (instal-data-hook): Add srcdir/instutil to the beginning of the
24584         PATH before installing libltdl's sources.
24585
24586 1999-05-09  Gary V. Vaughan  <gary@gnu.org>
24587
24588         * TODO: updated.
24589
24590 1999-05-06  Gary V. Vaughan  <gary@gnu.org>
24591
24592         * Makefile.am (install-data-hook):  make sure the install directory
24593         is not left world writable.
24594         Reported by Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
24595
24596 1999-04-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
24597
24598         * libtool.m4: Use ifelse instead of if.
24599         Reported by David Mazieres <dm@amsterdam.lcs.mit.edu>
24600
24601 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24602
24603         GNU Libtool 1.3 was released.
24604
24605         * NEWS: Summarize news from 1.2 to 1.3.
24606
24607         * ltmain.in: Save exit status of link_command before removing
24608         symbol table object file.
24609
24610 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
24611
24612         * doc/PLATFORMS: updated my hpux-10.20 and cygwin box entries.
24613
24614 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24615
24616         * NEWS: Improved support for DU and IRIX too.
24617
24618         * config.sub, config.guess: Updated from GNU common.
24619
24620         * mdemo/configure.in: Move AC_LIBLTDL_CONVENIENCE before
24621         AM_PROG_LIBTOOL, as suggested by autoconf.
24622
24623         * doc/libtool.texi (Distributing libltdl): Document that -static
24624         may cause the same problems on libltdl as -all-static.
24625         * TODO: We might want to fix this in the future.
24626
24627         * doc/libtool.texi: Clear up overfull hbox.
24628
24629         * libltdl/Makefile.am (ltdl.lo): Add dependencies.
24630         * libltdl/configure.in: Clean up some duplicate defines.  Enable
24631         support for multiple dlopening mechanisms.
24632         * libltdl/acconfig.h: New file.  Add #undefs for defines that
24633         would be duplicated.
24634
24635 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
24636
24637         * libtool.m4 (cygwin*|mingw*, DLLTOOL, OBJDUMP, AS): Only expand the
24638         code that makes these configure time checks on hosts that need the
24639         tools *and* if the AC_LIBTOOL_WIN32_DLL macro is used.
24640
24641 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24642
24643         * ltmain.in (nlist, SYMFILE): Use outputname instead of output for
24644         names within output_objdir.
24645
24646 1999-04-28  Alexandre Oliva  <oliva@dcc.unicamp.br>
24647
24648         * libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC,
24649         AC_ENABLE_FAST_INSTALL): Do not call AC_BEFORE here, they're
24650         AC_REQUIREd by AC_LIBTOOL_SETUP.
24651         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
24652         Call AC_BEFORE here, and now with two arguments, since these do
24653         change the default.
24654         (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE): Fix calls to
24655         AC_BEFORE.
24656
24657 1999-04-28  Gary V. Vaughan  <gary@gnu.org>
24658
24659         * libtool.m4 (ltconfig_enable_win32_dll): pass --enable-win32-dll to
24660         ltconfig if this is set.
24661         (AC_LIBTOOL_WIN32_DLL): New macro required for libtool to attempt
24662         a dll build on win32 hosts.
24663         * ltconfig.in (--enable-win32-dll): new flag for the cli.
24664         (cygwin*|mingw*|os2*, ltconfig_enable_win32_dll): if this is not set
24665         to yes, then do not attempt to build shared libraries.
24666         * doc/libtool.texi: document AC_LIBTOOL_WIN32_DLL.
24667         * NEWS: noted new macro.
24668
24669 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24670
24671         * libtool.m4 (AC_LIBTOOL_DLOPEN, AC_ENABLE_SHARED,
24672         AC_ENABLE_STATIC, AC_ENABLE_FAST_INSTALL, AC_LIBLTDL_CONVENIENCE,
24673         AC_LIBLTDL_INSTALLABLE): Warn if they appear after
24674         AC_PROG_LIBTOOL.  AC_LIBTOOL_SETUP, actually.
24675         (AC_LIBTOOL_SETUP): Check whether DLOPEN support is to be enabled
24676         at autoconf time, not configure time.  Simplify code and
24677         improve (?) help message about --disable-libtool-lock.
24678
24679 1999-04-27 Thomas Tanner  <tanner@gmx.de>
24680
24681         * NEWS: new clean mode
24682         * THANKS: added Ossama Othman
24683         * doc/libtool.texi: documented the new `clean' mode
24684         * ltconfig.in: set need_version=no on OSF (reported by
24685           Marcus Sundberg <mackan@stacken.kth.se>)
24686         * ltmain.in: allow absolute non-existant -L paths,
24687           always use output_objdir instead of objdir for temporary files,
24688           delete generated temporary symbol lists,
24689           don't add .la twice in the pseudo-library header,
24690           implemented and documented clean mode (deletes libraries,
24691           programs and object files and the files associated with them),
24692           if build_libtool_libs=no and no static library is available,
24693           try to link the program against the shared library,
24694           don't add a statically linked library to the dependency_libs
24695         * ltmain.in (help uninstall): added a missing backslash
24696           after echo (reported by Ossama Othman)
24697
24698 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24699
24700         * ltmain.in (old_archive_cmds): Iterate on oldobjs to find out
24701         which links to object files we must create.  Do not test for empty
24702         pic_flag to create such links.  Use objext when searching for
24703         object files extracted from convenience library.
24704
24705         * ltconfig.in (compiler_c_o): Make sure the compiler does not
24706         create temporaries in the current directory when output should go
24707         elsewhere.  We must perform locking if it does.
24708
24709 1999-04-27  Gary V. Vaughan  <gary@gnu.org>
24710
24711         * ltmain.in (old_archive_cmds): Ensure that there are always .o
24712         objects available before running old_archive_cmds.
24713
24714 1999-04-26  Erez Zadok  <ezk@cs.columbia.edu>
24715
24716         * doc/PLATFORMS: Updates for netbsd 1.3.3 and 1.4.
24717
24718 1999-04-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
24719
24720         * ltconfig.in (aix4.[01], always_export_symbols): The case pattern
24721         would never match; fixed.
24722         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
24723
24724 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24725
24726         * libtool.m4 (OBJDUMP): Pass it to ltconfig.
24727         * configure.in: AC_SUBST DLLTOOL, OBJDUMP and AS.
24728         * Makefile.am (libtool, clibtool): Pass them to ltconfig.
24729
24730 1999-04-25  Frank Ch. Eigler  <fche@cygnus.com>
24731
24732         * libtool.m4 (cygwin*): Look for target objdump tool.
24733         * ltconfig.in (cygwin*, file_magic_cmd): Use autoconf-located target
24734         objdump tool.  Track OBJDUMP like DLLTOOL and AS.
24735
24736         * ltconfig.in (cygwin*, deplibs_check_method): Accept
24737         "architecture: i386" as optional suffix, for it is printed on a
24738         separate line sometimes.
24739
24740         * ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C".
24741
24742         * ltmain.in (deplibs_check_method=file_magic): Redirect stderr to
24743         /dev/null, to suppress error messages from target objdump.
24744
24745 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24746
24747         * ltconfig.in (irix*, soname_spec, library_names_spec): Missing
24748         dots before $versuffix and $major.
24749
24750         * ltconfig.in (solaris*, whole_archive_flag_spec): Use -z
24751         allextract/defaultextract from Solaris 2.6 on.
24752         Reported by Brian Ford <ford@vss.fsi.com>
24753
24754         * ltconfig.in (beos*, allow_undefined_flag): Do not build shared
24755         libraries with undefined symbols.
24756
24757         * ltconfig.in (aix4*, allow_undefined_flag): Set to -berok.
24758         (aix4*, shared_flag): Set to -shared or ${wl}-bM:SRE.
24759         (aix4*, archive_cmds): Use -bexpall.
24760         (aix4*, archive_cmds, archive_expsym_cmds): Use shared_flag and
24761         allow_undefined_flag.
24762         (aix4*, always_export_symbols): Set to yes up to AIX 4.1.*,
24763         because -bexpall is supported from 4.2 on.
24764         Reported by Greg Wooledge
24765         <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
24766
24767         * ltconfig.in (hpux*, hardcode_minus_L): Set to yes.
24768         (hpux*, hardcode_libdir_flag_spec): Do not use +s by default.
24769         (hpux*, shlibpath_overrides_runpath): Set to no.
24770
24771         * ltconfig.in (irix*, osf*, archive_cmds): Write so_locations
24772         within objdir.
24773
24774         * ltconfig.in (irix*, soname_spec): Append $major.
24775         (irix*, library_names_spec): Add new soname.
24776         Reported by David Kaelbling <drk@sgi.com>
24777
24778         * ltconfig.in (irix*, sys_lib_dlsearch_path_spec): /usr/local/lib
24779         is not searched by default.  /usr/lib is searched before /lib.
24780         * ltconfig.in (irix*, sys_lib_search_path_spec): /usr/lib is
24781         searched before /lib.
24782
24783         * ltconfig.in (irix5*, need_lib_prefix, need_version): Set to no,
24784         by unifying with irix6*.
24785
24786         * ltconfig.in (irix*, osf*, deplibs_check_method): Use pass_all.
24787
24788         * ltconfig.in (old_LDFLAGS, old_LIBS): Save and write to comments
24789         in output file.
24790
24791         * ltmain.in (prefer_static_libs): New variable, set to no by
24792         default, but set to yes by -static and -all-static.  Used instead
24793         of build_libtool_libs to decide whether to use a shared or static
24794         version of a library, when both versions are available.
24795
24796 1999-04-25  Boyd Lynn Gerber  <gerberb@zenez.com>
24797
24798         * ltconfig.in (sco3.2v5*): Use LD_RUN_PATH for hard-coding.
24799
24800 1999-04-25  Pavel Roskin  <pavel_roskin@geocities.com>
24801
24802         * Makefile.am (uninstall-local): Remove installed libltdl tree.
24803
24804 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24805
24806         * demo/Makefile.am (hc-direct, hc-libflag, hc-libpath, hc-minusl):
24807         Added CFLAGS to link commands; SCO OSR needs it for -belf.
24808
24809         * TODO: -Wl and -Wc options.
24810
24811 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
24812
24813         * libltdl/ltdl.c: Remove trivial warnings.
24814
24815 1999-04-22  Frank Ch. Eigler  <fche@cygnus.com>
24816
24817         * ltconfig.in: Correct sed expression that extracts symbols
24818         from cygwin def files.  Ignore demangled C++ names, if any.
24819
24820 1999-04-12  John David Anglin  <dave.anglin@nrc.ca>
24821
24822         * libltdl/ltdl.c (shl_close): shl_t was correct here...
24823         (shl_sym): ... but we have to pass the handle by reference here.
24824
24825 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
24826
24827         * doc/libtool.texi (Invoking ltconfig): Document environment
24828         variables used.
24829
24830         * doc/libtool.texi (Invoking ltconfig): Document --cache-file.
24831
24832         * doc/libtool.texi (Invoking ltconfig): Document
24833         --disable-fast-install, --enable-dlopen, --with-gnu-ld and
24834         --disable-lock.
24835
24836 1999-04-11 Thomas Tanner  <tanner@gmx.de>
24837
24838         * libltdl/configure.in: check for shl_load in libdld
24839         * libltdl/ltdl.c (shl_close, shl_sym): use (shl_t *) instead of shl_t
24840         * ltconfig.in (check for gcc): removed a bogus line,
24841           check for shl_load in libdld
24842         * ltmain.in: added a warning to the header of the .la file
24843           to warn users against deleting the file,
24844           link shared against static libraries if
24845           deplibs_check_method == pass_all
24846
24847 1999-04-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
24848
24849         * libtool.m4 (AC_PROG_LD, AC_PROG_NM): When looking for programs,
24850         try $ac_exeext too, so that they're found on DJGPP/MS-DOS.
24851         * ltconfig.in: Likewise.
24852         Reported by Robert S. Maier <rsm@math.arizona.edu>
24853
24854         * ltconfig.in (Usage): Removed --enable-dlopen-self.
24855         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24856
24857         * ltconfig.in: Moved sysv4 before sysv4.*.
24858         (symcode): Brian's overrider is specific to sysv4, not sysv4*.
24859
24860 1999-04-09 Thomas Tanner  <tanner@gmx.de>
24861
24862         * NEWS, README: Motorola System V 4 support
24863         * doc/PLATFORMS: added mk88-motorola-sysv4
24864         * ltconfig.in: installed patch from Brian Ford <ford@vss.fsi.com>
24865           to support mk88-motorola-sysv4
24866
24867         * doc/libtool.texi: some cleanups in the libltdl documentation
24868
24869 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
24870
24871         * ltconfig.in (--fallback-echo): Do not put an inline document and
24872         an exec in the same if construct; otherwise the inline document
24873         may not be removed.
24874         * ltmain.in (--fallback-echo): Likewise.
24875         Reported by John David Anglin <dave.anglin@nrc.ca>
24876
24877         * dryrun.test: It would still fail at random times, because `cp'
24878         and `mv' are not guaranteed to preserve the timestamps of the
24879         installed files.  Instead of preserving them, just remove them
24880         before the dry uninstall test.  Redirect dry-run output to stderr,
24881         so that it can be easily separated from the regular output.
24882
24883 1999-04-07 Thomas Tanner  <tanner@gmx.de>
24884
24885         * NEWS: support for moved libraries
24886         * libtool.m4: another DJGPP fix
24887
24888 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
24889
24890         * doc/PLATFORMS: Updated to 1.3 for all platforms I've got.  I'll
24891         make sure 1.3 won't be released unless it passes all tests on
24892         those platforms.
24893
24894         * doc/libtool.texi (Compile mode): Document potential problem and
24895         work-around for `-c -o dir/foo.lo'.
24896
24897         * tests/dryrun.test: The constant modifications of libtool would
24898         cause main.o to be updated at the wrong time; the new approach is
24899         to modify the libtool script so that it enables dry run depending
24900         on whether an environment variable is set or not.  I've also moved
24901         `after' and `before' to a directory deep within $objdir, instead
24902         of creating it in ../tests.
24903         * tests/Makefile.am (CLEANFILES): Removed.
24904
24905 1999-04-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
24906
24907         * tests/dryrun.test: We cannot rely on setting LIBTOOL, because
24908         automake may use sub-makes, and the setting will not be propagated
24909         to them on some makes.  Instead, create a dry version of libtool
24910         and switch between it and the original one before and after dry
24911         runs.
24912         * tests/Makefile.am (CLEANFILES): Added libtool-*, created by
24913         dryrun.test.
24914
24915         * tests/dryrun.test: Use cmp instead of diff.
24916         (before, after): Create them within ../tests.
24917         (libtool): Set to `/bin/sh ./libtool' by default, but use LIBTOOL,
24918         SHELL and top_builddir from the environment if available.  For dry
24919         runs, use "$libtool -n".
24920         * tests/Makefile.am (CLEANFILES): Added before and after.
24921         * ltmain.in: Do not create links to object files in dry runs.
24922
24923 1999-04-06 Thomas Tanner  <tanner@gmx.de>
24924
24925         * ltmain.in: added a missing line of the ILD patch
24926
24927         * NEWS: improved DJGPP support
24928         * doc/libtool.texi: removed hardcode_into_libs documentation
24929         * libtool.m4: some DJGPP fixes
24930         * ltconfig.in: ditto, reverted one of my previous patches: we need
24931           to check for NM, removed the hardcode_into_libs support since
24932           no platform seems to support it
24933         * ltmain.in: some DJGPP fixes, removed the hardcode_into_libs support
24934
24935 1999-04-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
24936
24937         * ltconfig.in (netbsd*, GNU ld): Support a.out shared libraries
24938
24939         * Makefile.am (CVS): allow command-line overriding of cvs
24940
24941         * ltconfig.in (exclude_expsyms): Exclude _GLOBAL_OFFSET_TABLE_ by
24942         default, as most a.out platforms use it, and end up in trouble if
24943         we preload it, so it's safer to rule it out by default, and
24944         special case its removal from exclude_expsyms if someone ever
24945         complains.
24946
24947 1999-04-05 Thomas Tanner  <tanner@gmx.de>
24948
24949         * doc/libtool.texi: reorder tests to reflect execution order,
24950           documented dryrun.test and depdemo*
24951         * ltmain.in (lt_preloaded_symbols): dry-run mode bugfix
24952         * tests/dryrun.test: new test to check whether the dry-run
24953           mode works properly
24954
24955         * demo/run.test: removed the unnecessary test
24956         * demo/Makefile.am: ditto
24957         * ltmain.in: set the DLL search path on cygwin,mingw and os2
24958
24959 1999-04-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
24960
24961         * ltconfig.in (sunos4*, GNU ld): -Bstatic is not enough for
24962         deplibs.test to work with GNU ld; -Bshareable is needed here.
24963
24964         * ltconfig.in (ld_shlibs, amigaos*): Disable shared libs with
24965         native ld too.
24966
24967         * ltconfig.in (sunos4*, GNU ld): Reordered.
24968
24969         * ltconfig.in (archive_cmds, sunos4*): Revert to -Bstatic; the
24970         native linker doesn't even support -Bshareable, only GNU ld does.
24971         Do not use `gcc -shared' in archive_cmds, it breaks deplibs.test.
24972
24973         * ltconfig.in: if ld_shlibs=no, set can_build_shared=no too,
24974         otherwise it will just be disregarded.  This would cause
24975         netbsd/m68k with GNU ld a.out, and certainly many other platforms,
24976         to incorrectly believe that shared libraries were supported, while
24977         archive_cmds was empty, causing shared libraries not to be created
24978
24979 1999-04-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
24980
24981         * NEWS: improved support for AIX and HP/UX
24982
24983 1999-04-03 Thomas Tanner  <tanner@gmx.de>
24984
24985         * NEWS: updated
24986         * libtool.m4: check for main in libm instead of cos
24987         * ltmain.in: cosmetic fixes, don't try to link libraries only once
24988           (although it's not necessary on many platforms and looks ugly...),
24989
24990 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
24991
24992         * ltmain.in (convenience): fixed race condition when more than one
24993         library was linked with the same convenience library by
24994         uniquifying the extract directory.  It is now named after the new
24995         library *and* the old one, and lives in the objdir of the new one.
24996
24997         * ltmain.in (-L*): do not abort just because a directory specified
24998         with -L does not exist; just warn and discard it
24999
25000         * depdemo/l1/Makefile.am (AUTOMAKE_OPTIONS): no-dependencies
25001         * depdemo/l2/Makefile.am (AUTOMAKE_OPTIONS): ditto
25002         * depdemo/l3/Makefile.am (AUTOMAKE_OPTIONS): ditto
25003         * depdemo/l4/Makefile.am (AUTOMAKE_OPTIONS): ditto
25004
25005         * ltconfig.in (archive_cmds, sunos4*): where we used -Bstatic, we
25006         should have been using -Bshareable
25007
25008         * demo/Makefile.am (CLEANFILES): clean EXTRA_* from deplibs-check
25009
25010         * libtool.m4 (LDFLAGS, LIBS): pass them to ltconfig, for the tests
25011         that involve linking
25012         * Makefile.am (LDFLAGS, LIBS, libtool, clibtool): ditto
25013         * tests/Makefile.am (CFLAGS, CPPFLAGS, LDFLAGS, LIBS): set
25014         (LDFLAGS, LIBS, TESTS_ENVIRONMENT): pass them down
25015
25016 1999-04-02  Erez Zadok  <ezk@cs.columbia.edu>
25017
25018         * doc/PLATFORMS: 1.2f ok on various versions of hpux cc
25019
25020 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
25021
25022         * ltconfig.in (link_all_deplibs): set to unknown by default
25023         * ltmain.in: test != no, not = yes
25024         * doc/libtool.texi: document unknown
25025
25026 1999-04-01 Thomas Tanner  <tanner@gmx.de>
25027
25028         * doc/libtool.texi: documented deplibs.test
25029
25030         * demo/Makefile.am: moved testsuite specific declarations to the end,
25031           the deplibs check is now optional
25032         * libltdl/configure.in: read libtool --config only once,
25033           merged AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE from libtool.m4
25034         * libtool.m4: AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE were not
25035           used, lt_dlopen and silent may be empty, AC_SYS_LIBTOOL_CYGWIN
25036           no longer necessary
25037         * ltconfig.in: NM is already checked in libtool.m4,
25038         * ltmain.in: always link all static dependency_libs
25039         * tests/Makefile.am: added deplibs.test
25040         * tests/demo-exec.test, demo-inst.test: removed hell0
25041         * tests/deplibs.test: new test to test the deplibs_check_method
25042
25043 1999-03-31 Thomas Tanner  <tanner@gmx.de>
25044
25045         * ltmain.in: always link a library before its dependency libs
25046         * mdemo/Makefile.am: test -export-symbols-regex
25047
25048 1999-03-30 Thomas Tanner  <tanner@gmx.de>
25049
25050         * doc/libtool.texi: fixed a typo
25051         * libtoolize.in: add the libtool scripts to libltdl.tar.gz
25052         * libtool.m4: don't AC_SUBST(USE_SYMBOL_UNDERSCORE),
25053           AC_CHECK_LIBM sets LIBM, AC_LIBLTDL_INSTALLABLE doesn't work
25054           when libltdl is already installed
25055         * *demo/Makefile.am: use LIBM
25056         * *demo/configure.in: AC_SUBST LIBM
25057         * libltdl/configure.in: use ac_cv_sys_symbol_underscore instead of
25058           USE_SYMBOL_UNDERSCORE
25059         * ltconfig.in: added link_all_deplibs variable
25060         * doc/libtool.texi: document it
25061         * ltmain.in: always search for libname.la - don't eval libname_spec,
25062           when linking libraries against static ones just print a warning
25063           and add them to dependency_libs, add -lc before deplibs,
25064           always link all dependencies of a static library or if
25065           link_all_deplibs is yes, hardcode library paths if
25066           hardcode_into_libs is no, don't link against dependency_libs
25067           that already are deplibs
25068
25069 1999-03-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
25070
25071         * ltconfig.in (aix4*, collect2name): make sure collect2 exists
25072         before running string on it, to avoid errors on old gccs
25073         Reported by Erez Zadok <ezk@cs.columbia.edu>
25074
25075         * ltconfig.in (aix4*, hardcode_libdir_flag_spec): unless we're
25076         using gcc with old collect2, use -b libpath to hardcode the
25077         library search path
25078
25079         * ltmain.in, ltconfig.in: reverted most of the quoting changes
25080         from 1999-03-25; Gary's delay_variable_subst patch from 1999-02-19
25081         obviates it.  Keep only quoting of $PATH, for uniformity with
25082         other systems that already did it
25083
25084 1999-03-29  Gary V. Vaughan  <gary@gnu.org>
25085
25086         * libltdl/ltdl.c (lt_dladdsearchdir): Forgot to mallocate the
25087         extra byte of memory for the teminating NUL, and forgot to
25088         strcpy the original path in to the new memory before appending
25089         the new path compononent.
25090
25091 1999-03-27 Thomas Tanner  <tanner@gmx.de>
25092
25093         * NEWS: updated
25094         * README: updated (BeOS support, no longer shared libraries
25095           support for AmigaOS), cleanups, we have now two mailing lists
25096         * REAMDE-alpha: autogen -> bootstrap, we have now two mailing lists
25097         * THANKS: added Xavier Pianet
25098         * doc/PLATFORMS: BeOS works
25099         * doc/libtool.texi: we have now to two mailing lists,
25100           updated -dlopen self documentation, documented libltdl's license,
25101           put each author in a separate line,
25102           inter-library dependencies on uninstalled libtool libraries are
25103           now supported, cleanups and minor corrections
25104         * libltdl/COPYING.LIB: new file
25105         * libltdl/ltdl.[ch]: added special exception to the LGPL license
25106         * libtool.spec: removed, it was outdated
25107         * Makefile.am: removed libtool.spec
25108         * ltmain.in: use TMPDIR when possible, create a subdirectory
25109           in the temporary directory, added -export-symbols-regex to the help,
25110
25111 1999-03-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
25112
25113         * demo/Makefile.am: create a static library, link two libtool
25114         archives with it, then link the program hell0 with both
25115         * demo/hell1.c, demo/hell2.c: dummy files used to create the
25116         libtool archives without introducing symbol conflicts
25117         * tests/demo-exec.test, tests/demo-inst.test: run the new program
25118         * ltconfig.in (irix5*, irix6*, deplibs_check_method): pass_all
25119
25120         * ltmain.in ($PATH): instead of modifying the PATH, better prevent
25121         its expansion the first time *_cmds variables are eval'ed.  Modify
25122         $show within loops that eval them so as to expand variables
25123         * ltconfig.in (*_cmds): quote $ so that they're not expanded by
25124         the first eval
25125
25126 1999-03-25  Gary V. Vaughan  <gary@gnu.org>
25127
25128         * ltmain.in ($PATH):  Expand any tildes in the users path to the
25129         contents of $HOME to avoid problems with *_cmds splitting and
25130         evaluation.
25131
25132 1999-03-24 Thomas Tanner  <tanner@gmx.de>
25133
25134         * TODO: support -dlopen for libraries
25135         * doc/PLATFORMS: Erez Zadok reported that libtool works on bsdi 4.0.1
25136         * doc/libtool.texi (libltdl): libltdl supports BeOS
25137         * libltdl/ltdl.c: shlib_ext was declared even if LTDL_SHLIB_EXT
25138           didn't exist, partially reverted my previous patch: BeOS will
25139           automatically search in ADDON_PATH
25140         * ltmain.in: don't allow relative run-paths, fixed a typo in a warning,
25141           ignore -dlopen self for libraries and objects,
25142           only accept -L paths that exist, minor cleanups,
25143           bugfix: add -lc for normal libraries, not convenicence libraries
25144           removed offensive warnings/comments
25145
25146 1999-03-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
25147
25148         * ltconfig.in (ld_shlibs, amigaos*): disable shared libraries
25149
25150 1999-03-23  Gary V. Vaughan  <gary@gnu.org>
25151
25152         * libltdl/configure.in: the sed expression for finding the shared
25153         library extension used to think the . in [.] for the cygwin
25154         shared_library_names_spec was the start of the extension!!  We now
25155         remove anything in square brackets (assuming that the square
25156         brackets delimit a sed or expr expression which is not part of the
25157         extension) before looking for the extension.
25158
25159         * TODO (cygwin):  food for thought re: mutually dependant dlls.
25160
25161 1999-03-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
25162
25163         * tests/build-relink.test: if we relink and have hardcode_direct,
25164         removing an uninstalled library breaks an uninstalled program
25165
25166         * doc/libtool.texi: documented convenience libraries
25167         * TODO: removed entry about it
25168
25169         * tests/*-unst.test: if directory is not configured, skip it
25170         * tests/demo.test, tests/mdemo.test: unused, removed
25171         * tests/depdemo.test: ditto
25172
25173 1999-03-20 Thomas Tanner  <tanner@gmx.de>
25174
25175         * doc/libtool.texi (link mode): documentation for -module updated
25176         * ltconfig.in: fast-install mode doesn't work for
25177           hardcode_into_libs=yes
25178         * ltmain.in: bugfix: "-dlopen self [-all]-static" wouldn't use
25179           dlopen_self_static, automatically enable -export-dynamic when
25180           using "-dlopen self", always make run-paths absolute,
25181           ignore -lc only on platforms that don't have such a library,
25182           cleanups in the ILD code, find even installed libtool libraries
25183           that were moved, before generating the DLL-import library we need
25184           to set libname, improved hardcoding of shlibpath for libraries,
25185           don't generate an installable pseudo-library for convenience
25186           libraries, bugfix: export_symbols would be removed immediately
25187           before it is used
25188
25189 1999-03-19 Thomas Tanner  <tanner@gmx.de>
25190
25191         * use the same header in all configure.in's and Makefile.am's
25192         * NEWS: improved support for BeOS and Cygwin
25193         * TODO: ILD branch was merged, all internal variables and macros
25194           are now documented
25195         * demo/Makefile.am: use $(LIBS) instead of -lm
25196         * doc/libtool.texi: documented new variable hardcode_into_libs
25197           and thread_safe_flag_spec, renamed all AM_ENABLE/DISABLE_* macros
25198           to AC_*, documented AC_DISABLE_FAST_INSTALL and AC_LIBTOOL_DLOPEN
25199         * libltdl/ltdl.c: added two new error messages (cannot_open_error,
25200           cannot_close_error), use them where approriate,
25201           BeOS support (thanks to Xavier Pianet), on BeOS search modules
25202           additionally in ADDON_PATH
25203         * libtool.m4: rewrote AC_CHECK_LIBM: BeOS and Cygwin don't have
25204           libm and *-ncr-sysv4.3* requires libmw
25205         * ltconfig.in: don't check for LoadLibrary, hardcode dlopen
25206           configuration for BeOS and Cygwin
25207         * ltmain.in: fix sourcing of .la files on Solaris
25208           (patch by Raja R Harinath)
25209
25210 1999-03-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
25211
25212         * ltconfig.in (sunos4*, with_gnu_ld, hardcode_minus_L): remove, we
25213         have -rpath
25214         (aix4*, without_gnu_ld, hardcode_shlibpath_var): unsupported is
25215         default
25216         (hpux9*, hpux10*, hpux11*, archive_cmds): drop +s, unneeded here
25217         (hpux9*, hpux10*, hpux11*, hardcode_libdir_flag_spec): add +s
25218         before +b
25219         (hpux9*, hpux10*, hpux11*, shlibpath_overrides_runpath): since +s
25220         appears before +b, set it to yes
25221         (hardcode_shlibpath_var, hardcode_action): do not use
25222         shlibpath_var to specify the compile-time search path; it loses,
25223         and we may end up linking with pre-installed older versions of
25224         libraries instead of yet-to-be-installed ones
25225         (*, hardcode_direct, hardcode_minus_L): remove entries that set
25226         them to no, that is default
25227
25228         * demo/Makefile.am (hc-direct, hc-libpath, hc-minusL): link with
25229         $$hardcode_libdir_flag_spec, if available, with libdir=$(libdir),
25230         to make sure the hardcode_* variables will produce the expected
25231         results even in the presence of a hardcoding flag; depend on
25232         libhello.la having been installed already
25233         (hc-libflag): link with the installed library, but try to
25234         hard-code the uninstalled one
25235         * doc/libtool.texi: document the changes
25236
25237         * tests/*.test: when a test fails, skip tests that depend on it.
25238         If a certain configuration is not supported, skip all its tests.
25239
25240         * doc/libtool.texi: reorder tests to reflect execution order
25241
25242         * tests/noinst-link.test: new test
25243         * tests/Makefile.am (TESTS): added noinst-link.test
25244         * doc/libtool.texi: document it
25245
25246 1999-03-19  Gary V. Vaughan  <gary@gnu.org>
25247
25248         * ltmain.in (dependency_libs): There is no reason to infer that
25249         the pseudo library is invalid if dependency_libs='' at
25250         install-time, or else libltdl/libltdl.la is invalid!!
25251
25252 1999-03-18  Thomas Tanner  <tanner@gmx.de>
25253
25254         * merged my inter-library dependencies code from the ILD branch:
25255         * NEWS: inter-library dependencies are now supported
25256         * configure.in: add the depdemo subdirectory
25257         * depdemo/*: new demo to demonstrate inter-library dependencies
25258         * tests/depdemo*: new tests for depdemo
25259         * ltconfig.in: added hardcode_into_libs (whether library paths
25260           should be hardcoded into the libraries),
25261           it currently defaults to 'no'
25262         * ltmain.in: new internal 'relink' mode to relink libraries
25263           on platforms with hardcode_into_libs=yes, save command line
25264           arguments in libtool_args, accept relative -L directories,
25265           ignore -lm on BeOS and Cygwin, always ignore -lc,
25266           handle -l, -L and .la arguments later, always make the library
25267           installation directory (-rpath) absolute, in relink mode don't
25268           delete the not-relinked library and exit immediately after relinking,
25269           try to find already-installed libtool libraries that were specified
25270           using -l, support hardcoding of library paths into libraries too,
25271           export shlibpath before linking libraries, and a lot of other
25272           big changes that I don't want to describe here... please read
25273           the source.
25274
25275         * merged Gary's Win32 code from the ILD branch:
25276         * NEWS: Win32 DLLs are now supported
25277         * TODO: removed .a library namespace clash for win32.  It is
25278           now resolved.
25279         * ltconfig.in (cygwin, library_names_spec):  removed $libname.a.
25280           Creating a dll with libtool no longer creates an import library.
25281         * ltconfig.in (extract_expsyms_cmds): Create $objdir if it does
25282           not exist -- i.e. we need to generate import an import library
25283           in a directory which has no libs of its own.
25284         * doc/libtool.texi (old_archive_from_expsyms_cmds,
25285           extract_expsyms_cmds): documented these new variables.
25286         * ltconfig.in (extract_expsyms_cmds): New variable.  Commands to
25287           extract the exported symbol list from a dll.
25288           (old_archive_from_expsyms_cmds): New variable.  Commands to build
25289           an old archive from the extracted expsyms list.
25290         * ltmain.in: run the cmds in extract_expsyms_cmds and
25291           old_archive_from_expsyms_cmds as necessary.
25292         * ltconfig.in (cygwin, old_archive_from_new_cmds): no longer
25293           required.
25294         * ltconfig.in (cygwin, shlibpath_overrides_runpath): I'm not even
25295           sure whether win32 honours the runpath at all when searching for
25296           a dll to load!  Anyway, when set to yes this prevents a gratuitous
25297           warning.
25298         * ltmain.in (deplib): The cygwin environment doesn't actually have
25299           -lm, and although the linker fakes having one, specifiying it to
25300           libtool will break ILD, so we ignore it when generating
25301           dependencies.
25302
25303 1999-03-17  Gary V. Vaughan  <gary@gnu.org>
25304
25305         * doc/PLATFORMS: Thanks to Alexandres changes below, both my
25306         hp boxes pass the entire test suite.
25307
25308 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
25309
25310         * ltconfig.in (hpux*, hardcode_minus_L): should be no, we have +b
25311         (hpux*, hardcode_libdir_separator): set to colon
25312
25313 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
25314
25315         * doc/PLATFORMS: egcs is gcc; updates from Erez Zadok
25316
25317 1999-03-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
25318
25319         * ltmain.in (deplibs, beos*): don't append -lc
25320         Reported by Xavier Pianet <xavier@xingo.com>
25321
25322         * tests/build-relink.test (hardcode_action): when set to relink,
25323         skip the test with lt-hell
25324
25325         * Makefile.am (EXTRA_DIST): add mkstamp
25326         Reported by Xavier Pianet <xavier@xingo.com>
25327
25328         * Makefile.am (EXTRA_DIST): add ChangeLog.0
25329
25330 1999-03-16  Thomas Tanner  <tanner@gmx.de>
25331
25332         * doc/libtool.texi: some minor corrections to the "-dlopen self"
25333           documentation
25334         * tests/Makefile.am: sorted by name, added assign.test
25335         * ChangeLog: started new file
25336
25337         * ltconfig.in: some cosmetical changes
25338         * ltmain.in: ditto
25339
25340 1999-03-15  Alexandre Oliva  <oliva@dcc.unicamp.br>
25341
25342         * configure.in, libtool.spec, NEWS: bump to 1.3a
25343         * Branched for release 1.3 (branch-1-3)
25344         * configure.in, libtool.spec, NEWS: bump to 1.2g
25345
25346         * configure.in, libtool.spec: bump to 1.2f
25347         * doc/PLATFORMS: ditto
25348         * NEWS: libtool 1.2f released
25349
25350         * ltmain.in: silence ``unbug'' :-) detected by sh.test
25351
25352 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25353
25354         * TODO: we now use full pathnames for `file'
25355
25356 1999-03-14  Thomas Tanner  <tanner@gmx.de>
25357
25358         * TODO: libltdl is now documented
25359         * doc/libltdl.texi (linking with installed libtool libraries):
25360           fixed typo
25361         * doc/libltdl.texi (libltdl): added documentation for building
25362           libtool modules and examples how to embed libltdl
25363         * ltmain.in: don't ignore user-specified run-paths (fixed it
25364           at the right place)
25365
25366 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25367
25368         * ltmain.in (deplibs_check_method=none): discard -L and -R
25369         switches when testing whether deplibs contains some library
25370
25371 1999-03-14  Erez Zadok  <ezk@cs.columbia.edu>
25372
25373         * config.sub: recognize hppa2.0w, yet to be installed at GNU
25374
25375         * config.guess: minor update for FreeBSD-elf, yet to be installed
25376         at GNU
25377
25378 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25379
25380         * ltconfig.in (bsdi4*, sys_lib_search_path_spec,
25381         sys_lib_dlsearch_path_spec): fix thinko in variable names; add
25382         standard directories
25383
25384         * ltmain.in (exclude_expsyms): exclude symbols before sorting,
25385         otherwise only the sorted list will have them excluded
25386
25387         * ltconfig.in (file_magic_cmd, file_magic_test_file, freebsd-elf*,
25388         bsdi4*): use full pathnames when possible
25389
25390         * Makefile.am (all-recursive): depend on ACINCLUDE_M4_LIST
25391         (all-local, check-local): remove, unused
25392
25393         * doc/PLATFORMS: updated platforms tested on 1.2f-pre; clean up;
25394         reorder; untabify
25395
25396         * config.guess, config.sub: updated from GNU common
25397
25398         * doc/libtool.texi: notes on thread-safety problems of
25399         libltdl/dlopen on GNU/Linux and FreeBSD
25400
25401         * ltconfig.in (aix3*, aix4*): GNU ld on AIX is very broken: it
25402         cannot create working shared libraries.  Print a warning
25403         suggesting the user not to use it and disable shared libraries.
25404
25405 1999-03-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
25406
25407         * ltconfig.in (global_symbol_to_cdecl): was reset before trying
25408         `symprfx=_', rendering the test with `_' useless
25409
25410         * doc/libtool.texi (AM_PROG_LIBTOOL): eliminate overfull boxes
25411
25412         * doc/libtool.texi: complete dlopening/libltdl documentation
25413
25414         * ltconfig.in (osf3*, osf4*, deplibs_check_method): pass_all does
25415         not really work; use file_magic instead.
25416         (osf3*, osf4*): customize sys_lib_[dl]search_path_spec
25417
25418         * ltconfig.in (file_magic_test_file): new variable; if set, it
25419         will be used as an argument for $file_magic_cmd to test whether
25420         the regex in deplibs_check_method matches its output
25421         (file_magic_cmd): use full pathnames whenever possible
25422
25423         * ltconfig.in (sys_lib_dlsearch_path_spec): new variable, that
25424         lists the system *run-time* search path.  Listed directories are
25425         not implicitly hard-coded into executables.
25426         * ltmain.in: use it, but *never* discard -R flags
25427         * doc/libtool.texi: document it
25428         * NEWS: ditto
25429         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
25430
25431         * tests/sh.test: look for `$Xsed' without `$echo "X...'
25432         * ltconfig.in, ltmain.in: fixed a few such occurrences
25433
25434         * ltmain.in (-static, -all-static): revert March 11's patch, I was
25435         barking up the wrong tree
25436
25437 1999-03-12  Thomas Tanner  <tanner@gmx.de>
25438
25439         * libltdl/ltdl.c: removed FILENAME_MAX since LTDL_FILENAME_MAX
25440           is sufficient and doesn't break HP/UX
25441
25442 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
25443
25444         * ltconfig.in: (global_symbol_pipe) extract symbol tag from the
25445         output of NM too
25446         (global_symbol_to_cdecl): new variable; convert the output of
25447         global_symbol_pipe to valid C declarations; on HP/UX, convert
25448         text symbols to function declarations
25449         * libtool.m4: similar modifications
25450         * doc/libtool.texi: document new variable
25451         * ltmain.in: use global_symbol_to_cdecl to generate lt_dlpreopened
25452         symbols; avoid extracting symbol lists from dlpreopened files
25453         twice; do not filter symbols from dlpreopened libraries
25454         * TODO: fixed HP/UX dlpreopening problem
25455
25456         * ltmain.in (-static, -all-static): set dlopen_self to
25457         $dlopen_self_static regardless of link_static_flag or pic_flag
25458
25459         * ltmain.in: FreeBSD bug that needs symbol table compiled with
25460         -fPIC is fixed in release 3.1; use it only for 2.* and 3.0
25461
25462 1999-03-11  Thomas Tanner  <tanner@gmx.de>
25463
25464         * ltmain.in: when building a library it doesn't make
25465           sense to remove a relinked program ("lt-" prefix)
25466
25467 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
25468
25469         * mdemo/main.c (main, test_dl, test_dlself): propagate error
25470         conditions better, to avoid false positives
25471
25472         * */configure.in: AC_SUBST(LIBTOOL_DEPS)
25473         * */Makefile.am $(OBJECTS): depend on libtool
25474         (libtool): rebuild automatically
25475
25476         * ltconfig.in: set dlopen_* variables to unknown when appropriate
25477         * ltmain.in: only emit warning about lack of AC_LIBTOOL_DLOPEN if
25478         *all* dlopen_* variables are set to unknown
25479
25480 1999-03-11  Thomas Tanner  <tanner@gmx.de>
25481
25482         * ltmain.in: delete the old output files (incl. the relinked binary)
25483           before linking.
25484
25485         * ltconfig.in: replaced `configure' with $progname and all
25486           line numbers with @LINENO@
25487
25488 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
25489
25490         * libltdl/ltdl.c (strdup): cannot return str when it's NULL
25491         because of const correctness
25492
25493 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
25494
25495         * libltdl/ltdl.c (strdup): always use our own, because the
25496         standard strdup won't use lt_dlmalloc
25497
25498         * ltconfig.in (dlfcn.h): function definition may cause warnings;
25499         define variable instead
25500
25501         * ltmain.in: properly create an export file for a program,
25502         avoiding error messages about not finding it
25503
25504         * TODO: need to document AC_LIBLTDL_*; static self dlopening
25505         problem fixed
25506
25507         * libtool.m4 (AC_LIBTOOL_DLOPEN): just set lt_dlopen=yes
25508         (AC_LIBTOOL_SETUP): if lt_dlopen=yes, add --enable-dlopen to
25509         libtool_flags; drop --enable-dlopen-self
25510         * ltconfig.in: perform all the dirty work of testing for dlopening
25511         support, because we need platform-dependent equivalents for
25512         -export-dynamic, for self dlopening, and -static, for static self
25513         dlopening
25514         (dlopen_self_static): new configuration variable that is set to
25515         yes only if static programs can dlopen themselves
25516         * ltmain.in (-static, -all-static): dlopen_self=dlopen_self_static
25517
25518         * libltdl/configure.in (libltdl_cv_need_uscore): do not assume
25519         dlfcn.h and LTDL_LAZY exist; use LTDL_GLOBAL and LTDL_LAZY_OR_NOW.
25520         This test is likely to fail if self-dlopening does not work,
25521         especially because we do not link the program with
25522         -export-dynamic.  Let's just hope that platforms whose symbol
25523         names start with underscores will also accept underscores for
25524         dlopen.  We should probably use libtool to compile and link this
25525         test, so that we can use -export-dynamic.
25526
25527         * mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h
25528
25529         * configure.in: fix AC_OUTPUT_COMMANDS for ltconfig and ltmain.sh
25530         so that they work if srcdir is relative too
25531
25532         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
25533         avoid introducing multiple --enable options when re-running
25534         config.status
25535         * libltdl/configure.in: if enable_ltdl_* is not set, assume no
25536         * configure.in: if enable_ltdl_install is not set, enable it
25537
25538         * libltdl/configure.in: only assume implicit installation if
25539         libltdl was libtoolized.  If not, print a warning message
25540         suggesting the use of --enable-ltdl-install or of one of the
25541         AC_LIBLTDL_* macros.
25542
25543         * libtool.m4 (AC_LIBTOOL_SETUP): new macro, that does all the
25544         configure-work that AC_PROG_LIBTOOL used to do; add
25545         --cache-file=$cache_file to libtool_flags
25546         (AC_PROG_LIBTOOL): call AC_LIBTOOL_SETUP, save the cache, run
25547         ltconfig and reload the cache
25548         * configure.in: run AC_LIBTOOL_SETUP, then set LIBTOOL_FLAGS to
25549         libtool_flags
25550         * ltconfig.in: support --cache-file switch.  If it is used, load
25551         the cache in the beginning and save it just before terminating
25552
25553         * tests/Makefile.am (TESTS): run demo-nofast before demo-shared
25554
25555         * configure.in: create ltconfig and ltmain.sh at the end of
25556         config.status, if they do not exist.  This fixes the bootstrap
25557         problem reported by Erez Zadok <ezk@cs.columbia.edu>
25558
25559 1999-03-10  Thomas Tanner  <tanner@gmx.de>
25560
25561         * NEWS: sorted by importance
25562         * Makefile.am: set LIBTOOL_FLAGS when generating libtool
25563         * configure.in: check for dlopen support and set LIBTOOL_FLAGS
25564           accordingly
25565
25566         * configure.in: fix spacing for --disable-ltdl-install,
25567           always configure libltdl, add libltdl/acinclude.m4 to
25568           ACINCLUDE_M4_LIST, disable installation of libltdl if necessary
25569         * libltdl/Makefile.am: set version info for libltdl.la
25570         * libltdl/configure.in: don't check whether
25571           enable_ltdl_convenience/install was set so that libltdl
25572           can be used as independent package (libltdl.tar.gz) without
25573           the need to use --enable-ltdl*
25574         * libltdl/ltdl.c: minor cleanups, allocate the line cache
25575           dynamically (lt_dlopen)
25576
25577 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
25578
25579         * libltdl/ltdl.c (lt_dlopen): some preprocessors choke if the `#'
25580         of `#define' is not in column 1; let's go back to fortran! :-)
25581         Add #undefs too, to avoid potential warnings or errors.
25582
25583 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
25584
25585         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
25586         renamed convenience libltdl, dropped toinst hack for installable
25587         * libltdl/Makefile.am: ditto
25588         * libltdl/configure.in: ditto; abort if none of the macros is used
25589
25590         * ltmain.in: $output_objdir/$objdir/ -> $output_objdir/lt-
25591
25592 1999-03-09  Thomas Tanner  <tanner@gmx.de>
25593
25594         * libltdl/ltdl.c (lt_dlopen): don't hardcode the length of the
25595           constant strings
25596
25597 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
25598
25599         * Makefile.am (install-data-hook): install libltdl as a directory,
25600         not as a tar-file, so that we do not modify the build tree at make
25601         install time
25602         * libtoolize.in (ltdl, ltdl_tar): update
25603
25604         * configure.in, Makefile.am, NEWS: install libltdl by default
25605
25606         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
25607         new macros
25608         * NEWS: ditto
25609         * libltdl/configure.in: if none of the new macros or configure
25610         arguments are used, warn and build convenience library only
25611         * libltdl/Makefile.am: conditionally build convenience libltdl.la
25612         * mdemo/configure.in: use AC_LIBLTDL_CONVENIENCE
25613         * mdemo/Makefile.am: refer to @LIBLTDL@
25614
25615 1999-03-09  Gary V. Vaughan <gary@gnu.org>
25616
25617         * NEWS: updated.
25618
25619 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
25620
25621         * ltmain.in: extract symbols from program objects to nlist first,
25622         then translate them to the export_symbols format.  Now it works,
25623         but it appears to be needlessly extracting the symbol list from
25624         dlpreopened libraries twice
25625
25626         * ltmain.in: temporarily disable dlopen_self when linking with
25627         -static or -all-static, until we figure out how to test whether it
25628         works at configure time
25629
25630         * TODO: remember to fix this later
25631
25632         * tests/build-relink.test: when hell is expected to fail, run it
25633         within a subshell and redirect stderr to stdout, so that dynamic
25634         linker errors are only printed in verbose mode
25635
25636         * ltmain.in (hardcode_libdir_separator, compile_rpath,
25637         finalize_rpath): only substitute hardcode_libdir_flag_spec if
25638         hardcode_libdirs is non-empty
25639
25640         * libtool.m4 (AC_LIBTOOL_DLOPEN): do not depend on the existence
25641         of dlfcn.h nor on the definition of RTLD_LAZY
25642
25643         * tests/build-relink.test: hellT was renamed to lt-hell
25644
25645         * libltdl/Makefile.am (@TOINST@/libltdl.la): do not hide the
25646         command that creates the TOINST directory; remove `-o $@' from the
25647         LINK command, $(LINK) already contains it.
25648
25649 1999-03-08  Thomas Tanner  <tanner@gmx.de>
25650
25651         * doc/libtool.texi (tests): documented demo-nofast.test and
25652           renamed cdemo* to demo*
25653
25654 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
25655
25656         * libltdl/Makefile.am, libltdl/configure.in, mdemo/Makefile.am:
25657         libltdl must not be renamed; if there's a problem with the install
25658         option, let's fix it, not just work around it by breaking code of
25659         users of the convenience library
25660
25661         * tests/build-relink.test: link broken libhello.la with at least
25662         one libtool object
25663
25664 1999-03-08  Thomas Tanner  <tanner@gmx.de>
25665
25666         * TODO: updated (libltdl build problem fixed)
25667         * doc/libtool.texi (libltdl interface): removed the line which
25668           promised that lt_dlopen will return NULL if it can't resolve all
25669           symbols
25670         * libltdl/Makefile.am, libltdl/configure.in: fixed build problem:
25671           renamed the convenience library to libltdlc.la and the
25672           installed version to libltdl.la
25673         * ltmain.in (wrapper script): replaced the "T" suffix of the program
25674           file name with a "lt-" prefix
25675         * mdemo/Makefile.am: use libltdlc.la
25676         * tests/Makefile.am, tests/demo-nofast.test: added demo to
25677           test --enable-fast-install=no
25678
25679 1999-03-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
25680
25681         * tests/Makefile.am (TESTS): run hardcode before build-relink
25682         trashes libhello.la
25683         * tests/hardcode.test (need_prefix): set to yes so that _inst is
25684         not removed
25685
25686         * ltmain.in (compile_command): append finalize search path to
25687         compile search path
25688
25689         * tests/build-relink.test: new; check shlibpath_overrides_runpath
25690         * tests/Makefile.am (TESTS): add build-relink.test; remove
25691         hardcode.test duplicates
25692         * doc/libtool.texi: document it
25693
25694         * ltmain.in (relink_command): do not prepend cd `pwd` to it, the
25695         scripts already enters the correct directory, and expanding the
25696         pathname would prevent the build tree from moving
25697
25698         * ltconfig.in (enable_fast_install): force it to no only if we
25699         need relink; in the other cases, set it to needless
25700         * ltmain.in (fast_install): if needless, set relink_command empty
25701         * doc/libtool.texi (fast_install, shlibpath_overrides_runpath):
25702         document the new behavior
25703
25704         * ltconfig.in (enable_fast_install): test whether it can be forced
25705         off after shlibpath_overrides_runpath and enable_shared are set
25706
25707 1999-03-07  Thomas Tanner  <tanner@gmx.de>
25708
25709         * TODO: updated
25710         * NEWS: updated
25711
25712         * TODO: scheduled some items for next release/future
25713         * demo/configure.in: use AC_LIBTOOL_DLOPEN
25714         * libtool.m4: added AC_ENABLE/DISABLE_FAST_INSTALL macro
25715         * ltconfig.in: added --disable-fast-install flag
25716         * ltmain.in: partially reverted Alexandre's patch and implemented
25717           on-demand linking in such a way that the old developer-friendly
25718           linking style is optional,
25719           don't hardcode library paths that are in the system search path,
25720           fixed a typo in lib_search_path,
25721           implemented -export-symbols-regex for programs
25722
25723 1999-03-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
25724
25725         * libltdl/ltdl.c (LTDL_LAZY_OR_NOW): renamed from LTDL_NOW; prefer
25726         LAZY loading because it's much faster and NOW is apparently
25727         partially broken on FreeBSD
25728         Reported by Archie Cobbs <archie@whistle.com>
25729
25730         * ltconfig.in (archive_expsym_cmds, solaris, without_gnu_ld):
25731         $lib.exp already starts with $objdir/
25732         Reported by Godmar Back <gback@cs.utah.edu>
25733
25734         * ltmain.in (freebsd): compile symbol table file with pic_flag
25735         only on FreeBSD and when not static linking; it's been causing
25736         trouble on platforms such as OpenBSD.
25737
25738 1999-02-26  Gary V. Vaughan  <gary@gnu.org>
25739
25740         * libtool.m4 (cygwin): s/\\(mingw\\|cygwin\\)32/\\1/g.  Must've
25741         missed this file when I changed to cygnus' new sanction name.
25742
25743         * ltconfig.in (sub_uncdrive): removed.  This won't work with
25744         the next version of cygwin.
25745         (sub_uncdir): removed. We use <drive>:/path/to/executable now.
25746         * libtool.m4 (AC_PROG_LD): removed sub_uncdrive and sub_uncdir.
25747
25748 1999-02-25  Thomas Tanner  <tanner@gmx.de>
25749
25750         * TODO: added items for next alpha release, ILD etc.
25751         * libltdl/ltdl.c: removed unnecessary check from presym_sym,
25752           fixed bug in lt_dlclose, allow lt_dlopenext(NULL),
25753           set deplibs for lt_dlopen(NULL)
25754
25755 1999-02-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
25756
25757         * ltmain.in (file_magic_regex): sed `10q' is faster than `11,$d'
25758
25759 1999-02-22  Thomas Tanner  <tanner@gmx.de>
25760
25761         * ltconfig.in (dlopen, dlopen_self): default is unknown
25762         * ltmain.in: fixed -dlopen self, print a warning
25763           if -dlopen is used without AC_LIBTOOL_DLOPEN
25764         * mdemo/Makefile.am: use -dlopen self
25765
25766 1999-02-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
25767
25768         * ltmain.in: added missing mkdir $progdir for on-demand executable
25769
25770         * ltmain.in: create on-demand executable as $progdir/$$-$program,
25771         and rename it to $progdir/$program only when it's finished, to
25772         avoid race conditions.  We can still get the program linked
25773         multiple times, if multiple instances are started simultaneously
25774         and the program does not exist, but they are very unlikely to
25775         interfere with each other.  There's still a possibility that one
25776         process removes the $program another has just created, and doesn't
25777         replace it before the other tries to run it, in a system whose
25778         `mv' is not atomic, so it will $rm then $mv, but so what? :-)
25779         Locking files have been avoided to prevent dead-locks in case they
25780         are left over after a reboot or crash.
25781
25782         * TODO: removed ILD, soon to be merged, and added convenience
25783         libraries docs
25784
25785         * ltconfig.in (irix5*, irix6*, shlibpath_overides_runpath): yes
25786
25787         * ltmain.in: remove on-demand executable in the proper place, and
25788         just warn if it can't be removed; add wrapper code to test whether
25789         the install-executable is newer than the build-executable, to
25790         relink it when it appears to be out-of-date
25791
25792         * libltdl/configure.in: check for dld.h
25793         * libltdl/ltdl.c: include dld.h
25794         (dld_open) it's spelled memory_error, not no_memory_error
25795         Reported by Stefan Burstroem <f94sbu@efd.lth.se>
25796
25797         * ltmain.in: fix typos in my last change (s/ocmpile/compile/)
25798
25799 1999-02-21  Thomas Tanner  <tanner@gmx.de>
25800
25801         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
25802           when dlopening the executable
25803         * libtool.m4 (AC_LIBTOOL_DLOPEN): removed the redundant "yes: "
25804           prefix for lt_cv_dlopen, renamed lt_cv_dlopen_LIBS
25805           to lt_cv_dlopen_libs (more consistent)
25806         * ltmain.in: implemented -dl[pre]open self, necessary for
25807           lt_dlopen(NULL), generation of exported symbols was broken
25808
25809 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25810
25811         * ltmain.in: avoid duplication of -L switches, it sometimes breaks
25812         IRIX 5.2's linker
25813
25814         * ltconfig.in (freebsd*, finish_cmds): expand objformat here
25815         Reported by Vladimir Kushnir <kushn@mail.kar.net>
25816
25817 1999-02-20  Vladimir Kushnir <kushn@mail.kar.net>
25818
25819         * ltconfig.in (freebsd-elf*, need_version, need_lib_prefix): no
25820         (freebsd-elf*, library_names_spec): add $libname.so instead of
25821         $libname.so$versuffix; add $libname$release.so
25822
25823 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25824
25825         * doc/libtool.texi: remove ticks from menu items; it breaks TeX
25826         Reported by Erez Zadok <ezk@cs.columbia.edu>
25827
25828         * ltmain.in: fixes for export-symbols dry-run
25829
25830         * ltconfig.in (shlibpath_overrides_runpath): new variable;
25831         determines whether LD_LIBRARY_PATH or equivalent can be used to
25832         override a hard-coded library search path; default to unknown
25833         (linux-gnu*): set it to no
25834         (solaris*, sunos4*): set it to yes
25835         * ltmain.in (build_libdirs_flags, build_libdirs, build_rpath): if
25836         shlibpath_overrides_runpath is not yes, arrange that wrapper
25837         scripts create, on demand, programs that use uninstalled libraries
25838
25839         * doc/libtool.texi: document it
25840
25841         * libtool.m4 (AC_LIBTOOL_DLOPEN): check for dlopen in libc before
25842         trying in dl.  Add the actual dlopening type to lt_cv_dlopen, and
25843         add any needed libraries to lt_cv_dlopen_LIBS.  Add test for
25844         MS-Windows' LoadLibrary.  Check whether a program can dlopen
25845         itself only if we really have dlopen(), not some equivalent
25846         function, but leave room for testing with other mechanisms.
25847         (AC_PROG_LIBTOOL): assume some form of dlopen, but not
25848         dlopen(NULL), is available if AC_LIBTOOL_DLOPEN is not used, for
25849         backward compatibility.
25850
25851 1999-02-20  Archie Cobbs  <archie@whistle.com>
25852
25853         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
25854         where appropriate, when dlopening a non-libtool library
25855
25856 1999-02-19  Gary V. Vaughan  <gary@gnu.org>
25857
25858         * ltconfig.in (export_symbols_cmds): renamed from
25859         export_symbols_cmd.
25860         (cygwin, mingw): Be sure to compile the ltdll.c object before
25861         extracting the exported symbol list.  Extract only the names
25862         of the exported symbols from the def file [otherwise we might
25863         run into trouble with -export-symbols-regex].
25864         (archive_expsym_cmds): Regenerate the def file from the symbol
25865         export list.
25866         (delay_variable_subst): New sed expression to allow us to delay
25867         evaluation of $foo in a double_quote_subst evaluated variable by
25868         using \$.
25869         * ltmain.in (export_symbols_cmds): evaluate each ~ delimitted cmd
25870         separately.
25871         * doc/libtool.texi (libtool script contents): new paragraph to
25872         explain the difference between _cmd and _cmds suffixes for
25873         variable names.
25874         (export_symbols_cmds): renamed from export_symbols_cmd.
25875
25876 1999-02-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
25877
25878         * ltconfig.in (ld_shlibs): move -soname and similar flags to the
25879         end of archive_cmds and archive_expsym_cmds, so as to prevent
25880         gcc's collect2 from inserting an object file between -soname and
25881         the library name
25882
25883         * ltconfig.in (openbsd*, netbsd*, library_names_spec): append
25884         alternate name without ${release}, otherwise build fails when
25885         -release is used
25886
25887 1999-02-18  Gary V. Vaughan  <gary@gnu.org>
25888
25889         * ltconfig.in (archive{,_sym}_commands): Be careful not to
25890         re-export the dll entry points DllMain@12, _cygwin_dll_entry@12 and
25891         _cygwin_noncygwin_dll_entry@12 to avoid bugs with the wrong entry
25892         function being called with inter-dll dependencies.
25893         Reported by DJ Delorie <dj@delorie.com>
25894         * THANKS: Added DJ Delorie, since his code inspired the impgen.c
25895         program and because he has patiently answered all of the
25896         irritating dll and win32 questions I have fired at him.
25897
25898         * ltmain.in (version_type):  Oops.  Irix versioning implies that
25899         major version numbers are 1 based (not zero based).  Fixed.
25900
25901         * ltmain.in (version_type): Implement irix versioning.
25902         * ltconfig.in (irix{5,6}*): Use new irix shared object versioning.
25903         * TODO: remove irix versioning from TODO list.
25904
25905         * ltmain.in (impgen.c): Added a new embedded C file that can be
25906         used under win32 to extract a def file (symbol export list) from a
25907         dll that has none.  Code to use it might need to wait for the ILD
25908         merge before it will be useful...
25909
25910 1999-02-18  Thomas Tanner  <tanner@gmx.de>
25911
25912         * TODO: updated
25913         * autogen: only libltdl needs autoheader
25914         * doc/libtool.texi (link mode): documented -export-symbols-regex
25915           and updated -export-symbols
25916         * doc/libtool.texi (script contents): documented
25917           always_export_symbols, export_symbols_cmd, exclude_expsyms,
25918           include_expsyms, dlopen and dlopen_self
25919           more detailed description of need_lib_prefix
25920         * ltconfig.in: a "'" was missing in the default value
25921           of export_symbols_cmd
25922         * ltmain.in: implemented -export-symbols-regex
25923
25924 1999-02-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
25925
25926         * ltconfig.in: (freebsd2*, sunos4*, exclude_expsyms): exclude
25927         _GLOBAL_OFFSET_TABLE_
25928         * ltmain.in: implement exclude_expsyms with egrep
25929
25930         * libltdl/ltdl.c (lt_dlmalloc, lt_dlfree): SunOS' cc can't cope
25931         with argument lists, we __P even in the definition
25932
25933 1999-02-15  Thomas Tanner  <tanner@gmx.de>
25934
25935         * cdemo/Makefile.am: renamed *foo1 to *foo, removed $(MATH_LIB)
25936         * cdemo/foo1.c: renamed to foo.c
25937         * libltdl/ltdl.c: eliminated lt_dltype, in presym_open():
25938           search for @PROGRAM@ if filename == 0, in lt_dlopen():
25939           fixed bug for filename == 0
25940         * libltdl/ltdl.h: use __P macro for lt_dlmalloc/free
25941         * libtool.m4: new macro AC_LIBTOOL_DLOPEN: checks for dlopen
25942           and dlopen(NULL) support
25943         * ltconfig.in: added new variables dlopen and dlopen_self,
25944           --enable-dlopen[-self] flags for AC_LIBTOOL_DLOPEN
25945         * ltmain.in: use dlopen[_self], dlpreopen files if there's no
25946           dlopen support, build lt_preloaded_symbols only if
25947           -dl[pre]open was used, include program symbols if -export-dynamic
25948           was specified and there's no dlopen(NULL) support
25949         * mdemo/configure.in: use AC_LIBTOOL_DLOPEN
25950         * mdemo/main.c: demonstrate lt_dlopen(0)
25951
25952 1999-02-15  Gary V. Vaughan  <gary@gnu.org>
25953
25954         * demo/dlmain.c (_WIN32): The lt_symlist structure is now const,
25955         so my original horrible temporary win32 hack no longer worked.
25956         Here is a new horrible temporary hack to prevent helldl from SEGVing
25957         on win32.  I will fix this properly when we figure out how to do
25958         data exports from dlls.
25959
25960 1999-02-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25961
25962         * libtool.m4 (AC_CHECK_LIBM): do not set MATHLIB or AC_SUBST it,
25963         this has a negative side-effect of causing automake to add MATHLIB
25964         to every single Makefile.  Let's use plain AC_CHECK_LIB, so that
25965         LIBS get set, until we find a better alternative
25966         * *demo/Makefile.am: remove $(MATHLIB)
25967
25968         * libltdl/configure.in: add a DESCRIPTION argument to AC_DEFINEs
25969         where appropriate, so as to get rid of acconfig.h
25970         * libltdl/acconfig.h: removed
25971
25972 1999-02-13  Thomas Tanner  <tanner@gmx.de>
25973
25974         * *demo/Makefile.am: use $(MATHLIB)
25975         * *demo/configure.in: use AC_CHECK_LIBM
25976         * doc/libtool.texi: renamed file_magic_command to file_magic_cmd,
25977           renamed archive_sym_cmds to archive_expsym_cmds
25978         * ltconfig.in: ditto
25979         * ltmain.in: ditto
25980         * libltdl/ltdl.c: use lt_dlmalloc/free
25981         * libltdl/ltdl.h: define lt_dlmalloc/free
25982         * libtool.m4: added AC_CHECK_LIBM macro
25983         * ltconfig.in: renamed archive_sym_cmds to archive_expsym_cmds,
25984           added always_export_symbols, export_symbols_cmd, exclude_expsyms,
25985           include_expsyms, removed archive_cmds for cygwin/mingw and AIX,
25986           on Solaris store the exported symbols list in objdir
25987         * ltmain.in: allow -export-symbols for modules, use thread_safe flag,
25988           add include_expsyms to the exported symbols
25989
25990 1999-02-12  Gary V. Vaughan  <gary@gnu.org>
25991
25992         * libltdl/ltdl.h (_LTDLL_EXTERN): libltdl is no longer linked as a
25993         shared library, so the _declspec's were preventing the linker from
25994         resolving symbols on win32.  They have been removed now.
25995
25996 1999-02-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
25997
25998         * ltmain.in: don't try to read objdir/libname.la before it is
25999         created!
26000
26001         * ltmain.in: create libname.lai at link time, not at install time,
26002         but still create it at install time if it is missing
26003         Reported by Akim Demaille <demaille@inf.enst.fr>
26004
26005         * libltdl/ltdl.c (tryall_dlopen): strcmp filenames was reversed
26006
26007 1999-02-11  Thomas Tanner  <tanner@gmx.de>
26008
26009         * autogen: libltdl needs autoheader
26010         * demo/Makefile.am: renamed hell.debug to hell.static
26011           (we're demonstrating static linking, not debugging)
26012         * tests/demo*: ditto
26013         * doc/libtool.texi (libltdl): documented new lt_dlopen(NULL)
26014           feature
26015         * libltdl/acconfig.h: required for config.h
26016         * libltdl/configure.in: use config.h
26017         * libltdl/ltdl.c: use config.h, support lt_dlopen(NULL)
26018           (returns a handle for the program itself)
26019         * ltconfig.in: minor reformatting
26020         * ltmain.in: in lt_preloaded_symbols always define
26021           the program's symbols first, for -export-dynamic list all
26022           program symbols together, -export-symbols was broken for
26023           programs, minor reformatting
26024         * mdemo/Makefile.am: renamed mdemo.debug to mdemo.static
26025         * tests/mdemo*: ditto, mdemo.test was completely broken
26026
26027 1999-02-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
26028
26029         * ltconfig.in (irix5*, irix6*, osf3*, osf4*): do not use
26030         -set_version in archive_cmds if verstring is empty
26031         (irix6*, shlibpath_var, sys_lib_search_path-spec,
26032         deplibs_check_method): set appropriate values depending on
26033         selected ABI, -32, -n32 or -64, as set in LD by libtool.m4
26034         (uts4*): remove dot between .so and versuffix
26035
26036 1999-02-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
26037
26038         * ltconfig.in (irix5*, irix6*, deplibs_check_method): use
26039         file_magic for inter-library dependency tracking
26040
26041         * ltconfig.in (irix5*, hardcode_libdir_separator): set it to a
26042         colon, because on IRIX 5 only the last -rpath switch prevails, and
26043         it can be a list of colon-separated directories.  This change will
26044         affect irix6 too, but that's not a problem.
26045
26046         * ltconfig.in (irix5*, library_names_spec): add soname_spec,
26047         otherwise we can't dlopen
26048
26049 1999-02-08  Thomas Tanner  <tanner@gmx.de>
26050
26051         * ltconfig.in: according to Marcus Sundberg <mackan@stacken.kth.se>
26052           HP/UX, IRIX, OpenBSD, Digital Unix and SunOS support
26053           need_version=no and need_lib_prefix=no,
26054           fixed a bug in Solaris' archive_sym_cmds
26055
26056 1999-02-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
26057
26058         * libtool.m4 (ac_cv_sys_global_symbol_pipe): accept TAB in
26059         addition to space as separator, and allow more than one space
26060         between the symbol code and the symbol name; HP/UX's nm, for
26061         example, uses two spaces
26062         * ltconfig.in (global_symbol_pipe): ditto
26063         (bsdi4, deplibs_check_method): variable name was misspelled
26064         * libltdl/configure.in (libltdl_cv_preloaded_symbols): rewrite
26065         test, so as not to depend on the way global_symbol_pipe is
26066         initialized; the current test would get false positives, as
26067         global_symbol_pipe was initialized `x=""', not `x='
26068
26069         * libltdl/ltdl.c (find_module): initialize filename if dir is NULL
26070         Reported by Godmar Back <gback@cs.utah.edu>
26071
26072 1999-02-04  Godmar Back  <gback@cs.utah.edu>
26073
26074         * libltdl/ltdl.c (lt_dlopenext): missing space for terminator when
26075         allocating memory for shlib_ext
26076
26077 1999-02-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
26078
26079         * libltdl/ltdl.c (lt_dlopenext): tmp would be trashed if shlib_ext
26080         was longer than 3 characters
26081
26082 1999-02-02  Gary V. Vaughan  <gary@gnu.org>
26083
26084         * ltconfig.in: new config.guess returns *-*-cygwin now instead of
26085         *-*-cygwin32.  sed -e 's%\(cygwin\|mingw\)32%\1%g' ltconfig.in
26086         * ltmain.in:   sed -e 's%\(cygwin\|mingw\)32%\1%g' ltmain.in
26087
26088         * ltconfig.in (hardcode_libdir_flag_spec, allow_undefined_flag,
26089         archive_cmds, archive_sym_cmds, old_archive_from_new_cmds):
26090         removed duplication of config by assuming that `test $with_gcc =
26091         yes' implies gnu ld, otherwise MSVC++ (which I haven't tested
26092         since I inheritted the code from Ian Lance Taylor btw!) is implied.
26093
26094 1999-01-28  Gary V. Vaughan  <gary@gnu.org>
26095
26096         * ltmain.in: Reverted this change of Alexandre's from the
26097         1999-01-25; "don't try to use .o instead of .lo just because
26098         there's no PIC flag.  It loses if --disable-static, and there's
26099         not much point if we're referring to the same file anyway...",
26100         because not all linkers will accept .lo object names.
26101         * ltmain.in: In the case where --disable-static is specified (as
26102         noted in Alexandre's log entry), we just link some .o files to
26103         prevent the original error.
26104         Reported by Andrey Slepuhin <pooh@msu.ru>
26105
26106 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
26107
26108         * libtoolize.in: search for A[MC]_PROG_LIBTOOL, not
26109         AM_PROG_LIBTOOL
26110         Reported by Jeff Garzik <jgarzik@pobox.com>
26111
26112 1999-01-27  Gary V. Vaughan  <gary@gnu.org>
26113
26114         * THANKS: Now that we have a policy, applied it to the existing
26115         list.  This in no way demeans the work of those people removed
26116         from the THANKS file, who are still credited in the ChangeLogs and
26117         without who's work, libtool would not work so well on many
26118         platforms, but serves to highlight the outstanding and continued
26119         contribution the remaining people have made.  And I quote, "We
26120         reserve THANKS for people who have made major contributions, and
26121         leave the credit to the others for the ChangeLog only."
26122
26123         * THANKS: added Sam Vilain.
26124         * ltconfig.in ($echo):  When using printf to replace echo the shell
26125         expands %s\n to %sn.  Changed to use "%s\n" (with quotes).
26126         Reported by Sam Vilain <sam.vilain@nz.unisys.com>
26127
26128 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
26129
26130         * libltdl/ltdl.c (find_file): fix endless loop condition
26131         (find_module): filename allocation was off by 1
26132
26133         * libltdl/Makefile.am (distclean-local): renamed from
26134         distclean-hook, that didn't work
26135
26136         * libltdl/ltdl.c (lt_dlopen, non-.la): find_file now returns 0 on
26137         failure
26138
26139         * Makefile.am (ltconfig, ltmain.sh): some broken makes don't like
26140         macros in targets; replace $(srcdir) with @srcdir@
26141         * configure.in (ACINCLUDE_M4_LIST): same problem; expand $srcdir
26142
26143         * libltdl/Makefile.am (@TOINST@/libltdl.la): if installation is
26144         enabled, create to-be-installed libltdl.la within @TOINST@
26145         directory
26146         (noinst_LTLIBRARIES): even if installation is enabled, build
26147         convenience libltdl.la, otherwise builds of random packages may
26148         fail if the user happens to enable installation
26149         (distclean-hook): wipe out $(TOINST)
26150         * libltdl/configure.in: set TOINST and LIBLIBS as appropriate;
26151         don't set NOINSTLIBS any more
26152         * mdemo/Makefile.am: use libltdl.la
26153
26154         * libltdl/ltdl.c (find_file): oops, filenamesize was miscomputed
26155
26156         * libltdl/ltdl.c (find_file): allocate filename dynamically
26157
26158         * libltdl/configure.in (AC_PROG_LIBTOOL): automake does not
26159         recognize it and fail, better keep using AM_PROG_LIBTOOL until the
26160         next release of automake
26161         * demo/configure.in, cdemo/configure.in: ditto
26162         * depdemo/configure.in, mdemo/configure.in: ditto
26163
26164         * libltdl/ltdl.c: make all global strings char[], not char*; check
26165         that all calls to malloc() are properly cast
26166         (strdup, strchr, strrchr, trim, free_vars): declare as inline
26167         (find_module): allocate filename dynamically; support null dir
26168         (free_vars): free dir and name only if non-null
26169         (lt_dlopen): keep dir as NULL if not given; fix expression that
26170         calculated the size of name; only free and name if non-null
26171         (lt_dlopenext): allocate tmp dynamically
26172
26173         * configure.in (pkgdatadir): expand ${PACKAGE} at configure-time,
26174         just like automake does
26175
26176         * configure.in (pkgdatadir): define pkgdatadir explicitly, and
26177         comment that automake does not need it, but libtoolize does
26178
26179         * Makefile.am (aclocaldir): do not set it explicitly, automake
26180         does already
26181
26182         * configure.in (TIMESTAMP): use mkstamp here too
26183
26184 1999-01-27  Thomas Tanner  <tanner@gmx.de>
26185
26186         * cdemo/configure.in: renamed AM_PROG_LIBTOOL to AC_PROG_LIBTOOL
26187         * demo/configure.in: likewise
26188         * depdemo/configure.in: likewise
26189         * libltdl/configure.in: likewise
26190         * mdemo/configure.in: likewise
26191         * libltdl/ltdl.c: in find_module() check whether libdir is defined,
26192           tryall_dlopen(): move deallocation of an already opened handle
26193           to lt_dlopen(), allocate the directory in lt_dlopen() dynamically,
26194           minor cleanups, fixed memory leak (name)
26195         * libtool.m4: renamed all AM_ macros to AC_ and added aliases for
26196           compatibilty, updated AC_SYS_NM_PARSE (no undefined symbols,
26197           don't count the symbols)
26198         * ltconfig.in: added thread_safe_flag_spec (not used yet),
26199           added generic variable for linker options "linkopts" in
26200           all archive_cmds
26201         * ltmain.in: added -thread-safe flag (unused)
26202
26203 1999-01-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
26204
26205         * ltconfig.in (LTCONFIG_VERSION): damn!, adding TIMESTAMP doesn't
26206         always work, because then different ChangeLog timestamps fail to
26207         pass the version test.  Instead of forcing both ltconfig and
26208         ltmain.sh to be updated every time ChangeLog changes, better
26209         revert it
26210
26211         * ltconfig.in (LTCONFIG_VERSION): add TIMESTAMP, remove
26212         explicit quotes and add it to the list of variables to quote
26213
26214         * ltmain.in: reworded `dropped inter-library dependencies'
26215         message, and added a warning about inter-library dependencies even
26216         for non-module builds
26217
26218 1999-01-26  Gary V. Vaughan  <gary@gnu.org>
26219
26220         * Makefile.am (install-data-hook): Don't show the if expression
26221         that tests for gzip with a conditional error message; just do it
26222         quietly and show the error if it fails, or the next action if it
26223         succeeds.
26224
26225         * configure.in:  It seems Alexandre accidentally removed the
26226         AC_SUBST(pkgdatadir) line recently which breaks libtoolize.
26227         Reverted that small change.
26228
26229 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
26230
26231         * libltdl/ltdl.c (find_module): test old_name and dlname for NULL,
26232         not len==0
26233
26234         * libltdl/configure.in (libltdl_cv_objdir): yes, appending the "/"
26235         in configure.in was much simpler
26236         * libltdl/ltdl.c (objdir): ditto
26237
26238         * libltdl/ltdl.c (objdir): string collation isn't portable; strcat
26239         "/" explicitly.  Or should this be moved to configure.in?
26240
26241 1999-01-25  Thomas Tanner  <tanner@gmx.de>
26242
26243         * libltdl/ltdl.c: allocate the variables in lt_dlopen() dynamically
26244
26245 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
26246
26247         * ltmain.in (file_magic): use egrep instead of expr to support
26248         more general regular expressions
26249         (file_regex): remove it; the name is misleading, it's not used
26250         anywhere, and probably will never be
26251         * ltconfig.in, doc/libtool.texi: ditto
26252         * ltconfig.in (linux-gnu*, deplibs_check_method): extend regex to
26253         support `LSB dynamic lib' in the output of `file'
26254         Reported by Scott D. Heavner <sdh@po.cwru.edu>
26255
26256         * ltmain.in (dependency_libs, xrpath): add -R switches to
26257         dependency_libs only just before creating the .la file; they
26258         should not be passed to the C compiler or linker at
26259         library-creation time, since we don't know whether it is supported
26260
26261         * ltconfig.in (freebsd2.2*, hardcode_minus_L): for FreeBSD 2.2.6,
26262         this must be `no'
26263
26264         * mkstamp: move the sed script to extract revision and date
26265         information into a separate shell-script, so that we can break
26266         lines between commands; FreeBSD's sed doesn't like `;' after `t'
26267         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
26268         * Makefile.am: use mkstamp
26269         * THANKS: added Axel Thimm
26270
26271         * ltmain.in: don't try to use .o instead of .lo just because
26272         there's no PIC flag.  It loses if --disable-static, and there's
26273         not much point if we're referring to the same file anyway...
26274
26275         * ltmain.in (pass_all=none, droppeddeps): set only if deplibs was
26276         non-empty
26277
26278 1999-01-24  Thomas Tanner  <tanner@gmx.de>
26279
26280         * libltdl/ltdl.c: minor bugfixes, append a "/" the search
26281           directory only if necessary
26282         * ltconfig.in: added support for FreeBSD >= 3.0
26283           (patch from Kurt D. Zeilenga)
26284         * THANKS: added Kurt D. Zeilenga
26285
26286 1999-01-24  Thomas Tanner  <tanner@gmx.de>
26287
26288         * doc/libtool.texi (libltdl): list supported dlopen mechanisms,
26289           added function lt_dlopenext(), removed reference to
26290           LTDL_PRELOADED_SYMBOLS in LTDL_SET_PRELOADED_SYMBOLS
26291         * libltdl/ltdl.c: partially reverted Alexandre's dynamic string
26292           allocation change (it was not necessary and the code was unreadable),
26293           cleanups, removed usr_search_path_size, renamed usr_search_path
26294           to user_search_path, in find_module() also check for moved
26295           modules, merged find_file() and find_library(),
26296           added lt_dlopenext(), in lt_dladdsearchdir() no longer reset
26297           the search path if 'search_dir' == NULL and don't use realloc()
26298           (might not be available on all platforms),
26299           removed __P((void)) in the declaration of lt_dlgetsearchpath()
26300         * libltdl/ltdl.h: added lt_dlopenext()
26301         * ltconfig.in: AIX archive commands were broken,
26302           fixed a MAJOR bug in global_symbol_pipe which caused
26303           "demo-shared.test;demo-make.test" to fail (libtool must not extract
26304           undefined symbols of libraries, i.e. symcode must not contain 'U')
26305         * tests/Makefile.am (clean-local): "make distclean" in cdemo, too
26306
26307 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26308
26309         * Makefile.am (ltconfig, ltmain.sh): add ChangeLog Revision to
26310         TIMESTAMP
26311         * configure.in: get values of PACKAGE and VERSION set by
26312         AM_INIT_AUTOMAKE, and extract only TIMESTAMP from the ChangeLog
26313
26314         * libltdl/ltdl.c (lt_dlopen): if we're reusing a previously opened
26315         handle, don't reset its name nor add it to the list, and free the
26316         name we have allocated
26317         Reported by Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
26318
26319         * Makefile.am (ltconfig, ltmain.sh, TIMESTAMP): let's not assume
26320         anything about the format of the date, just that it does not
26321         contain `$'
26322
26323 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
26324
26325         * configure.in (date): echo the version number during
26326         configuration, and show $date for cvs versions.
26327
26328         * Makefile.am ($(srcdir)/ltconfig): Oops.  cvs co keyword
26329         expansion ate the sed expression! Changed sed separator to '%'
26330         because there are '/' in the date.  Added missing '\(' to search
26331         expression.  Inserted a null string to stop cvs from expanding it
26332         next time =)O|
26333         ($(srcdir)/ltmain.sh): ditto.
26334
26335 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26336
26337         * Makefile.am (TSDEPS_DIST): dist-time dependencies for timestamps
26338         (timestamps, update-timestamps): check whether TSDEPS_DIST are
26339         up-to-date and update ltconfig and ltmain.sh if needed
26340         (ltconfig, ltmain.sh): depend on TSDEPS; replace @TIMESTAMP@ with
26341         the Date tag in the ChangeLog
26342         (TSDEPS): empty unless overridden by update-timestamps
26343         * ltconfig.in, ltmain.in (TIMESTAMP): append timestamp to most
26344         references to VERSION
26345
26346 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
26347
26348         * ltmain.in (ild): Revert the change which allowed libtool to
26349         link libraries with dependencies on .la libs.
26350         * NEWS: Removed reference to win32, incase 1.3 ships before
26351         ild is ready.
26352         * doc/PLATFORMS: Removed i686-pc-cygwin32, for the same reason.
26353         * doc/libtool.texi: Removed win32 refs, for the same reason.
26354
26355 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26356
26357         * ltmain.in (Xsed): add 1 to Xsed definition that goes into
26358         temporary wrapper scripts
26359         * libtool.m4: we don't have Xsed here, expand it manually
26360         Reported by Pavel Roskin <pavel_roskin@geocities.com>
26361
26362 1999-01-22  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
26363
26364         * ltmain.in (finalize_hardcode_libdirs, finalize_rpath): in
26365         platforms that use -rpath, programs must be finalized at
26366         installation time, otherwise build-tree programs will
26367         prefer installed libraries over build-tree ones
26368
26369 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26370
26371         * mdemo/Makefile.am (../libltdl/libtool): if it does not exist,
26372         the sub-make for libltdlc.la will take care of it, but we must at
26373         least provide an empty rule for it, otherwise the sub-make will
26374         never run
26375
26376         * demo/configure.in, demo/Makefile.am (DLPREOPEN): reverted; it
26377         didn't make any difference.
26378
26379 1999-01-21  Gary V. Vaughan  <gary@gnu.org>
26380
26381         * THANKS: Added Chris Laas <golem@MIT.EDU>
26382
26383         From Chris Laas <golem@MIT.EDU>
26384         * ltmain.in (compile):  corrected a typo in compile mode which
26385         caused "gcc: unrecognized option -c-fPIC" errors due to a missing
26386         space.
26387
26388 1999-01-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
26389
26390         * libltdl/configure.in: reintroduce code to detect native library
26391         extension
26392         * libltdl/ltdl.c (lt_dlopen): if a .la file name is given, that's
26393         all.  Otherwise, lt_dlopen now tries to append .la first.  If this
26394         fails, it tries the given filename, and, at last, tries to append
26395         the native library extension to the given filename.
26396         * doc/libtool.texi (lt_dlopen): explain new lookup strategy
26397
26398         * libltdl/ltdl.c: major rewrite to avoid almost all fixed-size
26399         buffers; only `tmp' in lt_dlopen remained.  But the code got ugly
26400         :-(
26401
26402         * ltconfig.in (linux-gnu*, finish_cmds): remove erroneous backslash
26403
26404         * demo/configure.in: set DLPREOPEN to -dlopen if we don't have
26405         shared libraries
26406         * demo/Makefile.am (DLPREOPEN): use instead of -dlpreopen
26407         (STATIC): use $(STATIC), not @STATIC@
26408         * mdemo/Makefile.am (STATIC): ditto
26409
26410         * tests/demo-shared.test, tests/demo-static.test: new tests
26411         * tests/mdemo-shared.test, tests/mdemo-static.test: ditto
26412         * tests/Makefile.am: ditto
26413         * doc/libtool.texi: document them
26414         * demo/Makefile.am, mdemo/Makefile.am (STATIC): do not use
26415         -static unconditionally, it can't work with --disable-static
26416         * demo/configure.in, mdemo/configure.in: check whether libtool was
26417         configured to build static libraries and, if not, set STATIC to an
26418         empty string
26419
26420 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26421
26422         * ltmain.in (module, droppeddeps): if libtool could not satisfy
26423         all dependencies of a module, it will only build a static version
26424         of it, and display a warning message
26425
26426 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
26427
26428         * ltconfig.in (aix4*, with_gcc, archive_cmds): fix typo in Andrey
26429         Slepuhin's last patch
26430
26431 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26432
26433         * Makefile.am (@DIST_MAKEFILE_LIST@): work around Ultrix /bin/sh bug
26434         * tests/nomode.test (must specify a MODE): ditto
26435         Reported by Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
26436         * THANKS: Added Rainer Orth
26437
26438 1999-01-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
26439
26440         * ltconfig.in: No known version of Solaris 2 hardcoded -L paths.
26441
26442 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
26443
26444         * ltmain.in: s/n\'t/ not/
26445         * doc/PLATFORMS: updates for sunos4/m68k and aix
26446
26447 1999-01-20  Andrey Slepuhin  <pooh@msu.ru>
26448
26449         * ltconfig.in (aix4*): check for reworked collect2, always pass
26450         -bnoentry option to linker when building a shared library
26451
26452 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26453
26454         * ltmain.in (file_magic): follow soft-links before running `file'
26455         on the candidate library; try to avoid entering endless loop
26456         Suggested by Nix <nix@esperi.demon.co.uk>
26457
26458         * ltconfig.in (linux*, solaris*, bsdi4*, sys_lib_search_path):
26459         remove expansion of $LD_LIBRARY_PATH
26460         * ltmain.in (lib_search_path): append the expansion of $shlibpath_var
26461         * doc/libtool.texi: document it
26462
26463         * THANKS: Added Steven Schultz
26464
26465 1999-01-20  Steven M. Schultz <sms@wlv.iipo.gtegsc.com>
26466
26467         * ltconfig.in (bsdi4*, check_shared_deplibs_method): file_magic
26468         (bsdi4*, sys_lib_search_path): add /shlib and other dirs
26469
26470 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26471
26472         * cdemo/main.c (main): use K&R definition syntax
26473         * mdemo/main.c (test_dl, main): ditto
26474         (test_dl): casts return value of lt_dlsym to appropriate types
26475
26476         * ltmain.in (dlsyms): #define const to nothing if not __STDC__
26477
26478         * ltconfig.in (global_symbol_pipe): #define const to nothing if
26479         not __STDC__
26480
26481         * demo/dlmain.c (main): cast s->address to the appropriate pointer
26482         types, otherwise StunOS4's cc refuses to compile it
26483
26484         * ltconfig.in (sunos4*, without_gnu_ld, with_gcc, archive_cmds):
26485         add -fPIC, because libgcc is multilibbed, and we want the PIC
26486         version of it for shared libraries, otherwise ld complains
26487
26488         * demo/dlmain.c (main): add missing const to declaration of name
26489
26490         * libltdl/ltdl.c (find_module): remove the libdir argument, and
26491         try to  open library only as old_name and dir/dlname
26492         (lt_dlopen): use `installed' variable in .la file to decide
26493         whether to use libdir or objdir
26494
26495         * demo/configure.in (AC_C_CONST): added, for portability
26496         * mdemo/configure.in (AC_C_CONST): ditto
26497         * libltdl/configure.in (AC_C_CONST, AC_C_INLINE): ditto
26498         * libltdl/ltdl.c (LTDL_FILENAME_MAX): use FILENAME_MAX if defined
26499         (FILENAME_MAX): replace all explicit uses with LTDL_FILENAME_MAX
26500         (presym_free_symlists, trim): don't return void, for portability
26501         (lt_dlgetsearchpath): replace (void) with __P((void))
26502
26503         * ltmain.in (compile): when compiling both PIC and non-PIC, write
26504         the PIC object to .libs/.lo and only rename it to .lo after
26505         compiling the .o, to avoid fooling make dependencies
26506
26507         * mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove
26508
26509 1999-01-20  Gary V. Vaughan  <gary@gnu.org>
26510
26511         * TODO: Added inter-library deps for ltlibs.
26512
26513         * THANKS: Added Vladimir Kushnir.
26514
26515 1999-01-20  Vladimir Kushnir  <kushn@mail.kar.net>
26516
26517         * ltconfig.in (freebsd3*): Define `deplibs_check_method' and
26518         `file_magic_command' for freebsd-elf.
26519
26520 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26521
26522         * TODO: should we also build a `static' copy of a convenience
26523         library out of .o files?
26524
26525         * ltconfig.in (bsdi4*, netbsd*, uts4*, library_names_spec,
26526         soname_spec): removed duplicate dot before $major
26527         Reported by Steven M. Schultz <sms@wlv.iipo.gtegsc.com> (bsdi4*)
26528
26529         * THANKS: added Manfred Weichel
26530
26531 1999-01-20  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
26532
26533         * ltconfig.in (sysv5*): same as sysv4.3*
26534
26535 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26536
26537         * libltdl/ltdl.c (lt_dlopen): properly detect error condition when
26538         full pathname of non-libtool library is provided
26539
26540         * libltdl/configure.in (libltdl_cv_preloaded_symbols,
26541         HAVE_PRELOADED_SYMBOLS): test whether we support -dl*open
26542         * libltdl/ltdl.c (!HAVE_PRELOADED_SYMBOLS, lt_preloaded_symbols):
26543         define it to an empty list if libtool won't generate it, so as to
26544         avoid link errors.  This will cause silent dlopening failures, but
26545         maybe this is better than failing to link the program...
26546
26547         * libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to
26548         declare lt_preloaded_symbols
26549         * doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto
26550
26551         * ltmain.in (dlpredeps): removed, reverting 1999-01-17's change
26552
26553 1999-01-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
26554
26555         * libltdl/Makefile.am (Makefile): depend on libtool
26556
26557         * ltmain.in (lt_preloaded_setup): function added to symbol list
26558         source file to work around FreeBSD problem
26559
26560         * Makefile.am (check-local): depend on libltdl/Makefile
26561
26562         * mdemo/Makefile.am (mdemo_LDFLAGS, mdemo_LDADD): moved -dlopen
26563         flags to LDADD
26564         * doc/libtool.texi (Using Automake): how to add -dlopen to LDADD
26565
26566 1999-01-19  Gary V. Vaughan  <gary@gnu.org>
26567
26568         From Andrey Slepuhin <pooh@msu.ru>
26569         * ltmain.in (hardcode_action) Oops, misapplied the patch!
26570
26571         * ltconfig.in (compile_dependencylbs): removed this
26572         variable and pick up the library dependencies from $deplibs.
26573         * ltmain.in (compile_dependencylibs): removed this
26574         variable, use deplibs to hold these dependencies.
26575
26576         From Andrey Slepuhin <pooh@msu.ru>
26577         * ltmain.in (hardcode_action) make sure deplibs is set to include
26578         all the extra libs added to compile_command.
26579
26580 1999-01-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
26581
26582         * libtool.m4 (LIBTOOL_DEPS): set it
26583         * libltdl/configure.in (LIBTOOL_DEPS): AC_SUBST it
26584         * libltdl/Makefile.am (libtool): use it
26585         * doc/libtool.texi (AM_PROG_LIBTOOL): document it
26586
26587         * Makefile.am (libltdl.tar.gz): don't create it as part of the
26588         build, since it is likely to become stale if we do
26589         (install-data-hook): create and install libltdl.tar.gz, without
26590         depending on GNU tar
26591         Reported by Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
26592
26593 1999-01-17  Thomas Tanner  <tanner@gmx.de>
26594
26595         * Makefile.am: added libltdl.tar.gz to CLEANFILES
26596         * ChangeLog: some reformatting
26597         * TODO: documentation updates
26598         * doc/libtool.texi: added preliminary libltdl documentation,
26599           updated dlopen and -module documentation,
26600           renamed -avoid-versioning to -avoid-version
26601           documented the libtool script variables compiler_c_o,
26602           compiler_o_lo, need_locks, old_postuninstall_cmds,
26603           postuninstall_cmds, sys_lib_search_path_spec,
26604           fix_srcfile_path, objdir, objext, libext,
26605           documented the two new flags (--ltdl[-tar]) of libtoolize
26606         * libltdl/Makefile.am: incremented the version, removed
26607           libtool dependency so that it can be build independently
26608         * libltdl/configure.in: removed LTDL_SHLIB_EXT hack,
26609           set version to 1.0, use AM_MAINTAINER_MODE,
26610           DLPREOPEN is always supported, check for libtool's objdir variable
26611           (LTDL_OBJDIR)
26612         * libltdl/ltdl.c: some cleanups (moved constants to the beginning
26613           of the file and prefixed all of them with LTDL_, minor optimizations
26614           in find_file() and find_module()), renamed lt_dlpreopen* to
26615           lt_dlpreload* for consistency, removed LTDL_SHLIB_EXT hack,
26616           we don't need unistd.h, DLPREOPEN is _always_ supported,
26617           reverted Alexandre's lt_dlpreopen_default_ change,
26618           try to open the not-installed module before the installed one,
26619           replaced lt_dlsearchpath() with lt_dladdsearchdir(),
26620           lt_dlsetsearchpath() and lt_dlgetsearchpath()
26621         * libltdl/ltdl.h: renamed lt_dlpreopen* to lt_dlpreload*
26622           for consistency, removed the declaration of lt_preloaded_symbols
26623           (should be imported by programs),
26624           reverted Alexandre's lt_dlpreopen_default_ change and added
26625           two new macros LTDL_PRELOADED_SYMBOLS and
26626           LTDL_SET_PRELOADED_SYMBOLS(),
26627           added lt_dladdsearchdir(), lt_dlsetsearchpath() and
26628           lt_dlgetsearchpath()
26629         * libtool.m4: some reformatting
26630         * libtoolize.in: implemented --ltdl, bugfix when checking for
26631           the libtool package directory
26632         * ltconfig.in: removed $thread_safe_flags from Andrey Slepuhin's
26633           AIX patch, renamed sys_lib_search_path to sys_lib_search_path_spec,
26634           some reformatting, fixed typo in deplibs_check_method (unkwnon)
26635         * ltmain.in: documented -o for compile mode, some reformatting,
26636           renamed -avoid-versioning to -avoid-version
26637           renamed sys_lib_search_path to sys_lib_search_path_spec
26638         * mdemo/Makefile.am: use -avoid-version
26639         * mdemo/main.c: use LTDL_PRELOADED_SYMBOLS and
26640           LTDL_SET_PRELOADED_SYMBOLS()
26641
26642 1999-01-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
26643
26644         * ltconfig.in (wlarc): set to either '${wl}' or an empty string,
26645         depending on whether archive_cmds runs CC or LD
26646         (gnu_ld=yes, whole_archive_flag_spec): "$wlarc" instead of '${wl}'
26647
26648         * mdemo/Makefile.am (../libltdl/libltdlc.la): depend on
26649         ../libtool, because ../libltdl/libtool depends on it
26650         (mdemo_debug_*): copy from mdemo_*, adding -static to LDFLAGS
26651
26652         * ltmain.in (dlpredeps): append dependencies from dlopened modules
26653         (but not dlpreopened ones) after all explicitly linked libraries
26654
26655         * ltconfig.in (need_lib_prefix, need_version,
26656         deplibs_check_method): default to unknown, so that we're
26657         remembered that this needs porting; unknown is interpreted as yes,
26658         yes and none, respectively
26659         (freebsd2*, freebsd3*, sunos4*, need_version): set to yes
26660         (freebsd2*, freebsd3*, library_names_spec): libraries without a
26661         version number are not used by `ld'; add $versuffix;
26662         Reported by Ben Jackson <ben@ben.com>
26663         * ltmain.in (deplibs_check_method): alias unknown to none
26664         (need_version): if vinfo was not provided and release info was,
26665         zero out versuffix only if we don't need_version.
26666         * doc/libtool.texi: document what `unknown' means
26667
26668         * libltdl/ltdl.h (lt_dlpreopen_default): reverted to a macro
26669         without arguments, that calls lt_dlpreopen_default_ with
26670         lt_dlpreloaded_symbols
26671         * libltdl/ltdl.c (lt_dlpreopen_default_): renamed from
26672         lt_dlpreopen_default
26673         (find_module) tryall_dlopen old_name first, so that we don't
26674         override statically linked symbols with dlopened ones
26675
26676 1999-01-15  Gary V. Vaughan  <gary@gnu.org>
26677
26678         From Andrey Slepuhin <pooh@msu.ru>
26679         * libtoolize.in (cd $pkgdatadir): Make sure we return the the
26680         working directory when this is done.
26681
26682         From Andrey Slepuhin <pooh@msu.ru>
26683         * ltconfig.in (aix): Use shared library support correctly on
26684         aix4*, and tweak the config for aix3.
26685         * NEWS: added aix3 and aix4 to list of hosts with improved
26686         support.
26687         * THANKS: added Andrey Slepuhin <pooh@msu.ru>.
26688
26689 1999-01-15  Thomas Tanner  <tanner@gmx.de>
26690
26691         * Makefile.am (@DIST_MAKEFILE_LIST@): added a second '$'
26692           before abs_scrdir, removed ltconfig and ltmain.sh from
26693           EXTRA_DIST (automake distributes them by default)
26694
26695 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26696
26697         * autogen: moved faking of the libtool scripts before
26698           the call of automake, so that ltconfig and ltmain.sh
26699           are included in the distribution
26700         * ltconfig.in: when checking whether PIC is supported assume
26701           only on HP/UX that warnings during compilation mean that
26702           PIC is not supported (Thanks to Ron O'Hara)
26703         * THANKS: added Ron O'Hara
26704
26705 1999-01-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
26706
26707         * Makefile.am: Moved ltconfig and ltmain.sh back into srcdir, and
26708         add them to the distribution.  Added work-around if `mv -f' fails.
26709         fix @AINCLUDE_M4_LIST@ and @DIST_MAKEFILE_LIST@ for relative and
26710         absolute specifications of srcdir
26711
26712 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26713
26714         * libltdl/ltdl.c: added variable symbol prefix, added user-defined
26715           library search path (can be set using lt_dlsearchpath()),
26716           added default_preloaded_symbols which are independent of
26717           lt_dlinit/exit
26718         * libltdl/ltdl.h: added lt_dlsearchpath() and
26719           lt_dlpreopen_default()
26720         * mdemo/Makefile.am: use -export-dynamic until libtool
26721           and libltdl are able to handle module dependencies
26722
26723 1999-01-14  Gary V. Vaughan  <gary@gnu.org>
26724
26725         * THANKS: added Mark Elbrecht.
26726         * ltconfig.in (PATH_SEPARATOR): new variable to hold valid $PATH
26727         separator characters for the build host, to support DJGPP
26728         environment.
26729         * ltconfig.in: Use PATH_SEPARATOR instead of hardcoded `:'.
26730         Reported by Mark Elbrecht <snowball3@usa.net>
26731
26732         * cdemo/README: typo: mdemo->cdemo
26733
26734 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26735
26736         * autogen: fake the libtool scripts to help fixing
26737           the bootstrapping problem
26738         * Makefile.am: always configure libltdl, however after building
26739           the libtool scripts,
26740           build the libtool scripts in builddir, not srcdir
26741           (unfortunately this breaks building when srcdir!=objdir,
26742            but it was just plain wrong - needs to be fixed),
26743           build and install libltdl.tar.gz,
26744           copy acinclude.m4 instead of linking them, so that we
26745           can 'make dist' in libltdl,
26746           fixed configuring of subdirectories
26747         * configure.in: removed --enable-ltdl-install - libltdl is supposed
26748           to be installed by packages, not by libtool itself
26749         * libtoolize.in: new flags --ltdl and --ltdl-tar to install libltdl
26750           in packages (--ltdl doesn't work yet),
26751           install only the necessary libtool scripts, not just all
26752           files in pkgdatadir
26753         * mdemo/Makefile.am: removed the rule for libltdl configuration
26754
26755 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26756
26757         * mdemo/Makefile.am (../libltdl/libtool): mkdir and configure
26758         ../libltdl
26759
26760 1999-01-13  Thomas Tanner  <tanner@gmx.de>
26761
26762         * demo/dlmain.c, libltdl/ltdl.c, ltconfig.in, ltmain.in,
26763           doc/libtool.texi: renamed dld_preloaded_symbols to
26764           lt_preloaded_symbols, symbol lists are 'const'
26765         * cdemo/configure.in: don't check for string.h
26766         * demo/dlmain.c: renamed dld_symlist to lt_symlist,
26767           preloaded symbols are 'const', use lt_ptr_t instead of void*
26768         * demo/foo.h: define lt_ptr_t
26769         * doc/libtool.texi: document lt_preloaded_symbols correctly
26770         * libltdl/Makefile.am, mdemo/Makefile.am: renamed libtest to libltdlc
26771         * libltdl/ltdl.c: fixed some minor typos, renamed dldpre to presym,
26772           bugfix: search in search_path only if we have no directory
26773           and a search_path, in lt_dlsym() check whether symbol != 0
26774         * libltdl/ltdl.h: removed lt_dlpreopen_default()
26775         * ltconfig.in (dlpreopen): removed dld_preloaded_symbol_count
26776         * ltmain.in: added help for -avoid-versioning, -export-symbols,
26777           -module, add @SYMFILE@ if one of -export-dynamic, -dlopen or
26778           -dlpreopen is used
26779         * mail/deplibs.html: added Gordon Matzigkeit's inter-library
26780           dependencies article
26781         * mdemo/Makefile.am: removed -export-dynamic from LDFLAGS
26782           (no longer necessary, since libtool defines lt_preloaded_symbols
26783           when -dlopen is used), initialize with lt_preloaded_symbols
26784
26785 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26786
26787         * doc/libtool.texi (Test descriptions): cdemo-static works, thanks
26788         to Edouard Parmelan!
26789
26790         * THANKS: added Sebastian Wilhelmi
26791
26792         * ltconfig.in (solaris): define `need_version' to no
26793
26794 1999-01-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
26795
26796         * ltconfig.in (solaris): Define `deplibs_check_method',
26797         `file_magic_command', `need_lib_prefix' and `sys_lib_search_path'
26798         * ltmain.in (file_magic_regex): Add space before matching pattern,
26799         such that it works on solaris (solaris has a tab between the
26800         library name (including the colon) and the `ELF' and such the
26801         `ELF' will never be matched).
26802
26803 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
26804
26805         * ltconfig.in (NM): PATH search was not updated like in
26806         libtool.m4, in last Alexandre Oliva's change to it
26807         (sysv4*, ncr): pass all library dependencies
26808         * ltmain.in (dependency_libs, -R): use `deplib' instead of `arg' to
26809         iterate, otherwise we'd overwrite `arg'
26810         (convenience, old_libs): if --disable-shared, convenience
26811         libraries are just old archives, as .lo's are of no use
26812         * tests/cdemo-static.test: print --disable-shared here
26813
26814 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26815
26816         * libltdl/configure.in (libltdl_cv_shlibext, LTDL_SHLIB_EXT):
26817         system-dependent extension of shared libraries
26818         (libltdl_cv_shlibpath_var, LTDL_SHLIBPATH_VAR): system-dependent
26819         run-time shared library search path
26820         * libltdl/ltdl.c (dldpre_init, dldpre_exit): unrelate init/exit
26821         from add/remove symlists, so one may add dld_preloaded_symbols
26822         from main(), when only a library will call dldpre_init
26823         (lt_dlopen): use LTDL_SHLIBPATH_VAR, if defined, as secondary
26824         search path.  Also, if a requested .la file cannot be found, try
26825         with the LTDL_SHLIB_EXTension instead.
26826
26827         * ltmain.in (old_archives, oldobjs): use find to SYMDEF here too
26828
26829         * Makefile.am (@DIST_MAKEFILE_LIST@): `$' must be doubled
26830
26831         * configure.in (AC_CONFIG_DIRS): configure only libltdl, and then,
26832         only if --enable-ltdl-install
26833         (CONF_SUBDIRS): list directories that are configured on demand,
26834         but that must be included in the distribution
26835         (ACINCLUDE_M4_LIST, DIST_MAKEFILE_LIST): generated from CONF_SUBDIRS
26836         * Makefile.am (AUTOMAKE_OPTIONS): added version 1.3e and
26837         readme-alpha, to handle README-alpha automatically
26838         (EXTRA_DIST): removed README-alpha
26839         (BUILD_SUBDIRS): subdirectories that are always built
26840         (SUBDIRS): BUILD_SUBDIRS plus BUILD_LTDL
26841         (DIST_SUBDIRS): BUILD_SUBDIRS plus CONF_SUBDIRS, from configure
26842         (all-local, check-local): depend on $(ACINCLUDE_M4_LIST), from
26843         configure, and libtool, so that it is built before subdirs
26844         (configure-subdirs): new target
26845         (configure-subdirs, distdir): depend on $(DIST_MAKEFILE_LIST),
26846         from configure
26847         (@DIST_MAKEFILE_LIST@): create subdir if needed, then run
26848         configure.
26849         On-demand configuration of subdirs at distribution time was
26850         suggested by Gary V. Vaughan <gary@gnu.org>
26851
26852         * libtool.m4, ltconfig.in (NM): search for NM in PATH before
26853         /usr/ccs/bin, /usr/ucb and /bin.  However, if the found one isn't
26854         BSD-compat keep searching.  If no BSD-compat is found, use the
26855         first we found.
26856
26857         * THANKS: added Raffaele Sena
26858
26859 1999-01-13  Raffaele Sena  <raff@aromatic.com>
26860
26861         * libltdl/ltdl.c: replaced RTDL with RTLD
26862
26863 1999-01-13  Manish Singh  <yosh@gimp.org>
26864
26865         * ltconfig.in (osf3*, osf4*, irix6*): include
26866         ${libname}{release}.so for library_names_spec
26867
26868 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26869
26870         * configure.in (AC_CONFIG_SUBDIRS): added cdemo
26871         * Makefile.am (DIST_SUBDIRS): ditto
26872         (ACINCLUDE_M4_LIST): ditto
26873         * tests/Makefile.am (TESTS): added cdemo-shared.test
26874         * tests/cdemo-static.test: disable shared libraries here
26875         * tests/cdemo-shared.test: disable static libraries here
26876         * doc/libtool.texi (Test descriptions): added cdemo tests
26877         * THANKS: added Edouard G. Parmelan
26878
26879 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
26880
26881         * ltmain.in: fix convenience libraries when static libraries
26882         are disables.
26883         * cdemo/README, cdemo/Makefile.am, cdemo/configure.in, cdemo/foo.h,
26884         cdemo/foo1.c, cdemo/main.c, cdemo/.cvsignore, test/cdemo-conf.test,
26885         test/cdemo-make.test, test/cdemo-exec.test, test/cdemo-static.test:
26886         new tests for convenience libraries.
26887         * autogen, Makefile.am, test/Makefile.am: ditto.
26888
26889         * ltconfig.in, doc/PLATFORMS: Added support for NCR MP-RAS
26890         (i586-ncr-sysv4.3*) with native compiler.
26891         * README, doc/libtool.texi: Added note for NCR MP-RAS compiler.
26892
26893 1999-01-12  Thomas Tanner  <tanner@gmx.de>
26894
26895         * ltmain.in: before using LN_S remove the symlink
26896         * libltdl/ltdl.c: support multiple symbol lists, moved library-
26897           and file searching to separate functions, renamed "preload_libs"
26898           to "dl_dependency_libs", set the LT_SYMBOL_OVERHEAD to the correct
26899           value (7), fix to support lt_dlsym() for not-libtool modules again,
26900           check for invalid handles, when using strdup() check whether
26901           it fails
26902         * libltdl/ltdl.h: declare the lt_dlsymlist type for lt_dlpreopen()
26903         * mdemo/README: rewritten
26904         * mdemo/configure.in: check only for math.h (string.h is no longer
26905           necessary)
26906
26907 1999-01-12  Gary V. Vaughan  <gary@gnu.org>
26908
26909         * configure.in (ltdl-install): Fixed up the indentation so that
26910         `configure --help' is pretty again.
26911
26912 1999-01-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
26913
26914         * ltmain.in, NEWS, doc/libtool.texi: Added support for -R flag
26915         * ltmain.in, doc/libtool.texi: documented that -rpath is the same
26916         as -R for programs
26917         * ltmain.in: softened the instructions for linking with installed
26918         libraries, and noted that libtool can be used to link with them;
26919         documented that -rpath is not required for convenience libraries
26920
26921         * ltconfig.in (symxfrm): don't print $pipe_works twice, once for
26922         each $ac_symprfx
26923         Reported by Godmar Back <gback@cs.utah.edu>
26924
26925         * ltmain.in (convenience, libobjs): get only .o and .lo files from
26926         the files extract from the convenience library.  Some systems,
26927         such as FreeBSD2, will add a SYMDEF file, that is not an object
26928         file, and therefore should not be fed to the linker
26929
26930         * libtool.m4 (AM_SYS_NM_PARSE): while we are at it, we may well
26931         cache the value of ac_cv_sys_symbol_underscore
26932
26933         * libtool.m4 (AM_SYS_NM_PARSE): need for underscore prefix is now
26934         auto-detected, by trying first without, then with it.
26935
26936         * ltconfig.in: ditto
26937
26938 1999-01-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
26939
26940         * configure.in (AC_CONFIG_SUBDIRS): add libltdl, demo, mdemo and
26941         depdemo commented out, so that `dist' works before `check'
26942         (BUILD_LTDL): will contain libltdl if --enable-ltdl-install
26943         * Makefile.am (DIST_SUBDIRS): expand SUBDIRS and add depdemo,
26944         commented out
26945         (SUBDIRS): add $(BUILT_LTDL)
26946         * libltdl/Makefile.am (EXTRA_LTLIBRARIES): add libtest.la, the
26947         same as libltdl but always a convenience library.  Not built by
26948         default.  Both libraries now depend on the libtool script, that
26949         depends on ../libtool and is rebuilt when needed
26950         * mdemo/Makefile.am (mdemo, mdemo.debug): depend on and link with
26951         ../libltdl/libtest.la, that is rebuilt if needed
26952         (mdemo_LDADD): removed $(LIBADD_M), to avoid silent failures
26953         (foo1.la): renamed from libfoo1.la; test removing the lib prefix
26954         * mdemo/foo1.c: renamed libfoo1_LTX symbols to foo1_LTX
26955         * mdemo/main.c: don't include string.h nor math.h, nor refer to
26956         sin nor cos
26957         * tests/mdemo-exec.test: renamed libfoo1.la to foo1.la
26958         * tests/mdemo-inst.test: ditto
26959
26960         * libltdl/ltdl.c (FILENAME_MAX): use it instead of MAX_FILENAME,
26961         and don't redefine it if already defined; default to 1024, as on
26962         most systems
26963         (LT_SYMBOL_LENGTH): renamed from MAX_SYMBOL_LENGTH
26964         (LT_SYMBOL_OVERHEAD): new macro, that accounts for the size of
26965         the _LTX_ separator and the initial underscore
26966         (lt_dlsym): sym now points to a stack buffer (lsym) if possible,
26967         or is dynamically allocated.  If allocation fails, a
26968         buffer_overflow_error is returned.
26969
26970 1999-01-10  Thomas Tanner  <tanner@gmx.de>
26971
26972         * ltmain.in: define dld_preloaded_symbols if at least one of
26973           -export-dynamic, -dlopen or -dlpreopen was specified,
26974           do not include program objects in the symbol list
26975           if -export-dynamic was not enabled
26976         * libltdl/ltdl.c: limit symbols to max. 256 bytes
26977         * mdemo/Makefile.am: build libltdl in a subdirectory,
26978           do not use -export-dynamic for mdemo and mdemo.debug
26979         * tests/mdemo-conf.test,tests/mdemo-make.test,tests/mdemo-inst.test:
26980           do not check for libltdl
26981
26982 1999-01-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
26983
26984         * libltdl/ltdl.c (lt_dlopen): missing strlen in bound test
26985
26986 1999-01-09  Thomas Tanner  <tanner@gmx.de>
26987
26988         * NEWS: support for BSD/OS 4.x was not documented
26989         * demo/Makefile.am: link against libm only if available
26990         * mdemo/Makefile.am: likewise, use -avoid-versioning flag
26991           instead of -avoid-version (typo)
26992         * demo/configure.in: check for libm, string.h and math.h
26993         * mdemo/configure.in: likewise
26994         * depdemo/configure.in: check for libm and math.h
26995         * libltdl/configure.in: check for dlerror
26996         * libltdl/ltdl.c: check for buffer overflows, implemented
26997           dlerror, fixed a severe bug which occured when opening
26998           non-libtool modules, dlopen with the flags GLOBAL and NOW
26999         * mdemo/main.c: report the error using lt_dlerror()
27000
27001 1999-01-08  Gary V. Vaughan  <gary@gnu.org>
27002
27003         * doc/libtool.texi (old_archive_from_new_commands): Documented
27004         this ltcofig variable.
27005
27006 1999-01-07  Gary V. Vaughan  <gary@gnu.org>
27007
27008         * ltmain.sh (cygwin, allow_undefined): Unfortunately, there are
27009         problems with this variable when trying to make a dll which has
27010         undefined symbols, in which case not even a static library is
27011         built.  For now, we need to specify -no-undefined on the libtool
27012         link line when we can be certain that all symbols are satisfied,
27013         otherwise we get a static library.
27014
27015 1999-01-06  Thomas Tanner  <tanner@gmx.de>
27016
27017         * ChangeLog: merged in tests/ChangeLog
27018         * tests/ChangeLog: deleted
27019         * libltdl/ltdl.c: assigned copyright to the FSF
27020         * libltdl/ltdl.h, mdemo/foo*,main.c: likewise
27021
27022 1999-01-06  Gary V. Vaughan  <gary@gnu.org>
27023
27024         * ltmain.in (dllsearchpath): add absolute directory paths to
27025         dllsearchpath so that the wrapper scripts can be called from any
27026         directory (e.g. tests) on cygwin.
27027
27028         * ltconfig.in (cygwin, library_names_spec): revert Alexandre's
27029         change from yesterday to use `-dll.a' suffix.  That change caused
27030         $libname-dll.a to be a symlink to $soname, which isn't even an
27031         `ar' archive.  Before the import library suffix can be changed, we
27032         need to figure out how to handle building objects differently for
27033         linking with an import library versus an equivalent static library.
27034
27035         * TODO: Added details of a Linux wrapper script bug.
27036         Reported by Jeff Garzik <jgarzik@pobox.com>.
27037
27038 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
27039
27040         * ltmain.in (libobjs_save, oldobjs): when building an
27041         old-fashioned archive, use a copy of libobjs saved before
27042         convenience libraries are appended
27043
27044         * libltdl/ltdl.h (_LTDLL_EXPORT, _LTDLL_IMPORT): use cygwin or
27045         unix library import/export primitives; this may be convenient for
27046         people willing to create DLLs
27047         (_LTDLL_EXTERN): select _LTDLL_EXPORT or _LTDLL_IMPORT depending
27048         on _LTDL_COMPILE_
27049         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlpreopen): new function,
27050         that replaces the current preloaded_symbols list with its
27051         argument, and returns the old value, initially NULL
27052         (dldpre_init): don't refer to dld_preloaded_symbols any more
27053         (dldpre_open, dldpre_sym): search preloaded_symbols
27054         (lt_dlpreopen_default): call lt_dlpreopen with
27055         dld_preloaded_symbols, that is declared as extern; it should be
27056         called from the main program or from some static library without
27057         -no-undefined
27058         (lt_dlerror): new function, that returns the error message for the
27059         last error occurred; the error message is kept in the static
27060         variable last_error
27061         * libltdl/configure.in (enable-ltdl-install): moved back from
27062         enable-install; other packages might use enable-install already,
27063         better have fine grained control over this.
27064         * libltdl/Makefile.am (libltdls.la): discarded
27065
27066 1999-01-05  Thomas Tanner  <tanner@gmx.de>
27067
27068         * configure.in: do not configure libltdl by default
27069         * Makefile.am: do not build libltdl by default
27070         * libltdl/Makefile.am: ltdls.lo depends on libtool
27071         * tests/Makefile.am: before starting the tests
27072           make sure that libtool was build
27073         * tests/mdemo-conf.test: configure libltdl
27074         * tests/mdemo-make.test: build libltdl
27075
27076 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
27077
27078         * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
27079         would lose for files with embedded blanks.
27080
27081         * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
27082         ltdll.c into ltmain.in, to avoid its duplication, and added a sed
27083         script to extract it.  Also, create def and base files in $objdir,
27084         and don't remove them after the compilation.
27085         (cygwin, library_names_spec): Create static part of the dll with
27086         suffix -dll.a, to avoid conflicts with actual static libraries.
27087         * ltmain.in: Added ltdll.c, as commented out text
27088
27089 1999-01-01  Thomas Tanner  <tanner@gmx.de>
27090
27091         * NEWS: new BeOS support
27092         * THANKS: added Joseph Beckenbach
27093         * libltdl/ltdl.h: use dllimport/export on Win32
27094
27095 1998-12-31  Joseph Beckenbach III <jrb3@best.com>
27096
27097         * ltconfig.in: added support for BeOS
27098         * ltmain.in (shlibpath_var): added a workaround for
27099           an odd bug in the BeOS R4 sed
27100
27101 1998-12-31  Thomas Tanner  <tanner@gmx.de>
27102
27103         * verified all copyright notices
27104           and updated them to 1999
27105         * TODO: added some things that need to documented
27106         * doc/libtool.texi: -export-symbols is not
27107           supported on all platforms
27108         * doc/PLATFORMS: added a few new platforms
27109
27110 1998-12-30  Thomas Tanner  <tanner@gmx.de>
27111
27112         * NEWS: updated
27113         * THANKS: added Todd Vierling <tv@pobox.com>
27114
27115 1998-12-30  Todd Vierling  <tv@pobox.com>
27116
27117         * ltconfig.in: improved shared object handling on both
27118           a.out and ELF platforms for NetBSD
27119
27120 1998-12-29  Thomas Tanner  <tanner@gmx.de>
27121
27122         * ltconfig.in: do not rely on a leading space when concatenating
27123           variables as suggested by Erez Zadok
27124         * ltmain.in: likewise
27125         * doc/PLATFORMS: updated and reformatted
27126           (thanks to Erez Zadok for the testing)
27127
27128 1998-12-27  Thomas Tanner  <tanner@gmx.de>
27129
27130         * THANKS: added Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
27131
27132 1998-12-26  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
27133
27134         * ltconfig.in: support i486-ncr-sysv4.3.03
27135         shared libraries.
27136
27137         * ltmain.in: before every ln -s, remove the link name
27138
27139 1998-12-25  Thomas Tanner  <tanner@gmx.de>
27140
27141         * depdemo/configure.in: removed last relics of demo
27142         * depdemo/sysdep.h: ditto
27143         * mdemo/Makefile.am: ditto
27144         * libltdl/Makefile.am: fixed the version number, build libltdls if
27145           -enable-install and -enable-dlpreopen are enabled
27146         * libltdl/configure.in: libltdl is version 0.1, not 1.0,
27147           renamed -enable-ltdl-install to -enable-install,
27148           conditionals for libltdls, check for strchr and index,
27149           replaced NULL with 0
27150         * libltdl/ltdl.c: replaced NULL with 0, dlpreopen only if
27151           USE_DLPREOPEN was defined, integrated shl_load code from GModule
27152           (still untested)
27153
27154 1998-12-24  Gary V. Vaughan  <gary@gnu.org>
27155
27156         * libltdl/configure.in: fixup spacing in --enable-ltdl-install
27157         help string so that it lines up nicely for configure --help.
27158
27159         * ltmain.in (dllsearchpath): keep track of what the dll search path
27160         will need to be in the wrapper scripts as deplibs are calculated.
27161         Make sure the wrapper script doesn't end in `.exr', which makes
27162         win32 try to execute it as a binary!
27163         Add the contents of dllsearchpath to $PATH in the wrapper script.
27164         Use the relative path to the wrapped program so that the dll
27165         search path is calculated properly by win32 OSes.
27166         * TODO: removed the item for making wrapper scripts work on win32.
27167
27168         * TODO: removed the reference to making libltdl and demo work on
27169         win32.  They *do* work now that wrapper scripts are functioning.
27170
27171         * ltmain.in (file_magic_command): It turns out that if the
27172         file_magic_command generates huge output (e.g. running `objdump
27173         -f' over a large import lib [say libX11.a]) the expr to check it
27174         against the file_magic_regex blows up.  There is now an optimistic
27175         heuristic, to save only the first 10 lines of running
27176         file_magic_command which (at risk of sounding like Bill) should be
27177         enough for anyone =)O|.
27178
27179         * ltmain.in: Set the compile_dependencylibs and dllsearchpath for
27180         non-libtool libs, or else libdeps only works between ltlibs for
27181         cygwin32.
27182
27183 1998-12-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
27184
27185         * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
27186         long lines to sed
27187         * doc/libtool.texi (sed): very long lines are no longer a problem
27188
27189         * libltdl/Makefile.am: install libltdl conditionally...
27190         * libltdl/configure.in: ... if --enable-ltdl-install is issued
27191         * libltdl/ltdl.c: removed #ifdef DEBUG
27192         * mdemo/Makefile.am (mdemo_debug_LDADD, mdemo_debug_DEPENDENCIES):
27193         use libltdl.la
27194
27195 1998-12-23  Gary V. Vaughan  <gary@gnu.org>
27196
27197         * doc/PLATFORMS: added my cygwin32 box (i686-pc-cygwin32).
27198
27199         * TODO: remind myself of the win32 tasks remaining.
27200
27201         * ltconfig.in (archive_cmds, archive_sym_cmds,
27202         old_archive_from_new_cmds): Fixed a bug which left an a.exe in the
27203         build directory.  Fixed a bug where $soname-def was never deleted.
27204
27205         * ltconfig.in (file_magic_command): new variable holds the command
27206         (including any args) to run to generate the string to match
27207         against the regex in $file_magic.  Use the variable where
27208         necessary. Added to libtool header output.
27209         (deplibs_check_method): use file_magic for win32, but compare the
27210         output of `objdump -f' with the regex (see below).
27211         (archive_cmds, archive_sym_cmds): use compile_dependencylibs for
27212         each $CC invokation (see below).
27213
27214         * ltmain.in: Set allow_undefined to `no' for win32 variants by
27215         default, otherwise it is impossible to link a dll without forcing
27216         the makefile maintainer to figure out whether to pass
27217         --no-undefined at every libtool invokation.
27218         (compile_dependencylibs): save the list of dependency library
27219         flags needed for a deplib build on win32.
27220         (link_against_libtool_libs): commented out the check for this;  if
27221         it is left in, then ltlibs (i.e. *.la files) cannot be deplibs for
27222         subsequent links.
27223         Don't add -lc to the deplibs line for win32 platforms (which don't
27224         have a libc as such).
27225         (file_magic_command): use this to get some output to compare with
27226         the file_magic regex (instead of hardcoding `file' which doesn't
27227         exist on win32.
27228         * doc/libtool.texi (Porting inter-library dependencies): Updated
27229         to document the changes above.
27230
27231         * ltconfig.in (deplibs_check_method): Changed the file_magic regex
27232         to match more linux variants.  This is less lenient than Thomas
27233         Tanner's commit to fix the same problem below.
27234         Reported by Joel Klecker <espy@debian.org>
27235         * THANKS: added Joel Klecker <espy@debian.org>
27236
27237 1998-12-23  Thomas Tanner  <tanner@gmx.de>
27238
27239         * ltconfig.in: fixed file-magic for Linux shared libraries
27240         * ltmain.in: removed the unused -force-static flag
27241         * libltdl/ltdl.c: added strchr, search modules in LTDL_LIBRARY_PATH,
27242           check whether actual module was already dlopened,
27243           read in preload_libs rather than dependency_libs
27244
27245 1998-12-23  Thomas Tanner  <tanner@gmx.de>
27246
27247         * libltdl/Makefile.am: build two versions of libltdl:
27248           libltdl (support native dlopen if available, otherwise dlpreopen),
27249           libltdls (like libltdl, but always support for dlpreopen)
27250         * libltdl/ltdl.c: ditto
27251         * libltdl/configure.in: warn if dlopen is not supported
27252         * mdemo/Makefile.am (mdemo.debug): use libltdls
27253
27254 1998-12-22  Gary V. Vaughan  <gary@gnu.org>
27255
27256         * ltconfig.in: revert Thomas Tanners change to create all
27257         libraries without the `lib' prefix on win32, otherwise `gcc foo.c
27258         -lbar' can't find libbar.a.
27259
27260 1998-12-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
27261
27262         * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
27263         dependency hack
27264
27265 1998-12-21  Thomas Tanner  <tanner@gmx.de>
27266
27267         * ltconfig.in: indentation is now 8 character wide tabs
27268         * ltmain.in: ditto
27269         * ChangeLog: ditto
27270         * ltmain.in: renamed check_shared_deplibs_method to
27271           deplibs_check_method (we_dont_want_too_long_variable_names :)
27272         * doc/libtool.texi (Porting inter-library dependencies): ditto
27273         * depdemo/.cvsignore: renamed hell* to depdemo*, added *.lo,*.la
27274         * mdemo/.cvsignore: ditto
27275
27276 1998-12-21  Gary V. Vaughan  <gary@gnu.org>
27277
27278         * libtool.m4 (AM_SYS_NM_PARSE): apparently  __ptr_t is predefined
27279         on some systems - use lt_ptr_t instead.
27280         * ltconfig.in: ditto.
27281         * ltmain.in: ditto.
27282
27283         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): use an AC_SUBST to pass
27284         the result of this into the compile rather than AC_DEFINE which
27285         breaks when building with older versions of autoconf.
27286         * ltconfig.in (symxfrm): Don't put the leading underscore back
27287         with the global_symbol_pipe.
27288         * demo/dlmain.c (main): No need to specialcase underscores in
27289         dld_preloaded_symbols - it is fixed by symxfrm above!
27290         * libltdl/configure.in: use AM_SYS_SYMBOL_UNDERSCORE from
27291         libtool.m4 rather than reinvent the wheel here =)O|
27292
27293         * ltmain.in:  Fix deplibs methods to not rely on a.out (cygwin
27294         uses a.exe!).
27295
27296         * libltdl/configure.in: Cleanups - fix header comment and emacs
27297         local-vars.
27298
27299         * demo/dlmain.c (win32_force_data_import_address): a nasty hack
27300         to force the address of imported data symbols into
27301         dld_preloaded_symbols on win32, which does data imports
27302         differently to function imports (sheesh!).  This functionality
27303         needs to be moved into the dld_preloaded_symbols generation code.
27304         demo/helldl with static linking is broken on win32 by this change,
27305         probably until after libtool-1.3 =(O|
27306         * demo/foo.h: make sure __CYGWIN32__ is always defined on cygwin32
27307         systems.  Use the correct __declspec macro for lib exports/imports
27308         on cygwin32.
27309         * demo/foo.c, demo/hello.c: Make sure we tell foo.h that these
27310         sources are inside libfoo, and want to export symbols.
27311
27312 1998-12-20  Thomas Tanner  <tanner@gmx.de>
27313
27314         * autogen: configure demo, depdemo, libltdl and mdemo
27315         * tests/mdemo-exec.test: renamed hell* to mdemo*
27316         * tests/mdemo-inst.test: ditto
27317
27318 1998-12-19  Thomas Tanner  <tanner@gmx.de>
27319
27320         * libltdl/Makefile.am: build a normal libtool library
27321         * libltdl/ltdl.c: get LTDL_LIBRARY_PATH but don't make use of it yet,
27322           some reformatting
27323         * ltmain.in: fixed a bug which listed symbols in
27324           dld_preloaded_symbols twice
27325         * TODO: removed symbol export lists and deplibs
27326
27327 1998-12-18  Thomas Tanner  <tanner@gmx.de>
27328
27329         * ltconfig.in: added need_lib_prefix and need_version,
27330           which determine whether we must prefix modules with 'lib'
27331           and whether versioning is required for libraries.
27332         * ltmain.in: allow modules names without 'lib' prefix,
27333           new -avoid-versioning option
27334         * doc/libtool.texi (link flags): updated documentation for -module,
27335           added -avoid-versioning
27336         * doc/libtool.texi (libtool script contents):
27337           documented the two new flags and archive_sym_cmds
27338         * doc/libtool.texi (tests):
27339           added (partially very short) documentation for assign.test,
27340           nomode.test, quote.test, sh.test
27341         * libltdl/ltdl.c: canonicalize module names,
27342           some cleanups and bugfixes,  __ptr_t is predefined on
27343           some systems - use lt_ptr_t instead
27344         * mdemo/: renamed hell* to mdemo* (hell is already used in
27345           demo), updated the documentation, import sin and cos in main
27346           program rather than linking libfoo1 statically
27347
27348 1998-12-17  Gary V. Vaughan  <gary@gnu.org>
27349
27350         * libtool.m4 (AM_PROG_LIBTOOL): Added AC_PREREQ(2.12) to prevent
27351         people using libtool with old autoconfs that don't provide the
27352         features we need.
27353
27354 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27355
27356         * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
27357
27358         * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
27359
27360         * Makefile.am (cvs-dist): our release tags are in lower case
27361         (cvs-diff): ditto
27362         (EXTRA_DIST): added README-alpha
27363         * README-alpha: minor adaptations
27364         * demo/Makefile.am, mdemo/Makefile.am, depdemo/Makefile.am:
27365         removed comment about special needs for distribution
27366         * depdemo/Makefile.am: don't generate dependencies
27367         * depdemo/configure.in: modified version number
27368
27369         * ltmain.in (-force-static, force_static): removed
27370         * libltdl/Makefile.am (CFLAGS): ditto
27371         * libltdl/configure.in: check for memory.h, rindex() and
27372         dlpreopening.  Fixed NEED_USCORE caching policy.
27373         * libltdl/ltdl.h (lt_dlsym): make the name argument const
27374         * libltdl/ltdl.c (types): new variable: head of list of available
27375         dlopening mechanisms
27376         (lt_dltype_t): interface of a dlopening mechanism, with pointers
27377         to functions for init, exit, open, close and sym
27378         (lt_dlhandle_t): added pointer to interface type
27379         (strdup): don't name it strdup; it can be troublesome
27380         (strrchr): ditto; use rindex if available
27381         (LIBTOOL_STATIC): check HAVE_DLPREOPEN instead, and move to the
27382         end of the file, so that it becomes the header of the list
27383         (all): renamed all interface-implementation functions, to avoid
27384         name clashes, and created lt_dltype_t nodes for all of them
27385         (lt_dlinit): initialize all available interfaces; remove those
27386         that fail from the list.  Return failure only if no interfaces
27387         could be initialized.
27388         (lt_dlexit): return number of failures
27389         (tryall_dlopen): try to open the library with all available
27390         interfaces
27391         (lt_dlopen): use tryall_dlopen; increased size of fixed buffers.
27392         We should probably make these bound-checked or dynamically
27393         allocated for the final release!  Fix bug when filename did not
27394         contain slashes; should we check for `\\' too?  Try old_library if
27395         everything else fails.
27396         (lt_dlclose): use the interface type for closing
27397         (lt_dlsym): make `symbol' const, use interface type for looking up
27398         * mdemo/Makefile.am: moved mdemo/modules/* back into mdemo
27399         (SUBDIRS): removed
27400         (libfoo2_la_LDFLAGS): added -static; nice test.  However, since it
27401         causes -lm to linked into hell*, it causes tests that should fail
27402         to pass
27403         (noinst_HEADERS): no need to install foo.h
27404         * mdemo/configure.in: remove modules/Makefile
27405         tests/mdemo-exec.test: updated accordingly
27406
27407         * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
27408         maintainers.  Detailed expected failures of libltdl+mdemo.  Listed
27409         recent ports.  Added full URL for the home page.  Note that
27410         libtool C program is unusable.
27411
27412 1998-12-16  Bruno Haible  <haible@ilog.fr>
27413
27414         * doc/libtool.texi (Tested platforms): broken `sed' programs
27415
27416 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27417
27418         * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
27419         Tanner, now that they're AUTHORS
27420
27421 1998-12-16  Stephan Kulow  <coolo@kde.org>
27422
27423         * ltmain.in (freebsd-aout, freebsd-elf): added missing dot to
27424         versuffix
27425
27426 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27427
27428         * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
27429         (libtool): automatically update
27430
27431         * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
27432         * libltdl/ltdl.c: include them
27433
27434         * demo/configure.in (BINARY_HELLDL): test whether dlopen is
27435         supported at configure time
27436         * demo/Makefile.am (helldl): use automake conditionals to build
27437         helldl as a script or as a binary program
27438
27439         * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
27440         (clean-local): don't clean libltdl any more
27441         * tests/ltdl-conf.test: removed
27442         * tests/ltdl-inst.test: ditto
27443         * tests/ltdl-make.test: ditto
27444         * tests/ltdl-unst.test: ditto
27445         * tests/mdemo-make.test: updated accordingly
27446         * tests/mdemo-inst.test: ditto
27447         * tests/mdemo-unst.test: ditto
27448         * doc/libtool.texi: ditto
27449
27450         * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
27451         only for -force-static; it should be removed soon, before people
27452         start to use it
27453
27454         * configure.in (AC_CONFIG_SUBDIRS): added libltdl
27455         * Makefile.am (SUBDIRS): build libltdl by default
27456         (DIST_SUBDIRS): simplify distribution of demo and mdemo
27457         (libtool, clibtool, libtoolize, ltconfig, ltmain.sh): add
27458         srcdir where appropriate
27459         (ACINCLUDE_M4_LIST): new rule for maintaining links from
27460         acinclude.m4 to libtool.m4
27461         (*demo/Makefile.in): don't update autoconf/automake files any
27462         more; make check is needed
27463
27464 1998-12-14  Gary V. Vaughan  <gary@gnu.org>
27465
27466         * ltconfig.in (archive_cmds): tweaked for cygwin b18->b20.1
27467         compatibility and fixed a bug with generating the export
27468         definitions file.  This is only tested on b20.1, but should
27469         work back to b18 at least.
27470
27471 1998-12-11  Thomas Tanner  <tanner@gmx.de>
27472
27473         * ltmain.in: -module implies now -export-dynamic,
27474           dlpreopen files if we're linking statically
27475         * doc/libtool.texi (link flags): added documentation for -module
27476           and the tests for mdemo and libltdl
27477         * mdemo/Makefile.am: replaced -dlpreopen with -dlopen
27478
27479 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
27480
27481         * PORTING: removed the text Akim Demaille converted to .texi
27482
27483 1998-12-09  Akim Demaille  <demaille@inf.enst.fr>
27484
27485         * doc/libtool.texi: converted inter-library dependencies
27486         instructions from PORTING
27487
27488 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
27489
27490         * ltmain.in (convenience, deplibs): propagate dependencies
27491         * libltdl/Makefile.am (noinst_HEADERS): don't install ltdl.h yet
27492         (noinst_LTLIBRARIES): ditto for libltdl.la
27493
27494 1998-12-08  Gary V. Vaughan  <gary@gnu.org>
27495
27496         * README-alpha: adapted the release procedure from
27497           automake/HACKING.
27498         * Makefile.am: adapted the cvs-dist and cvs-diff rules from
27499           automake/Makefile.am.  I guess this is probably safe to use
27500           already, but I didn't test it as it tags the CVS tree.  If
27501           it needs tweaking, we'll find out come 1.2d.
27502
27503 1998-12-08  Thomas Tanner  <tanner@gmx.de>
27504
27505         * ltconfig.in: fixed some typos in archive_sym_cmds
27506         * ltmain.in: replaced basename with a sed expression
27507
27508 1998-12-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
27509
27510         * configure.in: we no longer use PRCS
27511
27512         * doc/libtool.texi (author): listed all the AUTHORS
27513         (Dlopen issues): added reference to libltdl, still undocumented
27514         (C++ libraries): it's not *that* simple, after all :-(
27515         (Inter-library dependencies): they're back!
27516
27517 1998-12-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27518
27519         * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
27520         work, use `test a = b' instead
27521
27522         * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
27523
27524         * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
27525         not available
27526
27527 1998-12-04  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
27528
27529         * ltconfig.in: Port to SCO UnixWare 7.x.
27530
27531 1998-12-03  Thomas Tanner  <tanner@gmx.de>
27532
27533         * ChangeLog: converted CR/LF back to CR format
27534         * ltconfig.in: new variable sys_lib_search_path for searching
27535         of installed libraries, export archive_sym_cmds and
27536         sys_lib_search_path
27537         * ltmain.in: use sys_lib_search_path, removed extradeplibs
27538         (they're not portable)
27539
27540 1998-12-02  Gary V. Vaughan  <gary@gnu.org>
27541
27542         * libltdl/configure.in: look for string.h or else strings.h, and
27543         also check for ANSI strrchr() function.  Fix `undescore before
27544         symbols' macro to not rely on a.out (cygwin uses a.exe!).  Fix
27545         `underscore for dlsym' to set cache variable properly, not just in
27546         environment of AC_DEFINE(NEED_USCORE).
27547         * libltdl/ltdl.h (__ptr_t): for K&R compatibility using char*.
27548         * libltdl/ltdl.c (strrchr): fallback function incase none is
27549         defined in libc.
27550         (trim, ltdlopen): replace rindex with ANSI strrchr.
27551         Add static function declarations so that we get type checking with
27552         ANSI compilers.  Use __ptr_t instead of void*.
27553
27554 1998-12-01  Thomas Tanner  <tanner@gmx.de>
27555
27556         * ltconfig.in: added -export-symbols support for GNU ld and
27557         Solaris (untested), archive_sym_cmds for -export-symbols
27558         * doc/libtool.texi, ltmain.in: -export-symbols is now
27559         independent from -export-dynamic and does not work for modules
27560         anymore
27561         * ltmain.in: added some checks for -export-symbols
27562         * mdemo/modules/Makefile.am: replaced -export-symbols with
27563         -export-dynamic since it doesn't work for modules
27564
27565 1998-12-01  Gary V. Vaughan  <gary@gnu.org>
27566
27567         * README: Updated homepage pointer to gnu libtool page.
27568
27569         * ltconfig.in (ltdll.c): update the ltdll.c file for cygwinb20.
27570         Based on code from Mumit Khan <khan@xraylith.wisc.edu>.
27571         (archive_cmds): correct typo libtool.c->ltdll.c.  Update shell
27572         commands for cygwin32.
27573
27574         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): New macro; find out
27575         whether compiled symbols have an extra leading underscore.
27576         (AM_SYS_NM_PARSE): New macro (converted to m4 from ltconfig.in);
27577         find a sed expression to parse global symbols from the output of
27578         $NM.
27579         (AM_PROG_LIBTOOL): require AM_SYS_NM_PARSE and
27580         AM_SYS_SYMBOL_UNDERSCORE.
27581         * demo/dlmain.c (main): Remove a single leading underscore from
27582         compiled symbol names if necessary.
27583
27584 1998-12-01  Alexandre Oliva  <oliva@dcc.unicamp.br>
27585
27586         * config.guess, config.sub: imported from autoconf pre-2.13
27587
27588 1998-11-27  Gary V. Vaughan  <gary@gnu.org>
27589
27590         * libtool (AM_PROG_LD): Oops... we need to know the host_os for
27591         the changes below.  I'm not sure whether mingw32 and os2 support
27592         UNC paths, if they did we wouldn't need the check, we could use
27593         UNC paths on all three; or if the bug with $LD not being
27594         shell-meta escaped was fixed, we could use '\\' separators on all
27595         three. AC_REQUIRE'ed AC_CANONICAL_HOST.
27596
27597         * libtool.m4 (AM_PROG_LD): Cannonicalize the absolute path for the
27598         ld program;  The order is funny to provide canonicalization to
27599         paths with '\\' separators as well as '/'.
27600         * ltconfig.in: ditto.
27601
27602         * AUTHORS: Added myself as a co-maintainer.
27603
27604         * ltconfig.in (archive_cmds): The `;\' in a compound statement is
27605         expanded wrongly for cygwin32, mingw32, aix3 and aix4. Changed to
27606         `;'.
27607
27608 1998-11-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
27609
27610         * libtool.spec (URL): point to www.gnu.org
27611         (Source): point to ftp.gnu.org
27612
27613         * Makefile.am (EXTRA_DIST): removed libtool.prj
27614         Reported by Akim Demaille <demaille@inf.enst.fr>
27615
27616 1998-11-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
27617
27618         * ltconfig.in (echo): avoid shell error messages when we're
27619         testing for large command line support
27620         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
27621
27622         * doc/PLATFORMS: updated last-tested release for platforms I've
27623         got access to
27624
27625         * THANKS: added Chris P. Ross
27626
27627 1998-11-24  Chris P. Ross  <cross@eng.us.uu.net>
27628
27629         * ltconfig.in: added recognition of the dynamic linker on BSD/OS 4.x
27630         * README: added BSD/OS 4.x to the list of supported platforms
27631         * doc/PLATFORMS: added BSD/OS 4.x support for various host id's
27632
27633 1998-11-24  David Heine  <dlheine@truffle.Stanford.EDU>
27634
27635         * ltmain.in (pass_all): actively pass the flags
27636
27637 1998-11-24  Thomas Tanner  <tanner@gmx.de>
27638
27639         * depdemo: added inter-library dependencies demo (doesn't work yet!)
27640         * AUTHORS: added myself to the list of maintainers
27641
27642 1998-11-22  Thomas Tanner  <tanner@gmx.de>
27643
27644         * libltdl: added support for .la files, LGPL license,
27645         K&R compatibility, some API changes and bugfixes
27646         * ltmain.in: renamed -module flag (for compiling) to -force-static,
27647         define -DSTATIC when compiling static .o files,
27648         do not include directories in dld_preloaded_symbols
27649         * mdemo: modified mdemo to work with the new libltdl
27650         * tests/mdemo-exec.test, tests/mdemo-inst.test: use .la files
27651
27652 1998-11-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
27653
27654         * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
27655         header files defining it.
27656
27657         * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
27658         libraries with gcc -shared if using gcc without GNU ld.
27659
27660         * ltconfig.in: replaced occurrences of solaris2 with solaris, to
27661         prepare for Solaris 7
27662
27663 1998-11-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
27664
27665         * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen -> -dlopen
27666         (hell_LDFLAGS): added -export-dynamic and -dlopen
27667         (SUBDIRS, INCLUDES): added modules directory
27668         (foo1.c, foo2.c, foo.h, libfoo1.sym, libfoo2.sym): moved to modules
27669         * Makefile.am: ditto
27670         * tests/mdemo-exec.test, tests/mdemo-inst.test: libraries moved
27671         * mdemo/modules/Makefile.am: new file
27672
27673         * */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies
27674
27675         * ltmain.in: missing `test' between `&&' and `"$module"'
27676
27677         * ltconfig.in (echo_test_string): the whole ltconfig script was
27678         too much for DU4.0's ksh, but the first 50 lines will be enough.
27679
27680         * ltmain.in (installed): new variable defined within a .la file,
27681         so that libtool can now link already-installed libraries into a
27682         program.
27683         * NEWS: ditto
27684         * doc/libtool.texi (Linking executables): document it
27685
27686         * ltmain.in (output_objdir): compute it from $output, not $arg
27687
27688         * tests/mdemo-inst.test (libltdl): install it
27689         * tests/mdemo-unst.test (libltdl): uninstall it
27690         * tests/Makefile.am (TESTS): list ltdl-unst.test before mdemo-conf.test
27691
27692 1998-11-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
27693
27694         * NEWS: -module and libltdl
27695         * mdemo/Makefile.am: ../libltdl is within $(srcdir)
27696
27697 1998-11-18  Thomas Tanner  <tanner@gmx.de>
27698
27699         * libltdl, Makefile.am: added libltdl (a system independent
27700         dlopen wrapper library extracted from mdemo)
27701         * ltmain.in: added -module flag for compiling and linking of
27702         modules. If enabled it compiles always both .o (with -DLT_RENAME)
27703         and .lo files
27704         * mdemo: modified mdemo to work with libltdl
27705         * tests/ltdl*: added tests for libltdl
27706
27707 1998-11-16  Steve Price  <sprice@hiwaay.net>
27708
27709         * ltconfig.in: when $host_os is freebsd[23]* determine whether
27710         the current linker format is a.out or ELF
27711         * ltmain.in: add two new $version_type's, freebsd-aout and
27712         freebsd-elf, to support above change
27713
27714 1998-11-16  Stephan Kulow  <coolo@kde.org>
27715
27716         * ltconfig.in: extent no_builtin_flag to contain -fno-rtti and
27717         -fno-exceptions in case we compile with a gcc, that supports
27718         this options (egcs and gcc >= 2.8)
27719
27720 1998-11-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27721
27722         * ltmain.in (C_compiler): copy $CC before it is overwritten with
27723         command-line compiler, so that we can use it to compile C sources
27724         generated during the build.  This fixes the problem that showed up
27725         with -export-dynamic of C++ programs in egcs 1.1.
27726         * NEWS: ditto
27727
27728 1998-11-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
27729
27730         * PORTING: Porting instructions are in the libtool manual already
27731
27732         * NEWS: Mention -export-symbols and new dlpreopen
27733
27734 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
27735
27736         * ltmain.in (IFS): revert Gary's patch when parsing version
27737         information; we still use `:' here :-)
27738
27739         * NEWS: updated
27740         * PORTING: new file, with general instructions and inter-library
27741         dependencies tips
27742
27743 1998-11-11  Gary V. Vaughan  <gary@gnu.org>
27744
27745         * ltconfig.in: make use of '~' field separator in reload_cmds,
27746         old_archive_from_new_cmds, old_archive_cmds, archive_cmds,
27747         old_postinstall_cmds, postinstall_cmds, old_postuninstall_cmds,
27748         postuninstall_cmds and finish_cmds, so that the semi-colons inside
27749         if/then/else/fi and for/do/done etc. do not break the eval loop in
27750         ltmain.in (below).
27751         * ltmain.in: changed all of the eval loops to use an IFS of `~',
27752         to allow differentiation between the end-of-statement-;
27753         (now `~' is used) and end-of-substatement-; (still `;').  This
27754         fixes AIX and win32 at least.
27755
27756 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
27757
27758         * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
27759         prepended by the compiler
27760
27761 1998-11-10  Toshio Kuratomi  <badger@prtr-13.ucsc.edu>
27762
27763         * ltconfig.in: re-enable deplibs
27764         * ltmain.in: support deplibs, at least for GNU/Linux/x86
27765         Updated to current libtool by Thomas Tanner  <tanner@gmx.de>
27766
27767 1998-11-10  Gordon Matzigkeit  <gord@trick.fig.org>
27768
27769         * ltmain.in (link): Make the relink warning less harsh.
27770
27771 1998-11-07  William M. Perry  <wmperry@aventail.com>
27772
27773         * ltconfig.in (aix3, aix4): uniquify symbol names in archive_cmds
27774
27775 1998-11-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
27776
27777         * ltconfig.in: add --falback-echo, to be used if everything else
27778         fails.  The tests now check the behavior of $echo for very large
27779         strings, because some echo commands would just core dump (e.g.,
27780         Solaris' printf).  If too large strings fail, smaller ones are
27781         tested.
27782         (ltecho): arrange that, if the --fallback-echo method is selected,
27783         echo will be defined in the libtool script so as to re-run itself,
27784         not ltconfig
27785         * ltmain.in: add --fallback-echo
27786         (qecho) ensure that, if --falback-echo is being used, qecho is
27787         defined with the full pathname of the libtool script
27788
27789         * tests/sh.test (test X): ensure that the double-quote supposed to be
27790         reported is really reported
27791
27792 1998-11-07  Thomas Tanner  <tanner@gmx.de>
27793
27794         * mdemo/main.c: removed hardcoded library names; link against -lm
27795         * tests/mdemo-exec, tests/mdemo-inst: pass the library names
27796         to the program
27797
27798 1998-11-07  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
27799
27800         * README: Added DG/UX
27801         * doc/PLATFORMS: ditto
27802
27803 1998-11-04  Michael Tiemann  <tiemann@cygnus.com>
27804
27805         * ltconfig.in (irix6): it's a little bit different from irix5
27806
27807 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27808
27809         * THANKS: Added Thomas Tanner and Gary V. Vaughan
27810
27811         * ltconfig.in, ltmain.in: updated and fixed the patches below
27812
27813 1998-11-04  Thomas Tanner  <tanner@gmx.de>
27814
27815         * mdemo/*: added new demo to demonstrate building of dlopenend
27816         modules
27817         * tests/Makefile.am, tests/mdemo*: added some tests for mdemo
27818
27819 1998-11-04  Gary V. Vaughan  <gary@gnu.org>
27820
27821         * demo/configure.in: added AC_EXEEXT macro so that the tests can
27822         work on cywin32/mingw32 hosts.  This requires the current CVS
27823         autoconf
27824
27825 1998-11-04  Thomas Tanner  <tanner@gmx.de>
27826
27827         * ltmain.in: New flag -export-symbols; new dlpreopen system
27828         * demo/dlmain.c: removed dld_preloaded_symbol_count
27829
27830 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27831
27832         * ltmain.in: On installation, don't get confused if the same name
27833         appears more than once in the list of library names.
27834
27835 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27836
27837         * ltconfig.in: Add objext and libext variables.  Check for object
27838         suffix.  Check for mingw32* as well as cygwin32*.  Use objext when
27839         testing compiler.  Add support for Visual C++ on cygwin32 when not
27840         using gcc.  Add objext, libext, and fix_srcfile_path to generated
27841         libtool script.
27842         * ltmain.in: Use .${objext} rather than .o.  Use fix_srcfile_path
27843         if it is set.  Check for .obj as well as for .o, and for .lib as
27844         well as for .a.  Use .${libext} rather than .a when creating old
27845         libraries.
27846         * libtoolize.in: Change initial /bin/sh to @SHELL@.
27847         * libtool.m4 (AM_PROG_LIBTOOL): Add AC_REQUIRE for
27848         AC_CANONICAL_BUILD, so that autoconf doesn't get mixed up by the
27849         AC_REQUIRE in AC_CHECK_TOOL.
27850
27851 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27852
27853         * ltconfig.in: Look in the right directory for libtool.c in
27854         archive_cmds for cygwin32.
27855
27856 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27857
27858         * ltconfig.in: Fix cygwin32 support to avoid using a double
27859         extension, to delete the def file, to set version_type to windows,
27860         and to include versuffix in the DLL name.
27861         * ltmain.in: Add support for a version_type of windows.
27862
27863 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27864
27865         * ltconfig.in: Add cygwin32 support.
27866         * libtool.m4 (AM_PROG_LIBTOOL): Call AM_SYS_LIBTOOL_CYGWIN32 on a
27867         cygwin32 host.  Pass DLLTOOL and AS to ltconfig.
27868         (AM_SYS_LIBTOOL_CYGWIN32): New macro.
27869
27870 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27871
27872         * libtool.m4 (sco): fix typo
27873
27874 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27875
27876         * ltconfig.in: On AIX, don't treat GNU ld specially.
27877
27878 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27879
27880         * ltconfig.in (hardcode_minus_L): Revert Ian's patch for
27881         ltconfig.in.  Although -L hardcoding is not used with GNU ld, it
27882         does happen, so hardcode_minus_L must be set to yes.
27883
27884         * ltconfig.in (compiler_o_lo): check whether we can write directly
27885         to a .lo
27886
27887         * ltmain.in (compiler_o_lo): if not, write to .o and rename it
27888
27889 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27890
27891         * ltconfig.in: For sunos4 using GNU ld, set hardcode_minus_L to
27892         no.
27893         * ltmain.in: Add some hacks to make SunOS --enable-shared work
27894         when using GNU ld.
27895
27896 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27897
27898         * THANKS: Added Marc J. Fraioli
27899
27900 1998-11-04  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
27901
27902         * ltconfig.in (dgux): new supported platforms
27903
27904 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27905
27906         * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
27907         available, fallback to not so safe mechanism, by setting
27908         need_locks to warn
27909         * ltmain.in (need_locks): when need_locks is set to warn, use the
27910         lockfile to try to fail in case of incorrect concurrent builds
27911
27912         * THANKS: Added Eric Estievenart
27913
27914 1998-11-04  Eric Estievenart  <eric@via.ecp.fr>
27915
27916         * doc/libtool.texi (Compile mode): Document that -o is fully
27917         supported.
27918
27919         * libtool.m4 (libtool-lock): new ARG_ENABLE; sets (need_locks)
27920         * ltconfig.in (disable-lock): control need_locks
27921         (hard_links): check whether hard-links can be used for locking
27922         * ltmain.in (need_locks): use $output_obj.lock for locking
27923
27924 1998-11-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
27925
27926         * ltmain.in: correctly create libraries and programs with
27927         directory components in their names
27928
27929 1998-11-03  Eric Estievenart <eric@via.ecp.fr>
27930
27931         * ltmain.in (output_obj): typo
27932
27933 1998-11-02  Ian Lance Taylor  <ian@cygnus.com>
27934
27935         * ltconfig.in: For sunos4, add ${libname}.so$versuffix to
27936         library_names_spec.
27937         * ltmain.in: For version_type of sunos, set versuffix even if
27938         -version-info was not used.
27939
27940 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
27941
27942         * ltmain.in (libobj): default value must not contain directory
27943         components
27944
27945 1998-11-02  Eric Estievenart <eric@via.ecp.fr>
27946
27947         * ltconfig.in (compiler): detect if the compiler supports
27948         -c and -o flags, create a variable compiler_c_o. Also issue
27949         a big warning if it is not supported
27950
27951         * ltmain.in (compile): enable the -o option as input for libtool.
27952         The objects are not moved if the compiler supports -o with -c.
27953         Sources and objects can contain relative directories.
27954         (link): enable the linking of executables into relative directories
27955
27956 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
27957
27958         * AUTHORS: added myself as a co-maintainer
27959         * THANKS: and removed my name from here
27960
27961         * autogen: new script; run it to bootstrap libtool after checking
27962         it out from CVS
27963
27964         * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
27965         suggested by Robert Lipe <robertl@dgii.com>
27966
27967 1998-10-31  Gordon Matzigkeit  <gord@trick.fig.org>
27968
27969         * demo/Makefile.am (hc-libpath): Use parameters from the libtool
27970         in the top build directory, since the one in the demo directory is
27971         not guaranteed to exist.
27972
27973 1998-10-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
27974
27975         * demo/Makefile.am (objdir): there are no longer quotes around
27976         objdir in the libtool script
27977
27978 1998-10-27  Gordon Matzigkeit  <gord@trick.fig.org>
27979
27980         * ltconfig.in (dynamic_linker): Echo the result to fd 6, so that
27981         --silent works correctly.  From William M. Perry.
27982
27983 1998-09-24  Gordon Matzigkeit  <gord@trick.fig.org>
27984
27985         * ltmain.in (link): Fix problems when building only static
27986         libraries.  From Owen Taylor.
27987
27988 1998-08-20  Gordon Matzigkeit  <gord@trick.fig.org>
27989
27990         * ltmain.in (install): When library_names_spec has redundancies,
27991         avoid deleting the main library when installing symlinks.  From
27992         Jeff Dairiki.
27993         (link): Get rid of backticks in a here doc comment.
27994         This causes segfaults on Solaris 2.  From Aleksandar Bakic.
27995         (finish): Don't display messages
27996
27997         * ltconfig.in (archive_cmds): On HP-UX 9, make sure we don't try
27998         to move a file to itself.  From Jeff Dairiki.
27999
28000 1998-08-19  Gordon Matzigkeit  <gord@trick.fig.org>
28001
28002         * ltconfig.in: Make changes to accomodate ltmain.c.
28003
28004         * Makefile.am (clibtool): New target for the C version of libtool.
28005
28006         * ltmain.c: Experimental C version of libtool.
28007
28008 1998-07-10  Ian Lance Taylor  <ian@cygnus.com>
28009
28010         * ltmain.in (install): Test against both $SHELL and /bin/sh.
28011
28012 1998-06-30  Gordon Matzigkeit  <gord@trick.fig.org>
28013
28014         * ltmain.in: Convenience archive support.  From Ulrich Drepper.
28015
28016         * ltconfig.in (postinstall_commands): Change libraries to be
28017         executable on Solaris in order to prevent ldd from moaning.  From
28018         Julian Gosnell.
28019         (whole_archive_flag_spec): New variable to shortcut convenience
28020         archive expansion.  From Ulrich Drepper.
28021
28022 1998-06-11  Gordon Matzigkeit  <gord@profitpress.com>
28023
28024         * ltconfig.in, ltmain.in: Change globs to accept forward slashes
28025         in absolute directory names used on DOS-like systems.  From Robert
28026         S. Maier.
28027
28028 Thu May 28 18:59:08 1998  Ian Lance Taylor  <ian@cygnus.com>
28029
28030         * ltconfig.in: Use $SHELL when invoking shell scripts.
28031
28032 1998-05-21  Gordon Matzigkeit  <gord@profitpress.com>
28033
28034         * ltmain.in (compile): Don't have `-static' turn off libtool
28035         libraries, so that people can use it just to guarantee that `.o'
28036         files exist.  Suggested by David Mosberger-Tang.
28037
28038 1998-05-18  Gordon Matzigkeit  <gord@profitpress.com>
28039
28040         * ltmain.in (link): Possibly reexec the shell from within the
28041         wrapper script.
28042         Allow `-version-info' and `-release' to coexist again.  If people
28043         want to shoot themselves in the foot, I'd better let them do so,
28044         so that people who are smart enough not to can squeeze out another
28045         ounce of functionality.  From Tim Janik.
28046         (version_vars): Delete dead variable.
28047
28048         * ltconfig.in (hardcode_minus_L): FreeBSD 3.0 doesn't hardcode, at
28049         last.  Reported by Jason Nordwick.
28050
28051         * libtoolize.in, ltconfig.in, ltmain.in: Change a bunch of `if
28052         test ...; then : ; else ...' constructs to `if test ! ...; then
28053         ...', for clarity.
28054
28055 1998-05-17  Gordon Matzigkeit  <gord@profitpress.com>
28056
28057         * ltmain.in (LC_ALL, LANG): Save these values and restore them
28058         during execute mode.  From Pavel Kankovsky.
28059         (mode): Accept strace and truss as programs that throw us into
28060         execute mode.  From Pavel Kankovsky.
28061
28062 1998-05-07  Ian Lance Taylor  <ian@cygnus.com>
28063
28064         * ltconfig.in: Don't use .$versuffix or .$major.  Instead, assume
28065         the variable will include any required prefix.
28066         * ltmain.in: If no -version-info option was used, produce empty
28067         version strings rather than 0.0.0.  When making library symlinks,
28068         avoid making a symlink if the name would be the same.
28069
28070 1998-04-27  Gordon Matzigkeit  <gord@profitpress.com>
28071
28072         * ltmain.in (link): Support `unsupported' as a hardcode_action.
28073         Reported by Lars Hecking.
28074         (lib_linked): Do some sanity checking to make sure that we
28075         actually do link libtool libraries into the program to prevent the
28076         above problem from happening again.
28077
28078 1998-04-20  Gordon Matzigkeit  <gord@profitpress.com>
28079
28080         * ltmain.in: Maybe reexec under $SHELL, if $echo doesn't work.
28081         Reported by Lars Hecking.
28082
28083 1998-04-19  Gordon Matzigkeit  <gord@profitpress.com>
28084
28085         * Makefile.am (maintainer-rekey): New rule to force us to change
28086         Project-Version after we make a release.  This keeps all version
28087         numbers in sync, rather than branching just before the release.
28088         (maintainer-release, maintainer-checkin): Use maintainer-rekey.
28089
28090         * ltmain.in (finish): Notice when a finish command fails, so that
28091         we can add it to the list of recommendations.
28092
28093 1998-04-17  Gordon Matzigkeit  <gord@profitpress.com>
28094
28095         * libtool.m4 (AM_PROG_LIBTOOL): Append file descriptor 5 to
28096         config.log, so that configure doesn't clobber the messages that
28097         ltconfig put there.  From David Taylor.
28098
28099 1998-04-15  Gordon Matzigkeit  <gord@profitpress.com>
28100
28101         * ltconfig.in (archive_cmds): Try using `$CC -shared' when
28102         configuring for GCC under irix5 and irix6.  From Wolfram Gloger.
28103         (ofile): Add `--output' flag to change the name of the generated
28104         libtool.  Suggested by Wolfram Gloger.
28105
28106 1998-04-14  Gordon Matzigkeit  <gord@profitpress.com>
28107
28108         * ltmain.in: Remove all hardcoded references to ltmain.in in
28109         favour of $PACKAGE and $PROGRAM.
28110         (install): Compute the installation name for programs, in case we
28111         install a relinked file which has a different name.  Reported by
28112         Pieter Schoenmakers.
28113
28114         * ltconfig.in (echo): Try using the ksh(1) `print -r' builtin
28115         command, before reverting to printf(1).
28116
28117         * Makefile.am (libtool): Use $(SHELL) when invoking ltconfig.
28118
28119         * ltconfig.in (echo): Rewrite the test for a working echo so that
28120         we win on Solaris by avoiding printf(1), if possible.
28121
28122         * tests/quote.test (echo): Update the echo test from ../ltconfig.in.
28123
28124 1998-04-13  Ian Lance Taylor  <ian@cygnus.com>
28125
28126         * libtool.m4 (AM_PROG_NM): Don't override NM in the environment.
28127
28128 1998-04-13  Gordon Matzigkeit  <gord@profitpress.com>
28129
28130         * ltmain.in: New `--config' flag to print out all configured
28131         variables.
28132
28133         * libtool.m4: Pass ltconfig the undocumented --no-reexec flag,
28134         since we call it explicitly using CONFIG_SHELL.
28135
28136         * ltconfig.in: Restart the script under a different shell if
28137         CONFIG_SHELL is not /bin/sh.  This way, people can use Bash if
28138         they don't have a working echo program.
28139
28140         * ltmain.in, ltconfig.in: Use $SHELL instead of /bin/sh when
28141         generating executable scripts.
28142
28143         * libtoolize.in, ltconfig.in, ltmain.in: Implement the `--debug'
28144         flag to begin shell tracing.
28145
28146         * ltconfig.in (archive_cmds): Don't use `gcc -shared', even if we
28147         have GNU ld.  Reported by Robert S. Maier.
28148
28149 1998-04-06  Gordon Matzigkeit  <gord@profitpress.com>
28150
28151         * ltconfig.in (pic_flag): Create more than just a null C file, so
28152         that the SunPRO 4.2 cc doesn't complain.  From Bob Friesenhahn.
28153         (gnu_ld_acts_native): Delete this variable.  There is just too
28154         much version skew to try to pretend GNU ld is the same as the
28155         system ld.  Reported by Ian Lance Taylor.
28156         (hardcode_action): Don't bother relinking or aborting on systems
28157         that are too dynamic to have a consistent hardcode method.
28158         Reported by Doug Winterburn.
28159
28160 1998-03-24  Gordon Matzigkeit  <gord@profitpress.com>
28161
28162         * doc/libtool.texi: A little proofreading.  From Albert
28163         Chin-A-Young.
28164
28165 1998-03-23  Gordon Matzigkeit  <gord@profitpress.com>
28166
28167         * ltconfig.in: Treat HP-UX 11 just like HP-UX 10.  From Jeff Law.
28168
28169 1998-03-21  Gordon Matzigkeit  <gord@profitpress.com>
28170
28171         * ltconfig.in (reload_flag): Correct a tiny bug where `--silent'
28172         would still print out the reload flag.  From Stephan Kulow.
28173
28174 1998-03-20  Ian Lance Taylor  <ian@cygnus.com>
28175
28176         * libtool.m4: Use changequote to avoid problems with square
28177         bracket patterns.
28178
28179 1998-03-20  Gordon Matzigkeit  <gord@profitpress.com>
28180
28181         * Release 1.2.
28182
28183 1998-03-18  Gordon Matzigkeit  <gord@profitpress.com>
28184
28185         * ltmain.in: Rearrange some of the echos to make them more
28186         consistent.
28187
28188 1998-03-14  Gordon Matzigkeit  <gord@profitpress.com>
28189
28190         * ltmain.in: Break up an echo command that causes Solaris printf
28191         to dump core.  Apparently the Solaris people hardcoded a 2110-byte
28192         buffer into their printf(1).  Feh.  From John Judge.
28193
28194 1998-03-11  Gordon Matzigkeit  <gord@profitpress.com>
28195
28196         * ltconfig.in: Change the test for the PIC compiler flag so that
28197         we assume it doesn't work if there are any warning messages.  This
28198         fixes a bug using old GCC's on HP-UX.  Reported by Akim Demaille.
28199
28200 1998-03-10  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
28201
28202         * Makefile.am ($(srcdir)/ltconfig): Remove bogus command to create
28203         a file ltconfig in the build directory.
28204
28205 1998-03-09  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
28206
28207         * ltmain.in: Avoid unnecessary use of command substitution,
28208         replacing foo=`eval \\$echo \"$mumble\"` by eval foo=\"$mumble\".
28209
28210         (link): Use ${1+"$@"} in wrapper scripts in order to pass
28211         arguments safely to a program.
28212
28213         * ltconfig.in: Use -fpic instead of -fPIC if $host_cpu matches
28214         m68*.
28215
28216 1998-03-08  Gordon Matzigkeit  <gord@profitpress.com>
28217
28218         * Release 1.1.
28219
28220         * ltmain.in: <sigh> I like `here documents' a lot, but apparently
28221         they are so badly handled by old and buggy /bin/sh's, that
28222         replacing `cat <<EOF ... EOF' by `$echo "..."' improves libtool's
28223         speed by a factor of 5.  So, I've eliminated here docs from the
28224         all-important ltmain.in.  From Tom Lane.
28225
28226         * tests/tlibtool: Eliminate from distribution.
28227
28228         * tests/defs (libtool): Don't use tlibtool anymore, since we can now use
28229         the generated libtool directly.
28230
28231 1998-03-07  Gordon Matzigkeit  <gord@profitpress.com>
28232
28233         * ltconfig.in: Copy the contents of ltmain.sh into the generated
28234         libtool.  This should more than halve the execution times on old
28235         or buggy /bin/sh systems, such as HP-UX 9 and SunOS 4.1.4.  From
28236         Tom Lane.
28237
28238 1998-03-05  Gordon Matzigkeit  <gord@profitpress.com>
28239
28240         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): Add support for
28241         the `default' package, so that people can control unnamed
28242         packages.
28243         (LD): Only add an ABI flag under IRIX 6.x, since IRIX 5.x doesn't
28244         support them.  From Alexandre Oliva.
28245
28246 1998-03-01  Gordon Matzigkeit  <gord@profitpress.com>
28247
28248         * ltconfig.in: Port to UnixWare 2.x.  From Christopher Olsen.
28249
28250 1998-02-25  Gordon Matzigkeit  <gord@profitpress.com>
28251
28252         * ltmain.in (compile): For consistency, honour the `-static' flag
28253         during compilation.
28254
28255 1998-02-23  Brendan Kehoe  <brendan@cygnus.com>
28256
28257         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): For
28258         --enable-shared, heed the value of $PACKAGE from AM_INIT_AUTOMAKE
28259         if given as the argument for the library to be built shared.
28260
28261 1998-02-20  Gordon Matzigkeit  <gord@profitpress.com>
28262
28263         * libtool.m4, ltconfig.in (NM): Fix up a typo confusion between
28264         $ac_dir and $dir.  Reported by Akim Demaille.
28265
28266         * ltmain.in (link): Don't allow both `-version-info' and
28267         `-release'.  Reported by Danny Backx.
28268
28269 1998-02-18  Gordon Matzigkeit  <gord@profitpress.com>
28270
28271         * Makefile.am (noinst_SCRIPTS): Remove lineno from distribution.
28272
28273         * lineno: Remove from distribution, as it is no longer needed.
28274
28275         * Makefile.am ($(srcdir)/ltconfig.in, $(srcdir)/ltmain.sh):
28276         Rewrite these rules not to use config.status or lineno.  This
28277         makes things simpler, and reduces dependencies, so that the
28278         scripts are rebuilt and installed in srcdir only when necessary.
28279         Reported by Stephan Kulow.
28280
28281         * tests/sh.test (scripts): Remove the lineno script, since it is no
28282         longer distributed.
28283
28284         * tests/assign.test, if.test, test-e.test: Even though 15 tests looks
28285         impressive, these are now redundant.  Remove them from the
28286         distribution.
28287
28288         * tests/sh.test: Do what assign.test, if.test, and test-e.test used to
28289         do.
28290
28291 1998-02-16  Gordon Matzigkeit  <gord@profitpress.com>
28292
28293         * libtool.m4, ltmain.in, ltconfig.in: Correctly identify absolute
28294         directory names on MS-DOS.  Suggested by Bob Friesenhahn.
28295
28296         * ltconfig.in, ltmain.in, libtool.m4: Change a bunch of `sed N!d'
28297         commands to `sed Nq', for efficiency.
28298
28299         * ltmain.in: Only egrep the first few lines of files in order to
28300         determine if they were libtool-generated.  This prevents egrep(1)
28301         from taking forever to look at a 10MB binary on Solaris.  From
28302         Stephan Kulow.
28303
28304         * tests/defs: Correctly identify absolute directory names on MS-DOS.
28305         Suggested by Bob Friesenhahn.
28306
28307 1998-02-11  Gordon Matzigkeit  <gord@profitpress.com>
28308
28309         * ltconfig.in (no_undefined_flag): Add a flag to declare under
28310         Solaris that the library should not have any undefined
28311         references.  Suggested by Bob Friesenhahn.
28312
28313         * ltmain.in (mkdir): Fix one more mkdir race.  From H.J. Lu.
28314
28315 1998-02-08  Gordon Matzigkeit  <gord@profitpress.com>
28316
28317         * ltconfig.in, ltmain.in (striplib, old_striplib): Ditto.
28318
28319         * ltconfig.in (profile_flag_pattern): Get rid of dead code.
28320
28321 1998-02-07  Gordon Matzigkeit  <gord@profitpress.com>
28322
28323         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): New macros to
28324         modify the `--enable-shared' and `--enable-static' defaults in the
28325         configure script.  This works a lot better than the old
28326         `enable_shared' and `enable_static' variables did.  Reported by
28327         Bob Friesenhahn.
28328
28329         * tests/suffix.test (extensions): Added GNAT (GNU Ada Translator)
28330         suffices, `.ada', `.ads', `.adb'.  From Samuel Tardieu.
28331
28332 1998-02-07  Samuel Tardieu  <sam@inf.enst.fr>
28333
28334         * ltmain.in: Recognize .ada, .ads and .adb as known suffixes (they
28335         are used by GNAT, the GNU Ada compiler).
28336
28337 1998-02-06  Gordon Matzigkeit  <gord@profitpress.com>
28338
28339         * ltconfig.in: Turn on IRIX shared libraries again!
28340
28341         * libtool.m4 (LD): Use file(1) to discover which ABI we're using
28342         on IRIX, and propagate the correct linker flag.  From Jim Wilson.
28343
28344         * ltconfig.in, ltmain.in (Xsed): `arg=-n; echo "$arg" | sed ...'
28345         gives problems, because the `-n' is interpreted as an option to
28346         echo(1).  So, use `echo "X$arg" | sed -e 's/^X//' ...' everywhere,
28347         via the $Xsed convenience variable.  Suggested by H.J. Lu.
28348
28349 1998-02-02  Gordon Matzigkeit  <gord@profitpress.com>
28350
28351         * ltconfig.in: Turn off IRIX shared library support until 32-bit
28352         and 64-bit ABI differences can be resolved.
28353
28354 1998-01-28  Gordon Matzigkeit  <gord@profitpress.com>
28355
28356         * libtool.m4 (LD): Reverse yesterday's change because `-old_ld'
28357         isn't accepted by GCC.
28358
28359 1998-01-27  Gordon Matzigkeit  <gord@profitpress.com>
28360
28361         * ltconfig.in (soname_spec): Add in user-specified release numbers
28362         for every host system that supports an soname that differs from
28363         the linkname.
28364
28365         * libtool.m4 (LD): Add `-old_ld' to the list of flags that need to
28366         be passed through on SGI.  Reported by Chris Lee.
28367
28368         * ltmain.in (release): Prepend a hyphen to the release number, and
28369         fix a typo because `-version-info' takes only 3 args.  From
28370         H.J. Lu.
28371
28372 1998-01-25  Gordon Matzigkeit  <gord@profitpress.com>
28373
28374         * ltconfig.in (library_names_spec): On Linux, use the
28375         user-specified release.
28376
28377         * ltmain.in (link): Allow the user to specify a release number for
28378         the library using the `-release' flag.  Suggested by H.J. Lu and
28379         Ian Lance Taylor.
28380
28381 1998-01-23  Gordon Matzigkeit  <gord@profitpress.com>
28382
28383         * tests/Makefile.am (TESTS_ENVIRONMENT): Export some important
28384         environment variables.  Reported by Ian Haggard.
28385
28386 1998-01-19  Gordon Matzigkeit  <gord@profitpress.com>
28387
28388         * ltconfig.in (old_postuninstall_cmds): Reorder so that chmod
28389         happens after ranlib.  From Markus F.X.J. Oberhumer.
28390
28391         * ltmain.in (mode): Added `gcc*' and `*-gcc*' to the patterns that
28392         recognize compilers.  From Pieter Schoenmakers.
28393         (link): Recognize `.a' files again.  Suggested by Pieter
28394         Schoenmakers.
28395
28396 1998-01-18  Gordon Matzigkeit  <gord@profitpress.com>
28397
28398         * ltmain.in (compile): Recognize `.asm' extension, for use with
28399         the nasm assembler.  From Markus F.X.J. Oberhumer.
28400
28401         * tests/suffix.test (extensions): Recognize `.asm'.  From Markus
28402         F.X.J. Oberhumer.
28403
28404 1998-01-12  Gordon Matzigkeit  <gord@profitpress.com>
28405
28406         * ltconfig.in (runpath_var): Use instead of
28407         `hardcode_runpath_var'.
28408
28409 1998-01-11  Gordon Matzigkeit  <gord@profitpress.com>
28410
28411         * ltmain.in (finish): Add a better --finish message.  Suggested by
28412         Kenneth Albanowski.
28413
28414         * ltconfig.in, ltmain.in: Fix a few typos.
28415
28416 1998-01-03  Gordon Matzigkeit  <gord@profitpress.com>
28417
28418         * ltmain.in (link): Quote the definition of $echo in the wrapper
28419         script.
28420
28421         * ltconfig.in (export_dynamic_flag_spec): Use `--export-dynamic'
28422         instead of `-export-dynamic', which is not accepted by all GNU
28423         ld's.  From Eiichi Takamori.
28424
28425         * ltmain.in (install): Don't print silly `library stripping'
28426         warnings.  Reported by François Pinard.
28427
28428 1997-12-19  Gordon Matzigkeit  <gord@profitpress.com>
28429
28430         * ltmain.in: Don't forget to quote the CDPATH substitution.  From
28431         Tor Lillqvist.
28432
28433 1997-12-18  Gordon Matzigkeit  <gord@profitpress.com>
28434
28435         * ltconfig.in, ltmain.in (CDPATH): Unset this environment variable
28436         so that HP-UX shells, at least, don't print out the directory name
28437         after a `cd' command.  From Tor Lillqvist.
28438
28439 1997-12-10  Gordon Matzigkeit  <gord@gnu.org>
28440
28441         * demo/Makefile.am (hardcode): Change a bunch of references to
28442         `$(LIBS)' to `-lm', since we no longer put -lm in LIBS.
28443
28444         * demo/configure.in: Delete the test for libm, since it is
28445         standard on every system.
28446
28447         * demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm,
28448         in accordance with new inter-library dependency code.
28449
28450         * ltmain.in (dependency_libs): Added to help people link programs
28451         without having to explicitly specify inter-library dependencies.
28452
28453         * ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3
28454         restriction to the generated libtool script.  Reported by Stefan
28455         Westerfeld.
28456
28457 1997-12-05  Gordon Matzigkeit  <gord@gnu.org>
28458
28459         * ltconfig.in (thisdir): Quote $echo in the generated libtool
28460         script for HP-UX.  From Markus F.X.J. Oberhumer.
28461
28462         * ltmain.in (link): Recognize the `.s' suffix.  From Markus
28463         F.X.J. Oberhumer.
28464
28465         * ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX
28466         because link_static_flag is never evaled.  From Eric Backus.
28467
28468         * tests/suffix.test (extensions): Recognize `.s'.  From Markus
28469         F.X.J. Oberhumer.
28470
28471 1997-12-01  Gordon Matzigkeit  <gord@gnu.org>
28472
28473         * demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our
28474         dependencies so that parallel builds work correctly.  From Jim
28475         Meyering.
28476
28477         * Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite
28478         these rules so that they are parallelizable.  Reported by Jim
28479         Meyering.
28480
28481         * ltconfig.in (ltecho): We need special handling to quote the
28482         `echo' variable itself.  From Alexandre Oliva.
28483
28484 1997-11-29  Gordon Matzigkeit  <gord@gnu.org>
28485
28486         * ltconfig.in (COLLECT_NAMES): Enable this workaround for a broken
28487         collect2 only on AIX 3.  This avoids problems on other AIX
28488         versions.  Reported by Stefan Westerfeld.
28489
28490         * ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds,
28491         except it is a single command which is evaled, and not shown.
28492
28493         * ltconfig.in: Port to AmigaOS.  From Joop van de Wege.
28494
28495         * ltmain.in (echo): Delete preamble to check for a working echo,
28496         since we just use the one included in the generated libtool.
28497
28498         * ltconfig.in (echo): Include this definition in the generated
28499         libtool script.
28500
28501 1997-11-28  Gordon Matzigkeit  <gord@gnu.org>
28502
28503         * ltconfig.in, libtool.m4 (NM): Add /usr/ccs/bin to the PATH
28504         before checking.  From Kaveh R. Ghazi.
28505         (NM): Delete an extraneous egrep from ltconfig.
28506
28507         * ltconfig.in (finish_cmds): Change back to using `ldconfig -n'.
28508         This makes Linux behave like other systems, which is more in line
28509         with what libtool needs.
28510
28511 1997-11-27  Gordon Matzigkeit  <gord@gnu.org>
28512
28513         * ltmain.in: Change a whole bunch of `progname' variables to
28514         `modename'.  This is for clarity, and to fix a tiny typo in finish
28515         mode.
28516
28517         * libtool.spec (Name, Version): Ditto.
28518
28519         * configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate
28520         the proper package name and version number.
28521
28522         * ltconfig.in (gnu_ld_acts_native): Treat GNU ld like the native
28523         linker on SunOS 4.x.  Suggested by Alexandre Oliva.
28524         (deplibs): Change the defaults all over, since most systems cannot
28525         handle inter-library dependencies.
28526
28527         * libtool.m4, ltconfig.in (NM): Only look at the first line of the
28528         output from NM when determining whether it supports a command line
28529         option.  This prevents false positives on OSes which ignore
28530         invalid flags, like HP-UX, which prints `nm: unknown option "B"
28531         ignored'.  Reported by Kaveh R. Ghazi.
28532
28533         * ltconfig.in (finish_cmds): On Linux, update ld.so.cache by
28534         removing the `-n' flag from ldconfig.  Suggested by Kenneth
28535         Albanowski.
28536
28537         * Makefile.am (maintainer-checkin, maintainer-release): New
28538         commands to reap the full benefit of using PRCS to maintain
28539         libtool version numbers.
28540
28541         * ltconfig.in, ltmain.in (global_symbol_pipe): Explicitly cast all
28542         addresses to __ptr_t.  This fixes a bug due to a strict IRIX
28543         compiler.  Suggested by Kaveh R. Ghazi.
28544
28545 1997-11-23  Gordon Matzigkeit  <gord@gnu.org>
28546
28547         * ltmain.in (echo): For aesthetics, avoid using `$echo' when
28548         `echo' will do *exactly* the same thing.  This prevents ugly
28549         `printf %s\n timestamp > some.lo' commands from appearing in the
28550         libtool output.
28551         (link): Delete the `-allow-undefined' flag because it is now the
28552         default.  Make `-no-undefined' in order for people to declare that
28553         a library is entirely self-contained.  This prevents maintainers
28554         from accidentally creating shared libraries that won't work on
28555         AIX.  Reported by Stefan Westerfeld and Danny Backx.
28556
28557         * ltconfig.in (echo): Use an echo variable, just as in ltmain.in,
28558         because we need it for quoting substitutions.  For most of the
28559         script, though, use the default echo, just like Autoconf does.
28560         Without this patch, character \001 ends up in global_symbol_pipe.
28561         Reported by Lars Hecking and Jürgen Fluk.
28562
28563         * ltmain.in (echo): Set default to `echo=echo'.  Ooops.  That's
28564         what you get for testing obscure code paths and forgetting to
28565         revert to the original version.  Reported by Danny Backx.
28566
28567 1997-11-14  Gordon Matzigkeit  <gord@gnu.org>
28568
28569         * ltconfig.in (hardcode_libdir_flag_spec): Set to `-R' for FreeBSD
28570         2.2.  From Sean Kelly.
28571         (postuninstall_cmds, old_postuninstall_cmds): Commands to run
28572         after uninstall mode deletes the libraries.  Suggested by Joop van
28573         de Wege.
28574         (export_dynamic_flag_spec): On HP-UX, add the `${wl}-E'
28575         export_dynamic_flag_spec.  Reported by Matthias Hoelzer.
28576
28577 1997-11-11  Gordon Matzigkeit  <gord@gnu.org>
28578
28579         * ltconfig.in, ltmain.in (sed_quote_subst): Oops.  We forgot to
28580         quote backticks.  Reported by Joop van de Wege.
28581
28582         * tests/quote.test: Add backticks to the backslashify test.
28583
28584 1997-11-09  Gordon Matzigkeit  <gord@gnu.org>
28585
28586         * ltconfig.in (symcode): On IRIX, don't extract undefined
28587         symbols.  When a function is inlined by G++, references to it are
28588         still marked as undefined in the object file.  This means that our
28589         symbol file causes undefined references, because there are
28590         actually no matching global symbols.  Reported by Paul Kendall.
28591
28592 1997-11-08  Gordon Matzigkeit  <gord@gnu.org>
28593
28594         * ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool
28595         script fragment to the generated libtool, rather than to stdout.
28596
28597 1997-11-07  Gordon Matzigkeit  <gord@gnu.org>
28598
28599         * libtool.m4 (LD): Add a more sophisticated test to determine the
28600         ABI flag on IRIX 6.  Suggested by Lars Hecking and Ian Lance
28601         Taylor.
28602
28603         * ltconfig.in, ltmain.in (COLLECT_NAMES): Only export this
28604         variable if we are running under AIX.  Otherwise, we tickle a g++
28605         bug under IRIX.  From Paul Kendall.
28606
28607         * Change bug reporting address to <bug-libtool@gnu.org>.
28608
28609         * ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a
28610         wildcard argument to `-expect_unresolved'.  From Stephan Kulow.
28611
28612 1997-11-06  Gordon Matzigkeit  <gord@gnu.org>
28613
28614         * ltmain.in (link): Use libname_spec.
28615
28616         * ltconfig.in (pic_flag): Somehow, the HP-UX pic_flag (`+Z') was
28617         dropped between libtool-1.0 and now.  Add it back in.  Reported by
28618         Akim Demaille.
28619         Integrated more patches for OS/2.  From Jeff Freedman.
28620         (libname_spec): New variable for OSes that don't require their
28621         libraries to look like `libNAME.a'.
28622
28623         * ltmain.in (link): Only use global_symbol_pipe if it has been
28624         defined.  From Stephan Kulow.
28625
28626         * ltconfig.in (global_symbol_pipe): Protect C fragment under C++
28627         compilers.  From Stephan Kulow.
28628
28629         * Makefile.am ($(srcdir)/acinclude.m4,
28630         $(srcdir)/demo/acinclude.m4): Change rules to use LN_S so that
28631         they can be run on any system.
28632
28633         * ltconfig.in (archive_cmds): For NetBSD, don't include deplibs.
28634         From Dieter Baron.
28635
28636         * ltmain.in (mkdir): Check that the directory doesn't exist before
28637         we exit with error, so that we don't get races during parallel
28638         builds.  From H.J. Lu.
28639         (fbsd_hideous_sh_bug): Apparently, some FreeBSD /bin/sh's have a
28640         bug that will empty base_compile unless we do this dummy
28641         assignment.  From Marc van Kempen.
28642
28643 1997-10-22  Gordon Matzigkeit  <gord@gnu.org>
28644
28645         * libtool.m4 (libtool_shared, libtool_static): Fixed logic error
28646         to reenable override of libtool's defaults by setting
28647         enable_shared or enable_static in configure.in.  Reported by Tom
28648         Tromey and Stephan Kulow.
28649
28650         * ltmain.in (link): Add explicit support for compiler options that
28651         begin with `+'.  Reported by Aubert Pierre.
28652
28653 1997-10-20  Gordon Matzigkeit  <gord@gnu.org>
28654
28655         * ltmain.in: Silly me.  Change a bunch of occurances of "* $dir *"
28656         into *" $dir "*.
28657
28658         * ltconfig.in (pic_flag): PIC is the default for AIX.  From Mark
28659         Kettenis.  It is also the default for OSF/1.
28660
28661         * demo/Makefile.am (objdir): Quote double-quotes.  From Mark
28662         Kettenis.
28663
28664         * ltconfig.in (global_symbol_pipe): This variable is not
28665         double-evaled, so it should not be double quoted.  From Mark
28666         Kettenis.
28667
28668 1997-10-19  Gordon Matzigkeit  <gord@gnu.org>
28669
28670         * ltconfig.in (LD): Same as below.
28671
28672         * libtool.m4 (LD): Set LD if we discover an absolute path to GNU
28673         ld.  This prevents breakage when `$CC -print-prog-name=ld' returns
28674         an absolute directory name.  Reported by Ulrich Drepper.
28675
28676         * ltconfig.in: Port to OS/2 using EMX.  From Jeff Freedman.
28677
28678         * ltmain.in (link): Use old_archive_from_new_cmds.
28679
28680         * ltconfig.in (old_archive_from_new_cmds): New variable to
28681         support DLL libraries.
28682
28683         * ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is
28684         not empty.  Reported by Stephan Kulow.
28685
28686 1997-10-18  Gordon Matzigkeit  <gord@gnu.org>
28687
28688         * ltconfig.in (objdir): Use the .libs directory on all systems for
28689         which that name is valid, and _libs on the others (like MS-DOS).
28690         Suggested by Juergen Erhard.
28691
28692 1997-10-14  Gordon Matzigkeit  <gord@gnu.org>
28693
28694         * ltmain.in (link): Added a bit more inter-language support to the
28695         symbol file generation process.
28696         Instead of complaining about unrecognized argument suffices, pass
28697         them to the linker.  This prevents libtool from barfing on
28698         mandatory arguments to linker flags.  Reported by Michael
28699         Tiemann.
28700
28701 1997-10-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28702
28703         * ltmain.in (link): Change the wrapper script to follow symlinks
28704         in order to find thisdir.  This should put the final nail in the
28705         coffin for problems with wrapper scripts.  From Ian Lance Taylor.
28706
28707 1997-10-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28708
28709         * ltmain.in: Change a few `$echo' commands into `$show' to make
28710         --silent mode behave as advertised.
28711
28712         * ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use
28713         `-expect_unresolved \*'.  From Christian Mondrup.
28714
28715         * ltmain.in (install): Change install mode to allow a specified
28716         /bin/sh argument at the beginning of the install_prog.  Also,
28717         specify the shell to run when invoking libtool recursively for
28718         finish mode.  From Chris Provenzano.
28719
28720         * libtool.m4 (LIBTOOL): Change definition to include $(SHELL).
28721         From Chris Provenzano.
28722
28723         * ltconfig.in: Port to UTS 4.x.  From Alistair Crooks.
28724
28725         * demo/Makefile.am (hc-libflag): Add rules to make this binary for
28726         hardcode.test.
28727
28728         * tests/hardcode.test (hardcode_libdir_flag_spec): Check the hardcoding
28729         properties of the flag_spec, too.
28730
28731 1997-09-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28732
28733         * ltconfig.in (LD): As with libtool.m4, don't override LD.
28734         Do a whole bunch of ac_t quoting.
28735
28736 1997-09-24  Ian Lance Taylor  <ian@cygnus.com>
28737
28738         * libtool.m4 (AM_PROG_LD): Don't override LD in the environment.
28739
28740 1997-09-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28741
28742         * libtool.m4, ltconfig.in (NM): Arguments to the for loop must be
28743         whitespace separated.  This fixes a bug under FreeBSD's /bin/sh.
28744         From George Scott.
28745
28746         * tests/defs, tests/Makefile.am (clean-local): Change =inst to
28747         _inst to fix portability on MS-DOS.  From Robert Hoehne.
28748
28749 1997-09-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28750
28751         * ltmain.in (deplibs): When building shared libraries, always add
28752         -lc to deplibs.  Reported by Andreas Jellinghaus.
28753
28754 1997-09-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28755
28756         * ltconfig.in, ltmain.in (COLLECT_NAMES): If the COLLECT_NAMES
28757         environment variable has not been set, set it to empty.  This
28758         apparently fixes the AIX bug with GCC's collect2.  Reported by
28759         Mark Kettenis.
28760
28761         * demo/Makefile.am, ltmain.in, tests/hardcode.test (objdir):
28762         Changed objdir variable .libs to _libs.  This is another MS-DOS
28763         portability fix.  Suggested by Robert Hoehne.
28764
28765         * tests/hardcode.test (objdir): New variable to simplify change from
28766         .libs to _libs (MS-DOS portability fix).
28767
28768 1997-09-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28769
28770         * ltconfig.in, ltmain.in (hardcode_minusL): Fix typo by renaming
28771         hardcode_minusL to hardcode_minus_L.  Also add FreeBSD
28772         hardcode_libdir_flag_spec. From Paul Traina.
28773
28774         * ltmain.in (link): Honour multiple `-rpath' flags when linking
28775         programs.  Suggested by Bengt Martensson.
28776         Quote appearances of $echo in the wrapper script.  From Alexandre
28777         Oliva.
28778
28779         * Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead
28780         of ltmain.sh.in.
28781
28782         * ltmain.in: Rename ltmain.sh.in to ltmain.in.  This fixes a
28783         portability problem (on MS-DOS, of all places!).  From Robert
28784         Hoehne.
28785
28786 1997-09-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28787
28788         * ltmain.sh.in (link): Do not transform libtool objects to regular
28789         objects if we did not build old libs.  Reported by Tomas Hiller.
28790
28791 1997-09-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28792
28793         * demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to
28794         hell.debug in order to reflect the new static linking semantics.
28795
28796         * ltmain.sh.in (link): Add new `-all-static' flag to prevent all
28797         dynamic linking.  The old `-static' flag just prevents dynamic
28798         linking against libtool libraries.  Suggested by Bengt
28799         Martensson.
28800
28801         * ltconfig.in (with_gnu_ld): Add a test to make sure that we are
28802         actually using GNU ld.  This fixes an inconsistency when running
28803         ltconfig without using libtool.m4.  Reported by Ulrich Drepper.
28804         (global_symbol_pipe): Delete symbols that are not valid C
28805         identifiers.  Reported by Johan Danielsson and Bengt Martensson.
28806
28807         * tests/demo-exec.test, tests/demo-inst.test: Change references from
28808         hell.static to hell.debug.
28809
28810         * tests/quote.test (echo): Add the same Digital Unix echo test fixes as
28811         the ones to ltmain.sh.in from Todd Kover.
28812
28813         * tests/if.test, tests/test-e.test (scripts): Add ../lineno to
28814         the scripts we check.
28815         * tests/if.test: Check for accidental use of test X$something rather
28816         than test "X$something".
28817
28818 1997-09-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28819
28820         * ltmain.sh.in (echo): Quote all the uses of `echo' in all eval
28821         statements.  Reported by Bengt Martensson and Alexandre Oliva.
28822         (echo): Need to surround test args with double quotes, or the echo
28823         test fails on Digital Unix 4.0.  From Todd Kover.
28824
28825 1997-08-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28826
28827         * ltmain.sh.in (echo): Change test to one that uses printf.
28828         This works on AIX, which has the same problems that Solaris does,
28829         but no working echo program.
28830
28831         * tests/quote.test (echo): Change test to version that uses printf.
28832         Be less strict about return results.
28833
28834 1997-08-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28835
28836         * ltmain.sh.in (link): Make sure that compile_command and
28837         finalize_command are always evaled.  Quote any unknown linker
28838         flags we need to pass through.
28839         (compile): Use quoting for flags we pass.
28840         (echo): I hate Sun!  The /usr/bin/echo on Solaris handles
28841         backslash sequences, which makes it impossible to do backslash
28842         quoting using echo and sed.  So, we search for an echo that obeys
28843         the `echo '\t'` = '\t' equality.  Then we use `$echo' everywhere
28844         in ltmain.sh.
28845         Put tabs back into the ${IFS=   } sequences.  Emacs untabify is
28846         libtool bane.
28847
28848         * ltconfig.in: Quote all variable values that may contain
28849         metacharacters creating the libtool script.  This provides
28850         complete protection, so that even single-quotes may appear inside
28851         a libtool variable value.
28852
28853         * ltmain.sh.in (link): Quote finalize_command before putting it in
28854         the wrapper script.
28855
28856         * tests/quote.test (echo): Add the test for a non-backslash-mangling
28857         echo.
28858
28859 1997-08-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28860
28861         * ltmain.sh.in (sed_quote_subst): Change the quoting procedure
28862         again.  I think that the new one is robust for *all* characters,
28863         including whitespace and metacharacters.
28864
28865         * tests/quote.test: New torture test for libtool metacharacter quoting.
28866
28867 1997-08-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28868
28869         * ltmain.sh.in: Change quoting procedure because some shells
28870         cannot handle `]' in scan sets.  From Ian Dall.
28871
28872 1997-08-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28873
28874         * ltmain.sh.in (execute): Added -dlopen flag handling.  Suggested
28875         by Alexandre Oliva.
28876
28877 1997-08-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28878
28879         * ltmain.sh.in (link): Change executable wrapper to fix up value
28880         of thisdir, as well as progdir, if the $0 path doesn't work.  This
28881         guarantees that shlibpath_var is set correctly.  Add support for
28882         execute mode.
28883
28884         * ltmain.sh.in (execute): New mode to automatically set
28885         shlibpath_var, which allows easy debugging of uninstalled
28886         executables and libraries.  Suggested by Kenneth Albanowski.
28887
28888 1997-08-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28889
28890         * Makefile.am ($(srcdir)/ltconfig): Use lineno.
28891
28892         * configure.in: Add AM_PROG_AWK for lineno.
28893
28894         * lineno: New program to automatically put line numbers in
28895         ltconfig.
28896
28897         * libtool.m4, ltconfig.in (AM_PROG_LD): Yet Another Rewrite, which
28898         incorporates the results of `gcc -print-program-name=ld'.
28899         Suggested by Alexandre Oliva.
28900
28901 1997-08-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28902
28903         * ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off
28904         command echoing.  From Juergen A. Erhard.
28905
28906         (compile): Recognize the Objective C `.m' extension.  From Juergen
28907         A. Erhard.
28908
28909         (compile): Suppress error output from the second compilation (if
28910         any) so that we don't get those frustrating duplicate error
28911         messages.
28912
28913         * tests/suffix.test (extensions): Added Objective C extension, `.m'.
28914
28915 1997-08-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28916
28917         * ltconfig.in: Added messages to config.log to describe what sort
28918         of test we are running.
28919         (pic_flag): Added a sanity check for pic_flag.  This should fix
28920         bugs reported using the cc bundled with HP-UX 10.  Suggested by
28921         Bruno Haible and Akim Demaille.
28922
28923 1997-08-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28924
28925         * ltmain.sh.in (link): Add -dlopen and -dlpreopen support for
28926         libtool objects.  This means that dlopened modules no longer need
28927         to be shared libraries.
28928
28929         * ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC.
28930         Reported by Ian Lance Taylor.
28931
28932         * libtool.m4 (LD): Always add `-n32' to the linker if we are using
28933         GCC on IRIX 6.  Reported by Ian Lance Taylor.
28934
28935 1997-07-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28936
28937         * libtool.m4 (AM_PROG_LIBTOOL): Explicitly check enable_shared and
28938         enable_static rather than just enableval.  This allows
28939         configure.in scripts to set their own defaults.  Suggested by
28940         Tommy Reilly.
28941
28942 1997-07-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28943
28944         * ltmain.sh.in: Add NLS environment variable handling copied from
28945         ltconfig.in.  Reported by Akim Demaille.
28946         (link): If allow_undefined_flag is not supported, then turn on old
28947         libraries.  Reported by Akim Demaille.
28948
28949         * demo/dlmain.c (main): Use dld_preloaded_symbol_count to display
28950         a message about the sortedness of the symbol table.
28951
28952         * ltconfig.in (nlist): Use an nlist convenience variable, so that
28953         code can be shared directly with ltmain.sh.in.
28954
28955         * ltconfig.in, ltmain.sh.in (dld_preloaded_symbol_count): Count up
28956         the number of symbols in the dld_preloaded_symbols.  Set to `-1'
28957         if the list wasn't both sorted and counted.  This allows
28958         applications to do a quick binary search, if they are so inclined.
28959
28960 1997-07-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28961
28962         * ltmain.sh.in (link): Remove code for `-version-file', since it
28963         has been long-deprecated.
28964
28965         Disable static linking if hardcode_direct is unsupported and there
28966         is no working link_static_flag.  This provides correct behaviour
28967         for all cases on AIX 3, regardless of whether collect2 is broken
28968         or not.  Reported by Mark Kettenis.
28969
28970         * ltconfig.in: Fix typo in test polarity.  From Mark Kettenis.
28971
28972 1997-07-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28973
28974         * ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses
28975         a broken collect2.  Adapted out of test results from Mark
28976         Kettenis.
28977         (link_static_flag): Make sure the link_static_flag actually works
28978         with a trivial binary.
28979
28980         * ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed
28981         from export_dynamic_flag because we eval it in ltmain.sh.
28982
28983         * ltmain.sh.in (link_static): Don't eval link_static_flag.
28984
28985         * demo/dlmain.c (main): Change function prototype to be KNR
28986         compatible.  From Kaveh R. Ghazi.
28987
28988         * ltmain.sh.in (link): Use no_builtin_flag.  This works around
28989         conflicting definitions of builtin functions with at least GCC.
28990         Reported by Kazuhiro Sasayama.
28991
28992         * ltconfig.in (no_builtin_flag): New flag to turn off builtin
28993         functions when compiling an object file.
28994         (pipe_works): Use it.
28995
28996         * tests/demo-exec.test (status): Use status variables so that we try to
28997         execute all the programs.
28998
28999 1997-07-23  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29000
29001         * ltconfig.in (pic_flag): According to the libg++ 2.7.2 configure
29002         script, DEC alpha CPUs are PIC-only, as well.  Reported by Kevin
29003         Jacobs.
29004
29005 1997-07-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29006
29007         * ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X;
29008         Y'" with "sed -e 'X' -e 'Y'".
29009
29010         * ltmain.sh.in (link): Finish full integration for `-dlopen' and
29011         `-dlpreopen'.
29012
29013         Fix two silly typos where I used a compile_command in place of a
29014         finalize_command, and vice versa.
29015
29016         Change the wrapper script to check a hardcoded path only if the
29017         argv[0] method fails.  This is a compromise for the previous two
29018         patches, and should solve the majority of problems with wrapper
29019         scripts.  From Kenneth Albanowski.
29020
29021         (link): Change a reference to hardcode_libdir_colon_separated to
29022         use the new hardcode_libdir_separator variable.
29023
29024         * demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and
29025         `-dlpreopen' for building helldl.
29026
29027         * demo/dlmain.c (main): Succeed, even if none of the libhello
29028         symbols have been preloaded.
29029
29030 1997-07-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29031
29032         * ltconfig.in (global_symbol_pipe): Add `U' to the accepted global
29033         symbol types.  This means that we will get duplicate symbols, but
29034         we'll also be sure to get all global symbols used by the program.
29035
29036         * ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make
29037         symbol output unique.
29038
29039 1997-07-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29040
29041         * ltconfig.in (pipe_works): Check to make sure our guessed
29042         global_symbol_pipe actually works.
29043
29044         * ltmain.sh.in (link): Revert change from Kenneth Albanowski.  The
29045         wrapper scripts are more reliable when they just use the argv[0]
29046         value.  Generally, when the argv[0] method doesn't work, the user
29047         is trying to do something weird with an uninstalled binary, and
29048         should try a different approach.
29049
29050         * ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of
29051         `$cc'.  This fixes a FreeBSD bug.  Reported by Chuck Robey, and
29052         others.
29053
29054 1997-07-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29055
29056         * ltmain.sh.in (link): In wrapper scripts, hardcode the current
29057         directory to prevent phony argv[0] values from screwing up our
29058         program.  From Kenneth Albanowski.
29059
29060 1997-07-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29061
29062         * Makefile.am (demo_distfiles): Add demo/dlmain.c to the
29063         distribution.
29064
29065 1997-07-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29066
29067         * demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate
29068         `-dlopen' usage.
29069
29070         * demo/dlmain.c: New file to demonstrate preloaded modules.
29071
29072         * ltmain.sh.in (link): Add `-dlopen' flag to preload dynamic
29073         modules, even on static platforms.  Use `$NM' and
29074         `$global_symbol_cmd' to extract symbols from required files.
29075         (dlname): Delete dlname mode entirely.  It is rendered obsolete
29076         because the `.la' file format is now a public interface.
29077
29078         * ltconfig.in (NM): New variable for BSD-compatible nm program.
29079         (global_symbol_cmd): Pipeline to extract global symbols from the
29080         nm output.
29081
29082         * ltmain.sh.in: The .la file header should depend on `ltmain.sh',
29083         not `$PROGRAM'.
29084         (link): Make sure $export_dynamic_flag is eval'ed before it is
29085         used.
29086
29087         * tests/demo-exec.test, tests/demo-inst.test: Check the new
29088         helldl program, too.
29089
29090 1997-07-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29091
29092         * libtool.spec: New Red Hat Package Manager specification file in
29093         order to help people prepare distributions of libtool for Linux.
29094
29095         * ltmain.sh.in: Eliminate two accidental uses of the NONE magic
29096         value.  These were breaking libtool's behaviour when no mode is
29097         specified.
29098
29099         * tests/nomode.test: New test to make sure there is correct behaviour
29100         when we don't specify a mode.
29101
29102 1997-07-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29103
29104         * Release 1.0.
29105
29106         * ltconfig.in: On SunOS, append /usr/etc to the PATH before
29107         running ldconfig; on *BSD, append /sbin.  This was done in line
29108         with the Linux change suggested by Kenneth Albanowski.
29109
29110         * demo/Makefile.am (hardcode_tests): Aesthetic change to
29111         alphabetize order of compiling the hardcode tests.
29112
29113         * Makefile.am (EXTRA_DIST): Delete README-automake.
29114
29115         * README-automake: Remove from distribution.
29116
29117 1997-07-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29118
29119         * ltmain.sh.in (link): In the executable wrapper, strip trailing
29120         colons from the shlibpath_var because some ld.so's, notably
29121         OpenBSD 2.0's (!), don't parse colon-terminated values correctly.
29122         From Tim Pierce.
29123
29124 1997-07-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29125
29126         * ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic
29127         variable value.  Use an empty variable instead.
29128
29129         * ltconfig.in (with_gcc, with_gnu_ld): Do the tests for the C
29130         compiler and linker if the variables are unset, or if they are not
29131         GNU C and ld.
29132         (RANLIB): Eliminate redundant `if' statement.
29133
29134         * configure.in: Use AM_PROG_LD.
29135
29136         * libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU
29137         ld.
29138         (AM_PROG_LD): Rename AM_PATH_PROG_LD to AM_PROG_LD.  Parameterize
29139         so that the user can specify `--with-gnu-ld' or `--without-gnu-ld'
29140         to indicate his preference.
29141         (AM_PROG_LIBTOOL): Use it.
29142
29143 1997-06-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29144
29145         * ltconfig.in: Append /sbin to the path before running ldconfig on
29146         Linux.  This helps superusers who haven't set their PATH
29147         correctly.  Suggested by Kenneth Albanowski.
29148
29149         * tests/if.test: New test to make sure that we haven't forgotten to
29150         follow an `if' statement with a `test' command.  This should avoid
29151         the majority of hard-to-track bugs.
29152
29153 1997-06-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29154
29155         * ltmain.sh.in: Change all the `eval "$run ..."' sequences to
29156         `$run "eval ..."'.
29157
29158         Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'.
29159         This is the sequence recommended by the Autoconf manual, and
29160         should avoid any problems on older machines.  Eliminate all uses
29161         of `cp -p'.  Reported by Akim Demaille.
29162
29163         (install): Use `test $# -gt 0' instead of `test -n "$1"'.
29164
29165         * ltconfig.in (LN_S): Add test to see if `ln -s' works.
29166
29167         * libtool.m4: Increment serial number, and require AC_PROG_LN_S.
29168
29169 1997-06-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29170
29171         * ltmain.sh.in (link): Add missing `test' statement.  Reported by
29172         Akim Demaille.
29173
29174 1997-06-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29175
29176         * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of
29177         am_cv_path_ld.  From Tim Pierce.
29178
29179 1997-06-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29180
29181         * ltmain.sh.in: Redo two robustness fixes.  Alexandre had the
29182         correct approach, but I botched them.
29183
29184         * ltconfig.in (dynamic_linker): Disable shared libraries on
29185         MkLinux unless GNU libc is in use.  Reported by Akim Demaille.
29186
29187 1997-06-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29188
29189         * ltmain.sh.in (install): Add a missing `test' command.  Reported
29190         by Joel Weber.
29191         Miscellaneous fixes to improve robustness.  From Alexandre Oliva.
29192
29193         * tests/demo-conf.test (CONFIG_SITE): Set to /dev/null, so that the
29194         config.site file doesn't mess up our prefix.  Reported by Joel
29195         Weber.
29196
29197         * tests/demo-inst.test: Always run both hell.static and hell.
29198
29199         * tests/demo-conf.test: Always remove the local config.cache, but run
29200         `make distclean' only if the Makefile exists.  Otherwise, the demo
29201         directory is not cleaned up if a user uses their own config.cache.
29202         Reported by Joel Weber.
29203
29204 1997-06-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29205
29206         * ltmain.sh.in (link): Create invalid libtool objects when partial
29207         linking if we don't have PIC.  From Jeff Dairiki.
29208         (install): Fix bug if libtool object is installed to a file name
29209         without directory components.  From Jeff Dairiki.
29210
29211 1997-06-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29212
29213         * Makefile.am (demo/configure): Fix up rules to run autoconf.
29214         (aclocal.m4): Now we depend on our own libtool.m4.
29215
29216         * configure.in (AM_PATH_PROG_LD): Use it.
29217
29218         * libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used
29219         by the C compiler.
29220         (AM_PROG_LIBTOOL): Use it.
29221
29222         * ltmain.sh.in (install, uninstall): Support installing and
29223         uninstalling `.lo' files.  From Jeff Dairiki.
29224
29225 1997-06-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29226
29227         * Makefile.am (ltconfig, ltmain.sh): Only move if $(srcdir) is not
29228         the current directory.  Don't regenerate every time the package is
29229         reconfigured.  Reported by Tom Tromey.
29230         (MAINTAINERCLEANFILES): Added ltconfig, ltmain.sh, so that
29231         $(srcdir) is not messed with during a regular clean.
29232
29233 1997-06-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29234
29235         * Makefile.am (ltconfig, ltmain.sh): Be sure to move these files
29236         into $(srcdir) once they are created.
29237
29238         * ltmain.sh.in (link): Disable building static libraries.
29239         People should use their favourite AR and RANLIB commands.
29240         Disable building old-style objects if `--disable-static' is
29241         given.  Suggested by Tom Lees and Stephan Kulow.
29242
29243 1997-06-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29244
29245         * ltconfig.in (host_cpu, host_vendor, host_os): Patch up
29246         definitions, to allow for the fact that the host_os may contain
29247         hyphens (as in linux-gnu).  From Scott Goehring.
29248
29249         * ltmain.sh.in (link): Move the `dlname' setting closer to the top
29250         of the file.  Suggested by David Mosberger-Tang.
29251         Symlink the libtool archive into the `.libs' directory so that it
29252         can be found by programs that want to find a library's dlname by
29253         searching LD_LIBRARY_PATH.  Reported by David Mosberger-Tang.
29254
29255 1997-06-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29256
29257         * Tell people to report bugs to the new libtool mailing list,
29258         <bug-libtool@gnu.ai.mit.edu>.
29259
29260 1997-06-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29261
29262         * ltconfig.in (allow_undefined_flag): New variable that implements
29263         `-allow-undefined'.
29264         (archive_cmds): Enable C++ constructors for FreeBSD 2.2.  From
29265         David Nugent.
29266
29267         * ltmain.sh.in (link): Accept new `-allow-undefined' flag when
29268         building libtool libraries.  This tells libtool to allow
29269         unresolved symbols to exist in shared libraries.  Basically, this
29270         turns off shared libraries on AIX.  Suggested by Ian Lance Taylor.
29271
29272 1997-05-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29273
29274         * libtool.m4 (LD): On at least IRIX, many different flags need to
29275         be propagated to the linker if they are part of the compiler
29276         command line.  Reported by Anthony Green.
29277
29278 1997-05-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29279
29280         * ltconfig.in: Trivial port to FreeBSD 3.  From David Nugent.
29281
29282 1997-04-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29283
29284         * ltmain.sh.in (link): Remove all traces of `-whole-archive',
29285         `-no-whole-archive', and libtool convenience libraries.  They were
29286         more trouble than they're worth.  If these are ever reimplemented,
29287         they need more careful attention to make portable.
29288
29289         * libtool.m4, ltconfig.in: Added a `--disable-static' flag to turn
29290         off static library creation.  From Tom Lees (who finally convinced
29291         me that it was the Right Thing to do).
29292
29293 1997-04-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29294
29295         * ltmain.sh.in (hardcode_runpath_var, runpath_var): Use them, if
29296         the linker has no -rpath flag.
29297         Quote the values we use to set runpath_var and shlibpath_var.
29298         (link): Use libobjlibs for libtool convenience libraries.
29299
29300         * ltconfig.in (hardcode_runpath_var, runpath_var): Add new
29301         variables to describe linkers that honour `LD_RUN_PATH'.
29302         (host_cpu, host_os): Use these more specific variables, rather
29303         than the full canonical host system name.
29304
29305         * ltmain.sh.in (dlname): Distinguish between missing
29306         `-export-dynamic' and when the library is only statically linked.
29307
29308 1997-04-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29309
29310         * ltconfig.in: Trivial port to OpenBSD by making it an alias for
29311         NetBSD.  From Tim Pierce.
29312
29313 1997-04-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29314
29315         * ltconfig.in: Temporary measures to check for a broken collect2
29316         program.  Right now, we just see if we're using GCC on AIX 3.
29317
29318         * tests/hardcode.test: AIX also has arbitrary limits on the line length
29319         of input to fgrep(1), so we need to translate NUL characters to
29320         newlines in order to properly detect embedded `.libs'.  From Bruno
29321         Haible.
29322         Also redirect stderr to /dev/null, so that AIX users don't get
29323         worried by `fgrep: Maximum line length of 2048 exceeded.'.
29324
29325 1997-04-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29326
29327         * ltmain.sh.in (mode): Use `egrep -e' when inferring the operation
29328         mode.
29329
29330 1997-04-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29331
29332         * ltconfig.in (linker): Some GNU ld's don't accept `--version',
29333         but do accept `-v'.  From Jukka Honkela.
29334         (ld_shlibs): AIX lossage may be settling down.  AIX 3.2.5 ld does
29335         *not* hardcode direct libraries, but AIX 4.1.[45] ld does.
29336
29337 1997-04-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29338
29339         * ltconfig.in (hardcode_action): Fix silly logic error.  From
29340         Bruno Haible.
29341
29342 1997-04-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29343
29344         * ltmain.sh.in (install): Relink if hardcode_action is `relink',
29345         rather than using complex conditionals based on the other
29346         hardcode variables.
29347
29348         * ltconfig.in (hardcode_action): Set to `relink', not `immediate',
29349         if we can only hardcode existing directories.  Rearrange
29350         conditionals to make the intent clearer, otherwise this can be one
29351         hellish piece of code for the already-dizzy libtool maintainer.
29352
29353 1997-04-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29354
29355         * replfunc.m4: Delete from the distribution.  Documentation now
29356         describes how to set LTALLOCA and LTLIBOBJS in your own
29357         configure.in.
29358
29359         * ltmain.sh.in (link): Make sure a libtool library only counts as
29360         a shared library if its library_names are non-null.
29361         Use timestamps for .lo's when PIC is turned off, rather than
29362         symlinking to the real object.  This helps invalid mixtures of PIC
29363         and non-PIC to fail.
29364
29365 1997-04-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29366
29367         * Makefile.am (EXTRA_DIST): Distribute libtool.prj.
29368
29369         * Shameless plug: Changed source code management system from CVS
29370         to PRCS.
29371
29372         * libtool.scm: Initial Guile implementation of libtool.
29373
29374         * ltmain.sh.in: An unexpected inconsistency in my whole approach
29375         to shared libraries has proven that libtool needs to be completely
29376         rewritten if I'm going to give full shared library support for
29377         platforms that don't use the GNU C library version 2 (which to my
29378         knowledge currently only works on GNU Hurd and Linux/GNU systems).
29379         Porting the GNU C library should not be difficult, though.
29380
29381         Platforms that don't have the dlopen(3) family of functions will
29382         need to install GNU DLD version 4 in order to build any kind of
29383         libraries at all.  Unfortunately, DLD 4 won't be released for a
29384         while, because I maintain it, and I'm too busy working on libtool.
29385
29386         I'll keep the old ltconfig/ltmain.sh implementation around for as
29387         long as I can, and continue applying bug fixes, so that I'll have
29388         a reasonable starting point for this new libtool implementation.
29389
29390         It looks like this implementation will be even more complex than
29391         the original (pre-0.7) libtool.  Initial estimates show that it
29392         may be up to 3 times slower, and 5 times larger than libtool-0.9.
29393         I'll probably have to rewrite it in Guile to get reasonable
29394         performance, which will severely limit its portability for a
29395         while.
29396
29397         That will also introduce a bootstrapping issue, since the next
29398         release of Guile will use libtool to build shared libraries.  So,
29399         if users want to have shared Guile libraries, they will have to
29400         configure Guile with `--disable-shared', compile it, install it,
29401         then reconfigure Guile with `--enable-shared' and repeat.
29402
29403         I was hoping to get libtool 1.0 out the door by early April, but
29404         now it looks like it will take at least another year before it'll
29405         be usable by the public at large.  April fools.  libtool.scm
29406         doesn't exist yet, either.
29407
29408         * ltconfig.in (verify_host): Remove redundant `Transform *-*-linux*
29409         to *-*-linux-gnu*'.  From Bruno Haible.
29410
29411         * tests/hardcode.test: AIX 3 doesn't have strings(1) so we need to do a
29412         funny tr and pipe the output to fgrep.  From Bruno Haible.
29413
29414 1997-03-31  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29415
29416         * Makefile.am: Use the new AUTOMAKE and ACLOCAL variables.
29417
29418         * ltmain.sh.in (link): Only fail if a convenience library doesn't
29419         exist, and the user specified -whole-archive.
29420         Fix shell quoting that was breaking @OUTPUT@ substitution.
29421
29422 1997-03-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29423
29424         * ltmain.sh.in (link): Use the hardcode_libdir_separator.
29425         Convenience libraries are libtool objects if we're not building
29426         libtool libs.
29427
29428         * ltconfig.in (hardcode_libdir_separator): Added in case the
29429         linker only honours the last of the -rpath flags (but it can
29430         contain multiple colon-separated directories), such as on OSF/1.
29431         Reported by Carl D. Roth.
29432
29433         * ltmain.sh.in (link): Set the dlname if -export-dynamic is given.
29434         (install, uninstall): Handle the dlname file separately.
29435
29436         * ltconfig.in (export_dynamic_flag): Added to allow programs to
29437         use reflexive dlopens.
29438
29439         * ltmain.sh.in: Include the mode name in any help messages.
29440         (dlname): New mode to give the name to be used with dlopen(3).
29441
29442         * ltconfig.in (AR): Allow AR to be set by the user, and export it
29443         to ltmain.sh.
29444
29445         * ltmain.sh.in: Remove broken profiled library support.
29446         Added `-whole-archive' and `-no-whole-archive' to manipulate
29447         convenience libraries.
29448
29449 1997-03-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29450
29451         * ltmain.sh.in (link): Allow the creation of static convenience
29452         libraries made of libtool objects.  Suggested by David
29453         Mosberger-Tang.
29454
29455 1997-03-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29456
29457         * ltconfig.in: On AIX, libtool also needs to look for `B' symbols
29458         in nm output.  These are global variable definitions.
29459
29460         * ltmain.sh.in: Linking with -static should link against the
29461         linklib if old_library is empty (like it is on AIX).
29462
29463         * ltconfig.in: Change the order of OS detection, so that
29464         linux-gnu* is detected before gnu*.
29465
29466         * Makefile.am (libtool): Use the correct CC, RANLIB, LD, when
29467         generating libtool.  From Carl D. Roth.
29468
29469         * configure.in: Find out the user-supplied CC, LD, RANLIB.  From
29470         Carl D. Roth.
29471
29472 1997-03-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29473
29474         * ltmain.sh.in: Linking with -static should link against the old
29475         library, not linklib.
29476
29477         * README-automake: Updated to point to Automake 1.1m.
29478
29479 1997-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29480
29481         * demo/main.c: Use it.
29482
29483         * demo/foo.h: Declare it.
29484
29485         * demo/foo.c: Added definition of `nothing' so that we have an
29486         global variable definition, as well as functions.
29487
29488 1997-03-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29489
29490         * ltconfig.in: Make sure either enable_shared or enable_static is
29491         configured.  Reported by Tom Tromey.
29492
29493         * ltmain.sh.in: Bomb out if no library types are configured.
29494
29495 1997-02-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29496
29497         * ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed
29498         from `hardcode_libdir_flag'.
29499         (library_names_spec): Renamed from `lib_names'.
29500
29501         * ltconfig.in, ltmain.sh.in (hardcode_action): Change value from
29502         `rpath' to `immediate'.
29503
29504         * replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and
29505         AM_STRUCT_ST_BLOCKS.
29506
29507 1997-02-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29508
29509         * ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support
29510         old-style config.guess scripts.
29511
29512 1997-02-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29513
29514         * ltmain.sh.in: Create objdir *before* linking a program into it.
29515
29516 1997-02-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29517
29518         * ltconfig.in: Any ld --version that returns GNU is probably a GNU
29519         ld.  From Marcus Daniels.
29520
29521         * libtool.m4: Added AM_REPLACE_FUNCS.
29522
29523 1997-02-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29524
29525         * ltconfig.in: Trivial port to *-*-osf4.  From Bruno Haible.
29526
29527 1997-02-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29528
29529         * ltconfig.in: AIX 3 and 4 ld only hardcodes LIBPATH if -L is not
29530         specified.  This behaviour is the same with both xlc and gcc.
29531
29532 1997-02-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29533
29534         * doc/platforms.texi: Yaay!  We found a workaround for HP-UX
29535         /bin/sh buffer overflows.  From Eric Backus.
29536
29537 1997-02-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29538
29539         * Release 0.9.
29540
29541         * PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am:
29542         Move PLATFORMS to doc/platforms.texi.
29543
29544         * ltmain.sh.in (link): Use hardcode_libdir_flag to get a library
29545         directory into the resulting binary.
29546         Use hardcode_action, and make many simplifying changes to have
29547         compilation and finalization be consistent with each other.
29548
29549         * ltconfig.in: Not so amazing!  It's AIX cc that hardcodes direct
29550         libraries... gcc doesn't, though.
29551         (link_rpath_flag): Change link_rpath_flag to be
29552         hardcode_libdir_flag.
29553         (hardcode_action): New variable to simplify ltmain.sh.
29554
29555         * tests/Makefile.am (TESTS): Do the full make sequence with
29556         --disable-shared, then without.
29557
29558         * tests/demo-sttc.test: Configure the demo directory with
29559         --disable-shared.
29560
29561 1997-01-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29562
29563         * ltmain.sh.in: Change to take advantage of linkers that don't
29564         hardcode direct libraries.
29565
29566         * ltconfig.in: Amazing!  AIX 3 linker doesn't hardcode direct
29567         libraries, which makes it less buggy than AIX 4.  Reported by Mark
29568         Kettenis.
29569
29570         * demo/configure.in: Check for the math library.
29571
29572         * demo/foo.c (foo): Change to use the `cos' function, so that we
29573         need to link against another library.
29574
29575         * tests/hardcode.test: Rewrite to use fgrep on output from ``strings
29576         -a'' if using fgrep directly on the binary files fails.  From Mark
29577         Kettenis.
29578
29579 1997-01-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29580
29581         * ltmain.sh.in (link): Export the PATH variable in order to find
29582         the program, rather than giving a full path.  This helps give the
29583         program a less confusing value for argv[0].
29584
29585         * tests/hardcode.test: Make sure that ../demo/libhello.la really is a
29586         shared library before running hardcoding tests.
29587
29588 1997-01-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29589
29590         * Release 0.8.
29591
29592 1997-01-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29593
29594         * Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the
29595         distribution.
29596
29597 1997-01-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29598
29599         * libtool.m4: For IRIX 6, ld needs -n32 if cc uses it.  Reported
29600         by Bruno Haible.
29601
29602         * ltconfig.in: IRIX ld does not hardcode direct libraries.
29603         Reported by Bruno Haible.
29604
29605 1997-01-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29606
29607         * ltconfig.in, ltmain.sh.in (hardcode_shlibpath_var): Allow new
29608         value, `unsupported', since most linkers do not allow you to use
29609         shlibpath_var for initial linking.
29610
29611         * ltconfig.in: Lots of bug fixes from Bruno Haible.  Set wl on
29612         OSF/1, fix definitions of hardcode_* variables.
29613         (archive_cmds): Fix not to use +h on HP-UX 9.x.  Reported by Bruno
29614         Haible.
29615
29616         * tests/demo-conf.test: Use the CONFIG_SHELL environment variable when
29617         running configure in the demo directory.  From Bruno Haible.
29618
29619         * tests/Makefile.am (clean-local): Make distclean in the demo directory,
29620         so that ``make clean; env CC=cc make check'' works as one would
29621         expect.
29622
29623         * tests/demo-make.test: Fix typo (use $make instead of make).  Reported
29624         by Akim Demaille.
29625
29626 1997-01-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29627
29628         * libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings.
29629         Suggested by Akim Demaille.
29630
29631         * libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is
29632         specified.  Reported by Bruno Haible.
29633
29634 1997-01-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29635
29636         * demo/Makefile.am (hc-direct): Do better searching for the proper
29637         name to do a direct link.
29638         (hc-libpath): Make allowances if shlibpath_var cannot be used
29639         to find libraries at link time, such as on AIX.
29640
29641         * Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c.
29642
29643         * demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to
29644         KNR form, for better portability, and less ansi2knr hair.
29645
29646         * demo/configure.in: Remove AM_FUNC_PROTOTYPES.
29647
29648         * demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS.
29649
29650         * demo/ansi2knr.1, demo/ansi2knr.c: Removed these files.
29651
29652         * ltmain.sh.in: Use 1>&2 consistently to direct errors and
29653         warnings to stderr.
29654         (compile): Fix missing single quote.
29655
29656         * ltconfig.in (hardcode_direct): On Solaris at least, using
29657         DIR/libNAME.so does not hardcode DIR, so introduce a new hardcode
29658         variable to reflect that.
29659
29660         * ltmain.sh.in (link): If linking with $link_static_flag fails,
29661         then retry without it, but still use the .a versions of
29662         uninstalled libtool archives.
29663
29664         * tests/tlibtool: Rewrote to grab all the settings from the generated
29665         libtool script.
29666
29667         * tests/hardcode.test: Make allowances if shlibpath_var cannot be used
29668         to find libraries at link time, such as on AIX.
29669
29670 1997-01-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29671
29672         * ltmain.sh.in (link): Eval $link_static_flag.  Reported by Bruno
29673         Haible.
29674
29675         * PLATFORMS: Add to distribution.  Suggested by Bruno Haible.
29676
29677 1997-01-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29678
29679         * tests/demo-conf.test, tests/demo-inst.test, tests/demo-unst.test,
29680         tests/hardcode.test:
29681         Use $make instead of make.
29682
29683         * tests/defs (make): Add definition of $make that uses the $MAKE
29684         environment variable, if set.  Suggested by Bruno Haible.
29685
29686         * tests/demo-unst.test (leftovers): Change the find command to ignore
29687         files beginning with a dot, as egrep -v doesn't seem to do the
29688         trick.  Reported by Bruno Haible.
29689
29690 1997-01-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29691
29692         * ltconfig.in: Add support for SCO OpenServer 5.x.  From
29693         Christopher Olsen.
29694
29695         (can_build_shared): Initialize at the top of the file, so that
29696         shared libraries aren't built on platforms that don't support
29697         them.
29698
29699         * tests/hardcode.test: Added a test to make sure that libtool's idea of
29700         hardcoding system linkers is correct.
29701
29702 1997-01-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29703
29704         * ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi:
29705         Update the copyright completion years.
29706
29707 1997-01-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29708
29709         * ltconfig.in: Port to IRIX 5.3, 6.2.
29710
29711 1997-01-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29712
29713         * ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the
29714         port is trivial.
29715
29716         * libtoolize.in: Add --dry-run option, -n for short.
29717
29718 1997-01-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29719
29720         * ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't
29721         understand "export something=val".  From Bruno Haible.
29722
29723         * tests/Makefile.am (distclean-local): Remove all files that the tests
29724         may have created.  Reported by Bruno Haible.
29725
29726         * For all tests, discover srcdir when running from the command
29727         line.
29728
29729         * tests/demo-unst.test: Don't fail if make uninstall doesn't delete
29730         files beginning with a dot, since spurious .nfsXXX files may be
29731         present when running NFS.  Reported by Bruno Haible.
29732
29733 1997-01-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29734
29735         * ltmain.sh.in (compile): Recognize valid source file suffixes for
29736         Fortran and C++.
29737
29738         * tests/suffix.test: New test to guarantee that libtool compile
29739         recognizes valid source file suffices.
29740
29741 1996-12-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29742
29743         * ltmain.sh.in (link): Don't allow *._o and *.l_o to be valid
29744         object type suffixes, in spite of Automake's current ansi2knr
29745         implementation.  Not all compilers allow non-`.o' suffixes.
29746
29747 1996-12-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29748
29749         * ltmain.sh.in (link): Delete the `libtool' version type.
29750
29751 1996-12-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29752
29753         * ltconfig.in: Use the full autoconf syntax when checking for GNU
29754         C.  Delete library stripping program, until we have a correct
29755         test.
29756
29757 1996-12-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29758
29759         * ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm.  From Mark
29760         Kettenis.
29761
29762 1996-12-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29763
29764         Reported by Charles Kerr:
29765         * doc/libtool.texi (Creating Object Files): Doc fix independant ->
29766         independent.
29767
29768         * ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library
29769         dependencies.
29770
29771 1996-12-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29772
29773         * Release 0.7.
29774
29775         * Makefile.am (EXTRA_DIST): Add README-automake to the
29776         distribution.
29777
29778         * ltmain.sh.in (link): When linking libtool libraries, use
29779         standard objects if they are PIC.  This prevents spurious warnings
29780         about invalid suffixes on AIX.
29781
29782         * demo/Makefile.am: Rename libhell to libhello, so that we're not
29783         quite as offensive.
29784
29785         * ltconfig.in: Remove unnecessary host validity checking.
29786
29787         * ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la
29788         is good enough (for consistency with *.a handling).
29789
29790         * tests/demo.test: Break up into demo-conf.test, demo-make.test,
29791         demo-exec.test, demo-inst.test, and demo-unst.test, so that passes
29792         and failures are reported more quickly.
29793
29794         * tests/link-2.test: Test to make sure that .lo files don't get built
29795         directly into programs.
29796
29797 1996-12-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29798
29799         * ltmain.sh.in (link): Accept files ending in .a as standard
29800         object files.  Reported by Ulrich Drepper.
29801         Remove support for creating profiled libraries (for now).
29802         Transform all library objects into standard objects when linking a
29803         program.
29804
29805         * ltconfig.in (thisdir): How embarrassing!  An error in the regexp
29806         for finding the directory component of the script path.
29807
29808         * tests/tlibtool: A typically-configured libtool script, that uses
29809         ../ltmain.sh.in for its backend.
29810
29811         * tests/link.test: Make sure that it is legal to link against .a files.
29812
29813 1996-12-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29814
29815         * ltmain.sh.in (compile): Support `.S' (preprocessed assembler)
29816         files.  Reported by Anthony Green.
29817
29818         * libtoolize.in: Give clearer instrutions for how to update
29819         aclocal.m4.
29820
29821         * ltconfig.in, ltmain.sh.in (link): Add support for creating
29822         reloadable objects.
29823
29824 1996-12-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29825
29826         * ltmain.sh.in (install): Fix passing -n flag to `libtool
29827         --finish'.
29828         (compile): Compile `.lo' and `.o' objects at the same time so that
29829         non-PIC objects (if they are available) can be used for linking
29830         into programs and creating static archives.  Suggested by Ulrich
29831         Drepper.
29832
29833 1996-12-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29834
29835         * ltmain.sh.in (link): Give the full path to the libtool library
29836         when sourcing it.
29837
29838         * ltconfig.in (old_striplib): Do a configuration test to determine
29839         if old-style libraries actually can be stripped or not.
29840
29841 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29842
29843         * tests/demo.test: Try compiling the ../demo subdirectory, with no
29844         special options.
29845
29846         * test-e.test: Check that we haven't used `test -e' anywhere in
29847         our portable shell scripts.
29848
29849 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29850
29851         * ltconfig.in: Delete reference to ABOUT-LIBS.
29852
29853         * tests: Added new subdirectory.
29854
29855         * doc/libtool.texi: Doc fixes, and finished up the Configuring
29856         chapter.
29857
29858         * ltmain.sh.in (link): Allow *._o and *.l_o to be valid object
29859         file suffixes, for Automake's ansi2knr implementation.
29860         New option -version-info replaces -version-file.
29861
29862         [help]: Give a pointer to mode-specific help when appropriate.
29863
29864         * ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC.
29865
29866         * demo: Also test Automake's ansi2knr support.
29867
29868 1996-11-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29869
29870         * ltconfig.in: Bug fixes for AIX 4, and for static platforms.
29871
29872         * ltmain.sh.in (install): Fix for loops over arguments.
29873         Need to quote ${IFS= } -> "${IFS= }".
29874         (link): Fix soname_spec bug.  Create objdir whether or not we have
29875         shared libraries.
29876
29877         * ltconfig.in: Check for library stripping program.
29878         Use test -f instead of test -e.
29879
29880 1996-11-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29881
29882         * ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't
29883         set.
29884         Be verbose about the environment variables we were configured
29885         with.
29886
29887         * ltmain.sh.in (objdir): change to .libs.
29888
29889 1996-11-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29890
29891         * ltmain.sh.in (install): Just plunge ahead with the
29892         installation... don't try to enforce dependencies.
29893
29894 1996-11-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29895
29896         * ltmain.sh.in: Fix up $libdir to be $dest in install mode.
29897
29898 1996-11-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29899
29900         * ltmain.sh: Finished rewrite of compile, link, and install
29901         modes.
29902
29903         * New ChangeLog file for libtool-0.7, since I've totally rewritten
29904         libtool.
29905
29906 1996-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29907
29908         * For historical reasons: this is when I started writing libtool.
29909 -- 
29910   Copyright (C) 1996-2010 Free Software Foundation, Inc.
29911
29912   This file is part of GNU Libtool.
29913
29914 Copying and distribution of this file, with or without modification,
29915 are permitted in any medium without royalty provided the copyright
29916 notice and this notice are preserved.  This file is offered as-is,
29917 without warranty of any kind.