Commit Graph

203 Commits

Author SHA1 Message Date
Ralf Wildenhues
652709d688 Improved Portland support: prelinking of C++ templates and whole_archive.
* m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [ linux ]:
Reinstate formatted whole_archive_flag_spec for PGI compilers.
* config/ltmain.m4sh (func_mode_link), m4/libtool.m4 (_LT_LINKER_SHLIBS):
New tag prelink_cmds, to be executed before linking a program.
(_LT_LANG_CXX_CONFIG) [ linux ]: Use for pgCC.
(_LT_COMPILER_C_O): conftest might be nonempty, clean up more thoroughly.
2005-04-07 17:58:26 +00:00
Ralf Wildenhues
ae669866bd * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Only call sed if
necessary while quoting all libtool variables.
Reported by Robert Ögren <lists@roboros.com>.
2005-04-07 06:29:55 +00:00
Gary V. Vaughan
0aa2e304c6 Getting the value of ltdldatafiles from a submake was not
portable, and had problems with GNU make-3.80 at least.  This
changeset pulls the installation rules for libtoolize's copy of
the libltdl sources out of libltdl/Makefile.am so that
ltdldatafiles is defined in the same Makefile that uses it.  Also,
this makes a start at cleaning up libltdl/Makefile.am so that it
is useful in a package that uses `libtoolize --ltdl':

* libltdl/loaders/Makefile.am: Removed entirely.
* libltdl/Makefile.am (dlopen.la, dld_link.la, dyld.la)
(load_add_on.la, loadlibrary.la, shl_load.la): All built from here
now that the loaders submake has gone.
(show-ltdldatafiles): Removed.  No longer required.
(ltdldatadir, ltdldatafiles, install-local): Moved from here...
* Makefile.am (ltdldatadir, ltdldatafiles, install-local): ..to
here.
(libtoolize): Substitute $(ltdldatafiles) directly without calling
make to get the value from libltdl/Makefile.
2005-04-04 12:12:25 +00:00
Mike Stump
d92270911a * m4/libtool.m4 (LT_CMD_MAX_LEN) [ netbsd, freebsd, openbsd,
darwin, dragonfly]: Use 3/4 of argmax, instead of 1/4.
2005-04-01 09:27:17 +00:00
Ralf Wildenhues
8637ab4420 * m4/libtool.m4 (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG):
Set $cc_basename.
2005-03-28 09:32:59 +00:00
Ralf Wildenhues
1652028e3b * m4/libtool.m4, m4/ltdl.m4: Indentation and quoting cleanup. 2005-03-22 16:55:14 +00:00
Ralf Wildenhues
dcfa05980f * m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Use ${wlarc}
and set to empty when using $LD for linking.  Fixes regression
introduced in 2004-11-17.
Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> and
Пухальский Юрий Андреевич <pooh@cryptopro.ru>.
2005-03-22 07:39:44 +00:00
Ralf Wildenhues
2803fc9eeb * m4/libtool.m4 (_LT_SETUP, _LT_LANG_CXX_CONFIG, * _LT_LANG_F77_CONFIG):
For matching compiler names: Pick only first word, allow leading white
space..
* tests/sh.test: ..and test for missing `*' at end of patterns.
2005-03-21 17:59:39 +00:00
Peter Ekberg
7d29c2d785 * m4/libtool.m4 (_LT_LINKER_SHLIBS) [ irix5, irix6, nonstopux ]:
Test if it is possible to use the -exports_file linker option on
irix with gcc, as the gcc specs file may include a -hidden_symbol
option that is clashing with the -exports_file option.
See this gcc bugzilla entry for further details:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15288
* THANKS: Update.
2005-03-20 07:15:21 +00:00
Peter O'Gorman
30e36fa5a9 * m4/libtool.m4: The compiler can be a program name with args, so
always check cc_basename against compiler name and a wildcard.
Also, drop unnecessary quotes in `case' argument.
2005-03-18 15:32:14 +00:00
Ralf Wildenhues
b4501c381d * config/general.m4sh: unconditionally set IFS, and set it
to the one true right sequence: space, tab, newline.
* m4/libtool.m4: remove IFS setting and as_* namespace infringement.
2005-03-16 17:27:35 +00:00
Ralf Wildenhues
dd9a6330c7 * m4/libtool.m4 (_LT_CONFIG): Reset IFS to fix failure with ash. 2005-03-16 10:07:36 +00:00
Ralf Wildenhues
285149dfbc * m4/libtool.m4 (_LT_COPYING): Update Copyright year. 2005-03-14 15:02:23 +00:00
Ralf Wildenhues
23c671d222 * m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]: Remove MAIN_
dependency when creating shared libraries with Portland pgf77.
2005-03-14 11:10:26 +00:00
Albert Chin-A-Young
eac1a34572 * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[irix*, osf*]: Output -update_registry information to
${output_objdir} directory, not ${objdir}. ${output_objdir}
will work when a project has a single Makefile and performs
builds in subdirectories. ${objdir} expects the source in
the current directory, breaking single-Makefile builds.
2005-03-08 16:24:38 +00:00
Gary V. Vaughan
ca2959fea1 * m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC):
Fix some typos -- s/_LT_AC_TAGVAR/_LT_TAGVAR/g.
2005-02-25 17:46:50 +00:00
Peter O'Gorman
6a7510021b * m4/libtool.m4 (_LT_LINKER_SHLIBS): The Portland group's
compiler does not pass --whole-archive. Move gnu ld check for
the flag to the top so it can be overridden.
(_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC): Unset
whole_archive_flag_spec for the portland group's c++ compiler too.
Reported by Jeff Squyres <jsquyres@lam-mpi.org>
2005-02-25 14:19:58 +00:00
Ralf Wildenhues
1068a87435 * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
[ pw32, freebsd3.[01], freebsdelf3.[01] ]
(_LT_LINKER_SHLIBS) [ linux with GNU ld < 2.11, aix4.[012]* ]
(_LT_LANG_CXX_CONFIG) [ aix4.[012]*, freebsd[12], solaris2.[0-5] ]
(_LT_LANG_GCJ_CONFIG): Fix [] quoting.  Should fix various spurious
failures.
2005-02-01 17:43:58 +00:00
Ralf Wildenhues
62fae08f57 * m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unicos 9 sed rejects
empty parentheses as in 's/x()/1/'.
(_LT_COMPILER_PIC) [unicos*]: wl=-Wl,.
* tests/sh.test: Not all sed's like '/.*n.*/' (Unicos 9 sed
loops endlessly).
2005-01-31 17:30:47 +00:00
Ralf Wildenhues
94d4eb3a38 * m4/libtool.m4 (_LT_COMPILER_C_O): _LT_TAGDECL(lt_compiler_c_o),
not _LT_DECL, since this is tag-dependent.
2005-01-31 17:15:00 +00:00
Ralf Wildenhues
41a67fb432 * config/ltmain.m4sh, m4/libtool.m4: Change `( cmd ) 2>/dev/null' to
`{ cmd; } 2>/dev/null', when cmd has no side effects and might be a
builtin.  Note that it is unspecified whether cmd will run within a
subshell (e.g. Bourne shells) or within the current shell (most modern
shells).
2005-01-31 16:17:06 +00:00
Ralf Wildenhues
9d829d1319 * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [linux]:
Update for Intel Compiler icc/icpc/ifort: add -i_dynamic and
-nofor_main, if necessary.  Simplify logic somewhat.
2005-01-29 15:09:07 +00:00
Craig Dooley
94a93ca621 * NEWS, m4/libtool.m4, config/ltmain.m4sh [dragonfly]:
Add support for DragonFly.
2005-01-26 17:38:51 +00:00
Ralf Wildenhues
c54782414c * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Work around pdksh
positional parameter expansion bug.
2005-01-26 11:30:51 +00:00
Ralf Wildenhues
3dfd1f265b * m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Define Bourne and XSI
variants of new function func_stripname for stripping literal
prefixes and suffixes.
* config/ltmain.m4sh (all over): Use func_stripname.
2005-01-24 13:28:47 +00:00
Ralf Wildenhues
458f76a0b9 * m4/libtool.m4 (_LT_SETUP) [mingw, cygwin, pw32, os2]:
Add _LT_DECLs for host_os, build_alias, build and build_os.
host_os and build were used in a few occasions in ltmain.m4sh
and affect above-mentioned systems, the others are added for
symmetry and in order to be able to detect cross-compiling.
2005-01-24 07:42:31 +00:00
Peter O'Gorman
7573f30cde * m4/libtool.m4 (LT_CMD_MAX_LEN) [osf]: On Tru64 there could
be a kernel panic when testing the maximum command line length
if exec_disable_arg_limit=1. Don't do the tests to figure it
out on *-osf*.
Reported by Dr. Hans Ekkehard Plesser
<hans.ekkehard.plesser@umb.no>
2005-01-16 12:26:45 +00:00
Guido Draheim
c7204c5f98 * m4/libtool.m4 (AC_PROG_SED): Don't break test loop early. 2005-01-14 09:20:32 +00:00
Ralf Wildenhues
1f7dbb99eb * libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: While "parsing"
/etc/ld.so.conf, skip comments.
Reported by Jens Elkner <elkner@linofee.org>.
2005-01-12 12:57:32 +00:00
Gary V. Vaughan
42a1087ff2 * m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4: RMS says,
'I think the [license of autoconf macro files] should be:
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is
# preserved.'.
2005-01-08 21:17:57 +00:00
Ralf Wildenhues
9028c97fed * m4/libtool.m4 (_LT_LINKER_SHLIBS)
[cygwin, mingw, pw32 ]: _LT_TAGVAR missing for `fix_srcfile_path'.
[ sysv4, sysv5 ]: _LT_TAGVAR missing for `export_dynamic_flag_spec'.
2004-12-28 13:17:27 +00:00
Ralf Wildenhues
e6c9168b66 * m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix variable
quoting; allows lt_ECHO to match --fallback-echo again.
2004-12-28 12:56:47 +00:00
Peter O'Gorman
fc9914a1d1 * config/ltmain.m4sh (func_extract_archives,func_extract_an_archive):
On darwin, uniq can not take the flags -cd together, thanks to Ralf
for the fix, also ar does not accept N, so we use the fact that
ar x libfoo.a foo.o will always extract the first foo.o in the
archive and we then delete foo.o from the archive, which will also
delete only the first foo.o, then rinse and repeat. Also add markers
for the testuite.
* m4/libtool.m4 (_LT_CONFIG): Add a marker so that we can use a sed
expression to find the shell functions in libtool.
* tests/functests.at: Test this feature.
* tests/testsuite.at: Add the test.
* tests/Makefile.am: Add the test.
2004-12-20 15:03:39 +00:00
Ralf Wildenhues
f463368fa2 * m4/libtool.m4 [solaris] (_LT_LINKER_SHLIBS): Add '${wl}-z ${wl}text'
to archive_cmds and archive_expsyms_cmds.  I.e., do not allow nopic in
shared libraries.
2004-12-20 08:15:13 +00:00
Ralf Wildenhues
94b8d897d5 * m4/libtool.m4 [solaris] (_LT_LINKER_SHLIBS): Change no_undefined_flag
back to ' -z defs'.  Problems with linking against libgcc.a will have
to be resolved differently.
2004-12-20 08:06:21 +00:00
Ralf Wildenhues
323fcff5d0 * libtool.m4 [linux] (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG):
Match icpc* and ecpc* (ia64 version of icpc) instead of only icpc.
2004-12-18 21:53:01 +00:00
Bob Friesenhahn
ced1775490 * libltdl/lt__strl.c, libltdl/libltdl/lt__strl.h: New files to
emulate strlcat and strlcpy, which support size-bounded string
copying and concatenation for improved security.
* libltdl/Makefile.am: Optionally build source files
libltdl/lt__strl.c and libltdl/libltdl/lt__strl.h.
* m4/ltdl.m4 (LTDL_INIT): Add checks for strlcat and strlcpy.
2004-12-13 21:09:19 +00:00
Albert Chin-A-Young
0401fed0dd * libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
Append -G to link command-line on AIX to honor -brtl on command-line
(runtime linking). Already done for IBM C/C++ compilers.
2004-12-13 16:23:11 +00:00
Ralf Wildenhues
54af6ecd03 * m4/libtool.m4 (_LT_CHECK_XSI_SHELL, _LT_PROG_XSI_SHELLFNS): New macros
to detect at `configure' time whether the shell supports some XSI
extensions and to copy appropriate versions of new shell functions into
`libtool' through `config.status'.  Copied functions are Bourne and XSI
variants of func_basename, func_dirname (a variant of `dirname' suitable
for libtool).  (_LT_SETUP) Require _LT_CHECK_XSI_SHELL.
(_LT_CONFIG)  Use _LT_PROG_XSI_SHELLFNS to insert into `libtool' at marker.
2004-12-09 17:10:10 +00:00
Ralf Wildenhues
e5874b17a0 * m4/libtool.m4 (_LT_LINKER_SHLIBS): Treat linux-dietlibc with
the `diet' compiler wrapper (as opposed to the `diet-dyn'
wrapper) as a static-only platform.
* NEWS: Updated.
2004-11-29 21:12:41 +00:00
Ralf Wildenhues
60fbf440cb * m4/ltdl.m4 (LT_LIB_DLLOAD): Define HAVE_LIBDLLOADER if we
have a dlloader to preload.
* libltdl/ltdl.c (lt_dlinit): Only preload if HAVE_LIBDLLOADER, only
declare preloaded_symbols then.  Fixes libltdl on static platforms.
* NEWS: Updated.
2004-11-29 21:00:20 +00:00
Jeff Squyres
c541367158 * m4/libtool.m4 [linux] (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
_LT_LANG_CXX_CONFIG), NEWS, THANKS: Support for Portland Group
(aka "pgi") compilers.
2004-11-24 17:25:38 +00:00
Ralf Wildenhues
d4d7f8b45b * m4/libtool.m4 (_LT_TAG_COMPILER): Document that with_gcc is
tag-dependent.
2004-11-22 15:52:22 +00:00
Ralf Wildenhues
e2984dc45e * m4/libtool.m4, tests/demo-nopic.test: Undo bogus commit. 2004-11-22 15:48:32 +00:00
Ralf Wildenhues
3e437f3043 * config/ltmain.m4sh (func_mode_link), tests/objectlist.test:
Make sure the argument to `-objectlist' may contain spaces.
2004-11-22 15:43:44 +00:00
Daniel Reed
30ab30e06a * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: Interpret
`include' statements in toplevel ld.so.conf file.
2004-11-19 07:18:30 +00:00
Ralf Wildenhues
5f07f593a8 * m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin/mingw/pw32]:
tag-protect setting of ld_shlibs.
2004-11-19 07:01:48 +00:00
Ralf Wildenhues
e080898fc4 * m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[aix4/aix5 !ia64]: Set whole_archive_flag_spec to '$convenience'
so convenience libs are really added to the link cmdline.
2004-11-17 15:24:03 +00:00
Mats Rynge
09d37d85d5 * libtool.m4 [linux]: Use only the CC basename in case statment
when checking for icc/ecc. Allows for setting CC to the full path
to the compiler.
2004-11-17 14:06:50 +00:00
Mats Rynge
db04779e4e * libtool.m4 [solaris]: Added missing 'with linker' flags to
-z allextract ... -z defaultextract flags
2004-11-17 14:02:54 +00:00