Commit Graph

262 Commits

Author SHA1 Message Date
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