Commit Graph

370 Commits

Author SHA1 Message Date
Peter O'Gorman
ac23865b5b * ltmain.in: Accept -framework for darwin and put it in
dependency_libs. For non-installed .la's try to avoid having
./.libs/.libs/libfoo.so on the link line.
2003-09-10 08:40:42 +00:00
Greg Eisenhauer
8d844b3f48 * ltmain.in: Provide absolute paths for dlopen and dlpreopen
files in generating uninstalled libtool libraries.
* mdemo2/main.c, mdemo2/Makefile.am, mdemo2/README,
mdemo2/configure.ac, mdemo2/.cvsignore, mdemo/mlib.c,
tests/mdemo2-conf.test, tests/mdemo2-exec.test,
tests/mdemo2-make.test: New files for testing above feature.
* configure.ac, bootstrap, tests/Makefile.am: Accomodate new
test directory.
* mdemo/Makefile.am: Build libmlib.la for mdemo2 tests.
2003-07-31 20:41:35 +00:00
Bob Friesenhahn
cd56ac9a85 * config.guess, config.sub: Synchronized from ftp.gnu.org since
Robert Millan's patch requires it.


* libtool.m4: Fixed to use the new GNU/FreeBSD triplet.
* ltdl.m4: Fixed to use the new GNU/FreeBSD triplet.
* ltmain.in: Remove GNU/FreeBSD cases, which are no longer needed.
2003-07-15 00:05:21 +00:00
Benjamin Reed
80983ca528 * ltmain.in: search libraries in the order of preference, rather
than picking .la's even if they're in a less preferred directory.
2003-06-03 18:20:37 +00:00
Robert Millan
b37c4c3430 * ltdl.m4: Add support for GNU/FreeBSD.
* ltmain.in: Add support for GNU/FreeBSD.
2003-06-03 18:14:08 +00:00
Peter O'Gorman
90233b7fa9 * libtool.m4 (darwin): Remove checks for Apple-specific gcc.
* libltdl/ltdl.c (HAVE_MACH_O_DYLD_H): #define
__private_extern__ for fsf gcc.
* ltmain.in (darwin): Only add new paths to newlib_search_path.
2003-06-03 15:36:58 +00:00
Robert Boehne
8fb6d5a3c9 * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match all qnx-nto
as recent config.guess returns a slightly different string.
* ltmain.in: Replace use of "od" with tr.
2003-06-02 04:42:34 +00:00
Peter O'Gorman
40369e4a7b * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
value of shlibpath_overrides_runpath is used in the HARDCODE
test and is set in the DYNAMIC_LINKER test.
* ltmain.in(darwin): We never need to relink on darwin.
2003-04-09 17:54:06 +00:00
Peter O'Gorman
a7fd37b420 * libtool.m4: Fix the echo test which I broke earlier.
* ltmain.in: Make DESTDIR work on darwin, don't use otool.
2003-04-02 16:44:38 +00:00
Keith Packard
ba98d73f18 * ltmain.in: New flag -version-number to be used for maintaining
compatability with a previously non-Libtool versioning scheme.
* doc/libtool.texi: Document it.
2003-03-31 17:36:01 +00:00
Naofumi Yasufuku
363b0083e0 * ltmain.in (win32_libid): Fixed sed expression error in
win32_nmres evaluation.
2003-03-31 16:06:45 +00:00
Albert Chin
b73fbd17b3 * ltmain.sh: Don't pass -R flags found in a .la's dependency_libs
variable directly down to the linker.
Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
2003-03-31 15:44:14 +00:00
Peter O'Gorman
eeb3d9cc7c * libltdl/ltdl.c (dyld): Remove some debug printf's, fix a bug.
* ltmain.in (darwin): Only link against shared libraries when doing
link_all_deplibs.
2003-03-29 04:09:00 +00:00
Wesley W. Terpstra
a986ae20e5 * ltmain.in: Don't accumulate directory information in clean mode.
Include properly pathed wrapper script.
2003-03-22 06:46:07 +00:00
Peter O'Gorman
97ade8120f * ltmain.in: Always use $echo not echo for consistency.
Changes for darwin building. Warn if linking against libs linked
with -module. Use module_cmds if available and building a module,
move convenience double lib check,
* libltdl/ltdl.c: ltdl support for darwin (first blush)
* libltdl/README: note that darwin is supported
* ltdl.m4: Changes for darwin, and for new shrext
* libtool.m4: Changed the way darwin builds stuff (make check passes)
added module_cmds, module_expsym_cmds and hardcode_automatic and put
them in the libtool script. check for zsh's removal of escapes. Allow
libraries to be stripped on darwin.
* TODO: Remove the todo about zsh's removal of excapes. note that zsh
echo works perfectly well, eval is screwed up. Seems to be fixed in
latest zsh.
* THANKS: added self :)
* f77demo/configure.ac: Use config.h or it doesn't work.
2003-03-20 20:24:21 +00:00
Charles Wilson
1eadbc5376 * ltmain.in (win32_libid): use $SED, not head. 2003-03-17 00:52:48 +00:00
Ralph Schleicher
859d6cacc0 * ltmain.in: Only append a dot to the wrapper script when
building on cygwin/MSYS (check for $build, not $host).
2003-02-28 15:27:35 +00:00
Peter O'Gorman
cd9876b418 * libtool.m4 (darwin): Revamp darwin platform support.
* ltdl.m4 (darwin): Support dlcompat if found.
* ltmain.in: Make sure ranlib is run if needed when piecewise
linking.
2003-02-23 23:49:34 +00:00
Alexandre Duret-Lutz
02d4bdf39e * ltmain.in (--help): Show mailing-address for bug reports.
(--version): Mention only the most recent copyright year.
* libtoolize.in (--help): Show mailing-address for bug reports.
(--version): Mention only the most recent copyright year.
2003-02-23 16:15:49 +00:00
Charles Wilson
709bbb1731 * ltmain.in (win32_libid): Rewritten to improve speed. 2003-02-17 18:55:45 +00:00
Charles Wilson
6ab1e4099d * ltmain.in: add code for a binary wrapper
to use with uninstalled executables on cygwin/mingw.
Make sure that --mode=clean gets shell wrapper and
binary wrapper.  When sourcing the shell wrapper,
invoke using a terminal `.' on cygwin/mingw to
avoid the automatic append-.exe behavior.
2003-01-29 04:53:18 +00:00
Albert Chin-A-Young
1f2222e418 * libtool.m4: Hardcode library paths into libraries on IRIX. 2003-01-28 22:34:27 +00:00
Albert Chin-A-Young
aeaa38d6ed * libtool.m4, ltmain.in: Add support for hppa*64* based on
a patch by Ross Alexander <ross.alexander@uk.neceur.com>.
Credit to Ross! Use +b to hardcode library runtime path.
Add new variable, $hardcode_libdir_flag_spec_ld, that
is equivalent to $hardcode_libdir_flag_spec but is used
when ld is used for linking. This works around having to
set wl=''.
2003-01-15 02:55:34 +00:00
Robert Boehne
68e66c70d2 * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Modify the
"-shrext" option so that is works properly under Darwin.
Modify the processing of 'gcc -print-search-dirs' under
Darwin to make it behave like GNU gcc does.
(AC_LIBTOOL_CONFIG): Single quote $shrext.
* ltimain.in: Expand shared_ext just before it is used
so that it can be conditional on the value of $module.
2003-01-11 05:52:49 +00:00
Benjamin Reed
7d9ab948d8 * ltmain.in [darwin]: disable lazy linking, needed
to resolve C++ global constructor issues
2003-01-01 01:57:47 +00:00
Ralph Schleicher
46ed70ab97 Rework by Robert Boehne <rboehne@gnu.org>
* ltmain.in: New link option -shrext.
* libtool.m4 (AC_LIBTOOL_CONFIG): New libtool variable shrext.
(AC_LIBTOOL_SYS_DYNAMIC_LINKER): Replace all hard coded shared
library file name extensions in library_names_spec and
soname_spec with $shrext.
* doc/libtool.texi (Link mode): Document it.
2002-12-31 05:43:24 +00:00
Robert Boehne
4f17e338d2 * ltmain.in: Use the sed program found by LT_AC_PROG_SED
so that relink commands don't get truncated.
2002-12-20 04:56:26 +00:00
Robert Boehne
a6586edd03 ltmain.in: Revert the version +1 change for IRIX, it could
cause compatibility problems.
2002-12-11 16:05:24 +00:00
Paul Eggert
757646d28b Don't assume that egrep and fgrep exist. POSIX 1003.1-2001 no
longer requires them; you're supposed to use grep -E and grep -F
instead.  Also, don't assume that "test -a" works, since POSIX
doesn't require it.
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_LANG_C_CONFIG,
_LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,
AC_LIBTOOL_PROG_LD_SHLIBS):
egrep -> grep, when that makes no difference.
* libtoolize.in: Likewise.
* ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Likewise.
* ltmain.in: Likewise.
* demo/Makefile.am (hc-direct): Likewise.
* pdemo/Makefile.am (hc-direct): Likewise.
* tests/build-relink.test, tests/build-relink2.test,
tests/cdemo-conf.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/demo-conf.test,
tests/demo-nofast.test, tests/demo-shared.test,
tests/demo-static.test, tests/depdemo-conf.test,
tests/depdemo-nofast.test, tests/depdemo-shared.test,
tests/depdemo-static.test, tests/hardcode.test,
tests/mdemo-conf.test, tests/mdemo-shared.test,
tests/mdemo-static.test, tests/pdemo-conf.test,
tests/tagdemo-conf.test, tests/tagdemo-shared.test,
tests/tagdemo-static.test: Likewise.
* libtool.m4 (AC_PROG_EGREP):
New macro, defined if Autoconf doesn't define.
(AC_PATH_TOOL_PREFIX, AC_PROG_LD_GNU): Use it.
(AC_PROG_LD, AC_PROG_NM, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE):
Use shell pattern matching rather than egrep.
(AC_LIBTOOL_CONFIG): Set lt_EGREP and EGREP.
* demo/Makefile.am (SET_HARDCODE_FLAGS): Use sed instead of egrep.
* pdemo/Makefile.am (SET_HARDCODE_FLAGS): Likewise.
* tests/defs (EGREP, FGREP): New vars.
* ltmain.in: egrep -> $EGREP
* tests/assign.test, tests/demo-exec.test, tests/demo-inst.test,
tests/pdemo-exec.test, tests/pdemo-inst.test, tests/sh.test:
Likewise.
* tests/hardcode.test: fgrep -> $FGREP
* tests/f77demo-exec.test: test -a -> test &&
2002-11-19 09:42:39 +00:00
Bob Friesenhahn
5a65bbcb7a * ltmain.in: When using gcc, pass -mfoo to the linker
via $compiler_flags in order to pass architecture information to
the linker (e.g. 32 vs 64-bit). This may also be accomplished via
-Wl,-mfoo but this is not reliable with gcc because gcc may use
-mfoo to select a different linker, different libraries, etc, while
-Wl,-mfoo simply passes -mfoo to the linker. If there is a better
solution, please let me know what it is.
2002-11-19 04:42:08 +00:00
Akim Demaille
700774eef3 * ltmain.in: Do not change the PATH in the wrappers: let them
launch the real binary using its path.
2002-11-18 16:40:59 +00:00
Charles Wilson
c93daf5c91 * libtool.m4 (_LT_AC_LOCK): remove support for ancient
versions of mingw and cygwin.
(AC_LIBTOOL_POSTDEP_PREDEP): new function.
moved the "find hidden library dependencies" code here
from AC_LIBTOOL_LANG_CXX_CONFIG.  Attempted to make it
multi-tag compatible, but currently only CXX calls it.
(AC_LIBTOOL_LANG_CXX_CONFIG): set
enable_shared_with_satic_runtimes to 'no' by default
Set it to 'yes' for cygwin, mingw, pw32. Replace
"find hidden library dependencies" code with a call
to the new function AC_LIBTOOL_POSTDEP_PREDEP.
Consolidate cygwin and mingw/pw32 stanzas.
(AC_LIBTOOL_LANG_F77_CONFIG): set
enable_shared_with_static_runtimes to 'no' by default
(AC_LIBTOOL_CONFIG): add
enable_shared_with_static_runtimes to the list of variables
to write into ltmain.sh; include it in the libtool script
template as allow_libtool_libs_with_static_runtimes.
(AC_LIBTOOL_PROG_LD_SHLIBS): set
enable_shared_with_static_runtimes to 'no' by default
Set it to 'yes' for cygwin, mingw, pw32.
(AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): only put cr in regexp
if the build_os is mingw, not host_os

* ltmain.in (case deplibs_check_method): for all appropriate
cases, if allow_libtool_libs_with_static_runtimes, then remove
predeps and postdeps from the list of dependencies that must
be checked for "dynamicness".  For the "none" case, the
presence of compiler-generated postdeps and predeps should
not trigger "inter-library dependencies not supported" error.
(initial setup after arg processing): on cygwin/mingw, allow
compiler-generated dependent libs to be duplicated without
elimination.
(initial search loop for deplibs): if the deplib in question
is a libtool lib, then if
allow_libtool_libs_with_static_runtimes then parse the .la file.
If the .la file only has an "old_library", add the deplib
directly to the deplibs list (-lstdc++) and DON'T use the .la
file; this allows the (case deplibs_check_method) change above
to take effect.
* ltmain.in (for pass in $passes loop): remove predeps,
postdeps, and compiler_lib_search_path from dependency_libs.
2002-11-18 15:26:17 +00:00
Ossama Othman
d2c4f8f8fc * ltmain.in: add support for installing into temporary
staging area (e.g. 'make install DESTDIR=...')


* libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): restore setting
allow_undefined_flag=unsupported for cygwin and mingw.
(AC_LIBTOOL_PROG_LD_SHLIBS): ditto, for both "normal" gcc/ld
and for the (unmaintained?) MSVC case.


* doc/libtool.texi (Install mode): document new
-inst-prefix option.
2002-11-03 17:35:37 +00:00
Robert Boehne
900d3d6911 * ltmain.in: Print a warning if the mode is not specified.
* doc/libtool.texi: Document the change that the mode must be
specified.
2002-11-03 02:16:06 +00:00
Charles Wilson
6da15e03aa * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): use printf, not
echo. (AC_DEPLIBS_CHECK_METHOD): use new shell function
win32_libid on w32 platforms
* ltmain.in: add new section for shell functions. Add
win32_libid() shell function.
* f77demo/Makefile.am: add -no-undefined flag


* ltdl.c (realloc): Remove custom realloc. (#define
rpl_realloc realloc) and comment out later code for custom
realloc. You can't define your own malloc unless you know
enough about the malloc in use to be able to tell how big
the src ptr is. The disabled code incorrectly used the
*destination* ptr to decide how much to copy. This
sometimes results in out-of-bound accesses which cause
segfaults. This is a quick hack for now; we may want
something cleaner later. (tryall_dlopen_module): check to
be sure (dirname_len > 0) before testing first character
against '/'. (try_dlopen): check for feof(file) in read
loop -- otherwise infloop?
2002-10-31 00:52:39 +00:00
Robert Boehne
4102e43461 * ltmain.in (-XCClinker): New flag passes a linking option
directly to the compiler driver without appending ${wl}.
2002-10-28 15:38:37 +00:00
Howard Chu
ac414296ee * ltmain.in [aix]: Be sure to deal with xlc_r, cc_r and other
compiler variants.
2002-10-25 00:23:24 +00:00
Albert Chin-A-Young
35f161c0db * libtool.m4: When LDFLAGS="-Wl,-brtl,[other options]", the
-brtl special-case code for AIX never gets triggered because
were are being too specific about how we search for -brtl.
Use case statement to avoid this. Remove extraneous
semicolon.
* ltmain.in: Recognize the IBM xlc compiler.
2002-10-24 23:59:11 +00:00
Ossama Othman
38bc3fc41e Support compiler names matching g++* 2002-10-24 21:20:13 +00:00
Robert Boehne
4f99ce4c60 ltmain.in: Do not add 1 to the version under IRIX, it is
not necessary.
2002-10-23 14:36:30 +00:00
Bob Friesenhahn
448a197074 MinGW patches from Elizabeth Barham and Bob Friesenhahn. 2002-10-15 22:50:58 +00:00
Robert Boehne
dec5788036 * ltmain.in: Fixed a few spelling errors. 2002-09-25 04:26:20 +00:00
Rainer Orth
c2132510d8 * libtool.m4 (osf[345]): Append $major to soname_spec.
Reflect this in library_names_spec.
* ltmain.in (osf): Prefix $major with '.' for use as extension.
2002-09-09 18:26:34 +00:00
Robert Boehne
746b7cba7b * ltmain.in (Piecewise linking): Add a clause to skip creating
the export file until the reloadable object file(s) have been
created, then use them as input for $export_symbols_cmds.
2002-06-24 19:32:41 +00:00
Rainer Orth
40bcc7f92c * ltmain.in (irix, nonstopux): Set major before use. 2002-06-13 11:01:47 +00:00
Jon Meredith
d08d73a5ba * ltmain.in: Fix a problem on SCO OpenServer5 that caused a
failure in three depdemo-make tests. For some reason the linker
tries to find the dependent libraries using the library search
path before it has read the libraries specified with absolute
paths in the full commandline. This patch add -L's for each of
the dependent library directories so that they can be resolved.
2002-05-21 14:05:20 +00:00
Paul Eggert
d197caf0e1 * ltmain.in: Don't assume that "sort +2" works, as POSIX
1003.1-2001 says that "sort +2" is supposed to sort the file
named "+2".  An example host that behaves like this is
textutils 2.0.21 with _POSIX2_VERSION=200112.
2002-05-06 14:51:40 +00:00
Loren James Rittle
338e2996c6 * ltmain.sh: Detect and handle object name conflicts while
piecewise linking a static library.
2002-05-06 13:38:11 +00:00
Dave Vasilevsky
7b689a89ce * ltmain.in: Remove convenience libraries from deplibs for Darwin. 2002-05-02 20:38:11 +00:00
Jean-Frederic Clere
dc2fdec4f4 * libtool.m4: Update support for Fujistu-Siemens Computers (FSC).
* ltmain.in: Add support for EBCDIC based systems.
2002-04-14 21:34:04 +00:00