Revert 75142db4f8afc65ba7aae0ed80ea0b35bd9cc382 (AIX libltdl dlopen(NULL)
[libtool.git] / ChangeLog.1999
blob27674ac85677b239bf0b5432421fba6ecdce80b6
1 1999-12-18  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
3         * ltmain.in: Oops, `largarg' -> `lastarg'.
5         * ltmain.in (-Wc, -Xcompiler): Implemented in compile mode.
7         * ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and
8         finalize_command.
9         (-Wc, -Wl): Likewise.
11         * tests/quote.test: Adjust quoting style of -Wl.
13         * ltmain.in: Oops, `echo' -> `$echo'.
15         * ltmain.in (-Wl, -Wc): Make commas argument separators, just like
16         in gcc.
18         * ltmain.in (libtool_args): Get all arguments properly enclosed in
19         quotes and backslash-protected when needed.
21 1999-12-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
23         * ltdl.m4: Renamed from...
24         * libltdl/ltdl.m4: that no longer exists.
25         * configure.in (ACINCLUDE_M4_LIST): Removed libltdl/acinclude.m4.
26         * Makefile.am (aclocal_macros): Added ltdl.m4.
27         (libltdl/acinclude.m4): Concatenate libtool.m4 and ltdl.m4.
28         * bootstrap: Likewise.
29         * libltdl/Makefile.am (ACLOCAL): Remove the definition.  Relying
30         upon -I may lead to duplicates.
31         * doc/libtool.texi: Suggest appending ltdl.m4 to acinclude.m4.
32         * libtoolize.in: Check AC_LIB_LTDL version number in aclocal.m4.
34         * libltdl/configure.in (with_auxdir): Do not use it as the
35         argument of AC_CONFIG_AUX_DIR, automake requires a literal here.
36         Use AC_CONFIG_AUX_DIRS/DIR_DEFAULT instead.
38         * libltdl/Makefile.am (ACLOCAL): Define with `-I .', as in
39         bootstrap.
41 1999-12-15  Thomas Tanner  <tanner@ffii.org>
43         * libltdl/configure.in: path to auxiliary files can be specified
44           using --with-auxdir (idea by Howard Chu <hyc@highlandsun.com>)
46         * ltmain.in: don't remove multiple occurences from dependency_libs
47           of a library, otherwise many dependencies would get lost
49         * bootstrap: use "aclocal -I ." instead of adding the contents
50           of ltdl.m4 to acinclude.m4
52 1999-12-13  Gary V. Vaughan  <gary@gnu.org>
54         * NEWS: updated.
55         * libltdl/Makefile.am: Use -no-undefined for dll compliance.
56         * libltdl/configure.in: Use AC_LIBTOOL_WIN32_DLL for dll
57         compliance.
58         * libltdl/ltdl.c: Define and use LTDL_GLOBAL_DATA to correctly
59         export global data symbols from libltdl.dll.
60         * libltdl/ltdl.h: Define and use LTDL_SCOPE to declare data
61         symbols as dllexport, dllimport or plain ornary extern depending
62         in the context in which it is used.
64         * doc/libtool.texi (Distributing libltdl): document use of
65         ltdl.m4.
66         * libltdl/configure.in: Removed header checks, as they are
67         automatically performed by AC_LIB_LTDL.
68         * libltdl/ltdl.m4: Added header checks from configure.in, so that
69         AC_LIB_LTDL is sufficient to compile ltdl.c.
70         Reported by Stephan Kulow <coolo@kde.org>.
72         * ltconfig.in (ltdll_obj): fixed typo: objdir -> $objdir
74 1999-12-12  Gary V. Vaughan  <gary@gnu.org>
76         * ltconfig.in (cygwin*, mingw*, export_symbols_cmds): keep any
77         DATA tags associated with symbols by recent dlltool.
78         (cygwin*, mingw*, archive_expsym_cmds): Honor any DATA tags
79         found in the symbol list.
80         Reported by Jon Leichter <jon@symas.com>.
82 1999-12-10  Gary V. Vaughan  <gary@gnu.org>
84         From Stephan Kulow <coolo@kde.org>
85         * libltdl/ltdl.m4:  Add arg 3 to AC_DEFINE's to save the user
86         from having to hack acconfig.h.
88 1999-12-06  Gary V. Vaughan  <gary@gnu.org>
90         * NEWS: Updated.
91         * TODO: Note some cleanups that are now needed.
92         * libltdl/configure.in: Use the new macroised tests.
93         * libltdl/ltdl.m4: New file, macroised tests formerly in
94         libltdl/configure.in.
95         Reported by Stephan Kulow <coolo@kde.org>.
97         From Tim Mooney  <mooney@dogbert.cc.ndsu.NoDak.edu>
98         * ltconfig.in:  split off the osf3 section, so that the osf4 and
99         osf5 sections can add `-msym' to arguments passed to the linker
100         for shared libs.
102 1999-12-03  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
104         * ltconfig.in (ac_compile): Use $ac_ext instead of .c.
105         (ac_link): Likewise.
106         (dlfcn.h, ac_try): Do not add filename, it is already in
107         ac_compile.
108         Reported by Stephane Conversy <Stephane.Conversy@lri.fr>
110         * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
111         works together with fast_install.
113         * libtool.m4: Use host when --target is not specified.
115         * configure.in: AC_SUBST variables that are used by ltconfig to
116         build libtool.
118         * ltconfig.in (irix6*): Do not override deplibs_check_method
119         here.
121         * libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
123 1999-11-20  Michael Forster  <email@michael-forster.de>
125         * ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes.
127 1999-11-29  Gary V. Vaughan  <gary@gnu.org>
129         * ltconfig.in:  Be friendlier to C++ compilers when testing
130         for dlopen support.
131         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
133 1999-11-26  Gary V. Vaughan  <gary@gnu.org>
135         * libtool.m4:  better use of $target instead of $host to support
136         cross compilation.
137         Reported by Sam Latinga <slouken@devolution.com>
139 1999-11-16  Thomas Tanner  <tanner@ffii.org>
141         * configure.in: generate ltconfig and ltmain.sh before configuring
142           libltdl
144 1999-11-04  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
146         * tests/sh.test: New test to detect uses of quotes within
147         backticks within quotes.
148         * ltconfig.in, ltmain.in: Fix detected errors.  Mark false
149         positives with a comment that disables the detector.
150         Reported by Akim Demaille <akim@epita.fr>
152         * configure.in: Move ltconfig and ltmain.sh generation back...
153         * Makefile.am: here.
155 1999-11-02  Thomas Tanner  <tanner@ffii.org>
157         * NEWS: updated
158         * THANKS: added Olly Betts and Pavel Roskin
159         * doc/libtool.texi: fix typo
161         * fix major bugs which rendered libtool virtually
162           unusable (i.e. not portable):
163         * ltconfig.in: don't hardcode system dependent variables in ltconfig!!
164           but set sane defaults
165         * Makefile.am: pass variables from AC_LIBTOOL_SETUP to ltconfig
166         * libtool.m4: ditto, fix typo in AC_PROG_LD_RELOAD_FLAG
168         * ltconfig.in: use old_deplibs for archives, too
169           remove second occurence of sysv5
170         * ltmain.in: fix typo, fix the second occurence of -DPIC, too
172         * libltdl/Makefile.am: increment version number, fix typo
173         * libltdl/ltdl.c (lt_dlsym): don't report an error if the
174           libltdl-style symbol name wasn't found
176 1999-11-02  Wolfgang Rapp <ulris@bn-ulm.de>
178         * ltconfig.in: add support for Unixware (sysv4.2uw2*)
180 1999-10-29  Gary V. Vaughan  <gary@gnu.org>
182         * ltmain.in:  Damnit!  Cygwin cvs committed all the
183         dos line endings.
185 1999-10-28  Stephane Conversy  <Stephane.Conversy@lri.fr>
187         * ltmain.in (-DPIC):  changed the order of pic flags a little to
188         prevent upsetting the sgi c++ compiler.
190 1999-10-28  Olly Betts  <olly@muscat.co.uk>
192         * ltconfig.in (opt_cr):  Handle crlf sequences output by the
193         mingw toolchain.
195         * libtool.m4:  Third time lucky, with Tor's patch.
197 1999-10-19  Tor Lillqvist  <tml@iki.fi>
199         * libtool.m4:  these was a missing `*' in the -mno-cygwin
200         match.
201         * ltconfig.in (cygwin, ltdll_obj): fixed a quoting error.
202         (export_symbols_cmds): added missing cosmetic newline.
204 1999-10-18  Tor Lillqvist  <tml@iki.fi>
206         * libtool.m4: test command used == which should be =.
207         Support -mno-cygwin flag for building mingw32 dlls.
208         * ltconfig.in (file_magic_cmd): add missing quotes.
209         (deplibs_check_method): and here.
211 1999-10-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
213         * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
214         specified library is not just a basename.
216 1999-10-10  Gary V. Vaughan  <gary@gnu.org>
218         * libtool.m4 (AC_PATH_FILE): new macro replaces
219         AC_PATH_TOOL_GREP_OUTPUT.
220         (AC_PATH_TOOL_PREFIX): new macro replaces
221         AC_PATH_PROG_GREP_OUTPUT.
222         (AC_LD_RELOAD_FLAG):  migrated from ltconfig.in.
223         (AC_DEPLIBS_CHECK_METHOD): ditto.
224         * ltconfig.in (reload_flag): moved to libtool.m4.
225         (deplbs_check_method): ditto.
227 1999-10-07  Gary V. Vaughan  <gary@gnu.org>
229         * libtool.m4 (AC_PATH_PROG_VERSION_GREP): removed in favour of the
230         more general AC_PATH_PROG_GREP_OUTPUT.
231         (AC_PATH_TOOL_VERSION_GREP): removed in favour of the more general
232         AC_PATH_TOOL_GREP_OUTPUT.
233         (AC_PROG_LIBTOOL):  Search for a working find program in the
234         user's PATH using the new macros.
236 1999-10-06  Gary V. Vaughan  <gary@gnu.org>
238         * NEWS: updtaed.
239         * ltconfig.in: Accept osf5.
240         Reported by Sascha Schumann <sascha@schumann.cx>
242 1999-10-04  Gary V. Vaughan  <gary@gnu.org>
244         * ltmain.in (-no-install):  This doesn't work on win32 since
245         the search path for libraries is not encoded in the binary,
246         and dlls not in $PATH won't be found.  Fall back to -no-fast-install
247         instead.
249         * ltmain.in (-no-fast-install):  Wrapper script used to add the
250         exeext on again when naming the wrapped executable.
252 1999-10-03  Gary V. Vaughan  <gary@gnu.org>
254         * ltconfig.in:  Set $FILE to @FILE@ for substitution with
255         the value found in libtool.m4 at configure time.
256         * libtool.m4 (AC_PATH_TOOL_GREP_VERSION):  New macro, combines
257         AC_PATH_PROG and AC_CHECK_TOOL with a test which greps the
258         output of $ac_dir/${ac_prefix}<tool> --version for a
259         given regex.
260         (AC_PATH_PROG_GREP_VERSION):  New macro used by the above.
261         (AC_LIBTOOL_SETUP): Use the new macros to search the PATH
262         [starting at /usr/bin] for a file program which accepts
263         --version and has "file" in its --version output.
265 1999-10-03  Thomas Tanner  <tanner@ffii.org>
267         * NEWS: new -no-install flag
268         * configure.in: fix typo
269         * doc/libtool.texi(Link mode): document -no-install flag,
270           correct -no-fast-install docs
271         * libtool.m4: check for "file" command
272         * ltconfig.in: don't hardcode /usr/bin/file, remove second
273           definition of sysv5, replace linkopts -> linker_flags
274         * ltmain.in: add new -no-install flag, print help for -no-install
275           and -no-fast-install flags
277 1999-10-03  Olly Betts <olly@muscat.co.uk>
279         * ltmain.in: always create output_objdir
281 1999-10-03  Pavel Roskin  <pavel_roskin@geocities.com>
283         * libltdl/Makefile.am: don't preserve file attributes when
284           installing the libltdl sources
286 1999-10-01  Gary V. Vaughan  <gary@gnu.org>
288         * configure.in (AC_OUTPUT_COMMANDS): generate ltmain.sh
289         * Makefile.am (ltmain.sh ltconfig): removed.  Automake inserts the
290         rules to automatically call config.status.
292         * libtool.m4: be sure to AC_SUBST values no longer tested in
293         ltconfig.in.
294         * ltconfig.in: replaced several of the simple feature tests with
295         substitutions from config.status.
296         * Makefile.am (ltconfig): generate ltconfig with config.status.
297         * configure.in (AC_OUTPUT): generate ltconfig with config.status.
299 1999-09-30  Donald Anderson  <dda@world.std.com>
301         * ltconfig.in (sco3.2v5): use pass_all deplibs_check_method
302         for SCO3.2.
304 1999-09-29  Gary V. Vaughan  <gary@gnu.org>
306         * ltconfig.in (whole-archive-flag-spec):  I had been
307         wondering why my file system was filling up with empty
308         files named `71'... seems I forgot to hold in the
309         shift key when redirecting stderr, 2>&1.  Doh!
311 1999-09-29  Vadim  <vadim@olly.ru>
313         * ltconfig.in (sysv):  More UW7 support.
315 1999-09-28  Albert Cheng  <acheng@ncsa.uiuc.edu>
317         * ltmain.in (shlibpath_var): ensure the variable is non-empty before
318         exporting it.
320 1999-09-27  Manfred Weichel  <weichel@global.nacamar.de>
322         * ltconfig.in (sysv5): Added support required for shared
323         library linking on SCO UW7.
325 1999-09-22  Gary V. Vaughan  <gary@gnu.org>
327         * ltconfig.in (whole-archive-flag-spec): test whether the
328         version of GNU ld being used understands --whole-archive
329         before using it.
331 1999-09-19  Thomas Tanner  <tanner@ffii.org>
333         * ltmain.in: don't ignore convenience libraries for objects/archives
334           (temporary hack)
336 1999-09-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
338         * ltconfig.in (CDPATH): Set to `:' instead of empty.
339         * ltmain.in (CDPATH): Likewise.
340         Reported by Greg McGary <gkm@eng.ascend.com>
342 1999-08-24  Gary V. Vaughan  <gary@gnu.org>
344         * ltconfig.in (ltdll.c, impgen.c): Prevent the shell from
345         expanding variables & backslash escapes when writing these
346         files to the libtool script.
348 1999-08-24  Thomas Tanner  <tanner@ffii.org>
350         * NEWS: mention fixes
351         * doc/PLATFORMS: GNU/Hurd update
352         * depdemo: make use of variables
353         * ltconfig.in: use CC -E when checking for ELF support
354           on NetBSD (reported by Todd Vierling <tv@pobox.com>),
355           replace all occurences of 'linkopts' with 'linker_flags'
356         * ltmain.in: move ltdll.c and impgen.c to ltconfig.in and
357           only add them to the libtool script if it's necessary
359 1999-08-24  Boyd Gerber  <gerberb@zenez.com>
361         * ltconfig.in: add support for UnixWare 7.X.X
362         * doc/PLATFORMS: add new platforms
364 1999-08-24  Pavel Roskin  <pavel_roskin@geocities.com>
366         * doc/libtool.texi: document use of noinst_LTLIBRARIES for
367           convenience libraries
369         * ltconfig.in: check for freebsdelf3, not just freebsd3.
370         Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1
372         * ltmain.in: enable workaround for freebsdelf3.0
374 1999-08-24  Bert Driehuis  <bert_driehuis@nl.compuware.com>
376         * ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
378 1999-08-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
380         * libltdl/COPYING.LIB: Update to version 2.1.
381         * libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.
383 1999-08-03  Gary V. Vaughan  <gary@gnu.org>
385         * libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return
386         stripping.
387         * ltconfig.in: ditto.
388         From Olly Betts <olly@muscat.co.uk>
390 1999-08-02  Olly Betts  <olly@muscat.co.uk>
392         * doc/libtool.texi (Compile mode): typo correction.
393         (Link mode): and another.
394         (Release numbers):  and another.
395         (Distributing libltdl): and another.
396         (Test descriptions): and another.
397         (libtool script contents): and one more.
399         * libtool.m4 (AC_PROG_LD): strip carriage returns from the
400         output of gcc -print-prog-name=ld.
401         * ltconfig.in: ditto.
403 1999-07-30  Pavel Roskin  <pavel_roskin@geocities.com>
405         * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
406         initialised structures are sometimes emitted in the code section.
408 1999-07-30  Mumit Khan  <khan@xraylith.wisc.edu>
410         * ltconfig.in:  Read line at a time to avoid tokenisation by
411         shell.
413 1999-07-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
415         * ltmain.in: Fix creation of relative links to object files in
416         sub-dirs.
418 1999-07-29  Olly Betts  <olly@muscat.co.uk>
420         * ltconfig.in(cygwin mingw32, archive_expsym_cmds): Only compile
421         and link ltdll.c if the libtool.m4 macros discovered that it is
422         required.
424 1999-07-26  Olly Betts  <olly@muscat.co.uk>
426         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops.  Fix some
427         typos made by Evil Gary while (mis)applying my patch :-).
429         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP):  On second
430         thoughts, only probe for -mdll vs -dll on mingw, and revert to
431         the old `-Wl,--dll -nostartfiles' on cygwin.
433 1999-07-24  Erez Zadok  <ezk@cs.columbia.edu>
435         * doc/PLATFORMS (i*86-*openbsd2.5):  New platform.
436         Slight reordering of other bsd entries.
438 1999-07-24  Olly Betts  <olly@muscat.co.uk>
440         * NEWS: Note new user visible changes.
441         * libtool.m4 (mingw32, AC_LIBTOOL_SETUP): probe for -mdll vs -dll
442         under cygwin/mingw.
443         probe whether the cygwin/mingw library supplies a stub DllMain
444         (but this information isn't yet used).
445         * ltconfig.in (mingw32, extract_expsyms_cmds): if HOST_CC is set,
446         use that to build impgen so we can use it when cross-compiling.
447         use correct entry points for mingw so static C++ constructors get
448         called for code in the DLL.
449         * ltmain.in (impgen.c): define O_BINARY to 0 if it is not in the
450         system headers.
452 1999-07-24  Bert Driehuis <bert_driehuis@compuware.com>
454         * ltconfig.in:  Updated bsdi4 soname specs to be more like
455         linux as discussed on the bsdi mailing list.
457 1999-07-20  Gary V. Vaughan  <gary@gnu.org>
459         * configure.in (AC_PROG_RANLIB):  No longer required as we now use
460         AC_CHECK_TOOL in AC_LIBTOOL_SETUP.
461         * libtool.m4 (AC_PROG_LIBTOOL):  Pass the $build variable to
462         ltconfig.
463         (AC_PROG_RANLIB): replaced with AC_CHECK_TOOL.
464         * ltconfig.in (build): new variable to hold the build triplet
465         which is now checked for unless --no-verify is specified.
466         (--build): new argument to set the build triplet.
467         (ranlib): Prefer ${host_alias}-ranlib[.exe] if $build is different
468         to $host.
469         * doc/libtool.texi (Invoking ltconfig): Document --build option.
470         * NEWS: Note --build option.
472 1999-07-19  Erez Zadok  <ezk@cs.columbia.edu>
474         * doc/PLATFORMS: Updated mostly *bsd platforms.
476 1999-07-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
478         * doc/libtool.texi (Porting inter-library dependencies): Typos
479         Reported by Petter Reinholdtsen <pere@hungry.com>
481 1999-07-17  Thomas Tanner  <tanner@ffii.org>
483         * NEWS, TODO: updated (pic flags)
484         * libtool.m4 (AC_PROG_LIBTOOL): added --with-pic flag
485         * ltconfig.in: new pic_mode variable and --prefer[-non]-pic flags,
486           fixed the strip check (reported by Keith Bostic <bostic@bostic.com>)
487         * ltmain.in (compile mode): build only PIC/non-PIC code depending
488           on pic_mode
489         * libltdl/README: document the supported dlopen interfaces
490         * doc/libtool.texi (tests): documented new tests
491         * tests/Makefile.am: added new tests
492         * tests/demo-pic.test: new test to test --with-pic
493         * tests/demo-nopic.test: new test to test --without-pic
494         * tests/build-relink2.test: variant of build-relink.test that
495           uses depdemo
497 1999-07-09  Olly Betts  <olly@muscat.co.uk>
499         * doc/libtool.texi (C++ Libraries):  fixed a typo.
501 1999-07-06  Gary V. Vaughan  <gary@gnu.org>
503         * README-alpha:  improved the release instructions to mention
504         actual list addresses for announcements, and urls for upload
505         locations.
507 1999-07-03  Thomas Tanner  <tanner@ffii.org>
509         * doc/PLATFORMS: 1.3b passes all tests on cygwin
511 1999-07-03  Pavel Roskin <pavel_roskin@geocities.com>
513         * ltconfig.in: finish_cmds for FreeBSD removed
514         * depdemo/l3/Makefile.am: install libl3.la into an extra directory
516 1999-07-02  Gary V. Vaughan  <gary@gnu.org>
518         * configure.in: bumped version to 1.3c.
520         GNU libtool 1.3b was released.
522         * NEWS: inserted todays date.
524 1999-07-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
526         * doc/PLATFORMS: Tested on as many platforms as possible for me.
528 1999-07-01  Thomas Tanner  <tanner@ffii.org>
530         * NEWS: updated
531         * doc/PLATFORMS: updated
532         * changed my email address
534 1999-06-30  Thomas Tanner  <tanner@ffii.org>
536         * demo/foo.h: use LT_PARAMS instead of LTDL_PARAMS (this is not libltdl)
537         * tests/build-relink.test: also check for hardcode_into_libs = yes,
538           if set, we need to relink at install-time
540 1999-06-29  Thomas Tanner  <tanner@ffii.org>
542         * NEWS: mention -no-fast-install, rename dummy to force
543         * doc/PLATFORMS: 1.3b passes all tests on GNU/Linux,
544           FreeBSD (2.2.6 and 3.1)
545         * doc/libtool.texi: it's possible to link libtool libraries
546           using -L and -l, better documentation of uninstall and clean mode,
547           rename dummy to force, documented -no-fast-install,
548           AC_LIBLTDL_* must be called before AC_PROG_LIBTOOL,
549           documented hardcode_into_libs and striplib/old_striplib,
550         * ltconfig.in: search for strip program, added hardcode_into_libs
551           and striplib/old_striplib variables, set strip commands for GNU strip,
552           on FreeBSD >= 3.2 set hardcode_into_libs to yes,
553           fast-install mode doesn't work if hardcode_into_libs = yes
554         * ltmain.in: reimplemented hardcoding into libraries:
555           new relink mode, preserve all libtool args, relink libraries
556           when installing if necessary
557           added -no-fast-install flag, removed unnecessary `dlname'
558           initialization, use striplib/old_striplib for stripping libraries,
559           dlname is always soname or in library_names so we don't need
560           to handle different file names
562 1999-06-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
564         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to yes
565         up to release 3.1, and to no from 3.2 on.
566         Reported by Pavel Roskin <pavel_roskin@geocities.com>
568 1999-06-29  Pavel Roskin <pavel_roskin@geocities.com>, Alexandre Oliva  <oliva@dcc.unicamp.br>
570         * ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to
571         yes; tested on 3.1-ELF by Pavel and on 2.2.6 by Alexandre.
573 1999-06-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
575         * ltconfig.in (linux-gnu*, deplibs_check_method): Use pass_all on
576         alpha, x86 and sparc architectures by now, reverting to file_magic
577         at least on ARM, where it breaks.
579 1999-06-23  Thomas Tanner  <tanner@ffii.org>
581         * NEWS: updated
582         * README: added GNU Hurd to the supported platforms
583         * doc/libtool.texi: document `-dlpreopen dummy'
584           instead of `-dlopen dummy'
585         * libltdl/ltdl.c (strchr): fixed typo (missing star)
587 1999-06-23  Stephan Kulow <coolo@itm.mu-luebeck.de>
589         * libltdl/ltdl.c (strrchr): fixed typo (missing star)
590         * libltdl/ltdl.c (trim): use `const' to silence -Wwrite-strings
592 1999-06-23  Olly Betts  <olly@muscat.co.uk>
594         * ltmain.in (ltdll.c): Support for crosscompiling from linux to
595         mingw32.
597 1999-06-23  Gary V. Vaughan  <gary@gnu.org>
599         * ltconfig.in (cygwin, export_symbols_cmds): If there is already
600         an extracted and compiled ltdll.c, then don't delete, reextract
601         and recompile.
602         (cygwin, archive_expsym_cmds): Make sure the ltdll source has been
603         extracted and compiled before referencing the object, since there
604         are paths through the code which run archive_expsym_cmds without
605         running export_symbols_cmds.
607 1999-06-20  Gary V. Vaughan  <gary@gnu.org>
609         * ltconfig.in:  moved the test for NM after the test for
610         no_builtin_flag.
612 1999-06-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
614         * ltconfig.in: Use sed '$q' instead of sed "" for copying ltmain,
615         just in case some sed does not support an empty command.
617         * ltconfig.in (link_static_flag, ac_cv_prog_cc_static): Use the
618         latter in the test.
620 1999-06-18  Thomas Tanner  <tanner@ffii.org>
622         * ltconfig.in (bsdi4, deplibs_check_method): use a less restrictive
623           regex (reported by Chris P. Ross <cross@eng.us.uu.net>)
624         * ltmain.in: support `-dlopen dummy', define lt_preloaded_symbols
625           if dlself != no
626         * doc/libtool.texi (Compile and Link mode): document it,
627           documented the -Wc, -Wl flags, libtool does also support non C
628           source code
630 1999-06-18  Teun Burgers  <burgers@ecn.nl>
632         * ltconfig.in: CR/LF fix for broken DJGPP bash
633         * ltmain.in: CR/LF fix for DJGPP
635 1999-06-18  Gary V. Vaughan  <gary@gnu.org>
637         * ltmain.in (outputname): When generating the executable wrapper
638         script, $outputname already has the $exeext suffix, so we needn't
639         add it again.
641 1999-06-16  Gary V. Vaughan  <gary@gnu.org>
643         * libltdl/configure.in (ac_cv_lib_dl_dlopen): missing "x" in test
644         comparison corrected.
646         * libltdl/ltdl.c (sys_wll_open): libltdl expects this function to
647         fail if it is unable to physically load the library.  Sadly,
648         LoadLibrary will search the loaded libraries for a match and
649         return one of them if the path search load fails.  Simulate a
650         failure in this case for compatibility with the other APIs.
651         Also, LoadLibrary takes the liberty of adding `.dll' to library
652         names passed without an extension, we now add a trailing `.' to
653         prevent this from happening.
655 1999-06-15  Gary V. Vaughan  <gary@gnu.org>
657         * libltdl/ltdl.c (sys_wll_close): Strangely enough, Microsoft have
658         decided that LoadLibrary returns `0' for success, yet FreeLibrary
659         returns `0' for failure!  The FreeLibrary call used to interpret
660         `0' as success for both functions.
662 1999-06-14 Thomas Tanner  <tanner@ffii.org>
664         * ltconfig.in: use eval when setting have_dlfcn_h, reformatting
666 1999-06-12 Thomas Tanner  <tanner@ffii.org>
668         * ltmain.in: store old archives in deplibs and old_deplibs,
669           retain the order of dependency libraries (even old archives),
670           determining the absolute directory name didn't work due to a typo,
671           add the library search paths of all dependency libraries when
672           linking a library (fixes IRIX 5.2 bug)
674 1999-06-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
676         * ltconfig.in: Reverted June 6's patch for new GNU ld output, it
677         is no longer needed, as ld reverted to the original format.
678         * NEWS: Likewise.
680         * ltconfig.in: When testing self-dlopening, test whether dlclose
681         crashes.  On FreeBSD 3.1, it does.  :-(
682         * libltdl/configure.in: Likewise.
683         * NEWS: Note work-around.
684         Reported by Pavel Roskin <pavel_roskin@geocities.com>
686 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
688         * ltconfig.in (exeext): autoconf's AC_EXEEXT uses "no" to indicate
689         no extension, and we must do the same in order to share the cache
690         value. Also we must ignore conftest.err which HPsUX (at least)
691         fills with gratuitous warnings.
692         (objext): for consistency, do the same as above.
693         Reported by Pavel Roskin <pavel_roskin@geocities.com>
695 1999-06-09  Pavel Roskin  <pavel_roskin@geocities.com>
697         * ltconfig.in (exeext): Use quotes in the test, to prevent a
698         failure in sh.test.
700 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
702         * ltconfig.in: Reordered tests to be more like configure.in's
703         recommended order (programs first, then libraries, etc.).
704         Performed a manual ``constant folding pass'' (eg: s/eval "test
705         \"echo '$''{'lt_cv_dlopen'+set}'`\" != set/test
706         "${lt_cv_dlopen+set}" != set/).
707         s/test "${foo+set}" = "set"/test "X${foo+set}" = Xset/g
709         * ltconfig.in (link_static_flag): Accept, in order of decreasing
710         preference: the cached value; the default value for the current
711         host.  Also test that the compiler accepts the flag, and cache
712         that result too.
714         * ltconfig.in (pic_flag): Accept, in order of decreasing
715         preference:  the cached value; the default value for the current
716         host.  Also test that the compiler accepts the flag, and cache
717         that result too.
719 1999-06-08  Gary V. Vaughan  <gary@gnu.org>
721         * ltconfig.in (LN_S): Accept, in order of decreasing preference:
722         the cached value; an environment setting; ``ln -s'' if it works;
723         ``ln'' if ``ln -s'' doesn't appear to work.
725         * ltconfig.in (objext): Accept, in order of decreasing preference:
726         the cached value; the result of a test object compilation.
728         * ltconfig.in (RANLIB): Accept, in order of decreasing preference:
729         the cached value; an environment setting; the first file called
730         ``ranlib'' in the user's path.
732         * ltmain.in (exeext): Use $exeext when working out the names of
733         programs (but not the wrapper script itself due to a stupidity in
734         win32 which hardwires the .exe extension to the binary loader!).
735         * ltconfig.in (exeext): Now that the wrapper script tries to move
736         executables, we need to know whether they have an extension (ala
737         AC_EXEEXT).  Since we can't rely on AC_EXEEXT having been called
738         in configure.in, we must be able to check for ourselves, though we
739         can look for a cached result incase AC_EXEEXT was called.
741         * ltconfig.in (cygwin, pic_flag):  Force separate compilation of
742         objects for dlls vs. objects for static archives.  Using a cpp
743         macro also allows us to decide whether or not we need to use
744         dllexport/import declarations.
746         * ltconfig.in (cygwin, need_version): Set to no, otherwise module
747         dll's end up with mighty long names!
749 1999-06-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
751         * ltconfig.in: Support new GNU ld --help output format.
752         * NEWS:  Likewise.
753         Reported by Gaël Quéri <gael@baoule.dyndns.org> and
754         H.J. Lu <hjl@varesearch.com>.
756 1999-06-05  Mark Kettenis  <kettenis@gnu.org>
758         * ltconfig.in: Update support for the Hurd.  Make sure that the
759         soname includes the major version number and create the right
760         links.  Allow shared objects without the `lib' prefix and without
761         version information.
763 1999-06-02 Nick Rasmussen <nick@jive.org>
765         * ltmain.in (link): use "$nonopt" as the compiler for
766           compile/finalize_command
768 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
770         * TODO: Remove the short list of people interested in C++
771         constructors; it's not meaningful, since there are so many more
772         people requesting this feature, and we just can't maintain it
773         accurate.
775 1999-05-27  Pavel Roskin  <pavel_roskin@geocities.com>
777         * ltconfig.in (GNU Hurd, deplibs_check_method): Use pass_all.
779 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>, Olly Betts  <olly@muscat.co.uk>
781         * ltmain.in: Expand convenience libraries when creating reloadable
782         objects.
783         * NEWS: Ditto.
785 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
787         * NEWS: Mention the two bugfixes below.
789         * ltmain.in: Only create directory into which to extract
790         convenience libraries when $convenience is not empty.  It would
791         always be created on systems that did not support
792         whole_archive_flag_spec.
794         * ltconfig.in (export_symbols_cmds): Add $convenience.
795         (cygwin, export_symbols_cmds): Ditto.
796         * ltmain.in: Generate export symbol list before expanding
797         convenience libraries, to avoid passing whole_archive_flag_spec to
798         $NM.
799         Reported by Godmar Back <gback@cs.utah.edu>
801 1999-05-27  David Jones  <jones@mosaid.com>
803         * libltdl/ltdl.c (LTDL_BIND_FLAGS): Remove BIND_VERBOSE, to avoid
804         printing error messages.
806 1999-05-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
808         GNU libtool 1.3.2 was released.
810 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
812         * NEWS: List fixed problems.
813         * doc/PLATFORMS: Tested for 1.3.2.
815         * config.guess: Synch with GNU common.
817         * ltmain.in: Revert to stripping .exe on all platforms.
818         * TODO: Note about this problem.  Demo is fixed on win32.  Support
819         `empty' convenience libraries.
821         * ltconfig.in (solaris*, ld_shlibs): Do not enable shared
822         libraries with GNU ld 2.8.*, it's broken.  Emit a warning
823         suggesting an upgrade.
824         Reported by Brian Ford <ford@vss.fsi.com> and Ronald Pijnacker
825         <Ronald.Pijnacker@best.ms.philips.com>
827 1999-05-25  Frank Ch. Eigler <fche@cygnus.com>
829         * ltmain.in: file_magic check would not avoid cyclic links.
831 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
833         * depdemo/main.c, depdemo/l1/l1.c, depdemo/l2/l2.c: K&R-ize.
834         * depdemo/l3/l3.c, depdemo/l4/l4.c: Likewise.
836         * ltmain.in: Remove object files before writing to them, to avoid
837         circular links.
838         Reported by Ron O'Hara <rono@sentuny.com.au>
840 1999-05-24 Thomas Tanner  <tanner@ffii.org>
842         * NEWS: support for installing stripped libraries using GNU strip
843         * ltconfig.in: set deplibs_check_method=pass_all on FreeBSD,
844           Linux and Solaris since no one can reproduce the famous deplibs
845           bug
846         * ltmain.in: preserve $CC (reported by Tom Tromey),
847           strip libraries using GNU strip if it's available and the
848           -s flag was passed to "install"
850 1999-05-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
852         * doc/PLATFORMS: Release 1.3.1 passes on GNU Hurd/x86.
853         Reported by Pavel Roskin <pavel_roskin@geocities.com>
855 1999-05-23 Thomas Tanner  <tanner@ffii.org>
857         * ltmain.in: strip off the .exe suffix only on *Win
858           (Reported by Matthew D. Langston <langston@SLAC.Stanford.EDU>)
860 1999-05-22 Thomas Tanner  <tanner@ffii.org>
862         * NEWS: updated
863         * TODO: -Wc, -Wl, implemented
864         * AUTHORS: changed my email address
865         * doc/libtool.texi: fix "wierd" typo :)
866         * ltmain.in: linking against convenience libraries was broken,
867           implemented the "-Wc," "-Wl," "-Xcompiler" "-Xlinker" flag for
868           compiler and linker-specific flags,
869           add -lc before we do the deplibs check
870         * ltconfig.in: linkopts -> compiler_flags for $CC and linker_flags
871           for $LD, link_all_deplibs=yes on IRIX
873 1999-05-22  Gary V. Vaughan  <gary@gnu.org>
875         * NEWS: insert todays date alongside 1.3.1 release.
876         * Makefile.in: use gnu not gnits rules
877         * config.guess: synch with gnu common & apply Takabatake-san's
878         MIPS *000 patch.
879         * config.sub: synch with gnu common.
881 1999-05-22  Doug Evans  <devans@casey.cygnus.com>
883         * libltdl/configure.in (dlerror): Fix typo in dlopen found in -ldl
884         test.
886 1999-05-21  Pavel Roskin  <pavel_roskin@geocities.com>
888         * Makefile.am (EXTRA_DIST): Don't distribute instutils.
889         (install-data-hook): use libltdl/Makefile.am's local-install files
890         rule.
891         * libltdl/Makefile.am (local-install-files):  New rule to install
892         libltdl without creating links or mode 777 directories.
893         * instutil/*: deleted.
895 1999-05-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
897         * doc/PLATFORMS: Updated to 1.3.1 for all platforms I've got.
898         Added sparc-unknown-linux-gnu.
900 1999-05-21  Gary V. Vaughan  <gary@gnu.org>
902         * demo/foo.h: s/PARAMS/LTDL_PARAMS/g
903         * libltdl/ltdl.h: ditto.
904         * libltdl/ltdl.c: ditto.
906         * demo/foo.h: s/__P/PARAMS/g
907         * libltdl/ltdl.h: ditto.
908         * libltdl/ltdl.c: ditto.
909         Reported by Akim Demaille <demaille@inf.enst.fr>
911 1999-05-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
913         * NEWS: Updated docs.
914         * TODO: Recommend libtool.m4 to be inserted in acinclude.m4. AIX
915         4.3.2.0 no longer fails on static dlopening.  GNU DLD no longer
916         has to support .la files, since libltdl already does.  Convenience
917         libraries and reloadable objects should be tested in the
918         testsuite.  We could support some amount of control on the soname
919         of libraries.
920         * doc/libtool.texi: Notes about convenience libraries and
921         automake.  Documented INCLTDL.
923 1999-05-20 Thomas Tanner  <tanner@gmx.de>
925         * cdemo/main.c: "Welcome _to_ ..."
926         * mdemo/main.c: ditto
927         * libltdl/configure.in: support multiple dlopening mechanisms
928           at once
929         * libltdl/ltdl.c: prefix system dependent functions with "sys_"
930           to avoid symbol conflicts (libdld didn't work)
931         * libtool.m4 (AC_LIBLTDL_*): set INCLTDL to the path of ltdl.h
932         * ltconfig.in: check for dlopen with -ldl first
934 1999-05-19  Gary V. Vaughan  <gary@gnu.org>
936         * NEWS: Added 1.3.1 news items.
937         * doc/PLATFORMS: updated the boxes I have access to, to 1.3.1
938         in preparation for the next release.
940 1999-05-18  Gary V. Vaughan  <gary@gnu.org>
942         * ltconfig.in (cygwin*, whole_archive_flag_spec): dlltool chokes
943         on this, so leave it unset in this case so that the ltmain code
944         knows it has to unpack convenience archives by itself.
946 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
948         * ltmain.in: Do not exit when an unknown library name is passed
949         passed in, simply warn and continue since some compilers require
950         -LANG:* like options to work.
951         Reported by Adam C. Powell, IV <adam.powell@nist.gov>
953 1999-05-17  Jiro Takabatake  <jiro@din.or.jp>
955         * ltconfig.in: port to NEC UX/4800.
956         * NEWS: updated.
958 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
960         * ltconfig.in (beos*, deplibs_check_method): set to pass_all.  BeOS
961         is PIC by default.
962         Reported by "Shawn T . Amundson" <amundson@gimp.org>
964         * libltdl/configure.in: Fix test failures on AIX 4.3.2 by checking
965         for dlopen *with* -ldl first.
966         Reported by Greg Wooledge <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
968         * demo/foo.h: Don't set any declspecs until we have full dll
969         support.
971 1999-05-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
973         * ltconfig.in (solaris2.6, whole_archive_flag_spec): Do not use
974         -Wl for allextract.
976 1999-05-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
978         * instutil/chmod: New script to avoid chmod'ing files while
979         installing libltdl's sources.
980         * instutil/ln: New script to avoid hard-linking libltdl's sources
981         in the install tree.
982         * Makefile.am (EXTRA_DIST): Dist them.
983         (instal-data-hook): Add srcdir/instutil to the beginning of the
984         PATH before installing libltdl's sources.
986 1999-05-09  Gary V. Vaughan  <gary@gnu.org>
988         * TODO: updated.
990 1999-05-06  Gary V. Vaughan  <gary@gnu.org>
992         * Makefile.am (install-data-hook):  make sure the install directory
993         is not left world writable.
994         Reported by Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
996 1999-04-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
998         * libtool.m4: Use ifelse instead of if.
999         Reported by David Mazieres <dm@amsterdam.lcs.mit.edu>
1001 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
1003         GNU Libtool 1.3 was released.
1005         * NEWS: Summarize news from 1.2 to 1.3.
1007         * ltmain.in: Save exit status of link_command before removing
1008         symbol table object file.
1010 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
1012         * doc/PLATFORMS: updated my hpux-10.20 and cygwin box entries.
1014 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
1016         * NEWS: Improved support for DU and IRIX too.
1018         * config.sub, config.guess: Updated from GNU common.
1020         * mdemo/configure.in: Move AC_LIBLTDL_CONVENIENCE before
1021         AM_PROG_LIBTOOL, as suggested by autoconf.
1023         * doc/libtool.texi (Distributing libltdl): Document that -static
1024         may cause the same problems on libltdl as -all-static.
1025         * TODO: We might want to fix this in the future.
1027         * doc/libtool.texi: Clear up overfull hbox.
1029         * libltdl/Makefile.am (ltdl.lo): Add dependencies.
1030         * libltdl/configure.in: Clean up some duplicate defines.  Enable
1031         support for multiple dlopening mechanisms.
1032         * libltdl/acconfig.h: New file.  Add #undefs for defines that
1033         would be duplicated.
1035 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
1037         * libtool.m4 (cygwin*|mingw*, DLLTOOL, OBJDUMP, AS): Only expand the
1038         code that makes these configure time checks on hosts that need the
1039         tools *and* if the AC_LIBTOOL_WIN32_DLL macro is used.
1041 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
1043         * ltmain.in (nlist, SYMFILE): Use outputname instead of output for
1044         names within output_objdir.
1046 1999-04-28  Alexandre Oliva  <oliva@dcc.unicamp.br>
1048         * libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC,
1049         AC_ENABLE_FAST_INSTALL): Do not call AC_BEFORE here, they're
1050         AC_REQUIREd by AC_LIBTOOL_SETUP.
1051         (AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
1052         Call AC_BEFORE here, and now with two arguments, since these do
1053         change the default.
1054         (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE): Fix calls to
1055         AC_BEFORE.
1057 1999-04-28  Gary V. Vaughan  <gary@gnu.org>
1059         * libtool.m4 (ltconfig_enable_win32_dll): pass --enable-win32-dll to
1060         ltconfig if this is set.
1061         (AC_LIBTOOL_WIN32_DLL): New macro required for libtool to attempt
1062         a dll build on win32 hosts.
1063         * ltconfig.in (--enable-win32-dll): new flag for the cli.
1064         (cygwin*|mingw*|os2*, ltconfig_enable_win32_dll): if this is not set
1065         to yes, then do not attempt to build shared libraries.
1066         * doc/libtool.texi: document AC_LIBTOOL_WIN32_DLL.
1067         * NEWS: noted new macro.
1069 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
1071         * libtool.m4 (AC_LIBTOOL_DLOPEN, AC_ENABLE_SHARED,
1072         AC_ENABLE_STATIC, AC_ENABLE_FAST_INSTALL, AC_LIBLTDL_CONVENIENCE,
1073         AC_LIBLTDL_INSTALLABLE): Warn if they appear after
1074         AC_PROG_LIBTOOL.  AC_LIBTOOL_SETUP, actually.
1075         (AC_LIBTOOL_SETUP): Check whether DLOPEN support is to be enabled
1076         at autoconf time, not configure time.  Simplify code and
1077         improve (?) help message about --disable-libtool-lock.
1079 1999-04-27 Thomas Tanner  <tanner@gmx.de>
1081         * NEWS: new clean mode
1082         * THANKS: added Ossama Othman
1083         * doc/libtool.texi: documented the new `clean' mode
1084         * ltconfig.in: set need_version=no on OSF (reported by
1085           Marcus Sundberg <mackan@stacken.kth.se>)
1086         * ltmain.in: allow absolute non-existant -L paths,
1087           always use output_objdir instead of objdir for temporary files,
1088           delete generated temporary symbol lists,
1089           don't add .la twice in the pseudo-library header,
1090           implemented and documented clean mode (deletes libraries,
1091           programs and object files and the files associated with them),
1092           if build_libtool_libs=no and no static library is available,
1093           try to link the program against the shared library,
1094           don't add a statically linked library to the dependency_libs
1095         * ltmain.in (help uninstall): added a missing backslash
1096           after echo (reported by Ossama Othman)
1098 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
1100         * ltmain.in (old_archive_cmds): Iterate on oldobjs to find out
1101         which links to object files we must create.  Do not test for empty
1102         pic_flag to create such links.  Use objext when searching for
1103         object files extracted from convenience library.
1105         * ltconfig.in (compiler_c_o): Make sure the compiler does not
1106         create temporaries in the current directory when output should go
1107         elsewhere.  We must perform locking if it does.
1109 1999-04-27  Gary V. Vaughan  <gary@gnu.org>
1111         * ltmain.in (old_archive_cmds): Ensure that there are always .o
1112         objects available before running old_archive_cmds.
1114 1999-04-26  Erez Zadok  <ezk@cs.columbia.edu>
1116         * doc/PLATFORMS: Updates for netbsd 1.3.3 and 1.4.
1118 1999-04-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
1120         * ltconfig.in (aix4.[01], always_export_symbols): The case pattern
1121         would never match; fixed.
1122         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
1124 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
1126         * libtool.m4 (OBJDUMP): Pass it to ltconfig.
1127         * configure.in: AC_SUBST DLLTOOL, OBJDUMP and AS.
1128         * Makefile.am (libtool, clibtool): Pass them to ltconfig.
1130 1999-04-25  Frank Ch. Eigler  <fche@cygnus.com>
1132         * libtool.m4 (cygwin*): Look for target objdump tool.
1133         * ltconfig.in (cygwin*, file_magic_cmd): Use autoconf-located target
1134         objdump tool.  Track OBJDUMP like DLLTOOL and AS.
1136         * ltconfig.in (cygwin*, deplibs_check_method): Accept
1137         "architecture: i386" as optional suffix, for it is printed on a
1138         separate line sometimes.
1140         * ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C".
1142         * ltmain.in (deplibs_check_method=file_magic): Redirect stderr to
1143         /dev/null, to suppress error messages from target objdump.
1145 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
1147         * ltconfig.in (irix*, soname_spec, library_names_spec): Missing
1148         dots before $versuffix and $major.
1150         * ltconfig.in (solaris*, whole_archive_flag_spec): Use -z
1151         allextract/defaultextract from Solaris 2.6 on.
1152         Reported by Brian Ford <ford@vss.fsi.com>
1154         * ltconfig.in (beos*, allow_undefined_flag): Do not build shared
1155         libraries with undefined symbols.
1157         * ltconfig.in (aix4*, allow_undefined_flag): Set to -berok.
1158         (aix4*, shared_flag): Set to -shared or ${wl}-bM:SRE.
1159         (aix4*, archive_cmds): Use -bexpall.
1160         (aix4*, archive_cmds, archive_expsym_cmds): Use shared_flag and
1161         allow_undefined_flag.
1162         (aix4*, always_export_symbols): Set to yes up to AIX 4.1.*,
1163         because -bexpall is supported from 4.2 on.
1164         Reported by Greg Wooledge
1165         <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
1167         * ltconfig.in (hpux*, hardcode_minus_L): Set to yes.
1168         (hpux*, hardcode_libdir_flag_spec): Do not use +s by default.
1169         (hpux*, shlibpath_overrides_runpath): Set to no.
1171         * ltconfig.in (irix*, osf*, archive_cmds): Write so_locations
1172         within objdir.
1174         * ltconfig.in (irix*, soname_spec): Append $major.
1175         (irix*, library_names_spec): Add new soname.
1176         Reported by David Kaelbling <drk@sgi.com>
1178         * ltconfig.in (irix*, sys_lib_dlsearch_path_spec): /usr/local/lib
1179         is not searched by default.  /usr/lib is searched before /lib.
1180         * ltconfig.in (irix*, sys_lib_search_path_spec): /usr/lib is
1181         searched before /lib.
1183         * ltconfig.in (irix5*, need_lib_prefix, need_version): Set to no,
1184         by unifying with irix6*.
1186         * ltconfig.in (irix*, osf*, deplibs_check_method): Use pass_all.
1188         * ltconfig.in (old_LDFLAGS, old_LIBS): Save and write to comments
1189         in output file.
1191         * ltmain.in (prefer_static_libs): New variable, set to no by
1192         default, but set to yes by -static and -all-static.  Used instead
1193         of build_libtool_libs to decide whether to use a shared or static
1194         version of a library, when both versions are available.
1196 1999-04-25  Boyd Lynn Gerber  <gerberb@zenez.com>
1198         * ltconfig.in (sco3.2v5*): Use LD_RUN_PATH for hard-coding.
1200 1999-04-25  Pavel Roskin  <pavel_roskin@geocities.com>
1202         * Makefile.am (uninstall-local): Remove installed libltdl tree.
1204 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
1206         * demo/Makefile.am (hc-direct, hc-libflag, hc-libpath, hc-minusl):
1207         Added CFLAGS to link commands; SCO OSR needs it for -belf.
1209         * TODO: -Wl and -Wc options.
1211 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
1213         * libltdl/ltdl.c: Remove trivial warnings.
1215 1999-04-22  Frank Ch. Eigler  <fche@cygnus.com>
1217         * ltconfig.in: Correct sed expression that extracts symbols
1218         from cygwin def files.  Ignore demangled C++ names, if any.
1220 1999-04-12  John David Anglin  <dave.anglin@nrc.ca>
1222         * libltdl/ltdl.c (shl_close): shl_t was correct here...
1223         (shl_sym): ... but we have to pass the handle by reference here.
1225 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
1227         * doc/libtool.texi (Invoking ltconfig): Document environment
1228         variables used.
1230         * doc/libtool.texi (Invoking ltconfig): Document --cache-file.
1232         * doc/libtool.texi (Invoking ltconfig): Document
1233         --disable-fast-install, --enable-dlopen, --with-gnu-ld and
1234         --disable-lock.
1236 1999-04-11 Thomas Tanner  <tanner@gmx.de>
1238         * libltdl/configure.in: check for shl_load in libdld
1239         * libltdl/ltdl.c (shl_close, shl_sym): use (shl_t *) instead of shl_t
1240         * ltconfig.in (check for gcc): removed a bogus line,
1241           check for shl_load in libdld
1242         * ltmain.in: added a warning to the header of the .la file
1243           to warn users against deleting the file,
1244           link shared against static libraries if
1245           deplibs_check_method == pass_all
1247 1999-04-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
1249         * libtool.m4 (AC_PROG_LD, AC_PROG_NM): When looking for programs,
1250         try $ac_exeext too, so that they're found on DJGPP/MS-DOS.
1251         * ltconfig.in: Likewise.
1252         Reported by Robert S. Maier <rsm@math.arizona.edu>
1254         * ltconfig.in (Usage): Removed --enable-dlopen-self.
1255         Reported by Pavel Roskin <pavel_roskin@geocities.com>
1257         * ltconfig.in: Moved sysv4 before sysv4.*.
1258         (symcode): Brian's overrider is specific to sysv4, not sysv4*.
1260 1999-04-09 Thomas Tanner  <tanner@gmx.de>
1262         * NEWS, README: Motorola System V 4 support
1263         * doc/PLATFORMS: added mk88-motorola-sysv4
1264         * ltconfig.in: installed patch from Brian Ford <ford@vss.fsi.com>
1265           to support mk88-motorola-sysv4
1267         * doc/libtool.texi: some cleanups in the libltdl documentation
1269 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
1271         * ltconfig.in (--fallback-echo): Do not put an inline document and
1272         an exec in the same if construct; otherwise the inline document
1273         may not be removed.
1274         * ltmain.in (--fallback-echo): Likewise.
1275         Reported by John David Anglin <dave.anglin@nrc.ca>
1277         * dryrun.test: It would still fail at random times, because `cp'
1278         and `mv' are not guaranteed to preserve the timestamps of the
1279         installed files.  Instead of preserving them, just remove them
1280         before the dry uninstall test.  Redirect dry-run output to stderr,
1281         so that it can be easily separated from the regular output.
1283 1999-04-07 Thomas Tanner  <tanner@gmx.de>
1285         * NEWS: support for moved libraries
1286         * libtool.m4: another DJGPP fix
1288 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
1290         * doc/PLATFORMS: Updated to 1.3 for all platforms I've got.  I'll
1291         make sure 1.3 won't be released unless it passes all tests on
1292         those platforms.
1294         * doc/libtool.texi (Compile mode): Document potential problem and
1295         work-around for `-c -o dir/foo.lo'.
1297         * tests/dryrun.test: The constant modifications of libtool would
1298         cause main.o to be updated at the wrong time; the new approach is
1299         to modify the libtool script so that it enables dry run depending
1300         on whether an environment variable is set or not.  I've also moved
1301         `after' and `before' to a directory deep within $objdir, instead
1302         of creating it in ../tests.
1303         * tests/Makefile.am (CLEANFILES): Removed.
1305 1999-04-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
1307         * tests/dryrun.test: We cannot rely on setting LIBTOOL, because
1308         automake may use sub-makes, and the setting will not be propagated
1309         to them on some makes.  Instead, create a dry version of libtool
1310         and switch between it and the original one before and after dry
1311         runs.
1312         * tests/Makefile.am (CLEANFILES): Added libtool-*, created by
1313         dryrun.test.
1315         * tests/dryrun.test: Use cmp instead of diff.
1316         (before, after): Create them within ../tests.
1317         (libtool): Set to `/bin/sh ./libtool' by default, but use LIBTOOL,
1318         SHELL and top_builddir from the environment if available.  For dry
1319         runs, use "$libtool -n".
1320         * tests/Makefile.am (CLEANFILES): Added before and after.
1321         * ltmain.in: Do not create links to object files in dry runs.
1323 1999-04-06 Thomas Tanner  <tanner@gmx.de>
1325         * ltmain.in: added a missing line of the ILD patch
1327         * NEWS: improved DJGPP support
1328         * doc/libtool.texi: removed hardcode_into_libs documentation
1329         * libtool.m4: some DJGPP fixes
1330         * ltconfig.in: ditto, reverted one of my previous patches: we need
1331           to check for NM, removed the hardcode_into_libs support since
1332           no platform seems to support it
1333         * ltmain.in: some DJGPP fixes, removed the hardcode_into_libs support
1335 1999-04-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
1337         * ltconfig.in (netbsd*, GNU ld): Support a.out shared libraries
1339         * Makefile.am (CVS): allow command-line overriding of cvs
1341         * ltconfig.in (exclude_expsyms): Exclude _GLOBAL_OFFSET_TABLE_ by
1342         default, as most a.out platforms use it, and end up in trouble if
1343         we preload it, so it's safer to rule it out by default, and
1344         special case its removal from exclude_expsyms if someone ever
1345         complains.
1347 1999-04-05 Thomas Tanner  <tanner@gmx.de>
1349         * doc/libtool.texi: reorder tests to reflect execution order,
1350           documented dryrun.test and depdemo*
1351         * ltmain.in (lt_preloaded_symbols): dry-run mode bugfix
1352         * tests/dryrun.test: new test to check whether the dry-run
1353           mode works properly
1355         * demo/run.test: removed the unnecessary test
1356         * demo/Makefile.am: ditto
1357         * ltmain.in: set the DLL search path on cygwin,mingw and os2
1359 1999-04-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
1361         * ltconfig.in (sunos4*, GNU ld): -Bstatic is not enough for
1362         deplibs.test to work with GNU ld; -Bshareable is needed here.
1364         * ltconfig.in (ld_shlibs, amigaos*): Disable shared libs with
1365         native ld too.
1367         * ltconfig.in (sunos4*, GNU ld): Reordered.
1369         * ltconfig.in (archive_cmds, sunos4*): Revert to -Bstatic; the
1370         native linker doesn't even support -Bshareable, only GNU ld does.
1371         Do not use `gcc -shared' in archive_cmds, it breaks deplibs.test.
1373         * ltconfig.in: if ld_shlibs=no, set can_build_shared=no too,
1374         otherwise it will just be disregarded.  This would cause
1375         netbsd/m68k with GNU ld a.out, and certainly many other platforms,
1376         to incorrectly believe that shared libraries were supported, while
1377         archive_cmds was empty, causing shared libraries not to be created
1379 1999-04-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
1381         * NEWS: improved support for AIX and HP/UX
1383 1999-04-03 Thomas Tanner  <tanner@gmx.de>
1385         * NEWS: updated
1386         * libtool.m4: check for main in libm instead of cos
1387         * ltmain.in: cosmetic fixes, don't try to link libraries only once
1388           (although it's not necessary on many platforms and looks ugly...),
1390 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
1392         * ltmain.in (convenience): fixed race condition when more than one
1393         library was linked with the same convenience library by
1394         uniquifying the extract directory.  It is now named after the new
1395         library *and* the old one, and lives in the objdir of the new one.
1397         * ltmain.in (-L*): do not abort just because a directory specified
1398         with -L does not exist; just warn and discard it
1400         * depdemo/l1/Makefile.am (AUTOMAKE_OPTIONS): no-dependencies
1401         * depdemo/l2/Makefile.am (AUTOMAKE_OPTIONS): ditto
1402         * depdemo/l3/Makefile.am (AUTOMAKE_OPTIONS): ditto
1403         * depdemo/l4/Makefile.am (AUTOMAKE_OPTIONS): ditto
1405         * ltconfig.in (archive_cmds, sunos4*): where we used -Bstatic, we
1406         should have been using -Bshareable
1408         * demo/Makefile.am (CLEANFILES): clean EXTRA_* from deplibs-check
1410         * libtool.m4 (LDFLAGS, LIBS): pass them to ltconfig, for the tests
1411         that involve linking
1412         * Makefile.am (LDFLAGS, LIBS, libtool, clibtool): ditto
1413         * tests/Makefile.am (CFLAGS, CPPFLAGS, LDFLAGS, LIBS): set
1414         (LDFLAGS, LIBS, TESTS_ENVIRONMENT): pass them down
1416 1999-04-02  Erez Zadok  <ezk@cs.columbia.edu>
1418         * doc/PLATFORMS: 1.2f ok on various versions of hpux cc
1420 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
1422         * ltconfig.in (link_all_deplibs): set to unknown by default
1423         * ltmain.in: test != no, not = yes
1424         * doc/libtool.texi: document unknown
1426 1999-04-01 Thomas Tanner  <tanner@gmx.de>
1428         * doc/libtool.texi: documented deplibs.test
1430         * demo/Makefile.am: moved testsuite specific declarations to the end,
1431           the deplibs check is now optional
1432         * libltdl/configure.in: read libtool --config only once,
1433           merged AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE from libtool.m4
1434         * libtool.m4: AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE were not
1435           used, lt_dlopen and silent may be empty, AC_SYS_LIBTOOL_CYGWIN
1436           no longer necessary
1437         * ltconfig.in: NM is already checked in libtool.m4,
1438         * ltmain.in: always link all static dependency_libs
1439         * tests/Makefile.am: added deplibs.test
1440         * tests/demo-exec.test, demo-inst.test: removed hell0
1441         * tests/deplibs.test: new test to test the deplibs_check_method
1443 1999-03-31 Thomas Tanner  <tanner@gmx.de>
1445         * ltmain.in: always link a library before its dependency libs
1446         * mdemo/Makefile.am: test -export-symbols-regex
1448 1999-03-30 Thomas Tanner  <tanner@gmx.de>
1450         * doc/libtool.texi: fixed a typo
1451         * libtoolize.in: add the libtool scripts to libltdl.tar.gz
1452         * libtool.m4: don't AC_SUBST(USE_SYMBOL_UNDERSCORE),
1453           AC_CHECK_LIBM sets LIBM, AC_LIBLTDL_INSTALLABLE doesn't work
1454           when libltdl is already installed
1455         * *demo/Makefile.am: use LIBM
1456         * *demo/configure.in: AC_SUBST LIBM
1457         * libltdl/configure.in: use ac_cv_sys_symbol_underscore instead of
1458           USE_SYMBOL_UNDERSCORE
1459         * ltconfig.in: added link_all_deplibs variable
1460         * doc/libtool.texi: document it
1461         * ltmain.in: always search for libname.la - don't eval libname_spec,
1462           when linking libraries against static ones just print a warning
1463           and add them to dependency_libs, add -lc before deplibs,
1464           always link all dependencies of a static library or if
1465           link_all_deplibs is yes, hardcode library paths if
1466           hardcode_into_libs is no, don't link against dependency_libs
1467           that already are deplibs
1469 1999-03-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
1471         * ltconfig.in (aix4*, collect2name): make sure collect2 exists
1472         before running string on it, to avoid errors on old gccs
1473         Reported by Erez Zadok <ezk@cs.columbia.edu>
1475         * ltconfig.in (aix4*, hardcode_libdir_flag_spec): unless we're
1476         using gcc with old collect2, use -b libpath to hardcode the
1477         library search path
1479         * ltmain.in, ltconfig.in: reverted most of the quoting changes
1480         from 1999-03-25; Gary's delay_variable_subst patch from 1999-02-19
1481         obviates it.  Keep only quoting of $PATH, for uniformity with
1482         other systems that already did it
1484 1999-03-29  Gary V. Vaughan  <gary@gnu.org>
1486         * libltdl/ltdl.c (lt_dladdsearchdir): Forgot to mallocate the
1487         extra byte of memory for the teminating NUL, and forgot to
1488         strcpy the original path in to the new memory before appending
1489         the new path compononent.
1491 1999-03-27 Thomas Tanner  <tanner@gmx.de>
1493         * NEWS: updated
1494         * README: updated (BeOS support, no longer shared libraries
1495           support for AmigaOS), cleanups, we have now two mailing lists
1496         * REAMDE-alpha: autogen -> bootstrap, we have now two mailing lists
1497         * THANKS: added Xavier Pianet
1498         * doc/PLATFORMS: BeOS works
1499         * doc/libtool.texi: we have now to two mailing lists,
1500           updated -dlopen self documentation, documented libltdl's license,
1501           put each author in a separate line,
1502           inter-library dependencies on uninstalled libtool libraries are
1503           now supported, cleanups and minor corrections
1504         * libltdl/COPYING.LIB: new file
1505         * libltdl/ltdl.[ch]: added special exception to the LGPL license
1506         * libtool.spec: removed, it was outdated
1507         * Makefile.am: removed libtool.spec
1508         * ltmain.in: use TMPDIR when possible, create a subdirectory
1509           in the temporary directory, added -export-symbols-regex to the help,
1511 1999-03-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
1513         * demo/Makefile.am: create a static library, link two libtool
1514         archives with it, then link the program hell0 with both
1515         * demo/hell1.c, demo/hell2.c: dummy files used to create the
1516         libtool archives without introducing symbol conflicts
1517         * tests/demo-exec.test, tests/demo-inst.test: run the new program
1518         * ltconfig.in (irix5*, irix6*, deplibs_check_method): pass_all
1520         * ltmain.in ($PATH): instead of modifying the PATH, better prevent
1521         its expansion the first time *_cmds variables are eval'ed.  Modify
1522         $show within loops that eval them so as to expand variables
1523         * ltconfig.in (*_cmds): quote $ so that they're not expanded by
1524         the first eval
1526 1999-03-25  Gary V. Vaughan  <gary@gnu.org>
1528         * ltmain.in ($PATH):  Expand any tildes in the users path to the
1529         contents of $HOME to avoid problems with *_cmds splitting and
1530         evaluation.
1532 1999-03-24 Thomas Tanner  <tanner@gmx.de>
1534         * TODO: support -dlopen for libraries
1535         * doc/PLATFORMS: Erez Zadok reported that libtool works on bsdi 4.0.1
1536         * doc/libtool.texi (libltdl): libltdl supports BeOS
1537         * libltdl/ltdl.c: shlib_ext was declared even if LTDL_SHLIB_EXT
1538           didn't exist, partially reverted my previous patch: BeOS will
1539           automatically search in ADDON_PATH
1540         * ltmain.in: don't allow relative run-paths, fixed a typo in a warning,
1541           ignore -dlopen self for libraries and objects,
1542           only accept -L paths that exist, minor cleanups,
1543           bugfix: add -lc for normal libraries, not convenicence libraries
1544           removed offensive warnings/comments
1546 1999-03-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
1548         * ltconfig.in (ld_shlibs, amigaos*): disable shared libraries
1550 1999-03-23  Gary V. Vaughan  <gary@gnu.org>
1552         * libltdl/configure.in: the sed expression for finding the shared
1553         library extension used to think the . in [.] for the cygwin
1554         shared_library_names_spec was the start of the extension!!  We now
1555         remove anything in square brackets (assuming that the square
1556         brackets delimit a sed or expr expression which is not part of the
1557         extension) before looking for the extension.
1559         * TODO (cygwin):  food for thought re: mutually dependant dlls.
1561 1999-03-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
1563         * tests/build-relink.test: if we relink and have hardcode_direct,
1564         removing an uninstalled library breaks an uninstalled program
1566         * doc/libtool.texi: documented convenience libraries
1567         * TODO: removed entry about it
1569         * tests/*-unst.test: if directory is not configured, skip it
1570         * tests/demo.test, tests/mdemo.test: unused, removed
1571         * tests/depdemo.test: ditto
1573 1999-03-20 Thomas Tanner  <tanner@gmx.de>
1575         * doc/libtool.texi (link mode): documentation for -module updated
1576         * ltconfig.in: fast-install mode doesn't work for
1577           hardcode_into_libs=yes
1578         * ltmain.in: bugfix: "-dlopen self [-all]-static" wouldn't use
1579           dlopen_self_static, automatically enable -export-dynamic when
1580           using "-dlopen self", always make run-paths absolute,
1581           ignore -lc only on platforms that don't have such a library,
1582           cleanups in the ILD code, find even installed libtool libraries
1583           that were moved, before generating the DLL-import library we need
1584           to set libname, improved hardcoding of shlibpath for libraries,
1585           don't generate an installable pseudo-library for convenience
1586           libraries, bugfix: export_symbols would be removed immediately
1587           before it is used
1589 1999-03-19 Thomas Tanner  <tanner@gmx.de>
1591         * use the same header in all configure.in's and Makefile.am's
1592         * NEWS: improved support for BeOS and Cygwin
1593         * TODO: ILD branch was merged, all internal variables and macros
1594           are now documented
1595         * demo/Makefile.am: use $(LIBS) instead of -lm
1596         * doc/libtool.texi: documented new variable hardcode_into_libs
1597           and thread_safe_flag_spec, renamed all AM_ENABLE/DISABLE_* macros
1598           to AC_*, documented AC_DISABLE_FAST_INSTALL and AC_LIBTOOL_DLOPEN
1599         * libltdl/ltdl.c: added two new error messages (cannot_open_error,
1600           cannot_close_error), use them where approriate,
1601           BeOS support (thanks to Xavier Pianet), on BeOS search modules
1602           additionally in ADDON_PATH
1603         * libtool.m4: rewrote AC_CHECK_LIBM: BeOS and Cygwin don't have
1604           libm and *-ncr-sysv4.3* requires libmw
1605         * ltconfig.in: don't check for LoadLibrary, hardcode dlopen
1606           configuration for BeOS and Cygwin
1607         * ltmain.in: fix sourcing of .la files on Solaris
1608           (patch by Raja R Harinath)
1610 1999-03-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
1612         * ltconfig.in (sunos4*, with_gnu_ld, hardcode_minus_L): remove, we
1613         have -rpath
1614         (aix4*, without_gnu_ld, hardcode_shlibpath_var): unsupported is
1615         default
1616         (hpux9*, hpux10*, hpux11*, archive_cmds): drop +s, unneeded here
1617         (hpux9*, hpux10*, hpux11*, hardcode_libdir_flag_spec): add +s
1618         before +b
1619         (hpux9*, hpux10*, hpux11*, shlibpath_overrides_runpath): since +s
1620         appears before +b, set it to yes
1621         (hardcode_shlibpath_var, hardcode_action): do not use
1622         shlibpath_var to specify the compile-time search path; it loses,
1623         and we may end up linking with pre-installed older versions of
1624         libraries instead of yet-to-be-installed ones
1625         (*, hardcode_direct, hardcode_minus_L): remove entries that set
1626         them to no, that is default
1628         * demo/Makefile.am (hc-direct, hc-libpath, hc-minusL): link with
1629         $$hardcode_libdir_flag_spec, if available, with libdir=$(libdir),
1630         to make sure the hardcode_* variables will produce the expected
1631         results even in the presence of a hardcoding flag; depend on
1632         libhello.la having been installed already
1633         (hc-libflag): link with the installed library, but try to
1634         hard-code the uninstalled one
1635         * doc/libtool.texi: document the changes
1637         * tests/*.test: when a test fails, skip tests that depend on it.
1638         If a certain configuration is not supported, skip all its tests.
1640         * doc/libtool.texi: reorder tests to reflect execution order
1642         * tests/noinst-link.test: new test
1643         * tests/Makefile.am (TESTS): added noinst-link.test
1644         * doc/libtool.texi: document it
1646 1999-03-19  Gary V. Vaughan  <gary@gnu.org>
1648         * ltmain.in (dependency_libs): There is no reason to infer that
1649         the pseudo library is invalid if dependency_libs='' at
1650         install-time, or else libltdl/libltdl.la is invalid!!
1652 1999-03-18  Thomas Tanner  <tanner@gmx.de>
1654         * merged my inter-library dependencies code from the ILD branch:
1655         * NEWS: inter-library dependencies are now supported
1656         * configure.in: add the depdemo subdirectory
1657         * depdemo/*: new demo to demonstrate inter-library dependencies
1658         * tests/depdemo*: new tests for depdemo
1659         * ltconfig.in: added hardcode_into_libs (whether library paths
1660           should be hardcoded into the libraries),
1661           it currently defaults to 'no'
1662         * ltmain.in: new internal 'relink' mode to relink libraries
1663           on platforms with hardcode_into_libs=yes, save command line
1664           arguments in libtool_args, accept relative -L directories,
1665           ignore -lm on BeOS and Cygwin, always ignore -lc,
1666           handle -l, -L and .la arguments later, always make the library
1667           installation directory (-rpath) absolute, in relink mode don't
1668           delete the not-relinked library and exit immediately after relinking,
1669           try to find already-installed libtool libraries that were specified
1670           using -l, support hardcoding of library paths into libraries too,
1671           export shlibpath before linking libraries, and a lot of other
1672           big changes that I don't want to describe here... please read
1673           the source.
1675         * merged Gary's Win32 code from the ILD branch:
1676         * NEWS: Win32 DLLs are now supported
1677         * TODO: removed .a library namespace clash for win32.  It is
1678           now resolved.
1679         * ltconfig.in (cygwin, library_names_spec):  removed $libname.a.
1680           Creating a dll with libtool no longer creates an import library.
1681         * ltconfig.in (extract_expsyms_cmds): Create $objdir if it does
1682           not exist -- i.e. we need to generate import an import library
1683           in a directory which has no libs of its own.
1684         * doc/libtool.texi (old_archive_from_expsyms_cmds,
1685           extract_expsyms_cmds): documented these new variables.
1686         * ltconfig.in (extract_expsyms_cmds): New variable.  Commands to
1687           extract the exported symbol list from a dll.
1688           (old_archive_from_expsyms_cmds): New variable.  Commands to build
1689           an old archive from the extracted expsyms list.
1690         * ltmain.in: run the cmds in extract_expsyms_cmds and
1691           old_archive_from_expsyms_cmds as necessary.
1692         * ltconfig.in (cygwin, old_archive_from_new_cmds): no longer
1693           required.
1694         * ltconfig.in (cygwin, shlibpath_overrides_runpath): I'm not even
1695           sure whether win32 honours the runpath at all when searching for
1696           a dll to load!  Anyway, when set to yes this prevents a gratuitous
1697           warning.
1698         * ltmain.in (deplib): The cygwin environment doesn't actually have
1699           -lm, and although the linker fakes having one, specifiying it to
1700           libtool will break ILD, so we ignore it when generating
1701           dependencies.
1703 1999-03-17  Gary V. Vaughan  <gary@gnu.org>
1705         * doc/PLATFORMS: Thanks to Alexandres changes below, both my
1706         hp boxes pass the entire test suite.
1708 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
1710         * ltconfig.in (hpux*, hardcode_minus_L): should be no, we have +b
1711         (hpux*, hardcode_libdir_separator): set to colon
1713 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
1715         * doc/PLATFORMS: egcs is gcc; updates from Erez Zadok
1717 1999-03-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
1719         * ltmain.in (deplibs, beos*): don't append -lc
1720         Reported by Xavier Pianet <xavier@xingo.com>
1722         * tests/build-relink.test (hardcode_action): when set to relink,
1723         skip the test with lt-hell
1725         * Makefile.am (EXTRA_DIST): add mkstamp
1726         Reported by Xavier Pianet <xavier@xingo.com>
1728         * Makefile.am (EXTRA_DIST): add ChangeLog.0
1730 1999-03-16  Thomas Tanner  <tanner@gmx.de>
1732         * doc/libtool.texi: some minor corrections to the "-dlopen self"
1733           documentation
1734         * tests/Makefile.am: sorted by name, added assign.test
1735         * ChangeLog: started new file
1737         * ltconfig.in: some cosmetical changes
1738         * ltmain.in: ditto
1740 1999-03-15  Alexandre Oliva  <oliva@dcc.unicamp.br>
1742         * configure.in, libtool.spec, NEWS: bump to 1.3a
1743         * Branched for release 1.3 (branch-1-3)
1744         * configure.in, libtool.spec, NEWS: bump to 1.2g
1746         * configure.in, libtool.spec: bump to 1.2f
1747         * doc/PLATFORMS: ditto
1748         * NEWS: libtool 1.2f released
1750         * ltmain.in: silence ``unbug'' :-) detected by sh.test
1752 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
1754         * TODO: we now use full pathnames for `file'
1756 1999-03-14  Thomas Tanner  <tanner@gmx.de>
1758         * TODO: libltdl is now documented
1759         * doc/libltdl.texi (linking with installed libtool libraries):
1760           fixed typo
1761         * doc/libltdl.texi (libltdl): added documentation for building
1762           libtool modules and examples how to embed libltdl
1763         * ltmain.in: don't ignore user-specified run-paths (fixed it
1764           at the right place)
1766 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
1768         * ltmain.in (deplibs_check_method=none): discard -L and -R
1769         switches when testing whether deplibs contains some library
1771 1999-03-14  Erez Zadok  <ezk@cs.columbia.edu>
1773         * config.sub: recognize hppa2.0w, yet to be installed at GNU
1775         * config.guess: minor update for FreeBSD-elf, yet to be installed
1776         at GNU
1778 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
1780         * ltconfig.in (bsdi4*, sys_lib_search_path_spec,
1781         sys_lib_dlsearch_path_spec): fix thinko in variable names; add
1782         standard directories
1784         * ltmain.in (exclude_expsyms): exclude symbols before sorting,
1785         otherwise only the sorted list will have them excluded
1787         * ltconfig.in (file_magic_cmd, file_magic_test_file, freebsd-elf*,
1788         bsdi4*): use full pathnames when possible
1790         * Makefile.am (all-recursive): depend on ACINCLUDE_M4_LIST
1791         (all-local, check-local): remove, unused
1793         * doc/PLATFORMS: updated platforms tested on 1.2f-pre; clean up;
1794         reorder; untabify
1796         * config.guess, config.sub: updated from GNU common
1798         * doc/libtool.texi: notes on thread-safety problems of
1799         libltdl/dlopen on GNU/Linux and FreeBSD
1801         * ltconfig.in (aix3*, aix4*): GNU ld on AIX is very broken: it
1802         cannot create working shared libraries.  Print a warning
1803         suggesting the user not to use it and disable shared libraries.
1805 1999-03-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
1807         * ltconfig.in (global_symbol_to_cdecl): was reset before trying
1808         `symprfx=_', rendering the test with `_' useless
1810         * doc/libtool.texi (AM_PROG_LIBTOOL): eliminate overfull boxes
1812         * doc/libtool.texi: complete dlopening/libltdl documentation
1814         * ltconfig.in (osf3*, osf4*, deplibs_check_method): pass_all does
1815         not really work; use file_magic instead.
1816         (osf3*, osf4*): customize sys_lib_[dl]search_path_spec
1818         * ltconfig.in (file_magic_test_file): new variable; if set, it
1819         will be used as an argument for $file_magic_cmd to test whether
1820         the regex in deplibs_check_method matches its output
1821         (file_magic_cmd): use full pathnames whenever possible
1823         * ltconfig.in (sys_lib_dlsearch_path_spec): new variable, that
1824         lists the system *run-time* search path.  Listed directories are
1825         not implicitly hard-coded into executables.
1826         * ltmain.in: use it, but *never* discard -R flags
1827         * doc/libtool.texi: document it
1828         * NEWS: ditto
1829         Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
1831         * tests/sh.test: look for `$Xsed' without `$echo "X...'
1832         * ltconfig.in, ltmain.in: fixed a few such occurrences
1834         * ltmain.in (-static, -all-static): revert March 11's patch, I was
1835         barking up the wrong tree
1837 1999-03-12  Thomas Tanner  <tanner@gmx.de>
1839         * libltdl/ltdl.c: removed FILENAME_MAX since LTDL_FILENAME_MAX
1840           is sufficient and doesn't break HP/UX
1842 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
1844         * ltconfig.in: (global_symbol_pipe) extract symbol tag from the
1845         output of NM too
1846         (global_symbol_to_cdecl): new variable; convert the output of
1847         global_symbol_pipe to valid C declarations; on HP/UX, convert
1848         text symbols to function declarations
1849         * libtool.m4: similar modifications
1850         * doc/libtool.texi: document new variable
1851         * ltmain.in: use global_symbol_to_cdecl to generate lt_dlpreopened
1852         symbols; avoid extracting symbol lists from dlpreopened files
1853         twice; do not filter symbols from dlpreopened libraries
1854         * TODO: fixed HP/UX dlpreopening problem
1856         * ltmain.in (-static, -all-static): set dlopen_self to
1857         $dlopen_self_static regardless of link_static_flag or pic_flag
1859         * ltmain.in: FreeBSD bug that needs symbol table compiled with
1860         -fPIC is fixed in release 3.1; use it only for 2.* and 3.0
1862 1999-03-11  Thomas Tanner  <tanner@gmx.de>
1864         * ltmain.in: when building a library it doesn't make
1865           sense to remove a relinked program ("lt-" prefix)
1867 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
1869         * mdemo/main.c (main, test_dl, test_dlself): propagate error
1870         conditions better, to avoid false positives
1872         * */configure.in: AC_SUBST(LIBTOOL_DEPS)
1873         * */Makefile.am $(OBJECTS): depend on libtool
1874         (libtool): rebuild automatically
1876         * ltconfig.in: set dlopen_* variables to unknown when appropriate
1877         * ltmain.in: only emit warning about lack of AC_LIBTOOL_DLOPEN if
1878         *all* dlopen_* variables are set to unknown
1880 1999-03-11  Thomas Tanner  <tanner@gmx.de>
1882         * ltmain.in: delete the old output files (incl. the relinked binary)
1883           before linking.
1885         * ltconfig.in: replaced `configure' with $progname and all
1886           line numbers with @LINENO@
1888 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
1890         * libltdl/ltdl.c (strdup): cannot return str when it's NULL
1891         because of const correctness
1893 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
1895         * libltdl/ltdl.c (strdup): always use our own, because the
1896         standard strdup won't use lt_dlmalloc
1898         * ltconfig.in (dlfcn.h): function definition may cause warnings;
1899         define variable instead
1901         * ltmain.in: properly create an export file for a program,
1902         avoiding error messages about not finding it
1904         * TODO: need to document AC_LIBLTDL_*; static self dlopening
1905         problem fixed
1907         * libtool.m4 (AC_LIBTOOL_DLOPEN): just set lt_dlopen=yes
1908         (AC_LIBTOOL_SETUP): if lt_dlopen=yes, add --enable-dlopen to
1909         libtool_flags; drop --enable-dlopen-self
1910         * ltconfig.in: perform all the dirty work of testing for dlopening
1911         support, because we need platform-dependent equivalents for
1912         -export-dynamic, for self dlopening, and -static, for static self
1913         dlopening
1914         (dlopen_self_static): new configuration variable that is set to
1915         yes only if static programs can dlopen themselves
1916         * ltmain.in (-static, -all-static): dlopen_self=dlopen_self_static
1918         * libltdl/configure.in (libltdl_cv_need_uscore): do not assume
1919         dlfcn.h and LTDL_LAZY exist; use LTDL_GLOBAL and LTDL_LAZY_OR_NOW.
1920         This test is likely to fail if self-dlopening does not work,
1921         especially because we do not link the program with
1922         -export-dynamic.  Let's just hope that platforms whose symbol
1923         names start with underscores will also accept underscores for
1924         dlopen.  We should probably use libtool to compile and link this
1925         test, so that we can use -export-dynamic.
1927         * mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h
1929         * configure.in: fix AC_OUTPUT_COMMANDS for ltconfig and ltmain.sh
1930         so that they work if srcdir is relative too
1932         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
1933         avoid introducing multiple --enable options when re-running
1934         config.status
1935         * libltdl/configure.in: if enable_ltdl_* is not set, assume no
1936         * configure.in: if enable_ltdl_install is not set, enable it
1938         * libltdl/configure.in: only assume implicit installation if
1939         libltdl was libtoolized.  If not, print a warning message
1940         suggesting the use of --enable-ltdl-install or of one of the
1941         AC_LIBLTDL_* macros.
1943         * libtool.m4 (AC_LIBTOOL_SETUP): new macro, that does all the
1944         configure-work that AC_PROG_LIBTOOL used to do; add
1945         --cache-file=$cache_file to libtool_flags
1946         (AC_PROG_LIBTOOL): call AC_LIBTOOL_SETUP, save the cache, run
1947         ltconfig and reload the cache
1948         * configure.in: run AC_LIBTOOL_SETUP, then set LIBTOOL_FLAGS to
1949         libtool_flags
1950         * ltconfig.in: support --cache-file switch.  If it is used, load
1951         the cache in the beginning and save it just before terminating
1953         * tests/Makefile.am (TESTS): run demo-nofast before demo-shared
1955         * configure.in: create ltconfig and ltmain.sh at the end of
1956         config.status, if they do not exist.  This fixes the bootstrap
1957         problem reported by Erez Zadok <ezk@cs.columbia.edu>
1959 1999-03-10  Thomas Tanner  <tanner@gmx.de>
1961         * NEWS: sorted by importance
1962         * Makefile.am: set LIBTOOL_FLAGS when generating libtool
1963         * configure.in: check for dlopen support and set LIBTOOL_FLAGS
1964           accordingly
1966         * configure.in: fix spacing for --disable-ltdl-install,
1967           always configure libltdl, add libltdl/acinclude.m4 to
1968           ACINCLUDE_M4_LIST, disable installation of libltdl if necessary
1969         * libltdl/Makefile.am: set version info for libltdl.la
1970         * libltdl/configure.in: don't check whether
1971           enable_ltdl_convenience/install was set so that libltdl
1972           can be used as independent package (libltdl.tar.gz) without
1973           the need to use --enable-ltdl*
1974         * libltdl/ltdl.c: minor cleanups, allocate the line cache
1975           dynamically (lt_dlopen)
1977 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
1979         * libltdl/ltdl.c (lt_dlopen): some preprocessors choke if the `#'
1980         of `#define' is not in column 1; let's go back to fortran! :-)
1981         Add #undefs too, to avoid potential warnings or errors.
1983 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
1985         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
1986         renamed convenience libltdl, dropped toinst hack for installable
1987         * libltdl/Makefile.am: ditto
1988         * libltdl/configure.in: ditto; abort if none of the macros is used
1990         * ltmain.in: $output_objdir/$objdir/ -> $output_objdir/lt-
1992 1999-03-09  Thomas Tanner  <tanner@gmx.de>
1994         * libltdl/ltdl.c (lt_dlopen): don't hardcode the length of the
1995           constant strings
1997 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
1999         * Makefile.am (install-data-hook): install libltdl as a directory,
2000         not as a tar-file, so that we do not modify the build tree at make
2001         install time
2002         * libtoolize.in (ltdl, ltdl_tar): update
2004         * configure.in, Makefile.am, NEWS: install libltdl by default
2006         * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
2007         new macros
2008         * NEWS: ditto
2009         * libltdl/configure.in: if none of the new macros or configure
2010         arguments are used, warn and build convenience library only
2011         * libltdl/Makefile.am: conditionally build convenience libltdl.la
2012         * mdemo/configure.in: use AC_LIBLTDL_CONVENIENCE
2013         * mdemo/Makefile.am: refer to @LIBLTDL@
2015 1999-03-09  Gary V. Vaughan <gary@gnu.org>
2017         * NEWS: updated.
2019 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
2021         * ltmain.in: extract symbols from program objects to nlist first,
2022         then translate them to the export_symbols format.  Now it works,
2023         but it appears to be needlessly extracting the symbol list from
2024         dlpreopened libraries twice
2026         * ltmain.in: temporarily disable dlopen_self when linking with
2027         -static or -all-static, until we figure out how to test whether it
2028         works at configure time
2030         * TODO: remember to fix this later
2032         * tests/build-relink.test: when hell is expected to fail, run it
2033         within a subshell and redirect stderr to stdout, so that dynamic
2034         linker errors are only printed in verbose mode
2036         * ltmain.in (hardcode_libdir_separator, compile_rpath,
2037         finalize_rpath): only substitute hardcode_libdir_flag_spec if
2038         hardcode_libdirs is non-empty
2040         * libtool.m4 (AC_LIBTOOL_DLOPEN): do not depend on the existence
2041         of dlfcn.h nor on the definition of RTLD_LAZY
2043         * tests/build-relink.test: hellT was renamed to lt-hell
2045         * libltdl/Makefile.am (@TOINST@/libltdl.la): do not hide the
2046         command that creates the TOINST directory; remove `-o $@' from the
2047         LINK command, $(LINK) already contains it.
2049 1999-03-08  Thomas Tanner  <tanner@gmx.de>
2051         * doc/libtool.texi (tests): documented demo-nofast.test and
2052           renamed cdemo* to demo*
2054 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
2056         * libltdl/Makefile.am, libltdl/configure.in, mdemo/Makefile.am:
2057         libltdl must not be renamed; if there's a problem with the install
2058         option, let's fix it, not just work around it by breaking code of
2059         users of the convenience library
2061         * tests/build-relink.test: link broken libhello.la with at least
2062         one libtool object
2064 1999-03-08  Thomas Tanner  <tanner@gmx.de>
2066         * TODO: updated (libltdl build problem fixed)
2067         * doc/libtool.texi (libltdl interface): removed the line which
2068           promised that lt_dlopen will return NULL if it can't resolve all
2069           symbols
2070         * libltdl/Makefile.am, libltdl/configure.in: fixed build problem:
2071           renamed the convenience library to libltdlc.la and the
2072           installed version to libltdl.la
2073         * ltmain.in (wrapper script): replaced the "T" suffix of the program
2074           file name with a "lt-" prefix
2075         * mdemo/Makefile.am: use libltdlc.la
2076         * tests/Makefile.am, tests/demo-nofast.test: added demo to
2077           test --enable-fast-install=no
2079 1999-03-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
2081         * tests/Makefile.am (TESTS): run hardcode before build-relink
2082         trashes libhello.la
2083         * tests/hardcode.test (need_prefix): set to yes so that _inst is
2084         not removed
2086         * ltmain.in (compile_command): append finalize search path to
2087         compile search path
2089         * tests/build-relink.test: new; check shlibpath_overrides_runpath
2090         * tests/Makefile.am (TESTS): add build-relink.test; remove
2091         hardcode.test duplicates
2092         * doc/libtool.texi: document it
2094         * ltmain.in (relink_command): do not prepend cd `pwd` to it, the
2095         scripts already enters the correct directory, and expanding the
2096         pathname would prevent the build tree from moving
2098         * ltconfig.in (enable_fast_install): force it to no only if we
2099         need relink; in the other cases, set it to needless
2100         * ltmain.in (fast_install): if needless, set relink_command empty
2101         * doc/libtool.texi (fast_install, shlibpath_overrides_runpath):
2102         document the new behavior
2104         * ltconfig.in (enable_fast_install): test whether it can be forced
2105         off after shlibpath_overrides_runpath and enable_shared are set
2107 1999-03-07  Thomas Tanner  <tanner@gmx.de>
2109         * TODO: updated
2110         * NEWS: updated
2112         * TODO: scheduled some items for next release/future
2113         * demo/configure.in: use AC_LIBTOOL_DLOPEN
2114         * libtool.m4: added AC_ENABLE/DISABLE_FAST_INSTALL macro
2115         * ltconfig.in: added --disable-fast-install flag
2116         * ltmain.in: partially reverted Alexandre's patch and implemented
2117           on-demand linking in such a way that the old developer-friendly
2118           linking style is optional,
2119           don't hardcode library paths that are in the system search path,
2120           fixed a typo in lib_search_path,
2121           implemented -export-symbols-regex for programs
2123 1999-03-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
2125         * libltdl/ltdl.c (LTDL_LAZY_OR_NOW): renamed from LTDL_NOW; prefer
2126         LAZY loading because it's much faster and NOW is apparently
2127         partially broken on FreeBSD
2128         Reported by Archie Cobbs <archie@whistle.com>
2130         * ltconfig.in (archive_expsym_cmds, solaris, without_gnu_ld):
2131         $lib.exp already starts with $objdir/
2132         Reported by Godmar Back <gback@cs.utah.edu>
2134         * ltmain.in (freebsd): compile symbol table file with pic_flag
2135         only on FreeBSD and when not static linking; it's been causing
2136         trouble on platforms such as OpenBSD.
2138 1999-02-26  Gary V. Vaughan  <gary@gnu.org>
2140         * libtool.m4 (cygwin): s/\\(mingw\\|cygwin\\)32/\\1/g.  Must've
2141         missed this file when I changed to cygnus' new sanction name.
2143         * ltconfig.in (sub_uncdrive): removed.  This won't work with
2144         the next version of cygwin.
2145         (sub_uncdir): removed. We use <drive>:/path/to/executable now.
2146         * libtool.m4 (AC_PROG_LD): removed sub_uncdrive and sub_uncdir.
2148 1999-02-25  Thomas Tanner  <tanner@gmx.de>
2150         * TODO: added items for next alpha release, ILD etc.
2151         * libltdl/ltdl.c: removed unnecessary check from presym_sym,
2152           fixed bug in lt_dlclose, allow lt_dlopenext(NULL),
2153           set deplibs for lt_dlopen(NULL)
2155 1999-02-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
2157         * ltmain.in (file_magic_regex): sed `10q' is faster than `11,$d'
2159 1999-02-22  Thomas Tanner  <tanner@gmx.de>
2161         * ltconfig.in (dlopen, dlopen_self): default is unknown
2162         * ltmain.in: fixed -dlopen self, print a warning
2163           if -dlopen is used without AC_LIBTOOL_DLOPEN
2164         * mdemo/Makefile.am: use -dlopen self
2166 1999-02-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
2168         * ltmain.in: added missing mkdir $progdir for on-demand executable
2170         * ltmain.in: create on-demand executable as $progdir/$$-$program,
2171         and rename it to $progdir/$program only when it's finished, to
2172         avoid race conditions.  We can still get the program linked
2173         multiple times, if multiple instances are started simultaneously
2174         and the program does not exist, but they are very unlikely to
2175         interfere with each other.  There's still a possibility that one
2176         process removes the $program another has just created, and doesn't
2177         replace it before the other tries to run it, in a system whose
2178         `mv' is not atomic, so it will $rm then $mv, but so what? :-)
2179         Locking files have been avoided to prevent dead-locks in case they
2180         are left over after a reboot or crash.
2182         * TODO: removed ILD, soon to be merged, and added convenience
2183         libraries docs
2185         * ltconfig.in (irix5*, irix6*, shlibpath_overides_runpath): yes
2187         * ltmain.in: remove on-demand executable in the proper place, and
2188         just warn if it can't be removed; add wrapper code to test whether
2189         the install-executable is newer than the build-executable, to
2190         relink it when it appears to be out-of-date
2192         * libltdl/configure.in: check for dld.h
2193         * libltdl/ltdl.c: include dld.h
2194         (dld_open) it's spelled memory_error, not no_memory_error
2195         Reported by Stefan Burstroem <f94sbu@efd.lth.se>
2197         * ltmain.in: fix typos in my last change (s/ocmpile/compile/)
2199 1999-02-21  Thomas Tanner  <tanner@gmx.de>
2201         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
2202           when dlopening the executable
2203         * libtool.m4 (AC_LIBTOOL_DLOPEN): removed the redundant "yes: "
2204           prefix for lt_cv_dlopen, renamed lt_cv_dlopen_LIBS
2205           to lt_cv_dlopen_libs (more consistent)
2206         * ltmain.in: implemented -dl[pre]open self, necessary for
2207           lt_dlopen(NULL), generation of exported symbols was broken
2209 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2211         * ltmain.in: avoid duplication of -L switches, it sometimes breaks
2212         IRIX 5.2's linker
2214         * ltconfig.in (freebsd*, finish_cmds): expand objformat here
2215         Reported by Vladimir Kushnir <kushn@mail.kar.net>
2217 1999-02-20  Vladimir Kushnir <kushn@mail.kar.net>
2219         * ltconfig.in (freebsd-elf*, need_version, need_lib_prefix): no
2220         (freebsd-elf*, library_names_spec): add $libname.so instead of
2221         $libname.so$versuffix; add $libname$release.so
2223 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2225         * doc/libtool.texi: remove ticks from menu items; it breaks TeX
2226         Reported by Erez Zadok <ezk@cs.columbia.edu>
2228         * ltmain.in: fixes for export-symbols dry-run
2230         * ltconfig.in (shlibpath_overrides_runpath): new variable;
2231         determines whether LD_LIBRARY_PATH or equivalent can be used to
2232         override a hard-coded library search path; default to unknown
2233         (linux-gnu*): set it to no
2234         (solaris*, sunos4*): set it to yes
2235         * ltmain.in (build_libdirs_flags, build_libdirs, build_rpath): if
2236         shlibpath_overrides_runpath is not yes, arrange that wrapper
2237         scripts create, on demand, programs that use uninstalled libraries
2239         * doc/libtool.texi: document it
2241         * libtool.m4 (AC_LIBTOOL_DLOPEN): check for dlopen in libc before
2242         trying in dl.  Add the actual dlopening type to lt_cv_dlopen, and
2243         add any needed libraries to lt_cv_dlopen_LIBS.  Add test for
2244         MS-Windows' LoadLibrary.  Check whether a program can dlopen
2245         itself only if we really have dlopen(), not some equivalent
2246         function, but leave room for testing with other mechanisms.
2247         (AC_PROG_LIBTOOL): assume some form of dlopen, but not
2248         dlopen(NULL), is available if AC_LIBTOOL_DLOPEN is not used, for
2249         backward compatibility.
2251 1999-02-20  Archie Cobbs  <archie@whistle.com>
2253         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
2254         where appropriate, when dlopening a non-libtool library
2256 1999-02-19  Gary V. Vaughan  <gary@gnu.org>
2258         * ltconfig.in (export_symbols_cmds): renamed from
2259         export_symbols_cmd.
2260         (cygwin, mingw): Be sure to compile the ltdll.c object before
2261         extracting the exported symbol list.  Extract only the names
2262         of the exported symbols from the def file [otherwise we might
2263         run into trouble with -export-symbols-regex].
2264         (archive_expsym_cmds): Regenerate the def file from the symbol
2265         export list.
2266         (delay_variable_subst): New sed expression to allow us to delay
2267         evaluation of $foo in a double_quote_subst evaluated variable by
2268         using \$.
2269         * ltmain.in (export_symbols_cmds): evaluate each ~ delimitted cmd
2270         separately.
2271         * doc/libtool.texi (libtool script contents): new paragraph to
2272         explain the difference between _cmd and _cmds suffixes for
2273         variable names.
2274         (export_symbols_cmds): renamed from export_symbols_cmd.
2276 1999-02-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
2278         * ltconfig.in (ld_shlibs): move -soname and similar flags to the
2279         end of archive_cmds and archive_expsym_cmds, so as to prevent
2280         gcc's collect2 from inserting an object file between -soname and
2281         the library name
2283         * ltconfig.in (openbsd*, netbsd*, library_names_spec): append
2284         alternate name without ${release}, otherwise build fails when
2285         -release is used
2287 1999-02-18  Gary V. Vaughan  <gary@gnu.org>
2289         * ltconfig.in (archive{,_sym}_commands): Be careful not to
2290         re-export the dll entry points DllMain@12, _cygwin_dll_entry@12 and
2291         _cygwin_noncygwin_dll_entry@12 to avoid bugs with the wrong entry
2292         function being called with inter-dll dependencies.
2293         Reported by DJ Delorie <dj@delorie.com>
2294         * THANKS: Added DJ Delorie, since his code inspired the impgen.c
2295         program and because he has patiently answered all of the
2296         irritating dll and win32 questions I have fired at him.
2298         * ltmain.in (version_type):  Oops.  Irix versioning implies that
2299         major version numbers are 1 based (not zero based).  Fixed.
2301         * ltmain.in (version_type): Implement irix versioning.
2302         * ltconfig.in (irix{5,6}*): Use new irix shared object versioning.
2303         * TODO: remove irix versioning from TODO list.
2305         * ltmain.in (impgen.c): Added a new embedded C file that can be
2306         used under win32 to extract a def file (symbol export list) from a
2307         dll that has none.  Code to use it might need to wait for the ILD
2308         merge before it will be useful...
2310 1999-02-18  Thomas Tanner  <tanner@gmx.de>
2312         * TODO: updated
2313         * autogen: only libltdl needs autoheader
2314         * doc/libtool.texi (link mode): documented -export-symbols-regex
2315           and updated -export-symbols
2316         * doc/libtool.texi (script contents): documented
2317           always_export_symbols, export_symbols_cmd, exclude_expsyms,
2318           include_expsyms, dlopen and dlopen_self
2319           more detailed description of need_lib_prefix
2320         * ltconfig.in: a "'" was missing in the default value
2321           of export_symbols_cmd
2322         * ltmain.in: implemented -export-symbols-regex
2324 1999-02-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
2326         * ltconfig.in: (freebsd2*, sunos4*, exclude_expsyms): exclude
2327         _GLOBAL_OFFSET_TABLE_
2328         * ltmain.in: implement exclude_expsyms with egrep
2330         * libltdl/ltdl.c (lt_dlmalloc, lt_dlfree): SunOS' cc can't cope
2331         with argument lists, we __P even in the definition
2333 1999-02-15  Thomas Tanner  <tanner@gmx.de>
2335         * cdemo/Makefile.am: renamed *foo1 to *foo, removed $(MATH_LIB)
2336         * cdemo/foo1.c: renamed to foo.c
2337         * libltdl/ltdl.c: eliminated lt_dltype, in presym_open():
2338           search for @PROGRAM@ if filename == 0, in lt_dlopen():
2339           fixed bug for filename == 0
2340         * libltdl/ltdl.h: use __P macro for lt_dlmalloc/free
2341         * libtool.m4: new macro AC_LIBTOOL_DLOPEN: checks for dlopen
2342           and dlopen(NULL) support
2343         * ltconfig.in: added new variables dlopen and dlopen_self,
2344           --enable-dlopen[-self] flags for AC_LIBTOOL_DLOPEN
2345         * ltmain.in: use dlopen[_self], dlpreopen files if there's no
2346           dlopen support, build lt_preloaded_symbols only if
2347           -dl[pre]open was used, include program symbols if -export-dynamic
2348           was specified and there's no dlopen(NULL) support
2349         * mdemo/configure.in: use AC_LIBTOOL_DLOPEN
2350         * mdemo/main.c: demonstrate lt_dlopen(0)
2352 1999-02-15  Gary V. Vaughan  <gary@gnu.org>
2354         * demo/dlmain.c (_WIN32): The lt_symlist structure is now const,
2355         so my original horrible temporary win32 hack no longer worked.
2356         Here is a new horrible temporary hack to prevent helldl from SEGVing
2357         on win32.  I will fix this properly when we figure out how to do
2358         data exports from dlls.
2360 1999-02-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
2362         * libtool.m4 (AC_CHECK_LIBM): do not set MATHLIB or AC_SUBST it,
2363         this has a negative side-effect of causing automake to add MATHLIB
2364         to every single Makefile.  Let's use plain AC_CHECK_LIB, so that
2365         LIBS get set, until we find a better alternative
2366         * *demo/Makefile.am: remove $(MATHLIB)
2368         * libltdl/configure.in: add a DESCRIPTION argument to AC_DEFINEs
2369         where appropriate, so as to get rid of acconfig.h
2370         * libltdl/acconfig.h: removed
2372 1999-02-13  Thomas Tanner  <tanner@gmx.de>
2374         * *demo/Makefile.am: use $(MATHLIB)
2375         * *demo/configure.in: use AC_CHECK_LIBM
2376         * doc/libtool.texi: renamed file_magic_command to file_magic_cmd,
2377           renamed archive_sym_cmds to archive_expsym_cmds
2378         * ltconfig.in: ditto
2379         * ltmain.in: ditto
2380         * libltdl/ltdl.c: use lt_dlmalloc/free
2381         * libltdl/ltdl.h: define lt_dlmalloc/free
2382         * libtool.m4: added AC_CHECK_LIBM macro
2383         * ltconfig.in: renamed archive_sym_cmds to archive_expsym_cmds,
2384           added always_export_symbols, export_symbols_cmd, exclude_expsyms,
2385           include_expsyms, removed archive_cmds for cygwin/mingw and AIX,
2386           on Solaris store the exported symbols list in objdir
2387         * ltmain.in: allow -export-symbols for modules, use thread_safe flag,
2388           add include_expsyms to the exported symbols
2390 1999-02-12  Gary V. Vaughan  <gary@gnu.org>
2392         * libltdl/ltdl.h (_LTDLL_EXTERN): libltdl is no longer linked as a
2393         shared library, so the _declspec's were preventing the linker from
2394         resolving symbols on win32.  They have been removed now.
2396 1999-02-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
2398         * ltmain.in: don't try to read objdir/libname.la before it is
2399         created!
2401         * ltmain.in: create libname.lai at link time, not at install time,
2402         but still create it at install time if it is missing
2403         Reported by Akim Demaille <demaille@inf.enst.fr>
2405         * libltdl/ltdl.c (tryall_dlopen): strcmp filenames was reversed
2407 1999-02-11  Thomas Tanner  <tanner@gmx.de>
2409         * autogen: libltdl needs autoheader
2410         * demo/Makefile.am: renamed hell.debug to hell.static
2411           (we're demonstrating static linking, not debugging)
2412         * tests/demo*: ditto
2413         * doc/libtool.texi (libltdl): documented new lt_dlopen(NULL)
2414           feature
2415         * libltdl/acconfig.h: required for config.h
2416         * libltdl/configure.in: use config.h
2417         * libltdl/ltdl.c: use config.h, support lt_dlopen(NULL)
2418           (returns a handle for the program itself)
2419         * ltconfig.in: minor reformatting
2420         * ltmain.in: in lt_preloaded_symbols always define
2421           the program's symbols first, for -export-dynamic list all
2422           program symbols together, -export-symbols was broken for
2423           programs, minor reformatting
2424         * mdemo/Makefile.am: renamed mdemo.debug to mdemo.static
2425         * tests/mdemo*: ditto, mdemo.test was completely broken
2427 1999-02-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
2429         * ltconfig.in (irix5*, irix6*, osf3*, osf4*): do not use
2430         -set_version in archive_cmds if verstring is empty
2431         (irix6*, shlibpath_var, sys_lib_search_path-spec,
2432         deplibs_check_method): set appropriate values depending on
2433         selected ABI, -32, -n32 or -64, as set in LD by libtool.m4
2434         (uts4*): remove dot between .so and versuffix
2436 1999-02-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
2438         * ltconfig.in (irix5*, irix6*, deplibs_check_method): use
2439         file_magic for inter-library dependency tracking
2441         * ltconfig.in (irix5*, hardcode_libdir_separator): set it to a
2442         colon, because on IRIX 5 only the last -rpath switch prevails, and
2443         it can be a list of colon-separated directories.  This change will
2444         affect irix6 too, but that's not a problem.
2446         * ltconfig.in (irix5*, library_names_spec): add soname_spec,
2447         otherwise we can't dlopen
2449 1999-02-08  Thomas Tanner  <tanner@gmx.de>
2451         * ltconfig.in: according to Marcus Sundberg <mackan@stacken.kth.se>
2452           HP/UX, IRIX, OpenBSD, Digital Unix and SunOS support
2453           need_version=no and need_lib_prefix=no,
2454           fixed a bug in Solaris' archive_sym_cmds
2456 1999-02-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
2458         * libtool.m4 (ac_cv_sys_global_symbol_pipe): accept TAB in
2459         addition to space as separator, and allow more than one space
2460         between the symbol code and the symbol name; HP/UX's nm, for
2461         example, uses two spaces
2462         * ltconfig.in (global_symbol_pipe): ditto
2463         (bsdi4, deplibs_check_method): variable name was misspelled
2464         * libltdl/configure.in (libltdl_cv_preloaded_symbols): rewrite
2465         test, so as not to depend on the way global_symbol_pipe is
2466         initialized; the current test would get false positives, as
2467         global_symbol_pipe was initialized `x=""', not `x='
2469         * libltdl/ltdl.c (find_module): initialize filename if dir is NULL
2470         Reported by Godmar Back <gback@cs.utah.edu>
2472 1999-02-04  Godmar Back  <gback@cs.utah.edu>
2474         * libltdl/ltdl.c (lt_dlopenext): missing space for terminator when
2475         allocating memory for shlib_ext
2477 1999-02-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
2479         * libltdl/ltdl.c (lt_dlopenext): tmp would be trashed if shlib_ext
2480         was longer than 3 characters
2482 1999-02-02  Gary V. Vaughan  <gary@gnu.org>
2484         * ltconfig.in: new config.guess returns *-*-cygwin now instead of
2485         *-*-cygwin32.  sed -e 's%\(cygwin\|mingw\)32%\1%g' ltconfig.in
2486         * ltmain.in:   sed -e 's%\(cygwin\|mingw\)32%\1%g' ltmain.in
2488         * ltconfig.in (hardcode_libdir_flag_spec, allow_undefined_flag,
2489         archive_cmds, archive_sym_cmds, old_archive_from_new_cmds):
2490         removed duplication of config by assuming that `test $with_gcc =
2491         yes' implies gnu ld, otherwise MSVC++ (which I haven't tested
2492         since I inheritted the code from Ian Lance Taylor btw!) is implied.
2494 1999-01-28  Gary V. Vaughan  <gary@gnu.org>
2496         * ltmain.in: Reverted this change of Alexandre's from the
2497         1999-01-25; "don't try to use .o instead of .lo just because
2498         there's no PIC flag.  It loses if --disable-static, and there's
2499         not much point if we're referring to the same file anyway...",
2500         because not all linkers will accept .lo object names.
2501         * ltmain.in: In the case where --disable-static is specified (as
2502         noted in Alexandre's log entry), we just link some .o files to
2503         prevent the original error.
2504         Reported by Andrey Slepuhin <pooh@msu.ru>
2506 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
2508         * libtoolize.in: search for A[MC]_PROG_LIBTOOL, not
2509         AM_PROG_LIBTOOL
2510         Reported by Jeff Garzik <jgarzik@pobox.com>
2512 1999-01-27  Gary V. Vaughan  <gary@gnu.org>
2514         * THANKS: Now that we have a policy, applied it to the existing
2515         list.  This in no way demeans the work of those people removed
2516         from the THANKS file, who are still credited in the ChangeLogs and
2517         without who's work, libtool would not work so well on many
2518         platforms, but serves to highlight the outstanding and continued
2519         contribution the remaining people have made.  And I quote, "We
2520         reserve THANKS for people who have made major contributions, and
2521         leave the credit to the others for the ChangeLog only."
2523         * THANKS: added Sam Vilain.
2524         * ltconfig.in ($echo):  When using printf to replace echo the shell
2525         expands %s\n to %sn.  Changed to use "%s\n" (with quotes).
2526         Reported by Sam Vilain <sam.vilain@nz.unisys.com>
2528 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
2530         * libltdl/ltdl.c (find_file): fix endless loop condition
2531         (find_module): filename allocation was off by 1
2533         * libltdl/Makefile.am (distclean-local): renamed from
2534         distclean-hook, that didn't work
2536         * libltdl/ltdl.c (lt_dlopen, non-.la): find_file now returns 0 on
2537         failure
2539         * Makefile.am (ltconfig, ltmain.sh): some broken makes don't like
2540         macros in targets; replace $(srcdir) with @srcdir@
2541         * configure.in (ACINCLUDE_M4_LIST): same problem; expand $srcdir
2543         * libltdl/Makefile.am (@TOINST@/libltdl.la): if installation is
2544         enabled, create to-be-installed libltdl.la within @TOINST@
2545         directory
2546         (noinst_LTLIBRARIES): even if installation is enabled, build
2547         convenience libltdl.la, otherwise builds of random packages may
2548         fail if the user happens to enable installation
2549         (distclean-hook): wipe out $(TOINST)
2550         * libltdl/configure.in: set TOINST and LIBLIBS as appropriate;
2551         don't set NOINSTLIBS any more
2552         * mdemo/Makefile.am: use libltdl.la
2554         * libltdl/ltdl.c (find_file): oops, filenamesize was miscomputed
2556         * libltdl/ltdl.c (find_file): allocate filename dynamically
2558         * libltdl/configure.in (AC_PROG_LIBTOOL): automake does not
2559         recognize it and fail, better keep using AM_PROG_LIBTOOL until the
2560         next release of automake
2561         * demo/configure.in, cdemo/configure.in: ditto
2562         * depdemo/configure.in, mdemo/configure.in: ditto
2564         * libltdl/ltdl.c: make all global strings char[], not char*; check
2565         that all calls to malloc() are properly cast
2566         (strdup, strchr, strrchr, trim, free_vars): declare as inline
2567         (find_module): allocate filename dynamically; support null dir
2568         (free_vars): free dir and name only if non-null
2569         (lt_dlopen): keep dir as NULL if not given; fix expression that
2570         calculated the size of name; only free and name if non-null
2571         (lt_dlopenext): allocate tmp dynamically
2573         * configure.in (pkgdatadir): expand ${PACKAGE} at configure-time,
2574         just like automake does
2576         * configure.in (pkgdatadir): define pkgdatadir explicitly, and
2577         comment that automake does not need it, but libtoolize does
2579         * Makefile.am (aclocaldir): do not set it explicitly, automake
2580         does already
2582         * configure.in (TIMESTAMP): use mkstamp here too
2584 1999-01-27  Thomas Tanner  <tanner@gmx.de>
2586         * cdemo/configure.in: renamed AM_PROG_LIBTOOL to AC_PROG_LIBTOOL
2587         * demo/configure.in: likewise
2588         * depdemo/configure.in: likewise
2589         * libltdl/configure.in: likewise
2590         * mdemo/configure.in: likewise
2591         * libltdl/ltdl.c: in find_module() check whether libdir is defined,
2592           tryall_dlopen(): move deallocation of an already opened handle
2593           to lt_dlopen(), allocate the directory in lt_dlopen() dynamically,
2594           minor cleanups, fixed memory leak (name)
2595         * libtool.m4: renamed all AM_ macros to AC_ and added aliases for
2596           compatibilty, updated AC_SYS_NM_PARSE (no undefined symbols,
2597           don't count the symbols)
2598         * ltconfig.in: added thread_safe_flag_spec (not used yet),
2599           added generic variable for linker options "linkopts" in
2600           all archive_cmds
2601         * ltmain.in: added -thread-safe flag (unused)
2603 1999-01-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
2605         * ltconfig.in (LTCONFIG_VERSION): damn!, adding TIMESTAMP doesn't
2606         always work, because then different ChangeLog timestamps fail to
2607         pass the version test.  Instead of forcing both ltconfig and
2608         ltmain.sh to be updated every time ChangeLog changes, better
2609         revert it
2611         * ltconfig.in (LTCONFIG_VERSION): add TIMESTAMP, remove
2612         explicit quotes and add it to the list of variables to quote
2614         * ltmain.in: reworded `dropped inter-library dependencies'
2615         message, and added a warning about inter-library dependencies even
2616         for non-module builds
2618 1999-01-26  Gary V. Vaughan  <gary@gnu.org>
2620         * Makefile.am (install-data-hook): Don't show the if expression
2621         that tests for gzip with a conditional error message; just do it
2622         quietly and show the error if it fails, or the next action if it
2623         succeeds.
2625         * configure.in:  It seems Alexandre accidentally removed the
2626         AC_SUBST(pkgdatadir) line recently which breaks libtoolize.
2627         Reverted that small change.
2629 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
2631         * libltdl/ltdl.c (find_module): test old_name and dlname for NULL,
2632         not len==0
2634         * libltdl/configure.in (libltdl_cv_objdir): yes, appending the "/"
2635         in configure.in was much simpler
2636         * libltdl/ltdl.c (objdir): ditto
2638         * libltdl/ltdl.c (objdir): string collation isn't portable; strcat
2639         "/" explicitly.  Or should this be moved to configure.in?
2641 1999-01-25  Thomas Tanner  <tanner@gmx.de>
2643         * libltdl/ltdl.c: allocate the variables in lt_dlopen() dynamically
2645 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
2647         * ltmain.in (file_magic): use egrep instead of expr to support
2648         more general regular expressions
2649         (file_regex): remove it; the name is misleading, it's not used
2650         anywhere, and probably will never be
2651         * ltconfig.in, doc/libtool.texi: ditto
2652         * ltconfig.in (linux-gnu*, deplibs_check_method): extend regex to
2653         support `LSB dynamic lib' in the output of `file'
2654         Reported by Scott D. Heavner <sdh@po.cwru.edu>
2656         * ltmain.in (dependency_libs, xrpath): add -R switches to
2657         dependency_libs only just before creating the .la file; they
2658         should not be passed to the C compiler or linker at
2659         library-creation time, since we don't know whether it is supported
2661         * ltconfig.in (freebsd2.2*, hardcode_minus_L): for FreeBSD 2.2.6,
2662         this must be `no'
2664         * mkstamp: move the sed script to extract revision and date
2665         information into a separate shell-script, so that we can break
2666         lines between commands; FreeBSD's sed doesn't like `;' after `t'
2667         Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
2668         * Makefile.am: use mkstamp
2669         * THANKS: added Axel Thimm
2671         * ltmain.in: don't try to use .o instead of .lo just because
2672         there's no PIC flag.  It loses if --disable-static, and there's
2673         not much point if we're referring to the same file anyway...
2675         * ltmain.in (pass_all=none, droppeddeps): set only if deplibs was
2676         non-empty
2678 1999-01-24  Thomas Tanner  <tanner@gmx.de>
2680         * libltdl/ltdl.c: minor bugfixes, append a "/" the search
2681           directory only if necessary
2682         * ltconfig.in: added support for FreeBSD >= 3.0
2683           (patch from Kurt D. Zeilenga)
2684         * THANKS: added Kurt D. Zeilenga
2686 1999-01-24  Thomas Tanner  <tanner@gmx.de>
2688         * doc/libtool.texi (libltdl): list supported dlopen mechanisms,
2689           added function lt_dlopenext(), removed reference to
2690           LTDL_PRELOADED_SYMBOLS in LTDL_SET_PRELOADED_SYMBOLS
2691         * libltdl/ltdl.c: partially reverted Alexandre's dynamic string
2692           allocation change (it was not necessary and the code was unreadable),
2693           cleanups, removed usr_search_path_size, renamed usr_search_path
2694           to user_search_path, in find_module() also check for moved
2695           modules, merged find_file() and find_library(),
2696           added lt_dlopenext(), in lt_dladdsearchdir() no longer reset
2697           the search path if 'search_dir' == NULL and don't use realloc()
2698           (might not be available on all platforms),
2699           removed __P((void)) in the declaration of lt_dlgetsearchpath()
2700         * libltdl/ltdl.h: added lt_dlopenext()
2701         * ltconfig.in: AIX archive commands were broken,
2702           fixed a MAJOR bug in global_symbol_pipe which caused
2703           "demo-shared.test;demo-make.test" to fail (libtool must not extract
2704           undefined symbols of libraries, i.e. symcode must not contain 'U')
2705         * tests/Makefile.am (clean-local): "make distclean" in cdemo, too
2707 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
2709         * Makefile.am (ltconfig, ltmain.sh): add ChangeLog Revision to
2710         TIMESTAMP
2711         * configure.in: get values of PACKAGE and VERSION set by
2712         AM_INIT_AUTOMAKE, and extract only TIMESTAMP from the ChangeLog
2714         * libltdl/ltdl.c (lt_dlopen): if we're reusing a previously opened
2715         handle, don't reset its name nor add it to the list, and free the
2716         name we have allocated
2717         Reported by Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
2719         * Makefile.am (ltconfig, ltmain.sh, TIMESTAMP): let's not assume
2720         anything about the format of the date, just that it does not
2721         contain `$'
2723 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
2725         * configure.in (date): echo the version number during
2726         configuration, and show $date for cvs versions.
2728         * Makefile.am ($(srcdir)/ltconfig): Oops.  cvs co keyword
2729         expansion ate the sed expression! Changed sed separator to '%'
2730         because there are '/' in the date.  Added missing '\(' to search
2731         expression.  Inserted a null string to stop cvs from expanding it
2732         next time =)O|
2733         ($(srcdir)/ltmain.sh): ditto.
2735 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
2737         * Makefile.am (TSDEPS_DIST): dist-time dependencies for timestamps
2738         (timestamps, update-timestamps): check whether TSDEPS_DIST are
2739         up-to-date and update ltconfig and ltmain.sh if needed
2740         (ltconfig, ltmain.sh): depend on TSDEPS; replace @TIMESTAMP@ with
2741         the Date tag in the ChangeLog
2742         (TSDEPS): empty unless overridden by update-timestamps
2743         * ltconfig.in, ltmain.in (TIMESTAMP): append timestamp to most
2744         references to VERSION
2746 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
2748         * ltmain.in (ild): Revert the change which allowed libtool to
2749         link libraries with dependencies on .la libs.
2750         * NEWS: Removed reference to win32, incase 1.3 ships before
2751         ild is ready.
2752         * doc/PLATFORMS: Removed i686-pc-cygwin32, for the same reason.
2753         * doc/libtool.texi: Removed win32 refs, for the same reason.
2755 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
2757         * ltmain.in (Xsed): add 1 to Xsed definition that goes into
2758         temporary wrapper scripts
2759         * libtool.m4: we don't have Xsed here, expand it manually
2760         Reported by Pavel Roskin <pavel_roskin@geocities.com>
2762 1999-01-22  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
2764         * ltmain.in (finalize_hardcode_libdirs, finalize_rpath): in
2765         platforms that use -rpath, programs must be finalized at
2766         installation time, otherwise build-tree programs will
2767         prefer installed libraries over build-tree ones
2769 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
2771         * mdemo/Makefile.am (../libltdl/libtool): if it does not exist,
2772         the sub-make for libltdlc.la will take care of it, but we must at
2773         least provide an empty rule for it, otherwise the sub-make will
2774         never run
2776         * demo/configure.in, demo/Makefile.am (DLPREOPEN): reverted; it
2777         didn't make any difference.
2779 1999-01-21  Gary V. Vaughan  <gary@gnu.org>
2781         * THANKS: Added Chris Laas <golem@MIT.EDU>
2783         From Chris Laas <golem@MIT.EDU>
2784         * ltmain.in (compile):  corrected a typo in compile mode which
2785         caused "gcc: unrecognized option -c-fPIC" errors due to a missing
2786         space.
2788 1999-01-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
2790         * libltdl/configure.in: reintroduce code to detect native library
2791         extension
2792         * libltdl/ltdl.c (lt_dlopen): if a .la file name is given, that's
2793         all.  Otherwise, lt_dlopen now tries to append .la first.  If this
2794         fails, it tries the given filename, and, at last, tries to append
2795         the native library extension to the given filename.
2796         * doc/libtool.texi (lt_dlopen): explain new lookup strategy
2798         * libltdl/ltdl.c: major rewrite to avoid almost all fixed-size
2799         buffers; only `tmp' in lt_dlopen remained.  But the code got ugly
2800         :-(
2802         * ltconfig.in (linux-gnu*, finish_cmds): remove erroneous backslash
2804         * demo/configure.in: set DLPREOPEN to -dlopen if we don't have
2805         shared libraries
2806         * demo/Makefile.am (DLPREOPEN): use instead of -dlpreopen
2807         (STATIC): use $(STATIC), not @STATIC@
2808         * mdemo/Makefile.am (STATIC): ditto
2810         * tests/demo-shared.test, tests/demo-static.test: new tests
2811         * tests/mdemo-shared.test, tests/mdemo-static.test: ditto
2812         * tests/Makefile.am: ditto
2813         * doc/libtool.texi: document them
2814         * demo/Makefile.am, mdemo/Makefile.am (STATIC): do not use
2815         -static unconditionally, it can't work with --disable-static
2816         * demo/configure.in, mdemo/configure.in: check whether libtool was
2817         configured to build static libraries and, if not, set STATIC to an
2818         empty string
2820 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2822         * ltmain.in (module, droppeddeps): if libtool could not satisfy
2823         all dependencies of a module, it will only build a static version
2824         of it, and display a warning message
2826 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
2828         * ltconfig.in (aix4*, with_gcc, archive_cmds): fix typo in Andrey
2829         Slepuhin's last patch
2831 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2833         * Makefile.am (@DIST_MAKEFILE_LIST@): work around Ultrix /bin/sh bug
2834         * tests/nomode.test (must specify a MODE): ditto
2835         Reported by Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2836         * THANKS: Added Rainer Orth
2838 1999-01-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2840         * ltconfig.in: No known version of Solaris 2 hardcoded -L paths.
2842 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
2844         * ltmain.in: s/n\'t/ not/
2845         * doc/PLATFORMS: updates for sunos4/m68k and aix
2847 1999-01-20  Andrey Slepuhin  <pooh@msu.ru>
2849         * ltconfig.in (aix4*): check for reworked collect2, always pass
2850         -bnoentry option to linker when building a shared library
2852 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2854         * ltmain.in (file_magic): follow soft-links before running `file'
2855         on the candidate library; try to avoid entering endless loop
2856         Suggested by Nix <nix@esperi.demon.co.uk>
2858         * ltconfig.in (linux*, solaris*, bsdi4*, sys_lib_search_path):
2859         remove expansion of $LD_LIBRARY_PATH
2860         * ltmain.in (lib_search_path): append the expansion of $shlibpath_var
2861         * doc/libtool.texi: document it
2863         * THANKS: Added Steven Schultz
2865 1999-01-20  Steven M. Schultz <sms@wlv.iipo.gtegsc.com>
2867         * ltconfig.in (bsdi4*, check_shared_deplibs_method): file_magic
2868         (bsdi4*, sys_lib_search_path): add /shlib and other dirs
2870 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2872         * cdemo/main.c (main): use K&R definition syntax
2873         * mdemo/main.c (test_dl, main): ditto
2874         (test_dl): casts return value of lt_dlsym to appropriate types
2876         * ltmain.in (dlsyms): #define const to nothing if not __STDC__
2878         * ltconfig.in (global_symbol_pipe): #define const to nothing if
2879         not __STDC__
2881         * demo/dlmain.c (main): cast s->address to the appropriate pointer
2882         types, otherwise StunOS4's cc refuses to compile it
2884         * ltconfig.in (sunos4*, without_gnu_ld, with_gcc, archive_cmds):
2885         add -fPIC, because libgcc is multilibbed, and we want the PIC
2886         version of it for shared libraries, otherwise ld complains
2888         * demo/dlmain.c (main): add missing const to declaration of name
2890         * libltdl/ltdl.c (find_module): remove the libdir argument, and
2891         try to  open library only as old_name and dir/dlname
2892         (lt_dlopen): use `installed' variable in .la file to decide
2893         whether to use libdir or objdir
2895         * demo/configure.in (AC_C_CONST): added, for portability
2896         * mdemo/configure.in (AC_C_CONST): ditto
2897         * libltdl/configure.in (AC_C_CONST, AC_C_INLINE): ditto
2898         * libltdl/ltdl.c (LTDL_FILENAME_MAX): use FILENAME_MAX if defined
2899         (FILENAME_MAX): replace all explicit uses with LTDL_FILENAME_MAX
2900         (presym_free_symlists, trim): don't return void, for portability
2901         (lt_dlgetsearchpath): replace (void) with __P((void))
2903         * ltmain.in (compile): when compiling both PIC and non-PIC, write
2904         the PIC object to .libs/.lo and only rename it to .lo after
2905         compiling the .o, to avoid fooling make dependencies
2907         * mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove
2909 1999-01-20  Gary V. Vaughan  <gary@gnu.org>
2911         * TODO: Added inter-library deps for ltlibs.
2913         * THANKS: Added Vladimir Kushnir.
2915 1999-01-20  Vladimir Kushnir  <kushn@mail.kar.net>
2917         * ltconfig.in (freebsd3*): Define `deplibs_check_method' and
2918         `file_magic_command' for freebsd-elf.
2920 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2922         * TODO: should we also build a `static' copy of a convenience
2923         library out of .o files?
2925         * ltconfig.in (bsdi4*, netbsd*, uts4*, library_names_spec,
2926         soname_spec): removed duplicate dot before $major
2927         Reported by Steven M. Schultz <sms@wlv.iipo.gtegsc.com> (bsdi4*)
2929         * THANKS: added Manfred Weichel
2931 1999-01-20  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
2933         * ltconfig.in (sysv5*): same as sysv4.3*
2935 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2937         * libltdl/ltdl.c (lt_dlopen): properly detect error condition when
2938         full pathname of non-libtool library is provided
2940         * libltdl/configure.in (libltdl_cv_preloaded_symbols,
2941         HAVE_PRELOADED_SYMBOLS): test whether we support -dl*open
2942         * libltdl/ltdl.c (!HAVE_PRELOADED_SYMBOLS, lt_preloaded_symbols):
2943         define it to an empty list if libtool won't generate it, so as to
2944         avoid link errors.  This will cause silent dlopening failures, but
2945         maybe this is better than failing to link the program...
2947         * libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to
2948         declare lt_preloaded_symbols
2949         * doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto
2951         * ltmain.in (dlpredeps): removed, reverting 1999-01-17's change
2953 1999-01-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
2955         * libltdl/Makefile.am (Makefile): depend on libtool
2957         * ltmain.in (lt_preloaded_setup): function added to symbol list
2958         source file to work around FreeBSD problem
2960         * Makefile.am (check-local): depend on libltdl/Makefile
2962         * mdemo/Makefile.am (mdemo_LDFLAGS, mdemo_LDADD): moved -dlopen
2963         flags to LDADD
2964         * doc/libtool.texi (Using Automake): how to add -dlopen to LDADD
2966 1999-01-19  Gary V. Vaughan  <gary@gnu.org>
2968         From Andrey Slepuhin <pooh@msu.ru>
2969         * ltmain.in (hardcode_action) Oops, misapplied the patch!
2971         * ltconfig.in (compile_dependencylbs): removed this
2972         variable and pick up the library dependencies from $deplibs.
2973         * ltmain.in (compile_dependencylibs): removed this
2974         variable, use deplibs to hold these dependencies.
2976         From Andrey Slepuhin <pooh@msu.ru>
2977         * ltmain.in (hardcode_action) make sure deplibs is set to include
2978         all the extra libs added to compile_command.
2980 1999-01-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
2982         * libtool.m4 (LIBTOOL_DEPS): set it
2983         * libltdl/configure.in (LIBTOOL_DEPS): AC_SUBST it
2984         * libltdl/Makefile.am (libtool): use it
2985         * doc/libtool.texi (AM_PROG_LIBTOOL): document it
2987         * Makefile.am (libltdl.tar.gz): don't create it as part of the
2988         build, since it is likely to become stale if we do
2989         (install-data-hook): create and install libltdl.tar.gz, without
2990         depending on GNU tar
2991         Reported by Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
2993 1999-01-17  Thomas Tanner  <tanner@gmx.de>
2995         * Makefile.am: added libltdl.tar.gz to CLEANFILES
2996         * ChangeLog: some reformatting
2997         * TODO: documentation updates
2998         * doc/libtool.texi: added preliminary libltdl documentation,
2999           updated dlopen and -module documentation,
3000           renamed -avoid-versioning to -avoid-version
3001           documented the libtool script variables compiler_c_o,
3002           compiler_o_lo, need_locks, old_postuninstall_cmds,
3003           postuninstall_cmds, sys_lib_search_path_spec,
3004           fix_srcfile_path, objdir, objext, libext,
3005           documented the two new flags (--ltdl[-tar]) of libtoolize
3006         * libltdl/Makefile.am: incremented the version, removed
3007           libtool dependency so that it can be build independently
3008         * libltdl/configure.in: removed LTDL_SHLIB_EXT hack,
3009           set version to 1.0, use AM_MAINTAINER_MODE,
3010           DLPREOPEN is always supported, check for libtool's objdir variable
3011           (LTDL_OBJDIR)
3012         * libltdl/ltdl.c: some cleanups (moved constants to the beginning
3013           of the file and prefixed all of them with LTDL_, minor optimizations
3014           in find_file() and find_module()), renamed lt_dlpreopen* to
3015           lt_dlpreload* for consistency, removed LTDL_SHLIB_EXT hack,
3016           we don't need unistd.h, DLPREOPEN is _always_ supported,
3017           reverted Alexandre's lt_dlpreopen_default_ change,
3018           try to open the not-installed module before the installed one,
3019           replaced lt_dlsearchpath() with lt_dladdsearchdir(),
3020           lt_dlsetsearchpath() and lt_dlgetsearchpath()
3021         * libltdl/ltdl.h: renamed lt_dlpreopen* to lt_dlpreload*
3022           for consistency, removed the declaration of lt_preloaded_symbols
3023           (should be imported by programs),
3024           reverted Alexandre's lt_dlpreopen_default_ change and added
3025           two new macros LTDL_PRELOADED_SYMBOLS and
3026           LTDL_SET_PRELOADED_SYMBOLS(),
3027           added lt_dladdsearchdir(), lt_dlsetsearchpath() and
3028           lt_dlgetsearchpath()
3029         * libtool.m4: some reformatting
3030         * libtoolize.in: implemented --ltdl, bugfix when checking for
3031           the libtool package directory
3032         * ltconfig.in: removed $thread_safe_flags from Andrey Slepuhin's
3033           AIX patch, renamed sys_lib_search_path to sys_lib_search_path_spec,
3034           some reformatting, fixed typo in deplibs_check_method (unkwnon)
3035         * ltmain.in: documented -o for compile mode, some reformatting,
3036           renamed -avoid-versioning to -avoid-version
3037           renamed sys_lib_search_path to sys_lib_search_path_spec
3038         * mdemo/Makefile.am: use -avoid-version
3039         * mdemo/main.c: use LTDL_PRELOADED_SYMBOLS and
3040           LTDL_SET_PRELOADED_SYMBOLS()
3042 1999-01-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
3044         * ltconfig.in (wlarc): set to either '${wl}' or an empty string,
3045         depending on whether archive_cmds runs CC or LD
3046         (gnu_ld=yes, whole_archive_flag_spec): "$wlarc" instead of '${wl}'
3048         * mdemo/Makefile.am (../libltdl/libltdlc.la): depend on
3049         ../libtool, because ../libltdl/libtool depends on it
3050         (mdemo_debug_*): copy from mdemo_*, adding -static to LDFLAGS
3052         * ltmain.in (dlpredeps): append dependencies from dlopened modules
3053         (but not dlpreopened ones) after all explicitly linked libraries
3055         * ltconfig.in (need_lib_prefix, need_version,
3056         deplibs_check_method): default to unknown, so that we're
3057         remembered that this needs porting; unknown is interpreted as yes,
3058         yes and none, respectively
3059         (freebsd2*, freebsd3*, sunos4*, need_version): set to yes
3060         (freebsd2*, freebsd3*, library_names_spec): libraries without a
3061         version number are not used by `ld'; add $versuffix;
3062         Reported by Ben Jackson <ben@ben.com>
3063         * ltmain.in (deplibs_check_method): alias unknown to none
3064         (need_version): if vinfo was not provided and release info was,
3065         zero out versuffix only if we don't need_version.
3066         * doc/libtool.texi: document what `unknown' means
3068         * libltdl/ltdl.h (lt_dlpreopen_default): reverted to a macro
3069         without arguments, that calls lt_dlpreopen_default_ with
3070         lt_dlpreloaded_symbols
3071         * libltdl/ltdl.c (lt_dlpreopen_default_): renamed from
3072         lt_dlpreopen_default
3073         (find_module) tryall_dlopen old_name first, so that we don't
3074         override statically linked symbols with dlopened ones
3076 1999-01-15  Gary V. Vaughan  <gary@gnu.org>
3078         From Andrey Slepuhin <pooh@msu.ru>
3079         * libtoolize.in (cd $pkgdatadir): Make sure we return the the
3080         working directory when this is done.
3082         From Andrey Slepuhin <pooh@msu.ru>
3083         * ltconfig.in (aix): Use shared library support correctly on
3084         aix4*, and tweak the config for aix3.
3085         * NEWS: added aix3 and aix4 to list of hosts with improved
3086         support.
3087         * THANKS: added Andrey Slepuhin <pooh@msu.ru>.
3089 1999-01-15  Thomas Tanner  <tanner@gmx.de>
3091         * Makefile.am (@DIST_MAKEFILE_LIST@): added a second '$'
3092           before abs_scrdir, removed ltconfig and ltmain.sh from
3093           EXTRA_DIST (automake distributes them by default)
3095 1999-01-14  Thomas Tanner  <tanner@gmx.de>
3097         * autogen: moved faking of the libtool scripts before
3098           the call of automake, so that ltconfig and ltmain.sh
3099           are included in the distribution
3100         * ltconfig.in: when checking whether PIC is supported assume
3101           only on HP/UX that warnings during compilation mean that
3102           PIC is not supported (Thanks to Ron O'Hara)
3103         * THANKS: added Ron O'Hara
3105 1999-01-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
3107         * Makefile.am: Moved ltconfig and ltmain.sh back into srcdir, and
3108         add them to the distribution.  Added work-around if `mv -f' fails.
3109         fix @AINCLUDE_M4_LIST@ and @DIST_MAKEFILE_LIST@ for relative and
3110         absolute specifications of srcdir
3112 1999-01-14  Thomas Tanner  <tanner@gmx.de>
3114         * libltdl/ltdl.c: added variable symbol prefix, added user-defined
3115           library search path (can be set using lt_dlsearchpath()),
3116           added default_preloaded_symbols which are independent of
3117           lt_dlinit/exit
3118         * libltdl/ltdl.h: added lt_dlsearchpath() and
3119           lt_dlpreopen_default()
3120         * mdemo/Makefile.am: use -export-dynamic until libtool
3121           and libltdl are able to handle module dependencies
3123 1999-01-14  Gary V. Vaughan  <gary@gnu.org>
3125         * THANKS: added Mark Elbrecht.
3126         * ltconfig.in (PATH_SEPARATOR): new variable to hold valid $PATH
3127         separator characters for the build host, to support DJGPP
3128         environment.
3129         * ltconfig.in: Use PATH_SEPARATOR instead of hardcoded `:'.
3130         Reported by Mark Elbrecht <snowball3@usa.net>
3132         * cdemo/README: typo: mdemo->cdemo
3134 1999-01-14  Thomas Tanner  <tanner@gmx.de>
3136         * autogen: fake the libtool scripts to help fixing
3137           the bootstrapping problem
3138         * Makefile.am: always configure libltdl, however after building
3139           the libtool scripts,
3140           build the libtool scripts in builddir, not srcdir
3141           (unfortunately this breaks building when srcdir!=objdir,
3142            but it was just plain wrong - needs to be fixed),
3143           build and install libltdl.tar.gz,
3144           copy acinclude.m4 instead of linking them, so that we
3145           can 'make dist' in libltdl,
3146           fixed configuring of subdirectories
3147         * configure.in: removed --enable-ltdl-install - libltdl is supposed
3148           to be installed by packages, not by libtool itself
3149         * libtoolize.in: new flags --ltdl and --ltdl-tar to install libltdl
3150           in packages (--ltdl doesn't work yet),
3151           install only the necessary libtool scripts, not just all
3152           files in pkgdatadir
3153         * mdemo/Makefile.am: removed the rule for libltdl configuration
3155 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
3157         * mdemo/Makefile.am (../libltdl/libtool): mkdir and configure
3158         ../libltdl
3160 1999-01-13  Thomas Tanner  <tanner@gmx.de>
3162         * demo/dlmain.c, libltdl/ltdl.c, ltconfig.in, ltmain.in,
3163           doc/libtool.texi: renamed dld_preloaded_symbols to
3164           lt_preloaded_symbols, symbol lists are 'const'
3165         * cdemo/configure.in: don't check for string.h
3166         * demo/dlmain.c: renamed dld_symlist to lt_symlist,
3167           preloaded symbols are 'const', use lt_ptr_t instead of void*
3168         * demo/foo.h: define lt_ptr_t
3169         * doc/libtool.texi: document lt_preloaded_symbols correctly
3170         * libltdl/Makefile.am, mdemo/Makefile.am: renamed libtest to libltdlc
3171         * libltdl/ltdl.c: fixed some minor typos, renamed dldpre to presym,
3172           bugfix: search in search_path only if we have no directory
3173           and a search_path, in lt_dlsym() check whether symbol != 0
3174         * libltdl/ltdl.h: removed lt_dlpreopen_default()
3175         * ltconfig.in (dlpreopen): removed dld_preloaded_symbol_count
3176         * ltmain.in: added help for -avoid-versioning, -export-symbols,
3177           -module, add @SYMFILE@ if one of -export-dynamic, -dlopen or
3178           -dlpreopen is used
3179         * mail/deplibs.html: added Gordon Matzigkeit's inter-library
3180           dependencies article
3181         * mdemo/Makefile.am: removed -export-dynamic from LDFLAGS
3182           (no longer necessary, since libtool defines lt_preloaded_symbols
3183           when -dlopen is used), initialize with lt_preloaded_symbols
3185 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
3187         * doc/libtool.texi (Test descriptions): cdemo-static works, thanks
3188         to Edouard Parmelan!
3190         * THANKS: added Sebastian Wilhelmi
3192         * ltconfig.in (solaris): define `need_version' to no
3194 1999-01-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3196         * ltconfig.in (solaris): Define `deplibs_check_method',
3197         `file_magic_command', `need_lib_prefix' and `sys_lib_search_path'
3198         * ltmain.in (file_magic_regex): Add space before matching pattern,
3199         such that it works on solaris (solaris has a tab between the
3200         library name (including the colon) and the `ELF' and such the
3201         `ELF' will never be matched).
3203 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
3205         * ltconfig.in (NM): PATH search was not updated like in
3206         libtool.m4, in last Alexandre Oliva's change to it
3207         (sysv4*, ncr): pass all library dependencies
3208         * ltmain.in (dependency_libs, -R): use `deplib' instead of `arg' to
3209         iterate, otherwise we'd overwrite `arg'
3210         (convenience, old_libs): if --disable-shared, convenience
3211         libraries are just old archives, as .lo's are of no use
3212         * tests/cdemo-static.test: print --disable-shared here
3214 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
3216         * libltdl/configure.in (libltdl_cv_shlibext, LTDL_SHLIB_EXT):
3217         system-dependent extension of shared libraries
3218         (libltdl_cv_shlibpath_var, LTDL_SHLIBPATH_VAR): system-dependent
3219         run-time shared library search path
3220         * libltdl/ltdl.c (dldpre_init, dldpre_exit): unrelate init/exit
3221         from add/remove symlists, so one may add dld_preloaded_symbols
3222         from main(), when only a library will call dldpre_init
3223         (lt_dlopen): use LTDL_SHLIBPATH_VAR, if defined, as secondary
3224         search path.  Also, if a requested .la file cannot be found, try
3225         with the LTDL_SHLIB_EXTension instead.
3227         * ltmain.in (old_archives, oldobjs): use find to SYMDEF here too
3229         * Makefile.am (@DIST_MAKEFILE_LIST@): `$' must be doubled
3231         * configure.in (AC_CONFIG_DIRS): configure only libltdl, and then,
3232         only if --enable-ltdl-install
3233         (CONF_SUBDIRS): list directories that are configured on demand,
3234         but that must be included in the distribution
3235         (ACINCLUDE_M4_LIST, DIST_MAKEFILE_LIST): generated from CONF_SUBDIRS
3236         * Makefile.am (AUTOMAKE_OPTIONS): added version 1.3e and
3237         readme-alpha, to handle README-alpha automatically
3238         (EXTRA_DIST): removed README-alpha
3239         (BUILD_SUBDIRS): subdirectories that are always built
3240         (SUBDIRS): BUILD_SUBDIRS plus BUILD_LTDL
3241         (DIST_SUBDIRS): BUILD_SUBDIRS plus CONF_SUBDIRS, from configure
3242         (all-local, check-local): depend on $(ACINCLUDE_M4_LIST), from
3243         configure, and libtool, so that it is built before subdirs
3244         (configure-subdirs): new target
3245         (configure-subdirs, distdir): depend on $(DIST_MAKEFILE_LIST),
3246         from configure
3247         (@DIST_MAKEFILE_LIST@): create subdir if needed, then run
3248         configure.
3249         On-demand configuration of subdirs at distribution time was
3250         suggested by Gary V. Vaughan <gary@gnu.org>
3252         * libtool.m4, ltconfig.in (NM): search for NM in PATH before
3253         /usr/ccs/bin, /usr/ucb and /bin.  However, if the found one isn't
3254         BSD-compat keep searching.  If no BSD-compat is found, use the
3255         first we found.
3257         * THANKS: added Raffaele Sena
3259 1999-01-13  Raffaele Sena  <raff@aromatic.com>
3261         * libltdl/ltdl.c: replaced RTDL with RTLD
3263 1999-01-13  Manish Singh  <yosh@gimp.org>
3265         * ltconfig.in (osf3*, osf4*, irix6*): include
3266         ${libname}{release}.so for library_names_spec
3268 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
3270         * configure.in (AC_CONFIG_SUBDIRS): added cdemo
3271         * Makefile.am (DIST_SUBDIRS): ditto
3272         (ACINCLUDE_M4_LIST): ditto
3273         * tests/Makefile.am (TESTS): added cdemo-shared.test
3274         * tests/cdemo-static.test: disable shared libraries here
3275         * tests/cdemo-shared.test: disable static libraries here
3276         * doc/libtool.texi (Test descriptions): added cdemo tests
3277         * THANKS: added Edouard G. Parmelan
3279 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
3281         * ltmain.in: fix convenience libraries when static libraries
3282         are disables.
3283         * cdemo/README, cdemo/Makefile.am, cdemo/configure.in, cdemo/foo.h,
3284         cdemo/foo1.c, cdemo/main.c, cdemo/.cvsignore, test/cdemo-conf.test,
3285         test/cdemo-make.test, test/cdemo-exec.test, test/cdemo-static.test:
3286         new tests for convenience libraries.
3287         * autogen, Makefile.am, test/Makefile.am: ditto.
3289         * ltconfig.in, doc/PLATFORMS: Added support for NCR MP-RAS
3290         (i586-ncr-sysv4.3*) with native compiler.
3291         * README, doc/libtool.texi: Added note for NCR MP-RAS compiler.
3293 1999-01-12  Thomas Tanner  <tanner@gmx.de>
3295         * ltmain.in: before using LN_S remove the symlink
3296         * libltdl/ltdl.c: support multiple symbol lists, moved library-
3297           and file searching to separate functions, renamed "preload_libs"
3298           to "dl_dependency_libs", set the LT_SYMBOL_OVERHEAD to the correct
3299           value (7), fix to support lt_dlsym() for not-libtool modules again,
3300           check for invalid handles, when using strdup() check whether
3301           it fails
3302         * libltdl/ltdl.h: declare the lt_dlsymlist type for lt_dlpreopen()
3303         * mdemo/README: rewritten
3304         * mdemo/configure.in: check only for math.h (string.h is no longer
3305           necessary)
3307 1999-01-12  Gary V. Vaughan  <gary@gnu.org>
3309         * configure.in (ltdl-install): Fixed up the indentation so that
3310         `configure --help' is pretty again.
3312 1999-01-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
3314         * ltmain.in, NEWS, doc/libtool.texi: Added support for -R flag
3315         * ltmain.in, doc/libtool.texi: documented that -rpath is the same
3316         as -R for programs
3317         * ltmain.in: softened the instructions for linking with installed
3318         libraries, and noted that libtool can be used to link with them;
3319         documented that -rpath is not required for convenience libraries
3321         * ltconfig.in (symxfrm): don't print $pipe_works twice, once for
3322         each $ac_symprfx
3323         Reported by Godmar Back <gback@cs.utah.edu>
3325         * ltmain.in (convenience, libobjs): get only .o and .lo files from
3326         the files extract from the convenience library.  Some systems,
3327         such as FreeBSD2, will add a SYMDEF file, that is not an object
3328         file, and therefore should not be fed to the linker
3330         * libtool.m4 (AM_SYS_NM_PARSE): while we are at it, we may well
3331         cache the value of ac_cv_sys_symbol_underscore
3333         * libtool.m4 (AM_SYS_NM_PARSE): need for underscore prefix is now
3334         auto-detected, by trying first without, then with it.
3336         * ltconfig.in: ditto
3338 1999-01-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
3340         * configure.in (AC_CONFIG_SUBDIRS): add libltdl, demo, mdemo and
3341         depdemo commented out, so that `dist' works before `check'
3342         (BUILD_LTDL): will contain libltdl if --enable-ltdl-install
3343         * Makefile.am (DIST_SUBDIRS): expand SUBDIRS and add depdemo,
3344         commented out
3345         (SUBDIRS): add $(BUILT_LTDL)
3346         * libltdl/Makefile.am (EXTRA_LTLIBRARIES): add libtest.la, the
3347         same as libltdl but always a convenience library.  Not built by
3348         default.  Both libraries now depend on the libtool script, that
3349         depends on ../libtool and is rebuilt when needed
3350         * mdemo/Makefile.am (mdemo, mdemo.debug): depend on and link with
3351         ../libltdl/libtest.la, that is rebuilt if needed
3352         (mdemo_LDADD): removed $(LIBADD_M), to avoid silent failures
3353         (foo1.la): renamed from libfoo1.la; test removing the lib prefix
3354         * mdemo/foo1.c: renamed libfoo1_LTX symbols to foo1_LTX
3355         * mdemo/main.c: don't include string.h nor math.h, nor refer to
3356         sin nor cos
3357         * tests/mdemo-exec.test: renamed libfoo1.la to foo1.la
3358         * tests/mdemo-inst.test: ditto
3360         * libltdl/ltdl.c (FILENAME_MAX): use it instead of MAX_FILENAME,
3361         and don't redefine it if already defined; default to 1024, as on
3362         most systems
3363         (LT_SYMBOL_LENGTH): renamed from MAX_SYMBOL_LENGTH
3364         (LT_SYMBOL_OVERHEAD): new macro, that accounts for the size of
3365         the _LTX_ separator and the initial underscore
3366         (lt_dlsym): sym now points to a stack buffer (lsym) if possible,
3367         or is dynamically allocated.  If allocation fails, a
3368         buffer_overflow_error is returned.
3370 1999-01-10  Thomas Tanner  <tanner@gmx.de>
3372         * ltmain.in: define dld_preloaded_symbols if at least one of
3373           -export-dynamic, -dlopen or -dlpreopen was specified,
3374           do not include program objects in the symbol list
3375           if -export-dynamic was not enabled
3376         * libltdl/ltdl.c: limit symbols to max. 256 bytes
3377         * mdemo/Makefile.am: build libltdl in a subdirectory,
3378           do not use -export-dynamic for mdemo and mdemo.debug
3379         * tests/mdemo-conf.test,tests/mdemo-make.test,tests/mdemo-inst.test:
3380           do not check for libltdl
3382 1999-01-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
3384         * libltdl/ltdl.c (lt_dlopen): missing strlen in bound test
3386 1999-01-09  Thomas Tanner  <tanner@gmx.de>
3388         * NEWS: support for BSD/OS 4.x was not documented
3389         * demo/Makefile.am: link against libm only if available
3390         * mdemo/Makefile.am: likewise, use -avoid-versioning flag
3391           instead of -avoid-version (typo)
3392         * demo/configure.in: check for libm, string.h and math.h
3393         * mdemo/configure.in: likewise
3394         * depdemo/configure.in: check for libm and math.h
3395         * libltdl/configure.in: check for dlerror
3396         * libltdl/ltdl.c: check for buffer overflows, implemented
3397           dlerror, fixed a severe bug which occured when opening
3398           non-libtool modules, dlopen with the flags GLOBAL and NOW
3399         * mdemo/main.c: report the error using lt_dlerror()
3401 1999-01-08  Gary V. Vaughan  <gary@gnu.org>
3403         * doc/libtool.texi (old_archive_from_new_commands): Documented
3404         this ltcofig variable.
3406 1999-01-07  Gary V. Vaughan  <gary@gnu.org>
3408         * ltmain.sh (cygwin, allow_undefined): Unfortunately, there are
3409         problems with this variable when trying to make a dll which has
3410         undefined symbols, in which case not even a static library is
3411         built.  For now, we need to specify -no-undefined on the libtool
3412         link line when we can be certain that all symbols are satisfied,
3413         otherwise we get a static library.
3415 1999-01-06  Thomas Tanner  <tanner@gmx.de>
3417         * ChangeLog: merged in tests/ChangeLog
3418         * tests/ChangeLog: deleted
3419         * libltdl/ltdl.c: assigned copyright to the FSF
3420         * libltdl/ltdl.h, mdemo/foo*,main.c: likewise
3422 1999-01-06  Gary V. Vaughan  <gary@gnu.org>
3424         * ltmain.in (dllsearchpath): add absolute directory paths to
3425         dllsearchpath so that the wrapper scripts can be called from any
3426         directory (e.g. tests) on cygwin.
3428         * ltconfig.in (cygwin, library_names_spec): revert Alexandre's
3429         change from yesterday to use `-dll.a' suffix.  That change caused
3430         $libname-dll.a to be a symlink to $soname, which isn't even an
3431         `ar' archive.  Before the import library suffix can be changed, we
3432         need to figure out how to handle building objects differently for
3433         linking with an import library versus an equivalent static library.
3435         * TODO: Added details of a Linux wrapper script bug.
3436         Reported by Jeff Garzik <jgarzik@pobox.com>.
3438 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
3440         * ltmain.in (libobjs_save, oldobjs): when building an
3441         old-fashioned archive, use a copy of libobjs saved before
3442         convenience libraries are appended
3444         * libltdl/ltdl.h (_LTDLL_EXPORT, _LTDLL_IMPORT): use cygwin or
3445         unix library import/export primitives; this may be convenient for
3446         people willing to create DLLs
3447         (_LTDLL_EXTERN): select _LTDLL_EXPORT or _LTDLL_IMPORT depending
3448         on _LTDL_COMPILE_
3449         * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlpreopen): new function,
3450         that replaces the current preloaded_symbols list with its
3451         argument, and returns the old value, initially NULL
3452         (dldpre_init): don't refer to dld_preloaded_symbols any more
3453         (dldpre_open, dldpre_sym): search preloaded_symbols
3454         (lt_dlpreopen_default): call lt_dlpreopen with
3455         dld_preloaded_symbols, that is declared as extern; it should be
3456         called from the main program or from some static library without
3457         -no-undefined
3458         (lt_dlerror): new function, that returns the error message for the
3459         last error occurred; the error message is kept in the static
3460         variable last_error
3461         * libltdl/configure.in (enable-ltdl-install): moved back from
3462         enable-install; other packages might use enable-install already,
3463         better have fine grained control over this.
3464         * libltdl/Makefile.am (libltdls.la): discarded
3466 1999-01-05  Thomas Tanner  <tanner@gmx.de>
3468         * configure.in: do not configure libltdl by default
3469         * Makefile.am: do not build libltdl by default
3470         * libltdl/Makefile.am: ltdls.lo depends on libtool
3471         * tests/Makefile.am: before starting the tests
3472           make sure that libtool was build
3473         * tests/mdemo-conf.test: configure libltdl
3474         * tests/mdemo-make.test: build libltdl
3476 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
3478         * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
3479         would lose for files with embedded blanks.
3481         * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
3482         ltdll.c into ltmain.in, to avoid its duplication, and added a sed
3483         script to extract it.  Also, create def and base files in $objdir,
3484         and don't remove them after the compilation.
3485         (cygwin, library_names_spec): Create static part of the dll with
3486         suffix -dll.a, to avoid conflicts with actual static libraries.
3487         * ltmain.in: Added ltdll.c, as commented out text
3489 1999-01-01  Thomas Tanner  <tanner@gmx.de>
3491         * NEWS: new BeOS support
3492         * THANKS: added Joseph Beckenbach
3493         * libltdl/ltdl.h: use dllimport/export on Win32
3495 Continued in ChangeLog.1998