It helps to close quotes.
[libtool.git] / ChangeLog.1997
blobb4e735f8cb80a0858e7cae656cd6b708fa626a01
1 1997-12-19  Gordon Matzigkeit  <gord@profitpress.com>
3         * ltmain.in: Don't forget to quote the CDPATH substitution.  From
4         Tor Lillqvist.
6 1997-12-18  Gordon Matzigkeit  <gord@profitpress.com>
8         * ltconfig.in, ltmain.in (CDPATH): Unset this environment variable
9         so that HP-UX shells, at least, don't print out the directory name
10         after a `cd' command.  From Tor Lillqvist.
12 1997-12-10  Gordon Matzigkeit  <gord@gnu.org>
14         * demo/Makefile.am (hardcode): Change a bunch of references to
15         `$(LIBS)' to `-lm', since we no longer put -lm in LIBS.
17         * demo/configure.in: Delete the test for libm, since it is
18         standard on every system.
20         * demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm,
21         in accordance with new inter-library dependency code.
23         * ltmain.in (dependency_libs): Added to help people link programs
24         without having to explicitly specify inter-library dependencies.
26         * ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3
27         restriction to the generated libtool script.  Reported by Stefan
28         Westerfeld.
30 1997-12-05  Gordon Matzigkeit  <gord@gnu.org>
32         * ltconfig.in (thisdir): Quote $echo in the generated libtool
33         script for HP-UX.  From Markus F.X.J. Oberhumer.
35         * ltmain.in (link): Recognize the `.s' suffix.  From Markus
36         F.X.J. Oberhumer.
38         * ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX
39         because link_static_flag is never evaled.  From Eric Backus.
41         * tests/suffix.test (extensions): Recognize `.s'.  From Markus
42         F.X.J. Oberhumer.
44 1997-12-01  Gordon Matzigkeit  <gord@gnu.org>
46         * demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our
47         dependencies so that parallel builds work correctly.  From Jim
48         Meyering.
50         * Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite
51         these rules so that they are parallelizable.  Reported by Jim
52         Meyering.
54         * ltconfig.in (ltecho): We need special handling to quote the
55         `echo' variable itself.  From Alexandre Oliva.
57 1997-11-29  Gordon Matzigkeit  <gord@gnu.org>
59         * ltconfig.in (COLLECT_NAMES): Enable this workaround for a broken
60         collect2 only on AIX 3.  This avoids problems on other AIX
61         versions.  Reported by Stefan Westerfeld.
63         * ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds,
64         except it is a single command which is evaled, and not shown.
66         * ltconfig.in: Port to AmigaOS.  From Joop van de Wege.
68         * ltmain.in (echo): Delete preamble to check for a working echo,
69         since we just use the one included in the generated libtool.
71         * ltconfig.in (echo): Include this definition in the generated
72         libtool script.
74 1997-11-28  Gordon Matzigkeit  <gord@gnu.org>
76         * ltconfig.in, libtool.m4 (NM): Add /usr/ccs/bin to the PATH
77         before checking.  From Kaveh R. Ghazi.
78         (NM): Delete an extraneous egrep from ltconfig.
80         * ltconfig.in (finish_cmds): Change back to using `ldconfig -n'.
81         This makes Linux behave like other systems, which is more in line
82         with what libtool needs.
84 1997-11-27  Gordon Matzigkeit  <gord@gnu.org>
86         * ltmain.in: Change a whole bunch of `progname' variables to
87         `modename'.  This is for clarity, and to fix a tiny typo in finish
88         mode.
90         * libtool.spec (Name, Version): Ditto.
92         * configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate
93         the proper package name and version number.
95         * ltconfig.in (gnu_ld_acts_native): Treat GNU ld like the native
96         linker on SunOS 4.x.  Suggested by Alexandre Oliva.
97         (deplibs): Change the defaults all over, since most systems cannot
98         handle inter-library dependencies.
100         * libtool.m4, ltconfig.in (NM): Only look at the first line of the
101         output from NM when determining whether it supports a command line
102         option.  This prevents false positives on OSes which ignore
103         invalid flags, like HP-UX, which prints `nm: unknown option "B"
104         ignored'.  Reported by Kaveh R. Ghazi.
106         * ltconfig.in (finish_cmds): On Linux, update ld.so.cache by
107         removing the `-n' flag from ldconfig.  Suggested by Kenneth
108         Albanowski.
110         * Makefile.am (maintainer-checkin, maintainer-release): New
111         commands to reap the full benefit of using PRCS to maintain
112         libtool version numbers.
114         * ltconfig.in, ltmain.in (global_symbol_pipe): Explicitly cast all
115         addresses to __ptr_t.  This fixes a bug due to a strict IRIX
116         compiler.  Suggested by Kaveh R. Ghazi.
118 1997-11-23  Gordon Matzigkeit  <gord@gnu.org>
120         * ltmain.in (echo): For aesthetics, avoid using `$echo' when
121         `echo' will do *exactly* the same thing.  This prevents ugly
122         `printf %s\n timestamp > some.lo' commands from appearing in the
123         libtool output.
124         (link): Delete the `-allow-undefined' flag because it is now the
125         default.  Make `-no-undefined' in order for people to declare that
126         a library is entirely self-contained.  This prevents maintainers
127         from accidentally creating shared libraries that won't work on
128         AIX.  Reported by Stefan Westerfeld and Danny Backx.
130         * ltconfig.in (echo): Use an echo variable, just as in ltmain.in,
131         because we need it for quoting substitutions.  For most of the
132         script, though, use the default echo, just like Autoconf does.
133         Without this patch, character \001 ends up in global_symbol_pipe.
134         Reported by Lars Hecking and Jürgen Fluk.
136         * ltmain.in (echo): Set default to `echo=echo'.  Ooops.  That's
137         what you get for testing obscure code paths and forgetting to
138         revert to the original version.  Reported by Danny Backx.
140 1997-11-14  Gordon Matzigkeit  <gord@gnu.org>
142         * ltconfig.in (hardcode_libdir_flag_spec): Set to `-R' for FreeBSD
143         2.2.  From Sean Kelly.
144         (postuninstall_cmds, old_postuninstall_cmds): Commands to run
145         after uninstall mode deletes the libraries.  Suggested by Joop van
146         de Wege.
147         (export_dynamic_flag_spec): On HP-UX, add the `${wl}-E'
148         export_dynamic_flag_spec.  Reported by Matthias Hoelzer.
150 1997-11-11  Gordon Matzigkeit  <gord@gnu.org>
152         * ltconfig.in, ltmain.in (sed_quote_subst): Oops.  We forgot to
153         quote backticks.  Reported by Joop van de Wege.
155         * tests/quote.test: Add backticks to the backslashify test.
157 1997-11-09  Gordon Matzigkeit  <gord@gnu.org>
159         * ltconfig.in (symcode): On IRIX, don't extract undefined
160         symbols.  When a function is inlined by G++, references to it are
161         still marked as undefined in the object file.  This means that our
162         symbol file causes undefined references, because there are
163         actually no matching global symbols.  Reported by Paul Kendall.
165 1997-11-08  Gordon Matzigkeit  <gord@gnu.org>
167         * ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool
168         script fragment to the generated libtool, rather than to stdout.
170 1997-11-07  Gordon Matzigkeit  <gord@gnu.org>
172         * libtool.m4 (LD): Add a more sophisticated test to determine the
173         ABI flag on IRIX 6.  Suggested by Lars Hecking and Ian Lance
174         Taylor.
176         * ltconfig.in, ltmain.in (COLLECT_NAMES): Only export this
177         variable if we are running under AIX.  Otherwise, we tickle a g++
178         bug under IRIX.  From Paul Kendall.
180         * Change bug reporting address to <bug-libtool@gnu.org>.
182         * ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a
183         wildcard argument to `-expect_unresolved'.  From Stephan Kulow.
185 1997-11-06  Gordon Matzigkeit  <gord@gnu.org>
187         * ltmain.in (link): Use libname_spec.
189         * ltconfig.in (pic_flag): Somehow, the HP-UX pic_flag (`+Z') was
190         dropped between libtool-1.0 and now.  Add it back in.  Reported by
191         Akim Demaille.
192         Integrated more patches for OS/2.  From Jeff Freedman.
193         (libname_spec): New variable for OSes that don't require their
194         libraries to look like `libNAME.a'.
196         * ltmain.in (link): Only use global_symbol_pipe if it has been
197         defined.  From Stephan Kulow.
199         * ltconfig.in (global_symbol_pipe): Protect C fragment under C++
200         compilers.  From Stephan Kulow.
202         * Makefile.am ($(srcdir)/acinclude.m4,
203         $(srcdir)/demo/acinclude.m4): Change rules to use LN_S so that
204         they can be run on any system.
206         * ltconfig.in (archive_cmds): For NetBSD, don't include deplibs.
207         From Dieter Baron.
209         * ltmain.in (mkdir): Check that the directory doesn't exist before
210         we exit with error, so that we don't get races during parallel
211         builds.  From H.J. Lu.
212         (fbsd_hideous_sh_bug): Apparently, some FreeBSD /bin/sh's have a
213         bug that will empty base_compile unless we do this dummy
214         assignment.  From Marc van Kempen.
216 1997-10-22  Gordon Matzigkeit  <gord@gnu.org>
218         * libtool.m4 (libtool_shared, libtool_static): Fixed logic error
219         to reenable override of libtool's defaults by setting
220         enable_shared or enable_static in configure.in.  Reported by Tom
221         Tromey and Stephan Kulow.
223         * ltmain.in (link): Add explicit support for compiler options that
224         begin with `+'.  Reported by Aubert Pierre.
226 1997-10-20  Gordon Matzigkeit  <gord@gnu.org>
228         * ltmain.in: Silly me.  Change a bunch of occurances of "* $dir *"
229         into *" $dir "*.
231         * ltconfig.in (pic_flag): PIC is the default for AIX.  From Mark
232         Kettenis.  It is also the default for OSF/1.
234         * demo/Makefile.am (objdir): Quote double-quotes.  From Mark
235         Kettenis.
237         * ltconfig.in (global_symbol_pipe): This variable is not
238         double-evaled, so it should not be double quoted.  From Mark
239         Kettenis.
241 1997-10-19  Gordon Matzigkeit  <gord@gnu.org>
243         * ltconfig.in (LD): Same as below.
245         * libtool.m4 (LD): Set LD if we discover an absolute path to GNU
246         ld.  This prevents breakage when `$CC -print-prog-name=ld' returns
247         an absolute directory name.  Reported by Ulrich Drepper.
249         * ltconfig.in: Port to OS/2 using EMX.  From Jeff Freedman.
251         * ltmain.in (link): Use old_archive_from_new_cmds.
253         * ltconfig.in (old_archive_from_new_cmds): New variable to
254         support DLL libraries.
256         * ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is
257         not empty.  Reported by Stephan Kulow.
259 1997-10-18  Gordon Matzigkeit  <gord@gnu.org>
261         * ltconfig.in (objdir): Use the .libs directory on all systems for
262         which that name is valid, and _libs on the others (like MS-DOS).
263         Suggested by Juergen Erhard.
265 1997-10-14  Gordon Matzigkeit  <gord@gnu.org>
267         * ltmain.in (link): Added a bit more inter-language support to the
268         symbol file generation process.
269         Instead of complaining about unrecognized argument suffices, pass
270         them to the linker.  This prevents libtool from barfing on
271         mandatory arguments to linker flags.  Reported by Michael
272         Tiemann.
274 1997-10-09  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
276         * ltmain.in (link): Change the wrapper script to follow symlinks
277         in order to find thisdir.  This should put the final nail in the
278         coffin for problems with wrapper scripts.  From Ian Lance Taylor.
280 1997-10-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
282         * ltmain.in: Change a few `$echo' commands into `$show' to make
283         --silent mode behave as advertised.
285         * ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use
286         `-expect_unresolved \*'.  From Christian Mondrup.
288         * ltmain.in (install): Change install mode to allow a specified
289         /bin/sh argument at the beginning of the install_prog.  Also,
290         specify the shell to run when invoking libtool recursively for
291         finish mode.  From Chris Provenzano.
293         * libtool.m4 (LIBTOOL): Change definition to include $(SHELL).
294         From Chris Provenzano.
296         * ltconfig.in: Port to UTS 4.x.  From Alistair Crooks.
298         * demo/Makefile.am (hc-libflag): Add rules to make this binary for
299         hardcode.test.
301         * tests/hardcode.test (hardcode_libdir_flag_spec): Check the hardcoding
302         properties of the flag_spec, too.
304 1997-09-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
306         * ltconfig.in (LD): As with libtool.m4, don't override LD.
307         Do a whole bunch of ac_t quoting.
309 1997-09-24  Ian Lance Taylor  <ian@cygnus.com>
311         * libtool.m4 (AM_PROG_LD): Don't override LD in the environment.
313 1997-09-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
315         * libtool.m4, ltconfig.in (NM): Arguments to the for loop must be
316         whitespace separated.  This fixes a bug under FreeBSD's /bin/sh.
317         From George Scott.
319         * tests/defs, tests/Makefile.am (clean-local): Change =inst to
320         _inst to fix portability on MS-DOS.  From Robert Hoehne.
322 1997-09-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
324         * ltmain.in (deplibs): When building shared libraries, always add
325         -lc to deplibs.  Reported by Andreas Jellinghaus.
327 1997-09-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
329         * ltconfig.in, ltmain.in (COLLECT_NAMES): If the COLLECT_NAMES
330         environment variable has not been set, set it to empty.  This
331         apparently fixes the AIX bug with GCC's collect2.  Reported by
332         Mark Kettenis.
334         * demo/Makefile.am, ltmain.in, tests/hardcode.test (objdir):
335         Changed objdir variable .libs to _libs.  This is another MS-DOS
336         portability fix.  Suggested by Robert Hoehne.
338         * tests/hardcode.test (objdir): New variable to simplify change from
339         .libs to _libs (MS-DOS portability fix).
341 1997-09-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
343         * ltconfig.in, ltmain.in (hardcode_minusL): Fix typo by renaming
344         hardcode_minusL to hardcode_minus_L.  Also add FreeBSD
345         hardcode_libdir_flag_spec. From Paul Traina.
347         * ltmain.in (link): Honour multiple `-rpath' flags when linking
348         programs.  Suggested by Bengt Martensson.
349         Quote appearances of $echo in the wrapper script.  From Alexandre
350         Oliva.
352         * Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead
353         of ltmain.sh.in.
355         * ltmain.in: Rename ltmain.sh.in to ltmain.in.  This fixes a
356         portability problem (on MS-DOS, of all places!).  From Robert
357         Hoehne.
359 1997-09-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
361         * ltmain.sh.in (link): Do not transform libtool objects to regular
362         objects if we did not build old libs.  Reported by Tomas Hiller.
364 1997-09-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
366         * demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to
367         hell.debug in order to reflect the new static linking semantics.
369         * ltmain.sh.in (link): Add new `-all-static' flag to prevent all
370         dynamic linking.  The old `-static' flag just prevents dynamic
371         linking against libtool libraries.  Suggested by Bengt
372         Martensson.
374         * ltconfig.in (with_gnu_ld): Add a test to make sure that we are
375         actually using GNU ld.  This fixes an inconsistency when running
376         ltconfig without using libtool.m4.  Reported by Ulrich Drepper.
377         (global_symbol_pipe): Delete symbols that are not valid C
378         identifiers.  Reported by Johan Danielsson and Bengt Martensson.
380         * tests/demo-exec.test, tests/demo-inst.test: Change references from
381         hell.static to hell.debug.
383         * tests/quote.test (echo): Add the same Digital Unix echo test fixes as
384         the ones to ltmain.sh.in from Todd Kover.
386         * tests/if.test, tests/test-e.test (scripts): Add ../lineno to
387         the scripts we check.
388         * tests/if.test: Check for accidental use of test X$something rather
389         than test "X$something".
391 1997-09-04  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
393         * ltmain.sh.in (echo): Quote all the uses of `echo' in all eval
394         statements.  Reported by Bengt Martensson and Alexandre Oliva.
395         (echo): Need to surround test args with double quotes, or the echo
396         test fails on Digital Unix 4.0.  From Todd Kover.
398 1997-08-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
400         * ltmain.sh.in (echo): Change test to one that uses printf.
401         This works on AIX, which has the same problems that Solaris does,
402         but no working echo program.
404         * tests/quote.test (echo): Change test to version that uses printf.
405         Be less strict about return results.
407 1997-08-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
409         * ltmain.sh.in (link): Make sure that compile_command and
410         finalize_command are always evaled.  Quote any unknown linker
411         flags we need to pass through.
412         (compile): Use quoting for flags we pass.
413         (echo): I hate Sun!  The /usr/bin/echo on Solaris handles
414         backslash sequences, which makes it impossible to do backslash
415         quoting using echo and sed.  So, we search for an echo that obeys
416         the `echo '\t'` = '\t' equality.  Then we use `$echo' everywhere
417         in ltmain.sh.
418         Put tabs back into the ${IFS=   } sequences.  Emacs untabify is
419         libtool bane.
421         * ltconfig.in: Quote all variable values that may contain
422         metacharacters creating the libtool script.  This provides
423         complete protection, so that even single-quotes may appear inside
424         a libtool variable value.
426         * ltmain.sh.in (link): Quote finalize_command before putting it in
427         the wrapper script.
429         * tests/quote.test (echo): Add the test for a non-backslash-mangling
430         echo.
432 1997-08-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
434         * ltmain.sh.in (sed_quote_subst): Change the quoting procedure
435         again.  I think that the new one is robust for *all* characters,
436         including whitespace and metacharacters.
438         * tests/quote.test: New torture test for libtool metacharacter quoting.
440 1997-08-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
442         * ltmain.sh.in: Change quoting procedure because some shells
443         cannot handle `]' in scan sets.  From Ian Dall.
445 1997-08-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
447         * ltmain.sh.in (execute): Added -dlopen flag handling.  Suggested
448         by Alexandre Oliva.
450 1997-08-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
452         * ltmain.sh.in (link): Change executable wrapper to fix up value
453         of thisdir, as well as progdir, if the $0 path doesn't work.  This
454         guarantees that shlibpath_var is set correctly.  Add support for
455         execute mode.
457         * ltmain.sh.in (execute): New mode to automatically set
458         shlibpath_var, which allows easy debugging of uninstalled
459         executables and libraries.  Suggested by Kenneth Albanowski.
461 1997-08-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
463         * Makefile.am ($(srcdir)/ltconfig): Use lineno.
465         * configure.in: Add AM_PROG_AWK for lineno.
467         * lineno: New program to automatically put line numbers in
468         ltconfig.
470         * libtool.m4, ltconfig.in (AM_PROG_LD): Yet Another Rewrite, which
471         incorporates the results of `gcc -print-program-name=ld'.
472         Suggested by Alexandre Oliva.
474 1997-08-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
476         * ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off
477         command echoing.  From Juergen A. Erhard.
479         (compile): Recognize the Objective C `.m' extension.  From Juergen
480         A. Erhard.
482         (compile): Suppress error output from the second compilation (if
483         any) so that we don't get those frustrating duplicate error
484         messages.
486         * tests/suffix.test (extensions): Added Objective C extension, `.m'.
488 1997-08-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
490         * ltconfig.in: Added messages to config.log to describe what sort
491         of test we are running.
492         (pic_flag): Added a sanity check for pic_flag.  This should fix
493         bugs reported using the cc bundled with HP-UX 10.  Suggested by
494         Bruno Haible and Akim Demaille.
496 1997-08-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
498         * ltmain.sh.in (link): Add -dlopen and -dlpreopen support for
499         libtool objects.  This means that dlopened modules no longer need
500         to be shared libraries.
502         * ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC.
503         Reported by Ian Lance Taylor.
505         * libtool.m4 (LD): Always add `-n32' to the linker if we are using
506         GCC on IRIX 6.  Reported by Ian Lance Taylor.
508 1997-07-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
510         * libtool.m4 (AM_PROG_LIBTOOL): Explicitly check enable_shared and
511         enable_static rather than just enableval.  This allows
512         configure.in scripts to set their own defaults.  Suggested by
513         Tommy Reilly.
515 1997-07-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
517         * ltmain.sh.in: Add NLS environment variable handling copied from
518         ltconfig.in.  Reported by Akim Demaille.
519         (link): If allow_undefined_flag is not supported, then turn on old
520         libraries.  Reported by Akim Demaille.
522         * demo/dlmain.c (main): Use dld_preloaded_symbol_count to display
523         a message about the sortedness of the symbol table.
525         * ltconfig.in (nlist): Use an nlist convenience variable, so that
526         code can be shared directly with ltmain.sh.in.
528         * ltconfig.in, ltmain.sh.in (dld_preloaded_symbol_count): Count up
529         the number of symbols in the dld_preloaded_symbols.  Set to `-1'
530         if the list wasn't both sorted and counted.  This allows
531         applications to do a quick binary search, if they are so inclined.
533 1997-07-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
535         * ltmain.sh.in (link): Remove code for `-version-file', since it
536         has been long-deprecated.
538         Disable static linking if hardcode_direct is unsupported and there
539         is no working link_static_flag.  This provides correct behaviour
540         for all cases on AIX 3, regardless of whether collect2 is broken
541         or not.  Reported by Mark Kettenis.
543         * ltconfig.in: Fix typo in test polarity.  From Mark Kettenis.
545 1997-07-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
547         * ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses
548         a broken collect2.  Adapted out of test results from Mark
549         Kettenis.
550         (link_static_flag): Make sure the link_static_flag actually works
551         with a trivial binary.
553         * ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed
554         from export_dynamic_flag because we eval it in ltmain.sh.
556         * ltmain.sh.in (link_static): Don't eval link_static_flag.
558         * demo/dlmain.c (main): Change function prototype to be KNR
559         compatible.  From Kaveh R. Ghazi.
561         * ltmain.sh.in (link): Use no_builtin_flag.  This works around
562         conflicting definitions of builtin functions with at least GCC.
563         Reported by Kazuhiro Sasayama.
565         * ltconfig.in (no_builtin_flag): New flag to turn off builtin
566         functions when compiling an object file.
567         (pipe_works): Use it.
569         * tests/demo-exec.test (status): Use status variables so that we try to
570         execute all the programs.
572 1997-07-23  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
574         * ltconfig.in (pic_flag): According to the libg++ 2.7.2 configure
575         script, DEC alpha CPUs are PIC-only, as well.  Reported by Kevin
576         Jacobs.
578 1997-07-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
580         * ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X;
581         Y'" with "sed -e 'X' -e 'Y'".
583         * ltmain.sh.in (link): Finish full integration for `-dlopen' and
584         `-dlpreopen'.
586         Fix two silly typos where I used a compile_command in place of a
587         finalize_command, and vice versa.
589         Change the wrapper script to check a hardcoded path only if the
590         argv[0] method fails.  This is a compromise for the previous two
591         patches, and should solve the majority of problems with wrapper
592         scripts.  From Kenneth Albanowski.
594         (link): Change a reference to hardcode_libdir_colon_separated to
595         use the new hardcode_libdir_separator variable.
597         * demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and
598         `-dlpreopen' for building helldl.
600         * demo/dlmain.c (main): Succeed, even if none of the libhello
601         symbols have been preloaded.
603 1997-07-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
605         * ltconfig.in (global_symbol_pipe): Add `U' to the accepted global
606         symbol types.  This means that we will get duplicate symbols, but
607         we'll also be sure to get all global symbols used by the program.
609         * ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make
610         symbol output unique.
612 1997-07-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
614         * ltconfig.in (pipe_works): Check to make sure our guessed
615         global_symbol_pipe actually works.
617         * ltmain.sh.in (link): Revert change from Kenneth Albanowski.  The
618         wrapper scripts are more reliable when they just use the argv[0]
619         value.  Generally, when the argv[0] method doesn't work, the user
620         is trying to do something weird with an uninstalled binary, and
621         should try a different approach.
623         * ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of
624         `$cc'.  This fixes a FreeBSD bug.  Reported by Chuck Robey, and
625         others.
627 1997-07-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
629         * ltmain.sh.in (link): In wrapper scripts, hardcode the current
630         directory to prevent phony argv[0] values from screwing up our
631         program.  From Kenneth Albanowski.
633 1997-07-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
635         * Makefile.am (demo_distfiles): Add demo/dlmain.c to the
636         distribution.
638 1997-07-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
640         * demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate
641         `-dlopen' usage.
643         * demo/dlmain.c: New file to demonstrate preloaded modules.
645         * ltmain.sh.in (link): Add `-dlopen' flag to preload dynamic
646         modules, even on static platforms.  Use `$NM' and
647         `$global_symbol_cmd' to extract symbols from required files.
648         (dlname): Delete dlname mode entirely.  It is rendered obsolete
649         because the `.la' file format is now a public interface.
651         * ltconfig.in (NM): New variable for BSD-compatible nm program.
652         (global_symbol_cmd): Pipeline to extract global symbols from the
653         nm output.
655         * ltmain.sh.in: The .la file header should depend on `ltmain.sh',
656         not `$PROGRAM'.
657         (link): Make sure $export_dynamic_flag is eval'ed before it is
658         used.
660         * tests/demo-exec.test, tests/demo-inst.test: Check the new
661         helldl program, too.
663 1997-07-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
665         * libtool.spec: New Red Hat Package Manager specification file in
666         order to help people prepare distributions of libtool for Linux.
668         * ltmain.sh.in: Eliminate two accidental uses of the NONE magic
669         value.  These were breaking libtool's behaviour when no mode is
670         specified.
672         * tests/nomode.test: New test to make sure there is correct behaviour
673         when we don't specify a mode.
675 1997-07-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
677         * Release 1.0.
679         * ltconfig.in: On SunOS, append /usr/etc to the PATH before
680         running ldconfig; on *BSD, append /sbin.  This was done in line
681         with the Linux change suggested by Kenneth Albanowski.
683         * demo/Makefile.am (hardcode_tests): Aesthetic change to
684         alphabetize order of compiling the hardcode tests.
686         * Makefile.am (EXTRA_DIST): Delete README-automake.
688         * README-automake: Remove from distribution.
690 1997-07-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
692         * ltmain.sh.in (link): In the executable wrapper, strip trailing
693         colons from the shlibpath_var because some ld.so's, notably
694         OpenBSD 2.0's (!), don't parse colon-terminated values correctly.
695         From Tim Pierce.
697 1997-07-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
699         * ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic
700         variable value.  Use an empty variable instead.
702         * ltconfig.in (with_gcc, with_gnu_ld): Do the tests for the C
703         compiler and linker if the variables are unset, or if they are not
704         GNU C and ld.
705         (RANLIB): Eliminate redundant `if' statement.
707         * configure.in: Use AM_PROG_LD.
709         * libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU
710         ld.
711         (AM_PROG_LD): Rename AM_PATH_PROG_LD to AM_PROG_LD.  Parameterize
712         so that the user can specify `--with-gnu-ld' or `--without-gnu-ld'
713         to indicate his preference.
714         (AM_PROG_LIBTOOL): Use it.
716 1997-06-30  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
718         * ltconfig.in: Append /sbin to the path before running ldconfig on
719         Linux.  This helps superusers who haven't set their PATH
720         correctly.  Suggested by Kenneth Albanowski.
722         * tests/if.test: New test to make sure that we haven't forgotten to
723         follow an `if' statement with a `test' command.  This should avoid
724         the majority of hard-to-track bugs.
726 1997-06-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
728         * ltmain.sh.in: Change all the `eval "$run ..."' sequences to
729         `$run "eval ..."'.
731         Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'.
732         This is the sequence recommended by the Autoconf manual, and
733         should avoid any problems on older machines.  Eliminate all uses
734         of `cp -p'.  Reported by Akim Demaille.
736         (install): Use `test $# -gt 0' instead of `test -n "$1"'.
738         * ltconfig.in (LN_S): Add test to see if `ln -s' works.
740         * libtool.m4: Increment serial number, and require AC_PROG_LN_S.
742 1997-06-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
744         * ltmain.sh.in (link): Add missing `test' statement.  Reported by
745         Akim Demaille.
747 1997-06-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
749         * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of
750         am_cv_path_ld.  From Tim Pierce.
752 1997-06-20  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
754         * ltmain.sh.in: Redo two robustness fixes.  Alexandre had the
755         correct approach, but I botched them.
757         * ltconfig.in (dynamic_linker): Disable shared libraries on
758         MkLinux unless GNU libc is in use.  Reported by Akim Demaille.
760 1997-06-19  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
762         * ltmain.sh.in (install): Add a missing `test' command.  Reported
763         by Joel Weber.
764         Miscellaneous fixes to improve robustness.  From Alexandre Oliva.
766         * tests/demo-conf.test (CONFIG_SITE): Set to /dev/null, so that the
767         config.site file doesn't mess up our prefix.  Reported by Joel
768         Weber.
770         * tests/demo-inst.test: Always run both hell.static and hell.
772         * tests/demo-conf.test: Always remove the local config.cache, but run
773         `make distclean' only if the Makefile exists.  Otherwise, the demo
774         directory is not cleaned up if a user uses their own config.cache.
775         Reported by Joel Weber.
777 1997-06-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
779         * ltmain.sh.in (link): Create invalid libtool objects when partial
780         linking if we don't have PIC.  From Jeff Dairiki.
781         (install): Fix bug if libtool object is installed to a file name
782         without directory components.  From Jeff Dairiki.
784 1997-06-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
786         * Makefile.am (demo/configure): Fix up rules to run autoconf.
787         (aclocal.m4): Now we depend on our own libtool.m4.
789         * configure.in (AM_PATH_PROG_LD): Use it.
791         * libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used
792         by the C compiler.
793         (AM_PROG_LIBTOOL): Use it.
795         * ltmain.sh.in (install, uninstall): Support installing and
796         uninstalling `.lo' files.  From Jeff Dairiki.
798 1997-06-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
800         * Makefile.am (ltconfig, ltmain.sh): Only move if $(srcdir) is not
801         the current directory.  Don't regenerate every time the package is
802         reconfigured.  Reported by Tom Tromey.
803         (MAINTAINERCLEANFILES): Added ltconfig, ltmain.sh, so that
804         $(srcdir) is not messed with during a regular clean.
806 1997-06-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
808         * Makefile.am (ltconfig, ltmain.sh): Be sure to move these files
809         into $(srcdir) once they are created.
811         * ltmain.sh.in (link): Disable building static libraries.
812         People should use their favourite AR and RANLIB commands.
813         Disable building old-style objects if `--disable-static' is
814         given.  Suggested by Tom Lees and Stephan Kulow.
816 1997-06-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
818         * ltconfig.in (host_cpu, host_vendor, host_os): Patch up
819         definitions, to allow for the fact that the host_os may contain
820         hyphens (as in linux-gnu).  From Scott Goehring.
822         * ltmain.sh.in (link): Move the `dlname' setting closer to the top
823         of the file.  Suggested by David Mosberger-Tang.
824         Symlink the libtool archive into the `.libs' directory so that it
825         can be found by programs that want to find a library's dlname by
826         searching LD_LIBRARY_PATH.  Reported by David Mosberger-Tang.
828 1997-06-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
830         * Tell people to report bugs to the new libtool mailing list,
831         <bug-libtool@gnu.ai.mit.edu>.
833 1997-06-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
835         * ltconfig.in (allow_undefined_flag): New variable that implements
836         `-allow-undefined'.
837         (archive_cmds): Enable C++ constructors for FreeBSD 2.2.  From
838         David Nugent.
840         * ltmain.sh.in (link): Accept new `-allow-undefined' flag when
841         building libtool libraries.  This tells libtool to allow
842         unresolved symbols to exist in shared libraries.  Basically, this
843         turns off shared libraries on AIX.  Suggested by Ian Lance Taylor.
845 1997-05-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
847         * libtool.m4 (LD): On at least IRIX, many different flags need to
848         be propagated to the linker if they are part of the compiler
849         command line.  Reported by Anthony Green.
851 1997-05-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
853         * ltconfig.in: Trivial port to FreeBSD 3.  From David Nugent.
855 1997-04-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
857         * ltmain.sh.in (link): Remove all traces of `-whole-archive',
858         `-no-whole-archive', and libtool convenience libraries.  They were
859         more trouble than they're worth.  If these are ever reimplemented,
860         they need more careful attention to make portable.
862         * libtool.m4, ltconfig.in: Added a `--disable-static' flag to turn
863         off static library creation.  From Tom Lees (who finally convinced
864         me that it was the Right Thing to do).
866 1997-04-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
868         * ltmain.sh.in (hardcode_runpath_var, runpath_var): Use them, if
869         the linker has no -rpath flag.
870         Quote the values we use to set runpath_var and shlibpath_var.
871         (link): Use libobjlibs for libtool convenience libraries.
873         * ltconfig.in (hardcode_runpath_var, runpath_var): Add new
874         variables to describe linkers that honour `LD_RUN_PATH'.
875         (host_cpu, host_os): Use these more specific variables, rather
876         than the full canonical host system name.
878         * ltmain.sh.in (dlname): Distinguish between missing
879         `-export-dynamic' and when the library is only statically linked.
881 1997-04-21  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
883         * ltconfig.in: Trivial port to OpenBSD by making it an alias for
884         NetBSD.  From Tim Pierce.
886 1997-04-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
888         * ltconfig.in: Temporary measures to check for a broken collect2
889         program.  Right now, we just see if we're using GCC on AIX 3.
891         * tests/hardcode.test: AIX also has arbitrary limits on the line length
892         of input to fgrep(1), so we need to translate NUL characters to
893         newlines in order to properly detect embedded `.libs'.  From Bruno
894         Haible.
895         Also redirect stderr to /dev/null, so that AIX users don't get
896         worried by `fgrep: Maximum line length of 2048 exceeded.'.
898 1997-04-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
900         * ltmain.sh.in (mode): Use `egrep -e' when inferring the operation
901         mode.
903 1997-04-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
905         * ltconfig.in (linker): Some GNU ld's don't accept `--version',
906         but do accept `-v'.  From Jukka Honkela.
907         (ld_shlibs): AIX lossage may be settling down.  AIX 3.2.5 ld does
908         *not* hardcode direct libraries, but AIX 4.1.[45] ld does.
910 1997-04-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
912         * ltconfig.in (hardcode_action): Fix silly logic error.  From
913         Bruno Haible.
915 1997-04-05  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
917         * ltmain.sh.in (install): Relink if hardcode_action is `relink',
918         rather than using complex conditionals based on the other
919         hardcode variables.
921         * ltconfig.in (hardcode_action): Set to `relink', not `immediate',
922         if we can only hardcode existing directories.  Rearrange
923         conditionals to make the intent clearer, otherwise this can be one
924         hellish piece of code for the already-dizzy libtool maintainer.
926 1997-04-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
928         * replfunc.m4: Delete from the distribution.  Documentation now
929         describes how to set LTALLOCA and LTLIBOBJS in your own
930         configure.in.
932         * ltmain.sh.in (link): Make sure a libtool library only counts as
933         a shared library if its library_names are non-null.
934         Use timestamps for .lo's when PIC is turned off, rather than
935         symlinking to the real object.  This helps invalid mixtures of PIC
936         and non-PIC to fail.
938 1997-04-01  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
940         * Makefile.am (EXTRA_DIST): Distribute libtool.prj.
942         * Shameless plug: Changed source code management system from CVS
943         to PRCS.
945         * libtool.scm: Initial Guile implementation of libtool.
947         * ltmain.sh.in: An unexpected inconsistency in my whole approach
948         to shared libraries has proven that libtool needs to be completely
949         rewritten if I'm going to give full shared library support for
950         platforms that don't use the GNU C library version 2 (which to my
951         knowledge currently only works on GNU Hurd and Linux/GNU systems).
952         Porting the GNU C library should not be difficult, though.
954         Platforms that don't have the dlopen(3) family of functions will
955         need to install GNU DLD version 4 in order to build any kind of
956         libraries at all.  Unfortunately, DLD 4 won't be released for a
957         while, because I maintain it, and I'm too busy working on libtool.
959         I'll keep the old ltconfig/ltmain.sh implementation around for as
960         long as I can, and continue applying bug fixes, so that I'll have
961         a reasonable starting point for this new libtool implementation.
963         It looks like this implementation will be even more complex than
964         the original (pre-0.7) libtool.  Initial estimates show that it
965         may be up to 3 times slower, and 5 times larger than libtool-0.9.
966         I'll probably have to rewrite it in Guile to get reasonable
967         performance, which will severely limit its portability for a
968         while.
970         That will also introduce a bootstrapping issue, since the next
971         release of Guile will use libtool to build shared libraries.  So,
972         if users want to have shared Guile libraries, they will have to
973         configure Guile with `--disable-shared', compile it, install it,
974         then reconfigure Guile with `--enable-shared' and repeat.
976         I was hoping to get libtool 1.0 out the door by early April, but
977         now it looks like it will take at least another year before it'll
978         be usable by the public at large.  April fools.  libtool.scm
979         doesn't exist yet, either.
981         * ltconfig.in (verify_host): Remove redundant `Transform *-*-linux*
982         to *-*-linux-gnu*'.  From Bruno Haible.
984         * tests/hardcode.test: AIX 3 doesn't have strings(1) so we need to do a
985         funny tr and pipe the output to fgrep.  From Bruno Haible.
987 1997-03-31  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
989         * Makefile.am: Use the new AUTOMAKE and ACLOCAL variables.
991         * ltmain.sh.in (link): Only fail if a convenience library doesn't
992         exist, and the user specified -whole-archive.
993         Fix shell quoting that was breaking @OUTPUT@ substitution.
995 1997-03-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
997         * ltmain.sh.in (link): Use the hardcode_libdir_separator.
998         Convenience libraries are libtool objects if we're not building
999         libtool libs.
1001         * ltconfig.in (hardcode_libdir_separator): Added in case the
1002         linker only honours the last of the -rpath flags (but it can
1003         contain multiple colon-separated directories), such as on OSF/1.
1004         Reported by Carl D. Roth.
1006         * ltmain.sh.in (link): Set the dlname if -export-dynamic is given.
1007         (install, uninstall): Handle the dlname file separately.
1009         * ltconfig.in (export_dynamic_flag): Added to allow programs to
1010         use reflexive dlopens.
1012         * ltmain.sh.in: Include the mode name in any help messages.
1013         (dlname): New mode to give the name to be used with dlopen(3).
1015         * ltconfig.in (AR): Allow AR to be set by the user, and export it
1016         to ltmain.sh.
1018         * ltmain.sh.in: Remove broken profiled library support.
1019         Added `-whole-archive' and `-no-whole-archive' to manipulate
1020         convenience libraries.
1022 1997-03-27  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1024         * ltmain.sh.in (link): Allow the creation of static convenience
1025         libraries made of libtool objects.  Suggested by David
1026         Mosberger-Tang.
1028 1997-03-25  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1030         * ltconfig.in: On AIX, libtool also needs to look for `B' symbols
1031         in nm output.  These are global variable definitions.
1033         * ltmain.sh.in: Linking with -static should link against the
1034         linklib if old_library is empty (like it is on AIX).
1036         * ltconfig.in: Change the order of OS detection, so that
1037         linux-gnu* is detected before gnu*.
1039         * Makefile.am (libtool): Use the correct CC, RANLIB, LD, when
1040         generating libtool.  From Carl D. Roth.
1042         * configure.in: Find out the user-supplied CC, LD, RANLIB.  From
1043         Carl D. Roth.
1045 1997-03-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1047         * ltmain.sh.in: Linking with -static should link against the old
1048         library, not linklib.
1050         * README-automake: Updated to point to Automake 1.1m.
1052 1997-03-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1054         * demo/main.c: Use it.
1056         * demo/foo.h: Declare it.
1058         * demo/foo.c: Added definition of `nothing' so that we have an
1059         global variable definition, as well as functions.
1061 1997-03-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1063         * ltconfig.in: Make sure either enable_shared or enable_static is
1064         configured.  Reported by Tom Tromey.
1066         * ltmain.sh.in: Bomb out if no library types are configured.
1068 1997-02-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1070         * ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed
1071         from `hardcode_libdir_flag'.
1072         (library_names_spec): Renamed from `lib_names'.
1074         * ltconfig.in, ltmain.sh.in (hardcode_action): Change value from
1075         `rpath' to `immediate'.
1077         * replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and
1078         AM_STRUCT_ST_BLOCKS.
1080 1997-02-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1082         * ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support
1083         old-style config.guess scripts.
1085 1997-02-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1087         * ltmain.sh.in: Create objdir *before* linking a program into it.
1089 1997-02-12  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1091         * ltconfig.in: Any ld --version that returns GNU is probably a GNU
1092         ld.  From Marcus Daniels.
1094         * libtool.m4: Added AM_REPLACE_FUNCS.
1096 1997-02-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1098         * ltconfig.in: Trivial port to *-*-osf4.  From Bruno Haible.
1100 1997-02-10  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1102         * ltconfig.in: AIX 3 and 4 ld only hardcodes LIBPATH if -L is not
1103         specified.  This behaviour is the same with both xlc and gcc.
1105 1997-02-07  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1107         * doc/platforms.texi: Yaay!  We found a workaround for HP-UX
1108         /bin/sh buffer overflows.  From Eric Backus.
1110 1997-02-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1112         * Release 0.9.
1114         * PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am:
1115         Move PLATFORMS to doc/platforms.texi.
1117         * ltmain.sh.in (link): Use hardcode_libdir_flag to get a library
1118         directory into the resulting binary.
1119         Use hardcode_action, and make many simplifying changes to have
1120         compilation and finalization be consistent with each other.
1122         * ltconfig.in: Not so amazing!  It's AIX cc that hardcodes direct
1123         libraries... gcc doesn't, though.
1124         (link_rpath_flag): Change link_rpath_flag to be
1125         hardcode_libdir_flag.
1126         (hardcode_action): New variable to simplify ltmain.sh.
1128         * tests/Makefile.am (TESTS): Do the full make sequence with
1129         --disable-shared, then without.
1131         * tests/demo-sttc.test: Configure the demo directory with
1132         --disable-shared.
1134 1997-01-29  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1136         * ltmain.sh.in: Change to take advantage of linkers that don't
1137         hardcode direct libraries.
1139         * ltconfig.in: Amazing!  AIX 3 linker doesn't hardcode direct
1140         libraries, which makes it less buggy than AIX 4.  Reported by Mark
1141         Kettenis.
1143         * demo/configure.in: Check for the math library.
1145         * demo/foo.c (foo): Change to use the `cos' function, so that we
1146         need to link against another library.
1148         * tests/hardcode.test: Rewrite to use fgrep on output from ``strings
1149         -a'' if using fgrep directly on the binary files fails.  From Mark
1150         Kettenis.
1152 1997-01-28  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1154         * ltmain.sh.in (link): Export the PATH variable in order to find
1155         the program, rather than giving a full path.  This helps give the
1156         program a less confusing value for argv[0].
1158         * tests/hardcode.test: Make sure that ../demo/libhello.la really is a
1159         shared library before running hardcoding tests.
1161 1997-01-26  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1163         * Release 0.8.
1165 1997-01-24  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1167         * Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the
1168         distribution.
1170 1997-01-22  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1172         * libtool.m4: For IRIX 6, ld needs -n32 if cc uses it.  Reported
1173         by Bruno Haible.
1175         * ltconfig.in: IRIX ld does not hardcode direct libraries.
1176         Reported by Bruno Haible.
1178 1997-01-18  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1180         * ltconfig.in, ltmain.sh.in (hardcode_shlibpath_var): Allow new
1181         value, `unsupported', since most linkers do not allow you to use
1182         shlibpath_var for initial linking.
1184         * ltconfig.in: Lots of bug fixes from Bruno Haible.  Set wl on
1185         OSF/1, fix definitions of hardcode_* variables.
1186         (archive_cmds): Fix not to use +h on HP-UX 9.x.  Reported by Bruno
1187         Haible.
1189         * tests/demo-conf.test: Use the CONFIG_SHELL environment variable when
1190         running configure in the demo directory.  From Bruno Haible.
1192         * tests/Makefile.am (clean-local): Make distclean in the demo directory,
1193         so that ``make clean; env CC=cc make check'' works as one would
1194         expect.
1196         * tests/demo-make.test: Fix typo (use $make instead of make).  Reported
1197         by Akim Demaille.
1199 1997-01-17  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1201         * libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings.
1202         Suggested by Akim Demaille.
1204         * libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is
1205         specified.  Reported by Bruno Haible.
1207 1997-01-16  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1209         * demo/Makefile.am (hc-direct): Do better searching for the proper
1210         name to do a direct link.
1211         (hc-libpath): Make allowances if shlibpath_var cannot be used
1212         to find libraries at link time, such as on AIX.
1214         * Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c.
1216         * demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to
1217         KNR form, for better portability, and less ansi2knr hair.
1219         * demo/configure.in: Remove AM_FUNC_PROTOTYPES.
1221         * demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS.
1223         * demo/ansi2knr.1, demo/ansi2knr.c: Removed these files.
1225         * ltmain.sh.in: Use 1>&2 consistently to direct errors and
1226         warnings to stderr.
1227         (compile): Fix missing single quote.
1229         * ltconfig.in (hardcode_direct): On Solaris at least, using
1230         DIR/libNAME.so does not hardcode DIR, so introduce a new hardcode
1231         variable to reflect that.
1233         * ltmain.sh.in (link): If linking with $link_static_flag fails,
1234         then retry without it, but still use the .a versions of
1235         uninstalled libtool archives.
1237         * tests/tlibtool: Rewrote to grab all the settings from the generated
1238         libtool script.
1240         * tests/hardcode.test: Make allowances if shlibpath_var cannot be used
1241         to find libraries at link time, such as on AIX.
1243 1997-01-15  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1245         * ltmain.sh.in (link): Eval $link_static_flag.  Reported by Bruno
1246         Haible.
1248         * PLATFORMS: Add to distribution.  Suggested by Bruno Haible.
1250 1997-01-14  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1252         * tests/demo-conf.test, tests/demo-inst.test, tests/demo-unst.test,
1253         tests/hardcode.test:
1254         Use $make instead of make.
1256         * tests/defs (make): Add definition of $make that uses the $MAKE
1257         environment variable, if set.  Suggested by Bruno Haible.
1259         * tests/demo-unst.test (leftovers): Change the find command to ignore
1260         files beginning with a dot, as egrep -v doesn't seem to do the
1261         trick.  Reported by Bruno Haible.
1263 1997-01-13  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1265         * ltconfig.in: Add support for SCO OpenServer 5.x.  From
1266         Christopher Olsen.
1268         (can_build_shared): Initialize at the top of the file, so that
1269         shared libraries aren't built on platforms that don't support
1270         them.
1272         * tests/hardcode.test: Added a test to make sure that libtool's idea of
1273         hardcoding system linkers is correct.
1275 1997-01-11  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1277         * ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi:
1278         Update the copyright completion years.
1280 1997-01-08  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1282         * ltconfig.in: Port to IRIX 5.3, 6.2.
1284 1997-01-06  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1286         * ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the
1287         port is trivial.
1289         * libtoolize.in: Add --dry-run option, -n for short.
1291 1997-01-03  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1293         * ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't
1294         understand "export something=val".  From Bruno Haible.
1296         * tests/Makefile.am (distclean-local): Remove all files that the tests
1297         may have created.  Reported by Bruno Haible.
1299         * For all tests, discover srcdir when running from the command
1300         line.
1302         * tests/demo-unst.test: Don't fail if make uninstall doesn't delete
1303         files beginning with a dot, since spurious .nfsXXX files may be
1304         present when running NFS.  Reported by Bruno Haible.
1306 1997-01-02  Gordon Matzigkeit  <gord@gnu.ai.mit.edu>
1308         * ltmain.sh.in (compile): Recognize valid source file suffixes for
1309         Fortran and C++.
1311         * tests/suffix.test: New test to guarantee that libtool compile
1312         recognizes valid source file suffices.
1314 Continued in ChangeLog.1996