Imported Upstream version 2.4.5
[platform/upstream/libtool.git] / ChangeLog
1 2015-01-19  Gary V. Vaughan  <gary@gnu.org>
2
3         version 2.4.5
4         * NEWS: Record release date.
5
6 2015-01-18  Gary V. Vaughan  <gary@gnu.org>
7
8         maint: update copyright statements to include 2015.
9         * AUTHORS, HACKING, Makefile.am, NEWS, README.md, TODO,
10         bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
11         build-aux/git-hooks/commit-msg, build-aux/ltmain.in, cfg.mk,
12         configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
13         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
14         gl/build-aux/inline-source, gl/build-aux/options-parser,
15         libltdl/README, libltdl/configure.ac,
16         libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__argz_.h,
17         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
18         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
19         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
20         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
21         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
22         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
23         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
24         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
25         libltdl/lt__argz.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
26         libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
27         libltdl/ltdl.h, libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in,
28         m4/autobuild.m4, m4/libtool.m4, m4/ltargz.m4, m4/ltdl.m4,
29         m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.in,
30         m4/lt~obsolete.m4, m4/m4.m4, tests/am-subdir.at,
31         tests/archive-in-archive.at, tests/bindir.at, tests/cdemo.at,
32         tests/cmdline_wrap.at, tests/configure-iface.at,
33         tests/convenience.at, tests/ctor.at, tests/cwrapper.at,
34         tests/darwin.at, tests/demo.at, tests/depdemo.at,
35         tests/deplib-in-subdir.at, tests/deplibs-ident.at,
36         tests/deplibs-mingw.at, tests/destdir.at, tests/dlloader-api.at,
37         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
38         tests/duplicate_deps.at, tests/duplicate_members.at,
39         tests/early-libtool.at, tests/exceptions.at,
40         tests/execute-mode.at, tests/exeext.at, tests/export-def.at,
41         tests/export.at, tests/f77demo.at, tests/fail.at,
42         tests/fcdemo.at, tests/flags.at, tests/help.at,
43         tests/indirect_deps.at, tests/infer-tag.at,
44         tests/inherited_flags.at, tests/install.at,
45         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
46         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
47         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
48         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
49         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
50         tests/need_lib_prefix.at, tests/no-executables.at,
51         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
52         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
53         tests/resident.at, tests/runpath-in-lalib.at,
54         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
55         tests/standalone.at, tests/static.at, tests/stresstest.at,
56         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
57         tests/template.at, tests/testsuite.at, tests/versioning.at,
58         tests/with-pic.at: Update copyright statement to include 2015.
59         * cfg.mk: Adjust old_NEWS_hash accordingly.
60
61 2015-01-16  Gary V. Vaughan  <gary@gnu.org>
62
63         gnulib: sync with upstream.
64         * gnulib: Sync with upstream.
65         * doc/.gitignore: Regenerate.
66
67 2015-01-16  Pavel Raiskup  <praiskup@redhat.com>
68
69         libtoolize: fix ltdl installation order.
70         Fixes regression caused by commit 99a808be.
71         Makefile.in has aclocal.m4 as prerequisite, so Makefile.in
72         should be installed later to avoid unnecessary rebuild by
73         (versioned) aclocal.
74         * Makefile.am (pkgltdl_files): Move the Makefile.in file down in
75         the list after aclocal.m4.
76         * tests/libtoolize.at: Adjust to match reordered output.
77
78 2014-12-12  Gary V. Vaughan  <gary@gnu.org>
79
80         libtool: check Sun Pro CXX ABI postdeps at libtool time.
81         * m4/libtool.m4 (_LT_PREPARE_CC_BASENAME): Factor cc_basename
82         calculation into a shell function...
83         (_LT_CONFIG_SAVE_COMMAND): ...and expand it into generated
84         libtool script.
85         (_LT_CC_BASENAME): Adjust accordingly.
86         (_LT_FUNC_SUNCC_CSTD_ABI): Remove from here...
87         * build-aux/ltmain.in (func_suncc_cstd_abi): ...and reimplement
88         here.
89         * m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Remove postdeps
90         augmentation from here...
91         * build-aux/ltmain.in (func_mode_link): ...and reimplement here
92         just before postdeps are added.
93         * NEWS: Update.
94
95         libtool: more carefully avoid automatic -Cstd -Crun on Sun Pro CXX.
96         * m4/libtool.m4 (_LT_FUNC_SUNCC_CSTD_ABI): New function factored out
97         of repeated code.  Take note of other known -Cstd incompatible
98         compiler flags.
99         (_LT_SYS_HIDDEN_LIBDEPS): Use it to determine whether -Cstd -Crun
100         can be safely added to postdeps with Sun Pro CXX.
101         * NEWS: Update.
102         * NO-THANKS: Add Marc Glisse.
103         Reported by Marc Glisse
104
105         libtool: take care not to double-apply LT_SYS_LIBRARY_PATH.
106         * m4/libtool.m4 (_LT_CONFIG_SAVE_COMMANDS): Copy configure-time
107         LT_SYS_LIBRARY_PATH settings as default, but allow run-time
108         override.
109         (_LT_SYS_DYNAMIC_LINKER): Save the unmunged
110         sys_lib_dlsearch_path_spec value, and use it for _LT_DECL,
111         but then munge it with LT_SYS_LIBRARY_PATH for use in ltdl.m4
112         macros, such as LT_SYS_DLSEARCH_PATH.
113
114 2014-12-11  Pavel Raiskup  <praiskup@redhat.com>
115
116         libtool: support LT_SYS_LIBRARY_PATH for adjusting bad guesses.
117         Revert 8728e07 and 440fee6.
118         Some GNU/Linux distributions install libraries into /lib64 (or
119         /usr/lib64) on 64-bit machines, while /lib (/usr/lib
120         respectively) stays for multilib variant.  Other distributions
121         keep /usr/lib for 64-bit variant and reserve other directory for
122         multilib. Detection of what approach a given system uses is
123         difficult, however, especially because Glibc's ldconfig does not
124         report the full and correct list of search paths. Allow the user
125         to adjust Libtools heuristically determined search paths with
126         the new LT_SYS_LIBRARY_PATH environment variable at both
127         compile-time, when libtool is called, and at configure time.
128         * m4/libtool.m4 (_LT_PREPARE_MUNGE_PATH_LIST): Define a new
129         function to munge a libtool path list according to a user
130         supplied colon-delimited path.
131         (_LT_SYS_DYNAMIC_LINKER): Require _LT_PREPARE_MUNGE_PATH_LIST.
132         Mark LT_SYS_LIBRARY_PATH as precious to autoconf (to survive
133         automatic "autoreconf").
134         Call the new func_munge_path_list function on
135         sys_lib_dlsearch_path_spec - this propagates results to
136         generated libtool script.
137         (_LT_CONFIG): Expand _LT_PREPARE_MUNGE_PATH_LIST into generated
138         libtool script.
139         * build-aux/ltmain.in (func_mode_link): Call it to adjust
140         sys_lib_dlsearch_path according to LT_SYS_LIBRARY_PATH.
141         * doc/libtool.texi: Document new LT_SYS_LIBRARY_PATH.
142         * doc/notes.texi: Likewise.
143         * NEWS: Update.
144
145         References: http://thread.gmane.org/gmane.comp.gnu.libtool.general/8339/focus=8345
146
147 2014-12-11  Gary V. Vaughan  <gary@gnu.org>
148
149         maint: fix syntax-check failures.
150         * m4/m4.m4 (AC_PROG_GNU_M4): Reverse some test arguments for
151         sc_prohibit_test_const_follows_var.
152         Remove some spurious braces for
153         sc_useless_braces_in_variable_drefs.
154
155         bootstrap: sync with upstream.
156         * gl/build-aux/extract-trace (func_find_tool): Quote a bare
157         variable expansion in a test argument.
158         * bootstrap: Regenerate.
159
160 2014-12-05  Gary V. Vaughan  <gary@gnu.org>
161
162         libtool: s390x is also a 64bit glibc/ELF platform.
163         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LIB): Add s390x to glibc/ELF
164         compatible CPUs that have /lib64 and /usr/lib64 in
165         sys_lib_dlsearch_path_spec.
166         Reported by Pavel Raiskup
167
168 2014-12-04  Gary V. Vaughan  <gary@gnu.org>
169
170         libtool: for 64bit GNU arches, add /lib64 and /usr/lib64 to sys_lib_dlsearch_path.
171         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <linux*, k*bsd*-gnu>
172         <kopensolaris*-gnu, gnu*>: If $host_cpu contains "64", add /lib64
173         and /usr/lib64 to sys_lib_dlsearch_path_spec.
174         Reported by Orion Poplawski, Christian Rössel, Olly Betts et. al.
175
176         libltdl: fix gcc compiler warning for unused attributes.
177         * libltdl/ltdl.c, libltdl/loaders/dld_link.c,
178         libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
179         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
180         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: For at
181         least gcc 4.8.3 and 4.9.1, __attribute__((__unused)) should
182         follow the unused parameter declaration.
183         * NO-THANKS: Add Дилян Палаузов.
184         Reported by Дилян Палаузов
185
186 2014-12-04  Eric Bavier  <bavier@cray.com>
187
188         tests: do not assume compiler prefers shared libraries.
189         Testing whether -static-libtool-libs causes a non-libtool library to be
190         linked dynamically is effectively a test of the compiler's preference in
191         this case.  The Cray compiler prefers static libraries if not told
192         otherwise.
193         * tests/static.at [static linking flags for programs]: Do not expect
194          -static-libtool-libs to fail.
195
196 2014-12-04  Norihiro Tanaka  <noritnk@kcn.ne.jp>
197
198         libtool: fix sys_lib_dlsearch_path_spec for ia64 HP-UX.
199         The run-time loader does not search /usr/local or subdirectories
200         by default on ia64 HP-UX.
201         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Fix
202         sys_lib_dlsearch_path_spec for ia64 HP-UX.
203         * NEWS: Update.
204
205 2014-12-04  Gary V. Vaughan  <gary@gnu.org>
206
207         libltdl: edit AM_CPPFLAGS correctly for libltdl/Makefile.am.
208         * libltdl/ltdl.mk (AM_CPPFLAGS): Make sure the sed expression to
209         remove the first libltdl/ on each line is not confused by misuse
210         of linebreaks.
211         * Makefile.am (lt_Makefile_am): Also edit out the duplicated
212         include paths after libltdl/ elimination.
213         * NEWS: Update.
214         Reported by Michael Wobst
215
216 2014-12-04  Tijl Coosemans  <tijl@FreeBSD.org>
217
218         libtool: commit forgotten soname_spec for freebsd-elf in bb7cef9.
219         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <freebsd-elf>: Set
220         soname_spec correctly, per original patch.
221         * NEWS: Update.
222
223 2014-12-03  Gary V. Vaughan  <gary@gnu.org>
224
225         bootstrap: sync with upstream for runtime M4 checking functions.
226         * gl/build-aux/extract-trace: Sync with upstream for runtime M4
227         checking functions.
228         * bootstrap: Regenerate.
229         * NEWS: Update.
230
231         configury: bail out early if GNU M4 is not on the path.
232         Now that libtoolize requires an installed GNU M4 to parse
233         configure.ac and aclocal.m4 sources for libltdl macros, let the
234         user know at configure time when it is missing.
235         * m4/m4.m4: New file for rejecting non-GNU and buggy GNU versions
236         of M4. Copied from GNU Autoconf m4.m4.
237         * Makefile.am (lt_aclocal_m4_deps): Add m4/m4.m4.
238         * configure.ac (AC_PROG_GNU_M4): Call it.
239         * NEWS: Update.
240         Reported by Michael Felt
241
242 2014-11-29  Gary V. Vaughan  <gary@gnu.org>
243
244         maint: post-release administrivia
245         * NEWS: Add header line for next release.
246         * .prev-version: Record previous version.
247         * cfg.mk (old_NEWS_hash): Auto-update.
248
249         version 2.4.4
250         * NEWS: Record release date.
251
252         gnulib: sync with upstream.
253         * gnulib: sync with upstream.
254
255 2014-11-29  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
256
257         libtool: optional filename-based shlib versioning on aix.
258         Support filename-based shared library versioning on AIX with the
259         lib.so library filename extension, which is used with runtime
260         linking only. Runtime linking is enabled by the -brtl linker
261         flag for executables and the -G linker flag for Shared Objects.
262         The behaviour is similar to Linux/SVR4 DT_SONAME, hence the name
263         "aix-soname=svr4".
264         * Makefile.am (TESTS_ENVIRONMENT): Pass with_aix_soname value
265         via lt_cv_with_aix_soname into testsuite.
266         * configure.ac: AC_SUBST with_aix_soname for testsuite.
267         * libltdl/loaders/dlopen.c (vm_open): Use RTLD_MEMBER flag for
268         dlopen when the filename does specify an archive member between
269         "()". Otherways, retry with appending LT_SHARED_LIB_MEMBER when
270         loading fails without but archive file seems to exist.
271         * m4/libtool.m4 (dynamic_linker): Describe configured shared
272         library versioning variant according to with_aix_soname and
273         runtime linking.
274         (soname_spec, library_names_spec, shlibpath_overrides_runpath)
275         (postinstall_cmds, postuninstall_cmds, hardcode_direct)
276         (hardcode_direct_absolute, no_undefined_flag)
277         (allow_undefined_flag): Set according to with_aix_soname and
278         runtime linking configuration.
279         (export_symbols_cmds): Decorate symbols with the weak keyword.
280         (archive_expsym_cmds): Create both shared libraries according to
281         with_aix_soname and runtime linking configuration. Filter -brtl
282         linker flag from compiler_flags for shared libraries due to its
283         side effects.
284         (enable_static): Respect with_aix_soname for disabling as well.
285         * m4/ltdl.m4 (LT_SHARED_LIB_MEMBER): Define, set based on the
286         value of the shared_archive_member_spec libtool variable.
287         * m4/ltoptions.m4 (_LT_WITH_AIX_SONAME): New. Provides
288         commandline option --with-aix-soname=aix|svr4|both. Declares
289         $shared_archive_member_spec as libtool variable.
290         (_LT_SET_OPTIONS): Define LT_INIT options "aix-soname=aix",
291         "aix-soname=svr4", "aix-soname=both". Default is
292         "aix-soname=aix".
293         * doc/libtool.texi (LT_INIT): Document new options.
294         * tests/deplibs-ident.at: To define whether this test should
295         XFAIL, use hardcode_action, hardcode_direct,
296         hardcode_direct_absolute configuration settings instead of
297         platforms aix, bitrig, hppa-hpux, interix or openbsd.
298         * tests/versioning.at: When shared_archive_member_spec is defined
299         and LDFLAGS contain -brtl, we can run the versioning check.
300         * NEWS: Update.
301
302 2014-11-28  Tijl Coosemans  <tijl@FreeBSD.org>
303
304         libtoolize: no need for umask 0 now that copying does not use tar.
305         The umask calls seem to be left over as a workaround for several
306         releases ago when libtoolize copied libltdl sources with the help
307         of tar.  Now that we use cp or ln -s exclusively, this just
308         needlessly makes the files world writable; we should just respect
309         the users' own umask setting.
310         * libtoolize.in (func_copy): Remove umask 0 calls and simplify.
311
312 2014-11-28  Gary V. Vaughan  <gary@gnu.org>
313
314         maint: syntax-checks don't like ${ even in comments!
315         * m4/ltdl.m4: Fix a comment to appease syntax-check rules.
316
317 2014-11-28  Tijl Coosemans  <tijl@FreeBSD.org>
318
319         libtool: use a modern library version scheme for freebsd-elf.
320         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Adopt downstream patch
321         used by FreeBSD for versioned library filenames.
322         * build-aux/ltmain.in (func_mode_link): Replace conflicting
323         freebsd-elf version_type case branches with a single calculation
324         setting major and versuffix to match downstream FreeBSD.
325
326         libtool: split sco version into its own type.
327         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Set version type to
328         "sco" for sco based hosts.
329         * build-aux/ltmain.in (func_mode_link): Accept new "sco"
330         version_type as equivalent to freebsd-elf.
331
332 2014-11-28  Gary V. Vaughan  <gary@gnu.org>
333
334         configury: detect dlsym underscore prefix without dlopen self.
335         * m4/ltdl.m4 (LT_FUNC_DLSYM_USCORE): Compile, load and get the
336         address of a symbol from a separate loadable module, rather than
337         assuming dlopen self works.
338         * NEWS: Update.
339         Reported by KO Myung-Hun
340
341 2014-11-26  Gary V. Vaughan  <gary@gnu.org>
342
343         ltdl: fix a long standing duplicate `-ldl' bug in the link line.
344         * m4/ltdl.m4 (LT_LIB_DLLOAD): Save contents of LIBS before
345         calling AC_SEARCH_LIBS, which prepends to LIBS by default, and
346         restore afterwards.  We set LIBADD_DLOPEN and LIBADD_SHL_LOAD
347         so that dynamic loader libraries can be added selectively only
348         where they are needed.
349         * NEWS: Update.
350
351 2014-11-21  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
352
353         tests: do not test undef symbols across shlibs on AIX.
354         On AIX, undefined symbols across shared libraries can work only
355         when the main program explicitly exports those symbols. As this
356         is bad practice anyway and -no-undefined should be preferred, we
357         skip this.
358         * tests/template.at: Skip test with undef syms across libraries
359         on AIX.
360
361         tests: question mark is extended regex for non-GNU grep.
362         Accepting \? for at-most-once in basic regex is a GNU grep
363         extension, not accepted by AIX grep for example.
364         * tests/libtool.at: Use \{0,1\} instead of ? with GREP.
365
366 2014-11-18  Gary V. Vaughan  <gary@gnu.org>
367
368         maint: Fox a resent smelling mystique.
369         * build-aux/git-log-fix: ChangeLog edit.
370         Reported by Eric Blake
371
372         bootstrap: make sure gnulib file droppings are removed.
373         * bootstrap.conf (libtool_cleanup_empty_dirs): Recent bootstrap
374         updates set source_base to null, so we need to use ${x:-y} to
375         override the null.  Autoconf Shellology says that ancient BSD
376         /bin/sh chokes on :- defaults, but bootstrap is a developer tool,
377         and so we can reasonably expect a developer to have a working
378         /bin/sh to run the bootstrap script.
379
380         bootstrap: add missing debug preambles.
381         * bootstrap.conf (libtool_prep, func_require_ltdl_dir)
382         (libtool_require_package_url): Add missing $debug_cmd calls.
383
384 2014-11-18  Vincent Lefevre  <vincent@vinc17.net>
385
386         NEWS: Fix an ancient spelling mistake.
387         * NEWS: s/propogate/propagate/.
388         * cfg.mk (old_NEWS_hash): Update.
389
390 2014-11-17  Vincent Lefevre  <vincent@vinc17.net>
391
392         libtool: fix comment typo.
393         * m4/libtool.m4: Fix -fvisbility=hidden typo in a comment.
394
395 2014-11-04  Gary V. Vaughan  <gary@gnu.org>
396
397         maint: fix a syntax-check failure.
398         * tests/cmdline_wrap.at (fail_list): quote test arguments to
399         satisfy failing syntax-checks.
400
401         libtool: fix universal library building on darwin.
402         * build-aux/ltmain.in (func_extract_archives): $basename is now
403         spelled $sed_basename.
404         * NO-THANKS: Update.
405         Reported by Misty De Meo
406
407         tests: update fat binary test case for modern darwin.
408         * tests/darwin.at: Use "-arch x86_64", which works on modern
409         Apple hardware, rather than "-arch ppc", which generally does not.
410
411         tests: fix false positive in failed test check for cmdline_wrap.at.
412         * tests/cmdline_wrap.at (fail_list): non-matching globs return as
413         a plain unexpanded string, so we also need to test for file
414         existence before expanding into fail_list.
415
416         bootstrap: sync with upsteram.
417         * gl/build-aux/bootstrap.in: Sync with upstream.
418         * bootstrap: Regenerate.
419
420 2014-11-04  KO Myung-Hun  <komh@chollian.net>
421
422         libtool: support versioning on OS/2.
423         * build-aux/ltmain.in (func_mode_link) <*-os2*>: Set major and
424         versuffix.
425         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <*-os2*>: Set
426         version_type to windows. Add a version information to soname_spec.
427         * NEWS: Update.
428
429         libtool: support -export-symbols and -export-symbols-regex on OS/2.
430         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
431         <*-os2*>: Set archive_expsym_cmds.
432         * NEWS: Update.
433
434         libtool: add -os2dllname option.
435         On OS/2, if there are many DLLs whose prefix is the same and
436         very long, the resulting DLLs are overwritten. Provide a new
437         option to force a DLL name.
438         * build-aux/ltmain.in (func_mode_help): Add a description for
439         -os2dllname.
440         (func_mode_link): Add -os2dllname.
441         * doc/libtool.texi: Document it.
442         * NEWS: Update.
443
444         libtool: fix DLL creation/installation/uninstallation on OS/2.
445         OS/2 can only load a DLL with a base name of 8 characters or
446         less. Also, on OS/2 don't install or uninstall using a link.
447         * build-aux/ltmain.in: Do not strip an import lib.
448         * m4/libtool.m4: Set variables to fix DLL creation, installation
449         and uninstallation.
450
451         libtool: support -Zxxx options used on OS/2.
452         * build-aux/ltmain.in (func_mode_link): Add -Z* case, treating
453         them specially on os2 only.
454
455         libtool: set lt_cv_deplibs_check_method to pass_all on OS/2.
456         * m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Same as the title.
457
458         libtool: there is no need to relink DLLs on OS/2.
459         * build-aux/ltmain.in (func_mode_link) <*-os2*>: need_relink=no.
460
461         ltdl: OS/2 uses other APIs to load a DLL than LoadLibrary() on Windows.
462         * m4/ltdl.m4: Remove os2* from a list for loadlibrary.la.
463
464         libtool: support to link against static libraries on OS/2.
465         * m4/libtool.m4 (_LT_COMPILER_PIC): Set lt_prog_compiler_static to
466         $wl-static.
467
468         libtool: don't eliminate duplications in $postdeps and $predeps on OS/2
469         * build-aux/ltmain.h (libtool_validate_options): Add *os2* to the list.
470
471 2014-11-03  Gary V. Vaughan  <gary@gnu.org>
472
473         configury: create installation dir before writing to it.
474         * Makefile.am (install-scripts-local): Don't forget to make the
475         installation target directory before writing to it.
476         * NO-THANKS: Update.
477         Reported by Allan McRae
478
479         maint: .PHONY rules to protect gmake from pathological file names.
480         * Makefile.am (.PHONY): Add install-scripts-local,
481         check-interactive, check-noninteractive-old,
482         check-noninteractive-new and check-noninteractive.
483
484 2014-11-02  Arkadiusz Miśkiewicz  <arekm@maven.pl>
485
486         tests: fix typo in cmdline_wrap skip check.
487         * tests/cmdline_wrap.at (fail_list): fix a typo in loop script
488         text.
489
490 2014-11-02  Gary V. Vaughan  <gary@gnu.org>
491
492         libtoolize: don't forget to remove old non-gnulib argz files.
493         * libtoolize.in (all_pkgltdl_files): Add back argz.c and argz_.h,
494         as installed by previous libtool releases.
495
496         libltdl: move libltdl argz module into LT namespace.
497         To avoid clashes with gnulib argz module in ltdl client projects,
498         move ours into its own namespace.
499         * libltdl/argz_.h, libltdl/argz.c, m4/argz.m4: Move from here...
500         * libltdl/libltdl/lt__argz_.h, libltdl/lt__argz.c, m4/ltargz.m4:
501         ...to here.
502         * Makefile.am, libltdl/libltdl/lt__glibc.h, libltdl/ltdl.mk,
503         libtoolize.in, m4/ltdl.m4: Adjust accordingly.
504         * tests/libtoolize.at, tests/ltdl-api.at, tests/nonrecursive.at,
505         tests/old-ltdl-iface.at: Adjust for different libtoolize output.
506         * libltdl/.gitignore: Adjust accordingly.
507         * NEWS: Update.
508         Reported by Pavel Raiskup
509
510         maint: whitespace cleanup.
511         * Makefile.am ($(thanks)): Fix several whitespace syntax-check
512         failures.
513
514 2014-11-02  Pavel Raiskup  <praiskup@redhat.com>
515
516         libtoolize: do not remove gnulib files with --force.
517         * libtoolize.in (func_require_seen_libtool): Do not remove
518         snippet/* files which are from Gnulib.
519
520 2014-10-30  Gary V. Vaughan  <gary@gnu.org>
521
522         tests: set bindir and libdir at configure time.
523         In particular, openSuSE on x86_64 uses CONFIG_SITE to set libdir
524         to "${exec_prefix}/lib64", which confuses testcases that check
525         the contents of "${prefix}/lib".  In general, tests that expect
526         to find installed files in specific directories should explicitly
527         set those directories at configure time.
528         * tests/testsuite.at (LT_AT_CONFIGURE): Make sure exec_prefix,
529         bindir and libdir point to known subdirectories we can check the
530         contents of later on in a test case.
531         (prefixdir): Rename from this...
532         (prefix): ...to this.  All test cases that set or use the config
533         prefix directory must now refer to `prefixdir` for the helper
534         macros in this file to work in hostile build environments such
535         as CONFIG_SITE setting openSuSE.
536         * tests/demo.at, tests/depdemo.at, tests/mdemo.at,
537         tests/tagdemo.at: Adjust accordingly.
538         Reported by Peter Breitenlohner.
539
540 2014-10-29  Reuben Thomas  <rrt@sc3d.org>
541
542         libtool: -rdynamic support for tcc.
543         * m4/libtool.m4 (_LT_LINKER_SHLIBS) <linux*>: Set
544         export_dynamic_flag_spec appropriately when using tcc.
545
546         libtool: preliminary support for tcc on linux*.
547         * m4/libtool.m4 (_LT_LINKER_SHLIBS) <linux*>: Set archive_cmds and
548         ld_shlibs appropriately when using tcc.
549         * NEWS: Update.
550
551 2014-10-29  Gary V. Vaughan  <gary@gnu.org>
552
553         maint: fix README-alpha version match.
554         With simplified release version numbering (thank you, git!), be
555         careful to recognize four part alpha versions, or short git
556         revision suffixed alpha versions correctly.
557         * Makefile.am (re_odd_version): Remove.
558         (re_alpha_version): Recognize alpha version numbers.
559         ($(readme)): Adjust accordingly.
560
561         maint: autogenerate THANKS.
562         More automation == less time wasted on menial tasks.
563         * build-aux/thanks-gen: script inspired by coreutils.
564         * Makefile.am (THANKS): Based on rule from coreutils/Makefile.am.
565         * NO-THANKS: New file.  Configure thanks-gen output.
566         * THANKS: Remove.
567
568         maint: fix prefix and suffix installs for libtoolize.
569         * Makefile.am (install-data-local): Depend on new
570         install-scripts-local, and move libtoolize install from here...
571         (install-scripts-local): ...to here.
572         Pass libtoolize destination through program transform expression.
573         (uninstall-hook): Likewise, prior to removal.
574         * NEWS: Update.
575         * THANKS: Update.
576         Reported by Václav Zeman
577
578 2014-10-27  Gary V. Vaughan  <gary@gnu.org>
579
580         maint: move Peter O'Gorman and Ralf Wildenhues to past maintainers.
581         * AUTHORS: Move Peter O'Gorman and Ralf Wildenhues from current
582         to past maintainers list.
583
584         maint: post-release administrivia
585         * NEWS: Add header line for next release.
586         * .prev-version: Record previous version.
587         * cfg.mk (old_NEWS_hash): Auto-update.
588
589         version 2.4.3
590         * NEWS: Record release date.
591
592         bootstrap: sync with upstream.
593         * gl/build-aux/bootstrap.in, gl/build-aux/funclib.sh: Sync with
594         upstream.
595         * bootstrap: Regenerate.
596
597         testsuite: fixes required for `make distcheck CC=g++`.
598         * tests/demo.at (Pdemo conf): Overide _LT_DEMO_SETUP foo.h to
599         declare foo2.
600         * tests/mdemo.at (_LT_SETUP): Don't wrap `sub` dectlaration in
601         C++ guards, because sub.c is also compiled with g++ in this test.
602         * tests/old-ltdl-iface.at (old.c): Add a return type to main
603         declaration as required by C++.
604
605         maint: fix a typo in THANKS.
606         * THANKS: s/macports\.com/macports.org/
607
608         syntax-check: use strlcpy instead of strncpy.
609         * libltdl/loaders/dyld.c (vm_sym): Use strlcpy to pacify syntax
610         checks.
611         * libltdl/ltdl.c (try_dlopen): Likewise.
612
613 2014-10-25  Gary V. Vaughan  <gary@gnu.org>
614
615         libtool: fix GCC linking with -fstack-protector.
616         * build-aux/ltmain.in (func_mode_link): Pass -fstack-protector*
617         to the linker as it is required at link time to resolve libssp symbols.
618         From Yaakov Selkowitz
619
620         libtool: support Mac OS 10.10 and newer.
621         The current template mistakenly treats a MACOSX_DEPLOYMENT_TARGET
622         value of "10.10" as "10.1" followed by junk. Thinking that the
623         build is targeting 10.1 Puma instead of 10.10 Yosemite, it tells
624         the linker to ignore undefined symbols instead of dynamically
625         resolving them. This can cause runtime crashes* and will affect
626         subsequent versions of OS X.
627         * libtool.mk (_LT_REQUIRED_DARWIN_CHECKS): Improve case match so
628         as to reject 10.10.x on the 10.1 and 10.2 branch.
629         * THANKS: Add Lawrence Velázquez.
630         From Lawrence Velázquez
631
632         bootstrap: commit latest to avoid regeneration at build time.
633         * bootstrap: Regenerate.
634
635         gnulib: sync with upstream.
636         * gnulib: Sync with upstream.
637
638 2014-05-13  Peter Rosin  <peda@lysator.liu.se>
639
640         libtool: delay expansion of $ECHO until the wrapper script runs
641         Expanding $ECHO too early leads to unquoted \n when ECHO='printf %s\n'.
642
643         Fixes bug#17478. Reported by Egmont Koblinger.
644
645         * build-aux/ltmain.in (func_emit_wrapper) [fast_install]: Quote the
646         $ECHO, and delay the expansion.
647
648 2014-05-06  Peter Rosin  <peda@lysator.liu.se>
649
650         libtool: fix nm test for MSYS/MinGW
651         The check for the -B option of nm does not work as intended on MSYS/MinGW.
652         MSYS converts /dev/null to the DOW/Windows "equivanent" special file NUL,
653         but the MinGW nm treats this file as any empty file. This means that
654         you might end up with some fallback nm instead of the desired nm. This
655         is not normally a problem, but if one nm is built without lto support, it
656         starts to matter.
657
658         Fixes sr #108558, reported by LRN.
659
660         * m4/libtool.m4 (LT_PATH_NM) [MSYS]: Use a non-existant file instead of
661         /dev/null when checking if nm supports -B.
662
663 2014-05-05  Peter Rosin  <peda@lysator.liu.se>
664
665         libtool: speed up ltwrapper_script detection in execute mode
666         Execute mode is slow and might even DOS the computer in extreme
667         cases when a parameter is a big binary file without newlines.
668         Work around this with different truncation if a suitable dd
669         utility is found.
670
671         Fixes bug#13472 and bug#16662.
672
673         Reported by Pavel Raiskup and Nick Bowler.
674
675         * m4/libtool.m4 (_LT_PATH_DD): New macro, for finding a dd utility
676         that works for the below purpose.
677         (_LT_CMD_TRUNCATE): New macro, for finding out how to truncate binary
678         pipes (fallback to the old sed truncation if no suitable dd is found
679         in _LT_PATH_DD).
680         (_LT_SETUP): Require _LT_CMD_TRUNCATE.
681         (LT_INIT): Require Autoconf 2.62, as needed by _LT_PATH_DD.
682         * build_aux/ltmain.in (func_lalib_p): Factor out the actual "generated
683         by libtool" test into...
684         (func_generated_by_libtool_p): ...this new function...
685         (func_ltwrapper_script_p): ...so that it can be reused here, when
686         truncating the pipe according to _LT_CMD_TRUNCATE.
687         * THANKS: Update.
688
689 2014-05-02  Peter Rosin  <peda@lysator.liu.se>
690
691         libtool: prevent lto from stripping the magic cookie from the cwrapper
692         Whole program optimization may remove unused symbols unless told they
693         are really needed. Fixes sr #108559 reported by LRN.
694
695         * build-aux/ltmain.in (func_emit_cwrapperexe_src:MAGIC_EXE): Try to ensure
696         that the magic cookie is preserved.
697
698 2014-02-12  Peter Rosin  <peda@lysator.liu.se>
699
700         tests: sprinkle -no-undefined when linking libraries
701         * tests/duplicate_conv.at, tests/f77demo.at, tests/fcdemo.at: Here.
702
703 2014-02-12  Peter Rosin  <peda@lysator.liu.se>
704
705         libtool: actually strip -Wl when relinking with $LD
706         Fixes the regression from commit v2.4.2.444 which is causing a
707         testsuite failure in duplicate_conv.at (seen on Cygwin).
708
709         * build-aux/ltmain.in (func_mode_link): $reload_cmds typically
710         starts with "$LD$reload_flag ..." when $LD is used to relink.
711         Make the case expression match that when checking if $LD is in
712         fact used to relink.
713
714 2014-02-10  Peter Rosin  <peda@lysator.liu.se>
715
716         bootstrap: fix description of func_sort_ver to match recent sort change
717         gl/build-aux/funclib.sh: Update comment to match reality.
718         bootstrap: Regenerate.
719
720 2014-02-05  Gary V. Vaughan  <gary@gnu.org>
721
722         doc: remove redundant "in order to" phrase where possible.
723         * doc/libtool.texi: Remove many occurrences of the redundant
724         phrase "in order to", where ever "to" is as clear or clearer.
725         * THANKS: Add attribution.
726         Reported by Dave Yost
727
728 2014-02-03  Bruce Korb  <bkorb@gnu.org>  (tiny change)
729
730         bootstrap: check for git tree with .git/. in case of soft links.
731         * gl/build-aux/bootstrap.in (func_require_git): Use
732         `test -d .git/.` to defeat soft-links versus non-GNU test.
733         * bootstrap: Regenerate.
734         * THANKS: Remove duplicate Bruce Korb entry.
735
736 2014-01-27  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
737
738         bootstrap: use `-d .git` to check whether we are in a git tree.
739         * gl/build-aux/bootstrap.in (func_require_git): .git is not a
740         regular file, use -d to check its existence.
741         * bootstrap: Regenerate.
742         * THANKS: Add Bruce Korb.
743         Reported by Bruce Korb
744
745 2014-01-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
746
747         libtool: opt_duplicate_compiler_generated_deps is harmful on Solaris
748         Fix for http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452.
749         * build-aux/ltmain.in (libtool_validate_options): disable the
750         opt_duplicate_compiler_generated_deps optimization for Solaris2 so
751         that gcc-4.9+ compiled C++ code with -Wl,-Bdirect on 64-bit Solaris
752         x86 can avoid unwinding failures caused by accidental mixing of the
753         libc and libgcc_s unwinders in a single executable.
754
755 2014-01-15  Gary V. Vaughan  <gary@gnu.org>
756
757         bootstrap: check for git checkout correctly.
758         * gl/bulid-aux/bootstrap.in (func_require_git): Use .git instead
759         of .gitignore to recognise a git checkout.
760         * bootstrap: Regenerate.
761
762 2014-01-11  Todd C. Miller  <Todd.Miller@courtesan.com>  (tiny change)
763
764         libtoolize: don't remove install-sh.
765         If you are not using automake, libtoolize would remove install-sh.
766         It needs the same treatment as config.guess and config.sub.
767         * libtoolize.in (func_require_seen_libtool): Remove install-sh
768         from $all_pkgaux_files, the list of files removed by
769         `libtoolize --force`.
770         * THANKS: Add Todd C. Miller.
771         * NEWS: Update.
772
773 2014-01-07  Gary V. Vaughan  <gary@gnu.org>
774
775         options-parser: --version works with 'DO NOT EDIT' preamble again.
776         * gl/build-aux/options-parser (func_version): Don't quit on first
777         leading '##' line, otherwise DO NOT edit warnings prevent version
778         information from being extracted correctly.
779         * bootstrap: Regenerate.
780
781         bootstrap: specify particular version in buildreq with =x.y.
782         * gl/build-aux/bootstrap.in (func_check_versions): If the version
783         number begins with '=' then it must match the installed version of
784         the named tool exactly.
785         * gl/doc/bootstrap.texi (buildreq): Document the '=vernum' feature.
786         * bootstrap: Regenerate.
787
788 2014-01-05  Gary V. Vaughan  <gary@gnu.org>
789
790         bootstrap: remove conftest.sed file droppings.
791         * gl/build-aux/funclib.sh: Remove conftest.sed when no longer
792         needed.
793         * bootstrap: Regenerate.
794
795 2014-01-04  Gary V. Vaughan  <gary@gnu.org>
796
797         bootstrap: replace spurious hyphen in some section comments.
798         * gl/build-aux/bootstrap.in: replace spurious hypen in same
799         section header comments with a space.
800         * gl/build-aux/extract-trace, gl/build-aux/options-parser:
801         Likewise.
802         * bootstrap: Regenerate.
803
804 2014-01-03  Gary V. Vaughan  <gary@gnu.org>
805
806         inline-source: DO NOT EDIT warning only for top-level file.
807         * gl/build-aux/inline-source (func_include): When recursing, pass
808         through the value of `magic` so that only the very first #! magic
809         number has a DO NOT EDIT warning injected.
810         * bootstrap: Regenerate.
811
812         inline-source: gawk doesn't have boolean constants.
813         I've been writing a lot of Lua lately, but still a silly mistake:(
814         * gl/build-aux/inline-source (func_include): Use `magic` variable
815         to count #! lines found, and only output the DO NOT EDIT warning
816         after the first one.
817
818         edit-readme-alpha: adjust for recent README edits.
819         * build-aux/edit-readme-alpha: Adjust regexps for recent README
820         improvements.
821         * README.md: Fix a SPACE-TAB sanity check failure.
822
823         bootstrap: fix test-dollar sanity check failure.
824         * gl/build-aux/bootstrap.in (func_ensure_README): quote argument.
825         * bootstrap: Regenerate.
826
827         libtool: rearrange header comments for correct version/help extraction.
828         * m4/libtool.m4 (_LT_COPYING): Rearrange the comments output to
829         the generated libtool script so that --version and --help behave
830         the same as pre-funclib.sh revisions.
831         (_LT_CONFIG_SAVE_COMMANDS): Likewise.
832
833         README: Tweak into markdown format and fix some bitrot.
834         * README: Moved from here...
835         * README.md: ...to here.  Make some changes to be valid markdown
836         format, and fix some inaccuracies in text that is out of date.
837         * .gitignore: Add README.
838
839         bootstrap: support automake README requirement.
840         * gl/build-aux/bootstrap.in (func_ensure_README): New function.
841         Link missing README to existing alternative naming.
842         (require_automake_options): New functions. Fetch AM_INIT_AUTOMAKE
843         options from configure.ac.
844         (func_reconfigure): If we're using automake, and it's not in
845         foreign mode, link a README file if possible.
846         * bootstrap: Regenerate.
847
848         configury: use bootstrap ChangeLog management feature.
849         * gl/build-aux/bootstrap.in (func_autoreconf): Accept an optional
850         directory argument to pass to $AUTORECONF.
851         Update doc-comment.
852         * bootstrap.conf (func_reconfigure): Remove. Don't completely
853         overwrite bootstrap's func_reconfigure, shadowing auto-ChangeLog
854         management.
855         (func_autopoint, func_libtoolize): Overwrite these un-needed
856         calls instead.
857         (libtool_autoreconf_libltdl): New hook function to run second
858         autoreconf in libltdl directory.
859         (libtool_force_changelog): Remove.  This is all handled by
860         bootstrap's func_reconfigure again.
861         * bootstrap: Regenerate.
862
863         bootstrap: force remove file droppings from previous run.
864         Now that we generate bootstrap.new with no write permission,
865         we have to force remove it before writing now content to the file.
866         * bootstrap.in (require_bootstrap_uptodate): Remove old
867         bootstrap.new output.
868         * bootstrap: Regenerate.
869
870         inline-source: add a DO NOT EDIT notice to generated files.
871         * gl/build-aux/inline-source (func_include): Add a DO NOT EDIT
872         notice below the #! magic number of generated files.
873         * gl/build-aux/bootstrap.in (func_require_bootstrap_uptodate):
874         Remove write bit from regenerated bootstrap.new if it differs
875         from incumbent bootstrap.
876         Change the update instructions to recommend `mv -f` to cope with
877         no write permission on old bootstrap script.
878
879         bootstrap: move included files below DO NOT EDIT comment.
880         * gl/build-aux/bootstrap.in: Reorder sections to load external
881         libraries as late as possible, leaving DO NOT EDIT comment
882         visible near the top of the generated bootstrap script.
883
884         maint: use before-save-hook in Emacs footers.
885         Updating to Emacs 24 now gives me warnings about write-file-hooks
886         being obsolete.
887         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
888         gl/build-aux/funclib.sh, gl/build-aux/inline-source,
889         gl/build-aux/options-parser: Set before-save-hook in Emacs file
890         footers instead of obsolete write-file-hooks.
891
892         libtoolize: use printf '%s\n' unconditionally.
893         It's been a year since the as_echo probes were removed in Autoconf,
894         so we can follow suit and remove our equivalent bs_echo probing
895         now.  Retain $ECHO in case users need to override default printf
896         calls in museum piece environments.
897         * gl/build-aux/funclib.sh (ECHO): Default to 'printf %s\n'.
898         (bs_echo): Remove.
899         Adjust all bs_echo callers to use $ECHO instead.
900         * bootstrap: Regenerate.
901         * NEWS: Update.
902
903 2014-01-02  Gary V. Vaughan  <gary@gnu.org>
904
905         bootstrap: push Peter's version sort fix back into funclib.sh.
906         Peter's a7462c5 fix was applied to the generated bootstrap script
907         instead of the funclib.sh source, and had have been overwritten
908         the next time bootstrap was regenerated.
909         * gl/build-aux/funclib.sh (func_sort_ver): Sort numerically on the
910         non-primary keys as well.
911         * bootstrap: Regenerate, with the change applied.
912
913 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
914
915         maint: change history.
916         * NEWS: Remove alpha release header.
917         * cfg.mk (old_NEWS_hash): Update.
918
919         libtool: only strip -Wl when linking with $LD.
920         * build-aux/ltmain.in (func_mode_link): Don't strip -Wl from the
921         linker flags, except when linking with $LD, otherwise compiler
922         drivers that don't recognize and pass linker flags through will
923         choke on unrecognized options.
924
925         bootstrap: fix gitlog-to-changelog detection.
926         * gl/build-aux/bootstrap.in (func_ifcontains): Use a for loop
927         that relies on $IFS for element splitting instead of a one-shot
928         case glob that is not tolerant to \n in $gnulib_modules.
929         * THANKS: Add Reuben Thomas.
930         Reported by Reuben Thomas
931
932         maint: update copyright notices to include 2014.
933         * .x-update-copyright: New file. Exclude files not owned by this
934         project from update-copyright rules.
935         * doc/libtool.texi: Replace m-dash with n-dash in texinfo
936         copyright notice so that update-copyright matches correctly.
937         Undo bogus copyright updates to example output from gdb session.
938         Bump copyright year.
939         * Changelog.old: Revert bogus updates from previous years
940         without .x-update-copyright.
941         AUTHORS, HACKING, Makefile.am, NEWS, README, THANKS, TODO,
942         bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
943         build-aux/git-hooks/commit-msg, build-aux/ltmain.in, cfg.mk,
944         configure.ac, gl/build-aux/bootstrap.in,
945         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
946         gl/build-aux/inline-source, gl/build-aux/options-parser,
947         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
948         libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
949         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
950         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
951         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
952         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
953         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
954         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
955         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
956         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
957         libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
958         libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
959         libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
960         m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
961         m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
962         tests/am-subdir.at, tests/archive-in-archive.at,
963         tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
964         tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
965         tests/cwrapper.at, tests/darwin.at, tests/demo.at,
966         tests/depdemo.at, tests/deplib-in-subdir.at,
967         tests/deplibs-ident.at, tests/deplibs-mingw.at,
968         tests/destdir.at, tests/dlloader-api.at,
969         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
970         tests/duplicate_deps.at, tests/duplicate_members.at,
971         tests/early-libtool.at, tests/exceptions.at,
972         tests/execute-mode.at, tests/exeext.at, tests/export-def.at,
973         tests/export.at, tests/f77demo.at, tests/fail.at,
974         tests/fcdemo.at, tests/flags.at, tests/help.at,
975         tests/indirect_deps.at, tests/infer-tag.at,
976         tests/inherited_flags.at, tests/install.at,
977         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
978         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
979         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
980         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
981         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
982         tests/need_lib_prefix.at, tests/no-executables.at,
983         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
984         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
985         tests/resident.at, tests/runpath-in-lalib.at,
986         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
987         tests/standalone.at, tests/static.at, tests/stresstest.at,
988         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
989         tests/template.at, tests/testsuite.at, tests/versioning.at,
990         tests/with-pic.at: Bump copyright year.
991
992         gnulib: update to latest upstream revision.
993         * gnulib: Update.
994
995         tests: gcj cannot reliably compile directly to .o from .java
996         Some 4.3.x and 4.4.x releases of gcj insert a spurious 'dummy'
997         symbol into every object file when compiling directly from .java
998         to .o:
999         * tests/convenience.at (GCJ): make .class files from .java
1000         sources first, and then compile those to native objects. This
1001         works around http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42143
1002
1003 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
1004
1005         testsuite: with SunStudio12.x f77, don't fail on system symbols
1006         Modern SunStudio f77 is just a wrapper for f90, which
1007         explains why current master fails these test groups with:
1008
1009          Undefined      first referenced
1010           symbol            in file
1011          __f90_slw_ch      .libs/foof2.o
1012          __f90_sslw        .libs/foof2.o
1013          __f90_eslw        .libs/foof2.o
1014          ld: fatal: symbol referencing errors. No output written to
1015         .libs/libfoo2.so.0.0.0
1016
1017         So we allow some undefined symbols in the libraries, which are
1018         resolved by the $(FLIBS) added to the final binaries in the tests.
1019         This seems like the simpler, and less error inducing solution to
1020         me (compared to adding $(FLIBS) to every library LDFLAGS line).
1021         * tests/f77demo.at (libfoo_la_LDFLAGS, libfoo2_la_LDFLAGS)
1022         (libfoo3_la_LDFLAGS, libmix_la_LDFLAGS): Remove -no-undefined
1023         flag.
1024         * tests/fcdemo.at: Likewise.
1025
1026 2014-01-01  Gary V. Vaughan  <gary@gnu.org>
1027
1028         maint: use $SED and $GREP, not sed and grep in all scripts.
1029         Choosing between hardcoding a tool's name, or using the shell
1030         variable with a path to the user's prefered implementation or
1031         configure's idea of the best available is a premature
1032         optimisation.
1033         * build-aux/ltmain.in, gl/build-aux/bootstrap.in,
1034         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1035         libtoolize.in: Use $SED and $GREP consistently throughout,
1036         instead of hardcoding sed and grep.
1037         * bootstrap: Regenerate.
1038
1039         tests: use TESTS_ENVIRONMENT for EGREP and FGREP.
1040         Be consistent about passing commands to the testsuite, and use
1041         TESTS_ENVIRONMENT consistent.
1042         * Makefile.am (TESTS_ENVIRONMENT): Add EGREP and FGREP.
1043         * tests/testsuite.at: Remove EGREP and FGREP extractions from
1044         generated libtool script.
1045
1046         tests: use $GREP throughout.
1047         Trust the user, and use $GREP from TESTS_EVVIRONMENT uniformly.
1048         * Makefile.am (TESTS_ENVIRONMENT): Add GREP setting.
1049         * tests/am-subdir.at, tests/archive-in-archive.at, tests/bindir.at,
1050         tests/configure-iface.at, tests/cwrapper.at, tests/darwin.at,
1051         tests/demo.at, tests/destdir.at, tests/dumpbin-symbols.at,
1052         tests/early-libtool.at, tests/execute-mode.at, tests/export-def.at,
1053         tests/export.at, tests/f77demo.at, tests/fcdemo.at, tests/flags.at,
1054         tests/help.at, tests/inherited_flags.at, tests/install.at,
1055         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
1056         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlopen.at,
1057         tests/lt_dlopenext.at, tests/ltdl-api.at, tests/ltdl-libdir.at,
1058         tests/mdemo.at, tests/old-m4-iface.at, tests/pic_flag.at,
1059         tests/resident.at, tests/runpath-in-lalib.at, tests/search-path.at,
1060         tests/static.at, tests/sysroot.at, tests/template.at,
1061         tests/testsuite.at, tests/versioning.at: Replace all hardcoded grep
1062         invocations with $GREP.
1063
1064         tests: use $SED throughout.
1065         Trust the user, and use $SED from TESTS_ENVIRONMENT uniformly.
1066         Hardcoding 'sed' for "simple" edits is a premature optimisation.
1067         * tests/cdemo.at, tests/cmdline_wrap.at, tests/cwrapper.at,
1068         tests/darwin.at, tests/demo.at, tests/duplicate_conv.at,
1069         tests/duplicate_members.at, tests/execute-mode.at, tests/export.at,
1070         tests/inherited_flags.at, tests/install.at, tests/libtoolize.at,
1071         tests/mdemo.at, tests/need_lib_prefix.at, tests/old-m4-iface.at,
1072         tests/sysroot.at, tests/tagdemo.at, tests/testsuite.at: Replace all
1073         hardcoded sed invocations with $SED.
1074
1075         tests: run cmdline_wrap last, or not at all if anything else failed.
1076         * Makefile.am (TESTSUITE_AT): Move stresstest.at and cmdline_wrap.at
1077         to the end of the list.
1078         * tests/cmdline_wrap.at: If previous tests have failed, then we
1079         already know that rerunning them will fail too, so save time by
1080         skipping in that case.
1081
1082         configury: remove spurious g modifier in sed expression.
1083         * Makefile.am (rebuild): Remove useless g modifier from sed
1084         expression.
1085
1086         configury: use $(SED) where input does not end in newline.
1087         On Solaris machines the system sed does not process the last
1088         line of input unless it ends with a newline, which means it
1089         cannot be used to massage the output of git-version-gen, because
1090         it deliberately omits the terminating newline.
1091         * Makefile.am (rebuild): Use the sed command found by configure,
1092         which has a better chance of working properly than the first sed
1093         on PATH.
1094
1095         tests: skip fcdemo checks when $FC cannot compile fortran90.
1096         Avoid spurious fcdemo failures when Autoconf picks f77 or
1097         similar for a fortran90 compiler.
1098         * tests/testsuite.at (LT_AT_TAG): Using FC and FCFLAGS from make
1099         TESTS_ENVIRONMENT, check that we really can compile fortran90
1100         or else skip.
1101
1102         funclib.sh: improve comments.
1103         * gl/build-aux/funclib.sh: Add a comment explaining the need for
1104         extra SED and GREP searches.
1105
1106 2013-12-09  Peter Rosin  <peda@lysator.liu.se>
1107
1108         maint: fix out-of-tree autoreconf w/o manual rebootstrap
1109         build-aux/ltmain.in: Look for funclib.sh and options-parser in
1110         the same location ltmain.in is found.
1111
1112 2013-11-19  Peter Rosin  <peda@lysator.liu.se>
1113
1114         bootstrap: fix version sort
1115         Reported by Ozkan Sezer who suffered from makeinfo 4.13 being detected
1116         as lesser than the required makeinfo 4.8.
1117
1118         * bootstrap (func_sort_ver): Sort numerically on the non-primary keys
1119         as well.
1120
1121 2013-11-08  Peter Rosin  <peda@lysator.liu.se>
1122
1123         tests: Use a basic grep that matches the basic regexp style.
1124         Fixes a testsuite failure on Cygwin.
1125
1126         * tests/tagdemo.at: Use grep instead of egrep.
1127
1128 2013-10-29  Gary V. Vaughan  <gary@gnu.org>
1129
1130         bootstrap: fix a quoting error.
1131         * gl/build-aux/bootstrap.in (func_require_buildreq_autoconf): Quote
1132         the extracted version number correctly so that it is displayed in
1133         verbose mode.
1134
1135 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
1136
1137         funclib.sh: simplify version comparison functions.
1138         * gl/build-aux/funclib.sh (func_sort_ver): Much simplified.
1139         (func_lt_ver): New function, return true if arguments are in
1140         ascending order.
1141         * gl/build-aux/bootstrap.in: Simplify with func_lt_ver.
1142         * gl/build-aux/do-release-commit-and-tag.diff: Likewise.
1143         * bootstrap: Regenerate.
1144
1145         Co-Authored-by: Paul Eggert <eggert@cs.ucla.edu>
1146
1147 2013-10-28  Gary V. Vaughan  <gary@gnu.org>
1148
1149         bootstrap: show found GREP and SED in verbose mode.
1150         * gl/build-aux/bootstrap.in (EGREP, FGREP, GREP, SED): Remove.
1151         These are already set by funclib.sh.
1152         (func_prep): After --verbose has been processed, show the paths
1153         to GREP and SED found by funclib.sh.
1154         * bootstrap: Regenerate.
1155
1156         refactor: simplify program path searching in funclib.sh.
1157         * gl/build-aux/funclib.sh (func_path_progs): New function. Factor
1158         out common code from GREP and SED searches.
1159         (func_check_prog_sed, func_check_prog_grep): New functions, for
1160         non-common code.
1161         (scriptversion): Update.
1162         * bootstrap: Regenerate.
1163
1164         bootstrap: search for a non-truncating grep binary.
1165         On at least Unixware 7.1.4, the first grep binary on PATH is
1166         unable to process the extract-trace scripts.
1167         * gl/build-aux/funclib.sh (GRUP): Search PATH for a grep binary
1168         that doesn't truncate its own output if available, and set GREP
1169         accordingly.
1170         * Makefile.am (SCRIPT_ENV): Add setting for GREP.
1171         * bootstrap: Regenerate.
1172         Reported by Tim Rice.
1173
1174         bootstrap: search for a non-truncating sed binary.
1175         On at least Unixware 7.1.4, the first sed binary on PATH is
1176         unable to process the extract-trace scripts.
1177         * gl/build-aux/funclib.sh (PATH_SEPARATOR): Set to : or ;
1178         according to a feature test.
1179         (func_executable_p): New function.
1180         (SED): Search PATH for a sed binary that doesn't truncate its
1181         own output if available, and set SED accordingly.
1182         (scriptversion): Update.
1183         * Makefile.am (SCRIPT_ENV): New macro, for propagating configured
1184         variables.
1185         (ltdl_ac_aux_dir, $(ltmain_sh), install-data-local): Use it.
1186         * bootstrap: Regenerate.
1187         Reported by Tim Rice.
1188
1189 2013-10-27  Gary V. Vaughan  <gary@gnu.org>
1190
1191         tests: use autotest as_unset rather than rerolling $unset locally.
1192         On at least Unixware 7.1.4, the shell variable 'unset' gets set
1193         to 'no' during the testsuite run, breaking several test cases.
1194         We should have been using Autotest $as_unset anyway.
1195         * tests/testsuite.at (unset): Remove test and variable setting.
1196         (LT_AT_MAKE): Use $as_unset as provided by autotest boilerplate
1197         instead of our own $unset.
1198         * tests/demo.at (uninstalled libraries ave priority): Likewise.
1199         Reported by Tim Rice.
1200
1201         maint: post-release administrivia
1202         * NEWS: Add header line for next release.
1203         * .prev-version: Record previous version.
1204         * cfg.mk (old_NEWS_hash): Auto-update.
1205
1206 2013-10-26  Gary V. Vaughan  <gary@gnu.org>
1207
1208         version 2.4.2.418
1209         * NEWS: Record release date.
1210
1211         gnulib: update to latest upstream revision.
1212         * gnulib: Update.
1213
1214         gnulib: use func_sort_ver instead of GNU sort -V in do-release-commit-and-tag.
1215         * gl/build-aux/do-release-commit-and-tag: Source funclib.sh and
1216         then use portable func_sort_ver rather than force installation of
1217         all GNU coreutils just for sort -V support.
1218
1219         refactor: move func_sort_ver from bootstrap.in to funclib.sh.
1220         * gl/build-aux/bootstrap.in (func_sort_ver): Move from here...
1221         * gl/build-aux/funclib.sh (func_sort_ver): ...to here.
1222         * bootstrap: Regenerate.
1223
1224         tests: use K&R main() syntax for old-ltdl-iface.at.
1225         At least Mac OS 10.8.5 clang chokes on the previous
1226         'const void *argv[]' parameter, but since we don't use it
1227         anyway, keep to the theme of old api support and use K&R
1228         syntax.
1229         * tests/old-ltdl-iface.at (old.c): Use 'main ()' instead of
1230         unportable 'int main (int argc, const void *argv[])'.
1231
1232         libltdl: bump -version-info revision by 1.
1233         The only changes to libltdl sources since v2.4.2 have been
1234         cosmetic and stylistic.
1235         * libltdl/ltdl.mk (LTDL_VERSION_INFO): For a release with no
1236         interface changes C:R:A becomes C:R+1:A.
1237
1238         maint: Update README-release for Makefile.inc -> ltdl.mk rename.
1239         * gl/top/README-release.diff: s/Makefile.inc/ltdl.mk/g
1240
1241         maint: bump serials on m4 sources changed since v2.4.2.
1242         * m4/argz.m4: Bump serial to 6.
1243         * m4/libtool.m4: Bump serial to 58.
1244         * m4/ltdl.m4: Bump serial to 19.
1245         * m4/ltoptions.m4: Bump serial to 8.
1246
1247         maint: fix a syntax-check violation from commit 12641bd.
1248         * build-aux/ltmain.in (func_mode_link): Reverse test operands to
1249         forestall misinterpretation of contests of shell variable as
1250         operand 1.
1251
1252 2013-10-10  Vadim Zeitlin  <vz-libtool@zeitlins.org>  (tiny change)
1253
1254         libtool: Don't fall back to static libraries if building them was disabled
1255         If -no-undefined was not specified but the platform didn't
1256         support shared libraries with undefined symbols (e.g. Cygwin/
1257         MinGW), static libraries were built instead of shared ones,
1258         even if building them was explicitly disabled with --disable-
1259         static configure option.
1260
1261         Fix this by stopping with a fatal error if a shared library
1262         can't be built in this case instead of unexpectedly building a
1263         static library instead.
1264
1265         * libltdl/config/ltmain.m4sh (func_mode_link()): Stop with
1266         fatal error when trying to build a shared library without -no-
1267         undefined on a platform not supporting undefined symbols in
1268         shared libraries.
1269
1270 2013-10-10  Brooks Moses  <bmoses@google.com>
1271
1272         libtool: Remove unneeded quotes in assignment.
1273         The quotes in this assignment cause "make syntax-check" to
1274         fail.  Thus, this patch removes them.
1275
1276 2013-10-09  Fabian Groffen  <grobian@gentoo.org>  (tiny change)
1277
1278         libtool: Fix x86_64-pc-solaris2.* GNU ld breakage
1279         Since commit [1] libtool tries to set a 64-bits target for GNU
1280         ld.  However, it does so wrongly for x86_64-pc-solaris2.*
1281         targets, causing libtool to believe the linker is called
1282         ld_sol2.  There is no such thing, and it obviously breaks
1283         things further down.  Some people wrongly assume there is
1284         supposed to be an ld_sol2 on their systems, e.g. [2].
1285
1286         I think the original change is fragile, because it assumes it
1287         has all CHOSTs matched, then appends _sol2.  In the wild,
1288         people have used amd64-pc-solaris2* too, so perhaps it would
1289         be safer if the code only appended _sol2 if there is actually
1290         an explicit target set.
1291
1292         Anyhow, since the 64-bits sparc target is called sparc64-* or
1293         sparcv9-*, the sparc case is already correctly handled, so in
1294         the attached patch, I just added an x86_64-* case, although I
1295         could imagine relaxing the i?86 case to *86*-pc-solaris2* too.
1296
1297         In any case, defaulting to a linker called ld_sol2 is wrong.
1298
1299         [1] http://lists.gnu.org/archive/html/libtool-commit/2011-02/
1300         msg00000.html
1301         [2] http://osdyson.org/issues/8
1302
1303 2013-10-09  Olivier Blin  <olivier.blin@softathome.com>  (tiny change)
1304
1305         libtool: Fix detection of ld version with parentheses.
1306         ld from crosstool-NG reports a version string with an extra
1307         version number in a parenthetical note:
1308         GNU ld (crosstool-NG 1.13.0) 2.21.1
1309
1310         This made libtool assume that the ld version was the
1311         crosstool-NG version (1.13.0) instead of the real ld version
1312         (2.21.1).
1313
1314         To fix the ld version string, this patch filters out any string
1315         between parentheses that is followed by a space.
1316
1317         Because of this bug, filtering of exported symbols was not
1318         taking place with crosstool-NG toolchains.
1319
1320         This issue has bee noticed when building pango, which exported
1321         harfbuzz symbols that should have remained hidden.
1322
1323 2013-10-09  Brooks Moses  <bmoses@google.com>
1324
1325         libtool: Fix comment indentation
1326         This trivial patch fixes indentation on a comment to match
1327         the style used elsewhere in m4/libtool.m4.
1328
1329 2013-10-09  DJ Delorie  <dj@redhat.com>
1330
1331         libtool: Add TPF settings for LT_SYS_DLOPEN_SELF
1332         * m4/libtool.m4: Since we know that all TPF builds are cross-
1333         builds, do not attempt to run linker tests during config. Use
1334         known constants instead, since we know how dlopen() is
1335         implemented.
1336
1337 2013-10-09  Vincent Lefevre  <vincent@vinc17.net>  (tiny change)
1338
1339         libtool: Fix $wl setting for tcc on GNU systems
1340         (This addresses http://bugs.debian.org/663945.  See there for
1341         more-detailed discussion.)
1342
1343         tcc gained support for "-Wl,-rpath -Wl,<directory>" in its
1344         commit 7fb0482a ("Support linker options passed in several -Wl
1345         param", 2012-03-14) but libtool doesn't know to use it.  Teach
1346         it.
1347
1348         Without this change, running "make check" on MPFR when it has
1349         been built with tcc and shared libraries doesn't work because
1350         libtool generates a -rpath option, which tcc doesn't support.
1351
1352 2013-10-09  Peter Johansson  <trojkan@gmail.com>
1353
1354         libtool: use AS_HELP_STRING in LT_WITH_SYSROOT help message.
1355         This patch fixes so help output is formatted similar with
1356         other macros using AS_HELP_STRING. Also it outputs '[=DIR]'
1357         as I suspect intended rather than '=DIR'.
1358
1359 2013-10-09  Joseph Prostko  <joe.prostko@gmail.com>  (tiny change)
1360
1361         libtool: Haiku change for shlibpath_overrides_runpath
1362         Pretty much all changes to Haiku for Libtool have been
1363         upstreamed, however we currently have an incorrect value for
1364         shlibpath_overrides_runpath.  It should be "no" instead of
1365         "yes".
1366
1367         Previously Scott McCreary had submitted patches for us, but I
1368         told him I would work to get this committed, as he is quite
1369         busy lately.
1370
1371         Here is a commit he made to our Haiku Ports site though, that
1372         shows the exact change I am proposing done against Libtool
1373         2.4.2.
1374
1375         http://ports.haiku-files.org/browser/haikuports/sys-devel/
1376         libtool/patches/libtool-2.4.2.patch
1377
1378 2013-10-09  Brooks Moses  <bmoses@google.com>  (tiny change)
1379             Johannes Obermayr  <johannesobermayr@gmx.de>
1380
1381         libtool: Discard "-mllvm $arg" options when linking.
1382         Clang accepts options of the form "-mllvm $arg", and passes the
1383         argument as an option to LLVM.  These options caused problems
1384         for Libtool when linking; in some cases, the -mllvm option is
1385         passed through but the corresponding argument is dropped.  (See
1386         for example http://llvm.org/bugs/show_bug.cgi?id=14716.)
1387
1388         This patch resolves the issue by explicitly matching -mllvm and
1389         taking an argument.  Since Clang never uses LLVM for linking,
1390         the matched "-mllvm $arg" option is irrelevant for the link
1391         step, and we can simply discard it once we've recognized it.
1392
1393 2013-10-09  Ondřej Bílka  <neleai@seznam.cz>
1394
1395         maint: Fix various comment and documentation typos.
1396         Ondřej writes: "Hi, this is upstream version of patch that I
1397         sent to gcc.  I generated this patch with tool that I am
1398         writing: https://github.com/neleai/stylepp"
1399
1400         (Note: The generated patch was adjusted to retain the non-US
1401         but correct spelling of 'rigourous' before commit.  --Brooks)
1402
1403 2013-10-08  David 'Digit' Turner  <digit@google.com>
1404
1405         libtool: Add Android/Linux support.
1406         This patch adds proper Android support to libtool. The main
1407         issues are the following:
1408
1409           - Versioned libraries are not supported by the platform and
1410             its build/packaging tools.
1411
1412           - The dynamic linker is not GNU ld, there is no support for
1413             DT_RUNPATH.
1414
1415           - Similarly, there is no ldconfig.
1416
1417 2013-09-17  Peter Rosin  <peda@lysator.liu.se>
1418
1419         libtool: trust -print-search-dirs from recent GCC
1420         Alan Modra hints in [1] that -print-search-dirs was fixed in
1421         GCC 4.2(?), so that it nowadays automatically appends
1422         -print-multi-os-directory for the applicable directories. I.e.
1423         it should no longer be necessary for libtool to append a second
1424         ../lib64 when GCC has already done so. Also, the multi-os
1425         appending loop seems to have been added specifically for early
1426         (arguably broken) bi-arch enabled GCCs that printed -m32
1427         directories even though -m64 was the default [2]. So, my
1428         conclusion is that we want any libtool magic to affect
1429         -print-search-dirs output from contemporary GCCs as little as
1430         possible, while continuing to append the
1431         -print-multi-os-directory for the legacy case.
1432
1433         Fixes bug#15321 reported by Ozkan Sezer.
1434
1435         [1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20425
1436         [2] http://lists.gnu.org/archive/html/bug-libtool/2006-09/msg00019.html
1437
1438         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): If any of the
1439         directories printed by -print-search-dirs ends with the
1440         content of -print-multi-os-directory, then assume that
1441         GCC adds the multi-os-directory where appropriate all by
1442         itself and hence don't try to second guess when to add
1443         it manually.
1444         * THANKS: Update.
1445
1446 2013-09-16  Gary V. Vaughan  <gary@gnu.org>
1447
1448         bootstrap: clean up spurious 'gnulib-cache.m4 missing' error.
1449         * gl/build-aux/bootstrap.in (func_reconfigure): Don't show an
1450         error when running without gnulib-cache.m4.
1451         * bootstrap: Regenerate.
1452
1453 2013-09-15  Gary V. Vaughan  <gary@gnu.org>
1454
1455         bootstrap: make ensure_changelog work for update mode projects.
1456         * gl/build-aux/bootstrap.in (func_bootstrap): Move
1457         func_changelog_ensure invocation from here...
1458         (func_reconfigure): ...to here. If gnulib_modules is empty, then
1459         grep gnulib-cache.m4 for gitlog-to-changelog before invoking
1460         func_changelog_ensure.
1461         * bootstrap: Regenerate.
1462
1463         bootstrap: fetch defaults from gnulib-cache.m4 for non-imported projects.
1464         Recent changes uncovered some bugs in handling of gnulib-tool
1465         options for projects that check in gnulib-cache.m4 rather than
1466         keep a separate list of modules and options in bootstrap.conf.
1467         * gl/build-aux/bootstrap.in (func_require_doc_base)
1468         (func_require_gnulib_name, func_require_local_gl_dir): New
1469         functions to set defaults from gnulib-cache.m4 in projects that
1470         use gnulib-tool in --update mode.
1471         (func_require_gnulib_tool_base_options): Use them to fetch
1472         defaults.
1473         (func_require_gnulib_copy_cmd): New function to calculate the
1474         options required for gnlib-tool copy command.
1475         (func_gnulib_tool_copy_file): Simplify accordingly.
1476         (scriptversion): Bump.
1477
1478 2013-09-05  Gary V. Vaughan  <gary@gnu.org>
1479
1480         maint: normalise formatting of recent commit log entry.
1481         * build-aux/git-log-fix: Add a summary line to ChangeLog entry of
1482         most recent commit.
1483
1484 2013-09-05  Brooks Moses  <bmoses@google.com>
1485
1486         maint: add Brooks Moses to AUTHORS file.
1487         * AUTHORS: Add myself to committers list.
1488
1489 2013-08-29  Gary V. Vaughan  <gary@gnu.org>
1490
1491         bootstrap: gnulib_tool=true means no gnulib submodule.
1492         * gl/build-aux/bootstrap.in (func_require_gnulib_tool): No
1493         sneaking off and cloning gnulib when the user already specified
1494         gnulib_tool=true in their bootstrap.conf!
1495         * bootstrap: Regenerate.
1496
1497 2013-08-23  Alan Modra  <amodra@bigpond.net.au>
1498
1499         bootstrap: make first char of IFS a space.
1500         Putting tab first in IFS breaks func_echo_all usage of $*,
1501         resulting in failure of func_infer_tag to match a command line
1502         using a $CC with trailing spaces. The trailing spaces were
1503         stripped out of CC_expanded but words in $CC were separated by
1504         tabs. This didn't match the makefile expansion of $CC using the
1505         standard IFS with a first char of space.
1506         * gl/build-aux/funclib.sh (IFS): Make first char a space.
1507         * bootstrap: Regenerate.
1508
1509 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
1510
1511         bootstrap: support --no-git and --no-po options.
1512         * gl/build-aux/bootstrap.in (bootstrap_parse_options): Accept
1513         --no-git as an alias for --skip-git for compatibility with gnulib
1514         bootstrap, and --no-po for symmetry.
1515         Reported by Mike Miller.
1516
1517         bootstrap: support gnulib gnulib_tool_option_extras settings.
1518         * gl/build-aux/bootstrap.in (func_gnulib_tool): Even though we
1519         don't need it, support gnulib_tool_option_extras for bootstrap.conf
1520         ported from gnulib bootstrap.
1521         * bootstrap: Regenerate.
1522         Reported by Mike Miller.
1523
1524         bootstrap: support sha1 binary on OpenBSD.
1525         * gl/build-aux/bootstrap.in (func_update_po_files): Remove the
1526         use of --status in a way that will suppress all error messages,
1527         but since this is only used to minimize updates, it shouldn't
1528         cause an issue.
1529         Look for a sha1 binary if the other SHA1SUM settings are not
1530         found.
1531         Also exit early if there is a problem updating the po file
1532         checksums.
1533         * bootstrap: Regenerate.
1534         Ported from a gnulib patch by Padraig Brady.
1535
1536         bootstrap: support tools that don't accept '--version' in buildreq.
1537         * gl/build-aux/bootstrap.in (func_check_tool): Check whether there
1538         is an executable as given or on the command PATH.
1539         (func_check_version): Use func_check_tool to avoid invoking --version
1540         when buildreq specifies '-' for the version number.
1541         * bootstrap: Regenerate.
1542         Reported by Mike Miller.
1543
1544         bootstrap: diagnose bad $buildreq formatting.
1545         Particularly when porting from gnulib bootstrap to libtool
1546         bootstrap, it's easy to forget the extra URL column used for
1547         error reporting.
1548         * gl/build-aux/bootstrap.in (func_check_versions): A non-URL
1549         pattern in the 3rd column of buildreq triggers a fatal error.
1550         * bootstrap: Regenerate.
1551         Reported by Mike Miller.
1552
1553 2013-08-23  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
1554
1555         bootstrap: support OpenBSD sed.
1556         * gl/build-aux/bootstrap.in (func_insert_if_absent): Work around
1557         the problem of OpenBSD sed not supporting '-' as a notation for
1558         standard input.
1559         * bootstrap: Regenerate.
1560         * THANKS: Add Mike Miller.
1561         Reported by Mike Miller.
1562
1563 2013-08-23  Steve Ellcey  <sellcey@mips.com>
1564             Gary V. Vaughan  <gary@gnu.org>
1565
1566         libtool: set correct linker ABI flags on mips64 linux.
1567         m4/libtool.m4 (_LT_ENABLE_LOCK): Select the n32 or n64 ABI when
1568         linking to match the ABI produced with the user's compiler flags.
1569
1570 2013-08-23  Gary V. Vaughan  <gary@gnu.org>
1571
1572         maint: correct many abuses of the word "which".
1573         * HACKING, NEWS, TODO, bootstrap, bootstrap.conf,
1574         build-aux/ltmain.in, cfg.mk, configure.ac, doc/libtool.texi,
1575         doc/notes.texi, gl/build-aux/bootstrap.in,
1576         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1577         gl/doc/bootstrap.texi, libltdl/libltdl/lt_system.h,
1578         libltdl/loaders/loadlibrary.c, libltdl/lt__strl.c,
1579         libltdl/lt_dlloader.c, libltdl/ltdl.c, libtoolize.in,
1580         m4/libtool.m4, m4/ltdl.m4, m4/ltsugar.m4, m4/lt~obsolete.m4,
1581         tests/exceptions.at, tests/need_lib_prefix.at, tests/static.at:
1582         Use "which" correctly, or replace with "that", "where" or "what"
1583         as appropriate.
1584
1585 2013-08-23  Brook Moses  <bmoses@google.com>
1586
1587         libtool: improve comments for _LT_ENABLE_LOCK implementation.
1588         * m4/libtool.m4 (_LT_ENABLE_LOCK): enhance comments to explain
1589         why the code looks odd with 32bit flags in the 64bit section and
1590         vice versa.
1591
1592 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
1593
1594         libtool: fix refixed unmangled powerpc*le-linux support patch
1595         * m4/libtool.m4: fix refixed badly unmangled hunks from earlier
1596         powerpc*le changeset.
1597         Reported by Peter Rosin.
1598
1599         libtool: refix unmangled powerpc*le-linux support patch
1600         * m4/libtool.m4: refix badly unmangled hunks from earlier
1601         powerpc*le changeset.
1602         Reported by Peter Rosin.
1603
1604 2013-08-22  Gary V. Vaughan  <gary@gnu.org>
1605
1606         libltdl: don't trip subdir-objects warning from Automake >= 1.14.
1607         Latest Automake releases now warn when subdir-objects is not
1608         specified in preparation for Automake 2.0.  The option has been
1609         in Automake for more than a decade, so there's minimal risk of
1610         someone using the next release of Libtool alongside an ancient
1611         release of Automake when bootstrapping libltdl client projects.
1612         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Add subdir-objects.
1613
1614         libtool: refactor powerpc*le-linux case branch expressions.
1615         libtool (_LT_ENABLE_LOCK): make inner case branch expressions
1616         consistent with outer case expression.
1617         Reported by Peter Rosin.
1618
1619 2013-08-22  Alan Modra  <amodra@bigpond.net.au>
1620
1621         libtool: fix mangled powerpc*le-linux support patch
1622         * m4/libtool.m4: unmangled badly pasted hunks from previous
1623         changeset.
1624
1625         libtool: initial powerpc*le-linux support
1626         * m4/libtool.m4 (ld -m flags): Remove non-canonical ppc host match.
1627         Support little-endian powerpc linux host.
1628
1629 2013-06-17  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>
1630
1631         libtool: fix conversion warnings in cwrapper
1632         build-aux/ltmain.in (func_emit_cwrapperexe_src:main): XMALLOC wants a
1633         size_t. Also use int instead of intptr_t for the return value (which
1634         is fine since the _spawnv call is synchronous).
1635         (func_emit_cwrapper_src) [MSVC]: Remove the intptr_t helper define.
1636         (func_emit_cwrapperexe_src:find_executable): Use size_t for variables
1637         involved in strlen computations.
1638         (func_emit_cwrapperexe_src:lt_setenv): Likewise.
1639         (func_emit_cwrapperexe_src:lt_extend_str): Likewise.
1640         (func_emit_cwrapperexe_src:lt_update_exe_path): Likewise.
1641         THANKS: Update.
1642
1643 2013-04-28  Peter Rosin  <peda@lysator.liu.se>
1644
1645         libtool: break all the way out when a good nm is found
1646         The current code tries to locate a compatible nm tool.  It starts with
1647         a prefixed nm tool (great!) and includes a plain nm too (that's fine).
1648         The problem is that the code searches for the prefixed nm before the
1649         plain nm (normally fine), but doesn't break once it has found a valid
1650         match, and the plain nm ends up the winner.
1651
1652         Report and analysis by Mike Frysinger.
1653
1654         * m4/libtool.m4 (LT_PATH_NM): Break all the way out on a good match.
1655
1656 2013-01-28  Peter Rosin  <peda@lysator.liu.se>
1657
1658         maint: update email address...
1659         * THANKS: ...of Jan Engelhardt.
1660
1661 2013-01-28  Jan Engelhardt  <jengelh@inai.de>
1662
1663         doc: fix an orthographic error
1664         * doc/libtool.texi (Install mode): Ensure, not insure.
1665
1666 2013-01-27  Gary V. Vaughan  <gary@gnu.org>
1667
1668         bootstrap: fix func_insert_if_absent bugs.
1669         * gl/build-aux/bootstrap.in (func_insert_if_absent): Print verbose
1670         message when there is a new entry to add.
1671         Also, make sure to update the .gitignore file when changed.
1672         * bootstrap: Regenerate.
1673         * THANKS: Add Pádraig Brady.
1674         Reported by Pádraig Brady.
1675
1676         bootstrap: factor out gnulib-tool option calculations.
1677         * gl/build-aux/bootstrap.in (func_gnulib_tool): Factor base option
1678         settings out...
1679         (require_gnulib_tool_base_options): ...to here.
1680         * bootstrap: Regenerate.
1681
1682         syntax-check: fix a quoted_test_operand violation.
1683         * gl/build-aux/bootstrap.in (func_insert_if_absent): Make sure
1684         test operands are quoted correctly.
1685         * bootstrap: Regenerate.
1686
1687         syntax-check: fix new SPACE-TAB violations.
1688         * build-aux/ltmain.in (func_dll_def_p): Replace SPACE-TAB by
1689         TAB-SPACE.
1690         * m4/libtool.m4 (_LT_DLL_DEF_P): Likewise.
1691
1692 2013-01-26  Bernhard Voelker  <mail@bernhard-voelker.de>
1693             Gary V. Vaughan  <gary@gnu.org>
1694
1695         bootstrap: always auto-add .gitignore files at the top.
1696         * gl/build-aux/bootstrap.in (func_gitignore_entries): New function.
1697         Strip comments and blank lines.
1698         (func_insert_sorted_if_absent): Renamed...
1699         (func_insert_if_absent): ...to this. Adjust all callers.
1700         Instead of comparing the sorted new file with the original,
1701         compare the line count, being careful to diagnose duplicate
1702         entries which would otherwise skew the count.
1703
1704 2013-01-26  Gary V. Vaughan  <gary@gnu.org>
1705
1706         maint: patch gitlog-to-changelog to reduce bogus warnings.
1707         Rather than trying to find a new useful warning among the 55
1708         expected warnings from vanilla gitlog-to-changelog, patch it to
1709         elide the bogus warnings from duplicate log entries.
1710         * gl/bulid-aux/gitlog-to-changelog.diff: Omit-from-ChangeLog is
1711         a new log entry tag to skip legitimate log duplicates.
1712         * build-aux/git-log-fix: Instead of deleting all content of
1713         duplicates and generating a warning, append the new
1714         Omit-from-ChangeLog tag to elide silently.
1715         * Makefile.am *($(changelog)): Remove the 'expect 55 warnings'
1716         echo.
1717
1718 2013-01-22  Peter Rosin  <peda@lysator.liu.se>
1719
1720         libtool: factor out the dll .def file test and improve it
1721         Resolves bug#13414. Problem reported by Erik van Pienbroek
1722         and Martin Doucha.
1723
1724         build-aux/ltmain.in (func_mode_link): Factor out the test if a
1725         given symbol file is a module-definition (.def) file into...
1726         (func_dll_def_p): ...this function, which also improves the check.
1727         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
1728         <cygwin, mingw, pw32, cegcc>: Similarly, factor out the test if
1729         a given symbol file is a module-definition (.def) file into...
1730         (_LT_DLL_DEF_P): ...this macro, which also improves the check.
1731         tests/export-def.at: New test.
1732         Makefile.am (TESTSUITE_AT): Add above test.
1733         NEWS: Update.
1734         THANKS: Update.
1735
1736 2013-01-21  Peter Rosin  <peda@lysator.liu.se>
1737
1738         libtool: allow tabs in *_cmds variables
1739         This is in preparation for the next patch, which needs to have literal
1740         tab characters survive the evaluation of the *_cmds variables.
1741
1742         build-aux/ltmain.in (func_execute_cmds, func_mode_link): Don't collapse
1743         tabs and surrounding whitespace into a single space when executing a
1744         tilde-separated cmds construct, instead keep any tabs intact.
1745
1746 2013-01-19  Peter Rosin  <peda@lysator.liu.se>
1747
1748         libtool: avoid tabs in all *_cmds variables.
1749         This is in preparation for the next change, which will preserve
1750         tabs when the *_cmds variables are evaluated. Removing tabs first
1751         ensures that the libtool output stays the same when tabs are not
1752         collapsed with surrounding whitespace.
1753
1754         m4/libtool.m4: Convert indenting tabs to spaces for all *_cmds
1755         variables.
1756
1757 2013-01-16  Peter Rosin  <peda@lysator.liu.se>
1758
1759         libtool: align archive_cmds with archive_expsym_cmds for MSVC
1760         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1761         <archive_cmds>: Specify the import library name, aligning with
1762         archive_expsym_cmds.
1763
1764         libtool: feed .def files verbatim to the MSVC linker
1765         m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1766         <archive_expsym_cmds>: When the symbol list isn't really a symbol list,
1767         but instead a .def file, copy it to a file with .def extension so that
1768         MSVC recognizes it as a module-definition file and feed it verbatim.
1769         NEWS: Update
1770
1771 2013-01-15  Peter Rosin  <peda@lysator.liu.se>
1772
1773         Revert "libtool: use false or : for $always_export_symbols, and simplify"
1774         This reverts commit 5ed7430fcb48c862c9d76ef497b73485d580338e, which is
1775         totally bogus as the variable is also set in libtool.m4. Sorry for the
1776         noise.
1777
1778         libtool: use false or : for $always_export_symbols, and simplify
1779         * build-aux/ltmain.in (func_mode_link): Save a string comparison
1780         by setting $lways_export_symbols to false or : and using it directly
1781         as the first argument to if. Make sure that it is always initialized
1782         while at it.
1783
1784 2013-01-09  Peter Rosin  <peda@lysator.liu.se>
1785
1786         tests: fix nits in path handling
1787         tests/bindir.at: func_save_and_prepend_path is already checking
1788         $bindirneeded internally, so remove checks from call sites. Add
1789         proper quoting while at it.
1790         (func_save_and_prepend_path): Use $PATH_SEPARATOR instead of a literal
1791         colon (in both instances).
1792
1793 2013-01-08  Peter Rosin  <peda@lysator.liu.se>
1794
1795         libtool: simplify quoting and code for symbols exporting sed programs
1796         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
1797         <archive_expsym_cmds>: Make the sed programs easier to read (and
1798         recover some backslashes for later in the process).
1799
1800 2013-01-03  Peter Rosin  <peda@lysator.liu.se>
1801
1802         tests: don't feed -no-undefined to the linker during configure.
1803         * tests/deplibs-mingw.at: Restore LDFLAGS for the configure run so that
1804         the linker does not see -no-undefined. Makes the test pass instead of
1805         skip on MinGW.
1806
1807 2013-01-03  Gary V. Vaughan  <gary@gnu.org>
1808
1809         maint: note warnings during ChangeLog generation are normal.
1810         * Makefile.am ($(changelog)): Output a note that 55 empty commit
1811         log warning messages during ChangeLog generation are expected.
1812
1813         git: ignore .serial file.
1814         * .gitignore: ignore .serial file.
1815
1816         maint: fix recent badly formatted ChangeLog entry.
1817         * build-aux/git-log-fix: No empty lines in a single commit.
1818
1819         syntax-check: fix a useless_quotes_in_assignment violation.
1820         * gl/build-aux/inline-source (func_require_AWK): Remove useless
1821         quotes.
1822
1823         syntax-check: fix prohibit_strcmp syntax-check violation.
1824         * build-aux/ltmain.in (func_generate_dlsyms): Add a definition for
1825         STREQ, and then use it in place of !strcmp.
1826
1827         docs: update copyright dates in libtool.texi.
1828         It seems `make update-copyright' missed the texinfo copyright
1829         notice.
1830         * doc/libtool.texi: Update copyright dates for 2013.
1831
1832 2013-01-03  Brad Smith  <brad@comstyle.com>
1833
1834         libtool: add bitrig support.
1835         * build-aux/ltmain.in (func_mode_link): Add bitrig support.
1836         * m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE, LT_CMD_MAX_LEN)
1837         (_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
1838         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Ditto.
1839         * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Ditto.
1840         * tests/deplibs-ident.at(build tree relpaths): Ditto.
1841         * NEWS: Updated.
1842
1843 2013-01-01  Peter Rosin  <peda@lysator.liu.se>
1844
1845         maint: check if git works before relying on it
1846         Makefile.am (m4/ltversion.m4): Take the opportunity to regenerate
1847         $(srcdir)/.serial whenever git is actually working.
1848         (git_version_gen): Provide a fallback version for the git-version-gen
1849         script to use when .tarball-version does not exist and git is not
1850         working.
1851
1852         maint: really do update to latest upstream gnulib
1853         Commit 9a7071e668d044c1c47c855d2f0bc7cadb235071 "maint: update
1854         copyright notices to include 2013." states that this was done, but
1855         it actually was not.
1856         gnulib/: Update to latest upstream.
1857
1858 2013-01-01  Gary V. Vaughan  <gary@gnu.org>
1859
1860         maint: remove unsupported Tested-by: tag.
1861         * build-aux/git-log-fix: Tested-by: line should not appear in the
1862         ChangeLog.
1863
1864 2013-01-01  Peter Rosin  <peda@lysator.liu.se>
1865
1866         bootstrap: update README-release patch
1867         gl/top/README-release.diff: Update to match latest gnulib changes.
1868
1869 2013-01-01  Gary V. Vaughan  <gary@gnu.org>
1870
1871         maint: update copyright notices to include 2013.
1872         * gnulib/: Update to latest upstream.
1873         * AUTHORS, ChangeLog.old, HACKING, Makefile.am, NEWS, README,
1874         THANKS, TODO, bootstrap, bootstrap.conf,
1875         build-aux/edit-readme-alpha, build-aux/ltmain.in, cfg.mk,
1876         configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
1877         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
1878         gl/build-aux/inline-source, gl/build-aux/options-parser,
1879         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
1880         libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
1881         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
1882         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
1883         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
1884         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
1885         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
1886         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
1887         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
1888         libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
1889         libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
1890         libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
1891         libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
1892         m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
1893         m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
1894         tests/am-subdir.at, tests/archive-in-archive.at,
1895         tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
1896         tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
1897         tests/cwrapper.at, tests/darwin.at, tests/demo.at,
1898         tests/depdemo.at, tests/deplib-in-subdir.at,
1899         tests/deplibs-ident.at, tests/deplibs-mingw.at,
1900         tests/destdir.at, tests/dlloader-api.at,
1901         tests/dumpbin-symbols.at, tests/duplicate_conv.at,
1902         tests/duplicate_deps.at, tests/duplicate_members.at,
1903         tests/early-libtool.at, tests/exceptions.at,
1904         tests/execute-mode.at, tests/exeext.at, tests/export.at,
1905         tests/f77demo.at, tests/fail.at, tests/fcdemo.at,
1906         tests/flags.at, tests/help.at, tests/indirect_deps.at,
1907         tests/infer-tag.at, tests/inherited_flags.at, tests/install.at,
1908         tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
1909         tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
1910         tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
1911         tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
1912         tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
1913         tests/need_lib_prefix.at, tests/no-executables.at,
1914         tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
1915         tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
1916         tests/resident.at, tests/runpath-in-lalib.at,
1917         tests/search-path.at, tests/shlibpath.at, tests/slist.at,
1918         tests/standalone.at, tests/static.at, tests/stresstest.at,
1919         tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
1920         tests/template.at, tests/testsuite.at, tests/versioning.at,
1921         tests/with-pic.at: Bump copyright year.
1922
1923 2012-12-19  Peter Rosin  <peda@lysator.liu.se>
1924
1925         libtool: Drop $LDFLAGS when invoking the toolchain
1926         m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [Solaris] <archive_cmds>: Drop
1927         $LDFLAGS as it is a user variable that is usually used when invoking
1928         libtool. As such, it should not be used by libtool when it invokes the
1929         toolchain as it contains options intended for libtool, not the
1930         toolchain. Fixes export.at and other tests that add -no-undefined to
1931         LDFLAGS.
1932
1933 2012-12-19  Richard Palo  <richard.palo@baou.fr>  (tiny change)
1934
1935         libtool: Add SONAME to the so when exporting explicit symbols on Solaris
1936         m4/libtool.m (_LT_LANG_CXX_CONFIG) [Solaris] <archive_expsym_cmds>: Feed
1937         -h $soname to the linker just as is done in archive_cmds.
1938         THANKS: Update.
1939
1940 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
1941
1942         libtool: add @INIT@ to the preloader, for data imports on Windows
1943         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Adjust
1944         lt_cv_sys_global_symbol_to_cdecl so that it declares imported
1945         data symbols as __declspec(dllimport). Adjust
1946         lt_cv_sys_global_symbol_to_c_name_address and
1947         lt_cv_sys_global_symbol_to_c_name_address_lib_prefix so that they
1948         fill in "(void*) 0" for imported data symbols. Add new
1949         lt_cv_sys_global_symbol_to_import which finds imported data
1950         symbols if non-empty and export this variable to the libtool script
1951         in the global_symbol_to_import variable. Adjust
1952         lt_cv_sys_global_symbol_pipe so that data imports can be located.
1953         * build-aux/ltmain.in (func_generate_dlsyms): When data imports
1954         are present, as indicated by global_symbol_to_import, generate
1955         a relocation function lt_syminit that fills in the addresses
1956         of data imports at runtime and point to the new function with a
1957         new virtual @INIT@ entry in the symbol list.
1958         * libltdl/loaders/preopen.c (add_symlist): Look for the virtual
1959         @INIT@ symbol (i.e. lt_syminit) and call it.
1960         (vm_sym): Step past the @INIT@ symbol, if present.
1961         * tests/demo.at (dlmain.c): Call the @INIT@ symbol, if present.
1962         * NEWS: Update.
1963
1964 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
1965
1966         libtool: unify the global symbol transformations
1967         Since it is safe for $lt_cv_sys_global_symbol_to_cdecl to match
1968         with a simple /^T .* .*$/ type expression, it is ok for the other
1969         transformations as well.  At least if you require at least one
1970         $symcode at the start of the line, so that the just generated output
1971         doesn't match the next sed expression.
1972
1973         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unify the matching expressions
1974         in the sed programs that transform the extracted symbol lines.
1975
1976 2012-11-02  Peter Rosin  <peda@lysator.liu.se>
1977
1978         libtool: break up long lines
1979         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Break up long lines when
1980         assigning the sed scripts that transform the extracted symbol lines.
1981
1982 2012-10-25  Gary V. Vaughan  <gary@gnu.org>
1983
1984         bootstrap: use a decent awk if /bin/awk is hopeless.
1985         Bootstrap used to fail without an explicit AWK environment
1986         setting on machines with both nawk and awk, but where awk is a
1987         museum piece.
1988         * gl/build-aux/inline-source (AWK): Remove initial setting.
1989         (require_awk): Search PATH for a gawk, mawk or nawk before
1990         settling on awk, just like configure does.
1991         (func_include): Use it.
1992
1993         bootstrap: be sure to register gnulib submodule.
1994         * gl/build-aux/bootstrap.in (require_gnulib_submodule): Register
1995         the gnulib submodule before updating it, even with a shallow
1996         clone of gnulib.
1997         * bootstrap: Regenerate.
1998         Reported by Robert Boehne.
1999
2000         bootstrap: fix a typo in a find invocation.
2001         * gl/build-aux/bootstrap.in (require_buildreq_patch): Fix a typo.
2002         * bootstrap: Regenerate.
2003
2004         bootstrap: bash versions 3.00.x do not have += functionality.
2005         * gl/build-aux/funclib.sh: Fix a typo in fork minimisation for
2006         bash versions 3.00.x.
2007         * bootstrap: Regenerate.
2008
2009         maint: fix missing command error in make dist.
2010         * Makefile.am ($(readme)): Don't forget the 'test'!
2011
2012         tests: fixup experr for addition whitespace in error prefix.
2013         Fix spurious test failures due to unmatched experr output.
2014         * tests/libtoolize.at, tests/old-ltdl-iface.at: Add the addition
2015         2 spaces now used to justify error prefixes.
2016
2017         bootstrap: use of ';' in sed scripts is not portable.
2018         * gl/build-aux/bootstrap.in (require_buildreq_automake)
2019         (require_dotgitmodules_parameters, require_package)
2020         (func_update_po_files): Use '\n' or -e to separate sed commands,
2021         instead of ';'.
2022         * gl/build-aux/extract-trace (func_autoconf_configure)
2023         (func_extract_trace_first): Likewise.
2024         * gl/funclib.sh: Likewise.
2025         (func_tr_sh): Likewise.
2026         * gl/build-aux/options-parser (func_usage_message): Likewise.
2027         * bootstrap: Regenerate.
2028         Reported by Robert Boehne.
2029
2030         bootstrap: don't $tc_standout spaces, it's ugly!
2031         * gl/build-aux/funclib.sh (func_error): Move the prefix indent
2032         before $tc_standout to avoid bright red inverse spaces.
2033         * bootstrap: Regenerate.
2034
2035         bootstrap: fix rectangle select induced trailing spaces.
2036         * gl/build-aux/funclib.sh (require_term_colors): Delete trailing
2037         whitespace.
2038         * bootstrap: Regenerate.
2039
2040         bootstrap: display prerequisite program environment vars.
2041         Be more helpful when a prerequisite program from $buildreq
2042         cannot be located, by showing what variable to export if it
2043         is already installed but not in PATH.
2044         * gl/build-aux/bootstrap.in (func_check_versions): Display
2045         associated environment variables for not found prerequisite
2046         programs.
2047         * bootstrap: Regenerate.
2048
2049         bootstrap: honor COLORTERM and USE_ANSI_COLORS.
2050         Plenty of machines use a terminfo database that doesn't have
2051         entries for color escape sequences, even though the terminal
2052         itself most likely supports ANSI color escapes.
2053         * gl/build-aux/funclib.sh (require_term_colors): If COLORTERM
2054         or USE_ANSI_COLORS are set, then ignore what terminfo says,
2055         and use standard ANSI color escape sequences.
2056         * bootstrap: Regenerate.
2057
2058         bootstrap: make error messages prettier.
2059         * gl/build-aux/funclib.sh (func_error): Indent 'error' prefix by
2060         two additional spaces to line up nicely with 'warning' and
2061         'running'.
2062         * bootstrap: Regenerate.
2063
2064 2012-10-24  Gary V. Vaughan  <gary@gnu.org>
2065
2066         bootstrap: emphasize command executions with terminal bold.
2067         * bootstrap.in (func_show_eval): Use $require_term_colors to
2068         embolden the command about to be executed in output.
2069         * bootstrap: Regenerate.
2070         * bootstrap.conf (libtool_build_prerequisites): Use the standard
2071         (colorful!) bootstrap func_show_eval here too.
2072
2073         bootstrap: show output from 'make bootstrap-deps'.
2074         * bootstrap.conf (libtool_build_prerequisites): Add support for
2075         AM_V_GEN and AM_V_at to the temporary pre-configure Makefile.
2076         Instead of eliding non-error output from bootstrap-deps, show
2077         the results, with verbosity set according to $opt_verbose.
2078         * Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh, libtool)
2079         (README): Fix the display rules to correctly fall-back to
2080         AM_DEFAULT_VERBOSITY when V=1 is not passed to make invocation.
2081
2082 2012-10-22  Gary V. Vaughan  <gary@gnu.org>
2083
2084         maint: fixup badly formatted ChangeLog entries.
2085         * build-aux/git-log-fix: Mostly missing category tags and refilling
2086         to 64 columns, but also deleting duplicate entries from merging the
2087         gary/reredo-test-operand-order branch.
2088         * g/build-aux/gitlog-to-changelog.diff: Local patch to prevent
2089         printing unqualified header lines for deleted duplicate patches.
2090         * THANKS: Put email address for Paul Seidler here...
2091         * build-aux/git-log-fix: ...and remove from ChangeLog here.
2092
2093         bootstrap: regenerate to propagate Bob's func_split_equals fix.
2094         * bootstrap: regenerate.
2095
2096 2012-10-22  Mikhail Zabaluev  <mikhail.zabaluev@gmail.com>  (tiny change)
2097
2098         configury: make LT_INIT options pic-only and no-pic work.
2099         * m4/ltoptions.m4 (_LT_WITH_PIC): Set pic_mode at m4 time.
2100
2101 2012-10-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
2102
2103         options-parser: fix regexp quoting error.
2104         * gl/build-aux/options-parser (func_split_equals): Fixed expr
2105         regexp quoting syntax error encountered with non-XSI shells.
2106         Problem was noticed under Solaris 10.
2107
2108 2012-10-21  Gary V. Vaughan  <gary@gnu.org>
2109
2110         syntax-check: fix violations and implement sc_old_style_quoting.
2111         Modern GNU ASCII quoting in output and comments is done
2112         'like this'.
2113         * cfg.mk (sc_old_style_quoting): Try to catch most instances
2114         of `old style quoting' so that it is not accidentally re-
2115         introduced to the code.
2116         * HACKING, Makefile.am, NEWS, PORTING, README, TODO, bootstrap,
2117         bootstrap.conf, build-aux/edit-readme-alpha,
2118         build-aux/git-hooks/commit-msg, build-aux/ltmain.in,
2119         doc/libtool.texi, gl/build-aux/bootstrap.in,
2120         gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
2121         gl/build-aux/inline-source, gl/build-aux/options-parser,
2122         libltdl/libltdl/slist.h, libltdl/loaders/loadlibrary.c,
2123         libltdl/ltdl.c, libltdl/slist.c, libtoolize.in, m4/argz.m4,
2124         m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4, m4/ltsugar.m4,
2125         tests/cmdline_wrap.at, tests/configure-iface.at, tests/demo.at,
2126         tests/depdemo.at, tests/deplib-in-subdir.at,
2127         tests/deplibs-mingw.at, tests/destdir.at, tests/execute-mode.at,
2128         tests/f77demo.at, tests/fail.at, tests/inherited_flags.at,
2129         tests/libtool.at, tests/libtoolize.at, tests/lt_dladvise.at,
2130         tests/lt_dlexit.at, tests/mdemo.at, tests/need_lib_prefix.at,
2131         tests/old-ltdl-iface.at, tests/old-m4-iface.at, tests/static.at,
2132         tests/stresstest.at, tests/testsuite.at, tests/versioning.at:
2133         Convert to upright quotes.
2134
2135         tests: remove spurious shell variable braces.
2136         * tests/testsuite.at: Allow the shell braces syntax check to pass
2137         again.
2138
2139         bootstrap: add missing bootstrap override module file.
2140         * gl/modules/bootstrap: Forgot to add this file in a previous
2141         commit.
2142
2143         bootstrap: allow bootstrap.texi to pass syntax-check.
2144         * cfg.mk (sc_require_function_nl_brace): Skip texi files.
2145         * gl/doc/bootstrap.texi: Fix assorted syntax-check violations.
2146
2147         bootstrap: move into local gl overrides directory.
2148         In order to work as if it were already adopted by upstream
2149         gnulib, put bootstrap and supporting scripts into the local
2150         gnulib overrides directory.
2151         * bootstrap, build-aux/extract-trace, build-aux/funclib.sh,
2152         build-aux/inline-source, build-aux/options-parser: Move from
2153         here...
2154         * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
2155         gl/build-aux/funclib.sh, gl/build-aux/inline-source,
2156         gl/build-aux/options-parser: ...to here.
2157         * gl/build-aux/options-parser (func_version): Show only the
2158         first copyright notice on files generated with inline-source.
2159         * gl/doc/bootstrap.texi: Developer documentation for bootstrap.
2160         * gl/modules/extract-trace, gl/modules/funclib.sh,
2161         gl/modules/inline-source, gl/modules/options-parser: Describe
2162         dependencies for gnulib-tool.
2163         * bootstrap.conf (gnulib_modules): Add extract-trace,
2164         inline-source and options-parser modules.
2165         * bootstrap: Regenerated from gnulib overrides as a mono-
2166         lithic script file using gl/build-aux/inline-source.
2167
2168 2012-10-20  Gary V. Vaughan  <gary@gnu.org>
2169
2170         tests: make sure AC_CONFIG_MACRO_DIR is still supported.
2171         * tests/old-m4-iface.at (AC_CONFIG_MACRO_DIR support): New test.
2172         Make sure we continue to support AC_CONFIG_MACRO_DIR using
2173         projects.
2174
2175         libtoolize: select the first directory from AC_CONFIG_MACRO_DIRS.
2176         * tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIRS directories):
2177         New test to ensure multiple directory arguments mork correctly.
2178         * libtoolize.in (func_require_ac_macro_dir): Use expr to discard
2179         any additional space delimited entries in the first
2180         AC_CONFIG_MACRO_DIRS argument.
2181         * bootstrap (func_require_macro_dir): Likewise.
2182
2183         libtoolize: migrate to new AC_CONFIG_MACRO_DIRS api.
2184         * libtoolize.in (func_install_pkgmacro_files): Uee
2185         AC_CONFIG_MACRO_DIRS.
2186         (func_check_macros): Advise using AC_CONFIG_MACRO_DIRS.
2187         (require_ac_macro_dir): Give priority to AC_CONFIG_MACRO_DIRS.
2188         (require_macro_dir): Likewise.
2189         * bootstrap: Give priority to AC_CONFIG_MACRO_DIRS.
2190         * configure.ac: Define dummy AC_CONFIG_MACRO_DIRS for older
2191         Autotools, that is allow bootstrap with current release versions.
2192         Use AC_CONFIG_MACRO_DIRS instead of AC_CONFIG_MACRO_DIR.
2193         * tests/testsuite.at: Source build-aux/extract-trace for access
2194         to func_extract_trace.
2195         (LT_AT_ACLOCAL): Use it to get the AC_CONFIG_MACRO_DIRS argument
2196         to pass manually to aclocal for compatibility with old Automake.
2197         Add a fallback AC_CONFIG_MACRO_DIRS definition to acinclude.m4
2198         in the test directory.
2199         (LT_AT_AUTORECONF): Likewise.
2200         * tests/cdemo.at, tests/configure-iface.at, tests/darwin.at,
2201         tests/demo.at, tests/depdemo.at, tests/early-libtool.at,
2202         tests/libtoolize.at, tests/mdemo.at, tests/no-executables.at,
2203         tests/nonrecursive.at, tests/old-ltdl-iface.at,
2204         tests/recursive.at, tests/subproject.at, tests/tagdemo.at,
2205         tests/template.at: Likewise.
2206         * doc/libtool.texi: Update.
2207         * NEWS: Update.
2208
2209 2012-10-19  Peter Rosin  <peda@lysator.liu.se>
2210
2211         libtool: parse "dumpbin -headers" to get symbols exported from implibs
2212         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Extract symbols
2213         imported from DLLs by import libraries in the Microsoft dumpbin
2214         wrapper.
2215         (LT_PATH_NM): Add -headers option if dumpbin is the located name
2216         lister to feed the above new code.
2217         * NEWS: Update.
2218
2219         libtool: make func_win32_libid work when the name lister is MS dumpbin
2220         * m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [MSVC]: Use
2221         func_win32_libid as file_magic_cmd when the name lister
2222         is MS dumpbin.
2223         (_LT_CMD_GLOBAL_SYMBOLS): Export the new veriable nm_interface
2224         to the libtool script.
2225         * build-aux/ltmain.in (func_cygming_gnu_implib_p)
2226         (func_cygming_ms_implib_p): Move up to before...
2227         (func_win32_libid): ...which now uses them to determine if
2228         the object is an import library when the nm_interface is
2229         "MS dumpbin".
2230         * NEWS: Update.
2231
2232 2012-10-19  Gary V. Vaughan  <gary@gnu.org>
2233
2234         bootstrap: always extract only the first AC_CONFIG_MACRO_DIR arg.
2235         Previous versions of bootstrap concatenated all the arguments to
2236         multiple invocations of AC_CONFIG_MACRO_DIR when extracting the
2237         macro_dir directory name.  This change enforces correct and
2238         consistent behaviour.
2239         * libtoolize.in (func_require_macro_dir): Use the new
2240         func_extract_trace_first function to make sure the first argument
2241         is always used.
2242         (func_require_aux_dir, func_require_gnulib_mk)
2243         (func_require_source_base): Future proof these functions against
2244         multiple invocations or additional arguments to the macros they
2245         trace.
2246
2247         bootstrap: extract *first* ACLOCAL_AMFLAGS -I argument.
2248         * bootstrap (func_require_macro_dir): .* is greedy, so _G_sed_scan
2249         as it was will always return the last -I argument, which is wrong.
2250         Move to a shell loop to ensure we always get the first -I argument
2251         if any.  (code from libtoolize.in).
2252
2253         bootstrap: use short gnu.org urls consistently.
2254         * bootstrap.conf (buildreq): Use gnu.org/s/ style urls to match
2255         the ones added automatically by the main bootstrap script.
2256
2257         libtoolize: fix a misspelled variable name.
2258         * libtoolize.in (func_require_am_macro_dir): The loop uses _G_arg
2259         not _G_opt.  Now spelled correctly.
2260
2261         tests: always extract only the first AC_CONFIG_MACRO_DIR arg.
2262         Previous releases of libtoolize used the final invocation when
2263         there were several, and after the rewrite over extract-trace,
2264         all the invocation directories were concatenated.  This change
2265         enforces correct and consistent behaviour.
2266         * tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIR invocation):
2267         New test.
2268         * build-aux/extract-trace (func_extract_trace_first): New function
2269         for clients that source this file, which returns only the first
2270         argument to the first invocation of the named macros.
2271         * libtoolize.in (func_require_ac_macro_dir): Use it to make sure
2272         the first argument is always used.
2273         (func_require_ac_aux_dir, func_require_ac_ltdl_dir)
2274         (func_require_ac_ltdl_options): Future proof these functions against
2275         multiple invocations or additional arguments to the macros they
2276         trace.
2277         * News (Important incompatible changes): Note change in semantics.
2278         Reported by Eric Blake.
2279
2280         tests: always extract only the first ACLOCAL_AMFLAGS include arg.
2281         * tests/libtoolize.at (libtoolize ACLOCAL_AMFLAGS extraction):
2282         New test.
2283         * libtoolize.in (func_check_macros): Display the correct advice
2284         when ACLOCAL_AMFLAGS specifies a macrodir, but AC_CONFIG_MACRO_DIR
2285         does not.
2286
2287         doc: add a missing period following @xref.
2288         * doc/libtool.texi: Silence a warning by adding back a missing
2289         period.
2290
2291 2012-10-19  Peter Rosin  <peda@lysator.liu.se>
2292
2293         libtool: avoid non-underscore symbols in the "dumpbin -symbols" wrapper
2294         If an object has a symbol lacking an expected leading underscore,
2295         the symbol name is not printed, but the symbol type is, leading
2296         to output such as:
2297             T _normal _normal
2298             T T _another _another
2299         when the expected output would have been something like:
2300             T _normal _normal
2301             T no_underscore no_underscore
2302             T _another _another
2303         However, symbols lacking an expected leading underscore are
2304         not "real" symbols, they are internal symbols which we don't
2305         care about, therefore drop them instead.
2306         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Output the whole
2307         symbol line in one go.
2308         * NEWS: Update.
2309
2310 2012-10-18  Peter Rosin  <peda@lysator.liu.se>
2311
2312         libtool: unbreak Windows path quoting
2313         The lt_sed_naive_backslashify variable lost its lt_ prefix
2314         when m4sh was dropped. But not everywhere.
2315         * build-aux/ltmain.in (func_convert_core_file_wine_to_w32)
2316         (func_convert_core_msys_to_w32): Drop the lt_ prefix from
2317         the lt_sed_naive_backslashify variable.
2318
2319         libtool: kill leftover m4 quoting
2320         * build-aux/ltmain.in (func_mode_compile): Use literal ] and [.
2321
2322 2012-10-18  Gary V. Vaughan  <gary@gnu.org>
2323
2324         syntax-check: exclude false positive nested quote test.
2325         * build-aux/funclib.sh (func_echo_infix_1): These quotes are not
2326         actually nested, so add an exclude marker for the syntax-check.
2327
2328         libtool: don't set auxscriptsdir at bootstrap time.
2329         * build-aux/ltmain.in: Declare relative paths to aux scripts from
2330         source commands, for early inlining during bootstrap.
2331         * Makefile.am (bootstrap_edit): Move auxscriptsdir
2332         substitution from here....
2333         (configure_edit): ...to here.
2334         ($(ltmain_sh)): Feed ltmain.in through inline-source as ltmain.sh
2335         is generated to remove relative paths to aux scripts.
2336         (install-data-local): Simplify. No need for special treatment for
2337         ltmain.sh during installation, since aux scripts have already
2338         been inlined.
2339         Reported by Peter Rosin.
2340
2341         extract-trace: only source funclib.sh when $progname is extract-trace.
2342         * build-aux/extract-trace: $usage is too generic, and can cause
2343         sourced extract-trace to re-source options-parser.  We already
2344         require that funclib.sh be sourced before sourcing options-parser,
2345         so it's safer to check that $progname is correct before sourcing
2346         options-parser again from here.
2347
2348 2012-10-18  Peter Rosin  <peda@lysator.liu.se>
2349
2350         libtool: fix spelling nit
2351         * build-aux/ltmain.in (func_generate_dlsyms): Fix spelling nit.
2352         * libltdl/libltdl/lt_system.h: Likewise.
2353         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise.
2354
2355 2012-10-12  Gary V. Vaughan  <gary@gnu.org>
2356
2357         maint: remove m4sh support.
2358         Now that the code base has coalesced around a single option
2359         parser, there's no need for the unused getopt.m4sh and support.
2360         * build-aux/getopt.m4sh, build-aux/general.m4sh,
2361         tests/getopt-m4sh.at: Remove.
2362         * Makefile.am (m4sh_dir, LT_M4SH, general_m4sh, getopt_m4sh)
2363         (sh_files): Remove.
2364         (TESTSUITE_AT): Remove tests/getopt-m4sh.at.
2365         (TESTS_ENVIRONMENT): Remove M4SH.
2366         * bootstrap.conf (libtool_build_prerequisites): Remove M4SH.
2367         * configure.ac (M4SH): Remove.
2368         * HACKING (Editing `.m4sh' Files): Remove and renumber following
2369         sections.
2370
2371         libtool: rewritten over funclib.sh instead of general.m4sh.
2372         * Makefile.am (ltmain_m4sh, ltmain_sh_edit): Remove.
2373         (ltmain_in): Path to ltmain.in.
2374         (ltmain_sh): Generate ltmain.sh from ltmain.in using
2375         $(bootstrap_edit).
2376         * build-aux/ltmain.m4sh: Remove.
2377         * build-aux/ltmain.in: Rewritten as a client of funclib.sh.
2378
2379         libtoolize: inline sourced helper scripts during install.
2380         * build-aux/inline-source: New file.
2381         * Makefile.am (inline_source): Path to inline-source script.
2382         (EXTRA_DIST): Distribute inline-source too.
2383         (helper_scripts): Remove.
2384         (install-data-local): Inline sourced helper scripts during
2385         installation.
2386         Don't install helper_scripts.
2387         (uninstall-hook): Don't uninstall helper_scripts.
2388
2389         libtoolize: rewritten over funclib.sh instead of general.m4sh.
2390         * Makefile.am (libtoolize_m4sh): Remove.
2391         (EXTRA_DIST): Delete libtoolize_m4sh.
2392         (libtoolize_in): Remove rule.
2393         (libtoolize): Apply bootstrap_edit to libtoolize.in too.
2394         * configure.ac (AC_CONFIG_SRCDIR): Refer to libtoolize.in.
2395         * libtoolize.m4sh: Remove.
2396         * libtoolize.in: Rewrite as a client of options-parser and the
2397         new funclib.sh, avoiding the m4sh expansion step.
2398         * tests/libtoolize.at, tests/old-ltdl-iface.at (experr): adjust
2399         to match funclib.sh error output.
2400
2401         options-parser: correctly quote shell meta-characters in arguments.
2402         When any argument contains a shell meta-character, it needs to be
2403         quoted when passed around.  We already pass parameter lists as
2404         space delimited strings of arguments, and pass the string through
2405         eval to turn it back into a list before re-assigning using `set'.
2406         To prevent the shell from interpreting any meta-characters during
2407         an `eval set dummy $argumentlist', they must be quoted again
2408         inside the quoted argument list.
2409         * build-aux/funclib.sh (func_quote_for_eval): Be careful to keep
2410         a separate tally of quoted and unquoted argument lists, to
2411         conform to the API of the single argument func_quote_for_eval
2412         implementation in build-aux/general.m4sh.
2413         * bulid-aux/options-parser (func_run_hooks): To account for the
2414         doubly quoted meta-character argument lists, we must eval the
2415         parameter reassignment `set' call separately from evaluating the
2416         dynamically named hook results variable.
2417
2418         maint: factor common shell code into build-aux/funclib.sh.
2419         Moving potentially reusable code into a common file that can
2420         be sourced by clients, and adjusting for impedance mismatch
2421         or necessary renames during integration.
2422         * build-aux/funclib.sh: New file.
2423         * build-aux/options-parser (Shell normalisation)
2424         (User overrideable command paths, Global variables, func_append)
2425         (require_term_colors, func_echo, func_echo_infix_1, func_warn)
2426         (func_error, func_fatal_error, func_quote_for_eval, func_verbose):
2427         Move from here...
2428         * build-aux/funclib.sh (Shell normalisation, User overrideable
2429         command paths, Global variables, func_append)
2430         (require_term_colors, func_echo, func_echo_infix_1)
2431         (func_warn_and_continue, func_error, func_fatal_error)
2432         (func_quote_for_eval, func_verbose): ...to here.
2433         * build-aux/general.m4sh (func_arith, func_basename)
2434         (func_dirname, func_dirname_and_basename, func_echo_all)
2435         (func_grep, func_len, func_mkdir_p, func_mktempdir)
2436         (func_normal_abspath, func_relative_path, func_quote_for_expand)
2437         (func_stripname, func_show_eval, func_tr_sh): Move from here...
2438         * build-aux/funclib.sh(func_arith, func_basename)
2439         (func_dirname, func_dirname_and_basename, func_echo_all)
2440         (func_grep, func_len, func_mkdir_p, func_mktempdir)
2441         (func_normal_abspath, func_relative_path, func_quote_for_expand)
2442         (func_stripname, func_show_eval, func_tr_sh): ...to here.
2443         * bootstrap (usage message): Document `-no-warn' option.
2444         (func_append_u, func_warning): Move from here...
2445         * build-aux/funclib.sh (func_append_uniq, func_warning): ...to
2446         here.
2447         * bootstrap, build-aux/extract-trace: Source build-aux/funclib.sh
2448         before build-aux/options-parser.
2449         * build-aux/options-parser (usage, long_help_message): Set
2450         default values to match what is parsed by the unmodified parser.
2451         * build-aux/extract-trace (usage, long_help_message): Only set
2452         from func_main, so that clients sourcing this file can still use
2453         the correct defaults from build-aux/options-parser.
2454         * bootstrap (bootstrap_options_prep, bootstrap_parse_options):
2455         Move warning option parsing from here...
2456         * build-aux/option-parser (func_options_prep)
2457         (func_parse_options): ...to here, where all clients can benefit.
2458         * Makefile.am (funclib_sh): New macro; path to funclib.sh.
2459         (EXTRA_DIST): Add $(funclib_sh).
2460
2461         libtoolize: source extract-trace rather than fork and execute each call.
2462         Rather than forking and executing a full $SHELL for each macro
2463         extraction, source the script and its dependencies into our
2464         execution space and use the provided func_extract_trace API.
2465         * libtoolize.m4sh: Source extract-trace from an appropriate
2466         directory determined presently by make.
2467         (func_extract_trace): Remove this wrapper.
2468         * Makefile.am (abs_aux_dir): Absolute path to extract-trace
2469         directory.
2470         (configure_edit): Inject abs_aux_dir into uninstalled libtoolize.
2471         (bin_SCRIPTS): Remove libtoolize.
2472         (uninstall-hook): Manually uninstall libtoolize.
2473         (install-data-local): Inject pkgauxdir into installed libtoolize
2474         during installation.
2475
2476         options-parser: employ fork minimisation.
2477         * build-aux/options-parser (_G_HAVE_XSI_OPS): Environment
2478         overrideable defaults for bash and zsh, which are known to
2479         support XSI extensions.
2480         (_G_HAVE_PLUSEQ_OP): Similarly for new enough versions of bash,
2481         which are known to have += support.
2482         (func_append): Only perform the shell += probe when state of
2483         support is unknown.
2484         (func_split_equals, func_split_short_opt): Similarly for XSI
2485         probe to select fastest working implementation.
2486
2487         options-parser: keep non-option arguments separate!
2488         * build-aux/options-parser (func_parse_options): When there is
2489         more than one non-option argument, "$*" forces all of them into
2490         a single string.  Use ${1+"$@"} to set arguments correctly.
2491
2492         options-parser: prefix usage message with "Usage: ".
2493         * build-aux/options-parser (func_usage_message): Prefix usage
2494         message with "Usage: ".
2495
2496         bootstrap: work when using fallback shallow gnulib clone.
2497         Bootstrapping without --gnulib-srcdir creates a shallow gnulib
2498         clone to run gnulib-tool out of, except that the parent package
2499         is almost certainly using a revision of gnulib before just tha
2500         most recent 2 gnulib revisions.
2501         * bootstrap (func_require_gnulib_submodule): Pull the most
2502         recent 365 revisions, which ought to be enough for a well-
2503         maintained parent package.
2504         Don't forget to run 'git submodule update' to select the correct
2505         gnulib revision.
2506
2507         bootstrap: require GNU make to bootstrap.
2508         Make is not installed by default in some environments, such as
2509         cygwin... which is slow enough already without having to wait
2510         for gnulib-tool, bootstrap and half of configure to complete
2511         before getting an error.
2512         * bootstrap.conf (buildreq): Add recent GNU make to bootstrap
2513         requirements.  Now missing make is diagnosed in the earliest
2514         part of bootstrap.
2515
2516         maint: simplify "Local variables:" footer with time-stamp-pattern.
2517         * bootstrap, build-aux/extract-trace, build-aux/options-parser
2518         (Local variables): Use time-stamp-pattern to set number of
2519         searched lines to 10, and to replace time-stamp-start,
2520         time-stamp-end and time-stamp-format.
2521
2522 2012-10-08  Peter Rosin  <peda@lysator.liu.se>
2523
2524         tests: skip the with-pic test only if DLL_EXPORT is defined
2525         For some systems with PIC as default, the test was inadvertently
2526         skipped. Issue introduced in commit 4440d65.
2527         * tests/with-pic.at: Skip the test for systems that define
2528         DLL_EXPORT.
2529         Reported by Roumen Petrov.
2530
2531         tests: rerefix line ending problems on MinGW.
2532         The previous commit broke Linux->MinGW cross-compiling.
2533         * tests/mdemo.at: Normalize line endings after $EGREP.
2534         Reported by Roumen Petrov.
2535
2536 2012-10-06  Peter Rosin  <peda@lysator.liu.se>
2537
2538         tests: refix line ending problems on MinGW.
2539         In commit 22f5750, one of the hunks actually introduced
2540         line ending problems. Revert that hunk.
2541         * tests/mdemo.at: Use AT_DATA for expected output when the
2542         output from compiled programs is fed through $EGREP.
2543
2544         tests: use dry runs in both parts of 'check link mode operation'
2545         MSVC exits with status 2 instead of the expected 1 when a
2546         real link is attempted.
2547         * tests/libtool.at (check link mode operation): Use a dry run and
2548         expect a clean exit status instead of expecting a fail.
2549
2550 2012-10-06  Gary V. Vaughan  <gary@gnu.org>
2551
2552         tests: sanitise the libtool quote checking Autotests.
2553         Carefully comment the maze of quoting and escaping needed to
2554         pass through M4, $SHELL, and grep before regexp matching.
2555         * tests/libtool.at (quote shell meta-characters in filenames):
2556         Split backslash into a separate test group, because it needs
2557         additional escaping.
2558         Use grep consistently for the entire test group.
2559         Use AT_CHECK rather than LT_AT_CHECK to avoid problems with
2560         escaping literal $ correctly with LT_ESCAPE.
2561         Use the correct number of backslashes for each sub-group.
2562         Escape double-quote literals portably.
2563         Reported by Peter Rosin.
2564
2565         tests: ensure mdemo.at doesn't rely on installed libltdl.
2566         * tests/mdemo.at (configuer.ac): Build an included convenience
2567         libltdl.
2568         (Makefile.am): Add subdir-objects.
2569         Remove override rules from legacy mdemo tests to reuse parent
2570         libltdlc.la.
2571         (LT_AT_CHECK_CONFIG): Add --with-included-ltdl to configure
2572         arguments so that test cases always use the subproject libltdl
2573         in preference to any installed libltdl.
2574         Reported by Peter Rosin.
2575
2576         tests: allow for unstable fortran output ordering.
2577         Due to differences in line-endings between C stdout and Fortran
2578         stdout, as well as unpredictable output ordering between
2579         platforms and runtimes, weaken success criteria to not require
2580         the entire output of fortran programs to match a test case.
2581         * itests/fcdemo.at, tests/f77demo.at (_LT_CHECK_EXECUTE):
2582         Improve comments, and weaken test case to grep for a known line
2583         in the f77 runtime output.
2584
2585 2012-10-05  Peter Rosin  <peda@lysator.liu.se>
2586
2587         tests: make LT_AT_HOST_DATA retain whitespace on MinGW
2588         Fixes issues with depdemo.at, f77demo.at and fcdemo.at.
2589         * tests/testsuite.at (LT_AT_HOST_DATA) [MinGW]: Keep leading
2590         and trailing spaces and tabs when converting line endings.
2591
2592         tests: fix line ending problems on MinGW
2593         * tests/cdemo.at: Use LT_AT_HOST_DATA for expected output from
2594         compiled programs.
2595         * tests/demo.at: Likewise.
2596         * tests/depdemo.at: Likewise.
2597         * tests/f77demo.at: Likewise.
2598         * tests/fcdemo.at: Likewise.
2599         * tests/mdemo.at: Likewise.
2600         * tests/tagdemo.at: Likewise.
2601
2602 2012-10-05  Gary V. Vaughan  <gary@gnu.org>
2603
2604         tests: remove last vestiges of the legacy test harness.
2605         All legacy tests have been fully migrated to Autotest, so
2606         no need to cling to the legacy scaffolding any more.
2607         * tests/defs.m4sh: Delete file.
2608         * configure.ac (AM_INIT_AUTOMAKE): Remove unused color-tests and
2609         parallel-tests options.
2610         * Makefile.am (defs_m4sh, defs_in, defs, TESTS): Remove.
2611         Adjust all dependencies.
2612
2613         tests: migrate legacy tagtrace.test to Autotest.
2614         * tests/tagtrace.test: Delete file.
2615         * tests/libtool.at (test LT_SUPPORTED_TAG interface): Add
2616         Autotest equivalent.
2617         * Makefile.am (TESTS): Remove tests/tagtrace.test.
2618
2619         tests: migrate legacy objectlist.test to Autotest.
2620         * tests/objectlist.test: Delete file.
2621         * tests/libtool.at (check objectlist file operation): Add
2622         Autotest equivalent.
2623         * Makefile.am (TESTS): Remove tests/objectlist.test.
2624
2625         tests: migrate legacy link.test and link-2.test to Autotest.
2626         * tests/link.test, tests/link-2.test: Delete files.
2627         * tests/libtool.at (Check link operation): Add Autotest
2628         equivalent.
2629         * Makefile.am (TESTS): Remove tests/link.test and
2630         tests/link-2.test.
2631
2632         tests: migrate legacy nomode.test to Autotest.
2633         * tests/nomode.test: Delete file.
2634         * test/libtool.at (Check help output, No mode diagnostic): Add
2635         equivalent tests in Autotest.
2636         * Makefile.am (TESTS): Remove tests/nomode.test.
2637
2638         tests: migrate legacy suffix.test to Autotest.
2639         * tests/suffix.test: Delete file.
2640         * tests/libtool.at (Transform source suffices): Add Autotest
2641         equivalent.
2642         * Makefile.am (TESTS): Remove tests/suffix.test.
2643
2644         tests: migrate legacy quote.test to Autotest.
2645         * tests/quote.test: Moved from here...
2646         * tests/libtool.at: ...to here, and updated to Autotest.
2647         * Makefile.am (TESTS): Remove tests/quote.test.
2648         (TESTSUITE_AT): Add tests/libtool.at.
2649
2650 2012-10-04  Gary V. Vaughan  <gary@gnu.org>
2651
2652         maint: add missing 2012 copyright to newly pushed old files.
2653         * tests/cdemo.at, tests/demo.at, tests/depdemo.at,
2654         tests/f77demo.at, tests/fcdemo.at, tests/mdemo.at,
2655         tests/tagdemo.at (Copyright): Update with missing 2012.
2656
2657         syntax-check: remove test/demo directories from exemption regexps.
2658         * cfg.mk (exclude_file_name_regex--sc_bindtextdomain)
2659         (exclude_file_name_regexp--sc_program_name): Remove. The excluded
2660         directories no longer exist.
2661         (exclude_file_name_regexp--sc_prohibit_strcmp): Remove subexpression
2662         for matching removed demo directories.
2663
2664         configure: remove unused conditionals and support for order only rules.
2665         Clean up some more unused cruft.
2666         * configure.ac (HAVE_CXX, HAVE_F77, HAVE_FC, HAVE_GCJ, HAVE_RC):
2667         Remove.  These were only used by the recently removed legacy
2668         tests.
2669         [order-only prerequisites]: Ditto.
2670
2671         bootstrap: remove support for `-r' and `reconf_dirs'.
2672         With all those extra demo directories out of the way, we can
2673         revert to a more canonical bootstrap process, and jettison the
2674         cruft that was only there to work around the pain of
2675         needing to autoreconf 11 directories.  Bootstrap is now an order
2676         of magnitude faster.
2677         * bootstrap.conf (require_ltdl_dir): New function. Factored out
2678         of `libtool_build_prerequisites'.
2679         (libtool_build_prerequisites): Adjust.
2680         (func_reconfigure): Use `require_ltdl_dir' to determine the name
2681         of the other directory we need to autoreconf during bootstrap.
2682         (libtool_options_prep, libtool_parse_options)
2683         (libtool_validate_options): Remove.
2684
2685         tests: let pic_flag and with-pic Autotests work on non-VPATH builds.
2686         * tests/pic_flag.at: Use _LT_DEMO_SETUP to generate a demo style
2687         project, rather than relying on $abs_top_srcdir/configure.
2688         * tests/with-pic.at: Likewise.
2689         * Makefile.am (TESTSUITE_AT): Move tests/pic_flag.at and
2690         tests/with-pic.at so that they run immediately following
2691         tests/demo.at.
2692
2693         tests: migrate legacy tests/fcdemo tests to Autotest.
2694         Along with the demise of the last demo directory, so all the
2695         cruft for re-autotooling and distributing the additional
2696         directories is no longer necessary.
2697         * tests/fcdemo.at: New autotest groups, based on...
2698         * tests/fcdemo-conf.test, tests/fcdemo-exec.test,
2699         tests/fcdemo-make.test, tests/fcdemo-shared-exec.test,
2700         tests/fcdemo-shared-make.test, tests/fcdemo-shared.test,
2701         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
2702         tests/fcdemo-static.test: ...these legacy tests, now removed.
2703         * tests/fcdemo/Makefile.am, tests/fcdemo/README,
2704         tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
2705         tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/fcdemo/foof.f90,
2706         tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
2707         tests/fcdemo/fprogram.f90: Remove.
2708         * configure.ac (CONF_SUBDIRS, DIST_MAKEFILE_LIST): Remove.
2709         * Makefile.am (DIST_SUBDIRS, FC_TESTS, clean-local-legacy)
2710         (configure-subdirs, distclean-recursive, distdir)
2711         (fake-distclean-legacy, $(DIST_MAKEFILE_LIST)): Remove.
2712         (COMMON_TESTS): Rename from this...
2713         (TESTS): ...to this.
2714
2715         tests: migrate legacy tests/f77demo tests to Autotest.
2716         * tests/f77demo.at: New autotest groups, based on...
2717         * tests/f77demo-conf.test, tests/f77demo-exec.test,
2718         tests/f77demo-make.test, tests/f77demo-shared-exec.test,
2719         tests/f77demo-shared-make.test, tests/f77demo-shared.test,
2720         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
2721         tests/f77demo-static.test: ...these legacy tests, now removed.
2722         * tests/f77demo/Makefile.am, tests/f77demo/README,
2723         tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
2724         tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/f77demo/foof.f,
2725         tests/f77demo/foof2.f, tests/f77demo/foof3.f,
2726         tests/f77demo/fprogram.f: Remove.
2727         * configure.ac (CONF_SUBDIRS): Remove tests/f77demo.
2728
2729         tests: migrate legacy tests/mdemo2 tests to Autotest.
2730         This test was just a small non-ltdl aware library to load a
2731         library from the legacy mdemo test, which in turn used ltdl to
2732         call functions from modules. No need to create a whole other
2733         test group with copies of everything from mdemo setup - just
2734         tack the additional test on the end of the mdemo group.
2735         * tests/mdemo.at (link with library that loads ltdl modules):
2736         New test, based on...
2737         * tests/mdemo2-conf.test, tests/mdemo-exec.test,
2738         tests/mdemo-make.test: ...these legacy tests, now removed.
2739         * tests/mdemo2/Makefile.am, tests/mdemo2/README,
2740         tests/mdemo2/configure.ac, tests/mdemo2/main.c: Remove.
2741         * configure.ac (CONF_SUBDIRS): Remove tests/mdemo2.
2742         * Makefile.am: Adjust.
2743
2744         tests: migrate legacy tests/mdemo tests to Autotest.
2745         * tests/mdemo.at: New autotest groups, based on...
2746         * tests/mdemo-conf.test, tests/mdemo-dryrun.test,
2747         tests/mdemo-exec.test, tests/mdemo-inst.test,
2748         tests/mdemo-make.test, tests/mdemo-shared-exec.test,
2749         tests/mdemo-shared-inst.test, tests/mdemo-shared-make.test,
2750         tests/mdemo-shared-unst.test, tests/mdemo-shared.test,
2751         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
2752         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
2753         tests/mdemo-static.test, tests/mdemo-unst.test: ...these legacy
2754         tests, now removed.
2755         * tests/mdemo/Makefile.am, tests/mdemo/README,
2756         tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
2757         tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
2758         tests/mdemo/sub.c: Remove.
2759         * configure.ac (CONF_SUBDIRS): Remove tests/mdemo.
2760         * Makefile.am: Adjust.
2761
2762         tests: migrate legacy tests/pdemo tests to Autotest.
2763         This test was a thinly veiled copy of the basic legacy
2764         demo-conf.test series, with the addition of long file names that
2765         are not unique in the first 17 characters of their name, mashed
2766         up with the cmdline_wrap.at max_cmd_len limits.  Migrating to
2767         Autotest means that this test will be automatically rerun with
2768         max_cmd_len=24 as cmdline_wrap.at recurses through the whole
2769         testsuite, so the migrated pdemo test is now simply another test
2770         case in demo.at with longer file names.
2771         * test/demo.at (linking with long file names): New test, based
2772         on...
2773         * tests/pdemo-conf.test, tests/pdemo-exec.test,
2774         tests/pdemo-inst.test, tests/pdemo-make.test: ...these legacy
2775         tests, now removed.
2776         * tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
2777         tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
2778         tests/pdemo/longer_file_name_foo.c,
2779         tests/pdemo/longer_file_name_foo2.c,
2780         tests/pdemo/longer_file_name_hell1.c,
2781         tests/pdemo/longer_file_name_hell2.c,
2782         tests/pdemo/longer_file_name_hello.c,
2783         tests/pdemo/longer_file_name_main.c: Remove.
2784         * configure.ac (CONF_SUBDIRS): Remove tests/pdemo.
2785         * Makefile.am: Adjust.
2786
2787         tests: migrate legacy tests/tagdemo tests to Autotest.
2788         * tests/tagdemo.at: New autotest groups, based on...
2789         tests/tagdemo-conf.test, tests/tagdemo-exec.test,
2790         tests/tagdemo-make.test, tests/tagdemo-shared-exec.test,
2791         tests/tagdemo-shared-make.test, tests/tagdemo-shared.test,
2792         tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
2793         tests/tagdemo-static.test, tests/tagdemo-undef-exec.test,
2794         tests/tagdemo-undef-make.test, tests/tagdemo-undef.test:
2795         ...these legacy tests, now removed.
2796         * tests/tagdemo/.gitignore, tests/tagdemo/Makefile.am,
2797         tests/tagdemo/README, tests/tagdemo/baz.cpp,
2798         tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
2799         tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
2800         tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
2801         tests/tagdemo/main.cpp: Remove.
2802         * configure.ac (CONF_SUBDIRS): Remove tests/tagdemo.
2803         * Makefile.am: Adjust.
2804
2805         tests: migrate legacy tests/depdemo tests to Autotest.
2806         * tests/depdemo.at: New autotest groups, based on...
2807         * tests/depdemo-conf.test, tests/depdemo-exec.test,
2808         tests/depdemo-inst.test, tests/depdemo-make.test,
2809         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
2810         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
2811         tests/depdemo-nofast.test, tests/depdemo-relink.test,
2812         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
2813         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
2814         tests/depdemo-shared.test, tests/depdemo-static-exec.test,
2815         tests/depdemo-static-inst.test, tests/depdemo-static-make.test,
2816         tests/depdemo-static-unst.test, tests/depdemo-static.test,
2817         tests/depdemo-unst.test: ...these legacy test cases, now
2818         removed.
2819         * tests/depdemo/Makefile.am, tests/depdemo/README,
2820         tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
2821         tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
2822         tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
2823         tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
2824         tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
2825         tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
2826         tests/depdemo/l4/l4.h, tests/depdemo/main.c,
2827         tests/depdemo/sysdep.h: Remove.
2828         * configure.ac (CONF_SUBDIRS): Remove tests/depdemo.
2829         * Makefile.am: Adjust.
2830
2831         tests: migrate legacy tests/demo tests to Autotest.
2832         * tests/demo.at: New autotest groups, based on...
2833         * tests/demo-conf.test, tests/demo-deplibs.test,
2834         tests/demo-exec.test, tests/demo-hardcode.test,
2835         tests/demo-inst.test, tests/demo-make.test,
2836         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
2837         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
2838         tests/demo-nofast.test, tests/demo-noinst-link.test,
2839         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
2840         tests/demo-nopic.test, tests/demo-pic-exec.test,
2841         tests/demo-pic-make.test, tests/demo-pic.test,
2842         tests/demo-relink.test, tests/demo-shared-exec.test,
2843         tests/demo-shared-inst.test, tests/demo-shared-make.test,
2844         tests/demo-shared-unst.test, tests/demo-shared.test,
2845         tests/demo-static-exec.test, tests/demo-static-inst.test,
2846         tests/demo-static-make.test, tests/demo-static-unst.test,
2847         tests/demo-static.test, tests/demo-unst.test: ...these legacy
2848         test cases, now removed.
2849         * tests/demo/Makefile.am, tests/demo/README,
2850         tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c,
2851         tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
2852         tests/demo/hello.c, tests/demo/main.c: Remove.
2853         * configure.ac (CONF_SUBDIRS): Remove tests/demo.
2854         * Makefile.am: Adjust.
2855
2856         tests: migrate legacy tests/cdemo tests to Autotest.
2857         * tests/cdemo.at: New Autotest groups, based on...
2858         * tests/cdemo-conf.test, tests/cdemo-exec.test,
2859         tests/cdemo-make.test, tests/cdemo-shared-exec.test,
2860         tests/cdemo-shared-make.test, tests/cdemo-shared.test,
2861         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
2862         tests/cdemo-static.test, tests/cdemo-undef-exec.test,
2863         tests/cdemo-undef-make.test, tests/cdemo-undef.test: ...these
2864         legacy test cases, now removed.
2865         tests/cdemo/Makefile.am, tests/cdemo/README,
2866         tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h,
2867         tests/cdemo/main.c: Remove.
2868         * configure.ac (CONF_SUBDIRS): Remove tests/cdemo.
2869         * Makefile.am: Adjust.
2870
2871         maint: distribute a single ChangeLog file.
2872         * ChangeLog.1996, ChangeLog.1997, ChangeLog.1998, ChangeLog.1999,
2873         ChangeLog.2000, ChangeLog.2001, ChangeLog.2002, ChangeLog.2003,
2874         ChangeLog.2004, ChangeLog.2005, ChangeLog.2006, ChangeLog.2007,
2875         ChangeLog.2008, ChangeLog.2009, ChangeLog.2010: Remove.  Content
2876         moved from here...
2877         * ChangeLog.old: ...to here.
2878         * Makefile.am (EXTRA_DIST): Update list of ChangeLog files.
2879         (changelog_old): New variable to hold path to ChangeLog.old file.
2880         ($(changelog)): Update to concatenate non-distributed
2881         ChangeLog.old file to distributed ChangeLog after git log entries.
2882
2883         syntax-check: fix violations and implement sc_prohibit_space_semicolon.
2884         No need for a spurious space before a command ending semi-colon.
2885         * cfg.mk (sc_prohibit_space_semicolon): New test to catch
2886         accidental reintroduction of spurious spaces removed by this
2887         changeset.
2888         * bootstrap, build-aux/general.m4sh, build-aux/ltmain.m4sh,
2889         libltdl/lt__strl.c, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at:
2890         Remove spurious spaces.
2891
2892 2012-10-03  Gary V. Vaughan  <gary@gnu.org>
2893
2894         Merge branch 'gary/reredo-test-operand-order'
2895         The original manually applied changeset 962aa91 contained several
2896         errors (some corrected by subsequent patches on master, others not)
2897         and many unrelated (although in this case, correct) changes were also
2898         committed in the same changeset.
2899         The merged branch gary/reredo-test-operand-order factors the
2900         unrelated changes out into separate commits, and performs the work
2901         that should have been in 962aa91 with a script, the results of which
2902         were then painstakingly inspected for errors.
2903         This merge moves the corrections for errors made in the original
2904         manual patch from the branch onto master.  Please inspect the many
2905         separate changesets on the branch rather than the original patch
2906         when you bisect or otherwise find your way to an error caused by
2907         962aa91.
2908
2909 2012-10-02  Gary V. Vaughan  <gary@gnu.org>
2910
2911         tests: simplify some shell code.
2912         * tests/fail.at: Simplify.
2913         * tests/static.at: Likewise.
2914
2915         libtool: unroll complex nested compound statements
2916         * build-aux/ltmain.m4sh: Use an if statement instead of ugified
2917         compound statements.
2918
2919         libtool: unroll nested if into a single case statement.
2920         * build-aux/ltmain.m4sh (func_mode_link): Unroll a hard to
2921         understad nested if statement into a more readable single case
2922         statement.
2923
2924         libtool: simplify $skipped_export blocks
2925         * build-aux/ltmain.m4sh (func_mode_link): Save an if statement
2926         with '$skipped_export && { block; }' instead of 'if $skipped_export;
2927         then block; fi'.
2928
2929         libtool: simplify an if statement
2930         * build-aux/ltmain.m4sh (func_mode_link): Reverse the branch
2931         order for an if statement for readability.
2932         * m4/libtool.m4: Likewise.
2933
2934         libtool: save an if statement, with a compound statement.
2935         * build-aux/ltmain.m4sh (func_mode_link): Simplify.
2936
2937         libtool: simplify multiple string tests
2938         * build-aux/ltmain.m4sh (func_mode_link): Save test invocations
2939         by using 'test x,y = "$a,$b"' instead of 'test x = "$a" && test y
2940         = "$b"'.
2941         * m4/libtool.m4: Likewise.
2942
2943         libtool: fold if into a compound OR statement when more readable
2944         * build-aux/ltmain.m4sh (func_mode_link): For readability, use
2945         'test string = "$var" || { stuff; }' in preference to
2946         'if test string != "$var"; then stuff; fi'.
2947
2948         libtool: use false or : for $rmforce, and simplify
2949         * build-aux/ltmain.m4sh (func_mode_uninstall): Save a string
2950         comparison by setting $rmforce to false or : and using it
2951         directly as the first argument to if.
2952
2953         libtool: use false or : for $wrappers_required, and simplify
2954         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2955         comparison by setting $wrappers_required to false or : and using
2956         it directly with a ored block rather than an if statement.
2957
2958         libtool: use false or : for $linkalldeplibs, and simplify
2959         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2960         comparison by setting $linkalldeplibs to false or : and using it
2961         directly as the first argument to if.
2962
2963         libtool: use false or : for $valid_a_lib, and simplify
2964         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2965         comparison by setting $valid_a_lib to false or : and using it
2966         directly as the first argument to if.
2967
2968         libtool: use false or : for $found, and simplify
2969         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2970         comparison by setting $found to false or : and using it directly
2971         as the first argument to if.
2972
2973         libtool: use false or : for $alldeplibs, and simplify
2974         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2975         comparison by setting $alldeplibs to false or : and using it
2976         directly as the first argument to if.
2977
2978         libtool: use false or : for $preload, and simplify
2979         * build-aux/ltmain.m4sh (func_mode_link): Save a string
2980         comparison by setting $preload to false or : and using it directly
2981         instead of if statements.
2982
2983         libtool: use false or : for $my_pic_p, and simplify
2984         * build-aux/ltmain.m4sh (func_generate_dlsyms): Save a string
2985         comparison by setting $my_pic_p to false or : and using it directly
2986         instead of calling if.
2987         Adjust all callers.
2988
2989         libtool: use false or : for $finalize, and simplify
2990         * build-aux/ltmain.m4sh (func_mode_install): Save a string
2991         comparison by setting $finalize to false or : and using it
2992         directly as the first argument to if.
2993
2994         libtool: use false or : for $isdir, and simplify
2995         * build-aux/ltmain.m4sh (func_mode_install): Save a string
2996         comparison by setting $isdir to false or : and using it directly
2997         as the first argument to if.
2998
2999         syntax-check: [REDO] fix violations and implement
3000          sc_prohibit_test_const_follows_var.
3001         To safely use a non-literal fist argument to 'test', you must
3002         always prepend a literal non-'-' character, but often the second
3003         operand is a constant that doesn't begin with a '-' already, so
3004         always use 'test a = "$b"' instead of the noisy 'test "X$b" = Xa'.
3005         * cf.mk (sc_prohibit_test_const_follws_var): New syntax-check
3006         rule to ensure we don't reintroduce noisy test operands.
3007         bootstrap, build-aux/extract-trace, build-aux/general.m4sh,
3008         build-aux/ltmain.m4sh, configure.ac, doc/libtool.texi, libtoolize.m4sh,
3009         m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at, tests/defs.m4sh,
3010         tests/demo-relink.test, tests/demo/configure.ac,
3011         tests/depdemo-relink.test, tests/destdir.at, tests/duplicate_conv.at,
3012         tests/fail.at, tests/getopt-m4sh.at, tests/help.at, tests/libtoolize.at,
3013         tests/link-2.test, tests/link-order2.at, tests/lt_dlopenext.at,
3014         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
3015         tests/need_lib_prefix.at, tests/nocase.at, tests/pdemo/configure.ac,
3016         tests/pic_flag.at, tests/search-path.at, tests/shlibpath.at,
3017         tests/static.at, tests/sysroot.at, tests/tagtrace.test,
3018         tests/testsuite.at, tests/with-pic.at: Swap operands to avoid useless
3019         noise.
3020
3021 2012-09-19  Peter Rosin  <peda@lysator.liu.se>
3022
3023         tests: skip with-pic test when no "real" pic flag is used.
3024         * tests/with-pic.at: Windows uses "-DDLL_EXPORT -DPIC" as the pic
3025         "flag", but never applies it to static libraries. Cater for this
3026         and skip if no "real" pic flag is in use.
3027
3028 2012-09-16  Gary V. Vaughan  <gary@gnu.org>
3029
3030         syntax-check: fix texinfo formatting flagged by
3031          prohibit_undesirable_word_seq.
3032         * doc/libtool.text: Fix several misuses of @xref and @pxref so that
3033         the prohibit_undesirable_word_seq syntax check passes again.
3034
3035         syntax-check: remove useless_braces_in_variable_derefs.
3036         * build-aux/general.m4sh: Remove spurious braces around
3037         ${ZSH_VERSION} dereference.
3038         * build-aux/ltmain.m4sh (func_mode_link): Likewise for ${wl}.
3039
3040         syntax-check: skip prohibit_strncpy.
3041         * cfg.mk (local-checks-to-skip): sc_prohibit_strncpy.
3042
3043         syntax-check: skip prohibit_always_true_header_tests rule.
3044         * cfg.mk (local-checks-to-skip): Add
3045         sc_prohibit_always_true_header_tests.
3046
3047         maint: Revert "bootstrap: delete unneeded README-release patch"
3048         This reverts commit 11cd425e7d47111956381dba28f8c1b34e14653f.
3049         These instructions are hard to find for new maintainers, so it's
3050         good to keep them to hand with the release notes.
3051         And the additional distchecks are important prior to a release.
3052
3053         maint: remove unused cvsu script.
3054         * build-aux/cvsu: Remove. This script is not useful now that
3055         Libtool's repository is hosted in git.
3056         * Makefile.am (build_scripts): Remove cvsu reference.
3057
3058         maint: run update-copyright for missing 2011 and 2012 years.
3059         See maintain.texi (Copyright Notices) for rules for maintaining
3060         the years in copyright notices.
3061         * All Files (Copyright): Updated with missing 2011 and 2012.
3062
3063         bootstrap: use gnulib update-copyright script.
3064         See maintain.texi (Copyright Notices) for rules for maintaining
3065         the years in copyright notices.
3066         * bootstrap.conf (gnulib_modules): Add update-copyright.
3067         * cfg.mk (update-copyright-env): Set environment variables for
3068         update-copyright script.
3069
3070         bootstrap: update bootstrap script to latest upstream.
3071         * bootstrap, build-aux/options-parser: apply upstream fixes and
3072         enhancements.
3073
3074         git: don't complain about new parallel tests driver and file droppings.
3075         * build-aux/.gitignore: Ignore parallel `test-driver' script.
3076         * tests/.gitignore: Ignore `test-driver' .trs file droppings.
3077
3078         gnulib: update local gnulib patches.
3079         * gl/build-aux/announce-gen.diff: Remove hunks adopted upstream.
3080         * gl/build-aux/do-release-commit-and-tag.diff: Refresh this patch
3081         to match current gnulib.
3082
3083         gnulib: update gnulib submodule.
3084
3085         bootstrap: ensure there is a ChangeLog before running automake.
3086         Automake refuses to run in GNU-mode unless there is a ChangeLog file
3087         in the top-level directory.
3088         * bootstrap.conf (libtool_force_changelog): Create a dummy ChangeLog.
3089
3090         libtoolize: improve verbose mode output.
3091         * libtoolize (func_require_seen_ltdl)
3092         (func_require_seen_libtool): Output success message in verbose
3093         mode.
3094
3095 2012-08-22  Peter O'Gorman  <peter@pogma.com>
3096
3097         libtool: Add the 'n' to then.
3098         * m4/libtool.m4: fix typo.
3099         Reported by Brad Smith.
3100
3101 2012-08-22  Andreas Schwab  <schwab@linux-m68k.org>
3102
3103         libtool: Pass through -g* so that debugging information is not dropped
3104         * ltmain.m4sh (func_mode_link): Pass through -g*.
3105
3106 2012-08-22  David Edelsohn  <dje.gcc@gmail.com>
3107
3108         libtool: AIX PIC shared library support
3109         * m4/libtool.m4 (_LT_COMPILER_PIC): Add -fPIC to GCC and GXX for AIX.
3110
3111 2012-08-22  Brad Smith  <brad@comstyle.com>
3112
3113         libtool: Update/simplify OpenBSD support
3114         * m4/libtool.m4: Forget about 11 year old releases.
3115
3116 2012-08-19  Peter Rosin  <peda@lysator.liu.se>
3117
3118         libtool: quote progpath properly
3119         Attempt to handle spaces in paths better.
3120         * build-aux/ltmain.m4sh (func_mode_install, func_mode_link): Quote
3121         $progpath.
3122         * THANKS: Update.
3123
3124 2012-04-19  Mike Frysinger  <vapier@gentoo.org>
3125
3126         libtool: Handle getconf returning "undefined".
3127         * m4/libtool.m4: Check for "undefined" from `getconf`.
3128
3129 2012-03-17  Peter Rosin  <peda@lysator.liu.se>
3130
3131         bootstrap: delete unneeded README-release patch
3132         * gl/top/README-release.diff: Delete.
3133
3134 2012-03-16  Peter O'Gorman  <peter@pogma.com>
3135
3136         libtool: Fix typo that caused sys_lib_search_path_spec to be wrong.
3137         * m4/libtool.m4: s/lt_fooi/lt_foo/.
3138         Reported by Paul Seidler.
3139
3140 2012-02-21  Samuel Thibault  <samuel.thibault@gnu.org>
3141
3142         libtool: Improve GNU/Hurd support.
3143         * m4/libtool.m4: Add gnu* match where it was missing.
3144
3145 2012-02-19  Titus von Boxberg  <titus@v9g.de>
3146
3147         libtool: Accept clang's -stdlib linker flag.
3148         build-aux/ltmain.m4sh: Don't drop the -stdlib= flag.
3149
3150 2012-02-19  Juergen Reuter  <reuter@t00pcx17094.desy.de>
3151
3152         libtool: Enable nagfor fortran compiler support
3153         * build-aux/ltmain.m4sh: nagfor compatible version string.
3154         * m4/libtool.m4: nagfor support.
3155
3156 2012-02-19  Juergen Reuter  <reuter@theoc01.desy.de>
3157
3158         libtool: Fixing -shared error message for nagfor compiler.
3159         * m4/libtool.m4: Fix -shared.
3160
3161 2012-02-19  Pavel (Pasha) Shamis  <shamisp@ornl.gov>
3162
3163         ltdl: Improve debug error reporting in ltdl.
3164         * libltdl/ltdl.c: Print the error message if loading fails.
3165
3166 2012-02-19  Peter O'Gorman  <peter@pogma.com>
3167
3168         maint: Deleted unneeded gitlog-to-changelog patch
3169         * gl/build-aux/gitlog-to-changelog.diff: Delete.
3170
3171 2012-02-02  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
3172
3173         fixup: restore EXPORTS test
3174         Commit v2.4.2-120-g962aa91
3175         syntax-check: fix violations and implement sc_prohibit_test_const_follows_var
3176         inadvertedly reversed the meaning of the comparison.
3177
3178         * build-aux/ltmain.m4sh (func_mode_link) [cygwin|mingw|cegcc]: Restore
3179         the EXPORTS test.  We need to look at the symbols when it's _not_
3180         already a .def file (in which case we trust the user input blindly).
3181
3182 2012-01-30  Peter Rosin  <peda@lysator.liu.se>
3183
3184         cwrapper: avoid surplus strlen calculations.
3185         * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src:lt_update_exe_path):
3186         Avoid surplus strlen calculations.
3187
3188 2011-12-24  Gary V. Vaughan  <gary@gnu.org>
3189
3190         bootstrap: fix Autoconf version typo.
3191         * build-aux/options-parser: s/2\.62/2.68/
3192
3193         gnulib: update gnulib submodule.
3194         Among others, this fixes the reference to a local commit.
3195         * gnulib: Updated to todays master HEAD revision.
3196         * gl/top/README-release.diff: Update to account for changes to
3197         gnulib/top/README-release since the last gnulib update.
3198
3199 2011-12-18  Gary V. Vaughan  <gary@gnu.org>
3200
3201         libtool: make fork minimisation compatible with dash and zsh.
3202         * build-aub/general.m4sh (lt_HAVE_PLUSEQ_OP): Instead of using
3203         $((..)) arithmetic, which causes an error on dash, use a case
3204         based bash version check.
3205         (lt_HAVE_ARITH_OP, lt_HAVE_XSI_OPS): Also short circuit the
3206         feature probing forks and set these automatically when zsh is
3207         detected.
3208         Reported by Stefano Lattarini.
3209
3210         bootstrap: adopt autoconf echo normalization code.
3211         Dash shipped with Ubutu-11.10 as /bin/sh, among others, still
3212         has a crippled echo builtin that mis-handles backslashes.
3213         * build-aux/options-parser (bs_echo): Adopt the autoconf echo
3214         normalization code to find a suitable replacement for buggy echo
3215         commands.
3216         Adjust all uses of echo to $bs_echo.
3217         * build-aux/extract-trace (func_extract_trace, func_main):
3218         Likewise.
3219         * bootstrap: To retain some execution speed on platforms with
3220         buggy builtin echo, replace most occurrences of `echo' with
3221         `$bs_echo' - except where its arguments will obviously never
3222         contain backslashes or be overly long.
3223         Reported by Reuben Thomas.
3224
3225         libtool: minimise forks per invocation under bash.
3226         * build-aux/general.m4sh (lt_HAVE_PLUSEQ_OP, lt_HAVE_ARITH_OP)
3227         (lt_HAVE_XSI_OPS): Set these without forking a test script when
3228         running under bash, to avoid a few unnecessary forks.
3229
3230 2011-12-13  H.J. Lu  <hongjiu.lu@intel.com>
3231
3232         libtool: Support x32.
3233         * m4/libtool.m4 (_LT_ENABLE_LOCK): Support x32.
3234
3235 2011-12-08  Gary V. Vaughan  <gary@gnu.org>
3236
3237         maint: disable prohibit_always-defined_macros syntax check.
3238         Aside from Apple grep silently failing to run this test and
3239         report violations, libtool still uses non-gnulib versions of
3240         dirent.h and argz.h which use the same macros, but are not
3241         always-defined.
3242         * cfg.mk (local-checks-to-fix): Move
3243         sc_prohibit_always-defined_macros from here...
3244         (local-checks-to-skip): ...to here.
3245         Reported by Peter O'Gorman.
3246
3247         tests: s/snippit/snippet/.
3248         * tests/demo/foo.h, tests/pdemo/foo.h: Spell `snippet' correctly.
3249         Reported by Stefano Lattarini.
3250
3251         tests: make sure file restore traps are called correctly on AIX.
3252         * tests/demo-noinst-link.test (func_save_files): set the restore
3253         trap outside a function, otherwise AIX 5.3 /bin/sh will run the
3254         trap at the end of the function, instead of when the script
3255         exits.
3256         * tests/demo-relink.test (func_save_files): Ditto.
3257         * tests/depdemo-relink.test (func_save_files): Ditto.
3258         Reported by Stefano Lattarini.
3259
3260         maint: eliminate some more spurious leading Xs.
3261         * m4/libtool.m4: Reverse argument order to eliminate spurious
3262         leading X's.
3263
3264         bootstrap: put back missing spaces before parens.
3265         * bootstrap (func_require_buildreq_autobuild)
3266         (func_require_buildreq_automake): Vi's delete word command is
3267         too greedy and also eats trailing whitespace before following
3268         non-word-chars. Put back the spaces it ate so that
3269         syntax-checks pass once again.
3270
3271         libtoolize: refactor copying filter creation.
3272         Prevent the various require_filter functions from becoming too
3273         long by factoring common code into new functions.
3274         * libtoolize (func_make_relative_dir_filter)
3275         (func_make_relative_ltdl_filter): New functions. Generalize and
3276         consolidate the various similar snippets for concatenating
3277         together the sed scripts for func_copy filtering.
3278         (require_filter_Makefile_am, require_filter_aclocal_m4)
3279         (require_filter_configure_ac): Simplify.
3280         (require_ltdl_relative_aux_dir): Remove.
3281         (require_ltdl_relative_macro_dir): Ditto.
3282
3283         maint: pick XSI funcs at runtime, not configure time.
3284         Determine, on a function by function basis, what XSI features
3285         are available in the shell that is actually running the script,
3286         rather than the one that was picked at configure time by the
3287         re-execution engine.
3288         * m4/libtool.m4 (_LT_PROG_FUNCTION_REPLACE)
3289         (_LT_PROG_REPLACE_SHELLFNS): Remove.
3290         (_LT_CHECK_SHELL_FEATURES): Remove tests for XSI and += support.
3291         * build-aux/general.m4sh (func_append, func_append_quoted)
3292         (func_arith, func_len, func_basename, func_dirname)
3293         (func_dirname_and_basename, func_stripname): List both enhanced
3294         and fallback implementations, and choose one based on whether
3295         the enhanced features required by the fastest version are
3296         available.
3297         * build-aux/getopt.m4sh (func_split_short_opt)
3298         (func_split_long_opt): Ditto.
3299         * build-aux/ltmain.m4sh (func_lo2o, func_xform): Ditto.
3300         * tests/getopt-m4sh.at: Add tests for enhanced and fallback
3301         implementations of func_arith, func_len, func_stripname and
3302         func_dirname_and_basename.
3303         * NEWS: Updated.
3304
3305         maint: share useful functions from general.m4sh.
3306         * build-aux/ltmain.m4sh (func_append, func_append_quoted)
3307         (func_arith, func_len): Removed from here...
3308         * build-aux/general.m4sh (func_append, func_append_quoted)
3309         (func_arith, func_len): ...and added to here.
3310         (func_dirname, func_dirname_and_basename, func_normal_abspath)
3311         (func_relative_path): Use func_append.
3312         * tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): Removed.
3313         Fallback functions are now in any m4sh generated file
3314         automatically.
3315
3316         libtoolize: reorder function definitions to keep func_filter_* together.
3317         * libtoolize: Restore asciibetical order, so that all the
3318         filter function definitions are together.
3319
3320         libtoolize: use _filter as a prefix for better ordering.
3321         * libtoolize.m4sh (require_Makefile_am_filter)
3322         (require_ltdl_mk_filter, require_aclocal_m4_filter)
3323         (require_configure_ac_filter): Rename these functions from this...
3324         (require_filter_Makefile_am, require_filter_ltdl_mk)
3325         (require_filter_aclocal_m4, require_filter_configure_ac): ...to
3326         this, respectively.  Adjust all callers.
3327         (Makefile_am_filter, ltdl_mk_filter, aclocal_m4_filter)
3328         (configure_ac_filter): Rename these global variables from this...
3329         (filter_Makefile_am, filter_ltdl_mk, filter_aclocal_m4)
3330         (filter_configure_ac): ...to this, respectively.
3331
3332         libtoolize: rename ltdl.mk filter function.
3333         * libtoolize.m4sh (require_Makefile_inc_filter): Rename from
3334         this...
3335         (require_ltdl_mk_filter): ...to this. Adjust all callers.
3336
3337         bootstrap: escape quotes properly in generated functions.
3338         * bootstrap: Although not a real bug, for consistency, be sure
3339         to correctly escape single quotes inside a single quoted
3340         function generator.
3341
3342         bootstrap: reorder function definitions to keep func_buildreq_* together.
3343         * bootstrap: Restore asciibetical order, so that all the
3344         buildreq function definitions are together.
3345
3346         bootstrap: use _buildreq as a prefix for better ordering.
3347         * bootstrap (require_autobuild_buildreq)
3348         (require_autoconf_buildreq, require_automake_buildreq)
3349         (require_autopoint_buildreq, require_libtoolize_buildreq)
3350         (require_patch_buildreq): Rename from these...
3351         (require_buildreq_autobuild, require_buildreq_autoconf)
3352         (require_buildreq_automake, require_buildreq_autopoint)
3353         (require_buildreq_libtoolize, require_buildreq_patch): ...to
3354         these, respectively.  Adjust all callers.
3355
3356         bootstrap: ensure consistent function header comments.
3357         * bootstrap (require_bootstrap_uptodate)
3358         (require_buildtools_uptodate): Use `require_...' in header
3359         comment for these functions to be consistent with the rest,
3360         rather than `func_require_...'.
3361
3362         bootstrap: make sure patch is available to bootstrap if necessary.
3363         Make sure we're not lacking any functionality provided by the
3364         incumbent gnulib bootstrap script, and where it's easy to do so
3365         (like it is here), provide better functionality!
3366         * bootstrap (require_patch): Make sure that PATCH expands to the
3367         best `patch' command available on the system, honouring
3368         overrides in the users environment.
3369         (require_patch_buildreq): Automatically add a requirement for a
3370         patch command to buildreq when there are diff files in
3371         $local_gl_dir.
3372         (func_require_buildtools_uptodate): Call require_patch_buildreq
3373         before testing build tool versions.
3374         (func_gnulib_tool_copy_file): Make sure PATCH is set before using
3375         gnulib-tool to copy files.
3376
3377 2011-11-26  Gary V. Vaughan  <gary@gnu.org>
3378
3379         m4: fix logic error leading to -fno-rtti being added wrongly.
3380         * m4/libtool.m4 (_LT_COMPILER_OPTION): Negate comparison so that
3381         compiler flags are added correctly.
3382
3383         maint: Fix generated ChangeLog typos.
3384         * build-aux/git-log-fix: Spell Stefano Lattarini's name
3385         correctly.
3386         Don't use my home email address for GNU commits.
3387
3388 2011-11-25  Gary V. Vaughan  <gary@gnu.org>
3389
3390         syntax-check: fix violations and implement sc_useless_braces_in_variable_derefs.
3391         Until now, libtool sources have used braced variable names
3392         seemingly at random! Almost always the braces are just noise, so
3393         remove all the unnecessary ones.
3394         * cfg.mk (sc_useless_braces_in_variable_derefs): New syntax
3395         check rule to ensure we only reintroduce braced variable
3396         dereferences if they are followed by a valid variable name
3397         character.
3398         build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
3399         build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
3400         libltdl/configure.ac, m4/libtool.m4, m4/ltdl.m4,
3401         m4/ltoptions.m4, tests/defs.m4sh, tests/demo-nopic.test,
3402         tests/depdemo/configure.ac, tests/flags.at, tests/link.test,
3403         tests/objectlist.test, tests/quote.test, tests/static.at: Remove
3404         spurious braces.
3405
3406         syntax-check: fix violations and implement sc_prohibit_sed_s_comma.
3407         I like to name temporary directories that I will remove shortly
3408         with two leading commas so that they sort lexicographically at
3409         the top of `ls' output.  Now, `./configure
3410         --prefix=`pwd`/,,inst' works again, for the first time in
3411         several years.
3412         * cfg.mk (sc_prohibit_sed_s_comma): Comma is too common a
3413         character to use routinely as the separator for sed
3414         substitutions on file paths and other variables determined by
3415         the user, causing bugs like the one I describe above.  Make sure
3416         we don't accidentally reintroduce any comma separators in
3417         future.
3418         * Makefile.am, bootstrap, bootstrap.conf, build-aux/extract-trace,
3419         build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
3420         build-aux/git-log-fix, build-aux/ltmain.m4sh, libtoolize.m4sh,
3421         m4/libtool.m4, m4/ltdl.m4, tests/cdemo-undef.test,
3422         tests/cmdline_wrap.at, tests/darwin.at, tests/defs.m4sh,
3423         tests/getopt-m4sh.at, tests/install.at, tests/libtoolize.at,
3424         tests/mdemo/Makefile.am, tests/need_lib_prefix.at,
3425         tests/sysroot.at, tests/tagdemo-undef.test, tests/testsuite.at:
3426         Try to use `|' as the default separator wherever possible,
3427         otherwise something else that doesn't occur in the substitution
3428         expression.
3429         * NEWS: Updated.
3430
3431         syntax-check: fix violations and implement sc_prohibit_bare_basename.
3432         * cfg.mk (sc_prohibit_bare_basename, sc_prohibit_basename_with_sed):
3433         Make sure not to go back to using occasional `|$basename' or
3434         `|$dirname' syntax.
3435         * build-aux/git-hooks/commit-msg, build-aux/ltmain.m4sh,
3436         * build-aux/options-parser, tests/fcdemo-conf.test,
3437         * tests/fcdemo-shared.test, tests/fcdemo-static.test,
3438         * tests/libtoolize.at: Fix violations.
3439
3440         tests: migrate tests/sh.test checks to syntax-checks.
3441         Some modernization of the legacy testsuite.
3442         * tests/sh.test: Remove.
3443         * Makefile.am (COMMON_TESTS): Adjust.
3444         * cfg.mk (sc_libtool_m4_cc_basename, sc_prohibit_bracket_as_test)
3445         (sc_prohibit_nested_quotes, sc_prohibit_set_dummy_without_shift)
3446         (sc_prohibit_set_minus_minus, sc_prohibit_test_binary_operators)
3447         (sc_prohibit_test_dollar, sc_prohibit_test_minus_e)
3448         (sc_prohibit_test_unary_operators, sc_prohibit_test_X)
3449         (sc_prohibit_Xsed_withou_X, sc_require_function_nl_brace):
3450         Functionally identical tests to what used to be performed by
3451         sh.test, only with coverage of all files.
3452         * bootstrap, build-aux/edit-readme-alpha,
3453         build-aux/extract-trace, build-aux/getopt.m4sh,
3454         build-aux/ltmain.m4sh, configure.ac, m4/libtool.m4, m4/ltdl.m4,
3455         tests/bindir.at, tests/configure-iface.at, tests/cwrapper.at,
3456         tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
3457         tests/dlloader-api.at, tests/exceptions.at,
3458         tests/getopt-m4sh.at, tests/lalib-syntax.at, tests/link-2.test,
3459         tests/link-order2.at, tests/loadlibrary.at,
3460         tests/lt_dladvise.at, tests/lt_dlexit.at, tests/lt_dlopen_a.at,
3461         tests/lt_dlopenext.at, tests/need_lib_prefix.at,
3462         tests/nonrecursive.at, tests/recursive.at, tests/resident.at,
3463         tests/standalone.at, tests/static.at, tests/stresstest.at,
3464         tests/subproject.at, tests/sysroot.at, tests/tagtrace.test,
3465         tests/testsuite.at: Fix violations of the new syntax checks.
3466
3467         syntax-check: fix violations and implement sc_useless_quotes_in_assignment.
3468         Contrary to popular belief, Bourne shell does not resplit RHS of
3469         assignments after expansion, so if there are no unquoted shell
3470         metacharacters or whitespace, the quotes are useless.
3471         * cfg.mk (_sc_search_regexp_or_exclude): A variation of gnulib's
3472         _sc_search_regexp that also allows individual exclusions at the
3473         site of what would otherwise match by adding a comment.
3474         (sc_useless_quotes_in_assignment): New syntax-check rule to
3475         ensure we don't reintroduce useless quoted assignments.
3476         * bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
3477         build-aux/general.m4sh, build-aux/getopt.m4sh,
3478         build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
3479         doc/libtool.texi, libtoolize.m4sh, m4/libtool.m4, m4/ltdl.m4,
3480         m4/ltoptions.m4, tests/cwrapper.at, tests/defs.m4sh,
3481         tests/lalib-syntax.at, tests/libtoolize.at,
3482         tests/lt_dlopenext.at, tests/mdemo/configure.ac,
3483         tests/mdemo2/configure.ac, tests/need_lib_prefix.at,
3484         tests/no-executables.at, tests/quote.test, tests/suffix.test:
3485         Remove spurious quotes.
3486
3487         syntax-check: fix violations and implement sc_useless_quotes_in_case.
3488         Contrary to popular belief, Bourne shell does not resplit case
3489         expressions after expansion, so if there are no unquoted shell
3490         metacharacters or whitespace, the quotes are useless.
3491         * cfg.mk (sc_useless_quotes_in_case): New syntax-check rule to
3492         ensure we don't reintroduce useless quoted case expressions.
3493         * build-aux/ltmain.m4sh, m4/libtool.m4, tests/bindir.at,
3494         tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
3495         tests/demo-nopic.test, tests/link-2.test, tests/quote.test,
3496         tests/sysroot.at: Remove spurious quotes.
3497
3498         maint: quote $file correctly in bootstrap.
3499         * bootstrap (func_insert_sorted_if_absent): Don't forget the
3500         double quotes, since we can't control the content of $file.
3501         Reported by Stefano Lattarini.
3502
3503         build: fix a quoting bug when regenerating with bootstrap_edit.
3504         * Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh): The
3505         bootstrap_edit make macro already contains double quotes, so
3506         when echoing it, don't surround it with more double quotes since
3507         it is not escaped.
3508
3509 2011-11-17  Gary V. Vaughan  <gary@gnu.org>
3510
3511         dist: hook syntax-check into `make distcheck'.
3512         To make sure we don't accidentally release anything with
3513         failing syntax-checks, have `make distcheck' run the
3514         syntax-checks automatically.
3515         * Makefile.am (distcheck-hook): New rule depending on
3516         syntax-check.
3517
3518         syntax-check: enable sc_prohibit_always_true_header_tests.
3519         * cfg.mk (local-checks-to-fix): Remove
3520         sc_prohibit_always_true_header_tests from list of disabled
3521         checks, because it no longer flags any violations.
3522
3523         syntax-check: enable sc_program_name.
3524         * cfg.mk (local-checks-to-skip): Remove sc_program_name
3525         list of disabled checks.
3526         (exclude_file_name_regexp--sc_program_name): Don't check demo
3527         programs for use of set_program_name.
3528
3529         syntax-check: enable sc_bindtextdomain.
3530         * cfg.mk (local-checks-to-skip): Remove sc_bindtextdomain
3531         list of disabled checks.
3532         (exclude_file_name_regexp--sc_bindtextdomain): Don't check demo
3533         programs for use of bindtextdomain.
3534
3535         syntax-check: fix violations and implement sc_trailing_blank-non-rfc3676.
3536         * cfg.mk (local-checks-to-fix): Move sc_trailing_blank from
3537         here...
3538         (local-checks-to-skip): ...to here, because otherwise it flags
3539         valid RFC3676 signature blocks.
3540         (sc_trailing_blank-non-rfc3676): An improved sc_trailing_blank
3541         implementation that doesn't flag signature blocks as violations.
3542         * Makefile.am, bootstrap.conf, doc/PLATFORMS,
3543         libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4,
3544         libltdl/m4/lt~obsolete.m4, tests/archive-in-archive.at,
3545         tests/convenience.at, tests/darwin.at, tests/depdemo/l1/l1.c,
3546         tests/depdemo/l2/l2.c, tests/depdemo/l3/l3.c,
3547         tests/depdemo/l4/l4.c, tests/f77demo/README,
3548         tests/f77demo/cprogram.c, tests/f77demo/foof.f,
3549         tests/f77demo/foof2.f, tests/f77demo/foof3.f,
3550         tests/f77demo/fprogram.f, tests/fcdemo/README,
3551         tests/fcdemo/cprogram.c, tests/fcdemo/foof.f90,
3552         tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
3553         tests/fcdemo/fprogram.f90, tests/mdemo/README,
3554         tests/mdemo/main.c, tests/mdemo/mlib.c, tests/objectlist.test,
3555         tests/static.at, tests/template.at, tests/testsuite.at: Remove
3556         trailing blanks.
3557
3558         syntax-check: fix violations and re-enable sc_useless_cpp_parens.
3559         * cfg.mk (local-checks-to-fix): Remove sc_useless_cpp_parens
3560         from list of disabled checks.
3561         * doc/libtool.texi, libltdl/argz.c, libltdl/argz_.h,
3562         build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
3563         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
3564         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
3565         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
3566         libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
3567         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
3568         libltdl/loaders/dyld.c, libltdl/loaders/loadlibrary.c,
3569         libltdl/loaders/shl_load.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
3570         libltdl/ltdl.c, libltdl/ltdl.h, libltdl/m4/libtool.m4, tests/demo/foo.h,
3571         tests/depdemo/sysdep.h, tests/exceptions.at, tests/export.at,
3572         tests/pdemo/foo.h, tests/stresstest.at: Remove useless parens in cpp
3573         `#if defined(foo)' statements.
3574
3575         syntax-check: fix violations and re-enable sc_space_tab.
3576         * cfg.mk (local-checks-to-fix): Remove sc_space_tab from list of
3577         disabled checks.
3578         (exclude_file_name_regexp--sc_space_tab): Don't flag space-tab
3579         sequences in diff files as an error.
3580         * Makefile.am, build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
3581         build-aux/ltmain.m4sh, libltdl/loaders/dyld.c,
3582         libltdl/loaders/shl_load.c, libltdl/ltdl.h, libltdl/ltdl.mk,
3583         libltdl/slist.c, libtoolize.m4sh, m4/ltoptions.m4, tests/demo/dlmain.c,
3584         tests/depdemo/main.c, tests/libtoolize.at, tests/lt_dladvise.at,
3585         tests/pdemo/longer_file_name_dlmain.c, tests/sh.test, tests/static.at,
3586         tests/stresstest.at, tests/template.at: Fix space-tab sequences by
3587         reversing them in regexps, and deleting leading spaces in indentation.
3588
3589         syntax-check: fix violations and re-enable sc_prohibit_undesirable_word_seq.
3590         * cfg.mk (local-checks-to-fix): Remove
3591         sc_prohibit_undesirable_word_seq from list of disabled checks.
3592         * doc/libtool.texi, build-aux/ltmain.m4sh,
3593         libltdl/m4/libtool.m4, libtoolize.m4sh: Replace all uses of "can
3594         not" with "cannot".
3595
3596         syntax-check: fix violations and re-enable sc_probibit_test_minus_ao.
3597         * cfg.mk (local-checks-to-fix): Remove
3598         sc_probhibit_test_minus_ao from list of disabled checks.
3599         (exclude_file_name_regexp--sc_prohibit_tests_minus_ao): The
3600         matches from this syntax-check in libtool.m4 are all bogus.
3601
3602         syntax-check: fix violations and re-enable sc_prohibit_strcmp.
3603         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_strcmp
3604         from list of disabled checks.
3605         (exclude_file_name_regexp--sc_prohibit_strcmp): Ignore
3606         violations in libtool.texi and any demo C files.
3607         * libltdl/libltdl/lt__private.h (strneq, streq): Renamed from
3608         this...
3609         (STRNEQ, STREQ): ..to this.  Adjust all callers.
3610         * tests/slist.at: Add STREQ definition. Change all !strcmp calls
3611         to STREQ.
3612         * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src): Add and use
3613         STREQ definition.
3614
3615         syntax-check: fix violations and re-enable sc_prohibit_stddef_without_use.
3616         * cfg.mk (local-checks-to-fix): Remove
3617         sc_prohibit_stddef_without_use from list of disabled checks.
3618         * libltdl/argz.c, libltdl/lt__dirent.c, libltdl/slist.c: Remove
3619         spurious stddef.h #include lines.
3620
3621         syntax-check: fix violations and re-enable sc_prohibit_magic_number_exit.
3622         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_magic_number_exit
3623         from list of disabled checks.
3624         * ltmain.c: Removed unused file.
3625
3626         syntax-check: fix violations and re-enable sc_prohibit_have_config_h.
3627         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_have_config_h
3628         from list of disabled checks.
3629         * tests/f77demo/foo.h, tests/fcdemo/foo.h: Remove spurious
3630         HAVE_CONFIG_H guards for #include <config.h>.
3631
3632         syntax-check: fix violations and re-enable sc_prohibit_empty_lines_at_EOF.
3633         * cfg.mk (local-checks-to-fix): Remove
3634         sc_prohibit_empty_lines_at_EOF from list of disabled checks.
3635         * THANKS, libltdl/argz.c, libltdl/config/getopt.m4sh,
3636         tests/f77demo/README, tests/f77demo/cprogram.c,
3637         tests/f77demo/fprogram.f, tests/fcdemo/README,
3638         tests/fcdemo/cprogram.c, tests/libtoolize.at,
3639         tests/mdemo/README, tests/mdemo2/README, tests/pdemo-inst.test:
3640         Remove spurious empty lines from the end of these files.
3641
3642         syntax-check: fix violations and re-enable sc_prohibit_doubled_word.
3643         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_doubled_word
3644         from list of disabled checks.
3645         * build-aux/general.m4sh (func_quote_for_eval): Remove one of a
3646          pair of "and"s in a comment.
3647         * tests/lt_dladvise.at (hint_global): Remove one of a pair of
3648         consecutive "to"s split across lines in a comment.
3649
3650         syntax-check: fix violations and re-enable sc_prohibit_cvs_keyword.
3651         * cfg.mk (local-checks-to-fix): Remove sc_prohibit_cvs_keyword
3652         from list of disabled checks.
3653         * tests/tagdemo/README: Remove spurious CVS keyword.
3654
3655         syntax-check: fix violations and re-enable sc_makefile_at_at_check.
3656         At some point we were supporting some undetermined `broken
3657         make', as evidenced by having carried the following code since
3658         2003:
3659           ## use @LIBLTDL@ because some broken makes do not accept
3660           ## macros in targets, we can only do this because our LIBLTDL
3661           ## does not contain $(top_builddir).
3662           @LIBLTDL@: $(top_distdir)/libtool \
3663           ...
3664         However, we've also had *many* cases of macros in targets for
3665         just as long, so most likely we never fully supported makes
3666         allegedly broken in this way.  As of this release, we explicitly
3667         no longer support make implementations that do not accept macros
3668         in targets.
3669         * cfg.mk (local-checks-to-fix): Remove sc_makefile_at_at_check
3670         from list of disabled checks.
3671         * configure.ac (order-only prerequisites): Test with the
3672         order-only pipe symbol in a macro.
3673         * Makefile.am, tests/mdemo/Makefile.am: Convert all @FOO@ to
3674         $(FOO).
3675
3676         syntax-check: fix violations and re-enable sc_makefile_TAB_only_indentation.
3677         * cfg.mk (local-checks-to-fix): Remove
3678         sc_makefile_TAB_only_indentation from list of disabled checks.
3679         * Makefile.am (libltdl/Makefile.am): Replace leading spaces with
3680         TABs.
3681         * libltdl/Makefile.am (libltdl_libltdl_la_SOURCES): Ditto.
3682
3683         syntax-check: fix violations and re-enable sc_m4_quote_check.
3684         * cfg.mk (local-checks-to-fix): Remove sc_m4_quote_check from
3685         list of disabled checks.
3686         * libltdl/m4/libtool.m4 (_LT_CHECK_OBJDIR): Quote LT_OBJDIR
3687         correctly.
3688
3689         syntax-check: fix violations and re-enable sc_file_system.
3690         * cfg.mk (local-checks-to-fix): Remove sc_file_system from list
3691         of disabled checks.
3692         (VC_LIST_ALWAYS_EXCLUDE_REGEX): Match mail directory correctly
3693         to avoid running its contents through syntax-check.
3694         * build-aux/ltmain.m4sh (func_mode_link): Use correct spelling
3695         for "file system".
3696         * libltdl/ltdl.c (try_dlopen): Ditto.
3697         * tests/dlloader-api.at: Ditto.
3698
3699         syntax-check: fix violations and re-enable sc_error_message_uppercase.
3700         * cfg.mk (local-checks-to-fix): Remove
3701         sc_error_message_uppercase from list of disabled checks.
3702         (exclude_file_name_regexp--sc_error_message_uppercase): Don't
3703         match cvsu, which is not our file to edit.
3704         * doc/libtool.texi: Use lowercase error message in example.
3705
3706         syntax-check: rationale for disabling sc_cast_of_x_alloc_return_value.
3707         * cfg.mk: Note that we support C++ compilation of libltdl, which
3708         in turn requires that *alloc return values be cast correctly.
3709
3710         syntax-check: fix violations and re-enable sc_cast_of_argument_to_free.
3711         * cfg.mk (local-checks-to-fix): Remove
3712         sc_cast_of_argument_to_free from list of disabled checks.
3713         * build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
3714         libltdl/lt__dirent.c: Casting argument to free is never
3715         necessary.
3716
3717         syntax-check: fix violations and re-enable sc_avoid_if_before_free.
3718         * cfg.mk (local-checks-to-fix): Remove sc_avoid_if_before_free
3719         from list of disabled checks.
3720         According to gnulib/doc/free.texi: "On old platforms such as
3721         SunOS4, @code{free (NULL)} fails.  However, since all such
3722         systems are so old as to no longer be considered ``reasonable
3723         portability targets,'' this module is no longer useful."
3724         * libltdl/libltdl/lt__alloc.h (FREE, MEMREASSIGN): Don't protect
3725         against freeing NULL bug on SunOS4.
3726
3727         syntax-check: skip sc_unmarked_diagnostics.
3728         * cfg.mk (local-checks-to-fix): Move sc_unmarked_diagnostics
3729         from here...
3730         (local-checks-to-skip): ...to here.
3731
3732         libtoolize: rename `libltdl/config' directory to standard `build-aux'.
3733         In addition to moving the autoconf auxiliary script directory
3734         into the place expected by GNU developers ($top_srcdir/build-aux)
3735         we also simplify libtoolize somewhat by having libltdl use
3736         whatever directory was specified by the parent project.  This is
3737         much more flexible, allows libltdl client projects to also use a
3738         single canonical `$top_srcdir/build-aux' auxiliary script
3739         directory, and maintains backward compatibility with existing
3740         projects that wish to continue using $ltdl_dir/config.
3741         * libltdl/config: Moved whole directory from here...
3742         * build-aux: ...to here.
3743         * libtoolize.m4sh (func_install_pkgaux_subproject): Remove.
3744         (func_install_pkgaux_parent): Remove.
3745         (func_install_pkgaux_files): Considerably simplified now that we
3746         have only a single auxiliary directory to worry about.
3747         (subproject_aux_dir): Remove.
3748         * bootstrap.conf (libtool_readme_release_package_substitutions):
3749         No need to substitute our old unusual aux_dir location into
3750         README-release any more.
3751         * cfg.mk (_build-aux): Now that we use the standard location for
3752         this directory, no need to set this variable either.
3753         * configure.ac (AC_INIT): git-version-gen has moved.
3754         (AC_CONFIG_AUX_DIR): Adjust.
3755         * Makefile.am (stamp-mk, auxexefiles, auxfiles)
3756         (install-data-local): Use build-aux instead of config.
3757         (libltdl/stamp-mk): Ditto.
3758         * libltdl/configure.ac, tests/cdemo/configure.ac,
3759         tests/demo/configure.ac, tests/depdemo/configure.ac,
3760         tests/f77demo/configure.ac, tests/fcdemo/configure.ac,
3761         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
3762         tests/pdemo/configure.ac, tests/tagdemo/configure.ac
3763         (AC_CONFIG_AUX_DIR): Ditto.
3764         * tests/defs.m4sh (aux_dir): Ditto.
3765         * tests/configure-iface.at, tests/getopt-m4sh.at,
3766         tests/libtoolize.at, tests/subproject.at, tests/testsuite.at:
3767         Ditto.
3768         * Makefile.am (ltdl_ac_aux_dir): Extract at build-time...
3769         * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that
3770         libtoolize can access it at runtime without requiring GNU M4 via
3771         the extract-trace script.
3772         (require_Makefile_am_filter): Use it to determine whether the
3773         aux_dir declared in the current (parent) project configure is
3774         compatible with the declarations in installed ltdl autotools
3775         source files.
3776         (require_configure_ac_filter): New function to perform similar
3777         checks and rewrite configure.ac during installation if necessary.
3778         * NEWS: Updated.
3779
3780         libtoolize: aux scripts go in ltdl dir when parent has no configure.
3781         When using libtoolize to install subproject libltdl into a
3782         parent project that does not use autotools, set the default
3783         directory for auxiliary scripts inside libltdl rather than
3784         littering the parent project with files it doesn't use.
3785         * libtoolize.m4sh (func_require_ac_aux_dir): In verbose mode,
3786         report results like other require_ funcs.
3787         (func_require_aux_dir): Put subproject auxiliary files into ltdl
3788         directory where libltdl/configure will be able to find
3789         `install-sh' and others.
3790
3791         libtoolize: simplify runtime by substituting pkgauxdir.
3792         * Makefile.am (configure_edit): Substitute pkgauxdir.
3793         * libtoolize.m4sh (func_install_pkgaux_subproject)
3794         (func_install_pkgaux_parent, extract_trace): Use it.
3795
3796         libtoolize: generate require_ltdl_relative_aux_dir definition.
3797         * libtoolize.m4sh (require_ltdl_relative_macro_dir): Change to
3798         be generated function...
3799         (require_ltdl_relative_aux_dir): ...so that we can easily
3800         generate this very similar function from the same code.
3801
3802         libtoolize: rename `libltdl/m4' directory to standard `m4'.
3803         In addition to moving the autoconf macro directory into the
3804         place expected by GNU developers ($top_srcdir/m4), we also
3805         simplify libtoolize somewhat by having libltdl use whatever
3806         directory was specified by the parent project.  This is much
3807         more flexible, allows libltdl client projects to also use a
3808         single canonical `$top_srcdir/m4' macro directory, and maintains
3809         backward compatibility with existing projects that wish to
3810         continue using $ltdl_dir/m4.
3811         * libltdl/m4: Moved to it's parent directory.
3812         * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT)
3813         (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust.
3814         * configure.ac (AC_CONFIG_MACRO_DIR): Adjust.
3815         * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The
3816         libtoolize script can pick up the project macro directory from
3817         ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing
3818         to regenerate configure for the sake of a different macro
3819         directory declared in the libltdl using client project.
3820         * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove.
3821         (func_install_pkgmacro_parent): Remove.
3822         (subproject_macro_dir): Remove.
3823         (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags)
3824         (require_ltdl_am_macro_dir): New functions, generated at runtime
3825         by adding libltdl/Makefile.am to the generation loop.
3826         (func_install_pkgmacro_files): Considerably simplified now that
3827         we have only a single macro directory to worry about.
3828         (require_ltdl_relative_macro_dir): New function. Calculate the
3829         relative path from $ltdl_dir to the parent project macro_dir.
3830         (require_Makefile_am_filter): Depending on $ltdl_mode, edit
3831         Makefile.am ACLOCAL_AMFLAGS to use the parent project macro
3832         directory if necessary.
3833         (require_aclocal_m4_filter): Make sure m4_includes point to the
3834         correct macro directory by editing the file as it is copied
3835         into the parent project.
3836         (func_install_pkgltdl_files): Use the filters.
3837         (func_check_macros): Remove various advice that no longer
3838         applies with an always shared macro directory.
3839         (func_require_ltdl_dir): Don't default ltdl_dir to subproject
3840         when `--ltdl' was not given.
3841         (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is
3842         not set.
3843         (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject
3844         mode with no other directory implied by AC_CONFIG_MACRO_DIR or
3845         ACLOCAL_AMFLAGS, otherwise m4 as before.
3846         * tests/libtoolize.at: Match new "creating file `Makefile.am'"
3847         messages correctly.
3848         (subproject ltdl with non-shared directories): This test no
3849         longer makes sense, so repurposed...
3850         (subproject ltdl with non-canonical macro dir): ...this, to
3851         ensure subproject ltdl continues to automatically share the
3852         parent macro directory.
3853         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
3854         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
3855         tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
3856         tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
3857         tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location
3858         of macro_dir.
3859         * NEWS: Updated.
3860
3861         libtoolize: rename `Makefile.inc' to standard `ltdl.mk'.
3862         * libltdl/Makefile.inc: Moved from here...
3863         * libltdl/ltdl.mk: ...to here.
3864         * Makefile.am, bootstrap.conf, tests/libtoolize.at,
3865         tests/nonrecursive.at: Adjust.
3866         * libtoolize.m4sh (func_install_pkgltdl_files): Set the
3867         destination file to `Makefile.inc' if grep finds an include for
3868         that name in a top-level Makefile.am.
3869         (func_check_macros): Print a deprecation warning if use of the
3870         old `Makefile.inc' convention is found.
3871         * tests/old-ltdl-iface.at: New test for renaming and warning
3872         correctly when `Makefile.inc' convention is still in use.
3873         * NEWS: Updated.
3874
3875         libtoolize: refactor ACLOCAL_AMFLAGS extraction.
3876         Another simple refactor to simplify following changesets.
3877         * libtoolize.m4sh (require_Makefile_am, require_aclocal_amflags)
3878         (require_am_macro_dir): Generate these functions at runtime.
3879
3880         libtoolize: rename require_makefile_am to require_Makefile_am.
3881         A simple refactoring to keep the next change self-contained.
3882         * libtoolize.m4sh (require_makefile_am): Renamed from this...
3883         (require_Makefile_am): ...to this.
3884
3885         libtoolize: simplify copying of files that are edited during install.
3886         * libltdl/Makefile.inc (EXTRA_DIST): Don't list autotools files
3887         that Automake automatically adds to a (subproject)
3888         distribution...
3889         * Makefile.am (EXTRA_DIST): ...although, our layout is a bit odd
3890         because we reuse libltdl/Makefile.inc in non-recursive mode in
3891         our own tree, so we do need to add those very same files here...
3892         * libtoolize.m4sh (require_Makefile_am_filter)
3893         (require_Makefile_inc_filter): ...all of which means we no
3894         longer need to manually remove those files at libtoolize time.
3895         These two new functions are factored out of...
3896         (func_fixup_Makefile): ...this old function, now removed.
3897         (func_copy): Add support for an optional sed script as the last
3898         argument to filter the content of a file as it is copied.
3899         (func_install_pkgltdl_files): Much simplified by $require_<foo>
3900         the relevant filter scripts and passing them to func_copy.
3901
3902         libtoolize: simplify file-copying and -linking call-graph.
3903         * libtoolize.m4sh (TAR): Remove.
3904         (func_copy_some_files, func_copy_cb): Remove.
3905         (func_copy): Refactor from all of the above, and simplify. No
3906         need to use $TAR to preserve timestamps when copying, since
3907         we've been running touch right afterwards anyway. Adjust all
3908         callers to use the new argument footprint.
3909         (func_serial_update, func_keyword_update): Delete any pre-
3910         existing destination file when used with `--force' before
3911         calling func_copy, now that the hardcoded special cases are not
3912         in there any more.
3913         (func_install_pkgmacro_subproject)
3914         (func_install_pkgaux_subproject): Use our own file loop -
3915         func_copy subsumes all the checks previously in
3916         func_copy_some_files, but operates on only one file at a time.
3917         (func_install_pkgltdl_files): Similarly, handle aclocal.m4 and
3918         configure special cases here, before calling func_copy.
3919         * tests/libtoolize.at: Make sure we match corrected "copying
3920         `configure.ac'" output.
3921
3922         maint: generate full and correct ChangeLog.
3923         * gnulib: Updated to pick up gitlog-to-changelog multi-author
3924         support.
3925         * gl/build-aux/gitlog-to-changelog.diff: Use gnulib-rejected
3926         patch for '(tiny change)' support.
3927         * Makefile.am (ChangeLog): Use gitlog-to-changelog --amend=F
3928         option.
3929         * libltdl/config/git-hooks/commit-msg: New commit message hook
3930         for git.
3931         * libltdl/config/git-log-fix: New file, with ChangeLog fixes.
3932         * HACKING (Using git): Update.
3933
3934 2011-11-16  Gary V. Vaughan  <gary@gnu.org>
3935
3936         options-parser: provide a saner pluggable API.
3937         It's much too easy to forget that the functions you hook into
3938         the option parser need to return unconsumed options in the
3939         variable `func_run_hooks_result'; better to follow the
3940         convention used in the rest of bootstrap and return results in a
3941         variable named after the function with `_result' appended.
3942         * libltdl/config/options-parser (func_run_hooks): implement this
3943         new API.
3944         (Option parsing): Update the example in the header comment for
3945         this section to reflect the changes.
3946         * bootstrap (bootstrap_options_prep, bootstrap_parse_options)
3947         (bootstrap_validate_options): Adjust.
3948         * bootstrap.conf (libtool_options_prep, libtool_parse_options)
3949         (libtool_validate_options): Ditto.
3950
3951         bootstrap: display accurate usage message.
3952         After splitting bootstrap up, we also lost bootstrap's usage
3953         message, and were incorrectly displaying a partial extract-trace
3954         message.
3955         * bootstrap (usage): Set appropriately.
3956
3957         bootstrap: accept --gnulib-srcdir=/path/to/gnulib again.
3958         During the split of bootstrap into options-parser and
3959         extract-trace, the generic long-option splitting code got lost.
3960         * libltdl/config/options-parser (func_parse_options): Add the
3961         code to split any long option separated by an equals from its
3962         optarg back in.
3963         Reported by Roumen Petrov.
3964
3965 2011-11-15  Gary V. Vaughan  <gary@gnu.org>
3966
3967         gnulib: update gnulib submodule.
3968         Among others, this fixes a bug in _build-aux expansion so that
3969         `make syntax-check' works again.
3970         * gnulib: Updated to today's master HEAD revision.
3971         * gl/top/maint.mk.diff: Remove. This patch has been applied
3972         upstream already.
3973
3974         libtoolize: remove NL2SP and initialisation.
3975         There's only a single use of NL2SP, and that is redundant.
3976         * libtoolize.m4sh (func_serial_update): Factor away use of
3977         NL2SP.
3978         (NL2SP, SP2NL): Remove initialisation.
3979
3980         bootstrap: remove consumed options from the list to be processed.
3981         Fix a bug where processed bootstrap options were not removed
3982         from the queue, and eventually flagged as unknown in the
3983         pluggable option parser driver.
3984         * bootstrap (bootstrap_parse_options)
3985         (bootstrap_validate_options): Follow the pluggable option parser
3986         API correctly, and set func_run_hooks_result to the list of
3987         remaining unconsumed options.
3988         Reported by Roumen Petrov.
3989
3990 2011-11-14  Gary V. Vaughan  <gary@gnu.org>
3991
3992         libtoolize: refactor $opt_quiet, func_echo and func_echo_once.
3993         Instead of long sequences checking for setting of $opt_quiet,
3994         followed by one or more func_echo variations, add and use a new
3995         function func_whisper - the complement of func_verbose.
3996         * libtoolize.m4sh (func_whisper): New function. Adjust all
3997         callers previously using `$opt_quiet || func_echo ...'.
3998         (func_whisper_once): Ditto, for `$opt_quiet || func_echo_once
3999         ...'.
4000         (func_whisper_hdr): New function, adjust all callers previously
4001         using `func_whisper_once ...; func_whisper ...'.
4002         (func_whisper_error_header): Ditto, but calling func_error.
4003         (func_echo_once): Remove.
4004
4005         libtoolize: update a bit-rotted comment.
4006         * libtoolize (func_copy_cb): Since this comment was written, the
4007         function has been changed to timestamp files as it copies.
4008         Update the comment to reflect that.
4009
4010         general.m4sh: relative path to the same directory is `.'.
4011         * general.m4sh (func_relative_path): We sometimes want to use
4012         the result of this function directly, rather than purely as a
4013         prefix, so we need to return `.' when both directories end up at
4014         the same location.
4015
4016         ltmain.sh: append relative path trailing slashes explicitly.
4017         In addition to being more idiomatic, and hence minimising
4018         suprises, seeing the slash written explicity when appending to
4019         the result of a relative path calculation is a lot more
4020         readable.
4021         * libltdl/config/general.m4sh (func_relative_path): Don't append
4022         an implicit trailing slash...
4023         * libltdl/config/ltmain.m4sh (func_mode_link): ...write it
4024         explicitly at the time of use.
4025
4026 2011-11-09  Gary V. Vaughan  <gary@gnu.org>
4027
4028         build: use pkgauxdir for local install and uninstall rules.
4029         * Makefile.am (pkgauxdir): Set it correctly.
4030         (uninstall-hook): Use it for pkgaux_scripts and
4031         pkgaux_data_files.
4032         (install-data-local): Ditto.
4033         Remove `config/' prefix from extract-trace and option-parser
4034         items.
4035
4036 2011-11-08  Gary V. Vaughan  <gary@gnu.org>
4037
4038         install: correct a typo in pkgaux_files location.
4039         * Makefile.am (install-data-local): Install pkgaux_files
4040         directly from $(aux_dir) [./libltdl/config at the moment].
4041
4042         libtoolize: order pkgltdl_files to avoid reconfiguration.
4043         * Makefile.am (pkgltdl_files): aclocal.m4 depends on
4044         configure.ac, and will cause spurious reconfiguration of freshly
4045         `libtoolize --ltdl' tree if we don't ensure configure.ac is the
4046         older of these two files.
4047         * tests/libtoolize.at: Adjust expout order to match.
4048
4049         build: remove an over-exuberant $(srcdir) prefix.
4050         * Makefile.am (git_version_gen): No need for an extra $(srcdir)
4051         in the path when we always use after `cd $(srcdir).
4052
4053         libtoolize: massage installed auxiliary script list at make time.
4054         * Makefile.am (configure_edit): Rename pkgconfig_files
4055         substitution to pkgaux_files, and add pkgaux_install_files and
4056         pkgaux_parent_files substitutions for atlocal.
4057         (pkgauxdir): Where to install pkgaux_files.
4058         (auxfiles): Removed, and replaced by...
4059         (pkgaux_parent_files, pkgaux_install_files, pkgaux_data_files):
4060         ...these, which separate the files lists more logically for
4061         easier installation, and use by libtoolize.m4sh.
4062         (uninstall-hook): Adjust.
4063         (tests/atlocal): Adjust.
4064         * bootstrap.conf (libtool_link_libltdl_subdirs): Adjust.
4065         * libtoolize.m4sh (func_install_pkgconfig_files)
4066         (func_install_pkgconfig_subproject)
4067         (func_install_pkgconfig_parent, func_install_pkgconfig_files)
4068         (all_pkgconfig_files): Renamed to...
4069         (func_install_pkgaux_files, unc_install_pkgaux_subproject)
4070         (func_install_pkgaux_parent, func_install_pkgaux_files)
4071         (all_pkgaux_files): ...these, resp. Adjust all callers.
4072         (func_massage_pkgconfig_files): Removed.
4073         (pkgaux_files): List of all auxiliary scripts substituted from
4074         Makefile.
4075
4076         libtoolize: massage installed libltdl file list at make time.
4077         * libtoolize.m4sh (pkgltdldir, pkgdatadir): Put installable
4078         libltdl files in pkgdatadir. When testing, and _lt_pkgdatadir
4079         is set, adjust to look in libltdl subdirectory.
4080         (func_massage_pkgltdl_files): Removed function and only caller,
4081         because...
4082         (pkgltdl_files): ...we substitute the pre-massaged files
4083         directly...
4084         (func_install_pkgltdl_files): ...from here.
4085         Adjust installation of specially handled additional files.
4086         * Makefile.am (ltdldir): Location of libltdl files in source
4087         tree.
4088         (ltdldest, ltdldatafiles): Removed.
4089         (pkgltdl_files): New pre-massaged list of libltdl sources.
4090         (install-data-local, uninstall-hook): Use it.
4091         * tests/libtoolize.at: Reorder expected output to match actual
4092         libtoolize output.
4093
4094         libtoolize: massage installed macro list at make time.
4095         * libtoolize.m4sh (func_massage_aclocal_DATA): Removed function
4096         and only caller, because...
4097         (pkgmacro_files): ...we substitute the pre-massaged files
4098         directly...
4099         (func_install_pkgmacro_files): ...from here.
4100         * Makefile.am (pkgmacro_files): New pre-massaged list of aclocal
4101         macros used by func_install_pkgmacro_files.
4102         (configure_edit): Substitute pkgmacro_files instead of
4103         aclocalfiles.
4104
4105         libtoolize: use only space delimited file lists.
4106         We don't install any files with whitespace in their file name,
4107         so using colon delimited lists to make that possible was a
4108         premature optimisation and an unneeded complication.
4109         * libtoolize.m4sh (func_copy_some_files): Remove IFS twiddling,
4110         and just pull space delimited files in a for loop idiomatically.
4111         (func_massage_aclocal_DATA, func_install_pkgmacro_subproject)
4112         (func_install_pkgmacro_parent, func_install_pkgmacro_files)
4113         (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
4114         Append to file lists with space delimiter.
4115
4116         libtoolize: remove sed based configure scanning.
4117         * libtoolize (func_scan_files): Removed function and callers.
4118         (require_seen_ltdl, require_seen_libtool): Factor out remaining
4119         functionality of former sed based scanning.
4120         (func_check_macros): Adjust.
4121         * NEWS: Updated.
4122
4123         libtoolize: refactor ltdl_mode discovery.
4124         * libtoolize.m4sh (require_ac_ltdl_mode)
4125         (require_ac_ltdl_options, require_ltdl_mode): New functions
4126         factored out of func_scan_files for scanning and setting
4127         ltdl_mode and friends.
4128         (func_scan_files): Remove the factored out code.
4129         (func_install_pkgmacro_files, func_install_pkgltdl_files)
4130         (func_install_pkgconfig_files, func_check_macros): Adjust.
4131
4132         libtoolize: refactor ltdl_dir discovery.
4133         * libtoolize.m4sh (require_ac_ltdl_dir, require_ltdl_dir):
4134         New functions factored out of func_scan_files for scanning and
4135         setting ac_ltdl_dir and ltdl_dir resp.
4136         (func_scan_files): Remove the factored out code.
4137         (func_fixup_Makefile, func_serial_update_check)
4138         (func_install_pkgltdl_files, func_install_pkgconfig_subproject)
4139         (func_check_macros): Adjust.
4140
4141         libtoolize: refactor aux_dir discovery.
4142         * libtoolize.m4sh (require_ac_aux_dir, require_aux_dir): New
4143         functions factored out of func_scan_files for scanning and
4144         setting aux_dir and friends.
4145         (func_scan_files): Remove the factored out code to scan
4146         configure.ac with sed, and then set macro_dir appropriately.
4147         (func_install_pkgconfig_subproject, func_install_pkgconfig_parent)
4148         (func_install_pkgmacro_files, func_check_macros): Adjust.
4149
4150         libtoolize: install autoconf macros only if there is a $configure_ac.
4151         * libtoolize.m4sh (func_install_pkgmacro_files): If there is no
4152         $configure_ac in the parent project directory, and libtoolize is
4153         in subproject mode, then the parent project has no use for
4154         autoconf macros, so don't install them.
4155         * NEWS: Updated.
4156
4157         libtoolize: display aux files output header for non-autoconf parents.
4158         * libtoolize.m4sh (func_install_pkgconfig_subproject): When the
4159         parent project does not use Autoconf, be sure to display an
4160         output header before copying auxiliary files despite not being
4161         able to scan for AC_CONFIG_AUX_DIR arguments.
4162         * NEWS: Updated.
4163
4164         libtoolize: refactor macro_dir discovery around extract-trace script.
4165         * libtoolize.m4sh (func_extract_trace): Function to call
4166         $aux_dir/extract-trace.  The name and footprint are the same as
4167         the core function in the extract-trace script file so that we
4168         can choose to source that file when the option processing
4169         becomes compatible with ours.
4170         (require_ac_macro_dir, require_aclocal_amflags)
4171         (require_am_macro_dir, require_macro_dir, require_makefile_am):
4172         New functions factored out of func_scan_files for scanning and
4173         setting macro_dir and friends.
4174         (func_scan_files): Remove the factored out code to scan
4175         configure.ac with sed, and then set macro_dir appropriately.
4176         (func_serial_update_check, func_install_pkgmacro_subproject)
4177         (func_install_pkgmacro_parent, func_install_pkgmacro_files)
4178         (func_check_macros): Adjust.
4179         * tests/libtoolize.at (Subproject ltdl without GNU M4): New test
4180         to ensure `libtoolize --subproject' continues to work without a
4181         GNU M4 dependency.
4182         * NEWS: Updated.
4183
4184         libtoolize: refactor configure_ac discovery.
4185         Make a start on decomposing some of the giant functions at the
4186         heart of libtoolize into the much more flexible and manageable
4187         (albeit somewhat more verbose) model of self-organising
4188         $require_<foo> function pointers.
4189         * libtoolize.m4sh (require_configure_ac): New function factored
4190         out of func_scan_files for setting $configure_ac appropriately,
4191         implementation taken from extract-trace script.
4192         (func_autoconf_configure): And similarly for ensuring that a
4193         filename which matches something Autoconf would read also has
4194         content that appears to be destined for Autoconf processing.
4195         (func_scan_files): Simplified the factored out code to a single
4196         require_configure_ac call.
4197         (func_install_pkgconfig_files, func_check_macros): Ditto.
4198         (seen_autoconf): Removed.
4199
4200         bootstrap: split into reusable parts.
4201         * bootstrap: Bourne shell has no scoping, so be extremely
4202         careful with namespaces, functions in `^func_' and `^require_';
4203         private variables in `^_G_', and public variables all well
4204         documented by comments.
4205         * libltdl/config/extract-trace: New file, containing the minimum
4206         of code previously in bootstrap plus a little glue to make the
4207         GNU M4 based autotools tracing function (as opposed to the
4208         kludgy sed extraction currently used everywhere else) a
4209         standalone script that can be executed or sourced.
4210         * libltdl/config/options-parser: New file, containing the
4211         pluggable options parser code shared between the other two.
4212         * bootstrap.conf: Adjust.
4213         * Makefile.am (EXTRA_DIST): Be sure to distribute the new
4214         extract-trace and options-parser scripts.
4215         (install-data-local): And install them where libtoolize can find
4216         them.
4217
4218         tests: prefix absolute directory variables with 'abs_'.
4219         Avoid any possible confusion about the contests of thes
4220         variables compared to $aux_dir, $macro_dir and $src_dir in
4221         configure.ac, Makefile.am, libtoolize.m4sh and others.
4222         * tests/defs.m4sh (aux_dir, macro_dir, srcdir): Rename these...
4223         (abs_aux_dir, abs_macro_dir, abs_srcdir): ...to these resp.
4224         * tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
4225         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
4226         tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
4227         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
4228         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
4229         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
4230         tests/demo-pic-exec.test, tests/demo-pic-make.test,
4231         tests/demo-shared-exec.test, tests/demo-shared-inst.test,
4232         tests/demo-shared-make.test, tests/demo-shared-unst.test,
4233         tests/demo-static-exec.test, tests/demo-static-inst.test,
4234         tests/demo-static-make.test, tests/demo-static-unst.test,
4235         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
4236         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
4237         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
4238         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
4239         tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
4240         tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
4241         tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
4242         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
4243         tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
4244         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
4245         tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
4246         tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
4247         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
4248         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
4249         tests/sh.test, tests/tagdemo-shared-exec.test,
4250         tests/tagdemo-shared-make.test, tests/tagdemo-static-exec.test,
4251         tests/tagdemo-static-make.test, tests/tagdemo-undef-exec.test,
4252         tests/tagdemo-undef-make.test, tests/tagtrace.test: Adjust.
4253
4254         maint: calculate required mkinstalldirs calls during `make install'.
4255         * Makefile.am (install-data-local): Make sure all destination
4256         directories are in place before copying files there, without
4257         hardcoding them.
4258
4259         maint: substitute static directory names.
4260         By substituting just the directory name as passed to the macro,
4261         aux_dir can be used with or without $srcdir prefix, which is
4262         more flexible, and always means the same thing in each file,
4263         rather than sometimes being a directory name, sometimes relative
4264         to $top_srcdir.
4265         * configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR)
4266         (LT_CONFIG_LTDL_DIR): Don't force config.status substitutions
4267         with unexpanded shell variables.
4268         * Makefile.am, tests/defs.m4sh: Adjust.
4269
4270 2011-11-07  Peter Rosin  <peda@lysator.liu.se>
4271
4272         libtoolize: fix spelling nit.
4273         * libtoolize (M4SH_GETOPTS): Fix spelling nit.
4274
4275 2011-11-07  Gary V. Vaughan  <gary@gnu.org>
4276
4277         tests: fix parsing of configure output by pic_flag.at.
4278         Close http://debbugs.gnu.org/9962.
4279         * tests/pic_flag.at (LT_AT_CONFIGURE): Make sure to configure
4280         with --disable-silent-rules so that the full output parsed by
4281         the rest of the test is available.
4282         Reported by Roumen Petrov.
4283
4284         libtoolize: rename `--subproject' option, and make it work.
4285         * libtoolize (M4SH_GETOPTS): Remove `--standalone', which never
4286         worked, and add `--subproject' which sets ltdl_mode correctly.
4287
4288 2011-11-05  Gary V. Vaughan  <gary@gnu.org>
4289
4290         libtoolize: fix a scoping bug in func_aclocal_update_check.
4291         libtoolize.m4sh (func_aclocal_update_check): This body of this
4292         function used a global variable set by the outer loop of the
4293         caller. Fix to Use the function argument correctly.
4294
4295         maint: rename the debug shell command variable to `debug_cmd'.
4296         Not only does it make more sense, it also matches bootstrap and
4297         others.
4298         * libtoolize.m4sh, libltdl/config/ltmain.m4sh,
4299         libltdl/config/getopt.m4sh, tests/defs.m4sh (opt_debug): Rename
4300         to debug_cmd.
4301
4302         maint: dynamically strip unused scripts from libltdl Makefile.
4303         * configure.ac (pkgaux_scripts): Centrally maintain the complete
4304         list of aux scripts required to build libltdl, and which need to
4305         be installed by libtoolize --ltdl, and consequently need to be
4306         placed in $pkgdatadir by make install.
4307         * Makefile.am (libltdl/stamp.mk): Improved to strip the unused
4308         scripts not listed in pkgaux_scripts without the need for manual
4309         synchronisation.
4310         (auxexefiles): Removed. Replaced by new pkgaux_scripts
4311         substitution.
4312         (install-data-local): Adjust.
4313
4314         build: substitute paths into defs.m4sh instead of recalculating.
4315         * Makefile.am (configure_edit): Add substitutions for aux_dir,
4316         macro_dir and srcdir.
4317         * tests/defs.m4sh: Don't recalculate srcdir.
4318         (aux_dir, macro_dir, srcdir): Convert to absolute paths.
4319
4320         build: support AM_SILENT_RULES
4321         * configure.ac: Add AM_SILENT_RULES.
4322         * libltdl/configure.ac: Ditto, but only if defined.
4323         * Makefile.am (.version, ChangeLog, README, doc/notes.txt)
4324         (libtool, libtoolize, libtoolize.in, libltdl/Makefile.am)
4325         (libltdl/stamp-mk, m4/ltversion.m4, tests/atconfig, tests/defs)
4326         (tests/defs.in, tests/package.m4): Output an AM_SILENT_RULES-like
4327         GEN when V==0.
4328         * libltdl/Makfile.inc (libltdl/argz.h): Ditto.
4329
4330 2011-10-31  Gary V. Vaughan  <gary@gnu.org>
4331
4332         maint: add autobuild prerequisite only if autobuild.m4 is absent.
4333         * bootstrap (func_require_autobuild_buildreq): Skip if autobuild.m4
4334         is already present.
4335         * bootstrap.conf (require_autobuild_bulidreq): No need to set this
4336         specially any more.
4337
4338         maint: ensure bootstrap runs from dist tarball.
4339         * bootstrap (func_gnulib_tool_copy_file): When gnulib-tool is
4340         not available, check that there is a copy of the file from a
4341         previous run available before bailing out with a diagnostic.
4342         (func_install_gnulib_non_module_files): Don't diagnose missing
4343         files explicitly - func_gnulib_tool_copy_file takes care of it
4344         now.
4345         (func_require_checkout_only_file): In the diagnostic for
4346         not being in a source-controlled tree, note that `--force' must
4347         be used to rebootstrap.
4348         (func_require_gnulib_files_already_present): Removed.  All the
4349         necessary checks are correctly performed in
4350         func_gnulib_tool_copy_file withot resorting to heuristics.
4351         (func_require_gnulib_mk): Don't continue to try to access
4352         gnulib-cache.m4 after discovering we're running from a dist
4353         tarball.
4354         (func_require_dotgitmodules_parameters): Skip if .gitmodules
4355         file is missing and git binary is not available.
4356         * bootstrap.conf (checkout_only_file): Set to HACKING, which is
4357         a non-distributed file.
4358         (libtool_cleanup_empty_dirs): Don't print spurious errors when
4359         trying to delete gnulib-tool droppings, in case gnulib-tool is
4360         not available on this run.
4361
4362         tests: add a keyword `expensive' to very long running tests.
4363         * tests/cmdline_wrap.at, tests/stresstest.at (AT_KEYWORDS): Add
4364         `expensive'.
4365         * NEWS: Updated.
4366
4367         libtoolize: fix some long-standing sed substitution bugs
4368         * libtoolize.m4sh (func_fixup_Makefile): `\\\\\$' in a " quoted
4369         script that is evaluated twice before execution becomes a `\$',
4370         which sed interprets as a literal $.  The script will then delete
4371         any lines with a first non-whitespace character of `$'. Instead
4372         use `\\\\$' in single quotes, which sed eventually receives as
4373         `\\$' and correctly interprets as part of an instruction to
4374         delete otherwise empty lines ending with a `\'.
4375         Additionally the rest of the same sed script is no longer
4376         applied to comment lines to avoid munging the copyright header
4377         among others.
4378         * NEWS: Updated.
4379
4380 2011-10-27  Gary V. Vaughan  <gary@gnu.org>
4381
4382         maint: use gnulib's gitlog-to-changelog instead of a ChangeLog file.
4383         * ChangeLog: Removed.
4384         * HACKING (Editing 'ChangeLog'): Removed. Renumbered other sections to
4385         compensate.
4386         * bootstrap.conf (gnulib_modules): Add gitlog-to-changelog.
4387         * Makefile.am (ChangeLog): Generate the ChangeLog for 2011...
4388         (dist-hook): ...from the output of `git log' before rolling a
4389         distribution tarball.
4390
4391         maint: use gnulib's git-version-gen instead of mkstamp.
4392         * libltdl/config/mkstamp: File removed.
4393         * bootstrap.conf (gnulib_modules): Add git-version-gen.
4394         * configure.ac (AC_INIT, package_revision): Use git-version-gen to
4395         calculate version number.
4396         (TIMESTAMP): Removed.
4397         * libtoolize.m4sh, libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
4398         (TIMESTAMP): Ditto.
4399         * Makefile.am (TIMESTAMP): Ditto.
4400         (MKSTAMP): Renamed from this...
4401         (git_version_gen): ...to this. Set revision here.  An alpha is now a
4402         release with an odd micro relase number.
4403         (rebuild): Don't reset revision here.
4404         (build_scripts): Remove mkstamp, add git-version-gen.
4405         (EXTRA_DIST, BUILT_SOURCES): Add .version.
4406         (libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4, tests/package.m4):
4407         Don't depend on configure.ac or ChangeLog to determine when the
4408         version number has reved, use .version directly.
4409         (.version): Flush most recent configure calculated VERSION to disk.
4410         (dist-hook): Flush current VERSION to disk at dist time.
4411         (dotserial): Distributed file to cache the serial number for
4412         when git is not available to recalculate it when building from a
4413         release tarball.
4414         (dist-hook): Make sure .serial is created.
4415         (libltdl/config/ltversion.m4): Use .serial when it is present
4416         (in a dist tarball) or calculate with git otherwise (in a git
4417         working directory).
4418         (EXTRA_DIST): Add .serial file.
4419
4420         maint: use gnulib's maint.mk and support scripts release procedure.
4421         * Makefile.maint: Removed.
4422         * configure.ac (LASTRELEASE, lt_major, lt_minor, lt_micro, lt_alpha):
4423         All removed. Makefile.maint was the only client.
4424         * HACKING (Release Procedure): Removed.
4425         * bootstrap.conf (gnulib_modules): Add announce-gen,
4426         do-release-commit-and-tag, gendocs, gnu-web-doc-update, gnupload and
4427         readme-release.
4428         * cfg.mk (manual_title): Set it for web-manual rule.
4429         (announcement_Cc_): Release announcement email addresses.
4430         * Makefile.am (build_scripts): Add to EXTRA_DIST additional files
4431         imported from gnulib for maint.mk release procedure.
4432         * NEWS: Updated.
4433
4434 2011-10-24  Gary V. Vaughan  <gary@gnu.org>
4435
4436         tests: ensure VPATH autom4te search path can find autotests.
4437         * Makefile.am (tests/testsuite): Passing only $(srcdir) include path
4438         to autom4te is unable to find tests/package.m4, and passing only
4439         $(srcdir)/tests breaks VPATH build searches for TESTSUITE_AT files,
4440         which are relative to $(srcdir)... so we pass both!
4441         * NEWS: Updated.
4442         Reported by Bob Friesenhahn.
4443
4444 2011-10-24  Karl Berry  <karl@gnu.org>
4445
4446         doc: modernize libtool.texi.
4447         * libtool.texi (@copying): Use this instead of @ifnottex; format for
4448         Texinfo; eliminate obsolete paragraph about TeX; use @insertcopying
4449         instead of duplicating text.
4450         (@syncodeindex): Move all to the Texinfo header, where they belong.
4451         (@dircategory): Use "Software development" instead of "GNU programming
4452         tools", for consistency; and align individual entries to avoid
4453         multiple lines; and move to after the copyright message.
4454
4455 2011-10-24  Gary V. Vaughan  <gary@gnu.org>
4456
4457         maint: don't make autobuild a hard bootstrap requirement.
4458         * bootstrap.conf (require_autobuild_buildreq): Reset this to ':' so
4459         that bootstrap doesn't auto-add autobuild to $buildreq.
4460
4461 2011-10-23  Gary V. Vaughan  <gary@gnu.org>
4462
4463         maint: use gnulib's maintainer-makefile module.
4464         * bootstrap.conf (gnulib_modules): Add maintainer-makefile.
4465         (gnulib_tool_options): Add --avoid=dummy now that we have a real
4466         module to import.
4467         * cfg.mk: New file. Customize maint.mk for Libtool.
4468         * Makefile.am (EXTRA_DIST): Add GNUmakefile, cfg.mk and maint.mk.
4469
4470         maint: use gnulib's canonical fdl.texi.
4471         * doc/fdl.texi: Removed.
4472         * bootstrap.conf (gnulib_non_module_files): Add fdl.texi.
4473
4474         maint: use gnulib's canonical COPYING files.
4475         * COPYING, libltdl/COPYING.LIB: Removed.
4476         * bootstrap.conf (gnulib_non_module_files): Add COPYING.
4477         (libtool_add_libltdl_copying): New func_gnulib_tool hook
4478         function to copy the canonical LGPL2 COPYING file from gnulib at
4479         bootstrap.
4480
4481         maint: use gnulib's (pending saner) bootstrap script.
4482         * bootstrap: Replaced with gnulib script.
4483         * bootstrap.conf: New file with Libtool specific bootstrap
4484         configuration.
4485         * Makefile.am (EXTRA_DIST): Add bootstrap.conf.
4486
4487         maint: add gnulib submodule.
4488         * configure.ac (GL_INIT, GL_EARLY): Initialise gnulib, and expand
4489         its configure time checks.
4490         * .gitmodules (gnulib): New file with configuration for our
4491         gnulib git submodule.
4492
4493 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
4494
4495         maint: tidy, sort and consolidate .gitignore files.
4496         The `gnulib-tool' and gnulib `bootstrap' scripts  maintain
4497         `.gitignore' files in asciibetical order, so reorder them now
4498         to avoid spurious patches later.
4499
4500         Take advantage of putting recursive file ignore matches into
4501         `$top_srcdir/.gitignore' and remove repetitions from other
4502         `.gitignore' files.
4503
4504 2011-10-22  Gary V. Vaughan  <gary@gnu.org>
4505
4506         maint: don't run help2man on programs not-yet-built.
4507         * Makefile.am (doc/libtool.1, doc/libtoolize.1): Added a
4508         comment about why the dependencies here have to be a mite
4509         bizarre.
4510
4511         tests: remove unused `aux_dir' variable from `getopt-m4sh.test'.
4512         * tests/getopt-m4sh.at (aux_dir): Remove unused variable.
4513
4514         tests: DRYing out `tests/sh.test'.
4515         * Makefile.am (libtool_m4): Canonical location of libtool.m4 file.
4516         (lt_aclocal_m4_deps): Use it.
4517
4518         maint: pass directory declarations in configure.ac into Makefile.
4519         * configure.ac (AC_CONFIG_AUX_DIR, LT_CONFIG_LTDL_DIR)
4520         (AC_CONFIG_MACRO_DIR): Append code to these functions to
4521         capture and propagate their directory arguments to Makefile.
4522         * Makefile.am (aux_dir, ltdl_dir, macro_dir): Remove declarations.
4523         * bootstrap (my_sed_trace): Also capture LT_CONFIG_LTDL_DIR into
4524         `$ltdl_dir'.
4525         <Makefile>: Output the extracted values of `aux_dir', `ltdl_dir'
4526         and `macro_dir' at the top of the quick'n'dirty bootstrap
4527         Makefile.
4528
4529         maint: factor out ltmain.sh variable deletion.
4530         * Makefile.am (ltmain_sh_edit): Expand upon bootstrap edit by
4531         adding the extra line to delete boilerplate variable settings
4532         from libltdl/config/general.m4sh that don't apply here.
4533         (libltdl/config/ltmain.sh): Use it.
4534
4535         maint: DRYing out `Makefile.am' file paths.
4536         * Makefile.am (aux_dir, macro_dir): Include `$(srcdir)' in
4537         declaration. Adjust all references.
4538         (doc_dir, ltdl_dir, m4sh_dir, tests_dir): New single location
4539         to hold directory paths, all including `$(srcdir)', to reduce
4540         typing.
4541         (LT_M4SH): Use `$m4sh_dir' as include directory.
4542         (defs): This one is for a file in the build-tree, so no
4543         leading `$(srcdir)'.
4544
4545         CLEANUP: fix error from pushing too far up the branch.
4546         * Makefile.am (install-data-local): Undo character transposition
4547         from too early push of untested v2.4-17-gaf74d58.
4548         * ChangeLog (2010-09-16): Remove spurious entry.
4549
4550         maint: use macro_dir consistently in all files.
4551         * Makefile.am: Replace all uses of m4dir with macrodir to
4552         match AC_CONFIG_MACRO_DIR.
4553         * libltdl/config/libtoolize.m4sh: Replace all uses of macrodir
4554         with macro_dir.
4555         * tests/defs.m4sh, tests/sh.test: Likewise.
4556
4557         maint: use aux_dir consistently in all files.
4558         * Makefile.am, Makefile.maint: Replace all uses of auxdir
4559         with aux_dir to match AC_CONFIG_AUX_DIR.
4560         * libltdl/config/libtoolize.m4sh: Likewise.
4561         * tests/defs.m4sh, tests/getopt-m4sh.at: Likewise.
4562
4563         Makefile: try to be robust against shell meta-chars in filenames.
4564         * Makefile.am: In each rule body, unless a make variable needs
4565         to be seen as multiple words by the shell (for word-splitting
4566         loops, or because it contains several commands), quote it. Use
4567         single quotes unless the shell needs to perform variable inter-
4568         polation, in which case use double quotes.
4569
4570 2011-10-20  Gary V. Vaughan  <gary@gnu.org>
4571
4572         maint: let make employ user's `SED' setting.
4573         * Makefile.am: Replace hard-coded `sed' with `$(SED)' through-
4574         out.
4575
4576         maint: simplify and improve safety of bootstrap process.
4577         * Makefile.am (bootstrap_files): List files that need to be
4578         generated at bootstrap time before `./configure && make' can
4579         work.  It turns out that this is considerably fewer files than we
4580         had thought necessary previously.
4581         (bootstrap-deps-prep): Ensure minimum set of required substitution
4582         variables are non-empty.
4583         (bootstrap-deps): Depend on `bootstrap' files.
4584         * bootstrap (Generate bootstrap dependencies): Now that
4585         `Makefile.am' is entirely responsible for rebuilding files at
4586         bootstrap time, we need only specify the new `bootstrap-deps'
4587         target, and supply values for the substitutions checked by
4588         `bootstrap-deps-prep'.
4589         * configure.ac (AC_CONFIG_SRCDIR): `libtoolize.in' is not here yet
4590         right after running `bootstrap'.  So rely on the presence of
4591         `libltdl/config/libtoolize.m4sh', which is always there.
4592
4593         build: eliminate superfluous temporary files from `Makefile.am'.
4594         * Makefile.am (CLEANFILES): Remove temporary file entries.
4595         (libtoolize.in, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
4596         (tests/defs, tests/testsuite): Factor away temporary files.
4597
4598         build: eliminate `ltmain.in' and `libtoolize.in' intermediate files.
4599         * Makefile.am (libltdl/config/ltmain.sh, libtoolize.in): Pipe
4600         the output of `$(LT_M4SH)' directly into `$(bootstrap_edit)' to
4601         avoid use of superfluous intermediate file.
4602
4603         build: don't hardcode repeated long paths in Makefile rules.
4604         According to the DRY principle, scattering several copies of
4605         something across a file or project leads to pain.  Let's not
4606         do that!
4607         * Makefile.am (Makefile_in, Makefile_inc, defs_in, defs_m4sh),
4608         (libtoolize_in, ltmain_m4sh, ltversion_in): New variables to
4609         hold the location of important files and targets.
4610         (EXTRA_DIST): Add the distributed ones by variable.
4611         (libtoolize, libltdl/Makefile.am, libltdl/m4/ltversion.m4)
4612         (libltdl/config/ltmain.sh, libltdl/stamp-mk, tests/defs)
4613         (tests/defs.in): Use the new variables to reduce noise and
4614         repetition.
4615
4616         build: make better use of automatic variables in `Makefile.am'.
4617         * Makefile.am (libtoolize, libtoolize.in, libltdl/Makefile.am)
4618         (libltdl/config/mkstamp, libltdl/config/ltmain.m4sh)
4619         (libltdl/m4/ltversion.m4, tests/testsuite, tests/defs.in):
4620         Make better use of automatic variables.
4621
4622         build: name temporary files in `Makefile.am' consistently.
4623         Sadly, we still have to jump through hoops for MICROS~1's very
4624         old, very broken 8.3 naming convention, so we have to be careful
4625         to be unique in the first 8 letters, and not to use two periods
4626         in a filename, otherwise we could use the much more elegent
4627         `temporary files use "$@T"' idiom:
4628         * Makefile.am (libltdl/m4/ltversion.m4): Rename temporary file
4629         to `ltversion.tmp'.
4630         (libltdl/config/ltmain.sh): Rename temporary file to
4631         `libltdl/config/ltmain.tmp'.
4632         (libtoolize): Rename temporary file to `libtoolize.tmp'.
4633         (tests/defs): Rename temporary file to `tests/defs.tmp'
4634         (tests/testsuite): Rename temporary file to `tests/testsuite.tmp'.
4635         (CLEANFILES): Append temporary files as we create rules that
4636         use them.
4637
4638         build: factor Makefile.am `m4sh' invocations to LT_M4SH.
4639         * Makefile.am (LT_M4SH): Now that all directories are listed as
4640         fully qualified paths, the search path argument to M4SH is always
4641         the same, so factor it out into a variable.  Adjust all callers.
4642
4643         build: avoid unnecessary directory changes in Makefile rules.
4644         * Makefile.am (doc/notes.txt, libltdl/m4/ltversion.m4,
4645         (libltdl/config/ltmain.m4sh, libtoolize.in, libltdl/Makefile.am)
4646         (libltdl/config/mkstamp, tests/testsuite, tests/defs.in): Avoid
4647         unnecessary `cd' commands by using fully qualified paths to files
4648         outside of current directory.
4649
4650         build: compare `revision' rather than `correctver' in Makefile.am.
4651         * Makefile.am (rebuild): Set the shell variable `revision' rather
4652         than `correctver' for clarity of purpose.
4653         (bootstrap_edit, libltdl/config/ltmain.sh): Adjust.
4654         (libltdl/m4/ltversion.m4): Likewise, and alse, instead of munging
4655         the serial number comment line with set, extract `macro_version'
4656         from this file, and compare it directly with `revision'.
4657         (libtool): Likewise for `package_revision'.
4658
4659         build: avoid spurious bootstrap_edit call.
4660         * Makefile.am (tests/package.m4): @FOO@ substitutions have already
4661         been made by the time Makefile.am has been transformed into Makefile,
4662         so don't try to rerun the substitutions manually with
4663         $(bootstrap_edit) after the fact.
4664
4665 2011-10-18  Gary V. Vaughan  <gary@gnu.org>
4666
4667         Post-release administrivia.
4668         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4669         numbers.
4670         * NEWS: Add header line for next release.
4671
4672         Release 2.4.2.
4673         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4674         numbers.
4675         * NEWS: Update version number.
4676
4677 2011-10-17  Gary V. Vaughan  <gary@gnu.org>
4678
4679         Replace leading spaces with tabs.
4680         * libltdl/m4/libtool.m4, libltdl/config/ltmain.m4sh: Replace leading
4681         spaces in source code with tabs to match surrounding code.
4682         Reported by Peter Rosin.
4683
4684         Make a note to use gnu/linux for version_type.
4685         * libltdl/m4/libtool.m4 (version_type): Add a comment to change
4686         version_type setting from 'linux' to 'gnu/linux' during the next
4687         destabilising code refactoring.
4688         * libltdl/config/ltmain.m4sh: ditto.
4689         Requested by Richard Stallman.
4690
4691 2011-10-04  Bart Van Assche  <bvanassche@acm.org>
4692
4693         Typo fix - change func_apped into func_append
4694         * libltdl/config/ltmain.m4sh: Fix typo.
4695
4696 2011-10-02  Xin LI  <d@delphij.net>
4697
4698         Avoid problems when FreeBSD goes to version 10.
4699         * libltdl/m4/libtool.m4: Remove mentions of freebsd1. Use dots
4700         for FreeBSD 2 and 3 detection to avoid future problems
4701         * libltdl/m4/ltmain.m4sh: ditto.
4702
4703 2011-09-25  Cristophe Jarry  <christophe.jarry@ouvaton.org>
4704
4705         Avoid mentioning "Linux", use "GNU/Linux", if appropriate.
4706         * TODO: Don't use bare "Linux".
4707         * doc/libtool.texi: ditto.
4708         * doc/notes.texi: ditto.
4709         * libltdl/README: ditto.
4710         * libltdl/m4/libtool.m4: ditto.
4711
4712 2011-09-02  Peter O'Gorman  <peter@pogma.com>
4713
4714         Add flag to inhibit warnings.
4715         * libltdl/config/ltmain.m4sh: Add --no-warn, --no-warning flags.
4716         Reported by John David Anglin.
4717
4718 2011-04-10  Kurt Roeckx  <kurt@roeckx.be>
4719
4720         tagdemo: do not rely on picking up symbols from indirect deps.
4721         * tests/tagdemo/Makefile.am: Link to all libraries that the
4722         demo application uses.
4723
4724 2011-04-10  Svante Signell  <srs@kth.se>  (tiny change)
4725
4726         Set shlibpath_overrides_runpath for the Hurd.
4727         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [gnu]
4728         <shlibpath_overrides_runpath>: Set to no.
4729         * THANKS: Update.
4730
4731 2011-03-22  Justin Lecher  <jlec@gentoo.org>  (tiny change)
4732             Rhys Ulerich  <rhys.ulerich@gmail.com>
4733
4734         Don't filter OPENMP flags (-openmp & -fopenmp) from linker lines.
4735         If -fopenmp if passed to gcc during linking, it will take care to
4736         add all necessary libs to link correctly for openmp support.
4737         Currently libtool filters those flags, similar as it was the
4738         case with the threading flags. This change handles the situation
4739         for the openmp support similar as before the thread support
4740         was fixed.
4741           http://lists.gnu.org/archive/html/bug-libtool/2010-12/msg00009.html
4742           http://lists.gnu.org/archive/html/bug-libtool/2011-03/msg00014.html
4743         * libltdl/config/ltmain.m4sh (func_mode_link): Treat OpenMP
4744         flags like pthreads flags.
4745
4746 2011-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4747
4748         libtoolize: detect -I<dir> (without space) in ACLOCAL_AMFLAGS.
4749         * libtoolize.m4sh (func_scan_files): Also accept -I<dir>
4750         (without intervening space) in ACLOCAL_AMFLAGS.
4751         * THANKS: Update.
4752         Report from Jan Engelhardt.
4753
4754 2011-03-05  Peter O'Gorman  <peter@pogma.com>
4755
4756         On Mac OS X try .dylib as well as .so with lt_dlopenext
4757         * libltdl/m4/ltdl.m4: Define extra extension if module extension
4758         differs from shared lib extension.
4759         * libltdl/ltdl.c: Use it.
4760         * tests/darwin.at: Test it.
4761         * NEWS: Announce it.
4762         Reported by Hans Aberg, Michael Ellis, and others.
4763
4764 2011-02-14  Peter O'Gorman  <peter@pogma.com>
4765
4766         Install ltmain.sh without execute bit set.
4767         * Makefile.am: change install rule for ltmain.sh
4768         Reported by Křištof Želechovski.
4769
4770 2011-02-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4771
4772         docs: fix copyright years in PDF version of the manual.
4773         * doc/libtool.texi: Fix copyright years.
4774
4775 2011-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4776
4777         fix typo in ChangeLog
4778
4779 2011-02-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4780
4781         Fix LD setting for 64-bit Solaris 2/x86.
4782         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [*-*-solaris*):
4783         Determine GNU ld options for 64-bit Solaris 2/x86.  Detect gld
4784         2.21 _sol2 emulations.
4785
4786 2011-01-27  Peter O'Gorman  <peter@pogma.com>
4787
4788         Don't loop through wrapper script arguments unnecessarily.
4789         * libltdl/m4/ltmain.m4sh: Check that argv contains " --lt-"
4790         before looping to remove wrapper script targetted arguments.
4791         Performance regression reported by Dan McGee.
4792
4793 2011-01-20  Gerald Pfeifer  <gerald@pfeifer.com>  (tiny change)
4794
4795         Remove support for FreeBSD 1.x.
4796         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
4797         (_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which
4798         soon would incorrectly match FreeBSD 10.0.
4799         * NEWS, THANKS: Update.
4800
4801 2011-01-19  Peter O'Gorman  <peter@pogma.com>
4802
4803         Don't let verbose linker messages influence test results.
4804         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Ignore
4805         stderr during tests for -flag unless it contains "flag".
4806         * tests/darwin.at: Add test.
4807         Reported by Jeremy Huddleston and also by David Fang.
4808
4809 2011-01-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>  (tiny change)
4810
4811         Fix relink mode to use absolute path if hardcode_minus_L.
4812         * libltdl/config/ltmain.m4sh (func_mode_link): Use absolute path
4813         when hardcoding with -L.
4814
4815 2011-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4816
4817         Fix $wl setting for Solaris Studio 12.2 f90 on GNU/Linux.
4818         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]
4819         <lt_prog_compiler_wl>: Set to '-Qoption ld ' if we
4820         detect Sun Fortran version 8.4 or newer.
4821         Report by Terry Dontje.
4822
4823 2011-01-07  Peter Rosin  <peda@lysator.liu.se>
4824
4825         Convert file name to toolchain format when blessing archives.
4826         * libltdl/config/ltmain.m4sh (func_mode_install): When executing
4827         old_postinstall_cmds and old_archive_cmds, convert $oldlib to a
4828         format appropriate for the tool and provide that in $tool_oldlib.
4829         Also use $tool_oldlib when stripping old libraries.
4830         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Use $tool_oldlib
4831         as argument to $RANLIB.
4832         * THANKS: Update.
4833         Report by Dan McMahill.
4834
4835 2011-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4836
4837         Bump copyright years.
4838         * ChangeLog.2010: New, rotated from ...
4839         * ChangeLog: ... here.
4840         * Makefile.am (EXTRA_DIST): Add ChangeLog.2010.
4841         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
4842         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
4843         * libtoolize.m4sh: Likewise.
4844         * doc/libtool.texi: Likewise.
4845
4846 2010-12-20  Ian Lance Taylor  <iant@google.com>
4847
4848         * libltdl/m4/libtool.m4 (LT_LANG): Add Go.
4849         (AC_PROG_GO): Provide.
4850         (_LT_SYS_HIDDEN_LIBDEPS): Add Go case.
4851         (_LT_LANG_GO_CONFIG): Define.
4852         (LT_PROG_GO): Define.
4853         (AC_PROG_GO): Define if not defined.
4854         * libltdl/config/ltmain.m4sh: Match *.go.
4855         * doc/libtool.texi (LT_INIT): Mention Go.
4856         (Tags): Mention Go.
4857         * configure.ac: Enable Go.
4858         * NEWS: Update.
4859
4860 2010-12-20  Brice De Bruyne  <bricedb@gmail.com>  (tiny change)
4861
4862         Also turn off -fuse-linker-plugin for postdep_objects computation.
4863         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Add
4864         -fno-use-linker-plugin to temporary compile flags if necessary,
4865         to fix C++ postdep_objects setting with -flto
4866         -fuse-linker-plugin.
4867         * NEWS, THANKS: Update.
4868
4869 2010-12-20  KO Myung-Hun  <komh@chollian.net>  (tiny change)
4870
4871         Set command line length limit for OS/2.
4872         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [os2]
4873         <lt_cv_sys_max_cmd_len>: Set to 8192 to avoid long test.
4874
4875 2010-12-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4876
4877         Fix PIC flags with mpif77 using ifort on GNU/Linux.
4878         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
4879         Match Intel compiler also using $CC -V output, to avoid false
4880         negatives with compiler drivers like mpif77.
4881         Report by Christian Rössel.
4882
4883 2010-12-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4884
4885         Fix PIC flags with MPI wrappers using Portland on GNU/Linux.
4886         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
4887         Match Portland compilers also using $CC -V output, to avoid
4888         false negatives with MPI compiler drivers.
4889         Report by Christian Rössel.
4890
4891         * libltdl/m4/libtool.m4 (_LT_SETUP): Fix quoting for
4892         PATH_SEPARATOR.
4893
4894 2010-12-15  KO Myung-Hun  <komh@chollian.net>  (tiny change)
4895             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4896
4897         Fix PATH_SEPARATOR handling for OS/2.
4898         * Makefile.am (update_mans): Quote $(PATH_SEPARATOR).
4899         * libltdl/m4/libtool.m4 (_LT_SETUP): Add _LT_DECL for
4900         PATH_SEPARATOR.
4901         * libltdl/config/general.m4sh: Use PATH_SEPARATOR when computing
4902         $progpath.
4903         * THANKS: Update.
4904
4905 2010-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4906
4907         Fix nvcc PIC setting on darwin.
4908         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
4909         <lt_prog_compiler_pic>: Prepend -Xcompiler to nonempty variable
4910         setting rather than hard-coding -Xcompiler -fPIC, for darwin.
4911         * NEWS, THANKS: Update.
4912         Report by Paweł Daniluk.
4913
4914         Honor $AUTOCONF, $AUTOMAKE in --help output.
4915         * libltdl/config/getopt.m4sh (func_help): Use $AUTOCONF and
4916         $AUTOMAKE if set, for --version outout.
4917
4918         docs: Libtool configuration diagram.
4919         * doc/libtool.texi (Integrating libtool): Add diagrams
4920         explaining the dependencies between Libtool files.
4921         Suggestion by Ethan Mallove.
4922
4923 2010-11-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4924
4925         Eliminate hardcode_libdir_flag_spec_ld tag variable.
4926         * libltdl/config/ltmain.m4sh (func_mode_link): Set $wl to empty
4927         if $LD is used for creating shared libraries.  Do not use
4928         hardcode_libdir_flag_spec_ld any more.
4929         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
4930         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG, _LT_SYS_DYNAMIC_LINKER)
4931         <hardcode_libdir_flag_spec_ld>: Remove all instances of the tag
4932         variable.
4933         (_LT_LINKER_SHLIBS) [linux, xlf] <hardcode_libdir_flag_spec>:
4934         Set variable, including ${wl}.  Fixes hardcoding in programs
4935         created by XL Fortran on GNU/Linux.
4936         * NEWS, THANKS: Update.
4937         Report by Paul H. Hargrove.
4938
4939         Rebuild menus in the manual.
4940         * doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
4941         Thanks to Ian Lance Taylor for the suggestion.
4942
4943 2010-11-07  Ollie Wild  <aaw@google.com>
4944
4945         Modify --with-pic to support per-package configurations.
4946         * libltdl/m4/libtool.m4:  Modify --with-pic to accept a list of
4947         package names.  Modelled off --enable-shared.
4948         * tests/with-pic.at: New test.
4949         * Makefile.am (TESTSUITE_AT): Add tests/with-pic.at.
4950         * doc/libtool.texi (LT_INIT): Enhance documentation of
4951         --with-pic configure flag.
4952         * NEWS (New features): Mention that --with-pic now accepts a
4953         comma-separated list of package names.
4954
4955 2010-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4956
4957         Fix cwrapper test failure with --disable-static.
4958         * tests/cwrapper.at (cwrapper and installed shared libraries):
4959         Compile program source without libtool, so we can be sure a
4960         non-PIC object will be created.
4961
4962 2010-11-01  Peter Rosin  <peda@lysator.liu.se>
4963
4964         docs: Windows DLLs and headers.
4965         * doc/libtool.texi (Platform quirks): Add new subsection
4966         'Windows DLLs'.
4967
4968         * doc/libtool.texi (Platform quirks): Fix typo.
4969
4970 2010-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4971
4972         docs: mention shell requirement for libtool script.
4973         * doc/libtool.texi (Invoking libtool): Document that the shell
4974         used to invoke libtool needs to be the same used to configure
4975         it.
4976         * THANKS: Update.
4977         Report by Markus Duft.
4978
4979 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
4980
4981         libtool: remove redundant unsubstituted shell var defaults.
4982         * Makefile.am (libltdl/config/ltmain.sh): Boilerplate code from
4983         libltdl/config/general.m4 sets some default shell variables
4984         designed to be substituted by `$(configure_edit)'.  Actually,
4985         `libtool' uses the language tag values for those variables, and
4986         `ltmain.m4sh' is not passed through `$(configure_edit)', so they
4987         are just noise.  Edit them out at bootstrap time.
4988
4989 2010-10-15  Gary V. Vaughan  <gary@gnu.org>
4990
4991         maint: don't leak developer GREP, SED etc into distribution file.
4992         * Makefile.am: Having rearranged the file, now apply the actual
4993         changes to follow-up.
4994         (edit): Split into two parts...
4995         (bootstrap_edit): ...substitutions that should happen at bootstrap
4996         time...
4997         (configure_edit): ...and substitutions that should not happen until
4998         configure time.
4999         * Makefile.am (libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh)
5000         (libtoolize.in, tests/package.m4): Use bootstrap_edit.
5001         (libtoolize, tests/defs): Use configure_edit.
5002         * HACKING (Release Procedure): Remove the note to workaround the
5003         bug fixed by this changeset.
5004         * NEWS (Bug fixes): Mention that this bug is now fixed.
5005         Reported by Joerg Sonnenberger.
5006
5007         maint: rearrange Makefile.am in preparation for a follow-up patch.
5008         * Makefile.am (Libtool scripts.): Move this section below the
5009         `Bootstrap.' section...
5010         (libtoolize.in): ...except this one which is generated at
5011         bootstrap time, and was added into the `Bootstrap.' section.
5012         (Libltdl.): Move this section below the `Libtool scripts.'
5013         section.
5014
5015 2010-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5016
5017         Fix linking from only convenience archives with gfortran on Darwin.
5018         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Update
5019         macro comment header.
5020         [darwin, F77, FC] <compiler_needs_object>: Set to yes if
5021         whole_archive_flag_spec is nonempty.  Fixes convenience.at test
5022         suite failures with gfortran 4.2 on Darwin.
5023         * THANKS: Update.
5024         Report by Paul Laight.
5025
5026         Fix bindir check logic, and relax non-bindir case for AIX.
5027         * tests/bindir.at (bindir install tests): Rewrite checks for
5028         place of the installed shared library in two separate tests,
5029         depending on whether -bindir is supposed to have an effect or
5030         not.  In the positive case, make the test stricter so that we
5031         reject libraries in $libdir.  In the negative case, do not
5032         require a major version number in the $libdir file name, for AIX
5033         without runtimelinking.  If tmpdir creation fails, skip the
5034         test.  Use fewer bindir directory names for testing, to speed
5035         up the test.  Also mention MSVC style DLL name in comment.
5036         Report by Peter Rosin.
5037
5038         tests: remove unneeded 'bindir compile check' test.
5039         * tests/bindir.at (bindir compile check): Remove.
5040
5041 2010-10-14  Peter Rosin  <peda@lysator.liu.se>
5042
5043         tests: fix $EXEEXT typo.
5044         * tests/depdemo-relink.test (func_restore_files): Use $EXEEXT
5045         instead of $EXEXT.
5046
5047 2010-10-12  Simon Josefsson  <simon@josefsson.org>
5048             Matěj Týč <matej.tyc@gmail.com>
5049             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5050
5051         docs: improve description of -no-undefined.
5052         * doc/libtool.texi (Link mode): Fix -no-undefined description.
5053         (Inter-library dependencies): Use Windows not AIX as example
5054         system.  Clarify need for symbol resolution at library creation
5055         time.
5056
5057 2010-10-09  Paolo Bonzini  <bonzini@gnu.org>
5058
5059         Add missing sysroot resolution.
5060         * libltdl/config/ltmain.m4sh (func_mode_link): Resolve sysroot
5061         when fetching the install directory of dependent libraries.
5062         Reported by Lionel Landwerlin <llandwerlin@gmail.com>,
5063         patch by Khem Raj <raj.khem@gmail.com>.
5064         * THANKS: Reorder entries, add Khem and Lionel.
5065
5066 2010-10-07  Roumen Petrov  <bugtrack@roumenpetrov.info>
5067
5068         Add test case for 69e77671 (cwrapper PATH manipulation order)
5069         * tests/cwrapper.at: Add new test 'cwrapper and installed shared
5070         libraries.'
5071
5072 2010-10-04  Peter Rosin  <peda@lysator.liu.se>
5073
5074         cwrapper: split long lines when dumping the wrapper script.
5075         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): If
5076         the wrapper script contains long lines, split them for
5077         readability and to conform with C standards.
5078         * tests/cwrapper.at (cwrapper string length): New test, making
5079         sure we don't regress.
5080
5081         msvc: handle symbols from different files independently.
5082         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
5083         <dumpbin, lt_cv_sys_global_symbol_pipe>: Make all sections
5084         viable for symbol extraction again when the symbols from a new
5085         file starts.  Fixes tests/tagdemo-make.test for MSVC 10.
5086         * tests/dumpbin-symbols.at: New test, making sure we don't
5087         regress.
5088         * Makefile.am (TESTSUITE_AT): Update.
5089
5090 2010-09-27  Peter Rosin  <peda@lysator.liu.se>
5091
5092         tests: check if sys_lib_search_path_spec works on MSVC.
5093         * tests/search-path.at (sys_lib_search_path on w32): New test,
5094         making sure v2.2.10-207-g09142ea doesn't regress.
5095
5096         Skip need_lib_prefix.at on systems without lib prefix on libraries.
5097         * tests/need_lib_prefix.at [MSVC, OS/2]: Skip this test on
5098         systems that do not have libraries prefixed with lib.
5099
5100         tests: clean up importing and exporting on w32.
5101         Makes the touched tests pass for MSVC when DLLs are built.
5102         * tests/demo/Makefile.am, tests/pdemo/Makefile.am: Define
5103         BUILDING_LIBHELLO when building libhello.la.
5104         * tests/demo/foo.h, tests/pdemo/foo.h (nothing) <MSVC>: Export
5105         variable when building the libhello dll and import when using
5106         libhello.  For GCC and non-w32, and when building a static
5107         libhello, leave as an ordinary extern.
5108         * tests/pdemo/foo.h [Cygwin]: Remove unneeded and "dead" export
5109         and import logic (LIBFOO_DLL is always undefined).
5110         * tests/pdemo/longer_file_name_foo.c,
5111         tests/pdemo/longer_file_name_foo2.c (_LIBFOO_COMPILATION_): Not
5112         useful before, even less so now.  Removed.
5113         * tests/depdemo/l1/Makefile.am: Define BUILDING_LIBL1 when
5114         building libl1.la.
5115         * tests/depdemo/l2/Makefile.am: Define BUILDING_LIBL2 when
5116         building libl2.la.
5117         * tests/depdemo/l3/Makefile.am: Define BUILDING_LIBL3 when
5118         building libl3.la.
5119         * tests/depdemo/l4/Makefile.am: Define BUILDING_LIBL4 when
5120         building libl4.la.
5121         * tests/depdemo/l1/l1.h, tests/depdemo/l2/l2.h,
5122         tests/depdemo/l3/l3.h, tests/depdemo/l4/l4.h <MSVC>: Export
5123         variables when building the associated library dll and import
5124         when using the library.  For GCC and non-w32, and when building
5125         static libraries, leave as an ordinary extern.
5126
5127 2010-09-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5128
5129         docs: do not refer to Libtool version with dlopen functionality.
5130         * doc/libtool.texi (Dlopened modules): Remove broken reference
5131         to what should have been Libtool 0.9g.
5132         Report by Roumen Petrov.
5133
5134 2010-09-23  Peter Rosin  <peda@lysator.liu.se>
5135
5136         msvc: don't try to export import descriptors.
5137         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]
5138         [pw32, cegcc] <cl*, exclude_expsyms>: Don't export symbols in
5139         import libraries related to describing what dll(s) the import
5140         library is importing. Fixes problem in tests/demo-make.test
5141         and some other tests.
5142
5143 2010-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5144
5145         Fix regression in command-line length computation.
5146         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Use `env echo' rather
5147         than possibly-undefined func_fallback_echo, to ensure we fork
5148         and exec for this test.
5149         * NEWS: Update.
5150         Regression introduced in v2.2.6-39-g9c3d4d8.
5151
5152 2010-09-22  Gary V. Vaughan  <gary@gnu.org>
5153
5154         Post-release administrivia.
5155         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
5156         numbers to 2.4.1a.
5157         * NEWS: Add header line for next release.
5158
5159         Release 2.4.
5160         * libltdl/Makefile.inc (LTDL_VERSION_INFO): We've added the
5161         static libprefix interface, so new version-info is C+1:0:R+1.
5162         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
5163         numbers.
5164         * NEWS: Update version number.
5165
5166         manual: web-manual index.html clashes with @node Index.
5167         * doc/libtool.texi (Index): Renamed to `Combined Index'.
5168
5169         tests: ISO C++ forbids declaration of 'v1' with no type.
5170         * tests/lt_dlexit.at (lt_dlexit unloading libs): Added an
5171         explicit int type to declaration of 'v1' to prevent compilation
5172         failure with C++.
5173
5174 2010-09-22  Peter Rosin  <peda@lysator.liu.se>
5175
5176         tests: reloadable objects do not work on MSVC, SKIP test.
5177         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
5178         [cygwin, mingw, pw32, cegcc] <cl*, reload_cmds>: Indicate that
5179         reloadable objects do not work.
5180         * tests/duplicate_conv.at: Skip last test if reloadable
5181         objects do not work.
5182         * doc/libtool.texi (libtool script contents) <reload_cmds>:
5183         Document how to indicate that reloadable objects do not work.
5184
5185 2010-09-21  Peter Rosin  <peda@lysator.liu.se>
5186
5187         msvc: eliminate spaces in the library search path.
5188         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
5189         <cl*, sys_lib_search_path_spec>: The LIB path variable telling
5190         where MSVC looks for libraries is likely to contain directory
5191         names with spaces.  Convert those directory names to the short
5192         8.3 DOS form (i.e. without spaces) when storing them in
5193         sys_lib_search_path_spec, as that is a space separated variable.
5194
5195 2010-09-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5196
5197         Revert to per-language libpath computation on AIX.
5198         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Accept
5199         tagname argument.  Use global cache variable lt_cv_aix_libpath
5200         to override per-language tag variables for the libpath value.
5201         Fix the sed script to remove trailing space.
5202         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Pass tag argument to
5203         _LT_SYS_MODULE_PATH_AIX.
5204         Tracked down and reported by Rainer Tammer.
5205
5206 2010-09-21  Gary V. Vaughan  <gary@gnu.org>
5207
5208         maint: edit-readme-alpha shouldn't try to re-edit during dist.
5209         * libltdl/config/edit-readme-alpha: If README is non-writable
5210         assume that it is being run from distcheck, and skip the edit
5211         with a warning (to help diagnose cases where the heuristic is
5212         not correct).  However, if README has already been edited to
5213         the alpha text, quietly skip without an error message.
5214
5215 2010-09-20  Eric Blake  <eblake@redhat.com>
5216
5217         maint: drop autobuild requirement
5218         * HACKING: Update.
5219
5220         build: ship autobuild.m4, to reduce bootstrap requirement
5221         * libltdl/m4/.gitignore: Drop autobuild.m4.
5222         * libltdl/m4/autobuild.m4: New file, copied from autobuild.
5223         * configure.ac (AB_INIT): Unconditionally call it.
5224
5225 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
5226             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5227
5228         libltdl: Make sure preloaded symbols are declared extern "C".
5229         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Move the
5230         declaration of lt__PROGRAM__LTX_preloaded_symbols to global
5231         scope and make sure it has "C" linkage.  Makes exceptions.at
5232         succeed on MSVC.
5233
5234 2010-09-20  Peter Rosin  <peda@lysator.liu.se>
5235
5236         tests: __declspec (dll{ex,im}port) in tests/exceptions.at
5237         * tests/exceptions.at (common.h, module.h, lib.h) [w32]: Use
5238         __declspec (dllimport) and __declspec (dllexport) instead of
5239         the less portable __attribute__ ((dllimport)) and
5240         __attribute__ ((dllexport)).  Makes the test compile on MSVC.
5241
5242 2010-09-19  Peter Rosin  <peda@lysator.liu.se>
5243
5244         tests: Import items from liba1 for MSVC.
5245         * tests/lt_dlexit.at (b1.c) [MSVC]: Import function f1 and
5246         variable v1 from liba1 when using them from modb1.  Makes the
5247         test pass on MSVC.
5248
5249 2010-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5250
5251         tests: avoid distcheck failure with --disable-ltdl-install.
5252         * tests/ltdl-libdir.at (libdir of installed modules): Skip if
5253         $LIBLTDL does not exist.
5254
5255 2010-09-18  Gary V. Vaughan  <gary@gnu.org>
5256
5257         maint: use sed instead of maintaining 2 README files.
5258         * README.alpha: Deleted.  It was mostly identical to README.
5259         * libltdl/config/edit-readme-alpha: New script to edit the
5260         contents of README in the dist tree prior to tarring up.
5261         * Makefile.am (dist-hook): Run it before rolling alpha release
5262         tarball.
5263
5264         maint: improve README's `Obtaining the Latest Sources'.
5265         * README (Obtaining the Latest Sources): Add instructions for
5266         obtaining stable, alpha and nightly snapshot tarballs.
5267         * README.alpha (Obtaining the Latest Sources): Adjust to match.
5268
5269         maint: reformat README `The Test Suites' for consistency.
5270         * README (The Test Suites): Reformatted for consistency.
5271         * README.alpha (The Test Suites): Adjust to match.
5272
5273         maint: improve `Reporting Bugs' in README and README.alpha.
5274         * README (Reporting Bugs): Rewritten to a more complete and
5275         concise guide to providing a good bug report.
5276         * README.alpha (Reporting Bugs): Adjust to match.
5277
5278         maint: consolidate Introductions of README and README.alpha.
5279         * README (Introduction): Rewritten to a more logical order for
5280         first time users, incorporating some additional text that was
5281         previously only in README.alpha.
5282         * README.alpha (Introduction): Adjust to match.
5283
5284         maint: copy the Version Numbering section into README.alpha.
5285         * README.alpha (Version Numbering): No less useful for users
5286         of alpha releases.  Copied from README.
5287
5288 2010-09-17  Peter Rosin  <peda@lysator.liu.se>
5289
5290         tests: actually detect missing 'test' in 'if "$foo" = ...'.
5291         * tests/sh.test: Remove extra backslash in regex.
5292
5293         Copy over DLL_EXPORT handling from C to C++ for non-GCC on w32.
5294         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [mingw, cygwin, os2]
5295         [pw32, cegcc]: Copy over the DLL_EXPORT handling from C to C++.
5296
5297 2010-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5298
5299         LTO: consistently accept -fwhopr* and -flto* for GCC.
5300         * libltdl/config/ltmain.m4sh (func_mode_link): Accept -fwhopr*.
5301         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Also match
5302         -flto*.
5303
5304 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
5305
5306         Fix order of PATH manipulation in cwrapper and shwrapper
5307         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main): Call
5308         lt_update_exe_path before lt_update_lib_path, to ensure that the
5309         temporary rpath values (which include the OBJDIRs of uninstalled
5310         libtool libraries) precede installation and final -rpath directories.
5311         (func_emit_wrapper): Prepend $dllsearchpath to PATH before prepending
5312         $temp_rpath to $shlibpath_var; similar rationale as above.
5313         Reported by Jon Turney <jon.turney@dronecode.org.uk>
5314
5315 2010-09-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
5316
5317         Document libtool variable to_host_file_cmd.
5318         * doc/libtool.texi (libtool script contents:to_host_file_cmd):
5319         Document variable.
5320         (libtool script contents:to_tool_file_cmd): Prefer `build platform'
5321         to `build system'; Ditto `host platform'.
5322
5323 2010-09-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
5324
5325         Fix sh.test failure introduced in 72064249
5326         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid poor
5327         syntax.
5328
5329 2010-09-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5330
5331         tests: avoid localization failure due to unstable compiler messages.
5332         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT):
5333         Attempt to normalize temporary file names in error messages.
5334         Fixes 'localized compiler messages' test failure on Darwin when
5335         creating fat (multi-ABI) libraries.
5336
5337 2010-09-13  Peter Rosin  <peda@lysator.liu.se>
5338
5339         Prefer $NM @file when the toolchain isn't native to $build.
5340         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid calculating
5341         the command line length and take the @file branch *if* the file
5342         names needs to be converted for the toolchain and the @file
5343         branch works.  Fixes problems in stresstest.at when doing a cross
5344         from Cygwin to MinGW using MinGW native tools (a.k.a. a "faked"
5345         cross), and for the specific case of MSVC on Cygwin it makes the
5346         test pass.
5347
5348 2010-09-15  Gary V. Vaughan  <gary@gnu.org>
5349
5350         maint: improve README instructions for fetching latest version.
5351         * README, README-alpha (Obtaining the Latest Sources): New
5352         section, describing use of savannah repositories and bootstrap.
5353         * README.alpha (Reporting Bugs): Remove git instructions in
5354         favour of a reference to the new `Obtaining the Latest Sources'
5355         section.
5356
5357 2010-09-14  Eric Blake  <eblake@redhat.com>
5358
5359         maint: ship .xz, not .lzma
5360         * configure.ac (AM_INIT_AUTOMAKE): Prefer better file format.
5361         * Makefile.maint (git-release, git-dist, prev-tarball)
5362         (new-tarball, diffs): Use correct extension.
5363         * HACKING: Update instructions.
5364         * .gitignore: Ignore .xz files.
5365
5366 2010-09-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5367
5368         doc: avoid long lines in input and output, indexing fixes.
5369         * doc/libtool.texi (Linking libraries)
5370         (Module loaders for libltdl): Manually line-wrap examples, to
5371         avoid long lines.
5372         (Libltdl interface, User defined module data)
5373         (Module loaders for libltdl): Wrap long @deftypefun input lines
5374         using trailing '@'.  Use @deftypefun rather than @deftp where
5375         appropriate, and add spaces in @deftypefun lines to fix the
5376         index entries generated from these lines.
5377         (Cheap tricks): Use @smallexample rather than @example, to avoid
5378         long lines.
5379
5380         docs: @file and @option markup fixes.
5381         * doc/libtool.texi (Creating object files, Linking libraries)
5382         (Linking executables, Link mode, Finish mode, Autoconf macros)
5383         (Using Automake, Inter-library dependencies, Dlpreopening)
5384         (Linking with dlopened modules, Finding the dlname)
5385         (Libltdl interface, Test descriptions, Multiple dependencies):
5386         Add @option where needed, replace @samp with @file as
5387         appropriate.
5388
5389 2010-09-12  Peter Rosin  <peda@lysator.liu.se>
5390
5391         * .gitignore: Ignore *.obj files for MSVC (and w32 in general).
5392
5393         Adjust to moved auxiliary files and add compile.
5394         * HACKING (Maintenance Notes): Adjust to moved files.  Add the
5395         compile script.
5396         * Makefile.maint (fetch): Also fetch the compile script.
5397
5398 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5399
5400         tests: avoid empty AT_DATA contents, for zsh.
5401         * tests/libtoolize.at (libtoolize macro serial update)
5402         (libtoolize config files serial update, LIBTOOLIZE_OPTIONS):
5403         Do not create empty files with AT_DATA, the latter is documented
5404         to require a final newline.  Fixes testsuite failures with zsh
5405         4.3.10.
5406
5407 2010-09-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
5408
5409         When assigning $linklib value, honor [-all]-static[-libtool-libs]
5410
5411         * libltdl/config/ltmain.m4sh (func_mode_link): When prefer_static_libs
5412         and static library exists, ensure old_library name is used as $linklib.
5413         Fixes failure on mingw when both static and shared libraries are
5414         present.
5415
5416 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5417
5418         tests: work around zsh use of $options variable.
5419         * tests/getopt-m4sh.at: Rename $options to $opts, the former is
5420         special for zsh 4.3.10.
5421
5422         Fix AC_NO_EXECUTABLES test failure on IRIX 6.5.
5423         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix]: Cache result
5424         of link check for -Wl,-exported_symbol.
5425         * tests/no-executables.at (AC_NO_EXECUTABLES): Set
5426         lt_cv_irix_exported_symbol, to avoid link check.
5427
5428 2010-09-12  Jürgen Reuter  <juergen.reuter@physik.uni-freiburg.de>  (tiny change)
5429             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5430
5431         Initial support for the NAG Fortran compiler on GNU/Linux.
5432         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <nagfor>:
5433         New set of entries, for NAG Fortran 5.1 and 5.2.
5434         * NEWS: Update.
5435
5436 2010-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5437
5438         Fix getopt.m4sh to require Autoconf 2.62 or newer.
5439         * libltdl/config/getopt.m4sh (m4_version_prereq): Require 2.62,
5440         not 2.61.
5441
5442 2010-09-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
5443
5444         Correct typo: $sharedlib_from_linklib_cmd missing '_cmd'
5445
5446         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Fix obvious
5447         typo, $sharedlib_from_linklib_cmd missing '_cmd'.
5448
5449 2010-09-10  Peter Rosin  <peda@lysator.liu.se>
5450
5451         Convert file name to toolchain format when invoking $NM.
5452         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
5453         (func_win32_libid, func_cygming_gnu_implib_p)
5454         (func_cygming_ms_implib_p): When using the name lister to find
5455         symbols in files, convert the file names to a format appropriate
5456         for the tool. Fixes testsuite issues in mdemo-static-make.test
5457         and mdemo-make.test when doing a cross from Cygwin/Wine to MinGW
5458         using MinGW native tools (a.k.a. a "faked" cross).
5459
5460 2010-09-09  Peter Rosin  <peda@lysator.liu.se>
5461
5462         Fix dependency tracking for MSYS/MinGW.
5463         * libltdl/config/ltmain.m4sh (func_to_tool_file): Add lazy
5464         argument which allows the user to specify conversions that are
5465         not desired.
5466         (func_mode_compile): Don't convert source files on MSYS, as
5467         MSYS does it for us. This fixes a regression introduced by
5468         "Use func_to_tool_file instead of fix_srcfile_path".
5469         Reported by Charles Wilson.
5470
5471 2010-09-08  Peter Rosin  <peda@lysator.liu.se>
5472
5473         Mention adjustment of naming of MSVC import libraries in NEWS.
5474         * NEWS: Mention the change in import library naming on MSVC.
5475
5476 2010-09-07  Peter Rosin  <peda@lysator.liu.se>
5477
5478         Adjust naming of MSVC import libraries.
5479         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
5480         [pw32, cegcc] <cl*, library_names_spec>: Adjust naming of the
5481         import library from foo-<major-version>.lib to foo.dll.lib, to
5482         avoid clashes with the static library for unversioned libraries.
5483         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin, pw32]
5484         [cegcc] <cl*, archive_expsym_cmds>: Explicitely name the import
5485         library to match the above.
5486
5487         Fixup texi typo in previous.
5488         * doc/libtool.texi (libtool script content) <postlink_cmds>:
5489         Add missing 'code' command.
5490
5491         Convert POSIX file names to toolchain format for MSVC
5492         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
5493         [cygwin, mingw, pw32, cegcc] <cl*, postlink_cmds>: Make
5494         sure the -outputresource: file name for the manifest tool is
5495         in w32 format.
5496         <cl*, archive_expsym_cmds>: Likewise for the MSVC command file
5497         containing the exports and the output file name.
5498         * libltdl/config/ltmain.m4sh (func_mode_link): Precalculate the
5499         toolchain format of the output_objdir file name and store it in
5500         the tool_output_objdir variable. Also replace any occurrence of
5501         @TOOL_OUTPUT@ in postlink_cmds with the toolchain version of the
5502         @OUTPUT@ content.
5503         * doc/libtool.texi (libtool script content): Update description
5504         of postlink_cmds to mention @TOOL_OUTPUT@.
5505
5506 2010-09-06  Peter Rosin  <peda@lysator.liu.se>
5507
5508         Use func_to_tool_file instead of fix_srcfile_path.
5509         * libltdl/config/ltmain.m4sh (func_mode_compile): Replace the
5510         fix_srcfile_path hook with a call to func_to_tool_file.
5511         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin,mingw,pw32]
5512         [cegcc]: Drop fix_srcfile_path.
5513         * doc/libtool.texi (libtool script contents): Likewise.
5514         * NEWS: Mention that fix_srcfile_path has been replaced.
5515
5516         Convert file names to toolchain format in $NM and $AR @files.
5517         * libltdl/config/ltmain.m4sh (func_mode_link): When listing
5518         symbols and when creating archives using command files (or
5519         response files), make sure that both the name of the command
5520         file and the content are made up of file names in a format
5521         appropriate for the tool. Fixes stresstest.at on MSYS when
5522         run with low command line length.
5523
5524         Convert file names to toolchain format when linking.
5525         * libltdl/config/ltmain.m4sh (func_mode_link): When exporting
5526         symbols and when linking using command files (or response
5527         files), make sure that both the name of the command file and
5528         the content are made up of file names in a format appropriate
5529         for the tool. Fixes problems in stresstest.at on MSYS when run
5530         with low command line length.
5531
5532         Add file name conversion from $build to toolchain.
5533         * configure.ac: Ensure to_tool_file_cmd is available to Makefile.
5534         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): Add
5535         cache variable lt_cv_to_tool_file_cmd that describes how to
5536         convert file names from $build to toolchain format.
5537         * libltdl/config/ltmain.m4sh (func_to_tool_file): New function
5538         that utilizes the above.
5539         * Makefile.am: Ensure to_tool_file_cmd is included in
5540         TEST_ENVIRONMENT so that it is passed to (old testsuite) tests.
5541         * testsuite.at: Ensure to_tool_file_cmd is passed as a variable
5542         setting on the configure line for (new testsuite) tests.
5543         * doc/libtool.texi (libtool script content): Update with
5544         to_tool_file_cmd description.
5545         (Cygwin to MinGW Cross): Update to mention lt_cv_to_tool_file_cmd.
5546
5547 2010-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5548
5549         tests: avoid spurious test failure due to library mode on HP-UX.
5550         * tests/help.at (debug tracing): Use $lt_INSTALL not cp for
5551         install mode, the latter will not overwrite an existing library
5552         with mode 555.
5553
5554 2010-09-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
5555
5556         Path conversion documentation
5557         * doc/libtool.texi (Platform quirks): Add new subsections
5558         'Cross compiling' and 'File name conversion'.
5559
5560 2010-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5561
5562         tests: avoid spurious pic_flag test failure on HP-UX 10.20.
5563         * tests/pic_flag.at (override pic_flag at configure time):
5564         Match HP-UX 10.20 cc warning about unknown options, to skip
5565         the test.
5566
5567         tests: fix localization test for GCC on HP-UX 11.00.
5568         * tests/localization.at (localized compiler messages): Be sure
5569         to switch the locale only for the actual compiler commands, so
5570         we don't pick up warnings from helper tools such as diff which
5571         may not have the locale installed.
5572
5573         Avoid leaking make flags into testsuite results.
5574         * tests/defs.m4sh: Unset MFLAGS, MAKEFLAGS, MAKELEVEL, __MKLVL__
5575         and MAKE_JOBS_FIFO.
5576         * tests/testsuite.at: Likewise.
5577         Fixes warnings in test logs when the user uses 'make -jN check'
5578         and inner $MAKE invocations can't connect to the job server.
5579         Fixes spurious failures of configure-iface.at and of
5580         demo-noinst-link tests with BSD and Tru64 make if the user uses
5581         'make -k', as the exit status of the latter is not reliable.
5582
5583 2010-09-01  Gary V. Vaughan  <gary@gnu.org>
5584
5585         Remove announce-gen.m4sh and mailnotify.m4sh.
5586         * libltdl/config/announce-gen.m4sh: Removed.  This script has
5587         no apparent connection to libtool functionality, and mostly
5588         duplicates the better maintained gnulib announce-gen script.
5589         * libltdl/config/mailnotify.sh: Removed. This script was used
5590         by only clcommit.m4sh and announce-gen.m4sh, both of which are
5591         now removed too.
5592         * Makefile.maint (announce-gen, libltdl/config/mailnotify):
5593         Targets removed.
5594         * bootstrap: Remove the mailnotify regeneration warning.
5595         * HACKING (Release Procedure): Remove references to
5596         announce-gen.
5597         (Alpha release note template, Full release note template):
5598         Reinstated from before announce-gen was introduced.
5599
5600         Remove clcommit.m4sh.
5601         * clcommit.m4sh: Removed. This script was written to help keep
5602         ChangeLog and commit messages in sync when committing to CVS,
5603         and is an anachronism now that Libtool uses git.
5604         * Makefile.maint (commit): Target removed.
5605         * bootstrap: Don't generate commit.
5606         * HACKING (Release Procedure): Adjusted.
5607
5608 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
5609
5610         archive-in-archive.at passes with Microsoft lib.
5611         * tests/archive-in-archive.at: Tighten test to check that the desired
5612         object files are indeed part of the archive. Microsoft lib still
5613         passes, so remove the expected failure for that case.
5614
5615         Dump archiver output to the log when testing @file support.
5616         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout to config.log
5617         when testing for @file support.
5618         Suggested by Ralf Wildenhues.
5619
5620         Silence archiver output when testing @file support.
5621         * libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout and stderr
5622         to the bit bucket when testing for @file support.
5623
5624 2010-08-31  Gary V. Vaughan  <gary@gnu.org>
5625
5626         Remove double `Generated from foo.m4sh' lines.
5627         We now require a modern Autoconf to bootstrap libtool, which
5628         will add the `Generated by ...' boiler-plate automatically,
5629         so we can remove the hand-rolled @configure_input@
5630         substitutions we had been doing:
5631         * clcommit.m4sh, libtoolize.m4sh, tests/defs.sh,
5632         libltdl/config/announce-gen.m4sh, libltdl/config/ltmain.m4sh,
5633         libltdl/config/mailnotify.m4sh: Remove @configure_input@.
5634         * Makefile.am (edit): Remove configure_input substitution.
5635         (libtoolize, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
5636         (tests/defs): Don't set `$input' shell variable.
5637         * Makefile.maint (announce_gen, libltdl/config/mailnotify)
5638         (commit): Likewise.
5639
5640 2010-08-31  Peter Rosin  <peda@lysator.liu.se>
5641
5642         Extract the archive name from the .la file and use $AR (not ar).
5643         * Makefile.am: Pass AR through to the testsuite.
5644         * tests/archive-in-archive.at: Bump copyright year. Extract archive
5645         name from the .la file instead of hardcoding the name, and allow
5646         different archivers. Also clarify that the tested functionality is
5647         currently broken.
5648
5649 2010-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5650
5651         tests: skip -Wall -Werror with Tru64 cc in cwrapper test.
5652         * tests/cwrapper.at (cwrapper for uninstalled executables):
5653         Use a link test rather than a compile test to flesh out unknown
5654         compiler flags starting with -W; Tru64/OSF1 cc will happily
5655         accept `-Wall -Werror' as indication to pass flags on to
5656         subprocesses.
5657
5658         tests: avoid getopt-m4sh failures when autom4te is not available.
5659         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP):
5660         Check $M4SH --version, skip on failure.
5661
5662         tests: mark 'syntax of .la files' as XFAIL, expose failure.
5663         * tests/lalib-syntax.at (syntax of .la files): Assert that the
5664         string returned by lt_dlerror after a failure is non-NULL, so
5665         the failure shows up on systems other than Solaris.  Mark test
5666         as expected to fail.
5667         Suggested by Bob Friesenhahn.
5668
5669 2010-08-30  Eric Blake  <eblake@redhat.com>
5670
5671         Simplify recent configure quoting portability workaround.
5672         * configure.ac: Simplify setting of timestamp_string.
5673
5674 2010-08-30  Charles Wilson  <libtool@cwilson.fastmail.fm>
5675
5676         Update path conversion warning messages
5677         * libltdl/config/ltmain.m4sh (func_convert_file_check): Update
5678         comments and warning message.
5679         (func_convert_path_check): Update warning message.
5680
5681 2010-08-29  Peter Rosin  <peda@lysator.liu.se>
5682
5683         Fix typo when renaming path conversion functions.
5684         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
5685         variable setting on the configure line for (new testsuite) tests.
5686
5687 2010-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5688
5689         Support GCC LTO on GNU/Linux.
5690         * libltdl/config/ltmain.m4sh (func_mode_link): Allow through
5691         flags matching -O*, -flto*, -fwhopr, -fuse-linker-plugin.
5692         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Drop symbols
5693         starting with __gnu_lto.
5694         (_LT_LINKER_SHLIBS) [linux] <archive_cmds, archive_expsyms_cmds>:
5695         Add $pic_flag for GCC.
5696         (_LT_LANG_CXX_CONFIG) [linux] <archive_cmds, archive_expsyms_cmds>:
5697         Likewise.
5698         (_LT_SYS_HIDDEN_LIBDEPS): Ignore files matching *.lto.o.
5699         * NEWS: Update.
5700
5701         Disable GCC LTO for verbose library extraction.
5702         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Temporarily
5703         append -fno-lto or -fno-whopr to CFLAGS if CC or CFLAGS (which
5704         are substituted with the per-language variables here) contain
5705         -flto or match -fwhopr*, respectively.
5706
5707         Save and restore CFLAGS properly inside libtool.m4 macros.
5708         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Use different
5709         temporary variables for saved and restored values of $LIBS,
5710         $CFLAGS, to avoid overlap with the *_CONFIG macros.
5711         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
5712         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Also save and restore
5713         $CFLAGS, and override it with per-language flags, so that in
5714         case output_verbose_link_cmd uses $CFLAGS, the right flags are
5715         used.
5716
5717         Work around yet another shell quoting portability issue.
5718         * configure.ac: Avoid nonportable quoted alternate variable
5719         value in unquoted here document, so Solaris 10 sh and Tru64
5720         ksh do not print spurious extra quotes.
5721
5722         Silence order-only configure test for AIX make.
5723         * configure.ac: Also drop standard output, for AIX 5.1 make.
5724
5725 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
5726
5727         Minor sysroot fixups.
5728         * libltdl/m4/libtool.m4 (_LT_WITH_SYSROOT): Fix typo.
5729         * tests/sysroot.at: Search also for crt0.o to accommodate cygwin.
5730
5731 2010-08-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
5732
5733         [cygwin|mingw|cross-compile]: Path conversion support.
5734         * configure.ac: Ensure to_host_file_cmd is available to Makefile.
5735         * TODO: Document QoI issue with file name conversion functions.
5736         * libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): New function
5737         sets libtool variable $to_host_file_cmd, and employs cache.
5738         (_LT_SETUP): Require it.
5739         * tests/testsuite.at: Ensure to_host_file_cmd is passed as a
5740         variable setting on the configure line for (new testsuite) tests.
5741         * Makefile.am (TESTS_ENVIRONMENT): Ensure to_host_file_cmd is
5742         included so that it is passed to (old testsuite) tests.
5743         * libltdl/config/general.m4sh: Define $lt_sed_naive_backslashify here.
5744         * libltdl/config/ltmain.m4sh ($to_host_file_cmd, $to_host_path_cmd):
5745         New variables.
5746         (func_cygpath): New function.
5747         (func_init_to_host_path_cmd): New function.
5748         (func_to_host_path): Renamed to...
5749         (func_to_host_file): Refactored to... (now uses $to_host_file_cmd).
5750         (func_convert_core_file_wine_to_w32): Here. New function.
5751         (func_convert_core_msys_to_w32): Here. New function.
5752         (func_convert_file_check): Here. New function.
5753         (func_convert_file_noop): Here. New function.
5754         (func_convert_file_msys_to_w32): Here. New function.
5755         (func_convert_file_cygwin_to_w32): Here. New function.
5756         (func_convert_file_nix_to_w32): Here. New function.
5757         (func_convert_file_msys_to_cygwin): New function.
5758         (func_convert_file_nix_to_cygwin): New function.
5759         (func_to_host_pathlist): Renamed to...
5760         (func_to_host_path): Refactored to... (now uses $to_host_path_cmd
5761         and func_init_to_host_path_cmd).
5762         (func_convert_path_check): Here. New function.
5763         (func_convert_path_front_back_pathsep): Here. New function.
5764         (func_convert_core_path_wine_to_w32): Here. New function.
5765         (func_convert_path_noop): Here. New function.
5766         (func_convert_path_msys_to_w32): Here. New function.
5767         (func_convert_path_cygwin_to_w32): Here. New function.
5768         (func_convert_path_nix_to_w32): Here. New function.
5769         (func_convert_path_msys_to_cygwin): New function.
5770         (func_convert_path_nix_to_cygwin): New function.
5771
5772 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5773
5774         Fix symlist variable path to use _WIN32 instead of __WINDOWS__.
5775         * libltdl/config/ltmain.m4sh, libltdl/libltdl/lt_system.h,
5776         libltdl/m4/libtool.m4, tests/demo/foo.h, tests/pdemo/foo.h:
5777         Change __WINDOWS__ to _WIN32.
5778         Report by Charles Wilson.
5779
5780         Add $pic_flag to archive_cmds and archive_expsym_cmds.
5781         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
5782         <archive_cmds, archive_expsym_cmds>
5783         [GNU ld, netbsd]: Add $pic_flag if ELF.
5784         [GNU ld, solaris]: Likewise.
5785         [GNU ld, default case]: Likewise.
5786         [!GNU ld, freebsd, dragonfly]: Add $pic_flag.
5787         [!GNU ld, GCC, hpux9]: Add $pic_flag.
5788         [!GNU ld, GCC, hpux10]: Replace -fPIC with $pic_flag
5789         [!GNU ld, GCC, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
5790         [!GNU ld, GCC, irix5, irix6, nonstopux]: Add $pic_flag.
5791         [!GNU ld, GCC, osf4, osf5]: Likewise.
5792         [!GNU ld, GCC, solaris]: Likewise.
5793         (_LT_LANG_CXX_CONFIG) <archive_cmds, archive_expsym_cmds>
5794         [hpux9]: Add $pic_flag if $GXX.
5795         [hpux10, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
5796         [irix5, irix6]: Add $pic_flag if $GXX.
5797         [osf4, osf5]: Likewise.
5798         [solaris]: Add $pic_flag if $GXX and not GCC 2.7.
5799
5800         Uniform const'ness of symlist variable lt_preloaded_symbols.
5801         On some systems, lt_preloaded_symbols may not be declared
5802         const due to relocation issues.  C99 requires qualification to
5803         match for compatible declarations, so ensure we declare
5804         const'ness in the same way everywhere; link-time optimization
5805         may otherwise rightfully complain about inconsistencies.
5806         Since ltdl.h may not depend upon config.h, rely on system
5807         defines for choosing const'ness.
5808         * NEWS: Update.
5809         * doc/libtool.texi (Dlpreopening): Document this issue.
5810         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
5811         [__WINDOWS__, __CYGWIN__, _WIN32_WCE]: Define LT_DLSYM_CONST
5812         according to system defines.  Remove old shell cruft.  Use
5813         LT_DLSYM_CONST for lt_${my_prefix}_LTX_preloaded_symbols.
5814         * libltdl/libltdl/lt_system.h (LT_DLSYM_CONST): Likewise,
5815         define LT_DLSYM_CONST according to system defines.
5816         * tests/demo/foo.h (LT_DLSYM_CONST): Likewise.
5817         * tests/pdemo/foo.h (LT_DLSYM_CONST): Likewise.
5818         * tests/demo/dlmain.c (lt_dlsymlist): Use LT_DLSYM_CONST.
5819         * tests/pdemo/longer_file_name_dlmain.c (lt_dlsymlist):
5820         Likewise.
5821         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise
5822         for configure test code.
5823         * libltdl/ltdl.c (preloaded_symbols): Use LT_DLSYM_CONST.
5824         * libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Likewise.
5825
5826 2010-08-28  Dave Korn  <dave.korn.cygwin@googlemail.com>
5827
5828         Ensure cwrapper magic string is not optimized away.
5829         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
5830         Declare MAGIC_EXE as volatile.
5831         Report by Charles Wilson.
5832
5833 2010-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5834
5835         Fix quoting in non-XSI func_xform, for IRIX sh.
5836         * libltdl/config/ltmain.m4sh (func_xform): Remove spurious extra
5837         M4 quotes.
5838
5839         Fix response file test for unreliable exit status of IRIX ar.
5840         * libltdl/m4/libtool.m4 (_LT_PROG_AR): IRIX ar will not fail
5841         over a command-line argument specifying a nonexistent file (such
5842         as `@FILE'), so ensure failure with a reponse file containing
5843         a nonexistent file.  Also, use lt_* variable prefix for
5844         temporary variables.
5845
5846         Fix AC_LANG_PROGRAM warnings from git Autoconf.
5847         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Fix
5848         underquoted AC_LANG_PROGRAM call.
5849         (LT_PROG_AR): Use AC_LANG_PROGRAM.
5850         (_LT_LINKER_SHLIBS) [irix, GCC]: Use the right source for the
5851         given language.
5852         * NEWS: Update.
5853
5854 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5855
5856         fix AIX testsuite regression
5857         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): Partly
5858         revert v2.2.10-83-gc45a288: Do not absolutize path here, only do
5859         sysroot replacement.
5860         (func_mode_link): Adjust.
5861
5862 2010-08-22  Charles Wilson  <libtool@cwilson.fastmail.fm>
5863
5864         fix --mode=finish
5865         * libltdl/config/ltmain.m4sh (func_mode_finish): Invert then/else
5866         blocks of the "if $opt_dry_run" conditional.
5867
5868 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
5869
5870         improve code for sysroot --mode=finish
5871         * libltdl/config/ltmain.m4sh (func_mode_finish): Change sysroot_regex
5872         and sysroot_cmd delimiter from pipe to slash.  Wrap the entire for
5873         loop with "if $opt_dry_run...fi" and print an explanatory message
5874         for the --dry-run case.
5875
5876 2010-08-12  Paolo Bonzini  <bonzini@gnu.org>
5877
5878         add libtool --mode=finish mode for sysroot
5879         * doc/libtool.texi (Finish mode): Document behavior when *.la files
5880         are passed.
5881         * libltdl/config/ltmain.m4sh (func_mode_finish): Eliminate sysroot
5882         or `=' signs representing it from files in $libs.
5883         * tests/sysroot.at (SYSROOT_TESTS): Test for presence of sysroot
5884         references before running libtool --mode=finish, and for absence
5885         afterwards.
5886
5887         reorganize parsing of --mode=finish arguments
5888         * libltdl/config/ltmain.m4sh (func_mode_finish): Split arguments for
5889         directories and *.la files.
5890
5891         fix sysroot handling for deplibs of preopened libtool libs
5892         * libltdl/config/ltmain.m4sh: Pass $dependency_libs of preopened libtool
5893         through func_resolve_sysroot.
5894
5895         fix sysroot tests to pass on Fedora 13
5896         * tests/sysroot.at: Link $prefix/include into the sysroot as well, as
5897         required by newer GCC.
5898
5899 2010-07-29  Paolo Bonzini  <bonzini@gnu.org>
5900
5901         initial version of the NEWS entry
5902         * NEWS: Document sysroot support.
5903
5904         add sysroot test
5905         * Makefile.am (TESTSUITE_AT): Add tests/sysroot.at.
5906         * tests/sysroot.at: New.
5907
5908         emit sysrooted paths when installing .la files
5909         * libltdl/config/ltmain.m4sh (func_replace_sysroot): New.
5910         (func_mode_link): Prepend paths in $libdir with the sysroot.  Further,
5911         replace the sysroot with = (using func_replace_sysroot) whenever
5912         such a path is written in a .la file.
5913
5914         process postdeps to include sysrooted paths
5915         * libltdl/m4/libtool.m4 (_LT_FUNC_STRIPNAME_CNF): New (from Charles Wilson).
5916         (_LT_SYS_HIDDEN_LIBDEPS): Require it.  Use func_stripname_cnf to convert
5917         sysroot (-L= and -R=) usage in postdeps.  Adjust the code because -L, -R
5918         and -l flags will now always be separated from the rest of the argument.
5919
5920         handle sysrooted paths when reading dependencies to la files
5921         * libltdl/config/ltmain.m4sh (func_mode_execute, func_mode_install,
5922         func_mode_link): Whenever a .la file occurs in another .la file,
5923         expand the sysroot path in it.
5924
5925 2010-07-28  Paolo Bonzini  <bonzini@gnu.org>
5926
5927         teach libtool -L= and -R=
5928         * libltdl/config/ltmain.m4sh (func_resolve_sysroot): New.
5929         (func_mode_link): Always pass result of stripping -L and -R to
5930         func_resolve_sysroot before using it.  Remove absolute path expansion
5931         when func_resolve_sysroot subsumes it.  Expand sysroot in -rpath.
5932         When processing dependent libraries also resolve sysroot paths there.
5933
5934         add --with-sysroot
5935         * libltdl/m4/libtool.m4 (_LT_HOST_NONCANONICAL, _LT_WITH_SYSROOT): New.
5936         (LT_SETUP): Require _LT_WITH_SYSROOT.
5937
5938         handle sysroot flags
5939         * libltdl/config/ltmain.m4sh (func_mode_link): Recognize --sysroot
5940         option.
5941
5942 2010-08-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5943
5944         * NEWS: Only bootstrapping needs new Automake and Autoconf.
5945
5946         check-interactive and check-noninteractive for both testsuites.
5947         * Makefile.am (COMMON_TESTS, TESTS): Split into ...
5948         (NONINTERACTIVE_TESTS, INTERACTIVE_TESTS): ... these new
5949         variables.
5950         (check-interactive-new): Rename from check-interactive.
5951         (check-noninteractive-new): Rename from check-noninteractive.
5952         (check-interactive-old, check-noninteractive-old): New targets.
5953         (check-interactive, check-noninteractive): Depend on the
5954         respective targets for the old and the new test suites.
5955         * doc/libtool.texi (Test descriptions): Simplify description
5956         about check-interactive and check-noninteractive.  Add index
5957         entries.
5958
5959         Adjust docs for renaming and for parallel-tests.
5960         * README: Update example TESTS setting.
5961         * README.alpha: Likewise.
5962         * doc/libtool.texi (Test descriptions): Update for test renaming,
5963         adjust descriptions accordingly.
5964
5965         Update VERBOSE handling for parallel-tests driver.
5966         * tests/defs.m4sh: Default to verbose output, drop now-unneeded
5967         handling of 'VERBOSE=no'.
5968         * README: Update example usage.
5969         * README.alpha: Likewise.
5970         * doc/libtool.texi (Test descriptions, When tests fail): Remove
5971         unneeded VERBOSE recommendations.  Point to per-test log files
5972         and test-suite.log summary file.
5973
5974         Enable parallel-tests test driver for the old testsuite.
5975         * configure.ac: New configure test to find out whether `make'
5976         supports order-only prerequisites; set @ORDER@ accordingly.
5977         (AM_INIT_AUTOMAKE): Enable parallel-tests option.
5978         * tests/defs.m4sh (prefix): Derive install prefix for tests
5979         from the test name, to avoid clashes.
5980         * Makefile.am (CXX_TESTS, F77_TESTS, FC_TESTS, COMMON_TESTS):
5981         Reformat.  Adjust for renamed tests.  Add dependencies between
5982         the respective log files of the tests, to ensure proper ordering.
5983         Use order-only dependencies if possible, between test groups that
5984         use the same directory.
5985         (clean-local-legacy): Remove `_inst-*' directories as well.
5986         Prompted by suggestion from Bob Friesenhahn.
5987
5988         New alias scripts for old tests run more than once.
5989         * tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
5990         tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
5991         tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
5992         tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
5993         tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
5994         tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
5995         tests/demo-pic-exec.test, tests/demo-pic-make.test,
5996         tests/demo-shared-exec.test, tests/demo-shared-inst.test,
5997         tests/demo-shared-make.test, tests/demo-shared-unst.test,
5998         tests/demo-static-exec.test, tests/demo-static-inst.test,
5999         tests/demo-static-make.test, tests/demo-static-unst.test,
6000         tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
6001         tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
6002         tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
6003         tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
6004         tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
6005         tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
6006         tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
6007         tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
6008         tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
6009         tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
6010         tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
6011         tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
6012         tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
6013         tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
6014         tests/tagdemo-shared-exec.test, tests/tagdemo-shared-make.test,
6015         tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
6016         tests/tagdemo-undef-exec.test, tests/tagdemo-undef-make.test:
6017         New files.
6018
6019         Require Automake 1.11.1 for Libtool, enable color-tests.
6020         * configure.ac (AM_INIT_AUTOMAKE): Require 1.11.1.  Enable
6021         color-tests.
6022         (LTDL_SUBDIR_LIBOBJS): Remove now-obsolete conditional and
6023         feature test for Autoconf 2.59 and Automake 1.9.x workaround.
6024         * Makefile.am: Simplify accordingly.
6025         * bootstrap: Remove obsolete WORKING_LIBOBJ_SUPPORT workarounds
6026         for Autoconf 2.59 and Automake 1.9.6.
6027
6028 2010-08-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
6029
6030         Fix syntax for cygwin-cross
6031         libltdl/m4/argz.m4: Add quotes around variable, which
6032         may contain the multiword value 'guessing no'.
6033
6034 2010-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6035
6036         configure: use Autobuild AB_INIT if available.
6037         * configure.ac: Call AB_INIT if it is defined, with
6038         $autobuild_mode as argument, to be set at configure time.
6039         Set AB_VERSION to the Libtool version string.
6040         * HACKING: Update.
6041
6042         Fix getopt tests to skip with Autoconf < 2.61.
6043         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Skip the test
6044         if 'autom4te --language=m4sh' exits 63 because version 2.61 is
6045         required.  Allows the testsuite to complete successfully with
6046         Autoconf 2.59 and Automake 1.9.6.
6047
6048         Tidy and fix clean and distclean rules for old testsuite.
6049         * Makefile.am (clean-local-legacy): Use $(CONF_SUBDIRS) instead
6050         of hard-coding the list of test directories.  Use
6051         $(AM_MAKEFLAGS).
6052         (fake-distclean-legacy): New phony rule, to create fake Makefile
6053         files if needed so that the automake-generated
6054         distclean-recursive rule can work properly.
6055         (distclean_recursive): New helper variable.
6056         (distclean-recursive): Depend on fake-distclean-legacy.
6057
6058 2010-08-22  Paolo Bonzini  <bonzini@gnu.org>
6059
6060         Fix sed_make_literal_regex.
6061         * libltdl/config/general.m4sh (sed_make_literal_regex): Fix
6062         definition.
6063
6064 2010-08-15  Paolo Bonzini  <bonzini@gnu.org>
6065
6066         Factor the sed command used to make a regex from a literal.
6067         * libltdl/config/general.m4sh (sed_make_literal_regex): New.
6068         * libltdl/config/ltmain.m4sh
6069         (func_cygming_dll_for_implib_fallback_core): Use it.  Suggested
6070         by Ralf Wildenhues.
6071
6072 2010-08-21  Rainer Tammer <tammer@tammer.net>  (tiny change)
6073
6074         Avoid issues with AIX resident shared libraries in old testsuite.
6075         * tests/defs.m4sh [aix]: Remove file mode permission for others,
6076         so shared libraries are not kept in memory after execution.
6077         Fixes failures of repeated mdemo-inst.test with on AIX 5.3.
6078
6079 2010-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6080
6081         Skip part of versioning test on AIX.
6082         * tests/versioning.at (versioning): The AIX linker always
6083         records the unversioned library name, even with runtimelinking,
6084         so skip the execution test for the incompatibly upgraded
6085         library.
6086         Report by Rainer Tammer.
6087
6088         Remove dead code from versioning test.
6089         * tests/versioning.at (versioning): No need to build unused
6090         prog3.
6091
6092 2010-08-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6093
6094         Don't hide the table of contents in the manual.
6095         * doc/libtool.texi: Move the table of contents to the beginning.
6096         Prompted by patch from Bruno Haible against Automake.
6097
6098         Remove superfluous dependency in Makefile.am.
6099         * Makefile.am (tests/demo-conf.test): Remove dependency on
6100         libtool, this test is a primary source and not generated.
6101
6102         Bump copyright years in manual.
6103         * doc/libtool.texi: Bump copyright years.
6104
6105 2010-08-13  Peter Rosin  <peda@lysator.liu.se>
6106
6107         Allow the use of a listing file if the archiver supports it.
6108         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Move detection
6109         of a suitable archiver...
6110         (_LT_PROG_AR): ...to here. New macro, also detect if the
6111         archiver supports a listing file with the new variable
6112         archiver_list_spec.
6113         * libltdl/config/ltmain.m4sh: If the archiver supports a listing
6114         file, use it when max_cmd_len is exceeded.  This is needed for
6115         tool chains such as MSVC which do not support piece by piece
6116         linking (-r -o).
6117         * doc/libtool.texi (libtool script contents): Update with
6118         archiver_list_spec description.
6119
6120 2010-08-10  Gary V. Vaughan  <gary@gnu.org>  (tiny change)
6121
6122         Make testsuite compatible with Autoconf 2.62 again.
6123         * tests/getopt-m4sh.at (AT_CHECK): Autotest 2.62 chokes on unquoted
6124         '#' in AT_CHECK, so replace all uses with '@%:@' quadrigraph.
6125         Suggested by Eric Blake <eblake@redhat.com>
6126         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6127
6128 2010-08-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6129
6130         Fix more problematic code from "Add func_append_quoted and do..."
6131         * libltdl/config/ltmain.m4sh (func_mode_link): Revert back
6132         func_append instances that as assignments relied on the shell
6133         not performing word splitting on the right hand side of the
6134         assignment.
6135
6136         Fix another typo on "Add func_append_quoted and do..."
6137         * libltdl/config/ltmain.m4sh (func_mode_link): Fix regression in
6138         computation of finalize_rpath introduced in v2.2.10-40-g0da7d80,
6139         fixing several testsuite failures on AIX.
6140         Report by Rainer Tammer.
6141
6142 2010-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6143
6144         Avoid unwanted error message in configure output.
6145         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Try print
6146         in subshell, so eventual `print: not found' is hidden reliably.
6147
6148         Fix compilation of program sources on AIX.
6149         * tests/lt_dlopenext.at (lt_dlopenext error messages): Do not
6150         use $LIBTOOL when compiling plain object, AIX by default does
6151         not enable static archives.
6152         * tests/ltdl-libdir.at (libdir of installed modules): Likewise.
6153         Report by Rainer Tammer.
6154
6155         Do not call toplevel configure in non-VPATH build.
6156         * tests/deplibs-mingw.at (deplibs without file command): Use
6157         LT_AT_CONFIGURE for consistency, update comment about why it
6158         might fail.
6159         * tests/pic_flag.at (override pic_flag at configure time): Skip
6160         test if we are building in-tree.
6161         Report by Rainer Tammer.
6162
6163         Allow running pic_flag test with different shell.
6164         * tests/testsuite.at (LT_AT_CONFIGURE): Accept optional second
6165         argument specifying the configure script to run.
6166         * tests/pic_flag.at (override pic_flag at configure time):
6167         Use LT_AT_CONFIGURE.
6168
6169         Ensure not to reverse preserving of --debug for relinking/finish.
6170         * libltdl/config/ltmain.m4sh (func_check_version_match): Only
6171         preserve '--debug' switch if $opt_debug is not equal to ':'.
6172         * tests/help.at (debug tracing): New test group.
6173         Report by Rainer Tammer.
6174
6175 2010-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6176
6177         Fix AC_NO_EXECUTABLES test failure on AIX.
6178         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Wrap link
6179         test in AC_CACHE_VAL, using cache variable $lt_cv_aix_libpath.
6180         * tests/no-executables.at (AC_NO_EXECUTABLES): Preset it, to
6181         avoid link test.
6182         Bug report by Rainer Tammer.
6183
6184         Fix ltdl-libdir test for C++ compilers.
6185         * tests/ltdl-libdir.at (libdir of installed modules): Declare
6186         module function as extern "C".
6187
6188 2010-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6189
6190         Let `libtool' without arguments point to `--help' again.
6191         * libltdl/config/ltmain.m4sh (func_check_version_match):
6192         Remove duplicate and wrong error check.
6193         * tests/help.at (standard command line options): Extend test.
6194         Report by Rainer Tammer.
6195
6196         Avoid syntax error due to shift of nonexistent parameter.
6197         * libltdl/config/ltmain.m4sh <command-line handling>: Only shift
6198         if there is a positional parameter to shift.  Fixes `libtool
6199         --help' when dash is used.
6200         Report by Rainer Tammer.
6201
6202         Fix testsuite errors due to shell quoted parameter expansion issue.
6203         * tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Insert space
6204         between double-quoted and unquoted shell parameter, as bash
6205         4.0.28 doesn't add one in its output if the expansion of the
6206         second one starts with a space.
6207         (short option splitting, enhanced shell short option splitting)
6208         (long option splitting, XSI long option splitting): Add space in
6209         expected output.
6210         Fixes testsuite failures on AIX, FreeBSD, etc.
6211         Report by Rainer Tammer.
6212
6213 2010-08-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6214
6215         Fix build failure with AIX sh due to shell quoting error.
6216         * libltdl/config/ltmain.m4sh (func_append_quoted): Document
6217         that this function inserts a separator space.
6218         (func_mode_compile): Do not pass extra space here.
6219         Fixes regression introduced in v2.2.10-49-gc13532a.
6220         Report by Rainer Tammer.
6221
6222 2010-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6223
6224         Fix pic_flag test unportabilities.
6225         * tests/pic_flag.at (override pic_flag at configure time): Skip
6226         test if the compiler produces a warning containing `fpic'.
6227         Do not use nonportable `grep -e', for Solaris.
6228         Report by Charles Wilson.
6229
6230 2010-08-01  Paolo Bonzini  <bonzini@gnu.org>
6231
6232         Fix bug in postdeps computation
6233         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Actually
6234         concatenate $prev and $p.
6235
6236 2010-07-26  Charles Wilson  <libtool@cwilson.fastmail.fm>
6237
6238         Don't always skip XSI tests
6239         * tests/getopt-m4sh.at: Use new signature as implemented by
6240         de8a0992b21b76a13c302cf48588ad5f6042595c, when determining
6241         whether to test Extended-shell functions.
6242
6243 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
6244
6245         * tests/stresstest.at: Link with main.lo when liba is shared
6246         and linking main with -no-install.
6247
6248 2010-07-18  Peter Rosin  <peda@lysator.liu.se>
6249
6250         * tests/stresstest.at [MSVC]: dllimport all imported
6251         variables.
6252
6253 2010-07-17  Peter Rosin  <peda@lysator.liu.se>
6254
6255         dllimport the variable for MSVC in link-order.at
6256         * tests/link-order.at [MSVC]: Makes the test pass by dllimporting
6257         imported variables when working with shared libraries.
6258
6259 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
6260             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6261
6262         Make preloading heed libname_spec.
6263         Fixes testsuite failure for lt_dladvise.at on MSYS/MSVC.
6264         * libltdl/ltdl.c (libprefix): New static variable describing
6265         the prefix of static archives.
6266         (try_dlopen): Use libprefix.
6267         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Export prefix of static
6268         archives to config.h. Also fix assignment of LTDLOPEN to be more
6269         efficient and less error prone while at it.
6270
6271 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
6272
6273         Rename _LT_PROG_XSI_REPLACE macro to _LT_PROG_FUNCTION_REPLACE.
6274         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Rename to
6275         _LT_PROG_REPLACE_SHELLFNS.
6276         (_LT_PROG_XSI_REPLACE): Rename to _LT_PROG_FUNCTION_REPLACE.
6277         (_LT_PROG_FUNCTION_REPLACE): Change decorator comment to use
6278         'Extended shell' rather than 'XSI' on successful replacement.
6279         * libltdl/config/general.m4sh (func_dirname, func_basename)
6280         (func_dirname_and_basename, func_stripname): Change decorator
6281         comment to use 'extended shell' rather than 'XSI' on fallback
6282         implementations.
6283         * libltdl/config/getopt.m4sh (func_split_short_opt)
6284         (func_split_long_opt): Ditto.
6285         * libltdl/config/ltmain.m4sh (func_append, func_append_quoted)
6286         (func_arith, func_len, func_lo2o, func_xform): Ditto.
6287         * tests/getopt-m4sh.at (_LT_AT_XSI_FUNC_EXTRACT): Rename to
6288         _LT_AT_EXTENDED_SHELL_FUNC_EXTRACT.
6289         (_LT_AT_EXTENDED_SHELL_FUNC_EXTRACT): Change regular expression to
6290         match new replacable function decorator comments.
6291
6292 2010-07-08  Peter Rosin  <peda@lysator.liu.se>
6293
6294         Optimize assignment of output_la.
6295         * libltdl/config/ltmain.m4sh (func_mode_link): Save two fork/exec
6296         instances.
6297         Report by Ralf Wildenhues.
6298
6299 2010-07-08  Gary V. Vaughan  <gary@gnu.org>
6300
6301         Fix a cut-n-pasto in "2010-07-07 Charles Wilson" patch.
6302         * libltdl/config/ltmain.m4sh (func_mode_link): Remove spurious
6303         variable dereference.
6304
6305 2010-07-07  Gary V. Vaughan  <gary@gnu.org>
6306
6307         Tidy m4 comment header underline.
6308         * libltdl/m4/libtool.m4 (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): Make
6309         sure hyphens in function name comment header underline line up.
6310
6311 2010-07-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
6312
6313         [cygwin|mingw] fix dlpreopen with --disable-static
6314         * libltdl/config/general.m4sh (func_tr_sh): New function.
6315         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [cygwin|mingw]:
6316         Obtain DLL name corresponding to import library by using value
6317         stored in unique variable libfile_$(transliterated implib name).
6318         If that fails, use $sharedlib_from_linklib_cmd to extract DLL
6319         name from import library directly. Also, properly extract dlsyms
6320         from the import library.
6321         (func_mode_link) [cygwin|mingw]: Prefer to dlpreopen DLLs
6322         over static libs when both are available.  When dlpreopening
6323         DLLs, use linklib (that is, import lib) as dlpreopen file,
6324         rather than DLL. Store name of associated la file in
6325         unique variable libfile_$(transliterated implib name)
6326         for later use.
6327         (func_win32_libid): Accomodate pei-i386 import libs
6328         as well as pe-i386.
6329         (func_cygming_dll_for_implib): New function.
6330         (func_cygming_dll_for_implib_fallback): New function.
6331         (func_cygming_dll_for_implib_fallback_core): New function.
6332         (func_cygming_gnu_implib_p): New function.
6333         (func_cygming_ms_implib_p): New function.
6334         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust sed
6335         expressions for lt_cv_sys_global_symbol_to_c_name_address and
6336         lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
6337         as trailing space after module name is optional.
6338         (_LT_LINKER_SHLIBS) [cygwin|mingw][C++]:
6339         Set exclude_expsyms correctly for $host. Simplify regular
6340         expression in export_symbols_cmds.
6341         (_LT_LINKER_SHLIBS) [cygwin|mingw|pw32][C]: Set exclude_expsyms
6342         correctly for $host. Enable export_symbols_cmds to identify
6343         DATA exports by _nm_ prefix.
6344         (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): New macro sets
6345         sharedlib_from_linklib_cmd variable.
6346         (_LT_DECL_DLLTOOL): New macro ensures DLLTOOL is always set.
6347
6348 2010-07-05  Peter Rosin  <peda@lysator.liu.se>
6349
6350         * tests/export.at [MSVC]: dllimport all imported variables.
6351
6352 2010-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6353             Peter Rosin  <peda@lysator.liu.se>
6354
6355         Support for response files with $NM.
6356         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
6357         <nm_file_list_spec>: New tag variable. Set it to '@' if input
6358         files can be passed to $NM in a file named with the '@' option.
6359         * libltdl/config/ltmain.m4sh (func_mode_link): When
6360         nm_file_list_spec is nonempty, use it to avoid skipped_export.
6361         * doc/libtool.texi (libtool script contents): Document
6362         new variable.
6363
6364 2010-07-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6365
6366         Fix ccache test for MSVC.
6367         * tests/static.at (ccache -all-static): Ignore compiler stderr.
6368         Reported by Peter Rosin.
6369
6370 2010-07-03  Charles Wilson  <libtool@cwilson.fastmail.fm>
6371
6372         Avoid false failures caused by filesystem interaction
6373         * tests/dlloader-api.at (dlloader API): Use uglified names for
6374         pseudo-modules.
6375
6376 2010-07-03  Peter Rosin  <peda@lysator.liu.se>
6377
6378         Fix typo in "Add func_append_quoted and do..."
6379         * libltdl/config/ltmain.m4sh (func_mode_compile): Use
6380         func_append_quoted instead of func_append.
6381
6382 2010-07-02  Peter Rosin  <peda@lysator.liu.se>
6383
6384         Don't trigger file name expansion when embedding manifests.
6385         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
6386         [ cygwin, mingw, cegcc ] <cl*>: Remove all spaces in the
6387         case statement of postlink_cmds to make file name expansion
6388         more unlikely.
6389         (_LT_LANG_CXX_CONFIG): Likewise, but also add the missing |.
6390
6391 2010-07-01  Peter Rosin  <peda@lysator.liu.se>
6392
6393         Fix regression caused by "Add func_append_quoted and do..."
6394         * libltdl/config/ltmain.m4sh (func_mode_link): Remove leftover
6395         "_libs" trash.
6396
6397 2010-06-28  Peter Rosin  <peda@lysator.liu.se>
6398
6399         For MSVC, embed the manifest as a resource in the executable.
6400         Fixes a lot of testsuite failures with MSVC 2003 (v8.0) and
6401         above (and perhaps also MSVC .Net) related to running programs
6402         that have been moved (e.g. installed) without their manifests
6403         also having been moved.
6404         * libltdl/m4/libtool.m4 (_LT_PATH_MANIFEST_TOOL): New macro
6405         that locates the Manifest Tool (mt) and verifies that it is
6406         indeed the manifest tool. The result is stored in the new
6407         variable MANIFEST_TOOL.
6408         (_LT_LINKER_SHLIBS) <postlink_cmds>: New tag variable.
6409         [ cygwin, mingw, cegcc ] <cl*>: Embed the manifest file as a
6410         resource. Make sure the embedding work regardless of if the
6411         @OUTPUT@ file name includes a trailing $EXEEXT.
6412         (_LT_LANG_CXX_CONFIG): Likewise.
6413         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Require the above
6414         _LT_PATH_MANIFEST_TOOL.
6415         * libltdl/config/ltmain.m4sh (func_mode_link): After linking
6416         a program, replace @OUTPUT@ in $postlink_cmds and then execute
6417         the commands.
6418         * doc/libtool.texi (libtool script contents): Document
6419         new postlink_cmds variable.
6420         (LT_INIT): Add that the MANIFEST_TOOL environment variable can
6421         be used to override the manifest tool to use.
6422         * tests/exeext.at: New. Make sure linking with both -o prog
6423         and -o prog$EXEEXT works.
6424         * Makefile.am (TESTSUITE_AT): Update.
6425         (TESTS_ENVIRONMENT): Propagate $(MANIFEST_TOOL) to the
6426         testsuite.
6427         * NEWS: Add note of the new MANIFEST_TOOL environment variable.
6428
6429 2010-06-24  Peter Rosin  <peda@lysator.liu.se>
6430
6431         Add MSVC support.
6432         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
6433         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin]: Add
6434         support for the Microsoft C/C++ Compiler (cl) relying on help
6435         from the compile script in Automake.
6436         * NEWS: Add note of the above.
6437
6438 2010-07-01  Gary V. Vaughan  <gary@gnu.org>
6439
6440         Skip `enhanced shell option appending' test when not available.
6441         * tests/getopt-m4sh.at [enhanced shell option appending]:
6442         _LT_AT_XSI_FUNC_EXTRACT will not be able to find the enhanced
6443         libtool func_append function if the replacement wasn't substituted
6444         by configure, since the decorator comments will be different - in
6445         that case simply skip the test.
6446
6447 2010-06-30  Gary V. Vaughan  <gary@gnu.org>
6448
6449         Add func_append test cases for smart and retarded implementations.
6450         * tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): New
6451         macro to extract a fallback function implementation from
6452         ltmain.m4sh.
6453         [option appending]: Use it for a test of the fallback
6454         implementation of func_append.
6455         [enhanced shell option appending]: And also test the enhanced
6456         implementation.
6457         * libltdl/config/ltmain.m4sh (func_append_quoted): Fix missing \\
6458         to escape a quoted space for eval.
6459         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Fix missing $ in
6460         dereference of func_append inline replacement for retarded
6461         shells.
6462
6463 2010-06-29  Gary V. Vaughan  <gary@gnu.org>
6464
6465         Correct func_split_short_opt comment cut-n-pasto.
6466         * libtool/config/getopt.m4sh (func_split_short_opt): Fix
6467         the function comment.
6468
6469         Use a real XSI compliant func_split_short_opt substitution.
6470         * libtool/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Remove
6471         test ${foo:n:m} substrings, instead adding a ${foo%??} check
6472         to the existing XSI tests.
6473         (_LT_PROG_XSI_SHELLFNS): Remove the ${foo:n:m} based
6474         func_split_short_opt substitution in favour of a properly
6475         XSI compliant substitution.
6476         Suggested by Paolo Bonzini.
6477
6478 2010-06-28  Gary V. Vaughan  <gary@gnu.org>
6479
6480         Add func_append_quoted and do inline func_append substitutions.
6481         * libtool/config/ltmain.m4sh: Replace all occurrences of
6482         `foo="$foo bar"' with func_append. No decorator comment was
6483         added since /func_append [a-zA-Z0-9_]* "/ is already an
6484         excellent match regexp, and additional comments would only
6485         complicate things.
6486         (func_append_quoted): New function that quotes a value with
6487         func_quote_for_eval before appending it.  To avoid quoting the
6488         whitespace in the passed value, a single whitespace is added
6489         automatically.  Changed callers where possible.
6490         * libtool/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Perform a
6491         `+=' implementation substitution for func_append_quoted.  More
6492         importantly, systematically replace matching func_append calls
6493         with inline `+=' when supported (for maximum speed), and
6494         longhand `foo="$foo bar"' otherwise to avoid the function
6495         overhead.
6496
6497         Add an XSI replacement for func_split_short_opt, with test cases.
6498         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Remove 'v' now
6499         that getopt.m4sh doesn't steal that letter for the --version
6500         short option.
6501         * libltdl/config/ltmain.m4sh (M4SH_GETOPTS): We can now use 'v'
6502         as a short option for '--verbose'.
6503         * libltdl/config/getopt.m4sh (m4go_printopts): Add back in the
6504         leading '-' for remaining non-argument short options.
6505         (func_split_short_opt): Use the correct sed script variable.
6506         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also ensure
6507         that XSI substring extraction is supported.
6508         (_LT_PROG_XSI_SHELLFNS): Use XSI substring extraction to split
6509         short options to avoid unnecessary forks if the host shell
6510         supports that.
6511         * tests/getopt-m4sh.at: New tests for getopt.m4sh coverage.
6512         * Makefile.am (TESTSUITE_AT): Add getopt-m4sh.at.
6513         (TESTS_ENVIRONMENT): Pass M4SH and SED for substition into the
6514         m4sh expansion performed in tests/getopt-m4sh.at.
6515
6516 2010-06-27  Gary V. Vaughan  <gary@gnu.org>
6517
6518         Add missing case branch terminators.
6519         * libltdl/config/ltmain.m4sh: Fixed everal case branches with
6520         missing ';;' terminators.
6521
6522         Use TAB-SPACE in preference to SPACE-TAB.
6523         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): Some editors
6524         might optimise away the SPACE in SPACE-TAB sequences, so use
6525         TAB-SPACE just in case.
6526         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6527
6528         Amend a missed opt_mode rename instance in ltmain.m4sh.
6529         * libltdl/config/ltmain.m4sh <mode>: Rename to opt_mode.
6530
6531         Fix portability regressions in today's earlier changeset.
6532         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): `sed -i' is not
6533         portable; use `mv -f ...|| cp -f ...' instead.
6534         Add an initial backslash to sed `c' substitutions with leading
6535         whitespace, so that indentation is not removed by some non-POSIX
6536         compliant sed implementations.
6537         (_LT_PROG_XSI_SHELLFNS): Display a diagnostic warning message if
6538         one or more XSI function replacements failed.
6539
6540         getopt.m4sh generated libtool option parser, and XSI improvements.
6541         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Moved portable
6542         shell versions of various utility functions from here...
6543         * libltdl/config/getopt.m4sh (func_split_long_opt): ...to here...
6544         * libltdl/config/general.m4sh (func_dirname, func_basename)
6545         (func_dirname_and_basename, func_strip_name): ...here...
6546         * libltdl/config/ltmain.m4sh (func_append, func_arith, func_len)
6547         (func_lo2o, func_xform): ...and here.
6548         * libltdl/config/libtool.m4 (_LT_PROG_XSI_REPLACE): New macro that
6549         expands into a sed command for replacing the contents of a
6550         suitably decorated shell function with an alternate XSI
6551         implementation.
6552         (_LT_PROG_XSI_SHELLFNS): Use it to replace the portable shell
6553         versions of the functions above with equivalent XSI
6554         implementations that avoid unnecessary forks if the host shell
6555         supports that.
6556         * libltdl/config/ltmain.m4sh: Replace hand written shell code
6557         with a call to M4SH_GETOPTS. Rename some option variables in
6558         the client code to match the generated option parser settings.
6559         * libltdl/config/general.m4sh (func_echo, func_error)
6560         (func_warning): Use $opt_mode instead of obsoleted $mode in
6561         message leader.
6562         * libltdl/config/getopt.m4sh (m4_version_prereq): This file
6563         requires m4sugar.m4 from Autoconf-2.61 or newer. 
6564
6565 2010-06-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
6566
6567         [cygwin] Refactor C++ exception handling for Win32 correctness
6568         * tests/exception.at (common.h): New file, refactored from
6569         (module.h): Move declaration of modexc to libcommon.
6570         Include common.h. Use explicit import/export markings for
6571         symbols when building on win32 or cygwin.
6572         (common.cpp): New file.
6573         (module.cpp): Ensure correct symbols markings when including
6574         module.h.
6575         (lib.h): Use explicit import/export markings for symbols
6576         when building on win32 or cygwin.
6577         (lib.cpp): Ensure correct symbol markings when including lib.h.
6578         (main.cpp): Include common.h.
6579         (commands): Ensure correct symbol markings when compiling
6580         main.cpp, and lib.cpp, and module.cpp. Add command to compile
6581         common.cpp, and to link libcommon.la.  Add libcommon.la when
6582         linking module.la and main.  Add command to install libcommon.la.
6583
6584 2010-06-21  Gary V. Vaughan  <gary@gnu.org>
6585
6586         Ensure getopts.m4sh is compatible with Autoconf-2.61 and newer.
6587         * libltdl/config/getopt.m4sh (m4_chomp): Ensure this macro is
6588         implemented even if Autoconf's m4sugar.m4 doesn't provide it.
6589         (m4go_expand): New macro based on Autoconf-2.64 m4_expand. Use
6590         it everywhere incase m4sugar.m4 doesn't have an implementation.
6591         (m4_ifnblank): Replace all uses with m4_ifval, which was
6592         available long before m4_ifnblank was introduced.
6593
6594 2010-06-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6595
6596         Fix clean mode for HP-UX 11.31 sh.
6597         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not try
6598         to match a null string in a case pattern, even with surrounding
6599         spaces.  Fixes `lt_dlopenadvise library loading' test.
6600
6601         Add comment for exception handling module unloading issue.
6602         * tests/exceptions.at (C++ exception handling): Add comment
6603         for last patch.
6604
6605         Fix flags test failure when ld is used as linker.
6606         * tests/flags.at (passing CC flags through libtool): When $LD
6607         is used for linking libraries, ensure flags passed with `-Wc,'
6608         are not passed through to $LD, but flags passed with `-Wl,' use
6609         $wl when linking programs.  Fixed testsuite failure on HP-UX
6610         10.20.
6611
6612 2010-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
6613
6614         [cygwin] Fix segfault in C++ exception handling test
6615         * tests/exceptions.at (main.cpp:exceptions_in_module):
6616         Move dlclose outside catch block; otherwise __cxa_end_catch
6617         (part of the cygwin g++ ABI) accesses pointers to data inside
6618         unloaded DLL. This is a platform ABI-specific bug, but is
6619         likely common to many platforms' g++ and/or other C++
6620         compilers.
6621
6622 2010-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6623
6624         Fix srcdir computation for manual runs of old tests.
6625         * tests/defs.m4sh: Strip trailing `/tests' from srcdir, to allow
6626         `$srcdir/tests/FOO.test' to be run from the top build directory.
6627
6628         Clean up @var handling in the manual.
6629         * doc/libtool.texi: Throughout the manual, replace @var with
6630         @samp or @code as appropriate, ensure the argument of remaining
6631         @var uses are lower-case.
6632
6633         Let the bootstrap script fail upon errors.
6634         * bootstrap: Enable errexit.
6635
6636         Fix execute mode test for OSF/1 5.1.
6637         * tests/execute-mode.at (execute mode): Do not use grep -F
6638         with an empty pattern.
6639         * THANKS: Update.
6640         Report by Jay K.
6641
6642         Use config.cache variable for PIC flag, to allow override.
6643         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) <lt_prog_compiler_pic>:
6644         Save result, and allow override, through cache variable
6645         lt_cv_prog_compiler_pic{,_CXX,_F77,_FC}.  The cache variable
6646         needs to contain an eventual -DPIC.
6647         * tests/pic_flag.at (override pic_flag at configure time):
6648         New file, new test.
6649         * Makefile.am (TESTSUITE_AT): Update.
6650         * NEWS, THANKS: Update.
6651         Suggestion by Joakim Tjernlund and Paolo Bonzini.
6652
6653 2010-06-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6654
6655         Optimize func_ltwrapper_scriptname to assume a cwrapper.
6656         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname): Do not
6657         call func_ltwrapper_executable_p again here, this function is
6658         documented to allow being called with wrapper executables.
6659
6660         Fix bootstrap script to cope with changed AC_INIT arguments.
6661         * bootstrap: When extracting PACKAGE and VERSION from AC_INIT
6662         arguments, be sure to remove a 'GNU ' prefix and lowercase the
6663         package name for PACKAGE.  Also set PACKAGE_NAME and PACKAGE_URL
6664         appropriately for GNU software.  Pass these variables to the
6665         make commands creating tests/package.m4 and other files.
6666         * Makefile.am (edit): Fix substitution of PACKAGE_NAME and
6667         PACKAGE_STRING.
6668         * libltdl/config/announce-gen.m4sh: Use @PACKAGE@ not
6669         @PACKAGE_STRING@.
6670
6671 2010-06-15  Peter Rosin  <peda@lysator.liu.se>
6672
6673         On Windows, find potential libs regardless of file name case.
6674         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD),
6675         libltdl/config/ltmain.m4sh (func_mode_link): On Windows,
6676         find potential libs regardless of file name case.
6677         * tests/nocase.at: New test, to check for regressions
6678         of the above.
6679         * Makefile.am: Add above new test.
6680         * doc/libtool.texi (libtool script contents): Document
6681         new variables.
6682         * NEWS: Updated.
6683
6684 2010-06-15  Philip Allison  <philip.allison@smoothwall.net>  (tiny change)
6685
6686         Avoid GCC -Wall compiler warning in dlopen self test.
6687         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Fix unused
6688         variable warning in test program.
6689         * THANKS: Update.
6690
6691 2010-06-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6692
6693         Fix cleaning of uninstalled w32 shell wrapper in subdirs.
6694         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not
6695         override global objdir variable, instead use odir for the
6696         directory of to-be-removed files.  Drop unneeded origobjdir.
6697         Report by Charles Wilson.
6698
6699 2010-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6700
6701         Enable colored Autotest testsuite output if available.
6702         * tests/testsuite.at: Move AT_INIT call down to late in the
6703         file, all prior code can go beforehand.
6704         Call AT_COLOR_TESTS if defined.
6705
6706 2010-06-14  Peter O'Gorman  <peter@pogma.com>
6707
6708         Pass resident test with --disable-shared too.
6709         * tests/resident.at: use LTDL_SET_PRELOADED_SYMBOLS.
6710
6711 2010-06-13  Peter O'Gorman  <peter@pogma.com>
6712
6713         Test with --disable-shared at release time too.
6714         * HACKING: Note it.
6715
6716         Avoid failure for --disable-shared.
6717         * tests/lt_dladvise.at: Hack.
6718
6719         Use LTDL_SET_PRELOADED_SYMBOLS to avoid failure.
6720         * tests/exceptions.at: Use it.
6721
6722 2010-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6723
6724         Print Libtool project URL in program --help output.
6725         * configure.ac (AC_INIT): Set PACKAGE argument to `GNU Libtool',
6726         so Autoconf knows this is GNU software.  For Autoconf < 2.64,
6727         if AC_PACKAGE_URL is not defined, substitute PACKAGE_URL.
6728         * Makefile.am (edit): Substitute PACKAGE_URL.
6729         ($(srcdir)/tests/package.m4): Also depend on Makefile.am.
6730         Define AT_PACKAGE_URL, for `tests/testsuite --help' output.
6731         * libltdl/config/getopt.m4sh (func_help): Also extract comment
6732         lines that mention a home page and general GNU help.
6733         * libltdl/config/ltmain.m4sh: Use @PACKAGE_BUGREPORT@ instead of
6734         hard-coded list address.  Also mention Libtool home page and
6735         general GNU help web page.
6736         * libtoolize.m4sh: Likewise.
6737
6738 2010-06-12  Peter Rosin  <peda@lysator.liu.se>
6739             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6740
6741         Improve libdir usage from within ltdl on MinGW.
6742         * libltdl/ltdl.c (parse_dotla_file) [__WINDOWS__]: Read the
6743         libdir entry in the .la file, but accept it only if it is not
6744         a unix-style absolute name.
6745         * tests/ltdl-libdir.at: New test that checks if ltdl finds an
6746         installed module via the libdir variable in the .la file.  On
6747         MinGW, use a Windows-style libdir name including drive spec.
6748         * Makefile.am: Add above.
6749
6750 2010-06-11  Peter O'Gorman  <peter@pogma.com>
6751
6752         Skip bindir install test if we're not building shared.
6753         * tests/bindir.at: Skip install test if necessary.
6754         * THANKS: Update.
6755         Report by Michael E Faenza.
6756
6757 2010-06-11  Gary V. Vaughan  <gary@gnu.org>
6758
6759         Use getopt.m4sh to generate libtoolize option parser.
6760         * libtoolize.m4sh: Replace hand written shell code with a
6761         call to M4SH_GETOPTS.  Move some premature initialization
6762         from the preamble to the main part of the script.  Exit with
6763         an error on spurious additional non-option arguments.
6764         (envopts): Integrate LIBTOOLIZE_OPTIONS pre-parsing into the
6765         main option parsing loop.
6766         (opt_copy): Use in place of and in the reverse sense of the
6767         old opt_link variable.
6768
6769 2010-06-10  Peter O'Gorman  <peter@pogma.com>
6770
6771         Create reloadable object files with non-pic objects too.
6772         * libltdl/config/ltmain.m4sh: When not building a shared
6773         library, use the non-pic objects to create a reloadable
6774         object, because pic objects do not exist.
6775
6776 2010-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6777
6778         Ensure libltdl is up to date for check-local.
6779         * Makefile.am (LTDL_BOOTSTRAP_DEPS): New variable.
6780         (all-local): Use it to simplify dependencies.
6781         (testsuite_deps_uninstalled): Add $(LTDL_BOOTSTRAP_DEPS).
6782         Report by Peter Rosin.
6783
6784 2010-06-10  Gary V. Vaughan  <gary@gnu.org>
6785
6786         Support shell tracing inside functions even with ksh.
6787         * libltdl/config/getopt.m4sh: Set $opt_debug to be either `:'
6788         or `set -x' depending on whether --debug was parsed to match
6789         usage in libtoolize.m4sh and ltmain.m4sh.
6790         * clcommit.m4sh, libltdl/config/announce-gen.sh: Instead of
6791         `$opt_debug && ...', use `test "$opt_debug" != ":" && ...'.
6792         * clcommit.m4sh, libltdl/config/announce-gen.m4sh,
6793         libltdl/config/getopt.m4sh, libltdl/connfig/mailnotify.m4sh:
6794         Execute at the start of functions to cater to ksh, which
6795         resets `-x' inside shell functions.
6796
6797         Fix a typu in HACKING.
6798         * HACKING (Release Procedure): s/Makeflie/Makefile/.
6799
6800 2010-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6801
6802         Factorize testing gcj installation in the testsuite.
6803         * tests/testsuite.at (LT_AT_TAG): For the GCJ tag, actually
6804         try to compile a .java file when deciding whether to skip.
6805         (LT_AT_EXEC_TAG): New macro, to also ensure runnability.
6806         * tests/convenience.at (Java convenience archives): Use
6807         LT_AT_EXEC_TAG, simplify accordingly.
6808         * tests/flags.at (passing lt_tag flags through libtool): Use
6809         m4_defn for tag so LT_AT_TAG works.
6810         * tests/infer-tag.at (GCJ inferred tag): Simplify.
6811         * THANKS: Update.
6812         Report by Warren Dodge.
6813
6814 2010-06-09  Peter O'Gorman  <peter@pogma.com>
6815
6816         Skip demo-nopic tests if SELinux policy will cause failure.
6817         * tests/demo-nopic.test: Check SELinux policy and skip if
6818         necessary.
6819
6820 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
6821
6822         Set SCM version number to 2.2.11a.
6823         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6824         number to 2.2.11a.
6825         * NEWS: Updated.
6826
6827         GNU Libtool 2.2.10 was released.
6828
6829         Prepare for next release.
6830         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version number
6831         to 2.2.10.
6832         * NEWS: Update version number.
6833
6834         Fix a quoting bug with ./commit -a 'A U Thor'.
6835         * clcommit.m4sh (func_commit): Use func_show_eval when calling
6836         git, so that the previously func_quote_for_eval()ed $git_flags is
6837         expanded properly.
6838
6839 2009-09-15  Peter Rosin  <peda@lysator.liu.se>
6840
6841         Don't try the MSYS libdir path on MinGW.
6842         * libltdl/ltdl.c (parse_dotla_file) [mingw]: The absolute
6843         libdir path in the .la file is recorded as an MSYS (POSIX
6844         style) path. Make sure it isn't tried when locating the
6845         shared library.
6846         * NEWS: Updated.
6847
6848 2010-06-09  Gary V. Vaughan  <gary@gnu.org>
6849
6850         Simplify license variations, and add missing license texts.
6851         * ChangeLog, ChangeLog.1996, ChangeLog.1997, ChangeLog.1998,
6852         ChangeLog.1999, ChangeLog.2000, ChangeLog.2001, ChangeLog.2002,
6853         ChangeLog.2003, ChangeLog.2004, ChangeLog.2005, ChangeLog.2006,
6854         ChangeLog.2007, ChangeLog.2008, ChangeLog.2009, NEWS: Add
6855         all-permissive license.
6856         * HACKING, README, README.alpha, TODO: Relax license to RMS
6857         encouraged all-permissive terms.
6858         * libltdl/README: Ditto. I added the original license text in
6859         2007, and there's no need for it to be so long for such a trivial
6860         file.
6861         * libltdl/config/getopt.m4sh, libltdl/general.m4sh: Cvs-utils is
6862         dead, and I am the author of these files, so consolidated license
6863         terms to match regular Libtool licensing.
6864         * HACKING (Licensing Rules): Update wording, and list of files for
6865         the all permissive license.
6866         (GPL with CVS-Utils exception clause): Removed.  No files have these 
6867         license any more.
6868         (GPL with Libtool exception clause): Ditto, only libltdl/README
6869         used to be distributed with this variation.
6870         * AUTHORS: Add GPL license text.
6871         
6872         Fix a type in the 2.2.8 release notes.
6873         * NEWS: s/ romoted/ promoted/ in the 2.2.8 release notes.
6874
6875         Don't warn about the blank line inserted into git commit message.
6876         * clcommit.m4sh: When searching for accidental commits of mutliple
6877         changes, ignore the second line of the message, which we inserted
6878         earlier to support "git log --oneline".
6879
6880         Enable correct extraction of multiline copyright from --version.
6881         * libltdl/config/getopt.m4sh: Wrap copyright notice at 76
6882         columns.
6883         (func_version): Don't omit spaces when merging multiline copyright
6884         notices.
6885         * clcommit.m4sh, libtoolize.m4sh: Wrap copyright notice at 76
6886         columns.
6887
6888         * NEWS (2.2.8): BlueGene compiler tests were performed on BG/P
6889         systems, not BG/L.
6890         Reported by Christian Rössel <christian.roessel@gmx.de>
6891
6892 2010-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6893
6894         Fix testsuite helper macros to not hide failure.
6895         * tests/testsuite.at (LT_AT_CONFIGURE, LT_AT_MAKE):
6896         Do not wrap AT_CHECK in a subshell, so that failures are
6897         properly propagated; instead, move environment changes inside
6898         the AT_CHECK code.
6899         Report and analysis by Peter Rosin.
6900
6901         Avoid autom4te warning about unnamed diversion.
6902         * libltdl/config/getopt.m4sh: Use diversion name KILL not -1.
6903
6904 2010-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6905
6906         Make versioning test stricter for w32, enable shared libs.
6907         * tests/versioning.at (versioning): Add -no-undefined to
6908         LDFLAGS.
6909         (test_uninstalled): Also move $bindir out of the way
6910         temporarily.
6911
6912         Fix versioning test for LDFLAGS=-Wl,--as-needed.
6913         * tests/versioning.at (versioning): For the library update
6914         hypotheses, ensure the unchanged library libb isn't accidentally
6915         relinked against the new liba, by not reinstalling libb.
6916         Fixes testsuite failure for the incompatible update case with
6917         LDFLAGS=-Wl,--as-needed.
6918         * THANKS: Update.
6919         Report by Ryan Hill.
6920
6921 2010-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6922
6923         Rewrite manual intro to be gender-neutral.
6924         * doc/libtool.texi (Introduction): Use gender-neutral
6925         formulation when addressing developers.
6926
6927 2010-06-05  Gary V. Vaughan  <gary@gnu.org>
6928
6929         Update and simplify all m4sh scripts to use latest getopt.m4sh.
6930         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Rewrite option
6931         parsing loop over M4SH_GETOPTS macro, and adjust all clients of
6932         option variables to use generated option names.
6933
6934         Add missing quote for literal ? in a shell case statement.
6935         * libltdl/config/getopt.m4sh (m4go_shortnoargs): Quote initial ?
6936         correctly for use in a shell case statement.
6937
6938         Quote command line arguments after --rcfile properly.
6939         * libltdl/config/announce-gen.m4sh (--rcfile): Quote remaining
6940         arguments shell variable expression correctly for eval.
6941         
6942         Shift correctly in numbered option argument collection.
6943         * libltdl/config/getopt.m4sh (_m4go_option): Argument list also
6944         needs to be `shift'ed in the shell option loop after processing a
6945         numbered argument collection.
6946
6947         Fetch from new upstream host for config.guess and config.sub.
6948         * Makefile.maint (WGET_CGIT): Location of newest config.guess and
6949         config.sub upstream.
6950         (fetch): Fetch config.guess and config.sub from WGET_CGIT, rather
6951         than no-longer-updating WGET_SGO location.
6952
6953         Update generated upload directive file format to v1.1.
6954         * Makefile.maint (git-dist, diffs): Update to generate v1.1 format
6955         directive files for ftp://ftp-upload.gnu.org/incoming/ftp.
6956
6957         Fix web manual generation details in release instructions.
6958         * HACKING (Release Procedure): Move the instruction for generating
6959         web manuals for a new release to before the instruction that bumps
6960         the version numbers to the post release values.
6961
6962         Set SCM version number to 2.2.9a.
6963         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6964         number to 2.2.9a.
6965         * NEWS: Updated.
6966
6967         GNU Libtool 2.2.8 was released.
6968
6969         Prepare for next release.
6970         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6971         number to 2.2.8.
6972         * NEWS: Update version number.
6973         * INSTALL, libltdl/config/install-sh, libltdl/config/config.guess,
6974         libltdl/config/config.sub, libltdl/config/texinfo.tex: Updated
6975         from canonical source.
6976
6977         Provide an m4sh reimplementation of announce-gen.
6978         * libltdl/config/getopt.m4sh (M4SH_GETOPTS): New macro that takes
6979         a quoted m4 list of command line options to be parsed, and
6980         generates the shell code to parse those options and collect the
6981         results into appropriately named 'opt_xxx' shell variables.  Also,
6982         add some private supporting macros, and improve the comments
6983         radically.
6984         * libltdl/config/announce-gen.m4sh: New file, to generate and
6985         optionally post (an enhancement over the gnulib perl script of the
6986         same name) a release announcement.
6987         * Makefile.maint (announce-gen): Build a new announce-gen script
6988         in the build directory, from the contents of
6989         libltdl/config/announce-gen.m4sh.
6990         * HACKING (Release Procedure): Update the instructions to use
6991         announce-gen.
6992         (Alpha release note template, Full release note template):
6993         Removed.
6994
6995 2010-05-22  Gary V. Vaughan  <gary@gnu.org>
6996
6997         Support "git log --oneline" in generated commit messages.
6998         * clcommit.m4sh (func_check_commit_msg): Insert an empty line
6999         between the ChangeLog entry summary line and the ChangeLog entry
7000         body, so that "git log --oneline" works properly.
7001         Bump copyright and version number.
7002         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7003
7004 2010-05-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7005
7006         * HACKING: Set Reply-To: in announcement emails.
7007
7008 2010-05-21  Gary V. Vaughan  <gary@gnu.org>
7009
7010         Set SCM version number to 2.2.7c.
7011         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
7012         number to 2.2.7c.
7013         * NEWS: Updated.
7014
7015         GNU Libtool 2.2.7b  was released.
7016
7017         Prepare for next release candidate.
7018         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
7019         number to 2.2.7b.
7020         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
7021         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: These files
7022         have been updated without a serial bump since the last release.
7023         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Bump Revision, to
7024         account for bugfixes since the last release.
7025         * libltdl/config/install-sh, libltdl/config/config.guess,
7026         libltdl/config/config.sub, libltdl/config/texinfo.tex,
7027         INSTALL: Updated from canonical source.
7028         * NEWS: Update with missing entries from ChangeLog.
7029         * HACKING: Note workaround for developer tool-path leakage bug.
7030
7031         Skip some tests in --disable-ltdl-install mode.
7032         * tests/dlloader-api.at, tests/exceptions.at,
7033         tests/lalib-syntax.at, tests/loadlibrary.at,
7034         tests/lt_dlopenext.at, tests/resident.at: Detect when these
7035         tests try to link against the not installed libltdl.la, and
7036         skip rather than FAIL.
7037
7038 2010-05-05  Peter Rosin  <peda@lysator.liu.se>
7039
7040         Clarify versioning algorithm documentation.
7041         * doc/libtool.texi (Updating version info): Be explicit
7042         about setting age to zero on interface change.
7043         Reported by Jef Driesen <jefdriesen@hotmail.com>
7044
7045 2010-05-04  Peter O'Gorman  <peter@pogma.com>
7046
7047         Ranlib is required with -force_load and fat archives.
7048         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Run
7049         ranlib.
7050         Reported by Jeremy Huddleston <jeremyhu@apple.com>
7051
7052 2010-04-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7053
7054         Fix incompatible struct declarations.
7055         * doc/libtool.texi (Dlpreopening): Remove broken documentation
7056         of lt_dlsymbol and lt_dlsymlist.  Document typedef lt_dlsymlist
7057         and symbol lt_preloaded_symbols according to the implementation.
7058         * tests/demo/dlmain.c (lt_symlist): Make struct anonymous ...
7059         (lt_dlsymlist): ... and typedef to this name.
7060         (lt_preloaded_symbols, main): Adjust.
7061         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
7062
7063 2010-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7064
7065         Use linker_flags not compiler_flags with $LD.
7066         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]
7067         <archive_cmds, archive_expsym_cmds>: With xlf and bgxlf
7068         compilers, when linking with $LD, use $linker_flags not
7069         $compiler_flags.
7070
7071 2010-03-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7072
7073         Add FAQ, and FAQ entry for flags stripped at library link time.
7074         * doc/libtool.texi (FAQ, Stripped link flags): New nodes.
7075         (Wrapper executables): Replace bug address with macro.
7076         (Compile mode, Link mode): Document `-Wc,' and `-Xcompiler '
7077         semantics better.
7078         * libltdl/config/ltmain.m4sh (func_mode_link): Rewrite comment
7079         for the flags that are passed through.
7080         Prompted by reports from Simon Richter <Simon.Richter@hogyros.de>,
7081         Török Edwin <edwintorok@gmail.com> and
7082         Åke Sandgren <ake.sandgren@hpc2n.umu.se>.
7083
7084 2010-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7085
7086         Fix preloader symbol list declaration in libltdl.
7087         * libltdl/ltdl.c (preloaded_symbols): Fix declaration to include
7088         array brackets.
7089         (lt_dlinit): Do not take address of preloaded_symbols.
7090
7091         Fix typo in libtool --help output.
7092         * libltdl/config/ltmain.m4sh (func_mode_help): Fix typo in help
7093         output.
7094
7095         Fix a couple of documentation errors.
7096         * doc/libtool.texi (Autoconf macros): Improve hyphenation.
7097         (Using libltdl): libltdl uses the Lesser General Public License,
7098         not the Library General Public License.
7099
7100         Do not use @sc nor @acronym in the manual.
7101         * doc/libtool.texi: Remove all usage of @sc.
7102
7103 2010-03-19  Chris Demetriou  <cgd@google.com>
7104
7105         Sort output of 'find' to enable deterministic builds.
7106         * libltdl/config/ltmain.m4sh (func_extract_archives): Sort
7107         output of 'find'.
7108         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Likewise.
7109         * THANKS: Update.
7110
7111 2010-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7112
7113         Unconditionally normalize LC_ALL, LANGUAGE in libtool script.
7114         * libltdl/config/ltmain.m4sh: Unconditionally set LC_ALL and
7115         LANGUAGE to 'C', to avoid semantic differences on MinGW under
7116         Chines locale.  SCO issues with e.g. LANG=C are not known to
7117         be relevant today any more.
7118         Report by Pete Batard <pbatard@gmail.com> and Xiaofan Chen
7119         <xiaofanc@gmail.com>.
7120
7121 2010-03-17  Peter Rosin  <peda@lysator.liu.se>
7122
7123         Preserve the last error when restoring the error mode.
7124         * libltdl/loaders/loadlibrary.c (wm_open): Don't rely on
7125         SetThreadErrorMode (or SetErrorMode) to not clobber the last
7126         error.
7127         Report by Ralf Wildenhues.
7128
7129         Use Get/SetThreadErrorMode if they are available.
7130         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): Replaced...
7131         (wrap_getthreaderrormode): ...by this function that checks
7132         first for GetThreadErrorMode, then GetErrorMode and makes use
7133         of either of those or...
7134         (fallback_getthreaderrormode): ...else falls back to this
7135         replacement function that implements the old workaround, which
7136         was previously implemented in...
7137         (fallback_geterrormode): ...this now renamed function.
7138         (geterrormode): Replaced...
7139         (getthreaderrormode): ...by this function pointer that points
7140         at either of wrap_getthreaderrormode, GetThreadErrorMode,
7141         GetErrorMode or fallback_getthreaderrormode.
7142         (wrap_setthreaderrormode): New function that checks if
7143         SetThreadErrorMode is supported by the system and makes use of
7144         it if it is.
7145         (fallback_setthreaderrormode): New function that is used
7146         otherwise that implements the old version using SetErrorMode.
7147         (setthreaderrormode): New function pointer that points at
7148         either of wrap_setthreaderrormode, SetThreadErrorMode or
7149         fallback_setthreaderrormode.
7150         (vm_open): Adjust to the above.
7151
7152 2010-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7153
7154         Detect Sun compiler suite with 'sun'-prefixed names.
7155         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
7156         (_LT_SYS_HIDDEN_LIBDEPS) [solaris]: Accept compiler names sunCC,
7157         sunf77, sunf90, sunf95 in addition to CC, f77, f90, f95.
7158         * NEWS: Update.
7159         Report by Vadim Zeitlin.
7160
7161 2010-02-28  Pierre Ossman  <ossman@ossman.lkpg.cendio.se>  (tiny change)
7162             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7163
7164         Fix deplibs check fallback for 64-bit Windows and Windows CE.
7165         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Accept file formats
7166         'pe-arm-wince' and 'pe-x86-64'.  Add note about consistency with ...
7167         * libltdl/config/ltmain.m4sh (func_win32_libid): ... the respective
7168         pattern here; sync pattern from the former.
7169         * tests/deplibs-mingw.at (deplibs without file command): New
7170         file, new test.
7171         * Makefile.am (TESTSUITE_AT): Update.
7172         * NEWS: Update.
7173
7174 2010-02-24  Scott McCreary  <scottmc2@gmail.com>  (tiny change)
7175
7176         Update search path on Haiku for legacy system directory.
7177         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [haiku]
7178         <sys_lib_dlsearch_path_spec>: Replace legacy
7179         /boot/beos/system/lib directory with /boot/system/lib.
7180         * THANKS: Update.
7181
7182 2010-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7183
7184         manual: fix detailmenu ordering.
7185         * doc/libtool.texi (Top): Add section for `Linking executables'
7186         in the detailmenu.
7187
7188 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
7189
7190         Guard against strerror()==NULL
7191         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main):
7192         Check return value of strerror() using nonnull().
7193         (func_emit_cwrapperexe_src:find_executable): Ditto.
7194         (func_emit_cwrapperexe_src:chase_symlinks): Ditto.
7195
7196 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
7197
7198         Document wrapper changes.
7199         * NEWS: Indicate new feature and incompatibility.
7200         * doc/libtool.texi [detailmenu]: Add reference to subsection
7201         'Wrapper executables for programs', in Platform Quirks category.
7202         [Linking executables]: Mention wrapper executables, in
7203         addition to wrapper scripts. Add menu referencing subsection
7204         'Wrapper executables for programs'.
7205         [Wrapper executables for programs]: New subsection. Documents
7206         cwrapper rationale and command line options.
7207
7208 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
7209
7210         Add --lt-* options to shell wrapper
7211         * libltdl/config/ltmain.m4sh (func_emit_wrapper): Call
7212         func_parse_lt_options early. Use func_exec_program.
7213         (func_emit_wrapper:func_parse_lt_options): New function.
7214         (func_emit_wrapper:func_lt_dump_args): New function.
7215         (func_emit_wrapper:func_exec_program_core): New function.
7216         (func_emit_wrapper:func_exec_program): New function.
7217
7218 2010-02-21  Charles Wilson <libtool@cwilson.fastmail.fm>
7219
7220         Enable runtime cwrapper debugging; add tests
7221         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
7222         Update comments. Initialize program_name. Eliminate _LENGTH
7223         variables for string constants. In debug mode, print a
7224         banner with known content before any other output. Remove
7225         LTWRAPPER_DEBUGPRINTF macro. Add constants and variables
7226         to support new --lt-debug option.
7227         (func_emit_cwrapperexe_src:ltwrapper_debugprintf): Renamed to...
7228         (func_emit_cwrapperexe_src:lt_debugprintf): this. Only print
7229         messages if lt_debug != 0. Ensure appearance of messages
7230         conforms to GCS.
7231         (func_emit_cwrapperexe_src:lt_fatal): Ditto.
7232         (func_emit_cwrapperexe_src:lt_error_core): Ditto.
7233         (func_emit_cwrapperexe_src): Update all callers to lt_fatal.
7234         Update all users of LTWRAPPER_DEBUGPRINTF (()) to call
7235         lt_debugprintf () directly.
7236         (func_emit_cwrapperexe_src:main): Consolidate option parsing.
7237         Ensure first use of lt_debugprintf occurs after option parsing.
7238         Add stanza to parse for --lt-debug and set lt_debug variable.
7239         Use strcmp rather than strncmp, where safe.
7240         * tests/cwrapper.at: Add new tests for --lt-debug and
7241         -DLT_DEBUGWRAPPER.
7242
7243 2010-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7244
7245         Use --email with gendocs.sh.
7246         * Makefile.maint (web-manual): Pass bug reporting address to
7247         gendocs.sh.
7248
7249         Make testsuite code C++ clean again.
7250         * tests/resident.at (resident modules): Fix for C++.
7251
7252 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
7253             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7254
7255         Testsuite exposure for dlloader API.
7256         * tests/dlloader-api.at: New file, new test.
7257         * Makefile.am (TESTSUITE_AT): Update.
7258
7259 2010-01-29  Peter Rosin  <peda@lysator.liu.se>
7260
7261         * tests/loadlibrary.at: Fix C++ issues.
7262
7263 2010-01-20  Peter Rosin  <peda@lysator.liu.se>
7264
7265         Report proper errors from the loadlibrary loader.
7266         * libltdl/loaders/loadlibrary.c (loadlibraryerror): New
7267         helper function that returns the latest Windows error as a
7268         string, or the provided default string on failure to do so.
7269         (LOADLIB_SETERROR): New macro that wraps previous to make it
7270         easy to use.
7271         (vm_open, vm_close, vm_sym): Make use of previous.
7272         (LOCALFREE): New macro to help free the Windows error string.
7273         (vl_exit): Make use of previous.
7274         * tests/loadlibarry.at: New file, new test that makes sure
7275         the loadlibrary loader reports non-standard error messages.
7276         * Makefile.am (TESTSUITE_AT): Add above test.
7277
7278 2010-01-02  Peter Rosin  <peda@lysator.liu.se>
7279
7280         Use GetErrorMode if it is available.
7281         * libltdl/loaders/loadlibrary.c (wrap_geterrormode): New
7282         function that checks if GetErrorMode is supported by the
7283         system and makes use of it if it is.
7284         (fallback_geterrormode): New function that is used otherwise
7285         that implements the old workaround.
7286         (geterrormode): New function pointer that points at either
7287         of the above or directly at GetErrorMode.
7288         (vm_open): Make use of the above.
7289
7290 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7291
7292         Ensure functions from resident modules work in atexit handlers.
7293         * tests/resident.at (resident modules): New file, new test.
7294         * Makefile.am (TESTSUITE_AT): Adjust.
7295         Report by Bob Friesenhahn.
7296
7297         Testsuite exposure for relative output file names and deplibs.
7298         * tests/deplib-in-subdir.at (deplib in subdir): New file, new
7299         test.
7300         * Makefile.am (TESTSUITE_AT): Update.
7301         Prompted by report from Bob Friesenhahn.
7302
7303 2010-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7304             Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7305
7306         Testsuite exposure for C++ exception handling.
7307         * tests/exceptions.at (C++ exception handling): New file, new
7308         test.
7309         * Makefile.am (TESTSUITE_AT): Update.
7310         Report by Bob Friesenhahn.
7311
7312 2010-01-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7313
7314         Bump copyright years.
7315         * ChangeLog.2009: New, rotated from ...
7316         * ChangeLog: ... here.
7317         * Makefile.am (EXTRA_DIST): Add ChangeLog.2009.
7318         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
7319         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
7320         * libtoolize.m4sh: Likewise.
7321
7322 2009-12-30  Peter Rosin  <peda@lysator.liu.se>
7323
7324         * libltdl/ltdl.c (lt_dlerror): Remove meaningless conditional.
7325
7326 2009-12-29  Peter Rosin  <peda@lysator.liu.se>
7327
7328         * libltdl/ltdl.c (file_not_found): Fix typos in code comment.
7329
7330 2009-12-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7331
7332         Replace last __oline__ instance.
7333         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Replace last
7334         __oline__ instance with $LINENO.
7335
7336 2009-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7337
7338         Improve parsing of .la files in libltdl.
7339         * libltdl/ltdl.c (trim): Do not dump core upon missing quote in
7340         module .la file.
7341         * tests/lalib-syntax.at (syntax of .la files): New file, new
7342         test.
7343         * Makefile.am (TESTSUITE_AT): Add tests/lalib-syntax.at.
7344         Report by Bob Friesenhahn.
7345
7346 2009-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7347
7348         Sane fallback initialization of $ECHO from $as_echo.
7349         * libltdl/config/general.m4sh: Use 'printf %s\n' if $as_echo is
7350         unset.
7351         * tests/testsuite.at: Likewise.
7352         * THANKS: Update.
7353         Report by Vadim Zeitlin and Peter Rosin.
7354
7355 2009-12-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7356
7357         lt_dlloader_remove and lt_dlloader_find accept const arguments.
7358         * libltdl/lt_dlloader.c (lt_dlloader_remove, lt_dlloader_find):
7359         Accept `const char *' arguments, as documented.  Cast them to
7360         `void *' for the slist machinery.
7361         * libltdl/libltdl/lt_dlloader.h: Adjust prototypes.
7362
7363         Test and fix slist.c.
7364         * libltdl/libltdl/slist.h: Include stddef.h, for size_t.
7365         (slist_remove): Return pointer to SList, not void.
7366         * libltdl/slist.c: Include stdlib.h, for malloc and free.
7367         (slist_remove): Adjust prototype as above.
7368         (slist_sort): Do not loop forever on one-item list.
7369         * tests/slist.at (SList functionality): New file, new test.
7370         * Makefile.am (TESTSUITE_AT): Add tests/slist.at.
7371
7372 2009-11-30  Peter Rosin  <peda@lysator.liu.se>
7373
7374         Please C++ compilers when calling strrchr.
7375         * libltdl/ltdl.c (has_library_ext): Match the return type of
7376         strrchr with the first argument to please C++ compilers.
7377         Report by Peter O'Gorman.
7378
7379 2009-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7380
7381         Fix bindir and dlopen tests for C++ compilers (CC=g++).
7382         * tests/bindir.at (bindir basic lib test, bindir install tests):
7383         Include stdlib.h rather than declaring abort.
7384         * tests/lt_dlopenext.at (lt_dlopenext error messages): Use
7385         `extern "C"' annotation for dlsym'ed function in C++ mode.
7386
7387 2009-11-25  Peter Rosin  <peda@lysator.liu.se>
7388
7389         Fix cross build issue in execute mode test.
7390         * tests/execute-mode.at: Skip test for cross builds.
7391
7392 2009-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7393
7394         Enable symbol versioning with the GNU gold linker.
7395         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Accept 'GNU gold'
7396         in the version string.
7397         * NEWS, THANKS: Update.
7398         Report by Peter Fritzsche.
7399
7400         Tighten regex for Portland C++ compiler for version 10.
7401         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [linux]:
7402         Match a dot after version 1 through 5, so 10 and up don't match,
7403         and use weak symbols.
7404         * THANKS: Update.
7405         Report by Jeff Squyres and Brent Leback.
7406
7407 2009-11-16  Peter O'Gorman  <peter@pogma.com>
7408
7409         Update libltdl version to match 2.2.6b release.
7410         * libltdl/Makefile.inc: Make version 9:1:2
7411
7412 2009-11-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
7413
7414         Don't load module.la from current directory by default.
7415         * libltdl/ltdl.c (try_dlopen): Do not attempt to load an
7416         unqualified module.la file from the current directory (by
7417         default) since doing so is insecure and is not compliant with
7418         the documentation.
7419         * tests/testsuite.at: Qualify access to module.la file in
7420         current directory so that test passes.
7421
7422 2009-11-14  Peter O'Gorman  <peter@pogma.com>
7423
7424         Only use preopen loader to load preopened archives
7425         * libltdl/ltdl.c: Limit checking of .a to preopen loader.
7426         * tests/lt_dlopen_a.at: Add test.
7427         * Makefile.am: Add test.
7428
7429 2009-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7430
7431         Recognize `pgfortran' as Portland compiler.
7432         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS):
7433         Accept `pgfortran*' too.
7434         Report by Jeff Squyres.
7435
7436 2009-11-04  Alexandre Oliva  <aoliva@redhat.com>
7437             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7438
7439         Fix verbose link extraction for multiply reconfigured GCC.
7440         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
7441         <output_verbose_link_cmd>: Drop GCC lines "Configured with" that
7442         may contain unrelated flags.
7443
7444 2009-11-02  Eric Blake  <ebb9@byu.net>
7445
7446         Allow gcc builds with -Wall -Werror.
7447         * libltdl/ltdl.c (try_dlopen): Use strlen rather than LT_STRLEN on
7448         an array that will never be NULL.
7449
7450 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7451
7452         Fix func_normal_abspath sed script for Solaris.
7453         * libltdl/config/general.m4sh (pathcar, pathcdr, removedotparts)
7454         (collapseslashes, finalslash): Use single quotes, for clarity.
7455         (removedotparts): Avoid \{N,M\} after subexpression \(...\), for
7456         Solaris /bin/sed.
7457
7458         Improve versioning algorithm documentation.
7459         * doc/libtool.texi (Updating version info): Repeat the
7460         algorithms in different, hopefully simpler terms.
7461         * THANKS: Update.
7462         Prompted by Richard B. Kreckel.
7463
7464 2009-11-01  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
7465
7466         Support for the Haiku operating system.
7467         * libltdl/config/ltmain.m4sh (func_mode_link): Add cases for
7468         `*-*-haiku*' alongside `*-*-beos*'.
7469         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
7470         (_LT_CHECK_MAGIC_METHOD, LT_LIB_M, _LT_COMPILER_PIC)
7471         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Add cases for
7472         `haiku*'.
7473         * NEWS, THANKS: Update.
7474
7475 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7476
7477         Fix quoting of AS, DLLTOOL, and OBJDUMP for the libtool script.
7478         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Quote values of
7479         $AS, $DLLTOOL, and $OBJDUMP, so they can contain arguments.
7480         * THANKS: Update.
7481         Report by Matthijs Kooijman.
7482
7483 2009-09-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7484
7485         Initial support for the Cuda Compiler Driver on Linux.
7486         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept source
7487         file extensions `.cu' and `.cup'.
7488         * libltdl/m4/libtool.m4 (_LT_COMPILER_NO_RTTI, _LT_COMPILER_PIC)
7489         (_LT_LINKER_SHLIBS): Support for `nvcc' compiler driver.
7490         * NEWS, THANKS: Update.
7491         Report by Mahesh Narayanamurthi.
7492
7493 2009-09-12  Dave Korn  <dave.korn.cygwin@googlemail.com>
7494
7495         Control where win32 DLLs get installed.
7496         * libltdl/config/general.m4sh (func_normal_abspath): New function.
7497         (func_relative_path): Likewise.
7498         * libltdl/config/ltmain.m4sh (func_mode_help): Document "-bindir".
7499         (func_mode_link): Accept new "-bindir" option and use it, if
7500         supplied, to place Windows DLLs.
7501         * tests/bindir.at: New file for install tests using "-bindir".
7502         * Makefile.am (TESTSUITE_AT): Add bindir.at.
7503         * doc/libtool.texi (Link Mode): Update documentation.
7504         * NEWS, THANKS: Update.
7505
7506 2009-09-11  Akim Demaille  <demaille@gostai.com>
7507
7508         libtool: clean libconftest.a.
7509         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Here.
7510
7511 2009-09-10  Peter Rosin  <peda@lysator.liu.se>
7512
7513         func_win32_libid doesn't work with MS dumpbin
7514         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): The $NM
7515         interface is assumed to be BSD nm in func_win32_libid, so
7516         check for that before using it.
7517
7518 2009-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7519
7520         Allow dlopen self test to work with gcc's -fvisibility=hidden.
7521         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Declare default
7522         visibility for the symbol we are going to test dlopen (NULL)
7523         when a GCC version is used that understands the visibility
7524         attribute, under the assumption that if -fvisibility=hidden
7525         will be used, the user code will be sufficiently annotated
7526         for visibility of needed symbols from the main executable.
7527         * THANKS: Update.
7528         Report by Josh Hursey against OpenMPI.
7529
7530         Fix and split recent testsuite addition for compile/link flags.
7531         * tests/flags.at (passing flags through libtool): Split into ...
7532         (passing CC flags through libtool)
7533         (passing CXX flags through libtool)
7534         (passing F77 flags through libtool)
7535         (passing FC flags through libtool)
7536         (passing GCJ flags through libtool): ... these five tests,
7537         factorized with m4_foreach.  Fix F77 and FC compile and link
7538         commands; add GCJ tag.  Use LT_AT_TAG to correctly skip tags
7539         for which no compiler exists.  Use $EXEEXT where appropriate.
7540         Drop unneeded use of reload_cmds.
7541         Reports by Peter Rosin and Peter O'Gorman.
7542
7543 2009-09-07  Peter O'Gorman  <peter@pogma.com
7544
7545         Fix redirect in test case.
7546         * tests/darwin.at: Fix stderr redirect.
7547
7548         Use darwin's -force_load flag if available for whole_archive_flag_spec
7549         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check for
7550         -force_load and use it if there.
7551         * tests/darwin.at: Add a simple test.
7552
7553 2009-09-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7554
7555         Testsuite keyword 'interactive' and check-* rules.
7556         * Makefile.am (testsuite_deps, testsuite_deps_uninstalled):
7557         New variables.
7558         (check-local, installcheck-local): Use them.
7559         (check-interactive, check-noninteractive): New rules.
7560         * tests/link-order2.at (Link order of deplibs),
7561         tests/static.at (static linking flags for programs): Add keyword
7562         `interactive'.
7563         * doc/libtool.texi (Test descriptions): Document all keywords
7564         used in the Libtool test suite.
7565         * NEWS: Update.
7566
7567         Fix failure test in the presence of --with-pic or -prefer-pic.
7568         * tests/fail.at (Failure tests): Run non-PIC failure test only
7569         if pic_mode is 'default' or 'no', rather than 'default' or 'yes'
7570         and also -prefer-pic has not been passed in $CFLAGS.
7571         * THANKS: Update.
7572         Report by Donn Washburn.
7573
7574         Add testsuite exposure for passing of compiler and linker flags.
7575         * tests/flags.at (passing flags through libtool): New file, new
7576         test, for bug fixed in previous commit.
7577         * Makefile.am (TESTSUITE_AT): Add tests/flags.at.
7578
7579 2009-09-04  Peter Rosin  <peda@lysator.liu.se>
7580
7581         Make -Wc,FLAG behave like -Xcompiler FLAG in link mode.
7582         * libltdl/config/ltmain.m4sh (func_mode_link): Remove "-Wc,"
7583         instead of replacing it with "$wl" when linking programs
7584         through the compiler driver, just as is the case when linking
7585         libraries.
7586         * NEWS: Update.
7587
7588 2009-08-23  Lennart Poettering  <lennart@poettering.net>  (tiny change)
7589
7590         Shut up prototype warnings with recent GCC and -Wstrict-prototypes.
7591         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Use recent
7592         GCC's diagnostic pragma to override a -Wstrict-prototypes
7593         setting for the symbol list code.
7594         * THANKS: Update.
7595
7596 2009-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7597
7598         Remove __oline__ from macros, for less spurious configure diffs.
7599         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
7600         (_LT_COMPILER_C_O, LT_PATH_NM): Replace __oline__ instances with
7601         $LINENO.
7602         * NEWS: Update.
7603
7604 2009-07-24  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
7605
7606         Fixup 'execute mode' test for w32.
7607         * tests/execute-mode.at (execute mode): Add missing $EXEEXT.
7608         (LDFLAGS): Add -no-undefined.
7609
7610 2009-07-01  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
7611             Charles Wilson  <libtool@cwilson.fastmail.fm>
7612
7613         [CXX] Use correct export_dynamic_flag_spec for PE-COFF $hosts
7614         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [cygwin*|mingw*|pw32*|cegcc*]:
7615         Define export_dynamic_flag_spec as -Wl,--export-all-symbols here as well
7616         (see commit 5f2bbb494a2753afb2878c399cfd8316b7403a5b).
7617
7618 2009-06-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
7619
7620         [mingw] Improve sys_lib_search_path_spec detection.
7621         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Fix handling
7622         of dos-style paths when parsing $CC -print-search-dirs output.
7623
7624 2009-06-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
7625
7626         Finish adding alias for obsoleted AC_LIBTOOL_RC macro.
7627         * libltdl/m4/libtool.m4: Add reminder comment concerning
7628         aclocal-1.4 backwards compatibility.
7629         * libltdl/m4/lt~obsolete.m4: Remove unnecessary AC_DEFUN.
7630
7631 2009-06-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
7632
7633         Add alias for obsoleted AC_LIBTOOL_RC macro.
7634         * libltdl/m4/libtool.m4: Add alias for obsoleted
7635         macro AC_LIBTOOL_RC.
7636
7637 2009-06-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
7638
7639         Remove unneeded functions and options from cwrapper
7640         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
7641         [lt_opt_process_env_set]: Remove.
7642         [lt_opt_process_env_prepend]: Remove.
7643         [lt_opt_process_env_append]: Remove.
7644         [lt_split_name_value]: Remove.
7645         [file scope]: Don't declare removed functions. Remove
7646         constants and defines related to eliminated commandline
7647         options.
7648         [main]: Remove code related to eliminated commandline
7649         options --lt-env-set, --lt-env-prepend, --lt-env-append.
7650
7651 2009-06-19  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net> (tiny change)
7652             Charles Wilson  <libtool@cwilson.fastmail.fm>
7653
7654         Ensure LT_PATH_LD works when called before LT_INIT
7655         * libltdl/m4/libtool.m4 (LT_PATH_LD): AC_REQUIRE _LT_PROG_ECHO_BACKSLASH.
7656
7657 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7658
7659         Add versioning tests.
7660         * tests/versioning.at (versioning): New file, new test.
7661         * Makefile.am (TESTSUITE_AT): Adjust.
7662         Prompted by bug report from Mike Gorchak.
7663
7664 2009-06-14  Mike Gorchak  <mike@malva.ua>  (tiny change)
7665             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7666
7667         Fix versioning computation for QNX.
7668         * libltdl/config/ltmain.m4sh (func_mode_link): Set `$current'
7669         and `$age' properly for version_type `qnx'.
7670
7671 2009-06-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7672
7673         Avoid spurious localization testsuite failure on HP-UX/ia64.
7674         * tests/localization.at (localized compiler messages): Skip test
7675         if the compiler warning output contains `locale', for HP-UX.
7676
7677 2009-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7678
7679         Fix concurrent extraction of convenience libraries on Darwin.
7680         * libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): New libtool
7681         variable `lock_old_archive_extraction', set to `yes' on darwin.
7682         * doc/libtool.texi (libtool script contents): Document it.
7683         * libltdl/config/ltmain.m4sh (func_extract_an_archive): Lock
7684         `ar x' invocation if `lock_old_archive_extraction' is yes.
7685         * tests/darwin.at (darwin concurrent library extraction): New
7686         test.
7687         * NEWS: Update.
7688         Report by Akim Demaille.
7689
7690 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7691
7692         Fix testsuite failure of lt_dlopenadvise test on FreeMiNT.
7693         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Do not
7694         build moddepend for systems without shared libraries.
7695         Report by Alan Hourihane.
7696
7697         testsuite: avoid failures due to old Automake.
7698         * tests/configure-iface.at (installable libltdl)
7699         (--with-ltdl-include/lib, --with-included-ltdl):
7700         Speficy libmodule_la_SOURCES in Makefile.am as the default
7701         source file naming scheme changed in Automake 1.8.
7702         * tests/nonrecursive.at (_LT_AT_LTDL_SETUP): Require Automake
7703         1.9.6.
7704         * THANKS: Update.
7705         Report by Robert Garron.
7706
7707         testsuite: add missing @LIBS@ in a link command line.
7708         * tests/old-m4-iface.at (AC_WITH_LTDL): Use @LIBS@ when linking.
7709         Report by Patrice Fromy.
7710
7711         testsuite: cope when some installed libltdl.la has been removed.
7712         * tests/old-m4-iface.at (AC_WITH_LTDL): Pass --with-included-ltdl
7713         to configure, to ensure we do not accidentally link against a
7714         previously installed libltdl.so where the corresponding .la
7715         file has been removed, thus we do not add a run path, and the
7716         runtime linker then fails to find libltdl.so.7.
7717         * tests/configure-iface.at (--with-ltdl-include/lib): Remove -L
7718         flags from LDFLAGS to avoid picking up an installed libltdl
7719         outside of the default locations.
7720         * THANKS: Update.
7721         Prompted by report from Patrice Fromy.
7722
7723 2009-06-07  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
7724
7725         Fix C wrapper invocation for ceGCC hosts (cegcc and mingw32ce).
7726         * libltdl/config/ltmain.m4sh (func_mode_link): do not generate
7727         C wrapper for cegcc and mingw32ce hosts.
7728         (func_emit_cwrapperexe_src): remove useless check on
7729         __MINGW32CE__.
7730
7731 2009-06-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7732
7733         Don't pick up double-quotes from /etc/ld.so.conf on Ubuntu.
7734         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
7735         <sys_lib_dlsearch_path_spec>: Remove embedded double quotes from
7736         paths picked up from /etc/ld.so.conf.  Fixes libltdl compile
7737         failure on Ubuntu 7.10.
7738         * THANKS: Update.
7739         Report by Camilo La Rota.
7740
7741 2009-06-06  Richard Sandiford  <richards@transitive.com>
7742
7743         Fix GNU nm invocation for AIX.
7744         * libldtl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
7745         <export_symbols_cmds>: Modify the GNU-nm-on-AIX version so that
7746         it adds weak defined symbols to the export list.
7747
7748         Build AIX shared libraries with binutils 2.19.50+.
7749         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
7750         <lt_use_gnu_ld_interface>: New variable to control whether the
7751         GNU ld or native ld interface is used.  Set to "no" for GNU ld
7752         2.19.50+ on AIX, otherwise mirror $with_gnu_ld.  Update the
7753         warning message that is printed when using GNU ld on AIX.
7754         Adjust the whole_archive_flag_spec value for GNU ld on AIX.
7755         * NEWS, THANKS: Update.
7756
7757 2009-05-27  Peter O'Gorman  <peter@pogma.com>
7758
7759         Don't run compiler checks twice.
7760         libltdl/m4/libtool.m4 (_LT_PROG_FC, _LT_PROG_F77,
7761         _LT_PROG_CXX): Remove these macros.
7762         libltdl/m4/lt~obsolete.m4: Add removed macros here.
7763         libltdl/m4/libtool.m4 (_LT_LANG_FC_CONFIG, _LT_LANG_F77_CONFIG,
7764         _LT_LANG_CXX_CONFIG): Remove references to removed macros, and
7765         move functionality here.
7766         NEWS: Update.
7767
7768 2009-05-05  Rainer Emrich  <r.emrich@de.tecosim.com>  (tiny change)
7769             Peter Rosin  <peda@lysator.liu.se>
7770             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7771
7772         Fix cross compilation for HPPA/64 with a BSD file command.
7773         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
7774         [hpux10.20*, hpux11*, !ia64] <lt_cv_deplibs_check_method>:
7775         Match the dot in `PA-RISC 2.0' literally.  Adjust hppa*64*
7776         pattern to also match BSD `file' output, used in cross
7777         compilation setups.
7778         * THANKS: Update.
7779         Report and initial patch by Rainer Emrich, refined by Peter
7780         Rosin.
7781
7782 2009-05-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7783
7784         libtoolize: ignore trailing junk on scriptversion line.
7785         * libtoolize.m4sh (func_install_update): Ignore semi-colon or
7786         comment-sign and all following characters when parsing a
7787         `scriptversion' line in one of the auxiliary scripts; recent
7788         Automake-provided script have a stylized comment to induce
7789         Emacs to use UTC.
7790         Exposed by the `libtoolize config files serial update' test.
7791
7792 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7793
7794         Skip localization test when setlocale is not functional.
7795         * tests/localization.at (localized compiler messages): Skip
7796         test when there is a warning about `LC_ALL'.
7797         * THANKS: Update.
7798         Report by Maciej Helminiak.
7799
7800 2009-05-02  Alan Hourihane  <alanh@fairlite.co.uk>  (tiny change)
7801
7802         Improved support for FreeMiNT.
7803         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [mint]: Hard-code
7804         command line length limit to 8192, to avoid long test.
7805         * NEWS, THANKS: Update.
7806
7807 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7808
7809         Initial port for BlueGene BG/L.
7810         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
7811         (_LT_LANG_CXX_CONFIG) [linux]: Detect bgxl*, bgf*, mpixl*
7812         compilers.
7813         * NEWS, THANKS: Update.
7814         Report, feedback and testing by John R. Cary and Christian
7815         Rössel.
7816
7817         manual: fix grammaros.
7818         * doc/libtool.texi (Dlpreopening): Fix grammaro.
7819         (C header files): Remove duplicate word.
7820
7821         Allow through -tp=* at link time, for pgcc.
7822         * libltdl/config/ltmain.m4sh (func_mode_link): Portlant Group
7823         pgcc uses `-tp=PROCESSOR' for target processor selection; allow
7824         the flag through at link time.
7825         Report by Ethan Mallove.
7826
7827         Fix quoting of eval'ed variable.
7828         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Double-quote
7829         $lt_cv_sys_global_symbol_pipe for eval, like we do in ltmain,
7830         in order to preserve TABs and multiple adjacent whitespace.
7831         Report by Bruno Haible.
7832
7833 2009-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7834
7835         Cope better with missing `makeinfo' in `bootstrap'.
7836         * bootstrap: Update `./doc/notes.txt' last so missing `makeinfo'
7837         does not cause a broken tree.
7838         * THANKS: Update.
7839         Report by Christian Rössel.
7840
7841 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
7842             Charles Wilson  <libtool@cwilson.fastmail.fm>
7843
7844         [cygwin] Improve operation with gcc4
7845         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [cygwin*]:
7846         Add w32api to sys_lib_search_path_spec without overriding gcc's
7847         own search path.
7848
7849 2009-03-29  Yaakov Selkowitz  <yselkowitz@users.sourceforge.net>  (tiny change)
7850             Charles Wilson  <libtool@cwilson.fastmail.fm>
7851
7852         Use correct export_dynamic_flag_spec for PE-COFF $hosts
7853         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) 
7854         [cygwin*|mingw*|pw32*|cegcc*]: Define export_dynamic_flag_spec
7855         as -Wl,--export-all-symbols, as required by GNU ld for PE-COFF.
7856
7857 2009-03-29  Charles Wilson  <libtool@cwilson.fastmail.fm>
7858
7859         Improve compatibility with older automake
7860         * libltdl/m4/lt~obsolete.m4: Add AC_DEFUNs for
7861         _LT_PREPARE_SED_QUOTE_VARS and _LT_PROG_ECHO_BACKSLASH.
7862         Report by Yaakov Selkowitz.
7863
7864 2009-03-20  Peter Rosin  <peda@lysator.liu.se>
7865
7866         LT_OUTPUT should always create the libtool script.
7867         * libltdl/m4/libtool.m4 (LT_OUTPUT): Make LT_OUTPUT ignore the
7868         --no-create configure option, and assume that the user wants
7869         to use an up-to-date libtool script if the LT_OUTPUT macro is
7870         present.
7871         * tests/early-libtool.at: Make sure we do not regress.
7872
7873 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
7874
7875         Don't settle for any dumpbin/link program as name lister.
7876         * libltdl/m4/libtool.m4 (LT_PATH_NM): When locating dumpbin or
7877         link -dump, check if they appear to really be capable of name
7878         listing, in order to eliminate e.g. link from coreutils. This
7879         makes the name lister decision fall back on nm as the default if
7880         no acceptable candidate is found, which mainly happens on
7881         (arguably broken) cross compiles.
7882         * NEWS: Update
7883         * THANKS: Update
7884         Reports by Rudolf Leitgeb and Peter Kjellerstedt.
7885
7886 2009-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7887
7888         Document INNER_TESTSUITEFLAGS, drop leading space.
7889         * README: Document INNER_TESTSUITEFLAGS.
7890         * tests/cmdline_wrap.at (Run tests with low max_cmd_len):
7891         When using INNER_TESTSUITEFLAGS on the testsuite invocation,
7892         drop leading space after "-k libtool", so that the user may
7893         further limit the set of tests to be run.
7894
7895 2009-03-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7896
7897         Fix low max_cmd_len template test on UnixWare.
7898         * libltdl/config/ltmain.m4sh (func_mode_link): When expanding
7899         $reload_cmds, always put objects in $reload_objs rather than
7900         adding them to the command line, to allow more general command
7901         lines in reload_cmds.  Ensure $reload_objs contains a leading
7902         space.
7903         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
7904         sco3.2v5*, sco5v6*] <reload_cmds>: For CC, invoke prelinker
7905         before creating reloadable object.
7906         (_LT_CMD_RELOAD) <reload_cmds, reload_flag>: Declare as
7907         _LT_TAGDECL, not _LC_DECL.
7908         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
7909         (_LT_LANG_GCJ_CONFIG) <reload_cmds, reload_flag>: Initialize
7910         from default (C tag) value.
7911         * THANKS: Update.
7912         Report and analysis by Tim Rice and John Wolfe.
7913
7914 2009-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7915
7916         * doc/libtool.texi (Distributing libltdl, Test descriptions):
7917         Add missing parentheses.
7918
7919 2009-02-28  Tim Rice  <tim@multitalents.net>
7920
7921         Fix C++ template handling for old archives on UnixWare 7.1.4.
7922         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
7923         sco3.2v5*, sco5v6*] <old_archive_cmds>: For CC, add template
7924         prelink step before archiving.  Fixes template.at test failures.
7925
7926 2009-02-28  Török Edwin  <edwintorok@gmail.com>  (tiny change)
7927             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7928
7929         Do not add bogus directory arguments to link command lines.
7930         * libltdl/config/ltmain.m4sh (func_mode_link): Ensure $path is
7931         always initialized before it is used.  Reported for zsh, for
7932         which $path contains $PATH entries even after "emulate sh", see
7933         <http://bugs.debian.org/517501>.
7934
7935 2009-02-28  Andreas Schwab  <schwab@suse.de>
7936             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7937
7938         Remove remaining references to CVS.
7939         * bootstrap: Remove references to CVS.
7940         * README.alpha: Likewise.
7941         * clcommit.m4sh: Likewise.
7942         * doc/libtool.texi: Bump copyright years.
7943         (libtool script contents): Describe macro_revision as revision
7944         without reference to CVS.
7945
7946 2009-02-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7947
7948         Do not pass $INSTALL via TESTS_ENVIRONMENT.
7949         * Makefile.am (TESTS_ENVIRONMENT): Set lt_INSTALL, not INSTALL,
7950         so that a bogus relative path to the install-sh script in the
7951         source tree is not propagated to the configure scripts of the
7952         old test suite.
7953         * tests/testsuite.at: Adjust.
7954         * tests/install.at (Install tests): Likewise.
7955
7956 2009-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7957             Kurt Roeckx <kurt@roeckx.be>
7958
7959         New test for lt_dlopenext error message.
7960         * tests/lt_dlopenext.at (lt_dlopenext error messages): New file,
7961         with new test, with sources taken from the Autobook example.
7962         * Makefile.am: Update.
7963
7964 2009-02-03  Kurt Roeckx <kurt@roeckx.be>
7965
7966         lt_dlopenext sets error upon successful library load.
7967         * libltdl/ltdl.c (lt_dlopenadvise): Fix bogus error on
7968         successful loading of library with lt_dlopenext.
7969         Report by Kaiwang Chen in <http://bugs.debian.org/510006>.
7970
7971 2009-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7972
7973         Fix sed script in install.at.
7974         * tests/install.at (Install tests): Fix typo in sed script,
7975         fixes test failure on HP-UX.
7976
7977         Fix $INSTALL in testsuite with relative path to install-sh.
7978         * tests/testsuite.at: If `$INSTALL' points to in-tree
7979         install-sh, override a possibly-relative path to it with an
7980         absolute one.
7981
7982         install mode: do not pass `-m $install_override_mode' to cp.
7983         * libltdl/config/ltmain.m4sh (func_mode_install): New variable
7984         $install_cp, factor test when `cp' is used for installation.
7985         Do not pass mode override to cp.  Fixes `libtool --mode=install
7986         cp ...' on HP-UX; cp should not be used for libraries that might
7987         be needed by programs invoked during the installation process.
7988
7989         Fix sed script portability issue in func_version.
7990         * libltdl/config/getopt.m4sh (func_version): Remove space in
7991         `/\./! {' sed command, to please HP-UX sed.
7992
7993 2009-01-31  Jeff Squyres <jsquyres@cisco.com>
7994             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7995
7996         New test for bogus lt_dlopen error message.
7997         * tests/lt_dlopen.at (lt_dlopen error messages): New file, new
7998         test, marked as XFAIL for now.
7999         * Makefile.am: Adjust.
8000         Report and reproducible test case by Jeff Squyres.
8001
8002 2009-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8003
8004         execute mode: do not transform *.lo or *.la arguments.
8005         * libltdl/config/ltmain.m4sh (func_mode_execute): Do not check
8006         arguments matching *.lo or *.la for script wrappers.
8007         * tests/execute-mode.at (execute mode): Add tests.
8008         * NEWS, THANKS: Update.
8009         Report by Paul Biggar.
8010
8011         Nonexistent `main' does not guarantee link failure.
8012         * tests/fail.at (Failure tests): Use an unresolved symbol,
8013         rather than non-presence of `main', to provoke a link failure
8014         also on QNX.  Only check for failure of the libtool script if
8015         the link without libtool would have failed, too.
8016         Report by Mike Gorchak.
8017
8018         Use AT_CHECK more liberally in duplicate members test.
8019         * tests/duplicate_members.at (duplicate members in archive
8020         tests): Wrap link commands in AT_CHECK, they might fail, as seen
8021         on QNX.
8022         * THANKS: Update.
8023         Report by Mike Gorchak.
8024
8025 2009-01-30  Akim Demaille  <demaille@gostai.com>
8026
8027         Fix cwrapper warnings from MSVC 2005.
8028         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
8029         [file scope]: define _CRT_SECURE_NO_DEPRECATE.
8030
8031 2009-01-29  Akim Demaille  <demaille@gostai.com>
8032
8033         Fix bootstrap with older libtool.m4 in reach of aclocal.
8034         * libltdl/m4/lt~obsolete.m4: Add stub definitions for
8035         _LT_REQUIRED_DARWIN_CHECKS and _LT_AC_PROG_CXXCPP.
8036
8037         Fix func_exec_init.
8038         * tests/defs.m4sh (func_exec_init): Instead of using the undefined
8039         my_dir, call func_dirname_and_basename and use its result.
8040         (func_make): For consistency, don't use the useless local variable
8041         my_dir.
8042
8043 2009-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8044
8045         Document --mode short-hands better, and test them.
8046         * doc/libtool.texi (Invoking libtool): Give examples for using
8047         the `--mode=MODE' short-hand `MODE', or abbreviations thereof.
8048         * libltdl/config/ltmain.m4sh: Mention the short-hand for MODE
8049         in the --help output.
8050         * tests/help.at (mode short-hands): New test group.
8051         Suggestion by Bruno Haible.
8052
8053         func_version copes with multi-line copyright headers.
8054         * libltdl/config/getopt.m4sh (func_version): Slurp in copyright
8055         lines until a period is found.
8056         * libltdl/config/ltmain.m4sh: Multi-line copyright is ok to use
8057         now.
8058         * tests/help.at (standard command line options): New file, new
8059         tests.  Make this test group the first one for libtool tests,
8060         moving the banner ...
8061         * tests/duplicate_members.at: ... from here.
8062         * Makefile.am (TESTSUITE_AT): Add tests/help.at.
8063
8064 2009-01-29  Akim Demaille  <demaille@gostai.com>
8065             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8066
8067         Normalize compiler output due to compiler wrappers.
8068         * tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT): New
8069         macro, to normalize ccache and distcc output.
8070         * tests/localization.at (localized compiler messages): Use it.
8071
8072 2009-01-29  Peter Rosin  <peda@lysator.liu.se>
8073
8074         Make modified libtool script in cwrapper test executable
8075         * tests/cwrapper.at: Make modified libtool script executable.
8076         Report by Roumen Petrov.
8077
8078 2009-01-28  Akim Demaille  <demaille@gostai.com>
8079
8080         Clean space uses.
8081         * libtoolize.m4sh: Remove trailing spaces.
8082         Use <tab><sp>, as some editors remove "useless" spaces in
8083         <sp><tab>.
8084
8085 2009-01-26  Peter Rosin  <peda@lysator.liu.se>
8086
8087         AWK is required, make sure it is set.
8088         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS: Make sure
8089         AWK is set (automake brings it in, but is not always used).
8090         Fixes old-m4-iface.at on MSYS/MSVC.
8091
8092 2009-01-25  Mike Frysinger  <vapier@gentoo.org>
8093
8094         Fix typo in libtool install mode documentation.
8095         * libltdl/config/ltmain.m4sh (func_mode_help): Change -inst-prefix
8096         to -inst-prefix-dir.
8097         * doc/libtool.texi (Install mode): Likewise.
8098
8099 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
8100
8101         Add -Wall to cwrapper tests.
8102         * tests/cwrapper.at: Add -Wall existing tests. Add additional
8103         round of tests with -Wall alone.
8104
8105 2009-01-24  Charles Wilson  <libtool@cwilson.fastmail.fm>
8106
8107         [cygwin|mingw] cwrapper cleanups.
8108         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
8109         [file scope]: re-organized includes and portability
8110         macros. Avoid oldnames on MINGW32 and MSVC for
8111         setmode/stat/chmod/getcwd/putenv. Declare _putenv on
8112         MINGW32 when -ansi. Use namespaced macro LT_DEBUGWRAPPER.
8113
8114 2009-01-24  Peter Rosin  <peda@lysator.liu.se>
8115
8116         Expand exit status test in LT_AT_NOINST_EXEC_CHECK correctly
8117         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): STATUS is
8118         argument $3, not $2.
8119
8120 2009-01-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
8121
8122         Add tests for cwrapper with -std=c89 and -std=c99
8123         * tests/cwrapper.at: New file.
8124         * Makefile.am: Add tests/cwrapper.at.
8125
8126 2009-01-22  Peter Rosin  <peda@lysator.liu.se>
8127
8128         Unify line endings in localization test.
8129         * tests/testsuite.at: Update copyright year.
8130         (LT_AT_UNIFY_NL): Add macro that unifies line endings on
8131         platforms that suffer from such confusion.
8132         * tests/localization.at: Use it. Update copyright year. Fixes
8133         the test on MSYS/MSVC.
8134
8135 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
8136
8137         [cygwin|mingw] Fix compile warnings when -std=c89.
8138         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
8139         move contents to...
8140         (func_emit_wrapper_part2): move contents to...
8141         (func_emit_wrapper): here.
8142         (func_emit_cwrapperexe_src) [file scope]: Remove
8143         variables script_text_part1 and script_text_part2.
8144         (func_emit_cwrapperexe_src) [lt_dump_script]: New function.
8145         (func_emit_cwrapperexe_src) [main]: Call it.
8146
8147 2009-01-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
8148
8149         Minor cygwin cleanup
8150         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Correct
8151         case pattern for cygwin.
8152
8153 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8154
8155         Avoid failure due to Cygwin path detection bug.
8156         * tests/execute-mode.at (execute mode): Ignore noise on stderr;
8157         Cygwin might consider `d\"e' to be a DOS-style path and warn.
8158         Report by Charles Wilson.
8159
8160 2009-01-19  Robert Millan  <rmh@aybabtu.com>
8161
8162         Support GNU/kOpenSolaris.
8163         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
8164         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8165         (_LT_LANG_CXX_CONFIG) [kopensolaris*-gnu]: Recognize
8166         GNU/kOpenSolaris.
8167         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
8168         * NEWS, THANKS: Update.
8169
8170 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8171
8172         Another LT_AT_EXEC_CHECK fixup.
8173         * tests/shlibpath.at (shlibpath_overrides_runpath): Use
8174         LT_AT_EXEC_CHECK instead of AT_CHECK.
8175
8176 2009-01-19  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
8177
8178         Add missing $EXEEXT to java test.
8179         * tests/convenience.at (Java convenience archives): Add $EXEEXT.
8180
8181 2009-01-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8182
8183         Bump copyright years.
8184         * ChangeLog.2008: New, rotated from ...
8185         * ChangeLog: ... here.
8186         * Makefile.am (EXTRA_DIST): Add ChangeLog.2008.
8187         * NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
8188         * libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
8189         * libtoolize.m4sh: Likewise.
8190
8191 2009-01-14  Peter Rosin  <peda@lysator.liu.se>
8192
8193         Fix flakey mdemo-dryrun test on MSYS (again!)
8194         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
8195         not time, for really fresh files. Add sleep 1 call at yet another
8196         strategic position. Makes the test pass reliably for MSYS/MinGW.
8197
8198 2008-12-19  Akim Demaille  <demaille@gostai.com>
8199
8200         Fix copyright notice.
8201         * libltdl/config/ltmain.m4sh: Add missing comma.
8202
8203 2008-12-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8204
8205         Add cache variables to link tests.
8206         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
8207         (_LT_LINKER_SHLIBS): Add cache variables to tests that
8208         require the linker to work.  For shlibpath_overrides_runpath,
8209         this also changes the semantics to let the result from the C
8210         compiler take precedence.
8211         * tests/no-executables.at (AC_NO_EXECUTABLES): New file.
8212         * Makefile.am: Update.
8213         * NEWS: Update.
8214         Report of shlibpath_overrides_runpath issue by Mike Frysinger,
8215         report of GCC issue by Andreas Schwab.
8216
8217 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
8218
8219         Fix inadvertent commit.
8220         * bootstrap: Revert.
8221
8222 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
8223
8224         Fix manual typo.
8225         * doc/libtool.texi (LT_INIT): Use correct config.status
8226         invocation.  Reported by Akim Demaille.
8227
8228 2008-11-28  Paolo Bonzini  <bonzini@gnu.org>
8229
8230         Do not use $ECHO within eval-ed `...`, as %s\\n becomes %s\n.
8231         * HACKING: Document func_echo_all.
8232         * libltdl/m4/libtool.m4: Use it within backticks that appear in
8233         eval-ed variables.  Reported by Akim Demaille.
8234
8235 2008-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8236
8237         Fix func_infer_tag $ECHO usage; some testsuite exposure.
8238         * libltdl/config/ltmain.m4sh (func_infer_tag): Use func_echo_all
8239         rather than $ECHO for possibly multiple arguments.
8240         * tests/infer-tag.at (inferred tag, CXX inferred tag)
8241         (F77 inferred tag, FC inferred tag, GCJ inferred tag): New file,
8242         new tests.
8243         * Makefile.am: Adjust.
8244
8245         * tests/runpath-in-lalib.at (Runpath in libtool library files):
8246         Add $EXEEXT overlooked in patch yesterday.
8247
8248 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8249
8250         Fix expout and experr line ending issues.
8251         * tests/testsuite.at (LT_AT_HOST_DATA): Renamed from..
8252         (_LT_AT_TRANSLATE_TEXT_OUTPUT): ..this.
8253         (LT_AT_EXEC_CHECK, LT_AT_NOINST_EXEC_CHECK): Do not use
8254         _LT_AT_TRANSLATE_TEXT_OUTPUT any more.
8255         * tests/configure-iface.at: Use LT_AT_HOST_DATA instead of
8256         AT_DATA for `expout' files.
8257         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
8258         Likewise.
8259         * tests/need_lib_prefix.at (enforced lib prefix): Likewise.
8260         Report by Roumen Petrov.
8261
8262         Relax link-order2 test for systems with partial wrong order.
8263         * tests/link-order2.at (Link order of deplibs.): On w32 (and
8264         others, e.g., AIX), the wrongly linked executable picks up only
8265         one instance of the bad function instead of two; relax the test
8266         to accept this; we still require the right link order with the
8267         correctly linked executable.
8268         Reported by Roumen Petrov and others.
8269
8270 2008-11-23  Roumen Petrov  <bugtrack@roumenpetrov.info>
8271             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8272
8273         Add $EXEEXT to all linked programs in the new testsuite.
8274         * tests/convenience.at, tests/ctor.at, tests/darwin.at,
8275         tests/deplibs-ident.at, tests/duplicate_conv.at,
8276         tests/duplicate_deps.at, tests/duplicate_members.at,
8277         tests/export.at, tests/fail.at, tests/indirect_deps.at,
8278         tests/inherited_flags.at, tests/link-order.at,
8279         tests/link-order2.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
8280         tests/need_lib_prefix.at, tests/runpath-in-lalib.at,
8281         tests/search-path.at, tests/shlibpath.at, tests/static.at,
8282         tests/stresstest.at, tests/template.at, tests/testsuite.at:
8283         Use $EXEEXT throughout, except in Makefile.am snippets where
8284         automake takes care of it, and in testsuite macros that take
8285         care of the extension.
8286         Reports by Roumen Petrov and Alon Bar-Lev.
8287
8288 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8289
8290         Adjust executable run tests to cwrapper changes.
8291         * tests/testsuite.at (LT_AT_EXEC_CHECK): Accept fifth argument
8292         ARGS-OR-STATUS-ADJUST, for command-line arguments and/or exit
8293         status flattening.  Rewrite to prefer the executable with the
8294         `.exe' prefix over one without.  Test exit status against
8295         expected exit status, not against zero, when determining whether
8296         this may be a cross-compilation-induced result.
8297         (LT_AT_NOINST_EXEC_CHECK): Likewise.
8298         * tests/static.at (static linking flags for programs): Adjust
8299         calls.
8300         Report by Roumen Petrov.
8301
8302         No trailing period in Autotest test group names.
8303         * tests/link-order.at (Link order test): Drop trailing period
8304         from test name.
8305         * tests/link-order2.at (Link order of deplibs): Likewise.
8306
8307 2008-11-23  Vincent Torri  <vtorri@univ-evry.fr>  (tiny change)
8308
8309         Fix func_emit_cwrapperexe_src for WinCE: no errno support.
8310         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
8311         [__MINGW32CE__]: Do not use errno, do not include errno.h and
8312         remove calls related to errno when using the mingw32ce compiler.
8313
8314 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8315
8316         No libm in WinCE.
8317         * libltdl/m4/libtool.m4 (LT_LIB_M) [cegcc*]: This system has
8318         only a dummy libm, ignore.
8319         Report by Vincent Torri.
8320
8321         Fix import library detection for WinCE.
8322         * libltdl/config/ltmain.m4sh (func_win32_libid): Work for
8323         pe-arm-wince import libraries.
8324         * NEWS: Update.
8325         Report by Vincent Torri.
8326
8327 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8328             Eric Blake  <ebb9@byu.net>
8329
8330         Fix $ECHO test to not influence other _AS_DETECT_SUGGESTED code.
8331         * libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix test to
8332         not influence further tests registered with _AS_DETECT_SUGGESTED
8333         and do not use a PATH below /tmp, to avoid influence by a third
8334         party.
8335
8336 2008-11-23  Alon Bar-Lev  <alon.barlev@gmail.com>  (tiny change)
8337
8338         Fix func_win32_libid for 64-bit Windows.
8339         * libltdl/config/ltmain.m4sh (func_win32_libid): Accept file
8340         format 'pe-x86-64'.
8341         * NEWS: Update.
8342
8343 2008-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8344
8345         Avoid newlines in some AT_CHECK commands.
8346         * tests/standalone.at (linking libltdl without autotools): Wrap
8347         lines with dnl, to avoid turning off tracing of AT_CHECK.
8348         * tests/subproject.at (linking libltdl without autotools):
8349         Likewise.
8350
8351         Replace uses of $SED $basename.
8352         * libltdl/config/ltmain.m4sh (func_mode_link): Replace instances
8353         of `$ECHO ... | $SED' with calls to func_basename.
8354         * libtoolize.m4sh (func_copy, func_serial)
8355         (func_massage_aclocal_DATA): Likewise, replace with
8356         func_dirname_and_basename.
8357         * tests/defs.m4sh (func_configure_nofail, func_make, func_exec):
8358         Likewise.
8359
8360         No need to prepend $progname with './'.
8361         * libltdl/config/general.m4sh (func_dirname_and_basename): $ECHO
8362         copes with leading hyphens now, so do not mangle $progname any
8363         more.
8364
8365         Revenge of the $ECHO. Kill most uses of Xsed.
8366         * libltdl/config/general.m4sh: Replace all uses of `$ECHO "X..."
8367         | $Xsed' with `$ECHO "..." | $SED', and employ further trivial
8368         simplifications.  Replace $ECHO with echo where appropriate.
8369         (func_echo_all): New function.
8370         * libltdl/config/getopt.m4sh: Likewise simplifications.
8371         * libltdl/config/ltmain.m4sh: Likewise.
8372         * libltdl/m4/libtool.m4: Likewise.
8373         (LT_CMD_MAX_LEN): Use func_fallback_echo, to ensure that the
8374         command line is passed through an exec* function.
8375         * libtoolize.m4sh: Likewise simplifications.  Use func_echo_all
8376         to implement --dry-run.
8377         * tests/defs.m4sh: Likewise simplifications.
8378         * tests/quote.test: Likewise simplifications.
8379
8380         Fix matching of Sun Fortran compiler on Linux.
8381         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: Also
8382         match `Sun Ceres Fortran' compiler; reorder with C compiler
8383         matching.
8384         * THANKS: Update.
8385         Report by Ethan Mallove.
8386
8387 2008-11-21  Charles Wilson  <libtool@cwilson.fastmail.fm>
8388
8389         Fix --verbose option; add new --no-{silent|quiet|verbose} options.
8390
8391         * libltdl/config/ltmain.m4sh (usage): Document
8392         new options --no-silent/--no-quiet and --no-verbose.
8393         (func_enable_tag): Handle new options.
8394         Modified --verbose to actually activate opt_verbose.
8395         New behavior: --silent disables both "normal" output and
8396         func_verbose output.  --verbose enables both "normal"
8397         output and func_verbose output. --no-silent enables
8398         "normal" output, but does not affect func_verbose output.
8399         --no-verbose disables func_verbose output, but does not
8400         affect "normal" output.
8401         * NEWS: announce new options --no-silent/--no-quiet, and
8402         --no-verbose.
8403         * doc/libtool.texi: document new options --no-silent/--no-quiet
8404         and --no-verbose.
8405
8406 2008-11-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8407
8408         Fix match patterns for cegcc*.
8409         * libltdl/config/ltmain.m4sh (func_mode_link): Match '*cegcc*'
8410         instead of '*cegcc' for $host_os.
8411         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Likewise.
8412         * tests/lt_dladvise.at (lt_dlopenadvise library loading):
8413         Likewise.
8414         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Match
8415         '*-*-cegcc*' for $host.
8416
8417         Ensure $ac_aux_dir is initialized for LIBTOOL_DEPS.
8418         * libltdl/m4/libtool.m4 (LT_INIT): Require
8419         AC_CONFIG_AUX_DIR_DEFAULT.
8420         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Amend test to
8421         expose this.
8422         Report, analysis, and test example by Jakub Bogusz.
8423
8424         Check for bogus aclocal.m4 contents in bootstrap and dist-hook.
8425         * Makefile.am (dist-hook): Bail out if shipped aclocal.m4 files
8426         contain LT_INIT, AC_PROG_LIBTOOL, or AM_PROG_LIBTOOL macro
8427         definitions.  These can only come from bogus pull-ins from older
8428         installed Libtool macro files.
8429         * bootstrap: Likewise.
8430         Report by Akim Demaille.
8431
8432 2008-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8433
8434         Fix $ECHO abuse exposed by recent patch.
8435         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
8436         _LT_CHECK_SHELL_FEATURES, for $lt_NL2SP.  Always quote argument
8437         to $ECHO.
8438
8439         Skip sys_lib_search_path on systems without libz.
8440         * tests/search-path.at (sys_lib_search_path): Autotest needs at
8441         least one AT_CHECK executed in a test group.  So if we haven't
8442         found -lz anywhere, as may happen with cross-compilers, skip the
8443         test.
8444         * THANKS: Update.
8445         Report by Alon Bar-Lev.
8446
8447         Fix execute mode test to actually expose cwrapper failures.
8448         * tests/execute-mode.at (execute mode): Actually also test the
8449         cwrapper on the arguments.
8450         Report by Bruno Haible.
8451
8452 2008-11-15  Charles Wilson  <libtool@cwilson.fastmail.fm>
8453
8454         Add func_win32_import_lib_p.
8455         * libltdl/config/ltmain.m4sh (func_win32_import_lib_p):
8456         New function.
8457
8458 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8459
8460         Fix archive_cmds for older cc on HP-UX 11.
8461         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hp-ux11*, !GCC]
8462         [!hppa*64*, !ia64*] <archive_cmds>: Older releases of the HP-UX
8463         11.00 C compiler do not support -b yet; use a link test to
8464         decide whether $LD should be used for library creation.
8465         * THANKS: Update.
8466         Report by Daniel Richard G.
8467
8468 2008-11-12  Paolo Bonzini  <bonzini@gnu.org>
8469
8470         * configure.ac: Bump Autoconf requirement.
8471         * libltdl/config/general.m4sh: Use $as_echo as default $ECHO.
8472         * tests/testsuite.at: Use $as_echo as default $ECHO.
8473
8474         * libltdl/m4/libtool.m4 (LT_INIT): Add _LT_SHELL_INIT to
8475         work around Autoconf <2.64 bug.
8476         (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT): Add func_fallback_echo.
8477         Eliminate lt_ECHO requoting.
8478         (_LT_SHELL_INIT): Use a public M4sh diversion.
8479         (_LT_PROG_ECHO_BACKSLASH): Rewrite.
8480         (LT_CMD_MAX_LEN): Do not use --fallback-echo.
8481         * libltdl/config/ltmain.m4sh: Remove --no-reexec and --fallback-echo
8482         handling.
8483         (func_fallback_echo): New.
8484         (func_emit_wrapper_part1): Quote ECHO.  Remove --no-reexec and
8485         --fallback-echo handling.
8486         (Execute mode): Do not set qecho.
8487
8488 2008-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8489
8490         Use -no-undefined in install tests.
8491         * tests/install.at (Install tests): Use `-no-undefined'.
8492
8493 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8494
8495         Do not use `test ... -a ...'.
8496         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hpux10, hpux11]:
8497         Replace test -a with test && test.
8498
8499 2008-11-11  Roumen Petrov  <bugtrack@roumenpetrov.info>  (tiny change)
8500
8501         Fix destdir tests in cross compile mode.
8502         * tests/destdir.at (Simple DESTDIR install)
8503         (DESTDIR with in-package deplibs): Use $EXEEXT throughout.
8504         * THANKS: Update.
8505
8506 2008-11-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8507
8508         Simplify cwrapper handling a bit.
8509         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1)
8510         (func_emit_wrapper_part2, func_to_host_path)
8511         (func_to_host_pathlist, func_emit_wrapper): Simplify using
8512         default argument, func_append.
8513
8514 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8515
8516         Separate part of _LT_SETUP into other macros, detect ECHO sooner.
8517         * libltdl/m4/libtool.m4 (_LT_PREPARE_SED_QUOTE_VARS): New macro,
8518         extracted from...
8519         (_LT_SETUP): ... here.  Require _LT_PROG_ECHO_BACKSLASH sooner.
8520
8521 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8522
8523         Fix quoting when config.status generates libtool config.
8524         * libltdl/m4libtool.m4 (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT):
8525         Double quote ECHO-ed variables.
8526
8527 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8528
8529         Use documented M4sh interfaces.
8530         * clcommit.m4sh: Do not unset CDPATH, use AS_INIT and M4sh diversions.
8531         * libltdl/config/mailnotify.m4sh: Likewise.
8532         * libtoolize.m4sh: Likewise.
8533         * tests/defs.m4sh: Likewise.
8534         * tests/testsuite.at: Move AT_INIT invocation at the top.
8535
8536         * libltdl/m4/libtool.m4 (_LT_INIT_GENERATED): New.
8537         (LT_OUTPUT): Use it.
8538
8539         * libltdl/config/general.m4sh (M4SH_IN_HEADER): New.
8540         (progpath): Move setting before $0 could be clobbered.
8541         * libltdl/config/ltmain.m4sh (M4SH_IN_HEADER): New.
8542
8543 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8544
8545         Run sh.test on the M4sh source.
8546         * tests/defs.m4sh (scripts): Point to pre-m4 sources.
8547
8548 2008-11-10  Paolo Bonzini  <bonzini@gnu.org>
8549
8550         Avoid that autom4te complains about unexpanded macros.
8551         * libtoolize.m4sh: Allow occurrences of "dnl" and use quadrigraphs
8552         to protect other m4 macros.
8553
8554 2008-11-11  Bruno Haible  <bruno@clisp.org>
8555             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8556
8557         Fix cwrapper argument mangling on w32.
8558         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): On
8559         mingw, preprocess the argument vector through prepare_spawn.
8560         * tests/execute-mode.at (execute mode): Output args
8561         newline-separated.  Extend tests by more argument pairs that
8562         contain special characters, where the w32 cwrapper fails.
8563         Also test a real compiled program, linked against an uninstalled
8564         library, to expose cwrapper issues.
8565         * NEWS: Update.
8566
8567 2008-11-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8568
8569         Update to GFDL 1.3.
8570         * doc/fdl.texi: Update to GFDL 1.3.
8571         * doc/libtool.texi: Adjust.
8572         * NEWS: Update.
8573
8574 2008-11-09  Alexei Sheplyakov  <varg@theor.jinr.ru>  (tiny change)
8575
8576         Fix cross compilation with wine for the case SHELL != bash.
8577         * libltdl/config/ltmain.m4sh (func_to_host_path): Avoid escape
8578         sequence interpretation by 'echo', for w32-style paths.
8579         * THANKS: Update.
8580
8581 2008-10-28  Michael Haubenwallner  <michael.haubenwallner@salomon.at> (tiny change)
8582
8583         Fix checks for unsupported allow_undefined_flag.
8584         * tests/tagdemo-undef.test: Match allow_undefined_flag
8585         correctly, for SKIPping.
8586         * tests/cdemo-undef.test: Likewise.
8587
8588 2008-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8589
8590         * tests/testsuite.at (_LTDL_PROJECT_FILES): Fix dependencies for
8591         parallel make.
8592
8593         * libtoolize.m4sh (func_nonemptydir_p): Fix typo in error
8594         message.
8595
8596 2008-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8597
8598         Fix Autoconf 2.59 incompatibilty.
8599         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): m4_pattern_allow
8600         `LT_LIBEXT'; Autoconf 2.59's AC_DEFINE* macros didn't do this
8601         automatically yet.
8602         * NEWS, THANKS: Update.
8603         Report by Marcel Loose.
8604
8605 2008-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8606
8607         Atomic shared library install permissions on HP-UX.
8608         The HP-UX 11 runtime linker fails to mmap shared libraries
8609         without execute permissions.  Fixing them with postinstall_cmds
8610         may be too late, as ln, sed, and chmod may link against the
8611         library being installed.
8612
8613         * libltdl/m4/libtool.m4 (install_override_mode): New LT_DECL.
8614         (_LT_SYS_DYNAMIC_LINKER) [hpux9*, hpux10*, hpux11*]: Set it.
8615         * libltdl/config/ltmain.m4sh (func_mode_install): Build a second
8616         command line, $install_shared_prog, for the installation of the
8617         shared library.  Override resp. set the permission mode if
8618         install_override_mode is nonempty.
8619         * doc/libtool.texi (libtool script contents): Document it.
8620         * tests/install.at (Install tests): New test.
8621         * Makefile.am (TESTSUITE_AT): Adjust.
8622         (TESTS_ENVIRONMENT): Pass INSTALL.
8623         Report by Bruno Haible.
8624
8625 2008-09-26  Eric Blake  <ebb9@byu.net>
8626
8627         Avoid gcc warning.
8628         * libltdl/loaders/loadlibrary.c (vm_open): Don't check for array
8629         being a NULL pointer.
8630
8631 2008-09-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8632
8633         Man pages for libtoolize and libtool, new command line option
8634         --help-all.
8635         * Makefile.am (dist_man1_MANS, update_mans): New macros.
8636         ($(srcdir)/doc/libtool.1, $(srcdir)/doc/libtoolize.1): New
8637         rules.  Use --help-all for libtool.
8638         (MAINTAINERCLEANFILES): New macro.  Add dist_man1_MANS.
8639         (BUILT_SOURCES): Add libtoolize.
8640         * configure.ac: Check for help2man, set HELP2MAN.
8641         * doc/libtool.texi: Add @direntry for libtool-invocation.
8642         (Invoking libtool): Document -h, --help-all.  Reorder mode
8643         description for consistency.
8644         (Compile mode): Do not document -Wl,FLAG and -XCClinker here.
8645         (Link mode): Document -Wc,FLAG here, reformat a bit.
8646         * libtoolize.m4sh: Reformat --help output a bit, to help
8647         help2man.
8648         * libltdl/config/ltmain.m4sh: Likewise.  Also, set PROGRAM to
8649         `libtool', not `ltmain.sh', so the former is used in the man
8650         page.
8651         New argument `--help-all'.  If given, call func_help and
8652         func_mode_help several times, beating output in shape with sed.
8653         (func_mode_help): Do not exit here.
8654         * libltdl/config/getopt.m4sh (func_usage): Work with different
8655         indentations, but require comment hash in first column, when
8656         grepping for '-h' in usage to end short help.
8657         (func_help): Accept optional argument to not exit.
8658         * NEWS, THANKS: Update.
8659         Suggestion by Karl Berry.
8660
8661 2008-09-08  Gary V. Vaughan  <gary@gnu.org>
8662
8663         Use `-version-info 9:0:2' for one added iface since 2.2.4.
8664         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Make the libltdl
8665         version number match 2.2.6a rerelease.
8666
8667         Add ./commit option for pushing tags back to origin.
8668         * clcommit.m4sh (opt_tags): New --tags push option.
8669         (func_commit): Run `$GIT push --tags' if --tags was passed.
8670         * HACKING (Release Procedure): Note the requirement to pass
8671         --tags to ./commit for new release tag to be push back to
8672         origin.
8673
8674 2008-09-07  Gary V. Vaughan  <gary@gnu.org>
8675
8676         Retire gnu.org news.html in favour of savannah news.
8677         * HACKING (Release Procedure): Add instructions for sending
8678         a web release announcement to http://planet.gnu.org via
8679         the savannah news manager.
8680
8681         Add untested git push conflict testing to commit script.
8682         * clcommit.m4sh (func_check_conflicts): Test return status
8683         of 'git push --dry-run', and display an error on non-zero.
8684
8685         Enable release procedure to work with lzma OLDRELEASE file.
8686         * Makefile.maint (diffs, prev-tarball, new-tarball): If lzma
8687         tarballs are present use them to generate the diffs, otherwise
8688         use gz tarballs if they are present, or else complain if both
8689         are missing.
8690
8691         Set SCM version number to 2.2.7a.
8692         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8693         number to 2.2.7a.
8694         * NEWS: Updated.
8695
8696         GNU Libtool 2.2.6 was released.
8697
8698         Fix typo in Makefile.maint.
8699         * Makefile.maint (git-news): Renamed to check-news, since it
8700         doesn't actually run git.  Adjust all dependees.
8701
8702         Run `git commit -a' when no files are passed.
8703         * clcommit.m4sh (func_commit): Add -a argument if necessary.
8704
8705         Prepare for next stable release.
8706         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Update.
8707         * libltdl/m4/libtool.m4: Bump serial number to account for
8708         changes since 2.2.4 release.
8709         * INSTALL, config/config.guess, config/texinfo.tex: Updated
8710         from canonical source.
8711         * configure.ac (AM_INIT_AUTOMAKE): Specify dist-lzma, which
8712         was introduced after automake-1.10 was released.
8713         (abs_top_srcdir, abs_top_builddir): No need to substitute these
8714         from configure anymore, since we require automake 1.10.1, which
8715         does perform the substitutions properly.
8716         (TIMESTAMP): Normal releases were displaying the long-form
8717         timestamp.  Fix to show the short release timestamp as per
8718         alpha release numbers.
8719         * NEWS: Update with missing entries from ChangeLog.
8720         * HACKING (Release Procedure): We release lzma tarballs now
8721         but no xdeltas.
8722         * Makefile.maint: Updated to match Release Procedure
8723         instructions in HACKING.
8724
8725         Convert mailnotify headers to git.
8726         * clcommit.m4sh: Improve mailnotify contents.
8727
8728         Make ./commit useful again.
8729         * clcommit.m4sh: Major overhaul and simplification for git.
8730
8731 2008-09-06  Gary V. Vaughan  <gary@gnu.org>
8732
8733         Fix 'DISTCHECK_CONFIGURE_FLAGS=--program-prefix=g' bug.
8734         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Fix test failures
8735         with --program-prefix, where the test case output contains the
8736         transformed name somewhere other than the beginning of a line.
8737         * libtoolize.m4sh (func_check_macros): Be sure to always use
8738         the transformed name in output messages.
8739
8740 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8741
8742         Do not remove .gcno files when linking.
8743         * libltdl/config/ltmain.m4sh (func_mode_link): When removing
8744         potential output files before linking, do not remove *.gcno
8745         profile information GCC outputs next to object files in `.libs'.
8746         Report by Vincent Torri.
8747
8748 2008-09-01  Peter O'Gorman  <peter@pogma.com>
8749
8750         Revert 75142db4f8afc65ba7aae0ed80ea0b35bd9cc382 (AIX libltdl
8751         dlopen(NULL)
8752
8753         * libltdl/m4/ltdl.m4: Remove LTDL_DLOPEN_SELF_WORKS define.
8754         * libltdl/loaders/dlopen.c: Remove LTDL_DLOPEN_SELF_WORKS check.
8755         * libltdl/m4/libtool.m4 [aix]: Set export_dynamic_flag_spec to
8756         -Wl,-bexpall. This is a temporary workaround until a real fix
8757         is implemented.
8758         * NEWS: document it.
8759
8760 2008-08-26  Peter O'Gorman  <peter@pogma.com>
8761
8762         Allow for extensions other than .a for preloaded modules.
8763         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define LT_LIBEXT.
8764         * libltdl/ltdl.c (lt_dladvise_preload): Use it.
8765         Reported by Ralf Wildenhues.
8766
8767 2008-08-26  Peter O'Gorman  <peter@pogma.com>,
8768             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8769
8770         Remove unnecessary global argz functions.
8771         * libltdl/argz.c (argz_add,argz_count): Remove.
8772         * libltdl/argz_.h (argz_add,argz_count): Remove.
8773         * NEWS: Announce it.
8774         * tests/ltdl-api.at: Test so we don't repeat it.
8775         * Makefile.am: Add new test.
8776
8777 2008-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8778
8779         Initial support for Lahey Fortran on GNU/Linux.
8780         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8781         [linux] <lf95>: Add support for Lahey Fortran 8.1.
8782         * NEWS, THANKS: Update.
8783         Suggested by Craig Tierney.
8784
8785 2008-08-21  Sam Thursfield  <ssssam@gmail.com>  (tiny change)
8786
8787         Avoid leading separator in PATH for DLL search.
8788         * libltdl/config/ltmain.m4sh (func_mode_link) [cygwin, mingw]
8789         [ pw32, os2, cegcc]: Fix dllsearchpath not to contain leading
8790         separator.
8791         * THANKS: Update.
8792
8793 2008-08-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8794
8795         * libltdl/config/ltmain.m4sh (func_mode_link): Quote $#.
8796
8797         Disallow `-L path', do not misparse it silently.
8798         * libltdl/config/ltmain.m4sh (func_mode_link): Diagnose `-L'
8799         without argument, and `-L path', i.e., with a space.
8800         * tests/fail.at (Failure tests): Test for these failures.
8801         * THANKS: Update.
8802         Report by Olaf Lenz.
8803
8804 2008-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8805
8806         Avoid test failure due to broken dlpreloading of shared library.
8807         * tests/lt_dladvise.at (lt_dlopenadvise library loading): Drop
8808         some newlines in AT_CHECK commands, for better 'testsuite -x'
8809         output.  Only create a static installable libpreload.la, to
8810         avoid exposing the bug libtool currently has with preloading of
8811         shared libraries.  Add a note to revisit this later.
8812
8813 2008-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8814
8815         Parallel make testsuite fixes.
8816         * tests/configure-iface.at (installable libltdl)
8817         (--with-ltdl-include/lib, --with-included-ltdl): Add dlopened
8818         libmodule.la to main_DEPENDENCIES.
8819         * tests/old-m4-iface.at (AC_WITH_LTDL): Likewise, let ltdldemo
8820         depend upon module.la and libltdl/libltdlc.la.
8821         * tests/testsuite.at (LT_AT_MAKE): Invoke each target in turn,
8822         default to 'all'.
8823         * tests/early-libtool.at (config.lt): Define 'all' target.
8824
8825         * HACKING: Update for git, fix some minor nits.
8826
8827 2008-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8828
8829         Remove use of exit in configure test sources.
8830         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Return from main,
8831         to avoid using undeclared exit.
8832         Report against OpenMPI from Coverity via Jeff Squyres.
8833
8834         * tests/configure-iface.at (convenience libltdl): Ignore warning
8835         from parallel make.
8836
8837 2008-08-07  DJ Delorie  <dj@redhat.com>
8838
8839         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [tpf]
8840         <library_names_spec>: Fix typo in variable name.
8841
8842 2008-08-06  Steve Ellcey  <sje@cup.hp.com>
8843
8844         Use -fPIC with GCC on HP-UX/ia64.
8845         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8846         [ia64-*-hpux*]: Specify -fPIC when using GCC to build shared
8847         libraries.
8848
8849 2008-08-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8850
8851         * NEWS: Minor fixups.
8852
8853 2008-08-01  Gary V. Vaughan  <gary@gnu.org>
8854
8855         Bring NEWS up to date.
8856         * NEWS: Add missing summaries since 2.2.4 release.
8857
8858         Implement lt_dlopening of only preloaded modules.
8859         * libltdl/m4/ltdl.m4 (LTDL_INIT): Check for a libltdl that
8860         provides lt_dladvise_preopen when deciding if installed libltdl
8861         is 'new enough'.
8862         * libltdl/libltdl/lt__private.h (lt__advise): Add a new
8863         is_preload flag.
8864         * libltdl/ltdl.c (lt_dladvise_preload): New api call to set it.
8865         (try_dlopen): If it is set, and the search of preloaded modules
8866         didn't return a match, don't bother searching the filesystem.
8867         * libltdl/ltdl.h (lt_dladvise_preload): Declare it.
8868         * doc/libtool.texi (Libltdl Interface): Document it.
8869         * tests/lt_dladvise.at: Test it (and incidentally add some test
8870         coverage for `libtool -dlpreopen').
8871         * NEWS: Announce it.
8872
8873 2008-08-01  Vincent Torri  <doursse@users.sf.net>
8874
8875         Add cegcc (Windows CE/PocketPC) support.
8876         * libltdl/config/ltmain.m4sh: Add 'cegcc' case where needed.
8877         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, LT_SYS_DLOPEN_SELF)
8878         (_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
8879         (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
8880         (_LT_LANG_CXX_CONFIG): Likewise.
8881         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Likewise.
8882         * NEWS: Update.
8883         * THANKS: Update.
8884
8885 2008-07-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8886
8887         * libltdl/config/ltmain.m4sh (func_to_host_path): Fix sh.test
8888         failure.
8889         Report by Paolo Bonzini.
8890
8891 2008-07-31  Paolo Bonzini  <bonzini@gnu.org>
8892
8893         * ltmain.m4sh (func_emit_cwrapperexe_src): Factor
8894         multiple closed braces into the next cat command.
8895
8896 2008-06-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8897
8898         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <icc, icpc>:
8899         Use -fPIC, newer Intel compilers (icc 10, ifort 9) reject -KPIC.
8900         * tests/localization.at: Skip test if the compiler fails merely
8901         due to the locale setting.
8902         * THANKS: Update.
8903         Report by Vincent Lefevre.
8904
8905 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8906
8907         * doc/libtool.texi (Linking executables, Static libraries)
8908         (Modules for libltdl, Distributing libltdl): Remove TABs from
8909         the manual.
8910
8911 2008-06-13  Peter O'Gorman  <peter@pogma.com>
8912
8913         Support ifort on darwin.
8914         * libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Build
8915         shared libraries with ifort.
8916         Reported by Christopher Hulbert.
8917
8918 2008-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
8919
8920         [mingw] fix cross-compile-with-wine case
8921         * libltdl/config/ltmain.m4sh (func_to_host_path)
8922         [host=mingw, build!=mingw|cygwin]: check that winepath
8923         stdout is non-empty and exit code is 0, instead of checking
8924         stderr.
8925         Reported by: Roumen Petrov
8926
8927 2006-06-01  Stas Maximov  <smaximov@ieee.org>  (tiny change)
8928
8929         Check only regular files, not devices, for lalibs.
8930         * libltdl/config/ltmain.m4sh (functions func_lalib_p)
8931         (func_lalib_unsafe_p): Only read regular files and not device
8932         files.  Avoids blocking libtool executing gdb, when a
8933         pseudo-terminal device /dev/pts/NN is given as one of the
8934         arguments to gdb, as in:
8935         libtool --mode=execute gdb -q -nw -i mi -tty /dev/pts/4 prog
8936
8937 2008-05-31  Peter O'Gorman  <peter@pogma.com>
8938
8939         Skip darwin test if fat link fails.
8940         * tests/darwin.at: Skip if we can not link a fat program.
8941         Reported by Daniel Macks <dmacks@netspace.org>
8942
8943 2008-05-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8944
8945         libtoolize should not remove config.guess, config.sub.
8946         * libtoolize.m4sh (all_pkgconfig_files): Do not list
8947         config.guess nor config.sub.  We don't install them without
8948         --install, and the project may not be using Automake.
8949         Report by Andreas Schwab.
8950
8951         Simplify argument parsing in cwrapper.
8952         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
8953         Use NULL where appropriate.  Do not compute length of arguments
8954         needlessly.
8955
8956 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
8957
8958         [mingw] Add cross-compile support to cwrapper
8959         * libltdl/config/ltmain.m4sh (func_to_host_path) [$host=mingw]:
8960         If present, use winepath to convert from $build to $host
8961         if $build is neither mingw (msys) nor cygwin.  Use unconverted
8962         path as fallback when conversion fails. Also update comments.
8963         (func_to_host_pathlist) [$host=mingw]: Ditto. For fallback case,
8964         use simplistic ':' to ';' path separator translation.
8965
8966 2008-05-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
8967
8968         Cwrapper should not eat -- arguments
8969         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
8970         [file scope]: Defined all option strings in terms of macro
8971         LTWRAPPER_OPTION_PREFIX. Similarly defined all option string
8972         lengths in terms of macro LTWRAPPER_OPTION_PREFIX_LENGTH.
8973         [main]: Modified option parsing algorithm to pass -- on to
8974         target, and to not stop processing arguments when -- is seen.
8975         Added check for unrecognized options in reserved namespace
8976         defined by LTWRAPPER_OPTION_PREFIX.
8977
8978 2008-05-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8979
8980         Fix ifort settings again.
8981         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
8982         Unlike icc and ecc, not all ifort versions understand `-KPIC',
8983         e.g. version 10.1, so use `-fPIC' instead.
8984         Report by Jeff Squyres.
8985
8986 2008-05-20  Eric Blake  <ebb9@byu.net>
8987
8988         Resynchronize argz whitespace changes from gnulib.
8989         * libltdl/m4/argz.m4: Kill trailing whitespace.
8990         * libltdl/argz.c: Likewise.
8991
8992 2008-05-19  Eric Blake  <ebb9@byu.net>
8993
8994         Fix regression from two days ago.
8995         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ): Don't refer to deleted macro.
8996
8997 2008-05-17  Eric Blake  <ebb9@byu.net>
8998
8999         Speed up bootstrap by improving lt_combine.
9000         * libltdl/m4/ltsugar.m4 (lt_combine): Mirror Autoconf 2.62
9001         improvements.  Includes a semantic change where the separator can
9002         now be empty, and where an empty fourth argument is now treated as
9003         a valid suffix.
9004         * libltdl/m4/libtool.m4 (_lt_decl_varnames_tagged): Adjust to new
9005         semantics of lt_combine.
9006         (lt_decl_varnames_tagged): Fix quoting and optimize.
9007
9008         Kill _LT_LIBSOURCES; it wasn't checking anything useful.
9009         * libltdl/m4/ltdl.m4 (_LT_LIBSOURCES): Delete.
9010         (LTDL_INIT): Ignore arguments to AC_LIBSOURCES during _LTDL_SETUP,
9011         on the assumption that libtoolize correctly installed them.
9012
9013 2008-05-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
9014
9015         [mingw|cygwin] Modify cwrapper to invoke target directly.
9016         * libltdl/config/ltmain.m4sh (func_to_native_path):
9017         New function. If $host is mingw, and $build is mingw
9018         or cygwin, convert path to mingw native format.
9019         (func_to_native_pathlist): New function. Ditto, for
9020         :-separated pathlists.
9021         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
9022         Ensure putenv and setenv are declared. Define HAVE_SETENV.
9023         (func_emit_cwrapperexe_src) [main]: Add new constants to
9024         hold desired PATH settings; initialize and use functions
9025         above to convert to $host format if necessary. Add new
9026         command-line options --lt-env-set, --lt-env-prepend, and
9027         --lt-env-append. No longer emit wrapper script as integral
9028         part of launching child. Remove support for (now) unnecessary
9029         $TARGETSHELL. Exec actual target executable directly.
9030         (func_emit_cwrapperexe_src) [lt_setenv, lt_extend_str]
9031         [lt_split_name_value, lt_opt_process_env_set]
9032         [lt_opt_process_env_prepend, lt_opt_process_env_append]
9033         [lt_update_exe_path, lt_update_lib_path]: New functions.
9034
9035 2008-05-11  Charles Wilson  <libtool@cwilson.fastmail.fm>
9036
9037         Ensure cwrapper compiles without warnings under -std=c99.
9038         * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
9039         new function.
9040         (func_emit_wrapper_part2): new function.
9041         (func_emit_wrapper): delegate to new functions.
9042         (func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
9043         ensure realpath is declared.
9044         (func_emit_cwrapperexe_src): declare two different strings
9045         to each hold part of the wrapper script content. Initialize
9046         using new func_emit_wrapper_partX functions.
9047         (func_emit_cwrapperexe_src) [main]: when emitting wrapper
9048         script content, use both strings.
9049         Reported by Yaakov Selkowitz.
9050
9051 2008-05-06  Charles Wilson  <libtool@cwilson.fastmail.fm>
9052
9053         Ensure $OBJDUMP is defined
9054         * libltdl/m4/libtool.m4 (_LT_DECL_OBJDUMP): new macro ensures
9055         that $OBJDUMP is always defined sanely.
9056         (_LT_SYS_DYNAMIC_LINKER): call it.
9057         (_LT_CHECK_MAGIC_METHOD): call it.
9058
9059 2008-05-05  Gary V. Vaughan  <gary@gnu.org>
9060
9061         Fix libtoolize test failure with aclocal < 1.10.1
9062         * tests/libtoolize.at
9063         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Older aclocal
9064         requires a space between -I and the directory argument.
9065         Reported by Daniel Macks <dmacks@netspace.org>
9066
9067 2008-05-04  Gary V. Vaughan  <gary@gnu.org>
9068
9069         Set SCM version number to 2.2.5a.
9070         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9071         number to 2.2.5a.
9072         * NEWS: Updated.
9073
9074         GNU Libtool 2.2.4 was released.
9075
9076         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9077         number to 2.2.4.
9078         * libltdl/Makefile.inc (LTDL_VERSION_INFO): C:R+1:A because the
9079         interfaces are unchanged, even though we improved the code some
9080         more.
9081         * NEWS: Updated.
9082
9083         Macro file serial updates for next stable release.
9084         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
9085         libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: Bump serial
9086         numbers to account for changes since 2.2.2 release.
9087
9088         Make libtoolize tests work with distcheck.
9089         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): When $tst_aclocal
9090         is set, transform paths that use it to generic
9091         /usr/local/share/aclocal in time for AT_CHECK comparisons.
9092
9093 2008-05-03  Gary V. Vaughan  <gary@gnu.org>
9094
9095         Don't trip over outdated acinclude.m4.
9096         * libtoolize.m4sh (all_pkgconfig_files, all_pkgmacro_files)
9097         (all_pkgltdl_files): New variables listing all files ever
9098         maintained by any release of libtoolize.
9099         (func_install_pkgconfig_parent, func_install_pkgltdl_files)
9100         (func_install_pkgconfig_subproject, func_install_pkgmacro_parent)
9101         (func_install_pkgmacro_subproject): Carefully clean up any files
9102         that may have been installed by previous libtoolize releases.
9103         * tests/libtoolize.at: New test for libltdl/acinclude.m4 removal.
9104         Reported by Andreas Schwab <schwab@suse.de>.
9105
9106 2008-05-02  Peter O'Gorman  <peter@pogma.com>
9107
9108         It helps to close quotes.
9109         * libltdl/config/ltmain.m4sh (func_mode_link): Add closing '.
9110
9111 2008-05-01  Peter O'Gorman  <peter@pogma.com>
9112
9113         Use AC_CHECK_TOOL for otool and otool64.
9114         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
9115         * libltdl/config/ltmain.m4sh (func_mode_link): Use.
9116         Reported by Richard Purdie <rpurdie@rpsys.net>
9117
9118 2008-04-30  Eric Blake  <ebb9@byu.net>
9119
9120         Support cygwin 1.7.0 in loadlibrary loader.
9121         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD) <cygwin>: Check for modern
9122         function.
9123         * libltdl/loaders/loadlibrary.c (vm_open): Avoid deprecated
9124         cygwin_conv_to_full_win32_path.
9125
9126 2008-04-29  Gary V. Vaughan  <gary@gnu.org>
9127
9128         New libtoolize --no-warn option and LIBTOOLIZE_OPTIONS parsing.
9129         * libltdl/config/general.m4sh (opt_warning): New option.
9130         (func_warning): Only display a warning message if $opt_warning
9131         is true.
9132         * libtoolize.m4sh: Accept options in LIBTOOLIZE_OPTIONS
9133         environment variable.
9134         (--no-warn): Parse new option.
9135         (func_serial_update_check, func_keyword_update): Use func_warning.
9136         (func_check_macros): Bail out before style issues nags when
9137         $opt_warning is false.
9138         * doc/libtool.texi (Invoking Libtoolize): Document it.
9139         * tests/libtoolize.at: Test it.
9140         * NEWS: Updated.
9141
9142         Fix libtoolize test failure with aclocal-1.10.1.
9143         * tests/libtoolize.at
9144         (verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Force aclocal to
9145         search the source tree for latest libtool macros.
9146
9147 2008-04-24  Eric Blake  <ebb9@byu.net>
9148
9149         Fix bug in 2008-04-21 type improvements.
9150         * libltdl/ltdl.c (load_deplibs): Fix casting bug.
9151
9152 2008-04-23  Michael Haubenwallner  <michael.haubenwallner@salomon.at>
9153
9154         Use /nonexistent as destination for files not to be installed.
9155         * tests/darwin.at (darwin fat compile): Fix typo.
9156         * tests/inherited_flags.at (inherited_linker_flags): Change
9157         -rpath to /nonexistent.  This helps to avoid accidentally
9158         picking up libraries below /usr/local.
9159         * tests/template.at (simple template test): Likewise.  Fixes
9160         test failure for additional incompatible libstdc++ in
9161         /usr/local.
9162         * tests/testsuite.at (configure_options): Add
9163         --prefix=/nonexistent.
9164
9165 2008-04-23  Gary V. Vaughan  <gary@gnu.org>
9166
9167         * libtoolize.m4sh (rerun_aclocal): Remove unused variable.
9168         Reported by Olly Betts <olly@survex.com>
9169
9170 2008-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9171
9172         * tests/static.at (ccache -all-static): Ignore link warnings.
9173         Report by Gary V. Vaughan.
9174
9175 2008-04-22  Gary V. Vaughan  <gary@gnu.org>
9176
9177         Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
9178         * libtoolize.m4sh (func_check_macros): Always advise use of
9179         AC_CONFIG_MACRO_DIR when not able to copy libtool macros into
9180         the project tree.
9181         * tests/libtoolize.at: New test for correct diagnosis of mismatch
9182         between AC_CONFIG_MACRO_DIR and ACLOCAL_AMFLAGS.
9183         Update expected output of other tests.
9184         * NEWS: Updated.
9185
9186 2008-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9187
9188         Fix regression over 1.5.26 with ccache $CC -all-static.
9189         * libltdl/config/ltmain.m4sh (func_mode_link): Add
9190         $link_static_flag to compile_command and link_command only
9191         later, instead of right after a possible compiler wrapper.
9192         * tests/static.at (ccache -all-static): New test.
9193         * THANKS: Update.
9194         Report by Richard Purdie.
9195
9196 2008-04-22  Andreas Schwab  <schwab@suse.de>
9197             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9198
9199         Fix default argument for AC_LIBLTDL_CONVENIENCE.
9200         * libltdl/m4/ltdl.m4 (AC_LIBLTDL_CONVENIENCE): Default argument
9201         to libltdl.
9202         (AC_LIBLTDL_INSTALLABLE): Likewise.
9203         * tests/configure-iface.at (convenience libltdl): New test.
9204
9205 2008-04-21  Gary V. Vaughan  <gary@gnu.org>
9206
9207         Only complain that files are up-to-date with --force.
9208         As a side effect, this also means that when `aclocal' copies the
9209         libtool macros into `aclocal.m4' libtoolize complains only about
9210         the macro files that are missing or not up-to-date.
9211         * libtoolize.m4sh (func_echo_once): New function that prints
9212         the contents of a named variable only on the first call.
9213         (func_aclocal_update_check): New function that compares serial
9214         numbers of libtool macros in aclocal.m4 and only diagnoses the
9215         missing files.
9216         (func_copy, func_copy_cb, func_copy_some_files, func_serial_update)
9217         (func_keyword_update, func_ltmain_update, func_config_update)
9218         (func_install_update): Accept a new argument naming a variable
9219         containing a header string to print with func_echo_once iff any
9220         body text is output by this function.
9221         (func_install_pkgmacro_subproject, func_install_pkgmacro_parent)
9222         (func_install_pkgltdl_files, func_install_pkgconfig_subproject)
9223         (func_install_pkgconfig_parent: Set and pass a suitable
9224         header string variable for the above functions.
9225         (func_serial_update_check): Don't advise rerunning `libtoolize
9226         --force' when aclocal.m4 is not m4_including libtoolize installed
9227         macro files.
9228         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic
9229         /usr/local/share/aclocal paths to point into the uninstalled
9230         libtool macro directory.
9231         * tests/libtoolize.at: Update tests that were checking for old
9232         behaviour of outputing `file is already up to date' even when
9233         --force was not passed.
9234         * tests/libtoolize.at: New tests to prevent regressions of these
9235         smarter messages.
9236         * NEWS: Updated.
9237         Reported by Olly Betts <olly@survex.com>
9238
9239         Capture lt~obsolete.m4 serial number correctly in libtoolize.
9240         * libltdl/m4/lt~obsolete.m4: Add the filename to the #serial
9241         marker so that libtoolize's serial number checks can find it
9242         in a non-include using aclocal.m4.
9243         * NEWS: Updated.
9244         Reported by Olly Betts <olly@survex.com>
9245
9246         Allow better compile time type checking for lt_dladvise.
9247         * libltdl/lt__private.h (lt__handle, lt__advise): Typedefs
9248         removed in favour of...
9249         * libltdl/ltdl.h (lt_dlhandle),
9250         libltdl/libltdl/lt_dlloader.h (lt_dladvise): ...changing from
9251         void* to forward declarations.
9252         * libltdl/loaders/dlopen.c, libltdl/loaders/loadlibrary.c,
9253         libltdl/lt_dlloader.c, libltdl/ltdl.c: Remove many redundant
9254         type casts.
9255         * NEWS: Updated.
9256         Suggested by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
9257
9258 2008-04-21  Peter O'Gorman  <peter@pogma.com>
9259
9260         basename does not take a list of strings.
9261         * libltdl/config/ltmain.m4sh(func_extract_archives): Use sed
9262         $basename.
9263         * tests/darwin.at: New. Check that we can built fat program,
9264         shared library and convenience library.
9265         * Makefile.am: Add test.
9266         Reported by LiKai Liu <liulk@cs.bu.edu>
9267
9268         Use AC_CHECK_TOOL for lipo too.
9269         * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
9270         * libltdl/config/ltmain.m4sh (func_extract_archives): Use.
9271
9272 2008-04-20  Gary V. Vaughan  <gary@gnu.org>
9273
9274         Fix misleading lt_dlopenadvise documentation.
9275         * doc/libtool.texi (lt_dlopenadvise): The last parameter is of
9276         type lt_dladvise, not lt_dladvise*.
9277         (my_dlopenext): Correct the example too.
9278         * NEWS: Updated.
9279         Reported by Gary Kumfert <kumfert@llnl.gov>
9280
9281 2008-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9282
9283         Fix testsuite cleanup warnings on AIX with NFS.
9284         * tests/testsuite.at [ aix ]: Set file mode creation so that
9285         'others' have no permissions.  Shared libraries are kept in
9286         memory on AIX after use if they are world-readable, which means
9287         on NFS mounts cleanup of test group directories will fail later.
9288         * THANKS: Update.
9289         Report and analysis by Michael Haubenwallner.
9290
9291         Fix nonportable use of expr.
9292         * libltdl/config/ltmain.m4sh (func_mode_link) <Transforming
9293         deplibs into only shared deplibs>: Fix expr portability issues,
9294         noted on FreeBSD.  While at it, simplify and avoid forking.
9295         Report by Bob Friesenhahn.
9296
9297         Exploit shell arithmetic expansion and ${#var}.
9298         * libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also check
9299         for arithmetic expansion, and ${#var}.
9300         (_LT_PROG_XSI_SHELLFNS): Define func_arith and func_len
9301         accordingly, falling back on 'expr'.  Note that the argument to
9302         func_len may not start with a hyphen.  In the pre-Posix
9303         fallback, take care not to rely on the exit status of the
9304         variable assignment (not portable), but set the length to
9305         $max_cmd_len instead.
9306         * libltdl/config/ltmain.m4sh (func_mode_link): Use func_arith
9307         and func_len throughout for integer arithmetic, fixing
9308         quadratical amount of counting for reloadable object and
9309         piecewise archive linking.  Change all comparisons with
9310         max_cmd_len to test for smaller, non-equal length.
9311         * THANKS: Update.
9312         Suggested by Roland Mainz.
9313
9314         * libltdl/config/ltmain.m4sh (func_mode_compile): Avoid
9315         redundant removal of old output files before compilation.
9316         Do not remove $obj until we have successfully grabbed the
9317         lockfile (in case the compiler doesn't grok `-c -o'), because
9318         it might be identical to $output_obj.
9319         At the end of the function, before we remove the lockfile,
9320         update $removelist so that if the trap hits after the lockfile
9321         has been removed, we do not accidentally remove $output_obj that
9322         does not belong to us.
9323         (func_write_libtool_object): Use $MV instead of mv.
9324
9325 2008-04-18  Andreas Schwab  <schwab@suse.de>
9326
9327         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Check optional
9328         argument.
9329         (AC_ENABLE_STATIC): Likewise.
9330         (AC_ENABLE_FAST_INSTALL): Likewise.
9331
9332 2008-04-16  Eric Blake  <ebb9@byu.net>
9333
9334         Make ChangeLog merges easier.
9335         * .gitattributes: New file.
9336         * HACKING: Mention how it helps.
9337
9338 2008-04-15  Peter O'Gorman  <peter@pogma.com>
9339
9340         Allow bootstrap from git repository.
9341         * Makefile.am: Pass srcdir as an argument to mkstamp and expect
9342         only 2 fields in mkstamps output.
9343         * clcommit.m4sh: Ditto.
9344         * configure.ac: Ditto.
9345         * libltdl/config/mkstamp: return a revision and date based on
9346         the number of lines which look like dates in all the ChangeLog*
9347         files in the directory we got as arg 1.
9348
9349 2008-04-11  Eric Blake  <ebb9@byu.net>
9350
9351         Fix usage of setmode without declaration on cygwin.
9352         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Ensure
9353         setmode has prototype for both mingw and cygwin.
9354
9355 2008-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9356
9357         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Move non-XSI
9358         definition of func_dirname_and_basename ...
9359         * libltdl/config/general.m4sh (func_dirname_and_basename):
9360         ... here, to use it for the other scripts that use general.m4sh
9361         (and as portable fallback for libtool).  Add marker for early
9362         insertion of generated shell functions (into libtool, not the
9363         other scripts) here.
9364         Use func_dirname_and_basename to compute progname, progpath.
9365         * libltdl/config/ltmain.m4sh (func_mode_help): Remove marker
9366         for insertion of generated shell functions.
9367         * tests/sh.test: Adjust function definition test to not match
9368         function call.
9369
9370         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS) <func_xform>:
9371         New function.
9372         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it to
9373         avoid two forks with XSI shells.
9374         * tests/suffix.test: Also test a file with multiple dots.
9375
9376 2008-04-10  Peter O'Gorman  <peter@pogma.com>
9377
9378         * libltdl/config/ltmain.m4sh (func_win32_libid,
9379         func_generate_dlsyms, func_extract_an_archive,
9380         func_extract_archives, func_mode_help): move these so they
9381         appear after func_mode_compile.
9382         * tests/nomode.test: Check that --mode=link --help works.
9383         Reported by Josh Triplett <josh@freedesktop.org>
9384
9385 2008-04-07  Gary V. Vaughan  <gary@gnu.arg>
9386
9387         * doc/libtool.texi (Libltdl interface): Add missing
9388         documentation for lt_dlopenavise.
9389         Reported by Anton Erti <anton@mips.complang.tuwien.ac.at>
9390
9391         * configure.ac, libltdl/configure.ac (AM_INIT_AUTOMAKE): Use
9392         gnu rather than gnits standards so that version number 2.2.3a
9393         is not rejected!
9394         Reported by Olly Betts <olly@survex.com>
9395
9396 2008-04-01  Gary V. Vaughan  <gary@gnu.arg>
9397
9398         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9399         number to 2.2.3a.
9400
9401         GNU Libtool 2.2.2 was released.
9402
9403         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9404         number to 2.2.2.
9405         * libltdl/Makefile.in (LTDL_VERSION_INFO): C:R+1:A because the
9406         interfaces are unchanged, even though we improved the code some
9407         more.
9408         * NEWS: Updated.
9409
9410         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
9411         libltdl/m4/ltoptions.m4: Bump serial numbers to account for
9412         changes since 2.2 release.
9413
9414 2008-03-27  Peter O'Gorman  <peter@pogma.com>
9415
9416         * libltdl/m4/libtool.m4 [_LT_REQUIRED_DARWIN_CHECKS]: Fix the
9417         test for -single_module and log it to config.log.
9418         Reported by Torok Edwin and Nigel Home.
9419
9420 2008-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9421
9422         Document that disable-static plus -all-static is not portable.
9423         * doc/libtool.texi (Link mode): -all-static does not go well
9424         with disable-static on most systems.
9425         * tests/static.at (static linking flags for programs) [!aix]:
9426         With --disable-static but nonempty link_static_flag, skip the
9427         m-all-static link.  Do not skip it on AIX, as there the
9428         enable_static is self-inflicted, and thus expected to work.
9429         * THANKS: Update.
9430         Report by Nix.
9431
9432 2008-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9433
9434         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): No need to escape
9435         backticks in argument to AC_MSG_WARN or AC_MSG_ERROR.
9436         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE, LTDL_INIT): Likewise.
9437
9438 2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9439
9440         * libltdl/config/ltmain.m4sh (NLS nuisances): Fix quoting of
9441         localization variables for shell-active characters.
9442         * tests/localization.at (localized compiler messages): Extend
9443         test.
9444         * THANKS: Update.
9445         Report by Mike Frysinger.
9446
9447 2008-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9448
9449         * tests/defs.m4sh (func_get_config): Build egrep regex to speed
9450         up extracting several variables at once.  Use it to extract all
9451         default variables at once.  Also extract build_alias and
9452         host_alias from the libtool script.
9453         (func_configure_nofail): Use build_alias and host_alias for
9454         --build and --host, respectively.  Pass each if nonempty.
9455         * tests/testsuite.at: Pass --build if build_alias is nonemtpy.
9456         * tests/quote.test: Extract ECHO and wl at once.
9457
9458         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_WIN32_DLL): Require
9459         AC_CANONICAL_HOST.
9460         * THANKS: Update.
9461         Report by Jakub Bogusz.
9462
9463 2008-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9464
9465         * NEWS: Update.
9466
9467 2008-03-12  Charles Wilson  <libtool@cwilson.fastmail.fm>
9468
9469         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src) [file
9470         scope]: additional #includes and #defines to support...
9471         (func_emit_cwrapperexe_src) [main]: ensure stdout is set to
9472         binary mode for cygwin|mingw builds. Ensure temporary script
9473         file is written in binary mode for cygwin|mingw builds.
9474         (func_mode_link) [cygwin|mingw]: cross-build support - only
9475         use cwrapper to generate shell wrapper if building native;
9476         otherwise use func_emit_wrapper()
9477
9478 2008-03-12  Henning Nielsen Lund  <hnl_dk@amigaos.dk>
9479
9480         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
9481         (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [amigaos]: Port to
9482         AmigaOS4 shared libraries on powerpc.
9483         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [amigaos]:
9484         Likewise.
9485         * THANKS, NEWS: Update.
9486
9487 2008-03-09  Bruno Haible  <bruno@clisp.org>
9488         and Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9489
9490         Fix compiler output to be in the user locale.
9491         * libltdl/config/general.m4sh (func_show_eval_locale): New
9492         function, for running commands in the user locale.
9493         * libltdl/config/ltmain.m4sh (func_mode_compile): Use it for
9494         compiling.
9495         * tests/localization.at (localized compiler messages): New test.
9496         * Makefile.am: Adjust.
9497         Report by Bruno Haible.
9498
9499 2008-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9500
9501         Fix several test failures on Cygwin and MinGW.
9502         * tests/nonrecursive.at: Use -no-undefined for foo.la.
9503         * tests/recursive.at: Likewise.
9504         * tests/subproject.at: Likewise.
9505         * tests/lt_dladvise.at: For systems where undefined symbols are
9506         not allowed, to not try to load the module libdepend.
9507         [ mingw ]: Add to list of such systems.
9508         * tests/testsuite.at (_LT_AT_TRANSLATE_TEXT_OUTPUT): New macro,
9509         to translate line ending of expout and experr files suitable for
9510         host executables.
9511         (LT_AT_CHECK, LT_AT_NOINST_EXEC_CHECK): Use it.
9512         Report by Bob Friesenhahn.
9513
9514         Fix installcheck dependencies, fix for --program-transform-name.
9515         * Makefile.am (installcheck-local): Depend upon tests/atconfig
9516         and $(srcdir)/$(TESTSUITE).
9517         * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): New macro.
9518         (LT_AT_CHECK_LIBTOOLIZE): Use it to transform expout and experr
9519         files suitably.
9520         * HACKING: Update.
9521
9522         Drop usage of obsolete macros AC_EXEEXT and AC_OBJEXT.
9523         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
9524         (_LT_COMPILER_C_O, LT_PATH_NM, _LT_CMD_GLOBAL_SYMBOLS, _LT_SETUP):
9525         Drop usage of obsolete AC_OBJEXT and AC_EXEEXT.
9526         * tests/am-subdir.at (C++ subdir-objects): Likewise.
9527
9528 2008-03-07  Peter O'Gorman  <peter@pogma.com>
9529
9530         * tests/convenience.at (Java convenience archives): Skip test if
9531         gcj cannot compile a working executable from .java files.
9532         Report by Nelson H. F. Beebe.
9533
9534         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Need to set LD.
9535         Reported by Nelson H. F. Beebe.
9536
9537 2008-03-06  Peter O'Gorman  <peter@pogma.com>
9538
9539         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Undo commit - bad idea.
9540
9541         * libltdl/m4/libtool.m4 (_LT_PROG_FC): Report FC=no if the FC
9542         compiler is not a GNU compiler and the CXX compiler is a GNU
9543         compiler.
9544         Reported by Nelson H. F. Beebe.
9545
9546 2008-03-06  Gary V. Vaughan  <gary@gnu.org>
9547
9548         * Makefile.maint (TSDEPS_DIST): Removed.  No longer used.
9549         (TSDEPS): libtool.m4 has long since moved to libltdl.
9550         (cvs-dist): Don't put the suffix dot in twice.
9551
9552 2008-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9553
9554         * tests/convenience.at (Java convenience archives): Skip test if
9555         gcj cannot compile a .java file.
9556         Report by Nelson H. F. Beebe.
9557
9558 2008-03-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9559
9560         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p): redirect
9561         and restore from stdin, not stdout.
9562         * tests/execute-mode.at (execute mode): Adjust test to catch
9563         this.
9564         Report by Roberto Bagnara.
9565
9566 2008-03-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9567
9568         Fix libltdl to not skip dlopen on systems with several loaders,
9569         such as HP-UX, Cygwin.
9570         * libltdl/slist.c (slist_concat): When appending to the tail
9571         of a list, do not drop items off the beginning of the list.
9572         * NEWS: Update.
9573
9574         * libltdl/config/ltmain.m4sh (func_mode_execute): Replace only
9575         arguments we have identified as shell or C wrappers.
9576         (func_emit_wrapper): Output error message on stderr.
9577         * tests/execute-mode.at: New file, with --mode=execute tests.
9578         * Makefile.am: Adjust.
9579         * NEWS: Update.
9580         Fixes 2.2 regression.  Report by Roberto Bagnara.
9581
9582         * libltdl/m4/libtool.m4 (_LT_CONFIG): Drop misleading `GNU'
9583         prefix before the host package name in the "Generated by" line
9584         for the libtool script.
9585         * THANKS: Update.
9586         Reports by Peter Rosin and Roberto Bagnara.
9587
9588         * doc/libtool.texi (Module loaders for libltdl): Fix typo.
9589
9590         * libltdl/loaders/dld_link.c (vl_exit): New function, zero out ...
9591         (vtable): ... this new file static variable split out from ...
9592         (get_vtable): ... here.  Initialize vtable, register vl_exit as
9593         dlloader_exit function.
9594         * libltdl/loaders/dlopen.c: Likewise.
9595         * libltdl/loaders/dyld.c: Likewise.
9596         * libltdl/loaders/load_add_on.c: Likewise.
9597         * libltdl/loaders/loadlibrary.c: Likewise.
9598         * libltdl/loaders/shl_load.c: Likewise.
9599         * libltdl/loaders/preopen.c: Likewise; vl_exit existed here
9600         already.
9601         * tests/lt_dlexit.at (lt_dlexit unloading libs): Update test.
9602         * NEWS: Update.
9603         Report by Andreas Schwab.
9604
9605 2008-03-01  Gary V. Vaughan  <gary@gnu.org>
9606
9607         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9608         number to 2.3a.
9609
9610         GNU Libtool 2.2 was released.
9611
9612         * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9613         number to 2.2.
9614         * NEWS: Updated.
9615
9616         * tests/lt_dladvise.at, tests/lt_dlexit.at,
9617         tests/need_lib_prefix.at: Skip these tests when called from
9618         `make distcheck DISTCHECK_CONFIGURE_FLAGS=--disable-ltdl-install'.
9619         The tests try to link against the dummy installed libltdl.la
9620         from .../_inst/lib/libltdl.la, which does not exist when
9621         configured with --disable-ltdl-install.
9622
9623 2008-02-29  Gary V. Vaughan  <gary@gnu.org>
9624
9625         * libltdl/m4/argz.m4 (AC_CHECK_FUNCS): Also use our replacement
9626         argz if the system argz_add or argz_count are missing.
9627         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
9628
9629 2008-02-26  Karl Berry  <karl@freefriends.org>
9630
9631         * libltdl/argz.c (argz_add, argz_count): New functions.
9632         * libltdl/argz_.h: Declare them.
9633         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
9634
9635 2008-02-20  Peter O'Gorman  <peter@pogma.com>
9636
9637         * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Do not call the
9638         _LT_SYS_DYNAMIC_LINKER macro here.
9639         Reported by Mike Frysinger <vapier@gentoo.org>
9640
9641 2008-02-15  Peter O'Gorman  <peter@pogma.com>
9642
9643         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix typo.
9644
9645 2008-02-14  Peter Breitenlohner  <peb@mppmu.mpg.de>
9646
9647         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better handling
9648         of predefined values for lt_cv_sys_lib_search_path_spec and
9649         lt_cv_sys_lib_dlsearch_path_spec.
9650
9651 2008-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9652
9653         * libtoolize.m4sh (func_install_pkgconfig_files): Only call
9654         func_install_pkgconfig_parent if $seen_autoconf.
9655         * tests/standalone.at (compiling softlinked libltdl)
9656         (compiling copied libltdl, installable libltdl)
9657         (linking libltdl without autotools): Use checked libtoolize
9658         calls to catch warnings.
9659
9660 2008-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9661
9662         * libltdl/configure.ac: Bump package version.
9663         * HACKING: Reminder to do it next time, too.
9664
9665 2008-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9666
9667         * tests/mdemo/Makefile.am (@LIBLTDL@): Update outdated
9668         dependencies.
9669         ($(top_distdir)/libltdl/libtool): Remove.
9670         Fixes spurious mdemo-dryrun failure with OpenBSD make.
9671
9672 2008-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9673
9674         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
9675         Treat like icc and ecc, for fixed `-Wl,' and `-KPIC' settings.
9676
9677 2008-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9678
9679         * tests/archive-in-archive.at
9680         (static library contains static library): Test also the actual
9681         broken link command, and the following install command, as
9682         UnixWare ar rightly refuses to put an archive into an archive.
9683         Report by Tim Rice.
9684
9685 2008-02-06  Peter O'Gorman  <peter@pogma.com>
9686
9687         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Only set default
9688         LT_INIT values for LT_INIT, not LTDL_INIT.
9689         Reported by Jochem Huhmann <joh@revier.com>
9690
9691 2008-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9692
9693         * tests/testsuite.at (LT_AT_TAG): For the CXX tag, if $CXX is
9694         g++, check that `g++ -v' works; AC_PROG_CXX may have set that
9695         as default value even if it found no C++ compiler.
9696         Report by Andreas Schwab.
9697
9698 2008-02-02  Gary V. Vaughan  <gary@gnu.org>
9699
9700         * libltdl/Makefile.inc (EXTRA_DIST): Now that we're not using
9701         Autoconf's AC_SOURCES macro, Automake can't trace our extra
9702         source files argz, lt__dirent.c and lt__strl.c.  List them
9703         manually here to make sure they are distributed.
9704         * NEWS: Updated.
9705         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
9706
9707 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9708
9709         * configure.ac (AC_INIT): Bump version number to 2.1c.
9710
9711         GNU Libtool 2.1b was released.
9712
9713         * configure.ac (AC_INIT): Bump version number to 2.1b.
9714         * libltdl/Makefile.inc (LTDL_VERSION_INFO): Increment to account
9715         for new interfaces since the last libltdl update.
9716         * HACKING (Release Procedure): Note that LTDL_VERSION_INFO is now
9717         kept in libltdl/Makefile.inc.
9718
9719 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9720
9721         * tests/cdemo, tests/depdemo, tests/fcdemo, tests/pdemo,
9722         tests/demo, tests/f77demo, tests/mdemo, tests/tagdemo
9723         (distclean-local): Remove compiler file droppings left by
9724         Autoconf tests that prevent make dist from finishing on
9725         several machines including Mac OS 10.5.
9726
9727 2008-02-01  Gary V. Vaughan  <gary@gnu.org>
9728
9729         Unfortunately, the autoconf implementation of AC_LIBOBJ and
9730         friends requires all libobjs to be in the same directory, as
9731         declared by AC_CONFIG_LIBOBJ_DIR.  That might prevent using
9732         either recursive or nonrecursive libltdl if the parent project
9733         has libobjs of its own, except that this patch tracks libltdl's
9734         libobjs in another namespace:
9735
9736         * libltdl/m4/ltdl.m4 (_LT_LIBOBJ, _LT_LIBSOURCES): Versions of
9737         AC_LIBOBJ and AC_LIBSOURCES that save missing sources in a
9738         ltdl_LIBOBJS automake macro, instead of the global LIBOBJS
9739         automake macro.  Content of the macros inspired by code from
9740         gnulib-tool.
9741         (_LTDL_MODE_DISPATCH): Initialise lt_libobj_prefix in
9742         nonrecursive mode.
9743         (LTDL_INIT): Push and pop the new definitions around potential
9744         sites that call AC_LIBOBJ.  Also, using lt_libobj_prefix,
9745         initialise ltdl_LIBOBJS and ltdl_LTLIBOBJS.
9746         * libtoolize.m4sh (func_fixup_Makefile): Substitute ltdl_LIBOBJS
9747         and ltdl_LTLIBOBJS for LIBOBJS and LTLIBOBJS during copying
9748         either Makefile.am or Makefile.inc, depending on ltdl_mode.
9749         Reported by Eric Blake <ebb9@byu.net>
9750
9751 2008-01-30  Gary V. Vaughan  <gary@gnu.org>
9752
9753         There are 5 distinct batches of files that libtoolize might
9754         install into a project, depending on whether libltdl is
9755         being installed in subproject mode, and in that case whether
9756         the parent project shares the config and macro directories
9757         with the subproject ltdl.  Make a separate function for each
9758         of those 5 batches (4 new functions below, plus the recently
9759         factored func_install_pkgltdl_files), and make a clearer
9760         distinction between when each of them is needed:
9761
9762         * libtoolize.m4sh (func_install_pkgmacro_subproject):
9763         New function for installing and reporting on m4 files copied
9764         to a subproject ltdl directory.
9765         (func_install_pkgmacro_parent): Similar new function for m4
9766         files copied solely for the use of the parent project,
9767         including serial checking.
9768         (func_install_pkgconfig_subproject): New function for
9769         installing and reporting on config helper files copied to a
9770         subproject ltdl directory.
9771         (func_install_pkgconfig_parent): Similar new function for
9772         config helper files copied solely for the use of the parent
9773         project, including serial checking.
9774         (func_install_pkgmacro_files, func_install_pkgconfig_files):
9775         Rewritten in terms of the above functions.
9776         * tests/libtoolize.at: Adjust test expout's to match newly
9777         regularized libtoolize output.
9778         Move parent project pkgconfig files to build-aux directory
9779         so that progress messages show an obvious difference to
9780         pkgconfig files installed to subproject `config' directory.
9781         (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test.
9782         (diagnose missing LT_CONFIG_LTDL_DIR): New test.
9783         (subproject ltdl with non-shared directories): New test.
9784         Reported by Eric Blake <ebb9@byu.net>
9785
9786 2008-01-29  Peter O'Gorman  <peter@pogma.com>
9787
9788         * libltdl/m4/libtool.m4 [darwin]: Changes to glob pattern matching
9789         to be safer.
9790
9791         Search the compiler path too.
9792         * libltdl/m4/libtool.m4 (compiler_lib_search_dirs): New variable.
9793         * libltdl/config/ltmain.m4sh: Use it.
9794         Reported by Maynard Johnson
9795
9796 2008-01-28  Gary V. Vaughan  <gary@gnu.org>
9797
9798         * libtoolize.m4sh (func_check_macros): Correct typo with
9799         '$opt_quiet ||' where '$opt_quiet &&' that was preventing
9800         func_check_macros from running!
9801
9802         * libtoolize.m4sh: Set opt_ltdl whenever seen_ltdl is set
9803         so that libtoolize behaves as though --ltdl was passed even
9804         if it wasn't as long as LTDL_INIT (or equivalent) was seen
9805         in configure.ac.  Adjust redundant '$opt_ltdl || $seen_ltdl'
9806         to simply '$opt_ltdl'.
9807         Reported by Eric Blake <ebb9@byu.net>
9808
9809         * libtoolize.m4sh (func_check_macros): Check opt_quiet
9810         in the function itself to simplify calling it.  Also move
9811         the definition of the function.
9812
9813         * libtoolize.m4sh (func_scan_files): Be sure to set the
9814         default libltdl mode to 'subproject' when libtoolize is
9815         executed before configure.ac has been updated.
9816
9817 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
9818
9819         * libtoolize.m4sh (func_install_pkgconfig_files)
9820         (func_install_pkgmacro_files, func_install_pkgltdl_files):
9821         Factored out from the 'Main' section of the file.
9822
9823         * libtoolize.m4sh (subproject_auxdir, subproject_macrodir):
9824         New variables to hold the default locations for auxfiles
9825         and macrofiles in a subproject libltdl.
9826         (ac_auxdir, ac_macrodir): New variables to hold the values
9827         passed by AC_CONFIG_AUX_DIR and AC_CONFIG_MACRO_DIR resp.
9828         (auxdir, macrodir): Adjust to contain the values to be
9829         used by libtoolize at runtime.
9830
9831         * libtoolize.m4sh (func_fixup_Makefile)
9832         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
9833         (func_massage_pkgconfig_files): Add missing $opt_debug.
9834
9835 2008-01-27  Gary V. Vaughan  <gary@gnu.org>
9836
9837         * libtoolize (func_fixup_Makefile, func_massage_aclocal_DATA)
9838         (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
9839         Add missing $opt_debug.
9840
9841 2008-01-26  Gary V. Vaughan  <gary@gnu.org>
9842
9843         * libtoolize.m4sh (Main): Copy (or link) libltdl sources
9844         into project tree when LTDL_INIT was seen, whether or not
9845         `--ltdl' is passed.
9846         (func_check_macros): Recommend LTDL_INIT instead of
9847         LT_WITH_LTDL when `--ltdl' is used before configure.ac is
9848         upgraded.
9849         * tests/libtoolize.at: Test that it works.
9850         (_LT_AT_LTDL_SETUP): Factor out some common test setup.
9851         Reported by Eric Blake <ebb9@byu.net>
9852
9853 2008-01-24  Peter O'Gorman  <peter@pogma.com>
9854
9855         * doc/notes.texi: Fix errors in previous commit.
9856
9857         * libltdl/m4/libtool.m4 (sys_lib_search_path_spec,
9858         sys_lib_dlsearch_path_spec): Allow for a cache variable
9859         lt_cv_sys_lib_... to set these at configure time.
9860         * doc/notes.texi: Short note about the above change.
9861
9862 2008-01-24  Eric Blake  <ebb9@byu.net>
9863
9864         Add proper quoting to doc examples.
9865         * doc/libtool.texi: Use m4 quotes where appropriate.
9866         (Test descriptions): Fix truncated sentence.
9867
9868 2008-01-18  Gary V. Vaughan  <gary@gnu.org>
9869
9870         * Makefile.am (DISTCLEANFILES): Remove libtool.dvi generated
9871         by 'make dvi'.
9872
9873 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9874
9875         * libtoolize.m4sh (func_scan_files): Avoid matching our own
9876         macro code when scanning configure.ac and aclocal.m4.
9877         Don't produce spurious output if AC_PROG_RANLIB is found.
9878         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Add a (weak) check
9879         that we don't match our own macro code when searching for user
9880         code calling us.
9881         * TODO: Updated.
9882
9883 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9884
9885         New variable LTDLDEPS for use in output_DEPENDENCIES.
9886
9887         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE, _LTDL_INSTALLABLE)
9888         (LTDL_INIT): Set and substitute LTDLDEPS according to chosen
9889         method.
9890         * tests/configure-iface.at (installable libltdl)
9891         (--with-ltdl-include/lib, --with-included-ltdl): Test it.
9892         * doc/libtool.texi (Distributing libltdl): Document LTDLDEPS.
9893         * NEWS: Updated.
9894         Dependency bug exposed by Eric Blake in M4, found by Bob Proulx
9895         build daemon.
9896
9897 2008-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9898
9899         * doc/libtool.texi (Distributing libltdl): Clarify that
9900         `${top_build_prefix}' may be used in place of `${top_builddir}/'.
9901
9902         * doc/libtool.texi (Distributing libltdl): Clarify that
9903         LTDL_INIT goes after LT_INIT; also show the latter in the
9904         respective examples.
9905         * tests/subproject.at: Adjust order.
9906
9907 2008-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9908
9909         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Use AM_CONDITIONAL
9910         only if defined.  Allows to use libltdl without aclocal.
9911
9912 2008-01-16  Peter O'Gorman  <peter@pogma.com>
9913
9914         * libltdl/m4/libtool.m4: Set GCC var for every tag, avoids need
9915         to set withGCC var.
9916
9917 2008-01-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9918
9919         * configure.ac: Set libltdl nonrecursive option, to avoid
9920         configuring libltdl inside the Libtool package.
9921
9922 2008-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9923
9924         Silence all non-warning output from `libtool --silent'.
9925         * libltdl/config/ltmain.m4sh (func_generate_dlsyms)
9926         (func_extract_archives, func_mode_link): Use func_verbose
9927         instead of func_echo for all non-warning output.
9928
9929         * Makefile.maint (fetch): Update to match upstream git sources.
9930         Pull `INSTALL' from gnulib instead of from Autoconf.
9931
9932         * doc/notes.texi: Mention AIX binutils deficiency for C++ code.
9933         Report by Rainer Tammer.
9934         Suggest using bash for configure.
9935
9936         * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Fix to use
9937         new _LT_SET_OPTION semantics.
9938
9939 2008-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9940
9941         * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define
9942         LTDL_DLOPEN_SELF_WORKS, depending upon lt_cv_dlopen_self.
9943         * libltdl/loaders/dlopen.c (vm_open) [!LTDL_DLOPEN_SELF_WORKS]:
9944         Fail for dlopen(NULL), so that the preopen loader is used.  This
9945         fixes mdemo-exec.test failures on AIX where dlopen(NULL)
9946         succeeds but dlsym resolves no symbol.
9947         * NEWS: Update.
9948         Report by Rainer Tammer.
9949
9950         * tests/am-subdir.at: Drop unused variables.
9951         * tests/configure-iface.at: Likewise.
9952         * tests/ctor.at: Likewise.
9953         * tests/early-libtool.at: Likewise.
9954         * tests/lt_dladvise.at: Likewise.
9955         * tests/old-m4-iface.at: Likewise.
9956         * tests/lt_dlexit.at: Likewise.  Also drop unused functions.
9957
9958         * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Also copy needed
9959         lt~obsolete.m4.
9960
9961         * libltdl/config/ltmain.m4sh (func_mode_link): Fix warning
9962         about -l and -L for archives and objects as output, to not
9963         trigger for *.la files.  Non-convenience archives are diagnosed
9964         later on.
9965
9966         * tests/configure-iface.at: Ensure LTDLINCL is expanded
9967         before CPPFLAGS, so that even CPPFLAGS=-I/usr/local/include
9968         won't make the tests prefer an installed ltdl.h over the
9969         in-package one.
9970         * tests/lt_dladvise.at, tests/lt_dlexit.at: Likewise.
9971         * tests/need_lib_prefix.at, tests/old-m4-iface.at: Likewise.
9972         Report by Bob Friesenhahn.
9973
9974 2008-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9975
9976         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) <exclude_expsyms>:
9977         Also exclude `_GLOBAL__F[ID]_.*'.  Also set for the C++ tag.
9978         Fixes esp. demo/helldl build failure with GCC on AIX.
9979         Report by Rainer Tammer.
9980
9981 2008-01-11  Peter O'Gorman  <peter@pogma.com>
9982
9983         * libltdl/m4/libtool.m4 [darwin]: Reorganize darwin support, use
9984         dsymutil if it is available so that debugging is possible, check
9985         for nmedit and dsymutil with AC_CHECK_TOOL, use the linker flag
9986         -exported_symbols_list in preference to nmedit if it is available.
9987         Drop support for xlc, it is probably broken.
9988         * tests/template.at [darwin]: Skip this test, I can not find a way
9989         to make it work on darwin9 with Xcode-3.0.
9990         * NEWS: Note the dropping of xlc support.
9991
9992 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9993
9994         * libltdl/m4/libtool.m4 (LT_INIT): m4_require, not AC_REQUIRE
9995         _LT_CHECK_BUILDDIR, as it's m4_defun'ed, not AC_DEFUN'ed.
9996         Report by Peter O'Gorman.
9997
9998         * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE): Restore correct
9999         _LT_BUILD_PREFIX-using code.
10000
10001 2008-01-08  Gary V. Vaughan  <gary@gnu.org>
10002
10003         * tests/recursive.at: Remove bogus --debug option.
10004         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10005
10006         * tests/configure-iface.at: Build libltdl in a subdir so that
10007         it can be easily removed without trying to remove config.log
10008         on windows (which can't delete a file until it is closed).
10009         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10010
10011         * libltdl/m4/ltdl.m4 (LTDL_INSTALLABLE): Use _LT_BUILD_PREFIX
10012         instead of ${top_builddir} for Autoconf-2.62.
10013         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10014
10015         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Correct closing
10016         comment.
10017         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10018
10019         * NEWS: Grammar nit.
10020
10021         * tests/configure-iface.at, tests/nonrecursive.at,
10022         tests/recursive.at, tests/subproject.at (_LTDL_SETUP):
10023         Renamed to _LT_AT_LTDL_SETUP to avoid a nameclash with
10024         libltdl/m4/ltoptions.m4:_LTDL_SETUP from yesterday's patch.
10025         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10026
10027 2008-01-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10028
10029         * tests/runpath-in-lalib.at (Runpath in libtool library files):
10030         Compile program file without libtool.
10031         Report by Rainer Tammer.
10032
10033 2008-01-07  Rainer Tammer  <tammer@tammer.net>  (tiny change)
10034             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10035
10036         Support AIX 6.1.
10037         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
10038         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10039         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
10040         (_LT_LANG_FC_CONFIG): Adjust case patterns to match AIX 6
10041         through 9 as well.
10042         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
10043         * NEWS: Update.
10044         * THANKS: Update.
10045
10046 2008-01-07  Gary V. Vaughan  <gary@gnu.org>
10047
10048         Move libltdl build mode options from LT_CONFIG_LTDL_DIR to
10049         LTDL_INIT.  Accept (optional) new 'convenience' and 'installable'
10050         options in lieu of LTDL_CONVENIENCE and LTDL_INSTALL macros. And
10051         also, implement --with-included-ltdl, --with-ltdl-lib and
10052         --with-ltdl-include configure-time options:
10053
10054         * libltdl/m4/ltoptions.m4: Associate existing option settings with
10055         LT_INIT.
10056         (LT_OPTION_DEFINE): Associate options 'nonrecursive', 'recursive',
10057         'subproject', 'installable' and 'convenience' with LTDL_INIT.
10058         (_LT_MANGLE_OPTION, _LT_SET_OPTION, _LT_IF_OPTION)
10059         (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Add MACRO-NAME argument to
10060         support options to named macros instead of hardcoding only LT_INIT
10061         options.
10062         * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE): Factor common code from
10063         LTDL_CONVENIENCE and LTDL_INIT([convenience]).
10064         (_LTDL_INSTALLABLE): Factor out common code from LTDL_INSTALLABLE
10065         and LTDL_INIT([installable]).
10066         (_LTDL_SETUP): Renamed from LTDL_INIT.  Support new configure-time
10067         options: --with-included-ltdl, --with-ltdl-lib,
10068         --with-ltdl-include.
10069         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
10070         (LT_WITH_LTDL): Removed.
10071         (LTDL_INIT): Parse caller options.
10072         * libltdl/m4/libtool.m4 (LT_INIT): Declare that this macro must be
10073         expanded before LTDL_INIT, and be sure to parse caller options.
10074         * configure.ac: Call directly into internal _LTDL_SETUP macro.
10075         * libtoolize.m4sh (func_scan_files): Ltdl mode argument moved from
10076         LT_CONFIG_LTDL_DIR to LTDL_INIT.
10077         * tests/nonrecursive.at, tests/recursive.at: Use new interfaces.
10078         * tests/configure-iface.at: Test it.
10079         * Makefile.am (TESTSUITE_AT): Add configure-iface.at.
10080         * doc/libtool.texi (Distributing libltdl): Document improved
10081         LTDL_INIT interfaces.
10082         * NEWS: Updated.
10083
10084 2008-01-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10085
10086         * libltdl/config/ltmain.m4sh (func_mode_link): When creating
10087         reloadable object files, avoid issuing plain `rm -f' without
10088         further arguments, even if the line length limit is ridiculously
10089         low as in the `Run tests with low max_cmd_len' test.  This
10090         failure is exposed on NetBSD.
10091         Report by Patrick Welche.
10092
10093         * Makefile.am (EXTRA_DIST): Add ChangeLog.2007.
10094         * ChangeLog.2007: New, rotated, from...
10095         * ChangeLog: ...here.
10096         * NEWS, README, README.alpha, Makefile.am, libtoolize.m4sh,
10097         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
10098         libltdl/m4/libtool.m4: Bump copyright years.
10099
10100 2007-11-30  Stefan Sperling  <stsp@elego.de>  (tiny change)
10101
10102         * doc/libtool.texi (Linking executables): Reorder paragraphs.
10103
10104 2007-11-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10105
10106         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: The IBM
10107         XL 8.0 C++ compiler may also be called xlc++*, not only xlC*.
10108         Report by Nysal K Jan <jnysal@in.ibm.com>.
10109
10110 2007-11-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10111
10112         * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): New macro.
10113         Warn about whitespace in the absolute build tree name.
10114         (LT_INIT): Use it.
10115         * THANKS: Update.
10116         Report by Jim Meyering.
10117
10118         * libltdl/config/ltmain.m4sh (func_extract_an_archive)
10119         (func_extract_archives): Add some quoting.
10120
10121 2007-11-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10122
10123         Use `${top_build_prefix}' for better compatibility with non-GNU make.
10124         * libltdl/m4/ltdl.m4 (_LT_BUILD_PREFIX): New macro.
10125         If the Autoconf version used is >= 2.62, then expand to
10126         `${top_build_prefix}', otherwise to `${top_builddir}/'.
10127         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Use it for defining
10128         LIBLTDL.  Fixes a build failure with AIX make in a package
10129         using convenience libltdl in nonrecursive mode.
10130         * doc/libtool.texi (Distributing libltdl): Document requirements
10131         to define `top_build_prefix' if Automake is not used.
10132         Report by Bob Friesenhahn.
10133
10134 2007-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10135
10136         Avoid warnings about conftest.dSYM directories on Mac OS X Leopard.
10137         * libltdl/m4/libtool.m4 (_LT_LINKER_BOILERPLATE)
10138         (_LT_LINKER_OPTION, _LT_CMD_GLOBAL_SYMBOLS): Remove
10139         conftest.dSYM directory.
10140         Report and analysis by Jeff Squyres and Peter O'Gorman.
10141
10142 2007-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10143
10144         * libltdl/configure.ac: Drop the broken and long-disabled code
10145         to output a banner for the libltdl configure.  Avoids the need
10146         to ship mkstamp with libltdl.
10147
10148 2007-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10149
10150         * tests/runpath-in-lalib.at: New test.
10151         * Makefile.am: Update.
10152         Report by Benoit SIGOURE <tsuna@lrde.epita.fr>.
10153
10154 2007-10-16  Eric Blake  <ebb9@byu.net>
10155
10156         Speed up bootstrap by improving lt_join.
10157         * libltdl/m4/ltsugar.m4 (lt_join, _lt_join): Rewrite to mirror
10158         Autoconf 2.62's faster implementation.
10159
10160 2007-10-12  Eric Blake  <ebb9@byu.net>
10161
10162         Whitespace cleanup.
10163         * libltdl/m4/ltsugar.m4: Avoid space-tab in indents.
10164         * libltdl/m4/libtool.m4: Avoid trailing space.
10165
10166         Deal with Autoconf 2.62's semantic change in m4_append.
10167         * libltdl/m4/ltsugar.m4 (lt_append): Replace broken versions of
10168         m4_append.
10169         (lt_if_append_uniq): Don't require separator to be overquoted, and
10170         avoid broken m4_append.
10171         (lt_dict_add): Fix typo.
10172         * libltdl/m4/libtool.m4 (_LT_DECL): Don't overquote separator.
10173
10174 2007-10-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10175
10176         * libltdl/config/ltmain.m4sh: Also sanitize `LANGUAGE'.
10177         (func_mode_execute): Also restore `LANGUAGE', for old glibc.
10178         Report by Paul Eggert against Autoconf.
10179
10180 2007-10-11  Eric Blake  <ebb9@byu.net>
10181
10182         * libltdl/.cvsignore: Ignore argz.h.
10183
10184 2007-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10185
10186         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
10187         <lt_cv_prog_compiler_pic_works>: Renamed from
10188         lt_prog_compiler_pic_works.
10189         <lt_cv_prog_compiler_static_works>: Renamed from
10190         lt_prog_compiler_static_works.
10191         * NEWS: Update.
10192
10193 2007-10-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10194
10195         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
10196         extension `.sx'.
10197         * tests/suffix.test: Test it.
10198
10199 2007-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10200
10201         * libltdl/lt_dlloader.c (loader_callback, lt_dlloader_get): Use
10202         NULL, not 0, for the benefit of too picky compilers like PGI.
10203         * slist.c (slist_tail): Likewise.  Include stddef.h, for NULL.
10204         Report by Jeff Squyres.
10205
10206 2007-09-05  Eric Blake  <ebb9@byu.net>
10207
10208         * libltdl/ltdl.c (lt_dlcaller_get_data): Work even when no caller
10209         has set data.
10210
10211 2007-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10212
10213         * doc/libtool.texi (User defined module data)
10214         <lt_dlinterface_register>: Document that a NULL place matches
10215         all modules.
10216         * libltdl/lt_dlloader.c (lt_dlloader_remove): Actually iterate
10217         over all open modules when looking for modules that use it.
10218         If a resident module is found, return but do not set the error
10219         string.
10220         * libltdl/ltdl.c (lt_dlexit): When removing dlloaders, ignore
10221         errors that stem from earlier failed commands.  Exposed by the
10222         lt_dladvise test.
10223         Fixes regression over branch-1-5.
10224         Memleak report as Coverity CID 19 via Jeff Squyres.
10225
10226 2007-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10227
10228         * NEWS: Update.
10229
10230         * libltdl/ltdl.c (trim): Fix possible write beyond array bound.
10231
10232         * libltdl/ltdl.c (lt_dlopenadvise): Instead of asserting, return
10233         FILE_NOT_FOUND if the filename is "".
10234
10235         * libltdl/ltdl.c (try_dlopen): Fix computation of extension,
10236         avoids subtracting pointer from NULL pointer.
10237
10238         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Do not test
10239         array address of sys_dlsearch_path against NULL, rather test for
10240         nonempty contents.
10241         Coverity reports CID 148 and CID 149 via Jeff Squyres.
10242
10243         * libltdl/ltdl.c (tryall_dlopen_module): Fix string length
10244         computation: do not allocate more than needed.
10245
10246 2007-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10247
10248         * libltdl/loaders/preopen.c (vm_close): `module' is unused.
10249         Coverity report CID 158 via Jeff Squyres.
10250
10251         * libltdl/ltdl.c (parse_dotla_file): If we run out of memory,
10252         do not close the .la file twice.
10253         Coverity report CID 440 via Jeff Squyres.
10254
10255         * libltdl/ltdl.c (has_library_ext): Remove dead code.
10256         Coverity report CID 561 against Open MPI via Jeff Squyres.
10257
10258 2007-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10259
10260         * libltdl/slist.c (slist_remove): When a matching item is found,
10261         break out of the loop to return the first match; also fixes
10262         possible NULL dereference.
10263
10264         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10265         (_LT_LANG_CXX_CONFIG) [ linux ]: Add support for IBM XL 8.0
10266         C/C++ (xlc*, xlC*) and IBM XL Fortran 10.1 (xlf*) on GNU/Linux,
10267         tested on ppc, pending a $shlibpath_var related fix.
10268         (_LT_SYS_HIDDEN_LIBDEPS): Double-quote $output_verbose_link_cmd
10269         properly during evaluation, obsoleting $no_glob_subst mangling.
10270         * NEWS: Update.
10271
10272 2007-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10273
10274         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
10275         [ k*bsd*-gnu ] <shlibpath_overrides_runpath>: Avoid spurious
10276         output in runpath test.
10277
10278 2007-08-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10279
10280         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ mingw, cygwin ]
10281         <GCJ>: Do not use -DDLL_EXPORT.
10282         Report by Ross Ridge <rridge@csclub.uwaterloo.ca>.
10283
10284         * Makefile.am (edit): Do not warn against manual editing for the
10285         generated files libtool, libtoolize, libltdl/m4/ltversion.m4,
10286         tests/defs, as they are still in a preferred source code form as
10287         required by GPL.
10288         Report by DJ Delorie.
10289
10290 2007-08-15  Dirk Mueller  <dmueller@suse.de>  (tiny change)
10291             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10292
10293         * libltdl/ltdl.c (parse_dotla_file): Avoid a strlen.  When
10294         reading .la files, cope with files that are not
10295         newline-terminated.
10296
10297 2007-08-05  Tilman Koschnick  <til@subnetz.org>  (tiny change)
10298
10299         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
10300         [ linux ]: Treat pgcpp as Portland Group C++ compiler as well.
10301
10302 2007-08-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10303
10304         * libltdl/ltdl.c (try_dlopen): Use `attempt' rather than
10305         `filename', as the former has the needed extension when called
10306         by lt_dlopenext.
10307         Report by Brian Barrett.
10308
10309 2007-07-27  Peter Rosin  <peda@lysator.liu.se>
10310
10311         * Makefile.am: Pass STRIP through to the testsuite, so that
10312         tests that run configure will use the same strip program.
10313
10314 2007-07-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10315
10316         * tests/mdemo-exec.test: Also try absolute library names.
10317         * tests/mdemo/main.c (test_dl, main): Try lt_dlopenext as well.
10318         * THANKS: Update.
10319         Report by Brian Barrett.
10320
10321 2007-07-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10322
10323         * doc/fdl.texi: Update to GFDL 1.2.
10324         * doc/libtool.texi: Adjust.  Put License in Appendix.
10325
10326         * libltdl/config/ltmain.m4sh (func_mode_link): Remove each
10327         intermediate relinked object after use, to avoid quadratic space
10328         complexity when linking partially.
10329         Report by Isidor Zeuner <eezyy@gmx.net>.
10330
10331 2007-07-23  Eric Blake  <ebb9@byu.net>
10332
10333         * libltdl/config/ltmain.m4sh: Whitespace cleanup.
10334
10335         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
10336         <chase_symlinks>: Avoid compiler warning.
10337
10338 2007-07-22  Peter Rosin  <peda@lysator.liu.se>
10339
10340         * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Add
10341         support for Microsoft Visual C. Also, older MinGW versions
10342         seem to need stdint.h to find intptr_t.
10343
10344 2007-07-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10345
10346         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]:
10347         Ignore lines in ld.so.conf starting with 'hwcap '.
10348
10349 2007-07-16  Charles Wilson  <libtool@cwilson.fastmail.fm>
10350
10351         * tests/cdemo-exec.test: use $EXEEXT where appropriate
10352         to correct mingw cross-compile issues.
10353         * demo-deplibs.test: Ditto.
10354         * demo-exec.test: Ditto.
10355         * demo-inst.test: Ditto.
10356         * demo-relink.test: Ditto.
10357         * depdemo-exec.test: Ditto.
10358         * depdemo-inst.test: Ditto.
10359         * depdemo-relink.test: Ditto.
10360         * f77demo-exec.test: Ditto.
10361         * fcdemo-exec.test: Ditto.
10362         * mdemo-exec.test: Ditto.
10363         * mdemo-inst.test: Ditto.
10364         * mdemo2-exec.test: Ditto.
10365         * pdemo-exec.test: Ditto.
10366         * pdemo-inst.test: Ditto.
10367         * tagdemo-exec.test: Ditto.
10368
10369 2007-07-14  Peter Rosin  <peda@lysator.liu.se>
10370
10371         * AUTHORS, THANKS: Peter Ekberg got married, now Peter Rosin.
10372
10373 2007-07-13  Charles Wilson  <libtool@cwilson.fastmail.fm>
10374
10375         * libltdl/m4/libtool.m4 (func_dirname_and_basename) <XSI>:
10376         New function.
10377         (func_dirname_and_basename) <!XSI>: New function.
10378         * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname):
10379         Call it.  Also, take advantage of missed optimization using
10380         func_dirname's additional arguments.
10381         (func_mode_compile): Call it.
10382         (func_mode_install): Call it.
10383         (func_mode_link): Call it.
10384
10385 2007-07-12  Peter Rosin  <peda@lysator.liu.se>
10386
10387         * libltdl/config/ltmain.m4sh (func_mode_link): Strip the cwrapper
10388         using $STRIP instead of relying on the tools to support -s, which
10389         MSVC doesn't.
10390
10391 2007-07-06  Peter O'Gorman  <peter@pogma.com>
10392
10393         * libltdl/config/libtool.m4sh: Don't pass -msg_* through to the
10394         linker.
10395         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
10396
10397 2007-07-04  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
10398
10399         * libltdl/lt__alloc.c, libltdl/loaders/preopen.c,
10400         libltdl/loaders/dyld.c, libltdl/loaders/dlopen.c, libltdl/ltdl.c,
10401         libltdl/lt_error.c, libltdl/lt_dlloader.c, libltdl/lt__dirent.c:
10402         Include lt__private.h prior to any system headers.
10403         * libltdl/lt__alloc.c: Remove redundant inclusion of configuration
10404         header.
10405
10406 2007-07-04  Eric Blake  <ebb9@byu.net>
10407
10408         * libltdl/ltdl.c (advise_dup): Delete function no longer used
10409         after memleak fix three days ago.
10410
10411 2007-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10412
10413         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Cater to
10414         old Sparc Solaris 7 ld that does not understand `-64'.
10415         Report by Vincent Lefevre <vincent@vinc17.org>.
10416
10417 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10418
10419         * libltdl/m4/lt~obsolete.m4 (LTOBSOLETE_VERSION): New macro, to
10420         force-pull in this file by aclocal.
10421         * libltdl/m4/libtool.m4 (LT_INIT): Require LTOBSOLETE_VERSION.
10422         * tests/libtoolize.at (upgrading verbatim style aclocal.m4):
10423         Adjust.
10424         Report by H. J. Lu <hjl@lucon.org>.
10425
10426         * libltdl/ltdl.c (tryall_dlopen): Rename argument to have typed
10427         alias of `advise' instead of allocating a copy.  Fixes memleak.
10428
10429 2007-06-30  Peter Breitenlohner  <peb@mppmu.mpg.de>
10430
10431         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Correct a typo
10432         ("-dld" instead of "-ldld").
10433
10434 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
10435
10436         Add a test to simulate a failure visible on systems which
10437         need a library prefix like 'lib', such as BeOS.  Fix a number
10438         of bugs exposed by this test in order for it to pass.
10439         Currently the prefix is hardcoded as 'lib', as I am not aware
10440         of systems that require a different prefix:
10441
10442         * libltdl/loaders/preopen.c (lt_dlpreload_open):  Move error
10443         condition out of test loop to be sure that each originator is
10444         tried, instead of erroring out if the first doesn't match.
10445         Support passing NULL as the originator to load all preloaded
10446         modules originating in the program itself.
10447         * libltdl/lt_dlloader.c (lt_dlloader_dump): New debug function.
10448         * libltdl/libltdl/lt_dlloader.h (lt_dlloader_dump): Declare it
10449         when LT_DEBUG_LOADERS is defined at compile time.
10450         * libltdl/ltdl.c (lt_dlinit): Dump loader list after successful
10451         initialisation.
10452         (tryall_dlopen): Add a new VTABLE parameter to force use of a
10453         specific loader in preference to trying every loader in turn.
10454         Adjust all callers.
10455         (try_dlopen): Always see whether a module was preloaded for
10456         module names with no directory component before searching the
10457         filesystem for a match.
10458         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Declare
10459         a new global_symbol_to_c_name_address_lib_prefix variable.
10460         (global_symbol_to_c_name_address_lib_prefix): The sed
10461         expressions to use when a lib prefix is enforced need to be
10462         slightly different to work with preloaded modules.
10463         * libltdl/config/ltmain.m4sh (func_generate_dlsyms): In order
10464         to name preloaded symbols correctly for the lookup algorithm
10465         to work when the loaded module file must be prefixed with lib.
10466         Use global_symbol_to_c_name_address_lib_prefix when
10467         need_lib_prefix is other than no.
10468         * tests/need_lib_prefix.at: New test to check for breakage on
10469         hosts where need_lib_prefix is unknown.
10470         * Makefile.am (TESTSUITE_AT): Add new test.
10471         * tests/TODO: Note missing tests that would have caught some
10472         of the latent bugs fixed by this patch.
10473         * HACKING: Document libltdl keyword.
10474         * NEWS: Updated.
10475
10476 2007-06-24  Gary V. Vaughan  <gary@gnu.org>
10477
10478         Reenable compilation of libltdl with C++:
10479
10480         * libltdl/ltdl.c (tryall_dlopen): Rename the try variable to
10481         attempt, and cast explicitly.
10482         (advise_dup): Add explicit cast.
10483
10484 2007-06-22  Peter O'Gorman  <peter@pogma.com>
10485
10486         * libltdl/config/ltmain.m4sh (version-number) [irix]: Don't subtract
10487         1 from major as it may be less than age.
10488
10489 2007-06-21  Noah Misch  <noah@cs.caltech.edu>
10490
10491         * tests/f77demo/configure.ac [--with-dist]: New option.  Skip most
10492         Fortran checks when given.
10493         * tests/fcdemo/configure.ac [--with-dist]: Likewise.
10494         * Makefile.am (@DIST_MAKEFILE_LIST@): Pass --with-dist.
10495         Reported by Benoit Sigoure <tsuna@lrde.epita.fr>.
10496
10497 2007-06-19  Charles Wilson  <libtool@cwilson.fastmail.fm>
10498
10499         * AUTHORS: Add myself.
10500
10501 2007-06-18  Charles Wilson  <libtool@cwilson.fastmail.fm>
10502
10503         * libltdl/config/ltmain.m4sh: Add new magic variable
10504         for use with cwrapper.
10505         (func_ltwrapper_script_p): New function.
10506         (func_ltwrapper_executable_p): New function.
10507         (func_ltwrapper_scriptname): New function.
10508         (func_ltwrapper_p): Accomodate both wrapper scripts and
10509         wrapper executables.
10510         (func_mode_execute): Handle $file that is a wrapper
10511         script and $file that is a wrapper executable differently.
10512         (func_mode_install) [cygwin|mingw]: If $file is a wrapper
10513         executable, use func_ltwrapper_scriptname to determine
10514         wrapper script name. Afterwards, always use
10515         func_ltwrapper_script_p instead of func_ltwrapper_p.
10516         (func_emit_libtool_wrapper_script): Rename to...
10517         (func_emit_wrapper): ...this. All callers changed.
10518         (func_emit_libtool_cwrapperexe_source): Rename to...
10519         (func_emit_cwrapperexe_src): ...this. All callers changed.
10520         Embed new magic_exe variable into source. Private transient
10521         wrapper script now called foo_ltshwrapperTMP, not
10522         foo_ltshwrapper.
10523         (func_emit_cwrapperexe_src) [main, mingw]: Use _spawnv
10524         and return child's exit code manually rather than rely on
10525         broken execv.
10526         (func_mode_link) [cygwin|mingw]: Don't call dirname and
10527         basename directly; use func_dirname and func_basename
10528         when computing cwrapper names.  Use cwrapper to generate
10529         wrapper script, and use pathname returned by
10530         func_ltwrapper_scriptname instead of $output.
10531         (func_mode_link) [NOT cygwin|mingw]: move wrapper script
10532         generation for non-win32 inside case statement, as default
10533         case.
10534         (func_mode_uninstall) [$name's extension != .lo|.la]:
10535         'clean' mode must handle $file differently if it is a libtool
10536         wrapper script, or if it is a libtool wrapper executable.
10537         * tests/destdir.at [Simple DESTDIR install]: $EXEEXT fixups.
10538         * tests/destdir.at [DESTDIR with in-package deplibs]: Ditto.
10539
10540 2007-06-17  Noah Misch  <noah@cs.caltech.edu>
10541
10542         * AUTHORS: Add myself.
10543
10544 2007-06-17  Peter O'Gorman  <peter@pogma.com>
10545
10546         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): add quotes to
10547         the test -n.
10548
10549 2007-06-17  Charles Wilson  <libtool@cwilson.fastmail.fm>
10550
10551         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): ensure stderr
10552         is redirected even when getconf does not exist.
10553
10554 2007-06-09  Charles Wilson  <libtool@cwilson.fastmail.fm>
10555
10556         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
10557         Take an argument to specify value assigned to
10558         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR in the emitted
10559         script.
10560         (func_emit_libtool_cwrapperexe_source) [file scope]:
10561         define permission flags S_IXGRP and S_IXOTH if not
10562         already defined.
10563         (func_emit_libtool_cwrapperexe_source) [LTWRAPPER_DEBUGPRINTF]:
10564         Use C89-compatible syntax to mimic variadic macros.
10565         Adjust all callers.
10566         (func_emit_libtool_cwrapperexe_source) [check_executable]:
10567         avoid embedded #ifdefs; use S_IXGRP and S_IXOTH
10568         unconditionally.
10569         (func_emit_libtool_cwrapperexe_source) [make_executable]:
10570         ditto.
10571         (func_emit_libtool_cwrapperexe_source): don't rewrite
10572         WRAPPER_SCRIPT_BELONGS_IN_OBJDIR posthoc; instead pass
10573         correct argument when calling func_emit_libtool_wrapper_script.
10574         (func_mode_link): pass correct argument when calling
10575         func_emit_libtool_wrapper_script.
10576
10577 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
10578
10579         * libltdl/config/ltmain.m4sh (func_emit_libtool_cwrapperexe_source):
10580         ensure that generated source follows GCS as nearly as
10581         possible.
10582
10583 2007-06-07  Charles Wilson  <libtool@cwilson.fastmail.fm>
10584
10585         * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
10586         add code block to handle cases when wrapper script is in $objdir.
10587         (func_emit_libtool_cwrapperexe_source): replace DEBUG() macro
10588         with namespace-safe LTWRAPPER_DEBUGPRINTF(). Call
10589         func_emit_libtool_wrapper_script() with appropriate filters to
10590         embed script text in C char* static variable.
10591         (f_e_l_c_s: main): add new option --lt-dump-script, parse argv[]
10592         for it, and take appropriate action.  Call chase_symlinks()
10593         on argv[0], in case this.exe was launched via one.  Use chased
10594         value to determine full absolute pathname of wrapper script, in
10595         $objdir. Unconditionally write script out to this pathname and
10596         set permission bits.  Remove extraneous ';' from debugging loop.
10597         (f_e_l_c_s: main) [mingw]: DOS-ize $SHELL before populating
10598         newargv[0]; if $TARGETSHELL environment variable is set, use
10599         it instead of $SHELL and do not DOS-ize.  Ensure newargv[1]
10600         (wrapper script absolute path) uses only '/', not '\'.  Make
10601         sure to call execv() with DOS-ized $SHELL (or un-DOS-ized
10602         $TARGETSHELL, if set)
10603         (f_e_l_c_s: make_executable): new function
10604         (f_e_l_c_s: chase_symlinks): new function (no-op if !S_ISLNK)
10605
10606 2007-06-03  Peter O'Gorman  <peter@pogma.com>
10607
10608         * libltdl/m4/libtool.m4 (old_archive_cmds): Remove
10609         old_deplibs.
10610         * tests/archive-in-archive.at: Check for archives as members
10611         of static archives. Currently XFAILS, above only eliminates
10612         one of the two static archives.
10613         * Makefile.am: Add test.
10614         Reported by Daniel Macks <dmacks@netspace.org>
10615
10616 2007-06-01  Steve Ellcey  <sje@cup.hp.com>
10617
10618         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Try using getconf
10619         to set lt_cv_sys_max_cmd_len.
10620
10621 2007-05-28  Peter O'Gorman  <peter@pogma.com>
10622
10623         * libltdl/config/ltmain.m4sh (func_mode_link),
10624         libltdl/m4/libtool.m4 [darwin]: Only use ${wl} in verstring
10625         with xlc.
10626
10627 2007-05-22  Gary V. Vaughan  <gary@gnu.org>
10628
10629         * tests/lt_dladvise.at:  Use the lib prefix throughout for
10630         better portability - testing whether modules build and load
10631         without that prefix is not the domain of this test.
10632         Also, only run the test of the global hint with the depend
10633         module on hosts that can compile a module without passing
10634         -no-undefined in link mode.
10635
10636 2007-05-10  Noah Misch  <noah@cs.caltech.edu>
10637
10638         * tests/duplicate_deps.at: Make the XFAIL unconditional, but
10639         skip the test if the test link would succeed even without
10640         --preserve-dup-deps.
10641
10642         * libltdl/config/general.m4sh (func_echo): Use $* instead of
10643         ${1+"$@"}.
10644
10645 2007-05-09  Eric Blake  <ebb9@byu.net>
10646
10647         * libltdl/libltdl/lt_error.h (LT_ERROR_LEN_MAX): Adjust, to fix
10648         buffer overflow in previous patch.
10649
10650 2007-05-09  Gary V. Vaughan  <gary@gnu.org>
10651
10652         * tests/lt_dladvise.at: Commit missing file from below.
10653
10654 2007-05-08  Gary V. Vaughan  <gary@gnu.org>
10655
10656         Without this patch, lt_dlopen always opens modules with symbol
10657         visibility set according to the underlying implementation.
10658         Here, we add lt_dlopenadvise() to allow callers to request,
10659         among other things, local or global symbol visibility from the
10660         underlying dlloader:
10661
10662         * libltdl/ltdl.c (LT_DLRESIDENT_FLAG): Removed.
10663         (LT_DLIS_RESIDENT): Use public is_resident info field.
10664         (LT_DLIS_SYMLOCAL, LT_DLIS_SYMGLOBAL): New macros to test for
10665         module symbol visibility status.
10666         (tryall_dlopen): If vtable->module_open() was able to act on
10667         either is_symlocal or is_symglobal hints, store that in
10668         the handle flags.
10669         (lt_dlopenadvise): New function that works like lt_dlopen(),
10670         but accepts an advise type to determine whether to ask
10671         dlloaders to change default symbol visibility.
10672         (lt_dlopen, lt_dlopenext): Just call lt_dlopenadvise() with
10673         the correct parameters.
10674         (lt_dladvise_init, lt_dladvise_destroy): New functions to
10675         initialize and destroy an advise type hint.
10676         (lt_dladvise_ext, lt_dladvise_resident, lt_dladvise_local)
10677         (lt_dladvise_global): Set hints on an advise type.
10678         (openadvise): Factored out of lt_dlopenadvise.
10679         (has_library_ext): Factored out of lt_dlopenadvise.
10680         * libltdl/ltdl.h: Declare all of the above.
10681         (lt_dlinfo): New fields for advise hints.
10682         * libltdl/libltdl/lt_dlloader.h (lt_module_open): Add a new
10683         advise parameter.  Adjust all callers.
10684         (lt_dladvise): New opaque type for advise hints.
10685         * libltdl/libltdl/lt__private.h (lt__advise): Declare
10686         contents of opaque lt_dladvise type.
10687         * libltdl/libltdl/lt_error.h (CONFLICTING_FLAGS): New error
10688         for attempts to have local and global symbol visibility at the
10689         same time.
10690         * libltdl/loaders/dld_link.c, libltdl/loaders/dyld.c,
10691         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
10692         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Adjust.
10693         * libltdl/loaders/dlopen.c (RTLD_LOCAL, RTLD_GLOBAL): Try to
10694         define these symbols if the system has equivalents.
10695         (vmopen): If unable to act on a caller request to set symbol
10696         visibility, then unset the relevant hints in the advise type.
10697         * tests/lt_dladvise.at: New tests for the above.
10698         * doc/libtool.texi (Libltdl Interface): Updated.
10699         * NEWS: Updated.
10700
10701 2007-05-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10702
10703         * libltdl/config/ltmain.m4sh (func_mode_link): When adding
10704         new_inherited_linker_flags to compiler_flags, remember to
10705         translate .ltframework back.  Fixes bug introduced 2007-04-23.
10706         * THANKS: Update.
10707         * tests/inherited_flags.at: Amend test.
10708         Report by Christoph Egger.
10709
10710 2007-05-03  Reuben Thomas  <rrt@sc3d.org>  (tiny change)
10711
10712         * doc/libtool.texi (Libltdl interface): Fix typo.
10713
10714 2007-05-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10715
10716         * Makefile.am (clean-ltmain-sh): Removed.
10717         (libtool, $(srcdir)/$(m4dir)/ltversion.m4)
10718         ($(srcdir)/$(auxdir)/ltmain.sh): Updated to not depend on any
10719         phony rules.  Test `$?' for prerequisites that should always
10720         cause us to update the target.  Fixes rebuilding rules, at the
10721         cost of sometimes updating too much with non-GNU make.
10722
10723 2007-04-27  Noah Misch  <noah@cs.caltech.edu>
10724
10725         * tests/ctor.at: New file.
10726         * Makefile.am (TESTSUITE_AT): Add tests/ctor.at.
10727
10728 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
10729
10730         * libltdl/libltdl/lt__glibc.h: Use !HAVE_WORKING_ARGZ
10731         instead of SYSTEM_ARGZ_IS_BROKEN.
10732         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Ditto.  Also, minor
10733         stylistic improvements.
10734         Report by Bruno Haible <bruno@clisp.org>.
10735
10736 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
10737             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10738
10739         * libltdl/argz_.h: ensure error_t definition is obtained
10740         in same mechanism system argz.h would have.
10741         * libltdl/libltdl/lt__glibc.h: also detect if
10742         SYSTEM_ARGZ_IS_BROKEN when determining whether to re#def
10743         argz* functions.
10744         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): add new test to check
10745         if $host's argz facilities are known bad.  Err on the side
10746         of caution if cross-compiling.
10747
10748 2007-04-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10749
10750         * README, README.alpha: Document how to test an arbitrary
10751         installed libtool script.
10752
10753 2007-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10754
10755         * tests/cmdline_wrap.at: Avoid `AT_CAPTURE_FILE' if it not
10756         defined (Autoconf < 2.60).
10757         * tests/shlibpath.at: Add `libtool' keyword.
10758
10759         * tests/indirect_deps.at: New file, with tests to ensure
10760         `link_all_deplibs=no' does not break functionality.
10761         * Makefile.am: Adjust.
10762
10763 2007-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10764
10765         * libltdl/config/ltmain.m4sh (func_mode_link): Fix accumulation
10766         of `inherited_linker_flags' entries from multiple deplibs, by
10767         adding $new_inherited_linker_flags only once, only in link pass.
10768         * tests/inherited_flags: Amend test to expose this.
10769         * NEWS: Adjust: kill one regression, but add note about the
10770         feature new in 1.9b.
10771         Report by Jeff Squyres and others.
10772
10773 2007-04-23  Charles Wilson  <libtool@cwilson.fastmail.fm>
10774
10775         * libltdl/config/ltmain.m4sh (func_mode_link): move wrapper
10776         script generation from here...
10777         (func_emit_libtool_wrapper_script): to this new function, and
10778         write to stdout
10779         (func_mode_link): move cwrapper source code generation from
10780         here...
10781         (func_emit_libtool_cwrapperexe_source): to this new function,
10782         and write to stdout
10783         (func_mode_link): call the two new functions and redirect
10784         output to appropriate file.
10785
10786 2007-04-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10787
10788         * libltdl/config/ltmain.m4sh (func_mode_link) <-no-install>
10789         [ darwin ]: Treat like `-no-fast-install', as we cannot
10790         hardcode.  Report by Simon Josefsson.
10791
10792 2007-04-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10793
10794         * doc/libtool.texi (Link mode) <-no-install>: Mention that this
10795         still generates a wrapper script on systems without hardcoding.
10796         * tests/stresstest.at: Test `-no-install'.
10797         * THANKS: Update.
10798         Report by Simon Josefsson.
10799
10800 2007-03-30   Matthieu Herrb  <matthieu.herrb@laas.fr>
10801
10802         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
10803         [ openbsd ]: Add an explicit check for shared libraries support.
10804
10805 2007-03-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10806
10807         * Makefile.am ($(srcdir)/$(m4dir)/ltversion.m4): Fix quoting
10808         error.
10809
10810 2007-03-28  Gary V. Vaughan  <gary@gnu.org>
10811
10812         * HACKING (Abstraction layers in libltdl): Rewritten somewhat
10813         for (hopefully) better clarity.
10814
10815 2007-03-26  Gary V. Vaughan  <gary@gnu.org>
10816
10817         The stamp-vcl file rules caused non-gnu make programs to rerun
10818         parts of the configuration process on each invocation.  Instead
10819         of relying on a stamp file, we now compare version numbers of
10820         generated files with the ChangeLog timestamp manually in the
10821         affected make rules to decide whether regenerating is necessary:
10822
10823         * Makefile.am (EXTRA_DIST): Remove stamp-vcl.
10824         (clean-ltmain-sh): Also remove users' obsolescent stamp-vcl.
10825         (rebuild): Keep some common code here for...
10826         (libtool, libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh):
10827         Rewritten to work without reference to intermediate stamp-vcl
10828         file.
10829         * configure.ac (CONFIG_STATUS_DEPENDENCIES): Change from
10830         stamp-vcl to ChangeLog.
10831         * NEWS: Removed entry saying this fix is needed.
10832
10833 2007-03-25  Gary V. Vaughan  <gary@gnu.org>
10834
10835         * HACKING (LGPL with Libtool exception clause): Typo.
10836         Reported by Tim Van Holder  <tim.van.holder@telenet.be>
10837
10838         * HACKING (Licensing Rules): Explain the various license texts
10839         used for files distributed with Libtool, and update license text
10840         to match.
10841         * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
10842         bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
10843         libltdl/README, libltdl/argz.c, libltdl/argz_.h,
10844         libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
10845         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
10846         libltdl/config/mkstamp, libltdl/configure.ac,
10847         libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
10848         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
10849         libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
10850         libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h,
10851         libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c,
10852         libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
10853         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
10854         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c,
10855         libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
10856         libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
10857         libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
10858         libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
10859         libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
10860         libltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
10861         libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
10862         tests/cdemo-conf.test, tests/cdemo-exec.test,
10863         tests/cdemo-make.test, tests/cdemo-shared.test,
10864         tests/cdemo-static.test, tests/cdemo-undef.test,
10865         tests/cdemo/Makefile.am, tests/cdemo/configure.ac,
10866         tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
10867         tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
10868         tests/demo-conf.test, tests/demo-deplibs.test,
10869         tests/demo-exec.test, tests/demo-hardcode.test,
10870         tests/demo-inst.test, tests/demo-make.test,
10871         tests/demo-nofast.test, tests/demo-noinst-link.test,
10872         tests/demo-nopic.test, tests/demo-pic.test,
10873         tests/demo-relink.test, tests/demo-shared.test,
10874         tests/demo-static.test, tests/demo-unst.test,
10875         tests/demo/Makefile.am, tests/demo/configure.ac,
10876         tests/demo/dlmain.c, tests/demo/foo.c,
10877         tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
10878         tests/demo/hello.c, tests/demo/main.c,
10879         tests/depdemo-conf.test, tests/depdemo-exec.test,
10880         tests/depdemo-inst.test, tests/depdemo-make.test,
10881         tests/depdemo-nofast.test, tests/depdemo-relink.test,
10882         tests/depdemo-shared.test, tests/depdemo-static.test,
10883         tests/depdemo-unst.test, tests/depdemo/Makefile.am,
10884         tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
10885         tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
10886         tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
10887         tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
10888         tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
10889         tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
10890         tests/depdemo/l4/l4.h, tests/depdemo/main.c,
10891         tests/depdemo/sysdep.h, tests/deplibs-ident.at,
10892         tests/destdir.at, tests/duplicate_conv.at,
10893         tests/duplicate_deps.at, tests/duplicate_members.at,
10894         tests/early-libtool.at, tests/export.at,
10895         tests/f77demo-conf.test, tests/f77demo-exec.test,
10896         tests/f77demo-make.test, tests/f77demo-shared.test,
10897         tests/f77demo-static.test, tests/f77demo/Makefile.am,
10898         tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
10899         tests/f77demo/foo.h, tests/f77demo/fooc.c,
10900         tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
10901         tests/fcdemo-make.test, tests/fcdemo-shared.test,
10902         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
10903         tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
10904         tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
10905         tests/inherited_flags.at, tests/libtoolize.at,
10906         tests/link-2.test, tests/link-order.at, tests/link-order2.at,
10907         tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test,
10908         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
10909         tests/mdemo-inst.test, tests/mdemo-make.test,
10910         tests/mdemo-shared.test, tests/mdemo-static.test,
10911         tests/mdemo-unst.test, tests/mdemo/Makefile.am,
10912         tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
10913         tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
10914         tests/mdemo/sub.c, tests/mdemo2-conf.test,
10915         tests/mdemo2-exec.test, tests/mdemo2-make.test,
10916         tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
10917         tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
10918         tests/objectlist.test, tests/old-m4-iface.at,
10919         tests/pdemo-conf.test, tests/pdemo-exec.test,
10920         tests/pdemo-inst.test, tests/pdemo-make.test,
10921         tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
10922         tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
10923         tests/pdemo/longer_file_name_foo.c,
10924         tests/pdemo/longer_file_name_foo2.c,
10925         tests/pdemo/longer_file_name_hell1.c,
10926         tests/pdemo/longer_file_name_hell2.c,
10927         tests/pdemo/longer_file_name_hello.c,
10928         tests/pdemo/longer_file_name_main.c, tests/quote.test,
10929         tests/recursive.at, tests/search-path.at, tests/sh.test,
10930         tests/shlibpath.at, tests/standalone.at, tests/static.at,
10931         tests/stresstest.at, tests/subproject.at, tests/suffix.test,
10932         tests/tagdemo-conf.test, tests/tagdemo-exec.test,
10933         tests/tagdemo-make.test, tests/tagdemo-shared.test,
10934         tests/tagdemo-static.test, tests/tagdemo-undef.test,
10935         tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
10936         tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
10937         tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
10938         tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
10939         tests/tagdemo/main.cpp, tests/tagtrace.test,
10940         tests/template.at, tests/testsuite.at: Apply correct license
10941         text according to the new rules set out in HACKING.
10942
10943 2007-03-19  Gary V. Vaughan  <gary@gnu.org>
10944
10945         * libtoolize.m4sh: Handle argz.m4 specially like ltdl.m4, so
10946         that it isn't copied unless libltdl is being used.  Copy other
10947         macro files according to their tagged serial numbers.
10948         * tests/libtoolize.at: Adjust.
10949
10950 2007-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10951
10952         * tests/mdemo/Makefile.am (libmlib_la_LDFLAGS): Add
10953         `-export-symbols-regex ".*"' because the convenience libltdl
10954         uses export markers and thus turns off autoexport on w32.  Fixes
10955         test failures for Cygwin and MinGW.
10956         Bug analysis by Charles Wilson.
10957
10958         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
10959         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
10960         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ interix ]: When
10961         matching for interix, accept version range [3-9] instead of 3.
10962         * NEWS: Update.
10963         Report by Martin Koeppe <mkoeppe@gmx.de>.
10964
10965         * libltdl/m4/libtool.m4 (LT_PROG_GCJ): Avoid M4 expansion error
10966         that caused `dnl' to be merged to the previous word.
10967         * THANKS: Update.
10968         Report by Steve Ellcey.
10969
10970 2007-03-09  Gary V. Vaughan  <gary@gnu.org>
10971
10972         * libtoolize.m4sh: Replace literal tab chars in help comment
10973         with spaces to align columns in --help output.
10974
10975 2007-03-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10976
10977         * libltdl/config/ltmain.m4sh (func_mode_link): Also apply the
10978         symbol filtering for w32 and the include_expsyms feature in the
10979         case of exceeded command line length.  Fixes test failure on
10980         MinGW.
10981
10982         * tests/stresstest.at: For const data object imported from
10983         shared library, define appropriate macros to expand
10984         __declspec(dllimport) on w32.  Use two different main objects
10985         and pick the right one for the link flags we are about to test.
10986         Fixes test failure on MinGW.
10987
10988         * tests/export.at: For const data object imported from shared
10989         library, define appropriate macros to expand
10990         __declspec(dllimport) on w32.  Fixes test failure on MinGW.
10991
10992 2007-03-05  Gary V. Vaughan  <gary@gnu.org>
10993
10994         * libtoolize.m4sh (func_check_macros): Display m4 quotes correctly
10995         in AC_CONFIG_MACRO_DIR diagnostics.
10996
10997         * libltdl/config/general.m4sh (M4SH_VERBATIM): New macro to
10998         simplify m4sh quote quoting in blocks of raw shell code.
10999         * clcommit.m4sh, libtoolize.m4sh, libltdl/config/getopt.m4sh,
11000         libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
11001         tests/defs.m4sh: Use it.
11002         * HACKING (Editing `.m4sh' Files): Mention M4SH_VERBATIM Macro.
11003
11004 2007-02-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11005
11006         * tests/lt_dlexit.at: Allow test to pass on static-only systems
11007         and with disable-shared.
11008
11009         * NEWS: Rewrite all news since 1.9f and put in categories,
11010         update.
11011
11012         * libltdl/Makefile.inc: Fix the file description, so that it
11013         matches recursive and nonrecursive libltdl setup.
11014         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Do not depend
11015         upon the exact text of the copyright header, just copy until
11016         the marker line.  Remove the marker lines in the output, and
11017         adjust the description for subpackage setup.
11018
11019 2007-02-26  Gary V. Vaughan  <gary@gnu.org>
11020
11021         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fix regexp typo.
11022
11023         * clcommit.m4sh: Look in the right directory for helper scripts.
11024
11025 2007-02-25  Gary V. Vaughan  <gary@gnu.org>
11026
11027         * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fixup regex to
11028         match Copyright notice change below.
11029
11030         * HACKING, Makefile.am, Makefile.maint, bootstrap,
11031         libltdl/Makefile.am, libltdl/Makefile.inc, libltdl/m4/libtool.m4,
11032         ltmain.c, tests/cdemo/Makefile.am, tests/demo/Makefile.am,
11033         tests/depdemo/Makefile.am, tests/depdemo/l1/Makefile.am,
11034         tests/depdemo/l2/Makefile.am, tests/depdemo/l3/Makefile.am,
11035         tests/depdemo/l4/Makefile.am, tests/f77demo/Makefile.am,
11036         tests/fcdemo/Makefile.am, tests/libtoolize.at,
11037         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
11038         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Update
11039         Copyright notice text to include URL for canonical GPL document.
11040
11041 2007-02-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11042
11043         * tests/static.at: Forgot to fix PATH for the first
11044         func_test_exec invocation.  So factor out into new functions
11045         func_fix_path and func_restore_path and use those.
11046
11047         * README: Document the need for GNU make to build Libtool.
11048         Point the user to the doc/notes.txt file.  In the examples, use
11049         `gmake' throughout to make it more obvious.  Explain simpler way
11050         to run both testsuites and either one.  Referring to individual
11051         tests needs the `tests/' prefix.
11052         * README.alpha: Likewise.
11053         * doc/notes.texi: Likewise, document need for GNU make.
11054         Comment out the FreeBSD make issue for now.
11055
11056         * tests/static.at: Larger rewrite to make work on w32: Use three
11057         different prefixes instead of three libdirs, so the moving of
11058         the DLLs works as expected.  Adjust all code.  Since now
11059         $libdirI/../bin is distinct from the directory of the installed
11060         program, take care than on w32 PATH contains the needed bindirs,
11061         in appropriate order.
11062         Report by Charles Wilson.
11063
11064         * Makefile.am (INSTALLCHECK_ENVIRONMENT): Point LTDLINCL and
11065         LIBLTDL to installed libltdl, so that it is being used by
11066         the lt_dlexit test.
11067
11068 2007-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11069
11070         * doc/libtool.texi (Install mode, libtool script contents):
11071         Describe current and system-specific DESTDIR limitations.
11072         * tests/destdir.at: XFAIL if `fast_install' is no.
11073
11074         * doc/libtool.texi (LT_INIT): Fix typo.
11075
11076         * doc/libtool.texi (Libtool test suite): Mention the new
11077         testsuite.  Point to README rather than INSTALL for testing
11078         instructions.
11079         (Test descriptions): Fix more file names.  Also mention
11080         cdemo-undef.test, mdemo2-conf.test, mdemo2-exec.test,
11081         mdemo2-make.test, objectlist.test, pdemo-conf.test,
11082         pdemo-exec.test, pdemo-inst.test, pdemo-make.test,
11083         tagdemo-conf.test, tagdemo-exec.test, tagdemo-make.test,
11084         tagdemo-static.test, tagdemo-shared.test, tagdemo-undef.test,
11085         f77demo-conf.test, f77demo-exec.test, f77demo-make.test,
11086         f77demo-static.test, f77demo-shared.test, fcdemo-conf.test,
11087         fcdemo-exec.test, fcdemo-make.test, fcdemo-static.test,
11088         fcdemo-shared.test.  Describe what they do.
11089         (When tests fail, Troubleshooting): Mention how to pass options
11090         to the new test suite.
11091         * tests/tagdemo/README: Fix description.
11092
11093         * bootstrap: Also set GREP, FGREP, EGREP, LN_S, when creating a
11094         preliminary ltmain.sh script.
11095
11096         * doc/libtool.texi (Test descriptions): Track the grand test
11097         suite renaming from 2003-10-14 in the tests documentation.
11098         assign.test is merged into sh.test.  Fix description of sh.test.
11099         * tests/sh.test: Likewise.
11100
11101         * doc/libtool.texi (LT_INIT): Fix wording of intro a bit.
11102         <shared, static>: Also describe these default LT_INIT options.
11103         <AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL>
11104         <AC_DISABLE_FAST_INSTALL>: Mention deprecated macro names,
11105         including the respective LT_INIT replacement.
11106         <AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_ENABLE_SHARED>
11107         <AC_ENABLE_STATIC>: Document, un-deprecate.  Suggest the
11108         respective LT_INIT replacement.
11109         <AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_ENABLE_SHARED>
11110         <AM_ENABLE_STATIC>: Document deprecated aliases.
11111         (Distributing libltdl) <AC_WITH_LTDL, AC_LIBLTDL_INSTALLABLE>
11112         <AC_LIBLTDL_CONVENIENCE>: Document deprecated aliases.
11113         * libltdl/m4/ltoptions.m4 (AM_ENABLE_SHARED, AM_DISABLE_SHARED)
11114         (AM_ENABLE_STATIC, AM_DISABLE_STATIC): Make these AU_ALIASes of
11115         the respective AC_* macros, so we do not recommend LT_INIT(*) in
11116         this case.
11117         (AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC)
11118         (AC_DISABLE_STATIC): Un-deprecate these.  Remove now-superfluous
11119         aclocal-1.4 backwards compatibility comments.
11120
11121         * tests/link-order2.at: Rewrite completely.  Do not use `sin'
11122         from the math library, there are too many problems with this.
11123         Instead, use a self-written library, install it without the
11124         Libtool library file, to emulate a native library in a system
11125         directory, and adjust $shlibpat_var.  Try overriding its symbol.
11126         Further, also try an installed `wrong' binary.
11127         Avoid failing test bits on AIX without runtimelinking and on
11128         Darwin in some cases, SKIP at the end in this case.
11129         Analysis by Peter O'Gorman.
11130
11131         * doc/notes.texi: Mention MACOSX_DEPLOYMENT_TARGET issue.
11132         * tests/template.at: Only skip those tests failing on Darwin
11133         if `-flat_namespace' is used by libtool.  In that case, SKIP
11134         at the end.  Analysis by Peter O'Gorman.
11135
11136 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11137
11138         Fix -export-symbols and -export-symbols-regex for links that
11139         exceed the command line length and use convenience archives.
11140
11141         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid grepping a
11142         nonexistent file if using reloadable objects.  Do not create a
11143         linker script nor a linker input file if no objects are passed.
11144         Apply export_symbols_regex in case the command line length is
11145         exceeded.
11146         Report by Bob Friesenhahn.
11147
11148         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
11149         <compiler_needs_object>: New tag variable.  Default to `no'.
11150         (_LT_LINKER_SHLIBS) [ linux ]: Set it to yes for Sun C 5.9.
11151         (_LT_LANG_CXX_CONFIG): Also default it to `no'.
11152         [ linux ]: Set it to `yes' for Sun C++ 5.9.
11153         * libltdl/config/ltmain.m4sh (func_mode_link): If we link
11154         no objects but only convenience archives into a library,
11155         force expansion if `compiler_needs_object' is yes.
11156         For creating a linker input filelist due to long cmdline,
11157         extract the first object if `compiler_needs_object' is yes.
11158         * doc/libtool.texi (libtool script contents): Document it.
11159         Fixes test failures of Sun compilers on GNU/Linux.
11160         Report by Terry D. Dontje.
11161
11162         * libltdl/config/ltmain.m4sh (func_mode_link): Avoid setting
11163         `$libobjs' to a single space; set it to empty in that case.
11164
11165 2007-02-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11166
11167         * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [ osf5 ]:
11168         On Tru64 5.1, const relocations do not work well.  Omit the
11169         const here.  Fixes failure of demo-make after demo-shared with
11170         link editor error `seg_info_ptr: Couldnt find a seg type 2'.
11171
11172         * Makefile.am (doc_libtool_TEXINFOS): Renamed from...
11173         (libtool_TEXINFOS): ...this, to fix dependencies.  Omit from
11174         EXTRA_DIST.
11175         (check-local): Also depend upon $(bin_SCRIPTS).
11176
11177 2007-02-23  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>  (tiny change)
11178
11179         * libltdl/config/general.m4sh (sed_double_backslash): Fix
11180         hacky sed script to avoid limitations but retain portability to
11181         Solaris /bin/sed.  Remove old obsolete cruft.
11182
11183 2007-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11184
11185         * libltdl/config/ltmain.m4sh (func_mode_link): Fix the check for
11186         convenience archives when warning about linking against static
11187         libraries: test against $deplib rather than empty $lib.
11188
11189 2007-02-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11190
11191         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Fix detection of new enough
11192         libltdl by actually checking for the declaration of
11193         lt_dlinterface_register in ltdl.h with AC_CHECK_DECL.
11194         Remove redundant configure output line.
11195
11196         * tests/template.at: Reformat, add M4 quoting.  Use $LDFLAGS
11197         consistently for link mode.
11198
11199 2007-02-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11200
11201         * tests/static.at: Use the right names for the broken libs.
11202
11203 2007-02-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11204
11205         * tests/deplibs-ident.at [aix, hppa*-*-hpux*, interix, openbsd]:
11206         Do not XFAIL, on these systems we happen to pass.
11207         * tests/duplicate_deps.at [aix]: Likewise.
11208
11209         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux |
11210         k*bsd*-gnu ]: Fix eval quoting in the DT_RUNPATH test.
11211
11212         * HACKING: Update.
11213
11214         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ linux ]
11215         <whole_archive_flag_spec>: For Sun C/C++ 5.9, do not add
11216         /dev/null as dummy object, it fails with GNU ld version
11217         2.16.91.0.7-amd-sles9.  Report by Terry D. Dontje.
11218         * THANKS: Update.
11219
11220 2007-02-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11221
11222         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ osf4, osf5 ]
11223         <archive_expsym_cmds>: Use `${wl}-input' not `-input', for
11224         cc.  Could use `-input_to_ld'.
11225         (_LT_LANG_CXX_CONFIG) [ osf4, osf5 ] <archive_expsym_cmds>:
11226         Use `${wl}' instead of `-Wl,', for consistency.
11227
11228 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11229
11230         Fix spurious testsuite failures on AIX due on NFS mounts due to
11231         shared library images that cannot be removed without `slibclean'
11232         which needs superuser privileges.
11233
11234         * tests/testsuite.at (PREPARE_TESTS): Define $mkdir_p globally.
11235         (LT_AT_MVDIR): New macro to emulate `mv dir dest'.
11236         * tests/destdir.at: Use LT_AT_MVDIR.
11237         * tests/shlibpath.at: Likewise.
11238         * tests/static.at: Likewise.
11239
11240 2007-02-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11241
11242         * tests/export.at: Exporting is not fully functional with
11243         -retain-symbols-file.  Do not test for failure to link `broken'
11244         in this case.  At the end of the test, SKIP if we are not fully
11245         functional.
11246
11247         * tests/lt_dlexit.at: Add casts and `extern "C"' to let the test
11248         pass with a C++ compiler.
11249
11250         * libltdl/config/ltmain.m4sh: Remove duplicate marker for
11251         generated shell functions.
11252
11253         * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): New macro, like
11254         LT_AT_EXEC_CHECK but uses `$LIBTOOL --mode=execute' and allows
11255         to pass `-dlopen MODULE' arguments.
11256         * tests/lt_dlexit.at: Use it.  Also, do not test `-dlpreopen',
11257         that currently needs library names to begin with `lib'.
11258
11259 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11260
11261         * tests/export.at: New test: expose -export-symbols failure
11262         when the input consists solely of convenience archives, and
11263         failure to not export all symbols when the command line length
11264         is exceeded.
11265         * Makefile.am: Adjust.
11266
11267         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New substituted
11268         function `func_lo2o', saving two fork&exec with XSI shells.
11269         * libltdl/config/ltmain.m4sh (func_mode_compile)
11270         (func_mode_install, func_mode_link): Use it for rewrites of
11271         single files.
11272
11273         * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New function
11274         func_opt_split, for XSI and portable shell.
11275         * libltdl/config/ltmain.m4sh: Move the insertion point for the
11276         configure-generated shell functions to before the first option
11277         parsing loop.  Rewrite the separation of the long options to use
11278         func_opt_split.
11279
11280 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11281
11282         Eliminate roughly a third of the script execution time overhead
11283         for all modes except for link/relink and uninstall/clean.
11284
11285         * libltdl/m4/libtool.m4 (_LT_CONFIG): Remove unused `TEST SUITE
11286         MARKER', obsolete since 2005-04-17.
11287         * libltdl/config/ltmain.m4sh: Likewise, several instances.
11288         (Main): Tear apart, moving individual bits up as early in the
11289         script as possible, to help the shell to avoid parsing the rest.
11290
11291 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11292
11293         * doc/libtool.texi: Update copyright years.
11294
11295 2007-02-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11296
11297         * libltdl/config/general.m4sh (sed_double_backslash): Replace
11298         POSIX sed script with a hack that treats up to 10 backslashes
11299         in the input correctly and is portable to Solaris /bin/sed.
11300
11301 2007-02-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11302
11303         * tests/testsuite.at (LT_AT_TAG): Skip also if the compiler
11304         variable is set to `no', not only if it is empty.
11305
11306 2007-02-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11307
11308         * tests/lt_dlexit.at: Do not compile main object with libtool.
11309
11310         * tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir
11311         to inner testsuite.
11312
11313         * Makefile.am (TESTSUITE_AT): Move destdir.at after
11314         search-path.at so the banners fit better.
11315
11316         * tests/convenience.at: Use $CPPFLAGS for compilation.
11317         * tests/deplibs-ident.at: Likewise.
11318         * tests/duplicate_members.at: Likewise.
11319         * tests/inherited_flags.at: Likewise.
11320         * tests/link-order.at: Likewise.
11321         * tests/stresstest.at: Likewise.
11322         * tests/early-libtool.at: Likewise.  Do not quote $CC.
11323
11324         * libltdl/ltdl.c (lt_dlexit): Add casts to fix compilation with
11325         C++ compiler again.
11326
11327         * tests/destdir.at: Add `libtool' keyword to tests.
11328
11329 2007-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11330
11331         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
11332         (_LT_LINKER_BOILERPLATE, _LT_SYS_MODULE_PATH_AIX)
11333         (_LT_COMPILER_C_O): Require _LT_DECL_SED.
11334         * THANKS: Update.
11335         Report by Maciej W. Rozycki.
11336
11337 2007-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11338
11339         * tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir,
11340         in the new testsuite.
11341
11342 2007-01-29  Samuel Thibault <samuel.thibault@ens-lyon.org>
11343
11344         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ gnu ]
11345         <archive_expsym_cmds>: Behave like Linux, so that
11346         --version-script is used for Hurd as well.
11347
11348 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
11349
11350         * NEWS: Update for Cygwin changes.
11351
11352 2007-01-28  Brian W. Barrett <bbarrett@lanl.gov>
11353
11354         * libltdl/config/ltmain.m4sh [darwin]: Use otool64 if otool fails.
11355
11356 2007-01-28  Dave Brolley  <brolley@redhat.com>,
11357             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11358
11359         * libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL
11360         before checking that it is still in the list.
11361         * tests/lt_dlexit.at: New test.
11362         * Makefile.am (TESTSUITE_AT): Adjust.
11363         (check-local): Also depend on libltdl/libltdlc.la.
11364         (check-recursive): Removed, unnecessary use of Automake
11365         internals.
11366
11367 2007-01-28  Mike Frysinger  <vapier@gentoo.org>
11368
11369         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
11370         `-p' and `-fprofile-*' for GCC.
11371
11372 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11373
11374         * libltdl/libltdl/lt_system.h: Adjust copyright years.
11375
11376 2007-01-28  Charles Wilson  <libtool@cwilson.fastmail.fm>
11377
11378         * libltdl/libltdl/lt__private.h (LT_GLOBAL_DATA) [__CYGWIN__]:
11379         Also define on Cygwin.
11380         * libltdl/libltdl/lt_system.h (LT_SCOPE) [__CYGWIN__]: Likewise.
11381
11382 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11383
11384         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ cygwin, mingw ]
11385         <export_symbols_cmds>: Avoid shell expansion of '/s/.*' through
11386         double expansion, in case there is a 'S:' drive.
11387         Report by Charles Wilson.
11388
11389 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11390
11391         Introduce a new test keyword `recursive' for tests that create a
11392         modified `libtool' script and run the suite on this script.  All
11393         tests with the keyword `libtool' are (by definition) suitable to
11394         be used here.
11395
11396         * tests/cmdline_wrap.at: New test.
11397         * Makefile.am: Adjust.
11398         * tests/testsuite.at (LT_ESCAPE): New macro: clone of Autoconf
11399         AS_ESCAPE that does not escape `$'.
11400         (LT_AT_CHECK): New macro: print a command-to-be-run while
11401         expanding parameters but nothing else.
11402         * tests/stresstest.at: Use LT_AT_CHECK.  Create some files to
11403         expose erroneous globbing errors with `-export-symbols-regex',
11404         similar to those reported by Charles Wilson.  Use `eval' and
11405         adjusted quoting so the expansion doesn't already happen in the
11406         testsuite commands.
11407         * HACKING: Update.
11408
11409 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11410
11411         Assume C89 for included headers, and throughout the testsuite.
11412
11413         * NEWS: Update.
11414         * libltdl/argz.c: Do not include strings.h nor memory.h, include
11415         string.h unconditionally.
11416         Patch by Simon Josefsson <jas@extundo.com>.
11417         * libltdl/libltdl/lt__private.h: Likewise.
11418         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not check for string.h,
11419         strings.h, memory.h.
11420         * tests/cdemo/configure.ac: Assume presence of math.h.
11421         * tests/cdemo/foo.c: Likewise.
11422         * tests/demo/configure.ac: Likewise for math.h, string.h.
11423         Assume 'const'.  Drop obsolete AC_EXEEXT.
11424         * tests/demo/dlmain.c: Likewise.
11425         * tests/demo/foo.c: Likewise.
11426         * tests/depdemo/configure.ac: Likewise.
11427         * tests/depdemo/l4/l4.c: Likewise.
11428         * tests/f77demo/configure.ac: Likewise.  Also drop obsolete
11429         AC_OBJEXT.
11430         * tests/fcdemo/configure.ac: Likewise.
11431         * tests/mdemo/configure.ac: Likewise.
11432         * tests/mdemo/foo1.c: Likewise.
11433         * tests/mdemo/foo2.c: Likewise.
11434         * tests/mdemo2/configure.ac: Likewise.
11435         * tests/pdemo/configure.ac: Likewise.
11436         * tests/pdemo/longer_file_name_dlmain.c:
11437         * tests/pdemo/longer_file_name_foo.c: Likewise.
11438         * tests/pdemo/longer_file_name_foo2.c: Likewise.
11439         * tests/tagdemo/configure.ac: Likewise.
11440         * tests/tagdemo/foo.cpp: Likewise.
11441
11442 2007-01-24  Reuben Thomas <rrt@sc3d.org>  (tiny change)
11443
11444         * doc/libtool.texi (Inter-library dependencies): Fix typo.
11445
11446 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11447
11448         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]:
11449         Use `lib -OUT' rather than `lib /OUT' to avoid MSYS path
11450         translation mangling.  Report by Christopher Hulbert.
11451         * THANKS: Update.
11452
11453         * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
11454         suffixes matching `[fF][09].', for Fortran.
11455         * tests/suffix.test: Also test F90, F95, f03, F03.
11456
11457         * Makefile.am (EXTRA_DIST): Add ChangeLog.2006.
11458         * ChangeLog.2006: New, rotated, from...
11459         * ChangeLog: ...here.
11460
11461 2007-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11462
11463         * doc/libtool.texi: Typo fixes.
11464         * TODO: Likewise.
11465
11466 2006-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11467
11468         * tests/link-order2.at: Define our override `sin' function with
11469         C binding even if $CC is a C++ compiler.  Skip the test with g++
11470         as its command line driver reorders `-lm'.
11471         * tests/search-path.at: Declare `inflate' with C binding.
11472         * tests/stresstest.at: Avoid unused variable warnings.
11473
11474 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11475
11476         * tests/link-order2.at: Simplify logic to be a bit more self
11477         documenting.  Suggested by Gary V. Vaughan.
11478
11479 2006-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11480
11481         * tests/link-order2.at: Add missing $bindir setting.  Prevent
11482         compiler optimization of sqrt call.  Fix logic inversion and
11483         add some comments about this stunt.  Add a test with reversed
11484         library link order that should fail if the system has a libm.
11485         Report by Patrick Welche.
11486
11487 2006-10-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11488
11489         Assume presence of a config header in all files, to provoke
11490         test failures on all systems.
11491         * libltdl/lt__alloc.c: Likewise.
11492         * libltdl/libltdl/lt__dirent.h: Likewise.
11493         * libltdl/libltdl/lt__glibc.h: Likewise.
11494         * libltdl/libltdl/lt__private.h: Likewise.
11495         * libltdl/libltdl/lt__strl.h: Likewise.
11496         * tests/recursive.at: Use AC_CONFIG_HEADERS.
11497         * tests/nonrecursive.at: Likewise.  Invoke autoheader.
11498         * HACKING: Adjust.
11499         Report by Patrick Welche.
11500
11501 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>,
11502             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11503
11504         * doc/libtool.texi (Distributing libltdl): In recursive and
11505         nonrecursive mode, a config header is now required.
11506         * libltdl/argz.c: Remove check for HAVE_CONFIG_H, to conform
11507         to gnulib's policy of including config.h unconditionally.
11508
11509 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11510
11511         * tests/link-order2.at: New test to show one case where ordering
11512         of depdepls on the command line matters.
11513         * Makefile.am: Adjust.
11514
11515         * tests/tagtrace.test: SKIP if `autoconf --trace' exits 63 or 1,
11516         for various possible (valid) error cases.  Also output stderr,
11517         to help with analysis.
11518
11519         * NEWS: Account for recent multilib fix.
11520         * tests/search-path.at: New test, to provide at least a weak
11521         test.
11522         * Makefile.am: Update.
11523
11524         * libtoolize.m4sh (func_fixup_Makefile): Fix missing
11525         substitution for nonrecursive mode.  Remove otherwise-empty
11526         continuation lines in the output file.
11527         Report by Bob Friesenhahn.
11528
11529 2006-10-22  Peter O'Gorman  <peter@pogma.com>
11530
11531         * libltdl/config/ltmain.m4sh: Add -F* to flags that are passed
11532         to the linker.
11533         Reported by SIGOURE Benoit <sigoure.benoit@lrde.epita.fr>
11534
11535 2006-10-19  Peter O'Gorman  <peter@pogma.com>
11536
11537         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Improve
11538         multilib support.
11539         Reported by Kate Minola <kate01123@gmail.com> and others.
11540
11541 2006-10-13  Eric Blake  <ebb9@byu.net>
11542
11543         * libltdl/ltdl.c (load_deplibs): Avoid memory leak on failure.
11544         (unload_deplibs): Avoid memory leak on cleanup.
11545
11546 2006-09-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11547
11548         * libltdl/m4/libtool.m4 (func_mode_compile): Accept files with
11549         extension `.f9?'.
11550         * tests/suffix.test: Test `f95'.
11551
11552         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Use
11553         `func_source' consistently.
11554
11555 2006-09-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11556
11557         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
11558         [k*bsd*-gnu ]: Fix brown paper bag: save and restore `libdir'.
11559
11560 2006-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11561
11562         * tests/duplicate_deps.at: New file.  Test circular depending
11563         convenience archives (currently failing).
11564         * Makefile.am: Update.
11565         Report by Stefan Traby <stefan@hello-penguin.com>.
11566
11567         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
11568         [ openbsd ]: Set `hardcode_direct_absolute', to prefer rpath
11569         over putting absolute file names in NEEDED entries.
11570         * NEWS: Update.
11571         Reported by Jake Meuser and others.
11572
11573         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
11574         [ k*bsd*-gnu ]: Test if ld sets DT_RUNPATH; in that case, set
11575         shlib_overrides_runpath to `yes'.  Fixes test failure of new
11576         test on Gentoo GNU/Linux.
11577
11578         * tests/shlibpath.at: New file, with...
11579         (shlibpath_overrides_runpath): ...new test.
11580         * Makefile.am: Update.
11581
11582 2006-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11583
11584         * tests/destdir.at: New file.
11585         * Makefile.am: Adjust.
11586
11587 2006-09-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11588
11589         * tests/inherited_flags.at: Drop `${parameter}' for `$parameter'
11590         where appropriate, for improved `testsuite -x' output.
11591
11592 2006-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11593
11594         * libltdl/ltdl.c: Move LT__UNUSED before parameter name, for g++
11595         3.2.3 (on MinGW).
11596         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
11597         libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
11598         libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Likewise.
11599
11600 2006-09-04  George Bosilca <bosilca@cs.utk.edu>
11601         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11602
11603         Make libltdl work when compiled with a C++ compiler.
11604
11605         * libltdl/lt__alloc.c, libltdl/lt_dlloader.c, libltdl/ltdl.c,
11606         libltdl/slist.c, libltdl/libltdl/lt__alloc.h,
11607         libltdl/libltdl/lt_error.h, libltdl/libltdl/slist.h,
11608         libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
11609         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
11610         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
11611         libltdl/loaders/shl_load.c, tests/stresstest.at,
11612         tests/testsuite.at, tests/f77demo/foo.h, tests/fcdemo/foo.h,
11613         tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c,
11614         tests/mdemo/main.c: Allow sources to be compiled by a C++
11615         compiler: Cast appropriately, add C linkage for `get_vtable'
11616         functions, do not use C++ keyword `delete'.
11617
11618         * libltdl/config/ltmain.m4sh (func_mode_link): In the dlsym
11619         file, define a type for the symbol list, and declare the list
11620         `extern', so that it is extern even if compiled by a C++
11621         compiler.  The type definition helps avoid a compiler warning
11622         against anonymous extern struct.
11623         * libltdl/libltdl/lt_system.h: Add `extern' to `LT_SCOPE' for
11624         the same reason.
11625
11626         * libltdl/argz_.h: It's __cplusplus, not _cplusplus.
11627         * libltdl/libltdl/slist.h: Likewise.
11628
11629         * libltdl/libltdl/lt__glibc.h: Wrap included argz.h in
11630         `extern "C"', for broken headers on Cygwin.
11631
11632 2006-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11633
11634         * tests/testsuite.at: Test `unset' on a set variable; older
11635         bash versions return 1 if the variable was not set.
11636
11637         * tests/am-subdir.at, tests/early-libtool.at: Fix the LF vs.
11638         CRLF related failures on MinGW by grepping for good output
11639         instead of using AT_CHECK's `expout'.
11640
11641 2006-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11642
11643         Drop K&R support from testsuite in favor of C89.
11644
11645         * tests/duplicate_members.at: provide declarations of used
11646         functions.
11647         * tests/testsuite.at: Drop unneeded arguments.
11648         * tests/cdemo/main.c: Assume C89.
11649         * tests/demo/dlmain.c: Likewise.
11650         * tests/demo/main.c: Likewise.
11651         * tests/depdemo/main.c: Likewise.
11652         * tests/depdemo/l1/l1.c: Likewise.
11653         * tests/depdemo/l2/l2.c: Likewise.
11654         * tests/depdemo/l3/l3.c: Likewise.
11655         * tests/depdemo/l4/l4.c: Likewise.
11656         * tests/f77demo/cprogram.c: Likewise.
11657         * tests/fcdemo/cprogram.c: Likewise.
11658         * tests/mdemo/mlib.c: Likewise.
11659         * tests/mdemo2/main.c: Likewise.
11660         * tests/pdemo/longer_file_name_dlmain.c: Likewise.
11661         * tests/pdemo/longer_file_name_main.c: Likewise.
11662         * tests/fcdemo/fooc.c: Reformat.
11663         * tests/mdemo/sub.c: Likewise.
11664
11665 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11666
11667         * tests/mdemo/main.c: Fix bogus line in last patch.
11668
11669 2006-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11670
11671         Avoid mixing functions and data pointers in callback functions.
11672
11673         * libltdl/ltdl.c (file_worker_func): New type.
11674         (lt_dlforeachfile): Instead of passing a function pointer as a
11675         data pointer, pass a pointer to a file_worker_func pointer.
11676         (foreach_callback_func): Adjust.
11677         * tests/mdemo/main.c: Assume C89. Exercise lt_dlforeachfile.
11678         (callback, try_iterate, my_dirname): New functions.
11679         * tests/mdemo-exec.test: Check for its output.
11680
11681 2006-08-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11682
11683         * libltdl/libltdl/lt__private.h (__attribute__, LT__UNUSED):
11684         New macros.
11685         * libltdl/loaders/dld_link.c: Use LT__UNUSED where
11686         appropriate.
11687         * libltdl/loaders/dlopen.c, libltdl/loaders/load_add_on.c,
11688         libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
11689         libltdl/loaders/shl_load.c: Likewise.
11690         * libltdl/ltdl.c: Likewise.
11691         (find_file_callback): Fix declaration names to match definition.
11692         (load_deplibs) [!LTDL_DLOPEN_DEPLIBS]: Use separate definition
11693         for less preprocessor clutter.
11694
11695         * Makefile.am (check-local, installcheck-local): Use
11696         `TESTSUITEFLAGS' rather than `TESTSUITE_FLAGS', like Autoconf.
11697         * HACKING, README, README.alpha: All uses changed.
11698
11699 2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11700
11701         * libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
11702         sharing with gnulib.  Report by Eric Blake.
11703         * libltdl/lt__alloc.c, libltdl/libltdl/lt__dirent.h,
11704         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
11705         libltdl/libltdl/lt__strl.h: Likewise.
11706         * HACKING: Update.
11707
11708 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11709
11710         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
11711         `--coverage' and `-pg', for GCC.  Report by Rainer Keller
11712         <keller@hlrs.de> and Tor Lillqvist <tml@iki.fi>.
11713
11714 2006-08-25  Kurt Roeckx <kurt@roeckx.be>,
11715             Aurelien Jarno <aurel32@debian.org>
11716
11717         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
11718         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
11719         (_LT_LANG_CXX_CONFIG) [k*bsd*-gnu]: kfreebsd*-gnu and
11720         knetbsd*-gnu behave like linux-gnu.
11721         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
11722         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK)
11723         [x86_64-*kfreebsd*-gnu]: Add 32/64 bit bi-arch support.
11724         * NEWS: Update.
11725
11726 2006-08-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11727
11728         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ mingw,pw32 ]:
11729         If `file' is present, use `func_win32_libid' rather than
11730         `objdump -f', to facilitate cross-compilation.
11731         Reported by Pierre Ossman <ossman@cendio.se>.
11732
11733 2006-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11734
11735         * libltdl/config/ltmain.m4sh (func_mode_link): In GNU ld script,
11736         do not quote object file names, for Intel icc 9.0 IPO link.
11737
11738 2006-08-22  Eric Blake  <ebb9@byu.net>
11739
11740         * libltdl/m4/ltdl.m4 (LTDL_INIT): Avoid macros marked obsolete in
11741         latest autoconf.
11742         * libltdl/m4/libtool.m4 (_lt_cv_sys_global_symbol_pipe): Work in
11743         spite of -Wmissing-prototypes.
11744         * libltdl/libltdl/lt__dirent.h: Rewrite to accomodate loss of
11745         AC_HEADER_DIRENT.
11746
11747         * libltdl/m4/libtool.m4: Avoid space-tab.
11748
11749 2006-08-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11750
11751         * libltdl/config/ltmain.m4sh (func_mode_execute): Also search
11752         the directory above `$objdir' for the argument of "-dlopen", as
11753         mentioned in the error message.
11754
11755 2006-08-03  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>
11756
11757         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix issues
11758         with previous patch. for ... do' line is superflous. Need
11759         _LT_TAGVAR not _LT_AC_TAGVAR, should be for both linux and
11760         solaris with Sun compiler.
11761
11762 2006-08-01  Albert Chin <china@thewrittenword.com>
11763
11764         * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
11765         Don't set $postdeps to "-lCstd -lCrun" if
11766         "-library=stlport4" set in CXXFLAGS as stlport4 C++
11767         library incompatible with Cstd C++ library. Use
11768         '-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
11769
11770 2006-07-28  Eric Blake  <ebb9@byu.net>
11771
11772         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD, LT_OUTPUT):
11773         s/recognise/recognize/.
11774
11775 2006-07-22  Eric Blake  <ebb9@byu.net>
11776
11777         * libltdl/ltdl.c (loader_init_callback) [HAVE_LIBDLLOADER]:
11778         Protect definition to avoid compiler warnings about unused
11779         function.
11780
11781 2006-07-21  Eric Blake  <ebb9@byu.net>
11782
11783         * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD): Search for dlopen without
11784         depending on -ldl, required by cygwin 1.5.20.
11785
11786 2006-06-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11787
11788         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
11789         ( _LT_LINKER_BOILERPLATE): Rewrite to not use unchecked
11790         `printf', for old systems like SunOS 4.1.
11791         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION)
11792         (_LT_COMPILER_C_O, _LT_LINKER_SHLIBS): Likewise.
11793         (_LT_LANG_C_CONFIG): Adjust: use literal newlines in
11794         `lt_simple_compile_test_code' and `lt_simple_link_test_code'.
11795         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
11796         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Likewise.
11797         Bug report by Bruce Becker and Mark Andrews.
11798
11799 2006-06-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11800
11801         Fix the bugs where libtoolize needs to use `dir/file' instead of
11802         `./dir/file', where ltdldir is `.', so that libtoolize correctly
11803         checks for (and suggests) `config' and `m4' instead of
11804         `./config' and `./m4' as auxiliary resp. macro directories.
11805         The change is necessary for unambiguous naming, the chosen way
11806         plays better with non-GNU make in VPATH builds.
11807
11808         * libtoolize.m4sh (ltdlprefix): New variable, to use as prefix
11809         instead of `$ltdldir/'.
11810         (func_check_macros): Use it.  Bug report by Eric Blake.
11811
11812 2006-06-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11813
11814         Fix several libtoolize-related bugs:
11815         - Do not symlink aclocal.m4, to work around a bug in aclocal
11816         overwriting the linked-to file instead of removing the symlink.
11817         - Have `libtoolize --copy' cause current time stamps, so that
11818         dependents will be rebuilt; for this, install files in order.
11819         - Fix list of distribution files for (non)recursive libltdl.
11820         - Fix some failure cases.
11821
11822         * libtoolize.m4sh (func_copy_cb):
11823         If `$opt_link', still copy `aclocal.m4', so a subsequent
11824         `aclocal' will not overwrite the symlink target.
11825         In `--copy' mode, do `cp -p' and `touch' for each file, so
11826         timestamps are updated but permissions preserved.
11827         (main): Reorder installing of files to match logical order
11828         and timestamp requirements.
11829         (func_fixup_Makefile_inc): Renamed to
11830         (func_fixup_Makefile): this.  Add sed scriptlet to remove
11831         non-existent files from EXTRA_DIST, for either nonrecursive
11832         or recursive mode.
11833         (main): call it to mangle also in recursive mode.
11834         * tests/libtoolize.at (expout): Adjusted.
11835         * tests/testsuite.at (tst_dist): Default to `dist'.
11836
11837 2006-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11838
11839         Fix libltdl to always have all generated files up to date.
11840
11841         * Makefile.am (all-local): Depend on all generated files in
11842         libltdl, namely...
11843         (libltdl/aclocal.m4, libltdl/configure, libltdl/config-h.in):
11844         ...these.  List explicitly, including dependencies and
11845         rebuilding rules, using...
11846         (sub_aclocal_m4_deps, sub_configure_deps): ...these new
11847         variables.
11848         Report by Dan Lacher <Dan.Lacher@Sun.Com>.
11849
11850 2006-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11851
11852         * Makefile.am (install-data-local): Do not use $(INSTALL_DATA)
11853         from another directory: it may use a relative path to
11854         `install-sh'.
11855         Bug report by Dan Lacher <Daniel.Lacher@Sun.COM>.
11856
11857 2006-06-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11858
11859         * libltdl/config/ltmain.m4sh (func_mode_link): Honor `-threads',
11860         similar to `-mt'.
11861         Report by Eric Paire <eric.paire@st.com>.
11862
11863 2006-06-01  Charles Wilson  <libtool@cwilson.fastmail.fm>
11864
11865         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ cygwin ]:
11866         define DLL_EXPORT for PIC objects on cygwin.
11867
11868 2006-05-24  Albert Chin  <china@thewrittenword.com>
11869
11870         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
11871         [ aix4*, aix5*, hpux10*, hpux11* ]: Set hardcode_direct_absolute
11872         for CXX tag too!
11873
11874 2006-05-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11875
11876         * libltdl/config/ltmain.m4sh (func_mode_link, shell wrapper):
11877         Do not put `"$@"' in argument to $ECHO.
11878
11879 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11880
11881         * libltdl/m4/libtool.m4: Bump serial, necessary because of
11882         _LT_CHECK_SHELL_FEATURES changes.
11883
11884 2006-05-18  Albert Chin-A-Young <china@thewrittenword.com>
11885
11886         * tests/early-libtool.at: Pass $CPPFLAGS and $CFLAGS to
11887         compiler when compiling for extra flags that might be
11888         needed for ANSI-compliance, 64-bit, etc. The environment
11889         we compile with should match the environment libtool was
11890         compiled with.
11891
11892 2006-05-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11893
11894         Fix mode=compile time regression of CVS HEAD over branch-1-5.
11895
11896         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Rename to...
11897         (_LT_CHECK_SHELL_FEATURES): ...this.
11898         (_LT_SETUP): Adjust caller.
11899         (_LT_CHECK_XSI_SHELL): New libtool variables `lt_unset',
11900         `SP2NL', `NL2SP', to contain results from tests for unset,
11901         taken from AS_BOURNE_COMPATIBLE, and ASCII vs EBCDIC, taken...
11902         * libltdl/config/general.m4sh: ...from here, and used...
11903         * libltdl/config/ltmain.m4sh: ...here everywhere now.
11904         * (AS_SHELL_SANITIZE): Replace by faster, actually necessary
11905         part of its expansion, taken from current Autoconf CVS.  Do not
11906         save and set all locale variables any more, but only LANG,
11907         LC_ALL, LC_CTYPE, LC_COLLATE, LC_MESSAGES.
11908         (func_mode_execute): Adjust.
11909         * libltdl/m4/libtool.m4 (_LT_CONFIG): No need to unset CDPATH
11910         here any more.
11911         * libtoolize.m4sh: Compute `SP2NL' and `NL2SP' here, too.
11912
11913 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
11914
11915         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
11916         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
11917         _LT_LANG_FC_CONFIG), tests/link-order.at
11918         [ aix4*, aix5*, hpux10*, hpux11* ]: rename
11919         hardcode_direct_static to hardcode_direct_absolute.
11920         * doc/libtool.texi (libtool script contents): Adjust.
11921
11922         * libltdl/ltdl.c (lt_dlhandle_fetch): Arguments to
11923         lt_dlhandle_iterate were in the wrong order.
11924
11925 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11926
11927         * libltdl/m4/libtool.m4 (_LT_LINKER_OPTION): Require
11928         _LT_DECL_SED.
11929         (_LT_CMD_GLOBAL_SYMBOLS, _LT_LINKER_SHLIBS): Likewise.
11930         * libltdl/m4/ltdl.m4 (LTDL_INIT): Likewise.
11931         (_LT_DECL_SED): Set $Xsed here, using $SED.  Moved from...
11932         (_LT_SETUP): ...here.
11933         Report by Eric Blake.
11934
11935 2006-05-17  Gary V. Vaughan  <gary@gnu.org>
11936
11937         * doc/libtool.texi (libtool script contents): Document new
11938         hardcode_direct_static variable.
11939
11940         * tests/link-order.at: Be careful about usage of shrext_cmds.
11941
11942         * libltdl/m4/libtool.m4 (LT_AC_PROG_SED):  Declarations for
11943         compatibility with old versions of libtool, and old versions
11944         of aclocal.
11945
11946 2006-05-17  Albert Chin-A-Young  <china@thewrittenword.com>
11947
11948         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
11949         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
11950         _LT_LANG_FC_CONFIG) [ aix4*, aix5*, hpux10*, hpux11* ]:
11951         Introduce a new variable, hardcode_direct_static, which
11952         would ignore hardcode_direct=yes if the result would create a
11953         static library dependency. Static library dependencies are
11954         immune to $shlibpath_var.
11955         * tests/link-order.at: Take hardcode_direct and
11956         hardcode_direct_static into consideration when testing
11957         link order.
11958
11959 2006-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11960
11961         Eliminate quadratic scaling in argument parsing loop, for
11962         shells that understand `var+=value', such as Bash-3.1, or Zsh.
11963
11964         * libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Test whether
11965         the shell understands `var+=value'.
11966         (_LT_PROG_XSI_SHELLFNS): Define `func_append' based on this.
11967         * config/ltmain.m4sh (func_mode_link): Use `func_append' for
11968         compile_command, finalize_command, libtool_args, libobjs,
11969         non_pic_objects.
11970
11971 2006-05-15  Bruno Haible  <bruno@clisp.org>,
11972             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11973
11974         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
11975         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ linux ]:
11976         Add support for Sun C 5.9, Sun C++ 5.9, and Sun Fortran 8.3 on
11977         GNU/Linux.
11978         * NEWS: Update.
11979
11980 2006-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11981
11982         * Makefile.am (check-local): Move `$(TESTS_ENVIRONMENT)' and
11983         `$(BUILDCHECK_ENVIRONMENT)' to be arguments of `testsuite', so
11984         that reruns will remember it; set enviroment variable
11985         `CONFIG_SHELL' so the suite will know which shell it was started
11986         with.
11987         (installcheck-local): Likewise, for `$(TESTS_ENVIRONMENT)' and
11988         `$(INSTALLCHECK_ENVIRONMENT)'.
11989         * tests/testsuite.at (LT_AT_TAG): Do not set the compiler
11990         variable here.
11991
11992 2006-05-14  Albert Chin-A-Young  <china@thewrittenword.com>
11993
11994         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
11995         [ aix ]: $hardcode_direct is set twice.
11996
11997 2005-05-14  John Bowler  <jbowler@acm.org>
11998
11999         * libltdl/config/ltmain.m4sh (func_mode_link): For version_type
12000         `none', we still need to set `current', `age', and `revision',
12001         so that our checks don't barf.  The values won't be used later.
12002         Apparently reported by several people, several times, for BeOS.
12003         * NEWS, THANKS: Update.
12004
12005 2006-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12006
12007         * tests/fail.at: Use "test -x" if available, for testing of
12008         executables; code modified from Autoconf's AS_EXECUTABLE_P.
12009         Reported by Albert Chin <china@thewrittenword.com>.
12010
12011 2006-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12012
12013         * libltdl/config/ltmain.m4sh (func_write_libtool_object):
12014         New function, factored out from..
12015         (func_mode_compile): .. here.  Call it to generate the libtool
12016         object file (the `.lo' file) in one step.
12017
12018 2006-04-03  Peter O'Gorman  <peter@pogma.com>
12019
12020         * libltdl/loaders/preopen.c: Don't allow lt_dlopen if the
12021         module has no symbols.
12022
12023 2006-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12024
12025         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]:
12026         Avoid warning when "parsing" `/etc/ld.so.conf' and empty
12027         `/etc/ld.so.conf.d'.
12028         Reported by Orion Poplawski <orion@cora.nwra.com>.
12029
12030 2006-03-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12031
12032         * bootstrap: Actually use the correct version of the last patch.
12033
12034 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12035
12036         * bootstrap: Enable `WORKING_LIBOBJ_SUPPORT' if we detect
12037         Autoconf-2.60+ and Automake-1.10+, or CVS versions.
12038
12039         * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Sync with gnulib:  If we
12040         define `error_t', also define `__error_t_defined', so argp.h
12041         will not typedef the former.
12042
12043 2006-03-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12044
12045         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [ freebsd ]
12046         [ dragonfly ]: Set libltdl_cv_sys_dlopen_deplibs to yes.
12047         Fixes excessive lt_dlopen times on these systems.
12048         * NEWS, THANKS: Update.
12049         Bug reported by Peter Jeremy <peterjeremy@optushome.com.au>,
12050         patch by Joerg Sonnenberger <joerg@netbsd.org>.
12051
12052 2006-03-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12053
12054         * tests/static.at: New tests for comprehensive test exposure of
12055         all current and proposed static linking flags for programs.
12056         * Makefile.am: Updated.
12057
12058         * libltdl/config/ltmain.m4sh (func_mode_link)
12059         < -static-libtool-libs >: New option.
12060         * doc/libtool.texi (Link mode, Distributing libltdl):
12061         Document it.
12062         Suggested by Gary Kumfert <kumfert@llnl.gov>.
12063
12064 2006-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12065
12066         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp [ hpux ] <aCC>:
12067         The HPPA C++ compiler has namespace support but provides no
12068         `std' namespace; just provide it with a dummy.
12069
12070         * libltdl/m4/libtool.m4 (AC_PROG_SED): Do not forget to reset
12071         IFS even in case of empty `$PATH'.
12072
12073 2006-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12074
12075         * libltdl/config/ltmain.m4sh (func_mode_link): Comment out the
12076         code to remove uninstalled paths, as it is wrong here.  Change
12077         the wrong shell quoting that kept it from "working" before.
12078         * THANKS: Updated.
12079
12080         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
12081         [ freebsd, dragonfly ]: Fix 1.5.22 regression caused by too
12082         strict $host_os match that stopped DragonFly from working.
12083         * THANKS: Updated.
12084         Reported by Jeremy C. Reed <reed@reedmedia.net>,
12085         patch by Todd Vierling <tv@duh.org>.
12086
12087 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12088
12089         * libltdl/config/ltmain.m4sh (startup): save all locale specific
12090         environment, variables:, LANG, LANGUAGE, LC_ADDRESS, LC_ALL
12091         LC_COLLATE, LC_CTYPE, LC_IDENTIFICATION, LC_MEASUREMENT,
12092         LC_MESSAGES LC_MONETARY, LC_NAME, LC_NUMERIC, LC_PAPER,
12093         LC_TELEPHONE, LC_TIME.
12094         (func_mode_execute): Restore them.
12095
12096 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12097
12098         * doc/libtool.texi (Tags): Mention `FC'.
12099         (libtool script contents) <CC>: Specify more precisely as the
12100         compiler of the current tag.
12101         <LTCC, LTCFLAGS, build, build_alias, build_os, host_alias,
12102         host_os, macro_version, macro_revision, max_cmd_len>:
12103         Document these variables.
12104
12105 2006-02-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12106
12107         * doc/libtool.texi: Update copyright years.
12108
12109         * libltdl/config/getopt.m4sh (func_help): Substitute `$host'.
12110         * libltdl/config/ltmain.m4sh (help message): Use $host not
12111         @host_triplet@, as the `@..@' substitution is done at bootstrap
12112         time already.
12113         Reported by Julien Lecomte <julien@famille-lecomte.net>.
12114
12115         * doc/libtool.texi (Implementation issues):  Note that both
12116         prefix and suffix of a library may differ.
12117         (Using libtool, Creating object files, Linking libraries):
12118         Remove last documentation traces of the age when `foo.lo' was
12119         the PIC object file and not the `libtool object' text file.
12120         (libtool script contents) <compiler_o_lo>: Remove description
12121         of this variable.  It was removed from libtool in 1.5 times.
12122
12123 2006-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12124
12125         * libltdl/config/ltmain.m4sh (func_mode_link) [ linux ]:
12126         PGI: for `reload_cmds', we not only need to get rid of `$wl',
12127         but also turn comma into space so $LD understands
12128         whole_archive_flag_spec correctly.
12129
12130         * libltdl/config/ltmain.m4sh (func_mode_link) <shell wrapper>:
12131         Add _AS_BOURNE_COMPATIBLE code from Autoconf, to fix issues
12132         with zsh and other shells.
12133         Reported by David Gómez Espinosa <david@pleyades.net>.
12134
12135 2006-02-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12136
12137         * libltdl/m4/libtool.m4 (AC_PROG_SED): m4_defun this rather
12138         than AC_DEFUN, so that old aclocal does not pick this up.
12139
12140         * Makefile.am ($(TESTSUITE)): Also depend on `Makefile.am'.
12141         Write to temporary file and rename.
12142
12143 2006-02-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12144
12145         * Makefile.am (EXTRA_DIST): Add `$(srcdir)/' to all generated
12146         files so that non-GNU make programs will use the rebuilding
12147         rules.
12148
12149         * tests/testsuite.at: Add new keyword `libtoolize' for tests
12150         that exercise the `libtoolize' script that is generated at build
12151         time.
12152         * HACKING: Update testsuite mention, explain keywords.
12153
12154         * libltdl/config/ltmain.m4sh (extracted_archives)
12155         (extracted_serial): New globals.
12156         (func_extract_archives): Use them to rename extraction archives
12157         for linking against multiple convenience libraries with the same
12158         name.
12159         * tests/duplicate_conv.at: New tests.
12160         * Makefile.am: Adjusted.
12161         Reported by Carlo Contavalli <ccontavalli@commedia.it>.
12162
12163         * libltdl/config/ltmain.m4sh (func_mode_link) < test_compile >:
12164         Fix a couple of instances where `test .. -ne ..' would possibly
12165         compare non-numbers.  Clean up a bit.
12166
12167         * tests/convenience.at, tests/deplibs-ident.at: Add new keyword
12168         `libtool' for tests that exercise the unmodified `libtool'
12169         script that is generated at build time.
12170         * tests/duplicate_members.at, tests/fail.at: Likewise.
12171         * tests/inherited_flags.at, tests/link-order.at: Likewise.
12172         * tests/stresstest.at, tests/template.at: Likewise.
12173
12174 2006-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12175
12176         * tests/fail.at: Also pass a bogus object file to the linker so
12177         it fails more reliably; AIX and IRIX linkers ignore duplicate
12178         symbol definitions.
12179
12180         * libltdl/m4/libtool.m4 [ solaris ] (_LT_LINKER_SHLIBS)
12181         (_LT_LANG_CXX_CONFIG) < whole_archive_flag_spec >:
12182         Fix this once and for all, for both the SUN compiler suite
12183         (cc/CC/f77/f90/f95) and GCC.
12184         Reported by Yuri Pukhalsky <pooh@cryptopro.ru>.
12185
12186         * tests/cdemo/Makefile.am: Remove broken use of undocumented
12187         Automake variable `$(OBJECTS)'.
12188         * tests/demo/Makefile.am, tests/depdemo/Makefile.am: Likewise.
12189         * tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am: Likewise.
12190         * tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am: Likewise.
12191         * tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Likewise.
12192
12193         * libltdl/config/ltmain.m4sh (func_mode_link): Fix logic for
12194         adding run paths to also add paths for installed libtool
12195         libraries in case `-static' is used.
12196
12197 2006-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12198
12199         * Makefile.am (TESTSUITE_AT): List testsuite files in the order
12200         in which they are to be expanded in the suite.
12201         (tests/TESTSUITE): Rebuild by passing all $(TESTSUITE_AT) files,
12202         with their path suitably adjusted.  This enables us to..
12203         * tests/testsuite.at: ..get rid of their redundant mention here.
12204
12205 2006-01-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12206
12207         * doc/libtool.texi (titlepage): Remove superfluous word.
12208
12209         * libltdl/config/ltmain.m4sh (func_mode_link): Fix matching
12210         duplicate run path entries with the correct separator.
12211
12212         * tests/testsuite.at (PREPARE_TESTS): Escape `^' for some older
12213         shells.
12214
12215         * ChangeLog, HACKING, README, README.alpha,
12216         libltdl/config/ltmain.m4sh:  Add vi(m) modelines, to match emacs
12217         formatting variables.
12218
12219 2006-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12220
12221         * Makefile.am (libltdl/Makefile.am): Fixup sed script.
12222         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
12223
12224 2006-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12225
12226         * Makefile.am, bootstrap, clcommit.m4sh,
12227         libltdl/config/getopt.m4sh, libltdl/config/mailnotify.m4sh,
12228         tests/sh.test, tests/testsuite.at: Bump copyright years.
12229
12230 2006-01-21  Eric Blake  <ebb9@byu.net>
12231
12232         * THANKS: Move myself to contributor.
12233
12234 2006-01-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12235
12236         * bootstrap: Don't use semicolons inside { } in sed scripts, as
12237         Posix says it's not portable.
12238         * Makefile.am (libltdl/Makefile.am): Likewise.
12239         * libtoolize.m4sh (all over the map): Likewise.
12240         * libltdl/config/getopt.m4sh (func_version, func_usage)
12241         (func_help): Likewise.
12242         * libltdl/config/ltmain.m4sh (func_win32_libid): Likewise.
12243         * libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Likewise.
12244         * clcommit.m4sh, libltdl/config/mailnotify.m4sh: Likewise.
12245         * tests/sh.test, tests/testsuite.at (LT_AT_TAG): Likewise.
12246         Noted by Paul Eggert <eggert@cs.ucla.edu>.
12247
12248         * libltdl/config/ltmain.m4sh (func_mode_compile): Also transform
12249         `.obj' correctly.
12250         Reported by George Bosilca <bosilca@cs.utk.edu>.
12251
12252 2006-01-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12253
12254         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): Fix my forward port
12255         error of last commit.
12256
12257 2006-01-12  Leif Ekblad  <leif@rdos.net>
12258
12259         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12260         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC): Added support for
12261         RDOS.
12262         * NEWS: Updated.
12263
12264 2006-01-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12265
12266         * libtoolize.m4sh, libltdl/config/general.m4sh,
12267         libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
12268         libltdl/m4/libtool.m4: Bump copyright years.
12269
12270 2006-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12271
12272         * Makefile.am (EXTRA_DIST): Add ChangeLog.2005.
12273
12274         * README, README.alpha: Adjust copyright years.
12275         * ChangeLog.2005: New, rotated, from..
12276         * ChangeLog: ..here.
12277
12278 2005-12-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12279
12280         * Makefile.am (libtoolize): Also depend on `config.status'.
12281         (tests/atconfig): Normalize path, for non-GNU make.
12282         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
12283
12284         * libltdl/config/ltmain.m4sh (func_mode_link) <temp_rpath>:
12285         Fix position of separator for shlibpath_var setting in shell
12286         wrapper.
12287
12288         * libltdl/lt_error.c (error_strings): Remove parentheses around
12289         string literal initializers, uncovered by `tcc'.
12290         Reported by Edward Chernenko <edwardspec@yahoo.com>.
12291
12292 2005-12-21  Gary V. Vaughan  <gary@gnu.org>
12293
12294         * .cvsignore, libltdl/.cvsignore, tests/.cvsignore: Ignore
12295         +build, +dest, +inst, .cvslog-tlasync, .gdb_history, .pc,
12296         libltdl/INSTALL, libltdl/stamp-mk and tests/testsuite.log.
12297
12298 2005-12-20  Eric Blake  <ebb9@byu.net>
12299
12300         * README.alpha: Really commit.
12301
12302 2005-12-19  Eric Blake  <ebb9@byu.net>
12303
12304         * HACKING (release note templates): Update anon cvs location.
12305         * README.alpha (Reporting Bugs): Likewise.
12306
12307 2005-12-18  Jacob Meuser <jakemsr@jakemsr.com>,
12308             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12309
12310         * libltdl/config/ltmain.m4sh (func_mode_link): Move library
12311         search paths that coincide with paths to not yet installed
12312         libraries to the beginning of the library search list.
12313
12314 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12315
12316         * THANKS: Updated.
12317
12318         * HACKING: `./libtool --config' is more helpful than `--help'.
12319
12320         * libltdl/config/ltmain.m4sh <preserve_args, linknames>:
12321         Initialize properly.
12322
12323 2005-12-18  Kean Johnston  <jkj@sco.com>,
12324             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12325
12326         * libltdl/m4/libtool.m4 (LT_PATH_NM): Also look in
12327         /usr/ccs/bin/elf, for SCO.  If we are not cross-compiling, but
12328         $ac_tool_prefix is set, also try an un-prefixed `nm'.
12329
12330 2005-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12331
12332         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
12333         <hardcode_shlibpath_var>: Initialize, to `unsupported'.
12334
12335 2005-12-18  Marc Espie  <espie@nerim.net>
12336
12337         * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
12338         [ openbsd ] <sys_lib_dlsearch_path_spec>: Set to `/usr/lib'
12339         only.
12340
12341 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12342
12343         * tests/old-m4-iface.at: Require Autoconf-2.50, so that
12344         Debian's autoconf wrapper will not cause 2.13 to barf over
12345         `--force'.
12346         Reported by Kurt Roeckx <kurt@roeckx.be>.
12347
12348         * README.alpha (Reporting bugs): Suggest to also bootstrap the
12349         libltdl subdirectory -- the Makefile will enforce it anyway.
12350         (The Test Suite): Renamed to..
12351         (The Test Suites): ..this.  Introduce the new Autotest test
12352         suite, how to run each one individually, and what to report.
12353         * README (The Test Suite): Likewise.
12354
12355 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12356
12357         In the subpackage case, we do not install Makefile.inc.  Since
12358         we have to be correct for this case, remove `Makefile.inc' from
12359         EXTRA_DIST.  Recursive mode does not use it either.  Since
12360         nonrecursive mode requires an Automake >= 1.7 anyway, and those
12361         versions automatically distribute included makefile fragments,
12362         we don't need to cater for that one either.
12363
12364         * libltdl/Makefile.inc (EXTRA_DIST): Remove Makefile.inc.
12365         Reorder other entries.
12366
12367 2005-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12368
12369         * Makefile.am (libltdl/Makefile.in): also depend on
12370         libltdl/aclocal.m4, so that we guarantee timestamp consistency.
12371         (libltdl/stamp-mk): New target, to fix `libltdl/Makefile.in'.
12372         (EXTRA_DIST): Distribute `libltdl/stamp-mk' and
12373         `libltdl/m4/lt~obsolete.m4'.
12374         (all-local): Ensure the stamp files is up to date.
12375         (libltdl/aclocal.m4): New target, to ensure timestamp
12376         consistency.  Depend on all m4 files.
12377         * HACKING: Updated.
12378
12379         * tests/testsuite.at (PREPARE_TESTS): New variable `tst_dist',
12380         default to empty.
12381         * tests/nonrecursive.at, tests/recursive.at,
12382         tests/standalone.at, tests/subproject.at: Use it in
12383         LT_AT_BOOTSTRAP or LT_AT_MAKE, so that you can optionally test
12384         redistribution within the tests.
12385
12386         * libltdl/m4/lt~obsolete.m4: Update documentation for aclocal
12387         versions before 1.7.  Change all macros to use AC_DEFUN instead
12388         of AU_DEFUN.
12389         * (_AC_PROG_LIBTOOL, AC_LIBTOOL_SETUP, _LT_AC_CHECK_DLFCN)
12390         (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_TAGCONFIG)
12391         (AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_CXX, _LT_AC_LANG_F77)
12392         (_LT_AC_LANG_GCJ, AC_LIBTOOL_RC, AC_LIBTOOL_LANG_C_CONFIG)
12393         (_LT_AC_LANG_C_CONFIG, AC_LIBTOOL_LANG_CXX_CONFIG)
12394         (_LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_LANG_F77_CONFIG)
12395         (_LT_AC_LANG_F77_CONFIG, AC_LIBTOOL_LANG_GCJ_CONFIG)
12396         (_LT_AC_LANG_GCJ_CONFIG, AC_LIBTOOL_LANG_RC_CONFIG)
12397         (_LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG)
12398         (_LT_AC_FILE_LTDLL_C): Add new fake macros for these, they
12399         were used at one time in libtool.m4.
12400
12401         * tests/am-subdir.at (Makefile.am): Put automake options here,
12402         in AUTOMAKE_OPTIONS.  Require 1.6 because of the newer
12403         `AC_INIT(pkgname,version) AM_INIT_AUTOMAKE' scheme.
12404         * tests/nonrecursive.at, tests/recursive.at: Require 1.7,
12405         because libltdl rules use `+=' in conditionals.
12406         * tests/testsuite.at (LT_AT_AUTOMAKE): Fix indenting.
12407         (LT_AT_AUTORECONF): also detect too old Automake.
12408
12409 2005-12-08  Eric Blake  <ebb9@byu.net>
12410
12411         * libltdl/libltdl/lt__alloc.h (FREE): Cast away constness of
12412         argument to `free' to avoid compiler warning.
12413
12414 2005-12-08  Peter O'Gorman  <peter@pogma.com>
12415
12416         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_LINKER_SHLIBS)
12417         [darwin]: Use $LTCC $LTCFLAGS to check for -single_module.
12418         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12419
12420 2005-12-07  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12421
12422         * bootstrap: always remove Makefile, to avoid triggering the
12423         autotools rebuild rules before autoreconf builds these.
12424         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
12425
12426 2005-12-07  Peter O'Gorman  <peter@pogma.com>
12427
12428         * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4 [darwin]:
12429         Use -single_module by default when linking shared libraries. Can
12430         be overridden by specifying -multi-module or by setting the env
12431         var LT_MULTI_MODULE before configure.
12432         * libltdl/m4/libtool.m4 (archive_expsyms_cmds) [darwin]:
12433         Simplify.
12434         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12435
12436 2005-12-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12437
12438         * doc/libtool.texi (References): Do not use `@/' for the benefit
12439         of older `makeinfo', break lines instead.
12440
12441         * Makefile.am (install-data-local): No continuation here.
12442         (dist-hook): Fix copying of README.alpha to README.
12443         * tests/early-libtool.at (configure.ac): Remove
12444         `AM_INIT_AUTOMAKE', we do not use automake in these tests.
12445
12446         * README, README.alpha, libtoolize.m4sh: Typos.
12447         * tests/am-subdir.at, tests/duplicate_members.at: Make all
12448         banners end with a dot, for symmetry.
12449
12450         * libtoolize.m4sh (func_copy_all_files)
12451         (glob_exclude_pkgaux_files): Removed, since unused.
12452
12453         * libtoolize.m4sh (func_copy_cb, func_copy_some_files)
12454         (func_serial_update, func_keyword_update): Fail immediately
12455         if some file we may install does not exist.
12456         Reported by Troy Benjegerdes <hozer@hozed.org>.
12457
12458 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12459
12460         * TODO: A bunch of items fixed. :)
12461
12462         * tests/convenience.at: Updated to expose more corner cases.
12463
12464         * doc/libtool.texi (Invoking libtoolize): Remove mention of
12465         the nonrecursive restriction to name the directory `libltdl'.
12466
12467         * libtoolize.m4sh (func_fixup_Makefile_inc): New function.
12468         (main): Call it in nonrecursive mode to mangle Makefile.inc.
12469         * tests/nonrecursive.at: adjusted to test this.
12470
12471 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12472
12473         Basic support for PIE (position-independent executables).
12474
12475         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
12476         Don't pass PIE flag for compilation of the symbol file object.
12477         (func_mode_compile): Pass PIE flag only for non-PIC objects.
12478         * NEWS: Updated.
12479
12480 2005-12-03  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12481
12482         * libltdl/config/general.m4sh (func_show_eval): Rewrite use of
12483         the failure expression, because the exit status of the previous
12484         command may not be preserved in the next `eval' by some shells,
12485         such as pdksh.
12486         * libltdl/config/ltmain.m4sh (func_extract_an_archive):
12487         Use func_show_eval correctly.
12488         (func_mode_link): Likewise.  Also, do not use `$status'.
12489         * tests/fail.at: New set of tests to ensure libtool fails.
12490         * Makefile.am, tests/testsuite.at: Adjusted.
12491
12492 2005-11-26  Peter O'Gorman  <peter@pogma.com>
12493
12494         * libltdl/m4/libtool.m4 [darwin]: Use $LTCC $LTCFLAGS to create
12495         reloadable objects.
12496
12497 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12498
12499         * libltdl/Makefile.inc (libltdl/argz.h): Create libltdl
12500         directory if it does not exist yet.  Take care that munging
12501         of the file will not mess up the build rule.
12502         Reported by Peter O'Gorman <peter@pogma.com>.
12503
12504 2005-11-25  Eric Blake  <ebb9@byu.net>,
12505             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12506
12507         * libltdl/loaders/loadlibrary.c (iface_id): New variable.
12508         (get_vtable): Get an `iface_id' from `lt_dlinterface_register'.
12509         (get_vtable): Rewrite to catch up with lt_dlhandle_iterate
12510         interface change.  Append dot only after w32 path conversion
12511         so it works on cygwin managed mounts.
12512
12513         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlinterface_free): New
12514         function.
12515         * doc/libtool.texi (User defined module data): Document it.
12516
12517 2005-11-25  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12518
12519         * libltdl/m4/libtool.m4 [aix] <archive_expsym_cmds>
12520         (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Always move -bnoentry
12521         before $compiler_flags, so it can be overridden.
12522
12523         * libltdl/config/ltmain.m4sh (func_mode_link): Allow GCC
12524         response files through.
12525
12526 2005-11-25  Peter O'Gorman  <peter@pogma.com>
12527
12528         * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
12529         -isysroot for cross architecture builds on darwin.
12530
12531 2005-11-24  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12532
12533         * libltdl/config/ltmain.m4sh (func_mode_uninstall): In clean
12534         mode, don't remove non-existent libfoo.lai.
12535
12536 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12537
12538         * Makefile.am (aclocalfiles): Also install lt~obsolete.m4.
12539         * libtoolize.m4sh (func_check_macros): Updated.
12540         * tests/libtoolize.at: Adjusted.
12541
12542 2005-11-20  Eric Blake  <ebb9@byu.net>,
12543             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12544
12545         * bootstrap (--help): Provide some help.
12546
12547 2005-11-20  Todd Vierling <tv@netbsd.org>,
12548             Thorsten Glaser <tg@mirbsd.org>
12549
12550         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, _LT_SYS_DYNAMIC_LINKER)
12551         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
12552         (_LT_LANG_CXX_CONFIG) [ interix3 ]: Support for Interix/Microsoft
12553         Services for Unix.
12554         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
12555         * NEWS: Updated.
12556
12557 2005-11-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12558
12559         * tests/link-order.at [ interix ]: Skip command line grep.
12560         * tests/deplibs-ident.at [ interix ]: Not broken here.
12561         Reported by Thorsten Glaser <tg@66h.42h.de>.
12562
12563 2005-11-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12564
12565         * libtoolize.m4sh (func_copy_all_files)
12566         (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
12567         (func_massage_pkgconfig_files): Work around ksh limitation.
12568         Reported by Thorsten Glaser <tg@66h.42h.de>.
12569
12570 2005-11-14  Albert Chin  <china@thewrittenword.com>
12571
12572         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12573         [ hpux11 ]: Pass +nodefaultrpath when linking on ia64*.
12574
12575 2005-11-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12576
12577         Testsuite portability update round.
12578
12579         * tests/inherited_flags: skip when shared libs are disabled.
12580         * tests/deplibs-ident.at [ aix ]: No unexpected failure here.
12581         * tests/libtoolize.at: Fix for distcheck (readonly sources).
12582         * tests/nonrecursive.at, tests/recursive.at, tests/subproject.at
12583         (foo.c): Actually export a symbol, for AIX.
12584         * tests/old-m4-iface.at: Use AC_LIBTOOL_DLOPEN, for AIX.
12585         * tests/nonrecursive.at: Set foo_la_SOURCES, for automake-1.7.
12586         * tests/subproject.at: Require automake-1.9, we use indirect
12587         subdirs.
12588         * tests/am-subdir.at: Move AT_KEYWORDS settings..
12589         * tests/testsuite.at: ..here, in respective macros.
12590         (LT_AT_AUTOMAKE): Skip if we detect failure due to old version.
12591         (PREPARE_TESTS): Set autotool variables to `no' if not present.
12592         (LT_AT_ACLOCAL, LT_AT_AUTOCONF, LT_AT_AUTOMAKE)
12593         (LT_AT_AUTOHEADER, LT_AT_AUTORECONF): Use to XFAIL tests.
12594         Reported by Tim Rice <tim@multitalents.net>.
12595         (LT_AT_MAKE): Do not use `make -e'.
12596         (_LTDL_PROJECT_FILES): Adjust sub-make call.  Work around `make'
12597         which does not set `MAKE' or `SHELL'.  Fix for user-set
12598         `CONFIG_SHELL'.
12599         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
12600
12601         * libltdl/m4/lt~obsolete.m4 (_LT_CC_BASENAME)
12602         (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
12603         Added because they were added to branch-1-5 AC_DEFUNed.
12604         * HACKING: Add note about lt~obsolete.m4.
12605
12606         * Makefile.am, libltdl/Makefile.inc (INSTALL_LTDL):
12607         For nonrecursive mode, add to include_HEADERS as well.
12608         * doc/libtool.texi (Invoking libtoolize, Distributing libltdl),
12609         tests/nonrecursive.at: Adjusted, and removed TABS from .texi.
12610
12611         * libtoolize.m4sh: Revert use of `$tst_aclocaldir'.
12612
12613 2005-11-13  Eric Blake  <ebb9@byu.net>
12614
12615         * libltdl/ltdl.c (lt_dlhandle_iterate): Fix endless loop.
12616         (lt_dlinterface_register): Fail if lt__strdup did.
12617
12618 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12619
12620         * libltdl/m4/libtool.m4 (_LT_LANG_C_CONFIG):
12621         Removed `lt_prog_cc_shlib' cruft, not needed any more.
12622
12623 2005-11-13  Kean Johnston  <jkj@sco.com>,
12624             Tim Rice  <tim@multitalents.net>
12625
12626         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12627         (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
12628         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG)
12629         [ sco3.2v5, sysv4, sysv4.3, sysv5, sco3.2v5, sco5v6, unixware,
12630         OpenUNIX, sysv4*uw2 ]: Complete overhaul of SCO support.
12631         * THANKS: Updated.
12632
12633 2005-11-13  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12634
12635         * tests/quote.test: Do not fail on harmless shell bug present
12636         in some ksh versions.
12637         Reported by Tim Rice <tim@multitalents.net> and others.
12638
12639 2005-11-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12640
12641         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTION): Use m4_warning
12642         instead of m4_warn.
12643
12644         * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): `wl' is tagged here.
12645
12646         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF, _LT_COMPILER_PIC):
12647         Make sure `$wl' is properly expanded for tests involving
12648         `export_dynamic_flag_spec', `lt_prog_compiler_static'.
12649
12650         * tests/defs.m4sh (func_configure): Actually pass
12651         options (like --disable-shared) to func_configure_nofail.
12652
12653 2005-11-11  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12654
12655         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]:
12656         Fix shlibpath_overrides_runpath settings.
12657         Reported by Dave Benson <daveb@idealab.com>.
12658
12659 2005-09-10  Charles Wilson  <cygwin@cwilson.fastmail.fm>
12660
12661         * libltdl/config/ltmain.m4sh (func_win32_libid): use $SED not
12662         sed.
12663         
12664 2005-11-10  Albert Chin-A-Young  <china@thewrittenword.com>
12665
12666         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]
12667         <hppa*64,ia64, aCC,g++>:
12668         Use C++ compiler for linking rather than ld.
12669
12670 2005-11-10  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12671
12672         * libltdl/m4/ltsugar.m4 (lt_join, lt_combine, lt_dict_filter):
12673         Rewrite to eliminate tail recursion; use ..
12674         (lt_unquote): New trivial helper macro.
12675         * libltdl/m4/libtool.m4 (_lt_decl_filter): Document.
12676
12677 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
12678
12679         * tests/testsuite.ac (macrodir): Don't set it here...
12680         * Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
12681         ...set it here to pick up files from the right place in context.
12682         * tests/libtoolize.at, tests/old-m4-iface.at: Adjust.
12683         * libtoolize.m4sh: Take tst_aclocaldir into account when running
12684         inside the test harness.
12685
12686 2005-11-10  Gary V. Vaughan  <gary@gnu.org>
12687
12688         * tests/am-subdir.at: Now that we don't run autoreconf, we have to
12689         explicitly tell aclocal what flags to use.
12690
12691         * tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
12692         configure.
12693         * tests/am-subdir.at, tests/nonrecursive.at, tests/old-m4-iface.at,
12694         tests/subproject.at: Use LT_AT_BOOTSTRAP.
12695
12696 2005-11-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12697
12698         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Also set pic_flag.
12699         (_LT_LANG_CXX_CONFIG): Use $as_unset, not unset.
12700         (_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG): Remove bogus
12701         ld_shlibs tests.
12702
12703         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Move setting of
12704         `variables_saved_for_relink'..
12705         (_LT_SYS_DYNAMIC_LINKER): here, when both `shlibpath_var'
12706         and `runpath_var' have been set.
12707         Reported by Mike Frysinger <vapier@gentoo.org>.
12708
12709         * libltdl/Makefile.inc (AM_CPPFLAGS): Do not define
12710         HAVE_CONFIG_H.
12711         * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not invoke
12712         AC_CONFIG_HEADERS ourselves, we can build with or without now.
12713
12714 2005-11-07  Kean Johnston  <jkj@sco.com>
12715
12716         * libltdl/config/ltmain.m4sh (func_mode_link) [ sysv4*uw2*,
12717         unixware7* ]: Work around linker bug on older SCO systems.
12718
12719 2005-11-07  Albert Chin-A-Young  <china@thewrittenword.com>
12720
12721         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
12722         (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]:
12723         hardcode_libdir_flag_spec and hardcode_minus_L are the same for
12724         hppa*64 and ia64*. Don't set
12725         hardcode_libdir_flag_spec='-L$libdir' on ia64* because if you
12726         specify +b and -L, +b overrides what is set into DT_RPATH.
12727
12728 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12729
12730         * tests/testsuite.at (_LTDL_PROJECT_FILES): Factored out from
12731         common code to build a basic libltdl using project.
12732         * tests/old-m4-iface.at, tests/standalone.at, tests/subproject.at:
12733         Use it.
12734
12735         * doc/libtool.texi (Distributing libltdl): Document correct use of
12736         LT_CONFIG_LTDL_DIR mode argument with Autoconf and Automake.
12737
12738 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12739
12740         Support 'recursive' mode for building libltdl: Automake will
12741         recursively descend into the libltdl directory, and use libltdl's
12742         Makefile.am code to build libltdl:
12743
12744         * ltdl.m4 (LT_CONFIG_LTDL_DIR): Don't barf on 'recursive' mode
12745         for 2nd argument.
12746         (_LTDL_MODE_DISPATCH): Handle recursive mode.
12747
12748 2005-11-07  Gary V. Vaughan  <gary@gnu.org>
12749
12750         * tests/recursive.at: New tests for libltdl as a subdirectory,
12751         configured and compiled from the toplevel project using a
12752         recursive make..
12753         * tests/testsuite.at: Use it.
12754         * Makefile.am (TESTSUITE_AT): Depend on it.
12755
12756         * libltdl/m4/ltdl.m4 (LTDL_INIT): Don't force running
12757         AC_CONFIG_HEADERS for subproject ltdl.
12758         * tests/old-m4-iface.at, tests/subproject.at: Remove workaround.
12759
12760         * libltdl/m4/ltdl.m4 (LT_CONFIG_LTDL_DIR): Add LTDL-MODE
12761         argument.
12762         * configure.ac: Use it.
12763
12764 2005-11-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12765
12766         * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): lt_unknown is
12767         lt_dlunknown.
12768
12769         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Revert
12770         expansion of `$wl'.
12771         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_GCJ_CONFIG):
12772         Do not require LT_SYS_DLOPEN_SELF.
12773         (_LT_LANG_C_CONFIG): Instead call it at the right time.
12774         (_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
12775         (_LT_LANG_GCJ_CONFIG): Do not call _LT_CMD_STRIPLIB.
12776
12777         * Makefile.am: `2>&1' as suggested by Albert Chin.
12778         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4:
12779         Two newlines before each macro, fix underlines.
12780
12781 2005-11-05  Kean Johnston  <jkj@sco.com>,
12782             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12783
12784         * libltdl/config/ltmain.m4sh (func_mode_link) [*-*-sco3.2v5*]:
12785         Don't pass through -lc, nor add it to deplibs.
12786         [*-*-sysv5*]: Ditto.
12787         [*-*-openbsd*, *-*-freebsd*, *-*-dragonfly*]: Remove bogus
12788         `$arg'.
12789
12790 2005-11-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12791
12792         * THANKS: Updated.
12793
12794 2005-11-02  Gary V. Vaughan  <gary@gnu.org>
12795
12796         * tests/nonrecursive.at: New tests for libltdl as a subdirectory,
12797         configured and compiled from the toplevel project.
12798         * tests/testsuite.at: Use it.
12799         (LT_AT_AUTOHEADER): New macro.
12800         * Makefile.am (TESTSUITE_AT): Depend on nonrecursive.at.
12801
12802 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12803
12804         * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Add `-64'
12805         to $LD if necessary, to permit combining of several convenience
12806         libs without any further objects added.
12807         Reported by Brian Barrett <brbarret@open-mpi.org>.
12808
12809 2005-11-01  Kean Johnston  <jkj@sco.com>,
12810             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12811
12812         * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Use
12813         `lt_prog_compile_static', not `link_static_flag'.  Expand `$wl'
12814         so expansion of `export_dynamic_flag_spec' works.
12815         (_LT_TRY_DLOPEN_SELF): Show dlerror() in case of failure.
12816         (_LT_LINKER_SHLIBS) [ aix3 ]: Likewise.
12817         (_LT_COMPILER_PIC) [ hpux* ]: Use `${wl}'.
12818
12819 2005-11-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12820
12821         * THANKS: Updated.
12822
12823 2005-11-01  Gary V. Vaughan  <gary@gnu.org>
12824
12825         * libltdl/m4/ltdl.m4 (LTDL_INIT): Call _LT_ENABLE_INSTALL directly
12826         instead of m4_requiring it, as it relies on enable_ltdl_install
12827         and enable_ltdl_convenience to have been initialised first.
12828
12829         * libtoolize.m4sh: Use serial tags to locate the correct serial
12830         numbers when deciding whether to update.
12831         (func_serial): Allow for macro_regex argument to be originating
12832         file name.
12833         (func_serial_update): Use NL2SP to flatten list of extracted
12834         m4_include files.
12835         * tests/libtoolize.at: More tests for old-style verbatim copying
12836         of macros into aclocal.m4.
12837
12838         * libltdl/m4/argz.m4, libltdl/m4/ltoptions.m4, libltdl/ltsugar.m4,
12839         libltdl/m4/ltversion.in: Add serial number tags, and bump serial
12840         number.
12841
12842 2005-10-31  Kean Johnston  <jkj@sco.com>
12843
12844         [ sysv5*, sco3.2v5*, sco5v6*, unixware*, OpenUNIX*, sysv4*uw2* ]
12845         Patches for various bug fixes, small improvements and updating
12846         the SCO platform support.
12847
12848         * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Set correctly for SCO.
12849
12850         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Set correct
12851         symcode values for the native nm on SCO platforms.
12852
12853         * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): All SCO platforms
12854         open dependency libraries when you dlopen a module.
12855
12856 2005-10-31  Albert Chin-A-Young  <china@thewrittenword.com>
12857
12858         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12859         [ aix ]: Remove duplicate always_export_symbols=yes for AIX.
12860
12861 2005-10-29  Howard Chu  <hyc@highlandsun.com>
12862
12863         * libltdl/config/ltmain.m4sh (func_mode_link):
12864         With `-static', only link statically against uninstalled
12865         libtool libraries.  Fixes 1.5.x regression to match documented
12866         behavior.
12867         * NEWS: Updated.
12868
12869 2005-10-27  Stepan Kasal  <kasal@ucw.cz>
12870
12871         * HACKING: Update note about use of `$#' in m4 macros.
12872
12873 2005-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12874
12875         * tests/tagtrace.test: Allow `$AUTOCONF' to contain arguments.
12876         Skip if the running `autoconf' version is older than the one
12877         used to bootstrap Libtool.
12878
12879 2005-10-26  Eric Blake  <ebb9@byu.net>,
12880             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12881
12882         * Makefile.am (vcl-tmp): Avoid warnings from diff.
12883         * bootstrap: Avoid warnings from find.
12884         (lt_tab): Use to prevent editor whitespace "cleanup".
12885
12886 2005-10-26  Gary V. Vaughan  <gary@gnu.org>
12887
12888         * libtoolize.m4sh: Put back the func_serial_update callback for
12889         func_copy_some_files so that the testsuite passes again.  We'll
12890         have to find a better way of handling serial numbers in libtool
12891         macro files.
12892
12893         * libltdl/Makefile.inc: New file, factored out of Makefile.am for
12894         use in non-recursive libltdl installations.
12895         * bootstrap: Adjust.
12896         * Makefile.am: include it.
12897         (libltdl/Makefile.am): Adjust to build from the new
12898         libltdl/Makefile.inc.
12899         (SUBDIR_LIBOBJS): Renamed from this...
12900         (LTDL_SUBDIR_LIBOBJS): ...to this.
12901         * configure.ac: Adjust.
12902         * doc/libtool.texi (Invoking libtoolize): Document the new modes
12903         and libtoolize option to select them.
12904         * libtoolize.m4sh: Parse new options, --nonrecursive, --recursive
12905         and --subproject.  Install the appropriate files with --ltdl
12906         according to the selected mode.
12907         (func_scan_files): If --subproject, --recursive or --nonrecursive
12908         options were not given, use the value from LT_CONFIG_LTDL_DIR; if
12909         a mode was given, and there is also an argument to
12910         LT_CONFIG_LTDL_DIR, ensure they are the same.
12911         * NEWS: Updated.
12912
12913         * libtoolize.m4sh: Don't use func_serial_update as a copy
12914         function for libtool m4 files with no macro_regex.  If the
12915         files are copied directly into aclocal.m4, because
12916         AC_CONFIG_MACRO_DIR isn't set for example, there is no way
12917         to tell what serial number goes with what source file.
12918         (func_serial_update): For future-proofing, only make the second
12919         serial number check if the destination file wasn't m4_included
12920         into aclocal.m4 (and hence updated automatically by the cat of
12921         copying a new version to the dest directory).
12922
12923         * libtoolize.m4sh: Move the consistency checks...
12924         (func_check_macros): ...into here.  Also suggest LT_WITH_LTDL if
12925         appropriate.
12926
12927         * libtoolize.m4sh: Copying just libtool.m4 for hand maintained
12928         aclocal.m4 doesn't work.  List all required files in that case,
12929         using the files from installed libltdl if available.  Also, list
12930         the additional files required when using libltdl.
12931         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
12932
12933         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_first): Removed.
12934         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_next)
12935         (lt_dlhandle_find, lt_dlforeach): Removed...
12936         (lt_dlhandle_iterate, lt_dlhandle_fetch, lt_dlhandle_map): Similar
12937         functions that are multi-loader safe, and require a registered
12938         interface validator argument.
12939         * doc/libtool.texi: Updated.
12940         * NEWS: Updated.
12941
12942         * libtoolize.m4sh: Always copy pkgconfig_files for --ltdl, incase
12943         ltdl needs additional things not found by automake when looking at
12944         the parent project configury.
12945         * tests/libtoolize.at: Adjust.
12946
12947 2005-10-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12948
12949         * libltdl/config/ltmain.m4sh [darwin]: Don't check for "bundle"
12950         in file path.
12951         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
12952
12953 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
12954
12955         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Don't nest AC_MSG_CHECKING/
12956         AC_MSG_RESULT pairs.
12957
12958 2005-10-14  Gary V. Vaughan  <gary@gnu.org>
12959
12960         * tests/subproject.at: Move 'touch config.h.in' invocation.
12961
12962         * tests/subproject.at (_LTDL_SETUP): Use pushdef/popdef to
12963         simulate file-local scope.  Empty source file compilation is not
12964         portable, so add minimal code to generated foo.c file.
12965
12966 2005-10-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12967
12968         * libltdl/m4/libtool.m4 (LT_PATH_NM): End test source with
12969         newline.
12970         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
12971
12972 2005-10-13  Peter O'Gorman  <peter@pogma.com>
12973
12974         * libltdl/ltdl.c (find_module): Check that dir is set.
12975         (load_deplibs): Don't free the user search paths too early.
12976
12977 2005-10-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12978
12979         * tests/testsuite.at (LT_AT_AUTOMAKE): New macro.
12980         * tests/subproject.at: Use it.  Do not call `autoreconf' in
12981         tests, since it will try to reconfigure `sub/ltdl', which
12982         breaks `make check' during `distcheck' because of a readonly
12983         source tree.
12984
12985         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Also set INCLTDL.
12986
12987         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE)
12988         (LT_WITH_LTDL): Revert Gary's 2005-10-10 patch.
12989
12990         * tests/stresstest.at: Use `allow_undefined_flag' instead of
12991         host_os setting.
12992
12993 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
12994
12995         * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Remove bogus extra
12996         closing brackets.
12997
12998 2005-10-10  Gary V. Vaughan  <gary@gnu.org>
12999
13000         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Remove
13001         AC_SUBST of LIBLTDL, LTDLINCL, and all mention of INCLTDL.
13002         (LT_WITH_LTDL): Due to order constraints between LTDL_CONVENIENCE,
13003         LTDL_INSTALLABLE, LT_WITH_LTDL & LTDL_INIT, we can safely AC_SUBST
13004         LIBLTDL and LTDLINCL here.  Also, remember to synch INCLTDL.
13005
13006 2005-10-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13007
13008         * tests/stresstest.at [ aix3, beos, os2 ]: Always use
13009         `-no-undefined'.
13010
13011 2005-10-09  Christian Biesinger  <cbiesinger@web.de>
13012
13013         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ beos ]:
13014         Initial shared library support for C++.
13015
13016 2005-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13017
13018         * configure.ac (abs_top_builddir, abs_top_srcdir): always
13019         substitute.
13020         * Makefile.am (BUILDCHECK_ENVIRONMENT)
13021         (INSTALLCHECK_ENVIRONMENT): New macros.  Set _lt_pkgdatadir,
13022         LIBTOOL, LIBTOOLIZE accordingly, by using above, and
13023         program_transform_name.
13024         * tests/testsuite.at (TESTS_PREPARE): Do not set them anymore.
13025         Set $unset.
13026         (LT_AT_MAKE): Use to unset LIBTOOL and LIBTOOLIZE.
13027
13028 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
13029
13030         * tests/subproject.at: Commit the right file this time.
13031
13032 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13033
13034         * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Fix m4 quoting
13035         for lt_simple_link_test_code.
13036         Reported by Nicolas Joly <njoly@pasteur.fr>.
13037
13038 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
13039
13040         * tests/subproject.at: New tests for libltdl as a subproject with
13041         its own configuration.
13042         * tests/testsuite.at: Use it.
13043         * Makefile.am (TESTSUITE_AT): Depend on it.
13044
13045 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13046
13047         * Makefile.am: Simplify.  Do not use abs_top_srcdir.
13048         Reported by Gary V. Vaughan <gary@gnu.org>.
13049
13050 2005-10-05  Gary V. Vaughan  <gary@gnu.org>
13051
13052         * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Spurious './' prefixes
13053         upset BSD pmake, don't set lt_ltdl_dir in this case.
13054         (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
13055
13056 2005-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13057
13058         * Makefile.am (BUILDCHECK_ENVIRONMENT)
13059         (INSTALLCHECK_ENVIRONMENT): New macros.
13060         (check-local, installcheck-local): Use them.
13061         * tests/testsuite.at (PREPARE_TESTS): Extract host_alias, ECHO.
13062         Set configure_options appropriately.
13063         (LT_AT_CONFIGURE, LT_AT_AUTORECONF, LT_AT_MAKE): New macros.
13064         (LT_AT_BOOTSTRAP): Use them.
13065         * tests/am-subdir.at, tests/early-libtool.at,
13066         tests/old-m4-iface.at, tests/standalone.at: Likewise.
13067         * tests/link-order.test: Do not extract ECHO any more.
13068
13069         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
13070         AC_CANONICAL_HOST and _LT_DECL_SED.
13071
13072 2005-10-03  Gary V. Vaughan  <gary@gnu.org>
13073
13074         * libltdl/m4/ltdl.m4: Bump serial as we are changing the
13075         interface.
13076         (LT_CONFIG_LTDL_DIR): New macro to centralise setting the
13077         subdirectory used for libltdl.
13078         (LTDL_CONVENIENCE): Continue backwards compatibility support for
13079         declaring the libltdl source subdirectory with an argument, but
13080         defer to LT_CONFIG_LTDL_DIR.
13081         (AC_LIBLTDL_CONVENIENCE): Adjust to upgrade to the new style.
13082         (LTDL_INSTALLABLE, AC_LIBLTDL_INSTALLABLE): Ditto.
13083         (LTDL_INIT): lt_ltdl_dir is set by LT_CONFIG_LTDL_DIR now, and
13084         even `./' needs trailing slashes trimming!  If the user didn't
13085         upgrade their configure.ac yet, call LT_CONFIG_LTDL_DIR for them.
13086         * libtoolize.m4sh (func_scan_files): If --ltdl option is given
13087         without a directory argument, use the value from
13088         LT_CONFIG_LTDL_DIR; if the argument is given, and there is also a
13089         value in LT_CONFIG_LTDL_DIR, ensure they are the same.
13090         * libltdl/configure.ac: Use it.
13091         * NEWS: Updated.
13092
13093 2005-10-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13094
13095         * tests/old-m4-iface.at (Makefile.in): Do not reconfigure
13096         libltdl directory.
13097
13098 2005-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13099
13100         * tests/deplibs-ident.at: New file with XFAIL test to expose
13101         wrong multiple listing of a deplib on the command line.
13102         * Makefile.am, tests/testsuite.at: Updated.
13103         Reported by Brian Barrett <brbarret@open-mpi.org>.
13104
13105         * tests/old-m4-iface.at: Define top_srcdir, work around current
13106         ltdl.m4 bug.
13107
13108         * libltdl/config/ltmain.m4sh (func_mode_link):
13109         Fix wrong logic introduced in last commit.
13110
13111 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
13112
13113         * tests/libtoolize.at: Add a new test to catch a regression I
13114         almost introduced with respect to copying macro files when
13115         AC_CONFIG_MACRO_DIR is shared with libltdl subproject.
13116
13117 2005-09-30  Gary V. Vaughan  <gary@gnu.org>
13118
13119         * tests/old-m4-iface.at: Start of a new test series for m4
13120         interface backwards compatibility.
13121         * tests/testsuite.at: Use it.
13122         (macrodir): Declare the location of uninstalled libtool m4 macros.
13123         * Makefile.am (TESTSUITE_AT): Depend on it.
13124
13125 2005-09-29  Tim Rice  <tim@multitalents.net>  (tiny change)
13126
13127         * tests/early-libtool.at (Makefile.in): Set $(SHELL).
13128
13129 2005-09-29  Peter Ekberg  <peda@lysator.liu.se>
13130
13131         * libltdl/config/ltmain.m4sh (func_mode_link): Don't modify
13132         user provided symbols file. Adjust removal of temporary files
13133         and also remove temporary files used during symbols file
13134         filtering.
13135
13136 2005-09-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13137
13138         * libtoolize.m4sh (func_included_files): Do not recurse
13139         non-existent files.
13140
13141 2005-09-27  Gary V. Vaughan  <gary@gnu.org>
13142
13143         * libtoolize.m4sh (func_scan_files): Support projects that have
13144         upgraded libtool, but still use an old autoconf.  When the libtool
13145         macros are not copied (because of missing ACLOCAL_AMFLAGS and
13146         AC_CONFIG_MACRO_DIR ), point them at the libtoolize master tree
13147         for files to manually copy into acinclude.m4 or aclocal.m4.
13148
13149         * libltdl/lt_error.c (lt__last_error, lt__error_strings): The lt__
13150         prefix is used to indicate internal symbols that are only exported
13151         for use by other parts of libltdl.  These are now static, so...
13152         (last_error, error_strings): ...renamed to this.  Changed all
13153         callers.
13154
13155         * libltdl/ltdl.h (lt_dlmutex_register, lt_dlmutex_lock)
13156         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror)
13157         (lt_dlmalloc, lt_dlrealloc, lt_dlfree): Remove deprecated APIs.
13158         * doc/libtool.tex: Updated.
13159         * NEWS: Updated.
13160
13161         * libltdl/ltdl.c (lt_dlcaller_register): Renamed to avoid problems
13162         with module visibilty when linked with programs written for the
13163         old API.
13164         (lt_dlinterface_register): New name.
13165         * Makefile.am (VERSION_INFO): Bumped.
13166         * doc/libtool.texi (User defined module data): Updated.
13167
13168 2005-09-27  Tim Rice  <tim@multitalents.net>
13169
13170         * tests/defs.m4sh, tests/testsuite.at (PREPARE_TESTS)
13171         <AUTORECONF>: Allow variable override.
13172
13173 2005-09-26  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13174
13175         * HACKING: Only update libltdl version info before release.
13176
13177 2005-09-26  Tim Rice  <tim@multitalents.net>
13178
13179         * configure.ac <AUTOM4TE>: Allow variable override.
13180
13181 2005-09-25  Alan W. Irwin  <irwin@beluga.phys.uvic.ca>,
13182             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13183
13184         * libltdl/config/ltmain.m4sh (func_win32_libid)
13185         [ cygwin, mingw ]: Robustify sed script to determine
13186         win32_libid_type.
13187         (func_mode_link) [ mingw ]: Ignore `-lm'.
13188
13189 2005-09-25  Peter Ekberg  <peda@lysator.liu.se>
13190
13191         * libltdl/libltdl/lt__private.h, libltdl/lt_error.c:
13192         Don't export the lt__last_error and lt__error_strings
13193         variables. Define lt__error_strings so that no relocations
13194         are needed.
13195         * libltdl/libltdl/lt__private.h (LT__STRERROR, LT__GETERROR)
13196         (LT__SETERRORSTR): Adjust to not use the above variables,
13197         instead use the following functions...
13198         * libltdl/lt_error.c: (lt__error_string, lt__get_last_error)
13199         (lt__set_last_error): Reimplement the functionality in
13200         these functions instead.
13201         * libltdl/libltdl/lt_error.h: Add LT_ERROR_LEN_MAX define for
13202         max error string length.
13203         (lt_dlerror_table): Append explicit nul terminators so that
13204         compilers warn more reliably if the above define is too small.
13205
13206 2005-09-23  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13207
13208         * tests/link-order.at [ aix* ]: skip path syntax grep.
13209
13210 2005-09-23  Peter Ekberg  <peda@lysator.liu.se>
13211
13212         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Fix awk
13213         script to be a single line so that the cache variable isn't
13214         multiline.
13215
13216 2005-09-23  Eric Blake  <ebb9@byu.net>  (tiny change)
13217
13218         * libltdl/loaders/loadlibrary.c (vm_open): Silence gcc warnings.
13219         [__CYGWIN__]: Include <sys/cygwin.h> for prototype.
13220
13221 2005-09-22  Gary V. Vaughan  <gary@gnu.org>
13222
13223         * bootstrap: Don't clobber the working copy metadata in
13224         ./{arch}/libtool during bootstrap.
13225
13226 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
13227             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13228
13229         * libltdl/config/ltmain.m4sh (func_mode_link): Filter
13230         user supplied symfile to tag relevant symbols as data
13231         symbols. Fixes segfault in stresstest.at on Cygwin and
13232         makes the test pass.
13233
13234 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>
13235
13236         * tests/link-order.test: Clean up the uninstalled libraries
13237         before linking the test executables so that they don't pick
13238         up the dlls from the current dir on Cygwin and MinGW.
13239
13240 2005-09-22  Tim Rice  <tim@multitalents.net>
13241
13242         * libltdl/m4/libtool.m4 (LT_PATH_NM, _LT_LINKER_SHLIBS)
13243         (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS):
13244         Add missing `;;' after case list.
13245
13246 2005-09-22  Peter Ekberg  <peda@lysator.liu.se>,
13247             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13248
13249         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC)
13250         (_LT_LINKER_SHLIBS): Require _LT_TAG_COMPILER to make sure that
13251         $compiler is assigned. Fixes crippled configure output.
13252
13253 2005-09-21  Peter Ekberg  <peda@lysator.liu.se>
13254
13255         * libltdl/m4/libtool.m4 (LT_PATH_NM): Fix autodetection of
13256         dumpbin and also check for "link -dump -symbols" as a synonym
13257         for "dumpbin -symbols".
13258
13259         * libltdl/config/ltmain.m4sh (func_mode_uninstall): Clean
13260         up $dlname as well when cleaning a uninstalled libtool
13261         library. Fixes -mode=clean on Cygwin and MinGW to actually
13262         remove the dll when cleaning up an uninstalled library.
13263
13264 2005-09-20  Peter Ekberg  <peda@lysator.liu.se>
13265
13266         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
13267         Split up --out-implib option for linker in separate args so that
13268         the MSYS path translation can do its magic on the provided path
13269         to the import library. Fixes problem in stresstest.at on MinGW.
13270
13271 2005-09-19  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13272
13273         * Makefile.am (ltdldatafiles): Fix installation order to match
13274         dependency order.
13275         (libltdl/Makefile.in): Use $(srcdir) for non-GNU make.
13276
13277 2005-09-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13278
13279         * libltdl/config/ltmain.m4sh (func_mode_link): Allow some
13280         ARM gcc ABI flags through.
13281         Reported by Andrés Moré <more.andres@gmail.com>.
13282
13283         * Makefile.am (all-local): Rebuild libltdl/Makefile.in.
13284
13285         * libltdl/m4/ltdl.m4 (LTDL_INIT) <CONFIG_H>: Rename to..
13286         <LT_CONFIG_H>: this, to contain the name of the config
13287         header.
13288         * Makefile.am <DEFS>: Use it to define LT_CONFIG_H.
13289         * HACKING, libltdl/argz.c, libltdl/lt__alloc.c,
13290         libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
13291         libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h:
13292         Adjusted.
13293
13294 2005-09-16  Peter Ekberg  <peda@lysator.liu.se>
13295
13296         * tests/testsuite.at (LT_AT_EXEC_CHECK): Make sure
13297         that the exit status of the tested program is
13298         propagated as the exit status of the expression
13299         fed to AT_CHECK.
13300
13301 2005-09-14  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13302
13303         * libltdl/argz.c <HAVE_CONFIG_H>: Avoid redefinition warning.
13304
13305         * libltdl/ltdl.c (lt_argz_insert): Work around newlib
13306         argz_insert bug.
13307         * Makefile.am (VERSION_INFO): Bumped revision.
13308         Reported by Eric Blake <ebb9@byu.net>.
13309
13310 2005-09-13  Peter Ekberg  <peda@lysator.liu.se>,
13311             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13312
13313         * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
13314         Fix escape expression to actually escape relevant
13315         characters from the following grep. Fix Cygwin and
13316         MinGW to use the filtered symbol list when exporting
13317         from self, and not the symbol filter.
13318         * tests/stresstest.at: Export w8, not w8$
13319
13320 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13321
13322         Make tagdemo work smoothly with both pre- and ISO C++ compilers,
13323         and remove all use of libstdc from other tests.
13324
13325         * tests/tagdemo/configure.ac (HAVE_NAMESPACES, HAVE_IOSTREAM):
13326         New tests for ISO C++ features.  Reimplementation of similar
13327         macros from the autoconf archive.
13328         * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp: Adjusted.
13329         * tests/am-subdir.at, tests/template.at: Do not use iostream.
13330
13331 2005-09-12  Peter Ekberg  <peda@axentia.se>,
13332             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13333
13334         * tests/testsuite.at (host_os): Pull from `libtool --config'.
13335         * tests/stresstest.at [ cygwin, mingw, pw32 ]: Use it to fix
13336         setting of `-no-undefined'.
13337
13338 2005-09-12  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13339
13340         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL, LTDL_CONVENIENCE)
13341         (LTDL_INSTALLABLE): Use less quoting for expanded LIBLTDL,
13342         LTDLINCL.  Use m4_default instead of m4_if, to work
13343         around AU_ALIAS bug with empty macro arguments.
13344         (LTDL_INIT): Likewise.
13345         * libltdl/m4/ltoptions.m4 (_LT_WITH_PIC): Likewise.
13346         * TODO, HACKING: Updated.
13347
13348 2005-09-10  Gary V. Vaughan  <gary@gnu.org>
13349
13350         * libtoolize.m4sh (TAR): Allow the user to override the tar
13351         command.
13352
13353 2005-09-09  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13354
13355         * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
13356         (_LT_LINKER_BOILERPLATE, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
13357         (_LT_COMPILER_C_O): When comparing expected and actual compiler/
13358         linker output for warnings, weed out both empty lines as well as
13359         lines starting with possibly indented `+', to allow for shell
13360         debugging with `set -x'.
13361         Check the weeded instead of unweeded contents for emptiness.
13362
13363         * libltdl/config/ltmain.m4sh (func_mode_link): Actually provide
13364         a useful error message.  Fixes long-standing shameful user
13365         neglection.
13366         Reported by Martin Paljak <martin.paljak@gmail.com>.
13367
13368 2005-09-08  Peter Ekberg  <peda@axentia.se>
13369
13370         * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]:
13371         Symbols in "pick any" sections are not global. Use
13372         awk, not sed, in the global_symbol_pipe so that keeping
13373         track of sections is easier.
13374         * doc/libtool.texi (libtool script contents): Update to hint
13375         at new findings concerning "pick any" sections.
13376
13377 2005-09-08  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13378
13379         * tests/early-libtool.at (config.status): Use EXEEXT
13380         consistently.
13381         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
13382
13383 2005-09-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
13384
13385         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
13386         [ cygwin, mingw, pw32 ]: Use --enable-auto-image-base instead of
13387         a fixed image base address.
13388
13389 2005-09-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13390
13391         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ sysv4*uw2*,
13392         sysv4.2uw2* ]: Fix my last checkin to really match the more special
13393         case before the general case.
13394         Reported by Stepan Kasal <kasal@ucw.cz>.
13395
13396 2005-09-06  Roger Cornelius  <rac@tenzing.org>
13397
13398         * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
13399         [ sysv5OpenUNIX8, sysv5UnixWare7, sysv5uw[78], unixware7,
13400         sysv4*uw2* ]: Match special cases before general case.
13401
13402 2005-09-05  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13403
13404         * bootstrap: another AIX sed fix.
13405
13406         * Makefile.am (TESTS_ENVIRONMENT): Export SHELL.
13407         * bootstrap (SHELL): Set to $CONFIG_SHELL or /bin/sh.
13408         Name `make' targets in portable fashion.  Work around `rm'
13409         warnings.  Unconditionally create fake `libtoolize'.
13410         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13411
13412         * Makefile.am (doc/notes.txt): Use --no-headers instead of
13413         --plaintext for makeinfo.
13414         Reported by Peter O'Gorman <peter@pogma.com>.
13415
13416 2005-09-04  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13417
13418         * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ aix ]
13419         <export_symbols_cmds>: Work around shell expansion issue in
13420         func_show_eval by separating `$' and field number; drop then
13421         unnecessary m4 quoting.
13422
13423 2005-09-02  Gary V. Vaughan  <gary@gnu.org>
13424
13425         AC_BEFORE only works if declarations are made inside the macro
13426         cited as the first argument:
13427
13428         * libltdl/m4/libtool.m4 (LT_OUTPUT): Move AC_BEFORE decls...
13429         (LT_INIT, LT_LANG): ...to the macro that has to come first.
13430
13431 2005-09-01  Peter O'Gorman  <peter@pogma.com>
13432
13433         * libltdl/m4/libtool.m4 (old_postintall_cmds): chmod 644 before
13434         running ranlib.
13435         Reported by Gerald Pfeifer <gerald@pfeifer.com>
13436
13437 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13438
13439         * libltdl/m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77)
13440         (_LT_PROG_FC): aclocal-1.4 compatibility workaround.
13441
13442         * bootstrap: Do not use nonportable -path.
13443         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
13444
13445 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
13446
13447         * doc/libtool.texi (LT_INIT): Fix a logical error with
13448         documentation of --with-pic vs --without-pic.
13449
13450 2005-09-01  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13451
13452         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): m4_defun this..
13453         * libltdl/m4/libtool.m4 (LT_INIT): so it can be m4_require'd
13454         from here with user-supplied options.  Fixes output macro
13455         ordering issue.
13456
13457 2005-09-01  Gary V. Vaughan  <gary@gnu.org>
13458
13459         * libtoolize.m4sh (func_scan_files): When searching for evidence
13460         of Autotools in aclocal.m4, be careful not to trip over requires
13461         and defuns.
13462
13463 2005-08-31  Gary V. Vaughan <gary@gnu.org>,
13464             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13465
13466         * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Move option macro
13467         dipatch..
13468         (_LT_SET_OPTION): here.  Do not fail but warn on unknown
13469         options.
13470         (_LT_UNLESS_OPTIONS(win32-dll), LT_OPTION_DEFINE(dlopen)):
13471         Add whitespace.
13472         Reported by Robert Ögren <lists@roboros.com> and
13473         Akim Demaille <akim@lrde.epita.fr>.
13474
13475 2005-08-31  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13476
13477         * libltdl/m4/libtool.m4 [ solaris CC ]: Document issue with C++
13478         standard libraries.
13479
13480 2005-08-30  Gary V. Vaughan  <gary@gnu.org>
13481
13482         * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_PIC_MODE): Renamed...
13483         (AC_LIBTOOL_PICMODE): ...this in the backwards compatibility
13484         code.  There never was an AC_LIBTOOL_PIC_MODE macro.
13485
13486         * libltdl/m4/libtool.m4 (_LT_SETUP): Remove duplicate
13487         --enable-libtool-lock declaration.
13488
13489 2005-08-29  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13490
13491         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
13492         (_LT_PATH_TOOL_PREFIX, _LT_SYS_HIDDEN_LIBDEPS, _LT_DECL_EGREP):
13493         Fix typos.
13494
13495         * Makefile.am: Install libltdl data files in correct order.
13496         Use pre-defined programs for installation; use NORMAL_INSTALL
13497         and NORMAL_UNINSTALL.  Really fix ownership and timestamp
13498         problems.  Fix typo in uninstallation of aclocal files.
13499         Reported by Peter Breitenlohner <peb@mppmu.mpg.de> and
13500         Charles Wilson <cygwin@cwilson.fastmail.fm>.
13501
13502 2005-08-29  Gary V. Vaughan <gary@gnu.org>,
13503             Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13504
13505         Allow for portability with Autoconf 2.59, Automake 1.9.6,
13506         which lack AC_CONFIG_LIBOBJ_DIR support.
13507
13508         * bootstrap: Unless environment variable WORKING_LIBOBJS_SUPPORT
13509         is set to true aka `:', symlink ..
13510         * argz.c lt__dirent.c lt__strl.c: .. these from the copies in
13511         libltdl.
13512         * configure.ac (SUBDIR_LIBOBJS): Automake conditional, set if
13513         bootstrap didn't make the extra copies of libobj sources in
13514         top srcdir...
13515         * Makefile.am: Add these to EXTRA_DIST if SUBDIR_OBJS is not set,
13516         as well as the originals in libltdl/, in order to work when
13517         bootstrapped both with old and newer Automake/Autoconf.
13518
13519 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
13520
13521         * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE): Fix the comment to not
13522         pretend that LIBLTDL and LTDLINCL are not AC_SUBSTed here.
13523
13524 2005-08-29  Gary V. Vaughan  <gary@gnu.org>
13525
13526         Some macros had relied on accidentally correct ordering in order
13527         for $MV to be defined before use.  Factor out setting of some
13528         common file commands and m4_require it before use:
13529
13530         * libltdl/m4/libtool.m4 (_LT_FILEUTILS_DEFAULTS): Allow user to
13531         override some common file commands at configure time.
13532         (_LT_SETUP, _LT_CONFIG, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
13533         (_LT_COMPILER_C_O, _LT_COMPILER_FILE_LOCKS)
13534         (_LT_SYS_DYNAMIC_LINKER, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
13535         (_LT_SYS_HIDDEN_DEPLIBS): m4_require it to ensure the commands are
13536         defined before they are called.
13537
13538 2005-08-28  Gary V. Vaughan  <gary@gnu.org>
13539
13540         * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4: AU_DEFUN doesn't pass
13541         arguments.  Use AU_ALIAS instead!
13542
13543 2005-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
13544             Gary V. Vaughan <gary@gnu.org>
13545
13546         * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p) [osf]:
13547         Save file descriptor to original STDIN, and restore after
13548         redirection.  Fixes memory corruption with Tru64 and OSF sh.
13549         Reported by Nicolas Joly <njoly@pasteur.fr>.
13550
13551 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
13552             Peter Ekberg  <peda@lysator.liu.se>
13553
13554         * tests/early-libtool.at: Fix goofed up make rules in
13555         previous commit.
13556
13557         * tests/inherited_flags.at: Weaken for MSVC.
13558         * tests/early-libtool.at, tests/template.at: Fix for compiler
13559         that do not understand '-c -o'.
13560
13561 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13562
13563         * tests/standalone.at, tests/template.at: Do not compare
13564         output because of EOL issues.  Resolve warnings, make cross-
13565         compilation aware.
13566         Reported by Peter Ekberg <peda@axentia.se>.
13567
13568         * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
13569         (_LT_LINKER_SHLIBS): Double-quote unsafe tag variable
13570         descriptions: they are literals.
13571
13572 2005-08-25  Peter Ekberg  <peda@lysator.liu.se>,
13573             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13574
13575         * tests/standalone.at: (without autotools): Add
13576         $(CFLAGS) to LTCOMPILE and LTLINK. Separate compiling
13577         and linking. Remove compiling flags from link. Add
13578         --tag. Add -no-undefined flag.
13579
13580 2005-08-24  Bruno Haible  <bruno@clisp.org>
13581
13582         * libltdl/config/ltmain.sh (func_mode_install): Try "ln -s -f"
13583         and "rm -f && ln -s" to make a symlink for a shared library: the
13584         former is needed for libraries `ln' depends on, the latter for
13585         Solaris /bin/ln.
13586         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
13587
13588         * libltdl/config/ltmain.sh (cwrappersource): return 127 if exec
13589         failed.
13590
13591 2005-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13592
13593         * libltdl/m4/libtool.m4 (_LT_COMPILER_C_O): Send chmod warning to log.
13594
13595         * tests/defs.m4sh (m4dir, auxdir, scripts): Fix for source tree
13596         reorganization.
13597         * tests/sh.test: Adjust.  Also barf on sed diagnostics so this
13598         test will not fail again silently.
13599
13600         * libltdl/m4/ltdl.m4 (LT_SYS_SYMBOL_USCORE): Use _LT_EOF, not
13601         EOF.
13602
13603         * tests/fcdemo/Makefile.am (suffix rules): Explicitly add
13604         $(FCFLAGS_f90) so the tests can pass on AIX.
13605
13606 2005-08-24  Peter O'Gorman  <peter@pogma.com>
13607
13608         * libltdl/config/ltmain.m4sh (inherited_linker_flags): Work when
13609         output is an application too.
13610         Reported by Christopher Egger <Christoph_Egger@gmx.de>
13611
13612 2005-08-23  Stepan Kasal  <kasal@ucw.cz>,
13613             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13614
13615         * libltdl/m4/ltdl.m4 (LTDL_INIT): Use AH_HEADER if defined.
13616         Compute CONFIG_H only before creating config.status.
13617         Reported by Peter Ekberg <peda@axentia.se>.
13618
13619 2005-08-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13620
13621         * Makefile.maint (web-manual): Fix $(LN_S) to use absolute path.
13622         Fix creating the manual for VPATH build.
13623
13624         * bootstrap: Fix missing replace config -> $auxdir.  ltmain.m4sh
13625         is prerequisite to ltmain.sh.  Improve warning message.
13626
13627 2005-08-22  Gary V. Vaughan  <gary@gnu.org>
13628
13629         Reorganise the libtool tree to create a bootstrapped libltdl for
13630         installation to the libtoolize master tree, so that libltdl is
13631         useable even in the extreme case of when automake and autoconf are
13632         not installed on the developers machine.  Part of this change
13633         requires some duplication of rules between Makefile.am (which
13634         builds libltdl for this distribution) and libltdl/Makefile.am
13635         (which is used by projects that libltoolize --ltdl --copy), so
13636         libtool now really does use a single toplevel Makefile.am, and we
13637         generate libltdl/Makefile.am from that:
13638
13639         * m4, config: Moved from here...
13640         * libltdl/m4, libltdl/config: ...to here, to reduce the amount of
13641         kludging needed in bootstrap for autoreconf to run.
13642         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
13643         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
13644         tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
13645         tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
13646         tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Adjust to
13647         compensate.
13648         * tests/cdemo/configure.ac, tests/demo/configure.ac,
13649         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
13650         tests/fcdemo/configure.ac, tests/mdemo/configure.ac,
13651         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
13652         tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto.
13653         * libltdl/m4/ltdl.m4: Increment serial number.
13654         (LTDL_INIT): Accept an optional directory argument to prefix each
13655         of the LD_DLLOADERS locations.  Default to empty for backwards
13656         compatibility.
13657         * Makefile.maint: Adjust to compensate.
13658         * configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR): Adjust.
13659         (AC_CONFIG_LIBOBJ_DIR): Set here so that we can build LTLIBOBJS
13660         from in a subdirectory from the amalgamated Makefile.am.
13661         (AM_PROG_CC_C_O, AM_INIT_AUTOMAKE): Use subdir-objects.
13662         (AC_CONFIG_FILES): Remove libltdl/Makefile.am.
13663         * libltdl/Makefile.am: Removed from repository, and merged into
13664         Makefile.am as we now generate it...
13665         * Makefile.am (libltdl/Makefile.am): ...from here, by extracting
13666         the merged rules, and tweaking paths to accomodate the difference
13667         in directory from Makefile.am to libltdl/Makefile.am.
13668         (nobase_dist_pkgdata_DATA): Automake generated installation rules
13669         change timestamps of installed files, so renamed this...
13670         (configauxfiles): ...to this...
13671         (libtoolize): ...substitute it...
13672         (install-data-local): ...install manually, preserving
13673         timestamps...
13674         (install-data-hook): ...and set execute bit as appropriate.
13675         (uninstall-hook): Not forgetting to remove them at uninstall.
13676         (libltdl/Makefile.in): New rule.  Called from...
13677         * bootstrap: ...here to avoid relying on config.status at
13678         bootstrap time.
13679         (auxdir, m4dir): Extract from configure.ac for ease of future
13680         maintenance.  Adjust all references.
13681         (reconfdirs): Call autoreconf for libltdl too -- even
13682         though we don't use it for the build, libltdl/configure and
13683         friends are installed with `libtoolize --ltdl --copy'.
13684         * libtoolize.m4sh: Add files from the installed config master tree
13685         to libtoolize --ltdl project subdirectory.
13686         Diagnose duplicated files when --ltdl is used in an autotooled
13687         project.
13688         It's perfectly fine to run `libtoolize --ltdl --copy' in a tree
13689         that has no configure.ac or configure.in; we want libltdl to be
13690         useful even to projects that don't use autotools themselves.
13691         (libtoolize_flags): Removed.  Changed all callers.
13692         (func_massage_pkgconfig_files): New function.
13693         * tests/standalone.at: New tests for using libltdl without
13694         supporting configury in the parent project.
13695         * tests/testsuite.at: Run them!
13696         * NEWS: Updated.
13697
13698 2005-08-22  Peter Ekberg  <peda@lysator.liu.se>
13699
13700         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Add
13701         forgotten end bracket.
13702
13703         * doc/libtool.texi: Shorten the lines describing the
13704         output from MS dumpbin, and align the columns.
13705
13706         * m4/libtool.m4: Bump serial number.
13707         (LT_PATH_NM): If nm is not found on the path, look for
13708         dumpbin. Then check if $NM responds as dumpbin would
13709         and if not, assume the name lister is BSD nm compatible.
13710         (_LT_CMD_GLOBAL_SYMBOLS): If the name lister uses the
13711         dumpbin interface, adjust the test to find a working
13712         global_symbol_pipe.
13713         * doc/libtool.texi: Document $NM to possibly be MS
13714         dumpbin compatible, and also document the format of the
13715         relevant output from MS dumpbin.
13716
13717 2005-08-21  Gary V. Vaughan  <gary@gnu.org>
13718
13719         * libltdl/Makefile.am: revert mistaken commit.
13720
13721         * tests/template.at [darwin]: Some of these tests result in
13722         unresolved symbols on darwin, so don't run those test on that
13723         host!
13724
13725 2005-08-18  Gary V. Vaughan  <gary@gnu.org>,
13726             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13727
13728         * m4/libtool.m4 (LT_OUTPUT): New macro to generate
13729         libtool before config.status.
13730         (_LT_CONFIG_COMMANDS): If LT_OUTPUT has been invoked, then
13731         generate code in config.status to call config.lt instead of
13732         generating libtool directly.
13733         * doc/libtool.texi (LT_INIT): Document LT_OUTPUT.
13734         * tests/early-libtool.at: New test.
13735         * Makefile.am (TESTSUITE_AT): Updated.
13736         * tests/testsuite.at: Updated.  Define defaults for $ACLOCAL,
13737         $AUTOCONF.
13738
13739 2005-08-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13740
13741         * TODO: Actually updated now.
13742
13743         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]: Do not
13744         assume `aout' for modern FreeBSD by absence of deprecated
13745         `objformat'.
13746
13747         * m4/libtool.m4 [sun, CC] (_LT_LANG_CXX_CONFIG): Move postdeps
13748         override ..
13749         (_LT_SYS_HIDDEN_LIBDEPS): ..here.
13750         * TODO: Updated.
13751
13752 2005-08-18  Stepan Kasal  <kasal@ucw.cz>
13753
13754         * config/general.m4sh (SP2NL, NL2SP): Simplify.
13755
13756 2005-08-17  Gary V. Vaughan  <gary@gnu.org>
13757
13758         * m4/ltdl.m4 (LTDL_INIT): Fix mismatched parens.
13759
13760 2005-08-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13761
13762         * tests/inherited_flags.at: Store intermediate libtool output
13763         for better debugging.
13764
13765         * tests/link-order.at: Add -no-undefined to LDFLAGS.
13766
13767         * tests/convenience.at, tests/template.at: Change suffix of C++
13768         files to .cpp, for compatibility with MSVC.
13769         Reported by Peter Ekberg <peda@axentia.se>.
13770
13771 2005-08-12  Jeremie LE HEN  <tataz@sitadelle.com>,
13772             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13773
13774         * doc/libtool.texi (Creating object files, Linking libraries):
13775         Update description of library object (.lo) and libtoo library
13776         (.la) files.
13777         (all over): Replace MODE with --mode=MODE in examples.
13778
13779 2005-08-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13780
13781         * config/ltmain.m4sh (func_source): New function.
13782         (func_mode_execute, func_mode_install, func_mode_link): Use it.
13783         Do not append a dot to a file name to source, it breaks on
13784         cygwin managed mounts and is not necessary anywhere.
13785         Reported by Eric Blake <ebb9@byu.net>.
13786
13787         * config/ltmain.m4sh (func_execute_cmds): New function.
13788         (func_mode_finish, func_mode_install, func_mode_link)
13789         (func_mode_uninstall): Use it.
13790
13791         * tests/defs.m4sh (func_configure): Rename to ..
13792         (func_configure_nofail): this, call from old.
13793         * tests/fcdemo-conf.test, tests/fcdemo-shared.test,
13794         tests/fcdemo-static.test: Use.  Do not fail gratuitously but
13795         SKIP on compilers that look like they could be Fortran 77-only.
13796         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13797
13798         * config/ltmain.m4sh (mode): Do not initialize, for nicer error
13799         messages.
13800
13801 2005-08-10  Peter Ekberg  <peda@lysator.liu.se>
13802
13803         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Set ac_ext to cpp, not cc.
13804
13805 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13806
13807         * config/ltmain.m4sh (inherited_linker_flags): Backed out broken
13808         patch.
13809
13810 2005-08-08  Peter O'Gorman  <peter@pogma.com>
13811
13812         * config/ltmain.m4sh (inherited_linker_flags): Work when output
13813         is an application too.
13814         Reported by Christopher Egger <Christoph_Egger@gmx.de>
13815
13816 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13817
13818         * m4/libtool.m4 (_LT_PROG_FC, _LT_LANG_FC_CONFIG): New macros
13819         for modern Fortran.
13820         (LT_LANG, _LT_LANG_DEFAULT_CONFIG, _LT_SYS_DYNAMIC_LINKER,
13821         _LT_SYS_HIDDEN_LIBDEPS): Adjusted.
13822         * tests/fcdemo-conf.test, tests/fcdemo-exec.test,
13823         tests/fcdemo-make.test, tests/fcdemo-shared.test,
13824         tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
13825         tests/fcdemo/README, tests/fcdemo/configure.ac,
13826         tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
13827         tests/fcdemo/foof.f90, tests/fcdemo/foof2.f90,
13828         tests/fcdemo/foof3.f90, tests/fcdemo/fprogram.f90: New tests for
13829         Fortran.
13830         * tests/convenience.at: Extended.
13831         * Makefile.am, configure.ac: Adjusted.
13832         * NEWS: Updated.
13833
13834         * AUTHORS, HACKING: Updated.
13835
13836 2005-08-05  Albert Chin-A-Young  <china@thewrittenword.com>
13837
13838         * config/ltmain.m4sh (func_mode_link): Ignore errors from expr
13839         when determining if piece-wise linking should be done.
13840
13841 2005-08-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13842
13843         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Add
13844         missing bit from Christoph's patch.
13845
13846         * m4/libtool.m4 (_LT_LINKER_HARDCODE_LIBPATH, _LT_LINKER_SHLIBS)
13847         (_LT_LANG_CXX_CONFIG): Comment typos.
13848
13849 2005-08-04  Christoph Egger  <Christoph_Egger@gmx.de>
13850
13851         * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Change
13852         basename() to base_name() and have it return a pointer to const,
13853         fix compilation warnings.
13854
13855 2005-07-30  Peter Ekberg  <peda@lysator.liu.se>
13856
13857         * m4/libtool.m4 (_LT_PROG_F77): Set it up so that saying F77=no
13858         to configure disables the fortran tests in the testsuite.
13859
13860 2005-07-29  Richard Moseley  <dickie.moseley@virgin.net>
13861
13862         * m4/ltdl.m4 (LTDL_INIT): Handle in addition the new name for
13863         AC_LIST_HEADERS which is _AC_LIST_TAGS.
13864
13865 2005-07-28  Peter Ekberg  <peda@lysator.liu.se>
13866
13867         * libltdl/Makefile.am: Make the LTDLOPEN define controllable
13868         from the configure script.
13869         * m4/ltdl.m4 (LTDL_INIT): Set the LTDLOPEN define according
13870         to libname_spec.
13871
13872         * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
13873         not time, for really fresh files. Add sleep 1 calls at
13874         strategic places. Makes the test pass for MinGW.
13875
13876         * m4/libtool.m4 (_LT_LINKER_OPTION): Fix copy-paste bug, it is
13877         the linker that is tested.
13878
13879         * tests/demo-noinst-link.test: $make is empty on MSYS, replace
13880         with $MAKE. Makes the test pass for MinGW.
13881
13882         * config/ltmain.m4sh (func_generate_dlsyms): Properly remove
13883         the fake symbol line ": @PROGRAM@ " from the list of exported
13884         symbols.
13885
13886         * libltdl/loaders/loadlibrary.c (vm_open): Set the error mode so
13887         that no dialog is popped up in case the file given to
13888         LoadLibrary is not a dll.
13889
13890         * config/ltmain.m4sh (func_mode_link) <lib>: Make sure
13891         skipped_export is set to colon if _some_ cmd of
13892         export_symbols_cmds is too long.
13893
13894         * libltdl/ltdl.c: The linker is confused by having one
13895         definition of lt_libltdlc_LTX_preloaded_symbols tagged with
13896         __declspec(dllexport) in ltdl.c and one definition with an
13897         initial value in libltdlcS.c. So, just say extern in ltdl.c.
13898         Fixes the mdemo-exec.test for MinGW.
13899
13900         * config/ltmain.m4sh (func_mode_link) <lib>: Zap duplicate
13901         message "creating reloadable object files..."
13902
13903 2005-07-23 Peter O'Gorman  <peter@pogma.com>
13904
13905         * m4/libtool.m4 (CXX, archive_cmds) [sun]: Add -lCstd, -lCrun
13906         and -lc for c++ builds with Sun C++ and Centerline C++..
13907         Reported by Albert Chin-A-Young <china@hewrittenword.com>
13908
13909 2005-07-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13910
13911         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Fix bogus merge.
13912         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13913
13914 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13915
13916         * libltdl/Makefile.am (libltdl_la_DEPENDENCIES): Depend on
13917         $(BUILT_SOURCES) as well, so that argz.h gets created through
13918         `make libltdlc.la'.
13919         Reported by Sven Verdoolaege <skimo@liacs.nl>.
13920
13921 2005-07-08  Peter Breitenlohner  <peb@mppmu.mpg.de>
13922
13923         * Makefile.am (install-data-local): Have root own of installed
13924         files (but do not fail, for user installs).
13925
13926 2005-07-08  Bruno Haible  <bruno@clisp.org>
13927
13928         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <postinstall_cmds>
13929         [cygwin,mingw,pw32]: Make DLL executable after installing it.
13930
13931 2005-07-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13932
13933         * config/ltmain.m4sh (func_mode_install): Do not assume `-f'
13934         needs an argument if the install program is `cp'.  Cleanup
13935         install mode somewhat.
13936         Reported by Juergen Leising <juergen.leising@gmx.de>.
13937
13938 2005-07-03  Thorsten Glaser  <tg@66h.42h.de>
13939
13940         * m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Quieten configure
13941         output for corner cases on some BSDs.
13942         (LT_CMD_MAX_LEN): Another comment cleanup.
13943
13944         * config/ltmain.m4sh (func_extract_archives, func_mode_install),
13945         m4/libtool.m4 (_LT_SETUP, _LT_SYS_DYNAMIC_LINKER, LT_PATH_LD)
13946         (_LT_PATH_LD_GNU, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
13947         Comment language, indentation, and backquote cleanup.
13948         * THANKS: Updated.
13949
13950 2005-07-02  Peter O'Gorman  <peter@pogma.com>
13951
13952         * tests/inherited_flags.at: Use -no-undefined.
13953         Reported by Chris Oxenreider <oxenreid@state.net>
13954
13955 2005-07-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13956
13957         * config/ltmain.m4sh (func_mode_compile, func_mode_link),
13958         m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH, _LT_ENABLE_LOCK):
13959         Remove some unnecessary quotes.
13960
13961         * tests/convenience.at <GCJ>: Fix java test.
13962         Reported by Eric Blake <ericblake@comcast.net>.
13963
13964 2005-07-01  Derek R. Price  <derek@ximbiot.com>
13965
13966         * config/ltmain.m4sh (func_mode_link) <shell wrapper>: Handle
13967         spaces in paths to executed programs.  Quote path in error message.
13968
13969 2005-06-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13970
13971         * THANKS: Updated.
13972
13973 2005-06-28  Stepan Kasal  <kasal@ucw.cz>
13974
13975         * clcommit.m4sh: "grep|sed" can be replaced by mere "sed".
13976         * m4/libtool.m4 (_LT_LIBTOOL_TAGS): Remove unnnecessary "[]".
13977         * m4/lt~obsolete.m4: Use m4_ifndef.
13978
13979 2005-06-27  Stepan Kasal  <kasal@ucw.cz>
13980
13981         * m4/ltsugar.m4 (lt_combine, _lt_combine): Fix default separator.
13982
13983         * m4/ltoptions.m4 (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Replace
13984         AC_FOREACH by a combination of m4_foreach/m4_split/m4_normalize.
13985
13986 2005-06-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13987
13988         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Remove unnecessary workaround
13989         for CVS Automake bug (fixed).
13990         Reported by Stepan Kasal <kasal@ucw.cz>.
13991
13992 2005-06-21  Peter O'Gorman  <peter@pogma.com>
13993
13994         * conig/ltmain.m4sh [darwin]: Accept -arch flag.
13995
13996 2005-06-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13997
13998         * m4/libtool.m4 (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
13999         New macros: save warnings and boilerplate of simple compile/link
14000         tests.
14001         (_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
14002         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Call.
14003         (_LT_COMPILER_OPTION, _LT_LINKER_OPTION, _LT_COMPILER_C_O, ):
14004         Fail only if nonempty warnings different from default
14005         compile/link.
14006
14007 2005-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14008
14009         * m4/ltsugar.m4 (lt_car, lt_cdr): New macros, clones of
14010         m4_car/m4_cdr with the fixed semantics of Autoconf-2.59c CVS, in
14011         order to work with 2.59.
14012         (lt_combine): Use it.
14013         Reported by Christoph Egger <Christoph_Egger@gmx.de>.
14014
14015 2005-06-11  Ralf Menzel  <menzel@ls6.cs.uni-dortmund.de>,
14016             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14017
14018         * m4/ltoptions.m4 (_LT_SET_OPTIONS): Loop options only if
14019         nonempty.
14020         * m4/ltsugar.m4 (lt_combine): Don't test against empty quotes,
14021         test against empty arg.  Fixes infinite m4 loop with CVS
14022         Autoconf.
14023
14024 2005-06-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14025
14026         * m4/libtool.m4 (_LT_COMPILER_OPTION, _LT_LINKER_OPTION): No
14027         need for $ECHO here.  Fix sed script syntax to be portable.
14028         This should now put the pic-flag right after the last $*FLAGS
14029         variable again, if any.  Necessary for Fortran AC_FC_SRCEXT.
14030
14031 2005-06-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14032
14033         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Remove long lines.
14034
14035 2005-06-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14036
14037         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
14038         _LT_LANG_CXX_CONFIG): PGI also has pgf95.  PGI static flag is
14039         `-Bstatic'.  Remove harmless extra comma from whole_archive
14040         output.
14041
14042 2005-06-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14043
14044         * config/ltmain.m4sh (func_mode_compile): In order to find out
14045         about forbidden characters in output, check with grep after
14046         checking func_quote_for_eval result.  Also, warn instead of fail.
14047         * config/general.m4sh (func_quote_for_eval)
14048         (func_quote_for_expand): Revert SunOS sh bug workaround patch from
14049         2004-12-28 as it triggers bugs in the Tru64 5.1B shell.
14050         Reported by Albert Chin <libtool@mlists.thewrittenword.com> and
14051         Nicolas Joly <njoly@pasteur.fr>.
14052
14053 2005-06-01  Olly Betts <olly@survex.com>  (tiny change)
14054
14055         * libltdl/argz.c (argz_create_sep): Fix typo.
14056
14057 2005-05-31  Peter O'Gorman  <peter@pogma.com>
14058
14059         * config/ltmain.m4sh: Do not add installed static litool libraries
14060         to convenience, they are not convenience libraries.
14061         Reported by Chen-Mou Cheng <chenmou.cheng@gmail.com>
14062
14063 2005-05-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14064
14065         * THANKS: Updated.
14066
14067 2005-05-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14068
14069         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [aix]:
14070         Fix wrong $ECHO use overlooked in 2005-04-27.  Simplify slightly.
14071
14072         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
14073         _LT_LANG_CXX_CONFIG) [linux]: PGI:
14074         Add $pic_flag to archive_cmds and archive_expsyms_cmds.
14075         Bug reported against LAM by Troy Telford <ttelford@lnxi.com>.
14076
14077 2005-05-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14078
14079         * THANKS: Updated.
14080
14081 2005-05-06  Gary V. Vaughan  <gary@gnu.org>
14082
14083         * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Propogate ltdl directory.
14084
14085 2005-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14086
14087         * Makefile.am (stamp-vcl): Use `diff' instead of `cmp'.
14088
14089 2005-04-30  Gary V. Vaughan  <gary@gnu.org>
14090
14091         Revert the parallel installation changes from November last year:
14092
14093         * libtoolize.m4sh (pkgdatadir, aclocaldir): Substituted from
14094         configure.
14095         (func_copy_all_from_path): Removed.  No longer used.
14096         (func_copy_some_files): Simplify now that nothing is copied from a
14097         list of possible directories now.
14098         (func_scan_files): Remove directory readability check...
14099         (func_nonemptydir_p): ...in favour of a dedicated sanity check
14100         function called from the main body.
14101         (_lt_pkgvdatadir): Set pkgdatadir and aclocaldir appropriately if
14102         this is in the environment.
14103         * configure.ac: Tests for `ln' removed.
14104         (APIVERSION): Removed.
14105         * Makefile.am (pkgvdatadir, nobase_dist_pkgvdata_DATA)
14106         (nobase_pkgvdata_DATA): Renamed to...
14107         (pkgdatadir, nobase_dist_pkgdata_DATA, aclocalfiles): ...these
14108         respectively.
14109         (edit): Adjust for new variable names.
14110         (install-data-local): Don't bother to remove old macro files that
14111         will be overwritten by the installation, and perform a manual
14112         installation of $(aclocalfiles) to preserve timestamps.
14113         (install-exec-hook): Removed.  No need to make versioned links.
14114         (uninstall-hook): No need to remove versioned links, but now we
14115         need to manually remove the manually installed $(aclocalfiles).
14116         * doc/libtool.texi: Remove bogus notes about setting
14117         ACLOCAL_AMFLAGS for versioned libtool installations.
14118         * NEWS: Remove parallel installation item.
14119
14120 2005-04-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14121
14122         * m4/ltdl.m4 (all over): Quote all arguments to AC_DEFINE and
14123         AC_DEFINE_UNQUOTED consistently.  Reported by
14124         Michael Koch  <konqueror@gmx.de>, Riccardo Mottola <zuse@libero.it>,
14125         and Dalibor Topic <robilad@kaffe.org>.
14126
14127         * HACKING: Updated.
14128
14129 2005-04-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14130
14131         * tests/convenience.at: Actually add.
14132
14133         * tests/convenience.at: New.  Test convenience archives.
14134         * Makefile.am, tests/testsuite.at: Adjust.
14135         * tests/testsuite.at: Reorder tests.  Suspend AT_TESTED.
14136         (PREPARE_TESTS): Define EGREP, host, build, LIBTOOL.
14137         (LT_AT_BOOTSTRAP): Fail if autoreconf fails.
14138         (LT_AT_EXEC_CHECK): New macro for execution of $build binaries.
14139         (LT_AT_TAG): New macro to test tag availability or skip test.
14140         * tests/am-subdir.at, tests/duplicate_members.at,
14141         tests/inherited_flags.at, tests/link-order.at,
14142         tests/stresstest.at, tests/template.at: Adjust.  Use LT_AT_TAG,
14143         LT_AT_EXEC_CHECK, AT_KEYWORDS. Use compiler/linker flags
14144         consistently.
14145         * tests/link-order.at: Fix use of AT_DATA, bogus redirection
14146         inside AT_CHECK.
14147         * tests/stresstest.at: Do not use wildcards/regex in symbol files,
14148         they are not portable.  Use -no-undefined on win32.  Fix to ignore
14149         compile/link warnings.
14150
14151         * tests/f77demo/foo.h, tests/f77demo/fooc.c,
14152         tests/f77demo/cprogram.c, tests/mdemo2/main.c, tests/pdemo/foo.h:
14153         Make declarations available.
14154
14155         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: sed 3.02 does
14156         not understand \t in regex.
14157         Reported by Tim Van Holder <tim.vanholder@gmail.com>.
14158
14159         * tests/defs.m4sh (func_configure): Don't run the whole configure
14160         script with -x.
14161
14162         * config/ltmain.m4sh: Audit use of echo vs $ECHO.
14163         Reported by Robert Ögren <lists@roboros.com> and others.
14164
14165         * TODO: Updated.
14166
14167 2005-04-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
14168             Gary V. Vaughan  <gary@gnu.org>
14169
14170         * HACKING, THANKS: Updated.
14171
14172 2005-04-25  David Edelsohn  <dje@watson.ibm.com>
14173
14174         * m4/libtool.m4 (_LT_LINKER_SHLIBS): _LT_TAGDECL(file_list_spec).
14175         * config/ltmain.m4sh (func_mode_link): Change $filelist to
14176         $output.
14177
14178 2005-04-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14179
14180         * m4/libtool.m4 (_LT_CC_BASENAME): Ignore `compile'.
14181
14182 2005-04-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14183
14184         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [solaris]:
14185         Update wl for Sun Studio f77/f90/f95.  Fix whole_archive_flag_spec
14186         for cc and f77/f90/f95 to prevent reordering in case we link with
14187         $CC.
14188
14189         * m4/libtool.m4: Audit use of echo vs $ECHO.
14190         * TODO: Update.
14191         Reported by Robert Ögren <lists@roboros.com> and others.
14192
14193 2005-04-23  Gary Kumfert <kumfert@llnl.gov>
14194
14195         * m4/libtool.m4 (_LT_LANG_F77_CONFIG) [aix4, aix5]:
14196         Adjust logic to match the C case: Only disable static if not
14197         on ia64 nor runtimelinking.
14198
14199 2005-04-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14200
14201         * Makefile.am, HACKING: Use lt__cd throughout.
14202
14203 2005-04-22  Gary V. Vaughan  <gary@gnu.org>
14204
14205         The FSF are moving offices today.  Changed their contact address
14206         in all files from `59 Temple Place, Suite 330, MA 02111-1307' to
14207         `51 Franklin Street, Fifth Floor, MA 02110-1301'.
14208
14209 2005-04-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14210
14211         * libtoolize.m4sh (func_scan_files, func_serial,
14212         func_ltmain_update, func_config_update, func_install_update):
14213         Placate AIX sed.
14214
14215 2005-04-19  David Edelsohn  <dje@watson.ibm.com>
14216
14217         * config/ltmain.m4sh (func_mode_link): If command exceeds
14218         max_cmd_len and file_list_spec exists, write list of input files
14219         to temporary file.
14220         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
14221         [aix4,aix5]: Define file_list_spec.
14222
14223 2005-04-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14224
14225         * tests/demo-hardcode.test: Fix typo.
14226
14227 2005-04-17 Alexandre Oliva  <aoliva@redhat.com>,
14228            Peter O'Gorman  <peter@pogma.com>
14229
14230         * config/ltmain.m4sh: Don't add files with the same base name to
14231         an archive; rename duplicates instead.
14232         (func_extract_an_archive): Remove section to deal with duplicate
14233         base names in an archive.
14234         * tests/functests.at: remove.
14235         * tests/duplicate_members.at: new test.
14236         * tests/testsuite.at: Add new test, remove old.
14237         * Makefile.am: Add new test, remove old.
14238
14239 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14240
14241         * tests/demo-hardcode.test [solaris]:  Use dumpstabs if available,
14242         to avoid false failure caused by debug section which contains
14243         command line (Solaris cc).
14244         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
14245
14246 2005-04-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14247
14248         * libtoolize.m4sh (func_copy_cb): Fix syntax typo.
14249
14250 2005-04-15  Maciej W. Rozycki  <macro@linux-mips.org>
14251
14252         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Add old_archive_cmds
14253         definition.
14254
14255 2005-04-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14256
14257         * m4/libtool.m4 (_LT_CC_BASENAME): New macro to figure out
14258         $cc_basename.  Skip ccache, distcc, purify, cmdline options,
14259         `$host_alias-' prefix.
14260         (_LT_SETUP, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
14261         (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Use.
14262         * NEWS, TODO: Update.
14263
14264 2005-04-15  Gary V. Vaughan  <gary@gnu.org>
14265
14266         * libltdl/configure.ac (AC_OUTPUT): loaders/Makefile is no longer
14267         used.
14268
14269         * Makefile.am (lt__cd, CD_TESTDIR): New make macros to work around
14270         problems with CDPATH in some shells.
14271         (check-local, installcheck-local, clean-local): Use them.
14272
14273 2005-04-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14274
14275         * bootstrap: Define srcdir for making `commit'.
14276
14277 2005-04-14  Alexandre Oliva  <aoliva@redhat.com>,
14278             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14279
14280         * config/ltmain.m4sh (link mode): Add to tmp_libs paths for
14281         libtool dep libs in reverse order as well.
14282         * Makefile.am, tests/testsuite.at, tests/link-order.at: New test.
14283
14284 2005-04-13  Gary V. Vaughan  <gary@gnu.org>
14285
14286         Since the bootstrap process requires that several of the rules for
14287         files generated in doc and tests already lived in
14288         $top_srcdir/Makefile.am, along with proxy rules in sub-Makefiles,
14289         this changeset consolidates almost everything into the top
14290         Makefile.am, simplifying things considerably:
14291
14292         * doc/Makefile.am, tests/Makefile.am: Removed.  All rules moved...
14293         * Makefile.am: ...to here and adjusted to run from $top_builddir.
14294         Some reformatting to group rules and declarations by purpose, and
14295         simplify with respect to removing much of the make recursion.
14296         Add `doc/PLATFORMS', `doc/fdl.texi' and `doc/notes.texi'.
14297         `defs.in' and `defs.m4sh' are in directory `tests'.
14298         (uninstall-hook): Don't forget to uninstall libtoolize's libltdl
14299         source tree.
14300         * bootstrap: Simplified dirty makefile management, and bootstrap
14301         file creation in light of having only a single pertinent
14302         Makefile.
14303         * configure.ac (CONF_SUBDIRS): Add tests/ prefix to each subdir to
14304         compensate.
14305         (DIST_MAKEFILE_LIST): Adjust.
14306         (AC_CONFIG_FILES): Remove doc/Makefile and tests/Makefile.
14307         * tests/defs.m4sh (LIBTOOL, scripts): Adjust paths.
14308         * tests/cdemo-conf.test, tests/cdemo-exec.test,
14309         tests/cdemo-make.test, tests/cdemo-shared.test,
14310         tests/cdemo-static.test, tests/cdemo-undef.test,
14311         tests/demo-conf.test, tests/demo-deplibs.test,
14312         tests/demo-exec.test, tests/demo-hardcode.test,
14313         tests/demo-inst.test, tests/demo-make.test,
14314         tests/demo-nofast.test, tests/demo-noinst-link.test,
14315         tests/demo-nopic.test, tests/demo-pic.test,
14316         tests/demo-relink.test, tests/demo-shared.test,
14317         tests/demo-static.test, tests/demo-unst.test,
14318         tests/depdemo-conf.test, tests/depdemo-exec.test,
14319         tests/depdemo-inst.test, tests/depdemo-make.test,
14320         tests/depdemo-nofast.test, tests/depdemo-relink.test,
14321         tests/depdemo-shared.test, tests/depdemo-static.test,
14322         tests/depdemo-unst.test, tests/f77demo-conf.test,
14323         tests/f77demo-exec.test, tests/f77demo-make.test,
14324         tests/f77demo-shared.test, tests/f77demo-static.test,
14325         tests/link-2.test, tests/link.test, tests/mdemo-conf.test,
14326         tests/mdemo-dryrun.test, tests/mdemo-exec.test,
14327         tests/mdemo-inst.test, tests/mdemo-make.test,
14328         tests/mdemo-shared.test, tests/mdemo-static.test,
14329         tests/mdemo-unst.test, tests/mdemo2-conf.test,
14330         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
14331         tests/objectlist.test, tests/pdemo-conf.test,
14332         tests/pdemo-exec.test, tests/pdemo-inst.test,
14333         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
14334         tests/suffix.test, tests/tagdemo-conf.test,
14335         tests/tagdemo-exec.test, tests/tagdemo-make.test,
14336         tests/tagdemo-shared.test, tests/tagdemo-static.test,
14337         tests/tagdemo-undef.test, tests/tagtrace.test (func_cd,
14338         func_require): Adjust paths.
14339
14340 2005-04-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14341
14342         * config/general.m4sh, libtool.m4 (_LT_SETUP), tests/defs.m4sh,
14343         tests/functests.at: Fix definition of $Xsed.
14344
14345 2005-04-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14346
14347         Improved Portland support: prelinking of C++ templates and
14348         whole_archive.
14349
14350         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [linux]:
14351         Reinstate formatted whole_archive_flag_spec for PGI compilers.
14352         * config/ltmain.m4sh (func_mode_link), m4/libtool.m4
14353         (_LT_LINKER_SHLIBS): New tag prelink_cmds, to be executed before
14354         linking a program.
14355         (_LT_LANG_CXX_CONFIG) [linux]: Use for pgCC.
14356         (_LT_COMPILER_C_O): conftest might be nonempty, clean up more
14357         thoroughly.
14358
14359         * tests/testsuite.at (LT_AT_BOOTSTRAP): Temporary fix for testing
14360         in-tree libtoolize.
14361
14362         * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Only call sed if
14363         necessary while quoting all libtool variables.
14364         Reported by Robert Ögren <lists@roboros.com>.
14365
14366 2005-04-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14367
14368         * tests/Makefile.am: Typo.
14369
14370 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14371
14372         * notes.texi: Platform-specific configuration notes.
14373         * doc/libtool.texi: Include as section.
14374         * bootstrap, doc/Makefile.am: build also as notes.txt and
14375         distribute.
14376
14377 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14378
14379         Under certain circumstances, not all of the macro files were
14380         copied into the destination directory.  This changeset fixes
14381         that bug:
14382
14383         * libtoolize.m4sh (func_serial_update):  Renamed local variable
14384         `my_update_p' to `my_serial_update_p', and initialise it correctly
14385         even when the destination file is not yet there.
14386         Reported by Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14387
14388 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14389
14390         * tests/libtoolize.at: New tests for basic libtoolize
14391         functionality and reporting.
14392         * tests/testsuite.at: Call them.
14393         * tests/Makefile.am: Distribute them.
14394
14395         * libtoolize.m4sh (pkgvdatadir): Renamed from this...
14396         (_lt_pkgvdatadir): ...to this.
14397         * tests/testsuite.at (LT_AT_LIBTOOLIZE): The `-I' option is no
14398         longer supported by libtoolize.  Set _lt_pkgvdatadir in the
14399         environment of the invocation instead.
14400
14401 2005-04-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14402
14403         * tests/template.at: New Autotest tests for C++ with templates.
14404         First test provided by
14405         Markus Christen <markus@igc.phys.chem.ethz.ch>.
14406         * tests/Makefile.am, tests/testsuite.at: Use and distribute.
14407
14408 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14409
14410         * libtoolize.m4sh (func_serial_update): Replace missing
14411         destination serial calculation line, presumably lost due to a bad
14412         merge.
14413
14414         * libltdl/loaders/Makefile.am: Removed actually.
14415
14416 2005-04-04  Gary V. Vaughan  <gary@gnu.org>
14417
14418         Getting the value of ltdldatafiles from a submake was not
14419         portable, and had problems with GNU make-3.80 at least.  This
14420         changeset pulls the installation rules for libtoolize's copy of
14421         the libltdl sources out of libltdl/Makefile.am so that
14422         ltdldatafiles is defined in the same Makefile that uses it.  Also,
14423         this makes a start at cleaning up libltdl/Makefile.am so that it
14424         is useful in a package that uses `libtoolize --ltdl':
14425
14426         * libltdl/loaders/Makefile.am: Removed entirely.
14427         * libltdl/Makefile.am (dlopen.la, dld_link.la, dyld.la)
14428         (load_add_on.la, loadlibrary.la, shl_load.la): All built from here
14429         now that the loaders submake has gone.
14430         (show-ltdldatafiles): Removed.  No longer required.
14431         (ltdldatadir, ltdldatafiles, install-local): Moved from here...
14432         * Makefile.am (ltdldatadir, ltdldatafiles, install-local): ..to
14433         here.
14434         (libtoolize): Substitute $(ltdldatafiles) directly without calling
14435         make to get the value from libltdl/Makefile.
14436
14437 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
14438
14439         * Makefile.am (libtoolize): Substitute $(nobase_pkgvdata_DATA).
14440         pkgvmacro_DATA is no longer set in the makefile.
14441         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): Use it and, for
14442         consistency, renamed from this...
14443         (func_massage_nobase_pkgvdata_DATA): ...to this.  Adjust all
14444         callers.
14445
14446 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
14447
14448         Fix problems with serial comparison sed scripts, and factor out
14449         common code from similar serial comparison functions:
14450
14451         * libtoolize.m4sh (func_keyword_update): Common code factored out
14452         of func_ltmain_update and func_config_update.
14453         (func_ltmain_update, func_config_update): Adjust, and fix sed
14454         expressions to not use unportable ? modifier.
14455         (func_install_update): New serial number based file updater keyed
14456         off 'scriptversion' variable in install-sh.  Adjust all callers.
14457
14458 2005-04-01  Gary V. Vaughan  <gary@gnu.org>
14459
14460         Most of the hair introduced ostensibly to enable testing of
14461         uninstalled libtoolize isn't necessary if we allow overriding of
14462         the libtool master copy directory:
14463
14464         * configure.ac (pkvmacrodir): No need to substitute this.
14465         * Makefile.am (edit): No need to substitute pkgvmacrodir.
14466         (dist_pkgvdata_DATA): Use nobase_ prefix so that these files are
14467         installed to $(pkgvdatadir)/config.
14468         (pkgvmacro_DATA): Renamed to...
14469         (nobase_pkgvdata_DATA): ...this, so that files are installed to
14470         $(pkgvdatadir)/m4.
14471         (install-data-hook): Adjust.
14472         * libtoolize.m4sh: Remove -I processing.
14473         (func_filename_path_search): No longer required without -I.
14474         Adjust all callers.
14475         (pkgvltdldirs, pkgvmacrodirs): Deleted.
14476         (pkgvdatadir): Allow overriding from the environment so that we
14477         can write tests for uninstalled libtoolize.
14478         (func_serial_update, func_ltmain_update, func_config_update):
14479         Rename srcdirs parameter to srcdir, and don't call the path_search
14480         function anymore.  Adjust all callers.
14481         (--install): Don't blindly copy all config files.
14482
14483 2005-04-01  Mike Stump  <mrs@apple.com>
14484
14485         * m4/libtool.m4 (LT_CMD_MAX_LEN) [netbsd, freebsd, openbsd
14486         darwin, dragonfly]: Use 3/4 of argmax, instead of 1/4.
14487
14488 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14489
14490         * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG):
14491         Set $cc_basename.
14492
14493         * HACKING: echo vs $ECHO.
14494
14495 2005-03-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14496
14497         * doc/libtool.texi: Minor formatting cleanups.
14498
14499 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
14500
14501         * libtoolize.m4sh: Propogate --debug flag to sub-libtoolizes.
14502
14503         * libtoolize.m4sh: Fix a typo, s/pkgvltdldirs/pkgvdatadirs/.
14504         When using -I to test an uninstalled libtoolize, we need to add
14505         the config subdirectory to the search path so that ltmain.sh can
14506         be found in the source tree.
14507
14508         * libtoolize.m4sh (func_copy_some_files): IFS needs to be set to
14509         path delimiter for all inner loop iterations.
14510         Once a matching file has been copied, no need to keep searching
14511         the path for another -- move on to the next file!
14512
14513         * libtoolize.m4sh: For verbose mode, explain why macro files are
14514         not installed without an AC_CONFIG_MACRO_DIR declaration.
14515
14516 2005-03-24  Gary V. Vaughan  <gary@gnu.org>
14517
14518         As a prerequisite for being able to test an uninstalled libtoolize
14519         for copying files correctly from the source tree, we must know
14520         exactly which files should be copied by the --ltdl option to avoid
14521         accidentally picking up compilation objects and other noise when
14522         $builddir == $srcdir:
14523
14524         * libltdl/loaders/Makefile.am (ltdldatadir, ltdldatafiles)
14525         (install-data-local): Removed...
14526         * libltdl/Makefile.am (ltdldatafiles): ...and consolidated here.
14527         (show-ltdldatafiles): New rule...
14528         * Makefile.am (ltdldatafiles, libtoolize): ...used to substitute
14529         exactly which files are installed by libtoolize --ltdl.
14530         (edit): Move pkgvmacro_DATA substitution expression...
14531         (libtoolize): ...to here.
14532         * libtoolize.m4sh: Use func_copy_some_files() instead of
14533         func_copy_all_from_path() to copy the --ltdl option installed
14534         files.
14535         (pkgvltdldirs): New path variable to search for files installed by
14536         --ltdl option.
14537         (func_massage_pkgvltdl_files): New function to calculate the list
14538         of ltdl installation files.
14539
14540 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14541
14542         * m4/libtool.m4, m4/ltdl.m4: Indentation and quoting cleanup.
14543
14544 2005-03-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14545
14546         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Use ${wlarc}
14547         and set to empty when using $LD for linking.  Fixes regression
14548         introduced in 2004-11-17.
14549         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> and
14550         Пухальский Юрий Андреевич <pooh@cryptopro.ru>.
14551
14552 2005-03-21  Gary V. Vaughan  <gary@gnu.org>,
14553             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14554
14555         * m4/libtool.m4 (_LT_SETUP, _LT_LANG_CXX_CONFIG)
14556         (_LT_LANG_F77_CONFIG): For matching compiler names -- Pick only
14557         first word, allow leading white space.
14558         * tests/sh.test: ..and test for missing `*' at end of patterns.
14559
14560 2005-03-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14561
14562         * TODO: Update.
14563
14564 2005-03-20  Peter Ekberg  <peda@lysator.liu.se>
14565
14566         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix5, irix6, nonstopux]:
14567         Test if it is possible to use the -exports_file linker option on
14568         irix with gcc, as the gcc specs file may include a -hidden_symbol
14569         option that is clashing with the -exports_file option.
14570         See this gcc bugzilla entry for further details:
14571         http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15288
14572         * THANKS: Update.
14573
14574 2005-03-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14575
14576         * tests/demo-nopic.test: Enhance status output
14577         noted by Tom Burger <tvburger@few.vu.nl>.
14578
14579 2005-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14580
14581         * config/ltmain.m4sh, tests/defs.m4sh: Typos.
14582
14583 2005-03-18  Peter O'Gorman  <peter@pogma.com>,
14584             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14585
14586         * m4/libtool.m4: The compiler can be a program name with args, so
14587         always check cc_basename against compiler name and a wildcard.
14588         Also, drop unnecessary quotes in `case' argument.
14589
14590 2005-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14591
14592         * Makefile.am: tests/defs.in depends on config/general.m4sh.
14593
14594         * config/general.m4sh: unconditionally set IFS, and set it
14595         to the one true right sequence: space, tab, newline.
14596         * m4/libtool.m4: remove IFS setting and as_* namespace
14597         infringement.
14598
14599         * m4/libtool.m4 (_LT_CONFIG): Reset IFS to fix failure with ash.
14600
14601         * configure.ac, libltdl/configure.ac: s/##/dnl/ for comments
14602         that are meaningless in configure.
14603         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
14604
14605 2005-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14606
14607         * libltdl/configure.ac: Update version; require Autoconf >= 2.59.
14608
14609         * bootstrap: Allow to override tools.
14610
14611 2005-03-15  Gary V. Vaughan  <gary@gnu.org>
14612
14613         * libtoolize.m4sh (func_massage_pkgvmacro_DATA): New function
14614         to calculate the macro filenames to be copied by libtoolize.
14615         * Makefile.am (edit): Substitute pkgvmacro_DATA.
14616
14617         * bootstrap: Need to generate tests/package.m4 from Makefile.am
14618         before generating tests/testsuite from tests/Makefile.am, or
14619         else bootstrap of a fresh checkout fails.
14620
14621 2005-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14622
14623         * m4/libtool.m4 (_LT_COPYING): Update Copyright year.
14624
14625         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]: Remove MAIN_
14626         dependency when creating shared libraries with Portland pgf77.
14627
14628 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14629
14630         * configure.ac: stamp-vcl is in $top_srcdir, not $top_builddir.
14631
14632 2005-03-12  Per Bothner <per@bothner.com>,
14633             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14634
14635         Allow special characters in source file names.  Will break unless
14636         `-o target' is also given, which must not contain special
14637         characters. En passant, fix source file quoting broken for
14638         cygwin/MSVC:
14639
14640         * config/ltmain.m4sh (func_mode_compile): Use new variable
14641         qsrcfile for quoted source file name for compile $command.  Fix
14642         missing quotes for _c_o lockfile.
14643         * NEWS: Update.
14644
14645 2005-03-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14646
14647         * config/ltmain.m4sh (func_mode_link): Reword double negation in
14648         error message.
14649         Reported by Jesper Louis Andersen <jlouis@mongers.org>.
14650
14651         * bootstrap: really remove bogus files Makefile tests/Makefile.
14652
14653         * doc/libtool.texi: Replace wicked whiches by thats or other
14654         better-sounding constructs.
14655
14656 2005-03-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14657
14658         * tests/Makefile (clean-local): Ignore testsuite cleanup
14659         failures.
14660
14661 2005-03-11  Per Bothner  <per@bothner.com>  (tiny change)
14662
14663         * tests/Makefile (clean-local): Only run the testsuite cleanup
14664         if the testsuite has been generated.
14665
14666 2005-03-10  Gary V. Vaughan  <gary@gnu.org>
14667
14668         * libltdl/Makefile.am (install-data-local): Don't force v7 tar
14669         format with the `o' flag in create mode.
14670         Set the umask to 0 when untarring to avoid copied files taking
14671         their mode from the installer's umask.
14672         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14673         * libtoolize.m4sh (func_copy_cb): Ditto.
14674         Ignore errors from failed `cd' in the tar processes, since we
14675         may be running in dryrun mode.
14676         Reported by Noah Misch <noah@cs.caltech.edu>,
14677                     Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
14678
14679 2005-03-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14680
14681         * libltdl/Makefile.am: $(builddir) is not defined, replace by
14682         `.'.
14683
14684 2005-03-08  Albert Chin-A-Young  <china@thewrittenword.com>
14685
14686         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
14687         [irix*, osf*]: Output -update_registry information to
14688         ${output_objdir} directory, not ${objdir}. ${output_objdir}
14689         will work when a project has a single Makefile and performs
14690         builds in subdirectories. ${objdir} expects the source in
14691         the current directory, breaking single-Makefile builds.
14692
14693 2005-03-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14694
14695         * tests/stresstest.at: Remove multiple variable definition.
14696
14697         * TODO: Update.
14698
14699         * THANKS: Update.
14700
14701 2005-03-02  Gary V. Vaughan  <gary@gnu.org>
14702
14703         * libtoolize.m4sh (func_copy_cb): Use tar chof to avoid symlink
14704         attacks.
14705         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
14706         (install-data-local): Ditto.
14707
14708 2005-02-27  Gary V. Vaughan  <gary@gnu.org>
14709
14710         In branch-2-0 (and in time, others) ltversion.m4 has a dot
14711         delimited serial number that didn't used to be processed
14712         correctly by libtoolize.  This changeset fixes that, and
14713         leverages those changes to check versions of ltmain.sh and
14714         config.sub, config.guess before overwriting when --force is
14715         not given:
14716
14717         * libtoolize.m4sh: Don't overwrite pkgaux files with --force
14718         unless --install is given too.
14719         (func_serial): Fix underquoting in regexp.
14720         (func_serial_max): New function to compare serial numbers.
14721         (func_serial_update_check): New function factored out of
14722         func_serial_update().
14723         (func_serial_update): Bail if SRCFILE is missing.
14724         Don't display both 'already up to date' and 'use --force to
14725         update' messages for the same file.
14726         Use func_serial_max to cope with `.' delimited serial numbers.
14727         (func_ltmain_update): Use func_serial_update_check and
14728         func_serial_max to do version checking with $package_revision.
14729         (func_config_update): Ditto with $timestamp.
14730
14731 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
14732
14733         * libltdl/Makefile.am (install-data-local):  cd to $(srcdir)
14734         before tarring up the files for installation to
14735         $(DESTDIR)$(ltdldatadir).  Don't remove the destination directory,
14736         since that interacts badly with the multi-Makefile installation.
14737         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14738
14739 2005-02-26  Gary V. Vaughan  <gary@gnu.org>
14740
14741         I assume that it is okay to have undefined symbols in convenience
14742         libraries that will be used as modules -- the pic objects are
14743         built normally, and are not expected to resolve all their symbols
14744         until they are linked into a library; convenience libraries are
14745         then rolled using 'ar' and 'ranlib' (or equivalent) which also do
14746         not check whether symbols are resolved.  We now build each of the
14747         loaders as a convenience library module under these assumptions,
14748         and link libltdl.la with selected modules, at which time all of
14749         the symbols *are* resolved:
14750
14751         * TODO: Remove item addressed by this changeset.
14752         * libltdl/Makefile.am (lib_LTLIBRARIES): Remove libdlloader.la.
14753         (libdlloader_la_SOURCES): Declaration removed.  Changed all
14754         clients.  Source files..
14755         (libltdl_la_SOURCES): ...added back in here.
14756         (libdlloader_LDFLAGS, libdlloader_la_LIBADD): Removed.
14757         (libltdl_la_LIBADD): Remove libdlloader.la; add $(LTLIBOBJS).
14758         * libltdl/loaders/Makefile.am: Removed all references to
14759         libdlloader.la.
14760
14761 2005-02-25  Gary V. Vaughan  <gary@gnu.org>
14762
14763         * libtoolize.m4sh (func_copy): Split arguments to func_copy_cb
14764         calls across lines so that quote.test doesn't misdiagnose nested
14765         quotes.
14766
14767         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC):
14768         Fix some typos -- s/_LT_AC_TAGVAR/_LT_TAGVAR/g.
14769
14770 2005-02-24  Peter O'Gorman  <peter@pogma.com>
14771
14772         * m4/libtool.m4 (_LT_LINKER_SHLIBS): The Portland group's
14773         compiler does not pass --whole-archive. Move gnu ld check for
14774         the flag to the top so it can be overridden.
14775         (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC): Unset
14776         whole_archive_flag_spec for the portland group's c++ compiler
14777         too.
14778         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
14779
14780 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
14781
14782         * libltdl/Makefile.am (install-data-local): Don't forget about
14783         $(DESTDIR).
14784         * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14785
14786 2005-02-23  Gary V. Vaughan  <gary@gnu.org>
14787
14788         Preserving the installed timestamps for libltdl sources from
14789         `libtoolize --ltdl --copy' is pointless if they are not preserved
14790         from the libtool source tree at install time:
14791
14792         * libltdl/Makefile.am, libltdl/loaders/Makefile.am
14793         (nobase_ltdldata_DATA): Renamed to...
14794         (ltdldatafiles): ...this.
14795         (install-data-local): New rule to install libltdl tree with tar to
14796         preserve timestamps.
14797
14798 2005-02-23  Christoph Egger  <Christoph_Egger@gmx.de> (tiny change)
14799
14800         * config/ltmain.m4sh (func_mode_link): Add -pthread like flags to
14801         inherited_linker_flags.
14802
14803 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
14804
14805         * libtoolize.m4sh (func_copy_cb): self.leg->shoot_off() :-/
14806         Let's not redirect stdout to null when sending tar output to a
14807         pipe.
14808
14809 2005-02-22  Gary V. Vaughan  <gary@gnu.org>
14810
14811         Using `libtoolize --copy --ltdl' was not preserving timestamps, so
14812         parts of the autoconf bootstrap would be rerun spuriously after
14813         the files had been copied into the source tree:
14814
14815         * libtoolize.m4sh (TAR): New default tar command.
14816         (func_copy_cb): Move the core copying internals to here, using
14817         $TAR to transfer files if possible when --copy was specified.
14818         (func_copy): Adjust to call func_copy_cb.
14819         * TODO: Remember to refactor this fix in due course.
14820         Reported by Jeff Squyres <jsquyres@lam-mpi.org>
14821
14822 2005-02-21  Peter O'Gorman  <peter@pogma.com>
14823
14824         * config/ltmain.m4sh (func_extract_archives) [darwin]: This didn't
14825         actually work on a real fat archive, should do now.
14826         * tests/functests.at [darwin]: remove darwin fat tests which
14827         did not actually work.
14828
14829 2005-02-07  Peter O'Gorman  <peter@pogma.com>
14830
14831         * config/ltmain.m4sh: Add -pthread like flags when linking
14832         executables too.
14833         Reported by Andreas Schwab <schwab@suse.de>
14834
14835 2005-02-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14836
14837         * config/ltmain.m4sh (func_mode_link): Allow five digits in
14838         version-info.
14839
14840         * NEWS: s/Linux/GNU &/.
14841
14842 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14843
14844         * tests/Makefile.am, tests/testsuite.at, tests/stresstest.at:
14845         New test.  Stresses several combinations of link flags and
14846         path specifications.  Uses several data types to test linkage
14847         against symbols in all kinds of (e.g., ELF) sections.
14848
14849 2005-02-03  Reid Spencer  <reid@x10sys.com>,
14850             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14851
14852         * config/ltmain.m4sh (func_generate_dlsyms): Fix broken subdir
14853         path computation, exposed by using `-dlopen self'.  Fix broken
14854         sed script exposed by additionally using `-export-symbols FILE'.
14855
14856 2005-02-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14857
14858         * THANKS: Update.
14859
14860         * THANKS: Update.
14861
14862 2005-02-03  Peter O'Gorman  <peter@pogma.com>
14863
14864         * config/ltmain.m4sh [darwin]: Don't add installed libs to
14865         temp_rpath when building executables on darwin, or other systems
14866         which use hardcode_automatic. It may break our wrapper scripts.
14867
14868 2005-02-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14869
14870         * config/getopt.m4sh (func_version, func_usage, func_help):
14871         Exit with nonzero status on write failures.
14872         * config/ltmain.m4sh (func_mode_help, func_config, func_features):
14873         Ditto.
14874
14875         * tests/sh.test: Check for preferred function definition layout.
14876
14877 2005-02-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14878
14879         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
14880         [pw32, freebsd3.[01], freebsdelf3.[01]]:  Fix [] quoting.  Should
14881         fix various spurious failures.
14882         (_LT_LINKER_SHLIBS) [linux with GNU ld < 2.11, aix4.[012]*]:
14883         Ditto.
14884         (_LT_LANG_CXX_CONFIG) [aix4.[012]*, freebsd[12], solaris2.[0-5]]:
14885         Ditto.
14886         (_LT_LANG_GCJ_CONFIG): Ditto.
14887
14888         * tests/Makefile.am: Add `atconfig' to DISTCLEANFILES.
14889
14890         * clcommit.m4sh: Test whether the shell understands `read -r'.
14891         Use as `$read_r' if available, so `\' is preserved in commit
14892         notices.
14893
14894         * HACKING (Editing `.m4sh' Files): Document preferred function
14895         header layout.
14896         * config/ltmain.m4sh (func_win32_libid, func_infer_tag)
14897         (func_generate_dlsyms, func_extract_an_archive)
14898         (func_extract_archives): Adjust to fit.
14899
14900 2005-01-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14901
14902         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unicos 9 sed rejects
14903         empty parentheses as in 's/x\(\)/\1/'.
14904         (_LT_COMPILER_PIC) [unicos*]: wl=-Wl,.
14905         * tests/sh.test: Not all sed's like '/.*\n.*/' (Unicos 9 sed
14906         loops endlessly).
14907
14908         * tests/quote.test: Match link  quoting against `"$wl"', not
14909         `-Wl,'.
14910
14911         * tests/quote.test: Check for `--no-reexec' in $1 to avoid one
14912         reexec.
14913
14914         * m4/libtool.m4 (_LT_COMPILER_C_O): _LT_TAGDECL(lt_compiler_c_o),
14915         not _LT_DECL, since this is tag-dependent.
14916
14917         * config/ltmain.m4sh, m4/libtool.m4: Change `( cmd ) 2>/dev/null'
14918         to  `{ cmd; } 2>/dev/null', when cmd has no side effects and might
14919         be a builtin.  Note that it is unspecified whether cmd will run
14920         within a subshell (e.g. Bourne shells) or within the current shell
14921         (most modern shells).
14922
14923 2005-01-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14924
14925         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [linux]:
14926         Update for Intel Compiler icc/icpc/ifort: add -i_dynamic and
14927         -nofor_main, if necessary.  Simplify logic somewhat.
14928
14929 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14930
14931         * tests/Makefile.am: also re-export CPP, CXXCPP, and the value of
14932         SHELL as CONFIG_SHELL.
14933         Reported by Heinz Salzmann <heinz.salzmann@micronas.com>.
14934
14935 2005-01-26  Craig Dooley  <xlnxminusx@gmail.com>,
14936             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14937
14938         * NEWS, m4/libtool.m4, config/ltmain.m4sh [dragonfly]:
14939         Add support for DragonFly.
14940
14941 2005-01-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14942
14943         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Work around pdksh
14944         positional parameter expansion bug.
14945
14946 2005-01-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14947
14948         * config/ltmain.m4sh: Fix endless loop in cmdline parsing.
14949
14950 2005-01-25  Albert Chin-A-Young  <china@thewrittenword.com>
14951
14952         * config/ltmain.m4sh (func_mode_link) [irix]: Preserve processor
14953         option for SGI Compiler (-r[0-9][0-9]*).
14954
14955 2005-01-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14956
14957         * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Define Bourne and XSI
14958         variants of new function func_stripname for stripping literal
14959         prefixes and suffixes.
14960         * config/ltmain.m4sh (all over): Use func_stripname.
14961
14962         * tests/defs.m4sh: Extract $build from $LIBTOOL.
14963         (func_configure): Pass --host if $host != $build.
14964         (func_exec): Try executing cross-compiled binaries (e.g. i686 ->
14965         i386), but SKIP rather than FAIL.
14966         * tests/depdemo-relink.test: Do not try to access possibly non-
14967         existent files.  SKIP rather than FAIL or PASS falsely when
14968         cross-compiling.
14969
14970         * m4/libtool.m4 (_LT_SETUP) [mingw, cygwin, pw32, os2]:
14971         Add _LT_DECLs for host_os, build_alias, build and build_os.
14972         host_os and build were used in a few occasions in ltmain.m4sh
14973         and affect above-mentioned systems, the others are added for
14974         symmetry and in order to be able to detect cross-compiling.
14975
14976 2005-01-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14977
14978         * libltdl/Makefile.am: Add $(AM_LDFLAGS) to all per-target
14979         variables *_LDFLAGS as per CVS Automake semantic change.
14980
14981 2005-01-16  Peter O'Gorman  <peter@pogma.com>
14982
14983         * config/ltmain.m4sh (func_mode_link): Don't pass through
14984         compiler-like thread flags when using $LD to do the linking.
14985         Use compiler_flags instead.
14986         Reported by Mark_Andrews@isc.org.
14987
14988         * m4/libtool.m4 (LT_CMD_MAX_LEN) [osf]: On Tru64 there could
14989         be a kernel panic when testing the maximum command line length
14990         if exec_disable_arg_limit=1. Don't do the tests to figure it
14991         out on *-osf*.
14992         Reported by Dr. Hans Ekkehard Plesser
14993         <hans.ekkehard.plesser@umb.no>
14994
14995 2005-01-14  Guido Draheim  <guidod-2003-@gmx.de>  (tiny change)
14996
14997         * m4/libtool.m4 (AC_PROG_SED): Don't break test loop early.
14998
14999 2005-01-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15000
15001         * TODO: Update.
15002
15003         * libltdl/ltdl.c: Whitespace cleanup.
15004
15005         * config/ltmain.m4sh: New option `--verbose'/`-v' to enable
15006         override of `--silent'.  Verbose is the default behavior.
15007         * doc/libtool.texi (Invoking libtool): Document it.
15008
15009         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: While "parsing"
15010         /etc/ld.so.conf, skip comments.
15011         Reported by Jens Elkner <elkner@linofee.org>.
15012
15013 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15014
15015         * libltdl/libltdl/lt__glibc.h: Move all exported slist
15016         symbols into the lt__* namespace.
15017         * libltdl/libltdl/lt__private.h, libltdl/libltdl/slist.h:
15018         Adjust includes.
15019
15020 2005-01-10  Peter O'Gorman  <peter@pogma.com>
15021
15022         * config/ltmain.m4sh (func_mode_link): Fix
15023         inherited_linker_flags so it puts it on the link line when
15024         linking shared libraries as well as when linking executables.
15025         * tests/inherited_flags.at: test inherited_linker_flags.
15026         * tests/Makefile.am: Add test.
15027         * tests/testsuite.at: Add test.
15028         Reported by: Albert Chin-A-Young <china@thewrittenword.com>
15029
15030 2005-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15031
15032         * tests/sh.test: After `set dummy [...]', check for `shift'
15033         within the same and following line.
15034         * config/ltmain.m4sh (func_enable_tag, func_mode_install)
15035         (func_mode_link): Sprinkle `shift's all over to conform to this.
15036
15037 2005-01-09  Gary V. Vaughan  <gary@gnu.org>
15038
15039         * HACKING (Editing 'ChangeLog'): Follow the GCS with respect to
15040         attributions, and mention how to handle tiny changes.
15041         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
15042
15043         * ChangeLog.2004: Trim 2005 entries.
15044         * ChangeLog: Add missing entries.
15045
15046 2005-01-08  Gary V. Vaughan  <gary@gnu.org>
15047
15048         * ChangeLog: Move 2004 change logs from here...
15049         * ChangeLog.2004: ...to here.
15050
15051         * m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
15052         m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4: RMS says,
15053         'I think the [license of autoconf macro files] should be:
15054         # This file is free software; the Free Software Foundation
15055         # gives unlimited permission to copy and/or distribute it,
15056         # with or without modifications, as long as this notice is
15057         # preserved.'.
15058
15059         * ChangeLog: Reformatting.
15060         * HACKING: Fix section numbering.
15061         (Editing 'ChangeLog'): New notes on ChangeLog entry format.
15062
15063 2005-01-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15064
15065         * tests/am-subdir.at tests/testsuite.at (AT_BOOTSTRAP,
15066         AT_LIBTOOLIZE, AT_CHECK_LIBTOOLIZE): Rename to ...
15067         (LT_AT_BOOTSTRAP, LT_AT_LIBTOOLIZE, LT_AT_CHECK_LIBTOOLIZE):
15068         ...and make use of new names.
15069
15070 2004-12-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15071
15072         * config/getopt.m4sh (func_version, func_usage, func_help):
15073         Use `$SED -n' instead of `$SED RANGE {..}; d' as AIX sed cannot
15074         handle the latter.
15075         (func_help): start autoconf and automake in subshells to avoid
15076         error messages from ash or Bourne shell if not available.
15077
15078 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15079
15080         * config/general.m4sh (func_quote_for_eval): Move backslash to
15081         beginning of character class, to work around old Bash bug.
15082         (func_quote_for_expand): Also test to avoid unnecessary fork.
15083
15084 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
15085             Gary V. Vaughan <gary@gnu.org>
15086
15087         * Makefile.am, bootstrap, clcommit.m4sh, libtoolize.m4sh,
15088         config/ltmain.m4sh: Replace `set --' with `set dummy [...]; shift'
15089         for portability.
15090         * tests/sh.test: Test for this.
15091
15092 2004-12-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15093
15094         * libtoolize.m4sh, config/ltmain.m4sh (most functions): New
15095         variable $opt_debug is either `:' or `set -x' depending on
15096         --debug.  Execute at most function entries to cater for ksh which
15097         resets `-x'.
15098         * tests/defs.m4sh: Ditto for VERBOSE=debug.
15099
15100         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
15101         _LT_TAGVAR missing for `fix_srcfile_path'.
15102         [sysv4, sysv5]: _LT_TAGVAR missing for
15103         `export_dynamic_flag_spec'.
15104
15105         * doc/libtool.texi (all over): Use @option and @command.
15106         Some more minor formatting updates, typos.
15107
15108         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix variable quoting;
15109         allows lt_ECHO to match --fallback-echo again.
15110
15111         * config/ltmain.m4sh (func_extract_archives): Not all shells grok
15112         `read -r' (unnecessary in this case).
15113         Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
15114
15115         * config/general.m4sh: New variable quote_scanset...
15116         (func_quote_for_eval, func_quote_for_expand): ...use it to work
15117         around SunOS ksh `case' backslash-escaping bug: protect character
15118         class by variable expansion.
15119         Reported by Alexander Kurz <alexander.kurz@qsc.de>.
15120
15121         * tests/quote.test: Restart under the correct shell (the one
15122         $ECHO was computed for).
15123
15124 2004-12-21  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15125
15126         * libltdl/lt__dirent.c: Include lt__private.h.
15127         * libltdl/libltdl/lt__private.h: Include lt__strl.h.
15128
15129 2004-12-20  Peter O'Gorman  <peter@pogma.com>
15130
15131         * config/ltmain.m4sh (func_extract_archives)
15132         (func_extract_an_archive): On darwin, uniq can not take the flags
15133         -cd together, thanks to Ralf for the fix, also ar does not accept
15134         N, so we use the fact that ar x libfoo.a foo.o will always extract
15135         the first foo.o in the archive and we then delete foo.o from the
15136         archive, which will also delete only the first foo.o, then rinse
15137         and repeat. Also add markers for the testuite.
15138         * m4/libtool.m4 (_LT_CONFIG): Add a marker so that we can use a
15139         sed expression to find the shell functions in libtool.
15140         * tests/functests.at: Test this feature.
15141         * tests/testsuite.at: Add the test.
15142         * tests/Makefile.am: Add the test.
15143
15144 2004-12-20  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15145
15146         * libtoolize.m4sh: Install `install-sh' as well, needed for
15147         configure.
15148         * Makefile.am, Makefile.maint: Install, update it.
15149         * NEWS, doc/libtool.texi (Distributing): Document it.
15150         Reported by Ross Boylan <ross@biostat.ucsf.edu>.
15151
15152         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Add '${wl}-z
15153         ${wl}text' to archive_cmds and archive_expsyms_cmds.  I.e., do not
15154         allow nopic in shared libraries.
15155
15156         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Change
15157         no_undefined_flag back to ' -z defs'.  Problems with linking
15158         against libgcc.a will have to be resolved differently.
15159
15160         * tests/demo-nopic.test [solaris, sunos]: Skip test.
15161
15162 2004-12-18  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15163
15164         * libtool.m4 [linux] (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG):
15165         Match icpc* and ecpc* (ia64 version of icpc) instead of only icpc.
15166
15167         * libltdl/lt__dirent.c (opendir) [mingw]: Fix write of constant
15168         strings past end of buffer.
15169         (opendir, readdir): Fix read past end of buffer.
15170
15171 2004-12-17  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15172
15173         * HACKING: Update list of non-Libtool-owned files.
15174
15175 2004-12-17  Akim Demaille <akim@epita.fr>
15176
15177         * libtoolize.m4sh (func_copy_all_from_path): Remove spurious eval.
15178
15179 2004-12-16  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15180
15181         * libltdl/ltdl.c (trim): Return error rather than do bogus
15182         null pointer arithmetic when parsing a malformed .la file.
15183
15184 2004-12-13  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15185
15186         * libltdl/lt__strl.c, libltdl/libltdl/lt__strl.h: New files to
15187         emulate strlcat and strlcpy, which support size-bounded string
15188         copying and concatenation for improved security.
15189         * libltdl/Makefile.am: Optionally build source files
15190         libltdl/lt__strl.c and libltdl/libltdl/lt__strl.h.
15191         * m4/ltdl.m4 (LTDL_INIT): Add checks for strlcat and strlcpy.
15192
15193 2004-12-13  Albert Chin-A-Young  <china@thewrittenword.com>
15194
15195         * libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
15196         Append -G to link command-line on AIX to honor -brtl on
15197         command-line (runtime linking). Already done for IBM C/C++
15198         compilers.
15199
15200 2004-12-12  Patrick Welche <prlw1@newn.cam.ac.uk>
15201
15202         * configure.ac: Fix aclocaldir to use ${datadir}, not ${prefix}.
15203         Necessary for removal of old libtool.m4 files.
15204
15205 2004-12-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15206
15207         * config/ltmain.m4sh (func_extract_archive): Send stderr of $NM
15208         to /dev/null.
15209         Reported by Martin Waitz <tali@admingilde.org>.
15210
15211 2004-12-09  Albert Chin-A-Young  <china@thewrittenword.com>
15212
15213         * config/ltmain.m4sh: Preserve -model [arg] option, used
15214         with the Tru64 UNIX C++ compiler. This option selects the
15215         layout of C++ classes, name mangling, and exception handling.
15216
15217 2004-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15218
15219         * config/ltmain.m4sh (func_mode_finish) [solaris]: Fix [] escaping
15220         bug.
15221
15222         * config/ltmain.m4sh (all over the map): Make use of func_basename
15223         and func_dirname in most occasions.
15224
15225         * m4/libtool.m4 (_LT_CHECK_XSI_SHELL, _LT_PROG_XSI_SHELLFNS): New
15226         macros to detect at `configure' time whether the shell supports
15227         some XSI extensions and to copy appropriate versions of new shell
15228         functions into `libtool' through `config.status'.  Copied
15229         functions are Bourne and XSI variants of func_basename,
15230         func_dirname (a variant of `dirname' suitable for libtool).
15231         (_LT_SETUP): Require _LT_CHECK_XSI_SHELL.
15232         (_LT_CONFIG):  Use _LT_PROG_XSI_SHELLFNS to insert into `libtool'
15233         at marker.
15234
15235         * config/ltmain.m4sh: Set marker for insertion of shell functions.
15236
15237         * config/general.m4sh (func_quote_for_eval): Only fork if the
15238         substitution matches.
15239
15240 2004-12-03  Gary V. Vaughan  <gary@gnu.org>
15241
15242         * TODO: Paste Peter's summary of the TODO thread starting at
15243         http://lists.gnu.org/archive/html/libtool/2004-11/msg00130.html.
15244
15245 2004-12-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15246
15247         * config/ltmain.m4sh: Remove code which is no longer needed
15248         now that temp_rpath only contains fully-qualified elements.
15249
15250 2004-11-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15251
15252         * config/general.m4sh: basename sed-subst is anchored and thus
15253         does not need the `g' flag.
15254         (func_quote_for_eval): Return both the possibly double-quoted
15255         backslashified as well as only the backslashified argument.
15256         * config/ltmain.m4sh (func_mode_link): Use both return values,
15257         to save another sed_quote_subst application per cmdline arg.
15258
15259 2004-11-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15260
15261         * config/ltmain.m4sh (func_lalib_p): Update function
15262         description.
15263         (func_lalib_unsafe_p): New function with same functionality but
15264         written without forks; this function is safe to use for cases
15265         where the argument either does not exist or is required to be a
15266         lalib for correct operation.
15267         * NEWS: Mention the fact that stdin is not to be used.
15268         * config/ltmain.m4sh (func_mode_execute, func_mode_install)
15269         (func_mode_link): Use func_lalib_unsafe_p where appropriate.
15270         (func_mode_execute): For the program wrapper, use
15271         func_ltwrapper_p instead of func_lalib_p.
15272
15273         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Treat linux-dietlibc with
15274         the `diet' compiler wrapper (as opposed to the `diet-dyn' wrapper)
15275         as a static-only platform.
15276         * NEWS: Updated.
15277
15278         * libltdl/ltdl.c (trim): Use memcpy instead of strncpy here, to
15279         avoid problems with non-conforming strncpy.  This is safe here.
15280
15281         * m4/ltdl.m4 (LT_LIB_DLLOAD): Define HAVE_LIBDLLOADER if we
15282         have a dlloader to preload.
15283         * libltdl/ltdl.c (lt_dlinit): Only preload if HAVE_LIBDLLOADER, only
15284         declare preloaded_symbols then.  Fixes libltdl on static platforms.
15285         * NEWS: Updated.
15286
15287 2004-11-29  Gary V. Vaughan  <gary@gnu.org>
15288
15289         Add a search path option to libtoolize so that we can run it from
15290         the testsuite without pulling in the last installed macros and
15291         ltdl sources:
15292
15293         * libtoolize.m4sh:  Add a -I option to change libtoolize's search
15294         path for macro files, and libltdl master sources.
15295         (pkgvdatadir, pkgvmacrodir): Renamed...
15296         (pkgvdatadirs, pkgvmacrodirs): ...as they can now contain a ':'
15297         delimited list of directories.  Adjust all callers.
15298         (func_copy_all_from_path): New function to search a ':' delimited
15299         search path for a directory to copy.
15300         (func_serial_update, func_ltmain_update, func_config_update): New
15301         first parameter is a filename to search for.  srcdir parameter can
15302         now be a ':' delimited search path.  Adjust all callers.
15303         (func_copy_some_files): Ditto.
15304         Put srcfile_spec first in parameter list for consistency with
15305         other functions.  Adjust all callers.
15306         (func_copy_cb): func_copy adapter function to call func_copy
15307         correctly from func_copy_some_files.
15308         (func_filename_path_search): Return the full path to the first
15309         occurence of a named file found in a list of directories.
15310         * tests/testsuite.at (LIBTOOLIZE): Wrap exported LIBTOOLIZE
15311         initialisation in PREPARE_TESTS diversion to stop it being
15312         discarded when testsuite is generated.
15313         (AT_LIBTOOLIZE): Factor out libtoolize calls,
15314         and set search path to find macros and libltdl source files from
15315         the source tree.
15316         (AT_CHECK_LIBTOOLIZE): Test it.
15317         (AT_BOOTSTRAP): Adjust.  Split out call to make.
15318         * tests/am-subdir.at: Call make explicitly.
15319         (Makefile.am): Fix typo in ACLOCAL_AMFLAGS,
15320
15321 2004-11-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15322
15323         * config/ltmain.m4sh (func_mode_link): $dlsymsobj is really
15324         $symfileobj, bug exposed only in the static preloading case
15325         (symfileobj is created, but not linked into output).
15326
15327         * tests/demo-relink.test, tests/depdemo-relink.test: SKIP, don't
15328         FAIL if no shared libs available in demo/.  Do not try to access
15329         nonexistent files.
15330
15331         * libltdl/loaders/loadlibrary.c: Remove unneeded
15332         file-static variable.
15333
15334 2004-11-27  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15335
15336         * config/ltmain.m4sh: Add fully-qualified paths to temp_rpath
15337         rather than unqualified paths in order to avoid possible errors
15338         when computing the fully-qualified path later.
15339
15340 2004-11-24  Jeff Squyres  <jsquyres@lam-mpi.org>
15341
15342         * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
15343         (_LT_LANG_CXX_CONFIG) [linux]: Support for Portland Group (aka
15344         "pgi") compilers.
15345         * NEWS, THANKS: Updated.
15346
15347 2004-11-24  Gary V. Vaughan  <gary@gnu.org>
15348
15349         * Makefile.am: Move Autotest rules from here...
15350         * tests/Makefile.am: ...to here.
15351         * bootstrap: Adjust.  Also, create temporary Makefile from
15352         tests/Makefile.am so that bootstrap can create the Autotest
15353         testsuite.
15354
15355 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
15356
15357         If the user's login shell is something crazy like, oooh,
15358         /bin/tcsh, trying to execute bourne shell helper scripts with
15359         the `$SHELL /path/to/helper $helper_flags' idiom incase the
15360         execute bits were lost by say, eeer, cvs, is gonna blow up in
15361         our faces.  This changeset tries to save these people from
15362         their shells^H^H^H^H^H^H^H^H^Hmselves :->
15363
15364         * tests/defs.m4sh (SHELL): Move definition from here...
15365         * config/general.m4sh (SHELL): ...to here.
15366
15367 2004-11-23  Gary V. Vaughan  <gary@gnu.org>
15368
15369         The ltdl.h header is the published interface to libltdl, and
15370         is thus not installed to $prefix/include/libltdl.  It has always
15371         been used with `#include <ltdl.h>', so move just that one file
15372         back to where it was before:
15373
15374         * libltdl/libltdl/ltdl.h: Moved from here...
15375         * libltdl/ltdl.h: ...to here.
15376         * libltdl/Makefile.am: Adjust.
15377
15378 2004-11-23  Peter O'Gorman  <peter@pogma.com>
15379
15380         Do not require that libtoolize --ltdl=/some/path end in libltdl.
15381         Move most libltdl headers to libltdl/libltdl to allow
15382         `#include <libltdl/ltdl.h>' to always work:
15383
15384         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for includes
15385         in the new location.
15386         * libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
15387         libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
15388         libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
15389         libltdl/libltdl/lt_system.h, libltdl/libltdl/ltdl.h,
15390         libltdl/libltdl/slist.h: Added files, moved from libtdl/.
15391         * libltdl/lt__alloc.h, libltdl/lt__dirent.h, libltdl/lt__glibc.h,
15392         libltdl/lt__private.h, libltdl/lt_dlloader.h, libltdl/lt_error.h,
15393         libltdl/lt_system.h, libltdl/ltdl.h, libltdl/slist.h: Removed, moved
15394         to libltdl/libltdl.
15395
15396 2004-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15397
15398         * doc/libtool.texi (LT_INIT): s/libtool 1.6/libtool 2.0/.
15399         (Invoking libtoolize): Fix typo.
15400
15401 2004-11-22  Gary V. Vaughan  <gary@gnu.org>
15402
15403         * config/ltmain.m4sh (func_mode_install): Now that func_mktempdir
15404         has been improved, the default directory template is perfectly
15405         fine.
15406
15407         * doc/libtool.texi (Invoking libtoolize): Improve documentation
15408         for use of ACLOCAL_AMFLAGS and AC_CONFIG_MACRO_DIR.
15409
15410 2004-11-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15411
15412         * m4/libtool.m4 (_LT_TAG_COMPILER): Document that with_gcc is
15413         tag-dependent.
15414
15415         * m4/libtool.m4, tests/demo-nopic.test: Undo bogus commit.
15416
15417         * config/ltmain.m4sh (func_mode_link), tests/objectlist.test:
15418         Make sure the argument to `-objectlist' may contain spaces.
15419
15420 2004-11-19  Gary V. Vaughan  <gary@gnu.org>
15421
15422         * config/m4general.m4sh, config/mailnotify.m4sh,
15423         clcommit.m4sh: Updated from cvs-utils--tla--1.0 to allow
15424         parallel commits, and use safer tmpfiles.
15425
15426 2004-11-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15427
15428         * doc/libtool.texi (Libltdl interface): Typos.
15429
15430         * doc/libtool.texi (Libltdl interface): Document public macros
15431         LT_PATHSEP_CHAR, LT_DIRSEP_CHAR, use in path descriptions.
15432
15433 2004-11-18  Daniel Reed  <djr@redhat.com>
15434
15435         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: Interpret
15436         `include' statements in toplevel ld.so.conf file.
15437
15438 2004-11-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15439
15440         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
15441         tag-protect setting of ld_shlibs.
15442
15443 2004-11-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15444
15445         * doc/libtool.texi (Libltdl interface): The path separator
15446         is system-dependent.
15447
15448         * doc/libtool.texi (Linking static libraries): Typo.
15449
15450         * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
15451         [aix4/aix5 !ia64]: Set whole_archive_flag_spec to '$convenience'
15452         so convenience libs are really added to the link cmdline.
15453
15454 2004-11-17  Mats Rynge  <rynge@isi.edu>
15455
15456         * libtool.m4 [linux]: Use only the CC basename in case statment
15457         when checking for icc/ecc.  Allows for setting CC to the full path
15458         to the compiler.
15459
15460         * libtool.m4 [solaris]: Added missing 'with linker' flags to
15461         -z allextract ... -z defaultextract flags
15462
15463 2004-11-14  Gary V. Vaughan  <gary@gnu.org>
15464
15465         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Typo: s/--rpath/-rpath/g.
15466         (_LT_LANG_CXX_CONFIG): Ditto.
15467
15468         * configure.ac (APIVERSION): New substituted variable.
15469         (pkgvdatadir): Ditto.  Versioned data directory.
15470         (pkgvmacrodir): Ditto.  Versioned aclocal directory.
15471         (LN): New check for LN command.
15472         * Makefile.am (aclocal_DATA): Replaced with...
15473         (pkgvmacro_DATA): ...this.
15474         (install-data-local): Remove old shared resources.
15475         (install-exec-hook): Make versioned links to executables.
15476         (uninstall-hook): Remove versioned files.
15477         * libltdl/Makefile.am (ltdldatadir): Redefine in terms of
15478         pkgvdatadir.
15479         * libltdl/loaders/Makefile.am (ltdldatadir): Ditto.
15480         * libtoolize.m4sh: Copy macro files from versioned macro directory
15481         instead of shared aclocal directory.
15482         * doc/libtool.texi: Document it.
15483         * NEWS: Updated.
15484
15485 2004-11-10  Gary V. Vaughan  <gary@gnu.org>
15486
15487         From James Henstridge <james@jamesh.id.au>:
15488         * m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4: Added commented out
15489         empty macro definitions to match each AU_DEFUN to help aclocal
15490         from automake-1.4 regexps find the right libtool macro files.
15491
15492 2004-11-10  James E Wilson  <wilson@specifixinc.com>,
15493             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15494
15495         * config/ltmain.m4sh (func_mode_link), tests/Makefile.am,
15496         Fix error message with `-objectlist' file that does not exist.
15497         * tests/objectlist.test:  New test for this.
15498
15499         * Makefile.am: config/ltmain.sh is generated by
15500         config/ltmain.m4sh.
15501
15502 2004-11-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15503
15504         * doc/libtool.texi (Compile mode, Link mode,
15505         Libltdl interface, Test descriptions, libtool script
15506         contents): Some quote cleanup, more use of texinfo types.
15507
15508         * doc/libtool.texi (libtool script contents):
15509         echo is now ECHO; mention argument restriction.
15510
15511         * doc/libtool.texi (Multiple dependencies): Minor rewording.
15512
15513         * doc/libtool.texi (User defined module data, References):
15514         indentation and word-wrap cleanup.
15515
15516         * doc/libtool.texi (all over): White space cleanup:
15517         two spaces at start of sentence, no TABs.
15518
15519 2004-11-09  Gary V. Vaughan  <gary@gnu.org>,
15520             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15521
15522         * doc/libtool.texi (libtool script contents): Fix description
15523         of need_lib_prefix.
15524
15525 2004-11-08  Peter Ekberg  <spam.protected>
15526
15527         * config/ltmain.m4sh (func_mode_link): forward thread
15528         related flags to dependent applications and libraries
15529         by adding them to `inherited_linker_flags'.
15530
15531 2004-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15532
15533         * m4/ltoptions.m4: Change all references of LT_LIBTOOL_INIT
15534         to LT_INIT.
15535
15536 2004-11-05  Peter Ekberg  <spam.protected>
15537
15538         * ltmain.m4sh (cwrappersource): clean up other warning on MinGW.
15539
15540 2004-11-04  Bernhard Fischer  <spam.protected>,
15541             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15542
15543         * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS), m4/ltoptions.m4
15544         (_LT_SET_OPTIONS), README, README.alpha: Typos.
15545
15546 2004-11-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15547
15548         * libltdl/ltdl.c (parse_dotla_file): Fix memleak.
15549
15550         * ltmain.m4sh (cwrappersource): Cast isalpha arguments correctly.
15551
15552 2004-11-03  Peter Ekberg  <spam.protected>
15553
15554         * ltmain.m4sh (cwrappersource): clean up warnings and
15555         #include errors on MinGW.
15556
15557 2004-11-01  Peter Ekberg  <spam.protected>
15558
15559         * config/ltmain.m4sh (cwrappersource): clean up warnings and
15560         #include errors.
15561
15562 2004-11-01  Peter Ekberg  <spam.protected>
15563
15564         Sometimes, a wrapper script is generated for an executable that,
15565         itself, does not link against an uninstalled library.  It appears
15566         that this can happen if you are building a project where:
15567
15568           (1) there is a library
15569           (2) there is an executable that does not, itself, link against
15570               that library
15571
15572         In this case, notinst_deplibs is empty, and when the wrapper
15573         script is loaded by libtool during ./libtool mode=install, there
15574         is a check for "is notinst_deplibs empty".  In this case, it is,
15575         so libtool reports an error.
15576
15577         I don't think it is wrong to have a wrapper script for an exe that
15578         *technically* doesn't need it.  But instead of checking for
15579         notinst_deplib nonempty as a proxy for "did wrapper script get
15580         sourced into my environment properly" a different var should be
15581         used.
15582
15583         * config/ltmain.m4sh (func_mode_install): set new variable
15584         `generated_by_libtool_version' in wrapper script when using
15585         libtool_install_magic.  When verifying that wrapper script was
15586         properly sourced, check that `generated_by_libtool_version' is
15587         non-empty, instead of using notinst_deplibs.
15588
15589 2004-11-01  Charles Wilson  <spam.protected>,
15590             Peter Ekberg  <spam.protected>
15591
15592         * config/ltmain.m4sh (func_mode_install): On Windows based hosts,
15593         ensure that import libraries don't get stripped.
15594         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): On Windows based hosts,
15595         use postinstall_cmds to strip DLL (not import lib!) when symbol
15596         stripped installation was requested.
15597
15598 2004-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15599
15600         * libltdl/ltdl.c (loader_init_callback): Back out broken cast.
15601
15602         * libltdl/ltdl.c (loader_init_callback, lt_dlexit): Add casts to
15603         target type.
15604
15605         * tests/defs.m4sh (func_exec): `shift'ing when there is nothing
15606         to shift is non-portable.
15607
15608 2004-10-28  Patrick Welche  <prlw1@newn.cam.ac.uk>,
15609             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15610
15611         * Makefile.am, Makefile.maint: Use path for dependencies built
15612         in the source tree, to cater for BSD make.
15613
15614 2004-10-24  Noah Misch  <noah@cs.caltech.edu>
15615
15616         * config/ltmain.m4sh (func_lalib_p, func_ltwrapper_p): New
15617         functions that abstract .la sanity checking.
15618         (func_mode_execute, func_mode_install, func_mode_link)
15619         (func_mode_uninstall): Use them.
15620
15621 2004-10-24  Gary V. Vaughan  <gary@gnu.org>
15622
15623         * config/ltmain.m4sh (opt_silent): Whether --silent was given.
15624         (run, show): Deleted.  All callers converted to opt_dry_run,
15625         opt_silent or calls to func_show_eval.
15626         * tests/mdemo-dryrun.test: Adjust.
15627
15628         * HACKING: Fix a typo in the gpg --verify instructions.
15629
15630         * Makefile.maint (cvs-dist): Generate signatures and directives
15631         for bz2 upload.
15632
15633 2004-10-23  Peter O'Gorman  <peter@pogma.com>
15634
15635         * config/ltmain.m4sh (func_mode_link): Make Gary's new tests
15636         pass. When the output wrapper script is not in the current
15637         directory, we can not use an rpath which is relative to the
15638         current directory. Use an absolute path instead.
15639
15640 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
15641
15642         * clcommit.m4sh: Add --rcfile option.
15643
15644         * clcommit.m4sh: Updated again, to support file list limited
15645         commits to CVS, and to fix another occurence of the bash bug
15646         that was preventing non-tla users from sending a commit mail.
15647
15648 2004-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15649
15650         * TODO, libltdl/lt_error.h, libltdl/ltdl.c, libltdl/ltdl.h:
15651         Undo accidental commit.
15652
15653         * Makefile.maint: Fix typo.
15654
15655 2004-10-22  Gary V. Vaughan  <gary@gnu.org>
15656
15657         * clcommit.m4sh, config/mailnotify.m4sh: Updated from
15658         cvs-utils--tla--1.0 to fix quoting of metachars in patch names.
15659
15660         * HACKING: Updated: `.in' files are now `.m4sh'; document some
15661         more coding standards for these files.
15662
15663         * config/general.m4sh (sed_double_backslash): Undo an
15664         over-optimisation.
15665
15666 2004-10-21  Gary V. Vaughan  <gary@gnu.org>
15667
15668         * AUTHORS: Reformatted to better reflect the current state of
15669         Libtool maintainership.
15670         * THANKS: Reformatted to give maintainers a quick way to look
15671         up who has supplied FSF paperwork.
15672
15673 2004-10-21  Noah Misch  <noah@cs.caltech.edu>,
15674             Gary V. Vaughan  <gary@gnu.org>
15675
15676         * config/general.m4sh (sed_double_backslash): Improve this sed
15677         expression to correct left anchored \$ input to
15678         double_quote_subst, as well as backslash escaped $ preceded by
15679         any odd-numbered amount of \ characters.
15680
15681 2004-10-20  Gary V. Vaughan  <gary@gnu.org>
15682
15683         * config/general.m4sh (sed_double_backslash): New sed expression
15684         to escape \$ properly in combination with double_quote_subst.
15685         (func_quote_for_eval): Four space indent margin for functions!
15686         (func_quote_for_expand): Use $sed_double_backslash.
15687         (func_show_eval): New function that echos an escaped but variable
15688         expanded command, and then evaluates it.
15689
15690 2004-10-20  Noah Misch  <noah@cs.caltech.edu>,
15691             Gary V. Vaughan  <gary@gnu.org>
15692
15693         * m4/libtool.m4 (sed_quote_subst): Remove superfluous backslashes
15694         from the match character set.
15695         (double_quote_subst): Ditto.
15696         * config/general.m4sh (sed_quote_subst): Ditto.
15697         (double_quote_subst): New variable, copied from
15698         m4/libtool.m4. Much the same as sed_quote_subst, but variable
15699         references are not quoted.
15700         (func_quote_for_eval): Given any $foo; $bar and
15701         $foo must be identical after the following commands:
15702             func_quote_for_eval "$foo"
15703             eval "bar=$func_quote_for_eval_result"
15704         (func_quote_for_expand): In a similar vein to to func_quote_for_eval,
15705         except that variable expansions are not protected when quoting the
15706         command for subsequent display.
15707         * config/ltmain.m4sh: Factor away use of $sed_quote_subst now that
15708         it has been subsumed into func_quote_for_eval.
15709         (func_mode_link): Instead of `2004-10-14 Peter O'Gorman' below,
15710         use func_quote_for_expand so that ${wl} is expanded properly in
15711         the $show expression.
15712
15713 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
15714
15715         * config/ltmain.m4sh (func_mode_finish): solaris-2.6 also has
15716         crle(1).
15717         Reported by Albert Chin-A-Young <china@thewrittenword.com>
15718
15719 2004-10-16  Gary V. Vaughan  <gary@gnu.org>
15720
15721         Add some new tests for Libtool's support of Automake
15722         subdir-objects builds.  This marks the beginning of a move to an
15723         Autotest driven test framework, which will eventually allow us to
15724         trim away many of the generated files in the current test demo
15725         subdirectories:
15726
15727         * configure.ac (AC_CONFIG_TESTDIR): Re-enable commented out
15728         Autotest macros.
15729         (AUTOTEST, M4SH): Use --language long hand.
15730         * bootstrap: Generate tests/testsuite, and by implication
15731         tests/package.m4.
15732         * Makefile.am (edit): Add substitutions needed to generate
15733         tests/package.m4 from bootstrap.
15734         (check-recursive): Add tests/testsuite.
15735         (TESTSUITE): The new Autotest testsuite target.
15736         (TESTSUITE_AT): The Autotest sources.
15737         (EXTRA_DIST): Distribute the generated testsuite and sources.
15738         (tests/package.m4): Use $(edit) to propagate package metadata to
15739         the new tests.
15740         (tests/testsuite): Build the testsuite.
15741         (tests/atconfig): How to regenerate the file.
15742         (check-local): Hook Autotest into `make check'.
15743         (installcheck-local): Run the testsuite on the installed tree.
15744         (clean-local): Tidy our file droppings.
15745         * tests/Makefile.am: Remove bitrotted code from Autotest
15746         experiments in Autoconf 2.52 era.  Updated the rest and moved into
15747         Makefile.am.
15748         * tests/testsuite.at: New container for Autotest test groups.
15749         * tests/am-subdir.at: New test group for compatibility with
15750         Automake's subdir-objects builds.  Currently holds two tests, one
15751         for a C project and another similar project in C++.
15752         * TODO: Add an entry to remind us that these new tests expose a
15753         bug in libtool.
15754         * NEWS: Updated.
15755
15756 2004-10-14  Peter O'Gorman  <peter@pogma.com>
15757
15758         * config/ltmain.m4sh: Revert most of my last commit, only eval
15759         \$show \"$cmds\", and only when building a library. I'm a wimp.
15760         Thanks Gary for pointing out errors in previous commit.
15761
15762 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
15763
15764         * config/ltmain.m4sh (func_mode_finish): Mention crle(1) on
15765         solaris 2.7 and higher in the finalisation notes.
15766         Reported by Kurt J. Lidl <lidl@pix.net>
15767
15768         * tests/cdemo-undef.test: New test for hosts that allow shared
15769         libraries with undefined symbols, but have no C++ compiler
15770         installed.
15771         * tests/Makefile.am (COMMON_TESTS): Add it.
15772
15773 2004-10-13  Peter O'Gorman  <peter@pogma.com>
15774
15775         * config/ltmain.m4sh: Make sure that we $show what we will $run,
15776         use eval $show if we do $run eval.
15777
15778 2004-10-13  Charles Wilson  <spam.protected>
15779
15780         * config/ltmain.m4sh: add foo/bin for every foo/lib
15781         in dllsearchpath when creating wrapper script.  Fixes
15782         depdemo-relink test failure.
15783
15784 2004-10-12  Charles Wilson  <spam.protected>
15785
15786         * config/ltmain.m4sh (func_mode_link): don't relink
15787         on cygwin/mingw; no need.  But do ensure that wrappers
15788         are created unless doing a purely static build.
15789
15790 2004-10-13  Gary V. Vaughan  <gary@gnu.org>
15791
15792         * tests/tagdemo-undef.test: New test for hosts that allow shared
15793         libraries with undefined symbols.
15794         * tests/Makefile.am (CXX_TESTS): Add it.
15795
15796 2004-10-11  Charles Wilson  <spam.protected>
15797
15798         * tests/link.test: Fix check for use of libnlsut.a under
15799         Cygwin.
15800
15801 2004-10-11  Noah Misch  <noah@cs.caltech.edu>
15802
15803         * tests/quote.test: Do not look for $preargs in the output,
15804         because libtool may change them.
15805
15806 2004-10-10  Charles Wilson  <spam.protected>
15807
15808         * config/ltmain.m4sh: Really don't require versions of GNU
15809         sed newer than 3.02 for Cygwin and MinGW, and don't break
15810         dryrun mode.
15811
15812 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15813
15814         * config/getopt.m4sh: Under MinGW, reported paths may include ':'
15815         so ':' should not be used as the sed delimiter.  Use '*' instead
15816         since it is very unlikely to appear in a path.
15817
15818 2004-10-10  Albert Chin-A-Young  <china@thewrittenword.com>
15819
15820         * config/ltmain.m4sh: Don't require versions of GNU sed newer than
15821         3.02 for Cygwin and MinGW.
15822
15823 2004-10-10  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15824
15825         * tests/pdemo-inst.test: Correction for mis-application of
15826         Charles Wilson's earlier patch.
15827
15828 2004-10-09  Gary V. Vaughan  <gary@gnu.org>
15829
15830         * m4/libtool.m4 (_LT_LANG_F77_CONFIG): Make sure the save and
15831         restore code for CC is nested at the same depth.
15832         (_LT_LANG_CXX_CONFIG): Ditto, but for several variables.
15833
15834 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15835
15836         Update to the latest commit and mailnotify scripts from
15837         gary@gnu.org--2004/cvs-utils--tla--1.0:
15838
15839         * commit, config/mailnotify: Removed.  Now built from...
15840         * clcommit.m4sh, config/mailnotify.m4sh: ...these new sources.
15841         * Makefile.maint (commit, config/mailnotify): How to build them.
15842         * bootstrap: If we have a checked out tree (i.e. clcommit.m4sh
15843         is present), then build them.
15844
15845 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15846
15847         Fix some issues that mangled the reexecution path to a script,
15848         and thus prevented it from finding itself:
15849
15850         * config/general.m4sh (progname): Don't actually change the name
15851         of the script if it begins with a `-', just prepend `./'.
15852         (progpath): Add a new clause that first searches the execution
15853         PATH, and then finally assumes this script is in the current
15854         working directory if $progname has no directory separators (e.g
15855         when invoked as `$SHELL progname').
15856
15857 2004-10-08  Gary V. Vaughan  <gary@gnu.org>
15858
15859         * config/general.m4sh (func_verbose): Work around a bash bug in
15860         shell functions.
15861
15862 2004-10-08  Charles Wilson  <cygwin@cwilson.fastmail.fm>
15863
15864         * tests/pdemo-inst.test: pdemo-inst should depend on pdemo-make.
15865         * config/ltmain.m4sh: Windows and Cygwin reserve the .lnk
15866         extension to represent shortcuts.  Use the extension ".lnkscript"
15867         rather than ".lnk" for the piecewise linking ld script in order to
15868         avoid the conflict.
15869
15870 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15871
15872         * libltdl/ltdl.c (lt_dlexit, lt_dlpath_insertdir): Fix memleaks,
15873         free user_search_path on lt_dlexit.
15874
15875 2004-10-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15876
15877         * tests/sh.test: Remove tests which fail on AS_SHELL_SANITIZE
15878         from autoconf >= 2.59.
15879
15880         * TODO: Remove item: no need for a libltdl without stdio.
15881
15882 2004-10-07  Gary V. Vaughan  <gary@gnu.org>
15883
15884         * tests/defs.m4sh (scripts): Actually scan the generated ltmain.sh
15885         for shell portability problems.
15886
15887         * m4/libtool.m4 (_LT_FORMAT_COMMENT): Shell meta-characters in
15888         _LT_DECL descriptions were not being escaped before injection into
15889         TAG CONFIG here documents in config.status.
15890
15891 2004-10-06  Peter O'Gorman  <peter@pogma.com>
15892
15893         * m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77): New macros to work
15894         around the deficiencies in AC_PROG_CXX and AC_PROG_F77.
15895         * configure.ac: Cleaned up, having moved the checks for compilers
15896         which do not exist to libtool.m4.
15897
15898 2004-10-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15899
15900         * libltdl/ltdl.c (try_dlopen): Move .la file parsing
15901         part.. (parse_dotla_file): ..here.  Adjust.
15902
15903         * libltdl/ltdl.c (load_deplibs, try_dlopen): Revert unnecessary casts
15904         to int from my patch from 2004-10-01.
15905
15906         * AUTHORS: Add myself.
15907
15908 2004-10-05  Peter O'Gorman  <peter@pogma.com>
15909
15910         * config/ltmain.m4sh [darwin]: Make the -dylib_file flag work on
15911         older darwins too. Reported by Christoph Egger.
15912
15913 2004-10-05  Gary V. Vaughan  <gary@gnu.org>
15914
15915         * configure.ac: Bumped version to 2.1a.
15916
15917 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
15918
15919         * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Don't confuse $ECHO
15920         with $lt_ECHO, or we always get a libtool with ECHO=echo, rather
15921         than testing for a mechanism that quotes \ properly.
15922         * NEWS: Updated.
15923
15924         * config/ltmain.m4sh: Need to include getopt.m4sh earlier so that
15925         progpath is set before it is called to --no-reexec.
15926         * NEWS: Updated.
15927
15928 2004-10-04  Gary V. Vaughan  <gary@gnu.org>
15929
15930         Without this change, the distributed libtool tarball has a
15931         dependency on autom4te.  There was some inconsistency in the
15932         filenames: now we have foo.m4sh -> m4sh -> foo.in -> configure
15933         -> foo[.sh].  Bootstrap runs the m4sh steps and the resulting .in
15934         files are distributed:
15935
15936         * tests/Makefile.am (EXTRA_DIST): Distribute defs.m4sh.
15937         * Makefile.am (EXTRA_DIST): Distribute libtoolize.m4sh.
15938         (libtoolize.in, libtoolize): Split into bootstrap and runtime
15939         stages.
15940         ($(top_srcdir)/tests/defs.in, $(top_srcdir)/tests/defs): Ditto.
15941         ($(top_srcdir)/config/ltmain.sh): Swap ltmain.m4sh and ltmain.in
15942         names.
15943         * bootstrap: Make libtoolize.in and tests/defs.in.
15944         * NEWS: Updated.
15945
15946 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15947
15948         * README, README.alpha: Update notes regarding available VERBOSE
15949         settings.
15950
15951 2004-10-03  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
15952
15953         * config/ltmain.in: Change $XSED to $Xsed to fix hang noticed
15954         under MinGW.
15955         * tests/defs.in: Support VERBOSE=debug to enable shell tracing
15956         while running tests.
15957
15958 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
15959
15960         * NEWS: Updated.
15961         * configure.ac: Bumped version to 1.9e.
15962
15963         GNU libtool 1.9d was released.
15964
15965         * configure.ac: Bumped version to 1.9d.
15966         * NEWS: Updated.
15967
15968         * libltdl/lt__alloc.h (lt__alloc_die): Declare with LT_SCOPE as
15969         per Ralf's original patch.
15970         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15971
15972         * libltdl/Makefile.am (libltdlc_la_LIBADD): Don't use
15973         libdlloader_la_OBJECTS, an undocumented Automake internal
15974         variable...
15975         (libltdlc_la_SOURCES): ...use libdlloader_la_SOURCES here
15976         instead.
15977         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15978
15979         * libltdl/argz_.h: Forgot to spell lt_system.h with just one `_'.
15980
15981         * libltdl/argz_.h: Forgot to include lt__system.h for LT_SCOPE
15982         definition.
15983
15984 2004-10-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>,
15985             Gary V. Vaughan  <gary@gnu.org>
15986
15987         * libltdl/lt__alloc.h: Declare exported functions with LT_SCOPE
15988         for mingw32.
15989         * libltdl/lt__dirent.h: Ditto.
15990         * libltdl/argz._h: Ditto.  Be careful about not requiring
15991         additional libltdl files when used outside of libltdl.
15992         * libltdl/slist.h: Ditto.
15993         * HACKING: Add a section on libltdl implementation layering.
15994
15995 2004-10-03  Gary V. Vaughan  <gary@gnu.org>
15996
15997         * tests/quote.test: echo is called ECHO now.  Make sure we extract
15998         the value of ECHO from the libtool script.
15999         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
16000
16001 2004-10-02  Gary V. Vaughan  <gary@gnu.org>
16002
16003         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7*]: Revert my
16004         hack from 2004-09-30 now that I've removed /lib/hello.la and the
16005         tests work properly for me again.
16006
16007 2004-10-02  Jim Tison  <jtison@us.ibm.com>
16008
16009         Initial support for s390x-ibm-tpf:
16010
16011         * m4/libtool.m4: Correct obvious spelling errors in remarks.
16012         (_LT_ENABLE_LOCK): Make s390x-ibm-tpf hosts adopt elf64_s390
16013         conventions.
16014         (_LT_SYS_DYNAMIC_LINKER): Set defaults for s390x-ibm-tpf host.
16015         (_LT_CHECK_MAGIC_METHOD): Skip all dependency checks for
16016         s390x-ibm-tpf hosts.
16017         (_LT_LINKER_SHLIBS): Make s390x-ibm-tpf hosts adopt GNU/Linux OS
16018         attributes.
16019         * NEWS: Updated.
16020
16021 2004-10-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16022
16023         * config/ltmain.in (func_mode_install): Need to set $tmpdir before
16024         using it.
16025
16026         * config/ltmain.in (func_mode_link): Fix quoting bug.  Fixes
16027         e.g. the quoting of the -export-symbols-regex argument in .la
16028         files' relink_command.
16029
16030         * libltdl/lt__alloc.c (lt__memdup): Allocation can fail, so we
16031         need to guard against null pointer dereference here.
16032         * libltdl/ltdl.c (lt_dlcaller_register): Ditto.
16033
16034         * libltdl/slist.c (slist_foreach): result was declared as
16035         inner variable, shadowing the actually returned value.
16036
16037         * libltdl/ltdl.c (load_deplibs, try_dlopen): Cast argument
16038         to isspace/isalnum to the correct range.  Also, cast to int to
16039         avoid compiler warnings.
16040
16041 2004-09-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16042
16043         * libltdl/ltdl.c (try_dlopen): Fix null pointer dereference in
16044         case the name given to lt_dlopen contains no extension.
16045
16046         * libltdl/lt_dlloader.c (lt_dlloader_remove), libltdl/ltdl.c
16047         (tryall_dlopen, lt_dlhandle_next): Show usage of function pointers.
16048
16049         * doc/libtool.texi (LT_INIT, Using libltdl)
16050         (Module loaders for libltdl, Multiple dependencies)
16051         (libtool script contents): Fix several typos (trivial change).
16052         Also, libltdl consists of more than two small files.
16053
16054 2004-09-30  Gary V. Vaughan  <gary@gnu.org>
16055
16056         * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7]: My Panther
16057         workstation doesn't hardcode the shared library path, although it
16058         used to, so this is more likely a function of the binutils and/or
16059         gcc I am using at the moment.  The hardcode value setting code for
16060         the configure script sucks at the moment though...
16061         * TODO: ...and needs to do a test compile instead of a table
16062         lookup before 2.0 final.
16063
16064         * m4/libtool.m4 (echo): Use ECHO throughout for consistency with
16065         config/ltmain.in.
16066         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16067
16068         * m4/libtool.m4 (rm): Use RM throughout for consistency with
16069         config/ltmain.in.
16070         Reported by Charles Wilson <cwilson@spam.protected>
16071
16072 2004-09-27  Peter O'Gorman  <peter@pogma.com>
16073
16074         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
16075         output during configure. (Really this time, honest)
16076
16077 2004-09-26  Albert Chin-A-Young  <china@thewrittenword.com>
16078
16079         * m4/libtool.m4 (_LT_LINKER_SHLIBS) [aix]: In archive_expsym_cmds,
16080         move -bnoentry linker option before $compiler_flags to honor any
16081         possible -e entries in LDFLAGS.
16082
16083 2004-09-25  Gary V. Vaughan  <gary@gnu.org>
16084
16085         * config/ltmain.in (func_mode_link): When linking an installed
16086         libtool library on the command line using -lfoo we need to find
16087         the library in the search paths and add it's dependency_libs to
16088         the link in the conv pass so that any libtool libs listed are
16089         correctly expanded in the link pass.
16090
16091 2004-09-24  Charles Wilson  <cwilson@spam.protected>
16092
16093         * libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Revert changeset from
16094         `2004-09-22  Charles Wilson  <cwilson@spam.protected>'.
16095
16096 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
16097
16098         * config/general.m4sh (Xsed): Set a default when not used from
16099         ltmain.in.
16100         (ECHO): Audit for (and correct!) uses of $ECHO with more than one
16101         argument, which breaks when ECHO='printf %s\n', and with possible
16102         `-' as first character of the argument, which breaks `print -r'
16103         and some implementations of `echo'.
16104         * config/ltmain.in, tests/defs.in, libtoolize.in (ECHO): Ditto.
16105         Reported by Albert Chin-A-Young <china@thewrittenword.com>
16106
16107 2004-09-24  Peter O'Gorman  <peter@pogma.com>
16108
16109         * m4/libtool.m4 (_LT_CMD_STRIPLIB) [darwin]: strip archives too.
16110
16111         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
16112         output during configure.
16113
16114 2004-09-24  Gary V. Vaughan  <gary@gnu.org>
16115
16116         * m4/libtool.m4 (_LT_DECL_EGREP): Only the newest CVS autoconf
16117         AC_SUBSTs for GREP.  Do our own here too to cater for release
16118         autoconfen.
16119
16120         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [openbsd3.3]: Set
16121         need_version to yes or no depending on the os release.
16122         Reported by Dalibor Topic <robilad@kaffe.org>
16123
16124 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
16125
16126         * tests/cdemo-conf.test, tests/cdemo-exec.test,
16127         tests/cdemo-make.test, tests/cdemo-shared.test,
16128         tests/cdemo-static.test, tests/demo-conf.test,
16129         tests/demo-deplibs.test, tests/demo-exec.test,
16130         tests/demo-hardcode.test, tests/demo-inst.test,
16131         tests/demo-make.test, tests/demo-nofast.test,
16132         tests/demo-noinst-link.test, tests/demo-nopic.test,
16133         tests/demo-pic.test, tests/demo-relink.test,
16134         tests/demo-shared.test, tests/demo-static.test,
16135         tests/demo-unst.test, tests/depdemo-conf.test,
16136         tests/depdemo-exec.test, tests/depdemo-inst.test,
16137         tests/depdemo-make.test, tests/depdemo-nofast.test,
16138         tests/depdemo-relink.test, tests/depdemo-shared.test,
16139         tests/depdemo-static.test, tests/depdemo-unst.test,
16140         tests/f77demo-conf.test, tests/f77demo-exec.test,
16141         tests/f77demo-make.test, tests/f77demo-shared.test,
16142         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
16143         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
16144         tests/mdemo-exec.test, tests/mdemo-inst.test,
16145         tests/mdemo-make.test, tests/mdemo-shared.test,
16146         tests/mdemo-static.test, tests/mdemo-unst.test,
16147         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
16148         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
16149         tests/pdemo-exec.test, tests/pdemo-inst.test,
16150         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
16151         tests/suffix.test, tests/tagdemo-conf.test,
16152         tests/tagdemo-exec.test, tests/tagdemo-make.test,
16153         tests/tagdemo-shared.test, tests/tagdemo-static.test,
16154         tests/tagtrace.test: POSIX `.' searches only in user's $PATH, so
16155         we must use `. ./defs' to source the common code.
16156         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
16157
16158         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Gah.  Merge error
16159         corrected.
16160
16161 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
16162
16163         Since defs can change (path to grep for example) when it is made
16164         for a different host, it can't be shipped.  That also means that
16165         defs will always be generated in the build tree, so each test case
16166         can have the srcdir discovery factored away into tests/defs.in:
16167
16168         * Makefile.am (EXTRA_DIST): s/defs/defs.in/g
16169         * tests/Makefile.am (defs): New rule to remake defs from the
16170         parent directory's Makefile.
16171         * tests/cdemo-conf.test, tests/cdemo-exec.test,
16172         tests/cdemo-make.test, tests/cdemo-shared.test,
16173         tests/cdemo-static.test, tests/demo-conf.test,
16174         tests/demo-deplibs.test, tests/demo-exec.test,
16175         tests/demo-hardcode.test, tests/demo-inst.test,
16176         tests/demo-make.test, tests/demo-nofast.test,
16177         tests/demo-noinst-link.test, tests/demo-nopic.test,
16178         tests/demo-pic.test, tests/demo-relink.test,
16179         tests/demo-shared.test, tests/demo-static.test,
16180         tests/demo-unst.test, tests/depdemo-conf.test,
16181         tests/depdemo-exec.test, tests/depdemo-inst.test,
16182         tests/depdemo-make.test, tests/depdemo-nofast.test,
16183         tests/depdemo-relink.test, tests/depdemo-shared.test,
16184         tests/depdemo-static.test, tests/depdemo-unst.test,
16185         tests/f77demo-conf.test, tests/f77demo-exec.test,
16186         tests/f77demo-make.test, tests/f77demo-shared.test,
16187         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
16188         tests/mdemo-conf.test, tests/mdemo-dryrun.test,
16189         tests/mdemo-exec.test, tests/mdemo-inst.test,
16190         tests/mdemo-make.test, tests/mdemo-shared.test,
16191         tests/mdemo-static.test, tests/mdemo-unst.test,
16192         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
16193         tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
16194         tests/pdemo-exec.test, tests/pdemo-inst.test,
16195         tests/pdemo-make.test, tests/quote.test, tests/sh.test,
16196         tests/suffix.test, tests/tagdemo-conf.test,
16197         tests/tagdemo-exec.test, tests/tagdemo-make.test,
16198         tests/tagdemo-shared.test, tests/tagdemo-static.test,
16199         tests/tagtrace.test: Removed srcdir discovery boilerplate...
16200         * tests/defs.in: ...and put it here.
16201
16202 2004-09-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16203
16204         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): move symcode calculation
16205         to correct place.
16206         * doc/libtool.texi (libtool script contents): update description
16207         of global_symbol_to_cdecl.
16208
16209 2004-09-23  Gary V. Vaughan  <gary@gnu.org>
16210
16211         * configure.ac (M4SH): AC_SUBST m4sh expander.
16212         * config/general.m4sh, config/getopt.m4sh: New files with factored
16213         out functionality from...
16214         * config/ltmain.in, libtoolize.in: ...here.  m4_include the shared
16215         code, and call AS_SHELL_SANITIZE.  Also quote all `[' and `]' to
16216         survive m4 run.
16217         (func_serial): No need to double up m4sh quotes after a `#'.
16218         (func_check_macros): Escape `dnl' to stop m4sh interpreting it as
16219         a macro.
16220         * tests/defs.in: New file expanded into tests/defs by autom4te.
16221         * m4/libtool.m4 (_LT_DECL_EGREP): Also require fgrep for the tests
16222         that use it.
16223         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Now built with
16224         M4SH.
16225         (libtoolize): Ditto.
16226         * bootstrap: Set M4SH for call to make.
16227         * HACKING: No need to sync to AS_SHELL_SANITIZE by hand any more.
16228
16229         * m4/libtool.m4: _LT_DECL uppercase ECHO.
16230         * config/ltmain.in: Use it throughout.
16231         (func_mkdir_p): Now matches the other implementations in
16232         tests/defs and libtoolize.in.
16233         * tests/sh.test: Updated to detect ECHO misuse.
16234
16235 2004-09-22  Gary V. Vaughan  <gary@gnu.org>
16236
16237         * config/ltmain.in (func_mode_link): Propagate a convenience
16238         library's dependency libs correctly when it is being linked into a
16239         libtool library.  Deplibs are now propagated whether libdir is set
16240         or not.
16241
16242 2004-09-22  Andreas Schwab  <schwab@suse.de>
16243
16244         The dlpreopen pass over libraries reverses the elements in the
16245         $deplibs list.  This causes problems when the link pass tries to
16246         find libraries when they are located in non-standard places
16247         denoted by -L options.  Due to the reversed order these -L options
16248         occur after the libraries that need them, and they are not found:
16249
16250         * config/ltmain.in: (Un)Reverse $deplibs list at the start of the
16251         link pass in lib mode.
16252
16253 2004-09-22  Charles Wilson  <cwilson@spam.protected>
16254
16255         * ltmain.in (func_generate_dlsyms) [cygwin, mingw]: when creating
16256         a .exp file for an executable, also create a .def file, and add
16257         that file to the link command via SYMFILES.  This causes binutils
16258         to generate an .edata section, and allows self dlopening to work.
16259         * NEWS: Updated.
16260
16261         * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better quoting for
16262         postinstall_cmds and postuninstall_cmds to allow spaces in install
16263         paths.
16264
16265         * config/ltmain.in (func_generate_dlsyms): Addresses in
16266         _preloaded_symbols[] cannot go into .rdata section if symbols are
16267         DATA imported from DLL, on windows, because runtime relocations
16268         must happen.
16269         * m4/libtool.m4 (_LT_LINKER_SHLIBS([TAGNAME])): Build exports for
16270         symbols in .rdata sections.
16271
16272 2004-09-19  Gary V. Vaughan  <gary@gnu.org>
16273
16274         The checks in assign.test are trying to catch case of this ilk:
16275         `foo=bar break', but unfortunately they also choke on `foo=bar;
16276         break' and `foo=bar && break'.  Writing a sophisticated test to
16277         catch just the intended case seems like more trouble than it's
16278         worth, but leaving the test in causes the testsuite to fail on
16279         valid m4sh output:
16280
16281         * tests/assign.test: Removed; chokes on perfectly valid shell
16282         syntax.
16283         * tests/Makefile.am (COMMON_TESTS): Remove assign.test.
16284         * tests/defs.in (scripts): Don't check the m4sh inputs, go back
16285         to checking the generated ltmain.sh script.
16286
16287 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
16288
16289         * config/ltmain.in (func_echo): Except for multi-line warnings and
16290         errors, always use func_echo.  $show is for command output, and
16291         $echo is for internal use in backtick expressions and similar.
16292
16293 2004-09-17  Gary V. Vaughan  <gary@gnu.org>
16294
16295         Missed a couple of MKDIR_P references in ltmain.in in my last
16296         patch; fix them carefully.  Introduce an opt_dry_run to ltmain.in
16297         so that the implementations of func_mkdir_p can converge, and a
16298         func_mktempdir to do a better job of temporary directory creation:
16299
16300         * libtoolize.in (func_mkdir_p): Don't fail if the directory wasn't
16301         created in dry run mode.
16302         * tests/defs (func_mkdir_p): Ditto.  We don't actually have a dry
16303         run mode for the tests, but the function is written carefully to
16304         be kept in synch and work correctly here too.
16305         * config/ltmain.in (func_mkdir_p): Ditto.  This copy of the
16306         function now only differs in its use of $echo over $ECHO.
16307         (func_extract_archive): Removed first redundant mkdir call.
16308         (func_mktempdir): New function that tries to avoid races when
16309         making temporary directories.
16310         (opt_dry_run): Set this if --dry-run is given at the CLI, or if
16311         tests/mdemo-dryrun.test has forced the value of $run.
16312         (func_mode_install): Call $MKDIR directly and error out if the
16313         directory cannot be created.
16314         (func_mode_link): Rather than copying func_mkdir_p into the
16315         wrapper script as a replacement for $MKDIR_P, we know that the
16316         script won't be called my `make -j', so write the current value of
16317         $MKDIR.
16318
16319 2004-09-17  Peter O'Gorman  <peter@pogma.com>
16320
16321         * m4/libtool.m4: remove an extra "]"
16322
16323         * m4/libtool.m4 [darwin] (_LT_LANG_CXX_CONFIG): Changes for 10.4.
16324         * config/libtool.in [darwin]: ditto.
16325
16326 2004-09-16  Gary V. Vaughan  <gary@gnu.org>
16327
16328         My most recent `2004-09-02 Gary V. Vaughan' patch for mkdir_p
16329         below is horrendously broken since it makes the installed libtool
16330         try to run the mkinstalldirs or install-sh helper scripts.  This
16331         patch fixes the `make -j' mkdir race condition internally:
16332
16333         * libtoolize.in (func_mkdir_p): New slice and dice algorithm
16334         to build the directory tree one dir at a time, ignoring errors
16335         until the end incase they are transient due to a concurrent
16336         identical mkdir.
16337         * tests/defs (func_mkdir_p): Ditto.
16338         * config/ltmain.in (func_mkdir_p): Ditto, except that ltmain.in
16339         uses $echo rather than $ECHO, and uses $show and $run to interact
16340         correctly with the command line.
16341         * configure.ac (AM_INIT_AUTOMAKE): 1.8 is sufficient again.
16342         * Makefile.am (edit): Don't substitute automake's $(mkdir_p).
16343         * NEWS: Updated.
16344
16345 2004-09-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
16346
16347         * libltdl/loaders/loadlibrary.c: Compilation fixes (originally
16348         from Gary V. Vaughan) to compile under MinGW.
16349         * config/mkstamp: Translate input data so that it is assured to
16350         use the Unix line terminations. This is necessary under Windows if
16351         the files are checked out with CR/NL line terminations. A
16352         side-effect of this change is that input must always be from
16353         stdin. Previously a filename argument was accepted as well.
16354
16355 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16356
16357         * tests/Makefile.am: Use the same CPP, F77, CXX and CXXFLAGS
16358         for the test suite.
16359
16360 2004-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16361
16362         * m4/libtool.m4 (_LT_ENABLE_LOCK):Replace AC_TRY_LINK with
16363         AC_LINK_IFELSE to get rid of `autoconf -Wobsolete' warning.
16364         * m4/ltdl.m4 (LT_LIB_DLLOAD): Ditto.
16365
16366 2004-09-15  Gary V. Vaughan  <gary@gnu.org>
16367
16368         * config/ltmain.in (func_quote_for_eval): Set a return value to
16369         avoid forking at every call.  Changed all callers.
16370         (func_mode_link): Simplified, and removed the final non-portable
16371         nested escaped double quotes in back quotes usage in the process.
16372
16373 2004-09-14  Gary V. Vaughan  <gary@gnu.org>
16374
16375         * config/ltmain.in (func_quote_for_eval): Factor out the ugly
16376         shell meta-character quoting.  Changed all callers.
16377
16378 2004-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16379
16380         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Simplification:
16381         distinguish between data and code symbols on every system.
16382
16383 2004-09-14  Albert Chin-A-Young  <china@thewrittenword.com>
16384
16385         Unfortunately, libtool has no way of telling if unrecognized
16386         compiler flags need an argument or not, and can disect options and
16387         pass parts through incorrectly.  This changeset reverts both
16388         2004-09-06 Albert Chin-A-Young (topmost) and 2004-09-05 Albert
16389         Chin-A-Young below, and recognises more options explicitly:
16390
16391         * config/ltmain.in (func_mode_link): Pass through options needed
16392         to compile in 64-bit mode with gcc, and the SGI, Sun, HP and IBM
16393         compilers.
16394
16395 2004-09-13  Gary V. Vaughan  <gary@gnu.org>
16396
16397         * m4/libtool.m4 (_LT_CMD_GLOBALS_SYMBOLS): Fix a typo I made when
16398         applying 2004-09-11 Ralf Wildenhues.
16399
16400 2004-09-12  Brad  <brad@comstyle.com>
16401
16402         * libtool.m4: Fixes for the OpenBSD support
16403
16404 2004-09-12  Peter O'Gorman  <peter@pogma.com>
16405
16406         Our fortran tests were not very good. All the libraries created
16407         were convenience libs, so we did not test the creation of shared
16408         libraries on any platform. Also none of the libs used any actual
16409         fortran library calls, adding a call to write(*,*) in each lib
16410         causes the tests to fail on darwin (and presumably other platforms).
16411         These new tests would likely cause many more fortran test failures,
16412         so if there is an error during make it is reported as SKIP.
16413
16414         * tests/f77demo-make.test: Don't fail hard, skip on failure.
16415         * tests/f77demo/foof2.f: New file.
16416         * tests/f77demo/foof3.f: New file.
16417         * tests/f77demo/fprogram.f: Call routine in new lib.
16418         * tests/f77demo/foof.f: Call routine in another new lib.
16419         * tests/f77demo/Makefile.am: Make a couple of new libraries, add
16420         $(FLIBS) to cprogram LDADD.
16421
16422 2004-09-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16423
16424         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): The linker distinguishes
16425         data and code symbols on linux-gnu/ia64.  Fixes multiple testsuite
16426         failures.
16427         * NEWS: Updated.
16428
16429 2004-09-06  Gary V. Vaughan  <gary@gnu.org>
16430
16431         * libltdl/loaders/shl_load.c (get_vtable): Typo.
16432
16433 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
16434
16435         Hopefully, passing unrecognised compiler arguments through
16436         unmolested will prove to be a good plan for the 2.0 release.  If
16437         it goes awry, we can get back to where we were by reverting this
16438         patch and the 2004-09-05 Albert Chin-A-Young patch, aka
16439         gary@gnu.org--2004/libtool--devo--1.0--patch-169,172:
16440
16441         * config/ltmain.in (func_mode_link): Because we now pass through
16442         compiler arguments we doesn't recognize, the code to pass
16443         through GCC's -m* arguments is not needed.
16444
16445 2004-09-06  Albert Chin-A-Young  <china@thewrittenword.com>
16446
16447         * Makefile.am (clean-ltmain-sh): Using '==' to test for equality
16448         in a shell script is not portable. Use '=' instead.
16449
16450 2004-09-05  Andreas Schwab  <schwab@suse.de>
16451
16452         * m4/ltdl.m4 (LT_WITH_LTDL): Remove excess quoting in argument of
16453         AC_CONFIG_SUBDIRS.
16454
16455 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
16456
16457         * config/ltmain.in (func_mode_link): Pass otherwise unrecognised +
16458         and - style switches to the compiler.
16459         * NEWS: Updated.
16460
16461 2004-09-05  Gary V. Vaughan  <gary@gnu.org>
16462
16463         * Makefile.am (libtool): Force libtool to be regenerated if
16464         stamp-vcl has changed.
16465
16466 2004-09-05  Albert Chin-A-Young  <china@thewrittenword.com>
16467
16468         * m4/libtool.m4, config/ltmain.in: When calling $LTCC,
16469         pass default $CFLAGS through with $LTCFLAGS.
16470
16471 2004-09-03  David Edelsohn  <dje@watson.ibm.com>
16472
16473         * config/ltmain.in (func_mode_link): Use $pic_object as
16474         $non_pic_object if $non_pic_object=none.
16475         * NEWS: Updated.
16476
16477 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
16478
16479         * bootstrap: Remember that the ltmain.sh generated by bootstrap
16480         is missing most of its substitution values, so force it to be
16481         rebuilt at make time by touching $(top_srcdir)/config/ltmain.in.
16482
16483         From Martin Quinson <mquinson@ens-lyon.fr>
16484         * m4/libtool.m4 (_LT_SETUP, _LT_ENABLE_LOCK, LT_PATH_LD): Use
16485         AS_HELP_STRING to get rid of autoconf -Wobsolete warning
16486         messages.
16487         * m4/ltdl.m4 (LT_WITH_LTDL, _LT_ENABLE_INSTALL): Ditto.
16488         * m4/ltoptions.m4 (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC)
16489         (_LT_ENABLE_FAST_INSTALL, _LT_WITH_PIC): Ditto.
16490         * TODO: Updated
16491
16492 2004-09-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16493
16494         * libltdl/slist.c (slist_cons): Don't leak the tail of a list.
16495
16496 2004-09-03  Albert Chin-A-Young  <china@thewrittenword.com>
16497
16498         * m4/libtool.m4 (_LT_ENABLE_LOCK): Reformatted.
16499
16500 2004-09-03  Gary V. Vaughan  <gary@gnu.org>
16501
16502         * HACKING: Explain how to verify detached signatures with gpg in
16503         the release announcement templates.
16504
16505         * AUTHORS: Fix typo in my address.
16506
16507 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
16508
16509         Builds of packages that use libtool and make -j produce "directory
16510         already exists warnings" for .lib directory.  Build on automake
16511         wisdom to support make -j builds where a suitable mkdir is
16512         available:
16513
16514         * configure.ac (AM_INIT_AUTOMAKE): Require 1.9, which goes to some
16515         trouble to find a $(mkdir_p) that doesn't interfere with make -j.
16516         * Makefile.am (edit): Substitute for @mkdir_p@.
16517         * config/ltmain.in (MKDIR_P): Take @mkdir_p@ value.
16518         (mkdir): Removed.
16519         (func_mkdir_p): New function to use $MKDIR_P.  Factor out all
16520         previous mkdir calls to use this function.
16521         (RM, MV): Declared as in libtoolize.in.  Changed all callers.
16522         * libtoolize.in (MKDIR_P): Take @mkdir_p@ value from automake.
16523         (func_mkdir_p): Use it, similarly to new config/ltmain.in.
16524         * tests/defs: Synchronize boiler plate code with ltmain.in.
16525         Adjust all callers.
16526         Add missing copyright preamble.
16527         * tests/demo-static.test: Add missing copyright preamble.
16528         * NEWS: Updated.
16529         Reported by Daniel Reed <n@ml.org>
16530
16531 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
16532
16533         * Makefile.am (clean-ltmain-sh): Quote $(top_builddir) for the
16534         shell, incase it is not set when running maintainer rules with
16535         `make -fMakefile.maint'.
16536         Don't show the shell commands.
16537
16538         * AUTHORS: Fix my email address.
16539
16540 2004-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16541
16542         * libltdl/ltdl.c (try_dlopen): Fix memory leak.
16543         * NEWS: Updated.
16544
16545 2004-09-02  Gary V. Vaughan  <gary@gnu.org>,
16546             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16547
16548         * libltdl/slist.c, libltdl/slist.h: Merge in changes from latest
16549         upstream.  Mostly comments, formal item boxing, a sort function,
16550         and const madness reduction.
16551         (slist_new): Removed.
16552         (slist_box, slist_unbox, slist_sort): New.
16553         (SListCompare, SListCallback): Swapped!
16554         (slist_remove, slist_find): Change order of parameters for
16555         orthogonality with slist_foreach.  Changed all callers.
16556         * libltdl/lt_dlloader.c (loader_cmp): Renamed to...
16557         (loader_callback): ...this.  Return boxed item.
16558         (lt_dlloader_remove): Adjust to new loader_callback semantics;
16559         unbox each removed item before returning.
16560         Remove unused variable.
16561         Remove const from name parameter, since the slist API cannot
16562         guarantee userdata const-ancy for its callback functions.
16563         (lt_dlloader_find): Adjust to new loader_callback semantics; need
16564         to return the contents of the boxed item.
16565         Remove const from name parameter, since the slist API cannot
16566         guarantee userdata const-ancy for its callback functions.
16567         * libltdl/lt_dlloader.h (lt_dlloader_find, lt_dlloader_remove):
16568         Adjust to new constless footprint.
16569         * libltdl/ltdl.c (ltdl_exit): The global `loaders' list is changed
16570         by `lt_dlloader_remove' while cleaning up, so the address in local
16571         variable `loader' is invalidated.  Since some loaders may be
16572         resident modules that cannot be unloaded (though we have none
16573         yet), we must save each `next' address before calling
16574         `lt_dlloader_remove'.
16575         * NEWS: Updated.
16576         * THANKS: Added Ralf.
16577
16578 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16579
16580         * libltdl/lt_dlloader.c (lt_dlloader_add): Handle malloc failure
16581         from slist_new.
16582         * libltdl/ltdl.c (loader_init): Trust lt_dlloader_add(), don't
16583         overwrite its error type, and simplify.
16584         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16585
16586 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16587
16588         * libltdl/slist.c (slist_new): Handle malloc failure gracefully.
16589
16590 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16591
16592         * libtoolize.in, config/ltmain.in: Add CDPATH protection to
16593         preamble.
16594         * tests/defs: Put a full m4sh.m4 style 'Be Bourne compatible'
16595         preamble in here too.
16596         * HACKING: Note that tests/defs needs synching with m4sh.m4 too.
16597         * TODO: Add new item.
16598
16599         * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Use correct cpp
16600         macro name, LT_DLSEARCH_PATH.
16601
16602         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Fix gcc parentheses
16603         warning.
16604         (foreach_dirinpath, try_dlopen, lt_dlpath_insertdir): Fix gcc
16605         signed vs unsigned warning.
16606         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
16607
16608         * m4/libtool.m4 (_LT_PROG_LTMAIN): Simplified in light of
16609         ltmain.sh no longer being in the build tree.
16610         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16611
16612 2004-09-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16613
16614         * libltdl/loaders/preopen.c: Initialise memory in get_vtable.
16615
16616         * tests/sh.test: Look in the source tree for ltmain.sh.
16617
16618 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16619
16620         Don't use C99 flexible array types as we want to be C89
16621         compatible.  Instead, revert to the old way of doing things with
16622         an array of symbol name vs. address, and adding the originator as
16623         the first symbol but with a NULL address:
16624
16625         * config/ltmain.in (func_extract_dlsyms): Store originator as a
16626         NULL address symbol.
16627         * libltdl/ltdl.h (lt_dlsymbol): Removed.
16628         (lt_dlsymlist): Remove originator field.
16629         (LTDL_SET_PRELOADED_SYMBOLS): Adjust.
16630         * libltdl/loaders/preopen.c (vm_open, lt_dlpreload_open): Adjust
16631         for new types.
16632         (vm_sym): Skip the new originator symbol when scanning symbol
16633         names.
16634         * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust preloaded symbols
16635         test file to match.
16636         * NEWS: Updated.
16637         Reported by Andreas Schwab <schwab@suse.de>
16638
16639 2004-09-01  Gary V. Vaughan  <gary@gnu.org>
16640
16641         Libtool currently assumes that certain characteristics, such as
16642         enable_shared, apply to the host architecture rather than per-
16643         language.  Running the tests over a broken compiler can corrupt
16644         these values, when there is no C++ compiler for example, so we
16645         skip most of the tests in those cases.
16646
16647         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): If caught_CXX_compiler was
16648         set from configure.ac, then don't run all the compiler tests.
16649         (_LT_LANG_F77_CONFIG): Similarly for caught_F77_compiler.
16650
16651 2004-08-31  Gary V. Vaughan  <gary@gnu.org>
16652
16653         * Makefile.am (clean-ltmain-sh): Remove stale config/ltmain.sh
16654         from the build tree that were left behind by previous versions of
16655         libtool.
16656         ($top_srcdir)/stamp-vcl: Since this rule is already called on
16657         every invocation of make, hook clean-ltmain-sh in here too.
16658         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16659
16660 2004-08-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16661
16662         * bootstrap: Update warning message to reflect having split
16663         libtool.m4 into several files.
16664         Also, add config/ltmain.sh to list of stale files from previous
16665         versions to be removed before bootstrap.
16666
16667         * libltdl/ltdl.c: Replace strdup with lt__strdup.
16668
16669 2004-08-30  Gary V. Vaughan  <gary@gnu.org>
16670
16671         * config/ltmain.in: Double quote even $# for the sake of sh.test.
16672         (exec_cmd): Be careful about "`\"foo\"`" quoting, even in comments
16673         to avoid triggering the tests in sh.test.
16674
16675         * configure.ac:  Because of the way the autoconf C++ testing
16676         works, we need to call the C test first to work in an environment
16677         that has no C++ compiler.
16678
16679         * libltdl/lt_dlloader.c (lt_dlloader_remove): Since the return
16680         value of this function is often passed to free, don't declare it
16681         `const'. Responsibility for this memory is given back to the
16682         caller on return.
16683         * libltdl/lt_dlloader.h (lt_dlloader_remove): Ditto.
16684         * libltdl/ltdl.c (lt_dlexit): Adjust.
16685         * NEWS: Updated.
16686
16687 2004-08-30  Andreas Schwab  <schwab@suse.de>
16688
16689         * libltdl/ltdl.c (lt_dlexit): Remove lvalue cast.
16690
16691         * libltdl/slist.h (SListCallback): Fix missing type.
16692
16693         * config/ltmain.in: Accept --mode=relink.
16694
16695 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16696
16697         * NEWS: Updated.
16698         * configure.ac: Bumped version to 1.9c.
16699
16700         GNU libtool 1.9b was released.
16701
16702         * configure.ac: Bumped version to 1.9b.
16703         * NEWS: Updated.
16704         * INSTALL, config/config.guess, config/config.sub,
16705         config/texinfo.tex: Updated from canonical source.
16706         * Makefile.maint, HACKING: Update instructions for releasing in a
16707         VPATH build.
16708
16709         * Makefile.am (dist-hook): Only run if README-alpha exists.
16710         * README.alpha: Renamed from README-alpha to stop automake from
16711         automatically adding it to DIST_COMMON.
16712
16713         * NEWS: Merge changes from branch-1-5.
16714
16715         * Makefile.am (dist-hook): Always distribute just a README file,
16716         but take its contents from README-alpha for alpha releases.
16717
16718         * TODO: Reformat.  Removed some items that have been implemented.
16719
16720 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16721
16722         Add a new `-weak' flag to tell libtool when not to propogate
16723         dependency libraries from dlpreopened modules to libraries:
16724
16725         * config/ltmain.in: Support new -weak link mode option.  Adjust
16726         help message.
16727         * libltdl/Makefile.am (libltdlc_la_LDFLAGS): Use it.
16728         * doc/libtool.texi (Linking with dlopened modules): Document it.
16729         (Link mode): Mention -weak.
16730         * NEWS: Updated.
16731
16732 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16733
16734         * config/ltmain.in (opt_help): Defer showing help messages until
16735         after a possible following --mode argument has been parsed, so we
16736         can handle `libtool --help --mode=foo'.
16737
16738 2004-08-29  Gary V. Vaughan  <gary@gnu.org>
16739
16740         We have had shell functions in ltmain.in for a few years without
16741         complaint now, and recently a few more have crept in.  Make a
16742         start at refactoring the code with shell functions, and
16743         standardising on option parsing style:
16744
16745         * config/ltmain.in (func_echo, func_verbose, func_error)
16746         (func_fatal_error, func_fatal_help, func_missing_arg)
16747         (func_version, func_usage, func_help): Boiler plate shell
16748         functions mostly copied from libtoolize.in.  Changed *lots* of
16749         shell snippets to call these functions as appropriate, rather than
16750         inlining the same code over and over.
16751         (func_config, func_features, func_enable_tag, func_mode_help):
16752         Factored out from the shared option parsing loop.  Write a new
16753         shared option parser based on the one in libtoolize.in.
16754         (func_check_version_match): Factored out from global scope.
16755         (func_mode_compile, func_mode_execute, func_mode_finish)
16756         (func_mode_install, func_mode_link, func_mode_uninstall): Break
16757         each of the top level mode handlers out into a function.  Adjust
16758         main loop.
16759         (modename, prevopt, prev, optarg, show_help): Removed in the
16760         course of cleaning up the shared option parser.
16761         (opt_duplicate_deps): Use `:' and `false' instead of `yes' and `',
16762         so we can run it directly, rather than calling test.
16763
16764 2004-08-28  Gary V. Vaughan  <gary@gnu.org>
16765
16766         To help users submit better bug reports, improve the general
16767         instructions, and provide additional useful info alongside the bug
16768         reporting address in --help output:
16769
16770         * Makefile.am (edit): Substitute $host_triplet.
16771         * libtoolize.in: Output useful debug info with --help.
16772         * config/ltmain.in: Ditto.
16773         * README: Rewritten.  Added copyright info.
16774         * README-alpha: Rewritten.  Added copyright info.
16775         * HACKING: New file, partly taken from old README-alpha.
16776
16777 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16778
16779         Two things to stop `make distcheck' from trying to rebuild
16780         distributed files (m4/ltversion.m4 and config/ltmain.in) in the
16781         readonly source tree:
16782
16783         * Makefile.am (stamp-vcl): Keep only one copy of stamp-vcl; in
16784         $(top_srcdir), so that an up-to-date version is rolled into the
16785         dist tarball even from a VPATH build.
16786         ($(top_srcdir)/config/ltmain.sh): Don't depend on Makefile,
16787         otherwise ltmain.sh needs to be rebuilt after every config.status
16788         run, and then configure needs to be rebuilt, and it all goes
16789         horribly wrong :-/  Unfortunately, we can't depend on Makefile.am
16790         either, because that is a circular dependency.  The downside of
16791         this change is that it is now possible to edit Makefile.am to
16792         change the way ltmain.sh is generated, and the dependency
16793         information can't tell that ltmain.sh needs regenerating.
16794
16795 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16796
16797         * doc/libtool.texi (Cheap tricks): Escape the `@' for texinfo.
16798
16799 2004-08-27  Gary V. Vaughan  <gary@gnu.org>
16800
16801         * doc/libtool.texi (Cheap tricks): Fix the instructions for making
16802         a ltmain.in wrapping libtool in light of recent changes to the
16803         version checking code.
16804
16805 2004-08-26  Peter O'Gorman  <peter@pogma.com>
16806
16807         * config/ltmain.in [darwin]: Use the -dylib_file flag and avoid
16808         linking to so many libraries on darwin.
16809
16810         * m4/libtool.m4 [darwin]: Don't use a libname triplet, a couplet
16811         is perfectly fine.
16812
16813         * m4/ltdl.m4: Don't use the dyld loader on darwin 8 or later.
16814
16815 2004-08-25  Paolo Bonzini  <bonzini@gnu.org>
16816
16817         * config/ltmain.in (piecewise linking): Use a GNU ld script if
16818         possible.
16819         * m4/libtool.m4 (_LT_LINKER_SHLIBS): Add per-tag variable
16820         with_gnu_ld.
16821         (_LT_LANG_CXX_CONFIG): Don't set unused variable with_gnu_ldcxx.
16822
16823 2004-08-22  Gary V. Vaughan  <gary@gnu.org>
16824
16825         The Grand Renaming.  In preparation for libtool-2.0, move all of
16826         the many and varied m4 symbols accumulated by libtool over the
16827         years, considering also that modern autoconf can detect unexpanded
16828         macros even without AC in the macro name:
16829
16830         * bootstrap: Remove libltdl/config.h from previous releases.
16831         * m4/libtool.m4, m4/ltdl.m4, doc/libtool.texi: Basically, run a
16832         giant sed transformation like this:
16833         s,AC_LIB_LTDL,LTDL_INIT,g
16834         s,AC_LIBLTDL_CONVENIENCE,LTDL_CONVENIENCE,g
16835         s,AC_LIBLTDL_INSTALLABLE,LTDL_INSTALLABLE,g
16836         s,AC_WITH_LTDL,LT_WITH_LTDL,g
16837         s,AC_LTDL_ENABLE_INSTALL,_LT_ENABLE_INSTALL,g
16838         s,AC_DEPLIBS_CHECK_METHOD,_LT_CHECK_MAGIC_METHOD,g
16839         s,AC_LIBTOOL_OBJDIR,_LT_CHECK_OBJDIR,g
16840         s,AC_LTDL_OBJDIR,_LT_CHECK_OBJDIR,g
16841         s,AC_LTDL_DLPREOPEN,_LT_CHECK_DLPREOPEN,g
16842         s,AC_LIBTOOL_SYS_MAX_CMD_LEN,LT_CMD_MAX_LEN,g
16843         s,AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,_LT_CMD_GLOBAL_SYMBOLS,g
16844         s,AC_LIBTOOL_SYS_OLD_ARCHIVE,_LT_CMD_OLD_ARCHIVE,g
16845         s,AC_PROG_LD_RELOAD_FLAG,_LT_CMD_RELOAD,g
16846         s,AC_LIBTOOL_SYS_LIB_STRIP,_LT_CMD_STRIPLIB,g
16847         s,AC_CHECK_LIBM,LT_LIB_M,g
16848         s,AC_LTDL_DLLIB,LT_LIB_DLLOAD,g
16849         s,AC_LIBTOOL_COMPILER_OPTION,_LT_COMPILER_OPTION,g
16850         s,AC_LIBTOOL_PROG_CC_C_O,_LT_COMPILER_C_O,g
16851         s,AC_LIBTOOL_PROG_COMPILER_NO_RTTI,_LT_COMPILER_NO_RTTI,g
16852         s,AC_LIBTOOL_PROG_COMPILER_PIC,_LT_COMPILER_PIC,g
16853         s,AC_LIBTOOL_SYS_HARD_LINK_LOCKS,_LT_COMPILER_FILE_LOCKS,g
16854         s,AC_LTDL_DLSYM_USCORE,LT_FUNC_DLSYM_USCORE,g
16855         s,AC_LIBTOOL_LINKER_OPTION,_LT_LINKER_OPTION,g
16856         s,AC_LIBTOOL_PROG_LD_SHLIBS,_LT_LINKER_SHLIBS,g
16857         s,AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH,_LT_LINKER_HARDCODE_LIBPATH,g
16858         s,AC_PATH_MAGIC,_LT_PATH_MAGIC,g
16859         s,AC_PATH_TOOL_PREFIX,_LT_PATH_TOOL_PREFIX,g
16860         s,AC_PROG_LD,LT_PATH_LD,g
16861         s,AC_PROG_LD_GNU,_LT_PATH_LD_GNU,g
16862         s,AC_PROG_NM,LT_PATH_NM,g
16863         s,AC_LTDL_SYS_DLOPEN_DEPLIBS,LT_SYS_DLOPEN_DEPLIBS,g
16864         s,AC_LIBTOOL_DLOPEN_SELF,LT_SYS_DLOPEN_SELF,g
16865         s,AC_LIBTOOL_POSTDEP_PREDEP,_LT_SYS_HIDDEN_LIBDEPS,g
16866         s,AC_LTDL_SYSSEARCHPATH,LT_SYS_DLSEARCH_PATH,g
16867         s,AC_LTDL_SHLIBEXT,LT_SYS_MODULE_EXT,g
16868         s,AC_LTDL_SHLIBPATH,LT_SYS_MODULE_PATH,g
16869         s,AC_LTDL_SYMBOL_USCORE,LT_SYS_SYMBOL_USCORE,g
16870         s,AC_LIBTOOL_SYS_DYNAMIC_LINKER,_LT_SYS_DYNAMIC_LINKER,g
16871         s,_LT_AC_TAGVAR,_LT_TAGVAR,g
16872         s,_LT_AC_SYS_COMPILER,_LT_TAG_COMPILER,g
16873         s,_LT_AC_PROG_ECHO_BACKSLASH,_LT_PROG_ECHO_BACKSLASH,g
16874         s,_LT_AC_SYS_LIBPATH_AIX,_LT_SYS_MODULE_PATH_AIX,g
16875         s,_LT_AC_SHELL_INIT,_LT_SHELL_INIT,g
16876         s,_LT_AC_LOCK,_LT_ENABLE_LOCK,g
16877         s,_LT_AC_CHECK_DLFCN,_LT_HEADER_DLFCN,g
16878         s,_LT_AC_TRY_DLOPEN_SELF,_LT_TRY_DLOPEN_SELF,g
16879         s,LT_AC_PROG_EGREP,_LT_DECL_EGREP,g
16880         s,LT_AC_PROG_SED,_LT_DECL_SED,g
16881         * doc/libtool.texi (Autoconf macros): Document exported macros.
16882         * libtoolize.in: Compare ltdl.m4 serial numbers for LTDL_INIT
16883         instead of newly obsoleted AC_LIB_LTDL.
16884         (func_scan_files): Also set seen_ltdl for LTDL_INIT and
16885         LT_WITH_LTDL.
16886
16887 2004-08-12  Peter O'Gorman  <peter@pogma.com>
16888
16889         * m4/libtool.m4 [GNU/linux] (AC_DEPLIBS_CHECK_METHOD): Cleanup,
16890         thanks to Daniel Reed.
16891
16892 2004-08-11  Daniel Reed  <djr@redhat.com>
16893
16894         * tests/demo-nopic.test: Do not run on x86_64 or s390*
16895
16896 2004-08-06  Gary V. Vaughan  <gary@gnu.org>
16897
16898         * libltdl/ltdl.c (lt_dlforeachfile): LT_SYS_LIBSEARCH_PATH is not
16899         an environment variable, it is an actual path.
16900
16901         * bootstrap: Remove `-f Makefile.am' now that we have an actual
16902         Makefile to build ltmain.sh.
16903         Reported by Noah Mish <noah@cs.caltech.edu>
16904
16905 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
16906
16907         * bootstrap: Run the bootstrap rules from a file named Makefile,
16908         copied from Makefile.am for fresh checkouts.
16909
16910 2004-08-05  Alexandre Duret-Lutz  <adl@gnu.org>
16911
16912         * m4/libtool.m4 (_LT_PROG_LTMAIN): Require ltmain.sh using
16913         using Autoconf's new AC_REQUIRE_AUX_FILE.
16914
16915 2004-08-05  Gary V. Vaughan  <gary@gnu.org>
16916
16917         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Depends on
16918         Makefile.
16919         (timestamp): Factor out timestamp setting and edit it based on the
16920         version number, so that it is empty for release versions.
16921         ($(top_srcdir)/config/ltmain.sh): Use it.
16922         (libtoolize): Ditto.
16923
16924         * Makefile.am (libtool): Depends on ltmain.sh.
16925         (libtoolize): Set and substitute TIMESTAMP.
16926
16927         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Actually run
16928         $(MKSTAMP) before changing directories, or it won't be found.
16929         Forgot to save before my last commit :-(
16930
16931         * Makefile.am ($(top_srcdir)/m4/ltversion.m4): Since we already did
16932         `cd $(top_srcdir)' for this rule, we can't mv ltversion.tmp to the
16933         relative $(top_srcdir) again!  Also, run $(MKSTAMP) before changing
16934         directories, or it won't be found.
16935         ($(top_srcdir)/config/ltmain.sh): Ditto.
16936         (EXTRA_DIST): We should distribute ltversion.m4 too.
16937
16938 2004-08-04  Peter O'Gorman  <peter@pogma.com>
16939
16940         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Since CONFIG_SHELL may
16941         not actually be set, we should use SHELL here, also make darn sure
16942         that SHELL is set to something. Bug from Willem Jan Palenstijn
16943         <wpalenst@math.leidenuniv.nl>.
16944
16945 2004-08-03  Jacob Meuser  <jakemsr@jakemsr.com>
16946
16947         * ltmain.in: Allow some static libraries to be used in generating a
16948         shared library on NetBSD and OpenBSD. match-pattern_regex decides
16949         which are good.
16950
16951 2004-08-02  Geoffrey Keating  <geoffk@apple.com>
16952
16953         * m4/libtool.m4 [darwin]: Don't use -all_load.
16954
16955 2004-08-01  Maciej W. Rozycki  <macro@linux-mips.org>
16956
16957         * m4/libtool.m4 (LT_AC_PROG_SED): Set SED when running from cache as
16958         well.
16959
16960 2004-07-31  Gary V. Vaughan  <gary@gnu.org>
16961
16962         Although libtool is optimised to not need to subconfigure libltdl,
16963         the installed libltdl sources for libtoolize need to put
16964         libltdl/configure.ac in the parent package so that *it* can
16965         subconfigure libltdl.  That way we don't put any constraints on
16966         the build system used by the parent package because the
16967         libtoolized libltdl subtree is a self-contained sub-project:
16968
16969         * libltdl/Makefile.am (EXTRA_DIST): Add configure.ac.
16970         (nobase_ltdldata_DATA): Change back to libltdl's own
16971         configure.ac.
16972
16973 2004-07-30  Gary V. Vaughan  <gary@gnu.org>
16974
16975         My thanks to Alexandre Duret-Lutz <adl@gnu.org> for the insight
16976         required to write this changeset -- especially that ltmain.sh is
16977         the same on any machine for a given release, which I hadn't
16978         noticed for some bizarre reason: It turns out that generating
16979         distributed files from configure causes no end of hassle, as
16980         evidenced by the many patches I've generated over the last few
16981         days to try and get the dist and distcheck make rules to work.
16982         Instead of all that hair, we now simply generate our distributed
16983         files (now including ltmain.sh) with make rules -- and since
16984         automake creates make variables for all AC_SUBSTs, that is really
16985         easy.  The code looks a lot more like automake and autoconf
16986         Makefile.ams now, and doesn't have all the rough edges the earlier
16987         hacky solution suffered from.  We still generate libtool from
16988         config.status, but that is not a distributed file, and doesn't
16989         break the golden rule.  Besides, there is way more going on there
16990         than a bunch of substitutions:
16991
16992         * Makefile.am (edit): New common sed substitutions for files now
16993         generated by make instead of config.status.
16994         (CLEANFILES): Clean new tmp files.
16995         (EXTRA_DIST): Add ltmain.sh.
16996         (vcl-tmp): Reinstated.
16997         (m4/ltversion.m4, config/ltmain.sh): New rules.  Generate from
16998         here instead of config.status.
16999         (libtoolize): Ditto.
17000         (libtool): Call config.status to regenerate if necessary.
17001         (dist-hook): Removed.
17002         * config/ltmain.in: Moved here from top_srcdir.
17003         * README-alpha: Update instructions to check AS_SHELL_SANITIZE is
17004         up to date.
17005         * bootstrap: Rewritten.  Generate m4/ltversion.m4 and
17006         config/ltmain.sh because configure depends on them.
17007         * configure.ac (AC_CONFIG_SRCDIR): Use libtoolize.in now that
17008         ltmain.in has moved.
17009         (AC_CONFIG_FILES): Don't generate distributed files,
17010         config/ltmain.sh and libtoolize from config.status.  We have make
17011         rules to do that now.
17012
17013 2004-07-30  Peter O'Gorman  <peter@pogma.com>
17014
17015         * m4/libtool.m4, ltmain.in: readd the comments that I erased.
17016
17017         * ltmain.in [darwin]: We already had a module var, there can be
17018         only one.
17019
17020         * m4/libtool.m4, ltmain.in: autoconf now says the best thing to do
17021         with CDPATH is to (unset CDPATH) >/dev/null 2>&1 && unset CDPATH,
17022         so do it.
17023
17024 2004-07-29  Gary V. Vaughan  <gary@gnu.org>
17025
17026         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Ugh. More hair to
17027         help `make distcheck'; not only do we have to make a copy of
17028         ltmain.sh available in the source tree, but we have to be really
17029         careful about permission bit twiddling when we copy it across into
17030         the possible read-only $(top_srcdir)/config directory!
17031
17032         * tests/tagtrace.test: Skip this test when running a VPATH build
17033         against a read-only source tree (as in distcheck for example),
17034         since autoconf wants to write temporary files in $top_srcdir
17035         otherwise.
17036
17037         * Makefile.am ($(top_srcdir)/config/ltmain.sh): Automake assumes,
17038         quite rightly for every project except libtool, that there will be
17039         an ltmain.sh in the source tree.
17040         (EXTRA_DIST): As do the dist rules it generates.
17041         (dist-hook): Even though we definitely don't want to distribute
17042         our local ltmain.sh.
17043
17044         * config/config.guess, config/config.sub: Don't check these in,
17045         they cause spurious conflicts on cvs commit and update, and are
17046         added by bootstrap in any case.
17047
17048         * configure.ac (AC_INIT): Revert an accidental commit from my
17049         testing of package_revision.
17050
17051 2004-07-29  Alexandre Duret-Lutz  <adl@gnu.org>
17052
17053         * doc/libtool.texi (Tags): Document CC.
17054         * m4/libtool.m4 (_LT_SETUP): Register CC as supported tag so that
17055         Automake uses it.
17056
17057 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
17058
17059         Fix a long-standing bug where macro_version was always empty in
17060         the generated m4/ltversion.m4.  Except for CVS revisions:
17061
17062         * ltmain.in (package_revision): Don't try to deduce it from
17063         TIMESTAMP, since that is empty for release versions; simply
17064         substitute it...
17065         * configure.ac (package_revision): ...from here, having
17066         precalculated it before resetting TIMESTAMP for release versions.
17067         * bootstrap: Force regeneration of m4/ltversion.m4, but retain
17068         timestamps if there is no change to the content.
17069
17070 2004-07-28  Gary V. Vaughan  <gary@gnu.org>
17071
17072         To take full advantage of this, libtool must be bootstrapped with
17073         CVS autoconf, otherwise pdksh chokes on some nested escaped quotes
17074         from libtool.m4.  Using CVS autoconf protects configure from
17075         non-bourne compatible shells in the same way this changeset
17076         protects libtool and libtoolize:
17077
17078         * libtoolize.in: Include latest CVS autoconf AS_SHELL_SANITIZE
17079         expansion to make various shells fully bourne compatible.
17080         * ltmain.in: Ditto.
17081         * m4/libtool.m4 (AC_PATH_TOOL_PREFIX): Remove spurious quotes, the
17082         RHS of = assignment is not IFS split.
17083         (_LT_LANG_CXX_CONFIG): Ditto.
17084         (AC_LIBTOOL_POSTDEP_PREDEP): Ditto.
17085
17086 2004-07-27  Gary V. Vaughan  <gary@gnu.org>
17087
17088         This change fixes another VPATH build bug, where the vcl.tmp
17089         target forced a rebuild of stamp-vcl in the build tree (and
17090         hence regeneration of m4/ltversion.m4, thus an automake driven
17091         rebootstrap that doesn't know about $fakes) requiring a fresh
17092         ./bootstrap after every cvs/tla update:
17093
17094         * Makefile.am (vcl.tmp): Removed.
17095         (stamp-vcl): Adopt former vcl.tmp target rules.
17096
17097 2004-07-25  Gary V. Vaughan  <gary@gnu.org>
17098
17099         * ltmain.in: Make sure that dependency libraries of -dlpreopened
17100         libraries are propogated properly.
17101
17102 2004-07-23  Joe Orton  <joe@manyfish.co.uk>
17103
17104         * libtool.m4: Treat bsdi5* like bsdi4*.
17105
17106 2004-07-22  Peter O'Gorman  <peter@pogma.com>
17107
17108         * ltmain.in [darwin](func_extract_archives): $SED not sed.
17109
17110         * ltmain.in [darwin](func_extract_archives): Clean up last commit
17111         a little, some suggestions are from Albert Chin, those that are
17112         broken are mine.
17113
17114         * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for
17115         included files in the right places.
17116
17117 2004-07-18  Peter O'Gorman  <peter@pogma.com>
17118
17119         * ltmain.in [darwin](func_extract_archives): Because fat archives
17120         on darwin can not be extracted using ar, we need to use lipo to
17121         extract the thin archives and then use lipo again to generate the
17122         individual fat objects. This should allow people to run configure
17123         with CC set to "cc -arch ppc -arch ppc64" or "cc -arch ppc -arch
17124         i386" or whatever to match the toolchain they have available.
17125
17126 2004-07-18  Greg Eisenhauer  <eisen@cc.gatech.edu>
17127
17128         * libltdl/loaders/Makefile.am: Use AM_MAKEFLAGS not MAKEFLAGS.
17129
17130 2004-07-18  Peter O'Gorman  <peter@pogma.com>
17131
17132         * libltdl/Makefile.am: Ensure that lt__dirent.h is part of the dist,
17133         also make failed looking for configure.ac, look for
17134         $(top_srcdir)/configure.ac instead.
17135
17136 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17137
17138         * libltdl/lt__private.h (lt_dlhandle_struct): Renamed to
17139         lt__handle to better reflect the naming scheme.
17140         * libltdl/ltdl.h (lt_dlhandle): Be truly opaque with a void *.
17141         * libltdl/lt_dlloader.c (lt_dlloader_remove): Party to
17142         lt__private.h, so use internal lt__handle instead of opaque
17143         lt_dlhandle.
17144         * libltdl/ltdl.c (LT_DLGET_FLAG, LT_DLSET_FLAG): Add a cast to
17145         internal lt__handle type.
17146         (try_dlopen, tryall_dlopen, load_deplibs, unload_deplibs): Ditto.
17147         (lt_dlexit, lt_dlclose, lt_dlsym): Use lt__handle to iterate
17148         throught the handle list.
17149         (try_dlopen): Use lt__zalloc instead of MALLOC and memset.
17150         * libltdl/ltdl.h (lt_dlcaller_id): Be truly opaque with a void *.
17151         (lt_dlhandle_interface): New callback type for filtering handles
17152         according to the interface they present.
17153         * libltdl/ltdl.c (lt_dlcaller_register): Take an id and an
17154         interface check callback, and generate a caller_id.
17155         (iterator): New static variable for the use of...
17156         (lt_dlhandle_first): New function.  Set the iterator for
17157         subsequent calls to lt_dlhandle_next.
17158         (lt_dlhandle_next): Either work as before when iterator is unset,
17159         or else skip handles that fail the interface check in iterator set
17160         by lt_dlhandle_first.
17161         * libltdl/ltdl.h (lt_dlhandle_first): Declaration.
17162         * doc/libtool.texi (User defined module data): Document the new
17163         APIs.
17164         * NEWS: Updated.
17165
17166 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17167
17168         Split lt_dlloader management into a separate file, and factor
17169         `loaders' list management into a new SList ADT.  In the process,
17170         the API for writing loaders is a little cleaner, so all the
17171         existing loaders were tweaked to take advantage of that:
17172
17173         * libltdl/slist.h, libltdl/slist.c: New files implementing a
17174         generic singly linked list container ADT.  The ADT is purely
17175         internal, and none of its API's are visible from an installed
17176         libltdl.
17177         * libltdl/lt_dlloader.h (lt_dlloader): Removed next field again
17178         :-) Renamed to lt_dlvtable for API.  Changed all callers.
17179         (lt_dlloader_get): New function to turn an lt_dlloader into its
17180         associated lt_dlvtable.
17181         (lt_dlloader_add): Removed unused data parameter.  The caller
17182         data belongs to (and is set by) the loader itself, not the
17183         loader's client.  Changed all callers.
17184         (lt_dlloader_name, lt_dlloader_data): Removed.  Use
17185         lt_dlloader_get instead!
17186         * libltdl/lt__private.h: Include slist.h.
17187         (lt__alloc_die_callback): Add missing LT_SCOPE to declaration.
17188         (lt_dlhandle_struct): Use lt_dlvtable instead of opaque
17189         lt_dlloader.
17190         * libltdl/ltdl.c (lt_dlexit): Rewritten for the new loader API.
17191         (loaders, lt_dlloader_add, lt_dlloader_remove, lt_dlloader_next,
17192         lt_dlloader_find): Moved from here...
17193         * libltdl/lt_dlloader.c ((loaders, lt_dlloader_add,
17194         lt_dlloader_remove, lt_dlloader_next, lt_dlloader_find): ...to
17195         here.  And rewritten in terms of new SList interface.
17196         * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Rewritten in terms of
17197         new lt_dlloader interface.
17198         * libltdl/Makefile.am (libdlloader_la_SOURCES): Add slist.h and
17199         slist.c.  Move lt_dlloader.h from here...
17200         (pkginclude_HEADERS): ...to here.
17201         (libltdl_la_SOURCES): Add lt_dlloader.c and lt_dlloader.h.
17202
17203 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17204
17205         Collapse two almost identical structures into one:
17206
17207         * libltdl/lt_dlloader.h (lt_dlloader): Add next field.
17208         * libltdl/ltdl.c (lt_user_dlloader): Remove entirely.  Change all
17209         callers to use lt_dlloader instead.  Add a compatibility macro.
17210         (lt_dlloader_add): Remove copy and allocate stage, just hook
17211         directly into the loaders list.
17212
17213 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17214
17215         A cleaner way to access the private fields of an lt_dlhandle
17216         than my move of the module field into lt_dlinfo:
17217
17218         * libltdl/ltdl.c (lt_caller_data, lt_dlhandle_struct): Move from
17219         here...
17220         * libltdl/lt__private.h (lt_caller_data, lt_dlhandle_struct):
17221         ...to here.  And put the module field back here...
17222         * libltdl/ltdl.h (lt_dlinfo): ...instead of here.
17223         * libltdl/loaders/loadlibrary.c (vm_open): Adjust.
17224
17225 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17226
17227         * libltdl/lt__private.h (streq, strneq): New macros to make strcmp
17228         calls as used for simple comparison easier to read.
17229         * libltdl/loaders/dyld.c, libltdl/loaders/preopen.c,
17230         libltdl/ltdl.c: Use them!
17231
17232 2004-07-15  Gary V. Vaughan  <gary@gnu.org>
17233
17234         This pervasive changeset makes two intertwined deep changes to the
17235         operation of libtool (neither would work alone).  First, there is
17236         a new feature that allows libraries to preopen modules.  This
17237         entails a backwards incompatible change to the libltdl API for
17238         separating out the preloaded symbol lists by owner.  Second, in
17239         the tradition of "eating our own dogfood", libltdl now preloads
17240         its own dlloaders.  The internal API for dlloaders has also had to
17241         change in a backwards incompatible way in support of the new
17242         library preloading feature.  If you don't use preloaded libraries,
17243         you needn't change your project sources, though you will need to
17244         recompile against the new libltdl.  The API changes are mostly
17245         confined to dlloaders, so you probably needn't worry about those
17246         (unless you have written a custom loader that you want libltdl to
17247         use):
17248
17249         * configure.ac (AC_CONFIG_FILES): Add libltdl/loaders/Makefile.
17250         * libltdl/configure.ac (AC_CONFIG_FILES): Add loaders/Makefile.
17251         * libltdl/loaders: New directory for module loaders, to simplify
17252         Makefile rules, and to give the loaders themselves names that are
17253         unique in the first few characters.
17254         * libtoolize.in (func_copy_all_files): Copy recursively to pick up
17255         the loaders directory contents.
17256         * libltdl/loaders/Makefile.am: New file.  Move module building
17257         rules to here...
17258         * libltdl/Makefile.am: ...from here.
17259         (VERSION_INFO): Bumped version info to signify interface changes.
17260         (libltdl_la_CPPFLAGS, libltdlc_la_CPPFLAGS): Set LTDLOPEN
17261         appropriately for each library.
17262         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
17263         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
17264         libltdl/loader-loadlibrary.c libltdl/loader-preopen.c,
17265         libltdl/loader-shl_load.c: Moved from here...
17266         * libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
17267         libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
17268         libltdl/loaders/loadlibrary.c libltdl/loaders/preopen.c,
17269         libltdl/loaders/shl_load.c: ...to here.
17270         (get_vtable): New entry function for each.
17271         * libltdl/loaders/preopen.c (lt_dlsymlists_t): Replaced by...
17272         (symlist_chain): ...a new structure which maps lists of preloaded
17273         symbols from the object that loads them.
17274         (lt_dlpreload_open): New function to automatically open all
17275         preloaded modules belonging to a named object (ORIGINATOR).
17276         * libltdl/lt__alloc.c (lt__zalloc): New function to return a block
17277         of zeroed out new memory.
17278         * libltdl/lt__alloc.h (lt__zalloc): Prototype it.
17279         * libltdl/lt__private.h (lt__alloc_die_callback): Add missing
17280         prototype.
17281         (lt__error_strings): Make this opaque to callers.
17282         * libltdl/lt_error.c (lt__error_strings): Move the implementation
17283         to here.
17284         * libltdl/lt_dlloader.h (lt_user_dlloader): Add extra fields to
17285         make originator focused preloading possible.  *BREAKS BACKWARDS
17286         COMPATIBILITY*
17287         (lt_dlloader_add): Take advantage of new fields to simplify
17288         paramater list.
17289         * libltdl/lt_system.h (LT_STR): New ANSI stringification macro.
17290         (LT_CONC): Fix it to work from within macros.
17291         * libltdl/ltdl.c (loader_init, loader_init_callback): Simplify
17292         dlloader loading.
17293         (get_vtable, preloaded_symbols): Point these at the preopen.c
17294         symbols to bootstrap the loader chain.
17295         (lt_dlinit): Load the preopen dlloader manually, and then use it
17296         to load any other preloaded dlloaders.
17297         (lt_dlloader_add): Simplify parameter list. Populate new
17298         fields. Chain new loaders according to priority field.
17299         * libltdl/ltdl.h (lt_dlsymlist): Add a new originator field.
17300         (lt_dlpreload_callback_func): Type of a callback for automatic
17301         lt_dlpreload_open loading.
17302         (LTDL_SET_PRELOADED_SYMBOLS): Adjust to hook into preloaded
17303         symbols from the "@PROGRAM@" originator.
17304         * tests/demo/dlmain.c (main): Use mangled preloaded_symbols symbol.
17305         * tests/pdemo/longer_file_name_dlmain.c (main): Ditto.
17306         * ltmain.in: Don't spew spurious warnings when dlopening and
17307         dlpreopening modules.
17308         (func_generate_dlsyms): Factored out from multiple copies in the
17309         rest of the code. Generate originator keyed symbol lists.
17310         (func_extract_archives): Also factored.  Extract the contents of
17311         convenience archives for linking with dependent libraries when
17312         --whole-archive is not available.
17313         [darwin]: Don't try to link $old_library unless it exists, and
17314         $lib is a bundle.
17315         * m4/ltdl.m4 (AC_LTDL_DLLIB): Check for all possible dynamic
17316         loading libraries/apis rather that stopping when an acceptable one
17317         is discovered.
17318         (LT_DLLOADERS): New variable for holding dlloaders that can be
17319         preloaded.
17320         * doc/libtool.texi: Document interface changes.
17321         * NEWS: Updated.
17322
17323 2004-07-12  Peter O'Gorman  <peter@pogma.com>
17324
17325         * m4/libtool.m4 [darwin]: Set whole_archive_flag_spec to '' for xlc,
17326         or it does not pass it's tests. xlc passes -noall_load (the default)
17327         and when -all_load is also specified Apple's /usr/bin/libtool barfs
17328         and dies.
17329
17330 2004-07-07  Gary V. Vaughan  <gary@gnu.org>
17331
17332         * libltdl/ltdl.h (lt_dlinfo): Move private module field to here...
17333         * libltdl/ltdl.c (lt_dlhandle_struct): ...from here.  Changed all
17334         callers.
17335         * libltdl/loader-loadlibrary.c (sys_wll_open): Use new inteface to
17336         scan loaded handle->info.module fields for previously loaded
17337         modules.
17338         * doc/libtool.texi (User defined module data): Document changes to
17339         the interface.
17340         * NEWS: Updated.
17341         Reported by Chuck Wilson <cwilson@ece.gatech.edu>
17342
17343 2004-07-07  Brad  <brad@comstyle.com>
17344
17345         * m4/libtool.m4: Fixes for the OpenBSD support
17346
17347 2004-06-24  Noah Misch  <noah@cs.caltech.edu>
17348
17349         * ltmain.in: Unset the zsh GLOB_SUBST option, which makes zsh
17350         handle backslash quoting poorly, before doing anything else.
17351         * tests/defs: Likewise.
17352
17353 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
17354
17355         * libtoolize.in (libtoolize_flags): With the --ltdl option, we
17356         libtoolize the libltdl subdirectory automatically.
17357         * m4/ltdl.m4 (AC_WITH_LTDL): Fix overquoted args.
17358
17359 2004-06-21  Peter O'Gorman  <peter@pogma.com>
17360
17361         * ltmain.in (dependency_libs) [darwin]: Remove -framework stuff from
17362         dependency_libs. Instead, invent a new .la var "inherited_linker_flags"
17363         to keep any linker flags which should be used when linking the library,
17364         but are outside the usual -L -l, -R etc that can be used in
17365         dependency_libs. Any unusual flags in dependency_libs cause recent
17366         versions of libtool to die with "cannot find the library `'", so
17367         it is required to move frameworks out of there. :(
17368
17369 2004-06-21  Gary V. Vaughan  <gary@gnu.org>
17370
17371         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>:
17372         * libtoolize.in: Quote $# to make sh.test happy again.
17373
17374         * m4/ltdl.m4 (AC_WITH_LTDL): Remove redundant AC_REQUIRE calls.
17375         Either set variables to allow a client to link with the installed
17376         libltdl, or else compile a local libltdl as a convenience library.
17377         * libtoolize.in (opt_ltdl): Removed in favour of...
17378         (ltdldir): ...this, which is defaulted to "libltdl" or can be set
17379         by the user with an argument to --ltdl.
17380         (Main): Use it!
17381         * doc/libtool.texi (Distributing libltdl): Improved documentation
17382         on libltdl.
17383         (Invoking libtoolize): Document new optional --ltdl target
17384         directory argument.
17385
17386 2004-06-17  Gary V. Vaughan  <gary@gnu.org>
17387
17388         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Fix a typo
17389         in allow_undefined_flag: s,${Wl},${wl},g
17390
17391         * libtoolize.in (func_scan_files): Accept AC_WITH_LTDL as an
17392         indication that libltdl is being used.
17393         (Main): Without AC_CONFIG_MACRO_DIR, don't just dump all the
17394         macro files in `.' since they are never used, and aclocal will
17395         copy them from $aclocaldir into aclocal.m4 anyway.
17396         Reported by Alexandre Duret-Lutz <adl@gnu.org>
17397
17398 2004-06-16  Brad  <brad@comstyle.com>
17399
17400         * m4/libtool.m4: More improvements to OpenBSD support.
17401         * NEWS: Updated.
17402
17403 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
17404
17405         libltdl uses LIBOBJS, which leak out into a parent project if both
17406         share the same configure.ac.  Libtool itself doesn't compile any
17407         code, so it is okay to do it during bootstrap, but other projects
17408         need to treat libltdl as a configurable subproject to keep their
17409         respective LIBOBJS separate:
17410
17411         * libltdl/configure.ac: New file, based on configure.ac.
17412         * libltdl/Makefile.am (AC_LOCAL_AMFLAGS): Use our own m4
17413         directory.
17414         (ltdldata_DATA): List *all* the files that libtoolize --ltdl will
17415         install.
17416
17417 2004-06-16  Gary V. Vaughan  <gary@gnu.org>
17418
17419         Automake 1.9 won't have the AC_PROG_EGREP bug (aclocal used to
17420         pull an old installed libtool.m4 as well as the bootstrap
17421         m4/libtool.m4 if an AC_DEFUN was removed), and we have
17422         lt~obsolete.m4 to work around it in the mean time.  libtoolize
17423         can install macro files from $prefix/share/aclocal perfectly well
17424         without us needing to move to a whole other directory:
17425
17426         * Makefile.am (pkgmacro_DATA): Renamed to aclocal_DATA, so m4
17427         files are installed to $prefix/share/aclocal again.
17428         (install-data-local): Don't remove just installed macros!
17429         * libtoolize.in (pkgmacrodir): Renamed to aclocaldir.
17430         (func_copy_some_files): New function factored out of...
17431         (func_copy_all_files): ...here.  Adjust to use func_copy_some_files.
17432         (re_pkgaux_files): Renamed to glob_pkgaux_files, since it is not
17433         a regular expression.
17434         (re_pkgmagro_files): Replaced with...
17435         (pkgmacro_files): ...a colon delimited list of libtool installed
17436         m4 files from aclocaldir.
17437         (Main): Copy macro files from aclocaldir again.
17438         * NEWS: Updated.
17439
17440 2004-05-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17441
17442         * ltmain.sh (check_executable): The WIN32 API and MinGW do not support
17443         S_IXOTH and S_IXGRP so use of these modes should be conditional.
17444
17445 2004-05-21  Gary V. Vaughan  <gary@gnu.org>
17446
17447         * tests/tagtrace.test: Forgot to add this file to the repository
17448         for Alexandre's 2004-05-16 patch below.
17449
17450 2004-05-18  Peter O'Gorman  <peter@pogma.com>
17451
17452         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Make this an m4_defun,
17453         test the tags compiler to see if it is GCC, not the CC compiler.
17454
17455 2004-05-16  Alexandre Duret-Lutz  <adl@gnu.org>
17456
17457         * doc/libtool.texi (Invoking libtool): Mention --tag=TAG.
17458         (Tags, Trace interface): New nodes.
17459         * m4/libtool.m4 (LT_SUPPORTED_TAG): New macro.
17460         (_LT_LANG): Call it.
17461         * tests/tagtrace.test: New file.
17462         * tests/Makefile.am
17463         (TESTS): Add tagtrace.test.
17464         * tests/defs: Define AUTOCONF.
17465
17466 2004-05-14  Mike Gorchak  <lestat@i.com.ua>
17467
17468         * ltmain.in: Add new qnx version type support.
17469         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Use it.  Set
17470         ldqnx.so linker type.
17471         (AC_DEPLIBS_CHECK_METHOD): QNX6 uses GNU C++, with deplib
17472         checking, so use pass_all.
17473         (AC_LIBTOOL_PROG_COMPILER_PIC): Use -shared for QNX.
17474         (_LT_LANG_CXX_CONFIG): QNX can make shared libraries.
17475         * m4/ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): QNX opens deplibs on
17476         dlopen.
17477         * NEWS: Updated.
17478
17479 2004-05-05  Peter O'Gorman  <peter@pogma.com>
17480
17481         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Insert space
17482         around = for a test and a comma between runpath_var and $1. Bug
17483         reported by Max Bowsher.
17484
17485 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
17486
17487         * libltdl/argz.h: Moved from here...
17488         * libltdl/argz_.h: ...to here, so as not to shadow system
17489         argz.h when we `#include <argz.h>' for example.
17490         #include stdlib.h and sys/types.h to ensure we get a size_t
17491         definition.
17492         * libltdl/argz.c (HAVE_CONFIG_H): Set it up how ltdl likes it when
17493         used by another client.
17494         * m4/argz.m4: New file.
17495         (gl_FUNC_ARGZ): Try to find an error_t definition, and a system
17496         argz.h.
17497         * m4/ltdl.m4: Use it.
17498         (AC_LTDL_FUNC_ARGZ): Removed.
17499         * libltdl/lt__glibc.h: #include <argz.h> to pick up either the
17500         system argz.h or our libltdl/argz.h if necessary.
17501         * libltdl/Makefile.am (libltdl_la_SOURCES): Move argz.h from
17502         here...
17503         (ltdldata_DATA): ...here. Along with argz.c.
17504         (argz.h): Generate from argz_.h if the system file is missing.
17505         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17506
17507 2004-04-22  Gary V. Vaughan  <gary@gnu.org>
17508
17509         According to Howard Chu <hyc@highlandsun.com>:
17510         Applications should assume that the native dlopen is NOT
17511         thread-safe, and take care of locking themselves. All application
17512         calls into libltdl should thus be protected by the caller.
17513
17514         * libltdl/lt_mutex.c, libltdl/lt_mutex.h: Removed.
17515         * libltdl/Makefile.am (pkginclude_HEADERS): Removed lt_mutex.h.
17516         (libltdl_la_SOURCES): Removed lt_mutex.c and lt_mutex.h.
17517         * libltdl/ltdl.h: Don't include lt_mutex.h.
17518         * libltdl/lt__private.h (LT__MUTEX_GETERROR, LT__MUTEX_SETERROR)
17519         (LT__MUTEX_SETERRORSTR): Renamed to...
17520         (LT__GETERROR, LT__SETERROR, LT__SETERRORSTR): ...this.  Changed
17521         all callers.
17522         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, lt_dlmutex_lock)
17523         (lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror):
17524         Removed.  Changed all callers.
17525         * doc/libtool.texi (Thread Saftey in libltdl):
17526         * NEWS: Updated.
17527
17528 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
17529
17530         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Detect Intel C++ compiler
17531         version more idiomatically.
17532
17533 2004-04-19  Albert Chin-A-Young  <china@thewrittenword.com>
17534
17535         * m4/libtool.m4: Use cc rather than ld to created
17536         a shared library on HP-UX 11.x. On HP-UX 10.x, the
17537         C compiler doesn't grok -b so we continue to use ld.
17538
17539         * m4/libtool.m4: Use cc rather than ld to create a
17540         shared library on Solaris. When using the Sun
17541         Workshop compiler 5.0 (and I presume any previous
17542         version), revert to ld due to compiler errors.
17543
17544         * m4/libtool.m4: Use cc rather than ld to created
17545         a shared library on Tru64 UNIX.
17546
17547         * m4/libtool.m4: Use cc rather than ld to created
17548         a shared library on IRIX.
17549
17550         * libltdl/loader-shl_load.c: Fix typos during reorg.
17551
17552 2004-04-19  Alexandre Duret-Lutz  <adl@gnu.org>
17553
17554         * doc/libtool.texi (LT_INIT): Properly display options in a table.
17555
17556 2004-04-19  Gary V. Vaughan  <gary@gnu.org>
17557
17558         * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Intel C++ compiler 8.0 and
17559         newer adds predep_objects and postdep_objects itself, so don't
17560         duplicate them in $archive_cmds and $archive_expsym_cmds.
17561         * NEWS: Updated.
17562         Reported by Roberto Bagnara <bagnara@cs.unipr.it>
17563
17564 2004-04-17  Peter O'Gorman  <peter@pogma.com>
17565
17566         * libltdl/loader-dyld.c: Fix compilation issues. Set Original author
17567         to me.
17568
17569 2004-04-17  Todd Vierling  <tv@duh.org>,
17570         Peter O'Gorman  <peter@pogma.com>
17571
17572         * m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use sysctl to get the
17573         max cmd length on BSD* and darwin. Make sure that there is a safety
17574         factor too.
17575
17576 2004-04-15  Scott James Remnant  <scott@netsplit.com>
17577
17578         * m4/libtool.m4 (_LT_LANG_DEFAULT_CONFIG): Remove code to handle 'none'
17579         and 'all' options, this now always assumes automatic mode as that
17580         works so well.
17581         (_LT_LANG_DEFAULT): Remove definition
17582         * m4/ltoptions.m4: Remove 'no-lang', 'auto-lang' and 'all-lang' options.
17583         * configure.ac: Invoke LT_LANG for each desired supported language.
17584         * doc/libtool.texi: Remove documentation for the LT_INIT options,
17585         rewrite LT_LANG documentation.
17586
17587 2004-04-14  Alexandre Duret-Lutz  <adl@gnu.org>
17588
17589         * bootstrap: Delete acinclude.m4.
17590
17591 2004-04-14  Gary V. Vaughan  <gary@gnu.org>
17592
17593         * libtoolize.in (configure_ac): Don't complain about the lack of
17594         aclocal.m4.
17595         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
17596
17597 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17598
17599         * m4/ltdl.m4 (AC_LIB_LTDL): Remove AC_REPLACE_FUNCS for memmove
17600         and strcpy.
17601
17602         * libltdl/lt__pre89.h, libltdl/memcpy.c, libltdl/memmove.c,
17603         libltdl/strchr.c, libltdl/strcmp.c, libltdl/strrchr.c: Remove
17604         half-assed pre-c89 support entirely.
17605         * libltdl/lt__private.h: Don't refer to lt__pre89.h.
17606         * libltdl/Makefile.am (ltdldata_DATA): Remove references to
17607         deleted files.
17608         * NEWS: Mention it.
17609
17610         * libltdl/lt__pre89.h, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/argz.c,
17611         libltdl/argz.h, libltdl/lt__glibc.h, libltdl/lt_dlloader.h,
17612         libltdl/lt__dirent.c, libltdl/lt__dirent.h, libltdl/lt__private.h,
17613         libltdl/lt__alloc.c, libltdl/lt__alloc.h, libltdl/lt_system.h,
17614         libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
17615         libltdl/loader-dyld.c,  libltdl/loader-loadlibrary.c,
17616         libltdl/loader-shl_load.c, libltdl/lt_error.h, libltdl/lt_mutex.h:
17617         Autoconf either defines to 1 or undefs the discovery macros it
17618         puts in config.h, and many (non-GNU) compilers throw a spurious
17619         warning when testing an #undef macro with #if.  For consistency,
17620         while we are touching all these lines, use defined(MACRO) style
17621         throughout.
17622         Reported by Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
17623
17624 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17625
17626         Factor out the individual loaders, in preparation for preloading
17627         them as libtool modules.  Currently loader-preopen.c is linked
17628         unconditionally and other appropriate loaders discovered by
17629         AC_LTDL_DLLIB are built and linked in:
17630
17631         * libltdl/Makefile.am (libltdl_la_SOURCES): Add loader-preopen
17632         module.
17633         * m4/ltdl.m4 (AC_LTDL_DLLIB): Use AC_LIBOBJ to add appropriate
17634         loaders to libltdl.
17635         * libltdl/lt_system.h (LT_SCOPE): Moved to here.
17636         * libltdl/ltdl.h (lt_dlloader, lt_user_data, lt_module)
17637         (lt_module_open, lt_module_close, lt_find_sym, lt_dlloader_exit)
17638         (struct lt_user_dlloader, lt_dlloader_next, lt_dlloader_find)
17639         (lt_dlloader_name, lt_dlloader_data, lt_dlloader_add)
17640         (lt_dlloader_remove): Moved declarations...
17641         * libltdl/lt_loader.h: ...to here.
17642         * libltdl/ltdl.c: Include lt_loader.h.  Move loader implementation
17643         code from here...
17644         * libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
17645         libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
17646         libltdl/loader-loadlibrary.c, libltdl/loader-preopen.c,
17647         libltdl/loader-shl_load.c: ...to here.
17648         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
17649         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
17650         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
17651         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (AM_CPPFLAGS):
17652         Add -I$(top_srcdir)/../.. so that libltdl include files can be
17653         written as #include <libltdl/lt_dlloader.h> and found correctly.
17654
17655 2004-04-13  Gary V. Vaughan  <gary@gnu.org>
17656
17657         Factor out the mutex handling and error handling into their own
17658         modules.  Mutex handling is not currently useful in combination
17659         with posix threads, and should be easier to replace if it is in a
17660         separate module.  Additionally, we can factor out the loaders in
17661         such a way as to depend on only the portability layer and these
17662         new mutex and error modules now:
17663
17664         * libltdl/Makefile.am (pkginclude_HEADERS): Install lt_error.h and
17665         lt_mutex.h to $includedir/libltdl.
17666         (libltdl_la_SOURCES): Build lt_error and lt_mutex objects.
17667         * libltdl/ltdl.h (LT_SCOPE): Moved from here...
17668         * libltdl/lt_system.h (LT_SCOPE): ...to here.
17669         * libltdl/ltdl.c (lt_dlerror_strings, LT_DLSTRERROR): Moved from
17670         here...
17671         * libltdl/lt__private.h (lt__error_strings, LT__STRERROR): ...to
17672         here as additional internal interfaces to lt_error.  Changed all
17673         callers.
17674         * libltdl/ltdl.c (LT_DLMUTEX_LOCK, LT_DLMUTEX_UNLOCK)
17675         (LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR, lt_dlmutex_lock_func)
17676         (lt_dlmutex_unlock_func, lt_dlmutex_geterror_func)
17677         (lt_dllast_error): Moved from here...
17678         (LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, LT__MUTEX_SETERRORSTR)
17679         (LT__MUTEX_GETERROR, lt__mutex_lock_func, lt__mutex_unlock_func)
17680         (lt__mutex_geterror_func, lt__last_error): ...to here as
17681         additional internal interfaces to lt_mutex.  Changed all callers.
17682         (LT_MUTEX_SETERROR): Take an errorcode rather than a string.
17683         Changed all callers.
17684         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dlmutex_register): Moved from
17685         here...
17686         * libltdl/lt_mutex.c, libltdl/lt_mutex.h (lt_dlmutex_register):
17687         ...to here. New files.
17688         * libltdl/ltdl.c, libltdl/ltdl.h (lt_dladderror, lt_dlseterror)
17689         (lt_dlerror_table):
17690         Moved from here...
17691         * libltdl/lt_error.c, libltdl/lt_error.h (lt_dladderror)
17692         (lt_dlseterror, lt_dlerror_table): ...to here. New files.
17693
17694 2004-04-13  Scott James Remnant  <scott@netsplit.com>
17695
17696         * Makefile.am (XDELTA_OPTIONS): Remove --pristine as that
17697         generates huge xdeltas.
17698
17699 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17700
17701         * libltdl/ltdl.c (argz_append, argz_create_sep, argz_insert)
17702         (argz_next, argz_stringify): Move from here...
17703         * libltdl/argz.c: New file. ...to here.
17704         * libltdl/lt__glibc.h: New file. Rename global symbols into the
17705         lt__ namespace.
17706         * libltdl/lt__private.h: Include lt__glibc.h.
17707         * libltdl/Makefile.am (libltdl_la_SOURCES): Add new files.
17708         (AM_CPPFLAGS): Add -DLTDL.
17709         * libltdl/argz.h (argz_append, argz_create_sep, argz_insert)
17710         (argz_next, argz_stringify): New file. Declare argz functions
17711         here, including lt__glibc.h when LTDL is defined to rename global
17712         symbols for libltdl.
17713         * m4/ltdl.m4 (AC_LTDL_FUNC_ARGZ): Add argz to AC_LIBOBJ if any of
17714         our argz_* functions are missing from the system libraries.
17715
17716         * libltdl/ltdl.c: Move standard headers and preprocessor guards
17717         from here...
17718         * libltdl/lt__private.h: ...to here.  New file to declare ltdl's
17719         internal interfaces.
17720         * libltdl/ltdl.c: Include lt__private.h.
17721         * m4/ltdl.m4 (AC_LIB_LTDL): Add lt_dirent to AC_LIBOBJ if all of
17722         opendir, readdir and closedir are missing.
17723         (AC_CHECK_HEADERS): Remove assert.h, ctype.h, errno.h, malloc.h,
17724         stdio.h and stdlib.h; these headers are all available in standard
17725         c89 environments and newer.
17726         * libltdl/lt__private.h: Include them here unconditionally.
17727         * libltdl/lt__dirent.c (opendir, readdir, closedir): New file.
17728         Windows dirent emulation functions moved to here...
17729         * libltdl/ltdl.c (opendir, readdir, closedir): ...from here.
17730         * libltdl/lt__dirent.h: New file.  Rename the global symbols from
17731         lt__dirent.c into the lt__ namespace so they don't clash with
17732         other libraries.
17733
17734 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17735
17736         Factor out the bottom portability layer from ltdl.  Code in this
17737         layer has global symbols renamed by lt__pre89.h, and may not
17738         refer to any symbols except those provided by the system libraries
17739         or other code in the portability layer:
17740
17741         * libltdl/lt__pre89.h: New file.  Rename all the symbols from
17742         LTLIBOBJS into the lt__ namespace so that they don't clash with
17743         other libraries.
17744         * libltdl/ltdl.c (rpl_memcpy, rpl_memmove, rpl_strchr, rpl_strcmp)
17745         (rpl_strrchr): Moved from here...
17746         * libltdl/memcpy.c (memcpy): ...to here, and fixed void *
17747         dereference bug...
17748         * libltdl/memmove.c (memmove): ...to here, and fixed void *
17749         dereference bug...
17750         * libltdl/strchr.c (strchr): ...to here...
17751         * libltdl/strcmp.c (strcmp): ...here...
17752         * libltdl/strrchr.c (strrchr): ...and here.
17753         * libltdl/Makefile.am (libltdl_la_SOURCES): Add lt__pre89.h.
17754         (libltdl_la_LIBADD, libltdlc_la_LIBADD): Add $(LTLIBOBJS).
17755         (ltdldata_DATA): Add replacement sources files.
17756         * m4/ltdl.m4 (AC_LIB_LTDL): Do careful config.h and LTLIBOBJ
17757         setting for missing pre89 functions.
17758
17759 2004-04-08  Gary V. Vaughan  <gary@gnu.org>
17760
17761         * libltdl/ltdl.h (LT_PARAMS): Removed.  Changed all users to
17762         ANSI prototypes.
17763         (lt_ptr): Keep backwards compatibility stub.
17764         * libltdl/ltdl.c, libltdl/ltdl.h: Use ANSI function declarations
17765         throughout.  s/lt_ptr/void */g.
17766
17767 2004-04-08  Fredrik Estreen  <estreen@algonet.se>
17768
17769         * m4/ltdl.m4: Rename shrext to shrext_cmds here too.
17770
17771 2004-04-06  Gary V. Vaughan  <gary@gnu.org>
17772
17773         There was no clean separation of abstraction layers in libltdl.
17774         The first step in fixing this is to factor out the memory
17775         management abstraction, making a start on removing promiscuity
17776         from the underlying portability layer:
17777
17778         * doc/libtool.texi (Libltdl interface): Remove lt_dlmalloc,
17779         lt_dlrealloc and lt_dlfree references.  The memory management
17780         layer used by libltdl is now private.
17781         * libltdl/lt_system.h: New installed header for system portability
17782         abstraction.
17783         * libltdl/ltdl.h: Use it.
17784         * libltdl/lt__alloc.c, libltdl/lt__alloc.h: New module above
17785         system portability layer to abstract ltdl's memory management.
17786         * libltdl/ltdl.c: Use lt__alloc.h.
17787         (closedir): Use free.
17788         (opendir): Use malloc/free.
17789         (lt__xalloc_die_callback): Report memory failures through
17790         lt_dlerror.
17791         (lt_dlinit): Use it to initialise memory management.
17792         (LT_DLMALLOC, LT_DLREALLOC, LT_DLFREE, LT_EMALLOC, LT_EREALLOC)
17793         (rpl_strdup, rpl_realloc, lt_estrdup, lt_emalloc, lt_erealloc):
17794         Removed in favour of...
17795         (lt__strdup, lt__memdup, MALLOC, REALLOC, FREE): ...these calls
17796         from libltdl/lt__alloc.h.  Changed all callers.
17797         (rpl_argz_append, rpl_argz_create_sep, rpl_argz_insert): As part
17798         of the portability layer, these functions no longer use libltdl
17799         memory management API.
17800         (free_vars): Factored out.
17801         (LT_DLMEM_REASSIGN): While redoing memory handling, renamed...
17802         * libltdl/lt__alloc.h (MEMREASSIGN): ...to this.
17803         * libltdl/Makefile.am (AUTOMAKE_OPTIONS): Let automake track
17804         dependencies automatically.
17805         (pkgincludedir): Override from parent package's setting.
17806         (pkginclude_HEADERS): Install lt_system.h.
17807         (libltdl_la_SOURCES): Add new files.
17808         * NEWS: Updated.
17809         Reported by Dalibor Topic <robilad@kaffe.org>
17810
17811 2004-04-01  Peter O'Gorman  <peter@pogma.com>
17812
17813         * ltmain.in: Remove an extra eval concat_cmds that some idiot added.
17814         Fixes double eval on AIX, reported by Albert Chin and Uwe Moeller.
17815
17816         * NEWS: Add a news item about xlc support that I forgot yesterday.
17817
17818 2004-03-31  Peter O'Gorman  <peter@pogma.com>
17819
17820         * m4/libtool.m4, ltmain.in (darwin): Support IBM's xlc and xlc++.
17821
17822 2004-03-31  Gary V. Vaughan  <gary@gnu.org>
17823
17824         * m4/libtool.m4 (_LT_LANG_C_CONFIG): If $compiler is not set, then
17825         don't call the macros that test it.
17826         (_LT_LANG_CXX_CONFIG): Ditto.
17827         (_LT_LANG_F77_CONFIG): Ditto.
17828         (_LT_LANG_GCJ_CONFIG): Ditto.
17829         (_LT_LANG_RC_CONFIG): Ditto.
17830
17831 2004-03-30  Gary V. Vaughan  <gary@gnu.org>
17832
17833         * libtoolize.in (func_scan_files): sed BRE have no alternation, so
17834         break LT_INIT matcher out.
17835         (func_serial): Don't escape literal parens for grep BRE.
17836
17837         * m4/libtool.m4 (LT_INIT): aclocal can't see AC_DEFUN_ONCE, so use
17838         AC_DEFUN and m4_define.
17839         * libtoolize.in (func_serial): No longer accept AC_DEFUN_ONCE...
17840         (func_grep): ...so mere grep is sufficient again...
17841         (EGREP): ...and this is no longer required.
17842
17843 2004-03-29  Gary V. Vaughan  <gary@gnu.org>
17844
17845         * m4/libtool.m4: Use LT_INIT as #serial tag.
17846         * libtoolize.in: Grok LT_INIT!  Pass A[CM]_PROG_LIBTOOL to...
17847         (func_serial_update): ...here, we now take an additional parameter
17848         containing another regex to match ancient serialed files.
17849         (func_serial): Accept AC_DEFUN_ONCE of the #serial tag...
17850         (func_grep): ...which requires egrep...
17851         (EGREP): ...substituted by config.status.
17852         (func_scan_files): Set seen_libtool if LT_INIT goes by.
17853
17854         * Makefile.am (pkgmacro_DATA): Install ltoptions.m4.
17855
17856         * libltdl/Makefile.am (AM_CPPFLAGS): Also check $top_builddir for
17857         config.h.
17858         (ltdl.o): config.h is in $top_builddir.
17859
17860 2004-03-24  Scott James Remnant  <scott@netsplit.com>
17861
17862         * NEWS: Explain more fully why we no longer load libraries
17863         with global symbol resolution.
17864         * doc/libtool.texi (libtool script contents): Add missing
17865         documentation for 'inherit_rpath' variable.
17866
17867         * configure.ac: Catch errors during calls to AC_PROG_CXX,
17868         AC_PROG_CXXCPP and AC_PROG_F77 before LT_INIT.  Only set the
17869         HAVE_CXX and HAVE_F77 conditions to true if an error didn't
17870         occur (AC_PROG_CXX leaves CXX="g++" even if it didn't find one).
17871         Set HAVE_GCJ and HAVE_RC to true correctly as well.
17872         * m4/libtool.m4 (LT_PROG_GCJ): If AC_PROG_GCJ or AM_PROG_GCJ are
17873         defined, expand to the definition of those instead of our own.
17874         Define GCJ to '' instead of 'no' if not found.
17875         (LT_PROG_RC) Define RC to '' instead of 'no' if not found.
17876         (_LT_LANG_GCJ_CONFIG): Require LT_PROG_GCJ to be expanded first.
17877         (_LT_LANG_RC_CONFIG): Require LT_PROG_RC to be expanded first.
17878
17879         * libltdl/ltdl.c (sys_dl_open): Don't load libraries with global
17880         symbol resolution.
17881         * NEWS: Updated.
17882
17883 2004-03-24  Albert Chin-A-Young  <china@thewrittenword.com>
17884
17885         * m4/libtool.m4: Add new variable, inherit_rpath, if the
17886         RPATHs of the libraries being linked are inherited in
17887         the output file. For systems with a linker exhibiting
17888         this feature, programs/libraries must be relinked at
17889         installation time.
17890
17891         * m4/libtool.m4: When linking convenience libraries on Solaris
17892         with the Sun C++ compiler, pass convenience libraries through
17893         to the linker with -Qoption between allextract/defaultextract.
17894         The Sun C++ compiler bundles -Qoption arguments so
17895         convenience libraries are linked with defaultextract
17896         otherwise.
17897         * tagdemo/Makefile.am, tagdemo/main.cpp, tagdemo/conv.h,
17898         tagdemo/conv.cpp: Augment tagdemo test to link a convenience
17899         library with a libtool library.
17900
17901         * ltmain.in: Piecewise linking doesn't work when the output
17902         file is an absolute path, use the basename only instead.
17903
17904         * ltmain.in: When a library is installed, dependent on a
17905         convenience library, and it involves relinking, the object
17906         files extracted from the convenience library are not removed
17907         after the relink. This is a problem if you build as non-root,
17908         install as root, then try to remove the build directory as
17909         non-root; Clean up properly if relink fails; Change
17910         "$realname"U to ${realname}T to be consistent.
17911
17912 2004-03-24  Scott James Remnant  <scott@netsplit.com>
17913
17914         * ltmain.in <prog linkmode>: Always add -L options to
17915         $newlib_search_path instead of just in scan mode to ensure that
17916         non-libtool libraries in user-specified directories can be found.
17917
17918 2004-03-22  Scott James Remnant  <scott@netsplit.com>
17919
17920         * m4/libtool.m4 (_LT_CONFIG): Remove unneeded else condition
17921         code, now the support determination is done in m4.
17922         (_LT_LANG): Correct comment, unexpected leak from keybuk-lt-tag.patch.
17923
17924 2004-03-21  Scott James Remnant  <scott@netsplit.com>
17925
17926         * libltdl/Makefile.am (libltdl_la_LDFLAGS): Increment CURRENT
17927         and AGE of libltdl, warranted by the addition of lt_dlhandle_find()
17928         since 1.5.2.
17929
17930 2004-03-21  Scott James Remnant  <scott@netsplit.com>
17931
17932         Further sweeping changes to the user interface to libtool from
17933         `configure.ac' to allow users to better control the list of
17934         supported languages.  Three LT_INIT options 'no-lang', 'all-lang'
17935         and 'auto-lang' (the default) control the initial list and others
17936         may be added with LT_LANG.
17937
17938         * m4/libtool.m4 (_LT_CONFIG): Renamed AC_LIBTOOL_CONFIG to _LT_CONFIG
17939         which is more consistent with our own namespace and gets us further out
17940         of Autoconf's.
17941         (_LT_LIBTOOL_TAGS): Output available_tags variable based entirely
17942         on the value of _LT_TAGS.
17943         (_LT_COPYING): Call _LT_LIBTOOL_TAGS to output available tags,
17944         always append tag configuration if the tag is available.
17945         (LT_LANG): New macro to enable support for a language that accepts
17946         tag names (eg. "CXX") or human language names (eg. "C++").
17947         (_LT_LANG): Internal support macro for above that appends the
17948         tag to _LT_TAGS and calls the appropriate config macro.
17949         (LT_INIT): Ensure that LT_LANG is not called before LT_INIT.
17950         (AC_LIBTOOL_TAGS): Removed, call LT_LANG for each language now.
17951         (_LT_AC_TAG_CHECK): Removed, _LT_LANG handles duplicate calls.
17952         (_LT_LANG_DEFAULT_CONFIG): Macro to set initial language support
17953         based on options passed to LT_INIT.
17954         (_LT_SETUP): Call _LT_LANG_DEFAULT_CONFIG.
17955         (_LT_AC_TAG_CONFIG): Removed, handled by _LT_LANG_DEFAULT_CONFIG.
17956         (_LT_AC_LANG_CXX, _LT_AC_LANG_F77, _LT_AC_LANG_GCJ): Removed,
17957         automatic language support inclusion now handled by
17958         _LT_LANG_DEFAULT_CONFIG.
17959         (AC_LIBTOOL_CXX): Obsolete macro, update to LT_LANG(C++).
17960         (AC_LIBTOOL_F77): Obsolete macro, update to LT_LANG(Fortran 77).
17961         (AC_LIBTOOL_GCJ): Obsolete macro, update to LT_LANG(Java).
17962         (AC_LIBTOOL_LANG_C_CONFIG_: Removed.
17963         (_LT_AC_LANG_C_CONFIG): Renamed to _LT_LANG_C_CONFIG, call
17964         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17965         (_LT_SETUP): Replace call to AC_LIBTOOL_LANG_C_CONFIG with call to
17966         new _LT_LANG_C_CONFIG macro.
17967         (AC_LIBTOOL_LANG_CXX_CONFIG): Removed.
17968         (_LT_AC_LANG_CXX_CONFIG): Renamed to _LT_LANG_CXX_CONFIG, call
17969         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17970         (AC_LIBTOOL_LANG_F77_CONFIG): Removed.
17971         (_LT_AC_LANG_F77_CONFIG): Renamed to _LT_LANG_F77_CONFIG, call
17972         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17973         (AC_LIBTOOL_LANG_GCJ_CONFIG): Removed.
17974         (_LT_AC_LANG_GCJ_CONFIG): Renamed to _LT_LANG_GCJ_CONFIG, call
17975         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17976         (AC_LIBTOOL_LANG_RC_CONFIG): Removed.
17977         (_LT_AC_LANG_RC_CONFIG): Renamed to _LT_LANG_RC_CONFIG, call
17978         _LT_CONFIG instead of AC_LIBTOOL_CONFIG.
17979         (LT_AC_PROG_GCJ): Renamed to LT_PROG_GCJ.
17980         (LT_AC_PROG_RC): Renamed to LT_PROG_RC.
17981         * m4/ltoptions.m4: Define new 'no-lang', 'auto-lang' and 'all-lang'
17982         options which set the default for _LT_LANG_DEFAULT_CONFIG.
17983         * m4/lt~obsolete.m4: Removed AC_LIBTOOL_CONFIG, _LT_AC_LANG_C_CONFIG,
17984         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG; all of which are no
17985         long referenced in any way.
17986         * configure.ac: Enable all languages.
17987         * tests/cdemo/configure.ac, tests/demo/configure,ac,
17988         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
17989         tests/mdemo/configure.ac, tests/pdemo/configure,ac,
17990         tests/tagdemo/configure.ac: Remove calls to AC_LIBTOOL_TAGS,
17991         the default 'auto-lang' mode now does the right thing.
17992         * doc/libtool.texi (The LT_INIT macro): Add documentation for
17993         new LT_INIT options and the LT_LANG macro, replacing the old
17994         documentation of AC_LIBTOOL_TAGS which is no more.
17995         * NEWS: Updated.
17996
17997 2004-03-17  Scott James Remnant  <scott@netsplit.com>
17998
17999         * m4/libtool.m4: Removed AC_BEFORE references to AC_LIBTOOL_SETUP
18000         which is no more.
18001         * m4/lt~obsolete.m4: As AC_LIBTOOL_SETUP is no longer referenced,
18002         it can be removed from this file.  Remove _AC_PROG_LIBTOOL also.
18003
18004 2004-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18005
18006         * m4/libtool.m4: Remove newlines from lt_ld_extra, so
18007         variable can safely be stored in config.cache.
18008
18009 2004-03-14  Michael Pruett  <michael@68k.org>
18010
18011         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS0 [irix]: Define
18012         archive_expsym_cmds so that --export-symbols will work.
18013
18014 2004-03-11  Peter O'Gorman  <peter@pogma.com>
18015
18016         * ltmain.in (link_all_deplibs,darwin): Link libraries in the
18017         correct order. Bug from Zachary Pincus <zpincus@stanford.edu>.
18018
18019 2004-03-14  Scott James Remnant  <scott@netsplit.com>
18020
18021         * m4/ltmain.in: Only check precious_files_regex if it is not empty.
18022
18023 2004-03-14  Gary V. Vaughan  <gary@gnu.org>
18024
18025         * doc/libtool.texi (Autoconf and LTLIBOBJS): The correct version
18026         of Autoconf is 2.54.
18027         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
18028
18029 2004-03-13  Gary V. Vaughan  <gary@gnu.org>
18030
18031         * doc/libtool.texi (Using Automake): Cite correct Automake version
18032         for -dlopen quoting.
18033         (Autoconf and LTLIBOBJS): Cite correct Autoconf versions
18034         throughout.
18035         (Distributing libltdl): Use AM_CPPFLAGS; INCLUDES is deprecated.
18036         From Alexandre Duret-Lutz  <adl@src.lip6.fr>
18037
18038 2004-03-05  David Edelsohn  <edelsohn@gnu.org>
18039
18040         * m4/libtool.m4: Disable building static libraries if building
18041         shared libraries on AIX 5L.
18042
18043 2004-03-05  Gary V. Vaughan  <gary@gnu.org>
18044
18045         * libtoolize.in: Remove --ltdl-tar.  It doesn't work with the
18046         current implementation, and seems more or less pointless.
18047         * doc/libtool.texi (Invoking libtoolize): Updated.
18048         * NEWS: Updated.
18049
18050         * doc/libtool.texi: This manual has not been maintained properly
18051         for a number of years.  Much of what it said was outdated, or
18052         plain wrong with reference to modern autotools.  This change
18053         represents a first pass edit to clean up the obviously wrong.
18054
18055 2004-03-02  Gary V. Vaughan  <gary@gnu.org>
18056
18057         * bootstrap: Prune out my arch mirror dir before running
18058         amok through the tree with 'rm -rf'!
18059
18060 2004-03-02  Patrick Welche  <prlw1@newn.cam.ac.uk>
18061
18062         * doc/libtool.texi (LT_INIT): Dumb typos fixed.
18063
18064 2004-02-23  Gary V. Vaughan  <gary@gnu.org>
18065
18066         * ltmain.in <install mode>: Add missing --help doc for
18067         -inst-prefix option.
18068
18069         * ltmain.in <link mode>: Add missing --help doc for -shrext
18070         option.
18071
18072         * ltmain.in (IFS): Move '\n' to beginning of IFS so that emacs
18073         doesn't offer to strip trailing ' \t' on every save.
18074
18075         * ltmain.in: Add missing --help doc for --preserve-dup-deps.
18076
18077 2004-02-22  Gary V. Vaughan  <gary@gnu.org>
18078
18079         * Makefile.maint (web-manual): Generate the web manual carefully
18080         so that links will still work when it is uploaded to gnu.org.
18081         * README-alpha: Note that this rule should be used at release
18082         time.
18083
18084 2004-02-20  Gary V. Vaughan  <gary@gnu.org>
18085
18086         Sweeping changes to the user interface to libtool from
18087         `configure.ac' to be more like AC_INIT and accept a space
18088         delimited list of options.  Instead of calling `AC_LIBTOOL_DLOPEN;
18089         AC_PROG_LIBTOOL', we now recommend `LT_INIT([dlopen])':
18090
18091         * m4/libtool.m4 (AC_PROG_LIBTOOL, _AC_PROG_LIBTOOL)
18092         (AC_LIBTOOL_SETUP): Removed.  Added AU_DEFUNs.
18093         (LT_INIT): Replace with an Autoconf like interface which accepts a
18094         version number as a minimum required libtool release at configure
18095         time.
18096         * m4/ltoptions.m4: New file inspired by automake/m4/amoptions.m4,
18097         which additionally flags an error if the configuring libtool
18098         macros are not new enough according to LT_INIT.
18099         (LT_OPTION_DEFINE): New macro to declare option handlers.
18100         (dlopen, win32-dll, shared, disable-shared, static)
18101         (disable-static, fast-install, disable-fast-install, pic-only)
18102         (no-pic): Newly LT_OPTION_DEFINEd option handlers that use...
18103         (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC, _LT_ENABLE_FAST_INSTALL)
18104         (_LT_WITH_PIC, _LT_WIN32_DLL): New macros to handle
18105         LT_LIBTOOL_INIT options...
18106         * m4/libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC)
18107         (AC_ENABLE_FAST_INSTALL, AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL):
18108         ...to replace these user interface macros, now defined as
18109         AU_DEFUNs.
18110         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
18111         Removed.  No longer required with LT_INIT_LIBTOOL interface.
18112         Added AU_DEFUNs.
18113         (AM_ENABLE_SHARED, AM_DISABLE_SHARED, AM_ENABLE_STATIC)
18114         (AM_DISABLE_STATIC): Changed AU_DEFUNs to match new interface.
18115         (_LT_SETUP): Internal to LT_INIT, replaces AC_LIBTOOL_SETUP.
18116         * m4/lt~obsolete.m4 (AC_LIBTOOL_SETUP, _AC_PROG_LIBTOOL)
18117         (_LT_PROG_LTMAIN):  More AC_DEFUNs that have been retracted.
18118         * configure.ac: Use new interface.
18119         * doc/libtool.texi: Document new interface.
18120         * NEWS: Updated.
18121
18122 2004-02-18  Gary V. Vaughan  <gary@gnu.org>
18123
18124         * commit (SHELL): Set it explicitly, incase some madman is using
18125         tcsh as their login shell :-b
18126
18127 2004-02-15  Scott James Remnant  <scott@netsplit.com>
18128
18129         * Makefile.am (m4/ltversion.m4): Generate serial number by
18130         removing initial '1.' from the revision, replace @MACRO_SERIAL@
18131         with this new variable.
18132         * m4/ltversion.in: Use @MACRO_SERIAL@ for the serial number
18133         as some shells don't like a '.' when using test.
18134
18135         * m4/ltversion.in: Add a serial number to this file otherwise
18136         libtoolize will refuse to copy it into $pkgdatadir, where it
18137         is needed by m4/libtool.m4.
18138
18139 2004-02-15  Peter O'Gorman  <peter@pogma.com>
18140
18141         * m4/libtool.m4, ltmain.in: Rename shrext to shrext_cmds.
18142
18143 2004-02-13  Scott James Remnant  <scott@netsplit.com>
18144
18145         * ltmain.in, libtoolize.in, commit, config/mailnotify: Correctly
18146         quote usage of $basename and $dirname to avoid (unlikely) path
18147         expansion.
18148
18149         * tests/sh.test: Test the config/ltmain.sh and libtoolize in the
18150         build directory not the source directory, where they won't exist
18151         during 'make distcheck'.
18152         * ltmain.in: Revert one line of previous intendation clean-up
18153         to enable one of the sh.test checks to pass.
18154
18155         * tests/cdemo/configure.ac: Drop AC_PREREQ back to 2.54, this
18156         was debris from Gary's cvsapply going mad and wasn't backed
18157         out.
18158
18159         * Makefile.am (pkgmacro_DATA): We have to distribute
18160         m4/ltversion.m4 because it can be needed before the Makefile
18161         that generates it exists.
18162
18163 2004-02-13  Gary V. Vaughan  <gary@gnu.org>
18164
18165         * commit (MKSTAMP): Look for mkstamp in the right place.
18166
18167 2004-02-12  Scott James Remnant  <scott@netsplit.com>
18168
18169         * Makefile.maint, Makefile: Move rules intended for Libtool
18170         maintainers only out of the Makefile we distribute and into one
18171         that we only need keep in CVS.
18172         * README-alpha: Add -fMakefile.maint to the instructions where
18173         needed.
18174
18175 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>
18176         Scott James Remnant  <scott@netsplit.com>
18177
18178         * ltmain.in: Fix typo: duplcations -> duplications,
18179         Fix indentation of a handful of badly indented blocks,
18180         Fix last remaining use of 'grep' to $GREP,
18181         Remove unnecessary trailing slash where we break a line on a
18182         command separator.
18183         * m4/libtool.m4: Also remove unnecessary trailing slash where
18184         we break a line on a command separator.
18185
18186 2004-02-12  Scott James Remnant  <scott@netsplit.com>
18187
18188         * m4/ltoptions.m4: This got committed by an over-keen Gary,
18189         but the support for this isn't ready yet and if aclocal decides
18190         to m4_include this (which it will) you'll get a non-functioning
18191         libtool.  Removed.
18192
18193         * ltmain.in: Remove duplicated version checking block.
18194
18195         * bootstrap, m4/libtool.m4: Argh, Gary went crazy after cvsapply
18196         went crazy and backed out more than he should've.  This patch puts
18197         some of it back again.
18198
18199         * ltmain.in, libtoolize.in, commit, config/mailnotify: Remove
18200         $SED from definitions of $dirname and $basename and prefix each
18201         use with it instead.  Some shells (zsh) treat the expansion as
18202         a single command instead of a command with arguments.
18203
18204         * config/mailnotify (func_sendmail): Look for sendmail in a
18205         couple of common non-PATH locations as well.
18206
18207         * ltmain.in: Fix typo: macro's -> macros.
18208
18209         * ltmain.in: Correct definition of basename sed expression to
18210         not include single quotes.
18211
18212 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
18213
18214         * libtoolize.in: Use $progpath as for ltmain.in to work around the
18215         IRIX bug described below.
18216         * commit, config/mailnotify: Ditto. Resynch with cvs-utils HEAD.
18217
18218 2004-02-12  Albert Chin-A-Young  <china@thewrittenword.com>,
18219             Gary V. Vaughan  <gary@gnu.org>
18220
18221         * ltmain.in (progpath): Work around backward compatibility issue
18222         on IRIX 6.5. On IRIX 6.4+, sh is ksh but when the shell is invoked
18223         as "sh" and the current value of the _XPG environment variable is
18224         not equal to 1 (one), the special positional parameter $0, within
18225         a function call, is the name of the function. So, rather than
18226         using "$0" in functions, we set $progpath in the body and use that
18227         everywhere instead (incase of code refactoring later).
18228         (EXIT_SUCCESS, EXIT_FAILURE, EXIT_MISMATCH): For clarity.
18229
18230 2004-02-12  Gary V. Vaughan  <gary@gnu.org>
18231
18232         * Makefile.am (EXTRA_DIST): Remove config/mailnotify after all; it
18233         is of no use in a distribution tarball.
18234
18235 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
18236
18237         * commit: Fix cut-n-paste error.
18238
18239         * commit: Completely change CVS/Root->name sed script to actually
18240         work when :ext: is not shown.
18241
18242         * commit: Improve CVS/Root->name sed script to work when :ext: is
18243         not shown.
18244
18245 2004-02-11  Albert Chin-A-Young  <china@thewrittenword.com>
18246
18247         * m4/libtool.m4: Fix typo: testring -> teststring.
18248
18249 2004-02-11  Gary V. Vaughan  <gary@gnu.org>
18250
18251         * commit: Mail a nicer commit notification.
18252
18253 2004-02-10  Gary V. Vaughan  <gary@gnu.org>
18254
18255         * NEWS, bootstrap, configure.ac, ltmain.in, m4/libtool.m4:
18256         * m4/lt~obsolete.m4, tests/cdemo/configure.ac: Arghh.  cvsapply just
18257         went crazy and committed a bunch of stuff that shouldn't have been
18258         in the last changeset.  The patch backs it all out.
18259
18260         * config/mailnotify: New file for mailing commit notifications,
18261         imported from cvs-utils.
18262         * commit: Updated from cvs-utils and tweaked for libtool.
18263         * Makefile.am (EXTRA_DIST): Add config/mailnotify.
18264
18265 2004-02-06  Gary V. Vaughan  <gary@gnu.org>
18266
18267         * bootstrap: Remove vcl.tmp, otherwise it can interfere with make.
18268         * Makefile.am (vcl.tmp): Move comment out of multi-line command,
18269         as this rule is called from bootstrap as if it were a Makefile.
18270
18271         * m4/ltversion.in: New file to capture what version number macros
18272         are being used.
18273         * Makefile.am (m4/ltversion.m4): New rule to create it from
18274         m4/ltversion.in.
18275         (nodist_pkgmacro_DATA): Add m4/ltversion.m4.
18276         (EXTRA_DIST): Add m4/ltversion.in.
18277         * m4/libtool.m4 (AC_LIBTOOL_SETUP): AC_REQUIRE LTVERSION_VERSION
18278         from ltversion.m4.
18279         * bootstrap: Call the Makefile.am to create an initial
18280         m4/ltversion.m4.
18281         * ltmain.in: Diagnose version mismatches of various flavours.
18282         * TODO: Remove mismatch item.
18283         * NEWS: Updated.
18284
18285         * Makefile.am ($(top_builddir)/config.status): Removed.
18286         * configure.ac (CONFIG_STATUS_DEPENDENCIES): This substitution is
18287         how automake-1.8 now informs all Makefiles when config.status
18288         needs to be rebuilt.
18289         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
18290
18291         * configure.ac (AC_CONFIG_FILES): Generate libtoolize from here.
18292         * Makefile.am (libtool, libtoolize): These rules are redundant.
18293         Automake generates better rules for remaking these files.
18294
18295         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Catch unexpanded macros with
18296         beginning with LT_ and _LT_.
18297         * configure.ac (LT_MAJOR, LT_MINOR, LT_MICRO, LT_ALPHA): Renamed
18298         to lt_major, lt_minor, lt_micro, lt_alpha to save triggering the
18299         unexpanded macros error.
18300
18301         * m4/libtool.m4 (AC_PROVIDE_IFELSE): Removed.  We now require
18302         Autoconf 2.58, which ships this macro anyway.
18303
18304         * Makefile.am: Comment typo.
18305
18306         * m4/libtool.m4 (LT_PREREQ): Declare the minimum release number
18307         that is required for the calling code.
18308         * doc/libtool.texi (AC_PROG_LIBTOOL): Document it.
18309         * NEWS: Updated.
18310
18311 2004-02-05  Peter O'Gorman  <peter@pogma.com>
18312
18313         * ltmain.in (infer_tag, win32_libid): Style changes. Rename
18314         infer_tag to func_infer_tag and win32_libid to func_win32_libid.
18315         * m4/libtool.m4 (cygwin): rename win32_libid to func_win32_libid.
18316
18317 2004-02-04  Peter O'Gorman  <peter@pogma.com>
18318
18319         * ltmain.in (infer_tag): Move tag inferrence to a shell function.
18320         Also test $base_compile against $CC with escaped arguments. Bug
18321         reported by Geoff Keating <geoffk@apple.com>.
18322
18323 2004-02-03  Scott James Remnant  <scott@netsplit.com>
18324
18325         * Makefile.am (install-data-hook): Manually make config.guess
18326         and config.sub executable after they are installed as _DATA.
18327         We can't use _SCRIPTS because the various program name
18328         transforms may be applied to them.
18329         (dist_pkgdata_DATA): List config.guess and config.sub here
18330         (pkgdata_SCRIPTS): instead of here.
18331
18332 2003-02-03  Scott James Remnant  <scott@netsplit.com>
18333
18334         * ltmain.in: Create temporary directory under a strict umask
18335         rather than running chmod afterwards, preventing a race
18336         condition where the directory could be replaced with a symbolic
18337         link in the time between the two commands.
18338
18339 2004-01-31  Peter O'Gorman  <peter@pogma.com>
18340
18341         * m4/libtool.m4 (_LT_CONFIG_STATUS_DECLARE): Change `echo to
18342         `$echo, causes problems when builtin echo is broken. Reported
18343         by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18344
18345 2004-01-27  Scott James Remnant  <scott@netsplit.com>
18346
18347         This fixes release procedure problems discovered whilst making
18348         the 1.5.2 release.
18349
18350         * Makefile.am (cvs-dist): Because we check whether ChangeLog
18351         has been committed, this rule can't be run with uncommitted
18352         source so we can't run 'commit' and don't need to run
18353         'make dist' a second time.  Fix CVS tag as it should be
18354         "release-X" not "Release-X".
18355         (cvs_commit): New rule for the cvs-release chain that runs
18356         'commit'
18357         (cvs-release): Depend on cvs-commit, depend on deltas instead of
18358         cvs-diff and xdelta.
18359         (cvs-diff): Removed, replaced with delta-diff.
18360         (delta-diff): Unpack and diff the old and new tarballs rather
18361         than using CVS, so we get a genuinely complete diff.
18362         (xdelta): Removed, replaced with delta-xdelta.
18363         (got-xdelta): New rule for improved reading.
18364         (delta-xdiff): Copied and cleaned up version of old xdelta rule.
18365         (deltas): Depends on delta-diff and delta-xdelta (make deltas).
18366         (cvs-news): Don't depend on timestamps, cvs-dist itself does now.
18367         (prev-tarball): This is the only place we need a LASTRELEASE check
18368         so copy the code here and remove the CHECK_RELEASE variable.
18369         (new-tarball): Check there's a new tarball (did cvs-dist work?)
18370         (FETCHFILES): Remove obsolete libltdl mentions.
18371         * README-alpha: Update CVS instructions as everything's changed
18372         on Savannah.
18373         (Release procedure): Update NEWS and ChangeLog after changing
18374         the version number (both times); Run 'make fetch' after running
18375         'configure' (difficult to do it beforehand); Require 'commit'
18376         before 'make cvs-dist' as that checks ChangeLog is committed;
18377         'make deltas' instead of 'cvs-diff' and 'xdelta', pass LASTRELEASE
18378         to make instead of OLDVERSION (and it's mandatory); Clean up
18379         uploading paragraph; Clearer announcement sending instruction;
18380         Removed ftp-upload@gnu.org mail as that's not necessary now;
18381         Make web page updating instructions a bit clearer; Add an instruction
18382         to update the manual for non-alphas.
18383         (Alpha release note template): Add a Subject; update CVS instructions.
18384         (Full release note template): Add a Subject; update CVS instructions.
18385         * configure.ac: Add dist-bzip2 to AM_INIT_AUTOMAKE as we talk
18386         about bz2 files in our release announcements; remove old reference
18387         to OLDVERSION.
18388
18389 2004-01-25  Scott James Remnant  <scott@netsplit.com>
18390
18391         * NEWS: Include 1.5.2 release information.
18392
18393 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
18394
18395         This fixes a bug in the libtoolize ltdl source installation rules,
18396         which were copying Makefile.in from the libtool tree into the
18397         package running libtoolize.  Now we explicitly list the files to
18398         copy to force the package to generate its own Makefile.in:
18399
18400         * libltdl/Makefile.am (libltdl_la_SOURCES, libltdlc_la_SOURCES):
18401         Add ltdl.h.
18402         (ltdldatadir): New variable for installation directory of
18403         libtoolize --ltdl files.
18404         (ltdldata_DATA): Tell automake what files to copy there at install
18405         time (and remove at unistall time!).
18406         (local-install-files): Removed.  This hack is not required
18407         anymore, the automake generated install rules are much more
18408         advanced than this.
18409         * Makefile.am (install-data-hook, uninstall-local): Removed.
18410         Libltdl files for libtoolize are installed by their own Makefile
18411         now.
18412
18413 2004-01-22  Jeff Squyres  <jsquyres@lam-mpi.org>
18414
18415         * m4/libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Some compilers
18416         (e.g. Intel Linux icc compiler) write temporary files to the current
18417         directory. These compilers do support -c and -o simultaneously but
18418         wrongly fail the test due to the failure to create temporary
18419         files. It is incorrect to penalize compilers which write temporary
18420         files to the current directory so the 'chmod -w .' is therefore
18421         removed.
18422
18423 2004-01-22  Gary V. Vaughan  <gary@gnu.org>
18424
18425         * m4/libtool.m4 (LT_AC_PROG_EGREP): Wrapper for AC_PROG_GREP.
18426         AIX has a brain-dead grep that only handles lines < 2048
18427         characters.  Default GREP incase we are not using a future
18428         autoconf that sets it for us :-)  Changed all callers to use $GREP
18429         instead of grep, and to AC_REQUIRE LT_AC_PROG_EGREP.
18430         Declare GREP as a libtool config var.
18431         * ltmain.in: Use it.
18432         * tests/sh.test (scripts): Accept `if $GREP "^foo=bar"' by
18433         tightening the regexp.
18434         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
18435
18436 2004-01-21  Nick Hudson  <skrll@netbsd.org>
18437
18438         * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [netbsd*]: Remove
18439         gratuitous ${libname}${release}${shared_ext} from
18440         library_names_spec.
18441
18442 2004-01-21  Peter O'Gorman  <peter@pogma.com>
18443
18444         * m4/libtool.m4 (AC_PROG_LD_RELOAD_FLAG): On darwin change the
18445         reload_cmds to use $CC, otherwise ld will thin out any fat
18446         objects.
18447
18448 2004-01-18  Benjamin Reed  <ranger@befunk.com>
18449
18450         * ltmain.in: Fix handling of frameworks in search paths.  Also
18451         a one-liner fix to eval shrext in the libtool library search.
18452
18453 2004-01-16  Gary V. Vaughan  <gary@gnu.org>
18454
18455         * configure.ac (AM_INIT_AUTOMAKE): Require 1.8 for bootstrap, or
18456         else aclocal.m4 is huge, and m4 directory is not distributed.
18457
18458         * configure.ac (AC_CONFIG_HEADERS): Create config.h in
18459         $top_srcdir.
18460         * m4/ltdl.m4 (AC_LIB_LTDL): Run AC_CONFIG_HEADERS for the user if
18461         necessary. Calculate filename from first argument to
18462         AC_CONFIG_HEADERS, and substitute as CONFIG_H.
18463         * libltdl/Makefile.am (AM_CPPFLAGS): Make sure we are searching in
18464         $top_srcdir for headers.
18465         (DEFS): Override the default HAVE_CONFIG_H with the config.h
18466         filename.
18467         (ltdl.lo): Reference config.h via $(CONFIG_H).
18468         * libltdl/ltdl.c (HAVE_CONFIG_H): Ditto.
18469
18470 2004-01-15  Scott James Remnant  <scott@netsplit.com>
18471
18472         * m4/lt~obsolete.m4: Add a file containing aclocal-fooling
18473         macro definitions which stop the contents of an installed
18474         libtool.m4 ending up in our aclocal.m4 when we bootstrap.
18475         * Makefile.am (pkgmacro_DATA): Note that we don't need to add
18476         lt~obsolete.m4 to this list.
18477
18478 2004-01-12  Gary V. Vaughan  <gary@gnu.org>
18479
18480         * m4/libtool.m4 (_LT_COPYING): Factor out copyright message so it
18481         only needs to be updated in one place.
18482         (AC_LIBTOOL_CONFIG): Refactor to be more readable.  Only add
18483         tags if a compiler was found; ie if you have no gcj compiler,
18484         don't tack the GCJ tag onto the generated libtool script.
18485
18486 2004-01-13  Peter O'Gorman  <peter@pogma.com>
18487
18488         * m4/libtool.m4: Quote shrext as it is evaled in ltmain.
18489
18490 2004-01-11  Scott James Remnant  <scott@netsplit.com>
18491
18492         * ltmain.in: new -precious-files-regex link mode option
18493         to prevent removal of matching files from the temporary
18494         output directory.
18495         (Debian Bug #221420)
18496         * doc/libtool.texi: document the new option.
18497         * NEWS: announce the new option.
18498
18499 2004-01-11  Gary V. Vaughan  <gary@gnu.org>
18500
18501         * libtoolize.in (func_copy_all_files): s/xfunc_copy/Xfunc_copy.
18502         Now the test can actually succeed sometimes.
18503
18504 2004-01-09  Gary V. Vaughan  <gary@gnu.org>
18505
18506         * libtoolize.in: Break out of the command argument parse loop when
18507         -- is encountered.
18508
18509 2004-01-08  Gary V. Vaughan  <gary@gnu.org>
18510
18511         * libtoolize.in (func_copy_all_files): s/test "x/test "X/ to keep
18512         tests/sh.test happy.
18513
18514 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
18515
18516         * Makefile.am (aclocal_macros, aclocal_DATA): Removed.
18517         (EXTRA_DIST): Remove m4 macro files; they are automatically
18518         added by automake.
18519         (pkgmacrodir): Where to install libtool macro files.
18520         (pkgmacro_DATA): List installable libtool macro files.
18521         (install-data-local): Remove previous versions of ltdl.m4 and
18522         libtool.m4 from their old location.
18523         * libtoolize.in: Use new pkgmacrodir installed macros when
18524         libtoolizing a project.  Treat libtool.m4 and ltdl.m4 specially,
18525         and func_serial_update() any other files from pkgmacrodir.
18526         (pkgmacrodir): Where to find installed libtool macro files.
18527         (aclocaldir): Removed.
18528         (func_copy_all_files): Add an optional callback parameter to
18529         control how files are copied.  If the callback is passed, don't
18530         tell it whether it can copy or not.
18531         (func_serial): Exchange parameters and make macro_regex optional,
18532         so that this function can be used to extract serial numbers from
18533         files with the traditional /^# serial [1-9][0-9]*$/ syntax.
18534         Changed all callers.
18535         (func_serial_update): Make macro_regex optional last parameter, so
18536         that this function can be used as a callback for
18537         func_copy_all_files().  Changed all callers.
18538         * m4/ltsugar.m4: Add a serial number.
18539
18540 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
18541
18542         A complete rewrite of the m4 code involved in the generation of
18543         libtool via config.status.  The old way involved manually
18544         synchronising disparate bits of shell code in several macros, to
18545         quote a copy of a shell variable, put that in config.status, maybe
18546         add it to some quotation loops to prevent early expansion, and
18547         then add a block to _LT_CONFIG_COMMANDS to bring it into the
18548         libtool script.  The new way is to mark shell variables for
18549         propogation using _LT_DECL for language independent variables, or
18550         _LT_TAGDECL for those that need to be propogated in several
18551         language flavours.  The marking can be done in the macro that
18552         probes the variables, and this new m4 machinery takes care of
18553         synchronising all the other bits of code at autoconf time:
18554
18555         * m4/ltsugar.m4:  New file.  Macros that are useful outside the
18556         context of libtool.  Initially, contains some generalised list
18557         management macros, and the scaffolding for dictionary type data
18558         storage and retrieval.
18559         * Makefile.am (aclocal_macros): Install ltsugar.m4.
18560         * m4/libtool.m4 (_LT_DECL): Mark a shell variable for export to
18561         the libtool script, along with a comment, and hints for quoting
18562         and renaming.
18563         (_LT_TAGDECL): Similarly mark a tagged shell variable for export
18564         in each tag.
18565         (lt_decl_tag_varnames, lt_decl_quote_varnames)
18566         (lt_decl_dquote_varnames, lt_decl_varnames_tagged)
18567         (lt_decl_all_varnames):  New utility macros for managing lists of
18568         shell variable names from _LT_DECL and _LT_TAGDECL.
18569         (_LT_CONFIG_STATUS_DECLARATIONS, _LT_CONFIG_STATUS_DECLARE):
18570         Expand to correctly quoted variable declarations in config.status
18571         from all marked shell variables.
18572         (_LT_LIBTOOL_DECLARE): Expand to commented and quoted variable
18573         declaration for libtool tag section.
18574         (_LT_LIBTOOL_CONFIG_VARS, _LT_LIBTOOL_TAG_VARS): Pass all marked
18575         variables to _LT_LIBTOOL_DECLARE.
18576         (_LT_CONFIG_COMMANDS): Use _LT_CONFIG_STATUS_DECLARATIONS and
18577         friends to generate all the variable passing shell code for
18578         config.status, to get marked variables from libtool.m4 into
18579         libtool itself eventually.
18580         (AC_LIBTOOL_CONFIG): Generate marked variable code for libtool tag
18581         configuration.  Changed all client macros to mark variables
18582         suitably rather than the hand pasting that was necessary
18583         previously.
18584         (AC_PROG_SED): Renamed from LT_AC_PROG_SED.
18585         (LT_AC_PROG_SED): Wrap AC_PROG_SED, and mark shell variables for
18586         propogation to the libtool script.
18587
18588 2004-01-07  Gary V. Vaughan  <gary@gnu.org>
18589
18590         * libtoolize.in (seen_gettext): Removed unused variable.
18591
18592 2004-01-06  Gary V. Vaughan  <gary@gnu.org>
18593
18594         * libtoolize.in (func_scan_files): Don't assume the existence of
18595         aclocal.m4.  Make the comment more descriptive.
18596         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
18597
18598         * NEWS: Note libtoolize changes.
18599
18600         * ChangeLog.2003: New file, containing all the ChangeLog entries
18601         from 2003.  Trimmed ChangeLog accordingly.
18602
18603         * ltmain.in: Output 2004 in the copyright from libtool --version.
18604
18605 2004-01-03  Stefan Nordhausen  <nordhaus@informatik.hu-berlin.de>
18606         Scott James Remnant  <scott@netsplit.com>
18607
18608         * ltmain.in: Don't use the mkdir -p option when creating a
18609         temporary output directory so a symlink attack can't be used to
18610         arbitrarily chmod other directories on the system if libtool
18611         gets run as root.
18612
18613 2004-01-02  Peter O'Gorman  <peter@pogma.com>
18614
18615         * m4/libtool.m4: Ensure that ${ZSH_VERSION+set} is properly escaped.
18616
18617         * m4/libtool.m4 (CDPATH): Change the CDPATH setting so that it
18618         allows for zsh differences, as noted in the autoconf manual's
18619         Portable Shell - Special Shell Variables section.
18620
18621 2004-01-02  Scott James Remnant  <scott@netsplit.com>
18622
18623         * .cvsignore: Ignore stamp-vcl created by the Makefile.
18624
18625 2004-01-02  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
18626         Joe Orton  <joe@manyfish.co.uk>
18627
18628         * m4/libtool.m4 (AC_LIBTOOL_CONFIG): Add extra blackslash
18629         in front of all the inner double-quotes as this is removed
18630         on Solaris, IRIX and AIX leading to broken definitions
18631         in config.status.
18632
18633 2004-01-02  Scott James Remnant  <scott@netsplit.com>
18634
18635         * NEWS: Next release will be in 2004.
18636
18637 2003-12-31  Scott James Remnant  <scott@netsplit.com>
18638
18639         * ltmain.sh: Infer tagged configuration for link mode with the
18640         full compiler arguments available rather than only the first.
18641
18642 2003-12-31  Alexandre Duret-Lutz  <adl@gnu.org>
18643
18644         * ltmain.sh: Quote $exec_cmd before it is eval'ed, so that
18645         libtool --mode=execute echo '4 * 5' does not expand the `*'.
18646
18647 2003-11-28  Peter O'Gorman  <peter@pogma.com>
18648
18649         * m4/libtool.m4: Move things around so that "setopt NO_GLOB_SUBST"
18650         to make zsh behave wrt \ escapes happens early in config.status.
18651
18652 2003-11-27  Gary V. Vaughan  <gary@gnu.org>
18653
18654         * libltdl/configure.ac: Removed.
18655         * configure.ac (AC_CONFIG_HEADERS): Merged from
18656         libltdl/configure.ac.
18657         (AC_LIB_LTDL): Ditto.
18658         (AC_CONFIG_FILES): Add libltdl/Makefile.
18659         (AC_CONFIG_SUBDIRS): Removed.
18660         (AC_CONFIG_COMMANDS): Remove generation of libltdl/ltmain.sh.
18661         * libltdl/Makefile.am (libtool): Removed references, since we now
18662         share $(top_builddir)/libtool.
18663         * NEWS: Updated.
18664
18665 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18666
18667         * Makefile.am (vcl.tmp): Be careful of VPATH builds.
18668
18669         * Makefile.am (EXTRA_DIST): Add stamp-vcl, or we go back to a
18670         double configure run from a distributed tarball :-?
18671
18672 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18673
18674         Okay, the problem I am trying to solve is that when a change (say,
18675         bumping the version to 1.6 for the next release) is committed, the
18676         timestamp in ChangeLog is updated, but ltmain.sh and libtoolize
18677         inherit the pre-commit build number from config.status.  This
18678         delta notes the change in build number in the unstamped ChangeLog
18679         and forces a rerun of configure etc. to roll a new ltmain.sh with
18680         the correct TIMESTAMP:
18681
18682         * Makefile.am (stamp-vcl): We actually need a new config.status to
18683         force the correct timestamp into libtoolize and ltmain.sh,
18684         rerunning autoconf has no effect at all if configure.ac hasn't
18685         changed.
18686
18687 2003-11-26  Gary V. Vaughan  <gary@gnu.org>
18688
18689         * Makefile.am (stamp-vcl): New rules to force libtool and
18690         libtoolize scripts to update when the TIMESTAMP changes in
18691         ChangeLog, but the file modification time doesn't (e.g in cvs
18692         commit).  Otherwise we'll carry on releasing tarballs with the
18693         wrong version numbers in the tools!
18694
18695         * config/mkstamp: Change output format to ` $rev $date'.
18696         * configure.ac: Make the banner more like suggestions in
18697         http://www.gnu.org/prep/standards_toc.html Section 4.6.
18698         * libtoolize.in: Make --version output conform to the GNU
18699         standard.
18700         * ltmain.in: Ditto. And tweak the generated file headers to
18701         match.
18702
18703 2003-11-25  Gary V. Vaughan  <gary@gnu.org>
18704
18705         * Makefile.am (config.status): Removed.  Rebuilding config.status
18706         isn't enough, because the TIMESTAMP in configure is still out
18707         of date.
18708         (configure): We actually need a new configure to force the
18709         correct timestamp into ltmain.sh.
18710
18711         * Makefile.am (config/ltmain.sh): Removed.  Rebuilding ltmain.sh
18712         isn't enough, because the TIMESTAMP in config.status is still out
18713         of date.
18714         (config.status): We actually need a new config.status to force the
18715         correct timestamp into ltmain.sh.
18716
18717         * Makefile.am (config/ltmain.sh): Note the dependency on the
18718         timestamp in ChangeLog so we don't ship libtools that report the
18719         wrong version number :-/
18720
18721         * bootstrap: Explain automake and autoconf version dependencies
18722         truthfully, and the difference between bootstrap and user
18723         dependencies.
18724         * configure.ac (AM_INIT_AUTOMAKE): List AUTOMAKE_OPTIONS here.
18725         * Makefile.am, doc/Makefile.am, tests/Makefile.am
18726         (AUTOMAKE_OPTIONS): Removed from here.
18727
18728 2003-11-24  Gary V. Vaughan  <gary@gnu.org>
18729
18730         * tests/defs (func_configure): cdemo, demo and mdemo are shows
18731         signs of indeterminacy for some users.  Be more verbose during
18732         failure to help track down the cause.
18733
18734 2003-11-22  Peter O'Gorman  <peter@pogma.com>
18735
18736         * ltmain.in: Check for module_cmds if max_cmd_len is exceeded too.
18737
18738         * ltmain.in: Move eval to after command separation to allow ~ in paths.
18739
18740         * tests/demo-hardcode.test: Call ./libtool not libtool.
18741
18742         * ltmain.in: Test $old_striplib before using it, not $striplib.
18743
18744 2003-11-22  Gary V. Vaughan  <gary@gnu.org>
18745
18746         * configure.ac (LASTRELEASE): Calculate it as best as we can from
18747         AC_PACKAGE_VERSION.
18748         * Makefile.am (distdir): Remove dependency on timestamps so that
18749         it is possible to roll a dist without contacting the cvs server.
18750         Use `make cvs-release' for that.
18751         (cvs-news): Extracted from cvs-dist.
18752         (cvs-dist): Depend on cvs-news.
18753         (CHECK_LASTRELEASE): Check LASTRELEASE has been set.
18754         (prev-tarball): New rule.  Use LASTRELEASE to make sure the
18755         previous release tarball is present.
18756         (cvs-diff): Use CHECK_LASTRELEASE.
18757         (xdelta): Ditto.
18758         (cvs-release): Depend on prev-tarball, timestamps, cvs-news and
18759         fetch. Provided you set LASTRELEASE appropriately, making a full
18760         cvs release is just a matter of `make cvs-release', and submitting
18761         the files to ftp-upload.
18762
18763 2003-11-19  Gary V. Vaughan  <gary@gnu.org>
18764
18765         * m4/libtool.m4 (_LT_PROG_LTMAIN): Ensure config.status has a
18766         value for `ac_aux_dir' when automake is not used.
18767         Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
18768
18769         * configure.ac (AC_PREREQ): AS_HELP_STRING was introduced after
18770         autoconf-2.57 was released.
18771
18772 2003-11-18  Gary V. Vaughan  <gary@gnu.org>
18773
18774         * libltdl/ltdl.c (lt_dlhandle_find): New function to find a handle
18775         by module name.
18776         * libltdl/ltdl.h (lt_dlhandle_find): Declare it.
18777         * doc/libtool.texi (User defined module data): Document it.
18778         * NEWS: Updated.
18779
18780 2003-11-17  Gary V. Vaughan  <gary@gnu.org>
18781
18782         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Uncomment call to
18783         _LT_CONFIG_COMMANDS.
18784         (_LT_AC_TAG_CONFIG, AC_LIBTOOL_CONFIG): Accumulate tag generation
18785         for `config.status' using _LT_CONFIG_SAVE_COMMANDS.  Remove
18786         AC_MSG_NOTICE noise now that libtool is generated by a single
18787         config.status tag.
18788         * Makefile.am (libtool): Specify CONFIG_COMMANDS properly now that
18789         libtool is generated in one pass.
18790
18791         * configure.ac (CONF_SUBDIRS): Make these relative to
18792         tests/Makefile.am.
18793         (DIST_MAKEFILE_LIST): Adjust to compensate for having removed the
18794         `tests/' part in CONF_SUBDIRS.
18795         * tests/Makefile.am (DIST_SUBDIRS): Distribute these directories.
18796         (SUBDIRS): Set to `.', a NOP, to workaround an automake bug which
18797         ignores DIST_SUBDIRS unless SUBDIRS is also set.
18798         * Makefile.am (DIST_SUBDIRS): Don't try to distribute the tests
18799         subdirectories from here, since the recursive automake dist rule
18800         only works with direct child directories.  Defer to
18801         tests/Makefile.am in this case.
18802
18803 2003-11-15  Scott James Remnant  <scott@netsplit.com>
18804
18805         * ltmain.in: In compile mode, delay parsing of -shared, -static,
18806         -prefer-pic and -prefer-non-pic until after tagged configuration
18807         has been read.  In link mode, read tagged configuration before
18808         parsing any arguments.  These arguments will now work when using
18809         a non-C compiler.
18810
18811 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
18812
18813         * NEWS: Mention AC_LIBTOOL_TAGS.
18814
18815         * Makefile.am (EXTRA_DIST): List ChangeLog files correctly.
18816
18817         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18818         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18819         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18820         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Declare just
18821         the tags we need using AC_LIBTOOL_TAGS, reducing the size of the
18822         configure script by 50% in most cases.
18823
18824 2003-11-14  Marius Vollmer  <mvo@zagadka.de>
18825
18826         * doc/libtool.texi (Libltdl interface): libltdl does in fact load
18827         dependency libs for lt_dlopen()ed modules.
18828
18829 2003-11-14  Gary V. Vaughan  <gary@gnu.org>
18830
18831         Run our configure.ac files through Autoconf 2.59's autoupdate, and
18832         then tweak the results by hand:
18833
18834         * m4/libtool.m4 (AC_PROG_LD): In common with all the other
18835         AC_PROG_ macros, AC_SUBST the discovered LD.
18836         (AC_PROG_NM): Similarly for NM.
18837         (LT_AC_PROG_SED): Similarly for SED.
18838         * configure.ac: No need to SUBST NM and LD manually any more.
18839         (AC_PREREQ): Conservatively downgrade from 2.59 to 2.54.
18840         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18841         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18842         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18843         tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Ditto.
18844         * m4/libtool.m4 (AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
18845         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC,
18846         AM_PROG_LD, AM_PROG_NM): AU_DEFUN these macros so autoupdate can
18847         use the newer definitions.
18848
18849 2003-11-12  Gary V. Vaughan  <gary@gnu.org>
18850
18851         The rules for uploading releases to gnu.org have been updated, and
18852         are in fact now rather complicated.  This delta updates the
18853         release instructions to the describe the new process, and updates
18854         the maintainer rules to help automate many of the steps:
18855
18856         * README-alpha: Updated release instructions.
18857         * Makefile.am (GPG): Name of the program for generating signatures
18858         for files to be uploaded.
18859         (XDELTA, XDELTA_OPTIONS): Invocation of xdelta.
18860         (cvs-dist): Run distcheck before tagging the cvs tree incase
18861         distcheck fails, and then generate the gpg signature files.
18862         (cvs-diff): Generate the gpg signature files for the diff.
18863         (xdelta): New rule for generating the xdelta diffs and associated
18864         gpg signature files.
18865         (cvs-release): New rule to do all of the above, if you don't mind
18866         typing your gpg passphrase over and over again. :-)
18867         (fetch): New rule inspired by automakes similar rule for updating
18868         files maintained outside the project.
18869         * config/config.guess, config/config.sub: Updated with the new
18870         fetch rule.
18871
18872 2003-11-11  Gary V. Vaughan  <gary@gnu.org>
18873
18874         * libltdl/ltdl.c (lt_dlinit): Save a function call for each loader
18875         added to the list, in exchange for appending loaders to the list
18876         with O(N) rather than O(1).  The longest the loader list can ever
18877         get is 4 (on cygwin with dld installed) so it probably constitutes
18878         a small speedup, in addition to making the code much more readable.
18879
18880         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Don't define the value for
18881         ltmain unconditionally.
18882         (_LT_PROG_LTMAIN): New macro to ensure that the
18883         shell variable `ltmain' actually points at a suitable `ltmain.sh'.
18884         (_AC_PROG_LIBTOOL): Require it.
18885         (AC_LIBTOOL_CONFIG, _LT_AC_TAG_CONFIG): Invoke it.
18886         * Makefile.am (libtool): ltmain.sh is in the build tree.
18887         * libltdl/configure.ac: Ditto.
18888
18889 2003-11-10  Scott James Remnant  <scott@netsplit.com>
18890
18891         * ltmain.in: Add -pthread and similar to $deplibs ($compile_deplibs
18892         and $finalize_deplibs for programs) when found on the command line
18893         or in a .la file's dependency_libs (but don't place them there) so
18894         they are honoured when linking both programs and libraries.
18895
18896 2003-11-10  Scott James Remnant  <scott@netsplit.com>
18897
18898         * m4/libtool.m4  (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [linux]: Include
18899         directories found in /etc/ld.so.conf in sys_lib_dlsearch_path_spec.
18900
18901 2003-11-09  Peter O'Gorman  <peter@pogma.com>
18902
18903         * ltmain.in (linkalldeplibs,darwin): Fix a bug reported by Idar
18904         Tollefsen where a dir could be added to the link line with no '-L'
18905         on darwin.
18906
18907 2003-11-07  Gary V. Vaughan  <gary@gnu.org>
18908
18909         * tests/cdemo/configure.ac, tests/demo/configure.ac,
18910         tests/depdemo/configure.ac, tests/f77demo/configure.ac,
18911         tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
18912         tests/pdemo/configure.ac, tests/tagdemo/configure.ac:
18913         s/AM_PROG_LIBTOOL/AC_PROG_LIBTOOL/. Marching boldly into the 21th
18914         century :-$
18915
18916         * m4/libtool.m4 (AC_LIBTOOL_TAGS, AC_ENABLE_SHARED,
18917         AC_DISABLE_SHARED, AC_ENABLE_STATIC, AC_DISABLE_STATIC,
18918         AC_ENABLE_FAST_INSTALL, AC_DISABLE_FAST_INSTALL, AM_PROG_LIBTOOL,
18919         AM_ENABLE_SHARED, AM_ENABLE_STATIC, AM_DISABLE_SHARED,
18920         AM_DISABLE_STATIC): These macros must be AC_DEFUNed after all,
18921         otherwise aclocal can't find them when it tries to construct
18922         `aclocal.m4'.
18923
18924         * Makefile.am (install-data-local): Wipe out old installation
18925         pkgdatadir before installing new files.
18926         * NEWS: Updated.
18927
18928         * libtoolize.in (func_scan_files): If libtoolize is run before
18929         automake has created install-sh and configure.ac does not mention
18930         AC_CONFIG_AUX_DIR, fall back to the current directory for auxdir.
18931
18932 2003-11-07  Robert Millan  <zeratul2@wanadoo.es>
18933
18934         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD) [GNU/KNetBSD]: Detect
18935         inter-library dependencies.
18936
18937 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
18938
18939         * m4/libtool.m4 (_LT_AC_FILE_LTDLL_C): Removed; no longer in use.
18940
18941         * m4/libtool.m4: s/ifelse(/m4_if(/g
18942         (_LT_AC_SYS_LIBPATH_AIX, _LT_AC_SHELL_INIT,
18943         _LT_AC_PROG_ECHO_BACKSLASH, AC_LIBTOOL_LINKER_OPTION,
18944         AC_LIBTOOL_TAGS, _LT_AC_TAG_CHECK, _LT_AC_TAG_CONFIG,
18945         AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC,
18946         AC_DISABLE_STATIC, AC_ENABLE_FAST_INSTALL,
18947         AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_C_CONFIG,
18948         _LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG,
18949         _LT_AC_TAGVAR, AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
18950         AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC): Use
18951         m4_define instead of AC_DEFUN for internal macros that do not
18952         AC_PROVIDE or AC_REQUIRE, and documented user macros that cannot
18953         be AC_REQUIREd because they need arguments, or because that would
18954         violate the documented API.
18955
18956         * m4/libtool.m4 (AC_LIBTOOL_SETUP): Add a new
18957         delay_single_quote_subst sed script to quote single quotes in
18958         variables that are copied to `config.status'.
18959         (_LT_CONFIG_STATUS_DECLARE): New macro to apply
18960         delay_single_quote_subst to a named variable.
18961         (AC_LIBTOOL_CONFIG): Use _LT_CONFIG_STATUS_DECLARE to declare all
18962         `configure' variables that are copied to `config.status'.
18963         (AC_LIBTOOL_PROG_COMPILER_PIC): Fix a quoting bug exposed by
18964         _LT_CONFIG_STATUS_DECLARE using the null quadrigraph in the
18965         rvalues of lt_prog_compiler_pic.
18966
18967 2003-11-06  Owen Taylor  <otaylor@redhat.com>
18968
18969         * m4/libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Recognise the
18970         'R' symbol type so read-only symbols can be exported when combining
18971         GCC and Solaris LD.
18972
18973 2003-11-06  James Henstridge  <james@daa.com.au>,
18974         Scott James Remnant  <scott@netsplit.com>
18975
18976         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [Linux]: Fix the
18977         -export-symbols and -export-symbols-regex options.
18978
18979 2003-11-06  Scott James Remnant  <scott@netsplit.com>
18980
18981         * tests/demo-nopic.test: Skip test on hppa, which don't like
18982         non-PIC shared libraries.
18983
18984 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>
18985
18986         * tests/depdemo/configure.ac, tests/mdemo/configure.ac,
18987         tests/mdemo2/configure.ac: process 'libtool --features'
18988         from Makefile, not configure -- because libtool doesn't
18989         exist at configure time.
18990
18991         * ltmain.in (find_executable, check_executable) [cygwin*, mingw*]:
18992         binary wrapper used with uninstalled executables breaks when
18993         invoked via execlp/execvp (that is, via $PATH).  Handle that case.
18994         (fnqualify): Subsumed into find_executable.
18995
18996         * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin*, mingw*]:
18997         when extracting symbols from an import lib (occurs if
18998         --enable-shared --disable-static), the output of
18999         $global_symbol_pipe is not the same as  when extracting from a
19000         static library (the default case). Add extra filters to
19001         $export_symbols_cmds to process this sort of output in addition to
19002         'normal' static-lib output.
19003         * NEWS: Updated.
19004
19005 2003-11-06  Charles Wilson  <cwilson@ece.gatech.edu>,
19006         Gary V. Vaughan  <gary@gnu.org>
19007
19008         * libltdl/ltdl.c (LT_USE_POSIX_DIRENT): Factored out.
19009         (LT_USE_WINDOWS_DIRENT_EMULATION): Move to after include "ltdl.h",
19010         as they are affected by __WINDOWS__ definition.
19011         (LT_READTEXT_MODE): Use textmode to read .la files.
19012         (lt_dlinit): Use LoadLibrary loader as a fallback on cygwin.
19013
19014 2003-11-06  Gary V. Vaughan  <gary@gnu.org>
19015
19016         * libltdl/ltdl.h (__WINDOWS__): Define this if _WIN32 or WIN32 are
19017         defined, unless __CYGWIN__ or __CYGWIN32__ are defined.
19018         (LT_SCOPE): Now set without reference to __CYGWIN__ definition,
19019         since __WINDOWS__ now implies !__CYGWIN__ after canonicalisation.
19020         (LT_PARAMS, lt_ptr): Use canonicalised __WINDOWS__ to determine
19021         which values to set these macros to.
19022
19023 2003-11-05  Gary V. Vaughan  <gary@gnu.org>
19024
19025         * README-alpha: Mention autotools-announce@gnu.org, and update release
19026         note templates.
19027
19028 2003-11-01  Scott James Remnant  <scott@netsplit.com>
19029
19030         * ltmain.in: When relinking, place the -L parameter containing
19031         the installation prefix directory after the intended destination,
19032         so we don't accidentally link against an older installed library.
19033
19034 2003-11-01  Peter O'Gorman  <peter@pogma.com>
19035
19036         * tests/mdemo2/Makefile.am: Let mdemo2 find ltdl.h again.
19037
19038 2003-10-30  Peter O'Gorman  <peter@pogma.com>
19039
19040         * m4/libtool.m4 (Darwin): Fix stupidities for darwin tags support.
19041         Makes it work again if AC_LIBTOOL_TAGS is specified in configure.ac.
19042         Bug reported by Joe Orton and Christian Schaffner.
19043
19044 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
19045
19046         Start to eliminate the double run of configure in a fresh CVS
19047         checkout by generating ltmain.sh, using that to create libtool,
19048         and then adding the tags to that, all from config.status.
19049
19050         * configure.ac (AC_CONFIG_FILES): Make config/ltmain.sh, and copy
19051         it to libltdl.
19052         * Makefile.am ($(srcdir)/config/ltmain.sh): This file is now
19053         created by config.status.  Adjust this rule.
19054         (libtoolize): Set CONFIG_COMMANDS to empty to prevent regenerating
19055         the libtool script as a side effect of running this rule.
19056         * libtool.m4: Bump serial number.  Fix comment typos.
19057         (_LT_CONFIG_LIBTOOL_INIT, _LT_CONFIG_LIBTOOL,
19058         _LT_CONFIG_SAVE_COMMANDS, _LT_CONFIG_COMMANDS: New macros.  They
19059         don't work for some reason - the variable value quoting in the
19060         init section is all wrong.  Not used at the moment.
19061         (AC_LIBTOOL_CONFIG): Generate libtool from config.status.
19062         (_LT_AC_TAG_CONFIG): Add the tags in config.status.
19063         (compiler_DEFAULT): Save the compiler value for the DEFAULT tag,
19064         or it gets overwritten by the other macros.
19065         (EOF): Globally replace with _LT_EOF to avoid namespace pollution.
19066         * tests/demo/configure.ac (STATIC): Check $enable_static instead
19067         of running ./libtool which doesn't exist yet.
19068         (BINARY_HELLDL): Check $lt_cv_sys_global_symbol_pipe with case
19069         instead of grepping ./libtool which doesn't exist yet.
19070         * tests/pdemo/configure.ac (STATIC, BINARY_HELLDL): Ditto.
19071         * doc/libtool.texi (AC_PROG_LIBTOOL): Add some notes about trying
19072         to get config details from `libtool --config'.
19073         * NEWS: Updated.
19074
19075 2003-10-21  Gary V. Vaughan  <gary@gnu.org>
19076
19077         * ChangeLog, ChangeLog.0, ChangeLog.1: Refactored...
19078         * ChangeLog, ChangeLog.2002, ChangeLog.2001, ChangeLog.2000,
19079         ChangeLog.1999, ChangeLog.1998, ChangeLog.1997, ChangeLog.1996:
19080         ...into entries by year for easier copyright confirmation.
19081
19082         * configure.ac, libltdl/configure.ac, tests/cdemo/configure.ac,
19083         tests/demo/configure.ac, tests/depdemo/configure.ac,
19084         tests/f77demo/configure.ac, tests/mdemo/configure.ac,
19085         tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
19086         tests/tagdemo/configure.ac (AM_INIT_AUTOMAKE): Remove redundant
19087         arguments.
19088         * libltdl/configure.ac: Use quadrigraphs to escape macronames.
19089
19090         * bootstrap (reconfdirs): Same as yesterday, only with portable
19091         bourne shell syntax.  :-/
19092
19093 2003-10-20  Gary V. Vaughan  <gary@gnu.org>
19094
19095         * bootstrap (reconfdirs): Overridable top dirs for bootstrap, for
19096         those times when you don't want to wait for all of the test
19097         directories to be rebootstrapped!
19098
19099 2003-10-19  Kevin P. Fleming  <kpfleming@backtobasicsmgmt.com>
19100         Charles Wilson <cygwin@cwilson.fastmail.fm>
19101
19102         * ltmain.in: include --tag options, if specified, in the
19103         relink_command in uninstalled .la files.  Also, preserve --silent,
19104         --debug options when libtool re-execs itself.
19105         * NEWS: Updated.
19106
19107 2003-10-19  Charles Wilson  <cygwin@cwilson.fastmail.fm>
19108
19109         * libtoolize.in: protect sed expression against
19110         AC_CONFIG_AUX_DIR_DEFAULT.
19111
19112 2003-10-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19113
19114         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): For MinGW, reverted DLL
19115         check method back to a working objdump-based test.  This is not as
19116         concrete a test as using the 'file' command, but it does not
19117         require that the 'file' command be available.
19118
19119 2003-10-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19120
19121         * doc/libtool.texi (AC_LIBTOOL_TAGS): Incorporate documentation
19122         for AC_LIBTOOL_TAGS macro to specifify libtool tags. The now
19123         defunct --with-tags option was never documented.
19124
19125 2003-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
19126
19127         * m4/libtool.m4: Restrict the list of tags that can be created
19128         with a new AC_LIBTOOL_TAGS([tag1 tag2 ...]) macro. Deprecate
19129         --with-tags.
19130
19131 2003-10-15  Gary V. Vaughan  <gary@gnu.org>
19132
19133         * libtoolize.in: Typo when copying config.sub.
19134         From Patrick Welche <prlw1@newn.cam.ac.uk>
19135
19136         * demo/Makefile.am (libhell0_a_SOURCES): Do not name sources
19137         already built with libtool...
19138         (libhell0_a_LIBADD): ...instead name the objects directly.  This
19139         prevents a long standing warning from automake 1.7+.
19140         * pdemo/Makefile.am (libhell0_a_SOURCES, libhell0_a_LIBADD):
19141         Ditto.
19142
19143         * bootstrap: Make the fake files valid shell scripts with a
19144         comment incase they get left around.
19145         (LIBTOOLIZE): Use a dummy script to prevent the installed
19146         `libtoolize' from trashing the distributed libtool.m4,
19147         config.guess and config.sub.
19148
19149         * configure.ac (AC_CONFIG_TESTDIR, AC_CONFIG_TESTFILES): Comment
19150         this out for now, the autotest testsuite rewrite is not ready
19151         yet.
19152
19153         * tests/cdemo/Makefile.am, tests/demo/Makefile.am,
19154         tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
19155         tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
19156         tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (top_distdir):
19157         Removed. `autoreconf' needs literals in ACLOCAL_AMFLAGS.
19158
19159 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
19160
19161         * libtoolize.in (func_mkdir_p): Synch with tests/defs; if there
19162         are no more directories in the stack, break out of the loop.
19163
19164         * tests/Makefile.am (COMMON_TESTS): Remove pdemo-unst.test, which
19165         isn't a real test.
19166
19167 2003-10-14  Gary V. Vaughan  <gary@gnu.org>
19168
19169         Refactor all the test case common code into shell functions in
19170         tests/defs, and move the various demo directories out of
19171         $top_srcdir, and into tests too.  The refactoring showed up a
19172         number of inconsistencies and latent bugs, as well as fixing (I
19173         think!!) the long-standing annoyance with some of the tests giving
19174         spurious failures intermittently.  While I was here, emacs kindly
19175         removed a lot of bogus whitespace and added copyright notices for
19176         us:
19177
19178         * cdemo, demo, depdemo, f77demo, mdemo, mdemo2, pdemo, tagdemo:
19179         Moved from here...
19180         * tests/cdemo, tests/demo, tests/depdemo, tests/f77demo,
19181         tests/mdemo, tests/mdemo2, tests/pdemo, tests/tagdemo: ...to
19182         here.
19183         * tests/defs: Factor much common functionality from the test
19184         scripts into shell functions.  Added a copyright notice.
19185         * tests/assign.test, tests/cdemo-conf.test, tests/cdemo-exec.test,
19186         tests/cdemo-make.test, tests/cdemo-shared.test,
19187         tests/cdemo-static.test, tests/demo-conf.test,
19188         tests/demo-deplibs.test, tests/demo-exec.test,
19189         tests/demo-inst.test, tests/demo-make.test,
19190         tests/demo-nofast.test, tests/demo-nopic.test,
19191         tests/demo-pic.test, tests/demo-shared.test,
19192         tests/demo-static.test, tests/demo-unst.test,
19193         tests/depdemo-conf.test, tests/depdemo-exec.test,
19194         tests/depdemo-inst.test, tests/depdemo-make.test,
19195         tests/depdemo-nofast.test, tests/depdemo-shared.test,
19196         tests/depdemo-static.test, tests/depdemo-unst.test,
19197         tests/f77demo-conf.test, tests/f77demo-exec.test,
19198         tests/f77demo-make.test, tests/f77demo-shared.test,
19199         tests/f77demo-static.test, tests/link-2.test, tests/link.test,
19200         tests/mdemo-conf.test, tests/mdemo-exec.test,
19201         tests/mdemo-inst.test, tests/mdemo-make.test,
19202         tests/mdemo-shared.test, tests/mdemo-static.test,
19203         tests/mdemo-unst.test, tests/mdemo2-conf.test,
19204         tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
19205         tests/pdemo-conf.test, tests/pdemo-exec.test,
19206         tests/pdemo-inst.test, tests/pdemo-make.test,
19207         tests/pdemo-unst.test, tests/quote.test, tests/sh.test,
19208         tests/suffix.test, tests/tagdemo-conf.test,
19209         tests/tagdemo-exec.test, tests/tagdemo-make.test,
19210         tests/tagdemo-shared.test, tests/tagdemo-static.test: Refactored
19211         to use new functions in tests/defs.  Added a copyright notice.
19212         * tests/hardcode.test, noinst-link.test,
19213         tests/relink.test, tests/relink.test,
19214         tests/mdryrun.test: Ditto.  Moved from here...
19215         * tests/demo-hardcode.test, demo-noinst-link.test,
19216         tests/demo-relink.test, tests/depdemo-relink.test,
19217         tests/mdemo-dryrun.test: ...to here respectively.
19218         * Makefile.am: Added a copyright notice.
19219         * tests/sh.test: Check libtoolize.in for non-portabilities too.
19220         * libtoolize.in: Fix non-portabilities found by tests/sh.test.
19221
19222 2003-10-12  Peter O'Gorman <peter@pogma.com>
19223
19224         * m4/libtool.m4: Speed up max_cmd_len check.
19225
19226 2003-10-08  Gary V. Vaughan  <gary@gnu.org>
19227
19228         * libtoolize.in: AC_CONFIG_M4_DIR has landed in CVS autoconf.
19229         Only it's called AC_CONFIG_MACRO_DIR.  Search and replace.
19230         Grumble. ;-)
19231
19232 2003-10-08  Scott James Remnant  <scott@netsplit.com>
19233
19234         * libltdl/ltdl.c (lt_dlerror): change return value when
19235         no error has occured to NULL to match documentation.
19236         (Debian Bug #157229)
19237
19238 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
19239
19240         * ltmain.in: Don't suppress output of PIC mode compile if
19241         -no-suppress option is given.
19242         * doc/libtool.texi (Invoking libtool): Document it.
19243         * NEWS: Updated.
19244
19245 2003-10-07  Marcus Comstedt  <marcus@mc.pp.se>
19246
19247         * m4/libtool.m4 [amigaos-ppc, amigaos-m68k]: Differentiate between
19248         amigaos on ppc and m68k.
19249         * NEWS: Updated.
19250
19251 2003-10-07  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19252
19253         * ltmain.in: Do not create `.o' objects when `-shared' is
19254         specified in compile mode.
19255         Do not make a static library when `-shared' is specified in link
19256         mode.
19257         * doc/libtool.texi (Compile mode): Document it.
19258         * NEWS: Updated.
19259
19260         * doc/libtool.texi (Compile mode): Be more specific about the
19261         effect of `-static'.
19262         * ltmain.in: Do not create `.lo' objects when `-static' is
19263         specified.
19264         * NEWS: Updated.
19265
19266 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
19267
19268         * doc/libtool.texi (Invoking libtool): Updated.
19269         * ltmain.in: Add missing clean and finish modes to the shorthand
19270         options.
19271
19272         * ltmain.in: Typo in the --mode shorthand.
19273
19274 2003-10-07  Scott James Remnant  <scott@netsplit.com>
19275
19276         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Remove dead code
19277         for platforms that have been using pass_all for some time now.
19278
19279 2003-10-07  Gary V. Vaughan  <gary@gnu.org>
19280
19281         * libtoolize.in: Completely rewritten.
19282         * Makefile.am (AUTOMAKE_OPTIONS): Reduced to 1.7.  The 1.8
19283         requirement just made the distribution much smaller due to
19284         m4_includes.  1.7 will bootstrap libtool just fine.
19285         * NEWS: Updated.
19286
19287 2003-10-05  Peter O'Gorman <peter@pogma.com>,
19288         Gary V. Vaughan  <gary@gnu.org>
19289
19290         * ltmain.in: Remove inferrence of mode, add shorthand for mode
19291         choice.
19292
19293         * ltmain.in: Specifying -allow-undefined is now an error.
19294
19295 2003-09-29  Scott James Remnant  <scott@netsplit.com>
19296
19297         * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for linux*
19298         solving many build problems on ARM, and hopefully preventing any
19299         future ones.
19300         (Debian Bug #191133 and #190569)
19301
19302 2003-09-29  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>,
19303         Dalibor Topic <robilad@kaffe.org>
19304
19305         * libltdl/ltdl.c: Only include malloc.h if stdlib.h can not be
19306         found.
19307
19308 2003-09-26  Alfred M. Szmidt  <ams@kemisten.nu>
19309
19310         * mdemo2/Makefile.am (INCLUDES): Include `$(top_srcdir)/../libltdl'
19311         instead of `../libltdl'.
19312
19313 2003-09-24  Gary V. Vaughan  <gary@gnu.org>
19314
19315         * bootstrap: Rewritten to use autoreconf.
19316         * config.guess, config.sub, mkstamp:  Moved from here...
19317         * config/config.guess, config/config.sub, config/mkstamp: ...to
19318         here, respectively.
19319         * libtool.m4, ltdl.m4: Moved from here...
19320         * m4/libtool.m4, m4/ltdl.m4: ...to here, respectively.
19321         * configure.ac: Removed various acinclude.m4 hackery, as these
19322         files are no longer needed with automake 1.8.
19323         * Makefile.am: Removed various acinclude.m4 hackery, as these
19324         files are no longer needed with automake 1.8.
19325         (AUTOMAKE_OPTIONS): Require CVS automake.
19326         (CONF_SUBDIRS, CFLAGS, CPPFLAGS, LDFLAGS, LIBS, FFLAGS, FLIBS):
19327         Automake now makes a Make variable from every AC_SUBST, so these
19328         are NOP.
19329         (aclocal_macros): These files are now in their own m4 subdir.
19330         Changed all clients.
19331         (EXTRA_DIST): mkstamp has moved to the new config subdir.  Changed
19332         all clients.
19333         (pkgdata_SCRIPTS): Ditto wrt config.guess and config.sub.
19334         (pkgdata_DATA): Ditto wrt ltmain.sh.
19335         * f77demo/configure.ac, libltdl/configure.ac (AM_CONFIG_HEADER):
19336         Is deprecated in favour of AC_CONFIG_HEADERS.  Updated to the
19337         latter.
19338         * Makefile.am, cdemo/Makefile.am, demo/Makefile.am,
19339         depdemo/Makefile.am, f77demo/Makefile.am, mdemo/Makefile.am,
19340         mdemo2/Makefile.am, pdemo/Makefile.am, tagdemo/Makefile.am
19341         (EXTRA_DIST): Remove acinclude.m4.
19342         (ACLOCAL_AMFLAGS): Search new `m4' macro directory.
19343         * configure.ac, cdemo/configure.ac, demo/configure.ac,
19344         depdemo/configure.ac, f77demo/configure.ac, mdemo/configure.ac,
19345         mdemo2/configure.ac, pdemo/configure.ac, tagdemo/configure.ac
19346         (AC_CONFIG_AUX_DIR): Declare that config helper scripts are now
19347         kept in the new config subdir.
19348         * libltdl/configure.ac (AC_CONFIG_AUX_DIR): Removed.  Defaults to
19349         `.' anyway.
19350
19351 2003-09-21  Robert Millan  <robertmh@gnu.org>
19352
19353         * libtool.m4: Add GNU/KNetBSD support.
19354         * ltdl.m4: Likewise.
19355
19356 2003-09-13  Scott James Remnant  <scott@netsplit.com>
19357
19358         * libtool.m4: allow STRIP to contain spaces and additional
19359         arguments.  (Debian Bug #183055)
19360         * ltmain.in: include newline in "sensible default" for IFS.
19361         (Debian Bug #98492 and #95447)
19362
19363 2003-09-11  Peter O'Gorman  <peter@pogma.com>
19364
19365         * AUTHORS, THANKS: Added myself to AUTHORS, removed from THANKS.
19366
19367 2003-09-10  Peter O'Gorman  <peter@pogma.com>
19368
19369         * mdemo2/configure.ac: Use AC_LIBTOOL_DLOPEN.
19370         * mdemo2/main.c: Use LTDL_SET_PRELOADED_SYMBOLS().
19371         * mdemo2/Makefile.am: Set INCLUDES properly and add -dlopen force
19372         to make sure the symbols file is included in the link line.
19373
19374         * ltmain.in: Accept -framework for darwin and put it in
19375         dependency_libs. For non-installed .la's try to avoid having
19376         ./.libs/.libs/libfoo.so on the link line.
19377
19378 2003-09-10  Arne Woerner  <woerner@mediabase-gmbh.de>
19379
19380         * libtool.m4 [openbsd]: openbsd 3.x needs versioning information.
19381
19382 2003-08-29  Gary V. Vaughan  <gary@gnu.org>
19383
19384         * bootstrap: Typo.
19385
19386 2003-08-29  Alexandre Duret-Lutz  <adl@gnu.org>
19387
19388         * libtool.m4 (_LT_AC_LANG_C_CONFIG): Fix unquoted call to
19389         _LT_AC_LANG_C_CONFIG.
19390         (AC_PROG_EGREP): Remove, now that Libtool requires Autoconf 2.56.
19391         * bootstrap: Issue an upgrade warning.
19392
19393 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
19394
19395         * libtool.m4 (_LT_AC_CHECK_DLFCN): Use the interrim new
19396         AC_CHECK_HEADER with compiler rather than preprocessor.
19397         (AC_LIBTOOL_SETUP): ...which was introduced in autoconf-2.56, so
19398         we AC_PREREQ that version.
19399         * ltdl.m4 (AC_WITH_LTDL, AC_LIB_LTDL, AC_LTDL_FUNC_ARGZ): Ditto.
19400
19401 2003-08-27  Gary V. Vaughan  <gary@gnu.org>
19402
19403         Work around a bug in AU_ALIAS in CVS Autoconf that inserts a
19404         newline just before AC_FD_CC, by hand updating:
19405
19406         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): s/AC_FD_CC/AS_MESSAGE_LOG_FD/g.
19407
19408 2003-08-05  Jim Pick <jim@kaffe.org>,
19409         Ito Kazumitsu <kaz@maczuka.gcd.org>,
19410         Gary V. Vaughan  <gary@gnu.org>
19411
19412         Much as we have tried not to make it the callers' responsibility
19413         to maintain an lt_dlrealloc function pointer, it is too difficult
19414         to implement realloc as malloc/memcpy/free without knowing the
19415         size of the original block.  rpl_realloc has been deprecated since
19416         2002-10-30, but kaffe has real failures with that so it's time to
19417         bite the bullet.  Caller gets to maintain lt_dlrealloc:
19418
19419         * NEWS (1.5.1): Updated.
19420         * libltdl/ltdl.c (LT_DLREALLOC): Use lt_dlrealloc so the user can
19421         update the function pointer to match lt_dlmalloc.
19422         (lt_emalloc): Use lt_dlrealloc rather than hardcoding realloc.
19423         * doc/libtool.texi (Libltdl interface): Describe lt_dlrealloc now
19424         that it too has become part of the exported interface to libltdl.
19425
19426 2003-08-01  Peter O'Gorman  <peter@pogma.com>
19427
19428         * libtool.m4 (darwin): Use "-undefined dynamic_lookup" if the
19429         user set MACOSX_DEPLOYMENT_TARGET to 10.3 or greater.
19430         * libltdl/ltdl.c (dyld): Save the error from the first lookup
19431         to report in lt_dlerror(). Otherwise the error is always
19432         "Symbol _foo not in /usr/lib/libSystem.dylib".
19433         Thanks to Chris Zubrzycki for reporting this.
19434
19435 2003-08-01  Robert Boehne  <rboehne@gnu.org>
19436
19437         * libltdl/ltdl.h: Tweak the header to support visual studio.
19438
19439 2003-07-31  Greg Eisenhauer  <eisen@cc.gatech.edu>
19440
19441         * ltmain.in: Provide absolute paths for dlopen and dlpreopen
19442         files in generating uninstalled libtool libraries.
19443         * mdemo2/main.c, mdemo2/Makefile.am, mdemo2/README,
19444         mdemo2/configure.ac, mdemo2/.cvsignore, mdemo/mlib.c,
19445         tests/mdemo2-conf.test, tests/mdemo2-exec.test,
19446         tests/mdemo2-make.test: New files for testing above feature.
19447         * configure.ac, bootstrap, tests/Makefile.am: Accomodate new
19448         test directory.
19449         * mdemo/Makefile.am: Build libmlib.la for mdemo2 tests.
19450
19451 2003-07-30  Tony Wyatt <wyattaw@optushome.com.au>
19452
19453         * libtool.m4: Remove parentheses around finish_eval part which
19454         broke on amigaos pdksh.
19455
19456 2003-07-30  Christiaan Welvaart  <cjw@daneel.dyndns.org>
19457
19458         * tests/dryrun.test: Ignore any 'total' line from "ls -l" output.
19459
19460 2003-07-30  Albert Chin-A-Young  <china@thewrittenword.com>
19461
19462         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Correctly remove IRIX C++
19463         template files.
19464
19465 2003-07-24  Robert Millan  <robertmh@gnu.org>
19466
19467         * libtool.m4: More fixes for the new GNU/FreeBSD triplet.
19468
19469 2003-07-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
19470
19471         * config.guess, config.sub: Synchronized from ftp.gnu.org since
19472         Robert Millan's patch requires it.
19473
19474 2003-07-14  Robert Millan  <zeratul2@wanadoo.es>
19475
19476         * libtool.m4: Fixed to use the new GNU/FreeBSD triplet.
19477         * ltdl.m4: Fixed to use the new GNU/FreeBSD triplet.
19478         * ltmain.in: Remove GNU/FreeBSD cases, which are no longer needed.
19479
19480 2003-07-14  Andreas Schwab  <schwab@suse.de>
19481
19482         * libtool.m4 (_LT_AC_LOCK): Also match powerpc64-*linux* in
19483         addition to ppc64-*linux*.  From Markus Meissner
19484         <meissner@bogus.example.com>.
19485
19486 2003-07-14  Dalibor Topic  <robilad@yahoo.com>
19487
19488         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): For AmigaOS with pdksh,
19489         set the maximum command line length to 8K since otherwise the test
19490         takes over an hour to run.
19491
19492 2003-06-25  Alexandre Oliva  <aoliva@redhat.com>, Tim Waugh  <twaugh@redhat.com>
19493
19494         * libtool.m4: Replace mis-uses of path with pathname.
19495         (AC_PROG_LD_GNU): Don't quote $LD when running it.
19496         (_LT_AC_LANG_CXX_CONFIG): Use -nostdlib also when linking with g++
19497         and non-GNU ld.
19498
19499 2003-06-11  Gary V. Vaughan  <gary@gnu.org>
19500
19501         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION): Require LT_AC_PROG_SED to
19502         ensure $SED is set by the time it is used.
19503
19504         * ChangeLog: Restore missing entries from 2003-04-22.
19505
19506         * NEWS: Sychronised from branch-1-5.
19507
19508 2003-06-03  Benjamin Reed  <ranger@befunk.com>
19509
19510         * ltmain.in: search libraries in the order of preference, rather
19511         than picking .la's even if they're in a less preferred directory.
19512
19513 2003-06-03  Robert Millan <rmh@debian.org>
19514
19515         * ltdl.m4: Add support for GNU/FreeBSD.
19516         * ltmain.in: Add support for GNU/FreeBSD.
19517
19518 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
19519
19520         * libtool.m4: No need to use sed to remove leading comma when
19521         appending to $tagnames.
19522
19523 2003-06-03  Albert Chin-A-Young  <china@thewrittenword.com>
19524
19525         * tests/defs, tests/demo-conf.test, tests/demo-nofast.test,
19526         tests/demo-nopic.test, tests/demo-pic.test,
19527         tests/demo-shared.test, tests/demo-static.test,
19528         tests/depdemo-conf.test, tests/depdemo-nofast.test,
19529         tests/depdemo-shared.test, tests/depdemo-static.test:
19530         Pass build system type to tests to support environment
19531         where default system type not equal to build system type
19532         (eg. 64-bit HP-UX).
19533
19534 2003-06-03  Peter O'Gorman  <peter@pogma.com>
19535
19536         * libtool.m4 (darwin): Remove checks for Apple-specific gcc.
19537         * libltdl/ltdl.c (HAVE_MACH_O_DYLD_H): #define
19538         __private_extern__ for fsf gcc.
19539         * ltmain.in (darwin): Only add new paths to newlib_search_path.
19540
19541 2003-06-03  Max Bowsher  <maxb@ukf.net>
19542
19543         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Reorder cygwin's
19544         system library search path.
19545
19546 2003-06-01  Robert Boehne  <rboehne@gnu.org>
19547
19548         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match all qnx-nto
19549         as recent config.guess returns a slightly different string.
19550         * ltmain.in: Replace use of "od" with tr.
19551
19552 2003-05-30  Gary V. Vaughan  <gary@gnu.org>
19553
19554         * libltdl/ltdl.c (argz_insert): Corrected an off by one error when
19555         checking that before is not out of range.
19556
19557 2003-05-29  Gary V. Vaughan  <gary@gnu.org>
19558
19559         * libltdl/ltdl.c (lt_int_dyld_lib_install_name): Removed unused
19560         variable mh1.
19561         (sys_dyld_close): Removed unused variable size.
19562
19563 2003-05-21  Bruno Haible  <bruno@clisp.org>
19564
19565         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Add support for
19566         GNU/FreeBSD.
19567
19568 2003-04-22  Alexandre Oliva  <aoliva@redhat.com>
19569
19570         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
19571         mips*-linux* variants.
19572
19573 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
19574
19575         * libtool.m4 Switch on $CC and add paterns to cases.
19576
19577 2003-04-22  Peter O'Gorman  <peter@pogma.com>
19578
19579         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
19580         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
19581         value of shlibpath_overrides_runpath is used in the HARDCODE
19582         test and is set in the DYNAMIC_LINKER test.
19583         * ltmain.in [darwin]: We never need to relink on darwin.
19584
19585 2003-04-22  Samuel Meder  <meder@mcs.anl.gov>
19586
19587         * libtool.m4: Switch on $CC and add patterns to cases.
19588
19589 2003-04-21  Richard Dawe  <rich@phekda.freeserve.co.uk>
19590
19591         * doc/libtool.texi: Use @ifnottex instead of @ifinfo,
19592         to allow production of HTML documentation using makeinfo.
19593
19594 2003-04-14  Robert Boehne  <rboehne@gnu.org>
19595
19596         * NEWS: Updated.
19597         * configure.ac: Bumped version to 1.5a.
19598
19599         GNU libtool 1.5 was released.
19600
19601         * configure.ac: Bumped version to 1.5.
19602         * NEWS: updated.
19603         * README-alpha: Updated upload instructions.
19604         * README: Changed typo in version description.
19605         * config.guess, config.sub, texinfo.tex:  Synchronized from
19606         ftp.gnu.org.
19607
19608
19609 2003-04-10  Alexandre Oliva  <aoliva@redhat.com>
19610
19611         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
19612         mips*-linux* variants.
19613
19614 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
19615
19616         * libtool.m4 Switch on $CC and add paterns to cases.
19617
19618 2003-04-09  Peter O'Gorman  <peter@pogma.com>
19619
19620         * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
19621         to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
19622         value of shlibpath_overrides_runpath is used in the HARDCODE
19623         test and is set in the DYNAMIC_LINKER test.
19624         * ltmain.in(darwin): We never need to relink on darwin.
19625
19626 2003-04-09  Samuel Meder  <meder@mcs.anl.gov>
19627
19628         * libtool.m4 Switch on `basename $CC` not $CC
19629
19630 2003-04-05  Peter O'Gorman  <peter@pogma.com>
19631
19632         * libtool.m4: if ZSH_VERSION is set then setopt NO_GLOB_SUBST so
19633         libtool works. Remove zsh echo test code, don't bother checking
19634         for zsh anymore in the darwin archive_expsym_cmds.
19635
19636 2003-04-05  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
19637
19638         * libtool.m4: Switch on $CC not $cc_basename.
19639
19640 2003-04-02  Robert Boehne  <rboehne@gnu.org>
19641
19642         * tests/defs: Quote $DJGPP to prevent problems with some shells.
19643         Pointed out by Albert Chin <libtool@thewrittenword.com>
19644
19645 2003-04-01  Peter O'Gorman  <peter@pogma.com>
19646
19647         * libtool.m4: Fix the echo test which I broke earlier.
19648         * ltmain.in: Make DESTDIR work on darwin, don't use otool.
19649
19650 2003-03-31  Keith Packard  <keithp@keithp.com>
19651
19652         * ltmain.in: New flag -version-number to be used for maintaining
19653         compatability with a previously non-Libtool versioning scheme.
19654         * doc/libtool.texi: Document it.
19655
19656 2003-03-31  Naofumi Yasufuku  <naofumi@yasufuku.net>
19657
19658         * ltmain.in (win32_libid): Fixed sed expression error in
19659         win32_nmres evaluation.
19660
19661 2003-03-31  Albert Chin  <libtool@thewrittenword.com>
19662
19663         * ltmain.in: Don't pass -R flags found in a .la's dependency_libs
19664         variable directly down to the linker.
19665         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
19666
19667 2003-03-28  Richard Dawe  <rich@phekda.freeserve.co.uk>
19668
19669         * Makefile.am: Define CONF_SUBDIRS.
19670         * tests/defs: Set CONFIG_SITE to /nonexistent, except on DJGPP,
19671         which requires its config.site, to work correctly.
19672         * tests/cdemo-conf.test, tests/cdemo-shared.test,
19673         tests/cdemo-static.test, tests/demo-conf.test,
19674         tests/demo-nofast.test, tests/demo-nopic.test,
19675         tests/demo-pic.test, tests/demo-shared.test,
19676         tests/demo-static.test, tests/depdemo-conf.test,
19677         tests/depdemo-nofast.test, tests/depdemo-shared.test,
19678         tests/depdemo-static.test, tests/f77demo-conf.test,
19679         tests/f77demo-shared.test, tests/f77demo-static.test,
19680         tests/mdemo-conf.test, tests/mdemo-shared.test,
19681         tests/mdemo-static.test, tests/pdemo-conf.test,
19682         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
19683         tests/tagdemo-static.test: Don't set CONFIG_SITE, now that
19684         tests/defs sets it.
19685         * tests/cdemo-exec.test, tests/demo-exec.test,
19686         tests/demo-inst.test, tests/depdemo-exec.test,
19687         tests/depdemo-inst.test, tests/f77demo-exec.test,
19688         tests/mdemo-exec.test, tests/mdemo-inst.test,
19689         tests/pdemo-exec.test, tests/pdemo-inst.test,
19690         tests/tagdemo-exec.test: When checking for the existence
19691         of executables, use the executable file extension from $EXEEXT.
19692
19693 2003-03-28  Peter O'Gorman  <peter@pogma.com>
19694
19695         * libltdl/ltdl.c (dyld): Remove some debug printf's, fix a bug.
19696         * ltmain.in (darwin): Only link against shared libraries when doing
19697         link_all_deplibs.
19698
19699 2003-03-25  Robert Boehne  <rboehne@gnu.org>
19700
19701         * bootstrap: Add f77demo to the directories that AUTOHEADER
19702         is run in.
19703
19704 2003-03-21  Wesley W. Terpstra <terpstra@ito.tu-darmstadt.de>
19705
19706         * ltmain.in: Don't accumulate directory information in clean mode.
19707         Include properly pathed wrapper script.
19708
19709 2003-03-21  Peter O'Gorman  <peter@pogma.com>
19710
19711         * README: Remove "Important" information about patching automake.
19712         * configure.ac: Fix misapplied patch in last commit
19713         * libtool.m4 (darwin): Check compiler is apple gcc, add -single_module
19714         support so that dyloading c++ shared libraries will work.
19715         * libtool.m4 (_LT_AC_TAGCONFIG): Add test -n to the tests so that
19716         it will work outside of libtool.
19717         * doc/PLATFORMS: Add darwin
19718         * f77demo/configure.ac: Add config.h which was misapplied previously.
19719
19720 2003-03-20  Peter O'Gorman  <peter@pogma.com>
19721
19722         * ltmain.in: Always use $echo not echo for consistency.
19723         Changes for darwin building. Warn if linking against libs linked
19724         with -module. Use module_cmds if available and building a module,
19725         move convenience double lib check,
19726         * libltdl/ltdl.c: ltdl support for darwin (first blush)
19727         * libltdl/README: note that darwin is supported
19728         * ltdl.m4: Changes for darwin, and for new shrext
19729         * libtool.m4: Changed the way darwin builds stuff (make check passes)
19730         added module_cmds, module_expsym_cmds and hardcode_automatic and put
19731         them in the libtool script. check for zsh's removal of escapes. Allow
19732         libraries to be stripped on darwin.
19733         * TODO: Remove the todo about zsh's removal of excapes. note that zsh
19734         echo works perfectly well, eval is screwed up. Seems to be fixed in
19735         latest zsh.
19736         * THANKS: added self :)
19737         * f77demo/configure.ac: Use config.h or it doesn't work.
19738
19739 2003-03-19  Robert Boehne  <rboehne@gnu.org>
19740
19741         * libtool.m4 (_LT_AC_TAGCONFIG): Add test around the macro that
19742         adds tags to the libtool script so that they won't run when not
19743         needed.
19744         * configure.ac: Set F77 to no when no Fortran compiler is found.
19745
19746 2003-03-16  Charles Wilson  <cwilson@ece.gatech.edu>
19747
19748         * ltmain.in (win32_libid): use $SED, not head.
19749
19750 2003-03-02  Alexandre Oliva  <aoliva@redhat.com>
19751
19752         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
19753         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
19754         and reset them for a C++ environment.  Use the with_gnu_ld setting
19755         from AC_PROG_LD.
19756
19757 2003-02-28  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19758
19759         * ltmain.in: Only append a dot to the wrapper script when
19760         building on cygwin/MSYS (check for $build, not $host).
19761
19762 2003-02-27  Samuel Meder  <meder@mcs.anl.gov>
19763
19764         * libtool.m4 (ia64): Add support for Intel compiler (ecc) on IA64
19765         Linux.
19766
19767 2003-02-27  Benjamin Reed <ranger@befunk.com>
19768
19769         * THANKS: Added people who have submitted 3 or more patches
19770         to libtool to the THANKS file.
19771         * README: Added notes about the Darwin (MacOSX) support.
19772
19773 2003-02-25  Bob McElrath  <bob+libtool@mcelrath.org>
19774
19775         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Add support for
19776         the Compaq C compiler for Alpha Linux.
19777
19778 2003-02-25  Benjamin Reed  <ranger@befunk.com>
19779
19780         * libtool.m4 (darwin): Disable hardcoding library paths to
19781         make relinking unnecessary.
19782
19783 2003-02-24  Robert Boehne  <rboehne@gnu.org>
19784
19785         * libltdl/configure.ac: Use AC_CONFIG_AUX_DIR([.]) to place
19786         auxilary files in the libltdl directory.
19787         * Makefile.am: Add to the ltmain.sh rule to copy it into the
19788         libltdl subdirectory.
19789         * bootstrap: Explicitly handle ltmain.sh in libltdl, and pass
19790         --copy to automake.
19791
19792 2003-02-24  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19793
19794         * libtool.m4 (AC_LIBTOOL_SETUP): Check for ar.
19795
19796 2003-02-23  Peter O'Gorman  <peter@pogma.com>
19797
19798         * libtool.m4 (darwin): Revamp darwin platform support.
19799         * ltdl.m4 (darwin): Support dlcompat if found.
19800         * ltmain.in: Make sure ranlib is run if needed when piecewise
19801         linking.
19802
19803 2003-02-23  Alexandre Duret-Lutz  <adl@gnu.org>
19804
19805         * ltmain.in (--help): Show mailing-address for bug reports.
19806         (--version): Mention only the most recent copyright year.
19807         * libtoolize.in (--help): Show mailing-address for bug reports.
19808         (--version): Mention only the most recent copyright year.
19809
19810 2003-02-19  Alexandre Oliva  <aoliva@redhat.com>
19811
19812         * libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
19813         (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
19814         and reset them for a C++ environment.  Use the with_gnu_ld setting
19815         from AC_PROG_LD.
19816
19817         * libtool.m4: Replace $linker_flags with $compiler_flags wherever
19818         it is used as argument to $CC.
19819
19820         * libtool.m4: Use linux version_type on IRIX with GNU ld.
19821         Prefix -soname, -set_version and their arguments with ${wl}.  Add
19822         -melf* linker scripts to LD, and use them to determine libsuff,
19823         shlibsuff and libmagic.
19824
19825 2003-02-17  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
19826
19827         * libtool.m4: Intel icc fixups for version 7.0.
19828
19829 2003-02-17  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19830
19831         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Prepend a dot to
19832         the value of the shrext (aka shared_ext) variable and delete it
19833         from the library_names_spec and soname_spec definitions.  That
19834         way the user can omit the shared library suffix by setting it
19835         to the empty string.
19836         (AC_LIBTOOL_LANG_CXX_CONFIG): Strengthen renaming commands for
19837         the KCC compiler.
19838         * doc/libtool.texi (Link mode): Update the manual.
19839
19840 2003-02-17  Charles Wilson  <cwilson@ece.gatech.edu>
19841
19842         * ltmain.in (win32_libid): Rewritten to improve speed.
19843
19844 2003-02-11  Richard Dawe  <rich@phekda.freeserve.co.uk>
19845
19846         * libtoolize.in: Use the program found by AC_PROG_LN_S
19847         to create symlinks.
19848
19849 2003-02-08  Jan Kratochvil  <project-libtool@jankratochvil.net>
19850
19851         * ltmain.in: Handle duplicate object file names when performing
19852         piecewise archive linking by renaming object files when needed.
19853
19854 2003-02-05  Robert Boehne  <rboehne@gnu.org>
19855
19856         * libtool.m4 (AC_CHECK_LIBM): Search for a real symbol in
19857         the math library rather than 'main', it causes problems for
19858         C++ compilers with certain Auto* tools.
19859         (AC_LIBLTDL_INSTALLABLE): ditto.
19860
19861 2003-02-05  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
19862
19863         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG)
19864         (AC_LIBTOOL_PROG_LD_SHLIBS): Rewrite printf commands so
19865         that the format string cannot be mistaken as an option.
19866         Reported by Martin MOKREJS.
19867
19868 2003-02-05  Robert Boehne  <rboehne@gnu.org>
19869
19870         * libtool.m4: Modify the sys_lib_search_path_spec to allow
19871         for either native sed or GNU sed to be used.
19872
19873 2003-02-04  Nick Hudson  <skrll@netbsd.org>
19874
19875         * libtool.m4: don't use -nodefaultlibs in archive_commands
19876         or archive_expsym_commands on NetBSD.
19877
19878 2003-02-04  Albert Chin-A-Young  <china@thewrittenword.com>
19879
19880         * libtool.m4: Change setting of archive_cmds_need_lc
19881         so that it doesn't overwrite the previous setting.
19882
19883 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
19884
19885         * libtool.m4: Allow compiler variable, CC, CXX, etc. to
19886         be a program name with arguments. Original version stripped
19887         arguments for CC.
19888
19889 2003-01-28  Charles Wilson  <cwilson@ece.gatech.edu>
19890
19891         * ltmain.in: add code for a binary wrapper
19892         to use with uninstalled executables on cygwin/mingw.
19893         Make sure that --mode=clean gets shell wrapper and
19894         binary wrapper.  When sourcing the shell wrapper,
19895         invoke using a terminal `.' on cygwin/mingw to
19896         avoid the automatic append-.exe behavior.
19897
19898 2003-01-28  Albert Chin-A-Young  <china@thewrittenword.com>
19899
19900         * libtool.m4: Hardcode library paths into libraries on IRIX.
19901
19902 2003-01-18  Robert Boehne  <rboehne@gnu.org>
19903
19904         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Don't add -DPIC
19905         for languages other than C and C++.
19906
19907 2003-01-13  Albert Chin-A-Young  <china@thewrittenword.com>
19908
19909         * libtool.m4, ltmain.in: Add support for hppa*64* based on
19910         a patch by Ross Alexander <ross.alexander@uk.neceur.com>.
19911         Credit to Ross! Use +b to hardcode library runtime path.
19912         Add new variable, $hardcode_libdir_flag_spec_ld, that
19913         is equivalent to $hardcode_libdir_flag_spec but is used
19914         when ld is used for linking. This works around having to
19915         set wl=''.
19916
19917 2003-01-12  Robert Boehne  <rboehne@gnu.org>
19918
19919         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Revert an
19920         accidental rearranging of dylib and so for darwin.
19921
19922 2003-01-10  Robert Boehne  <rboehne@gnu.org>
19923
19924         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Modify the
19925         "-shrext" option so that is works properly under Darwin.
19926         Modify the processing of 'gcc -print-search-dirs' under
19927         Darwin to make it behave like GNU gcc does.
19928         (AC_LIBTOOL_CONFIG): Single quote $shrext.
19929         * ltimain.in: Expand shared_ext just before it is used
19930         so that it can be conditional on the value of $module.
19931
19932 2002-12-31  Benjamin Reed  <ranger@befunk.com>
19933
19934         * ltmain.in [darwin]: disable lazy linking, needed
19935         to resolve C++ global constructor issues
19936
19937 2002-12-30  Ralph Schleicher  <rs@nunatak.allgaeu.org>
19938
19939         Rework by Robert Boehne <rboehne@gnu.org>
19940         * ltmain.in: New link option -shrext.
19941         * libtool.m4 (AC_LIBTOOL_CONFIG): New libtool variable shrext.
19942         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Replace all hard coded shared
19943         library file name extensions in library_names_spec and
19944         soname_spec with $shrext.
19945         * doc/libtool.texi (Link mode): Document it.
19946
19947 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
19948
19949         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): modify
19950         $archive_expsym_cmds to restore support for using
19951         .def files via the -export-symbols switch.
19952         (AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]): in both the [CXX]
19953         branch and the default branch, improve $export_symbols_cmds
19954         so that DATA symbols are properly  labelled.  In the default
19955         branch, duplicate the _CXX_CONFIG correction for
19956         $archive_expsym_cmds.
19957
19958 2002-12-30  Charles Wilson  <cwilson@ece.gatech.edu>
19959
19960         * libtool.m4 (AC_LIBTOOL_RC): AC_PROG_RC doesn't exist --
19961         but we do AC_DEFUN something called LT_AC_PROG_RC.
19962         Call that instead.
19963
19964 2002-12-30  Robert Boehne  <rboehne@gnu.org>
19965
19966         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Copy the section
19967         for Darwin from AC_LIBTOOL_PROG_LD_SHLIBS so that the CXX
19968         tag doesn't use the g++ defaults for the OS X compiler.
19969
19970 2002-12-30  Albert Chin-A-Young <china@thewrittenword.com>
19971
19972         * libtool.m4: Sync methods used to detect GNU ld.
19973
19974 2002-12-20  Robert Boehne  <rboehne@gnu.org>
19975
19976         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
19977         AC_LIBTOOL_PROG_CC_C_O): Do not escape } or ? in sed argument.
19978
19979 2002-12-19  Robert Boehne  <rboehne@gnu.org>
19980
19981         * ltmain.in: Use the sed program found by LT_AC_PROG_SED
19982         so that relink commands don't get truncated.
19983
19984 2002-12-18  Robert Boehne  <rboehne@gnu.org>
19985
19986         * libtool.m4: Move AC_REQUIRE([LT_AC_PROG_SED]) to AC_PROG_LD
19987         so it is invoked earlier.
19988
19989 2002-12-11  Allan Sandfeld Jensen  <snowwolf@one2one-networks.com>
19990
19991         * libtool.m4: Add support for Intel icc compiler for Linux.
19992
19993 2002-12-11  Robert Boehne  <rboehne@gnu.org>
19994
19995         * ltmain.in: Revert the version +1 change for IRIX, it could
19996         cause compatibility problems.
19997
19998 2002-11-22  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
19999
20000         * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
20001         AC_LIBTOOL_PROG_CC_C_O): Changed method for compilation with
20002         custom flags to be language-independent.  Thereby removed
20003         CFLAGS/GCJFLAGS mixup bug.  Imitate Autoconf-style logging.
20004         Log entries no longer discarded by compilation failures.
20005         (_LT_AC_LANG_C_CONFIG, _LT_AC_LANG_CXX_CONFIG,
20006         _LT_AC_LANG_GCJ_CONFIG): Tuned settings of
20007         lt_simple_compile_test_code and lt_simple_link_test_code
20008         to avoid warnings that could break some option detections.
20009         (AC_LIBTOOL_PROG_COMPILER_NO_RTTI): Removed
20010         redundant "-c conftest.$ac_ext" in the argument to
20011         AC_LIBTOOL_COMPILER_OPTION.
20012         (AC_LIBTOOL_PROG_LD_SHLIBS): Replaced C-specific conftest
20013         source code with $lt_simple_compile_test_code, to support
20014         the "-lc" test with other languages.
20015
20016 2002-11-19  Paul Eggert  <eggert@twinsun.com>
20017
20018         Don't assume that egrep and fgrep exist.  POSIX 1003.1-2001 no
20019         longer requires them; you're supposed to use grep -E and grep -F
20020         instead.  Also, don't assume that "test -a" works, since POSIX
20021         doesn't require it.
20022
20023         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_LANG_C_CONFIG,
20024         _LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,
20025         AC_LIBTOOL_PROG_LD_SHLIBS):
20026         egrep -> grep, when that makes no difference.
20027         * libtoolize.in: Likewise.
20028         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Likewise.
20029         * ltmain.in: Likewise.
20030         * demo/Makefile.am (hc-direct): Likewise.
20031         * pdemo/Makefile.am (hc-direct): Likewise.
20032         * tests/build-relink.test, tests/build-relink2.test,
20033         tests/cdemo-conf.test, tests/cdemo-shared.test,
20034         tests/cdemo-static.test, tests/demo-conf.test,
20035         tests/demo-nofast.test, tests/demo-shared.test,
20036         tests/demo-static.test, tests/depdemo-conf.test,
20037         tests/depdemo-nofast.test, tests/depdemo-shared.test,
20038         tests/depdemo-static.test, tests/hardcode.test,
20039         tests/mdemo-conf.test, tests/mdemo-shared.test,
20040         tests/mdemo-static.test, tests/pdemo-conf.test,
20041         tests/tagdemo-conf.test, tests/tagdemo-shared.test,
20042         tests/tagdemo-static.test: Likewise.
20043
20044         * libtool.m4 (AC_PROG_EGREP):
20045         New macro, defined if Autoconf doesn't define.
20046         (AC_PATH_TOOL_PREFIX, AC_PROG_LD_GNU): Use it.
20047         (AC_PROG_LD, AC_PROG_NM, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE):
20048         Use shell pattern matching rather than egrep.
20049         (AC_LIBTOOL_CONFIG): Set lt_EGREP and EGREP.
20050
20051         * demo/Makefile.am (SET_HARDCODE_FLAGS): Use sed instead of egrep.
20052         * pdemo/Makefile.am (SET_HARDCODE_FLAGS): Likewise.
20053
20054         * tests/defs (EGREP, FGREP): New vars.
20055
20056         * ltmain.in: egrep -> $EGREP
20057         * tests/assign.test, tests/demo-exec.test, tests/demo-inst.test,
20058         tests/pdemo-exec.test, tests/pdemo-inst.test, tests/sh.test:
20059         Likewise.
20060
20061         * tests/hardcode.test: fgrep -> $FGREP
20062
20063         * tests/f77demo-exec.test: test -a -> test &&
20064
20065 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20066
20067         * ltmain.in: When using gcc, pass -mfoo to the linker
20068         via $compiler_flags in order to pass architecture information to
20069         the linker (e.g. 32 vs 64-bit). This may also be accomplished via
20070         -Wl,-mfoo but this is not reliable with gcc because gcc may use
20071         -mfoo to select a different linker, different libraries, etc, while
20072         -Wl,-mfoo simply passes -mfoo to the linker. If there is a better
20073         solution, please let me know what it is.
20074
20075 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20076
20077         * tests/Makefile.am: Conditional assignment of FFLAGS = @FFLAGS@
20078         does not appear to be necessary given that Automake makes this
20079         assignment by default.  The condition is removed since Automake
20080         1.7.1 complains about it.
20081
20082 2002-11-18  Jakub Jelinek  <jakub@redhat.com>
20083
20084         * libtool.m4: Support linking of 64-bit libraries on
20085         sparc{,v[789]}-*linux*, s390*-*linux*, ppc*-*linux*
20086         GNU/Linux systems when the platform default is to build
20087         32-bit libraries.
20088
20089 2002-11-18  Andreas Jaeger  <aj@suse.de>, Bo Thorsen  <bo@suse.de>
20090
20091         * libtool.m4: Support linking of 32-bit libraries with ld
20092         on the x86-64, ppc64, s390x and sparc64 GNU/Linux systems.
20093
20094 2002-11-18  Akim Demaille  <akim@epita.fr>
20095
20096         * ltmain.in: Do not change the PATH in the wrappers: let them
20097         launch the real binary using its path.
20098
20099 2002-11-18  Kevin Ryde  <user42@zip.com.au>
20100
20101         * doc/libtool.texi (Library tips): Note array dimensions.
20102
20103 2002-11-18  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20104
20105         * tests/*.test: MinGW's MSYS treats files under /dev
20106         specially. This causes 'test -r /dev/null/config/site' to
20107         improperly report success, causing configure to fail. Change the
20108         CONFIG_SITE definition from "/dev/null/config/site" to
20109         "/nonexistent" to avoid this problem.
20110
20111 2002-11-18  Charles Wilson  <cwilson@ece.gatech.edu>
20112
20113         * libtool.m4 (_LT_AC_LOCK): remove support for ancient
20114         versions of mingw and cygwin.
20115         (AC_LIBTOOL_POSTDEP_PREDEP): new function.
20116         moved the "find hidden library dependencies" code here
20117         from AC_LIBTOOL_LANG_CXX_CONFIG.  Attempted to make it
20118         multi-tag compatible, but currently only CXX calls it.
20119         (AC_LIBTOOL_LANG_CXX_CONFIG): set
20120         enable_shared_with_satic_runtimes to 'no' by default
20121         Set it to 'yes' for cygwin, mingw, pw32. Replace
20122         "find hidden library dependencies" code with a call
20123         to the new function AC_LIBTOOL_POSTDEP_PREDEP.
20124         Consolidate cygwin and mingw/pw32 stanzas.
20125         (AC_LIBTOOL_LANG_F77_CONFIG): set
20126         enable_shared_with_static_runtimes to 'no' by default
20127         (AC_LIBTOOL_CONFIG): add
20128         enable_shared_with_static_runtimes to the list of variables
20129         to write into ltmain.sh; include it in the libtool script
20130         template as allow_libtool_libs_with_static_runtimes.
20131         (AC_LIBTOOL_PROG_LD_SHLIBS): set
20132         enable_shared_with_static_runtimes to 'no' by default
20133         Set it to 'yes' for cygwin, mingw, pw32.
20134         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): only put cr in regexp
20135         if the build_os is mingw, not host_os
20136
20137         * ltmain.in (case deplibs_check_method): for all appropriate
20138         cases, if allow_libtool_libs_with_static_runtimes, then remove
20139         predeps and postdeps from the list of dependencies that must
20140         be checked for "dynamicness".  For the "none" case, the
20141         presence of compiler-generated postdeps and predeps should
20142         not trigger "inter-library dependencies not supported" error.
20143         (initial setup after arg processing): on cygwin/mingw, allow
20144         compiler-generated dependent libs to be duplicated without
20145         elimination.
20146         (initial search loop for deplibs): if the deplib in question
20147         is a libtool lib, then if
20148         allow_libtool_libs_with_static_runtimes then parse the .la file.
20149         If the .la file only has an "old_library", add the deplib
20150         directly to the deplibs list (-lstdc++) and DON'T use the .la
20151         file; this allows the (case deplibs_check_method) change above
20152         to take effect.
20153         * ltmain.in (for pass in $passes loop): remove predeps,
20154         postdeps, and compiler_lib_search_path from dependency_libs.
20155
20156 2002-11-08  Robert Boehne  <rboehne@gnu.org>
20157
20158         * doc/libtool.texi: Add --mode=* to every example using libtool.
20159
20160 2002-11-03  Ossama Othman  <ossama@doc.ece.uci.edu>
20161
20162         * ltmain.in: add support for installing into temporary
20163         staging area (e.g. 'make install DESTDIR=...')
20164
20165 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
20166
20167         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): restore setting
20168         allow_undefined_flag=unsupported for cygwin and mingw.
20169         (AC_LIBTOOL_PROG_LD_SHLIBS): ditto, for both "normal" gcc/ld
20170         and for the (unmaintained?) MSVC case.
20171
20172 2002-11-03  Charles Wilson  <cwilson@ece.gatech.edu>
20173
20174         * doc/libtool.texi (Install mode): document new
20175         -inst-prefix option.
20176
20177 2002-11-02  Robert Boehne  <rboehne@gnu.org>
20178
20179         * ltmain.in: Print a warning if the mode is not specified.
20180         * doc/libtool.texi: Document the change that the mode must be
20181         specified.
20182
20183 2002-10-30  Charles Wilson  <cwilson@ece.gatech.edu>
20184
20185         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): use printf, not
20186         echo. (AC_DEPLIBS_CHECK_METHOD): use new shell function
20187         win32_libid on w32 platforms
20188         * ltmain.in: add new section for shell functions. Add
20189         win32_libid() shell function.
20190         * f77demo/Makefile.am: add -no-undefined flag
20191
20192 2002-10-30  Rob Browning  <rlb@defaultvalue.org>
20193
20194         * ltdl.c (realloc): Remove custom realloc. (#define
20195         rpl_realloc realloc) and comment out later code for custom
20196         realloc. You can't define your own malloc unless you know
20197         enough about the malloc in use to be able to tell how big
20198         the src ptr is. The disabled code incorrectly used the
20199         *destination* ptr to decide how much to copy. This
20200         sometimes results in out-of-bound accesses which cause
20201         segfaults. This is a quick hack for now; we may want
20202         something cleaner later.
20203         (tryall_dlopen_module): check to be sure (dirname_len > 0) before
20204         testing first character against '/'.
20205         (try_dlopen): check for feof(file) in read loop -- otherwise
20206         infinite loop?
20207
20208 2002-10-25  Robert Boehne  <rboehne@gnu.org>
20209
20210         * ltmain.in (-XCClinker): New flag passes a linking option
20211         directly to the compiler driver without appending ${wl}.
20212
20213 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
20214
20215         * README-alpha: Add some release note templates for inspiration
20216         and consistency at release time.
20217
20218         * Makefile.am (cvs-diff): Compress the generated diff file, ready
20219         for upload to ftp.gnu.org.
20220
20221 2002-10-25  Howard Chu  <hyc@highlandsun.com>
20222
20223         * ltmain.in [aix]: Be sure to deal with xlc_r, cc_r and other
20224         compiler variants.
20225
20226 2002-10-25  Gary V. Vaughan  <gary@gnu.org>
20227
20228         * libtool.m4 (_LT_AC_FILE_IMPGEN_C): Removed.  No longer used.
20229         (_LT_AC_FILE_LTDLL_C): Ditto.
20230         (AC_LIBTOOL_CONFIG) [cygwin, mingw, pw32, os2]: Don't call
20231         _LT_AC_FILE_LTDLL_C or _LT_AC_FILE_IMPGEN_C.
20232
20233 2002-10-25  Albert Chin-A-Young  <china@thewrittenword.com>
20234
20235         * libtool.m4: When LDFLAGS="-Wl,-brtl,[other options]", the
20236         -brtl special-case code for AIX never gets triggered because
20237         were are being too specific about how we search for -brtl.
20238         Use case statement to avoid this. Remove extraneous
20239         semicolon.
20240         * ltmain.in: Recognize the IBM xlc compiler.
20241
20242 2002-10-24  Andrew Suffield  <asuffield@debian.org>
20243
20244         * libltdl/ltdl.c (lt_dlopenext): Corrected sense of "file not
20245         found" check.
20246
20247 2002-10-24  Ossama Othman  <ossama@doc.ece.uci.edu>
20248
20249         * ltmain.in: Support compiler names matching g++*
20250
20251 2002-10-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20252
20253         * libtool.m4: Removed old Windows cruft.
20254         * libtool.m4: Adapted pw32 to be like Cygwin/MinGW.
20255
20256 2002-10-23  Robert Boehne  <rboehne@gnu.org>
20257
20258         ltmain.in: Do not add 1 to the version under IRIX, it is
20259         not necessary.
20260
20261 2002-10-15  Charles Wilson  <cwilson@ece.gatech.edu>
20262
20263         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): avoid long delay on
20264          cygwin/Win9x when computing commandline length.
20265         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): fix postinstall_cmds when
20266         sources are in a subdirectory
20267         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): use $PATH_SEPARATOR, not
20268         $ac_path_separator
20269         * configure.ac: move depdemo-specific stuff.  You must configure
20270         libtool before you can try './libtool --features'.
20271         * mdemo-inst.test: set $PATH to include the directory in which
20272         the modules are installed (on cygwin, DLL search path is the
20273         $PATH)
20274
20275 2002-10-15  Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
20276
20277         * ltmain.in: MinGW works identically to Cygwin.
20278         * libtool.m4: lt_cv_sys_max_cmd_len hard-coded to 8192
20279         *  Model MinGW configuration after Cygwin configuration.
20280         Some portions share implementation.
20281
20282 2002-10-15  Elizabeth Barham <soggytrousers@yahoo.com>
20283
20284         * libtool.m4: Pattern MinGW library naming after that
20285         used by Cygwin except use 'lib' prefix rather than 'cyg'.
20286         * Transfer some configuration from Cygwin with adjustments
20287         for MinGW.
20288
20289 2002-10-15  Albert Chin-A-Young  <china@thewrittenword.com>
20290
20291         * libtool.m4: When a module is built for AIX, the 'lib'
20292         prefix isn't needed, neither is the version. AIX dlopen
20293         will honor the RPATH in a library.
20294
20295 2002-10-11  Christoph Egger  <Christoph_Egger@gmx.de>
20296
20297         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS, darwin): Add
20298         -install_name to the link line only when -dynamiclib is
20299         specified for a module.  Use -bind_at_load when linking C++
20300         shared libraries.
20301
20302 2002-10-04  Elizabeth Barham  <soggytrousers@yahoo.com>
20303
20304         * libtool.m4 (AC_LIBTOOL_SETUP): GCC now checks -shared to
20305         create a dll for Windows targets.
20306
20307 2002-09-24  Robert Boehne  <rboehne@gnu.org>
20308
20309         * ltmain.in: Fixed a few spelling errors.
20310
20311 2002-09-17  Robert Boehne  <rboehne@gnu.org>
20312
20313         * libltdl/ltdl.c: Commented out access() call that checks for a
20314         library file's existence and permissions, as it appears to fail
20315         in every case.
20316
20317 2002-09-09  Albert Chin-A-Young  <china@thewrittenword.com>
20318
20319         * libtool.m4: Custom $symcode for Tru64 UNIX to catch 'Q',
20320         read-only constants.
20321
20322 2002-09-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.de>
20323
20324         * libtool.m4 (osf[345]): Append $major to soname_spec.
20325         Reflect this in library_names_spec.
20326         * ltmain.in (osf): Prefix $major with '.' for use as extension.
20327
20328 2002-08-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>
20329
20330         * ltdl.m4 & libltdl/ltdl.c: Port fully to native Win32 API.
20331
20332 2002-07-31  Robert Boehne  <rboehne@gnu.org>
20333
20334         * f77demo/.cvsignore: New file, forgotten in the last commit.
20335
20336 2002-07-31  Eric Lindahl  <erik@theophys.kth.se>
20337
20338         * libtool.m4 (AC_PROG_LIBTOOL): Added support for the new F77
20339         Fortran support tag.
20340         (AC_LIBTOOL_PROG_CC_C_O, _LT_AC_TAGCONFIG): Support F77 tag.
20341         (AC_LIBTOOL_F77, _LT_AC_LANG_F77, AC_LIBTOOL_LANG_F77_CONFIG):
20342         New macros for F77 tag Fortran support.
20343         * configure.ac: Add support for creating the new F77 tag.
20344         * bootstrap: Add f77demo directory to the list to be processed.
20345         * Makefile.am: Add support for FFLAGS and FLIBS.
20346         * tests/Makefile.am: Add new Fortran tests.
20347         * tests/f77demo-*.test: New files.
20348         * f77demo/configure.ac, f77demo/cprogram.c, f77demo/fooc.c
20349         * f77demo/foof.f, f77demo/foo.h, f77demo/fprogram.f
20350         * f77demo/Makefile.am, f77demo/README: New files.
20351
20352 2002-07-16  Gary V. Vaughan  <gary@gnu.org>
20353
20354         * libltdl/ltdl.c (tryall_dlopen): We need to catch missing file
20355         errors early so that file_not_found() can detect what happened.
20356
20357 2002-06-26  Bob Friesenhahn  <bfreisen@simple.dallas.tx.us>
20358
20359         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Remove
20360         extraneous '=' character which appears in gcc 3.1
20361         -print-search-dirs output.
20362         Handle both upper and lower case drive letters when testing for
20363         Windows vs POSIX style path output from -print-search-dirs
20364         output.
20365
20366 2002-06-24  Robert Boehne  <rboehne@gnu.org>
20367
20368         * ltmain.in (Piecewise linking): Add a clause to skip creating
20369         the export file until the reloadable object file(s) have been
20370         created, then use them as input for $export_symbols_cmds.
20371
20372 2002-06-23  Albert Chin-A-Young  <china@thewrittenword.com>
20373
20374         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Need to quote [ and ] for
20375         Autoconf.
20376
20377         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): HP/UX needs
20378         libltdl_cv_sys_dlopen_deplibs set to yes.
20379
20380 2002-06-23  Kevin Ryde  <user42@zip.com.au>
20381
20382         * libtool.m4 (AC_LIBTOOL_SETUP, _LT_AC_LOCK): Use
20383         AC_PROVIDE_IFELSE to test AC_LIBTOOL_WIN32_DLL and
20384         AC_LIBTOOL_DLOPEN, necessary for autoconf 2.53.
20385
20386 2002-06-23  Gary V. Vaughan  <gary@gnu.org>
20387
20388         * libltdl/ltdl.c (argz_insert): Actually, BEFORE can be NULL
20389         when *PARGZ_LEN is non-NULL, so the assertion to the contrary was
20390         bogus.
20391         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
20392         and Albert Chin-A-Young <china@thewrittenword.com>
20393
20394 2002-06-21  Gary V. Vaughan  <gary@gnu.org>
20395
20396         * libltdl/ltdl.c (foreach_dirinpath): Ensure that filename is '\0'
20397         terminated by all code paths.
20398         Reported by Lutz Müller <lutz@users.sourceforge.net>
20399
20400 2002-06-20  Gary V. Vaughan  <gary@gnu.org>
20401
20402         From Kevin Ryde  <user42@zip.com.au>:
20403         * doc/libtool.texi (Platform quirks): s/dependan/dependen/
20404         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Ditto.
20405         * TODO: Ditto.
20406
20407 2002-06-13  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
20408
20409         * ltmain.in (irix, nonstopux): Set major before use.
20410
20411 2002-06-11  Daniel Kobras  <kobras@linux.de>
20412
20413         * libltdl/ltdl.c (try_dlopen): Don't return bogus handle to user
20414           if tryall_dlopen() fails.
20415
20416 2002-06-01  Gary V. Vaughan  <gary@gnu.org>
20417
20418         * tests/pdemo-exec.test: Typo.  s/hell-static/hell_static/
20419
20420 2002-05-31  Charles Wilson  <cwilson@ece.gatech.edu>
20421
20422         * NEWS: Updated.
20423         * libtool.m4: use $NM to create the symbol list on cygwin, not
20424         $ltdll_cmds as on mingw.  For all tags, (and host=cygwin) set
20425         allow_undefined_flag="" so that the --auto-import magic
20426         works properly.  For all tags (and host=cygiwn) set
20427         always_export_symbols=no -- it is unnecessary thanks to
20428         binutils' auto-export magic.
20429         * libltdl/ltdl.c: Don't force cygwin to use the LoadLibrary
20430         wrapper; use cygwin's builtin implementatino of dl*.
20431         * cdemo/Makefile.am: the downside of unsetting
20432         'allow_undefined_flag' -- we must include -no-undefined
20433         in the _la_LDFLAGS variable.
20434         * depdemo/l1/Makefile.am: ditto.
20435         * depdemo/l2/Makefile.am: ditto.
20436         * depdemo/l3/Makefile.am: ditto.
20437         * depdemo/l4/Makefile.am: ditto.
20438         * mdemo/Makefile.am: ditto.
20439         * tagdemo/Makefile.am: ditto.
20440         * demo/Makefile.am: ditto.  But also, we must make special
20441         provision to clean up the hell0 wrapper script.
20442         * pdemo/Makefile.am: ditto -no-undefined.  ditto hell0.
20443         And use 'hell_static' instead of 'hell.static'.
20444         * tests/pdemo-inst.test: use 'hell_static' instead
20445         of 'hell.static'.
20446         * tests/pdemo-exec.test: ditto.
20447
20448 2002-05-30  Charles Wilson  <cwilson@ece.gatech.edu>
20449
20450         * tests/build-relink2.test: look for installed libl3.la
20451         in $prefix/lib/ as well as $prefix/lib/extra/.
20452
20453 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
20454
20455         * tests/hardcode.test: Use libtool --config to collect the
20456         variable values for the test, otherwise the tag values interfere
20457         with a straight grep.
20458
20459 2002-05-30  Gary V. Vaughan  <gary@gnu.org>
20460
20461         Finally fix the annoying bug which always adds all tags to the
20462         libtool script built by your project configure.  Now we set the
20463         default tags depending on whether AC_PROG_CXX et. al. are actually
20464         called from configure.ac.
20465
20466         * libtool.m4 (_LT_AC_TAGCONFIG): Don't default the tagnames when
20467         no --with-tags argument is given.
20468         (_LT_AC_SHELL_INIT): Factored out from the AC_DIVERT_PUSH code
20469         in...
20470         (_LT_AC_PROG_ECHO_BACKSLASH): ...which now calls the macro
20471         instead.
20472         (AC_LIBTOOL_CXX): Use _LT_AC_SHELL_INIT to add CXX to the
20473         initialisation sequence for tagnames.
20474         (AC_LIBTOOL_GCJ): Similarly for GCJ tag.
20475         (AC_LIBTOOL_RC): Likewise for RC tag.
20476
20477 2002-05-21  Jon Meredith  <jonm@alchemetrics.co.uk>
20478
20479         * ltmain.in: Fix a problem on SCO OpenServer5 that caused a
20480         failure in three depdemo-make tests. For some reason the linker
20481         tries to find the dependent libraries using the library search
20482         path before it has read the libraries specified with absolute
20483         paths in the full commandline. This patch add -L's for each of
20484         the dependent library directories so that they can be resolved.
20485
20486 2002-05-09  Nick Hudson  <skrll@netbsd.org>
20487
20488         * libtool.m4: Update support for NetBSD
20489         * ltdl.m4: Make sure that libltdl_cv_func_dlopen and
20490         libltdl_cv_lib_dl_dlopen are set and used instead of the
20491         ac_cv_ versions. Also, use lt_cv_sys_global_symbol_pipe
20492         instread of global_symbol_pipe. This fixes the detection of
20493         dlopen on BSD derived plaforms and more importantly fixes
20494         need_uscore detection.
20495
20496 2002-05-06  Paul Eggert  <eggert@twinsun.com>
20497
20498         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): head -1 -> sed 1q to
20499         port to POSIX 1003.1-2001 hosts, like textutils 2.0.21 with
20500         _POSIX2_VERSION=200112.
20501
20502 2002-05-06  Paul Eggert  <eggert@twinsun.com>
20503
20504         * ltmain.in: Don't assume that "sort +2" works, as POSIX
20505         1003.1-2001 says that "sort +2" is supposed to sort the file
20506         named "+2".  An example host that behaves like this is
20507         textutils 2.0.21 with _POSIX2_VERSION=200112.
20508
20509 2002-05-06  Loren James Rittle  <rittle@latour.rsch.comm.mot.com>
20510
20511         * ltmain.in: Detect and handle object name conflicts while
20512         piecewise linking a static library.
20513
20514 2002-05-02  Dave Vasilevsky  <thevas@mac.com>
20515
20516         * ltmain.in: Remove convenience libraries from deplibs for Darwin.
20517
20518 2002-05-02  Fritz Elfert  <felfert@to.com>
20519
20520         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Modify archive_expsym_cmds
20521         to catch properly handle dll alias symbols.
20522
20523 2002-04-24  Kevin Ryde  <user42@zip.com.au>
20524
20525         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use $build_os not $host_os.
20526
20527 2002-04-14  Robert Boehne  <rboehne@gnu.org>
20528
20529         * doc/libtool.texi (C++ libraries): Finally updated to reflect
20530         Libtool's support for C++.
20531
20532 2002-04-14  Jean-Frederic Clere  <jfrederic.clere@fujitsu-siemens.com>
20533
20534         * libtool.m4: Update support for Fujistu-Siemens Computers (FSC).
20535         * ltmain.in: Add support for EBCDIC based systems.
20536
20537 2002-04-07  Robert Boehne  <rboehne@gnu.org>
20538
20539         * libtool.m4 (LT_AC_PROG_SED): Refactor, removing temporary directory
20540         and consistent use of the shell variable namespace "lt_ac_".
20541
20542 2002-04-02  Robert Boehne  <rboehne@gnu.org>
20543
20544         * ltmain.in: Finish the tag matching logic started yesterday and
20545         refactor it a bit.
20546
20547 2002-04-01  Robert Boehne  <rboehne@gnu.org>
20548
20549         * ltmain.in: Handle the case when no tag is explicitly set, and
20550         $base_compile has a space in front of $CC, and revert the setting
20551         of tagname checked in on 2002-3-14.
20552
20553 2002-04-01  Robert Boehne  <rboehne@gnu.org>
20554
20555         * tagdemo/foo.cpp: Use C++ IO to catch problems linking to C++
20556         runtime libraries.
20557         * tagdemo/main.cpp: Ditto.
20558
20559 2002-03-16  Gary V. Vaughan  <gary@gnu.org>
20560
20561         * TODO: Removed obsolete comments about RMS' package system.
20562
20563 2002-03-14  Robert Boehne  <rboehne@gnu.org>
20564
20565         ltmain.in: Touch-up to make testsuite pass, and default tagname
20566         to CC when it isn't explicitly set.
20567
20568 2002-03-14  Anthony Green  <green@redhat.com>
20569
20570         * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Albert Chin's gcj fix.
20571         (AC_LIBTOOL_PROG_COMPILER_PIC): Per Bothner's change for not
20572         using -DPIC with gcj.
20573
20574 2002-03-11  Bruce Korb  <bkorb@gnu.org>
20575
20576         * ltmain.in(compile): bring a touch of order to the option processing
20577
20578 2002-02-09  Gary V. Vaughan  <gary@gnu.org>
20579
20580         * NEWS: Updated.
20581         * THANKS: Added Rob Collins and Chuck Wilson for their cygwin
20582         work.
20583
20584         From Robert Collins  <robert.collins@itdomain.com.au>:
20585         * configure.ac (AC_EXEEXT): Needed for DOSish systems.
20586         * libtool.m4 (shlibpath_overrides_runpath) [cygwin]: Set to yes
20587         when compiling with gcc.
20588         (lt_prog_compiler_pic) [cygwin]: No longer needs the -DDLL_EXPORT
20589         hack, so we just say the pic is the default.
20590         (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin]: Extract symbols from a
20591         library normally.
20592         [cygwin]: Declare C++ compiler characterisics for g++, taking into
20593         account the new auto-import support in cygwin ld.
20594         * ltmain.in (specialdeplibs) [cygwin]: Be careful about
20595         eliminating duplicate -lgcc's from the link line.
20596         [cygwin]: Be smarter about .exe suffixes.
20597         * demo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Support
20598         DOSish systems properly.
20599         * depdemo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL):  Ditto.
20600         * demo/Makefile.am (deplibs-check): Allow for .exe suffix.  Use
20601         hell_static instead of hell.static for multi-`.' inhibited OSes.
20602         * tests/demo-exec.test: Ditto.
20603         * tests/demo-inst.test: Ditto.
20604         * demo/foo.h [cygwin]: Sanitize cygwin dll support.
20605         * demo/foo.c (_LIBFOO_COMPILATION_): No longer required.
20606         * demo/hello.c (_LIBFOO_COMPILATION_): Ditto.
20607         * depdemo/Makefile.am (bin_PROGRAMS): Use depdemo_static instead
20608         of depdemo.static for multi-`.' inhibited OSes.
20609         * tests/depdemo-exec.test: Ditto.
20610         * tests/depdemo-inst.test: Ditto.
20611         * mdemo/Makefile.am (bin_PROGRAMS):  Ditto for mdemo.static.
20612         * tests/dryrun.test: Ditto.
20613         * tests/mdemo-exec.test: Ditto.
20614         * tests/mdemo-inst.test: Ditto.
20615         * tests/build-relink.test:  Be careful about possible .exe
20616         suffixes.
20617         * tests/noinst-link.test: Allow for .exe suffix.
20618
20619 2002-02-07  Alexandre Oliva  <aoliva@redhat.com>
20620
20621         Reverted incorrect patch:
20622         2001-10-24  H.J. Lu  <hjl@gnu.org>
20623         * ltmain.sh: Allow link against an archive when building a
20624         shared library.
20625         * libtool.m4 (lt_cv_deplibs_check_method): Always use
20626         file_magic for Linux ELF.
20627
20628 2002-01-30  Robert Boehne  <rboehne@ricardo-us.com>
20629
20630         * libtool.m4 (LT_AC_PROG_SED): Removed a mysterious newline.
20631
20632 2002-01-28  Robert Boehne  <rboehne@ricardo-us.com>
20633
20634         * libtool.m4 (LT_AC_PROG_SED): New macro tests sed for truncation of
20635         output.  AC_REQUIRE the new macro.
20636         * ltmain.in: Use $SED rather than plan old sed, as set by the new
20637         macro LT_AC_PROG_SED.
20638
20639 2002-01-10  Volker Christian  <voc@soft.uni-linz.ac.at>
20640
20641         * libltdl/ltdl.c (find_handle_callback): treat the result of a call
20642         to access(2) correctly when deciding whether a library can be found
20643         in a directory from user_search_path.
20644
20645 2002-01-07  Robert Boehne  <rboehne@ricardo-us.com>
20646
20647         * NEWS: Fixed wrong path for texinfo.tex.
20648         * configure.ac: Bumped version to 1.4e.
20649
20650         GNU libtool 1.4d was released.
20651
20652         * configure.ac: Bumped version to 1.4d.
20653         * NEWS: updated.
20654         * config.guess, config.sub, texinfo.tex:  Synchronised from
20655         ftp.gnu.org.
20656
20657 2001-12-06  Jens Petersen  <petersen@redhat.com>
20658
20659         * ltmain.in: Replace all test "-a"s by "&& test"
20660         for portability.
20661
20662 2001-11-28  Robert Boehne  <rboehne@ricardo-us.com>
20663
20664         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Change the
20665         factor of saftey as 3/4 of the result was not low enough.
20666
20667 2001-11-28  Gary V. Vaughan  <gary@gnu.org>
20668
20669         * libtoolize.in: The test for whether AC_PROG_LIBTOOL is defined
20670         in aclocal.m4 had bitrotted slightly.
20671         Reported by Takahiko Kawasaki <Takahiko_Kawasaki@cii.csk.co.jp>
20672
20673 2001-11-27  Donald D. Anderson  <dda@sleepycat.com>
20674
20675         * ltmain.in: Treat freebsd like openbsd, in that -lc/-lc_r should
20676         not be explicitly used.  ld handles this depending on the presence
20677         of the -pthread option.
20678
20679 2001-11-27  Robert Boehne  <rboehne@ricardo-us.com>
20680
20681         With help from Michael Matz <matz@kde.org>:
20682         * ltmain.in:  Add a new command line argument
20683         --preserve-dup-deps for preserving duplicate
20684         dependent libraries.
20685         * libtool.texi: Document it.
20686
20687 2001-11-27  Kevin Ryde  <user42@zip.com.au>
20688
20689         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Send "test"
20690         warnings to /dev/null, helps FreeBSD and maybe others.
20691
20692 2001-11-15  Albert Chin-A-Young  <china@thewrittenword.com>
20693
20694         * libtool.m4: quote LTCC because autoconf AC_PROG_CC_STDC
20695         macro might add to $CC if options needed by compiler to
20696         grok ANSI.
20697
20698 2001-11-15  Gary V. Vaughan  <gary@gnu.org>
20699
20700         From Joseph S. Myers  <jsm28@cam.ac.uk>:
20701         * ltmain.in: Typo.
20702
20703 2001-11-15   Mo DeJong  <supermo@bayarea.net>
20704
20705         * ltmain.in: Place parens around a generated relink_command
20706         so it is run is a subshell. This avoids an install error
20707         where libtool ended up in the wrong directory after
20708         relinking a .la file.
20709
20710 2001-10-31  Raja R Harinath  <harinath@cs.umn.edu>
20711
20712         * configure.ac (pkgdatadir): Move the invocation of AC_INIT_AUTOMAKE
20713         before the use of $PACKAGE in $pkgdatadir.
20714         Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
20715
20716 2001-10-28  Gary V. Vaughan  <gary@gnu.org>
20717
20718         From Tom Bates  <Tom.Bates@compaq.com>:
20719         * libtool.m4 [mips-compaq-nonstopux]: New port.
20720         * ltmain.in [mips-compaq-nonstopux]: Support
20721         $version_type == nonstopux.
20722
20723 2001-10-28  Albert Chin-A-Young  <china@thewrittenword.com>
20724
20725         * libltdl/ltdl.c (foreach_dirinpath): change some types to size_t
20726         from int because strlen() returns size_t. argz_len changed to
20727         size_t because argzize_path() takes 3rd argument as size_t, not
20728         int.
20729         Based on lint run from Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
20730
20731 2001-10-27  Gary V. Vaughan  <gary@gnu.org>
20732
20733         * libtool.m4 (_LT_AC_TAGCONFIG): Cray sed does not allow character
20734         sets to contain the separator character.
20735         Reported by Kevin Ryde <user42@zip.com.au>
20736
20737         * ltdl.m4 (AC_WITH_LTDL): New macro to add `--with-included-ltdl'
20738         option to configure, but to find an appropriate ltdl library and
20739         append the right options to link it.
20740
20741 2001-10-24  Kevin Ryde  <user42@zip.com.au>
20742
20743         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Remove a stray ' quote.
20744
20745 2001-10-24  H.J. Lu  <hjl@gnu.org>
20746
20747         * ltmain.sh: Allow link against an archive when building a
20748         shared library.
20749         * libtool.m4 (lt_cv_deplibs_check_method): Always use
20750         file_magic for Linux ELF.
20751
20752 2001-10-12  Guido Draheim  <guidod-2001q3@gmx.de>
20753
20754         * ltdl.m4: Changed "underscode to underscore".
20755
20756 2001-10-06  Gary V. Vaughan  <gary@gnu.org>
20757
20758         * configure.ac: General modernisation and cleanup.
20759         * cdemo/configure.ac: Ditto.
20760         * demo/configure.ac: Ditto.
20761         * depdemo/configrue.ac: Ditto.
20762         * ltdl/configure.ac: Ditto.
20763         * ltdldemo/configure.ac: Ditto.
20764         * mdemo/configure.ac: Ditto.
20765         * pdemo/configure.ac: Ditto.
20766         * tagdemo/configure.ac: Ditto.
20767
20768 2001-10-04  Albert Chin-A-Young <china@thewrittenword.com>
20769
20770         * libltdl/ltdl.c: Match function return type with prototype
20771         (add static initializer to file_not_found).
20772
20773 2001-09-30  Gary V. Vaughan  <gary@gnu.org>
20774
20775         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): s/INCLTDL/LTDLINCL/ for
20776         consistency with gettext's INTLINCL.  Keep the old symbol too for
20777         backwards compatibility.
20778         (AC_LIBLTDL_INSTALLABLE): Ditto.
20779         * doc/libtool.texi (Distributing libltdl):  Adjust documentation.
20780
20781 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
20782
20783         * ltdl.m4 (AC_LTDL_DLLIB): Even though HP-UX 10.20 and 11.00
20784         support shl_load *and* dlopen, dlopen works correctly only
20785         with a patch. Because we want to avoid the situation where we
20786         build on a system with the patch but deploy on a system without,
20787         use shl_load exclusively if found.
20788
20789 2001-09-22  Gary V. Vaughan  <gary@gnu.org>
20790
20791         * libtool.m4 (_LT_AC_FILE_LTDLL_C): Be carefule that the start
20792         marker searched for by sed must start in column 0.
20793         (_LT_AC_FILE_IMPGEN_C): Ditto.
20794         Reported by Tor Lillqvist <tml@iki.fi>
20795
20796 2001-09-22  Tor Lillqvist  <tml@iki.fi>
20797
20798         * libtool.m4 [mingw* cygwin*]: Small improvement for mingw-hosted
20799         tool support (while still running libtool on cygwin). In that case
20800         PATH_SEPARATOR is ':', but gcc -print-search-dirs still prints its
20801         search path with ';' as separator.
20802         (AC_LIBTOOL_RC, AC_LIBTOOL_LANG_RC_CONFIG): Add support for .rc
20803         files (Windows resource files), compiled by the resource compiler
20804         (windres in mingw) to .o files.
20805         (AC_PROG_NM): Minor bug fix for $PATH elements with spaces in
20806         them.
20807         * configure.ac: Use LT_AC_PROG_RC.
20808         * ltmain.in: Check for .rc files.
20809         * NEWS: Updated.
20810
20811         * ltmain.in: Add a space to $base_compile in the case statement,
20812         as the case labels checks for trailing spaces, but there aren't
20813         necessarily in $base_compile.
20814
20815 2001-09-22  Albert Chin-A-Young  <china@thewrittenword.com>
20816
20817         * libtool.m4: When setting archive_cmds for CC, don't
20818         test for $GXX but for $GCC on HP-UX. Indentation fixes.
20819
20820 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
20821
20822         From Tor Lillqvist <tml@iki.fi>:
20823         * ltmain.in [cygwin* mingw*]: Take care of the difference between
20824         wrapper script name and executable name.
20825
20826         * libtool.m4 (archive_cmds) [darwin1.[0-2]]: Darwin uses zsh-3.1.6
20827         for /bin/sh, and that shell does not handle escaped quotes
20828         properly yet.
20829         Reported by Christopher Pfisterer <cp@chrisp.de>
20830
20831 2001-09-21  Albert Chin-A-Young  <china@thewrittenword.com>
20832
20833         * libltdl/ltdl.c: Match function return type with prototype
20834         (add static initializer to some functions) to prevent warnings
20835         from HP-UX cc.
20836
20837 2001-09-21  Gary V. Vaughan  <gary@gnu.org>
20838
20839         * libltdl/ltdl.c: Added support for dmalloc, and uncovered some
20840         memory bugs as a result.
20841
20842 2001-09-21  Albert Chin  <china@thewrittenword.com>
20843
20844         * libtool.m4: Don't include main() when testing for command to
20845         parse $NM output because some C++ compilers don't allow you to
20846         take the address of main (e.g. HP-UX aCC).
20847
20848         * libtool.m4: Some uses of $GXX were unquoted, but GXX is either
20849         NULL or yes.  Use "$GXX".
20850
20851 2001-09-13  Assar Westerlund  <assar@sics.se>
20852
20853         * ltdl.m4 (AC_LTDL_DLLIB): call dlopen with arguments so the test
20854         does not fail due to a prototype in dlfcn.h
20855
20856 2001-09-13  Gary V. Vaughan  <gary@gnu.org>
20857
20858         * ltdl.m4 (AC_CHECK_HEADERS): Check for assert.h.
20859         * libltdl/ltdl.c:  If not, disable assertions manually.
20860
20861 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
20862
20863         * bootstrap: Be robust to having no files that need removing.
20864
20865         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump libltdl version to
20866         1.2.
20867         * libltdl/Makefile.am (libltdl_la_LDFLAGS):  Bump libtool library
20868         version info to 4:0:1.
20869
20870 2001-09-11  Gary V. Vaughan  <gary@gnu.org>
20871
20872         * libtool.m4: No need to undefine([symbols]), proper quotation is
20873         enough.
20874
20875 2001-09-10  Gary V. Vaughan  <gary@gnu.org>
20876
20877         * libtool.m4: CVS Autoconf guarantees a decent default IFS, so
20878         there is no need for us to preset it anymore.
20879         Be careful not to set IFS="${IFS}$PATH_SEPARATOR" for PATH
20880         splitting, otherwise spaces in directory names will be lost.
20881         Use $PATH_SEPARATOR... don't rely on $ac_path_separator, which was
20882         an autoconf internal until just now, when it disappeared!
20883         * ltmain.in: Default IFS once, at the start.
20884         Reported by Akim Demaille <akim@epita.fr>
20885
20886 2001-09-10   Brad  <brad@comstyle.com>
20887
20888         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Missed an instance of
20889         Autoconf square bracket quoting style normalisation.
20890
20891         * ltmain.in (-lc_r): Style improvement.
20892
20893         * doc/libtool.texi: Remove obsolete references to ltconfig.
20894         * tests/quote.test: s/ltconfig/\$0/
20895
20896 2001-09-09  Gary V. Vaughan  <gary@gnu.org>
20897
20898         * libtool.m4: Use Autoconf square bracket quoting style
20899         consistently throughout.
20900
20901 2001-09-08  Gary V. Vaughan  <gary@gnu.org>
20902
20903         * bootstrap: Cleanup `autom4te' and `libtool' so that we don't
20904         get caught by something from a previous build.
20905
20906         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Revert
20907         my 2001-09-06 patch.
20908         (no_undefined_flag)i [solaris*]: Revert Alexandre's 2001-04-11 patch.
20909
20910 2001-09-07  Gary V. Vaughan  <gary@gnu.org>
20911
20912         * libltdl/ltdl.c (foreach_dirinpath): argz_len should be a size_t.
20913         Reported by Albert Chin <china@thewrittenword.com>
20914
20915 2001-09-06  Gary V. Vaughan  <gary@gnu.org>
20916
20917         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [solaris*]: Typo. s/GXX/GCC/.
20918
20919         * libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Changing
20920         no_undefined_flag from `-z text' to `-z defs' (see entry below at
20921         2001-04-11  Alexandre Oliva  <aoliva@redhat.com>) has a problem.
20922         when linking a shared library with gcc calling /usr/ccs/bin/ld (eg.
20923         the gcc supplied with Solaris 8 companion CD), using the flag
20924         -no-undefined, shared library linking will always fail because of
20925         the unresolved symbols from libgcc.a.  Consequently we have to
20926         provide a path to libgcc.a when linking shared libraries in
20927         conjunction with -no-undefined!
20928
20929         From Michael Pruett <mpruett@engr.sgi.com>:
20930         * libltdl/ltdl.c (find_module): `0' valued arguments to
20931         tryall_dlopen_module() must be explicitly cast to avoid compiler
20932         warnings on some environments.
20933
20934         From Daniel Johnson <danielj7@mac.com>:
20935         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Move from GNU
20936         ld section to non-GNU ld section.
20937
20938 2001-09-05  Robert Boehne  <rboehne@ricardo-us.com>
20939
20940         * pdemo/Makefile.am (helldl):  Automake 1.4 can't find the target
20941         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
20942         Using both targets to the left of the colon seems to work though!
20943
20944 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
20945
20946         * demo/Makefile.am (helldl):  Automake 1.4 can't find the target
20947         if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
20948         Using both targets to the left of the colon seems to work though!
20949
20950 2001-09-03  Brad  <brad@comstyle.com>
20951
20952         * ltdl.m4 [AC_LTDL_SYS_DLOPEN_DEPLIBS]: Teach ltdl about the
20953         behavior of OpenBSD's dlopen().
20954
20955 2001-09-03  Gary V. Vaughan  <gary@gnu.org>
20956
20957         From Marius Vollmer <mvo@zagadka.ping.de>:
20958         * libltdl/ltdl.c (tryall_dlopen_module): Don't forget to propogate
20959         errors over recurse levels.
20960
20961 2001-09-03  Brad  <brad@comstyle.com>
20962
20963         * libtool.m4 [openbsd*]: More improvements to the OpenBSD port.
20964
20965 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
20966
20967         From Albert Chin <china@thewrittenword.com>:
20968         * libtool.m4 (_LT_AC_LANG_C_CONFIG) [aix4*]: Be careful with
20969         shared namespaces for static and shared libs.
20970         (AC_LIBTOOL_DLOPEN_SELF): If all else fails, try dld_link from GNU
20971         DLD.
20972
20973 2001-09-02  Christopher Pfisterer <cp@chrisp.de>
20974
20975         * libtool.m4, ltmain.in: Linker flag and version numbering fixes
20976         for darwin.
20977
20978 2001-09-02  Gary V. Vaughan  <gary@gnu.org>
20979
20980         Based on a patch from Marius Vollmer <mvo@zagadka.ping.de>:
20981         * NEWS: updated.
20982         * ltdl.m4 (AC_LIB_LTDL): Check for unistd.h.
20983         * ltdl.c: Include unistd.h if it exists.
20984         (LTDL_SEARCHPATH_VAR): Macro to prevent hardcoding
20985         "LTDL_LIBRARY_PATH".
20986         (LTDL_ARCHIVE_EXT): Macro to prevent hardcoding ".la".
20987         (archive_ext): Have only one copy of ".la" in the readonly
20988         segment of the compiled library.
20989         (find_handle_callback): Don't bother trying to dlopen the file if
20990         it doesn't exist.
20991         (find_handle): Don't bother searching for files if no search_path
20992         was supplied.
20993         (file_not_found): A new function to determine whether the last
20994         error was due to a file not found condition.
20995         (try_dlopen): Renamed from lt_dlopen() and changed to have the
20996         same footprint as tryall_dlopen.  This involved a minor rewrite of
20997         much of the internals of this function.
20998         (lt_dlopen): A new function wrapped arounf try_dlopen().
20999         (lt_dlopenext): If a file already has a suitable extension, don't
21000         bother adding additional extensions and trying to open those.
21001         Tidy up the rest of the code to prevent continued searching with
21002         an eventual FILE_NOT_FOUND when a genuine failure earlier in the
21003         search process could be legitimately reported.
21004
21005         * demo/Makefile.am (helldl$(EXEEXT)): Automake-1.5 made me change
21006         this from just `helldl'.
21007
21008 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
21009
21010         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) Fixed a problem
21011         with export_symbols_cmds not being set for CXX tags, and
21012         not being properly set for any tag under AIX/Power.
21013
21014 2001-08-19  Ossama Othman  <ossama@uci.edu>
21015
21016         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Corrected and improved
21017           error message that is displayed when there was a problem
21018           compiling the C++ test program.  It still mentioned the now
21019           non-existent `ltcf-cxx.sh' file.
21020
21021         * doc/libtool.texi (LTDL_SET_PRELOADED_SYMBOLS): Removed
21022           parentheses at end of starting "defmac" line, as pointed out by
21023           makeinfo.
21024
21025 2001-08-18  Brad  <brad@comstyle.com>
21026
21027         * ltmain.in: Do not remove -lm from deplibs for OpenBSD.
21028
21029 2001-08-16  Gary V. Vaughan  <gary@gnu.org>
21030
21031         * libltdl/ltdl.c (argz_create_sep): Don't forget to include the
21032         terminating '\0' when counting argz_len.
21033         (argz_create_sep): When canonicalizing argz, don't forget to copy
21034         the terminating '\0', incase canonicalization has shortened argz.
21035         (argz_stringify): Don't covert the final '\0' to a separator.
21036
21037 2001-08-15  Gary V. Vaughan  <gary@gnu.org>
21038
21039         * libltdl/ltdl.c (lt_dlhandle_next): Now we can loop through all
21040         loaded module handles as originally intended.
21041
21042         * libltdl/ltdl.c (lt_dlseterror): Oops.  This never worked
21043         either, due to a pair of typos.  Now fixed.
21044
21045         * libltdl/ltdl.c (N_ELEMENTS):  Deleted.  How come nobody noticed
21046         there was no way this could have ever worked?
21047         (lt_dlcaller_set_data): Now that valid caller_ids must be
21048         non-zero, allocate an addition entry in the caller_data vector and
21049         use a zero valued key as the end marker.
21050         (lt_dlcaller_get_data): Iterate up to the end marker in one pass.
21051
21052 2001-08-14  Gary V. Vaughan  <gary@gnu.org>
21053
21054         * libltdl/ltdl.c (lt_dlcaller_register): Caller ids are allocated
21055         starting from value `1', so that clients can use a value of zero
21056         to indicate that libltdl has not yet initialised.
21057
21058         * ltmain.in (exec_cmd): Fix quoting in execute mode so that the
21059         double quotes added by libtool (to prevent lossage with embedded
21060         spaces in filenames etc.) are not interpreted as literals by the
21061         shell.
21062
21063 2001-08-13  Gary V. Vaughan  <gary@gnu.org>
21064
21065         * libltdl/ltdl.c (find_file_callback): Fix a multiple free()
21066         bug.
21067         (tryall_dlopen_module): Remove some unused variables.
21068
21069         * libltdl/ltdl.c (lt_dlinsertsearchdir): Calculate the address
21070         of the end of user_search_path correctly.
21071
21072         * libltdl/ltdl.c (rpl_argz_stringify): New fallback implementation.
21073         * ltdl.m4 (AC_LTDL_FUNC_ARGZ):  Test for argz_stringify in libc.
21074         * libltdl/ltdl.c (lt_argz_insertinorder): Renamed from
21075         lt_argz_insert to make room for...
21076         (lt_argz_insert): Wraps argz_insert with libltdl error handling.
21077         (lt_dlpath_insertdir): Insert new path elements into an
21078         argzized path.
21079         (lt_dlinsertsearchdir): New function to insert new search
21080         directories anywhere into user_search_path using the above.
21081         (lt_dladdsearchdir): Rewritten to use lt_dlpath_insertdir.
21082         * libltdl/ltdl.h (lt_dlinsertsearchdir): Prototype for export.
21083         * doc/libtool.texi (Libltdl interface): Document it.
21084         * NEWS: Updated,
21085
21086 2001-08-07  Gary V. Vaughan  <gary@gnu.org>
21087
21088         From Albert Chin <china@thewrittenword.com>:
21089         * ltmain.in [irix*]: $with_gcc is either "yes" or "" (empty string)
21090         with current autoconf, so we need to be robust to that when testing
21091         it,
21092
21093 2001-08-06  Gary V. Vaughan  <gary@gnu.org>
21094
21095         From Brad <brad@comstyle.com>:
21096         * libtool.m4 (deplibs_check_method) [aix*]: Removed redundant setting
21097         of this variable.
21098
21099 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
21100
21101         * libltdl/ltdl.c (load_deplibs): Insert missing 1st argument to
21102         LT_EMALLOC.
21103
21104 2001-08-05  Tim Van Holder  <tim.van.holder@pandora.be>
21105
21106         * ltdl.m4: Canonicalize descriptive text used with
21107         AC_DEFINE.
21108
21109         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR): Remove.
21110         (_LT_AC_PROG_ECHO_BACKSLASH): Use $ac_path_separator
21111         instead of $PATH_SEPARATOR.
21112         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Ditto.
21113         (_LT_AC_TAGCONFIG): Ditto.
21114         (AC_ENABLE_SHARED): Ditto.
21115         (AC_ENABLE_STATIC): Ditto.
21116         (AC_ENABLE_FAST_INSTALL): Ditto.
21117         (AC_PATH_TOOL_PREFIX): Ditto.
21118         (AC_PATH_MAGIC): Ditto.
21119         (AC_PROG_LD): Ditto.
21120         (AC_PROG_NM): Ditto.
21121         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): Ditto.
21122
21123 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
21124
21125         From Brad <brad@comstyle.com>:
21126         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]:  OpenBSD
21127         can build modules without a `lib' prefix and version number.
21128         Move the deplibs check code from here...
21129         (AC_DEPLIBS_CHECK_METHOD): ...to here.
21130
21131 2001-08-05  Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21132
21133         * libtool.m4 [osf3*, osf4*, osf5*]: Tru64 *can* build modules
21134         without a `lib' prefix to the module name.
21135
21136 2001-08-05  Gary V. Vuaghan  <gary@gnu.org>
21137
21138         From Guido Draheim <Guido.Draheim@tek.com>:
21139         * ltmain.in: Display better and different error messages when
21140         library linkage fails in various ways.
21141
21142 2001-08-05  Albert Chin-A-Young <china@thewrittenword.com>
21143
21144         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Add newline after
21145         terminating '}' grouping character. Change '[0-9][0-9]'
21146         to '0' as we've already matched it.
21147
21148 2001-08-05  Gary V. Vaughan  <gary@gnu.org>
21149
21150         From Brad <brad@comstyle.com>:
21151         * libtool.m4 (archive_cmds) [darwin, newsos, sysv4]: Replace
21152         1.3 era $linkopts references with $linker_flags.
21153
21154         * libltdl/ltdl.c:  Fixed several careless mistakes in the
21155         foreach_dirinpath support functions.
21156         (foreach_dirinpath): Walk path elements with the argz API.
21157
21158 2001-08-04  Gary V. Vaughan  <gary@gnu.org>
21159
21160         From Sedi Master Albert Chin <china@thewrittenword.com>:
21161         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Replace the awk invocation
21162         with an equivalent bit of sed wizardry.
21163
21164         From Edouard G. Parmelan <egp@free.fr>
21165         * libtool.m4 [darwin, openbsd]: Fix quoting problems with
21166         unquoted [] expressions.
21167
21168 2001-08-03  Gary V. Vaughan  <gary@gnu.org>
21169
21170         * bootstrap:  s/ltdldemo // -- This demo soesn't work properly,
21171         so I haven't committed it yet.
21172
21173 2001-08-01  Ossama Othman  <ossama@doc.ece.uci.edu>
21174
21175         * libtool.m4 (AC_LIBTOOL_SETUP): Require Autoconf-2.50 via the
21176         AC_PREREQ autoconf macro since the new libtool macros utilize
21177         macros from that version of Autoconf.
21178
21179 2001-08-01  Gary V. Vaughan  <gary@gnu.org>
21180
21181         * ltdl.m4: Bump serial number.
21182         General reformat and tify up in line with Autoconf-2.50 support.
21183         (AC_LTDL_FUNC_ARGZ): Test for system implementations of a
21184         handful of argz API calls, the error_t type, and the argz.h
21185         header.
21186         * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump version number.
21187         * libltdl/ltdl.c (rpl_argz_append, rpl_argz_create_sep.
21188         rpl_argz_insert, rpl_rgz_next):  Fallback implementations of
21189         the similarly named functions for machines that don;t use glibc.
21190         (lt_dlrealloc):  New memory function pointer that can be set by
21191         the client.  Defaults to rpl_realloc, which in turn uses only
21192         lt_dlmalloc and lt_dlfree.
21193         (LT_EMALLOC, LT_EREALLOC): Set internal out-of-memory error
21194         inside the functions called by these new macros.  Simplified all
21195         callers by removing explicit client error reporting.
21196         (memmove):  Fallback implementation of overlap safe memory copy
21197         function.
21198         (tryall_dlopen):  Factorized common code into...
21199         (tryall_dlopen_module): ...this new helper function.
21200         (canonicalize_path):  Changed function signature to return success
21201         or failure.  Updated all callers.
21202         (foreachfile_callback):  Make use of argz API.
21203         (LT_DLSTRLEN): Moved from here...
21204         * libltdl/ltdl.h (LT_STRLEN): ...to here.  Updated all callers.
21205         (lt_dlrealloc):  Declare new memory management handle.
21206
21207 2001-07-31  Robert Boehne  <rboehne@ricardo-us.com>
21208
21209         * libtool.m4 (mingw*) Revert the previous change as it was
21210         applied by mistake.
21211
21212 2001-07-31  Guido Draheim  <Guido.Draheim@tek.com>
21213
21214         * libtool.m4 (mingw*) sys_lib_search_path_spec:
21215         Sets the proper path separator for cross-compiling.
21216
21217 2001-07-30  Steve Ellcey  <sje@cup.hp.com>
21218
21219         * libtool.m4 (ia64-*-hpux*) Add support for ia64*-*-hpux* platform.
21220
21221 2001-07-30  Robert Boehne  <rboehne@ricardo-us.com>
21222
21223         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Fixed an
21224         incorrect resetting of lt_prog_compiler_static when using gcc
21225         under AIX Power.
21226
21227 2001-07-31  Gary V. Vaughan  <gary@gnu.org>
21228
21229         * bootstrap: Remove generated files (incase they are links) before
21230         rerunning the autotools to regenerate them.
21231
21232 2001-07-30  Gary V. Vaughan  <gary@gnu.org>
21233
21234         * libtool.m4 (AC_LIBTOOL_SETUP): Use Autoconf-2.50 era
21235         quadrigraphs and AC_HELP_STRING to bring AC_ARG_WITH/ENABLE
21236         macros up to date.
21237         (_LT_AC_LOCK): Ditto.
21238         (_LT_AC_TAGCONFIG): Ditto.
21239         (AC_PROG_LD): Ditto.
21240         (AC_ENABLE_SHARED): Ditto.  And eliminate the last remaining
21241         changequote invocations.
21242         (AC_ENABLE_STATIC): Ditto.  And Ditto.
21243         (AC_ENABLE_FAST_INSTALL):  Ditto.  And Ditto.
21244         * ltdl.m4 (AC_LTDL_ENABLE_INSTALL): Use Autoconf-2.50 era
21245         quadrigraphs and AC_HELP_STRING to bring AC_ARG_ENABLE
21246         macro up to date.
21247         * NEWS: Updated.
21248
21249         * libtool.m4 [UnixWare7, OpenUNIX8]: Initial support for
21250         UnixWare7 and OpenUNIX8.  Accept these identifiers from the
21251         latest config.guess/config.sub as pseudonyms for sysv5uw[78].
21252         * NEWS: Updated.
21253         Reported by Boyd Lynn Gerber <gerberb@zenez.com>
21254
21255 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
21256
21257         * tests/sh.test: Add a new test to enforce X as the fill
21258         character in `test "X...'.
21259         Beef up the `test' tests to also check `test -.' and `test ! -.'
21260         phrases for compliance.
21261         * ltmain.in: Fix quoting problems uncovered by the new tests.
21262
21263 2001-07-29  Andrew C. Feren  <aferen@CetaceanNetworks.com>
21264
21265         * tests/sh.test:  New test to disallow `test $foo', where
21266         `test "$foo"' is much safer.
21267         * ltmain.in: Fix quoting problems uncovered by the new test.
21268
21269 2001-07-29  Steve Ellcey  <sje@cup.hp.com>
21270
21271         * libtool.m4 (lt_cv_sys_global_symbol_to_cdecl):  Change it from
21272         "extern char" to "extern int" so that GCC 3.0 won't complain and
21273         refuse to compile programs containing "extern char main()".
21274
21275 2001-07-29  Gary V. Vaughan  <gary@gnu.org>
21276
21277         From Guido Draheim <Guido.Draheim@tek.com>:
21278         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Support
21279         cross compilation to mingw by allowing `:' or ';' as a path
21280         separator.
21281         * NEWS: Updated.
21282
21283 2001-07-27  NIIBE Yutaka  <gniibe@m17n.org>
21284
21285         * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all
21286         for sh*-*-linux* (SuperH) too.
21287
21288 2001-07-25  Ossama Othman  <ossama@debian.org>
21289
21290         From Thomas Poindessous <poinde_t@epita.fr>
21291         * ltmain.in (pic_mode):  Added missing quotes around shell
21292         variable in "if test" conditional.
21293
21294         From Peter Moulder <pmoulder@longford.csse.monash.edu.au>
21295         * ltmain.in (xform): Add support for pre-processed
21296         (e.g. `*.{i,ii}' sources).
21297
21298 2001-07-25  Gary V. Vaughan  <gary@gnu.org>
21299
21300         From Steve Ellcey <sje@cup.hp.com>:
21301         * libltdl/ltdl.c (foreach_dirinpath): Free unassigned pointer
21302         fix for `canonical'.
21303
21304 2001-07-23  Robert Boehne  <rboehne@ricardo-us.com>
21305
21306         * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG, AC_LIBTOOL_PROG_LD_SHLIBS)
21307         [aix4*, aix5*]: Fixed a mispelled binder option under AIX.
21308         The option to throw errors for unresolved external references is
21309         -bernotok, not -bnoerok.
21310
21311 2001-07-23  Gary V. Vaughan  <gary@gnu.org>
21312
21313         * Makefile.am (EXTRA_DIST): Don't forget to distribute
21314         ChangeLog.1.
21315
21316         From Erik Lindahl <E.Lindahl@chem.rug.nl>
21317         * libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Used on aix to discover
21318         the compiler's default library search path so that the MPI
21319         compiler suite is not hosed by the previously hardcoded path.
21320         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [aix4*, aix5*]: Use it.
21321
21322 2001-07-23  Andreas Schwab  <schwab@suse.de>
21323
21324         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
21325         s390*-*-linux* and m68*-*-linux*.
21326
21327 2001-07-19  Robert Boehne  <rboehne@ricardo-us.com>
21328
21329         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix tag support
21330         problems with CXX variables being overwritten by the individual
21331         macros.
21332         (AC_LIBTOOL_PROG_CC_C_O): Ditto.
21333         (AC_LIBTOOL_PROG_COMPILER_PIC): Ditto.
21334         (AC_LIBTOOL_LANG_CXX_CONFIG): Moved call to
21335         AC_LIBTOOL_SYS_HARD_LINK_LOCKS after the call to
21336         AC_LIBTOOL_PROG_CC_C_O as it depends on the result.
21337         (AC_LIBTOOL_LANG_GCJ_CONFIG): Ditto.
21338         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
21339         (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Used the macro
21340         _LT_AC_TAGVAR to ensure the correct variable is being queried.
21341         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Changed the naming of shared
21342         objects under IRIX back to what it was in the MLB.
21343
21344 2001-07-23  Mark Kettenis  <kettenis@gnu.org>
21345
21346         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN) [gnu*]: Remove spurious
21347         "break" and bogus comment
21348         (_LT_AC_LANG_CXX_CONFIG): Add support for the Hurd.
21349         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Add support for the Hurd.
21350
21351 2001-07-16  Robert Boehne  <rboehne@ricardo-us.com>, Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
21352
21353         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): add cases and comments for
21354         more platforms, including AIX, Digital/Tru64 UNIX and IRIX.
21355
21356 2001-07-16  Gary V. Vaughan  <gary@gnu.org>
21357
21358         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix ia64 AIX
21359         run-time-linking when not using gcc.
21360         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
21361         Reported by Dan McNichol <mcnichol@austin.ibm.com>
21362
21363 2001-07-12  Gary V. Vaughan  <gary@gnu.org>
21364
21365         From dda@sleepycat.com (Don Anderson):
21366         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [qnx]: New
21367         supported architecture.
21368         (AC_DEPLIBS_CHECK_METHOD) [qnx]:  Ditto.
21369         * NEWS: Updated.
21370
21371         From Stefan Ondrejicka <ondrej@idata.sk>:
21372         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [cygwin*]: Make
21373         sure that /lib/w32api is searched for system libraries to
21374         match recent versions of cygwin.
21375         * NEWS: Updated.
21376
21377 2001-07-12  Dan McNichol  <mcnichol@austin.ibm.com>
21378
21379         From albert chin <china@thewrittenword.com>
21380         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix AIX
21381         run-time-linking when using gcc.
21382         (AC_LIBTOOL_LANG_CXX_CONFIG):  Ditto.
21383
21384 2001-07-11  Gary V. Vaughan  <gary@gnu.org>
21385
21386         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
21387         solaris]: Doh!  the evalled variable shouldn't have been
21388         quoted.
21389
21390         * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
21391         solaris]: output_verbose_link_cmd have unquoted `*' in case
21392         statements for these architectures.  Be sure to quote them
21393         with a sed expression before passing to eval.
21394         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21395
21396 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
21397
21398         * README-alpha:  s/configure.in/configure.ac.
21399         * configure.ac: Bumped version to 1.4c.
21400
21401         GNU libtool 1.4b was released.
21402
21403         * configure.ac: Bumped version to 1.4b.
21404         * NEWS: updated.
21405         * config.guess, config.sub, texinfo.tex:  Synchronised from
21406         ftp.gnu.org.
21407
21408 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
21409
21410         From Michael Elizabeth Chastain <chastain@cygnus.com>:
21411         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
21412         to a maximum of 512Kb, as it seems some HPUX 11.0 systems
21413         have trouble with 1MB.
21414
21415 2001-07-09  Gary V. Vaughan  <gary@gnu.org>
21416
21417         * README-alpha:  Upgrade distribution instructions to include
21418         canonical location of texinfo.tex.
21419
21420 2001-07-09  Timothy Wall  <twall@oculustech.com>
21421
21422         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Don't disable shlibs
21423         on AIX5/IA64 with GNU ld.  Keep gnu defaults if using gnu tools
21424         on AIX5/IA64.
21425
21426 2001-07-09  Robert Boehne  <rboehne@ricardo-us.com>
21427
21428         * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN):  Set max_cmd_len
21429         to -1 on hurd, it has no command line argument limits.
21430         * ltmain.in Handle max_cmd_len=-1 for systems that don't have
21431         command line argument limits.
21432
21433 2001-07-05  Gary V. Vaughan  <gary@gnu.org>
21434
21435         * libtool.m4 (_LT_AC_LANG_C_CONFIG):  Revert to 1.3.x
21436         sematics, and always build static libs when the host machine
21437         cannot build shared libs.  Even if static libs were explicitly
21438         disabled.
21439
21440 2001-07-02  Gary V. Vaughan  <gary@gnu.org>
21441
21442         Cleanup of libltdl:
21443         * ltdl.c (lt_dladderror): Don't use `index' as a variable name,
21444         since it is a function on BSD based boxes.
21445         (lt_dlseterror): Ditto.
21446         (lt_dlexit): Remove unused errormsg declaration.
21447         (foreach_dirinpath):  Make sure filename is initialised.
21448         (find_handle):  Return NULL for a failed search.
21449         (foreachfile_callback): Don't reuse data2 symbol from prototype
21450         in func declaration to prevent symbol shadowing.
21451         * ltdl.h (lt_dlmutex_seterror): Don't use `error' as a parameter
21452         name, since it is a function on glibc boxes.
21453
21454         * libtoolize.in:  Display --version in the same format as
21455         autoconf and automake.
21456         * ltmain.in: Ditto.
21457
21458 2001-06-30  Gary V. Vaughan  <gary@gnu.org>
21459
21460         Merge test improvements from multi-language-branch:
21461         * tests/defs: Find and set the value of CC probed by libtool.m4
21462         * tests/link-2.test: Use a .lo wrapper script, and the value of
21463         CC set by defs instead of hardcoding gcc.
21464         * tests/link.test: Use the value of CC set by defs instead of
21465         hardcoding gcc.
21466         * tests/quote.test: Ditto.
21467         * tests/suffix.test: Ditto.
21468
21469         * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Always set
21470         lt_prog_compiler_wl to `-Wl'.
21471         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
21472
21473         * ltdl.m4 (AC_LTDL_DLLIB) [sco3.2*]: When searching for a dlopen
21474         implementation, and adding `-ldl' has failed, try linking a call
21475         to dlopen, #including dlfcn.h, and without -ldl.  On sco3.2 the
21476         header files redefines the interface symbols to point at the
21477         implementation symbols in libc.
21478         Reported by "Golubev I. N." <gin@mo.msk.ru>
21479
21480 2001-06-29  Tim Van Holder  <tim.van.holder@pandora.be>
21481
21482         General cleanup of autoconf-2.50 upgrade:
21483         * configure.ac: Mark as needing autoconf-mode in
21484         emacs.  Pass arguments to AC_INIT.
21485         * cdemo/configure.ac: Ditto.
21486         * demo/configure.ac: Ditto.
21487         * depdemo/configure.ac: Ditto.
21488         * libltdl/configure.ac: Ditto.
21489         * mdemo/configure.ac: Ditto.
21490         * pdemo/configure.ac: Ditto.
21491         * tagdemo/configure.ac: Ditto.
21492         * ltdl.m4: Mark as needing autoconf-mode in
21493         emacs.
21494         * libtool.m4: Mark as needing autoconf-mode in
21495         emacs.  Don't add () to AS_MESSAGE_LOG_FD.
21496         * libltdl/configure.ac: Use config-h.in as
21497         template for config.h.
21498         * tagdemo/configure.ac: Drop the AC_DIAGNOSTIC. Move
21499         AC_LANG([C++]) after the OBJEXT/EXEEXT check.
21500
21501 2001-06-29  Gary V. Vaughan  <gary@gnu.org>
21502
21503         From Tim Van Holder <tim.van.holder@pandora.be>
21504         * tests/suffix.test: Typo in 2nd for loop.
21505
21506         From Tim Van Holder <tim.van.holder@pandora.be>
21507         * libltdl/Makefile.am (OBJECTS):  This was an implicit variable.
21508         instead state the list of object variables explicitly.
21509
21510         From Bruno Haible <haible@ilog.fr>
21511         * libtool.m4:  undefine the m4 builtin `symbols', so that the
21512         string `symbols' can be used in the rest of the code without
21513         causing errors with autoconf-2.13.
21514
21515         From "Golubev I. N." <gin@mo.msk.ru>
21516         * tests/Makefile.am (CPPLAGS): Typo. s/CPPLAGS/CPPFLAGS.
21517
21518         * mdemo/Makefile,am (foo1_la_LIBADD): Add libsub.la, since foo1
21519         does use symbols from libsub.la -- only platforms that allow
21520         undefined symbols in libraries were able to cope with this
21521         previously.
21522         Reported by Robert Collins <robert.collins@itdomain.com.au>
21523
21524         From "Golubev I. N." <gin@mo.msk.ru>
21525         * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [sco3.2v5*]: Needs
21526         -wl,-Bexport to make self dlopen work.
21527
21528 2001-06-28  Gary V. Vaughan  <gary@gnu.org>
21529
21530         From  Alexander Bluhm  <Alexander.Bluhm@WiredMinds.de>
21531         * libltdl/ltdl.c (lt_dlopen): Fix bad memory initialisation
21532         assumptions.
21533
21534         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE) [HPUX]: Define
21535         lt_cv_sys_global_symbol_to_c_name_address to be a sed expression
21536         for mangling the output of the symbol pipe into a brace delimited
21537         C declaration of symbol name and address.
21538         * ltmain.in: Use it to generate the fooS.c symbol name
21539         Reported by Albert Chin-A-Young  <china@thewrittenword.com>
21540
21541 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>, Gary V. Vaughan  <gary@gnu.org>
21542
21543         * bootstrap: Use cp instead of ln -s, for systems without
21544         symlinks.  Reorder the statements to avoid repetition outside
21545         the loop.
21546
21547 2001-06-28  Paolo Bonzini  <bonzini@gnu.org>, Gary V. Vaughan  <gary@gnu.org>
21548
21549         Libtool now builds with the help of Autoconf-2.50!
21550         * configure.ac (AC_PREREQ):  Require Autoconf-2.50 or newer.
21551         (AC_PROG_CPP, AC_EXEEXT, AC_OBJEXT):  Removed.  Autoconf-2.50
21552         doesn't have the AC_REQUIRE bug that required these to be called
21553         explicitly from here.  Autoconf-2.50 uses this file instead of...
21554         * configure.in: ...this, which is now deleted.
21555         * cdemo/configure.ac, cdemo/configure.in: Ditto.
21556         * demo/configure.ac, demo/configure.in: Ditto.
21557         * depdemo/configure.ac, depdemo/configure.in: Ditto.
21558         * libltdl/configure.ac, libltdl/configure.in: Ditto.
21559         * mdemo/configure.ac, mdemo/configure.in: Ditto.
21560         * pdemo/configure.ac, pdemo/configure.in: Ditto.
21561         * tagdemo/configure.ac, tagdemo/configure.in: Ditto.
21562         * libltdl/acconfig.h:  Deleted.
21563         * Makefile.am (libtool): libtool now depends on configure.ac.
21564         * libtool.m4 (_LT_AC_LOCK):  Use 2.50's AC_LANG_PUSH/AC_LANG_POP
21565         instead of 2.13's AC_LANG_SAVE/AC_LANG_RESTORE.
21566         (AC_LIBTOOL_LANG_C_CONFIG): Ditto.
21567         (AC_LIBTOOL_LANG_CXX_CONFIG): Ditto.
21568         * libtoolize.in:  Use $configure_ac, instead of hardcoding
21569         configure.in.
21570
21571 2001-06-28  Tim Van Holder  <tim.van.holder@pandora.be>
21572
21573         * pdemo/Makefile.am:  Use '=' instead of '+=' to shut up
21574         automake.
21575
21576 2001-06-27  Gary V. Vaughan  <gary@gnu.org>
21577
21578         From brad@openbsd.org:
21579         * NEWS: Updated.
21580         * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]: Improved
21581         support for various openbsd platforms.
21582         (AC_LIBTOOL_PROG_LD_SHLIBS): Ditto.
21583         * ltmain.in: Ditto,
21584
21585 2001-06-26  Gary V. Vaughan  <gary@gnu.org>
21586
21587         * NEWS: Updated.
21588         * libltdl/ltdl,c (LT_DLMUTEX_LOCK): Renamed from MUTEX_LOCK to
21589         avoid potential namespace clash.
21590         (LT_DLMUTEX_UNLOCK, LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR):
21591         Ditto.
21592         (lt_dlmutex_lock_func): Renamed from mutex_lock to avoid a
21593         namespace clash of NCR MP-RAS.
21594         (lt_dlmutex_unlock_func, lt_dlmutex_seterror_func,
21595         lt_dlmutex_geterror_func): Ditto.
21596         Reported by Edouard G. Parmelan <egp@free.fr>
21597
21598         * libltdl/ltdl.c (LT_DLSTRLEN): Call strlen only if the argument
21599         is non-NULL and non-zero in length.  Changed all calls to strlen
21600         appropriately.
21601
21602         * libltdl/ltdl.c: Prototype all static functions.
21603
21604         * ltdl.m4: Bump serial number to 3.
21605         (AC_LIB_LTDL): Require AC_HEADER_DIRENT for ltdl.c.
21606         * libltdl/ltdl.h (lt_dlforeachfile): Prototype for new function.
21607         * libltdl/ltdl.c: Include an appropriate header for the
21608         opendir/dirent api.
21609         (foreach_dirinpath): Visit each file in a list of directories.
21610         (find_file_callback): Factor out the core of find_file() to make
21611         use of foreach_dirinpath().
21612         (find_file): Use it!
21613         (find_handle_callback, find_handle): Ditto.
21614         (lt_dlforeachfile):  New function to find files in a searchpath.,,
21615         (foreachfile_callback): ...using this callback.
21616         * doc/libtool.texi (Libltdl interface): Document new
21617         lt_dlforeachfile api call.
21618
21619 2001-06-25  Gary V. Vaughan  <gary@gnu.org>
21620
21621         * THANKS:  Added Albert Chin-A-Young.
21622
21623         * libtool.m4 (IFS): When IFS is changed to split a string for
21624         examination in a loop, restore it inside the loop as well as
21625         outside incase IFS is needed by commands in that loop.
21626         Reported by Pavel Roskin <proski@gnu.org>
21627
21628 2001-06-25  Albert Chin-A-Young  <china@thewrittenword.com>
21629
21630         * libtool.m4: Prefer shl_load to dlopen on HP-UX because dlopen
21631         won't work properly without a patch.
21632
21633 2001-06-25  Daniel Harvey <daniel@amristar.com.au>
21634
21635         * libtool.m4 (ltdll_cmds): [$]0 doesn't appear to translate through
21636         the script correctly, change to $''0
21637
21638 2001-06-25  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
21639
21640         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
21641         mips-*-linux* and mipsel-*-linux*.
21642
21643 2001-06-24  Andreas Schwab  <schwab@suse.de>
21644
21645         * libtool.m4 (AC_LIBTOOL_SETUP): Remove failed try to
21646         transform linux to linux-gnu in $host.
21647         (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match $host_os against
21648         linux*, not linux-gnu*.
21649         (AC_DEPLIBS_CHECK_METHOD): Likewise.
21650
21651 2001-06-24  Gary V. Vaughan  <gary@gnu.org>
21652
21653         * libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR):  Set
21654         PATH_SEPARATOR appropriately if it is not set already,
21655         (_LT_AC_TAGCONFIG): Use it.
21656         (AC_ENABLE_SHARED): Ditto.
21657         (AC_ENABLE_STATIC): Ditto.
21658         (AC_ENABLE_FAST_INSTALL): Ditto.
21659         (AC_PATH_TOOL_PREFIX): Ditto.
21660         (AC_PATH_MAGIC): Ditto.
21661         (AC_PATH_PROG_NM): Ditto.
21662
21663         From Tim Van Holder  <tim.van.holder@pandora.be>:
21664         * libtool.m4: Use the canonical absolute path test
21665         ([\\/]* | ?:[\\/]) and $PATH_SEPARATOR wherever
21666         appropriate.
21667         (AC_LIBTOOL_PROG_CC_PIC): Properly recognize DJGPP as a
21668         platform that doesn't support shared libraries.
21669         (AC_LIBTOOL_SYS_MAX_CMD_LEN): Avoid this test on DJGPP; use a
21670         fixed value (12K) instead.
21671         (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't forget $ac_exeext
21672         when testing for link success.
21673
21674         * configure.in (AM_INIT_AUTOMAKE): Bumped version to 1.4a.
21675
21676         Complete the new configure time tags creation facility based on
21677         the ltcf-*.sh and ltconfig.in files from multi-language-branch:
21678         * libtool.m4:  More refactoring and reformatting.
21679         (_LT_AC_LANG_GCJ_CONFIG): Merged ltcf-gcj.sh from
21680         multi-language-branch.
21681         (_LT_AC_LANG_CXX_CONFIG): Merged ltcf-cxx.sh from
21682         multi-language-branch.
21683         * configure.in (AC_PROG_CXX, LT_AC_PROG_GCJ): Compiler checks must
21684         be done before AC_PROG_LIBTOOL which appends tags based on their
21685         results.
21686
21687 2001-06-12  Robert Boehne  <rboehne@ricardo-us.com>
21688
21689         * docs/libtool.texi: Updated the libltdl interface documentation
21690         to bring it up to date.
21691
21692 2001-06-06  Gary V. Vaughan  <gary@gnu.org>
21693
21694         * demo/Makefile.am (objdir): Use `libtool --config' for
21695         extracting configuration values, since a given value may
21696         be present in each tag.
21697         (hc-libpath): Ditto.
21698         (hc-minusL): Ditto.
21699         * libtool.m4 (_LT_AC_TAGCONFIG): Add tagged configurations from
21700         the --with-tags option.
21701         (_LT_AC_LTCONFIG_HACK): Factored out into separate configuration
21702         macros -- The interdependencies and running order are still
21703         immutable, and need a lot of work to fix.
21704         (AC_LIBTOOL_CONFIG): Taken from the previous incarnation of
21705         _LT_AC_LTCONFIG_HACK -- this macro is used both to create the
21706         primary (C language) libtool configuration from
21707         _LT_AC_LTCONFIG_HACK and also to append tagged configurations from
21708         _LT_AC_TAGCONFIG.
21709         * NEWS:  Merged from multi-language-branch.
21710
21711 2001-06-06  Robert Boehne  <rboehne@ricardo-us.com>
21712
21713         * bootstrap: Added tagdemo and pdemo tests from
21714         multi-language-branch.
21715         * configure.in: Added pdemo and tagdemo to CONF_SUBDIRS
21716         and merged references to CXX and GCJ from multi-language-branch.
21717         * pdemo: Added test directory from multi-language-branch.
21718         * tagdemo: Added test directory from multi-language-branch.
21719         * tests/Makefile.am: Merged additional tests from
21720         multi-language-branch.
21721         * tests/pdemo-*.test: ditto.
21722         * tests/tagdemo-*.test: ditto.
21723
21724 2001-05-30  Gary V. Vaughan  <gary@gnu.org>
21725
21726         * libtool.m4: Merged ltconfig.in from multi-language-branch.
21727
21728 2001-05-28  Gary V. Vaughan  <gary@gnu.org>
21729
21730         * libtool.m4: Reformatting for consistency, and some refactoring
21731         in preparation for ltcf-*.sh merge.
21732
21733 2001-05-27  Gary V. Vaughan  <gary@gnu.org>
21734
21735         * ltmain.in: Merged from multi-language-branch.
21736         * libtool.m4: Merged from multi-language-branch.
21737         * ChangeLog: Started afresh.  Old ChangeLog history moved to...
21738         * ChangeLog.1: ...here.
21739
21740 2000-06-04  Mark Mitchell  <mark@codesourcery.com>
21741
21742         * ltcf-c.sh (archive_cmds, archive_expsym_cmds) [solaris,
21743         with_gcc]: Use `gcc -shared' to build a shared library.
21744
21745 2001-06-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
21746
21747         * ltcf-c.sh (archive_cmd) [hpux, with_gcc]: Use gcc to link shared
21748         archives.
21749
21750 2001-05-28  Simon Patarin <simon.patarin@inria.fr>
21751
21752         * ltcf-cxx.sh (osf3/osf4/osf5): Support creation of C++  shared
21753         libraries when using g++ with native linker.
21754
21755 2001-05-28  Albert Chin  <china@thewrittenword.com>
21756
21757         * ltconfig.in (version_type, soname_spec) [aix4* | aix5*]: Use
21758         linux-style versioning, and remove trailing .o from soname_spec.
21759
21760 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
21761
21762         * ltcf-cxx.sh (allow_undefined_flag, no_undefined_flag)
21763         [aix4*|aix5*]: Prepend blank.
21764
21765 2001-05-20  Alexandre Oliva  <aoliva@redhat.com>
21766
21767         * configure.in: Reverted to 1.4, to avoid confusion with MLB.
21768         Mainline is the release snapshot, except for the ChangeLog version
21769         number, until the multi-language branch is merged into it.
21770
21771         * ltconfig.in: Fix sh.test regression introduced in previous patch.
21772
21773         * ltconfig.in (lt_cv_sys_max_cmd_len): Improve test to work better
21774         in case of non-built-in echo.  Set bounds correctly.
21775
21776         * ltcf-cxx.sh (allow_undefined_flag) [aix4* | aix5*]: Fix quote
21777         error.
21778
21779         * ltmain.in (exec_cmd): New variable.  Don't exec programs within
21780         the big `case'; set the variable instead, and exec the cmd
21781         afterwards, so that the shell gets a chance to clean up here-doc
21782         files.
21783         * NEWS: Update.
21784
21785 2001-05-16  Alan Modra  <amodra@one.net.au>
21786
21787         * libtool.m4 (lt_cv_deplibs_check_method): pass_all for hppa*-linux.
21788
21789 2001-05-03  Andreas Jaeger  <aj@suse.de>, Andreas Schwab  <schwab@suse.de>
21790
21791         * ltmain.in (relink_command): Arrange for wrapper script to save
21792         output to a variable and display it only if relinking fails.
21793
21794 2001-04-25  Gary V. Vaughan  <gary@gnu.org>
21795
21796         * configure.in: bumped version to 1.4a.
21797
21798         GNU libtool 1.4 was released.
21799
21800         * configure.in: Bumped version to 1.4.
21801         * config.sub, config.guess:  Synchronised from ftp.gnu.org.
21802         * NEWS: updated.
21803
21804 2001-04-24  Peter Eisentraut  <peter_e@gmx.net>
21805
21806         * libtool.m4: Support $host_os as /sysv5uw7*/ from newer
21807         config.guess in addition to older /unixware*/.  Use compiler
21808         driver, not linker, for linking shared libraries.
21809
21810 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
21811
21812         * libtool.m4, ltmain.in, libltdl/configure.in,
21813         tests/quote.test:  Remove stale references to ltconfig.
21814
21815         * ltdl.m4 (AC_C_INLINE): No longer required.
21816         * libltdl/ltdl.c (strdup, strcmp, strchr, strrchr, memcpy, trim,
21817         free_vars):  Revoke inline keyword from declarations.  `static
21818         inline' is not very portable, and in addition Unixware 7.1.1's
21819         compiler says you can't access static variables from inline
21820         functions.
21821         Reported by Peter Eisentraut  <peter_e@gmx.net>
21822
21823 2001-04-24 Albert Chin-A-Young <china@thewrittenword.com>
21824
21825         * libtool.m4: Handle case where /bin/nm -p outputs multiple
21826         symbol types (like under HP-UX 11.00).
21827
21828 2001-04-24  Thomas Tanner  <tanner@ffii.org>
21829
21830         * TODO: describe problems with libltdl
21831         * ltmain.in (ILD): tidy up, add comments, remove dead code,
21832           merge duplicate code
21833         * ltmain.in (ILD): don't touch newdependency_libs after scan or
21834           dlopen pass
21835         * ltmain.in (ILD): don't dlpreopen dependency_libs of a dlopened
21836           module (remove absolutely wrong quick hack)
21837         * ltmain.in (ILD): remove wrong comments about duplicate removal
21838         * ltmain.in (ILD): build a static-only module if it has
21839           static libraries in its dependencies (so that libltdl can
21840           safely load dependency_libs)
21841         * ltmain.in (argument parsing): prefix comparsions of -l args with X,
21842           replace -lc with `-framework System' _after_ the ILD passes
21843         * ltmain.in (argument parsing): support dl[pre]open
21844           for both .o and .lo files
21845         * ltmain.in (deplibs_check): use portable test syntax
21846         * ltmain.in (help): document -prefer-[non-]pic flags
21847         * ltmain.in: improve readablity by adding some comments,
21848           rename uninst_* to notinst_* (more adequate name)
21849
21850 2001-04-24  Gary V. Vaughan  <gary@gnu.org>
21851
21852         * doc/PLATFORMS:  More updates from subscribers to
21853         libtool@gnu.org.
21854
21855         From Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21856         * tests/Makefile.am (TESTS_ENVIRONMENT): Make sure the *.test
21857         scripts get the same make that was used in the top level
21858         directory.
21859
21860 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
21861
21862         * doc/PLATFORMS:  Updated with more platforms successfully
21863         tested by members of libtool@gnu.org.
21864
21865 2001-04-23  Peter Eisentraut  <peter_e@gmx.net>
21866
21867         * doc/PLATFORMS:  With this patch, freebsd4.3 passes the test
21868         suite.
21869         * libltdl/ltdl.c (lt_dlexit): Quit loop if only resident modules
21870         are left.
21871
21872 2001-04-23  Gary V. Vaughan  <gary@gnu.org>
21873
21874         * doc/PLATFORMS:  With this patch, my Solaris boxes now pass the
21875         test suite,  Yay!
21876         From Albert Chin-A-Young <china@thewrittenword.com>
21877         * ltmain.in:  `test -L' is not portable, and infact breaks uninstall
21878         mode on Solaris.  Fallback to `test -h' and finally `test -f',
21879         but be careful not to let the failure status cause libtool to
21880         stop.
21881
21882         From Simon Spero <ses@ibiblio.org>
21883         * ltdl.m4 (AC_LTDL_DLSYM_USCORE):  Add $LIBADD_DL while
21884         checking for dlsym _.
21885
21886         From Simon Spero <ses@ibiblio.org>
21887         * libtool.m4 (lt_cv_deplibs_check_method) [darwin]: Set it!
21888
21889         * TODO: Make a note to undo this later.
21890         From Christoph Pfisterer <cp@chrisp.de>
21891         * libtool.m4: Use $() execution substitution quotation to work
21892         around zsh builtin echo \ escape removal.
21893
21894 2001-04-22  Peter Eisentraut  <peter_e@gmx.net>
21895
21896         * bootstrap: Allow overriding the location aclocal, automake,
21897         autoconf, autoheader from the environment.
21898
21899         * demo/Makefile.am: Automake 1.4e does not allow `+=' assignments
21900         if the variable was not set with `=' earlier.  `+=' was not useful
21901         here anyway.
21902
21903 2001-04-22  Gary V. Vaughan  <gary@gnu.org>
21904
21905         * ltdl.m4 (AC_CHECK_HEADERS): UW7 has sys/dl.h, so we must
21906         check for that here.
21907         * libltdl/ltdl.c (HAVE_SYS_DL_H):  Include it if necessary for
21908         the dlopen loader.
21909         Reported by Matthew Schalit <mschalit@pacbell.net>
21910
21911         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use pass_all for
21912         various releases of UnixWare and OpenServer that support it.
21913         Reported by Matthew Schalit <mschalit@pacbell.net>
21914
21915         * doc/PLATFORMS:  Updated with various platforms successfully
21916         tested by members of libtool@gnu.org.
21917
21918 2001-04-21  Gary V. Vaughan  <gary@gnu.org>
21919
21920         * TODO:  propose pkg-config merge.
21921
21922 2001-04-21  Nick Hudson  <skrll@netbsd.org>
21923
21924         * ltmain.in: Correct an error in yesterday's patch.
21925
21926 2001-04-20  Nick Hudson  <skrll@netbsd.org>
21927
21928         * libtool.m4: Improve NetBSD support.
21929         * ltmain.in: ditto.
21930
21931 2001-04-19  Dan McNichol <mcnichol@austin.ibm.com>
21932
21933         * libtool.m4: Build standard shared libraries on AIX POWER
21934         more like AIX does, with a shared object archived into lib<xxx>.a.
21935         On AIX -bexpall flag does strange things... Don't use it.
21936         Fix quotes around -berok flag.  Add support for AIX 5.
21937         Add support for run time linking on AIX POWER. (should work
21938         on AIX 4.2 and up).  Turn this feature on by adding -brtl flag
21939         to LD_FLAGS.  Add support for AIX on IA64. Note: AIX on IA64
21940         uses a SYSV type linker.  Add a comment telling what to do if the
21941         TOC starts getting too large on AIX.
21942         * NEWS: mention aix5 support.
21943
21944 2001-04-18  Alexandre Oliva  <aoliva@redhat.com>
21945
21946         * TODO: Add -L- flag.
21947
21948 2001-04-11  Alexandre Oliva  <aoliva@redhat.com>
21949
21950         * libtool.m4 (no_undefined_flag) [Solaris ld]: Change to -zdefs.
21951
21952 2001-04-11  Ossama Othman  <ossama@uci.edu>
21953
21954         * AUTHORS: Added myself to the list of maintainers.
21955
21956 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
21957
21958         * libtool.m4 (hardcode_libdir_flag_spec, osf4/osf5): Use ${wl}
21959         to pass -rpath when compiling with gcc.
21960         Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21961
21962         * libltdl/ltdl.c (sys_shl_open): Cache a handle for the `self'
21963         module, since HPUX adds module symbols into the `self' pool if
21964         it is opened later.  Return the cached pointer if the caller
21965         subsequently tries to open `self'.
21966         (sys_shl_sym): Diagnose NULL modules.
21967
21968         From Peter Eisentraut  <peter_e@gmx.net>
21969         * ltmain.in (clean,uninstall): test -e is not portable.  Well,
21970         neither is -L, but I'm hoping that redirecting error messages
21971         to /dev/null and relying on non-zero exit status will work okay
21972         on the few hosts that don't support -L.
21973
21974 2001-04-08  Nick Hudson  <skrll@netbsd.org>
21975
21976         * ltmain.in: Improve check for valid -version-info parameter.
21977
21978 2001-04-08  Gary V. Vaughan  <gary@gnu.org>
21979
21980         From Nick Hudson  <skrll@netbsd.org>
21981         * doc/Makefile.am (libtool_TEXINFOS): Add fdl.texi so that it
21982         is included in the distribution.
21983
21984 2001-04-07  Peter Eisentraut  <peter_e@gmx.net>
21985
21986         * ltmain.in (clean,uninstall): Do not error if the file doesn't
21987         exist and 'rm -f' was used.  Exit with status 1 on error.
21988
21989 2001-04-06  Nick Hudson  <skrll@netbsd.org>
21990
21991         * ltmain.in: Implement a new deplibs_check_method called
21992         match_pattern that does pattern matching on filenames...
21993         * libtool.m4: ...use it with NetBSD
21994
21995 2001-04-05  Gary V. Vaughan  <gary@gnu.org>
21996
21997         * doc/libtool.texi (Multiple dependencies): A note about the
21998         problems I've reintroduced by reverting the my patch of 2001-03-31.
21999
22000         From Edward Lee <tailbert@yahoo.com>
22001         * libtool.m4: Typos.
22002
22003         * tests/Makefile.am (TESTS): Delete references to depdemo-dups.test.
22004         * tests/depdemo-dups.test:  Removed, as part of the patch
22005         reversion below.
22006         * ltmain.in: Revert my change from 2001-03-31.  Although it
22007         was technically correct, it opens a whole can of worms we don't
22008         want to deal with right now.
22009
22010         From Ahmed Masud <masud@googgun.com>
22011         * libltdl/ltdl.c (sys_shl_open):  Return a NULL module handle
22012         for self opening.
22013         (sys_shl_close):  Be careful not to close a NULL module handle.
22014         (sys_shl_sym):  Allow shl_findsym() to open NULL modules, but
22015         discard the modified module address it returns.
22016
22017         * libltdl/ltdl.c (lt_dlopen):  When reading the .la file,
22018         reallocate the line buffer size if the line overflows the
22019         original buffer.
22020         Reported by Nick Hudson <skrll@netbsd.org>
22021
22022         * NEWS (1.3d) Removed bogus ltconfig reference.
22023
22024 2001-04-03  Gary V. Vaughan  <gary@gnu.org>
22025
22026         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Remove the spurious
22027         `dnl' from the help text of --with-pic.
22028         Reported by stefan <stefan@lkcc.org>
22029
22030 2001-04-02  Gary V. Vaughan  <gary@gnu.org>
22031
22032         * configure.in: bumped version to 1.3e.
22033
22034         GNU libtool 1.3d was released.
22035
22036         * NEWS: inserted todays date.
22037
22038 2001-04-01  Christoph Pfisterer  <cp@chrisp.de>
22039
22040         * libtool.m4: Fixed support for Darwin and Rhapsody. Now correctly
22041         hardcodes the library path and adds versioning. Other small
22042         fixes.
22043         * ltmain.in: Fixed special cases for libc and libm on Rhapsody and
22044         Darwin. One of them was misplaced. Added version_type case for
22045         Rhapsody and Darwin, named "darwin".
22046
22047 2001-03-31  Gary V. Vaughan  <gary@gnu.org>
22048
22049         * ltmain.in: Remove the code for stripping duplicate deplibs
22050         from libtool link lines -- duplicates are somtimes necessary
22051         to satisfy inter-library dependencies, and never cause link to
22052         fail even if they are spurious.
22053         * tests/depdemo-dups.test: New file.  Make sure this bug doesn't
22054         creep back in again!
22055         * tests/Makefile.am (TESTS): Use the new test above.
22056
22057 2001-03-29  Edward M. Lee  <tailbert@yahoo.com>
22058
22059         * libtoolize.in: Check configure.ac and prefer configure.ac to
22060         configure.in.
22061
22062         * libtoolize.in: change recommendation from AM_PROG_LIBTOOL to
22063         AC_PROG_LIBTOOL.
22064
22065         * libtool.m4: Generate dll/import libraries for cygwin according
22066         to the following: libFOO.a (static lib), libFOO.dll.a (import
22067         lib), cygFOO-version.dll (dll).  Update postinstall_cmds and
22068         postuninstall_cmds to reflect this.
22069         * ltmain.in: Generate installed .la files with dlnames set to
22070         ../bin/cygFOO-version.dll for normal dlls. dlls for modules
22071         remain with the .la file.
22072
22073         * libltdl/ltdl.c:  Use windows paths while calling LoadLibrary.
22074
22075 2001-03-16  Albert Chin  <china@thewrittenword.com>
22076
22077         * libtool.m4 (save_CPPFLAGS): Fix typo.
22078
22079 2001-03-13  Alexandre Oliva  <aoliva@redhat.com>
22080
22081         * libtool.m4 (lt_cv_compiler_c_o): Cache it.
22082         (lt_cv_compiler_o_lo): Likewise.
22083
22084 2001-03-09  Peter Eisentraut  <peter_e@gmx.net>
22085
22086         * ltmain.in (clean): Automatically remove $objdir (usually '.libs').
22087
22088 2001-03-08  Gary V. Vaughan  <gary@gnu.org>
22089
22090         * ltconfig.in (library_names_spec): Undo latin-1 spaces I pasted
22091         in yesterday by mistake.
22092
22093 2001-03-07  Gary V. Vaughan  <gary@gnu.org>
22094
22095         From Tor Lillqvist <tml@iki.fi>
22096         * libtool.m4 (export_symbols): On Windows, if the export_symbols
22097         file (which has been passed to libtool with the -export-symbols
22098         command line switch) already is a .def file, use it as is.
22099
22100         * libtool.m4 (library_names_spec): Using m4 quotes correctly this
22101         time around!
22102
22103         From Tor Lillqvist <tml@iki.fi>
22104         * libtool.m4 (library_names_spec): Use an appropriate filename
22105         prefix for dlls -- lib for mingw; cyg for cygwin; pw for pw32.
22106
22107 2001-03-06  Alexandre Oliva  <aoliva@redhat.com>
22108
22109         * libtool.m4 (can_build_shared) [AIX 4.[01], GCC]: GCC up to
22110         2.96 can't build shared libraries reliably.  Disable them.
22111
22112         * ltmain.in: When dropping dependencies of a -no-undefined
22113         library, give up on building a shared library.
22114
22115 2001-03-05  Akim Demaille  <akim@epita.fr>
22116
22117         * ltmain.sh: Don't quote the argument of case/esac and
22118         assignments.
22119         * libtool.m4: Likewise.
22120
22121 2001-03-03  Markus F.X.J. Oberhumer <markus@oberhumer.com>,
22122             Alexandre Oliva <oliva@lsd.ic.unicamp.br>
22123
22124         * libtool.m4: Added explicit return type to all C functions.
22125
22126 2001-02-22  Gary Vaughan  <gary@gnu.org>
22127
22128         * NEWS: Updated.
22129         * doc/libtool.texi (Thread Safety in libltdl): New node describing
22130         the  application the new MT API.
22131         * libltdl/ltdl.h: Prototypes.
22132         * libltdl/ltdl.c: Use these functions throughout the rest of
22133         the file to provide thread locking.
22134         (lt_dlmutex_register): New function to set callbacks for
22135         multi-threaded calls into libltdl.
22136         (lt_dl_mutex_lock): Type of a locking callback function.
22137         (lt_dl_mutex_lock): Type of an unlocking callback function.
22138         (lt_dl_mutex_seterror): Type of a callback function to save the
22139         last libltdl error message in thread local storage.
22140         (lt_dl_mutex_geterror): Type of a callback function to retrieve
22141         the last saved error message from thread local storage.
22142
22143 2001-02-20  Gary Vaughan  <gary@gnu.org>
22144
22145         * libltdl/ltdl.c (lt_dlcaller_register): dont set an unsigned
22146         type to a negative number.
22147         Reported by Guenter Millahn <Guenter.Millahn@Informatik.TU-Cottbus.DE>
22148
22149 2001-02-05  Gary V. Vaughan  <gary@gnu.org>
22150
22151         From Nick Hudson <skrll@netbsd.org>
22152         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): netbsd* is able to
22153         automatically load module deplibs without assistance from
22154         libltdl.
22155
22156 2001-02-02  Gary V. Vaughan  <gary@gnu.org>
22157
22158         * libltdl/ltdl.c (load_deplibs): Make sure the depcount is reset,
22159         even when deplibs are not used because of the patch below.
22160
22161         * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): If we know that the host
22162         architecture automatically loads deplibs, then...
22163         * libltdl/ltdl.c (load_deplibs): ...don't manually load each one.
22164
22165 2001-01-31  Gary V. Vaughan  <gary@gnu.org>
22166
22167         * TODO:  Updated.
22168
22169         * libltdl/ltdl.c (load_deplibs): If loading a deplib fails,
22170         don't sweat -- it may be a lib that is already statically linked
22171         into the loading application.
22172
22173         * libltdl/ltdl.c: Clean up the shadowing of the global handles
22174         variable.
22175         (LT_DLRESIDENT_FLAGS): Add extra parens to satisfy -Wall.
22176         (load_deplibs):  Cast isspace() argument to an int to satisfy
22177         -Wall.
22178
22179 2001-01-30  Robert Boehne  <rboehne@ricardo-us.com>
22180
22181         * AUTHORS: added myself to the list of maintainers.
22182
22183 2001-01-28  Alexandre Oliva  <aoliva@redhat.com>
22184
22185         * libltdl/Makefile.am (CLEANFILES): Clean conditionally-built
22186         libraries.
22187
22188 2001-01-27  Alexandre Oliva  <aoliva@redhat.com>
22189
22190         * libtool.m4 (ld_shlibs) [aix4*]: Disable on unknown CPU types.
22191
22192 2001-01-07  Gary V. Vaughan  <gary@gnu.org>
22193
22194         * NEWS: Updated.
22195         * doc/libtool.texi (User defined module data): Updated.
22196         * libltdl/ltdl.c (lt_dlhandle_next): New function.
22197         * libltdl/ltdl.h (lt_dlhandle_next): Prototypes.
22198
22199 2001-01-05  Gary V. Vaughan  <gary@gnu.org>
22200
22201         * NEWS: Updated.
22202         * doc/libtool.texi (User defined module data):  Document it all.
22203         * ltdl.m4:  Check for memcpy, or else bcopy.
22204         * ltdl.c (lt_caller_data): New type.
22205         (lt_dl_handle_struct): Add an lt_caller_data field.
22206         (lt_dlcaller_register, lt_dlcaller_set_data,
22207         lt_dlcaller_get_data): New functions.
22208         (rpl_memcpy): A minimal fallback implementation.
22209         (rpl_realloc): A realloc implemented with lt_dlmalloc and
22210         lt_dlfree.
22211         (LT_DLMALLOC, LT_DLFREE, LT_DLREALLOC, LT_DLMEM_REASSIGN):
22212         New memory handling convenience macros.  Use them
22213         appropriately throughout the rest of this file.
22214         * ltdl.h (lt_dlcaller_register, lt_dlcaller_set_data,
22215         lt_dlcaller_get_data): Prototyped.
22216
22217 2001-01-04  Gary V. Vaughan  <gary@gnu.org>
22218
22219         * libltdl/ltdl.h:  formatting change.
22220
22221 2000-12-23  Gary V. Vaughan  <gary@gnu.org>
22222
22223         From vvv@vsu.ru:
22224         * doc/fdl.texi (GNU Free Documentation License): contained @bye
22225         command which prevented part of document to be generated (indices,
22226         etc).
22227         * doc/libtool.texi (Dlpreopening): the @deftypevar did not contain
22228         a space after a type.
22229
22230 2000-12-22  Akim Demaille  <akim@epita.fr>
22231
22232         * libtool.m4: s/[ \t]*$//
22233
22234 2000-12-22  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
22235
22236         * libtool.m4 (OSF/1):  Revert my patch of 2000-12-16.
22237
22238 2000-12-20  Gary V. Vaughan  <gary@gnu.org>
22239
22240         * libltdl/ltdl.c (lt_dlexit): Was checking for residency of the
22241         wrong module.
22242         Reported by Robert Boehne  <rboehne@ricardo-us.com>
22243
22244         * ltmain.in (dlprefiles): Now that `2000-12-15 Utz-Uwe Haus' patch
22245         below can detect preopened library deplibs correctly in libltdl,
22246         we need to ensure that libtool library deplibs are also preloaded
22247         into the binary for that phase to work.
22248
22249 2000-12-16  Aneesh Kumar K.V  <kvaneesh@hotmail.com>
22250
22251         * libtool.m4 (OSF/1): Change the way to pass linker flags through
22252         compiler on a Tru64 machine.
22253
22254 2000-12-16  Gary V. Vaughan  <gary@gnu.org>
22255
22256         * libtool.m4 (sys_lib_search_path_spec): Use test instead of
22257         `['.
22258         (archive_cmds): And another one.
22259
22260         * libtool.m4 (darwin*): Fixed a pair of stupid typos I made in the
22261         last patch.
22262
22263         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  moved rogue settings from
22264         sequent, ncr and newos6 back into here from other macros.
22265
22266 2000-12-16   Wilfredo Sanchez  <wsanchez@apple.com>
22267
22268         * libtool.m4: (dyld/darwin*) Much improved port.
22269         * ltmain.in: (dyld/darwin*) Much improved port.
22270
22271 2000-12-16  Sascha Schumann <sascha@schumann.cx>
22272
22273         * libtool.m4: Accept darwin as an alias for rhapsody.
22274         * ltmain.in: ditto.
22275
22276         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use the HPUX 10.20
22277         methods to check for library dependencies on HPUX 11.
22278
22279 2000-12-16  Nick Hudson  <skrll@netbsd.org>
22280
22281         * libtool.m4 (netbsd*, deplibs_check_method): Enable ILD support
22282         for NetBSD a.out.
22283
22284 2000-12-15  Akim Demaille  <akim@epita.fr>
22285
22286         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Rename
22287         `ac_cv_sys_global_symbol_pipe' as `lt_cv_sys_global_symbol_pipe'.
22288         Similarly with `lt_cv_global_symbol_to_cdecl
22289         (_LT_AC_LTCONFIG_HACK): Similarly with `ac_cv_prog_cc_pic',
22290         `ac_cv_prog_cc_shlib', `ac_cv_prog_cc_wl', `ac_cv_prog_cc_static',
22291         `ac_cv_prog_cc_no_builtin', `ac_cv_prog_cc_can_build_shared',
22292         `ac_cv_prog_cc_static_works', `ac_cv_archive_cmds_need_lc'.
22293         (AC_PATH_TOOL_PREFIX): Similarly with `ac_cv_path_MAGIC_CMD'
22294         (AC_PROG_LD) <ac_cv_path_LD>: Likewise.
22295         (AC_PROG_LD_GNU) <ac_cv_prog_gnu_ld>: Likewise.
22296         (AC_PROG_NM) <ac_cv_path_NM>: Likewise.
22297
22298 2000-12-15  Utz-Uwe Haus  <haus@mail.math.uni-magdeburg.de>
22299
22300         * libltdl/ltdl.c (lt_dlopen): Changed "dl_dependency_libs" keyword
22301         to "dependency_libs".
22302
22303 2000-12-14  Tod Milam  <tmilam@traclabs.com>
22304
22305         * libltdl/ltdl.c (lt_dlexit): Reset the loaders value to zero when
22306         the last module has been unloaded.
22307
22308 2000-12-14  Michael Schmitz  <mschmitz@iname.com>
22309
22310         * libtool.m4: Port to *-sni-sysv4 (Reliant Unix)
22311         * README: added Reliant Unix to hte list of supported platforms
22312         * doc/PLATFORMS: added note on tests on Reliant Unix
22313
22314 2000-12-14  Masahiro Nobori  <nobori@ss.titech.ac.jp>
22315
22316         * README:  Updated.
22317         * NEWS: Updated.
22318         * libtool.m4:  New port to NEWS-OS Release 6.
22319
22320 2000-12-14  Nick Hudson  <skrll@netbsd.org>
22321
22322         * libtool.m4 (hardcode_libdir_flag_spec):  Remove linker
22323         specification for netbsd.
22324
22325 2000-12-14  Akim Demaille  <akim@epita.fr>
22326
22327         * libtool.m4:  Don't depend on Autoconf internals:
22328         s/ac_cv_prog_gcc/GCC/.
22329
22330 2000-12-14  Gary V. Vaughan  <gary@gnu.org>
22331
22332         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't empty
22333         out ac_cv_global_symbol_to_cdecl inside the loop, incase we
22334         need to go around again and try with underscore prefix.
22335         (_LT_AC_TRY_DLOPEN_SELF): On some hosts (cygwin for instance)
22336         self dlclosing unloads the main program and causes a SIGSEGV.  So
22337         don't do it for now.
22338
22339 2000-12-05  Gary V. Vaughan  <gary@gnu.org>
22340
22341         Oh My! Cygwin support has bitrotted while I was looking the other
22342         way.  This should fix it some:
22343         * libtool.m4 (extract_expsyms_cmds): There is a quoting problem
22344         with autoconf-2.13 that prevents [$]0 from expanding.  Use shell
22345         quotes instead to delay eval of $0.
22346         (impgen.c) The '# ' sequence stripped by sed works again.
22347
22348 2000-12-01  Gary V. Vaughan  <gary@gnu.org>
22349
22350         * doc/libtool.texi (Libltdl interface):  Add documentation.
22351         * libltdl/ltdl.h (lt_dlmakeresident, lt_dlisresident):  Add
22352         prototypes.
22353         (LT_DLERROR_CLOSE_RESIDENT_MODULE): New error status.
22354         * libltdl/ltdl.c (lt_dlmakeresident, lt_dlisresident):  Allow
22355         making and testing of resident module status, which prevents a
22356         module from being lt_dlclosed.
22357         (lt_dlopen):  If lt_dlopen()ing self, make the module resident.
22358         (lt_dlclose):  Return an error if the module is resident.
22359
22360         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Move the tests for dlopen
22361         from here...
22362         (AC_LIBTOOL_DLOPEN_SELF): ...to here.
22363         (_LT_AC_CHECK_DLFCN):  Factor out repeated code for dlfcn.h
22364         (_LT_AC_TRY_DLOPEN_SELF): Factor out repeated code for
22365         checking dlopen status.
22366         * ltdl.m4 (AC_LIB_LTDL):  Use _LT_AC_CHECK_DLFCN.
22367         dlopen compile time checking.  Use _LT_AC_CHECK_DLFCN.
22368         (AC_LTDL_DLSYM_USCORE):  Use _LT_AC_TRY_DLOPEN_SELF.
22369
22370 2000-11-29  Gary V. Vaughan  <gary@gnu.org>
22371
22372         * libltdl/ltdl.h (lt_dlhandle): Rename the wrapped structure
22373         to prevent nameclash when used from C++.
22374         * libltdl/ltdl.c: Fixed all references.
22375
22376 2000-11-25  Gary V. Vaughan  <gary@gnu.org>
22377
22378         * libltdl/ltdl.c (lt_dlopen):  Change the default search order
22379         for modules.  If the named module has no directory component,
22380         always start the search with the user_search_path directories,
22381         and then fall back on the current directory only if that fails.
22382
22383 2000-11-20  Gary V. Vaughan  <gary@gnu.org>
22384
22385         * libltdl/Makefile.am (libltdl_la_LDFLAGS): increment the version
22386         number to reflect the breakage of binary compatibility.
22387         * doc/libtool.texi (Libltdl interface):  Document
22388         LT_NON_POSIX_NAMESPACE.
22389         * libltdl/ltdl.h (LT_POSIX_NAMESPACE):  Deleted.  The default is
22390         now to use this namespace, so the cpp macro is no longer
22391         necessary.
22392
22393 2000-11-20  Morten Eriksen  <mortene@sim.no>
22394
22395         * ltdl.m4 (AC_LIB_LTDL, AC_LTDL_SYMBOL_USCORE): Break a circular
22396         dependency between AC_LTDL_SYMBOL_USCORE and AC_LTDL_DLSYM_USCORE.
22397
22398 2000-11-20  Paul Berrevoets  <paul@swi.com>
22399
22400         * ltmain.in: Some versions of expr respond with "0" if a
22401         regexp fails to match.
22402
22403 2000-11-19  Paul Berrevoets  <paul@swi.com>
22404
22405         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote the $ in $#, $2 and
22406         $3 in variable 'archive_expsym_cmds' for cygwin.
22407
22408 2000-11-19  Gary V. Vaughan  <gary@gnu.org>
22409
22410         * ltdl.c: Relegate non-POSIX-compliant symbols (e.g. those
22411         ending in ``_t'') to deprecated #define compatibility macros.
22412         Also ease up on the namespace pollution, so that only ``lt_''
22413         and ``LT_'' prefixes are taken from the global namespace.
22414         * ltdl.h: ditto.
22415
22416 2000-11-17  Gary V. Vaughan  <gary@gnu.org>
22417
22418         * ltdl.c: Reformatted.
22419         * ltdl.h: ditto.
22420
22421 2000-11-11  Gary V. Vaughan  <gary@gnu.org>
22422
22423         * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Use $ac_ext for conftest
22424         sourcefile.
22425         * libtool.m4: Use $ac_ext and $ac_objext respectively for conftest
22426         sources and objects.
22427         Reported by Carlo Wood <carlo@alinoe.com>
22428
22429         * doc/fdl.texi: New file.  The license for distributing the
22430         libtool manual.
22431         * doc/libtool.texi: Reference the new license.
22432
22433 2000-10-31  Morten Eriksen  <mortene@sim.no>
22434
22435         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote argument to avoid
22436         error output from cygpath when $srcdir is empty.
22437
22438 2000-10-31  Gary V. Vaughan  <gary@gnu.org>
22439
22440         * bootstrap:  rm Makefiles to prevent infinite loop during
22441         configure when libtool.m4 is newer than Makefile.
22442
22443 2000-10-31  Akim Demaille  <akim@epita.fr>
22444
22445         * libtool.m4: Adjust the copyright notice.
22446         Quote all the macro names when defined.
22447         Some minor formatting changes.
22448         (AM_PROG_LIBTOOL, AM_ENABLE_SHARED, AM_ENABLE_STATIC)
22449         (AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_PROG_LD, AM_PROG_NM):
22450         Don't use indir when useless.  Don't add trailing `dnl' either.
22451
22452 2000-10-30  Gary V. Vaughan  <gary@gnu.org>
22453
22454         * doc/libtool.texi:  Corrected another attack of CRLF line
22455         endings.
22456
22457 2000-10-30  Ossama Othman  <ossama@debian.org>
22458
22459         * libtool.m4 (archive_expsym_cmds): Fix typo where line was broken
22460         in the middle of an expression.
22461
22462 2000-10-30  Aneesh Kumar K.V <kvaneesh@hotmail.com>
22463
22464         * libtool.m4 (archive_expsym_cmds):  Support for -export-symbol
22465         option on Tru64.
22466         (hardcode_libdir_flag_spec): Fixed cxx throwing error while using
22467         libtool.  Done by passing -rpath directlty to the compiler.
22468
22469 2000-10-27  Robert Boehne  <rboehne@ricardo-us.com>
22470
22471         * docs/libtool.texi: Added pointers to documentation
22472         of Hewlett-Packard, Compaq Tru64 and IBM AIX systems.
22473
22474 2000-10-02  Gary V. Vaughan  <gary@gnu.org>
22475
22476         From Bruce Korb <bkorb@cruzio.com>
22477         * ltmain.in (execute_dlfiles): Reduce obfuscation.
22478
22479 2000-09-30  Alexandre Oliva  <aoliva@redhat.com>
22480
22481         * libtool.m4 [netbsd*] (deplibs_check_method, file_magic_cmd,
22482         file_magic_test_file): Removed inappropriate duplicate
22483         definitions; these variables are set in AC_DEPLIBS_CHECK_METHOD.
22484
22485         * libtool.m4 (lt_cv_file_magic_cmd): Don't use '${MAGIC_CMD}' or
22486         '${OBJDUMP}'; Solaris' /bin/sh loses with `}' in cache files.
22487         (ac_cv_path_MAGIC_CMD): Renamed to lt_cv_path_MAGIC_CMD.
22488
22489 2000-09-28  Gary V. Vaughan  <gary@gnu.org>
22490
22491         * libtool.m4 (MAGIC_CMD): Don't use MAGIC, since BSD versions of
22492         the file command use this environment variable to hold the
22493         location of the magic database.
22494         Reported by Marc Espie <Marc.Espie@liafa.jussieu.fr>
22495
22496 2000-09-19  Gary V. Vaughan  <gary@gnu.org>
22497
22498         * doc/PLATFORMS: Updated.
22499         * demo/configure.in:  Revert to the `libtool --features' test.
22500         * Makefile.am (libtool):  This needs to rerun configure now that
22501         libtool is generated entirely by AC_PROG_LIBTOOL again.
22502         (ltconfig): Removed.
22503         (ltmain.sh):  Is now regenerated when ltmain.in changes.
22504         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Now does all of the work for
22505         generating libtool immediately in configure.in, rather than
22506         deferring part of the creation until config.status runs.
22507
22508 2000-09-17  Gary V. Vaughan  <gary@gnu.org>
22509
22510         * bootstrap:  Backed out yesterdays patch which is no longer
22511         necessary.
22512         * Makefile.am (libtool): Reworked rule for regeneration of libtool,
22513         now that it is built entirely withing config.status.
22514         (libtoolize): Tidied for orthogonality with the other generation
22515         rules.
22516         (ltconfig):  This is now generated by AC_PROG_LIBTOOL, called from
22517         make by running config.status --recheck.
22518         (ltmain.sh): Moved primary generation of this file into here...
22519         * configure.in (AC_OUTPUT): ...instead of here.
22520         * libtool.m4 (AC_OUTPUT_COMMANDS):  Write the config to ltconfig
22521         where it can be reused, rather than directly to libtool.
22522         * demo/configure.in:  libtool is no longer present immediately
22523         after AC_LIBTOOL_M4 has completed, so the tests now grep through
22524         ltconfig instead -- which *will* be present.
22525
22526 2000-09-16  Gary V. Vaughan  <gary@gnu.org>
22527
22528         * TODO: Removed the item describing the change below, and added a
22529         similar item to remind us to change the ltdl.m4 macros again when
22530         _LT_AC_LTCONFIG_HACK is divided into proper macros.
22531         * ltdl.m4 (AC_LTDL_SNARF_CONFIG):  Removed.  No longet required
22532         now that ltconfig has migrated to libtool.m4.
22533         (AC_LTDL_SHLIBEXT): Require _LT_AC_LTCONFIG_HACK.
22534         (AC_LTDL_SHLIBPATH): ditto.
22535         (AC_LTDL_SYSSEARCHPATH): ditto.
22536
22537         * ltdl.m4 (AC_LTDL_DLPREOPEN): Require the libtool.m4 symbol_pipe
22538         macro.
22539         (AC_LTDL_SYMBOL_USCORE): ditto.
22540         (AC_LTDL_GLOBAL_SYMBOL_PIPE): Removed, since it is a duplicate
22541         of...
22542         * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): ...this new
22543         macro, extracted from _LT_AC_LTCONFIG_HACK.
22544
22545         * ltdl.m4 (changequote): An audit of changequote and m4
22546         quote usage -- all changequotes have been removed, and some
22547         latent unquoted `[' and `]' bugs have been fixed.
22548
22549         * configure.in (AC_OUTPUT): ltmain.sh must be generated in the
22550         source tree since this is where it would be found in a freshly
22551         unrolled tarball.
22552
22553         * configure.in: Replace `dnl' comments with `#' comments for
22554         more conformity with cvs autoconf.
22555         Removed emacs hack-local-variables, since there is now a
22556         proper Autoconf major mode.
22557         Removed a couple of changequote()s.
22558
22559         * bootstrap (ltconfig): When bootstrapping libtool with a
22560         stock automake (i.e. without the README patch applied),
22561         references to ltconfig are manually removed from the generated
22562         Makefile.in files.
22563
22564 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
22565
22566         * doc/libtool.texi: Removes references to ltconfig, and a small
22567         amount of tidying up to compensate.
22568
22569 2000-09-15  Nick Hudson  <skrll@netbsd.org>
22570
22571         * libtool.m4 (netbsd): Improved support.
22572
22573 2000-09-15  Gary V. Vaughan  <gary@gnu.org>
22574
22575         * ltmain.in (version_type): Use "-iface" as the windows
22576         versioning scheme, where iface is the number of the oldest
22577         interface supported.
22578
22579 2000-09-14  Gary V. Vaughan  <gary@gnu.org>
22580
22581         From Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
22582         * libtool.m4 (pw32): Initial support for pw32, assuming that
22583         libtool's behaviour in this environment is identical to under
22584         cygwin.
22585         * ltmain.in (pw32): ditto.
22586         * NEWS: Updated.
22587
22588         * libtool.m4 (changequote): An audit of changequote and m4
22589         quote usage -- all changequotes (except a few with non-nesting
22590         square brackets) have been removed.
22591
22592         * Makefile.am (EXTRA_DIST):  The bootstrap script should be
22593         distributed with libtool.
22594
22595 2000-09-13  Gary V. Vaughan  <gary@gnu.org>
22596
22597         libtool.m4 (_LT_AC_LTCONFIG_HACK): Oh man!  Third time lucky.
22598         I just discovered that '&' needs to be escaped inside
22599         AC_TRY_EVAL.
22600
22601 2000-09-12  Michael Matz  <matz@ifh.de>
22602
22603         * ltmain.in:  Be careful about filenames with multiple `.'s in
22604         them when calculating file extensions.
22605         Reported by Joel Reed <jreed@support.ddiworld.com>
22606
22607 2000-09-12  Gary V. Vaughan  <gary@gnu.org>
22608
22609         libtool.m4 (AC_PROG_LIBTOOL):  Removed, as it was triggering a
22610         bug in Autoconf-2.13 AC_REQUIRE implementation which inserted
22611         some of the expanded tests too early in the generaated configure.
22612         (_AC_PROG_LIBTOOL): renamed to AC_PROG_LIBTOOL, and defines
22613         itself to an empty expansion to prevent multiple expansions.
22614         configure.in (AC_LIBTOOL_SETUP): Replaced by a call to
22615         AC_PROG_LIBTOOL now that the AC_REQUIRE bug has been worked
22616         around.
22617
22618 2000-09-09  Gary V. Vaughan  <gary@gnu.org>
22619
22620         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to escape the
22621         redirections inside AC_TRY_EVAL in the need_lc tests. Doh!
22622
22623         libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to redirect the
22624         output of grep to /dev/null in the need_lc tests.
22625
22626         configure.in (AC_PROG_LIBTOOL):  Using this in libtools own
22627         configure.in interacts badly with the AC_PROVIDE calls and
22628         results in several tests being inserted into configure too
22629         early.  Use AC_LIBTOOL_SETUP instead.
22630
22631 2000-09-08  Gary V. Vaughan  <gary@gnu.org>
22632
22633         libtool.m4 (_LT_AC_LTCONFIG_HACK): The ltconfig.in code I
22634         ported from ltconfig.in was incomplete -- this is a backport
22635         of the missing code taken from the multi-language branch.
22636
22637 2000-09-07  Pavel Roskin  <proskin@gnu.org>
22638
22639         * libtool.m4 (_LT_AC_LTCONFIG_HACK):  Fixed incorrect use of
22640         changequote
22641
22642 2000-09-07  Gary V. Vaughan  <gary@gnu.org>
22643
22644         * NEWS:  Updated.
22645         * TODO:  Add a reminder to get rid of ltconfig in mlb.
22646         * README: Until things even out, I have added a note and a
22647         patch to make the installed automake cooperate with the new
22648         ltconfig free libtool.
22649
22650         * libtool.m4 (_LT_AC_LTCONFIG_HACK): with_gcc is only useful in
22651         ltmain.sh as it has not yet been set in libtool.m4.  Use
22652         $ac_cv_prog_gcc instead.
22653
22654         * doc/PLATFORMS: Updated.
22655
22656         * configure.in (AC_PROG_AWK): Removed -- no longer required by
22657         the build process.
22658         * lineno: ditto.
22659
22660         * libtoolize.in (files): Don't try to install ltconfig -- it
22661         doesn't exist!!
22662         * bootstrap: Fake an ltconfig incase the installed automake
22663         calls an installed libtoolize (as part of its --add-missing
22664         process) which thinks ltconfig should be there.
22665
22666         * libtool.m4 (_LT_AC_LTCONFIG_HACK): Deleted a vital `;;'
22667         terminator from a case statement by mistake.
22668
22669         * Makefile.am (ltmain.sh):  Make this depend on TSDEPS again
22670         so that the Changelog timestamp is used for ltmain.sh at `make
22671         dist' time.
22672
22673 2000-09-06  Gary V. Vaughan  <gary@gnu.org>
22674
22675         libtool.m4 now contains a version of the code that used to run
22676         from ltconfig, so that ltmain.sh and then libtool are
22677         generated at configure time.
22678
22679         * Makefile.am:  Don't generate ltmain.sh or ltconfig anymore.
22680         * bootstrap: ltconfig is no more!
22681         * configure.in: Call AC_PROG_LIBTOOL directly.
22682         (AC_OUTPUT): Generate tmain.sh.
22683         * libtool.m4: Don't build an argument list for ltconfig.
22684         (_LT_AC_LTCONFIG_HACK):  Refactoring of the former contents of
22685         ltconfig.in to take advantage of the m4 macros from autoconf.
22686         * ltmain.in: Don't do a version check against ltconfig.
22687         * tests/assign.test: Remove reference to ltconfig.
22688         * tests/hardcode.test: ditto.
22689         * tests/sh.test: ditto.
22690
22691 2000-09-05  Alexandre Oliva  <aoliva@redhat.com>
22692
22693         * depdemo/main.c: Support -alt.
22694         * tests/build-relink2.test: Try it.
22695
22696         * ltconfig.in: Removed all references to what used to be
22697         hardcode_into_libs=all.  2000-09-03's patch was wrong.
22698         * ltmain.in: Likewise.
22699         * tests/build-relink.test, tests/build-relink2.test: Adjust.
22700         * mdemo/Makefile.am (lib_LTLIBRARIES): Move libsub.la before
22701         libfoo2.la, so that they're installed in the right order.
22702
22703 2000-09-04  Alexandre Oliva  <aoliva@redhat.com>
22704
22705         * tests/dryrun.test: Build libsub.la along with the object files,
22706         since it is needed by libfoo2.la.
22707
22708         * mdemo/Makefile.am: Mark only libfoo2 as -no-undefined.
22709         Explicitly link it with libsub.la.
22710
22711         * ltconfig.in (need_lc): Preserve allow_undefined_flag.
22712
22713         * tests/*.test (CONFIG_SITE): Ultrix's /bin/sh fails on
22714         `. /dev/null'.  Set CONFIG_SITE to /dev/null/config/site, to make
22715         sure we pick a non-existent file.
22716
22717         * Makefile.am (libtool, clibtool): Pass CONFIG_SHELL along with
22718         ECHO down to ltconfig.
22719
22720         * ltconfig.in (hardcode_libdir_flag_spec, export_dynamic_flag_spec):
22721         Use ${wl}, not ${wlarc}.
22722
22723         * ltmain.in (compile, need_lock): Don't create nor remove lock
22724         files in dry runs.
22725
22726         * libltdl/ltdl.c (load_deplibs): Don't append shlib_ext; use
22727         lt_dlopenext() instead.
22728
22729         * ltmain.in (link -static): Don't add $link_static_flag; only
22730         -all-static should do that.
22731         * mdemo/configure.in: Revert part of the previous delta.
22732
22733         * mdemo/configure.in: Don't use -static on AIX4.1.
22734         * mdemo/Makefile.am: Likewise.
22735
22736 2000-09-03  Alexandre Oliva  <aoliva@redhat.com>
22737
22738         * ltconfig.in: Get rid of hardcode_into_libs=all; use
22739         hardcode_into_libs=yes && shlibpath_overrides_runpath!=yes
22740         instead.
22741         [FreeBSD 3.[01]] (shlibpath_overrides_runpath): Set to no.
22742         * ltmain.in: Likewise.
22743         * tests/build-relink.test, tests/build-relink2.test: Adjust.
22744
22745         * libtool.m4: Fix typo I introduced in yesterday's patch.
22746
22747         * libltdl/ltdl.c (lt_dlopen): Set dlname from library_names if
22748         dlname is empty.
22749
22750         * ltdl.m4 (HAVE_LIBDL): Look for dlopen in -lsvld.
22751         * ltconfig.in: Likewise.
22752
22753         * tests/mdemo-exec.test: Modify failure message.
22754
22755         * ltmain.in (newdlprefiles): Use dlname if it's available and
22756         old_library isn't; use linklib only if dlname is not available.
22757
22758         * ltconfig.in (enable_dlopen): Set to no when lt_cv_dlopen is no.
22759
22760         * libtool.m4: Don't quote CONFIG_SHELL nor ORIGINAL_CONFIG_SHELL.
22761         Quote $@ properly so that the shell expands it, not m4.
22762
22763         * libtool.m4: Don't quote SHELL when `re-exec'ing, so that SHELL
22764         can be `/path/to/shell -x'.
22765
22766         * tests/quote.test: Move the match test out of case statements, to
22767         work around bug in /bin/sh of several OSs.
22768
22769         * ltmain.in (variables_saved_for_relink): Attempt to unset them
22770         instead of setting them to an empty string.
22771
22772 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
22773
22774         * ltconfig.in [with_gnu_ld] (archive_cmds, archive_expsym_cmds)
22775         <solaris*, sysv5*, beos*>: Use compiler_flags instead of linker
22776         flags.
22777         Reported by Alex Hornby <alex@anvil.co.uk>
22778
22779 2000-09-02  Makoto Ishisone  <ishisone@sra.co.jp>
22780
22781         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Fix typo,
22782         add support for compact format library.
22783
22784 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
22785
22786         * ltdl.m4: Oops, I had forgotten to commit this part of Syd Polk's
22787         patch from 2000-06-17.
22788
22789 2000-09-02  Tom Kacvinsky  <tjk@ams.org>, Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
22790
22791         * libtool.m4: Ignore Tru64's nm's complaint.
22792
22793 2000-09-02  Pavel Roskin <proski@gnu.org>
22794
22795         * ltconfig.in: only load $cache_file if it's a regular file
22796
22797 2000-09-02  Assar Westerlund  <assar@sics.se>
22798
22799         * ltconfig.in: Add back ranlib calls for static libraries if there
22800         is a ranlib.
22801
22802 2000-08-31  Gary V. Vaughan  <gary@gnu.org>
22803
22804         Move the echo detection code to a macro in libtool.m4.  The code
22805         at the top ofltconfig.in is ugly, but will go away when the rest
22806         of ltconfig is migrated.
22807
22808         * Makefile.am (libtool):  Pass the value of $ECHO to ltconfig as
22809         an environment variable.
22810         * libtool.m4 (_LT_AC_PROG_ECHO_BACKSLASH): Quote the ECHO value
22811         correctly so that it inserts the correct code into configure.in
22812         suitably quoted for M4 expansion.  This code needs to be near
22813         the top of configure.in as it calls itself recursively, so I
22814         am using AC_DIVERSION_NOTICE (or simply NOTICE on CVS
22815         Autoconf).  The value of ECHO is also substitued into the
22816         Makefile to be used when Make calls ltconfig to generate
22817         libtool, so another layer of quotation is required for the
22818         Makefile.
22819         (AC_LIBTOOL_SETUP):  Use it.
22820         * ltconfig.in: Accept a value for ECHO from the environment, and
22821         carefully substitue for $0 if it is present in the ECHO value.
22822         Because ECHO was quoted for Make, when ltconfig is called by
22823         configure, it is overquoted, and one layer of quotes must be
22824         stripped.
22825
22826 2000-08-27  Gary V. Vaughan  <gary@gnu.org>
22827
22828         * ltconfig.in (with_gcc):  Make the value of this option
22829         available to the generated libtool script.
22830         * ltmain.in (compile_command, finalize_command):  The native C
22831         and C++ compilers on IRIX require the -LANG:std in order to to
22832         compile correctly.   The same options should _not_ be passed
22833         through to gcc on IRIX, or at all on other architectures for
22834         backwards compatibility (among others).
22835         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
22836         Reported by Albert Chin-A-Young <china@thewrittenword.com>
22837
22838 2000-08-26  Gary V. Vaughan  <gary@gnu.org>
22839
22840         * ltconfig.in (old_reload_flag): typo.
22841
22842 2000-08-01  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22843
22844         * ltmain.in (shtool): Use echo|grep instead of expr, as in the
22845         original patch.
22846
22847 2000-08-01  Alexandre Oliva  <aoliva@redhat.com>
22848
22849         * ltconfig.in (need_lc): Fix test message.
22850
22851 2000-07-24  Mocha  <netbsd_alpha@yahoo.com>
22852
22853         * ltconfig.in (NetBSD, deplibs_check_method): Use file_magic.
22854         (NetBSD, file_magic_cmd, file_magic_test_file): Set.
22855
22856 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, David Kaelbling  <drk@orchietta.hudson.sgi.com>
22857
22858         * ltmain.in (irix, major): Prepend a `.'.
22859         * ltconfig.in (irix, soname_spec, library_names_spec): Adjust.
22860
22861 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>, Ralf S. Engelschall  <rse@engelschall.com>
22862
22863         * ltmain.in: Support GNU shtool's install.
22864
22865 2000-07-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22866
22867         * ltconfig.in (linkopts): Don't set for test.
22868
22869 2000-07-24  Nick Hudson <skrll@netbsd.org>
22870
22871         * ltconfig.in (linkopts): Replace with linker_flags.
22872
22873         * ltmain.in (ILD): Fix addition of deplibs in relink case.
22874
22875 2000-07-18  H.J. Lu  <hjl@gnu.org>
22876
22877         * ltconfig.in: Check if -lc is necessary for building shared
22878         library. Set build_libtool_need_lc to indicate it.
22879         * ltmain.in: Add -lc when building shared library only if
22880         necessary.
22881
22882 2000-07-10  Mo DeJong  <mdejong@redhat.com>
22883
22884         * libtool.m4 (AC_PROG_NM): Fix macro so that it
22885         finds a cross NM on the PATH.
22886
22887 2000-07-10  Ken Block <block@zk3.dec.com>
22888
22889         * libltdl/ltdl.h: Also check for __cplusplus, __STDC__ is not
22890         by Compaq C++ compiler
22891
22892 2000-07-10  Alexandre Oliva  <aoliva@lsd.ic.unicamp.br>
22893
22894         * ltconfig.in (wlarc, netbsd, aout): Set to empty.
22895         (hardcode_dynamic_flag_spec, export_dynamic_flag_spec): Use it.
22896
22897         * ltconfig.in (dynamic_linker, linux, powerpc): Do not disable
22898         shared libraries just because of MkLinux.
22899
22900         * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Do not depend
22901         on $version_type; check for ELF support as in other BSDs.
22902
22903 2000-06-17  Syd Polk  <spolk@redhat.com>
22904
22905         * libtool.m4 (AC_LIBTOOL_SETUP): Do not generate a libtool based
22906         on target; use host instead.
22907
22908 2000-05-30  Gary V. Vaughan  <gary@gnu.org>
22909
22910         * ltconfig.in (ORIGINAL_CONFIG_SHELL): Prevent lossage when
22911         the echo probing code falls into this branch without setting
22912         this variable.
22913
22914         * ltconfig.in (netbsd*): archive_cmds and archive_expsym_cmds
22915         were reversed with respect to definition of __ELF__.
22916         From Keisuke Inoue <keisuke@csl.sony.co.jp>
22917
22918 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
22919
22920         * libtool.m4 (netbsd*): Use -L option to file_magic_cmd as for
22921         freebsd (below).
22922         * libtool.m4 (netbsd ELF): support file_magic.
22923         From Dan Winship <danw@helixcode.com>.
22924
22925 2000-05-29  Steven M. Schultz <sms@moe.2bsd.com>
22926
22927         * libtool.m4 (bsdi4*): Add -L option to bsdi4's file_magic_cmd
22928         command.  Under BSD/OS 4.1 several libraries are now symlinks
22929         rather than regular files.  Adding -L tells the file program
22930         to follow the symlink.
22931
22932 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
22933
22934         * libtool.m4 (i*86-*-freebsd*): Forgot to changequote(,).
22935
22936         * NEWS: Updated.
22937         * libtool.m4 (i*86-*-freebsd*): Support a.out shared libs.
22938         From <suzukis@file.phys.tohoku.ac.jp>
22939
22940 2000-05-29  Fred Fish  <fnf@be.com>
22941
22942         Support AR=mwld AR_FLAGS='-xml -o' for PPC Beos.
22943         * ltconfig (old_AR_FLAGS): Add.
22944         (old_archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
22945         (archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
22946         (AR_FLAGS): Default to "cru" if not set.
22947
22948 2000-05-29  Gary V. Vaughan  <gary@gnu.org>
22949
22950         * ltconfig.in (echo): The following code actually prints the
22951         double quotes -- so I removed them:
22952             echo='printf "%s\n"' /bin/ksh -c '$echo \\t'
22953         From Tuukka Toivonen <tutoivon@mail.student.oulu.fi>
22954
22955         * NEWS: Updated.
22956
22957 2000-05-29  Bernhard Rosenkraenzer <bero@redhat.de>
22958
22959         * libtool.m4: adding ia64 as supported linux platform
22960
22961 2000-05-29  Michael Matz  <matz@ifh.de>
22962
22963         * ltmain.in: fix quoting for $var_value.
22964
22965         * ltconfig.in: check for dlfcn.h: include return value
22966         to make -Wall in CFLAGS work.
22967
22968 2000-05-27  Gary V. Vaughan  <gary@gnu.org>
22969
22970         * README-alpha: note new location of config.(guess|sub).
22971
22972 2000-05-27  Chad Cunningham  <ccunning@math.ohio-state.edu>
22973
22974         * ltconfig.in (rhapsody*): New Port.
22975         * ltmain.in (rhapsody*): ditto.
22976
22977 2000-05-27  Chris Lattner  <sabre@skylab.org>
22978
22979         * ltconfig.in (*-sequent-sysv4): New Port.
22980
22981 2000-05-17  Gary V. Vaughan  <gary@gnu.org>
22982
22983         * ltmain.in: cygwin-1.1.0 and higher no longer grok backslash path
22984         separators.
22985
22986 2000-05-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22987
22988         * libtool.m4 (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE):
22989         Pick LIBLTLD from top_builddir and INCLTDL from top_srcdir.
22990         * mdemo/configure.in: Remove comments on
22991         AC_LIBLTLD_CONVENIENCE.
22992
22993         * libtool.m4 (_AC_PROG_LIBTOOL): Renamed from...
22994         (AC_PROG_LIBTOOL): Just AC_REQUIRE(_AC_PROG_LIBTOOL), to avoid
22995         effects of multiple runs.
22996
22997 2000-05-11  Thomas Tanner  <tanner@ffii.org>
22998
22999         * NEWS: update
23000         * doc/libtool.texi (libltdl): rename lt_(find|next|add|remove)_dlloader
23001           to lt_dlloader_*
23002         * libltdl/ltdl.c: ditto
23003         * libltdl/ltdl.h: ditto, add declaration of lt_dlloader_(find|remove)
23004
23005 2000-05-06  Pavel Roskin  <pavel_roskin@geocities.com>
23006
23007         * libltdl/ltdl.c: Typo.
23008
23009         * libtool.m4 (AC_LIBTOOL_SETUP): CVS autoconf no longer sets
23010         target to "NONE", but to an empty string.
23011
23012 2000-05-05  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
23013
23014         * ltdl.c: support lt_dlopen(0) for win32
23015
23016 2000-05-03  Thomas Tanner  <tanner@ffii.org>
23017
23018         * doc/libtool.texi (libltdl): fix typos,
23019           INCLTDL starts with top_srcdir, replace NULL with @code{NULL}
23020
23021         * ltmain.in (ILD): search in newlib_search_path, too
23022
23023         * ltmain.in (ILD): fix bugs in conv pass, expand convenience
23024           libs to deplibs and link them later on
23025
23026         * ltmain.in (ILD): don't allow convenience libs to be
23027            -dlopen/preopen'ed
23028
23029         * ltmain.in (ILD): it's not required to link all deplibs
23030           in fast-install mode
23031
23032         * ltmain.in (ILD): if hardcode_into_libs=all, only relink
23033           a library if it is linked against uninstalled libtool libraries,
23034           rename link_against_libtool_libs to uninst_deplibs
23035
23036         * ltmain.in (ILD): tidy up, add some comments
23037
23038 2000-05-03  John Wehle  (john@feith.com)
23039
23040         * libtool.m4 (hpux10.20*): use file_magic for
23041         inter-library dependency tracking.
23042
23043 2000-05-02  Gary V. Vaughan  <gary@gnu.org>
23044
23045         * AUTHORS:  Update my email address.
23046         * commit: ditto.
23047
23048 2000-04-11  Thomas Tanner  <tanner@ffii.org>
23049
23050         * NEWS: update
23051         * libtool.m4: add AC_LIBTOOL_PICMODE
23052         * ltconfig.in: move pic_mode checks to ltmain.in
23053         * ltmain.in: add -prefer-pic and -prefer-non-pic
23054
23055 2000-03-29  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23056
23057         * ltmain.in (tmpdir): Do not accept an existing directory, and
23058         force its mode to 700, for security reasons.
23059         Reported by Joseph S. Myers <jsm28@cam.ac.uk>
23060
23061 2000-03-27  Thomas Tanner  <tanner@ffii.org>
23062
23063         * NEWS: reformatting
23064
23065         * ltmain.in (ILD): add extra convenience library scanning pass
23066
23067         * ltmain.in (ILD): accept -R flags for libraries, too
23068
23069         * ltmain.in (ILD): correclty merge the dlpreopened libraries
23070           with deplibs
23071
23072         * ltmain.in (install mode): remove directories from filenames
23073           before relinking (reported by Elrond <Elrond@Wunder-Nett.org>)
23074
23075         * doc/libtool.texi (libltdl): rename Library -> Lesser,
23076           clarify exception clause
23077         * libltdl/ltdl.c, libltdl.h (License): ditto
23078
23079 2000-03-21  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23080
23081         * ltconfig.in (variables_saved_for_relink): Set to `PATH
23082         $shlibpath_var $runpath_var'.  If with_gcc, add gcc-related
23083         environment variables.  Add it to the configuration section.
23084         * ltmain.in (relink_command): Expand those variables.
23085
23086 2000-03-14  Christopher A. Knight  <chriskn@crt.com>
23087
23088         * ltconfig.in: added main() definition in compile
23089         check for header `dlfcn.h' to fix link errors
23090         when built with Sun Workshop Pro CC 4.2 (and perhaps
23091         others).
23092
23093 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
23094
23095         * libltdl/ltdl.c (lt_find_dlhandle): Deleted.  This was B.S.
23096         far cleaner to use lt_dlforeach and lt_dlgetinfo.
23097         * libltdl/ltdl.h:  Prototype deleted.
23098         * doc/libtool.texi: Documentation deleted.
23099         * NEWS: annoncement deleted.
23100
23101 2000-02-23  Thomas Tanner  <tanner@ffii.org>
23102
23103         * ltmain.in: remove duplicates from deplibs, handle
23104           interdependent libraries (e.g. -la -lb -la),
23105           this requires adding deplibs in reverse order
23106
23107         * ltmain.in: link dlpreopened libraries before other libraries
23108           (reported by Pavel Roskin)
23109         * mdemo/Makefile.am: build and link libsub.la
23110         * mdemo/sub.c: new file used by both dlopened modules
23111         * mdemo/foo*: use sub() defined in libsub
23112         * tests/dryrun.test: build libsub.la
23113
23114         * mdemo/Makefile.am: always link mdemo.static with -static
23115         * mdemo/configure.in: ditto
23116
23117         * ltmain.in: fix dlopen/dlpreopening of objects
23118
23119         * ltmain.in (ILD): fix misplaced `continue' in -R* argument handler
23120
23121         * ltmain.in: merge duplicated code of clean and uninstall mode
23122
23123         * libtool.m4: recognize powerpc*linux* (reported by
23124           Dirk A. Mueller <dmuell@gmx.net>)
23125
23126 2000-02-23  Gary V. Vaughan  <gary@gnu.org>
23127
23128         * ltconfig.in (old_MAGIC, old_STRIP, old_reload_flag,
23129         old_deplibs_check_method, old_file_magic_cmd):  New variabes.
23130         Treat these as old_CC etc.
23131         (STRIP, MAGIC): Create and set these variables in the generated
23132         libtool script.
23133         Reported by Pavel Roskin <pavel_rosin@geocities.com>
23134
23135         * configure.in: Due to a bug in autoconf-2.13 implementation of
23136         AC_SUBST, `AC_SUBST(FILE)' can never work.  Use MAGIC as the
23137         holder of the command to run in file_magic_cmd instead.
23138         * ltconfig.in: s/FILE/MAGIC/g.
23139         * libtool.m4 (AC_PROG_LIBTOOL): set MAGIC in the environment when
23140         calling ltconfig.
23141         (AC_PATH_MAGIC):  renamed from AC_PATH_FILE.
23142         (AC_PATH_TOOL_PREFIX):  s/FILE/MAGIC/g.  Also set file_magic_cmd
23143         to '${MAGIC}' so that make can grok it.
23144         * Makefile.am (libtool):
23145         (clibtool): ditto.
23146
23147 2000-02-21  Gary V. Vaughan  <gary@gnu.org>
23148
23149         * libltdl/ltdl.c (lt_find_dlhandle): New function.
23150         (tryall_dlopen): Use it.
23151         * libltdl/ltdl.h:  Prototype it.
23152         * doc/libtool.texi: Document it.
23153         * NEWS: updated.
23154
23155         * libltdl/ltdl.c (lt_dlinit): removed unused variable, `loader'.
23156
23157         * libltdl/ltdl.c (lt_remove_dlloader): typo, s/=/==/g.
23158
23159 2000-02-03  Gary V. Vaughan  <gary@gnu.org>
23160
23161         * libltdl/ltdl.h (lt_dlloader_data_t):  New type for loader
23162         instance data.
23163         (lt_user_dlloader): New lt_dlloader_data_t field.
23164         (lt_module_open_t): Add lt_dlloader_data_t parameter.
23165         (lt_module_close_t): Add lt_dlloader_data_t parameter.
23166         (lt_find_sym_t): Add lt_dlloader_data_t parameter.
23167         (lt_dlloader_exit_t): Add lt_dlloader_data_t parameter.
23168         * libltdl/ltdl.c:  A sprinkling of /*ARGSUSED*/ markers to
23169         reassure lint that the unused arguments are intentional.
23170         (lt_dlloader_t): New lt_dlloader_data_t field.
23171         (lt_dlloader_data): New function to return the contents of the
23172         dlloader_data field.
23173         (sys_dl_open): Take an additional lt_dlloader_data_t argument.
23174         (sys_dl_close): Ditto.
23175         (sys_dl_sym): Ditto.
23176         (sys_dl): Initialise lt_dlloader_data_t field.
23177         (sys_shl_open, sys_shl_close, sys_shl_sym, sys_shl): As above.
23178         (sys_wll_open, sys_wll_close, sys_wll_sym, sys_wll): As above.
23179         (sys_bedl_open, sys_bedl_close, sys_bedl_sym, sys_bedl): As
23180         above.
23181         (sys_dld_open, sys_dld_close, sys_dld_sym, sys_dld): As above.
23182         (presym_init, presym_exit, presym_open, presym_close, presym_sym,
23183         presym): As above.
23184         (lt_dlinit): Call presym_init with additional argument.
23185         (lt_dlexit): Call dlloader_exit method with additional argument.
23186         (tryall_dlopen): Call module_open method with additional argument.
23187         (lt_dlclose): Call module_close method with additional argument.
23188         (lt_dlsym): Call find_sym method with additional argument.
23189         (lt_add_dlloader): Initialise dlloader_data field.
23190         (lt_remove_dlloader): Call dlloader_exit method with additional
23191         argument.
23192
23193         * libltdl/ltdl.c (find_file): Prevent early release of memory
23194         in filename/*pdir.
23195         From Jon Leichter <jon@symas.com>
23196
23197         (sys_wll_init): Deleted.  No longer required.  And this time,
23198         with feeling!
23199         (sys_wll_exit): Ditto.
23200
23201 2000-02-02  Gary V. Vaughan  <gary@gnu.org>
23202
23203         * NEWS: updated.
23204         * doc/libtool.texi (Libltdl interface): Moved user defined module
23205         loader documentation from here...
23206         (Module loaders for libltdl) ...to here, and updated the text and
23207         added examples.
23208         * ltdl.m4 (AC_CHECK_FUNCS): check strcmp for lt_find_dlloader.
23209         * libltdl/ltdl.h: Reformatted and commented for readability.
23210         (struct lt_user_dlloader): New data type for passing
23211         initialisation pointers to lt_add_dlloader.
23212         (LTDL_ERROR_INVALID_LOADER):  New error message when non loader
23213         handles are passed to the user loader API.
23214         (LTDL_ERROR_INIT_LOADER): New error when loader initialisation
23215         fails.
23216         (LTDL_ERROR_REMOVE_LOADER): New error when loader removal fails.
23217         (lt_module_open_t): renamed from lt_lib_open_t.
23218         (lt_module_close_t): renamed from lt_lib_close_t.
23219         (lt_dlloader_exit_t): renamed from lt_dlloader_exit_t.
23220         * libltdl/ltdl.c: Reordered builtin loaders so that the "dld"
23221         loader no longer occurs before "dlopen" on some platforms and
23222         after it on others.
23223         (lt_dlloader_t): Moved here from ltdl.h, added a field,
23224         "loader_name", for identifying the loader, and renamed from
23225         lt_dltype_t.  Renamed type variables to loader IFF of type
23226         lt_dlloader_t.
23227         (lt_module_t): Renamed from lt_syshandle. Renamed handle variables
23228         to module IFF of type lt_module_t.
23229         (LTDL_TYPE_TOP): Deleted.  No longer required.
23230         (sys_dl): Initialised as a struct lt_user_dlloader.
23231         (sys_dl_init): Deleted.  No longer required.
23232         (sys_dl_exit): Ditto.
23233         (sys_shl): Initialised as a struct lt_user_dlloader.
23234         (sys_shl_init): Deleted.  No longer required.
23235         (sys_shl_exit): Ditto.
23236         (sys_wll): Initialised as a struct lt_user_dlloader.
23237         (sys_wll_init): Deleted.  No longer required.
23238         (sys_wll_exit): Ditto.
23239         (sys_bedl): Initialised as a struct lt_user_dlloader.
23240         (sys_bedl_init): Deleted.  No longer required.
23241         (sys_bedl_exit): Ditto.
23242         (sys_dld): Initialised as a struct lt_user_dlloader.
23243         (sys_dld_init): Deleted.  No longer required.
23244         (sys_dld_exit): Ditto.
23245         (sys_presym): Initialised as a struct lt_user_dlloader.
23246         (lt_mod_init_t): Moved to here from ltdl.h.
23247         (lt_dlinit): Add builtin loaders using the user loader API.
23248         (lt_dlexit): Unregister and free all loaders.
23249         (lt_add_dlloader): New function to add a new module loader after the
23250         loader specified in the argument.
23251         (lt_remove_dlloader): New function to remove a module loader.
23252         (lt_next_dlloader): New function for iterating over module loaders.
23253         (lt_dlloader_name): Accessor function for name of dlloader.
23254         (lt_find_dlloader): New function to get a reference to a registered
23255         module loader.
23256         (strcmp): static implementation incase the host has none.
23257         (lt_dlgettypes, lt_dlsettypes): Removed.
23258
23259 2000-02-02  Thomas Tanner  <tanner@ffii.org>
23260
23261         * libltdl/ltdl.c: replace NULL with 0, remove unused system
23262           and app_private pointers from lt_dlhandle_t
23263         * libltdl/ltdl.c (presym_add_list): new preloaded symbols
23264           don't need to be added to the end
23265
23266         * libltdl/ltdl.c (lt_dlgetdata, lt_dlsetdata): removed
23267         * libltdl/ltdl.h: ditto
23268         * doc/libtool.texi (libltdl interface): ditto
23269
23270 2000-02-01  Thomas Tanner  <tanner@ffii.org>
23271
23272         * ltmain.in: support -dlopen/dlpreopen for libraries
23273         * NEWS: updated
23274         * TODO: updated
23275         * ltmain.in: rename dlopen to dlopen_support
23276         * ltconfig.in: ditto
23277         * doc/libtool.texi: ditto
23278
23279         * ltmain.in: check whether libraries are moved out of $libdir,
23280           replace .a and .lib with .$libext, .o and .obj with .$objext
23281
23282 2000-01-31  Gary V. Vaughan  <gary@gnu.org>
23283
23284         * libltdl/ltdl.h (lt_dlrealloc): removed declaration.
23285         * libltdl/ltdl.c (lt_dlrealloc): removed definition.
23286         (lt_dladderror): Instead of calling lt_dlrealloc, use lt_dlmalloc,
23287         and lt_dlfree.
23288
23289 2000-01-30  Ossama Othman  <ossama@debian.org>
23290
23291         * libtool.m4 (lt_cv_cc_needs_belf): Set the test language to C
23292         prior to executing the test that checks if the C compiler needs
23293         "-belf."
23294         Reported by Chris Butler <chrisb@sandy.force9.co.uk>
23295
23296 2000-01-28  Gary V. Vaughan  <gary@gnu.org>
23297
23298         * libtool.m4 (AC_DEPLIBS_CHECK_METHOD):  Use changequote to
23299         protect `[' and `]' in deplibs_check_method.
23300
23301         * libltdl/ltdl.h (lt_dlrealloc): Added declaration.
23302         * libltdl/ltdl.c (lt_dlrealloc): Added default definition.
23303
23304         * libltdl/ltdl.c (lt_dlseterror): Catch errorcodes below 0 as
23305         invalid.
23306         * libltdl/ltdl.h (LTDL_ERROR): Added missing '_' in K&R
23307         definition.
23308
23309         * libltdl/ltdl.h (ltdl_error_table): Added missing error code, and
23310         fixed typo in another code.
23311         * doc/libtool.texi (Libltdl interface): Added missing @end
23312         clause.
23313
23314 2000-01-27  Thomas Tanner  <tanner@ffii.org>
23315
23316         * ltconfig.in: Oops, replace the remaining $objdir's
23317
23318         * ltmain.in: merge library linking code of programs and libraries,
23319           some cleanups
23320
23321 2000-01-27  Gary V. Vaughan  <gary@gnu.org>
23322
23323         * NEWS: Updated.
23324         * doc/libtool.texi (Libltdl interface): Document new entry
23325         points.
23326         * libltdl/ltdl.c (lt_dladderror): New function to add a user
23327         defined error message to the tables used by lt_dlerror().
23328         (lt_dlseterror):  New function to allow setting of last_error by
23329         user modules.
23330         (ltdl_error_strings): New preprocessor generated table of internal
23331         error diagnostic strings.
23332         (user_error_strings): New internal list of registered user error
23333         diagnostic strings.
23334         (throughout!): Use error messages from ltdl_error_strings.
23335         * libltdl/ltdl.h (ltdl_error_table): New macro to tabulate
23336         internal diagnostic error strings alongside enum keys.
23337
23338         * NEWS: Updated.
23339         * doc/libtool.texi (Libltdl interface): Document new entry
23340         points.
23341         * libltdl/ltdl.c (lt_dltype_t):  Use new type definitions for
23342         existing fields.
23343         (lt_dladdtype): New function to add a new ltdl dynamic loader
23344         type to the end of the list of valid types..
23345         (lt_dlgettypes): New function to return the complete list of ltdl
23346         dynamic loader types.
23347         (lt_dlsettypes): New function to replace the list of ltdl dynamic
23348         loader types entirely -- e.g. to prepend a new type to the
23349         existing list.
23350         (sys_dl_open, sys_dl_close, sys_dl_sym): Work with lt_syshandle.
23351         (sys_shl_open, sys_shl_close, sys_shl_sym): ditto.
23352         (sys_dld_open, sys_dld_close, sys_dld_sym): ditto.
23353         (sys_wll_open, sys_wll_close, sys_wll_sym): ditto.
23354         (sys_bedl_open, sys_bedl_close, sys_bedl_sym): ditto.
23355         (presym_open, presym_close, presym_sym): ditto.
23356         (tryall_dlopen): Call lt_lib_open_t functions lt_syshandle
23357         compatibly.
23358         (lt_dlclose): Call lt_lib_close_t functions lt_syshandle
23359         compatibly.
23360         (lt_dlsym): Call lt_find_sym_t functions lt_syshandle compatibly.
23361         (lt_dltype_t): moved type declaration from here...
23362         * libltdl/ltdl.h (lt_dltype_t): ...to here.
23363         (lt_syshandle): new type for low level system handles passed by
23364         loader functions
23365         (lt_mod_init_t):  New type for functions implementing the
23366         initialisation for an ltdl dynamic loader.
23367         (lt_mod_exit_t): Type of exit functions for the same.
23368         (lt_lib_open_t): Type of loader functions for the same.
23369         (lt_lib_close_t): Type of unloader functions for the same.
23370         (lt_find_sym_t): Type of symbol resolver functions for the same.
23371
23372         * libltdl/ltdl.c (sys_dl_init, sys_dl_exit, sys_dl_open,
23373         sys_dl_close, sys_dl_sym):  Preprocess these away on cygwin to
23374         avoid spurious error messages.
23375
23376 2000-01-24  Thomas Tanner  <tanner@ffii.org>
23377
23378         fix severe bugs reported by Elrond <Elrond@Wunder-Nett.org>
23379
23380         * ltconfig.in: replace $objdir with $output_objdir
23381
23382         * ltmain.in: change to the builddir before relinking programs
23383
23384         * ltmain.in, ltconfig.in, libtool.m4, ltdl.m4:
23385           remove unnessary spaces from line endings
23386
23387 2000-01-19  Thomas Tanner  <tanner@ffii.org>
23388
23389         * ltmain.in: rewrite of the ILD code, merge linking code for
23390           programs, libraries and objects, allow linking of shared libraries
23391           against static libraries/objects on platforms that support it
23392           but print a warning, fix some typos
23393
23394         * partially revert my previous change and
23395           update only copyright notices of files that were actually modified
23396
23397         * NEWS: update
23398
23399         * libltdl/Makefile.am: version number was wrong
23400
23401         * libltdl/ltdl.c (tryall_dlopen): revert Gary's change
23402           since it breaks dlpreopening
23403         * ltdl.m4: ditto
23404
23405         * libltdl/ltdl.c (sys_search_path): search in the system default
23406           library search path, too
23407         * ltdl.m4 (AC_LTDL_SYSSEARCHPATH): extract the path
23408
23409         * libltdl/ltdl.c (find_module): remove bogus file_not_found_error
23410
23411         * libltdl/ltdl.c (load_deplibs): implement loading of dependency
23412           libraries
23413         * libltdl/ltdl.c (unload_deplibs): implement unloading of dependency
23414           libraries
23415         * libltdl/ltdl.c (lt_dlexit): correctly close all modules and
23416           their dependencies
23417
23418         * libltdl/ltdl.c (lt_dlforeach): new function
23419         * libltdl/ltdl.h: ditto
23420         * doc/libtool.texi (using libltdl): document it
23421
23422         * libtool.m4: reformatting, only add -I$topsrc_dir/libltdl to
23423           INCLTDL
23424
23425         * libtoolize.in: reformatting
23426         * ltconfig.in: reformatting
23427         * ltmain.in: reformatting
23428
23429         * mdemo/configure.in: AC_SUBST INCLTDL
23430         * mdemo/Makefile.am: use INCLTDL
23431
23432         * tests/Makefile.am: reexport OBJEXT and EXEEXT
23433         * tests/dryrun.test: use them for building main.obj and mdemo.exe
23434
23435 2000-01-17  Gary V. Vaughan  <gary@gnu.org>
23436
23437         * libltdl/ltdl.c (tryall_dlopen): Abort with
23438         file_not_found_error before trying all lib_open() methods
23439         if the file to be dlopened doesn't exist.
23440         * ltdl.m4 (AC_HAVE_HEADERS): add unistd.h.
23441
23442 2000-01-16  Gary V. Vaughan  <gary@gnu.org>
23443
23444         * libltdl/ltdl.c (find_file): memory error fixed.
23445
23446 2000-01-14  Gary V. Vaughan  <gary@gnu.org>
23447
23448         * ltconfig.in (Usage): Now it matches the code!
23449         Reported by Jon Leichter <jon@symas.com>
23450
23451         * README:  Some notes about libtool release numbers.
23452
23453         * mdemo/README: Explain the deliberate incompleteness of the
23454         Windows port.
23455         * mdemo/configure.in: Use AC_LIBTOOL_WIN32_DLL.
23456         * mdemo/Makefile.am (LDFLAGS):  Add -no-undefined.
23457
23458         * libltdl/ltdl.h (LTDL_STMT_START, LTDL_STMT_END):  Macros for
23459         wrapping other macros to make a portable compound statement from
23460         multiple C statements in the expansion.
23461         (LTDL_SET_PRELOADED_SYMBOLS): Use the above macros to add an
23462         extern declaration for lt_preloaded_symbols, to remove
23463         dependency on undefined symbol from libltdl.dll on cygwin (and
23464         other -no-undefined architectures).
23465         * libltdl/ltdl.c (lt_preloaded_symbols): No longer defined here.
23466
23467         * libtool,m4 (AC_LIBTOOL_SETUP):  The result of lt_cv_need_dllmain
23468         was set to the opposite of what it should be.
23469         * configure.in (AC_LIBTOOL_WIN32_DLL):  Call to this macro is
23470         required for libtool configury to test lt_cv_need_dllmain on
23471         Windows.
23472
23473         * ltconfig.in (opt_cr, mingw*): replace unescaped ? with correctly
23474         escaped and portable \{0,1\} in sed expression.
23475         From Jon Leichter <jon@symas.com>
23476
23477 2000-01-13  Gary V. Vaughan  <gary@gnu.org>
23478
23479         * libtool.m4 (AC_LIBLTDL_CONVENIENCE): Add -I${top_srcdir}/libltdl
23480         to default INCLTDL for VPATH.
23481         (AC_LIBLTDL_INSTALLABLE): ditto.
23482         Reported by Tom Tromey <tromey@cygnus.com>
23483
23484 2000-01-12  Thomas Tanner  <tanner@ffii.org>
23485
23486         * update all copyright notices to 2000
23487
23488         * doc/libtool.texi (using libltdl): document new lt_dlinfo struct,
23489           replace NULL with @code{NULL}, document lt_dlsetdata(),
23490           lt_dlgetdata() and lt_dlgetinfo()
23491         * libltdl/Makefile.am: increment interface version number
23492         * libltdl/configure.in: set version number to 1.1
23493         * libltdl/ltdl.c: make some variables public by moving them
23494           to the info struct, add support for application specific data
23495           within module handles, new lt_dlsetdata(), lt_dlgetdata() and
23496           lt_dlgetinfo() functions,
23497           fix memory leaks, minor cleanups
23498         * libltdl/ltdl.h: ditto
23499         * mdemo/main.c: demonstrate use of lt_dlgetinfo,
23500           improved handling of errors
23501
23502         * ltconfig.in: set hardcode_into_libs = yes for GNU/Hurd, Linux
23503           and Solaris, only hardcode *all* run-paths if hardcode_into_libs
23504           is set to 'all', otherwise hardcode only user-specified rpaths
23505           into libraries
23506         * ltmain.in: minor cleanups, we don't need to add user-specified
23507           rpaths to compile_rpath, finalize_rpath is sufficient
23508
23509         * ltconfig.in: transform linux* -> *linux-gnu* _after_ host_os has
23510           been set! (reported by Bruno Haible <haible@ilog.fr>)
23511
23512         * configure.in: AC_SUBST reload_flag, deplibs_check_method
23513           and file_magic_cmd
23514
23515         * README: use 'libtool --version' instead of 'ltconfig --version'
23516           (suggested by Francios Pinard <pinard@iro.umontreal.ca>
23517
23518 2000-01-10  Gary V. Vaughan  <gary@gnu.org>
23519
23520         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Leave undefined when
23521         not compiling for a Windows target.
23522         * libltdl/ltdl.c (canonicalize_path): New function to
23523         ensure internal paths use '/' directory separators.
23524         (find_file): use canonicalize_path.  Memory management
23525         changed to cope.
23526         (lt_dlopen): ditto.
23527         (free_vars): Removed `dir' and `name', which are now handled
23528         internally.
23529
23530         * libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Define to '/' or '\\',
23531         as suitable for the target host.
23532         (LTDL_PATHSEP_CHAR): Similarly with ':' or ';'.
23533         * libltdl/ltdl.c: Use LTDL_DIRSEP_CHAR and LTDL_PATHSEP_CHAR
23534         instead of hardcoding throughout.
23535         Reported by Jon Leichter <jon@symas.com>
23536
23537 1999-12-18  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23538
23539         * ltmain.in: Oops, `largarg' -> `lastarg'.
23540
23541         * ltmain.in (-Wc, -Xcompiler): Implemented in compile mode.
23542
23543         * ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and
23544         finalize_command.
23545         (-Wc, -Wl): Likewise.
23546
23547         * tests/quote.test: Adjust quoting style of -Wl.
23548
23549         * ltmain.in: Oops, `echo' -> `$echo'.
23550
23551         * ltmain.in (-Wl, -Wc): Make commas argument separators, just like
23552         in gcc.
23553
23554         * ltmain.in (libtool_args): Get all arguments properly enclosed in
23555         quotes and backslash-protected when needed.
23556
23557 1999-12-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23558
23559         * ltdl.m4: Renamed from...
23560         * libltdl/ltdl.m4: that no longer exists.
23561         * configure.in (ACINCLUDE_M4_LIST): Removed libltdl/acinclude.m4.
23562         * Makefile.am (aclocal_macros): Added ltdl.m4.
23563         (libltdl/acinclude.m4): Concatenate libtool.m4 and ltdl.m4.
23564         * bootstrap: Likewise.
23565         * libltdl/Makefile.am (ACLOCAL): Remove the definition.  Relying
23566         upon -I may lead to duplicates.
23567         * doc/libtool.texi: Suggest appending ltdl.m4 to acinclude.m4.
23568         * libtoolize.in: Check AC_LIB_LTDL version number in aclocal.m4.
23569
23570         * libltdl/configure.in (with_auxdir): Do not use it as the
23571         argument of AC_CONFIG_AUX_DIR, automake requires a literal here.
23572         Use AC_CONFIG_AUX_DIRS/DIR_DEFAULT instead.
23573
23574         * libltdl/Makefile.am (ACLOCAL): Define with `-I .', as in
23575         bootstrap.
23576
23577 1999-12-15  Thomas Tanner  <tanner@ffii.org>
23578
23579         * libltdl/configure.in: path to auxiliary files can be specified
23580           using --with-auxdir (idea by Howard Chu <hyc@highlandsun.com>)
23581
23582         * ltmain.in: don't remove multiple occurences from dependency_libs
23583           of a library, otherwise many dependencies would get lost
23584
23585         * bootstrap: use "aclocal -I ." instead of adding the contents
23586           of ltdl.m4 to acinclude.m4
23587
23588 1999-12-13  Gary V. Vaughan  <gary@gnu.org>
23589
23590         * NEWS: updated.
23591         * libltdl/Makefile.am: Use -no-undefined for dll compliance.
23592         * libltdl/configure.in: Use AC_LIBTOOL_WIN32_DLL for dll
23593         compliance.
23594         * libltdl/ltdl.c: Define and use LTDL_GLOBAL_DATA to correctly
23595         export global data symbols from libltdl.dll.
23596         * libltdl/ltdl.h: Define and use LTDL_SCOPE to declare data
23597         symbols as dllexport, dllimport or plain ornary extern depending
23598         in the context in which it is used.
23599
23600         * doc/libtool.texi (Distributing libltdl): document use of
23601         ltdl.m4.
23602         * libltdl/configure.in: Removed header checks, as they are
23603         automatically performed by AC_LIB_LTDL.
23604         * libltdl/ltdl.m4: Added header checks from configure.in, so that
23605         AC_LIB_LTDL is sufficient to compile ltdl.c.
23606         Reported by Stephan Kulow <coolo@kde.org>.
23607
23608         * ltconfig.in (ltdll_obj): fixed typo: objdir -> $objdir
23609
23610 1999-12-12  Gary V. Vaughan  <gary@gnu.org>
23611
23612         * ltconfig.in (cygwin*, mingw*, export_symbols_cmds): keep any
23613         DATA tags associated with symbols by recent dlltool.
23614         (cygwin*, mingw*, archive_expsym_cmds): Honor any DATA tags
23615         found in the symbol list.
23616         Reported by Jon Leichter <jon@symas.com>.
23617
23618 1999-12-10  Gary V. Vaughan  <gary@gnu.org>
23619
23620         From Stephan Kulow <coolo@kde.org>
23621         * libltdl/ltdl.m4:  Add arg 3 to AC_DEFINE's to save the user
23622         from having to hack acconfig.h.
23623
23624 1999-12-06  Gary V. Vaughan  <gary@gnu.org>
23625
23626         * NEWS: Updated.
23627         * TODO: Note some cleanups that are now needed.
23628         * libltdl/configure.in: Use the new macroised tests.
23629         * libltdl/ltdl.m4: New file, macroised tests formerly in
23630         libltdl/configure.in.
23631         Reported by Stephan Kulow <coolo@kde.org>.
23632
23633         From Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
23634         * ltconfig.in:  split off the osf3 section, so that the osf4 and
23635         osf5 sections can add `-msym' to arguments passed to the linker
23636         for shared libs.
23637
23638 1999-12-03  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23639
23640         * ltconfig.in (ac_compile): Use $ac_ext instead of .c.
23641         (ac_link): Likewise.
23642         (dlfcn.h, ac_try): Do not add filename, it is already in
23643         ac_compile.
23644         Reported by Stephane Conversy <Stephane.Conversy@lri.fr>
23645
23646         * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
23647         works together with fast_install.
23648
23649         * libtool.m4: Use host when --target is not specified.
23650
23651         * configure.in: AC_SUBST variables that are used by ltconfig to
23652         build libtool.
23653
23654         * ltconfig.in (irix6*): Do not override deplibs_check_method
23655         here.
23656
23657         * libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
23658
23659 1999-11-20  Michael Forster  <email@michael-forster.de>
23660
23661         * ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes.
23662
23663 1999-11-29  Gary V. Vaughan  <gary@gnu.org>
23664
23665         * ltconfig.in:  Be friendlier to C++ compilers when testing
23666         for dlopen support.
23667         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
23668
23669 1999-11-26  Gary V. Vaughan  <gary@gnu.org>
23670
23671         * libtool.m4:  better use of $target instead of $host to support
23672         cross compilation.
23673         Reported by Sam Latinga <slouken@devolution.com>
23674
23675 1999-11-16  Thomas Tanner  <tanner@ffii.org>
23676
23677         * configure.in: generate ltconfig and ltmain.sh before configuring
23678           libltdl
23679
23680 1999-11-04  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23681
23682         * tests/sh.test: New test to detect uses of quotes within
23683         backticks within quotes.
23684         * ltconfig.in, ltmain.in: Fix detected errors.  Mark false
23685         positives with a comment that disables the detector.
23686         Reported by Akim Demaille <akim@epita.fr>
23687
23688         * configure.in: Move ltconfig and ltmain.sh generation back...
23689         * Makefile.am: here.
23690
23691 1999-11-02  Thomas Tanner  <tanner@ffii.org>
23692
23693         * NEWS: updated
23694         * THANKS: added Olly Betts and Pavel Roskin
23695         * doc/libtool.texi: fix typo
23696
23697         * fix major bugs which rendered libtool virtually
23698           unusable (i.e. not portable):
23699         * ltconfig.in: don't hardcode system dependent variables in ltconfig!!
23700           but set sane defaults
23701         * Makefile.am: pass variables from AC_LIBTOOL_SETUP to ltconfig
23702         * libtool.m4: ditto, fix typo in AC_PROG_LD_RELOAD_FLAG
23703
23704         * ltconfig.in: use old_deplibs for archives, too
23705           remove second occurence of sysv5
23706         * ltmain.in: fix typo, fix the second occurence of -DPIC, too
23707
23708         * libltdl/Makefile.am: increment version number, fix typo
23709         * libltdl/ltdl.c (lt_dlsym): don't report an error if the
23710           libltdl-style symbol name wasn't found
23711
23712 1999-11-02  Wolfgang Rapp <ulris@bn-ulm.de>
23713
23714         * ltconfig.in: add support for Unixware (sysv4.2uw2*)
23715
23716 1999-10-29  Gary V. Vaughan  <gary@gnu.org>
23717
23718         * ltmain.in:  Damnit!  Cygwin cvs committed all the
23719         dos line endings.
23720
23721 1999-10-28  Stephane Conversy  <Stephane.Conversy@lri.fr>
23722
23723         * ltmain.in (-DPIC):  changed the order of pic flags a little to
23724         prevent upsetting the sgi c++ compiler.
23725
23726 1999-10-28  Olly Betts  <olly@muscat.co.uk>
23727
23728         * ltconfig.in (opt_cr):  Handle crlf sequences output by the
23729         mingw toolchain.
23730
23731         * libtool.m4:  Third time lucky, with Tor's patch.
23732
23733 1999-10-19  Tor Lillqvist  <tml@iki.fi>
23734
23735         * libtool.m4:  these was a missing `*' in the -mno-cygwin
23736         match.
23737         * ltconfig.in (cygwin, ltdll_obj): fixed a quoting error.
23738         (export_symbols_cmds): added missing cosmetic newline.
23739
23740 1999-10-18  Tor Lillqvist  <tml@iki.fi>
23741
23742         * libtool.m4: test command used == which should be =.
23743         Support -mno-cygwin flag for building mingw32 dlls.
23744         * ltconfig.in (file_magic_cmd): add missing quotes.
23745         (deplibs_check_method): and here.
23746
23747 1999-10-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23748
23749         * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
23750         specified library is not just a basename.
23751
23752 1999-10-10  Gary V. Vaughan  <gary@gnu.org>
23753
23754         * libtool.m4 (AC_PATH_FILE): new macro replaces
23755         AC_PATH_TOOL_GREP_OUTPUT.
23756         (AC_PATH_TOOL_PREFIX): new macro replaces
23757         AC_PATH_PROG_GREP_OUTPUT.
23758         (AC_LD_RELOAD_FLAG):  migrated from ltconfig.in.
23759         (AC_DEPLIBS_CHECK_METHOD): ditto.
23760         * ltconfig.in (reload_flag): moved to libtool.m4.
23761         (deplbs_check_method): ditto.
23762
23763 1999-10-07  Gary V. Vaughan  <gary@gnu.org>
23764
23765         * libtool.m4 (AC_PATH_PROG_VERSION_GREP): removed in favour of the
23766         more general AC_PATH_PROG_GREP_OUTPUT.
23767         (AC_PATH_TOOL_VERSION_GREP): removed in favour of the more general
23768         AC_PATH_TOOL_GREP_OUTPUT.
23769         (AC_PROG_LIBTOOL):  Search for a working find program in the
23770         user's PATH using the new macros.
23771
23772 1999-10-06  Gary V. Vaughan  <gary@gnu.org>
23773
23774         * NEWS: updtaed.
23775         * ltconfig.in: Accept osf5.
23776         Reported by Sascha Schumann <sascha@schumann.cx>
23777
23778 1999-10-04  Gary V. Vaughan  <gary@gnu.org>
23779
23780         * ltmain.in (-no-install):  This doesn't work on win32 since
23781         the search path for libraries is not encoded in the binary,
23782         and dlls not in $PATH won't be found.  Fall back to -no-fast-install
23783         instead.
23784
23785         * ltmain.in (-no-fast-install):  Wrapper script used to add the
23786         exeext on again when naming the wrapped executable.
23787
23788 1999-10-03  Gary V. Vaughan  <gary@gnu.org>
23789
23790         * ltconfig.in:  Set $FILE to @FILE@ for substitution with
23791         the value found in libtool.m4 at configure time.
23792         * libtool.m4 (AC_PATH_TOOL_GREP_VERSION):  New macro, combines
23793         AC_PATH_PROG and AC_CHECK_TOOL with a test which greps the
23794         output of $ac_dir/${ac_prefix}<tool> --version for a
23795         given regex.
23796         (AC_PATH_PROG_GREP_VERSION):  New macro used by the above.
23797         (AC_LIBTOOL_SETUP): Use the new macros to search the PATH
23798         [starting at /usr/bin] for a file program which accepts
23799         --version and has "file" in its --version output.
23800
23801 1999-10-03  Thomas Tanner  <tanner@ffii.org>
23802
23803         * NEWS: new -no-install flag
23804         * configure.in: fix typo
23805         * doc/libtool.texi(Link mode): document -no-install flag,
23806           correct -no-fast-install docs
23807         * libtool.m4: check for "file" command
23808         * ltconfig.in: don't hardcode /usr/bin/file, remove second
23809           definition of sysv5, replace linkopts -> linker_flags
23810         * ltmain.in: add new -no-install flag, print help for -no-install
23811           and -no-fast-install flags
23812
23813 1999-10-03  Olly Betts <olly@muscat.co.uk>
23814
23815         * ltmain.in: always create output_objdir
23816
23817 1999-10-03  Pavel Roskin  <pavel_roskin@geocities.com>
23818
23819         * libltdl/Makefile.am: don't preserve file attributes when
23820           installing the libltdl sources
23821
23822 1999-10-01  Gary V. Vaughan  <gary@gnu.org>
23823
23824         * configure.in (AC_OUTPUT_COMMANDS): generate ltmain.sh
23825         * Makefile.am (ltmain.sh ltconfig): removed.  Automake inserts the
23826         rules to automatically call config.status.
23827
23828         * libtool.m4: be sure to AC_SUBST values no longer tested in
23829         ltconfig.in.
23830         * ltconfig.in: replaced several of the simple feature tests with
23831         substitutions from config.status.
23832         * Makefile.am (ltconfig): generate ltconfig with config.status.
23833         * configure.in (AC_OUTPUT): generate ltconfig with config.status.
23834
23835 1999-09-30  Donald Anderson  <dda@world.std.com>
23836
23837         * ltconfig.in (sco3.2v5): use pass_all deplibs_check_method
23838         for SCO3.2.
23839
23840 1999-09-29  Gary V. Vaughan  <gary@gnu.org>
23841
23842         * ltconfig.in (whole-archive-flag-spec):  I had been
23843         wondering why my file system was filling up with empty
23844         files named `71'... seems I forgot to hold in the
23845         shift key when redirecting stderr, 2>&1.  Doh!
23846
23847 1999-09-29  Vadim  <vadim@olly.ru>
23848
23849         * ltconfig.in (sysv):  More UW7 support.
23850
23851 1999-09-28  Albert Cheng  <acheng@ncsa.uiuc.edu>
23852
23853         * ltmain.in (shlibpath_var): ensure the variable is non-empty before
23854         exporting it.
23855
23856 1999-09-27  Manfred Weichel  <weichel@global.nacamar.de>
23857
23858         * ltconfig.in (sysv5): Added support required for shared
23859         library linking on SCO UW7.
23860
23861 1999-09-22  Gary V. Vaughan  <gary@gnu.org>
23862
23863         * ltconfig.in (whole-archive-flag-spec): test whether the
23864         version of GNU ld being used understands --whole-archive
23865         before using it.
23866
23867 1999-09-19  Thomas Tanner  <tanner@ffii.org>
23868
23869         * ltmain.in: don't ignore convenience libraries for objects/archives
23870           (temporary hack)
23871
23872 1999-09-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23873
23874         * ltconfig.in (CDPATH): Set to `:' instead of empty.
23875         * ltmain.in (CDPATH): Likewise.
23876         Reported by Greg McGary <gkm@eng.ascend.com>
23877
23878 1999-08-24  Gary V. Vaughan  <gary@gnu.org>
23879
23880         * ltconfig.in (ltdll.c, impgen.c): Prevent the shell from
23881         expanding variables & backslash escapes when writing these
23882         files to the libtool script.
23883
23884 1999-08-24  Thomas Tanner  <tanner@ffii.org>
23885
23886         * NEWS: mention fixes
23887         * doc/PLATFORMS: GNU/Hurd update
23888         * depdemo: make use of variables
23889         * ltconfig.in: use CC -E when checking for ELF support
23890           on NetBSD (reported by Todd Vierling <tv@pobox.com>),
23891           replace all occurences of 'linkopts' with 'linker_flags'
23892         * ltmain.in: move ltdll.c and impgen.c to ltconfig.in and
23893           only add them to the libtool script if it's necessary
23894
23895 1999-08-24  Boyd Gerber  <gerberb@zenez.com>
23896
23897         * ltconfig.in: add support for UnixWare 7.X.X
23898         * doc/PLATFORMS: add new platforms
23899
23900 1999-08-24  Pavel Roskin  <pavel_roskin@geocities.com>
23901
23902         * doc/libtool.texi: document use of noinst_LTLIBRARIES for
23903           convenience libraries
23904
23905         * ltconfig.in: check for freebsdelf3, not just freebsd3.
23906         Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1
23907
23908         * ltmain.in: enable workaround for freebsdelf3.0
23909
23910 1999-08-24  Bert Driehuis  <bert_driehuis@nl.compuware.com>
23911
23912         * ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
23913
23914 1999-08-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
23915
23916         * libltdl/COPYING.LIB: Update to version 2.1.
23917         * libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.
23918
23919 1999-08-03  Gary V. Vaughan  <gary@gnu.org>
23920
23921         * libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return
23922         stripping.
23923         * ltconfig.in: ditto.
23924         From Olly Betts <olly@muscat.co.uk>
23925
23926 1999-08-02  Olly Betts  <olly@muscat.co.uk>
23927
23928         * doc/libtool.texi (Compile mode): typo correction.
23929         (Link mode): and another.
23930         (Release numbers):  and another.
23931         (Distributing libltdl): and another.
23932         (Test descriptions): and another.
23933         (libtool script contents): and one more.
23934
23935         * libtool.m4 (AC_PROG_LD): strip carriage returns from the
23936         output of gcc -print-prog-name=ld.
23937         * ltconfig.in: ditto.
23938
23939 1999-07-30  Pavel Roskin  <pavel_roskin@geocities.com>
23940
23941         * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
23942         initialised structures are sometimes emitted in the code section.
23943
23944 1999-07-30  Mumit Khan  <khan@xraylith.wisc.edu>
23945
23946         * ltconfig.in:  Read line at a time to avoid tokenisation by
23947         shell.
23948
23949 1999-07-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
23950
23951         * ltmain.in: Fix creation of relative links to object files in
23952         sub-dirs.
23953
23954 1999-07-29  Olly Betts  <olly@muscat.co.uk>
23955
23956         * ltconfig.in(cygwin mingw32, archive_expsym_cmds): Only compile
23957         and link ltdll.c if the libtool.m4 macros discovered that it is
23958         required.
23959
23960 1999-07-26  Olly Betts  <olly@muscat.co.uk>
23961
23962         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops.  Fix some
23963         typos made by Evil Gary while (mis)applying my patch :-).
23964
23965         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP):  On second
23966         thoughts, only probe for -mdll vs -dll on mingw, and revert to
23967         the old `-Wl,--dll -nostartfiles' on cygwin.
23968
23969 1999-07-24  Erez Zadok  <ezk@cs.columbia.edu>
23970
23971         * doc/PLATFORMS (i*86-*openbsd2.5):  New platform.
23972         Slight reordering of other bsd entries.
23973
23974 1999-07-24  Olly Betts  <olly@muscat.co.uk>
23975
23976         * NEWS: Note new user visible changes.
23977         * libtool.m4 (mingw32, AC_LIBTOOL_SETUP): probe for -mdll vs -dll
23978         under cygwin/mingw.
23979         probe whether the cygwin/mingw library supplies a stub DllMain
23980         (but this information isn't yet used).
23981         * ltconfig.in (mingw32, extract_expsyms_cmds): if HOST_CC is set,
23982         use that to build impgen so we can use it when cross-compiling.
23983         use correct entry points for mingw so static C++ constructors get
23984         called for code in the DLL.
23985         * ltmain.in (impgen.c): define O_BINARY to 0 if it is not in the
23986         system headers.
23987
23988 1999-07-24  Bert Driehuis <bert_driehuis@compuware.com>
23989
23990         * ltconfig.in:  Updated bsdi4 soname specs to be more like
23991         linux as discussed on the bsdi mailing list.
23992
23993 1999-07-20  Gary V. Vaughan  <gary@gnu.org>
23994
23995         * configure.in (AC_PROG_RANLIB):  No longer required as we now use
23996         AC_CHECK_TOOL in AC_LIBTOOL_SETUP.
23997         * libtool.m4 (AC_PROG_LIBTOOL):  Pass the $build variable to
23998         ltconfig.
23999         (AC_PROG_RANLIB): replaced with AC_CHECK_TOOL.
24000         * ltconfig.in (build): new variable to hold the build triplet
24001         which is now checked for unless --no-verify is specified.
24002         (--build): new argument to set the build triplet.
24003         (ranlib): Prefer ${host_alias}-ranlib[.exe] if $build is different
24004         to $host.
24005         * doc/libtool.texi (Invoking ltconfig): Document --build option.
24006         * NEWS: Note --build option.
24007
24008 1999-07-19  Erez Zadok  <ezk@cs.columbia.edu>
24009
24010         * doc/PLATFORMS: Updated mostly *bsd platforms.
24011
24012 1999-07-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
24013
24014         * doc/libtool.texi (Porting inter-library dependencies): Typos
24015         Reported by Petter Reinholdtsen <pere@hungry.com>
24016
24017 1999-07-17  Thomas Tanner  <tanner@ffii.org>
24018
24019         * NEWS, TODO: updated (pic flags)
24020         * libtool.m4 (AC_PROG_LIBTOOL): added --with-pic flag
24021         * ltconfig.in: new pic_mode variable and --prefer[-non]-pic flags,
24022           fixed the strip check (reported by Keith Bostic <bostic@bostic.com>)
24023         * ltmain.in (compile mode): build only PIC/non-PIC code depending
24024           on pic_mode
24025         * libltdl/README: document the supported dlopen interfaces
24026         * doc/libtool.texi (tests): documented new tests
24027         * tests/Makefile.am: added new tests
24028         * tests/demo-pic.test: new test to test --with-pic
24029         * tests/demo-nopic.test: new test to test --without-pic
24030         * tests/build-relink2.test: variant of build-relink.test that
24031           uses depdemo
24032
24033 1999-07-09  Olly Betts  <olly@muscat.co.uk>
24034
24035         * doc/libtool.texi (C++ Libraries):  fixed a typo.
24036
24037 1999-07-06  Gary V. Vaughan  <gary@gnu.org>
24038
24039         * README-alpha:  improved the release instructions to mention
24040         actual list addresses for announcements, and urls for upload
24041         locations.
24042
24043 1999-07-03  Thomas Tanner  <tanner@ffii.org>
24044
24045         * doc/PLATFORMS: 1.3b passes all tests on cygwin
24046
24047 1999-07-03  Pavel Roskin <pavel_roskin@geocities.com>
24048
24049         * ltconfig.in: finish_cmds for FreeBSD removed
24050         * depdemo/l3/Makefile.am: install libl3.la into an extra directory
24051
24052 1999-07-02  Gary V. Vaughan  <gary@gnu.org>
24053
24054         * configure.in: bumped version to 1.3c.
24055
24056         GNU libtool 1.3b was released.
24057
24058         * NEWS: inserted todays date.
24059
24060 1999-07-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
24061
24062         * doc/PLATFORMS: Tested on as many platforms as possible for me.
24063
24064 1999-07-01  Thomas Tanner  <tanner@ffii.org>
24065
24066         * NEWS: updated
24067         * doc/PLATFORMS: updated
24068         * changed my email address
24069
24070 1999-06-30  Thomas Tanner  <tanner@ffii.org>
24071
24072         * demo/foo.h: use LT_PARAMS instead of LTDL_PARAMS (this is not libltdl)
24073         * tests/build-relink.test: also check for hardcode_into_libs = yes,
24074           if set, we need to relink at install-time
24075
24076 1999-06-29  Thomas Tanner  <tanner@ffii.org>
24077
24078         * NEWS: mention -no-fast-install, rename dummy to force
24079         * doc/PLATFORMS: 1.3b passes all tests on GNU/Linux,
24080           FreeBSD (2.2.6 and 3.1)
24081         * doc/libtool.texi: it's possible to link libtool libraries
24082           using -L and -l, better documentation of uninstall and clean mode,
24083           rename dummy to force, documented -no-fast-install,
24084           AC_LIBLTDL_* must be called before AC_PROG_LIBTOOL,
24085           documented hardcode_into_libs and striplib/old_striplib,
24086         * ltconfig.in: search for strip program, added hardcode_into_libs
24087           and striplib/old_striplib variables, set strip commands for GNU strip,
24088           on FreeBSD >= 3.2 set hardcode_into_libs to yes,
24089           fast-install mode doesn't work if hardcode_into_libs = yes
24090         * ltmain.in: reimplemented hardcoding into libraries:
24091           new relink mode, preserve all libtool args, relink libraries
24092           when installing if necessary
24093           added -no-fast-install flag, removed unnecessary `dlname'
24094           initialization, use striplib/old_striplib for stripping libraries,
24095           dlname is always soname or in library_names so we don't need
24096           to handle different file names
24097
24098 1999-06-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24099
24100         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to yes
24101         up to release 3.1, and to no from 3.2 on.
24102         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24103
24104 1999-06-29  Pavel Roskin <pavel_roskin@geocities.com>, Alexandre Oliva  <oliva@dcc.unicamp.br>
24105
24106         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to
24107         yes; tested on 3.1-ELF by Pavel and on 2.2.6 by Alexandre.
24108
24109 1999-06-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24110
24111         * ltconfig.in (linux-gnu*, deplibs_check_method): Use pass_all on
24112         alpha, x86 and sparc architectures by now, reverting to file_magic
24113         at least on ARM, where it breaks.
24114
24115 1999-06-23  Thomas Tanner  <tanner@ffii.org>
24116
24117         * NEWS: updated
24118         * README: added GNU Hurd to the supported platforms
24119         * doc/libtool.texi: document `-dlpreopen dummy'
24120           instead of `-dlopen dummy'
24121         * libltdl/ltdl.c (strchr): fixed typo (missing star)
24122
24123 1999-06-23  Stephan Kulow <coolo@itm.mu-luebeck.de>
24124
24125         * libltdl/ltdl.c (strrchr): fixed typo (missing star)
24126         * libltdl/ltdl.c (trim): use `const' to silence -Wwrite-strings
24127
24128 1999-06-23  Olly Betts  <olly@muscat.co.uk>
24129
24130         * ltmain.in (ltdll.c): Support for crosscompiling from linux to
24131         mingw32.
24132
24133 1999-06-23  Gary V. Vaughan  <gary@gnu.org>
24134
24135         * ltconfig.in (cygwin, export_symbols_cmds): If there is already
24136         an extracted and compiled ltdll.c, then don't delete, reextract
24137         and recompile.
24138         (cygwin, archive_expsym_cmds): Make sure the ltdll source has been
24139         extracted and compiled before referencing the object, since there
24140         are paths through the code which run archive_expsym_cmds without
24141         running export_symbols_cmds.
24142
24143 1999-06-20  Gary V. Vaughan  <gary@gnu.org>
24144
24145         * ltconfig.in:  moved the test for NM after the test for
24146         no_builtin_flag.
24147
24148 1999-06-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
24149
24150         * ltconfig.in: Use sed '$q' instead of sed "" for copying ltmain,
24151         just in case some sed does not support an empty command.
24152
24153         * ltconfig.in (link_static_flag, ac_cv_prog_cc_static): Use the
24154         latter in the test.
24155
24156 1999-06-18  Thomas Tanner  <tanner@ffii.org>
24157
24158         * ltconfig.in (bsdi4, deplibs_check_method): use a less restrictive
24159           regex (reported by Chris P. Ross <cross@eng.us.uu.net>)
24160         * ltmain.in: support `-dlopen dummy', define lt_preloaded_symbols
24161           if dlself != no
24162         * doc/libtool.texi (Compile and Link mode): document it,
24163           documented the -Wc, -Wl flags, libtool does also support non C
24164           source code
24165
24166 1999-06-18  Teun Burgers  <burgers@ecn.nl>
24167
24168         * ltconfig.in: CR/LF fix for broken DJGPP bash
24169         * ltmain.in: CR/LF fix for DJGPP
24170
24171 1999-06-18  Gary V. Vaughan  <gary@gnu.org>
24172
24173         * ltmain.in (outputname): When generating the executable wrapper
24174         script, $outputname already has the $exeext suffix, so we needn't
24175         add it again.
24176
24177 1999-06-16  Gary V. Vaughan  <gary@gnu.org>
24178
24179         * libltdl/configure.in (ac_cv_lib_dl_dlopen): missing "x" in test
24180         comparison corrected.
24181
24182         * libltdl/ltdl.c (sys_wll_open): libltdl expects this function to
24183         fail if it is unable to physically load the library.  Sadly,
24184         LoadLibrary will search the loaded libraries for a match and
24185         return one of them if the path search load fails.  Simulate a
24186         failure in this case for compatibility with the other APIs.
24187         Also, LoadLibrary takes the liberty of adding `.dll' to library
24188         names passed without an extension, we now add a trailing `.' to
24189         prevent this from happening.
24190
24191 1999-06-15  Gary V. Vaughan  <gary@gnu.org>
24192
24193         * libltdl/ltdl.c (sys_wll_close): Strangely enough, Microsoft have
24194         decided that LoadLibrary returns `0' for success, yet FreeLibrary
24195         returns `0' for failure!  The FreeLibrary call used to interpret
24196         `0' as success for both functions.
24197
24198 1999-06-14 Thomas Tanner  <tanner@ffii.org>
24199
24200         * ltconfig.in: use eval when setting have_dlfcn_h, reformatting
24201
24202 1999-06-12 Thomas Tanner  <tanner@ffii.org>
24203
24204         * ltmain.in: store old archives in deplibs and old_deplibs,
24205           retain the order of dependency libraries (even old archives),
24206           determining the absolute directory name didn't work due to a typo,
24207           add the library search paths of all dependency libraries when
24208           linking a library (fixes IRIX 5.2 bug)
24209
24210 1999-06-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
24211
24212         * ltconfig.in: Reverted June 6's patch for new GNU ld output, it
24213         is no longer needed, as ld reverted to the original format.
24214         * NEWS: Likewise.
24215
24216         * ltconfig.in: When testing self-dlopening, test whether dlclose
24217         crashes.  On FreeBSD 3.1, it does.  :-(
24218         * libltdl/configure.in: Likewise.
24219         * NEWS: Note work-around.
24220         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24221
24222 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
24223
24224         * ltconfig.in (exeext): autoconf's AC_EXEEXT uses "no" to indicate
24225         no extension, and we must do the same in order to share the cache
24226         value. Also we must ignore conftest.err which HPsUX (at least)
24227         fills with gratuitous warnings.
24228         (objext): for consistency, do the same as above.
24229         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24230
24231 1999-06-09  Pavel Roskin  <pavel_roskin@geocities.com>
24232
24233         * ltconfig.in (exeext): Use quotes in the test, to prevent a
24234         failure in sh.test.
24235
24236 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
24237
24238         * ltconfig.in: Reordered tests to be more like configure.in's
24239         recommended order (programs first, then libraries, etc.).
24240         Performed a manual ``constant folding pass'' (eg: s/eval "test
24241         \"echo '$''{'lt_cv_dlopen'+set}'`\" != set/test
24242         "${lt_cv_dlopen+set}" != set/).
24243         s/test "${foo+set}" = "set"/test "X${foo+set}" = Xset/g
24244
24245         * ltconfig.in (link_static_flag): Accept, in order of decreasing
24246         preference: the cached value; the default value for the current
24247         host.  Also test that the compiler accepts the flag, and cache
24248         that result too.
24249
24250         * ltconfig.in (pic_flag): Accept, in order of decreasing
24251         preference:  the cached value; the default value for the current
24252         host.  Also test that the compiler accepts the flag, and cache
24253         that result too.
24254
24255 1999-06-08  Gary V. Vaughan  <gary@gnu.org>
24256
24257         * ltconfig.in (LN_S): Accept, in order of decreasing preference:
24258         the cached value; an environment setting; ``ln -s'' if it works;
24259         ``ln'' if ``ln -s'' doesn't appear to work.
24260
24261         * ltconfig.in (objext): Accept, in order of decreasing preference:
24262         the cached value; the result of a test object compilation.
24263
24264         * ltconfig.in (RANLIB): Accept, in order of decreasing preference:
24265         the cached value; an environment setting; the first file called
24266         ``ranlib'' in the user's path.
24267
24268         * ltmain.in (exeext): Use $exeext when working out the names of
24269         programs (but not the wrapper script itself due to a stupidity in
24270         win32 which hardwires the .exe extension to the binary loader!).
24271         * ltconfig.in (exeext): Now that the wrapper script tries to move
24272         executables, we need to know whether they have an extension (ala
24273         AC_EXEEXT).  Since we can't rely on AC_EXEEXT having been called
24274         in configure.in, we must be able to check for ourselves, though we
24275         can look for a cached result incase AC_EXEEXT was called.
24276
24277         * ltconfig.in (cygwin, pic_flag):  Force separate compilation of
24278         objects for dlls vs. objects for static archives.  Using a cpp
24279         macro also allows us to decide whether or not we need to use
24280         dllexport/import declarations.
24281
24282         * ltconfig.in (cygwin, need_version): Set to no, otherwise module
24283         dll's end up with mighty long names!
24284
24285 1999-06-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
24286
24287         * ltconfig.in: Support new GNU ld --help output format.
24288         * NEWS:  Likewise.
24289         Reported by Gaël Quéri <gael@baoule.dyndns.org> and
24290         H.J. Lu <hjl@varesearch.com>.
24291
24292 1999-06-05  Mark Kettenis  <kettenis@gnu.org>
24293
24294         * ltconfig.in: Update support for the Hurd.  Make sure that the
24295         soname includes the major version number and create the right
24296         links.  Allow shared objects without the `lib' prefix and without
24297         version information.
24298
24299 1999-06-02 Nick Rasmussen <nick@jive.org>
24300
24301         * ltmain.in (link): use "$nonopt" as the compiler for
24302           compile/finalize_command
24303
24304 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24305
24306         * TODO: Remove the short list of people interested in C++
24307         constructors; it's not meaningful, since there are so many more
24308         people requesting this feature, and we just can't maintain it
24309         accurate.
24310
24311 1999-05-27  Pavel Roskin  <pavel_roskin@geocities.com>
24312
24313         * ltconfig.in (GNU Hurd, deplibs_check_method): Use pass_all.
24314
24315 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>, Olly Betts  <olly@muscat.co.uk>
24316
24317         * ltmain.in: Expand convenience libraries when creating reloadable
24318         objects.
24319         * NEWS: Ditto.
24320
24321 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24322
24323         * NEWS: Mention the two bugfixes below.
24324
24325         * ltmain.in: Only create directory into which to extract
24326         convenience libraries when $convenience is not empty.  It would
24327         always be created on systems that did not support
24328         whole_archive_flag_spec.
24329
24330         * ltconfig.in (export_symbols_cmds): Add $convenience.
24331         (cygwin, export_symbols_cmds): Ditto.
24332         * ltmain.in: Generate export symbol list before expanding
24333         convenience libraries, to avoid passing whole_archive_flag_spec to
24334         $NM.
24335         Reported by Godmar Back <gback@cs.utah.edu>
24336
24337 1999-05-27  David Jones  <jones@mosaid.com>
24338
24339         * libltdl/ltdl.c (LTDL_BIND_FLAGS): Remove BIND_VERBOSE, to avoid
24340         printing error messages.
24341
24342 1999-05-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
24343
24344         GNU libtool 1.3.2 was released.
24345
24346 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24347
24348         * NEWS: List fixed problems.
24349         * doc/PLATFORMS: Tested for 1.3.2.
24350
24351         * config.guess: Synch with GNU common.
24352
24353         * ltmain.in: Revert to stripping .exe on all platforms.
24354         * TODO: Note about this problem.  Demo is fixed on win32.  Support
24355         `empty' convenience libraries.
24356
24357         * ltconfig.in (solaris*, ld_shlibs): Do not enable shared
24358         libraries with GNU ld 2.8.*, it's broken.  Emit a warning
24359         suggesting an upgrade.
24360         Reported by Brian Ford <ford@vss.fsi.com> and Ronald Pijnacker
24361         <Ronald.Pijnacker@best.ms.philips.com>
24362
24363 1999-05-25  Frank Ch. Eigler <fche@cygnus.com>
24364
24365         * ltmain.in: file_magic check would not avoid cyclic links.
24366
24367 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24368
24369         * depdemo/main.c, depdemo/l1/l1.c, depdemo/l2/l2.c: K&R-ize.
24370         * depdemo/l3/l3.c, depdemo/l4/l4.c: Likewise.
24371
24372         * ltmain.in: Remove object files before writing to them, to avoid
24373         circular links.
24374         Reported by Ron O'Hara <rono@sentuny.com.au>
24375
24376 1999-05-24 Thomas Tanner  <tanner@ffii.org>
24377
24378         * NEWS: support for installing stripped libraries using GNU strip
24379         * ltconfig.in: set deplibs_check_method=pass_all on FreeBSD,
24380           Linux and Solaris since no one can reproduce the famous deplibs
24381           bug
24382         * ltmain.in: preserve $CC (reported by Tom Tromey),
24383           strip libraries using GNU strip if it's available and the
24384           -s flag was passed to "install"
24385
24386 1999-05-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
24387
24388         * doc/PLATFORMS: Release 1.3.1 passes on GNU Hurd/x86.
24389         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24390
24391 1999-05-23 Thomas Tanner  <tanner@ffii.org>
24392
24393         * ltmain.in: strip off the .exe suffix only on *Win
24394           (Reported by Matthew D. Langston <langston@SLAC.Stanford.EDU>)
24395
24396 1999-05-22 Thomas Tanner  <tanner@ffii.org>
24397
24398         * NEWS: updated
24399         * TODO: -Wc, -Wl, implemented
24400         * AUTHORS: changed my email address
24401         * doc/libtool.texi: fix "wierd" typo :)
24402         * ltmain.in: linking against convenience libraries was broken,
24403           implemented the "-Wc," "-Wl," "-Xcompiler" "-Xlinker" flag for
24404           compiler and linker-specific flags,
24405           add -lc before we do the deplibs check
24406         * ltconfig.in: linkopts -> compiler_flags for $CC and linker_flags
24407           for $LD, link_all_deplibs=yes on IRIX
24408
24409 1999-05-22  Gary V. Vaughan  <gary@gnu.org>
24410
24411         * NEWS: insert todays date alongside 1.3.1 release.
24412         * Makefile.in: use gnu not gnits rules
24413         * config.guess: synch with gnu common & apply Takabatake-san's
24414         MIPS *000 patch.
24415         * config.sub: synch with gnu common.
24416
24417 1999-05-22  Doug Evans  <devans@casey.cygnus.com>
24418
24419         * libltdl/configure.in (dlerror): Fix typo in dlopen found in -ldl
24420         test.
24421
24422 1999-05-21  Pavel Roskin  <pavel_roskin@geocities.com>
24423
24424         * Makefile.am (EXTRA_DIST): Don't distribute instutils.
24425         (install-data-hook): use libltdl/Makefile.am's local-install files
24426         rule.
24427         * libltdl/Makefile.am (local-install-files):  New rule to install
24428         libltdl without creating links or mode 777 directories.
24429         * instutil/*: deleted.
24430
24431 1999-05-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
24432
24433         * doc/PLATFORMS: Updated to 1.3.1 for all platforms I've got.
24434         Added sparc-unknown-linux-gnu.
24435
24436 1999-05-21  Gary V. Vaughan  <gary@gnu.org>
24437
24438         * demo/foo.h: s/PARAMS/LTDL_PARAMS/g
24439         * libltdl/ltdl.h: ditto.
24440         * libltdl/ltdl.c: ditto.
24441
24442         * demo/foo.h: s/__P/PARAMS/g
24443         * libltdl/ltdl.h: ditto.
24444         * libltdl/ltdl.c: ditto.
24445         Reported by Akim Demaille <demaille@inf.enst.fr>
24446
24447 1999-05-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
24448
24449         * NEWS: Updated docs.
24450         * TODO: Recommend libtool.m4 to be inserted in acinclude.m4. AIX
24451         4.3.2.0 no longer fails on static dlopening.  GNU DLD no longer
24452         has to support .la files, since libltdl already does.  Convenience
24453         libraries and reloadable objects should be tested in the
24454         testsuite.  We could support some amount of control on the soname
24455         of libraries.
24456         * doc/libtool.texi: Notes about convenience libraries and
24457         automake.  Documented INCLTDL.
24458
24459 1999-05-20 Thomas Tanner  <tanner@gmx.de>
24460
24461         * cdemo/main.c: "Welcome _to_ ..."
24462         * mdemo/main.c: ditto
24463         * libltdl/configure.in: support multiple dlopening mechanisms
24464           at once
24465         * libltdl/ltdl.c: prefix system dependent functions with "sys_"
24466           to avoid symbol conflicts (libdld didn't work)
24467         * libtool.m4 (AC_LIBLTDL_*): set INCLTDL to the path of ltdl.h
24468         * ltconfig.in: check for dlopen with -ldl first
24469
24470 1999-05-19  Gary V. Vaughan  <gary@gnu.org>
24471
24472         * NEWS: Added 1.3.1 news items.
24473         * doc/PLATFORMS: updated the boxes I have access to, to 1.3.1
24474         in preparation for the next release.
24475
24476 1999-05-18  Gary V. Vaughan  <gary@gnu.org>
24477
24478         * ltconfig.in (cygwin*, whole_archive_flag_spec): dlltool chokes
24479         on this, so leave it unset in this case so that the ltmain code
24480         knows it has to unpack convenience archives by itself.
24481
24482 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
24483
24484         * ltmain.in: Do not exit when an unknown library name is passed
24485         passed in, simply warn and continue since some compilers require
24486         -LANG:* like options to work.
24487         Reported by Adam C. Powell, IV <adam.powell@nist.gov>
24488
24489 1999-05-17  Jiro Takabatake  <jiro@din.or.jp>
24490
24491         * ltconfig.in: port to NEC UX/4800.
24492         * NEWS: updated.
24493
24494 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
24495
24496         * ltconfig.in (beos*, deplibs_check_method): set to pass_all.  BeOS
24497         is PIC by default.
24498         Reported by "Shawn T . Amundson" <amundson@gimp.org>
24499
24500         * libltdl/configure.in: Fix test failures on AIX 4.3.2 by checking
24501         for dlopen *with* -ldl first.
24502         Reported by Greg Wooledge <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
24503
24504         * demo/foo.h: Don't set any declspecs until we have full dll
24505         support.
24506
24507 1999-05-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
24508
24509         * ltconfig.in (solaris2.6, whole_archive_flag_spec): Do not use
24510         -Wl for allextract.
24511
24512 1999-05-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
24513
24514         * instutil/chmod: New script to avoid chmod'ing files while
24515         installing libltdl's sources.
24516         * instutil/ln: New script to avoid hard-linking libltdl's sources
24517         in the install tree.
24518         * Makefile.am (EXTRA_DIST): Dist them.
24519         (instal-data-hook): Add srcdir/instutil to the beginning of the
24520         PATH before installing libltdl's sources.
24521
24522 1999-05-09  Gary V. Vaughan  <gary@gnu.org>
24523
24524         * TODO: updated.
24525
24526 1999-05-06  Gary V. Vaughan  <gary@gnu.org>
24527
24528         * Makefile.am (install-data-hook):  make sure the install directory
24529         is not left world writable.
24530         Reported by Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
24531
24532 1999-04-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
24533
24534         * libtool.m4: Use ifelse instead of if.
24535         Reported by David Mazieres <dm@amsterdam.lcs.mit.edu>
24536
24537 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24538
24539         GNU Libtool 1.3 was released.
24540
24541         * NEWS: Summarize news from 1.2 to 1.3.
24542
24543         * ltmain.in: Save exit status of link_command before removing
24544         symbol table object file.
24545
24546 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
24547
24548         * doc/PLATFORMS: updated my hpux-10.20 and cygwin box entries.
24549
24550 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24551
24552         * NEWS: Improved support for DU and IRIX too.
24553
24554         * config.sub, config.guess: Updated from GNU common.
24555
24556         * mdemo/configure.in: Move AC_LIBLTDL_CONVENIENCE before
24557         AM_PROG_LIBTOOL, as suggested by autoconf.
24558
24559         * doc/libtool.texi (Distributing libltdl): Document that -static
24560         may cause the same problems on libltdl as -all-static.
24561         * TODO: We might want to fix this in the future.
24562
24563         * doc/libtool.texi: Clear up overfull hbox.
24564
24565         * libltdl/Makefile.am (ltdl.lo): Add dependencies.
24566         * libltdl/configure.in: Clean up some duplicate defines.  Enable
24567         support for multiple dlopening mechanisms.
24568         * libltdl/acconfig.h: New file.  Add #undefs for defines that
24569         would be duplicated.
24570
24571 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
24572
24573         * libtool.m4 (cygwin*|mingw*, DLLTOOL, OBJDUMP, AS): Only expand the
24574         code that makes these configure time checks on hosts that need the
24575         tools *and* if the AC_LIBTOOL_WIN32_DLL macro is used.
24576
24577 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
24578
24579         * ltmain.in (nlist, SYMFILE): Use outputname instead of output for
24580         names within output_objdir.
24581
24582 1999-04-28  Alexandre Oliva  <oliva@dcc.unicamp.br>
24583
24584         * libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC,
24585         AC_ENABLE_FAST_INSTALL): Do not call AC_BEFORE here, they're
24586         AC_REQUIREd by AC_LIBTOOL_SETUP.
24587         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
24588         Call AC_BEFORE here, and now with two arguments, since these do
24589         change the default.
24590         (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE): Fix calls to
24591         AC_BEFORE.
24592
24593 1999-04-28  Gary V. Vaughan  <gary@gnu.org>
24594
24595         * libtool.m4 (ltconfig_enable_win32_dll): pass --enable-win32-dll to
24596         ltconfig if this is set.
24597         (AC_LIBTOOL_WIN32_DLL): New macro required for libtool to attempt
24598         a dll build on win32 hosts.
24599         * ltconfig.in (--enable-win32-dll): new flag for the cli.
24600         (cygwin*|mingw*|os2*, ltconfig_enable_win32_dll): if this is not set
24601         to yes, then do not attempt to build shared libraries.
24602         * doc/libtool.texi: document AC_LIBTOOL_WIN32_DLL.
24603         * NEWS: noted new macro.
24604
24605 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24606
24607         * libtool.m4 (AC_LIBTOOL_DLOPEN, AC_ENABLE_SHARED,
24608         AC_ENABLE_STATIC, AC_ENABLE_FAST_INSTALL, AC_LIBLTDL_CONVENIENCE,
24609         AC_LIBLTDL_INSTALLABLE): Warn if they appear after
24610         AC_PROG_LIBTOOL.  AC_LIBTOOL_SETUP, actually.
24611         (AC_LIBTOOL_SETUP): Check whether DLOPEN support is to be enabled
24612         at autoconf time, not configure time.  Simplify code and
24613         improve (?) help message about --disable-libtool-lock.
24614
24615 1999-04-27 Thomas Tanner  <tanner@gmx.de>
24616
24617         * NEWS: new clean mode
24618         * THANKS: added Ossama Othman
24619         * doc/libtool.texi: documented the new `clean' mode
24620         * ltconfig.in: set need_version=no on OSF (reported by
24621           Marcus Sundberg <mackan@stacken.kth.se>)
24622         * ltmain.in: allow absolute non-existant -L paths,
24623           always use output_objdir instead of objdir for temporary files,
24624           delete generated temporary symbol lists,
24625           don't add .la twice in the pseudo-library header,
24626           implemented and documented clean mode (deletes libraries,
24627           programs and object files and the files associated with them),
24628           if build_libtool_libs=no and no static library is available,
24629           try to link the program against the shared library,
24630           don't add a statically linked library to the dependency_libs
24631         * ltmain.in (help uninstall): added a missing backslash
24632           after echo (reported by Ossama Othman)
24633
24634 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
24635
24636         * ltmain.in (old_archive_cmds): Iterate on oldobjs to find out
24637         which links to object files we must create.  Do not test for empty
24638         pic_flag to create such links.  Use objext when searching for
24639         object files extracted from convenience library.
24640
24641         * ltconfig.in (compiler_c_o): Make sure the compiler does not
24642         create temporaries in the current directory when output should go
24643         elsewhere.  We must perform locking if it does.
24644
24645 1999-04-27  Gary V. Vaughan  <gary@gnu.org>
24646
24647         * ltmain.in (old_archive_cmds): Ensure that there are always .o
24648         objects available before running old_archive_cmds.
24649
24650 1999-04-26  Erez Zadok  <ezk@cs.columbia.edu>
24651
24652         * doc/PLATFORMS: Updates for netbsd 1.3.3 and 1.4.
24653
24654 1999-04-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
24655
24656         * ltconfig.in (aix4.[01], always_export_symbols): The case pattern
24657         would never match; fixed.
24658         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
24659
24660 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24661
24662         * libtool.m4 (OBJDUMP): Pass it to ltconfig.
24663         * configure.in: AC_SUBST DLLTOOL, OBJDUMP and AS.
24664         * Makefile.am (libtool, clibtool): Pass them to ltconfig.
24665
24666 1999-04-25  Frank Ch. Eigler  <fche@cygnus.com>
24667
24668         * libtool.m4 (cygwin*): Look for target objdump tool.
24669         * ltconfig.in (cygwin*, file_magic_cmd): Use autoconf-located target
24670         objdump tool.  Track OBJDUMP like DLLTOOL and AS.
24671
24672         * ltconfig.in (cygwin*, deplibs_check_method): Accept
24673         "architecture: i386" as optional suffix, for it is printed on a
24674         separate line sometimes.
24675
24676         * ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C".
24677
24678         * ltmain.in (deplibs_check_method=file_magic): Redirect stderr to
24679         /dev/null, to suppress error messages from target objdump.
24680
24681 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24682
24683         * ltconfig.in (irix*, soname_spec, library_names_spec): Missing
24684         dots before $versuffix and $major.
24685
24686         * ltconfig.in (solaris*, whole_archive_flag_spec): Use -z
24687         allextract/defaultextract from Solaris 2.6 on.
24688         Reported by Brian Ford <ford@vss.fsi.com>
24689
24690         * ltconfig.in (beos*, allow_undefined_flag): Do not build shared
24691         libraries with undefined symbols.
24692
24693         * ltconfig.in (aix4*, allow_undefined_flag): Set to -berok.
24694         (aix4*, shared_flag): Set to -shared or ${wl}-bM:SRE.
24695         (aix4*, archive_cmds): Use -bexpall.
24696         (aix4*, archive_cmds, archive_expsym_cmds): Use shared_flag and
24697         allow_undefined_flag.
24698         (aix4*, always_export_symbols): Set to yes up to AIX 4.1.*,
24699         because -bexpall is supported from 4.2 on.
24700         Reported by Greg Wooledge
24701         <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
24702
24703         * ltconfig.in (hpux*, hardcode_minus_L): Set to yes.
24704         (hpux*, hardcode_libdir_flag_spec): Do not use +s by default.
24705         (hpux*, shlibpath_overrides_runpath): Set to no.
24706
24707         * ltconfig.in (irix*, osf*, archive_cmds): Write so_locations
24708         within objdir.
24709
24710         * ltconfig.in (irix*, soname_spec): Append $major.
24711         (irix*, library_names_spec): Add new soname.
24712         Reported by David Kaelbling <drk@sgi.com>
24713
24714         * ltconfig.in (irix*, sys_lib_dlsearch_path_spec): /usr/local/lib
24715         is not searched by default.  /usr/lib is searched before /lib.
24716         * ltconfig.in (irix*, sys_lib_search_path_spec): /usr/lib is
24717         searched before /lib.
24718
24719         * ltconfig.in (irix5*, need_lib_prefix, need_version): Set to no,
24720         by unifying with irix6*.
24721
24722         * ltconfig.in (irix*, osf*, deplibs_check_method): Use pass_all.
24723
24724         * ltconfig.in (old_LDFLAGS, old_LIBS): Save and write to comments
24725         in output file.
24726
24727         * ltmain.in (prefer_static_libs): New variable, set to no by
24728         default, but set to yes by -static and -all-static.  Used instead
24729         of build_libtool_libs to decide whether to use a shared or static
24730         version of a library, when both versions are available.
24731
24732 1999-04-25  Boyd Lynn Gerber  <gerberb@zenez.com>
24733
24734         * ltconfig.in (sco3.2v5*): Use LD_RUN_PATH for hard-coding.
24735
24736 1999-04-25  Pavel Roskin  <pavel_roskin@geocities.com>
24737
24738         * Makefile.am (uninstall-local): Remove installed libltdl tree.
24739
24740 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
24741
24742         * demo/Makefile.am (hc-direct, hc-libflag, hc-libpath, hc-minusl):
24743         Added CFLAGS to link commands; SCO OSR needs it for -belf.
24744
24745         * TODO: -Wl and -Wc options.
24746
24747 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
24748
24749         * libltdl/ltdl.c: Remove trivial warnings.
24750
24751 1999-04-22  Frank Ch. Eigler  <fche@cygnus.com>
24752
24753         * ltconfig.in: Correct sed expression that extracts symbols
24754         from cygwin def files.  Ignore demangled C++ names, if any.
24755
24756 1999-04-12  John David Anglin  <dave.anglin@nrc.ca>
24757
24758         * libltdl/ltdl.c (shl_close): shl_t was correct here...
24759         (shl_sym): ... but we have to pass the handle by reference here.
24760
24761 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
24762
24763         * doc/libtool.texi (Invoking ltconfig): Document environment
24764         variables used.
24765
24766         * doc/libtool.texi (Invoking ltconfig): Document --cache-file.
24767
24768         * doc/libtool.texi (Invoking ltconfig): Document
24769         --disable-fast-install, --enable-dlopen, --with-gnu-ld and
24770         --disable-lock.
24771
24772 1999-04-11 Thomas Tanner  <tanner@gmx.de>
24773
24774         * libltdl/configure.in: check for shl_load in libdld
24775         * libltdl/ltdl.c (shl_close, shl_sym): use (shl_t *) instead of shl_t
24776         * ltconfig.in (check for gcc): removed a bogus line,
24777           check for shl_load in libdld
24778         * ltmain.in: added a warning to the header of the .la file
24779           to warn users against deleting the file,
24780           link shared against static libraries if
24781           deplibs_check_method == pass_all
24782
24783 1999-04-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
24784
24785         * libtool.m4 (AC_PROG_LD, AC_PROG_NM): When looking for programs,
24786         try $ac_exeext too, so that they're found on DJGPP/MS-DOS.
24787         * ltconfig.in: Likewise.
24788         Reported by Robert S. Maier <rsm@math.arizona.edu>
24789
24790         * ltconfig.in (Usage): Removed --enable-dlopen-self.
24791         Reported by Pavel Roskin <pavel_roskin@geocities.com>
24792
24793         * ltconfig.in: Moved sysv4 before sysv4.*.
24794         (symcode): Brian's overrider is specific to sysv4, not sysv4*.
24795
24796 1999-04-09 Thomas Tanner  <tanner@gmx.de>
24797
24798         * NEWS, README: Motorola System V 4 support
24799         * doc/PLATFORMS: added mk88-motorola-sysv4
24800         * ltconfig.in: installed patch from Brian Ford <ford@vss.fsi.com>
24801           to support mk88-motorola-sysv4
24802
24803         * doc/libtool.texi: some cleanups in the libltdl documentation
24804
24805 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
24806
24807         * ltconfig.in (--fallback-echo): Do not put an inline document and
24808         an exec in the same if construct; otherwise the inline document
24809         may not be removed.
24810         * ltmain.in (--fallback-echo): Likewise.
24811         Reported by John David Anglin <dave.anglin@nrc.ca>
24812
24813         * dryrun.test: It would still fail at random times, because `cp'
24814         and `mv' are not guaranteed to preserve the timestamps of the
24815         installed files.  Instead of preserving them, just remove them
24816         before the dry uninstall test.  Redirect dry-run output to stderr,
24817         so that it can be easily separated from the regular output.
24818
24819 1999-04-07 Thomas Tanner  <tanner@gmx.de>
24820
24821         * NEWS: support for moved libraries
24822         * libtool.m4: another DJGPP fix
24823
24824 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
24825
24826         * doc/PLATFORMS: Updated to 1.3 for all platforms I've got.  I'll
24827         make sure 1.3 won't be released unless it passes all tests on
24828         those platforms.
24829
24830         * doc/libtool.texi (Compile mode): Document potential problem and
24831         work-around for `-c -o dir/foo.lo'.
24832
24833         * tests/dryrun.test: The constant modifications of libtool would
24834         cause main.o to be updated at the wrong time; the new approach is
24835         to modify the libtool script so that it enables dry run depending
24836         on whether an environment variable is set or not.  I've also moved
24837         `after' and `before' to a directory deep within $objdir, instead
24838         of creating it in ../tests.
24839         * tests/Makefile.am (CLEANFILES): Removed.
24840
24841 1999-04-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
24842
24843         * tests/dryrun.test: We cannot rely on setting LIBTOOL, because
24844         automake may use sub-makes, and the setting will not be propagated
24845         to them on some makes.  Instead, create a dry version of libtool
24846         and switch between it and the original one before and after dry
24847         runs.
24848         * tests/Makefile.am (CLEANFILES): Added libtool-*, created by
24849         dryrun.test.
24850
24851         * tests/dryrun.test: Use cmp instead of diff.
24852         (before, after): Create them within ../tests.
24853         (libtool): Set to `/bin/sh ./libtool' by default, but use LIBTOOL,
24854         SHELL and top_builddir from the environment if available.  For dry
24855         runs, use "$libtool -n".
24856         * tests/Makefile.am (CLEANFILES): Added before and after.
24857         * ltmain.in: Do not create links to object files in dry runs.
24858
24859 1999-04-06 Thomas Tanner  <tanner@gmx.de>
24860
24861         * ltmain.in: added a missing line of the ILD patch
24862
24863         * NEWS: improved DJGPP support
24864         * doc/libtool.texi: removed hardcode_into_libs documentation
24865         * libtool.m4: some DJGPP fixes
24866         * ltconfig.in: ditto, reverted one of my previous patches: we need
24867           to check for NM, removed the hardcode_into_libs support since
24868           no platform seems to support it
24869         * ltmain.in: some DJGPP fixes, removed the hardcode_into_libs support
24870
24871 1999-04-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
24872
24873         * ltconfig.in (netbsd*, GNU ld): Support a.out shared libraries
24874
24875         * Makefile.am (CVS): allow command-line overriding of cvs
24876
24877         * ltconfig.in (exclude_expsyms): Exclude _GLOBAL_OFFSET_TABLE_ by
24878         default, as most a.out platforms use it, and end up in trouble if
24879         we preload it, so it's safer to rule it out by default, and
24880         special case its removal from exclude_expsyms if someone ever
24881         complains.
24882
24883 1999-04-05 Thomas Tanner  <tanner@gmx.de>
24884
24885         * doc/libtool.texi: reorder tests to reflect execution order,
24886           documented dryrun.test and depdemo*
24887         * ltmain.in (lt_preloaded_symbols): dry-run mode bugfix
24888         * tests/dryrun.test: new test to check whether the dry-run
24889           mode works properly
24890
24891         * demo/run.test: removed the unnecessary test
24892         * demo/Makefile.am: ditto
24893         * ltmain.in: set the DLL search path on cygwin,mingw and os2
24894
24895 1999-04-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
24896
24897         * ltconfig.in (sunos4*, GNU ld): -Bstatic is not enough for
24898         deplibs.test to work with GNU ld; -Bshareable is needed here.
24899
24900         * ltconfig.in (ld_shlibs, amigaos*): Disable shared libs with
24901         native ld too.
24902
24903         * ltconfig.in (sunos4*, GNU ld): Reordered.
24904
24905         * ltconfig.in (archive_cmds, sunos4*): Revert to -Bstatic; the
24906         native linker doesn't even support -Bshareable, only GNU ld does.
24907         Do not use `gcc -shared' in archive_cmds, it breaks deplibs.test.
24908
24909         * ltconfig.in: if ld_shlibs=no, set can_build_shared=no too,
24910         otherwise it will just be disregarded.  This would cause
24911         netbsd/m68k with GNU ld a.out, and certainly many other platforms,
24912         to incorrectly believe that shared libraries were supported, while
24913         archive_cmds was empty, causing shared libraries not to be created
24914
24915 1999-04-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
24916
24917         * NEWS: improved support for AIX and HP/UX
24918
24919 1999-04-03 Thomas Tanner  <tanner@gmx.de>
24920
24921         * NEWS: updated
24922         * libtool.m4: check for main in libm instead of cos
24923         * ltmain.in: cosmetic fixes, don't try to link libraries only once
24924           (although it's not necessary on many platforms and looks ugly...),
24925
24926 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
24927
24928         * ltmain.in (convenience): fixed race condition when more than one
24929         library was linked with the same convenience library by
24930         uniquifying the extract directory.  It is now named after the new
24931         library *and* the old one, and lives in the objdir of the new one.
24932
24933         * ltmain.in (-L*): do not abort just because a directory specified
24934         with -L does not exist; just warn and discard it
24935
24936         * depdemo/l1/Makefile.am (AUTOMAKE_OPTIONS): no-dependencies
24937         * depdemo/l2/Makefile.am (AUTOMAKE_OPTIONS): ditto
24938         * depdemo/l3/Makefile.am (AUTOMAKE_OPTIONS): ditto
24939         * depdemo/l4/Makefile.am (AUTOMAKE_OPTIONS): ditto
24940
24941         * ltconfig.in (archive_cmds, sunos4*): where we used -Bstatic, we
24942         should have been using -Bshareable
24943
24944         * demo/Makefile.am (CLEANFILES): clean EXTRA_* from deplibs-check
24945
24946         * libtool.m4 (LDFLAGS, LIBS): pass them to ltconfig, for the tests
24947         that involve linking
24948         * Makefile.am (LDFLAGS, LIBS, libtool, clibtool): ditto
24949         * tests/Makefile.am (CFLAGS, CPPFLAGS, LDFLAGS, LIBS): set
24950         (LDFLAGS, LIBS, TESTS_ENVIRONMENT): pass them down
24951
24952 1999-04-02  Erez Zadok  <ezk@cs.columbia.edu>
24953
24954         * doc/PLATFORMS: 1.2f ok on various versions of hpux cc
24955
24956 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
24957
24958         * ltconfig.in (link_all_deplibs): set to unknown by default
24959         * ltmain.in: test != no, not = yes
24960         * doc/libtool.texi: document unknown
24961
24962 1999-04-01 Thomas Tanner  <tanner@gmx.de>
24963
24964         * doc/libtool.texi: documented deplibs.test
24965
24966         * demo/Makefile.am: moved testsuite specific declarations to the end,
24967           the deplibs check is now optional
24968         * libltdl/configure.in: read libtool --config only once,
24969           merged AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE from libtool.m4
24970         * libtool.m4: AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE were not
24971           used, lt_dlopen and silent may be empty, AC_SYS_LIBTOOL_CYGWIN
24972           no longer necessary
24973         * ltconfig.in: NM is already checked in libtool.m4,
24974         * ltmain.in: always link all static dependency_libs
24975         * tests/Makefile.am: added deplibs.test
24976         * tests/demo-exec.test, demo-inst.test: removed hell0
24977         * tests/deplibs.test: new test to test the deplibs_check_method
24978
24979 1999-03-31 Thomas Tanner  <tanner@gmx.de>
24980
24981         * ltmain.in: always link a library before its dependency libs
24982         * mdemo/Makefile.am: test -export-symbols-regex
24983
24984 1999-03-30 Thomas Tanner  <tanner@gmx.de>
24985
24986         * doc/libtool.texi: fixed a typo
24987         * libtoolize.in: add the libtool scripts to libltdl.tar.gz
24988         * libtool.m4: don't AC_SUBST(USE_SYMBOL_UNDERSCORE),
24989           AC_CHECK_LIBM sets LIBM, AC_LIBLTDL_INSTALLABLE doesn't work
24990           when libltdl is already installed
24991         * *demo/Makefile.am: use LIBM
24992         * *demo/configure.in: AC_SUBST LIBM
24993         * libltdl/configure.in: use ac_cv_sys_symbol_underscore instead of
24994           USE_SYMBOL_UNDERSCORE
24995         * ltconfig.in: added link_all_deplibs variable
24996         * doc/libtool.texi: document it
24997         * ltmain.in: always search for libname.la - don't eval libname_spec,
24998           when linking libraries against static ones just print a warning
24999           and add them to dependency_libs, add -lc before deplibs,
25000           always link all dependencies of a static library or if
25001           link_all_deplibs is yes, hardcode library paths if
25002           hardcode_into_libs is no, don't link against dependency_libs
25003           that already are deplibs
25004
25005 1999-03-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
25006
25007         * ltconfig.in (aix4*, collect2name): make sure collect2 exists
25008         before running string on it, to avoid errors on old gccs
25009         Reported by Erez Zadok <ezk@cs.columbia.edu>
25010
25011         * ltconfig.in (aix4*, hardcode_libdir_flag_spec): unless we're
25012         using gcc with old collect2, use -b libpath to hardcode the
25013         library search path
25014
25015         * ltmain.in, ltconfig.in: reverted most of the quoting changes
25016         from 1999-03-25; Gary's delay_variable_subst patch from 1999-02-19
25017         obviates it.  Keep only quoting of $PATH, for uniformity with
25018         other systems that already did it
25019
25020 1999-03-29  Gary V. Vaughan  <gary@gnu.org>
25021
25022         * libltdl/ltdl.c (lt_dladdsearchdir): Forgot to mallocate the
25023         extra byte of memory for the teminating NUL, and forgot to
25024         strcpy the original path in to the new memory before appending
25025         the new path compononent.
25026
25027 1999-03-27 Thomas Tanner  <tanner@gmx.de>
25028
25029         * NEWS: updated
25030         * README: updated (BeOS support, no longer shared libraries
25031           support for AmigaOS), cleanups, we have now two mailing lists
25032         * REAMDE-alpha: autogen -> bootstrap, we have now two mailing lists
25033         * THANKS: added Xavier Pianet
25034         * doc/PLATFORMS: BeOS works
25035         * doc/libtool.texi: we have now to two mailing lists,
25036           updated -dlopen self documentation, documented libltdl's license,
25037           put each author in a separate line,
25038           inter-library dependencies on uninstalled libtool libraries are
25039           now supported, cleanups and minor corrections
25040         * libltdl/COPYING.LIB: new file
25041         * libltdl/ltdl.[ch]: added special exception to the LGPL license
25042         * libtool.spec: removed, it was outdated
25043         * Makefile.am: removed libtool.spec
25044         * ltmain.in: use TMPDIR when possible, create a subdirectory
25045           in the temporary directory, added -export-symbols-regex to the help,
25046
25047 1999-03-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
25048
25049         * demo/Makefile.am: create a static library, link two libtool
25050         archives with it, then link the program hell0 with both
25051         * demo/hell1.c, demo/hell2.c: dummy files used to create the
25052         libtool archives without introducing symbol conflicts
25053         * tests/demo-exec.test, tests/demo-inst.test: run the new program
25054         * ltconfig.in (irix5*, irix6*, deplibs_check_method): pass_all
25055
25056         * ltmain.in ($PATH): instead of modifying the PATH, better prevent
25057         its expansion the first time *_cmds variables are eval'ed.  Modify
25058         $show within loops that eval them so as to expand variables
25059         * ltconfig.in (*_cmds): quote $ so that they're not expanded by
25060         the first eval
25061
25062 1999-03-25  Gary V. Vaughan  <gary@gnu.org>
25063
25064         * ltmain.in ($PATH):  Expand any tildes in the users path to the
25065         contents of $HOME to avoid problems with *_cmds splitting and
25066         evaluation.
25067
25068 1999-03-24 Thomas Tanner  <tanner@gmx.de>
25069
25070         * TODO: support -dlopen for libraries
25071         * doc/PLATFORMS: Erez Zadok reported that libtool works on bsdi 4.0.1
25072         * doc/libtool.texi (libltdl): libltdl supports BeOS
25073         * libltdl/ltdl.c: shlib_ext was declared even if LTDL_SHLIB_EXT
25074           didn't exist, partially reverted my previous patch: BeOS will
25075           automatically search in ADDON_PATH
25076         * ltmain.in: don't allow relative run-paths, fixed a typo in a warning,
25077           ignore -dlopen self for libraries and objects,
25078           only accept -L paths that exist, minor cleanups,
25079           bugfix: add -lc for normal libraries, not convenicence libraries
25080           removed offensive warnings/comments
25081
25082 1999-03-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
25083
25084         * ltconfig.in (ld_shlibs, amigaos*): disable shared libraries
25085
25086 1999-03-23  Gary V. Vaughan  <gary@gnu.org>
25087
25088         * libltdl/configure.in: the sed expression for finding the shared
25089         library extension used to think the . in [.] for the cygwin
25090         shared_library_names_spec was the start of the extension!!  We now
25091         remove anything in square brackets (assuming that the square
25092         brackets delimit a sed or expr expression which is not part of the
25093         extension) before looking for the extension.
25094
25095         * TODO (cygwin):  food for thought re: mutually dependant dlls.
25096
25097 1999-03-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
25098
25099         * tests/build-relink.test: if we relink and have hardcode_direct,
25100         removing an uninstalled library breaks an uninstalled program
25101
25102         * doc/libtool.texi: documented convenience libraries
25103         * TODO: removed entry about it
25104
25105         * tests/*-unst.test: if directory is not configured, skip it
25106         * tests/demo.test, tests/mdemo.test: unused, removed
25107         * tests/depdemo.test: ditto
25108
25109 1999-03-20 Thomas Tanner  <tanner@gmx.de>
25110
25111         * doc/libtool.texi (link mode): documentation for -module updated
25112         * ltconfig.in: fast-install mode doesn't work for
25113           hardcode_into_libs=yes
25114         * ltmain.in: bugfix: "-dlopen self [-all]-static" wouldn't use
25115           dlopen_self_static, automatically enable -export-dynamic when
25116           using "-dlopen self", always make run-paths absolute,
25117           ignore -lc only on platforms that don't have such a library,
25118           cleanups in the ILD code, find even installed libtool libraries
25119           that were moved, before generating the DLL-import library we need
25120           to set libname, improved hardcoding of shlibpath for libraries,
25121           don't generate an installable pseudo-library for convenience
25122           libraries, bugfix: export_symbols would be removed immediately
25123           before it is used
25124
25125 1999-03-19 Thomas Tanner  <tanner@gmx.de>
25126
25127         * use the same header in all configure.in's and Makefile.am's
25128         * NEWS: improved support for BeOS and Cygwin
25129         * TODO: ILD branch was merged, all internal variables and macros
25130           are now documented
25131         * demo/Makefile.am: use $(LIBS) instead of -lm
25132         * doc/libtool.texi: documented new variable hardcode_into_libs
25133           and thread_safe_flag_spec, renamed all AM_ENABLE/DISABLE_* macros
25134           to AC_*, documented AC_DISABLE_FAST_INSTALL and AC_LIBTOOL_DLOPEN
25135         * libltdl/ltdl.c: added two new error messages (cannot_open_error,
25136           cannot_close_error), use them where approriate,
25137           BeOS support (thanks to Xavier Pianet), on BeOS search modules
25138           additionally in ADDON_PATH
25139         * libtool.m4: rewrote AC_CHECK_LIBM: BeOS and Cygwin don't have
25140           libm and *-ncr-sysv4.3* requires libmw
25141         * ltconfig.in: don't check for LoadLibrary, hardcode dlopen
25142           configuration for BeOS and Cygwin
25143         * ltmain.in: fix sourcing of .la files on Solaris
25144           (patch by Raja R Harinath)
25145
25146 1999-03-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
25147
25148         * ltconfig.in (sunos4*, with_gnu_ld, hardcode_minus_L): remove, we
25149         have -rpath
25150         (aix4*, without_gnu_ld, hardcode_shlibpath_var): unsupported is
25151         default
25152         (hpux9*, hpux10*, hpux11*, archive_cmds): drop +s, unneeded here
25153         (hpux9*, hpux10*, hpux11*, hardcode_libdir_flag_spec): add +s
25154         before +b
25155         (hpux9*, hpux10*, hpux11*, shlibpath_overrides_runpath): since +s
25156         appears before +b, set it to yes
25157         (hardcode_shlibpath_var, hardcode_action): do not use
25158         shlibpath_var to specify the compile-time search path; it loses,
25159         and we may end up linking with pre-installed older versions of
25160         libraries instead of yet-to-be-installed ones
25161         (*, hardcode_direct, hardcode_minus_L): remove entries that set
25162         them to no, that is default
25163
25164         * demo/Makefile.am (hc-direct, hc-libpath, hc-minusL): link with
25165         $$hardcode_libdir_flag_spec, if available, with libdir=$(libdir),
25166         to make sure the hardcode_* variables will produce the expected
25167         results even in the presence of a hardcoding flag; depend on
25168         libhello.la having been installed already
25169         (hc-libflag): link with the installed library, but try to
25170         hard-code the uninstalled one
25171         * doc/libtool.texi: document the changes
25172
25173         * tests/*.test: when a test fails, skip tests that depend on it.
25174         If a certain configuration is not supported, skip all its tests.
25175
25176         * doc/libtool.texi: reorder tests to reflect execution order
25177
25178         * tests/noinst-link.test: new test
25179         * tests/Makefile.am (TESTS): added noinst-link.test
25180         * doc/libtool.texi: document it
25181
25182 1999-03-19  Gary V. Vaughan  <gary@gnu.org>
25183
25184         * ltmain.in (dependency_libs): There is no reason to infer that
25185         the pseudo library is invalid if dependency_libs='' at
25186         install-time, or else libltdl/libltdl.la is invalid!!
25187
25188 1999-03-18  Thomas Tanner  <tanner@gmx.de>
25189
25190         * merged my inter-library dependencies code from the ILD branch:
25191         * NEWS: inter-library dependencies are now supported
25192         * configure.in: add the depdemo subdirectory
25193         * depdemo/*: new demo to demonstrate inter-library dependencies
25194         * tests/depdemo*: new tests for depdemo
25195         * ltconfig.in: added hardcode_into_libs (whether library paths
25196           should be hardcoded into the libraries),
25197           it currently defaults to 'no'
25198         * ltmain.in: new internal 'relink' mode to relink libraries
25199           on platforms with hardcode_into_libs=yes, save command line
25200           arguments in libtool_args, accept relative -L directories,
25201           ignore -lm on BeOS and Cygwin, always ignore -lc,
25202           handle -l, -L and .la arguments later, always make the library
25203           installation directory (-rpath) absolute, in relink mode don't
25204           delete the not-relinked library and exit immediately after relinking,
25205           try to find already-installed libtool libraries that were specified
25206           using -l, support hardcoding of library paths into libraries too,
25207           export shlibpath before linking libraries, and a lot of other
25208           big changes that I don't want to describe here... please read
25209           the source.
25210
25211         * merged Gary's Win32 code from the ILD branch:
25212         * NEWS: Win32 DLLs are now supported
25213         * TODO: removed .a library namespace clash for win32.  It is
25214           now resolved.
25215         * ltconfig.in (cygwin, library_names_spec):  removed $libname.a.
25216           Creating a dll with libtool no longer creates an import library.
25217         * ltconfig.in (extract_expsyms_cmds): Create $objdir if it does
25218           not exist -- i.e. we need to generate import an import library
25219           in a directory which has no libs of its own.
25220         * doc/libtool.texi (old_archive_from_expsyms_cmds,
25221           extract_expsyms_cmds): documented these new variables.
25222         * ltconfig.in (extract_expsyms_cmds): New variable.  Commands to
25223           extract the exported symbol list from a dll.
25224           (old_archive_from_expsyms_cmds): New variable.  Commands to build
25225           an old archive from the extracted expsyms list.
25226         * ltmain.in: run the cmds in extract_expsyms_cmds and
25227           old_archive_from_expsyms_cmds as necessary.
25228         * ltconfig.in (cygwin, old_archive_from_new_cmds): no longer
25229           required.
25230         * ltconfig.in (cygwin, shlibpath_overrides_runpath): I'm not even
25231           sure whether win32 honours the runpath at all when searching for
25232           a dll to load!  Anyway, when set to yes this prevents a gratuitous
25233           warning.
25234         * ltmain.in (deplib): The cygwin environment doesn't actually have
25235           -lm, and although the linker fakes having one, specifiying it to
25236           libtool will break ILD, so we ignore it when generating
25237           dependencies.
25238
25239 1999-03-17  Gary V. Vaughan  <gary@gnu.org>
25240
25241         * doc/PLATFORMS: Thanks to Alexandres changes below, both my
25242         hp boxes pass the entire test suite.
25243
25244 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
25245
25246         * ltconfig.in (hpux*, hardcode_minus_L): should be no, we have +b
25247         (hpux*, hardcode_libdir_separator): set to colon
25248
25249 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
25250
25251         * doc/PLATFORMS: egcs is gcc; updates from Erez Zadok
25252
25253 1999-03-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
25254
25255         * ltmain.in (deplibs, beos*): don't append -lc
25256         Reported by Xavier Pianet <xavier@xingo.com>
25257
25258         * tests/build-relink.test (hardcode_action): when set to relink,
25259         skip the test with lt-hell
25260
25261         * Makefile.am (EXTRA_DIST): add mkstamp
25262         Reported by Xavier Pianet <xavier@xingo.com>
25263
25264         * Makefile.am (EXTRA_DIST): add ChangeLog.0
25265
25266 1999-03-16  Thomas Tanner  <tanner@gmx.de>
25267
25268         * doc/libtool.texi: some minor corrections to the "-dlopen self"
25269           documentation
25270         * tests/Makefile.am: sorted by name, added assign.test
25271         * ChangeLog: started new file
25272
25273         * ltconfig.in: some cosmetical changes
25274         * ltmain.in: ditto
25275
25276 1999-03-15  Alexandre Oliva  <oliva@dcc.unicamp.br>
25277
25278         * configure.in, libtool.spec, NEWS: bump to 1.3a
25279         * Branched for release 1.3 (branch-1-3)
25280         * configure.in, libtool.spec, NEWS: bump to 1.2g
25281
25282         * configure.in, libtool.spec: bump to 1.2f
25283         * doc/PLATFORMS: ditto
25284         * NEWS: libtool 1.2f released
25285
25286         * ltmain.in: silence ``unbug'' :-) detected by sh.test
25287
25288 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25289
25290         * TODO: we now use full pathnames for `file'
25291
25292 1999-03-14  Thomas Tanner  <tanner@gmx.de>
25293
25294         * TODO: libltdl is now documented
25295         * doc/libltdl.texi (linking with installed libtool libraries):
25296           fixed typo
25297         * doc/libltdl.texi (libltdl): added documentation for building
25298           libtool modules and examples how to embed libltdl
25299         * ltmain.in: don't ignore user-specified run-paths (fixed it
25300           at the right place)
25301
25302 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25303
25304         * ltmain.in (deplibs_check_method=none): discard -L and -R
25305         switches when testing whether deplibs contains some library
25306
25307 1999-03-14  Erez Zadok  <ezk@cs.columbia.edu>
25308
25309         * config.sub: recognize hppa2.0w, yet to be installed at GNU
25310
25311         * config.guess: minor update for FreeBSD-elf, yet to be installed
25312         at GNU
25313
25314 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25315
25316         * ltconfig.in (bsdi4*, sys_lib_search_path_spec,
25317         sys_lib_dlsearch_path_spec): fix thinko in variable names; add
25318         standard directories
25319
25320         * ltmain.in (exclude_expsyms): exclude symbols before sorting,
25321         otherwise only the sorted list will have them excluded
25322
25323         * ltconfig.in (file_magic_cmd, file_magic_test_file, freebsd-elf*,
25324         bsdi4*): use full pathnames when possible
25325
25326         * Makefile.am (all-recursive): depend on ACINCLUDE_M4_LIST
25327         (all-local, check-local): remove, unused
25328
25329         * doc/PLATFORMS: updated platforms tested on 1.2f-pre; clean up;
25330         reorder; untabify
25331
25332         * config.guess, config.sub: updated from GNU common
25333
25334         * doc/libtool.texi: notes on thread-safety problems of
25335         libltdl/dlopen on GNU/Linux and FreeBSD
25336
25337         * ltconfig.in (aix3*, aix4*): GNU ld on AIX is very broken: it
25338         cannot create working shared libraries.  Print a warning
25339         suggesting the user not to use it and disable shared libraries.
25340
25341 1999-03-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
25342
25343         * ltconfig.in (global_symbol_to_cdecl): was reset before trying
25344         `symprfx=_', rendering the test with `_' useless
25345
25346         * doc/libtool.texi (AM_PROG_LIBTOOL): eliminate overfull boxes
25347
25348         * doc/libtool.texi: complete dlopening/libltdl documentation
25349
25350         * ltconfig.in (osf3*, osf4*, deplibs_check_method): pass_all does
25351         not really work; use file_magic instead.
25352         (osf3*, osf4*): customize sys_lib_[dl]search_path_spec
25353
25354         * ltconfig.in (file_magic_test_file): new variable; if set, it
25355         will be used as an argument for $file_magic_cmd to test whether
25356         the regex in deplibs_check_method matches its output
25357         (file_magic_cmd): use full pathnames whenever possible
25358
25359         * ltconfig.in (sys_lib_dlsearch_path_spec): new variable, that
25360         lists the system *run-time* search path.  Listed directories are
25361         not implicitly hard-coded into executables.
25362         * ltmain.in: use it, but *never* discard -R flags
25363         * doc/libtool.texi: document it
25364         * NEWS: ditto
25365         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
25366
25367         * tests/sh.test: look for `$Xsed' without `$echo "X...'
25368         * ltconfig.in, ltmain.in: fixed a few such occurrences
25369
25370         * ltmain.in (-static, -all-static): revert March 11's patch, I was
25371         barking up the wrong tree
25372
25373 1999-03-12  Thomas Tanner  <tanner@gmx.de>
25374
25375         * libltdl/ltdl.c: removed FILENAME_MAX since LTDL_FILENAME_MAX
25376           is sufficient and doesn't break HP/UX
25377
25378 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
25379
25380         * ltconfig.in: (global_symbol_pipe) extract symbol tag from the
25381         output of NM too
25382         (global_symbol_to_cdecl): new variable; convert the output of
25383         global_symbol_pipe to valid C declarations; on HP/UX, convert
25384         text symbols to function declarations
25385         * libtool.m4: similar modifications
25386         * doc/libtool.texi: document new variable
25387         * ltmain.in: use global_symbol_to_cdecl to generate lt_dlpreopened
25388         symbols; avoid extracting symbol lists from dlpreopened files
25389         twice; do not filter symbols from dlpreopened libraries
25390         * TODO: fixed HP/UX dlpreopening problem
25391
25392         * ltmain.in (-static, -all-static): set dlopen_self to
25393         $dlopen_self_static regardless of link_static_flag or pic_flag
25394
25395         * ltmain.in: FreeBSD bug that needs symbol table compiled with
25396         -fPIC is fixed in release 3.1; use it only for 2.* and 3.0
25397
25398 1999-03-11  Thomas Tanner  <tanner@gmx.de>
25399
25400         * ltmain.in: when building a library it doesn't make
25401           sense to remove a relinked program ("lt-" prefix)
25402
25403 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
25404
25405         * mdemo/main.c (main, test_dl, test_dlself): propagate error
25406         conditions better, to avoid false positives
25407
25408         * */configure.in: AC_SUBST(LIBTOOL_DEPS)
25409         * */Makefile.am $(OBJECTS): depend on libtool
25410         (libtool): rebuild automatically
25411
25412         * ltconfig.in: set dlopen_* variables to unknown when appropriate
25413         * ltmain.in: only emit warning about lack of AC_LIBTOOL_DLOPEN if
25414         *all* dlopen_* variables are set to unknown
25415
25416 1999-03-11  Thomas Tanner  <tanner@gmx.de>
25417
25418         * ltmain.in: delete the old output files (incl. the relinked binary)
25419           before linking.
25420
25421         * ltconfig.in: replaced `configure' with $progname and all
25422           line numbers with @LINENO@
25423
25424 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
25425
25426         * libltdl/ltdl.c (strdup): cannot return str when it's NULL
25427         because of const correctness
25428
25429 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
25430
25431         * libltdl/ltdl.c (strdup): always use our own, because the
25432         standard strdup won't use lt_dlmalloc
25433
25434         * ltconfig.in (dlfcn.h): function definition may cause warnings;
25435         define variable instead
25436
25437         * ltmain.in: properly create an export file for a program,
25438         avoiding error messages about not finding it
25439
25440         * TODO: need to document AC_LIBLTDL_*; static self dlopening
25441         problem fixed
25442
25443         * libtool.m4 (AC_LIBTOOL_DLOPEN): just set lt_dlopen=yes
25444         (AC_LIBTOOL_SETUP): if lt_dlopen=yes, add --enable-dlopen to
25445         libtool_flags; drop --enable-dlopen-self
25446         * ltconfig.in: perform all the dirty work of testing for dlopening
25447         support, because we need platform-dependent equivalents for
25448         -export-dynamic, for self dlopening, and -static, for static self
25449         dlopening
25450         (dlopen_self_static): new configuration variable that is set to
25451         yes only if static programs can dlopen themselves
25452         * ltmain.in (-static, -all-static): dlopen_self=dlopen_self_static
25453
25454         * libltdl/configure.in (libltdl_cv_need_uscore): do not assume
25455         dlfcn.h and LTDL_LAZY exist; use LTDL_GLOBAL and LTDL_LAZY_OR_NOW.
25456         This test is likely to fail if self-dlopening does not work,
25457         especially because we do not link the program with
25458         -export-dynamic.  Let's just hope that platforms whose symbol
25459         names start with underscores will also accept underscores for
25460         dlopen.  We should probably use libtool to compile and link this
25461         test, so that we can use -export-dynamic.
25462
25463         * mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h
25464
25465         * configure.in: fix AC_OUTPUT_COMMANDS for ltconfig and ltmain.sh
25466         so that they work if srcdir is relative too
25467
25468         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
25469         avoid introducing multiple --enable options when re-running
25470         config.status
25471         * libltdl/configure.in: if enable_ltdl_* is not set, assume no
25472         * configure.in: if enable_ltdl_install is not set, enable it
25473
25474         * libltdl/configure.in: only assume implicit installation if
25475         libltdl was libtoolized.  If not, print a warning message
25476         suggesting the use of --enable-ltdl-install or of one of the
25477         AC_LIBLTDL_* macros.
25478
25479         * libtool.m4 (AC_LIBTOOL_SETUP): new macro, that does all the
25480         configure-work that AC_PROG_LIBTOOL used to do; add
25481         --cache-file=$cache_file to libtool_flags
25482         (AC_PROG_LIBTOOL): call AC_LIBTOOL_SETUP, save the cache, run
25483         ltconfig and reload the cache
25484         * configure.in: run AC_LIBTOOL_SETUP, then set LIBTOOL_FLAGS to
25485         libtool_flags
25486         * ltconfig.in: support --cache-file switch.  If it is used, load
25487         the cache in the beginning and save it just before terminating
25488
25489         * tests/Makefile.am (TESTS): run demo-nofast before demo-shared
25490
25491         * configure.in: create ltconfig and ltmain.sh at the end of
25492         config.status, if they do not exist.  This fixes the bootstrap
25493         problem reported by Erez Zadok <ezk@cs.columbia.edu>
25494
25495 1999-03-10  Thomas Tanner  <tanner@gmx.de>
25496
25497         * NEWS: sorted by importance
25498         * Makefile.am: set LIBTOOL_FLAGS when generating libtool
25499         * configure.in: check for dlopen support and set LIBTOOL_FLAGS
25500           accordingly
25501
25502         * configure.in: fix spacing for --disable-ltdl-install,
25503           always configure libltdl, add libltdl/acinclude.m4 to
25504           ACINCLUDE_M4_LIST, disable installation of libltdl if necessary
25505         * libltdl/Makefile.am: set version info for libltdl.la
25506         * libltdl/configure.in: don't check whether
25507           enable_ltdl_convenience/install was set so that libltdl
25508           can be used as independent package (libltdl.tar.gz) without
25509           the need to use --enable-ltdl*
25510         * libltdl/ltdl.c: minor cleanups, allocate the line cache
25511           dynamically (lt_dlopen)
25512
25513 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
25514
25515         * libltdl/ltdl.c (lt_dlopen): some preprocessors choke if the `#'
25516         of `#define' is not in column 1; let's go back to fortran! :-)
25517         Add #undefs too, to avoid potential warnings or errors.
25518
25519 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
25520
25521         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
25522         renamed convenience libltdl, dropped toinst hack for installable
25523         * libltdl/Makefile.am: ditto
25524         * libltdl/configure.in: ditto; abort if none of the macros is used
25525
25526         * ltmain.in: $output_objdir/$objdir/ -> $output_objdir/lt-
25527
25528 1999-03-09  Thomas Tanner  <tanner@gmx.de>
25529
25530         * libltdl/ltdl.c (lt_dlopen): don't hardcode the length of the
25531           constant strings
25532
25533 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
25534
25535         * Makefile.am (install-data-hook): install libltdl as a directory,
25536         not as a tar-file, so that we do not modify the build tree at make
25537         install time
25538         * libtoolize.in (ltdl, ltdl_tar): update
25539
25540         * configure.in, Makefile.am, NEWS: install libltdl by default
25541
25542         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
25543         new macros
25544         * NEWS: ditto
25545         * libltdl/configure.in: if none of the new macros or configure
25546         arguments are used, warn and build convenience library only
25547         * libltdl/Makefile.am: conditionally build convenience libltdl.la
25548         * mdemo/configure.in: use AC_LIBLTDL_CONVENIENCE
25549         * mdemo/Makefile.am: refer to @LIBLTDL@
25550
25551 1999-03-09  Gary V. Vaughan <gary@gnu.org>
25552
25553         * NEWS: updated.
25554
25555 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
25556
25557         * ltmain.in: extract symbols from program objects to nlist first,
25558         then translate them to the export_symbols format.  Now it works,
25559         but it appears to be needlessly extracting the symbol list from
25560         dlpreopened libraries twice
25561
25562         * ltmain.in: temporarily disable dlopen_self when linking with
25563         -static or -all-static, until we figure out how to test whether it
25564         works at configure time
25565
25566         * TODO: remember to fix this later
25567
25568         * tests/build-relink.test: when hell is expected to fail, run it
25569         within a subshell and redirect stderr to stdout, so that dynamic
25570         linker errors are only printed in verbose mode
25571
25572         * ltmain.in (hardcode_libdir_separator, compile_rpath,
25573         finalize_rpath): only substitute hardcode_libdir_flag_spec if
25574         hardcode_libdirs is non-empty
25575
25576         * libtool.m4 (AC_LIBTOOL_DLOPEN): do not depend on the existence
25577         of dlfcn.h nor on the definition of RTLD_LAZY
25578
25579         * tests/build-relink.test: hellT was renamed to lt-hell
25580
25581         * libltdl/Makefile.am (@TOINST@/libltdl.la): do not hide the
25582         command that creates the TOINST directory; remove `-o $@' from the
25583         LINK command, $(LINK) already contains it.
25584
25585 1999-03-08  Thomas Tanner  <tanner@gmx.de>
25586
25587         * doc/libtool.texi (tests): documented demo-nofast.test and
25588           renamed cdemo* to demo*
25589
25590 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
25591
25592         * libltdl/Makefile.am, libltdl/configure.in, mdemo/Makefile.am:
25593         libltdl must not be renamed; if there's a problem with the install
25594         option, let's fix it, not just work around it by breaking code of
25595         users of the convenience library
25596
25597         * tests/build-relink.test: link broken libhello.la with at least
25598         one libtool object
25599
25600 1999-03-08  Thomas Tanner  <tanner@gmx.de>
25601
25602         * TODO: updated (libltdl build problem fixed)
25603         * doc/libtool.texi (libltdl interface): removed the line which
25604           promised that lt_dlopen will return NULL if it can't resolve all
25605           symbols
25606         * libltdl/Makefile.am, libltdl/configure.in: fixed build problem:
25607           renamed the convenience library to libltdlc.la and the
25608           installed version to libltdl.la
25609         * ltmain.in (wrapper script): replaced the "T" suffix of the program
25610           file name with a "lt-" prefix
25611         * mdemo/Makefile.am: use libltdlc.la
25612         * tests/Makefile.am, tests/demo-nofast.test: added demo to
25613           test --enable-fast-install=no
25614
25615 1999-03-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
25616
25617         * tests/Makefile.am (TESTS): run hardcode before build-relink
25618         trashes libhello.la
25619         * tests/hardcode.test (need_prefix): set to yes so that _inst is
25620         not removed
25621
25622         * ltmain.in (compile_command): append finalize search path to
25623         compile search path
25624
25625         * tests/build-relink.test: new; check shlibpath_overrides_runpath
25626         * tests/Makefile.am (TESTS): add build-relink.test; remove
25627         hardcode.test duplicates
25628         * doc/libtool.texi: document it
25629
25630         * ltmain.in (relink_command): do not prepend cd `pwd` to it, the
25631         scripts already enters the correct directory, and expanding the
25632         pathname would prevent the build tree from moving
25633
25634         * ltconfig.in (enable_fast_install): force it to no only if we
25635         need relink; in the other cases, set it to needless
25636         * ltmain.in (fast_install): if needless, set relink_command empty
25637         * doc/libtool.texi (fast_install, shlibpath_overrides_runpath):
25638         document the new behavior
25639
25640         * ltconfig.in (enable_fast_install): test whether it can be forced
25641         off after shlibpath_overrides_runpath and enable_shared are set
25642
25643 1999-03-07  Thomas Tanner  <tanner@gmx.de>
25644
25645         * TODO: updated
25646         * NEWS: updated
25647
25648         * TODO: scheduled some items for next release/future
25649         * demo/configure.in: use AC_LIBTOOL_DLOPEN
25650         * libtool.m4: added AC_ENABLE/DISABLE_FAST_INSTALL macro
25651         * ltconfig.in: added --disable-fast-install flag
25652         * ltmain.in: partially reverted Alexandre's patch and implemented
25653           on-demand linking in such a way that the old developer-friendly
25654           linking style is optional,
25655           don't hardcode library paths that are in the system search path,
25656           fixed a typo in lib_search_path,
25657           implemented -export-symbols-regex for programs
25658
25659 1999-03-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
25660
25661         * libltdl/ltdl.c (LTDL_LAZY_OR_NOW): renamed from LTDL_NOW; prefer
25662         LAZY loading because it's much faster and NOW is apparently
25663         partially broken on FreeBSD
25664         Reported by Archie Cobbs <archie@whistle.com>
25665
25666         * ltconfig.in (archive_expsym_cmds, solaris, without_gnu_ld):
25667         $lib.exp already starts with $objdir/
25668         Reported by Godmar Back <gback@cs.utah.edu>
25669
25670         * ltmain.in (freebsd): compile symbol table file with pic_flag
25671         only on FreeBSD and when not static linking; it's been causing
25672         trouble on platforms such as OpenBSD.
25673
25674 1999-02-26  Gary V. Vaughan  <gary@gnu.org>
25675
25676         * libtool.m4 (cygwin): s/\\(mingw\\|cygwin\\)32/\\1/g.  Must've
25677         missed this file when I changed to cygnus' new sanction name.
25678
25679         * ltconfig.in (sub_uncdrive): removed.  This won't work with
25680         the next version of cygwin.
25681         (sub_uncdir): removed. We use <drive>:/path/to/executable now.
25682         * libtool.m4 (AC_PROG_LD): removed sub_uncdrive and sub_uncdir.
25683
25684 1999-02-25  Thomas Tanner  <tanner@gmx.de>
25685
25686         * TODO: added items for next alpha release, ILD etc.
25687         * libltdl/ltdl.c: removed unnecessary check from presym_sym,
25688           fixed bug in lt_dlclose, allow lt_dlopenext(NULL),
25689           set deplibs for lt_dlopen(NULL)
25690
25691 1999-02-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
25692
25693         * ltmain.in (file_magic_regex): sed `10q' is faster than `11,$d'
25694
25695 1999-02-22  Thomas Tanner  <tanner@gmx.de>
25696
25697         * ltconfig.in (dlopen, dlopen_self): default is unknown
25698         * ltmain.in: fixed -dlopen self, print a warning
25699           if -dlopen is used without AC_LIBTOOL_DLOPEN
25700         * mdemo/Makefile.am: use -dlopen self
25701
25702 1999-02-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
25703
25704         * ltmain.in: added missing mkdir $progdir for on-demand executable
25705
25706         * ltmain.in: create on-demand executable as $progdir/$$-$program,
25707         and rename it to $progdir/$program only when it's finished, to
25708         avoid race conditions.  We can still get the program linked
25709         multiple times, if multiple instances are started simultaneously
25710         and the program does not exist, but they are very unlikely to
25711         interfere with each other.  There's still a possibility that one
25712         process removes the $program another has just created, and doesn't
25713         replace it before the other tries to run it, in a system whose
25714         `mv' is not atomic, so it will $rm then $mv, but so what? :-)
25715         Locking files have been avoided to prevent dead-locks in case they
25716         are left over after a reboot or crash.
25717
25718         * TODO: removed ILD, soon to be merged, and added convenience
25719         libraries docs
25720
25721         * ltconfig.in (irix5*, irix6*, shlibpath_overides_runpath): yes
25722
25723         * ltmain.in: remove on-demand executable in the proper place, and
25724         just warn if it can't be removed; add wrapper code to test whether
25725         the install-executable is newer than the build-executable, to
25726         relink it when it appears to be out-of-date
25727
25728         * libltdl/configure.in: check for dld.h
25729         * libltdl/ltdl.c: include dld.h
25730         (dld_open) it's spelled memory_error, not no_memory_error
25731         Reported by Stefan Burstroem <f94sbu@efd.lth.se>
25732
25733         * ltmain.in: fix typos in my last change (s/ocmpile/compile/)
25734
25735 1999-02-21  Thomas Tanner  <tanner@gmx.de>
25736
25737         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
25738           when dlopening the executable
25739         * libtool.m4 (AC_LIBTOOL_DLOPEN): removed the redundant "yes: "
25740           prefix for lt_cv_dlopen, renamed lt_cv_dlopen_LIBS
25741           to lt_cv_dlopen_libs (more consistent)
25742         * ltmain.in: implemented -dl[pre]open self, necessary for
25743           lt_dlopen(NULL), generation of exported symbols was broken
25744
25745 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25746
25747         * ltmain.in: avoid duplication of -L switches, it sometimes breaks
25748         IRIX 5.2's linker
25749
25750         * ltconfig.in (freebsd*, finish_cmds): expand objformat here
25751         Reported by Vladimir Kushnir <kushn@mail.kar.net>
25752
25753 1999-02-20  Vladimir Kushnir <kushn@mail.kar.net>
25754
25755         * ltconfig.in (freebsd-elf*, need_version, need_lib_prefix): no
25756         (freebsd-elf*, library_names_spec): add $libname.so instead of
25757         $libname.so$versuffix; add $libname$release.so
25758
25759 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
25760
25761         * doc/libtool.texi: remove ticks from menu items; it breaks TeX
25762         Reported by Erez Zadok <ezk@cs.columbia.edu>
25763
25764         * ltmain.in: fixes for export-symbols dry-run
25765
25766         * ltconfig.in (shlibpath_overrides_runpath): new variable;
25767         determines whether LD_LIBRARY_PATH or equivalent can be used to
25768         override a hard-coded library search path; default to unknown
25769         (linux-gnu*): set it to no
25770         (solaris*, sunos4*): set it to yes
25771         * ltmain.in (build_libdirs_flags, build_libdirs, build_rpath): if
25772         shlibpath_overrides_runpath is not yes, arrange that wrapper
25773         scripts create, on demand, programs that use uninstalled libraries
25774
25775         * doc/libtool.texi: document it
25776
25777         * libtool.m4 (AC_LIBTOOL_DLOPEN): check for dlopen in libc before
25778         trying in dl.  Add the actual dlopening type to lt_cv_dlopen, and
25779         add any needed libraries to lt_cv_dlopen_LIBS.  Add test for
25780         MS-Windows' LoadLibrary.  Check whether a program can dlopen
25781         itself only if we really have dlopen(), not some equivalent
25782         function, but leave room for testing with other mechanisms.
25783         (AC_PROG_LIBTOOL): assume some form of dlopen, but not
25784         dlopen(NULL), is available if AC_LIBTOOL_DLOPEN is not used, for
25785         backward compatibility.
25786
25787 1999-02-20  Archie Cobbs  <archie@whistle.com>
25788
25789         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
25790         where appropriate, when dlopening a non-libtool library
25791
25792 1999-02-19  Gary V. Vaughan  <gary@gnu.org>
25793
25794         * ltconfig.in (export_symbols_cmds): renamed from
25795         export_symbols_cmd.
25796         (cygwin, mingw): Be sure to compile the ltdll.c object before
25797         extracting the exported symbol list.  Extract only the names
25798         of the exported symbols from the def file [otherwise we might
25799         run into trouble with -export-symbols-regex].
25800         (archive_expsym_cmds): Regenerate the def file from the symbol
25801         export list.
25802         (delay_variable_subst): New sed expression to allow us to delay
25803         evaluation of $foo in a double_quote_subst evaluated variable by
25804         using \$.
25805         * ltmain.in (export_symbols_cmds): evaluate each ~ delimitted cmd
25806         separately.
25807         * doc/libtool.texi (libtool script contents): new paragraph to
25808         explain the difference between _cmd and _cmds suffixes for
25809         variable names.
25810         (export_symbols_cmds): renamed from export_symbols_cmd.
25811
25812 1999-02-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
25813
25814         * ltconfig.in (ld_shlibs): move -soname and similar flags to the
25815         end of archive_cmds and archive_expsym_cmds, so as to prevent
25816         gcc's collect2 from inserting an object file between -soname and
25817         the library name
25818
25819         * ltconfig.in (openbsd*, netbsd*, library_names_spec): append
25820         alternate name without ${release}, otherwise build fails when
25821         -release is used
25822
25823 1999-02-18  Gary V. Vaughan  <gary@gnu.org>
25824
25825         * ltconfig.in (archive{,_sym}_commands): Be careful not to
25826         re-export the dll entry points DllMain@12, _cygwin_dll_entry@12 and
25827         _cygwin_noncygwin_dll_entry@12 to avoid bugs with the wrong entry
25828         function being called with inter-dll dependencies.
25829         Reported by DJ Delorie <dj@delorie.com>
25830         * THANKS: Added DJ Delorie, since his code inspired the impgen.c
25831         program and because he has patiently answered all of the
25832         irritating dll and win32 questions I have fired at him.
25833
25834         * ltmain.in (version_type):  Oops.  Irix versioning implies that
25835         major version numbers are 1 based (not zero based).  Fixed.
25836
25837         * ltmain.in (version_type): Implement irix versioning.
25838         * ltconfig.in (irix{5,6}*): Use new irix shared object versioning.
25839         * TODO: remove irix versioning from TODO list.
25840
25841         * ltmain.in (impgen.c): Added a new embedded C file that can be
25842         used under win32 to extract a def file (symbol export list) from a
25843         dll that has none.  Code to use it might need to wait for the ILD
25844         merge before it will be useful...
25845
25846 1999-02-18  Thomas Tanner  <tanner@gmx.de>
25847
25848         * TODO: updated
25849         * autogen: only libltdl needs autoheader
25850         * doc/libtool.texi (link mode): documented -export-symbols-regex
25851           and updated -export-symbols
25852         * doc/libtool.texi (script contents): documented
25853           always_export_symbols, export_symbols_cmd, exclude_expsyms,
25854           include_expsyms, dlopen and dlopen_self
25855           more detailed description of need_lib_prefix
25856         * ltconfig.in: a "'" was missing in the default value
25857           of export_symbols_cmd
25858         * ltmain.in: implemented -export-symbols-regex
25859
25860 1999-02-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
25861
25862         * ltconfig.in: (freebsd2*, sunos4*, exclude_expsyms): exclude
25863         _GLOBAL_OFFSET_TABLE_
25864         * ltmain.in: implement exclude_expsyms with egrep
25865
25866         * libltdl/ltdl.c (lt_dlmalloc, lt_dlfree): SunOS' cc can't cope
25867         with argument lists, we __P even in the definition
25868
25869 1999-02-15  Thomas Tanner  <tanner@gmx.de>
25870
25871         * cdemo/Makefile.am: renamed *foo1 to *foo, removed $(MATH_LIB)
25872         * cdemo/foo1.c: renamed to foo.c
25873         * libltdl/ltdl.c: eliminated lt_dltype, in presym_open():
25874           search for @PROGRAM@ if filename == 0, in lt_dlopen():
25875           fixed bug for filename == 0
25876         * libltdl/ltdl.h: use __P macro for lt_dlmalloc/free
25877         * libtool.m4: new macro AC_LIBTOOL_DLOPEN: checks for dlopen
25878           and dlopen(NULL) support
25879         * ltconfig.in: added new variables dlopen and dlopen_self,
25880           --enable-dlopen[-self] flags for AC_LIBTOOL_DLOPEN
25881         * ltmain.in: use dlopen[_self], dlpreopen files if there's no
25882           dlopen support, build lt_preloaded_symbols only if
25883           -dl[pre]open was used, include program symbols if -export-dynamic
25884           was specified and there's no dlopen(NULL) support
25885         * mdemo/configure.in: use AC_LIBTOOL_DLOPEN
25886         * mdemo/main.c: demonstrate lt_dlopen(0)
25887
25888 1999-02-15  Gary V. Vaughan  <gary@gnu.org>
25889
25890         * demo/dlmain.c (_WIN32): The lt_symlist structure is now const,
25891         so my original horrible temporary win32 hack no longer worked.
25892         Here is a new horrible temporary hack to prevent helldl from SEGVing
25893         on win32.  I will fix this properly when we figure out how to do
25894         data exports from dlls.
25895
25896 1999-02-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
25897
25898         * libtool.m4 (AC_CHECK_LIBM): do not set MATHLIB or AC_SUBST it,
25899         this has a negative side-effect of causing automake to add MATHLIB
25900         to every single Makefile.  Let's use plain AC_CHECK_LIB, so that
25901         LIBS get set, until we find a better alternative
25902         * *demo/Makefile.am: remove $(MATHLIB)
25903
25904         * libltdl/configure.in: add a DESCRIPTION argument to AC_DEFINEs
25905         where appropriate, so as to get rid of acconfig.h
25906         * libltdl/acconfig.h: removed
25907
25908 1999-02-13  Thomas Tanner  <tanner@gmx.de>
25909
25910         * *demo/Makefile.am: use $(MATHLIB)
25911         * *demo/configure.in: use AC_CHECK_LIBM
25912         * doc/libtool.texi: renamed file_magic_command to file_magic_cmd,
25913           renamed archive_sym_cmds to archive_expsym_cmds
25914         * ltconfig.in: ditto
25915         * ltmain.in: ditto
25916         * libltdl/ltdl.c: use lt_dlmalloc/free
25917         * libltdl/ltdl.h: define lt_dlmalloc/free
25918         * libtool.m4: added AC_CHECK_LIBM macro
25919         * ltconfig.in: renamed archive_sym_cmds to archive_expsym_cmds,
25920           added always_export_symbols, export_symbols_cmd, exclude_expsyms,
25921           include_expsyms, removed archive_cmds for cygwin/mingw and AIX,
25922           on Solaris store the exported symbols list in objdir
25923         * ltmain.in: allow -export-symbols for modules, use thread_safe flag,
25924           add include_expsyms to the exported symbols
25925
25926 1999-02-12  Gary V. Vaughan  <gary@gnu.org>
25927
25928         * libltdl/ltdl.h (_LTDLL_EXTERN): libltdl is no longer linked as a
25929         shared library, so the _declspec's were preventing the linker from
25930         resolving symbols on win32.  They have been removed now.
25931
25932 1999-02-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
25933
25934         * ltmain.in: don't try to read objdir/libname.la before it is
25935         created!
25936
25937         * ltmain.in: create libname.lai at link time, not at install time,
25938         but still create it at install time if it is missing
25939         Reported by Akim Demaille <demaille@inf.enst.fr>
25940
25941         * libltdl/ltdl.c (tryall_dlopen): strcmp filenames was reversed
25942
25943 1999-02-11  Thomas Tanner  <tanner@gmx.de>
25944
25945         * autogen: libltdl needs autoheader
25946         * demo/Makefile.am: renamed hell.debug to hell.static
25947           (we're demonstrating static linking, not debugging)
25948         * tests/demo*: ditto
25949         * doc/libtool.texi (libltdl): documented new lt_dlopen(NULL)
25950           feature
25951         * libltdl/acconfig.h: required for config.h
25952         * libltdl/configure.in: use config.h
25953         * libltdl/ltdl.c: use config.h, support lt_dlopen(NULL)
25954           (returns a handle for the program itself)
25955         * ltconfig.in: minor reformatting
25956         * ltmain.in: in lt_preloaded_symbols always define
25957           the program's symbols first, for -export-dynamic list all
25958           program symbols together, -export-symbols was broken for
25959           programs, minor reformatting
25960         * mdemo/Makefile.am: renamed mdemo.debug to mdemo.static
25961         * tests/mdemo*: ditto, mdemo.test was completely broken
25962
25963 1999-02-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
25964
25965         * ltconfig.in (irix5*, irix6*, osf3*, osf4*): do not use
25966         -set_version in archive_cmds if verstring is empty
25967         (irix6*, shlibpath_var, sys_lib_search_path-spec,
25968         deplibs_check_method): set appropriate values depending on
25969         selected ABI, -32, -n32 or -64, as set in LD by libtool.m4
25970         (uts4*): remove dot between .so and versuffix
25971
25972 1999-02-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
25973
25974         * ltconfig.in (irix5*, irix6*, deplibs_check_method): use
25975         file_magic for inter-library dependency tracking
25976
25977         * ltconfig.in (irix5*, hardcode_libdir_separator): set it to a
25978         colon, because on IRIX 5 only the last -rpath switch prevails, and
25979         it can be a list of colon-separated directories.  This change will
25980         affect irix6 too, but that's not a problem.
25981
25982         * ltconfig.in (irix5*, library_names_spec): add soname_spec,
25983         otherwise we can't dlopen
25984
25985 1999-02-08  Thomas Tanner  <tanner@gmx.de>
25986
25987         * ltconfig.in: according to Marcus Sundberg <mackan@stacken.kth.se>
25988           HP/UX, IRIX, OpenBSD, Digital Unix and SunOS support
25989           need_version=no and need_lib_prefix=no,
25990           fixed a bug in Solaris' archive_sym_cmds
25991
25992 1999-02-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
25993
25994         * libtool.m4 (ac_cv_sys_global_symbol_pipe): accept TAB in
25995         addition to space as separator, and allow more than one space
25996         between the symbol code and the symbol name; HP/UX's nm, for
25997         example, uses two spaces
25998         * ltconfig.in (global_symbol_pipe): ditto
25999         (bsdi4, deplibs_check_method): variable name was misspelled
26000         * libltdl/configure.in (libltdl_cv_preloaded_symbols): rewrite
26001         test, so as not to depend on the way global_symbol_pipe is
26002         initialized; the current test would get false positives, as
26003         global_symbol_pipe was initialized `x=""', not `x='
26004
26005         * libltdl/ltdl.c (find_module): initialize filename if dir is NULL
26006         Reported by Godmar Back <gback@cs.utah.edu>
26007
26008 1999-02-04  Godmar Back  <gback@cs.utah.edu>
26009
26010         * libltdl/ltdl.c (lt_dlopenext): missing space for terminator when
26011         allocating memory for shlib_ext
26012
26013 1999-02-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
26014
26015         * libltdl/ltdl.c (lt_dlopenext): tmp would be trashed if shlib_ext
26016         was longer than 3 characters
26017
26018 1999-02-02  Gary V. Vaughan  <gary@gnu.org>
26019
26020         * ltconfig.in: new config.guess returns *-*-cygwin now instead of
26021         *-*-cygwin32.  sed -e 's%\(cygwin\|mingw\)32%\1%g' ltconfig.in
26022         * ltmain.in:   sed -e 's%\(cygwin\|mingw\)32%\1%g' ltmain.in
26023
26024         * ltconfig.in (hardcode_libdir_flag_spec, allow_undefined_flag,
26025         archive_cmds, archive_sym_cmds, old_archive_from_new_cmds):
26026         removed duplication of config by assuming that `test $with_gcc =
26027         yes' implies gnu ld, otherwise MSVC++ (which I haven't tested
26028         since I inheritted the code from Ian Lance Taylor btw!) is implied.
26029
26030 1999-01-28  Gary V. Vaughan  <gary@gnu.org>
26031
26032         * ltmain.in: Reverted this change of Alexandre's from the
26033         1999-01-25; "don't try to use .o instead of .lo just because
26034         there's no PIC flag.  It loses if --disable-static, and there's
26035         not much point if we're referring to the same file anyway...",
26036         because not all linkers will accept .lo object names.
26037         * ltmain.in: In the case where --disable-static is specified (as
26038         noted in Alexandre's log entry), we just link some .o files to
26039         prevent the original error.
26040         Reported by Andrey Slepuhin <pooh@msu.ru>
26041
26042 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
26043
26044         * libtoolize.in: search for A[MC]_PROG_LIBTOOL, not
26045         AM_PROG_LIBTOOL
26046         Reported by Jeff Garzik <jgarzik@pobox.com>
26047
26048 1999-01-27  Gary V. Vaughan  <gary@gnu.org>
26049
26050         * THANKS: Now that we have a policy, applied it to the existing
26051         list.  This in no way demeans the work of those people removed
26052         from the THANKS file, who are still credited in the ChangeLogs and
26053         without who's work, libtool would not work so well on many
26054         platforms, but serves to highlight the outstanding and continued
26055         contribution the remaining people have made.  And I quote, "We
26056         reserve THANKS for people who have made major contributions, and
26057         leave the credit to the others for the ChangeLog only."
26058
26059         * THANKS: added Sam Vilain.
26060         * ltconfig.in ($echo):  When using printf to replace echo the shell
26061         expands %s\n to %sn.  Changed to use "%s\n" (with quotes).
26062         Reported by Sam Vilain <sam.vilain@nz.unisys.com>
26063
26064 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
26065
26066         * libltdl/ltdl.c (find_file): fix endless loop condition
26067         (find_module): filename allocation was off by 1
26068
26069         * libltdl/Makefile.am (distclean-local): renamed from
26070         distclean-hook, that didn't work
26071
26072         * libltdl/ltdl.c (lt_dlopen, non-.la): find_file now returns 0 on
26073         failure
26074
26075         * Makefile.am (ltconfig, ltmain.sh): some broken makes don't like
26076         macros in targets; replace $(srcdir) with @srcdir@
26077         * configure.in (ACINCLUDE_M4_LIST): same problem; expand $srcdir
26078
26079         * libltdl/Makefile.am (@TOINST@/libltdl.la): if installation is
26080         enabled, create to-be-installed libltdl.la within @TOINST@
26081         directory
26082         (noinst_LTLIBRARIES): even if installation is enabled, build
26083         convenience libltdl.la, otherwise builds of random packages may
26084         fail if the user happens to enable installation
26085         (distclean-hook): wipe out $(TOINST)
26086         * libltdl/configure.in: set TOINST and LIBLIBS as appropriate;
26087         don't set NOINSTLIBS any more
26088         * mdemo/Makefile.am: use libltdl.la
26089
26090         * libltdl/ltdl.c (find_file): oops, filenamesize was miscomputed
26091
26092         * libltdl/ltdl.c (find_file): allocate filename dynamically
26093
26094         * libltdl/configure.in (AC_PROG_LIBTOOL): automake does not
26095         recognize it and fail, better keep using AM_PROG_LIBTOOL until the
26096         next release of automake
26097         * demo/configure.in, cdemo/configure.in: ditto
26098         * depdemo/configure.in, mdemo/configure.in: ditto
26099
26100         * libltdl/ltdl.c: make all global strings char[], not char*; check
26101         that all calls to malloc() are properly cast
26102         (strdup, strchr, strrchr, trim, free_vars): declare as inline
26103         (find_module): allocate filename dynamically; support null dir
26104         (free_vars): free dir and name only if non-null
26105         (lt_dlopen): keep dir as NULL if not given; fix expression that
26106         calculated the size of name; only free and name if non-null
26107         (lt_dlopenext): allocate tmp dynamically
26108
26109         * configure.in (pkgdatadir): expand ${PACKAGE} at configure-time,
26110         just like automake does
26111
26112         * configure.in (pkgdatadir): define pkgdatadir explicitly, and
26113         comment that automake does not need it, but libtoolize does
26114
26115         * Makefile.am (aclocaldir): do not set it explicitly, automake
26116         does already
26117
26118         * configure.in (TIMESTAMP): use mkstamp here too
26119
26120 1999-01-27  Thomas Tanner  <tanner@gmx.de>
26121
26122         * cdemo/configure.in: renamed AM_PROG_LIBTOOL to AC_PROG_LIBTOOL
26123         * demo/configure.in: likewise
26124         * depdemo/configure.in: likewise
26125         * libltdl/configure.in: likewise
26126         * mdemo/configure.in: likewise
26127         * libltdl/ltdl.c: in find_module() check whether libdir is defined,
26128           tryall_dlopen(): move deallocation of an already opened handle
26129           to lt_dlopen(), allocate the directory in lt_dlopen() dynamically,
26130           minor cleanups, fixed memory leak (name)
26131         * libtool.m4: renamed all AM_ macros to AC_ and added aliases for
26132           compatibilty, updated AC_SYS_NM_PARSE (no undefined symbols,
26133           don't count the symbols)
26134         * ltconfig.in: added thread_safe_flag_spec (not used yet),
26135           added generic variable for linker options "linkopts" in
26136           all archive_cmds
26137         * ltmain.in: added -thread-safe flag (unused)
26138
26139 1999-01-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
26140
26141         * ltconfig.in (LTCONFIG_VERSION): damn!, adding TIMESTAMP doesn't
26142         always work, because then different ChangeLog timestamps fail to
26143         pass the version test.  Instead of forcing both ltconfig and
26144         ltmain.sh to be updated every time ChangeLog changes, better
26145         revert it
26146
26147         * ltconfig.in (LTCONFIG_VERSION): add TIMESTAMP, remove
26148         explicit quotes and add it to the list of variables to quote
26149
26150         * ltmain.in: reworded `dropped inter-library dependencies'
26151         message, and added a warning about inter-library dependencies even
26152         for non-module builds
26153
26154 1999-01-26  Gary V. Vaughan  <gary@gnu.org>
26155
26156         * Makefile.am (install-data-hook): Don't show the if expression
26157         that tests for gzip with a conditional error message; just do it
26158         quietly and show the error if it fails, or the next action if it
26159         succeeds.
26160
26161         * configure.in:  It seems Alexandre accidentally removed the
26162         AC_SUBST(pkgdatadir) line recently which breaks libtoolize.
26163         Reverted that small change.
26164
26165 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
26166
26167         * libltdl/ltdl.c (find_module): test old_name and dlname for NULL,
26168         not len==0
26169
26170         * libltdl/configure.in (libltdl_cv_objdir): yes, appending the "/"
26171         in configure.in was much simpler
26172         * libltdl/ltdl.c (objdir): ditto
26173
26174         * libltdl/ltdl.c (objdir): string collation isn't portable; strcat
26175         "/" explicitly.  Or should this be moved to configure.in?
26176
26177 1999-01-25  Thomas Tanner  <tanner@gmx.de>
26178
26179         * libltdl/ltdl.c: allocate the variables in lt_dlopen() dynamically
26180
26181 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
26182
26183         * ltmain.in (file_magic): use egrep instead of expr to support
26184         more general regular expressions
26185         (file_regex): remove it; the name is misleading, it's not used
26186         anywhere, and probably will never be
26187         * ltconfig.in, doc/libtool.texi: ditto
26188         * ltconfig.in (linux-gnu*, deplibs_check_method): extend regex to
26189         support `LSB dynamic lib' in the output of `file'
26190         Reported by Scott D. Heavner <sdh@po.cwru.edu>
26191
26192         * ltmain.in (dependency_libs, xrpath): add -R switches to
26193         dependency_libs only just before creating the .la file; they
26194         should not be passed to the C compiler or linker at
26195         library-creation time, since we don't know whether it is supported
26196
26197         * ltconfig.in (freebsd2.2*, hardcode_minus_L): for FreeBSD 2.2.6,
26198         this must be `no'
26199
26200         * mkstamp: move the sed script to extract revision and date
26201         information into a separate shell-script, so that we can break
26202         lines between commands; FreeBSD's sed doesn't like `;' after `t'
26203         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
26204         * Makefile.am: use mkstamp
26205         * THANKS: added Axel Thimm
26206
26207         * ltmain.in: don't try to use .o instead of .lo just because
26208         there's no PIC flag.  It loses if --disable-static, and there's
26209         not much point if we're referring to the same file anyway...
26210
26211         * ltmain.in (pass_all=none, droppeddeps): set only if deplibs was
26212         non-empty
26213
26214 1999-01-24  Thomas Tanner  <tanner@gmx.de>
26215
26216         * libltdl/ltdl.c: minor bugfixes, append a "/" the search
26217           directory only if necessary
26218         * ltconfig.in: added support for FreeBSD >= 3.0
26219           (patch from Kurt D. Zeilenga)
26220         * THANKS: added Kurt D. Zeilenga
26221
26222 1999-01-24  Thomas Tanner  <tanner@gmx.de>
26223
26224         * doc/libtool.texi (libltdl): list supported dlopen mechanisms,
26225           added function lt_dlopenext(), removed reference to
26226           LTDL_PRELOADED_SYMBOLS in LTDL_SET_PRELOADED_SYMBOLS
26227         * libltdl/ltdl.c: partially reverted Alexandre's dynamic string
26228           allocation change (it was not necessary and the code was unreadable),
26229           cleanups, removed usr_search_path_size, renamed usr_search_path
26230           to user_search_path, in find_module() also check for moved
26231           modules, merged find_file() and find_library(),
26232           added lt_dlopenext(), in lt_dladdsearchdir() no longer reset
26233           the search path if 'search_dir' == NULL and don't use realloc()
26234           (might not be available on all platforms),
26235           removed __P((void)) in the declaration of lt_dlgetsearchpath()
26236         * libltdl/ltdl.h: added lt_dlopenext()
26237         * ltconfig.in: AIX archive commands were broken,
26238           fixed a MAJOR bug in global_symbol_pipe which caused
26239           "demo-shared.test;demo-make.test" to fail (libtool must not extract
26240           undefined symbols of libraries, i.e. symcode must not contain 'U')
26241         * tests/Makefile.am (clean-local): "make distclean" in cdemo, too
26242
26243 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26244
26245         * Makefile.am (ltconfig, ltmain.sh): add ChangeLog Revision to
26246         TIMESTAMP
26247         * configure.in: get values of PACKAGE and VERSION set by
26248         AM_INIT_AUTOMAKE, and extract only TIMESTAMP from the ChangeLog
26249
26250         * libltdl/ltdl.c (lt_dlopen): if we're reusing a previously opened
26251         handle, don't reset its name nor add it to the list, and free the
26252         name we have allocated
26253         Reported by Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
26254
26255         * Makefile.am (ltconfig, ltmain.sh, TIMESTAMP): let's not assume
26256         anything about the format of the date, just that it does not
26257         contain `$'
26258
26259 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
26260
26261         * configure.in (date): echo the version number during
26262         configuration, and show $date for cvs versions.
26263
26264         * Makefile.am ($(srcdir)/ltconfig): Oops.  cvs co keyword
26265         expansion ate the sed expression! Changed sed separator to '%'
26266         because there are '/' in the date.  Added missing '\(' to search
26267         expression.  Inserted a null string to stop cvs from expanding it
26268         next time =)O|
26269         ($(srcdir)/ltmain.sh): ditto.
26270
26271 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26272
26273         * Makefile.am (TSDEPS_DIST): dist-time dependencies for timestamps
26274         (timestamps, update-timestamps): check whether TSDEPS_DIST are
26275         up-to-date and update ltconfig and ltmain.sh if needed
26276         (ltconfig, ltmain.sh): depend on TSDEPS; replace @TIMESTAMP@ with
26277         the Date tag in the ChangeLog
26278         (TSDEPS): empty unless overridden by update-timestamps
26279         * ltconfig.in, ltmain.in (TIMESTAMP): append timestamp to most
26280         references to VERSION
26281
26282 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
26283
26284         * ltmain.in (ild): Revert the change which allowed libtool to
26285         link libraries with dependencies on .la libs.
26286         * NEWS: Removed reference to win32, incase 1.3 ships before
26287         ild is ready.
26288         * doc/PLATFORMS: Removed i686-pc-cygwin32, for the same reason.
26289         * doc/libtool.texi: Removed win32 refs, for the same reason.
26290
26291 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26292
26293         * ltmain.in (Xsed): add 1 to Xsed definition that goes into
26294         temporary wrapper scripts
26295         * libtool.m4: we don't have Xsed here, expand it manually
26296         Reported by Pavel Roskin <pavel_roskin@geocities.com>
26297
26298 1999-01-22  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
26299
26300         * ltmain.in (finalize_hardcode_libdirs, finalize_rpath): in
26301         platforms that use -rpath, programs must be finalized at
26302         installation time, otherwise build-tree programs will
26303         prefer installed libraries over build-tree ones
26304
26305 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
26306
26307         * mdemo/Makefile.am (../libltdl/libtool): if it does not exist,
26308         the sub-make for libltdlc.la will take care of it, but we must at
26309         least provide an empty rule for it, otherwise the sub-make will
26310         never run
26311
26312         * demo/configure.in, demo/Makefile.am (DLPREOPEN): reverted; it
26313         didn't make any difference.
26314
26315 1999-01-21  Gary V. Vaughan  <gary@gnu.org>
26316
26317         * THANKS: Added Chris Laas <golem@MIT.EDU>
26318
26319         From Chris Laas <golem@MIT.EDU>
26320         * ltmain.in (compile):  corrected a typo in compile mode which
26321         caused "gcc: unrecognized option -c-fPIC" errors due to a missing
26322         space.
26323
26324 1999-01-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
26325
26326         * libltdl/configure.in: reintroduce code to detect native library
26327         extension
26328         * libltdl/ltdl.c (lt_dlopen): if a .la file name is given, that's
26329         all.  Otherwise, lt_dlopen now tries to append .la first.  If this
26330         fails, it tries the given filename, and, at last, tries to append
26331         the native library extension to the given filename.
26332         * doc/libtool.texi (lt_dlopen): explain new lookup strategy
26333
26334         * libltdl/ltdl.c: major rewrite to avoid almost all fixed-size
26335         buffers; only `tmp' in lt_dlopen remained.  But the code got ugly
26336         :-(
26337
26338         * ltconfig.in (linux-gnu*, finish_cmds): remove erroneous backslash
26339
26340         * demo/configure.in: set DLPREOPEN to -dlopen if we don't have
26341         shared libraries
26342         * demo/Makefile.am (DLPREOPEN): use instead of -dlpreopen
26343         (STATIC): use $(STATIC), not @STATIC@
26344         * mdemo/Makefile.am (STATIC): ditto
26345
26346         * tests/demo-shared.test, tests/demo-static.test: new tests
26347         * tests/mdemo-shared.test, tests/mdemo-static.test: ditto
26348         * tests/Makefile.am: ditto
26349         * doc/libtool.texi: document them
26350         * demo/Makefile.am, mdemo/Makefile.am (STATIC): do not use
26351         -static unconditionally, it can't work with --disable-static
26352         * demo/configure.in, mdemo/configure.in: check whether libtool was
26353         configured to build static libraries and, if not, set STATIC to an
26354         empty string
26355
26356 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26357
26358         * ltmain.in (module, droppeddeps): if libtool could not satisfy
26359         all dependencies of a module, it will only build a static version
26360         of it, and display a warning message
26361
26362 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
26363
26364         * ltconfig.in (aix4*, with_gcc, archive_cmds): fix typo in Andrey
26365         Slepuhin's last patch
26366
26367 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26368
26369         * Makefile.am (@DIST_MAKEFILE_LIST@): work around Ultrix /bin/sh bug
26370         * tests/nomode.test (must specify a MODE): ditto
26371         Reported by Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
26372         * THANKS: Added Rainer Orth
26373
26374 1999-01-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
26375
26376         * ltconfig.in: No known version of Solaris 2 hardcoded -L paths.
26377
26378 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
26379
26380         * ltmain.in: s/n\'t/ not/
26381         * doc/PLATFORMS: updates for sunos4/m68k and aix
26382
26383 1999-01-20  Andrey Slepuhin  <pooh@msu.ru>
26384
26385         * ltconfig.in (aix4*): check for reworked collect2, always pass
26386         -bnoentry option to linker when building a shared library
26387
26388 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26389
26390         * ltmain.in (file_magic): follow soft-links before running `file'
26391         on the candidate library; try to avoid entering endless loop
26392         Suggested by Nix <nix@esperi.demon.co.uk>
26393
26394         * ltconfig.in (linux*, solaris*, bsdi4*, sys_lib_search_path):
26395         remove expansion of $LD_LIBRARY_PATH
26396         * ltmain.in (lib_search_path): append the expansion of $shlibpath_var
26397         * doc/libtool.texi: document it
26398
26399         * THANKS: Added Steven Schultz
26400
26401 1999-01-20  Steven M. Schultz <sms@wlv.iipo.gtegsc.com>
26402
26403         * ltconfig.in (bsdi4*, check_shared_deplibs_method): file_magic
26404         (bsdi4*, sys_lib_search_path): add /shlib and other dirs
26405
26406 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26407
26408         * cdemo/main.c (main): use K&R definition syntax
26409         * mdemo/main.c (test_dl, main): ditto
26410         (test_dl): casts return value of lt_dlsym to appropriate types
26411
26412         * ltmain.in (dlsyms): #define const to nothing if not __STDC__
26413
26414         * ltconfig.in (global_symbol_pipe): #define const to nothing if
26415         not __STDC__
26416
26417         * demo/dlmain.c (main): cast s->address to the appropriate pointer
26418         types, otherwise StunOS4's cc refuses to compile it
26419
26420         * ltconfig.in (sunos4*, without_gnu_ld, with_gcc, archive_cmds):
26421         add -fPIC, because libgcc is multilibbed, and we want the PIC
26422         version of it for shared libraries, otherwise ld complains
26423
26424         * demo/dlmain.c (main): add missing const to declaration of name
26425
26426         * libltdl/ltdl.c (find_module): remove the libdir argument, and
26427         try to  open library only as old_name and dir/dlname
26428         (lt_dlopen): use `installed' variable in .la file to decide
26429         whether to use libdir or objdir
26430
26431         * demo/configure.in (AC_C_CONST): added, for portability
26432         * mdemo/configure.in (AC_C_CONST): ditto
26433         * libltdl/configure.in (AC_C_CONST, AC_C_INLINE): ditto
26434         * libltdl/ltdl.c (LTDL_FILENAME_MAX): use FILENAME_MAX if defined
26435         (FILENAME_MAX): replace all explicit uses with LTDL_FILENAME_MAX
26436         (presym_free_symlists, trim): don't return void, for portability
26437         (lt_dlgetsearchpath): replace (void) with __P((void))
26438
26439         * ltmain.in (compile): when compiling both PIC and non-PIC, write
26440         the PIC object to .libs/.lo and only rename it to .lo after
26441         compiling the .o, to avoid fooling make dependencies
26442
26443         * mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove
26444
26445 1999-01-20  Gary V. Vaughan  <gary@gnu.org>
26446
26447         * TODO: Added inter-library deps for ltlibs.
26448
26449         * THANKS: Added Vladimir Kushnir.
26450
26451 1999-01-20  Vladimir Kushnir  <kushn@mail.kar.net>
26452
26453         * ltconfig.in (freebsd3*): Define `deplibs_check_method' and
26454         `file_magic_command' for freebsd-elf.
26455
26456 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26457
26458         * TODO: should we also build a `static' copy of a convenience
26459         library out of .o files?
26460
26461         * ltconfig.in (bsdi4*, netbsd*, uts4*, library_names_spec,
26462         soname_spec): removed duplicate dot before $major
26463         Reported by Steven M. Schultz <sms@wlv.iipo.gtegsc.com> (bsdi4*)
26464
26465         * THANKS: added Manfred Weichel
26466
26467 1999-01-20  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
26468
26469         * ltconfig.in (sysv5*): same as sysv4.3*
26470
26471 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
26472
26473         * libltdl/ltdl.c (lt_dlopen): properly detect error condition when
26474         full pathname of non-libtool library is provided
26475
26476         * libltdl/configure.in (libltdl_cv_preloaded_symbols,
26477         HAVE_PRELOADED_SYMBOLS): test whether we support -dl*open
26478         * libltdl/ltdl.c (!HAVE_PRELOADED_SYMBOLS, lt_preloaded_symbols):
26479         define it to an empty list if libtool won't generate it, so as to
26480         avoid link errors.  This will cause silent dlopening failures, but
26481         maybe this is better than failing to link the program...
26482
26483         * libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to
26484         declare lt_preloaded_symbols
26485         * doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto
26486
26487         * ltmain.in (dlpredeps): removed, reverting 1999-01-17's change
26488
26489 1999-01-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
26490
26491         * libltdl/Makefile.am (Makefile): depend on libtool
26492
26493         * ltmain.in (lt_preloaded_setup): function added to symbol list
26494         source file to work around FreeBSD problem
26495
26496         * Makefile.am (check-local): depend on libltdl/Makefile
26497
26498         * mdemo/Makefile.am (mdemo_LDFLAGS, mdemo_LDADD): moved -dlopen
26499         flags to LDADD
26500         * doc/libtool.texi (Using Automake): how to add -dlopen to LDADD
26501
26502 1999-01-19  Gary V. Vaughan  <gary@gnu.org>
26503
26504         From Andrey Slepuhin <pooh@msu.ru>
26505         * ltmain.in (hardcode_action) Oops, misapplied the patch!
26506
26507         * ltconfig.in (compile_dependencylbs): removed this
26508         variable and pick up the library dependencies from $deplibs.
26509         * ltmain.in (compile_dependencylibs): removed this
26510         variable, use deplibs to hold these dependencies.
26511
26512         From Andrey Slepuhin <pooh@msu.ru>
26513         * ltmain.in (hardcode_action) make sure deplibs is set to include
26514         all the extra libs added to compile_command.
26515
26516 1999-01-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
26517
26518         * libtool.m4 (LIBTOOL_DEPS): set it
26519         * libltdl/configure.in (LIBTOOL_DEPS): AC_SUBST it
26520         * libltdl/Makefile.am (libtool): use it
26521         * doc/libtool.texi (AM_PROG_LIBTOOL): document it
26522
26523         * Makefile.am (libltdl.tar.gz): don't create it as part of the
26524         build, since it is likely to become stale if we do
26525         (install-data-hook): create and install libltdl.tar.gz, without
26526         depending on GNU tar
26527         Reported by Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
26528
26529 1999-01-17  Thomas Tanner  <tanner@gmx.de>
26530
26531         * Makefile.am: added libltdl.tar.gz to CLEANFILES
26532         * ChangeLog: some reformatting
26533         * TODO: documentation updates
26534         * doc/libtool.texi: added preliminary libltdl documentation,
26535           updated dlopen and -module documentation,
26536           renamed -avoid-versioning to -avoid-version
26537           documented the libtool script variables compiler_c_o,
26538           compiler_o_lo, need_locks, old_postuninstall_cmds,
26539           postuninstall_cmds, sys_lib_search_path_spec,
26540           fix_srcfile_path, objdir, objext, libext,
26541           documented the two new flags (--ltdl[-tar]) of libtoolize
26542         * libltdl/Makefile.am: incremented the version, removed
26543           libtool dependency so that it can be build independently
26544         * libltdl/configure.in: removed LTDL_SHLIB_EXT hack,
26545           set version to 1.0, use AM_MAINTAINER_MODE,
26546           DLPREOPEN is always supported, check for libtool's objdir variable
26547           (LTDL_OBJDIR)
26548         * libltdl/ltdl.c: some cleanups (moved constants to the beginning
26549           of the file and prefixed all of them with LTDL_, minor optimizations
26550           in find_file() and find_module()), renamed lt_dlpreopen* to
26551           lt_dlpreload* for consistency, removed LTDL_SHLIB_EXT hack,
26552           we don't need unistd.h, DLPREOPEN is _always_ supported,
26553           reverted Alexandre's lt_dlpreopen_default_ change,
26554           try to open the not-installed module before the installed one,
26555           replaced lt_dlsearchpath() with lt_dladdsearchdir(),
26556           lt_dlsetsearchpath() and lt_dlgetsearchpath()
26557         * libltdl/ltdl.h: renamed lt_dlpreopen* to lt_dlpreload*
26558           for consistency, removed the declaration of lt_preloaded_symbols
26559           (should be imported by programs),
26560           reverted Alexandre's lt_dlpreopen_default_ change and added
26561           two new macros LTDL_PRELOADED_SYMBOLS and
26562           LTDL_SET_PRELOADED_SYMBOLS(),
26563           added lt_dladdsearchdir(), lt_dlsetsearchpath() and
26564           lt_dlgetsearchpath()
26565         * libtool.m4: some reformatting
26566         * libtoolize.in: implemented --ltdl, bugfix when checking for
26567           the libtool package directory
26568         * ltconfig.in: removed $thread_safe_flags from Andrey Slepuhin's
26569           AIX patch, renamed sys_lib_search_path to sys_lib_search_path_spec,
26570           some reformatting, fixed typo in deplibs_check_method (unkwnon)
26571         * ltmain.in: documented -o for compile mode, some reformatting,
26572           renamed -avoid-versioning to -avoid-version
26573           renamed sys_lib_search_path to sys_lib_search_path_spec
26574         * mdemo/Makefile.am: use -avoid-version
26575         * mdemo/main.c: use LTDL_PRELOADED_SYMBOLS and
26576           LTDL_SET_PRELOADED_SYMBOLS()
26577
26578 1999-01-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
26579
26580         * ltconfig.in (wlarc): set to either '${wl}' or an empty string,
26581         depending on whether archive_cmds runs CC or LD
26582         (gnu_ld=yes, whole_archive_flag_spec): "$wlarc" instead of '${wl}'
26583
26584         * mdemo/Makefile.am (../libltdl/libltdlc.la): depend on
26585         ../libtool, because ../libltdl/libtool depends on it
26586         (mdemo_debug_*): copy from mdemo_*, adding -static to LDFLAGS
26587
26588         * ltmain.in (dlpredeps): append dependencies from dlopened modules
26589         (but not dlpreopened ones) after all explicitly linked libraries
26590
26591         * ltconfig.in (need_lib_prefix, need_version,
26592         deplibs_check_method): default to unknown, so that we're
26593         remembered that this needs porting; unknown is interpreted as yes,
26594         yes and none, respectively
26595         (freebsd2*, freebsd3*, sunos4*, need_version): set to yes
26596         (freebsd2*, freebsd3*, library_names_spec): libraries without a
26597         version number are not used by `ld'; add $versuffix;
26598         Reported by Ben Jackson <ben@ben.com>
26599         * ltmain.in (deplibs_check_method): alias unknown to none
26600         (need_version): if vinfo was not provided and release info was,
26601         zero out versuffix only if we don't need_version.
26602         * doc/libtool.texi: document what `unknown' means
26603
26604         * libltdl/ltdl.h (lt_dlpreopen_default): reverted to a macro
26605         without arguments, that calls lt_dlpreopen_default_ with
26606         lt_dlpreloaded_symbols
26607         * libltdl/ltdl.c (lt_dlpreopen_default_): renamed from
26608         lt_dlpreopen_default
26609         (find_module) tryall_dlopen old_name first, so that we don't
26610         override statically linked symbols with dlopened ones
26611
26612 1999-01-15  Gary V. Vaughan  <gary@gnu.org>
26613
26614         From Andrey Slepuhin <pooh@msu.ru>
26615         * libtoolize.in (cd $pkgdatadir): Make sure we return the the
26616         working directory when this is done.
26617
26618         From Andrey Slepuhin <pooh@msu.ru>
26619         * ltconfig.in (aix): Use shared library support correctly on
26620         aix4*, and tweak the config for aix3.
26621         * NEWS: added aix3 and aix4 to list of hosts with improved
26622         support.
26623         * THANKS: added Andrey Slepuhin <pooh@msu.ru>.
26624
26625 1999-01-15  Thomas Tanner  <tanner@gmx.de>
26626
26627         * Makefile.am (@DIST_MAKEFILE_LIST@): added a second '$'
26628           before abs_scrdir, removed ltconfig and ltmain.sh from
26629           EXTRA_DIST (automake distributes them by default)
26630
26631 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26632
26633         * autogen: moved faking of the libtool scripts before
26634           the call of automake, so that ltconfig and ltmain.sh
26635           are included in the distribution
26636         * ltconfig.in: when checking whether PIC is supported assume
26637           only on HP/UX that warnings during compilation mean that
26638           PIC is not supported (Thanks to Ron O'Hara)
26639         * THANKS: added Ron O'Hara
26640
26641 1999-01-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
26642
26643         * Makefile.am: Moved ltconfig and ltmain.sh back into srcdir, and
26644         add them to the distribution.  Added work-around if `mv -f' fails.
26645         fix @AINCLUDE_M4_LIST@ and @DIST_MAKEFILE_LIST@ for relative and
26646         absolute specifications of srcdir
26647
26648 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26649
26650         * libltdl/ltdl.c: added variable symbol prefix, added user-defined
26651           library search path (can be set using lt_dlsearchpath()),
26652           added default_preloaded_symbols which are independent of
26653           lt_dlinit/exit
26654         * libltdl/ltdl.h: added lt_dlsearchpath() and
26655           lt_dlpreopen_default()
26656         * mdemo/Makefile.am: use -export-dynamic until libtool
26657           and libltdl are able to handle module dependencies
26658
26659 1999-01-14  Gary V. Vaughan  <gary@gnu.org>
26660
26661         * THANKS: added Mark Elbrecht.
26662         * ltconfig.in (PATH_SEPARATOR): new variable to hold valid $PATH
26663         separator characters for the build host, to support DJGPP
26664         environment.
26665         * ltconfig.in: Use PATH_SEPARATOR instead of hardcoded `:'.
26666         Reported by Mark Elbrecht <snowball3@usa.net>
26667
26668         * cdemo/README: typo: mdemo->cdemo
26669
26670 1999-01-14  Thomas Tanner  <tanner@gmx.de>
26671
26672         * autogen: fake the libtool scripts to help fixing
26673           the bootstrapping problem
26674         * Makefile.am: always configure libltdl, however after building
26675           the libtool scripts,
26676           build the libtool scripts in builddir, not srcdir
26677           (unfortunately this breaks building when srcdir!=objdir,
26678            but it was just plain wrong - needs to be fixed),
26679           build and install libltdl.tar.gz,
26680           copy acinclude.m4 instead of linking them, so that we
26681           can 'make dist' in libltdl,
26682           fixed configuring of subdirectories
26683         * configure.in: removed --enable-ltdl-install - libltdl is supposed
26684           to be installed by packages, not by libtool itself
26685         * libtoolize.in: new flags --ltdl and --ltdl-tar to install libltdl
26686           in packages (--ltdl doesn't work yet),
26687           install only the necessary libtool scripts, not just all
26688           files in pkgdatadir
26689         * mdemo/Makefile.am: removed the rule for libltdl configuration
26690
26691 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26692
26693         * mdemo/Makefile.am (../libltdl/libtool): mkdir and configure
26694         ../libltdl
26695
26696 1999-01-13  Thomas Tanner  <tanner@gmx.de>
26697
26698         * demo/dlmain.c, libltdl/ltdl.c, ltconfig.in, ltmain.in,
26699           doc/libtool.texi: renamed dld_preloaded_symbols to
26700           lt_preloaded_symbols, symbol lists are 'const'
26701         * cdemo/configure.in: don't check for string.h
26702         * demo/dlmain.c: renamed dld_symlist to lt_symlist,
26703           preloaded symbols are 'const', use lt_ptr_t instead of void*
26704         * demo/foo.h: define lt_ptr_t
26705         * doc/libtool.texi: document lt_preloaded_symbols correctly
26706         * libltdl/Makefile.am, mdemo/Makefile.am: renamed libtest to libltdlc
26707         * libltdl/ltdl.c: fixed some minor typos, renamed dldpre to presym,
26708           bugfix: search in search_path only if we have no directory
26709           and a search_path, in lt_dlsym() check whether symbol != 0
26710         * libltdl/ltdl.h: removed lt_dlpreopen_default()
26711         * ltconfig.in (dlpreopen): removed dld_preloaded_symbol_count
26712         * ltmain.in: added help for -avoid-versioning, -export-symbols,
26713           -module, add @SYMFILE@ if one of -export-dynamic, -dlopen or
26714           -dlpreopen is used
26715         * mail/deplibs.html: added Gordon Matzigkeit's inter-library
26716           dependencies article
26717         * mdemo/Makefile.am: removed -export-dynamic from LDFLAGS
26718           (no longer necessary, since libtool defines lt_preloaded_symbols
26719           when -dlopen is used), initialize with lt_preloaded_symbols
26720
26721 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26722
26723         * doc/libtool.texi (Test descriptions): cdemo-static works, thanks
26724         to Edouard Parmelan!
26725
26726         * THANKS: added Sebastian Wilhelmi
26727
26728         * ltconfig.in (solaris): define `need_version' to no
26729
26730 1999-01-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
26731
26732         * ltconfig.in (solaris): Define `deplibs_check_method',
26733         `file_magic_command', `need_lib_prefix' and `sys_lib_search_path'
26734         * ltmain.in (file_magic_regex): Add space before matching pattern,
26735         such that it works on solaris (solaris has a tab between the
26736         library name (including the colon) and the `ELF' and such the
26737         `ELF' will never be matched).
26738
26739 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
26740
26741         * ltconfig.in (NM): PATH search was not updated like in
26742         libtool.m4, in last Alexandre Oliva's change to it
26743         (sysv4*, ncr): pass all library dependencies
26744         * ltmain.in (dependency_libs, -R): use `deplib' instead of `arg' to
26745         iterate, otherwise we'd overwrite `arg'
26746         (convenience, old_libs): if --disable-shared, convenience
26747         libraries are just old archives, as .lo's are of no use
26748         * tests/cdemo-static.test: print --disable-shared here
26749
26750 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26751
26752         * libltdl/configure.in (libltdl_cv_shlibext, LTDL_SHLIB_EXT):
26753         system-dependent extension of shared libraries
26754         (libltdl_cv_shlibpath_var, LTDL_SHLIBPATH_VAR): system-dependent
26755         run-time shared library search path
26756         * libltdl/ltdl.c (dldpre_init, dldpre_exit): unrelate init/exit
26757         from add/remove symlists, so one may add dld_preloaded_symbols
26758         from main(), when only a library will call dldpre_init
26759         (lt_dlopen): use LTDL_SHLIBPATH_VAR, if defined, as secondary
26760         search path.  Also, if a requested .la file cannot be found, try
26761         with the LTDL_SHLIB_EXTension instead.
26762
26763         * ltmain.in (old_archives, oldobjs): use find to SYMDEF here too
26764
26765         * Makefile.am (@DIST_MAKEFILE_LIST@): `$' must be doubled
26766
26767         * configure.in (AC_CONFIG_DIRS): configure only libltdl, and then,
26768         only if --enable-ltdl-install
26769         (CONF_SUBDIRS): list directories that are configured on demand,
26770         but that must be included in the distribution
26771         (ACINCLUDE_M4_LIST, DIST_MAKEFILE_LIST): generated from CONF_SUBDIRS
26772         * Makefile.am (AUTOMAKE_OPTIONS): added version 1.3e and
26773         readme-alpha, to handle README-alpha automatically
26774         (EXTRA_DIST): removed README-alpha
26775         (BUILD_SUBDIRS): subdirectories that are always built
26776         (SUBDIRS): BUILD_SUBDIRS plus BUILD_LTDL
26777         (DIST_SUBDIRS): BUILD_SUBDIRS plus CONF_SUBDIRS, from configure
26778         (all-local, check-local): depend on $(ACINCLUDE_M4_LIST), from
26779         configure, and libtool, so that it is built before subdirs
26780         (configure-subdirs): new target
26781         (configure-subdirs, distdir): depend on $(DIST_MAKEFILE_LIST),
26782         from configure
26783         (@DIST_MAKEFILE_LIST@): create subdir if needed, then run
26784         configure.
26785         On-demand configuration of subdirs at distribution time was
26786         suggested by Gary V. Vaughan <gary@gnu.org>
26787
26788         * libtool.m4, ltconfig.in (NM): search for NM in PATH before
26789         /usr/ccs/bin, /usr/ucb and /bin.  However, if the found one isn't
26790         BSD-compat keep searching.  If no BSD-compat is found, use the
26791         first we found.
26792
26793         * THANKS: added Raffaele Sena
26794
26795 1999-01-13  Raffaele Sena  <raff@aromatic.com>
26796
26797         * libltdl/ltdl.c: replaced RTDL with RTLD
26798
26799 1999-01-13  Manish Singh  <yosh@gimp.org>
26800
26801         * ltconfig.in (osf3*, osf4*, irix6*): include
26802         ${libname}{release}.so for library_names_spec
26803
26804 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
26805
26806         * configure.in (AC_CONFIG_SUBDIRS): added cdemo
26807         * Makefile.am (DIST_SUBDIRS): ditto
26808         (ACINCLUDE_M4_LIST): ditto
26809         * tests/Makefile.am (TESTS): added cdemo-shared.test
26810         * tests/cdemo-static.test: disable shared libraries here
26811         * tests/cdemo-shared.test: disable static libraries here
26812         * doc/libtool.texi (Test descriptions): added cdemo tests
26813         * THANKS: added Edouard G. Parmelan
26814
26815 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
26816
26817         * ltmain.in: fix convenience libraries when static libraries
26818         are disables.
26819         * cdemo/README, cdemo/Makefile.am, cdemo/configure.in, cdemo/foo.h,
26820         cdemo/foo1.c, cdemo/main.c, cdemo/.cvsignore, test/cdemo-conf.test,
26821         test/cdemo-make.test, test/cdemo-exec.test, test/cdemo-static.test:
26822         new tests for convenience libraries.
26823         * autogen, Makefile.am, test/Makefile.am: ditto.
26824
26825         * ltconfig.in, doc/PLATFORMS: Added support for NCR MP-RAS
26826         (i586-ncr-sysv4.3*) with native compiler.
26827         * README, doc/libtool.texi: Added note for NCR MP-RAS compiler.
26828
26829 1999-01-12  Thomas Tanner  <tanner@gmx.de>
26830
26831         * ltmain.in: before using LN_S remove the symlink
26832         * libltdl/ltdl.c: support multiple symbol lists, moved library-
26833           and file searching to separate functions, renamed "preload_libs"
26834           to "dl_dependency_libs", set the LT_SYMBOL_OVERHEAD to the correct
26835           value (7), fix to support lt_dlsym() for not-libtool modules again,
26836           check for invalid handles, when using strdup() check whether
26837           it fails
26838         * libltdl/ltdl.h: declare the lt_dlsymlist type for lt_dlpreopen()
26839         * mdemo/README: rewritten
26840         * mdemo/configure.in: check only for math.h (string.h is no longer
26841           necessary)
26842
26843 1999-01-12  Gary V. Vaughan  <gary@gnu.org>
26844
26845         * configure.in (ltdl-install): Fixed up the indentation so that
26846         `configure --help' is pretty again.
26847
26848 1999-01-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
26849
26850         * ltmain.in, NEWS, doc/libtool.texi: Added support for -R flag
26851         * ltmain.in, doc/libtool.texi: documented that -rpath is the same
26852         as -R for programs
26853         * ltmain.in: softened the instructions for linking with installed
26854         libraries, and noted that libtool can be used to link with them;
26855         documented that -rpath is not required for convenience libraries
26856
26857         * ltconfig.in (symxfrm): don't print $pipe_works twice, once for
26858         each $ac_symprfx
26859         Reported by Godmar Back <gback@cs.utah.edu>
26860
26861         * ltmain.in (convenience, libobjs): get only .o and .lo files from
26862         the files extract from the convenience library.  Some systems,
26863         such as FreeBSD2, will add a SYMDEF file, that is not an object
26864         file, and therefore should not be fed to the linker
26865
26866         * libtool.m4 (AM_SYS_NM_PARSE): while we are at it, we may well
26867         cache the value of ac_cv_sys_symbol_underscore
26868
26869         * libtool.m4 (AM_SYS_NM_PARSE): need for underscore prefix is now
26870         auto-detected, by trying first without, then with it.
26871
26872         * ltconfig.in: ditto
26873
26874 1999-01-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
26875
26876         * configure.in (AC_CONFIG_SUBDIRS): add libltdl, demo, mdemo and
26877         depdemo commented out, so that `dist' works before `check'
26878         (BUILD_LTDL): will contain libltdl if --enable-ltdl-install
26879         * Makefile.am (DIST_SUBDIRS): expand SUBDIRS and add depdemo,
26880         commented out
26881         (SUBDIRS): add $(BUILT_LTDL)
26882         * libltdl/Makefile.am (EXTRA_LTLIBRARIES): add libtest.la, the
26883         same as libltdl but always a convenience library.  Not built by
26884         default.  Both libraries now depend on the libtool script, that
26885         depends on ../libtool and is rebuilt when needed
26886         * mdemo/Makefile.am (mdemo, mdemo.debug): depend on and link with
26887         ../libltdl/libtest.la, that is rebuilt if needed
26888         (mdemo_LDADD): removed $(LIBADD_M), to avoid silent failures
26889         (foo1.la): renamed from libfoo1.la; test removing the lib prefix
26890         * mdemo/foo1.c: renamed libfoo1_LTX symbols to foo1_LTX
26891         * mdemo/main.c: don't include string.h nor math.h, nor refer to
26892         sin nor cos
26893         * tests/mdemo-exec.test: renamed libfoo1.la to foo1.la
26894         * tests/mdemo-inst.test: ditto
26895
26896         * libltdl/ltdl.c (FILENAME_MAX): use it instead of MAX_FILENAME,
26897         and don't redefine it if already defined; default to 1024, as on
26898         most systems
26899         (LT_SYMBOL_LENGTH): renamed from MAX_SYMBOL_LENGTH
26900         (LT_SYMBOL_OVERHEAD): new macro, that accounts for the size of
26901         the _LTX_ separator and the initial underscore
26902         (lt_dlsym): sym now points to a stack buffer (lsym) if possible,
26903         or is dynamically allocated.  If allocation fails, a
26904         buffer_overflow_error is returned.
26905
26906 1999-01-10  Thomas Tanner  <tanner@gmx.de>
26907
26908         * ltmain.in: define dld_preloaded_symbols if at least one of
26909           -export-dynamic, -dlopen or -dlpreopen was specified,
26910           do not include program objects in the symbol list
26911           if -export-dynamic was not enabled
26912         * libltdl/ltdl.c: limit symbols to max. 256 bytes
26913         * mdemo/Makefile.am: build libltdl in a subdirectory,
26914           do not use -export-dynamic for mdemo and mdemo.debug
26915         * tests/mdemo-conf.test,tests/mdemo-make.test,tests/mdemo-inst.test:
26916           do not check for libltdl
26917
26918 1999-01-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
26919
26920         * libltdl/ltdl.c (lt_dlopen): missing strlen in bound test
26921
26922 1999-01-09  Thomas Tanner  <tanner@gmx.de>
26923
26924         * NEWS: support for BSD/OS 4.x was not documented
26925         * demo/Makefile.am: link against libm only if available
26926         * mdemo/Makefile.am: likewise, use -avoid-versioning flag
26927           instead of -avoid-version (typo)
26928         * demo/configure.in: check for libm, string.h and math.h
26929         * mdemo/configure.in: likewise
26930         * depdemo/configure.in: check for libm and math.h
26931         * libltdl/configure.in: check for dlerror
26932         * libltdl/ltdl.c: check for buffer overflows, implemented
26933           dlerror, fixed a severe bug which occured when opening
26934           non-libtool modules, dlopen with the flags GLOBAL and NOW
26935         * mdemo/main.c: report the error using lt_dlerror()
26936
26937 1999-01-08  Gary V. Vaughan  <gary@gnu.org>
26938
26939         * doc/libtool.texi (old_archive_from_new_commands): Documented
26940         this ltcofig variable.
26941
26942 1999-01-07  Gary V. Vaughan  <gary@gnu.org>
26943
26944         * ltmain.sh (cygwin, allow_undefined): Unfortunately, there are
26945         problems with this variable when trying to make a dll which has
26946         undefined symbols, in which case not even a static library is
26947         built.  For now, we need to specify -no-undefined on the libtool
26948         link line when we can be certain that all symbols are satisfied,
26949         otherwise we get a static library.
26950
26951 1999-01-06  Thomas Tanner  <tanner@gmx.de>
26952
26953         * ChangeLog: merged in tests/ChangeLog
26954         * tests/ChangeLog: deleted
26955         * libltdl/ltdl.c: assigned copyright to the FSF
26956         * libltdl/ltdl.h, mdemo/foo*,main.c: likewise
26957
26958 1999-01-06  Gary V. Vaughan  <gary@gnu.org>
26959
26960         * ltmain.in (dllsearchpath): add absolute directory paths to
26961         dllsearchpath so that the wrapper scripts can be called from any
26962         directory (e.g. tests) on cygwin.
26963
26964         * ltconfig.in (cygwin, library_names_spec): revert Alexandre's
26965         change from yesterday to use `-dll.a' suffix.  That change caused
26966         $libname-dll.a to be a symlink to $soname, which isn't even an
26967         `ar' archive.  Before the import library suffix can be changed, we
26968         need to figure out how to handle building objects differently for
26969         linking with an import library versus an equivalent static library.
26970
26971         * TODO: Added details of a Linux wrapper script bug.
26972         Reported by Jeff Garzik <jgarzik@pobox.com>.
26973
26974 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
26975
26976         * ltmain.in (libobjs_save, oldobjs): when building an
26977         old-fashioned archive, use a copy of libobjs saved before
26978         convenience libraries are appended
26979
26980         * libltdl/ltdl.h (_LTDLL_EXPORT, _LTDLL_IMPORT): use cygwin or
26981         unix library import/export primitives; this may be convenient for
26982         people willing to create DLLs
26983         (_LTDLL_EXTERN): select _LTDLL_EXPORT or _LTDLL_IMPORT depending
26984         on _LTDL_COMPILE_
26985         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlpreopen): new function,
26986         that replaces the current preloaded_symbols list with its
26987         argument, and returns the old value, initially NULL
26988         (dldpre_init): don't refer to dld_preloaded_symbols any more
26989         (dldpre_open, dldpre_sym): search preloaded_symbols
26990         (lt_dlpreopen_default): call lt_dlpreopen with
26991         dld_preloaded_symbols, that is declared as extern; it should be
26992         called from the main program or from some static library without
26993         -no-undefined
26994         (lt_dlerror): new function, that returns the error message for the
26995         last error occurred; the error message is kept in the static
26996         variable last_error
26997         * libltdl/configure.in (enable-ltdl-install): moved back from
26998         enable-install; other packages might use enable-install already,
26999         better have fine grained control over this.
27000         * libltdl/Makefile.am (libltdls.la): discarded
27001
27002 1999-01-05  Thomas Tanner  <tanner@gmx.de>
27003
27004         * configure.in: do not configure libltdl by default
27005         * Makefile.am: do not build libltdl by default
27006         * libltdl/Makefile.am: ltdls.lo depends on libtool
27007         * tests/Makefile.am: before starting the tests
27008           make sure that libtool was build
27009         * tests/mdemo-conf.test: configure libltdl
27010         * tests/mdemo-make.test: build libltdl
27011
27012 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
27013
27014         * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
27015         would lose for files with embedded blanks.
27016
27017         * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
27018         ltdll.c into ltmain.in, to avoid its duplication, and added a sed
27019         script to extract it.  Also, create def and base files in $objdir,
27020         and don't remove them after the compilation.
27021         (cygwin, library_names_spec): Create static part of the dll with
27022         suffix -dll.a, to avoid conflicts with actual static libraries.
27023         * ltmain.in: Added ltdll.c, as commented out text
27024
27025 1999-01-01  Thomas Tanner  <tanner@gmx.de>
27026
27027         * NEWS: new BeOS support
27028         * THANKS: added Joseph Beckenbach
27029         * libltdl/ltdl.h: use dllimport/export on Win32
27030
27031 1998-12-31  Joseph Beckenbach III <jrb3@best.com>
27032
27033         * ltconfig.in: added support for BeOS
27034         * ltmain.in (shlibpath_var): added a workaround for
27035           an odd bug in the BeOS R4 sed
27036
27037 1998-12-31  Thomas Tanner  <tanner@gmx.de>
27038
27039         * verified all copyright notices
27040           and updated them to 1999
27041         * TODO: added some things that need to documented
27042         * doc/libtool.texi: -export-symbols is not
27043           supported on all platforms
27044         * doc/PLATFORMS: added a few new platforms
27045
27046 1998-12-30  Thomas Tanner  <tanner@gmx.de>
27047
27048         * NEWS: updated
27049         * THANKS: added Todd Vierling <tv@pobox.com>
27050
27051 1998-12-30  Todd Vierling  <tv@pobox.com>
27052
27053         * ltconfig.in: improved shared object handling on both
27054           a.out and ELF platforms for NetBSD
27055
27056 1998-12-29  Thomas Tanner  <tanner@gmx.de>
27057
27058         * ltconfig.in: do not rely on a leading space when concatenating
27059           variables as suggested by Erez Zadok
27060         * ltmain.in: likewise
27061         * doc/PLATFORMS: updated and reformatted
27062           (thanks to Erez Zadok for the testing)
27063
27064 1998-12-27  Thomas Tanner  <tanner@gmx.de>
27065
27066         * THANKS: added Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
27067
27068 1998-12-26  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
27069
27070         * ltconfig.in: support i486-ncr-sysv4.3.03
27071         shared libraries.
27072
27073         * ltmain.in: before every ln -s, remove the link name
27074
27075 1998-12-25  Thomas Tanner  <tanner@gmx.de>
27076
27077         * depdemo/configure.in: removed last relics of demo
27078         * depdemo/sysdep.h: ditto
27079         * mdemo/Makefile.am: ditto
27080         * libltdl/Makefile.am: fixed the version number, build libltdls if
27081           -enable-install and -enable-dlpreopen are enabled
27082         * libltdl/configure.in: libltdl is version 0.1, not 1.0,
27083           renamed -enable-ltdl-install to -enable-install,
27084           conditionals for libltdls, check for strchr and index,
27085           replaced NULL with 0
27086         * libltdl/ltdl.c: replaced NULL with 0, dlpreopen only if
27087           USE_DLPREOPEN was defined, integrated shl_load code from GModule
27088           (still untested)
27089
27090 1998-12-24  Gary V. Vaughan  <gary@gnu.org>
27091
27092         * libltdl/configure.in: fixup spacing in --enable-ltdl-install
27093         help string so that it lines up nicely for configure --help.
27094
27095         * ltmain.in (dllsearchpath): keep track of what the dll search path
27096         will need to be in the wrapper scripts as deplibs are calculated.
27097         Make sure the wrapper script doesn't end in `.exr', which makes
27098         win32 try to execute it as a binary!
27099         Add the contents of dllsearchpath to $PATH in the wrapper script.
27100         Use the relative path to the wrapped program so that the dll
27101         search path is calculated properly by win32 OSes.
27102         * TODO: removed the item for making wrapper scripts work on win32.
27103
27104         * TODO: removed the reference to making libltdl and demo work on
27105         win32.  They *do* work now that wrapper scripts are functioning.
27106
27107         * ltmain.in (file_magic_command): It turns out that if the
27108         file_magic_command generates huge output (e.g. running `objdump
27109         -f' over a large import lib [say libX11.a]) the expr to check it
27110         against the file_magic_regex blows up.  There is now an optimistic
27111         heuristic, to save only the first 10 lines of running
27112         file_magic_command which (at risk of sounding like Bill) should be
27113         enough for anyone =)O|.
27114
27115         * ltmain.in: Set the compile_dependencylibs and dllsearchpath for
27116         non-libtool libs, or else libdeps only works between ltlibs for
27117         cygwin32.
27118
27119 1998-12-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
27120
27121         * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
27122         long lines to sed
27123         * doc/libtool.texi (sed): very long lines are no longer a problem
27124
27125         * libltdl/Makefile.am: install libltdl conditionally...
27126         * libltdl/configure.in: ... if --enable-ltdl-install is issued
27127         * libltdl/ltdl.c: removed #ifdef DEBUG
27128         * mdemo/Makefile.am (mdemo_debug_LDADD, mdemo_debug_DEPENDENCIES):
27129         use libltdl.la
27130
27131 1998-12-23  Gary V. Vaughan  <gary@gnu.org>
27132
27133         * doc/PLATFORMS: added my cygwin32 box (i686-pc-cygwin32).
27134
27135         * TODO: remind myself of the win32 tasks remaining.
27136
27137         * ltconfig.in (archive_cmds, archive_sym_cmds,
27138         old_archive_from_new_cmds): Fixed a bug which left an a.exe in the
27139         build directory.  Fixed a bug where $soname-def was never deleted.
27140
27141         * ltconfig.in (file_magic_command): new variable holds the command
27142         (including any args) to run to generate the string to match
27143         against the regex in $file_magic.  Use the variable where
27144         necessary. Added to libtool header output.
27145         (deplibs_check_method): use file_magic for win32, but compare the
27146         output of `objdump -f' with the regex (see below).
27147         (archive_cmds, archive_sym_cmds): use compile_dependencylibs for
27148         each $CC invokation (see below).
27149
27150         * ltmain.in: Set allow_undefined to `no' for win32 variants by
27151         default, otherwise it is impossible to link a dll without forcing
27152         the makefile maintainer to figure out whether to pass
27153         --no-undefined at every libtool invokation.
27154         (compile_dependencylibs): save the list of dependency library
27155         flags needed for a deplib build on win32.
27156         (link_against_libtool_libs): commented out the check for this;  if
27157         it is left in, then ltlibs (i.e. *.la files) cannot be deplibs for
27158         subsequent links.
27159         Don't add -lc to the deplibs line for win32 platforms (which don't
27160         have a libc as such).
27161         (file_magic_command): use this to get some output to compare with
27162         the file_magic regex (instead of hardcoding `file' which doesn't
27163         exist on win32.
27164         * doc/libtool.texi (Porting inter-library dependencies): Updated
27165         to document the changes above.
27166
27167         * ltconfig.in (deplibs_check_method): Changed the file_magic regex
27168         to match more linux variants.  This is less lenient than Thomas
27169         Tanner's commit to fix the same problem below.
27170         Reported by Joel Klecker <espy@debian.org>
27171         * THANKS: added Joel Klecker <espy@debian.org>
27172
27173 1998-12-23  Thomas Tanner  <tanner@gmx.de>
27174
27175         * ltconfig.in: fixed file-magic for Linux shared libraries
27176         * ltmain.in: removed the unused -force-static flag
27177         * libltdl/ltdl.c: added strchr, search modules in LTDL_LIBRARY_PATH,
27178           check whether actual module was already dlopened,
27179           read in preload_libs rather than dependency_libs
27180
27181 1998-12-23  Thomas Tanner  <tanner@gmx.de>
27182
27183         * libltdl/Makefile.am: build two versions of libltdl:
27184           libltdl (support native dlopen if available, otherwise dlpreopen),
27185           libltdls (like libltdl, but always support for dlpreopen)
27186         * libltdl/ltdl.c: ditto
27187         * libltdl/configure.in: warn if dlopen is not supported
27188         * mdemo/Makefile.am (mdemo.debug): use libltdls
27189
27190 1998-12-22  Gary V. Vaughan  <gary@gnu.org>
27191
27192         * ltconfig.in: revert Thomas Tanners change to create all
27193         libraries without the `lib' prefix on win32, otherwise `gcc foo.c
27194         -lbar' can't find libbar.a.
27195
27196 1998-12-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
27197
27198         * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
27199         dependency hack
27200
27201 1998-12-21  Thomas Tanner  <tanner@gmx.de>
27202
27203         * ltconfig.in: indentation is now 8 character wide tabs
27204         * ltmain.in: ditto
27205         * ChangeLog: ditto
27206         * ltmain.in: renamed check_shared_deplibs_method to
27207           deplibs_check_method (we_dont_want_too_long_variable_names :)
27208         * doc/libtool.texi (Porting inter-library dependencies): ditto
27209         * depdemo/.cvsignore: renamed hell* to depdemo*, added *.lo,*.la
27210         * mdemo/.cvsignore: ditto
27211
27212 1998-12-21  Gary V. Vaughan  <gary@gnu.org>
27213
27214         * libtool.m4 (AM_SYS_NM_PARSE): apparently  __ptr_t is predefined
27215         on some systems - use lt_ptr_t instead.
27216         * ltconfig.in: ditto.
27217         * ltmain.in: ditto.
27218
27219         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): use an AC_SUBST to pass
27220         the result of this into the compile rather than AC_DEFINE which
27221         breaks when building with older versions of autoconf.
27222         * ltconfig.in (symxfrm): Don't put the leading underscore back
27223         with the global_symbol_pipe.
27224         * demo/dlmain.c (main): No need to specialcase underscores in
27225         dld_preloaded_symbols - it is fixed by symxfrm above!
27226         * libltdl/configure.in: use AM_SYS_SYMBOL_UNDERSCORE from
27227         libtool.m4 rather than reinvent the wheel here =)O|
27228
27229         * ltmain.in:  Fix deplibs methods to not rely on a.out (cygwin
27230         uses a.exe!).
27231
27232         * libltdl/configure.in: Cleanups - fix header comment and emacs
27233         local-vars.
27234
27235         * demo/dlmain.c (win32_force_data_import_address): a nasty hack
27236         to force the address of imported data symbols into
27237         dld_preloaded_symbols on win32, which does data imports
27238         differently to function imports (sheesh!).  This functionality
27239         needs to be moved into the dld_preloaded_symbols generation code.
27240         demo/helldl with static linking is broken on win32 by this change,
27241         probably until after libtool-1.3 =(O|
27242         * demo/foo.h: make sure __CYGWIN32__ is always defined on cygwin32
27243         systems.  Use the correct __declspec macro for lib exports/imports
27244         on cygwin32.
27245         * demo/foo.c, demo/hello.c: Make sure we tell foo.h that these
27246         sources are inside libfoo, and want to export symbols.
27247
27248 1998-12-20  Thomas Tanner  <tanner@gmx.de>
27249
27250         * autogen: configure demo, depdemo, libltdl and mdemo
27251         * tests/mdemo-exec.test: renamed hell* to mdemo*
27252         * tests/mdemo-inst.test: ditto
27253
27254 1998-12-19  Thomas Tanner  <tanner@gmx.de>
27255
27256         * libltdl/Makefile.am: build a normal libtool library
27257         * libltdl/ltdl.c: get LTDL_LIBRARY_PATH but don't make use of it yet,
27258           some reformatting
27259         * ltmain.in: fixed a bug which listed symbols in
27260           dld_preloaded_symbols twice
27261         * TODO: removed symbol export lists and deplibs
27262
27263 1998-12-18  Thomas Tanner  <tanner@gmx.de>
27264
27265         * ltconfig.in: added need_lib_prefix and need_version,
27266           which determine whether we must prefix modules with 'lib'
27267           and whether versioning is required for libraries.
27268         * ltmain.in: allow modules names without 'lib' prefix,
27269           new -avoid-versioning option
27270         * doc/libtool.texi (link flags): updated documentation for -module,
27271           added -avoid-versioning
27272         * doc/libtool.texi (libtool script contents):
27273           documented the two new flags and archive_sym_cmds
27274         * doc/libtool.texi (tests):
27275           added (partially very short) documentation for assign.test,
27276           nomode.test, quote.test, sh.test
27277         * libltdl/ltdl.c: canonicalize module names,
27278           some cleanups and bugfixes,  __ptr_t is predefined on
27279           some systems - use lt_ptr_t instead
27280         * mdemo/: renamed hell* to mdemo* (hell is already used in
27281           demo), updated the documentation, import sin and cos in main
27282           program rather than linking libfoo1 statically
27283
27284 1998-12-17  Gary V. Vaughan  <gary@gnu.org>
27285
27286         * libtool.m4 (AM_PROG_LIBTOOL): Added AC_PREREQ(2.12) to prevent
27287         people using libtool with old autoconfs that don't provide the
27288         features we need.
27289
27290 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27291
27292         * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
27293
27294         * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
27295
27296         * Makefile.am (cvs-dist): our release tags are in lower case
27297         (cvs-diff): ditto
27298         (EXTRA_DIST): added README-alpha
27299         * README-alpha: minor adaptations
27300         * demo/Makefile.am, mdemo/Makefile.am, depdemo/Makefile.am:
27301         removed comment about special needs for distribution
27302         * depdemo/Makefile.am: don't generate dependencies
27303         * depdemo/configure.in: modified version number
27304
27305         * ltmain.in (-force-static, force_static): removed
27306         * libltdl/Makefile.am (CFLAGS): ditto
27307         * libltdl/configure.in: check for memory.h, rindex() and
27308         dlpreopening.  Fixed NEED_USCORE caching policy.
27309         * libltdl/ltdl.h (lt_dlsym): make the name argument const
27310         * libltdl/ltdl.c (types): new variable: head of list of available
27311         dlopening mechanisms
27312         (lt_dltype_t): interface of a dlopening mechanism, with pointers
27313         to functions for init, exit, open, close and sym
27314         (lt_dlhandle_t): added pointer to interface type
27315         (strdup): don't name it strdup; it can be troublesome
27316         (strrchr): ditto; use rindex if available
27317         (LIBTOOL_STATIC): check HAVE_DLPREOPEN instead, and move to the
27318         end of the file, so that it becomes the header of the list
27319         (all): renamed all interface-implementation functions, to avoid
27320         name clashes, and created lt_dltype_t nodes for all of them
27321         (lt_dlinit): initialize all available interfaces; remove those
27322         that fail from the list.  Return failure only if no interfaces
27323         could be initialized.
27324         (lt_dlexit): return number of failures
27325         (tryall_dlopen): try to open the library with all available
27326         interfaces
27327         (lt_dlopen): use tryall_dlopen; increased size of fixed buffers.
27328         We should probably make these bound-checked or dynamically
27329         allocated for the final release!  Fix bug when filename did not
27330         contain slashes; should we check for `\\' too?  Try old_library if
27331         everything else fails.
27332         (lt_dlclose): use the interface type for closing
27333         (lt_dlsym): make `symbol' const, use interface type for looking up
27334         * mdemo/Makefile.am: moved mdemo/modules/* back into mdemo
27335         (SUBDIRS): removed
27336         (libfoo2_la_LDFLAGS): added -static; nice test.  However, since it
27337         causes -lm to linked into hell*, it causes tests that should fail
27338         to pass
27339         (noinst_HEADERS): no need to install foo.h
27340         * mdemo/configure.in: remove modules/Makefile
27341         tests/mdemo-exec.test: updated accordingly
27342
27343         * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
27344         maintainers.  Detailed expected failures of libltdl+mdemo.  Listed
27345         recent ports.  Added full URL for the home page.  Note that
27346         libtool C program is unusable.
27347
27348 1998-12-16  Bruno Haible  <haible@ilog.fr>
27349
27350         * doc/libtool.texi (Tested platforms): broken `sed' programs
27351
27352 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27353
27354         * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
27355         Tanner, now that they're AUTHORS
27356
27357 1998-12-16  Stephan Kulow  <coolo@kde.org>
27358
27359         * ltmain.in (freebsd-aout, freebsd-elf): added missing dot to
27360         versuffix
27361
27362 1998-12-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27363
27364         * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
27365         (libtool): automatically update
27366
27367         * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
27368         * libltdl/ltdl.c: include them
27369
27370         * demo/configure.in (BINARY_HELLDL): test whether dlopen is
27371         supported at configure time
27372         * demo/Makefile.am (helldl): use automake conditionals to build
27373         helldl as a script or as a binary program
27374
27375         * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
27376         (clean-local): don't clean libltdl any more
27377         * tests/ltdl-conf.test: removed
27378         * tests/ltdl-inst.test: ditto
27379         * tests/ltdl-make.test: ditto
27380         * tests/ltdl-unst.test: ditto
27381         * tests/mdemo-make.test: updated accordingly
27382         * tests/mdemo-inst.test: ditto
27383         * tests/mdemo-unst.test: ditto
27384         * doc/libtool.texi: ditto
27385
27386         * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
27387         only for -force-static; it should be removed soon, before people
27388         start to use it
27389
27390         * configure.in (AC_CONFIG_SUBDIRS): added libltdl
27391         * Makefile.am (SUBDIRS): build libltdl by default
27392         (DIST_SUBDIRS): simplify distribution of demo and mdemo
27393         (libtool, clibtool, libtoolize, ltconfig, ltmain.sh): add
27394         srcdir where appropriate
27395         (ACINCLUDE_M4_LIST): new rule for maintaining links from
27396         acinclude.m4 to libtool.m4
27397         (*demo/Makefile.in): don't update autoconf/automake files any
27398         more; make check is needed
27399
27400 1998-12-14  Gary V. Vaughan  <gary@gnu.org>
27401
27402         * ltconfig.in (archive_cmds): tweaked for cygwin b18->b20.1
27403         compatibility and fixed a bug with generating the export
27404         definitions file.  This is only tested on b20.1, but should
27405         work back to b18 at least.
27406
27407 1998-12-11  Thomas Tanner  <tanner@gmx.de>
27408
27409         * ltmain.in: -module implies now -export-dynamic,
27410           dlpreopen files if we're linking statically
27411         * doc/libtool.texi (link flags): added documentation for -module
27412           and the tests for mdemo and libltdl
27413         * mdemo/Makefile.am: replaced -dlpreopen with -dlopen
27414
27415 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
27416
27417         * PORTING: removed the text Akim Demaille converted to .texi
27418
27419 1998-12-09  Akim Demaille  <demaille@inf.enst.fr>
27420
27421         * doc/libtool.texi: converted inter-library dependencies
27422         instructions from PORTING
27423
27424 1998-12-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
27425
27426         * ltmain.in (convenience, deplibs): propagate dependencies
27427         * libltdl/Makefile.am (noinst_HEADERS): don't install ltdl.h yet
27428         (noinst_LTLIBRARIES): ditto for libltdl.la
27429
27430 1998-12-08  Gary V. Vaughan  <gary@gnu.org>
27431
27432         * README-alpha: adapted the release procedure from
27433           automake/HACKING.
27434         * Makefile.am: adapted the cvs-dist and cvs-diff rules from
27435           automake/Makefile.am.  I guess this is probably safe to use
27436           already, but I didn't test it as it tags the CVS tree.  If
27437           it needs tweaking, we'll find out come 1.2d.
27438
27439 1998-12-08  Thomas Tanner  <tanner@gmx.de>
27440
27441         * ltconfig.in: fixed some typos in archive_sym_cmds
27442         * ltmain.in: replaced basename with a sed expression
27443
27444 1998-12-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
27445
27446         * configure.in: we no longer use PRCS
27447
27448         * doc/libtool.texi (author): listed all the AUTHORS
27449         (Dlopen issues): added reference to libltdl, still undocumented
27450         (C++ libraries): it's not *that* simple, after all :-(
27451         (Inter-library dependencies): they're back!
27452
27453 1998-12-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27454
27455         * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
27456         work, use `test a = b' instead
27457
27458         * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
27459
27460         * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
27461         not available
27462
27463 1998-12-04  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
27464
27465         * ltconfig.in: Port to SCO UnixWare 7.x.
27466
27467 1998-12-03  Thomas Tanner  <tanner@gmx.de>
27468
27469         * ChangeLog: converted CR/LF back to CR format
27470         * ltconfig.in: new variable sys_lib_search_path for searching
27471         of installed libraries, export archive_sym_cmds and
27472         sys_lib_search_path
27473         * ltmain.in: use sys_lib_search_path, removed extradeplibs
27474         (they're not portable)
27475
27476 1998-12-02  Gary V. Vaughan  <gary@gnu.org>
27477
27478         * libltdl/configure.in: look for string.h or else strings.h, and
27479         also check for ANSI strrchr() function.  Fix `undescore before
27480         symbols' macro to not rely on a.out (cygwin uses a.exe!).  Fix
27481         `underscore for dlsym' to set cache variable properly, not just in
27482         environment of AC_DEFINE(NEED_USCORE).
27483         * libltdl/ltdl.h (__ptr_t): for K&R compatibility using char*.
27484         * libltdl/ltdl.c (strrchr): fallback function incase none is
27485         defined in libc.
27486         (trim, ltdlopen): replace rindex with ANSI strrchr.
27487         Add static function declarations so that we get type checking with
27488         ANSI compilers.  Use __ptr_t instead of void*.
27489
27490 1998-12-01  Thomas Tanner  <tanner@gmx.de>
27491
27492         * ltconfig.in: added -export-symbols support for GNU ld and
27493         Solaris (untested), archive_sym_cmds for -export-symbols
27494         * doc/libtool.texi, ltmain.in: -export-symbols is now
27495         independent from -export-dynamic and does not work for modules
27496         anymore
27497         * ltmain.in: added some checks for -export-symbols
27498         * mdemo/modules/Makefile.am: replaced -export-symbols with
27499         -export-dynamic since it doesn't work for modules
27500
27501 1998-12-01  Gary V. Vaughan  <gary@gnu.org>
27502
27503         * README: Updated homepage pointer to gnu libtool page.
27504
27505         * ltconfig.in (ltdll.c): update the ltdll.c file for cygwinb20.
27506         Based on code from Mumit Khan <khan@xraylith.wisc.edu>.
27507         (archive_cmds): correct typo libtool.c->ltdll.c.  Update shell
27508         commands for cygwin32.
27509
27510         * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): New macro; find out
27511         whether compiled symbols have an extra leading underscore.
27512         (AM_SYS_NM_PARSE): New macro (converted to m4 from ltconfig.in);
27513         find a sed expression to parse global symbols from the output of
27514         $NM.
27515         (AM_PROG_LIBTOOL): require AM_SYS_NM_PARSE and
27516         AM_SYS_SYMBOL_UNDERSCORE.
27517         * demo/dlmain.c (main): Remove a single leading underscore from
27518         compiled symbol names if necessary.
27519
27520 1998-12-01  Alexandre Oliva  <oliva@dcc.unicamp.br>
27521
27522         * config.guess, config.sub: imported from autoconf pre-2.13
27523
27524 1998-11-27  Gary V. Vaughan  <gary@gnu.org>
27525
27526         * libtool (AM_PROG_LD): Oops... we need to know the host_os for
27527         the changes below.  I'm not sure whether mingw32 and os2 support
27528         UNC paths, if they did we wouldn't need the check, we could use
27529         UNC paths on all three; or if the bug with $LD not being
27530         shell-meta escaped was fixed, we could use '\\' separators on all
27531         three. AC_REQUIRE'ed AC_CANONICAL_HOST.
27532
27533         * libtool.m4 (AM_PROG_LD): Cannonicalize the absolute path for the
27534         ld program;  The order is funny to provide canonicalization to
27535         paths with '\\' separators as well as '/'.
27536         * ltconfig.in: ditto.
27537
27538         * AUTHORS: Added myself as a co-maintainer.
27539
27540         * ltconfig.in (archive_cmds): The `;\' in a compound statement is
27541         expanded wrongly for cygwin32, mingw32, aix3 and aix4. Changed to
27542         `;'.
27543
27544 1998-11-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
27545
27546         * libtool.spec (URL): point to www.gnu.org
27547         (Source): point to ftp.gnu.org
27548
27549         * Makefile.am (EXTRA_DIST): removed libtool.prj
27550         Reported by Akim Demaille <demaille@inf.enst.fr>
27551
27552 1998-11-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
27553
27554         * ltconfig.in (echo): avoid shell error messages when we're
27555         testing for large command line support
27556         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
27557
27558         * doc/PLATFORMS: updated last-tested release for platforms I've
27559         got access to
27560
27561         * THANKS: added Chris P. Ross
27562
27563 1998-11-24  Chris P. Ross  <cross@eng.us.uu.net>
27564
27565         * ltconfig.in: added recognition of the dynamic linker on BSD/OS 4.x
27566         * README: added BSD/OS 4.x to the list of supported platforms
27567         * doc/PLATFORMS: added BSD/OS 4.x support for various host id's
27568
27569 1998-11-24  David Heine  <dlheine@truffle.Stanford.EDU>
27570
27571         * ltmain.in (pass_all): actively pass the flags
27572
27573 1998-11-24  Thomas Tanner  <tanner@gmx.de>
27574
27575         * depdemo: added inter-library dependencies demo (doesn't work yet!)
27576         * AUTHORS: added myself to the list of maintainers
27577
27578 1998-11-22  Thomas Tanner  <tanner@gmx.de>
27579
27580         * libltdl: added support for .la files, LGPL license,
27581         K&R compatibility, some API changes and bugfixes
27582         * ltmain.in: renamed -module flag (for compiling) to -force-static,
27583         define -DSTATIC when compiling static .o files,
27584         do not include directories in dld_preloaded_symbols
27585         * mdemo: modified mdemo to work with the new libltdl
27586         * tests/mdemo-exec.test, tests/mdemo-inst.test: use .la files
27587
27588 1998-11-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
27589
27590         * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
27591         header files defining it.
27592
27593         * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
27594         libraries with gcc -shared if using gcc without GNU ld.
27595
27596         * ltconfig.in: replaced occurrences of solaris2 with solaris, to
27597         prepare for Solaris 7
27598
27599 1998-11-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
27600
27601         * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen -> -dlopen
27602         (hell_LDFLAGS): added -export-dynamic and -dlopen
27603         (SUBDIRS, INCLUDES): added modules directory
27604         (foo1.c, foo2.c, foo.h, libfoo1.sym, libfoo2.sym): moved to modules
27605         * Makefile.am: ditto
27606         * tests/mdemo-exec.test, tests/mdemo-inst.test: libraries moved
27607         * mdemo/modules/Makefile.am: new file
27608
27609         * */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies
27610
27611         * ltmain.in: missing `test' between `&&' and `"$module"'
27612
27613         * ltconfig.in (echo_test_string): the whole ltconfig script was
27614         too much for DU4.0's ksh, but the first 50 lines will be enough.
27615
27616         * ltmain.in (installed): new variable defined within a .la file,
27617         so that libtool can now link already-installed libraries into a
27618         program.
27619         * NEWS: ditto
27620         * doc/libtool.texi (Linking executables): document it
27621
27622         * ltmain.in (output_objdir): compute it from $output, not $arg
27623
27624         * tests/mdemo-inst.test (libltdl): install it
27625         * tests/mdemo-unst.test (libltdl): uninstall it
27626         * tests/Makefile.am (TESTS): list ltdl-unst.test before mdemo-conf.test
27627
27628 1998-11-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
27629
27630         * NEWS: -module and libltdl
27631         * mdemo/Makefile.am: ../libltdl is within $(srcdir)
27632
27633 1998-11-18  Thomas Tanner  <tanner@gmx.de>
27634
27635         * libltdl, Makefile.am: added libltdl (a system independent
27636         dlopen wrapper library extracted from mdemo)
27637         * ltmain.in: added -module flag for compiling and linking of
27638         modules. If enabled it compiles always both .o (with -DLT_RENAME)
27639         and .lo files
27640         * mdemo: modified mdemo to work with libltdl
27641         * tests/ltdl*: added tests for libltdl
27642
27643 1998-11-16  Steve Price  <sprice@hiwaay.net>
27644
27645         * ltconfig.in: when $host_os is freebsd[23]* determine whether
27646         the current linker format is a.out or ELF
27647         * ltmain.in: add two new $version_type's, freebsd-aout and
27648         freebsd-elf, to support above change
27649
27650 1998-11-16  Stephan Kulow  <coolo@kde.org>
27651
27652         * ltconfig.in: extent no_builtin_flag to contain -fno-rtti and
27653         -fno-exceptions in case we compile with a gcc, that supports
27654         this options (egcs and gcc >= 2.8)
27655
27656 1998-11-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
27657
27658         * ltmain.in (C_compiler): copy $CC before it is overwritten with
27659         command-line compiler, so that we can use it to compile C sources
27660         generated during the build.  This fixes the problem that showed up
27661         with -export-dynamic of C++ programs in egcs 1.1.
27662         * NEWS: ditto
27663
27664 1998-11-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
27665
27666         * PORTING: Porting instructions are in the libtool manual already
27667
27668         * NEWS: Mention -export-symbols and new dlpreopen
27669
27670 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
27671
27672         * ltmain.in (IFS): revert Gary's patch when parsing version
27673         information; we still use `:' here :-)
27674
27675         * NEWS: updated
27676         * PORTING: new file, with general instructions and inter-library
27677         dependencies tips
27678
27679 1998-11-11  Gary V. Vaughan  <gary@gnu.org>
27680
27681         * ltconfig.in: make use of '~' field separator in reload_cmds,
27682         old_archive_from_new_cmds, old_archive_cmds, archive_cmds,
27683         old_postinstall_cmds, postinstall_cmds, old_postuninstall_cmds,
27684         postuninstall_cmds and finish_cmds, so that the semi-colons inside
27685         if/then/else/fi and for/do/done etc. do not break the eval loop in
27686         ltmain.in (below).
27687         * ltmain.in: changed all of the eval loops to use an IFS of `~',
27688         to allow differentiation between the end-of-statement-;
27689         (now `~' is used) and end-of-substatement-; (still `;').  This
27690         fixes AIX and win32 at least.
27691
27692 1998-11-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
27693
27694         * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
27695         prepended by the compiler
27696
27697 1998-11-10  Toshio Kuratomi  <badger@prtr-13.ucsc.edu>
27698
27699         * ltconfig.in: re-enable deplibs
27700         * ltmain.in: support deplibs, at least for GNU/Linux/x86
27701         Updated to current libtool by Thomas Tanner  <tanner@gmx.de>
27702
27703 1998-11-10  Gordon Matzigkeit  <gord@trick.fig.org>
27704
27705         * ltmain.in (link): Make the relink warning less harsh.
27706
27707 1998-11-07  William M. Perry  <wmperry@aventail.com>
27708
27709         * ltconfig.in (aix3, aix4): uniquify symbol names in archive_cmds
27710
27711 1998-11-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
27712
27713         * ltconfig.in: add --falback-echo, to be used if everything else
27714         fails.  The tests now check the behavior of $echo for very large
27715         strings, because some echo commands would just core dump (e.g.,
27716         Solaris' printf).  If too large strings fail, smaller ones are
27717         tested.
27718         (ltecho): arrange that, if the --fallback-echo method is selected,
27719         echo will be defined in the libtool script so as to re-run itself,
27720         not ltconfig
27721         * ltmain.in: add --fallback-echo
27722         (qecho) ensure that, if --falback-echo is being used, qecho is
27723         defined with the full pathname of the libtool script
27724
27725         * tests/sh.test (test X): ensure that the double-quote supposed to be
27726         reported is really reported
27727
27728 1998-11-07  Thomas Tanner  <tanner@gmx.de>
27729
27730         * mdemo/main.c: removed hardcoded library names; link against -lm
27731         * tests/mdemo-exec, tests/mdemo-inst: pass the library names
27732         to the program
27733
27734 1998-11-07  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
27735
27736         * README: Added DG/UX
27737         * doc/PLATFORMS: ditto
27738
27739 1998-11-04  Michael Tiemann  <tiemann@cygnus.com>
27740
27741         * ltconfig.in (irix6): it's a little bit different from irix5
27742
27743 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27744
27745         * THANKS: Added Thomas Tanner and Gary V. Vaughan
27746
27747         * ltconfig.in, ltmain.in: updated and fixed the patches below
27748
27749 1998-11-04  Thomas Tanner  <tanner@gmx.de>
27750
27751         * mdemo/*: added new demo to demonstrate building of dlopenend
27752         modules
27753         * tests/Makefile.am, tests/mdemo*: added some tests for mdemo
27754
27755 1998-11-04  Gary V. Vaughan  <gary@gnu.org>
27756
27757         * demo/configure.in: added AC_EXEEXT macro so that the tests can
27758         work on cywin32/mingw32 hosts.  This requires the current CVS
27759         autoconf
27760
27761 1998-11-04  Thomas Tanner  <tanner@gmx.de>
27762
27763         * ltmain.in: New flag -export-symbols; new dlpreopen system
27764         * demo/dlmain.c: removed dld_preloaded_symbol_count
27765
27766 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27767
27768         * ltmain.in: On installation, don't get confused if the same name
27769         appears more than once in the list of library names.
27770
27771 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27772
27773         * ltconfig.in: Add objext and libext variables.  Check for object
27774         suffix.  Check for mingw32* as well as cygwin32*.  Use objext when
27775         testing compiler.  Add support for Visual C++ on cygwin32 when not
27776         using gcc.  Add objext, libext, and fix_srcfile_path to generated
27777         libtool script.
27778         * ltmain.in: Use .${objext} rather than .o.  Use fix_srcfile_path
27779         if it is set.  Check for .obj as well as for .o, and for .lib as
27780         well as for .a.  Use .${libext} rather than .a when creating old
27781         libraries.
27782         * libtoolize.in: Change initial /bin/sh to @SHELL@.
27783         * libtool.m4 (AM_PROG_LIBTOOL): Add AC_REQUIRE for
27784         AC_CANONICAL_BUILD, so that autoconf doesn't get mixed up by the
27785         AC_REQUIRE in AC_CHECK_TOOL.
27786
27787 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27788
27789         * ltconfig.in: Look in the right directory for libtool.c in
27790         archive_cmds for cygwin32.
27791
27792 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27793
27794         * ltconfig.in: Fix cygwin32 support to avoid using a double
27795         extension, to delete the def file, to set version_type to windows,
27796         and to include versuffix in the DLL name.
27797         * ltmain.in: Add support for a version_type of windows.
27798
27799 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27800
27801         * ltconfig.in: Add cygwin32 support.
27802         * libtool.m4 (AM_PROG_LIBTOOL): Call AM_SYS_LIBTOOL_CYGWIN32 on a
27803         cygwin32 host.  Pass DLLTOOL and AS to ltconfig.
27804         (AM_SYS_LIBTOOL_CYGWIN32): New macro.
27805
27806 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27807
27808         * libtool.m4 (sco): fix typo
27809
27810 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27811
27812         * ltconfig.in: On AIX, don't treat GNU ld specially.
27813
27814 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27815
27816         * ltconfig.in (hardcode_minus_L): Revert Ian's patch for
27817         ltconfig.in.  Although -L hardcoding is not used with GNU ld, it
27818         does happen, so hardcode_minus_L must be set to yes.
27819
27820         * ltconfig.in (compiler_o_lo): check whether we can write directly
27821         to a .lo
27822
27823         * ltmain.in (compiler_o_lo): if not, write to .o and rename it
27824
27825 1998-11-04  Ian Lance Taylor  <ian@cygnus.com>
27826
27827         * ltconfig.in: For sunos4 using GNU ld, set hardcode_minus_L to
27828         no.
27829         * ltmain.in: Add some hacks to make SunOS --enable-shared work
27830         when using GNU ld.
27831
27832 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27833
27834         * THANKS: Added Marc J. Fraioli
27835
27836 1998-11-04  Marc J. Fraioli  <fraioli@dg-rtp.dg.com>
27837
27838         * ltconfig.in (dgux): new supported platforms
27839
27840 1998-11-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
27841
27842         * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
27843         available, fallback to not so safe mechanism, by setting
27844         need_locks to warn
27845         * ltmain.in (need_locks): when need_locks is set to warn, use the
27846         lockfile to try to fail in case of incorrect concurrent builds
27847
27848         * THANKS: Added Eric Estievenart
27849
27850 1998-11-04  Eric Estievenart  <eric@via.ecp.fr>
27851
27852         * doc/libtool.texi (Compile mode): Document that -o is fully
27853         supported.
27854
27855         * libtool.m4 (libtool-lock): new ARG_ENABLE; sets (need_locks)
27856         * ltconfig.in (disable-lock): control need_locks
27857         (hard_links): check whether hard-links can be used for locking
27858         * ltmain.in (need_locks): use $output_obj.lock for locking
27859
27860 1998-11-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
27861
27862         * ltmain.in: correctly create libraries and programs with
27863         directory components in their names
27864
27865 1998-11-03  Eric Estievenart <eric@via.ecp.fr>
27866
27867         * ltmain.in (output_obj): typo
27868
27869 1998-11-02  Ian Lance Taylor  <ian@cygnus.com>
27870
27871         * ltconfig.in: For sunos4, add ${libname}.so$versuffix to
27872         library_names_spec.
27873         * ltmain.in: For version_type of sunos, set versuffix even if
27874         -version-info was not used.
27875
27876 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
27877
27878         * ltmain.in (libobj): default value must not contain directory
27879         components
27880
27881 1998-11-02  Eric Estievenart <eric@via.ecp.fr>
27882
27883         * ltconfig.in (compiler): detect if the compiler supports
27884         -c and -o flags, create a variable compiler_c_o. Also issue
27885         a big warning if it is not supported
27886
27887         * ltmain.in (compile): enable the -o option as input for libtool.
27888         The objects are not moved if the compiler supports -o with -c.
27889         Sources and objects can contain relative directories.
27890         (link): enable the linking of executables into relative directories
27891
27892 1998-11-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
27893
27894         * AUTHORS: added myself as a co-maintainer
27895         * THANKS: and removed my name from here
27896
27897         * autogen: new script; run it to bootstrap libtool after checking
27898         it out from CVS
27899
27900         * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
27901         suggested by Robert Lipe <robertl@dgii.com>
27902
27903 1998-10-31  Gordon Matzigkeit  <gord@trick.fig.org>
27904
27905         * demo/Makefile.am (hc-libpath): Use parameters from the libtool
27906         in the top build directory, since the one in the demo directory is
27907         not guaranteed to exist.
27908
27909 1998-10-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
27910
27911         * demo/Makefile.am (objdir): there are no longer quotes around
27912         objdir in the libtool script
27913
27914 1998-10-27  Gordon Matzigkeit  <gord@trick.fig.org>
27915
27916         * ltconfig.in (dynamic_linker): Echo the result to fd 6, so that
27917         --silent works correctly.  From William M. Perry.
27918
27919 1998-09-24  Gordon Matzigkeit  <gord@trick.fig.org>
27920
27921         * ltmain.in (link): Fix problems when building only static
27922         libraries.  From Owen Taylor.
27923
27924 1998-08-20  Gordon Matzigkeit  <gord@trick.fig.org>
27925
27926         * ltmain.in (install): When library_names_spec has redundancies,
27927         avoid deleting the main library when installing symlinks.  From
27928         Jeff Dairiki.
27929         (link): Get rid of backticks in a here doc comment.
27930         This causes segfaults on Solaris 2.  From Aleksandar Bakic.
27931         (finish): Don't display messages
27932
27933         * ltconfig.in (archive_cmds): On HP-UX 9, make sure we don't try
27934         to move a file to itself.  From Jeff Dairiki.
27935
27936 1998-08-19  Gordon Matzigkeit  <gord@trick.fig.org>
27937
27938         * ltconfig.in: Make changes to accomodate ltmain.c.
27939
27940         * Makefile.am (clibtool): New target for the C version of libtool.
27941
27942         * ltmain.c: Experimental C version of libtool.
27943
27944 1998-07-10  Ian Lance Taylor  <ian@cygnus.com>
27945
27946         * ltmain.in (install): Test against both $SHELL and /bin/sh.
27947
27948 1998-06-30  Gordon Matzigkeit  <gord@trick.fig.org>
27949
27950         * ltmain.in: Convenience archive support.  From Ulrich Drepper.
27951
27952         * ltconfig.in (postinstall_commands): Change libraries to be
27953         executable on Solaris in order to prevent ldd from moaning.  From
27954         Julian Gosnell.
27955         (whole_archive_flag_spec): New variable to shortcut convenience
27956         archive expansion.  From Ulrich Drepper.
27957
27958 1998-06-11  Gordon Matzigkeit  <gord@profitpress.com>
27959
27960         * ltconfig.in, ltmain.in: Change globs to accept forward slashes
27961         in absolute directory names used on DOS-like systems.  From Robert
27962         S. Maier.
27963
27964 Thu May 28 18:59:08 1998  Ian Lance Taylor  <ian@cygnus.com>
27965
27966         * ltconfig.in: Use $SHELL when invoking shell scripts.
27967
27968 1998-05-21  Gordon Matzigkeit  <gord@profitpress.com>
27969
27970         * ltmain.in (compile): Don't have `-static' turn off libtool
27971         libraries, so that people can use it just to guarantee that `.o'
27972         files exist.  Suggested by David Mosberger-Tang.
27973
27974 1998-05-18  Gordon Matzigkeit  <gord@profitpress.com>
27975
27976         * ltmain.in (link): Possibly reexec the shell from within the
27977         wrapper script.
27978         Allow `-version-info' and `-release' to coexist again.  If people
27979         want to shoot themselves in the foot, I'd better let them do so,
27980         so that people who are smart enough not to can squeeze out another
27981         ounce of functionality.  From Tim Janik.
27982         (version_vars): Delete dead variable.
27983
27984         * ltconfig.in (hardcode_minus_L): FreeBSD 3.0 doesn't hardcode, at
27985         last.  Reported by Jason Nordwick.
27986
27987         * libtoolize.in, ltconfig.in, ltmain.in: Change a bunch of `if
27988         test ...; then : ; else ...' constructs to `if test ! ...; then
27989         ...', for clarity.
27990
27991 1998-05-17  Gordon Matzigkeit  <gord@profitpress.com>
27992
27993         * ltmain.in (LC_ALL, LANG): Save these values and restore them
27994         during execute mode.  From Pavel Kankovsky.
27995         (mode): Accept strace and truss as programs that throw us into
27996         execute mode.  From Pavel Kankovsky.
27997
27998 1998-05-07  Ian Lance Taylor  <ian@cygnus.com>
27999
28000         * ltconfig.in: Don't use .$versuffix or .$major.  Instead, assume
28001         the variable will include any required prefix.
28002         * ltmain.in: If no -version-info option was used, produce empty
28003         version strings rather than 0.0.0.  When making library symlinks,
28004         avoid making a symlink if the name would be the same.
28005
28006 1998-04-27  Gordon Matzigkeit  <gord@profitpress.com>
28007
28008         * ltmain.in (link): Support `unsupported' as a hardcode_action.
28009         Reported by Lars Hecking.
28010         (lib_linked): Do some sanity checking to make sure that we
28011         actually do link libtool libraries into the program to prevent the
28012         above problem from happening again.
28013
28014 1998-04-20  Gordon Matzigkeit  <gord@profitpress.com>
28015
28016         * ltmain.in: Maybe reexec under $SHELL, if $echo doesn't work.
28017         Reported by Lars Hecking.
28018
28019 1998-04-19  Gordon Matzigkeit  <gord@profitpress.com>
28020
28021         * Makefile.am (maintainer-rekey): New rule to force us to change
28022         Project-Version after we make a release.  This keeps all version
28023         numbers in sync, rather than branching just before the release.
28024         (maintainer-release, maintainer-checkin): Use maintainer-rekey.
28025
28026         * ltmain.in (finish): Notice when a finish command fails, so that
28027         we can add it to the list of recommendations.
28028
28029 1998-04-17  Gordon Matzigkeit  <gord@profitpress.com>
28030
28031         * libtool.m4 (AM_PROG_LIBTOOL): Append file descriptor 5 to
28032         config.log, so that configure doesn't clobber the messages that
28033         ltconfig put there.  From David Taylor.
28034
28035 1998-04-15  Gordon Matzigkeit  <gord@profitpress.com>
28036
28037         * ltconfig.in (archive_cmds): Try using `$CC -shared' when
28038         configuring for GCC under irix5 and irix6.  From Wolfram Gloger.
28039         (ofile): Add `--output' flag to change the name of the generated
28040         libtool.  Suggested by Wolfram Gloger.
28041
28042 1998-04-14  Gordon Matzigkeit  <gord@profitpress.com>
28043
28044         * ltmain.in: Remove all hardcoded references to ltmain.in in
28045         favour of $PACKAGE and $PROGRAM.
28046         (install): Compute the installation name for programs, in case we
28047         install a relinked file which has a different name.  Reported by
28048         Pieter Schoenmakers.
28049
28050         * ltconfig.in (echo): Try using the ksh(1) `print -r' builtin
28051         command, before reverting to printf(1).
28052
28053         * Makefile.am (libtool): Use $(SHELL) when invoking ltconfig.
28054
28055         * ltconfig.in (echo): Rewrite the test for a working echo so that
28056         we win on Solaris by avoiding printf(1), if possible.
28057
28058         * tests/quote.test (echo): Update the echo test from ../ltconfig.in.
28059
28060 1998-04-13  Ian Lance Taylor  <ian@cygnus.com>
28061
28062         * libtool.m4 (AM_PROG_NM): Don't override NM in the environment.
28063
28064 1998-04-13  Gordon Matzigkeit  <gord@profitpress.com>
28065
28066         * ltmain.in: New `--config' flag to print out all configured
28067         variables.
28068
28069         * libtool.m4: Pass ltconfig the undocumented --no-reexec flag,
28070         since we call it explicitly using CONFIG_SHELL.
28071
28072         * ltconfig.in: Restart the script under a different shell if
28073         CONFIG_SHELL is not /bin/sh.  This way, people can use Bash if
28074         they don't have a working echo program.
28075
28076         * ltmain.in, ltconfig.in: Use $SHELL instead of /bin/sh when
28077         generating executable scripts.
28078
28079         * libtoolize.in, ltconfig.in, ltmain.in: Implement the `--debug'
28080         flag to begin shell tracing.
28081
28082         * ltconfig.in (archive_cmds): Don't use `gcc -shared', even if we
28083         have GNU ld.  Reported by Robert S. Maier.
28084
28085 1998-04-06  Gordon Matzigkeit  <gord@profitpress.com>
28086
28087         * ltconfig.in (pic_flag): Create more than just a null C file, so
28088         that the SunPRO 4.2 cc doesn't complain.  From Bob Friesenhahn.
28089         (gnu_ld_acts_native): Delete this variable.  There is just too
28090         much version skew to try to pretend GNU ld is the same as the
28091         system ld.  Reported by Ian Lance Taylor.
28092         (hardcode_action): Don't bother relinking or aborting on systems
28093         that are too dynamic to have a consistent hardcode method.
28094         Reported by Doug Winterburn.
28095
28096 1998-03-24  Gordon Matzigkeit  <gord@profitpress.com>
28097
28098         * doc/libtool.texi: A little proofreading.  From Albert
28099         Chin-A-Young.
28100
28101 1998-03-23  Gordon Matzigkeit  <gord@profitpress.com>
28102
28103         * ltconfig.in: Treat HP-UX 11 just like HP-UX 10.  From Jeff Law.
28104
28105 1998-03-21  Gordon Matzigkeit  <gord@profitpress.com>
28106
28107         * ltconfig.in (reload_flag): Correct a tiny bug where `--silent'
28108         would still print out the reload flag.  From Stephan Kulow.
28109
28110 1998-03-20  Ian Lance Taylor  <ian@cygnus.com>
28111
28112         * libtool.m4: Use changequote to avoid problems with square
28113         bracket patterns.
28114
28115 1998-03-20  Gordon Matzigkeit  <gord@profitpress.com>
28116
28117         * Release 1.2.
28118
28119 1998-03-18  Gordon Matzigkeit  <gord@profitpress.com>
28120
28121         * ltmain.in: Rearrange some of the echos to make them more
28122         consistent.
28123
28124 1998-03-14  Gordon Matzigkeit  <gord@profitpress.com>
28125
28126         * ltmain.in: Break up an echo command that causes Solaris printf
28127         to dump core.  Apparently the Solaris people hardcoded a 2110-byte
28128         buffer into their printf(1).  Feh.  From John Judge.
28129
28130 1998-03-11  Gordon Matzigkeit  <gord@profitpress.com>
28131
28132         * ltconfig.in: Change the test for the PIC compiler flag so that
28133         we assume it doesn't work if there are any warning messages.  This
28134         fixes a bug using old GCC's on HP-UX.  Reported by Akim Demaille.
28135
28136 1998-03-10  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
28137
28138         * Makefile.am ($(srcdir)/ltconfig): Remove bogus command to create
28139         a file ltconfig in the build directory.
28140
28141 1998-03-09  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
28142
28143         * ltmain.in: Avoid unnecessary use of command substitution,
28144         replacing foo=`eval \\$echo \"$mumble\"` by eval foo=\"$mumble\".
28145
28146         (link): Use ${1+"$@"} in wrapper scripts in order to pass
28147         arguments safely to a program.
28148
28149         * ltconfig.in: Use -fpic instead of -fPIC if $host_cpu matches
28150         m68*.
28151
28152 1998-03-08  Gordon Matzigkeit  <gord@profitpress.com>
28153
28154         * Release 1.1.
28155
28156         * ltmain.in: <sigh> I like `here documents' a lot, but apparently
28157         they are so badly handled by old and buggy /bin/sh's, that
28158         replacing `cat <<EOF ... EOF' by `$echo "..."' improves libtool's
28159         speed by a factor of 5.  So, I've eliminated here docs from the
28160         all-important ltmain.in.  From Tom Lane.
28161
28162         * tests/tlibtool: Eliminate from distribution.
28163
28164         * tests/defs (libtool): Don't use tlibtool anymore, since we can now use
28165         the generated libtool directly.
28166
28167 1998-03-07  Gordon Matzigkeit  <gord@profitpress.com>
28168
28169         * ltconfig.in: Copy the contents of ltmain.sh into the generated
28170         libtool.  This should more than halve the execution times on old
28171         or buggy /bin/sh systems, such as HP-UX 9 and SunOS 4.1.4.  From
28172         Tom Lane.
28173
28174 1998-03-05  Gordon Matzigkeit  <gord@profitpress.com>
28175
28176         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): Add support for
28177         the `default' package, so that people can control unnamed
28178         packages.
28179         (LD): Only add an ABI flag under IRIX 6.x, since IRIX 5.x doesn't
28180         support them.  From Alexandre Oliva.
28181
28182 1998-03-01  Gordon Matzigkeit  <gord@profitpress.com>
28183
28184         * ltconfig.in: Port to UnixWare 2.x.  From Christopher Olsen.
28185
28186 1998-02-25  Gordon Matzigkeit  <gord@profitpress.com>
28187
28188         * ltmain.in (compile): For consistency, honour the `-static' flag
28189         during compilation.
28190
28191 1998-02-23  Brendan Kehoe  <brendan@cygnus.com>
28192
28193         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): For
28194         --enable-shared, heed the value of $PACKAGE from AM_INIT_AUTOMAKE
28195         if given as the argument for the library to be built shared.
28196
28197 1998-02-20  Gordon Matzigkeit  <gord@profitpress.com>
28198
28199         * libtool.m4, ltconfig.in (NM): Fix up a typo confusion between
28200         $ac_dir and $dir.  Reported by Akim Demaille.
28201
28202         * ltmain.in (link): Don't allow both `-version-info' and
28203         `-release'.  Reported by Danny Backx.
28204
28205 1998-02-18  Gordon Matzigkeit  <gord@profitpress.com>
28206
28207         * Makefile.am (noinst_SCRIPTS): Remove lineno from distribution.
28208
28209         * lineno: Remove from distribution, as it is no longer needed.
28210
28211         * Makefile.am ($(srcdir)/ltconfig.in, $(srcdir)/ltmain.sh):
28212         Rewrite these rules not to use config.status or lineno.  This
28213         makes things simpler, and reduces dependencies, so that the
28214         scripts are rebuilt and installed in srcdir only when necessary.
28215         Reported by Stephan Kulow.
28216
28217         * tests/sh.test (scripts): Remove the lineno script, since it is no
28218         longer distributed.
28219
28220         * tests/assign.test, if.test, test-e.test: Even though 15 tests looks
28221         impressive, these are now redundant.  Remove them from the
28222         distribution.
28223
28224         * tests/sh.test: Do what assign.test, if.test, and test-e.test used to
28225         do.
28226
28227 1998-02-16  Gordon Matzigkeit  <gord@profitpress.com>
28228
28229         * libtool.m4, ltmain.in, ltconfig.in: Correctly identify absolute
28230         directory names on MS-DOS.  Suggested by Bob Friesenhahn.
28231
28232         * ltconfig.in, ltmain.in, libtool.m4: Change a bunch of `sed N!d'
28233         commands to `sed Nq', for efficiency.
28234
28235         * ltmain.in: Only egrep the first few lines of files in order to
28236         determine if they were libtool-generated.  This prevents egrep(1)
28237         from taking forever to look at a 10MB binary on Solaris.  From
28238         Stephan Kulow.
28239
28240         * tests/defs: Correctly identify absolute directory names on MS-DOS.
28241         Suggested by Bob Friesenhahn.
28242
28243 1998-02-11  Gordon Matzigkeit  <gord@profitpress.com>
28244
28245         * ltconfig.in (no_undefined_flag): Add a flag to declare under
28246         Solaris that the library should not have any undefined
28247         references.  Suggested by Bob Friesenhahn.
28248
28249         * ltmain.in (mkdir): Fix one more mkdir race.  From H.J. Lu.
28250
28251 1998-02-08  Gordon Matzigkeit  <gord@profitpress.com>
28252
28253         * ltconfig.in, ltmain.in (striplib, old_striplib): Ditto.
28254
28255         * ltconfig.in (profile_flag_pattern): Get rid of dead code.
28256
28257 1998-02-07  Gordon Matzigkeit  <gord@profitpress.com>
28258
28259         * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): New macros to
28260         modify the `--enable-shared' and `--enable-static' defaults in the
28261         configure script.  This works a lot better than the old
28262         `enable_shared' and `enable_static' variables did.  Reported by
28263         Bob Friesenhahn.
28264
28265         * tests/suffix.test (extensions): Added GNAT (GNU Ada Translator)
28266         suffices, `.ada', `.ads', `.adb'.  From Samuel Tardieu.
28267
28268 1998-02-07  Samuel Tardieu  <sam@inf.enst.fr>
28269
28270         * ltmain.in: Recognize .ada, .ads and .adb as known suffixes (they
28271         are used by GNAT, the GNU Ada compiler).
28272
28273 1998-02-06  Gordon Matzigkeit  <gord@profitpress.com>
28274
28275         * ltconfig.in: Turn on IRIX shared libraries again!
28276
28277         * libtool.m4 (LD): Use file(1) to discover which ABI we're using
28278         on IRIX, and propagate the correct linker flag.  From Jim Wilson.
28279
28280         * ltconfig.in, ltmain.in (Xsed): `arg=-n; echo "$arg" | sed ...'
28281         gives problems, because the `-n' is interpreted as an option to
28282         echo(1).  So, use `echo "X$arg" | sed -e 's/^X//' ...' everywhere,
28283         via the $Xsed convenience variable.  Suggested by H.J. Lu.
28284
28285 1998-02-02  Gordon Matzigkeit  <gord@profitpress.com>
28286
28287         * ltconfig.in: Turn off IRIX shared library support until 32-bit
28288         and 64-bit ABI differences can be resolved.
28289
28290 1998-01-28  Gordon Matzigkeit  <gord@profitpress.com>
28291
28292         * libtool.m4 (LD): Reverse yesterday's change because `-old_ld'
28293         isn't accepted by GCC.
28294
28295 1998-01-27  Gordon Matzigkeit  <gord@profitpress.com>
28296
28297         * ltconfig.in (soname_spec): Add in user-specified release numbers
28298         for every host system that supports an soname that differs from
28299         the linkname.
28300
28301         * libtool.m4 (LD): Add `-old_ld' to the list of flags that need to
28302         be passed through on SGI.  Reported by Chris Lee.
28303
28304         * ltmain.in (release): Prepend a hyphen to the release number, and
28305         fix a typo because `-version-info' takes only 3 args.  From
28306         H.J. Lu.
28307
28308 1998-01-25  Gordon Matzigkeit  <gord@profitpress.com>
28309
28310         * ltconfig.in (library_names_spec): On Linux, use the
28311         user-specified release.
28312
28313         * ltmain.in (link): Allow the user to specify a release number for
28314         the library using the `-release' flag.  Suggested by H.J. Lu and
28315         Ian Lance Taylor.
28316
28317 1998-01-23  Gordon Matzigkeit  <gord@profitpress.com>
28318
28319         * tests/Makefile.am (TESTS_ENVIRONMENT): Export some important
28320         environment variables.  Reported by Ian Haggard.
28321
28322 1998-01-19  Gordon Matzigkeit  <gord@profitpress.com>
28323
28324         * ltconfig.in (old_postuninstall_cmds): Reorder so that chmod
28325         happens after ranlib.  From Markus F.X.J. Oberhumer.
28326
28327         * ltmain.in (mode): Added `gcc*' and `*-gcc*' to the patterns that
28328         recognize compilers.  From Pieter Schoenmakers.
28329         (link): Recognize `.a' files again.  Suggested by Pieter
28330         Schoenmakers.
28331
28332 1998-01-18  Gordon Matzigkeit  <gord@profitpress.com>
28333
28334         * ltmain.in (compile): Recognize `.asm' extension, for use with
28335         the nasm assembler.  From Markus F.X.J. Oberhumer.
28336
28337         * tests/suffix.test (extensions): Recognize `.asm'.  From Markus
28338         F.X.J. Oberhumer.
28339
28340 1998-01-12  Gordon Matzigkeit  <gord@profitpress.com>
28341
28342         * ltconfig.in (runpath_var): Use instead of
28343         `hardcode_runpath_var'.
28344
28345 1998-01-11  Gordon Matzigkeit  <gord@profitpress.com>
28346
28347         * ltmain.in (finish): Add a better --finish message.  Suggested by
28348         Kenneth Albanowski.
28349
28350         * ltconfig.in, ltmain.in: Fix a few typos.
28351
28352 1998-01-03  Gordon Matzigkeit  <gord@profitpress.com>
28353
28354         * ltmain.in (link): Quote the definition of $echo in the wrapper
28355         script.
28356
28357         * ltconfig.in (export_dynamic_flag_spec): Use `--export-dynamic'
28358         instead of `-export-dynamic', which is not accepted by all GNU
28359         ld's.  From Eiichi Takamori.
28360
28361         * ltmain.in (install): Don't print silly `library stripping'
28362         warnings.  Reported by François Pinard.
28363
28364 1997-12-19  Gordon Matzigkeit  <gord@profitpress.com>
28365
28366         * ltmain.in: Don't forget to quote the CDPATH substitution.  From
28367         Tor Lillqvist.
28368
28369 1997-12-18  Gordon Matzigkeit  <gord@profitpress.com>
28370
28371         * ltconfig.in, ltmain.in (CDPATH): Unset this environment variable
28372         so that HP-UX shells, at least, don't print out the directory name
28373         after a `cd' command.  From Tor Lillqvist.
28374
28375 1997-12-10  Gordon Matzigkeit  <gord@gnu.org>
28376
28377         * demo/Makefile.am (hardcode): Change a bunch of references to
28378         `$(LIBS)' to `-lm', since we no longer put -lm in LIBS.
28379
28380         * demo/configure.in: Delete the test for libm, since it is
28381         standard on every system.
28382
28383         * demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm,
28384         in accordance with new inter-library dependency code.
28385
28386         * ltmain.in (dependency_libs): Added to help people link programs
28387         without having to explicitly specify inter-library dependencies.
28388
28389         * ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3
28390         restriction to the generated libtool script.  Reported by Stefan
28391         Westerfeld.
28392
28393 1997-12-05  Gordon Matzigkeit  <gord@gnu.org>
28394
28395         * ltconfig.in (thisdir): Quote $echo in the generated libtool
28396         script for HP-UX.  From Markus F.X.J. Oberhumer.
28397
28398         * ltmain.in (link): Recognize the `.s' suffix.  From Markus
28399         F.X.J. Oberhumer.
28400
28401         * ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX
28402         because link_static_flag is never evaled.  From Eric Backus.
28403
28404         * tests/suffix.test (extensions): Recognize `.s'.  From Markus
28405         F.X.J. Oberhumer.
28406
28407 1997-12-01  Gordon Matzigkeit  <gord@gnu.org>
28408
28409         * demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our
28410         dependencies so that parallel builds work correctly.  From Jim
28411         Meyering.
28412
28413         * Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite
28414         these rules so that they are parallelizable.  Reported by Jim
28415         Meyering.
28416
28417         * ltconfig.in (ltecho): We need special handling to quote the
28418         `echo' variable itself.  From Alexandre Oliva.
28419
28420 1997-11-29  Gordon Matzigkeit  <gord@gnu.org>
28421
28422         * ltconfig.in (COLLECT_NAMES): Enable this workaround for a broken
28423         collect2 only on AIX 3.  This avoids problems on other AIX
28424         versions.  Reported by Stefan Westerfeld.
28425
28426         * ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds,
28427         except it is a single command which is evaled, and not shown.
28428
28429         * ltconfig.in: Port to AmigaOS.  From Joop van de Wege.
28430
28431         * ltmain.in (echo): Delete preamble to check for a working echo,
28432         since we just use the one included in the generated libtool.
28433
28434         * ltconfig.in (echo): Include this definition in the generated
28435         libtool script.
28436
28437 1997-11-28  Gordon Matzigkeit  <gord@gnu.org>
28438
28439         * ltconfig.in, libtool.m4 (NM): Add /usr/ccs/bin to the PATH
28440         before checking.  From Kaveh R. Ghazi.
28441         (NM): Delete an extraneous egrep from ltconfig.
28442
28443         * ltconfig.in (finish_cmds): Change back to using `ldconfig -n'.
28444         This makes Linux behave like other systems, which is more in line
28445         with what libtool needs.
28446
28447 1997-11-27  Gordon Matzigkeit  <gord@gnu.org>
28448
28449         * ltmain.in: Change a whole bunch of `progname' variables to
28450         `modename'.  This is for clarity, and to fix a tiny typo in finish
28451         mode.
28452
28453         * libtool.spec (Name, Version): Ditto.
28454
28455         * configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate
28456         the proper package name and version number.
28457
28458         * ltconfig.in (gnu_ld_acts_native): Treat GNU ld like the native
28459         linker on SunOS 4.x.  Suggested by Alexandre Oliva.
28460         (deplibs): Change the defaults all over, since most systems cannot
28461         handle inter-library dependencies.
28462
28463         * libtool.m4, ltconfig.in (NM): Only look at the first line of the
28464         output from NM when determining whether it supports a command line
28465         option.  This prevents false positives on OSes which ignore
28466         invalid flags, like HP-UX, which prints `nm: unknown option "B"
28467         ignored'.  Reported by Kaveh R. Ghazi.
28468
28469         * ltconfig.in (finish_cmds): On Linux, update ld.so.cache by
28470         removing the `-n' flag from ldconfig.  Suggested by Kenneth
28471         Albanowski.
28472
28473         * Makefile.am (maintainer-checkin, maintainer-release): New
28474         commands to reap the full benefit of using PRCS to maintain
28475         libtool version numbers.
28476
28477         * ltconfig.in, ltmain.in (global_symbol_pipe): Explicitly cast all
28478         addresses to __ptr_t.  This fixes a bug due to a strict IRIX
28479         compiler.  Suggested by Kaveh R. Ghazi.
28480
28481 1997-11-23  Gordon Matzigkeit  <gord@gnu.org>
28482
28483         * ltmain.in (echo): For aesthetics, avoid using `$echo' when
28484         `echo' will do *exactly* the same thing.  This prevents ugly
28485         `printf %s\n timestamp > some.lo' commands from appearing in the
28486         libtool output.
28487         (link): Delete the `-allow-undefined' flag because it is now the
28488         default.  Make `-no-undefined' in order for people to declare that
28489         a library is entirely self-contained.  This prevents maintainers
28490         from accidentally creating shared libraries that won't work on
28491         AIX.  Reported by Stefan Westerfeld and Danny Backx.
28492
28493         * ltconfig.in (echo): Use an echo variable, just as in ltmain.in,
28494         because we need it for quoting substitutions.  For most of the
28495         script, though, use the default echo, just like Autoconf does.
28496         Without this patch, character \001 ends up in global_symbol_pipe.
28497         Reported by Lars Hecking and Jürgen Fluk.
28498
28499         * ltmain.in (echo): Set default to `echo=echo'.  Ooops.  That's
28500         what you get for testing obscure code paths and forgetting to
28501         revert to the original version.  Reported by Danny Backx.
28502
28503 1997-11-14  Gordon Matzigkeit  <gord@gnu.org>
28504
28505         * ltconfig.in (hardcode_libdir_flag_spec): Set to `-R' for FreeBSD
28506         2.2.  From Sean Kelly.
28507         (postuninstall_cmds, old_postuninstall_cmds): Commands to run
28508         after uninstall mode deletes the libraries.  Suggested by Joop van
28509         de Wege.
28510         (export_dynamic_flag_spec): On HP-UX, add the `${wl}-E'
28511         export_dynamic_flag_spec.  Reported by Matthias Hoelzer.
28512
28513 1997-11-11  Gordon Matzigkeit  <gord@gnu.org>
28514
28515         * ltconfig.in, ltmain.in (sed_quote_subst): Oops.  We forgot to
28516         quote backticks.  Reported by Joop van de Wege.
28517
28518         * tests/quote.test: Add backticks to the backslashify test.
28519
28520 1997-11-09  Gordon Matzigkeit  <gord@gnu.org>
28521
28522         * ltconfig.in (symcode): On IRIX, don't extract undefined
28523         symbols.  When a function is inlined by G++, references to it are
28524         still marked as undefined in the object file.  This means that our
28525         symbol file causes undefined references, because there are
28526         actually no matching global symbols.  Reported by Paul Kendall.
28527
28528 1997-11-08  Gordon Matzigkeit  <gord@gnu.org>
28529
28530         * ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool
28531         script fragment to the generated libtool, rather than to stdout.
28532
28533 1997-11-07  Gordon Matzigkeit  <gord@gnu.org>
28534
28535         * libtool.m4 (LD): Add a more sophisticated test to determine the
28536         ABI flag on IRIX 6.  Suggested by Lars Hecking and Ian Lance
28537         Taylor.
28538
28539         * ltconfig.in, ltmain.in (COLLECT_NAMES): Only export this
28540         variable if we are running under AIX.  Otherwise, we tickle a g++
28541         bug under IRIX.  From Paul Kendall.
28542
28543         * Change bug reporting address to <bug-libtool@gnu.org>.
28544
28545         * ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a
28546         wildcard argument to `-expect_unresolved'.  From Stephan Kulow.
28547
28548 1997-11-06  Gordon Matzigkeit  <gord@gnu.org>
28549
28550         * ltmain.in (link): Use libname_spec.
28551
28552         * ltconfig.in (pic_flag): Somehow, the HP-UX pic_flag (`+Z') was
28553         dropped between libtool-1.0 and now.  Add it back in.  Reported by
28554         Akim Demaille.
28555         Integrated more patches for OS/2.  From Jeff Freedman.
28556         (libname_spec): New variable for OSes that don't require their
28557         libraries to look like `libNAME.a'.
28558
28559         * ltmain.in (link): Only use global_symbol_pipe if it has been
28560         defined.  From Stephan Kulow.
28561
28562         * ltconfig.in (global_symbol_pipe): Protect C fragment under C++
28563         compilers.  From Stephan Kulow.
28564
28565         * Makefile.am ($(srcdir)/acinclude.m4,
28566         $(srcdir)/demo/acinclude.m4): Change rules to use LN_S so that
28567         they can be run on any system.
28568
28569         * ltconfig.in (archive_cmds): For NetBSD, don't include deplibs.
28570         From Dieter Baron.
28571
28572         * ltmain.in (mkdir): Check that the directory doesn't exist before
28573         we exit with error, so that we don't get races during parallel
28574         builds.  From H.J. Lu.
28575         (fbsd_hideous_sh_bug): Apparently, some FreeBSD /bin/sh's have a
28576         bug that will empty base_compile unless we do this dummy
28577         assignment.  From Marc van Kempen.
28578
28579 1997-10-22  Gordon Matzigkeit  <gord@gnu.org>
28580
28581         * libtool.m4 (libtool_shared, libtool_static): Fixed logic error
28582         to reenable override of libtool's defaults by setting
28583         enable_shared or enable_static in configure.in.  Reported by Tom
28584         Tromey and Stephan Kulow.
28585
28586         * ltmain.in (link): Add explicit support for compiler options that
28587         begin with `+'.  Reported by Aubert Pierre.
28588
28589 1997-10-20  Gordon Matzigkeit  <gord@gnu.org>
28590
28591         * ltmain.in: Silly me.  Change a bunch of occurances of "* $dir *"
28592         into *" $dir "*.
28593
28594         * ltconfig.in (pic_flag): PIC is the default for AIX.  From Mark
28595         Kettenis.  It is also the default for OSF/1.
28596
28597         * demo/Makefile.am (objdir): Quote double-quotes.  From Mark
28598         Kettenis.
28599
28600         * ltconfig.in (global_symbol_pipe): This variable is not
28601         double-evaled, so it should not be double quoted.  From Mark
28602         Kettenis.
28603
28604 1997-10-19  Gordon Matzigkeit  <gord@gnu.org>
28605
28606         * ltconfig.in (LD): Same as below.
28607
28608         * libtool.m4 (LD): Set LD if we discover an absolute path to GNU
28609         ld.  This prevents breakage when `$CC -print-prog-name=ld' returns
28610         an absolute directory name.  Reported by Ulrich Drepper.
28611
28612         * ltconfig.in: Port to OS/2 using EMX.  From Jeff Freedman.
28613
28614         * ltmain.in (link): Use old_archive_from_new_cmds.
28615
28616         * ltconfig.in (old_archive_from_new_cmds): New variable to
28617         support DLL libraries.
28618
28619         * ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is
28620         not empty.  Reported by Stephan Kulow.
28621
28622 1997-10-18  Gordon Matzigkeit  <gord@gnu.org>
28623
28624         * ltconfig.in (objdir): Use the .libs directory on all systems for
28625         which that name is valid, and _libs on the others (like MS-DOS).
28626         Suggested by Juergen Erhard.
28627
28628 1997-10-14  Gordon Matzigkeit  <gord@gnu.org>
28629
28630         * ltmain.in (link): Added a bit more inter-language support to the
28631         symbol file generation process.
28632         Instead of complaining about unrecognized argument suffices, pass
28633         them to the linker.  This prevents libtool from barfing on
28634         mandatory arguments to linker flags.  Reported by Michael
28635         Tiemann.
28636
28637 1997-10-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28638
28639         * ltmain.in (link): Change the wrapper script to follow symlinks
28640         in order to find thisdir.  This should put the final nail in the
28641         coffin for problems with wrapper scripts.  From Ian Lance Taylor.
28642
28643 1997-10-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28644
28645         * ltmain.in: Change a few `$echo' commands into `$show' to make
28646         --silent mode behave as advertised.
28647
28648         * ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use
28649         `-expect_unresolved \*'.  From Christian Mondrup.
28650
28651         * ltmain.in (install): Change install mode to allow a specified
28652         /bin/sh argument at the beginning of the install_prog.  Also,
28653         specify the shell to run when invoking libtool recursively for
28654         finish mode.  From Chris Provenzano.
28655
28656         * libtool.m4 (LIBTOOL): Change definition to include $(SHELL).
28657         From Chris Provenzano.
28658
28659         * ltconfig.in: Port to UTS 4.x.  From Alistair Crooks.
28660
28661         * demo/Makefile.am (hc-libflag): Add rules to make this binary for
28662         hardcode.test.
28663
28664         * tests/hardcode.test (hardcode_libdir_flag_spec): Check the hardcoding
28665         properties of the flag_spec, too.
28666
28667 1997-09-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28668
28669         * ltconfig.in (LD): As with libtool.m4, don't override LD.
28670         Do a whole bunch of ac_t quoting.
28671
28672 1997-09-24  Ian Lance Taylor  <ian@cygnus.com>
28673
28674         * libtool.m4 (AM_PROG_LD): Don't override LD in the environment.
28675
28676 1997-09-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28677
28678         * libtool.m4, ltconfig.in (NM): Arguments to the for loop must be
28679         whitespace separated.  This fixes a bug under FreeBSD's /bin/sh.
28680         From George Scott.
28681
28682         * tests/defs, tests/Makefile.am (clean-local): Change =inst to
28683         _inst to fix portability on MS-DOS.  From Robert Hoehne.
28684
28685 1997-09-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28686
28687         * ltmain.in (deplibs): When building shared libraries, always add
28688         -lc to deplibs.  Reported by Andreas Jellinghaus.
28689
28690 1997-09-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28691
28692         * ltconfig.in, ltmain.in (COLLECT_NAMES): If the COLLECT_NAMES
28693         environment variable has not been set, set it to empty.  This
28694         apparently fixes the AIX bug with GCC's collect2.  Reported by
28695         Mark Kettenis.
28696
28697         * demo/Makefile.am, ltmain.in, tests/hardcode.test (objdir):
28698         Changed objdir variable .libs to _libs.  This is another MS-DOS
28699         portability fix.  Suggested by Robert Hoehne.
28700
28701         * tests/hardcode.test (objdir): New variable to simplify change from
28702         .libs to _libs (MS-DOS portability fix).
28703
28704 1997-09-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28705
28706         * ltconfig.in, ltmain.in (hardcode_minusL): Fix typo by renaming
28707         hardcode_minusL to hardcode_minus_L.  Also add FreeBSD
28708         hardcode_libdir_flag_spec. From Paul Traina.
28709
28710         * ltmain.in (link): Honour multiple `-rpath' flags when linking
28711         programs.  Suggested by Bengt Martensson.
28712         Quote appearances of $echo in the wrapper script.  From Alexandre
28713         Oliva.
28714
28715         * Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead
28716         of ltmain.sh.in.
28717
28718         * ltmain.in: Rename ltmain.sh.in to ltmain.in.  This fixes a
28719         portability problem (on MS-DOS, of all places!).  From Robert
28720         Hoehne.
28721
28722 1997-09-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28723
28724         * ltmain.sh.in (link): Do not transform libtool objects to regular
28725         objects if we did not build old libs.  Reported by Tomas Hiller.
28726
28727 1997-09-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28728
28729         * demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to
28730         hell.debug in order to reflect the new static linking semantics.
28731
28732         * ltmain.sh.in (link): Add new `-all-static' flag to prevent all
28733         dynamic linking.  The old `-static' flag just prevents dynamic
28734         linking against libtool libraries.  Suggested by Bengt
28735         Martensson.
28736
28737         * ltconfig.in (with_gnu_ld): Add a test to make sure that we are
28738         actually using GNU ld.  This fixes an inconsistency when running
28739         ltconfig without using libtool.m4.  Reported by Ulrich Drepper.
28740         (global_symbol_pipe): Delete symbols that are not valid C
28741         identifiers.  Reported by Johan Danielsson and Bengt Martensson.
28742
28743         * tests/demo-exec.test, tests/demo-inst.test: Change references from
28744         hell.static to hell.debug.
28745
28746         * tests/quote.test (echo): Add the same Digital Unix echo test fixes as
28747         the ones to ltmain.sh.in from Todd Kover.
28748
28749         * tests/if.test, tests/test-e.test (scripts): Add ../lineno to
28750         the scripts we check.
28751         * tests/if.test: Check for accidental use of test X$something rather
28752         than test "X$something".
28753
28754 1997-09-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28755
28756         * ltmain.sh.in (echo): Quote all the uses of `echo' in all eval
28757         statements.  Reported by Bengt Martensson and Alexandre Oliva.
28758         (echo): Need to surround test args with double quotes, or the echo
28759         test fails on Digital Unix 4.0.  From Todd Kover.
28760
28761 1997-08-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28762
28763         * ltmain.sh.in (echo): Change test to one that uses printf.
28764         This works on AIX, which has the same problems that Solaris does,
28765         but no working echo program.
28766
28767         * tests/quote.test (echo): Change test to version that uses printf.
28768         Be less strict about return results.
28769
28770 1997-08-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28771
28772         * ltmain.sh.in (link): Make sure that compile_command and
28773         finalize_command are always evaled.  Quote any unknown linker
28774         flags we need to pass through.
28775         (compile): Use quoting for flags we pass.
28776         (echo): I hate Sun!  The /usr/bin/echo on Solaris handles
28777         backslash sequences, which makes it impossible to do backslash
28778         quoting using echo and sed.  So, we search for an echo that obeys
28779         the `echo '\t'` = '\t' equality.  Then we use `$echo' everywhere
28780         in ltmain.sh.
28781         Put tabs back into the ${IFS=   } sequences.  Emacs untabify is
28782         libtool bane.
28783
28784         * ltconfig.in: Quote all variable values that may contain
28785         metacharacters creating the libtool script.  This provides
28786         complete protection, so that even single-quotes may appear inside
28787         a libtool variable value.
28788
28789         * ltmain.sh.in (link): Quote finalize_command before putting it in
28790         the wrapper script.
28791
28792         * tests/quote.test (echo): Add the test for a non-backslash-mangling
28793         echo.
28794
28795 1997-08-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28796
28797         * ltmain.sh.in (sed_quote_subst): Change the quoting procedure
28798         again.  I think that the new one is robust for *all* characters,
28799         including whitespace and metacharacters.
28800
28801         * tests/quote.test: New torture test for libtool metacharacter quoting.
28802
28803 1997-08-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28804
28805         * ltmain.sh.in: Change quoting procedure because some shells
28806         cannot handle `]' in scan sets.  From Ian Dall.
28807
28808 1997-08-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28809
28810         * ltmain.sh.in (execute): Added -dlopen flag handling.  Suggested
28811         by Alexandre Oliva.
28812
28813 1997-08-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28814
28815         * ltmain.sh.in (link): Change executable wrapper to fix up value
28816         of thisdir, as well as progdir, if the $0 path doesn't work.  This
28817         guarantees that shlibpath_var is set correctly.  Add support for
28818         execute mode.
28819
28820         * ltmain.sh.in (execute): New mode to automatically set
28821         shlibpath_var, which allows easy debugging of uninstalled
28822         executables and libraries.  Suggested by Kenneth Albanowski.
28823
28824 1997-08-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28825
28826         * Makefile.am ($(srcdir)/ltconfig): Use lineno.
28827
28828         * configure.in: Add AM_PROG_AWK for lineno.
28829
28830         * lineno: New program to automatically put line numbers in
28831         ltconfig.
28832
28833         * libtool.m4, ltconfig.in (AM_PROG_LD): Yet Another Rewrite, which
28834         incorporates the results of `gcc -print-program-name=ld'.
28835         Suggested by Alexandre Oliva.
28836
28837 1997-08-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28838
28839         * ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off
28840         command echoing.  From Juergen A. Erhard.
28841
28842         (compile): Recognize the Objective C `.m' extension.  From Juergen
28843         A. Erhard.
28844
28845         (compile): Suppress error output from the second compilation (if
28846         any) so that we don't get those frustrating duplicate error
28847         messages.
28848
28849         * tests/suffix.test (extensions): Added Objective C extension, `.m'.
28850
28851 1997-08-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28852
28853         * ltconfig.in: Added messages to config.log to describe what sort
28854         of test we are running.
28855         (pic_flag): Added a sanity check for pic_flag.  This should fix
28856         bugs reported using the cc bundled with HP-UX 10.  Suggested by
28857         Bruno Haible and Akim Demaille.
28858
28859 1997-08-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28860
28861         * ltmain.sh.in (link): Add -dlopen and -dlpreopen support for
28862         libtool objects.  This means that dlopened modules no longer need
28863         to be shared libraries.
28864
28865         * ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC.
28866         Reported by Ian Lance Taylor.
28867
28868         * libtool.m4 (LD): Always add `-n32' to the linker if we are using
28869         GCC on IRIX 6.  Reported by Ian Lance Taylor.
28870
28871 1997-07-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28872
28873         * libtool.m4 (AM_PROG_LIBTOOL): Explicitly check enable_shared and
28874         enable_static rather than just enableval.  This allows
28875         configure.in scripts to set their own defaults.  Suggested by
28876         Tommy Reilly.
28877
28878 1997-07-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28879
28880         * ltmain.sh.in: Add NLS environment variable handling copied from
28881         ltconfig.in.  Reported by Akim Demaille.
28882         (link): If allow_undefined_flag is not supported, then turn on old
28883         libraries.  Reported by Akim Demaille.
28884
28885         * demo/dlmain.c (main): Use dld_preloaded_symbol_count to display
28886         a message about the sortedness of the symbol table.
28887
28888         * ltconfig.in (nlist): Use an nlist convenience variable, so that
28889         code can be shared directly with ltmain.sh.in.
28890
28891         * ltconfig.in, ltmain.sh.in (dld_preloaded_symbol_count): Count up
28892         the number of symbols in the dld_preloaded_symbols.  Set to `-1'
28893         if the list wasn't both sorted and counted.  This allows
28894         applications to do a quick binary search, if they are so inclined.
28895
28896 1997-07-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28897
28898         * ltmain.sh.in (link): Remove code for `-version-file', since it
28899         has been long-deprecated.
28900
28901         Disable static linking if hardcode_direct is unsupported and there
28902         is no working link_static_flag.  This provides correct behaviour
28903         for all cases on AIX 3, regardless of whether collect2 is broken
28904         or not.  Reported by Mark Kettenis.
28905
28906         * ltconfig.in: Fix typo in test polarity.  From Mark Kettenis.
28907
28908 1997-07-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28909
28910         * ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses
28911         a broken collect2.  Adapted out of test results from Mark
28912         Kettenis.
28913         (link_static_flag): Make sure the link_static_flag actually works
28914         with a trivial binary.
28915
28916         * ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed
28917         from export_dynamic_flag because we eval it in ltmain.sh.
28918
28919         * ltmain.sh.in (link_static): Don't eval link_static_flag.
28920
28921         * demo/dlmain.c (main): Change function prototype to be KNR
28922         compatible.  From Kaveh R. Ghazi.
28923
28924         * ltmain.sh.in (link): Use no_builtin_flag.  This works around
28925         conflicting definitions of builtin functions with at least GCC.
28926         Reported by Kazuhiro Sasayama.
28927
28928         * ltconfig.in (no_builtin_flag): New flag to turn off builtin
28929         functions when compiling an object file.
28930         (pipe_works): Use it.
28931
28932         * tests/demo-exec.test (status): Use status variables so that we try to
28933         execute all the programs.
28934
28935 1997-07-23  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28936
28937         * ltconfig.in (pic_flag): According to the libg++ 2.7.2 configure
28938         script, DEC alpha CPUs are PIC-only, as well.  Reported by Kevin
28939         Jacobs.
28940
28941 1997-07-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28942
28943         * ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X;
28944         Y'" with "sed -e 'X' -e 'Y'".
28945
28946         * ltmain.sh.in (link): Finish full integration for `-dlopen' and
28947         `-dlpreopen'.
28948
28949         Fix two silly typos where I used a compile_command in place of a
28950         finalize_command, and vice versa.
28951
28952         Change the wrapper script to check a hardcoded path only if the
28953         argv[0] method fails.  This is a compromise for the previous two
28954         patches, and should solve the majority of problems with wrapper
28955         scripts.  From Kenneth Albanowski.
28956
28957         (link): Change a reference to hardcode_libdir_colon_separated to
28958         use the new hardcode_libdir_separator variable.
28959
28960         * demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and
28961         `-dlpreopen' for building helldl.
28962
28963         * demo/dlmain.c (main): Succeed, even if none of the libhello
28964         symbols have been preloaded.
28965
28966 1997-07-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28967
28968         * ltconfig.in (global_symbol_pipe): Add `U' to the accepted global
28969         symbol types.  This means that we will get duplicate symbols, but
28970         we'll also be sure to get all global symbols used by the program.
28971
28972         * ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make
28973         symbol output unique.
28974
28975 1997-07-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28976
28977         * ltconfig.in (pipe_works): Check to make sure our guessed
28978         global_symbol_pipe actually works.
28979
28980         * ltmain.sh.in (link): Revert change from Kenneth Albanowski.  The
28981         wrapper scripts are more reliable when they just use the argv[0]
28982         value.  Generally, when the argv[0] method doesn't work, the user
28983         is trying to do something weird with an uninstalled binary, and
28984         should try a different approach.
28985
28986         * ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of
28987         `$cc'.  This fixes a FreeBSD bug.  Reported by Chuck Robey, and
28988         others.
28989
28990 1997-07-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28991
28992         * ltmain.sh.in (link): In wrapper scripts, hardcode the current
28993         directory to prevent phony argv[0] values from screwing up our
28994         program.  From Kenneth Albanowski.
28995
28996 1997-07-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
28997
28998         * Makefile.am (demo_distfiles): Add demo/dlmain.c to the
28999         distribution.
29000
29001 1997-07-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29002
29003         * demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate
29004         `-dlopen' usage.
29005
29006         * demo/dlmain.c: New file to demonstrate preloaded modules.
29007
29008         * ltmain.sh.in (link): Add `-dlopen' flag to preload dynamic
29009         modules, even on static platforms.  Use `$NM' and
29010         `$global_symbol_cmd' to extract symbols from required files.
29011         (dlname): Delete dlname mode entirely.  It is rendered obsolete
29012         because the `.la' file format is now a public interface.
29013
29014         * ltconfig.in (NM): New variable for BSD-compatible nm program.
29015         (global_symbol_cmd): Pipeline to extract global symbols from the
29016         nm output.
29017
29018         * ltmain.sh.in: The .la file header should depend on `ltmain.sh',
29019         not `$PROGRAM'.
29020         (link): Make sure $export_dynamic_flag is eval'ed before it is
29021         used.
29022
29023         * tests/demo-exec.test, tests/demo-inst.test: Check the new
29024         helldl program, too.
29025
29026 1997-07-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29027
29028         * libtool.spec: New Red Hat Package Manager specification file in
29029         order to help people prepare distributions of libtool for Linux.
29030
29031         * ltmain.sh.in: Eliminate two accidental uses of the NONE magic
29032         value.  These were breaking libtool's behaviour when no mode is
29033         specified.
29034
29035         * tests/nomode.test: New test to make sure there is correct behaviour
29036         when we don't specify a mode.
29037
29038 1997-07-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29039
29040         * Release 1.0.
29041
29042         * ltconfig.in: On SunOS, append /usr/etc to the PATH before
29043         running ldconfig; on *BSD, append /sbin.  This was done in line
29044         with the Linux change suggested by Kenneth Albanowski.
29045
29046         * demo/Makefile.am (hardcode_tests): Aesthetic change to
29047         alphabetize order of compiling the hardcode tests.
29048
29049         * Makefile.am (EXTRA_DIST): Delete README-automake.
29050
29051         * README-automake: Remove from distribution.
29052
29053 1997-07-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29054
29055         * ltmain.sh.in (link): In the executable wrapper, strip trailing
29056         colons from the shlibpath_var because some ld.so's, notably
29057         OpenBSD 2.0's (!), don't parse colon-terminated values correctly.
29058         From Tim Pierce.
29059
29060 1997-07-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29061
29062         * ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic
29063         variable value.  Use an empty variable instead.
29064
29065         * ltconfig.in (with_gcc, with_gnu_ld): Do the tests for the C
29066         compiler and linker if the variables are unset, or if they are not
29067         GNU C and ld.
29068         (RANLIB): Eliminate redundant `if' statement.
29069
29070         * configure.in: Use AM_PROG_LD.
29071
29072         * libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU
29073         ld.
29074         (AM_PROG_LD): Rename AM_PATH_PROG_LD to AM_PROG_LD.  Parameterize
29075         so that the user can specify `--with-gnu-ld' or `--without-gnu-ld'
29076         to indicate his preference.
29077         (AM_PROG_LIBTOOL): Use it.
29078
29079 1997-06-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29080
29081         * ltconfig.in: Append /sbin to the path before running ldconfig on
29082         Linux.  This helps superusers who haven't set their PATH
29083         correctly.  Suggested by Kenneth Albanowski.
29084
29085         * tests/if.test: New test to make sure that we haven't forgotten to
29086         follow an `if' statement with a `test' command.  This should avoid
29087         the majority of hard-to-track bugs.
29088
29089 1997-06-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29090
29091         * ltmain.sh.in: Change all the `eval "$run ..."' sequences to
29092         `$run "eval ..."'.
29093
29094         Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'.
29095         This is the sequence recommended by the Autoconf manual, and
29096         should avoid any problems on older machines.  Eliminate all uses
29097         of `cp -p'.  Reported by Akim Demaille.
29098
29099         (install): Use `test $# -gt 0' instead of `test -n "$1"'.
29100
29101         * ltconfig.in (LN_S): Add test to see if `ln -s' works.
29102
29103         * libtool.m4: Increment serial number, and require AC_PROG_LN_S.
29104
29105 1997-06-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29106
29107         * ltmain.sh.in (link): Add missing `test' statement.  Reported by
29108         Akim Demaille.
29109
29110 1997-06-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29111
29112         * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of
29113         am_cv_path_ld.  From Tim Pierce.
29114
29115 1997-06-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29116
29117         * ltmain.sh.in: Redo two robustness fixes.  Alexandre had the
29118         correct approach, but I botched them.
29119
29120         * ltconfig.in (dynamic_linker): Disable shared libraries on
29121         MkLinux unless GNU libc is in use.  Reported by Akim Demaille.
29122
29123 1997-06-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29124
29125         * ltmain.sh.in (install): Add a missing `test' command.  Reported
29126         by Joel Weber.
29127         Miscellaneous fixes to improve robustness.  From Alexandre Oliva.
29128
29129         * tests/demo-conf.test (CONFIG_SITE): Set to /dev/null, so that the
29130         config.site file doesn't mess up our prefix.  Reported by Joel
29131         Weber.
29132
29133         * tests/demo-inst.test: Always run both hell.static and hell.
29134
29135         * tests/demo-conf.test: Always remove the local config.cache, but run
29136         `make distclean' only if the Makefile exists.  Otherwise, the demo
29137         directory is not cleaned up if a user uses their own config.cache.
29138         Reported by Joel Weber.
29139
29140 1997-06-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29141
29142         * ltmain.sh.in (link): Create invalid libtool objects when partial
29143         linking if we don't have PIC.  From Jeff Dairiki.
29144         (install): Fix bug if libtool object is installed to a file name
29145         without directory components.  From Jeff Dairiki.
29146
29147 1997-06-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29148
29149         * Makefile.am (demo/configure): Fix up rules to run autoconf.
29150         (aclocal.m4): Now we depend on our own libtool.m4.
29151
29152         * configure.in (AM_PATH_PROG_LD): Use it.
29153
29154         * libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used
29155         by the C compiler.
29156         (AM_PROG_LIBTOOL): Use it.
29157
29158         * ltmain.sh.in (install, uninstall): Support installing and
29159         uninstalling `.lo' files.  From Jeff Dairiki.
29160
29161 1997-06-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29162
29163         * Makefile.am (ltconfig, ltmain.sh): Only move if $(srcdir) is not
29164         the current directory.  Don't regenerate every time the package is
29165         reconfigured.  Reported by Tom Tromey.
29166         (MAINTAINERCLEANFILES): Added ltconfig, ltmain.sh, so that
29167         $(srcdir) is not messed with during a regular clean.
29168
29169 1997-06-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29170
29171         * Makefile.am (ltconfig, ltmain.sh): Be sure to move these files
29172         into $(srcdir) once they are created.
29173
29174         * ltmain.sh.in (link): Disable building static libraries.
29175         People should use their favourite AR and RANLIB commands.
29176         Disable building old-style objects if `--disable-static' is
29177         given.  Suggested by Tom Lees and Stephan Kulow.
29178
29179 1997-06-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29180
29181         * ltconfig.in (host_cpu, host_vendor, host_os): Patch up
29182         definitions, to allow for the fact that the host_os may contain
29183         hyphens (as in linux-gnu).  From Scott Goehring.
29184
29185         * ltmain.sh.in (link): Move the `dlname' setting closer to the top
29186         of the file.  Suggested by David Mosberger-Tang.
29187         Symlink the libtool archive into the `.libs' directory so that it
29188         can be found by programs that want to find a library's dlname by
29189         searching LD_LIBRARY_PATH.  Reported by David Mosberger-Tang.
29190
29191 1997-06-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29192
29193         * Tell people to report bugs to the new libtool mailing list,
29194         <bug-libtool@gnu.ai.mit.edu>.
29195
29196 1997-06-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29197
29198         * ltconfig.in (allow_undefined_flag): New variable that implements
29199         `-allow-undefined'.
29200         (archive_cmds): Enable C++ constructors for FreeBSD 2.2.  From
29201         David Nugent.
29202
29203         * ltmain.sh.in (link): Accept new `-allow-undefined' flag when
29204         building libtool libraries.  This tells libtool to allow
29205         unresolved symbols to exist in shared libraries.  Basically, this
29206         turns off shared libraries on AIX.  Suggested by Ian Lance Taylor.
29207
29208 1997-05-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29209
29210         * libtool.m4 (LD): On at least IRIX, many different flags need to
29211         be propagated to the linker if they are part of the compiler
29212         command line.  Reported by Anthony Green.
29213
29214 1997-05-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29215
29216         * ltconfig.in: Trivial port to FreeBSD 3.  From David Nugent.
29217
29218 1997-04-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29219
29220         * ltmain.sh.in (link): Remove all traces of `-whole-archive',
29221         `-no-whole-archive', and libtool convenience libraries.  They were
29222         more trouble than they're worth.  If these are ever reimplemented,
29223         they need more careful attention to make portable.
29224
29225         * libtool.m4, ltconfig.in: Added a `--disable-static' flag to turn
29226         off static library creation.  From Tom Lees (who finally convinced
29227         me that it was the Right Thing to do).
29228
29229 1997-04-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29230
29231         * ltmain.sh.in (hardcode_runpath_var, runpath_var): Use them, if
29232         the linker has no -rpath flag.
29233         Quote the values we use to set runpath_var and shlibpath_var.
29234         (link): Use libobjlibs for libtool convenience libraries.
29235
29236         * ltconfig.in (hardcode_runpath_var, runpath_var): Add new
29237         variables to describe linkers that honour `LD_RUN_PATH'.
29238         (host_cpu, host_os): Use these more specific variables, rather
29239         than the full canonical host system name.
29240
29241         * ltmain.sh.in (dlname): Distinguish between missing
29242         `-export-dynamic' and when the library is only statically linked.
29243
29244 1997-04-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29245
29246         * ltconfig.in: Trivial port to OpenBSD by making it an alias for
29247         NetBSD.  From Tim Pierce.
29248
29249 1997-04-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29250
29251         * ltconfig.in: Temporary measures to check for a broken collect2
29252         program.  Right now, we just see if we're using GCC on AIX 3.
29253
29254         * tests/hardcode.test: AIX also has arbitrary limits on the line length
29255         of input to fgrep(1), so we need to translate NUL characters to
29256         newlines in order to properly detect embedded `.libs'.  From Bruno
29257         Haible.
29258         Also redirect stderr to /dev/null, so that AIX users don't get
29259         worried by `fgrep: Maximum line length of 2048 exceeded.'.
29260
29261 1997-04-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29262
29263         * ltmain.sh.in (mode): Use `egrep -e' when inferring the operation
29264         mode.
29265
29266 1997-04-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29267
29268         * ltconfig.in (linker): Some GNU ld's don't accept `--version',
29269         but do accept `-v'.  From Jukka Honkela.
29270         (ld_shlibs): AIX lossage may be settling down.  AIX 3.2.5 ld does
29271         *not* hardcode direct libraries, but AIX 4.1.[45] ld does.
29272
29273 1997-04-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29274
29275         * ltconfig.in (hardcode_action): Fix silly logic error.  From
29276         Bruno Haible.
29277
29278 1997-04-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29279
29280         * ltmain.sh.in (install): Relink if hardcode_action is `relink',
29281         rather than using complex conditionals based on the other
29282         hardcode variables.
29283
29284         * ltconfig.in (hardcode_action): Set to `relink', not `immediate',
29285         if we can only hardcode existing directories.  Rearrange
29286         conditionals to make the intent clearer, otherwise this can be one
29287         hellish piece of code for the already-dizzy libtool maintainer.
29288
29289 1997-04-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29290
29291         * replfunc.m4: Delete from the distribution.  Documentation now
29292         describes how to set LTALLOCA and LTLIBOBJS in your own
29293         configure.in.
29294
29295         * ltmain.sh.in (link): Make sure a libtool library only counts as
29296         a shared library if its library_names are non-null.
29297         Use timestamps for .lo's when PIC is turned off, rather than
29298         symlinking to the real object.  This helps invalid mixtures of PIC
29299         and non-PIC to fail.
29300
29301 1997-04-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29302
29303         * Makefile.am (EXTRA_DIST): Distribute libtool.prj.
29304
29305         * Shameless plug: Changed source code management system from CVS
29306         to PRCS.
29307
29308         * libtool.scm: Initial Guile implementation of libtool.
29309
29310         * ltmain.sh.in: An unexpected inconsistency in my whole approach
29311         to shared libraries has proven that libtool needs to be completely
29312         rewritten if I'm going to give full shared library support for
29313         platforms that don't use the GNU C library version 2 (which to my
29314         knowledge currently only works on GNU Hurd and Linux/GNU systems).
29315         Porting the GNU C library should not be difficult, though.
29316
29317         Platforms that don't have the dlopen(3) family of functions will
29318         need to install GNU DLD version 4 in order to build any kind of
29319         libraries at all.  Unfortunately, DLD 4 won't be released for a
29320         while, because I maintain it, and I'm too busy working on libtool.
29321
29322         I'll keep the old ltconfig/ltmain.sh implementation around for as
29323         long as I can, and continue applying bug fixes, so that I'll have
29324         a reasonable starting point for this new libtool implementation.
29325
29326         It looks like this implementation will be even more complex than
29327         the original (pre-0.7) libtool.  Initial estimates show that it
29328         may be up to 3 times slower, and 5 times larger than libtool-0.9.
29329         I'll probably have to rewrite it in Guile to get reasonable
29330         performance, which will severely limit its portability for a
29331         while.
29332
29333         That will also introduce a bootstrapping issue, since the next
29334         release of Guile will use libtool to build shared libraries.  So,
29335         if users want to have shared Guile libraries, they will have to
29336         configure Guile with `--disable-shared', compile it, install it,
29337         then reconfigure Guile with `--enable-shared' and repeat.
29338
29339         I was hoping to get libtool 1.0 out the door by early April, but
29340         now it looks like it will take at least another year before it'll
29341         be usable by the public at large.  April fools.  libtool.scm
29342         doesn't exist yet, either.
29343
29344         * ltconfig.in (verify_host): Remove redundant `Transform *-*-linux*
29345         to *-*-linux-gnu*'.  From Bruno Haible.
29346
29347         * tests/hardcode.test: AIX 3 doesn't have strings(1) so we need to do a
29348         funny tr and pipe the output to fgrep.  From Bruno Haible.
29349
29350 1997-03-31  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29351
29352         * Makefile.am: Use the new AUTOMAKE and ACLOCAL variables.
29353
29354         * ltmain.sh.in (link): Only fail if a convenience library doesn't
29355         exist, and the user specified -whole-archive.
29356         Fix shell quoting that was breaking @OUTPUT@ substitution.
29357
29358 1997-03-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29359
29360         * ltmain.sh.in (link): Use the hardcode_libdir_separator.
29361         Convenience libraries are libtool objects if we're not building
29362         libtool libs.
29363
29364         * ltconfig.in (hardcode_libdir_separator): Added in case the
29365         linker only honours the last of the -rpath flags (but it can
29366         contain multiple colon-separated directories), such as on OSF/1.
29367         Reported by Carl D. Roth.
29368
29369         * ltmain.sh.in (link): Set the dlname if -export-dynamic is given.
29370         (install, uninstall): Handle the dlname file separately.
29371
29372         * ltconfig.in (export_dynamic_flag): Added to allow programs to
29373         use reflexive dlopens.
29374
29375         * ltmain.sh.in: Include the mode name in any help messages.
29376         (dlname): New mode to give the name to be used with dlopen(3).
29377
29378         * ltconfig.in (AR): Allow AR to be set by the user, and export it
29379         to ltmain.sh.
29380
29381         * ltmain.sh.in: Remove broken profiled library support.
29382         Added `-whole-archive' and `-no-whole-archive' to manipulate
29383         convenience libraries.
29384
29385 1997-03-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29386
29387         * ltmain.sh.in (link): Allow the creation of static convenience
29388         libraries made of libtool objects.  Suggested by David
29389         Mosberger-Tang.
29390
29391 1997-03-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29392
29393         * ltconfig.in: On AIX, libtool also needs to look for `B' symbols
29394         in nm output.  These are global variable definitions.
29395
29396         * ltmain.sh.in: Linking with -static should link against the
29397         linklib if old_library is empty (like it is on AIX).
29398
29399         * ltconfig.in: Change the order of OS detection, so that
29400         linux-gnu* is detected before gnu*.
29401
29402         * Makefile.am (libtool): Use the correct CC, RANLIB, LD, when
29403         generating libtool.  From Carl D. Roth.
29404
29405         * configure.in: Find out the user-supplied CC, LD, RANLIB.  From
29406         Carl D. Roth.
29407
29408 1997-03-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29409
29410         * ltmain.sh.in: Linking with -static should link against the old
29411         library, not linklib.
29412
29413         * README-automake: Updated to point to Automake 1.1m.
29414
29415 1997-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29416
29417         * demo/main.c: Use it.
29418
29419         * demo/foo.h: Declare it.
29420
29421         * demo/foo.c: Added definition of `nothing' so that we have an
29422         global variable definition, as well as functions.
29423
29424 1997-03-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29425
29426         * ltconfig.in: Make sure either enable_shared or enable_static is
29427         configured.  Reported by Tom Tromey.
29428
29429         * ltmain.sh.in: Bomb out if no library types are configured.
29430
29431 1997-02-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29432
29433         * ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed
29434         from `hardcode_libdir_flag'.
29435         (library_names_spec): Renamed from `lib_names'.
29436
29437         * ltconfig.in, ltmain.sh.in (hardcode_action): Change value from
29438         `rpath' to `immediate'.
29439
29440         * replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and
29441         AM_STRUCT_ST_BLOCKS.
29442
29443 1997-02-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29444
29445         * ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support
29446         old-style config.guess scripts.
29447
29448 1997-02-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29449
29450         * ltmain.sh.in: Create objdir *before* linking a program into it.
29451
29452 1997-02-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29453
29454         * ltconfig.in: Any ld --version that returns GNU is probably a GNU
29455         ld.  From Marcus Daniels.
29456
29457         * libtool.m4: Added AM_REPLACE_FUNCS.
29458
29459 1997-02-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29460
29461         * ltconfig.in: Trivial port to *-*-osf4.  From Bruno Haible.
29462
29463 1997-02-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29464
29465         * ltconfig.in: AIX 3 and 4 ld only hardcodes LIBPATH if -L is not
29466         specified.  This behaviour is the same with both xlc and gcc.
29467
29468 1997-02-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29469
29470         * doc/platforms.texi: Yaay!  We found a workaround for HP-UX
29471         /bin/sh buffer overflows.  From Eric Backus.
29472
29473 1997-02-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29474
29475         * Release 0.9.
29476
29477         * PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am:
29478         Move PLATFORMS to doc/platforms.texi.
29479
29480         * ltmain.sh.in (link): Use hardcode_libdir_flag to get a library
29481         directory into the resulting binary.
29482         Use hardcode_action, and make many simplifying changes to have
29483         compilation and finalization be consistent with each other.
29484
29485         * ltconfig.in: Not so amazing!  It's AIX cc that hardcodes direct
29486         libraries... gcc doesn't, though.
29487         (link_rpath_flag): Change link_rpath_flag to be
29488         hardcode_libdir_flag.
29489         (hardcode_action): New variable to simplify ltmain.sh.
29490
29491         * tests/Makefile.am (TESTS): Do the full make sequence with
29492         --disable-shared, then without.
29493
29494         * tests/demo-sttc.test: Configure the demo directory with
29495         --disable-shared.
29496
29497 1997-01-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29498
29499         * ltmain.sh.in: Change to take advantage of linkers that don't
29500         hardcode direct libraries.
29501
29502         * ltconfig.in: Amazing!  AIX 3 linker doesn't hardcode direct
29503         libraries, which makes it less buggy than AIX 4.  Reported by Mark
29504         Kettenis.
29505
29506         * demo/configure.in: Check for the math library.
29507
29508         * demo/foo.c (foo): Change to use the `cos' function, so that we
29509         need to link against another library.
29510
29511         * tests/hardcode.test: Rewrite to use fgrep on output from ``strings
29512         -a'' if using fgrep directly on the binary files fails.  From Mark
29513         Kettenis.
29514
29515 1997-01-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29516
29517         * ltmain.sh.in (link): Export the PATH variable in order to find
29518         the program, rather than giving a full path.  This helps give the
29519         program a less confusing value for argv[0].
29520
29521         * tests/hardcode.test: Make sure that ../demo/libhello.la really is a
29522         shared library before running hardcoding tests.
29523
29524 1997-01-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29525
29526         * Release 0.8.
29527
29528 1997-01-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29529
29530         * Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the
29531         distribution.
29532
29533 1997-01-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29534
29535         * libtool.m4: For IRIX 6, ld needs -n32 if cc uses it.  Reported
29536         by Bruno Haible.
29537
29538         * ltconfig.in: IRIX ld does not hardcode direct libraries.
29539         Reported by Bruno Haible.
29540
29541 1997-01-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29542
29543         * ltconfig.in, ltmain.sh.in (hardcode_shlibpath_var): Allow new
29544         value, `unsupported', since most linkers do not allow you to use
29545         shlibpath_var for initial linking.
29546
29547         * ltconfig.in: Lots of bug fixes from Bruno Haible.  Set wl on
29548         OSF/1, fix definitions of hardcode_* variables.
29549         (archive_cmds): Fix not to use +h on HP-UX 9.x.  Reported by Bruno
29550         Haible.
29551
29552         * tests/demo-conf.test: Use the CONFIG_SHELL environment variable when
29553         running configure in the demo directory.  From Bruno Haible.
29554
29555         * tests/Makefile.am (clean-local): Make distclean in the demo directory,
29556         so that ``make clean; env CC=cc make check'' works as one would
29557         expect.
29558
29559         * tests/demo-make.test: Fix typo (use $make instead of make).  Reported
29560         by Akim Demaille.
29561
29562 1997-01-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29563
29564         * libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings.
29565         Suggested by Akim Demaille.
29566
29567         * libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is
29568         specified.  Reported by Bruno Haible.
29569
29570 1997-01-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29571
29572         * demo/Makefile.am (hc-direct): Do better searching for the proper
29573         name to do a direct link.
29574         (hc-libpath): Make allowances if shlibpath_var cannot be used
29575         to find libraries at link time, such as on AIX.
29576
29577         * Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c.
29578
29579         * demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to
29580         KNR form, for better portability, and less ansi2knr hair.
29581
29582         * demo/configure.in: Remove AM_FUNC_PROTOTYPES.
29583
29584         * demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS.
29585
29586         * demo/ansi2knr.1, demo/ansi2knr.c: Removed these files.
29587
29588         * ltmain.sh.in: Use 1>&2 consistently to direct errors and
29589         warnings to stderr.
29590         (compile): Fix missing single quote.
29591
29592         * ltconfig.in (hardcode_direct): On Solaris at least, using
29593         DIR/libNAME.so does not hardcode DIR, so introduce a new hardcode
29594         variable to reflect that.
29595
29596         * ltmain.sh.in (link): If linking with $link_static_flag fails,
29597         then retry without it, but still use the .a versions of
29598         uninstalled libtool archives.
29599
29600         * tests/tlibtool: Rewrote to grab all the settings from the generated
29601         libtool script.
29602
29603         * tests/hardcode.test: Make allowances if shlibpath_var cannot be used
29604         to find libraries at link time, such as on AIX.
29605
29606 1997-01-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29607
29608         * ltmain.sh.in (link): Eval $link_static_flag.  Reported by Bruno
29609         Haible.
29610
29611         * PLATFORMS: Add to distribution.  Suggested by Bruno Haible.
29612
29613 1997-01-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29614
29615         * tests/demo-conf.test, tests/demo-inst.test, tests/demo-unst.test,
29616         tests/hardcode.test:
29617         Use $make instead of make.
29618
29619         * tests/defs (make): Add definition of $make that uses the $MAKE
29620         environment variable, if set.  Suggested by Bruno Haible.
29621
29622         * tests/demo-unst.test (leftovers): Change the find command to ignore
29623         files beginning with a dot, as egrep -v doesn't seem to do the
29624         trick.  Reported by Bruno Haible.
29625
29626 1997-01-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29627
29628         * ltconfig.in: Add support for SCO OpenServer 5.x.  From
29629         Christopher Olsen.
29630
29631         (can_build_shared): Initialize at the top of the file, so that
29632         shared libraries aren't built on platforms that don't support
29633         them.
29634
29635         * tests/hardcode.test: Added a test to make sure that libtool's idea of
29636         hardcoding system linkers is correct.
29637
29638 1997-01-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29639
29640         * ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi:
29641         Update the copyright completion years.
29642
29643 1997-01-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29644
29645         * ltconfig.in: Port to IRIX 5.3, 6.2.
29646
29647 1997-01-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29648
29649         * ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the
29650         port is trivial.
29651
29652         * libtoolize.in: Add --dry-run option, -n for short.
29653
29654 1997-01-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29655
29656         * ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't
29657         understand "export something=val".  From Bruno Haible.
29658
29659         * tests/Makefile.am (distclean-local): Remove all files that the tests
29660         may have created.  Reported by Bruno Haible.
29661
29662         * For all tests, discover srcdir when running from the command
29663         line.
29664
29665         * tests/demo-unst.test: Don't fail if make uninstall doesn't delete
29666         files beginning with a dot, since spurious .nfsXXX files may be
29667         present when running NFS.  Reported by Bruno Haible.
29668
29669 1997-01-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29670
29671         * ltmain.sh.in (compile): Recognize valid source file suffixes for
29672         Fortran and C++.
29673
29674         * tests/suffix.test: New test to guarantee that libtool compile
29675         recognizes valid source file suffices.
29676
29677 1996-12-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29678
29679         * ltmain.sh.in (link): Don't allow *._o and *.l_o to be valid
29680         object type suffixes, in spite of Automake's current ansi2knr
29681         implementation.  Not all compilers allow non-`.o' suffixes.
29682
29683 1996-12-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29684
29685         * ltmain.sh.in (link): Delete the `libtool' version type.
29686
29687 1996-12-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29688
29689         * ltconfig.in: Use the full autoconf syntax when checking for GNU
29690         C.  Delete library stripping program, until we have a correct
29691         test.
29692
29693 1996-12-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29694
29695         * ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm.  From Mark
29696         Kettenis.
29697
29698 1996-12-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29699
29700         Reported by Charles Kerr:
29701         * doc/libtool.texi (Creating Object Files): Doc fix independant ->
29702         independent.
29703
29704         * ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library
29705         dependencies.
29706
29707 1996-12-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29708
29709         * Release 0.7.
29710
29711         * Makefile.am (EXTRA_DIST): Add README-automake to the
29712         distribution.
29713
29714         * ltmain.sh.in (link): When linking libtool libraries, use
29715         standard objects if they are PIC.  This prevents spurious warnings
29716         about invalid suffixes on AIX.
29717
29718         * demo/Makefile.am: Rename libhell to libhello, so that we're not
29719         quite as offensive.
29720
29721         * ltconfig.in: Remove unnecessary host validity checking.
29722
29723         * ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la
29724         is good enough (for consistency with *.a handling).
29725
29726         * tests/demo.test: Break up into demo-conf.test, demo-make.test,
29727         demo-exec.test, demo-inst.test, and demo-unst.test, so that passes
29728         and failures are reported more quickly.
29729
29730         * tests/link-2.test: Test to make sure that .lo files don't get built
29731         directly into programs.
29732
29733 1996-12-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29734
29735         * ltmain.sh.in (link): Accept files ending in .a as standard
29736         object files.  Reported by Ulrich Drepper.
29737         Remove support for creating profiled libraries (for now).
29738         Transform all library objects into standard objects when linking a
29739         program.
29740
29741         * ltconfig.in (thisdir): How embarrassing!  An error in the regexp
29742         for finding the directory component of the script path.
29743
29744         * tests/tlibtool: A typically-configured libtool script, that uses
29745         ../ltmain.sh.in for its backend.
29746
29747         * tests/link.test: Make sure that it is legal to link against .a files.
29748
29749 1996-12-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29750
29751         * ltmain.sh.in (compile): Support `.S' (preprocessed assembler)
29752         files.  Reported by Anthony Green.
29753
29754         * libtoolize.in: Give clearer instrutions for how to update
29755         aclocal.m4.
29756
29757         * ltconfig.in, ltmain.sh.in (link): Add support for creating
29758         reloadable objects.
29759
29760 1996-12-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29761
29762         * ltmain.sh.in (install): Fix passing -n flag to `libtool
29763         --finish'.
29764         (compile): Compile `.lo' and `.o' objects at the same time so that
29765         non-PIC objects (if they are available) can be used for linking
29766         into programs and creating static archives.  Suggested by Ulrich
29767         Drepper.
29768
29769 1996-12-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29770
29771         * ltmain.sh.in (link): Give the full path to the libtool library
29772         when sourcing it.
29773
29774         * ltconfig.in (old_striplib): Do a configuration test to determine
29775         if old-style libraries actually can be stripped or not.
29776
29777 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29778
29779         * tests/demo.test: Try compiling the ../demo subdirectory, with no
29780         special options.
29781
29782         * test-e.test: Check that we haven't used `test -e' anywhere in
29783         our portable shell scripts.
29784
29785 1996-12-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29786
29787         * ltconfig.in: Delete reference to ABOUT-LIBS.
29788
29789         * tests: Added new subdirectory.
29790
29791         * doc/libtool.texi: Doc fixes, and finished up the Configuring
29792         chapter.
29793
29794         * ltmain.sh.in (link): Allow *._o and *.l_o to be valid object
29795         file suffixes, for Automake's ansi2knr implementation.
29796         New option -version-info replaces -version-file.
29797
29798         [help]: Give a pointer to mode-specific help when appropriate.
29799
29800         * ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC.
29801
29802         * demo: Also test Automake's ansi2knr support.
29803
29804 1996-11-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29805
29806         * ltconfig.in: Bug fixes for AIX 4, and for static platforms.
29807
29808         * ltmain.sh.in (install): Fix for loops over arguments.
29809         Need to quote ${IFS= } -> "${IFS= }".
29810         (link): Fix soname_spec bug.  Create objdir whether or not we have
29811         shared libraries.
29812
29813         * ltconfig.in: Check for library stripping program.
29814         Use test -f instead of test -e.
29815
29816 1996-11-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29817
29818         * ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't
29819         set.
29820         Be verbose about the environment variables we were configured
29821         with.
29822
29823         * ltmain.sh.in (objdir): change to .libs.
29824
29825 1996-11-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29826
29827         * ltmain.sh.in (install): Just plunge ahead with the
29828         installation... don't try to enforce dependencies.
29829
29830 1996-11-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29831
29832         * ltmain.sh.in: Fix up $libdir to be $dest in install mode.
29833
29834 1996-11-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29835
29836         * ltmain.sh: Finished rewrite of compile, link, and install
29837         modes.
29838
29839         * New ChangeLog file for libtool-0.7, since I've totally rewritten
29840         libtool.
29841
29842 1996-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
29843
29844         * For historical reasons: this is when I started writing libtool.
29845 -- 
29846   Copyright (C) 1996-2010 Free Software Foundation, Inc.
29847
29848   This file is part of GNU Libtool.
29849
29850 Copying and distribution of this file, with or without modification,
29851 are permitted in any medium without royalty provided the copyright
29852 notice and this notice are preserved.  This file is offered as-is,
29853 without warranty of any kind.