Commit Graph

326 Commits

Author SHA1 Message Date
Gary V. Vaughan
2604e82a6d * ltmain.in: Remove the code for stripping duplicate deplibs
from libtool link lines -- duplicates are somtimes necessary
to satisfy inter-library dependencies, and never cause link to
fail even if they are spurious.
* tests/depdemo-dups.test: New file.  Make sure this bug doesn't
creep back in again!
* tests/Makefile.am (TESTS): Use the new test above.
2001-03-31 23:51:10 +00:00
Edward M. Lee
8087272484 * libtool.m4: Generate dll/import libraries for cygwin according
to the following: libFOO.a (static lib), libFOO.dll.a (import
lib), cygFOO-version.dll (dll).  Update postinstall_cmds and
postuninstall_cmds to reflect this.
* ltmain.in: Generate installed .la files with dlnames set to
../bin/cygFOO-version.dll for normal dlls. dlls for modules
remain with the .la file.
2001-03-31 00:08:03 +00:00
Peter Eisentraut
759f3a7ed0 * ltmain.in (clean): Automatically remove $objdir (usually '.libs'). 2001-03-10 02:16:45 +00:00
Alexandre Oliva
e724896b33 * ltmain.in: When dropping dependencies of a -no-undefined
library, give up on building a shared library.
2001-03-06 11:16:05 +00:00
Akim Demaille
cd2b157145 * ltmain.sh: Don't quote the argument of case/esac and
assignments.
* libtool.m4: Likewise.
2001-03-05 20:08:09 +00:00
Gary V. Vaughan
325c26d1a4 * ltmain.in (dlprefiles): Now that `2000-12-15 Utz-Uwe Haus' patch
below can detect preopened library deplibs correctly in libltdl,
we need to ensure that libtool library deplibs are also preloaded
into the binary for that phase to work.
2000-12-20 22:40:59 +00:00
Gary V. Vaughan
20c4325d86 * libtool.m4 (sys_lib_search_path_spec): Use test instead of
`['.
(archive_cmds): And another one.
2000-12-16 14:02:50 +00:00
Wilfredo Sanchez
4c5c1ca54f * libtool.m4: (dyld/darwin*) Much improved port.
* ltmain.in: (dyld/darwin*) Much improved port.
2000-12-16 13:08:14 +00:00
Sascha Schumann
e8a4133706 * libtool.m4: Accept darwin as an alias for rhapsody.
* ltmain.in: ditto.
2000-12-16 03:55:59 +00:00
Paul Berrevoets
99d3e1b7bd * ltmain.in: Some versions of expr respond with "0" if a
regexp fails to match.
2000-11-20 22:03:43 +00:00
Gary V. Vaughan
a12dfc6cc8 From Bruce Korb <bkorb@cruzio.com>
* ltmain.in (execute_dlfiles): Reduce obfuscation.
2000-10-02 01:18:16 +00:00
Gary V. Vaughan
24773fc37c * ltmain.in (version_type): Use "-iface" as the windows
versioning scheme, where iface is the number of the oldest
interface supported.
2000-09-15 02:26:04 +00:00
Gary V. Vaughan
a051edc63d From Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
* libtool.m4 (pw32): Initial support for pw32, assuming that
libtool's behaviour in this environment is identical to under
cygwin.
* ltmain.in (pw32): ditto.
* NEWS: Updated.
2000-09-15 02:10:27 +00:00
Michael Matz
568b6f4983 * ltmain.in: Be careful about filenames with multiple `.'s in
them when calculating file extensions.
Reported by Joel Reed <jreed@support.ddiworld.com>
2000-09-12 23:26:49 +00:00
Gary V. Vaughan
e927e43114 libtool.m4 now contains a version of the code that used to run
from ltconfig, so that ltmain.sh and then libtool are
generated at configure time.

* Makefile.am:  Don't generate ltmain.sh or ltconfig anymore.
* bootstrap: ltconfig is no more!
* configure.in: Call AC_PROG_LIBTOOL directly.
(AC_OUTPUT): Generate tmain.sh.
* libtool.m4: Don't build an argument list for ltconfig.
(_LT_AC_LTCONFIG_HACK):  Refactoring of the former contents of
ltconfig.in to take advantage of the m4 macros from autoconf.
* ltmain.in: Don't do a version check against ltconfig.
* tests/assign.test: Remove reference to ltconfig.
* tests/hardcode.test: ditto.
* tests/sh.test: ditto.
2000-09-06 17:31:09 +00:00
Alexandre Oliva
03d0740c11 * ltconfig.in: Removed all references to what used to be
hardcode_into_libs=all.  2000-09-03's patch was wrong.
* ltmain.in: Likewise.
* tests/build-relink.test, tests/build-relink2.test: Adjust.
* mdemo/Makefile.am (lib_LTLIBRARIES): Move libsub.la before
libfoo2.la, so that they're installed in the right order.
2000-09-05 11:03:06 +00:00
Alexandre Oliva
5526adb017 * ltmain.in (compile, need_lock): Don't create nor remove lock
files in dry runs.
2000-09-04 06:29:21 +00:00
Alexandre Oliva
c4c91b5984 * ltmain.in (link -static): Don't add $link_static_flag; only
-all-static should do that.
* mdemo/configure.in: Revert part of the previous delta.
2000-09-04 05:10:30 +00:00
Alexandre Oliva
5d15db14ac * ltconfig.in: Get rid of hardcode_into_libs=all; use
hardcode_into_libs=yes && shlibpath_overrides_runpath!=yes
instead.
[FreeBSD 3.[01]] (shlibpath_overrides_runpath): Set to no.
* ltmain.in: Likewise.
* tests/build-relink.test, tests/build-relink2.test: Adjust.
2000-09-04 04:00:48 +00:00
Alexandre Oliva
19b19ba7ae * ltmain.in (newdlprefiles): Use dlname if it's available and
old_library isn't; use linklib only if dlname is not available.
2000-09-04 01:18:13 +00:00
Alexandre Oliva
dc692acce6 * ltmain.in (variables_saved_for_relink): Attempt to unset them
instead of setting them to an empty string.
2000-09-03 03:13:56 +00:00
Gary V. Vaughan
656d1ca824 * ltconfig.in (with_gcc): Make the value of this option
available to the generated libtool script.
* ltmain.in (compile_command, finalize_command):  The native C
and C++ compilers on IRIX require the -LANG:std in order to to
compile correctly.   The same options should _not_ be passed
through to gcc on IRIX, or at all on other architectures for
backwards compatibility (among others).
Reported by Bob Freisenhahn <bfreisen@simple.dallas.tx.us>
Reported by Albert Chin-A-Young <china@thewrittenword.com>
2000-08-27 10:50:23 +00:00
Alexandre Oliva
94c658f565 * ltmain.in (shtool): Use echo|grep instead of expr, as in the
original patch.
2000-08-01 04:28:07 +00:00
Alexandre Oliva
b486b2ae8e * ltmain.in (irix, major): Prepend a `.'.
* ltconfig.in (irix, soname_spec, library_names_spec): Adjust.
2000-07-24 06:09:03 +00:00
Alexandre Oliva
073255d718 * ltmain.in: Support GNU shtool's install. 2000-07-24 05:42:55 +00:00
Nick Hudson
a28c34c3ec * ltmain.in (ILD): Fix addition of deplibs in relink case. 2000-07-24 05:15:35 +00:00
H.J. Lu
7bc0e24c4f * ltconfig.in: Check if -lc is necessary for building shared
libary. Set build_libtool_need_lc to indicate it.
* ltmain.in: Add -lc when building shared libary only if
necessary.
2000-07-20 02:28:44 +00:00
Michael Matz
786438a679 * ltmain.in: fix quoting for $var_value. 2000-05-29 10:42:50 +00:00
Chad Cunningham
718311d9b6 * ltconfig.in (rhapsody*): New Port.
* ltmain.in (rhapsody*): ditto.
2000-05-27 02:20:00 +00:00
Gary V. Vaughan
5921dc77fc * ltmain.in: cygwin-1.1.0 and higher no longer grok backslash path
separators.
2000-05-17 10:20:26 +00:00
Thomas Tanner
ff61ea2971 * doc/libtool.texi (libltdl): fix typos,
INCLTDL starts with top_srcdir, replace NULL with @code{NULL}

* ltmain.in (ILD): search in newlib_search_path, too

* ltmain.in (ILD): fix bugs in conv pass, expand convenience
  libs to deplibs and link them later on

* ltmain.in (ILD): don't allow convenience libs to be
   -dlopen/preopen'ed

* ltmain.in (ILD): it's not required to link all deplibs
  in fast-install mode

* ltmain.in (ILD): if hardcode_into_libs=all, only relink
  a library if it is linked against uninstalled libtool libraries,
  rename link_against_libtool_libs to uninst_deplibs

* ltmain.in (ILD): tidy up, add some comments
2000-05-03 13:26:03 +00:00
Thomas Tanner
d604f0951b * NEWS: update
* libtool.m4: add AC_LIBTOOL_PICMODE
* ltconfig.in: move pic_mode checks to ltmain.in
* ltmain.in: add -prefer-pic and -prefer-non-pic
2000-04-10 18:39:30 +00:00
Alexandre Oliva
d642136ca5 * ltmain.in (tmpdir): Do not accept an existing directory, and
force its mode to 700, for security reasons.
Reported by Joseph S. Myers <jsm28@cam.ac.uk>
2000-03-29 06:48:06 +00:00
Thomas Tanner
508df1487b * NEWS: reformatting
* ltmain.in (ILD): add extra convenience library scanning pass

* ltmain.in (ILD): accept -R flags for libraries, too

* ltmain.in (ILD): correclty merge the dlpreopened libraries
  with deplibs

* ltmain.in (install mode): remove directories from filenames
  before relinking (reported by Elrond <Elrond@Wunder-Nett.org>)

* doc/libtool.texi (libltdl): rename Library -> Lesser,
  clarify exception clause
* libltdl/ltdl.c, libltdl.h (License): ditto
2000-03-26 23:01:20 +00:00
Alexandre Oliva
cd9b42e98d * ltconfig.in (variables_saved_for_relink): Set to `PATH
$shlibpath_var $runpath_var'.  If with_gcc, add gcc-related
environment variables.  Add it to the configuration section.
* ltmain.in (relink_command): Expand those variables.
2000-03-21 12:39:33 +00:00
Thomas Tanner
ec4406e4ee * ltmain.in: remove duplicates from deplibs, handle
interdependent libraries (e.g. -la -lb -la),
  this requires adding deplibs in reverse order

* ltmain.in: link dlpreopened libraries before other libraries
  (reported by Pavel Roskin)
* mdemo/Makefile.am: build and link libsub.la
* mdemo/sub.c: new file used by both dlopened modules
* mdemo/foo*: use sub() defined in libsub
* tests/dryrun.test: build libsub.la

* mdemo/Makefile.am: always link mdemo.static with -static
* mdemo/configure.in: ditto

* ltmain.in: fix dlopen/dlpreopening of objects

* ltmain.in (ILD): fix misplaced `continue' in -R* argument handler

* ltmain.in: merge duplicated code of clean and uninstall mode

* libtool.m4: recognize powerpc*linux* (reported by
  Dirk A. Mueller <dmuell@gmx.net>)
2000-02-23 23:10:05 +00:00
Thomas Tanner
332942dd32 * ltmain.in: support -dlopen/dlpreopen for libraries
* NEWS: updated
* TODO: updated
* ltmain.in: rename dlopen to dlopen_support
* ltconfig.in: ditto
* doc/libtool.texi: ditto

* ltmain.in: check whether libraries are moved out of $libdir,
  replace .a and .lib with .$libext, .o and .obj with .$objext
2000-02-01 16:43:34 +00:00
Thomas Tanner
1873874379 * ltconfig.in: Oops, replace the remaining $objdir's
* ltmain.in: merge library linking code of programs and libraries,
  some cleanups
2000-01-27 20:33:40 +00:00
Thomas Tanner
58931da319 fix severe bugs reported by Elrond <Elrond@Wunder-Nett.org>
* ltconfig.in: replace $objdir with $output_objdir

* ltmain.in: change to the builddir before relinking programs

* ltmain.in, ltconfig.in, libtool.m4, ltdl.m4:
  remove unnessary spaces from line endings
2000-01-24 20:34:46 +00:00
Thomas Tanner
8683e2f1b4 * ltmain.in: rewrite of the ILD code, merge linking code for
programs, libraries and objects, allow linking of shared libraries
  against static libraries/objects on platforms that support it
  but print a warning, fix some typos

* partially revert my previous change and
  update only copyright notices of files that were actually modified

* NEWS: update

* libltdl/Makefile.am: version number was wrong

* libltdl/ltdl.c (tryall_dlopen): revert Gary's change
  since it breaks dlpreopening
* ltdl.m4: ditto

* libltdl/ltdl.c (sys_search_path): search in the system default
  library search path, too
* ltdl.m4 (AC_LTDL_SYSSEARCHPATH): extract the path

* libltdl/ltdl.c (find_module): remove bogus file_not_found_error

* libltdl/ltdl.c (load_deplibs): implement loading of dependency
  libraries
* libltdl/ltdl.c (unload_deplibs): implement unloading of dependency
  libraries
* libltdl/ltdl.c (lt_dlexit): correctly close all modules and
  their dependencies

* libltdl/ltdl.c (lt_dlforeach): new function
* libltdl/ltdl.h: ditto
* doc/libtool.texi (using libltdl): document it

* libtool.m4: reformatting, only add -I$topsrc_dir/libltdl to
  INCLTDL

* libtoolize.in: reformatting
* ltconfig.in: reformatting
* ltmain.in: reformatting

* mdemo/configure.in: AC_SUBST INCLTDL
* mdemo/Makefile.am: use INCLTDL

* tests/Makefile.am: reexport OBJEXT and EXEEXT
* tests/dryrun.test: use them for building main.obj and mdemo.exe
2000-01-19 20:34:37 +00:00
Thomas Tanner
47938d46eb * update all copyright notices to 2000
* doc/libtool.texi (using libltdl): document new lt_dlinfo struct,
  replace NULL with @code{NULL}, document lt_dlsetdata(),
  lt_dlgetdata() and lt_dlgetinfo()
* libltdl/Makefile.am: increment interface version number
* libltdl/configure.in: set version number to 1.1
* libltdl/ltdl.c: make some variables public by moving them
  to the info struct, add support for application specific data
  within module handles, new lt_dlsetdata(), lt_dlgetdata() and
  lt_dlgetinfo() functions,
  fix memory leaks, minor cleanups
* libltdl/ltdl.h: ditto
* mdemo/main.c: demonstrate use of lt_dlgetinfo,
  improved handling of errors

* ltconfig.in: set hardcode_into_libs = yes for GNU/Hurd, Linux
  and Solaris, only hardcode *all* run-paths if hardcode_into_libs
  is set to 'all', otherwise hardcode only user-specified rpaths
  into libraries
* ltmain.in: minor cleanups, we don't need to add user-specified
  rpaths to compile_rpath, finalize_rpath is sufficient

* ltconfig.in: transform linux* -> *linux-gnu* _after_ host_os has
  been set! (reported by Bruno Haible <haible@ilog.fr>)

* configure.in: AC_SUBST reload_flag, deplibs_check_method
  and file_magic_cmd

* README: use 'libtool --version' instead of 'ltconfig --version'
  (suggested by Francios Pinard <pinard@iro.umontreal.ca>
2000-01-13 00:28:09 +00:00
Alexandre Oliva
7856ba7351 * ltmain.in: Oops, largarg' -> lastarg'. 1999-12-18 08:27:41 +00:00
Alexandre Oliva
e99410754a * ltmain.in (-Wc, -Xcompiler): Implemented in compile mode. 1999-12-18 08:22:50 +00:00
Alexandre Oliva
30880b9095 * ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and
finalize_command.
(-Wc, -Wl): Likewise.
* tests/quote.test: Adjust quoting style of -Wl.
1999-12-18 07:50:04 +00:00
Alexandre Oliva
8dda72d1fa * ltmain.in: Oops, echo' -> $echo'. 1999-12-18 07:09:44 +00:00
Alexandre Oliva
811327bc67 * ltmain.in (-Wl, -Wc): Make commas argument separators, just like
in gcc.
1999-12-18 07:02:40 +00:00
Alexandre Oliva
02772c8400 * ltmain.in (libtool_args): Get all arguments properly enclosed in
quotes and backslash-protected when needed.
1999-12-18 06:27:21 +00:00
Thomas Tanner
9cda34041b * libltdl/configure.in: path to auxiliary files can be specified
using --with-auxdir (idea by Howard Chu <hyc@highlandsun.com>)

* ltmain.in: don't remove multiple occurences from dependency_libs
  of a library, otherwise many dependencies would get lost

* bootstrap: use "aclocal -I ." instead of adding the contents
  of ltdl.m4 to acinclude.m4
1999-12-15 13:35:21 +00:00
Alexandre Oliva
8f4d31885a * tests/sh.test: New test to detect uses of quotes within
backticks within quotes.
* ltconfig.in, ltmain.in: Fix detected errors.  Mark false
positives with a comment that disables the detector.
Reported by Akim Demaille <akim@epita.fr>
1999-11-04 16:15:50 +00:00
Thomas Tanner
974da4c714 * NEWS: updated
* THANKS: added Olly Betts and Pavel Roskin
* doc/libtool.texi: fix typo

* fix major bugs which rendered libtool virtually
  unusable (i.e. not portable):
* ltconfig.in: don't hardcode system dependent variables in ltconfig!!
  but set sane defaults
* Makefile.am: pass variables from AC_LIBTOOL_SETUP to ltconfig
* libtool.m4: ditto, fix typo in AC_PROG_LD_RELOAD_FLAG

* ltconfig.in: use old_deplibs for archives, too
  remove second occurence of sysv5
* ltmain.in: fix typo, fix the second occurence of -DPIC, too

* libltdl/Makefile.am: increment version number, fix typo
* libltdl/ltdl.c (lt_dlsym): don't report an error if the
  libltdl-style symbol name wasn't found


* ltconfig.in: add support for Unixware (sysv4.2uw2*)
1999-11-02 12:33:05 +00:00
Gary V. Vaughan
6add76b73a * ltmain.in: Damnit! Cygwin cvs committed all the
dos line endings.
1999-10-30 10:39:28 +00:00
Stephane Conversy
7c0426b60f * ltmain.in (-DPIC): changed the order of pic flags a little to
prevent upsetting the sgi c++ compiler.
1999-10-28 21:07:29 +00:00
Gary V. Vaughan
13fef72767 * ltmain.in (-no-install): This doesn't work on win32 since
the search path for libraries is not encoded in the binary,
and dlls not in $PATH won't be found.  Fall back to -no-fast-install
instead.
1999-10-04 14:44:15 +00:00
Gary V. Vaughan
cd8ed8796b * ltmain.in (-no-fast-install): Wrapper script used to add the
exeext on again when naming the wrapped executable.
1999-10-04 14:26:11 +00:00
Thomas Tanner
ef128a41ba * NEWS: new -no-install flag
* configure.in: fix typo
* doc/libtool.texi(Link mode): document -no-install flag,
  correct -no-fast-install docs
* libtool.m4: check for "file" command
* ltconfig.in: don't hardcode /usr/bin/file, remove second
  definition of sysv5, replace linkopts -> linker_flags
* ltmain.in: add new -no-install flag, print help for -no-install
  and -no-fast-install flags


* ltmain.in: always create output_objdir


* libltdl/Makefile.am: don't preserve file attributes when
  installing the libltdl sources
1999-10-03 16:36:32 +00:00
Albert Cheng
58e469c927 * ltmain.in (shlibpath_var): ensure the variable is non-empty before
exporting it.
1999-09-28 08:30:34 +00:00
Thomas Tanner
f8d63238ac * ltmain.in: don't ignore convenience libraries for objects/archives
(temporary hack)
1999-09-19 21:02:26 +00:00
Alexandre Oliva
dc8f52a75b * ltconfig.in (CDPATH): Set to `:' instead of empty.
* ltmain.in (CDPATH): Likewise.
Reported by Greg McGary <gkm@eng.ascend.com>
1999-09-14 23:30:47 +00:00
Thomas Tanner
7cc892b2c9 * NEWS: mention fixes
* doc/PLATFORMS: GNU/Hurd update
* depdemo: make use of variables
* ltconfig.in: use CC -E when checking for ELF support
  on NetBSD (reported by Todd Vierling <tv@pobox.com>),
  replace all occurences of 'linkopts' with 'linker_flags'
* ltmain.in: move ltdll.c and impgen.c to ltconfig.in and
  only add them to the libtool script if it's necessary


* ltconfig.in: add support for UnixWare 7.X.X
* doc/PLATFORMS: add new platforms


* doc/libtool.texi: document use of noinst_LTLIBRARIES for
  convenience libraries

* ltconfig.in: check for freebsdelf3, not just freebsd3.
Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1

* ltmain.in: enable workaround for freebsdelf3.0


* ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
1999-08-24 11:05:14 +00:00
Pavel Roskin
320240e999 * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
initialised structures are sometimes emitted in the code section.
1999-07-29 23:28:06 +00:00
Alexandre Oliva
b0dad73a36 * ltmain.in: Fix creation of relative links to object files in
sub-dirs.
1999-07-29 19:33:55 +00:00
Olly Betts
d4a41297aa * NEWS: Note new user visible changes.
* libtool.m4 (mingw32, AC_LIBTOOL_SETUP): probe for -mdll vs -dll
under cygwin/mingw.
probe whether the cygwin/mingw library supplies a stub DllMain
(but this information isn't yet used).
* ltconfig.in (mingw32, extract_expsyms_cmds): if HOST_CC is set,
use that to build impgen so we can use it when cross-compiling.
use correct entry points for mingw so static C++ constructors get
called for code in the DLL.
* ltmain.in (impgen.c): define O_BINARY to 0 if it is not in the
system headers.
1999-07-23 16:09:49 +00:00
Thomas Tanner
cbc1402596 * NEWS, TODO: updated (pic flags)
* libtool.m4 (AC_PROG_LIBTOOL): added --with-pic flag
* ltconfig.in: new pic_mode variable and --prefer[-non]-pic flags,
  fixed the strip check (reported by Keith Bostic <bostic@bostic.com>)
* ltmain.in (compile mode): build only PIC/non-PIC code depending
  on pic_mode
* libltdl/README: document the supported dlopen interfaces
* doc/libtool.texi (tests): documented new tests
* tests/Makefile.am: added new tests
* tests/demo-pic.test: new test to test --with-pic
* tests/demo-nopic.test: new test to test --without-pic
* tests/build-relink2.test: variant of build-relink.test that
  uses depdemo
1999-07-17 09:00:53 +00:00
Thomas Tanner
3f8de2c2fc * NEWS: updated
* doc/PLATFORMS: updated
* changed my email address
1999-07-01 14:48:06 +00:00
Thomas Tanner
86180ef4d5 * NEWS: mention -no-fast-install, rename dummy to force
* doc/PLATFORMS: 1.3b passes all tests on GNU/Linux,
  FreeBSD (2.2.6 and 3.1)
* doc/libtool.texi: it's possible to link libtool libraries
  using -L and -l, better documentation of uninstall and clean mode,
  rename dummy to force, documented -no-fast-install,
  AC_LIBLTDL_* must be called before AC_PROG_LIBTOOL,
  documented hardcode_into_libs and striplib/old_striplib,
* ltconfig.in: search for strip program, added hardcode_into_libs
  and striplib/old_striplib variables, set strip commands for GNU strip,
  on FreeBSD >= 3.2 set hardcode_into_libs to yes,
  fast-install mode doesn't work if hardcode_into_libs = yes
* ltmain.in: reimplemented hardcoding into libraries:
  new relink mode, preserve all libtool args, relink libraries
  when installing if necessary
  added -no-fast-install flag, removed unnecessary `dlname'
  initialization, use striplib/old_striplib for stripping libraries,
  dlname is always soname or in library_names so we don't need
  to handle different file names
1999-06-29 17:37:06 +00:00
Olly Betts
8c34a71462 * ltmain.in (ltdll.c): Support for crosscompiling from linux to
mingw32.
1999-06-23 13:22:27 +00:00
Thomas Tanner
debe84ef9b * ltconfig.in (bsdi4, deplibs_check_method): use a less restrictive
regex (reported by Chris P. Ross <cross@eng.us.uu.net>)
* ltmain.in: support `-dlopen self', define lt_preloaded_symbols
  if dlself != no
* doc/libtool.texi (Compile and Link mode): document it,
  documented the -Wc, -Wl flags, libtool does also support non C
  source code


* ltconfig.in: CR/LF fix for broken DJGPP bash
* ltmain.in: CR/LF fix for DJGPP
1999-06-18 14:49:47 +00:00
Gary V. Vaughan
b9f8b2e6c7 * ltmain.in (outputname): When generating the executable wrapper
script, $outputname already has the $exeext suffix, so we needn't
add it again.
1999-06-18 13:46:33 +00:00
Thomas Tanner
4b50692175 * ltmain.in: store old archives in deplibs and old_deplibs,
retain the order of dependency libraries (even old archives),
  determining the absolute directory name didn't work due to a typo,
  add the library search paths of all dependency libraries when
  linking a library (fixes IRIX 5.2 bug)
1999-06-11 23:46:47 +00:00
Gary V. Vaughan
cbd4699dab * ltmain.in (exeext): Use $exeext when working out the names of
programs (but not the wrapper script itself due to a stupidity in
win32 which hardwires the .exe extension to the binary loader!).
* ltconfig.in (exeext): Now that the wrapper script tries to move
executables, we need to know whether they have an extension (ala
AC_EXEEXT).  Since we can't rely on AC_EXEEXT having been called
in configure.in, we must be able to check for ourselves, though we
can look for a cached result incase AC_EXEEXT was called.
1999-06-08 12:52:33 +00:00
Nick Rasmussen
33807d4290 * ltmain.in (link): use "$nonopt" as the compiler for
compile/finalize_command
1999-06-01 22:48:20 +00:00
Alexandre Oliva
85c66eecaf * ltmain.in: Expand convenience libraries when creating reloadable
objects.
* NEWS: Ditto.
1999-05-27 11:41:02 +00:00
Alexandre Oliva
d80450f053 * ltmain.in: Only create directory into which to extract
convenience libraries when $convenience is not empty.  It would
always be created on systems that did not support
whole_archive_flag_spec.
1999-05-27 10:52:48 +00:00
Alexandre Oliva
ec523ab5d2 * ltconfig.in (export_symbols_cmds): Add $convenience.
(cygwin, export_symbols_cmds): Ditto.
* ltmain.in: Generate export symbol list before expanding
convenience libraries, to avoid passing whole_archive_flag_spec to
$NM.
Reported by Godmar Back <gback@cs.utah.edu>
1999-05-27 10:45:32 +00:00
Alexandre Oliva
f7b500ef48 * ltmain.in: Revert to stripping .exe on all platforms.
* TODO: Note about this problem.  Demo is fixed on win32.  -Wl and
-Wc are implemented for release 1.4.  Support `empty' convenience
libraries.
1999-05-26 00:00:40 +00:00
Frank Ch. Eigler
49723f5acd * ltmain.in: file_magic check would not avoid cyclic links. 1999-05-25 17:26:35 +00:00
Alexandre Oliva
73c99f03b2 * ltmain.in: Remove object files before writing to them, to avoid
circular links.
Reported by Ron O'Hara <rono@sentuny.com.au>
1999-05-25 15:48:02 +00:00
Thomas Tanner
4b45958069 * NEWS: support for installing stripped libraries using GNU strip
* ltconfig.in: set deplibs_check_method=pass_all on FreeBSD,
  Linux and Solaris since no one can reproduce the famous deplibs
  bug
* ltmain.in: preserve $CC (reported by Tom Tromey),
  strip libraries using GNU strip if it's available and the
  -s flag was passed to "install"
1999-05-25 16:05:50 +00:00
Thomas Tanner
306612d348 * ltmain.in: strip off the .exe suffix only on *Win
(Reported by Matthew D. Langston <langston@SLAC.Stanford.EDU>)
1999-05-23 10:03:23 +00:00
Thomas Tanner
1b2ea275d2 * NEWS: updated
* TODO: -Wc, -Wl, implemented
* AUTHORS: changed my email address
* doc/libtool.texi: fix "wierd" typo :)
* ltmain.in: linking against convenience libraries was broken,
  implemented the "-Wc," "-Wl," "-Xcompiler" "-Xlinker" flag for
  compiler and linker-specific flags,
  add -lc before we do the deplibs check
* ltconfig.in: linkopts -> compiler_flags for $CC and linker_flags
  for $LD, link_all_deplibs=yes on IRIX


* NEWS: insert todays date alongside 1.3.1 release.
* Makefile.in: use gnu not gnits rules
* config.guess: synch with gnu common & apply Takabatake-san's
MIPS *000 patch.
* config.sub: synch with gnu common.
1999-05-22 18:04:32 +00:00
Gary V. Vaughan
0d55a7031e * ltmain.in: Do not exit when an unknown library name is passed
passed in, simply warn and continue since some compilers require
-LANG:* like options to work.
Reported by Adam C. Powell, IV <adam.powell@nist.gov>
1999-05-17 15:53:58 +00:00
Alexandre Oliva
6aa96d9d4e * ltmain.in: Save exit status of link_command before removing
symbol table object file.
1999-04-29 12:01:59 +00:00
Alexandre Oliva
7d898359ef * ltmain.in (nlist, SYMFILE): Use outputname instead of output for
names within output_objdir.
1999-04-29 07:13:25 +00:00
Thomas Tanner
9d87d7b208 * NEWS: new clean mode
* THANKS: added Ossama Othman
* doc/libtool.texi: documented the new `clean' mode
* ltconfig.in: set need_version=no on OSF (reported by
  Marcus Sundberg <mackan@stacken.kth.se>)
* ltmain.in: allow absolute non-existant -L paths,
  always use output_objdir instead of objdir for temporary files,
  delete generated temporary symbol lists,
  don't add .la twice in the pseudo-library header,
  implemented and documented clean mode (deletes libraries,
  programs and object files and the files associated with them),
  if build_libtool_libs=no and no static library is available,
  try to link the program against the shared library,
  don't add a statically linked library to the dependency_libs
* ltmain.in (help uninstall): added a missing backslash
  after echo (reported by Ossama Othman)
1999-04-27 17:30:20 +00:00
Alexandre Oliva
5c4b25e8bd * ltmain.in (old_archive_cmds): Iterate on oldobjs to find out
which links to object files we must create.  Do not test for empty
pic_flag to create such links.  Use objext when searching for
object files extracted from convenience library.
1999-04-27 10:34:46 +00:00
Erez Zadok
b7b94832c8 * ltmain.in (old_archive_cmds): Ensure that there are always .o
objects available before running old_archive_cmds.
1999-04-27 08:05:28 +00:00
Frank Ch. Eigler
36e0c3cf90 * libtool.m4 (cygwin*): Look for target objdump tool.
* ltconfig.in (cygwin*, file_magic_cmd): Use autoconf-located target
objdump tool.  Track OBJDUMP like DLLTOOL and AS.

* ltconfig.in (cygwin*, deplibs_check_method): Accept
"architecture: i386" as optional suffix, for it is printed on a
separate line sometimes.

* ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C".

* ltmain.in (deplibs_check_method=file_magic): Redirect stderr to
/dev/null, to suppress error messages from target objdump.
1999-04-25 18:54:24 +00:00
Alexandre Oliva
c4221fc830 * ltmain.in (prefer_static_libs): New variable, set to no by
default, but set to yes by -static and -all-static.  Used instead
of build_libtool_libs to decide whether to use a shared or static
version of a library, when both versions are available.
1999-04-25 09:40:49 +00:00
Thomas Tanner
c836f3090d * libltdl/configure.in: check for shl_load in libdld
* libltdl/ltdl.c (shl_close, shl_sym): use (shl_t *) instead of shl_t
* ltconfig.in (check for gcc): removed a bogus line,
  check for shl_load in libdld
* ltmain.in: added a warning to the header of the .la file
  to warn users against deleting the file,
  link shared against static libraries if
  deplibs_check_method == pass_all
1999-04-11 21:10:04 +00:00
Alexandre Oliva
45641b8620 * ltconfig.in (--fallback-echo): Do not put an inline document and
an exec in the same if construct; otherwise the inline document
may not be removed.
* ltmain.in (--fallback-echo): Likewise.
Reported by John David Anglin <dave.anglin@nrc.ca>
1999-04-08 00:47:59 +00:00
Alexandre Oliva
1d53527eb7 * tests/dryrun.test: Use cmp instead of diff.
(before, after): Create them within ../tests.
(libtool): Set to `/bin/sh ./libtool' by default, but use LIBTOOL,
SHELL and top_builddir from the environment if available.  For dry
runs, use "$libtool -n".
* tests/Makefile.am (CLEANFILES): Added before and after.
* ltmain.in: Do not create links to object files in dry runs.
1999-04-06 23:55:04 +00:00
Thomas Tanner
ba4c36f3cf * ltmain.in: added a missing line of the ILD patch 1999-04-06 22:10:46 +00:00
Thomas Tanner
87f8ef6d60 * NEWS: improved DJGPP support
* doc/libtool.texi: removed hardcode_into_libs documentation
* libtool.m4: some DJGPP fixes
* ltconfig.in: ditto, reverted one of my previous patches: we need
  to check for NM, removed the hardcode_into_libs support since
  no platform seems to support it
* ltmain.in: some DJGPP fixes, removed the hardcode_into_libs support
1999-04-06 22:08:59 +00:00
Thomas Tanner
cdf5a93630 * doc/libtool.texi: reorder tests to reflect execution order,
documented dryrun.test and depdemo*
* ltmain.in (lt_preloaded_symbols): dry-run mode bugfix
* tests/dryrun.test: new test to check whether the dry-run
  mode works properly
1999-04-05 12:32:21 +00:00
Thomas Tanner
2706767e2c * demo/run.test: removed the unnecessary test
* demo/Makefile.am: ditto
* ltmain.in: set the DLL search path on cygwin,mingw and os2
1999-04-05 10:20:57 +00:00
Thomas Tanner
7f3aca95c1 * NEWS: updated
* libtool.m4: check for main in libm instead of cos
* ltmain.in: cosmetic fixes, don't try to link libraries only once
  (although it's not necessary on many platforms and looks ugly...),
1999-04-03 00:36:06 +00:00
Alexandre Oliva
f97db5092d * ltmain.in (convenience): fixed race condition when more than one
library was linked with the same convenience library by
uniquifying the extract directory.  It is now named after the new
library *and* the old one, and lives in the objdir of the new one.
1999-04-02 13:57:23 +00:00
Alexandre Oliva
a517bc7a9f * ltmain.in (-L*): do not abort just because a directory specified
with -L does not exist; just warn and discard it
1999-04-02 13:41:53 +00:00
Alexandre Oliva
0319e34536 * ltconfig.in (link_all_deplibs): set to unknown by default
* ltmain.in: test != no, not = yes
* doc/libtool.texi: document unknown
1999-04-02 05:04:56 +00:00
Thomas Tanner
b6eed25814 * demo/Makefile.am: moved testsuite specific declarations to the end,
the deplibs check is now optional
* libltdl/configure.in: read libtool --config only once,
  merged AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE from libtool.m4
* libtool.m4: AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE were not
  used, lt_dlopen and silent may be empty, AC_SYS_LIBTOOL_CYGWIN
  no longer necessary
* ltconfig.in: NM is already checked in libtool.m4,
* ltmain.in: always link all static dependency_libs
* tests/Makefile.am: added deplibs.test
* tests/demo-exec.test, demo-inst.test: removed hell0
* tests/deplibs.test: new test to test the deplibs_check_method
1999-04-01 15:34:13 +00:00