Commit Graph

121 Commits

Author SHA1 Message Date
Gary V. Vaughan
0e072fa33e Move the echo detection code to a macro in libtool.m4. The code
at the top ofltconfig.in is ugly, but will go away when the rest
of ltconfig is migrated.

* Makefile.am (libtool):  Pass the value of $ECHO to ltconfig as
an environment variable.
* libtool.m4 (_LT_AC_PROG_ECHO_BACKSLASH): Quote the ECHO value
correctly so that it inserts the correct code into configure.in
suitably quoted for M4 expansion.  This code needs to be near
the top of configure.in as it calls itself recursively, so I
am using AC_DIVERSION_NOTICE (or simply NOTICE on CVS
Autoconf).  The value of ECHO is also substitued into the
Makefile to be used when Make calls ltconfig to generate
libtool, so another layer of quotation is required for the
Makefile.
(AC_LIBTOOL_SETUP):  Use it.
* ltconfig.in: Accept a value for ECHO from the environment, and
carefully substitue for $0 if it is present in the ECHO value.
Because ECHO was quoted for Make, when ltconfig is called by
configure, it is overquoted, and one layer of quotes must be
stripped.
2000-08-31 17:23:44 +00:00
Mo DeJong
53779eeb79 * libtool.m4 (AC_PROG_NM): Fix macro so that it
finds a cross NM on the PATH.
2000-07-10 09:42:21 +00:00
Alexandre Oliva
877cf82fdb * libtool.m4 (lt_cv_deplibs_check_method, freebsd): Do not depend
on $version_type; check for ELF support as in other BSDs.
2000-07-10 06:08:09 +00:00
Syd Polk
b33dc22671 * libtool.m4 (AC_LIBTOOL_SETUP): Do not generate a libtool based
on target; use host instead.
2000-06-18 02:59:36 +00:00
Gary V. Vaughan
a2785e0c99 * libtool.m4 (netbsd*): Use -L option to file_magic_cmd as for
freebsd (below).
* libtool.m4 (netbsd ELF): support file_magic.
From Dan Winship <danw@helixcode.com>.
2000-05-29 18:02:07 +00:00
Steven M. Schultz
6aa20f59be * libtool.m4 (bsdi4*): Add -L option to bsdi4's file_magic_cmd
command.  Under BSD/OS 4.1 several libraries are now symlinks
rather than regular files.  Adding -L tells the file program
to follow the symlink.
2000-05-29 17:15:37 +00:00
Gary V. Vaughan
9e50af8b4e * libtool.m4 (i*86-*-freebsd*): Forgot to changequote(,). 2000-05-29 17:04:11 +00:00
Gary V. Vaughan
1d15e88e1e * NEWS: Updated.
* libtool.m4 (i*86-*-freebsd*): Support a.out shared libs.
From <suzukis@file.phys.tohoku.ac.jp>
2000-05-29 16:53:24 +00:00
Bernhard Rosenkraenzer
1e230b6d59 * libtool.m4: adding ia64 as supported linux platform 2000-05-29 14:27:37 +00:00
Alexandre Oliva
30462d439d Adjust docs 2000-05-14 08:24:37 +00:00
Alexandre Oliva
adfc90ef07 * libtool.m4 (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE):
Pick LIBLTLD from top_builddir and INCLTDL from top_srcdir.
* mdemo/configure.in: Remove comments on
AC_LIBLTLD_CONVENIENCE.
2000-05-14 08:23:57 +00:00
Alexandre Oliva
4b409d0c8f * libtool.m4 (_AC_PROG_LIBTOOL): Renamed from...
(AC_PROG_LIBTOOL): Just AC_REQUIRE(_AC_PROG_LIBTOOL), to avoid
effects of multiple runs.
2000-05-14 08:07:16 +00:00
Pavel Roskin
2b5012f4e7 * libtool.m4 (AC_LIBTOOL_SETUP): CVS autoconf no longer sets
target to "NONE", but to an empty string.
2000-05-06 10:24:27 +00:00
John Wehle
5760fb410d * libtool.m4 (hpux10.20*): use file_magic for
inter-library dependency tracking.
2000-05-03 00:34:45 +00:00
Thomas Tanner
d604f0951b * NEWS: update
* libtool.m4: add AC_LIBTOOL_PICMODE
* ltconfig.in: move pic_mode checks to ltmain.in
* ltmain.in: add -prefer-pic and -prefer-non-pic
2000-04-10 18:39:30 +00:00
Thomas Tanner
ec4406e4ee * ltmain.in: remove duplicates from deplibs, handle
interdependent libraries (e.g. -la -lb -la),
  this requires adding deplibs in reverse order

