1 2007-11-30 Stefan Sperling <stsp@elego.de> (tiny change)
3 * doc/libtool.texi (Linking executables): Reorder paragraphs.
5 2007-11-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
7 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: The IBM
8 XL 8.0 C++ compiler may also be called xlc++*, not only xlC*.
9 Report by Nysal K Jan <jnysal@in.ibm.com>.
11 2007-11-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13 * libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): New macro.
14 Warn about whitespace in the absolute build tree name.
17 Report by Jim Meyering.
19 * libltdl/config/ltmain.m4sh (func_extract_an_archive)
20 (func_extract_archives): Add some quoting.
22 2007-11-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
24 Use `${top_build_prefix}' for better compatibility with non-GNU make.
25 * libltdl/m4/ltdl.m4 (_LT_BUILD_PREFIX): New macro.
26 If the Autoconf version used is >= 2.62, then expand to
27 `${top_build_prefix}', otherwise to `${top_builddir}/'.
28 (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Use it for defining
29 LIBLTDL. Fixes a build failure with AIX make in a package
30 using convenience libltdl in nonrecursive mode.
31 * doc/libtool.texi (Distributing libltdl): Document requirements
32 to define `top_build_prefix' if Automake is not used.
33 Report by Bob Friesenhahn.
35 2007-11-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
37 Avoid warnings about conftest.dSYM directories on Mac OS X Leopard.
38 * libltdl/m4/libtool.m4 (_LT_LINKER_BOILERPLATE)
39 (_LT_LINKER_OPTION, _LT_CMD_GLOBAL_SYMBOLS): Remove
40 conftest.dSYM directory.
41 Report and analysis by Jeff Squyres and Peter O'Gorman.
43 2007-11-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
45 * libltdl/configure.ac: Drop the broken and long-disabled code
46 to output a banner for the libltdl configure. Avoids the need
47 to ship mkstamp with libltdl.
49 2007-11-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
51 * tests/runpath-in-lalib.at: New test.
52 * Makefile.am: Update.
53 Report by Benoit SIGOURE <tsuna@lrde.epita.fr>.
55 2007-10-16 Eric Blake <ebb9@byu.net>
57 Speed up bootstrap by improving lt_join.
58 * libltdl/m4/ltsugar.m4 (lt_join, _lt_join): Rewrite to mirror
59 Autoconf 2.62's faster implementation.
61 2007-10-12 Eric Blake <ebb9@byu.net>
64 * libltdl/m4/ltsugar.m4: Avoid space-tab in indents.
65 * libltdl/m4/libtool.m4: Avoid trailing space.
67 Deal with Autoconf 2.62's semantic change in m4_append.
68 * libltdl/m4/ltsugar.m4 (lt_append): Replace broken versions of
70 (lt_if_append_uniq): Don't require separator to be overquoted, and
71 avoid broken m4_append.
72 (lt_dict_add): Fix typo.
73 * libltdl/m4/libtool.m4 (_LT_DECL): Don't overquote separator.
75 2007-10-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
77 * libltdl/config/ltmain.m4sh: Also sanitize `LANGUAGE'.
78 (func_mode_execute): Also restore `LANGUAGE', for old glibc.
79 Report by Paul Eggert against Autoconf.
81 2007-10-11 Eric Blake <ebb9@byu.net>
83 * libltdl/.cvsignore: Ignore argz.h.
85 2007-10-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
87 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
88 <lt_cv_prog_compiler_pic_works>: Renamed from
89 lt_prog_compiler_pic_works.
90 <lt_cv_prog_compiler_static_works>: Renamed from
91 lt_prog_compiler_static_works.
94 2007-10-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
96 * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
98 * tests/suffix.test: Test it.
100 2007-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
102 * libltdl/lt_dlloader.c (loader_callback, lt_dlloader_get): Use
103 NULL, not 0, for the benefit of too picky compilers like PGI.
104 * slist.c (slist_tail): Likewise. Include stddef.h, for NULL.
105 Report by Jeff Squyres.
107 2007-09-05 Eric Blake <ebb9@byu.net>
109 * libltdl/ltdl.c (lt_dlcaller_get_data): Work even when no caller
112 2007-09-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
114 * doc/libtool.texi (User defined module data)
115 <lt_dlinterface_register>: Document that a NULL place matches
117 * libltdl/lt_dlloader.c (lt_dlloader_remove): Actually iterate
118 over all open modules when looking for modules that use it.
119 If a resident module is found, return but do not set the error
121 * libltdl/ltdl.c (lt_dlexit): When removing dlloaders, ignore
122 errors that stem from earlier failed commands. Exposed by the
124 Fixes regression over branch-1-5.
125 Memleak report as Coverity CID 19 via Jeff Squyres.
127 2007-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
131 * libltdl/ltdl.c (trim): Fix possible write beyond array bound.
133 * libltdl/ltdl.c (lt_dlopenadvise): Instead of asserting, return
134 FILE_NOT_FOUND if the filename is "".
136 * libltdl/ltdl.c (try_dlopen): Fix computation of extension,
137 avoids subtracting pointer from NULL pointer.
139 * libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Do not test
140 array address of sys_dlsearch_path against NULL, rather test for
142 Coverity reports CID 148 and CID 149 via Jeff Squyres.
144 * libltdl/ltdl.c (tryall_dlopen_module): Fix string length
145 computation: do not allocate more than needed.
147 2007-08-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
149 * libltdl/loaders/preopen.c (vm_close): `module' is unused.
150 Coverity report CID 158 via Jeff Squyres.
152 * libltdl/ltdl.c (parse_dotla_file): If we run out of memory,
153 do not close the .la file twice.
154 Coverity report CID 440 via Jeff Squyres.
156 * libltdl/ltdl.c (has_library_ext): Remove dead code.
157 Coverity report CID 561 against Open MPI via Jeff Squyres.
159 2007-08-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
161 * libltdl/slist.c (slist_remove): When a matching item is found,
162 break out of the loop to return the first match; also fixes
163 possible NULL dereference.
165 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
166 (_LT_LANG_CXX_CONFIG) [ linux ]: Add support for IBM XL 8.0
167 C/C++ (xlc*, xlC*) and IBM XL Fortran 10.1 (xlf*) on GNU/Linux,
168 tested on ppc, pending a $shlibpath_var related fix.
169 (_LT_SYS_HIDDEN_LIBDEPS): Double-quote $output_verbose_link_cmd
170 properly during evaluation, obsoleting $no_glob_subst mangling.
173 2007-08-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
175 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
176 [ k*bsd*-gnu ] <shlibpath_overrides_runpath>: Avoid spurious
177 output in runpath test.
179 2007-08-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
181 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ mingw, cygwin ]
182 <GCJ>: Do not use -DDLL_EXPORT.
183 Report by Ross Ridge <rridge@csclub.uwaterloo.ca>.
185 * Makefile.am (edit): Do not warn against manual editing for the
186 generated files libtool, libtoolize, libltdl/m4/ltversion.m4,
187 tests/defs, as they are still in a preferred source code form as
189 Report by DJ Delorie.
191 2007-08-15 Dirk Mueller <dmueller@suse.de> (tiny change)
192 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
194 * libltdl/ltdl.c (parse_dotla_file): Avoid a strlen. When
195 reading .la files, cope with files that are not
198 2007-08-05 Tilman Koschnick <til@subnetz.org> (tiny change)
200 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
201 [ linux ]: Treat pgcpp as Portland Group C++ compiler as well.
203 2007-08-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
205 * libltdl/ltdl.c (try_dlopen): Use `attempt' rather than
206 `filename', as the former has the needed extension when called
208 Report by Brian Barrett.
210 2007-07-27 Peter Rosin <peda@lysator.liu.se>
212 * Makefile.am: Pass STRIP through to the testsuite, so that
213 tests that run configure will use the same strip program.
215 2007-07-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
217 * tests/mdemo-exec.test: Also try absolute library names.
218 * tests/mdemo/main.c (test_dl, main): Try lt_dlopenext as well.
220 Report by Brian Barrett.
222 2007-07-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
224 * doc/fdl.texi: Update to GFDL 1.2.
225 * doc/libtool.texi: Adjust. Put License in Appendix.
227 * libltdl/config/ltmain.m4sh (func_mode_link): Remove each
228 intermediate relinked object after use, to avoid quadratic space
229 complexity when linking partially.
230 Report by Isidor Zeuner <eezyy@gmx.net>.
232 2007-07-23 Eric Blake <ebb9@byu.net>
234 * libltdl/config/ltmain.m4sh: Whitespace cleanup.
236 * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
237 <chase_symlinks>: Avoid compiler warning.
239 2007-07-22 Peter Rosin <peda@lysator.liu.se>
241 * libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Add
242 support for Microsoft Visual C. Also, older MinGW versions
243 seem to need stdint.h to find intptr_t.
245 2007-07-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
247 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]:
248 Ignore lines in ld.so.conf starting with 'hwcap '.
250 2007-07-16 Charles Wilson <libtool@cwilson.fastmail.fm>
252 * tests/cdemo-exec.test: use $EXEEXT where appropriate
253 to correct mingw cross-compile issues.
254 * demo-deplibs.test: Ditto.
255 * demo-exec.test: Ditto.
256 * demo-inst.test: Ditto.
257 * demo-relink.test: Ditto.
258 * depdemo-exec.test: Ditto.
259 * depdemo-inst.test: Ditto.
260 * depdemo-relink.test: Ditto.
261 * f77demo-exec.test: Ditto.
262 * fcdemo-exec.test: Ditto.
263 * mdemo-exec.test: Ditto.
264 * mdemo-inst.test: Ditto.
265 * mdemo2-exec.test: Ditto.
266 * pdemo-exec.test: Ditto.
267 * pdemo-inst.test: Ditto.
268 * tagdemo-exec.test: Ditto.
270 2007-07-14 Peter Rosin <peda@lysator.liu.se>
272 * AUTHORS, THANKS: Peter Ekberg got married, now Peter Rosin.
274 2007-07-13 Charles Wilson <libtool@cwilson.fastmail.fm>
276 * libltdl/m4/libtool.m4 (func_dirname_and_basename) <XSI>:
278 (func_dirname_and_basename) <!XSI>: New function.
279 * libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname):
280 Call it. Also, take advantage of missed optimization using
281 func_dirname's additional arguments.
282 (func_mode_compile): Call it.
283 (func_mode_install): Call it.
284 (func_mode_link): Call it.
286 2007-07-12 Peter Rosin <peda@lysator.liu.se>
288 * libltdl/config/ltmain.m4sh (func_mode_link): Strip the cwrapper
289 using $STRIP instead of relying on the tools to support -s, which
292 2007-07-06 Peter O'Gorman <peter@pogma.com>
294 * libltdl/config/libtool.m4sh: Don't pass -msg_* through to the
296 Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
298 2007-07-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
300 * libltdl/lt__alloc.c, libltdl/loaders/preopen.c,
301 libltdl/loaders/dyld.c, libltdl/loaders/dlopen.c, libltdl/ltdl.c,
302 libltdl/lt_error.c, libltdl/lt_dlloader.c, libltdl/lt__dirent.c:
303 Include lt__private.h prior to any system headers.
304 * libltdl/lt__alloc.c: Remove redundant inclusion of configuration
307 2007-07-04 Eric Blake <ebb9@byu.net>
309 * libltdl/ltdl.c (advise_dup): Delete function no longer used
310 after memleak fix three days ago.
312 2007-07-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
314 * libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Cater to
315 old Sparc Solaris 7 ld that does not understand `-64'.
316 Report by Vincent Lefevre <vincent@vinc17.org>.
318 2007-07-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
320 * libltdl/m4/lt~obsolete.m4 (LTOBSOLETE_VERSION): New macro, to
321 force-pull in this file by aclocal.
322 * libltdl/m4/libtool.m4 (LT_INIT): Require LTOBSOLETE_VERSION.
323 * tests/libtoolize.at (upgrading verbatim style aclocal.m4):
325 Report by H. J. Lu <hjl@lucon.org>.
327 * libltdl/ltdl.c (tryall_dlopen): Rename argument to have typed
328 alias of `advise' instead of allocating a copy. Fixes memleak.
330 2007-06-30 Peter Breitenlohner <peb@mppmu.mpg.de>
332 * libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Correct a typo
333 ("-dld" instead of "-ldld").
335 2007-06-24 Gary V. Vaughan <gary@gnu.org>
337 Add a test to simulate a failure visible on systems which
338 need a library prefix like 'lib', such as BeOS. Fix a number
339 of bugs exposed by this test in order for it to pass.
340 Currently the prefix is hardcoded as 'lib', as I am not aware
341 of systems that require a different prefix:
343 * libltdl/loaders/preopen.c (lt_dlpreload_open): Move error
344 condition out of test loop to be sure that each originator is
345 tried, instead of erroring out if the first doesn't match.
346 Support passing NULL as the originator to load all preloaded
347 modules originating in the program itself.
348 * libltdl/lt_dlloader.c (lt_dlloader_dump): New debug function.
349 * libltdl/libltdl/lt_dlloader.h (lt_dlloader_dump): Declare it
350 when LT_DEBUG_LOADERS is defined at compile time.
351 * libltdl/ltdl.c (lt_dlinit): Dump loader list after successful
353 (tryall_dlopen): Add a new VTABLE parameter to force use of a
354 specific loader in preference to trying every loader in turn.
356 (try_dlopen): Always see whether a module was preloaded for
357 module names with no directory component before searching the
358 filesystem for a match.
359 * libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Declare
360 a new global_symbol_to_c_name_address_lib_prefix variable.
361 (global_symbol_to_c_name_address_lib_prefix): The sed
362 expressions to use when a lib prefix is enforced need to be
363 slightly different to work with preloaded modules.
364 * libltdl/config/ltmain.m4sh (func_generate_dlsyms): In order
365 to name preloaded symbols correctly for the lookup algorithm
366 to work when the loaded module file must be prefixed with lib.
367 Use global_symbol_to_c_name_address_lib_prefix when
368 need_lib_prefix is other than no.
369 * tests/need_lib_prefix.at: New test to check for breakage on
370 hosts where need_lib_prefix is unknown.
371 * Makefile.am (TESTSUITE_AT): Add new test.
372 * tests/TODO: Note missing tests that would have caught some
373 of the latent bugs fixed by this patch.
374 * HACKING: Document libltdl keyword.
377 2007-06-24 Gary V. Vaughan <gary@gnu.org>
379 Reenable compilation of libltdl with C++:
381 * libltdl/ltdl.c (tryall_dlopen): Rename the try variable to
382 attempt, and cast explicitly.
383 (advise_dup): Add explicit cast.
385 2007-06-22 Peter O'Gorman <peter@pogma.com>
387 * libltdl/config/ltmain.m4sh (version-number) [irix]: Don't subtract
388 1 from major as it may be less than age.
390 2007-06-21 Noah Misch <noah@cs.caltech.edu>
392 * tests/f77demo/configure.ac [--with-dist]: New option. Skip most
393 Fortran checks when given.
394 * tests/fcdemo/configure.ac [--with-dist]: Likewise.
395 * Makefile.am (@DIST_MAKEFILE_LIST@): Pass --with-dist.
396 Reported by Benoit Sigoure <tsuna@lrde.epita.fr>.
398 2007-06-19 Charles Wilson <libtool@cwilson.fastmail.fm>
400 * AUTHORS: Add myself.
402 2007-06-18 Charles Wilson <libtool@cwilson.fastmail.fm>
404 * libltdl/config/ltmain.m4sh: Add new magic variable
405 for use with cwrapper.
406 (func_ltwrapper_script_p): New function.
407 (func_ltwrapper_executable_p): New function.
408 (func_ltwrapper_scriptname): New function.
409 (func_ltwrapper_p): Accomodate both wrapper scripts and
411 (func_mode_execute): Handle $file that is a wrapper
412 script and $file that is a wrapper executable differently.
413 (func_mode_install) [cygwin|mingw]: If $file is a wrapper
414 executable, use func_ltwrapper_scriptname to determine
415 wrapper script name. Afterwards, always use
416 func_ltwrapper_script_p instead of func_ltwrapper_p.
417 (func_emit_libtool_wrapper_script): Rename to...
418 (func_emit_wrapper): ...this. All callers changed.
419 (func_emit_libtool_cwrapperexe_source): Rename to...
420 (func_emit_cwrapperexe_src): ...this. All callers changed.
421 Embed new magic_exe variable into source. Private transient
422 wrapper script now called foo_ltshwrapperTMP, not
424 (func_emit_cwrapperexe_src) [main, mingw]: Use _spawnv
425 and return child's exit code manually rather than rely on
427 (func_mode_link) [cygwin|mingw]: Don't call dirname and
428 basename directly; use func_dirname and func_basename
429 when computing cwrapper names. Use cwrapper to generate
430 wrapper script, and use pathname returned by
431 func_ltwrapper_scriptname instead of $output.
432 (func_mode_link) [NOT cygwin|mingw]: move wrapper script
433 generation for non-win32 inside case statement, as default
435 (func_mode_uninstall) [$name's extension != .lo|.la]:
436 'clean' mode must handle $file differently if it is a libtool
437 wrapper script, or if it is a libtool wrapper executable.
438 * tests/destdir.at [Simple DESTDIR install]: $EXEEXT fixups.
439 * tests/destdir.at [DESTDIR with in-package deplibs]: Ditto.
441 2007-06-17 Noah Misch <noah@cs.caltech.edu>
443 * AUTHORS: Add myself.
445 2007-06-17 Peter O'Gorman <peter@pogma.com>
447 * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): add quotes to
450 2007-06-17 Charles Wilson <libtool@cwilson.fastmail.fm>
452 * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): ensure stderr
453 is redirected even when getconf does not exist.
455 2007-06-09 Charles Wilson <libtool@cwilson.fastmail.fm>
457 * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
458 Take an argument to specify value assigned to
459 WRAPPER_SCRIPT_BELONGS_IN_OBJDIR in the emitted
461 (func_emit_libtool_cwrapperexe_source) [file scope]:
462 define permission flags S_IXGRP and S_IXOTH if not
464 (func_emit_libtool_cwrapperexe_source) [LTWRAPPER_DEBUGPRINTF]:
465 Use C89-compatible syntax to mimic variadic macros.
467 (func_emit_libtool_cwrapperexe_source) [check_executable]:
468 avoid embedded #ifdefs; use S_IXGRP and S_IXOTH
470 (func_emit_libtool_cwrapperexe_source) [make_executable]:
472 (func_emit_libtool_cwrapperexe_source): don't rewrite
473 WRAPPER_SCRIPT_BELONGS_IN_OBJDIR posthoc; instead pass
474 correct argument when calling func_emit_libtool_wrapper_script.
475 (func_mode_link): pass correct argument when calling
476 func_emit_libtool_wrapper_script.
478 2007-06-07 Charles Wilson <libtool@cwilson.fastmail.fm>
480 * libltdl/config/ltmain.m4sh (func_emit_libtool_cwrapperexe_source):
481 ensure that generated source follows GCS as nearly as
484 2007-06-07 Charles Wilson <libtool@cwilson.fastmail.fm>
486 * libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
487 add code block to handle cases when wrapper script is in $objdir.
488 (func_emit_libtool_cwrapperexe_source): replace DEBUG() macro
489 with namespace-safe LTWRAPPER_DEBUGPRINTF(). Call
490 func_emit_libtool_wrapper_script() with appropriate filters to
491 embed script text in C char* static variable.
492 (f_e_l_c_s: main): add new option --lt-dump-script, parse argv[]
493 for it, and take appropriate action. Call chase_symlinks()
494 on argv[0], in case this.exe was launched via one. Use chased
495 value to determine full absolute pathname of wrapper script, in
496 $objdir. Unconditionally write script out to this pathname and
497 set permission bits. Remove extraneous ';' from debugging loop.
498 (f_e_l_c_s: main) [mingw]: DOS-ize $SHELL before populating
499 newargv[0]; if $TARGETSHELL environment variable is set, use
500 it instead of $SHELL and do not DOS-ize. Ensure newargv[1]
501 (wrapper script absolute path) uses only '/', not '\'. Make
502 sure to call execv() with DOS-ized $SHELL (or un-DOS-ized
503 $TARGETSHELL, if set)
504 (f_e_l_c_s: make_executable): new function
505 (f_e_l_c_s: chase_symlinks): new function (no-op if !S_ISLNK)
507 2007-06-03 Peter O'Gorman <peter@pogma.com>
509 * libltdl/m4/libtool.m4 (old_archive_cmds): Remove
511 * tests/archive-in-archive.at: Check for archives as members
512 of static archives. Currently XFAILS, above only eliminates
513 one of the two static archives.
514 * Makefile.am: Add test.
515 Reported by Daniel Macks <dmacks@netspace.org>
517 2007-06-01 Steve Ellcey <sje@cup.hp.com>
519 * libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Try using getconf
520 to set lt_cv_sys_max_cmd_len.
522 2007-05-28 Peter O'Gorman <peter@pogma.com>
524 * libltdl/config/ltmain.m4sh (func_mode_link),
525 libltdl/m4/libtool.m4 [darwin]: Only use ${wl} in verstring
528 2007-05-22 Gary V. Vaughan <gary@gnu.org>
530 * tests/lt_dladvise.at: Use the lib prefix throughout for
531 better portability - testing whether modules build and load
532 without that prefix is not the domain of this test.
533 Also, only run the test of the global hint with the depend
534 module on hosts that can compile a module without passing
535 -no-undefined in link mode.
537 2007-05-10 Noah Misch <noah@cs.caltech.edu>
539 * tests/duplicate_deps.at: Make the XFAIL unconditional, but
540 skip the test if the test link would succeed even without
543 * libltdl/config/general.m4sh (func_echo): Use $* instead of
546 2007-05-09 Eric Blake <ebb9@byu.net>
548 * libltdl/libltdl/lt_error.h (LT_ERROR_LEN_MAX): Adjust, to fix
549 buffer overflow in previous patch.
551 2007-05-09 Gary V. Vaughan <gary@gnu.org>
553 * tests/lt_dladvise.at: Commit missing file from below.
555 2007-05-08 Gary V. Vaughan <gary@gnu.org>
557 Without this patch, lt_dlopen always opens modules with symbol
558 visibility set according to the underlying implementation.
559 Here, we add lt_dlopenadvise() to allow callers to request,
560 among other things, local or global symbol visibility from the
563 * libltdl/ltdl.c (LT_DLRESIDENT_FLAG): Removed.
564 (LT_DLIS_RESIDENT): Use public is_resident info field.
565 (LT_DLIS_SYMLOCAL, LT_DLIS_SYMGLOBAL): New macros to test for
566 module symbol visibility status.
567 (tryall_dlopen): If vtable->module_open() was able to act on
568 either is_symlocal or is_symglobal hints, store that in
570 (lt_dlopenadvise): New function that works like lt_dlopen(),
571 but accepts an advise type to determine whether to ask
572 dlloaders to change default symbol visibility.
573 (lt_dlopen, lt_dlopenext): Just call lt_dlopenadvise() with
574 the correct parameters.
575 (lt_dladvise_init, lt_dladvise_destroy): New functions to
576 initialize and destroy an advise type hint.
577 (lt_dladvise_ext, lt_dladvise_resident, lt_dladvise_local)
578 (lt_dladvise_global): Set hints on an advise type.
579 (openadvise): Factored out of lt_dlopenadvise.
580 (has_library_ext): Factored out of lt_dlopenadvise.
581 * libltdl/ltdl.h: Declare all of the above.
582 (lt_dlinfo): New fields for advise hints.
583 * libltdl/libltdl/lt_dlloader.h (lt_module_open): Add a new
584 advise parameter. Adjust all callers.
585 (lt_dladvise): New opaque type for advise hints.
586 * libltdl/libltdl/lt__private.h (lt__advise): Declare
587 contents of opaque lt_dladvise type.
588 * libltdl/libltdl/lt_error.h (CONFLICTING_FLAGS): New error
589 for attempts to have local and global symbol visibility at the
591 * libltdl/loaders/dld_link.c, libltdl/loaders/dyld.c,
592 libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
593 libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Adjust.
594 * libltdl/loaders/dlopen.c (RTLD_LOCAL, RTLD_GLOBAL): Try to
595 define these symbols if the system has equivalents.
596 (vmopen): If unable to act on a caller request to set symbol
597 visibility, then unset the relevant hints in the advise type.
598 * tests/lt_dladvise.at: New tests for the above.
599 * doc/libtool.texi (Libltdl Interface): Updated.
602 2007-05-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
604 * libltdl/config/ltmain.m4sh (func_mode_link): When adding
605 new_inherited_linker_flags to compiler_flags, remember to
606 translate .ltframework back. Fixes bug introduced 2007-04-23.
608 * tests/inherited_flags.at: Amend test.
609 Report by Christoph Egger.
611 2007-05-03 Reuben Thomas <rrt@sc3d.org> (tiny change)
613 * doc/libtool.texi (Libltdl interface): Fix typo.
615 2007-05-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
617 * Makefile.am (clean-ltmain-sh): Removed.
618 (libtool, $(srcdir)/$(m4dir)/ltversion.m4)
619 ($(srcdir)/$(auxdir)/ltmain.sh): Updated to not depend on any
620 phony rules. Test `$?' for prerequisites that should always
621 cause us to update the target. Fixes rebuilding rules, at the
622 cost of sometimes updating too much with non-GNU make.
624 2007-04-27 Noah Misch <noah@cs.caltech.edu>
626 * tests/ctor.at: New file.
627 * Makefile.am (TESTSUITE_AT): Add tests/ctor.at.
629 2007-04-27 Charles Wilson <libtool@cwilson.fastmail.fm>
631 * libltdl/libltdl/lt__glibc.h: Use !HAVE_WORKING_ARGZ
632 instead of SYSTEM_ARGZ_IS_BROKEN.
633 * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Ditto. Also, minor
634 stylistic improvements.
635 Report by Bruno Haible <bruno@clisp.org>.
637 2007-04-25 Charles Wilson <libtool@cwilson.fastmail.fm>
638 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
640 * libltdl/argz_.h: ensure error_t definition is obtained
641 in same mechanism system argz.h would have.
642 * libltdl/libltdl/lt__glibc.h: also detect if
643 SYSTEM_ARGZ_IS_BROKEN when determining whether to re#def
645 * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): add new test to check
646 if $host's argz facilities are known bad. Err on the side
647 of caution if cross-compiling.
649 2007-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
651 * README, README.alpha: Document how to test an arbitrary
652 installed libtool script.
654 2007-04-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
656 * tests/cmdline_wrap.at: Avoid `AT_CAPTURE_FILE' if it not
657 defined (Autoconf < 2.60).
658 * tests/shlibpath.at: Add `libtool' keyword.
660 * tests/indirect_deps.at: New file, with tests to ensure
661 `link_all_deplibs=no' does not break functionality.
662 * Makefile.am: Adjust.
664 2007-04-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
666 * libltdl/config/ltmain.m4sh (func_mode_link): Fix accumulation
667 of `inherited_linker_flags' entries from multiple deplibs, by
668 adding $new_inherited_linker_flags only once, only in link pass.
669 * tests/inherited_flags: Amend test to expose this.
670 * NEWS: Adjust: kill one regression, but add note about the
672 Report by Jeff Squyres and others.
674 2007-04-23 Charles Wilson <libtool@cwilson.fastmail.fm>
676 * libltdl/config/ltmain.m4sh (func_mode_link): move wrapper
677 script generation from here...
678 (func_emit_libtool_wrapper_script): to this new function, and
680 (func_mode_link): move cwrapper source code generation from
682 (func_emit_libtool_cwrapperexe_source): to this new function,
684 (func_mode_link): call the two new functions and redirect
685 output to appropriate file.
687 2007-04-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
689 * libltdl/config/ltmain.m4sh (func_mode_link) <-no-install>
690 [ darwin ]: Treat like `-no-fast-install', as we cannot
691 hardcode. Report by Simon Josefsson.
693 2007-04-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
695 * doc/libtool.texi (Link mode) <-no-install>: Mention that this
696 still generates a wrapper script on systems without hardcoding.
697 * tests/stresstest.at: Test `-no-install'.
699 Report by Simon Josefsson.
701 2007-03-30 Matthieu Herrb <matthieu.herrb@laas.fr>
703 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
704 [ openbsd ]: Add an explicit check for shared libraries support.
706 2007-03-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
708 * Makefile.am ($(srcdir)/$(m4dir)/ltversion.m4): Fix quoting
711 2007-03-28 Gary V. Vaughan <gary@gnu.org>
713 * HACKING (Abstraction layers in libltdl): Rewritten somewhat
714 for (hopefully) better clarity.
716 2007-03-26 Gary V. Vaughan <gary@gnu.org>
718 The stamp-vcl file rules caused non-gnu make programs to rerun
719 parts of the configuration process on each invocation. Instead
720 of relying on a stamp file, we now compare version numbers of
721 generated files with the ChangeLog timestamp manually in the
722 affected make rules to decide whether regenerating is necessary:
724 * Makefile.am (EXTRA_DIST): Remove stamp-vcl.
725 (clean-ltmain-sh): Also remove users' obsolescent stamp-vcl.
726 (rebuild): Keep some common code here for...
727 (libtool, libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh):
728 Rewritten to work without reference to intermediate stamp-vcl
730 * configure.ac (CONFIG_STATUS_DEPENDENCIES): Change from
731 stamp-vcl to ChangeLog.
732 * NEWS: Removed entry saying this fix is needed.
734 2007-03-25 Gary V. Vaughan <gary@gnu.org>
736 * HACKING (LGPL with Libtool exception clause): Typo.
737 Reported by Tim Van Holder <tim.van.holder@telenet.be>
739 * HACKING (Licensing Rules): Explain the various license texts
740 used for files distributed with Libtool, and update license text
742 * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
743 bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
744 libltdl/README, libltdl/argz.c, libltdl/argz_.h,
745 libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
746 libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
747 libltdl/config/mkstamp, libltdl/configure.ac,
748 libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
749 libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
750 libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
751 libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h,
752 libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c,
753 libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
754 libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
755 libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c,
756 libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
757 libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
758 libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
759 libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
760 libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
761 libltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
762 libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
763 tests/cdemo-conf.test, tests/cdemo-exec.test,
764 tests/cdemo-make.test, tests/cdemo-shared.test,
765 tests/cdemo-static.test, tests/cdemo-undef.test,
766 tests/cdemo/Makefile.am, tests/cdemo/configure.ac,
767 tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
768 tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
769 tests/demo-conf.test, tests/demo-deplibs.test,
770 tests/demo-exec.test, tests/demo-hardcode.test,
771 tests/demo-inst.test, tests/demo-make.test,
772 tests/demo-nofast.test, tests/demo-noinst-link.test,
773 tests/demo-nopic.test, tests/demo-pic.test,
774 tests/demo-relink.test, tests/demo-shared.test,
775 tests/demo-static.test, tests/demo-unst.test,
776 tests/demo/Makefile.am, tests/demo/configure.ac,
777 tests/demo/dlmain.c, tests/demo/foo.c,
778 tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
779 tests/demo/hello.c, tests/demo/main.c,
780 tests/depdemo-conf.test, tests/depdemo-exec.test,
781 tests/depdemo-inst.test, tests/depdemo-make.test,
782 tests/depdemo-nofast.test, tests/depdemo-relink.test,
783 tests/depdemo-shared.test, tests/depdemo-static.test,
784 tests/depdemo-unst.test, tests/depdemo/Makefile.am,
785 tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
786 tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
787 tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
788 tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
789 tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
790 tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
791 tests/depdemo/l4/l4.h, tests/depdemo/main.c,
792 tests/depdemo/sysdep.h, tests/deplibs-ident.at,
793 tests/destdir.at, tests/duplicate_conv.at,
794 tests/duplicate_deps.at, tests/duplicate_members.at,
795 tests/early-libtool.at, tests/export.at,
796 tests/f77demo-conf.test, tests/f77demo-exec.test,
797 tests/f77demo-make.test, tests/f77demo-shared.test,
798 tests/f77demo-static.test, tests/f77demo/Makefile.am,
799 tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
800 tests/f77demo/foo.h, tests/f77demo/fooc.c,
801 tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
802 tests/fcdemo-make.test, tests/fcdemo-shared.test,
803 tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
804 tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
805 tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
806 tests/inherited_flags.at, tests/libtoolize.at,
807 tests/link-2.test, tests/link-order.at, tests/link-order2.at,
808 tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test,
809 tests/mdemo-dryrun.test, tests/mdemo-exec.test,
810 tests/mdemo-inst.test, tests/mdemo-make.test,
811 tests/mdemo-shared.test, tests/mdemo-static.test,
812 tests/mdemo-unst.test, tests/mdemo/Makefile.am,
813 tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
814 tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
815 tests/mdemo/sub.c, tests/mdemo2-conf.test,
816 tests/mdemo2-exec.test, tests/mdemo2-make.test,
817 tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
818 tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
819 tests/objectlist.test, tests/old-m4-iface.at,
820 tests/pdemo-conf.test, tests/pdemo-exec.test,
821 tests/pdemo-inst.test, tests/pdemo-make.test,
822 tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
823 tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
824 tests/pdemo/longer_file_name_foo.c,
825 tests/pdemo/longer_file_name_foo2.c,
826 tests/pdemo/longer_file_name_hell1.c,
827 tests/pdemo/longer_file_name_hell2.c,
828 tests/pdemo/longer_file_name_hello.c,
829 tests/pdemo/longer_file_name_main.c, tests/quote.test,
830 tests/recursive.at, tests/search-path.at, tests/sh.test,
831 tests/shlibpath.at, tests/standalone.at, tests/static.at,
832 tests/stresstest.at, tests/subproject.at, tests/suffix.test,
833 tests/tagdemo-conf.test, tests/tagdemo-exec.test,
834 tests/tagdemo-make.test, tests/tagdemo-shared.test,
835 tests/tagdemo-static.test, tests/tagdemo-undef.test,
836 tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
837 tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
838 tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
839 tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
840 tests/tagdemo/main.cpp, tests/tagtrace.test,
841 tests/template.at, tests/testsuite.at: Apply correct license
842 text according to the new rules set out in HACKING.
844 2007-03-19 Gary V. Vaughan <gary@gnu.org>
846 * libtoolize.m4sh: Handle argz.m4 specially like ltdl.m4, so
847 that it isn't copied unless libltdl is being used. Copy other
848 macro files according to their tagged serial numbers.
849 * tests/libtoolize.at: Adjust.
851 2007-03-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
853 * tests/mdemo/Makefile.am (libmlib_la_LDFLAGS): Add
854 `-export-symbols-regex ".*"' because the convenience libltdl
855 uses export markers and thus turns off autoexport on w32. Fixes
856 test failures for Cygwin and MinGW.
857 Bug analysis by Charles Wilson.
859 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
860 (_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
861 (_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ interix ]: When
862 matching for interix, accept version range [3-9] instead of 3.
864 Report by Martin Koeppe <mkoeppe@gmx.de>.
866 * libltdl/m4/libtool.m4 (LT_PROG_GCJ): Avoid M4 expansion error
867 that caused `dnl' to be merged to the previous word.
869 Report by Steve Ellcey.
871 2007-03-09 Gary V. Vaughan <gary@gnu.org>
873 * libtoolize.m4sh: Replace literal tab chars in help comment
874 with spaces to align columns in --help output.
876 2007-03-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
878 * libltdl/config/ltmain.m4sh (func_mode_link): Also apply the
879 symbol filtering for w32 and the include_expsyms feature in the
880 case of exceeded command line length. Fixes test failure on
883 * tests/stresstest.at: For const data object imported from
884 shared library, define appropriate macros to expand
885 __declspec(dllimport) on w32. Use two different main objects
886 and pick the right one for the link flags we are about to test.
887 Fixes test failure on MinGW.
889 * tests/export.at: For const data object imported from shared
890 library, define appropriate macros to expand
891 __declspec(dllimport) on w32. Fixes test failure on MinGW.
893 2007-03-05 Gary V. Vaughan <gary@gnu.org>
895 * libtoolize.m4sh (func_check_macros): Display m4 quotes correctly
896 in AC_CONFIG_MACRO_DIR diagnostics.
898 * libltdl/config/general.m4sh (M4SH_VERBATIM): New macro to
899 simplify m4sh quote quoting in blocks of raw shell code.
900 * clcommit.m4sh, libtoolize.m4sh, libltdl/config/getopt.m4sh,
901 libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
902 tests/defs.m4sh: Use it.
903 * HACKING (Editing `.m4sh' Files): Mention M4SH_VERBATIM Macro.
905 2007-02-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
907 * tests/lt_dlexit.at: Allow test to pass on static-only systems
908 and with disable-shared.
910 * NEWS: Rewrite all news since 1.9f and put in categories,
913 * libltdl/Makefile.inc: Fix the file description, so that it
914 matches recursive and nonrecursive libltdl setup.
915 * Makefile.am ($(srcdir)/libltdl/Makefile.am): Do not depend
916 upon the exact text of the copyright header, just copy until
917 the marker line. Remove the marker lines in the output, and
918 adjust the description for subpackage setup.
920 2007-02-26 Gary V. Vaughan <gary@gnu.org>
922 * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fix regexp typo.
924 * clcommit.m4sh: Look in the right directory for helper scripts.
926 2007-02-25 Gary V. Vaughan <gary@gnu.org>
928 * Makefile.am ($(srcdir)/libltdl/Makefile.am): Fixup regex to
929 match Copyright notice change below.
931 * HACKING, Makefile.am, Makefile.maint, bootstrap,
932 libltdl/Makefile.am, libltdl/Makefile.inc, libltdl/m4/libtool.m4,
933 ltmain.c, tests/cdemo/Makefile.am, tests/demo/Makefile.am,
934 tests/depdemo/Makefile.am, tests/depdemo/l1/Makefile.am,
935 tests/depdemo/l2/Makefile.am, tests/depdemo/l3/Makefile.am,
936 tests/depdemo/l4/Makefile.am, tests/f77demo/Makefile.am,
937 tests/fcdemo/Makefile.am, tests/libtoolize.at,
938 tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
939 tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Update
940 Copyright notice text to include URL for canonical GPL document.
942 2007-02-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
944 * tests/static.at: Forgot to fix PATH for the first
945 func_test_exec invocation. So factor out into new functions
946 func_fix_path and func_restore_path and use those.
948 * README: Document the need for GNU make to build Libtool.
949 Point the user to the doc/notes.txt file. In the examples, use
950 `gmake' throughout to make it more obvious. Explain simpler way
951 to run both testsuites and either one. Referring to individual
952 tests needs the `tests/' prefix.
953 * README.alpha: Likewise.
954 * doc/notes.texi: Likewise, document need for GNU make.
955 Comment out the FreeBSD make issue for now.
957 * tests/static.at: Larger rewrite to make work on w32: Use three
958 different prefixes instead of three libdirs, so the moving of
959 the DLLs works as expected. Adjust all code. Since now
960 $libdirI/../bin is distinct from the directory of the installed
961 program, take care than on w32 PATH contains the needed bindirs,
962 in appropriate order.
963 Report by Charles Wilson.
965 * Makefile.am (INSTALLCHECK_ENVIRONMENT): Point LTDLINCL and
966 LIBLTDL to installed libltdl, so that it is being used by
969 2007-02-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
971 * doc/libtool.texi (Install mode, libtool script contents):
972 Describe current and system-specific DESTDIR limitations.
973 * tests/destdir.at: XFAIL if `fast_install' is no.
975 * doc/libtool.texi (LT_INIT): Fix typo.
977 * doc/libtool.texi (Libtool test suite): Mention the new
978 testsuite. Point to README rather than INSTALL for testing
980 (Test descriptions): Fix more file names. Also mention
981 cdemo-undef.test, mdemo2-conf.test, mdemo2-exec.test,
982 mdemo2-make.test, objectlist.test, pdemo-conf.test,
983 pdemo-exec.test, pdemo-inst.test, pdemo-make.test,
984 tagdemo-conf.test, tagdemo-exec.test, tagdemo-make.test,
985 tagdemo-static.test, tagdemo-shared.test, tagdemo-undef.test,
986 f77demo-conf.test, f77demo-exec.test, f77demo-make.test,
987 f77demo-static.test, f77demo-shared.test, fcdemo-conf.test,
988 fcdemo-exec.test, fcdemo-make.test, fcdemo-static.test,
989 fcdemo-shared.test. Describe what they do.
990 (When tests fail, Troubleshooting): Mention how to pass options
991 to the new test suite.
992 * tests/tagdemo/README: Fix description.
994 * bootstrap: Also set GREP, FGREP, EGREP, LN_S, when creating a
995 preliminary ltmain.sh script.
997 * doc/libtool.texi (Test descriptions): Track the grand test
998 suite renaming from 2003-10-14 in the tests documentation.
999 assign.test is merged into sh.test. Fix description of sh.test.
1000 * tests/sh.test: Likewise.
1002 * doc/libtool.texi (LT_INIT): Fix wording of intro a bit.
1003 <shared, static>: Also describe these default LT_INIT options.
1004 <AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL>
1005 <AC_DISABLE_FAST_INSTALL>: Mention deprecated macro names,
1006 including the respective LT_INIT replacement.
1007 <AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_ENABLE_SHARED>
1008 <AC_ENABLE_STATIC>: Document, un-deprecate. Suggest the
1009 respective LT_INIT replacement.
1010 <AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_ENABLE_SHARED>
1011 <AM_ENABLE_STATIC>: Document deprecated aliases.
1012 (Distributing libltdl) <AC_WITH_LTDL, AC_LIBLTDL_INSTALLABLE>
1013 <AC_LIBLTDL_CONVENIENCE>: Document deprecated aliases.
1014 * libltdl/m4/ltoptions.m4 (AM_ENABLE_SHARED, AM_DISABLE_SHARED)
1015 (AM_ENABLE_STATIC, AM_DISABLE_STATIC): Make these AU_ALIASes of
1016 the respective AC_* macros, so we do not recommend LT_INIT(*) in
1018 (AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC)
1019 (AC_DISABLE_STATIC): Un-deprecate these. Remove now-superfluous
1020 aclocal-1.4 backwards compatibility comments.
1022 * tests/link-order2.at: Rewrite completely. Do not use `sin'
1023 from the math library, there are too many problems with this.
1024 Instead, use a self-written library, install it without the
1025 Libtool library file, to emulate a native library in a system
1026 directory, and adjust $shlibpat_var. Try overriding its symbol.
1027 Further, also try an installed `wrong' binary.
1028 Avoid failing test bits on AIX without runtimelinking and on
1029 Darwin in some cases, SKIP at the end in this case.
1030 Analysis by Peter O'Gorman.
1032 * doc/notes.texi: Mention MACOSX_DEPLOYMENT_TARGET issue.
1033 * tests/template.at: Only skip those tests failing on Darwin
1034 if `-flat_namespace' is used by libtool. In that case, SKIP
1035 at the end. Analysis by Peter O'Gorman.
1037 2007-02-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1039 Fix -export-symbols and -export-symbols-regex for links that
1040 exceed the command line length and use convenience archives.
1042 * libltdl/config/ltmain.m4sh (func_mode_link): Avoid grepping a
1043 nonexistent file if using reloadable objects. Do not create a
1044 linker script nor a linker input file if no objects are passed.
1045 Apply export_symbols_regex in case the command line length is
1047 Report by Bob Friesenhahn.
1049 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
1050 <compiler_needs_object>: New tag variable. Default to `no'.
1051 (_LT_LINKER_SHLIBS) [ linux ]: Set it to yes for Sun C 5.9.
1052 (_LT_LANG_CXX_CONFIG): Also default it to `no'.
1053 [ linux ]: Set it to `yes' for Sun C++ 5.9.
1054 * libltdl/config/ltmain.m4sh (func_mode_link): If we link
1055 no objects but only convenience archives into a library,
1056 force expansion if `compiler_needs_object' is yes.
1057 For creating a linker input filelist due to long cmdline,
1058 extract the first object if `compiler_needs_object' is yes.
1059 * doc/libtool.texi (libtool script contents): Document it.
1060 Fixes test failures of Sun compilers on GNU/Linux.
1061 Report by Terry D. Dontje.
1063 * libltdl/config/ltmain.m4sh (func_mode_link): Avoid setting
1064 `$libobjs' to a single space; set it to empty in that case.
1066 2007-02-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1068 * libltdl/config/ltmain.m4sh (func_generate_dlsyms) [ osf5 ]:
1069 On Tru64 5.1, const relocations do not work well. Omit the
1070 const here. Fixes failure of demo-make after demo-shared with
1071 link editor error `seg_info_ptr: Couldnt find a seg type 2'.
1073 * Makefile.am (doc_libtool_TEXINFOS): Renamed from...
1074 (libtool_TEXINFOS): ...this, to fix dependencies. Omit from
1076 (check-local): Also depend upon $(bin_SCRIPTS).
1078 2007-02-23 Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> (tiny change)
1080 * libltdl/config/general.m4sh (sed_double_backslash): Fix
1081 hacky sed script to avoid limitations but retain portability to
1082 Solaris /bin/sed. Remove old obsolete cruft.
1084 2007-02-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1086 * libltdl/config/ltmain.m4sh (func_mode_link): Fix the check for
1087 convenience archives when warning about linking against static
1088 libraries: test against $deplib rather than empty $lib.
1090 2007-02-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1092 * libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Fix detection of new enough
1093 libltdl by actually checking for the declaration of
1094 lt_dlinterface_register in ltdl.h with AC_CHECK_DECL.
1095 Remove redundant configure output line.
1097 * tests/template.at: Reformat, add M4 quoting. Use $LDFLAGS
1098 consistently for link mode.
1100 2007-02-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1102 * tests/static.at: Use the right names for the broken libs.
1104 2007-02-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1106 * tests/deplibs-ident.at [aix, hppa*-*-hpux*, interix, openbsd]:
1107 Do not XFAIL, on these systems we happen to pass.
1108 * tests/duplicate_deps.at [aix]: Likewise.
1110 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux |
1111 k*bsd*-gnu ]: Fix eval quoting in the DT_RUNPATH test.
1115 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ linux ]
1116 <whole_archive_flag_spec>: For Sun C/C++ 5.9, do not add
1117 /dev/null as dummy object, it fails with GNU ld version
1118 2.16.91.0.7-amd-sles9. Report by Terry D. Dontje.
1121 2007-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1123 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ osf4, osf5 ]
1124 <archive_expsym_cmds>: Use `${wl}-input' not `-input', for
1125 cc. Could use `-input_to_ld'.
1126 (_LT_LANG_CXX_CONFIG) [ osf4, osf5 ] <archive_expsym_cmds>:
1127 Use `${wl}' instead of `-Wl,', for consistency.
1129 2007-02-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1131 Fix spurious testsuite failures on AIX due on NFS mounts due to
1132 shared library images that cannot be removed without `slibclean'
1133 which needs superuser privileges.
1135 * tests/testsuite.at (PREPARE_TESTS): Define $mkdir_p globally.
1136 (LT_AT_MVDIR): New macro to emulate `mv dir dest'.
1137 * tests/destdir.at: Use LT_AT_MVDIR.
1138 * tests/shlibpath.at: Likewise.
1139 * tests/static.at: Likewise.
1141 2007-02-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1143 * tests/export.at: Exporting is not fully functional with
1144 -retain-symbols-file. Do not test for failure to link `broken'
1145 in this case. At the end of the test, SKIP if we are not fully
1148 * tests/lt_dlexit.at: Add casts and `extern "C"' to let the test
1149 pass with a C++ compiler.
1151 * libltdl/config/ltmain.m4sh: Remove duplicate marker for
1152 generated shell functions.
1154 * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): New macro, like
1155 LT_AT_EXEC_CHECK but uses `$LIBTOOL --mode=execute' and allows
1156 to pass `-dlopen MODULE' arguments.
1157 * tests/lt_dlexit.at: Use it. Also, do not test `-dlpreopen',
1158 that currently needs library names to begin with `lib'.
1160 2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1162 * tests/export.at: New test: expose -export-symbols failure
1163 when the input consists solely of convenience archives, and
1164 failure to not export all symbols when the command line length
1166 * Makefile.am: Adjust.
1168 * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New substituted
1169 function `func_lo2o', saving two fork&exec with XSI shells.
1170 * libltdl/config/ltmain.m4sh (func_mode_compile)
1171 (func_mode_install, func_mode_link): Use it for rewrites of
1174 * libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New function
1175 func_opt_split, for XSI and portable shell.
1176 * libltdl/config/ltmain.m4sh: Move the insertion point for the
1177 configure-generated shell functions to before the first option
1178 parsing loop. Rewrite the separation of the long options to use
1181 2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1183 Eliminate roughly a third of the script execution time overhead
1184 for all modes except for link/relink and uninstall/clean.
1186 * libltdl/m4/libtool.m4 (_LT_CONFIG): Remove unused `TEST SUITE
1187 MARKER', obsolete since 2005-04-17.
1188 * libltdl/config/ltmain.m4sh: Likewise, several instances.
1189 (Main): Tear apart, moving individual bits up as early in the
1190 script as possible, to help the shell to avoid parsing the rest.
1192 2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1194 * doc/libtool.texi: Update copyright years.
1196 2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1198 * libltdl/config/general.m4sh (sed_double_backslash): Replace
1199 POSIX sed script with a hack that treats up to 10 backslashes
1200 in the input correctly and is portable to Solaris /bin/sed.
1202 2007-02-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1204 * tests/testsuite.at (LT_AT_TAG): Skip also if the compiler
1205 variable is set to `no', not only if it is empty.
1207 2007-02-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1209 * tests/lt_dlexit.at: Do not compile main object with libtool.
1211 * tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir
1214 * Makefile.am (TESTSUITE_AT): Move destdir.at after
1215 search-path.at so the banners fit better.
1217 * tests/convenience.at: Use $CPPFLAGS for compilation.
1218 * tests/deplibs-ident.at: Likewise.
1219 * tests/duplicate_members.at: Likewise.
1220 * tests/inherited_flags.at: Likewise.
1221 * tests/link-order.at: Likewise.
1222 * tests/stresstest.at: Likewise.
1223 * tests/early-libtool.at: Likewise. Do not quote $CC.
1225 * libltdl/ltdl.c (lt_dlexit): Add casts to fix compilation with
1228 * tests/destdir.at: Add `libtool' keyword to tests.
1230 2007-02-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1232 * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
1233 (_LT_LINKER_BOILERPLATE, _LT_SYS_MODULE_PATH_AIX)
1234 (_LT_COMPILER_C_O): Require _LT_DECL_SED.
1236 Report by Maciej W. Rozycki.
1238 2007-01-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1240 * tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir,
1241 in the new testsuite.
1243 2007-01-29 Samuel Thibault <samuel.thibault@ens-lyon.org>
1245 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ gnu ]
1246 <archive_expsym_cmds>: Behave like Linux, so that
1247 --version-script is used for Hurd as well.
1249 2007-01-28 Charles Wilson <libtool@cwilson.fastmail.fm>
1251 * NEWS: Update for Cygwin changes.
1253 2007-01-28 Brian W. Barrett <bbarrett@lanl.gov>
1255 * libltdl/config/ltmain.m4sh [darwin]: Use otool64 if otool fails.
1257 2007-01-28 Dave Brolley <brolley@redhat.com>,
1258 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1260 * libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL
1261 before checking that it is still in the list.
1262 * tests/lt_dlexit.at: New test.
1263 * Makefile.am (TESTSUITE_AT): Adjust.
1264 (check-local): Also depend on libltdl/libltdlc.la.
1265 (check-recursive): Removed, unnecessary use of Automake
1268 2007-01-28 Mike Frysinger <vapier@gentoo.org>
1270 * libltdl/config/ltmain.m4sh (func_mode_link): Pass through
1271 `-p' and `-fprofile-*' for GCC.
1273 2007-01-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1275 * libltdl/libltdl/lt_system.h: Adjust copyright years.
1277 2007-01-28 Charles Wilson <libtool@cwilson.fastmail.fm>
1279 * libltdl/libltdl/lt__private.h (LT_GLOBAL_DATA) [__CYGWIN__]:
1280 Also define on Cygwin.
1281 * libltdl/libltdl/lt_system.h (LT_SCOPE) [__CYGWIN__]: Likewise.
1283 2007-01-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1285 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ cygwin, mingw ]
1286 <export_symbols_cmds>: Avoid shell expansion of '/s/.*' through
1287 double expansion, in case there is a 'S:' drive.
1288 Report by Charles Wilson.
1290 2007-01-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1292 Introduce a new test keyword `recursive' for tests that create a
1293 modified `libtool' script and run the suite on this script. All
1294 tests with the keyword `libtool' are (by definition) suitable to
1297 * tests/cmdline_wrap.at: New test.
1298 * Makefile.am: Adjust.
1299 * tests/testsuite.at (LT_ESCAPE): New macro: clone of Autoconf
1300 AS_ESCAPE that does not escape `$'.
1301 (LT_AT_CHECK): New macro: print a command-to-be-run while
1302 expanding parameters but nothing else.
1303 * tests/stresstest.at: Use LT_AT_CHECK. Create some files to
1304 expose erroneous globbing errors with `-export-symbols-regex',
1305 similar to those reported by Charles Wilson. Use `eval' and
1306 adjusted quoting so the expansion doesn't already happen in the
1310 2007-01-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1312 Assume C89 for included headers, and throughout the testsuite.
1315 * libltdl/argz.c: Do not include strings.h nor memory.h, include
1316 string.h unconditionally.
1317 Patch by Simon Josefsson <jas@extundo.com>.
1318 * libltdl/libltdl/lt__private.h: Likewise.
1319 * libltdl/m4/ltdl.m4 (LTDL_INIT): Do not check for string.h,
1320 strings.h, memory.h.
1321 * tests/cdemo/configure.ac: Assume presence of math.h.
1322 * tests/cdemo/foo.c: Likewise.
1323 * tests/demo/configure.ac: Likewise for math.h, string.h.
1324 Assume 'const'. Drop obsolete AC_EXEEXT.
1325 * tests/demo/dlmain.c: Likewise.
1326 * tests/demo/foo.c: Likewise.
1327 * tests/depdemo/configure.ac: Likewise.
1328 * tests/depdemo/l4/l4.c: Likewise.
1329 * tests/f77demo/configure.ac: Likewise. Also drop obsolete
1331 * tests/fcdemo/configure.ac: Likewise.
1332 * tests/mdemo/configure.ac: Likewise.
1333 * tests/mdemo/foo1.c: Likewise.
1334 * tests/mdemo/foo2.c: Likewise.
1335 * tests/mdemo2/configure.ac: Likewise.
1336 * tests/pdemo/configure.ac: Likewise.
1337 * tests/pdemo/longer_file_name_dlmain.c:
1338 * tests/pdemo/longer_file_name_foo.c: Likewise.
1339 * tests/pdemo/longer_file_name_foo2.c: Likewise.
1340 * tests/tagdemo/configure.ac: Likewise.
1341 * tests/tagdemo/foo.cpp: Likewise.
1343 2007-01-24 Reuben Thomas <rrt@sc3d.org> (tiny change)
1345 * doc/libtool.texi (Inter-library dependencies): Fix typo.
1347 2007-01-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1349 * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]:
1350 Use `lib -OUT' rather than `lib /OUT' to avoid MSYS path
1351 translation mangling. Report by Christopher Hulbert.
1354 * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
1355 suffixes matching `[fF][09].', for Fortran.
1356 * tests/suffix.test: Also test F90, F95, f03, F03.
1358 * Makefile.am (EXTRA_DIST): Add ChangeLog.2006.
1359 * ChangeLog.2006: New, rotated, from...
1360 * ChangeLog: ...here.
1362 2007-01-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1364 * doc/libtool.texi: Typo fixes.
1367 Continued in ChangeLog.2006