Commit Graph

52 Commits

Author SHA1 Message Date
Scott James Remnant
631335306e * m4/ltversion.in: Add a serial number to this file otherwise
libtoolize will refuse to copy it into $pkgdatadir, where it
is needed by m4/libtool.m4.
2004-02-15 17:46:37 +00:00
Peter O'Gorman
62e21425d6 * m4/libtool.m4, ltmain.in: Rename shrext to shrext_cmds. 2004-02-15 13:30:01 +00:00
Albert Chin-A-Young
04539d396a Scott James Remnant <scott@netsplit.com>
* ltmain.in: Fix typo: duplcations -> duplications,
Fix indentation of a handful of badly indented blocks,
Fix last remaining use of 'grep' to $GREP,
Remove unnecessary trailing slash where we break a line on a
command separator.
* m4/libtool.m4: Also remove unnecessary trailing slash where
we break a line on a command separator.
2004-02-12 23:47:46 +00:00
Scott James Remnant
5a9ea63111 * m4/ltoptions.m4: This got committed by an over-keen Gary,
but the support for this isn't ready yet and if aclocal decides
to m4_include this (which it will) you'll get a non-functioning
libtool.  Removed.
2004-02-12 23:37:28 +00:00
Scott James Remnant
707234675b * bootstrap, m4/libtool.m4: Argh, Gary went crazy after cvsapply
went crazy and backed out more than he should've.  This patch puts
some of it back again.
2004-02-12 21:57:07 +00:00
Albert Chin-A-Young
83853d4f0f * m4/libtool.m4: Fix typo: testring -> teststring. 2004-02-11 12:55:52 +00:00
Gary V. Vaughan
c695fe18f5 * NEWS, bootstrap, configure.ac, ltmain.in, m4/libtool.m4:
* m4/lt~obsolete.m4, tests/cdemo/configure.ac: Arghh.  cvsapply just
went crazy and committed a bunch of stuff that shouldn't have been
in the last changeset.  The patch backs it all out.
2004-02-10 20:45:41 +00:00
Gary V. Vaughan
c72336465d * config/mailnotify: New file for mailing commit notifications,
imported from cvs-utils.
* commit: Updated from cvs-utils and tweaked for libtool.
* Makefile.am (EXTRA_DIST): Add config/mailnotify.
2004-02-10 19:47:00 +00:00
Gary V. Vaughan
4a9ead32fb * m4/ltversion.in: New file to capture what version number macros
are being used.
* Makefile.am (m4/ltversion.m4): New rule to create it from
m4/ltversion.in.
(nodist_pkgmacro_DATA): Add m4/ltversion.m4.
(EXTRA_DIST): Add m4/ltversion.in.
* m4/libtool.m4 (AC_LIBTOOL_SETUP): AC_REQUIRE LTVERSION_VERSION
from ltversion.m4.
* bootstrap: Call the Makefile.am to create an initial
m4/ltversion.m4.
* ltmain.in: Diagnose version mismatches of various flavours.
* TODO: Remove mismatch item.
* NEWS: Updated.
2004-02-06 17:23:40 +00:00
Gary V. Vaughan
2c0e1e7b8c * m4/libtool.m4 (AC_LIBTOOL_SETUP): Catch unexpanded macros with
beginning with LT_ and _LT_.
* configure.ac (LT_MAJOR, LT_MINOR, LT_MICRO, LT_ALPHA): Renamed
to lt_major, lt_minor, lt_micro, lt_alpha to save triggering the
unexpanded macros error.
2004-02-06 14:38:56 +00:00
Gary V. Vaughan
849a7b9f99 * m4/libtool.m4 (AC_PROVIDE_IFELSE): Removed. We now require
Autoconf 2.58, which ships this macro anyway.
2004-02-06 14:12:10 +00:00
Gary V. Vaughan
e9b269e4fa * m4/libtool.m4 (LT_PREREQ): Declare the minimum release number
that is required for the calling code.
* doc/libtool.texi (AC_PROG_LIBTOOL): Document it.
* NEWS: Updated.
2004-02-06 13:58:06 +00:00
Peter O'Gorman
a9151fe677 * ltmain.in (infer_tag, win32_libid): Style changes. Rename
infer_tag to func_infer_tag and win32_libid to func_win32_libid.
* m4/libtool.m4 (cygwin): rename win32_libid to func_win32_libid.
2004-02-05 14:53:16 +00:00
Peter O'Gorman
56ffee0e55 * m4/libtool.m4 (_LT_CONFIG_STATUS_DECLARE): Change `echo to
`$echo, causes problems when builtin echo is broken. Reported
by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2004-01-31 12:03:29 +00:00
Jeff Squyres
0085cef913 * m4/libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Some compilers
(e.g. Intel Linux icc compiler) write temporary files to the current
directory. These compilers do support -c and -o simultaneously but
wrongly fail the test due to the failure to create temporary
files. It is incorrect to penalize compilers which write temporary
files to the current directory so the 'chmod -w .' is therefore
removed.
2004-01-22 19:01:19 +00:00
Gary V. Vaughan
a9d07029d6 * m4/libtool.m4 (LT_AC_PROG_EGREP): Wrapper for AC_PROG_GREP.
AIX has a brain-dead grep that only handles lines < 2048
characters.  Default GREP incase we are not using a future
autoconf that sets it for us :-)  Changed all callers to use $GREP
instead of grep, and to AC_REQUIRE LT_AC_PROG_EGREP.
Declare GREP as a libtool config var.
* ltmain.in: Use it.
* tests/sh.test (scripts): Accept `if $GREP "^foo=bar"' by
tightening the regexp.
Reported by Albert Chin-A-Young  <china@thewrittenword.com>
2004-01-22 15:27:25 +00:00
Nick Hudson
5b48aab18d * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [netbsd*]: Remove
gratuitous ${libname}${release}${shared_ext} from
library_names_spec.
2004-01-21 14:38:54 +00:00
Peter O'Gorman
e6c5a654ae * m4/libtool.m4 (AC_PROG_LD_RELOAD_FLAG): On darwin change the
reload_cmds to use $CC, otherwise ld will thin out any fat
objects.
2004-01-21 14:16:34 +00:00
Gary V. Vaughan
b6b8a7c3b1 * configure.ac (AC_CONFIG_HEADERS): Create config.h in
$top_srcdir.
* m4/ltdl.m4 (AC_LIB_LTDL): Run AC_CONFIG_HEADERS for the user if
necessary. Calculate filename from first argument to
AC_CONFIG_HEADERS, and substitute as CONFIG_H.
* libltdl/Makefile.am (AM_CPPFLAGS): Make sure we are searching in
$top_srcdir for headers.
(DEFS): Override the default HAVE_CONFIG_H with the config.h
filename.
(ltdl.lo): Reference config.h via $(CONFIG_H).
* libltdl/ltdl.c (HAVE_CONFIG_H): Ditto.
2004-01-16 22:03:19 +00:00
Scott James Remnant
ce6c2776cf * m4/lt~obsolete.m4: Add a file containing aclocal-fooling
macro definitions which stop the contents of an installed
libtool.m4 ending up in our aclocal.m4 when we bootstrap.
* Makefile.am (pkgmacro_DATA): Note that we don't need to add
lt~obsolete.m4 to this list.

* m4/libtool.m4 (_LT_COPYING): Factor out copyright message so it
2004-01-15 19:16:51 +00:00
Gary V. Vaughan
d3588ab4b0 (AC_LIBTOOL_CONFIG): Refactor to be more readable. Only add
tags if a compiler was found; ie if you have no gcj compiler,
don't tack the GCJ tag onto the generated libtool script.
2004-01-15 08:36:48 +00:00
Peter O'Gorman
454327bf10 * m4/libtool.m4: Quote shrext as it is evaled in ltmain. 2004-01-13 12:24:52 +00:00
Gary V. Vaughan
c4e30f595b * Makefile.am (aclocal_macros, aclocal_DATA): Removed.
(EXTRA_DIST): Remove m4 macro files; they are automatically
added by automake.
(pkgmacrodir): Where to install libtool macro files.
(pkgmacro_DATA): List installable libtool macro files.
(install-data-local): Remove previous versions of ltdl.m4 and
libtool.m4 from their old location.
* libtoolize.in: Use new pkgmacrodir installed macros when
libtoolizing a project.  Treat libtool.m4 and ltdl.m4 specially,
and func_serial_update() any other files from pkgmacrodir.
(pkgmacrodir): Where to find installed libtool macro files.
(aclocaldir): Removed.
(func_copy_all_files): Add an optional callback parameter to
control how files are copied.  If the callback is passed, don't
tell it whether it can copy or not.
(func_serial): Exchange parameters and make macro_regex optional,
so that this function can be used to extract serial numbers from
files with the traditional /^# serial [1-9][0-9]*$/ syntax.
Changed all callers.
(func_serial_update): Make macro_regex optional last parameter, so
that this function can be used as a callback for
func_copy_all_files().  Changed all callers.
* m4/ltsugar.m4: Add a serial number.
2004-01-08 10:34:52 +00:00
Gary V. Vaughan
3aedc1f02a A complete rewrite of the m4 code involved in the generation of
libtool via config.status.  The old way involved manually
synchronising disparate bits of shell code in several macros, to
quote a copy of a shell variable, put that in config.status, maybe
add it to some quotation loops to prevent early expansion, and
then add a block to _LT_CONFIG_COMMANDS to bring it into the
libtool script.  The new way is to mark shell variables for
propogation using _LT_DECL for language independent variables, or
_LT_TAGDECL for those that need to be propogated in several
language flavours.  The marking can be done in the macro that
probes the variables, and this new m4 machinery takes care of
synchronising all the other bits of code at autoconf time:

* m4/ltsugar.m4:  New file.  Macros that are useful outside the
context of libtool.  Initially, contains some generalised list
management macros, and the scaffolding for dictionary type data
storage and retrieval.
* Makefile.am (aclocal_macros): Install ltsugar.m4.
* m4/libtool.m4 (_LT_DECL): Mark a shell variable for export to
the libtool script, along with a comment, and hints for quoting
and renaming.
(_LT_TAGDECL): Similarly mark a tagged shell variable for export
in each tag.
(lt_decl_tag_varnames, lt_decl_quote_varnames)
(lt_decl_dquote_varnames, lt_decl_varnames_tagged)
(lt_decl_all_varnames):  New utility macros for managing lists of
shell variable names from _LT_DECL and _LT_TAGDECL.
(_LT_CONFIG_STATUS_DECLARATIONS, _LT_CONFIG_STATUS_DECLARE):
Expand to correctly quoted variable declarations in config.status
from all marked shell variables.
(_LT_LIBTOOL_DECLARE): Expand to commented and quoted variable
declaration for libtool tag section.
(_LT_LIBTOOL_CONFIG_VARS, _LT_LIBTOOL_TAG_VARS): Pass all marked
variables to _LT_LIBTOOL_DECLARE.
(_LT_CONFIG_COMMANDS): Use _LT_CONFIG_STATUS_DECLARATIONS and
friends to generate all the variable passing shell code for
config.status, to get marked variables from libtool.m4 into
libtool itself eventually.
(AC_LIBTOOL_CONFIG): Generate marked variable code for libtool tag
configuration.  Changed all client macros to mark variables
suitably rather than the hand pasting that was necessary
previously.
(AC_PROG_SED): Renamed from LT_AC_PROG_SED.
(LT_AC_PROG_SED): Wrap AC_PROG_SED, and mark shell variables for
propogation to the libtool script.
2004-01-07 12:26:25 +00:00
Stefan Nordhausen
a8f3df622a Roll back copyright changes. 2004-01-04 20:45:24 +00:00
Peter O'Gorman
a85084863f * m4/libtool.m4: Ensure that ${ZSH_VERSION+set} is properly escaped. 2004-01-02 23:10:52 +00:00
Peter O'Gorman
9b663ef2e4 * m4/libtool.m4 (CDPATH): Change the CDPATH setting so that it
allows for zsh differences, as noted in the autoconf manual's
Portable Shell - Special Shell Variables section.
2004-01-02 23:04:21 +00:00
Bob Friesenhahn
c4c9b05ac5 Joe Orton <joe@manyfish.co.uk>
* m4/libtool.m4 (AC_LIBTOOL_CONFIG): Add extra blackslash
in front of all the inner double-quotes as this is removed
on Solaris, IRIX and AIX leading to broken definitions
in config.status.
2004-01-02 02:18:03 +00:00
Scott James Remnant
dff2249409 Updated all copyright notices to include 2004.
* NEWS: Next release will be in 2004.
2004-01-02 01:59:11 +00:00
Peter O'Gorman
04990d9b98 * m4/libtool.m4: Move things around so that "setopt NO_GLOB_SUBST"
to make zsh behave wrt  escapes happens early in config.status.
2003-11-28 13:41:22 +00:00
Gary V. Vaughan
098ef77a20 * m4/libtool.m4 (_LT_PROG_LTMAIN): Ensure config.status has a
value for `ac_aux_dir' when automake is not used.
Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
2003-11-19 17:58:40 +00:00
Gary V. Vaughan
fe6fb50bc3 * m4/libtool.m4 (AC_LIBTOOL_SETUP): Uncomment call to
_LT_CONFIG_COMMANDS.
(_LT_AC_TAG_CONFIG, AC_LIBTOOL_CONFIG): Accumulate tag generation
for `config.status' using _LT_CONFIG_SAVE_COMMANDS.  Remove
AC_MSG_NOTICE noise now that libtool is generated by a single
config.status tag.
* Makefile.am (libtool): Specify CONFIG_COMMANDS properly now that
libtool is generated in one pass.
2003-11-17 17:20:09 +00:00
Gary V. Vaughan
a69688b769 Run our configure.ac files through Autoconf 2.59's autoupdate, and
then tweak the results by hand:

* m4/libtool.m4 (AC_PROG_LD): In common with all the other
AC_PROG_ macros, AC_SUBST the discovered LD.
(AC_PROG_NM): Similarly for NM.
(LT_AC_PROG_SED): Similarly for SED.
* configure.ac: No need to SUBST NM and LD manually any more.
(AC_PREREQ): Conservatively downgrade from 2.59 to 2.54.
* tests/cdemo/configure.ac, tests/demo/configure.ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Ditto.
* m4/libtool.m4 (AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC,
AM_PROG_LD, AM_PROG_NM): AU_DEFUN these macros so autoupdate can
use the newer definitions.
2003-11-14 11:12:22 +00:00
Gary V. Vaughan
c866b386af * m4/libtool.m4 (AC_LIBTOOL_SETUP): Don't define the value for
ltmain unconditionally.
(_LT_PROG_LTMAIN): New macro to ensure that the
shell variable `ltmain' actually points at a suitable `ltmain.sh'.
(_AC_PROG_LIBTOOL): Require it.
(AC_LIBTOOL_CONFIG, _LT_AC_TAG_CONFIG): Invoke it.
* Makefile.am (libtool): ltmain.sh is in the build tree.
* libltdl/configure.ac: Ditto.
2003-11-11 16:49:32 +00:00
Scott James Remnant
45706c9614 * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [linux]: Include
directories found in /etc/ld.so.conf in sys_lib_dlsearch_path_spec.
2003-11-10 21:04:48 +00:00
Gary V. Vaughan
d9dfb4bf2f * m4/libtool.m4 (AC_LIBTOOL_TAGS, AC_ENABLE_SHARED,
AC_DISABLE_SHARED, AC_ENABLE_STATIC, AC_DISABLE_STATIC,
AC_ENABLE_FAST_INSTALL, AC_DISABLE_FAST_INSTALL, AM_PROG_LIBTOOL,
AM_ENABLE_SHARED, AM_ENABLE_STATIC, AM_DISABLE_SHARED,
AM_DISABLE_STATIC): These macros must be AC_DEFUNed after all,
otherwise aclocal can't find them when it tries to construct
`aclocal.m4'.
2003-11-07 16:08:53 +00:00
Robert Millan
b9ddab90b7 * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD) [GNU/KNetBSD]: Detect
inter-library dependencies.
2003-11-07 03:18:16 +00:00
Gary V. Vaughan
d6aadb9059 * m4/libtool.m4 (_LT_AC_FILE_LTDLL_C): Removed; no longer in use. 2003-11-06 18:52:01 +00:00
Gary V. Vaughan
a2db96af06 * m4/libtool.m4: s/ifelse(/m4_if(/g
(_LT_AC_SYS_LIBPATH_AIX, _LT_AC_SHELL_INIT,
_LT_AC_PROG_ECHO_BACKSLASH, AC_LIBTOOL_LINKER_OPTION,
AC_LIBTOOL_TAGS, _LT_AC_TAG_CHECK, _LT_AC_TAG_CONFIG,
AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC,
AC_DISABLE_STATIC, AC_ENABLE_FAST_INSTALL,
AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_C_CONFIG,
_LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG,
_LT_AC_TAGVAR, AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC): Use
m4_define instead of AC_DEFUN for internal macros that do not
AC_PROVIDE or AC_REQUIRE, and documented user macros that cannot
be AC_REQUIREd because they need arguments, or because that would
violate the documented API.
2003-11-06 18:50:24 +00:00
Gary V. Vaughan
d85043d90a * m4/libtool.m4 (AC_LIBTOOL_SETUP): Add a new
delay_single_quote_subst sed script to quote single quotes in
variables that are copied to `config.status'.
(_LT_CONFIG_STATUS_DECLARE): New macro to apply
delay_single_quote_subst to a named variable.
(AC_LIBTOOL_CONFIG): Use _LT_CONFIG_STATUS_DECLARE to declare all
`configure' variables that are copied to `config.status'.
(AC_LIBTOOL_PROG_COMPILER_PIC): Fix a quoting bug exposed by
_LT_CONFIG_STATUS_DECLARE using the null quadrigraph in the
rvalues of lt_prog_compiler_pic.
2003-11-06 18:34:22 +00:00
Scott James Remnant
b240d132dd * m4/libtool.m4: Include Owen Taylor's patch to recognise the 'R'
symbol type so read-only symbols can be exported when combining
GCC and Solaris LD.
2003-11-06 17:28:31 +00:00
Scott James Remnant
fb5e6cda96 * m4/libtool.m4: Include James Henstridge's patch to fix the
-export-symbols and -export-symbols-regex options under Linux.
2003-11-06 17:27:37 +00:00
Charles Wilson
38f1ad3d3a * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin*, mingw*]:
when extracting symbols from an import lib (occurs if
--enable-shared --disable-static), the output of
$global_symbol_pipe is not the same as 	when extracting from a
static library (the default case). Add extra filters to
$export_symbols_cmds to process this sort of output in addition to
'normal' static-lib output.
2003-11-06 13:57:25 +00:00
Peter O'Gorman
a73b2a626e * m4/libtool.m4 (Darwin): Fix stupidities for darwin tags support.
Makes it work again if AC_LIBTOOL_TAGS is specified in configure.ac.
Bug reported by Joe Orton and Christian Schaffner.
2003-10-30 14:28:00 +00:00
Gary V. Vaughan
b28de94488 Start to eliminate the double run of configure in a fresh CVS
checkout by generating ltmain.sh, using that to create libtool,
and then adding the tags to that, all from config.status.

