Commit Graph

2058 Commits

Author SHA1 Message Date
Ralf Wildenhues
c66aec3a0d * AUTHORS: Add myself. 2004-10-05 12:38:52 +00:00
Peter O'Gorman
96786b270c * config/ltmain.m4sh [darwin]: Make the -dylib_file flag work on
older darwins too. Reported by Christoph Egger.
2004-10-05 04:16:10 +00:00
Gary V. Vaughan
2fc0e2fe16 * configure.ac: Bumped version to 2.1a. 2004-10-05 01:00:39 +00:00
Gary V. Vaughan
e5d70992b8 * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Don't confuse $ECHO
with $lt_ECHO, or we always get a libtool with ECHO=echo, rather
than testing for a mechanism that quotes  properly.
* NEWS: Updated.

* config/ltmain.m4sh: Need to include getopt.m4sh earlier so that
progpath is set before it is called to --no-reexec.
* NEWS: Updated.

Without this change, the distributed libtool tarball has a
dependency on autom4te.  There was some inconsistency in the
filenames: now we have foo.m4sh -> m4sh -> foo.in -> configure
-> foo[.sh].  Bootstrap runs the m4sh steps and the resulting .in
files are distributed:

* tests/Makefile.am (EXTRA_DIST): Distribute defs.m4sh.
* Makefile.am (EXTRA_DIST): Distribute libtoolize.m4sh.
(libtoolize.in, libtoolize): Split into bootstrap and runtime
stages.
($(top_srcdir)/tests/defs.in, $(top_srcdir)/tests/defs): Ditto.
($(top_srcdir)/config/ltmain.sh): Swap ltmain.m4sh and ltmain.in
names.
* bootstrap: Make libtoolize.in and tests/defs.in.
* NEWS: Updated.
2004-10-04 18:32:45 +00:00
Bob Friesenhahn
b295807c54 * README, README.alpha: Update notes regarding available VERBOSE
settings.
2004-10-03 21:08:21 +00:00
Bob Friesenhahn
623d66623e * config/ltmain.in: Change $XSED to $Xsed to fix hang noticed
under MinGW.
* tests/defs.in: Support VERBOSE=debug to enable shell tracing
while running tests.
2004-10-03 20:47:05 +00:00
Gary V. Vaughan
954cd09b64 * libltdl/lt__alloc.h (lt__alloc_die): Declare with LT_SCOPE as
per Ralf's original patch.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2004-10-03 17:22:50 +00:00
Gary V. Vaughan
452cf71bac * libltdl/Makefile.am (libltdlc_la_LIBADD): Don't use
libdlloader_la_OBJECTS, an undocumented Automake internal
variable...
(libltdlc_la_SOURCES): ...use libdlloader_la_SOURCES here
instead.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2004-10-03 17:12:53 +00:00
Gary V. Vaughan
aef90512b5 * libltdl/argz_.h: Forgot to spell lt_system.h with just one `_'. 2004-10-03 16:15:59 +00:00
Gary V. Vaughan
8911deab1b * libltdl/argz_.h: Forgot to include lt__system.h for LT_SCOPE
definition.
2004-10-03 15:44:36 +00:00
Ralf Wildenhues
dc5fbfd041 * libltdl/lt__alloc.h: Declare exported functions with LT_SCOPE
for mingw32.
* libltdl/lt__dirent.h: Ditto.
* libltdl/argz._h: Ditto.  Be careful about not requiring
additional libltdl files when used outside of libltdl.
* libltdl/slist.h: Ditto.
* HACKING: Add a section on libltdl implementation layering.
2004-10-03 13:50:10 +00:00
Gary V. Vaughan
ff1cda1ec4 * tests/quote.test: echo is called ECHO now. Make sure we extract
the value of ECHO from the libtool script.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2004-10-03 11:20:53 +00:00
Gary V. Vaughan
6ba254ca06 * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7*]: Revert my
hack from 2004-09-30 now that I've removed /lib/hello.la and the
tests work properly for me again.
2004-10-02 15:56:20 +00:00
Jim Tison
23031a61ab Initial support for s390x-ibm-tpf:
* m4/libtool.m4: Correct obvious spelling errors in remarks.
(_LT_ENABLE_LOCK): Make s390x-ibm-tpf hosts adopt elf64_s390
conventions.
(_LT_SYS_DYNAMIC_LINKER): Set defaults for s390x-ibm-tpf host.
(_LT_CHECK_MAGIC_METHOD): Skip all dependency checks for
s390x-ibm-tpf hosts.
(_LT_LINKER_SHLIBS): Make s390x-ibm-tpf hosts adopt GNU/Linux OS
attributes.
* NEWS: Updated.
2004-10-02 12:57:45 +00:00
Ralf Wildenhues
5a5cae5200 * config/ltmain.in (func_mode_install): Need to set $tmpdir before
using it.
2004-10-01 12:43:20 +00:00
Ralf Wildenhues
4e184ccb9f * config/ltmain.in (func_mode_link): Fix quoting bug. Fixes
e.g. the quoting of the -export-symbols-regex argument in .la
files' relink_command.
2004-10-01 11:03:03 +00:00
Ralf Wildenhues
9bc5390549 * libltdl/lt__alloc.c (lt__memdup): Allocation can fail, so we
need to guard against null pointer dereference here.
* libltdl/ltdl.c (lt_dlcaller_register): Ditto.
2004-10-01 10:24:18 +00:00
Ralf Wildenhues
921d06b537 * libltdl/slist.c (slist_foreach): result was declared as
inner variable, shadowing the actually returned value.
2004-10-01 10:03:11 +00:00
Ralf Wildenhues
2b104f6438 * libltdl/ltdl.c (load_deplibs, try_dlopen): Cast argument
to isspace/isalnum to the correct range.  Also, cast to int to
avoid compiler warnings.
2004-10-01 09:57:56 +00:00
Ralf Wildenhues
228e9808f8 * libltdl/ltdl.c (try_dlopen): Fix null pointer dereference in
case the name given to lt_dlopen contains no extension.
2004-10-01 02:55:50 +00:00
Ralf Wildenhues
8286085803 * libltdl/lt_dlloader.c (lt_dlloader_remove), libltdl/ltdl.c
(tryall_dlopen, lt_dlhandle_next): Show usage of function pointers.
2004-09-30 21:56:13 +00:00
Ralf Wildenhues
d74ec0eeb3 * doc/libtool.texi (LT_INIT, Using libltdl)
(Module loaders for libltdl, Multiple dependencies)
(libtool script contents): Fix several typos (trivial change).
2004-09-30 21:27:30 +00:00
Gary V. Vaughan
8fc94cdab2 * m4/libtool.m4 (hardcode_shlibpath_var) [darwin7]: My Panther
workstation doesn't hardcode the shared library path, although it
used to, so this is more likely a function of the binutils and/or
gcc I am using at the moment.  The hardcode value setting code for
the configure script sucks at the moment though...
* (TODO): ...and needs to do a test compile instead of a table
lookup before 2.0 final.
2004-09-30 20:53:17 +00:00
Gary V. Vaughan
ab6fca01c2 * m4/libtool.m4 (echo): Use ECHO throughout for consistency with
config/ltmain.in.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2004-09-30 15:13:22 +00:00
Gary V. Vaughan
af93981586 * m4/libtool.m4 (rm): Use RM throughout for consistency with
config/ltmain.in.
Reported by Charles Wilson <cwilson@spam.protected>
2004-09-30 09:38:23 +00:00
Peter O'Gorman
954fd8e2b8 * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
output during configure. (Really this time, honest)
2004-09-27 14:56:08 +00:00
Albert Chin-A-Young
f75d37dac1 * m4/libtool.m4 (_LT_LINKER_SHLIBS) [aix]: In archive_expsym_cmds,
move -bnoentry linker option before $compiler_flags to honor any
possible -e entries in LDFLAGS.
2004-09-26 20:01:26 +00:00
Gary V. Vaughan
29b732ba79 * config/ltmain.in (func_mode_link): When linking an installed
libtool library on the command line using -lfoo we need to find
the library in the search paths and add it's dependency_libs to
the link in the conv pass so that any libtool libs listed are
correctly expanded in the link pass.
2004-09-25 13:38:53 +00:00
Charles Wilson
7e9e1f5a70 * libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Revert changeset from
`2004-09-22  Charles Wilson  <cwilson@spam.protected>'.
2004-09-24 16:18:01 +00:00
Gary V. Vaughan
fc4e513ee0 * config/general.m4sh (Xsed): Set a default when not used from
ltmain.in.
(ECHO): Audit for (and correct!) uses of $ECHO with more than one
argument, which breaks when ECHO='printf %sn', and with possible
`-' as first character of the argument, which breaks `print -r'
and some implementations of `echo'.
* config/ltmain.in, tests/defs.in, libtoolize.in (ECHO): Ditto.
Reported by Albert Chin-A-Young <china@thewrittenword.com>
2004-09-24 16:08:33 +00:00
Peter O'Gorman
ea60dcd3ad * m4/libtool.m4 (_LT_CMD_STRIPLIB) [darwin]: strip archives too. 2004-09-24 15:17:19 +00:00
Peter O'Gorman
5b5f6d0fde * m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
output during configure.
2004-09-24 14:59:23 +00:00
Gary V. Vaughan
ef199e55da * m4/libtool.m4 (_LT_DECL_EGREP): Only the newest CVS autoconf
AC_SUBSTs for GREP.  Do our own here too to cater for release
autoconfen.
2004-09-24 12:51:24 +00:00
Gary V. Vaughan
4d35a15aee * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [openbsd3.3]: Set
need_version to yes or no depending on the os release.
Reported by Dalibor Topic <robilad@kaffe.org>
2004-09-24 10:15:16 +00:00
Gary V. Vaughan
cd11b6995f * tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/demo-conf.test,
tests/demo-deplibs.test, tests/demo-exec.test,
tests/demo-hardcode.test, tests/demo-inst.test,
tests/demo-make.test, tests/demo-nofast.test,
tests/demo-noinst-link.test, tests/demo-nopic.test,
tests/demo-pic.test, tests/demo-relink.test,
tests/demo-shared.test, tests/demo-static.test,
tests/demo-unst.test, tests/depdemo-conf.test,
tests/depdemo-exec.test, tests/depdemo-inst.test,
tests/depdemo-make.test, tests/depdemo-nofast.test,
tests/depdemo-relink.test, tests/depdemo-shared.test,
tests/depdemo-static.test, tests/depdemo-unst.test,
tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared.test,
tests/f77demo-static.test, tests/link-2.test, tests/link.test,
tests/mdemo-conf.test, tests/mdemo-dryrun.test,
tests/mdemo-exec.test, tests/mdemo-inst.test,
tests/mdemo-make.test, tests/mdemo-shared.test,
tests/mdemo-static.test, tests/mdemo-unst.test,
tests/mdemo2-conf.test, tests/mdemo2-exec.test,
tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
tests/pdemo-exec.test, tests/pdemo-inst.test,
tests/pdemo-make.test, tests/quote.test, tests/sh.test,
tests/suffix.test, tests/tagdemo-conf.test,
tests/tagdemo-exec.test, tests/tagdemo-make.test,
tests/tagdemo-shared.test, tests/tagdemo-static.test,
tests/tagtrace.test: POSIX `.' searches only in user's $PATH, so
we must use `. ./defs' to source the common code.
Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
2004-09-23 14:50:36 +00:00
Gary V. Vaughan
c82db6b1e0 * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Gah. Merge error
corrected.
2004-09-23 13:46:46 +00:00
Gary V. Vaughan
e9b2b3f264 Since defs can change (path to grep for example) when it is made
for a different host, it can't be shipped.  That also means that
defs will always be generated in the build tree, so each test case
can have the srcdir discovery factored away into tests/defs.in:

* Makefile.am (EXTRA_DIST): s/defs/defs.in/g
* tests/Makefile.am (defs): New rule to remake defs from the
parent directory's Makefile.
* tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/demo-conf.test,
tests/demo-deplibs.test, tests/demo-exec.test,
tests/demo-hardcode.test, tests/demo-inst.test,
tests/demo-make.test, tests/demo-nofast.test,
tests/demo-noinst-link.test, tests/demo-nopic.test,
tests/demo-pic.test, tests/demo-relink.test,
tests/demo-shared.test, tests/demo-static.test,
tests/demo-unst.test, tests/depdemo-conf.test,
tests/depdemo-exec.test, tests/depdemo-inst.test,
tests/depdemo-make.test, tests/depdemo-nofast.test,
tests/depdemo-relink.test, tests/depdemo-shared.test,
tests/depdemo-static.test, tests/depdemo-unst.test,
tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared.test,
tests/f77demo-static.test, tests/link-2.test, tests/link.test,
tests/mdemo-conf.test, tests/mdemo-dryrun.test,
tests/mdemo-exec.test, tests/mdemo-inst.test,
tests/mdemo-make.test, tests/mdemo-shared.test,
tests/mdemo-static.test, tests/mdemo-unst.test,
tests/mdemo2-conf.test, tests/mdemo2-exec.test,
tests/mdemo2-make.test, tests/nomode.test, tests/pdemo-conf.test,
tests/pdemo-exec.test, tests/pdemo-inst.test,
tests/pdemo-make.test, tests/quote.test, tests/sh.test,
tests/suffix.test, tests/tagdemo-conf.test,
tests/tagdemo-exec.test, tests/tagdemo-make.test,
tests/tagdemo-shared.test, tests/tagdemo-static.test,
tests/tagtrace.test: Removed srcdir discovery boilerplate...
* tests/defs.in: ...and put it here.
2004-09-23 13:07:15 +00:00
Ralf Wildenhues
6cc733bc35 * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): move symcode calculation
to correct place.
* doc/libtool.texi (libtool script contents): update description
of global_symbol_to_cdecl.
2004-09-23 12:26:40 +00:00
Gary V. Vaughan
bfce27f524 * configure.ac (M4SH): AC_SUBST m4sh expander.
* config/general.m4sh, config/getopt.m4sh: New files with factored
out functionality from...
* config/ltmain.in, libtoolize.in: ...here.  m4_include the shared
code, and call AS_SHELL_SANITIZE.  Also quote all `[' and `]' to
survive m4 run.
(func_serial): No need to double up m4sh quotes after a `#'.
(func_check_macros): Escape `dnl' to stop m4sh interpreting it as
a macro.
* tests/defs.in: New file expanded into tests/defs by autom4te.
* m4/libtool.m4 (_LT_DECL_EGREP): Also require fgrep for the tests
that use it.
* Makefile.am ($(top_srcdir)/config/ltmain.sh): Now built with
M4SH.
(libtoolize): Ditto.
* bootstrap: Set M4SH for call to make.
* HACKING: No need to sync to AS_SHELL_SANITIZE by hand any more.
2004-09-23 01:16:41 +00:00
Gary V. Vaughan
a453acdc32 * m4/libtool.m4: _LT_DECL uppercase ECHO.
* config/ltmain.in: Use it throughout.
(func_mkdir_p): Now matches the other implementations in
tests/defs and libtoolize.in.
* tests/sh.test: Updated to detect ECHO misuse.
2004-09-23 00:13:02 +00:00
Gary V. Vaughan
f28311788e * config/ltmain.in (func_mode_link): Propagate a convenience
library's dependency libs correctly when it is being linked into a
libtool library.  Deplibs are now propagated whether libdir is set
or not.
2004-09-22 23:31:27 +00:00
Andreas Schwab
a2ad2dce32 The dlpreopen pass over libraries reverses the elements in the
$deplibs list.  This causes problems when the link pass tries to
find libraries when they are located in non-standard places
denoted by -L options.  Due to the reversed order these -L options
occur after the libraries that need them, and they are not found:

* config/ltmain.in: (Un)Reverse $deplibs list at the start of the
link pass in lib mode.
2004-09-22 22:46:12 +00:00
Charles Wilson
8c7eb9e5c9 * ltmain.in (func_generate_dlsyms) [cygwin, mingw]: when creating
a .exp file for an executable, also create a .def file, and add
that file to the link command via SYMFILES.  This causes binutils
to generate an .edata section, and allows self dlopening to work.
* NEWS: Updated.
2004-09-22 08:50:34 +00:00
Charles Wilson
8bf60ee1c8 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better quoting for
postinstall_cmds and postuninstall_cmds to allow spaces in install
paths.
2004-09-22 08:11:49 +00:00
Charles Wilson
1ab797d98d * config/ltmain.in (func_generate_dlsyms): Addresses in
_preloaded_symbols[] cannot go into .rdata section if symbols are
DATA imported from DLL, on windows, because runtime relocations
must happen.
* m4/libtool.m4 (_LT_LINKER_SHLIBS([TAGNAME])):	Build exports for
symbols in .rdata sections.
2004-09-22 07:40:25 +00:00
Gary V. Vaughan
97e1a8755a The checks in assign.test are trying to catch case of this ilk:
`foo=bar break', but unfortunately they also choke on `foo=bar;
break' and `foo=bar && break'.  Writing a sophisticated test to
catch just the intended case seems like more trouble than it's
worth, but leaving the test in causes the testsuite to fail on
valid m4sh output:

* tests/assign.test: Removed; chokes on perfectly valid shell
syntax.
* tests/Makefile.am (COMMON_TESTS): Remove assign.test.
* tests/defs.in (scripts): Don't check the m4sh inputs, go back
to checking the generated ltmain.sh script.
2004-09-19 23:21:45 +00:00
Gary V. Vaughan
bc21a1c25d Reported by Roberto Bagnara <bagnara@cs.unipr.it> 2004-09-19 22:11:38 +00:00
Gary V. Vaughan
1f2c4d9702 * config/ltmain.in (func_echo): Except for multi-line warnings and
errors, always use func_echo.  $show is for command output, and
$echo is for internal use in backtick expressions and similar.
2004-09-17 17:12:17 +00:00
Gary V. Vaughan
4bf4433f70 Missed a couple of MKDIR_P references in ltmain.in in my last
patch; fix them carefully.  Introduce an opt_dry_run to ltmain.in
so that the implementations of func_mkdir_p can converge, and a
func_mktempdir to do a better job of temporary directory creation:

* libtoolize.in (func_mkdir_p): Don't fail if the directory wasn't
created in dry run mode.
* tests/defs (func_mkdir_p): Ditto.  We don't actually have a dry
run mode for the tests, but the function is written carefully to
be kept in synch and work correctly here too.
* config/ltmain.in (func_mkdir_p): Ditto.  This copy of the
function now only differs in its use of $echo over $ECHO.
(func_extract_archive): Removed first redundant mkdir call.
(func_mktempdir): New function that tries to avoid races when
making temporary directories.
(opt_dry_run): Set this if --dry-run is given at the CLI, or if
tests/mdemo-dryrun.test has forced the value of $run.
(func_mode_install): Call $MKDIR directly and error out if the
directory cannot be created.
(func_mode_link): Rather than copying func_mkdir_p into the
wrapper script as a replacement for $MKDIR_P, we know that the
script won't be called my `make -j', so write the current value of
$MKDIR.
2004-09-17 14:13:04 +00:00
Peter O'Gorman
c1fdd979bd * m4/libtool.m4: remove an extra "]" 2004-09-17 13:54:05 +00:00