* ltmain.in: link dlpreopened libraries before other libraries
  (reported by Pavel Roskin)
* mdemo/Makefile.am: build and link libsub.la
* mdemo/sub.c: new file used by both dlopened modules
* mdemo/foo*: use sub() defined in libsub
* tests/dryrun.test: build libsub.la

* mdemo/Makefile.am: always link mdemo.static with -static
* mdemo/configure.in: ditto

* ltmain.in: fix dlopen/dlpreopening of objects

* ltmain.in (ILD): fix misplaced `continue' in -R* argument handler

* ltmain.in: merge duplicated code of clean and uninstall mode

* libtool.m4: recognize powerpc*linux* (reported by
  Dirk A. Mueller <dmuell@gmx.net>)
2000-02-23 23:10:05 +00:00
Gary V. Vaughan
43befcdf5a * configure.in: Due to a bug in autoconf-2.13 implementation of
AC_SUBST, `AC_SUBST(FILE)' can never work.  Use MAGIC as the
holder of the command to run in file_magic_cmd instead.
* ltconfig.in: s/FILE/MAGIC/g.
* libtool.m4 (AC_PROG_LIBTOOL): set MAGIC in the environment when
calling ltconfig.
(AC_PATH_MAGIC):  renamed from AC_PATH_FILE.
(AC_PATH_TOOL_PREFIX):  s/FILE/MAGIC/g.  Also set file_magic_cmd
to '${MAGIC}' so that make can grok it.
* Makefile.am (libtool):
(clibtool): ditto.
2000-02-22 23:35:52 +00:00
Ossama Othman
f1f191549b * libtool.m4 (lt_cv_cc_needs_belf): Set the test language to C
prior to executing the test that checks if the C compiler needs
"-belf."
Reported by Chris Butler <chrisb@sandy.force9.co.uk>
2000-01-31 00:15:31 +00:00
Gary V. Vaughan
c49cc362a2 * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use changequote to
protect `[' and `]' in deplibs_check_method.
2000-01-28 23:28:57 +00:00
Thomas Tanner
58931da319 fix severe bugs reported by Elrond <Elrond@Wunder-Nett.org>
* ltconfig.in: replace $objdir with $output_objdir

* ltmain.in: change to the builddir before relinking programs

* ltmain.in, ltconfig.in, libtool.m4, ltdl.m4:
  remove unnessary spaces from line endings
2000-01-24 20:34:46 +00:00
Thomas Tanner
8683e2f1b4 * ltmain.in: rewrite of the ILD code, merge linking code for
programs, libraries and objects, allow linking of shared libraries
  against static libraries/objects on platforms that support it
  but print a warning, fix some typos

* partially revert my previous change and
  update only copyright notices of files that were actually modified

* NEWS: update

* libltdl/Makefile.am: version number was wrong

* libltdl/ltdl.c (tryall_dlopen): revert Gary's change
  since it breaks dlpreopening
* ltdl.m4: ditto

* libltdl/ltdl.c (sys_search_path): search in the system default
  library search path, too
* ltdl.m4 (AC_LTDL_SYSSEARCHPATH): extract the path

* libltdl/ltdl.c (find_module): remove bogus file_not_found_error

* libltdl/ltdl.c (load_deplibs): implement loading of dependency
  libraries
* libltdl/ltdl.c (unload_deplibs): implement unloading of dependency
  libraries
* libltdl/ltdl.c (lt_dlexit): correctly close all modules and
  their dependencies

* libltdl/ltdl.c (lt_dlforeach): new function
* libltdl/ltdl.h: ditto
* doc/libtool.texi (using libltdl): document it

* libtool.m4: reformatting, only add -I$topsrc_dir/libltdl to
  INCLTDL

* libtoolize.in: reformatting
* ltconfig.in: reformatting
* ltmain.in: reformatting

* mdemo/configure.in: AC_SUBST INCLTDL
* mdemo/Makefile.am: use INCLTDL

