keep static
[platform/upstream/libtool.git] / ChangeLog.1999
1 1999-12-18  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
2
3         * ltmain.in: Oops, `largarg' -> `lastarg'.
4
5         * ltmain.in (-Wc, -Xcompiler): Implemented in compile mode.
6
7         * ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and
8         finalize_command.
9         (-Wc, -Wl): Likewise.
10
11         * tests/quote.test: Adjust quoting style of -Wl.
12
13         * ltmain.in: Oops, `echo' -> `$echo'.
14
15         * ltmain.in (-Wl, -Wc): Make commas argument separators, just like
16         in gcc.
17
18         * ltmain.in (libtool_args): Get all arguments properly enclosed in
19         quotes and backslash-protected when needed.
20
21 1999-12-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
22
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.
33
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.
37
38         * libltdl/Makefile.am (ACLOCAL): Define with `-I .', as in
39         bootstrap.
40
41 1999-12-15  Thomas Tanner  <tanner@ffii.org>
42
43         * libltdl/configure.in: path to auxiliary files can be specified
44           using --with-auxdir (idea by Howard Chu <hyc@highlandsun.com>)
45
46         * ltmain.in: don't remove multiple occurences from dependency_libs
47           of a library, otherwise many dependencies would get lost
48
49         * bootstrap: use "aclocal -I ." instead of adding the contents
50           of ltdl.m4 to acinclude.m4
51
52 1999-12-13  Gary V. Vaughan  <gary@gnu.org>
53
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.
63
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>.
71
72         * ltconfig.in (ltdll_obj): fixed typo: objdir -> $objdir
73
74 1999-12-12  Gary V. Vaughan  <gary@gnu.org>
75
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>.
81
82 1999-12-10  Gary V. Vaughan  <gary@gnu.org>
83
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.
87
88 1999-12-06  Gary V. Vaughan  <gary@gnu.org>
89
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>.
96
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.
101
102 1999-12-03  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
103
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>
109
110         * ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
111         works together with fast_install.
112
113         * libtool.m4: Use host when --target is not specified.
114
115         * configure.in: AC_SUBST variables that are used by ltconfig to
116         build libtool.
117
118         * ltconfig.in (irix6*): Do not override deplibs_check_method
119         here.
120
121         * libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
122
123 1999-11-20  Michael Forster  <email@michael-forster.de>
124
125         * ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes.
126
127 1999-11-29  Gary V. Vaughan  <gary@gnu.org>
128
129         * ltconfig.in:  Be friendlier to C++ compilers when testing
130         for dlopen support.
131         Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
132
133 1999-11-26  Gary V. Vaughan  <gary@gnu.org>
134
135         * libtool.m4:  better use of $target instead of $host to support
136         cross compilation.
137         Reported by Sam Latinga <slouken@devolution.com>
138
139 1999-11-16  Thomas Tanner  <tanner@ffii.org>
140
141         * configure.in: generate ltconfig and ltmain.sh before configuring
142           libltdl
143
144 1999-11-04  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
145
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>
151
152         * configure.in: Move ltconfig and ltmain.sh generation back...
153         * Makefile.am: here.
154
155 1999-11-02  Thomas Tanner  <tanner@ffii.org>
156
157         * NEWS: updated
158         * THANKS: added Olly Betts and Pavel Roskin
159         * doc/libtool.texi: fix typo
160
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
167
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
171
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
175
176 1999-11-02  Wolfgang Rapp <ulris@bn-ulm.de>
177
178         * ltconfig.in: add support for Unixware (sysv4.2uw2*)
179
180 1999-10-29  Gary V. Vaughan  <gary@gnu.org>
181
182         * ltmain.in:  Damnit!  Cygwin cvs committed all the
183         dos line endings.
184
185 1999-10-28  Stephane Conversy  <Stephane.Conversy@lri.fr>
186
187         * ltmain.in (-DPIC):  changed the order of pic flags a little to
188         prevent upsetting the sgi c++ compiler.
189
190 1999-10-28  Olly Betts  <olly@muscat.co.uk>
191
192         * ltconfig.in (opt_cr):  Handle crlf sequences output by the
193         mingw toolchain.
194
195         * libtool.m4:  Third time lucky, with Tor's patch.
196
197 1999-10-19  Tor Lillqvist  <tml@iki.fi>
198
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.
203
204 1999-10-18  Tor Lillqvist  <tml@iki.fi>
205
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.
210
211 1999-10-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
212
213         * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
214         specified library is not just a basename.
215
216 1999-10-10  Gary V. Vaughan  <gary@gnu.org>
217
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.
226
227 1999-10-07  Gary V. Vaughan  <gary@gnu.org>
228
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.
235
236 1999-10-06  Gary V. Vaughan  <gary@gnu.org>
237
238         * NEWS: updtaed.
239         * ltconfig.in: Accept osf5.
240         Reported by Sascha Schumann <sascha@schumann.cx>
241
242 1999-10-04  Gary V. Vaughan  <gary@gnu.org>
243
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.
248
249         * ltmain.in (-no-fast-install):  Wrapper script used to add the
250         exeext on again when naming the wrapped executable.
251
252 1999-10-03  Gary V. Vaughan  <gary@gnu.org>
253
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.
264
265 1999-10-03  Thomas Tanner  <tanner@ffii.org>
266
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
276
277 1999-10-03  Olly Betts <olly@muscat.co.uk>
278
279         * ltmain.in: always create output_objdir
280
281 1999-10-03  Pavel Roskin  <pavel_roskin@geocities.com>
282
283         * libltdl/Makefile.am: don't preserve file attributes when
284           installing the libltdl sources
285
286 1999-10-01  Gary V. Vaughan  <gary@gnu.org>
287
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.
291
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.
298
299 1999-09-30  Donald Anderson  <dda@world.std.com>
300
301         * ltconfig.in (sco3.2v5): use pass_all deplibs_check_method
302         for SCO3.2.
303
304 1999-09-29  Gary V. Vaughan  <gary@gnu.org>
305
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!
310
311 1999-09-29  Vadim  <vadim@olly.ru>
312
313         * ltconfig.in (sysv):  More UW7 support.
314
315 1999-09-28  Albert Cheng  <acheng@ncsa.uiuc.edu>
316
317         * ltmain.in (shlibpath_var): ensure the variable is non-empty before
318         exporting it.
319
320 1999-09-27  Manfred Weichel  <weichel@global.nacamar.de>
321
322         * ltconfig.in (sysv5): Added support required for shared
323         library linking on SCO UW7.
324
325 1999-09-22  Gary V. Vaughan  <gary@gnu.org>
326
327         * ltconfig.in (whole-archive-flag-spec): test whether the
328         version of GNU ld being used understands --whole-archive
329         before using it.
330
331 1999-09-19  Thomas Tanner  <tanner@ffii.org>
332
333         * ltmain.in: don't ignore convenience libraries for objects/archives
334           (temporary hack)
335
336 1999-09-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
337
338         * ltconfig.in (CDPATH): Set to `:' instead of empty.
339         * ltmain.in (CDPATH): Likewise.
340         Reported by Greg McGary <gkm@eng.ascend.com>
341
342 1999-08-24  Gary V. Vaughan  <gary@gnu.org>
343
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.
347
348 1999-08-24  Thomas Tanner  <tanner@ffii.org>
349
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
358
359 1999-08-24  Boyd Gerber  <gerberb@zenez.com>
360
361         * ltconfig.in: add support for UnixWare 7.X.X
362         * doc/PLATFORMS: add new platforms
363
364 1999-08-24  Pavel Roskin  <pavel_roskin@geocities.com>
365
366         * doc/libtool.texi: document use of noinst_LTLIBRARIES for
367           convenience libraries
368
369         * ltconfig.in: check for freebsdelf3, not just freebsd3.
370         Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1
371
372         * ltmain.in: enable workaround for freebsdelf3.0
373
374 1999-08-24  Bert Driehuis  <bert_driehuis@nl.compuware.com>
375
376         * ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
377
378 1999-08-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
379
380         * libltdl/COPYING.LIB: Update to version 2.1.
381         * libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.
382
383 1999-08-03  Gary V. Vaughan  <gary@gnu.org>
384
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>
389
390 1999-08-02  Olly Betts  <olly@muscat.co.uk>
391
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.
398
399         * libtool.m4 (AC_PROG_LD): strip carriage returns from the
400         output of gcc -print-prog-name=ld.
401         * ltconfig.in: ditto.
402
403 1999-07-30  Pavel Roskin  <pavel_roskin@geocities.com>
404
405         * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
406         initialised structures are sometimes emitted in the code section.
407
408 1999-07-30  Mumit Khan  <khan@xraylith.wisc.edu>
409
410         * ltconfig.in:  Read line at a time to avoid tokenisation by
411         shell.
412
413 1999-07-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
414
415         * ltmain.in: Fix creation of relative links to object files in
416         sub-dirs.
417
418 1999-07-29  Olly Betts  <olly@muscat.co.uk>
419
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.
423
424 1999-07-26  Olly Betts  <olly@muscat.co.uk>
425
426         * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops.  Fix some
427         typos made by Evil Gary while (mis)applying my patch :-).
428
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.
432
433 1999-07-24  Erez Zadok  <ezk@cs.columbia.edu>
434
435         * doc/PLATFORMS (i*86-*openbsd2.5):  New platform.
436         Slight reordering of other bsd entries.
437
438 1999-07-24  Olly Betts  <olly@muscat.co.uk>
439
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.
451
452 1999-07-24  Bert Driehuis <bert_driehuis@compuware.com>
453
454         * ltconfig.in:  Updated bsdi4 soname specs to be more like
455         linux as discussed on the bsdi mailing list.
456
457 1999-07-20  Gary V. Vaughan  <gary@gnu.org>
458
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.
471
472 1999-07-19  Erez Zadok  <ezk@cs.columbia.edu>
473
474         * doc/PLATFORMS: Updated mostly *bsd platforms.
475
476 1999-07-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
477
478         * doc/libtool.texi (Porting inter-library dependencies): Typos
479         Reported by Petter Reinholdtsen <pere@hungry.com>
480
481 1999-07-17  Thomas Tanner  <tanner@ffii.org>
482
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
496
497 1999-07-09  Olly Betts  <olly@muscat.co.uk>
498
499         * doc/libtool.texi (C++ Libraries):  fixed a typo.
500
501 1999-07-06  Gary V. Vaughan  <gary@gnu.org>
502
503         * README-alpha:  improved the release instructions to mention
504         actual list addresses for announcements, and urls for upload
505         locations.
506
507 1999-07-03  Thomas Tanner  <tanner@ffii.org>
508
509         * doc/PLATFORMS: 1.3b passes all tests on cygwin
510
511 1999-07-03  Pavel Roskin <pavel_roskin@geocities.com>
512
513         * ltconfig.in: finish_cmds for FreeBSD removed
514         * depdemo/l3/Makefile.am: install libl3.la into an extra directory
515
516 1999-07-02  Gary V. Vaughan  <gary@gnu.org>
517
518         * configure.in: bumped version to 1.3c.
519
520         GNU libtool 1.3b was released.
521
522         * NEWS: inserted todays date.
523
524 1999-07-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
525
526         * doc/PLATFORMS: Tested on as many platforms as possible for me.
527
528 1999-07-01  Thomas Tanner  <tanner@ffii.org>
529
530         * NEWS: updated
531         * doc/PLATFORMS: updated
532         * changed my email address
533
534 1999-06-30  Thomas Tanner  <tanner@ffii.org>
535
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
539
540 1999-06-29  Thomas Tanner  <tanner@ffii.org>
541
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
561
562 1999-06-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
563
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>
567
568 1999-06-29  Pavel Roskin <pavel_roskin@geocities.com>, Alexandre Oliva  <oliva@dcc.unicamp.br>
569
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.
572
573 1999-06-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
574
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.
578
579 1999-06-23  Thomas Tanner  <tanner@ffii.org>
580
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)
586
587 1999-06-23  Stephan Kulow <coolo@itm.mu-luebeck.de>
588
589         * libltdl/ltdl.c (strrchr): fixed typo (missing star)
590         * libltdl/ltdl.c (trim): use `const' to silence -Wwrite-strings
591
592 1999-06-23  Olly Betts  <olly@muscat.co.uk>
593
594         * ltmain.in (ltdll.c): Support for crosscompiling from linux to
595         mingw32.
596
597 1999-06-23  Gary V. Vaughan  <gary@gnu.org>
598
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.
606
607 1999-06-20  Gary V. Vaughan  <gary@gnu.org>
608
609         * ltconfig.in:  moved the test for NM after the test for
610         no_builtin_flag.
611
612 1999-06-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
613
614         * ltconfig.in: Use sed '$q' instead of sed "" for copying ltmain,
615         just in case some sed does not support an empty command.
616
617         * ltconfig.in (link_static_flag, ac_cv_prog_cc_static): Use the
618         latter in the test.
619
620 1999-06-18  Thomas Tanner  <tanner@ffii.org>
621
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
629
630 1999-06-18  Teun Burgers  <burgers@ecn.nl>
631
632         * ltconfig.in: CR/LF fix for broken DJGPP bash
633         * ltmain.in: CR/LF fix for DJGPP
634
635 1999-06-18  Gary V. Vaughan  <gary@gnu.org>
636
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.
640
641 1999-06-16  Gary V. Vaughan  <gary@gnu.org>
642
643         * libltdl/configure.in (ac_cv_lib_dl_dlopen): missing "x" in test
644         comparison corrected.
645
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.
654
655 1999-06-15  Gary V. Vaughan  <gary@gnu.org>
656
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.
661
662 1999-06-14 Thomas Tanner  <tanner@ffii.org>
663
664         * ltconfig.in: use eval when setting have_dlfcn_h, reformatting
665
666 1999-06-12 Thomas Tanner  <tanner@ffii.org>
667
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)
673
674 1999-06-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
675
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.
679
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>
685
686 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
687
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>
694
695 1999-06-09  Pavel Roskin  <pavel_roskin@geocities.com>
696
697         * ltconfig.in (exeext): Use quotes in the test, to prevent a
698         failure in sh.test.
699
700 1999-06-09  Gary V. Vaughan  <gary@gnu.org>
701
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
708
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.
713
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.
718
719 1999-06-08  Gary V. Vaughan  <gary@gnu.org>
720
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.
724
725         * ltconfig.in (objext): Accept, in order of decreasing preference:
726         the cached value; the result of a test object compilation.
727
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.
731
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.
740
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.
745
746         * ltconfig.in (cygwin, need_version): Set to no, otherwise module
747         dll's end up with mighty long names!
748
749 1999-06-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
750
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>.
755
756 1999-06-05  Mark Kettenis  <kettenis@gnu.org>
757
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.
762
763 1999-06-02 Nick Rasmussen <nick@jive.org>
764
765         * ltmain.in (link): use "$nonopt" as the compiler for
766           compile/finalize_command
767
768 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
769
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.
774
775 1999-05-27  Pavel Roskin  <pavel_roskin@geocities.com>
776
777         * ltconfig.in (GNU Hurd, deplibs_check_method): Use pass_all.
778
779 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>, Olly Betts  <olly@muscat.co.uk>
780
781         * ltmain.in: Expand convenience libraries when creating reloadable
782         objects.
783         * NEWS: Ditto.
784
785 1999-05-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
786
787         * NEWS: Mention the two bugfixes below.
788
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.
793
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>
800
801 1999-05-27  David Jones  <jones@mosaid.com>
802
803         * libltdl/ltdl.c (LTDL_BIND_FLAGS): Remove BIND_VERBOSE, to avoid
804         printing error messages.
805
806 1999-05-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
807
808         GNU libtool 1.3.2 was released.
809
810 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
811
812         * NEWS: List fixed problems.
813         * doc/PLATFORMS: Tested for 1.3.2.
814
815         * config.guess: Synch with GNU common.
816
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.
820
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>
826
827 1999-05-25  Frank Ch. Eigler <fche@cygnus.com>
828
829         * ltmain.in: file_magic check would not avoid cyclic links.
830
831 1999-05-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
832
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.
835
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>
839
840 1999-05-24 Thomas Tanner  <tanner@ffii.org>
841
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"
849
850 1999-05-23  Alexandre Oliva  <oliva@dcc.unicamp.br>
851
852         * doc/PLATFORMS: Release 1.3.1 passes on GNU Hurd/x86.
853         Reported by Pavel Roskin <pavel_roskin@geocities.com>
854
855 1999-05-23 Thomas Tanner  <tanner@ffii.org>
856
857         * ltmain.in: strip off the .exe suffix only on *Win
858           (Reported by Matthew D. Langston <langston@SLAC.Stanford.EDU>)
859
860 1999-05-22 Thomas Tanner  <tanner@ffii.org>
861
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
872
873 1999-05-22  Gary V. Vaughan  <gary@gnu.org>
874
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.
880
881 1999-05-22  Doug Evans  <devans@casey.cygnus.com>
882
883         * libltdl/configure.in (dlerror): Fix typo in dlopen found in -ldl
884         test.
885
886 1999-05-21  Pavel Roskin  <pavel_roskin@geocities.com>
887
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.
894
895 1999-05-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
896
897         * doc/PLATFORMS: Updated to 1.3.1 for all platforms I've got.
898         Added sparc-unknown-linux-gnu.
899
900 1999-05-21  Gary V. Vaughan  <gary@gnu.org>
901
902         * demo/foo.h: s/PARAMS/LTDL_PARAMS/g
903         * libltdl/ltdl.h: ditto.
904         * libltdl/ltdl.c: ditto.
905
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>
910
911 1999-05-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
912
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.
922
923 1999-05-20 Thomas Tanner  <tanner@gmx.de>
924
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
933
934 1999-05-19  Gary V. Vaughan  <gary@gnu.org>
935
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.
939
940 1999-05-18  Gary V. Vaughan  <gary@gnu.org>
941
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.
945
946 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
947
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>
952
953 1999-05-17  Jiro Takabatake  <jiro@din.or.jp>
954
955         * ltconfig.in: port to NEC UX/4800.
956         * NEWS: updated.
957
958 1999-05-17  Gary V. Vaughan  <gary@gnu.org>
959
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>
963
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>
967
968         * demo/foo.h: Don't set any declspecs until we have full dll
969         support.
970
971 1999-05-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
972
973         * ltconfig.in (solaris2.6, whole_archive_flag_spec): Do not use
974         -Wl for allextract.
975
976 1999-05-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
977
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.
985
986 1999-05-09  Gary V. Vaughan  <gary@gnu.org>
987
988         * TODO: updated.
989
990 1999-05-06  Gary V. Vaughan  <gary@gnu.org>
991
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>
995
996 1999-04-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
997
998         * libtool.m4: Use ifelse instead of if.
999         Reported by David Mazieres <dm@amsterdam.lcs.mit.edu>
1000
1001 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
1002
1003         GNU Libtool 1.3 was released.
1004
1005         * NEWS: Summarize news from 1.2 to 1.3.
1006
1007         * ltmain.in: Save exit status of link_command before removing
1008         symbol table object file.
1009
1010 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
1011
1012         * doc/PLATFORMS: updated my hpux-10.20 and cygwin box entries.
1013
1014 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
1015
1016         * NEWS: Improved support for DU and IRIX too.
1017
1018         * config.sub, config.guess: Updated from GNU common.
1019
1020         * mdemo/configure.in: Move AC_LIBLTDL_CONVENIENCE before
1021         AM_PROG_LIBTOOL, as suggested by autoconf.
1022
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.
1026
1027         * doc/libtool.texi: Clear up overfull hbox.
1028
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.
1034
1035 1999-04-29  Gary V. Vaughan  <gary@gnu.org>
1036
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.
1040
1041 1999-04-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
1042
1043         * ltmain.in (nlist, SYMFILE): Use outputname instead of output for
1044         names within output_objdir.
1045
1046 1999-04-28  Alexandre Oliva  <oliva@dcc.unicamp.br>
1047
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.
1056
1057 1999-04-28  Gary V. Vaughan  <gary@gnu.org>
1058
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.
1068
1069 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
1070
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.
1078
1079 1999-04-27 Thomas Tanner  <tanner@gmx.de>
1080
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)
1097
1098 1999-04-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
1099
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.
1104
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.
1108
1109 1999-04-27  Gary V. Vaughan  <gary@gnu.org>
1110
1111         * ltmain.in (old_archive_cmds): Ensure that there are always .o
1112         objects available before running old_archive_cmds.
1113
1114 1999-04-26  Erez Zadok  <ezk@cs.columbia.edu>
1115
1116         * doc/PLATFORMS: Updates for netbsd 1.3.3 and 1.4.
1117
1118 1999-04-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
1119
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>
1123
1124 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
1125
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.
1129
1130 1999-04-25  Frank Ch. Eigler  <fche@cygnus.com>
1131
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.
1135
1136         * ltconfig.in (cygwin*, deplibs_check_method): Accept
1137         "architecture: i386" as optional suffix, for it is printed on a
1138         separate line sometimes.
1139
1140         * ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C".
1141
1142         * ltmain.in (deplibs_check_method=file_magic): Redirect stderr to
1143         /dev/null, to suppress error messages from target objdump.
1144
1145 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
1146
1147         * ltconfig.in (irix*, soname_spec, library_names_spec): Missing
1148         dots before $versuffix and $major.
1149
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>
1153
1154         * ltconfig.in (beos*, allow_undefined_flag): Do not build shared
1155         libraries with undefined symbols.
1156
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>
1166
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.
1170
1171         * ltconfig.in (irix*, osf*, archive_cmds): Write so_locations
1172         within objdir.
1173
1174         * ltconfig.in (irix*, soname_spec): Append $major.
1175         (irix*, library_names_spec): Add new soname.
1176         Reported by David Kaelbling <drk@sgi.com>
1177
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.
1182
1183         * ltconfig.in (irix5*, need_lib_prefix, need_version): Set to no,
1184         by unifying with irix6*.
1185
1186         * ltconfig.in (irix*, osf*, deplibs_check_method): Use pass_all.
1187
1188         * ltconfig.in (old_LDFLAGS, old_LIBS): Save and write to comments
1189         in output file.
1190
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.
1195
1196 1999-04-25  Boyd Lynn Gerber  <gerberb@zenez.com>
1197
1198         * ltconfig.in (sco3.2v5*): Use LD_RUN_PATH for hard-coding.
1199
1200 1999-04-25  Pavel Roskin  <pavel_roskin@geocities.com>
1201
1202         * Makefile.am (uninstall-local): Remove installed libltdl tree.
1203
1204 1999-04-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
1205
1206         * demo/Makefile.am (hc-direct, hc-libflag, hc-libpath, hc-minusl):
1207         Added CFLAGS to link commands; SCO OSR needs it for -belf.
1208
1209         * TODO: -Wl and -Wc options.
1210
1211 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
1212
1213         * libltdl/ltdl.c: Remove trivial warnings.
1214
1215 1999-04-22  Frank Ch. Eigler  <fche@cygnus.com>
1216
1217         * ltconfig.in: Correct sed expression that extracts symbols
1218         from cygwin def files.  Ignore demangled C++ names, if any.
1219
1220 1999-04-12  John David Anglin  <dave.anglin@nrc.ca>
1221
1222         * libltdl/ltdl.c (shl_close): shl_t was correct here...
1223         (shl_sym): ... but we have to pass the handle by reference here.
1224
1225 1999-04-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
1226
1227         * doc/libtool.texi (Invoking ltconfig): Document environment
1228         variables used.
1229
1230         * doc/libtool.texi (Invoking ltconfig): Document --cache-file.
1231
1232         * doc/libtool.texi (Invoking ltconfig): Document
1233         --disable-fast-install, --enable-dlopen, --with-gnu-ld and
1234         --disable-lock.
1235
1236 1999-04-11 Thomas Tanner  <tanner@gmx.de>
1237
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
1246
1247 1999-04-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
1248
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>
1253
1254         * ltconfig.in (Usage): Removed --enable-dlopen-self.
1255         Reported by Pavel Roskin <pavel_roskin@geocities.com>
1256
1257         * ltconfig.in: Moved sysv4 before sysv4.*.
1258         (symcode): Brian's overrider is specific to sysv4, not sysv4*.
1259
1260 1999-04-09 Thomas Tanner  <tanner@gmx.de>
1261
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
1266
1267         * doc/libtool.texi: some cleanups in the libltdl documentation
1268
1269 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
1270
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>
1276
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.
1282
1283 1999-04-07 Thomas Tanner  <tanner@gmx.de>
1284
1285         * NEWS: support for moved libraries
1286         * libtool.m4: another DJGPP fix
1287
1288 1999-04-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
1289
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.
1293
1294         * doc/libtool.texi (Compile mode): Document potential problem and
1295         work-around for `-c -o dir/foo.lo'.
1296
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.
1304
1305 1999-04-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
1306
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.
1314
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.
1322
1323 1999-04-06 Thomas Tanner  <tanner@gmx.de>
1324
1325         * ltmain.in: added a missing line of the ILD patch
1326
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
1334
1335 1999-04-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
1336
1337         * ltconfig.in (netbsd*, GNU ld): Support a.out shared libraries
1338
1339         * Makefile.am (CVS): allow command-line overriding of cvs
1340
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.
1346
1347 1999-04-05 Thomas Tanner  <tanner@gmx.de>
1348
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
1354
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
1358
1359 1999-04-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
1360
1361         * ltconfig.in (sunos4*, GNU ld): -Bstatic is not enough for
1362         deplibs.test to work with GNU ld; -Bshareable is needed here.
1363
1364         * ltconfig.in (ld_shlibs, amigaos*): Disable shared libs with
1365         native ld too.
1366
1367         * ltconfig.in (sunos4*, GNU ld): Reordered.
1368
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.
1372
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
1378
1379 1999-04-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
1380
1381         * NEWS: improved support for AIX and HP/UX
1382
1383 1999-04-03 Thomas Tanner  <tanner@gmx.de>
1384
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...),
1389
1390 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
1391
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.
1396
1397         * ltmain.in (-L*): do not abort just because a directory specified
1398         with -L does not exist; just warn and discard it
1399
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
1404
1405         * ltconfig.in (archive_cmds, sunos4*): where we used -Bstatic, we
1406         should have been using -Bshareable
1407
1408         * demo/Makefile.am (CLEANFILES): clean EXTRA_* from deplibs-check
1409
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
1415
1416 1999-04-02  Erez Zadok  <ezk@cs.columbia.edu>
1417
1418         * doc/PLATFORMS: 1.2f ok on various versions of hpux cc
1419
1420 1999-04-02  Alexandre Oliva  <oliva@dcc.unicamp.br>
1421
1422         * ltconfig.in (link_all_deplibs): set to unknown by default
1423         * ltmain.in: test != no, not = yes
1424         * doc/libtool.texi: document unknown
1425
1426 1999-04-01 Thomas Tanner  <tanner@gmx.de>
1427
1428         * doc/libtool.texi: documented deplibs.test
1429
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
1442
1443 1999-03-31 Thomas Tanner  <tanner@gmx.de>
1444
1445         * ltmain.in: always link a library before its dependency libs
1446         * mdemo/Makefile.am: test -export-symbols-regex
1447
1448 1999-03-30 Thomas Tanner  <tanner@gmx.de>
1449
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
1468
1469 1999-03-30  Alexandre Oliva  <oliva@dcc.unicamp.br>
1470
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>
1474
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
1478
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
1483
1484 1999-03-29  Gary V. Vaughan  <gary@gnu.org>
1485
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.
1490
1491 1999-03-27 Thomas Tanner  <tanner@gmx.de>
1492
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,
1510
1511 1999-03-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
1512
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
1519
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
1525
1526 1999-03-25  Gary V. Vaughan  <gary@gnu.org>
1527
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.
1531
1532 1999-03-24 Thomas Tanner  <tanner@gmx.de>
1533
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
1545
1546 1999-03-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
1547
1548         * ltconfig.in (ld_shlibs, amigaos*): disable shared libraries
1549
1550 1999-03-23  Gary V. Vaughan  <gary@gnu.org>
1551
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.
1558
1559         * TODO (cygwin):  food for thought re: mutually dependant dlls.
1560
1561 1999-03-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
1562
1563         * tests/build-relink.test: if we relink and have hardcode_direct,
1564         removing an uninstalled library breaks an uninstalled program
1565
1566         * doc/libtool.texi: documented convenience libraries
1567         * TODO: removed entry about it
1568
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
1572
1573 1999-03-20 Thomas Tanner  <tanner@gmx.de>
1574
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
1588
1589 1999-03-19 Thomas Tanner  <tanner@gmx.de>
1590
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)
1609
1610 1999-03-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
1611
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
1627
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
1636
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.
1639
1640         * doc/libtool.texi: reorder tests to reflect execution order
1641
1642         * tests/noinst-link.test: new test
1643         * tests/Makefile.am (TESTS): added noinst-link.test
1644         * doc/libtool.texi: document it
1645
1646 1999-03-19  Gary V. Vaughan  <gary@gnu.org>
1647
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!!
1651
1652 1999-03-18  Thomas Tanner  <tanner@gmx.de>
1653
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.
1674
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.
1702
1703 1999-03-17  Gary V. Vaughan  <gary@gnu.org>
1704
1705         * doc/PLATFORMS: Thanks to Alexandres changes below, both my
1706         hp boxes pass the entire test suite.
1707
1708 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
1709
1710         * ltconfig.in (hpux*, hardcode_minus_L): should be no, we have +b
1711         (hpux*, hardcode_libdir_separator): set to colon
1712
1713 1999-03-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
1714
1715         * doc/PLATFORMS: egcs is gcc; updates from Erez Zadok
1716
1717 1999-03-16  Alexandre Oliva  <oliva@dcc.unicamp.br>
1718
1719         * ltmain.in (deplibs, beos*): don't append -lc
1720         Reported by Xavier Pianet <xavier@xingo.com>
1721
1722         * tests/build-relink.test (hardcode_action): when set to relink,
1723         skip the test with lt-hell
1724
1725         * Makefile.am (EXTRA_DIST): add mkstamp
1726         Reported by Xavier Pianet <xavier@xingo.com>
1727
1728         * Makefile.am (EXTRA_DIST): add ChangeLog.0
1729
1730 1999-03-16  Thomas Tanner  <tanner@gmx.de>
1731
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
1736
1737         * ltconfig.in: some cosmetical changes
1738         * ltmain.in: ditto
1739
1740 1999-03-15  Alexandre Oliva  <oliva@dcc.unicamp.br>
1741
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
1745
1746         * configure.in, libtool.spec: bump to 1.2f
1747         * doc/PLATFORMS: ditto
1748         * NEWS: libtool 1.2f released
1749
1750         * ltmain.in: silence ``unbug'' :-) detected by sh.test
1751
1752 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
1753
1754         * TODO: we now use full pathnames for `file'
1755
1756 1999-03-14  Thomas Tanner  <tanner@gmx.de>
1757
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)
1765
1766 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
1767
1768         * ltmain.in (deplibs_check_method=none): discard -L and -R
1769         switches when testing whether deplibs contains some library
1770
1771 1999-03-14  Erez Zadok  <ezk@cs.columbia.edu>
1772
1773         * config.sub: recognize hppa2.0w, yet to be installed at GNU
1774
1775         * config.guess: minor update for FreeBSD-elf, yet to be installed
1776         at GNU
1777
1778 1999-03-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
1779
1780         * ltconfig.in (bsdi4*, sys_lib_search_path_spec,
1781         sys_lib_dlsearch_path_spec): fix thinko in variable names; add
1782         standard directories
1783
1784         * ltmain.in (exclude_expsyms): exclude symbols before sorting,
1785         otherwise only the sorted list will have them excluded
1786
1787         * ltconfig.in (file_magic_cmd, file_magic_test_file, freebsd-elf*,
1788         bsdi4*): use full pathnames when possible
1789
1790         * Makefile.am (all-recursive): depend on ACINCLUDE_M4_LIST
1791         (all-local, check-local): remove, unused
1792
1793         * doc/PLATFORMS: updated platforms tested on 1.2f-pre; clean up;
1794         reorder; untabify
1795
1796         * config.guess, config.sub: updated from GNU common
1797
1798         * doc/libtool.texi: notes on thread-safety problems of
1799         libltdl/dlopen on GNU/Linux and FreeBSD
1800
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.
1804
1805 1999-03-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
1806
1807         * ltconfig.in (global_symbol_to_cdecl): was reset before trying
1808         `symprfx=_', rendering the test with `_' useless
1809
1810         * doc/libtool.texi (AM_PROG_LIBTOOL): eliminate overfull boxes
1811
1812         * doc/libtool.texi: complete dlopening/libltdl documentation
1813
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
1817
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
1822
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>
1830
1831         * tests/sh.test: look for `$Xsed' without `$echo "X...'
1832         * ltconfig.in, ltmain.in: fixed a few such occurrences
1833
1834         * ltmain.in (-static, -all-static): revert March 11's patch, I was
1835         barking up the wrong tree
1836
1837 1999-03-12  Thomas Tanner  <tanner@gmx.de>
1838
1839         * libltdl/ltdl.c: removed FILENAME_MAX since LTDL_FILENAME_MAX
1840           is sufficient and doesn't break HP/UX
1841
1842 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
1843
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
1855
1856         * ltmain.in (-static, -all-static): set dlopen_self to
1857         $dlopen_self_static regardless of link_static_flag or pic_flag
1858
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
1861
1862 1999-03-11  Thomas Tanner  <tanner@gmx.de>
1863
1864         * ltmain.in: when building a library it doesn't make
1865           sense to remove a relinked program ("lt-" prefix)
1866
1867 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
1868
1869         * mdemo/main.c (main, test_dl, test_dlself): propagate error
1870         conditions better, to avoid false positives
1871
1872         * */configure.in: AC_SUBST(LIBTOOL_DEPS)
1873         * */Makefile.am $(OBJECTS): depend on libtool
1874         (libtool): rebuild automatically
1875
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
1879
1880 1999-03-11  Thomas Tanner  <tanner@gmx.de>
1881
1882         * ltmain.in: delete the old output files (incl. the relinked binary)
1883           before linking.
1884
1885         * ltconfig.in: replaced `configure' with $progname and all
1886           line numbers with @LINENO@
1887
1888 1999-03-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
1889
1890         * libltdl/ltdl.c (strdup): cannot return str when it's NULL
1891         because of const correctness
1892
1893 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
1894
1895         * libltdl/ltdl.c (strdup): always use our own, because the
1896         standard strdup won't use lt_dlmalloc
1897
1898         * ltconfig.in (dlfcn.h): function definition may cause warnings;
1899         define variable instead
1900
1901         * ltmain.in: properly create an export file for a program,
1902         avoiding error messages about not finding it
1903
1904         * TODO: need to document AC_LIBLTDL_*; static self dlopening
1905         problem fixed
1906
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
1917
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.
1926
1927         * mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h
1928
1929         * configure.in: fix AC_OUTPUT_COMMANDS for ltconfig and ltmain.sh
1930         so that they work if srcdir is relative too
1931
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
1937
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.
1942
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
1952
1953         * tests/Makefile.am (TESTS): run demo-nofast before demo-shared
1954
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>
1958
1959 1999-03-10  Thomas Tanner  <tanner@gmx.de>
1960
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
1965
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)
1976
1977 1999-03-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
1978
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.
1982
1983 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
1984
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
1989
1990         * ltmain.in: $output_objdir/$objdir/ -> $output_objdir/lt-
1991
1992 1999-03-09  Thomas Tanner  <tanner@gmx.de>
1993
1994         * libltdl/ltdl.c (lt_dlopen): don't hardcode the length of the
1995           constant strings
1996
1997 1999-03-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
1998
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
2003
2004         * configure.in, Makefile.am, NEWS: install libltdl by default
2005
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@
2014
2015 1999-03-09  Gary V. Vaughan <gary@gnu.org>
2016
2017         * NEWS: updated.
2018
2019 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
2020
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
2025
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
2029
2030         * TODO: remember to fix this later
2031
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
2035
2036         * ltmain.in (hardcode_libdir_separator, compile_rpath,
2037         finalize_rpath): only substitute hardcode_libdir_flag_spec if
2038         hardcode_libdirs is non-empty
2039
2040         * libtool.m4 (AC_LIBTOOL_DLOPEN): do not depend on the existence
2041         of dlfcn.h nor on the definition of RTLD_LAZY
2042
2043         * tests/build-relink.test: hellT was renamed to lt-hell
2044
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.
2048
2049 1999-03-08  Thomas Tanner  <tanner@gmx.de>
2050
2051         * doc/libtool.texi (tests): documented demo-nofast.test and
2052           renamed cdemo* to demo*
2053
2054 1999-03-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
2055
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
2060
2061         * tests/build-relink.test: link broken libhello.la with at least
2062         one libtool object
2063
2064 1999-03-08  Thomas Tanner  <tanner@gmx.de>
2065
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
2078
2079 1999-03-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
2080
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
2085
2086         * ltmain.in (compile_command): append finalize search path to
2087         compile search path
2088
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
2093
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
2097
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
2103
2104         * ltconfig.in (enable_fast_install): test whether it can be forced
2105         off after shlibpath_overrides_runpath and enable_shared are set
2106
2107 1999-03-07  Thomas Tanner  <tanner@gmx.de>
2108
2109         * TODO: updated
2110         * NEWS: updated
2111
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
2122
2123 1999-03-06  Alexandre Oliva  <oliva@dcc.unicamp.br>
2124
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>
2129
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>
2133
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.
2137
2138 1999-02-26  Gary V. Vaughan  <gary@gnu.org>
2139
2140         * libtool.m4 (cygwin): s/\\(mingw\\|cygwin\\)32/\\1/g.  Must've
2141         missed this file when I changed to cygnus' new sanction name.
2142
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.
2147
2148 1999-02-25  Thomas Tanner  <tanner@gmx.de>
2149
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)
2154
2155 1999-02-24  Alexandre Oliva  <oliva@dcc.unicamp.br>
2156
2157         * ltmain.in (file_magic_regex): sed `10q' is faster than `11,$d'
2158
2159 1999-02-22  Thomas Tanner  <tanner@gmx.de>
2160
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
2165
2166 1999-02-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
2167
2168         * ltmain.in: added missing mkdir $progdir for on-demand executable
2169
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.
2181
2182         * TODO: removed ILD, soon to be merged, and added convenience
2183         libraries docs
2184
2185         * ltconfig.in (irix5*, irix6*, shlibpath_overides_runpath): yes
2186
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
2191
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>
2196
2197         * ltmain.in: fix typos in my last change (s/ocmpile/compile/)
2198
2199 1999-02-21  Thomas Tanner  <tanner@gmx.de>
2200
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
2208
2209 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2210
2211         * ltmain.in: avoid duplication of -L switches, it sometimes breaks
2212         IRIX 5.2's linker
2213
2214         * ltconfig.in (freebsd*, finish_cmds): expand objformat here
2215         Reported by Vladimir Kushnir <kushn@mail.kar.net>
2216
2217 1999-02-20  Vladimir Kushnir <kushn@mail.kar.net>
2218
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
2222
2223 1999-02-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2224
2225         * doc/libtool.texi: remove ticks from menu items; it breaks TeX
2226         Reported by Erez Zadok <ezk@cs.columbia.edu>
2227
2228         * ltmain.in: fixes for export-symbols dry-run
2229
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
2238
2239         * doc/libtool.texi: document it
2240
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.
2250
2251 1999-02-20  Archie Cobbs  <archie@whistle.com>
2252
2253         * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
2254         where appropriate, when dlopening a non-libtool library
2255
2256 1999-02-19  Gary V. Vaughan  <gary@gnu.org>
2257
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.
2275
2276 1999-02-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
2277
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
2282
2283         * ltconfig.in (openbsd*, netbsd*, library_names_spec): append
2284         alternate name without ${release}, otherwise build fails when
2285         -release is used
2286
2287 1999-02-18  Gary V. Vaughan  <gary@gnu.org>
2288
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.
2297
2298         * ltmain.in (version_type):  Oops.  Irix versioning implies that
2299         major version numbers are 1 based (not zero based).  Fixed.
2300
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.
2304
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...
2309
2310 1999-02-18  Thomas Tanner  <tanner@gmx.de>
2311
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
2323
2324 1999-02-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
2325
2326         * ltconfig.in: (freebsd2*, sunos4*, exclude_expsyms): exclude
2327         _GLOBAL_OFFSET_TABLE_
2328         * ltmain.in: implement exclude_expsyms with egrep
2329
2330         * libltdl/ltdl.c (lt_dlmalloc, lt_dlfree): SunOS' cc can't cope
2331         with argument lists, we __P even in the definition
2332
2333 1999-02-15  Thomas Tanner  <tanner@gmx.de>
2334
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)
2351
2352 1999-02-15  Gary V. Vaughan  <gary@gnu.org>
2353
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.
2359
2360 1999-02-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
2361
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)
2367
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
2371
2372 1999-02-13  Thomas Tanner  <tanner@gmx.de>
2373
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
2389
2390 1999-02-12  Gary V. Vaughan  <gary@gnu.org>
2391
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.
2395
2396 1999-02-12  Alexandre Oliva  <oliva@dcc.unicamp.br>
2397
2398         * ltmain.in: don't try to read objdir/libname.la before it is
2399         created!
2400
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>
2404
2405         * libltdl/ltdl.c (tryall_dlopen): strcmp filenames was reversed
2406
2407 1999-02-11  Thomas Tanner  <tanner@gmx.de>
2408
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
2426
2427 1999-02-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
2428
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
2435
2436 1999-02-08  Alexandre Oliva  <oliva@dcc.unicamp.br>
2437
2438         * ltconfig.in (irix5*, irix6*, deplibs_check_method): use
2439         file_magic for inter-library dependency tracking
2440
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.
2445
2446         * ltconfig.in (irix5*, library_names_spec): add soname_spec,
2447         otherwise we can't dlopen
2448
2449 1999-02-08  Thomas Tanner  <tanner@gmx.de>
2450
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
2455
2456 1999-02-04  Alexandre Oliva  <oliva@dcc.unicamp.br>
2457
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='
2468
2469         * libltdl/ltdl.c (find_module): initialize filename if dir is NULL
2470         Reported by Godmar Back <gback@cs.utah.edu>
2471
2472 1999-02-04  Godmar Back  <gback@cs.utah.edu>
2473
2474         * libltdl/ltdl.c (lt_dlopenext): missing space for terminator when
2475         allocating memory for shlib_ext
2476
2477 1999-02-03  Alexandre Oliva  <oliva@dcc.unicamp.br>
2478
2479         * libltdl/ltdl.c (lt_dlopenext): tmp would be trashed if shlib_ext
2480         was longer than 3 characters
2481
2482 1999-02-02  Gary V. Vaughan  <gary@gnu.org>
2483
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
2487
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.
2493
2494 1999-01-28  Gary V. Vaughan  <gary@gnu.org>
2495
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>
2505
2506 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
2507
2508         * libtoolize.in: search for A[MC]_PROG_LIBTOOL, not
2509         AM_PROG_LIBTOOL
2510         Reported by Jeff Garzik <jgarzik@pobox.com>
2511
2512 1999-01-27  Gary V. Vaughan  <gary@gnu.org>
2513
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."
2522
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>
2527
2528 1999-01-27  Alexandre Oliva  <oliva@dcc.unicamp.br>
2529
2530         * libltdl/ltdl.c (find_file): fix endless loop condition
2531         (find_module): filename allocation was off by 1
2532
2533         * libltdl/Makefile.am (distclean-local): renamed from
2534         distclean-hook, that didn't work
2535
2536         * libltdl/ltdl.c (lt_dlopen, non-.la): find_file now returns 0 on
2537         failure
2538
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
2542
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
2553
2554         * libltdl/ltdl.c (find_file): oops, filenamesize was miscomputed
2555
2556         * libltdl/ltdl.c (find_file): allocate filename dynamically
2557
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
2563
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
2572
2573         * configure.in (pkgdatadir): expand ${PACKAGE} at configure-time,
2574         just like automake does
2575
2576         * configure.in (pkgdatadir): define pkgdatadir explicitly, and
2577         comment that automake does not need it, but libtoolize does
2578
2579         * Makefile.am (aclocaldir): do not set it explicitly, automake
2580         does already
2581
2582         * configure.in (TIMESTAMP): use mkstamp here too
2583
2584 1999-01-27  Thomas Tanner  <tanner@gmx.de>
2585
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)
2602
2603 1999-01-26  Alexandre Oliva  <oliva@dcc.unicamp.br>
2604
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
2610
2611         * ltconfig.in (LTCONFIG_VERSION): add TIMESTAMP, remove
2612         explicit quotes and add it to the list of variables to quote
2613
2614         * ltmain.in: reworded `dropped inter-library dependencies'
2615         message, and added a warning about inter-library dependencies even
2616         for non-module builds
2617
2618 1999-01-26  Gary V. Vaughan  <gary@gnu.org>
2619
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.
2624
2625         * configure.in:  It seems Alexandre accidentally removed the
2626         AC_SUBST(pkgdatadir) line recently which breaks libtoolize.
2627         Reverted that small change.
2628
2629 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
2630
2631         * libltdl/ltdl.c (find_module): test old_name and dlname for NULL,
2632         not len==0
2633
2634         * libltdl/configure.in (libltdl_cv_objdir): yes, appending the "/"
2635         in configure.in was much simpler
2636         * libltdl/ltdl.c (objdir): ditto
2637
2638         * libltdl/ltdl.c (objdir): string collation isn't portable; strcat
2639         "/" explicitly.  Or should this be moved to configure.in?
2640
2641 1999-01-25  Thomas Tanner  <tanner@gmx.de>
2642
2643         * libltdl/ltdl.c: allocate the variables in lt_dlopen() dynamically
2644
2645 1999-01-25  Alexandre Oliva  <oliva@dcc.unicamp.br>
2646
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>
2655
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
2660
2661         * ltconfig.in (freebsd2.2*, hardcode_minus_L): for FreeBSD 2.2.6,
2662         this must be `no'
2663
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
2670
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...
2674
2675         * ltmain.in (pass_all=none, droppeddeps): set only if deplibs was
2676         non-empty
2677
2678 1999-01-24  Thomas Tanner  <tanner@gmx.de>
2679
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
2685
2686 1999-01-24  Thomas Tanner  <tanner@gmx.de>
2687
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
2706
2707 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
2708
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
2713
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>
2718
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 `$'
2722
2723 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
2724
2725         * configure.in (date): echo the version number during
2726         configuration, and show $date for cvs versions.
2727
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.
2734
2735 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
2736
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
2745
2746 1999-01-22  Gary V. Vaughan  <gary@gnu.org>
2747
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.
2754
2755 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
2756
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>
2761
2762 1999-01-22  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
2763
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
2768
2769 1999-01-22  Alexandre Oliva  <oliva@dcc.unicamp.br>
2770
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
2775
2776         * demo/configure.in, demo/Makefile.am (DLPREOPEN): reverted; it
2777         didn't make any difference.
2778
2779 1999-01-21  Gary V. Vaughan  <gary@gnu.org>
2780
2781         * THANKS: Added Chris Laas <golem@MIT.EDU>
2782
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.
2787
2788 1999-01-21  Alexandre Oliva  <oliva@dcc.unicamp.br>
2789
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
2797
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         :-(
2801
2802         * ltconfig.in (linux-gnu*, finish_cmds): remove erroneous backslash
2803
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
2809
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
2819
2820 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2821
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
2825
2826 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
2827
2828         * ltconfig.in (aix4*, with_gcc, archive_cmds): fix typo in Andrey
2829         Slepuhin's last patch
2830
2831 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2832
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
2837
2838 1999-01-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2839
2840         * ltconfig.in: No known version of Solaris 2 hardcoded -L paths.
2841
2842 1999-01-20  Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
2843
2844         * ltmain.in: s/n\'t/ not/
2845         * doc/PLATFORMS: updates for sunos4/m68k and aix
2846
2847 1999-01-20  Andrey Slepuhin  <pooh@msu.ru>
2848
2849         * ltconfig.in (aix4*): check for reworked collect2, always pass
2850         -bnoentry option to linker when building a shared library
2851
2852 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2853
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>
2857
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
2862
2863         * THANKS: Added Steven Schultz
2864
2865 1999-01-20  Steven M. Schultz <sms@wlv.iipo.gtegsc.com>
2866
2867         * ltconfig.in (bsdi4*, check_shared_deplibs_method): file_magic
2868         (bsdi4*, sys_lib_search_path): add /shlib and other dirs
2869
2870 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2871
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
2875
2876         * ltmain.in (dlsyms): #define const to nothing if not __STDC__
2877
2878         * ltconfig.in (global_symbol_pipe): #define const to nothing if
2879         not __STDC__
2880
2881         * demo/dlmain.c (main): cast s->address to the appropriate pointer
2882         types, otherwise StunOS4's cc refuses to compile it
2883
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
2887
2888         * demo/dlmain.c (main): add missing const to declaration of name
2889
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
2894
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))
2902
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
2906
2907         * mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove
2908
2909 1999-01-20  Gary V. Vaughan  <gary@gnu.org>
2910
2911         * TODO: Added inter-library deps for ltlibs.
2912
2913         * THANKS: Added Vladimir Kushnir.
2914
2915 1999-01-20  Vladimir Kushnir  <kushn@mail.kar.net>
2916
2917         * ltconfig.in (freebsd3*): Define `deplibs_check_method' and
2918         `file_magic_command' for freebsd-elf.
2919
2920 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2921
2922         * TODO: should we also build a `static' copy of a convenience
2923         library out of .o files?
2924
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*)
2928
2929         * THANKS: added Manfred Weichel
2930
2931 1999-01-20  Manfred Weichel  <Manfred.Weichel@pdb.siemens.de>
2932
2933         * ltconfig.in (sysv5*): same as sysv4.3*
2934
2935 1999-01-20  Alexandre Oliva  <oliva@dcc.unicamp.br>
2936
2937         * libltdl/ltdl.c (lt_dlopen): properly detect error condition when
2938         full pathname of non-libtool library is provided
2939
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...
2946
2947         * libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to
2948         declare lt_preloaded_symbols
2949         * doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto
2950
2951         * ltmain.in (dlpredeps): removed, reverting 1999-01-17's change
2952
2953 1999-01-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
2954
2955         * libltdl/Makefile.am (Makefile): depend on libtool
2956
2957         * ltmain.in (lt_preloaded_setup): function added to symbol list
2958         source file to work around FreeBSD problem
2959
2960         * Makefile.am (check-local): depend on libltdl/Makefile
2961
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
2965
2966 1999-01-19  Gary V. Vaughan  <gary@gnu.org>
2967
2968         From Andrey Slepuhin <pooh@msu.ru>
2969         * ltmain.in (hardcode_action) Oops, misapplied the patch!
2970
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.
2975
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.
2979
2980 1999-01-18  Alexandre Oliva  <oliva@dcc.unicamp.br>
2981
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
2986
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>
2992
2993 1999-01-17  Thomas Tanner  <tanner@gmx.de>
2994
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()
3041
3042 1999-01-17  Alexandre Oliva  <oliva@dcc.unicamp.br>
3043
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}'
3047
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
3051
3052         * ltmain.in (dlpredeps): append dependencies from dlopened modules
3053         (but not dlpreopened ones) after all explicitly linked libraries
3054
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
3067
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
3075
3076 1999-01-15  Gary V. Vaughan  <gary@gnu.org>
3077
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.
3081
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>.
3088
3089 1999-01-15  Thomas Tanner  <tanner@gmx.de>
3090
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)
3094
3095 1999-01-14  Thomas Tanner  <tanner@gmx.de>
3096
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
3104
3105 1999-01-14  Alexandre Oliva  <oliva@dcc.unicamp.br>
3106
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
3111
3112 1999-01-14  Thomas Tanner  <tanner@gmx.de>
3113
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
3122
3123 1999-01-14  Gary V. Vaughan  <gary@gnu.org>
3124
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>
3131
3132         * cdemo/README: typo: mdemo->cdemo
3133
3134 1999-01-14  Thomas Tanner  <tanner@gmx.de>
3135
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
3154
3155 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
3156
3157         * mdemo/Makefile.am (../libltdl/libtool): mkdir and configure
3158         ../libltdl
3159
3160 1999-01-13  Thomas Tanner  <tanner@gmx.de>
3161
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
3184
3185 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
3186
3187         * doc/libtool.texi (Test descriptions): cdemo-static works, thanks
3188         to Edouard Parmelan!
3189
3190         * THANKS: added Sebastian Wilhelmi
3191
3192         * ltconfig.in (solaris): define `need_version' to no
3193
3194 1999-01-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3195
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).
3202
3203 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
3204
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
3213
3214 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
3215
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.
3226
3227         * ltmain.in (old_archives, oldobjs): use find to SYMDEF here too
3228
3229         * Makefile.am (@DIST_MAKEFILE_LIST@): `$' must be doubled
3230
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>
3251
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.
3256
3257         * THANKS: added Raffaele Sena
3258
3259 1999-01-13  Raffaele Sena  <raff@aromatic.com>
3260
3261         * libltdl/ltdl.c: replaced RTDL with RTLD
3262
3263 1999-01-13  Manish Singh  <yosh@gimp.org>
3264
3265         * ltconfig.in (osf3*, osf4*, irix6*): include
3266         ${libname}{release}.so for library_names_spec
3267
3268 1999-01-13  Alexandre Oliva  <oliva@dcc.unicamp.br>
3269
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
3278
3279 1999-01-13  Edouard G. Parmelan  <Edouard.Parmelan@France.NCR.COM>
3280
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.
3288
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.
3292
3293 1999-01-12  Thomas Tanner  <tanner@gmx.de>
3294
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)
3306
3307 1999-01-12  Gary V. Vaughan  <gary@gnu.org>
3308
3309         * configure.in (ltdl-install): Fixed up the indentation so that
3310         `configure --help' is pretty again.
3311
3312 1999-01-11  Alexandre Oliva  <oliva@dcc.unicamp.br>
3313
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
3320
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>
3324
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
3329
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
3332
3333         * libtool.m4 (AM_SYS_NM_PARSE): need for underscore prefix is now
3334         auto-detected, by trying first without, then with it.
3335
3336         * ltconfig.in: ditto
3337
3338 1999-01-10  Alexandre Oliva  <oliva@dcc.unicamp.br>
3339
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
3359
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.
3369
3370 1999-01-10  Thomas Tanner  <tanner@gmx.de>
3371
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
3381
3382 1999-01-09  Alexandre Oliva  <oliva@dcc.unicamp.br>
3383
3384         * libltdl/ltdl.c (lt_dlopen): missing strlen in bound test
3385
3386 1999-01-09  Thomas Tanner  <tanner@gmx.de>
3387
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()
3400
3401 1999-01-08  Gary V. Vaughan  <gary@gnu.org>
3402
3403         * doc/libtool.texi (old_archive_from_new_commands): Documented
3404         this ltcofig variable.
3405
3406 1999-01-07  Gary V. Vaughan  <gary@gnu.org>
3407
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.
3414
3415 1999-01-06  Thomas Tanner  <tanner@gmx.de>
3416
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
3421
3422 1999-01-06  Gary V. Vaughan  <gary@gnu.org>
3423
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.
3427
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.
3434
3435         * TODO: Added details of a Linux wrapper script bug.
3436         Reported by Jeff Garzik <jgarzik@pobox.com>.
3437
3438 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
3439
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
3443
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
3465
3466 1999-01-05  Thomas Tanner  <tanner@gmx.de>
3467
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
3475
3476 1999-01-05  Alexandre Oliva  <oliva@dcc.unicamp.br>
3477
3478         * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
3479         would lose for files with embedded blanks.
3480
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
3488
3489 1999-01-01  Thomas Tanner  <tanner@gmx.de>
3490
3491         * NEWS: new BeOS support
3492         * THANKS: added Joseph Beckenbach
3493         * libltdl/ltdl.h: use dllimport/export on Win32
3494
3495 Continued in ChangeLog.1998
3496 -- 
3497   Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
3498   2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
3499
3500   This file is part of GNU Libtool.
3501
3502 Copying and distribution of this file, with or without modification,
3503 are permitted in any medium without royalty provided the copyright
3504 notice and this notice are preserved.  This file is offered as-is,
3505 without warranty of any kind.