Commit Graph

2814 Commits

Author SHA1 Message Date
Eric Blake
dad710f891 * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD): Search for dlopen without
depending on -ldl, required by cygwin 1.5.20.
2006-07-22 04:08:46 +00:00
Ralf Wildenhues
ccafe7f927 * libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
( _LT_LINKER_BOILERPLATE): Rewrite to not use unchecked
`printf', for old systems like SunOS 4.1.
(_LT_COMPILER_OPTION, _LT_LINKER_OPTION)
(_LT_COMPILER_C_O, _LT_LINKER_SHLIBS): Likewise.
(_LT_LANG_C_CONFIG): Adjust: use literal newlines in
`lt_simple_compile_test_code' and `lt_simple_link_test_code'.
(_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
(_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Likewise.
Bug report by Bruce Becker and Mark Andrews.
2006-06-24 04:58:58 +00:00
Ralf Wildenhues
7986f9a971 Fix the bugs where libtoolize needs to use `dir/file' instead of
`./dir/file', where ltdldir is `.', so that libtoolize correctly
checks for (and suggests) `config' and `m4' instead of
`./config' and `./m4' as auxiliary resp. macro directories.
The change is necessary for unambiguous naming, the chosen way
plays better with non-GNU make in VPATH builds.

* libtoolize.m4sh (ltdlprefix): New variable, to use as prefix
instead of `$ltdldir/'.
(func_check_macros): Use it.  Bug report by Eric Blake.
2006-06-13 19:08:33 +00:00
Ralf Wildenhues
7dd3afb52a * .cvsignore, doc/.cvsignore, libltdl/.cvsignore,
libltdl/loaders/.cvsignore, tests/.cvsignore: Update.
2006-06-13 18:36:56 +00:00
Ralf Wildenhues
8f7eb43a16 Fix several libtoolize-related bugs:
- Do not symlink aclocal.m4, to work around a bug in aclocal
overwriting the linked-to file instead of removing the symlink.
- Have `libtoolize --copy' cause current time stamps, so that
dependents will be rebuilt; for this, install files in order.
- Fix list of distribution files for (non)recursive libltdl.
- Fix some failure cases.

* libtoolize.m4sh (func_copy_cb):
If `$opt_link', still copy `aclocal.m4', so a subsequent
`aclocal' will not overwrite the symlink target.
In `--copy' mode, do `cp -p' and `touch' for each file, so
timestamps are updated but permissions preserved.
(main): Reorder installing of files to match logical order
and timestamp requirements.
(func_fixup_Makefile_inc): Renamed to
(func_fixup_Makefile): this.  Add sed scriptlet to remove
non-existent files from EXTRA_DIST, for either nonrecursive
or recursive mode.
(main): call it to mangle also in recursive mode.
* tests/libtoolize.at (expout): Adjusted.
* tests/testsuite.at (tst_dist): Default to `dist'.
2006-06-12 17:54:15 +00:00
Ralf Wildenhues
b785acfbef Fix libltdl to always have all generated files up to date.
* Makefile.am (all-local): Depend on all generated files in
libltdl, namely...
(libltdl/aclocal.m4, libltdl/configure, libltdl/config-h.in):
...these.  List explicitly, including dependencies and
rebuilding rules, using...
(sub_aclocal_m4_deps, sub_configure_deps): ...these new
variables.
Report by Dan Lacher <Dan.Lacher@Sun.Com>.
2006-06-10 07:36:25 +00:00
Ralf Wildenhues
c17fac0153 * Makefile.am (install-data-local): Do not use $(INSTALL_DATA)
from another directory: it may use a relative path to
`install-sh'.
Bug report by Dan Lacher <Daniel.Lacher@Sun.COM>.
2006-06-09 15:13:45 +00:00
Ralf Wildenhues
f38715832a * libltdl/config/ltmain.m4sh (func_mode_link): Honor `-threads',
similar to `-mt'.
Report by Eric Paire <eric.paire@st.com>.
2006-06-08 16:54:44 +00:00
Charles Wilson
e94e4f2249 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ cygwin ]:
define DLL_EXPORT for PIC objects on cygwin.
2006-06-01 18:39:24 +00:00
Albert Chin
e4f54300ae * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
[ aix4*, aix5*, hpux10*, hpux11* ]: Set hardcode_direct_absolute
for CXX tag too!
2006-05-24 11:54:59 +00:00
Ralf Wildenhues
a5220e7c70 * libltdl/config/ltmain.m4sh (func_mode_link, shell wrapper):
Do not put `"$@"' in argument to $ECHO.
2006-05-19 02:23:04 +00:00
Ralf Wildenhues
4ce74c3baf * libltdl/m4/libtool.m4: Bump serial, necessary because of
_LT_CHECK_SHELL_FEATURES changes.
2006-05-18 16:32:21 +00:00
Albert Chin-A-Young
b1475f65b0 Update copyright year. 2006-05-18 09:18:09 +00:00
Albert Chin-A-Young
67b959527d * tests/early-libtool.at: Pass $CPPFLAGS and $CFLAGS to
compiler when compiling for extra flags that might be
needed for ANSI-compliance, 64-bit, etc. The environment
we compile with should match the environment libtool was
compiled with.
2006-05-18 09:17:33 +00:00
Ralf Wildenhues
5809e5cd3a Fix mode=compile time regression of CVS HEAD over branch-1-5.
* libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Rename to...
(_LT_CHECK_SHELL_FEATURES): ...this.
(_LT_SETUP): Adjust caller.
(_LT_CHECK_XSI_SHELL): New libtool variables `lt_unset',
`SP2NL', `NL2SP', to contain results from tests for unset,
taken from AS_BOURNE_COMPATIBLE, and ASCII vs EBCDIC, taken...
* libltdl/config/general.m4sh: ...from here, and used...
* libltdl/config/ltmain.m4sh: ...here everywhere now.
* (AS_SHELL_SANITIZE): Replace by faster, actually necessary
part of its expansion, taken from current Autoconf CVS.  Do not
save and set all locale variables any more, but only LANG,
LC_ALL, LC_CTYPE, LC_COLLATE, LC_MESSAGES.
(func_mode_execute): Adjust.
* libltdl/m4/libtool.m4 (_LT_CONFIG): No need to unset CDPATH
here any more.
* libtoolize.m4sh: Compute `SP2NL' and `NL2SP' here, too.
2006-05-18 05:43:01 +00:00
Gary V. Vaughan
33f72b2ff5 * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
_LT_LANG_FC_CONFIG), tests/link-order.at
[ aix4*, aix5*, hpux10*, hpux11* ]: rename
hardcode_direct_static to hardcode_direct_absolute.
* doc/libtool.texi (libtool script contents): Adjust.
2006-05-18 00:10:37 +00:00
Gary V. Vaughan
064b392296 * libltdl/ltdl.c (lt_dlhandle_fetch): Arguments to
lt_dlhandle_iterate were in the wrong order.
2006-05-17 23:12:07 +00:00
Ralf Wildenhues
4cd8dffdfe * libltdl/m4/libtool.m4 (_LT_LINKER_OPTION): Require
_LT_DECL_SED.
(_LT_CMD_GLOBAL_SYMBOLS, _LT_LINKER_SHLIBS): Likewise.
* libltdl/m4/ltdl.m4 (LTDL_INIT): Likewise.
(_LT_DECL_SED): Set $Xsed here, using $SED.  Moved from...
(_LT_SETUP): ...here.
Report by Eric Blake.
2006-05-17 20:11:03 +00:00
Gary V. Vaughan
a7ae4fab9e * doc/libtool.texi (libtool script contents): Document new
hardcode_direct_static variable.
2006-05-17 17:59:47 +00:00
Gary V. Vaughan
a2289de66c * tests/link-order.at: Be careful about usage of shrext_cmds. 2006-05-17 17:50:05 +00:00
Gary V. Vaughan
1560781d8a * libltdl/m4/libtool.m4 (LT_AC_PROG_SED): Declarations for
compatibility with old versions of libtool, and old versions
of aclocal.
2006-05-17 17:05:07 +00:00
Albert Chin-A-Young
e73b15356c * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
_LT_LANG_FC_CONFIG) [ aix4*, aix5*, hpux10*, hpux11* ]:
Introduce a new variable, hardcode_direct_static, which
would ignore hardcode_direct=yes if the result would create a
static library dependency. Static library dependencies are
immune to $shlibpath_var.
* tests/link-order.at: Take hardcode_direct and
hardcode_direct_static into consideration when testing
link order.
2006-05-17 14:28:40 +00:00
Ralf Wildenhues
216754e101 Eliminate quadratic scaling in argument parsing loop, for
shells that understand `var+=value', such as Bash-3.1, or Zsh.

* libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Test whether
the shell understands `var+=value'.
(_LT_PROG_XSI_SHELLFNS): Define `func_append' based on this.
* config/ltmain.m4sh (func_mode_link): Use `func_append' for
compile_command, finalize_command, libtool_args, libobjs,
non_pic_objects.
2006-05-17 01:58:40 +00:00
Bruno Haible
a84c618b61 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ linux ]:
Add support for Sun C 5.9, Sun C++ 5.9, and Sun Fortran 8.3 on
GNU/Linux.
* NEWS: Update.
2006-05-15 16:40:43 +00:00
Ralf Wildenhues
3c31380f6f * Makefile.am (check-local): Move `$(TESTS_ENVIRONMENT)' and
`$(BUILDCHECK_ENVIRONMENT)' to be arguments of `testsuite', so
that reruns will remember it; set enviroment variable
`CONFIG_SHELL' so the suite will know which shell it was started
with.
(installcheck-local): Likewise, for `$(TESTS_ENVIRONMENT)' and
`$(INSTALLCHECK_ENVIRONMENT)'.
* tests/testsuite.at (LT_AT_TAG): Do not set the compiler
variable here.
2006-05-15 16:14:24 +00:00
Albert Chin-A-Young
99ad8411ba * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[ aix ]: $hardcode_direct is set twice.
2006-05-14 08:43:58 +00:00
John Bowler
ebfa770bf4 * libltdl/config/ltmain.m4sh (func_mode_link): For version_type
`none', we still need to set `current', `age', and `revision',
so that our checks don't barf.  The values won't be used later.
Apparently reported by several people, several times, for BeOS.
* NEWS, THANKS: Update.
2006-05-14 08:20:11 +00:00
Ralf Wildenhues
d129c269b0 * tests/fail.at: Use "test -x" if available, for testing of
executables; code modified from Autoconf's AS_EXECUTABLE_P.
Reported by Albert Chin <china@thewrittenword.com>.
2006-05-13 18:14:36 +00:00
Ralf Wildenhues
515a9846b0 * libltdl/config/ltmain.m4sh (func_write_libtool_object):
New function, factored out from..
(func_mode_compile): .. here.  Call it to generate the libtool
object file (the `.lo' file) in one step.
2006-04-22 18:57:04 +00:00
Peter O'Gorman
3cd0ad1319 * libltdl/loaders/preopen.c: Don't allow lt_dlopen if the
module has no symbols.
2006-04-03 13:54:35 +00:00
Ralf Wildenhues
22e9ff0862 * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]:
Avoid warning when "parsing" `/etc/ld.so.conf' and empty
`/etc/ld.so.conf.d'.
Reported by Orion Poplawski <orion@cora.nwra.com>.
2006-03-28 18:11:28 +00:00
Ralf Wildenhues
0988e912bb * bootstrap: Actually use the correct version of the last patch. 2006-03-27 08:52:52 +00:00
Ralf Wildenhues
5e27eeb53d * bootstrap: Enable `WORKING_LIBOBJ_SUPPORT' if we detect
Autoconf-2.60+ and Automake-1.10+, or CVS versions.
2006-03-25 11:12:46 +00:00
Ralf Wildenhues
dccb94d892 * libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Sync with gnulib: If we
define `error_t', also define `__error_t_defined', so argp.h
will not typedef the former.
2006-03-25 11:05:02 +00:00
Ralf Wildenhues
9e38ec274b * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [ freebsd ]
[ dragonfly ]: Set libltdl_cv_sys_dlopen_deplibs to yes.
Fixes excessive lt_dlopen times on these systems.
* NEWS, THANKS: Update.
Bug reported by Peter Jeremy <peterjeremy@optushome.com.au>,
patch by Joerg Sonnenberger <joerg@netbsd.org>.
2006-03-23 22:39:41 +00:00
Ralf Wildenhues
193cfe320b * tests/static.at: New tests for comprehensive test exposure of
all current and proposed static linking flags for programs.
* Makefile.am: Updated.
2006-03-20 20:46:30 +00:00
Ralf Wildenhues
c95b003861 * libltdl/config/ltmain.m4sh (func_mode_link)
< -static-libtool-libs >: New option.
* doc/libtool.texi (Link mode, Distributing libltdl):
Document it.
Suggested by Gary Kumfert <kumfert@llnl.gov>.
2006-03-20 20:40:07 +00:00
Ralf Wildenhues
2aa72e57d2 * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp [ hpux ] <aCC>:
The HPPA C++ compiler has namespace support but provides no
`std' namespace; just provide it with a dummy.
2006-03-17 17:20:11 +00:00
Ralf Wildenhues
a35265f704 * libltdl/m4/libtool.m4 (AC_PROG_SED): Do not forget to reset
IFS even in case of empty `$PATH'.
2006-03-17 04:20:17 +00:00
Ralf Wildenhues
3514d5f59b * libltdl/config/ltmain.m4sh (func_mode_link): Comment out the
code to remove uninstalled paths, as it is wrong here.  Change
the wrong shell quoting that kept it from "working" before.
* THANKS: Updated.
2006-03-16 20:47:54 +00:00
Ralf Wildenhues
d465ae7036 * libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
[ freebsd, dragonfly ]: Fix 1.5.22 regression caused by too
strict $host_os match that stopped DragonFly from working.
* THANKS: Updated.
Reported by Jeremy C. Reed <reed@reedmedia.net>,
patch by Todd Vierling <tv@duh.org>.
2006-03-16 16:56:34 +00:00
Ralf Wildenhues
af7ada4155 * libltdl/config/ltmain.m4sh (startup): save all locale specific
environment, variables:, LANG, LANGUAGE, LC_ADDRESS, LC_ALL
LC_COLLATE, LC_CTYPE, LC_IDENTIFICATION, LC_MEASUREMENT,
LC_MESSAGES LC_MONETARY, LC_NAME, LC_NUMERIC, LC_PAPER,
LC_TELEPHONE, LC_TIME.
(func_mode_execute): Restore them.
2006-02-24 19:45:48 +00:00
Ralf Wildenhues
d410b50580 * doc/libtool.texi (Tags): Mention `FC'.
(libtool script contents) <CC>: Specify more precisely as the
compiler of the current tag.
<LTCC, LTCFLAGS, build, build_alias, build_os, host_alias,
host_os, macro_version, macro_revision, max_cmd_len>:
Document these variables.
2006-02-20 19:39:16 +00:00
Ralf Wildenhues
166f706417 * doc/libtool.texi: Update copyright years. 2006-02-15 19:14:49 +00:00
Ralf Wildenhues
1cafea60ff * libltdl/config/getopt.m4sh (func_help): Substitute `$host'.
* libltdl/config/ltmain.m4sh (help message): Use $host not
@host_triplet@, as the `@..@' substitution is done at bootstrap
time already.
Reported by Julien Lecomte <julien@famille-lecomte.net>.
2006-02-15 09:33:47 +00:00
Ralf Wildenhues
977f953b82 * doc/libtool.texi (Implementation issues): Note that both
prefix and suffix of a library may differ.
(Using libtool, Creating object files, Linking libraries):
Remove last documentation traces of the age when `foo.lo' was
the PIC object file and not the `libtool object' text file.
(libtool script contents) <compiler_o_lo>: Remove description
of this variable.  It was removed from libtool in 1.5 times.
2006-02-15 07:02:38 +00:00
Ralf Wildenhues
f4cb10f1ba * libltdl/config/ltmain.m4sh (func_mode_link) [ linux ]:
PGI: for `reload_cmds', we not only need to get rid of `$wl',
but also turn comma into space so $LD understands
whole_archive_flag_spec correctly.
2006-02-13 17:02:28 +00:00
Ralf Wildenhues
cf53b3d95a * libltdl/config/ltmain.m4sh (func_mode_link) <shell wrapper>:
Add _AS_BOURNE_COMPATIBLE code from Autoconf, to fix issues
with zsh and other shells.
Reported by David Gómez Espinosa <david@pleyades.net>.
2006-02-13 16:51:50 +00:00
Ralf Wildenhues
bba62bd35b * libltdl/m4/libtool.m4 (AC_PROG_SED): m4_defun this rather
than AC_DEFUN, so that old aclocal does not pick this up.
2006-02-09 16:04:01 +00:00
Ralf Wildenhues
fe383f1e57 * Makefile.am ($(TESTSUITE)): Also depend on `Makefile.am'.
Write to temporary file and rename.
2006-02-09 15:31:11 +00:00