* tests/Makefile.am: reexport OBJEXT and EXEEXT
* tests/dryrun.test: use them for building main.obj and mdemo.exe
2000-01-19 20:34:37 +00:00
Gary V. Vaughan
1eb294104b * libtool,m4 (AC_LIBTOOL_SETUP): The result of lt_cv_need_dllmain
was set to the opposite of what it should be.
* configure.in (AC_LIBTOOL_WIN32_DLL):  Call to this macro is
required for libtool configury to test lt_cv_need_dllmain on
Windows.
2000-01-14 12:14:41 +00:00
Gary V. Vaughan
f5933deba4 * libtool.m4 (AC_LIBLTDL_CONVENIENCE): Add -I${top_srcdir}/libltdl
to default INCLTDL for VPATH.
(AC_LIBLTDL_INSTALLABLE): ditto.
Reported by Tom Tromey <tromey@cygnus.com>
2000-01-13 00:52:59 +00:00
Thomas Tanner
47938d46eb * update all copyright notices to 2000
* doc/libtool.texi (using libltdl): document new lt_dlinfo struct,
  replace NULL with @code{NULL}, document lt_dlsetdata(),
  lt_dlgetdata() and lt_dlgetinfo()
* libltdl/Makefile.am: increment interface version number
* libltdl/configure.in: set version number to 1.1
* libltdl/ltdl.c: make some variables public by moving them
  to the info struct, add support for application specific data
  within module handles, new lt_dlsetdata(), lt_dlgetdata() and
  lt_dlgetinfo() functions,
  fix memory leaks, minor cleanups
* libltdl/ltdl.h: ditto
* mdemo/main.c: demonstrate use of lt_dlgetinfo,
  improved handling of errors

* ltconfig.in: set hardcode_into_libs = yes for GNU/Hurd, Linux
  and Solaris, only hardcode *all* run-paths if hardcode_into_libs
  is set to 'all', otherwise hardcode only user-specified rpaths
  into libraries
* ltmain.in: minor cleanups, we don't need to add user-specified
  rpaths to compile_rpath, finalize_rpath is sufficient

* ltconfig.in: transform linux* -> *linux-gnu* _after_ host_os has
  been set! (reported by Bruno Haible <haible@ilog.fr>)

* configure.in: AC_SUBST reload_flag, deplibs_check_method
  and file_magic_cmd