* configure.ac (AC_CONFIG_FILES): Make config/ltmain.sh, and copy
it to libltdl.
* Makefile.am ($(srcdir)/config/ltmain.sh): This file is now
created by config.status.  Adjust this rule.
(libtoolize): Set CONFIG_COMMANDS to empty to prevent regenerating
the libtool script as a side effect of running this rule.
* libtool.m4: Bump serial number.  Fix comment typos.
(_LT_CONFIG_LIBTOOL_INIT, _LT_CONFIG_LIBTOOL,
_LT_CONFIG_SAVE_COMMANDS, _LT_CONFIG_COMMANDS: New macros.  They
don't work for some reason - the variable value quoting in the
init section is all wrong.  Not used at the moment.
(AC_LIBTOOL_CONFIG): Generate libtool from config.status.
(_LT_AC_TAG_CONFIG): Add the tags in config.status.
(compiler_DEFAULT): Save the compiler value for the DEFAULT tag,
or it gets overwritten by the other macros.
(EOF): Globally replace with _LT_EOF to avoid namespace pollution.
* tests/demo/configure.ac (STATIC): Check $enable_static instead
of running ./libtool which doesn't exist yet.
(BINARY_HELLDL): Check $lt_cv_sys_global_symbol_pipe with case
instead of grepping ./libtool which doesn't exist yet.
* tests/pdemo/configure.ac (STATIC, BINARY_HELLDL): Ditto.
* doc/libtool.texi (AC_PROG_LIBTOOL): Add some notes about trying
to get config details from `libtool --config'.
* NEWS: Updated.
2003-10-21 15:03:57 +00:00
Bob Friesenhahn
bd775af882 * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): For MinGW, reverted DLL
check method back to a working objdump-based test.  This is not as
concrete a test as using the 'file' command, but it does not
require that the 'file' command be available.
2003-10-17 03:52:01 +00:00
Bob Friesenhahn
e508b62dbe * doc/libtool.texi (AC_LIBTOOL_TAGS): Incorporate documentation
for AC_LIBTOOL_TAGS macro to specifify libtool tags. The now
defunct --with-tags option was never documented.


* m4/libtool.m4: Restrict the list of tags that can be created
with a new AC_LIBTOOL_TAGS([tag1 tag2 ...]) macro. Deprecate
--with-tags.
2003-10-15 16:02:04 +00:00
Peter O'Gorman
884ec923bd * m4/libtool.m4: Speed up max_cmd_len check. 2003-10-11 16:51:46 +00:00
Marcus Comstedt
5978456ccd * m4/libtool.m4 [amigaos-ppc, amigaos-m68k]: Differentiate between
amigaos on ppc and m68k.
* NEWS: Updated.
2003-10-07 17:03:15 +00:00
Scott James Remnant
fe03e46514 * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Remove dead code
for platforms that have been using pass_all for some time now.
2003-10-07 14:18:24 +00:00