1 2015-01-19 Gary V. Vaughan <gary@gnu.org>
4 * NEWS: Record release date.
6 2015-01-18 Gary V. Vaughan <gary@gnu.org>
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.
61 2015-01-16 Gary V. Vaughan <gary@gnu.org>
63 gnulib: sync with upstream.
64 * gnulib: Sync with upstream.
65 * doc/.gitignore: Regenerate.
67 2015-01-16 Pavel Raiskup <praiskup@redhat.com>
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
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.
78 2014-12-12 Gary V. Vaughan <gary@gnu.org>
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
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
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.
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
99 (_LT_SYS_HIDDEN_LIBDEPS): Use it to determine whether -Cstd -Crun
100 can be safely added to postdeps with Sun Pro CXX.
102 * NO-THANKS: Add Marc Glisse.
103 Reported by Marc Glisse
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
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.
114 2014-12-11 Pavel Raiskup <praiskup@redhat.com>
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
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.
145 References: http://thread.gmane.org/gmane.comp.gnu.libtool.general/8339/focus=8345
147 2014-12-11 Gary V. Vaughan <gary@gnu.org>
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.
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.
160 2014-12-05 Gary V. Vaughan <gary@gnu.org>
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
168 2014-12-04 Gary V. Vaughan <gary@gnu.org>
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.
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 Дилян Палаузов
186 2014-12-04 Eric Bavier <bavier@cray.com>
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
193 * tests/static.at [static linking flags for programs]: Do not expect
194 -static-libtool-libs to fail.
196 2014-12-04 Norihiro Tanaka <noritnk@kcn.ne.jp>
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.
205 2014-12-04 Gary V. Vaughan <gary@gnu.org>
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
211 * Makefile.am (lt_Makefile_am): Also edit out the duplicated
212 include paths after libltdl/ elimination.
214 Reported by Michael Wobst
216 2014-12-04 Tijl Coosemans <tijl@FreeBSD.org>
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.
223 2014-12-03 Gary V. Vaughan <gary@gnu.org>
225 bootstrap: sync with upstream for runtime M4 checking functions.
226 * gl/build-aux/extract-trace: Sync with upstream for runtime M4
228 * bootstrap: Regenerate.
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.
240 Reported by Michael Felt
242 2014-11-29 Gary V. Vaughan <gary@gnu.org>
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.
250 * NEWS: Record release date.
252 gnulib: sync with upstream.
253 * gnulib: sync with upstream.
255 2014-11-29 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
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
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
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
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
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.
302 2014-11-28 Tijl Coosemans <tijl@FreeBSD.org>
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.
312 2014-11-28 Gary V. Vaughan <gary@gnu.org>
314 maint: syntax-checks don't like ${ even in comments!
315 * m4/ltdl.m4: Fix a comment to appease syntax-check rules.
317 2014-11-28 Tijl Coosemans <tijl@FreeBSD.org>
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.
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.
332 2014-11-28 Gary V. Vaughan <gary@gnu.org>
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.
339 Reported by KO Myung-Hun
341 2014-11-26 Gary V. Vaughan <gary@gnu.org>
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.
351 2014-11-21 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
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
358 * tests/template.at: Skip test with undef syms across libraries
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.
366 2014-11-18 Gary V. Vaughan <gary@gnu.org>
368 maint: Fox a resent smelling mystique.
369 * build-aux/git-log-fix: ChangeLog edit.
370 Reported by Eric Blake
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.
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.
384 2014-11-18 Vincent Lefevre <vincent@vinc17.net>
386 NEWS: Fix an ancient spelling mistake.
387 * NEWS: s/propogate/propagate/.
388 * cfg.mk (old_NEWS_hash): Update.
390 2014-11-17 Vincent Lefevre <vincent@vinc17.net>
392 libtool: fix comment typo.
393 * m4/libtool.m4: Fix -fvisbility=hidden typo in a comment.
395 2014-11-04 Gary V. Vaughan <gary@gnu.org>
397 maint: fix a syntax-check failure.
398 * tests/cmdline_wrap.at (fail_list): quote test arguments to
399 satisfy failing syntax-checks.
401 libtool: fix universal library building on darwin.
402 * build-aux/ltmain.in (func_extract_archives): $basename is now
403 spelled $sed_basename.
405 Reported by Misty De Meo
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.
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.
416 bootstrap: sync with upsteram.
417 * gl/build-aux/bootstrap.in: Sync with upstream.
418 * bootstrap: Regenerate.
420 2014-11-04 KO Myung-Hun <komh@chollian.net>
422 libtool: support versioning on OS/2.
423 * build-aux/ltmain.in (func_mode_link) <*-os2*>: Set major and
425 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <*-os2*>: Set
426 version_type to windows. Add a version information to soname_spec.
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.
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
440 (func_mode_link): Add -os2dllname.
441 * doc/libtool.texi: Document it.
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
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.
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.
458 libtool: there is no need to relink DLLs on OS/2.
459 * build-aux/ltmain.in (func_mode_link) <*-os2*>: need_relink=no.
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.
464 libtool: support to link against static libraries on OS/2.
465 * m4/libtool.m4 (_LT_COMPILER_PIC): Set lt_prog_compiler_static to
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.
471 2014-11-03 Gary V. Vaughan <gary@gnu.org>
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.
477 Reported by Allan McRae
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.
484 2014-11-02 Arkadiusz Miśkiewicz <arekm@maven.pl>
486 tests: fix typo in cmdline_wrap skip check.
487 * tests/cmdline_wrap.at (fail_list): fix a typo in loop script
490 2014-11-02 Gary V. Vaughan <gary@gnu.org>
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.
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:
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.
508 Reported by Pavel Raiskup
510 maint: whitespace cleanup.
511 * Makefile.am ($(thanks)): Fix several whitespace syntax-check
514 2014-11-02 Pavel Raiskup <praiskup@redhat.com>
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.
520 2014-10-30 Gary V. Vaughan <gary@gnu.org>
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.
540 2014-10-29 Reuben Thomas <rrt@sc3d.org>
542 libtool: -rdynamic support for tcc.
543 * m4/libtool.m4 (_LT_LINKER_SHLIBS) <linux*>: Set
544 export_dynamic_flag_spec appropriately when using tcc.
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.
551 2014-10-29 Gary V. Vaughan <gary@gnu.org>
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.
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.
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.
576 Reported by Václav Zeman
578 2014-10-27 Gary V. Vaughan <gary@gnu.org>
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.
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.
590 * NEWS: Record release date.
592 bootstrap: sync with upstream.
593 * gl/build-aux/bootstrap.in, gl/build-aux/funclib.sh: Sync with
595 * bootstrap: Regenerate.
597 testsuite: fixes required for `make distcheck CC=g++`.
598 * tests/demo.at (Pdemo conf): Overide _LT_DEMO_SETUP foo.h to
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++.
605 maint: fix a typo in THANKS.
606 * THANKS: s/macports\.com/macports.org/
608 syntax-check: use strlcpy instead of strncpy.
609 * libltdl/loaders/dyld.c (vm_sym): Use strlcpy to pacify syntax
611 * libltdl/ltdl.c (try_dlopen): Likewise.
613 2014-10-25 Gary V. Vaughan <gary@gnu.org>
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
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
632 bootstrap: commit latest to avoid regeneration at build time.
633 * bootstrap: Regenerate.
635 gnulib: sync with upstream.
636 * gnulib: Sync with upstream.
638 2014-05-13 Peter Rosin <peda@lysator.liu.se>
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'.
643 Fixes bug#17478. Reported by Egmont Koblinger.
645 * build-aux/ltmain.in (func_emit_wrapper) [fast_install]: Quote the
646 $ECHO, and delay the expansion.
648 2014-05-06 Peter Rosin <peda@lysator.liu.se>
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
658 Fixes sr #108558, reported by LRN.
660 * m4/libtool.m4 (LT_PATH_NM) [MSYS]: Use a non-existant file instead of
661 /dev/null when checking if nm supports -B.
663 2014-05-05 Peter Rosin <peda@lysator.liu.se>
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
671 Fixes bug#13472 and bug#16662.
673 Reported by Pavel Raiskup and Nick Bowler.
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
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.
689 2014-05-02 Peter Rosin <peda@lysator.liu.se>
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.
695 * build-aux/ltmain.in (func_emit_cwrapperexe_src:MAGIC_EXE): Try to ensure
696 that the magic cookie is preserved.
698 2014-02-12 Peter Rosin <peda@lysator.liu.se>
700 tests: sprinkle -no-undefined when linking libraries
701 * tests/duplicate_conv.at, tests/f77demo.at, tests/fcdemo.at: Here.
703 2014-02-12 Peter Rosin <peda@lysator.liu.se>
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).
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
714 2014-02-10 Peter Rosin <peda@lysator.liu.se>
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.
720 2014-02-05 Gary V. Vaughan <gary@gnu.org>
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
728 2014-02-03 Bruce Korb <bkorb@gnu.org> (tiny change)
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.
736 2014-01-27 Gary V. Vaughan <gary@gnu.org> (tiny change)
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
745 2014-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
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.
755 2014-01-15 Gary V. Vaughan <gary@gnu.org>
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.
762 2014-01-11 Todd C. Miller <Todd.Miller@courtesan.com> (tiny change)
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.
773 2014-01-07 Gary V. Vaughan <gary@gnu.org>
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.
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.
788 2014-01-05 Gary V. Vaughan <gary@gnu.org>
790 bootstrap: remove conftest.sed file droppings.
791 * gl/build-aux/funclib.sh: Remove conftest.sed when no longer
793 * bootstrap: Regenerate.
795 2014-01-04 Gary V. Vaughan <gary@gnu.org>
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:
802 * bootstrap: Regenerate.
804 2014-01-03 Gary V. Vaughan <gary@gnu.org>
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.
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
818 edit-readme-alpha: adjust for recent README edits.
819 * build-aux/edit-readme-alpha: Adjust regexps for recent README
821 * README.md: Fix a SPACE-TAB sanity check failure.
823 bootstrap: fix test-dollar sanity check failure.
824 * gl/build-aux/bootstrap.in (func_ensure_README): quote argument.
825 * bootstrap: Regenerate.
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.
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.
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.
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.
852 * bootstrap.conf (func_reconfigure): Remove. Don't completely
853 overwrite bootstrap's func_reconfigure, shadowing auto-ChangeLog
855 (func_autopoint, func_libtoolize): Overwrite these un-needed
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.
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.
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.
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.
884 maint: use before-save-hook in Emacs footers.
885 Updating to Emacs 24 now gives me warnings about write-file-hooks
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.
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'.
899 Adjust all bs_echo callers to use $ECHO instead.
900 * bootstrap: Regenerate.
903 2014-01-02 Gary V. Vaughan <gary@gnu.org>
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.
913 2014-01-01 Gary V. Vaughan <gary@gnu.org>
915 maint: change history.
916 * NEWS: Remove alpha release header.
917 * cfg.mk (old_NEWS_hash): Update.
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.
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
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.
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.
992 gnulib: update to latest upstream revision.
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
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
1003 2014-01-01 Gary V. Vaughan <gary@gnu.org>
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:
1009 Undefined first referenced
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
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
1024 * tests/fcdemo.at: Likewise.
1026 2014-01-01 Gary V. Vaughan <gary@gnu.org>
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
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.
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.
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.
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.
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.
1082 configury: remove spurious g modifier in sed expression.
1083 * Makefile.am (rebuild): Remove useless g modifier from sed
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
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
1102 funclib.sh: improve comments.
1103 * gl/build-aux/funclib.sh: Add a comment explaining the need for
1104 extra SED and GREP searches.
1106 2013-12-09 Peter Rosin <peda@lysator.liu.se>
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.
1112 2013-11-19 Peter Rosin <peda@lysator.liu.se>
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.
1118 * bootstrap (func_sort_ver): Sort numerically on the non-primary keys
1121 2013-11-08 Peter Rosin <peda@lysator.liu.se>
1123 tests: Use a basic grep that matches the basic regexp style.
1124 Fixes a testsuite failure on Cygwin.
1126 * tests/tagdemo.at: Use grep instead of egrep.
1128 2013-10-29 Gary V. Vaughan <gary@gnu.org>
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
1135 2013-10-28 Gary V. Vaughan <gary@gnu.org>
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
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.
1145 Co-Authored-by: Paul Eggert <eggert@cs.ucla.edu>
1147 2013-10-28 Gary V. Vaughan <gary@gnu.org>
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.
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
1161 (scriptversion): Update.
1162 * bootstrap: Regenerate.
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
1170 * Makefile.am (SCRIPT_ENV): Add setting for GREP.
1171 * bootstrap: Regenerate.
1172 Reported by Tim Rice.
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
1185 (ltdl_ac_aux_dir, $(ltmain_sh), install-data-local): Use it.
1186 * bootstrap: Regenerate.
1187 Reported by Tim Rice.
1189 2013-10-27 Gary V. Vaughan <gary@gnu.org>
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.
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.
1206 2013-10-26 Gary V. Vaughan <gary@gnu.org>
1209 * NEWS: Record release date.
1211 gnulib: update to latest upstream revision.
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.
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.
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
1229 * tests/old-ltdl-iface.at (old.c): Use 'main ()' instead of
1230 unportable 'int main (int argc, const void *argv[])'.
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.
1238 maint: Update README-release for Makefile.inc -> ltdl.mk rename.
1239 * gl/top/README-release.diff: s/Makefile.inc/ltdl.mk/g
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.
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
1252 2013-10-10 Vadim Zeitlin <vz-libtool@zeitlins.org> (tiny change)
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.
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.
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
1270 2013-10-10 Brooks Moses <bmoses@google.com>
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.
1276 2013-10-09 Fabian Groffen <grobian@gentoo.org> (tiny change)
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].
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.
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.
1297 In any case, defaulting to a linker called ld_sol2 is wrong.
1299 [1] http://lists.gnu.org/archive/html/libtool-commit/2011-02/
1301 [2] http://osdyson.org/issues/8
1303 2013-10-09 Olivier Blin <olivier.blin@softathome.com> (tiny change)
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
1310 This made libtool assume that the ld version was the
1311 crosstool-NG version (1.13.0) instead of the real ld version
1314 To fix the ld version string, this patch filters out any string
1315 between parentheses that is followed by a space.
1317 Because of this bug, filtering of exported symbols was not
1318 taking place with crosstool-NG toolchains.
1320 This issue has bee noticed when building pango, which exported
1321 harfbuzz symbols that should have remained hidden.
1323 2013-10-09 Brooks Moses <bmoses@google.com>
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.
1329 2013-10-09 DJ Delorie <dj@redhat.com>
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
1337 2013-10-09 Vincent Lefevre <vincent@vinc17.net> (tiny change)
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.)
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
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.
1352 2013-10-09 Peter Johansson <trojkan@gmail.com>
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'.
1359 2013-10-09 Joseph Prostko <joe.prostko@gmail.com> (tiny change)
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
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
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
1375 http://ports.haiku-files.org/browser/haikuports/sys-devel/
1376 libtool/patches/libtool-2.4.2.patch
1378 2013-10-09 Brooks Moses <bmoses@google.com> (tiny change)
1379 Johannes Obermayr <johannesobermayr@gmx.de>
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.)
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.
1393 2013-10-09 Ondřej Bílka <neleai@seznam.cz>
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"
1400 (Note: The generated patch was adjusted to retain the non-US
1401 but correct spelling of 'rigourous' before commit. --Brooks)
1403 2013-10-08 David 'Digit' Turner <digit@google.com>
1405 libtool: Add Android/Linux support.
1406 This patch adds proper Android support to libtool. The main
1407 issues are the following:
1409 - Versioned libraries are not supported by the platform and
1410 its build/packaging tools.
1412 - The dynamic linker is not GNU ld, there is no support for
1415 - Similarly, there is no ldconfig.
1417 2013-09-17 Peter Rosin <peda@lysator.liu.se>
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.
1433 Fixes bug#15321 reported by Ozkan Sezer.
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
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
1446 2013-09-16 Gary V. Vaughan <gary@gnu.org>
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.
1453 2013-09-15 Gary V. Vaughan <gary@gnu.org>
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.
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
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.
1478 2013-09-05 Gary V. Vaughan <gary@gnu.org>
1480 maint: normalise formatting of recent commit log entry.
1481 * build-aux/git-log-fix: Add a summary line to ChangeLog entry of
1484 2013-09-05 Brooks Moses <bmoses@google.com>
1486 maint: add Brooks Moses to AUTHORS file.
1487 * AUTHORS: Add myself to committers list.
1489 2013-08-29 Gary V. Vaughan <gary@gnu.org>
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.
1497 2013-08-23 Alan Modra <amodra@bigpond.net.au>
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.
1509 2013-08-23 Gary V. Vaughan <gary@gnu.org>
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.
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.
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
1529 Look for a sha1 binary if the other SHA1SUM settings are not
1531 Also exit early if there is a problem updating the po file
1533 * bootstrap: Regenerate.
1534 Ported from a gnulib patch by Padraig Brady.
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.
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
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.
1553 2013-08-23 Gary V. Vaughan <gary@gnu.org> (tiny change)
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
1559 * bootstrap: Regenerate.
1560 * THANKS: Add Mike Miller.
1561 Reported by Mike Miller.
1563 2013-08-23 Steve Ellcey <sellcey@mips.com>
1564 Gary V. Vaughan <gary@gnu.org>
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.
1570 2013-08-23 Gary V. Vaughan <gary@gnu.org>
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"
1585 2013-08-23 Brook Moses <bmoses@google.com>
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
1592 2013-08-22 Alan Modra <amodra@bigpond.net.au>
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.
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.
1604 2013-08-22 Gary V. Vaughan <gary@gnu.org>
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.
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.
1619 2013-08-22 Alan Modra <amodra@bigpond.net.au>
1621 libtool: fix mangled powerpc*le-linux support patch
1622 * m4/libtool.m4: unmangled badly pasted hunks from previous
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.
1629 2013-06-17 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
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.
1643 2013-04-28 Peter Rosin <peda@lysator.liu.se>
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.
1652 Report and analysis by Mike Frysinger.
1654 * m4/libtool.m4 (LT_PATH_NM): Break all the way out on a good match.
1656 2013-01-28 Peter Rosin <peda@lysator.liu.se>
1658 maint: update email address...
1659 * THANKS: ...of Jan Engelhardt.
1661 2013-01-28 Jan Engelhardt <jengelh@inai.de>
1663 doc: fix an orthographic error
1664 * doc/libtool.texi (Install mode): Ensure, not insure.
1666 2013-01-27 Gary V. Vaughan <gary@gnu.org>
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.
1676 bootstrap: factor out gnulib-tool option calculations.
1677 * gl/build-aux/bootstrap.in (func_gnulib_tool): Factor base option
1679 (require_gnulib_tool_base_options): ...to here.
1680 * bootstrap: Regenerate.
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.
1687 syntax-check: fix new SPACE-TAB violations.
1688 * build-aux/ltmain.in (func_dll_def_p): Replace SPACE-TAB by
1690 * m4/libtool.m4 (_LT_DLL_DEF_P): Likewise.
1692 2013-01-26 Bernhard Voelker <mail@bernhard-voelker.de>
1693 Gary V. Vaughan <gary@gnu.org>
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.
1704 2013-01-26 Gary V. Vaughan <gary@gnu.org>
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'
1718 2013-01-22 Peter Rosin <peda@lysator.liu.se>
1720 libtool: factor out the dll .def file test and improve it
1721 Resolves bug#13414. Problem reported by Erik van Pienbroek
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.
1736 2013-01-21 Peter Rosin <peda@lysator.liu.se>
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.
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.
1746 2013-01-19 Peter Rosin <peda@lysator.liu.se>
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.
1754 m4/libtool.m4: Convert indenting tabs to spaces for all *_cmds
1757 2013-01-16 Peter Rosin <peda@lysator.liu.se>
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.
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.
1771 2013-01-15 Peter Rosin <peda@lysator.liu.se>
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
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
1784 2013-01-09 Peter Rosin <peda@lysator.liu.se>
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).
1793 2013-01-08 Peter Rosin <peda@lysator.liu.se>
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).
1800 2013-01-03 Peter Rosin <peda@lysator.liu.se>
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
1807 2013-01-03 Gary V. Vaughan <gary@gnu.org>
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.
1813 git: ignore .serial file.
1814 * .gitignore: ignore .serial file.
1816 maint: fix recent badly formatted ChangeLog entry.
1817 * build-aux/git-log-fix: No empty lines in a single commit.
1819 syntax-check: fix a useless_quotes_in_assignment violation.
1820 * gl/build-aux/inline-source (func_require_AWK): Remove useless
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.
1827 docs: update copyright dates in libtool.texi.
1828 It seems `make update-copyright' missed the texinfo copyright
1830 * doc/libtool.texi: Update copyright dates for 2013.
1832 2013-01-03 Brad Smith <brad@comstyle.com>
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.
1843 2013-01-01 Peter Rosin <peda@lysator.liu.se>
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
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.
1858 2013-01-01 Gary V. Vaughan <gary@gnu.org>
1860 maint: remove unsupported Tested-by: tag.
1861 * build-aux/git-log-fix: Tested-by: line should not appear in the
1864 2013-01-01 Peter Rosin <peda@lysator.liu.se>
1866 bootstrap: update README-release patch
1867 gl/top/README-release.diff: Update to match latest gnulib changes.
1869 2013-01-01 Gary V. Vaughan <gary@gnu.org>
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.
1923 2012-12-19 Peter Rosin <peda@lysator.liu.se>
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
1933 2012-12-19 Richard Palo <richard.palo@baou.fr> (tiny change)
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.
1940 2012-11-02 Peter Rosin <peda@lysator.liu.se>
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.
1964 2012-11-02 Peter Rosin <peda@lysator.liu.se>
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.
1973 * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unify the matching expressions
1974 in the sed programs that transform the extracted symbol lines.
1976 2012-11-02 Peter Rosin <peda@lysator.liu.se>
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.
1982 2012-10-25 Gary V. Vaughan <gary@gnu.org>
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
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.
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
1997 * bootstrap: Regenerate.
1998 Reported by Robert Boehne.
2000 bootstrap: fix a typo in a find invocation.
2001 * gl/build-aux/bootstrap.in (require_buildreq_patch): Fix a typo.
2002 * bootstrap: Regenerate.
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.
2009 maint: fix missing command error in make dist.
2010 * Makefile.am ($(readme)): Don't forget the 'test'!
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.
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,
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.
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.
2035 bootstrap: fix rectangle select induced trailing spaces.
2036 * gl/build-aux/funclib.sh (require_term_colors): Delete trailing
2038 * bootstrap: Regenerate.
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
2047 * bootstrap: Regenerate.
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.
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
2062 * bootstrap: Regenerate.
2064 2012-10-24 Gary V. Vaughan <gary@gnu.org>
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.
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.
2082 2012-10-22 Gary V. Vaughan <gary@gnu.org>
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.
2093 bootstrap: regenerate to propagate Bob's func_split_equals fix.
2094 * bootstrap: regenerate.
2096 2012-10-22 Mikhail Zabaluev <mikhail.zabaluev@gmail.com> (tiny change)
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.
2101 2012-10-22 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
2108 2012-10-21 Gary V. Vaughan <gary@gnu.org>
2110 syntax-check: fix violations and implement sc_old_style_quoting.
2111 Modern GNU ASCII quoting in output and comments is done
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.
2135 tests: remove spurious shell variable braces.
2136 * tests/testsuite.at: Allow the shell braces syntax check to pass
2139 bootstrap: add missing bootstrap override module file.
2140 * gl/modules/bootstrap: Forgot to add this file in a previous
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.
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
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.
2168 2012-10-20 Gary V. Vaughan <gary@gnu.org>
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
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.
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.
2209 2012-10-19 Peter Rosin <peda@lysator.liu.se>
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
2215 (LT_PATH_NM): Add -headers option if dumpbin is the located name
2216 lister to feed the above new code.
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
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
2232 2012-10-19 Gary V. Vaughan <gary@gnu.org>
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
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
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).
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.
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.
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):
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
2277 * News (Important incompatible changes): Note change in semantics.
2278 Reported by Eric Blake.
2280 tests: always extract only the first ACLOCAL_AMFLAGS include arg.
2281 * tests/libtoolize.at (libtoolize ACLOCAL_AMFLAGS extraction):
2283 * libtoolize.in (func_check_macros): Display the correct advice
2284 when ACLOCAL_AMFLAGS specifies a macrodir, but AC_CONFIG_MACRO_DIR
2287 doc: add a missing period following @xref.
2288 * doc/libtool.texi: Silence a warning by adding back a missing
2291 2012-10-19 Peter Rosin <peda@lysator.liu.se>
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
2298 T T _another _another
2299 when the expected output would have been something like:
2301 T no_underscore no_underscore
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.
2310 2012-10-18 Peter Rosin <peda@lysator.liu.se>
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.
2319 libtool: kill leftover m4 quoting
2320 * build-aux/ltmain.in (func_mode_compile): Use literal ] and [.
2322 2012-10-18 Gary V. Vaughan <gary@gnu.org>
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.
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
2339 Reported by Peter Rosin.
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.
2348 2012-10-18 Peter Rosin <peda@lysator.liu.se>
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.
2355 2012-10-12 Gary V. Vaughan <gary@gnu.org>
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)
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
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
2376 * build-aux/ltmain.m4sh: Remove.
2377 * build-aux/ltmain.in: Rewritten as a client of funclib.sh.
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
2386 Don't install helper_scripts.
2387 (uninstall-hook): Don't uninstall helper_scripts.
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.
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.
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):
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
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).
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
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.
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
2484 (func_split_equals, func_split_short_opt): Similarly for XSI
2485 probe to select fastest working implementation.
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.
2492 options-parser: prefix usage message with "Usage: ".
2493 * build-aux/options-parser (func_usage_message): Prefix usage
2494 message with "Usage: ".
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
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
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.
2522 2012-10-08 Peter Rosin <peda@lysator.liu.se>
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
2529 Reported by Roumen Petrov.
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.
2536 2012-10-06 Peter Rosin <peda@lysator.liu.se>
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.
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.
2550 2012-10-06 Gary V. Vaughan <gary@gnu.org>
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.
2565 tests: ensure mdemo.at doesn't rely on installed libltdl.
2566 * tests/mdemo.at (configuer.ac): Build an included convenience
2568 (Makefile.am): Add subdir-objects.
2569 Remove override rules from legacy mdemo tests to reuse parent
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.
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.
2585 2012-10-05 Peter Rosin <peda@lysator.liu.se>
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.
2592 tests: fix line ending problems on MinGW
2593 * tests/cdemo.at: Use LT_AT_HOST_DATA for expected output from
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.
2602 2012-10-05 Gary V. Vaughan <gary@gnu.org>
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.
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.
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.
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
2629 * Makefile.am (TESTS): Remove tests/link.test and
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.
2638 tests: migrate legacy suffix.test to Autotest.
2639 * tests/suffix.test: Delete file.
2640 * tests/libtool.at (Transform source suffices): Add Autotest
2642 * Makefile.am (TESTS): Remove tests/suffix.test.
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.
2650 2012-10-04 Gary V. Vaughan <gary@gnu.org>
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.
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.
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
2669 [order-only prerequisites]: Ditto.
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.
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
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.
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.
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.
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
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.
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
2773 * tests/pdemo-conf.test, tests/pdemo-exec.test,
2774 tests/pdemo-inst.test, tests/pdemo-make.test: ...these legacy
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.
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.
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
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.
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.
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.
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
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.
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
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.
2892 2012-10-03 Gary V. Vaughan <gary@gnu.org>
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
2909 2012-10-02 Gary V. Vaughan <gary@gnu.org>
2911 tests: simplify some shell code.
2912 * tests/fail.at: Simplify.
2913 * tests/static.at: Likewise.
2915 libtool: unroll complex nested compound statements
2916 * build-aux/ltmain.m4sh: Use an if statement instead of ugified
2917 compound statements.
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
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;
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.
2934 libtool: save an if statement, with a compound statement.
2935 * build-aux/ltmain.m4sh (func_mode_link): Simplify.
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
2941 * m4/libtool.m4: Likewise.
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'.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
3021 2012-09-19 Peter Rosin <peda@lysator.liu.se>
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.
3028 2012-09-16 Gary V. Vaughan <gary@gnu.org>
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.
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}.
3040 syntax-check: skip prohibit_strncpy.
3041 * cfg.mk (local-checks-to-skip): sc_prohibit_strncpy.
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.
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.
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.
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.
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.
3070 bootstrap: update bootstrap script to latest upstream.
3071 * bootstrap, build-aux/options-parser: apply upstream fixes and
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.
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.
3083 gnulib: update gnulib submodule.
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.
3090 libtoolize: improve verbose mode output.
3091 * libtoolize (func_require_seen_ltdl)
3092 (func_require_seen_libtool): Output success message in verbose
3095 2012-08-22 Peter O'Gorman <peter@pogma.com>
3097 libtool: Add the 'n' to then.
3098 * m4/libtool.m4: fix typo.
3099 Reported by Brad Smith.
3101 2012-08-22 Andreas Schwab <schwab@linux-m68k.org>
3103 libtool: Pass through -g* so that debugging information is not dropped
3104 * ltmain.m4sh (func_mode_link): Pass through -g*.
3106 2012-08-22 David Edelsohn <dje.gcc@gmail.com>
3108 libtool: AIX PIC shared library support
3109 * m4/libtool.m4 (_LT_COMPILER_PIC): Add -fPIC to GCC and GXX for AIX.
3111 2012-08-22 Brad Smith <brad@comstyle.com>
3113 libtool: Update/simplify OpenBSD support
3114 * m4/libtool.m4: Forget about 11 year old releases.
3116 2012-08-19 Peter Rosin <peda@lysator.liu.se>
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
3124 2012-04-19 Mike Frysinger <vapier@gentoo.org>
3126 libtool: Handle getconf returning "undefined".
3127 * m4/libtool.m4: Check for "undefined" from `getconf`.
3129 2012-03-17 Peter Rosin <peda@lysator.liu.se>
3131 bootstrap: delete unneeded README-release patch
3132 * gl/top/README-release.diff: Delete.
3134 2012-03-16 Peter O'Gorman <peter@pogma.com>
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.
3140 2012-02-21 Samuel Thibault <samuel.thibault@gnu.org>
3142 libtool: Improve GNU/Hurd support.
3143 * m4/libtool.m4: Add gnu* match where it was missing.
3145 2012-02-19 Titus von Boxberg <titus@v9g.de>
3147 libtool: Accept clang's -stdlib linker flag.
3148 build-aux/ltmain.m4sh: Don't drop the -stdlib= flag.
3150 2012-02-19 Juergen Reuter <reuter@t00pcx17094.desy.de>
3152 libtool: Enable nagfor fortran compiler support
3153 * build-aux/ltmain.m4sh: nagfor compatible version string.
3154 * m4/libtool.m4: nagfor support.
3156 2012-02-19 Juergen Reuter <reuter@theoc01.desy.de>
3158 libtool: Fixing -shared error message for nagfor compiler.
3159 * m4/libtool.m4: Fix -shared.
3161 2012-02-19 Pavel (Pasha) Shamis <shamisp@ornl.gov>
3163 ltdl: Improve debug error reporting in ltdl.
3164 * libltdl/ltdl.c: Print the error message if loading fails.
3166 2012-02-19 Peter O'Gorman <peter@pogma.com>
3168 maint: Deleted unneeded gitlog-to-changelog patch
3169 * gl/build-aux/gitlog-to-changelog.diff: Delete.
3171 2012-02-02 Roumen Petrov <bugtrack@roumenpetrov.info> (tiny change)
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.
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).
3182 2012-01-30 Peter Rosin <peda@lysator.liu.se>
3184 cwrapper: avoid surplus strlen calculations.
3185 * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src:lt_update_exe_path):
3186 Avoid surplus strlen calculations.
3188 2011-12-24 Gary V. Vaughan <gary@gnu.org>
3190 bootstrap: fix Autoconf version typo.
3191 * build-aux/options-parser: s/2\.62/2.68/
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.
3199 2011-12-18 Gary V. Vaughan <gary@gnu.org>
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
3208 Reported by Stefano Lattarini.
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
3216 Adjust all uses of echo to $bs_echo.
3217 * build-aux/extract-trace (func_extract_trace, func_main):
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.
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.
3230 2011-12-13 H.J. Lu <hongjiu.lu@intel.com>
3232 libtool: Support x32.
3233 * m4/libtool.m4 (_LT_ENABLE_LOCK): Support x32.
3235 2011-12-08 Gary V. Vaughan <gary@gnu.org>
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
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.
3247 tests: s/snippit/snippet/.
3248 * tests/demo/foo.h, tests/pdemo/foo.h: Spell `snippet' correctly.
3249 Reported by Stefano Lattarini.
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
3256 * tests/demo-relink.test (func_save_files): Ditto.
3257 * tests/depdemo-relink.test (func_save_files): Ditto.
3258 Reported by Stefano Lattarini.
3260 maint: eliminate some more spurious leading Xs.
3261 * m4/libtool.m4: Reverse argument order to eliminate spurious
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.
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.
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
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.
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
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.
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.
3332 libtoolize: rename ltdl.mk filter function.
3333 * libtoolize.m4sh (require_Makefile_inc_filter): Rename from
3335 (require_ltdl_mk_filter): ...to this. Adjust all callers.
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
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.
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.
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_...'.
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
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.
3377 2011-11-26 Gary V. Vaughan <gary@gnu.org>
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.
3383 maint: Fix generated ChangeLog typos.
3384 * build-aux/git-log-fix: Spell Stefano Lattarini's name
3386 Don't use my home email address for GNU commits.
3388 2011-11-25 Gary V. Vaughan <gary@gnu.org>
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
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
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
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
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
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
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.
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.
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.
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.
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.
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
3509 2011-11-17 Gary V. Vaughan <gary@gnu.org>
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
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.
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.
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.
3535 syntax-check: fix violations and implement sc_trailing_blank-non-rfc3676.
3536 * cfg.mk (local-checks-to-fix): Move sc_trailing_blank from
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
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.
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
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.
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
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.
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
3609 (STRNEQ, STREQ): ..to this. Adjust all callers.
3610 * tests/slist.at: Add STREQ definition. Change all !strcmp calls
3612 * build-aux/ltmain.m4sh (func_emit_cwrapperexe_src): Add and use
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.
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.
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>.
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.
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.
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.
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
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 \
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
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
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
3681 * libltdl/Makefile.am (libltdl_libltdl_la_SOURCES): Ditto.
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
3689 syntax-check: fix violations and re-enable sc_file_system.
3690 * cfg.mk (local-checks-to-fix): Remove sc_file_system from list
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
3696 * libltdl/ltdl.c (try_dlopen): Ditto.
3697 * tests/dlloader-api.at: Ditto.
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.
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.
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
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.
3727 syntax-check: skip sc_unmarked_diagnostics.
3728 * cfg.mk (local-checks-to-fix): Move sc_unmarked_diagnostics
3730 (local-checks-to-skip): ...to here.
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:
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
3776 (require_configure_ac_filter): New function to perform similar
3777 checks and rewrite configure.ac during installation if necessary.
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.
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.
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.
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
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'"
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
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.
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.
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.
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)
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.
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
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.
3922 maint: generate full and correct ChangeLog.
3923 * gnulib: Updated to pick up gitlog-to-changelog multi-author
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
3929 * libltdl/config/git-hooks/commit-msg: New commit message hook
3931 * libltdl/config/git-log-fix: New file, with ChangeLog fixes.
3932 * HACKING (Using git): Update.
3934 2011-11-16 Gary V. Vaughan <gary@gnu.org>
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
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.
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
3955 * bootstrap (usage): Set appropriately.
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
3963 Reported by Roumen Petrov.
3965 2011-11-15 Gary V. Vaughan <gary@gnu.org>
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
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
3978 (NL2SP, SP2NL): Remove initialisation.
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.
3990 2011-11-14 Gary V. Vaughan <gary@gnu.org>
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
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.
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.
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
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
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.
4026 2011-11-09 Gary V. Vaughan <gary@gnu.org>
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
4032 (install-data-local): Ditto.
4033 Remove `config/' prefix from extract-trace and option-parser
4036 2011-11-08 Gary V. Vaughan <gary@gnu.org>
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].
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.
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).
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
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,
4082 (pkgltdl_files): ...we substitute the pre-massaged files
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
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
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
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
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.
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.
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.
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.
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.
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.
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.
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
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.
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
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.
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
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
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.
4270 2011-11-07 Peter Rosin <peda@lysator.liu.se>
4272 libtoolize: fix spelling nit.
4273 * libtoolize (M4SH_GETOPTS): Fix spelling nit.
4275 2011-11-07 Gary V. Vaughan <gary@gnu.org>
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.
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.
4288 2011-11-05 Gary V. Vaughan <gary@gnu.org>
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.
4295 maint: rename the debug shell command variable to `debug_cmd'.
4296 Not only does it make more sense, it also matches bootstrap and
4298 * libtoolize.m4sh, libltdl/config/ltmain.m4sh,
4299 libltdl/config/getopt.m4sh, tests/defs.m4sh (opt_debug): Rename
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
4310 (auxexefiles): Removed. Replaced by new pkgaux_scripts
4312 (install-data-local): Adjust.
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.
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
4328 * libltdl/Makfile.inc (libltdl/argz.h): Ditto.
4330 2011-10-31 Gary V. Vaughan <gary@gnu.org>
4332 maint: add autobuild prerequisite only if autobuild.m4 is absent.
4333 * bootstrap (func_require_autobuild_buildreq): Skip if autobuild.m4
4335 * bootstrap.conf (require_autobuild_bulidreq): No need to set this
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
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
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.
4362 tests: add a keyword `expensive' to very long running tests.
4363 * tests/cmdline_wrap.at, tests/stresstest.at (AT_KEYWORDS): Add
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
4380 2011-10-27 Gary V. Vaughan <gary@gnu.org>
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
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.
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
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
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
4418 (EXTRA_DIST): Add .serial file.
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
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.
4434 2011-10-24 Gary V. Vaughan <gary@gnu.org>
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!
4442 Reported by Bob Friesenhahn.
4444 2011-10-24 Karl Berry <karl@gnu.org>
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.
4455 2011-10-24 Gary V. Vaughan <gary@gnu.org>
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.
4461 2011-10-23 Gary V. Vaughan <gary@gnu.org>
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
4467 * cfg.mk: New file. Customize maint.mk for Libtool.
4468 * Makefile.am (EXTRA_DIST): Add GNUmakefile, cfg.mk and maint.mk.
4470 maint: use gnulib's canonical fdl.texi.
4471 * doc/fdl.texi: Removed.
4472 * bootstrap.conf (gnulib_non_module_files): Add fdl.texi.
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
4481 maint: use gnulib's (pending saner) bootstrap script.
4482 * bootstrap: Replaced with gnulib script.
4483 * bootstrap.conf: New file with Libtool specific bootstrap
4485 * Makefile.am (EXTRA_DIST): Add bootstrap.conf.
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.
4493 2011-10-22 Gary V. Vaughan <gary@gnu.org>
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.
4500 Take advantage of putting recursive file ignore matches into
4501 `$top_srcdir/.gitignore' and remove repetitions from other
4504 2011-10-22 Gary V. Vaughan <gary@gnu.org>
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
4511 tests: remove unused `aux_dir' variable from `getopt-m4sh.test'.
4512 * tests/getopt-m4sh.at (aux_dir): Remove unused variable.
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.
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
4525 <Makefile>: Output the extracted values of `aux_dir', `ltdl_dir'
4526 and `macro_dir' at the top of the quick'n'dirty bootstrap
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.
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
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)'.
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.
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
4555 * tests/defs.m4sh, tests/sh.test: Likewise.
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.
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.
4570 2011-10-20 Gary V. Vaughan <gary@gnu.org>
4572 maint: let make employ user's `SED' setting.
4573 * Makefile.am: Replace hard-coded `sed' with `$(SED)' through-
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.
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.
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.
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
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
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.
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
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
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.
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.
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'.
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.
4665 2011-10-18 Gary V. Vaughan <gary@gnu.org>
4667 Post-release administrivia.
4668 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4670 * NEWS: Add header line for next release.
4673 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
4675 * NEWS: Update version number.
4677 2011-10-17 Gary V. Vaughan <gary@gnu.org>
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.
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.
4691 2011-10-04 Bart Van Assche <bvanassche@acm.org>
4693 Typo fix - change func_apped into func_append
4694 * libltdl/config/ltmain.m4sh: Fix typo.
4696 2011-10-02 Xin LI <d@delphij.net>
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.
4703 2011-09-25 Cristophe Jarry <christophe.jarry@ouvaton.org>
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.
4712 2011-09-02 Peter O'Gorman <peter@pogma.com>
4714 Add flag to inhibit warnings.
4715 * libltdl/config/ltmain.m4sh: Add --no-warn, --no-warning flags.
4716 Reported by John David Anglin.
4718 2011-04-10 Kurt Roeckx <kurt@roeckx.be>
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.
4724 2011-04-10 Svante Signell <srs@kth.se> (tiny change)
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.
4731 2011-03-22 Justin Lecher <jlec@gentoo.org> (tiny change)
4732 Rhys Ulerich <rhys.ulerich@gmail.com>
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
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.
4746 2011-03-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
4752 Report from Jan Engelhardt.
4754 2011-03-05 Peter O'Gorman <peter@pogma.com>
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.
4764 2011-02-14 Peter O'Gorman <peter@pogma.com>
4766 Install ltmain.sh without execute bit set.
4767 * Makefile.am: change install rule for ltmain.sh
4768 Reported by Křištof Želechovski.
4770 2011-02-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4772 docs: fix copyright years in PDF version of the manual.
4773 * doc/libtool.texi: Fix copyright years.
4775 2011-02-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4777 fix typo in ChangeLog
4779 2011-02-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
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.
4786 2011-01-27 Peter O'Gorman <peter@pogma.com>
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.
4793 2011-01-20 Gerald Pfeifer <gerald@pfeifer.com> (tiny change)
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.
4801 2011-01-19 Peter O'Gorman <peter@pogma.com>
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.
4809 2011-01-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> (tiny change)
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.
4815 2011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
4823 2011-01-07 Peter Rosin <peda@lysator.liu.se>
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.
4833 Report by Dan McMahill.
4835 2011-01-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
4846 2010-12-20 Ian Lance Taylor <iant@google.com>
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.
4857 * configure.ac: Enable Go.
4860 2010-12-20 Brice De Bruyne <bricedb@gmail.com> (tiny change)
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.
4869 2010-12-20 KO Myung-Hun <komh@chollian.net> (tiny change)
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.
4875 2010-12-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
4883 2010-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
4891 * libltdl/m4/libtool.m4 (_LT_SETUP): Fix quoting for
4894 2010-12-15 KO Myung-Hun <komh@chollian.net> (tiny change)
4895 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
4901 * libltdl/config/general.m4sh: Use PATH_SEPARATOR when computing
4905 2010-12-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
4914 Honor $AUTOCONF, $AUTOMAKE in --help output.
4915 * libltdl/config/getopt.m4sh (func_help): Use $AUTOCONF and
4916 $AUTOMAKE if set, for --version outout.
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.
4923 2010-11-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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.
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.
4943 2010-11-07 Ollie Wild <aaw@google.com>
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.
4955 2010-11-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
4962 2010-11-01 Peter Rosin <peda@lysator.liu.se>
4964 docs: Windows DLLs and headers.
4965 * doc/libtool.texi (Platform quirks): Add new subsection
4968 * doc/libtool.texi (Platform quirks): Fix typo.
4970 2010-10-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
4977 Report by Markus Duft.
4979 2010-10-15 Gary V. Vaughan <gary@gnu.org>
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.
4989 2010-10-15 Gary V. Vaughan <gary@gnu.org>
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
4997 (configure_edit): ...and substitutions that should not happen until
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.
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.'
5015 2010-10-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
5024 Report by Paul Laight.
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.
5038 tests: remove unneeded 'bindir compile check' test.
5039 * tests/bindir.at (bindir compile check): Remove.
5041 2010-10-14 Peter Rosin <peda@lysator.liu.se>
5043 tests: fix $EXEEXT typo.
5044 * tests/depdemo-relink.test (func_restore_files): Use $EXEEXT
5047 2010-10-12 Simon Josefsson <simon@josefsson.org>
5048 Matěj Týč <matej.tyc@gmail.com>
5049 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
5057 2010-10-09 Paolo Bonzini <bonzini@gnu.org>
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.
5066 2010-10-07 Roumen Petrov <bugtrack@roumenpetrov.info>
5068 Add test case for 69e77671 (cwrapper PATH manipulation order)
5069 * tests/cwrapper.at: Add new test 'cwrapper and installed shared
5072 2010-10-04 Peter Rosin <peda@lysator.liu.se>
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.
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
5088 * Makefile.am (TESTSUITE_AT): Update.
5090 2010-09-27 Peter Rosin <peda@lysator.liu.se>
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.
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.
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
5115 * tests/depdemo/l2/Makefile.am: Define BUILDING_LIBL2 when
5117 * tests/depdemo/l3/Makefile.am: Define BUILDING_LIBL3 when
5119 * tests/depdemo/l4/Makefile.am: Define BUILDING_LIBL4 when
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.
5127 2010-09-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
5134 2010-09-23 Peter Rosin <peda@lysator.liu.se>
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.
5143 2010-09-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
5150 Regression introduced in v2.2.6-39-g9c3d4d8.
5152 2010-09-22 Gary V. Vaughan <gary@gnu.org>
5154 Post-release administrivia.
5155 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
5157 * NEWS: Add header line for next release.
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
5164 * NEWS: Update version number.
5166 manual: web-manual index.html clashes with @node Index.
5167 * doc/libtool.texi (Index): Renamed to `Combined Index'.
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
5174 2010-09-22 Peter Rosin <peda@lysator.liu.se>
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.
5185 2010-09-21 Peter Rosin <peda@lysator.liu.se>
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.
5195 2010-09-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
5206 2010-09-21 Gary V. Vaughan <gary@gnu.org>
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.
5215 2010-09-20 Eric Blake <eblake@redhat.com>
5217 maint: drop autobuild requirement
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.
5225 2010-09-20 Peter Rosin <peda@lysator.liu.se>
5226 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
5234 2010-09-20 Peter Rosin <peda@lysator.liu.se>
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.
5242 2010-09-19 Peter Rosin <peda@lysator.liu.se>
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
5249 2010-09-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
5255 2010-09-18 Gary V. Vaughan <gary@gnu.org>
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
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.
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.
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.
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.
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.
5288 2010-09-17 Peter Rosin <peda@lysator.liu.se>
5290 tests: actually detect missing 'test' in 'if "$foo" = ...'.
5291 * tests/sh.test: Remove extra backslash in regex.
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++.
5297 2010-09-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
5304 2010-09-17 Charles Wilson <libtool@cwilson.fastmail.fm>
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>
5315 2010-09-17 Charles Wilson <libtool@cwilson.fastmail.fm>
5317 Document libtool variable to_host_file_cmd.
5318 * doc/libtool.texi (libtool script contents:to_host_file_cmd):
5320 (libtool script contents:to_tool_file_cmd): Prefer `build platform'
5321 to `build system'; Ditto `host platform'.
5323 2010-09-16 Charles Wilson <libtool@cwilson.fastmail.fm>
5325 Fix sh.test failure introduced in 72064249
5326 * libltdl/config/ltmain.m4sh (func_mode_link): Avoid poor
5329 2010-09-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
5337 2010-09-13 Peter Rosin <peda@lysator.liu.se>
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
5348 2010-09-15 Gary V. Vaughan <gary@gnu.org>
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'
5357 2010-09-14 Eric Blake <eblake@redhat.com>
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.
5366 2010-09-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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
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
5389 2010-09-12 Peter Rosin <peda@lysator.liu.se>
5391 * .gitignore: Ignore *.obj files for MSVC (and w32 in general).
5393 Adjust to moved auxiliary files and add compile.
5394 * HACKING (Maintenance Notes): Adjust to moved files. Add the
5396 * Makefile.maint (fetch): Also fetch the compile script.
5398 2010-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
5407 2010-09-12 Charles Wilson <libtool@cwilson.fastmail.fm>
5409 When assigning $linklib value, honor [-all]-static[-libtool-libs]
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
5416 2010-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
5428 2010-09-12 Jürgen Reuter <juergen.reuter@physik.uni-freiburg.de> (tiny change)
5429 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
5436 2010-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5438 Fix getopt.m4sh to require Autoconf 2.62 or newer.
5439 * libltdl/config/getopt.m4sh (m4_version_prereq): Require 2.62,
5442 2010-09-11 Charles Wilson <libtool@cwilson.fastmail.fm>
5444 Correct typo: $sharedlib_from_linklib_cmd missing '_cmd'
5446 * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Fix obvious
5447 typo, $sharedlib_from_linklib_cmd missing '_cmd'.
5449 2010-09-10 Peter Rosin <peda@lysator.liu.se>
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).
5460 2010-09-09 Peter Rosin <peda@lysator.liu.se>
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
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.
5471 2010-09-08 Peter Rosin <peda@lysator.liu.se>
5473 Mention adjustment of naming of MSVC import libraries in NEWS.
5474 * NEWS: Mention the change in import library naming on MSVC.
5476 2010-09-07 Peter Rosin <peda@lysator.liu.se>
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.
5487 Fixup texi typo in previous.
5488 * doc/libtool.texi (libtool script content) <postlink_cmds>:
5489 Add missing 'code' command.
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
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
5503 * doc/libtool.texi (libtool script content): Update description
5504 of postlink_cmds to mention @TOOL_OUTPUT@.
5506 2010-09-06 Peter Rosin <peda@lysator.liu.se>
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.
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.
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.
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.
5547 2010-09-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
5554 2010-09-01 Charles Wilson <libtool@cwilson.fastmail.fm>
5556 Path conversion documentation
5557 * doc/libtool.texi (Platform quirks): Add new subsections
5558 'Cross compiling' and 'File name conversion'.
5560 2010-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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.
5573 Avoid leaking make flags into testsuite results.
5574 * tests/defs.m4sh: Unset MFLAGS, MAKEFLAGS, MAKELEVEL, __MKLVL__
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.
5583 2010-09-01 Gary V. Vaughan <gary@gnu.org>
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
5592 * Makefile.maint (announce-gen, libltdl/config/mailnotify):
5594 * bootstrap: Remove the mailnotify regeneration warning.
5595 * HACKING (Release Procedure): Remove references to
5597 (Alpha release note template, Full release note template):
5598 Reinstated from before announce-gen was introduced.
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.
5608 2010-08-31 Peter Rosin <peda@lysator.liu.se>
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.
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.
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.
5624 2010-08-31 Gary V. Vaughan <gary@gnu.org>
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)
5640 2010-08-31 Peter Rosin <peda@lysator.liu.se>
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
5649 2010-08-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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.
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.
5669 2010-08-30 Eric Blake <eblake@redhat.com>
5671 Simplify recent configure quoting portability workaround.
5672 * configure.ac: Simplify setting of timestamp_string.
5674 2010-08-30 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
5681 2010-08-29 Peter Rosin <peda@lysator.liu.se>
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.
5687 2010-08-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>:
5698 (_LT_SYS_HIDDEN_LIBDEPS): Ignore files matching *.lto.o.
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.
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
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.
5722 Silence order-only configure test for AIX make.
5723 * configure.ac: Also drop standard output, for AIX 5.1 make.
5725 2010-08-28 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
5731 2010-08-28 Charles Wilson <libtool@cwilson.fastmail.fm>
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):
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.
5772 2010-08-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
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.
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):
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.
5826 2010-08-28 Dave Korn <dave.korn.cygwin@googlemail.com>
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.
5833 2010-08-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5835 Fix quoting in non-XSI func_xform, for IRIX sh.
5836 * libltdl/config/ltmain.m4sh (func_xform): Remove spurious extra
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.
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
5854 2010-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
5862 2010-08-22 Charles Wilson <libtool@cwilson.fastmail.fm>
5865 * libltdl/config/ltmain.m4sh (func_mode_finish): Invert then/else
5866 blocks of the "if $opt_dry_run" conditional.
5868 2010-08-15 Paolo Bonzini <bonzini@gnu.org>
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.
5876 2010-08-12 Paolo Bonzini <bonzini@gnu.org>
5878 add libtool --mode=finish mode for sysroot
5879 * doc/libtool.texi (Finish mode): Document behavior when *.la files
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
5887 reorganize parsing of --mode=finish arguments
5888 * libltdl/config/ltmain.m4sh (func_mode_finish): Split arguments for
5889 directories and *.la files.
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.
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.
5899 2010-07-29 Paolo Bonzini <bonzini@gnu.org>
5901 initial version of the NEWS entry
5902 * NEWS: Document sysroot support.
5905 * Makefile.am (TESTSUITE_AT): Add tests/sysroot.at.
5906 * tests/sysroot.at: New.
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.
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.
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.
5925 2010-07-28 Paolo Bonzini <bonzini@gnu.org>
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.
5935 * libltdl/m4/libtool.m4 (_LT_HOST_NONCANONICAL, _LT_WITH_SYSROOT): New.
5936 (LT_SETUP): Require _LT_WITH_SYSROOT.
5938 handle sysroot flags
5939 * libltdl/config/ltmain.m4sh (func_mode_link): Recognize --sysroot
5942 2010-08-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5944 * NEWS: Only bootstrapping needs new Automake and Autoconf.
5946 check-interactive and check-noninteractive for both testsuites.
5947 * Makefile.am (COMMON_TESTS, TESTS): Split into ...
5948 (NONINTERACTIVE_TESTS, INTERACTIVE_TESTS): ... these new
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
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.
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.
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.
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:
6019 Require Automake 1.11.1 for Libtool, enable color-tests.
6020 * configure.ac (AM_INIT_AUTOMAKE): Require 1.11.1. Enable
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.
6028 2010-08-23 Charles Wilson <libtool@cwilson.fastmail.fm>
6030 Fix syntax for cygwin-cross
6031 libltdl/m4/argz.m4: Add quotes around variable, which
6032 may contain the multiword value 'guessing no'.
6034 2010-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
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
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.
6058 2010-08-22 Paolo Bonzini <bonzini@gnu.org>
6060 Fix sed_make_literal_regex.
6061 * libltdl/config/general.m4sh (sed_make_literal_regex): Fix
6064 2010-08-15 Paolo Bonzini <bonzini@gnu.org>
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
6072 2010-08-21 Rainer Tammer <tammer@tammer.net> (tiny change)
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.
6079 2010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
6086 Report by Rainer Tammer.
6088 Remove dead code from versioning test.
6089 * tests/versioning.at (versioning): No need to build unused
6092 2010-08-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
6102 Bump copyright years in manual.
6103 * doc/libtool.texi: Bump copyright years.
6105 2010-08-13 Peter Rosin <peda@lysator.liu.se>
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
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
6117 * doc/libtool.texi (libtool script contents): Update with
6118 archiver_list_spec description.
6120 2010-08-10 Gary V. Vaughan <gary@gnu.org> (tiny change)
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>
6128 2010-08-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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.
6142 2010-08-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
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
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.
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.
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.
6175 2010-08-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
6182 Bug report by Rainer Tammer.
6184 Fix ltdl-libdir test for C++ compilers.
6185 * tests/ltdl-libdir.at (libdir of installed modules): Declare
6186 module function as extern "C".
6188 2010-08-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
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
6210 Fixes testsuite failures on AIX, FreeBSD, etc.
6211 Report by Rainer Tammer.
6213 2010-08-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
6222 2010-08-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
6230 2010-08-01 Paolo Bonzini <bonzini@gnu.org>
6232 Fix bug in postdeps computation
6233 * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Actually
6234 concatenate $prev and $p.
6236 2010-07-26 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
6243 2010-07-18 Peter Rosin <peda@lysator.liu.se>
6245 * tests/stresstest.at: Link with main.lo when liba is shared
6246 and linking main with -no-install.
6248 2010-07-18 Peter Rosin <peda@lysator.liu.se>
6250 * tests/stresstest.at [MSVC]: dllimport all imported
6253 2010-07-17 Peter Rosin <peda@lysator.liu.se>
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.
6259 2010-07-08 Peter Rosin <peda@lysator.liu.se>
6260 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
6271 2010-07-08 Gary V. Vaughan <gary@gnu.org>
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
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.
6292 2010-07-08 Peter Rosin <peda@lysator.liu.se>
6294 Optimize assignment of output_la.
6295 * libltdl/config/ltmain.m4sh (func_mode_link): Save two fork/exec
6297 Report by Ralf Wildenhues.
6299 2010-07-08 Gary V. Vaughan <gary@gnu.org>
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.
6305 2010-07-07 Gary V. Vaughan <gary@gnu.org>
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.
6311 2010-07-07 Charles Wilson <libtool@cwilson.fastmail.fm>
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)
6327 (func_win32_libid): Accomodate pei-i386 import libs
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.
6348 2010-07-05 Peter Rosin <peda@lysator.liu.se>
6350 * tests/export.at [MSVC]: dllimport all imported variables.
6352 2010-07-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6353 Peter Rosin <peda@lysator.liu.se>
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
6364 2010-07-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6366 Fix ccache test for MSVC.
6367 * tests/static.at (ccache -all-static): Ignore compiler stderr.
6368 Reported by Peter Rosin.
6370 2010-07-03 Charles Wilson <libtool@cwilson.fastmail.fm>
6372 Avoid false failures caused by filesystem interaction
6373 * tests/dlloader-api.at (dlloader API): Use uglified names for
6376 2010-07-03 Peter Rosin <peda@lysator.liu.se>
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.
6382 2010-07-02 Peter Rosin <peda@lysator.liu.se>
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
6389 (_LT_LANG_CXX_CONFIG): Likewise, but also add the missing |.
6391 2010-07-01 Peter Rosin <peda@lysator.liu.se>
6393 Fix regression caused by "Add func_append_quoted and do..."
6394 * libltdl/config/ltmain.m4sh (func_mode_link): Remove leftover
6397 2010-06-28 Peter Rosin <peda@lysator.liu.se>
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
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
6427 * NEWS: Add note of the new MANIFEST_TOOL environment variable.
6429 2010-06-24 Peter Rosin <peda@lysator.liu.se>
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.
6438 2010-07-01 Gary V. Vaughan <gary@gnu.org>
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.
6447 2010-06-30 Gary V. Vaughan <gary@gnu.org>
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
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
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
6463 2010-06-29 Gary V. Vaughan <gary@gnu.org>
6465 Correct func_split_short_opt comment cut-n-pasto.
6466 * libtool/config/getopt.m4sh (func_split_short_opt): Fix
6467 the function comment.
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.
6478 2010-06-28 Gary V. Vaughan <gary@gnu.org>
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
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
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
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
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.
6516 2010-06-27 Gary V. Vaughan <gary@gnu.org>
6518 Add missing case branch terminators.
6519 * libltdl/config/ltmain.m4sh: Fixed everal case branches with
6520 missing ';;' terminators.
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>
6528 Amend a missed opt_mode rename instance in ltmain.m4sh.
6529 * libltdl/config/ltmain.m4sh <mode>: Rename to opt_mode.
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.
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
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
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
6562 * libltdl/config/getopt.m4sh (m4_version_prereq): This file
6563 requires m4sugar.m4 from Autoconf-2.61 or newer.
6565 2010-06-24 Charles Wilson <libtool@cwilson.fastmail.fm>
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
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.
6584 2010-06-21 Gary V. Vaughan <gary@gnu.org>
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.
6594 2010-06-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
6601 Add comment for exception handling module unloading issue.
6602 * tests/exceptions.at (C++ exception handling): Add comment
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
6612 2010-06-19 Charles Wilson <libtool@cwilson.fastmail.fm>
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++
6622 2010-06-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
6633 Let the bootstrap script fail upon errors.
6634 * bootstrap: Enable errexit.
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.
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):
6649 * Makefile.am (TESTSUITE_AT): Update.
6650 * NEWS, THANKS: Update.
6651 Suggestion by Joakim Tjernlund and Paolo Bonzini.
6653 2010-06-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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
6668 * libltdl/config/announce-gen.m4sh: Use @PACKAGE@ not
6671 2010-06-15 Peter Rosin <peda@lysator.liu.se>
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
6679 * Makefile.am: Add above new test.
6680 * doc/libtool.texi (libtool script contents): Document
6684 2010-06-15 Philip Allison <philip.allison@smoothwall.net> (tiny change)
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.
6691 2010-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
6699 2010-06-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
6706 2010-06-14 Peter O'Gorman <peter@pogma.com>
6708 Pass resident test with --disable-shared too.
6709 * tests/resident.at: use LTDL_SET_PRELOADED_SYMBOLS.
6711 2010-06-13 Peter O'Gorman <peter@pogma.com>
6713 Test with --disable-shared at release time too.
6716 Avoid failure for --disable-shared.
6717 * tests/lt_dladvise.at: Hack.
6719 Use LTDL_SET_PRELOADED_SYMBOLS to avoid failure.
6720 * tests/exceptions.at: Use it.
6722 2010-06-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
6738 2010-06-12 Peter Rosin <peda@lysator.liu.se>
6739 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
6750 2010-06-11 Peter O'Gorman <peter@pogma.com>
6752 Skip bindir install test if we're not building shared.
6753 * tests/bindir.at: Skip install test if necessary.
6755 Report by Michael E Faenza.
6757 2010-06-11 Gary V. Vaughan <gary@gnu.org>
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.
6769 2010-06-10 Peter O'Gorman <peter@pogma.com>
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.
6776 2010-06-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
6784 2010-06-10 Gary V. Vaughan <gary@gnu.org>
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.
6797 Fix a typu in HACKING.
6798 * HACKING (Release Procedure): s/Makeflie/Makefile/.
6800 2010-06-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
6812 Report by Warren Dodge.
6814 2010-06-09 Peter O'Gorman <peter@pogma.com>
6816 Skip demo-nopic tests if SELinux policy will cause failure.
6817 * tests/demo-nopic.test: Check SELinux policy and skip if
6820 2010-06-09 Gary V. Vaughan <gary@gnu.org>
6822 Set SCM version number to 2.2.11a.
6823 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6827 GNU Libtool 2.2.10 was released.
6829 Prepare for next release.
6830 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version number
6832 * NEWS: Update version number.
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
6839 2009-09-15 Peter Rosin <peda@lysator.liu.se>
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
6848 2010-06-09 Gary V. Vaughan <gary@gnu.org>
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
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
6868 (GPL with Libtool exception clause): Ditto, only libltdl/README
6869 used to be distributed with this variation.
6870 * AUTHORS: Add GPL license text.
6872 Fix a type in the 2.2.8 release notes.
6873 * NEWS: s/ romoted/ promoted/ in the 2.2.8 release notes.
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".
6880 Enable correct extraction of multiline copyright from --version.
6881 * libltdl/config/getopt.m4sh: Wrap copyright notice at 76
6883 (func_version): Don't omit spaces when merging multiline copyright
6885 * clcommit.m4sh, libtoolize.m4sh: Wrap copyright notice at 76
6888 * NEWS (2.2.8): BlueGene compiler tests were performed on BG/P
6890 Reported by Christian Rössel <christian.roessel@gmx.de>
6892 2010-06-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
6899 Report and analysis by Peter Rosin.
6901 Avoid autom4te warning about unnamed diversion.
6902 * libltdl/config/getopt.m4sh: Use diversion name KILL not -1.
6904 2010-06-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6906 Make versioning test stricter for w32, enable shared libs.
6907 * tests/versioning.at (versioning): Add -no-undefined to
6909 (test_uninstalled): Also move $bindir out of the way
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.
6919 Report by Ryan Hill.
6921 2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
6923 Rewrite manual intro to be gender-neutral.
6924 * doc/libtool.texi (Introduction): Use gender-neutral
6925 formulation when addressing developers.
6927 2010-06-05 Gary V. Vaughan <gary@gnu.org>
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.
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.
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.
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.
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.
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.
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.
6962 Set SCM version number to 2.2.9a.
6963 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
6967 GNU Libtool 2.2.8 was released.
6969 Prepare for next release.
6970 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
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.
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
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
6992 (Alpha release note template, Full release note template):
6995 2010-05-22 Gary V. Vaughan <gary@gnu.org>
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>
7004 2010-05-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7006 * HACKING: Set Reply-To: in announcement emails.
7008 2010-05-21 Gary V. Vaughan <gary@gnu.org>
7010 Set SCM version number to 2.2.7c.
7011 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
7015 GNU Libtool 2.2.7b was released.
7017 Prepare for next release candidate.
7018 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
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.
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.
7038 2010-05-05 Peter Rosin <peda@lysator.liu.se>
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>
7045 2010-05-04 Peter O'Gorman <peter@pogma.com>
7047 Ranlib is required with -force_load and fat archives.
7048 * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Run
7050 Reported by Jeremy Huddleston <jeremyhu@apple.com>
7052 2010-04-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7063 2010-04-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
7071 2010-03-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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 '
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>.
7084 2010-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7086 Fix preloader symbol list declaration in libltdl.
7087 * libltdl/ltdl.c (preloaded_symbols): Fix declaration to include
7089 (lt_dlinit): Do not take address of preloaded_symbols.
7091 Fix typo in libtool --help output.
7092 * libltdl/config/ltmain.m4sh (func_mode_help): Fix typo in help
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.
7100 Do not use @sc nor @acronym in the manual.
7101 * doc/libtool.texi: Remove all usage of @sc.
7103 2010-03-19 Chris Demetriou <cgd@google.com>
7105 Sort output of 'find' to enable deterministic builds.
7106 * libltdl/config/ltmain.m4sh (func_extract_archives): Sort
7108 * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Likewise.
7111 2010-03-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
7121 2010-03-17 Peter Rosin <peda@lysator.liu.se>
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
7127 Report by Ralf Wildenhues.
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
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.
7152 2010-02-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7159 Report by Vadim Zeitlin.
7161 2010-02-28 Pierre Ossman <ossman@ossman.lkpg.cendio.se> (tiny change)
7162 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
7171 * Makefile.am (TESTSUITE_AT): Update.
7174 2010-02-24 Scott McCreary <scottmc2@gmail.com> (tiny change)
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.
7182 2010-02-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7184 manual: fix detailmenu ordering.
7185 * doc/libtool.texi (Top): Add section for `Linking executables'
7188 2010-02-21 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
7196 2010-02-21 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
7208 2010-02-21 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
7218 2010-02-21 Charles Wilson <libtool@cwilson.fastmail.fm>
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
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
7243 2010-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7245 Use --email with gendocs.sh.
7246 * Makefile.maint (web-manual): Pass bug reporting address to
7249 Make testsuite code C++ clean again.
7250 * tests/resident.at (resident modules): Fix for C++.
7252 2010-01-29 Peter Rosin <peda@lysator.liu.se>
7253 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7255 Testsuite exposure for dlloader API.
7256 * tests/dlloader-api.at: New file, new test.
7257 * Makefile.am (TESTSUITE_AT): Update.
7259 2010-01-29 Peter Rosin <peda@lysator.liu.se>
7261 * tests/loadlibrary.at: Fix C++ issues.
7263 2010-01-20 Peter Rosin <peda@lysator.liu.se>
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
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.
7278 2010-01-02 Peter Rosin <peda@lysator.liu.se>
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.
7290 2010-01-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7297 Testsuite exposure for relative output file names and deplibs.
7298 * tests/deplib-in-subdir.at (deplib in subdir): New file, new
7300 * Makefile.am (TESTSUITE_AT): Update.
7301 Prompted by report from Bob Friesenhahn.
7303 2010-01-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7304 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
7306 Testsuite exposure for C++ exception handling.
7307 * tests/exceptions.at (C++ exception handling): New file, new
7309 * Makefile.am (TESTSUITE_AT): Update.
7310 Report by Bob Friesenhahn.
7312 2010-01-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7322 2009-12-30 Peter Rosin <peda@lysator.liu.se>
7324 * libltdl/ltdl.c (lt_dlerror): Remove meaningless conditional.
7326 2009-12-29 Peter Rosin <peda@lysator.liu.se>
7328 * libltdl/ltdl.c (file_not_found): Fix typos in code comment.
7330 2009-12-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7332 Replace last __oline__ instance.
7333 * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Replace last
7334 __oline__ instance with $LINENO.
7336 2009-12-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7338 Improve parsing of .la files in libltdl.
7339 * libltdl/ltdl.c (trim): Do not dump core upon missing quote in
7341 * tests/lalib-syntax.at (syntax of .la files): New file, new
7343 * Makefile.am (TESTSUITE_AT): Add tests/lalib-syntax.at.
7344 Report by Bob Friesenhahn.
7346 2009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7348 Sane fallback initialization of $ECHO from $as_echo.
7349 * libltdl/config/general.m4sh: Use 'printf %s\n' if $as_echo is
7351 * tests/testsuite.at: Likewise.
7353 Report by Vadim Zeitlin and Peter Rosin.
7355 2009-12-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
7372 2009-11-30 Peter Rosin <peda@lysator.liu.se>
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.
7379 2009-11-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7387 2009-11-25 Peter Rosin <peda@lysator.liu.se>
7389 Fix cross build issue in execute mode test.
7390 * tests/execute-mode.at: Skip test for cross builds.
7392 2009-11-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
7405 Report by Jeff Squyres and Brent Leback.
7407 2009-11-16 Peter O'Gorman <peter@pogma.com>
7409 Update libltdl version to match 2.2.6b release.
7410 * libltdl/Makefile.inc: Make version 9:1:2
7412 2009-11-14 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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
7419 * tests/testsuite.at: Qualify access to module.la file in
7420 current directory so that test passes.
7422 2009-11-14 Peter O'Gorman <peter@pogma.com>
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.
7429 2009-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7436 2009-11-04 Alexandre Oliva <aoliva@redhat.com>
7437 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7444 2009-11-02 Eric Blake <ebb9@byu.net>
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.
7450 2009-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
7458 Improve versioning algorithm documentation.
7459 * doc/libtool.texi (Updating version info): Repeat the
7460 algorithms in different, hopefully simpler terms.
7462 Prompted by Richard B. Kreckel.
7464 2009-11-01 Ingo Weinhold <ingo_weinhold@gmx.de> (tiny change)
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
7473 * NEWS, THANKS: Update.
7475 2009-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7481 Report by Matthijs Kooijman.
7483 2009-09-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7493 2009-09-12 Dave Korn <dave.korn.cygwin@googlemail.com>
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.
7506 2009-09-11 Akim Demaille <demaille@gostai.com>
7508 libtool: clean libconftest.a.
7509 * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Here.
7511 2009-09-10 Peter Rosin <peda@lysator.liu.se>
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.
7518 2009-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7528 Report by Josh Hursey against OpenMPI.
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.
7543 2009-09-07 Peter O'Gorman <peter@pogma.com
7545 Fix redirect in test case.
7546 * tests/darwin.at: Fix stderr redirect.
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.
7553 2009-09-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7555 Testsuite keyword 'interactive' and check-* rules.
7556 * Makefile.am (testsuite_deps, testsuite_deps_uninstalled):
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
7563 * doc/libtool.texi (Test descriptions): Document all keywords
7564 used in the Libtool test suite.
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.
7572 Report by Donn Washburn.
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.
7579 2009-09-04 Peter Rosin <peda@lysator.liu.se>
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
7588 2009-08-23 Lennart Poettering <lennart@poettering.net> (tiny change)
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.
7596 2009-08-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
7604 2009-07-24 Roumen Petrov <bugtrack@roumenpetrov.info> (tiny change)
7606 Fixup 'execute mode' test for w32.
7607 * tests/execute-mode.at (execute mode): Add missing $EXEEXT.
7608 (LDFLAGS): Add -no-undefined.
7610 2009-07-01 Yaakov Selkowitz <yselkowitz@users.sourceforge.net> (tiny change)
7611 Charles Wilson <libtool@cwilson.fastmail.fm>
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).
7618 2009-06-29 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
7624 2009-06-28 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
7631 2009-06-27 Charles Wilson <libtool@cwilson.fastmail.fm>
7633 Add alias for obsoleted AC_LIBTOOL_RC macro.
7634 * libltdl/m4/libtool.m4: Add alias for obsoleted
7635 macro AC_LIBTOOL_RC.
7637 2009-06-21 Charles Wilson <libtool@cwilson.fastmail.fm>
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
7648 [main]: Remove code related to eliminated commandline
7649 options --lt-env-set, --lt-env-prepend, --lt-env-append.
7651 2009-06-19 Yaakov Selkowitz <yselkowitz@users.sourceforge.net> (tiny change)
7652 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
7657 2009-06-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7664 2009-06-14 Mike Gorchak <mike@malva.ua> (tiny change)
7665 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7667 Fix versioning computation for QNX.
7668 * libltdl/config/ltmain.m4sh (func_mode_link): Set `$current'
7669 and `$age' properly for version_type `qnx'.
7671 2009-06-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7677 2009-06-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
7688 Report by Akim Demaille.
7690 2009-06-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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
7705 Report by Robert Garron.
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.
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.
7721 Prompted by report from Patrice Fromy.
7723 2009-06-07 Vincent Torri <vtorri@univ-evry.fr> (tiny change)
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
7731 2009-06-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7739 Report by Camilo La Rota.
7741 2009-06-06 Richard Sandiford <richards@transitive.com>
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.
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.
7757 2009-05-27 Peter O'Gorman <peter@pogma.com>
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.
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>
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
7779 Report and initial patch by Rainer Emrich, refined by Peter
7782 2009-05-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
7790 Exposed by the `libtoolize config files serial update' test.
7792 2009-05-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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'.
7798 Report by Maciej Helminiak.
7800 2009-05-02 Alan Hourihane <alanh@fairlite.co.uk> (tiny change)
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.
7807 2009-05-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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*
7813 * NEWS, THANKS: Update.
7814 Report, feedback and testing by John R. Cary and Christian
7817 manual: fix grammaros.
7818 * doc/libtool.texi (Dlpreopening): Fix grammaro.
7819 (C header files): Remove duplicate word.
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.
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.
7833 2009-04-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7839 Report by Christian Rössel.
7841 2009-03-29 Yaakov Selkowitz <yselkowitz@users.sourceforge.net> (tiny change)
7842 Charles Wilson <libtool@cwilson.fastmail.fm>
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
7849 2009-03-29 Yaakov Selkowitz <yselkowitz@users.sourceforge.net> (tiny change)
7850 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
7857 2009-03-29 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
7864 2009-03-20 Peter Rosin <peda@lysator.liu.se>
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
7871 * tests/early-libtool.at: Make sure we do not regress.
7873 2009-01-26 Peter Rosin <peda@lysator.liu.se>
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.
7884 Reports by Rudolf Leitgeb and Peter Kjellerstedt.
7886 2009-03-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7895 2009-03-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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.
7912 Report and analysis by Tim Rice and John Wolfe.
7914 2009-02-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7916 * doc/libtool.texi (Distributing libltdl, Test descriptions):
7917 Add missing parentheses.
7919 2009-02-28 Tim Rice <tim@multitalents.net>
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.
7926 2009-02-28 Török Edwin <edwintorok@gmail.com> (tiny change)
7927 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
7935 2009-02-28 Andreas Schwab <schwab@suse.de>
7936 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
7946 2009-02-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
7953 * tests/testsuite.at: Adjust.
7954 * tests/install.at (Install tests): Likewise.
7956 2009-02-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7957 Kurt Roeckx <kurt@roeckx.be>
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.
7964 2009-02-03 Kurt Roeckx <kurt@roeckx.be>
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>.
7971 2009-02-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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
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.
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.
7993 2009-01-31 Jeff Squyres <jsquyres@cisco.com>
7994 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8002 2009-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
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
8023 Report by Mike Gorchak.
8025 2009-01-30 Akim Demaille <demaille@gostai.com>
8027 Fix cwrapper warnings from MSVC 2005.
8028 * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
8029 [file scope]: define _CRT_SECURE_NO_DEPRECATE.
8031 2009-01-29 Akim Demaille <demaille@gostai.com>
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.
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
8043 2009-01-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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
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.
8064 2009-01-29 Akim Demaille <demaille@gostai.com>
8065 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8072 2009-01-29 Peter Rosin <peda@lysator.liu.se>
8074 Make modified libtool script in cwrapper test executable
8075 * tests/cwrapper.at: Make modified libtool script executable.
8076 Report by Roumen Petrov.
8078 2009-01-28 Akim Demaille <demaille@gostai.com>
8081 * libtoolize.m4sh: Remove trailing spaces.
8082 Use <tab><sp>, as some editors remove "useless" spaces in
8085 2009-01-26 Peter Rosin <peda@lysator.liu.se>
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.
8092 2009-01-25 Mike Frysinger <vapier@gentoo.org>
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.
8099 2009-01-24 Charles Wilson <libtool@cwilson.fastmail.fm>
8101 Add -Wall to cwrapper tests.
8102 * tests/cwrapper.at: Add -Wall existing tests. Add additional
8103 round of tests with -Wall alone.
8105 2009-01-24 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
8114 2009-01-24 Peter Rosin <peda@lysator.liu.se>
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.
8120 2009-01-23 Charles Wilson <libtool@cwilson.fastmail.fm>
8122 Add tests for cwrapper with -std=c89 and -std=c99
8123 * tests/cwrapper.at: New file.
8124 * Makefile.am: Add tests/cwrapper.at.
8126 2009-01-22 Peter Rosin <peda@lysator.liu.se>
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.
8135 2009-01-21 Charles Wilson <libtool@cwilson.fastmail.fm>
8137 [cygwin|mingw] Fix compile warnings when -std=c89.
8138 * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
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.
8147 2009-01-21 Charles Wilson <libtool@cwilson.fastmail.fm>
8149 Minor cygwin cleanup
8150 * libltdl/config/ltmain.m4sh (func_generate_dlsyms): Correct
8151 case pattern for cygwin.
8153 2009-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8160 2009-01-19 Robert Millan <rmh@aybabtu.com>
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
8167 * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
8168 * NEWS, THANKS: Update.
8170 2009-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8172 Another LT_AT_EXEC_CHECK fixup.
8173 * tests/shlibpath.at (shlibpath_overrides_runpath): Use
8174 LT_AT_EXEC_CHECK instead of AT_CHECK.
8176 2009-01-19 Roumen Petrov <bugtrack@roumenpetrov.info> (tiny change)
8178 Add missing $EXEEXT to java test.
8179 * tests/convenience.at (Java convenience archives): Add $EXEEXT.
8181 2009-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8191 2009-01-14 Peter Rosin <peda@lysator.liu.se>
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.
8198 2008-12-19 Akim Demaille <demaille@gostai.com>
8200 Fix copyright notice.
8201 * libltdl/config/ltmain.m4sh: Add missing comma.
8203 2008-12-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8214 Report of shlibpath_overrides_runpath issue by Mike Frysinger,
8215 report of GCC issue by Andreas Schwab.
8217 2008-11-28 Paolo Bonzini <bonzini@gnu.org>
8219 Fix inadvertent commit.
8220 * bootstrap: Revert.
8222 2008-11-28 Paolo Bonzini <bonzini@gnu.org>
8225 * doc/libtool.texi (LT_INIT): Use correct config.status
8226 invocation. Reported by Akim Demaille.
8228 2008-11-28 Paolo Bonzini <bonzini@gnu.org>
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.
8235 2008-11-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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,
8243 * Makefile.am: Adjust.
8245 * tests/runpath-in-lalib.at (Runpath in libtool library files):
8246 Add $EXEEXT overlooked in patch yesterday.
8248 2008-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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):
8259 * tests/need_lib_prefix.at (enforced lib prefix): Likewise.
8260 Report by Roumen Petrov.
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.
8270 2008-11-23 Roumen Petrov <bugtrack@roumenpetrov.info>
8271 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8288 2008-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
8300 Report by Roumen Petrov.
8302 No trailing period in Autotest test group names.
8303 * tests/link-order.at (Link order test): Drop trailing period
8305 * tests/link-order2.at (Link order of deplibs): Likewise.
8307 2008-11-23 Vincent Torri <vtorri@univ-evry.fr> (tiny change)
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.
8314 2008-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8317 * libltdl/m4/libtool.m4 (LT_LIB_M) [cegcc*]: This system has
8318 only a dummy libm, ignore.
8319 Report by Vincent Torri.
8321 Fix import library detection for WinCE.
8322 * libltdl/config/ltmain.m4sh (func_win32_libid): Work for
8323 pe-arm-wince import libraries.
8325 Report by Vincent Torri.
8327 2008-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8328 Eric Blake <ebb9@byu.net>
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
8336 2008-11-23 Alon Bar-Lev <alon.barlev@gmail.com> (tiny change)
8338 Fix func_win32_libid for 64-bit Windows.
8339 * libltdl/config/ltmain.m4sh (func_win32_libid): Accept file
8343 2008-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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):
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):
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
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.
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
8385 Report by Ethan Mallove.
8387 2008-11-21 Charles Wilson <libtool@cwilson.fastmail.fm>
8389 Fix --verbose option; add new --no-{silent|quiet|verbose} options.
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
8403 * doc/libtool.texi: document new options --no-silent/--no-quiet
8406 2008-11-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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):
8414 * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Match
8415 '*-*-cegcc*' for $host.
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
8422 Report, analysis, and test example by Jakub Bogusz.
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.
8432 2008-11-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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
8445 Report by Alon Bar-Lev.
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.
8452 2008-11-15 Charles Wilson <libtool@cwilson.fastmail.fm>
8454 Add func_win32_import_lib_p.
8455 * libltdl/config/ltmain.m4sh (func_win32_import_lib_p):
8458 2008-11-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8466 Report by Daniel Richard G.
8468 2008-11-12 Paolo Bonzini <bonzini@gnu.org>
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.
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
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.
8488 2008-11-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8490 Use -no-undefined in install tests.
8491 * tests/install.at (Install tests): Use `-no-undefined'.
8493 2008-11-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8495 Do not use `test ... -a ...'.
8496 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hpux10, hpux11]:
8497 Replace test -a with test && test.
8499 2008-11-11 Roumen Petrov <bugtrack@roumenpetrov.info> (tiny change)
8501 Fix destdir tests in cross compile mode.
8502 * tests/destdir.at (Simple DESTDIR install)
8503 (DESTDIR with in-package deplibs): Use $EXEEXT throughout.
8506 2008-11-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8514 2008-11-10 Paolo Bonzini <bonzini@gnu.org>
8516 Separate part of _LT_SETUP into other macros, detect ECHO sooner.
8517 * libltdl/m4/libtool.m4 (_LT_PREPARE_SED_QUOTE_VARS): New macro,
8519 (_LT_SETUP): ... here. Require _LT_PROG_ECHO_BACKSLASH sooner.
8521 2008-11-10 Paolo Bonzini <bonzini@gnu.org>
8523 Fix quoting when config.status generates libtool config.
8524 * libltdl/m4libtool.m4 (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT):
8525 Double quote ECHO-ed variables.
8527 2008-11-10 Paolo Bonzini <bonzini@gnu.org>
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.
8536 * libltdl/m4/libtool.m4 (_LT_INIT_GENERATED): New.
8537 (LT_OUTPUT): Use it.
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.
8543 2008-11-10 Paolo Bonzini <bonzini@gnu.org>
8545 Run sh.test on the M4sh source.
8546 * tests/defs.m4sh (scripts): Point to pre-m4 sources.
8548 2008-11-10 Paolo Bonzini <bonzini@gnu.org>
8550 Avoid that autom4te complains about unexpanded macros.
8551 * libtoolize.m4sh: Allow occurrences of "dnl" and use quadrigraphs
8552 to protect other m4 macros.
8554 2008-11-11 Bruno Haible <bruno@clisp.org>
8555 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8567 2008-11-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8570 * doc/fdl.texi: Update to GFDL 1.3.
8571 * doc/libtool.texi: Adjust.
8574 2008-11-09 Alexei Sheplyakov <varg@theor.jinr.ru> (tiny change)
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.
8581 2008-10-28 Michael Haubenwallner <michael.haubenwallner@salomon.at> (tiny change)
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.
8588 2008-10-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8590 * tests/testsuite.at (_LTDL_PROJECT_FILES): Fix dependencies for
8593 * libtoolize.m4sh (func_nonemptydir_p): Fix typo in error
8596 2008-10-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
8602 * NEWS, THANKS: Update.
8603 Report by Marcel Loose.
8605 2008-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
8625 2008-09-26 Eric Blake <ebb9@byu.net>
8628 * libltdl/loaders/loadlibrary.c (vm_open): Don't check for array
8629 being a NULL pointer.
8631 2008-09-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8633 Man pages for libtoolize and libtool, new command line option
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
8648 * libltdl/config/ltmain.m4sh: Likewise. Also, set PROGRAM to
8649 `libtool', not `ltmain.sh', so the former is used in the man
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.
8661 2008-09-08 Gary V. Vaughan <gary@gnu.org>
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.
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
8674 2008-09-07 Gary V. Vaughan <gary@gnu.org>
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.
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.
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
8691 Set SCM version number to 2.2.7a.
8692 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
8696 GNU Libtool 2.2.6 was released.
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.
8702 Run `git commit -a' when no files are passed.
8703 * clcommit.m4sh (func_commit): Add -a argument if necessary.
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
8722 * Makefile.maint: Updated to match Release Procedure
8723 instructions in HACKING.
8725 Convert mailnotify headers to git.
8726 * clcommit.m4sh: Improve mailnotify contents.
8728 Make ./commit useful again.
8729 * clcommit.m4sh: Major overhaul and simplification for git.
8731 2008-09-06 Gary V. Vaughan <gary@gnu.org>
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.
8740 2008-09-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8748 2008-09-01 Peter O'Gorman <peter@pogma.com>
8750 Revert 75142db4f8afc65ba7aae0ed80ea0b35bd9cc382 (AIX libltdl
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
8758 * NEWS: document it.
8760 2008-08-26 Peter O'Gorman <peter@pogma.com>
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.
8767 2008-08-26 Peter O'Gorman <peter@pogma.com>,
8768 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8777 2008-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8785 2008-08-21 Sam Thursfield <ssssam@gmail.com> (tiny change)
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
8793 2008-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8795 * libltdl/config/ltmain.m4sh (func_mode_link): Quote $#.
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.
8802 Report by Olaf Lenz.
8804 2008-08-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8813 2008-08-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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,
8823 * tests/early-libtool.at (config.lt): Define 'all' target.
8825 * HACKING: Update for git, fix some minor nits.
8827 2008-08-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8834 * tests/configure-iface.at (convenience libltdl): Ignore warning
8837 2008-08-07 DJ Delorie <dj@redhat.com>
8839 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [tpf]
8840 <library_names_spec>: Fix typo in variable name.
8842 2008-08-06 Steve Ellcey <sje@cup.hp.com>
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
8849 2008-08-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8851 * NEWS: Minor fixups.
8853 2008-08-01 Gary V. Vaughan <gary@gnu.org>
8855 Bring NEWS up to date.
8856 * NEWS: Add missing summaries since 2.2.4 release.
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
8862 * libltdl/libltdl/lt__private.h (lt__advise): Add a new
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.
8873 2008-08-01 Vincent Torri <doursse@users.sf.net>
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.
8885 2008-07-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8887 * libltdl/config/ltmain.m4sh (func_to_host_path): Fix sh.test
8889 Report by Paolo Bonzini.
8891 2008-07-31 Paolo Bonzini <bonzini@gnu.org>
8893 * ltmain.m4sh (func_emit_cwrapperexe_src): Factor
8894 multiple closed braces into the next cat command.
8896 2008-06-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8903 Report by Vincent Lefevre.
8905 2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
8907 * doc/libtool.texi (Linking executables, Static libraries)
8908 (Modules for libltdl, Distributing libltdl): Remove TABs from
8911 2008-06-13 Peter O'Gorman <peter@pogma.com>
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.
8918 2008-06-01 Charles Wilson <libtool@cwilson.fastmail.fm>
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
8925 Reported by: Roumen Petrov
8927 2006-06-01 Stas Maximov <smaximov@ieee.org> (tiny change)
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
8937 2008-05-31 Peter O'Gorman <peter@pogma.com>
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>
8943 2008-05-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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
8956 2008-05-25 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
8966 2008-05-25 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
8978 2008-05-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
8986 2008-05-20 Eric Blake <ebb9@byu.net>
8988 Resynchronize argz whitespace changes from gnulib.
8989 * libltdl/m4/argz.m4: Kill trailing whitespace.
8990 * libltdl/argz.c: Likewise.
8992 2008-05-19 Eric Blake <ebb9@byu.net>
8994 Fix regression from two days ago.
8995 * libltdl/m4/ltdl.m4 (_LT_LIBOBJ): Don't refer to deleted macro.
8997 2008-05-17 Eric Blake <ebb9@byu.net>
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
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.
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.
9013 2008-05-13 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
9035 2008-05-11 Charles Wilson <libtool@cwilson.fastmail.fm>
9037 Ensure cwrapper compiles without warnings under -std=c99.
9038 * libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
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.
9051 2008-05-06 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
9059 2008-05-05 Gary V. Vaughan <gary@gnu.org>
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>
9067 2008-05-04 Gary V. Vaughan <gary@gnu.org>
9069 Set SCM version number to 2.2.5a.
9070 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9074 GNU Libtool 2.2.4 was released.
9076 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9078 * libltdl/Makefile.inc (LTDL_VERSION_INFO): C:R+1:A because the
9079 interfaces are unchanged, even though we improved the code some
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.
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.
9093 2008-05-03 Gary V. Vaughan <gary@gnu.org>
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>.
9106 2008-05-02 Peter O'Gorman <peter@pogma.com>
9108 It helps to close quotes.
9109 * libltdl/config/ltmain.m4sh (func_mode_link): Add closing '.
9111 2008-05-01 Peter O'Gorman <peter@pogma.com>
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>
9118 2008-04-30 Eric Blake <ebb9@byu.net>
9120 Support cygwin 1.7.0 in loadlibrary loader.
9121 * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD) <cygwin>: Check for modern
9123 * libltdl/loaders/loadlibrary.c (vm_open): Avoid deprecated
9124 cygwin_conv_to_full_win32_path.
9126 2008-04-29 Gary V. Vaughan <gary@gnu.org>
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
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.
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.
9147 2008-04-24 Eric Blake <ebb9@byu.net>
9149 Fix bug in 2008-04-21 type improvements.
9150 * libltdl/ltdl.c (load_deplibs): Fix casting bug.
9152 2008-04-23 Michael Haubenwallner <michael.haubenwallner@salomon.at>
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
9162 * tests/testsuite.at (configure_options): Add
9163 --prefix=/nonexistent.
9165 2008-04-23 Gary V. Vaughan <gary@gnu.org>
9167 * libtoolize.m4sh (rerun_aclocal): Remove unused variable.
9168 Reported by Olly Betts <olly@survex.com>
9170 2008-04-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9172 * tests/static.at (ccache -all-static): Ignore link warnings.
9173 Report by Gary V. Vaughan.
9175 2008-04-22 Gary V. Vaughan <gary@gnu.org>
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
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.
9186 2008-04-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9194 Report by Richard Purdie.
9196 2008-04-22 Andreas Schwab <schwab@suse.de>
9197 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9199 Fix default argument for AC_LIBLTDL_CONVENIENCE.
9200 * libltdl/m4/ltdl.m4 (AC_LIBLTDL_CONVENIENCE): Default argument
9202 (AC_LIBLTDL_INSTALLABLE): Likewise.
9203 * tests/configure-iface.at (convenience libltdl): New test.
9205 2008-04-21 Gary V. Vaughan <gary@gnu.org>
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
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
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
9237 Reported by Olly Betts <olly@survex.com>
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.
9244 Reported by Olly Betts <olly@survex.com>
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
9256 Suggested by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
9258 2008-04-21 Peter O'Gorman <peter@pogma.com>
9260 basename does not take a list of strings.
9261 * libltdl/config/ltmain.m4sh(func_extract_archives): Use sed
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>
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.
9272 2008-04-20 Gary V. Vaughan <gary@gnu.org>
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.
9279 Reported by Gary Kumfert <kumfert@llnl.gov>
9281 2008-04-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9289 Report and analysis by Michael Haubenwallner.
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.
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.
9312 Suggested by Roland Mainz.
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.
9325 2008-04-18 Andreas Schwab <schwab@suse.de>
9327 * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Check optional
9329 (AC_ENABLE_STATIC): Likewise.
9330 (AC_ENABLE_FAST_INSTALL): Likewise.
9332 2008-04-16 Eric Blake <ebb9@byu.net>
9334 Make ChangeLog merges easier.
9335 * .gitattributes: New file.
9336 * HACKING: Mention how it helps.
9338 2008-04-15 Peter O'Gorman <peter@pogma.com>
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.
9349 2008-04-11 Eric Blake <ebb9@byu.net>
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.
9355 2008-04-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
9370 * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS) <func_xform>:
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.
9376 2008-04-10 Peter O'Gorman <peter@pogma.com>
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>
9385 2008-04-07 Gary V. Vaughan <gary@gnu.arg>
9387 * doc/libtool.texi (Libltdl interface): Add missing
9388 documentation for lt_dlopenavise.
9389 Reported by Anton Erti <anton@mips.complang.tuwien.ac.at>
9391 * configure.ac, libltdl/configure.ac (AM_INIT_AUTOMAKE): Use
9392 gnu rather than gnits standards so that version number 2.2.3a
9394 Reported by Olly Betts <olly@survex.com>
9396 2008-04-01 Gary V. Vaughan <gary@gnu.arg>
9398 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9401 GNU Libtool 2.2.2 was released.
9403 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9405 * libltdl/Makefile.in (LTDL_VERSION_INFO): C:R+1:A because the
9406 interfaces are unchanged, even though we improved the code some
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.
9414 2008-03-27 Peter O'Gorman <peter@pogma.com>
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.
9420 2008-03-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9432 2008-03-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9438 2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
9445 Report by Mike Frysinger.
9447 2008-03-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9458 * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_WIN32_DLL): Require
9461 Report by Jakub Bogusz.
9463 2008-03-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9467 2008-03-12 Charles Wilson <libtool@cwilson.fastmail.fm>
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()
9478 2008-03-12 Henning Nielsen Lund <hnl_dk@amigaos.dk>
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]:
9485 * THANKS, NEWS: Update.
9487 2008-03-09 Bruno Haible <bruno@clisp.org>
9488 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
9495 * tests/localization.at (localized compiler messages): New test.
9496 * Makefile.am: Adjust.
9497 Report by Bruno Haible.
9499 2008-03-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
9511 (LT_AT_CHECK, LT_AT_NOINST_EXEC_CHECK): Use it.
9512 Report by Bob Friesenhahn.
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
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.
9528 2008-03-07 Peter O'Gorman <peter@pogma.com>
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.
9534 * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Need to set LD.
9535 Reported by Nelson H. F. Beebe.
9537 2008-03-06 Peter O'Gorman <peter@pogma.com>
9539 * libltdl/m4/libtool.m4 (_LT_PROG_FC): Undo commit - bad idea.
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
9544 Reported by Nelson H. F. Beebe.
9546 2008-03-06 Gary V. Vaughan <gary@gnu.org>
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.
9552 2008-03-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9554 * tests/convenience.at (Java convenience archives): Skip test if
9555 gcj cannot compile a .java file.
9556 Report by Nelson H. F. Beebe.
9558 2008-03-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
9564 Report by Roberto Bagnara.
9566 2008-03-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
9580 Fixes 2.2 regression. Report by Roberto Bagnara.
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.
9586 Reports by Peter Rosin and Roberto Bagnara.
9588 * doc/libtool.texi (Module loaders for libltdl): Fix typo.
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
9601 * tests/lt_dlexit.at (lt_dlexit unloading libs): Update test.
9603 Report by Andreas Schwab.
9605 2008-03-01 Gary V. Vaughan <gary@gnu.org>
9607 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
9610 GNU Libtool 2.2 was released.
9612 * configure.ac, libltdl/configure.ac (AC_INIT): Bump version
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.
9623 2008-02-29 Gary V. Vaughan <gary@gnu.org>
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>.
9629 2008-02-26 Karl Berry <karl@freefriends.org>
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>.
9635 2008-02-20 Peter O'Gorman <peter@pogma.com>
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>
9641 2008-02-15 Peter O'Gorman <peter@pogma.com>
9643 * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix typo.
9645 2008-02-14 Peter Breitenlohner <peb@mppmu.mpg.de>
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.
9651 2008-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9660 2008-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9662 * libltdl/configure.ac: Bump package version.
9663 * HACKING: Reminder to do it next time, too.
9665 2008-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9667 * tests/mdemo/Makefile.am (@LIBLTDL@): Update outdated
9669 ($(top_distdir)/libltdl/libtool): Remove.
9670 Fixes spurious mdemo-dryrun failure with OpenBSD make.
9672 2008-02-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9674 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
9675 Treat like icc and ecc, for fixed `-Wl,' and `-KPIC' settings.
9677 2008-02-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9685 2008-02-06 Peter O'Gorman <peter@pogma.com>
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>
9691 2008-02-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9698 2008-02-02 Gary V. Vaughan <gary@gnu.org>
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.
9705 Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
9707 2008-02-01 Gary V. Vaughan <gary@gnu.org>
9709 * configure.ac (AC_INIT): Bump version number to 2.1c.
9711 GNU Libtool 2.1b was released.
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.
9719 2008-02-01 Gary V. Vaughan <gary@gnu.org>
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.
9727 2008-02-01 Gary V. Vaughan <gary@gnu.org>
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:
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
9741 (_LTDL_MODE_DISPATCH): Initialise lt_libobj_prefix in
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>
9751 2008-01-30 Gary V. Vaughan <gary@gnu.org>
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:
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>
9786 2008-01-29 Peter O'Gorman <peter@pogma.com>
9788 * libltdl/m4/libtool.m4 [darwin]: Changes to glob pattern matching
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
9796 2008-01-28 Gary V. Vaughan <gary@gnu.org>
9798 * libtoolize.m4sh (func_check_macros): Correct typo with
9799 '$opt_quiet ||' where '$opt_quiet &&' that was preventing
9800 func_check_macros from running!
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>
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.
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.
9817 2008-01-27 Gary V. Vaughan <gary@gnu.org>
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.
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.
9831 * libtoolize.m4sh (func_fixup_Makefile)
9832 (func_massage_aclocal_DATA, func_massage_pkgltdl_files)
9833 (func_massage_pkgconfig_files): Add missing $opt_debug.
9835 2008-01-27 Gary V. Vaughan <gary@gnu.org>
9837 * libtoolize (func_fixup_Makefile, func_massage_aclocal_DATA)
9838 (func_massage_pkgltdl_files, func_massage_pkgconfig_files):
9839 Add missing $opt_debug.
9841 2008-01-26 Gary V. Vaughan <gary@gnu.org>
9843 * libtoolize.m4sh (Main): Copy (or link) libltdl sources
9844 into project tree when LTDL_INIT was seen, whether or not
9846 (func_check_macros): Recommend LTDL_INIT instead of
9847 LT_WITH_LTDL when `--ltdl' is used before configure.ac is
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>
9853 2008-01-24 Peter O'Gorman <peter@pogma.com>
9855 * doc/notes.texi: Fix errors in previous commit.
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.
9862 2008-01-24 Eric Blake <ebb9@byu.net>
9864 Add proper quoting to doc examples.
9865 * doc/libtool.texi: Use m4 quotes where appropriate.
9866 (Test descriptions): Fix truncated sentence.
9868 2008-01-18 Gary V. Vaughan <gary@gnu.org>
9870 * Makefile.am (DISTCLEANFILES): Remove libtool.dvi generated
9873 2008-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
9883 2008-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9885 New variable LTDLDEPS for use in output_DEPENDENCIES.
9887 * libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE, _LTDL_INSTALLABLE)
9888 (LTDL_INIT): Set and substitute LTDLDEPS according to chosen
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.
9894 Dependency bug exposed by Eric Blake in M4, found by Bob Proulx
9897 2008-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9899 * doc/libtool.texi (Distributing libltdl): Clarify that
9900 `${top_build_prefix}' may be used in place of `${top_builddir}/'.
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.
9907 2008-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9909 * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Use AM_CONDITIONAL
9910 only if defined. Allows to use libltdl without aclocal.
9912 2008-01-16 Peter O'Gorman <peter@pogma.com>
9914 * libltdl/m4/libtool.m4: Set GCC var for every tag, avoids need
9917 2008-01-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
9919 * configure.ac: Set libltdl nonrecursive option, to avoid
9920 configuring libltdl inside the Libtool package.
9922 2008-01-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9929 * Makefile.maint (fetch): Update to match upstream git sources.
9930 Pull `INSTALL' from gnulib instead of from Autoconf.
9932 * doc/notes.texi: Mention AIX binutils deficiency for C++ code.
9933 Report by Rainer Tammer.
9934 Suggest using bash for configure.
9936 * libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Fix to use
9937 new _LT_SET_OPTION semantics.
9939 2008-01-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9948 Report by Rainer Tammer.
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.
9958 * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Also copy needed
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
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
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.
9974 2008-01-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9981 2008-01-11 Peter O'Gorman <peter@pogma.com>
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.
9992 2008-01-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
9998 * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE): Restore correct
9999 _LT_BUILD_PREFIX-using code.
10001 2008-01-08 Gary V. Vaughan <gary@gnu.org>
10003 * tests/recursive.at: Remove bogus --debug option.
10004 Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>
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>
10015 * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Correct closing
10017 Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10019 * NEWS: Grammar nit.
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>
10027 2008-01-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10029 * tests/runpath-in-lalib.at (Runpath in libtool library files):
10030 Compile program file without libtool.
10031 Report by Rainer Tammer.
10033 2008-01-07 Rainer Tammer <tammer@tammer.net> (tiny change)
10034 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
10042 * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
10046 2008-01-07 Gary V. Vaughan <gary@gnu.org>
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:
10054 * libltdl/m4/ltoptions.m4: Associate existing option settings with
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
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.
10084 2008-01-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
10100 2007-11-30 Stefan Sperling <stsp@elego.de> (tiny change)
10102 * doc/libtool.texi (Linking executables): Reorder paragraphs.
10104 2007-11-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
10110 2007-11-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10112 * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): New macro.
10113 Warn about whitespace in the absolute build tree name.
10116 Report by Jim Meyering.
10118 * libltdl/config/ltmain.m4sh (func_extract_an_archive)
10119 (func_extract_archives): Add some quoting.
10121 2007-11-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
10134 2007-11-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
10142 2007-11-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
10148 2007-11-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10150 * tests/runpath-in-lalib.at: New test.
10151 * Makefile.am: Update.
10152 Report by Benoit SIGOURE <tsuna@lrde.epita.fr>.
10154 2007-10-16 Eric Blake <ebb9@byu.net>
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.
10160 2007-10-12 Eric Blake <ebb9@byu.net>
10162 Whitespace cleanup.
10163 * libltdl/m4/ltsugar.m4: Avoid space-tab in indents.
10164 * libltdl/m4/libtool.m4: Avoid trailing space.
10166 Deal with Autoconf 2.62's semantic change in m4_append.
10167 * libltdl/m4/ltsugar.m4 (lt_append): Replace broken versions of
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.
10174 2007-10-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
10180 2007-10-11 Eric Blake <ebb9@byu.net>
10182 * libltdl/.cvsignore: Ignore argz.h.
10184 2007-10-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
10193 2007-10-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10195 * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
10197 * tests/suffix.test: Test it.
10199 2007-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
10206 2007-09-05 Eric Blake <ebb9@byu.net>
10208 * libltdl/ltdl.c (lt_dlcaller_get_data): Work even when no caller
10211 2007-09-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10213 * doc/libtool.texi (User defined module data)
10214 <lt_dlinterface_register>: Document that a NULL place matches
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
10220 * libltdl/ltdl.c (lt_dlexit): When removing dlloaders, ignore
10221 errors that stem from earlier failed commands. Exposed by the
10223 Fixes regression over branch-1-5.
10224 Memleak report as Coverity CID 19 via Jeff Squyres.
10226 2007-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10230 * libltdl/ltdl.c (trim): Fix possible write beyond array bound.
10232 * libltdl/ltdl.c (lt_dlopenadvise): Instead of asserting, return
10233 FILE_NOT_FOUND if the filename is "".
10235 * libltdl/ltdl.c (try_dlopen): Fix computation of extension,
10236 avoids subtracting pointer from NULL pointer.
10238 * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Do not test
10239 array address of sys_dlsearch_path against NULL, rather test for
10241 Coverity reports CID 148 and CID 149 via Jeff Squyres.
10243 * libltdl/ltdl.c (tryall_dlopen_module): Fix string length
10244 computation: do not allocate more than needed.
10246 2007-08-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10248 * libltdl/loaders/preopen.c (vm_close): `module' is unused.
10249 Coverity report CID 158 via Jeff Squyres.
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.
10255 * libltdl/ltdl.c (has_library_ext): Remove dead code.
10256 Coverity report CID 561 against Open MPI via Jeff Squyres.
10258 2007-08-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
10272 2007-08-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10274 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
10275 [ k*bsd*-gnu ] <shlibpath_overrides_runpath>: Avoid spurious
10276 output in runpath test.
10278 2007-08-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
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
10288 Report by DJ Delorie.
10290 2007-08-15 Dirk Mueller <dmueller@suse.de> (tiny change)
10291 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10293 * libltdl/ltdl.c (parse_dotla_file): Avoid a strlen. When
10294 reading .la files, cope with files that are not
10295 newline-terminated.
10297 2007-08-05 Tilman Koschnick <til@subnetz.org> (tiny change)
10299 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
10300 [ linux ]: Treat pgcpp as Portland Group C++ compiler as well.
10302 2007-08-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10304 * libltdl/ltdl.c (try_dlopen): Use `attempt' rather than
10305 `filename', as the former has the needed extension when called
10307 Report by Brian Barrett.
10309 2007-07-27 Peter Rosin <peda@lysator.liu.se>
10311 * Makefile.am: Pass STRIP through to the testsuite, so that
10312 tests that run configure will use the same strip program.
10314 2007-07-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10316 * tests/mdemo-exec.test: Also try absolute library names.
10317 * tests/mdemo/main.c (test_dl, main): Try lt_dlopenext as well.
10319 Report by Brian Barrett.
10321 2007-07-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10323 * doc/fdl.texi: Update to GFDL 1.2.
10324 * doc/libtool.texi: Adjust. Put License in Appendix.
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>.
10331 2007-07-23 Eric Blake <ebb9@byu.net>
10333 * libltdl/config/ltmain.m4sh: Whitespace cleanup.
10335 * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
10336 <chase_symlinks>: Avoid compiler warning.
10338 2007-07-22 Peter Rosin <peda@lysator.liu.se>
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.
10344 2007-07-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10346 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]:
10347 Ignore lines in ld.so.conf starting with 'hwcap '.
10349 2007-07-16 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
10369 2007-07-14 Peter Rosin <peda@lysator.liu.se>
10371 * AUTHORS, THANKS: Peter Ekberg got married, now Peter Rosin.
10373 2007-07-13 Charles Wilson <libtool@cwilson.fastmail.fm>
10375 * libltdl/m4/libtool.m4 (func_dirname_and_basename) <XSI>:
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.
10385 2007-07-12 Peter Rosin <peda@lysator.liu.se>
10387 * libltdl/config/ltmain.m4sh (func_mode_link): Strip the cwrapper
10388 using $STRIP instead of relying on the tools to support -s, which
10391 2007-07-06 Peter O'Gorman <peter@pogma.com>
10393 * libltdl/config/libtool.m4sh: Don't pass -msg_* through to the
10395 Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
10397 2007-07-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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
10406 2007-07-04 Eric Blake <ebb9@byu.net>
10408 * libltdl/ltdl.c (advise_dup): Delete function no longer used
10409 after memleak fix three days ago.
10411 2007-07-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
10417 2007-07-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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):
10424 Report by H. J. Lu <hjl@lucon.org>.
10426 * libltdl/ltdl.c (tryall_dlopen): Rename argument to have typed
10427 alias of `advise' instead of allocating a copy. Fixes memleak.
10429 2007-06-30 Peter Breitenlohner <peb@mppmu.mpg.de>
10431 * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Correct a typo
10432 ("-dld" instead of "-ldld").
10434 2007-06-24 Gary V. Vaughan <gary@gnu.org>
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:
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
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.
10476 2007-06-24 Gary V. Vaughan <gary@gnu.org>
10478 Reenable compilation of libltdl with C++:
10480 * libltdl/ltdl.c (tryall_dlopen): Rename the try variable to
10481 attempt, and cast explicitly.
10482 (advise_dup): Add explicit cast.
10484 2007-06-22 Peter O'Gorman <peter@pogma.com>
10486 * libltdl/config/ltmain.m4sh (version-number) [irix]: Don't subtract
10487 1 from major as it may be less than age.
10489 2007-06-21 Noah Misch <noah@cs.caltech.edu>
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>.
10497 2007-06-19 Charles Wilson <libtool@cwilson.fastmail.fm>
10499 * AUTHORS: Add myself.
10501 2007-06-18 Charles Wilson <libtool@cwilson.fastmail.fm>
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
10523 (func_emit_cwrapperexe_src) [main, mingw]: Use _spawnv
10524 and return child's exit code manually rather than rely on
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
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.
10540 2007-06-17 Noah Misch <noah@cs.caltech.edu>
10542 * AUTHORS: Add myself.
10544 2007-06-17 Peter O'Gorman <peter@pogma.com>
10546 * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): add quotes to
10549 2007-06-17 Charles Wilson <libtool@cwilson.fastmail.fm>
10551 * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): ensure stderr
10552 is redirected even when getconf does not exist.
10554 2007-06-09 Charles Wilson <libtool@cwilson.fastmail.fm>
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
10560 (func_emit_libtool_cwrapperexe_source) [file scope]:
10561 define permission flags S_IXGRP and S_IXOTH if not
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
10569 (func_emit_libtool_cwrapperexe_source) [make_executable]:
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.
10577 2007-06-07 Charles Wilson <libtool@cwilson.fastmail.fm>
10579 * libltdl/config/ltmain.m4sh (func_emit_libtool_cwrapperexe_source):
10580 ensure that generated source follows GCS as nearly as
10583 2007-06-07 Charles Wilson <libtool@cwilson.fastmail.fm>
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)
10606 2007-06-03 Peter O'Gorman <peter@pogma.com>
10608 * libltdl/m4/libtool.m4 (old_archive_cmds): Remove
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>
10616 2007-06-01 Steve Ellcey <sje@cup.hp.com>
10618 * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Try using getconf
10619 to set lt_cv_sys_max_cmd_len.
10621 2007-05-28 Peter O'Gorman <peter@pogma.com>
10623 * libltdl/config/ltmain.m4sh (func_mode_link),
10624 libltdl/m4/libtool.m4 [darwin]: Only use ${wl} in verstring
10627 2007-05-22 Gary V. Vaughan <gary@gnu.org>
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.
10636 2007-05-10 Noah Misch <noah@cs.caltech.edu>
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.
10642 * libltdl/config/general.m4sh (func_echo): Use $* instead of
10645 2007-05-09 Eric Blake <ebb9@byu.net>
10647 * libltdl/libltdl/lt_error.h (LT_ERROR_LEN_MAX): Adjust, to fix
10648 buffer overflow in previous patch.
10650 2007-05-09 Gary V. Vaughan <gary@gnu.org>
10652 * tests/lt_dladvise.at: Commit missing file from below.
10654 2007-05-08 Gary V. Vaughan <gary@gnu.org>
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:
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
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
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.
10701 2007-05-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
10707 * tests/inherited_flags.at: Amend test.
10708 Report by Christoph Egger.
10710 2007-05-03 Reuben Thomas <rrt@sc3d.org> (tiny change)
10712 * doc/libtool.texi (Libltdl interface): Fix typo.
10714 2007-05-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
10723 2007-04-27 Noah Misch <noah@cs.caltech.edu>
10725 * tests/ctor.at: New file.
10726 * Makefile.am (TESTSUITE_AT): Add tests/ctor.at.
10728 2007-04-27 Charles Wilson <libtool@cwilson.fastmail.fm>
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>.
10736 2007-04-25 Charles Wilson <libtool@cwilson.fastmail.fm>
10737 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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.
10748 2007-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10750 * README, README.alpha: Document how to test an arbitrary
10751 installed libtool script.
10753 2007-04-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10755 * tests/cmdline_wrap.at: Avoid `AT_CAPTURE_FILE' if it not
10756 defined (Autoconf < 2.60).
10757 * tests/shlibpath.at: Add `libtool' keyword.
10759 * tests/indirect_deps.at: New file, with tests to ensure
10760 `link_all_deplibs=no' does not break functionality.
10761 * Makefile.am: Adjust.
10763 2007-04-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
10773 2007-04-23 Charles Wilson <libtool@cwilson.fastmail.fm>
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
10779 (func_mode_link): move cwrapper source code generation from
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.
10786 2007-04-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
10792 2007-04-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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'.
10798 Report by Simon Josefsson.
10800 2007-03-30 Matthieu Herrb <matthieu.herrb@laas.fr>
10802 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
10803 [ openbsd ]: Add an explicit check for shared libraries support.
10805 2007-03-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10807 * Makefile.am ($(srcdir)/$(m4dir)/ltversion.m4): Fix quoting
10810 2007-03-28 Gary V. Vaughan <gary@gnu.org>
10812 * HACKING (Abstraction layers in libltdl): Rewritten somewhat
10813 for (hopefully) better clarity.
10815 2007-03-26 Gary V. Vaughan <gary@gnu.org>
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:
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
10829 * configure.ac (CONFIG_STATUS_DEPENDENCIES): Change from
10830 stamp-vcl to ChangeLog.
10831 * NEWS: Removed entry saying this fix is needed.
10833 2007-03-25 Gary V. Vaughan <gary@gnu.org>
10835 * HACKING (LGPL with Libtool exception clause): Typo.
10836 Reported by Tim Van Holder <tim.van.holder@telenet.be>
10838 * HACKING (Licensing Rules): Explain the various license texts
10839 used for files distributed with Libtool, and update license text
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.
10943 2007-03-19 Gary V. Vaughan <gary@gnu.org>
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.
10950 2007-03-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
10963 Report by Martin Koeppe <mkoeppe@gmx.de>.
10965 * libltdl/m4/libtool.m4 (LT_PROG_GCJ): Avoid M4 expansion error
10966 that caused `dnl' to be merged to the previous word.
10968 Report by Steve Ellcey.
10970 2007-03-09 Gary V. Vaughan <gary@gnu.org>
10972 * libtoolize.m4sh: Replace literal tab chars in help comment
10973 with spaces to align columns in --help output.
10975 2007-03-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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.
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.
10992 2007-03-05 Gary V. Vaughan <gary@gnu.org>
10994 * libtoolize.m4sh (func_check_macros): Display m4 quotes correctly
10995 in AC_CONFIG_MACRO_DIR diagnostics.
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.
11004 2007-02-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11006 * tests/lt_dlexit.at: Allow test to pass on static-only systems
11007 and with disable-shared.
11009 * NEWS: Rewrite all news since 1.9f and put in categories,
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.
11019 2007-02-26 Gary V. Vaughan <gary@gnu.org>
11021 * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fix regexp typo.
11023 * clcommit.m4sh: Look in the right directory for helper scripts.
11025 2007-02-25 Gary V. Vaughan <gary@gnu.org>
11027 * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fixup regex to
11028 match Copyright notice change below.
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.
11041 2007-02-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
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.
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.
11068 2007-02-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11074 * doc/libtool.texi (LT_INIT): Fix typo.
11076 * doc/libtool.texi (Libtool test suite): Mention the new
11077 testsuite. Point to README rather than INSTALL for testing
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.
11093 * bootstrap: Also set GREP, FGREP, EGREP, LN_S, when creating a
11094 preliminary ltmain.sh script.
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.
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
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.
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.
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.
11136 2007-02-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11138 Fix -export-symbols and -export-symbols-regex for links that
11139 exceed the command line length and use convenience archives.
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
11146 Report by Bob Friesenhahn.
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.
11162 * libltdl/config/ltmain.m4sh (func_mode_link): Avoid setting
11163 `$libobjs' to a single space; set it to empty in that case.
11165 2007-02-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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'.
11172 * Makefile.am (doc_libtool_TEXINFOS): Renamed from...
11173 (libtool_TEXINFOS): ...this, to fix dependencies. Omit from
11175 (check-local): Also depend upon $(bin_SCRIPTS).
11177 2007-02-23 Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> (tiny change)
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.
11183 2007-02-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11189 2007-02-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11196 * tests/template.at: Reformat, add M4 quoting. Use $LDFLAGS
11197 consistently for link mode.
11199 2007-02-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11201 * tests/static.at: Use the right names for the broken libs.
11203 2007-02-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11209 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux |
11210 k*bsd*-gnu ]: Fix eval quoting in the DT_RUNPATH test.
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.
11220 2007-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11228 2007-02-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
11240 2007-02-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
11247 * tests/lt_dlexit.at: Add casts and `extern "C"' to let the test
11248 pass with a C++ compiler.
11250 * libltdl/config/ltmain.m4sh: Remove duplicate marker for
11251 generated shell functions.
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'.
11259 2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
11265 * Makefile.am: Adjust.
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
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
11280 2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11282 Eliminate roughly a third of the script execution time overhead
11283 for all modes except for link/relink and uninstall/clean.
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.
11291 2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11293 * doc/libtool.texi: Update copyright years.
11295 2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11301 2007-02-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11303 * tests/testsuite.at (LT_AT_TAG): Skip also if the compiler
11304 variable is set to `no', not only if it is empty.
11306 2007-02-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11308 * tests/lt_dlexit.at: Do not compile main object with libtool.
11310 * tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir
11311 to inner testsuite.
11313 * Makefile.am (TESTSUITE_AT): Move destdir.at after
11314 search-path.at so the banners fit better.
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.
11324 * libltdl/ltdl.c (lt_dlexit): Add casts to fix compilation with
11325 C++ compiler again.
11327 * tests/destdir.at: Add `libtool' keyword to tests.
11329 2007-02-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11335 Report by Maciej W. Rozycki.
11337 2007-01-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11339 * tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir,
11340 in the new testsuite.
11342 2007-01-29 Samuel Thibault <samuel.thibault@ens-lyon.org>
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.
11348 2007-01-28 Charles Wilson <libtool@cwilson.fastmail.fm>
11350 * NEWS: Update for Cygwin changes.
11352 2007-01-28 Brian W. Barrett <bbarrett@lanl.gov>
11354 * libltdl/config/ltmain.m4sh [darwin]: Use otool64 if otool fails.
11356 2007-01-28 Dave Brolley <brolley@redhat.com>,
11357 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
11367 2007-01-28 Mike Frysinger <vapier@gentoo.org>
11369 * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
11370 `-p' and `-fprofile-*' for GCC.
11372 2007-01-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11374 * libltdl/libltdl/lt_system.h: Adjust copyright years.
11376 2007-01-28 Charles Wilson <libtool@cwilson.fastmail.fm>
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.
11382 2007-01-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11389 2007-01-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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.
11409 2007-01-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11411 Assume C89 for included headers, and throughout the testsuite.
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
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.
11442 2007-01-24 Reuben Thomas <rrt@sc3d.org> (tiny change)
11444 * doc/libtool.texi (Inter-library dependencies): Fix typo.
11446 2007-01-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
11457 * Makefile.am (EXTRA_DIST): Add ChangeLog.2006.
11458 * ChangeLog.2006: New, rotated, from...
11459 * ChangeLog: ...here.
11461 2007-01-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11463 * doc/libtool.texi: Typo fixes.
11466 2006-12-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11474 2006-11-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11476 * tests/link-order2.at: Simplify logic to be a bit more self
11477 documenting. Suggested by Gary V. Vaughan.
11479 2006-10-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11487 2006-10-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11499 Report by Patrick Welche.
11501 2006-10-24 Paul Eggert <eggert@cs.ucla.edu>,
11502 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11509 2006-10-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
11519 * NEWS: Account for recent multilib fix.
11520 * tests/search-path.at: New test, to provide at least a weak
11522 * Makefile.am: Update.
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.
11529 2006-10-22 Peter O'Gorman <peter@pogma.com>
11531 * libltdl/config/ltmain.m4sh: Add -F* to flags that are passed
11533 Reported by SIGOURE Benoit <sigoure.benoit@lrde.epita.fr>
11535 2006-10-19 Peter O'Gorman <peter@pogma.com>
11537 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Improve
11539 Reported by Kate Minola <kate01123@gmail.com> and others.
11541 2006-10-13 Eric Blake <ebb9@byu.net>
11543 * libltdl/ltdl.c (load_deplibs): Avoid memory leak on failure.
11544 (unload_deplibs): Avoid memory leak on cleanup.
11546 2006-09-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11548 * libltdl/m4/libtool.m4 (func_mode_compile): Accept files with
11550 * tests/suffix.test: Test `f95'.
11552 * libltdl/config/ltmain.m4sh (func_mode_uninstall): Use
11553 `func_source' consistently.
11555 2006-09-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11557 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
11558 [k*bsd*-gnu ]: Fix brown paper bag: save and restore `libdir'.
11560 2006-09-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
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.
11571 Reported by Jake Meuser and others.
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.
11578 * tests/shlibpath.at: New file, with...
11579 (shlibpath_overrides_runpath): ...new test.
11580 * Makefile.am: Update.
11582 2006-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11584 * tests/destdir.at: New file.
11585 * Makefile.am: Adjust.
11587 2006-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11589 * tests/inherited_flags.at: Drop `${parameter}' for `$parameter'
11590 where appropriate, for improved `testsuite -x' output.
11592 2006-09-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11594 * libltdl/ltdl.c: Move LT__UNUSED before parameter name, for g++
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.
11600 2006-09-04 George Bosilca <bosilca@cs.utk.edu>
11601 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11603 Make libltdl work when compiled with a C++ compiler.
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'.
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
11626 * libltdl/argz_.h: It's __cplusplus, not _cplusplus.
11627 * libltdl/libltdl/slist.h: Likewise.
11629 * libltdl/libltdl/lt__glibc.h: Wrap included argz.h in
11630 `extern "C"', for broken headers on Cygwin.
11632 2006-09-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11634 * tests/testsuite.at: Test `unset' on a set variable; older
11635 bash versions return 1 if the variable was not set.
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'.
11641 2006-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11643 Drop K&R support from testsuite in favor of C89.
11645 * tests/duplicate_members.at: provide declarations of used
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.
11665 2006-08-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11667 * tests/mdemo/main.c: Fix bogus line in last patch.
11669 2006-08-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11671 Avoid mixing functions and data pointers in callback functions.
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.
11681 2006-08-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11683 * libltdl/libltdl/lt__private.h (__attribute__, LT__UNUSED):
11685 * libltdl/loaders/dld_link.c: Use LT__UNUSED where
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.
11695 * Makefile.am (check-local, installcheck-local): Use
11696 `TESTSUITEFLAGS' rather than `TESTSUITE_FLAGS', like Autoconf.
11697 * HACKING, README, README.alpha: All uses changed.
11699 2006-08-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11708 2006-08-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
11714 2006-08-25 Kurt Roeckx <kurt@roeckx.be>,
11715 Aurelien Jarno <aurel32@debian.org>
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.
11726 2006-08-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
11733 2006-08-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11738 2006-08-22 Eric Blake <ebb9@byu.net>
11740 * libltdl/m4/ltdl.m4 (LTDL_INIT): Avoid macros marked obsolete in
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
11747 * libltdl/m4/libtool.m4: Avoid space-tab.
11749 2006-08-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11755 2006-08-03 Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>
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.
11762 2006-08-01 Albert Chin <china@thewrittenword.com>
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'.
11770 2006-07-28 Eric Blake <ebb9@byu.net>
11772 * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD, LT_OUTPUT):
11773 s/recognise/recognize/.
11775 2006-07-22 Eric Blake <ebb9@byu.net>
11777 * libltdl/ltdl.c (loader_init_callback) [HAVE_LIBDLLOADER]:
11778 Protect definition to avoid compiler warnings about unused
11781 2006-07-21 Eric Blake <ebb9@byu.net>
11783 * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD): Search for dlopen without
11784 depending on -ldl, required by cygwin 1.5.20.
11786 2006-06-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
11799 2006-06-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
11812 2006-06-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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
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'.
11837 2006-06-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11839 Fix libltdl to always have all generated files up to date.
11841 * Makefile.am (all-local): Depend on all generated files in
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
11848 Report by Dan Lacher <Dan.Lacher@Sun.Com>.
11850 2006-06-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11852 * Makefile.am (install-data-local): Do not use $(INSTALL_DATA)
11853 from another directory: it may use a relative path to
11855 Bug report by Dan Lacher <Daniel.Lacher@Sun.COM>.
11857 2006-06-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11859 * libltdl/config/ltmain.m4sh (func_mode_link): Honor `-threads',
11861 Report by Eric Paire <eric.paire@st.com>.
11863 2006-06-01 Charles Wilson <libtool@cwilson.fastmail.fm>
11865 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ cygwin ]:
11866 define DLL_EXPORT for PIC objects on cygwin.
11868 2006-05-24 Albert Chin <china@thewrittenword.com>
11870 * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
11871 [ aix4*, aix5*, hpux10*, hpux11* ]: Set hardcode_direct_absolute
11874 2006-05-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11876 * libltdl/config/ltmain.m4sh (func_mode_link, shell wrapper):
11877 Do not put `"$@"' in argument to $ECHO.
11879 2006-05-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11881 * libltdl/m4/libtool.m4: Bump serial, necessary because of
11882 _LT_CHECK_SHELL_FEATURES changes.
11884 2006-05-18 Albert Chin-A-Young <china@thewrittenword.com>
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
11892 2006-05-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11894 Fix mode=compile time regression of CVS HEAD over branch-1-5.
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
11911 * libtoolize.m4sh: Compute `SP2NL' and `NL2SP' here, too.
11913 2006-05-17 Gary V. Vaughan <gary@gnu.org>
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.
11922 * libltdl/ltdl.c (lt_dlhandle_fetch): Arguments to
11923 lt_dlhandle_iterate were in the wrong order.
11925 2006-05-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11927 * libltdl/m4/libtool.m4 (_LT_LINKER_OPTION): Require
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.
11935 2006-05-17 Gary V. Vaughan <gary@gnu.org>
11937 * doc/libtool.texi (libtool script contents): Document new
11938 hardcode_direct_static variable.
11940 * tests/link-order.at: Be careful about usage of shrext_cmds.
11942 * libltdl/m4/libtool.m4 (LT_AC_PROG_SED): Declarations for
11943 compatibility with old versions of libtool, and old versions
11946 2006-05-17 Albert Chin-A-Young <china@thewrittenword.com>
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
11959 2006-05-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11961 Eliminate quadratic scaling in argument parsing loop, for
11962 shells that understand `var+=value', such as Bash-3.1, or Zsh.
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,
11971 2006-05-15 Bruno Haible <bruno@clisp.org>,
11972 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
11980 2006-05-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
11987 (installcheck-local): Likewise, for `$(TESTS_ENVIRONMENT)' and
11988 `$(INSTALLCHECK_ENVIRONMENT)'.
11989 * tests/testsuite.at (LT_AT_TAG): Do not set the compiler
11992 2006-05-14 Albert Chin-A-Young <china@thewrittenword.com>
11994 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
11995 [ aix ]: $hardcode_direct is set twice.
11997 2005-05-14 John Bowler <jbowler@acm.org>
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.
12005 2006-05-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
12011 2006-04-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12018 2006-04-03 Peter O'Gorman <peter@pogma.com>
12020 * libltdl/loaders/preopen.c: Don't allow lt_dlopen if the
12021 module has no symbols.
12023 2006-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
12030 2006-03-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12032 * bootstrap: Actually use the correct version of the last patch.
12034 2006-03-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12036 * bootstrap: Enable `WORKING_LIBOBJ_SUPPORT' if we detect
12037 Autoconf-2.60+ and Automake-1.10+, or CVS versions.
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.
12043 2006-03-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
12052 2006-03-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12058 * libltdl/config/ltmain.m4sh (func_mode_link)
12059 < -static-libtool-libs >: New option.
12060 * doc/libtool.texi (Link mode, Distributing libltdl):
12062 Suggested by Gary Kumfert <kumfert@llnl.gov>.
12064 2006-03-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12070 * libltdl/m4/libtool.m4 (AC_PROG_SED): Do not forget to reset
12071 IFS even in case of empty `$PATH'.
12073 2006-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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.
12084 Reported by Jeremy C. Reed <reed@reedmedia.net>,
12085 patch by Todd Vierling <tv@duh.org>.
12087 2006-02-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12096 2006-02-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12105 2006-02-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12107 * doc/libtool.texi: Update copyright years.
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
12113 Reported by Julien Lecomte <julien@famille-lecomte.net>.
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.
12123 2006-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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>.
12135 2006-02-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12140 * Makefile.am ($(TESTSUITE)): Also depend on `Makefile.am'.
12141 Write to temporary file and rename.
12143 2006-02-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12145 * Makefile.am (EXTRA_DIST): Add `$(srcdir)/' to all generated
12146 files so that non-GNU make programs will use the rebuilding
12149 * tests/testsuite.at: Add new keyword `libtoolize' for tests
12150 that exercise the `libtoolize' script that is generated at build
12152 * HACKING: Update testsuite mention, explain keywords.
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
12159 * tests/duplicate_conv.at: New tests.
12160 * Makefile.am: Adjusted.
12161 Reported by Carlo Contavalli <ccontavalli@commedia.it>.
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.
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.
12174 2006-02-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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>.
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.
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.
12197 2006-02-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12205 2006-01-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12207 * doc/libtool.texi (titlepage): Remove superfluous word.
12209 * libltdl/config/ltmain.m4sh (func_mode_link): Fix matching
12210 duplicate run path entries with the correct separator.
12212 * tests/testsuite.at (PREPARE_TESTS): Escape `^' for some older
12215 * ChangeLog, HACKING, README, README.alpha,
12216 libltdl/config/ltmain.m4sh: Add vi(m) modelines, to match emacs
12217 formatting variables.
12219 2006-01-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12221 * Makefile.am (libltdl/Makefile.am): Fixup sed script.
12222 Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
12224 2006-01-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12230 2006-01-21 Eric Blake <ebb9@byu.net>
12232 * THANKS: Move myself to contributor.
12234 2006-01-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
12248 * libltdl/config/ltmain.m4sh (func_mode_compile): Also transform
12250 Reported by George Bosilca <bosilca@cs.utk.edu>.
12252 2006-01-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12254 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): Fix my forward port
12255 error of last commit.
12257 2006-01-12 Leif Ekblad <leif@rdos.net>
12259 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
12260 (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC): Added support for
12264 2006-01-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12266 * libtoolize.m4sh, libltdl/config/general.m4sh,
12267 libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
12268 libltdl/m4/libtool.m4: Bump copyright years.
12270 2006-01-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12272 * Makefile.am (EXTRA_DIST): Add ChangeLog.2005.
12274 * README, README.alpha: Adjust copyright years.
12275 * ChangeLog.2005: New, rotated, from..
12276 * ChangeLog: ..here.
12278 2005-12-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
12284 * libltdl/config/ltmain.m4sh (func_mode_link) <temp_rpath>:
12285 Fix position of separator for shlibpath_var setting in shell
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>.
12292 2005-12-21 Gary V. Vaughan <gary@gnu.org>
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.
12298 2005-12-20 Eric Blake <ebb9@byu.net>
12300 * README.alpha: Really commit.
12302 2005-12-19 Eric Blake <ebb9@byu.net>
12304 * HACKING (release note templates): Update anon cvs location.
12305 * README.alpha (Reporting Bugs): Likewise.
12307 2005-12-18 Jacob Meuser <jakemsr@jakemsr.com>,
12308 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12314 2005-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12318 * HACKING: `./libtool --config' is more helpful than `--help'.
12320 * libltdl/config/ltmain.m4sh <preserve_args, linknames>:
12321 Initialize properly.
12323 2005-12-18 Kean Johnston <jkj@sco.com>,
12324 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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'.
12330 2005-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12332 * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
12333 <hardcode_shlibpath_var>: Initialize, to `unsupported'.
12335 2005-12-18 Marc Espie <espie@nerim.net>
12337 * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
12338 [ openbsd ] <sys_lib_dlsearch_path_spec>: Set to `/usr/lib'
12341 2005-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
12346 Reported by Kurt Roeckx <kurt@roeckx.be>.
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.
12355 2005-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12364 * libltdl/Makefile.inc (EXTRA_DIST): Remove Makefile.inc.
12365 Reorder other entries.
12367 2005-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12379 * tests/testsuite.at (PREPARE_TESTS): New variable `tst_dist',
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.
12386 * libltdl/m4/lt~obsolete.m4: Update documentation for aclocal
12387 versions before 1.7. Change all macros to use AC_DEFUN instead
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.
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.
12409 2005-12-08 Eric Blake <ebb9@byu.net>
12411 * libltdl/libltdl/lt__alloc.h (FREE): Cast away constness of
12412 argument to `free' to avoid compiler warning.
12414 2005-12-08 Peter O'Gorman <peter@pogma.com>
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>
12420 2005-12-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
12426 2005-12-07 Peter O'Gorman <peter@pogma.com>
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]:
12434 Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12436 2005-12-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12438 * doc/libtool.texi (References): Do not use `@/' for the benefit
12439 of older `makeinfo', break lines instead.
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.
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.
12450 * libtoolize.m4sh (func_copy_all_files)
12451 (glob_exclude_pkgaux_files): Removed, since unused.
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>.
12458 2005-12-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12460 * TODO: A bunch of items fixed. :)
12462 * tests/convenience.at: Updated to expose more corner cases.
12464 * doc/libtool.texi (Invoking libtoolize): Remove mention of
12465 the nonrecursive restriction to name the directory `libltdl'.
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.
12471 2005-12-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12473 Basic support for PIE (position-independent executables).
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.
12480 2005-12-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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,
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.
12492 2005-11-26 Peter O'Gorman <peter@pogma.com>
12494 * libltdl/m4/libtool.m4 [darwin]: Use $LTCC $LTCFLAGS to create
12495 reloadable objects.
12497 2005-11-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
12504 2005-11-25 Eric Blake <ebb9@byu.net>,
12505 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12513 * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlinterface_free): New
12515 * doc/libtool.texi (User defined module data): Document it.
12517 2005-11-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12523 * libltdl/config/ltmain.m4sh (func_mode_link): Allow GCC
12524 response files through.
12526 2005-11-25 Peter O'Gorman <peter@pogma.com>
12528 * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
12529 -isysroot for cross architecture builds on darwin.
12531 2005-11-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12533 * libltdl/config/ltmain.m4sh (func_mode_uninstall): In clean
12534 mode, don't remove non-existent libfoo.lai.
12536 2005-11-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12538 * Makefile.am (aclocalfiles): Also install lt~obsolete.m4.
12539 * libtoolize.m4sh (func_check_macros): Updated.
12540 * tests/libtoolize.at: Adjusted.
12542 2005-11-20 Eric Blake <ebb9@byu.net>,
12543 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12545 * bootstrap (--help): Provide some help.
12547 2005-11-20 Todd Vierling <tv@netbsd.org>,
12548 Thorsten Glaser <tg@mirbsd.org>
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
12554 * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
12557 2005-11-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
12563 2005-11-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
12570 2005-11-14 Albert Chin <china@thewrittenword.com>
12572 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12573 [ hpux11 ]: Pass +nodefaultrpath when linking on ia64*.
12575 2005-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12577 Testsuite portability update round.
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
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
12599 Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
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.
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.
12611 * libtoolize.m4sh: Revert use of `$tst_aclocaldir'.
12613 2005-11-13 Eric Blake <ebb9@byu.net>
12615 * libltdl/ltdl.c (lt_dlhandle_iterate): Fix endless loop.
12616 (lt_dlinterface_register): Fail if lt__strdup did.
12618 2005-11-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12620 * libltdl/m4/libtool.m4 (_LT_LANG_C_CONFIG):
12621 Removed `lt_prog_cc_shlib' cruft, not needed any more.
12623 2005-11-13 Kean Johnston <jkj@sco.com>,
12624 Tim Rice <tim@multitalents.net>
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.
12633 2005-11-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12639 2005-11-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12641 * libltdl/m4/ltoptions.m4 (_LT_SET_OPTION): Use m4_warning
12642 instead of m4_warn.
12644 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): `wl' is tagged here.
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'.
12650 * tests/defs.m4sh (func_configure): Actually pass
12651 options (like --disable-shared) to func_configure_nofail.
12653 2005-11-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12655 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]:
12656 Fix shlibpath_overrides_runpath settings.
12657 Reported by Dave Benson <daveb@idealab.com>.
12659 2005-09-10 Charles Wilson <cygwin@cwilson.fastmail.fm>
12661 * libltdl/config/ltmain.m4sh (func_win32_libid): use $SED not
12664 2005-11-10 Albert Chin-A-Young <china@thewrittenword.com>
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.
12670 2005-11-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12677 2005-11-10 Gary V. Vaughan <gary@gnu.org>
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.
12686 2005-11-10 Gary V. Vaughan <gary@gnu.org>
12688 * tests/am-subdir.at: Now that we don't run autoreconf, we have to
12689 explicitly tell aclocal what flags to use.
12691 * tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
12693 * tests/am-subdir.at, tests/nonrecursive.at, tests/old-m4-iface.at,
12694 tests/subproject.at: Use LT_AT_BOOTSTRAP.
12696 2005-11-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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>.
12709 * libltdl/Makefile.inc (AM_CPPFLAGS): Do not define
12711 * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not invoke
12712 AC_CONFIG_HEADERS ourselves, we can build with or without now.
12714 2005-11-07 Kean Johnston <jkj@sco.com>
12716 * libltdl/config/ltmain.m4sh (func_mode_link) [ sysv4*uw2*,
12717 unixware7* ]: Work around linker bug on older SCO systems.
12719 2005-11-07 Albert Chin-A-Young <china@thewrittenword.com>
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.
12728 2005-11-07 Gary V. Vaughan <gary@gnu.org>
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:
12735 * doc/libtool.texi (Distributing libltdl): Document correct use of
12736 LT_CONFIG_LTDL_DIR mode argument with Autoconf and Automake.
12738 2005-11-07 Gary V. Vaughan <gary@gnu.org>
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:
12744 * ltdl.m4 (LT_CONFIG_LTDL_DIR): Don't barf on 'recursive' mode
12746 (_LTDL_MODE_DISPATCH): Handle recursive mode.
12748 2005-11-07 Gary V. Vaughan <gary@gnu.org>
12750 * tests/recursive.at: New tests for libltdl as a subdirectory,
12751 configured and compiled from the toplevel project using a
12753 * tests/testsuite.at: Use it.
12754 * Makefile.am (TESTSUITE_AT): Depend on it.
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.
12760 * libltdl/m4/ltdl.m4 (LT_CONFIG_LTDL_DIR): Add LTDL-MODE
12762 * configure.ac: Use it.
12764 2005-11-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12766 * libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): lt_unknown is
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.
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.
12781 2005-11-05 Kean Johnston <jkj@sco.com>,
12782 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
12790 2005-11-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12794 2005-11-02 Gary V. Vaughan <gary@gnu.org>
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.
12802 2005-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
12809 2005-11-01 Kean Johnston <jkj@sco.com>,
12810 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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}'.
12819 2005-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12823 2005-11-01 Gary V. Vaughan <gary@gnu.org>
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.
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
12833 (func_serial_update): Use NL2SP to flatten list of extracted
12835 * tests/libtoolize.at: More tests for old-style verbatim copying
12836 of macros into aclocal.m4.
12838 * libltdl/m4/argz.m4, libltdl/m4/ltoptions.m4, libltdl/ltsugar.m4,
12839 libltdl/m4/ltversion.in: Add serial number tags, and bump serial
12842 2005-10-31 Kean Johnston <jkj@sco.com>
12844 [ sysv5*, sco3.2v5*, sco5v6*, unixware*, OpenUNIX*, sysv4*uw2* ]
12845 Patches for various bug fixes, small improvements and updating
12846 the SCO platform support.
12848 * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Set correctly for SCO.
12850 * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Set correct
12851 symcode values for the native nm on SCO platforms.
12853 * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): All SCO platforms
12854 open dependency libraries when you dlopen a module.
12856 2005-10-31 Albert Chin-A-Young <china@thewrittenword.com>
12858 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
12859 [ aix ]: Remove duplicate always_export_symbols=yes for AIX.
12861 2005-10-29 Howard Chu <hyc@highlandsun.com>
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
12869 2005-10-27 Stepan Kasal <kasal@ucw.cz>
12871 * HACKING: Update note about use of `$#' in m4 macros.
12873 2005-10-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
12879 2005-10-26 Eric Blake <ebb9@byu.net>,
12880 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12882 * Makefile.am (vcl-tmp): Avoid warnings from diff.
12883 * bootstrap: Avoid warnings from find.
12884 (lt_tab): Use to prevent editor whitespace "cleanup".
12886 2005-10-26 Gary V. Vaughan <gary@gnu.org>
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
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.
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).
12923 * libtoolize.m4sh: Move the consistency checks...
12924 (func_check_macros): ...into here. Also suggest LT_WITH_LTDL if
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>.
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.
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.
12947 2005-10-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12949 * libltdl/config/ltmain.m4sh [darwin]: Don't check for "bundle"
12951 Reported by Christoph Egger <Christoph_Egger@gmx.de>.
12953 2005-10-14 Gary V. Vaughan <gary@gnu.org>
12955 * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Don't nest AC_MSG_CHECKING/
12956 AC_MSG_RESULT pairs.
12958 2005-10-14 Gary V. Vaughan <gary@gnu.org>
12960 * tests/subproject.at: Move 'touch config.h.in' invocation.
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.
12966 2005-10-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12968 * libltdl/m4/libtool.m4 (LT_PATH_NM): End test source with
12970 Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
12972 2005-10-13 Peter O'Gorman <peter@pogma.com>
12974 * libltdl/ltdl.c (find_module): Check that dir is set.
12975 (load_deplibs): Don't free the user search paths too early.
12977 2005-10-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
12985 * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Also set INCLTDL.
12987 * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE)
12988 (LT_WITH_LTDL): Revert Gary's 2005-10-10 patch.
12990 * tests/stresstest.at: Use `allow_undefined_flag' instead of
12993 2005-10-10 Gary V. Vaughan <gary@gnu.org>
12995 * libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Remove bogus extra
12998 2005-10-10 Gary V. Vaughan <gary@gnu.org>
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.
13006 2005-10-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13008 * tests/stresstest.at [ aix3, beos, os2 ]: Always use
13011 2005-10-09 Christian Biesinger <cbiesinger@web.de>
13013 * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ beos ]:
13014 Initial shared library support for C++.
13016 2005-10-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13018 * configure.ac (abs_top_builddir, abs_top_srcdir): always
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.
13026 (LT_AT_MAKE): Use to unset LIBTOOL and LIBTOOLIZE.
13028 2005-10-05 Gary V. Vaughan <gary@gnu.org>
13030 * tests/subproject.at: Commit the right file this time.
13032 2005-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
13038 2005-10-05 Gary V. Vaughan <gary@gnu.org>
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.
13045 2005-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13047 * Makefile.am: Simplify. Do not use abs_top_srcdir.
13048 Reported by Gary V. Vaughan <gary@gnu.org>.
13050 2005-10-05 Gary V. Vaughan <gary@gnu.org>
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.
13056 2005-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
13069 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
13070 AC_CANONICAL_HOST and _LT_DECL_SED.
13072 2005-10-03 Gary V. Vaughan <gary@gnu.org>
13074 * libltdl/m4/ltdl.m4: Bump serial as we are changing the
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.
13093 2005-10-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13095 * tests/old-m4-iface.at (Makefile.in): Do not reconfigure
13098 2005-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
13105 * tests/old-m4-iface.at: Define top_srcdir, work around current
13108 * libltdl/config/ltmain.m4sh (func_mode_link):
13109 Fix wrong logic introduced in last commit.
13111 2005-09-30 Gary V. Vaughan <gary@gnu.org>
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.
13117 2005-09-30 Gary V. Vaughan <gary@gnu.org>
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.
13125 2005-09-29 Tim Rice <tim@multitalents.net> (tiny change)
13127 * tests/early-libtool.at (Makefile.in): Set $(SHELL).
13129 2005-09-29 Peter Ekberg <peda@lysator.liu.se>
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
13136 2005-09-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13138 * libtoolize.m4sh (func_included_files): Do not recurse
13139 non-existent files.
13141 2005-09-27 Gary V. Vaughan <gary@gnu.org>
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.
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
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.
13161 * libltdl/ltdl.c (lt_dlcaller_register): Renamed to avoid problems
13162 with module visibilty when linked with programs written for the
13164 (lt_dlinterface_register): New name.
13165 * Makefile.am (VERSION_INFO): Bumped.
13166 * doc/libtool.texi (User defined module data): Updated.
13168 2005-09-27 Tim Rice <tim@multitalents.net>
13170 * tests/defs.m4sh, tests/testsuite.at (PREPARE_TESTS)
13171 <AUTORECONF>: Allow variable override.
13173 2005-09-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13175 * HACKING: Only update libltdl version info before release.
13177 2005-09-26 Tim Rice <tim@multitalents.net>
13179 * configure.ac <AUTOM4TE>: Allow variable override.
13181 2005-09-25 Alan W. Irwin <irwin@beluga.phys.uvic.ca>,
13182 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13184 * libltdl/config/ltmain.m4sh (func_win32_libid)
13185 [ cygwin, mingw ]: Robustify sed script to determine
13187 (func_mode_link) [ mingw ]: Ignore `-lm'.
13189 2005-09-25 Peter Ekberg <peda@lysator.liu.se>
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
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.
13206 2005-09-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13208 * tests/link-order.at [ aix* ]: skip path syntax grep.
13210 2005-09-23 Peter Ekberg <peda@lysator.liu.se>
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
13216 2005-09-23 Eric Blake <ebb9@byu.net> (tiny change)
13218 * libltdl/loaders/loadlibrary.c (vm_open): Silence gcc warnings.
13219 [__CYGWIN__]: Include <sys/cygwin.h> for prototype.
13221 2005-09-22 Gary V. Vaughan <gary@gnu.org>
13223 * bootstrap: Don't clobber the working copy metadata in
13224 ./{arch}/libtool during bootstrap.
13226 2005-09-22 Peter Ekberg <peda@lysator.liu.se>,
13227 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
13234 2005-09-22 Peter Ekberg <peda@lysator.liu.se>
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.
13240 2005-09-22 Tim Rice <tim@multitalents.net>
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.
13246 2005-09-22 Peter Ekberg <peda@lysator.liu.se>,
13247 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
13253 2005-09-21 Peter Ekberg <peda@lysator.liu.se>
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".
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.
13264 2005-09-20 Peter Ekberg <peda@lysator.liu.se>
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.
13271 2005-09-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13273 * Makefile.am (ltdldatafiles): Fix installation order to match
13275 (libltdl/Makefile.in): Use $(srcdir) for non-GNU make.
13277 2005-09-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
13283 * Makefile.am (all-local): Rebuild libltdl/Makefile.in.
13285 * libltdl/m4/ltdl.m4 (LTDL_INIT) <CONFIG_H>: Rename to..
13286 <LT_CONFIG_H>: this, to contain the name of the config
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:
13294 2005-09-16 Peter Ekberg <peda@lysator.liu.se>
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
13301 2005-09-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13303 * libltdl/argz.c <HAVE_CONFIG_H>: Avoid redefinition warning.
13305 * libltdl/ltdl.c (lt_argz_insert): Work around newlib
13307 * Makefile.am (VERSION_INFO): Bumped revision.
13308 Reported by Eric Blake <ebb9@byu.net>.
13310 2005-09-13 Peter Ekberg <peda@lysator.liu.se>,
13311 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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$
13320 2005-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13322 Make tagdemo work smoothly with both pre- and ISO C++ compilers,
13323 and remove all use of libstdc from other tests.
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.
13331 2005-09-12 Peter Ekberg <peda@axentia.se>,
13332 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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'.
13338 2005-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
13348 2005-09-10 Gary V. Vaughan <gary@gnu.org>
13350 * libtoolize.m4sh (TAR): Allow the user to override the tar
13353 2005-09-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
13363 * libltdl/config/ltmain.m4sh (func_mode_link): Actually provide
13364 a useful error message. Fixes long-standing shameful user
13366 Reported by Martin Paljak <martin.paljak@gmail.com>.
13368 2005-09-08 Peter Ekberg <peda@axentia.se>
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.
13377 2005-09-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13379 * tests/early-libtool.at (config.status): Use EXEEXT
13381 Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
13383 2005-09-08 Charles Wilson <cygwin@cwilson.fastmail.fm>
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.
13389 2005-09-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
13396 2005-09-06 Roger Cornelius <rac@tenzing.org>
13398 * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
13399 [ sysv5OpenUNIX8, sysv5UnixWare7, sysv5uw[78], unixware7,
13400 sysv4*uw2* ]: Match special cases before general case.
13402 2005-09-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13404 * bootstrap: another AIX sed fix.
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>.
13412 * Makefile.am (doc/notes.txt): Use --no-headers instead of
13413 --plaintext for makeinfo.
13414 Reported by Peter O'Gorman <peter@pogma.com>.
13416 2005-09-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
13423 2005-09-02 Gary V. Vaughan <gary@gnu.org>
13425 AC_BEFORE only works if declarations are made inside the macro
13426 cited as the first argument:
13428 * libltdl/m4/libtool.m4 (LT_OUTPUT): Move AC_BEFORE decls...
13429 (LT_INIT, LT_LANG): ...to the macro that has to come first.
13431 2005-09-01 Peter O'Gorman <peter@pogma.com>
13433 * libltdl/m4/libtool.m4 (old_postintall_cmds): chmod 644 before
13435 Reported by Gerald Pfeifer <gerald@pfeifer.com>
13437 2005-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13439 * libltdl/m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77)
13440 (_LT_PROG_FC): aclocal-1.4 compatibility workaround.
13442 * bootstrap: Do not use nonportable -path.
13443 Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
13445 2005-09-01 Gary V. Vaughan <gary@gnu.org>
13447 * doc/libtool.texi (LT_INIT): Fix a logical error with
13448 documentation of --with-pic vs --without-pic.
13450 2005-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
13457 2005-09-01 Gary V. Vaughan <gary@gnu.org>
13459 * libtoolize.m4sh (func_scan_files): When searching for evidence
13460 of Autotools in aclocal.m4, be careful not to trip over requires
13463 2005-08-31 Gary V. Vaughan <gary@gnu.org>,
13464 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13466 * libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Move option macro
13468 (_LT_SET_OPTION): here. Do not fail but warn on unknown
13470 (_LT_UNLESS_OPTIONS(win32-dll), LT_OPTION_DEFINE(dlopen)):
13472 Reported by Robert Ögren <lists@roboros.com> and
13473 Akim Demaille <akim@lrde.epita.fr>.
13475 2005-08-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13477 * libltdl/m4/libtool.m4 [ solaris CC ]: Document issue with C++
13478 standard libraries.
13480 2005-08-30 Gary V. Vaughan <gary@gnu.org>
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.
13486 * libltdl/m4/libtool.m4 (_LT_SETUP): Remove duplicate
13487 --enable-libtool-lock declaration.
13489 2005-08-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13491 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
13492 (_LT_PATH_TOOL_PREFIX, _LT_SYS_HIDDEN_LIBDEPS, _LT_DECL_EGREP):
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>.
13502 2005-08-29 Gary V. Vaughan <gary@gnu.org>,
13503 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13505 Allow for portability with Autoconf 2.59, Automake 1.9.6,
13506 which lack AC_CONFIG_LIBOBJ_DIR support.
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
13512 * configure.ac (SUBDIR_LIBOBJS): Automake conditional, set if
13513 bootstrap didn't make the extra copies of libobj sources in
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.
13519 2005-08-29 Gary V. Vaughan <gary@gnu.org>
13521 * libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE): Fix the comment to not
13522 pretend that LIBLTDL and LTDLINCL are not AC_SUBSTed here.
13524 2005-08-29 Gary V. Vaughan <gary@gnu.org>
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:
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.
13538 2005-08-28 Gary V. Vaughan <gary@gnu.org>
13540 * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4: AU_DEFUN doesn't pass
13541 arguments. Use AU_ALIAS instead!
13543 2005-08-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>,
13544 Gary V. Vaughan <gary@gnu.org>
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>.
13551 2005-08-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>,
13552 Peter Ekberg <peda@lysator.liu.se>
13554 * tests/early-libtool.at: Fix goofed up make rules in
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'.
13561 2005-08-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13563 * tests/standalone.at, tests/template.at: Do not compare
13564 output because of EOL issues. Resolve warnings, make cross-
13566 Reported by Peter Ekberg <peda@axentia.se>.
13568 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
13569 (_LT_LINKER_SHLIBS): Double-quote unsafe tag variable
13570 descriptions: they are literals.
13572 2005-08-25 Peter Ekberg <peda@lysator.liu.se>,
13573 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
13580 2005-08-24 Bruno Haible <bruno@clisp.org>
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
13586 Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
13588 * libltdl/config/ltmain.sh (cwrappersource): return 127 if exec
13591 2005-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13593 * libltdl/m4/libtool.m4 (_LT_COMPILER_C_O): Send chmod warning to log.
13595 * tests/defs.m4sh (m4dir, auxdir, scripts): Fix for source tree
13597 * tests/sh.test: Adjust. Also barf on sed diagnostics so this
13598 test will not fail again silently.
13600 * libltdl/m4/ltdl.m4 (LT_SYS_SYMBOL_USCORE): Use _LT_EOF, not
13603 * tests/fcdemo/Makefile.am (suffix rules): Explicitly add
13604 $(FCFLAGS_f90) so the tests can pass on AIX.
13606 2005-08-24 Peter O'Gorman <peter@pogma.com>
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>
13612 2005-08-23 Stepan Kasal <kasal@ucw.cz>,
13613 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
13619 2005-08-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13621 * Makefile.maint (web-manual): Fix $(LN_S) to use absolute path.
13622 Fix creating the manual for VPATH build.
13624 * bootstrap: Fix missing replace config -> $auxdir. ltmain.m4sh
13625 is prerequisite to ltmain.sh. Improve warning message.
13627 2005-08-22 Gary V. Vaughan <gary@gnu.org>
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:
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
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
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
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
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
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!
13698 2005-08-22 Peter Ekberg <peda@lysator.liu.se>
13700 * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Add
13701 forgotten end bracket.
13703 * doc/libtool.texi: Shorten the lines describing the
13704 output from MS dumpbin, and align the columns.
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.
13717 2005-08-21 Gary V. Vaughan <gary@gnu.org>
13719 * libltdl/Makefile.am: revert mistaken commit.
13721 * tests/template.at [darwin]: Some of these tests result in
13722 unresolved symbols on darwin, so don't run those test on that
13725 2005-08-18 Gary V. Vaughan <gary@gnu.org>,
13726 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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,
13739 2005-08-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13741 * TODO: Actually updated now.
13743 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]: Do not
13744 assume `aout' for modern FreeBSD by absence of deprecated
13747 * m4/libtool.m4 [sun, CC] (_LT_LANG_CXX_CONFIG): Move postdeps
13749 (_LT_SYS_HIDDEN_LIBDEPS): ..here.
13752 2005-08-18 Stepan Kasal <kasal@ucw.cz>
13754 * config/general.m4sh (SP2NL, NL2SP): Simplify.
13756 2005-08-17 Gary V. Vaughan <gary@gnu.org>
13758 * m4/ltdl.m4 (LTDL_INIT): Fix mismatched parens.
13760 2005-08-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13762 * tests/inherited_flags.at: Store intermediate libtool output
13763 for better debugging.
13765 * tests/link-order.at: Add -no-undefined to LDFLAGS.
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>.
13771 2005-08-12 Jeremie LE HEN <tataz@sitadelle.com>,
13772 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13774 * doc/libtool.texi (Creating object files, Linking libraries):
13775 Update description of library object (.lo) and libtoo library
13777 (all over): Replace MODE with --mode=MODE in examples.
13779 2005-08-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
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.
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>.
13798 * config/ltmain.m4sh (mode): Do not initialize, for nicer error
13801 2005-08-10 Peter Ekberg <peda@lysator.liu.se>
13803 * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Set ac_ext to cpp, not cc.
13805 2005-08-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13807 * config/ltmain.m4sh (inherited_linker_flags): Backed out broken
13810 2005-08-08 Peter O'Gorman <peter@pogma.com>
13812 * config/ltmain.m4sh (inherited_linker_flags): Work when output
13813 is an application too.
13814 Reported by Christopher Egger <Christoph_Egger@gmx.de>
13816 2005-08-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
13830 * tests/convenience.at: Extended.
13831 * Makefile.am, configure.ac: Adjusted.
13834 * AUTHORS, HACKING: Updated.
13836 2005-08-05 Albert Chin-A-Young <china@thewrittenword.com>
13838 * config/ltmain.m4sh (func_mode_link): Ignore errors from expr
13839 when determining if piece-wise linking should be done.
13841 2005-08-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13843 * config/ltmain.m4sh (func_mode_link) <cwrappersource>: Add
13844 missing bit from Christoph's patch.
13846 * m4/libtool.m4 (_LT_LINKER_HARDCODE_LIBPATH, _LT_LINKER_SHLIBS)
13847 (_LT_LANG_CXX_CONFIG): Comment typos.
13849 2005-08-04 Christoph Egger <Christoph_Egger@gmx.de>
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.
13855 2005-07-30 Peter Ekberg <peda@lysator.liu.se>
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.
13860 2005-07-29 Richard Moseley <dickie.moseley@virgin.net>
13862 * m4/ltdl.m4 (LTDL_INIT): Handle in addition the new name for
13863 AC_LIST_HEADERS which is _AC_LIST_TAGS.
13865 2005-07-28 Peter Ekberg <peda@lysator.liu.se>
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
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.
13876 * m4/libtool.m4 (_LT_LINKER_OPTION): Fix copy-paste bug, it is
13877 the linker that is tested.
13879 * tests/demo-noinst-link.test: $make is empty on MSYS, replace
13880 with $MAKE. Makes the test pass for MinGW.
13882 * config/ltmain.m4sh (func_generate_dlsyms): Properly remove
13883 the fake symbol line ": @PROGRAM@ " from the list of exported
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.
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.
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.
13900 * config/ltmain.m4sh (func_mode_link) <lib>: Zap duplicate
13901 message "creating reloadable object files..."
13903 2005-07-23 Peter O'Gorman <peter@pogma.com>
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>
13909 2005-07-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13911 * m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Fix bogus merge.
13912 Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
13914 2005-07-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
13921 2005-07-08 Peter Breitenlohner <peb@mppmu.mpg.de>
13923 * Makefile.am (install-data-local): Have root own of installed
13924 files (but do not fail, for user installs).
13926 2005-07-08 Bruno Haible <bruno@clisp.org>
13928 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <postinstall_cmds>
13929 [cygwin,mingw,pw32]: Make DLL executable after installing it.
13931 2005-07-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
13938 2005-07-03 Thorsten Glaser <tg@66h.42h.de>
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.
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.
13950 2005-07-02 Peter O'Gorman <peter@pogma.com>
13952 * tests/inherited_flags.at: Use -no-undefined.
13953 Reported by Chris Oxenreider <oxenreid@state.net>
13955 2005-07-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
13961 * tests/convenience.at <GCJ>: Fix java test.
13962 Reported by Eric Blake <ericblake@comcast.net>.
13964 2005-07-01 Derek R. Price <derek@ximbiot.com>
13966 * config/ltmain.m4sh (func_mode_link) <shell wrapper>: Handle
13967 spaces in paths to executed programs. Quote path in error message.
13969 2005-06-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13973 2005-06-28 Stepan Kasal <kasal@ucw.cz>
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.
13979 2005-06-27 Stepan Kasal <kasal@ucw.cz>
13981 * m4/ltsugar.m4 (lt_combine, _lt_combine): Fix default separator.
13983 * m4/ltoptions.m4 (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Replace
13984 AC_FOREACH by a combination of m4_foreach/m4_split/m4_normalize.
13986 2005-06-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13988 * m4/ltoptions.m4 (_LT_SET_OPTIONS): Remove unnecessary workaround
13989 for CVS Automake bug (fixed).
13990 Reported by Stepan Kasal <kasal@ucw.cz>.
13992 2005-06-21 Peter O'Gorman <peter@pogma.com>
13994 * conig/ltmain.m4sh [darwin]: Accept -arch flag.
13996 2005-06-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13998 * m4/libtool.m4 (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
13999 New macros: save warnings and boilerplate of simple compile/link
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
14007 2005-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
14015 2005-06-11 Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>,
14016 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14018 * m4/ltoptions.m4 (_LT_SET_OPTIONS): Loop options only if
14020 * m4/ltsugar.m4 (lt_combine): Don't test against empty quotes,
14021 test against empty arg. Fixes infinite m4 loop with CVS
14024 2005-06-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
14031 2005-06-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14033 * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Remove long lines.
14035 2005-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
14042 2005-06-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
14053 2005-06-01 Olly Betts <olly@survex.com> (tiny change)
14055 * libltdl/argz.c (argz_create_sep): Fix typo.
14057 2005-05-31 Peter O'Gorman <peter@pogma.com>
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>
14063 2005-05-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14067 2005-05-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14069 * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [aix]:
14070 Fix wrong $ECHO use overlooked in 2005-04-27. Simplify slightly.
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>.
14077 2005-05-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14081 2005-05-06 Gary V. Vaughan <gary@gnu.org>
14083 * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Propogate ltdl directory.
14085 2005-05-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14087 * Makefile.am (stamp-vcl): Use `diff' instead of `cmp'.
14089 2005-04-30 Gary V. Vaughan <gary@gnu.org>
14091 Revert the parallel installation changes from November last year:
14093 * libtoolize.m4sh (pkgdatadir, aclocaldir): Substituted from
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
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.
14120 2005-04-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
14127 * HACKING: Updated.
14129 2005-04-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14131 * tests/convenience.at: Actually add.
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
14145 * tests/link-order.at: Fix use of AT_DATA, bogus redirection
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.
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.
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>.
14159 * tests/defs.m4sh (func_configure): Don't run the whole configure
14162 * config/ltmain.m4sh: Audit use of echo vs $ECHO.
14163 Reported by Robert Ögren <lists@roboros.com> and others.
14167 2005-04-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>,
14168 Gary V. Vaughan <gary@gnu.org>
14170 * HACKING, THANKS: Updated.
14172 2005-04-25 David Edelsohn <dje@watson.ibm.com>
14174 * m4/libtool.m4 (_LT_LINKER_SHLIBS): _LT_TAGDECL(file_list_spec).
14175 * config/ltmain.m4sh (func_mode_link): Change $filelist to
14178 2005-04-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14180 * m4/libtool.m4 (_LT_CC_BASENAME): Ignore `compile'.
14182 2005-04-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
14189 * m4/libtool.m4: Audit use of echo vs $ECHO.
14191 Reported by Robert Ögren <lists@roboros.com> and others.
14193 2005-04-23 Gary Kumfert <kumfert@llnl.gov>
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.
14199 2005-04-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
14201 * Makefile.am, HACKING: Use lt__cd throughout.
14203 2005-04-22 Gary V. Vaughan <gary@gnu.org>
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'.
14209 2005-04-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14211 * libtoolize.m4sh (func_scan_files, func_serial,
14212 func_ltmain_update, func_config_update, func_install_update):
14215 2005-04-19 David Edelsohn <dje@watson.ibm.com>
14217 * config/ltmain.m4sh (func_mode_link): If command exceeds
14218 max_cmd_len and file_list_spec exists, write list of input files
14220 * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
14221 [aix4,aix5]: Define file_list_spec.
14223 2005-04-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14225 * tests/demo-hardcode.test: Fix typo.
14227 2005-04-17 Alexandre Oliva <aoliva@redhat.com>,
14228 Peter O'Gorman <peter@pogma.com>
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.
14239 2005-04-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
14246 2005-04-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
14248 * libtoolize.m4sh (func_copy_cb): Fix syntax typo.
14250 2005-04-15 Maciej W. Rozycki <macro@linux-mips.org>
14252 * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Add old_archive_cmds
14255 2005-04-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
14264 2005-04-15 Gary V. Vaughan <gary@gnu.org>
14266 * libltdl/configure.ac (AC_OUTPUT): loaders/Makefile is no longer
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.
14273 2005-04-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
14275 * bootstrap: Define srcdir for making `commit'.
14277 2005-04-14 Alexandre Oliva <aoliva@redhat.com>,
14278 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
14284 2005-04-13 Gary V. Vaughan <gary@gnu.org>
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:
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
14300 * bootstrap: Simplified dirty makefile management, and bootstrap
14301 file creation in light of having only a single pertinent
14303 * configure.ac (CONF_SUBDIRS): Add tests/ prefix to each subdir to
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.
14340 2005-04-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14342 * config/general.m4sh, libtool.m4 (_LT_SETUP), tests/defs.m4sh,
14343 tests/functests.at: Fix definition of $Xsed.
14345 2005-04-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14347 Improved Portland support: prelinking of C++ templates and
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
14355 (_LT_LANG_CXX_CONFIG) [linux]: Use for pgCC.
14356 (_LT_COMPILER_C_O): conftest might be nonempty, clean up more
14359 * tests/testsuite.at (LT_AT_BOOTSTRAP): Temporary fix for testing
14360 in-tree libtoolize.
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>.
14366 2005-04-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14368 * tests/Makefile.am: Typo.
14370 2005-04-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
14377 2005-04-04 Gary V. Vaughan <gary@gnu.org>
14379 Under certain circumstances, not all of the macro files were
14380 copied into the destination directory. This changeset fixes
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>
14388 2005-04-04 Gary V. Vaughan <gary@gnu.org>
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.
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.
14401 2005-04-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
14408 2005-04-04 Gary V. Vaughan <gary@gnu.org>
14410 * libtoolize.m4sh (func_serial_update): Replace missing
14411 destination serial calculation line, presumably lost due to a bad
14414 * libltdl/loaders/Makefile.am: Removed actually.
14416 2005-04-04 Gary V. Vaughan <gary@gnu.org>
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':
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
14434 (libtoolize): Substitute $(ltdldatafiles) directly without calling
14435 make to get the value from libltdl/Makefile.
14437 2005-04-01 Gary V. Vaughan <gary@gnu.org>
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
14446 2005-04-01 Gary V. Vaughan <gary@gnu.org>
14448 Fix problems with serial comparison sed scripts, and factor out
14449 common code from similar serial comparison functions:
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.
14458 2005-04-01 Gary V. Vaughan <gary@gnu.org>
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:
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
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.
14483 2005-04-01 Mike Stump <mrs@apple.com>
14485 * m4/libtool.m4 (LT_CMD_MAX_LEN) [netbsd, freebsd, openbsd
14486 darwin, dragonfly]: Use 3/4 of argmax, instead of 1/4.
14488 2005-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14490 * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG):
14493 * HACKING: echo vs $ECHO.
14495 2005-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
14497 * doc/libtool.texi: Minor formatting cleanups.
14499 2005-03-24 Gary V. Vaughan <gary@gnu.org>
14501 * libtoolize.m4sh: Propogate --debug flag to sub-libtoolizes.
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.
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!
14513 * libtoolize.m4sh: For verbose mode, explain why macro files are
14514 not installed without an AC_CONFIG_MACRO_DIR declaration.
14516 2005-03-24 Gary V. Vaughan <gary@gnu.org>
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:
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
14535 (pkgvltdldirs): New path variable to search for files installed by
14537 (func_massage_pkgvltdl_files): New function to calculate the list
14538 of ltdl installation files.
14540 2005-03-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
14542 * m4/libtool.m4, m4/ltdl.m4: Indentation and quoting cleanup.
14544 2005-03-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
14552 2005-03-21 Gary V. Vaughan <gary@gnu.org>,
14553 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
14560 2005-03-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14564 2005-03-20 Peter Ekberg <peda@lysator.liu.se>
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
14574 2005-03-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14576 * tests/demo-nopic.test: Enhance status output
14577 noted by Tom Burger <tvburger@few.vu.nl>.
14579 2005-03-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14581 * config/ltmain.m4sh, tests/defs.m4sh: Typos.
14583 2005-03-18 Peter O'Gorman <peter@pogma.com>,
14584 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
14590 2005-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14592 * Makefile.am: tests/defs.in depends on config/general.m4sh.
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
14599 * m4/libtool.m4 (_LT_CONFIG): Reset IFS to fix failure with ash.
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>.
14605 2005-03-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14607 * libltdl/configure.ac: Update version; require Autoconf >= 2.59.
14609 * bootstrap: Allow to override tools.
14611 2005-03-15 Gary V. Vaughan <gary@gnu.org>
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.
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.
14621 2005-03-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14623 * m4/libtool.m4 (_LT_COPYING): Update Copyright year.
14625 * m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]: Remove MAIN_
14626 dependency when creating shared libraries with Portland pgf77.
14628 2005-03-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14630 * configure.ac: stamp-vcl is in $top_srcdir, not $top_builddir.
14632 2005-03-12 Per Bothner <per@bothner.com>,
14633 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
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.
14645 2005-03-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14647 * config/ltmain.m4sh (func_mode_link): Reword double negation in
14649 Reported by Jesper Louis Andersen <jlouis@mongers.org>.
14651 * bootstrap: really remove bogus files Makefile tests/Makefile.
14653 * doc/libtool.texi: Replace wicked whiches by thats or other
14654 better-sounding constructs.
14656 2005-03-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
14658 * tests/Makefile (clean-local): Ignore testsuite cleanup
14661 2005-03-11 Per Bothner <per@bothner.com> (tiny change)
14663 * tests/Makefile (clean-local): Only run the testsuite cleanup
14664 if the testsuite has been generated.
14666 2005-03-10 Gary V. Vaughan <gary@gnu.org>
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>
14679 2005-03-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14681 * libltdl/Makefile.am: $(builddir) is not defined, replace by
14684 2005-03-08 Albert Chin-A-Young <china@thewrittenword.com>
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.
14693 2005-03-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14695 * tests/stresstest.at: Remove multiple variable definition.
14701 2005-03-02 Gary V. Vaughan <gary@gnu.org>
14703 * libtoolize.m4sh (func_copy_cb): Use tar chof to avoid symlink
14705 * libltdl/Makefile.am, libltdl/loaders/Makefile.am
14706 (install-data-local): Ditto.
14708 2005-02-27 Gary V. Vaughan <gary@gnu.org>
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
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.
14731 2005-02-26 Gary V. Vaughan <gary@gnu.org>
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.
14739 2005-02-26 Gary V. Vaughan <gary@gnu.org>
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:
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
14761 2005-02-25 Gary V. Vaughan <gary@gnu.org>
14763 * libtoolize.m4sh (func_copy): Split arguments to func_copy_cb
14764 calls across lines so that quote.test doesn't misdiagnose nested
14767 * m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC):
14768 Fix some typos -- s/_LT_AC_TAGVAR/_LT_TAGVAR/g.
14770 2005-02-24 Peter O'Gorman <peter@pogma.com>
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
14778 Reported by Jeff Squyres <jsquyres@lam-mpi.org>
14780 2005-02-23 Gary V. Vaughan <gary@gnu.org>
14782 * libltdl/Makefile.am (install-data-local): Don't forget about
14784 * libltdl/loaders/Makefile.am (install-data-local): Ditto.
14786 2005-02-23 Gary V. Vaughan <gary@gnu.org>
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:
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.
14798 2005-02-23 Christoph Egger <Christoph_Egger@gmx.de> (tiny change)
14800 * config/ltmain.m4sh (func_mode_link): Add -pthread like flags to
14801 inherited_linker_flags.
14803 2005-02-22 Gary V. Vaughan <gary@gnu.org>
14805 * libtoolize.m4sh (func_copy_cb): self.leg->shoot_off() :-/
14806 Let's not redirect stdout to null when sending tar output to a
14809 2005-02-22 Gary V. Vaughan <gary@gnu.org>
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:
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>
14822 2005-02-21 Peter O'Gorman <peter@pogma.com>
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.
14829 2005-02-07 Peter O'Gorman <peter@pogma.com>
14831 * config/ltmain.m4sh: Add -pthread like flags when linking
14833 Reported by Andreas Schwab <schwab@suse.de>
14835 2005-02-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14837 * config/ltmain.m4sh (func_mode_link): Allow five digits in
14840 * NEWS: s/Linux/GNU &/.
14842 2005-02-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
14849 2005-02-03 Reid Spencer <reid@x10sys.com>,
14850 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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'.
14856 2005-02-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14862 2005-02-03 Peter O'Gorman <peter@pogma.com>
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.
14868 2005-02-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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):
14875 * tests/sh.test: Check for preferred function definition layout.
14877 2005-02-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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]*]:
14884 (_LT_LANG_CXX_CONFIG) [aix4.[012]*, freebsd[12], solaris2.[0-5]]:
14886 (_LT_LANG_GCJ_CONFIG): Ditto.
14888 * tests/Makefile.am: Add `atconfig' to DISTCLEANFILES.
14890 * clcommit.m4sh: Test whether the shell understands `read -r'.
14891 Use as `$read_r' if available, so `\' is preserved in commit
14894 * HACKING (Editing `.m4sh' Files): Document preferred function
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.
14900 2005-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
14908 * tests/quote.test: Match link quoting against `"$wl"', not
14911 * tests/quote.test: Check for `--no-reexec' in $1 to avoid one
14914 * m4/libtool.m4 (_LT_COMPILER_C_O): _LT_TAGDECL(lt_compiler_c_o),
14915 not _LT_DECL, since this is tag-dependent.
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).
14923 2005-01-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
14929 2005-01-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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>.
14935 2005-01-26 Craig Dooley <xlnxminusx@gmail.com>,
14936 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14938 * NEWS, m4/libtool.m4, config/ltmain.m4sh [dragonfly]:
14939 Add support for DragonFly.
14941 2005-01-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14943 * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Work around pdksh
14944 positional parameter expansion bug.
14946 2005-01-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14948 * config/ltmain.m4sh: Fix endless loop in cmdline parsing.
14950 2005-01-25 Albert Chin-A-Young <china@thewrittenword.com>
14952 * config/ltmain.m4sh (func_mode_link) [irix]: Preserve processor
14953 option for SGI Compiler (-r[0-9][0-9]*).
14955 2005-01-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
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
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.
14976 2005-01-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14978 * libltdl/Makefile.am: Add $(AM_LDFLAGS) to all per-target
14979 variables *_LDFLAGS as per CVS Automake semantic change.
14981 2005-01-16 Peter O'Gorman <peter@pogma.com>
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.
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
14992 Reported by Dr. Hans Ekkehard Plesser
14993 <hans.ekkehard.plesser@umb.no>
14995 2005-01-14 Guido Draheim <guidod-2003-@gmx.de> (tiny change)
14997 * m4/libtool.m4 (AC_PROG_SED): Don't break test loop early.
14999 2005-01-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15003 * libltdl/ltdl.c: Whitespace cleanup.
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.
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>.
15013 2005-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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:
15020 2005-01-10 Peter O'Gorman <peter@pogma.com>
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>
15030 2005-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
15037 2005-01-09 Gary V. Vaughan <gary@gnu.org>
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>.
15043 * ChangeLog.2004: Trim 2005 entries.
15044 * ChangeLog: Add missing entries.
15046 2005-01-08 Gary V. Vaughan <gary@gnu.org>
15048 * ChangeLog: Move 2004 change logs from here...
15049 * ChangeLog.2004: ...to here.
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
15059 * ChangeLog: Reformatting.
15060 * HACKING: Fix section numbering.
15061 (Editing 'ChangeLog'): New notes on ChangeLog entry format.
15063 2005-01-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
15070 2004-12-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15072 * config/getopt.m4sh (func_version, func_usage, func_help):
15073 Use `$SED -n' instead of `$SED RANGE {..}; d' as AIX sed cannot
15075 (func_help): start autoconf and automake in subshells to avoid
15076 error messages from ash or Bourne shell if not available.
15078 2004-12-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
15084 2004-12-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>,
15085 Gary V. Vaughan <gary@gnu.org>
15087 * Makefile.am, bootstrap, clcommit.m4sh, libtoolize.m4sh,
15088 config/ltmain.m4sh: Replace `set --' with `set dummy [...]; shift'
15090 * tests/sh.test: Test for this.
15092 2004-12-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
15098 * tests/defs.m4sh: Ditto for VERBOSE=debug.
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'.
15105 * doc/libtool.texi (all over): Use @option and @command.
15106 Some more minor formatting updates, typos.
15108 * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix variable quoting;
15109 allows lt_ECHO to match --fallback-echo again.
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>.
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>.
15121 * tests/quote.test: Restart under the correct shell (the one
15122 $ECHO was computed for).
15124 2004-12-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15126 * libltdl/lt__dirent.c: Include lt__private.h.
15127 * libltdl/libltdl/lt__private.h: Include lt__strl.h.
15129 2004-12-20 Peter O'Gorman <peter@pogma.com>
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.
15144 2004-12-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15146 * libtoolize.m4sh: Install `install-sh' as well, needed for
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>.
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.
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.
15160 * tests/demo-nopic.test [solaris, sunos]: Skip test.
15162 2004-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15164 * libtool.m4 [linux] (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG):
15165 Match icpc* and ecpc* (ia64 version of icpc) instead of only icpc.
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.
15171 2004-12-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15173 * HACKING: Update list of non-Libtool-owned files.
15175 2004-12-17 Akim Demaille <akim@epita.fr>
15177 * libtoolize.m4sh (func_copy_all_from_path): Remove spurious eval.
15179 2004-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15181 * libltdl/ltdl.c (trim): Return error rather than do bogus
15182 null pointer arithmetic when parsing a malformed .la file.
15184 2004-12-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
15193 2004-12-13 Albert Chin-A-Young <china@thewrittenword.com>
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++
15200 2004-12-12 Patrick Welche <prlw1@newn.cam.ac.uk>
15202 * configure.ac: Fix aclocaldir to use ${datadir}, not ${prefix}.
15203 Necessary for removal of old libtool.m4 files.
15205 2004-12-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15207 * config/ltmain.m4sh (func_extract_archive): Send stderr of $NM
15209 Reported by Martin Waitz <tali@admingilde.org>.
15211 2004-12-09 Albert Chin-A-Young <china@thewrittenword.com>
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.
15217 2004-12-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15219 * config/ltmain.m4sh (func_mode_finish) [solaris]: Fix [] escaping
15222 * config/ltmain.m4sh (all over the map): Make use of func_basename
15223 and func_dirname in most occasions.
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'
15235 * config/ltmain.m4sh: Set marker for insertion of shell functions.
15237 * config/general.m4sh (func_quote_for_eval): Only fork if the
15238 substitution matches.
15240 2004-12-03 Gary V. Vaughan <gary@gnu.org>
15242 * TODO: Paste Peter's summary of the TODO thread starting at
15243 http://lists.gnu.org/archive/html/libtool/2004-11/msg00130.html.
15245 2004-12-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15247 * config/ltmain.m4sh: Remove code which is no longer needed
15248 now that temp_rpath only contains fully-qualified elements.
15250 2004-11-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
15259 2004-11-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15261 * config/ltmain.m4sh (func_lalib_p): Update function
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.
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.
15278 * libltdl/ltdl.c (trim): Use memcpy instead of strncpy here, to
15279 avoid problems with non-conforming strncpy. This is safe here.
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.
15287 2004-11-29 Gary V. Vaughan <gary@gnu.org>
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
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
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,
15321 2004-11-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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).
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
15331 * libltdl/loaders/loadlibrary.c: Remove unneeded
15332 file-static variable.
15334 2004-11-27 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
15340 2004-11-24 Jeff Squyres <jsquyres@lam-mpi.org>
15342 * m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
15343 (_LT_LANG_CXX_CONFIG) [linux]: Support for Portland Group (aka
15345 * NEWS, THANKS: Updated.
15347 2004-11-24 Gary V. Vaughan <gary@gnu.org>
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
15355 2004-11-23 Gary V. Vaughan <gary@gnu.org>
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 :->
15364 * tests/defs.m4sh (SHELL): Move definition from here...
15365 * config/general.m4sh (SHELL): ...to here.
15367 2004-11-23 Gary V. Vaughan <gary@gnu.org>
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:
15374 * libltdl/libltdl/ltdl.h: Moved from here...
15375 * libltdl/ltdl.h: ...to here.
15376 * libltdl/Makefile.am: Adjust.
15378 2004-11-23 Peter O'Gorman <peter@pogma.com>
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:
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.
15396 2004-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15398 * doc/libtool.texi (LT_INIT): s/libtool 1.6/libtool 2.0/.
15399 (Invoking libtoolize): Fix typo.
15401 2004-11-22 Gary V. Vaughan <gary@gnu.org>
15403 * config/ltmain.m4sh (func_mode_install): Now that func_mktempdir
15404 has been improved, the default directory template is perfectly
15407 * doc/libtool.texi (Invoking libtoolize): Improve documentation
15408 for use of ACLOCAL_AMFLAGS and AC_CONFIG_MACRO_DIR.
15410 2004-11-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15412 * m4/libtool.m4 (_LT_TAG_COMPILER): Document that with_gcc is
15415 * m4/libtool.m4, tests/demo-nopic.test: Undo bogus commit.
15417 * config/ltmain.m4sh (func_mode_link), tests/objectlist.test:
15418 Make sure the argument to `-objectlist' may contain spaces.
15420 2004-11-19 Gary V. Vaughan <gary@gnu.org>
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.
15426 2004-11-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15428 * doc/libtool.texi (Libltdl interface): Typos.
15430 * doc/libtool.texi (Libltdl interface): Document public macros
15431 LT_PATHSEP_CHAR, LT_DIRSEP_CHAR, use in path descriptions.
15433 2004-11-18 Daniel Reed <djr@redhat.com>
15435 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: Interpret
15436 `include' statements in toplevel ld.so.conf file.
15438 2004-11-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15440 * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
15441 tag-protect setting of ld_shlibs.
15443 2004-11-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15445 * doc/libtool.texi (Libltdl interface): The path separator
15446 is system-dependent.
15448 * doc/libtool.texi (Linking static libraries): Typo.
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.
15454 2004-11-17 Mats Rynge <rynge@isi.edu>
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
15460 * libtool.m4 [solaris]: Added missing 'with linker' flags to
15461 -z allextract ... -z defaultextract flags
15463 2004-11-14 Gary V. Vaughan <gary@gnu.org>
15465 * m4/libtool.m4 (_LT_LINKER_SHLIBS): Typo: s/--rpath/-rpath/g.
15466 (_LT_LANG_CXX_CONFIG): Ditto.
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
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.
15485 2004-11-10 Gary V. Vaughan <gary@gnu.org>
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.
15492 2004-11-10 James E Wilson <wilson@specifixinc.com>,
15493 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
15499 * Makefile.am: config/ltmain.sh is generated by
15500 config/ltmain.m4sh.
15502 2004-11-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
15508 * doc/libtool.texi (libtool script contents):
15509 echo is now ECHO; mention argument restriction.
15511 * doc/libtool.texi (Multiple dependencies): Minor rewording.
15513 * doc/libtool.texi (User defined module data, References):
15514 indentation and word-wrap cleanup.
15516 * doc/libtool.texi (all over): White space cleanup:
15517 two spaces at start of sentence, no TABs.
15519 2004-11-09 Gary V. Vaughan <gary@gnu.org>,
15520 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15522 * doc/libtool.texi (libtool script contents): Fix description
15523 of need_lib_prefix.
15525 2004-11-08 Peter Ekberg <spam.protected>
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'.
15531 2004-11-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15533 * m4/ltoptions.m4: Change all references of LT_LIBTOOL_INIT
15536 2004-11-05 Peter Ekberg <spam.protected>
15538 * ltmain.m4sh (cwrappersource): clean up other warning on MinGW.
15540 2004-11-04 Bernhard Fischer <spam.protected>,
15541 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15543 * m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS), m4/ltoptions.m4
15544 (_LT_SET_OPTIONS), README, README.alpha: Typos.
15546 2004-11-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15548 * libltdl/ltdl.c (parse_dotla_file): Fix memleak.
15550 * ltmain.m4sh (cwrappersource): Cast isalpha arguments correctly.
15552 2004-11-03 Peter Ekberg <spam.protected>
15554 * ltmain.m4sh (cwrappersource): clean up warnings and
15555 #include errors on MinGW.
15557 2004-11-01 Peter Ekberg <spam.protected>
15559 * config/ltmain.m4sh (cwrappersource): clean up warnings and
15562 2004-11-01 Peter Ekberg <spam.protected>
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:
15568 (1) there is a library
15569 (2) there is an executable that does not, itself, link against
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.
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
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.
15589 2004-11-01 Charles Wilson <spam.protected>,
15590 Peter Ekberg <spam.protected>
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.
15598 2004-10-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15600 * libltdl/ltdl.c (loader_init_callback): Back out broken cast.
15602 * libltdl/ltdl.c (loader_init_callback, lt_dlexit): Add casts to
15605 * tests/defs.m4sh (func_exec): `shift'ing when there is nothing
15606 to shift is non-portable.
15608 2004-10-28 Patrick Welche <prlw1@newn.cam.ac.uk>,
15609 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15611 * Makefile.am, Makefile.maint: Use path for dependencies built
15612 in the source tree, to cater for BSD make.
15614 2004-10-24 Noah Misch <noah@cs.caltech.edu>
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.
15621 2004-10-24 Gary V. Vaughan <gary@gnu.org>
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.
15628 * HACKING: Fix a typo in the gpg --verify instructions.
15630 * Makefile.maint (cvs-dist): Generate signatures and directives
15633 2004-10-23 Peter O'Gorman <peter@pogma.com>
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.
15640 2004-10-22 Gary V. Vaughan <gary@gnu.org>
15642 * clcommit.m4sh: Add --rcfile option.
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.
15648 2004-10-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15650 * TODO, libltdl/lt_error.h, libltdl/ltdl.c, libltdl/ltdl.h:
15651 Undo accidental commit.
15653 * Makefile.maint: Fix typo.
15655 2004-10-22 Gary V. Vaughan <gary@gnu.org>
15657 * clcommit.m4sh, config/mailnotify.m4sh: Updated from
15658 cvs-utils--tla--1.0 to fix quoting of metachars in patch names.
15660 * HACKING: Updated: `.in' files are now `.m4sh'; document some
15661 more coding standards for these files.
15663 * config/general.m4sh (sed_double_backslash): Undo an
15666 2004-10-21 Gary V. Vaughan <gary@gnu.org>
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.
15673 2004-10-21 Noah Misch <noah@cs.caltech.edu>,
15674 Gary V. Vaughan <gary@gnu.org>
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.
15681 2004-10-20 Gary V. Vaughan <gary@gnu.org>
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.
15690 2004-10-20 Noah Misch <noah@cs.caltech.edu>,
15691 Gary V. Vaughan <gary@gnu.org>
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.
15713 2004-10-16 Gary V. Vaughan <gary@gnu.org>
15715 * config/ltmain.m4sh (func_mode_finish): solaris-2.6 also has
15717 Reported by Albert Chin-A-Young <china@thewrittenword.com>
15719 2004-10-16 Gary V. Vaughan <gary@gnu.org>
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
15727 * configure.ac (AC_CONFIG_TESTDIR): Re-enable commented out
15729 (AUTOTEST, M4SH): Use --language long hand.
15730 * bootstrap: Generate tests/testsuite, and by implication
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
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
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
15756 2004-10-14 Peter O'Gorman <peter@pogma.com>
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.
15762 2004-10-13 Gary V. Vaughan <gary@gnu.org>
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>
15768 * tests/cdemo-undef.test: New test for hosts that allow shared
15769 libraries with undefined symbols, but have no C++ compiler
15771 * tests/Makefile.am (COMMON_TESTS): Add it.
15773 2004-10-13 Peter O'Gorman <peter@pogma.com>
15775 * config/ltmain.m4sh: Make sure that we $show what we will $run,
15776 use eval $show if we do $run eval.
15778 2004-10-13 Charles Wilson <spam.protected>
15780 * config/ltmain.m4sh: add foo/bin for every foo/lib
15781 in dllsearchpath when creating wrapper script. Fixes
15782 depdemo-relink test failure.
15784 2004-10-12 Charles Wilson <spam.protected>
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.
15790 2004-10-13 Gary V. Vaughan <gary@gnu.org>
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.
15796 2004-10-11 Charles Wilson <spam.protected>
15798 * tests/link.test: Fix check for use of libnlsut.a under
15801 2004-10-11 Noah Misch <noah@cs.caltech.edu>
15803 * tests/quote.test: Do not look for $preargs in the output,
15804 because libtool may change them.
15806 2004-10-10 Charles Wilson <spam.protected>
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
15812 2004-10-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
15818 2004-10-10 Albert Chin-A-Young <china@thewrittenword.com>
15820 * config/ltmain.m4sh: Don't require versions of GNU sed newer than
15821 3.02 for Cygwin and MinGW.
15823 2004-10-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15825 * tests/pdemo-inst.test: Correction for mis-application of
15826 Charles Wilson's earlier patch.
15828 2004-10-09 Gary V. Vaughan <gary@gnu.org>
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.
15834 2004-10-08 Gary V. Vaughan <gary@gnu.org>
15836 Update to the latest commit and mailnotify scripts from
15837 gary@gnu.org--2004/cvs-utils--tla--1.0:
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.
15845 2004-10-08 Gary V. Vaughan <gary@gnu.org>
15847 Fix some issues that mangled the reexecution path to a script,
15848 and thus prevented it from finding itself:
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').
15857 2004-10-08 Gary V. Vaughan <gary@gnu.org>
15859 * config/general.m4sh (func_verbose): Work around a bash bug in
15862 2004-10-08 Charles Wilson <cygwin@cwilson.fastmail.fm>
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.
15870 2004-10-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15872 * libltdl/ltdl.c (lt_dlexit, lt_dlpath_insertdir): Fix memleaks,
15873 free user_search_path on lt_dlexit.
15875 2004-10-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15877 * tests/sh.test: Remove tests which fail on AS_SHELL_SANITIZE
15878 from autoconf >= 2.59.
15880 * TODO: Remove item: no need for a libltdl without stdio.
15882 2004-10-07 Gary V. Vaughan <gary@gnu.org>
15884 * tests/defs.m4sh (scripts): Actually scan the generated ltmain.sh
15885 for shell portability problems.
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.
15891 2004-10-06 Peter O'Gorman <peter@pogma.com>
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.
15898 2004-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15900 * libltdl/ltdl.c (try_dlopen): Move .la file parsing
15901 part.. (parse_dotla_file): ..here. Adjust.
15903 * libltdl/ltdl.c (load_deplibs, try_dlopen): Revert unnecessary casts
15904 to int from my patch from 2004-10-01.
15906 * AUTHORS: Add myself.
15908 2004-10-05 Peter O'Gorman <peter@pogma.com>
15910 * config/ltmain.m4sh [darwin]: Make the -dylib_file flag work on
15911 older darwins too. Reported by Christoph Egger.
15913 2004-10-05 Gary V. Vaughan <gary@gnu.org>
15915 * configure.ac: Bumped version to 2.1a.
15917 2004-10-04 Gary V. Vaughan <gary@gnu.org>
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.
15924 * config/ltmain.m4sh: Need to include getopt.m4sh earlier so that
15925 progpath is set before it is called to --no-reexec.
15928 2004-10-04 Gary V. Vaughan <gary@gnu.org>
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:
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
15940 ($(top_srcdir)/tests/defs.in, $(top_srcdir)/tests/defs): Ditto.
15941 ($(top_srcdir)/config/ltmain.sh): Swap ltmain.m4sh and ltmain.in
15943 * bootstrap: Make libtoolize.in and tests/defs.in.
15946 2004-10-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15948 * README, README.alpha: Update notes regarding available VERBOSE
15951 2004-10-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15953 * config/ltmain.in: Change $XSED to $Xsed to fix hang noticed
15955 * tests/defs.in: Support VERBOSE=debug to enable shell tracing
15956 while running tests.
15958 2004-10-03 Gary V. Vaughan <gary@gnu.org>
15961 * configure.ac: Bumped version to 1.9e.
15963 GNU libtool 1.9d was released.
15965 * configure.ac: Bumped version to 1.9d.
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>
15972 * libltdl/Makefile.am (libltdlc_la_LIBADD): Don't use
15973 libdlloader_la_OBJECTS, an undocumented Automake internal
15975 (libltdlc_la_SOURCES): ...use libdlloader_la_SOURCES here
15977 Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
15979 * libltdl/argz_.h: Forgot to spell lt_system.h with just one `_'.
15981 * libltdl/argz_.h: Forgot to include lt__system.h for LT_SCOPE
15984 2004-10-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>,
15985 Gary V. Vaughan <gary@gnu.org>
15987 * libltdl/lt__alloc.h: Declare exported functions with LT_SCOPE
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.
15995 2004-10-03 Gary V. Vaughan <gary@gnu.org>
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>
16001 2004-10-02 Gary V. Vaughan <gary@gnu.org>
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.
16007 2004-10-02 Jim Tison <jtison@us.ibm.com>
16009 Initial support for s390x-ibm-tpf:
16011 * m4/libtool.m4: Correct obvious spelling errors in remarks.
16012 (_LT_ENABLE_LOCK): Make s390x-ibm-tpf hosts adopt elf64_s390
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
16021 2004-10-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16023 * config/ltmain.in (func_mode_install): Need to set $tmpdir before
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.
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.
16034 * libltdl/slist.c (slist_foreach): result was declared as
16035 inner variable, shadowing the actually returned value.
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.
16041 2004-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16043 * libltdl/ltdl.c (try_dlopen): Fix null pointer dereference in
16044 case the name given to lt_dlopen contains no extension.
16046 * libltdl/lt_dlloader.c (lt_dlloader_remove), libltdl/ltdl.c
16047 (tryall_dlopen, lt_dlhandle_next): Show usage of function pointers.
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.
16054 2004-09-30 Gary V. Vaughan <gary@gnu.org>
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.
16064 * m4/libtool.m4 (echo): Use ECHO throughout for consistency with
16066 Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16068 * m4/libtool.m4 (rm): Use RM throughout for consistency with
16070 Reported by Charles Wilson <cwilson@spam.protected>
16072 2004-09-27 Peter O'Gorman <peter@pogma.com>
16074 * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
16075 output during configure. (Really this time, honest)
16077 2004-09-26 Albert Chin-A-Young <china@thewrittenword.com>
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.
16083 2004-09-25 Gary V. Vaughan <gary@gnu.org>
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.
16091 2004-09-24 Charles Wilson <cwilson@spam.protected>
16093 * libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Revert changeset from
16094 `2004-09-22 Charles Wilson <cwilson@spam.protected>'.
16096 2004-09-24 Gary V. Vaughan <gary@gnu.org>
16098 * config/general.m4sh (Xsed): Set a default when not used from
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>
16107 2004-09-24 Peter O'Gorman <peter@pogma.com>
16109 * m4/libtool.m4 (_LT_CMD_STRIPLIB) [darwin]: strip archives too.
16111 * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
16112 output during configure.
16114 2004-09-24 Gary V. Vaughan <gary@gnu.org>
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
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>
16124 2004-09-23 Gary V. Vaughan <gary@gnu.org>
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>
16158 * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Gah. Merge error
16161 2004-09-23 Gary V. Vaughan <gary@gnu.org>
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:
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.
16202 2004-09-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16204 * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): move symcode calculation
16206 * doc/libtool.texi (libtool script contents): update description
16207 of global_symbol_to_cdecl.
16209 2004-09-23 Gary V. Vaughan <gary@gnu.org>
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
16217 (func_serial): No need to double up m4sh quotes after a `#'.
16218 (func_check_macros): Escape `dnl' to stop m4sh interpreting it as
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
16223 * Makefile.am ($(top_srcdir)/config/ltmain.sh): Now built with
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.
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.
16235 2004-09-22 Gary V. Vaughan <gary@gnu.org>
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
16242 2004-09-22 Andreas Schwab <schwab@suse.de>
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:
16250 * config/ltmain.in: (Un)Reverse $deplibs list at the start of the
16251 link pass in lib mode.
16253 2004-09-22 Charles Wilson <cwilson@spam.protected>
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.
16261 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better quoting for
16262 postinstall_cmds and postuninstall_cmds to allow spaces in install
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
16269 * m4/libtool.m4 (_LT_LINKER_SHLIBS([TAGNAME])): Build exports for
16270 symbols in .rdata sections.
16272 2004-09-19 Gary V. Vaughan <gary@gnu.org>
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
16281 * tests/assign.test: Removed; chokes on perfectly valid shell
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.
16287 2004-09-17 Gary V. Vaughan <gary@gnu.org>
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.
16293 2004-09-17 Gary V. Vaughan <gary@gnu.org>
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:
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
16319 2004-09-17 Peter O'Gorman <peter@pogma.com>
16321 * m4/libtool.m4: remove an extra "]"
16323 * m4/libtool.m4 [darwin] (_LT_LANG_CXX_CONFIG): Changes for 10.4.
16324 * config/libtool.in [darwin]: ditto.
16326 2004-09-16 Gary V. Vaughan <gary@gnu.org>
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:
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
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).
16345 2004-09-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
16355 2004-09-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16357 * tests/Makefile.am: Use the same CPP, F77, CXX and CXXFLAGS
16358 for the test suite.
16360 2004-09-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
16366 2004-09-15 Gary V. Vaughan <gary@gnu.org>
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.
16373 2004-09-14 Gary V. Vaughan <gary@gnu.org>
16375 * config/ltmain.in (func_quote_for_eval): Factor out the ugly
16376 shell meta-character quoting. Changed all callers.
16378 2004-09-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16380 * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Simplification:
16381 distinguish between data and code symbols on every system.
16383 2004-09-14 Albert Chin-A-Young <china@thewrittenword.com>
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:
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
16395 2004-09-13 Gary V. Vaughan <gary@gnu.org>
16397 * m4/libtool.m4 (_LT_CMD_GLOBALS_SYMBOLS): Fix a typo I made when
16398 applying 2004-09-11 Ralf Wildenhues.
16400 2004-09-12 Brad <brad@comstyle.com>
16402 * libtool.m4: Fixes for the OpenBSD support
16404 2004-09-12 Peter O'Gorman <peter@pogma.com>
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.
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.
16422 2004-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16424 * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): The linker distinguishes
16425 data and code symbols on linux-gnu/ia64. Fixes multiple testsuite
16429 2004-09-06 Gary V. Vaughan <gary@gnu.org>
16431 * libltdl/loaders/shl_load.c (get_vtable): Typo.
16433 2004-09-06 Albert Chin-A-Young <china@thewrittenword.com>
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:
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.
16445 2004-09-06 Albert Chin-A-Young <china@thewrittenword.com>
16447 * Makefile.am (clean-ltmain-sh): Using '==' to test for equality
16448 in a shell script is not portable. Use '=' instead.
16450 2004-09-05 Andreas Schwab <schwab@suse.de>
16452 * m4/ltdl.m4 (LT_WITH_LTDL): Remove excess quoting in argument of
16455 2004-09-05 Albert Chin-A-Young <china@thewrittenword.com>
16457 * config/ltmain.in (func_mode_link): Pass otherwise unrecognised +
16458 and - style switches to the compiler.
16461 2004-09-05 Gary V. Vaughan <gary@gnu.org>
16463 * Makefile.am (libtool): Force libtool to be regenerated if
16464 stamp-vcl has changed.
16466 2004-09-05 Albert Chin-A-Young <china@thewrittenword.com>
16468 * m4/libtool.m4, config/ltmain.in: When calling $LTCC,
16469 pass default $CFLAGS through with $LTCFLAGS.
16471 2004-09-03 David Edelsohn <dje@watson.ibm.com>
16473 * config/ltmain.in (func_mode_link): Use $pic_object as
16474 $non_pic_object if $non_pic_object=none.
16477 2004-09-03 Gary V. Vaughan <gary@gnu.org>
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.
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
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.
16492 2004-09-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16494 * libltdl/slist.c (slist_cons): Don't leak the tail of a list.
16496 2004-09-03 Albert Chin-A-Young <china@thewrittenword.com>
16498 * m4/libtool.m4 (_LT_ENABLE_LOCK): Reformatted.
16500 2004-09-03 Gary V. Vaughan <gary@gnu.org>
16502 * HACKING: Explain how to verify detached signatures with gpg in
16503 the release announcement templates.
16505 * AUTHORS: Fix typo in my address.
16507 2004-09-02 Gary V. Vaughan <gary@gnu.org>,
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
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.
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.
16529 Reported by Daniel Reed <n@ml.org>
16531 2004-09-02 Gary V. Vaughan <gary@gnu.org>,
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.
16538 * AUTHORS: Fix my email address.
16540 2004-09-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16542 * libltdl/ltdl.c (try_dlopen): Fix memory leak.
16545 2004-09-02 Gary V. Vaughan <gary@gnu.org>,
16546 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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'.
16576 * THANKS: Added Ralf.
16578 2004-09-01 Gary V. Vaughan <gary@gnu.org>
16580 * libltdl/lt_dlloader.c (lt_dlloader_add): Handle malloc failure
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>
16586 2004-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16588 * libltdl/slist.c (slist_new): Handle malloc failure gracefully.
16590 2004-09-01 Gary V. Vaughan <gary@gnu.org>
16592 * libtoolize.in, config/ltmain.in: Add CDPATH protection to
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.
16599 * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Use correct cpp
16600 macro name, LT_DLSEARCH_PATH.
16602 * libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Fix gcc parentheses
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>
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>
16612 2004-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16614 * libltdl/loaders/preopen.c: Initialise memory in get_vtable.
16616 * tests/sh.test: Look in the source tree for ltmain.sh.
16618 2004-09-01 Gary V. Vaughan <gary@gnu.org>
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:
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
16632 (vm_sym): Skip the new originator symbol when scanning symbol
16634 * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust preloaded symbols
16635 test file to match.
16637 Reported by Andreas Schwab <schwab@suse.de>
16639 2004-09-01 Gary V. Vaughan <gary@gnu.org>
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.
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.
16651 2004-08-31 Gary V. Vaughan <gary@gnu.org>
16653 * Makefile.am (clean-ltmain-sh): Remove stale config/ltmain.sh
16654 from the build tree that were left behind by previous versions of
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>
16660 2004-08-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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.
16667 * libltdl/ltdl.c: Replace strdup with lt__strdup.
16669 2004-08-30 Gary V. Vaughan <gary@gnu.org>
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.
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.
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
16683 * libltdl/lt_dlloader.h (lt_dlloader_remove): Ditto.
16684 * libltdl/ltdl.c (lt_dlexit): Adjust.
16687 2004-08-30 Andreas Schwab <schwab@suse.de>
16689 * libltdl/ltdl.c (lt_dlexit): Remove lvalue cast.
16691 * libltdl/slist.h (SListCallback): Fix missing type.
16693 * config/ltmain.in: Accept --mode=relink.
16695 2004-08-29 Gary V. Vaughan <gary@gnu.org>
16698 * configure.ac: Bumped version to 1.9c.
16700 GNU libtool 1.9b was released.
16702 * configure.ac: Bumped version to 1.9b.
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
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.
16713 * NEWS: Merge changes from branch-1-5.
16715 * Makefile.am (dist-hook): Always distribute just a README file,
16716 but take its contents from README-alpha for alpha releases.
16718 * TODO: Reformat. Removed some items that have been implemented.
16720 2004-08-29 Gary V. Vaughan <gary@gnu.org>
16722 Add a new `-weak' flag to tell libtool when not to propogate
16723 dependency libraries from dlpreopened modules to libraries:
16725 * config/ltmain.in: Support new -weak link mode option. Adjust
16727 * libltdl/Makefile.am (libltdlc_la_LDFLAGS): Use it.
16728 * doc/libtool.texi (Linking with dlopened modules): Document it.
16729 (Link mode): Mention -weak.
16732 2004-08-29 Gary V. Vaughan <gary@gnu.org>
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'.
16738 2004-08-29 Gary V. Vaughan <gary@gnu.org>
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:
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
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.
16764 2004-08-28 Gary V. Vaughan <gary@gnu.org>
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:
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.
16777 2004-08-27 Gary V. Vaughan <gary@gnu.org>
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:
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.
16795 2004-08-27 Gary V. Vaughan <gary@gnu.org>
16797 * doc/libtool.texi (Cheap tricks): Escape the `@' for texinfo.
16799 2004-08-27 Gary V. Vaughan <gary@gnu.org>
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.
16805 2004-08-26 Peter O'Gorman <peter@pogma.com>
16807 * config/ltmain.in [darwin]: Use the -dylib_file flag and avoid
16808 linking to so many libraries on darwin.
16810 * m4/libtool.m4 [darwin]: Don't use a libname triplet, a couplet
16813 * m4/ltdl.m4: Don't use the dyld loader on darwin 8 or later.
16815 2004-08-25 Paolo Bonzini <bonzini@gnu.org>
16817 * config/ltmain.in (piecewise linking): Use a GNU ld script if
16819 * m4/libtool.m4 (_LT_LINKER_SHLIBS): Add per-tag variable
16821 (_LT_LANG_CXX_CONFIG): Don't set unused variable with_gnu_ldcxx.
16823 2004-08-22 Gary V. Vaughan <gary@gnu.org>
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:
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
16887 2004-08-12 Peter O'Gorman <peter@pogma.com>
16889 * m4/libtool.m4 [GNU/linux] (AC_DEPLIBS_CHECK_METHOD): Cleanup,
16890 thanks to Daniel Reed.
16892 2004-08-11 Daniel Reed <djr@redhat.com>
16894 * tests/demo-nopic.test: Do not run on x86_64 or s390*
16896 2004-08-06 Gary V. Vaughan <gary@gnu.org>
16898 * libltdl/ltdl.c (lt_dlforeachfile): LT_SYS_LIBSEARCH_PATH is not
16899 an environment variable, it is an actual path.
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>
16905 2004-08-05 Gary V. Vaughan <gary@gnu.org>
16907 * bootstrap: Run the bootstrap rules from a file named Makefile,
16908 copied from Makefile.am for fresh checkouts.
16910 2004-08-05 Alexandre Duret-Lutz <adl@gnu.org>
16912 * m4/libtool.m4 (_LT_PROG_LTMAIN): Require ltmain.sh using
16913 using Autoconf's new AC_REQUIRE_AUX_FILE.
16915 2004-08-05 Gary V. Vaughan <gary@gnu.org>
16917 * Makefile.am ($(top_srcdir)/config/ltmain.sh): Depends on
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.
16924 * Makefile.am (libtool): Depends on ltmain.sh.
16925 (libtoolize): Set and substitute TIMESTAMP.
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 :-(
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.
16938 2004-08-04 Peter O'Gorman <peter@pogma.com>
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>.
16945 2004-08-03 Jacob Meuser <jakemsr@jakemsr.com>
16947 * ltmain.in: Allow some static libraries to be used in generating a
16948 shared library on NetBSD and OpenBSD. match-pattern_regex decides
16951 2004-08-02 Geoffrey Keating <geoffk@apple.com>
16953 * m4/libtool.m4 [darwin]: Don't use -all_load.
16955 2004-08-01 Maciej W. Rozycki <macro@linux-mips.org>
16957 * m4/libtool.m4 (LT_AC_PROG_SED): Set SED when running from cache as
16960 2004-07-31 Gary V. Vaughan <gary@gnu.org>
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:
16969 * libltdl/Makefile.am (EXTRA_DIST): Add configure.ac.
16970 (nobase_ltdldata_DATA): Change back to libltdl's own
16973 2004-07-30 Gary V. Vaughan <gary@gnu.org>
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:
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
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.
17013 2004-07-30 Peter O'Gorman <peter@pogma.com>
17015 * m4/libtool.m4, ltmain.in: readd the comments that I erased.
17017 * ltmain.in [darwin]: We already had a module var, there can be
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,
17024 2004-07-29 Gary V. Vaughan <gary@gnu.org>
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!
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
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.
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.
17048 * configure.ac (AC_INIT): Revert an accidental commit from my
17049 testing of package_revision.
17051 2004-07-29 Alexandre Duret-Lutz <adl@gnu.org>
17053 * doc/libtool.texi (Tags): Document CC.
17054 * m4/libtool.m4 (_LT_SETUP): Register CC as supported tag so that
17057 2004-07-28 Gary V. Vaughan <gary@gnu.org>
17059 Fix a long-standing bug where macro_version was always empty in
17060 the generated m4/ltversion.m4. Except for CVS revisions:
17062 * ltmain.in (package_revision): Don't try to deduce it from
17063 TIMESTAMP, since that is empty for release versions; simply
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.
17070 2004-07-28 Gary V. Vaughan <gary@gnu.org>
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:
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.
17086 2004-07-27 Gary V. Vaughan <gary@gnu.org>
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:
17094 * Makefile.am (vcl.tmp): Removed.
17095 (stamp-vcl): Adopt former vcl.tmp target rules.
17097 2004-07-25 Gary V. Vaughan <gary@gnu.org>
17099 * ltmain.in: Make sure that dependency libraries of -dlpreopened
17100 libraries are propogated properly.
17102 2004-07-23 Joe Orton <joe@manyfish.co.uk>
17104 * libtool.m4: Treat bsdi5* like bsdi4*.
17106 2004-07-22 Peter O'Gorman <peter@pogma.com>
17108 * ltmain.in [darwin](func_extract_archives): $SED not sed.
17110 * ltmain.in [darwin](func_extract_archives): Clean up last commit
17111 a little, some suggestions are from Albert Chin, those that are
17114 * libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for
17115 included files in the right places.
17117 2004-07-18 Peter O'Gorman <peter@pogma.com>
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.
17126 2004-07-18 Greg Eisenhauer <eisen@cc.gatech.edu>
17128 * libltdl/loaders/Makefile.am: Use AM_MAKEFLAGS not MAKEFLAGS.
17130 2004-07-18 Peter O'Gorman <peter@pogma.com>
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.
17136 2004-07-15 Gary V. Vaughan <gary@gnu.org>
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
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
17166 2004-07-15 Gary V. Vaughan <gary@gnu.org>
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:
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
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
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.
17203 2004-07-15 Gary V. Vaughan <gary@gnu.org>
17205 Collapse two almost identical structures into one:
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.
17213 2004-07-15 Gary V. Vaughan <gary@gnu.org>
17215 A cleaner way to access the private fields of an lt_dlhandle
17216 than my move of the module field into lt_dlinfo:
17218 * libltdl/ltdl.c (lt_caller_data, lt_dlhandle_struct): Move from
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.
17225 2004-07-15 Gary V. Vaughan <gary@gnu.org>
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!
17232 2004-07-15 Gary V. Vaughan <gary@gnu.org>
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
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
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
17281 (lt__error_strings): Make this opaque to callers.
17282 * libltdl/lt_error.c (lt__error_strings): Move the implementation
17284 * libltdl/lt_dlloader.h (lt_user_dlloader): Add extra fields to
17285 make originator focused preloading possible. *BREAKS BACKWARDS
17287 (lt_dlloader_add): Take advantage of new fields to simplify
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
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
17315 * m4/ltdl.m4 (AC_LTDL_DLLIB): Check for all possible dynamic
17316 loading libraries/apis rather that stopping when an acceptable one
17318 (LT_DLLOADERS): New variable for holding dlloaders that can be
17320 * doc/libtool.texi: Document interface changes.
17323 2004-07-12 Peter O'Gorman <peter@pogma.com>
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
17330 2004-07-07 Gary V. Vaughan <gary@gnu.org>
17332 * libltdl/ltdl.h (lt_dlinfo): Move private module field to here...
17333 * libltdl/ltdl.c (lt_dlhandle_struct): ...from here. Changed all
17335 * libltdl/loader-loadlibrary.c (sys_wll_open): Use new inteface to
17336 scan loaded handle->info.module fields for previously loaded
17338 * doc/libtool.texi (User defined module data): Document changes to
17341 Reported by Chuck Wilson <cwilson@ece.gatech.edu>
17343 2004-07-07 Brad <brad@comstyle.com>
17345 * m4/libtool.m4: Fixes for the OpenBSD support
17347 2004-06-24 Noah Misch <noah@cs.caltech.edu>
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.
17353 2004-06-21 Gary V. Vaughan <gary@gnu.org>
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.
17359 2004-06-21 Peter O'Gorman <peter@pogma.com>
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. :(
17369 2004-06-21 Gary V. Vaughan <gary@gnu.org>
17371 From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>:
17372 * libtoolize.in: Quote $# to make sh.test happy again.
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.
17381 * doc/libtool.texi (Distributing libltdl): Improved documentation
17383 (Invoking libtoolize): Document new optional --ltdl target
17384 directory argument.
17386 2004-06-17 Gary V. Vaughan <gary@gnu.org>
17388 * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Fix a typo
17389 in allow_undefined_flag: s,${Wl},${wl},g
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>
17398 2004-06-16 Brad <brad@comstyle.com>
17400 * m4/libtool.m4: More improvements to OpenBSD support.
17403 2004-06-16 Gary V. Vaughan <gary@gnu.org>
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:
17411 * libltdl/configure.ac: New file, based on configure.ac.
17412 * libltdl/Makefile.am (AC_LOCAL_AMFLAGS): Use our own m4
17414 (ltdldata_DATA): List *all* the files that libtoolize --ltdl will
17417 2004-06-16 Gary V. Vaughan <gary@gnu.org>
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:
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.
17440 2004-05-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
17445 2004-05-21 Gary V. Vaughan <gary@gnu.org>
17447 * tests/tagtrace.test: Forgot to add this file to the repository
17448 for Alexandre's 2004-05-16 patch below.
17450 2004-05-18 Peter O'Gorman <peter@pogma.com>
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.
17455 2004-05-16 Alexandre Duret-Lutz <adl@gnu.org>
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.
17466 2004-05-14 Mike Gorchak <lestat@i.com.ua>
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
17479 2004-05-05 Peter O'Gorman <peter@pogma.com>
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.
17485 2004-04-22 Gary V. Vaughan <gary@gnu.org>
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
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
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
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>
17507 2004-04-22 Gary V. Vaughan <gary@gnu.org>
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.
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
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):
17528 2004-04-19 Gary V. Vaughan <gary@gnu.org>
17530 * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Detect Intel C++ compiler
17531 version more idiomatically.
17533 2004-04-19 Albert Chin-A-Young <china@thewrittenword.com>
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.
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.
17544 * m4/libtool.m4: Use cc rather than ld to created
17545 a shared library on Tru64 UNIX.
17547 * m4/libtool.m4: Use cc rather than ld to created
17548 a shared library on IRIX.
17550 * libltdl/loader-shl_load.c: Fix typos during reorg.
17552 2004-04-19 Alexandre Duret-Lutz <adl@gnu.org>
17554 * doc/libtool.texi (LT_INIT): Properly display options in a table.
17556 2004-04-19 Gary V. Vaughan <gary@gnu.org>
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.
17562 Reported by Roberto Bagnara <bagnara@cs.unipr.it>
17564 2004-04-17 Peter O'Gorman <peter@pogma.com>
17566 * libltdl/loader-dyld.c: Fix compilation issues. Set Original author
17569 2004-04-17 Todd Vierling <tv@duh.org>,
17570 Peter O'Gorman <peter@pogma.com>
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
17576 2004-04-15 Scott James Remnant <scott@netsplit.com>
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
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.
17587 2004-04-14 Alexandre Duret-Lutz <adl@gnu.org>
17589 * bootstrap: Delete acinclude.m4.
17591 2004-04-14 Gary V. Vaughan <gary@gnu.org>
17593 * libtoolize.in (configure_ac): Don't complain about the lack of
17595 Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
17597 2004-04-13 Gary V. Vaughan <gary@gnu.org>
17599 * m4/ltdl.m4 (AC_LIB_LTDL): Remove AC_REPLACE_FUNCS for memmove
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
17608 * NEWS: Mention it.
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
17622 Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
17624 2004-04-13 Gary V. Vaughan <gary@gnu.org>
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:
17631 * libltdl/Makefile.am (libltdl_la_SOURCES): Add loader-preopen
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
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.
17655 2004-04-13 Gary V. Vaughan <gary@gnu.org>
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:
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
17671 * libltdl/lt__private.h (lt__error_strings, LT__STRERROR): ...to
17672 here as additional internal interfaces to lt_error. Changed all
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
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):
17691 * libltdl/lt_error.c, libltdl/lt_error.h (lt_dladderror)
17692 (lt_dlseterror, lt_dlerror_table): ...to here. New files.
17694 2004-04-13 Scott James Remnant <scott@netsplit.com>
17696 * Makefile.am (XDELTA_OPTIONS): Remove --pristine as that
17697 generates huge xdeltas.
17699 2004-04-08 Gary V. Vaughan <gary@gnu.org>
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
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.
17716 * libltdl/ltdl.c: Move standard headers and preprocessor guards
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
17734 2004-04-08 Gary V. Vaughan <gary@gnu.org>
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:
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
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 *
17748 * libltdl/memmove.c (memmove): ...to here, and fixed void *
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.
17759 2004-04-08 Gary V. Vaughan <gary@gnu.org>
17761 * libltdl/ltdl.h (LT_PARAMS): Removed. Changed all users to
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.
17767 2004-04-08 Fredrik Estreen <estreen@algonet.se>
17769 * m4/ltdl.m4: Rename shrext to shrext_cmds here too.
17771 2004-04-06 Gary V. Vaughan <gary@gnu.org>
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:
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
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
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.
17809 Reported by Dalibor Topic <robilad@kaffe.org>
17811 2004-04-01 Peter O'Gorman <peter@pogma.com>
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.
17816 * NEWS: Add a news item about xlc support that I forgot yesterday.
17818 2004-03-31 Peter O'Gorman <peter@pogma.com>
17820 * m4/libtool.m4, ltmain.in (darwin): Support IBM's xlc and xlc++.
17822 2004-03-31 Gary V. Vaughan <gary@gnu.org>
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.
17831 2004-03-30 Gary V. Vaughan <gary@gnu.org>
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.
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.
17843 2004-03-29 Gary V. Vaughan <gary@gnu.org>
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.
17854 * Makefile.am (pkgmacro_DATA): Install ltoptions.m4.
17856 * libltdl/Makefile.am (AM_CPPFLAGS): Also check $top_builddir for
17858 (ltdl.o): config.h is in $top_builddir.
17860 2004-03-24 Scott James Remnant <scott@netsplit.com>
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.
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.
17879 * libltdl/ltdl.c (sys_dl_open): Don't load libraries with global
17883 2004-03-24 Albert Chin-A-Young <china@thewrittenword.com>
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
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
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.
17901 * ltmain.in: Piecewise linking doesn't work when the output
17902 file is an absolute path, use the basename only instead.
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.
17912 2004-03-24 Scott James Remnant <scott@netsplit.com>
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.
17918 2004-03-22 Scott James Remnant <scott@netsplit.com>
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.
17924 2004-03-21 Scott James Remnant <scott@netsplit.com>
17926 * libltdl/Makefile.am (libltdl_la_LDFLAGS): Increment CURRENT
17927 and AGE of libltdl, warranted by the addition of lt_dlhandle_find()
17930 2004-03-21 Scott James Remnant <scott@netsplit.com>
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.
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
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.
17997 2004-03-17 Scott James Remnant <scott@netsplit.com>
17999 * m4/libtool.m4: Removed AC_BEFORE references to AC_LIBTOOL_SETUP
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.
18004 2004-03-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18006 * m4/libtool.m4: Remove newlines from lt_ld_extra, so
18007 variable can safely be stored in config.cache.
18009 2004-03-14 Michael Pruett <michael@68k.org>
18011 * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS0 [irix]: Define
18012 archive_expsym_cmds so that --export-symbols will work.
18014 2004-03-11 Peter O'Gorman <peter@pogma.com>
18016 * ltmain.in (link_all_deplibs,darwin): Link libraries in the
18017 correct order. Bug from Zachary Pincus <zpincus@stanford.edu>.
18019 2004-03-14 Scott James Remnant <scott@netsplit.com>
18021 * m4/ltmain.in: Only check precious_files_regex if it is not empty.
18023 2004-03-14 Gary V. Vaughan <gary@gnu.org>
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>
18029 2004-03-13 Gary V. Vaughan <gary@gnu.org>
18031 * doc/libtool.texi (Using Automake): Cite correct Automake version
18032 for -dlopen quoting.
18033 (Autoconf and LTLIBOBJS): Cite correct Autoconf versions
18035 (Distributing libltdl): Use AM_CPPFLAGS; INCLUDES is deprecated.
18036 From Alexandre Duret-Lutz <adl@src.lip6.fr>
18038 2004-03-05 David Edelsohn <edelsohn@gnu.org>
18040 * m4/libtool.m4: Disable building static libraries if building
18041 shared libraries on AIX 5L.
18043 2004-03-05 Gary V. Vaughan <gary@gnu.org>
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.
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.
18055 2004-03-02 Gary V. Vaughan <gary@gnu.org>
18057 * bootstrap: Prune out my arch mirror dir before running
18058 amok through the tree with 'rm -rf'!
18060 2004-03-02 Patrick Welche <prlw1@newn.cam.ac.uk>
18062 * doc/libtool.texi (LT_INIT): Dumb typos fixed.
18064 2004-02-23 Gary V. Vaughan <gary@gnu.org>
18066 * ltmain.in <install mode>: Add missing --help doc for
18067 -inst-prefix option.
18069 * ltmain.in <link mode>: Add missing --help doc for -shrext
18072 * ltmain.in (IFS): Move '\n' to beginning of IFS so that emacs
18073 doesn't offer to strip trailing ' \t' on every save.
18075 * ltmain.in: Add missing --help doc for --preserve-dup-deps.
18077 2004-02-22 Gary V. Vaughan <gary@gnu.org>
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
18084 2004-02-20 Gary V. Vaughan <gary@gnu.org>
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])':
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
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
18110 (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
18111 Removed. No longer required with LT_INIT_LIBTOOL interface.
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.
18122 2004-02-18 Gary V. Vaughan <gary@gnu.org>
18124 * commit (SHELL): Set it explicitly, incase some madman is using
18125 tcsh as their login shell :-b
18127 2004-02-15 Scott James Remnant <scott@netsplit.com>
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.
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.
18139 2004-02-15 Peter O'Gorman <peter@pogma.com>
18141 * m4/libtool.m4, ltmain.in: Rename shrext to shrext_cmds.
18143 2004-02-13 Scott James Remnant <scott@netsplit.com>
18145 * ltmain.in, libtoolize.in, commit, config/mailnotify: Correctly
18146 quote usage of $basename and $dirname to avoid (unlikely) path
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.
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
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.
18163 2004-02-13 Gary V. Vaughan <gary@gnu.org>
18165 * commit (MKSTAMP): Look for mkstamp in the right place.
18167 2004-02-12 Scott James Remnant <scott@netsplit.com>
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
18175 2004-02-12 Albert Chin-A-Young <china@thewrittenword.com>
18176 Scott James Remnant <scott@netsplit.com>
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
18183 * m4/libtool.m4: Also remove unnecessary trailing slash where
18184 we break a line on a command separator.
18186 2004-02-12 Scott James Remnant <scott@netsplit.com>
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
18193 * ltmain.in: Remove duplicated version checking block.
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.
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.
18204 * config/mailnotify (func_sendmail): Look for sendmail in a
18205 couple of common non-PATH locations as well.
18207 * ltmain.in: Fix typo: macro's -> macros.
18209 * ltmain.in: Correct definition of basename sed expression to
18210 not include single quotes.
18212 2004-02-12 Gary V. Vaughan <gary@gnu.org>
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.
18218 2004-02-12 Albert Chin-A-Young <china@thewrittenword.com>,
18219 Gary V. Vaughan <gary@gnu.org>
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.
18230 2004-02-12 Gary V. Vaughan <gary@gnu.org>
18232 * Makefile.am (EXTRA_DIST): Remove config/mailnotify after all; it
18233 is of no use in a distribution tarball.
18235 2004-02-11 Gary V. Vaughan <gary@gnu.org>
18237 * commit: Fix cut-n-paste error.
18239 * commit: Completely change CVS/Root->name sed script to actually
18240 work when :ext: is not shown.
18242 * commit: Improve CVS/Root->name sed script to work when :ext: is
18245 2004-02-11 Albert Chin-A-Young <china@thewrittenword.com>
18247 * m4/libtool.m4: Fix typo: testring -> teststring.
18249 2004-02-11 Gary V. Vaughan <gary@gnu.org>
18251 * commit: Mail a nicer commit notification.
18253 2004-02-10 Gary V. Vaughan <gary@gnu.org>
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.
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.
18265 2004-02-06 Gary V. Vaughan <gary@gnu.org>
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.
18271 * m4/ltversion.in: New file to capture what version number macros
18273 * Makefile.am (m4/ltversion.m4): New rule to create it from
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
18279 * bootstrap: Call the Makefile.am to create an initial
18281 * ltmain.in: Diagnose version mismatches of various flavours.
18282 * TODO: Remove mismatch item.
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>
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.
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.
18301 * m4/libtool.m4 (AC_PROVIDE_IFELSE): Removed. We now require
18302 Autoconf 2.58, which ships this macro anyway.
18304 * Makefile.am: Comment typo.
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.
18311 2004-02-05 Peter O'Gorman <peter@pogma.com>
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.
18317 2004-02-04 Peter O'Gorman <peter@pogma.com>
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>.
18323 2004-02-03 Scott James Remnant <scott@netsplit.com>
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.
18332 2003-02-03 Scott James Remnant <scott@netsplit.com>
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.
18339 2004-01-31 Peter O'Gorman <peter@pogma.com>
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>.
18345 2004-01-27 Scott James Remnant <scott@netsplit.com>
18347 This fixes release procedure problems discovered whilst making
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
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
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
18389 2004-01-25 Scott James Remnant <scott@netsplit.com>
18391 * NEWS: Include 1.5.2 release information.
18393 2004-01-22 Gary V. Vaughan <gary@gnu.org>
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:
18400 * libltdl/Makefile.am (libltdl_la_SOURCES, libltdlc_la_SOURCES):
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
18413 2004-01-22 Jeff Squyres <jsquyres@lam-mpi.org>
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
18423 2004-01-22 Gary V. Vaughan <gary@gnu.org>
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>
18436 2004-01-21 Nick Hudson <skrll@netbsd.org>
18438 * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [netbsd*]: Remove
18439 gratuitous ${libname}${release}${shared_ext} from
18440 library_names_spec.
18442 2004-01-21 Peter O'Gorman <peter@pogma.com>
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
18448 2004-01-18 Benjamin Reed <ranger@befunk.com>
18450 * ltmain.in: Fix handling of frameworks in search paths. Also
18451 a one-liner fix to eval shrext in the libtool library search.
18453 2004-01-16 Gary V. Vaughan <gary@gnu.org>
18455 * configure.ac (AM_INIT_AUTOMAKE): Require 1.8 for bootstrap, or
18456 else aclocal.m4 is huge, and m4 directory is not distributed.
18458 * configure.ac (AC_CONFIG_HEADERS): Create config.h in
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
18467 (ltdl.lo): Reference config.h via $(CONFIG_H).
18468 * libltdl/ltdl.c (HAVE_CONFIG_H): Ditto.
18470 2004-01-15 Scott James Remnant <scott@netsplit.com>
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.
18478 2004-01-12 Gary V. Vaughan <gary@gnu.org>
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.
18486 2004-01-13 Peter O'Gorman <peter@pogma.com>
18488 * m4/libtool.m4: Quote shrext as it is evaled in ltmain.
18490 2004-01-11 Scott James Remnant <scott@netsplit.com>
18492 * ltmain.in: new -precious-files-regex link mode option
18493 to prevent removal of matching files from the temporary
18495 (Debian Bug #221420)
18496 * doc/libtool.texi: document the new option.
18497 * NEWS: announce the new option.
18499 2004-01-11 Gary V. Vaughan <gary@gnu.org>
18501 * libtoolize.in (func_copy_all_files): s/xfunc_copy/Xfunc_copy.
18502 Now the test can actually succeed sometimes.
18504 2004-01-09 Gary V. Vaughan <gary@gnu.org>
18506 * libtoolize.in: Break out of the command argument parse loop when
18509 2004-01-08 Gary V. Vaughan <gary@gnu.org>
18511 * libtoolize.in (func_copy_all_files): s/test "x/test "X/ to keep
18512 tests/sh.test happy.
18514 2004-01-07 Gary V. Vaughan <gary@gnu.org>
18516 * Makefile.am (aclocal_macros, aclocal_DATA): Removed.
18517 (EXTRA_DIST): Remove m4 macro files; they are automatically
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.
18540 2004-01-07 Gary V. Vaughan <gary@gnu.org>
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:
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
18563 (_LT_TAGDECL): Similarly mark a tagged shell variable for export
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
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.
18588 2004-01-07 Gary V. Vaughan <gary@gnu.org>
18590 * libtoolize.in (seen_gettext): Removed unused variable.
18592 2004-01-06 Gary V. Vaughan <gary@gnu.org>
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>
18598 * NEWS: Note libtoolize changes.
18600 * ChangeLog.2003: New file, containing all the ChangeLog entries
18601 from 2003. Trimmed ChangeLog accordingly.
18603 * ltmain.in: Output 2004 in the copyright from libtool --version.
18605 2004-01-03 Stefan Nordhausen <nordhaus@informatik.hu-berlin.de>
18606 Scott James Remnant <scott@netsplit.com>
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
18613 2004-01-02 Peter O'Gorman <peter@pogma.com>
18615 * m4/libtool.m4: Ensure that ${ZSH_VERSION+set} is properly escaped.
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.
18621 2004-01-02 Scott James Remnant <scott@netsplit.com>
18623 * .cvsignore: Ignore stamp-vcl created by the Makefile.
18625 2004-01-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
18626 Joe Orton <joe@manyfish.co.uk>
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
18633 2004-01-02 Scott James Remnant <scott@netsplit.com>
18635 * NEWS: Next release will be in 2004.
18637 2003-12-31 Scott James Remnant <scott@netsplit.com>
18639 * ltmain.sh: Infer tagged configuration for link mode with the
18640 full compiler arguments available rather than only the first.
18642 2003-12-31 Alexandre Duret-Lutz <adl@gnu.org>
18644 * ltmain.sh: Quote $exec_cmd before it is eval'ed, so that
18645 libtool --mode=execute echo '4 * 5' does not expand the `*'.
18647 2003-11-28 Peter O'Gorman <peter@pogma.com>
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.
18652 2003-11-27 Gary V. Vaughan <gary@gnu.org>
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.
18665 2003-11-26 Gary V. Vaughan <gary@gnu.org>
18667 * Makefile.am (vcl.tmp): Be careful of VPATH builds.
18669 * Makefile.am (EXTRA_DIST): Add stamp-vcl, or we go back to a
18670 double configure run from a distributed tarball :-?
18672 2003-11-26 Gary V. Vaughan <gary@gnu.org>
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:
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
18687 2003-11-26 Gary V. Vaughan <gary@gnu.org>
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!
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
18700 * ltmain.in: Ditto. And tweak the generated file headers to
18703 2003-11-25 Gary V. Vaughan <gary@gnu.org>
18705 * Makefile.am (config.status): Removed. Rebuilding config.status
18706 isn't enough, because the TIMESTAMP in configure is still out
18708 (configure): We actually need a new configure to force the
18709 correct timestamp into ltmain.sh.
18711 * Makefile.am (config/ltmain.sh): Removed. Rebuilding ltmain.sh
18712 isn't enough, because the TIMESTAMP in config.status is still out
18714 (config.status): We actually need a new config.status to force the
18715 correct timestamp into ltmain.sh.
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 :-/
18721 * bootstrap: Explain automake and autoconf version dependencies
18722 truthfully, and the difference between bootstrap and user
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.
18728 2003-11-24 Gary V. Vaughan <gary@gnu.org>
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.
18734 2003-11-22 Peter O'Gorman <peter@pogma.com>
18736 * ltmain.in: Check for module_cmds if max_cmd_len is exceeded too.
18738 * ltmain.in: Move eval to after command separation to allow ~ in paths.
18740 * tests/demo-hardcode.test: Call ./libtool not libtool.
18742 * ltmain.in: Test $old_striplib before using it, not $striplib.
18744 2003-11-22 Gary V. Vaughan <gary@gnu.org>
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.
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.
18763 2003-11-19 Gary V. Vaughan <gary@gnu.org>
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>.
18769 * configure.ac (AC_PREREQ): AS_HELP_STRING was introduced after
18770 autoconf-2.57 was released.
18772 2003-11-18 Gary V. Vaughan <gary@gnu.org>
18774 * libltdl/ltdl.c (lt_dlhandle_find): New function to find a handle
18776 * libltdl/ltdl.h (lt_dlhandle_find): Declare it.
18777 * doc/libtool.texi (User defined module data): Document it.
18780 2003-11-17 Gary V. Vaughan <gary@gnu.org>
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
18788 * Makefile.am (libtool): Specify CONFIG_COMMANDS properly now that
18789 libtool is generated in one pass.
18791 * configure.ac (CONF_SUBDIRS): Make these relative to
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.
18803 2003-11-15 Scott James Remnant <scott@netsplit.com>
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
18811 2003-11-14 Gary V. Vaughan <gary@gnu.org>
18813 * NEWS: Mention AC_LIBTOOL_TAGS.
18815 * Makefile.am (EXTRA_DIST): List ChangeLog files correctly.
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.
18824 2003-11-14 Marius Vollmer <mvo@zagadka.de>
18826 * doc/libtool.texi (Libltdl interface): libltdl does in fact load
18827 dependency libs for lt_dlopen()ed modules.
18829 2003-11-14 Gary V. Vaughan <gary@gnu.org>
18831 Run our configure.ac files through Autoconf 2.59's autoupdate, and
18832 then tweak the results by hand:
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.
18849 2003-11-12 Gary V. Vaughan <gary@gnu.org>
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:
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
18872 2003-11-11 Gary V. Vaughan <gary@gnu.org>
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.
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.
18889 2003-11-10 Scott James Remnant <scott@netsplit.com>
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.
18896 2003-11-10 Scott James Remnant <scott@netsplit.com>
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.
18901 2003-11-09 Peter O'Gorman <peter@pogma.com>
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'
18907 2003-11-07 Gary V. Vaughan <gary@gnu.org>
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
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
18924 * Makefile.am (install-data-local): Wipe out old installation
18925 pkgdatadir before installing new files.
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.
18932 2003-11-07 Robert Millan <zeratul2@wanadoo.es>
18934 * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD) [GNU/KNetBSD]: Detect
18935 inter-library dependencies.
18937 2003-11-06 Gary V. Vaughan <gary@gnu.org>
18939 * m4/libtool.m4 (_LT_AC_FILE_LTDLL_C): Removed; no longer in use.
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.
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.
18967 2003-11-06 Owen Taylor <otaylor@redhat.com>
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.
18973 2003-11-06 James Henstridge <james@daa.com.au>,
18974 Scott James Remnant <scott@netsplit.com>
18976 * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [Linux]: Fix the
18977 -export-symbols and -export-symbols-regex options.
18979 2003-11-06 Scott James Remnant <scott@netsplit.com>
18981 * tests/demo-nopic.test: Skip test on hppa, which don't like
18982 non-PIC shared libraries.
18984 2003-11-06 Charles Wilson <cwilson@ece.gatech.edu>
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.
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.
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.
19005 2003-11-06 Charles Wilson <cwilson@ece.gatech.edu>,
19006 Gary V. Vaughan <gary@gnu.org>
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.
19014 2003-11-06 Gary V. Vaughan <gary@gnu.org>
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.
19023 2003-11-05 Gary V. Vaughan <gary@gnu.org>
19025 * README-alpha: Mention autotools-announce@gnu.org, and update release
19028 2003-11-01 Scott James Remnant <scott@netsplit.com>
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.
19034 2003-11-01 Peter O'Gorman <peter@pogma.com>
19036 * tests/mdemo2/Makefile.am: Let mdemo2 find ltdl.h again.
19038 2003-10-30 Peter O'Gorman <peter@pogma.com>
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.
19044 2003-10-21 Gary V. Vaughan <gary@gnu.org>
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.
19050 * configure.ac (AC_CONFIG_FILES): Make config/ltmain.sh, and copy
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'.
19075 2003-10-21 Gary V. Vaughan <gary@gnu.org>
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.
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
19088 * libltdl/configure.ac: Use quadrigraphs to escape macronames.
19090 * bootstrap (reconfdirs): Same as yesterday, only with portable
19091 bourne shell syntax. :-/
19093 2003-10-20 Gary V. Vaughan <gary@gnu.org>
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!
19099 2003-10-19 Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>
19100 Charles Wilson <cygwin@cwilson.fastmail.fm>
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.
19107 2003-10-19 Charles Wilson <cygwin@cwilson.fastmail.fm>
19109 * libtoolize.in: protect sed expression against
19110 AC_CONFIG_AUX_DIR_DEFAULT.
19112 2003-10-16 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
19119 2003-10-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
19125 2003-10-15 Albert Chin-A-Young <china@thewrittenword.com>
19127 * m4/libtool.m4: Restrict the list of tags that can be created
19128 with a new AC_LIBTOOL_TAGS([tag1 tag2 ...]) macro. Deprecate
19131 2003-10-15 Gary V. Vaughan <gary@gnu.org>
19133 * libtoolize.in: Typo when copying config.sub.
19134 From Patrick Welche <prlw1@newn.cam.ac.uk>
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):
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.
19149 * configure.ac (AC_CONFIG_TESTDIR, AC_CONFIG_TESTFILES): Comment
19150 this out for now, the autotest testsuite rewrite is not ready
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.
19159 2003-10-14 Gary V. Vaughan <gary@gnu.org>
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.
19164 * tests/Makefile.am (COMMON_TESTS): Remove pdemo-unst.test, which
19167 2003-10-14 Gary V. Vaughan <gary@gnu.org>
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
19178 * cdemo, demo, depdemo, f77demo, mdemo, mdemo2, pdemo, tagdemo:
19180 * tests/cdemo, tests/demo, tests/depdemo, tests/f77demo,
19181 tests/mdemo, tests/mdemo2, tests/pdemo, tests/tagdemo: ...to
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.
19222 2003-10-12 Peter O'Gorman <peter@pogma.com>
19224 * m4/libtool.m4: Speed up max_cmd_len check.
19226 2003-10-08 Gary V. Vaughan <gary@gnu.org>
19228 * libtoolize.in: AC_CONFIG_M4_DIR has landed in CVS autoconf.
19229 Only it's called AC_CONFIG_MACRO_DIR. Search and replace.
19232 2003-10-08 Scott James Remnant <scott@netsplit.com>
19234 * libltdl/ltdl.c (lt_dlerror): change return value when
19235 no error has occured to NULL to match documentation.
19236 (Debian Bug #157229)
19238 2003-10-07 Gary V. Vaughan <gary@gnu.org>
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.
19245 2003-10-07 Marcus Comstedt <marcus@mc.pp.se>
19247 * m4/libtool.m4 [amigaos-ppc, amigaos-m68k]: Differentiate between
19248 amigaos on ppc and m68k.
19251 2003-10-07 Ralph Schleicher <rs@nunatak.allgaeu.org>
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
19257 * doc/libtool.texi (Compile mode): Document it.
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
19266 2003-10-07 Gary V. Vaughan <gary@gnu.org>
19268 * doc/libtool.texi (Invoking libtool): Updated.
19269 * ltmain.in: Add missing clean and finish modes to the shorthand
19272 * ltmain.in: Typo in the --mode shorthand.
19274 2003-10-07 Scott James Remnant <scott@netsplit.com>
19276 * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Remove dead code
19277 for platforms that have been using pass_all for some time now.
19279 2003-10-07 Gary V. Vaughan <gary@gnu.org>
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.
19287 2003-10-05 Peter O'Gorman <peter@pogma.com>,
19288 Gary V. Vaughan <gary@gnu.org>
19290 * ltmain.in: Remove inferrence of mode, add shorthand for mode
19293 * ltmain.in: Specifying -allow-undefined is now an error.
19295 2003-09-29 Scott James Remnant <scott@netsplit.com>
19297 * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for linux*
19298 solving many build problems on ARM, and hopefully preventing any
19300 (Debian Bug #191133 and #190569)
19302 2003-09-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>,
19303 Dalibor Topic <robilad@kaffe.org>
19305 * libltdl/ltdl.c: Only include malloc.h if stdlib.h can not be
19308 2003-09-26 Alfred M. Szmidt <ams@kemisten.nu>
19310 * mdemo2/Makefile.am (INCLUDES): Include `$(top_srcdir)/../libltdl'
19311 instead of `../libltdl'.
19313 2003-09-24 Gary V. Vaughan <gary@gnu.org>
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
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
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
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
19351 2003-09-21 Robert Millan <robertmh@gnu.org>
19353 * libtool.m4: Add GNU/KNetBSD support.
19354 * ltdl.m4: Likewise.
19356 2003-09-13 Scott James Remnant <scott@netsplit.com>
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)
19363 2003-09-11 Peter O'Gorman <peter@pogma.com>
19365 * AUTHORS, THANKS: Added myself to AUTHORS, removed from THANKS.
19367 2003-09-10 Peter O'Gorman <peter@pogma.com>
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.
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.
19378 2003-09-10 Arne Woerner <woerner@mediabase-gmbh.de>
19380 * libtool.m4 [openbsd]: openbsd 3.x needs versioning information.
19382 2003-08-29 Gary V. Vaughan <gary@gnu.org>
19386 2003-08-29 Alexandre Duret-Lutz <adl@gnu.org>
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.
19393 2003-08-27 Gary V. Vaughan <gary@gnu.org>
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.
19401 2003-08-27 Gary V. Vaughan <gary@gnu.org>
19403 Work around a bug in AU_ALIAS in CVS Autoconf that inserts a
19404 newline just before AC_FD_CC, by hand updating:
19406 * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): s/AC_FD_CC/AS_MESSAGE_LOG_FD/g.
19408 2003-08-05 Jim Pick <jim@kaffe.org>,
19409 Ito Kazumitsu <kaz@maczuka.gcd.org>,
19410 Gary V. Vaughan <gary@gnu.org>
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:
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.
19426 2003-08-01 Peter O'Gorman <peter@pogma.com>
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.
19435 2003-08-01 Robert Boehne <rboehne@gnu.org>
19437 * libltdl/ltdl.h: Tweak the header to support visual studio.
19439 2003-07-31 Greg Eisenhauer <eisen@cc.gatech.edu>
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
19449 * mdemo/Makefile.am: Build libmlib.la for mdemo2 tests.
19451 2003-07-30 Tony Wyatt <wyattaw@optushome.com.au>
19453 * libtool.m4: Remove parentheses around finish_eval part which
19454 broke on amigaos pdksh.
19456 2003-07-30 Christiaan Welvaart <cjw@daneel.dyndns.org>
19458 * tests/dryrun.test: Ignore any 'total' line from "ls -l" output.
19460 2003-07-30 Albert Chin-A-Young <china@thewrittenword.com>
19462 * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Correctly remove IRIX C++
19465 2003-07-24 Robert Millan <robertmh@gnu.org>
19467 * libtool.m4: More fixes for the new GNU/FreeBSD triplet.
19469 2003-07-14 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
19471 * config.guess, config.sub: Synchronized from ftp.gnu.org since
19472 Robert Millan's patch requires it.
19474 2003-07-14 Robert Millan <zeratul2@wanadoo.es>
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.
19480 2003-07-14 Andreas Schwab <schwab@suse.de>
19482 * libtool.m4 (_LT_AC_LOCK): Also match powerpc64-*linux* in
19483 addition to ppc64-*linux*. From Markus Meissner
19484 <meissner@bogus.example.com>.
19486 2003-07-14 Dalibor Topic <robilad@yahoo.com>
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.
19492 2003-06-25 Alexandre Oliva <aoliva@redhat.com>, Tim Waugh <twaugh@redhat.com>
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++
19499 2003-06-11 Gary V. Vaughan <gary@gnu.org>
19501 * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION): Require LT_AC_PROG_SED to
19502 ensure $SED is set by the time it is used.
19504 * ChangeLog: Restore missing entries from 2003-04-22.
19506 * NEWS: Sychronised from branch-1-5.
19508 2003-06-03 Benjamin Reed <ranger@befunk.com>
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.
19513 2003-06-03 Robert Millan <rmh@debian.org>
19515 * ltdl.m4: Add support for GNU/FreeBSD.
19516 * ltmain.in: Add support for GNU/FreeBSD.
19518 2003-06-03 Albert Chin-A-Young <china@thewrittenword.com>
19520 * libtool.m4: No need to use sed to remove leading comma when
19521 appending to $tagnames.
19523 2003-06-03 Albert Chin-A-Young <china@thewrittenword.com>
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).
19534 2003-06-03 Peter O'Gorman <peter@pogma.com>
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.
19541 2003-06-03 Max Bowsher <maxb@ukf.net>
19543 * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Reorder cygwin's
19544 system library search path.
19546 2003-06-01 Robert Boehne <rboehne@gnu.org>
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.
19552 2003-05-30 Gary V. Vaughan <gary@gnu.org>
19554 * libltdl/ltdl.c (argz_insert): Corrected an off by one error when
19555 checking that before is not out of range.
19557 2003-05-29 Gary V. Vaughan <gary@gnu.org>
19559 * libltdl/ltdl.c (lt_int_dyld_lib_install_name): Removed unused
19561 (sys_dyld_close): Removed unused variable size.
19563 2003-05-21 Bruno Haible <bruno@clisp.org>
19565 * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Add support for
19568 2003-04-22 Alexandre Oliva <aoliva@redhat.com>
19570 * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
19571 mips*-linux* variants.
19573 2003-04-22 Samuel Meder <meder@mcs.anl.gov>
19575 * libtool.m4 Switch on $CC and add paterns to cases.
19577 2003-04-22 Peter O'Gorman <peter@pogma.com>
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.
19585 2003-04-22 Samuel Meder <meder@mcs.anl.gov>
19587 * libtool.m4: Switch on $CC and add patterns to cases.
19589 2003-04-21 Richard Dawe <rich@phekda.freeserve.co.uk>
19591 * doc/libtool.texi: Use @ifnottex instead of @ifinfo,
19592 to allow production of HTML documentation using makeinfo.
19594 2003-04-14 Robert Boehne <rboehne@gnu.org>
19597 * configure.ac: Bumped version to 1.5a.
19599 GNU libtool 1.5 was released.
19601 * configure.ac: Bumped version to 1.5.
19603 * README-alpha: Updated upload instructions.
19604 * README: Changed typo in version description.
19605 * config.guess, config.sub, texinfo.tex: Synchronized from
19609 2003-04-10 Alexandre Oliva <aoliva@redhat.com>
19611 * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
19612 mips*-linux* variants.
19614 2003-04-09 Samuel Meder <meder@mcs.anl.gov>
19616 * libtool.m4 Switch on $CC and add paterns to cases.
19618 2003-04-09 Peter O'Gorman <peter@pogma.com>
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.
19626 2003-04-09 Samuel Meder <meder@mcs.anl.gov>
19628 * libtool.m4 Switch on `basename $CC` not $CC
19630 2003-04-05 Peter O'Gorman <peter@pogma.com>
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.
19636 2003-04-05 Allan Sandfeld Jensen <snowwolf@one2one-networks.com>
19638 * libtool.m4: Switch on $CC not $cc_basename.
19640 2003-04-02 Robert Boehne <rboehne@gnu.org>
19642 * tests/defs: Quote $DJGPP to prevent problems with some shells.
19643 Pointed out by Albert Chin <libtool@thewrittenword.com>
19645 2003-04-01 Peter O'Gorman <peter@pogma.com>
19647 * libtool.m4: Fix the echo test which I broke earlier.
19648 * ltmain.in: Make DESTDIR work on darwin, don't use otool.
19650 2003-03-31 Keith Packard <keithp@keithp.com>
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.
19656 2003-03-31 Naofumi Yasufuku <naofumi@yasufuku.net>
19658 * ltmain.in (win32_libid): Fixed sed expression error in
19659 win32_nmres evaluation.
19661 2003-03-31 Albert Chin <libtool@thewrittenword.com>
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>.
19667 2003-03-28 Richard Dawe <rich@phekda.freeserve.co.uk>
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.
19693 2003-03-28 Peter O'Gorman <peter@pogma.com>
19695 * libltdl/ltdl.c (dyld): Remove some debug printf's, fix a bug.
19696 * ltmain.in (darwin): Only link against shared libraries when doing
19699 2003-03-25 Robert Boehne <rboehne@gnu.org>
19701 * bootstrap: Add f77demo to the directories that AUTOHEADER
19704 2003-03-21 Wesley W. Terpstra <terpstra@ito.tu-darmstadt.de>
19706 * ltmain.in: Don't accumulate directory information in clean mode.
19707 Include properly pathed wrapper script.
19709 2003-03-21 Peter O'Gorman <peter@pogma.com>
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.
19720 2003-03-20 Peter O'Gorman <peter@pogma.com>
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
19736 * THANKS: added self :)
19737 * f77demo/configure.ac: Use config.h or it doesn't work.
19739 2003-03-19 Robert Boehne <rboehne@gnu.org>
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
19744 * configure.ac: Set F77 to no when no Fortran compiler is found.
19746 2003-03-16 Charles Wilson <cwilson@ece.gatech.edu>
19748 * ltmain.in (win32_libid): use $SED, not head.
19750 2003-03-02 Alexandre Oliva <aoliva@redhat.com>
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
19757 2003-02-28 Ralph Schleicher <rs@nunatak.allgaeu.org>
19759 * ltmain.in: Only append a dot to the wrapper script when
19760 building on cygwin/MSYS (check for $build, not $host).
19762 2003-02-27 Samuel Meder <meder@mcs.anl.gov>
19764 * libtool.m4 (ia64): Add support for Intel compiler (ecc) on IA64
19767 2003-02-27 Benjamin Reed <ranger@befunk.com>
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.
19773 2003-02-25 Bob McElrath <bob+libtool@mcelrath.org>
19775 * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Add support for
19776 the Compaq C compiler for Alpha Linux.
19778 2003-02-25 Benjamin Reed <ranger@befunk.com>
19780 * libtool.m4 (darwin): Disable hardcoding library paths to
19781 make relinking unnecessary.
19783 2003-02-24 Robert Boehne <rboehne@gnu.org>
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.
19792 2003-02-24 Ralph Schleicher <rs@nunatak.allgaeu.org>
19794 * libtool.m4 (AC_LIBTOOL_SETUP): Check for ar.
19796 2003-02-23 Peter O'Gorman <peter@pogma.com>
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
19803 2003-02-23 Alexandre Duret-Lutz <adl@gnu.org>
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.
19810 2003-02-19 Alexandre Oliva <aoliva@redhat.com>
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
19817 * libtool.m4: Replace $linker_flags with $compiler_flags wherever
19818 it is used as argument to $CC.
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.
19825 2003-02-17 Allan Sandfeld Jensen <snowwolf@one2one-networks.com>
19827 * libtool.m4: Intel icc fixups for version 7.0.
19829 2003-02-17 Ralph Schleicher <rs@nunatak.allgaeu.org>
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
19838 * doc/libtool.texi (Link mode): Update the manual.
19840 2003-02-17 Charles Wilson <cwilson@ece.gatech.edu>
19842 * ltmain.in (win32_libid): Rewritten to improve speed.
19844 2003-02-11 Richard Dawe <rich@phekda.freeserve.co.uk>
19846 * libtoolize.in: Use the program found by AC_PROG_LN_S
19847 to create symlinks.
19849 2003-02-08 Jan Kratochvil <project-libtool@jankratochvil.net>
19851 * ltmain.in: Handle duplicate object file names when performing
19852 piecewise archive linking by renaming object files when needed.
19854 2003-02-05 Robert Boehne <rboehne@gnu.org>
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.
19861 2003-02-05 Christian Cornelssen <ccorn@cs.tu-berlin.de>
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.
19868 2003-02-05 Robert Boehne <rboehne@gnu.org>
19870 * libtool.m4: Modify the sys_lib_search_path_spec to allow
19871 for either native sed or GNU sed to be used.
19873 2003-02-04 Nick Hudson <skrll@netbsd.org>
19875 * libtool.m4: don't use -nodefaultlibs in archive_commands
19876 or archive_expsym_commands on NetBSD.
19878 2003-02-04 Albert Chin-A-Young <china@thewrittenword.com>
19880 * libtool.m4: Change setting of archive_cmds_need_lc
19881 so that it doesn't overwrite the previous setting.
19883 2003-01-28 Albert Chin-A-Young <china@thewrittenword.com>
19885 * libtool.m4: Allow compiler variable, CC, CXX, etc. to
19886 be a program name with arguments. Original version stripped
19889 2003-01-28 Charles Wilson <cwilson@ece.gatech.edu>
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.
19898 2003-01-28 Albert Chin-A-Young <china@thewrittenword.com>
19900 * libtool.m4: Hardcode library paths into libraries on IRIX.
19902 2003-01-18 Robert Boehne <rboehne@gnu.org>
19904 * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Don't add -DPIC
19905 for languages other than C and C++.
19907 2003-01-13 Albert Chin-A-Young <china@thewrittenword.com>
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
19917 2003-01-12 Robert Boehne <rboehne@gnu.org>
19919 * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Revert an
19920 accidental rearranging of dylib and so for darwin.
19922 2003-01-10 Robert Boehne <rboehne@gnu.org>
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.
19932 2002-12-31 Benjamin Reed <ranger@befunk.com>
19934 * ltmain.in [darwin]: disable lazy linking, needed
19935 to resolve C++ global constructor issues
19937 2002-12-30 Ralph Schleicher <rs@nunatak.allgaeu.org>
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.
19947 2002-12-30 Charles Wilson <cwilson@ece.gatech.edu>
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.
19958 2002-12-30 Charles Wilson <cwilson@ece.gatech.edu>
19960 * libtool.m4 (AC_LIBTOOL_RC): AC_PROG_RC doesn't exist --
19961 but we do AC_DEFUN something called LT_AC_PROG_RC.
19964 2002-12-30 Robert Boehne <rboehne@gnu.org>
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.
19970 2002-12-30 Albert Chin-A-Young <china@thewrittenword.com>
19972 * libtool.m4: Sync methods used to detect GNU ld.
19974 2002-12-20 Robert Boehne <rboehne@gnu.org>
19976 * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
19977 AC_LIBTOOL_PROG_CC_C_O): Do not escape } or ? in sed argument.
19979 2002-12-19 Robert Boehne <rboehne@gnu.org>
19981 * ltmain.in: Use the sed program found by LT_AC_PROG_SED
19982 so that relink commands don't get truncated.
19984 2002-12-18 Robert Boehne <rboehne@gnu.org>
19986 * libtool.m4: Move AC_REQUIRE([LT_AC_PROG_SED]) to AC_PROG_LD
19987 so it is invoked earlier.
19989 2002-12-11 Allan Sandfeld Jensen <snowwolf@one2one-networks.com>
19991 * libtool.m4: Add support for Intel icc compiler for Linux.
19993 2002-12-11 Robert Boehne <rboehne@gnu.org>
19995 * ltmain.in: Revert the version +1 change for IRIX, it could
19996 cause compatibility problems.
19998 2002-11-22 Christian Cornelssen <ccorn@cs.tu-berlin.de>
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.
20016 2002-11-19 Paul Eggert <eggert@twinsun.com>
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.
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.
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.
20051 * demo/Makefile.am (SET_HARDCODE_FLAGS): Use sed instead of egrep.
20052 * pdemo/Makefile.am (SET_HARDCODE_FLAGS): Likewise.
20054 * tests/defs (EGREP, FGREP): New vars.
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:
20061 * tests/hardcode.test: fgrep -> $FGREP
20063 * tests/f77demo-exec.test: test -a -> test &&
20065 2002-11-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
20075 2002-11-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
20082 2002-11-18 Jakub Jelinek <jakub@redhat.com>
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
20089 2002-11-18 Andreas Jaeger <aj@suse.de>, Bo Thorsen <bo@suse.de>
20091 * libtool.m4: Support linking of 32-bit libraries with ld
20092 on the x86-64, ppc64, s390x and sparc64 GNU/Linux systems.
20094 2002-11-18 Akim Demaille <akim@epita.fr>
20096 * ltmain.in: Do not change the PATH in the wrappers: let them
20097 launch the real binary using its path.
20099 2002-11-18 Kevin Ryde <user42@zip.com.au>
20101 * doc/libtool.texi (Library tips): Note array dimensions.
20103 2002-11-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
20111 2002-11-18 Charles Wilson <cwilson@ece.gatech.edu>
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
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
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
20153 * ltmain.in (for pass in $passes loop): remove predeps,
20154 postdeps, and compiler_lib_search_path from dependency_libs.
20156 2002-11-08 Robert Boehne <rboehne@gnu.org>
20158 * doc/libtool.texi: Add --mode=* to every example using libtool.
20160 2002-11-03 Ossama Othman <ossama@doc.ece.uci.edu>
20162 * ltmain.in: add support for installing into temporary
20163 staging area (e.g. 'make install DESTDIR=...')
20165 2002-11-03 Charles Wilson <cwilson@ece.gatech.edu>
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.
20172 2002-11-03 Charles Wilson <cwilson@ece.gatech.edu>
20174 * doc/libtool.texi (Install mode): document new
20175 -inst-prefix option.
20177 2002-11-02 Robert Boehne <rboehne@gnu.org>
20179 * ltmain.in: Print a warning if the mode is not specified.
20180 * doc/libtool.texi: Document the change that the mode must be
20183 2002-10-30 Charles Wilson <cwilson@ece.gatech.edu>
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
20192 2002-10-30 Rob Browning <rlb@defaultvalue.org>
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
20208 2002-10-25 Robert Boehne <rboehne@gnu.org>
20210 * ltmain.in (-XCClinker): New flag passes a linking option
20211 directly to the compiler driver without appending ${wl}.
20213 2002-10-25 Gary V. Vaughan <gary@gnu.org>
20215 * README-alpha: Add some release note templates for inspiration
20216 and consistency at release time.
20218 * Makefile.am (cvs-diff): Compress the generated diff file, ready
20219 for upload to ftp.gnu.org.
20221 2002-10-25 Howard Chu <hyc@highlandsun.com>
20223 * ltmain.in [aix]: Be sure to deal with xlc_r, cc_r and other
20226 2002-10-25 Gary V. Vaughan <gary@gnu.org>
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.
20233 2002-10-25 Albert Chin-A-Young <china@thewrittenword.com>
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
20240 * ltmain.in: Recognize the IBM xlc compiler.
20242 2002-10-24 Andrew Suffield <asuffield@debian.org>
20244 * libltdl/ltdl.c (lt_dlopenext): Corrected sense of "file not
20247 2002-10-24 Ossama Othman <ossama@doc.ece.uci.edu>
20249 * ltmain.in: Support compiler names matching g++*
20251 2002-10-23 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
20253 * libtool.m4: Removed old Windows cruft.
20254 * libtool.m4: Adapted pw32 to be like Cygwin/MinGW.
20256 2002-10-23 Robert Boehne <rboehne@gnu.org>
20258 ltmain.in: Do not add 1 to the version under IRIX, it is
20261 2002-10-15 Charles Wilson <cwilson@ece.gatech.edu>
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
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
20275 2002-10-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
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.
20282 2002-10-15 Elizabeth Barham <soggytrousers@yahoo.com>
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
20289 2002-10-15 Albert Chin-A-Young <china@thewrittenword.com>
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.
20295 2002-10-11 Christoph Egger <Christoph_Egger@gmx.de>
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++
20302 2002-10-04 Elizabeth Barham <soggytrousers@yahoo.com>
20304 * libtool.m4 (AC_LIBTOOL_SETUP): GCC now checks -shared to
20305 create a dll for Windows targets.
20307 2002-09-24 Robert Boehne <rboehne@gnu.org>
20309 * ltmain.in: Fixed a few spelling errors.
20311 2002-09-17 Robert Boehne <rboehne@gnu.org>
20313 * libltdl/ltdl.c: Commented out access() call that checks for a
20314 library file's existence and permissions, as it appears to fail
20317 2002-09-09 Albert Chin-A-Young <china@thewrittenword.com>
20319 * libtool.m4: Custom $symcode for Tru64 UNIX to catch 'Q',
20320 read-only constants.
20322 2002-09-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.de>
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.
20328 2002-08-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
20330 * ltdl.m4 & libltdl/ltdl.c: Port fully to native Win32 API.
20332 2002-07-31 Robert Boehne <rboehne@gnu.org>
20334 * f77demo/.cvsignore: New file, forgotten in the last commit.
20336 2002-07-31 Eric Lindahl <erik@theophys.kth.se>
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.
20352 2002-07-16 Gary V. Vaughan <gary@gnu.org>
20354 * libltdl/ltdl.c (tryall_dlopen): We need to catch missing file
20355 errors early so that file_not_found() can detect what happened.
20357 2002-06-26 Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
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
20366 2002-06-24 Robert Boehne <rboehne@gnu.org>
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.
20372 2002-06-23 Albert Chin-A-Young <china@thewrittenword.com>
20374 * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Need to quote [ and ] for
20377 * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): HP/UX needs
20378 libltdl_cv_sys_dlopen_deplibs set to yes.
20380 2002-06-23 Kevin Ryde <user42@zip.com.au>
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.
20386 2002-06-23 Gary V. Vaughan <gary@gnu.org>
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
20391 Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
20392 and Albert Chin-A-Young <china@thewrittenword.com>
20394 2002-06-21 Gary V. Vaughan <gary@gnu.org>
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>
20400 2002-06-20 Gary V. Vaughan <gary@gnu.org>
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.
20407 2002-06-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
20409 * ltmain.in (irix, nonstopux): Set major before use.
20411 2002-06-11 Daniel Kobras <kobras@linux.de>
20413 * libltdl/ltdl.c (try_dlopen): Don't return bogus handle to user
20414 if tryall_dlopen() fails.
20416 2002-06-01 Gary V. Vaughan <gary@gnu.org>
20418 * tests/pdemo-exec.test: Typo. s/hell-static/hell_static/
20420 2002-05-31 Charles Wilson <cwilson@ece.gatech.edu>
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
20446 * tests/pdemo-exec.test: ditto.
20448 2002-05-30 Charles Wilson <cwilson@ece.gatech.edu>
20450 * tests/build-relink2.test: look for installed libl3.la
20451 in $prefix/lib/ as well as $prefix/lib/extra/.
20453 2002-05-30 Gary V. Vaughan <gary@gnu.org>
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.
20459 2002-05-30 Gary V. Vaughan <gary@gnu.org>
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.
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
20470 (_LT_AC_PROG_ECHO_BACKSLASH): ...which now calls the macro
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.
20477 2002-05-21 Jon Meredith <jonm@alchemetrics.co.uk>
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.
20486 2002-05-09 Nick Hudson <skrll@netbsd.org>
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.
20496 2002-05-06 Paul Eggert <eggert@twinsun.com>
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.
20502 2002-05-06 Paul Eggert <eggert@twinsun.com>
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.
20509 2002-05-06 Loren James Rittle <rittle@latour.rsch.comm.mot.com>
20511 * ltmain.in: Detect and handle object name conflicts while
20512 piecewise linking a static library.
20514 2002-05-02 Dave Vasilevsky <thevas@mac.com>
20516 * ltmain.in: Remove convenience libraries from deplibs for Darwin.
20518 2002-05-02 Fritz Elfert <felfert@to.com>
20520 * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Modify archive_expsym_cmds
20521 to catch properly handle dll alias symbols.
20523 2002-04-24 Kevin Ryde <user42@zip.com.au>
20525 * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use $build_os not $host_os.
20527 2002-04-14 Robert Boehne <rboehne@gnu.org>
20529 * doc/libtool.texi (C++ libraries): Finally updated to reflect
20530 Libtool's support for C++.
20532 2002-04-14 Jean-Frederic Clere <jfrederic.clere@fujitsu-siemens.com>
20534 * libtool.m4: Update support for Fujistu-Siemens Computers (FSC).
20535 * ltmain.in: Add support for EBCDIC based systems.
20537 2002-04-07 Robert Boehne <rboehne@gnu.org>
20539 * libtool.m4 (LT_AC_PROG_SED): Refactor, removing temporary directory
20540 and consistent use of the shell variable namespace "lt_ac_".
20542 2002-04-02 Robert Boehne <rboehne@gnu.org>
20544 * ltmain.in: Finish the tag matching logic started yesterday and
20547 2002-04-01 Robert Boehne <rboehne@gnu.org>
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.
20553 2002-04-01 Robert Boehne <rboehne@gnu.org>
20555 * tagdemo/foo.cpp: Use C++ IO to catch problems linking to C++
20557 * tagdemo/main.cpp: Ditto.
20559 2002-03-16 Gary V. Vaughan <gary@gnu.org>
20561 * TODO: Removed obsolete comments about RMS' package system.
20563 2002-03-14 Robert Boehne <rboehne@gnu.org>
20565 ltmain.in: Touch-up to make testsuite pass, and default tagname
20566 to CC when it isn't explicitly set.
20568 2002-03-14 Anthony Green <green@redhat.com>
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.
20574 2002-03-11 Bruce Korb <bkorb@gnu.org>
20576 * ltmain.in(compile): bring a touch of order to the option processing
20578 2002-02-09 Gary V. Vaughan <gary@gnu.org>
20581 * THANKS: Added Rob Collins and Chuck Wilson for their cygwin
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
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
20617 * tests/noinst-link.test: Allow for .exe suffix.
20619 2002-02-07 Alexandre Oliva <aoliva@redhat.com>
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
20625 * libtool.m4 (lt_cv_deplibs_check_method): Always use
20626 file_magic for Linux ELF.
20628 2002-01-30 Robert Boehne <rboehne@ricardo-us.com>
20630 * libtool.m4 (LT_AC_PROG_SED): Removed a mysterious newline.
20632 2002-01-28 Robert Boehne <rboehne@ricardo-us.com>
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.
20639 2002-01-10 Volker Christian <voc@soft.uni-linz.ac.at>
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.
20645 2002-01-07 Robert Boehne <rboehne@ricardo-us.com>
20647 * NEWS: Fixed wrong path for texinfo.tex.
20648 * configure.ac: Bumped version to 1.4e.
20650 GNU libtool 1.4d was released.
20652 * configure.ac: Bumped version to 1.4d.
20654 * config.guess, config.sub, texinfo.tex: Synchronised from
20657 2001-12-06 Jens Petersen <petersen@redhat.com>
20659 * ltmain.in: Replace all test "-a"s by "&& test"
20662 2001-11-28 Robert Boehne <rboehne@ricardo-us.com>
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.
20667 2001-11-28 Gary V. Vaughan <gary@gnu.org>
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>
20673 2001-11-27 Donald D. Anderson <dda@sleepycat.com>
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.
20679 2001-11-27 Robert Boehne <rboehne@ricardo-us.com>
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.
20687 2001-11-27 Kevin Ryde <user42@zip.com.au>
20689 * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Send "test"
20690 warnings to /dev/null, helps FreeBSD and maybe others.
20692 2001-11-15 Albert Chin-A-Young <china@thewrittenword.com>
20694 * libtool.m4: quote LTCC because autoconf AC_PROG_CC_STDC
20695 macro might add to $CC if options needed by compiler to
20698 2001-11-15 Gary V. Vaughan <gary@gnu.org>
20700 From Joseph S. Myers <jsm28@cam.ac.uk>:
20703 2001-11-15 Mo DeJong <supermo@bayarea.net>
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.
20710 2001-10-31 Raja R Harinath <harinath@cs.umn.edu>
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>
20716 2001-10-28 Gary V. Vaughan <gary@gnu.org>
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.
20723 2001-10-28 Albert Chin-A-Young <china@thewrittenword.com>
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
20729 Based on lint run from Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
20731 2001-10-27 Gary V. Vaughan <gary@gnu.org>
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>
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.
20741 2001-10-24 Kevin Ryde <user42@zip.com.au>
20743 * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Remove a stray ' quote.
20745 2001-10-24 H.J. Lu <hjl@gnu.org>
20747 * ltmain.sh: Allow link against an archive when building a
20749 * libtool.m4 (lt_cv_deplibs_check_method): Always use
20750 file_magic for Linux ELF.
20752 2001-10-12 Guido Draheim <guidod-2001q3@gmx.de>
20754 * ltdl.m4: Changed "underscode to underscore".
20756 2001-10-06 Gary V. Vaughan <gary@gnu.org>
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.
20768 2001-10-04 Albert Chin-A-Young <china@thewrittenword.com>
20770 * libltdl/ltdl.c: Match function return type with prototype
20771 (add static initializer to file_not_found).
20773 2001-09-30 Gary V. Vaughan <gary@gnu.org>
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.
20781 2001-09-22 Albert Chin-A-Young <china@thewrittenword.com>
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.
20789 2001-09-22 Gary V. Vaughan <gary@gnu.org>
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>
20796 2001-09-22 Tor Lillqvist <tml@iki.fi>
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
20807 * configure.ac: Use LT_AC_PROG_RC.
20808 * ltmain.in: Check for .rc files.
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.
20815 2001-09-22 Albert Chin-A-Young <china@thewrittenword.com>
20817 * libtool.m4: When setting archive_cmds for CC, don't
20818 test for $GXX but for $GCC on HP-UX. Indentation fixes.
20820 2001-09-21 Gary V. Vaughan <gary@gnu.org>
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.
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
20829 Reported by Christopher Pfisterer <cp@chrisp.de>
20831 2001-09-21 Albert Chin-A-Young <china@thewrittenword.com>
20833 * libltdl/ltdl.c: Match function return type with prototype
20834 (add static initializer to some functions) to prevent warnings
20837 2001-09-21 Gary V. Vaughan <gary@gnu.org>
20839 * libltdl/ltdl.c: Added support for dmalloc, and uncovered some
20840 memory bugs as a result.
20842 2001-09-21 Albert Chin <china@thewrittenword.com>
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).
20848 * libtool.m4: Some uses of $GXX were unquoted, but GXX is either
20849 NULL or yes. Use "$GXX".
20851 2001-09-13 Assar Westerlund <assar@sics.se>
20853 * ltdl.m4 (AC_LTDL_DLLIB): call dlopen with arguments so the test
20854 does not fail due to a prototype in dlfcn.h
20856 2001-09-13 Gary V. Vaughan <gary@gnu.org>
20858 * ltdl.m4 (AC_CHECK_HEADERS): Check for assert.h.
20859 * libltdl/ltdl.c: If not, disable assertions manually.
20861 2001-09-11 Gary V. Vaughan <gary@gnu.org>
20863 * bootstrap: Be robust to having no files that need removing.
20865 * libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump libltdl version to
20867 * libltdl/Makefile.am (libltdl_la_LDFLAGS): Bump libtool library
20868 version info to 4:0:1.
20870 2001-09-11 Gary V. Vaughan <gary@gnu.org>
20872 * libtool.m4: No need to undefine([symbols]), proper quotation is
20875 2001-09-10 Gary V. Vaughan <gary@gnu.org>
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>
20886 2001-09-10 Brad <brad@comstyle.com>
20888 * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Missed an instance of
20889 Autoconf square bracket quoting style normalisation.
20891 * ltmain.in (-lc_r): Style improvement.
20893 * doc/libtool.texi: Remove obsolete references to ltconfig.
20894 * tests/quote.test: s/ltconfig/\$0/
20896 2001-09-09 Gary V. Vaughan <gary@gnu.org>
20898 * libtool.m4: Use Autoconf square bracket quoting style
20899 consistently throughout.
20901 2001-09-08 Gary V. Vaughan <gary@gnu.org>
20903 * bootstrap: Cleanup `autom4te' and `libtool' so that we don't
20904 get caught by something from a previous build.
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.
20910 2001-09-07 Gary V. Vaughan <gary@gnu.org>
20912 * libltdl/ltdl.c (foreach_dirinpath): argz_len should be a size_t.
20913 Reported by Albert Chin <china@thewrittenword.com>
20915 2001-09-06 Gary V. Vaughan <gary@gnu.org>
20917 * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [solaris*]: Typo. s/GXX/GCC/.
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!
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.
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.
20938 2001-09-05 Robert Boehne <rboehne@ricardo-us.com>
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!
20944 2001-09-03 Gary V. Vaughan <gary@gnu.org>
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!
20950 2001-09-03 Brad <brad@comstyle.com>
20952 * ltdl.m4 [AC_LTDL_SYS_DLOPEN_DEPLIBS]: Teach ltdl about the
20953 behavior of OpenBSD's dlopen().
20955 2001-09-03 Gary V. Vaughan <gary@gnu.org>
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.
20961 2001-09-03 Brad <brad@comstyle.com>
20963 * libtool.m4 [openbsd*]: More improvements to the OpenBSD port.
20965 2001-09-02 Gary V. Vaughan <gary@gnu.org>
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
20973 2001-09-02 Christopher Pfisterer <cp@chrisp.de>
20975 * libtool.m4, ltmain.in: Linker flag and version numbering fixes
20978 2001-09-02 Gary V. Vaughan <gary@gnu.org>
20980 Based on a patch from Marius Vollmer <mvo@zagadka.ping.de>:
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
20991 (find_handle): Don't bother searching for files if no search_path
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.
21005 * demo/Makefile.am (helldl$(EXEEXT)): Automake-1.5 made me change
21006 this from just `helldl'.
21008 2001-07-31 Robert Boehne <rboehne@ricardo-us.com>
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.
21014 2001-08-19 Ossama Othman <ossama@uci.edu>
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.
21021 * doc/libtool.texi (LTDL_SET_PRELOADED_SYMBOLS): Removed
21022 parentheses at end of starting "defmac" line, as pointed out by
21025 2001-08-18 Brad <brad@comstyle.com>
21027 * ltmain.in: Do not remove -lm from deplibs for OpenBSD.
21029 2001-08-16 Gary V. Vaughan <gary@gnu.org>
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.
21037 2001-08-15 Gary V. Vaughan <gary@gnu.org>
21039 * libltdl/ltdl.c (lt_dlhandle_next): Now we can loop through all
21040 loaded module handles as originally intended.
21042 * libltdl/ltdl.c (lt_dlseterror): Oops. This never worked
21043 either, due to a pair of typos. Now fixed.
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.
21052 2001-08-14 Gary V. Vaughan <gary@gnu.org>
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.
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
21063 2001-08-13 Gary V. Vaughan <gary@gnu.org>
21065 * libltdl/ltdl.c (find_file_callback): Fix a multiple free()
21067 (tryall_dlopen_module): Remove some unused variables.
21069 * libltdl/ltdl.c (lt_dlinsertsearchdir): Calculate the address
21070 of the end of user_search_path correctly.
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
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.
21086 2001-08-07 Gary V. Vaughan <gary@gnu.org>
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
21093 2001-08-06 Gary V. Vaughan <gary@gnu.org>
21095 From Brad <brad@comstyle.com>:
21096 * libtool.m4 (deplibs_check_method) [aix*]: Removed redundant setting
21099 2001-08-05 Gary V. Vaughan <gary@gnu.org>
21101 * libltdl/ltdl.c (load_deplibs): Insert missing 1st argument to
21104 2001-08-05 Tim Van Holder <tim.van.holder@pandora.be>
21106 * ltdl.m4: Canonicalize descriptive text used with
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.
21123 2001-08-05 Gary V. Vaughan <gary@gnu.org>
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.
21131 2001-08-05 Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21133 * libtool.m4 [osf3*, osf4*, osf5*]: Tru64 *can* build modules
21134 without a `lib' prefix to the module name.
21136 2001-08-05 Gary V. Vuaghan <gary@gnu.org>
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.
21142 2001-08-05 Albert Chin-A-Young <china@thewrittenword.com>
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.
21148 2001-08-05 Gary V. Vaughan <gary@gnu.org>
21150 From Brad <brad@comstyle.com>:
21151 * libtool.m4 (archive_cmds) [darwin, newsos, sysv4]: Replace
21152 1.3 era $linkopts references with $linker_flags.
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.
21158 2001-08-04 Gary V. Vaughan <gary@gnu.org>
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.
21164 From Edouard G. Parmelan <egp@free.fr>
21165 * libtool.m4 [darwin, openbsd]: Fix quoting problems with
21166 unquoted [] expressions.
21168 2001-08-03 Gary V. Vaughan <gary@gnu.org>
21170 * bootstrap: s/ltdldemo // -- This demo soesn't work properly,
21171 so I haven't committed it yet.
21173 2001-08-01 Ossama Othman <ossama@doc.ece.uci.edu>
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.
21179 2001-08-01 Gary V. Vaughan <gary@gnu.org>
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
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
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.
21207 2001-07-31 Robert Boehne <rboehne@ricardo-us.com>
21209 * libtool.m4 (mingw*) Revert the previous change as it was
21210 applied by mistake.
21212 2001-07-31 Guido Draheim <Guido.Draheim@tek.com>
21214 * libtool.m4 (mingw*) sys_lib_search_path_spec:
21215 Sets the proper path separator for cross-compiling.
21217 2001-07-30 Steve Ellcey <sje@cup.hp.com>
21219 * libtool.m4 (ia64-*-hpux*) Add support for ia64*-*-hpux* platform.
21221 2001-07-30 Robert Boehne <rboehne@ricardo-us.com>
21223 * libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Fixed an
21224 incorrect resetting of lt_prog_compiler_static when using gcc
21227 2001-07-31 Gary V. Vaughan <gary@gnu.org>
21229 * bootstrap: Remove generated files (incase they are links) before
21230 rerunning the autotools to regenerate them.
21232 2001-07-30 Gary V. Vaughan <gary@gnu.org>
21234 * libtool.m4 (AC_LIBTOOL_SETUP): Use Autoconf-2.50 era
21235 quadrigraphs and AC_HELP_STRING to bring AC_ARG_WITH/ENABLE
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
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].
21253 Reported by Boyd Lynn Gerber <gerberb@zenez.com>
21255 2001-07-29 Gary V. Vaughan <gary@gnu.org>
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.
21263 2001-07-29 Andrew C. Feren <aferen@CetaceanNetworks.com>
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.
21269 2001-07-29 Steve Ellcey <sje@cup.hp.com>
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()".
21275 2001-07-29 Gary V. Vaughan <gary@gnu.org>
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
21283 2001-07-27 NIIBE Yutaka <gniibe@m17n.org>
21285 * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all
21286 for sh*-*-linux* (SuperH) too.
21288 2001-07-25 Ossama Othman <ossama@debian.org>
21290 From Thomas Poindessous <poinde_t@epita.fr>
21291 * ltmain.in (pic_mode): Added missing quotes around shell
21292 variable in "if test" conditional.
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).
21298 2001-07-25 Gary V. Vaughan <gary@gnu.org>
21300 From Steve Ellcey <sje@cup.hp.com>:
21301 * libltdl/ltdl.c (foreach_dirinpath): Free unassigned pointer
21302 fix for `canonical'.
21304 2001-07-23 Robert Boehne <rboehne@ricardo-us.com>
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.
21311 2001-07-23 Gary V. Vaughan <gary@gnu.org>
21313 * Makefile.am (EXTRA_DIST): Don't forget to distribute
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.
21322 2001-07-23 Andreas Schwab <schwab@suse.de>
21324 * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
21325 s390*-*-linux* and m68*-*-linux*.
21327 2001-07-19 Robert Boehne <rboehne@ricardo-us.com>
21329 * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix tag support
21330 problems with CXX variables being overwritten by the individual
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.
21344 2001-07-23 Mark Kettenis <kettenis@gnu.org>
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.
21351 2001-07-16 Robert Boehne <rboehne@ricardo-us.com>, Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
21353 * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): add cases and comments for
21354 more platforms, including AIX, Digital/Tru64 UNIX and IRIX.
21356 2001-07-16 Gary V. Vaughan <gary@gnu.org>
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>
21363 2001-07-12 Gary V. Vaughan <gary@gnu.org>
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.
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.
21377 2001-07-12 Dan McNichol <mcnichol@austin.ibm.com>
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.
21384 2001-07-11 Gary V. Vaughan <gary@gnu.org>
21386 * libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
21387 solaris]: Doh! the evalled variable shouldn't have been
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>
21396 2001-07-09 Gary V. Vaughan <gary@gnu.org>
21398 * README-alpha: s/configure.in/configure.ac.
21399 * configure.ac: Bumped version to 1.4c.
21401 GNU libtool 1.4b was released.
21403 * configure.ac: Bumped version to 1.4b.
21405 * config.guess, config.sub, texinfo.tex: Synchronised from
21408 2001-07-09 Robert Boehne <rboehne@ricardo-us.com>
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.
21415 2001-07-09 Gary V. Vaughan <gary@gnu.org>
21417 * README-alpha: Upgrade distribution instructions to include
21418 canonical location of texinfo.tex.
21420 2001-07-09 Timothy Wall <twall@oculustech.com>
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
21426 2001-07-09 Robert Boehne <rboehne@ricardo-us.com>
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.
21433 2001-07-05 Gary V. Vaughan <gary@gnu.org>
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
21440 2001-07-02 Gary V. Vaughan <gary@gnu.org>
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.
21454 * libtoolize.in: Display --version in the same format as
21455 autoconf and automake.
21456 * ltmain.in: Ditto.
21458 2001-06-30 Gary V. Vaughan <gary@gnu.org>
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
21466 * tests/quote.test: Ditto.
21467 * tests/suffix.test: Ditto.
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>
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>
21480 2001-06-29 Tim Van Holder <tim.van.holder@pandora.be>
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
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.
21501 2001-06-29 Gary V. Vaughan <gary@gnu.org>
21503 From Tim Van Holder <tim.van.holder@pandora.be>
21504 * tests/suffix.test: Typo in 2nd for loop.
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.
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.
21515 From "Golubev I. N." <gin@mo.msk.ru>
21516 * tests/Makefile.am (CPPLAGS): Typo. s/CPPLAGS/CPPFLAGS.
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
21522 Reported by Robert Collins <robert.collins@itdomain.com.au>
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.
21528 2001-06-28 Gary V. Vaughan <gary@gnu.org>
21530 From Alexander Bluhm <Alexander.Bluhm@WiredMinds.de>
21531 * libltdl/ltdl.c (lt_dlopen): Fix bad memory initialisation
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>
21541 2001-06-28 Tim Van Holder <tim.van.holder@pandora.be>, Gary V. Vaughan <gary@gnu.org>
21543 * bootstrap: Use cp instead of ln -s, for systems without
21544 symlinks. Reorder the statements to avoid repetition outside
21547 2001-06-28 Paolo Bonzini <bonzini@gnu.org>, Gary V. Vaughan <gary@gnu.org>
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
21571 2001-06-28 Tim Van Holder <tim.van.holder@pandora.be>
21573 * pdemo/Makefile.am: Use '=' instead of '+=' to shut up
21576 2001-06-27 Gary V. Vaughan <gary@gnu.org>
21578 From brad@openbsd.org:
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,
21585 2001-06-26 Gary V. Vaughan <gary@gnu.org>
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):
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>
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
21602 * libltdl/ltdl.c: Prototype all static functions.
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.
21619 2001-06-25 Gary V. Vaughan <gary@gnu.org>
21621 * THANKS: Added Albert Chin-A-Young.
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>
21628 2001-06-25 Albert Chin-A-Young <china@thewrittenword.com>
21630 * libtool.m4: Prefer shl_load to dlopen on HP-UX because dlopen
21631 won't work properly without a patch.
21633 2001-06-25 Daniel Harvey <daniel@amristar.com.au>
21635 * libtool.m4 (ltdll_cmds): [$]0 doesn't appear to translate through
21636 the script correctly, change to $''0
21638 2001-06-25 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
21640 * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
21641 mips-*-linux* and mipsel-*-linux*.
21643 2001-06-24 Andreas Schwab <schwab@suse.de>
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.
21651 2001-06-24 Gary V. Vaughan <gary@gnu.org>
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.
21663 From Tim Van Holder <tim.van.holder@pandora.be>:
21664 * libtool.m4: Use the canonical absolute path test
21665 ([\\/]* | ?:[\\/]) and $PATH_SEPARATOR wherever
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.
21674 * configure.in (AM_INIT_AUTOMAKE): Bumped version to 1.4a.
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
21687 2001-06-12 Robert Boehne <rboehne@ricardo-us.com>
21689 * docs/libtool.texi: Updated the libltdl interface documentation
21690 to bring it up to date.
21692 2001-06-06 Gary V. Vaughan <gary@gnu.org>
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
21709 * NEWS: Merged from multi-language-branch.
21711 2001-06-06 Robert Boehne <rboehne@ricardo-us.com>
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.
21724 2001-05-30 Gary V. Vaughan <gary@gnu.org>
21726 * libtool.m4: Merged ltconfig.in from multi-language-branch.
21728 2001-05-28 Gary V. Vaughan <gary@gnu.org>
21730 * libtool.m4: Reformatting for consistency, and some refactoring
21731 in preparation for ltcf-*.sh merge.
21733 2001-05-27 Gary V. Vaughan <gary@gnu.org>
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.
21740 2000-06-04 Mark Mitchell <mark@codesourcery.com>
21742 * ltcf-c.sh (archive_cmds, archive_expsym_cmds) [solaris,
21743 with_gcc]: Use `gcc -shared' to build a shared library.
21745 2001-06-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
21747 * ltcf-c.sh (archive_cmd) [hpux, with_gcc]: Use gcc to link shared
21750 2001-05-28 Simon Patarin <simon.patarin@inria.fr>
21752 * ltcf-cxx.sh (osf3/osf4/osf5): Support creation of C++ shared
21753 libraries when using g++ with native linker.
21755 2001-05-28 Albert Chin <china@thewrittenword.com>
21757 * ltconfig.in (version_type, soname_spec) [aix4* | aix5*]: Use
21758 linux-style versioning, and remove trailing .o from soname_spec.
21760 2001-05-22 Alexandre Oliva <aoliva@redhat.com>
21762 * ltcf-cxx.sh (allow_undefined_flag, no_undefined_flag)
21763 [aix4*|aix5*]: Prepend blank.
21765 2001-05-20 Alexandre Oliva <aoliva@redhat.com>
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.
21771 * ltconfig.in: Fix sh.test regression introduced in previous patch.
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.
21776 * ltcf-cxx.sh (allow_undefined_flag) [aix4* | aix5*]: Fix quote
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
21785 2001-05-16 Alan Modra <amodra@one.net.au>
21787 * libtool.m4 (lt_cv_deplibs_check_method): pass_all for hppa*-linux.
21789 2001-05-03 Andreas Jaeger <aj@suse.de>, Andreas Schwab <schwab@suse.de>
21791 * ltmain.in (relink_command): Arrange for wrapper script to save
21792 output to a variable and display it only if relinking fails.
21794 2001-04-25 Gary V. Vaughan <gary@gnu.org>
21796 * configure.in: bumped version to 1.4a.
21798 GNU libtool 1.4 was released.
21800 * configure.in: Bumped version to 1.4.
21801 * config.sub, config.guess: Synchronised from ftp.gnu.org.
21804 2001-04-24 Peter Eisentraut <peter_e@gmx.net>
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.
21810 2001-04-24 Gary V. Vaughan <gary@gnu.org>
21812 * libtool.m4, ltmain.in, libltdl/configure.in,
21813 tests/quote.test: Remove stale references to ltconfig.
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
21821 Reported by Peter Eisentraut <peter_e@gmx.net>
21823 2001-04-24 Albert Chin-A-Young <china@thewrittenword.com>
21825 * libtool.m4: Handle case where /bin/nm -p outputs multiple
21826 symbol types (like under HP-UX 11.00).
21828 2001-04-24 Thomas Tanner <tanner@ffii.org>
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
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)
21850 2001-04-24 Gary V. Vaughan <gary@gnu.org>
21852 * doc/PLATFORMS: More updates from subscribers to
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
21860 2001-04-23 Gary V. Vaughan <gary@gnu.org>
21862 * doc/PLATFORMS: Updated with more platforms successfully
21863 tested by members of libtool@gnu.org.
21865 2001-04-23 Peter Eisentraut <peter_e@gmx.net>
21867 * doc/PLATFORMS: With this patch, freebsd4.3 passes the test
21869 * libltdl/ltdl.c (lt_dlexit): Quit loop if only resident modules
21872 2001-04-23 Gary V. Vaughan <gary@gnu.org>
21874 * doc/PLATFORMS: With this patch, my Solaris boxes now pass the
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
21882 From Simon Spero <ses@ibiblio.org>
21883 * ltdl.m4 (AC_LTDL_DLSYM_USCORE): Add $LIBADD_DL while
21884 checking for dlsym _.
21886 From Simon Spero <ses@ibiblio.org>
21887 * libtool.m4 (lt_cv_deplibs_check_method) [darwin]: Set it!
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.
21894 2001-04-22 Peter Eisentraut <peter_e@gmx.net>
21896 * bootstrap: Allow overriding the location aclocal, automake,
21897 autoconf, autoheader from the environment.
21899 * demo/Makefile.am: Automake 1.4e does not allow `+=' assignments
21900 if the variable was not set with `=' earlier. `+=' was not useful
21903 2001-04-22 Gary V. Vaughan <gary@gnu.org>
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
21909 Reported by Matthew Schalit <mschalit@pacbell.net>
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>
21915 * doc/PLATFORMS: Updated with various platforms successfully
21916 tested by members of libtool@gnu.org.
21918 2001-04-21 Gary V. Vaughan <gary@gnu.org>
21920 * TODO: propose pkg-config merge.
21922 2001-04-21 Nick Hudson <skrll@netbsd.org>
21924 * ltmain.in: Correct an error in yesterday's patch.
21926 2001-04-20 Nick Hudson <skrll@netbsd.org>
21928 * libtool.m4: Improve NetBSD support.
21929 * ltmain.in: ditto.
21931 2001-04-19 Dan McNichol <mcnichol@austin.ibm.com>
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.
21944 2001-04-18 Alexandre Oliva <aoliva@redhat.com>
21946 * TODO: Add -L- flag.
21948 2001-04-11 Alexandre Oliva <aoliva@redhat.com>
21950 * libtool.m4 (no_undefined_flag) [Solaris ld]: Change to -zdefs.
21952 2001-04-11 Ossama Othman <ossama@uci.edu>
21954 * AUTHORS: Added myself to the list of maintainers.
21956 2001-04-08 Gary V. Vaughan <gary@gnu.org>
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>
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.
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.
21974 2001-04-08 Nick Hudson <skrll@netbsd.org>
21976 * ltmain.in: Improve check for valid -version-info parameter.
21978 2001-04-08 Gary V. Vaughan <gary@gnu.org>
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.
21984 2001-04-07 Peter Eisentraut <peter_e@gmx.net>
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.
21989 2001-04-06 Nick Hudson <skrll@netbsd.org>
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
21995 2001-04-05 Gary V. Vaughan <gary@gnu.org>
21997 * doc/libtool.texi (Multiple dependencies): A note about the
21998 problems I've reintroduced by reverting the my patch of 2001-03-31.
22000 From Edward Lee <tailbert@yahoo.com>
22001 * libtool.m4: Typos.
22003 * tests/Makefile.am (TESTS): Delete references to depdemo-dups.test.
22004 * tests/depdemo-dups.test: Removed, as part of the patch
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.
22010 From Ahmed Masud <masud@googgun.com>
22011 * libltdl/ltdl.c (sys_shl_open): Return a NULL module handle
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.
22017 * libltdl/ltdl.c (lt_dlopen): When reading the .la file,
22018 reallocate the line buffer size if the line overflows the
22020 Reported by Nick Hudson <skrll@netbsd.org>
22022 * NEWS (1.3d) Removed bogus ltconfig reference.
22024 2001-04-03 Gary V. Vaughan <gary@gnu.org>
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>
22030 2001-04-02 Gary V. Vaughan <gary@gnu.org>
22032 * configure.in: bumped version to 1.3e.
22034 GNU libtool 1.3d was released.
22036 * NEWS: inserted todays date.
22038 2001-04-01 Christoph Pfisterer <cp@chrisp.de>
22040 * libtool.m4: Fixed support for Darwin and Rhapsody. Now correctly
22041 hardcodes the library path and adds versioning. Other small
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".
22047 2001-03-31 Gary V. Vaughan <gary@gnu.org>
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.
22057 2001-03-29 Edward M. Lee <tailbert@yahoo.com>
22059 * libtoolize.in: Check configure.ac and prefer configure.ac to
22062 * libtoolize.in: change recommendation from AM_PROG_LIBTOOL to
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.
22073 * libltdl/ltdl.c: Use windows paths while calling LoadLibrary.
22075 2001-03-16 Albert Chin <china@thewrittenword.com>
22077 * libtool.m4 (save_CPPFLAGS): Fix typo.
22079 2001-03-13 Alexandre Oliva <aoliva@redhat.com>
22081 * libtool.m4 (lt_cv_compiler_c_o): Cache it.
22082 (lt_cv_compiler_o_lo): Likewise.
22084 2001-03-09 Peter Eisentraut <peter_e@gmx.net>
22086 * ltmain.in (clean): Automatically remove $objdir (usually '.libs').
22088 2001-03-08 Gary V. Vaughan <gary@gnu.org>
22090 * ltconfig.in (library_names_spec): Undo latin-1 spaces I pasted
22091 in yesterday by mistake.
22093 2001-03-07 Gary V. Vaughan <gary@gnu.org>
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.
22100 * libtool.m4 (library_names_spec): Using m4 quotes correctly this
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.
22107 2001-03-06 Alexandre Oliva <aoliva@redhat.com>
22109 * libtool.m4 (can_build_shared) [AIX 4.[01], GCC]: GCC up to
22110 2.96 can't build shared libraries reliably. Disable them.
22112 * ltmain.in: When dropping dependencies of a -no-undefined
22113 library, give up on building a shared library.
22115 2001-03-05 Akim Demaille <akim@epita.fr>
22117 * ltmain.sh: Don't quote the argument of case/esac and
22119 * libtool.m4: Likewise.
22121 2001-03-03 Markus F.X.J. Oberhumer <markus@oberhumer.com>,
22122 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
22124 * libtool.m4: Added explicit return type to all C functions.
22126 2001-02-22 Gary Vaughan <gary@gnu.org>
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.
22143 2001-02-20 Gary Vaughan <gary@gnu.org>
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>
22149 2001-02-05 Gary V. Vaughan <gary@gnu.org>
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
22156 2001-02-02 Gary V. Vaughan <gary@gnu.org>
22158 * libltdl/ltdl.c (load_deplibs): Make sure the depcount is reset,
22159 even when deplibs are not used because of the patch below.
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.
22165 2001-01-31 Gary V. Vaughan <gary@gnu.org>
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.
22173 * libltdl/ltdl.c: Clean up the shadowing of the global handles
22175 (LT_DLRESIDENT_FLAGS): Add extra parens to satisfy -Wall.
22176 (load_deplibs): Cast isspace() argument to an int to satisfy
22179 2001-01-30 Robert Boehne <rboehne@ricardo-us.com>
22181 * AUTHORS: added myself to the list of maintainers.
22183 2001-01-28 Alexandre Oliva <aoliva@redhat.com>
22185 * libltdl/Makefile.am (CLEANFILES): Clean conditionally-built
22188 2001-01-27 Alexandre Oliva <aoliva@redhat.com>
22190 * libtool.m4 (ld_shlibs) [aix4*]: Disable on unknown CPU types.
22192 2001-01-07 Gary V. Vaughan <gary@gnu.org>
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.
22199 2001-01-05 Gary V. Vaughan <gary@gnu.org>
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
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.
22217 2001-01-04 Gary V. Vaughan <gary@gnu.org>
22219 * libltdl/ltdl.h: formatting change.
22221 2000-12-23 Gary V. Vaughan <gary@gnu.org>
22224 * doc/fdl.texi (GNU Free Documentation License): contained @bye
22225 command which prevented part of document to be generated (indices,
22227 * doc/libtool.texi (Dlpreopening): the @deftypevar did not contain
22228 a space after a type.
22230 2000-12-22 Akim Demaille <akim@epita.fr>
22232 * libtool.m4: s/[ \t]*$//
22234 2000-12-22 Aneesh Kumar K.V <kvaneesh@hotmail.com>
22236 * libtool.m4 (OSF/1): Revert my patch of 2000-12-16.
22238 2000-12-20 Gary V. Vaughan <gary@gnu.org>
22240 * libltdl/ltdl.c (lt_dlexit): Was checking for residency of the
22242 Reported by Robert Boehne <rboehne@ricardo-us.com>
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.
22249 2000-12-16 Aneesh Kumar K.V <kvaneesh@hotmail.com>
22251 * libtool.m4 (OSF/1): Change the way to pass linker flags through
22252 compiler on a Tru64 machine.
22254 2000-12-16 Gary V. Vaughan <gary@gnu.org>
22256 * libtool.m4 (sys_lib_search_path_spec): Use test instead of
22258 (archive_cmds): And another one.
22260 * libtool.m4 (darwin*): Fixed a pair of stupid typos I made in the
22263 * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): moved rogue settings from
22264 sequent, ncr and newos6 back into here from other macros.
22266 2000-12-16 Wilfredo Sanchez <wsanchez@apple.com>
22268 * libtool.m4: (dyld/darwin*) Much improved port.
22269 * ltmain.in: (dyld/darwin*) Much improved port.
22271 2000-12-16 Sascha Schumann <sascha@schumann.cx>
22273 * libtool.m4: Accept darwin as an alias for rhapsody.
22274 * ltmain.in: ditto.
22276 * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use the HPUX 10.20
22277 methods to check for library dependencies on HPUX 11.
22279 2000-12-16 Nick Hudson <skrll@netbsd.org>
22281 * libtool.m4 (netbsd*, deplibs_check_method): Enable ILD support
22284 2000-12-15 Akim Demaille <akim@epita.fr>
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.
22298 2000-12-15 Utz-Uwe Haus <haus@mail.math.uni-magdeburg.de>
22300 * libltdl/ltdl.c (lt_dlopen): Changed "dl_dependency_libs" keyword
22301 to "dependency_libs".
22303 2000-12-14 Tod Milam <tmilam@traclabs.com>
22305 * libltdl/ltdl.c (lt_dlexit): Reset the loaders value to zero when
22306 the last module has been unloaded.
22308 2000-12-14 Michael Schmitz <mschmitz@iname.com>
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
22314 2000-12-14 Masahiro Nobori <nobori@ss.titech.ac.jp>
22318 * libtool.m4: New port to NEWS-OS Release 6.
22320 2000-12-14 Nick Hudson <skrll@netbsd.org>
22322 * libtool.m4 (hardcode_libdir_flag_spec): Remove linker
22323 specification for netbsd.
22325 2000-12-14 Akim Demaille <akim@epita.fr>
22327 * libtool.m4: Don't depend on Autoconf internals:
22328 s/ac_cv_prog_gcc/GCC/.
22330 2000-12-14 Gary V. Vaughan <gary@gnu.org>
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.
22339 2000-12-05 Gary V. Vaughan <gary@gnu.org>
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.
22348 2000-12-01 Gary V. Vaughan <gary@gnu.org>
22350 * doc/libtool.texi (Libltdl interface): Add documentation.
22351 * libltdl/ltdl.h (lt_dlmakeresident, lt_dlisresident): Add
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.
22360 * libtool.m4 (_LT_AC_LTCONFIG_HACK): Move the tests for dlopen
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.
22370 2000-11-29 Gary V. Vaughan <gary@gnu.org>
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.
22376 2000-11-25 Gary V. Vaughan <gary@gnu.org>
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.
22383 2000-11-20 Gary V. Vaughan <gary@gnu.org>
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
22393 2000-11-20 Morten Eriksen <mortene@sim.no>
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.
22398 2000-11-20 Paul Berrevoets <paul@swi.com>
22400 * ltmain.in: Some versions of expr respond with "0" if a
22401 regexp fails to match.
22403 2000-11-19 Paul Berrevoets <paul@swi.com>
22405 * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote the $ in $#, $2 and
22406 $3 in variable 'archive_expsym_cmds' for cygwin.
22408 2000-11-19 Gary V. Vaughan <gary@gnu.org>
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.
22416 2000-11-17 Gary V. Vaughan <gary@gnu.org>
22418 * ltdl.c: Reformatted.
22421 2000-11-11 Gary V. Vaughan <gary@gnu.org>
22423 * ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Use $ac_ext for conftest
22425 * libtool.m4: Use $ac_ext and $ac_objext respectively for conftest
22426 sources and objects.
22427 Reported by Carlo Wood <carlo@alinoe.com>
22429 * doc/fdl.texi: New file. The license for distributing the
22431 * doc/libtool.texi: Reference the new license.
22433 2000-10-31 Morten Eriksen <mortene@sim.no>
22435 * libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote argument to avoid
22436 error output from cygpath when $srcdir is empty.
22438 2000-10-31 Gary V. Vaughan <gary@gnu.org>
22440 * bootstrap: rm Makefiles to prevent infinite loop during
22441 configure when libtool.m4 is newer than Makefile.
22443 2000-10-31 Akim Demaille <akim@epita.fr>
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.
22452 2000-10-30 Gary V. Vaughan <gary@gnu.org>
22454 * doc/libtool.texi: Corrected another attack of CRLF line
22457 2000-10-30 Ossama Othman <ossama@debian.org>
22459 * libtool.m4 (archive_expsym_cmds): Fix typo where line was broken
22460 in the middle of an expression.
22462 2000-10-30 Aneesh Kumar K.V <kvaneesh@hotmail.com>
22464 * libtool.m4 (archive_expsym_cmds): Support for -export-symbol
22466 (hardcode_libdir_flag_spec): Fixed cxx throwing error while using
22467 libtool. Done by passing -rpath directlty to the compiler.
22469 2000-10-27 Robert Boehne <rboehne@ricardo-us.com>
22471 * docs/libtool.texi: Added pointers to documentation
22472 of Hewlett-Packard, Compaq Tru64 and IBM AIX systems.
22474 2000-10-02 Gary V. Vaughan <gary@gnu.org>
22476 From Bruce Korb <bkorb@cruzio.com>
22477 * ltmain.in (execute_dlfiles): Reduce obfuscation.
22479 2000-09-30 Alexandre Oliva <aoliva@redhat.com>
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.
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.
22489 2000-09-28 Gary V. Vaughan <gary@gnu.org>
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>
22496 2000-09-19 Gary V. Vaughan <gary@gnu.org>
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.
22508 2000-09-17 Gary V. Vaughan <gary@gnu.org>
22510 * bootstrap: Backed out yesterdays patch which is no longer
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
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.
22526 2000-09-16 Gary V. Vaughan <gary@gnu.org>
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.
22537 * ltdl.m4 (AC_LTDL_DLPREOPEN): Require the libtool.m4 symbol_pipe
22539 (AC_LTDL_SYMBOL_USCORE): ditto.
22540 (AC_LTDL_GLOBAL_SYMBOL_PIPE): Removed, since it is a duplicate
22542 * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): ...this new
22543 macro, extracted from _LT_AC_LTCONFIG_HACK.
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.
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
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.
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
22564 2000-09-15 Gary V. Vaughan <gary@gnu.org>
22566 * doc/libtool.texi: Removes references to ltconfig, and a small
22567 amount of tidying up to compensate.
22569 2000-09-15 Nick Hudson <skrll@netbsd.org>
22571 * libtool.m4 (netbsd): Improved support.
22573 2000-09-15 Gary V. Vaughan <gary@gnu.org>
22575 * ltmain.in (version_type): Use "-iface" as the windows
22576 versioning scheme, where iface is the number of the oldest
22577 interface supported.
22579 2000-09-14 Gary V. Vaughan <gary@gnu.org>
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
22585 * ltmain.in (pw32): ditto.
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.
22592 * Makefile.am (EXTRA_DIST): The bootstrap script should be
22593 distributed with libtool.
22595 2000-09-13 Gary V. Vaughan <gary@gnu.org>
22597 libtool.m4 (_LT_AC_LTCONFIG_HACK): Oh man! Third time lucky.
22598 I just discovered that '&' needs to be escaped inside
22601 2000-09-12 Michael Matz <matz@ifh.de>
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>
22607 2000-09-12 Gary V. Vaughan <gary@gnu.org>
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
22618 2000-09-09 Gary V. Vaughan <gary@gnu.org>
22620 libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to escape the
22621 redirections inside AC_TRY_EVAL in the need_lc tests. Doh!
22623 libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to redirect the
22624 output of grep to /dev/null in the need_lc tests.
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.
22631 2000-09-08 Gary V. Vaughan <gary@gnu.org>
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.
22637 2000-09-07 Pavel Roskin <proskin@gnu.org>
22639 * libtool.m4 (_LT_AC_LTCONFIG_HACK): Fixed incorrect use of
22642 2000-09-07 Gary V. Vaughan <gary@gnu.org>
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.
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.
22654 * doc/PLATFORMS: Updated.
22656 * configure.in (AC_PROG_AWK): Removed -- no longer required by
22660 * libtoolize.in (files): Don't try to install ltconfig -- it
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.
22666 * libtool.m4 (_LT_AC_LTCONFIG_HACK): Deleted a vital `;;'
22667 terminator from a case statement by mistake.
22669 * Makefile.am (ltmain.sh): Make this depend on TSDEPS again
22670 so that the Changelog timestamp is used for ltmain.sh at `make
22673 2000-09-06 Gary V. Vaughan <gary@gnu.org>
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.
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.
22691 2000-09-05 Alexandre Oliva <aoliva@redhat.com>
22693 * depdemo/main.c: Support -alt.
22694 * tests/build-relink2.test: Try it.
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.
22703 2000-09-04 Alexandre Oliva <aoliva@redhat.com>
22705 * tests/dryrun.test: Build libsub.la along with the object files,
22706 since it is needed by libfoo2.la.
22708 * mdemo/Makefile.am: Mark only libfoo2 as -no-undefined.
22709 Explicitly link it with libsub.la.
22711 * ltconfig.in (need_lc): Preserve allow_undefined_flag.
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.
22717 * Makefile.am (libtool, clibtool): Pass CONFIG_SHELL along with
22718 ECHO down to ltconfig.
22720 * ltconfig.in (hardcode_libdir_flag_spec, export_dynamic_flag_spec):
22721 Use ${wl}, not ${wlarc}.
22723 * ltmain.in (compile, need_lock): Don't create nor remove lock
22726 * libltdl/ltdl.c (load_deplibs): Don't append shlib_ext; use
22727 lt_dlopenext() instead.
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.
22733 * mdemo/configure.in: Don't use -static on AIX4.1.
22734 * mdemo/Makefile.am: Likewise.
22736 2000-09-03 Alexandre Oliva <aoliva@redhat.com>
22738 * ltconfig.in: Get rid of hardcode_into_libs=all; use
22739 hardcode_into_libs=yes && shlibpath_overrides_runpath!=yes
22741 [FreeBSD 3.[01]] (shlibpath_overrides_runpath): Set to no.
22742 * ltmain.in: Likewise.
22743 * tests/build-relink.test, tests/build-relink2.test: Adjust.
22745 * libtool.m4: Fix typo I introduced in yesterday's patch.
22747 * libltdl/ltdl.c (lt_dlopen): Set dlname from library_names if
22750 * ltdl.m4 (HAVE_LIBDL): Look for dlopen in -lsvld.
22751 * ltconfig.in: Likewise.
22753 * tests/mdemo-exec.test: Modify failure message.
22755 * ltmain.in (newdlprefiles): Use dlname if it's available and
22756 old_library isn't; use linklib only if dlname is not available.
22758 * ltconfig.in (enable_dlopen): Set to no when lt_cv_dlopen is no.
22760 * libtool.m4: Don't quote CONFIG_SHELL nor ORIGINAL_CONFIG_SHELL.
22761 Quote $@ properly so that the shell expands it, not m4.
22763 * libtool.m4: Don't quote SHELL when `re-exec'ing, so that SHELL
22764 can be `/path/to/shell -x'.
22766 * tests/quote.test: Move the match test out of case statements, to
22767 work around bug in /bin/sh of several OSs.
22769 * ltmain.in (variables_saved_for_relink): Attempt to unset them
22770 instead of setting them to an empty string.
22772 2000-09-02 Alexandre Oliva <aoliva@redhat.com>
22774 * ltconfig.in [with_gnu_ld] (archive_cmds, archive_expsym_cmds)
22775 <solaris*, sysv5*, beos*>: Use compiler_flags instead of linker
22777 Reported by Alex Hornby <alex@anvil.co.uk>
22779 2000-09-02 Makoto Ishisone <ishisone@sra.co.jp>
22781 * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Fix typo,
22782 add support for compact format library.
22784 2000-09-02 Alexandre Oliva <aoliva@redhat.com>
22786 * ltdl.m4: Oops, I had forgotten to commit this part of Syd Polk's
22787 patch from 2000-06-17.
22789 2000-09-02 Tom Kacvinsky <tjk@ams.org>, Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
22791 * libtool.m4: Ignore Tru64's nm's complaint.
22793 2000-09-02 Pavel Roskin <proski@gnu.org>
22795 * ltconfig.in: only load $cache_file if it's a regular file
22797 2000-09-02 Assar Westerlund <assar@sics.se>
22799 * ltconfig.in: Add back ranlib calls for static libraries if there
22802 2000-08-31 Gary V. Vaughan <gary@gnu.org>
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.
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
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
22826 2000-08-27 Gary V. Vaughan <gary@gnu.org>
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>
22838 2000-08-26 Gary V. Vaughan <gary@gnu.org>
22840 * ltconfig.in (old_reload_flag): typo.
22842 2000-08-01 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
22844 * ltmain.in (shtool): Use echo|grep instead of expr, as in the
22847 2000-08-01 Alexandre Oliva <aoliva@redhat.com>
22849 * ltconfig.in (need_lc): Fix test message.
22851 2000-07-24 Mocha <netbsd_alpha@yahoo.com>
22853 * ltconfig.in (NetBSD, deplibs_check_method): Use file_magic.
22854 (NetBSD, file_magic_cmd, file_magic_test_file): Set.
22856 2000-07-24 Alexandre Oliva <oliva@lsd.ic.unicamp.br>, David Kaelbling <drk@orchietta.hudson.sgi.com>
22858 * ltmain.in (irix, major): Prepend a `.'.
22859 * ltconfig.in (irix, soname_spec, library_names_spec): Adjust.
22861 2000-07-24 Alexandre Oliva <oliva@lsd.ic.unicamp.br>, Ralf S. Engelschall <rse@engelschall.com>
22863 * ltmain.in: Support GNU shtool's install.
22865 2000-07-24 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
22867 * ltconfig.in (linkopts): Don't set for test.
22869 2000-07-24 Nick Hudson <skrll@netbsd.org>
22871 * ltconfig.in (linkopts): Replace with linker_flags.
22873 * ltmain.in (ILD): Fix addition of deplibs in relink case.
22875 2000-07-18 H.J. Lu <hjl@gnu.org>
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
22882 2000-07-10 Mo DeJong <mdejong@redhat.com>
22884 * libtool.m4 (AC_PROG_NM): Fix macro so that it
22885 finds a cross NM on the PATH.
22887 2000-07-10 Ken Block <block@zk3.dec.com>
22889 * libltdl/ltdl.h: Also check for __cplusplus, __STDC__ is not
22890 by Compaq C++ compiler
22892 2000-07-10 Alexandre Oliva <aoliva@lsd.ic.unicamp.br>
22894 * ltconfig.in (wlarc, netbsd, aout): Set to empty.
22895 (hardcode_dynamic_flag_spec, export_dynamic_flag_spec): Use it.
22897 * ltconfig.in (dynamic_linker, linux, powerpc): Do not disable
22898 shared libraries just because of MkLinux.
22900 * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Do not depend
22901 on $version_type; check for ELF support as in other BSDs.
22903 2000-06-17 Syd Polk <spolk@redhat.com>
22905 * libtool.m4 (AC_LIBTOOL_SETUP): Do not generate a libtool based
22906 on target; use host instead.
22908 2000-05-30 Gary V. Vaughan <gary@gnu.org>
22910 * ltconfig.in (ORIGINAL_CONFIG_SHELL): Prevent lossage when
22911 the echo probing code falls into this branch without setting
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>
22918 2000-05-29 Gary V. Vaughan <gary@gnu.org>
22920 * libtool.m4 (netbsd*): Use -L option to file_magic_cmd as for
22922 * libtool.m4 (netbsd ELF): support file_magic.
22923 From Dan Winship <danw@helixcode.com>.
22925 2000-05-29 Steven M. Schultz <sms@moe.2bsd.com>
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.
22932 2000-05-29 Gary V. Vaughan <gary@gnu.org>
22934 * libtool.m4 (i*86-*-freebsd*): Forgot to changequote(,).
22937 * libtool.m4 (i*86-*-freebsd*): Support a.out shared libs.
22938 From <suzukis@file.phys.tohoku.ac.jp>
22940 2000-05-29 Fred Fish <fnf@be.com>
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.
22948 2000-05-29 Gary V. Vaughan <gary@gnu.org>
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>
22957 2000-05-29 Bernhard Rosenkraenzer <bero@redhat.de>
22959 * libtool.m4: adding ia64 as supported linux platform
22961 2000-05-29 Michael Matz <matz@ifh.de>
22963 * ltmain.in: fix quoting for $var_value.
22965 * ltconfig.in: check for dlfcn.h: include return value
22966 to make -Wall in CFLAGS work.
22968 2000-05-27 Gary V. Vaughan <gary@gnu.org>
22970 * README-alpha: note new location of config.(guess|sub).
22972 2000-05-27 Chad Cunningham <ccunning@math.ohio-state.edu>
22974 * ltconfig.in (rhapsody*): New Port.
22975 * ltmain.in (rhapsody*): ditto.
22977 2000-05-27 Chris Lattner <sabre@skylab.org>
22979 * ltconfig.in (*-sequent-sysv4): New Port.
22981 2000-05-17 Gary V. Vaughan <gary@gnu.org>
22983 * ltmain.in: cygwin-1.1.0 and higher no longer grok backslash path
22986 2000-05-14 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
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.
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.
22997 2000-05-11 Thomas Tanner <tanner@ffii.org>
23000 * doc/libtool.texi (libltdl): rename lt_(find|next|add|remove)_dlloader
23002 * libltdl/ltdl.c: ditto
23003 * libltdl/ltdl.h: ditto, add declaration of lt_dlloader_(find|remove)
23005 2000-05-06 Pavel Roskin <pavel_roskin@geocities.com>
23007 * libltdl/ltdl.c: Typo.
23009 * libtool.m4 (AC_LIBTOOL_SETUP): CVS autoconf no longer sets
23010 target to "NONE", but to an empty string.
23012 2000-05-05 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
23014 * ltdl.c: support lt_dlopen(0) for win32
23016 2000-05-03 Thomas Tanner <tanner@ffii.org>
23018 * doc/libtool.texi (libltdl): fix typos,
23019 INCLTDL starts with top_srcdir, replace NULL with @code{NULL}
23021 * ltmain.in (ILD): search in newlib_search_path, too
23023 * ltmain.in (ILD): fix bugs in conv pass, expand convenience
23024 libs to deplibs and link them later on
23026 * ltmain.in (ILD): don't allow convenience libs to be
23029 * ltmain.in (ILD): it's not required to link all deplibs
23030 in fast-install mode
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
23036 * ltmain.in (ILD): tidy up, add some comments
23038 2000-05-03 John Wehle (john@feith.com)
23040 * libtool.m4 (hpux10.20*): use file_magic for
23041 inter-library dependency tracking.
23043 2000-05-02 Gary V. Vaughan <gary@gnu.org>
23045 * AUTHORS: Update my email address.
23048 2000-04-11 Thomas Tanner <tanner@ffii.org>
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
23055 2000-03-29 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
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>
23061 2000-03-27 Thomas Tanner <tanner@ffii.org>
23063 * NEWS: reformatting
23065 * ltmain.in (ILD): add extra convenience library scanning pass
23067 * ltmain.in (ILD): accept -R flags for libraries, too
23069 * ltmain.in (ILD): correclty merge the dlpreopened libraries
23072 * ltmain.in (install mode): remove directories from filenames
23073 before relinking (reported by Elrond <Elrond@Wunder-Nett.org>)
23075 * doc/libtool.texi (libltdl): rename Library -> Lesser,
23076 clarify exception clause
23077 * libltdl/ltdl.c, libltdl.h (License): ditto
23079 2000-03-21 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
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.
23086 2000-03-14 Christopher A. Knight <chriskn@crt.com>
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
23093 2000-02-03 Gary V. Vaughan <gary@gnu.org>
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.
23101 2000-02-23 Thomas Tanner <tanner@ffii.org>
23103 * ltmain.in: remove duplicates from deplibs, handle
23104 interdependent libraries (e.g. -la -lb -la),
23105 this requires adding deplibs in reverse order
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
23114 * mdemo/Makefile.am: always link mdemo.static with -static
23115 * mdemo/configure.in: ditto
23117 * ltmain.in: fix dlopen/dlpreopening of objects
23119 * ltmain.in (ILD): fix misplaced `continue' in -R* argument handler
23121 * ltmain.in: merge duplicated code of clean and uninstall mode
23123 * libtool.m4: recognize powerpc*linux* (reported by
23124 Dirk A. Mueller <dmuell@gmx.net>)
23126 2000-02-23 Gary V. Vaughan <gary@gnu.org>
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
23133 Reported by Pavel Roskin <pavel_rosin@geocities.com>
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
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):
23147 2000-02-21 Gary V. Vaughan <gary@gnu.org>
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.
23155 * libltdl/ltdl.c (lt_dlinit): removed unused variable, `loader'.
23157 * libltdl/ltdl.c (lt_remove_dlloader): typo, s/=/==/g.
23159 2000-02-03 Gary V. Vaughan <gary@gnu.org>
23161 * libltdl/ltdl.h (lt_dlloader_data_t): New type for loader
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
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,
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
23193 * libltdl/ltdl.c (find_file): Prevent early release of memory
23195 From Jon Leichter <jon@symas.com>
23197 (sys_wll_init): Deleted. No longer required. And this time,
23199 (sys_wll_exit): Ditto.
23201 2000-02-02 Gary V. Vaughan <gary@gnu.org>
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
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
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
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
23256 (strcmp): static implementation incase the host has none.
23257 (lt_dlgettypes, lt_dlsettypes): Removed.
23259 2000-02-02 Thomas Tanner <tanner@ffii.org>
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
23266 * libltdl/ltdl.c (lt_dlgetdata, lt_dlsetdata): removed
23267 * libltdl/ltdl.h: ditto
23268 * doc/libtool.texi (libltdl interface): ditto
23270 2000-02-01 Thomas Tanner <tanner@ffii.org>
23272 * ltmain.in: support -dlopen/dlpreopen for libraries
23275 * ltmain.in: rename dlopen to dlopen_support
23276 * ltconfig.in: ditto
23277 * doc/libtool.texi: ditto
23279 * ltmain.in: check whether libraries are moved out of $libdir,
23280 replace .a and .lib with .$libext, .o and .obj with .$objext
23282 2000-01-31 Gary V. Vaughan <gary@gnu.org>
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,
23289 2000-01-30 Ossama Othman <ossama@debian.org>
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
23294 Reported by Chris Butler <chrisb@sandy.force9.co.uk>
23296 2000-01-28 Gary V. Vaughan <gary@gnu.org>
23298 * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use changequote to
23299 protect `[' and `]' in deplibs_check_method.
23301 * libltdl/ltdl.h (lt_dlrealloc): Added declaration.
23302 * libltdl/ltdl.c (lt_dlrealloc): Added default definition.
23304 * libltdl/ltdl.c (lt_dlseterror): Catch errorcodes below 0 as
23306 * libltdl/ltdl.h (LTDL_ERROR): Added missing '_' in K&R
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
23314 2000-01-27 Thomas Tanner <tanner@ffii.org>
23316 * ltconfig.in: Oops, replace the remaining $objdir's
23318 * ltmain.in: merge library linking code of programs and libraries,
23321 2000-01-27 Gary V. Vaughan <gary@gnu.org>
23324 * doc/libtool.texi (Libltdl interface): Document new entry
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
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.
23339 * doc/libtool.texi (Libltdl interface): Document new entry
23341 * libltdl/ltdl.c (lt_dltype_t): Use new type definitions for
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
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
23358 (lt_dlclose): Call lt_lib_close_t functions lt_syshandle
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
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.
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.
23376 2000-01-24 Thomas Tanner <tanner@ffii.org>
23378 fix severe bugs reported by Elrond <Elrond@Wunder-Nett.org>
23380 * ltconfig.in: replace $objdir with $output_objdir
23382 * ltmain.in: change to the builddir before relinking programs
23384 * ltmain.in, ltconfig.in, libtool.m4, ltdl.m4:
23385 remove unnessary spaces from line endings
23387 2000-01-19 Thomas Tanner <tanner@ffii.org>
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
23394 * partially revert my previous change and
23395 update only copyright notices of files that were actually modified
23399 * libltdl/Makefile.am: version number was wrong
23401 * libltdl/ltdl.c (tryall_dlopen): revert Gary's change
23402 since it breaks dlpreopening
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
23409 * libltdl/ltdl.c (find_module): remove bogus file_not_found_error
23411 * libltdl/ltdl.c (load_deplibs): implement loading of dependency
23413 * libltdl/ltdl.c (unload_deplibs): implement unloading of dependency
23415 * libltdl/ltdl.c (lt_dlexit): correctly close all modules and
23418 * libltdl/ltdl.c (lt_dlforeach): new function
23419 * libltdl/ltdl.h: ditto
23420 * doc/libtool.texi (using libltdl): document it
23422 * libtool.m4: reformatting, only add -I$topsrc_dir/libltdl to
23425 * libtoolize.in: reformatting
23426 * ltconfig.in: reformatting
23427 * ltmain.in: reformatting
23429 * mdemo/configure.in: AC_SUBST INCLTDL
23430 * mdemo/Makefile.am: use INCLTDL
23432 * tests/Makefile.am: reexport OBJEXT and EXEEXT
23433 * tests/dryrun.test: use them for building main.obj and mdemo.exe
23435 2000-01-17 Gary V. Vaughan <gary@gnu.org>
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.
23442 2000-01-16 Gary V. Vaughan <gary@gnu.org>
23444 * libltdl/ltdl.c (find_file): memory error fixed.
23446 2000-01-14 Gary V. Vaughan <gary@gnu.org>
23448 * ltconfig.in (Usage): Now it matches the code!
23449 Reported by Jon Leichter <jon@symas.com>
23451 * README: Some notes about libtool release numbers.
23453 * mdemo/README: Explain the deliberate incompleteness of the
23455 * mdemo/configure.in: Use AC_LIBTOOL_WIN32_DLL.
23456 * mdemo/Makefile.am (LDFLAGS): Add -no-undefined.
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.
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
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>
23477 2000-01-13 Gary V. Vaughan <gary@gnu.org>
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>
23484 2000-01-12 Thomas Tanner <tanner@ffii.org>
23486 * update all copyright notices to 2000
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
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
23506 * ltmain.in: minor cleanups, we don't need to add user-specified
23507 rpaths to compile_rpath, finalize_rpath is sufficient
23509 * ltconfig.in: transform linux* -> *linux-gnu* _after_ host_os has
23510 been set! (reported by Bruno Haible <haible@ilog.fr>)
23512 * configure.in: AC_SUBST reload_flag, deplibs_check_method
23515 * README: use 'libtool --version' instead of 'ltconfig --version'
23516 (suggested by Francios Pinard <pinard@iro.umontreal.ca>
23518 2000-01-10 Gary V. Vaughan <gary@gnu.org>
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
23526 (lt_dlopen): ditto.
23527 (free_vars): Removed `dir' and `name', which are now handled
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>
23537 1999-12-18 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
23539 * ltmain.in: Oops, `largarg' -> `lastarg'.
23541 * ltmain.in (-Wc, -Xcompiler): Implemented in compile mode.
23543 * ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and
23545 (-Wc, -Wl): Likewise.
23547 * tests/quote.test: Adjust quoting style of -Wl.
23549 * ltmain.in: Oops, `echo' -> `$echo'.
23551 * ltmain.in (-Wl, -Wc): Make commas argument separators, just like
23554 * ltmain.in (libtool_args): Get all arguments properly enclosed in
23555 quotes and backslash-protected when needed.
23557 1999-12-16 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
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.
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.
23574 * libltdl/Makefile.am (ACLOCAL): Define with `-I .', as in
23577 1999-12-15 Thomas Tanner <tanner@ffii.org>
23579 * libltdl/configure.in: path to auxiliary files can be specified
23580 using --with-auxdir (idea by Howard Chu <hyc@highlandsun.com>)
23582 * ltmain.in: don't remove multiple occurences from dependency_libs
23583 of a library, otherwise many dependencies would get lost
23585 * bootstrap: use "aclocal -I ." instead of adding the contents
23586 of ltdl.m4 to acinclude.m4
23588 1999-12-13 Gary V. Vaughan <gary@gnu.org>
23591 * libltdl/Makefile.am: Use -no-undefined for dll compliance.
23592 * libltdl/configure.in: Use AC_LIBTOOL_WIN32_DLL for dll
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.
23600 * doc/libtool.texi (Distributing libltdl): document use of
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>.
23608 * ltconfig.in (ltdll_obj): fixed typo: objdir -> $objdir
23610 1999-12-12 Gary V. Vaughan <gary@gnu.org>
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>.
23618 1999-12-10 Gary V. Vaughan <gary@gnu.org>
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.
23624 1999-12-06 Gary V. Vaughan <gary@gnu.org>
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>.
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
23638 1999-12-03 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
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
23644 Reported by Stephane Conversy <Stephane.Conversy@lri.fr>
23646 * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
23647 works together with fast_install.
23649 * libtool.m4: Use host when --target is not specified.
23651 * configure.in: AC_SUBST variables that are used by ltconfig to
23654 * ltconfig.in (irix6*): Do not override deplibs_check_method
23657 * libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
23659 1999-11-20 Michael Forster <email@michael-forster.de>
23661 * ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes.
23663 1999-11-29 Gary V. Vaughan <gary@gnu.org>
23665 * ltconfig.in: Be friendlier to C++ compilers when testing
23666 for dlopen support.
23667 Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
23669 1999-11-26 Gary V. Vaughan <gary@gnu.org>
23671 * libtool.m4: better use of $target instead of $host to support
23673 Reported by Sam Latinga <slouken@devolution.com>
23675 1999-11-16 Thomas Tanner <tanner@ffii.org>
23677 * configure.in: generate ltconfig and ltmain.sh before configuring
23680 1999-11-04 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
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>
23688 * configure.in: Move ltconfig and ltmain.sh generation back...
23689 * Makefile.am: here.
23691 1999-11-02 Thomas Tanner <tanner@ffii.org>
23694 * THANKS: added Olly Betts and Pavel Roskin
23695 * doc/libtool.texi: fix typo
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
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
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
23712 1999-11-02 Wolfgang Rapp <ulris@bn-ulm.de>
23714 * ltconfig.in: add support for Unixware (sysv4.2uw2*)
23716 1999-10-29 Gary V. Vaughan <gary@gnu.org>
23718 * ltmain.in: Damnit! Cygwin cvs committed all the
23721 1999-10-28 Stephane Conversy <Stephane.Conversy@lri.fr>
23723 * ltmain.in (-DPIC): changed the order of pic flags a little to
23724 prevent upsetting the sgi c++ compiler.
23726 1999-10-28 Olly Betts <olly@muscat.co.uk>
23728 * ltconfig.in (opt_cr): Handle crlf sequences output by the
23731 * libtool.m4: Third time lucky, with Tor's patch.
23733 1999-10-19 Tor Lillqvist <tml@iki.fi>
23735 * libtool.m4: these was a missing `*' in the -mno-cygwin
23737 * ltconfig.in (cygwin, ltdll_obj): fixed a quoting error.
23738 (export_symbols_cmds): added missing cosmetic newline.
23740 1999-10-18 Tor Lillqvist <tml@iki.fi>
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.
23747 1999-10-16 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
23749 * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
23750 specified library is not just a basename.
23752 1999-10-10 Gary V. Vaughan <gary@gnu.org>
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.
23763 1999-10-07 Gary V. Vaughan <gary@gnu.org>
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.
23772 1999-10-06 Gary V. Vaughan <gary@gnu.org>
23775 * ltconfig.in: Accept osf5.
23776 Reported by Sascha Schumann <sascha@schumann.cx>
23778 1999-10-04 Gary V. Vaughan <gary@gnu.org>
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
23785 * ltmain.in (-no-fast-install): Wrapper script used to add the
23786 exeext on again when naming the wrapped executable.
23788 1999-10-03 Gary V. Vaughan <gary@gnu.org>
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
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.
23801 1999-10-03 Thomas Tanner <tanner@ffii.org>
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
23813 1999-10-03 Olly Betts <olly@muscat.co.uk>
23815 * ltmain.in: always create output_objdir
23817 1999-10-03 Pavel Roskin <pavel_roskin@geocities.com>
23819 * libltdl/Makefile.am: don't preserve file attributes when
23820 installing the libltdl sources
23822 1999-10-01 Gary V. Vaughan <gary@gnu.org>
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.
23828 * libtool.m4: be sure to AC_SUBST values no longer tested 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.
23835 1999-09-30 Donald Anderson <dda@world.std.com>
23837 * ltconfig.in (sco3.2v5): use pass_all deplibs_check_method
23840 1999-09-29 Gary V. Vaughan <gary@gnu.org>
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!
23847 1999-09-29 Vadim <vadim@olly.ru>
23849 * ltconfig.in (sysv): More UW7 support.
23851 1999-09-28 Albert Cheng <acheng@ncsa.uiuc.edu>
23853 * ltmain.in (shlibpath_var): ensure the variable is non-empty before
23856 1999-09-27 Manfred Weichel <weichel@global.nacamar.de>
23858 * ltconfig.in (sysv5): Added support required for shared
23859 library linking on SCO UW7.
23861 1999-09-22 Gary V. Vaughan <gary@gnu.org>
23863 * ltconfig.in (whole-archive-flag-spec): test whether the
23864 version of GNU ld being used understands --whole-archive
23867 1999-09-19 Thomas Tanner <tanner@ffii.org>
23869 * ltmain.in: don't ignore convenience libraries for objects/archives
23872 1999-09-14 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
23874 * ltconfig.in (CDPATH): Set to `:' instead of empty.
23875 * ltmain.in (CDPATH): Likewise.
23876 Reported by Greg McGary <gkm@eng.ascend.com>
23878 1999-08-24 Gary V. Vaughan <gary@gnu.org>
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.
23884 1999-08-24 Thomas Tanner <tanner@ffii.org>
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
23895 1999-08-24 Boyd Gerber <gerberb@zenez.com>
23897 * ltconfig.in: add support for UnixWare 7.X.X
23898 * doc/PLATFORMS: add new platforms
23900 1999-08-24 Pavel Roskin <pavel_roskin@geocities.com>
23902 * doc/libtool.texi: document use of noinst_LTLIBRARIES for
23903 convenience libraries
23905 * ltconfig.in: check for freebsdelf3, not just freebsd3.
23906 Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1
23908 * ltmain.in: enable workaround for freebsdelf3.0
23910 1999-08-24 Bert Driehuis <bert_driehuis@nl.compuware.com>
23912 * ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
23914 1999-08-07 Alexandre Oliva <oliva@dcc.unicamp.br>
23916 * libltdl/COPYING.LIB: Update to version 2.1.
23917 * libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.
23919 1999-08-03 Gary V. Vaughan <gary@gnu.org>
23921 * libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return
23923 * ltconfig.in: ditto.
23924 From Olly Betts <olly@muscat.co.uk>
23926 1999-08-02 Olly Betts <olly@muscat.co.uk>
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.
23935 * libtool.m4 (AC_PROG_LD): strip carriage returns from the
23936 output of gcc -print-prog-name=ld.
23937 * ltconfig.in: ditto.
23939 1999-07-30 Pavel Roskin <pavel_roskin@geocities.com>
23941 * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
23942 initialised structures are sometimes emitted in the code section.
23944 1999-07-30 Mumit Khan <khan@xraylith.wisc.edu>
23946 * ltconfig.in: Read line at a time to avoid tokenisation by
23949 1999-07-29 Alexandre Oliva <oliva@dcc.unicamp.br>
23951 * ltmain.in: Fix creation of relative links to object files in
23954 1999-07-29 Olly Betts <olly@muscat.co.uk>
23956 * ltconfig.in(cygwin mingw32, archive_expsym_cmds): Only compile
23957 and link ltdll.c if the libtool.m4 macros discovered that it is
23960 1999-07-26 Olly Betts <olly@muscat.co.uk>
23962 * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops. Fix some
23963 typos made by Evil Gary while (mis)applying my patch :-).
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.
23969 1999-07-24 Erez Zadok <ezk@cs.columbia.edu>
23971 * doc/PLATFORMS (i*86-*openbsd2.5): New platform.
23972 Slight reordering of other bsd entries.
23974 1999-07-24 Olly Betts <olly@muscat.co.uk>
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
23988 1999-07-24 Bert Driehuis <bert_driehuis@compuware.com>
23990 * ltconfig.in: Updated bsdi4 soname specs to be more like
23991 linux as discussed on the bsdi mailing list.
23993 1999-07-20 Gary V. Vaughan <gary@gnu.org>
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
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
24005 * doc/libtool.texi (Invoking ltconfig): Document --build option.
24006 * NEWS: Note --build option.
24008 1999-07-19 Erez Zadok <ezk@cs.columbia.edu>
24010 * doc/PLATFORMS: Updated mostly *bsd platforms.
24012 1999-07-19 Alexandre Oliva <oliva@dcc.unicamp.br>
24014 * doc/libtool.texi (Porting inter-library dependencies): Typos
24015 Reported by Petter Reinholdtsen <pere@hungry.com>
24017 1999-07-17 Thomas Tanner <tanner@ffii.org>
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
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
24033 1999-07-09 Olly Betts <olly@muscat.co.uk>
24035 * doc/libtool.texi (C++ Libraries): fixed a typo.
24037 1999-07-06 Gary V. Vaughan <gary@gnu.org>
24039 * README-alpha: improved the release instructions to mention
24040 actual list addresses for announcements, and urls for upload
24043 1999-07-03 Thomas Tanner <tanner@ffii.org>
24045 * doc/PLATFORMS: 1.3b passes all tests on cygwin
24047 1999-07-03 Pavel Roskin <pavel_roskin@geocities.com>
24049 * ltconfig.in: finish_cmds for FreeBSD removed
24050 * depdemo/l3/Makefile.am: install libl3.la into an extra directory
24052 1999-07-02 Gary V. Vaughan <gary@gnu.org>
24054 * configure.in: bumped version to 1.3c.
24056 GNU libtool 1.3b was released.
24058 * NEWS: inserted todays date.
24060 1999-07-02 Alexandre Oliva <oliva@dcc.unicamp.br>
24062 * doc/PLATFORMS: Tested on as many platforms as possible for me.
24064 1999-07-01 Thomas Tanner <tanner@ffii.org>
24067 * doc/PLATFORMS: updated
24068 * changed my email address
24070 1999-06-30 Thomas Tanner <tanner@ffii.org>
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
24076 1999-06-29 Thomas Tanner <tanner@ffii.org>
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
24098 1999-06-29 Alexandre Oliva <oliva@dcc.unicamp.br>
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>
24104 1999-06-29 Pavel Roskin <pavel_roskin@geocities.com>, Alexandre Oliva <oliva@dcc.unicamp.br>
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.
24109 1999-06-25 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
24115 1999-06-23 Thomas Tanner <tanner@ffii.org>
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)
24123 1999-06-23 Stephan Kulow <coolo@itm.mu-luebeck.de>
24125 * libltdl/ltdl.c (strrchr): fixed typo (missing star)
24126 * libltdl/ltdl.c (trim): use `const' to silence -Wwrite-strings
24128 1999-06-23 Olly Betts <olly@muscat.co.uk>
24130 * ltmain.in (ltdll.c): Support for crosscompiling from linux to
24133 1999-06-23 Gary V. Vaughan <gary@gnu.org>
24135 * ltconfig.in (cygwin, export_symbols_cmds): If there is already
24136 an extracted and compiled ltdll.c, then don't delete, reextract
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.
24143 1999-06-20 Gary V. Vaughan <gary@gnu.org>
24145 * ltconfig.in: moved the test for NM after the test for
24148 1999-06-20 Alexandre Oliva <oliva@dcc.unicamp.br>
24150 * ltconfig.in: Use sed '$q' instead of sed "" for copying ltmain,
24151 just in case some sed does not support an empty command.
24153 * ltconfig.in (link_static_flag, ac_cv_prog_cc_static): Use the
24154 latter in the test.
24156 1999-06-18 Thomas Tanner <tanner@ffii.org>
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
24162 * doc/libtool.texi (Compile and Link mode): document it,
24163 documented the -Wc, -Wl flags, libtool does also support non C
24166 1999-06-18 Teun Burgers <burgers@ecn.nl>
24168 * ltconfig.in: CR/LF fix for broken DJGPP bash
24169 * ltmain.in: CR/LF fix for DJGPP
24171 1999-06-18 Gary V. Vaughan <gary@gnu.org>
24173 * ltmain.in (outputname): When generating the executable wrapper
24174 script, $outputname already has the $exeext suffix, so we needn't
24177 1999-06-16 Gary V. Vaughan <gary@gnu.org>
24179 * libltdl/configure.in (ac_cv_lib_dl_dlopen): missing "x" in test
24180 comparison corrected.
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.
24191 1999-06-15 Gary V. Vaughan <gary@gnu.org>
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.
24198 1999-06-14 Thomas Tanner <tanner@ffii.org>
24200 * ltconfig.in: use eval when setting have_dlfcn_h, reformatting
24202 1999-06-12 Thomas Tanner <tanner@ffii.org>
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)
24210 1999-06-10 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
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>
24222 1999-06-09 Gary V. Vaughan <gary@gnu.org>
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>
24231 1999-06-09 Pavel Roskin <pavel_roskin@geocities.com>
24233 * ltconfig.in (exeext): Use quotes in the test, to prevent a
24234 failure in sh.test.
24236 1999-06-09 Gary V. Vaughan <gary@gnu.org>
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
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
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
24255 1999-06-08 Gary V. Vaughan <gary@gnu.org>
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.
24261 * ltconfig.in (objext): Accept, in order of decreasing preference:
24262 the cached value; the result of a test object compilation.
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.
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.
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.
24282 * ltconfig.in (cygwin, need_version): Set to no, otherwise module
24283 dll's end up with mighty long names!
24285 1999-06-06 Alexandre Oliva <oliva@dcc.unicamp.br>
24287 * ltconfig.in: Support new GNU ld --help output format.
24289 Reported by Gaël Quéri <gael@baoule.dyndns.org> and
24290 H.J. Lu <hjl@varesearch.com>.
24292 1999-06-05 Mark Kettenis <kettenis@gnu.org>
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.
24299 1999-06-02 Nick Rasmussen <nick@jive.org>
24301 * ltmain.in (link): use "$nonopt" as the compiler for
24302 compile/finalize_command
24304 1999-05-27 Alexandre Oliva <oliva@dcc.unicamp.br>
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
24311 1999-05-27 Pavel Roskin <pavel_roskin@geocities.com>
24313 * ltconfig.in (GNU Hurd, deplibs_check_method): Use pass_all.
24315 1999-05-27 Alexandre Oliva <oliva@dcc.unicamp.br>, Olly Betts <olly@muscat.co.uk>
24317 * ltmain.in: Expand convenience libraries when creating reloadable
24321 1999-05-27 Alexandre Oliva <oliva@dcc.unicamp.br>
24323 * NEWS: Mention the two bugfixes below.
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.
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
24335 Reported by Godmar Back <gback@cs.utah.edu>
24337 1999-05-27 David Jones <jones@mosaid.com>
24339 * libltdl/ltdl.c (LTDL_BIND_FLAGS): Remove BIND_VERBOSE, to avoid
24340 printing error messages.
24342 1999-05-26 Alexandre Oliva <oliva@dcc.unicamp.br>
24344 GNU libtool 1.3.2 was released.
24346 1999-05-25 Alexandre Oliva <oliva@dcc.unicamp.br>
24348 * NEWS: List fixed problems.
24349 * doc/PLATFORMS: Tested for 1.3.2.
24351 * config.guess: Synch with GNU common.
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.
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>
24363 1999-05-25 Frank Ch. Eigler <fche@cygnus.com>
24365 * ltmain.in: file_magic check would not avoid cyclic links.
24367 1999-05-25 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
24372 * ltmain.in: Remove object files before writing to them, to avoid
24374 Reported by Ron O'Hara <rono@sentuny.com.au>
24376 1999-05-24 Thomas Tanner <tanner@ffii.org>
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
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"
24386 1999-05-23 Alexandre Oliva <oliva@dcc.unicamp.br>
24388 * doc/PLATFORMS: Release 1.3.1 passes on GNU Hurd/x86.
24389 Reported by Pavel Roskin <pavel_roskin@geocities.com>
24391 1999-05-23 Thomas Tanner <tanner@ffii.org>
24393 * ltmain.in: strip off the .exe suffix only on *Win
24394 (Reported by Matthew D. Langston <langston@SLAC.Stanford.EDU>)
24396 1999-05-22 Thomas Tanner <tanner@ffii.org>
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
24409 1999-05-22 Gary V. Vaughan <gary@gnu.org>
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
24415 * config.sub: synch with gnu common.
24417 1999-05-22 Doug Evans <devans@casey.cygnus.com>
24419 * libltdl/configure.in (dlerror): Fix typo in dlopen found in -ldl
24422 1999-05-21 Pavel Roskin <pavel_roskin@geocities.com>
24424 * Makefile.am (EXTRA_DIST): Don't distribute instutils.
24425 (install-data-hook): use libltdl/Makefile.am's local-install files
24427 * libltdl/Makefile.am (local-install-files): New rule to install
24428 libltdl without creating links or mode 777 directories.
24429 * instutil/*: deleted.
24431 1999-05-21 Alexandre Oliva <oliva@dcc.unicamp.br>
24433 * doc/PLATFORMS: Updated to 1.3.1 for all platforms I've got.
24434 Added sparc-unknown-linux-gnu.
24436 1999-05-21 Gary V. Vaughan <gary@gnu.org>
24438 * demo/foo.h: s/PARAMS/LTDL_PARAMS/g
24439 * libltdl/ltdl.h: ditto.
24440 * libltdl/ltdl.c: ditto.
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>
24447 1999-05-20 Alexandre Oliva <oliva@dcc.unicamp.br>
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
24456 * doc/libtool.texi: Notes about convenience libraries and
24457 automake. Documented INCLTDL.
24459 1999-05-20 Thomas Tanner <tanner@gmx.de>
24461 * cdemo/main.c: "Welcome _to_ ..."
24462 * mdemo/main.c: ditto
24463 * libltdl/configure.in: support multiple dlopening mechanisms
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
24470 1999-05-19 Gary V. Vaughan <gary@gnu.org>
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.
24476 1999-05-18 Gary V. Vaughan <gary@gnu.org>
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.
24482 1999-05-17 Gary V. Vaughan <gary@gnu.org>
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>
24489 1999-05-17 Jiro Takabatake <jiro@din.or.jp>
24491 * ltconfig.in: port to NEC UX/4800.
24494 1999-05-17 Gary V. Vaughan <gary@gnu.org>
24496 * ltconfig.in (beos*, deplibs_check_method): set to pass_all. BeOS
24498 Reported by "Shawn T . Amundson" <amundson@gimp.org>
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>
24504 * demo/foo.h: Don't set any declspecs until we have full dll
24507 1999-05-16 Alexandre Oliva <oliva@dcc.unicamp.br>
24509 * ltconfig.in (solaris2.6, whole_archive_flag_spec): Do not use
24510 -Wl for allextract.
24512 1999-05-14 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
24522 1999-05-09 Gary V. Vaughan <gary@gnu.org>
24526 1999-05-06 Gary V. Vaughan <gary@gnu.org>
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>
24532 1999-04-30 Alexandre Oliva <oliva@dcc.unicamp.br>
24534 * libtool.m4: Use ifelse instead of if.
24535 Reported by David Mazieres <dm@amsterdam.lcs.mit.edu>
24537 1999-04-29 Alexandre Oliva <oliva@dcc.unicamp.br>
24539 GNU Libtool 1.3 was released.
24541 * NEWS: Summarize news from 1.2 to 1.3.
24543 * ltmain.in: Save exit status of link_command before removing
24544 symbol table object file.
24546 1999-04-29 Gary V. Vaughan <gary@gnu.org>
24548 * doc/PLATFORMS: updated my hpux-10.20 and cygwin box entries.
24550 1999-04-29 Alexandre Oliva <oliva@dcc.unicamp.br>
24552 * NEWS: Improved support for DU and IRIX too.
24554 * config.sub, config.guess: Updated from GNU common.
24556 * mdemo/configure.in: Move AC_LIBLTDL_CONVENIENCE before
24557 AM_PROG_LIBTOOL, as suggested by autoconf.
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.
24563 * doc/libtool.texi: Clear up overfull hbox.
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.
24571 1999-04-29 Gary V. Vaughan <gary@gnu.org>
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.
24577 1999-04-29 Alexandre Oliva <oliva@dcc.unicamp.br>
24579 * ltmain.in (nlist, SYMFILE): Use outputname instead of output for
24580 names within output_objdir.
24582 1999-04-28 Alexandre Oliva <oliva@dcc.unicamp.br>
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
24593 1999-04-28 Gary V. Vaughan <gary@gnu.org>
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.
24605 1999-04-27 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
24615 1999-04-27 Thomas Tanner <tanner@gmx.de>
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)
24634 1999-04-27 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
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.
24645 1999-04-27 Gary V. Vaughan <gary@gnu.org>
24647 * ltmain.in (old_archive_cmds): Ensure that there are always .o
24648 objects available before running old_archive_cmds.
24650 1999-04-26 Erez Zadok <ezk@cs.columbia.edu>
24652 * doc/PLATFORMS: Updates for netbsd 1.3.3 and 1.4.
24654 1999-04-26 Alexandre Oliva <oliva@dcc.unicamp.br>
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>
24660 1999-04-25 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
24666 1999-04-25 Frank Ch. Eigler <fche@cygnus.com>
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.
24672 * ltconfig.in (cygwin*, deplibs_check_method): Accept
24673 "architecture: i386" as optional suffix, for it is printed on a
24674 separate line sometimes.
24676 * ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C".
24678 * ltmain.in (deplibs_check_method=file_magic): Redirect stderr to
24679 /dev/null, to suppress error messages from target objdump.
24681 1999-04-25 Alexandre Oliva <oliva@dcc.unicamp.br>
24683 * ltconfig.in (irix*, soname_spec, library_names_spec): Missing
24684 dots before $versuffix and $major.
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>
24690 * ltconfig.in (beos*, allow_undefined_flag): Do not build shared
24691 libraries with undefined symbols.
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>
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.
24707 * ltconfig.in (irix*, osf*, archive_cmds): Write so_locations
24710 * ltconfig.in (irix*, soname_spec): Append $major.
24711 (irix*, library_names_spec): Add new soname.
24712 Reported by David Kaelbling <drk@sgi.com>
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.
24719 * ltconfig.in (irix5*, need_lib_prefix, need_version): Set to no,
24720 by unifying with irix6*.
24722 * ltconfig.in (irix*, osf*, deplibs_check_method): Use pass_all.
24724 * ltconfig.in (old_LDFLAGS, old_LIBS): Save and write to comments
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.
24732 1999-04-25 Boyd Lynn Gerber <gerberb@zenez.com>
24734 * ltconfig.in (sco3.2v5*): Use LD_RUN_PATH for hard-coding.
24736 1999-04-25 Pavel Roskin <pavel_roskin@geocities.com>
24738 * Makefile.am (uninstall-local): Remove installed libltdl tree.
24740 1999-04-25 Alexandre Oliva <oliva@dcc.unicamp.br>
24742 * demo/Makefile.am (hc-direct, hc-libflag, hc-libpath, hc-minusl):
24743 Added CFLAGS to link commands; SCO OSR needs it for -belf.
24745 * TODO: -Wl and -Wc options.
24747 1999-04-12 Alexandre Oliva <oliva@dcc.unicamp.br>
24749 * libltdl/ltdl.c: Remove trivial warnings.
24751 1999-04-22 Frank Ch. Eigler <fche@cygnus.com>
24753 * ltconfig.in: Correct sed expression that extracts symbols
24754 from cygwin def files. Ignore demangled C++ names, if any.
24756 1999-04-12 John David Anglin <dave.anglin@nrc.ca>
24758 * libltdl/ltdl.c (shl_close): shl_t was correct here...
24759 (shl_sym): ... but we have to pass the handle by reference here.
24761 1999-04-12 Alexandre Oliva <oliva@dcc.unicamp.br>
24763 * doc/libtool.texi (Invoking ltconfig): Document environment
24766 * doc/libtool.texi (Invoking ltconfig): Document --cache-file.
24768 * doc/libtool.texi (Invoking ltconfig): Document
24769 --disable-fast-install, --enable-dlopen, --with-gnu-ld and
24772 1999-04-11 Thomas Tanner <tanner@gmx.de>
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
24783 1999-04-10 Alexandre Oliva <oliva@dcc.unicamp.br>
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>
24790 * ltconfig.in (Usage): Removed --enable-dlopen-self.
24791 Reported by Pavel Roskin <pavel_roskin@geocities.com>
24793 * ltconfig.in: Moved sysv4 before sysv4.*.
24794 (symcode): Brian's overrider is specific to sysv4, not sysv4*.
24796 1999-04-09 Thomas Tanner <tanner@gmx.de>
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
24803 * doc/libtool.texi: some cleanups in the libltdl documentation
24805 1999-04-07 Alexandre Oliva <oliva@dcc.unicamp.br>
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>
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.
24819 1999-04-07 Thomas Tanner <tanner@gmx.de>
24821 * NEWS: support for moved libraries
24822 * libtool.m4: another DJGPP fix
24824 1999-04-07 Alexandre Oliva <oliva@dcc.unicamp.br>
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
24830 * doc/libtool.texi (Compile mode): Document potential problem and
24831 work-around for `-c -o dir/foo.lo'.
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.
24841 1999-04-06 Alexandre Oliva <oliva@dcc.unicamp.br>
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
24848 * tests/Makefile.am (CLEANFILES): Added libtool-*, created by
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.
24859 1999-04-06 Thomas Tanner <tanner@gmx.de>
24861 * ltmain.in: added a missing line of the ILD patch
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
24871 1999-04-05 Alexandre Oliva <oliva@dcc.unicamp.br>
24873 * ltconfig.in (netbsd*, GNU ld): Support a.out shared libraries
24875 * Makefile.am (CVS): allow command-line overriding of cvs
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
24883 1999-04-05 Thomas Tanner <tanner@gmx.de>
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
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
24895 1999-04-04 Alexandre Oliva <oliva@dcc.unicamp.br>
24897 * ltconfig.in (sunos4*, GNU ld): -Bstatic is not enough for
24898 deplibs.test to work with GNU ld; -Bshareable is needed here.
24900 * ltconfig.in (ld_shlibs, amigaos*): Disable shared libs with
24903 * ltconfig.in (sunos4*, GNU ld): Reordered.
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.
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
24915 1999-04-03 Alexandre Oliva <oliva@dcc.unicamp.br>
24917 * NEWS: improved support for AIX and HP/UX
24919 1999-04-03 Thomas Tanner <tanner@gmx.de>
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...),
24926 1999-04-02 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
24933 * ltmain.in (-L*): do not abort just because a directory specified
24934 with -L does not exist; just warn and discard it
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
24941 * ltconfig.in (archive_cmds, sunos4*): where we used -Bstatic, we
24942 should have been using -Bshareable
24944 * demo/Makefile.am (CLEANFILES): clean EXTRA_* from deplibs-check
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
24952 1999-04-02 Erez Zadok <ezk@cs.columbia.edu>
24954 * doc/PLATFORMS: 1.2f ok on various versions of hpux cc
24956 1999-04-02 Alexandre Oliva <oliva@dcc.unicamp.br>
24958 * ltconfig.in (link_all_deplibs): set to unknown by default
24959 * ltmain.in: test != no, not = yes
24960 * doc/libtool.texi: document unknown
24962 1999-04-01 Thomas Tanner <tanner@gmx.de>
24964 * doc/libtool.texi: documented deplibs.test
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
24979 1999-03-31 Thomas Tanner <tanner@gmx.de>
24981 * ltmain.in: always link a library before its dependency libs
24982 * mdemo/Makefile.am: test -export-symbols-regex
24984 1999-03-30 Thomas Tanner <tanner@gmx.de>
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
25005 1999-03-30 Alexandre Oliva <oliva@dcc.unicamp.br>
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>
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
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
25020 1999-03-29 Gary V. Vaughan <gary@gnu.org>
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.
25027 1999-03-27 Thomas Tanner <tanner@gmx.de>
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,
25047 1999-03-25 Alexandre Oliva <oliva@dcc.unicamp.br>
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
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
25062 1999-03-25 Gary V. Vaughan <gary@gnu.org>
25064 * ltmain.in ($PATH): Expand any tildes in the users path to the
25065 contents of $HOME to avoid problems with *_cmds splitting and
25068 1999-03-24 Thomas Tanner <tanner@gmx.de>
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
25082 1999-03-24 Alexandre Oliva <oliva@dcc.unicamp.br>
25084 * ltconfig.in (ld_shlibs, amigaos*): disable shared libraries
25086 1999-03-23 Gary V. Vaughan <gary@gnu.org>
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.
25095 * TODO (cygwin): food for thought re: mutually dependant dlls.
25097 1999-03-21 Alexandre Oliva <oliva@dcc.unicamp.br>
25099 * tests/build-relink.test: if we relink and have hardcode_direct,
25100 removing an uninstalled library breaks an uninstalled program
25102 * doc/libtool.texi: documented convenience libraries
25103 * TODO: removed entry about it
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
25109 1999-03-20 Thomas Tanner <tanner@gmx.de>
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
25125 1999-03-19 Thomas Tanner <tanner@gmx.de>
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
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)
25146 1999-03-19 Alexandre Oliva <oliva@dcc.unicamp.br>
25148 * ltconfig.in (sunos4*, with_gnu_ld, hardcode_minus_L): remove, we
25150 (aix4*, without_gnu_ld, hardcode_shlibpath_var): unsupported is
25152 (hpux9*, hpux10*, hpux11*, archive_cmds): drop +s, unneeded here
25153 (hpux9*, hpux10*, hpux11*, hardcode_libdir_flag_spec): add +s
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
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
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.
25176 * doc/libtool.texi: reorder tests to reflect execution order
25178 * tests/noinst-link.test: new test
25179 * tests/Makefile.am (TESTS): added noinst-link.test
25180 * doc/libtool.texi: document it
25182 1999-03-19 Gary V. Vaughan <gary@gnu.org>
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!!
25188 1999-03-18 Thomas Tanner <tanner@gmx.de>
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
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
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
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
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
25239 1999-03-17 Gary V. Vaughan <gary@gnu.org>
25241 * doc/PLATFORMS: Thanks to Alexandres changes below, both my
25242 hp boxes pass the entire test suite.
25244 1999-03-17 Alexandre Oliva <oliva@dcc.unicamp.br>
25246 * ltconfig.in (hpux*, hardcode_minus_L): should be no, we have +b
25247 (hpux*, hardcode_libdir_separator): set to colon
25249 1999-03-17 Alexandre Oliva <oliva@dcc.unicamp.br>
25251 * doc/PLATFORMS: egcs is gcc; updates from Erez Zadok
25253 1999-03-16 Alexandre Oliva <oliva@dcc.unicamp.br>
25255 * ltmain.in (deplibs, beos*): don't append -lc
25256 Reported by Xavier Pianet <xavier@xingo.com>
25258 * tests/build-relink.test (hardcode_action): when set to relink,
25259 skip the test with lt-hell
25261 * Makefile.am (EXTRA_DIST): add mkstamp
25262 Reported by Xavier Pianet <xavier@xingo.com>
25264 * Makefile.am (EXTRA_DIST): add ChangeLog.0
25266 1999-03-16 Thomas Tanner <tanner@gmx.de>
25268 * doc/libtool.texi: some minor corrections to the "-dlopen self"
25270 * tests/Makefile.am: sorted by name, added assign.test
25271 * ChangeLog: started new file
25273 * ltconfig.in: some cosmetical changes
25276 1999-03-15 Alexandre Oliva <oliva@dcc.unicamp.br>
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
25282 * configure.in, libtool.spec: bump to 1.2f
25283 * doc/PLATFORMS: ditto
25284 * NEWS: libtool 1.2f released
25286 * ltmain.in: silence ``unbug'' :-) detected by sh.test
25288 1999-03-14 Alexandre Oliva <oliva@dcc.unicamp.br>
25290 * TODO: we now use full pathnames for `file'
25292 1999-03-14 Thomas Tanner <tanner@gmx.de>
25294 * TODO: libltdl is now documented
25295 * doc/libltdl.texi (linking with installed libtool libraries):
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)
25302 1999-03-14 Alexandre Oliva <oliva@dcc.unicamp.br>
25304 * ltmain.in (deplibs_check_method=none): discard -L and -R
25305 switches when testing whether deplibs contains some library
25307 1999-03-14 Erez Zadok <ezk@cs.columbia.edu>
25309 * config.sub: recognize hppa2.0w, yet to be installed at GNU
25311 * config.guess: minor update for FreeBSD-elf, yet to be installed
25314 1999-03-14 Alexandre Oliva <oliva@dcc.unicamp.br>
25316 * ltconfig.in (bsdi4*, sys_lib_search_path_spec,
25317 sys_lib_dlsearch_path_spec): fix thinko in variable names; add
25318 standard directories
25320 * ltmain.in (exclude_expsyms): exclude symbols before sorting,
25321 otherwise only the sorted list will have them excluded
25323 * ltconfig.in (file_magic_cmd, file_magic_test_file, freebsd-elf*,
25324 bsdi4*): use full pathnames when possible
25326 * Makefile.am (all-recursive): depend on ACINCLUDE_M4_LIST
25327 (all-local, check-local): remove, unused
25329 * doc/PLATFORMS: updated platforms tested on 1.2f-pre; clean up;
25332 * config.guess, config.sub: updated from GNU common
25334 * doc/libtool.texi: notes on thread-safety problems of
25335 libltdl/dlopen on GNU/Linux and FreeBSD
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.
25341 1999-03-13 Alexandre Oliva <oliva@dcc.unicamp.br>
25343 * ltconfig.in (global_symbol_to_cdecl): was reset before trying
25344 `symprfx=_', rendering the test with `_' useless
25346 * doc/libtool.texi (AM_PROG_LIBTOOL): eliminate overfull boxes
25348 * doc/libtool.texi: complete dlopening/libltdl documentation
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
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
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
25365 Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
25367 * tests/sh.test: look for `$Xsed' without `$echo "X...'
25368 * ltconfig.in, ltmain.in: fixed a few such occurrences
25370 * ltmain.in (-static, -all-static): revert March 11's patch, I was
25371 barking up the wrong tree
25373 1999-03-12 Thomas Tanner <tanner@gmx.de>
25375 * libltdl/ltdl.c: removed FILENAME_MAX since LTDL_FILENAME_MAX
25376 is sufficient and doesn't break HP/UX
25378 1999-03-11 Alexandre Oliva <oliva@dcc.unicamp.br>
25380 * ltconfig.in: (global_symbol_pipe) extract symbol tag from the
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
25392 * ltmain.in (-static, -all-static): set dlopen_self to
25393 $dlopen_self_static regardless of link_static_flag or pic_flag
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
25398 1999-03-11 Thomas Tanner <tanner@gmx.de>
25400 * ltmain.in: when building a library it doesn't make
25401 sense to remove a relinked program ("lt-" prefix)
25403 1999-03-11 Alexandre Oliva <oliva@dcc.unicamp.br>
25405 * mdemo/main.c (main, test_dl, test_dlself): propagate error
25406 conditions better, to avoid false positives
25408 * */configure.in: AC_SUBST(LIBTOOL_DEPS)
25409 * */Makefile.am $(OBJECTS): depend on libtool
25410 (libtool): rebuild automatically
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
25416 1999-03-11 Thomas Tanner <tanner@gmx.de>
25418 * ltmain.in: delete the old output files (incl. the relinked binary)
25421 * ltconfig.in: replaced `configure' with $progname and all
25422 line numbers with @LINENO@
25424 1999-03-11 Alexandre Oliva <oliva@dcc.unicamp.br>
25426 * libltdl/ltdl.c (strdup): cannot return str when it's NULL
25427 because of const correctness
25429 1999-03-10 Alexandre Oliva <oliva@dcc.unicamp.br>
25431 * libltdl/ltdl.c (strdup): always use our own, because the
25432 standard strdup won't use lt_dlmalloc
25434 * ltconfig.in (dlfcn.h): function definition may cause warnings;
25435 define variable instead
25437 * ltmain.in: properly create an export file for a program,
25438 avoiding error messages about not finding it
25440 * TODO: need to document AC_LIBLTDL_*; static self dlopening
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
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
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.
25463 * mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h
25465 * configure.in: fix AC_OUTPUT_COMMANDS for ltconfig and ltmain.sh
25466 so that they work if srcdir is relative too
25468 * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
25469 avoid introducing multiple --enable options when re-running
25471 * libltdl/configure.in: if enable_ltdl_* is not set, assume no
25472 * configure.in: if enable_ltdl_install is not set, enable it
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.
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
25486 * ltconfig.in: support --cache-file switch. If it is used, load
25487 the cache in the beginning and save it just before terminating
25489 * tests/Makefile.am (TESTS): run demo-nofast before demo-shared
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>
25495 1999-03-10 Thomas Tanner <tanner@gmx.de>
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
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)
25513 1999-03-10 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
25519 1999-03-09 Alexandre Oliva <oliva@dcc.unicamp.br>
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
25526 * ltmain.in: $output_objdir/$objdir/ -> $output_objdir/lt-
25528 1999-03-09 Thomas Tanner <tanner@gmx.de>
25530 * libltdl/ltdl.c (lt_dlopen): don't hardcode the length of the
25533 1999-03-09 Alexandre Oliva <oliva@dcc.unicamp.br>
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
25538 * libtoolize.in (ltdl, ltdl_tar): update
25540 * configure.in, Makefile.am, NEWS: install libltdl by default
25542 * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
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@
25551 1999-03-09 Gary V. Vaughan <gary@gnu.org>
25555 1999-03-08 Alexandre Oliva <oliva@dcc.unicamp.br>
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
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
25566 * TODO: remember to fix this later
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
25572 * ltmain.in (hardcode_libdir_separator, compile_rpath,
25573 finalize_rpath): only substitute hardcode_libdir_flag_spec if
25574 hardcode_libdirs is non-empty
25576 * libtool.m4 (AC_LIBTOOL_DLOPEN): do not depend on the existence
25577 of dlfcn.h nor on the definition of RTLD_LAZY
25579 * tests/build-relink.test: hellT was renamed to lt-hell
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.
25585 1999-03-08 Thomas Tanner <tanner@gmx.de>
25587 * doc/libtool.texi (tests): documented demo-nofast.test and
25588 renamed cdemo* to demo*
25590 1999-03-08 Alexandre Oliva <oliva@dcc.unicamp.br>
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
25597 * tests/build-relink.test: link broken libhello.la with at least
25600 1999-03-08 Thomas Tanner <tanner@gmx.de>
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
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
25615 1999-03-07 Alexandre Oliva <oliva@dcc.unicamp.br>
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
25622 * ltmain.in (compile_command): append finalize search path to
25623 compile search path
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
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
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
25640 * ltconfig.in (enable_fast_install): test whether it can be forced
25641 off after shlibpath_overrides_runpath and enable_shared are set
25643 1999-03-07 Thomas Tanner <tanner@gmx.de>
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
25659 1999-03-06 Alexandre Oliva <oliva@dcc.unicamp.br>
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>
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>
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.
25674 1999-02-26 Gary V. Vaughan <gary@gnu.org>
25676 * libtool.m4 (cygwin): s/\\(mingw\\|cygwin\\)32/\\1/g. Must've
25677 missed this file when I changed to cygnus' new sanction name.
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.
25684 1999-02-25 Thomas Tanner <tanner@gmx.de>
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)
25691 1999-02-24 Alexandre Oliva <oliva@dcc.unicamp.br>
25693 * ltmain.in (file_magic_regex): sed `10q' is faster than `11,$d'
25695 1999-02-22 Thomas Tanner <tanner@gmx.de>
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
25702 1999-02-22 Alexandre Oliva <oliva@dcc.unicamp.br>
25704 * ltmain.in: added missing mkdir $progdir for on-demand executable
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.
25718 * TODO: removed ILD, soon to be merged, and added convenience
25721 * ltconfig.in (irix5*, irix6*, shlibpath_overides_runpath): yes
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
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>
25733 * ltmain.in: fix typos in my last change (s/ocmpile/compile/)
25735 1999-02-21 Thomas Tanner <tanner@gmx.de>
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
25745 1999-02-20 Alexandre Oliva <oliva@dcc.unicamp.br>
25747 * ltmain.in: avoid duplication of -L switches, it sometimes breaks
25750 * ltconfig.in (freebsd*, finish_cmds): expand objformat here
25751 Reported by Vladimir Kushnir <kushn@mail.kar.net>
25753 1999-02-20 Vladimir Kushnir <kushn@mail.kar.net>
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
25759 1999-02-20 Alexandre Oliva <oliva@dcc.unicamp.br>
25761 * doc/libtool.texi: remove ticks from menu items; it breaks TeX
25762 Reported by Erez Zadok <ezk@cs.columbia.edu>
25764 * ltmain.in: fixes for export-symbols dry-run
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
25775 * doc/libtool.texi: document it
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.
25787 1999-02-20 Archie Cobbs <archie@whistle.com>
25789 * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
25790 where appropriate, when dlopening a non-libtool library
25792 1999-02-19 Gary V. Vaughan <gary@gnu.org>
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
25802 (delay_variable_subst): New sed expression to allow us to delay
25803 evaluation of $foo in a double_quote_subst evaluated variable by
25805 * ltmain.in (export_symbols_cmds): evaluate each ~ delimitted cmd
25807 * doc/libtool.texi (libtool script contents): new paragraph to
25808 explain the difference between _cmd and _cmds suffixes for
25810 (export_symbols_cmds): renamed from export_symbols_cmd.
25812 1999-02-18 Alexandre Oliva <oliva@dcc.unicamp.br>
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
25819 * ltconfig.in (openbsd*, netbsd*, library_names_spec): append
25820 alternate name without ${release}, otherwise build fails when
25823 1999-02-18 Gary V. Vaughan <gary@gnu.org>
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.
25834 * ltmain.in (version_type): Oops. Irix versioning implies that
25835 major version numbers are 1 based (not zero based). Fixed.
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.
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...
25846 1999-02-18 Thomas Tanner <tanner@gmx.de>
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
25860 1999-02-17 Alexandre Oliva <oliva@dcc.unicamp.br>
25862 * ltconfig.in: (freebsd2*, sunos4*, exclude_expsyms): exclude
25863 _GLOBAL_OFFSET_TABLE_
25864 * ltmain.in: implement exclude_expsyms with egrep
25866 * libltdl/ltdl.c (lt_dlmalloc, lt_dlfree): SunOS' cc can't cope
25867 with argument lists, we __P even in the definition
25869 1999-02-15 Thomas Tanner <tanner@gmx.de>
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)
25888 1999-02-15 Gary V. Vaughan <gary@gnu.org>
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.
25896 1999-02-14 Alexandre Oliva <oliva@dcc.unicamp.br>
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)
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
25908 1999-02-13 Thomas Tanner <tanner@gmx.de>
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
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
25926 1999-02-12 Gary V. Vaughan <gary@gnu.org>
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.
25932 1999-02-12 Alexandre Oliva <oliva@dcc.unicamp.br>
25934 * ltmain.in: don't try to read objdir/libname.la before it is
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>
25941 * libltdl/ltdl.c (tryall_dlopen): strcmp filenames was reversed
25943 1999-02-11 Thomas Tanner <tanner@gmx.de>
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)
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
25963 1999-02-10 Alexandre Oliva <oliva@dcc.unicamp.br>
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
25972 1999-02-08 Alexandre Oliva <oliva@dcc.unicamp.br>
25974 * ltconfig.in (irix5*, irix6*, deplibs_check_method): use
25975 file_magic for inter-library dependency tracking
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.
25982 * ltconfig.in (irix5*, library_names_spec): add soname_spec,
25983 otherwise we can't dlopen
25985 1999-02-08 Thomas Tanner <tanner@gmx.de>
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
25992 1999-02-04 Alexandre Oliva <oliva@dcc.unicamp.br>
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='
26005 * libltdl/ltdl.c (find_module): initialize filename if dir is NULL
26006 Reported by Godmar Back <gback@cs.utah.edu>
26008 1999-02-04 Godmar Back <gback@cs.utah.edu>
26010 * libltdl/ltdl.c (lt_dlopenext): missing space for terminator when
26011 allocating memory for shlib_ext
26013 1999-02-03 Alexandre Oliva <oliva@dcc.unicamp.br>
26015 * libltdl/ltdl.c (lt_dlopenext): tmp would be trashed if shlib_ext
26016 was longer than 3 characters
26018 1999-02-02 Gary V. Vaughan <gary@gnu.org>
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
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.
26030 1999-01-28 Gary V. Vaughan <gary@gnu.org>
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>
26042 1999-01-27 Alexandre Oliva <oliva@dcc.unicamp.br>
26044 * libtoolize.in: search for A[MC]_PROG_LIBTOOL, not
26046 Reported by Jeff Garzik <jgarzik@pobox.com>
26048 1999-01-27 Gary V. Vaughan <gary@gnu.org>
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."
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>
26064 1999-01-27 Alexandre Oliva <oliva@dcc.unicamp.br>
26066 * libltdl/ltdl.c (find_file): fix endless loop condition
26067 (find_module): filename allocation was off by 1
26069 * libltdl/Makefile.am (distclean-local): renamed from
26070 distclean-hook, that didn't work
26072 * libltdl/ltdl.c (lt_dlopen, non-.la): find_file now returns 0 on
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
26079 * libltdl/Makefile.am (@TOINST@/libltdl.la): if installation is
26080 enabled, create to-be-installed libltdl.la within @TOINST@
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
26090 * libltdl/ltdl.c (find_file): oops, filenamesize was miscomputed
26092 * libltdl/ltdl.c (find_file): allocate filename dynamically
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
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
26109 * configure.in (pkgdatadir): expand ${PACKAGE} at configure-time,
26110 just like automake does
26112 * configure.in (pkgdatadir): define pkgdatadir explicitly, and
26113 comment that automake does not need it, but libtoolize does
26115 * Makefile.am (aclocaldir): do not set it explicitly, automake
26118 * configure.in (TIMESTAMP): use mkstamp here too
26120 1999-01-27 Thomas Tanner <tanner@gmx.de>
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
26137 * ltmain.in: added -thread-safe flag (unused)
26139 1999-01-26 Alexandre Oliva <oliva@dcc.unicamp.br>
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
26147 * ltconfig.in (LTCONFIG_VERSION): add TIMESTAMP, remove
26148 explicit quotes and add it to the list of variables to quote
26150 * ltmain.in: reworded `dropped inter-library dependencies'
26151 message, and added a warning about inter-library dependencies even
26152 for non-module builds
26154 1999-01-26 Gary V. Vaughan <gary@gnu.org>
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
26161 * configure.in: It seems Alexandre accidentally removed the
26162 AC_SUBST(pkgdatadir) line recently which breaks libtoolize.
26163 Reverted that small change.
26165 1999-01-25 Alexandre Oliva <oliva@dcc.unicamp.br>
26167 * libltdl/ltdl.c (find_module): test old_name and dlname for NULL,
26170 * libltdl/configure.in (libltdl_cv_objdir): yes, appending the "/"
26171 in configure.in was much simpler
26172 * libltdl/ltdl.c (objdir): ditto
26174 * libltdl/ltdl.c (objdir): string collation isn't portable; strcat
26175 "/" explicitly. Or should this be moved to configure.in?
26177 1999-01-25 Thomas Tanner <tanner@gmx.de>
26179 * libltdl/ltdl.c: allocate the variables in lt_dlopen() dynamically
26181 1999-01-25 Alexandre Oliva <oliva@dcc.unicamp.br>
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>
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
26197 * ltconfig.in (freebsd2.2*, hardcode_minus_L): for FreeBSD 2.2.6,
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
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...
26211 * ltmain.in (pass_all=none, droppeddeps): set only if deplibs was
26214 1999-01-24 Thomas Tanner <tanner@gmx.de>
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
26222 1999-01-24 Thomas Tanner <tanner@gmx.de>
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
26243 1999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br>
26245 * Makefile.am (ltconfig, ltmain.sh): add ChangeLog Revision to
26247 * configure.in: get values of PACKAGE and VERSION set by
26248 AM_INIT_AUTOMAKE, and extract only TIMESTAMP from the ChangeLog
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>
26255 * Makefile.am (ltconfig, ltmain.sh, TIMESTAMP): let's not assume
26256 anything about the format of the date, just that it does not
26259 1999-01-22 Gary V. Vaughan <gary@gnu.org>
26261 * configure.in (date): echo the version number during
26262 configuration, and show $date for cvs versions.
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
26269 ($(srcdir)/ltmain.sh): ditto.
26271 1999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br>
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
26282 1999-01-22 Gary V. Vaughan <gary@gnu.org>
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
26288 * doc/PLATFORMS: Removed i686-pc-cygwin32, for the same reason.
26289 * doc/libtool.texi: Removed win32 refs, for the same reason.
26291 1999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br>
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>
26298 1999-01-22 Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
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
26305 1999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br>
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
26312 * demo/configure.in, demo/Makefile.am (DLPREOPEN): reverted; it
26313 didn't make any difference.
26315 1999-01-21 Gary V. Vaughan <gary@gnu.org>
26317 * THANKS: Added Chris Laas <golem@MIT.EDU>
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
26324 1999-01-21 Alexandre Oliva <oliva@dcc.unicamp.br>
26326 * libltdl/configure.in: reintroduce code to detect native library
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
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
26338 * ltconfig.in (linux-gnu*, finish_cmds): remove erroneous backslash
26340 * demo/configure.in: set DLPREOPEN to -dlopen if we don't have
26342 * demo/Makefile.am (DLPREOPEN): use instead of -dlpreopen
26343 (STATIC): use $(STATIC), not @STATIC@
26344 * mdemo/Makefile.am (STATIC): ditto
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
26356 1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
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
26362 1999-01-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
26364 * ltconfig.in (aix4*, with_gcc, archive_cmds): fix typo in Andrey
26365 Slepuhin's last patch
26367 1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
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
26374 1999-01-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
26376 * ltconfig.in: No known version of Solaris 2 hardcoded -L paths.
26378 1999-01-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
26380 * ltmain.in: s/n\'t/ not/
26381 * doc/PLATFORMS: updates for sunos4/m68k and aix
26383 1999-01-20 Andrey Slepuhin <pooh@msu.ru>
26385 * ltconfig.in (aix4*): check for reworked collect2, always pass
26386 -bnoentry option to linker when building a shared library
26388 1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
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>
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
26399 * THANKS: Added Steven Schultz
26401 1999-01-20 Steven M. Schultz <sms@wlv.iipo.gtegsc.com>
26403 * ltconfig.in (bsdi4*, check_shared_deplibs_method): file_magic
26404 (bsdi4*, sys_lib_search_path): add /shlib and other dirs
26406 1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
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
26412 * ltmain.in (dlsyms): #define const to nothing if not __STDC__
26414 * ltconfig.in (global_symbol_pipe): #define const to nothing if
26417 * demo/dlmain.c (main): cast s->address to the appropriate pointer
26418 types, otherwise StunOS4's cc refuses to compile it
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
26424 * demo/dlmain.c (main): add missing const to declaration of name
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
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))
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
26443 * mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove
26445 1999-01-20 Gary V. Vaughan <gary@gnu.org>
26447 * TODO: Added inter-library deps for ltlibs.
26449 * THANKS: Added Vladimir Kushnir.
26451 1999-01-20 Vladimir Kushnir <kushn@mail.kar.net>
26453 * ltconfig.in (freebsd3*): Define `deplibs_check_method' and
26454 `file_magic_command' for freebsd-elf.
26456 1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
26458 * TODO: should we also build a `static' copy of a convenience
26459 library out of .o files?
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*)
26465 * THANKS: added Manfred Weichel
26467 1999-01-20 Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
26469 * ltconfig.in (sysv5*): same as sysv4.3*
26471 1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
26473 * libltdl/ltdl.c (lt_dlopen): properly detect error condition when
26474 full pathname of non-libtool library is provided
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...
26483 * libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to
26484 declare lt_preloaded_symbols
26485 * doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto
26487 * ltmain.in (dlpredeps): removed, reverting 1999-01-17's change
26489 1999-01-19 Alexandre Oliva <oliva@dcc.unicamp.br>
26491 * libltdl/Makefile.am (Makefile): depend on libtool
26493 * ltmain.in (lt_preloaded_setup): function added to symbol list
26494 source file to work around FreeBSD problem
26496 * Makefile.am (check-local): depend on libltdl/Makefile
26498 * mdemo/Makefile.am (mdemo_LDFLAGS, mdemo_LDADD): moved -dlopen
26500 * doc/libtool.texi (Using Automake): how to add -dlopen to LDADD
26502 1999-01-19 Gary V. Vaughan <gary@gnu.org>
26504 From Andrey Slepuhin <pooh@msu.ru>
26505 * ltmain.in (hardcode_action) Oops, misapplied the patch!
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.
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.
26516 1999-01-18 Alexandre Oliva <oliva@dcc.unicamp.br>
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
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>
26529 1999-01-17 Thomas Tanner <tanner@gmx.de>
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
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()
26578 1999-01-17 Alexandre Oliva <oliva@dcc.unicamp.br>
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}'
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
26588 * ltmain.in (dlpredeps): append dependencies from dlopened modules
26589 (but not dlpreopened ones) after all explicitly linked libraries
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
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
26612 1999-01-15 Gary V. Vaughan <gary@gnu.org>
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.
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
26623 * THANKS: added Andrey Slepuhin <pooh@msu.ru>.
26625 1999-01-15 Thomas Tanner <tanner@gmx.de>
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)
26631 1999-01-14 Thomas Tanner <tanner@gmx.de>
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
26641 1999-01-14 Alexandre Oliva <oliva@dcc.unicamp.br>
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
26648 1999-01-14 Thomas Tanner <tanner@gmx.de>
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
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
26659 1999-01-14 Gary V. Vaughan <gary@gnu.org>
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
26665 * ltconfig.in: Use PATH_SEPARATOR instead of hardcoded `:'.
26666 Reported by Mark Elbrecht <snowball3@usa.net>
26668 * cdemo/README: typo: mdemo->cdemo
26670 1999-01-14 Thomas Tanner <tanner@gmx.de>
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
26691 1999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br>
26693 * mdemo/Makefile.am (../libltdl/libtool): mkdir and configure
26696 1999-01-13 Thomas Tanner <tanner@gmx.de>
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
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
26721 1999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br>
26723 * doc/libtool.texi (Test descriptions): cdemo-static works, thanks
26724 to Edouard Parmelan!
26726 * THANKS: added Sebastian Wilhelmi
26728 * ltconfig.in (solaris): define `need_version' to no
26730 1999-01-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
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).
26739 1999-01-13 Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
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
26750 1999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
26763 * ltmain.in (old_archives, oldobjs): use find to SYMDEF here too
26765 * Makefile.am (@DIST_MAKEFILE_LIST@): `$' must be doubled
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),
26783 (@DIST_MAKEFILE_LIST@): create subdir if needed, then run
26785 On-demand configuration of subdirs at distribution time was
26786 suggested by Gary V. Vaughan <gary@gnu.org>
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
26793 * THANKS: added Raffaele Sena
26795 1999-01-13 Raffaele Sena <raff@aromatic.com>
26797 * libltdl/ltdl.c: replaced RTDL with RTLD
26799 1999-01-13 Manish Singh <yosh@gimp.org>
26801 * ltconfig.in (osf3*, osf4*, irix6*): include
26802 ${libname}{release}.so for library_names_spec
26804 1999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br>
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
26815 1999-01-13 Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
26817 * ltmain.in: fix convenience libraries when static libraries
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.
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.
26829 1999-01-12 Thomas Tanner <tanner@gmx.de>
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
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
26843 1999-01-12 Gary V. Vaughan <gary@gnu.org>
26845 * configure.in (ltdl-install): Fixed up the indentation so that
26846 `configure --help' is pretty again.
26848 1999-01-11 Alexandre Oliva <oliva@dcc.unicamp.br>
26850 * ltmain.in, NEWS, doc/libtool.texi: Added support for -R flag
26851 * ltmain.in, doc/libtool.texi: documented that -rpath is the same
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
26857 * ltconfig.in (symxfrm): don't print $pipe_works twice, once for
26859 Reported by Godmar Back <gback@cs.utah.edu>
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
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
26869 * libtool.m4 (AM_SYS_NM_PARSE): need for underscore prefix is now
26870 auto-detected, by trying first without, then with it.
26872 * ltconfig.in: ditto
26874 1999-01-10 Alexandre Oliva <oliva@dcc.unicamp.br>
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,
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
26893 * tests/mdemo-exec.test: renamed libfoo1.la to foo1.la
26894 * tests/mdemo-inst.test: ditto
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
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.
26906 1999-01-10 Thomas Tanner <tanner@gmx.de>
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
26918 1999-01-09 Alexandre Oliva <oliva@dcc.unicamp.br>
26920 * libltdl/ltdl.c (lt_dlopen): missing strlen in bound test
26922 1999-01-09 Thomas Tanner <tanner@gmx.de>
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()
26937 1999-01-08 Gary V. Vaughan <gary@gnu.org>
26939 * doc/libtool.texi (old_archive_from_new_commands): Documented
26940 this ltcofig variable.
26942 1999-01-07 Gary V. Vaughan <gary@gnu.org>
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.
26951 1999-01-06 Thomas Tanner <tanner@gmx.de>
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
26958 1999-01-06 Gary V. Vaughan <gary@gnu.org>
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.
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.
26971 * TODO: Added details of a Linux wrapper script bug.
26972 Reported by Jeff Garzik <jgarzik@pobox.com>.
26974 1999-01-05 Alexandre Oliva <oliva@dcc.unicamp.br>
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
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
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
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
27002 1999-01-05 Thomas Tanner <tanner@gmx.de>
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
27012 1999-01-05 Alexandre Oliva <oliva@dcc.unicamp.br>
27014 * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
27015 would lose for files with embedded blanks.
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
27025 1999-01-01 Thomas Tanner <tanner@gmx.de>
27027 * NEWS: new BeOS support
27028 * THANKS: added Joseph Beckenbach
27029 * libltdl/ltdl.h: use dllimport/export on Win32
27031 1998-12-31 Joseph Beckenbach III <jrb3@best.com>
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
27037 1998-12-31 Thomas Tanner <tanner@gmx.de>
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
27046 1998-12-30 Thomas Tanner <tanner@gmx.de>
27049 * THANKS: added Todd Vierling <tv@pobox.com>
27051 1998-12-30 Todd Vierling <tv@pobox.com>
27053 * ltconfig.in: improved shared object handling on both
27054 a.out and ELF platforms for NetBSD
27056 1998-12-29 Thomas Tanner <tanner@gmx.de>
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)
27064 1998-12-27 Thomas Tanner <tanner@gmx.de>
27066 * THANKS: added Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
27068 1998-12-26 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
27070 * ltconfig.in: support i486-ncr-sysv4.3.03
27073 * ltmain.in: before every ln -s, remove the link name
27075 1998-12-25 Thomas Tanner <tanner@gmx.de>
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
27090 1998-12-24 Gary V. Vaughan <gary@gnu.org>
27092 * libltdl/configure.in: fixup spacing in --enable-ltdl-install
27093 help string so that it lines up nicely for configure --help.
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.
27104 * TODO: removed the reference to making libltdl and demo work on
27105 win32. They *do* work now that wrapper scripts are functioning.
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|.
27115 * ltmain.in: Set the compile_dependencylibs and dllsearchpath for
27116 non-libtool libs, or else libdeps only works between ltlibs for
27119 1998-12-23 Alexandre Oliva <oliva@dcc.unicamp.br>
27121 * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
27123 * doc/libtool.texi (sed): very long lines are no longer a problem
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):
27131 1998-12-23 Gary V. Vaughan <gary@gnu.org>
27133 * doc/PLATFORMS: added my cygwin32 box (i686-pc-cygwin32).
27135 * TODO: remind myself of the win32 tasks remaining.
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.
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).
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
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
27164 * doc/libtool.texi (Porting inter-library dependencies): Updated
27165 to document the changes above.
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>
27173 1998-12-23 Thomas Tanner <tanner@gmx.de>
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
27181 1998-12-23 Thomas Tanner <tanner@gmx.de>
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
27190 1998-12-22 Gary V. Vaughan <gary@gnu.org>
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.
27196 1998-12-22 Alexandre Oliva <oliva@dcc.unicamp.br>
27198 * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
27201 1998-12-21 Thomas Tanner <tanner@gmx.de>
27203 * ltconfig.in: indentation is now 8 character wide tabs
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
27212 1998-12-21 Gary V. Vaughan <gary@gnu.org>
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.
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|
27229 * ltmain.in: Fix deplibs methods to not rely on a.out (cygwin
27232 * libltdl/configure.in: Cleanups - fix header comment and emacs
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
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.
27248 1998-12-20 Thomas Tanner <tanner@gmx.de>
27250 * autogen: configure demo, depdemo, libltdl and mdemo
27251 * tests/mdemo-exec.test: renamed hell* to mdemo*
27252 * tests/mdemo-inst.test: ditto
27254 1998-12-19 Thomas Tanner <tanner@gmx.de>
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,
27259 * ltmain.in: fixed a bug which listed symbols in
27260 dld_preloaded_symbols twice
27261 * TODO: removed symbol export lists and deplibs
27263 1998-12-18 Thomas Tanner <tanner@gmx.de>
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
27284 1998-12-17 Gary V. Vaughan <gary@gnu.org>
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
27290 1998-12-16 Alexandre Oliva <oliva@dcc.unicamp.br>
27292 * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
27294 * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
27296 * Makefile.am (cvs-dist): our release tags are in lower case
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
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
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
27336 (libfoo2_la_LDFLAGS): added -static; nice test. However, since it
27337 causes -lm to linked into hell*, it causes tests that should fail
27339 (noinst_HEADERS): no need to install foo.h
27340 * mdemo/configure.in: remove modules/Makefile
27341 tests/mdemo-exec.test: updated accordingly
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.
27348 1998-12-16 Bruno Haible <haible@ilog.fr>
27350 * doc/libtool.texi (Tested platforms): broken `sed' programs
27352 1998-12-16 Alexandre Oliva <oliva@dcc.unicamp.br>
27354 * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
27355 Tanner, now that they're AUTHORS
27357 1998-12-16 Stephan Kulow <coolo@kde.org>
27359 * ltmain.in (freebsd-aout, freebsd-elf): added missing dot to
27362 1998-12-16 Alexandre Oliva <oliva@dcc.unicamp.br>
27364 * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
27365 (libtool): automatically update
27367 * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
27368 * libltdl/ltdl.c: include them
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
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
27386 * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
27387 only for -force-static; it should be removed soon, before people
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
27400 1998-12-14 Gary V. Vaughan <gary@gnu.org>
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.
27407 1998-12-11 Thomas Tanner <tanner@gmx.de>
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
27415 1998-12-09 Alexandre Oliva <oliva@dcc.unicamp.br>
27417 * PORTING: removed the text Akim Demaille converted to .texi
27419 1998-12-09 Akim Demaille <demaille@inf.enst.fr>
27421 * doc/libtool.texi: converted inter-library dependencies
27422 instructions from PORTING
27424 1998-12-09 Alexandre Oliva <oliva@dcc.unicamp.br>
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
27430 1998-12-08 Gary V. Vaughan <gary@gnu.org>
27432 * README-alpha: adapted the release procedure from
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.
27439 1998-12-08 Thomas Tanner <tanner@gmx.de>
27441 * ltconfig.in: fixed some typos in archive_sym_cmds
27442 * ltmain.in: replaced basename with a sed expression
27444 1998-12-07 Alexandre Oliva <oliva@dcc.unicamp.br>
27446 * configure.in: we no longer use PRCS
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!
27453 1998-12-04 Alexandre Oliva <oliva@dcc.unicamp.br>
27455 * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
27456 work, use `test a = b' instead
27458 * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
27460 * ltconfig.in (solaris): do not use $CC for linking if GNU ld is
27463 1998-12-04 Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
27465 * ltconfig.in: Port to SCO UnixWare 7.x.
27467 1998-12-03 Thomas Tanner <tanner@gmx.de>
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)
27476 1998-12-02 Gary V. Vaughan <gary@gnu.org>
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
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*.
27490 1998-12-01 Thomas Tanner <tanner@gmx.de>
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
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
27501 1998-12-01 Gary V. Vaughan <gary@gnu.org>
27503 * README: Updated homepage pointer to gnu libtool page.
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.
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
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.
27520 1998-12-01 Alexandre Oliva <oliva@dcc.unicamp.br>
27522 * config.guess, config.sub: imported from autoconf pre-2.13
27524 1998-11-27 Gary V. Vaughan <gary@gnu.org>
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.
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.
27538 * AUTHORS: Added myself as a co-maintainer.
27540 * ltconfig.in (archive_cmds): The `;\' in a compound statement is
27541 expanded wrongly for cygwin32, mingw32, aix3 and aix4. Changed to
27544 1998-11-25 Alexandre Oliva <oliva@dcc.unicamp.br>
27546 * libtool.spec (URL): point to www.gnu.org
27547 (Source): point to ftp.gnu.org
27549 * Makefile.am (EXTRA_DIST): removed libtool.prj
27550 Reported by Akim Demaille <demaille@inf.enst.fr>
27552 1998-11-24 Alexandre Oliva <oliva@dcc.unicamp.br>
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>
27558 * doc/PLATFORMS: updated last-tested release for platforms I've
27561 * THANKS: added Chris P. Ross
27563 1998-11-24 Chris P. Ross <cross@eng.us.uu.net>
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
27569 1998-11-24 David Heine <dlheine@truffle.Stanford.EDU>
27571 * ltmain.in (pass_all): actively pass the flags
27573 1998-11-24 Thomas Tanner <tanner@gmx.de>
27575 * depdemo: added inter-library dependencies demo (doesn't work yet!)
27576 * AUTHORS: added myself to the list of maintainers
27578 1998-11-22 Thomas Tanner <tanner@gmx.de>
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
27588 1998-11-21 Alexandre Oliva <oliva@dcc.unicamp.br>
27590 * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
27591 header files defining it.
27593 * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
27594 libraries with gcc -shared if using gcc without GNU ld.
27596 * ltconfig.in: replaced occurrences of solaris2 with solaris, to
27597 prepare for Solaris 7
27599 1998-11-19 Alexandre Oliva <oliva@dcc.unicamp.br>
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
27609 * */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies
27611 * ltmain.in: missing `test' between `&&' and `"$module"'
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.
27616 * ltmain.in (installed): new variable defined within a .la file,
27617 so that libtool can now link already-installed libraries into a
27620 * doc/libtool.texi (Linking executables): document it
27622 * ltmain.in (output_objdir): compute it from $output, not $arg
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
27628 1998-11-18 Alexandre Oliva <oliva@dcc.unicamp.br>
27630 * NEWS: -module and libltdl
27631 * mdemo/Makefile.am: ../libltdl is within $(srcdir)
27633 1998-11-18 Thomas Tanner <tanner@gmx.de>
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)
27640 * mdemo: modified mdemo to work with libltdl
27641 * tests/ltdl*: added tests for libltdl
27643 1998-11-16 Steve Price <sprice@hiwaay.net>
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
27650 1998-11-16 Stephan Kulow <coolo@kde.org>
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)
27656 1998-11-16 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
27664 1998-11-12 Alexandre Oliva <oliva@dcc.unicamp.br>
27666 * PORTING: Porting instructions are in the libtool manual already
27668 * NEWS: Mention -export-symbols and new dlpreopen
27670 1998-11-11 Alexandre Oliva <oliva@dcc.unicamp.br>
27672 * ltmain.in (IFS): revert Gary's patch when parsing version
27673 information; we still use `:' here :-)
27676 * PORTING: new file, with general instructions and inter-library
27679 1998-11-11 Gary V. Vaughan <gary@gnu.org>
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
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.
27692 1998-11-11 Alexandre Oliva <oliva@dcc.unicamp.br>
27694 * ltconfig.in (sunos*, sympat, symxfrm): remove underscore
27695 prepended by the compiler
27697 1998-11-10 Toshio Kuratomi <badger@prtr-13.ucsc.edu>
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>
27703 1998-11-10 Gordon Matzigkeit <gord@trick.fig.org>
27705 * ltmain.in (link): Make the relink warning less harsh.
27707 1998-11-07 William M. Perry <wmperry@aventail.com>
27709 * ltconfig.in (aix3, aix4): uniquify symbol names in archive_cmds
27711 1998-11-07 Alexandre Oliva <oliva@dcc.unicamp.br>
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
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,
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
27725 * tests/sh.test (test X): ensure that the double-quote supposed to be
27726 reported is really reported
27728 1998-11-07 Thomas Tanner <tanner@gmx.de>
27730 * mdemo/main.c: removed hardcoded library names; link against -lm
27731 * tests/mdemo-exec, tests/mdemo-inst: pass the library names
27734 1998-11-07 Marc J. Fraioli <fraioli@dg-rtp.dg.com>
27736 * README: Added DG/UX
27737 * doc/PLATFORMS: ditto
27739 1998-11-04 Michael Tiemann <tiemann@cygnus.com>
27741 * ltconfig.in (irix6): it's a little bit different from irix5
27743 1998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br>
27745 * THANKS: Added Thomas Tanner and Gary V. Vaughan
27747 * ltconfig.in, ltmain.in: updated and fixed the patches below
27749 1998-11-04 Thomas Tanner <tanner@gmx.de>
27751 * mdemo/*: added new demo to demonstrate building of dlopenend
27753 * tests/Makefile.am, tests/mdemo*: added some tests for mdemo
27755 1998-11-04 Gary V. Vaughan <gary@gnu.org>
27757 * demo/configure.in: added AC_EXEEXT macro so that the tests can
27758 work on cywin32/mingw32 hosts. This requires the current CVS
27761 1998-11-04 Thomas Tanner <tanner@gmx.de>
27763 * ltmain.in: New flag -export-symbols; new dlpreopen system
27764 * demo/dlmain.c: removed dld_preloaded_symbol_count
27766 1998-11-04 Ian Lance Taylor <ian@cygnus.com>
27768 * ltmain.in: On installation, don't get confused if the same name
27769 appears more than once in the list of library names.
27771 1998-11-04 Ian Lance Taylor <ian@cygnus.com>
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
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
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.
27787 1998-11-04 Ian Lance Taylor <ian@cygnus.com>
27789 * ltconfig.in: Look in the right directory for libtool.c in
27790 archive_cmds for cygwin32.
27792 1998-11-04 Ian Lance Taylor <ian@cygnus.com>
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.
27799 1998-11-04 Ian Lance Taylor <ian@cygnus.com>
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.
27806 1998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br>
27808 * libtool.m4 (sco): fix typo
27810 1998-11-04 Ian Lance Taylor <ian@cygnus.com>
27812 * ltconfig.in: On AIX, don't treat GNU ld specially.
27814 1998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br>
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.
27820 * ltconfig.in (compiler_o_lo): check whether we can write directly
27823 * ltmain.in (compiler_o_lo): if not, write to .o and rename it
27825 1998-11-04 Ian Lance Taylor <ian@cygnus.com>
27827 * ltconfig.in: For sunos4 using GNU ld, set hardcode_minus_L to
27829 * ltmain.in: Add some hacks to make SunOS --enable-shared work
27832 1998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br>
27834 * THANKS: Added Marc J. Fraioli
27836 1998-11-04 Marc J. Fraioli <fraioli@dg-rtp.dg.com>
27838 * ltconfig.in (dgux): new supported platforms
27840 1998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br>
27842 * ltconfig.in (need_locks): if neither `-c -o' nor hard links are
27843 available, fallback to not so safe mechanism, by setting
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
27848 * THANKS: Added Eric Estievenart
27850 1998-11-04 Eric Estievenart <eric@via.ecp.fr>
27852 * doc/libtool.texi (Compile mode): Document that -o is fully
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
27860 1998-11-03 Alexandre Oliva <oliva@dcc.unicamp.br>
27862 * ltmain.in: correctly create libraries and programs with
27863 directory components in their names
27865 1998-11-03 Eric Estievenart <eric@via.ecp.fr>
27867 * ltmain.in (output_obj): typo
27869 1998-11-02 Ian Lance Taylor <ian@cygnus.com>
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.
27876 1998-11-02 Alexandre Oliva <oliva@dcc.unicamp.br>
27878 * ltmain.in (libobj): default value must not contain directory
27881 1998-11-02 Eric Estievenart <eric@via.ecp.fr>
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
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
27892 1998-11-02 Alexandre Oliva <oliva@dcc.unicamp.br>
27894 * AUTHORS: added myself as a co-maintainer
27895 * THANKS: and removed my name from here
27897 * autogen: new script; run it to bootstrap libtool after checking
27900 * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
27901 suggested by Robert Lipe <robertl@dgii.com>
27903 1998-10-31 Gordon Matzigkeit <gord@trick.fig.org>
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.
27909 1998-10-27 Alexandre Oliva <oliva@dcc.unicamp.br>
27911 * demo/Makefile.am (objdir): there are no longer quotes around
27912 objdir in the libtool script
27914 1998-10-27 Gordon Matzigkeit <gord@trick.fig.org>
27916 * ltconfig.in (dynamic_linker): Echo the result to fd 6, so that
27917 --silent works correctly. From William M. Perry.
27919 1998-09-24 Gordon Matzigkeit <gord@trick.fig.org>
27921 * ltmain.in (link): Fix problems when building only static
27922 libraries. From Owen Taylor.
27924 1998-08-20 Gordon Matzigkeit <gord@trick.fig.org>
27926 * ltmain.in (install): When library_names_spec has redundancies,
27927 avoid deleting the main library when installing symlinks. From
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
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.
27936 1998-08-19 Gordon Matzigkeit <gord@trick.fig.org>
27938 * ltconfig.in: Make changes to accomodate ltmain.c.
27940 * Makefile.am (clibtool): New target for the C version of libtool.
27942 * ltmain.c: Experimental C version of libtool.
27944 1998-07-10 Ian Lance Taylor <ian@cygnus.com>
27946 * ltmain.in (install): Test against both $SHELL and /bin/sh.
27948 1998-06-30 Gordon Matzigkeit <gord@trick.fig.org>
27950 * ltmain.in: Convenience archive support. From Ulrich Drepper.
27952 * ltconfig.in (postinstall_commands): Change libraries to be
27953 executable on Solaris in order to prevent ldd from moaning. From
27955 (whole_archive_flag_spec): New variable to shortcut convenience
27956 archive expansion. From Ulrich Drepper.
27958 1998-06-11 Gordon Matzigkeit <gord@profitpress.com>
27960 * ltconfig.in, ltmain.in: Change globs to accept forward slashes
27961 in absolute directory names used on DOS-like systems. From Robert
27964 Thu May 28 18:59:08 1998 Ian Lance Taylor <ian@cygnus.com>
27966 * ltconfig.in: Use $SHELL when invoking shell scripts.
27968 1998-05-21 Gordon Matzigkeit <gord@profitpress.com>
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.
27974 1998-05-18 Gordon Matzigkeit <gord@profitpress.com>
27976 * ltmain.in (link): Possibly reexec the shell from within the
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.
27984 * ltconfig.in (hardcode_minus_L): FreeBSD 3.0 doesn't hardcode, at
27985 last. Reported by Jason Nordwick.
27987 * libtoolize.in, ltconfig.in, ltmain.in: Change a bunch of `if
27988 test ...; then : ; else ...' constructs to `if test ! ...; then
27991 1998-05-17 Gordon Matzigkeit <gord@profitpress.com>
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.
27998 1998-05-07 Ian Lance Taylor <ian@cygnus.com>
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.
28006 1998-04-27 Gordon Matzigkeit <gord@profitpress.com>
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.
28014 1998-04-20 Gordon Matzigkeit <gord@profitpress.com>
28016 * ltmain.in: Maybe reexec under $SHELL, if $echo doesn't work.
28017 Reported by Lars Hecking.
28019 1998-04-19 Gordon Matzigkeit <gord@profitpress.com>
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.
28026 * ltmain.in (finish): Notice when a finish command fails, so that
28027 we can add it to the list of recommendations.
28029 1998-04-17 Gordon Matzigkeit <gord@profitpress.com>
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.
28035 1998-04-15 Gordon Matzigkeit <gord@profitpress.com>
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.
28042 1998-04-14 Gordon Matzigkeit <gord@profitpress.com>
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.
28050 * ltconfig.in (echo): Try using the ksh(1) `print -r' builtin
28051 command, before reverting to printf(1).
28053 * Makefile.am (libtool): Use $(SHELL) when invoking ltconfig.
28055 * ltconfig.in (echo): Rewrite the test for a working echo so that
28056 we win on Solaris by avoiding printf(1), if possible.
28058 * tests/quote.test (echo): Update the echo test from ../ltconfig.in.
28060 1998-04-13 Ian Lance Taylor <ian@cygnus.com>
28062 * libtool.m4 (AM_PROG_NM): Don't override NM in the environment.
28064 1998-04-13 Gordon Matzigkeit <gord@profitpress.com>
28066 * ltmain.in: New `--config' flag to print out all configured
28069 * libtool.m4: Pass ltconfig the undocumented --no-reexec flag,
28070 since we call it explicitly using CONFIG_SHELL.
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.
28076 * ltmain.in, ltconfig.in: Use $SHELL instead of /bin/sh when
28077 generating executable scripts.
28079 * libtoolize.in, ltconfig.in, ltmain.in: Implement the `--debug'
28080 flag to begin shell tracing.
28082 * ltconfig.in (archive_cmds): Don't use `gcc -shared', even if we
28083 have GNU ld. Reported by Robert S. Maier.
28085 1998-04-06 Gordon Matzigkeit <gord@profitpress.com>
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.
28096 1998-03-24 Gordon Matzigkeit <gord@profitpress.com>
28098 * doc/libtool.texi: A little proofreading. From Albert
28101 1998-03-23 Gordon Matzigkeit <gord@profitpress.com>
28103 * ltconfig.in: Treat HP-UX 11 just like HP-UX 10. From Jeff Law.
28105 1998-03-21 Gordon Matzigkeit <gord@profitpress.com>
28107 * ltconfig.in (reload_flag): Correct a tiny bug where `--silent'
28108 would still print out the reload flag. From Stephan Kulow.
28110 1998-03-20 Ian Lance Taylor <ian@cygnus.com>
28112 * libtool.m4: Use changequote to avoid problems with square
28115 1998-03-20 Gordon Matzigkeit <gord@profitpress.com>
28119 1998-03-18 Gordon Matzigkeit <gord@profitpress.com>
28121 * ltmain.in: Rearrange some of the echos to make them more
28124 1998-03-14 Gordon Matzigkeit <gord@profitpress.com>
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.
28130 1998-03-11 Gordon Matzigkeit <gord@profitpress.com>
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.
28136 1998-03-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
28138 * Makefile.am ($(srcdir)/ltconfig): Remove bogus command to create
28139 a file ltconfig in the build directory.
28141 1998-03-09 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
28143 * ltmain.in: Avoid unnecessary use of command substitution,
28144 replacing foo=`eval \\$echo \"$mumble\"` by eval foo=\"$mumble\".
28146 (link): Use ${1+"$@"} in wrapper scripts in order to pass
28147 arguments safely to a program.
28149 * ltconfig.in: Use -fpic instead of -fPIC if $host_cpu matches
28152 1998-03-08 Gordon Matzigkeit <gord@profitpress.com>
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.
28162 * tests/tlibtool: Eliminate from distribution.
28164 * tests/defs (libtool): Don't use tlibtool anymore, since we can now use
28165 the generated libtool directly.
28167 1998-03-07 Gordon Matzigkeit <gord@profitpress.com>
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
28174 1998-03-05 Gordon Matzigkeit <gord@profitpress.com>
28176 * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): Add support for
28177 the `default' package, so that people can control unnamed
28179 (LD): Only add an ABI flag under IRIX 6.x, since IRIX 5.x doesn't
28180 support them. From Alexandre Oliva.
28182 1998-03-01 Gordon Matzigkeit <gord@profitpress.com>
28184 * ltconfig.in: Port to UnixWare 2.x. From Christopher Olsen.
28186 1998-02-25 Gordon Matzigkeit <gord@profitpress.com>
28188 * ltmain.in (compile): For consistency, honour the `-static' flag
28189 during compilation.
28191 1998-02-23 Brendan Kehoe <brendan@cygnus.com>
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.
28197 1998-02-20 Gordon Matzigkeit <gord@profitpress.com>
28199 * libtool.m4, ltconfig.in (NM): Fix up a typo confusion between
28200 $ac_dir and $dir. Reported by Akim Demaille.
28202 * ltmain.in (link): Don't allow both `-version-info' and
28203 `-release'. Reported by Danny Backx.
28205 1998-02-18 Gordon Matzigkeit <gord@profitpress.com>
28207 * Makefile.am (noinst_SCRIPTS): Remove lineno from distribution.
28209 * lineno: Remove from distribution, as it is no longer needed.
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.
28217 * tests/sh.test (scripts): Remove the lineno script, since it is no
28218 longer distributed.
28220 * tests/assign.test, if.test, test-e.test: Even though 15 tests looks
28221 impressive, these are now redundant. Remove them from the
28224 * tests/sh.test: Do what assign.test, if.test, and test-e.test used to
28227 1998-02-16 Gordon Matzigkeit <gord@profitpress.com>
28229 * libtool.m4, ltmain.in, ltconfig.in: Correctly identify absolute
28230 directory names on MS-DOS. Suggested by Bob Friesenhahn.
28232 * ltconfig.in, ltmain.in, libtool.m4: Change a bunch of `sed N!d'
28233 commands to `sed Nq', for efficiency.
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
28240 * tests/defs: Correctly identify absolute directory names on MS-DOS.
28241 Suggested by Bob Friesenhahn.
28243 1998-02-11 Gordon Matzigkeit <gord@profitpress.com>
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.
28249 * ltmain.in (mkdir): Fix one more mkdir race. From H.J. Lu.
28251 1998-02-08 Gordon Matzigkeit <gord@profitpress.com>
28253 * ltconfig.in, ltmain.in (striplib, old_striplib): Ditto.
28255 * ltconfig.in (profile_flag_pattern): Get rid of dead code.
28257 1998-02-07 Gordon Matzigkeit <gord@profitpress.com>
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
28265 * tests/suffix.test (extensions): Added GNAT (GNU Ada Translator)
28266 suffices, `.ada', `.ads', `.adb'. From Samuel Tardieu.
28268 1998-02-07 Samuel Tardieu <sam@inf.enst.fr>
28270 * ltmain.in: Recognize .ada, .ads and .adb as known suffixes (they
28271 are used by GNAT, the GNU Ada compiler).
28273 1998-02-06 Gordon Matzigkeit <gord@profitpress.com>
28275 * ltconfig.in: Turn on IRIX shared libraries again!
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.
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.
28285 1998-02-02 Gordon Matzigkeit <gord@profitpress.com>
28287 * ltconfig.in: Turn off IRIX shared library support until 32-bit
28288 and 64-bit ABI differences can be resolved.
28290 1998-01-28 Gordon Matzigkeit <gord@profitpress.com>
28292 * libtool.m4 (LD): Reverse yesterday's change because `-old_ld'
28293 isn't accepted by GCC.
28295 1998-01-27 Gordon Matzigkeit <gord@profitpress.com>
28297 * ltconfig.in (soname_spec): Add in user-specified release numbers
28298 for every host system that supports an soname that differs from
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.
28304 * ltmain.in (release): Prepend a hyphen to the release number, and
28305 fix a typo because `-version-info' takes only 3 args. From
28308 1998-01-25 Gordon Matzigkeit <gord@profitpress.com>
28310 * ltconfig.in (library_names_spec): On Linux, use the
28311 user-specified release.
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
28317 1998-01-23 Gordon Matzigkeit <gord@profitpress.com>
28319 * tests/Makefile.am (TESTS_ENVIRONMENT): Export some important
28320 environment variables. Reported by Ian Haggard.
28322 1998-01-19 Gordon Matzigkeit <gord@profitpress.com>
28324 * ltconfig.in (old_postuninstall_cmds): Reorder so that chmod
28325 happens after ranlib. From Markus F.X.J. Oberhumer.
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
28332 1998-01-18 Gordon Matzigkeit <gord@profitpress.com>
28334 * ltmain.in (compile): Recognize `.asm' extension, for use with
28335 the nasm assembler. From Markus F.X.J. Oberhumer.
28337 * tests/suffix.test (extensions): Recognize `.asm'. From Markus
28340 1998-01-12 Gordon Matzigkeit <gord@profitpress.com>
28342 * ltconfig.in (runpath_var): Use instead of
28343 `hardcode_runpath_var'.
28345 1998-01-11 Gordon Matzigkeit <gord@profitpress.com>
28347 * ltmain.in (finish): Add a better --finish message. Suggested by
28348 Kenneth Albanowski.
28350 * ltconfig.in, ltmain.in: Fix a few typos.
28352 1998-01-03 Gordon Matzigkeit <gord@profitpress.com>
28354 * ltmain.in (link): Quote the definition of $echo in the wrapper
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.
28361 * ltmain.in (install): Don't print silly `library stripping'
28362 warnings. Reported by François Pinard.
28364 1997-12-19 Gordon Matzigkeit <gord@profitpress.com>
28366 * ltmain.in: Don't forget to quote the CDPATH substitution. From
28369 1997-12-18 Gordon Matzigkeit <gord@profitpress.com>
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.
28375 1997-12-10 Gordon Matzigkeit <gord@gnu.org>
28377 * demo/Makefile.am (hardcode): Change a bunch of references to
28378 `$(LIBS)' to `-lm', since we no longer put -lm in LIBS.
28380 * demo/configure.in: Delete the test for libm, since it is
28381 standard on every system.
28383 * demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm,
28384 in accordance with new inter-library dependency code.
28386 * ltmain.in (dependency_libs): Added to help people link programs
28387 without having to explicitly specify inter-library dependencies.
28389 * ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3
28390 restriction to the generated libtool script. Reported by Stefan
28393 1997-12-05 Gordon Matzigkeit <gord@gnu.org>
28395 * ltconfig.in (thisdir): Quote $echo in the generated libtool
28396 script for HP-UX. From Markus F.X.J. Oberhumer.
28398 * ltmain.in (link): Recognize the `.s' suffix. From Markus
28401 * ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX
28402 because link_static_flag is never evaled. From Eric Backus.
28404 * tests/suffix.test (extensions): Recognize `.s'. From Markus
28407 1997-12-01 Gordon Matzigkeit <gord@gnu.org>
28409 * demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our
28410 dependencies so that parallel builds work correctly. From Jim
28413 * Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite
28414 these rules so that they are parallelizable. Reported by Jim
28417 * ltconfig.in (ltecho): We need special handling to quote the
28418 `echo' variable itself. From Alexandre Oliva.
28420 1997-11-29 Gordon Matzigkeit <gord@gnu.org>
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.
28426 * ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds,
28427 except it is a single command which is evaled, and not shown.
28429 * ltconfig.in: Port to AmigaOS. From Joop van de Wege.
28431 * ltmain.in (echo): Delete preamble to check for a working echo,
28432 since we just use the one included in the generated libtool.
28434 * ltconfig.in (echo): Include this definition in the generated
28437 1997-11-28 Gordon Matzigkeit <gord@gnu.org>
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.
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.
28447 1997-11-27 Gordon Matzigkeit <gord@gnu.org>
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
28453 * libtool.spec (Name, Version): Ditto.
28455 * configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate
28456 the proper package name and version number.
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.
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.
28469 * ltconfig.in (finish_cmds): On Linux, update ld.so.cache by
28470 removing the `-n' flag from ldconfig. Suggested by Kenneth
28473 * Makefile.am (maintainer-checkin, maintainer-release): New
28474 commands to reap the full benefit of using PRCS to maintain
28475 libtool version numbers.
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.
28481 1997-11-23 Gordon Matzigkeit <gord@gnu.org>
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
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.
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.
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.
28503 1997-11-14 Gordon Matzigkeit <gord@gnu.org>
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
28510 (export_dynamic_flag_spec): On HP-UX, add the `${wl}-E'
28511 export_dynamic_flag_spec. Reported by Matthias Hoelzer.
28513 1997-11-11 Gordon Matzigkeit <gord@gnu.org>
28515 * ltconfig.in, ltmain.in (sed_quote_subst): Oops. We forgot to
28516 quote backticks. Reported by Joop van de Wege.
28518 * tests/quote.test: Add backticks to the backslashify test.
28520 1997-11-09 Gordon Matzigkeit <gord@gnu.org>
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.
28528 1997-11-08 Gordon Matzigkeit <gord@gnu.org>
28530 * ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool
28531 script fragment to the generated libtool, rather than to stdout.
28533 1997-11-07 Gordon Matzigkeit <gord@gnu.org>
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
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.
28543 * Change bug reporting address to <bug-libtool@gnu.org>.
28545 * ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a
28546 wildcard argument to `-expect_unresolved'. From Stephan Kulow.
28548 1997-11-06 Gordon Matzigkeit <gord@gnu.org>
28550 * ltmain.in (link): Use libname_spec.
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
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'.
28559 * ltmain.in (link): Only use global_symbol_pipe if it has been
28560 defined. From Stephan Kulow.
28562 * ltconfig.in (global_symbol_pipe): Protect C fragment under C++
28563 compilers. From Stephan Kulow.
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.
28569 * ltconfig.in (archive_cmds): For NetBSD, don't include deplibs.
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.
28579 1997-10-22 Gordon Matzigkeit <gord@gnu.org>
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.
28586 * ltmain.in (link): Add explicit support for compiler options that
28587 begin with `+'. Reported by Aubert Pierre.
28589 1997-10-20 Gordon Matzigkeit <gord@gnu.org>
28591 * ltmain.in: Silly me. Change a bunch of occurances of "* $dir *"
28594 * ltconfig.in (pic_flag): PIC is the default for AIX. From Mark
28595 Kettenis. It is also the default for OSF/1.
28597 * demo/Makefile.am (objdir): Quote double-quotes. From Mark
28600 * ltconfig.in (global_symbol_pipe): This variable is not
28601 double-evaled, so it should not be double quoted. From Mark
28604 1997-10-19 Gordon Matzigkeit <gord@gnu.org>
28606 * ltconfig.in (LD): Same as below.
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.
28612 * ltconfig.in: Port to OS/2 using EMX. From Jeff Freedman.
28614 * ltmain.in (link): Use old_archive_from_new_cmds.
28616 * ltconfig.in (old_archive_from_new_cmds): New variable to
28617 support DLL libraries.
28619 * ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is
28620 not empty. Reported by Stephan Kulow.
28622 1997-10-18 Gordon Matzigkeit <gord@gnu.org>
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.
28628 1997-10-14 Gordon Matzigkeit <gord@gnu.org>
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
28637 1997-10-09 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
28643 1997-10-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28645 * ltmain.in: Change a few `$echo' commands into `$show' to make
28646 --silent mode behave as advertised.
28648 * ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use
28649 `-expect_unresolved \*'. From Christian Mondrup.
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.
28656 * libtool.m4 (LIBTOOL): Change definition to include $(SHELL).
28657 From Chris Provenzano.
28659 * ltconfig.in: Port to UTS 4.x. From Alistair Crooks.
28661 * demo/Makefile.am (hc-libflag): Add rules to make this binary for
28664 * tests/hardcode.test (hardcode_libdir_flag_spec): Check the hardcoding
28665 properties of the flag_spec, too.
28667 1997-09-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28669 * ltconfig.in (LD): As with libtool.m4, don't override LD.
28670 Do a whole bunch of ac_t quoting.
28672 1997-09-24 Ian Lance Taylor <ian@cygnus.com>
28674 * libtool.m4 (AM_PROG_LD): Don't override LD in the environment.
28676 1997-09-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
28682 * tests/defs, tests/Makefile.am (clean-local): Change =inst to
28683 _inst to fix portability on MS-DOS. From Robert Hoehne.
28685 1997-09-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28687 * ltmain.in (deplibs): When building shared libraries, always add
28688 -lc to deplibs. Reported by Andreas Jellinghaus.
28690 1997-09-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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
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.
28701 * tests/hardcode.test (objdir): New variable to simplify change from
28702 .libs to _libs (MS-DOS portability fix).
28704 1997-09-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
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
28715 * Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead
28718 * ltmain.in: Rename ltmain.sh.in to ltmain.in. This fixes a
28719 portability problem (on MS-DOS, of all places!). From Robert
28722 1997-09-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
28727 1997-09-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28729 * demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to
28730 hell.debug in order to reflect the new static linking semantics.
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
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.
28743 * tests/demo-exec.test, tests/demo-inst.test: Change references from
28744 hell.static to hell.debug.
28746 * tests/quote.test (echo): Add the same Digital Unix echo test fixes as
28747 the ones to ltmain.sh.in from Todd Kover.
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".
28754 1997-09-04 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
28761 1997-08-28 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
28767 * tests/quote.test (echo): Change test to version that uses printf.
28768 Be less strict about return results.
28770 1997-08-27 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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
28781 Put tabs back into the ${IFS= } sequences. Emacs untabify is
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.
28789 * ltmain.sh.in (link): Quote finalize_command before putting it in
28790 the wrapper script.
28792 * tests/quote.test (echo): Add the test for a non-backslash-mangling
28795 1997-08-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
28801 * tests/quote.test: New torture test for libtool metacharacter quoting.
28803 1997-08-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28805 * ltmain.sh.in: Change quoting procedure because some shells
28806 cannot handle `]' in scan sets. From Ian Dall.
28808 1997-08-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28810 * ltmain.sh.in (execute): Added -dlopen flag handling. Suggested
28811 by Alexandre Oliva.
28813 1997-08-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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
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.
28824 1997-08-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28826 * Makefile.am ($(srcdir)/ltconfig): Use lineno.
28828 * configure.in: Add AM_PROG_AWK for lineno.
28830 * lineno: New program to automatically put line numbers in
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.
28837 1997-08-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28839 * ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off
28840 command echoing. From Juergen A. Erhard.
28842 (compile): Recognize the Objective C `.m' extension. From Juergen
28845 (compile): Suppress error output from the second compilation (if
28846 any) so that we don't get those frustrating duplicate error
28849 * tests/suffix.test (extensions): Added Objective C extension, `.m'.
28851 1997-08-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
28859 1997-08-01 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
28865 * ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC.
28866 Reported by Ian Lance Taylor.
28868 * libtool.m4 (LD): Always add `-n32' to the linker if we are using
28869 GCC on IRIX 6. Reported by Ian Lance Taylor.
28871 1997-07-30 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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
28878 1997-07-29 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
28885 * demo/dlmain.c (main): Use dld_preloaded_symbol_count to display
28886 a message about the sortedness of the symbol table.
28888 * ltconfig.in (nlist): Use an nlist convenience variable, so that
28889 code can be shared directly with ltmain.sh.in.
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.
28896 1997-07-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28898 * ltmain.sh.in (link): Remove code for `-version-file', since it
28899 has been long-deprecated.
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.
28906 * ltconfig.in: Fix typo in test polarity. From Mark Kettenis.
28908 1997-07-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28910 * ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses
28911 a broken collect2. Adapted out of test results from Mark
28913 (link_static_flag): Make sure the link_static_flag actually works
28914 with a trivial binary.
28916 * ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed
28917 from export_dynamic_flag because we eval it in ltmain.sh.
28919 * ltmain.sh.in (link_static): Don't eval link_static_flag.
28921 * demo/dlmain.c (main): Change function prototype to be KNR
28922 compatible. From Kaveh R. Ghazi.
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.
28928 * ltconfig.in (no_builtin_flag): New flag to turn off builtin
28929 functions when compiling an object file.
28930 (pipe_works): Use it.
28932 * tests/demo-exec.test (status): Use status variables so that we try to
28933 execute all the programs.
28935 1997-07-23 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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
28941 1997-07-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28943 * ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X;
28944 Y'" with "sed -e 'X' -e 'Y'".
28946 * ltmain.sh.in (link): Finish full integration for `-dlopen' and
28949 Fix two silly typos where I used a compile_command in place of a
28950 finalize_command, and vice versa.
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.
28957 (link): Change a reference to hardcode_libdir_colon_separated to
28958 use the new hardcode_libdir_separator variable.
28960 * demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and
28961 `-dlpreopen' for building helldl.
28963 * demo/dlmain.c (main): Succeed, even if none of the libhello
28964 symbols have been preloaded.
28966 1997-07-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
28972 * ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make
28973 symbol output unique.
28975 1997-07-19 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28977 * ltconfig.in (pipe_works): Check to make sure our guessed
28978 global_symbol_pipe actually works.
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.
28986 * ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of
28987 `$cc'. This fixes a FreeBSD bug. Reported by Chuck Robey, and
28990 1997-07-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
28996 1997-07-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
28998 * Makefile.am (demo_distfiles): Add demo/dlmain.c to the
29001 1997-07-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29003 * demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate
29006 * demo/dlmain.c: New file to demonstrate preloaded modules.
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.
29014 * ltconfig.in (NM): New variable for BSD-compatible nm program.
29015 (global_symbol_cmd): Pipeline to extract global symbols from the
29018 * ltmain.sh.in: The .la file header should depend on `ltmain.sh',
29020 (link): Make sure $export_dynamic_flag is eval'ed before it is
29023 * tests/demo-exec.test, tests/demo-inst.test: Check the new
29024 helldl program, too.
29026 1997-07-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29028 * libtool.spec: New Red Hat Package Manager specification file in
29029 order to help people prepare distributions of libtool for Linux.
29031 * ltmain.sh.in: Eliminate two accidental uses of the NONE magic
29032 value. These were breaking libtool's behaviour when no mode is
29035 * tests/nomode.test: New test to make sure there is correct behaviour
29036 when we don't specify a mode.
29038 1997-07-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
29046 * demo/Makefile.am (hardcode_tests): Aesthetic change to
29047 alphabetize order of compiling the hardcode tests.
29049 * Makefile.am (EXTRA_DIST): Delete README-automake.
29051 * README-automake: Remove from distribution.
29053 1997-07-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
29060 1997-07-01 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29062 * ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic
29063 variable value. Use an empty variable instead.
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
29068 (RANLIB): Eliminate redundant `if' statement.
29070 * configure.in: Use AM_PROG_LD.
29072 * libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU
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.
29079 1997-06-30 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
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.
29089 1997-06-29 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29091 * ltmain.sh.in: Change all the `eval "$run ..."' sequences to
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.
29099 (install): Use `test $# -gt 0' instead of `test -n "$1"'.
29101 * ltconfig.in (LN_S): Add test to see if `ln -s' works.
29103 * libtool.m4: Increment serial number, and require AC_PROG_LN_S.
29105 1997-06-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29107 * ltmain.sh.in (link): Add missing `test' statement. Reported by
29110 1997-06-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29112 * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of
29113 am_cv_path_ld. From Tim Pierce.
29115 1997-06-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29117 * ltmain.sh.in: Redo two robustness fixes. Alexandre had the
29118 correct approach, but I botched them.
29120 * ltconfig.in (dynamic_linker): Disable shared libraries on
29121 MkLinux unless GNU libc is in use. Reported by Akim Demaille.
29123 1997-06-19 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29125 * ltmain.sh.in (install): Add a missing `test' command. Reported
29127 Miscellaneous fixes to improve robustness. From Alexandre Oliva.
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
29133 * tests/demo-inst.test: Always run both hell.static and hell.
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.
29140 1997-06-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
29147 1997-06-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29149 * Makefile.am (demo/configure): Fix up rules to run autoconf.
29150 (aclocal.m4): Now we depend on our own libtool.m4.
29152 * configure.in (AM_PATH_PROG_LD): Use it.
29154 * libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used
29156 (AM_PROG_LIBTOOL): Use it.
29158 * ltmain.sh.in (install, uninstall): Support installing and
29159 uninstalling `.lo' files. From Jeff Dairiki.
29161 1997-06-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
29169 1997-06-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29171 * Makefile.am (ltconfig, ltmain.sh): Be sure to move these files
29172 into $(srcdir) once they are created.
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.
29179 1997-06-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
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.
29191 1997-06-06 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29193 * Tell people to report bugs to the new libtool mailing list,
29194 <bug-libtool@gnu.ai.mit.edu>.
29196 1997-06-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29198 * ltconfig.in (allow_undefined_flag): New variable that implements
29199 `-allow-undefined'.
29200 (archive_cmds): Enable C++ constructors for FreeBSD 2.2. From
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.
29208 1997-05-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
29214 1997-05-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29216 * ltconfig.in: Trivial port to FreeBSD 3. From David Nugent.
29218 1997-04-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
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).
29229 1997-04-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
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.
29241 * ltmain.sh.in (dlname): Distinguish between missing
29242 `-export-dynamic' and when the library is only statically linked.
29244 1997-04-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29246 * ltconfig.in: Trivial port to OpenBSD by making it an alias for
29247 NetBSD. From Tim Pierce.
29249 1997-04-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
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
29258 Also redirect stderr to /dev/null, so that AIX users don't get
29259 worried by `fgrep: Maximum line length of 2048 exceeded.'.
29261 1997-04-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29263 * ltmain.sh.in (mode): Use `egrep -e' when inferring the operation
29266 1997-04-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
29273 1997-04-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29275 * ltconfig.in (hardcode_action): Fix silly logic error. From
29278 1997-04-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29280 * ltmain.sh.in (install): Relink if hardcode_action is `relink',
29281 rather than using complex conditionals based on the other
29282 hardcode variables.
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.
29289 1997-04-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29291 * replfunc.m4: Delete from the distribution. Documentation now
29292 describes how to set LTALLOCA and LTLIBOBJS in your own
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.
29301 1997-04-01 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29303 * Makefile.am (EXTRA_DIST): Distribute libtool.prj.
29305 * Shameless plug: Changed source code management system from CVS
29308 * libtool.scm: Initial Guile implementation of libtool.
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.
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.
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.
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
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.
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.
29344 * ltconfig.in (verify_host): Remove redundant `Transform *-*-linux*
29345 to *-*-linux-gnu*'. From Bruno Haible.
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.
29350 1997-03-31 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29352 * Makefile.am: Use the new AUTOMAKE and ACLOCAL variables.
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.
29358 1997-03-28 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29360 * ltmain.sh.in (link): Use the hardcode_libdir_separator.
29361 Convenience libraries are libtool objects if we're not building
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.
29369 * ltmain.sh.in (link): Set the dlname if -export-dynamic is given.
29370 (install, uninstall): Handle the dlname file separately.
29372 * ltconfig.in (export_dynamic_flag): Added to allow programs to
29373 use reflexive dlopens.
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).
29378 * ltconfig.in (AR): Allow AR to be set by the user, and export it
29381 * ltmain.sh.in: Remove broken profiled library support.
29382 Added `-whole-archive' and `-no-whole-archive' to manipulate
29383 convenience libraries.
29385 1997-03-27 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29387 * ltmain.sh.in (link): Allow the creation of static convenience
29388 libraries made of libtool objects. Suggested by David
29391 1997-03-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29393 * ltconfig.in: On AIX, libtool also needs to look for `B' symbols
29394 in nm output. These are global variable definitions.
29396 * ltmain.sh.in: Linking with -static should link against the
29397 linklib if old_library is empty (like it is on AIX).
29399 * ltconfig.in: Change the order of OS detection, so that
29400 linux-gnu* is detected before gnu*.
29402 * Makefile.am (libtool): Use the correct CC, RANLIB, LD, when
29403 generating libtool. From Carl D. Roth.
29405 * configure.in: Find out the user-supplied CC, LD, RANLIB. From
29408 1997-03-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29410 * ltmain.sh.in: Linking with -static should link against the old
29411 library, not linklib.
29413 * README-automake: Updated to point to Automake 1.1m.
29415 1997-03-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29417 * demo/main.c: Use it.
29419 * demo/foo.h: Declare it.
29421 * demo/foo.c: Added definition of `nothing' so that we have an
29422 global variable definition, as well as functions.
29424 1997-03-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29426 * ltconfig.in: Make sure either enable_shared or enable_static is
29427 configured. Reported by Tom Tromey.
29429 * ltmain.sh.in: Bomb out if no library types are configured.
29431 1997-02-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29433 * ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed
29434 from `hardcode_libdir_flag'.
29435 (library_names_spec): Renamed from `lib_names'.
29437 * ltconfig.in, ltmain.sh.in (hardcode_action): Change value from
29438 `rpath' to `immediate'.
29440 * replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and
29441 AM_STRUCT_ST_BLOCKS.
29443 1997-02-18 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29445 * ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support
29446 old-style config.guess scripts.
29448 1997-02-17 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29450 * ltmain.sh.in: Create objdir *before* linking a program into it.
29452 1997-02-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29454 * ltconfig.in: Any ld --version that returns GNU is probably a GNU
29455 ld. From Marcus Daniels.
29457 * libtool.m4: Added AM_REPLACE_FUNCS.
29459 1997-02-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29461 * ltconfig.in: Trivial port to *-*-osf4. From Bruno Haible.
29463 1997-02-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
29468 1997-02-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29470 * doc/platforms.texi: Yaay! We found a workaround for HP-UX
29471 /bin/sh buffer overflows. From Eric Backus.
29473 1997-02-03 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29477 * PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am:
29478 Move PLATFORMS to doc/platforms.texi.
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.
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.
29491 * tests/Makefile.am (TESTS): Do the full make sequence with
29492 --disable-shared, then without.
29494 * tests/demo-sttc.test: Configure the demo directory with
29497 1997-01-29 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29499 * ltmain.sh.in: Change to take advantage of linkers that don't
29500 hardcode direct libraries.
29502 * ltconfig.in: Amazing! AIX 3 linker doesn't hardcode direct
29503 libraries, which makes it less buggy than AIX 4. Reported by Mark
29506 * demo/configure.in: Check for the math library.
29508 * demo/foo.c (foo): Change to use the `cos' function, so that we
29509 need to link against another library.
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
29515 1997-01-28 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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].
29521 * tests/hardcode.test: Make sure that ../demo/libhello.la really is a
29522 shared library before running hardcoding tests.
29524 1997-01-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29528 1997-01-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29530 * Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the
29533 1997-01-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29535 * libtool.m4: For IRIX 6, ld needs -n32 if cc uses it. Reported
29538 * ltconfig.in: IRIX ld does not hardcode direct libraries.
29539 Reported by Bruno Haible.
29541 1997-01-18 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
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
29552 * tests/demo-conf.test: Use the CONFIG_SHELL environment variable when
29553 running configure in the demo directory. From Bruno Haible.
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
29559 * tests/demo-make.test: Fix typo (use $make instead of make). Reported
29562 1997-01-17 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29564 * libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings.
29565 Suggested by Akim Demaille.
29567 * libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is
29568 specified. Reported by Bruno Haible.
29570 1997-01-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
29577 * Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c.
29579 * demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to
29580 KNR form, for better portability, and less ansi2knr hair.
29582 * demo/configure.in: Remove AM_FUNC_PROTOTYPES.
29584 * demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS.
29586 * demo/ansi2knr.1, demo/ansi2knr.c: Removed these files.
29588 * ltmain.sh.in: Use 1>&2 consistently to direct errors and
29589 warnings to stderr.
29590 (compile): Fix missing single quote.
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.
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.
29600 * tests/tlibtool: Rewrote to grab all the settings from the generated
29603 * tests/hardcode.test: Make allowances if shlibpath_var cannot be used
29604 to find libraries at link time, such as on AIX.
29606 1997-01-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29608 * ltmain.sh.in (link): Eval $link_static_flag. Reported by Bruno
29611 * PLATFORMS: Add to distribution. Suggested by Bruno Haible.
29613 1997-01-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29615 * tests/demo-conf.test, tests/demo-inst.test, tests/demo-unst.test,
29616 tests/hardcode.test:
29617 Use $make instead of make.
29619 * tests/defs (make): Add definition of $make that uses the $MAKE
29620 environment variable, if set. Suggested by Bruno Haible.
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.
29626 1997-01-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29628 * ltconfig.in: Add support for SCO OpenServer 5.x. From
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
29635 * tests/hardcode.test: Added a test to make sure that libtool's idea of
29636 hardcoding system linkers is correct.
29638 1997-01-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29640 * ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi:
29641 Update the copyright completion years.
29643 1997-01-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29645 * ltconfig.in: Port to IRIX 5.3, 6.2.
29647 1997-01-06 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29649 * ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the
29652 * libtoolize.in: Add --dry-run option, -n for short.
29654 1997-01-03 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29656 * ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't
29657 understand "export something=val". From Bruno Haible.
29659 * tests/Makefile.am (distclean-local): Remove all files that the tests
29660 may have created. Reported by Bruno Haible.
29662 * For all tests, discover srcdir when running from the command
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.
29669 1997-01-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29671 * ltmain.sh.in (compile): Recognize valid source file suffixes for
29674 * tests/suffix.test: New test to guarantee that libtool compile
29675 recognizes valid source file suffices.
29677 1996-12-17 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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.
29683 1996-12-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29685 * ltmain.sh.in (link): Delete the `libtool' version type.
29687 1996-12-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29689 * ltconfig.in: Use the full autoconf syntax when checking for GNU
29690 C. Delete library stripping program, until we have a correct
29693 1996-12-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29695 * ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm. From Mark
29698 1996-12-09 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29700 Reported by Charles Kerr:
29701 * doc/libtool.texi (Creating Object Files): Doc fix independant ->
29704 * ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library
29707 1996-12-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29711 * Makefile.am (EXTRA_DIST): Add README-automake to the
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.
29718 * demo/Makefile.am: Rename libhell to libhello, so that we're not
29719 quite as offensive.
29721 * ltconfig.in: Remove unnecessary host validity checking.
29723 * ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la
29724 is good enough (for consistency with *.a handling).
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.
29730 * tests/link-2.test: Test to make sure that .lo files don't get built
29731 directly into programs.
29733 1996-12-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
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
29741 * ltconfig.in (thisdir): How embarrassing! An error in the regexp
29742 for finding the directory component of the script path.
29744 * tests/tlibtool: A typically-configured libtool script, that uses
29745 ../ltmain.sh.in for its backend.
29747 * tests/link.test: Make sure that it is legal to link against .a files.
29749 1996-12-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29751 * ltmain.sh.in (compile): Support `.S' (preprocessed assembler)
29752 files. Reported by Anthony Green.
29754 * libtoolize.in: Give clearer instrutions for how to update
29757 * ltconfig.in, ltmain.sh.in (link): Add support for creating
29758 reloadable objects.
29760 1996-12-04 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29762 * ltmain.sh.in (install): Fix passing -n flag to `libtool
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
29769 1996-12-03 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29771 * ltmain.sh.in (link): Give the full path to the libtool library
29774 * ltconfig.in (old_striplib): Do a configuration test to determine
29775 if old-style libraries actually can be stripped or not.
29777 1996-12-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29779 * tests/demo.test: Try compiling the ../demo subdirectory, with no
29782 * test-e.test: Check that we haven't used `test -e' anywhere in
29783 our portable shell scripts.
29785 1996-12-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29787 * ltconfig.in: Delete reference to ABOUT-LIBS.
29789 * tests: Added new subdirectory.
29791 * doc/libtool.texi: Doc fixes, and finished up the Configuring
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.
29798 [help]: Give a pointer to mode-specific help when appropriate.
29800 * ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC.
29802 * demo: Also test Automake's ansi2knr support.
29804 1996-11-19 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29806 * ltconfig.in: Bug fixes for AIX 4, and for static platforms.
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
29813 * ltconfig.in: Check for library stripping program.
29814 Use test -f instead of test -e.
29816 1996-11-18 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29818 * ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't
29820 Be verbose about the environment variables we were configured
29823 * ltmain.sh.in (objdir): change to .libs.
29825 1996-11-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29827 * ltmain.sh.in (install): Just plunge ahead with the
29828 installation... don't try to enforce dependencies.
29830 1996-11-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29832 * ltmain.sh.in: Fix up $libdir to be $dest in install mode.
29834 1996-11-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29836 * ltmain.sh: Finished rewrite of compile, link, and install
29839 * New ChangeLog file for libtool-0.7, since I've totally rewritten
29842 1996-03-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
29844 * For historical reasons: this is when I started writing libtool.
29846 Copyright (C) 1996-2010 Free Software Foundation, Inc.
29848 This file is part of GNU Libtool.
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.