* README: use 'libtool --version' instead of 'ltconfig --version'
  (suggested by Francios Pinard <pinard@iro.umontreal.ca>
2000-01-13 00:28:09 +00:00
Alexandre Oliva
5c216918b1 * libtool.m4: Use host when --target is not specified. 1999-12-03 02:57:29 +00:00
Alexandre Oliva
6045c2443d * libtool.m4: Do not AC_SUBST anything other than LIBTOOL. 1999-12-03 02:09:19 +00:00
Gary V. Vaughan
15a84cc8d3 * libtool.m4: better use of $target instead of $host to support
cross compilation.
Reported by Sam Latinga <slouken@devolution.com>
1999-11-26 00:34:17 +00:00
Thomas Tanner
974da4c714 * NEWS: updated
* THANKS: added Olly Betts and Pavel Roskin
* doc/libtool.texi: fix typo

* fix major bugs which rendered libtool virtually
  unusable (i.e. not portable):
* ltconfig.in: don't hardcode system dependent variables in ltconfig!!
  but set sane defaults
* Makefile.am: pass variables from AC_LIBTOOL_SETUP to ltconfig
* libtool.m4: ditto, fix typo in AC_PROG_LD_RELOAD_FLAG

* ltconfig.in: use old_deplibs for archives, too
  remove second occurence of sysv5
* ltmain.in: fix typo, fix the second occurence of -DPIC, too

* libltdl/Makefile.am: increment version number, fix typo
* libltdl/ltdl.c (lt_dlsym): don't report an error if the
  libltdl-style symbol name wasn't found


* ltconfig.in: add support for Unixware (sysv4.2uw2*)
1999-11-02 12:33:05 +00:00
Olly Betts
524e55494a * libtool.m4: Third time lucky, with Tor's patch. 1999-10-28 20:18:15 +00:00
Tor Lillqvist
861e305993 * libtool.m4: these was a missing `*' in the -mno-cygwin
match.
* ltconfig.in (cygwin, ltdll_obj): fixed a quoting error.
(export_symbols_cmds): added missing cosmetic newline.
1999-10-20 18:30:08 +00:00
Tor Lillqvist
1d0dc16aaf * libtool.m4: test command used == which should be =.
Support -mno-cygwin flag for building mingw32 dlls.
* ltconfig.in (file_magic_cmd): add missing quotes.
(deplibs_check_method): and here.
1999-10-18 20:03:57 +00:00
Gary V. Vaughan
777c2b07c7 * libtool.m4 (AC_PATH_FILE): new macro replaces
AC_PATH_TOOL_GREP_OUTPUT.
(AC_PATH_TOOL_PREFIX): new macro replaces
AC_PATH_PROG_GREP_OUTPUT.
(AC_LD_RELOAD_FLAG):  migrated from ltconfig.in.
(AC_DEPLIBS_CHECK_METHOD): ditto.
* ltconfig.in (reload_flag): moved to libtool.m4.
(deplbs_check_method): ditto.
1999-10-10 00:47:55 +00:00
Gary V. Vaughan
692d6c3975 * libtool.m4 (AC_PATH_PROG_VERSION_GREP): removed in favour of the
more general AC_PATH_PROG_GREP_OUTPUT.
(AC_PATH_TOOL_VERSION_GREP): removed in favour of the more general
AC_PATH_TOOL_GREP_OUTPUT.
(AC_PROG_LIBTOOL):  Search for a working find program in the
user's PATH using the new macros.
1999-10-07 15:40:07 +00:00
Gary V. Vaughan
3ad30f497c * ltconfig.in: Set $FILE to @FILE@ for substitution with
the value found in libtool.m4 at configure time.
* libtool.m4 (AC_PATH_TOOL_GREP_VERSION):  New macro, combines
AC_PATH_PROG and AC_CHECK_TOOL with a test which greps the
output of $ac_dir/${ac_prefix}<tool> --version for a
given regex.
(AC_PATH_PROG_GREP_VERSION):  New macro used by the above.
(AC_LIBTOOL_SETUP): Use the new macros to search the PATH
[starting at /usr/bin] for a file program which accepts
--version and has "file" in its --version output.
1999-10-03 20:41:21 +00:00
Thomas Tanner
ef128a41ba * NEWS: new -no-install flag
* configure.in: fix typo
* doc/libtool.texi(Link mode): document -no-install flag,
  correct -no-fast-install docs
* libtool.m4: check for "file" command
* ltconfig.in: don't hardcode /usr/bin/file, remove second
  definition of sysv5, replace linkopts -> linker_flags
* ltmain.in: add new -no-install flag, print help for -no-install
  and -no-fast-install flags


* ltmain.in: always create output_objdir


* libltdl/Makefile.am: don't preserve file attributes when
  installing the libltdl sources
1999-10-03 16:36:32 +00:00
Gary V. Vaughan
52a93a8718 * libtool.m4: be sure to AC_SUBST values no longer tested in
ltconfig.in.
* ltconfig.in: replaced several of the simple feature tests with
substitutions from config.status.
* Makefile.am (ltconfig): generate ltconfig with config.status.
* configure.in (AC_OUTPUT): generate ltconfig with config.status.
1999-10-01 16:07:39 +00:00
Gary V. Vaughan
d05c36e4e9 * libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return
stripping.
* ltconfig.in: ditto.
From Olly Betts <olly@muscat.co.uk>
1999-08-03 11:44:17 +00:00
Olly Betts
93a647af43 * libtool.m4 (AC_PROG_LD): strip carriage returns from the
output of gcc -print-prog-name=ld.
* ltconfig.in: ditto.
1999-08-02 22:24:34 +00:00
Olly Betts
ee8b053174 * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops. Fix some
typos made by Evil Gary while (mis)applying my patch :-).
1999-07-26 15:16:10 +00:00
Olly Betts
fa156a1cad * libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): On second
thoughts, only probe for -mdll vs -dll on mingw, and revert to
the old `-Wl,--dll -nostartfiles' on cygwin.
1999-07-26 12:45:03 +00:00
Olly Betts
d4a41297aa * NEWS: Note new user visible changes.
* libtool.m4 (mingw32, AC_LIBTOOL_SETUP): probe for -mdll vs -dll
under cygwin/mingw.
probe whether the cygwin/mingw library supplies a stub DllMain
(but this information isn't yet used).
* ltconfig.in (mingw32, extract_expsyms_cmds): if HOST_CC is set,
use that to build impgen so we can use it when cross-compiling.
use correct entry points for mingw so static C++ constructors get
called for code in the DLL.
* ltmain.in (impgen.c): define O_BINARY to 0 if it is not in the
system headers.
1999-07-23 16:09:49 +00:00
Gary V. Vaughan
2cc31a3e28 * configure.in (AC_PROG_RANLIB): No longer required as we now use
AC_CHECK_TOOL in AC_LIBTOOL_SETUP.
* libtool.m4 (AC_PROG_LIBTOOL):  Pass the $build variable to
ltconfig.
(AC_PROG_RANLIB): replaced with AC_CHECK_TOOL.
* ltconfig.in (build): new variable to hold the build triplet
which is now checked for unless --no-verify is specified.
(--build): new argument to set the build triplet.
(ranlib): Prefer ${host_alias}-ranlib[.exe] if $build is different
to $host.
* doc/libtool.texi (Invoking ltconfig): Document --build option.
* NEWS: Note --build option.
1999-07-20 09:29:31 +00:00
Thomas Tanner
cbc1402596 * NEWS, TODO: updated (pic flags)
* libtool.m4 (AC_PROG_LIBTOOL): added --with-pic flag
* ltconfig.in: new pic_mode variable and --prefer[-non]-pic flags,
  fixed the strip check (reported by Keith Bostic <bostic@bostic.com>)
* ltmain.in (compile mode): build only PIC/non-PIC code depending
  on pic_mode
* libltdl/README: document the supported dlopen interfaces
* doc/libtool.texi (tests): documented new tests
* tests/Makefile.am: added new tests
* tests/demo-pic.test: new test to test --with-pic
* tests/demo-nopic.test: new test to test --without-pic
* tests/build-relink2.test: variant of build-relink.test that
  uses depdemo
1999-07-17 09:00:53 +00:00
Thomas Tanner
1707ab25bb * bootstrap: fix libltdl/Makefile.in
* cdemo/main.c: "Welcome _to_ ..."
* mdemo/main.c: ditto
* libltdl/configure.in: support multiple dlopening mechanisms
  at once
* libltdl/ltdl.c: prefix system dependent functions with "sys_"
  to avoid symbol conflicts (libdld didn't work)
* libtool.m4 (AC_LIBLTDL_*): set INCLTDL to the path of ltdl.h
* ltconfig.in: check for dlopen with -ldl first
1999-05-20 17:54:09 +00:00
Alexandre Oliva
ab6818a9cd * libtool.m4: Use ifelse instead of if.
Reported by David Mazieres <dm@amsterdam.lcs.mit.edu>
1999-04-30 20:21:15 +00:00
Gary V. Vaughan
3698de8afd * libtool.m4 (cygwin*|mingw*, DLLTOOL, OBJDUMP, AS): Only expand the
code that makes these configure time checks on hosts that need the
tools *and* if the AC_LIBTOOL_WIN32_DLL macro is used.
1999-04-29 07:36:57 +00:00
Alexandre Oliva
a78f262b2c * libtool.m4 (libtool_flags): Fix calls to AC_BEFORE.
Reported by Gary V. Vaughan
1999-04-28 17:31:54 +00:00
Gary V. Vaughan
68a7dcd93f * libtool.m4 (ltconfig_enable_win32_dll): pass --enable-win32-dll to
ltconfig if this is set.
(AC_LIBTOOL_WIN32_DLL): New macro required for libtool to attempt
a dll build on win32 hosts.
* ltconfig.in (--enable-win32-dll): new flag for the cli.
(cygwin*|mingw*|os2*, ltconfig_enable_win32_dll): if this is not set
to yes, then do not attempt to build shared libraries.
* doc/libtool.texi: document AC_LIBTOOL_WIN32_DLL.
* NEWS: noted new macro.
1999-04-28 15:26:14 +00:00
Alexandre Oliva
c3ec2bd441 * libtool.m4 (AC_LIBTOOL_DLOPEN, AC_ENABLE_SHARED,
AC_ENABLE_STATIC, AC_ENABLE_FAST_INSTALL, AC_LIBLTDL_CONVENIENCE,
AC_LIBLTDL_INSTALLABLE): Warn if they appear after
AC_PROG_LIBTOOL.  AC_LIBTOOL_SETUP, actually.
(AC_LIBTOOL_SETUP): Check whether DLOPEN support is to be enabled
at autoconf time, not configure time.  Simplify code and
improve (?) help message about --disable-libtool-lock.
1999-04-27 20:14:32 +00:00
Alexandre Oliva
18678cddb5 * libtool.m4 (OBJDUMP): Pass it to ltconfig.
* configure.in: AC_SUBST DLLTOOL, OBJDUMP and AS.
* Makefile.am (libtool, clibtool): Pass them to ltconfig.
* doc/libtool.texi (Invoking ltconfig): Document OBJDUMP.
1999-04-25 19:05:55 +00:00